@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,194 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.Carousel = void 0;
11
-
12
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
19
-
20
- var _core = require("@botonic/core");
21
-
22
- var _react = _interopRequireWildcard(require("react"));
23
-
24
- var _styledComponents = _interopRequireDefault(require("styled-components"));
25
-
26
- var _leftArrow = _interopRequireDefault(require("../assets/leftArrow.svg"));
27
-
28
- var _rightArrow = _interopRequireDefault(require("../assets/rightArrow.svg"));
29
-
30
- var _constants = require("../constants");
31
-
32
- var _contexts = require("../contexts");
33
-
34
- var _environment = require("../util/environment");
35
-
36
- var _styledScrollbar = require("../webchat/components/styled-scrollbar");
37
-
38
- var _buttonsDisabler = require("./buttons-disabler");
39
-
40
- var _message = require("./message");
41
-
42
- var _templateObject, _templateObject2, _templateObject3, _templateObject4;
43
-
44
- 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); }
45
-
46
- 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; }
47
-
48
- 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; }
49
-
50
- 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; }
51
-
52
- var StyledCarousel = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n padding: 10px 0px;\n display: flex;\n flex-direction: row;\n max-width: 100%;\n ", "\n"])), function (props) {
53
- return props.carouselArrowsEnabled && 'overflow-x: auto;';
54
- });
55
-
56
- var StyledItems = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n"])));
57
-
58
- var StyledArrowContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n top: calc(50% - 20px);\n height: 40px;\n width: 25px;\n background: ", ";\n display: flex;\n align-items: center;\n cursor: pointer;\n justify-content: ", ";\n left: ", "px;\n right: ", "px;\n border-top-", "-radius: 30px;\n border-bottom-", "-radius: 30px;\n"])), _constants.COLORS.SILVER, function (props) {
59
- return props.justifyContent;
60
- }, function (props) {
61
- return props.left;
62
- }, function (props) {
63
- return props.right;
64
- }, function (props) {
65
- return props.arrow;
66
- }, function (props) {
67
- return props.arrow;
68
- });
69
-
70
- var StyledArrow = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n width: 20px;\n height: 20px;\n"])));
71
-
72
- var serialize = function serialize(carouselProps) {
73
- var carouselChildren = carouselProps.children;
74
- if (!Array.isArray(carouselChildren)) carouselChildren = [carouselChildren];
75
- return {
76
- type: _core.INPUT.CAROUSEL,
77
- elements: carouselChildren.map(function (e) {
78
- return e && e.type && e.type.serialize && e.type.serialize(e.props);
79
- })
80
- };
81
- };
82
- /**
83
- *
84
- * @param {MessageProps} props
85
- * @returns {JSX.Element}
86
- */
87
-
88
-
89
- var Carousel = function Carousel(props) {
90
- var _useContext = (0, _react.useContext)(_contexts.WebchatContext),
91
- getThemeProperty = _useContext.getThemeProperty;
92
-
93
- var content = props.children;
94
-
95
- var scrollbarOptions = _objectSpread(_objectSpread({}, {
96
- enable: true,
97
- autoHide: true
98
- }), getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.scrollbar));
99
-
100
- var _useState = (0, _react.useState)(false),
101
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
102
- hasLeftArrow = _useState2[0],
103
- setLeftArrow = _useState2[1];
104
-
105
- var _useState3 = (0, _react.useState)(true),
106
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
107
- hasRightArrow = _useState4[0],
108
- setRightArrow = _useState4[1];
109
-
110
- var carouselRef = (0, _react.useRef)(null);
111
- var CustomCarouselLeftArrow = getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.customCarouselLeftArrow, undefined);
112
- var CustomCarouselRightArrow = getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.customCarouselRightArrow, undefined);
113
- var carouselArrowsEnabled = getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.enableCarouselArrows, true);
114
-
115
- var scrollCarouselBy = function scrollCarouselBy(value) {
116
- carouselRef.current.scrollBy({
117
- left: value,
118
- behavior: 'smooth'
119
- });
120
- };
121
-
122
- var setArrowsVisibility = function setArrowsVisibility(event) {
123
- var carousel = event.currentTarget;
124
- var maxRightScroll = carousel.scrollWidth - carousel.offsetWidth - _constants.WEBCHAT.DEFAULTS.ELEMENT_MARGIN_RIGHT;
125
- setLeftArrow(carousel.scrollLeft !== 0);
126
- setRightArrow(carousel.scrollLeft < maxRightScroll);
127
- };
128
-
129
- var getArrows = function getArrows() {
130
- var scrollBy = _constants.WEBCHAT.DEFAULTS.ELEMENT_WIDTH + _constants.WEBCHAT.DEFAULTS.ELEMENT_MARGIN_RIGHT;
131
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, hasLeftArrow && (CustomCarouselLeftArrow ? /*#__PURE__*/_react["default"].createElement(CustomCarouselLeftArrow, {
132
- scrollCarouselBy: scrollCarouselBy
133
- }) : /*#__PURE__*/_react["default"].createElement(StyledArrowContainer, {
134
- left: 0,
135
- arrow: 'right',
136
- justifyContent: 'flex-start',
137
- onClick: function onClick() {
138
- return scrollCarouselBy(-scrollBy);
139
- }
140
- }, /*#__PURE__*/_react["default"].createElement(StyledArrow, {
141
- src: (0, _environment.resolveImage)(_leftArrow["default"])
142
- }))), hasRightArrow && (CustomCarouselRightArrow ? /*#__PURE__*/_react["default"].createElement(CustomCarouselRightArrow, {
143
- scrollCarouselBy: scrollCarouselBy
144
- }) : /*#__PURE__*/_react["default"].createElement(StyledArrowContainer, {
145
- right: 0,
146
- arrow: 'left',
147
- justifyContent: 'flex-end',
148
- onClick: function onClick() {
149
- return scrollCarouselBy(scrollBy);
150
- }
151
- }, /*#__PURE__*/_react["default"].createElement(StyledArrow, {
152
- src: (0, _environment.resolveImage)(_rightArrow["default"])
153
- }))));
154
- };
155
-
156
- (0, _react.useEffect)(function () {
157
- var carousel = carouselRef.current;
158
-
159
- if (carousel && carousel.addEventListener) {
160
- carousel.addEventListener('scroll', setArrowsVisibility, false);
161
- } else if (carousel && carousel.attachEvent) {
162
- carousel.attachEvent('scroll', setArrowsVisibility);
163
- }
164
- }, [carouselRef.current]);
165
-
166
- var carouselProps = _objectSpread(_objectSpread({}, props), {}, {
167
- children: _buttonsDisabler.ButtonsDisabler.updateChildrenButtons(props.children)
168
- });
169
-
170
- if ((0, _core.isBrowser)()) {
171
- content = /*#__PURE__*/_react["default"].createElement(_styledScrollbar.StyledScrollbar, {
172
- scrollbar: scrollbarOptions,
173
- autoHide: scrollbarOptions.autoHide
174
- }, /*#__PURE__*/_react["default"].createElement(StyledCarousel, {
175
- ref: carouselRef,
176
- carouselArrowsEnabled: carouselArrowsEnabled
177
- }, /*#__PURE__*/_react["default"].createElement(StyledItems, null, carouselProps.children), carouselArrowsEnabled && getArrows()));
178
- }
179
-
180
- return /*#__PURE__*/_react["default"].createElement(_message.Message, (0, _extends2["default"])({
181
- style: {
182
- width: '85%',
183
- padding: 0,
184
- backgroundColor: _constants.COLORS.TRANSPARENT
185
- },
186
- blob: false,
187
- json: serialize(carouselProps),
188
- type: _core.INPUT.CAROUSEL
189
- }, carouselProps), content);
190
- };
191
-
192
- exports.Carousel = Carousel;
193
- Carousel.serialize = serialize;
194
- //# sourceMappingURL=carousel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/carousel.jsx"],"names":["StyledCarousel","styled","div","props","carouselArrowsEnabled","StyledItems","StyledArrowContainer","COLORS","SILVER","justifyContent","left","right","arrow","StyledArrow","img","serialize","carouselProps","carouselChildren","children","Array","isArray","type","INPUT","CAROUSEL","elements","map","e","Carousel","WebchatContext","getThemeProperty","content","scrollbarOptions","enable","autoHide","WEBCHAT","CUSTOM_PROPERTIES","scrollbar","hasLeftArrow","setLeftArrow","hasRightArrow","setRightArrow","carouselRef","CustomCarouselLeftArrow","customCarouselLeftArrow","undefined","CustomCarouselRightArrow","customCarouselRightArrow","enableCarouselArrows","scrollCarouselBy","value","current","scrollBy","behavior","setArrowsVisibility","event","carousel","currentTarget","maxRightScroll","scrollWidth","offsetWidth","DEFAULTS","ELEMENT_MARGIN_RIGHT","scrollLeft","getArrows","ELEMENT_WIDTH","LeftArrow","RightArrow","addEventListener","attachEvent","ButtonsDisabler","updateChildrenButtons","width","padding","backgroundColor","TRANSPARENT"],"mappings":"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","sourcesContent":["import { INPUT, isBrowser } from '@botonic/core'\nimport React, { useContext, useEffect, useRef, useState } from 'react'\nimport styled from 'styled-components'\n\nimport LeftArrow from '../assets/leftArrow.svg'\nimport RightArrow from '../assets/rightArrow.svg'\nimport { COLORS, WEBCHAT } from '../constants'\nimport { WebchatContext } from '../contexts'\nimport { resolveImage } from '../util/environment'\nimport { StyledScrollbar } from '../webchat/components/styled-scrollbar'\nimport { ButtonsDisabler } from './buttons-disabler'\nimport { Message } from './message'\n\nconst StyledCarousel = styled.div`\n padding: 10px 0px;\n display: flex;\n flex-direction: row;\n max-width: 100%;\n ${props => props.carouselArrowsEnabled && 'overflow-x: auto;'}\n`\n\nconst StyledItems = styled.div`\n display: flex;\n`\n\nconst StyledArrowContainer = styled.div`\n position: absolute;\n top: calc(50% - 20px);\n height: 40px;\n width: 25px;\n background: ${COLORS.SILVER};\n display: flex;\n align-items: center;\n cursor: pointer;\n justify-content: ${props => props.justifyContent};\n left: ${props => props.left}px;\n right: ${props => props.right}px;\n border-top-${props => props.arrow}-radius: 30px;\n border-bottom-${props => props.arrow}-radius: 30px;\n`\nconst StyledArrow = styled.img`\n width: 20px;\n height: 20px;\n`\n\nconst serialize = carouselProps => {\n let carouselChildren = carouselProps.children\n if (!Array.isArray(carouselChildren)) carouselChildren = [carouselChildren]\n return {\n type: INPUT.CAROUSEL,\n elements: carouselChildren.map(\n e => e && e.type && e.type.serialize && e.type.serialize(e.props)\n ),\n }\n}\n\n/**\n *\n * @param {MessageProps} props\n * @returns {JSX.Element}\n */\nexport const Carousel = props => {\n const { getThemeProperty } = useContext(WebchatContext)\n let content = props.children\n const scrollbarOptions = {\n ...{ enable: true, autoHide: true },\n ...getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.scrollbar),\n }\n const [hasLeftArrow, setLeftArrow] = useState(false)\n const [hasRightArrow, setRightArrow] = useState(true)\n const carouselRef = useRef(null)\n const CustomCarouselLeftArrow = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.customCarouselLeftArrow,\n undefined\n )\n const CustomCarouselRightArrow = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.customCarouselRightArrow,\n undefined\n )\n const carouselArrowsEnabled = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.enableCarouselArrows,\n true\n )\n\n const scrollCarouselBy = value => {\n carouselRef.current.scrollBy({\n left: value,\n behavior: 'smooth',\n })\n }\n\n const setArrowsVisibility = event => {\n const carousel = event.currentTarget\n const maxRightScroll =\n carousel.scrollWidth -\n carousel.offsetWidth -\n WEBCHAT.DEFAULTS.ELEMENT_MARGIN_RIGHT\n setLeftArrow(carousel.scrollLeft !== 0)\n setRightArrow(carousel.scrollLeft < maxRightScroll)\n }\n\n const getArrows = () => {\n const scrollBy =\n WEBCHAT.DEFAULTS.ELEMENT_WIDTH + WEBCHAT.DEFAULTS.ELEMENT_MARGIN_RIGHT\n return (\n <>\n {hasLeftArrow &&\n (CustomCarouselLeftArrow ? (\n <CustomCarouselLeftArrow scrollCarouselBy={scrollCarouselBy} />\n ) : (\n <StyledArrowContainer\n left={0}\n arrow={'right'}\n justifyContent={'flex-start'}\n onClick={() => scrollCarouselBy(-scrollBy)}\n >\n <StyledArrow src={resolveImage(LeftArrow)} />\n </StyledArrowContainer>\n ))}\n {hasRightArrow &&\n (CustomCarouselRightArrow ? (\n <CustomCarouselRightArrow scrollCarouselBy={scrollCarouselBy} />\n ) : (\n <StyledArrowContainer\n right={0}\n arrow={'left'}\n justifyContent={'flex-end'}\n onClick={() => scrollCarouselBy(scrollBy)}\n >\n <StyledArrow src={resolveImage(RightArrow)} />\n </StyledArrowContainer>\n ))}\n </>\n )\n }\n\n useEffect(() => {\n const carousel = carouselRef.current\n if (carousel && carousel.addEventListener) {\n carousel.addEventListener('scroll', setArrowsVisibility, false)\n } else if (carousel && carousel.attachEvent) {\n carousel.attachEvent('scroll', setArrowsVisibility)\n }\n }, [carouselRef.current])\n\n const carouselProps = {\n ...props,\n children: ButtonsDisabler.updateChildrenButtons(props.children),\n }\n\n if (isBrowser()) {\n content = (\n <StyledScrollbar\n scrollbar={scrollbarOptions}\n autoHide={scrollbarOptions.autoHide}\n >\n <StyledCarousel\n ref={carouselRef}\n carouselArrowsEnabled={carouselArrowsEnabled}\n >\n <StyledItems>{carouselProps.children}</StyledItems>\n {carouselArrowsEnabled && getArrows()}\n </StyledCarousel>\n </StyledScrollbar>\n )\n }\n\n return (\n <Message\n style={{ width: '85%', padding: 0, backgroundColor: COLORS.TRANSPARENT }}\n blob={false}\n json={serialize(carouselProps)}\n type={INPUT.CAROUSEL}\n {...carouselProps}\n >\n {content}\n </Message>\n )\n}\n\nCarousel.serialize = serialize\n"],"file":"carousel.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/components.js"],"names":["getElementName","component","type","name","getComponentTypeName","displayName"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACO,SAASA,cAAT,CAAwBC,SAAxB,EAAmC;AACxC,SAAOA,SAAS,CAACC,IAAV,CAAeC,IAAtB;AACD;AAED;AACA;AACA;AACA;AACA;;;AACO,SAASC,oBAAT,CAA8BH,SAA9B,EAAyC;AAC9C,SAAOA,SAAS,CAACI,WAAV,IAAyBJ,SAAS,CAACE,IAAnC,IAA2C,WAAlD;AACD","sourcesContent":["/**\n * Get the name of an element (instantiated component)\n * @param {React.Element} component\n * @returns {string}\n */\nexport function getElementName(component) {\n return component.type.name\n}\n\n/**\n * Get the name of a component TYPE\n * @param {React.ComponentType} component\n * @returns {string}\n */\nexport function getComponentTypeName(component) {\n return component.displayName || component.name || 'Component'\n}\n"],"file":"components.js"}
@@ -1,131 +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.customMessage = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
-
14
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
-
16
- var _core = require("@botonic/core");
17
-
18
- var _lodash = _interopRequireDefault(require("lodash.merge"));
19
-
20
- var _react = _interopRequireDefault(require("react"));
21
-
22
- var _constants = require("../constants");
23
-
24
- var _errorBoundary = require("../util/error-boundary");
25
-
26
- var _logs = require("../util/logs");
27
-
28
- var _react2 = require("../util/react");
29
-
30
- var _message = require("./message");
31
-
32
- var _reply = require("./reply");
33
-
34
- var _excluded = ["id", "children"];
35
-
36
- 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; }
37
-
38
- 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; }
39
-
40
- /**
41
- *
42
- * @param name as it appears at ThemeProps' message.customTypes key
43
- * @param CustomMessageComponent
44
- * @param defaultProps Props for the wrapper Message
45
- * @param ErrorBoundary to recover in case it fails
46
- */
47
- var customMessage = function customMessage(_ref) {
48
- var name = _ref.name,
49
- CustomMessageComponent = _ref.component,
50
- _ref$defaultProps = _ref.defaultProps,
51
- defaultProps = _ref$defaultProps === void 0 ? {} : _ref$defaultProps,
52
- _ref$errorBoundary = _ref.errorBoundary,
53
- ErrorBoundary = _ref$errorBoundary === void 0 ? (0, _errorBoundary.createErrorBoundary)() : _ref$errorBoundary;
54
-
55
- var CustomMessage = function CustomMessage(props) {
56
- (0, _logs.warnDeprecatedProps)(defaultProps, 'customMessage:');
57
- if (defaultProps.from === _constants.SENDERS.user) defaultProps.ack = 1;
58
- return /*#__PURE__*/_react["default"].createElement(_message.Message, (0, _extends2["default"])({}, (0, _lodash["default"])((0, _react2.mapObjectNonBooleanValues)(defaultProps), props), {
59
- type: _core.INPUT.CUSTOM
60
- }));
61
- };
62
-
63
- var splitChildren = function splitChildren(props) {
64
- var children = props.children;
65
-
66
- var isReply = function isReply(e) {
67
- return e.type === _reply.Reply;
68
- };
69
-
70
- try {
71
- if (!Array.isArray(children) && !isReply(children)) {
72
- return {
73
- replies: null,
74
- childrenWithoutReplies: children
75
- };
76
- }
77
-
78
- var childrenArray = _react["default"].Children.toArray(children);
79
-
80
- var replies = childrenArray.filter(isReply);
81
- var childrenWithoutReplies = childrenArray.filter(function (e) {
82
- return !isReply(e);
83
- });
84
- return {
85
- replies: replies,
86
- childrenWithoutReplies: childrenWithoutReplies
87
- };
88
- } catch (e) {
89
- return {
90
- replies: null,
91
- childrenWithoutReplies: children
92
- };
93
- }
94
- };
95
-
96
- var WrappedComponent = function WrappedComponent(props) {
97
- var id = props.id,
98
- children = props.children,
99
- customMessageProps = (0, _objectWithoutProperties2["default"])(props, _excluded);
100
-
101
- var _splitChildren = splitChildren(props),
102
- replies = _splitChildren.replies,
103
- childrenWithoutReplies = _splitChildren.childrenWithoutReplies;
104
-
105
- return /*#__PURE__*/_react["default"].createElement(CustomMessage, {
106
- id: id,
107
- json: _objectSpread(_objectSpread({}, customMessageProps), {}, {
108
- id: id,
109
- children: childrenWithoutReplies,
110
- customTypeName: name
111
- })
112
- }, /*#__PURE__*/_react["default"].createElement(ErrorBoundary, (0, _extends2["default"])({
113
- key: 'errorBoundary'
114
- }, customMessageProps), /*#__PURE__*/_react["default"].createElement(CustomMessageComponent, customMessageProps, childrenWithoutReplies)), replies);
115
- };
116
-
117
- WrappedComponent.customTypeName = name; // eslint-disable-next-line react/display-name
118
-
119
- WrappedComponent.deserialize = function (msg) {
120
- return /*#__PURE__*/_react["default"].createElement(WrappedComponent, (0, _extends2["default"])({
121
- id: msg.id,
122
- key: msg.key,
123
- json: msg.data
124
- }, msg.data));
125
- };
126
-
127
- return WrappedComponent;
128
- };
129
-
130
- exports.customMessage = customMessage;
131
- //# sourceMappingURL=custom-message.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/custom-message.jsx"],"names":["customMessage","name","CustomMessageComponent","component","defaultProps","errorBoundary","ErrorBoundary","CustomMessage","props","from","SENDERS","user","ack","INPUT","CUSTOM","splitChildren","children","isReply","e","type","Reply","Array","isArray","replies","childrenWithoutReplies","childrenArray","React","Children","toArray","filter","WrappedComponent","id","customMessageProps","customTypeName","deserialize","msg","key","data"],"mappings":"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","sourcesContent":["import { INPUT } from '@botonic/core'\nimport merge from 'lodash.merge'\nimport React from 'react'\n\nimport { SENDERS } from '../constants'\nimport { createErrorBoundary } from '../util/error-boundary'\nimport { warnDeprecatedProps } from '../util/logs'\nimport { mapObjectNonBooleanValues } from '../util/react'\nimport { Message } from './message'\nimport { Reply } from './reply'\n\n/**\n *\n * @param name as it appears at ThemeProps' message.customTypes key\n * @param CustomMessageComponent\n * @param defaultProps Props for the wrapper Message\n * @param ErrorBoundary to recover in case it fails\n */\nexport const customMessage = ({\n name,\n component: CustomMessageComponent,\n defaultProps = {},\n errorBoundary: ErrorBoundary = createErrorBoundary(),\n}) => {\n const CustomMessage = props => {\n warnDeprecatedProps(defaultProps, 'customMessage:')\n if (defaultProps.from === SENDERS.user) defaultProps.ack = 1\n return (\n <Message\n {...merge(mapObjectNonBooleanValues(defaultProps), props)}\n type={INPUT.CUSTOM}\n />\n )\n }\n\n const splitChildren = props => {\n const { children } = props\n const isReply = e => e.type === Reply\n try {\n if (!Array.isArray(children) && !isReply(children)) {\n return { replies: null, childrenWithoutReplies: children }\n }\n const childrenArray = React.Children.toArray(children)\n const replies = childrenArray.filter(isReply)\n const childrenWithoutReplies = childrenArray.filter(e => !isReply(e))\n return {\n replies: replies,\n childrenWithoutReplies,\n }\n } catch (e) {\n return { replies: null, childrenWithoutReplies: children }\n }\n }\n\n const WrappedComponent = props => {\n const { id, children, ...customMessageProps } = props\n const { replies, childrenWithoutReplies } = splitChildren(props)\n return (\n <CustomMessage\n id={id}\n json={{\n ...customMessageProps,\n id,\n children: childrenWithoutReplies,\n customTypeName: name,\n }}\n >\n <ErrorBoundary key={'errorBoundary'} {...customMessageProps}>\n <CustomMessageComponent {...customMessageProps}>\n {childrenWithoutReplies}\n </CustomMessageComponent>\n </ErrorBoundary>\n {replies}\n </CustomMessage>\n )\n }\n WrappedComponent.customTypeName = name\n // eslint-disable-next-line react/display-name\n WrappedComponent.deserialize = msg => (\n <WrappedComponent id={msg.id} key={msg.key} json={msg.data} {...msg.data} />\n )\n return WrappedComponent\n}\n"],"file":"custom-message.js"}
@@ -1,76 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.Document = void 0;
11
-
12
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
-
16
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
-
18
- var _core = require("@botonic/core");
19
-
20
- var _react = _interopRequireWildcard(require("react"));
21
-
22
- var _styledComponents = _interopRequireDefault(require("styled-components"));
23
-
24
- var _constants = require("../constants");
25
-
26
- var _contexts = require("../contexts");
27
-
28
- var _message = require("./message");
29
-
30
- var _templateObject;
31
-
32
- 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); }
33
-
34
- 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; }
35
-
36
- 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; }
37
-
38
- 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; }
39
-
40
- var StyledButton = _styledComponents["default"].a(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: block;\n height: 25px;\n background-color: #f0f0f0;\n padding: 10px;\n text-align: center;\n border-radius: 5px;\n color: black;\n font-weight: bold;\n line-height: 25px;\n text-decoration: none;\n border: 1px solid black;\n opacity: 0.9;\n &:hover {\n opacity: 1;\n }\n"])));
41
-
42
- var serialize = function serialize(documentProps) {
43
- return {
44
- document: documentProps.src
45
- };
46
- };
47
-
48
- var Document = function Document(props) {
49
- var content = props.children;
50
-
51
- var _useContext = (0, _react.useContext)(_contexts.WebchatContext),
52
- getThemeProperty = _useContext.getThemeProperty;
53
-
54
- var documentDownload = getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.documentDownload, {});
55
- if (typeof documentDownload === 'function') documentDownload = documentDownload(props.from);
56
-
57
- if ((0, _core.isBrowser)()) {
58
- content = /*#__PURE__*/_react["default"].createElement(StyledButton, {
59
- href: props.src,
60
- target: "_blank",
61
- rel: "noreferrer",
62
- style: _objectSpread({}, documentDownload.style)
63
- }, documentDownload.text || 'Download');
64
- }
65
-
66
- return /*#__PURE__*/_react["default"].createElement(_message.Message, (0, _extends2["default"])({
67
- role: _constants.ROLES.DOCUMENT_MESSAGE,
68
- json: serialize(props)
69
- }, props, {
70
- type: _core.INPUT.DOCUMENT
71
- }), content);
72
- };
73
-
74
- exports.Document = Document;
75
- Document.serialize = serialize;
76
- //# sourceMappingURL=document.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/document.jsx"],"names":["StyledButton","styled","a","serialize","documentProps","document","src","Document","props","content","children","WebchatContext","getThemeProperty","documentDownload","WEBCHAT","CUSTOM_PROPERTIES","from","style","text","ROLES","DOCUMENT_MESSAGE","INPUT","DOCUMENT"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;;;;;;;;;AAEA,IAAMA,YAAY,GAAGC,6BAAOC,CAAV,iYAAlB;;AAkBA,IAAMC,SAAS,GAAG,SAAZA,SAAY,CAAAC,aAAa,EAAI;AACjC,SAAO;AAAEC,IAAAA,QAAQ,EAAED,aAAa,CAACE;AAA1B,GAAP;AACD,CAFD;;AAIO,IAAMC,QAAQ,GAAG,SAAXA,QAAW,CAAAC,KAAK,EAAI;AAC/B,MAAIC,OAAO,GAAGD,KAAK,CAACE,QAApB;;AAEA,oBAA6B,uBAAWC,wBAAX,CAA7B;AAAA,MAAQC,gBAAR,eAAQA,gBAAR;;AACA,MAAIC,gBAAgB,GAAGD,gBAAgB,CACrCE,mBAAQC,iBAAR,CAA0BF,gBADW,EAErC,EAFqC,CAAvC;AAIA,MAAI,OAAOA,gBAAP,KAA4B,UAAhC,EACEA,gBAAgB,GAAGA,gBAAgB,CAACL,KAAK,CAACQ,IAAP,CAAnC;;AAEF,MAAI,sBAAJ,EAAiB;AACfP,IAAAA,OAAO,gBACL,gCAAC,YAAD;AACE,MAAA,IAAI,EAAED,KAAK,CAACF,GADd;AAEE,MAAA,MAAM,EAAC,QAFT;AAGE,MAAA,GAAG,EAAC,YAHN;AAIE,MAAA,KAAK,oBACAO,gBAAgB,CAACI,KADjB;AAJP,OAQGJ,gBAAgB,CAACK,IAAjB,IAAyB,UAR5B,CADF;AAYD;;AAED,sBACE,gCAAC,gBAAD;AACE,IAAA,IAAI,EAAEC,iBAAMC,gBADd;AAEE,IAAA,IAAI,EAAEjB,SAAS,CAACK,KAAD;AAFjB,KAGMA,KAHN;AAIE,IAAA,IAAI,EAAEa,YAAMC;AAJd,MAMGb,OANH,CADF;AAUD,CApCM;;;AAsCPF,QAAQ,CAACJ,SAAT,GAAqBA,SAArB","sourcesContent":["import { INPUT, isBrowser } from '@botonic/core'\nimport React, { useContext } from 'react'\nimport styled from 'styled-components'\n\nimport { ROLES, WEBCHAT } from '../constants'\nimport { WebchatContext } from '../contexts'\nimport { Message } from './message'\n\nconst StyledButton = styled.a`\n display: block;\n height: 25px;\n background-color: #f0f0f0;\n padding: 10px;\n text-align: center;\n border-radius: 5px;\n color: black;\n font-weight: bold;\n line-height: 25px;\n text-decoration: none;\n border: 1px solid black;\n opacity: 0.9;\n &:hover {\n opacity: 1;\n }\n`\n\nconst serialize = documentProps => {\n return { document: documentProps.src }\n}\n\nexport const Document = props => {\n let content = props.children\n\n const { getThemeProperty } = useContext(WebchatContext)\n let documentDownload = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.documentDownload,\n {}\n )\n if (typeof documentDownload === 'function')\n documentDownload = documentDownload(props.from)\n\n if (isBrowser()) {\n content = (\n <StyledButton\n href={props.src}\n target='_blank'\n rel='noreferrer'\n style={{\n ...documentDownload.style,\n }}\n >\n {documentDownload.text || 'Download'}\n </StyledButton>\n )\n }\n\n return (\n <Message\n role={ROLES.DOCUMENT_MESSAGE}\n json={serialize(props)}\n {...props}\n type={INPUT.DOCUMENT}\n >\n {content}\n </Message>\n )\n}\n\nDocument.serialize = serialize\n"],"file":"document.js"}
@@ -1,69 +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.Element = void 0;
9
-
10
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var _react = _interopRequireDefault(require("react"));
15
-
16
- var _styledComponents = _interopRequireDefault(require("styled-components"));
17
-
18
- var _constants = require("../constants");
19
-
20
- var _react2 = require("../util/react");
21
-
22
- var _templateObject;
23
-
24
- var ElementContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n width: ", "px;\n margin-right: ", "px;\n border-radius: 6px;\n border: 1px solid ", ";\n overflow: hidden;\n justify-content: space-between;\n"])), _constants.WEBCHAT.DEFAULTS.ELEMENT_WIDTH, _constants.WEBCHAT.DEFAULTS.ELEMENT_MARGIN_RIGHT, _constants.COLORS.SEASHELL_WHITE);
25
-
26
- var Element = function Element(props) {
27
- var renderBrowser = function renderBrowser() {
28
- return /*#__PURE__*/_react["default"].createElement(ElementContainer, null, props.children);
29
- };
30
-
31
- var renderNode = function renderNode() {
32
- return /*#__PURE__*/_react["default"].createElement("element", null, props.children);
33
- };
34
-
35
- return (0, _react2.renderComponent)({
36
- renderBrowser: renderBrowser,
37
- renderNode: renderNode
38
- });
39
- };
40
-
41
- exports.Element = Element;
42
-
43
- Element.serialize = function (elementProps) {
44
- var element = Object.assign.apply(Object, [{}].concat((0, _toConsumableArray2["default"])(elementProps.children.filter(function (c) {
45
- return c && c.type && c.type.name != 'Button';
46
- }).map(function (c) {
47
- return c.type.serialize && c.type.serialize(c.props);
48
- })))); // When we are serializer buttons from backend, we are receiving the data
49
- // as an array of buttons, so we have to keep robust with serve and deal with arrays
50
-
51
- element.buttons = (0, _toConsumableArray2["default"])(elementProps.children.filter(function (c) {
52
- if (c instanceof Array) return true;
53
- return c && c.type && c.type.name == 'Button';
54
- }).map(function (b) {
55
- if (b instanceof Array) {
56
- return b.map(function (bb) {
57
- return bb && bb.type && bb.type.serialize && bb.type.serialize(bb.props).button;
58
- });
59
- }
60
-
61
- return b && b.type && b.type.serialize && b.type.serialize(b.props).button;
62
- })); // When we have the buttons from backend, we have all buttons inside an array on the first position
63
- // of another array in element['buttons'] we want that element['buttons'] to be an array of buttons,
64
- // not an array of another array of buttons
65
-
66
- if (element.buttons[0] instanceof Array) element.buttons = element.buttons[0];
67
- return element;
68
- };
69
- //# sourceMappingURL=element.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/element.jsx"],"names":["ElementContainer","styled","div","WEBCHAT","DEFAULTS","ELEMENT_WIDTH","ELEMENT_MARGIN_RIGHT","COLORS","SEASHELL_WHITE","Element","props","renderBrowser","children","renderNode","serialize","elementProps","element","Object","assign","filter","c","type","name","map","buttons","Array","b","bb","button"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;;;AAEA,IAAMA,gBAAgB,GAAGC,6BAAOC,GAAV,2RAGXC,mBAAQC,QAAR,CAAiBC,aAHN,EAIJF,mBAAQC,QAAR,CAAiBE,oBAJb,EAMAC,kBAAOC,cANP,CAAtB;;AAWO,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAAAC,KAAK,EAAI;AAC9B,MAAMC,aAAa,GAAG,SAAhBA,aAAgB;AAAA,wBACpB,gCAAC,gBAAD,QAAmBD,KAAK,CAACE,QAAzB,CADoB;AAAA,GAAtB;;AAIA,MAAMC,UAAU,GAAG,SAAbA,UAAa;AAAA,wBAAM,iDAAUH,KAAK,CAACE,QAAhB,CAAN;AAAA,GAAnB;;AAEA,SAAO,6BAAgB;AAAED,IAAAA,aAAa,EAAbA,aAAF;AAAiBE,IAAAA,UAAU,EAAVA;AAAjB,GAAhB,CAAP;AACD,CARM;;;;AAUPJ,OAAO,CAACK,SAAR,GAAoB,UAAAC,YAAY,EAAI;AAClC,MAAMC,OAAO,GAAGC,MAAM,CAACC,MAAP,OAAAD,MAAM,GACpB,EADoB,6CAEjBF,YAAY,CAACH,QAAb,CACAO,MADA,CACO,UAAAC,CAAC;AAAA,WAAIA,CAAC,IAAIA,CAAC,CAACC,IAAP,IAAeD,CAAC,CAACC,IAAF,CAAOC,IAAP,IAAe,QAAlC;AAAA,GADR,EAEAC,GAFA,CAEI,UAAAH,CAAC;AAAA,WAAIA,CAAC,CAACC,IAAF,CAAOP,SAAP,IAAoBM,CAAC,CAACC,IAAF,CAAOP,SAAP,CAAiBM,CAAC,CAACV,KAAnB,CAAxB;AAAA,GAFL,CAFiB,GAAtB,CADkC,CAOlC;AACA;;AACAM,EAAAA,OAAO,CAACQ,OAAR,uCACKT,YAAY,CAACH,QAAb,CACAO,MADA,CACO,UAAAC,CAAC,EAAI;AACX,QAAIA,CAAC,YAAYK,KAAjB,EAAwB,OAAO,IAAP;AACxB,WAAOL,CAAC,IAAIA,CAAC,CAACC,IAAP,IAAeD,CAAC,CAACC,IAAF,CAAOC,IAAP,IAAe,QAArC;AACD,GAJA,EAKAC,GALA,CAKI,UAAAG,CAAC,EAAI;AACR,QAAIA,CAAC,YAAYD,KAAjB,EAAwB;AACtB,aAAOC,CAAC,CAACH,GAAF,CACL,UAAAI,EAAE;AAAA,eACAA,EAAE,IACFA,EAAE,CAACN,IADH,IAEAM,EAAE,CAACN,IAAH,CAAQP,SAFR,IAGAa,EAAE,CAACN,IAAH,CAAQP,SAAR,CAAkBa,EAAE,CAACjB,KAArB,EAA4BkB,MAJ5B;AAAA,OADG,CAAP;AAOD;;AACD,WACEF,CAAC,IAAIA,CAAC,CAACL,IAAP,IAAeK,CAAC,CAACL,IAAF,CAAOP,SAAtB,IAAmCY,CAAC,CAACL,IAAF,CAAOP,SAAP,CAAiBY,CAAC,CAAChB,KAAnB,EAA0BkB,MAD/D;AAGD,GAlBA,CADL,EATkC,CA8BlC;AACA;AACA;;AACA,MAAIZ,OAAO,CAACQ,OAAR,CAAgB,CAAhB,aAA8BC,KAAlC,EAAyCT,OAAO,CAACQ,OAAR,GAAkBR,OAAO,CAACQ,OAAR,CAAgB,CAAhB,CAAlB;AACzC,SAAOR,OAAP;AACD,CAnCD","sourcesContent":["import React from 'react'\nimport styled from 'styled-components'\n\nimport { COLORS, WEBCHAT } from '../constants'\nimport { renderComponent } from '../util/react'\n\nconst ElementContainer = styled.div`\n display: flex;\n flex-direction: column;\n width: ${WEBCHAT.DEFAULTS.ELEMENT_WIDTH}px;\n margin-right: ${WEBCHAT.DEFAULTS.ELEMENT_MARGIN_RIGHT}px;\n border-radius: 6px;\n border: 1px solid ${COLORS.SEASHELL_WHITE};\n overflow: hidden;\n justify-content: space-between;\n`\n\nexport const Element = props => {\n const renderBrowser = () => (\n <ElementContainer>{props.children}</ElementContainer>\n )\n\n const renderNode = () => <element>{props.children}</element>\n\n return renderComponent({ renderBrowser, renderNode })\n}\n\nElement.serialize = elementProps => {\n const element = Object.assign(\n {},\n ...elementProps.children\n .filter(c => c && c.type && c.type.name != 'Button')\n .map(c => c.type.serialize && c.type.serialize(c.props))\n )\n // When we are serializer buttons from backend, we are receiving the data\n // as an array of buttons, so we have to keep robust with serve and deal with arrays\n element.buttons = [\n ...elementProps.children\n .filter(c => {\n if (c instanceof Array) return true\n return c && c.type && c.type.name == 'Button'\n })\n .map(b => {\n if (b instanceof Array) {\n return b.map(\n bb =>\n bb &&\n bb.type &&\n bb.type.serialize &&\n bb.type.serialize(bb.props).button\n )\n }\n return (\n b && b.type && b.type.serialize && b.type.serialize(b.props).button\n )\n }),\n ]\n // When we have the buttons from backend, we have all buttons inside an array on the first position\n // of another array in element['buttons'] we want that element['buttons'] to be an array of buttons,\n // not an array of another array of buttons\n if (element.buttons[0] instanceof Array) element.buttons = element.buttons[0]\n return element\n}\n"],"file":"element.js"}
@@ -1,69 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.Handoff = void 0;
11
-
12
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
-
14
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
- var _react = _interopRequireWildcard(require("react"));
17
-
18
- var _styledComponents = _interopRequireDefault(require("styled-components"));
19
-
20
- var _constants = require("../constants");
21
-
22
- var _contexts = require("../contexts");
23
-
24
- var _templateObject, _templateObject2, _templateObject3, _templateObject4;
25
-
26
- 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); }
27
-
28
- 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; }
29
-
30
- var Container = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n font-family: inherit;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n padding: 24px;\n"])));
31
-
32
- var TransferredContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n text-align: center;\n white-space: normal;\n"])));
33
-
34
- var EndedContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n text-align: center;\n white-space: normal;\n"])));
35
-
36
- var StyledButton = _styledComponents["default"].button(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n max-width: 60%;\n padding: 12px 24px;\n background-color: ", ";\n border: none;\n border-radius: 4px;\n margin-top: 8px;\n cursor: pointer;\n"])), _constants.COLORS.SOLID_WHITE);
37
-
38
- var Handoff = function Handoff(props) {
39
- var _useContext = (0, _react.useContext)(_contexts.WebchatContext),
40
- resolveCase = _useContext.resolveCase;
41
-
42
- var _useState = (0, _react.useState)({
43
- showContinue: true
44
- }),
45
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
46
- state = _useState2[0],
47
- setState = _useState2[1];
48
-
49
- var continueClick = function continueClick() {
50
- setState({
51
- showContinue: false
52
- });
53
- resolveCase();
54
- };
55
-
56
- var bgColor = state.showContinue ? _constants.COLORS.FRINGY_FLOWER_GREEN : _constants.COLORS.TASMAN_GRAY;
57
- var fontColor = state.showContinue ? _constants.COLORS.APPLE_GREEN : _constants.COLORS.CACTUS_GREEN;
58
- return /*#__PURE__*/_react["default"].createElement(Container, {
59
- style: {
60
- color: fontColor,
61
- backgroundColor: bgColor
62
- }
63
- }, state.showContinue ? /*#__PURE__*/_react["default"].createElement(TransferredContainer, null, "Conversation transferred to a human agent...") : /*#__PURE__*/_react["default"].createElement(EndedContainer, null, "Human handoff ended"), state.showContinue && /*#__PURE__*/_react["default"].createElement(StyledButton, {
64
- onClick: continueClick
65
- }, "Continue"));
66
- };
67
-
68
- exports.Handoff = Handoff;
69
- //# sourceMappingURL=handoff.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/handoff.jsx"],"names":["Container","styled","div","TransferredContainer","EndedContainer","StyledButton","button","COLORS","SOLID_WHITE","Handoff","props","WebchatContext","resolveCase","showContinue","state","setState","continueClick","bgColor","FRINGY_FLOWER_GREEN","TASMAN_GRAY","fontColor","APPLE_GREEN","CACTUS_GREEN","color","backgroundColor"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;;;;;;;AAEA,IAAMA,SAAS,GAAGC,6BAAOC,GAAV,oOAAf;;AASA,IAAMC,oBAAoB,GAAGF,6BAAOC,GAAV,yIAA1B;;AAKA,IAAME,cAAc,GAAGH,6BAAOC,GAAV,yIAApB;;AAKA,IAAMG,YAAY,GAAGJ,6BAAOK,MAAV,gPAGIC,kBAAOC,WAHX,CAAlB;;AAUO,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAAAC,KAAK,EAAI;AAC9B,oBAAwB,uBAAWC,wBAAX,CAAxB;AAAA,MAAQC,WAAR,eAAQA,WAAR;;AACA,kBAA0B,qBAAS;AAAEC,IAAAA,YAAY,EAAE;AAAhB,GAAT,CAA1B;AAAA;AAAA,MAAOC,KAAP;AAAA,MAAcC,QAAd;;AAEA,MAAMC,aAAa,GAAG,SAAhBA,aAAgB,GAAM;AAC1BD,IAAAA,QAAQ,CAAC;AAAEF,MAAAA,YAAY,EAAE;AAAhB,KAAD,CAAR;AACAD,IAAAA,WAAW;AACZ,GAHD;;AAKA,MAAMK,OAAO,GAAGH,KAAK,CAACD,YAAN,GACZN,kBAAOW,mBADK,GAEZX,kBAAOY,WAFX;AAGA,MAAMC,SAAS,GAAGN,KAAK,CAACD,YAAN,GACdN,kBAAOc,WADO,GAEdd,kBAAOe,YAFX;AAGA,sBACE,gCAAC,SAAD;AACE,IAAA,KAAK,EAAE;AACLC,MAAAA,KAAK,EAAEH,SADF;AAELI,MAAAA,eAAe,EAAEP;AAFZ;AADT,KAMGH,KAAK,CAACD,YAAN,gBACC,gCAAC,oBAAD,uDADD,gBAKC,gCAAC,cAAD,8BAXJ,EAaGC,KAAK,CAACD,YAAN,iBACC,gCAAC,YAAD;AAAc,IAAA,OAAO,EAAEG;AAAvB,gBAdJ,CADF;AAmBD,CAlCM","sourcesContent":["import React, { useContext, useState } from 'react'\nimport styled from 'styled-components'\n\nimport { COLORS } from '../constants'\nimport { WebchatContext } from '../contexts'\n\nconst Container = styled.div`\n display: flex;\n font-family: inherit;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n padding: 24px;\n`\n\nconst TransferredContainer = styled.div`\n text-align: center;\n white-space: normal;\n`\n\nconst EndedContainer = styled.div`\n text-align: center;\n white-space: normal;\n`\n\nconst StyledButton = styled.button`\n max-width: 60%;\n padding: 12px 24px;\n background-color: ${COLORS.SOLID_WHITE};\n border: none;\n border-radius: 4px;\n margin-top: 8px;\n cursor: pointer;\n`\n\nexport const Handoff = props => {\n const { resolveCase } = useContext(WebchatContext)\n const [state, setState] = useState({ showContinue: true })\n\n const continueClick = () => {\n setState({ showContinue: false })\n resolveCase()\n }\n\n const bgColor = state.showContinue\n ? COLORS.FRINGY_FLOWER_GREEN\n : COLORS.TASMAN_GRAY\n const fontColor = state.showContinue\n ? COLORS.APPLE_GREEN\n : COLORS.CACTUS_GREEN\n return (\n <Container\n style={{\n color: fontColor,\n backgroundColor: bgColor,\n }}\n >\n {state.showContinue ? (\n <TransferredContainer>\n Conversation transferred to a human agent...\n </TransferredContainer>\n ) : (\n <EndedContainer>Human handoff ended</EndedContainer>\n )}\n {state.showContinue && (\n <StyledButton onClick={continueClick}>Continue</StyledButton>\n )}\n </Container>\n )\n}\n"],"file":"handoff.js"}