@botonic/plugin-flow-builder 2.36.0 → 2.38.0

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 (137) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/package.json +3 -3
  3. package/src/lib/action/ai-agent-from-user-input.js +9 -9
  4. package/src/lib/action/ai-agent-from-user-input.js.map +1 -1
  5. package/src/lib/action/first-interaction.js +17 -14
  6. package/src/lib/action/first-interaction.js.map +1 -1
  7. package/src/lib/action/get-contents.js +7 -6
  8. package/src/lib/action/get-contents.js.map +1 -1
  9. package/src/lib/action/index.js +4 -1
  10. package/src/lib/action/index.js.map +1 -1
  11. package/src/lib/action/push-flow.d.ts +3 -0
  12. package/src/lib/action/push-flow.js +8 -0
  13. package/src/lib/action/push-flow.js.map +1 -0
  14. package/src/lib/api.d.ts +0 -2
  15. package/src/lib/api.js +1 -11
  16. package/src/lib/api.js.map +1 -1
  17. package/src/lib/constants.d.ts +1 -1
  18. package/src/lib/constants.js +1 -1
  19. package/src/lib/constants.js.map +1 -1
  20. package/src/lib/content-fields/contact-reasons-conditional-matcher.d.ts +4 -0
  21. package/src/lib/content-fields/contact-reasons-conditional-matcher.js +8 -0
  22. package/src/lib/content-fields/contact-reasons-conditional-matcher.js.map +1 -0
  23. package/src/lib/content-fields/flow-ai-agent-base.js +4 -0
  24. package/src/lib/content-fields/flow-ai-agent-base.js.map +1 -1
  25. package/src/lib/content-fields/flow-ai-agent-router.js +3 -1
  26. package/src/lib/content-fields/flow-ai-agent-router.js.map +1 -1
  27. package/src/lib/content-fields/flow-ai-agent.js +2 -1
  28. package/src/lib/content-fields/flow-ai-agent.js.map +1 -1
  29. package/src/lib/content-fields/flow-button.d.ts +1 -3
  30. package/src/lib/content-fields/flow-button.js +2 -23
  31. package/src/lib/content-fields/flow-button.js.map +1 -1
  32. package/src/lib/content-fields/flow-carousel.d.ts +1 -1
  33. package/src/lib/content-fields/flow-carousel.js +2 -2
  34. package/src/lib/content-fields/flow-carousel.js.map +1 -1
  35. package/src/lib/content-fields/flow-contact-reasons-conditional.d.ts +14 -0
  36. package/src/lib/content-fields/flow-contact-reasons-conditional.js +69 -0
  37. package/src/lib/content-fields/flow-contact-reasons-conditional.js.map +1 -0
  38. package/src/lib/content-fields/flow-do-nothing.d.ts +9 -0
  39. package/src/lib/content-fields/flow-do-nothing.js +29 -0
  40. package/src/lib/content-fields/flow-do-nothing.js.map +1 -0
  41. package/src/lib/content-fields/flow-element.d.ts +1 -1
  42. package/src/lib/content-fields/flow-element.js +2 -2
  43. package/src/lib/content-fields/flow-element.js.map +1 -1
  44. package/src/lib/content-fields/flow-handoff.d.ts +7 -1
  45. package/src/lib/content-fields/flow-handoff.js +40 -2
  46. package/src/lib/content-fields/flow-handoff.js.map +1 -1
  47. package/src/lib/content-fields/flow-text.d.ts +1 -1
  48. package/src/lib/content-fields/flow-text.js +2 -2
  49. package/src/lib/content-fields/flow-text.js.map +1 -1
  50. package/src/lib/content-fields/flow-webview.d.ts +4 -0
  51. package/src/lib/content-fields/flow-webview.js +31 -0
  52. package/src/lib/content-fields/flow-webview.js.map +1 -1
  53. package/src/lib/content-fields/flow-whatsapp-cta-url-button.d.ts +1 -1
  54. package/src/lib/content-fields/flow-whatsapp-cta-url-button.js +2 -2
  55. package/src/lib/content-fields/flow-whatsapp-cta-url-button.js.map +1 -1
  56. package/src/lib/content-fields/flow-whatsapp-request-contact-info.d.ts +13 -0
  57. package/src/lib/content-fields/flow-whatsapp-request-contact-info.js +55 -0
  58. package/src/lib/content-fields/flow-whatsapp-request-contact-info.js.map +1 -0
  59. package/src/lib/content-fields/flow-whatsapp-template.d.ts +6 -1
  60. package/src/lib/content-fields/flow-whatsapp-template.js +72 -12
  61. package/src/lib/content-fields/flow-whatsapp-template.js.map +1 -1
  62. package/src/lib/content-fields/hubtype-fields/common.d.ts +2 -1
  63. package/src/lib/content-fields/hubtype-fields/contact-reasons-conditional.d.ts +16 -0
  64. package/src/lib/content-fields/hubtype-fields/contact-reasons-conditional.js +2 -0
  65. package/src/lib/content-fields/hubtype-fields/contact-reasons-conditional.js.map +1 -0
  66. package/src/lib/content-fields/hubtype-fields/do-nothing.d.ts +6 -0
  67. package/src/lib/content-fields/hubtype-fields/do-nothing.js +2 -0
  68. package/src/lib/content-fields/hubtype-fields/do-nothing.js.map +1 -0
  69. package/src/lib/content-fields/hubtype-fields/fallback.d.ts +0 -2
  70. package/src/lib/content-fields/hubtype-fields/handoff.d.ts +11 -1
  71. package/src/lib/content-fields/hubtype-fields/handoff.js +6 -1
  72. package/src/lib/content-fields/hubtype-fields/handoff.js.map +1 -1
  73. package/src/lib/content-fields/hubtype-fields/index.d.ts +3 -1
  74. package/src/lib/content-fields/hubtype-fields/index.js +3 -1
  75. package/src/lib/content-fields/hubtype-fields/index.js.map +1 -1
  76. package/src/lib/content-fields/hubtype-fields/node-types.d.ts +6 -4
  77. package/src/lib/content-fields/hubtype-fields/node-types.js +5 -3
  78. package/src/lib/content-fields/hubtype-fields/node-types.js.map +1 -1
  79. package/src/lib/content-fields/hubtype-fields/nodes.d.ts +4 -2
  80. package/src/lib/content-fields/hubtype-fields/smart-intent.d.ts +1 -0
  81. package/src/lib/content-fields/hubtype-fields/webview.d.ts +1 -0
  82. package/src/lib/content-fields/hubtype-fields/whatsapp-request-contact-info.d.ts +10 -0
  83. package/src/lib/content-fields/hubtype-fields/whatsapp-request-contact-info.js +2 -0
  84. package/src/lib/content-fields/hubtype-fields/whatsapp-request-contact-info.js.map +1 -0
  85. package/src/lib/content-fields/hubtype-fields/whatsapp-template.d.ts +27 -4
  86. package/src/lib/content-fields/hubtype-fields/whatsapp-template.js +5 -0
  87. package/src/lib/content-fields/hubtype-fields/whatsapp-template.js.map +1 -1
  88. package/src/lib/content-fields/index.d.ts +5 -3
  89. package/src/lib/content-fields/index.js +4 -2
  90. package/src/lib/content-fields/index.js.map +1 -1
  91. package/src/lib/flow-factory.js +10 -6
  92. package/src/lib/flow-factory.js.map +1 -1
  93. package/src/lib/index.d.ts +4 -2
  94. package/src/lib/index.js +48 -5
  95. package/src/lib/index.js.map +1 -1
  96. package/src/lib/tests/helpers/flows/basic.js +7 -10
  97. package/src/lib/tests/helpers/flows/basic.js.map +1 -1
  98. package/src/lib/tests/helpers/flows/capture-user-input.js +0 -3
  99. package/src/lib/tests/helpers/flows/capture-user-input.js.map +1 -1
  100. package/src/lib/tests/helpers/flows/handoff-close.d.ts +284 -0
  101. package/src/lib/tests/helpers/flows/handoff-close.js +242 -0
  102. package/src/lib/tests/helpers/flows/handoff-close.js.map +1 -0
  103. package/src/lib/tests/helpers/flows/nlu-resolution-start-condition.d.ts +2 -0
  104. package/src/lib/tests/helpers/flows/nlu-resolution-start-condition.js +60 -0
  105. package/src/lib/tests/helpers/flows/nlu-resolution-start-condition.js.map +1 -0
  106. package/src/lib/tests/helpers/flows/whatsapp-request-contact-info.d.ts +116 -0
  107. package/src/lib/tests/helpers/flows/whatsapp-request-contact-info.js +115 -0
  108. package/src/lib/tests/helpers/flows/whatsapp-request-contact-info.js.map +1 -0
  109. package/src/lib/tests/helpers/flows/whatsapp-template.js +112 -3
  110. package/src/lib/tests/helpers/flows/whatsapp-template.js.map +1 -1
  111. package/src/lib/tests/helpers/utils.d.ts +8 -2
  112. package/src/lib/tests/helpers/utils.js +10 -7
  113. package/src/lib/tests/helpers/utils.js.map +1 -1
  114. package/src/lib/tests/mocks/ai-agent-response.d.ts +1 -1
  115. package/src/lib/tests/mocks/ai-agent-response.js +2 -1
  116. package/src/lib/tests/mocks/ai-agent-response.js.map +1 -1
  117. package/src/lib/tracking.js +1 -2
  118. package/src/lib/tracking.js.map +1 -1
  119. package/src/lib/types.d.ts +6 -10
  120. package/src/lib/user-input/smart-intent.d.ts +1 -0
  121. package/src/lib/user-input/smart-intent.js +4 -0
  122. package/src/lib/user-input/smart-intent.js.map +1 -1
  123. package/src/lib/utils/ai-agent.d.ts +2 -0
  124. package/src/lib/utils/ai-agent.js +11 -0
  125. package/src/lib/utils/ai-agent.js.map +1 -1
  126. package/src/lib/utils/input.d.ts +0 -1
  127. package/src/lib/utils/input.js +0 -3
  128. package/src/lib/utils/input.js.map +1 -1
  129. package/src/lib/action/knowledge-bases.d.ts +0 -3
  130. package/src/lib/action/knowledge-bases.js +0 -90
  131. package/src/lib/action/knowledge-bases.js.map +0 -1
  132. package/src/lib/content-fields/flow-knowledge-base.d.ts +0 -21
  133. package/src/lib/content-fields/flow-knowledge-base.js +0 -54
  134. package/src/lib/content-fields/flow-knowledge-base.js.map +0 -1
  135. package/src/lib/content-fields/hubtype-fields/knowledge-base.d.ts +0 -17
  136. package/src/lib/content-fields/hubtype-fields/knowledge-base.js +0 -2
  137. package/src/lib/content-fields/hubtype-fields/knowledge-base.js.map +0 -1
