@botonic/react 0.21.5 → 0.21.7-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 (425) hide show
  1. package/lib/cjs/app.d.ts +2 -0
  2. package/lib/cjs/app.js +10 -0
  3. package/lib/cjs/app.js.map +1 -0
  4. package/lib/cjs/botonic-tester.d.ts +18 -0
  5. package/lib/cjs/botonic-tester.js +70 -0
  6. package/lib/cjs/botonic-tester.js.map +1 -0
  7. package/lib/cjs/components/audio.d.ts +8 -0
  8. package/lib/cjs/components/audio.js +27 -0
  9. package/lib/cjs/components/audio.js.map +1 -0
  10. package/lib/cjs/components/button.d.ts +15 -0
  11. package/lib/cjs/components/button.js +156 -0
  12. package/lib/cjs/components/button.js.map +1 -0
  13. package/lib/cjs/components/buttons-disabler.d.ts +24 -0
  14. package/lib/cjs/components/buttons-disabler.js +88 -0
  15. package/lib/cjs/components/buttons-disabler.js.map +1 -0
  16. package/lib/cjs/components/carousel.d.ts +9 -0
  17. package/lib/cjs/components/carousel.js +120 -0
  18. package/lib/cjs/components/carousel.js.map +1 -0
  19. package/lib/cjs/components/components.d.ts +12 -0
  20. package/lib/{components → cjs/components}/components.js +6 -11
  21. package/lib/cjs/components/components.js.map +1 -0
  22. package/lib/cjs/components/custom-message.d.ts +10 -0
  23. package/lib/cjs/components/custom-message.js +65 -0
  24. package/lib/cjs/components/custom-message.js.map +1 -0
  25. package/lib/cjs/components/document.d.ts +8 -0
  26. package/lib/cjs/components/document.js +50 -0
  27. package/lib/cjs/components/document.js.map +1 -0
  28. package/lib/cjs/components/element.d.ts +4 -0
  29. package/lib/cjs/components/element.js +55 -0
  30. package/lib/cjs/components/element.js.map +1 -0
  31. package/lib/cjs/components/handoff.d.ts +1 -0
  32. package/lib/cjs/components/handoff.js +58 -0
  33. package/lib/cjs/components/handoff.js.map +1 -0
  34. package/lib/cjs/components/image.d.ts +8 -0
  35. package/lib/cjs/components/image.js +42 -0
  36. package/lib/cjs/components/image.js.map +1 -0
  37. package/lib/cjs/components/index.d.ts +1 -0
  38. package/lib/cjs/components/index.js +44 -0
  39. package/lib/cjs/components/index.js.map +1 -0
  40. package/lib/cjs/components/location.d.ts +11 -0
  41. package/lib/cjs/components/location.js +38 -0
  42. package/lib/cjs/components/location.js.map +1 -0
  43. package/lib/cjs/components/markdown.d.ts +7 -0
  44. package/lib/cjs/components/markdown.js +162 -0
  45. package/lib/cjs/components/markdown.js.map +1 -0
  46. package/lib/cjs/components/message-template.d.ts +1 -0
  47. package/lib/cjs/components/message-template.js +15 -0
  48. package/lib/cjs/components/message-template.js.map +1 -0
  49. package/lib/cjs/components/message.d.ts +1 -0
  50. package/lib/cjs/components/message.js +206 -0
  51. package/lib/cjs/components/message.js.map +1 -0
  52. package/lib/cjs/components/multichannel/facebook/facebook.d.ts +17 -0
  53. package/lib/cjs/components/multichannel/facebook/facebook.js +47 -0
  54. package/lib/cjs/components/multichannel/facebook/facebook.js.map +1 -0
  55. package/lib/cjs/components/multichannel/index.d.ts +1 -0
  56. package/lib/cjs/components/multichannel/index.js +14 -0
  57. package/lib/cjs/components/multichannel/index.js.map +1 -0
  58. package/lib/cjs/components/multichannel/multichannel-button.d.ts +1 -0
  59. package/lib/cjs/components/multichannel/multichannel-button.js +77 -0
  60. package/lib/cjs/components/multichannel/multichannel-button.js.map +1 -0
  61. package/lib/cjs/components/multichannel/multichannel-carousel.d.ts +1 -0
  62. package/lib/cjs/components/multichannel/multichannel-carousel.js +95 -0
  63. package/lib/cjs/components/multichannel/multichannel-carousel.js.map +1 -0
  64. package/lib/cjs/components/multichannel/multichannel-context.d.ts +11 -0
  65. package/lib/cjs/components/multichannel/multichannel-context.js +16 -0
  66. package/lib/cjs/components/multichannel/multichannel-context.js.map +1 -0
  67. package/lib/cjs/components/multichannel/multichannel-reply.d.ts +1 -0
  68. package/lib/cjs/components/multichannel/multichannel-reply.js +24 -0
  69. package/lib/cjs/components/multichannel/multichannel-reply.js.map +1 -0
  70. package/lib/cjs/components/multichannel/multichannel-text.d.ts +1 -0
  71. package/lib/cjs/components/multichannel/multichannel-text.js +147 -0
  72. package/lib/cjs/components/multichannel/multichannel-text.js.map +1 -0
  73. package/lib/cjs/components/multichannel/multichannel-utils.d.ts +24 -0
  74. package/lib/cjs/components/multichannel/multichannel-utils.js +83 -0
  75. package/lib/cjs/components/multichannel/multichannel-utils.js.map +1 -0
  76. package/lib/cjs/components/multichannel/multichannel.d.ts +1 -0
  77. package/lib/cjs/components/multichannel/multichannel.js +72 -0
  78. package/lib/cjs/components/multichannel/multichannel.js.map +1 -0
  79. package/lib/cjs/components/pic.d.ts +6 -0
  80. package/lib/cjs/components/pic.js +29 -0
  81. package/lib/cjs/components/pic.js.map +1 -0
  82. package/lib/cjs/components/raw.d.ts +9 -0
  83. package/lib/cjs/components/raw.js +53 -0
  84. package/lib/cjs/components/raw.js.map +1 -0
  85. package/lib/cjs/components/reply.d.ts +9 -0
  86. package/lib/cjs/components/reply.js +57 -0
  87. package/lib/cjs/components/reply.js.map +1 -0
  88. package/lib/cjs/components/share-button.d.ts +1 -0
  89. package/lib/cjs/components/share-button.js +15 -0
  90. package/lib/cjs/components/share-button.js.map +1 -0
  91. package/lib/cjs/components/subtitle.d.ts +6 -0
  92. package/lib/cjs/components/subtitle.js +25 -0
  93. package/lib/cjs/components/subtitle.js.map +1 -0
  94. package/lib/cjs/components/text.d.ts +8 -0
  95. package/lib/cjs/components/text.js +50 -0
  96. package/lib/cjs/components/text.js.map +1 -0
  97. package/lib/cjs/components/timestamps.d.ts +10 -0
  98. package/lib/cjs/components/timestamps.js +54 -0
  99. package/lib/cjs/components/timestamps.js.map +1 -0
  100. package/lib/cjs/components/title.d.ts +6 -0
  101. package/lib/cjs/components/title.js +21 -0
  102. package/lib/cjs/components/title.js.map +1 -0
  103. package/lib/cjs/components/video.d.ts +8 -0
  104. package/lib/cjs/components/video.js +34 -0
  105. package/lib/cjs/components/video.js.map +1 -0
  106. package/lib/cjs/components/webchat-settings.d.ts +10 -0
  107. package/lib/cjs/components/webchat-settings.js +78 -0
  108. package/lib/cjs/components/webchat-settings.js.map +1 -0
  109. package/lib/cjs/components/whatsapp-template.d.ts +1 -0
  110. package/lib/cjs/components/whatsapp-template.js +26 -0
  111. package/lib/cjs/components/whatsapp-template.js.map +1 -0
  112. package/lib/cjs/constants.d.ts +168 -0
  113. package/lib/cjs/constants.js +190 -0
  114. package/lib/cjs/constants.js.map +1 -0
  115. package/lib/cjs/contexts.d.ts +69 -0
  116. package/lib/cjs/contexts.js +38 -0
  117. package/lib/cjs/contexts.js.map +1 -0
  118. package/lib/cjs/dev-app.d.ts +34 -0
  119. package/lib/cjs/dev-app.js +71 -0
  120. package/lib/cjs/dev-app.js.map +1 -0
  121. package/lib/cjs/index.d.ts +3 -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 +18 -0
  125. package/lib/cjs/message-utils.js +61 -0
  126. package/lib/cjs/message-utils.js.map +1 -0
  127. package/lib/cjs/msg-to-botonic.d.ts +18 -0
  128. package/lib/cjs/msg-to-botonic.js +160 -0
  129. package/lib/cjs/msg-to-botonic.js.map +1 -0
  130. package/lib/cjs/node-app.d.ts +11 -0
  131. package/lib/cjs/node-app.js +25 -0
  132. package/lib/cjs/node-app.js.map +1 -0
  133. package/lib/cjs/react-bot.d.ts +8 -0
  134. package/lib/cjs/react-bot.js +35 -0
  135. package/lib/cjs/react-bot.js.map +1 -0
  136. package/lib/cjs/util/dom.d.ts +13 -0
  137. package/lib/cjs/util/dom.js +55 -0
  138. package/lib/cjs/util/dom.js.map +1 -0
  139. package/lib/cjs/util/environment.d.ts +6 -0
  140. package/lib/cjs/util/environment.js +68 -0
  141. package/lib/cjs/util/environment.js.map +1 -0
  142. package/lib/cjs/util/error-boundary.js +47 -0
  143. package/lib/cjs/util/error-boundary.js.map +1 -0
  144. package/lib/cjs/util/index.d.ts +0 -0
  145. package/lib/cjs/util/index.js +2 -0
  146. package/lib/cjs/util/index.js.map +1 -0
  147. package/lib/cjs/util/logs.d.ts +2 -0
  148. package/lib/cjs/util/logs.js +20 -0
  149. package/lib/cjs/util/logs.js.map +1 -0
  150. package/lib/cjs/util/objects.d.ts +3 -0
  151. package/lib/cjs/util/objects.js +44 -0
  152. package/lib/cjs/util/objects.js.map +1 -0
  153. package/lib/cjs/util/react.d.ts +12 -0
  154. package/lib/cjs/util/react.js +42 -0
  155. package/lib/cjs/util/react.js.map +1 -0
  156. package/lib/cjs/util/regexs.d.ts +2 -0
  157. package/lib/cjs/util/regexs.js +23 -0
  158. package/lib/cjs/util/regexs.js.map +1 -0
  159. package/lib/cjs/util/webchat.d.ts +11 -0
  160. package/lib/cjs/util/webchat.js +62 -0
  161. package/lib/cjs/util/webchat.js.map +1 -0
  162. package/lib/cjs/webchat/actions.d.ts +23 -0
  163. package/lib/cjs/webchat/actions.js +27 -0
  164. package/lib/cjs/webchat/actions.js.map +1 -0
  165. package/lib/cjs/webchat/components/attachment.d.ts +5 -0
  166. package/lib/cjs/webchat/components/attachment.js +32 -0
  167. package/lib/cjs/webchat/components/attachment.js.map +1 -0
  168. package/lib/cjs/webchat/components/common.d.ts +1 -0
  169. package/lib/cjs/webchat/components/common.js +13 -0
  170. package/lib/cjs/webchat/components/common.js.map +1 -0
  171. package/lib/cjs/webchat/components/conditional-animation.d.ts +1 -0
  172. package/lib/cjs/webchat/components/conditional-animation.js +18 -0
  173. package/lib/cjs/webchat/components/conditional-animation.js.map +1 -0
  174. package/lib/cjs/webchat/components/emoji-picker.d.ts +5 -0
  175. package/lib/cjs/webchat/components/emoji-picker.js +52 -0
  176. package/lib/cjs/webchat/components/emoji-picker.js.map +1 -0
  177. package/lib/cjs/webchat/components/persistent-menu.d.ts +10 -0
  178. package/lib/cjs/webchat/components/persistent-menu.js +59 -0
  179. package/lib/cjs/webchat/components/persistent-menu.js.map +1 -0
  180. package/lib/cjs/webchat/components/send-button.d.ts +3 -0
  181. package/lib/cjs/webchat/components/send-button.js +24 -0
  182. package/lib/cjs/webchat/components/send-button.js.map +1 -0
  183. package/lib/cjs/webchat/components/styled-scrollbar.d.ts +1 -0
  184. package/lib/cjs/webchat/components/styled-scrollbar.js +54 -0
  185. package/lib/cjs/webchat/components/styled-scrollbar.js.map +1 -0
  186. package/lib/cjs/webchat/components/typing-indicator.d.ts +1 -0
  187. package/lib/cjs/webchat/components/typing-indicator.js +14 -0
  188. package/lib/cjs/webchat/components/typing-indicator.js.map +1 -0
  189. package/lib/cjs/webchat/devices/device-adapter.d.ts +12 -0
  190. package/lib/cjs/webchat/devices/device-adapter.js +47 -0
  191. package/lib/cjs/webchat/devices/device-adapter.js.map +1 -0
  192. package/lib/cjs/webchat/devices/index.d.ts +11 -0
  193. package/lib/cjs/webchat/devices/index.js +23 -0
  194. package/lib/cjs/webchat/devices/index.js.map +1 -0
  195. package/lib/cjs/webchat/devices/scrollbar-controller.d.ts +12 -0
  196. package/lib/cjs/webchat/devices/scrollbar-controller.js +103 -0
  197. package/lib/cjs/webchat/devices/scrollbar-controller.js.map +1 -0
  198. package/lib/cjs/webchat/devices/webchat-resizer.d.ts +9 -0
  199. package/lib/cjs/webchat/devices/webchat-resizer.js +47 -0
  200. package/lib/cjs/webchat/devices/webchat-resizer.js.map +1 -0
  201. package/lib/cjs/webchat/header.d.ts +3 -0
  202. package/lib/cjs/webchat/header.js +95 -0
  203. package/lib/cjs/webchat/header.js.map +1 -0
  204. package/lib/cjs/webchat/hooks.d.ts +80 -0
  205. package/lib/cjs/webchat/hooks.js +218 -0
  206. package/lib/cjs/webchat/hooks.js.map +1 -0
  207. package/lib/cjs/webchat/index.d.ts +4 -0
  208. package/lib/cjs/webchat/index.js +17 -0
  209. package/lib/cjs/webchat/index.js.map +1 -0
  210. package/lib/cjs/webchat/message-list.d.ts +1 -0
  211. package/lib/cjs/webchat/message-list.js +46 -0
  212. package/lib/cjs/webchat/message-list.js.map +1 -0
  213. package/lib/cjs/webchat/messages-reducer.d.ts +1 -0
  214. package/lib/cjs/webchat/messages-reducer.js +58 -0
  215. package/lib/cjs/webchat/messages-reducer.js.map +1 -0
  216. package/lib/cjs/webchat/replies.d.ts +1 -0
  217. package/lib/cjs/webchat/replies.js +46 -0
  218. package/lib/cjs/webchat/replies.js.map +1 -0
  219. package/lib/cjs/webchat/session-view.d.ts +1 -0
  220. package/lib/cjs/webchat/session-view.js +124 -0
  221. package/lib/cjs/webchat/session-view.js.map +1 -0
  222. package/lib/cjs/webchat/use-storage-state-hook.d.ts +1 -0
  223. package/lib/cjs/webchat/use-storage-state-hook.js +32 -0
  224. package/lib/cjs/webchat/use-storage-state-hook.js.map +1 -0
  225. package/lib/cjs/webchat/webchat-dev.d.ts +7 -0
  226. package/lib/cjs/webchat/webchat-dev.js +64 -0
  227. package/lib/cjs/webchat/webchat-dev.js.map +1 -0
  228. package/lib/cjs/webchat/webchat-reducer.d.ts +1 -0
  229. package/lib/cjs/webchat/webchat-reducer.js +48 -0
  230. package/lib/cjs/webchat/webchat-reducer.js.map +1 -0
  231. package/lib/cjs/webchat/webchat.d.ts +3 -0
  232. package/lib/cjs/webchat/webchat.js +703 -0
  233. package/lib/cjs/webchat/webchat.js.map +1 -0
  234. package/lib/cjs/webchat/webview.d.ts +2 -0
  235. package/lib/cjs/webchat/webview.js +92 -0
  236. package/lib/cjs/webchat/webview.js.map +1 -0
  237. package/lib/cjs/webchat-app.d.ts +99 -0
  238. package/lib/cjs/webchat-app.js +269 -0
  239. package/lib/cjs/webchat-app.js.map +1 -0
  240. package/lib/cjs/webview.d.ts +9 -0
  241. package/lib/cjs/webview.js +102 -0
  242. package/lib/cjs/webview.js.map +1 -0
  243. package/package.json +3 -3
  244. package/src/util/environment.js +29 -1
  245. package/lib/app.js +0 -19
  246. package/lib/app.js.map +0 -1
  247. package/lib/assets/attachment-icon.svg +0 -7
  248. package/lib/assets/audio.svg +0 -4
  249. package/lib/assets/botonic_react_logo100x100.png +0 -0
  250. package/lib/assets/document.svg +0 -3
  251. package/lib/assets/emojiButton.svg +0 -6
  252. package/lib/assets/image.svg +0 -4
  253. package/lib/assets/leftArrow.svg +0 -3
  254. package/lib/assets/menuButton.svg +0 -3
  255. package/lib/assets/rightArrow.svg +0 -3
  256. package/lib/assets/send-button.svg +0 -1
  257. package/lib/assets/video.svg +0 -3
  258. package/lib/botonic-tester.js +0 -224
  259. package/lib/botonic-tester.js.map +0 -1
  260. package/lib/components/audio.js +0 -48
  261. package/lib/components/audio.js.map +0 -1
  262. package/lib/components/button.js +0 -224
  263. package/lib/components/button.js.map +0 -1
  264. package/lib/components/buttons-disabler.js +0 -133
  265. package/lib/components/buttons-disabler.js.map +0 -1
  266. package/lib/components/carousel.js +0 -194
  267. package/lib/components/carousel.js.map +0 -1
  268. package/lib/components/components.js.map +0 -1
  269. package/lib/components/custom-message.js +0 -131
  270. package/lib/components/custom-message.js.map +0 -1
  271. package/lib/components/document.js +0 -76
  272. package/lib/components/document.js.map +0 -1
  273. package/lib/components/element.js +0 -69
  274. package/lib/components/element.js.map +0 -1
  275. package/lib/components/handoff.js +0 -69
  276. package/lib/components/handoff.js.map +0 -1
  277. package/lib/components/image.js +0 -91
  278. package/lib/components/image.js.map +0 -1
  279. package/lib/components/index.d.ts +0 -228
  280. package/lib/components/index.js +0 -193
  281. package/lib/components/index.js.map +0 -1
  282. package/lib/components/location.js +0 -69
  283. package/lib/components/location.js.map +0 -1
  284. package/lib/components/markdown.js +0 -108
  285. package/lib/components/markdown.js.map +0 -1
  286. package/lib/components/message-template.js +0 -36
  287. package/lib/components/message-template.js.map +0 -1
  288. package/lib/components/message.js +0 -351
  289. package/lib/components/message.js.map +0 -1
  290. package/lib/components/multichannel/facebook/facebook.js +0 -96
  291. package/lib/components/multichannel/facebook/facebook.js.map +0 -1
  292. package/lib/components/multichannel/index.d.ts +0 -65
  293. package/lib/components/multichannel/index.js +0 -46
  294. package/lib/components/multichannel/index.js.map +0 -1
  295. package/lib/components/multichannel/multichannel-button.js +0 -119
  296. package/lib/components/multichannel/multichannel-button.js.map +0 -1
  297. package/lib/components/multichannel/multichannel-carousel.js +0 -143
  298. package/lib/components/multichannel/multichannel-carousel.js.map +0 -1
  299. package/lib/components/multichannel/multichannel-context.js +0 -24
  300. package/lib/components/multichannel/multichannel-context.js.map +0 -1
  301. package/lib/components/multichannel/multichannel-reply.js +0 -46
  302. package/lib/components/multichannel/multichannel-reply.js.map +0 -1
  303. package/lib/components/multichannel/multichannel-text.js +0 -222
  304. package/lib/components/multichannel/multichannel-text.js.map +0 -1
  305. package/lib/components/multichannel/multichannel-utils.js +0 -126
  306. package/lib/components/multichannel/multichannel-utils.js.map +0 -1
  307. package/lib/components/multichannel/multichannel.js +0 -111
  308. package/lib/components/multichannel/multichannel.js.map +0 -1
  309. package/lib/components/pic.js +0 -50
  310. package/lib/components/pic.js.map +0 -1
  311. package/lib/components/raw.js +0 -70
  312. package/lib/components/raw.js.map +0 -1
  313. package/lib/components/reply.js +0 -107
  314. package/lib/components/reply.js.map +0 -1
  315. package/lib/components/share-button.js +0 -36
  316. package/lib/components/share-button.js.map +0 -1
  317. package/lib/components/subtitle.js +0 -54
  318. package/lib/components/subtitle.js.map +0 -1
  319. package/lib/components/text.js +0 -80
  320. package/lib/components/text.js.map +0 -1
  321. package/lib/components/timestamps.js +0 -69
  322. package/lib/components/timestamps.js.map +0 -1
  323. package/lib/components/title.js +0 -52
  324. package/lib/components/title.js.map +0 -1
  325. package/lib/components/video.js +0 -51
  326. package/lib/components/video.js.map +0 -1
  327. package/lib/components/webchat-settings.js +0 -118
  328. package/lib/components/webchat-settings.js.map +0 -1
  329. package/lib/components/whatsapp-template.js +0 -53
  330. package/lib/components/whatsapp-template.js.map +0 -1
  331. package/lib/constants.js +0 -203
  332. package/lib/constants.js.map +0 -1
  333. package/lib/contexts.js +0 -57
  334. package/lib/contexts.js.map +0 -1
  335. package/lib/dev-app.js +0 -241
  336. package/lib/dev-app.js.map +0 -1
  337. package/lib/index.d.ts +0 -238
  338. package/lib/index.js +0 -131
  339. package/lib/index.js.map +0 -1
  340. package/lib/message-utils.js +0 -149
  341. package/lib/message-utils.js.map +0 -1
  342. package/lib/msg-to-botonic.js +0 -199
  343. package/lib/msg-to-botonic.js.map +0 -1
  344. package/lib/node-app.js +0 -97
  345. package/lib/node-app.js.map +0 -1
  346. package/lib/react-bot.js +0 -167
  347. package/lib/react-bot.js.map +0 -1
  348. package/lib/util/dom.js +0 -84
  349. package/lib/util/dom.js.map +0 -1
  350. package/lib/util/environment.js +0 -42
  351. package/lib/util/environment.js.map +0 -1
  352. package/lib/util/error-boundary.js +0 -105
  353. package/lib/util/error-boundary.js.map +0 -1
  354. package/lib/util/index.d.ts +0 -9
  355. package/lib/util/index.js +0 -2
  356. package/lib/util/index.js.map +0 -1
  357. package/lib/util/logs.js +0 -28
  358. package/lib/util/logs.js.map +0 -1
  359. package/lib/util/objects.js +0 -60
  360. package/lib/util/objects.js.map +0 -1
  361. package/lib/util/react.js +0 -75
  362. package/lib/util/react.js.map +0 -1
  363. package/lib/util/regexs.js +0 -31
  364. package/lib/util/regexs.js.map +0 -1
  365. package/lib/util/webchat.js +0 -92
  366. package/lib/util/webchat.js.map +0 -1
  367. package/lib/webchat/actions.js +0 -53
  368. package/lib/webchat/actions.js.map +0 -1
  369. package/lib/webchat/components/attachment.js +0 -68
  370. package/lib/webchat/components/attachment.js.map +0 -1
  371. package/lib/webchat/components/common.js +0 -29
  372. package/lib/webchat/components/common.js.map +0 -1
  373. package/lib/webchat/components/conditional-animation.js +0 -42
  374. package/lib/webchat/components/conditional-animation.js.map +0 -1
  375. package/lib/webchat/components/emoji-picker.js +0 -89
  376. package/lib/webchat/components/emoji-picker.js.map +0 -1
  377. package/lib/webchat/components/persistent-menu.js +0 -104
  378. package/lib/webchat/components/persistent-menu.js.map +0 -1
  379. package/lib/webchat/components/send-button.js +0 -45
  380. package/lib/webchat/components/send-button.js.map +0 -1
  381. package/lib/webchat/components/styled-scrollbar.js +0 -55
  382. package/lib/webchat/components/styled-scrollbar.js.map +0 -1
  383. package/lib/webchat/components/styled-scrollbar.scss +0 -12
  384. package/lib/webchat/components/typing-indicator.js +0 -27
  385. package/lib/webchat/components/typing-indicator.js.map +0 -1
  386. package/lib/webchat/components/typing-indicator.scss +0 -38
  387. package/lib/webchat/devices/device-adapter.js +0 -82
  388. package/lib/webchat/devices/device-adapter.js.map +0 -1
  389. package/lib/webchat/devices/index.js +0 -32
  390. package/lib/webchat/devices/index.js.map +0 -1
  391. package/lib/webchat/devices/scrollbar-controller.js +0 -152
  392. package/lib/webchat/devices/scrollbar-controller.js.map +0 -1
  393. package/lib/webchat/devices/webchat-resizer.js +0 -76
  394. package/lib/webchat/devices/webchat-resizer.js.map +0 -1
  395. package/lib/webchat/header.js +0 -116
  396. package/lib/webchat/header.js.map +0 -1
  397. package/lib/webchat/hooks.js +0 -359
  398. package/lib/webchat/hooks.js.map +0 -1
  399. package/lib/webchat/index.d.ts +0 -62
  400. package/lib/webchat/index.js +0 -32
  401. package/lib/webchat/index.js.map +0 -1
  402. package/lib/webchat/message-list.js +0 -88
  403. package/lib/webchat/message-list.js.map +0 -1
  404. package/lib/webchat/messages-reducer.js +0 -93
  405. package/lib/webchat/messages-reducer.js.map +0 -1
  406. package/lib/webchat/replies.js +0 -78
  407. package/lib/webchat/replies.js.map +0 -1
  408. package/lib/webchat/session-view.js +0 -106
  409. package/lib/webchat/session-view.js.map +0 -1
  410. package/lib/webchat/use-storage-state-hook.js +0 -60
  411. package/lib/webchat/use-storage-state-hook.js.map +0 -1
  412. package/lib/webchat/webchat-dev.js +0 -109
  413. package/lib/webchat/webchat-dev.js.map +0 -1
  414. package/lib/webchat/webchat-reducer.js +0 -108
  415. package/lib/webchat/webchat-reducer.js.map +0 -1
  416. package/lib/webchat/webchat.js +0 -1108
  417. package/lib/webchat/webchat.js.map +0 -1
  418. package/lib/webchat/webview.js +0 -122
  419. package/lib/webchat/webview.js.map +0 -1
  420. package/lib/webchat-app.js +0 -660
  421. package/lib/webchat-app.js.map +0 -1
  422. package/lib/webchat.template.html +0 -37
  423. package/lib/webview.js +0 -231
  424. package/lib/webview.js.map +0 -1
  425. package/lib/webview.template.html +0 -39
