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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. package/lib/esm/app.d.ts +2 -0
  2. package/lib/esm/app.js +6 -0
  3. package/lib/esm/app.js.map +1 -0
  4. package/lib/esm/botonic-tester.d.ts +30 -0
  5. package/lib/esm/botonic-tester.js +78 -0
  6. package/lib/esm/botonic-tester.js.map +1 -0
  7. package/lib/esm/components/audio.d.ts +9 -0
  8. package/lib/esm/components/audio.js +21 -0
  9. package/lib/esm/components/audio.js.map +1 -0
  10. package/lib/esm/components/button.d.ts +17 -0
  11. package/lib/esm/components/button.js +159 -0
  12. package/lib/esm/components/button.js.map +1 -0
  13. package/lib/esm/components/buttons-disabler.d.ts +24 -0
  14. package/lib/esm/components/buttons-disabler.js +84 -0
  15. package/lib/esm/components/buttons-disabler.js.map +1 -0
  16. package/lib/esm/components/carousel.d.ts +10 -0
  17. package/lib/esm/components/carousel.js +105 -0
  18. package/lib/esm/components/carousel.js.map +1 -0
  19. package/lib/esm/components/components.d.ts +12 -0
  20. package/lib/esm/components/components.js +17 -0
  21. package/lib/esm/components/components.js.map +1 -0
  22. package/lib/esm/components/custom-message.d.ts +16 -0
  23. package/lib/esm/components/custom-message.js +50 -0
  24. package/lib/esm/components/custom-message.js.map +1 -0
  25. package/lib/esm/components/document.d.ts +9 -0
  26. package/lib/esm/components/document.js +42 -0
  27. package/lib/esm/components/document.js.map +1 -0
  28. package/lib/esm/components/element.d.ts +4 -0
  29. package/lib/esm/components/element.js +51 -0
  30. package/lib/esm/components/element.js.map +1 -0
  31. package/lib/esm/components/handoff.d.ts +1 -0
  32. package/lib/esm/components/handoff.js +49 -0
  33. package/lib/esm/components/handoff.js.map +1 -0
  34. package/lib/esm/components/image.d.ts +9 -0
  35. package/lib/esm/components/image.js +35 -0
  36. package/lib/esm/components/image.js.map +1 -0
  37. package/lib/esm/components/index-types.d.ts +89 -0
  38. package/lib/esm/components/index-types.js +2 -0
  39. package/lib/esm/components/index-types.js.map +1 -0
  40. package/lib/esm/components/index.d.ts +30 -0
  41. package/lib/esm/components/index.js +31 -0
  42. package/lib/esm/components/index.js.map +1 -0
  43. package/lib/esm/components/location.d.ts +11 -0
  44. package/lib/esm/components/location.js +27 -0
  45. package/lib/esm/components/location.js.map +1 -0
  46. package/lib/esm/components/markdown.d.ts +7 -0
  47. package/lib/esm/components/markdown.js +152 -0
  48. package/lib/esm/components/markdown.js.map +1 -0
  49. package/lib/esm/components/message/index.d.ts +1 -0
  50. package/lib/esm/components/message/index.js +147 -0
  51. package/lib/esm/components/message/index.js.map +1 -0
  52. package/lib/esm/components/message/message-feedback.d.ts +7 -0
  53. package/lib/esm/components/message/message-feedback.js +59 -0
  54. package/lib/esm/components/message/message-feedback.js.map +1 -0
  55. package/lib/esm/components/message/message-footer.d.ts +11 -0
  56. package/lib/esm/components/message/message-footer.js +17 -0
  57. package/lib/esm/components/message/message-footer.js.map +1 -0
  58. package/lib/esm/components/message/message-image.d.ts +7 -0
  59. package/lib/esm/components/message/message-image.js +19 -0
  60. package/lib/esm/components/message/message-image.js.map +1 -0
  61. package/lib/esm/components/message/styles.d.ts +33 -0
  62. package/lib/esm/components/message/styles.js +118 -0
  63. package/lib/esm/components/message/styles.js.map +1 -0
  64. package/lib/esm/components/message/timestamps.d.ts +13 -0
  65. package/lib/esm/components/message/timestamps.js +40 -0
  66. package/lib/esm/components/message/timestamps.js.map +1 -0
  67. package/lib/esm/components/message-template.d.ts +1 -0
  68. package/lib/esm/components/message-template.js +9 -0
  69. package/lib/esm/components/message-template.js.map +1 -0
  70. package/lib/esm/components/multichannel/facebook/facebook.d.ts +17 -0
  71. package/lib/esm/components/multichannel/facebook/facebook.js +43 -0
  72. package/lib/esm/components/multichannel/facebook/facebook.js.map +1 -0
  73. package/lib/esm/components/multichannel/index-types.d.ts +46 -0
  74. package/lib/esm/components/multichannel/index-types.js +2 -0
  75. package/lib/esm/components/multichannel/index-types.js.map +1 -0
  76. package/lib/esm/components/multichannel/index.d.ts +11 -0
  77. package/lib/esm/components/multichannel/index.js +12 -0
  78. package/lib/esm/components/multichannel/index.js.map +1 -0
  79. package/lib/esm/components/multichannel/multichannel-button.d.ts +1 -0
  80. package/lib/esm/components/multichannel/multichannel-button.js +67 -0
  81. package/lib/esm/components/multichannel/multichannel-button.js.map +1 -0
  82. package/lib/esm/components/multichannel/multichannel-carousel.d.ts +1 -0
  83. package/lib/esm/components/multichannel/multichannel-carousel.js +74 -0
  84. package/lib/esm/components/multichannel/multichannel-carousel.js.map +1 -0
  85. package/lib/esm/components/multichannel/multichannel-context.d.ts +11 -0
  86. package/lib/esm/components/multichannel/multichannel-context.js +12 -0
  87. package/lib/esm/components/multichannel/multichannel-context.js.map +1 -0
  88. package/lib/esm/components/multichannel/multichannel-reply.d.ts +1 -0
  89. package/lib/esm/components/multichannel/multichannel-reply.js +20 -0
  90. package/lib/esm/components/multichannel/multichannel-reply.js.map +1 -0
  91. package/lib/esm/components/multichannel/multichannel-text.d.ts +1 -0
  92. package/lib/esm/components/multichannel/multichannel-text.js +160 -0
  93. package/lib/esm/components/multichannel/multichannel-text.js.map +1 -0
  94. package/lib/esm/components/multichannel/multichannel-utils.d.ts +21 -0
  95. package/lib/esm/components/multichannel/multichannel-utils.js +81 -0
  96. package/lib/esm/components/multichannel/multichannel-utils.js.map +1 -0
  97. package/lib/esm/components/multichannel/multichannel.d.ts +1 -0
  98. package/lib/esm/components/multichannel/multichannel.js +57 -0
  99. package/lib/esm/components/multichannel/multichannel.js.map +1 -0
  100. package/lib/esm/components/multichannel/whatsapp/constants.d.ts +11 -0
  101. package/lib/esm/components/multichannel/whatsapp/constants.js +10 -0
  102. package/lib/esm/components/multichannel/whatsapp/constants.js.map +1 -0
  103. package/lib/esm/components/multichannel/whatsapp/markdown-meta.d.ts +1 -0
  104. package/lib/esm/components/multichannel/whatsapp/markdown-meta.js +38 -0
  105. package/lib/esm/components/multichannel/whatsapp/markdown-meta.js.map +1 -0
  106. package/lib/esm/components/pic.d.ts +6 -0
  107. package/lib/esm/components/pic.js +25 -0
  108. package/lib/esm/components/pic.js.map +1 -0
  109. package/lib/esm/components/raw.d.ts +9 -0
  110. package/lib/esm/components/raw.js +39 -0
  111. package/lib/esm/components/raw.js.map +1 -0
  112. package/lib/esm/components/reply.d.ts +10 -0
  113. package/lib/esm/components/reply.js +53 -0
  114. package/lib/esm/components/reply.js.map +1 -0
  115. package/lib/esm/components/share-button.d.ts +1 -0
  116. package/lib/esm/components/share-button.js +9 -0
  117. package/lib/esm/components/share-button.js.map +1 -0
  118. package/lib/esm/components/subtitle.d.ts +6 -0
  119. package/lib/esm/components/subtitle.js +19 -0
  120. package/lib/esm/components/subtitle.js.map +1 -0
  121. package/lib/esm/components/text.d.ts +7 -0
  122. package/lib/esm/components/text.js +40 -0
  123. package/lib/esm/components/text.js.map +1 -0
  124. package/lib/esm/components/title.d.ts +6 -0
  125. package/lib/esm/components/title.js +17 -0
  126. package/lib/esm/components/title.js.map +1 -0
  127. package/lib/esm/components/video.d.ts +9 -0
  128. package/lib/esm/components/video.js +25 -0
  129. package/lib/esm/components/video.js.map +1 -0
  130. package/lib/esm/components/webchat-settings.d.ts +16 -0
  131. package/lib/esm/components/webchat-settings.js +69 -0
  132. package/lib/esm/components/webchat-settings.js.map +1 -0
  133. package/lib/esm/components/whatsapp-button-list.d.ts +20 -0
  134. package/lib/esm/components/whatsapp-button-list.js +47 -0
  135. package/lib/esm/components/whatsapp-button-list.js.map +1 -0
  136. package/lib/esm/components/whatsapp-catalog.d.ts +6 -0
  137. package/lib/esm/components/whatsapp-catalog.js +21 -0
  138. package/lib/esm/components/whatsapp-catalog.js.map +1 -0
  139. package/lib/esm/components/whatsapp-cta-url-button.d.ts +15 -0
  140. package/lib/esm/components/whatsapp-cta-url-button.js +33 -0
  141. package/lib/esm/components/whatsapp-cta-url-button.js.map +1 -0
  142. package/lib/esm/components/whatsapp-media-carousel.d.ts +46 -0
  143. package/lib/esm/components/whatsapp-media-carousel.js +36 -0
  144. package/lib/esm/components/whatsapp-media-carousel.js.map +1 -0
  145. package/lib/esm/components/whatsapp-product-carousel.d.ts +32 -0
  146. package/lib/esm/components/whatsapp-product-carousel.js +30 -0
  147. package/lib/esm/components/whatsapp-product-carousel.js.map +1 -0
  148. package/lib/esm/components/whatsapp-product-list.d.ts +15 -0
  149. package/lib/esm/components/whatsapp-product-list.js +22 -0
  150. package/lib/esm/components/whatsapp-product-list.js.map +1 -0
  151. package/lib/esm/components/whatsapp-product.d.ts +7 -0
  152. package/lib/esm/components/whatsapp-product.js +21 -0
  153. package/lib/esm/components/whatsapp-product.js.map +1 -0
  154. package/lib/esm/components/whatsapp-template.d.ts +1 -0
  155. package/lib/esm/components/whatsapp-template.js +20 -0
  156. package/lib/esm/components/whatsapp-template.js.map +1 -0
  157. package/lib/esm/constants.d.ts +165 -0
  158. package/lib/esm/constants.js +187 -0
  159. package/lib/esm/constants.js.map +1 -0
  160. package/lib/esm/contexts.d.ts +18 -0
  161. package/lib/esm/contexts.js +18 -0
  162. package/lib/esm/contexts.js.map +1 -0
  163. package/lib/esm/dev-app.d.ts +38 -0
  164. package/lib/esm/dev-app.js +81 -0
  165. package/lib/esm/dev-app.js.map +1 -0
  166. package/lib/esm/index-types.d.ts +178 -0
  167. package/lib/esm/index-types.js +12 -0
  168. package/lib/esm/index-types.js.map +1 -0
  169. package/lib/esm/index.d.ts +11 -0
  170. package/lib/esm/index.js +12 -0
  171. package/lib/esm/index.js.map +1 -0
  172. package/lib/esm/message-utils.d.ts +19 -0
  173. package/lib/esm/message-utils.js +41 -0
  174. package/lib/esm/message-utils.js.map +1 -0
  175. package/lib/esm/msg-to-botonic.d.ts +18 -0
  176. package/lib/esm/msg-to-botonic.js +132 -0
  177. package/lib/esm/msg-to-botonic.js.map +1 -0
  178. package/lib/esm/node-app.d.ts +7 -0
  179. package/lib/esm/node-app.js +19 -0
  180. package/lib/esm/node-app.js.map +1 -0
  181. package/lib/esm/react-bot.d.ts +8 -0
  182. package/lib/esm/react-bot.js +32 -0
  183. package/lib/esm/react-bot.js.map +1 -0
  184. package/lib/esm/shared/styles.d.ts +2 -0
  185. package/lib/esm/shared/styles.js +28 -0
  186. package/lib/esm/shared/styles.js.map +1 -0
  187. package/lib/esm/util/dom.d.ts +4 -0
  188. package/lib/esm/util/dom.js +24 -0
  189. package/lib/esm/util/dom.js.map +1 -0
  190. package/lib/esm/util/environment.d.ts +6 -0
  191. package/lib/esm/util/environment.js +61 -0
  192. package/lib/esm/util/environment.js.map +1 -0
  193. package/lib/esm/util/error-boundary.d.ts +7 -0
  194. package/lib/esm/util/error-boundary.js +28 -0
  195. package/lib/esm/util/error-boundary.js.map +1 -0
  196. package/lib/esm/util/functional.d.ts +3 -0
  197. package/lib/esm/util/functional.js +26 -0
  198. package/lib/esm/util/functional.js.map +1 -0
  199. package/lib/esm/util/index.d.ts +9 -0
  200. package/lib/esm/util/index.js +10 -0
  201. package/lib/esm/util/index.js.map +1 -0
  202. package/lib/esm/util/logs.d.ts +2 -0
  203. package/lib/esm/util/logs.js +15 -0
  204. package/lib/esm/util/logs.js.map +1 -0
  205. package/lib/esm/util/objects.d.ts +3 -0
  206. package/lib/esm/util/objects.js +38 -0
  207. package/lib/esm/util/objects.js.map +1 -0
  208. package/lib/esm/util/react.d.ts +12 -0
  209. package/lib/esm/util/react.js +34 -0
  210. package/lib/esm/util/react.js.map +1 -0
  211. package/lib/esm/util/regexs.d.ts +2 -0
  212. package/lib/esm/util/regexs.js +18 -0
  213. package/lib/esm/util/regexs.js.map +1 -0
  214. package/lib/esm/util/strings.d.ts +1 -0
  215. package/lib/esm/util/strings.js +7 -0
  216. package/lib/esm/util/strings.js.map +1 -0
  217. package/lib/esm/util/webchat.d.ts +22 -0
  218. package/lib/esm/util/webchat.js +55 -0
  219. package/lib/esm/util/webchat.js.map +1 -0
  220. package/lib/esm/util/webviews.d.ts +1 -0
  221. package/lib/esm/util/webviews.js +6 -0
  222. package/lib/esm/util/webviews.js.map +1 -0
  223. package/lib/esm/webchat/chat-area/index.d.ts +1 -0
  224. package/lib/esm/webchat/chat-area/index.js +18 -0
  225. package/lib/esm/webchat/chat-area/index.js.map +1 -0
  226. package/lib/esm/webchat/chat-area/styles.d.ts +3 -0
  227. package/lib/esm/webchat/chat-area/styles.js +9 -0
  228. package/lib/esm/webchat/chat-area/styles.js.map +1 -0
  229. package/lib/esm/webchat/components/common.d.ts +1 -0
  230. package/lib/esm/webchat/components/common.js +9 -0
  231. package/lib/esm/webchat/components/common.js.map +1 -0
  232. package/lib/esm/webchat/components/conditional-animation.d.ts +1 -0
  233. package/lib/esm/webchat/components/conditional-animation.js +12 -0
  234. package/lib/esm/webchat/components/conditional-animation.js.map +1 -0
  235. package/lib/esm/webchat/components/opened-persistent-menu.d.ts +6 -0
  236. package/lib/esm/webchat/components/opened-persistent-menu.js +30 -0
  237. package/lib/esm/webchat/components/opened-persistent-menu.js.map +1 -0
  238. package/lib/esm/webchat/constants.d.ts +8 -0
  239. package/lib/esm/webchat/constants.js +10 -0
  240. package/lib/esm/webchat/constants.js.map +1 -0
  241. package/lib/esm/webchat/context/actions.d.ts +29 -0
  242. package/lib/esm/webchat/context/actions.js +32 -0
  243. package/lib/esm/webchat/context/actions.js.map +1 -0
  244. package/lib/esm/webchat/context/index.d.ts +5 -0
  245. package/lib/esm/webchat/context/index.js +78 -0
  246. package/lib/esm/webchat/context/index.js.map +1 -0
  247. package/lib/esm/webchat/context/messages-reducer.d.ts +6 -0
  248. package/lib/esm/webchat/context/messages-reducer.js +85 -0
  249. package/lib/esm/webchat/context/messages-reducer.js.map +1 -0
  250. package/lib/esm/webchat/context/types.d.ts +74 -0
  251. package/lib/esm/webchat/context/types.js +2 -0
  252. package/lib/esm/webchat/context/types.js.map +1 -0
  253. package/lib/esm/webchat/context/use-webchat.d.ts +47 -0
  254. package/lib/esm/webchat/context/use-webchat.js +195 -0
  255. package/lib/esm/webchat/context/use-webchat.js.map +1 -0
  256. package/lib/esm/webchat/context/webchat-reducer.d.ts +6 -0
  257. package/lib/esm/webchat/context/webchat-reducer.js +48 -0
  258. package/lib/esm/webchat/context/webchat-reducer.js.map +1 -0
  259. package/lib/esm/webchat/cover-component/index.d.ts +6 -0
  260. package/lib/esm/webchat/cover-component/index.js +17 -0
  261. package/lib/esm/webchat/cover-component/index.js.map +1 -0
  262. package/lib/esm/webchat/devices/index.d.ts +11 -0
  263. package/lib/esm/webchat/devices/index.js +18 -0
  264. package/lib/esm/webchat/devices/index.js.map +1 -0
  265. package/lib/esm/webchat/header/default-header.d.ts +1 -0
  266. package/lib/esm/webchat/header/default-header.js +21 -0
  267. package/lib/esm/webchat/header/default-header.js.map +1 -0
  268. package/lib/esm/webchat/header/index.d.ts +2 -0
  269. package/lib/esm/webchat/header/index.js +20 -0
  270. package/lib/esm/webchat/header/index.js.map +1 -0
  271. package/lib/esm/webchat/header/styles.d.ts +7 -0
  272. package/lib/esm/webchat/header/styles.js +55 -0
  273. package/lib/esm/webchat/header/styles.js.map +1 -0
  274. package/lib/esm/webchat/hooks/index.d.ts +10 -0
  275. package/lib/esm/webchat/hooks/index.js +11 -0
  276. package/lib/esm/webchat/hooks/index.js.map +1 -0
  277. package/lib/esm/webchat/hooks/use-component-visible.d.ts +8 -0
  278. package/lib/esm/webchat/hooks/use-component-visible.js +20 -0
  279. package/lib/esm/webchat/hooks/use-component-visible.js.map +1 -0
  280. package/lib/esm/webchat/hooks/use-component-will-mount.d.ts +1 -0
  281. package/lib/esm/webchat/hooks/use-component-will-mount.js +5 -0
  282. package/lib/esm/webchat/hooks/use-component-will-mount.js.map +1 -0
  283. package/lib/esm/webchat/hooks/use-device-adapter.d.ts +3 -0
  284. package/lib/esm/webchat/hooks/use-device-adapter.js +42 -0
  285. package/lib/esm/webchat/hooks/use-device-adapter.js.map +1 -0
  286. package/lib/esm/webchat/hooks/use-previous.d.ts +1 -0
  287. package/lib/esm/webchat/hooks/use-previous.js +9 -0
  288. package/lib/esm/webchat/hooks/use-previous.js.map +1 -0
  289. package/lib/esm/webchat/hooks/use-scroll-to-bottom.d.ts +9 -0
  290. package/lib/esm/webchat/hooks/use-scroll-to-bottom.js +19 -0
  291. package/lib/esm/webchat/hooks/use-scroll-to-bottom.js.map +1 -0
  292. package/lib/esm/webchat/hooks/use-scrollbar-controller.d.ts +6 -0
  293. package/lib/esm/webchat/hooks/use-scrollbar-controller.js +136 -0
  294. package/lib/esm/webchat/hooks/use-scrollbar-controller.js.map +1 -0
  295. package/lib/esm/webchat/hooks/use-typing.d.ts +10 -0
  296. package/lib/esm/webchat/hooks/use-typing.js +28 -0
  297. package/lib/esm/webchat/hooks/use-typing.js.map +1 -0
  298. package/lib/esm/webchat/hooks/use-virtual-keyboard-detection.d.ts +3 -0
  299. package/lib/esm/webchat/hooks/use-virtual-keyboard-detection.js +24 -0
  300. package/lib/esm/webchat/hooks/use-virtual-keyboard-detection.js.map +1 -0
  301. package/lib/esm/webchat/hooks/use-webchat-dimensions.d.ts +4 -0
  302. package/lib/esm/webchat/hooks/use-webchat-dimensions.js +36 -0
  303. package/lib/esm/webchat/hooks/use-webchat-dimensions.js.map +1 -0
  304. package/lib/esm/webchat/hooks/use-webchat-resizer.d.ts +4 -0
  305. package/lib/esm/webchat/hooks/use-webchat-resizer.js +30 -0
  306. package/lib/esm/webchat/hooks/use-webchat-resizer.js.map +1 -0
  307. package/lib/esm/webchat/index-types.d.ts +18 -0
  308. package/lib/esm/webchat/index-types.js +2 -0
  309. package/lib/esm/webchat/index-types.js.map +1 -0
  310. package/lib/esm/webchat/index.d.ts +5 -0
  311. package/lib/esm/webchat/index.js +11 -0
  312. package/lib/esm/webchat/index.js.map +1 -0
  313. package/lib/esm/webchat/input-panel/attachment.d.ts +7 -0
  314. package/lib/esm/webchat/input-panel/attachment.js +26 -0
  315. package/lib/esm/webchat/input-panel/attachment.js.map +1 -0
  316. package/lib/esm/webchat/input-panel/emoji-picker.d.ts +6 -0
  317. package/lib/esm/webchat/input-panel/emoji-picker.js +23 -0
  318. package/lib/esm/webchat/input-panel/emoji-picker.js.map +1 -0
  319. package/lib/esm/webchat/input-panel/index.d.ts +12 -0
  320. package/lib/esm/webchat/input-panel/index.js +55 -0
  321. package/lib/esm/webchat/input-panel/index.js.map +1 -0
  322. package/lib/esm/webchat/input-panel/opened-emoji-picker.d.ts +6 -0
  323. package/lib/esm/webchat/input-panel/opened-emoji-picker.js +10 -0
  324. package/lib/esm/webchat/input-panel/opened-emoji-picker.js.map +1 -0
  325. package/lib/esm/webchat/input-panel/persistent-menu.d.ts +6 -0
  326. package/lib/esm/webchat/input-panel/persistent-menu.js +14 -0
  327. package/lib/esm/webchat/input-panel/persistent-menu.js.map +1 -0
  328. package/lib/esm/webchat/input-panel/send-button.d.ts +5 -0
  329. package/lib/esm/webchat/input-panel/send-button.js +14 -0
  330. package/lib/esm/webchat/input-panel/send-button.js.map +1 -0
  331. package/lib/esm/webchat/input-panel/styles.d.ts +3 -0
  332. package/lib/esm/webchat/input-panel/styles.js +27 -0
  333. package/lib/esm/webchat/input-panel/styles.js.map +1 -0
  334. package/lib/esm/webchat/input-panel/textarea.d.ts +11 -0
  335. package/lib/esm/webchat/input-panel/textarea.js +58 -0
  336. package/lib/esm/webchat/input-panel/textarea.js.map +1 -0
  337. package/lib/esm/webchat/message-list/index.d.ts +1 -0
  338. package/lib/esm/webchat/message-list/index.js +107 -0
  339. package/lib/esm/webchat/message-list/index.js.map +1 -0
  340. package/lib/esm/webchat/message-list/intro-message.d.ts +1 -0
  341. package/lib/esm/webchat/message-list/intro-message.js +18 -0
  342. package/lib/esm/webchat/message-list/intro-message.js.map +1 -0
  343. package/lib/esm/webchat/message-list/scroll-button.d.ts +6 -0
  344. package/lib/esm/webchat/message-list/scroll-button.js +12 -0
  345. package/lib/esm/webchat/message-list/scroll-button.js.map +1 -0
  346. package/lib/esm/webchat/message-list/styles.d.ts +5 -0
  347. package/lib/esm/webchat/message-list/styles.js +56 -0
  348. package/lib/esm/webchat/message-list/styles.js.map +1 -0
  349. package/lib/esm/webchat/message-list/unread-messages-banner.d.ts +6 -0
  350. package/lib/esm/webchat/message-list/unread-messages-banner.js +13 -0
  351. package/lib/esm/webchat/message-list/unread-messages-banner.js.map +1 -0
  352. package/lib/esm/webchat/message-list/use-debounce.d.ts +1 -0
  353. package/lib/esm/webchat/message-list/use-debounce.js +14 -0
  354. package/lib/esm/webchat/message-list/use-debounce.js.map +1 -0
  355. package/lib/esm/webchat/message-list/use-notifications.d.ts +7 -0
  356. package/lib/esm/webchat/message-list/use-notifications.js +20 -0
  357. package/lib/esm/webchat/message-list/use-notifications.js.map +1 -0
  358. package/lib/esm/webchat/replies/index.d.ts +1 -0
  359. package/lib/esm/webchat/replies/index.js +28 -0
  360. package/lib/esm/webchat/replies/index.js.map +1 -0
  361. package/lib/esm/webchat/replies/styles.d.ts +8 -0
  362. package/lib/esm/webchat/replies/styles.js +21 -0
  363. package/lib/esm/webchat/replies/styles.js.map +1 -0
  364. package/lib/esm/webchat/session-view.d.ts +1 -0
  365. package/lib/esm/webchat/session-view.js +96 -0
  366. package/lib/esm/webchat/session-view.js.map +1 -0
  367. package/lib/esm/webchat/styles.d.ts +9 -0
  368. package/lib/esm/webchat/styles.js +50 -0
  369. package/lib/esm/webchat/styles.js.map +1 -0
  370. package/lib/esm/webchat/theme/types.d.ts +167 -0
  371. package/lib/esm/webchat/theme/types.js +2 -0
  372. package/lib/esm/webchat/theme/types.js.map +1 -0
  373. package/lib/esm/webchat/tracking.d.ts +7 -0
  374. package/lib/esm/webchat/tracking.js +10 -0
  375. package/lib/esm/webchat/tracking.js.map +1 -0
  376. package/lib/esm/webchat/trigger-button/index.d.ts +2 -0
  377. package/lib/esm/webchat/trigger-button/index.js +28 -0
  378. package/lib/esm/webchat/trigger-button/index.js.map +1 -0
  379. package/lib/esm/webchat/trigger-button/styles.d.ts +3 -0
  380. package/lib/esm/webchat/trigger-button/styles.js +36 -0
  381. package/lib/esm/webchat/trigger-button/styles.js.map +1 -0
  382. package/lib/esm/webchat/typing-indicator/index.d.ts +3 -0
  383. package/lib/esm/webchat/typing-indicator/index.js +8 -0
  384. package/lib/esm/webchat/typing-indicator/index.js.map +1 -0
  385. package/lib/esm/webchat/typing-indicator/styles.d.ts +7 -0
  386. package/lib/esm/webchat/typing-indicator/styles.js +46 -0
  387. package/lib/esm/webchat/typing-indicator/styles.js.map +1 -0
  388. package/lib/esm/webchat/use-storage-state-hook.d.ts +1 -0
  389. package/lib/esm/webchat/use-storage-state-hook.js +38 -0
  390. package/lib/esm/webchat/use-storage-state-hook.js.map +1 -0
  391. package/lib/esm/webchat/utils.d.ts +2 -0
  392. package/lib/esm/webchat/utils.js +8 -0
  393. package/lib/esm/webchat/utils.js.map +1 -0
  394. package/lib/esm/webchat/webchat-dev.d.ts +7 -0
  395. package/lib/esm/webchat/webchat-dev.js +56 -0
  396. package/lib/esm/webchat/webchat-dev.js.map +1 -0
  397. package/lib/esm/webchat/webchat.d.ts +4 -0
  398. package/lib/esm/webchat/webchat.js +522 -0
  399. package/lib/esm/webchat/webchat.js.map +1 -0
  400. package/lib/esm/webchat/webview.d.ts +2 -0
  401. package/lib/esm/webchat/webview.js +71 -0
  402. package/lib/esm/webchat/webview.js.map +1 -0
  403. package/lib/esm/webchat-app.d.ts +78 -0
  404. package/lib/esm/webchat-app.js +363 -0
  405. package/lib/esm/webchat-app.js.map +1 -0
  406. package/lib/esm/webview-app.d.ts +7 -0
  407. package/lib/esm/webview-app.js +105 -0
  408. package/lib/esm/webview-app.js.map +1 -0
  409. package/package.json +1 -1
