@botonic/react 0.30.7-alpha.1 → 0.30.8-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (388) hide show
  1. package/lib/cjs/components/carousel.d.ts +1 -2
  2. package/lib/cjs/contexts.d.ts +0 -1
  3. package/lib/cjs/message-utils.d.ts +1 -2
  4. package/lib/cjs/node-app.d.ts +1 -1
  5. package/lib/cjs/react-bot.d.ts +1 -2
  6. package/lib/cjs/webchat/hooks/use-scroll-to-bottom.d.ts +1 -2
  7. package/lib/cjs/webchat/hooks/use-scroll-to-bottom.js +1 -2
  8. package/lib/cjs/webchat/hooks/use-scroll-to-bottom.js.map +1 -1
  9. package/lib/cjs/webchat/hooks/use-webchat.d.ts +0 -1
  10. package/lib/cjs/webchat/message-list/index.js +0 -2
  11. package/lib/cjs/webchat/message-list/index.js.map +1 -1
  12. package/lib/cjs/webchat/message-list/styles.js +1 -0
  13. package/lib/cjs/webchat/message-list/styles.js.map +1 -1
  14. package/lib/cjs/webchat/utils.d.ts +0 -1
  15. package/lib/cjs/webchat-app.d.ts +3 -4
  16. package/package.json +1 -1
  17. package/src/webchat/hooks/use-scroll-to-bottom.ts +1 -6
  18. package/src/webchat/message-list/index.tsx +0 -2
  19. package/src/webchat/message-list/styles.ts +1 -0
  20. package/lib/esm/app.d.ts +0 -2
  21. package/lib/esm/app.js +0 -6
  22. package/lib/esm/app.js.map +0 -1
  23. package/lib/esm/botonic-tester.d.ts +0 -30
  24. package/lib/esm/botonic-tester.js +0 -78
  25. package/lib/esm/botonic-tester.js.map +0 -1
  26. package/lib/esm/components/audio.d.ts +0 -8
  27. package/lib/esm/components/audio.js +0 -18
  28. package/lib/esm/components/audio.js.map +0 -1
  29. package/lib/esm/components/button.d.ts +0 -17
  30. package/lib/esm/components/button.js +0 -160
  31. package/lib/esm/components/button.js.map +0 -1
  32. package/lib/esm/components/buttons-disabler.d.ts +0 -24
  33. package/lib/esm/components/buttons-disabler.js +0 -84
  34. package/lib/esm/components/buttons-disabler.js.map +0 -1
  35. package/lib/esm/components/carousel.d.ts +0 -10
  36. package/lib/esm/components/carousel.js +0 -105
  37. package/lib/esm/components/carousel.js.map +0 -1
  38. package/lib/esm/components/components.d.ts +0 -12
  39. package/lib/esm/components/components.js +0 -17
  40. package/lib/esm/components/components.js.map +0 -1
  41. package/lib/esm/components/custom-message.d.ts +0 -12
  42. package/lib/esm/components/custom-message.js +0 -56
  43. package/lib/esm/components/custom-message.js.map +0 -1
  44. package/lib/esm/components/document.d.ts +0 -8
  45. package/lib/esm/components/document.js +0 -42
  46. package/lib/esm/components/document.js.map +0 -1
  47. package/lib/esm/components/element.d.ts +0 -4
  48. package/lib/esm/components/element.js +0 -51
  49. package/lib/esm/components/element.js.map +0 -1
  50. package/lib/esm/components/handoff.d.ts +0 -1
  51. package/lib/esm/components/handoff.js +0 -49
  52. package/lib/esm/components/handoff.js.map +0 -1
  53. package/lib/esm/components/image.d.ts +0 -8
  54. package/lib/esm/components/image.js +0 -35
  55. package/lib/esm/components/image.js.map +0 -1
  56. package/lib/esm/components/index-types.d.ts +0 -186
  57. package/lib/esm/components/index-types.js +0 -2
  58. package/lib/esm/components/index-types.js.map +0 -1
  59. package/lib/esm/components/index.d.ts +0 -24
  60. package/lib/esm/components/index.js +0 -25
  61. package/lib/esm/components/index.js.map +0 -1
  62. package/lib/esm/components/location.d.ts +0 -11
  63. package/lib/esm/components/location.js +0 -27
  64. package/lib/esm/components/location.js.map +0 -1
  65. package/lib/esm/components/markdown.d.ts +0 -7
  66. package/lib/esm/components/markdown.js +0 -152
  67. package/lib/esm/components/markdown.js.map +0 -1
  68. package/lib/esm/components/message/index.d.ts +0 -1
  69. package/lib/esm/components/message/index.js +0 -146
  70. package/lib/esm/components/message/index.js.map +0 -1
  71. package/lib/esm/components/message/message-feedback.d.ts +0 -7
  72. package/lib/esm/components/message/message-feedback.js +0 -59
  73. package/lib/esm/components/message/message-feedback.js.map +0 -1
  74. package/lib/esm/components/message/message-footer.d.ts +0 -11
  75. package/lib/esm/components/message/message-footer.js +0 -17
  76. package/lib/esm/components/message/message-footer.js.map +0 -1
  77. package/lib/esm/components/message/message-image.d.ts +0 -7
  78. package/lib/esm/components/message/message-image.js +0 -19
  79. package/lib/esm/components/message/message-image.js.map +0 -1
  80. package/lib/esm/components/message/styles.d.ts +0 -33
  81. package/lib/esm/components/message/styles.js +0 -118
  82. package/lib/esm/components/message/styles.js.map +0 -1
  83. package/lib/esm/components/message/timestamps.d.ts +0 -13
  84. package/lib/esm/components/message/timestamps.js +0 -40
  85. package/lib/esm/components/message/timestamps.js.map +0 -1
  86. package/lib/esm/components/message-template.d.ts +0 -1
  87. package/lib/esm/components/message-template.js +0 -9
  88. package/lib/esm/components/message-template.js.map +0 -1
  89. package/lib/esm/components/multichannel/facebook/facebook.d.ts +0 -17
  90. package/lib/esm/components/multichannel/facebook/facebook.js +0 -43
  91. package/lib/esm/components/multichannel/facebook/facebook.js.map +0 -1
  92. package/lib/esm/components/multichannel/index-types.d.ts +0 -46
  93. package/lib/esm/components/multichannel/index-types.js +0 -2
  94. package/lib/esm/components/multichannel/index-types.js.map +0 -1
  95. package/lib/esm/components/multichannel/index.d.ts +0 -11
  96. package/lib/esm/components/multichannel/index.js +0 -12
  97. package/lib/esm/components/multichannel/index.js.map +0 -1
  98. package/lib/esm/components/multichannel/multichannel-button.d.ts +0 -1
  99. package/lib/esm/components/multichannel/multichannel-button.js +0 -67
  100. package/lib/esm/components/multichannel/multichannel-button.js.map +0 -1
  101. package/lib/esm/components/multichannel/multichannel-carousel.d.ts +0 -1
  102. package/lib/esm/components/multichannel/multichannel-carousel.js +0 -74
  103. package/lib/esm/components/multichannel/multichannel-carousel.js.map +0 -1
  104. package/lib/esm/components/multichannel/multichannel-context.d.ts +0 -11
  105. package/lib/esm/components/multichannel/multichannel-context.js +0 -12
  106. package/lib/esm/components/multichannel/multichannel-context.js.map +0 -1
  107. package/lib/esm/components/multichannel/multichannel-reply.d.ts +0 -1
  108. package/lib/esm/components/multichannel/multichannel-reply.js +0 -20
  109. package/lib/esm/components/multichannel/multichannel-reply.js.map +0 -1
  110. package/lib/esm/components/multichannel/multichannel-text.d.ts +0 -1
  111. package/lib/esm/components/multichannel/multichannel-text.js +0 -160
  112. package/lib/esm/components/multichannel/multichannel-text.js.map +0 -1
  113. package/lib/esm/components/multichannel/multichannel-utils.d.ts +0 -21
  114. package/lib/esm/components/multichannel/multichannel-utils.js +0 -81
  115. package/lib/esm/components/multichannel/multichannel-utils.js.map +0 -1
  116. package/lib/esm/components/multichannel/multichannel.d.ts +0 -1
  117. package/lib/esm/components/multichannel/multichannel.js +0 -57
  118. package/lib/esm/components/multichannel/multichannel.js.map +0 -1
  119. package/lib/esm/components/multichannel/whatsapp/constants.d.ts +0 -11
  120. package/lib/esm/components/multichannel/whatsapp/constants.js +0 -10
  121. package/lib/esm/components/multichannel/whatsapp/constants.js.map +0 -1
  122. package/lib/esm/components/multichannel/whatsapp/markdown-meta.d.ts +0 -1
  123. package/lib/esm/components/multichannel/whatsapp/markdown-meta.js +0 -38
  124. package/lib/esm/components/multichannel/whatsapp/markdown-meta.js.map +0 -1
  125. package/lib/esm/components/pic.d.ts +0 -6
  126. package/lib/esm/components/pic.js +0 -25
  127. package/lib/esm/components/pic.js.map +0 -1
  128. package/lib/esm/components/raw.d.ts +0 -9
  129. package/lib/esm/components/raw.js +0 -39
  130. package/lib/esm/components/raw.js.map +0 -1
  131. package/lib/esm/components/reply.d.ts +0 -9
  132. package/lib/esm/components/reply.js +0 -49
  133. package/lib/esm/components/reply.js.map +0 -1
  134. package/lib/esm/components/share-button.d.ts +0 -1
  135. package/lib/esm/components/share-button.js +0 -9
  136. package/lib/esm/components/share-button.js.map +0 -1
  137. package/lib/esm/components/subtitle.d.ts +0 -6
  138. package/lib/esm/components/subtitle.js +0 -19
  139. package/lib/esm/components/subtitle.js.map +0 -1
  140. package/lib/esm/components/text.d.ts +0 -7
  141. package/lib/esm/components/text.js +0 -40
  142. package/lib/esm/components/text.js.map +0 -1
  143. package/lib/esm/components/title.d.ts +0 -6
  144. package/lib/esm/components/title.js +0 -17
  145. package/lib/esm/components/title.js.map +0 -1
  146. package/lib/esm/components/video.d.ts +0 -8
  147. package/lib/esm/components/video.js +0 -26
  148. package/lib/esm/components/video.js.map +0 -1
  149. package/lib/esm/components/webchat-settings.d.ts +0 -3
  150. package/lib/esm/components/webchat-settings.js +0 -69
  151. package/lib/esm/components/webchat-settings.js.map +0 -1
  152. package/lib/esm/components/whatsapp-button-list.d.ts +0 -20
  153. package/lib/esm/components/whatsapp-button-list.js +0 -47
  154. package/lib/esm/components/whatsapp-button-list.js.map +0 -1
  155. package/lib/esm/components/whatsapp-cta-url-button.d.ts +0 -15
  156. package/lib/esm/components/whatsapp-cta-url-button.js +0 -33
  157. package/lib/esm/components/whatsapp-cta-url-button.js.map +0 -1
  158. package/lib/esm/components/whatsapp-template.d.ts +0 -1
  159. package/lib/esm/components/whatsapp-template.js +0 -20
  160. package/lib/esm/components/whatsapp-template.js.map +0 -1
  161. package/lib/esm/constants.d.ts +0 -165
  162. package/lib/esm/constants.js +0 -187
  163. package/lib/esm/constants.js.map +0 -1
  164. package/lib/esm/contexts.d.ts +0 -19
  165. package/lib/esm/contexts.js +0 -95
  166. package/lib/esm/contexts.js.map +0 -1
  167. package/lib/esm/dev-app.d.ts +0 -31
  168. package/lib/esm/dev-app.js +0 -78
  169. package/lib/esm/dev-app.js.map +0 -1
  170. package/lib/esm/index-types.d.ts +0 -150
  171. package/lib/esm/index-types.js +0 -12
  172. package/lib/esm/index-types.js.map +0 -1
  173. package/lib/esm/index.d.ts +0 -11
  174. package/lib/esm/index.js +0 -12
  175. package/lib/esm/index.js.map +0 -1
  176. package/lib/esm/message-utils.d.ts +0 -19
  177. package/lib/esm/message-utils.js +0 -41
  178. package/lib/esm/message-utils.js.map +0 -1
  179. package/lib/esm/msg-to-botonic.d.ts +0 -18
  180. package/lib/esm/msg-to-botonic.js +0 -135
  181. package/lib/esm/msg-to-botonic.js.map +0 -1
  182. package/lib/esm/node-app.d.ts +0 -7
  183. package/lib/esm/node-app.js +0 -19
  184. package/lib/esm/node-app.js.map +0 -1
  185. package/lib/esm/react-bot.d.ts +0 -8
  186. package/lib/esm/react-bot.js +0 -32
  187. package/lib/esm/react-bot.js.map +0 -1
  188. package/lib/esm/shared/styles.d.ts +0 -2
  189. package/lib/esm/shared/styles.js +0 -28
  190. package/lib/esm/shared/styles.js.map +0 -1
  191. package/lib/esm/util/dom.d.ts +0 -4
  192. package/lib/esm/util/dom.js +0 -24
  193. package/lib/esm/util/dom.js.map +0 -1
  194. package/lib/esm/util/environment.d.ts +0 -6
  195. package/lib/esm/util/environment.js +0 -61
  196. package/lib/esm/util/environment.js.map +0 -1
  197. package/lib/esm/util/error-boundary.d.ts +0 -7
  198. package/lib/esm/util/error-boundary.js +0 -28
  199. package/lib/esm/util/error-boundary.js.map +0 -1
  200. package/lib/esm/util/index.d.ts +0 -9
  201. package/lib/esm/util/index.js +0 -10
  202. package/lib/esm/util/index.js.map +0 -1
  203. package/lib/esm/util/logs.d.ts +0 -2
  204. package/lib/esm/util/logs.js +0 -15
  205. package/lib/esm/util/logs.js.map +0 -1
  206. package/lib/esm/util/objects.d.ts +0 -3
  207. package/lib/esm/util/objects.js +0 -38
  208. package/lib/esm/util/objects.js.map +0 -1
  209. package/lib/esm/util/react.d.ts +0 -12
  210. package/lib/esm/util/react.js +0 -34
  211. package/lib/esm/util/react.js.map +0 -1
  212. package/lib/esm/util/regexs.d.ts +0 -2
  213. package/lib/esm/util/regexs.js +0 -18
  214. package/lib/esm/util/regexs.js.map +0 -1
  215. package/lib/esm/util/strings.d.ts +0 -1
  216. package/lib/esm/util/strings.js +0 -7
  217. package/lib/esm/util/strings.js.map +0 -1
  218. package/lib/esm/util/webchat.d.ts +0 -11
  219. package/lib/esm/util/webchat.js +0 -53
  220. package/lib/esm/util/webchat.js.map +0 -1
  221. package/lib/esm/util/webviews.d.ts +0 -1
  222. package/lib/esm/util/webviews.js +0 -6
  223. package/lib/esm/util/webviews.js.map +0 -1
  224. package/lib/esm/webchat/actions.d.ts +0 -27
  225. package/lib/esm/webchat/actions.js +0 -29
  226. package/lib/esm/webchat/actions.js.map +0 -1
  227. package/lib/esm/webchat/chat-area/index.d.ts +0 -1
  228. package/lib/esm/webchat/chat-area/index.js +0 -18
  229. package/lib/esm/webchat/chat-area/index.js.map +0 -1
  230. package/lib/esm/webchat/chat-area/styles.d.ts +0 -3
  231. package/lib/esm/webchat/chat-area/styles.js +0 -9
  232. package/lib/esm/webchat/chat-area/styles.js.map +0 -1
  233. package/lib/esm/webchat/components/common.d.ts +0 -1
  234. package/lib/esm/webchat/components/common.js +0 -9
  235. package/lib/esm/webchat/components/common.js.map +0 -1
  236. package/lib/esm/webchat/components/conditional-animation.d.ts +0 -1
  237. package/lib/esm/webchat/components/conditional-animation.js +0 -12
  238. package/lib/esm/webchat/components/conditional-animation.js.map +0 -1
  239. package/lib/esm/webchat/components/opened-persistent-menu.d.ts +0 -6
  240. package/lib/esm/webchat/components/opened-persistent-menu.js +0 -30
  241. package/lib/esm/webchat/components/opened-persistent-menu.js.map +0 -1
  242. package/lib/esm/webchat/constants.d.ts +0 -8
  243. package/lib/esm/webchat/constants.js +0 -10
  244. package/lib/esm/webchat/constants.js.map +0 -1
  245. package/lib/esm/webchat/cover-component/index.d.ts +0 -6
  246. package/lib/esm/webchat/cover-component/index.js +0 -17
  247. package/lib/esm/webchat/cover-component/index.js.map +0 -1
  248. package/lib/esm/webchat/devices/index.d.ts +0 -11
  249. package/lib/esm/webchat/devices/index.js +0 -18
  250. package/lib/esm/webchat/devices/index.js.map +0 -1
  251. package/lib/esm/webchat/header.d.ts +0 -3
  252. package/lib/esm/webchat/header.js +0 -81
  253. package/lib/esm/webchat/header.js.map +0 -1
  254. package/lib/esm/webchat/hooks/index.d.ts +0 -11
  255. package/lib/esm/webchat/hooks/index.js +0 -12
  256. package/lib/esm/webchat/hooks/index.js.map +0 -1
  257. package/lib/esm/webchat/hooks/use-component-visible.d.ts +0 -8
  258. package/lib/esm/webchat/hooks/use-component-visible.js +0 -20
  259. package/lib/esm/webchat/hooks/use-component-visible.js.map +0 -1
  260. package/lib/esm/webchat/hooks/use-component-will-mount.d.ts +0 -1
  261. package/lib/esm/webchat/hooks/use-component-will-mount.js +0 -5
  262. package/lib/esm/webchat/hooks/use-component-will-mount.js.map +0 -1
  263. package/lib/esm/webchat/hooks/use-device-adapter.d.ts +0 -3
  264. package/lib/esm/webchat/hooks/use-device-adapter.js +0 -42
  265. package/lib/esm/webchat/hooks/use-device-adapter.js.map +0 -1
  266. package/lib/esm/webchat/hooks/use-previous.d.ts +0 -1
  267. package/lib/esm/webchat/hooks/use-previous.js +0 -9
  268. package/lib/esm/webchat/hooks/use-previous.js.map +0 -1
  269. package/lib/esm/webchat/hooks/use-scroll-to-bottom.d.ts +0 -7
  270. package/lib/esm/webchat/hooks/use-scroll-to-bottom.js +0 -19
  271. package/lib/esm/webchat/hooks/use-scroll-to-bottom.js.map +0 -1
  272. package/lib/esm/webchat/hooks/use-scrollbar-controller.d.ts +0 -6
  273. package/lib/esm/webchat/hooks/use-scrollbar-controller.js +0 -136
  274. package/lib/esm/webchat/hooks/use-scrollbar-controller.js.map +0 -1
  275. package/lib/esm/webchat/hooks/use-typing.d.ts +0 -10
  276. package/lib/esm/webchat/hooks/use-typing.js +0 -28
  277. package/lib/esm/webchat/hooks/use-typing.js.map +0 -1
  278. package/lib/esm/webchat/hooks/use-virtual-keyboard-detection.d.ts +0 -3
  279. package/lib/esm/webchat/hooks/use-virtual-keyboard-detection.js +0 -24
  280. package/lib/esm/webchat/hooks/use-virtual-keyboard-detection.js.map +0 -1
  281. package/lib/esm/webchat/hooks/use-webchat-dimensions.d.ts +0 -4
  282. package/lib/esm/webchat/hooks/use-webchat-dimensions.js +0 -36
  283. package/lib/esm/webchat/hooks/use-webchat-dimensions.js.map +0 -1
  284. package/lib/esm/webchat/hooks/use-webchat-resizer.d.ts +0 -4
  285. package/lib/esm/webchat/hooks/use-webchat-resizer.js +0 -30
  286. package/lib/esm/webchat/hooks/use-webchat-resizer.js.map +0 -1
  287. package/lib/esm/webchat/hooks/use-webchat.d.ts +0 -47
  288. package/lib/esm/webchat/hooks/use-webchat.js +0 -189
  289. package/lib/esm/webchat/hooks/use-webchat.js.map +0 -1
  290. package/lib/esm/webchat/index-types.d.ts +0 -62
  291. package/lib/esm/webchat/index-types.js +0 -2
  292. package/lib/esm/webchat/index-types.js.map +0 -1
  293. package/lib/esm/webchat/index.d.ts +0 -4
  294. package/lib/esm/webchat/index.js +0 -10
  295. package/lib/esm/webchat/index.js.map +0 -1
  296. package/lib/esm/webchat/input-panel/attachment.d.ts +0 -7
  297. package/lib/esm/webchat/input-panel/attachment.js +0 -26
  298. package/lib/esm/webchat/input-panel/attachment.js.map +0 -1
  299. package/lib/esm/webchat/input-panel/emoji-picker.d.ts +0 -6
  300. package/lib/esm/webchat/input-panel/emoji-picker.js +0 -23
  301. package/lib/esm/webchat/input-panel/emoji-picker.js.map +0 -1
  302. package/lib/esm/webchat/input-panel/index.d.ts +0 -12
  303. package/lib/esm/webchat/input-panel/index.js +0 -50
  304. package/lib/esm/webchat/input-panel/index.js.map +0 -1
  305. package/lib/esm/webchat/input-panel/opened-emoji-picker.d.ts +0 -6
  306. package/lib/esm/webchat/input-panel/opened-emoji-picker.js +0 -10
  307. package/lib/esm/webchat/input-panel/opened-emoji-picker.js.map +0 -1
  308. package/lib/esm/webchat/input-panel/persistent-menu.d.ts +0 -6
  309. package/lib/esm/webchat/input-panel/persistent-menu.js +0 -14
  310. package/lib/esm/webchat/input-panel/persistent-menu.js.map +0 -1
  311. package/lib/esm/webchat/input-panel/send-button.d.ts +0 -5
  312. package/lib/esm/webchat/input-panel/send-button.js +0 -14
  313. package/lib/esm/webchat/input-panel/send-button.js.map +0 -1
  314. package/lib/esm/webchat/input-panel/styles.d.ts +0 -3
  315. package/lib/esm/webchat/input-panel/styles.js +0 -27
  316. package/lib/esm/webchat/input-panel/styles.js.map +0 -1
  317. package/lib/esm/webchat/input-panel/textarea.d.ts +0 -11
  318. package/lib/esm/webchat/input-panel/textarea.js +0 -56
  319. package/lib/esm/webchat/input-panel/textarea.js.map +0 -1
  320. package/lib/esm/webchat/message-list/index.d.ts +0 -1
  321. package/lib/esm/webchat/message-list/index.js +0 -109
  322. package/lib/esm/webchat/message-list/index.js.map +0 -1
  323. package/lib/esm/webchat/message-list/intro-message.d.ts +0 -1
  324. package/lib/esm/webchat/message-list/intro-message.js +0 -18
  325. package/lib/esm/webchat/message-list/intro-message.js.map +0 -1
  326. package/lib/esm/webchat/message-list/scroll-button.d.ts +0 -5
  327. package/lib/esm/webchat/message-list/scroll-button.js +0 -12
  328. package/lib/esm/webchat/message-list/scroll-button.js.map +0 -1
  329. package/lib/esm/webchat/message-list/styles.d.ts +0 -5
  330. package/lib/esm/webchat/message-list/styles.js +0 -55
  331. package/lib/esm/webchat/message-list/styles.js.map +0 -1
  332. package/lib/esm/webchat/message-list/unread-messages-banner.d.ts +0 -6
  333. package/lib/esm/webchat/message-list/unread-messages-banner.js +0 -13
  334. package/lib/esm/webchat/message-list/unread-messages-banner.js.map +0 -1
  335. package/lib/esm/webchat/message-list/use-debounce.d.ts +0 -1
  336. package/lib/esm/webchat/message-list/use-debounce.js +0 -14
  337. package/lib/esm/webchat/message-list/use-debounce.js.map +0 -1
  338. package/lib/esm/webchat/message-list/use-notifications.d.ts +0 -7
  339. package/lib/esm/webchat/message-list/use-notifications.js +0 -20
  340. package/lib/esm/webchat/message-list/use-notifications.js.map +0 -1
  341. package/lib/esm/webchat/messages-reducer.d.ts +0 -6
  342. package/lib/esm/webchat/messages-reducer.js +0 -83
  343. package/lib/esm/webchat/messages-reducer.js.map +0 -1
  344. package/lib/esm/webchat/replies.d.ts +0 -1
  345. package/lib/esm/webchat/replies.js +0 -42
  346. package/lib/esm/webchat/replies.js.map +0 -1
  347. package/lib/esm/webchat/session-view.d.ts +0 -1
  348. package/lib/esm/webchat/session-view.js +0 -96
  349. package/lib/esm/webchat/session-view.js.map +0 -1
  350. package/lib/esm/webchat/tracking.d.ts +0 -7
  351. package/lib/esm/webchat/tracking.js +0 -10
  352. package/lib/esm/webchat/tracking.js.map +0 -1
  353. package/lib/esm/webchat/trigger-button/index.d.ts +0 -1
  354. package/lib/esm/webchat/trigger-button/index.js +0 -28
  355. package/lib/esm/webchat/trigger-button/index.js.map +0 -1
  356. package/lib/esm/webchat/trigger-button/styles.d.ts +0 -3
  357. package/lib/esm/webchat/trigger-button/styles.js +0 -36
  358. package/lib/esm/webchat/trigger-button/styles.js.map +0 -1
  359. package/lib/esm/webchat/typing-indicator/index.d.ts +0 -3
  360. package/lib/esm/webchat/typing-indicator/index.js +0 -8
  361. package/lib/esm/webchat/typing-indicator/index.js.map +0 -1
  362. package/lib/esm/webchat/typing-indicator/styles.d.ts +0 -7
  363. package/lib/esm/webchat/typing-indicator/styles.js +0 -46
  364. package/lib/esm/webchat/typing-indicator/styles.js.map +0 -1
  365. package/lib/esm/webchat/use-storage-state-hook.d.ts +0 -1
  366. package/lib/esm/webchat/use-storage-state-hook.js +0 -38
  367. package/lib/esm/webchat/use-storage-state-hook.js.map +0 -1
  368. package/lib/esm/webchat/utils.d.ts +0 -2
  369. package/lib/esm/webchat/utils.js +0 -8
  370. package/lib/esm/webchat/utils.js.map +0 -1
  371. package/lib/esm/webchat/webchat-dev.d.ts +0 -7
  372. package/lib/esm/webchat/webchat-dev.js +0 -56
  373. package/lib/esm/webchat/webchat-dev.js.map +0 -1
  374. package/lib/esm/webchat/webchat-reducer.d.ts +0 -6
  375. package/lib/esm/webchat/webchat-reducer.js +0 -46
  376. package/lib/esm/webchat/webchat-reducer.js.map +0 -1
  377. package/lib/esm/webchat/webchat.d.ts +0 -2
  378. package/lib/esm/webchat/webchat.js +0 -543
  379. package/lib/esm/webchat/webchat.js.map +0 -1
  380. package/lib/esm/webchat/webview.d.ts +0 -2
  381. package/lib/esm/webchat/webview.js +0 -70
  382. package/lib/esm/webchat/webview.js.map +0 -1
  383. package/lib/esm/webchat-app.d.ts +0 -102
  384. package/lib/esm/webchat-app.js +0 -299
  385. package/lib/esm/webchat-app.js.map +0 -1
  386. package/lib/esm/webview-app.d.ts +0 -7
  387. package/lib/esm/webview-app.js +0 -102
  388. package/lib/esm/webview-app.js.map +0 -1
