@botonic/react 0.22.0-alpha.0 → 0.22.0-alpha.1

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 (693) hide show
  1. package/lib/cjs/app.d.ts +2 -0
  2. package/lib/cjs/app.js +10 -0
  3. package/lib/cjs/app.js.map +1 -0
  4. package/lib/cjs/botonic-tester.d.ts +18 -0
  5. package/lib/cjs/botonic-tester.js +70 -0
  6. package/lib/cjs/botonic-tester.js.map +1 -0
  7. package/lib/cjs/components/audio.d.ts +8 -0
  8. package/lib/cjs/components/audio.js +27 -0
  9. package/lib/cjs/components/audio.js.map +1 -0
  10. package/lib/cjs/components/button.d.ts +15 -0
  11. package/lib/cjs/components/button.js +156 -0
  12. package/lib/cjs/components/button.js.map +1 -0
  13. package/lib/cjs/components/buttons-disabler.d.ts +24 -0
  14. package/lib/cjs/components/buttons-disabler.js +88 -0
  15. package/lib/cjs/components/buttons-disabler.js.map +1 -0
  16. package/lib/cjs/components/carousel.d.ts +10 -0
  17. package/lib/cjs/components/carousel.js +120 -0
  18. package/lib/cjs/components/carousel.js.map +1 -0
  19. package/lib/cjs/components/components.d.ts +12 -0
  20. package/lib/{components → cjs/components}/components.js +6 -11
  21. package/lib/cjs/components/components.js.map +1 -0
  22. package/lib/cjs/components/custom-message.d.ts +43 -0
  23. package/lib/cjs/components/custom-message.js +65 -0
  24. package/lib/cjs/components/custom-message.js.map +1 -0
  25. package/lib/cjs/components/document.d.ts +8 -0
  26. package/lib/cjs/components/document.js +50 -0
  27. package/lib/cjs/components/document.js.map +1 -0
  28. package/lib/cjs/components/element.d.ts +4 -0
  29. package/lib/cjs/components/element.js +55 -0
  30. package/lib/cjs/components/element.js.map +1 -0
  31. package/lib/cjs/components/handoff.d.ts +1 -0
  32. package/lib/cjs/components/handoff.js +58 -0
  33. package/lib/cjs/components/handoff.js.map +1 -0
  34. package/lib/cjs/components/image.d.ts +8 -0
  35. package/lib/cjs/components/image.js +42 -0
  36. package/lib/cjs/components/image.js.map +1 -0
  37. package/lib/cjs/components/index.d.ts +20 -0
  38. package/lib/cjs/components/index.js +44 -0
  39. package/lib/cjs/components/index.js.map +1 -0
  40. package/lib/cjs/components/location.d.ts +11 -0
  41. package/lib/cjs/components/location.js +38 -0
  42. package/lib/cjs/components/location.js.map +1 -0
  43. package/lib/cjs/components/markdown.d.ts +7 -0
  44. package/lib/cjs/components/markdown.js +162 -0
  45. package/lib/cjs/components/markdown.js.map +1 -0
  46. package/lib/cjs/components/message-template.d.ts +1 -0
  47. package/lib/cjs/components/message-template.js +15 -0
  48. package/lib/cjs/components/message-template.js.map +1 -0
  49. package/lib/cjs/components/message.d.ts +1 -0
  50. package/lib/cjs/components/message.js +206 -0
  51. package/lib/cjs/components/message.js.map +1 -0
  52. package/lib/cjs/components/multichannel/facebook/facebook.d.ts +17 -0
  53. package/lib/cjs/components/multichannel/facebook/facebook.js +47 -0
  54. package/lib/cjs/components/multichannel/facebook/facebook.js.map +1 -0
  55. package/lib/cjs/components/multichannel/index.d.ts +6 -0
  56. package/lib/cjs/components/multichannel/index.js +14 -0
  57. package/lib/cjs/components/multichannel/index.js.map +1 -0
  58. package/lib/cjs/components/multichannel/multichannel-button.d.ts +1 -0
  59. package/lib/cjs/components/multichannel/multichannel-button.js +77 -0
  60. package/lib/cjs/components/multichannel/multichannel-button.js.map +1 -0
  61. package/lib/cjs/components/multichannel/multichannel-carousel.d.ts +1 -0
  62. package/lib/cjs/components/multichannel/multichannel-carousel.js +95 -0
  63. package/lib/cjs/components/multichannel/multichannel-carousel.js.map +1 -0
  64. package/lib/cjs/components/multichannel/multichannel-context.d.ts +11 -0
  65. package/lib/cjs/components/multichannel/multichannel-context.js +16 -0
  66. package/lib/cjs/components/multichannel/multichannel-context.js.map +1 -0
  67. package/lib/cjs/components/multichannel/multichannel-reply.d.ts +1 -0
  68. package/lib/cjs/components/multichannel/multichannel-reply.js +24 -0
  69. package/lib/cjs/components/multichannel/multichannel-reply.js.map +1 -0
  70. package/lib/cjs/components/multichannel/multichannel-text.d.ts +1 -0
  71. package/lib/cjs/components/multichannel/multichannel-text.js +147 -0
  72. package/lib/cjs/components/multichannel/multichannel-text.js.map +1 -0
  73. package/lib/cjs/components/multichannel/multichannel-utils.d.ts +24 -0
  74. package/lib/cjs/components/multichannel/multichannel-utils.js +83 -0
  75. package/lib/cjs/components/multichannel/multichannel-utils.js.map +1 -0
  76. package/lib/cjs/components/multichannel/multichannel.d.ts +1 -0
  77. package/lib/cjs/components/multichannel/multichannel.js +72 -0
  78. package/lib/cjs/components/multichannel/multichannel.js.map +1 -0
  79. package/lib/cjs/components/pic.d.ts +6 -0
  80. package/lib/cjs/components/pic.js +29 -0
  81. package/lib/cjs/components/pic.js.map +1 -0
  82. package/lib/cjs/components/raw.d.ts +9 -0
  83. package/lib/cjs/components/raw.js +53 -0
  84. package/lib/cjs/components/raw.js.map +1 -0
  85. package/lib/cjs/components/reply.d.ts +9 -0
  86. package/lib/cjs/components/reply.js +57 -0
  87. package/lib/cjs/components/reply.js.map +1 -0
  88. package/lib/cjs/components/share-button.d.ts +1 -0
  89. package/lib/cjs/components/share-button.js +15 -0
  90. package/lib/cjs/components/share-button.js.map +1 -0
  91. package/lib/cjs/components/subtitle.d.ts +6 -0
  92. package/lib/cjs/components/subtitle.js +25 -0
  93. package/lib/cjs/components/subtitle.js.map +1 -0
  94. package/lib/cjs/components/text.d.ts +8 -0
  95. package/lib/cjs/components/text.js +50 -0
  96. package/lib/cjs/components/text.js.map +1 -0
  97. package/lib/cjs/components/timestamps.d.ts +10 -0
  98. package/lib/cjs/components/timestamps.js +54 -0
  99. package/lib/cjs/components/timestamps.js.map +1 -0
  100. package/lib/cjs/components/title.d.ts +6 -0
  101. package/lib/cjs/components/title.js +21 -0
  102. package/lib/cjs/components/title.js.map +1 -0
  103. package/lib/cjs/components/video.d.ts +8 -0
  104. package/lib/cjs/components/video.js +34 -0
  105. package/lib/cjs/components/video.js.map +1 -0
  106. package/lib/cjs/components/webchat-settings.d.ts +10 -0
  107. package/lib/cjs/components/webchat-settings.js +78 -0
  108. package/lib/cjs/components/webchat-settings.js.map +1 -0
  109. package/lib/cjs/components/whatsapp-template.d.ts +1 -0
  110. package/lib/cjs/components/whatsapp-template.js +26 -0
  111. package/lib/cjs/components/whatsapp-template.js.map +1 -0
  112. package/lib/cjs/constants.d.ts +168 -0
  113. package/lib/cjs/constants.js +190 -0
  114. package/lib/cjs/constants.js.map +1 -0
  115. package/lib/cjs/contexts.d.ts +69 -0
  116. package/lib/cjs/contexts.js +38 -0
  117. package/lib/cjs/contexts.js.map +1 -0
  118. package/lib/cjs/dev-app.d.ts +30 -0
  119. package/lib/cjs/dev-app.js +71 -0
  120. package/lib/cjs/dev-app.js.map +1 -0
  121. package/lib/cjs/index.d.ts +10 -0
  122. package/lib/cjs/index.js +28 -0
  123. package/lib/cjs/index.js.map +1 -0
  124. package/lib/cjs/message-utils.d.ts +19 -0
  125. package/lib/cjs/message-utils.js +61 -0
  126. package/lib/cjs/message-utils.js.map +1 -0
  127. package/lib/cjs/msg-to-botonic.d.ts +18 -0
  128. package/lib/cjs/msg-to-botonic.js +160 -0
  129. package/lib/cjs/msg-to-botonic.js.map +1 -0
  130. package/lib/cjs/node-app.d.ts +12 -0
  131. package/lib/cjs/node-app.js +25 -0
  132. package/lib/cjs/node-app.js.map +1 -0
  133. package/lib/cjs/react-bot.d.ts +8 -0
  134. package/lib/cjs/react-bot.js +35 -0
  135. package/lib/cjs/react-bot.js.map +1 -0
  136. package/lib/cjs/util/dom.d.ts +13 -0
  137. package/lib/cjs/util/dom.js +55 -0
  138. package/lib/cjs/util/dom.js.map +1 -0
  139. package/lib/cjs/util/environment.d.ts +6 -0
  140. package/lib/cjs/util/environment.js +68 -0
  141. package/lib/cjs/util/environment.js.map +1 -0
  142. package/lib/cjs/util/error-boundary.d.ts +40 -0
  143. package/lib/cjs/util/error-boundary.js +46 -0
  144. package/lib/cjs/util/error-boundary.js.map +1 -0
  145. package/lib/cjs/util/index.d.ts +0 -0
  146. package/lib/cjs/util/index.js +2 -0
  147. package/lib/cjs/util/index.js.map +1 -0
  148. package/lib/cjs/util/logs.d.ts +2 -0
  149. package/lib/cjs/util/logs.js +20 -0
  150. package/lib/cjs/util/logs.js.map +1 -0
  151. package/lib/cjs/util/objects.d.ts +3 -0
  152. package/lib/cjs/util/objects.js +44 -0
  153. package/lib/cjs/util/objects.js.map +1 -0
  154. package/lib/cjs/util/react.d.ts +12 -0
  155. package/lib/cjs/util/react.js +42 -0
  156. package/lib/cjs/util/react.js.map +1 -0
  157. package/lib/cjs/util/regexs.d.ts +2 -0
  158. package/lib/cjs/util/regexs.js +23 -0
  159. package/lib/cjs/util/regexs.js.map +1 -0
  160. package/lib/cjs/util/webchat.d.ts +11 -0
  161. package/lib/cjs/util/webchat.js +62 -0
  162. package/lib/cjs/util/webchat.js.map +1 -0
  163. package/lib/cjs/webchat/actions.d.ts +23 -0
  164. package/lib/cjs/webchat/actions.js +27 -0
  165. package/lib/cjs/webchat/actions.js.map +1 -0
  166. package/lib/cjs/webchat/components/attachment.d.ts +5 -0
  167. package/lib/cjs/webchat/components/attachment.js +32 -0
  168. package/lib/cjs/webchat/components/attachment.js.map +1 -0
  169. package/lib/cjs/webchat/components/common.d.ts +1 -0
  170. package/lib/cjs/webchat/components/common.js +13 -0
  171. package/lib/cjs/webchat/components/common.js.map +1 -0
  172. package/lib/cjs/webchat/components/conditional-animation.d.ts +1 -0
  173. package/lib/cjs/webchat/components/conditional-animation.js +18 -0
  174. package/lib/cjs/webchat/components/conditional-animation.js.map +1 -0
  175. package/lib/cjs/webchat/components/emoji-picker.d.ts +5 -0
  176. package/lib/cjs/webchat/components/emoji-picker.js +52 -0
  177. package/lib/cjs/webchat/components/emoji-picker.js.map +1 -0
  178. package/lib/cjs/webchat/components/persistent-menu.d.ts +10 -0
  179. package/lib/cjs/webchat/components/persistent-menu.js +59 -0
  180. package/lib/cjs/webchat/components/persistent-menu.js.map +1 -0
  181. package/lib/cjs/webchat/components/send-button.d.ts +3 -0
  182. package/lib/cjs/webchat/components/send-button.js +24 -0
  183. package/lib/cjs/webchat/components/send-button.js.map +1 -0
  184. package/lib/cjs/webchat/components/styled-scrollbar.d.ts +1 -0
  185. package/lib/cjs/webchat/components/styled-scrollbar.js +54 -0
  186. package/lib/cjs/webchat/components/styled-scrollbar.js.map +1 -0
  187. package/lib/cjs/webchat/components/typing-indicator.d.ts +1 -0
  188. package/lib/cjs/webchat/components/typing-indicator.js +14 -0
  189. package/lib/cjs/webchat/components/typing-indicator.js.map +1 -0
  190. package/lib/cjs/webchat/devices/device-adapter.d.ts +12 -0
  191. package/lib/cjs/webchat/devices/device-adapter.js +47 -0
  192. package/lib/cjs/webchat/devices/device-adapter.js.map +1 -0
  193. package/lib/cjs/webchat/devices/index.d.ts +11 -0
  194. package/lib/cjs/webchat/devices/index.js +23 -0
  195. package/lib/cjs/webchat/devices/index.js.map +1 -0
  196. package/lib/cjs/webchat/devices/scrollbar-controller.d.ts +12 -0
  197. package/lib/cjs/webchat/devices/scrollbar-controller.js +103 -0
  198. package/lib/cjs/webchat/devices/scrollbar-controller.js.map +1 -0
  199. package/lib/cjs/webchat/devices/webchat-resizer.d.ts +9 -0
  200. package/lib/cjs/webchat/devices/webchat-resizer.js +47 -0
  201. package/lib/cjs/webchat/devices/webchat-resizer.js.map +1 -0
  202. package/lib/cjs/webchat/header.d.ts +3 -0
  203. package/lib/cjs/webchat/header.js +95 -0
  204. package/lib/cjs/webchat/header.js.map +1 -0
  205. package/lib/cjs/webchat/hooks.d.ts +80 -0
  206. package/lib/cjs/webchat/hooks.js +218 -0
  207. package/lib/cjs/webchat/hooks.js.map +1 -0
  208. package/lib/cjs/webchat/index.d.ts +6 -0
  209. package/lib/cjs/webchat/index.js +17 -0
  210. package/lib/cjs/webchat/index.js.map +1 -0
  211. package/lib/cjs/webchat/message-list.d.ts +1 -0
  212. package/lib/cjs/webchat/message-list.js +46 -0
  213. package/lib/cjs/webchat/message-list.js.map +1 -0
  214. package/lib/cjs/webchat/messages-reducer.d.ts +1 -0
  215. package/lib/cjs/webchat/messages-reducer.js +58 -0
  216. package/lib/cjs/webchat/messages-reducer.js.map +1 -0
  217. package/lib/cjs/webchat/replies.d.ts +1 -0
  218. package/lib/cjs/webchat/replies.js +46 -0
  219. package/lib/cjs/webchat/replies.js.map +1 -0
  220. package/lib/cjs/webchat/session-view.d.ts +1 -0
  221. package/lib/cjs/webchat/session-view.js +124 -0
  222. package/lib/cjs/webchat/session-view.js.map +1 -0
  223. package/lib/cjs/webchat/use-storage-state-hook.d.ts +1 -0
  224. package/lib/cjs/webchat/use-storage-state-hook.js +32 -0
  225. package/lib/cjs/webchat/use-storage-state-hook.js.map +1 -0
  226. package/lib/cjs/webchat/webchat-dev.d.ts +7 -0
  227. package/lib/cjs/webchat/webchat-dev.js +64 -0
  228. package/lib/cjs/webchat/webchat-dev.js.map +1 -0
  229. package/lib/cjs/webchat/webchat-reducer.d.ts +1 -0
  230. package/lib/cjs/webchat/webchat-reducer.js +48 -0
  231. package/lib/cjs/webchat/webchat-reducer.js.map +1 -0
  232. package/lib/cjs/webchat/webchat.d.ts +3 -0
  233. package/lib/cjs/webchat/webchat.js +704 -0
  234. package/lib/cjs/webchat/webchat.js.map +1 -0
  235. package/lib/cjs/webchat/webview.d.ts +2 -0
  236. package/lib/cjs/webchat/webview.js +92 -0
  237. package/lib/cjs/webchat/webview.js.map +1 -0
  238. package/lib/cjs/webchat-app.d.ts +99 -0
  239. package/lib/cjs/webchat-app.js +269 -0
  240. package/lib/cjs/webchat-app.js.map +1 -0
  241. package/lib/cjs/webview-app.d.ts +7 -0
  242. package/lib/cjs/webview-app.js +103 -0
  243. package/lib/cjs/webview-app.js.map +1 -0
  244. package/lib/esm/app.d.ts +2 -0
  245. package/lib/esm/app.js +6 -0
  246. package/lib/esm/app.js.map +1 -0
  247. package/lib/esm/assets/attachment-icon.svg +7 -0
  248. package/lib/esm/assets/audio.svg +4 -0
  249. package/lib/esm/assets/botonic_react_logo100x100.png +0 -0
  250. package/lib/esm/assets/document.svg +3 -0
  251. package/lib/esm/assets/emojiButton.svg +6 -0
  252. package/lib/esm/assets/image.svg +4 -0
  253. package/lib/esm/assets/leftArrow.svg +3 -0
  254. package/lib/esm/assets/menuButton.svg +3 -0
  255. package/lib/esm/assets/rightArrow.svg +3 -0
  256. package/lib/esm/assets/send-button.svg +1 -0
  257. package/lib/esm/assets/video.svg +3 -0
  258. package/lib/esm/botonic-tester.d.ts +18 -0
  259. package/lib/esm/botonic-tester.js +64 -0
  260. package/lib/esm/botonic-tester.js.map +1 -0
  261. package/lib/esm/components/audio.d.ts +8 -0
  262. package/lib/esm/components/audio.js +22 -0
  263. package/lib/esm/components/audio.js.map +1 -0
  264. package/lib/esm/components/button.d.ts +15 -0
  265. package/lib/esm/components/button.js +151 -0
  266. package/lib/esm/components/button.js.map +1 -0
  267. package/lib/esm/components/buttons-disabler.d.ts +24 -0
  268. package/lib/esm/components/buttons-disabler.js +84 -0
  269. package/lib/esm/components/buttons-disabler.js.map +1 -0
  270. package/lib/esm/components/carousel.d.ts +9 -0
  271. package/lib/esm/components/carousel.js +115 -0
  272. package/lib/esm/components/carousel.js.map +1 -0
  273. package/lib/esm/components/components.d.ts +12 -0
  274. package/lib/esm/components/components.js +17 -0
  275. package/lib/esm/components/components.js.map +1 -0
  276. package/lib/esm/components/custom-message.d.ts +43 -0
  277. package/lib/esm/components/custom-message.js +61 -0
  278. package/lib/esm/components/custom-message.js.map +1 -0
  279. package/lib/esm/components/document.d.ts +8 -0
  280. package/lib/esm/components/document.js +45 -0
  281. package/lib/esm/components/document.js.map +1 -0
  282. package/lib/esm/components/element.d.ts +4 -0
  283. package/lib/esm/components/element.js +50 -0
  284. package/lib/esm/components/element.js.map +1 -0
  285. package/lib/esm/components/handoff.d.ts +1 -0
  286. package/lib/esm/components/handoff.js +53 -0
  287. package/lib/esm/components/handoff.js.map +1 -0
  288. package/lib/esm/components/image.d.ts +8 -0
  289. package/lib/esm/components/image.js +37 -0
  290. package/lib/esm/components/image.js.map +1 -0
  291. package/lib/esm/components/index.d.ts +19 -0
  292. package/lib/esm/components/index.js +21 -0
  293. package/lib/esm/components/index.js.map +1 -0
  294. package/lib/esm/components/location.d.ts +11 -0
  295. package/lib/esm/components/location.js +33 -0
  296. package/lib/esm/components/location.js.map +1 -0
  297. package/lib/esm/components/markdown.d.ts +7 -0
  298. package/lib/esm/components/markdown.js +152 -0
  299. package/lib/esm/components/markdown.js.map +1 -0
  300. package/lib/esm/components/message-template.d.ts +1 -0
  301. package/lib/esm/components/message-template.js +10 -0
  302. package/lib/esm/components/message-template.js.map +1 -0
  303. package/lib/esm/components/message.d.ts +1 -0
  304. package/lib/esm/components/message.js +202 -0
  305. package/lib/esm/components/message.js.map +1 -0
  306. package/lib/esm/components/multichannel/facebook/facebook.d.ts +17 -0
  307. package/lib/esm/components/multichannel/facebook/facebook.js +43 -0
  308. package/lib/esm/components/multichannel/facebook/facebook.js.map +1 -0
  309. package/lib/esm/components/multichannel/index.d.ts +6 -0
  310. package/lib/esm/components/multichannel/index.js +11 -0
  311. package/lib/esm/components/multichannel/index.js.map +1 -0
  312. package/lib/esm/components/multichannel/multichannel-button.d.ts +1 -0
  313. package/lib/esm/components/multichannel/multichannel-button.js +72 -0
  314. package/lib/esm/components/multichannel/multichannel-button.js.map +1 -0
  315. package/lib/esm/components/multichannel/multichannel-carousel.d.ts +1 -0
  316. package/lib/esm/components/multichannel/multichannel-carousel.js +90 -0
  317. package/lib/esm/components/multichannel/multichannel-carousel.js.map +1 -0
  318. package/lib/esm/components/multichannel/multichannel-context.d.ts +11 -0
  319. package/lib/esm/components/multichannel/multichannel-context.js +12 -0
  320. package/lib/esm/components/multichannel/multichannel-context.js.map +1 -0
  321. package/lib/esm/components/multichannel/multichannel-reply.d.ts +1 -0
  322. package/lib/esm/components/multichannel/multichannel-reply.js +19 -0
  323. package/lib/esm/components/multichannel/multichannel-reply.js.map +1 -0
  324. package/lib/esm/components/multichannel/multichannel-text.d.ts +1 -0
  325. package/lib/esm/components/multichannel/multichannel-text.js +142 -0
  326. package/lib/esm/components/multichannel/multichannel-text.js.map +1 -0
  327. package/lib/esm/components/multichannel/multichannel-utils.d.ts +24 -0
  328. package/lib/esm/components/multichannel/multichannel-utils.js +67 -0
  329. package/lib/esm/components/multichannel/multichannel-utils.js.map +1 -0
  330. package/lib/esm/components/multichannel/multichannel.d.ts +1 -0
  331. package/lib/esm/components/multichannel/multichannel.js +67 -0
  332. package/lib/esm/components/multichannel/multichannel.js.map +1 -0
  333. package/lib/esm/components/pic.d.ts +6 -0
  334. package/lib/esm/components/pic.js +24 -0
  335. package/lib/esm/components/pic.js.map +1 -0
  336. package/lib/esm/components/raw.d.ts +9 -0
  337. package/lib/esm/components/raw.js +48 -0
  338. package/lib/esm/components/raw.js.map +1 -0
  339. package/lib/esm/components/reply.d.ts +9 -0
  340. package/lib/esm/components/reply.js +52 -0
  341. package/lib/esm/components/reply.js.map +1 -0
  342. package/lib/esm/components/share-button.d.ts +1 -0
  343. package/lib/esm/components/share-button.js +10 -0
  344. package/lib/esm/components/share-button.js.map +1 -0
  345. package/lib/esm/components/subtitle.d.ts +6 -0
  346. package/lib/esm/components/subtitle.js +20 -0
  347. package/lib/esm/components/subtitle.js.map +1 -0
  348. package/lib/esm/components/text.d.ts +8 -0
  349. package/lib/esm/components/text.js +45 -0
  350. package/lib/esm/components/text.js.map +1 -0
  351. package/lib/esm/components/timestamps.d.ts +10 -0
  352. package/lib/esm/components/timestamps.js +48 -0
  353. package/lib/esm/components/timestamps.js.map +1 -0
  354. package/lib/esm/components/title.d.ts +6 -0
  355. package/lib/esm/components/title.js +16 -0
  356. package/lib/esm/components/title.js.map +1 -0
  357. package/lib/esm/components/video.d.ts +8 -0
  358. package/lib/esm/components/video.js +29 -0
  359. package/lib/esm/components/video.js.map +1 -0
  360. package/lib/esm/components/webchat-settings.d.ts +10 -0
  361. package/lib/esm/components/webchat-settings.js +72 -0
  362. package/lib/esm/components/webchat-settings.js.map +1 -0
  363. package/lib/esm/components/whatsapp-template.d.ts +1 -0
  364. package/lib/esm/components/whatsapp-template.js +21 -0
  365. package/lib/esm/components/whatsapp-template.js.map +1 -0
  366. package/lib/esm/constants.d.ts +168 -0
  367. package/lib/esm/constants.js +186 -0
  368. package/lib/esm/constants.js.map +1 -0
  369. package/lib/esm/contexts.d.ts +69 -0
  370. package/lib/esm/contexts.js +34 -0
  371. package/lib/esm/contexts.js.map +1 -0
  372. package/lib/esm/dev-app.d.ts +30 -0
  373. package/lib/esm/dev-app.js +67 -0
  374. package/lib/esm/dev-app.js.map +1 -0
  375. package/lib/esm/index.d.ts +9 -0
  376. package/lib/esm/index.js +11 -0
  377. package/lib/esm/index.js.map +1 -0
  378. package/lib/esm/message-utils.d.ts +18 -0
  379. package/lib/esm/message-utils.js +41 -0
  380. package/lib/esm/message-utils.js.map +1 -0
  381. package/lib/esm/msg-to-botonic.d.ts +18 -0
  382. package/lib/esm/msg-to-botonic.js +154 -0
  383. package/lib/esm/msg-to-botonic.js.map +1 -0
  384. package/lib/esm/node-app.d.ts +12 -0
  385. package/lib/esm/node-app.js +21 -0
  386. package/lib/esm/node-app.js.map +1 -0
  387. package/lib/esm/react-bot.d.ts +7 -0
  388. package/lib/esm/react-bot.js +30 -0
  389. package/lib/esm/react-bot.js.map +1 -0
  390. package/lib/esm/util/dom.d.ts +13 -0
  391. package/lib/esm/util/dom.js +46 -0
  392. package/lib/esm/util/dom.js.map +1 -0
  393. package/lib/esm/util/environment.d.ts +6 -0
  394. package/lib/esm/util/environment.js +61 -0
  395. package/lib/esm/util/environment.js.map +1 -0
  396. package/lib/esm/util/error-boundary.d.ts +40 -0
  397. package/lib/esm/util/error-boundary.js +41 -0
  398. package/lib/esm/util/error-boundary.js.map +1 -0
  399. package/lib/esm/util/index.d.ts +0 -0
  400. package/lib/esm/util/index.js +2 -0
  401. package/lib/esm/util/index.js.map +1 -0
  402. package/lib/esm/util/logs.d.ts +2 -0
  403. package/lib/esm/util/logs.js +15 -0
  404. package/lib/esm/util/logs.js.map +1 -0
  405. package/lib/esm/util/objects.d.ts +3 -0
  406. package/lib/esm/util/objects.js +38 -0
  407. package/lib/esm/util/objects.js.map +1 -0
  408. package/lib/esm/util/react.d.ts +12 -0
  409. package/lib/esm/util/react.js +34 -0
  410. package/lib/esm/util/react.js.map +1 -0
  411. package/lib/esm/util/regexs.d.ts +2 -0
  412. package/lib/esm/util/regexs.js +18 -0
  413. package/lib/esm/util/regexs.js.map +1 -0
  414. package/lib/esm/util/webchat.d.ts +11 -0
  415. package/lib/esm/util/webchat.js +53 -0
  416. package/lib/esm/util/webchat.js.map +1 -0
  417. package/lib/esm/webchat/actions.d.ts +23 -0
  418. package/lib/esm/webchat/actions.js +24 -0
  419. package/lib/esm/webchat/actions.js.map +1 -0
  420. package/lib/esm/webchat/components/attachment.d.ts +5 -0
  421. package/lib/esm/webchat/components/attachment.js +27 -0
  422. package/lib/esm/webchat/components/attachment.js.map +1 -0
  423. package/lib/esm/webchat/components/common.d.ts +1 -0
  424. package/lib/esm/webchat/components/common.js +8 -0
  425. package/lib/esm/webchat/components/common.js.map +1 -0
  426. package/lib/esm/webchat/components/conditional-animation.d.ts +1 -0
  427. package/lib/esm/webchat/components/conditional-animation.js +13 -0
  428. package/lib/esm/webchat/components/conditional-animation.js.map +1 -0
  429. package/lib/esm/webchat/components/emoji-picker.d.ts +5 -0
  430. package/lib/esm/webchat/components/emoji-picker.js +46 -0
  431. package/lib/esm/webchat/components/emoji-picker.js.map +1 -0
  432. package/lib/esm/webchat/components/persistent-menu.d.ts +10 -0
  433. package/lib/esm/webchat/components/persistent-menu.js +53 -0
  434. package/lib/esm/webchat/components/persistent-menu.js.map +1 -0
  435. package/lib/esm/webchat/components/send-button.d.ts +3 -0
  436. package/lib/esm/webchat/components/send-button.js +19 -0
  437. package/lib/esm/webchat/components/send-button.js.map +1 -0
  438. package/lib/esm/webchat/components/styled-scrollbar.d.ts +1 -0
  439. package/lib/esm/webchat/components/styled-scrollbar.js +50 -0
  440. package/lib/esm/webchat/components/styled-scrollbar.js.map +1 -0
  441. package/lib/esm/webchat/components/styled-scrollbar.scss +12 -0
  442. package/lib/esm/webchat/components/typing-indicator.d.ts +1 -0
  443. package/lib/esm/webchat/components/typing-indicator.js +9 -0
  444. package/lib/esm/webchat/components/typing-indicator.js.map +1 -0
  445. package/lib/esm/webchat/components/typing-indicator.scss +38 -0
  446. package/lib/esm/webchat/devices/device-adapter.d.ts +12 -0
  447. package/lib/esm/webchat/devices/device-adapter.js +43 -0
  448. package/lib/esm/webchat/devices/device-adapter.js.map +1 -0
  449. package/lib/esm/webchat/devices/index.d.ts +11 -0
  450. package/lib/esm/webchat/devices/index.js +18 -0
  451. package/lib/esm/webchat/devices/index.js.map +1 -0
  452. package/lib/esm/webchat/devices/scrollbar-controller.d.ts +12 -0
  453. package/lib/esm/webchat/devices/scrollbar-controller.js +99 -0
  454. package/lib/esm/webchat/devices/scrollbar-controller.js.map +1 -0
  455. package/lib/esm/webchat/devices/webchat-resizer.d.ts +9 -0
  456. package/lib/esm/webchat/devices/webchat-resizer.js +43 -0
  457. package/lib/esm/webchat/devices/webchat-resizer.js.map +1 -0
  458. package/lib/esm/webchat/header.d.ts +3 -0
  459. package/lib/esm/webchat/header.js +89 -0
  460. package/lib/esm/webchat/header.js.map +1 -0
  461. package/lib/esm/webchat/hooks.d.ts +80 -0
  462. package/lib/esm/webchat/hooks.js +210 -0
  463. package/lib/esm/webchat/hooks.js.map +1 -0
  464. package/lib/esm/webchat/index.d.ts +6 -0
  465. package/lib/esm/webchat/index.js +11 -0
  466. package/lib/esm/webchat/index.js.map +1 -0
  467. package/lib/esm/webchat/message-list.d.ts +1 -0
  468. package/lib/esm/webchat/message-list.js +41 -0
  469. package/lib/esm/webchat/message-list.js.map +1 -0
  470. package/lib/esm/webchat/messages-reducer.d.ts +1 -0
  471. package/lib/esm/webchat/messages-reducer.js +54 -0
  472. package/lib/esm/webchat/messages-reducer.js.map +1 -0
  473. package/lib/esm/webchat/replies.d.ts +1 -0
  474. package/lib/esm/webchat/replies.js +41 -0
  475. package/lib/esm/webchat/replies.js.map +1 -0
  476. package/lib/esm/webchat/session-view.d.ts +1 -0
  477. package/lib/esm/webchat/session-view.js +119 -0
  478. package/lib/esm/webchat/session-view.js.map +1 -0
  479. package/lib/esm/webchat/use-storage-state-hook.d.ts +1 -0
  480. package/lib/esm/webchat/use-storage-state-hook.js +28 -0
  481. package/lib/esm/webchat/use-storage-state-hook.js.map +1 -0
  482. package/lib/esm/webchat/webchat-dev.d.ts +7 -0
  483. package/lib/esm/webchat/webchat-dev.js +60 -0
  484. package/lib/esm/webchat/webchat-dev.js.map +1 -0
  485. package/lib/esm/webchat/webchat-reducer.d.ts +1 -0
  486. package/lib/esm/webchat/webchat-reducer.js +44 -0
  487. package/lib/esm/webchat/webchat-reducer.js.map +1 -0
  488. package/lib/esm/webchat/webchat.d.ts +3 -0
  489. package/lib/esm/webchat/webchat.js +699 -0
  490. package/lib/esm/webchat/webchat.js.map +1 -0
  491. package/lib/esm/webchat/webview.d.ts +2 -0
  492. package/lib/esm/webchat/webview.js +86 -0
  493. package/lib/esm/webchat/webview.js.map +1 -0
  494. package/lib/esm/webchat-app.d.ts +98 -0
  495. package/lib/esm/webchat-app.js +265 -0
  496. package/lib/esm/webchat-app.js.map +1 -0
  497. package/lib/esm/webchat.template.html +37 -0
  498. package/lib/esm/webview-app.d.ts +7 -0
  499. package/lib/esm/webview-app.js +98 -0
  500. package/lib/esm/webview-app.js.map +1 -0
  501. package/lib/esm/webview.template.html +39 -0
  502. package/package.json +27 -20
  503. package/src/components/audio.jsx +2 -0
  504. package/src/components/document.jsx +2 -0
  505. package/src/components/image.jsx +2 -0
  506. package/src/components/location.jsx +2 -2
  507. package/src/components/pic.jsx +3 -1
  508. package/src/components/video.jsx +2 -0
  509. package/src/index.js +1 -1
  510. package/src/msg-to-botonic.jsx +1 -1
  511. package/src/util/environment.js +31 -2
  512. package/src/{webview.jsx → webview-app.tsx} +7 -1
  513. package/lib/app.js +0 -19
  514. package/lib/app.js.map +0 -1
  515. package/lib/botonic-tester.js +0 -224
  516. package/lib/botonic-tester.js.map +0 -1
  517. package/lib/components/audio.js +0 -48
  518. package/lib/components/audio.js.map +0 -1
  519. package/lib/components/button.js +0 -224
  520. package/lib/components/button.js.map +0 -1
  521. package/lib/components/buttons-disabler.js +0 -133
  522. package/lib/components/buttons-disabler.js.map +0 -1
  523. package/lib/components/carousel.js +0 -194
  524. package/lib/components/carousel.js.map +0 -1
  525. package/lib/components/components.js.map +0 -1
  526. package/lib/components/custom-message.js +0 -131
  527. package/lib/components/custom-message.js.map +0 -1
  528. package/lib/components/document.js +0 -76
  529. package/lib/components/document.js.map +0 -1
  530. package/lib/components/element.js +0 -69
  531. package/lib/components/element.js.map +0 -1
  532. package/lib/components/handoff.js +0 -69
  533. package/lib/components/handoff.js.map +0 -1
  534. package/lib/components/image.js +0 -91
  535. package/lib/components/image.js.map +0 -1
  536. package/lib/components/index.d.ts +0 -228
  537. package/lib/components/index.js +0 -193
  538. package/lib/components/index.js.map +0 -1
  539. package/lib/components/location.js +0 -69
  540. package/lib/components/location.js.map +0 -1
  541. package/lib/components/markdown.js +0 -108
  542. package/lib/components/markdown.js.map +0 -1
  543. package/lib/components/message-template.js +0 -36
  544. package/lib/components/message-template.js.map +0 -1
  545. package/lib/components/message.js +0 -351
  546. package/lib/components/message.js.map +0 -1
  547. package/lib/components/multichannel/facebook/facebook.js +0 -96
  548. package/lib/components/multichannel/facebook/facebook.js.map +0 -1
  549. package/lib/components/multichannel/index.d.ts +0 -65
  550. package/lib/components/multichannel/index.js +0 -46
  551. package/lib/components/multichannel/index.js.map +0 -1
  552. package/lib/components/multichannel/multichannel-button.js +0 -119
  553. package/lib/components/multichannel/multichannel-button.js.map +0 -1
  554. package/lib/components/multichannel/multichannel-carousel.js +0 -143
  555. package/lib/components/multichannel/multichannel-carousel.js.map +0 -1
  556. package/lib/components/multichannel/multichannel-context.js +0 -24
  557. package/lib/components/multichannel/multichannel-context.js.map +0 -1
  558. package/lib/components/multichannel/multichannel-reply.js +0 -46
  559. package/lib/components/multichannel/multichannel-reply.js.map +0 -1
  560. package/lib/components/multichannel/multichannel-text.js +0 -222
  561. package/lib/components/multichannel/multichannel-text.js.map +0 -1
  562. package/lib/components/multichannel/multichannel-utils.js +0 -126
  563. package/lib/components/multichannel/multichannel-utils.js.map +0 -1
  564. package/lib/components/multichannel/multichannel.js +0 -111
  565. package/lib/components/multichannel/multichannel.js.map +0 -1
  566. package/lib/components/pic.js +0 -50
  567. package/lib/components/pic.js.map +0 -1
  568. package/lib/components/raw.js +0 -70
  569. package/lib/components/raw.js.map +0 -1
  570. package/lib/components/reply.js +0 -107
  571. package/lib/components/reply.js.map +0 -1
  572. package/lib/components/share-button.js +0 -36
  573. package/lib/components/share-button.js.map +0 -1
  574. package/lib/components/subtitle.js +0 -54
  575. package/lib/components/subtitle.js.map +0 -1
  576. package/lib/components/text.js +0 -80
  577. package/lib/components/text.js.map +0 -1
  578. package/lib/components/timestamps.js +0 -69
  579. package/lib/components/timestamps.js.map +0 -1
  580. package/lib/components/title.js +0 -52
  581. package/lib/components/title.js.map +0 -1
  582. package/lib/components/video.js +0 -51
  583. package/lib/components/video.js.map +0 -1
  584. package/lib/components/webchat-settings.js +0 -118
  585. package/lib/components/webchat-settings.js.map +0 -1
  586. package/lib/components/whatsapp-template.js +0 -53
  587. package/lib/components/whatsapp-template.js.map +0 -1
  588. package/lib/constants.js +0 -203
  589. package/lib/constants.js.map +0 -1
  590. package/lib/contexts.js +0 -57
  591. package/lib/contexts.js.map +0 -1
  592. package/lib/dev-app.js +0 -241
  593. package/lib/dev-app.js.map +0 -1
  594. package/lib/index.d.ts +0 -238
  595. package/lib/index.js +0 -131
  596. package/lib/index.js.map +0 -1
  597. package/lib/message-utils.js +0 -149
  598. package/lib/message-utils.js.map +0 -1
  599. package/lib/msg-to-botonic.js +0 -199
  600. package/lib/msg-to-botonic.js.map +0 -1
  601. package/lib/node-app.js +0 -97
  602. package/lib/node-app.js.map +0 -1
  603. package/lib/react-bot.js +0 -167
  604. package/lib/react-bot.js.map +0 -1
  605. package/lib/util/dom.js +0 -84
  606. package/lib/util/dom.js.map +0 -1
  607. package/lib/util/environment.js +0 -42
  608. package/lib/util/environment.js.map +0 -1
  609. package/lib/util/error-boundary.js +0 -105
  610. package/lib/util/error-boundary.js.map +0 -1
  611. package/lib/util/index.d.ts +0 -9
  612. package/lib/util/index.js +0 -2
  613. package/lib/util/index.js.map +0 -1
  614. package/lib/util/logs.js +0 -28
  615. package/lib/util/logs.js.map +0 -1
  616. package/lib/util/objects.js +0 -60
  617. package/lib/util/objects.js.map +0 -1
  618. package/lib/util/react.js +0 -75
  619. package/lib/util/react.js.map +0 -1
  620. package/lib/util/regexs.js +0 -31
  621. package/lib/util/regexs.js.map +0 -1
  622. package/lib/util/webchat.js +0 -92
  623. package/lib/util/webchat.js.map +0 -1
  624. package/lib/webchat/actions.js +0 -53
  625. package/lib/webchat/actions.js.map +0 -1
  626. package/lib/webchat/components/attachment.js +0 -68
  627. package/lib/webchat/components/attachment.js.map +0 -1
  628. package/lib/webchat/components/common.js +0 -29
  629. package/lib/webchat/components/common.js.map +0 -1
  630. package/lib/webchat/components/conditional-animation.js +0 -42
  631. package/lib/webchat/components/conditional-animation.js.map +0 -1
  632. package/lib/webchat/components/emoji-picker.js +0 -89
  633. package/lib/webchat/components/emoji-picker.js.map +0 -1
  634. package/lib/webchat/components/persistent-menu.js +0 -104
  635. package/lib/webchat/components/persistent-menu.js.map +0 -1
  636. package/lib/webchat/components/send-button.js +0 -45
  637. package/lib/webchat/components/send-button.js.map +0 -1
  638. package/lib/webchat/components/styled-scrollbar.js +0 -55
  639. package/lib/webchat/components/styled-scrollbar.js.map +0 -1
  640. package/lib/webchat/components/typing-indicator.js +0 -27
  641. package/lib/webchat/components/typing-indicator.js.map +0 -1
  642. package/lib/webchat/devices/device-adapter.js +0 -82
  643. package/lib/webchat/devices/device-adapter.js.map +0 -1
  644. package/lib/webchat/devices/index.js +0 -32
  645. package/lib/webchat/devices/index.js.map +0 -1
  646. package/lib/webchat/devices/scrollbar-controller.js +0 -152
  647. package/lib/webchat/devices/scrollbar-controller.js.map +0 -1
  648. package/lib/webchat/devices/webchat-resizer.js +0 -76
  649. package/lib/webchat/devices/webchat-resizer.js.map +0 -1
  650. package/lib/webchat/header.js +0 -116
  651. package/lib/webchat/header.js.map +0 -1
  652. package/lib/webchat/hooks.js +0 -359
  653. package/lib/webchat/hooks.js.map +0 -1
  654. package/lib/webchat/index.d.ts +0 -62
  655. package/lib/webchat/index.js +0 -32
  656. package/lib/webchat/index.js.map +0 -1
  657. package/lib/webchat/message-list.js +0 -88
  658. package/lib/webchat/message-list.js.map +0 -1
  659. package/lib/webchat/messages-reducer.js +0 -93
  660. package/lib/webchat/messages-reducer.js.map +0 -1
  661. package/lib/webchat/replies.js +0 -78
  662. package/lib/webchat/replies.js.map +0 -1
  663. package/lib/webchat/session-view.js +0 -106
  664. package/lib/webchat/session-view.js.map +0 -1
  665. package/lib/webchat/use-storage-state-hook.js +0 -60
  666. package/lib/webchat/use-storage-state-hook.js.map +0 -1
  667. package/lib/webchat/webchat-dev.js +0 -109
  668. package/lib/webchat/webchat-dev.js.map +0 -1
  669. package/lib/webchat/webchat-reducer.js +0 -108
  670. package/lib/webchat/webchat-reducer.js.map +0 -1
  671. package/lib/webchat/webchat.js +0 -1108
  672. package/lib/webchat/webchat.js.map +0 -1
  673. package/lib/webchat/webview.js +0 -122
  674. package/lib/webchat/webview.js.map +0 -1
  675. package/lib/webchat-app.js +0 -660
  676. package/lib/webchat-app.js.map +0 -1
  677. package/lib/webview.js +0 -231
  678. package/lib/webview.js.map +0 -1
  679. /package/lib/{assets → cjs/assets}/attachment-icon.svg +0 -0
  680. /package/lib/{assets → cjs/assets}/audio.svg +0 -0
  681. /package/lib/{assets → cjs/assets}/botonic_react_logo100x100.png +0 -0
  682. /package/lib/{assets → cjs/assets}/document.svg +0 -0
  683. /package/lib/{assets → cjs/assets}/emojiButton.svg +0 -0
  684. /package/lib/{assets → cjs/assets}/image.svg +0 -0
  685. /package/lib/{assets → cjs/assets}/leftArrow.svg +0 -0
  686. /package/lib/{assets → cjs/assets}/menuButton.svg +0 -0
  687. /package/lib/{assets → cjs/assets}/rightArrow.svg +0 -0
  688. /package/lib/{assets → cjs/assets}/send-button.svg +0 -0
  689. /package/lib/{assets → cjs/assets}/video.svg +0 -0
  690. /package/lib/{webchat → cjs/webchat}/components/styled-scrollbar.scss +0 -0
  691. /package/lib/{webchat → cjs/webchat}/components/typing-indicator.scss +0 -0
  692. /package/lib/{webchat.template.html → cjs/webchat.template.html} +0 -0
  693. /package/lib/{webview.template.html → cjs/webview.template.html} +0 -0
