@botonic/plugin-flow-builder 0.55.2 → 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 (565) 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 -43
  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 +10 -0
  100. package/lib/esm/content-fields/flow-whatsapp-request-contact-info.js +51 -0
  101. package/lib/esm/content-fields/flow-whatsapp-request-contact-info.js.map +1 -0
  102. package/lib/esm/content-fields/flow-whatsapp-template.d.ts +3 -2
  103. package/lib/esm/content-fields/flow-whatsapp-template.js +126 -98
  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 -26
  154. package/lib/esm/content-fields/hubtype-fields/index.js +56 -29
  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.d.ts +1 -0
  160. package/lib/esm/content-fields/hubtype-fields/node-types.js +13 -12
  161. package/lib/esm/content-fields/hubtype-fields/node-types.js.map +1 -1
  162. package/lib/esm/content-fields/hubtype-fields/nodes.d.ts +24 -23
  163. package/lib/esm/content-fields/hubtype-fields/nodes.js +3 -2
  164. package/lib/esm/content-fields/hubtype-fields/nodes.js.map +1 -1
  165. package/lib/esm/content-fields/hubtype-fields/payload.d.ts +1 -1
  166. package/lib/esm/content-fields/hubtype-fields/payload.js +3 -2
  167. package/lib/esm/content-fields/hubtype-fields/payload.js.map +1 -1
  168. package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.d.ts +3 -3
  169. package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.js +3 -2
  170. package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.js.map +1 -1
  171. package/lib/esm/content-fields/hubtype-fields/rating.d.ts +2 -2
  172. package/lib/esm/content-fields/hubtype-fields/rating.js +6 -6
  173. package/lib/esm/content-fields/hubtype-fields/rating.js.map +1 -1
  174. package/lib/esm/content-fields/hubtype-fields/smart-intent.d.ts +2 -2
  175. package/lib/esm/content-fields/hubtype-fields/smart-intent.js +3 -2
  176. package/lib/esm/content-fields/hubtype-fields/smart-intent.js.map +1 -1
  177. package/lib/esm/content-fields/hubtype-fields/text.d.ts +3 -3
  178. package/lib/esm/content-fields/hubtype-fields/text.js +3 -2
  179. package/lib/esm/content-fields/hubtype-fields/text.js.map +1 -1
  180. package/lib/esm/content-fields/hubtype-fields/url.d.ts +1 -1
  181. package/lib/esm/content-fields/hubtype-fields/url.js +3 -2
  182. package/lib/esm/content-fields/hubtype-fields/url.js.map +1 -1
  183. package/lib/esm/content-fields/hubtype-fields/video.d.ts +2 -2
  184. package/lib/esm/content-fields/hubtype-fields/video.js +3 -2
  185. package/lib/esm/content-fields/hubtype-fields/video.js.map +1 -1
  186. package/lib/esm/content-fields/hubtype-fields/webview.d.ts +2 -2
  187. package/lib/esm/content-fields/hubtype-fields/webview.js +3 -2
  188. package/lib/esm/content-fields/hubtype-fields/webview.js.map +1 -1
  189. package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.d.ts +2 -2
  190. package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.js +3 -2
  191. package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.js.map +1 -1
  192. package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.d.ts +3 -3
  193. package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.js +3 -2
  194. package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +1 -1
  195. package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.d.ts +8 -0
  196. package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.js +4 -0
  197. package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.js.map +1 -0
  198. package/lib/esm/content-fields/hubtype-fields/whatsapp-template.d.ts +7 -3
  199. package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js +6 -6
  200. package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js.map +1 -1
  201. package/lib/esm/content-fields/index.d.ts +25 -24
  202. package/lib/esm/content-fields/index.js +72 -49
  203. package/lib/esm/content-fields/index.js.map +1 -1
  204. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +3 -3
  205. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +16 -14
  206. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +1 -1
  207. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +4 -4
  208. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +20 -15
  209. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +1 -1
  210. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +4 -4
  211. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +46 -26
  212. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +1 -1
  213. package/lib/esm/content-fields/whatsapp-button-list/index.d.ts +3 -3
  214. package/lib/esm/content-fields/whatsapp-button-list/index.js +11 -9
  215. package/lib/esm/content-fields/whatsapp-button-list/index.js.map +1 -1
  216. package/lib/esm/filters/index.d.ts +2 -2
  217. package/lib/esm/filters/index.js +8 -9
  218. package/lib/esm/filters/index.js.map +1 -1
  219. package/lib/esm/flow-factory.d.ts +3 -3
  220. package/lib/esm/flow-factory.js +57 -49
  221. package/lib/esm/flow-factory.js.map +1 -1
  222. package/lib/esm/functions/index.d.ts +1 -1
  223. package/lib/esm/functions/index.js +25 -19
  224. package/lib/esm/functions/index.js.map +1 -1
  225. package/lib/esm/index.d.ts +12 -12
  226. package/lib/esm/index.js +94 -77
  227. package/lib/esm/index.js.map +1 -1
  228. package/lib/esm/package.json +3 -0
  229. package/lib/esm/services/hubtype-queues-api.js +14 -14
  230. package/lib/esm/services/hubtype-queues-api.js.map +1 -1
  231. package/lib/esm/structured-output/flow-builder-content.js +14 -13
  232. package/lib/esm/structured-output/flow-builder-content.js.map +1 -1
  233. package/lib/esm/tracking.d.ts +2 -2
  234. package/lib/esm/tracking.js +27 -21
  235. package/lib/esm/tracking.js.map +1 -1
  236. package/lib/esm/types.d.ts +5 -5
  237. package/lib/esm/types.js +9 -9
  238. package/lib/esm/types.js.map +1 -1
  239. package/lib/esm/user-input/capture-user-input-api.d.ts +2 -2
  240. package/lib/esm/user-input/capture-user-input-api.js +44 -33
  241. package/lib/esm/user-input/capture-user-input-api.js.map +1 -1
  242. package/lib/esm/user-input/index.d.ts +2 -2
  243. package/lib/esm/user-input/index.js +23 -14
  244. package/lib/esm/user-input/index.js.map +1 -1
  245. package/lib/esm/user-input/keyword.d.ts +2 -2
  246. package/lib/esm/user-input/keyword.js +31 -26
  247. package/lib/esm/user-input/keyword.js.map +1 -1
  248. package/lib/esm/user-input/smart-intent.d.ts +2 -2
  249. package/lib/esm/user-input/smart-intent.js +36 -32
  250. package/lib/esm/user-input/smart-intent.js.map +1 -1
  251. package/lib/esm/utils/ai-agent.d.ts +3 -3
  252. package/lib/esm/utils/ai-agent.js +17 -12
  253. package/lib/esm/utils/ai-agent.js.map +1 -1
  254. package/lib/esm/utils/authentication.js +10 -7
  255. package/lib/esm/utils/authentication.js.map +1 -1
  256. package/lib/esm/utils/flow-locale.js +14 -18
  257. package/lib/esm/utils/flow-locale.js.map +1 -1
  258. package/lib/esm/utils/get-flow-builder-plugin.d.ts +1 -1
  259. package/lib/esm/utils/get-flow-builder-plugin.js +4 -4
  260. package/lib/esm/utils/get-flow-builder-plugin.js.map +1 -1
  261. package/lib/esm/utils/hubtype-assistant-content.d.ts +1 -1
  262. package/lib/esm/utils/hubtype-assistant-content.js +57 -43
  263. package/lib/esm/utils/hubtype-assistant-content.js.map +1 -1
  264. package/lib/esm/utils/input.js +16 -14
  265. package/lib/esm/utils/input.js.map +1 -1
  266. package/lib/esm/webview/contents-context.d.ts +1 -1
  267. package/lib/esm/webview/contents-context.js +13 -11
  268. package/lib/esm/webview/contents-context.js.map +1 -1
  269. package/lib/esm/webview/index.d.ts +3 -3
  270. package/lib/esm/webview/index.js +10 -9
  271. package/lib/esm/webview/index.js.map +1 -1
  272. package/lib/esm/webview/types.d.ts +1 -1
  273. package/lib/esm/webview/types.js +6 -6
  274. package/lib/esm/webview/types.js.map +1 -1
  275. package/lib/esm/webview/use-webview-contents.d.ts +1 -1
  276. package/lib/esm/webview/use-webview-contents.js +46 -39
  277. package/lib/esm/webview/use-webview-contents.js.map +1 -1
  278. package/package.json +8 -7
  279. package/src/content-fields/flow-whatsapp-request-contact-info.tsx +48 -0
  280. package/src/content-fields/flow-whatsapp-template.tsx +16 -0
  281. package/src/content-fields/hubtype-fields/index.ts +1 -0
  282. package/src/content-fields/hubtype-fields/node-types.ts +1 -0
  283. package/src/content-fields/hubtype-fields/nodes.ts +2 -0
  284. package/src/content-fields/hubtype-fields/whatsapp-request-contact-info.ts +9 -0
  285. package/src/content-fields/hubtype-fields/whatsapp-template.ts +5 -0
  286. package/src/content-fields/index.ts +3 -0
  287. package/src/flow-factory.ts +6 -0
  288. package/src/index.ts +5 -5
  289. package/src/types.ts +6 -6
  290. package/lib/cjs/action/ai-agent-from-user-input.d.ts +0 -3
  291. package/lib/cjs/action/ai-agent-from-user-input.js +0 -32
  292. package/lib/cjs/action/ai-agent-from-user-input.js.map +0 -1
  293. package/lib/cjs/action/context.d.ts +0 -11
  294. package/lib/cjs/action/context.js +0 -17
  295. package/lib/cjs/action/context.js.map +0 -1
  296. package/lib/cjs/action/fallback.d.ts +0 -3
  297. package/lib/cjs/action/fallback.js +0 -36
  298. package/lib/cjs/action/fallback.js.map +0 -1
  299. package/lib/cjs/action/first-interaction.d.ts +0 -3
  300. package/lib/cjs/action/first-interaction.js +0 -88
  301. package/lib/cjs/action/first-interaction.js.map +0 -1
  302. package/lib/cjs/action/get-contents.d.ts +0 -3
  303. package/lib/cjs/action/get-contents.js +0 -39
  304. package/lib/cjs/action/get-contents.js.map +0 -1
  305. package/lib/cjs/action/index.d.ts +0 -25
  306. package/lib/cjs/action/index.js +0 -90
  307. package/lib/cjs/action/index.js.map +0 -1
  308. package/lib/cjs/action/payload.d.ts +0 -3
  309. package/lib/cjs/action/payload.js +0 -74
  310. package/lib/cjs/action/payload.js.map +0 -1
  311. package/lib/cjs/api.d.ts +0 -40
  312. package/lib/cjs/api.js +0 -205
  313. package/lib/cjs/api.js.map +0 -1
  314. package/lib/cjs/constants.d.ts +0 -13
  315. package/lib/cjs/constants.js +0 -19
  316. package/lib/cjs/constants.js.map +0 -1
  317. package/lib/cjs/content-fields/content-fields-base.d.ts +0 -20
  318. package/lib/cjs/content-fields/content-fields-base.js +0 -74
  319. package/lib/cjs/content-fields/content-fields-base.js.map +0 -1
  320. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.d.ts +0 -15
  321. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.js +0 -71
  322. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.js.map +0 -1
  323. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.d.ts +0 -9
  324. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.js +0 -58
  325. package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.js.map +0 -1
  326. package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.d.ts +0 -17
  327. package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.js +0 -79
  328. package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.js.map +0 -1
  329. package/lib/cjs/content-fields/flow-ai-agent-base.d.ts +0 -25
  330. package/lib/cjs/content-fields/flow-ai-agent-base.js +0 -93
  331. package/lib/cjs/content-fields/flow-ai-agent-base.js.map +0 -1
  332. package/lib/cjs/content-fields/flow-ai-agent-router.d.ts +0 -21
  333. package/lib/cjs/content-fields/flow-ai-agent-router.js +0 -125
  334. package/lib/cjs/content-fields/flow-ai-agent-router.js.map +0 -1
  335. package/lib/cjs/content-fields/flow-ai-agent.d.ts +0 -17
  336. package/lib/cjs/content-fields/flow-ai-agent.js +0 -64
  337. package/lib/cjs/content-fields/flow-ai-agent.js.map +0 -1
  338. package/lib/cjs/content-fields/flow-bot-action.d.ts +0 -14
  339. package/lib/cjs/content-fields/flow-bot-action.js +0 -45
  340. package/lib/cjs/content-fields/flow-bot-action.js.map +0 -1
  341. package/lib/cjs/content-fields/flow-button.d.ts +0 -31
  342. package/lib/cjs/content-fields/flow-button.js +0 -86
  343. package/lib/cjs/content-fields/flow-button.js.map +0 -1
  344. package/lib/cjs/content-fields/flow-capture-user-input.d.ts +0 -14
  345. package/lib/cjs/content-fields/flow-capture-user-input.js +0 -45
  346. package/lib/cjs/content-fields/flow-capture-user-input.js.map +0 -1
  347. package/lib/cjs/content-fields/flow-carousel.d.ts +0 -22
  348. package/lib/cjs/content-fields/flow-carousel.js +0 -152
  349. package/lib/cjs/content-fields/flow-carousel.js.map +0 -1
  350. package/lib/cjs/content-fields/flow-channel-conditional.d.ts +0 -14
  351. package/lib/cjs/content-fields/flow-channel-conditional.js +0 -57
  352. package/lib/cjs/content-fields/flow-channel-conditional.js.map +0 -1
  353. package/lib/cjs/content-fields/flow-country-conditional.d.ts +0 -13
  354. package/lib/cjs/content-fields/flow-country-conditional.js +0 -59
  355. package/lib/cjs/content-fields/flow-country-conditional.js.map +0 -1
  356. package/lib/cjs/content-fields/flow-custom-conditional.d.ts +0 -17
  357. package/lib/cjs/content-fields/flow-custom-conditional.js +0 -89
  358. package/lib/cjs/content-fields/flow-custom-conditional.js.map +0 -1
  359. package/lib/cjs/content-fields/flow-element.d.ts +0 -22
  360. package/lib/cjs/content-fields/flow-element.js +0 -50
  361. package/lib/cjs/content-fields/flow-element.js.map +0 -1
  362. package/lib/cjs/content-fields/flow-go-to-flow.d.ts +0 -13
  363. package/lib/cjs/content-fields/flow-go-to-flow.js +0 -51
  364. package/lib/cjs/content-fields/flow-go-to-flow.js.map +0 -1
  365. package/lib/cjs/content-fields/flow-handoff.d.ts +0 -17
  366. package/lib/cjs/content-fields/flow-handoff.js +0 -68
  367. package/lib/cjs/content-fields/flow-handoff.js.map +0 -1
  368. package/lib/cjs/content-fields/flow-image.d.ts +0 -10
  369. package/lib/cjs/content-fields/flow-image.js +0 -33
  370. package/lib/cjs/content-fields/flow-image.js.map +0 -1
  371. package/lib/cjs/content-fields/flow-queue-status-conditional.d.ts +0 -30
  372. package/lib/cjs/content-fields/flow-queue-status-conditional.js +0 -95
  373. package/lib/cjs/content-fields/flow-queue-status-conditional.js.map +0 -1
  374. package/lib/cjs/content-fields/flow-rating.d.ts +0 -15
  375. package/lib/cjs/content-fields/flow-rating.js +0 -66
  376. package/lib/cjs/content-fields/flow-rating.js.map +0 -1
  377. package/lib/cjs/content-fields/flow-text.d.ts +0 -15
  378. package/lib/cjs/content-fields/flow-text.js +0 -60
  379. package/lib/cjs/content-fields/flow-text.js.map +0 -1
  380. package/lib/cjs/content-fields/flow-video.d.ts +0 -10
  381. package/lib/cjs/content-fields/flow-video.js +0 -33
  382. package/lib/cjs/content-fields/flow-video.js.map +0 -1
  383. package/lib/cjs/content-fields/flow-webview.d.ts +0 -16
  384. package/lib/cjs/content-fields/flow-webview.js +0 -78
  385. package/lib/cjs/content-fields/flow-webview.js.map +0 -1
  386. package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.d.ts +0 -21
  387. package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js +0 -92
  388. package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js.map +0 -1
  389. package/lib/cjs/content-fields/flow-whatsapp-template.d.ts +0 -36
  390. package/lib/cjs/content-fields/flow-whatsapp-template.js +0 -253
  391. package/lib/cjs/content-fields/flow-whatsapp-template.js.map +0 -1
  392. package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.d.ts +0 -21
  393. package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.js +0 -3
  394. package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.js.map +0 -1
  395. package/lib/cjs/content-fields/hubtype-fields/ai-agent.d.ts +0 -25
  396. package/lib/cjs/content-fields/hubtype-fields/ai-agent.js +0 -3
  397. package/lib/cjs/content-fields/hubtype-fields/ai-agent.js.map +0 -1
  398. package/lib/cjs/content-fields/hubtype-fields/bot-action.d.ts +0 -10
  399. package/lib/cjs/content-fields/hubtype-fields/bot-action.js +0 -3
  400. package/lib/cjs/content-fields/hubtype-fields/bot-action.js.map +0 -1
  401. package/lib/cjs/content-fields/hubtype-fields/button.d.ts +0 -8
  402. package/lib/cjs/content-fields/hubtype-fields/button.js +0 -3
  403. package/lib/cjs/content-fields/hubtype-fields/button.js.map +0 -1
  404. package/lib/cjs/content-fields/hubtype-fields/capture-user-input.d.ts +0 -19
  405. package/lib/cjs/content-fields/hubtype-fields/capture-user-input.js +0 -12
  406. package/lib/cjs/content-fields/hubtype-fields/capture-user-input.js.map +0 -1
  407. package/lib/cjs/content-fields/hubtype-fields/carousel.d.ts +0 -17
  408. package/lib/cjs/content-fields/hubtype-fields/carousel.js +0 -3
  409. package/lib/cjs/content-fields/hubtype-fields/carousel.js.map +0 -1
  410. package/lib/cjs/content-fields/hubtype-fields/channel-conditional.d.ts +0 -10
  411. package/lib/cjs/content-fields/hubtype-fields/channel-conditional.js +0 -3
  412. package/lib/cjs/content-fields/hubtype-fields/channel-conditional.js.map +0 -1
  413. package/lib/cjs/content-fields/hubtype-fields/common.d.ts +0 -83
  414. package/lib/cjs/content-fields/hubtype-fields/common.js +0 -3
  415. package/lib/cjs/content-fields/hubtype-fields/common.js.map +0 -1
  416. package/lib/cjs/content-fields/hubtype-fields/country-conditional.d.ts +0 -10
  417. package/lib/cjs/content-fields/hubtype-fields/country-conditional.js +0 -3
  418. package/lib/cjs/content-fields/hubtype-fields/country-conditional.js.map +0 -1
  419. package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.d.ts +0 -56
  420. package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.js +0 -36
  421. package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.js.map +0 -1
  422. package/lib/cjs/content-fields/hubtype-fields/custom-conditional.d.ts +0 -11
  423. package/lib/cjs/content-fields/hubtype-fields/custom-conditional.js +0 -3
  424. package/lib/cjs/content-fields/hubtype-fields/custom-conditional.js.map +0 -1
  425. package/lib/cjs/content-fields/hubtype-fields/fallback.d.ts +0 -9
  426. package/lib/cjs/content-fields/hubtype-fields/fallback.js +0 -3
  427. package/lib/cjs/content-fields/hubtype-fields/fallback.js.map +0 -1
  428. package/lib/cjs/content-fields/hubtype-fields/function.d.ts +0 -30
  429. package/lib/cjs/content-fields/hubtype-fields/function.js +0 -11
  430. package/lib/cjs/content-fields/hubtype-fields/function.js.map +0 -1
  431. package/lib/cjs/content-fields/hubtype-fields/go-to-flow.d.ts +0 -9
  432. package/lib/cjs/content-fields/hubtype-fields/go-to-flow.js +0 -3
  433. package/lib/cjs/content-fields/hubtype-fields/go-to-flow.js.map +0 -1
  434. package/lib/cjs/content-fields/hubtype-fields/handoff.d.ts +0 -11
  435. package/lib/cjs/content-fields/hubtype-fields/handoff.js +0 -3
  436. package/lib/cjs/content-fields/hubtype-fields/handoff.js.map +0 -1
  437. package/lib/cjs/content-fields/hubtype-fields/image.d.ts +0 -8
  438. package/lib/cjs/content-fields/hubtype-fields/image.js +0 -3
  439. package/lib/cjs/content-fields/hubtype-fields/image.js.map +0 -1
  440. package/lib/cjs/content-fields/hubtype-fields/index.d.ts +0 -26
  441. package/lib/cjs/content-fields/hubtype-fields/index.js +0 -30
  442. package/lib/cjs/content-fields/hubtype-fields/index.js.map +0 -1
  443. package/lib/cjs/content-fields/hubtype-fields/keyword.d.ts +0 -9
  444. package/lib/cjs/content-fields/hubtype-fields/keyword.js +0 -3
  445. package/lib/cjs/content-fields/hubtype-fields/keyword.js.map +0 -1
  446. package/lib/cjs/content-fields/hubtype-fields/node-types.d.ts +0 -30
  447. package/lib/cjs/content-fields/hubtype-fields/node-types.js +0 -37
  448. package/lib/cjs/content-fields/hubtype-fields/node-types.js.map +0 -1
  449. package/lib/cjs/content-fields/hubtype-fields/nodes.d.ts +0 -25
  450. package/lib/cjs/content-fields/hubtype-fields/nodes.js +0 -3
  451. package/lib/cjs/content-fields/hubtype-fields/nodes.js.map +0 -1
  452. package/lib/cjs/content-fields/hubtype-fields/payload.d.ts +0 -8
  453. package/lib/cjs/content-fields/hubtype-fields/payload.js +0 -3
  454. package/lib/cjs/content-fields/hubtype-fields/payload.js.map +0 -1
  455. package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.d.ts +0 -25
  456. package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.js +0 -3
  457. package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.js.map +0 -1
  458. package/lib/cjs/content-fields/hubtype-fields/rating.d.ts +0 -23
  459. package/lib/cjs/content-fields/hubtype-fields/rating.js +0 -9
  460. package/lib/cjs/content-fields/hubtype-fields/rating.js.map +0 -1
  461. package/lib/cjs/content-fields/hubtype-fields/smart-intent.d.ts +0 -12
  462. package/lib/cjs/content-fields/hubtype-fields/smart-intent.js +0 -3
  463. package/lib/cjs/content-fields/hubtype-fields/smart-intent.js.map +0 -1
  464. package/lib/cjs/content-fields/hubtype-fields/text.d.ts +0 -11
  465. package/lib/cjs/content-fields/hubtype-fields/text.js +0 -3
  466. package/lib/cjs/content-fields/hubtype-fields/text.js.map +0 -1
  467. package/lib/cjs/content-fields/hubtype-fields/url.d.ts +0 -8
  468. package/lib/cjs/content-fields/hubtype-fields/url.js +0 -3
  469. package/lib/cjs/content-fields/hubtype-fields/url.js.map +0 -1
  470. package/lib/cjs/content-fields/hubtype-fields/video.d.ts +0 -8
  471. package/lib/cjs/content-fields/hubtype-fields/video.js +0 -3
  472. package/lib/cjs/content-fields/hubtype-fields/video.js.map +0 -1
  473. package/lib/cjs/content-fields/hubtype-fields/webview.d.ts +0 -17
  474. package/lib/cjs/content-fields/hubtype-fields/webview.js +0 -3
  475. package/lib/cjs/content-fields/hubtype-fields/webview.js.map +0 -1
  476. package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.d.ts +0 -21
  477. package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.js +0 -3
  478. package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.js.map +0 -1
  479. package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.d.ts +0 -17
  480. package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.js +0 -3
  481. package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +0 -1
  482. package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.d.ts +0 -92
  483. package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js +0 -9
  484. package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js.map +0 -1
  485. package/lib/cjs/content-fields/index.d.ts +0 -24
  486. package/lib/cjs/content-fields/index.js +0 -50
  487. package/lib/cjs/content-fields/index.js.map +0 -1
  488. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +0 -14
  489. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +0 -41
  490. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +0 -1
  491. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +0 -13
  492. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +0 -36
  493. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +0 -1
  494. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +0 -14
  495. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +0 -46
  496. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +0 -1
  497. package/lib/cjs/content-fields/whatsapp-button-list/index.d.ts +0 -3
  498. package/lib/cjs/content-fields/whatsapp-button-list/index.js +0 -10
  499. package/lib/cjs/content-fields/whatsapp-button-list/index.js.map +0 -1
  500. package/lib/cjs/filters/index.d.ts +0 -12
  501. package/lib/cjs/filters/index.js +0 -17
  502. package/lib/cjs/filters/index.js.map +0 -1
  503. package/lib/cjs/flow-factory.d.ts +0 -12
  504. package/lib/cjs/flow-factory.js +0 -67
  505. package/lib/cjs/flow-factory.js.map +0 -1
  506. package/lib/cjs/functions/index.d.ts +0 -11
  507. package/lib/cjs/functions/index.js +0 -49
  508. package/lib/cjs/functions/index.js.map +0 -1
  509. package/lib/cjs/index.d.ts +0 -45
  510. package/lib/cjs/index.js +0 -178
  511. package/lib/cjs/index.js.map +0 -1
  512. package/lib/cjs/services/hubtype-queues-api.d.ts +0 -14
  513. package/lib/cjs/services/hubtype-queues-api.js +0 -26
  514. package/lib/cjs/services/hubtype-queues-api.js.map +0 -1
  515. package/lib/cjs/structured-output/flow-builder-content.d.ts +0 -13
  516. package/lib/cjs/structured-output/flow-builder-content.js +0 -15
  517. package/lib/cjs/structured-output/flow-builder-content.js.map +0 -1
  518. package/lib/cjs/tracking.d.ts +0 -16
  519. package/lib/cjs/tracking.js +0 -71
  520. package/lib/cjs/tracking.js.map +0 -1
  521. package/lib/cjs/types.d.ts +0 -62
  522. package/lib/cjs/types.js +0 -14
  523. package/lib/cjs/types.js.map +0 -1
  524. package/lib/cjs/user-input/capture-user-input-api.d.ts +0 -21
  525. package/lib/cjs/user-input/capture-user-input-api.js +0 -88
  526. package/lib/cjs/user-input/capture-user-input-api.js.map +0 -1
  527. package/lib/cjs/user-input/index.d.ts +0 -4
  528. package/lib/cjs/user-input/index.js +0 -37
  529. package/lib/cjs/user-input/index.js.map +0 -1
  530. package/lib/cjs/user-input/keyword.d.ts +0 -27
  531. package/lib/cjs/user-input/keyword.js +0 -84
  532. package/lib/cjs/user-input/keyword.js.map +0 -1
  533. package/lib/cjs/user-input/smart-intent.d.ts +0 -24
  534. package/lib/cjs/user-input/smart-intent.js +0 -89
  535. package/lib/cjs/user-input/smart-intent.js.map +0 -1
  536. package/lib/cjs/utils/ai-agent.d.ts +0 -11
  537. package/lib/cjs/utils/ai-agent.js +0 -28
  538. package/lib/cjs/utils/ai-agent.js.map +0 -1
  539. package/lib/cjs/utils/authentication.d.ts +0 -2
  540. package/lib/cjs/utils/authentication.js +0 -21
  541. package/lib/cjs/utils/authentication.js.map +0 -1
  542. package/lib/cjs/utils/flow-locale.d.ts +0 -22
  543. package/lib/cjs/utils/flow-locale.js +0 -79
  544. package/lib/cjs/utils/flow-locale.js.map +0 -1
  545. package/lib/cjs/utils/get-flow-builder-plugin.d.ts +0 -3
  546. package/lib/cjs/utils/get-flow-builder-plugin.js +0 -16
  547. package/lib/cjs/utils/get-flow-builder-plugin.js.map +0 -1
  548. package/lib/cjs/utils/hubtype-assistant-content.d.ts +0 -12
  549. package/lib/cjs/utils/hubtype-assistant-content.js +0 -173
  550. package/lib/cjs/utils/hubtype-assistant-content.js.map +0 -1
  551. package/lib/cjs/utils/input.d.ts +0 -6
  552. package/lib/cjs/utils/input.js +0 -35
  553. package/lib/cjs/utils/input.js.map +0 -1
  554. package/lib/cjs/webview/contents-context.d.ts +0 -2
  555. package/lib/cjs/webview/contents-context.js +0 -12
  556. package/lib/cjs/webview/contents-context.js.map +0 -1
  557. package/lib/cjs/webview/index.d.ts +0 -3
  558. package/lib/cjs/webview/index.js +0 -10
  559. package/lib/cjs/webview/index.js.map +0 -1
  560. package/lib/cjs/webview/types.d.ts +0 -47
  561. package/lib/cjs/webview/types.js +0 -9
  562. package/lib/cjs/webview/types.js.map +0 -1
  563. package/lib/cjs/webview/use-webview-contents.d.ts +0 -2
  564. package/lib/cjs/webview/use-webview-contents.js +0 -83
  565. package/lib/cjs/webview/use-webview-contents.js.map +0 -1
