@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 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/action/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action/index.js","sources":["../../../src/action/index.tsx"],"sourcesContent":["import { type BotContext, isDev, isWebchat } from '@botonic/core'\nimport {\n Multichannel,\n RequestContext,\n WebchatSettings,\n type WebchatSettingsProps,\n} from '@botonic/react'\nimport React from 'react'\n\nimport {\n FlowAiAgent,\n FlowAiAgentRouter,\n type FlowContent,\n} from '../content-fields'\nimport { splitAiAgentContents } from '../utils/ai-agent'\nimport { getFlowBuilderActionContext } from './context'\nimport { getContentsByFirstInteraction } from './first-interaction'\nimport { getContents } from './get-contents'\n\nexport type FlowBuilderActionProps = {\n contents: FlowContent[]\n webchatSettingsParams?: WebchatSettingsProps\n}\n\nexport class FlowBuilderAction extends React.Component<FlowBuilderActionProps> {\n static contextType = RequestContext\n declare context: React.ContextType<typeof RequestContext>\n\n static async executeConversationStart(\n botContext: BotContext\n ): Promise<FlowBuilderActionProps> {\n const context = getFlowBuilderActionContext(botContext)\n const contents = await getContentsByFirstInteraction(context)\n\n const filteredContents = await FlowBuilderAction.prepareContentsToRender(\n botContext,\n contents\n )\n\n return { contents: filteredContents }\n }\n\n static async botonicInit(\n botContext: BotContext,\n contentID?: string\n ): Promise<FlowBuilderActionProps> {\n const contents = await getContents(botContext, contentID)\n\n const contentsToRender = await FlowBuilderAction.prepareContentsToRender(\n botContext,\n contents\n )\n\n return { contents: contentsToRender }\n }\n\n static async prepareContentsToRender(\n botContext: BotContext,\n contents: FlowContent[]\n ) {\n for (const content of contents) {\n if (FlowBuilderAction.isAiAgentContent(content)) {\n await FlowBuilderAction.processAiAgentContent(botContext, contents)\n continue\n }\n\n await content.processContent(botContext)\n }\n\n return contents\n }\n\n private static isAiAgentContent(content: FlowContent): boolean {\n return (\n content instanceof FlowAiAgent || content instanceof FlowAiAgentRouter\n )\n }\n\n // TODO: Refactor this to be more generic and reusable\n private static async processAiAgentContent(\n botContext: BotContext,\n contents: FlowContent[]\n ) {\n const splitContents = splitAiAgentContents(contents)\n if (!splitContents) {\n return\n }\n\n if ('aiAgentRouterContent' in splitContents) {\n const { aiAgentRouterContent, contentsBeforeAiAgentRouter } =\n splitContents\n await aiAgentRouterContent.processContent(\n botContext,\n contentsBeforeAiAgentRouter\n )\n }\n\n if ('aiAgentWorkerContent' in splitContents) {\n const { aiAgentWorkerContent, contentsBeforeAiAgentWorker } =\n splitContents\n await aiAgentWorkerContent.processContent(\n botContext,\n contentsBeforeAiAgentWorker\n )\n }\n }\n\n protected getWebchatSettingsParams(botContext: BotContext): {\n shouldSendWebchatSettings: boolean\n webchatSettingsParams?: WebchatSettingsProps\n } {\n let { webchatSettingsParams } = this.props\n if (botContext.session.user.system_locale_updated) {\n webchatSettingsParams = {\n ...webchatSettingsParams,\n user: {\n ...webchatSettingsParams?.user,\n system_locale: botContext.session.user.system_locale,\n },\n }\n }\n const shouldSendWebchatSettings =\n (isWebchat(botContext.session) || isDev(botContext.session)) &&\n !!webchatSettingsParams\n\n return {\n shouldSendWebchatSettings,\n webchatSettingsParams,\n }\n }\n\n render(): JSX.Element | JSX.Element[] {\n const { contents } = this.props\n const botContext = this.context as BotContext\n const { shouldSendWebchatSettings, webchatSettingsParams } =\n this.getWebchatSettingsParams(botContext)\n\n return (\n <>\n {shouldSendWebchatSettings && (\n <WebchatSettings {...webchatSettingsParams} />\n )}\n {contents.map(content => content.toBotonic(botContext))}\n </>\n )\n }\n}\n\nexport class FlowBuilderMultichannelAction extends FlowBuilderAction {\n render(): JSX.Element | JSX.Element[] {\n const { contents } = this.props\n const botContext = this.context as BotContext\n const { shouldSendWebchatSettings, webchatSettingsParams } =\n this.getWebchatSettingsParams(botContext)\n\n return (\n <Multichannel text={{ buttonsAsText: false }}>\n {shouldSendWebchatSettings && (\n <WebchatSettings {...webchatSettingsParams} />\n )}\n {contents.map(content => content.toBotonic(botContext))}\n </Multichannel>\n )\n }\n}\n"],"names":["isDev","isWebchat","Multichannel","RequestContext","WebchatSettings","React","FlowAiAgent","FlowAiAgentRouter","splitAiAgentContents","getFlowBuilderActionContext","getContentsByFirstInteraction","getContents","FlowBuilderAction","botContext","context","contents","filteredContents","contentID","contentsToRender","content","splitContents","aiAgentRouterContent","contentsBeforeAiAgentRouter","aiAgentWorkerContent","contentsBeforeAiAgentWorker","webchatSettingsParams","shouldSendWebchatSettings","FlowBuilderMultichannelAction"],"mappings":"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"}
@@ -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 getContentsByPayload(context: FlowBuilderContext): Promise<FlowContent[]>;
@@ -1,21 +1,25 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getContentsByPayload = getContentsByPayload;
4
- const core_1 = require("@botonic/core");
5
- const uuid_1 = require("uuid");
6
- const constants_1 = require("../constants");
7
- const tracking_1 = require("../tracking");
1
+ import { EventAction, storeCaseRating } from "@botonic/core";
2
+ import { v7 } from "uuid";
3
+ import { AGENT_RATING_PAYLOAD, PUSH_FLOW_PAYLOAD, SEPARATOR } from "../constants.js";
4
+ import { trackEvent } from "../tracking.js";
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
8
14
  async function getContentsByPayload(context) {
9
15
  const { cmsApi, flowBuilderPlugin, request, contentID } = context;
10
- if (request.input.payload?.startsWith(constants_1.AGENT_RATING_PAYLOAD)) {
16
+ if (request.input.payload?.startsWith(AGENT_RATING_PAYLOAD)) {
11
17
  return await resolveRatingPayload(context);
12
18
  }
13
- if (request.input.payload?.startsWith(constants_1.PUSH_FLOW_PAYLOAD)) {
19
+ if (request.input.payload?.startsWith(PUSH_FLOW_PAYLOAD)) {
14
20
  return await resolvePushFlowPayload(context);
15
21
  }
16
- const id = contentID
17
- ? cmsApi.getNodeByContentID(contentID)?.id
18
- : request.input.payload;
22
+ const id = contentID ? cmsApi.getNodeByContentID(contentID)?.id : request.input.payload;
19
23
  const targetNode = id ? cmsApi.getNodeById(id) : undefined;
20
24
  if (targetNode) {
21
25
  return await flowBuilderPlugin.getContentsByNode(targetNode);
@@ -30,20 +34,18 @@ async function resolveRatingPayload(context) {
30
34
  const { target, text, value, possibleOptions, possibleValues } = flowBuilderPlugin.getRatingSubmittedInfo(request.input.payload);
31
35
  if (request.session._hubtype_case_id) {
32
36
  const event = {
33
- action: core_1.EventAction.FeedbackCase,
37
+ action: EventAction.FeedbackCase,
34
38
  feedbackTargetId: request.session._hubtype_case_id,
35
- feedbackGroupId: (0, uuid_1.v7)().toString(),
39
+ feedbackGroupId: v7().toString(),
36
40
  possibleOptions,
37
41
  possibleValues,
38
42
  option: text,
39
- value,
43
+ value
40
44
  };
41
- await (0, core_1.storeCaseRating)(request.session, value);
42
- await (0, tracking_1.trackEvent)(request, core_1.EventAction.FeedbackCase, event);
45
+ await storeCaseRating(request.session, value);
46
+ await trackEvent(request, EventAction.FeedbackCase, event);
43
47
  }
44
- const targetNode = target
45
- ? cmsApi.getNodeById(target.id)
46
- : undefined;
48
+ const targetNode = target ? cmsApi.getNodeById(target.id) : undefined;
47
49
  if (targetNode) {
48
50
  return await flowBuilderPlugin.getContentsByNode(targetNode);
49
51
  }
@@ -54,7 +56,7 @@ async function resolvePushFlowPayload(context) {
54
56
  if (!request.input.payload) {
55
57
  return [];
56
58
  }
57
- const parts = request.input.payload.split(constants_1.SEPARATOR);
59
+ const parts = request.input.payload.split(SEPARATOR);
58
60
  const pushFlowId = parts.length > 1 ? parts[1] : '';
59
61
  if (!pushFlowId) {
60
62
  return [];
@@ -65,10 +67,12 @@ async function resolvePushFlowPayload(context) {
65
67
  return [];
66
68
  }
67
69
  return await flowBuilderPlugin.getContentsByNode(pushFlowNode);
68
- }
69
- catch {
70
+ } catch {
70
71
  // Campaign not found - return empty to trigger fallback
71
72
  return [];
72
73
  }
73
74
  }
75
+
76
+ export { getContentsByPayload };
77
+
74
78
  //# sourceMappingURL=payload.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../src/action/payload.ts"],"names":[],"mappings":";;AAaA,oDAqBC;AAlCD,wCAAgF;AAChF,+BAAiC;AAEjC,4CAIqB;AAGrB,0CAAwC;AAGjC,KAAK,UAAU,oBAAoB,CACxC,OAA2B;IAE3B,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;IACjE,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,gCAAoB,CAAC,EAAE,CAAC;QAC5D,OAAO,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,6BAAiB,CAAC,EAAE,CAAC;QACzD,OAAO,MAAM,sBAAsB,CAAC,OAAO,CAAC,CAAA;IAC9C,CAAC;IAED,MAAM,EAAE,GAAG,SAAS;QAClB,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE;QAC1C,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;IACzB,MAAM,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAoB,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE7E,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;IAC9D,CAAC;IAED,OAAO,EAAE,CAAA;AACX,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,OAA2B;IAE3B,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;IAEtD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC3B,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,GAC5D,iBAAiB,CAAC,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAEjE,IAAI,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACrC,MAAM,KAAK,GAAkB;YAC3B,MAAM,EAAE,kBAAW,CAAC,YAAY;YAChC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,gBAAgB;YAClD,eAAe,EAAE,IAAA,SAAI,GAAE,CAAC,QAAQ,EAAE;YAClC,eAAe;YACf,cAAc;YACd,MAAM,EAAE,IAAI;YACZ,KAAK;SACN,CAAA;QAED,MAAM,IAAA,sBAAe,EAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QAC7C,MAAM,IAAA,qBAAU,EAAC,OAAO,EAAE,kBAAW,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;IAC5D,CAAC;IAED,MAAM,UAAU,GAAG,MAAM;QACvB,CAAC,CAAC,MAAM,CAAC,WAAW,CAAoB,MAAM,CAAC,EAAE,CAAC;QAClD,CAAC,CAAC,SAAS,CAAA;IAEb,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;IAC9D,CAAC;IAED,OAAO,EAAE,CAAA;AACX,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,OAA2B;IAE3B,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;IAEtD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC3B,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAS,CAAC,CAAA;IACpD,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAEnD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAChB,MAAM,CAAC,mBAAmB,CAAoB,UAAU,CAAC,CAAA;QAE3D,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,OAAO,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;IAChE,CAAC;IAAC,MAAM,CAAC;QACP,wDAAwD;QACxD,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"action/payload.js","sources":["../../../src/action/payload.ts"],"sourcesContent":["import { EventAction, type EventFeedback, storeCaseRating } from '@botonic/core'\nimport { v7 as uuid } from 'uuid'\n\nimport {\n AGENT_RATING_PAYLOAD,\n PUSH_FLOW_PAYLOAD,\n SEPARATOR,\n} from '../constants'\nimport type { FlowContent } from '../content-fields'\nimport type { HtNodeWithContent } from '../content-fields/hubtype-fields'\nimport { trackEvent } from '../tracking'\nimport type { FlowBuilderContext } from './context'\n\nexport async function getContentsByPayload(\n context: FlowBuilderContext\n): Promise<FlowContent[]> {\n const { cmsApi, flowBuilderPlugin, request, contentID } = context\n if (request.input.payload?.startsWith(AGENT_RATING_PAYLOAD)) {\n return await resolveRatingPayload(context)\n }\n if (request.input.payload?.startsWith(PUSH_FLOW_PAYLOAD)) {\n return await resolvePushFlowPayload(context)\n }\n\n const id = contentID\n ? cmsApi.getNodeByContentID(contentID)?.id\n : request.input.payload\n const targetNode = id ? cmsApi.getNodeById<HtNodeWithContent>(id) : undefined\n\n if (targetNode) {\n return await flowBuilderPlugin.getContentsByNode(targetNode)\n }\n\n return []\n}\n\nasync function resolveRatingPayload(\n context: FlowBuilderContext\n): Promise<FlowContent[]> {\n const { cmsApi, flowBuilderPlugin, request } = context\n\n if (!request.input.payload) {\n return []\n }\n\n const { target, text, value, possibleOptions, possibleValues } =\n flowBuilderPlugin.getRatingSubmittedInfo(request.input.payload)\n\n if (request.session._hubtype_case_id) {\n const event: EventFeedback = {\n action: EventAction.FeedbackCase,\n feedbackTargetId: request.session._hubtype_case_id,\n feedbackGroupId: uuid().toString(),\n possibleOptions,\n possibleValues,\n option: text,\n value,\n }\n\n await storeCaseRating(request.session, value)\n await trackEvent(request, EventAction.FeedbackCase, event)\n }\n\n const targetNode = target\n ? cmsApi.getNodeById<HtNodeWithContent>(target.id)\n : undefined\n\n if (targetNode) {\n return await flowBuilderPlugin.getContentsByNode(targetNode)\n }\n\n return []\n}\n\nasync function resolvePushFlowPayload(\n context: FlowBuilderContext\n): Promise<FlowContent[]> {\n const { cmsApi, flowBuilderPlugin, request } = context\n\n if (!request.input.payload) {\n return []\n }\n\n const parts = request.input.payload.split(SEPARATOR)\n const pushFlowId = parts.length > 1 ? parts[1] : ''\n\n if (!pushFlowId) {\n return []\n }\n\n try {\n const pushFlowNode =\n cmsApi.getNodeByCampaignId<HtNodeWithContent>(pushFlowId)\n\n if (!pushFlowNode) {\n return []\n }\n\n return await flowBuilderPlugin.getContentsByNode(pushFlowNode)\n } catch {\n // Campaign not found - return empty to trigger fallback\n return []\n }\n}\n"],"names":["EventAction","storeCaseRating","v7","uuid","AGENT_RATING_PAYLOAD","PUSH_FLOW_PAYLOAD","SEPARATOR","trackEvent","getContentsByPayload","context","cmsApi","flowBuilderPlugin","request","contentID","resolveRatingPayload","resolvePushFlowPayload","id","targetNode","undefined","target","text","value","possibleOptions","possibleValues","event","parts","pushFlowId","pushFlowNode"],"mappings":";;;;;;;;;AAAgF;AAC/C;AAMZ;AAGmB;AAGjC,eAAeQ,oBAAoBA,CACxCC,OAA2B;IAE3B,MAAM,EAAEC,MAAM,EAAEC,iBAAiB,EAAEC,OAAO,EAAEC,SAAS,EAAE,GAAGJ;IAC1D,IAAIG,QAAQ,KAAK,CAAC,OAAO,EAAE,WAAWR,oBAAoBA,GAAG;QAC3D,OAAO,MAAMU,oBAAoBA,CAACL;IACpC;IACA,IAAIG,QAAQ,KAAK,CAAC,OAAO,EAAE,WAAWP,iBAAiBA,GAAG;QACxD,OAAO,MAAMU,sBAAsBA,CAACN;IACtC;IAEA,MAAMO,KAAKH,YACPH,OAAO,kBAAkB,CAACG,YAAY,KACtCD,QAAQ,KAAK,CAAC,OAAO;IACzB,MAAMK,aAAaD,KAAKN,OAAO,WAAW,CAAoBM,MAAME;IAEpE,IAAID,YAAY;QACd,OAAO,MAAMN,kBAAkB,iBAAiB,CAACM;IACnD;IAEA,OAAO,EAAE;AACX;AAEA,eAAeH,oBAAoBA,CACjCL,OAA2B;IAE3B,MAAM,EAAEC,MAAM,EAAEC,iBAAiB,EAAEC,OAAO,EAAE,GAAGH;IAE/C,IAAI,CAACG,QAAQ,KAAK,CAAC,OAAO,EAAE;QAC1B,OAAO,EAAE;IACX;IAEA,MAAM,EAAEO,MAAM,EAAEC,IAAI,EAAEC,KAAK,EAAEC,eAAe,EAAEC,cAAc,EAAE,GAC5DZ,kBAAkB,sBAAsB,CAACC,QAAQ,KAAK,CAAC,OAAO;IAEhE,IAAIA,QAAQ,OAAO,CAAC,gBAAgB,EAAE;QACpC,MAAMY,QAAuB;YAC3B,QAAQxB,wBAAwB;YAChC,kBAAkBY,QAAQ,OAAO,CAAC,gBAAgB;YAClD,iBAAiBT,EAAIA,GAAG,QAAQ;YAChCmB;YACAC;YACA,QAAQH;YACRC;QACF;QAEA,MAAMpB,eAAeA,CAACW,QAAQ,OAAO,EAAES;QACvC,MAAMd,UAAUA,CAACK,SAASZ,wBAAwB,EAAEwB;IACtD;IAEA,MAAMP,aAAaE,SACfT,OAAO,WAAW,CAAoBS,OAAO,EAAE,IAC/CD;IAEJ,IAAID,YAAY;QACd,OAAO,MAAMN,kBAAkB,iBAAiB,CAACM;IACnD;IAEA,OAAO,EAAE;AACX;AAEA,eAAeF,sBAAsBA,CACnCN,OAA2B;IAE3B,MAAM,EAAEC,MAAM,EAAEC,iBAAiB,EAAEC,OAAO,EAAE,GAAGH;IAE/C,IAAI,CAACG,QAAQ,KAAK,CAAC,OAAO,EAAE;QAC1B,OAAO,EAAE;IACX;IAEA,MAAMa,QAAQb,QAAQ,KAAK,CAAC,OAAO,CAAC,KAAK,CAACN,SAASA;IACnD,MAAMoB,aAAaD,MAAM,MAAM,GAAG,IAAIA,KAAK,CAAC,EAAE,GAAG;IAEjD,IAAI,CAACC,YAAY;QACf,OAAO,EAAE;IACX;IAEA,IAAI;QACF,MAAMC,eACJjB,OAAO,mBAAmB,CAAoBgB;QAEhD,IAAI,CAACC,cAAc;YACjB,OAAO,EAAE;QACX;QAEA,OAAO,MAAMhB,kBAAkB,iBAAiB,CAACgB;IACnD,EAAE,OAAM;QACN,wDAAwD;QACxD,OAAO,EAAE;IACX;AACF"}
package/lib/esm/api.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { PluginPreRequest } from '@botonic/core';
2
- import { type HtBotActionNode, type HtCaptureUserInputNode, type HtFlowBuilderData, type HtFlowWebview, type HtKeywordNode, type HtNodeComponent, type HtNodeLink, type HtNodeWithContent, type HtRatingButton, type HtRatingNode, type HtSmartIntentNode } from './content-fields/hubtype-fields';
3
- import { type FlowBuilderApiOptions } from './types';
2
+ import { type HtBotActionNode, type HtCaptureUserInputNode, type HtFlowBuilderData, type HtFlowWebview, type HtKeywordNode, type HtNodeComponent, type HtNodeLink, type HtNodeWithContent, type HtRatingButton, type HtRatingNode, type HtSmartIntentNode } from './content-fields/hubtype-fields/index.js';
3
+ import { type FlowBuilderApiOptions } from './types.js';
4
4
  export declare class FlowBuilderApi {
5
5
  url: string;
6
6
  flowUrl: string;
package/lib/esm/api.js CHANGED
@@ -1,79 +1,89 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FlowBuilderApi = void 0;
4
- const tslib_1 = require("tslib");
5
- const axios_1 = tslib_1.__importDefault(require("axios"));
6
- const constants_1 = require("./constants");
7
- const hubtype_fields_1 = require("./content-fields/hubtype-fields");
8
- const types_1 = require("./types");
9
- const flow_locale_1 = require("./utils/flow-locale");
1
+ import axios from "axios";
2
+ import { AI_AGENTS_FLOW_NAME, SEPARATOR, UUID_REGEXP } from "./constants.js";
3
+ import { HtNodeWithContentType } from "./content-fields/hubtype-fields/index.js";
4
+ import { ProcessEnvNodeEnvs } from "./types.js";
5
+ import { FlowLocale } from "./utils/flow-locale.js";
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
10
17
  class FlowBuilderApi {
11
- constructor() { }
12
18
  static async create(options) {
13
19
  const newApi = new FlowBuilderApi();
14
20
  newApi.url = options.url;
15
21
  newApi.request = options.request;
16
22
  // TODO: Refactor later to combine logic from `FlowBuilderApi.create`, `resolveFlowUrl` and `getAccessToken` to be in one place
17
- if (process.env.NODE_ENV === types_1.ProcessEnvNodeEnvs.DEVELOPMENT) {
23
+ if (process.env.NODE_ENV === ProcessEnvNodeEnvs.DEVELOPMENT) {
18
24
  await newApi.updateSessionWithUserInfo(options.accessToken);
19
25
  }
20
26
  const updatedRequest = newApi.request;
21
27
  newApi.flowUrl = options.flowUrl.replace('{bot_id}', updatedRequest.session.bot.id);
22
- newApi.flow = options.flow ?? (await newApi.getFlow(options.accessToken));
28
+ newApi.flow = options.flow ?? await newApi.getFlow(options.accessToken);
23
29
  return newApi;
24
30
  }
25
31
  async getFlow(token) {
26
- const { data } = await axios_1.default.get(this.flowUrl, {
27
- headers: { Authorization: `Bearer ${token}` },
32
+ const { data } = await axios.get(this.flowUrl, {
33
+ headers: {
34
+ Authorization: `Bearer ${token}`
35
+ }
28
36
  });
29
37
  return data;
30
38
  }
31
39
  async updateSessionWithUserInfo(token) {
32
40
  const url = `${this.url}/v1/flow_builder/user_info/`;
33
- const response = await axios_1.default.get(url, {
34
- headers: { Authorization: `Bearer ${token}` },
41
+ const response = await axios.get(url, {
42
+ headers: {
43
+ Authorization: `Bearer ${token}`
44
+ }
35
45
  });
36
46
  this.request.session.organization_id = response.data.organization_id;
37
47
  this.request.session.bot.id = response.data.bot_id;
38
48
  }
39
49
  getNodeByFlowId(id) {
40
- const subFlow = this.flow.flows.find(subFlow => subFlow.id === id);
50
+ const subFlow = this.flow.flows.find((subFlow)=>subFlow.id === id);
41
51
  if (!subFlow) {
42
52
  throw Error(`SubFlow with id: '${id}' not found`);
43
53
  }
44
54
  return this.getNodeById(subFlow.start_node_id);
45
55
  }
46
56
  getNodeByCampaignId(id) {
47
- const campaign = this.flow.campaigns.find(campaign => campaign.id === id);
57
+ const campaign = this.flow.campaigns.find((campaign)=>campaign.id === id);
48
58
  if (!campaign) {
49
59
  throw Error(`Campaign with id: '${id}' not found`);
50
60
  }
51
61
  return this.getNodeById(campaign.start_node_id);
52
62
  }
53
63
  getNodeById(id) {
54
- const node = this.flow.nodes.find(node => node.id === id);
64
+ const node = this.flow.nodes.find((node)=>node.id === id);
55
65
  if (!node) {
56
66
  console.error(`Node with id: '${id}' not found`);
57
67
  }
58
68
  return node;
59
69
  }
60
70
  getRatingNodeByButtonId(id) {
61
- const ratingNodes = this.flow.nodes.filter(node => node.type === hubtype_fields_1.HtNodeWithContentType.RATING);
62
- const ratingNode = ratingNodes.find(node => node.content.buttons.some(button => button.id === id));
71
+ const ratingNodes = this.flow.nodes.filter((node)=>node.type === HtNodeWithContentType.RATING);
72
+ const ratingNode = ratingNodes.find((node)=>node.content.buttons.some((button)=>button.id === id));
63
73
  if (!ratingNode) {
64
74
  throw Error(`Rating node with button id: '${id}' not found`);
65
75
  }
66
76
  return ratingNode;
67
77
  }
68
78
  getRatingButtonById(ratingNode, id) {
69
- const ratingButton = ratingNode.content.buttons.find(button => button.id === id);
79
+ const ratingButton = ratingNode.content.buttons.find((button)=>button.id === id);
70
80
  if (!ratingButton) {
71
81
  throw Error(`Rating button with id: '${id}' not found`);
72
82
  }
73
83
  return ratingButton;
74
84
  }
75
85
  getNodeByContentID(contentID) {
76
- const content = this.flow.nodes.find(node => 'code' in node ? node.code === contentID : false);
86
+ const content = this.flow.nodes.find((node)=>'code' in node ? node.code === contentID : false);
77
87
  if (!content) {
78
88
  throw Error(`Node with contentID: '${contentID}' not found`);
79
89
  }
@@ -87,7 +97,7 @@ class FlowBuilderApi {
87
97
  return this.getNodeById(startNodeId);
88
98
  }
89
99
  getFallbackNode(alternate) {
90
- const fallbackNode = this.flow.nodes.find(node => node.type === hubtype_fields_1.HtNodeWithContentType.FALLBACK);
100
+ const fallbackNode = this.flow.nodes.find((node)=>node.type === HtNodeWithContentType.FALLBACK);
91
101
  if (!fallbackNode) {
92
102
  throw new Error('Fallback node must be defined');
93
103
  }
@@ -99,15 +109,13 @@ class FlowBuilderApi {
99
109
  if (!fallbackSecondMessage) {
100
110
  return this.getNodeById(fallbackFirstMessage.id);
101
111
  }
102
- return alternate
103
- ? this.getNodeById(fallbackFirstMessage.id)
104
- : this.getNodeById(fallbackSecondMessage.id);
112
+ return alternate ? this.getNodeById(fallbackFirstMessage.id) : this.getNodeById(fallbackSecondMessage.id);
105
113
  }
106
114
  getSmartIntentNodes() {
107
- return this.flow.nodes.filter(node => node.type === hubtype_fields_1.HtNodeWithContentType.SMART_INTENT);
115
+ return this.flow.nodes.filter((node)=>node.type === HtNodeWithContentType.SMART_INTENT);
108
116
  }
109
117
  getKeywordNodes() {
110
- return this.flow.nodes.filter(node => node.type === hubtype_fields_1.HtNodeWithContentType.KEYWORD);
118
+ return this.flow.nodes.filter((node)=>node.type === HtNodeWithContentType.KEYWORD);
111
119
  }
112
120
  getPayload(target) {
113
121
  if (!target) {
@@ -120,10 +128,10 @@ class FlowBuilderApi {
120
128
  return false;
121
129
  }
122
130
  const node = this.getNodeById(id);
123
- return node?.type === hubtype_fields_1.HtNodeWithContentType.BOT_ACTION;
131
+ return node?.type === HtNodeWithContentType.BOT_ACTION;
124
132
  }
125
133
  isUUID(str) {
126
- return constants_1.UUID_REGEXP.test(str);
134
+ return UUID_REGEXP.test(str);
127
135
  }
128
136
  createPayloadWithParams(botActionNode) {
129
137
  const payloadId = botActionNode.content.payload_id;
@@ -133,30 +141,28 @@ class FlowBuilderApi {
133
141
  const followUpContentID = this.getFollowUpContentID(botActionNode.follow_up?.id);
134
142
  const payloadParams = {
135
143
  contentID,
136
- followUpContentID,
144
+ followUpContentID
137
145
  };
138
146
  const payloadJson = JSON.stringify({
139
147
  ...customParams,
140
- ...payloadParams,
148
+ ...payloadParams
141
149
  });
142
- return `${payloadNode.content.payload}${constants_1.SEPARATOR}${payloadJson}`;
150
+ return `${payloadNode.content.payload}${SEPARATOR}${payloadJson}`;
143
151
  }
144
152
  getFollowUpContentID(id) {
145
- const followUpNode = id
146
- ? this.getNodeById(id)
147
- : undefined;
153
+ const followUpNode = id ? this.getNodeById(id) : undefined;
148
154
  return followUpNode?.code;
149
155
  }
150
156
  getFlowName(flowId) {
151
- const flow = this.flow.flows.find(flow => flow.id === flowId);
157
+ const flow = this.flow.flows.find((flow)=>flow.id === flowId);
152
158
  return flow ? flow.name : this.getCampaignFlowName(flowId);
153
159
  }
154
160
  getCampaignFlowName(campaignId) {
155
- const campaign = this.flow.campaigns.find(campaign => campaign.id === campaignId);
161
+ const campaign = this.flow.campaigns.find((campaign)=>campaign.id === campaignId);
156
162
  return campaign ? campaign.name : '';
157
163
  }
158
164
  getStartNodeAiAgentFlow() {
159
- const aiAgentFlow = this.flow.flows.find(flow => flow.name === constants_1.AI_AGENTS_FLOW_NAME);
165
+ const aiAgentFlow = this.flow.flows.find((flow)=>flow.name === AI_AGENTS_FLOW_NAME);
160
166
  if (!aiAgentFlow) {
161
167
  return undefined;
162
168
  }
@@ -166,7 +172,7 @@ class FlowBuilderApi {
166
172
  return this.flow.is_ai_agent_active || false;
167
173
  }
168
174
  getWebviewById(id) {
169
- return this.flow.webviews.find(webview => webview.id === id);
175
+ return this.flow.webviews.find((webview)=>webview.id === id);
170
176
  }
171
177
  shouldCaptureUserInput() {
172
178
  return !!this.getCaptureUserInputId();
@@ -178,7 +184,9 @@ class FlowBuilderApi {
178
184
  if (this.request.session.capture_user_input) {
179
185
  this.request.session.capture_user_input.node_id = id;
180
186
  }
181
- this.request.session.capture_user_input = { node_id: id };
187
+ this.request.session.capture_user_input = {
188
+ node_id: id
189
+ };
182
190
  }
183
191
  removeCaptureUserInputId() {
184
192
  this.request.session.capture_user_input = undefined;
@@ -198,8 +206,11 @@ class FlowBuilderApi {
198
206
  getResolvedLocale() {
199
207
  const flowLocales = this.flow.locales;
200
208
  const defaultLocaleCode = this.flow.default_locale_code;
201
- return new flow_locale_1.FlowLocale(this.request, flowLocales, defaultLocaleCode).resolve();
209
+ return new FlowLocale(this.request, flowLocales, defaultLocaleCode).resolve();
202
210
  }
211
+ constructor(){}
203
212
  }
204
- exports.FlowBuilderApi = FlowBuilderApi;
213
+
214
+ export { FlowBuilderApi };
215
+
205
216
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":";;;;AACA,0DAAyB;AAEzB,2CAAyE;AACzE,oEAgBwC;AACxC,mCAIgB;AAChB,qDAAgD;AAEhD,MAAa,cAAc;IAMzB,gBAAuB,CAAC;IAExB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAA8B;QAChD,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAA;QAEnC,MAAM,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAA;QACxB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAChC,+HAA+H;QAC/H,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,0BAAkB,CAAC,WAAW,EAAE,CAAC;YAC5D,MAAM,MAAM,CAAC,yBAAyB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAC7D,CAAC;QACD,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAA;QACrC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CACtC,UAAU,EACV,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAC9B,CAAA;QACD,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAA;QACzE,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,KAAa;QACjC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE;YAC7C,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;SAC9C,CAAC,CAAA;QACF,OAAO,IAAyB,CAAA;IAClC,CAAC;IAEO,KAAK,CAAC,yBAAyB,CAAC,KAAa;QACnD,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,6BAA6B,CAAA;QACpD,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,GAAG,EAAE;YACpC,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;SAC9C,CAAC,CAAA;QACF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAA;QACpE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAA;IACpD,CAAC;IAED,eAAe,CAAC,EAAU;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QAClE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,KAAK,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAA;QACnD,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAoB,OAAO,CAAC,aAAa,CAAC,CAAA;IACnE,CAAC;IAED,mBAAmB,CAA4B,EAAU;QACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACzE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,KAAK,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAA;QACpD,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAI,QAAQ,CAAC,aAAa,CAAC,CAAA;IACpD,CAAC;IAED,WAAW,CAA4B,EAAU;QAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACzD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAA;QAClD,CAAC;QAED,OAAO,IAAS,CAAA;IAClB,CAAC;IAED,uBAAuB,CAAC,EAAU;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CACxC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,sCAAqB,CAAC,MAAM,CACjC,CAAA;QACnB,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACzC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAC1B,CAAA;QAE7B,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,KAAK,CAAC,gCAAgC,EAAE,aAAa,CAAC,CAAA;QAC9D,CAAC;QAED,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,mBAAmB,CAAC,UAAwB,EAAE,EAAU;QACtD,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAClD,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CACG,CAAA;QAC/B,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,KAAK,CAAC,2BAA2B,EAAE,aAAa,CAAC,CAAA;QACzD,CAAC;QAED,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,kBAAkB,CAAC,SAAiB;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC1C,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CACjD,CAAA;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,KAAK,CAAC,yBAAyB,SAAS,aAAa,CAAC,CAAA;QAC9D,CAAC;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,YAAY;QACV,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAA;QAC3C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;QAClD,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;IACtC,CAAC;IAED,eAAe,CAAC,SAAkB;QAChC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CACvC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,sCAAqB,CAAC,QAAQ,CACvB,CAAA;QAC/B,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;QAClD,CAAC;QACD,MAAM,oBAAoB,GAAG,YAAY,CAAC,OAAO,CAAC,aAAa,CAAA;QAC/D,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;QACzD,CAAC;QACD,MAAM,qBAAqB,GAAG,YAAY,CAAC,OAAO,CAAC,cAAc,CAAA;QACjE,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAA;QAClD,CAAC;QACD,OAAO,SAAS;YACd,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC3C,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAC3B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,sCAAqB,CAAC,YAAY,CAClC,CAAA;IAC1B,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAC3B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,sCAAqB,CAAC,OAAO,CACjC,CAAA;IACtB,CAAC;IAED,UAAU,CAAC,MAAmB;QAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,OAAO,MAAM,CAAC,EAAE,CAAA;IAClB,CAAC;IAED,WAAW,CAAC,EAAU;QACpB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACrB,OAAO,KAAK,CAAA;QACd,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QACjC,OAAO,IAAI,EAAE,IAAI,KAAK,sCAAqB,CAAC,UAAU,CAAA;IACxD,CAAC;IAEO,MAAM,CAAC,GAAW;QACxB,OAAO,uBAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC;IAED,uBAAuB,CAAC,aAA8B;QACpD,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,CAAA;QAClD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAgB,SAAS,CAAC,CAAA;QAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAC7B,aAAa,CAAC,OAAO,CAAC,cAAc,IAAI,IAAI,CAC7C,CAAA;QAED,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAA;QAEpC,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CACjD,aAAa,CAAC,SAAS,EAAE,EAAE,CAC5B,CAAA;QAED,MAAM,aAAa,GAAsB;YACvC,SAAS;YACT,iBAAiB;SAClB,CAAA;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,GAAG,YAAY;YACf,GAAG,aAAa;SACjB,CAAC,CAAA;QACF,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,GAAG,qBAAS,GAAG,WAAW,EAAE,CAAA;IACnE,CAAC;IAEO,oBAAoB,CAAC,EAAW;QACtC,MAAM,YAAY,GAAG,EAAE;YACrB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAiC,EAAE,CAAC;YACtD,CAAC,CAAC,SAAS,CAAA;QAEb,OAAO,YAAY,EAAE,IAAI,CAAA;IAC3B,CAAC;IAED,WAAW,CAAC,MAAc;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;QAC7D,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAC5D,CAAC;IAED,mBAAmB,CAAC,UAAkB;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CACvC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,UAAU,CACvC,CAAA;QACD,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;IACtC,CAAC;IAED,uBAAuB;QACrB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CACtC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,+BAAmB,CAC1C,CAAA;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAoB,WAAW,CAAC,aAAa,CAAC,CAAA;IACvE,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,IAAI,KAAK,CAAA;IAC9C,CAAC;IAED,cAAc,CAAC,EAAU;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAC9D,CAAC;IAED,sBAAsB;QACpB,OAAO,CAAC,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAA;IACvC,CAAC;IAED,qBAAqB;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,OAAO,CAAA;IACzD,CAAC;IAED,qBAAqB,CAAC,EAAU;QAC9B,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAC5C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,OAAO,GAAG,EAAE,CAAA;QACtD,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;IAC3D,CAAC;IAED,wBAAwB;QACtB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAA;IACrD,CAAC;IAED,wBAAwB,CAAC,GAAW,EAAE,KAAa;QACjD,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACzC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QACnD,CAAC;IACH,CAAC;IAED,uBAAuB;QACrB,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAA;QACvD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAyB,kBAAkB,CAAC,CAAA;IACrE,CAAC;IAED,iBAAiB;QACf,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAA;QACrC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAA;QAEvD,OAAO,IAAI,wBAAU,CACnB,IAAI,CAAC,OAAO,EACZ,WAAW,EACX,iBAAiB,CAClB,CAAC,OAAO,EAAE,CAAA;IACb,CAAC;CACF;AA/QD,wCA+QC"}
1
+ {"version":3,"file":"api.js","sources":["../../src/api.ts"],"sourcesContent":["import type { PluginPreRequest } from '@botonic/core'\nimport axios from 'axios'\n\nimport { AI_AGENTS_FLOW_NAME, SEPARATOR, UUID_REGEXP } from './constants'\nimport {\n type HtBotActionNode,\n type HtCaptureUserInputNode,\n type HtFallbackNode,\n type HtFlowBuilderData,\n type HtFlowWebview,\n type HtGoToFlow,\n type HtKeywordNode,\n type HtNodeComponent,\n type HtNodeLink,\n type HtNodeWithContent,\n HtNodeWithContentType,\n type HtPayloadNode,\n type HtRatingButton,\n type HtRatingNode,\n type HtSmartIntentNode,\n} from './content-fields/hubtype-fields'\nimport {\n type FlowBuilderApiOptions,\n type PayloadParamsBase,\n ProcessEnvNodeEnvs,\n} from './types'\nimport { FlowLocale } from './utils/flow-locale'\n\nexport class FlowBuilderApi {\n url: string\n flowUrl: string\n flow: HtFlowBuilderData\n request: PluginPreRequest\n\n private constructor() {}\n\n static async create(options: FlowBuilderApiOptions): Promise<FlowBuilderApi> {\n const newApi = new FlowBuilderApi()\n\n newApi.url = options.url\n newApi.request = options.request\n // TODO: Refactor later to combine logic from `FlowBuilderApi.create`, `resolveFlowUrl` and `getAccessToken` to be in one place\n if (process.env.NODE_ENV === ProcessEnvNodeEnvs.DEVELOPMENT) {\n await newApi.updateSessionWithUserInfo(options.accessToken)\n }\n const updatedRequest = newApi.request\n newApi.flowUrl = options.flowUrl.replace(\n '{bot_id}',\n updatedRequest.session.bot.id\n )\n newApi.flow = options.flow ?? (await newApi.getFlow(options.accessToken))\n return newApi\n }\n\n private async getFlow(token: string): Promise<HtFlowBuilderData> {\n const { data } = await axios.get(this.flowUrl, {\n headers: { Authorization: `Bearer ${token}` },\n })\n return data as HtFlowBuilderData\n }\n\n private async updateSessionWithUserInfo(token: string) {\n const url = `${this.url}/v1/flow_builder/user_info/`\n const response = await axios.get(url, {\n headers: { Authorization: `Bearer ${token}` },\n })\n this.request.session.organization_id = response.data.organization_id\n this.request.session.bot.id = response.data.bot_id\n }\n\n getNodeByFlowId(id: string): HtNodeWithContent {\n const subFlow = this.flow.flows.find(subFlow => subFlow.id === id)\n if (!subFlow) {\n throw Error(`SubFlow with id: '${id}' not found`)\n }\n return this.getNodeById<HtNodeWithContent>(subFlow.start_node_id)\n }\n\n getNodeByCampaignId<T extends HtNodeComponent>(id: string): T {\n const campaign = this.flow.campaigns.find(campaign => campaign.id === id)\n if (!campaign) {\n throw Error(`Campaign with id: '${id}' not found`)\n }\n return this.getNodeById<T>(campaign.start_node_id)\n }\n\n getNodeById<T extends HtNodeComponent>(id: string): T {\n const node = this.flow.nodes.find(node => node.id === id)\n if (!node) {\n console.error(`Node with id: '${id}' not found`)\n }\n\n return node as T\n }\n\n getRatingNodeByButtonId(id: string): HtRatingNode {\n const ratingNodes = this.flow.nodes.filter(\n node => node.type === HtNodeWithContentType.RATING\n ) as HtRatingNode[]\n const ratingNode = ratingNodes.find(node =>\n node.content.buttons.some(button => button.id === id)\n ) as HtRatingNode | undefined\n\n if (!ratingNode) {\n throw Error(`Rating node with button id: '${id}' not found`)\n }\n\n return ratingNode\n }\n\n getRatingButtonById(ratingNode: HtRatingNode, id: string): HtRatingButton {\n const ratingButton = ratingNode.content.buttons.find(\n button => button.id === id\n ) as HtRatingButton | undefined\n if (!ratingButton) {\n throw Error(`Rating button with id: '${id}' not found`)\n }\n\n return ratingButton\n }\n\n getNodeByContentID(contentID: string): HtNodeComponent {\n const content = this.flow.nodes.find(node =>\n 'code' in node ? node.code === contentID : false\n )\n if (!content) {\n throw Error(`Node with contentID: '${contentID}' not found`)\n }\n return content\n }\n\n getStartNode(): HtNodeWithContent {\n const startNodeId = this.flow.start_node_id\n if (!startNodeId) {\n throw new Error('Start node id must be defined')\n }\n return this.getNodeById(startNodeId)\n }\n\n getFallbackNode(alternate: boolean): HtNodeWithContent {\n const fallbackNode = this.flow.nodes.find(\n node => node.type === HtNodeWithContentType.FALLBACK\n ) as HtFallbackNode | undefined\n if (!fallbackNode) {\n throw new Error('Fallback node must be defined')\n }\n const fallbackFirstMessage = fallbackNode.content.first_message\n if (!fallbackFirstMessage) {\n throw new Error('Fallback 1st message must be defined')\n }\n const fallbackSecondMessage = fallbackNode.content.second_message\n if (!fallbackSecondMessage) {\n return this.getNodeById(fallbackFirstMessage.id)\n }\n return alternate\n ? this.getNodeById(fallbackFirstMessage.id)\n : this.getNodeById(fallbackSecondMessage.id)\n }\n\n getSmartIntentNodes(): HtSmartIntentNode[] {\n return this.flow.nodes.filter(\n node => node.type === HtNodeWithContentType.SMART_INTENT\n ) as HtSmartIntentNode[]\n }\n\n getKeywordNodes(): HtKeywordNode[] {\n return this.flow.nodes.filter(\n node => node.type === HtNodeWithContentType.KEYWORD\n ) as HtKeywordNode[]\n }\n\n getPayload(target?: HtNodeLink): string | undefined {\n if (!target) {\n return undefined\n }\n\n return target.id\n }\n\n isBotAction(id: string): boolean {\n if (!this.isUUID(id)) {\n return false\n }\n const node = this.getNodeById(id)\n return node?.type === HtNodeWithContentType.BOT_ACTION\n }\n\n private isUUID(str: string): boolean {\n return UUID_REGEXP.test(str)\n }\n\n createPayloadWithParams(botActionNode: HtBotActionNode): string {\n const payloadId = botActionNode.content.payload_id\n const payloadNode = this.getNodeById<HtPayloadNode>(payloadId)\n const customParams = JSON.parse(\n botActionNode.content.payload_params || '{}'\n )\n\n const contentID = botActionNode.code\n\n const followUpContentID = this.getFollowUpContentID(\n botActionNode.follow_up?.id\n )\n\n const payloadParams: PayloadParamsBase = {\n contentID,\n followUpContentID,\n }\n\n const payloadJson = JSON.stringify({\n ...customParams,\n ...payloadParams,\n })\n return `${payloadNode.content.payload}${SEPARATOR}${payloadJson}`\n }\n\n private getFollowUpContentID(id?: string): string | undefined {\n const followUpNode = id\n ? this.getNodeById<HtNodeWithContent | HtGoToFlow>(id)\n : undefined\n\n return followUpNode?.code\n }\n\n getFlowName(flowId: string): string {\n const flow = this.flow.flows.find(flow => flow.id === flowId)\n return flow ? flow.name : this.getCampaignFlowName(flowId)\n }\n\n getCampaignFlowName(campaignId: string): string {\n const campaign = this.flow.campaigns.find(\n campaign => campaign.id === campaignId\n )\n return campaign ? campaign.name : ''\n }\n\n getStartNodeAiAgentFlow(): HtNodeWithContent | undefined {\n const aiAgentFlow = this.flow.flows.find(\n flow => flow.name === AI_AGENTS_FLOW_NAME\n )\n\n if (!aiAgentFlow) {\n return undefined\n }\n\n return this.getNodeById<HtNodeWithContent>(aiAgentFlow.start_node_id)\n }\n\n isAiAgentEnabled(): boolean {\n return this.flow.is_ai_agent_active || false\n }\n\n getWebviewById(id: string): HtFlowWebview | undefined {\n return this.flow.webviews.find(webview => webview.id === id)\n }\n\n shouldCaptureUserInput(): boolean {\n return !!this.getCaptureUserInputId()\n }\n\n getCaptureUserInputId(): string | undefined {\n return this.request.session.capture_user_input?.node_id\n }\n\n setCaptureUserInputId(id: string): void {\n if (this.request.session.capture_user_input) {\n this.request.session.capture_user_input.node_id = id\n }\n this.request.session.capture_user_input = { node_id: id }\n }\n\n removeCaptureUserInputId(): void {\n this.request.session.capture_user_input = undefined\n }\n\n setUserExtraDataVariable(key: string, value: string): void {\n if (this.request.session.user.extra_data) {\n this.request.session.user.extra_data[key] = value\n }\n }\n\n getCaptureUserInputNode(): HtCaptureUserInputNode | undefined {\n const captureUserInputId = this.getCaptureUserInputId()\n if (!captureUserInputId) {\n return undefined\n }\n return this.getNodeById<HtCaptureUserInputNode>(captureUserInputId)\n }\n\n getResolvedLocale(): string {\n const flowLocales = this.flow.locales\n const defaultLocaleCode = this.flow.default_locale_code\n\n return new FlowLocale(\n this.request,\n flowLocales,\n defaultLocaleCode\n ).resolve()\n }\n}\n"],"names":["axios","AI_AGENTS_FLOW_NAME","SEPARATOR","UUID_REGEXP","HtNodeWithContentType","ProcessEnvNodeEnvs","FlowLocale","FlowBuilderApi","options","newApi","process","updatedRequest","token","data","url","response","id","subFlow","Error","campaign","node","console","ratingNodes","ratingNode","button","ratingButton","contentID","content","startNodeId","alternate","fallbackNode","fallbackFirstMessage","fallbackSecondMessage","target","undefined","str","botActionNode","payloadId","payloadNode","customParams","JSON","followUpContentID","payloadParams","payloadJson","followUpNode","flowId","flow","campaignId","aiAgentFlow","webview","key","value","captureUserInputId","flowLocales","defaultLocaleCode"],"mappings":"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"}
@@ -1,19 +1,17 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FALLBACK_FLOW_NAME = exports.AI_AGENTS_FLOW_NAME = exports.MAIN_FLOW_NAME = exports.PUSH_FLOW_PAYLOAD = exports.AGENT_RATING_PAYLOAD = exports.UUID_REGEXP = exports.REG_EXP_PATTERN = exports.ACCESS_TOKEN_VARIABLE_KEY = exports.VARIABLE_PATTERN_GLOBAL = exports.EMPTY_PAYLOAD = exports.SOURCE_INFO_SEPARATOR = exports.SEPARATOR = exports.FLOW_BUILDER_API_URL_PROD = void 0;
4
- exports.FLOW_BUILDER_API_URL_PROD = process.env.HUBTYPE_API_URL || 'https://api.hubtype.com';
5
- exports.SEPARATOR = '|';
6
- exports.SOURCE_INFO_SEPARATOR = `${exports.SEPARATOR}source_`;
7
- exports.EMPTY_PAYLOAD = 'fb-empty-payload';
8
- exports.VARIABLE_PATTERN_GLOBAL = /{([^{}]+)}/g;
9
- exports.ACCESS_TOKEN_VARIABLE_KEY = '_access_token';
10
- exports.REG_EXP_PATTERN = /^\/(.*)\/([gimyus]*)$/;
11
- exports.UUID_REGEXP = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
12
- /* ********** PAYLOADS ********** */
13
- exports.AGENT_RATING_PAYLOAD = 'agent-rating';
14
- exports.PUSH_FLOW_PAYLOAD = 'push-flow';
15
- /* ********** FLOW NAMES ********** */
16
- exports.MAIN_FLOW_NAME = 'Main';
17
- exports.AI_AGENTS_FLOW_NAME = 'AI Agents';
18
- exports.FALLBACK_FLOW_NAME = 'Fallback';
1
+ const FLOW_BUILDER_API_URL_PROD = process.env.HUBTYPE_API_URL || 'https://api.hubtype.com';
2
+ const SEPARATOR = '|';
3
+ const SOURCE_INFO_SEPARATOR = `${SEPARATOR}source_`;
4
+ const EMPTY_PAYLOAD = 'fb-empty-payload';
5
+ const VARIABLE_PATTERN_GLOBAL = /{([^{}]+)}/g;
6
+ const ACCESS_TOKEN_VARIABLE_KEY = '_access_token';
7
+ const REG_EXP_PATTERN = /^\/(.*)\/([gimyus]*)$/;
8
+ const UUID_REGEXP = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
9
+ /* ********** PAYLOADS ********** */ const AGENT_RATING_PAYLOAD = 'agent-rating';
10
+ const PUSH_FLOW_PAYLOAD = 'push-flow';
11
+ /* ********** FLOW NAMES ********** */ const MAIN_FLOW_NAME = 'Main';
12
+ const AI_AGENTS_FLOW_NAME = 'AI Agents';
13
+ const FALLBACK_FLOW_NAME = 'Fallback';
14
+
15
+ export { ACCESS_TOKEN_VARIABLE_KEY, AGENT_RATING_PAYLOAD, AI_AGENTS_FLOW_NAME, EMPTY_PAYLOAD, FALLBACK_FLOW_NAME, FLOW_BUILDER_API_URL_PROD, MAIN_FLOW_NAME, PUSH_FLOW_PAYLOAD, REG_EXP_PATTERN, SEPARATOR, SOURCE_INFO_SEPARATOR, UUID_REGEXP, VARIABLE_PATTERN_GLOBAL };
16
+
19
17
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,yBAAyB,GACpC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,yBAAyB,CAAA;AAC7C,QAAA,SAAS,GAAG,GAAG,CAAA;AACf,QAAA,qBAAqB,GAAG,GAAG,iBAAS,SAAS,CAAA;AAC7C,QAAA,aAAa,GAAG,kBAAkB,CAAA;AAClC,QAAA,uBAAuB,GAAG,aAAa,CAAA;AACvC,QAAA,yBAAyB,GAAG,eAAe,CAAA;AAC3C,QAAA,eAAe,GAAG,uBAAuB,CAAA;AACzC,QAAA,WAAW,GACtB,iEAAiE,CAAA;AAEnE,oCAAoC;AACvB,QAAA,oBAAoB,GAAG,cAAc,CAAA;AACrC,QAAA,iBAAiB,GAAG,WAAW,CAAA;AAE5C,sCAAsC;AACzB,QAAA,cAAc,GAAG,MAAM,CAAA;AACvB,QAAA,mBAAmB,GAAG,WAAW,CAAA;AACjC,QAAA,kBAAkB,GAAG,UAAU,CAAA"}
1
+ {"version":3,"file":"constants.js","sources":["../../src/constants.ts"],"sourcesContent":["export const FLOW_BUILDER_API_URL_PROD =\n process.env.HUBTYPE_API_URL || 'https://api.hubtype.com'\nexport const SEPARATOR = '|'\nexport const SOURCE_INFO_SEPARATOR = `${SEPARATOR}source_`\nexport const EMPTY_PAYLOAD = 'fb-empty-payload'\nexport const VARIABLE_PATTERN_GLOBAL = /{([^{}]+)}/g\nexport const ACCESS_TOKEN_VARIABLE_KEY = '_access_token'\nexport const REG_EXP_PATTERN = /^\\/(.*)\\/([gimyus]*)$/\nexport const UUID_REGEXP =\n /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i\n\n/* ********** PAYLOADS ********** */\nexport const AGENT_RATING_PAYLOAD = 'agent-rating'\nexport const PUSH_FLOW_PAYLOAD = 'push-flow'\n\n/* ********** FLOW NAMES ********** */\nexport const MAIN_FLOW_NAME = 'Main'\nexport const AI_AGENTS_FLOW_NAME = 'AI Agents'\nexport const FALLBACK_FLOW_NAME = 'Fallback'\n"],"names":["FLOW_BUILDER_API_URL_PROD","process","SEPARATOR","SOURCE_INFO_SEPARATOR","EMPTY_PAYLOAD","VARIABLE_PATTERN_GLOBAL","ACCESS_TOKEN_VARIABLE_KEY","REG_EXP_PATTERN","UUID_REGEXP","AGENT_RATING_PAYLOAD","PUSH_FLOW_PAYLOAD","MAIN_FLOW_NAME","AI_AGENTS_FLOW_NAME","FALLBACK_FLOW_NAME"],"mappings":"AAAO,MAAMA,yBAAyBA,GACpCC,QAAQ,GAAG,CAAC,eAAe,IAAI,0BAAyB;AACnD,MAAMC,SAASA,GAAG,IAAG;AACrB,MAAMC,qBAAqBA,GAAG,GAAGD,SAASA,CAAC,OAAO,CAAC;AACnD,MAAME,aAAaA,GAAG,mBAAkB;AACxC,MAAMC,uBAAuBA,GAAG,cAAa;AAC7C,MAAMC,yBAAyBA,GAAG,gBAAe;AACjD,MAAMC,eAAeA,GAAG,wBAAuB;AAC/C,MAAMC,WAAWA,GACtB,kEAAiE;AAEnE,kCAAkC,GAC3B,MAAMC,oBAAoBA,GAAG,eAAc;AAC3C,MAAMC,iBAAiBA,GAAG,YAAW;AAE5C,oCAAoC,GAC7B,MAAMC,cAAcA,GAAG,OAAM;AAC7B,MAAMC,mBAAmBA,GAAG,YAAW;AACvC,MAAMC,kBAAkBA,GAAG,WAAU"}
@@ -1,6 +1,6 @@
1
1
  import type { BotContext } from '@botonic/core';
2
- import type { HtMediaFileLocale, HtNodeLink, HtQueueLocale, HtTextLocale, HtVideoLocale } from './hubtype-fields';
3
- import type { FlowContent } from './index';
2
+ import type { HtMediaFileLocale, HtNodeLink, HtQueueLocale, HtTextLocale, HtVideoLocale } from './hubtype-fields/index.js';
3
+ import type { FlowContent } from './index.js';
4
4
  export declare abstract class ContentFieldsBase {
5
5
  readonly id: string;
6
6
  code: string;
@@ -1,63 +1,58 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ContentFieldsBase = void 0;
4
- const constants_1 = require("../constants");
5
- const filters_1 = require("../filters");
6
- const get_flow_builder_plugin_1 = require("../utils/get-flow-builder-plugin");
1
+ import { ACCESS_TOKEN_VARIABLE_KEY, VARIABLE_PATTERN_GLOBAL } from "../constants.js";
2
+ import { ContentFilterExecutor } from "../filters/index.js";
3
+ import { getFlowBuilderPlugin } from "../utils/get-flow-builder-plugin.js";
4
+
5
+
6
+
7
+
8
+
9
+
10
+
7
11
  class ContentFieldsBase {
8
- constructor(id) {
9
- this.id = id;
10
- }
11
12
  async filterContent(botContext, content) {
12
- const flowBuilderPlugin = (0, get_flow_builder_plugin_1.getFlowBuilderPlugin)(botContext.plugins);
13
+ const flowBuilderPlugin = getFlowBuilderPlugin(botContext.plugins);
13
14
  const contentFilters = flowBuilderPlugin.contentFilters;
14
- const contentFilterExecutor = new filters_1.ContentFilterExecutor({
15
- filters: contentFilters,
15
+ const contentFilterExecutor = new ContentFilterExecutor({
16
+ filters: contentFilters
16
17
  });
17
18
  const filteredContent = await contentFilterExecutor.filter(botContext, content);
18
19
  return filteredContent;
19
20
  }
20
21
  static getTextByLocale(locale, text) {
21
- const result = text.find(t => t.locale === locale);
22
+ const result = text.find((t)=>t.locale === locale);
22
23
  return result?.message ?? '';
23
24
  }
24
25
  static getAssetByLocale(locale, asset) {
25
- const result = asset.find(i => i.locale === locale);
26
+ const result = asset.find((i)=>i.locale === locale);
26
27
  return result?.file ?? '';
27
28
  }
28
29
  static getVideoByLocale(locale, video) {
29
- const result = video.find(v => v.locale === locale);
30
+ const result = video.find((v)=>v.locale === locale);
30
31
  return result?.url ?? '';
31
32
  }
32
33
  static getQueueByLocale(locale, queues) {
33
- return queues.find(queue => queue.locale === locale);
34
+ return queues.find((queue)=>queue.locale === locale);
34
35
  }
35
36
  replaceVariables(text, botContext) {
36
37
  if (!botContext) {
37
38
  return text;
38
39
  }
39
- return text.replace(constants_1.VARIABLE_PATTERN_GLOBAL, match => {
40
+ return text.replace(VARIABLE_PATTERN_GLOBAL, (match)=>{
40
41
  // remove \\ ( escape for _ ) added by text node with markdown
41
42
  const keyPath = match.slice(1, -1).replaceAll('\\', '');
42
- const botVariable = keyPath.endsWith(constants_1.ACCESS_TOKEN_VARIABLE_KEY)
43
- ? match
44
- : this.getValueFromKeyPath(botContext, keyPath);
43
+ const botVariable = keyPath.endsWith(ACCESS_TOKEN_VARIABLE_KEY) ? match : this.getValueFromKeyPath(botContext, keyPath);
45
44
  return this.isValidType(botVariable) ? String(botVariable) : match;
46
45
  });
47
46
  }
48
47
  getValueFromKeyPath(botContext, keyPath) {
49
48
  if (keyPath.startsWith('session.user.contact_info.')) {
50
49
  const name = keyPath.split('.').at(-1);
51
- return botContext.session.user.contact_info?.find(contact => contact.name === name)?.value;
50
+ return botContext.session.user.contact_info?.find((contact)=>contact.name === name)?.value;
52
51
  }
53
52
  if (keyPath.startsWith('input.') || keyPath.startsWith('session.')) {
54
- return keyPath
55
- .split('.')
56
- .reduce((object, key) => this.resolveObjectKey(object, key), botContext);
53
+ return keyPath.split('.').reduce((object, key)=>this.resolveObjectKey(object, key), botContext);
57
54
  }
58
- return keyPath
59
- .split('.')
60
- .reduce((object, key) => this.resolveObjectKey(object, key), botContext.session.user.extra_data);
55
+ return keyPath.split('.').reduce((object, key)=>this.resolveObjectKey(object, key), botContext.session.user.extra_data);
61
56
  }
62
57
  resolveObjectKey(object, key) {
63
58
  if (object && object[key] !== undefined) {
@@ -66,9 +61,18 @@ class ContentFieldsBase {
66
61
  return undefined;
67
62
  }
68
63
  isValidType(botVariable) {
69
- const validTypes = ['boolean', 'string', 'number'];
64
+ const validTypes = [
65
+ 'boolean',
66
+ 'string',
67
+ 'number'
68
+ ];
70
69
  return validTypes.includes(typeof botVariable);
71
70
  }
71
+ constructor(id){
72
+ this.id = id;
73
+ }
72
74
  }
73
- exports.ContentFieldsBase = ContentFieldsBase;
75
+
76
+ export { ContentFieldsBase };
77
+
74
78
  //# sourceMappingURL=content-fields-base.js.map