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

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 (702) 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 +68 -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 +23 -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 +145 -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 +107 -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 +12 -0
  23. package/lib/cjs/components/custom-message.js +59 -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 +47 -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 +56 -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 +54 -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 +38 -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 +32 -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 +14 -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 +188 -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 +76 -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 +78 -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 +25 -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 +132 -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 +60 -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 +30 -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 +44 -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 +54 -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 +14 -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 +24 -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 +47 -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 +51 -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 +22 -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 +31 -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 +79 -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 +25 -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 +72 -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 +138 -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 +34 -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 +7 -0
  143. package/lib/cjs/util/error-boundary.js +33 -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 +29 -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 +14 -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 +17 -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 +43 -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 +45 -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 +19 -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 +11 -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 +85 -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 +219 -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 +39 -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 +43 -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 +101 -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 +42 -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 +60 -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 +661 -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 +84 -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 +270 -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 +102 -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 +62 -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 +18 -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 +140 -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 +102 -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 +12 -0
  277. package/lib/esm/components/custom-message.js +55 -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 +42 -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 +51 -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 +49 -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 +33 -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 +27 -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 +9 -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 +184 -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 +71 -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 +73 -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 +20 -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 +127 -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 +55 -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 +25 -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 +39 -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 +49 -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 +9 -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 +19 -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 +42 -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 +45 -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 +17 -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 +26 -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 +73 -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 +20 -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 +68 -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 +132 -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 +29 -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 +7 -0
  397. package/lib/esm/util/error-boundary.js +28 -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 +24 -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 +9 -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 +12 -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 +37 -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 +39 -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 +14 -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 +6 -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 +79 -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 +211 -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 +34 -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 +38 -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 +96 -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 +38 -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 +56 -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 +656 -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 +78 -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 +266 -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 +97 -0
  500. package/lib/esm/webview-app.js.map +1 -0
  501. package/lib/esm/webview.template.html +39 -0
  502. package/package.json +40 -27
  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/message.jsx +4 -11
  508. package/src/components/multichannel/multichannel-text.jsx +2 -5
  509. package/src/components/pic.jsx +3 -1
  510. package/src/components/video.jsx +2 -0
  511. package/src/index.js +1 -1
  512. package/src/msg-to-botonic.jsx +11 -11
  513. package/src/util/environment.js +31 -2
  514. package/src/util/error-boundary.jsx +15 -30
  515. package/src/util/webchat.js +12 -13
  516. package/src/webchat/components/attachment.jsx +10 -2
  517. package/src/webchat/components/emoji-picker.jsx +7 -1
  518. package/src/webchat/hooks.js +2 -1
  519. package/src/webchat/use-storage-state-hook.js +13 -2
  520. package/src/webchat/webchat.jsx +5 -7
  521. package/src/{webview.jsx → webview-app.tsx} +7 -1
  522. package/lib/app.js +0 -19
  523. package/lib/app.js.map +0 -1
  524. package/lib/botonic-tester.js +0 -224
  525. package/lib/botonic-tester.js.map +0 -1
  526. package/lib/components/audio.js +0 -48
  527. package/lib/components/audio.js.map +0 -1
  528. package/lib/components/button.js +0 -224
  529. package/lib/components/button.js.map +0 -1
  530. package/lib/components/buttons-disabler.js +0 -133
  531. package/lib/components/buttons-disabler.js.map +0 -1
  532. package/lib/components/carousel.js +0 -194
  533. package/lib/components/carousel.js.map +0 -1
  534. package/lib/components/components.js.map +0 -1
  535. package/lib/components/custom-message.js +0 -131
  536. package/lib/components/custom-message.js.map +0 -1
  537. package/lib/components/document.js +0 -76
  538. package/lib/components/document.js.map +0 -1
  539. package/lib/components/element.js +0 -69
  540. package/lib/components/element.js.map +0 -1
  541. package/lib/components/handoff.js +0 -69
  542. package/lib/components/handoff.js.map +0 -1
  543. package/lib/components/image.js +0 -91
  544. package/lib/components/image.js.map +0 -1
  545. package/lib/components/index.d.ts +0 -228
  546. package/lib/components/index.js +0 -193
  547. package/lib/components/index.js.map +0 -1
  548. package/lib/components/location.js +0 -69
  549. package/lib/components/location.js.map +0 -1
  550. package/lib/components/markdown.js +0 -108
  551. package/lib/components/markdown.js.map +0 -1
  552. package/lib/components/message-template.js +0 -36
  553. package/lib/components/message-template.js.map +0 -1
  554. package/lib/components/message.js +0 -351
  555. package/lib/components/message.js.map +0 -1
  556. package/lib/components/multichannel/facebook/facebook.js +0 -96
  557. package/lib/components/multichannel/facebook/facebook.js.map +0 -1
  558. package/lib/components/multichannel/index.d.ts +0 -65
  559. package/lib/components/multichannel/index.js +0 -46
  560. package/lib/components/multichannel/index.js.map +0 -1
  561. package/lib/components/multichannel/multichannel-button.js +0 -119
  562. package/lib/components/multichannel/multichannel-button.js.map +0 -1
  563. package/lib/components/multichannel/multichannel-carousel.js +0 -143
  564. package/lib/components/multichannel/multichannel-carousel.js.map +0 -1
  565. package/lib/components/multichannel/multichannel-context.js +0 -24
  566. package/lib/components/multichannel/multichannel-context.js.map +0 -1
  567. package/lib/components/multichannel/multichannel-reply.js +0 -46
  568. package/lib/components/multichannel/multichannel-reply.js.map +0 -1
  569. package/lib/components/multichannel/multichannel-text.js +0 -222
  570. package/lib/components/multichannel/multichannel-text.js.map +0 -1
  571. package/lib/components/multichannel/multichannel-utils.js +0 -126
  572. package/lib/components/multichannel/multichannel-utils.js.map +0 -1
  573. package/lib/components/multichannel/multichannel.js +0 -111
  574. package/lib/components/multichannel/multichannel.js.map +0 -1
  575. package/lib/components/pic.js +0 -50
  576. package/lib/components/pic.js.map +0 -1
  577. package/lib/components/raw.js +0 -70
  578. package/lib/components/raw.js.map +0 -1
  579. package/lib/components/reply.js +0 -107
  580. package/lib/components/reply.js.map +0 -1
  581. package/lib/components/share-button.js +0 -36
  582. package/lib/components/share-button.js.map +0 -1
  583. package/lib/components/subtitle.js +0 -54
  584. package/lib/components/subtitle.js.map +0 -1
  585. package/lib/components/text.js +0 -80
  586. package/lib/components/text.js.map +0 -1
  587. package/lib/components/timestamps.js +0 -69
  588. package/lib/components/timestamps.js.map +0 -1
  589. package/lib/components/title.js +0 -52
  590. package/lib/components/title.js.map +0 -1
  591. package/lib/components/video.js +0 -51
  592. package/lib/components/video.js.map +0 -1
  593. package/lib/components/webchat-settings.js +0 -118
  594. package/lib/components/webchat-settings.js.map +0 -1
  595. package/lib/components/whatsapp-template.js +0 -53
  596. package/lib/components/whatsapp-template.js.map +0 -1
  597. package/lib/constants.js +0 -203
  598. package/lib/constants.js.map +0 -1
  599. package/lib/contexts.js +0 -57
  600. package/lib/contexts.js.map +0 -1
  601. package/lib/dev-app.js +0 -241
  602. package/lib/dev-app.js.map +0 -1
  603. package/lib/index.d.ts +0 -238
  604. package/lib/index.js +0 -131
  605. package/lib/index.js.map +0 -1
  606. package/lib/message-utils.js +0 -149
  607. package/lib/message-utils.js.map +0 -1
  608. package/lib/msg-to-botonic.js +0 -199
  609. package/lib/msg-to-botonic.js.map +0 -1
  610. package/lib/node-app.js +0 -97
  611. package/lib/node-app.js.map +0 -1
  612. package/lib/react-bot.js +0 -167
  613. package/lib/react-bot.js.map +0 -1
  614. package/lib/util/dom.js +0 -84
  615. package/lib/util/dom.js.map +0 -1
  616. package/lib/util/environment.js +0 -42
  617. package/lib/util/environment.js.map +0 -1
  618. package/lib/util/error-boundary.js +0 -105
  619. package/lib/util/error-boundary.js.map +0 -1
  620. package/lib/util/index.d.ts +0 -9
  621. package/lib/util/index.js +0 -2
  622. package/lib/util/index.js.map +0 -1
  623. package/lib/util/logs.js +0 -28
  624. package/lib/util/logs.js.map +0 -1
  625. package/lib/util/objects.js +0 -60
  626. package/lib/util/objects.js.map +0 -1
  627. package/lib/util/react.js +0 -75
  628. package/lib/util/react.js.map +0 -1
  629. package/lib/util/regexs.js +0 -31
  630. package/lib/util/regexs.js.map +0 -1
  631. package/lib/util/webchat.js +0 -92
  632. package/lib/util/webchat.js.map +0 -1
  633. package/lib/webchat/actions.js +0 -53
  634. package/lib/webchat/actions.js.map +0 -1
  635. package/lib/webchat/components/attachment.js +0 -68
  636. package/lib/webchat/components/attachment.js.map +0 -1
  637. package/lib/webchat/components/common.js +0 -29
  638. package/lib/webchat/components/common.js.map +0 -1
  639. package/lib/webchat/components/conditional-animation.js +0 -42
  640. package/lib/webchat/components/conditional-animation.js.map +0 -1
  641. package/lib/webchat/components/emoji-picker.js +0 -89
  642. package/lib/webchat/components/emoji-picker.js.map +0 -1
  643. package/lib/webchat/components/persistent-menu.js +0 -104
  644. package/lib/webchat/components/persistent-menu.js.map +0 -1
  645. package/lib/webchat/components/send-button.js +0 -45
  646. package/lib/webchat/components/send-button.js.map +0 -1
  647. package/lib/webchat/components/styled-scrollbar.js +0 -55
  648. package/lib/webchat/components/styled-scrollbar.js.map +0 -1
  649. package/lib/webchat/components/typing-indicator.js +0 -27
  650. package/lib/webchat/components/typing-indicator.js.map +0 -1
  651. package/lib/webchat/devices/device-adapter.js +0 -82
  652. package/lib/webchat/devices/device-adapter.js.map +0 -1
  653. package/lib/webchat/devices/index.js +0 -32
  654. package/lib/webchat/devices/index.js.map +0 -1
  655. package/lib/webchat/devices/scrollbar-controller.js +0 -152
  656. package/lib/webchat/devices/scrollbar-controller.js.map +0 -1
  657. package/lib/webchat/devices/webchat-resizer.js +0 -76
  658. package/lib/webchat/devices/webchat-resizer.js.map +0 -1
  659. package/lib/webchat/header.js +0 -116
  660. package/lib/webchat/header.js.map +0 -1
  661. package/lib/webchat/hooks.js +0 -359
  662. package/lib/webchat/hooks.js.map +0 -1
  663. package/lib/webchat/index.d.ts +0 -62
  664. package/lib/webchat/index.js +0 -32
  665. package/lib/webchat/index.js.map +0 -1
  666. package/lib/webchat/message-list.js +0 -88
  667. package/lib/webchat/message-list.js.map +0 -1
  668. package/lib/webchat/messages-reducer.js +0 -93
  669. package/lib/webchat/messages-reducer.js.map +0 -1
  670. package/lib/webchat/replies.js +0 -78
  671. package/lib/webchat/replies.js.map +0 -1
  672. package/lib/webchat/session-view.js +0 -106
  673. package/lib/webchat/session-view.js.map +0 -1
  674. package/lib/webchat/use-storage-state-hook.js +0 -60
  675. package/lib/webchat/use-storage-state-hook.js.map +0 -1
  676. package/lib/webchat/webchat-dev.js +0 -109
  677. package/lib/webchat/webchat-dev.js.map +0 -1
  678. package/lib/webchat/webchat-reducer.js +0 -108
  679. package/lib/webchat/webchat-reducer.js.map +0 -1
  680. package/lib/webchat/webchat.js +0 -1108
  681. package/lib/webchat/webchat.js.map +0 -1
  682. package/lib/webchat/webview.js +0 -122
  683. package/lib/webchat/webview.js.map +0 -1
  684. package/lib/webchat-app.js +0 -660
  685. package/lib/webchat-app.js.map +0 -1
  686. package/lib/webview.js +0 -231
  687. package/lib/webview.js.map +0 -1
  688. /package/lib/{assets → cjs/assets}/attachment-icon.svg +0 -0
  689. /package/lib/{assets → cjs/assets}/audio.svg +0 -0
  690. /package/lib/{assets → cjs/assets}/botonic_react_logo100x100.png +0 -0
  691. /package/lib/{assets → cjs/assets}/document.svg +0 -0
  692. /package/lib/{assets → cjs/assets}/emojiButton.svg +0 -0
  693. /package/lib/{assets → cjs/assets}/image.svg +0 -0
  694. /package/lib/{assets → cjs/assets}/leftArrow.svg +0 -0
  695. /package/lib/{assets → cjs/assets}/menuButton.svg +0 -0
  696. /package/lib/{assets → cjs/assets}/rightArrow.svg +0 -0
  697. /package/lib/{assets → cjs/assets}/send-button.svg +0 -0
  698. /package/lib/{assets → cjs/assets}/video.svg +0 -0
  699. /package/lib/{webchat → cjs/webchat}/components/styled-scrollbar.scss +0 -0
  700. /package/lib/{webchat → cjs/webchat}/components/typing-indicator.scss +0 -0
  701. /package/lib/{webchat.template.html → cjs/webchat.template.html} +0 -0
  702. /package/lib/{webview.template.html → cjs/webview.template.html} +0 -0