@@ -0,0 +1,51 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { isWhatsapp } from "@botonic/core";
3
+ import { Text, WhatsappRequestContactInfo } from "@botonic/react";
4
+ import { trackOneContent } from "../tracking.js";
5
+ import { ContentFieldsBase } from "./content-fields-base.js";
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+ class FlowWhatsappRequestContactInfoNode extends ContentFieldsBase {
18
+ static fromHubtypeCMS(component, locale) {
19
+ const requestContactInfo = new FlowWhatsappRequestContactInfoNode(component.id);
20
+ requestContactInfo.code = component.code;
21
+ requestContactInfo.text = FlowWhatsappRequestContactInfoNode.getTextByLocale(locale, component.content.text);
22
+ requestContactInfo.followUp = component.follow_up;
23
+ return requestContactInfo;
24
+ }
25
+ async trackFlow(botContext) {
26
+ await trackOneContent(botContext, this);
27
+ }
28
+ async processContent(botContext) {
29
+ await this.filterContent(botContext, this);
30
+ await this.trackFlow(botContext);
31
+ return;
32
+ }
33
+ toBotonic(botContext) {
34
+ const replacedText = this.replaceVariables(this.text, botContext);
35
+ if (!isWhatsapp(botContext.session)) {
36
+ return /*#__PURE__*/ jsx(Text, {
37
+ children: replacedText
38
+ });
39
+ }
40
+ return /*#__PURE__*/ jsx(WhatsappRequestContactInfo, {
41
+ body: replacedText
42
+ }, this.id);
43
+ }
44
+ constructor(...args){
45
+ super(...args), this.text = '';
46
+ }
47
+ }
48
+
49
+ export { FlowWhatsappRequestContactInfoNode };
50
+
51
+ //# sourceMappingURL=flow-whatsapp-request-contact-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-fields/flow-whatsapp-request-contact-info.js","sources":["../../../src/content-fields/flow-whatsapp-request-contact-info.tsx"],"sourcesContent":["import { type BotContext, isWhatsapp } from '@botonic/core'\nimport { Text, WhatsappRequestContactInfo } from '@botonic/react'\n\nimport { trackOneContent } from '../tracking'\nimport { ContentFieldsBase } from './content-fields-base'\nimport type { HtWhatsappRequestContactInfoNode } from './hubtype-fields'\n\nexport class FlowWhatsappRequestContactInfoNode extends ContentFieldsBase {\n public text = ''\n\n static fromHubtypeCMS(\n component: HtWhatsappRequestContactInfoNode,\n locale: string\n ): FlowWhatsappRequestContactInfoNode {\n const requestContactInfo = new FlowWhatsappRequestContactInfoNode(\n component.id\n )\n requestContactInfo.code = component.code\n requestContactInfo.text =\n FlowWhatsappRequestContactInfoNode.getTextByLocale(\n locale,\n component.content.text\n )\n requestContactInfo.followUp = component.follow_up\n\n return requestContactInfo\n }\n\n async trackFlow(botContext: BotContext): Promise<void> {\n await trackOneContent(botContext, this)\n }\n\n async processContent(botContext: BotContext): Promise<void> {\n await this.filterContent(botContext, this)\n await this.trackFlow(botContext)\n return\n }\n\n toBotonic(botContext: BotContext): JSX.Element {\n const replacedText = this.replaceVariables(this.text, botContext)\n\n if (!isWhatsapp(botContext.session)) {\n return <Text>{replacedText}</Text>\n }\n\n return <WhatsappRequestContactInfo key={this.id} body={replacedText} />\n }\n}\n"],"names":["isWhatsapp","Text","WhatsappRequestContactInfo","trackOneContent","ContentFieldsBase","FlowWhatsappRequestContactInfoNode","component","locale","requestContactInfo","botContext","replacedText"],"mappings":";;;;;;;;;;;;AAA2D;AACM;AAEpB;AACY;AAGlD,MAAMK,kCAAkCA,SAASD,iBAAiBA;IAGvE,OAAO,eACLE,SAA2C,EAC3CC,MAAc,EACsB;QACpC,MAAMC,qBAAqB,IAAIH,kCAAkCA,CAC/DC,UAAU,EAAE;QAEdE,mBAAmB,IAAI,GAAGF,UAAU,IAAI;QACxCE,mBAAmB,IAAI,GACrBH,kCAAkCA,CAAC,eAAe,CAChDE,QACAD,UAAU,OAAO,CAAC,IAAI;QAE1BE,mBAAmB,QAAQ,GAAGF,UAAU,SAAS;QAEjD,OAAOE;IACT;IAEA,MAAM,UAAUC,UAAsB,EAAiB;QACrD,MAAMN,eAAeA,CAACM,YAAY,IAAI;IACxC;IAEA,MAAM,eAAeA,UAAsB,EAAiB;QAC1D,MAAM,IAAI,CAAC,aAAa,CAACA,YAAY,IAAI;QACzC,MAAM,IAAI,CAAC,SAAS,CAACA;QACrB;IACF;IAEA,UAAUA,UAAsB,EAAe;QAC7C,MAAMC,eAAe,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAED;QAEtD,IAAI,CAACT,UAAUA,CAACS,WAAW,OAAO,GAAG;YACnC,qBAAO,IAACR,IAAIA;0BAAES;;QAChB;QAEA,qBAAO,IAACR,0BAA0BA;YAAe,MAAMQ;WAAf,IAAI,CAAC,EAAE;IACjD;;QAvCK,qBACE,OAAO;;AAuChB"}
@@ -1,7 +1,7 @@
1
1
  import { type BotContext } from '@botonic/core';