@@ -0,0 +1,165 @@
1
+ export namespace COLORS {
2
+ const APPLE_GREEN: string;
3
+ const BLEACHED_CEDAR_PURPLE: string;
4
+ const BOTONIC_BLUE: string;
5
+ const CACTUS_GREEN: string;
6
+ const CONCRETE_WHITE: string;
7
+ const CURIOUS_BLUE: string;
8
+ const DAINTREE_BLUE: string;
9
+ const ERROR_RED: string;
10
+ const FRINGY_FLOWER_GREEN: string;
11
+ const GRAY: string;
12
+ const LIGHT_GRAY: string;
13
+ const MID_GRAY: string;
14
+ const PIGEON_POST_BLUE_ALPHA_0_5: string;
15
+ const RED_NOTIFICATIONS: string;
16
+ const SCORPION_GRAY: string;
17
+ const SEASHELL_WHITE: string;
18
+ const SILVER: string;
19
+ const SOLID_BLACK_ALPHA_0_2: string;
20
+ const SOLID_BLACK_ALPHA_0_5: string;
21
+ const SOLID_BLACK: string;
22
+ const SOLID_WHITE_ALPHA_0_2: string;
23
+ const SOLID_WHITE_ALPHA_0_8: string;
24
+ const SOLID_WHITE: string;
25
+ const TASMAN_GRAY: string;
26
+ const TRANSPARENT: string;
27
+ const WILD_SAND_WHITE: string;
28
+ }
29
+ export namespace WEBCHAT {
30
+ namespace DEFAULTS {
31
+ export const WIDTH: number;
32
+ export const HEIGHT: number;
33
+ export const TITLE: string;
34
+ export { BotonicLogo as LOGO };
35
+ export { UrlIcon as URL_ICON };
36
+ export const PLACEHOLDER: string;
37
+ export const FONT_FAMILY: string;
38
+ export const BORDER_RADIUS_TOP_CORNERS: string;
39
+ export const ELEMENT_WIDTH: number;
40
+ export const ELEMENT_MARGIN_RIGHT: number;
41
+ export const STORAGE_KEY: string;
42
+ export const HOST_ID: string;
43
+ export const ID: string;
44
+ export const BUTTON_AUTO_DISABLE: boolean;
45
+ export namespace BUTTON_DISABLED_STYLE {
46
+ const opacity: number;
47
+ const cursor: string;
48
+ const pointerEvents: string;
49
+ }
50
+ }
51
+ namespace CUSTOM_PROPERTIES {
52
+ const enableAnimations: string;
53
+ const markdownStyle: string;
54
+ const imagePreviewer: string;
55
+ const mobileBreakpoint: string;
56
+ const mobileStyle: string;
57
+ const webviewHeaderStyle: string;
58
+ const webviewStyle: string;
59
+ const brandColor: string;
60
+ const brandImage: string;
61
+ const customHeader: string;
62
+ const headerImage: string;
63
+ const headerStyle: string;
64
+ const headerSubtitle: string;
65
+ const headerTitle: string;
66
+ const botMessageBackground: string;
67
+ const botMessageBlobTick: string;
68
+ const botMessageBlobTickStyle: string;
69
+ const botMessageBlobWidth: string;
70
+ const botMessageBorderColor: string;
71
+ const botMessageImage: string;
72
+ const botMessageImageStyle: string;
73
+ const botMessageStyle: string;
74
+ const agentMessageImage: string;
75
+ const customMessageTypes: string;
76
+ const messageStyle: string;
77
+ const userMessageBackground: string;
78
+ const userMessageBlobTick: string;
79
+ const userMessageBlobTickStyle: string;
80
+ const userMessageBorderColor: string;
81
+ const userMessageStyle: string;
82
+ const enableMessageTimestamps: string;
83
+ const messageTimestampsFormat: string;
84
+ const messageTimestampsStyle: string;
85
+ const messageTimestampsWithImage: string;
86
+ const customIntro: string;
87
+ const introImage: string;
88
+ const introStyle: string;
89
+ const buttonHoverBackground: string;
90
+ const buttonHoverTextColor: string;
91
+ const buttonMessageType: string;
92
+ const buttonStyle: string;
93
+ const buttonDisabledStyle: string;
94
+ const buttonAutoDisable: string;
95
+ const buttonStyleBackground: string;
96
+ const buttonStyleColor: string;
97
+ const customButton: string;
98
+ const urlIconImage: string;
99
+ const urlIconEnabled: string;
100
+ const alignReplies: string;
101
+ const customReply: string;
102
+ const replyStyle: string;
103
+ const wrapReplies: string;
104
+ const customTrigger: string;
105
+ const triggerButtonImage: string;
106
+ const triggerButtonStyle: string;
107
+ const notificationsEnabled: string;
108
+ const notificationsBannerEnabled: string;
109
+ const notificationsBannerCustom: string;
110
+ const notificationsBannerText: string;
111
+ const notificationsTriggerButtonEnabled: string;
112
+ const scrollButtonEnabled: string;
113
+ const scrollButtonCustom: string;
114
+ const blockInputs: string;
115
+ const documentDownload: string;
116
+ const customMenuButton: string;
117
+ const customPersistentMenu: string;
118
+ const customEmojiPicker: string;
119
+ const customAttachments: string;
120
+ const customSendButton: string;
121
+ const darkBackgroundMenu: string;
122
+ const enableAttachments: string;
123
+ const enableEmojiPicker: string;
124
+ const enableSendButton: string;
125
+ const enableUserInput: string;
126
+ const persistentMenu: string;
127
+ const textPlaceholder: string;
128
+ const userInputBoxStyle: string;
129
+ const userInputStyle: string;
130
+ const coverComponent: string;
131
+ const coverComponentProps: string;
132
+ const customCarouselLeftArrow: string;
133
+ const customCarouselRightArrow: string;
134
+ const enableCarouselArrows: string;
135
+ }
136
+ }
137
+ export namespace MIME_WHITELIST {
138
+ const audio: string[];
139
+ const document: string[];
140
+ const image: string[];
141
+ const video: string[];
142
+ }
143
+ export const MAX_ALLOWED_SIZE_MB: 10;
144
+ export namespace ROLES {
145
+ const ATTACHMENT_ICON: string;
146
+ const EMOJI_PICKER_ICON: string;
147
+ const EMOJI_PICKER: string;
148
+ const HEADER: string;
149
+ const MESSAGE_LIST: string;
150
+ const PERSISTENT_MENU_ICON: string;
151
+ const PERSISTENT_MENU: string;
152
+ const SEND_BUTTON_ICON: string;
153
+ const WEBCHAT: string;
154
+ const TRIGGER_BUTTON: string;
155
+ const TYPING_INDICATOR: string;
156
+ const TEXT_BOX: string;
157
+ const WEBVIEW: string;
158
+ const WEBVIEW_HEADER: string;
159
+ const MESSAGE: string;
160
+ const IMAGE_MESSAGE: string;
161
+ const AUDIO_MESSAGE: string;
162
+ const VIDEO_MESSAGE: string;
163
+ const DOCUMENT_MESSAGE: string;
164
+ const RAW_MESSAGE: string;
165
+ }
@@ -0,0 +1,187 @@
1
+ import BotonicLogo from './assets/botonic_react_logo100x100.png';
2
+ import UrlIcon from './assets/url-icon.png';
3
+ export const COLORS = {
4
+ // http://chir.ag/projects/name-that-color
5
+ APPLE_GREEN: 'rgba(58, 156, 53, 1)',
6
+ BLEACHED_CEDAR_PURPLE: 'rgba(46, 32, 59, 1)',
7
+ BOTONIC_BLUE: 'rgba(0, 153, 255, 1)',
8
+ CACTUS_GREEN: 'rgba(96, 115, 94, 1)',
9
+ CONCRETE_WHITE: 'rgba(243, 243, 243, 1)',
10
+ CURIOUS_BLUE: 'rgba(38, 139, 210, 1)',
11
+ DAINTREE_BLUE: 'rgba(0, 43, 53, 1)',
12
+ ERROR_RED: 'rgba(255, 43, 94)',
13
+ FRINGY_FLOWER_GREEN: 'rgba(198, 231, 192, 1)',
14
+ GRAY: 'rgba(129, 129, 129, 1)',
15
+ LIGHT_GRAY: 'rgba(209, 209, 209, 1)',
16
+ MID_GRAY: 'rgba(105, 105, 115, 1)',
17
+ PIGEON_POST_BLUE_ALPHA_0_5: 'rgba(176, 196, 222, 0.5)',
18
+ RED_NOTIFICATIONS: 'rgba(255, 66, 111, 1)',
19
+ SCORPION_GRAY: 'rgba(87, 87, 87, 1)',
20
+ SEASHELL_WHITE: 'rgba(241, 240, 240, 1)',
21
+ SILVER: 'rgba(200, 200, 200, 1)',
22
+ SOLID_BLACK_ALPHA_0_2: 'rgba(0, 0, 0, 0.2)',
23
+ SOLID_BLACK_ALPHA_0_5: 'rgba(0, 0, 0, 0.5)',
24
+ SOLID_BLACK: 'rgba(0, 0, 0, 1)',
25
+ SOLID_WHITE_ALPHA_0_2: 'rgba(255, 255, 255, 0.2)',
26
+ SOLID_WHITE_ALPHA_0_8: 'rgba(255, 255, 255, 0.8)',
27
+ SOLID_WHITE: 'rgba(255, 255, 255, 1)',
28
+ TASMAN_GRAY: 'rgba(209, 216, 207, 1)',
29
+ TRANSPARENT: 'rgba(0, 0, 0, 0)',
30
+ WILD_SAND_WHITE: 'rgba(244, 244, 244, 1)',
31
+ };
32
+ export const WEBCHAT = {
33
+ DEFAULTS: {
34
+ WIDTH: 300,
35
+ HEIGHT: 450,
36
+ TITLE: 'Botonic',
37
+ LOGO: BotonicLogo,
38
+ URL_ICON: UrlIcon,
39
+ PLACEHOLDER: 'Ask me something...',
40
+ FONT_FAMILY: "'Noto Sans JP', sans-serif",
41
+ BORDER_RADIUS_TOP_CORNERS: '6px 6px 0px 0px',
42
+ ELEMENT_WIDTH: 222,
43
+ ELEMENT_MARGIN_RIGHT: 6,
44
+ STORAGE_KEY: 'botonicState',
45
+ HOST_ID: 'root',
46
+ ID: 'botonic-webchat',
47
+ BUTTON_AUTO_DISABLE: false,
48
+ BUTTON_DISABLED_STYLE: {
49
+ opacity: 0.5,
50
+ cursor: 'auto',
51
+ pointerEvents: 'none',
52
+ },
53
+ },
54
+ CUSTOM_PROPERTIES: {
55
+ // General
56
+ enableAnimations: 'animations.enable',
57
+ markdownStyle: 'markdownStyle',
58
+ imagePreviewer: 'imagePreviewer',
59
+ // Mobile
60
+ mobileBreakpoint: 'mobileBreakpoint',
61
+ mobileStyle: 'mobileStyle',
62
+ // Webviews
63
+ webviewHeaderStyle: 'webview.header.style',
64
+ webviewStyle: 'webview.style',
65
+ // Brand
66
+ brandColor: 'brand.color',
67
+ brandImage: 'brand.image',
68
+ // Header
69
+ customHeader: 'header.custom',
70
+ headerImage: 'header.image',
71
+ headerStyle: 'header.style',
72
+ headerSubtitle: 'header.subtitle',
73
+ headerTitle: 'header.title',
74
+ // Bot Message
75
+ botMessageBackground: 'message.bot.style.background',
76
+ botMessageBlobTick: 'message.bot.blobTick',
77
+ botMessageBlobTickStyle: 'message.bot.blobTickStyle',
78
+ botMessageBlobWidth: 'message.bot.blobWidth',
79
+ botMessageBorderColor: 'message.bot.style.borderColor',
80
+ botMessageImage: 'message.bot.image',
81
+ botMessageImageStyle: 'message.bot.imageStyle',
82
+ botMessageStyle: 'message.bot.style',
83
+ // Agent Message
84
+ agentMessageImage: 'message.agent.image',
85
+ // User Message
86
+ customMessageTypes: 'message.customTypes',
87
+ messageStyle: 'message.style',
88
+ userMessageBackground: 'message.user.style.background',
89
+ userMessageBlobTick: 'message.user.blobTick',
90
+ userMessageBlobTickStyle: 'message.user.blobTickStyle',
91
+ userMessageBorderColor: 'message.user.style.borderColor',
92
+ userMessageStyle: 'message.user.style',
93
+ // Timestamps
94
+ enableMessageTimestamps: 'message.timestamps.enable',
95
+ messageTimestampsFormat: 'message.timestamps.format',
96
+ messageTimestampsStyle: 'message.timestamps.style',
97
+ messageTimestampsWithImage: 'message.timestamps.withImage',
98
+ // Intro
99
+ customIntro: 'intro.custom',
100
+ introImage: 'intro.image',
101
+ introStyle: 'intro.style',
102
+ // Buttons
103
+ buttonHoverBackground: 'button.hoverBackground',
104
+ buttonHoverTextColor: 'button.hoverTextColor',
105
+ buttonMessageType: 'button.messageType',
106
+ buttonStyle: 'button.style',
107
+ buttonDisabledStyle: 'button.disabledstyle',
108
+ buttonAutoDisable: 'button.autodisable',
109
+ buttonStyleBackground: 'button.style.background',
110
+ buttonStyleColor: 'button.style.color',
111
+ customButton: 'button.custom',
112
+ urlIconImage: 'button.urlIcon.image',
113
+ urlIconEnabled: 'button.urlIcon.enable',
114
+ // Replies
115
+ alignReplies: 'replies.align',
116
+ customReply: 'reply.custom',
117
+ replyStyle: 'reply.style',
118
+ wrapReplies: 'replies.wrap',
119
+ // TriggerButton
120
+ customTrigger: 'triggerButton.custom',
121
+ triggerButtonImage: 'triggerButton.image',
122
+ triggerButtonStyle: 'triggerButton.style',
123
+ // Notifications
124
+ notificationsEnabled: 'notifications.enable',
125
+ notificationsBannerEnabled: 'notifications.banner.enable',
126
+ notificationsBannerCustom: 'notifications.banner.custom',
127
+ notificationsBannerText: 'notifications.banner.text',
128
+ notificationsTriggerButtonEnabled: 'notifications.triggerButton.enable',
129
+ // Scroll Button
130
+ scrollButtonEnabled: 'scrollButton.enable',
131
+ scrollButtonCustom: 'scrollButton.custom',
132
+ // User Input
133
+ blockInputs: 'userInput.blockInputs',
134
+ documentDownload: 'documentDownload',
135
+ customMenuButton: 'userInput.menuButton.custom',
136
+ customPersistentMenu: 'userInput.menu.custom',
137
+ customEmojiPicker: 'userInput.emojiPicker.custom',
138
+ customAttachments: 'userInput.attachments.custom',
139
+ customSendButton: 'userInput.sendButton.custom',
140
+ darkBackgroundMenu: 'userInput.menu.darkBackground',
141
+ enableAttachments: 'userInput.attachments.enable',
142
+ enableEmojiPicker: 'userInput.emojiPicker.enable',
143
+ enableSendButton: 'userInput.sendButton.enable',
144
+ enableUserInput: 'userInput.enable',
145
+ persistentMenu: 'userInput.persistentMenu',
146
+ textPlaceholder: 'userInput.box.placeholder',
147
+ userInputBoxStyle: 'userInput.box.style',
148
+ userInputStyle: 'userInput.style',
149
+ // Cover Component
150
+ coverComponent: 'coverComponent.component',
151
+ coverComponentProps: 'coverComponent.props',
152
+ // Carousel
153
+ customCarouselLeftArrow: 'carousel.arrow.left',
154
+ customCarouselRightArrow: 'carousel.arrow.right',
155
+ enableCarouselArrows: 'carousel.enableArrows',
156
+ },
157
+ };
158
+ export const MIME_WHITELIST = {
159
+ audio: ['audio/mpeg', 'audio/mp3'],
160
+ document: ['application/pdf'],
161
+ image: ['image/jpeg', 'image/png'],
162
+ video: ['video/mp4', 'video/quicktime'],
163
+ };
164
+ export const MAX_ALLOWED_SIZE_MB = 10;
165
+ export const ROLES = {
166
+ ATTACHMENT_ICON: 'attachment-icon',
167
+ EMOJI_PICKER_ICON: 'emoji-picker-icon',
168
+ EMOJI_PICKER: 'emoji-picker',
169
+ HEADER: 'header',
170
+ MESSAGE_LIST: 'message-list',
171
+ PERSISTENT_MENU_ICON: 'persistent-menu-icon',
172
+ PERSISTENT_MENU: 'persistent-menu',
173
+ SEND_BUTTON_ICON: 'send-button-icon',
174
+ WEBCHAT: 'webchat',
175
+ TRIGGER_BUTTON: 'trigger-button',
176
+ TYPING_INDICATOR: 'typing-indicator',
177
+ TEXT_BOX: 'textbox',
178
+ WEBVIEW: 'webview',
179
+ WEBVIEW_HEADER: 'webview-header',
180
+ MESSAGE: 'message',
181
+ IMAGE_MESSAGE: 'image-message',
182
+ AUDIO_MESSAGE: 'audio-message',
183
+ VIDEO_MESSAGE: 'video-message',
184
+ DOCUMENT_MESSAGE: 'document-message',
185
+ RAW_MESSAGE: 'raw-message',
186
+ };
187
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /// <reference types="react" />
2
+ import { Session as CoreSession } from '@botonic/core';
3
+ import { ActionRequest } from './index-types';
4
+ export declare const RequestContext: import("react").Context<Partial<ActionRequest> & {
5
+ getString: () => string;
6
+ setLocale: () => void;
7
+ }>;
8
+ export interface CloseWebviewOptions {
9
+ payload?: string;
10
+ path?: string;
11
+ params?: Record<string, any>;
12
+ }
13
+ export declare const WebviewRequestContext: import("react").Context<{
14
+ closeWebview: (options?: CloseWebviewOptions) => Promise<void>;
15
+ getString?: ((stringId: string) => string) | undefined;
16
+ params: Record<string, any>;
17
+ session: Partial<CoreSession>;
18
+ }>;
@@ -0,0 +1,18 @@
1
+ import { __awaiter } from "tslib";
2
+ import { createContext } from 'react';
3
+ export const RequestContext = createContext({
4
+ getString: () => '',
5
+ setLocale: () => undefined,
6
+ session: {},
7
+ params: {},
8
+ input: {},
9
+ defaultDelay: 0,
10
+ defaultTyping: 0,
11
+ });
12
+ export const WebviewRequestContext = createContext({
13
+ closeWebview: () => __awaiter(void 0, void 0, void 0, function* () { return undefined; }),
14
+ getString: undefined,
15
+ params: {},
16
+ session: {},
17
+ });
18
+ //# sourceMappingURL=contexts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contexts.js","sourceRoot":"","sources":["../../src/contexts.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAIrC,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAKzC;IACA,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE;IACnB,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS;IAC1B,OAAO,EAAE,EAAiB;IAC1B,MAAM,EAAE,EAAE;IACV,KAAK,EAAE,EAAe;IACtB,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,CAAC;CACjB,CAAC,CAAA;AAQF,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAK/C;IACD,YAAY,EAAE,GAAS,EAAE,kDAAC,OAAA,SAAS,CAAA,GAAA;IACnC,SAAS,EAAE,SAAS;IACpB,MAAM,EAAE,EAAyB;IACjC,OAAO,EAAE,EAA0B;CACpC,CAAC,CAAA"}
@@ -0,0 +1,38 @@
1
+ export class DevApp extends WebchatApp {
2
+ constructor({ theme, persistentMenu, coverComponent, blockInputs, enableEmojiPicker, enableAttachments, enableUserInput, enableAnimations, shadowDOM, hostId, storage, storageKey, onInit, onOpen, onClose, onMessage, onTrackEvent, ...botOptions }: {
3
+ [x: string]: any;
4
+ theme?: {} | undefined;
5
+ persistentMenu: any;
6
+ coverComponent: any;
7
+ blockInputs: any;
8
+ enableEmojiPicker: any;
9
+ enableAttachments: any;
10
+ enableUserInput: any;
11
+ enableAnimations: any;
12
+ shadowDOM: any;
13
+ hostId: any;
14
+ storage: any;
15
+ storageKey: any;
16
+ onInit: any;
17
+ onOpen: any;
18
+ onClose: any;
19
+ onMessage: any;
20
+ onTrackEvent: any;
21
+ });
22
+ bot: ReactBot;
23
+ getComponent(host: any, optionsAtRuntime?: {}): import("react/jsx-runtime").JSX.Element;
24
+ onInit: ((app: WebchatApp, args: any) => void) | undefined;
25
+ onOpen: ((app: WebchatApp, args: any) => void) | undefined;
26
+ onClose: ((app: WebchatApp, args: any) => void) | undefined;
27
+ onMessage: ((app: WebchatApp, message: import("./index-types").WebchatMessage) => void) | undefined;
28
+ onTrackEvent: ((request: import("./index-types").ActionRequest, eventName: string, args?: import("./index-types").EventArgs | undefined) => Promise<void>) | undefined;
29
+ hostId: string | undefined;
30
+ render(dest: any, optionsAtRuntime?: {}): void;
31
+ onUserInput({ input, session, lastRoutePath }: {
32
+ input: any;
33
+ session: any;
34
+ lastRoutePath: any;
35
+ }): Promise<void>;
36
+ }
37
+ import { WebchatApp } from "./webchat-app";
38
+ import { ReactBot } from "./react-bot";
@@ -0,0 +1,81 @@
1
+ import { __awaiter, __rest } from "tslib";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import merge from 'lodash.merge';
4
+ import React from 'react';
5
+ import { createRoot } from 'react-dom/client';
6
+ import { SENDERS } from './index-types';
7
+ import { ReactBot } from './react-bot';
8
+ import { onDOMLoaded } from './util/dom';
9
+ import { WebchatDev } from './webchat/webchat-dev';
10
+ import { WebchatApp } from './webchat-app';
11
+ export class DevApp extends WebchatApp {
12
+ constructor(_a) {
13
+ var { theme = {}, persistentMenu, coverComponent, blockInputs, enableEmojiPicker, enableAttachments, enableUserInput, enableAnimations, shadowDOM, hostId, storage, storageKey, onInit, onOpen, onClose, onMessage, onTrackEvent } = _a, botOptions = __rest(_a, ["theme", "persistentMenu", "coverComponent", "blockInputs", "enableEmojiPicker", "enableAttachments", "enableUserInput", "enableAnimations", "shadowDOM", "hostId", "storage", "storageKey", "onInit", "onOpen", "onClose", "onMessage", "onTrackEvent"]);
14
+ super({
15
+ theme,
16
+ persistentMenu,
17
+ coverComponent,
18
+ blockInputs,
19
+ enableEmojiPicker,
20
+ enableAttachments,
21
+ enableUserInput,
22
+ enableAnimations,
23
+ shadowDOM,
24
+ hostId,
25
+ storage,
26
+ storageKey,
27
+ onInit,
28
+ onOpen,
29
+ onClose,
30
+ onMessage,
31
+ onTrackEvent,
32
+ });
33
+ this.bot = new ReactBot(Object.assign({}, botOptions));
34
+ }
35
+ getComponent(host, optionsAtRuntime = {}) {
36
+ let { theme = {}, persistentMenu, coverComponent, blockInputs, enableEmojiPicker, enableAttachments, enableUserInput, enableAnimations, storage, storageKey, onInit, onOpen, onClose, onMessage, onTrackEvent, hostId } = optionsAtRuntime, webchatOptions = __rest(optionsAtRuntime, ["theme", "persistentMenu", "coverComponent", "blockInputs", "enableEmojiPicker", "enableAttachments", "enableUserInput", "enableAnimations", "storage", "storageKey", "onInit", "onOpen", "onClose", "onMessage", "onTrackEvent", "hostId"]);
37
+ theme = merge(this.theme, theme);
38
+ persistentMenu = persistentMenu || this.persistentMenu;
39
+ coverComponent = coverComponent || this.coverComponent;
40
+ blockInputs = blockInputs || this.blockInputs;
41
+ enableEmojiPicker = enableEmojiPicker || this.enableEmojiPicker;
42
+ enableAttachments = enableAttachments || this.enableAttachments;
43
+ enableUserInput = enableUserInput || this.enableUserInput;
44
+ enableAnimations = enableAnimations || this.enableAnimations;
45
+ storage = storage || this.storage;
46
+ storageKey = storageKey || this.storageKey;
47
+ this.onInit = onInit || this.onInit;
48
+ this.onOpen = onOpen || this.onOpen;
49
+ this.onClose = onClose || this.onClose;
50
+ this.onMessage = onMessage || this.onMessage;
51
+ this.onTrackEvent = onTrackEvent || this.onTrackEvent;
52
+ this.hostId = hostId || this.hostId;
53
+ this.createRootElement(host);
54
+ return (_jsx(WebchatDev, Object.assign({}, webchatOptions, { ref: this.webchatRef, host: this.host, shadowDOM: this.shadowDOM, theme: theme, persistentMenu: persistentMenu, coverComponent: coverComponent, blockInputs: blockInputs, enableEmojiPicker: enableEmojiPicker, enableAttachments: enableAttachments, enableUserInput: enableUserInput, enableAnimations: enableAnimations, storage: storage, storageKey: storageKey, getString: (stringId, session) => this.bot.getString(stringId, session), setLocale: (locale, session) => this.bot.setLocale(locale, session), onInit: (...args) => this.onInitWebchat(...args), onOpen: (...args) => this.onOpenWebchat(...args), onClose: (...args) => this.onCloseWebchat(...args), onUserInput: (...args) => this.onUserInput(...args), onTrackEvent: (...args) => this.onTrackEvent(...args) })));
55
+ }
56
+ render(dest, optionsAtRuntime = {}) {
57
+ onDOMLoaded(() => {
58
+ const devAppComponent = this.getComponent(dest, optionsAtRuntime);
59
+ const container = this.getReactMountNode(dest);
60
+ const reactRoot = createRoot(container);
61
+ reactRoot.render(devAppComponent);
62
+ });
63
+ }
64
+ onUserInput({ input, session, lastRoutePath }) {
65
+ return __awaiter(this, void 0, void 0, function* () {
66
+ this.onMessage &&
67
+ this.onMessage(this, {
68
+ sentBy: SENDERS.user,
69
+ message: input,
70
+ });
71
+ const resp = yield this.bot.input({ input, session, lastRoutePath });
72
+ this.onMessage &&
73
+ resp.response.map(r => this.onMessage(this, {
74
+ sentBy: SENDERS.bot,
75
+ message: r,
76
+ }));
77
+ this.webchatRef.current.addBotResponse(resp);
78
+ });
79
+ }
80
+ }
81
+ //# sourceMappingURL=dev-app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-app.js","sourceRoot":"","sources":["../../src/dev-app.jsx"],"names":[],"mappings":"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"}