@@ -1,27 +0,0 @@
1
- import styled from 'styled-components';
2
- import { COLORS } from '../../constants';
3
- export const UserInputContainer = styled.div `
4
- min-height: 52px;
5
- position: relative;
6
- display: flex;
7
- align-items: center;
8
- justify-content: flex-start;
9
- gap: 16px;
10
- padding: 0px 16px;
11
- z-index: 1;
12
- border-top: 1px solid ${COLORS.SOLID_BLACK_ALPHA_0_5};
13
- `;
14
- export const TextAreaContainer = styled.div `
15
- display: flex;
16
- flex: 1 1 auto;
17
- align-items: center;
18
- padding: 5px 0px;
19
- `;
20
- export const OpenedEmojiPickerContainer = styled.div `
21
- display: flex;
22
- justify-content: flex-end;
23
- position: absolute;
24
- right: 3px;
25
- top: -324px;
26
- `;
27
- //# sourceMappingURL=styles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAA;AAEtC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAExC,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;0BASlB,MAAM,CAAC,qBAAqB;CACrD,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;CAK1C,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;CAMnD,CAAA"}
@@ -1,11 +0,0 @@
1
- import React from 'react';
2
- import { PersistentMenuTheme } from '../../components/index-types';
3
- interface TextareaProps {
4
- host: HTMLElement;
5
- persistentMenu: PersistentMenuTheme;
6
- textareaRef: React.MutableRefObject<HTMLTextAreaElement>;
7
- sendChatEvent: (event: string) => Promise<void>;
8
- sendTextAreaText: () => Promise<void>;
9
- }
10
- export declare const Textarea: ({ host, persistentMenu, textareaRef, sendChatEvent, sendTextAreaText, }: TextareaProps) => JSX.Element;
11
- export {};
@@ -1,56 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useContext } from 'react';
3
- import TextareaAutosize from 'react-textarea-autosize';
4
- import { WEBCHAT } from '../../constants';
5
- import { WebchatContext } from '../../contexts';
6
- import { Typing } from '../../index-types';
7
- import { useDeviceAdapter } from '../hooks';
8
- import { TextAreaContainer } from './styles';
9
- export const Textarea = ({ host, persistentMenu, textareaRef, sendChatEvent, sendTextAreaText, }) => {
10
- const { getThemeProperty, webchatState, setIsInputFocused } = useContext(WebchatContext);
11
- useDeviceAdapter(host, webchatState.isWebchatOpen);
12
- let isTyping = false;
13
- let typingTimeout;
14
- const persistentMenuOptions = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.persistentMenu, persistentMenu);
15
- const onKeyDown = event => {
16
- if (event.keyCode === 13 && event.shiftKey === false) {
17
- event.preventDefault();
18
- sendTextAreaText();
19
- stopTyping();
20
- }
21
- };
22
- const onKeyUp = () => {
23
- if (textareaRef.current.value === '') {
24
- stopTyping();
25
- return;
26
- }
27
- if (!isTyping) {
28
- startTyping();
29
- }
30
- clearTimeoutWithReset(true);
31
- };
32
- const clearTimeoutWithReset = (reset) => {
33
- const waitTime = 20 * 1000;
34
- if (typingTimeout)
35
- clearTimeout(typingTimeout);
36
- if (reset)
37
- typingTimeout = setTimeout(stopTyping, waitTime);
38
- };
39
- const startTyping = () => {
40
- isTyping = true;
41
- sendChatEvent(Typing.On);
42
- };
43
- const stopTyping = () => {
44
- clearTimeoutWithReset(false);
45
- isTyping = false;
46
- sendChatEvent(Typing.Off);
47
- };
48
- const handleFocus = () => {
49
- setIsInputFocused(true);
50
- };
51
- const handleBlur = () => {
52
- setIsInputFocused(false);
53
- };
54
- return (_jsx(TextAreaContainer, { children: _jsx(TextareaAutosize, { ref: (ref) => (textareaRef.current = ref), onFocus: handleFocus, onBlur: handleBlur, name: 'text', maxRows: 4, wrap: 'soft', maxLength: 1000, placeholder: getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.textPlaceholder, WEBCHAT.DEFAULTS.PLACEHOLDER), autoFocus: false, onKeyDown: e => onKeyDown(e), onKeyUp: onKeyUp, style: Object.assign({ display: 'flex', fontSize: 16, width: '100%', border: 'none', resize: 'none', overflow: 'auto', outline: 'none', flex: '1 1 auto', padding: 10, paddingLeft: persistentMenuOptions ? 0 : 10, fontFamily: 'inherit' }, getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.userInputBoxStyle)) }) }));
55
- };
56
- //# sourceMappingURL=textarea.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/textarea.tsx"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export declare const WebchatMessageList: () => JSX.Element;
@@ -1,109 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useContext, useEffect, useRef, useState } from 'react';
3
- import { ROLES } from '../../constants';
4
- import { WebchatContext } from '../../contexts';
5
- import { BotonicContainerId } from '../constants';
6
- import TypingIndicator from '../typing-indicator';
7
- import { IntroMessage } from './intro-message';
8
- import { ScrollButton } from './scroll-button';
9
- import { ContainerMessage, ScrollableMessageList } from './styles';
10
- import { UnreadMessagesBanner } from './unread-messages-banner';
11
- import { useNotifications } from './use-notifications';
12
- const SCROLL_TIMEOUT = 200;
13
- const scrollOptionsEnd = {
14
- behavior: 'smooth',
15
- block: 'end',
16
- };
17
- const scrollOptionsCenter = {
18
- behavior: 'smooth',
19
- block: 'center',
20
- };
21
- export const WebchatMessageList = () => {
22
- const { webchatState, resetUnreadMessages, setLastMessageVisible, scrollableMessagesListRef, } = useContext(WebchatContext);
23
- const { notificationsEnabled } = useNotifications();
24
- const [firstUnreadMessageId, setFirstUnreadMessageId] = useState();
25
- const lastMessageRef = useRef(null);
26
- const typingRef = useRef(null);
27
- const unreadMessagesBannerRef = useRef(null);
28
- const scrollToTyping = () => {
29
- setTimeout(() => {
30
- var _a;
31
- (_a = typingRef.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView(scrollOptionsEnd);
32
- }, SCROLL_TIMEOUT);
33
- };
34
- const scrollToLastMessage = () => {
35
- setTimeout(() => {
36
- var _a;
37
- (_a = lastMessageRef.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView(scrollOptionsEnd);
38
- }, SCROLL_TIMEOUT);
39
- };
40
- const scrollToBanner = () => {
41
- setTimeout(() => {
42
- var _a;
43
- (_a = unreadMessagesBannerRef.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView(scrollOptionsCenter);
44
- }, SCROLL_TIMEOUT);
45
- };
46
- const handleScrollToBottom = () => {
47
- resetUnreadMessages();
48
- if (webchatState.typing) {
49
- scrollToTyping();
50
- return;
51
- }
52
- scrollToLastMessage();
53
- };
54
- const showUnreadMessagesBanner = (messageComponentId) => {
55
- return (!webchatState.isInputFocused &&
56
- firstUnreadMessageId &&
57
- messageComponentId === firstUnreadMessageId &&
58
- webchatState.numUnreadMessages > 0);
59
- };
60
- useEffect(() => {
61
- var _a;
62
- const firstUnreadMessage = webchatState.messagesComponents.find(message => message.props.isUnread);
63
- setFirstUnreadMessageId((_a = firstUnreadMessage === null || firstUnreadMessage === void 0 ? void 0 : firstUnreadMessage.props) === null || _a === void 0 ? void 0 : _a.id);
64
- }, [webchatState.messagesComponents]);
65
- useEffect(() => {
66
- if (webchatState.messagesComponents.length > 0 && lastMessageRef.current) {
67
- const observer = new IntersectionObserver(entries => {
68
- entries.forEach(entry => {
69
- setLastMessageVisible(entry.isIntersecting);
70
- });
71
- });
72
- observer.observe(lastMessageRef.current);
73
- }
74
- }, [webchatState.messagesComponents]);
75
- useEffect(() => {
76
- if (!notificationsEnabled) {
77
- if (webchatState.typing) {
78
- scrollToTyping();
79
- return;
80
- }
81
- scrollToLastMessage();
82
- }
83
- }, [webchatState.typing, webchatState.messagesComponents]);
84
- useEffect(() => {
85
- if (webchatState.isWebchatOpen && notificationsEnabled) {
86
- if (unreadMessagesBannerRef.current) {
87
- scrollToBanner();
88
- return;
89
- }
90
- if (webchatState.typing) {
91
- scrollToTyping();
92
- return;
93
- }
94
- scrollToLastMessage();
95
- }
96
- }, [
97
- firstUnreadMessageId,
98
- webchatState.isWebchatOpen,
99
- webchatState.typing,
100
- webchatState.messagesComponents,
101
- ]);
102
- const showScrollButton = webchatState.numUnreadMessages > 0 && !webchatState.isLastMessageVisible;
103
- return (_jsxs(_Fragment, { children: [_jsxs(ScrollableMessageList, Object.assign({ id: BotonicContainerId.ScrollableMessagesList, ref: scrollableMessagesListRef, role: ROLES.MESSAGE_LIST }, { children: [_jsx(IntroMessage, {}), webchatState.messagesComponents.map((messageComponent, index) => {
104
- return (_jsxs(_Fragment, { children: [_jsxs(ContainerMessage, Object.assign({ role: ROLES.MESSAGE }, { children: [showUnreadMessagesBanner(messageComponent.props.id) && (_jsx(UnreadMessagesBanner, { unreadMessagesBannerRef: unreadMessagesBannerRef })), messageComponent] }), index), index === webchatState.messagesComponents.length - 1 && (_jsx("div", { ref: lastMessageRef, style: {
105
- content: '',
106
- } }))] }));
107
- }), webchatState.typing && _jsx(TypingIndicator, { ref: typingRef })] })), showScrollButton && _jsx(ScrollButton, { handleClick: handleScrollToBottom })] }));
108
- };
109
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/index.tsx"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export declare const IntroMessage: () => JSX.Element | null;
@@ -1,18 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useContext } from 'react';
3
- import { WEBCHAT } from '../../constants';
4
- import { WebchatContext } from '../../contexts';
5
- import { Fade } from '../../shared/styles';
6
- import { resolveImage } from '../../util/environment';
7
- import { ConditionalWrapper } from '../../util/react';
8
- import { DefaultIntroImage } from './styles';
9
- export const IntroMessage = () => {
10
- const { getThemeProperty } = useContext(WebchatContext);
11
- const animationsEnabled = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.enableAnimations, true);
12
- const CustomIntro = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.customIntro);
13
- const introImage = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.introImage);
14
- const introStyle = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.introStyle);
15
- const DefaultIntro = introImage && (_jsx(DefaultIntroImage, { style: Object.assign({}, introStyle), src: resolveImage(introImage) }));
16
- return CustomIntro || DefaultIntro ? (_jsx(ConditionalWrapper, Object.assign({ condition: animationsEnabled, wrapper: children => _jsx(Fade, { children: children }) }, { children: CustomIntro ? _jsx(CustomIntro, {}) : DefaultIntro }))) : null;
17
- };
18
- //# sourceMappingURL=intro-message.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intro-message.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/intro-message.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAE5C,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,MAAM,EAAE,gBAAgB,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IAEvD,MAAM,iBAAiB,GAAG,gBAAgB,CACxC,OAAO,CAAC,iBAAiB,CAAC,gBAAgB,EAC1C,IAAI,CACL,CAAA;IACD,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAA;IAC3E,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACzE,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;IAEzE,MAAM,YAAY,GAAG,UAAU,IAAI,CACjC,KAAC,iBAAiB,IAChB,KAAK,oBACA,UAAU,GAEf,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,GAC7B,CACH,CAAA;IAED,OAAO,WAAW,IAAI,YAAY,CAAC,CAAC,CAAC,CACnC,KAAC,kBAAkB,kBACjB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAC,IAAI,cAAE,QAAQ,GAAQ,gBAE3C,WAAW,CAAC,CAAC,CAAC,KAAC,WAAW,KAAG,CAAC,CAAC,CAAC,YAAY,IAC1B,CACtB,CAAC,CAAC,CAAC,IAAI,CAAA;AACV,CAAC,CAAA"}
@@ -1,5 +0,0 @@
1
- interface ScrollButtonProps {
2
- handleClick: () => void;
3
- }
4
- export declare const ScrollButton: ({ handleClick, }: ScrollButtonProps) => JSX.Element;
5
- export {};
@@ -1,12 +0,0 @@
1
- import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
- import ArrowScrollDown from '../../assets/arrow-scroll-down.svg';
3
- import { resolveImage } from '../../util/environment';
4
- import { ContainerScrollButton } from './styles';
5
- import { useDebounce } from './use-debounce';
6
- import { useNotifications } from './use-notifications';
7
- export const ScrollButton = ({ handleClick, }) => {
8
- const { CustomScrollButton, scrollButtonEnabled } = useNotifications();
9
- const show = useDebounce();
10
- return (_jsx(_Fragment, { children: scrollButtonEnabled && show ? (_jsx(_Fragment, { children: CustomScrollButton ? (_jsx(CustomScrollButton, { handleScrollToBottom: handleClick })) : (_jsx(ContainerScrollButton, Object.assign({ onClick: handleClick }, { children: _jsx("img", { src: resolveImage(ArrowScrollDown) }) }))) })) : null }));
11
- };
12
- //# sourceMappingURL=scroll-button.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scroll-button.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/scroll-button.tsx"],"names":[],"mappings":";AAEA,OAAO,eAAe,MAAM,oCAAoC,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAMtD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,WAAW,GACO,EAAe,EAAE;IACnC,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,gBAAgB,EAAE,CAAA;IAEtE,MAAM,IAAI,GAAG,WAAW,EAAE,CAAA;IAE1B,OAAO,CACL,4BACG,mBAAmB,IAAI,IAAI,CAAC,CAAC,CAAC,CAC7B,4BACG,kBAAkB,CAAC,CAAC,CAAC,CACpB,KAAC,kBAAkB,IAAC,oBAAoB,EAAE,WAAW,GAAI,CAC1D,CAAC,CAAC,CAAC,CACF,KAAC,qBAAqB,kBAAC,OAAO,EAAE,WAAW,gBACzC,cAAK,GAAG,EAAE,YAAY,CAAC,eAAe,CAAC,GAAI,IACrB,CACzB,GACA,CACJ,CAAC,CAAC,CAAC,IAAI,GACP,CACJ,CAAA;AACH,CAAC,CAAA"}
@@ -1,5 +0,0 @@
1
- export declare const ContainerMessage: import("styled-components").StyledComponent<"div", any, {}, never>;
2
- export declare const DefaultIntroImage: import("styled-components").StyledComponent<"img", any, {}, never>;
3
- export declare const ContainerScrollButton: import("styled-components").StyledComponent<"div", any, {}, never>;
4
- export declare const ContainerUnreadMessagesBanner: import("styled-components").StyledComponent<"div", any, {}, never>;
5
- export declare const ScrollableMessageList: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -1,55 +0,0 @@
1
- import styled from 'styled-components';
2
- export const ContainerMessage = styled.div `
3
- display: flex;
4
- overflow-x: hidden;
5
- flex-direction: column;
6
- flex: none;
7
- white-space: pre;
8
- word-wrap: break-word;
9
- `;
10
- export const DefaultIntroImage = styled.img `
11
- max-height: 50%;
12
- width: 100%;
13
- `;
14
- export const ContainerScrollButton = styled.div `
15
- position: sticky;
16
- left: 85%;
17
- bottom: 15px;
18
-
19
- background-color: #6d6a78;
20
- cursor: pointer;
21
- display: flex;
22
- align-items: center;
23
- justify-content: center;
24
-
25
- width: 37px;
26
- height: 37px;
27
- border-radius: 50%;
28
- `;
29
- export const ContainerUnreadMessagesBanner = styled.div `
30
- display: flex;
31
- justify-content: center;
32
- align-items: center;
33
- gap: 5px;
34
-
35
- border-top: 1px solid #e8e8ea;
36
- padding: 8px;
37
- color: #6d6a78;
38
- font-size: 14px;
39
- font-weight: 400;
40
- width: 100%;
41
-
42
- img {
43
- width: 10px;
44
- }
45
- `;
46
- export const ScrollableMessageList = styled.div `
47
- display: flex;
48
- flex: 1;
49
- flex-direction: column;
50
- overflow-y: auto;
51
- overflow-x: hidden;
52
- overscroll-behavior: contain; // https://css-tricks.com/almanac/properties/o/overscroll-behavior/
53
- -webkit-overflow-scrolling: touch;
54
- `;
55
- //# sourceMappingURL=styles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAA;AAEtC,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;CAOzC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAA;;;CAG1C,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;CAc9C,CAAA;AAED,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;CAgBtD,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;CAQ9C,CAAA"}
@@ -1,6 +0,0 @@
1
- import React from 'react';
2
- interface UnreadMessagesBannerProps {
3
- unreadMessagesBannerRef: React.RefObject<HTMLDivElement>;
4
- }
5
- export declare const UnreadMessagesBanner: ({ unreadMessagesBannerRef, }: UnreadMessagesBannerProps) => JSX.Element;
6
- export {};
@@ -1,13 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useContext } from 'react';
3
- import ArrowDown from '../../assets/arrow-down.svg';
4
- import { WebchatContext } from '../../contexts';
5
- import { resolveImage } from '../../util/environment';
6
- import { ContainerUnreadMessagesBanner } from './styles';
7
- import { useNotifications } from './use-notifications';
8
- export const UnreadMessagesBanner = ({ unreadMessagesBannerRef, }) => {
9
- const { webchatState } = useContext(WebchatContext);
10
- const { notificationsEnabled, CustomUnreadMessagesBanner, bannerText } = useNotifications();
11
- return (_jsx(_Fragment, { children: notificationsEnabled ? (_jsx("div", Object.assign({ ref: unreadMessagesBannerRef }, { children: CustomUnreadMessagesBanner ? (_jsx(CustomUnreadMessagesBanner, {})) : (_jsxs(ContainerUnreadMessagesBanner, { children: [_jsx("img", { src: resolveImage(ArrowDown) }), webchatState.numUnreadMessages, " ", bannerText] })) }))) : null }));
12
- };
13
- //# sourceMappingURL=unread-messages-banner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"unread-messages-banner.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/unread-messages-banner.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,SAAS,MAAM,6BAA6B,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAA;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAMtD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACnC,uBAAuB,GACG,EAAe,EAAE;IAC3C,MAAM,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IAEnD,MAAM,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,UAAU,EAAE,GACpE,gBAAgB,EAAE,CAAA;IAEpB,OAAO,CACL,4BACG,oBAAoB,CAAC,CAAC,CAAC,CACtB,4BAAK,GAAG,EAAE,uBAAuB,gBAC9B,0BAA0B,CAAC,CAAC,CAAC,CAC5B,KAAC,0BAA0B,KAAG,CAC/B,CAAC,CAAC,CAAC,CACF,MAAC,6BAA6B,eAC5B,cAAK,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,GAAI,EACpC,YAAY,CAAC,iBAAiB,OAAG,UAAU,IACd,CACjC,IACG,CACP,CAAC,CAAC,CAAC,IAAI,GACP,CACJ,CAAA;AACH,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- export declare function useDebounce(delay?: number): boolean;
@@ -1,14 +0,0 @@
1
- import { useEffect, useState } from 'react';
2
- export function useDebounce(delay) {
3
- const [show, setShow] = useState(false);
4
- useEffect(() => {
5
- const timeoutId = setTimeout(() => {
6
- setShow(true);
7
- }, delay || 500);
8
- return () => {
9
- clearTimeout(timeoutId);
10
- };
11
- }, []);
12
- return show;
13
- }
14
- //# sourceMappingURL=use-debounce.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-debounce.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/use-debounce.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE3C,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACvC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAChC,OAAO,CAAC,IAAI,CAAC,CAAA;QACf,CAAC,EAAE,KAAK,IAAI,GAAG,CAAC,CAAA;QAEhB,OAAO,GAAG,EAAE;YACV,YAAY,CAAC,SAAS,CAAC,CAAA;QACzB,CAAC,CAAA;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,7 +0,0 @@
1
- export declare function useNotifications(): {
2
- notificationsEnabled: any;
3
- bannerText: any;
4
- CustomUnreadMessagesBanner: any;
5
- CustomScrollButton: any;
6
- scrollButtonEnabled: any;
7
- };
@@ -1,20 +0,0 @@
1
- import { useContext } from 'react';
2
- import { WEBCHAT } from '../../constants';
3
- import { WebchatContext } from '../../contexts';
4
- export function useNotifications() {
5
- const { getThemeProperty } = useContext(WebchatContext);
6
- const CustomUnreadMessagesBanner = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.notificationsBannerCustom, undefined);
7
- const notificationsBannerEnabled = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.notificationsBannerEnabled, undefined);
8
- const notificationsEnabled = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.notificationsEnabled, CustomUnreadMessagesBanner || notificationsBannerEnabled);
9
- const bannerText = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.notificationsBannerText, 'unread messages');
10
- const CustomScrollButton = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.scrollButtonCustom, undefined);
11
- const scrollButtonEnabled = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.scrollButtonEnabled, CustomScrollButton);
12
- return {
13
- notificationsEnabled,
14
- bannerText,
15
- CustomUnreadMessagesBanner,
16
- CustomScrollButton,
17
- scrollButtonEnabled,
18
- };
19
- }
20
- //# sourceMappingURL=use-notifications.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-notifications.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/use-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAElC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAE/C,MAAM,UAAU,gBAAgB;IAC9B,MAAM,EAAE,gBAAgB,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IAEvD,MAAM,0BAA0B,GAAG,gBAAgB,CACjD,OAAO,CAAC,iBAAiB,CAAC,yBAAyB,EACnD,SAAS,CACV,CAAA;IAED,MAAM,0BAA0B,GAAG,gBAAgB,CACjD,OAAO,CAAC,iBAAiB,CAAC,0BAA0B,EACpD,SAAS,CACV,CAAA;IAED,MAAM,oBAAoB,GAAG,gBAAgB,CAC3C,OAAO,CAAC,iBAAiB,CAAC,oBAAoB,EAC9C,0BAA0B,IAAI,0BAA0B,CACzD,CAAA;IAED,MAAM,UAAU,GAAG,gBAAgB,CACjC,OAAO,CAAC,iBAAiB,CAAC,uBAAuB,EACjD,iBAAiB,CAClB,CAAA;IAED,MAAM,kBAAkB,GAAG,gBAAgB,CACzC,OAAO,CAAC,iBAAiB,CAAC,kBAAkB,EAC5C,SAAS,CACV,CAAA;IAED,MAAM,mBAAmB,GAAG,gBAAgB,CAC1C,OAAO,CAAC,iBAAiB,CAAC,mBAAmB,EAC7C,kBAAkB,CACnB,CAAA;IAED,OAAO;QACL,oBAAoB;QACpB,UAAU;QACV,0BAA0B;QAC1B,kBAAkB;QAClB,mBAAmB;KACpB,CAAA;AACH,CAAC"}
@@ -1,6 +0,0 @@
1
- import { WebchatAction } from './actions';
2
- import { WebchatState } from './index-types';
3
- export declare const messagesReducer: (state: WebchatState, action: {
4
- type: WebchatAction;
5
- payload?: any;
6
- }) => WebchatState;
@@ -1,83 +0,0 @@
1
- import { SENDERS } from '../index-types';
2
- import { WebchatAction } from './actions';
3
- export const messagesReducer = (state, action) => {
4
- switch (action.type) {
5
- case WebchatAction.ADD_MESSAGE:
6
- return addMessageReducer(state, action);
7
- case WebchatAction.ADD_MESSAGE_COMPONENT:
8
- return addMessageComponent(state, action);
9
- case WebchatAction.UPDATE_MESSAGE:
10
- return updateMessageReducer(state, action);
11
- case WebchatAction.UPDATE_REPLIES:
12
- return Object.assign(Object.assign({}, state), { replies: action.payload });
13
- case WebchatAction.CLEAR_MESSAGES:
14
- return Object.assign(Object.assign({}, state), { messagesJSON: [], messagesComponents: [], numUnreadMessages: 0 });
15
- case WebchatAction.UPDATE_LAST_MESSAGE_DATE:
16
- return Object.assign(Object.assign({}, state), { lastMessageUpdate: action.payload });
17
- case WebchatAction.RESET_UNREAD_MESSAGES:
18
- return resetUnreadMessages(state);
19
- case WebchatAction.SET_LAST_MESSAGE_VISIBLE:
20
- return Object.assign(Object.assign({}, state), { isLastMessageVisible: action.payload });
21
- default:
22
- throw new Error();
23
- }
24
- };
25
- function addMessageComponent(state, action) {
26
- var _a, _b;
27
- const messageComponent = action.payload;
28
- const isUnreadMessage = ((_a = messageComponent.props) === null || _a === void 0 ? void 0 : _a.isUnread) &&
29
- ((_b = messageComponent.props) === null || _b === void 0 ? void 0 : _b.sentBy) !== SENDERS.user;
30
- const numUnreadMessages = isUnreadMessage
31
- ? state.numUnreadMessages + 1
32
- : state.numUnreadMessages;
33
- return Object.assign(Object.assign({}, state), { messagesComponents: [...(state.messagesComponents || []), messageComponent], numUnreadMessages });
34
- }
35
- function resetUnreadMessages(state) {
36
- const messagesComponents = state.messagesComponents.map(messageComponent => {
37
- if (messageComponent.props.isUnread) {
38
- messageComponent = Object.assign(Object.assign({}, messageComponent), { props: Object.assign(Object.assign({}, messageComponent.props), { isUnread: false }) });
39
- }
40
- return messageComponent;
41
- });
42
- const messagesJSON = state.messagesJSON.map(messageJSON => {
43
- if (messageJSON.isUnread) {
44
- messageJSON.isUnread = false;
45
- }
46
- return messageJSON;
47
- });
48
- return Object.assign(Object.assign({}, state), { messagesComponents,
49
- messagesJSON, numUnreadMessages: 0 });
50
- }
51
- function updateMessageReducer(state, action) {
52
- const msgIndex = state.messagesJSON.map(m => m.id).indexOf(action.payload.id);
53
- if (msgIndex > -1) {
54
- const msgComponent = state.messagesComponents[msgIndex];
55
- let updatedMessageComponents = {};
56
- if (msgComponent) {
57
- const updatedMsgComponent = Object.assign(Object.assign({}, msgComponent), {
58
- props: Object.assign(Object.assign({}, msgComponent.props), { ack: action.payload.ack }),
59
- });
60
- updatedMessageComponents = {
61
- messagesComponents: [
62
- ...state.messagesComponents.slice(0, msgIndex),
63
- Object.assign({}, updatedMsgComponent),
64
- ...state.messagesComponents.slice(msgIndex + 1),
65
- ],
66
- };
67
- }
68
- const numUnreadMessages = state.messagesComponents.filter(messageComponent => messageComponent.props.isUnread).length;
69
- return Object.assign(Object.assign(Object.assign(Object.assign({}, state), { messagesJSON: [
70
- ...state.messagesJSON.slice(0, msgIndex),
71
- Object.assign({}, action.payload),
72
- ...state.messagesJSON.slice(msgIndex + 1),
73
- ] }), updatedMessageComponents), { numUnreadMessages });
74
- }
75
- return state;
76
- }
77
- function addMessageReducer(state, action) {
78
- if (state.messagesJSON &&
79
- state.messagesJSON.find(m => m.id === action.payload.id))
80
- return state;
81
- return Object.assign(Object.assign({}, state), { messagesJSON: [...(state.messagesJSON || []), action.payload] });
82
- }
83
- //# sourceMappingURL=messages-reducer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"messages-reducer.js","sourceRoot":"","sources":["../../../src/webchat/messages-reducer.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export function WebchatReplies(props: any): JSX.Element;
@@ -1,42 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import React, { useContext } from 'react';
3
- import styled from 'styled-components';
4
- import { WEBCHAT } from '../constants';
5
- import { WebchatContext } from '../contexts';
6
- import { BotonicContainerId } from './constants';
7
- const ScrollableReplies = styled.div `
8
- overscroll-behavior: contain;
9
- -webkit-overflow-scrolling: touch;
10
- `;
11
- const RepliesContainer = styled.div `
12
- display: flex;
13
- text-align: center;
14
- justify-content: ${props => props.justify};
15
- flex-wrap: ${props => props.wrap};
16
- padding-bottom: 10px;
17
- margin-left: 5px;
18
- margin-right: 5px;
19
- overflow-x: scroll;
20
- `;
21
- const ReplyContainer = styled.div `
22
- flex: none;
23
- display: inline-block;
24
- margin: 3px;
25
- `;
26
- const options = {
27
- left: 'flex-start',
28
- center: 'center',
29
- right: 'flex-end',
30
- };
31
- export const WebchatReplies = props => {
32
- const { webchatState, getThemeProperty, repliesRef } = useContext(WebchatContext);
33
- let justifyContent = 'center';
34
- const flexWrap = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.wrapReplies, 'wrap');
35
- if (flexWrap == 'nowrap')
36
- justifyContent = 'flex-start';
37
- else if (getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.alignReplies))
38
- justifyContent =
39
- options[getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.alignReplies)];
40
- return (_jsx(ScrollableReplies, { children: _jsx(RepliesContainer, Object.assign({ id: BotonicContainerId.RepliesContainer, ref: repliesRef, className: 'replies-container', justify: justifyContent, wrap: flexWrap }, { children: webchatState.replies.map((r, i) => (_jsx(ReplyContainer, { children: r }, i))) })) }));
41
- };
42
- //# sourceMappingURL=replies.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"replies.js","sourceRoot":"","sources":["../../../src/webchat/replies.jsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,MAAM,MAAM,mBAAmB,CAAA;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAEhD,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAA;;;CAGnC,CAAA;AAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAA;;;qBAGd,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO;eAC5B,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI;;;;;CAKjC,CAAA;AAED,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAA;;;;CAIhC,CAAA;AAED,MAAM,OAAO,GAAG;IACd,IAAI,EAAE,YAAY;IAClB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,UAAU;CAClB,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC,EAAE;IACpC,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAClD,UAAU,CAAC,cAAc,CAAC,CAAA;IAC5B,IAAI,cAAc,GAAG,QAAQ,CAAA;IAC7B,MAAM,QAAQ,GAAG,gBAAgB,CAC/B,OAAO,CAAC,iBAAiB,CAAC,WAAW,EACrC,MAAM,CACP,CAAA;IACD,IAAI,QAAQ,IAAI,QAAQ;QAAE,cAAc,GAAG,YAAY,CAAA;SAClD,IAAI,gBAAgB,CAAC,OAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC;QAC/D,cAAc;YACZ,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAA;IAErE,OAAO,CACL,KAAC,iBAAiB,cAChB,KAAC,gBAAgB,kBACf,EAAE,EAAE,kBAAkB,CAAC,gBAAgB,EACvC,GAAG,EAAE,UAAU,EACf,SAAS,EAAC,mBAAmB,EAC7B,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,QAAQ,gBAEb,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAClC,KAAC,cAAc,cAAU,CAAC,IAAL,CAAC,CAAsB,CAC7C,CAAC,IACe,GACD,CACrB,CAAA;AACH,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- export function SessionView(props: any): JSX.Element;