2
2
  import { WhatsAppTemplateParameterType } from '@botonic/react';
3
- import { ContentFieldsBase } from './content-fields-base';
4
- import { type HtButton, type HtFlowButtonActionValue, type HtMediaFileLocale, type HtWhatsAppTemplate, type HtWhatsappTemplateNode } from './hubtype-fields';
3
+ import { ContentFieldsBase } from './content-fields-base.js';
4
+ import { type HtButton, type HtFlowButtonActionValue, type HtMediaFileLocale, type HtWhatsAppTemplate, type HtWhatsappTemplateNode } from './hubtype-fields/index.js';
5
5
  interface HeaderVariables {
6
6
  type: WhatsAppTemplateParameterType;
7
7
  text?: Record<string, string>;
@@ -27,6 +27,7 @@ export declare class FlowWhatsappTemplate extends ContentFieldsBase {
27
27
  private createQuickReplyButtonComponent;
28
28
  private createVoiceCallButtonComponent;
29
29
  private createPhoneNumberButtonComponent;
30
+ private createRequestContactInfoButtonComponent;
30
31
  private resolveFlowActionData;
31
32
  private createFlowButtonComponent;
32
33
  trackFlow(botContext: BotContext): Promise<void>;
@@ -1,18 +1,26 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FlowWhatsappTemplate = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const core_1 = require("@botonic/core");
6
- const react_1 = require("@botonic/react");
7
- const tracking_1 = require("../tracking");
8
- const get_flow_builder_plugin_1 = require("../utils/get-flow-builder-plugin");
9
- const content_fields_base_1 = require("./content-fields-base");
10
- const hubtype_fields_1 = require("./hubtype-fields");
11
- class FlowWhatsappTemplate extends content_fields_base_1.ContentFieldsBase {
12
- constructor() {
13
- super(...arguments);
14
- this.variableValues = {};
15
- }
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { isWhatsapp } from "@botonic/core";
3
+ import { Text, WhatsAppTemplateButtonSubType, WhatsAppTemplateComponentType, WhatsAppTemplateParameterType, WhatsappTemplate } from "@botonic/react";
4
+ import { trackOneContent } from "../tracking.js";
5
+ import { getFlowBuilderPlugin } from "../utils/get-flow-builder-plugin.js";
6
+ import { ContentFieldsBase } from "./content-fields-base.js";
7
+ import { HtWhatsAppTemplateFlowActionType } from "./hubtype-fields/index.js";
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+
21
+
22
+
23
+ class FlowWhatsappTemplate extends ContentFieldsBase {
16
24
  static fromHubtypeCMS(component, currentLocale) {
17
25
  const whatsappTemplate = new FlowWhatsappTemplate(component.id);
18
26
  whatsappTemplate.code = component.code;
@@ -25,8 +33,7 @@ class FlowWhatsappTemplate extends content_fields_base_1.ContentFieldsBase {
25
33
  whatsappTemplate.headerVariables = contentByLocale.header_variables;
26
34
  whatsappTemplate.variableValues = contentByLocale.variable_values || {};
27
35
  whatsappTemplate.urlVariableValues = contentByLocale.url_variable_values;
28
- whatsappTemplate.flowButtonActionValues =
29
- contentByLocale.flow_button_action_values;
36
+ whatsappTemplate.flowButtonActionValues = contentByLocale.flow_button_action_values;
30
37
  whatsappTemplate.followUp = component.follow_up;
31
38
  return whatsappTemplate;
32
39
  }
@@ -38,105 +45,103 @@ class FlowWhatsappTemplate extends content_fields_base_1.ContentFieldsBase {
38
45
  return content;
39
46
  }
40
47
  getHeaderComponent(whatsappTemplate, headerVariables, locale, botContext) {
41
- const headerComponent = whatsappTemplate.components.find(component => component.type === react_1.WhatsAppTemplateComponentType.HEADER);
42
- if (headerComponent &&
43
- headerComponent.format === react_1.WhatsAppTemplateParameterType.TEXT) {
48
+ const headerComponent = whatsappTemplate.components.find((component)=>component.type === WhatsAppTemplateComponentType.HEADER);
49
+ if (headerComponent && headerComponent.format === WhatsAppTemplateParameterType.TEXT) {
44
50
  return this.createHeaderTextComponent(headerVariables, botContext);
45
51
  }
46
- if (headerComponent &&
47
- headerComponent.format === react_1.WhatsAppTemplateParameterType.IMAGE) {
52
+ if (headerComponent && headerComponent.format === WhatsAppTemplateParameterType.IMAGE) {
48
53
  return this.createHeaderImageComponent(headerVariables, locale);
49
54
  }
50
- if (headerComponent &&
51
- headerComponent.format === react_1.WhatsAppTemplateParameterType.VIDEO) {
55
+ if (headerComponent && headerComponent.format === WhatsAppTemplateParameterType.VIDEO) {
52
56
  return this.createHeaderVideoComponent(headerVariables, locale);
53
57
  }
54
58
  return undefined;
55
59
  }
56
60
  createHeaderTextComponent(headerVariables, botContext) {
57
61
  return {
58
- type: react_1.WhatsAppTemplateComponentType.HEADER,
59
- parameters: Object.values(headerVariables.text || {}).map(value => {
62
+ type: WhatsAppTemplateComponentType.HEADER,
63
+ parameters: Object.values(headerVariables.text || {}).map((value)=>{
60
64
  const valueVariable = this.replaceVariables(value, botContext);
61
65
  return {
62
- type: react_1.WhatsAppTemplateParameterType.TEXT,
63
- text: valueVariable,
66
+ type: WhatsAppTemplateParameterType.TEXT,
67
+ text: valueVariable
64
68
  };
65
- }),
69
+ })
66
70
  };
67
71
  }
68
72
  createHeaderImageComponent(headerVariables, locale) {
69
73
  return {
70
- type: react_1.WhatsAppTemplateComponentType.HEADER,
74
+ type: WhatsAppTemplateComponentType.HEADER,
71
75
  parameters: [
72
76
  {
73
- type: react_1.WhatsAppTemplateParameterType.IMAGE,
77
+ type: WhatsAppTemplateParameterType.IMAGE,
74
78
  image: {
75
- link: headerVariables.media?.find(m => m.locale === locale)?.file || '',
76
- },
77
- },
78
- ],
79
+ link: headerVariables.media?.find((m)=>m.locale === locale)?.file || ''
80
+ }
81
+ }
82
+ ]
79
83
  };
80
84
  }
81
85
  createHeaderVideoComponent(headerVariables, locale) {
82
86
  return {
83
- type: react_1.WhatsAppTemplateComponentType.HEADER,
87
+ type: WhatsAppTemplateComponentType.HEADER,
84
88
  parameters: [
85
89
  {
86
- type: react_1.WhatsAppTemplateParameterType.VIDEO,
90
+ type: WhatsAppTemplateParameterType.VIDEO,
87
91
  video: {
88
- link: headerVariables.media?.find(m => m.locale === locale)?.file || '',
89
- },
90
- },
91
- ],
92
+ link: headerVariables.media?.find((m)=>m.locale === locale)?.file || ''
93
+ }
94
+ }
95
+ ]
92
96
  };
93
97
  }
94
98
  // TODO: To use named variables (contact_info_fields) we need to take it from botContext.session.user.contact_info, this only be able in toBotonic method
95
99
  getBodyComponent(variableValues, botContext) {
96
100
  return {
97
- type: react_1.WhatsAppTemplateComponentType.BODY,
98
- parameters: Object.entries(variableValues).map(([key, value]) => {
101
+ type: WhatsAppTemplateComponentType.BODY,
102
+ parameters: Object.entries(variableValues).map(([key, value])=>{
99
103
  const valueVariable = this.replaceVariables(value, botContext);
100
104
  return {
101
- type: react_1.WhatsAppTemplateParameterType.TEXT,
105
+ type: WhatsAppTemplateParameterType.TEXT,
102
106
  parameter_name: key,
103
- text: valueVariable,
107
+ text: valueVariable
104
108
  };
105
- }),
109
+ })
106
110
  };
107
111
  }
108
112
  getButtons(whatsappTemplate, buttonNodes, urlVariableValues, flowButtonActionValues, botContext) {
109
- const htWhatsappTemplateButtons = whatsappTemplate.components.find(component => component.type === react_1.WhatsAppTemplateComponentType.BUTTONS);
113
+ const htWhatsappTemplateButtons = whatsappTemplate.components.find((component)=>component.type === WhatsAppTemplateComponentType.BUTTONS);
110
114
  if (!htWhatsappTemplateButtons) {
111
115
  return undefined;
112
116
  }
113
- const buttons = htWhatsappTemplateButtons.buttons
114
- .map((button, index) => this.mapTemplateButton(button, index, whatsappTemplate.name, buttonNodes, urlVariableValues, flowButtonActionValues, botContext))
115
- .filter(button => button !== null);
117
+ const buttons = htWhatsappTemplateButtons.buttons.map((button, index)=>this.mapTemplateButton(button, index, whatsappTemplate.name, buttonNodes, urlVariableValues, flowButtonActionValues, botContext)).filter((button)=>button !== null);
116
118
  return {
117
- type: react_1.WhatsAppTemplateComponentType.BUTTONS,
118
- buttons: buttons,
119
+ type: WhatsAppTemplateComponentType.BUTTONS,
120
+ buttons: buttons
119
121
  };
120
122
  }
121
123
  mapTemplateButton(button, index, templateName, buttonNodes, urlVariableValues, flowButtonActionValues, botContext) {
122
- if (button.type === react_1.WhatsAppTemplateButtonSubType.URL) {
124
+ if (button.type === WhatsAppTemplateButtonSubType.URL) {
123
125
  const urlParam = urlVariableValues?.[String(index)];
124
126
  if (!urlParam) {
125
127
  return null;
126
128
  }
127
129
  return this.createUrlButtonComponent(index, urlParam, botContext);
128
130
  }
129
- if (button.type === react_1.WhatsAppTemplateButtonSubType.QUICK_REPLY) {
131
+ if (button.type === WhatsAppTemplateButtonSubType.QUICK_REPLY) {
130
132
  const payload = buttonNodes[index].target?.id || '';
131
133
  return this.createQuickReplyButtonComponent(index, payload);
132
134
  }
133
- if (button.type === react_1.WhatsAppTemplateButtonSubType.PHONE_NUMBER) {
135
+ if (button.type === WhatsAppTemplateButtonSubType.PHONE_NUMBER) {
134
136
  return this.createPhoneNumberButtonComponent(index);
135
137
  }
136
- if (button.type === react_1.WhatsAppTemplateButtonSubType.VOICE_CALL) {
138
+ if (button.type === WhatsAppTemplateButtonSubType.VOICE_CALL) {
137
139
  return this.createVoiceCallButtonComponent(index);
138
140
  }
139
- if (button.type === react_1.WhatsAppTemplateButtonSubType.FLOW) {
141
+ if (button.type === WhatsAppTemplateButtonSubType.REQUEST_CONTACT_INFO) {
142
+ return this.createRequestContactInfoButtonComponent(index);
143
+ }
144
+ if (button.type === WhatsAppTemplateButtonSubType.FLOW) {
140
145
  const actionValue = flowButtonActionValues?.[String(index)];
141
146
  if (!actionValue) {
142
147
  throw new Error(`WhatsApp template '${templateName}' FLOW button at index ${index} requires flow_button_action_values`);
@@ -148,56 +153,62 @@ class FlowWhatsappTemplate extends content_fields_base_1.ContentFieldsBase {
148
153
  createUrlButtonComponent(index, urlParam, botContext) {
149
154
  const variableUrlParam = this.replaceVariables(urlParam, botContext);
150
155
  return {
151
- type: react_1.WhatsAppTemplateComponentType.BUTTON,
152
- sub_type: react_1.WhatsAppTemplateButtonSubType.URL,
156
+ type: WhatsAppTemplateComponentType.BUTTON,
157
+ sub_type: WhatsAppTemplateButtonSubType.URL,
153
158
  index: index,
154
- parameters: urlParam
155
- ? [
156
- {
157
- type: react_1.WhatsAppTemplateParameterType.TEXT,
158
- text: variableUrlParam,
159
- },
160
- ]
161
- : [],
159
+ parameters: urlParam ? [
160
+ {
161
+ type: WhatsAppTemplateParameterType.TEXT,
162
+ text: variableUrlParam
163
+ }
164
+ ] : []
162
165
  };
163
166
  }
164
167
  createQuickReplyButtonComponent(index, payload) {
165
168
  return {
166
- type: react_1.WhatsAppTemplateComponentType.BUTTON,
167
- sub_type: react_1.WhatsAppTemplateButtonSubType.QUICK_REPLY,
169
+ type: WhatsAppTemplateComponentType.BUTTON,
170
+ sub_type: WhatsAppTemplateButtonSubType.QUICK_REPLY,
168
171
  index: index,
169
172
  parameters: [
170
173
  {
171
- type: react_1.WhatsAppTemplateParameterType.PAYLOAD,
172
- payload: payload,
173
- },
174
- ],
174
+ type: WhatsAppTemplateParameterType.PAYLOAD,
175
+ payload: payload
176
+ }
177
+ ]
175
178
  };
176
179
  }
177
180
  createVoiceCallButtonComponent(index) {
178
181
  return {
179
- type: react_1.WhatsAppTemplateComponentType.BUTTON,
180
- sub_type: react_1.WhatsAppTemplateButtonSubType.VOICE_CALL,
182
+ type: WhatsAppTemplateComponentType.BUTTON,
183
+ sub_type: WhatsAppTemplateButtonSubType.VOICE_CALL,
181
184
  index: index,
182
- parameters: [],
185
+ parameters: []
183
186
  };
184
187
  }
185
188
  createPhoneNumberButtonComponent(index) {
186
189
  return {
187
- type: react_1.WhatsAppTemplateComponentType.BUTTON,
188
- sub_type: react_1.WhatsAppTemplateButtonSubType.PHONE_NUMBER,
190
+ type: WhatsAppTemplateComponentType.BUTTON,
191
+ sub_type: WhatsAppTemplateButtonSubType.PHONE_NUMBER,
192
+ index: index,
193
+ parameters: []
194
+ };
195
+ }
196
+ createRequestContactInfoButtonComponent(index) {
197
+ return {
198
+ type: WhatsAppTemplateComponentType.BUTTON,
199
+ sub_type: WhatsAppTemplateButtonSubType.REQUEST_CONTACT_INFO,
189
200
  index: index,
190
- parameters: [],
201
+ parameters: []
191
202
  };
192
203
  }
193
204
  resolveFlowActionData(flowActionData, botContext) {
194
205
  if (!flowActionData) {
195
206
  return undefined;
196
207
  }
197
- const resolvedData = Object.fromEntries(Object.entries(flowActionData).map(([key, value]) => [
198
- key,
199
- this.replaceVariables(value, botContext),
200
- ]));
208
+ const resolvedData = Object.fromEntries(Object.entries(flowActionData).map(([key, value])=>[
209
+ key,
210
+ this.replaceVariables(value, botContext)
211
+ ]));
201
212
  return Object.keys(resolvedData).length > 0 ? resolvedData : undefined;
202
213
  }
203
214
  createFlowButtonComponent(index, templateButton, actionValue, botContext, templateName) {
@@ -206,29 +217,28 @@ class FlowWhatsappTemplate extends content_fields_base_1.ContentFieldsBase {
206
217
  throw new Error(`WhatsApp template '${templateName}' FLOW button at index ${index} requires a non-empty flow_token`);
207
218
  }
208
219
  const action = {
209
- flow_token: flowToken,
220
+ flow_token: flowToken
210
221
  };
211
- if (templateButton.flow_action !==
212
- hubtype_fields_1.HtWhatsAppTemplateFlowActionType.DATA_EXCHANGE) {
222
+ if (templateButton.flow_action !== HtWhatsAppTemplateFlowActionType.DATA_EXCHANGE) {
213
223
  const flowActionData = this.resolveFlowActionData(actionValue.flow_action_data, botContext);
214
224
  if (flowActionData) {
215
225
  action.flow_action_data = flowActionData;
216
226
  }
217
227
  }
218
228
  return {
219
- type: react_1.WhatsAppTemplateComponentType.BUTTON,
220
- sub_type: react_1.WhatsAppTemplateButtonSubType.FLOW,
229
+ type: WhatsAppTemplateComponentType.BUTTON,
230
+ sub_type: WhatsAppTemplateButtonSubType.FLOW,
221
231
  index: String(index),
222
232
  parameters: [
223
233
  {
224
- type: react_1.WhatsAppTemplateParameterType.ACTION,
225
- action,
226
- },
227
- ],
234
+ type: WhatsAppTemplateParameterType.ACTION,
235
+ action
236
+ }
237
+ ]
228
238
  };
229
239
  }
230
240
  async trackFlow(botContext) {
231
- await (0, tracking_1.trackOneContent)(botContext, this);
241
+ await trackOneContent(botContext, this);
232
242
  }
233
243
  async processContent(botContext) {
234
244
  await this.filterContent(botContext, this);
@@ -239,15 +249,33 @@ class FlowWhatsappTemplate extends content_fields_base_1.ContentFieldsBase {
239
249
  const templateName = this.htWhatsappTemplate.name;
240
250
  const templateLanguage = this.htWhatsappTemplate.language;
241
251
  const body = this.getBodyComponent(this.variableValues, botContext);
242
- const pluginFlowBuilder = (0, get_flow_builder_plugin_1.getFlowBuilderPlugin)(botContext.plugins);
252
+ const pluginFlowBuilder = getFlowBuilderPlugin(botContext.plugins);
243
253
  const resolvedLocale = pluginFlowBuilder.cmsApi.getResolvedLocale();
244
254
  const header = this.getHeaderComponent(this.htWhatsappTemplate, this.headerVariables || {}, resolvedLocale, botContext);
245
255
  const buttons = this.getButtons(this.htWhatsappTemplate, this.buttons || [], this.urlVariableValues || {}, this.flowButtonActionValues || {}, botContext);
246
- if ((0, core_1.isWhatsapp)(botContext.session)) {
247
- return ((0, jsx_runtime_1.jsx)(react_1.WhatsappTemplate, { name: templateName, language: templateLanguage, header: header, body: body, buttons: buttons }, this.id));
256
+ if (isWhatsapp(botContext.session)) {
257
+ return /*#__PURE__*/ jsx(WhatsappTemplate, {
258
+ name: templateName,
259
+ language: templateLanguage,
260
+ header: header,
261
+ body: body,
262
+ buttons: buttons
263
+ }, this.id);
248
264
  }
249
- return ((0, jsx_runtime_1.jsxs)(react_1.Text, { children: [`WhatsApp Template: ${templateName} (${templateLanguage})`, header && `${JSON.stringify(header, null, 2)}`, body && `${JSON.stringify(body, null, 2)}`, buttons && `${JSON.stringify(buttons, null, 2)}`] }, this.id));
265
+ return /*#__PURE__*/ jsxs(Text, {
266
+ children: [
267
+ `WhatsApp Template: ${templateName} (${templateLanguage})`,
268
+ header && `${JSON.stringify(header, null, 2)}`,
269
+ body && `${JSON.stringify(body, null, 2)}`,
270
+ buttons && `${JSON.stringify(buttons, null, 2)}`
271
+ ]
272
+ }, this.id);
273
+ }
274
+ constructor(...args){
275
+ super(...args), this.variableValues = {};
250
276
  }
251
277
  }
252
- exports.FlowWhatsappTemplate = FlowWhatsappTemplate;
278
+
279
+ export { FlowWhatsappTemplate };
280
+
253
281
  //# sourceMappingURL=flow-whatsapp-template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flow-whatsapp-template.js","sourceRoot":"","sources":["../../../src/content-fields/flow-whatsapp-template.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"content-fields/flow-whatsapp-template.js","sources":["../../../src/content-fields/flow-whatsapp-template.tsx"],"sourcesContent":["import { type BotContext, isWhatsapp } from '@botonic/core'\nimport {\n Text,\n WhatsAppTemplateButtonSubType,\n WhatsAppTemplateComponentType,\n WhatsAppTemplateParameterType,\n WhatsappTemplate,\n type WhatsappTemplateButton,\n type WhatsappTemplateComponentBody,\n type WhatsappTemplateComponentButtons,\n type WhatsappTemplateComponentHeader,\n type WhatsappTemplateFlowAction,\n type WhatsappTemplateFlowButton,\n type WhatsappTemplatePhoneNumberButton,\n type WhatsappTemplateQuickReplyButton,\n type WhatsappTemplateRequestContactInfoButton,\n type WhatsappTemplateUrlButton,\n type WhatsappTemplateVoiceCallButton,\n} from '@botonic/react'\n\nimport { trackOneContent } from '../tracking'\nimport { getFlowBuilderPlugin } from '../utils/get-flow-builder-plugin'\nimport { ContentFieldsBase } from './content-fields-base'\nimport {\n type HtButton,\n type HtFlowButtonActionValue,\n type HtMediaFileLocale,\n type HtWhatsAppTemplate,\n type HtWhatsAppTemplateButtonsComponent,\n HtWhatsAppTemplateFlowActionType,\n type HtWhatsAppTemplateHeaderComponent,\n type HtWhatsappTemplateContentByLocale,\n type HtWhatsappTemplateNode,\n} from './hubtype-fields'\n\ninterface HeaderVariables {\n type: WhatsAppTemplateParameterType\n text?: Record<string, string>\n media?: HtMediaFileLocale[]\n}\n\nexport class FlowWhatsappTemplate extends ContentFieldsBase {\n public htWhatsappTemplate: HtWhatsAppTemplate\n public variableValues: Record<string, string> = {}\n public headerVariables?: HeaderVariables\n public buttons?: HtButton[]\n public urlVariableValues?: Record<string, string>\n public flowButtonActionValues?: Record<string, HtFlowButtonActionValue>\n\n static fromHubtypeCMS(\n component: HtWhatsappTemplateNode,\n currentLocale: string\n ): FlowWhatsappTemplate {\n const whatsappTemplate = new FlowWhatsappTemplate(component.id)\n whatsappTemplate.code = component.code\n whatsappTemplate.buttons = component.content.buttons\n const contentByLocale = FlowWhatsappTemplate.getContentByLocale(\n component,\n currentLocale\n )\n\n if (!contentByLocale.template) {\n throw new Error(\n `Whatsapp template not configured for locale: ${currentLocale}`\n )\n }\n\n whatsappTemplate.htWhatsappTemplate = contentByLocale.template\n whatsappTemplate.headerVariables = contentByLocale.header_variables\n whatsappTemplate.variableValues = contentByLocale.variable_values || {}\n whatsappTemplate.urlVariableValues = contentByLocale.url_variable_values\n whatsappTemplate.flowButtonActionValues =\n contentByLocale.flow_button_action_values\n\n whatsappTemplate.followUp = component.follow_up\n\n return whatsappTemplate\n }\n\n private static getContentByLocale(\n component: HtWhatsappTemplateNode,\n currentLocale: string\n ) {\n const content: HtWhatsappTemplateContentByLocale | undefined =\n component.content.by_locale[currentLocale]\n if (!content) {\n throw new Error(\n `Whatsapp template content not found for locale: ${currentLocale}`\n )\n }\n return content\n }\n\n private getHeaderComponent(\n whatsappTemplate: HtWhatsAppTemplate,\n headerVariables: HeaderVariables,\n locale: string,\n botContext: BotContext\n ): WhatsappTemplateComponentHeader | undefined {\n const headerComponent = whatsappTemplate.components.find(\n component => component.type === WhatsAppTemplateComponentType.HEADER\n ) as HtWhatsAppTemplateHeaderComponent | undefined\n\n if (\n headerComponent &&\n headerComponent.format === WhatsAppTemplateParameterType.TEXT\n ) {\n return this.createHeaderTextComponent(headerVariables, botContext)\n }\n\n if (\n headerComponent &&\n headerComponent.format === WhatsAppTemplateParameterType.IMAGE\n ) {\n return this.createHeaderImageComponent(headerVariables, locale)\n }\n\n if (\n headerComponent &&\n headerComponent.format === WhatsAppTemplateParameterType.VIDEO\n ) {\n return this.createHeaderVideoComponent(headerVariables, locale)\n }\n\n return undefined\n }\n\n private createHeaderTextComponent(\n headerVariables: HeaderVariables,\n botContext: BotContext\n ): WhatsappTemplateComponentHeader {\n return {\n type: WhatsAppTemplateComponentType.HEADER,\n parameters: Object.values(headerVariables.text || {}).map(value => {\n const valueVariable = this.replaceVariables(value, botContext)\n return {\n type: WhatsAppTemplateParameterType.TEXT,\n text: valueVariable,\n }\n }),\n }\n }\n\n private createHeaderImageComponent(\n headerVariables: HeaderVariables,\n locale: string\n ): WhatsappTemplateComponentHeader {\n return {\n type: WhatsAppTemplateComponentType.HEADER,\n parameters: [\n {\n type: WhatsAppTemplateParameterType.IMAGE,\n image: {\n link:\n headerVariables.media?.find(m => m.locale === locale)?.file || '',\n },\n },\n ],\n }\n }\n\n private createHeaderVideoComponent(\n headerVariables: HeaderVariables,\n locale: string\n ): WhatsappTemplateComponentHeader {\n return {\n type: WhatsAppTemplateComponentType.HEADER,\n parameters: [\n {\n type: WhatsAppTemplateParameterType.VIDEO,\n video: {\n link:\n headerVariables.media?.find(m => m.locale === locale)?.file || '',\n },\n },\n ],\n }\n }\n\n // TODO: To use named variables (contact_info_fields) we need to take it from botContext.session.user.contact_info, this only be able in toBotonic method\n private getBodyComponent(\n variableValues: Record<string, string>,\n botContext: BotContext\n ): WhatsappTemplateComponentBody {\n return {\n type: WhatsAppTemplateComponentType.BODY,\n parameters: Object.entries(variableValues).map(([key, value]) => {\n const valueVariable = this.replaceVariables(value, botContext)\n return {\n type: WhatsAppTemplateParameterType.TEXT,\n parameter_name: key,\n text: valueVariable,\n }\n }),\n }\n }\n\n private getButtons(\n whatsappTemplate: HtWhatsAppTemplate,\n buttonNodes: HtButton[],\n urlVariableValues: Record<string, string>,\n flowButtonActionValues: Record<string, HtFlowButtonActionValue>,\n botContext: BotContext\n ): WhatsappTemplateComponentButtons | undefined {\n const htWhatsappTemplateButtons = whatsappTemplate.components.find(\n component => component.type === WhatsAppTemplateComponentType.BUTTONS\n ) as HtWhatsAppTemplateButtonsComponent | undefined\n\n if (!htWhatsappTemplateButtons) {\n return undefined\n }\n\n const buttons = htWhatsappTemplateButtons.buttons\n .map((button, index) =>\n this.mapTemplateButton(\n button,\n index,\n whatsappTemplate.name,\n buttonNodes,\n urlVariableValues,\n flowButtonActionValues,\n botContext\n )\n )\n .filter(button => button !== null)\n\n return {\n type: WhatsAppTemplateComponentType.BUTTONS,\n buttons: buttons as WhatsappTemplateButton[],\n }\n }\n\n private mapTemplateButton(\n button: HtWhatsAppTemplateButtonsComponent['buttons'][number],\n index: number,\n templateName: string,\n buttonNodes: HtButton[],\n urlVariableValues: Record<string, string>,\n flowButtonActionValues: Record<string, HtFlowButtonActionValue>,\n botContext: BotContext\n ): WhatsappTemplateButton | null {\n if (button.type === WhatsAppTemplateButtonSubType.URL) {\n const urlParam: string | undefined = urlVariableValues?.[String(index)]\n if (!urlParam) {\n return null\n }\n return this.createUrlButtonComponent(index, urlParam, botContext)\n }\n\n if (button.type === WhatsAppTemplateButtonSubType.QUICK_REPLY) {\n const payload = buttonNodes[index].target?.id || ''\n return this.createQuickReplyButtonComponent(index, payload)\n }\n\n if (button.type === WhatsAppTemplateButtonSubType.PHONE_NUMBER) {\n return this.createPhoneNumberButtonComponent(index)\n }\n\n if (button.type === WhatsAppTemplateButtonSubType.VOICE_CALL) {\n return this.createVoiceCallButtonComponent(index)\n }\n\n if (button.type === WhatsAppTemplateButtonSubType.REQUEST_CONTACT_INFO) {\n return this.createRequestContactInfoButtonComponent(index)\n }\n\n if (button.type === WhatsAppTemplateButtonSubType.FLOW) {\n const actionValue = flowButtonActionValues?.[String(index)]\n if (!actionValue) {\n throw new Error(\n `WhatsApp template '${templateName}' FLOW button at index ${index} requires flow_button_action_values`\n )\n }\n return this.createFlowButtonComponent(\n index,\n button,\n actionValue,\n botContext,\n templateName\n )\n }\n\n throw new Error(\n `WhatsApp template '${templateName}' has unsupported button at index ${index}`\n )\n }\n\n private createUrlButtonComponent(\n index: number,\n urlParam: string,\n botContext: BotContext\n ): WhatsappTemplateUrlButton {\n const variableUrlParam = this.replaceVariables(urlParam, botContext)\n return {\n type: WhatsAppTemplateComponentType.BUTTON,\n sub_type: WhatsAppTemplateButtonSubType.URL,\n index: index,\n parameters: urlParam\n ? [\n {\n type: WhatsAppTemplateParameterType.TEXT,\n text: variableUrlParam,\n },\n ]\n : [],\n }\n }\n\n private createQuickReplyButtonComponent(\n index: number,\n payload: string\n ): WhatsappTemplateQuickReplyButton {\n return {\n type: WhatsAppTemplateComponentType.BUTTON,\n sub_type: WhatsAppTemplateButtonSubType.QUICK_REPLY,\n index: index,\n parameters: [\n {\n type: WhatsAppTemplateParameterType.PAYLOAD,\n payload: payload,\n },\n ],\n }\n }\n\n private createVoiceCallButtonComponent(\n index: number\n ): WhatsappTemplateVoiceCallButton {\n return {\n type: WhatsAppTemplateComponentType.BUTTON,\n sub_type: WhatsAppTemplateButtonSubType.VOICE_CALL,\n index: index,\n parameters: [],\n }\n }\n\n private createPhoneNumberButtonComponent(\n index: number\n ): WhatsappTemplatePhoneNumberButton {\n return {\n type: WhatsAppTemplateComponentType.BUTTON,\n sub_type: WhatsAppTemplateButtonSubType.PHONE_NUMBER,\n index: index,\n parameters: [],\n }\n }\n\n private createRequestContactInfoButtonComponent(\n index: number\n ): WhatsappTemplateRequestContactInfoButton {\n return {\n type: WhatsAppTemplateComponentType.BUTTON,\n sub_type: WhatsAppTemplateButtonSubType.REQUEST_CONTACT_INFO,\n index: index,\n parameters: [],\n }\n }\n\n private resolveFlowActionData(\n flowActionData: Record<string, string> | undefined,\n botContext: BotContext\n ): Record<string, string> | undefined {\n if (!flowActionData) {\n return undefined\n }\n\n const resolvedData = Object.fromEntries(\n Object.entries(flowActionData).map(([key, value]) => [\n key,\n this.replaceVariables(value, botContext),\n ])\n )\n\n return Object.keys(resolvedData).length > 0 ? resolvedData : undefined\n }\n\n private createFlowButtonComponent(\n index: number,\n templateButton: Extract<\n HtWhatsAppTemplateButtonsComponent['buttons'][number],\n { type: WhatsAppTemplateButtonSubType.FLOW }\n >,\n actionValue: HtFlowButtonActionValue,\n botContext: BotContext,\n templateName: string\n ): WhatsappTemplateFlowButton {\n const flowToken = this.replaceVariables(actionValue.flow_token, botContext)\n if (!flowToken.trim()) {\n throw new Error(\n `WhatsApp template '${templateName}' FLOW button at index ${index} requires a non-empty flow_token`\n )\n }\n\n const action: WhatsappTemplateFlowAction = {\n flow_token: flowToken,\n }\n\n if (\n templateButton.flow_action !==\n HtWhatsAppTemplateFlowActionType.DATA_EXCHANGE\n ) {\n const flowActionData = this.resolveFlowActionData(\n actionValue.flow_action_data,\n botContext\n )\n if (flowActionData) {\n action.flow_action_data = flowActionData\n }\n }\n\n return {\n type: WhatsAppTemplateComponentType.BUTTON,\n sub_type: WhatsAppTemplateButtonSubType.FLOW,\n index: String(index),\n parameters: [\n {\n type: WhatsAppTemplateParameterType.ACTION,\n action,\n },\n ],\n }\n }\n\n async trackFlow(botContext: BotContext): Promise<void> {\n await trackOneContent(botContext, this)\n }\n\n async processContent(botContext: BotContext): Promise<void> {\n await this.filterContent(botContext, this)\n await this.trackFlow(botContext)\n return\n }\n\n toBotonic(botContext: BotContext): JSX.Element {\n const templateName = this.htWhatsappTemplate.name\n const templateLanguage = this.htWhatsappTemplate.language\n const body = this.getBodyComponent(this.variableValues, botContext)\n const pluginFlowBuilder = getFlowBuilderPlugin(botContext.plugins)\n const resolvedLocale = pluginFlowBuilder.cmsApi.getResolvedLocale()\n\n const header = this.getHeaderComponent(\n this.htWhatsappTemplate,\n this.headerVariables || ({} as HeaderVariables),\n resolvedLocale,\n botContext\n )\n const buttons = this.getButtons(\n this.htWhatsappTemplate,\n this.buttons || [],\n this.urlVariableValues || {},\n this.flowButtonActionValues || {},\n botContext\n )\n\n if (isWhatsapp(botContext.session)) {\n return (\n <WhatsappTemplate\n key={this.id}\n name={templateName}\n language={templateLanguage}\n header={header}\n body={body}\n buttons={buttons}\n />\n )\n }\n\n return (\n <Text key={this.id}>\n {`WhatsApp Template: ${templateName} (${templateLanguage})`}\n {header && `${JSON.stringify(header, null, 2)}`}\n {body && `${JSON.stringify(body, null, 2)}`}\n {buttons && `${JSON.stringify(buttons, null, 2)}`}\n </Text>\n )\n }\n}\n"],"names":["isWhatsapp","Text","WhatsAppTemplateButtonSubType","WhatsAppTemplateComponentType","WhatsAppTemplateParameterType","WhatsappTemplate","trackOneContent","getFlowBuilderPlugin","ContentFieldsBase","HtWhatsAppTemplateFlowActionType","FlowWhatsappTemplate","component","currentLocale","whatsappTemplate","contentByLocale","Error","content","headerVariables","locale","botContext","headerComponent","undefined","Object","value","valueVariable","m","variableValues","key","buttonNodes","urlVariableValues","flowButtonActionValues","htWhatsappTemplateButtons","buttons","button","index","templateName","urlParam","String","payload","actionValue","variableUrlParam","flowActionData","resolvedData","templateButton","flowToken","action","templateLanguage","body","pluginFlowBuilder","resolvedLocale","header","JSON"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { VerbosityLevel } from '@botonic/core';
2
- import type { HtInputGuardrailRule } from './ai-agent';
3
- import type { HtBaseNode, HtNodeLink } from './common';
4
- import type { HtNodeWithContentType } from './node-types';
2
+ import type { HtInputGuardrailRule } from './ai-agent.js';
3
+ import type { HtBaseNode, HtNodeLink } from './common.js';
4
+ import type { HtNodeWithContentType } from './node-types.js';
5
5
  export interface HtAiAgentSpecialistNode {
6
6
  id: string;
7
7
  target: HtNodeLink;
@@ -1,3 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+
2
+
3
+
3
4
  //# sourceMappingURL=ai-agent-router.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent-router.js","sourceRoot":"","sources":["../../../../src/content-fields/hubtype-fields/ai-agent-router.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"content-fields/hubtype-fields/ai-agent-router.js","sources":["../../../../src/content-fields/hubtype-fields/ai-agent-router.ts"],"sourcesContent":["import type { VerbosityLevel } from '@botonic/core'\nimport type { HtInputGuardrailRule } from './ai-agent'\nimport type { HtBaseNode, HtNodeLink } from './common'\nimport type { HtNodeWithContentType } from './node-types'\n\nexport interface HtAiAgentSpecialistNode {\n id: string\n target: HtNodeLink\n name?: string\n description?: string\n}\n\nexport interface HtAiAgentRouterNode extends HtBaseNode {\n type: HtNodeWithContentType.AI_AGENT_ROUTER\n content: {\n name: string\n instructions: string\n model: string\n verbosity: VerbosityLevel\n available_specialists: HtAiAgentSpecialistNode[]\n input_guardrail_rules?: HtInputGuardrailRule[]\n }\n}\n"],"names":[],"mappings":"AAsBC"}
@@ -1,6 +1,6 @@
1
1
  import type { VerbosityLevel } from '@botonic/core';
2
- import type { HtBaseNode } from './common';
3
- import type { HtNodeWithContentType } from './node-types';
2
+ import type { HtBaseNode } from './common.js';
3
+ import type { HtNodeWithContentType } from './node-types.js';
4
4
  export interface HtInputGuardrailRule {
5
5
  name: string;
6
6
  description: string;
@@ -1,3 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+
2
+
3
+
3
4
  //# sourceMappingURL=ai-agent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent.js","sourceRoot":"","sources":["../../../../src/content-fields/hubtype-fields/ai-agent.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"content-fields/hubtype-fields/ai-agent.js","sources":["../../../../src/content-fields/hubtype-fields/ai-agent.ts"],"sourcesContent":["import type { VerbosityLevel } from '@botonic/core'\nimport type { HtBaseNode } from './common'\nimport type { HtNodeWithContentType } from './node-types'\n\nexport interface HtInputGuardrailRule {\n name: string\n description: string\n is_active: boolean\n}\n\nexport interface HtAiAgentNode extends HtBaseNode {\n type: HtNodeWithContentType.AI_AGENT\n content: {\n name: string\n instructions: string\n model: string\n verbosity: VerbosityLevel\n active_tools?: { name: string }[]\n input_guardrail_rules?: HtInputGuardrailRule[]\n sources?: { id: string; name: string }[]\n }\n}\n"],"names":[],"mappings":"AAqBC"}
@@ -1,5 +1,5 @@
1
- import type { HtBaseNode } from './common';
2
- import type { HtNodeWithContentType } from './node-types';
1
+ import type { HtBaseNode } from './common.js';
2
+ import type { HtNodeWithContentType } from './node-types.js';
3
3
  export interface HtBotActionNode extends HtBaseNode {
4
4
  id: string;
5
5
  type: HtNodeWithContentType.BOT_ACTION;
@@ -1,3 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+
2
+
3
+
3
4
  //# sourceMappingURL=bot-action.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bot-action.js","sourceRoot":"","sources":["../../../../src/content-fields/hubtype-fields/bot-action.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"content-fields/hubtype-fields/bot-action.js","sources":["../../../../src/content-fields/hubtype-fields/bot-action.ts"],"sourcesContent":["import type { HtBaseNode } from './common'\nimport type { HtNodeWithContentType } from './node-types'\n\nexport interface HtBotActionNode extends HtBaseNode {\n id: string\n type: HtNodeWithContentType.BOT_ACTION\n content: {\n payload_id: string\n payload_params?: string\n }\n}\n"],"names":[],"mappings":"AAUC"}
@@ -1,4 +1,4 @@
1
- import type { HtNodeLink, HtTextLocale, HtUrlLocale } from './common';
1
+ import type { HtNodeLink, HtTextLocale, HtUrlLocale } from './common.js';
2
2
  export interface HtButton {
3
3
  id: string;
4
4
  text: HtTextLocale[];
@@ -1,3 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+
2
+
3
+
3
4
  //# sourceMappingURL=button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.js","sourceRoot":"","sources":["../../../../src/content-fields/hubtype-fields/button.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"content-fields/hubtype-fields/button.js","sources":["../../../../src/content-fields/hubtype-fields/button.ts"],"sourcesContent":["import type { HtNodeLink, HtTextLocale, HtUrlLocale } from './common'\n\nexport interface HtButton {\n id: string\n text: HtTextLocale[]\n url: HtUrlLocale[]\n target?: HtNodeLink\n hidden: string[]\n}\n"],"names":[],"mappings":"AAQC"}
@@ -1,5 +1,5 @@
1
- import type { HtBaseNode, HtNodeLink } from './common';
2
- import type { HtNodeWithContentType } from './node-types';
1
+ import type { HtBaseNode, HtNodeLink } from './common.js';
2
+ import type { HtNodeWithContentType } from './node-types.js';
3
3
  export declare enum HtAiValidationType {
4
4
  NONE = "none",
5
5
  NAME = "name",