@@ -0,0 +1,284 @@
1
+ export declare const HANDOFF_CLOSE_MAIN_FLOW_ID = "a1000000-0000-4000-8000-000000000001";
2
+ export declare const HANDOFF_CLOSE_FALLBACK_FLOW_ID = "a1000000-0000-4000-8000-000000000002";
3
+ export declare const HANDOFF_CLOSE_QUEUE_ID = "a1000000-0000-4000-8000-000000000010";
4
+ export declare const DIFFERENTIATED_HANDOFF_KEYWORD_ID = "a1000000-0000-4000-8000-000000000020";
5
+ export declare const LEGACY_HANDOFF_KEYWORD_ID = "a1000000-0000-4000-8000-000000000021";
6
+ export declare const DIFFERENTIATED_QUEUE_STATUS_ID = "a1000000-0000-4000-8000-000000000030";
7
+ export declare const LEGACY_QUEUE_STATUS_ID = "a1000000-0000-4000-8000-000000000031";
8
+ export declare const DIFFERENTIATED_PRE_HANDOFF_TEXT_ID = "a1000000-0000-4000-8000-000000000040";
9
+ export declare const LEGACY_PRE_HANDOFF_TEXT_ID = "a1000000-0000-4000-8000-000000000041";
10
+ export declare const DIFFERENTIATED_HANDOFF_ID = "a1000000-0000-4000-8000-000000000050";
11
+ export declare const LEGACY_HANDOFF_ID = "a1000000-0000-4000-8000-000000000051";
12
+ export declare const LEGACY_HANDOFF_TARGET_ID = "a1000000-0000-4000-8000-000000000052";
13
+ export declare const RESOLVED_BY_AGENT_TEXT_ID = "a1000000-0000-4000-8000-000000000060";
14
+ export declare const DISCARDED_BY_AGENT_TEXT_ID = "a1000000-0000-4000-8000-000000000061";
15
+ export declare const DISCARDED_BY_USER_TEXT_ID = "a1000000-0000-4000-8000-000000000062";
16
+ export declare const DISCARDED_BY_SYSTEM_TEXT_ID = "a1000000-0000-4000-8000-000000000063";
17
+ export declare const FALLBACK_NODE_ID = "a1000000-0000-4000-8000-000000000070";
18
+ export declare const FALLBACK_TEXT_ID = "a1000000-0000-4000-8000-000000000071";
19
+ export declare const QUEUE_CLOSED_TEXT_ID = "a1000000-0000-4000-8000-000000000031-closed";
20
+ export declare const handoffCloseFlow: {
21
+ version: string;
22
+ name: string;
23
+ comments: null;
24
+ published_by: null;
25
+ published_on: null;
26
+ hash: string;
27
+ default_locale_code: string;
28
+ locales: string[];
29
+ translated_locales: never[];
30
+ start_node_id: null;
31
+ ai_model_id: null;
32
+ is_ai_agent_active: boolean;
33
+ nodes: ({
34
+ id: string;
35
+ code: string;
36
+ is_code_ai_generated: boolean;
37
+ meta: {
38
+ x: number;
39
+ y: number;
40
+ };
41
+ follow_up: null;
42
+ target: null;
43
+ flow_id: string;
44
+ is_meaningful: boolean;
45
+ ai_translated_locales: never[];
46
+ type: string;
47
+ content: {
48
+ text: {
49
+ message: string;
50
+ locale: string;
51
+ }[];
52
+ buttons_style: string;
53
+ buttons: never[];
54
+ };
55
+ } | {
56
+ id: string;
57
+ code: string;
58
+ is_code_ai_generated: boolean;
59
+ meta: {
60
+ x: number;
61
+ y: number;
62
+ };
63
+ follow_up: null;
64
+ target: null;
65
+ flow_id: string;
66
+ is_meaningful: boolean;
67
+ ai_translated_locales: never[];
68
+ type: string;
69
+ content: {
70
+ action: string;
71
+ arguments: ({
72
+ locale: string;
73
+ values: {
74
+ type: string;
75
+ name: string;
76
+ value: string;
77
+ }[];
78
+ type?: undefined;
79
+ name?: undefined;
80
+ value?: undefined;
81
+ } | {
82
+ type: string;
83
+ name: string;
84
+ value: boolean;
85
+ locale?: undefined;
86
+ values?: undefined;
87
+ })[];
88
+ result_mapping: ({
89
+ result: string;
90
+ target: {
91
+ id: string;
92
+ type: string;
93
+ };
94
+ } | {
95
+ result: string;
96
+ target: null;
97
+ })[];
98
+ };
99
+ } | {
100
+ id: string;
101
+ code: string;
102
+ is_code_ai_generated: boolean;
103
+ meta: {
104
+ x: number;
105
+ y: number;
106
+ };
107
+ follow_up: null;
108
+ target: {
109
+ id: string;
110
+ type: string;
111
+ };
112
+ flow_id: string;
113
+ is_meaningful: boolean;
114
+ ai_translated_locales: never[];
115
+ type: string;
116
+ content: {
117
+ title: never[];
118
+ keywords: {
119
+ values: string[];
120
+ locale: string;
121
+ }[];
122
+ };
123
+ } | {
124
+ id: string;
125
+ code: string;
126
+ is_code_ai_generated: boolean;
127
+ meta: {
128
+ x: number;
129
+ y: number;
130
+ };
131
+ follow_up: {
132
+ id: string;
133
+ type: string;
134
+ };
135
+ target: null;
136
+ flow_id: string;
137
+ is_meaningful: boolean;
138
+ ai_translated_locales: never[];
139
+ type: string;
140
+ content: {
141
+ text: {
142
+ message: string;
143
+ locale: string;
144
+ }[];
145
+ buttons_style: string;
146
+ buttons: never[];
147
+ queue?: undefined;
148
+ payload?: undefined;
149
+ has_auto_assign?: undefined;
150
+ has_queue_position_changed_notifications_enabled?: undefined;
151
+ has_differentiated_close_types?: undefined;
152
+ resolved_by_agent?: undefined;
153
+ discarded_by_agent?: undefined;
154
+ discarded_by_user?: undefined;
155
+ discarded_by_system?: undefined;
156
+ first_message?: undefined;
157
+ second_message?: undefined;
158
+ };
159
+ } | {
160
+ id: string;
161
+ code: string;
162
+ is_code_ai_generated: boolean;
163
+ meta: {
164
+ x: number;
165
+ y: number;
166
+ };
167
+ follow_up: null;
168
+ target: null;
169
+ flow_id: string;
170
+ is_meaningful: boolean;
171
+ ai_translated_locales: never[];
172
+ type: string;
173
+ content: {
174
+ queue: {
175
+ id: string;
176
+ name: string;
177
+ locale: string;
178
+ }[];
179
+ payload: never[];
180
+ has_auto_assign: boolean;
181
+ has_queue_position_changed_notifications_enabled: boolean;
182
+ has_differentiated_close_types: boolean;
183
+ resolved_by_agent: {
184
+ id: string;
185
+ type: string;
186
+ };
187
+ discarded_by_agent: {
188
+ id: string;
189
+ type: string;
190
+ };
191
+ discarded_by_user: {
192
+ id: string;
193
+ type: string;
194
+ };
195
+ discarded_by_system: {
196
+ id: string;
197
+ type: string;
198
+ };
199
+ text?: undefined;
200
+ buttons_style?: undefined;
201
+ buttons?: undefined;
202
+ first_message?: undefined;
203
+ second_message?: undefined;
204
+ };
205
+ } | {
206
+ id: string;
207
+ code: string;
208
+ is_code_ai_generated: boolean;
209
+ meta: {
210
+ x: number;
211
+ y: number;
212
+ };
213
+ follow_up: null;
214
+ target: {
215
+ id: string;
216
+ type: string;
217
+ };
218
+ flow_id: string;
219
+ is_meaningful: boolean;
220
+ ai_translated_locales: never[];
221
+ type: string;
222
+ content: {
223
+ queue: {
224
+ id: string;
225
+ name: string;
226
+ locale: string;
227
+ }[];
228
+ payload: never[];
229
+ has_auto_assign: boolean;
230
+ has_queue_position_changed_notifications_enabled: boolean;
231
+ has_differentiated_close_types: boolean;
232
+ text?: undefined;
233
+ buttons_style?: undefined;
234
+ buttons?: undefined;
235
+ resolved_by_agent?: undefined;
236
+ discarded_by_agent?: undefined;
237
+ discarded_by_user?: undefined;
238
+ discarded_by_system?: undefined;
239
+ first_message?: undefined;
240
+ second_message?: undefined;
241
+ };
242
+ } | {
243
+ id: string;
244
+ code: string;
245
+ is_code_ai_generated: boolean;
246
+ meta: {
247
+ x: number;
248
+ y: number;
249
+ };
250
+ follow_up: null;
251
+ target: null;
252
+ flow_id: string;
253
+ is_meaningful: boolean;
254
+ ai_translated_locales: never[];
255
+ type: string;
256
+ content: {
257
+ first_message: {
258
+ id: string;
259
+ type: string;
260
+ };
261
+ second_message: null;
262
+ text?: undefined;
263
+ buttons_style?: undefined;
264
+ buttons?: undefined;
265
+ queue?: undefined;
266
+ payload?: undefined;
267
+ has_auto_assign?: undefined;
268
+ has_queue_position_changed_notifications_enabled?: undefined;
269
+ has_differentiated_close_types?: undefined;
270
+ resolved_by_agent?: undefined;
271
+ discarded_by_agent?: undefined;
272
+ discarded_by_user?: undefined;
273
+ discarded_by_system?: undefined;
274
+ };
275
+ })[];
276
+ flows: {
277
+ id: string;
278
+ name: string;
279
+ start_node_id: string;
280
+ }[];
281
+ webviews: never[];
282
+ campaigns: never[];
283
+ bot_variable_definitions: never[];
284
+ };
@@ -0,0 +1,242 @@
1
+ import { HtNodeWithContentType } from '../../../content-fields/hubtype-fields/node-types';
2
+ export const HANDOFF_CLOSE_MAIN_FLOW_ID = 'a1000000-0000-4000-8000-000000000001';
3
+ export const HANDOFF_CLOSE_FALLBACK_FLOW_ID = 'a1000000-0000-4000-8000-000000000002';
4
+ export const HANDOFF_CLOSE_QUEUE_ID = 'a1000000-0000-4000-8000-000000000010';
5
+ export const DIFFERENTIATED_HANDOFF_KEYWORD_ID = 'a1000000-0000-4000-8000-000000000020';
6
+ export const LEGACY_HANDOFF_KEYWORD_ID = 'a1000000-0000-4000-8000-000000000021';
7
+ export const DIFFERENTIATED_QUEUE_STATUS_ID = 'a1000000-0000-4000-8000-000000000030';
8
+ export const LEGACY_QUEUE_STATUS_ID = 'a1000000-0000-4000-8000-000000000031';
9
+ export const DIFFERENTIATED_PRE_HANDOFF_TEXT_ID = 'a1000000-0000-4000-8000-000000000040';
10
+ export const LEGACY_PRE_HANDOFF_TEXT_ID = 'a1000000-0000-4000-8000-000000000041';
11
+ export const DIFFERENTIATED_HANDOFF_ID = 'a1000000-0000-4000-8000-000000000050';
12
+ export const LEGACY_HANDOFF_ID = 'a1000000-0000-4000-8000-000000000051';
13
+ export const LEGACY_HANDOFF_TARGET_ID = 'a1000000-0000-4000-8000-000000000052';
14
+ export const RESOLVED_BY_AGENT_TEXT_ID = 'a1000000-0000-4000-8000-000000000060';
15
+ export const DISCARDED_BY_AGENT_TEXT_ID = 'a1000000-0000-4000-8000-000000000061';
16
+ export const DISCARDED_BY_USER_TEXT_ID = 'a1000000-0000-4000-8000-000000000062';
17
+ export const DISCARDED_BY_SYSTEM_TEXT_ID = 'a1000000-0000-4000-8000-000000000063';
18
+ export const FALLBACK_NODE_ID = 'a1000000-0000-4000-8000-000000000070';
19
+ export const FALLBACK_TEXT_ID = 'a1000000-0000-4000-8000-000000000071';
20
+ export const QUEUE_CLOSED_TEXT_ID = 'a1000000-0000-4000-8000-000000000031-closed';
21
+ const link = (id, type) => ({
22
+ id,
23
+ type,
24
+ });
25
+ const textNode = (id, code, message) => ({
26
+ id,
27
+ code,
28
+ is_code_ai_generated: false,
29
+ meta: { x: 0, y: 0 },
30
+ follow_up: null,
31
+ target: null,
32
+ flow_id: HANDOFF_CLOSE_MAIN_FLOW_ID,
33
+ is_meaningful: false,
34
+ ai_translated_locales: [],
35
+ type: 'text',
36
+ content: {
37
+ text: [{ message, locale: 'en' }],
38
+ buttons_style: 'button',
39
+ buttons: [],
40
+ },
41
+ });
42
+ const queueStatusNode = (id, code, openTargetId, closedTextId) => ({
43
+ id,
44
+ code,
45
+ is_code_ai_generated: false,
46
+ meta: { x: 0, y: 0 },
47
+ follow_up: null,
48
+ target: null,
49
+ flow_id: HANDOFF_CLOSE_MAIN_FLOW_ID,
50
+ is_meaningful: false,
51
+ ai_translated_locales: [],
52
+ type: 'function',
53
+ content: {
54
+ action: 'check-queue-status',
55
+ arguments: [
56
+ {
57
+ locale: 'en',
58
+ values: [
59
+ { type: 'string', name: 'queue_id', value: HANDOFF_CLOSE_QUEUE_ID },
60
+ { type: 'string', name: 'queue_name', value: 'HandoffCloseQueue' },
61
+ ],
62
+ },
63
+ { type: 'boolean', name: 'check_available_agents', value: false },
64
+ ],
65
+ result_mapping: [
66
+ {
67
+ result: 'open',
68
+ target: link(openTargetId, HtNodeWithContentType.TEXT),
69
+ },
70
+ {
71
+ result: 'closed',
72
+ target: link(closedTextId, HtNodeWithContentType.TEXT),
73
+ },
74
+ { result: 'open-without-agents', target: null },
75
+ ],
76
+ },
77
+ });
78
+ const keywordNode = (id, keyword, targetId) => ({
79
+ id,
80
+ code: '',
81
+ is_code_ai_generated: false,
82
+ meta: { x: 0, y: 0 },
83
+ follow_up: null,
84
+ target: link(targetId, 'function'),
85
+ flow_id: HANDOFF_CLOSE_MAIN_FLOW_ID,
86
+ is_meaningful: false,
87
+ ai_translated_locales: [],
88
+ type: 'keyword',
89
+ content: {
90
+ title: [],
91
+ keywords: [{ values: [keyword], locale: 'en' }],
92
+ },
93
+ });
94
+ export const handoffCloseFlow = {
95
+ version: 'draft',
96
+ name: 'Handoff close payload test',
97
+ comments: null,
98
+ published_by: null,
99
+ published_on: null,
100
+ hash: 'handoff-close-test-hash',
101
+ default_locale_code: 'en',
102
+ locales: ['en'],
103
+ translated_locales: [],
104
+ start_node_id: null,
105
+ ai_model_id: null,
106
+ is_ai_agent_active: false,
107
+ nodes: [
108
+ {
109
+ id: DIFFERENTIATED_PRE_HANDOFF_TEXT_ID,
110
+ code: 'DIFF_PRE_HANDOFF',
111
+ is_code_ai_generated: false,
112
+ meta: { x: 0, y: 0 },
113
+ follow_up: link(DIFFERENTIATED_HANDOFF_ID, HtNodeWithContentType.HANDOFF),
114
+ target: null,
115
+ flow_id: HANDOFF_CLOSE_MAIN_FLOW_ID,
116
+ is_meaningful: false,
117
+ ai_translated_locales: [],
118
+ type: 'text',
119
+ content: {
120
+ text: [
121
+ { message: 'Connecting to differentiated handoff', locale: 'en' },
122
+ ],
123
+ buttons_style: 'button',
124
+ buttons: [],
125
+ },
126
+ },
127
+ {
128
+ id: LEGACY_PRE_HANDOFF_TEXT_ID,
129
+ code: 'LEGACY_PRE_HANDOFF',
130
+ is_code_ai_generated: false,
131
+ meta: { x: 0, y: 0 },
132
+ follow_up: link(LEGACY_HANDOFF_ID, HtNodeWithContentType.HANDOFF),
133
+ target: null,
134
+ flow_id: HANDOFF_CLOSE_MAIN_FLOW_ID,
135
+ is_meaningful: false,
136
+ ai_translated_locales: [],
137
+ type: 'text',
138
+ content: {
139
+ text: [{ message: 'Connecting to legacy handoff', locale: 'en' }],
140
+ buttons_style: 'button',
141
+ buttons: [],
142
+ },
143
+ },
144
+ textNode(RESOLVED_BY_AGENT_TEXT_ID, 'RESOLVED', 'Case resolved by agent'),
145
+ textNode(DISCARDED_BY_AGENT_TEXT_ID, 'DISCARDED_AGENT', 'Case discarded by agent'),
146
+ textNode(DISCARDED_BY_USER_TEXT_ID, 'DISCARDED_USER', 'Case discarded by user'),
147
+ textNode(DISCARDED_BY_SYSTEM_TEXT_ID, 'DISCARDED_SYSTEM', 'Case discarded by system'),
148
+ textNode(LEGACY_HANDOFF_TARGET_ID, 'LEGACY_TARGET', 'Legacy handoff finished'),
149
+ textNode(QUEUE_CLOSED_TEXT_ID, 'QUEUE_CLOSED', 'Queue is closed'),
150
+ {
151
+ id: DIFFERENTIATED_HANDOFF_ID,
152
+ code: 'DIFF_HANDOFF',
153
+ is_code_ai_generated: false,
154
+ meta: { x: 0, y: 0 },
155
+ follow_up: null,
156
+ target: null,
157
+ flow_id: HANDOFF_CLOSE_MAIN_FLOW_ID,
158
+ is_meaningful: false,
159
+ ai_translated_locales: [],
160
+ type: 'handoff',
161
+ content: {
162
+ queue: [
163
+ {
164
+ id: HANDOFF_CLOSE_QUEUE_ID,
165
+ name: 'HandoffCloseQueue',
166
+ locale: 'en',
167
+ },
168
+ ],
169
+ payload: [],
170
+ has_auto_assign: false,
171
+ has_queue_position_changed_notifications_enabled: false,
172
+ has_differentiated_close_types: true,
173
+ resolved_by_agent: link(RESOLVED_BY_AGENT_TEXT_ID, HtNodeWithContentType.TEXT),
174
+ discarded_by_agent: link(DISCARDED_BY_AGENT_TEXT_ID, HtNodeWithContentType.TEXT),
175
+ discarded_by_user: link(DISCARDED_BY_USER_TEXT_ID, HtNodeWithContentType.TEXT),
176
+ discarded_by_system: link(DISCARDED_BY_SYSTEM_TEXT_ID, HtNodeWithContentType.TEXT),
177
+ },
178
+ },
179
+ {
180
+ id: LEGACY_HANDOFF_ID,
181
+ code: 'LEGACY_HANDOFF',
182
+ is_code_ai_generated: false,
183
+ meta: { x: 0, y: 0 },
184
+ follow_up: null,
185
+ target: link(LEGACY_HANDOFF_TARGET_ID, HtNodeWithContentType.TEXT),
186
+ flow_id: HANDOFF_CLOSE_MAIN_FLOW_ID,
187
+ is_meaningful: false,
188
+ ai_translated_locales: [],
189
+ type: 'handoff',
190
+ content: {
191
+ queue: [
192
+ {
193
+ id: HANDOFF_CLOSE_QUEUE_ID,
194
+ name: 'HandoffCloseQueue',
195
+ locale: 'en',
196
+ },
197
+ ],
198
+ payload: [],
199
+ has_auto_assign: false,
200
+ has_queue_position_changed_notifications_enabled: false,
201
+ has_differentiated_close_types: false,
202
+ },
203
+ },
204
+ queueStatusNode(DIFFERENTIATED_QUEUE_STATUS_ID, 'DIFF_QUEUE_STATUS', DIFFERENTIATED_PRE_HANDOFF_TEXT_ID, QUEUE_CLOSED_TEXT_ID),
205
+ queueStatusNode(LEGACY_QUEUE_STATUS_ID, 'LEGACY_QUEUE_STATUS', LEGACY_PRE_HANDOFF_TEXT_ID, QUEUE_CLOSED_TEXT_ID),
206
+ keywordNode(DIFFERENTIATED_HANDOFF_KEYWORD_ID, 'diffHandoff', DIFFERENTIATED_QUEUE_STATUS_ID),
207
+ keywordNode(LEGACY_HANDOFF_KEYWORD_ID, 'legacyHandoff', LEGACY_QUEUE_STATUS_ID),
208
+ {
209
+ id: FALLBACK_NODE_ID,
210
+ code: 'Fallback',
211
+ is_code_ai_generated: false,
212
+ meta: { x: 0, y: 0 },
213
+ follow_up: null,
214
+ target: null,
215
+ flow_id: HANDOFF_CLOSE_FALLBACK_FLOW_ID,
216
+ is_meaningful: false,
217
+ ai_translated_locales: [],
218
+ type: 'fallback',
219
+ content: {
220
+ first_message: link(FALLBACK_TEXT_ID, HtNodeWithContentType.TEXT),
221
+ second_message: null,
222
+ },
223
+ },
224
+ textNode(FALLBACK_TEXT_ID, 'FALLBACK_MSG', 'Fallback message'),
225
+ ],
226
+ flows: [
227
+ {
228
+ id: HANDOFF_CLOSE_MAIN_FLOW_ID,
229
+ name: 'Main',
230
+ start_node_id: DIFFERENTIATED_HANDOFF_KEYWORD_ID,
231
+ },
232
+ {
233
+ id: HANDOFF_CLOSE_FALLBACK_FLOW_ID,
234
+ name: 'Fallback',
235
+ start_node_id: FALLBACK_NODE_ID,
236
+ },
237
+ ],
238
+ webviews: [],
239
+ campaigns: [],
240
+ bot_variable_definitions: [],
241
+ };
242
+ //# sourceMappingURL=handoff-close.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handoff-close.js","sourceRoot":"","sources":["../../../../../../../../../libs/botonic/plugin-flow-builder/src/lib/tests/helpers/flows/handoff-close.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { HtFlowBuilderData } from '../../../content-fields/hubtype-fields';
2
+ export declare function aiAgentNluStartConditionFlow(): HtFlowBuilderData;
@@ -0,0 +1,60 @@
1
+ import { BooleanConditionOperator, HtButtonStyle, HtNodeWithContentType, VariableFormat, } from '../../../content-fields/hubtype-fields';
2
+ import { basicFlow } from './basic';
3
+ const MAIN_FLOW_ID = '8d527e7d-ea6d-5422-b810-5b4c8be7657b';
4
+ const WELCOME_NODE_ID = '019adf85-a9a6-742d-a403-da338c45449a';
5
+ const NLU_START_CONDITION_NODE_ID = '0196f220-a001-7000-b001-nlu-condition01';
6
+ const NLU_MATCHED_START_MESSAGE_NODE_ID = '0196f220-a002-7000-b002-nlu-matched-msg01';
7
+ export function aiAgentNluStartConditionFlow() {
8
+ return Object.assign(Object.assign({}, basicFlow), { start_node_id: NLU_START_CONDITION_NODE_ID, nodes: [
9
+ ...basicFlow.nodes,
10
+ {
11
+ id: NLU_START_CONDITION_NODE_ID,
12
+ code: 'keyword-or-intent-match-condition',
13
+ is_code_ai_generated: false,
14
+ meta: { x: 500.0, y: -50.0 },
15
+ flow_id: MAIN_FLOW_ID,
16
+ is_meaningful: false,
17
+ ai_translated_locales: [],
18
+ type: HtNodeWithContentType.CUSTOM_CONDITION,
19
+ content: {
20
+ type: VariableFormat.Boolean,
21
+ key_path: 'input.nluResolution',
22
+ conditions: [
23
+ {
24
+ operator: BooleanConditionOperator.IsTruthy,
25
+ target: {
26
+ id: NLU_MATCHED_START_MESSAGE_NODE_ID,
27
+ type: HtNodeWithContentType.TEXT,
28
+ },
29
+ },
30
+ ],
31
+ default_target: {
32
+ id: WELCOME_NODE_ID,
33
+ type: HtNodeWithContentType.TEXT,
34
+ },
35
+ },
36
+ },
37
+ {
38
+ id: NLU_MATCHED_START_MESSAGE_NODE_ID,
39
+ code: 'legal-msg',
40
+ is_code_ai_generated: false,
41
+ meta: { x: 800.0, y: -50.0 },
42
+ flow_id: MAIN_FLOW_ID,
43
+ is_meaningful: false,
44
+ ai_translated_locales: [],
45
+ type: HtNodeWithContentType.TEXT,
46
+ content: {
47
+ text: [
48
+ {
49
+ message: 'Terms without welcome',
50
+ locale: 'en',
51
+ },
52
+ ],
53
+ buttons_style: HtButtonStyle.BUTTON,
54
+ buttons: [],
55
+ },
56
+ },
57
+ ], flows: basicFlow.flows.map(flow => flow.name === 'Main'
58
+ ? Object.assign(Object.assign({}, flow), { start_node_id: NLU_START_CONDITION_NODE_ID }) : flow) });
59
+ }
60
+ //# sourceMappingURL=nlu-resolution-start-condition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nlu-resolution-start-condition.js","sourceRoot":"","sources":["../../../../../../../../../libs/botonic/plugin-flow-builder/src/lib/tests/helpers/flows/nlu-resolution-start-condition.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,aAAa,EAEb,qBAAqB,EACrB,cAAc,GACf,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,YAAY,GAAG,sCAAsC,CAAA;AAC3D,MAAM,eAAe,GAAG,sCAAsC,CAAA;AAC9D,MAAM,2BAA2B,GAAG,yCAAyC,CAAA;AAC7E,MAAM,iCAAiC,GACrC,2CAA2C,CAAA;AAE7C,MAAM,UAAU,4BAA4B;IAC1C,uCACK,SAAS,KACZ,aAAa,EAAE,2BAA2B,EAC1C,KAAK,EAAE;YACL,GAAG,SAAS,CAAC,KAAK;YAClB;gBACE,EAAE,EAAE,2BAA2B;gBAC/B,IAAI,EAAE,mCAAmC;gBACzC,oBAAoB,EAAE,KAAK;gBAC3B,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE;gBAC5B,OAAO,EAAE,YAAY;gBACrB,aAAa,EAAE,KAAK;gBACpB,qBAAqB,EAAE,EAAE;gBACzB,IAAI,EAAE,qBAAqB,CAAC,gBAAgB;gBAC5C,OAAO,EAAE;oBACP,IAAI,EAAE,cAAc,CAAC,OAAO;oBAC5B,QAAQ,EAAE,qBAAqB;oBAC/B,UAAU,EAAE;wBACV;4BACE,QAAQ,EAAE,wBAAwB,CAAC,QAAQ;4BAC3C,MAAM,EAAE;gCACN,EAAE,EAAE,iCAAiC;gCACrC,IAAI,EAAE,qBAAqB,CAAC,IAAI;6BACjC;yBACF;qBACF;oBACD,cAAc,EAAE;wBACd,EAAE,EAAE,eAAe;wBACnB,IAAI,EAAE,qBAAqB,CAAC,IAAI;qBACjC;iBACF;aACF;YACD;gBACE,EAAE,EAAE,iCAAiC;gBACrC,IAAI,EAAE,WAAW;gBACjB,oBAAoB,EAAE,KAAK;gBAC3B,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE;gBAC5B,OAAO,EAAE,YAAY;gBACrB,aAAa,EAAE,KAAK;gBACpB,qBAAqB,EAAE,EAAE;gBACzB,IAAI,EAAE,qBAAqB,CAAC,IAAI;gBAChC,OAAO,EAAE;oBACP,IAAI,EAAE;wBACJ;4BACE,OAAO,EAAE,uBAAuB;4BAChC,MAAM,EAAE,IAAI;yBACb;qBACF;oBACD,aAAa,EAAE,aAAa,CAAC,MAAM;oBACnC,OAAO,EAAE,EAAE;iBACZ;aACF;SACF,EACD,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAChC,IAAI,CAAC,IAAI,KAAK,MAAM;YAClB,CAAC,iCAAM,IAAI,KAAE,aAAa,EAAE,2BAA2B,IACvD,CAAC,CAAC,IAAI,CACT,IACF;AACH,CAAC"}