@botonic/plugin-flow-builder 0.56.0-alpha.0 → 0.57.0-rslib-esm.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 (564) hide show
  1. package/lib/esm/action/ai-agent-from-user-input.d.ts +2 -2
  2. package/lib/esm/action/ai-agent-from-user-input.js +9 -6
  3. package/lib/esm/action/ai-agent-from-user-input.js.map +1 -1
  4. package/lib/esm/action/context.d.ts +2 -2
  5. package/lib/esm/action/context.js +9 -6
  6. package/lib/esm/action/context.js.map +1 -1
  7. package/lib/esm/action/fallback.d.ts +2 -2
  8. package/lib/esm/action/fallback.js +16 -11
  9. package/lib/esm/action/fallback.js.map +1 -1
  10. package/lib/esm/action/first-interaction.d.ts +2 -2
  11. package/lib/esm/action/first-interaction.js +39 -27
  12. package/lib/esm/action/first-interaction.js.map +1 -1
  13. package/lib/esm/action/get-contents.d.ts +1 -1
  14. package/lib/esm/action/get-contents.js +37 -20
  15. package/lib/esm/action/get-contents.js.map +1 -1
  16. package/lib/esm/action/index.d.ts +1 -1
  17. package/lib/esm/action/index.js +68 -32
  18. package/lib/esm/action/index.js.map +1 -1
  19. package/lib/esm/action/payload.d.ts +2 -2
  20. package/lib/esm/action/payload.js +27 -23
  21. package/lib/esm/action/payload.js.map +1 -1
  22. package/lib/esm/api.d.ts +2 -2
  23. package/lib/esm/api.js +55 -44
  24. package/lib/esm/api.js.map +1 -1
  25. package/lib/esm/constants.js +16 -18
  26. package/lib/esm/constants.js.map +1 -1
  27. package/lib/esm/content-fields/content-fields-base.d.ts +2 -2
  28. package/lib/esm/content-fields/content-fields-base.js +33 -29
  29. package/lib/esm/content-fields/content-fields-base.js.map +1 -1
  30. package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-evaluators.d.ts +1 -1
  31. package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-evaluators.js +35 -33
  32. package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-evaluators.js.map +1 -1
  33. package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-resolver.d.ts +1 -1
  34. package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-resolver.js +15 -15
  35. package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-resolver.js.map +1 -1
  36. package/lib/esm/content-fields/custom-conditional/flow-custom-condition-v2.d.ts +2 -2
  37. package/lib/esm/content-fields/custom-conditional/flow-custom-condition-v2.js +50 -35
  38. package/lib/esm/content-fields/custom-conditional/flow-custom-condition-v2.js.map +1 -1
  39. package/lib/esm/content-fields/flow-ai-agent-base.d.ts +4 -4
  40. package/lib/esm/content-fields/flow-ai-agent-base.js +50 -47
  41. package/lib/esm/content-fields/flow-ai-agent-base.js.map +1 -1
  42. package/lib/esm/content-fields/flow-ai-agent-router.d.ts +5 -5
  43. package/lib/esm/content-fields/flow-ai-agent-router.js +57 -46
  44. package/lib/esm/content-fields/flow-ai-agent-router.js.map +1 -1
  45. package/lib/esm/content-fields/flow-ai-agent.d.ts +4 -4
  46. package/lib/esm/content-fields/flow-ai-agent.js +33 -22
  47. package/lib/esm/content-fields/flow-ai-agent.js.map +1 -1
  48. package/lib/esm/content-fields/flow-bot-action.d.ts +3 -3
  49. package/lib/esm/content-fields/flow-bot-action.js +23 -15
  50. package/lib/esm/content-fields/flow-bot-action.js.map +1 -1
  51. package/lib/esm/content-fields/flow-button.d.ts +5 -5
  52. package/lib/esm/content-fields/flow-button.js +48 -29
  53. package/lib/esm/content-fields/flow-button.js.map +1 -1
  54. package/lib/esm/content-fields/flow-capture-user-input.d.ts +2 -2
  55. package/lib/esm/content-fields/flow-capture-user-input.js +24 -23
  56. package/lib/esm/content-fields/flow-capture-user-input.js.map +1 -1
  57. package/lib/esm/content-fields/flow-carousel.d.ts +4 -4
  58. package/lib/esm/content-fields/flow-carousel.js +99 -58
  59. package/lib/esm/content-fields/flow-carousel.js.map +1 -1
  60. package/lib/esm/content-fields/flow-channel-conditional.d.ts +3 -3
  61. package/lib/esm/content-fields/flow-channel-conditional.js +26 -22
  62. package/lib/esm/content-fields/flow-channel-conditional.js.map +1 -1
  63. package/lib/esm/content-fields/flow-country-conditional.d.ts +3 -3
  64. package/lib/esm/content-fields/flow-country-conditional.js +26 -21
  65. package/lib/esm/content-fields/flow-country-conditional.js.map +1 -1
  66. package/lib/esm/content-fields/flow-custom-conditional.d.ts +3 -3
  67. package/lib/esm/content-fields/flow-custom-conditional.js +31 -33
  68. package/lib/esm/content-fields/flow-custom-conditional.js.map +1 -1
  69. package/lib/esm/content-fields/flow-element.d.ts +4 -4
  70. package/lib/esm/content-fields/flow-element.js +37 -20
  71. package/lib/esm/content-fields/flow-element.js.map +1 -1
  72. package/lib/esm/content-fields/flow-go-to-flow.d.ts +3 -3
  73. package/lib/esm/content-fields/flow-go-to-flow.js +25 -20
  74. package/lib/esm/content-fields/flow-go-to-flow.js.map +1 -1
  75. package/lib/esm/content-fields/flow-handoff.d.ts +3 -3
  76. package/lib/esm/content-fields/flow-handoff.js +30 -19
  77. package/lib/esm/content-fields/flow-handoff.js.map +1 -1
  78. package/lib/esm/content-fields/flow-image.d.ts +2 -2
  79. package/lib/esm/content-fields/flow-image.js +24 -15
  80. package/lib/esm/content-fields/flow-image.js.map +1 -1
  81. package/lib/esm/content-fields/flow-queue-status-conditional.d.ts +3 -3
  82. package/lib/esm/content-fields/flow-queue-status-conditional.js +45 -40
  83. package/lib/esm/content-fields/flow-queue-status-conditional.js.map +1 -1
  84. package/lib/esm/content-fields/flow-rating.d.ts +3 -3
  85. package/lib/esm/content-fields/flow-rating.js +62 -40
  86. package/lib/esm/content-fields/flow-rating.js.map +1 -1
  87. package/lib/esm/content-fields/flow-text.d.ts +4 -4
  88. package/lib/esm/content-fields/flow-text.js +51 -29
  89. package/lib/esm/content-fields/flow-text.js.map +1 -1
  90. package/lib/esm/content-fields/flow-video.d.ts +2 -2
  91. package/lib/esm/content-fields/flow-video.js +24 -15
  92. package/lib/esm/content-fields/flow-video.js.map +1 -1
  93. package/lib/esm/content-fields/flow-webview.d.ts +2 -2
  94. package/lib/esm/content-fields/flow-webview.js +31 -28
  95. package/lib/esm/content-fields/flow-webview.js.map +1 -1
  96. package/lib/esm/content-fields/flow-whatsapp-cta-url-button.d.ts +3 -3
  97. package/lib/esm/content-fields/flow-whatsapp-cta-url-button.js +91 -52
  98. package/lib/esm/content-fields/flow-whatsapp-cta-url-button.js.map +1 -1
  99. package/lib/esm/content-fields/flow-whatsapp-request-contact-info.d.ts +3 -4
  100. package/lib/esm/content-fields/flow-whatsapp-request-contact-info.js +32 -26
  101. package/lib/esm/content-fields/flow-whatsapp-request-contact-info.js.map +1 -1
  102. package/lib/esm/content-fields/flow-whatsapp-template.d.ts +2 -2
  103. package/lib/esm/content-fields/flow-whatsapp-template.js +119 -102
  104. package/lib/esm/content-fields/flow-whatsapp-template.js.map +1 -1
  105. package/lib/esm/content-fields/hubtype-fields/ai-agent-router.d.ts +3 -3
  106. package/lib/esm/content-fields/hubtype-fields/ai-agent-router.js +3 -2
  107. package/lib/esm/content-fields/hubtype-fields/ai-agent-router.js.map +1 -1
  108. package/lib/esm/content-fields/hubtype-fields/ai-agent.d.ts +2 -2
  109. package/lib/esm/content-fields/hubtype-fields/ai-agent.js +3 -2
  110. package/lib/esm/content-fields/hubtype-fields/ai-agent.js.map +1 -1
  111. package/lib/esm/content-fields/hubtype-fields/bot-action.d.ts +2 -2
  112. package/lib/esm/content-fields/hubtype-fields/bot-action.js +3 -2
  113. package/lib/esm/content-fields/hubtype-fields/bot-action.js.map +1 -1
  114. package/lib/esm/content-fields/hubtype-fields/button.d.ts +1 -1
  115. package/lib/esm/content-fields/hubtype-fields/button.js +3 -2
  116. package/lib/esm/content-fields/hubtype-fields/button.js.map +1 -1
  117. package/lib/esm/content-fields/hubtype-fields/capture-user-input.d.ts +2 -2
  118. package/lib/esm/content-fields/hubtype-fields/capture-user-input.js +6 -6
  119. package/lib/esm/content-fields/hubtype-fields/capture-user-input.js.map +1 -1
  120. package/lib/esm/content-fields/hubtype-fields/carousel.d.ts +3 -3
  121. package/lib/esm/content-fields/hubtype-fields/carousel.js +3 -2
  122. package/lib/esm/content-fields/hubtype-fields/carousel.js.map +1 -1
  123. package/lib/esm/content-fields/hubtype-fields/channel-conditional.d.ts +3 -3
  124. package/lib/esm/content-fields/hubtype-fields/channel-conditional.js +3 -2
  125. package/lib/esm/content-fields/hubtype-fields/channel-conditional.js.map +1 -1
  126. package/lib/esm/content-fields/hubtype-fields/common.d.ts +2 -2
  127. package/lib/esm/content-fields/hubtype-fields/common.js +3 -2
  128. package/lib/esm/content-fields/hubtype-fields/common.js.map +1 -1
  129. package/lib/esm/content-fields/hubtype-fields/country-conditional.d.ts +3 -3
  130. package/lib/esm/content-fields/hubtype-fields/country-conditional.js +3 -2
  131. package/lib/esm/content-fields/hubtype-fields/country-conditional.js.map +1 -1
  132. package/lib/esm/content-fields/hubtype-fields/custom-conditional-v2.d.ts +2 -2
  133. package/lib/esm/content-fields/hubtype-fields/custom-conditional-v2.js +15 -15
  134. package/lib/esm/content-fields/hubtype-fields/custom-conditional-v2.js.map +1 -1
  135. package/lib/esm/content-fields/hubtype-fields/custom-conditional.d.ts +3 -3
  136. package/lib/esm/content-fields/hubtype-fields/custom-conditional.js +3 -2
  137. package/lib/esm/content-fields/hubtype-fields/custom-conditional.js.map +1 -1
  138. package/lib/esm/content-fields/hubtype-fields/fallback.d.ts +2 -2
  139. package/lib/esm/content-fields/hubtype-fields/fallback.js +3 -2
  140. package/lib/esm/content-fields/hubtype-fields/fallback.js.map +1 -1
  141. package/lib/esm/content-fields/hubtype-fields/function.d.ts +2 -2
  142. package/lib/esm/content-fields/hubtype-fields/function.js +6 -6
  143. package/lib/esm/content-fields/hubtype-fields/function.js.map +1 -1
  144. package/lib/esm/content-fields/hubtype-fields/go-to-flow.d.ts +2 -2
  145. package/lib/esm/content-fields/hubtype-fields/go-to-flow.js +3 -2
  146. package/lib/esm/content-fields/hubtype-fields/go-to-flow.js.map +1 -1
  147. package/lib/esm/content-fields/hubtype-fields/handoff.d.ts +2 -2
  148. package/lib/esm/content-fields/hubtype-fields/handoff.js +3 -2
  149. package/lib/esm/content-fields/hubtype-fields/handoff.js.map +1 -1
  150. package/lib/esm/content-fields/hubtype-fields/image.d.ts +2 -2
  151. package/lib/esm/content-fields/hubtype-fields/image.js +3 -2
  152. package/lib/esm/content-fields/hubtype-fields/image.js.map +1 -1
  153. package/lib/esm/content-fields/hubtype-fields/index.d.ts +27 -27
  154. package/lib/esm/content-fields/hubtype-fields/index.js +56 -30
  155. package/lib/esm/content-fields/hubtype-fields/index.js.map +1 -1
  156. package/lib/esm/content-fields/hubtype-fields/keyword.d.ts +2 -2
  157. package/lib/esm/content-fields/hubtype-fields/keyword.js +3 -2
  158. package/lib/esm/content-fields/hubtype-fields/keyword.js.map +1 -1
  159. package/lib/esm/content-fields/hubtype-fields/node-types.js +12 -12
  160. package/lib/esm/content-fields/hubtype-fields/node-types.js.map +1 -1
  161. package/lib/esm/content-fields/hubtype-fields/nodes.d.ts +23 -23
  162. package/lib/esm/content-fields/hubtype-fields/nodes.js +3 -2
  163. package/lib/esm/content-fields/hubtype-fields/nodes.js.map +1 -1
  164. package/lib/esm/content-fields/hubtype-fields/payload.d.ts +1 -1
  165. package/lib/esm/content-fields/hubtype-fields/payload.js +3 -2
  166. package/lib/esm/content-fields/hubtype-fields/payload.js.map +1 -1
  167. package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.d.ts +3 -3
  168. package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.js +3 -2
  169. package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.js.map +1 -1
  170. package/lib/esm/content-fields/hubtype-fields/rating.d.ts +2 -2
  171. package/lib/esm/content-fields/hubtype-fields/rating.js +6 -6
  172. package/lib/esm/content-fields/hubtype-fields/rating.js.map +1 -1
  173. package/lib/esm/content-fields/hubtype-fields/smart-intent.d.ts +2 -2
  174. package/lib/esm/content-fields/hubtype-fields/smart-intent.js +3 -2
  175. package/lib/esm/content-fields/hubtype-fields/smart-intent.js.map +1 -1
  176. package/lib/esm/content-fields/hubtype-fields/text.d.ts +3 -3
  177. package/lib/esm/content-fields/hubtype-fields/text.js +3 -2
  178. package/lib/esm/content-fields/hubtype-fields/text.js.map +1 -1
  179. package/lib/esm/content-fields/hubtype-fields/url.d.ts +1 -1
  180. package/lib/esm/content-fields/hubtype-fields/url.js +3 -2
  181. package/lib/esm/content-fields/hubtype-fields/url.js.map +1 -1
  182. package/lib/esm/content-fields/hubtype-fields/video.d.ts +2 -2
  183. package/lib/esm/content-fields/hubtype-fields/video.js +3 -2
  184. package/lib/esm/content-fields/hubtype-fields/video.js.map +1 -1
  185. package/lib/esm/content-fields/hubtype-fields/webview.d.ts +2 -2
  186. package/lib/esm/content-fields/hubtype-fields/webview.js +3 -2
  187. package/lib/esm/content-fields/hubtype-fields/webview.js.map +1 -1
  188. package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.d.ts +2 -2
  189. package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.js +3 -2
  190. package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.js.map +1 -1
  191. package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.d.ts +3 -3
  192. package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.js +3 -2
  193. package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +1 -1
  194. package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.d.ts +2 -2
  195. package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.js +3 -2
  196. package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.js.map +1 -1
  197. package/lib/esm/content-fields/hubtype-fields/whatsapp-template.d.ts +3 -3
  198. package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js +6 -6
  199. package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js.map +1 -1
  200. package/lib/esm/content-fields/index.d.ts +23 -23
  201. package/lib/esm/content-fields/index.js +72 -51
  202. package/lib/esm/content-fields/index.js.map +1 -1
  203. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +3 -3
  204. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +16 -14
  205. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +1 -1
  206. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +4 -4
  207. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +20 -15
  208. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +1 -1
  209. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +4 -4
  210. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +46 -26
  211. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +1 -1
  212. package/lib/esm/content-fields/whatsapp-button-list/index.d.ts +3 -3
  213. package/lib/esm/content-fields/whatsapp-button-list/index.js +11 -9
  214. package/lib/esm/content-fields/whatsapp-button-list/index.js.map +1 -1
  215. package/lib/esm/filters/index.d.ts +2 -2
  216. package/lib/esm/filters/index.js +8 -9
  217. package/lib/esm/filters/index.js.map +1 -1
  218. package/lib/esm/flow-factory.d.ts +3 -3
  219. package/lib/esm/flow-factory.js +57 -51
  220. package/lib/esm/flow-factory.js.map +1 -1
  221. package/lib/esm/functions/index.d.ts +1 -1
  222. package/lib/esm/functions/index.js +25 -19
  223. package/lib/esm/functions/index.js.map +1 -1
  224. package/lib/esm/index.d.ts +12 -12
  225. package/lib/esm/index.js +94 -77
  226. package/lib/esm/index.js.map +1 -1
  227. package/lib/esm/package.json +3 -0
  228. package/lib/esm/services/hubtype-queues-api.js +14 -14
  229. package/lib/esm/services/hubtype-queues-api.js.map +1 -1
  230. package/lib/esm/structured-output/flow-builder-content.js +14 -13
  231. package/lib/esm/structured-output/flow-builder-content.js.map +1 -1
  232. package/lib/esm/tracking.d.ts +2 -2
  233. package/lib/esm/tracking.js +27 -21
  234. package/lib/esm/tracking.js.map +1 -1
  235. package/lib/esm/types.d.ts +5 -5
  236. package/lib/esm/types.js +9 -9
  237. package/lib/esm/types.js.map +1 -1
  238. package/lib/esm/user-input/capture-user-input-api.d.ts +2 -2
  239. package/lib/esm/user-input/capture-user-input-api.js +44 -33
  240. package/lib/esm/user-input/capture-user-input-api.js.map +1 -1
  241. package/lib/esm/user-input/index.d.ts +2 -2
  242. package/lib/esm/user-input/index.js +23 -14
  243. package/lib/esm/user-input/index.js.map +1 -1
  244. package/lib/esm/user-input/keyword.d.ts +2 -2
  245. package/lib/esm/user-input/keyword.js +31 -26
  246. package/lib/esm/user-input/keyword.js.map +1 -1
  247. package/lib/esm/user-input/smart-intent.d.ts +2 -2
  248. package/lib/esm/user-input/smart-intent.js +36 -32
  249. package/lib/esm/user-input/smart-intent.js.map +1 -1
  250. package/lib/esm/utils/ai-agent.d.ts +3 -3
  251. package/lib/esm/utils/ai-agent.js +17 -12
  252. package/lib/esm/utils/ai-agent.js.map +1 -1
  253. package/lib/esm/utils/authentication.js +10 -7
  254. package/lib/esm/utils/authentication.js.map +1 -1
  255. package/lib/esm/utils/flow-locale.js +14 -18
  256. package/lib/esm/utils/flow-locale.js.map +1 -1
  257. package/lib/esm/utils/get-flow-builder-plugin.d.ts +1 -1
  258. package/lib/esm/utils/get-flow-builder-plugin.js +4 -4
  259. package/lib/esm/utils/get-flow-builder-plugin.js.map +1 -1
  260. package/lib/esm/utils/hubtype-assistant-content.d.ts +1 -2
  261. package/lib/esm/utils/hubtype-assistant-content.js +57 -54
  262. package/lib/esm/utils/hubtype-assistant-content.js.map +1 -1
  263. package/lib/esm/utils/input.js +16 -14
  264. package/lib/esm/utils/input.js.map +1 -1
  265. package/lib/esm/webview/contents-context.d.ts +1 -1
  266. package/lib/esm/webview/contents-context.js +13 -11
  267. package/lib/esm/webview/contents-context.js.map +1 -1
  268. package/lib/esm/webview/index.d.ts +3 -3
  269. package/lib/esm/webview/index.js +10 -9
  270. package/lib/esm/webview/index.js.map +1 -1
  271. package/lib/esm/webview/types.d.ts +1 -1
  272. package/lib/esm/webview/types.js +6 -6
  273. package/lib/esm/webview/types.js.map +1 -1
  274. package/lib/esm/webview/use-webview-contents.d.ts +1 -1
  275. package/lib/esm/webview/use-webview-contents.js +46 -39
  276. package/lib/esm/webview/use-webview-contents.js.map +1 -1
  277. package/package.json +8 -7
  278. package/src/content-fields/flow-ai-agent-base.tsx +0 -11
  279. package/src/content-fields/flow-whatsapp-request-contact-info.tsx +1 -17
  280. package/src/index.ts +5 -5
  281. package/src/types.ts +6 -6
  282. package/src/utils/hubtype-assistant-content.ts +0 -14
  283. package/lib/cjs/action/ai-agent-from-user-input.d.ts +0 -3
  284. package/lib/cjs/action/ai-agent-from-user-input.js +0 -32
  285. package/lib/cjs/action/ai-agent-from-user-input.js.map +0 -1
  286. package/lib/cjs/action/context.d.ts +0 -11
  287. package/lib/cjs/action/context.js +0 -17
  288. package/lib/cjs/action/context.js.map +0 -1
  289. package/lib/cjs/action/fallback.d.ts +0 -3
  290. package/lib/cjs/action/fallback.js +0 -36
  291. package/lib/cjs/action/fallback.js.map +0 -1
  292. package/lib/cjs/action/first-interaction.d.ts +0 -3
  293. package/lib/cjs/action/first-interaction.js +0 -88
  294. package/lib/cjs/action/first-interaction.js.map +0 -1
  295. package/lib/cjs/action/get-contents.d.ts +0 -3
  296. package/lib/cjs/action/get-contents.js +0 -39
  297. package/lib/cjs/action/get-contents.js.map +0 -1
  298. package/lib/cjs/action/index.d.ts +0 -25
  299. package/lib/cjs/action/index.js +0 -90
  300. package/lib/cjs/action/index.js.map +0 -1
  301. package/lib/cjs/action/payload.d.ts +0 -3
  302. package/lib/cjs/action/payload.js +0 -74
  303. package/lib/cjs/action/payload.js.map +0 -1
  304. package/lib/cjs/api.d.ts +0 -40
  305. package/lib/cjs/api.js +0 -205
  306. package/lib/cjs/api.js.map +0 -1
  307. package/lib/cjs/constants.d.ts +0 -13
  308. package/lib/cjs/constants.js +0 -19
  309. package/lib/cjs/constants.js.map +0 -1
  310. package/lib/cjs/content-fields/content-fields-base.d.ts +0 -20
  311. package/lib/cjs/content-fields/content-fields-base.js +0 -74
  312. package/lib/cjs/content-fields/content-fields-base.js.map +0 -1
  313. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.d.ts +0 -15
  314. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.js +0 -71
  315. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.js.map +0 -1
  316. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.d.ts +0 -9
  317. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.js +0 -58
  318. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.js.map +0 -1
  319. package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.d.ts +0 -17
  320. package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.js +0 -79
  321. package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.js.map +0 -1
  322. package/lib/cjs/content-fields/flow-ai-agent-base.d.ts +0 -25
  323. package/lib/cjs/content-fields/flow-ai-agent-base.js +0 -97
  324. package/lib/cjs/content-fields/flow-ai-agent-base.js.map +0 -1
  325. package/lib/cjs/content-fields/flow-ai-agent-router.d.ts +0 -21
  326. package/lib/cjs/content-fields/flow-ai-agent-router.js +0 -125
  327. package/lib/cjs/content-fields/flow-ai-agent-router.js.map +0 -1
  328. package/lib/cjs/content-fields/flow-ai-agent.d.ts +0 -17
  329. package/lib/cjs/content-fields/flow-ai-agent.js +0 -64
  330. package/lib/cjs/content-fields/flow-ai-agent.js.map +0 -1
  331. package/lib/cjs/content-fields/flow-bot-action.d.ts +0 -14
  332. package/lib/cjs/content-fields/flow-bot-action.js +0 -45
  333. package/lib/cjs/content-fields/flow-bot-action.js.map +0 -1
  334. package/lib/cjs/content-fields/flow-button.d.ts +0 -31
  335. package/lib/cjs/content-fields/flow-button.js +0 -86
  336. package/lib/cjs/content-fields/flow-button.js.map +0 -1
  337. package/lib/cjs/content-fields/flow-capture-user-input.d.ts +0 -14
  338. package/lib/cjs/content-fields/flow-capture-user-input.js +0 -45
  339. package/lib/cjs/content-fields/flow-capture-user-input.js.map +0 -1
  340. package/lib/cjs/content-fields/flow-carousel.d.ts +0 -22
  341. package/lib/cjs/content-fields/flow-carousel.js +0 -152
  342. package/lib/cjs/content-fields/flow-carousel.js.map +0 -1
  343. package/lib/cjs/content-fields/flow-channel-conditional.d.ts +0 -14
  344. package/lib/cjs/content-fields/flow-channel-conditional.js +0 -57
  345. package/lib/cjs/content-fields/flow-channel-conditional.js.map +0 -1
  346. package/lib/cjs/content-fields/flow-country-conditional.d.ts +0 -13
  347. package/lib/cjs/content-fields/flow-country-conditional.js +0 -59
  348. package/lib/cjs/content-fields/flow-country-conditional.js.map +0 -1
  349. package/lib/cjs/content-fields/flow-custom-conditional.d.ts +0 -17
  350. package/lib/cjs/content-fields/flow-custom-conditional.js +0 -89
  351. package/lib/cjs/content-fields/flow-custom-conditional.js.map +0 -1
  352. package/lib/cjs/content-fields/flow-element.d.ts +0 -22
  353. package/lib/cjs/content-fields/flow-element.js +0 -50
  354. package/lib/cjs/content-fields/flow-element.js.map +0 -1
  355. package/lib/cjs/content-fields/flow-go-to-flow.d.ts +0 -13
  356. package/lib/cjs/content-fields/flow-go-to-flow.js +0 -51
  357. package/lib/cjs/content-fields/flow-go-to-flow.js.map +0 -1
  358. package/lib/cjs/content-fields/flow-handoff.d.ts +0 -17
  359. package/lib/cjs/content-fields/flow-handoff.js +0 -68
  360. package/lib/cjs/content-fields/flow-handoff.js.map +0 -1
  361. package/lib/cjs/content-fields/flow-image.d.ts +0 -10
  362. package/lib/cjs/content-fields/flow-image.js +0 -33
  363. package/lib/cjs/content-fields/flow-image.js.map +0 -1
  364. package/lib/cjs/content-fields/flow-queue-status-conditional.d.ts +0 -30
  365. package/lib/cjs/content-fields/flow-queue-status-conditional.js +0 -95
  366. package/lib/cjs/content-fields/flow-queue-status-conditional.js.map +0 -1
  367. package/lib/cjs/content-fields/flow-rating.d.ts +0 -15
  368. package/lib/cjs/content-fields/flow-rating.js +0 -66
  369. package/lib/cjs/content-fields/flow-rating.js.map +0 -1
  370. package/lib/cjs/content-fields/flow-text.d.ts +0 -15
  371. package/lib/cjs/content-fields/flow-text.js +0 -60
  372. package/lib/cjs/content-fields/flow-text.js.map +0 -1
  373. package/lib/cjs/content-fields/flow-video.d.ts +0 -10
  374. package/lib/cjs/content-fields/flow-video.js +0 -33
  375. package/lib/cjs/content-fields/flow-video.js.map +0 -1
  376. package/lib/cjs/content-fields/flow-webview.d.ts +0 -16
  377. package/lib/cjs/content-fields/flow-webview.js +0 -78
  378. package/lib/cjs/content-fields/flow-webview.js.map +0 -1
  379. package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.d.ts +0 -21
  380. package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js +0 -92
  381. package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js.map +0 -1
  382. package/lib/cjs/content-fields/flow-whatsapp-request-contact-info.d.ts +0 -11
  383. package/lib/cjs/content-fields/flow-whatsapp-request-contact-info.js +0 -45
  384. package/lib/cjs/content-fields/flow-whatsapp-request-contact-info.js.map +0 -1
  385. package/lib/cjs/content-fields/flow-whatsapp-template.d.ts +0 -37
  386. package/lib/cjs/content-fields/flow-whatsapp-template.js +0 -264
  387. package/lib/cjs/content-fields/flow-whatsapp-template.js.map +0 -1
  388. package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.d.ts +0 -21
  389. package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.js +0 -3
  390. package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.js.map +0 -1
  391. package/lib/cjs/content-fields/hubtype-fields/ai-agent.d.ts +0 -25
  392. package/lib/cjs/content-fields/hubtype-fields/ai-agent.js +0 -3
  393. package/lib/cjs/content-fields/hubtype-fields/ai-agent.js.map +0 -1
  394. package/lib/cjs/content-fields/hubtype-fields/bot-action.d.ts +0 -10
  395. package/lib/cjs/content-fields/hubtype-fields/bot-action.js +0 -3
  396. package/lib/cjs/content-fields/hubtype-fields/bot-action.js.map +0 -1
  397. package/lib/cjs/content-fields/hubtype-fields/button.d.ts +0 -8
  398. package/lib/cjs/content-fields/hubtype-fields/button.js +0 -3
  399. package/lib/cjs/content-fields/hubtype-fields/button.js.map +0 -1
  400. package/lib/cjs/content-fields/hubtype-fields/capture-user-input.d.ts +0 -19
  401. package/lib/cjs/content-fields/hubtype-fields/capture-user-input.js +0 -12
  402. package/lib/cjs/content-fields/hubtype-fields/capture-user-input.js.map +0 -1
  403. package/lib/cjs/content-fields/hubtype-fields/carousel.d.ts +0 -17
  404. package/lib/cjs/content-fields/hubtype-fields/carousel.js +0 -3
  405. package/lib/cjs/content-fields/hubtype-fields/carousel.js.map +0 -1
  406. package/lib/cjs/content-fields/hubtype-fields/channel-conditional.d.ts +0 -10
  407. package/lib/cjs/content-fields/hubtype-fields/channel-conditional.js +0 -3
  408. package/lib/cjs/content-fields/hubtype-fields/channel-conditional.js.map +0 -1
  409. package/lib/cjs/content-fields/hubtype-fields/common.d.ts +0 -83
  410. package/lib/cjs/content-fields/hubtype-fields/common.js +0 -3
  411. package/lib/cjs/content-fields/hubtype-fields/common.js.map +0 -1
  412. package/lib/cjs/content-fields/hubtype-fields/country-conditional.d.ts +0 -10
  413. package/lib/cjs/content-fields/hubtype-fields/country-conditional.js +0 -3
  414. package/lib/cjs/content-fields/hubtype-fields/country-conditional.js.map +0 -1
  415. package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.d.ts +0 -56
  416. package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.js +0 -36
  417. package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.js.map +0 -1
  418. package/lib/cjs/content-fields/hubtype-fields/custom-conditional.d.ts +0 -11
  419. package/lib/cjs/content-fields/hubtype-fields/custom-conditional.js +0 -3
  420. package/lib/cjs/content-fields/hubtype-fields/custom-conditional.js.map +0 -1
  421. package/lib/cjs/content-fields/hubtype-fields/fallback.d.ts +0 -9
  422. package/lib/cjs/content-fields/hubtype-fields/fallback.js +0 -3
  423. package/lib/cjs/content-fields/hubtype-fields/fallback.js.map +0 -1
  424. package/lib/cjs/content-fields/hubtype-fields/function.d.ts +0 -30
  425. package/lib/cjs/content-fields/hubtype-fields/function.js +0 -11
  426. package/lib/cjs/content-fields/hubtype-fields/function.js.map +0 -1
  427. package/lib/cjs/content-fields/hubtype-fields/go-to-flow.d.ts +0 -9
  428. package/lib/cjs/content-fields/hubtype-fields/go-to-flow.js +0 -3
  429. package/lib/cjs/content-fields/hubtype-fields/go-to-flow.js.map +0 -1
  430. package/lib/cjs/content-fields/hubtype-fields/handoff.d.ts +0 -11
  431. package/lib/cjs/content-fields/hubtype-fields/handoff.js +0 -3
  432. package/lib/cjs/content-fields/hubtype-fields/handoff.js.map +0 -1
  433. package/lib/cjs/content-fields/hubtype-fields/image.d.ts +0 -8
  434. package/lib/cjs/content-fields/hubtype-fields/image.js +0 -3
  435. package/lib/cjs/content-fields/hubtype-fields/image.js.map +0 -1
  436. package/lib/cjs/content-fields/hubtype-fields/index.d.ts +0 -27
  437. package/lib/cjs/content-fields/hubtype-fields/index.js +0 -31
  438. package/lib/cjs/content-fields/hubtype-fields/index.js.map +0 -1
  439. package/lib/cjs/content-fields/hubtype-fields/keyword.d.ts +0 -9
  440. package/lib/cjs/content-fields/hubtype-fields/keyword.js +0 -3
  441. package/lib/cjs/content-fields/hubtype-fields/keyword.js.map +0 -1
  442. package/lib/cjs/content-fields/hubtype-fields/node-types.d.ts +0 -31
  443. package/lib/cjs/content-fields/hubtype-fields/node-types.js +0 -38
  444. package/lib/cjs/content-fields/hubtype-fields/node-types.js.map +0 -1
  445. package/lib/cjs/content-fields/hubtype-fields/nodes.d.ts +0 -26
  446. package/lib/cjs/content-fields/hubtype-fields/nodes.js +0 -3
  447. package/lib/cjs/content-fields/hubtype-fields/nodes.js.map +0 -1
  448. package/lib/cjs/content-fields/hubtype-fields/payload.d.ts +0 -8
  449. package/lib/cjs/content-fields/hubtype-fields/payload.js +0 -3
  450. package/lib/cjs/content-fields/hubtype-fields/payload.js.map +0 -1
  451. package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.d.ts +0 -25
  452. package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.js +0 -3
  453. package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.js.map +0 -1
  454. package/lib/cjs/content-fields/hubtype-fields/rating.d.ts +0 -23
  455. package/lib/cjs/content-fields/hubtype-fields/rating.js +0 -9
  456. package/lib/cjs/content-fields/hubtype-fields/rating.js.map +0 -1
  457. package/lib/cjs/content-fields/hubtype-fields/smart-intent.d.ts +0 -12
  458. package/lib/cjs/content-fields/hubtype-fields/smart-intent.js +0 -3
  459. package/lib/cjs/content-fields/hubtype-fields/smart-intent.js.map +0 -1
  460. package/lib/cjs/content-fields/hubtype-fields/text.d.ts +0 -11
  461. package/lib/cjs/content-fields/hubtype-fields/text.js +0 -3
  462. package/lib/cjs/content-fields/hubtype-fields/text.js.map +0 -1
  463. package/lib/cjs/content-fields/hubtype-fields/url.d.ts +0 -8
  464. package/lib/cjs/content-fields/hubtype-fields/url.js +0 -3
  465. package/lib/cjs/content-fields/hubtype-fields/url.js.map +0 -1
  466. package/lib/cjs/content-fields/hubtype-fields/video.d.ts +0 -8
  467. package/lib/cjs/content-fields/hubtype-fields/video.js +0 -3
  468. package/lib/cjs/content-fields/hubtype-fields/video.js.map +0 -1
  469. package/lib/cjs/content-fields/hubtype-fields/webview.d.ts +0 -17
  470. package/lib/cjs/content-fields/hubtype-fields/webview.js +0 -3
  471. package/lib/cjs/content-fields/hubtype-fields/webview.js.map +0 -1
  472. package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.d.ts +0 -21
  473. package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.js +0 -3
  474. package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.js.map +0 -1
  475. package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.d.ts +0 -17
  476. package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.js +0 -3
  477. package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +0 -1
  478. package/lib/cjs/content-fields/hubtype-fields/whatsapp-request-contact-info.d.ts +0 -8
  479. package/lib/cjs/content-fields/hubtype-fields/whatsapp-request-contact-info.js +0 -3
  480. package/lib/cjs/content-fields/hubtype-fields/whatsapp-request-contact-info.js.map +0 -1
  481. package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.d.ts +0 -96
  482. package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js +0 -9
  483. package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js.map +0 -1
  484. package/lib/cjs/content-fields/index.d.ts +0 -25
  485. package/lib/cjs/content-fields/index.js +0 -52
  486. package/lib/cjs/content-fields/index.js.map +0 -1
  487. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +0 -14
  488. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +0 -41
  489. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +0 -1
  490. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +0 -13
  491. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +0 -36
  492. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +0 -1
  493. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +0 -14
  494. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +0 -46
  495. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +0 -1
  496. package/lib/cjs/content-fields/whatsapp-button-list/index.d.ts +0 -3
  497. package/lib/cjs/content-fields/whatsapp-button-list/index.js +0 -10
  498. package/lib/cjs/content-fields/whatsapp-button-list/index.js.map +0 -1
  499. package/lib/cjs/filters/index.d.ts +0 -12
  500. package/lib/cjs/filters/index.js +0 -17
  501. package/lib/cjs/filters/index.js.map +0 -1
  502. package/lib/cjs/flow-factory.d.ts +0 -12
  503. package/lib/cjs/flow-factory.js +0 -69
  504. package/lib/cjs/flow-factory.js.map +0 -1
  505. package/lib/cjs/functions/index.d.ts +0 -11
  506. package/lib/cjs/functions/index.js +0 -49
  507. package/lib/cjs/functions/index.js.map +0 -1
  508. package/lib/cjs/index.d.ts +0 -45
  509. package/lib/cjs/index.js +0 -178
  510. package/lib/cjs/index.js.map +0 -1
  511. package/lib/cjs/services/hubtype-queues-api.d.ts +0 -14
  512. package/lib/cjs/services/hubtype-queues-api.js +0 -26
  513. package/lib/cjs/services/hubtype-queues-api.js.map +0 -1
  514. package/lib/cjs/structured-output/flow-builder-content.d.ts +0 -13
  515. package/lib/cjs/structured-output/flow-builder-content.js +0 -15
  516. package/lib/cjs/structured-output/flow-builder-content.js.map +0 -1
  517. package/lib/cjs/tracking.d.ts +0 -16
  518. package/lib/cjs/tracking.js +0 -71
  519. package/lib/cjs/tracking.js.map +0 -1
  520. package/lib/cjs/types.d.ts +0 -62
  521. package/lib/cjs/types.js +0 -14
  522. package/lib/cjs/types.js.map +0 -1
  523. package/lib/cjs/user-input/capture-user-input-api.d.ts +0 -21
  524. package/lib/cjs/user-input/capture-user-input-api.js +0 -88
  525. package/lib/cjs/user-input/capture-user-input-api.js.map +0 -1
  526. package/lib/cjs/user-input/index.d.ts +0 -4
  527. package/lib/cjs/user-input/index.js +0 -37
  528. package/lib/cjs/user-input/index.js.map +0 -1
  529. package/lib/cjs/user-input/keyword.d.ts +0 -27
  530. package/lib/cjs/user-input/keyword.js +0 -84
  531. package/lib/cjs/user-input/keyword.js.map +0 -1
  532. package/lib/cjs/user-input/smart-intent.d.ts +0 -24
  533. package/lib/cjs/user-input/smart-intent.js +0 -89
  534. package/lib/cjs/user-input/smart-intent.js.map +0 -1
  535. package/lib/cjs/utils/ai-agent.d.ts +0 -11
  536. package/lib/cjs/utils/ai-agent.js +0 -28
  537. package/lib/cjs/utils/ai-agent.js.map +0 -1
  538. package/lib/cjs/utils/authentication.d.ts +0 -2
  539. package/lib/cjs/utils/authentication.js +0 -21
  540. package/lib/cjs/utils/authentication.js.map +0 -1
  541. package/lib/cjs/utils/flow-locale.d.ts +0 -22
  542. package/lib/cjs/utils/flow-locale.js +0 -79
  543. package/lib/cjs/utils/flow-locale.js.map +0 -1
  544. package/lib/cjs/utils/get-flow-builder-plugin.d.ts +0 -3
  545. package/lib/cjs/utils/get-flow-builder-plugin.js +0 -16
  546. package/lib/cjs/utils/get-flow-builder-plugin.js.map +0 -1
  547. package/lib/cjs/utils/hubtype-assistant-content.d.ts +0 -13
  548. package/lib/cjs/utils/hubtype-assistant-content.js +0 -184
  549. package/lib/cjs/utils/hubtype-assistant-content.js.map +0 -1
  550. package/lib/cjs/utils/input.d.ts +0 -6
  551. package/lib/cjs/utils/input.js +0 -35
  552. package/lib/cjs/utils/input.js.map +0 -1
  553. package/lib/cjs/webview/contents-context.d.ts +0 -2
  554. package/lib/cjs/webview/contents-context.js +0 -12
  555. package/lib/cjs/webview/contents-context.js.map +0 -1
  556. package/lib/cjs/webview/index.d.ts +0 -3
  557. package/lib/cjs/webview/index.js +0 -10
  558. package/lib/cjs/webview/index.js.map +0 -1
  559. package/lib/cjs/webview/types.d.ts +0 -47
  560. package/lib/cjs/webview/types.js +0 -9
  561. package/lib/cjs/webview/types.js.map +0 -1
  562. package/lib/cjs/webview/use-webview-contents.d.ts +0 -2
  563. package/lib/cjs/webview/use-webview-contents.js +0 -83
  564. package/lib/cjs/webview/use-webview-contents.js.map +0 -1