@@ -1,359 +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.useComponentVisible = useComponentVisible;
9
- exports.useComponentWillMount = void 0;
10
- exports.usePrevious = usePrevious;
11
- exports.useTyping = useTyping;
12
- exports.useWebchat = useWebchat;
13
- exports.webchatInitialState = void 0;
14
-
15
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
-
17
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
18
-
19
- var _react = require("react");
20
-
21
- var _constants = require("../constants");
22
-
23
- var _dom = require("../util/dom");
24
-
25
- var _actions = require("./actions");
26
-
27
- var _webchatReducer = require("./webchat-reducer");
28
-
29
- 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; }
30
-
31
- 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; }
32
-
33
- var webchatInitialState = {
34
- width: _constants.WEBCHAT.DEFAULTS.WIDTH,
35
- height: _constants.WEBCHAT.DEFAULTS.HEIGHT,
36
- messagesJSON: [],
37
- messagesComponents: [],
38
- replies: [],
39
- latestInput: {},
40
- typing: false,
41
- webview: null,
42
- webviewParams: null,
43
- session: {
44
- user: null
45
- },
46
- lastRoutePath: null,
47
- handoff: false,
48
- theme: {
49
- headerTitle: _constants.WEBCHAT.DEFAULTS.TITLE,
50
- brandColor: _constants.COLORS.BOTONIC_BLUE,
51
- brandImage: _constants.WEBCHAT.DEFAULTS.LOGO,
52
- triggerButtonImage: undefined,
53
- textPlaceholder: _constants.WEBCHAT.DEFAULTS.PLACEHOLDER,
54
- style: {
55
- fontFamily: _constants.WEBCHAT.DEFAULTS.FONT_FAMILY
56
- }
57
- },
58
- themeUpdates: {},
59
- error: {},
60
- online: true,
61
- devSettings: {
62
- keepSessionOnReload: false
63
- },
64
- isWebchatOpen: false,
65
- isEmojiPickerOpen: false,
66
- isPersistentMenuOpen: false,
67
- isCoverComponentOpen: false,
68
- isCustomComponentRendered: false,
69
- lastMessageUpdate: undefined,
70
- currentAttachment: undefined,
71
- jwt: null
72
- };
73
- exports.webchatInitialState = webchatInitialState;
74
-
75
- function useWebchat() {
76
- var _useReducer = (0, _react.useReducer)(_webchatReducer.webchatReducer, webchatInitialState),
77
- _useReducer2 = (0, _slicedToArray2["default"])(_useReducer, 2),
78
- webchatState = _useReducer2[0],
79
- webchatDispatch = _useReducer2[1];
80
-
81
- var addMessage = function addMessage(message) {
82
- return webchatDispatch({
83
- type: _actions.ADD_MESSAGE,
84
- payload: message
85
- });
86
- };
87
-
88
- var addMessageComponent = function addMessageComponent(message) {
89
- return webchatDispatch({
90
- type: _actions.ADD_MESSAGE_COMPONENT,
91
- payload: message
92
- });
93
- };
94
-
95
- var updateMessage = function updateMessage(message) {
96
- return webchatDispatch({
97
- type: _actions.UPDATE_MESSAGE,
98
- payload: message
99
- });
100
- };
101
-
102
- var updateReplies = function updateReplies(replies) {
103
- return webchatDispatch({
104
- type: _actions.UPDATE_REPLIES,
105
- payload: replies
106
- });
107
- };
108
-
109
- var updateLatestInput = function updateLatestInput(input) {
110
- return webchatDispatch({
111
- type: _actions.UPDATE_LATEST_INPUT,
112
- payload: input
113
- });
114
- };
115
-
116
- var updateTyping = function updateTyping(typing) {
117
- return webchatDispatch({
118
- type: _actions.UPDATE_TYPING,
119
- payload: typing
120
- });
121
- };
122
-
123
- var updateWebview = function updateWebview(webview, params) {
124
- return webchatDispatch({
125
- type: _actions.UPDATE_WEBVIEW,
126
- payload: {
127
- webview: webview,
128
- webviewParams: params
129
- }
130
- });
131
- };
132
-
133
- var updateSession = function updateSession(session) {
134
- webchatDispatch({
135
- type: _actions.UPDATE_SESSION,
136
- payload: session
137
- });
138
- };
139
-
140
- var updateLastRoutePath = function updateLastRoutePath(path) {
141
- return webchatDispatch({
142
- type: _actions.UPDATE_LAST_ROUTE_PATH,
143
- payload: path
144
- });
145
- };
146
-
147
- var updateHandoff = function updateHandoff(handoff) {
148
- return webchatDispatch({
149
- type: _actions.UPDATE_HANDOFF,
150
- payload: handoff
151
- });
152
- };
153
-
154
- var updateTheme = function updateTheme(theme) {
155
- var themeUpdates = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
156
- var payload = themeUpdates !== undefined ? {
157
- theme: theme,
158
- themeUpdates: themeUpdates
159
- } : {
160
- theme: theme
161
- };
162
- webchatDispatch({
163
- type: _actions.UPDATE_THEME,
164
- payload: payload
165
- });
166
- };
167
-
168
- var updateDevSettings = function updateDevSettings(settings) {
169
- return webchatDispatch({
170
- type: _actions.UPDATE_DEV_SETTINGS,
171
- payload: settings
172
- });
173
- };
174
-
175
- var toggleWebchat = function toggleWebchat(toggle) {
176
- return webchatDispatch({
177
- type: _actions.TOGGLE_WEBCHAT,
178
- payload: toggle
179
- });
180
- };
181
-
182
- var toggleEmojiPicker = function toggleEmojiPicker(toggle) {
183
- return webchatDispatch({
184
- type: _actions.TOGGLE_EMOJI_PICKER,
185
- payload: toggle
186
- });
187
- };
188
-
189
- var togglePersistentMenu = function togglePersistentMenu(toggle) {
190
- return webchatDispatch({
191
- type: _actions.TOGGLE_PERSISTENT_MENU,
192
- payload: toggle
193
- });
194
- };
195
-
196
- var toggleCoverComponent = function toggleCoverComponent(toggle) {
197
- return webchatDispatch({
198
- type: _actions.TOGGLE_COVER_COMPONENT,
199
- payload: toggle
200
- });
201
- };
202
-
203
- var doRenderCustomComponent = function doRenderCustomComponent(toggle) {
204
- return webchatDispatch({
205
- type: _actions.DO_RENDER_CUSTOM_COMPONENT,
206
- payload: toggle
207
- });
208
- };
209
-
210
- var setError = function setError(error) {
211
- return webchatDispatch({
212
- type: _actions.SET_ERROR,
213
- payload: error
214
- });
215
- };
216
-
217
- var setOnline = function setOnline(online) {
218
- return webchatDispatch({
219
- type: _actions.SET_ONLINE,
220
- payload: online
221
- });
222
- };
223
-
224
- var clearMessages = function clearMessages() {
225
- webchatDispatch({
226
- type: _actions.CLEAR_MESSAGES
227
- });
228
- };
229
-
230
- var updateLastMessageDate = function updateLastMessageDate(date) {
231
- webchatDispatch({
232
- type: _actions.UPDATE_LAST_MESSAGE_DATE,
233
- payload: date
234
- });
235
- };
236
-
237
- var setCurrentAttachment = function setCurrentAttachment(attachment) {
238
- webchatDispatch({
239
- type: _actions.SET_CURRENT_ATTACHMENT,
240
- payload: attachment
241
- });
242
- };
243
-
244
- var updateJwt = function updateJwt(jwt) {
245
- webchatDispatch({
246
- type: _actions.UPDATE_JWT,
247
- payload: jwt
248
- });
249
- };
250
-
251
- return {
252
- webchatState: webchatState,
253
- webchatDispatch: webchatDispatch,
254
- addMessage: addMessage,
255
- addMessageComponent: addMessageComponent,
256
- updateMessage: updateMessage,
257
- updateReplies: updateReplies,
258
- updateLatestInput: updateLatestInput,
259
- updateTyping: updateTyping,
260
- updateWebview: updateWebview,
261
- updateSession: updateSession,
262
- updateLastRoutePath: updateLastRoutePath,
263
- updateHandoff: updateHandoff,
264
- updateTheme: updateTheme,
265
- updateDevSettings: updateDevSettings,
266
- toggleWebchat: toggleWebchat,
267
- toggleEmojiPicker: toggleEmojiPicker,
268
- togglePersistentMenu: togglePersistentMenu,
269
- toggleCoverComponent: toggleCoverComponent,
270
- doRenderCustomComponent: doRenderCustomComponent,
271
- setError: setError,
272
- setOnline: setOnline,
273
- clearMessages: clearMessages,
274
- updateLastMessageDate: updateLastMessageDate,
275
- setCurrentAttachment: setCurrentAttachment,
276
- updateJwt: updateJwt
277
- };
278
- }
279
-
280
- function useTyping(_ref) {
281
- var webchatState = _ref.webchatState,
282
- updateTyping = _ref.updateTyping,
283
- updateMessage = _ref.updateMessage,
284
- host = _ref.host;
285
- (0, _react.useEffect)(function () {
286
- var delayTimeout, typingTimeout;
287
- (0, _dom.scrollToBottom)({
288
- host: host
289
- });
290
-
291
- try {
292
- var nextMsg = webchatState.messagesJSON.filter(function (m) {
293
- return !m.display;
294
- })[0];
295
-
296
- if (nextMsg.delay && nextMsg.typing) {
297
- delayTimeout = setTimeout(function () {
298
- return updateTyping(true);
299
- }, nextMsg.delay * 1000);
300
- } else if (nextMsg.typing) updateTyping(true);
301
-
302
- var totalDelay = nextMsg.delay + nextMsg.typing;
303
- if (totalDelay) typingTimeout = setTimeout(function () {
304
- updateMessage(_objectSpread(_objectSpread({}, nextMsg), {}, {
305
- display: true
306
- }));
307
- updateTyping(false);
308
- }, totalDelay * 1000);
309
- } catch (e) {}
310
-
311
- return function () {
312
- clearTimeout(delayTimeout);
313
- clearTimeout(typingTimeout);
314
- };
315
- }, [webchatState.messagesJSON, webchatState.typing]);
316
- }
317
-
318
- function usePrevious(value) {
319
- var ref = (0, _react.useRef)();
320
- (0, _react.useEffect)(function () {
321
- ref.current = value;
322
- });
323
- return ref.current;
324
- }
325
-
326
- function useComponentVisible(initialIsVisible, onClickOutside) {
327
- var _useState = (0, _react.useState)(initialIsVisible),
328
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
329
- isComponentVisible = _useState2[0],
330
- setIsComponentVisible = _useState2[1];
331
-
332
- var ref = (0, _react.useRef)(null);
333
-
334
- var handleClickOutside = function handleClickOutside(event) {
335
- if (ref.current && !ref.current.contains(event.path[0])) {
336
- setIsComponentVisible(false);
337
- onClickOutside();
338
- }
339
- };
340
-
341
- (0, _react.useEffect)(function () {
342
- document.addEventListener('click', handleClickOutside, false);
343
- return function () {
344
- document.removeEventListener('click', handleClickOutside, false);
345
- };
346
- });
347
- return {
348
- ref: ref,
349
- isComponentVisible: isComponentVisible,
350
- setIsComponentVisible: setIsComponentVisible
351
- };
352
- }
353
-
354
- var useComponentWillMount = function useComponentWillMount(func) {
355
- (0, _react.useMemo)(func, []);
356
- };
357
-
358
- exports.useComponentWillMount = useComponentWillMount;
359
- //# sourceMappingURL=hooks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/webchat/hooks.js"],"names":["webchatInitialState","width","WEBCHAT","DEFAULTS","WIDTH","height","HEIGHT","messagesJSON","messagesComponents","replies","latestInput","typing","webview","webviewParams","session","user","lastRoutePath","handoff","theme","headerTitle","TITLE","brandColor","COLORS","BOTONIC_BLUE","brandImage","LOGO","triggerButtonImage","undefined","textPlaceholder","PLACEHOLDER","style","fontFamily","FONT_FAMILY","themeUpdates","error","online","devSettings","keepSessionOnReload","isWebchatOpen","isEmojiPickerOpen","isPersistentMenuOpen","isCoverComponentOpen","isCustomComponentRendered","lastMessageUpdate","currentAttachment","jwt","useWebchat","webchatReducer","webchatState","webchatDispatch","addMessage","message","type","ADD_MESSAGE","payload","addMessageComponent","ADD_MESSAGE_COMPONENT","updateMessage","UPDATE_MESSAGE","updateReplies","UPDATE_REPLIES","updateLatestInput","input","UPDATE_LATEST_INPUT","updateTyping","UPDATE_TYPING","updateWebview","params","UPDATE_WEBVIEW","updateSession","UPDATE_SESSION","updateLastRoutePath","path","UPDATE_LAST_ROUTE_PATH","updateHandoff","UPDATE_HANDOFF","updateTheme","UPDATE_THEME","updateDevSettings","settings","UPDATE_DEV_SETTINGS","toggleWebchat","toggle","TOGGLE_WEBCHAT","toggleEmojiPicker","TOGGLE_EMOJI_PICKER","togglePersistentMenu","TOGGLE_PERSISTENT_MENU","toggleCoverComponent","TOGGLE_COVER_COMPONENT","doRenderCustomComponent","DO_RENDER_CUSTOM_COMPONENT","setError","SET_ERROR","setOnline","SET_ONLINE","clearMessages","CLEAR_MESSAGES","updateLastMessageDate","date","UPDATE_LAST_MESSAGE_DATE","setCurrentAttachment","attachment","SET_CURRENT_ATTACHMENT","updateJwt","UPDATE_JWT","useTyping","host","delayTimeout","typingTimeout","nextMsg","filter","m","display","delay","setTimeout","totalDelay","e","clearTimeout","usePrevious","value","ref","current","useComponentVisible","initialIsVisible","onClickOutside","isComponentVisible","setIsComponentVisible","handleClickOutside","event","contains","document","addEventListener","removeEventListener","useComponentWillMount","func"],"mappings":"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","sourcesContent":["import { useEffect, useMemo, useReducer, useRef, useState } from 'react'\n\nimport { COLORS, WEBCHAT } from '../constants'\nimport { scrollToBottom } from '../util/dom'\nimport {\n ADD_MESSAGE,\n ADD_MESSAGE_COMPONENT,\n CLEAR_MESSAGES,\n DO_RENDER_CUSTOM_COMPONENT,\n SET_CURRENT_ATTACHMENT,\n SET_ERROR,\n SET_ONLINE,\n TOGGLE_COVER_COMPONENT,\n TOGGLE_EMOJI_PICKER,\n TOGGLE_PERSISTENT_MENU,\n TOGGLE_WEBCHAT,\n UPDATE_DEV_SETTINGS,\n UPDATE_HANDOFF,\n UPDATE_JWT,\n UPDATE_LAST_MESSAGE_DATE,\n UPDATE_LAST_ROUTE_PATH,\n UPDATE_LATEST_INPUT,\n UPDATE_MESSAGE,\n UPDATE_REPLIES,\n UPDATE_SESSION,\n UPDATE_THEME,\n UPDATE_TYPING,\n UPDATE_WEBVIEW,\n} from './actions'\nimport { webchatReducer } from './webchat-reducer'\n\nexport const webchatInitialState = {\n width: WEBCHAT.DEFAULTS.WIDTH,\n height: WEBCHAT.DEFAULTS.HEIGHT,\n messagesJSON: [],\n messagesComponents: [],\n replies: [],\n latestInput: {},\n typing: false,\n webview: null,\n webviewParams: null,\n session: { user: null },\n lastRoutePath: null,\n handoff: false,\n theme: {\n headerTitle: WEBCHAT.DEFAULTS.TITLE,\n brandColor: COLORS.BOTONIC_BLUE,\n brandImage: WEBCHAT.DEFAULTS.LOGO,\n triggerButtonImage: undefined,\n textPlaceholder: WEBCHAT.DEFAULTS.PLACEHOLDER,\n style: {\n fontFamily: WEBCHAT.DEFAULTS.FONT_FAMILY,\n },\n },\n themeUpdates: {},\n error: {},\n online: true,\n devSettings: { keepSessionOnReload: false },\n isWebchatOpen: false,\n isEmojiPickerOpen: false,\n isPersistentMenuOpen: false,\n isCoverComponentOpen: false,\n isCustomComponentRendered: false,\n lastMessageUpdate: undefined,\n currentAttachment: undefined,\n jwt: null,\n}\n\nexport function useWebchat() {\n const [webchatState, webchatDispatch] = useReducer(\n webchatReducer,\n webchatInitialState\n )\n\n const addMessage = message =>\n webchatDispatch({ type: ADD_MESSAGE, payload: message })\n const addMessageComponent = message =>\n webchatDispatch({ type: ADD_MESSAGE_COMPONENT, payload: message })\n const updateMessage = message =>\n webchatDispatch({ type: UPDATE_MESSAGE, payload: message })\n const updateReplies = replies =>\n webchatDispatch({ type: UPDATE_REPLIES, payload: replies })\n const updateLatestInput = input =>\n webchatDispatch({ type: UPDATE_LATEST_INPUT, payload: input })\n const updateTyping = typing =>\n webchatDispatch({ type: UPDATE_TYPING, payload: typing })\n const updateWebview = (webview, params) =>\n webchatDispatch({\n type: UPDATE_WEBVIEW,\n payload: { webview, webviewParams: params },\n })\n const updateSession = session => {\n webchatDispatch({\n type: UPDATE_SESSION,\n payload: session,\n })\n }\n\n const updateLastRoutePath = path =>\n webchatDispatch({\n type: UPDATE_LAST_ROUTE_PATH,\n payload: path,\n })\n const updateHandoff = handoff =>\n webchatDispatch({\n type: UPDATE_HANDOFF,\n payload: handoff,\n })\n const updateTheme = (theme, themeUpdates = undefined) => {\n const payload =\n themeUpdates !== undefined ? { theme, themeUpdates } : { theme }\n webchatDispatch({\n type: UPDATE_THEME,\n payload,\n })\n }\n const updateDevSettings = settings =>\n webchatDispatch({\n type: UPDATE_DEV_SETTINGS,\n payload: settings,\n })\n const toggleWebchat = toggle =>\n webchatDispatch({\n type: TOGGLE_WEBCHAT,\n payload: toggle,\n })\n const toggleEmojiPicker = toggle =>\n webchatDispatch({\n type: TOGGLE_EMOJI_PICKER,\n payload: toggle,\n })\n const togglePersistentMenu = toggle =>\n webchatDispatch({\n type: TOGGLE_PERSISTENT_MENU,\n payload: toggle,\n })\n const toggleCoverComponent = toggle =>\n webchatDispatch({\n type: TOGGLE_COVER_COMPONENT,\n payload: toggle,\n })\n const doRenderCustomComponent = toggle =>\n webchatDispatch({\n type: DO_RENDER_CUSTOM_COMPONENT,\n payload: toggle,\n })\n const setError = error =>\n webchatDispatch({\n type: SET_ERROR,\n payload: error,\n })\n const setOnline = online =>\n webchatDispatch({\n type: SET_ONLINE,\n payload: online,\n })\n\n const clearMessages = () => {\n webchatDispatch({\n type: CLEAR_MESSAGES,\n })\n }\n const updateLastMessageDate = date => {\n webchatDispatch({\n type: UPDATE_LAST_MESSAGE_DATE,\n payload: date,\n })\n }\n const setCurrentAttachment = attachment => {\n webchatDispatch({\n type: SET_CURRENT_ATTACHMENT,\n payload: attachment,\n })\n }\n\n const updateJwt = jwt => {\n webchatDispatch({\n type: UPDATE_JWT,\n payload: jwt,\n })\n }\n\n return {\n webchatState,\n webchatDispatch,\n addMessage,\n addMessageComponent,\n updateMessage,\n updateReplies,\n updateLatestInput,\n updateTyping,\n updateWebview,\n updateSession,\n updateLastRoutePath,\n updateHandoff,\n updateTheme,\n updateDevSettings,\n toggleWebchat,\n toggleEmojiPicker,\n togglePersistentMenu,\n toggleCoverComponent,\n doRenderCustomComponent,\n setError,\n setOnline,\n clearMessages,\n updateLastMessageDate,\n setCurrentAttachment,\n updateJwt,\n }\n}\n\nexport function useTyping({ webchatState, updateTyping, updateMessage, host }) {\n useEffect(() => {\n let delayTimeout, typingTimeout\n scrollToBottom({ host })\n try {\n const nextMsg = webchatState.messagesJSON.filter(m => !m.display)[0]\n if (nextMsg.delay && nextMsg.typing) {\n delayTimeout = setTimeout(\n () => updateTyping(true),\n nextMsg.delay * 1000\n )\n } else if (nextMsg.typing) updateTyping(true)\n const totalDelay = nextMsg.delay + nextMsg.typing\n if (totalDelay)\n typingTimeout = setTimeout(() => {\n updateMessage({ ...nextMsg, display: true })\n updateTyping(false)\n }, totalDelay * 1000)\n } catch (e) {}\n return () => {\n clearTimeout(delayTimeout)\n clearTimeout(typingTimeout)\n }\n }, [webchatState.messagesJSON, webchatState.typing])\n}\n\nexport function usePrevious(value) {\n const ref = useRef()\n useEffect(() => {\n ref.current = value\n })\n return ref.current\n}\n\nexport function useComponentVisible(initialIsVisible, onClickOutside) {\n const [isComponentVisible, setIsComponentVisible] = useState(initialIsVisible)\n const ref = useRef(null)\n const handleClickOutside = event => {\n if (ref.current && !ref.current.contains(event.path[0])) {\n setIsComponentVisible(false)\n onClickOutside()\n }\n }\n useEffect(() => {\n document.addEventListener('click', handleClickOutside, false)\n return () => {\n document.removeEventListener('click', handleClickOutside, false)\n }\n })\n return { ref, isComponentVisible, setIsComponentVisible }\n}\n\nexport const useComponentWillMount = func => {\n useMemo(func, [])\n}\n"],"file":"hooks.js"}
@@ -1,62 +0,0 @@
1
- import * as core from '@botonic/core'
2
- import * as React from 'react'
3
- import { RefObject } from 'react'
4
-
5
- import { Reply, Webview } from '../components/index'
6
- import { Message, WebchatApp, WebchatArgs } from '../index'
7
-
8
- export interface WebchatStateTheme {
9
- headerTitle: string
10
- brandColor: string
11
- brandImage: string
12
- triggerButtonImage: undefined
13
- textPlaceholder: string
14
- style: {
15
- fontFamily: string
16
- }
17
- }
18
-
19
- export interface WebchatState {
20
- width: number
21
- height: number
22
- messagesJSON: any[]
23
- messagesComponents: Message[]
24
- replies: Reply[]
25
- latestInput: Partial<core.Input>
26
- typing: boolean
27
- webview: Webview | null
28
- webviewParams: null
29
- session: Partial<core.Session>
30
- lastRoutePath: string | null
31
- handoff: boolean
32
- theme: WebchatStateTheme
33
- themeUpdates: Partial<WebchatStateTheme>
34
- error: { message?: string }
35
- devSettings: { keepSessionOnReload?: boolean; showSessionView?: boolean }
36
- isWebchatOpen: boolean
37
- isEmojiPickerOpen: boolean
38
- isPersistentMenuOpen: boolean
39
- isCoverComponentOpen: boolean
40
- lastMessageUpdate: string
41
- currentAttachment: File | undefined
42
- }
43
-
44
- export interface WebchatProps extends WebchatArgs {
45
- ref: RefObject<any>
46
- onConnectionRegained?: () => Promise<void>
47
- }
48
- export const WebChat: React.ForwardRefExoticComponent<WebchatProps>
49
-
50
- export interface WebchatDevProps extends WebchatProps {
51
- initialDevSettings?: {
52
- keepSessionOnReload?: boolean
53
- showSessionView?: boolean
54
- }
55
- }
56
- export const WebChatDev: React.ForwardRefExoticComponent<WebchatDevProps>
57
-
58
- export function getBotonicApp(): WebchatApp
59
-
60
- export interface CoverComponentProps {
61
- closeComponent: () => void
62
- }
@@ -1,32 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "Webchat", {
7
- enumerable: true,
8
- get: function get() {
9
- return _webchat.Webchat;
10
- }
11
- });
12
- Object.defineProperty(exports, "WebchatDev", {
13
- enumerable: true,
14
- get: function get() {
15
- return _webchatDev.WebchatDev;
16
- }
17
- });
18
- exports.getBotonicApp = getBotonicApp;
19
-
20
- var _webchat = require("./webchat");
21
-
22
- var _webchatDev = require("./webchat-dev");
23
-
24
- /**
25
- * @returns {WebChatApp}
26
- */
27
- function getBotonicApp() {
28
- // Botonic is exported from your bot
29
- // eslint-disable-next-line no-undef
30
- return Botonic;
31
- }
32
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/webchat/index.js"],"names":["getBotonicApp","Botonic"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;AACO,SAASA,aAAT,GAAyB;AAC9B;AACA;AACA,SAAOC,OAAP;AACD","sourcesContent":["export { Webchat } from './webchat'\nexport { WebchatDev } from './webchat-dev'\n\n/**\n * @returns {WebChatApp}\n */\nexport function getBotonicApp() {\n // Botonic is exported from your bot\n // eslint-disable-next-line no-undef\n return Botonic\n}\n"],"file":"index.js"}
@@ -1,88 +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.WebchatMessageList = void 0;
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
- var _react = _interopRequireWildcard(require("react"));
17
-
18
- var _Fade = _interopRequireDefault(require("react-reveal/Fade"));
19
-
20
- var _styledComponents = _interopRequireDefault(require("styled-components"));
21
-
22
- var _constants = require("../constants");
23
-
24
- var _contexts = require("../contexts");
25
-
26
- var _environment = require("../util/environment");
27
-
28
- var _react2 = require("../util/react");
29
-
30
- var _styledScrollbar = require("./components/styled-scrollbar");
31
-
32
- var _templateObject, _templateObject2;
33
-
34
- 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); }
35
-
36
- 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; }
37
-
38
- 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; }
39
-
40
- 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; }
41
-
42
- var StyledMessages = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n overflow-x: hidden;\n flex-direction: column;\n flex: none;\n white-space: pre;\n word-wrap: break-word;\n"])));
43
-
44
- var DefaultIntroImage = _styledComponents["default"].img(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 50%;\n width: 100%;\n"])));
45
-
46
- var WebchatMessageList = function WebchatMessageList(props) {
47
- var _useContext = (0, _react.useContext)(_contexts.WebchatContext),
48
- webchatState = _useContext.webchatState,
49
- getThemeProperty = _useContext.getThemeProperty;
50
-
51
- var animationsEnabled = getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.enableAnimations, true);
52
- var CustomIntro = getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.customIntro);
53
- var introImage = getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.introImage);
54
- var introStyle = getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.introStyle);
55
-
56
- var scrollbarOptions = _objectSpread(_objectSpread({}, {
57
- enable: true,
58
- autoHide: true
59
- }), getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.scrollbar));
60
-
61
- var DefaultIntro = introImage && /*#__PURE__*/_react["default"].createElement(DefaultIntroImage, {
62
- style: _objectSpread({}, introStyle),
63
- src: (0, _environment.resolveImage)(introImage)
64
- });
65
-
66
- return /*#__PURE__*/_react["default"].createElement(_styledScrollbar.StyledScrollbar, {
67
- role: _constants.ROLES.MESSAGE_LIST // TODO: Distinguis between multiple instances of webchat, e.g. `${uniqueId}-botonic-scrollable`
68
- ,
69
- id: "botonic-scrollable-content",
70
- scrollbar: scrollbarOptions,
71
- autoHide: scrollbarOptions.autoHide,
72
- ismessagescontainer: "true",
73
- style: _objectSpread({}, props.style)
74
- }, (CustomIntro || DefaultIntro) && /*#__PURE__*/_react["default"].createElement(_react2.ConditionalWrapper, {
75
- condition: animationsEnabled,
76
- wrapper: function wrapper(children) {
77
- return /*#__PURE__*/_react["default"].createElement(_Fade["default"], null, children);
78
- }
79
- }, CustomIntro ? /*#__PURE__*/_react["default"].createElement(CustomIntro, null) : DefaultIntro), webchatState.messagesComponents.map(function (e, i) {
80
- return /*#__PURE__*/_react["default"].createElement(StyledMessages, {
81
- role: _constants.ROLES.MESSAGE,
82
- key: i
83
- }, e);
84
- }), props.children);
85
- };
86
-
87
- exports.WebchatMessageList = WebchatMessageList;
88
- //# sourceMappingURL=message-list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/webchat/message-list.jsx"],"names":["StyledMessages","styled","div","DefaultIntroImage","img","WebchatMessageList","props","WebchatContext","webchatState","getThemeProperty","animationsEnabled","WEBCHAT","CUSTOM_PROPERTIES","enableAnimations","CustomIntro","customIntro","introImage","introStyle","scrollbarOptions","enable","autoHide","scrollbar","DefaultIntro","ROLES","MESSAGE_LIST","style","children","messagesComponents","map","e","i","MESSAGE"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA,IAAMA,cAAc,GAAGC,6BAAOC,GAAV,0NAApB;;AASA,IAAMC,iBAAiB,GAAGF,6BAAOG,GAAV,8HAAvB;;AAKO,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAAAC,KAAK,EAAI;AACzC,oBAA2C,uBAAWC,wBAAX,CAA3C;AAAA,MAAQC,YAAR,eAAQA,YAAR;AAAA,MAAsBC,gBAAtB,eAAsBA,gBAAtB;;AACA,MAAMC,iBAAiB,GAAGD,gBAAgB,CACxCE,mBAAQC,iBAAR,CAA0BC,gBADc,EAExC,IAFwC,CAA1C;AAIA,MAAMC,WAAW,GAAGL,gBAAgB,CAACE,mBAAQC,iBAAR,CAA0BG,WAA3B,CAApC;AACA,MAAMC,UAAU,GAAGP,gBAAgB,CAACE,mBAAQC,iBAAR,CAA0BI,UAA3B,CAAnC;AACA,MAAMC,UAAU,GAAGR,gBAAgB,CAACE,mBAAQC,iBAAR,CAA0BK,UAA3B,CAAnC;;AAEA,MAAMC,gBAAgB,mCACjB;AAAEC,IAAAA,MAAM,EAAE,IAAV;AAAgBC,IAAAA,QAAQ,EAAE;AAA1B,GADiB,GAEjBX,gBAAgB,CAACE,mBAAQC,iBAAR,CAA0BS,SAA3B,CAFC,CAAtB;;AAKA,MAAMC,YAAY,GAAGN,UAAU,iBAC7B,gCAAC,iBAAD;AACE,IAAA,KAAK,oBACAC,UADA,CADP;AAIE,IAAA,GAAG,EAAE,+BAAaD,UAAb;AAJP,IADF;;AASA,sBACE,gCAAC,gCAAD;AACE,IAAA,IAAI,EAAEO,iBAAMC,YADd,CAEE;AAFF;AAGE,IAAA,EAAE,EAAC,4BAHL;AAIE,IAAA,SAAS,EAAEN,gBAJb;AAKE,IAAA,QAAQ,EAAEA,gBAAgB,CAACE,QAL7B;AAME,IAAA,mBAAmB,EAAC,MANtB;AAOE,IAAA,KAAK,oBACAd,KAAK,CAACmB,KADN;AAPP,KAWG,CAACX,WAAW,IAAIQ,YAAhB,kBACC,gCAAC,0BAAD;AACE,IAAA,SAAS,EAAEZ,iBADb;AAEE,IAAA,OAAO,EAAE,iBAAAgB,QAAQ;AAAA,0BAAI,gCAAC,gBAAD,QAAOA,QAAP,CAAJ;AAAA;AAFnB,KAIGZ,WAAW,gBAAG,gCAAC,WAAD,OAAH,GAAqBQ,YAJnC,CAZJ,EAmBGd,YAAY,CAACmB,kBAAb,CAAgCC,GAAhC,CAAoC,UAACC,CAAD,EAAIC,CAAJ;AAAA,wBACnC,gCAAC,cAAD;AAAgB,MAAA,IAAI,EAAEP,iBAAMQ,OAA5B;AAAqC,MAAA,GAAG,EAAED;AAA1C,OACGD,CADH,CADmC;AAAA,GAApC,CAnBH,EAwBGvB,KAAK,CAACoB,QAxBT,CADF;AA4BD,CApDM","sourcesContent":["import React, { useContext } from 'react'\nimport Fade from 'react-reveal/Fade'\nimport styled from 'styled-components'\n\nimport { ROLES, WEBCHAT } from '../constants'\nimport { WebchatContext } from '../contexts'\nimport { resolveImage } from '../util/environment'\nimport { ConditionalWrapper } from '../util/react'\nimport { StyledScrollbar } from './components/styled-scrollbar'\n\nconst StyledMessages = styled.div`\n display: flex;\n overflow-x: hidden;\n flex-direction: column;\n flex: none;\n white-space: pre;\n word-wrap: break-word;\n`\n\nconst DefaultIntroImage = styled.img`\n max-height: 50%;\n width: 100%;\n`\n\nexport const WebchatMessageList = props => {\n const { webchatState, getThemeProperty } = useContext(WebchatContext)\n const animationsEnabled = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.enableAnimations,\n true\n )\n const CustomIntro = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.customIntro)\n const introImage = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.introImage)\n const introStyle = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.introStyle)\n\n const scrollbarOptions = {\n ...{ enable: true, autoHide: true },\n ...getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.scrollbar),\n }\n\n const DefaultIntro = introImage && (\n <DefaultIntroImage\n style={{\n ...introStyle,\n }}\n src={resolveImage(introImage)}\n />\n )\n\n return (\n <StyledScrollbar\n role={ROLES.MESSAGE_LIST}\n // TODO: Distinguis between multiple instances of webchat, e.g. `${uniqueId}-botonic-scrollable`\n id='botonic-scrollable-content'\n scrollbar={scrollbarOptions}\n autoHide={scrollbarOptions.autoHide}\n ismessagescontainer='true'\n style={{\n ...props.style,\n }}\n >\n {(CustomIntro || DefaultIntro) && (\n <ConditionalWrapper\n condition={animationsEnabled}\n wrapper={children => <Fade>{children}</Fade>}\n >\n {CustomIntro ? <CustomIntro /> : DefaultIntro}\n </ConditionalWrapper>\n )}\n {webchatState.messagesComponents.map((e, i) => (\n <StyledMessages role={ROLES.MESSAGE} key={i}>\n {e}\n </StyledMessages>\n ))}\n {props.children}\n </StyledScrollbar>\n )\n}\n"],"file":"message-list.js"}