@@ -1,93 +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.messagesReducer = void 0;
9
-
10
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var _actions = require("./actions");
15
-
16
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
17
-
18
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
-
20
- var messagesReducer = function messagesReducer(state, action) {
21
- switch (action.type) {
22
- case _actions.ADD_MESSAGE:
23
- return addMessageReducer(state, action);
24
-
25
- case _actions.ADD_MESSAGE_COMPONENT:
26
- return _objectSpread(_objectSpread({}, state), {}, {
27
- messagesComponents: [].concat((0, _toConsumableArray2["default"])(state.messagesComponents || []), [action.payload])
28
- });
29
-
30
- case _actions.UPDATE_MESSAGE:
31
- return updateMessageReducer(state, action);
32
-
33
- case _actions.UPDATE_REPLIES:
34
- return _objectSpread(_objectSpread({}, state), {}, {
35
- replies: action.payload
36
- });
37
-
38
- case _actions.CLEAR_MESSAGES:
39
- return _objectSpread(_objectSpread({}, state), {}, {
40
- messagesJSON: [],
41
- messagesComponents: []
42
- });
43
-
44
- case _actions.UPDATE_LAST_MESSAGE_DATE:
45
- return _objectSpread(_objectSpread({}, state), {}, {
46
- lastMessageUpdate: action.payload
47
- });
48
-
49
- default:
50
- throw new Error();
51
- }
52
- };
53
-
54
- exports.messagesReducer = messagesReducer;
55
-
56
- function updateMessageReducer(state, action) {
57
- var msgIndex = state.messagesJSON.map(function (m) {
58
- return m.id;
59
- }).indexOf(action.payload.id);
60
-
61
- if (msgIndex > -1) {
62
- var msgComponent = state.messagesComponents[msgIndex];
63
- var updatedMessageComponents = {};
64
-
65
- if (msgComponent) {
66
- var updatedMsgComponent = _objectSpread(_objectSpread({}, msgComponent), {
67
- props: _objectSpread(_objectSpread({}, msgComponent.props), {}, {
68
- ack: action.payload.ack
69
- })
70
- });
71
-
72
- updatedMessageComponents = {
73
- messagesComponents: [].concat((0, _toConsumableArray2["default"])(state.messagesComponents.slice(0, msgIndex)), [_objectSpread({}, updatedMsgComponent)], (0, _toConsumableArray2["default"])(state.messagesComponents.slice(msgIndex + 1)))
74
- };
75
- }
76
-
77
- return _objectSpread(_objectSpread({}, state), {}, {
78
- messagesJSON: [].concat((0, _toConsumableArray2["default"])(state.messagesJSON.slice(0, msgIndex)), [_objectSpread({}, action.payload)], (0, _toConsumableArray2["default"])(state.messagesJSON.slice(msgIndex + 1)))
79
- }, updatedMessageComponents);
80
- }
81
-
82
- return state;
83
- }
84
-
85
- function addMessageReducer(state, action) {
86
- if (state.messagesJSON && state.messagesJSON.find(function (m) {
87
- return m.id === action.payload.id;
88
- })) return state;
89
- return _objectSpread(_objectSpread({}, state), {}, {
90
- messagesJSON: [].concat((0, _toConsumableArray2["default"])(state.messagesJSON || []), [action.payload])
91
- });
92
- }
93
- //# sourceMappingURL=messages-reducer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/webchat/messages-reducer.js"],"names":["messagesReducer","state","action","type","ADD_MESSAGE","addMessageReducer","ADD_MESSAGE_COMPONENT","messagesComponents","payload","UPDATE_MESSAGE","updateMessageReducer","UPDATE_REPLIES","replies","CLEAR_MESSAGES","messagesJSON","UPDATE_LAST_MESSAGE_DATE","lastMessageUpdate","Error","msgIndex","map","m","id","indexOf","msgComponent","updatedMessageComponents","updatedMsgComponent","props","ack","slice","find"],"mappings":";;;;;;;;;;;;;AAAA;;;;;;AASO,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD,EAAQC,MAAR,EAAmB;AAChD,UAAQA,MAAM,CAACC,IAAf;AACE,SAAKC,oBAAL;AACE,aAAOC,iBAAiB,CAACJ,KAAD,EAAQC,MAAR,CAAxB;;AACF,SAAKI,8BAAL;AACE,6CACKL,KADL;AAEEM,QAAAA,kBAAkB,gDACZN,KAAK,CAACM,kBAAN,IAA4B,EADhB,IAEhBL,MAAM,CAACM,OAFS;AAFpB;;AAOF,SAAKC,uBAAL;AACE,aAAOC,oBAAoB,CAACT,KAAD,EAAQC,MAAR,CAA3B;;AACF,SAAKS,uBAAL;AACE,6CAAYV,KAAZ;AAAmBW,QAAAA,OAAO,EAAEV,MAAM,CAACM;AAAnC;;AACF,SAAKK,uBAAL;AACE,6CACKZ,KADL;AAEEa,QAAAA,YAAY,EAAE,EAFhB;AAGEP,QAAAA,kBAAkB,EAAE;AAHtB;;AAKF,SAAKQ,iCAAL;AACE,6CACKd,KADL;AAEEe,QAAAA,iBAAiB,EAAEd,MAAM,CAACM;AAF5B;;AAIF;AACE,YAAM,IAAIS,KAAJ,EAAN;AA3BJ;AA6BD,CA9BM;;;;AAgCP,SAASP,oBAAT,CAA8BT,KAA9B,EAAqCC,MAArC,EAA6C;AAC3C,MAAMgB,QAAQ,GAAGjB,KAAK,CAACa,YAAN,CAAmBK,GAAnB,CAAuB,UAAAC,CAAC;AAAA,WAAIA,CAAC,CAACC,EAAN;AAAA,GAAxB,EAAkCC,OAAlC,CAA0CpB,MAAM,CAACM,OAAP,CAAea,EAAzD,CAAjB;;AACA,MAAIH,QAAQ,GAAG,CAAC,CAAhB,EAAmB;AACjB,QAAMK,YAAY,GAAGtB,KAAK,CAACM,kBAAN,CAAyBW,QAAzB,CAArB;AACA,QAAIM,wBAAwB,GAAG,EAA/B;;AACA,QAAID,YAAJ,EAAkB;AAChB,UAAME,mBAAmB,mCACpBF,YADoB,GAEpB;AACDG,QAAAA,KAAK,kCAAOH,YAAY,CAACG,KAApB;AAA2BC,UAAAA,GAAG,EAAEzB,MAAM,CAACM,OAAP,CAAemB;AAA/C;AADJ,OAFoB,CAAzB;;AAMAH,MAAAA,wBAAwB,GAAG;AACzBjB,QAAAA,kBAAkB,gDACbN,KAAK,CAACM,kBAAN,CAAyBqB,KAAzB,CAA+B,CAA/B,EAAkCV,QAAlC,CADa,sBAEXO,mBAFW,wCAGbxB,KAAK,CAACM,kBAAN,CAAyBqB,KAAzB,CAA+BV,QAAQ,GAAG,CAA1C,CAHa;AADO,OAA3B;AAOD;;AACD,2CACKjB,KADL;AAEEa,MAAAA,YAAY,gDACPb,KAAK,CAACa,YAAN,CAAmBc,KAAnB,CAAyB,CAAzB,EAA4BV,QAA5B,CADO,sBAELhB,MAAM,CAACM,OAFF,wCAGPP,KAAK,CAACa,YAAN,CAAmBc,KAAnB,CAAyBV,QAAQ,GAAG,CAApC,CAHO;AAFd,OAOKM,wBAPL;AASD;;AAED,SAAOvB,KAAP;AACD;;AAED,SAASI,iBAAT,CAA2BJ,KAA3B,EAAkCC,MAAlC,EAA0C;AACxC,MACED,KAAK,CAACa,YAAN,IACAb,KAAK,CAACa,YAAN,CAAmBe,IAAnB,CAAwB,UAAAT,CAAC;AAAA,WAAIA,CAAC,CAACC,EAAF,KAASnB,MAAM,CAACM,OAAP,CAAea,EAA5B;AAAA,GAAzB,CAFF,EAIE,OAAOpB,KAAP;AACF,yCACKA,KADL;AAEEa,IAAAA,YAAY,gDAAOb,KAAK,CAACa,YAAN,IAAsB,EAA7B,IAAkCZ,MAAM,CAACM,OAAzC;AAFd;AAID","sourcesContent":["import {\n ADD_MESSAGE,\n ADD_MESSAGE_COMPONENT,\n CLEAR_MESSAGES,\n UPDATE_LAST_MESSAGE_DATE,\n UPDATE_MESSAGE,\n UPDATE_REPLIES,\n} from './actions'\n\nexport const messagesReducer = (state, action) => {\n switch (action.type) {\n case ADD_MESSAGE:\n return addMessageReducer(state, action)\n case ADD_MESSAGE_COMPONENT:\n return {\n ...state,\n messagesComponents: [\n ...(state.messagesComponents || []),\n action.payload,\n ],\n }\n case UPDATE_MESSAGE:\n return updateMessageReducer(state, action)\n case UPDATE_REPLIES:\n return { ...state, replies: action.payload }\n case CLEAR_MESSAGES:\n return {\n ...state,\n messagesJSON: [],\n messagesComponents: [],\n }\n case UPDATE_LAST_MESSAGE_DATE:\n return {\n ...state,\n lastMessageUpdate: action.payload,\n }\n default:\n throw new Error()\n }\n}\n\nfunction updateMessageReducer(state, action) {\n const msgIndex = state.messagesJSON.map(m => m.id).indexOf(action.payload.id)\n if (msgIndex > -1) {\n const msgComponent = state.messagesComponents[msgIndex]\n let updatedMessageComponents = {}\n if (msgComponent) {\n const updatedMsgComponent = {\n ...msgComponent,\n ...{\n props: { ...msgComponent.props, ack: action.payload.ack },\n },\n }\n updatedMessageComponents = {\n messagesComponents: [\n ...state.messagesComponents.slice(0, msgIndex),\n { ...updatedMsgComponent },\n ...state.messagesComponents.slice(msgIndex + 1),\n ],\n }\n }\n return {\n ...state,\n messagesJSON: [\n ...state.messagesJSON.slice(0, msgIndex),\n { ...action.payload },\n ...state.messagesJSON.slice(msgIndex + 1),\n ],\n ...updatedMessageComponents,\n }\n }\n\n return state\n}\n\nfunction addMessageReducer(state, action) {\n if (\n state.messagesJSON &&\n state.messagesJSON.find(m => m.id === action.payload.id)\n )\n return state\n return {\n ...state,\n messagesJSON: [...(state.messagesJSON || []), action.payload],\n }\n}\n"],"file":"messages-reducer.js"}
@@ -1,78 +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.WebchatReplies = 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 _styledComponents = _interopRequireDefault(require("styled-components"));
19
-
20
- var _constants = require("../constants");
21
-
22
- var _contexts = require("../contexts");
23
-
24
- var _styledScrollbar = require("../webchat/components/styled-scrollbar");
25
-
26
- var _templateObject, _templateObject2;
27
-
28
- 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); }
29
-
30
- 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; }
31
-
32
- 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; }
33
-
34
- 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; }
35
-
36
- var RepliesContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n text-align: center;\n justify-content: ", ";\n flex-wrap: ", ";\n padding-bottom: 10px;\n margin-left: 5px;\n margin-right: 5px;\n"])), function (props) {
37
- return props.justify;
38
- }, function (props) {
39
- return props.wrap;
40
- });
41
-
42
- var ReplyContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n flex: none;\n display: inline-block;\n margin: 3px;\n"])));
43
-
44
- var options = {
45
- left: 'flex-start',
46
- center: 'center',
47
- right: 'flex-end'
48
- };
49
-
50
- var WebchatReplies = function WebchatReplies(props) {
51
- var _useContext = (0, _react.useContext)(_contexts.WebchatContext),
52
- webchatState = _useContext.webchatState,
53
- getThemeProperty = _useContext.getThemeProperty;
54
-
55
- var scrollbarOptions = _objectSpread(_objectSpread({}, {
56
- enable: true,
57
- autoHide: true
58
- }), getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.scrollbar));
59
-
60
- var justifyContent = 'center';
61
- var flexWrap = getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.wrapReplies, 'wrap');
62
- if (flexWrap == 'nowrap') justifyContent = 'flex-start';else if (getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.alignReplies)) justifyContent = options[getThemeProperty(_constants.WEBCHAT.CUSTOM_PROPERTIES.alignReplies)];
63
- return /*#__PURE__*/_react["default"].createElement(_styledScrollbar.StyledScrollbar, {
64
- scrollbar: scrollbarOptions,
65
- autoHide: scrollbarOptions.autoHide
66
- }, /*#__PURE__*/_react["default"].createElement(RepliesContainer, {
67
- justify: justifyContent,
68
- wrap: flexWrap,
69
- style: _objectSpread({}, props.style)
70
- }, webchatState.replies.map(function (r, i) {
71
- return /*#__PURE__*/_react["default"].createElement(ReplyContainer, {
72
- key: i
73
- }, r);
74
- })));
75
- };
76
-
77
- exports.WebchatReplies = WebchatReplies;
78
- //# sourceMappingURL=replies.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/webchat/replies.jsx"],"names":["RepliesContainer","styled","div","props","justify","wrap","ReplyContainer","options","left","center","right","WebchatReplies","WebchatContext","webchatState","getThemeProperty","scrollbarOptions","enable","autoHide","WEBCHAT","CUSTOM_PROPERTIES","scrollbar","justifyContent","flexWrap","wrapReplies","alignReplies","style","replies","map","r","i"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;;;;;;;;;AAEA,IAAMA,gBAAgB,GAAGC,6BAAOC,GAAV,oPAGD,UAAAC,KAAK;AAAA,SAAIA,KAAK,CAACC,OAAV;AAAA,CAHJ,EAIP,UAAAD,KAAK;AAAA,SAAIA,KAAK,CAACE,IAAV;AAAA,CAJE,CAAtB;;AAUA,IAAMC,cAAc,GAAGL,6BAAOC,GAAV,mJAApB;;AAMA,IAAMK,OAAO,GAAG;AACdC,EAAAA,IAAI,EAAE,YADQ;AAEdC,EAAAA,MAAM,EAAE,QAFM;AAGdC,EAAAA,KAAK,EAAE;AAHO,CAAhB;;AAMO,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAAAR,KAAK,EAAI;AACrC,oBAA2C,uBAAWS,wBAAX,CAA3C;AAAA,MAAQC,YAAR,eAAQA,YAAR;AAAA,MAAsBC,gBAAtB,eAAsBA,gBAAtB;;AACA,MAAMC,gBAAgB,mCACjB;AAAEC,IAAAA,MAAM,EAAE,IAAV;AAAgBC,IAAAA,QAAQ,EAAE;AAA1B,GADiB,GAEjBH,gBAAgB,CAACI,mBAAQC,iBAAR,CAA0BC,SAA3B,CAFC,CAAtB;;AAIA,MAAIC,cAAc,GAAG,QAArB;AACA,MAAMC,QAAQ,GAAGR,gBAAgB,CAC/BI,mBAAQC,iBAAR,CAA0BI,WADK,EAE/B,MAF+B,CAAjC;AAIA,MAAID,QAAQ,IAAI,QAAhB,EAA0BD,cAAc,GAAG,YAAjB,CAA1B,KACK,IAAIP,gBAAgB,CAACI,mBAAQC,iBAAR,CAA0BK,YAA3B,CAApB,EACHH,cAAc,GACZd,OAAO,CAACO,gBAAgB,CAACI,mBAAQC,iBAAR,CAA0BK,YAA3B,CAAjB,CADT;AAGF,sBACE,gCAAC,gCAAD;AACE,IAAA,SAAS,EAAET,gBADb;AAEE,IAAA,QAAQ,EAAEA,gBAAgB,CAACE;AAF7B,kBAIE,gCAAC,gBAAD;AACE,IAAA,OAAO,EAAEI,cADX;AAEE,IAAA,IAAI,EAAEC,QAFR;AAGE,IAAA,KAAK,oBACAnB,KAAK,CAACsB,KADN;AAHP,KAOGZ,YAAY,CAACa,OAAb,CAAqBC,GAArB,CAAyB,UAACC,CAAD,EAAIC,CAAJ;AAAA,wBACxB,gCAAC,cAAD;AAAgB,MAAA,GAAG,EAAEA;AAArB,OAAyBD,CAAzB,CADwB;AAAA,GAAzB,CAPH,CAJF,CADF;AAkBD,CAlCM","sourcesContent":["import React, { useContext } from 'react'\nimport styled from 'styled-components'\n\nimport { WEBCHAT } from '../constants'\nimport { WebchatContext } from '../contexts'\nimport { StyledScrollbar } from '../webchat/components/styled-scrollbar'\n\nconst RepliesContainer = styled.div`\n display: flex;\n text-align: center;\n justify-content: ${props => props.justify};\n flex-wrap: ${props => props.wrap};\n padding-bottom: 10px;\n margin-left: 5px;\n margin-right: 5px;\n`\n\nconst ReplyContainer = styled.div`\n flex: none;\n display: inline-block;\n margin: 3px;\n`\n\nconst options = {\n left: 'flex-start',\n center: 'center',\n right: 'flex-end',\n}\n\nexport const WebchatReplies = props => {\n const { webchatState, getThemeProperty } = useContext(WebchatContext)\n const scrollbarOptions = {\n ...{ enable: true, autoHide: true },\n ...getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.scrollbar),\n }\n let justifyContent = 'center'\n const flexWrap = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.wrapReplies,\n 'wrap'\n )\n if (flexWrap == 'nowrap') justifyContent = 'flex-start'\n else if (getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.alignReplies))\n justifyContent =\n options[getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.alignReplies)]\n\n return (\n <StyledScrollbar\n scrollbar={scrollbarOptions}\n autoHide={scrollbarOptions.autoHide}\n >\n <RepliesContainer\n justify={justifyContent}\n wrap={flexWrap}\n style={{\n ...props.style,\n }}\n >\n {webchatState.replies.map((r, i) => (\n <ReplyContainer key={i}>{r}</ReplyContainer>\n ))}\n </RepliesContainer>\n </StyledScrollbar>\n )\n}\n"],"file":"replies.js"}
@@ -1,106 +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.SessionView = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var _react = _interopRequireDefault(require("react"));
15
-
16
- var _reactJsonTree = _interopRequireDefault(require("react-json-tree"));
17
-
18
- var _styledComponents = _interopRequireDefault(require("styled-components"));
19
-
20
- var _constants = require("../constants");
21
-
22
- var _hooks = require("./hooks");
23
-
24
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
25
-
26
- 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; }
27
-
28
- 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; }
29
-
30
- var AttributeContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex: none;\n padding: 12px;\n padding-bottom: 0px;\n font-size: 12px;\n font-weight: 600;\n color: ", ";\n align-items: center;\n"])), _constants.COLORS.SOLID_WHITE);
31
-
32
- var Label = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n flex: none;\n"])));
33
-
34
- var Value = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n flex: 1 1 auto;\n max-height: 20px;\n font-size: 16px;\n font-weight: 400;\n margin-left: 6px;\n color: ", ";\n overflow-x: hidden;\n"])), _constants.COLORS.CURIOUS_BLUE);
35
-
36
- var SessionViewAttribute = function SessionViewAttribute(props) {
37
- return /*#__PURE__*/_react["default"].createElement(AttributeContainer, null, /*#__PURE__*/_react["default"].createElement(Label, null, props.label), /*#__PURE__*/_react["default"].createElement(Value, null, props.value));
38
- };
39
-
40
- var SessionViewContent = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n width: ", ";\n height: 100%;\n display: flex;\n background-color: ", ";\n font-family: Arial, Helvetica, sans-serif;\n flex-direction: column;\n z-index: 100000;\n transition: all 0.2s ease-in-out;\n"])), function (props) {
41
- return props.show ? '100%' : '0%';
42
- }, _constants.COLORS.DAINTREE_BLUE);
43
-
44
- var ToggleTab = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n top: 10px;\n right: -32px;\n width: 32px;\n height: 32px;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ", ";\n font-size: 14px;\n font-weight: 600;\n background-color: ", ";\n flex-direction: column;\n z-index: 100000;\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n"])), _constants.COLORS.SOLID_WHITE_ALPHA_0_8, _constants.COLORS.DAINTREE_BLUE);
45
-
46
- var ContentContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n overflow-y: auto;\n overflow-x: auto;\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n"])));
47
-
48
- var Title = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 12px;\n text-align: center;\n color: ", ";\n border-bottom: 1px solid ", ";\n"])), _constants.COLORS.SOLID_WHITE, _constants.COLORS.SOLID_WHITE_ALPHA_0_2);
49
-
50
- var SessionContainer = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n flex: 1 1 auto;\n height: 100%;\n overflow-y: auto;\n"])));
51
-
52
- var KeepSessionContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n flex: none;\n padding: 12px;\n color: ", ";\n font-size: 12px;\n"])), _constants.COLORS.SOLID_WHITE_ALPHA_0_8);
53
-
54
- var SessionView = function SessionView(props) {
55
- // eslint-disable-next-line react-hooks/rules-of-hooks
56
- var _ref = props.webchatHooks || (0, _hooks.useWebchat)(),
57
- webchatState = _ref.webchatState,
58
- updateDevSettings = _ref.updateDevSettings;
59
-
60
- var input = webchatState.latestInput,
61
- session = webchatState.session,
62
- lastRoutePath = webchatState.lastRoutePath;
63
-
64
- var toggleSessionView = function toggleSessionView() {
65
- return updateDevSettings(_objectSpread(_objectSpread({}, webchatState.devSettings), {}, {
66
- showSessionView: !webchatState.devSettings.showSessionView
67
- }));
68
- };
69
-
70
- var toggleKeepSessionOnReload = function toggleKeepSessionOnReload() {
71
- return updateDevSettings(_objectSpread(_objectSpread({}, webchatState.devSettings), {}, {
72
- keepSessionOnReload: !webchatState.devSettings.keepSessionOnReload
73
- }));
74
- };
75
-
76
- return /*#__PURE__*/_react["default"].createElement(SessionViewContent, {
77
- show: webchatState.devSettings.showSessionView
78
- }, /*#__PURE__*/_react["default"].createElement(ToggleTab, {
79
- onClick: toggleSessionView
80
- }, webchatState.devSettings.showSessionView ? '⇤' : '⇥'), /*#__PURE__*/_react["default"].createElement(ContentContainer, null, /*#__PURE__*/_react["default"].createElement(Title, null, "Botonic Dev Console"), /*#__PURE__*/_react["default"].createElement(SessionViewAttribute, {
81
- label: "INPUT:",
82
- value: input && Object.keys(input).length ? "[".concat(input.type, "] ").concat(input.data || '') : ''
83
- }), /*#__PURE__*/_react["default"].createElement(SessionViewAttribute, {
84
- label: "PAYLOAD:",
85
- value: input.payload
86
- }), /*#__PURE__*/_react["default"].createElement(SessionViewAttribute, {
87
- label: "INTENT:",
88
- value: input.intent ? "".concat(input.intent, " (").concat((input.confidence * 100).toFixed(1), "%)") : ''
89
- }), /*#__PURE__*/_react["default"].createElement(SessionViewAttribute, {
90
- label: "PATH:",
91
- value: lastRoutePath ? "/".concat(lastRoutePath) : '/'
92
- }), /*#__PURE__*/_react["default"].createElement(SessionViewAttribute, {
93
- label: "SESSION:"
94
- }), /*#__PURE__*/_react["default"].createElement(SessionContainer, null, /*#__PURE__*/_react["default"].createElement(_reactJsonTree["default"], {
95
- data: session,
96
- hideRoot: true
97
- })), /*#__PURE__*/_react["default"].createElement(KeepSessionContainer, null, /*#__PURE__*/_react["default"].createElement("label", null, /*#__PURE__*/_react["default"].createElement("input", {
98
- type: "checkbox",
99
- name: "toggleKeepSessionOnReload",
100
- checked: Boolean(webchatState.devSettings.keepSessionOnReload),
101
- onChange: toggleKeepSessionOnReload
102
- }), "Keep session on reload"))));
103
- };
104
-
105
- exports.SessionView = SessionView;
106
- //# sourceMappingURL=session-view.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/webchat/session-view.jsx"],"names":["AttributeContainer","styled","div","COLORS","SOLID_WHITE","Label","Value","CURIOUS_BLUE","SessionViewAttribute","props","label","value","SessionViewContent","show","DAINTREE_BLUE","ToggleTab","SOLID_WHITE_ALPHA_0_8","ContentContainer","Title","SOLID_WHITE_ALPHA_0_2","SessionContainer","KeepSessionContainer","SessionView","webchatHooks","webchatState","updateDevSettings","input","latestInput","session","lastRoutePath","toggleSessionView","devSettings","showSessionView","toggleKeepSessionOnReload","keepSessionOnReload","Object","keys","length","type","data","payload","intent","confidence","toFixed","Boolean"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;;;;;;;AAEA,IAAMA,kBAAkB,GAAGC,6BAAOC,GAAV,qPAObC,kBAAOC,WAPM,CAAxB;;AAWA,IAAMC,KAAK,GAAGJ,6BAAOC,GAAV,yGAAX;;AAIA,IAAMI,KAAK,GAAGL,6BAAOC,GAAV,wOAMAC,kBAAOI,YANP,CAAX;;AAUA,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAAAC,KAAK;AAAA,sBAChC,gCAAC,kBAAD,qBACE,gCAAC,KAAD,QAAQA,KAAK,CAACC,KAAd,CADF,eAEE,gCAAC,KAAD,QAAQD,KAAK,CAACE,KAAd,CAFF,CADgC;AAAA,CAAlC;;AAOA,IAAMC,kBAAkB,GAAGX,6BAAOC,GAAV,kUAEb,UAAAO,KAAK;AAAA,SAAKA,KAAK,CAACI,IAAN,GAAa,MAAb,GAAsB,IAA3B;AAAA,CAFQ,EAKFV,kBAAOW,aALL,CAAxB;;AAYA,IAAMC,SAAS,GAAGd,6BAAOC,GAAV,odAUJC,kBAAOa,qBAVH,EAaOb,kBAAOW,aAbd,CAAf;;AAoBA,IAAMG,gBAAgB,GAAGhB,6BAAOC,GAAV,oMAAtB;;AAQA,IAAMgB,KAAK,GAAGjB,6BAAOC,GAAV,sLAGAC,kBAAOC,WAHP,EAIkBD,kBAAOgB,qBAJzB,CAAX;;AAOA,IAAMC,gBAAgB,GAAGnB,6BAAOC,GAAV,mJAAtB;;AAMA,IAAMmB,oBAAoB,GAAGpB,6BAAOC,GAAV,gKAGfC,kBAAOa,qBAHQ,CAA1B;;AAOO,IAAMM,WAAW,GAAG,SAAdA,WAAc,CAAAb,KAAK,EAAI;AAClC;AACA,aAA4CA,KAAK,CAACc,YAAN,IAAsB,wBAAlE;AAAA,MAAQC,YAAR,QAAQA,YAAR;AAAA,MAAsBC,iBAAtB,QAAsBA,iBAAtB;;AACA,MAAqBC,KAArB,GAAuDF,YAAvD,CAAQG,WAAR;AAAA,MAA4BC,OAA5B,GAAuDJ,YAAvD,CAA4BI,OAA5B;AAAA,MAAqCC,aAArC,GAAuDL,YAAvD,CAAqCK,aAArC;;AACA,MAAMC,iBAAiB,GAAG,SAApBA,iBAAoB;AAAA,WACxBL,iBAAiB,iCACZD,YAAY,CAACO,WADD;AAEfC,MAAAA,eAAe,EAAE,CAACR,YAAY,CAACO,WAAb,CAAyBC;AAF5B,OADO;AAAA,GAA1B;;AAKA,MAAMC,yBAAyB,GAAG,SAA5BA,yBAA4B;AAAA,WAChCR,iBAAiB,iCACZD,YAAY,CAACO,WADD;AAEfG,MAAAA,mBAAmB,EAAE,CAACV,YAAY,CAACO,WAAb,CAAyBG;AAFhC,OADe;AAAA,GAAlC;;AAKA,sBACE,gCAAC,kBAAD;AAAoB,IAAA,IAAI,EAAEV,YAAY,CAACO,WAAb,CAAyBC;AAAnD,kBACE,gCAAC,SAAD;AAAW,IAAA,OAAO,EAAEF;AAApB,KACGN,YAAY,CAACO,WAAb,CAAyBC,eAAzB,GAA2C,GAA3C,GAAiD,GADpD,CADF,eAIE,gCAAC,gBAAD,qBACE,gCAAC,KAAD,8BADF,eAEE,gCAAC,oBAAD;AACE,IAAA,KAAK,EAAC,QADR;AAEE,IAAA,KAAK,EACHN,KAAK,IAAIS,MAAM,CAACC,IAAP,CAAYV,KAAZ,EAAmBW,MAA5B,cACQX,KAAK,CAACY,IADd,eACuBZ,KAAK,CAACa,IAAN,IAAc,EADrC,IAEI;AALR,IAFF,eAUE,gCAAC,oBAAD;AAAsB,IAAA,KAAK,EAAC,UAA5B;AAAuC,IAAA,KAAK,EAAEb,KAAK,CAACc;AAApD,IAVF,eAWE,gCAAC,oBAAD;AACE,IAAA,KAAK,EAAC,SADR;AAEE,IAAA,KAAK,EACHd,KAAK,CAACe,MAAN,aACOf,KAAK,CAACe,MADb,eACwB,CAACf,KAAK,CAACgB,UAAN,GAAmB,GAApB,EAAyBC,OAAzB,CAAiC,CAAjC,CADxB,UAEI;AALR,IAXF,eAmBE,gCAAC,oBAAD;AACE,IAAA,KAAK,EAAC,OADR;AAEE,IAAA,KAAK,EAAEd,aAAa,cAAOA,aAAP,IAAyB;AAF/C,IAnBF,eAuBE,gCAAC,oBAAD;AAAsB,IAAA,KAAK,EAAC;AAA5B,IAvBF,eAwBE,gCAAC,gBAAD,qBACE,gCAAC,yBAAD;AAAU,IAAA,IAAI,EAAED,OAAhB;AAAyB,IAAA,QAAQ,EAAE;AAAnC,IADF,CAxBF,eA2BE,gCAAC,oBAAD,qBACE,4DACE;AACE,IAAA,IAAI,EAAC,UADP;AAEE,IAAA,IAAI,EAAC,2BAFP;AAGE,IAAA,OAAO,EAAEgB,OAAO,CAACpB,YAAY,CAACO,WAAb,CAAyBG,mBAA1B,CAHlB;AAIE,IAAA,QAAQ,EAAED;AAJZ,IADF,2BADF,CA3BF,CAJF,CADF;AA8CD,CA5DM","sourcesContent":["import React from 'react'\nimport JSONTree from 'react-json-tree'\nimport styled from 'styled-components'\n\nimport { COLORS } from '../constants'\nimport { useWebchat } from './hooks'\n\nconst AttributeContainer = styled.div`\n display: flex;\n flex: none;\n padding: 12px;\n padding-bottom: 0px;\n font-size: 12px;\n font-weight: 600;\n color: ${COLORS.SOLID_WHITE};\n align-items: center;\n`\n\nconst Label = styled.div`\n flex: none;\n`\n\nconst Value = styled.div`\n flex: 1 1 auto;\n max-height: 20px;\n font-size: 16px;\n font-weight: 400;\n margin-left: 6px;\n color: ${COLORS.CURIOUS_BLUE};\n overflow-x: hidden;\n`\n\nconst SessionViewAttribute = props => (\n <AttributeContainer>\n <Label>{props.label}</Label>\n <Value>{props.value}</Value>\n </AttributeContainer>\n)\n\nconst SessionViewContent = styled.div`\n position: relative;\n width: ${props => (props.show ? '100%' : '0%')};\n height: 100%;\n display: flex;\n background-color: ${COLORS.DAINTREE_BLUE};\n font-family: Arial, Helvetica, sans-serif;\n flex-direction: column;\n z-index: 100000;\n transition: all 0.2s ease-in-out;\n`\n\nconst ToggleTab = styled.div`\n position: absolute;\n top: 10px;\n right: -32px;\n width: 32px;\n height: 32px;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ${COLORS.SOLID_WHITE_ALPHA_0_8};\n font-size: 14px;\n font-weight: 600;\n background-color: ${COLORS.DAINTREE_BLUE};\n flex-direction: column;\n z-index: 100000;\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n`\n\nconst ContentContainer = styled.div`\n overflow-y: auto;\n overflow-x: auto;\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n`\n\nconst Title = styled.div`\n padding: 12px;\n text-align: center;\n color: ${COLORS.SOLID_WHITE};\n border-bottom: 1px solid ${COLORS.SOLID_WHITE_ALPHA_0_2};\n`\n\nconst SessionContainer = styled.div`\n flex: 1 1 auto;\n height: 100%;\n overflow-y: auto;\n`\n\nconst KeepSessionContainer = styled.div`\n flex: none;\n padding: 12px;\n color: ${COLORS.SOLID_WHITE_ALPHA_0_8};\n font-size: 12px;\n`\n\nexport const SessionView = props => {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const { webchatState, updateDevSettings } = props.webchatHooks || useWebchat()\n const { latestInput: input, session, lastRoutePath } = webchatState\n const toggleSessionView = () =>\n updateDevSettings({\n ...webchatState.devSettings,\n showSessionView: !webchatState.devSettings.showSessionView,\n })\n const toggleKeepSessionOnReload = () =>\n updateDevSettings({\n ...webchatState.devSettings,\n keepSessionOnReload: !webchatState.devSettings.keepSessionOnReload,\n })\n return (\n <SessionViewContent show={webchatState.devSettings.showSessionView}>\n <ToggleTab onClick={toggleSessionView}>\n {webchatState.devSettings.showSessionView ? '⇤' : '⇥'}\n </ToggleTab>\n <ContentContainer>\n <Title>Botonic Dev Console</Title>\n <SessionViewAttribute\n label='INPUT:'\n value={\n input && Object.keys(input).length\n ? `[${input.type}] ${input.data || ''}`\n : ''\n }\n />\n <SessionViewAttribute label='PAYLOAD:' value={input.payload} />\n <SessionViewAttribute\n label='INTENT:'\n value={\n input.intent\n ? `${input.intent} (${(input.confidence * 100).toFixed(1)}%)`\n : ''\n }\n />\n <SessionViewAttribute\n label='PATH:'\n value={lastRoutePath ? `/${lastRoutePath}` : '/'}\n />\n <SessionViewAttribute label='SESSION:' />\n <SessionContainer>\n <JSONTree data={session} hideRoot={true} />\n </SessionContainer>\n <KeepSessionContainer>\n <label>\n <input\n type='checkbox'\n name='toggleKeepSessionOnReload'\n checked={Boolean(webchatState.devSettings.keepSessionOnReload)}\n onChange={toggleKeepSessionOnReload}\n />\n Keep session on reload\n </label>\n </KeepSessionContainer>\n </ContentContainer>\n </SessionViewContent>\n )\n}\n"],"file":"session-view.js"}
@@ -1,60 +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.useStorageState = useStorageState;
9
-
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
-
12
- var _react = require("react");
13
-
14
- //Code taken from https://github.com/leny/react-use-storage
15
- var evtTarget = new EventTarget();
16
-
17
- function useStorageState(storage, key, defaultValue) {
18
- var raw = storage === null || storage === void 0 ? void 0 : storage.getItem(key);
19
-
20
- var _useState = (0, _react.useState)(raw ? JSON.parse(raw) : defaultValue),
21
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
22
- value = _useState2[0],
23
- setValue = _useState2[1];
24
-
25
- var updater = (0, _react.useCallback)(function (updatedValue) {
26
- var remove = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
27
- setValue(updatedValue);
28
- storage[remove ? 'removeItem' : 'setItem'](key, JSON.stringify(updatedValue));
29
- evtTarget.dispatchEvent(new CustomEvent('storage_change', {
30
- detail: {
31
- key: key
32
- }
33
- }));
34
- }, [key]);
35
- defaultValue != null && !raw && updater(defaultValue);
36
- (0, _react.useEffect)(function () {
37
- var listener = function listener(_ref) {
38
- var detail = _ref.detail;
39
-
40
- if (detail.key === key) {
41
- var lraw = storage === null || storage === void 0 ? void 0 : storage.getItem(key);
42
- lraw !== raw && setValue(JSON.parse(lraw));
43
- }
44
- };
45
-
46
- evtTarget.addEventListener('storage_change', listener);
47
- return function () {
48
- return evtTarget.removeEventListener('storage_change', listener);
49
- };
50
- });
51
-
52
- if (storage === null) {
53
- return [undefined, undefined];
54
- }
55
-
56
- return [value, updater, function () {
57
- return updater(null, true);
58
- }];
59
- }
60
- //# sourceMappingURL=use-storage-state-hook.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/webchat/use-storage-state-hook.js"],"names":["evtTarget","EventTarget","useStorageState","storage","key","defaultValue","raw","getItem","JSON","parse","value","setValue","updater","updatedValue","remove","stringify","dispatchEvent","CustomEvent","detail","listener","lraw","addEventListener","removeEventListener","undefined"],"mappings":";;;;;;;;;;;AAAA;;AAEA;AACA,IAAMA,SAAS,GAAG,IAAIC,WAAJ,EAAlB;;AAEO,SAASC,eAAT,CAAyBC,OAAzB,EAAkCC,GAAlC,EAAuCC,YAAvC,EAAqD;AAC1D,MAAMC,GAAG,GAAGH,OAAH,aAAGA,OAAH,uBAAGA,OAAO,CAAEI,OAAT,CAAiBH,GAAjB,CAAZ;;AAEA,kBAA0B,qBAASE,GAAG,GAAGE,IAAI,CAACC,KAAL,CAAWH,GAAX,CAAH,GAAqBD,YAAjC,CAA1B;AAAA;AAAA,MAAOK,KAAP;AAAA,MAAcC,QAAd;;AAEA,MAAMC,OAAO,GAAG,wBACd,UAACC,YAAD,EAAkC;AAAA,QAAnBC,MAAmB,uEAAV,KAAU;AAChCH,IAAAA,QAAQ,CAACE,YAAD,CAAR;AACAV,IAAAA,OAAO,CAACW,MAAM,GAAG,YAAH,GAAkB,SAAzB,CAAP,CACEV,GADF,EAEEI,IAAI,CAACO,SAAL,CAAeF,YAAf,CAFF;AAIAb,IAAAA,SAAS,CAACgB,aAAV,CACE,IAAIC,WAAJ,CAAgB,gBAAhB,EAAkC;AAAEC,MAAAA,MAAM,EAAE;AAAEd,QAAAA,GAAG,EAAHA;AAAF;AAAV,KAAlC,CADF;AAGD,GAVa,EAWd,CAACA,GAAD,CAXc,CAAhB;AAcAC,EAAAA,YAAY,IAAI,IAAhB,IAAwB,CAACC,GAAzB,IAAgCM,OAAO,CAACP,YAAD,CAAvC;AAEA,wBAAU,YAAM;AACd,QAAMc,QAAQ,GAAG,SAAXA,QAAW,OAAgB;AAAA,UAAbD,MAAa,QAAbA,MAAa;;AAC/B,UAAIA,MAAM,CAACd,GAAP,KAAeA,GAAnB,EAAwB;AACtB,YAAMgB,IAAI,GAAGjB,OAAH,aAAGA,OAAH,uBAAGA,OAAO,CAAEI,OAAT,CAAiBH,GAAjB,CAAb;AAEAgB,QAAAA,IAAI,KAAKd,GAAT,IAAgBK,QAAQ,CAACH,IAAI,CAACC,KAAL,CAAWW,IAAX,CAAD,CAAxB;AACD;AACF,KAND;;AAQApB,IAAAA,SAAS,CAACqB,gBAAV,CAA2B,gBAA3B,EAA6CF,QAA7C;AACA,WAAO;AAAA,aAAMnB,SAAS,CAACsB,mBAAV,CAA8B,gBAA9B,EAAgDH,QAAhD,CAAN;AAAA,KAAP;AACD,GAXD;;AAaA,MAAIhB,OAAO,KAAK,IAAhB,EAAsB;AACpB,WAAO,CAACoB,SAAD,EAAYA,SAAZ,CAAP;AACD;;AACD,SAAO,CAACb,KAAD,EAAQE,OAAR,EAAiB;AAAA,WAAMA,OAAO,CAAC,IAAD,EAAO,IAAP,CAAb;AAAA,GAAjB,CAAP;AACD","sourcesContent":["import { useCallback, useEffect, useState } from 'react'\n\n//Code taken from https://github.com/leny/react-use-storage\nconst evtTarget = new EventTarget()\n\nexport function useStorageState(storage, key, defaultValue) {\n const raw = storage?.getItem(key)\n\n const [value, setValue] = useState(raw ? JSON.parse(raw) : defaultValue)\n\n const updater = useCallback(\n (updatedValue, remove = false) => {\n setValue(updatedValue)\n storage[remove ? 'removeItem' : 'setItem'](\n key,\n JSON.stringify(updatedValue)\n )\n evtTarget.dispatchEvent(\n new CustomEvent('storage_change', { detail: { key } })\n )\n },\n [key]\n )\n\n defaultValue != null && !raw && updater(defaultValue)\n\n useEffect(() => {\n const listener = ({ detail }) => {\n if (detail.key === key) {\n const lraw = storage?.getItem(key)\n\n lraw !== raw && setValue(JSON.parse(lraw))\n }\n }\n\n evtTarget.addEventListener('storage_change', listener)\n return () => evtTarget.removeEventListener('storage_change', listener)\n })\n\n if (storage === null) {\n return [undefined, undefined]\n }\n return [value, updater, () => updater(null, true)]\n}\n"],"file":"use-storage-state-hook.js"}
@@ -1,109 +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.WebchatDev = exports.DebugTabPortal = exports.DebugTab = void 0;
11
-
12
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
-
16
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
-
18
- var _core = require("@botonic/core");
19
-
20
- var _lodash = _interopRequireDefault(require("lodash.merge"));
21
-
22
- var _react = _interopRequireWildcard(require("react"));
23
-
24
- var _reactDom = require("react-dom");
25
-
26
- var _styledComponents = _interopRequireDefault(require("styled-components"));
27
-
28
- var _hooks = require("./hooks");
29
-
30
- var _sessionView = require("./session-view");
31
-
32
- var _webchat = require("./webchat");
33
-
34
- var _excluded = ["webchatHooks"];
35
-
36
- var _templateObject;
37
-
38
- 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); }
39
-
40
- 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; }
41
-
42
- var DebugTab = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n left: 0;\n top: 0;\n width: ", ";\n height: ", ";\n"])), function (props) {
43
- return props.show ? '350px' : '32px';
44
- }, function (props) {
45
- return props.show ? '100%' : '42px';
46
- }); // We want the debug tab to be rendered in the <body> even if the
47
- // webchat is being rendered in a shadowDOM, that's why we need a portal
48
-
49
-
50
- exports.DebugTab = DebugTab;
51
-
52
- var DebugTabPortal = function DebugTabPortal(_ref) {
53
- var webchatHooks = _ref.webchatHooks,
54
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
55
- return /*#__PURE__*/(0, _reactDom.createPortal)( /*#__PURE__*/_react["default"].createElement(DebugTab, props, /*#__PURE__*/_react["default"].createElement(_sessionView.SessionView, {
56
- webchatHooks: webchatHooks
57
- })), document.body);
58
- };
59
-
60
- exports.DebugTabPortal = DebugTabPortal;
61
- var initialSession = {
62
- is_first_interaction: true,
63
- last_session: {},
64
- user: {
65
- id: '000001',
66
- username: 'johndoe',
67
- name: 'John Doe',
68
- provider: _core.PROVIDER.DEV,
69
- provider_id: '0000000',
70
- extra_data: {}
71
- },
72
- organization: '',
73
- bot: {
74
- id: '0000000',
75
- name: 'botName'
76
- }
77
- }; // eslint-disable-next-line react/display-name
78
-
79
- var WebchatDev = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
80
- var webchatHooks = (0, _hooks.useWebchat)();
81
- var webchatState = webchatHooks.webchatState,
82
- updateTheme = webchatHooks.updateTheme;
83
- /* TODO: webchatState.theme should be included in the dependencies array
84
- together with props.theme. The problem is that this effect modifies webchatState
85
- so we enter an infinite rerender loop. */
86
-
87
- (0, _react.useEffect)(function () {
88
- updateTheme((0, _lodash["default"])(webchatState.theme, props.theme));
89
- }, [props.theme]);
90
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_webchat.Webchat, (0, _extends2["default"])({
91
- style: {
92
- flex: 1,
93
- position: 'relative'
94
- }
95
- }, props, {
96
- ref: ref,
97
- webchatHooks: webchatHooks,
98
- initialSession: initialSession,
99
- initialDevSettings: {
100
- keepSessionOnReload: webchatState.devSettings.keepSessionOnReload,
101
- showSessionView: webchatState.devSettings.showSessionView
102
- }
103
- })), /*#__PURE__*/_react["default"].createElement(DebugTabPortal, {
104
- show: webchatState.devSettings.showSessionView,
105
- webchatHooks: webchatHooks
106
- }));
107
- });
108
- exports.WebchatDev = WebchatDev;
109
- //# sourceMappingURL=webchat-dev.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/webchat/webchat-dev.jsx"],"names":["DebugTab","styled","div","props","show","DebugTabPortal","webchatHooks","document","body","initialSession","is_first_interaction","last_session","user","id","username","name","provider","PROVIDER","DEV","provider_id","extra_data","organization","bot","WebchatDev","ref","webchatState","updateTheme","theme","flex","position","keepSessionOnReload","devSettings","showSessionView"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;;;;;;;AAEO,IAAMA,QAAQ,GAAGC,6BAAOC,GAAV,qKAIV,UAAAC,KAAK;AAAA,SAAKA,KAAK,CAACC,IAAN,GAAa,OAAb,GAAuB,MAA5B;AAAA,CAJK,EAKT,UAAAD,KAAK;AAAA,SAAKA,KAAK,CAACC,IAAN,GAAa,MAAb,GAAsB,MAA3B;AAAA,CALI,CAAd,C,CAQP;AACA;;;;;AACO,IAAMC,cAAc,GAAG,SAAjBA,cAAiB;AAAA,MAAGC,YAAH,QAAGA,YAAH;AAAA,MAAoBH,KAApB;AAAA,sBAC5B,0CACE,gCAAC,QAAD,EAAcA,KAAd,eACE,gCAAC,wBAAD;AAAa,IAAA,YAAY,EAAEG;AAA3B,IADF,CADF,EAIEC,QAAQ,CAACC,IAJX,CAD4B;AAAA,CAAvB;;;AAQP,IAAMC,cAAc,GAAG;AACrBC,EAAAA,oBAAoB,EAAE,IADD;AAErBC,EAAAA,YAAY,EAAE,EAFO;AAGrBC,EAAAA,IAAI,EAAE;AACJC,IAAAA,EAAE,EAAE,QADA;AAEJC,IAAAA,QAAQ,EAAE,SAFN;AAGJC,IAAAA,IAAI,EAAE,UAHF;AAIJC,IAAAA,QAAQ,EAAEC,eAASC,GAJf;AAKJC,IAAAA,WAAW,EAAE,SALT;AAMJC,IAAAA,UAAU,EAAE;AANR,GAHe;AAWrBC,EAAAA,YAAY,EAAE,EAXO;AAYrBC,EAAAA,GAAG,EAAE;AACHT,IAAAA,EAAE,EAAE,SADD;AAEHE,IAAAA,IAAI,EAAE;AAFH;AAZgB,CAAvB,C,CAkBA;;AACO,IAAMQ,UAAU,gBAAG,uBAAW,UAACpB,KAAD,EAAQqB,GAAR,EAAgB;AACnD,MAAMlB,YAAY,GAAG,wBAArB;AACA,MAAQmB,YAAR,GAAsCnB,YAAtC,CAAQmB,YAAR;AAAA,MAAsBC,WAAtB,GAAsCpB,YAAtC,CAAsBoB,WAAtB;AAEA;AACF;AACA;;AACE,wBAAU,YAAM;AACdA,IAAAA,WAAW,CAAC,wBAAMD,YAAY,CAACE,KAAnB,EAA0BxB,KAAK,CAACwB,KAAhC,CAAD,CAAX;AACD,GAFD,EAEG,CAACxB,KAAK,CAACwB,KAAP,CAFH;AAIA,sBACE,+EACE,gCAAC,gBAAD;AACE,IAAA,KAAK,EAAE;AAAEC,MAAAA,IAAI,EAAE,CAAR;AAAWC,MAAAA,QAAQ,EAAE;AAArB;AADT,KAEM1B,KAFN;AAGE,IAAA,GAAG,EAAEqB,GAHP;AAIE,IAAA,YAAY,EAAElB,YAJhB;AAKE,IAAA,cAAc,EAAEG,cALlB;AAME,IAAA,kBAAkB,EAAE;AAClBqB,MAAAA,mBAAmB,EAAEL,YAAY,CAACM,WAAb,CAAyBD,mBAD5B;AAElBE,MAAAA,eAAe,EAAEP,YAAY,CAACM,WAAb,CAAyBC;AAFxB;AANtB,KADF,eAYE,gCAAC,cAAD;AACE,IAAA,IAAI,EAAEP,YAAY,CAACM,WAAb,CAAyBC,eADjC;AAEE,IAAA,YAAY,EAAE1B;AAFhB,IAZF,CADF;AAmBD,CA9ByB,CAAnB","sourcesContent":["import { PROVIDER } from '@botonic/core'\nimport merge from 'lodash.merge'\nimport React, { forwardRef, useEffect } from 'react'\nimport { createPortal } from 'react-dom'\nimport styled from 'styled-components'\n\nimport { useWebchat } from './hooks'\nimport { SessionView } from './session-view'\nimport { Webchat } from './webchat'\n\nexport const DebugTab = styled.div`\n position: fixed;\n left: 0;\n top: 0;\n width: ${props => (props.show ? '350px' : '32px')};\n height: ${props => (props.show ? '100%' : '42px')};\n`\n\n// We want the debug tab to be rendered in the <body> even if the\n// webchat is being rendered in a shadowDOM, that's why we need a portal\nexport const DebugTabPortal = ({ webchatHooks, ...props }) =>\n createPortal(\n <DebugTab {...props}>\n <SessionView webchatHooks={webchatHooks} />\n </DebugTab>,\n document.body\n )\n\nconst initialSession = {\n is_first_interaction: true,\n last_session: {},\n user: {\n id: '000001',\n username: 'johndoe',\n name: 'John Doe',\n provider: PROVIDER.DEV,\n provider_id: '0000000',\n extra_data: {},\n },\n organization: '',\n bot: {\n id: '0000000',\n name: 'botName',\n },\n}\n\n// eslint-disable-next-line react/display-name\nexport const WebchatDev = forwardRef((props, ref) => {\n const webchatHooks = useWebchat()\n const { webchatState, updateTheme } = webchatHooks\n\n /* TODO: webchatState.theme should be included in the dependencies array\n together with props.theme. The problem is that this effect modifies webchatState\n so we enter an infinite rerender loop. */\n useEffect(() => {\n updateTheme(merge(webchatState.theme, props.theme))\n }, [props.theme])\n\n return (\n <>\n <Webchat\n style={{ flex: 1, position: 'relative' }}\n {...props}\n ref={ref}\n webchatHooks={webchatHooks}\n initialSession={initialSession}\n initialDevSettings={{\n keepSessionOnReload: webchatState.devSettings.keepSessionOnReload,\n showSessionView: webchatState.devSettings.showSessionView,\n }}\n />\n <DebugTabPortal\n show={webchatState.devSettings.showSessionView}\n webchatHooks={webchatHooks}\n />\n </>\n )\n})\n"],"file":"webchat-dev.js"}
@@ -1,108 +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.webchatReducer = webchatReducer;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
- var _actions = require("./actions");
13
-
14
- var _messagesReducer = require("./messages-reducer");
15
-
16
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
17
-
18
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
-
20
- // eslint-disable-next-line complexity
21
- function webchatReducer(state, action) {
22
- switch (action.type) {
23
- case _actions.UPDATE_WEBVIEW:
24
- return _objectSpread(_objectSpread({}, state), action.payload);
25
-
26
- case _actions.UPDATE_SESSION:
27
- return _objectSpread(_objectSpread({}, state), {}, {
28
- session: _objectSpread({}, action.payload)
29
- });
30
-
31
- case _actions.UPDATE_TYPING:
32
- return _objectSpread(_objectSpread({}, state), {}, {
33
- typing: action.payload
34
- });
35
-
36
- case _actions.UPDATE_THEME:
37
- return _objectSpread(_objectSpread({}, state), action.payload);
38
-
39
- case _actions.UPDATE_HANDOFF:
40
- return _objectSpread(_objectSpread({}, state), {}, {
41
- handoff: action.payload
42
- });
43
-
44
- case _actions.TOGGLE_WEBCHAT:
45
- return _objectSpread(_objectSpread({}, state), {}, {
46
- isWebchatOpen: action.payload
47
- });
48
-
49
- case _actions.TOGGLE_EMOJI_PICKER:
50
- return _objectSpread(_objectSpread({}, state), {}, {
51
- isEmojiPickerOpen: action.payload
52
- });
53
-
54
- case _actions.TOGGLE_PERSISTENT_MENU:
55
- return _objectSpread(_objectSpread({}, state), {}, {
56
- isPersistentMenuOpen: action.payload
57
- });
58
-
59
- case _actions.TOGGLE_COVER_COMPONENT:
60
- return _objectSpread(_objectSpread({}, state), {}, {
61
- isCoverComponentOpen: action.payload
62
- });
63
-
64
- case _actions.DO_RENDER_CUSTOM_COMPONENT:
65
- return _objectSpread(_objectSpread({}, state), {}, {
66
- isCustomComponentRendered: action.payload
67
- });
68
-
69
- case _actions.SET_ERROR:
70
- return _objectSpread(_objectSpread({}, state), {}, {
71
- error: action.payload || {}
72
- });
73
-
74
- case _actions.SET_ONLINE:
75
- return _objectSpread(_objectSpread({}, state), {}, {
76
- online: action.payload
77
- });
78
-
79
- case _actions.UPDATE_DEV_SETTINGS:
80
- return _objectSpread(_objectSpread({}, state), {}, {
81
- devSettings: _objectSpread({}, action.payload)
82
- });
83
-
84
- case _actions.UPDATE_LATEST_INPUT:
85
- return _objectSpread(_objectSpread({}, state), {}, {
86
- latestInput: action.payload
87
- });
88
-
89
- case _actions.UPDATE_LAST_ROUTE_PATH:
90
- return _objectSpread(_objectSpread({}, state), {}, {
91
- lastRoutePath: action.payload
92
- });
93
-
94
- case _actions.SET_CURRENT_ATTACHMENT:
95
- return _objectSpread(_objectSpread({}, state), {}, {
96
- currentAttachment: action.payload
97
- });
98
-
99
- case _actions.UPDATE_JWT:
100
- return _objectSpread(_objectSpread({}, state), {}, {
101
- jwt: action.payload
102
- });
103
-
104
- default:
105
- return (0, _messagesReducer.messagesReducer)(state, action);
106
- }
107
- }
108
- //# sourceMappingURL=webchat-reducer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/webchat/webchat-reducer.js"],"names":["webchatReducer","state","action","type","UPDATE_WEBVIEW","payload","UPDATE_SESSION","session","UPDATE_TYPING","typing","UPDATE_THEME","UPDATE_HANDOFF","handoff","TOGGLE_WEBCHAT","isWebchatOpen","TOGGLE_EMOJI_PICKER","isEmojiPickerOpen","TOGGLE_PERSISTENT_MENU","isPersistentMenuOpen","TOGGLE_COVER_COMPONENT","isCoverComponentOpen","DO_RENDER_CUSTOM_COMPONENT","isCustomComponentRendered","SET_ERROR","error","SET_ONLINE","online","UPDATE_DEV_SETTINGS","devSettings","UPDATE_LATEST_INPUT","latestInput","UPDATE_LAST_ROUTE_PATH","lastRoutePath","SET_CURRENT_ATTACHMENT","currentAttachment","UPDATE_JWT","jwt"],"mappings":";;;;;;;;;;;AAAA;;AAmBA;;;;;;AAEA;AACO,SAASA,cAAT,CAAwBC,KAAxB,EAA+BC,MAA/B,EAAuC;AAC5C,UAAQA,MAAM,CAACC,IAAf;AACE,SAAKC,uBAAL;AACE,6CAAYH,KAAZ,GAAsBC,MAAM,CAACG,OAA7B;;AACF,SAAKC,uBAAL;AACE,6CAAYL,KAAZ;AAAmBM,QAAAA,OAAO,oBAAOL,MAAM,CAACG,OAAd;AAA1B;;AACF,SAAKG,sBAAL;AACE,6CAAYP,KAAZ;AAAmBQ,QAAAA,MAAM,EAAEP,MAAM,CAACG;AAAlC;;AACF,SAAKK,qBAAL;AACE,6CACKT,KADL,GAEKC,MAAM,CAACG,OAFZ;;AAIF,SAAKM,uBAAL;AACE,6CAAYV,KAAZ;AAAmBW,QAAAA,OAAO,EAAEV,MAAM,CAACG;AAAnC;;AACF,SAAKQ,uBAAL;AACE,6CAAYZ,KAAZ;AAAmBa,QAAAA,aAAa,EAAEZ,MAAM,CAACG;AAAzC;;AACF,SAAKU,4BAAL;AACE,6CAAYd,KAAZ;AAAmBe,QAAAA,iBAAiB,EAAEd,MAAM,CAACG;AAA7C;;AACF,SAAKY,+BAAL;AACE,6CAAYhB,KAAZ;AAAmBiB,QAAAA,oBAAoB,EAAEhB,MAAM,CAACG;AAAhD;;AACF,SAAKc,+BAAL;AACE,6CAAYlB,KAAZ;AAAmBmB,QAAAA,oBAAoB,EAAElB,MAAM,CAACG;AAAhD;;AACF,SAAKgB,mCAAL;AACE,6CAAYpB,KAAZ;AAAmBqB,QAAAA,yBAAyB,EAAEpB,MAAM,CAACG;AAArD;;AACF,SAAKkB,kBAAL;AACE,6CAAYtB,KAAZ;AAAmBuB,QAAAA,KAAK,EAAEtB,MAAM,CAACG,OAAP,IAAkB;AAA5C;;AACF,SAAKoB,mBAAL;AACE,6CAAYxB,KAAZ;AAAmByB,QAAAA,MAAM,EAAExB,MAAM,CAACG;AAAlC;;AACF,SAAKsB,4BAAL;AACE,6CAAY1B,KAAZ;AAAmB2B,QAAAA,WAAW,oBAAO1B,MAAM,CAACG,OAAd;AAA9B;;AACF,SAAKwB,4BAAL;AACE,6CAAY5B,KAAZ;AAAmB6B,QAAAA,WAAW,EAAE5B,MAAM,CAACG;AAAvC;;AACF,SAAK0B,+BAAL;AACE,6CAAY9B,KAAZ;AAAmB+B,QAAAA,aAAa,EAAE9B,MAAM,CAACG;AAAzC;;AACF,SAAK4B,+BAAL;AACE,6CAAYhC,KAAZ;AAAmBiC,QAAAA,iBAAiB,EAAEhC,MAAM,CAACG;AAA7C;;AACF,SAAK8B,mBAAL;AACE,6CAAYlC,KAAZ;AAAmBmC,QAAAA,GAAG,EAAElC,MAAM,CAACG;AAA/B;;AACF;AACE,aAAO,sCAAgBJ,KAAhB,EAAuBC,MAAvB,CAAP;AAvCJ;AAyCD","sourcesContent":["import {\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_ROUTE_PATH,\n UPDATE_LATEST_INPUT,\n UPDATE_SESSION,\n UPDATE_THEME,\n UPDATE_TYPING,\n UPDATE_WEBVIEW,\n} from './actions'\nimport { messagesReducer } from './messages-reducer'\n\n// eslint-disable-next-line complexity\nexport function webchatReducer(state, action) {\n switch (action.type) {\n case UPDATE_WEBVIEW:\n return { ...state, ...action.payload }\n case UPDATE_SESSION:\n return { ...state, session: { ...action.payload } }\n case UPDATE_TYPING:\n return { ...state, typing: action.payload }\n case UPDATE_THEME:\n return {\n ...state,\n ...action.payload,\n }\n case UPDATE_HANDOFF:\n return { ...state, handoff: action.payload }\n case TOGGLE_WEBCHAT:\n return { ...state, isWebchatOpen: action.payload }\n case TOGGLE_EMOJI_PICKER:\n return { ...state, isEmojiPickerOpen: action.payload }\n case TOGGLE_PERSISTENT_MENU:\n return { ...state, isPersistentMenuOpen: action.payload }\n case TOGGLE_COVER_COMPONENT:\n return { ...state, isCoverComponentOpen: action.payload }\n case DO_RENDER_CUSTOM_COMPONENT:\n return { ...state, isCustomComponentRendered: action.payload }\n case SET_ERROR:\n return { ...state, error: action.payload || {} }\n case SET_ONLINE:\n return { ...state, online: action.payload }\n case UPDATE_DEV_SETTINGS:\n return { ...state, devSettings: { ...action.payload } }\n case UPDATE_LATEST_INPUT:\n return { ...state, latestInput: action.payload }\n case UPDATE_LAST_ROUTE_PATH:\n return { ...state, lastRoutePath: action.payload }\n case SET_CURRENT_ATTACHMENT:\n return { ...state, currentAttachment: action.payload }\n case UPDATE_JWT:\n return { ...state, jwt: action.payload }\n default:\n return messagesReducer(state, action)\n }\n}\n"],"file":"webchat-reducer.js"}