@@ -1,3 +1,3 @@
1
- import type { FlowContent } from '../content-fields/index';
2
- import type { FlowBuilderContext } from './context';
1
+ import type { FlowContent } from '../content-fields/index.js';
2
+ import type { FlowBuilderContext } from './context.js';
3
3
  export declare function getContentsByAiAgentFromUserInput({ cmsApi, flowBuilderPlugin, request, }: FlowBuilderContext): Promise<FlowContent[]>;
@@ -1,15 +1,15 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getContentsByAiAgentFromUserInput = getContentsByAiAgentFromUserInput;
4
- const ai_agent_1 = require("../utils/ai-agent");
5
- async function getContentsByAiAgentFromUserInput({ cmsApi, flowBuilderPlugin, request, }) {
1
+ import { splitAiAgentContents } from "../utils/ai-agent.js";
2
+
3
+
4
+
5
+ async function getContentsByAiAgentFromUserInput({ cmsApi, flowBuilderPlugin, request }) {
6
6
  const startNodeAiAgentFlow = cmsApi.getStartNodeAiAgentFlow();
7
7
  const isAiAgentEnabled = cmsApi.isAiAgentEnabled();
8
8
  if (!startNodeAiAgentFlow || !isAiAgentEnabled) {
9
9
  return [];
10
10
  }
11
11
  const contents = await flowBuilderPlugin.getContentsByNode(startNodeAiAgentFlow);
12
- const splitContents = (0, ai_agent_1.splitAiAgentContents)(contents);
12
+ const splitContents = splitAiAgentContents(contents);
13
13
  if (!splitContents) {
14
14
  return [];
15
15
  }
@@ -29,4 +29,7 @@ async function getContentsByAiAgentFromUserInput({ cmsApi, flowBuilderPlugin, re
29
29
  }
30
30
  return contents;
31
31
  }
32
+
33
+ export { getContentsByAiAgentFromUserInput };
34
+
32
35
  //# sourceMappingURL=ai-agent-from-user-input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent-from-user-input.js","sourceRoot":"","sources":["../../../src/action/ai-agent-from-user-input.ts"],"names":[],"mappings":";;AAIA,8EA6CC;AAhDD,gDAAwD;AAGjD,KAAK,UAAU,iCAAiC,CAAC,EACtD,MAAM,EACN,iBAAiB,EACjB,OAAO,GACY;IACnB,MAAM,oBAAoB,GAAG,MAAM,CAAC,uBAAuB,EAAE,CAAA;IAC7D,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAA;IAClD,IAAI,CAAC,oBAAoB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC/C,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,QAAQ,GACZ,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAA;IAEjE,MAAM,aAAa,GAAG,IAAA,+BAAoB,EAAC,QAAQ,CAAC,CAAA;IAEpD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,sBAAsB,IAAI,aAAa,EAAE,CAAC;QAC5C,MAAM,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,GAAG,aAAa,CAAA;QAC3E,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAAC,sBAAsB,CACvE,OAAO,EACP,2BAA2B,CAC5B,CAAA;QAED,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,IAAI,EAAE,CAAC;YAC7C,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED,IAAI,sBAAsB,IAAI,aAAa,EAAE,CAAC;QAC5C,MAAM,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,GAAG,aAAa,CAAA;QAC3E,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAAC,sBAAsB,CACvE,OAAO,EACP,2BAA2B,CAC5B,CAAA;QAED,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,IAAI,EAAE,CAAC;YAC7C,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC"}
1
+ {"version":3,"file":"action/ai-agent-from-user-input.js","sources":["../../../src/action/ai-agent-from-user-input.ts"],"sourcesContent":["import type { FlowContent } from '../content-fields/index'\nimport { splitAiAgentContents } from '../utils/ai-agent'\nimport type { FlowBuilderContext } from './context'\n\nexport async function getContentsByAiAgentFromUserInput({\n cmsApi,\n flowBuilderPlugin,\n request,\n}: FlowBuilderContext): Promise<FlowContent[]> {\n const startNodeAiAgentFlow = cmsApi.getStartNodeAiAgentFlow()\n const isAiAgentEnabled = cmsApi.isAiAgentEnabled()\n if (!startNodeAiAgentFlow || !isAiAgentEnabled) {\n return []\n }\n\n const contents =\n await flowBuilderPlugin.getContentsByNode(startNodeAiAgentFlow)\n\n const splitContents = splitAiAgentContents(contents)\n\n if (!splitContents) {\n return []\n }\n\n if ('aiAgentRouterContent' in splitContents) {\n const { aiAgentRouterContent, contentsBeforeAiAgentRouter } = splitContents\n const aiAgentResponse = await aiAgentRouterContent.resolveAIAgentResponse(\n request,\n contentsBeforeAiAgentRouter\n )\n\n if (!aiAgentResponse || aiAgentResponse.exit) {\n return []\n }\n }\n\n if ('aiAgentWorkerContent' in splitContents) {\n const { aiAgentWorkerContent, contentsBeforeAiAgentWorker } = splitContents\n const aiAgentResponse = await aiAgentWorkerContent.resolveAIAgentResponse(\n request,\n contentsBeforeAiAgentWorker\n )\n\n if (!aiAgentResponse || aiAgentResponse.exit) {\n return []\n }\n }\n\n return contents\n}\n"],"names":["splitAiAgentContents","getContentsByAiAgentFromUserInput","cmsApi","flowBuilderPlugin","request","startNodeAiAgentFlow","isAiAgentEnabled","contents","splitContents","aiAgentRouterContent","contentsBeforeAiAgentRouter","aiAgentResponse","aiAgentWorkerContent","contentsBeforeAiAgentWorker"],"mappings":";;;AACwD;AAGjD,eAAeC,iCAAiCA,CAAC,EACtDC,MAAM,EACNC,iBAAiB,EACjBC,OAAO,EACY;IACnB,MAAMC,uBAAuBH,OAAO,uBAAuB;IAC3D,MAAMI,mBAAmBJ,OAAO,gBAAgB;IAChD,IAAI,CAACG,wBAAwB,CAACC,kBAAkB;QAC9C,OAAO,EAAE;IACX;IAEA,MAAMC,WACJ,MAAMJ,kBAAkB,iBAAiB,CAACE;IAE5C,MAAMG,gBAAgBR,oBAAoBA,CAACO;IAE3C,IAAI,CAACC,eAAe;QAClB,OAAO,EAAE;IACX;IAEA,IAAI,0BAA0BA,eAAe;QAC3C,MAAM,EAAEC,oBAAoB,EAAEC,2BAA2B,EAAE,GAAGF;QAC9D,MAAMG,kBAAkB,MAAMF,qBAAqB,sBAAsB,CACvEL,SACAM;QAGF,IAAI,CAACC,mBAAmBA,gBAAgB,IAAI,EAAE;YAC5C,OAAO,EAAE;QACX;IACF;IAEA,IAAI,0BAA0BH,eAAe;QAC3C,MAAM,EAAEI,oBAAoB,EAAEC,2BAA2B,EAAE,GAAGL;QAC9D,MAAMG,kBAAkB,MAAMC,qBAAqB,sBAAsB,CACvER,SACAS;QAGF,IAAI,CAACF,mBAAmBA,gBAAgB,IAAI,EAAE;YAC5C,OAAO,EAAE;QACX;IACF;IAEA,OAAOJ;AACT"}
@@ -1,6 +1,6 @@
1
1
  import type { BotContext } from '@botonic/core';
2
- import type { FlowBuilderApi } from '../api';
3
- import type BotonicPluginFlowBuilder from '../index';
2
+ import type { FlowBuilderApi } from '../api.js';
3
+ import type BotonicPluginFlowBuilder from '../index.js';
4
4
  export interface FlowBuilderContext {
5
5
  cmsApi: FlowBuilderApi;
6
6
  flowBuilderPlugin: BotonicPluginFlowBuilder;
@@ -1,9 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFlowBuilderActionContext = getFlowBuilderActionContext;
4
- const get_flow_builder_plugin_1 = require("../utils/get-flow-builder-plugin");
1
+ import { getFlowBuilderPlugin } from "../utils/get-flow-builder-plugin.js";
2
+
3
+
4
+
5
5
  function getFlowBuilderActionContext(request, contentID) {
6
- const flowBuilderPlugin = (0, get_flow_builder_plugin_1.getFlowBuilderPlugin)(request.plugins);
6
+ const flowBuilderPlugin = getFlowBuilderPlugin(request.plugins);
7
7
  const cmsApi = flowBuilderPlugin.cmsApi;
8
8
  const resolvedLocale = flowBuilderPlugin.cmsApi.getResolvedLocale();
9
9
  return {
@@ -11,7 +11,10 @@ function getFlowBuilderActionContext(request, contentID) {
11
11
  flowBuilderPlugin,
12
12
  request,
13
13
  resolvedLocale,
14
- contentID,
14
+ contentID
15
15
  };
16
16
  }
17
+
18
+ export { getFlowBuilderActionContext };
19
+
17
20
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/action/context.ts"],"names":[],"mappings":";;AAcA,kEAcC;AAxBD,8EAAuE;AAUvE,SAAgB,2BAA2B,CACzC,OAAmB,EACnB,SAAkB;IAElB,MAAM,iBAAiB,GAAG,IAAA,8CAAoB,EAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAA;IACvC,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAA;IACnE,OAAO;QACL,MAAM;QACN,iBAAiB;QACjB,OAAO;QACP,cAAc;QACd,SAAS;KACV,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"action/context.js","sources":["../../../src/action/context.ts"],"sourcesContent":["import type { BotContext } from '@botonic/core'\n\nimport type { FlowBuilderApi } from '../api'\nimport type BotonicPluginFlowBuilder from '../index'\nimport { getFlowBuilderPlugin } from '../utils/get-flow-builder-plugin'\n\nexport interface FlowBuilderContext {\n cmsApi: FlowBuilderApi\n flowBuilderPlugin: BotonicPluginFlowBuilder\n request: BotContext\n resolvedLocale: string\n contentID?: string\n}\n\nexport function getFlowBuilderActionContext(\n request: BotContext,\n contentID?: string\n): FlowBuilderContext {\n const flowBuilderPlugin = getFlowBuilderPlugin(request.plugins)\n const cmsApi = flowBuilderPlugin.cmsApi\n const resolvedLocale = flowBuilderPlugin.cmsApi.getResolvedLocale()\n return {\n cmsApi,\n flowBuilderPlugin,\n request,\n resolvedLocale,\n contentID,\n }\n}\n"],"names":["getFlowBuilderPlugin","getFlowBuilderActionContext","request","contentID","flowBuilderPlugin","cmsApi","resolvedLocale"],"mappings":";;;AAIuE;AAUhE,SAASC,2BAA2BA,CACzCC,OAAmB,EACnBC,SAAkB;IAElB,MAAMC,oBAAoBJ,oBAAoBA,CAACE,QAAQ,OAAO;IAC9D,MAAMG,SAASD,kBAAkB,MAAM;IACvC,MAAME,iBAAiBF,kBAAkB,MAAM,CAAC,iBAAiB;IACjE,OAAO;QACLC;QACAD;QACAF;QACAI;QACAH;IACF;AACF"}
@@ -1,3 +1,3 @@
1
- import type { FlowContent } from '../content-fields';
2
- import type { FlowBuilderContext } from './context';
1
+ import type { FlowContent } from '../content-fields/index.js';
2
+ import type { FlowBuilderContext } from './context.js';
3
3
  export declare function getContentsByFallback({ cmsApi, flowBuilderPlugin, request, }: FlowBuilderContext): Promise<FlowContent[]>;
@@ -1,9 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getContentsByFallback = getContentsByFallback;
4
- const core_1 = require("@botonic/core");
5
- const tracking_1 = require("../tracking");
6
- async function getContentsByFallback({ cmsApi, flowBuilderPlugin, request, }) {
1
+ import { EventAction } from "@botonic/core";
2
+ import { getCommonFlowContentEventArgsForContentId, trackEvent } from "../tracking.js";
3
+
4
+
5
+
6
+
7
+
8
+ async function getContentsByFallback({ cmsApi, flowBuilderPlugin, request }) {
7
9
  const fallbackNode = await getFallbackNode(cmsApi, request);
8
10
  const fallbackContents = await flowBuilderPlugin.getContentsByNode(fallbackNode);
9
11
  return fallbackContents;
@@ -12,25 +14,28 @@ async function getFallbackNode(cmsApi, request) {
12
14
  if (request.session.user.extra_data?.isFirstFallbackOption === undefined) {
13
15
  request.session.user.extra_data = {
14
16
  ...request.session.user.extra_data,
15
- isFirstFallbackOption: true,
17
+ isFirstFallbackOption: true
16
18
  };
17
19
  }
18
20
  const isFirstFallbackOption = !!request.session.user.extra_data.isFirstFallbackOption;
19
21
  const fallbackNode = cmsApi.getFallbackNode(isFirstFallbackOption);
20
22
  request.session.user.extra_data.isFirstFallbackOption = !isFirstFallbackOption;
21
- const { flowId, flowName, flowNodeId, flowNodeContentId } = (0, tracking_1.getCommonFlowContentEventArgsForContentId)(request, fallbackNode.id);
23
+ const { flowId, flowName, flowNodeId, flowNodeContentId } = getCommonFlowContentEventArgsForContentId(request, fallbackNode.id);
22
24
  const event = {
23
- action: core_1.EventAction.Fallback,
25
+ action: EventAction.Fallback,
24
26
  flowId,
25
27
  flowName,
26
28
  flowNodeId,
27
29
  flowNodeContentId,
28
30
  userInput: request.input.data,
29
31
  fallbackOut: isFirstFallbackOption ? 1 : 2,
30
- fallbackMessageId: request.input.message_id,
32
+ fallbackMessageId: request.input.message_id
31
33
  };
32
34
  const { action, ...eventArgs } = event;
33
- await (0, tracking_1.trackEvent)(request, action, eventArgs);
35
+ await trackEvent(request, action, eventArgs);
34
36
  return fallbackNode;
35
37
  }
38
+
39
+ export { getContentsByFallback };
40
+
36
41
  //# sourceMappingURL=fallback.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../../src/action/fallback.ts"],"names":[],"mappings":";;AAWA,sDAUC;AArBD,wCAA+D;AAK/D,0CAGoB;AAGb,KAAK,UAAU,qBAAqB,CAAC,EAC1C,MAAM,EACN,iBAAiB,EACjB,OAAO,GACY;IACnB,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3D,MAAM,gBAAgB,GACpB,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;IAEzD,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,MAAsB,EAAE,OAAsB;IAC3E,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,qBAAqB,KAAK,SAAS,EAAE,CAAC;QACzE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,GAAG;YAChC,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU;YAClC,qBAAqB,EAAE,IAAI;SAC5B,CAAA;IACH,CAAC;IAED,MAAM,qBAAqB,GACzB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAA;IACzD,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAA;IAClE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,GAAG,CAAC,qBAAqB,CAAA;IAE9E,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,GACvD,IAAA,oDAAyC,EAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,CAAA;IAErE,MAAM,KAAK,GAAkB;QAC3B,MAAM,EAAE,kBAAW,CAAC,QAAQ;QAC5B,MAAM;QACN,QAAQ;QACR,UAAU;QACV,iBAAiB;QACjB,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAc;QACvC,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,iBAAiB,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;KAC5C,CAAA;IACD,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK,CAAA;IAEtC,MAAM,IAAA,qBAAU,EAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;IAE5C,OAAO,YAAY,CAAA;AACrB,CAAC"}
1
+ {"version":3,"file":"action/fallback.js","sources":["../../../src/action/fallback.ts"],"sourcesContent":["import { EventAction, type EventFallback } from '@botonic/core'\nimport type { ActionRequest } from '@botonic/react'\n\nimport type { FlowBuilderApi } from '../api'\nimport type { FlowContent } from '../content-fields'\nimport {\n getCommonFlowContentEventArgsForContentId,\n trackEvent,\n} from '../tracking'\nimport type { FlowBuilderContext } from './context'\n\nexport async function getContentsByFallback({\n cmsApi,\n flowBuilderPlugin,\n request,\n}: FlowBuilderContext): Promise<FlowContent[]> {\n const fallbackNode = await getFallbackNode(cmsApi, request)\n const fallbackContents =\n await flowBuilderPlugin.getContentsByNode(fallbackNode)\n\n return fallbackContents\n}\n\nasync function getFallbackNode(cmsApi: FlowBuilderApi, request: ActionRequest) {\n if (request.session.user.extra_data?.isFirstFallbackOption === undefined) {\n request.session.user.extra_data = {\n ...request.session.user.extra_data,\n isFirstFallbackOption: true,\n }\n }\n\n const isFirstFallbackOption =\n !!request.session.user.extra_data.isFirstFallbackOption\n const fallbackNode = cmsApi.getFallbackNode(isFirstFallbackOption)\n request.session.user.extra_data.isFirstFallbackOption = !isFirstFallbackOption\n\n const { flowId, flowName, flowNodeId, flowNodeContentId } =\n getCommonFlowContentEventArgsForContentId(request, fallbackNode.id)\n\n const event: EventFallback = {\n action: EventAction.Fallback,\n flowId,\n flowName,\n flowNodeId,\n flowNodeContentId,\n userInput: request.input.data as string,\n fallbackOut: isFirstFallbackOption ? 1 : 2,\n fallbackMessageId: request.input.message_id,\n }\n const { action, ...eventArgs } = event\n\n await trackEvent(request, action, eventArgs)\n\n return fallbackNode\n}\n"],"names":["EventAction","getCommonFlowContentEventArgsForContentId","trackEvent","getContentsByFallback","cmsApi","flowBuilderPlugin","request","fallbackNode","getFallbackNode","fallbackContents","undefined","isFirstFallbackOption","flowId","flowName","flowNodeId","flowNodeContentId","event","action","eventArgs"],"mappings":";;;;;AAA+D;AAQ3C;AAGb,eAAeG,qBAAqBA,CAAC,EAC1CC,MAAM,EACNC,iBAAiB,EACjBC,OAAO,EACY;IACnB,MAAMC,eAAe,MAAMC,eAAeA,CAACJ,QAAQE;IACnD,MAAMG,mBACJ,MAAMJ,kBAAkB,iBAAiB,CAACE;IAE5C,OAAOE;AACT;AAEA,eAAeD,eAAeA,CAACJ,MAAsB,EAAEE,OAAsB;IAC3E,IAAIA,QAAQ,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,0BAA0BI,WAAW;QACxEJ,QAAQ,OAAO,CAAC,IAAI,CAAC,UAAU,GAAG;YAChC,GAAGA,QAAQ,OAAO,CAAC,IAAI,CAAC,UAAU;YAClC,uBAAuB;QACzB;IACF;IAEA,MAAMK,wBACJ,CAAC,CAACL,QAAQ,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB;IACzD,MAAMC,eAAeH,OAAO,eAAe,CAACO;IAC5CL,QAAQ,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,GAAG,CAACK;IAEzD,MAAM,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,iBAAiB,EAAE,GACvDd,yCAAyCA,CAACK,SAASC,aAAa,EAAE;IAEpE,MAAMS,QAAuB;QAC3B,QAAQhB,oBAAoB;QAC5BY;QACAC;QACAC;QACAC;QACA,WAAWT,QAAQ,KAAK,CAAC,IAAI;QAC7B,aAAaK,wBAAwB,IAAI;QACzC,mBAAmBL,QAAQ,KAAK,CAAC,UAAU;IAC7C;IACA,MAAM,EAAEW,MAAM,EAAE,GAAGC,WAAW,GAAGF;IAEjC,MAAMd,UAAUA,CAACI,SAASW,QAAQC;IAElC,OAAOX;AACT"}
@@ -1,3 +1,3 @@
1
- import { type FlowContent } from '../content-fields';
2
- import type { FlowBuilderContext } from './context';
1
+ import { type FlowContent } from '../content-fields/index.js';
2
+ import type { FlowBuilderContext } from './context.js';
3
3
  export declare function getContentsByFirstInteraction(context: FlowBuilderContext): Promise<FlowContent[]>;
@@ -1,29 +1,35 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getContentsByFirstInteraction = getContentsByFirstInteraction;
4
- const constants_1 = require("../constants");
5
- const content_fields_1 = require("../content-fields");
6
- const input_1 = require("../utils/input");
7
- const ai_agent_from_user_input_1 = require("./ai-agent-from-user-input");
8
- const payload_1 = require("./payload");
1
+ import { MAIN_FLOW_NAME } from "../constants.js";
2
+ import { FlowAiAgent, FlowAiAgentRouter, FlowBotAction } from "../content-fields/index.js";
3
+ import { inputHasTextOrTranscript } from "../utils/input.js";
4
+ import { getContentsByAiAgentFromUserInput } from "./ai-agent-from-user-input.js";
5
+ import { getContentsByPayload } from "./payload.js";
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
9
17
  async function getContentsByFirstInteraction(context) {
10
18
  const { contentID, flowBuilderPlugin, request } = context;
11
19
  /*
12
- * If the contentID is provided, the firstInteractionContents are obtained even if they are not used
13
- * because when obtain this firstInteractionContents is when the session.flow_thread_id is updated.
14
- * This is needed for example when send a WhatsApp campaign is sent,
15
- * the bot not receives the message because this message is sent directly by the backend
16
- * we expect the bot to respond only with the contents of the contentID and not with the firstInteractionContents.
17
- */
18
- const firstInteractionContents = await flowBuilderPlugin.getStartContents();
20
+ * If the contentID is provided, the firstInteractionContents are obtained even if they are not used
21
+ * because when obtain this firstInteractionContents is when the session.flow_thread_id is updated.
22
+ * This is needed for example when send a WhatsApp campaign is sent,
23
+ * the bot not receives the message because this message is sent directly by the backend
24
+ * we expect the bot to respond only with the contents of the contentID and not with the firstInteractionContents.
25
+ */ const firstInteractionContents = await flowBuilderPlugin.getStartContents();
19
26
  if (contentID) {
20
27
  try {
21
28
  const contentsByContentID = await flowBuilderPlugin.getContentsByContentID(contentID);
22
29
  if (contentsByContentID.length > 0) {
23
30
  return contentsByContentID;
24
31
  }
25
- }
26
- catch (_error) {
32
+ } catch (_error) {
27
33
  console.warn(`The contentID ${contentID} is not found. Returning the firstInteractionContents`);
28
34
  }
29
35
  }
@@ -33,18 +39,21 @@ async function getContentsByFirstInteraction(context) {
33
39
  if (startContentsAlreadyHandleUserInput(firstInteractionContents)) {
34
40
  return firstInteractionContents;
35
41
  }
36
- if (request.input.nluResolution || (0, input_1.inputHasTextOrTranscript)(request.input)) {
42
+ if (request.input.nluResolution || inputHasTextOrTranscript(request.input)) {
37
43
  const contentsByUserInput = await getContentsByUserInput(context);
38
- return [...firstInteractionContents, ...contentsByUserInput];
44
+ return [
45
+ ...firstInteractionContents,
46
+ ...contentsByUserInput
47
+ ];
39
48
  }
40
49
  return firstInteractionContents;
41
50
  }
42
51
  function startContentsAlreadyHandleUserInput(contents) {
43
- if (contents.at(-1) instanceof content_fields_1.FlowBotAction) {
52
+ if (contents.at(-1) instanceof FlowBotAction) {
44
53
  return true;
45
54
  }
46
55
  // To avoid duplicated ai agent response, we check if there is an ai agent or ai agent router in the first interaction contents.
47
- return contents.some(content => content instanceof content_fields_1.FlowAiAgent || content instanceof content_fields_1.FlowAiAgentRouter);
56
+ return contents.some((content)=>content instanceof FlowAiAgent || content instanceof FlowAiAgentRouter);
48
57
  }
49
58
  async function getContentsByUserInput(context) {
50
59
  const { cmsApi, flowBuilderPlugin, request, resolvedLocale } = context;
@@ -55,11 +64,11 @@ async function getContentsByUserInput(context) {
55
64
  if (request.input.payload === conversationStartId) {
56
65
  return [];
57
66
  }
58
- const contentsByKeywordsOrIntents = await (0, payload_1.getContentsByPayload)({
67
+ const contentsByKeywordsOrIntents = await getContentsByPayload({
59
68
  cmsApi,
60
69
  flowBuilderPlugin,
61
70
  request,
62
- resolvedLocale,
71
+ resolvedLocale
63
72
  });
64
73
  const hasRepeatedContent = await checkRepeatedContents(flowBuilderPlugin, contentsByKeywordsOrIntents);
65
74
  if (hasRepeatedContent) {
@@ -70,19 +79,22 @@ async function getContentsByUserInput(context) {
70
79
  }
71
80
  }
72
81
  if (!flowBuilderPlugin.disableAIAgentInFirstInteraction) {
73
- const contentsByAiAgent = await (0, ai_agent_from_user_input_1.getContentsByAiAgentFromUserInput)(context);
82
+ const contentsByAiAgent = await getContentsByAiAgentFromUserInput(context);
74
83
  return contentsByAiAgent;
75
84
  }
76
85
  return [];
77
86
  }
78
87
  function getConversationStartId(cmsApi) {
79
- const conversationStartId = cmsApi.flow.flows.find(flow => flow.name === constants_1.MAIN_FLOW_NAME)?.start_node_id;
88
+ const conversationStartId = cmsApi.flow.flows.find((flow)=>flow.name === MAIN_FLOW_NAME)?.start_node_id;
80
89
  return conversationStartId;
81
90
  }
82
91
  async function checkRepeatedContents(flowBuilderPlugin, contentsByKeywordsOrIntents) {
83
92
  const startContents = await flowBuilderPlugin.getStartContents();
84
- const contentIds = new Set(contentsByKeywordsOrIntents.map(content => content.id));
85
- const hasRepeatedContent = startContents.some(content => contentIds.has(content.id));
93
+ const contentIds = new Set(contentsByKeywordsOrIntents.map((content)=>content.id));
94
+ const hasRepeatedContent = startContents.some((content)=>contentIds.has(content.id));
86
95
  return hasRepeatedContent;
87
96
  }
97
+
98
+ export { getContentsByFirstInteraction };
99
+
88
100
  //# sourceMappingURL=first-interaction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"first-interaction.js","sourceRoot":"","sources":["../../../src/action/first-interaction.ts"],"names":[],"mappings":";;AAcA,sEA2CC;AAxDD,4CAA6C;AAC7C,sDAK0B;AAE1B,0CAAyD;AACzD,yEAA8E;AAE9E,uCAAgD;AAEzC,KAAK,UAAU,6BAA6B,CACjD,OAA2B;IAE3B,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;IAEzD;;;;;;OAMG;IACH,MAAM,wBAAwB,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,EAAE,CAAA;IAE3E,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC;YACH,MAAM,mBAAmB,GACvB,MAAM,iBAAiB,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAA;YAE3D,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,OAAO,mBAAmB,CAAA;YAC5B,CAAC;QACH,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CACV,iBAAiB,SAAS,uDAAuD,CAClF,CAAA;QACH,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,8EAA8E;IAC9E,8CAA8C;IAC9C,IAAI,mCAAmC,CAAC,wBAAwB,CAAC,EAAE,CAAC;QAClE,OAAO,wBAAwB,CAAA;IACjC,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,CAAC,aAAa,IAAI,IAAA,gCAAwB,EAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3E,MAAM,mBAAmB,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,CAAA;QAEjE,OAAO,CAAC,GAAG,wBAAwB,EAAE,GAAG,mBAAmB,CAAC,CAAA;IAC9D,CAAC;IAED,OAAO,wBAAwB,CAAA;AACjC,CAAC;AAED,SAAS,mCAAmC,CAAC,QAAuB;IAClE,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,8BAAa,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAA;IACb,CAAC;IAED,gIAAgI;IAChI,OAAO,QAAQ,CAAC,IAAI,CAClB,OAAO,CAAC,EAAE,CACR,OAAO,YAAY,4BAAW,IAAI,OAAO,YAAY,kCAAiB,CACzE,CAAA;AACH,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,OAA2B;IAE3B,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,OAAO,CAAA;IACtE,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,CAAA;IAEzD,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,YAAY,CAAA;QACpC,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAE1D,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,mBAAmB,EAAE,CAAC;YAClD,OAAO,EAAE,CAAA;QACX,CAAC;QAED,MAAM,2BAA2B,GAAG,MAAM,IAAA,8BAAoB,EAAC;YAC7D,MAAM;YACN,iBAAiB;YACjB,OAAO;YACP,cAAc;SACf,CAAC,CAAA;QAEF,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,CACpD,iBAAiB,EACjB,2BAA2B,CAC5B,CAAA;QAED,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,IAAI,2BAA2B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,OAAO,2BAA2B,CAAA;QACpC,CAAC;IACH,CAAC;IAED,IAAI,CAAC,iBAAiB,CAAC,gCAAgC,EAAE,CAAC;QACxD,MAAM,iBAAiB,GAAG,MAAM,IAAA,4DAAiC,EAAC,OAAO,CAAC,CAAA;QAC1E,OAAO,iBAAiB,CAAA;IAC1B,CAAC;IAED,OAAO,EAAE,CAAA;AACX,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAsB;IACpD,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAChD,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,0BAAc,CACrC,EAAE,aAAa,CAAA;IAEhB,OAAO,mBAAmB,CAAA;AAC5B,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,iBAA2C,EAC3C,2BAA0C;IAE1C,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,EAAE,CAAA;IAChE,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CACvD,CAAA;IACD,MAAM,kBAAkB,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CACtD,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAC3B,CAAA;IAED,OAAO,kBAAkB,CAAA;AAC3B,CAAC"}
1
+ {"version":3,"file":"action/first-interaction.js","sources":["../../../src/action/first-interaction.ts"],"sourcesContent":["import type { FlowBuilderApi } from '../api'\nimport { MAIN_FLOW_NAME } from '../constants'\nimport {\n FlowAiAgent,\n FlowAiAgentRouter,\n FlowBotAction,\n type FlowContent,\n} from '../content-fields'\nimport type BotonicPluginFlowBuilder from '../index'\nimport { inputHasTextOrTranscript } from '../utils/input'\nimport { getContentsByAiAgentFromUserInput } from './ai-agent-from-user-input'\nimport type { FlowBuilderContext } from './context'\nimport { getContentsByPayload } from './payload'\n\nexport async function getContentsByFirstInteraction(\n context: FlowBuilderContext\n): Promise<FlowContent[]> {\n const { contentID, flowBuilderPlugin, request } = context\n\n /*\n * If the contentID is provided, the firstInteractionContents are obtained even if they are not used\n * because when obtain this firstInteractionContents is when the session.flow_thread_id is updated.\n * This is needed for example when send a WhatsApp campaign is sent,\n * the bot not receives the message because this message is sent directly by the backend\n * we expect the bot to respond only with the contents of the contentID and not with the firstInteractionContents.\n */\n const firstInteractionContents = await flowBuilderPlugin.getStartContents()\n\n if (contentID) {\n try {\n const contentsByContentID =\n await flowBuilderPlugin.getContentsByContentID(contentID)\n\n if (contentsByContentID.length > 0) {\n return contentsByContentID\n }\n } catch (_error) {\n console.warn(\n `The contentID ${contentID} is not found. Returning the firstInteractionContents`\n )\n }\n }\n\n // Bot actions and AI agents already consume the user input. Matching\n // keywords/intents/KB/AI-agent-from-user-input on top would duplicate replies\n // (e.g. Main start → Go to flow → AI Agents).\n if (startContentsAlreadyHandleUserInput(firstInteractionContents)) {\n return firstInteractionContents\n }\n\n if (request.input.nluResolution || inputHasTextOrTranscript(request.input)) {\n const contentsByUserInput = await getContentsByUserInput(context)\n\n return [...firstInteractionContents, ...contentsByUserInput]\n }\n\n return firstInteractionContents\n}\n\nfunction startContentsAlreadyHandleUserInput(contents: FlowContent[]): boolean {\n if (contents.at(-1) instanceof FlowBotAction) {\n return true\n }\n\n // To avoid duplicated ai agent response, we check if there is an ai agent or ai agent router in the first interaction contents.\n return contents.some(\n content =>\n content instanceof FlowAiAgent || content instanceof FlowAiAgentRouter\n )\n}\n\nasync function getContentsByUserInput(\n context: FlowBuilderContext\n): Promise<FlowContent[]> {\n const { cmsApi, flowBuilderPlugin, request, resolvedLocale } = context\n const payloadByNlu = request.input.nluResolution?.payload\n\n if (payloadByNlu) {\n request.input.payload = payloadByNlu\n const conversationStartId = getConversationStartId(cmsApi)\n\n if (request.input.payload === conversationStartId) {\n return []\n }\n\n const contentsByKeywordsOrIntents = await getContentsByPayload({\n cmsApi,\n flowBuilderPlugin,\n request,\n resolvedLocale,\n })\n\n const hasRepeatedContent = await checkRepeatedContents(\n flowBuilderPlugin,\n contentsByKeywordsOrIntents\n )\n\n if (hasRepeatedContent) {\n return []\n }\n\n if (contentsByKeywordsOrIntents.length > 0) {\n return contentsByKeywordsOrIntents\n }\n }\n\n if (!flowBuilderPlugin.disableAIAgentInFirstInteraction) {\n const contentsByAiAgent = await getContentsByAiAgentFromUserInput(context)\n return contentsByAiAgent\n }\n\n return []\n}\n\nfunction getConversationStartId(cmsApi: FlowBuilderApi) {\n const conversationStartId = cmsApi.flow.flows.find(\n flow => flow.name === MAIN_FLOW_NAME\n )?.start_node_id\n\n return conversationStartId\n}\n\nasync function checkRepeatedContents(\n flowBuilderPlugin: BotonicPluginFlowBuilder,\n contentsByKeywordsOrIntents: FlowContent[]\n) {\n const startContents = await flowBuilderPlugin.getStartContents()\n const contentIds = new Set(\n contentsByKeywordsOrIntents.map(content => content.id)\n )\n const hasRepeatedContent = startContents.some(content =>\n contentIds.has(content.id)\n )\n\n return hasRepeatedContent\n}\n"],"names":["MAIN_FLOW_NAME","FlowAiAgent","FlowAiAgentRouter","FlowBotAction","inputHasTextOrTranscript","getContentsByAiAgentFromUserInput","getContentsByPayload","getContentsByFirstInteraction","context","contentID","flowBuilderPlugin","request","firstInteractionContents","contentsByContentID","_error","console","startContentsAlreadyHandleUserInput","contentsByUserInput","getContentsByUserInput","contents","content","cmsApi","resolvedLocale","payloadByNlu","conversationStartId","getConversationStartId","contentsByKeywordsOrIntents","hasRepeatedContent","checkRepeatedContents","contentsByAiAgent","flow","startContents","contentIds","Set"],"mappings":";;;;;;;;;;;AAC6C;AAMnB;AAE+B;AACqB;AAE9B;AAEzC,eAAeO,6BAA6BA,CACjDC,OAA2B;IAE3B,MAAM,EAAEC,SAAS,EAAEC,iBAAiB,EAAEC,OAAO,EAAE,GAAGH;IAElD;;;;;;GAMC,GACD,MAAMI,2BAA2B,MAAMF,kBAAkB,gBAAgB;IAEzE,IAAID,WAAW;QACb,IAAI;YACF,MAAMI,sBACJ,MAAMH,kBAAkB,sBAAsB,CAACD;YAEjD,IAAII,oBAAoB,MAAM,GAAG,GAAG;gBAClC,OAAOA;YACT;QACF,EAAE,OAAOC,QAAQ;YACfC,QAAQ,IAAI,CACV,CAAC,cAAc,EAAEN,UAAU,qDAAqD,CAAC;QAErF;IACF;IAEA,qEAAqE;IACrE,8EAA8E;IAC9E,8CAA8C;IAC9C,IAAIO,mCAAmCA,CAACJ,2BAA2B;QACjE,OAAOA;IACT;IAEA,IAAID,QAAQ,KAAK,CAAC,aAAa,IAAIP,wBAAwBA,CAACO,QAAQ,KAAK,GAAG;QAC1E,MAAMM,sBAAsB,MAAMC,sBAAsBA,CAACV;QAEzD,OAAO;eAAII;eAA6BK;SAAoB;IAC9D;IAEA,OAAOL;AACT;AAEA,SAASI,mCAAmCA,CAACG,QAAuB;IAClE,IAAIA,SAAS,EAAE,CAAC,CAAC,cAAchB,aAAaA,EAAE;QAC5C,OAAO;IACT;IAEA,gIAAgI;IAChI,OAAOgB,SAAS,IAAI,CAClBC,CAAAA,UACEA,mBAAmBnB,WAAWA,IAAImB,mBAAmBlB,iBAAiBA;AAE5E;AAEA,eAAegB,sBAAsBA,CACnCV,OAA2B;IAE3B,MAAM,EAAEa,MAAM,EAAEX,iBAAiB,EAAEC,OAAO,EAAEW,cAAc,EAAE,GAAGd;IAC/D,MAAMe,eAAeZ,QAAQ,KAAK,CAAC,aAAa,EAAE;IAElD,IAAIY,cAAc;QAChBZ,QAAQ,KAAK,CAAC,OAAO,GAAGY;QACxB,MAAMC,sBAAsBC,sBAAsBA,CAACJ;QAEnD,IAAIV,QAAQ,KAAK,CAAC,OAAO,KAAKa,qBAAqB;YACjD,OAAO,EAAE;QACX;QAEA,MAAME,8BAA8B,MAAMpB,oBAAoBA,CAAC;YAC7De;YACAX;YACAC;YACAW;QACF;QAEA,MAAMK,qBAAqB,MAAMC,qBAAqBA,CACpDlB,mBACAgB;QAGF,IAAIC,oBAAoB;YACtB,OAAO,EAAE;QACX;QAEA,IAAID,4BAA4B,MAAM,GAAG,GAAG;YAC1C,OAAOA;QACT;IACF;IAEA,IAAI,CAAChB,kBAAkB,gCAAgC,EAAE;QACvD,MAAMmB,oBAAoB,MAAMxB,iCAAiCA,CAACG;QAClE,OAAOqB;IACT;IAEA,OAAO,EAAE;AACX;AAEA,SAASJ,sBAAsBA,CAACJ,MAAsB;IACpD,MAAMG,sBAAsBH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAChDS,CAAAA,OAAQA,KAAK,IAAI,KAAK9B,cAAcA,GACnC;IAEH,OAAOwB;AACT;AAEA,eAAeI,qBAAqBA,CAClClB,iBAA2C,EAC3CgB,2BAA0C;IAE1C,MAAMK,gBAAgB,MAAMrB,kBAAkB,gBAAgB;IAC9D,MAAMsB,aAAa,IAAIC,IACrBP,4BAA4B,GAAG,CAACN,CAAAA,UAAWA,QAAQ,EAAE;IAEvD,MAAMO,qBAAqBI,cAAc,IAAI,CAACX,CAAAA,UAC5CY,WAAW,GAAG,CAACZ,QAAQ,EAAE;IAG3B,OAAOO;AACT"}
@@ -1,3 +1,3 @@
1
1
  import { type BotContext } from '@botonic/core';
2
- import type { FlowContent } from '../content-fields';
2
+ import type { FlowContent } from '../content-fields/index.js';
3
3
  export declare function getContents(botContext: BotContext, contentID?: string): Promise<FlowContent[]>;
@@ -1,39 +1,56 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getContents = getContents;
4
- const core_1 = require("@botonic/core");
5
- const constants_1 = require("../constants");
6
- const input_1 = require("../utils/input");
7
- const ai_agent_from_user_input_1 = require("./ai-agent-from-user-input");
8
- const context_1 = require("./context");
9
- const fallback_1 = require("./fallback");
10
- const first_interaction_1 = require("./first-interaction");
11
- const payload_1 = require("./payload");
1
+ import { INPUT } from "@botonic/core";
2
+ import { EMPTY_PAYLOAD } from "../constants.js";
3
+ import { inputHasTextOrTranscript } from "../utils/input.js";
4
+ import { getContentsByAiAgentFromUserInput } from "./ai-agent-from-user-input.js";
5
+ import { getFlowBuilderActionContext } from "./context.js";
6
+ import { getContentsByFallback } from "./fallback.js";
7
+ import { getContentsByFirstInteraction } from "./first-interaction.js";
8
+ import { getContentsByPayload } from "./payload.js";
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+
21
+
22
+
23
+
24
+
25
+
12
26
  async function getContents(botContext, contentID) {
13
- const context = (0, context_1.getFlowBuilderActionContext)(botContext, contentID);
27
+ const context = getFlowBuilderActionContext(botContext, contentID);
14
28
  if (botContext.session.is_first_interaction) {
15
- return await (0, first_interaction_1.getContentsByFirstInteraction)(context);
29
+ return await getContentsByFirstInteraction(context);
16
30
  }
17
31
  // TODO: Add needed logic when we can define contents for multi locale queue position message
18
- if (botContext.input.type === core_1.INPUT.EVENT_QUEUE_POSITION_CHANGED) {
32
+ if (botContext.input.type === INPUT.EVENT_QUEUE_POSITION_CHANGED) {
19
33
  return [];
20
34
  }
21
- if (botContext.input.payload?.startsWith(constants_1.EMPTY_PAYLOAD)) {
35
+ if (botContext.input.payload?.startsWith(EMPTY_PAYLOAD)) {
22
36
  botContext.input.payload = undefined;
23
37
  }
24
38
  if (botContext.input.payload || contentID) {
25
- const contentsByPayload = await (0, payload_1.getContentsByPayload)(context);
39
+ const contentsByPayload = await getContentsByPayload(context);
26
40
  if (contentsByPayload.length > 0) {
27
41
  return contentsByPayload;
28
42
  }
29
- return await (0, fallback_1.getContentsByFallback)(context);
43
+ return await getContentsByFallback(context);
30
44
  }
31
- if ((0, input_1.inputHasTextOrTranscript)(botContext.input)) {
32
- const aiAgentContents = await (0, ai_agent_from_user_input_1.getContentsByAiAgentFromUserInput)(context);
45
+ if (inputHasTextOrTranscript(botContext.input)) {
46
+ const aiAgentContents = await getContentsByAiAgentFromUserInput(context);
33
47
  if (aiAgentContents.length > 0) {
34
48
  return aiAgentContents;
35
49
  }
36
50
  }
37
- return await (0, fallback_1.getContentsByFallback)(context);
51
+ return await getContentsByFallback(context);
38
52
  }
53
+
54
+ export { getContents };
55
+
39
56
  //# sourceMappingURL=get-contents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-contents.js","sourceRoot":"","sources":["../../../src/action/get-contents.ts"],"names":[],"mappings":";;AAUA,kCAmCC;AA7CD,wCAAsD;AACtD,4CAA4C;AAE5C,0CAAyD;AACzD,yEAA8E;AAC9E,uCAAuD;AACvD,yCAAkD;AAClD,2DAAmE;AACnE,uCAAgD;AAEzC,KAAK,UAAU,WAAW,CAC/B,UAAsB,EACtB,SAAkB;IAElB,MAAM,OAAO,GAAG,IAAA,qCAA2B,EAAC,UAAU,EAAE,SAAS,CAAC,CAAA;IAElE,IAAI,UAAU,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;QAC5C,OAAO,MAAM,IAAA,iDAA6B,EAAC,OAAO,CAAC,CAAA;IACrD,CAAC;IACD,6FAA6F;IAC7F,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,YAAK,CAAC,4BAA4B,EAAE,CAAC;QACjE,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,yBAAa,CAAC,EAAE,CAAC;QACxD,UAAU,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAA;IACtC,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC;QAC1C,MAAM,iBAAiB,GAAG,MAAM,IAAA,8BAAoB,EAAC,OAAO,CAAC,CAAA;QAC7D,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,iBAAiB,CAAA;QAC1B,CAAC;QAED,OAAO,MAAM,IAAA,gCAAqB,EAAC,OAAO,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,IAAA,gCAAwB,EAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,eAAe,GAAG,MAAM,IAAA,4DAAiC,EAAC,OAAO,CAAC,CAAA;QACxE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,eAAe,CAAA;QACxB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,IAAA,gCAAqB,EAAC,OAAO,CAAC,CAAA;AAC7C,CAAC"}
1
+ {"version":3,"file":"action/get-contents.js","sources":["../../../src/action/get-contents.ts"],"sourcesContent":["import { type BotContext, INPUT } from '@botonic/core'\nimport { EMPTY_PAYLOAD } from '../constants'\nimport type { FlowContent } from '../content-fields'\nimport { inputHasTextOrTranscript } from '../utils/input'\nimport { getContentsByAiAgentFromUserInput } from './ai-agent-from-user-input'\nimport { getFlowBuilderActionContext } from './context'\nimport { getContentsByFallback } from './fallback'\nimport { getContentsByFirstInteraction } from './first-interaction'\nimport { getContentsByPayload } from './payload'\n\nexport async function getContents(\n botContext: BotContext,\n contentID?: string\n): Promise<FlowContent[]> {\n const context = getFlowBuilderActionContext(botContext, contentID)\n\n if (botContext.session.is_first_interaction) {\n return await getContentsByFirstInteraction(context)\n }\n // TODO: Add needed logic when we can define contents for multi locale queue position message\n if (botContext.input.type === INPUT.EVENT_QUEUE_POSITION_CHANGED) {\n return []\n }\n\n if (botContext.input.payload?.startsWith(EMPTY_PAYLOAD)) {\n botContext.input.payload = undefined\n }\n\n if (botContext.input.payload || contentID) {\n const contentsByPayload = await getContentsByPayload(context)\n if (contentsByPayload.length > 0) {\n return contentsByPayload\n }\n\n return await getContentsByFallback(context)\n }\n\n if (inputHasTextOrTranscript(botContext.input)) {\n const aiAgentContents = await getContentsByAiAgentFromUserInput(context)\n if (aiAgentContents.length > 0) {\n return aiAgentContents\n }\n }\n\n return await getContentsByFallback(context)\n}\n"],"names":["INPUT","EMPTY_PAYLOAD","inputHasTextOrTranscript","getContentsByAiAgentFromUserInput","getFlowBuilderActionContext","getContentsByFallback","getContentsByFirstInteraction","getContentsByPayload","getContents","botContext","contentID","context","undefined","contentsByPayload","aiAgentContents"],"mappings":";;;;;;;;;;;;;;;;;AAAsD;AACV;AAEa;AACqB;AACvB;AACL;AACiB;AACnB;AAEzC,eAAeQ,WAAWA,CAC/BC,UAAsB,EACtBC,SAAkB;IAElB,MAAMC,UAAUP,2BAA2BA,CAACK,YAAYC;IAExD,IAAID,WAAW,OAAO,CAAC,oBAAoB,EAAE;QAC3C,OAAO,MAAMH,6BAA6BA,CAACK;IAC7C;IACA,6FAA6F;IAC7F,IAAIF,WAAW,KAAK,CAAC,IAAI,KAAKT,kCAAkC,EAAE;QAChE,OAAO,EAAE;IACX;IAEA,IAAIS,WAAW,KAAK,CAAC,OAAO,EAAE,WAAWR,aAAaA,GAAG;QACvDQ,WAAW,KAAK,CAAC,OAAO,GAAGG;IAC7B;IAEA,IAAIH,WAAW,KAAK,CAAC,OAAO,IAAIC,WAAW;QACzC,MAAMG,oBAAoB,MAAMN,oBAAoBA,CAACI;QACrD,IAAIE,kBAAkB,MAAM,GAAG,GAAG;YAChC,OAAOA;QACT;QAEA,OAAO,MAAMR,qBAAqBA,CAACM;IACrC;IAEA,IAAIT,wBAAwBA,CAACO,WAAW,KAAK,GAAG;QAC9C,MAAMK,kBAAkB,MAAMX,iCAAiCA,CAACQ;QAChE,IAAIG,gBAAgB,MAAM,GAAG,GAAG;YAC9B,OAAOA;QACT;IACF;IAEA,OAAO,MAAMT,qBAAqBA,CAACM;AACrC"}
@@ -1,7 +1,7 @@
1
1
  import { type BotContext } from '@botonic/core';
2
2
  import { RequestContext, type WebchatSettingsProps } from '@botonic/react';
3
3
  import React from 'react';
4
- import { type FlowContent } from '../content-fields';
4
+ import { type FlowContent } from '../content-fields/index.js';
5
5
  export type FlowBuilderActionProps = {
6
6
  contents: FlowContent[];
7
7
  webchatSettingsParams?: WebchatSettingsProps;
@@ -1,30 +1,49 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FlowBuilderMultichannelAction = exports.FlowBuilderAction = void 0;
4
- const tslib_1 = require("tslib");
5
- const jsx_runtime_1 = require("react/jsx-runtime");
6
- const core_1 = require("@botonic/core");
7
- const react_1 = require("@botonic/react");
8
- const react_2 = tslib_1.__importDefault(require("react"));
9
- const content_fields_1 = require("../content-fields");
10
- const ai_agent_1 = require("../utils/ai-agent");
11
- const context_1 = require("./context");
12
- const first_interaction_1 = require("./first-interaction");
13
- const get_contents_1 = require("./get-contents");
14
- class FlowBuilderAction extends react_2.default.Component {
1
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
+ import { isDev, isWebchat } from "@botonic/core";
3
+ import { Multichannel, RequestContext, WebchatSettings } from "@botonic/react";
4
+ import react from "react";
5
+ import { FlowAiAgent, FlowAiAgentRouter } from "../content-fields/index.js";
6
+ import { splitAiAgentContents } from "../utils/ai-agent.js";
7
+ import { getFlowBuilderActionContext } from "./context.js";
8
+ import { getContentsByFirstInteraction } from "./first-interaction.js";
9
+ import { getContents } from "./get-contents.js";
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+
21
+
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+ class FlowBuilderAction extends react.Component {
15
30
  static async executeConversationStart(botContext) {
16
- const context = (0, context_1.getFlowBuilderActionContext)(botContext);
17
- const contents = await (0, first_interaction_1.getContentsByFirstInteraction)(context);
31
+ const context = getFlowBuilderActionContext(botContext);
32
+ const contents = await getContentsByFirstInteraction(context);
18
33
  const filteredContents = await FlowBuilderAction.prepareContentsToRender(botContext, contents);
19
- return { contents: filteredContents };
34
+ return {
35
+ contents: filteredContents
36
+ };
20
37
  }
21
38
  static async botonicInit(botContext, contentID) {
22
- const contents = await (0, get_contents_1.getContents)(botContext, contentID);
39
+ const contents = await getContents(botContext, contentID);
23
40
  const contentsToRender = await FlowBuilderAction.prepareContentsToRender(botContext, contents);
24
- return { contents: contentsToRender };
41
+ return {
42
+ contents: contentsToRender
43
+ };
25
44
  }
26
45
  static async prepareContentsToRender(botContext, contents) {
27
- for (const content of contents) {
46
+ for (const content of contents){
28
47
  if (FlowBuilderAction.isAiAgentContent(content)) {
29
48
  await FlowBuilderAction.processAiAgentContent(botContext, contents);
30
49
  continue;
@@ -34,11 +53,11 @@ class FlowBuilderAction extends react_2.default.Component {
34
53
  return contents;
35
54
  }
36
55
  static isAiAgentContent(content) {
37
- return (content instanceof content_fields_1.FlowAiAgent || content instanceof content_fields_1.FlowAiAgentRouter);
56
+ return content instanceof FlowAiAgent || content instanceof FlowAiAgentRouter;
38
57
  }
39
58
  // TODO: Refactor this to be more generic and reusable
40
59
  static async processAiAgentContent(botContext, contents) {
41
- const splitContents = (0, ai_agent_1.splitAiAgentContents)(contents);
60
+ const splitContents = splitAiAgentContents(contents);
42
61
  if (!splitContents) {
43
62
  return;
44
63
  }
@@ -58,33 +77,50 @@ class FlowBuilderAction extends react_2.default.Component {
58
77
  ...webchatSettingsParams,
59
78
  user: {
60
79
  ...webchatSettingsParams?.user,
61
- system_locale: botContext.session.user.system_locale,
62
- },
80
+ system_locale: botContext.session.user.system_locale
81
+ }
63
82
  };
64
83
  }
65
- const shouldSendWebchatSettings = ((0, core_1.isWebchat)(botContext.session) || (0, core_1.isDev)(botContext.session)) &&
66
- !!webchatSettingsParams;
84
+ const shouldSendWebchatSettings = (isWebchat(botContext.session) || isDev(botContext.session)) && !!webchatSettingsParams;
67
85
  return {
68
86
  shouldSendWebchatSettings,
69
- webchatSettingsParams,
87
+ webchatSettingsParams
70
88
  };
71
89
  }
72
90
  render() {
73
91
  const { contents } = this.props;
74
92
  const botContext = this.context;
75
93
  const { shouldSendWebchatSettings, webchatSettingsParams } = this.getWebchatSettingsParams(botContext);
76
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [shouldSendWebchatSettings && ((0, jsx_runtime_1.jsx)(react_1.WebchatSettings, { ...webchatSettingsParams })), contents.map(content => content.toBotonic(botContext))] }));
94
+ return /*#__PURE__*/ jsxs(Fragment, {
95
+ children: [
96
+ shouldSendWebchatSettings && /*#__PURE__*/ jsx(WebchatSettings, {
97
+ ...webchatSettingsParams
98
+ }),
99
+ contents.map((content)=>content.toBotonic(botContext))
100
+ ]
101
+ });
77
102
  }
78
103
  }
79
- exports.FlowBuilderAction = FlowBuilderAction;
80
- FlowBuilderAction.contextType = react_1.RequestContext;
104
+ FlowBuilderAction.contextType = RequestContext;
81
105
  class FlowBuilderMultichannelAction extends FlowBuilderAction {
82
106
  render() {
83
107
  const { contents } = this.props;
84
108
  const botContext = this.context;
85
109
  const { shouldSendWebchatSettings, webchatSettingsParams } = this.getWebchatSettingsParams(botContext);
86
- return ((0, jsx_runtime_1.jsxs)(react_1.Multichannel, { text: { buttonsAsText: false }, children: [shouldSendWebchatSettings && ((0, jsx_runtime_1.jsx)(react_1.WebchatSettings, { ...webchatSettingsParams })), contents.map(content => content.toBotonic(botContext))] }));
110
+ return /*#__PURE__*/ jsxs(Multichannel, {
111
+ text: {
112
+ buttonsAsText: false
113
+ },
114
+ children: [
115
+ shouldSendWebchatSettings && /*#__PURE__*/ jsx(WebchatSettings, {
116
+ ...webchatSettingsParams
117
+ }),
118
+ contents.map((content)=>content.toBotonic(botContext))
119
+ ]
120
+ });
87
121
  }
88
122
  }
89
- exports.FlowBuilderMultichannelAction = FlowBuilderMultichannelAction;
123
+
124
+ export { FlowBuilderAction, FlowBuilderMultichannelAction };
125
+
90
126
  //# sourceMappingURL=index.js.map