@@ -1,96 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.MultichannelFacebook = exports.MAX_CHARACTERS_FACEBOOK = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
17
-
18
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
-
20
- var MAX_CHARACTERS_FACEBOOK = 640;
21
- exports.MAX_CHARACTERS_FACEBOOK = MAX_CHARACTERS_FACEBOOK;
22
-
23
- var MultichannelFacebook = /*#__PURE__*/function () {
24
- function MultichannelFacebook() {
25
- (0, _classCallCheck2["default"])(this, MultichannelFacebook);
26
- }
27
-
28
- (0, _createClass2["default"])(MultichannelFacebook, [{
29
- key: "convertText",
30
- value: function convertText(props, originalText) {
31
- if (originalText.length > MAX_CHARACTERS_FACEBOOK) {
32
- var texts = this.splitText(originalText);
33
- var lastText = texts.pop();
34
-
35
- var _this$getNewProps = this.getNewProps(props, lastText),
36
- propsLastText = _this$getNewProps.propsLastText,
37
- propsWithoutChildren = _this$getNewProps.propsWithoutChildren;
38
-
39
- return {
40
- texts: texts,
41
- propsLastText: propsLastText,
42
- propsWithoutChildren: propsWithoutChildren
43
- };
44
- }
45
-
46
- return {
47
- propsLastText: props
48
- };
49
- }
50
- }, {
51
- key: "splitText",
52
- value: function splitText(originalText) {
53
- var lines = originalText.split('\n');
54
- var initialText = lines.shift();
55
- var texts = [initialText];
56
- var index = 0;
57
- lines.forEach(function (currentText) {
58
- if (texts[index].length + currentText.length > MAX_CHARACTERS_FACEBOOK) {
59
- index++;
60
- texts.push(currentText);
61
- } else {
62
- texts[index] = texts[index].concat('\n', currentText);
63
- }
64
- });
65
- return texts;
66
- } // modifies the props to keep the children only for the last text message, this message will be the one with buttons and replies
67
-
68
- }, {
69
- key: "getNewProps",
70
- value: function getNewProps(props, lastText) {
71
- var propsLastText = _objectSpread({}, props);
72
-
73
- propsLastText.children = [lastText];
74
-
75
- if (Array.isArray(props.children)) {
76
- props.children.filter(function (e) {
77
- return e.type;
78
- }).forEach(function (e) {
79
- return propsLastText.children.push(e);
80
- });
81
- }
82
-
83
- var propsWithoutChildren = _objectSpread({}, props);
84
-
85
- delete propsWithoutChildren.children;
86
- return {
87
- propsLastText: propsLastText,
88
- propsWithoutChildren: propsWithoutChildren
89
- };
90
- }
91
- }]);
92
- return MultichannelFacebook;
93
- }();
94
-
95
- exports.MultichannelFacebook = MultichannelFacebook;
96
- //# sourceMappingURL=facebook.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/multichannel/facebook/facebook.jsx"],"names":["MAX_CHARACTERS_FACEBOOK","MultichannelFacebook","props","originalText","length","texts","splitText","lastText","pop","getNewProps","propsLastText","propsWithoutChildren","lines","split","initialText","shift","index","forEach","currentText","push","concat","children","Array","isArray","filter","e","type"],"mappings":";;;;;;;;;;;;;;;;;;;AAAO,IAAMA,uBAAuB,GAAG,GAAhC;;;IAEMC,oB;AACX,kCAAc;AAAA;AAAE;;;;WAEhB,qBAAYC,KAAZ,EAAmBC,YAAnB,EAAiC;AAC/B,UAAIA,YAAY,CAACC,MAAb,GAAsBJ,uBAA1B,EAAmD;AACjD,YAAMK,KAAK,GAAG,KAAKC,SAAL,CAAeH,YAAf,CAAd;AACA,YAAMI,QAAQ,GAAGF,KAAK,CAACG,GAAN,EAAjB;;AACA,gCAAgD,KAAKC,WAAL,CAC9CP,KAD8C,EAE9CK,QAF8C,CAAhD;AAAA,YAAQG,aAAR,qBAAQA,aAAR;AAAA,YAAuBC,oBAAvB,qBAAuBA,oBAAvB;;AAIA,eAAO;AAAEN,UAAAA,KAAK,EAALA,KAAF;AAASK,UAAAA,aAAa,EAAbA,aAAT;AAAwBC,UAAAA,oBAAoB,EAApBA;AAAxB,SAAP;AACD;;AACD,aAAO;AAAED,QAAAA,aAAa,EAAER;AAAjB,OAAP;AACD;;;WAED,mBAAUC,YAAV,EAAwB;AACtB,UAAMS,KAAK,GAAGT,YAAY,CAACU,KAAb,CAAmB,IAAnB,CAAd;AACA,UAAMC,WAAW,GAAGF,KAAK,CAACG,KAAN,EAApB;AACA,UAAMV,KAAK,GAAG,CAACS,WAAD,CAAd;AACA,UAAIE,KAAK,GAAG,CAAZ;AACAJ,MAAAA,KAAK,CAACK,OAAN,CAAc,UAAAC,WAAW,EAAI;AAC3B,YAAIb,KAAK,CAACW,KAAD,CAAL,CAAaZ,MAAb,GAAsBc,WAAW,CAACd,MAAlC,GAA2CJ,uBAA/C,EAAwE;AACtEgB,UAAAA,KAAK;AACLX,UAAAA,KAAK,CAACc,IAAN,CAAWD,WAAX;AACD,SAHD,MAGO;AACLb,UAAAA,KAAK,CAACW,KAAD,CAAL,GAAeX,KAAK,CAACW,KAAD,CAAL,CAAaI,MAAb,CAAoB,IAApB,EAA0BF,WAA1B,CAAf;AACD;AACF,OAPD;AAQA,aAAOb,KAAP;AACD,K,CAED;;;;WACA,qBAAYH,KAAZ,EAAmBK,QAAnB,EAA6B;AAC3B,UAAMG,aAAa,qBAAQR,KAAR,CAAnB;;AACAQ,MAAAA,aAAa,CAACW,QAAd,GAAyB,CAACd,QAAD,CAAzB;;AACA,UAAIe,KAAK,CAACC,OAAN,CAAcrB,KAAK,CAACmB,QAApB,CAAJ,EAAmC;AACjCnB,QAAAA,KAAK,CAACmB,QAAN,CACGG,MADH,CACU,UAAAC,CAAC;AAAA,iBAAIA,CAAC,CAACC,IAAN;AAAA,SADX,EAEGT,OAFH,CAEW,UAAAQ,CAAC;AAAA,iBAAIf,aAAa,CAACW,QAAd,CAAuBF,IAAvB,CAA4BM,CAA5B,CAAJ;AAAA,SAFZ;AAGD;;AACD,UAAMd,oBAAoB,qBAAQT,KAAR,CAA1B;;AACA,aAAOS,oBAAoB,CAACU,QAA5B;AACA,aAAO;AAAEX,QAAAA,aAAa,EAAbA,aAAF;AAAiBC,QAAAA,oBAAoB,EAApBA;AAAjB,OAAP;AACD","sourcesContent":["export const MAX_CHARACTERS_FACEBOOK = 640\n\nexport class MultichannelFacebook {\n constructor() {}\n\n convertText(props, originalText) {\n if (originalText.length > MAX_CHARACTERS_FACEBOOK) {\n const texts = this.splitText(originalText)\n const lastText = texts.pop()\n const { propsLastText, propsWithoutChildren } = this.getNewProps(\n props,\n lastText\n )\n return { texts, propsLastText, propsWithoutChildren }\n }\n return { propsLastText: props }\n }\n\n splitText(originalText) {\n const lines = originalText.split('\\n')\n const initialText = lines.shift()\n const texts = [initialText]\n let index = 0\n lines.forEach(currentText => {\n if (texts[index].length + currentText.length > MAX_CHARACTERS_FACEBOOK) {\n index++\n texts.push(currentText)\n } else {\n texts[index] = texts[index].concat('\\n', currentText)\n }\n })\n return texts\n }\n\n // modifies the props to keep the children only for the last text message, this message will be the one with buttons and replies\n getNewProps(props, lastText) {\n const propsLastText = { ...props }\n propsLastText.children = [lastText]\n if (Array.isArray(props.children)) {\n props.children\n .filter(e => e.type)\n .forEach(e => propsLastText.children.push(e))\n }\n const propsWithoutChildren = { ...props }\n delete propsWithoutChildren.children\n return { propsLastText, propsWithoutChildren }\n }\n}\n"],"file":"facebook.js"}
@@ -1,65 +0,0 @@
1
- import * as React from 'react'
2
-
3
- type IndexMode = 'number' | 'letter' | undefined //undefined means no index
4
-
5
- export interface MultichannelViewOptions {
6
- boldIndex?: boolean
7
- indexSeparator?: string // after it, a space will always be added
8
- }
9
-
10
- export interface MultichannelContextType extends MultichannelViewOptions {
11
- currentIndex: number | string // can be letter or number
12
- /** @see same field at MultichannelProps */
13
- messageSeparator?: string
14
- }
15
-
16
- // Text
17
- export interface MultichannelTextProps extends MultichannelViewOptions {
18
- index?: string
19
- indexMode?: IndexMode
20
- /** Defaults to no separator between lines*/
21
- newline?: string
22
- buttonsAsText?: boolean
23
- buttonsTextSeparator?: string
24
- }
25
-
26
- export const MultichannelText: React.FunctionComponent<MultichannelTextProps>
27
-
28
- // Carousel
29
- export interface MultichannelCarouselProps extends MultichannelViewOptions {
30
- enableURL?: boolean
31
- indexMode?: IndexMode
32
- showTitle?: boolean
33
- showSubtitle?: boolean
34
- buttonsAsText?: boolean
35
- }
36
- export const MultichannelCarousel: React.FunctionComponent<MultichannelCarouselProps>
37
-
38
- // Button
39
- export interface MultichannelButtonProps {
40
- newline?: string
41
- path?: string
42
- payload?: string
43
- url?: string
44
- webview?: string
45
- asText?: boolean
46
- }
47
- export const MultichannelButton: React.FunctionComponent<MultichannelButtonProps>
48
-
49
- // Reply
50
- export const MultichannelReply: React.FunctionComponent<MultichannelButtonProps>
51
-
52
- export interface MultichannelProps extends MultichannelViewOptions {
53
- firstIndex?: number | string
54
- carousel?: MultichannelCarouselProps
55
- text?: MultichannelTextProps
56
- /**
57
- * If undefined, each component will be served in a different botonic message
58
- * '' will concatenate in the same line
59
- * '\n' will split in different lines
60
- * '\n\n' will separate with an empty line
61
- **/
62
- messageSeparator?: string
63
- }
64
-
65
- export const Multichannel: React.FunctionComponent<MultichannelProps>
@@ -1,46 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "Multichannel", {
7
- enumerable: true,
8
- get: function get() {
9
- return _multichannel.Multichannel;
10
- }
11
- });
12
- Object.defineProperty(exports, "MultichannelButton", {
13
- enumerable: true,
14
- get: function get() {
15
- return _multichannelButton.MultichannelButton;
16
- }
17
- });
18
- Object.defineProperty(exports, "MultichannelCarousel", {
19
- enumerable: true,
20
- get: function get() {
21
- return _multichannelCarousel.MultichannelCarousel;
22
- }
23
- });
24
- Object.defineProperty(exports, "MultichannelReply", {
25
- enumerable: true,
26
- get: function get() {
27
- return _multichannelReply.MultichannelReply;
28
- }
29
- });
30
- Object.defineProperty(exports, "MultichannelText", {
31
- enumerable: true,
32
- get: function get() {
33
- return _multichannelText.MultichannelText;
34
- }
35
- });
36
-
37
- var _multichannel = require("./multichannel");
38
-
39
- var _multichannelButton = require("./multichannel-button");
40
-
41
- var _multichannelCarousel = require("./multichannel-carousel");
42
-
43
- var _multichannelReply = require("./multichannel-reply");
44
-
45
- var _multichannelText = require("./multichannel-text");
46
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/multichannel/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["import { Multichannel } from './multichannel'\nimport { MultichannelButton } from './multichannel-button'\nimport { MultichannelCarousel } from './multichannel-carousel'\nimport { MultichannelReply } from './multichannel-reply'\nimport { MultichannelText } from './multichannel-text'\n\nexport { Multichannel }\nexport { MultichannelText }\nexport { MultichannelButton }\nexport { MultichannelReply }\nexport { MultichannelCarousel }\n"],"file":"index.js"}
@@ -1,119 +0,0 @@
1
- "use strict";
2
-
3
- var _typeof = require("@babel/runtime/helpers/typeof");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.MultichannelButton = void 0;
9
-
10
- var _react = _interopRequireWildcard(require("react"));
11
-
12
- var _contexts = require("../../contexts");
13
-
14
- var _button = require("../button");
15
-
16
- var _multichannelContext = require("./multichannel-context");
17
-
18
- var _multichannelUtils = require("./multichannel-utils");
19
-
20
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
-
22
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
-
24
- var MultichannelButton = function MultichannelButton(props) {
25
- var requestContext = (0, _react.useContext)(_contexts.RequestContext);
26
- var multichannelContext = (0, _react.useContext)(_multichannelContext.MultichannelContext);
27
-
28
- var hasUrl = function hasUrl() {
29
- return Boolean(props.url);
30
- };
31
-
32
- var hasPath = function hasPath() {
33
- return Boolean(props.path);
34
- };
35
-
36
- var hasPayload = function hasPayload() {
37
- return Boolean(props.payload);
38
- };
39
-
40
- var hasPostback = function hasPostback() {
41
- return hasPath() || hasPayload();
42
- };
43
-
44
- var hasWebview = function hasWebview() {
45
- return Boolean(props.webview);
46
- };
47
-
48
- var getUrl = function getUrl() {
49
- return props.url;
50
- };
51
-
52
- var getWebview = function getWebview() {
53
- return props.webview;
54
- };
55
-
56
- var increaseCurrentIndex = function increaseCurrentIndex() {
57
- if (typeof multichannelContext.currentIndex === 'number') {
58
- multichannelContext.currentIndex += 1;
59
- } else if (typeof multichannelContext.currentIndex === 'string') {
60
- var lastChar = multichannelContext.currentIndex.charCodeAt(multichannelContext.currentIndex.length - 1);
61
- multichannelContext.currentIndex = String.fromCharCode(lastChar + 1);
62
- }
63
- };
64
-
65
- var formatIndex = function formatIndex(index) {
66
- var _multichannelContext$;
67
-
68
- var boldIndex = (_multichannelContext$ = multichannelContext.boldIndex) !== null && _multichannelContext$ !== void 0 ? _multichannelContext$ : false;
69
- return boldIndex ? "*".concat(index, "*") : index;
70
- };
71
-
72
- var getText = function getText() {
73
- var text = props.children;
74
- var newline = props.newline || '';
75
- var separator = multichannelContext.indexSeparator || ' ';
76
- var index = multichannelContext.currentIndex ? "".concat(formatIndex(multichannelContext.currentIndex + separator), " ") : '';
77
-
78
- if (hasPostback()) {
79
- text = newline + "".concat(index).concat(text);
80
- } else if (hasUrl()) {
81
- text = newline + "- ".concat(text);
82
- }
83
-
84
- return text;
85
- };
86
-
87
- var truncateText = function truncateText(text, maxLength) {
88
- var ellipsis = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '...';
89
-
90
- if (text.length > maxLength) {
91
- return text.substring(0, maxLength - ellipsis.length) + ellipsis;
92
- }
93
-
94
- return text;
95
- };
96
-
97
- if ((0, _multichannelUtils.isWhatsapp)(requestContext)) {
98
- var _props$asText;
99
-
100
- var asText = (_props$asText = props.asText) !== null && _props$asText !== void 0 ? _props$asText : true;
101
-
102
- if (asText) {
103
- if (hasUrl()) {
104
- return "".concat(getText(), ": ").concat(getUrl());
105
- } else if (hasPath() || hasPayload()) {
106
- var text = getText();
107
- increaseCurrentIndex();
108
- return "".concat(text);
109
- } else if (hasWebview()) return /*#__PURE__*/_react["default"].createElement(_button.Button, props, getText());
110
- }
111
-
112
- return /*#__PURE__*/_react["default"].createElement(_button.Button, props, truncateText(props.children, _multichannelUtils.WHATSAPP_MAX_BUTTON_CHARS));
113
- }
114
-
115
- return /*#__PURE__*/_react["default"].createElement(_button.Button, props, props.children);
116
- };
117
-
118
- exports.MultichannelButton = MultichannelButton;
119
- //# sourceMappingURL=multichannel-button.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/multichannel/multichannel-button.jsx"],"names":["MultichannelButton","props","requestContext","RequestContext","multichannelContext","MultichannelContext","hasUrl","Boolean","url","hasPath","path","hasPayload","payload","hasPostback","hasWebview","webview","getUrl","getWebview","increaseCurrentIndex","currentIndex","lastChar","charCodeAt","length","String","fromCharCode","formatIndex","index","boldIndex","getText","text","children","newline","separator","indexSeparator","truncateText","maxLength","ellipsis","substring","asText","WHATSAPP_MAX_BUTTON_CHARS"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;;;;;AAEO,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAAAC,KAAK,EAAI;AACzC,MAAMC,cAAc,GAAG,uBAAWC,wBAAX,CAAvB;AACA,MAAMC,mBAAmB,GAAG,uBAAWC,wCAAX,CAA5B;;AAEA,MAAMC,MAAM,GAAG,SAATA,MAAS;AAAA,WAAMC,OAAO,CAACN,KAAK,CAACO,GAAP,CAAb;AAAA,GAAf;;AAEA,MAAMC,OAAO,GAAG,SAAVA,OAAU;AAAA,WAAMF,OAAO,CAACN,KAAK,CAACS,IAAP,CAAb;AAAA,GAAhB;;AAEA,MAAMC,UAAU,GAAG,SAAbA,UAAa;AAAA,WAAMJ,OAAO,CAACN,KAAK,CAACW,OAAP,CAAb;AAAA,GAAnB;;AAEA,MAAMC,WAAW,GAAG,SAAdA,WAAc;AAAA,WAAMJ,OAAO,MAAME,UAAU,EAA7B;AAAA,GAApB;;AAEA,MAAMG,UAAU,GAAG,SAAbA,UAAa;AAAA,WAAMP,OAAO,CAACN,KAAK,CAACc,OAAP,CAAb;AAAA,GAAnB;;AAEA,MAAMC,MAAM,GAAG,SAATA,MAAS;AAAA,WAAMf,KAAK,CAACO,GAAZ;AAAA,GAAf;;AACA,MAAMS,UAAU,GAAG,SAAbA,UAAa;AAAA,WAAMhB,KAAK,CAACc,OAAZ;AAAA,GAAnB;;AAEA,MAAMG,oBAAoB,GAAG,SAAvBA,oBAAuB,GAAM;AACjC,QAAI,OAAOd,mBAAmB,CAACe,YAA3B,KAA4C,QAAhD,EAA0D;AACxDf,MAAAA,mBAAmB,CAACe,YAApB,IAAoC,CAApC;AACD,KAFD,MAEO,IAAI,OAAOf,mBAAmB,CAACe,YAA3B,KAA4C,QAAhD,EAA0D;AAC/D,UAAMC,QAAQ,GAAGhB,mBAAmB,CAACe,YAApB,CAAiCE,UAAjC,CACfjB,mBAAmB,CAACe,YAApB,CAAiCG,MAAjC,GAA0C,CAD3B,CAAjB;AAGAlB,MAAAA,mBAAmB,CAACe,YAApB,GAAmCI,MAAM,CAACC,YAAP,CAAoBJ,QAAQ,GAAG,CAA/B,CAAnC;AACD;AACF,GATD;;AAWA,MAAMK,WAAW,GAAG,SAAdA,WAAc,CAAAC,KAAK,EAAI;AAAA;;AAC3B,QAAMC,SAAS,4BAAGvB,mBAAmB,CAACuB,SAAvB,yEAAoC,KAAnD;AACA,WAAOA,SAAS,cAAOD,KAAP,SAAkBA,KAAlC;AACD,GAHD;;AAKA,MAAME,OAAO,GAAG,SAAVA,OAAU,GAAM;AACpB,QAAIC,IAAI,GAAG5B,KAAK,CAAC6B,QAAjB;AACA,QAAMC,OAAO,GAAG9B,KAAK,CAAC8B,OAAN,IAAiB,EAAjC;AACA,QAAMC,SAAS,GAAG5B,mBAAmB,CAAC6B,cAApB,IAAsC,GAAxD;AACA,QAAMP,KAAK,GAAGtB,mBAAmB,CAACe,YAApB,aACPM,WAAW,CAACrB,mBAAmB,CAACe,YAApB,GAAmCa,SAApC,CADJ,SAEV,EAFJ;;AAGA,QAAInB,WAAW,EAAf,EAAmB;AACjBgB,MAAAA,IAAI,GAAGE,OAAO,aAAML,KAAN,SAAcG,IAAd,CAAd;AACD,KAFD,MAEO,IAAIvB,MAAM,EAAV,EAAc;AACnBuB,MAAAA,IAAI,GAAGE,OAAO,eAAQF,IAAR,CAAd;AACD;;AACD,WAAOA,IAAP;AACD,GAbD;;AAeA,MAAMK,YAAY,GAAG,SAAfA,YAAe,CAACL,IAAD,EAAOM,SAAP,EAAuC;AAAA,QAArBC,QAAqB,uEAAV,KAAU;;AAC1D,QAAIP,IAAI,CAACP,MAAL,GAAca,SAAlB,EAA6B;AAC3B,aAAON,IAAI,CAACQ,SAAL,CAAe,CAAf,EAAkBF,SAAS,GAAGC,QAAQ,CAACd,MAAvC,IAAiDc,QAAxD;AACD;;AACD,WAAOP,IAAP;AACD,GALD;;AAOA,MAAI,mCAAW3B,cAAX,CAAJ,EAAgC;AAAA;;AAC9B,QAAMoC,MAAM,oBAAGrC,KAAK,CAACqC,MAAT,yDAAmB,IAA/B;;AACA,QAAIA,MAAJ,EAAY;AACV,UAAIhC,MAAM,EAAV,EAAc;AACZ,yBAAUsB,OAAO,EAAjB,eAAwBZ,MAAM,EAA9B;AACD,OAFD,MAEO,IAAIP,OAAO,MAAME,UAAU,EAA3B,EAA+B;AACpC,YAAMkB,IAAI,GAAGD,OAAO,EAApB;AACAV,QAAAA,oBAAoB;AACpB,yBAAUW,IAAV;AACD,OAJM,MAIA,IAAIf,UAAU,EAAd,EAAkB,oBAAO,gCAAC,cAAD,EAAYb,KAAZ,EAAoB2B,OAAO,EAA3B,CAAP;AAC1B;;AACD,wBACE,gCAAC,cAAD,EAAY3B,KAAZ,EACGiC,YAAY,CAACjC,KAAK,CAAC6B,QAAP,EAAiBS,4CAAjB,CADf,CADF;AAKD;;AACD,sBAAO,gCAAC,cAAD,EAAYtC,KAAZ,EAAoBA,KAAK,CAAC6B,QAA1B,CAAP;AACD,CAzEM","sourcesContent":["import React, { useContext } from 'react'\n\nimport { RequestContext } from '../../contexts'\nimport { Button } from '../button'\nimport { MultichannelContext } from './multichannel-context'\nimport { isWhatsapp, WHATSAPP_MAX_BUTTON_CHARS } from './multichannel-utils'\n\nexport const MultichannelButton = props => {\n const requestContext = useContext(RequestContext)\n const multichannelContext = useContext(MultichannelContext)\n\n const hasUrl = () => Boolean(props.url)\n\n const hasPath = () => Boolean(props.path)\n\n const hasPayload = () => Boolean(props.payload)\n\n const hasPostback = () => hasPath() || hasPayload()\n\n const hasWebview = () => Boolean(props.webview)\n\n const getUrl = () => props.url\n const getWebview = () => props.webview\n\n const increaseCurrentIndex = () => {\n if (typeof multichannelContext.currentIndex === 'number') {\n multichannelContext.currentIndex += 1\n } else if (typeof multichannelContext.currentIndex === 'string') {\n const lastChar = multichannelContext.currentIndex.charCodeAt(\n multichannelContext.currentIndex.length - 1\n )\n multichannelContext.currentIndex = String.fromCharCode(lastChar + 1)\n }\n }\n\n const formatIndex = index => {\n const boldIndex = multichannelContext.boldIndex ?? false\n return boldIndex ? `*${index}*` : index\n }\n\n const getText = () => {\n let text = props.children\n const newline = props.newline || ''\n const separator = multichannelContext.indexSeparator || ' '\n const index = multichannelContext.currentIndex\n ? `${formatIndex(multichannelContext.currentIndex + separator)} `\n : ''\n if (hasPostback()) {\n text = newline + `${index}${text}`\n } else if (hasUrl()) {\n text = newline + `- ${text}`\n }\n return text\n }\n\n const truncateText = (text, maxLength, ellipsis = '...') => {\n if (text.length > maxLength) {\n return text.substring(0, maxLength - ellipsis.length) + ellipsis\n }\n return text\n }\n\n if (isWhatsapp(requestContext)) {\n const asText = props.asText ?? true\n if (asText) {\n if (hasUrl()) {\n return `${getText()}: ${getUrl()}`\n } else if (hasPath() || hasPayload()) {\n const text = getText()\n increaseCurrentIndex()\n return `${text}`\n } else if (hasWebview()) return <Button {...props}>{getText()}</Button>\n }\n return (\n <Button {...props}>\n {truncateText(props.children, WHATSAPP_MAX_BUTTON_CHARS)}\n </Button>\n )\n }\n return <Button {...props}>{props.children}</Button>\n}\n"],"file":"multichannel-button.js"}
@@ -1,143 +0,0 @@
1
- "use strict";
2
-
3
- var _typeof = require("@babel/runtime/helpers/typeof");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.MultichannelCarousel = void 0;
9
-
10
- var _react = _interopRequireWildcard(require("react"));
11
-
12
- var _contexts = require("../../contexts");
13
-
14
- var _carousel = require("../carousel");
15
-
16
- var _multichannelText = require("./multichannel-text");
17
-
18
- var _multichannelUtils = require("./multichannel-utils");
19
-
20
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
-
22
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
-
24
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
25
-
26
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
27
-
28
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
29
-
30
- var MultichannelCarousel = function MultichannelCarousel(props) {
31
- var requestContext = (0, _react.useContext)(_contexts.RequestContext);
32
-
33
- var getButtons = function getButtons(node) {
34
- return [].concat((0, _multichannelUtils.getFilteredElements)(node, _multichannelUtils.isMultichannelButton));
35
- };
36
-
37
- if ((0, _multichannelUtils.isWhatsapp)(requestContext)) {
38
- var elements = props.children.map(function (e) {
39
- return e.props.children;
40
- }).map(function (element, i) {
41
- var imageProps = undefined;
42
- var title = undefined;
43
- var subtitle = undefined;
44
- var buttons = [];
45
-
46
- var _iterator = _createForOfIteratorHelper(element),
47
- _step;
48
-
49
- try {
50
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
51
- var node = _step.value;
52
-
53
- if ((0, _multichannelUtils.isNodeKind)(node, 'Pic')) {
54
- imageProps = node.props;
55
- }
56
-
57
- if ((0, _multichannelUtils.isNodeKind)(node, 'Title')) {
58
- title = node.props.children;
59
- }
60
-
61
- if ((0, _multichannelUtils.isNodeKind)(node, 'Subtitle')) {
62
- subtitle = node.props.children;
63
- }
64
-
65
- if ((0, _multichannelUtils.isNodeKind)(node, 'MultichannelButton')) {
66
- buttons.push(node);
67
- } //TODO support fragment containing an array
68
-
69
-
70
- if (Array.isArray(node)) {
71
- buttons.push(getButtons(node));
72
- }
73
- }
74
- } catch (err) {
75
- _iterator.e(err);
76
- } finally {
77
- _iterator.f();
78
- }
79
-
80
- var header = '';
81
-
82
- if (props.showTitle && title) {
83
- header += "".concat(title ? "*".concat(title, "*") : '');
84
-
85
- if (title && subtitle) {
86
- header += ' ';
87
- }
88
- }
89
-
90
- if (props.showSubtitle && subtitle) {
91
- header += "_".concat(subtitle, "_");
92
- }
93
-
94
- return (
95
- /*#__PURE__*/
96
- // TODO: newkey only for 1 nested button
97
- _react["default"].createElement(_multichannelText.MultichannelText, {
98
- key: i,
99
- newkey: i,
100
- indexMode: props.indexMode,
101
- buttonsAsText: props.buttonsAsText
102
- }, header || null, buttons)
103
- ); // TODO: in the future, this would be the default mode
104
- // } else {
105
- // return (
106
- // <React.Fragment key={i}>
107
- // <Image
108
- // src={imageSrc}
109
- // caption={carouselToCaption(
110
- // i + 1,
111
- // title,
112
- // subtitle,
113
- // imageSrc,
114
- // buttonProps
115
- // )}
116
- // ></Image>
117
- // </React.Fragment>
118
- // )
119
- // }
120
- });
121
- return elements;
122
- } else {
123
- return /*#__PURE__*/_react["default"].createElement(_carousel.Carousel, props, props.children);
124
- }
125
- }; // const carouselToCaption = (index, title, subtitle, imageSrc, buttonProps) => {
126
- // let caption = ''
127
- // let header = `${title ? `*${title}*` : ''}`
128
- // header += `${subtitle ? ` - _${subtitle}_` : ''}`
129
- // let buttons = ''
130
- // if (buttonProps.url) {
131
- // buttons += ` - ${buttonProps.children}: ${buttonProps.url}`
132
- // caption = `${header ? `${header}\n` : ''}${buttons}`
133
- // }
134
- // if (buttonProps.payload || buttonProps.path) {
135
- // buttons += `${index}. `
136
- // caption = `${buttons}${buttonProps.children}`
137
- // }
138
- // return caption
139
- // }
140
-
141
-
142
- exports.MultichannelCarousel = MultichannelCarousel;
143
- //# sourceMappingURL=multichannel-carousel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/multichannel/multichannel-carousel.jsx"],"names":["MultichannelCarousel","props","requestContext","RequestContext","getButtons","node","concat","isMultichannelButton","elements","children","map","e","element","i","imageProps","undefined","title","subtitle","buttons","push","Array","isArray","header","showTitle","showSubtitle","indexMode","buttonsAsText"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAOO,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAAAC,KAAK,EAAI;AAC3C,MAAMC,cAAc,GAAG,uBAAWC,wBAAX,CAAvB;;AAEA,MAAMC,UAAU,GAAG,SAAbA,UAAa,CAAAC,IAAI;AAAA,WACrB,GAAGC,MAAH,CAAU,4CAAoBD,IAApB,EAA0BE,uCAA1B,CAAV,CADqB;AAAA,GAAvB;;AAGA,MAAI,mCAAWL,cAAX,CAAJ,EAAgC;AAC9B,QAAMM,QAAQ,GAAGP,KAAK,CAACQ,QAAN,CACdC,GADc,CACV,UAAAC,CAAC;AAAA,aAAIA,CAAC,CAACV,KAAF,CAAQQ,QAAZ;AAAA,KADS,EAEdC,GAFc,CAEV,UAACE,OAAD,EAAUC,CAAV,EAAgB;AACnB,UAAIC,UAAU,GAAGC,SAAjB;AACA,UAAIC,KAAK,GAAGD,SAAZ;AACA,UAAIE,QAAQ,GAAGF,SAAf;AACA,UAAMG,OAAO,GAAG,EAAhB;;AAJmB,iDAMAN,OANA;AAAA;;AAAA;AAMnB,4DAA4B;AAAA,cAAjBP,IAAiB;;AAC1B,cAAI,mCAAWA,IAAX,EAAiB,KAAjB,CAAJ,EAA6B;AAC3BS,YAAAA,UAAU,GAAGT,IAAI,CAACJ,KAAlB;AACD;;AACD,cAAI,mCAAWI,IAAX,EAAiB,OAAjB,CAAJ,EAA+B;AAC7BW,YAAAA,KAAK,GAAGX,IAAI,CAACJ,KAAL,CAAWQ,QAAnB;AACD;;AACD,cAAI,mCAAWJ,IAAX,EAAiB,UAAjB,CAAJ,EAAkC;AAChCY,YAAAA,QAAQ,GAAGZ,IAAI,CAACJ,KAAL,CAAWQ,QAAtB;AACD;;AAED,cAAI,mCAAWJ,IAAX,EAAiB,oBAAjB,CAAJ,EAA4C;AAC1Ca,YAAAA,OAAO,CAACC,IAAR,CAAad,IAAb;AACD,WAbyB,CAc1B;;;AACA,cAAIe,KAAK,CAACC,OAAN,CAAchB,IAAd,CAAJ,EAAyB;AACvBa,YAAAA,OAAO,CAACC,IAAR,CAAaf,UAAU,CAACC,IAAD,CAAvB;AACD;AACF;AAxBkB;AAAA;AAAA;AAAA;AAAA;;AA0BnB,UAAIiB,MAAM,GAAG,EAAb;;AACA,UAAIrB,KAAK,CAACsB,SAAN,IAAmBP,KAAvB,EAA8B;AAC5BM,QAAAA,MAAM,cAAON,KAAK,cAAOA,KAAP,SAAkB,EAA9B,CAAN;;AACA,YAAIA,KAAK,IAAIC,QAAb,EAAuB;AACrBK,UAAAA,MAAM,IAAI,GAAV;AACD;AACF;;AACD,UAAIrB,KAAK,CAACuB,YAAN,IAAsBP,QAA1B,EAAoC;AAClCK,QAAAA,MAAM,eAAQL,QAAR,MAAN;AACD;;AAED;AAAA;AACE;AACA,wCAAC,kCAAD;AACE,UAAA,GAAG,EAAEJ,CADP;AAEE,UAAA,MAAM,EAAEA,CAFV;AAGE,UAAA,SAAS,EAAEZ,KAAK,CAACwB,SAHnB;AAIE,UAAA,aAAa,EAAExB,KAAK,CAACyB;AAJvB,WAMGJ,MAAM,IAAI,IANb,EAOGJ,OAPH;AAFF,QArCmB,CAkDnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACD,KArEc,CAAjB;AAsEA,WAAOV,QAAP;AACD,GAxED,MAwEO;AACL,wBAAO,gCAAC,kBAAD,EAAcP,KAAd,EAAsBA,KAAK,CAACQ,QAA5B,CAAP;AACD;AACF,CAjFM,C,CAmFP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sourcesContent":["import React, { useContext } from 'react'\n\nimport { RequestContext } from '../../contexts'\nimport { Carousel } from '../carousel'\nimport { MultichannelText } from './multichannel-text'\nimport {\n getFilteredElements,\n isMultichannelButton,\n isNodeKind,\n isWhatsapp,\n} from './multichannel-utils'\n\nexport const MultichannelCarousel = props => {\n const requestContext = useContext(RequestContext)\n\n const getButtons = node =>\n [].concat(getFilteredElements(node, isMultichannelButton))\n\n if (isWhatsapp(requestContext)) {\n const elements = props.children\n .map(e => e.props.children)\n .map((element, i) => {\n let imageProps = undefined\n let title = undefined\n let subtitle = undefined\n const buttons = []\n\n for (const node of element) {\n if (isNodeKind(node, 'Pic')) {\n imageProps = node.props\n }\n if (isNodeKind(node, 'Title')) {\n title = node.props.children\n }\n if (isNodeKind(node, 'Subtitle')) {\n subtitle = node.props.children\n }\n\n if (isNodeKind(node, 'MultichannelButton')) {\n buttons.push(node)\n }\n //TODO support fragment containing an array\n if (Array.isArray(node)) {\n buttons.push(getButtons(node))\n }\n }\n\n let header = ''\n if (props.showTitle && title) {\n header += `${title ? `*${title}*` : ''}`\n if (title && subtitle) {\n header += ' '\n }\n }\n if (props.showSubtitle && subtitle) {\n header += `_${subtitle}_`\n }\n\n return (\n // TODO: newkey only for 1 nested button\n <MultichannelText\n key={i}\n newkey={i}\n indexMode={props.indexMode}\n buttonsAsText={props.buttonsAsText}\n >\n {header || null}\n {buttons}\n </MultichannelText>\n )\n\n // TODO: in the future, this would be the default mode\n // } else {\n // return (\n // <React.Fragment key={i}>\n // <Image\n // src={imageSrc}\n // caption={carouselToCaption(\n // i + 1,\n // title,\n // subtitle,\n // imageSrc,\n // buttonProps\n // )}\n // ></Image>\n // </React.Fragment>\n // )\n // }\n })\n return elements\n } else {\n return <Carousel {...props}>{props.children}</Carousel>\n }\n}\n\n// const carouselToCaption = (index, title, subtitle, imageSrc, buttonProps) => {\n// let caption = ''\n// let header = `${title ? `*${title}*` : ''}`\n// header += `${subtitle ? ` - _${subtitle}_` : ''}`\n// let buttons = ''\n// if (buttonProps.url) {\n// buttons += ` - ${buttonProps.children}: ${buttonProps.url}`\n// caption = `${header ? `${header}\\n` : ''}${buttons}`\n// }\n// if (buttonProps.payload || buttonProps.path) {\n// buttons += `${index}. `\n// caption = `${buttons}${buttonProps.children}`\n// }\n// return caption\n// }\n"],"file":"multichannel-carousel.js"}
@@ -1,24 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.MultichannelContext = void 0;
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var MultichannelContext = /*#__PURE__*/_react["default"].createContext({
13
- boldIndex: true,
14
- carousel: {
15
- indexMode: undefined
16
- },
17
- text: {
18
- indexMode: 'letter'
19
- },
20
- indexSeparator: '.'
21
- });
22
-
23
- exports.MultichannelContext = MultichannelContext;
24
- //# sourceMappingURL=multichannel-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/multichannel/multichannel-context.jsx"],"names":["MultichannelContext","React","createContext","boldIndex","carousel","indexMode","undefined","text","indexSeparator"],"mappings":";;;;;;;;;AAAA;;AAEO,IAAMA,mBAAmB,gBAAGC,kBAAMC,aAAN,CAAoB;AACrDC,EAAAA,SAAS,EAAE,IAD0C;AAErDC,EAAAA,QAAQ,EAAE;AACRC,IAAAA,SAAS,EAAEC;AADH,GAF2C;AAKrDC,EAAAA,IAAI,EAAE;AACJF,IAAAA,SAAS,EAAE;AADP,GAL+C;AAQrDG,EAAAA,cAAc,EAAE;AARqC,CAApB,CAA5B","sourcesContent":["import React from 'react'\n\nexport const MultichannelContext = React.createContext({\n boldIndex: true,\n carousel: {\n indexMode: undefined,\n },\n text: {\n indexMode: 'letter',\n },\n indexSeparator: '.',\n})\n"],"file":"multichannel-context.js"}
@@ -1,46 +0,0 @@
1
- "use strict";
2
-
3
- var _typeof = require("@babel/runtime/helpers/typeof");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.MultichannelReply = void 0;
9
-
10
- var _react = _interopRequireWildcard(require("react"));
11
-
12
- var _contexts = require("../../contexts");
13
-
14
- var _reply = require("../reply");
15
-
16
- var _multichannelUtils = require("./multichannel-utils");
17
-
18
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
-
20
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
-
22
- var MultichannelReply = function MultichannelReply(props) {
23
- var requestContext = (0, _react.useContext)(_contexts.RequestContext);
24
-
25
- var hasPath = function hasPath() {
26
- return Boolean(props.path);
27
- };
28
-
29
- var hasPayload = function hasPayload() {
30
- return Boolean(props.payload);
31
- };
32
-
33
- var getText = function getText() {
34
- return "".concat(props.children);
35
- };
36
-
37
- if ((0, _multichannelUtils.isWhatsapp)(requestContext)) {
38
- if (hasPath() || hasPayload()) return "".concat(getText());
39
- return null;
40
- } else {
41
- return /*#__PURE__*/_react["default"].createElement(_reply.Reply, props, props.children);
42
- }
43
- };
44
-
45
- exports.MultichannelReply = MultichannelReply;
46
- //# sourceMappingURL=multichannel-reply.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/multichannel/multichannel-reply.jsx"],"names":["MultichannelReply","props","requestContext","RequestContext","hasPath","Boolean","path","hasPayload","payload","getText","children"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;;;;;AAEO,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CAAAC,KAAK,EAAI;AACxC,MAAMC,cAAc,GAAG,uBAAWC,wBAAX,CAAvB;;AACA,MAAMC,OAAO,GAAG,SAAVA,OAAU;AAAA,WAAMC,OAAO,CAACJ,KAAK,CAACK,IAAP,CAAb;AAAA,GAAhB;;AACA,MAAMC,UAAU,GAAG,SAAbA,UAAa;AAAA,WAAMF,OAAO,CAACJ,KAAK,CAACO,OAAP,CAAb;AAAA,GAAnB;;AACA,MAAMC,OAAO,GAAG,SAAVA,OAAU;AAAA,qBAASR,KAAK,CAACS,QAAf;AAAA,GAAhB;;AAEA,MAAI,mCAAWR,cAAX,CAAJ,EAAgC;AAC9B,QAAIE,OAAO,MAAMG,UAAU,EAA3B,EAA+B,iBAAUE,OAAO,EAAjB;AAC/B,WAAO,IAAP;AACD,GAHD,MAGO;AACL,wBAAO,gCAAC,YAAD,EAAWR,KAAX,EAAmBA,KAAK,CAACS,QAAzB,CAAP;AACD;AACF,CAZM","sourcesContent":["import React, { useContext } from 'react'\n\nimport { RequestContext } from '../../contexts'\nimport { Reply } from '../reply'\nimport { isWhatsapp } from './multichannel-utils'\n\nexport const MultichannelReply = props => {\n const requestContext = useContext(RequestContext)\n const hasPath = () => Boolean(props.path)\n const hasPayload = () => Boolean(props.payload)\n const getText = () => `${props.children}`\n\n if (isWhatsapp(requestContext)) {\n if (hasPath() || hasPayload()) return `${getText()}`\n return null\n } else {\n return <Reply {...props}>{props.children}</Reply>\n }\n}\n"],"file":"multichannel-reply.js"}