@botonic/react 0.31.5-alpha.1 → 0.32.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.
- package/lib/cjs/components/audio.d.ts +8 -7
- package/lib/cjs/components/audio.js +7 -4
- package/lib/cjs/components/audio.js.map +1 -1
- package/lib/cjs/components/button.js +3 -4
- package/lib/cjs/components/button.js.map +1 -1
- package/lib/cjs/components/carousel.js +2 -2
- package/lib/cjs/components/carousel.js.map +1 -1
- package/lib/cjs/components/custom-message.d.ts +16 -12
- package/lib/cjs/components/custom-message.js +3 -9
- package/lib/cjs/components/custom-message.js.map +1 -1
- package/lib/cjs/components/document.d.ts +8 -7
- package/lib/cjs/components/document.js +5 -5
- package/lib/cjs/components/document.js.map +1 -1
- package/lib/cjs/components/element.js +6 -6
- package/lib/cjs/components/element.js.map +1 -1
- package/lib/cjs/components/handoff.d.ts +1 -1
- package/lib/cjs/components/handoff.js +2 -2
- package/lib/cjs/components/handoff.js.map +1 -1
- package/lib/cjs/components/image.d.ts +8 -7
- package/lib/cjs/components/image.js +5 -5
- package/lib/cjs/components/image.js.map +1 -1
- package/lib/cjs/components/index-types.d.ts +30 -127
- package/lib/cjs/components/index.d.ts +7 -1
- package/lib/cjs/components/index.js +14 -1
- package/lib/cjs/components/index.js.map +1 -1
- package/lib/cjs/components/message/index.js +2 -1
- package/lib/cjs/components/message/index.js.map +1 -1
- package/lib/cjs/components/message/message-feedback.d.ts +1 -1
- package/lib/cjs/components/message/message-feedback.js +2 -2
- package/lib/cjs/components/message/message-feedback.js.map +1 -1
- package/lib/cjs/components/message/message-footer.d.ts +1 -1
- package/lib/cjs/components/message/message-footer.js +2 -2
- package/lib/cjs/components/message/message-footer.js.map +1 -1
- package/lib/cjs/components/message/message-image.js +2 -2
- package/lib/cjs/components/message/message-image.js.map +1 -1
- package/lib/cjs/components/message/timestamps.d.ts +1 -1
- package/lib/cjs/components/message/timestamps.js +2 -2
- package/lib/cjs/components/message/timestamps.js.map +1 -1
- package/lib/cjs/components/multichannel/multichannel-button.d.ts +1 -1
- package/lib/cjs/components/multichannel/multichannel-button.js +2 -2
- package/lib/cjs/components/multichannel/multichannel-button.js.map +1 -1
- package/lib/cjs/components/multichannel/multichannel-carousel.js +4 -4
- package/lib/cjs/components/multichannel/multichannel-carousel.js.map +1 -1
- package/lib/cjs/components/multichannel/multichannel-reply.d.ts +1 -1
- package/lib/cjs/components/multichannel/multichannel-text.d.ts +1 -1
- package/lib/cjs/components/multichannel/multichannel-text.js +12 -11
- package/lib/cjs/components/multichannel/multichannel-text.js.map +1 -1
- package/lib/cjs/components/multichannel/multichannel-utils.d.ts +9 -15
- package/lib/cjs/components/multichannel/multichannel-utils.js +48 -27
- package/lib/cjs/components/multichannel/multichannel-utils.js.map +1 -1
- package/lib/cjs/components/multichannel/multichannel.js +7 -7
- package/lib/cjs/components/multichannel/multichannel.js.map +1 -1
- package/lib/cjs/components/multichannel/whatsapp/constants.d.ts +11 -0
- package/lib/cjs/components/multichannel/whatsapp/constants.js +13 -0
- package/lib/cjs/components/multichannel/whatsapp/constants.js.map +1 -0
- package/lib/cjs/components/raw.d.ts +1 -1
- package/lib/cjs/components/reply.d.ts +7 -6
- package/lib/cjs/components/reply.js +10 -6
- package/lib/cjs/components/reply.js.map +1 -1
- package/lib/cjs/components/text.d.ts +1 -1
- package/lib/cjs/components/video.d.ts +8 -7
- package/lib/cjs/components/video.js +2 -3
- package/lib/cjs/components/video.js.map +1 -1
- package/lib/cjs/components/webchat-settings.d.ts +15 -2
- package/lib/cjs/components/webchat-settings.js +2 -2
- package/lib/cjs/components/webchat-settings.js.map +1 -1
- package/lib/cjs/components/whatsapp-button-list.js +2 -2
- package/lib/cjs/components/whatsapp-button-list.js.map +1 -1
- package/lib/cjs/components/whatsapp-catalog.d.ts +6 -0
- package/lib/cjs/components/whatsapp-catalog.js +25 -0
- package/lib/cjs/components/whatsapp-catalog.js.map +1 -0
- package/lib/cjs/components/whatsapp-cta-url-button.js +5 -5
- package/lib/cjs/components/whatsapp-cta-url-button.js.map +1 -1
- package/lib/cjs/components/whatsapp-media-carousel.d.ts +46 -0
- package/lib/cjs/components/whatsapp-media-carousel.js +40 -0
- package/lib/cjs/components/whatsapp-media-carousel.js.map +1 -0
- package/lib/cjs/components/whatsapp-product-carousel.d.ts +32 -0
- package/lib/cjs/components/whatsapp-product-carousel.js +34 -0
- package/lib/cjs/components/whatsapp-product-carousel.js.map +1 -0
- package/lib/cjs/components/whatsapp-product-list.d.ts +15 -0
- package/lib/cjs/components/whatsapp-product-list.js +26 -0
- package/lib/cjs/components/whatsapp-product-list.js.map +1 -0
- package/lib/cjs/components/whatsapp-product.d.ts +7 -0
- package/lib/cjs/components/whatsapp-product.js +25 -0
- package/lib/cjs/components/whatsapp-product.js.map +1 -0
- package/lib/cjs/constants.d.ts +0 -6
- package/lib/cjs/constants.js +1 -7
- package/lib/cjs/constants.js.map +1 -1
- package/lib/cjs/contexts.d.ts +3 -4
- package/lib/cjs/contexts.js +2 -76
- package/lib/cjs/contexts.js.map +1 -1
- package/lib/cjs/dev-app.d.ts +7 -0
- package/lib/cjs/dev-app.js +5 -2
- package/lib/cjs/dev-app.js.map +1 -1
- package/lib/cjs/index-types.d.ts +90 -61
- package/lib/cjs/index-types.js.map +1 -1
- package/lib/cjs/index.d.ts +1 -1
- package/lib/cjs/index.js +1 -2
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/msg-to-botonic.d.ts +1 -1
- package/lib/cjs/msg-to-botonic.js +5 -8
- package/lib/cjs/msg-to-botonic.js.map +1 -1
- package/lib/cjs/react-bot.d.ts +1 -1
- package/lib/cjs/util/error-boundary.d.ts +1 -1
- package/lib/cjs/util/functional.d.ts +3 -0
- package/lib/cjs/util/functional.js +30 -0
- package/lib/cjs/util/functional.js.map +1 -0
- package/lib/cjs/util/react.d.ts +1 -1
- package/lib/cjs/util/webchat.d.ts +17 -6
- package/lib/cjs/util/webchat.js +9 -7
- package/lib/cjs/util/webchat.js.map +1 -1
- package/lib/cjs/webchat/chat-area/index.d.ts +1 -1
- package/lib/cjs/webchat/chat-area/index.js +3 -3
- package/lib/cjs/webchat/chat-area/index.js.map +1 -1
- package/lib/cjs/webchat/components/common.d.ts +1 -1
- package/lib/cjs/webchat/components/conditional-animation.d.ts +1 -1
- package/lib/cjs/webchat/components/conditional-animation.js +2 -2
- package/lib/cjs/webchat/components/conditional-animation.js.map +1 -1
- package/lib/cjs/webchat/components/opened-persistent-menu.d.ts +1 -1
- package/lib/cjs/webchat/components/opened-persistent-menu.js +2 -2
- package/lib/cjs/webchat/components/opened-persistent-menu.js.map +1 -1
- package/lib/cjs/webchat/{actions.d.ts → context/actions.d.ts} +4 -1
- package/lib/cjs/webchat/{actions.js → context/actions.js} +4 -0
- package/lib/cjs/webchat/context/actions.js.map +1 -0
- package/lib/cjs/webchat/context/index.d.ts +5 -0
- package/lib/cjs/webchat/context/index.js +86 -0
- package/lib/cjs/webchat/context/index.js.map +1 -0
- package/lib/cjs/webchat/{messages-reducer.d.ts → context/messages-reducer.d.ts} +1 -1
- package/lib/cjs/webchat/{messages-reducer.js → context/messages-reducer.js} +3 -1
- package/lib/cjs/webchat/context/messages-reducer.js.map +1 -0
- package/lib/cjs/webchat/context/types.d.ts +76 -0
- package/lib/cjs/webchat/context/types.js +3 -0
- package/lib/cjs/webchat/context/types.js.map +1 -0
- package/lib/cjs/webchat/{hooks → context}/use-webchat.d.ts +21 -20
- package/lib/cjs/webchat/{hooks → context}/use-webchat.js +21 -7
- package/lib/cjs/webchat/context/use-webchat.js.map +1 -0
- package/lib/cjs/webchat/{webchat-reducer.d.ts → context/webchat-reducer.d.ts} +1 -1
- package/lib/cjs/webchat/{webchat-reducer.js → context/webchat-reducer.js} +4 -0
- package/lib/cjs/webchat/context/webchat-reducer.js.map +1 -0
- package/lib/cjs/webchat/cover-component/index.d.ts +1 -1
- package/lib/cjs/webchat/cover-component/index.js +2 -2
- package/lib/cjs/webchat/cover-component/index.js.map +1 -1
- package/lib/cjs/webchat/header/default-header.d.ts +1 -0
- package/lib/cjs/webchat/header/default-header.js +25 -0
- package/lib/cjs/webchat/header/default-header.js.map +1 -0
- package/lib/cjs/webchat/header/index.d.ts +2 -0
- package/lib/cjs/webchat/header/index.js +23 -0
- package/lib/cjs/webchat/header/index.js.map +1 -0
- package/lib/cjs/webchat/header/styles.d.ts +7 -0
- package/lib/cjs/webchat/header/styles.js +59 -0
- package/lib/cjs/webchat/header/styles.js.map +1 -0
- package/lib/cjs/webchat/hooks/index.d.ts +0 -1
- package/lib/cjs/webchat/hooks/index.js +1 -4
- package/lib/cjs/webchat/hooks/index.js.map +1 -1
- package/lib/cjs/webchat/hooks/use-previous.d.ts +1 -1
- package/lib/cjs/webchat/hooks/use-previous.js.map +1 -1
- package/lib/cjs/webchat/hooks/use-scroll-to-bottom.d.ts +6 -4
- package/lib/cjs/webchat/hooks/use-scroll-to-bottom.js.map +1 -1
- package/lib/cjs/webchat/hooks/use-scrollbar-controller.js +16 -16
- package/lib/cjs/webchat/hooks/use-scrollbar-controller.js.map +1 -1
- package/lib/cjs/webchat/hooks/use-typing.d.ts +1 -1
- package/lib/cjs/webchat/hooks/use-webchat-dimensions.js +4 -4
- package/lib/cjs/webchat/hooks/use-webchat-dimensions.js.map +1 -1
- package/lib/cjs/webchat/hooks/use-webchat-resizer.js +6 -6
- package/lib/cjs/webchat/hooks/use-webchat-resizer.js.map +1 -1
- package/lib/cjs/webchat/index-types.d.ts +3 -46
- package/lib/cjs/webchat/index.d.ts +1 -0
- package/lib/cjs/webchat/index.js +3 -1
- package/lib/cjs/webchat/index.js.map +1 -1
- package/lib/cjs/webchat/input-panel/attachment.d.ts +2 -2
- package/lib/cjs/webchat/input-panel/attachment.js +2 -2
- package/lib/cjs/webchat/input-panel/attachment.js.map +1 -1
- package/lib/cjs/webchat/input-panel/emoji-picker.d.ts +2 -2
- package/lib/cjs/webchat/input-panel/emoji-picker.js +2 -2
- package/lib/cjs/webchat/input-panel/emoji-picker.js.map +1 -1
- package/lib/cjs/webchat/input-panel/index.d.ts +4 -4
- package/lib/cjs/webchat/input-panel/index.js +8 -3
- package/lib/cjs/webchat/input-panel/index.js.map +1 -1
- package/lib/cjs/webchat/input-panel/opened-emoji-picker.d.ts +1 -1
- package/lib/cjs/webchat/input-panel/persistent-menu.d.ts +1 -1
- package/lib/cjs/webchat/input-panel/persistent-menu.js +2 -2
- package/lib/cjs/webchat/input-panel/persistent-menu.js.map +1 -1
- package/lib/cjs/webchat/input-panel/send-button.d.ts +1 -1
- package/lib/cjs/webchat/input-panel/send-button.js +2 -2
- package/lib/cjs/webchat/input-panel/send-button.js.map +1 -1
- package/lib/cjs/webchat/input-panel/textarea.d.ts +4 -4
- package/lib/cjs/webchat/input-panel/textarea.js +11 -3
- package/lib/cjs/webchat/input-panel/textarea.js.map +1 -1
- package/lib/cjs/webchat/message-list/index.d.ts +1 -1
- package/lib/cjs/webchat/message-list/index.js +64 -38
- package/lib/cjs/webchat/message-list/index.js.map +1 -1
- package/lib/cjs/webchat/message-list/intro-message.d.ts +1 -1
- package/lib/cjs/webchat/message-list/intro-message.js +2 -2
- package/lib/cjs/webchat/message-list/intro-message.js.map +1 -1
- package/lib/cjs/webchat/message-list/scroll-button.d.ts +1 -0
- package/lib/cjs/webchat/message-list/styles.js +4 -3
- package/lib/cjs/webchat/message-list/styles.js.map +1 -1
- package/lib/cjs/webchat/message-list/unread-messages-banner.js +2 -2
- package/lib/cjs/webchat/message-list/unread-messages-banner.js.map +1 -1
- package/lib/cjs/webchat/message-list/use-notifications.js +2 -2
- package/lib/cjs/webchat/message-list/use-notifications.js.map +1 -1
- package/lib/cjs/webchat/replies/index.d.ts +1 -0
- package/lib/cjs/webchat/replies/index.js +32 -0
- package/lib/cjs/webchat/replies/index.js.map +1 -0
- package/lib/cjs/webchat/replies/styles.d.ts +8 -0
- package/lib/cjs/webchat/replies/styles.js +25 -0
- package/lib/cjs/webchat/replies/styles.js.map +1 -0
- package/lib/cjs/webchat/session-view.d.ts +1 -1
- package/lib/cjs/webchat/session-view.js +4 -4
- package/lib/cjs/webchat/session-view.js.map +1 -1
- package/lib/cjs/webchat/styles.d.ts +9 -0
- package/lib/cjs/webchat/styles.js +54 -0
- package/lib/cjs/webchat/styles.js.map +1 -0
- package/lib/cjs/webchat/theme/types.d.ts +167 -0
- package/lib/cjs/webchat/theme/types.js +3 -0
- package/lib/cjs/webchat/theme/types.js.map +1 -0
- package/lib/cjs/webchat/trigger-button/index.d.ts +1 -0
- package/lib/cjs/webchat/trigger-button/index.js +2 -2
- package/lib/cjs/webchat/trigger-button/index.js.map +1 -1
- package/lib/cjs/webchat/typing-indicator/index.d.ts +3 -1
- package/lib/cjs/webchat/typing-indicator/index.js +4 -3
- package/lib/cjs/webchat/typing-indicator/index.js.map +1 -1
- package/lib/cjs/webchat/typing-indicator/styles.d.ts +3 -2
- package/lib/cjs/webchat/typing-indicator/styles.js +6 -3
- package/lib/cjs/webchat/typing-indicator/styles.js.map +1 -1
- package/lib/cjs/webchat/webchat-dev.d.ts +2 -2
- package/lib/cjs/webchat/webchat-dev.js +2 -2
- package/lib/cjs/webchat/webchat-dev.js.map +1 -1
- package/lib/cjs/webchat/webchat.d.ts +4 -2
- package/lib/cjs/webchat/webchat.js +91 -116
- package/lib/cjs/webchat/webchat.js.map +1 -1
- package/lib/cjs/webchat/webview/header.d.ts +1 -0
- package/lib/cjs/webchat/webview/header.js +16 -0
- package/lib/cjs/webchat/webview/header.js.map +1 -0
- package/lib/cjs/webchat/webview/index.d.ts +1 -0
- package/lib/cjs/webchat/webview/index.js +49 -0
- package/lib/cjs/webchat/webview/index.js.map +1 -0
- package/lib/cjs/webchat/webview/styles.d.ts +7 -0
- package/lib/cjs/webchat/webview/styles.js +46 -0
- package/lib/cjs/webchat/webview/styles.js.map +1 -0
- package/lib/cjs/webchat-app.d.ts +62 -86
- package/lib/cjs/webchat-app.js +126 -62
- package/lib/cjs/webchat-app.js.map +1 -1
- package/lib/cjs/webview-app.js +5 -2
- package/lib/cjs/webview-app.js.map +1 -1
- package/lib/esm/components/audio.d.ts +8 -7
- package/lib/esm/components/audio.js +7 -4
- package/lib/esm/components/audio.js.map +1 -1
- package/lib/esm/components/button.js +2 -3
- package/lib/esm/components/button.js.map +1 -1
- package/lib/esm/components/carousel.js +1 -1
- package/lib/esm/components/carousel.js.map +1 -1
- package/lib/esm/components/custom-message.d.ts +16 -12
- package/lib/esm/components/custom-message.js +3 -9
- package/lib/esm/components/custom-message.js.map +1 -1
- package/lib/esm/components/document.d.ts +8 -7
- package/lib/esm/components/document.js +4 -4
- package/lib/esm/components/document.js.map +1 -1
- package/lib/esm/components/element.js +6 -6
- package/lib/esm/components/element.js.map +1 -1
- package/lib/esm/components/handoff.d.ts +1 -1
- package/lib/esm/components/handoff.js +1 -1
- package/lib/esm/components/handoff.js.map +1 -1
- package/lib/esm/components/image.d.ts +8 -7
- package/lib/esm/components/image.js +4 -4
- package/lib/esm/components/image.js.map +1 -1
- package/lib/esm/components/index-types.d.ts +30 -127
- package/lib/esm/components/index.d.ts +7 -1
- package/lib/esm/components/index.js +7 -1
- package/lib/esm/components/index.js.map +1 -1
- package/lib/esm/components/message/index.js +2 -1
- package/lib/esm/components/message/index.js.map +1 -1
- package/lib/esm/components/message/message-feedback.d.ts +1 -1
- package/lib/esm/components/message/message-feedback.js +1 -1
- package/lib/esm/components/message/message-feedback.js.map +1 -1
- package/lib/esm/components/message/message-footer.d.ts +1 -1
- package/lib/esm/components/message/message-footer.js +1 -1
- package/lib/esm/components/message/message-footer.js.map +1 -1
- package/lib/esm/components/message/message-image.js +1 -1
- package/lib/esm/components/message/message-image.js.map +1 -1
- package/lib/esm/components/message/timestamps.d.ts +1 -1
- package/lib/esm/components/message/timestamps.js +1 -1
- package/lib/esm/components/message/timestamps.js.map +1 -1
- package/lib/esm/components/multichannel/multichannel-button.d.ts +1 -1
- package/lib/esm/components/multichannel/multichannel-button.js +1 -1
- package/lib/esm/components/multichannel/multichannel-carousel.js +5 -5
- package/lib/esm/components/multichannel/multichannel-carousel.js.map +1 -1
- package/lib/esm/components/multichannel/multichannel-reply.d.ts +1 -1
- package/lib/esm/components/multichannel/multichannel-text.d.ts +1 -1
- package/lib/esm/components/multichannel/multichannel-text.js +2 -1
- package/lib/esm/components/multichannel/multichannel-text.js.map +1 -1
- package/lib/esm/components/multichannel/multichannel-utils.d.ts +9 -15
- package/lib/esm/components/multichannel/multichannel-utils.js +40 -24
- package/lib/esm/components/multichannel/multichannel-utils.js.map +1 -1
- package/lib/esm/components/multichannel/multichannel.js +7 -7
- package/lib/esm/components/multichannel/multichannel.js.map +1 -1
- package/lib/esm/components/multichannel/whatsapp/constants.d.ts +11 -0
- package/lib/esm/components/multichannel/whatsapp/constants.js +10 -0
- package/lib/esm/components/multichannel/whatsapp/constants.js.map +1 -0
- package/lib/esm/components/raw.d.ts +1 -1
- package/lib/esm/components/reply.d.ts +7 -6
- package/lib/esm/components/reply.js +9 -5
- package/lib/esm/components/reply.js.map +1 -1
- package/lib/esm/components/text.d.ts +1 -1
- package/lib/esm/components/video.d.ts +8 -7
- package/lib/esm/components/video.js +2 -3
- package/lib/esm/components/video.js.map +1 -1
- package/lib/esm/components/webchat-settings.d.ts +15 -2
- package/lib/esm/components/webchat-settings.js +1 -1
- package/lib/esm/components/webchat-settings.js.map +1 -1
- package/lib/esm/components/whatsapp-button-list.js +1 -1
- package/lib/esm/components/whatsapp-catalog.d.ts +6 -0
- package/lib/esm/components/whatsapp-catalog.js +21 -0
- package/lib/esm/components/whatsapp-catalog.js.map +1 -0
- package/lib/esm/components/whatsapp-cta-url-button.js +1 -1
- package/lib/esm/components/whatsapp-media-carousel.d.ts +46 -0
- package/lib/esm/components/whatsapp-media-carousel.js +36 -0
- package/lib/esm/components/whatsapp-media-carousel.js.map +1 -0
- package/lib/esm/components/whatsapp-product-carousel.d.ts +32 -0
- package/lib/esm/components/whatsapp-product-carousel.js +30 -0
- package/lib/esm/components/whatsapp-product-carousel.js.map +1 -0
- package/lib/esm/components/whatsapp-product-list.d.ts +15 -0
- package/lib/esm/components/whatsapp-product-list.js +22 -0
- package/lib/esm/components/whatsapp-product-list.js.map +1 -0
- package/lib/esm/components/whatsapp-product.d.ts +7 -0
- package/lib/esm/components/whatsapp-product.js +21 -0
- package/lib/esm/components/whatsapp-product.js.map +1 -0
- package/lib/esm/constants.d.ts +0 -6
- package/lib/esm/constants.js +0 -6
- package/lib/esm/constants.js.map +1 -1
- package/lib/esm/contexts.d.ts +3 -4
- package/lib/esm/contexts.js +1 -75
- package/lib/esm/contexts.js.map +1 -1
- package/lib/esm/dev-app.d.ts +7 -0
- package/lib/esm/dev-app.js +5 -2
- package/lib/esm/dev-app.js.map +1 -1
- package/lib/esm/index-types.d.ts +90 -61
- package/lib/esm/index-types.js.map +1 -1
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/msg-to-botonic.d.ts +1 -1
- package/lib/esm/msg-to-botonic.js +5 -8
- package/lib/esm/msg-to-botonic.js.map +1 -1
- package/lib/esm/react-bot.d.ts +1 -1
- package/lib/esm/util/error-boundary.d.ts +1 -1
- package/lib/esm/util/functional.d.ts +3 -0
- package/lib/esm/util/functional.js +26 -0
- package/lib/esm/util/functional.js.map +1 -0
- package/lib/esm/util/react.d.ts +1 -1
- package/lib/esm/util/webchat.d.ts +17 -6
- package/lib/esm/util/webchat.js +9 -7
- package/lib/esm/util/webchat.js.map +1 -1
- package/lib/esm/webchat/chat-area/index.d.ts +1 -1
- package/lib/esm/webchat/chat-area/index.js +2 -2
- package/lib/esm/webchat/chat-area/index.js.map +1 -1
- package/lib/esm/webchat/components/common.d.ts +1 -1
- package/lib/esm/webchat/components/conditional-animation.d.ts +1 -1
- package/lib/esm/webchat/components/conditional-animation.js +1 -1
- package/lib/esm/webchat/components/conditional-animation.js.map +1 -1
- package/lib/esm/webchat/components/opened-persistent-menu.d.ts +1 -1
- package/lib/esm/webchat/components/opened-persistent-menu.js +1 -1
- package/lib/esm/webchat/components/opened-persistent-menu.js.map +1 -1
- package/lib/esm/webchat/{actions.d.ts → context/actions.d.ts} +4 -1
- package/lib/esm/webchat/{actions.js → context/actions.js} +4 -0
- package/lib/esm/webchat/context/actions.js.map +1 -0
- package/lib/esm/webchat/context/index.d.ts +5 -0
- package/lib/esm/webchat/context/index.js +81 -0
- package/lib/esm/webchat/context/index.js.map +1 -0
- package/lib/esm/webchat/{messages-reducer.d.ts → context/messages-reducer.d.ts} +1 -1
- package/lib/esm/webchat/{messages-reducer.js → context/messages-reducer.js} +3 -1
- package/lib/esm/webchat/context/messages-reducer.js.map +1 -0
- package/lib/esm/webchat/context/types.d.ts +76 -0
- package/lib/esm/webchat/context/types.js +2 -0
- package/lib/esm/webchat/context/types.js.map +1 -0
- package/lib/esm/webchat/{hooks → context}/use-webchat.d.ts +21 -20
- package/lib/esm/webchat/{hooks → context}/use-webchat.js +21 -7
- package/lib/esm/webchat/context/use-webchat.js.map +1 -0
- package/lib/esm/webchat/{webchat-reducer.d.ts → context/webchat-reducer.d.ts} +1 -1
- package/lib/esm/webchat/{webchat-reducer.js → context/webchat-reducer.js} +4 -0
- package/lib/esm/webchat/context/webchat-reducer.js.map +1 -0
- package/lib/esm/webchat/cover-component/index.d.ts +1 -1
- package/lib/esm/webchat/cover-component/index.js +1 -1
- package/lib/esm/webchat/cover-component/index.js.map +1 -1
- package/lib/esm/webchat/header/default-header.d.ts +1 -0
- package/lib/esm/webchat/header/default-header.js +21 -0
- package/lib/esm/webchat/header/default-header.js.map +1 -0
- package/lib/esm/webchat/header/index.d.ts +2 -0
- package/lib/esm/webchat/header/index.js +20 -0
- package/lib/esm/webchat/header/index.js.map +1 -0
- package/lib/esm/webchat/header/styles.d.ts +7 -0
- package/lib/esm/webchat/header/styles.js +55 -0
- package/lib/esm/webchat/header/styles.js.map +1 -0
- package/lib/esm/webchat/hooks/index.d.ts +0 -1
- package/lib/esm/webchat/hooks/index.js +0 -1
- package/lib/esm/webchat/hooks/index.js.map +1 -1
- package/lib/esm/webchat/hooks/use-previous.d.ts +1 -1
- package/lib/esm/webchat/hooks/use-previous.js.map +1 -1
- package/lib/esm/webchat/hooks/use-scroll-to-bottom.d.ts +6 -4
- package/lib/esm/webchat/hooks/use-scroll-to-bottom.js.map +1 -1
- package/lib/esm/webchat/hooks/use-scrollbar-controller.js +16 -16
- package/lib/esm/webchat/hooks/use-scrollbar-controller.js.map +1 -1
- package/lib/esm/webchat/hooks/use-typing.d.ts +1 -1
- package/lib/esm/webchat/hooks/use-webchat-dimensions.js +4 -4
- package/lib/esm/webchat/hooks/use-webchat-dimensions.js.map +1 -1
- package/lib/esm/webchat/hooks/use-webchat-resizer.js +6 -6
- package/lib/esm/webchat/hooks/use-webchat-resizer.js.map +1 -1
- package/lib/esm/webchat/index-types.d.ts +3 -46
- package/lib/esm/webchat/index.d.ts +1 -0
- package/lib/esm/webchat/index.js +1 -0
- package/lib/esm/webchat/index.js.map +1 -1
- package/lib/esm/webchat/input-panel/attachment.d.ts +2 -2
- package/lib/esm/webchat/input-panel/attachment.js +1 -1
- package/lib/esm/webchat/input-panel/attachment.js.map +1 -1
- package/lib/esm/webchat/input-panel/emoji-picker.d.ts +2 -2
- package/lib/esm/webchat/input-panel/emoji-picker.js +1 -1
- package/lib/esm/webchat/input-panel/emoji-picker.js.map +1 -1
- package/lib/esm/webchat/input-panel/index.d.ts +4 -4
- package/lib/esm/webchat/input-panel/index.js +7 -2
- package/lib/esm/webchat/input-panel/index.js.map +1 -1
- package/lib/esm/webchat/input-panel/opened-emoji-picker.d.ts +1 -1
- package/lib/esm/webchat/input-panel/persistent-menu.d.ts +1 -1
- package/lib/esm/webchat/input-panel/persistent-menu.js +1 -1
- package/lib/esm/webchat/input-panel/persistent-menu.js.map +1 -1
- package/lib/esm/webchat/input-panel/send-button.d.ts +1 -1
- package/lib/esm/webchat/input-panel/send-button.js +1 -1
- package/lib/esm/webchat/input-panel/send-button.js.map +1 -1
- package/lib/esm/webchat/input-panel/textarea.d.ts +4 -4
- package/lib/esm/webchat/input-panel/textarea.js +11 -3
- package/lib/esm/webchat/input-panel/textarea.js.map +1 -1
- package/lib/esm/webchat/message-list/index.d.ts +1 -1
- package/lib/esm/webchat/message-list/index.js +62 -37
- package/lib/esm/webchat/message-list/index.js.map +1 -1
- package/lib/esm/webchat/message-list/intro-message.d.ts +1 -1
- package/lib/esm/webchat/message-list/intro-message.js +1 -1
- package/lib/esm/webchat/message-list/intro-message.js.map +1 -1
- package/lib/esm/webchat/message-list/scroll-button.d.ts +1 -0
- package/lib/esm/webchat/message-list/styles.js +4 -3
- package/lib/esm/webchat/message-list/styles.js.map +1 -1
- package/lib/esm/webchat/message-list/unread-messages-banner.js +1 -1
- package/lib/esm/webchat/message-list/unread-messages-banner.js.map +1 -1
- package/lib/esm/webchat/message-list/use-notifications.js +1 -1
- package/lib/esm/webchat/message-list/use-notifications.js.map +1 -1
- package/lib/esm/webchat/replies/index.d.ts +1 -0
- package/lib/esm/webchat/replies/index.js +28 -0
- package/lib/esm/webchat/replies/index.js.map +1 -0
- package/lib/esm/webchat/replies/styles.d.ts +8 -0
- package/lib/esm/webchat/replies/styles.js +21 -0
- package/lib/esm/webchat/replies/styles.js.map +1 -0
- package/lib/esm/webchat/session-view.d.ts +1 -1
- package/lib/esm/webchat/session-view.js +2 -2
- package/lib/esm/webchat/session-view.js.map +1 -1
- package/lib/esm/webchat/styles.d.ts +9 -0
- package/lib/esm/webchat/styles.js +50 -0
- package/lib/esm/webchat/styles.js.map +1 -0
- package/lib/esm/webchat/theme/types.d.ts +167 -0
- package/lib/esm/webchat/theme/types.js +2 -0
- package/lib/esm/webchat/theme/types.js.map +1 -0
- package/lib/esm/webchat/trigger-button/index.d.ts +1 -0
- package/lib/esm/webchat/trigger-button/index.js +1 -1
- package/lib/esm/webchat/trigger-button/index.js.map +1 -1
- package/lib/esm/webchat/typing-indicator/index.d.ts +3 -1
- package/lib/esm/webchat/typing-indicator/index.js +5 -2
- package/lib/esm/webchat/typing-indicator/index.js.map +1 -1
- package/lib/esm/webchat/typing-indicator/styles.d.ts +3 -2
- package/lib/esm/webchat/typing-indicator/styles.js +5 -2
- package/lib/esm/webchat/typing-indicator/styles.js.map +1 -1
- package/lib/esm/webchat/webchat-dev.d.ts +2 -2
- package/lib/esm/webchat/webchat-dev.js +1 -1
- package/lib/esm/webchat/webchat-dev.js.map +1 -1
- package/lib/esm/webchat/webchat.d.ts +4 -2
- package/lib/esm/webchat/webchat.js +87 -112
- package/lib/esm/webchat/webchat.js.map +1 -1
- package/lib/esm/webchat/webview/header.d.ts +1 -0
- package/lib/esm/webchat/webview/header.js +12 -0
- package/lib/esm/webchat/webview/header.js.map +1 -0
- package/lib/esm/webchat/webview/index.d.ts +1 -0
- package/lib/esm/webchat/webview/index.js +45 -0
- package/lib/esm/webchat/webview/index.js.map +1 -0
- package/lib/esm/webchat/webview/styles.d.ts +7 -0
- package/lib/esm/webchat/webview/styles.js +42 -0
- package/lib/esm/webchat/webview/styles.js.map +1 -0
- package/lib/esm/webchat-app.d.ts +62 -86
- package/lib/esm/webchat-app.js +127 -63
- package/lib/esm/webchat-app.js.map +1 -1
- package/lib/esm/webview-app.js +5 -2
- package/lib/esm/webview-app.js.map +1 -1
- package/package.json +21 -18
- package/src/components/{audio.jsx → audio.tsx} +10 -4
- package/src/components/button.tsx +1 -3
- package/src/components/carousel.jsx +1 -1
- package/src/components/{custom-message.jsx → custom-message.tsx} +19 -7
- package/src/components/{document.jsx → document.tsx} +5 -3
- package/src/components/element.jsx +4 -11
- package/src/components/handoff.jsx +1 -1
- package/src/components/{image.jsx → image.tsx} +10 -4
- package/src/components/index-types.ts +25 -114
- package/src/components/index.ts +22 -1
- package/src/components/message/index.jsx +2 -1
- package/src/components/message/message-feedback.tsx +1 -1
- package/src/components/message/message-footer.tsx +1 -1
- package/src/components/message/message-image.tsx +1 -1
- package/src/components/message/timestamps.tsx +1 -1
- package/src/components/multichannel/multichannel-button.jsx +1 -1
- package/src/components/multichannel/multichannel-carousel.jsx +7 -5
- package/src/components/multichannel/multichannel-text.jsx +4 -2
- package/src/components/multichannel/multichannel-utils.js +45 -27
- package/src/components/multichannel/multichannel.jsx +12 -7
- package/src/components/multichannel/whatsapp/constants.ts +10 -0
- package/src/components/{reply.jsx → reply.tsx} +10 -4
- package/src/components/{video.jsx → video.tsx} +3 -2
- package/src/components/webchat-settings.tsx +14 -2
- package/src/components/whatsapp-button-list.tsx +1 -1
- package/src/components/whatsapp-catalog.tsx +42 -0
- package/src/components/whatsapp-cta-url-button.tsx +1 -1
- package/src/components/whatsapp-media-carousel.tsx +104 -0
- package/src/components/whatsapp-product-carousel.tsx +83 -0
- package/src/components/whatsapp-product-list.tsx +56 -0
- package/src/components/whatsapp-product.tsx +44 -0
- package/src/constants.js +0 -7
- package/src/contexts.tsx +5 -80
- package/src/dev-app.jsx +5 -5
- package/src/index-types.ts +101 -70
- package/src/index.ts +1 -5
- package/src/msg-to-botonic.jsx +5 -9
- package/src/util/functional.ts +31 -0
- package/src/util/{webchat.js → webchat.ts} +15 -9
- package/src/webchat/chat-area/index.tsx +2 -4
- package/src/webchat/components/conditional-animation.jsx +1 -1
- package/src/webchat/components/opened-persistent-menu.jsx +1 -1
- package/src/webchat/{actions.ts → context/actions.ts} +4 -0
- package/src/webchat/context/index.tsx +84 -0
- package/src/webchat/{messages-reducer.ts → context/messages-reducer.ts} +4 -2
- package/src/webchat/context/types.ts +86 -0
- package/src/webchat/{hooks → context}/use-webchat.ts +73 -15
- package/src/webchat/{webchat-reducer.ts → context/webchat-reducer.ts} +5 -1
- package/src/webchat/cover-component/index.tsx +1 -1
- package/src/webchat/global.d.ts +3 -0
- package/src/webchat/header/default-header.tsx +75 -0
- package/src/webchat/header/index.tsx +37 -0
- package/src/webchat/header/styles.ts +62 -0
- package/src/webchat/hooks/index.ts +0 -1
- package/src/webchat/hooks/use-previous.ts +1 -1
- package/src/webchat/hooks/use-scroll-to-bottom.ts +8 -2
- package/src/webchat/hooks/use-scrollbar-controller.ts +22 -17
- package/src/webchat/hooks/use-typing.ts +1 -1
- package/src/webchat/hooks/use-webchat-dimensions.ts +4 -4
- package/src/webchat/hooks/use-webchat-resizer.ts +6 -6
- package/src/webchat/index-types.ts +3 -52
- package/src/webchat/index.ts +1 -0
- package/src/webchat/input-panel/attachment.tsx +2 -2
- package/src/webchat/input-panel/emoji-picker.tsx +2 -2
- package/src/webchat/input-panel/index.tsx +9 -5
- package/src/webchat/input-panel/persistent-menu.tsx +1 -1
- package/src/webchat/input-panel/send-button.tsx +1 -1
- package/src/webchat/input-panel/textarea.tsx +18 -5
- package/src/webchat/message-list/index.tsx +78 -49
- package/src/webchat/message-list/intro-message.tsx +1 -1
- package/src/webchat/message-list/styles.ts +4 -3
- package/src/webchat/message-list/unread-messages-banner.tsx +1 -1
- package/src/webchat/message-list/use-notifications.ts +1 -1
- package/src/webchat/replies/index.tsx +47 -0
- package/src/webchat/replies/styles.ts +28 -0
- package/src/webchat/session-view.jsx +2 -2
- package/src/webchat/styles.ts +59 -0
- package/src/webchat/theme/types.ts +119 -0
- package/src/webchat/trigger-button/index.tsx +1 -1
- package/src/webchat/typing-indicator/index.tsx +20 -12
- package/src/webchat/typing-indicator/styles.ts +7 -3
- package/src/webchat/webchat-dev.jsx +1 -1
- package/src/webchat/{webchat.jsx → webchat.tsx} +118 -144
- package/src/webchat/webview/header.tsx +22 -0
- package/src/webchat/webview/index.tsx +80 -0
- package/src/webchat/webview/styles.ts +48 -0
- package/src/webchat-app.tsx +522 -0
- package/src/webview-app.tsx +6 -4
- package/lib/cjs/webchat/actions.js.map +0 -1
- package/lib/cjs/webchat/header.d.ts +0 -3
- package/lib/cjs/webchat/header.js +0 -86
- package/lib/cjs/webchat/header.js.map +0 -1
- package/lib/cjs/webchat/hooks/use-webchat.js.map +0 -1
- package/lib/cjs/webchat/messages-reducer.js.map +0 -1
- package/lib/cjs/webchat/replies.d.ts +0 -1
- package/lib/cjs/webchat/replies.js +0 -47
- package/lib/cjs/webchat/replies.js.map +0 -1
- package/lib/cjs/webchat/webchat-reducer.js.map +0 -1
- package/lib/cjs/webchat/webview.d.ts +0 -2
- package/lib/cjs/webchat/webview.js +0 -75
- package/lib/cjs/webchat/webview.js.map +0 -1
- package/lib/esm/webchat/actions.js.map +0 -1
- package/lib/esm/webchat/header.d.ts +0 -3
- package/lib/esm/webchat/header.js +0 -81
- package/lib/esm/webchat/header.js.map +0 -1
- package/lib/esm/webchat/hooks/use-webchat.js.map +0 -1
- package/lib/esm/webchat/messages-reducer.js.map +0 -1
- package/lib/esm/webchat/replies.d.ts +0 -1
- package/lib/esm/webchat/replies.js +0 -42
- package/lib/esm/webchat/replies.js.map +0 -1
- package/lib/esm/webchat/webchat-reducer.js.map +0 -1
- package/lib/esm/webchat/webview.d.ts +0 -2
- package/lib/esm/webchat/webview.js +0 -70
- package/lib/esm/webchat/webview.js.map +0 -1
- package/src/webchat/header.jsx +0 -149
- package/src/webchat/replies.jsx +0 -64
- package/src/webchat/webview.jsx +0 -105
- package/src/webchat-app.jsx +0 -389
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { RefObject } from 'react';
|
|
3
|
-
import { Webview } from '../components/index-types';
|
|
1
|
+
import { WebchatArgs } from '../index-types';
|
|
4
2
|
export interface WebchatStateTheme {
|
|
5
3
|
headerTitle: string;
|
|
6
4
|
brandColor: string;
|
|
@@ -9,53 +7,12 @@ export interface WebchatStateTheme {
|
|
|
9
7
|
textPlaceholder: string;
|
|
10
8
|
style: {
|
|
11
9
|
fontFamily: string;
|
|
10
|
+
borderRadius?: string;
|
|
12
11
|
};
|
|
13
12
|
}
|
|
14
|
-
export interface
|
|
15
|
-
message?: string;
|
|
16
|
-
}
|
|
17
|
-
export interface DevSettings {
|
|
18
|
-
keepSessionOnReload?: boolean;
|
|
19
|
-
showSessionView?: boolean;
|
|
20
|
-
}
|
|
21
|
-
export interface WebchatState {
|
|
22
|
-
width: number;
|
|
23
|
-
height: number;
|
|
24
|
-
messagesJSON: any[];
|
|
25
|
-
messagesComponents: any[];
|
|
26
|
-
replies: any[];
|
|
27
|
-
latestInput: Partial<CoreInput>;
|
|
28
|
-
typing: boolean;
|
|
29
|
-
webview: Webview | null;
|
|
30
|
-
webviewParams: null;
|
|
31
|
-
session: Partial<CoreSession>;
|
|
32
|
-
lastRoutePath: string | null;
|
|
33
|
-
handoff: boolean;
|
|
34
|
-
theme: WebchatStateTheme;
|
|
35
|
-
themeUpdates: Partial<WebchatStateTheme>;
|
|
36
|
-
error: ErrorMessage;
|
|
37
|
-
online: boolean;
|
|
38
|
-
devSettings: DevSettings;
|
|
39
|
-
isWebchatOpen: boolean;
|
|
40
|
-
isEmojiPickerOpen: boolean;
|
|
41
|
-
isPersistentMenuOpen: boolean;
|
|
42
|
-
isCoverComponentOpen: boolean;
|
|
43
|
-
isCustomComponentRendered: boolean;
|
|
44
|
-
lastMessageUpdate?: string;
|
|
45
|
-
currentAttachment?: File;
|
|
46
|
-
numUnreadMessages: number;
|
|
47
|
-
isLastMessageVisible: boolean;
|
|
48
|
-
}
|
|
49
|
-
export interface WebchatProps {
|
|
50
|
-
ref: RefObject<any>;
|
|
51
|
-
onConnectionRegained?: () => Promise<void>;
|
|
52
|
-
}
|
|
53
|
-
export interface WebchatDevProps extends WebchatProps {
|
|
13
|
+
export interface WebchatDevProps extends WebchatArgs {
|
|
54
14
|
initialDevSettings?: {
|
|
55
15
|
keepSessionOnReload?: boolean;
|
|
56
16
|
showSessionView?: boolean;
|
|
57
17
|
};
|
|
58
18
|
}
|
|
59
|
-
export interface CoverComponentProps {
|
|
60
|
-
closeComponent: () => void;
|
|
61
|
-
}
|
package/lib/cjs/webchat/index.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getBotonicApp = exports.WebchatDev = exports.Webchat = void 0;
|
|
3
|
+
exports.getBotonicApp = exports.WebchatDev = exports.Webchat = exports.WebchatContext = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
// @ts-nocheck
|
|
6
|
+
var context_1 = require("./context");
|
|
7
|
+
Object.defineProperty(exports, "WebchatContext", { enumerable: true, get: function () { return context_1.WebchatContext; } });
|
|
6
8
|
var webchat_1 = require("./webchat");
|
|
7
9
|
Object.defineProperty(exports, "Webchat", { enumerable: true, get: function () { return webchat_1.Webchat; } });
|
|
8
10
|
var webchat_dev_1 = require("./webchat-dev");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/webchat/index.ts"],"names":[],"mappings":";;;;AAAA,cAAc;AACd,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,6CAA0C;AAAjC,yGAAA,UAAU,OAAA;AAEnB,SAAgB,aAAa;IAC3B,oCAAoC;IACpC,oCAAoC;IACpC,OAAO,OAAO,CAAA;AAChB,CAAC;AAJD,sCAIC;AAED,wDAA6B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/webchat/index.ts"],"names":[],"mappings":";;;;AAAA,cAAc;AACd,qCAA0C;AAAjC,yGAAA,cAAc,OAAA;AACvB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,6CAA0C;AAAjC,yGAAA,UAAU,OAAA;AAEnB,SAAgB,aAAa;IAC3B,oCAAoC;IACpC,oCAAoC;IACpC,OAAO,OAAO,CAAA;AAChB,CAAC;AAJD,sCAIC;AAED,wDAA6B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
interface AttachmentProps {
|
|
2
2
|
accept: string;
|
|
3
|
-
enableAttachments
|
|
3
|
+
enableAttachments?: boolean;
|
|
4
4
|
onChange: (event: any) => void;
|
|
5
5
|
}
|
|
6
|
-
export declare const Attachment: ({ accept, enableAttachments, onChange, }: AttachmentProps) => JSX.Element;
|
|
6
|
+
export declare const Attachment: ({ accept, enableAttachments, onChange, }: AttachmentProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
7
|
export {};
|
|
@@ -6,11 +6,11 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
6
6
|
const react_1 = require("react");
|
|
7
7
|
const attachment_icon_svg_1 = tslib_1.__importDefault(require("../../assets/attachment-icon.svg"));
|
|
8
8
|
const constants_1 = require("../../constants");
|
|
9
|
-
const
|
|
9
|
+
const context_1 = require("../../webchat/context");
|
|
10
10
|
const common_1 = require("../components/common");
|
|
11
11
|
const conditional_animation_1 = require("../components/conditional-animation");
|
|
12
12
|
const Attachment = ({ accept, enableAttachments, onChange, }) => {
|
|
13
|
-
const { getThemeProperty } = (0, react_1.useContext)(
|
|
13
|
+
const { getThemeProperty } = (0, react_1.useContext)(context_1.WebchatContext);
|
|
14
14
|
const fileInputRef = (0, react_1.useRef)(null);
|
|
15
15
|
const CustomAttachments = getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.customAttachments, undefined);
|
|
16
16
|
const isAttachmentsEnabled = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attachment.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/attachment.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAiD;AAEjD,mGAA6D;AAC7D,+CAAgD;AAChD,
|
|
1
|
+
{"version":3,"file":"attachment.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/attachment.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAiD;AAEjD,mGAA6D;AAC7D,+CAAgD;AAChD,mDAAsD;AACtD,iDAA2C;AAC3C,+EAA0E;AAQnE,MAAM,UAAU,GAAG,CAAC,EACzB,MAAM,EACN,iBAAiB,EACjB,QAAQ,GACQ,EAAE,EAAE;IACpB,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,kBAAU,EAAC,wBAAc,CAAC,CAAA;IAEvD,MAAM,YAAY,GAAG,IAAA,cAAM,EAA0B,IAAI,CAAC,CAAA;IAE1D,MAAM,iBAAiB,GAAG,gBAAgB,CACxC,mBAAO,CAAC,iBAAiB,CAAC,iBAAiB,EAC3C,SAAS,CACV,CAAA;IAED,MAAM,oBAAoB,GAAG,GAAG,EAAE;;QAChC,MAAM,oBAAoB,GAAG,CAAC,CAAC,iBAAiB,CAAA;QAChD,OAAO,CACL,MAAA,gBAAgB,CACd,mBAAO,CAAC,iBAAiB,CAAC,iBAAiB,EAC3C,iBAAiB,CAClB,mCAAI,oBAAoB,CAC1B,CAAA;IACH,CAAC,CAAA;IACD,MAAM,kBAAkB,GAAG,oBAAoB,EAAE,CAAA;IAEjD,MAAM,cAAc,GAAG,KAAK,CAAC,EAAE;QAC7B,QAAQ,CAAC,KAAK,CAAC,CAAA;QACf,IAAI,YAAY,CAAC,OAAO,EAAE;YACxB,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAA;SAChC;IACH,CAAC,CAAA;IAED,OAAO,CACL,2DACG,kBAAkB,CAAC,CAAC,CAAC,CACpB,uBAAC,4CAAoB,cACnB,+CAAK,IAAI,EAAE,iBAAK,CAAC,eAAe,iBAC9B,gDAAO,OAAO,EAAC,YAAY,EAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,gBAChD,iBAAiB,CAAC,CAAC,CAAC,CACnB,uBAAC,iBAAiB,KAAG,CACtB,CAAC,CAAC,CAAC,CACF,uBAAC,aAAI,IAAC,GAAG,EAAE,6BAAc,GAAI,CAC9B,IACK,EACR,kCACE,GAAG,EAAE,YAAY,EACjB,IAAI,EAAC,MAAM,EACX,IAAI,EAAC,MAAM,EACX,EAAE,EAAC,YAAY,EACf,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAC1B,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,MAAM,GACd,KACE,GACe,CACxB,CAAC,CAAC,CAAC,IAAI,GACP,CACJ,CAAA;AACH,CAAC,CAAA;AA1DY,QAAA,UAAU,cA0DtB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
interface EmojiPickerProps {
|
|
2
|
-
enableEmojiPicker
|
|
2
|
+
enableEmojiPicker?: boolean;
|
|
3
3
|
onClick: () => void;
|
|
4
4
|
}
|
|
5
|
-
export declare const EmojiPicker: ({ enableEmojiPicker, onClick, }: EmojiPickerProps) => JSX.Element;
|
|
5
|
+
export declare const EmojiPicker: ({ enableEmojiPicker, onClick, }: EmojiPickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
6
|
export {};
|
|
@@ -6,11 +6,11 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
6
6
|
const react_1 = require("react");
|
|
7
7
|
const emojiButton_svg_1 = tslib_1.__importDefault(require("../../assets/emojiButton.svg"));
|
|
8
8
|
const constants_1 = require("../../constants");
|
|
9
|
-
const
|
|
9
|
+
const context_1 = require("../../webchat/context");
|
|
10
10
|
const common_1 = require("../components/common");
|
|
11
11
|
const conditional_animation_1 = require("../components/conditional-animation");
|
|
12
12
|
const EmojiPicker = ({ enableEmojiPicker, onClick, }) => {
|
|
13
|
-
const { getThemeProperty } = (0, react_1.useContext)(
|
|
13
|
+
const { getThemeProperty } = (0, react_1.useContext)(context_1.WebchatContext);
|
|
14
14
|
const CustomEmojiPicker = getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.customEmojiPicker, undefined);
|
|
15
15
|
const isEmojiPickerEnabled = () => {
|
|
16
16
|
var _a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emoji-picker.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/emoji-picker.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAyC;AAEzC,2FAAoD;AACpD,+CAAgD;AAChD,
|
|
1
|
+
{"version":3,"file":"emoji-picker.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/emoji-picker.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAyC;AAEzC,2FAAoD;AACpD,+CAAgD;AAChD,mDAAsD;AACtD,iDAA2C;AAC3C,+EAA0E;AAOnE,MAAM,WAAW,GAAG,CAAC,EAC1B,iBAAiB,EACjB,OAAO,GACU,EAAE,EAAE;IACrB,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,kBAAU,EAAC,wBAAc,CAAC,CAAA;IAEvD,MAAM,iBAAiB,GAAG,gBAAgB,CACxC,mBAAO,CAAC,iBAAiB,CAAC,iBAAiB,EAC3C,SAAS,CACV,CAAA;IAED,MAAM,oBAAoB,GAAG,GAAG,EAAE;;QAChC,MAAM,oBAAoB,GAAG,CAAC,CAAC,iBAAiB,CAAA;QAChD,OAAO,CACL,MAAA,gBAAgB,CACd,mBAAO,CAAC,iBAAiB,CAAC,iBAAiB,EAC3C,iBAAiB,CAClB,mCAAI,oBAAoB,CAC1B,CAAA;IACH,CAAC,CAAA;IACD,MAAM,kBAAkB,GAAG,oBAAoB,EAAE,CAAA;IAEjD,MAAM,WAAW,GAAG,CAAC,KAAU,EAAE,EAAE;QACjC,OAAO,EAAE,CAAA;QACT,KAAK,CAAC,eAAe,EAAE,CAAA;IACzB,CAAC,CAAA;IAED,OAAO,CACL,2DACG,kBAAkB,CAAC,CAAC,CAAC,CACpB,uBAAC,4CAAoB,cACnB,8CAAK,IAAI,EAAE,iBAAK,CAAC,iBAAiB,EAAE,OAAO,EAAE,WAAW,gBACrD,iBAAiB,CAAC,CAAC,CAAC,CACnB,uBAAC,iBAAiB,KAAG,CACtB,CAAC,CAAC,CAAC,CACF,uBAAC,aAAI,IAAC,GAAG,EAAE,yBAAS,GAAI,CACzB,IACG,GACe,CACxB,CAAC,CAAC,CAAC,IAAI,GACP,CACJ,CAAA;AACH,CAAC,CAAA;AA1CY,QAAA,WAAW,eA0CvB"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
interface InputPanelProps {
|
|
3
3
|
persistentMenu: any;
|
|
4
|
-
enableEmojiPicker
|
|
5
|
-
enableAttachments
|
|
4
|
+
enableEmojiPicker?: boolean;
|
|
5
|
+
enableAttachments?: boolean;
|
|
6
6
|
handleAttachment: (event: any) => void;
|
|
7
|
-
textareaRef: React.MutableRefObject<HTMLTextAreaElement>;
|
|
7
|
+
textareaRef: React.MutableRefObject<HTMLTextAreaElement | undefined>;
|
|
8
8
|
host: HTMLElement;
|
|
9
9
|
onUserInput?: (event: any) => Promise<void>;
|
|
10
10
|
}
|
|
11
|
-
export declare const InputPanel: ({ persistentMenu, enableEmojiPicker, enableAttachments, handleAttachment, textareaRef, host, onUserInput, }: InputPanelProps) => JSX.Element;
|
|
11
|
+
export declare const InputPanel: ({ persistentMenu, enableEmojiPicker, enableAttachments, handleAttachment, textareaRef, host, onUserInput, }: InputPanelProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
12
|
export {};
|
|
@@ -7,8 +7,8 @@ const core_1 = require("@botonic/core");
|
|
|
7
7
|
const react_1 = require("react");
|
|
8
8
|
const uuid_1 = require("uuid");
|
|
9
9
|
const constants_1 = require("../../constants");
|
|
10
|
-
const contexts_1 = require("../../contexts");
|
|
11
10
|
const message_utils_1 = require("../../message-utils");
|
|
11
|
+
const context_1 = require("../../webchat/context");
|
|
12
12
|
const constants_2 = require("../constants");
|
|
13
13
|
const attachment_1 = require("./attachment");
|
|
14
14
|
const emoji_picker_1 = require("./emoji-picker");
|
|
@@ -18,8 +18,10 @@ const send_button_1 = require("./send-button");
|
|
|
18
18
|
const styles_1 = require("./styles");
|
|
19
19
|
const textarea_1 = require("./textarea");
|
|
20
20
|
const InputPanel = ({ persistentMenu, enableEmojiPicker, enableAttachments, handleAttachment, textareaRef, host, onUserInput, }) => {
|
|
21
|
-
const { getThemeProperty, sendText, togglePersistentMenu, toggleEmojiPicker, webchatState, inputPanelRef, } = (0, react_1.useContext)(
|
|
21
|
+
const { getThemeProperty, sendText, togglePersistentMenu, toggleEmojiPicker, webchatState, inputPanelRef, } = (0, react_1.useContext)(context_1.WebchatContext);
|
|
22
22
|
const handleSelectedEmoji = event => {
|
|
23
|
+
if (!textareaRef.current)
|
|
24
|
+
return;
|
|
23
25
|
textareaRef.current.value += event.emoji;
|
|
24
26
|
textareaRef.current.focus();
|
|
25
27
|
};
|
|
@@ -30,7 +32,10 @@ const InputPanel = ({ persistentMenu, enableEmojiPicker, enableAttachments, hand
|
|
|
30
32
|
togglePersistentMenu(!webchatState.isPersistentMenuOpen);
|
|
31
33
|
};
|
|
32
34
|
const sendTextAreaText = () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
33
|
-
|
|
35
|
+
var _a;
|
|
36
|
+
if (!textareaRef.current)
|
|
37
|
+
return;
|
|
38
|
+
yield sendText((_a = textareaRef.current) === null || _a === void 0 ? void 0 : _a.value);
|
|
34
39
|
textareaRef.current.value = '';
|
|
35
40
|
});
|
|
36
41
|
const sendChatEvent = (chatEvent) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/index.tsx"],"names":[],"mappings":";;;;;AAAA,wCAAqC;AACrC,iCAAyC;AACzC,+BAAmC;AAEnC,+CAAyC;AACzC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,5 +2,5 @@ interface OpenedEmojiPickerProps {
|
|
|
2
2
|
onClick: () => void;
|
|
3
3
|
onEmojiClick: (event: any) => void;
|
|
4
4
|
}
|
|
5
|
-
export declare const OpenedEmojiPicker: ({ onClick, onEmojiClick, }: OpenedEmojiPickerProps) => JSX.Element;
|
|
5
|
+
export declare const OpenedEmojiPicker: ({ onClick, onEmojiClick, }: OpenedEmojiPickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
6
|
export {};
|
|
@@ -2,5 +2,5 @@ interface PersistentMenuProps {
|
|
|
2
2
|
persistentMenu: any;
|
|
3
3
|
onClick: () => void;
|
|
4
4
|
}
|
|
5
|
-
export declare const PersistentMenu: ({ onClick, persistentMenu, }: PersistentMenuProps) => JSX.Element;
|
|
5
|
+
export declare const PersistentMenu: ({ onClick, persistentMenu, }: PersistentMenuProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
6
|
export {};
|
|
@@ -6,11 +6,11 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
6
6
|
const react_1 = require("react");
|
|
7
7
|
const menuButton_svg_1 = tslib_1.__importDefault(require("../../assets/menuButton.svg"));
|
|
8
8
|
const constants_1 = require("../../constants");
|
|
9
|
-
const
|
|
9
|
+
const context_1 = require("../../webchat/context");
|
|
10
10
|
const common_1 = require("../components/common");
|
|
11
11
|
const conditional_animation_1 = require("../components/conditional-animation");
|
|
12
12
|
const PersistentMenu = ({ onClick, persistentMenu, }) => {
|
|
13
|
-
const { getThemeProperty } = (0, react_1.useContext)(
|
|
13
|
+
const { getThemeProperty } = (0, react_1.useContext)(context_1.WebchatContext);
|
|
14
14
|
const persistentMenuOptions = getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.persistentMenu, persistentMenu);
|
|
15
15
|
const CustomMenuButton = getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.customMenuButton, undefined);
|
|
16
16
|
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: persistentMenuOptions ? ((0, jsx_runtime_1.jsx)(conditional_animation_1.ConditionalAnimation, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ role: constants_1.ROLES.PERSISTENT_MENU_ICON, onClick: onClick }, { children: CustomMenuButton ? (0, jsx_runtime_1.jsx)(CustomMenuButton, {}) : (0, jsx_runtime_1.jsx)(common_1.Icon, { src: menuButton_svg_1.default }) })) })) : null }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistent-menu.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/persistent-menu.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAyC;AAEzC,yFAAkD;AAClD,+CAAgD;AAChD,
|
|
1
|
+
{"version":3,"file":"persistent-menu.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/persistent-menu.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAyC;AAEzC,yFAAkD;AAClD,+CAAgD;AAChD,mDAAsD;AACtD,iDAA2C;AAC3C,+EAA0E;AAOnE,MAAM,cAAc,GAAG,CAAC,EAC7B,OAAO,EACP,cAAc,GACM,EAAE,EAAE;IACxB,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,kBAAU,EAAC,wBAAc,CAAC,CAAA;IAEvD,MAAM,qBAAqB,GAAG,gBAAgB,CAC5C,mBAAO,CAAC,iBAAiB,CAAC,cAAc,EACxC,cAAc,CACf,CAAA;IAED,MAAM,gBAAgB,GAAG,gBAAgB,CACvC,mBAAO,CAAC,iBAAiB,CAAC,gBAAgB,EAC1C,SAAS,CACV,CAAA;IAED,OAAO,CACL,2DACG,qBAAqB,CAAC,CAAC,CAAC,CACvB,uBAAC,4CAAoB,cACnB,8CAAK,IAAI,EAAE,iBAAK,CAAC,oBAAoB,EAAE,OAAO,EAAE,OAAO,gBACpD,gBAAgB,CAAC,CAAC,CAAC,uBAAC,gBAAgB,KAAG,CAAC,CAAC,CAAC,uBAAC,aAAI,IAAC,GAAG,EAAE,wBAAQ,GAAI,IAC9D,GACe,CACxB,CAAC,CAAC,CAAC,IAAI,GACP,CACJ,CAAA;AACH,CAAC,CAAA;AA3BY,QAAA,cAAc,kBA2B1B"}
|
|
@@ -6,11 +6,11 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
6
6
|
const react_1 = require("react");
|
|
7
7
|
const send_button_svg_1 = tslib_1.__importDefault(require("../../assets/send-button.svg"));
|
|
8
8
|
const constants_1 = require("../../constants");
|
|
9
|
-
const
|
|
9
|
+
const context_1 = require("../../webchat/context");
|
|
10
10
|
const common_1 = require("../components/common");
|
|
11
11
|
const conditional_animation_1 = require("../components/conditional-animation");
|
|
12
12
|
const SendButton = ({ onClick }) => {
|
|
13
|
-
const { getThemeProperty } = (0, react_1.useContext)(
|
|
13
|
+
const { getThemeProperty } = (0, react_1.useContext)(context_1.WebchatContext);
|
|
14
14
|
const sendButtonEnabled = getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.enableSendButton, true);
|
|
15
15
|
const CustomSendButton = getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.customSendButton, undefined);
|
|
16
16
|
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: sendButtonEnabled || CustomSendButton ? ((0, jsx_runtime_1.jsx)(conditional_animation_1.ConditionalAnimation, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ onClick: onClick, role: constants_1.ROLES.SEND_BUTTON_ICON }, { children: CustomSendButton ? ((0, jsx_runtime_1.jsx)(CustomSendButton, {})) : ((0, jsx_runtime_1.jsx)(common_1.Icon, { src: send_button_svg_1.default })) })) })) : null }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-button.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/send-button.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAyC;AAEzC,2FAAyD;AACzD,+CAAgD;AAChD,
|
|
1
|
+
{"version":3,"file":"send-button.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/send-button.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAyC;AAEzC,2FAAyD;AACzD,+CAAgD;AAChD,mDAAsD;AACtD,iDAA2C;AAC3C,+EAA0E;AAMnE,MAAM,UAAU,GAAG,CAAC,EAAE,OAAO,EAAmB,EAAE,EAAE;IACzD,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,kBAAU,EAAC,wBAAc,CAAC,CAAA;IAEvD,MAAM,iBAAiB,GAAG,gBAAgB,CACxC,mBAAO,CAAC,iBAAiB,CAAC,gBAAgB,EAC1C,IAAI,CACL,CAAA;IAED,MAAM,gBAAgB,GAAG,gBAAgB,CACvC,mBAAO,CAAC,iBAAiB,CAAC,gBAAgB,EAC1C,SAAS,CACV,CAAA;IAED,OAAO,CACL,2DACG,iBAAiB,IAAI,gBAAgB,CAAC,CAAC,CAAC,CACvC,uBAAC,4CAAoB,cACnB,8CAAK,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,iBAAK,CAAC,gBAAgB,gBAChD,gBAAgB,CAAC,CAAC,CAAC,CAClB,uBAAC,gBAAgB,KAAG,CACrB,CAAC,CAAC,CAAC,CACF,uBAAC,aAAI,IAAC,GAAG,EAAE,yBAAc,GAAI,CAC9B,IACG,GACe,CACxB,CAAC,CAAC,CAAC,IAAI,GACP,CACJ,CAAA;AACH,CAAC,CAAA;AA5BY,QAAA,UAAU,cA4BtB"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { PersistentMenuOptionsTheme } from '../theme/types';
|
|
3
3
|
interface TextareaProps {
|
|
4
4
|
host: HTMLElement;
|
|
5
|
-
persistentMenu:
|
|
6
|
-
textareaRef: React.MutableRefObject<HTMLTextAreaElement>;
|
|
5
|
+
persistentMenu: PersistentMenuOptionsTheme;
|
|
6
|
+
textareaRef: React.MutableRefObject<HTMLTextAreaElement | undefined>;
|
|
7
7
|
sendChatEvent: (event: string) => Promise<void>;
|
|
8
8
|
sendTextAreaText: () => Promise<void>;
|
|
9
9
|
}
|
|
10
|
-
export declare const Textarea: ({ host, persistentMenu, textareaRef, sendChatEvent, sendTextAreaText, }: TextareaProps) => JSX.Element;
|
|
10
|
+
export declare const Textarea: ({ host, persistentMenu, textareaRef, sendChatEvent, sendTextAreaText, }: TextareaProps) => import("react/jsx-runtime").JSX.Element;
|
|
11
11
|
export {};
|
|
@@ -6,12 +6,12 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
6
6
|
const react_1 = require("react");
|
|
7
7
|
const react_textarea_autosize_1 = tslib_1.__importDefault(require("react-textarea-autosize"));
|
|
8
8
|
const constants_1 = require("../../constants");
|
|
9
|
-
const contexts_1 = require("../../contexts");
|
|
10
9
|
const index_types_1 = require("../../index-types");
|
|
10
|
+
const context_1 = require("../../webchat/context");
|
|
11
11
|
const hooks_1 = require("../hooks");
|
|
12
12
|
const styles_1 = require("./styles");
|
|
13
13
|
const Textarea = ({ host, persistentMenu, textareaRef, sendChatEvent, sendTextAreaText, }) => {
|
|
14
|
-
const { getThemeProperty, webchatState } = (0, react_1.useContext)(
|
|
14
|
+
const { getThemeProperty, webchatState, setIsInputFocused } = (0, react_1.useContext)(context_1.WebchatContext);
|
|
15
15
|
(0, hooks_1.useDeviceAdapter)(host, webchatState.isWebchatOpen);
|
|
16
16
|
let isTyping = false;
|
|
17
17
|
let typingTimeout;
|
|
@@ -24,6 +24,8 @@ const Textarea = ({ host, persistentMenu, textareaRef, sendChatEvent, sendTextAr
|
|
|
24
24
|
}
|
|
25
25
|
};
|
|
26
26
|
const onKeyUp = () => {
|
|
27
|
+
if (!textareaRef.current)
|
|
28
|
+
return;
|
|
27
29
|
if (textareaRef.current.value === '') {
|
|
28
30
|
stopTyping();
|
|
29
31
|
return;
|
|
@@ -49,7 +51,13 @@ const Textarea = ({ host, persistentMenu, textareaRef, sendChatEvent, sendTextAr
|
|
|
49
51
|
isTyping = false;
|
|
50
52
|
sendChatEvent(index_types_1.Typing.Off);
|
|
51
53
|
};
|
|
52
|
-
|
|
54
|
+
const handleFocus = () => {
|
|
55
|
+
setIsInputFocused(true);
|
|
56
|
+
};
|
|
57
|
+
const handleBlur = () => {
|
|
58
|
+
setIsInputFocused(false);
|
|
59
|
+
};
|
|
60
|
+
return ((0, jsx_runtime_1.jsx)(styles_1.TextAreaContainer, { children: (0, jsx_runtime_1.jsx)(react_textarea_autosize_1.default, { ref: (ref) => (textareaRef.current = ref), onFocus: handleFocus, onBlur: handleBlur, name: 'text', maxRows: 4, wrap: 'soft', maxLength: 1000, placeholder: getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.textPlaceholder, constants_1.WEBCHAT.DEFAULTS.PLACEHOLDER), autoFocus: false, onKeyDown: e => onKeyDown(e), onKeyUp: onKeyUp, style: Object.assign({ display: 'flex', fontSize: 16, width: '100%', border: 'none', resize: 'none', overflow: 'auto', outline: 'none', flex: '1 1 auto', padding: 10, paddingLeft: persistentMenuOptions ? 0 : 10, fontFamily: 'inherit' }, getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.userInputBoxStyle)) }) }));
|
|
53
61
|
};
|
|
54
62
|
exports.Textarea = Textarea;
|
|
55
63
|
//# sourceMappingURL=textarea.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/textarea.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAyC;AACzC,8FAAsD;
|
|
1
|
+
{"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/textarea.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const WebchatMessageList: () => JSX.Element;
|
|
1
|
+
export declare const WebchatMessageList: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,86 +1,112 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.WebchatMessageList = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
4
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const react_1 = require("react");
|
|
6
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
|
6
7
|
const constants_1 = require("../../constants");
|
|
7
|
-
const
|
|
8
|
+
const context_1 = require("../../webchat/context");
|
|
8
9
|
const constants_2 = require("../constants");
|
|
9
|
-
const typing_indicator_1 = require("../typing-indicator");
|
|
10
|
+
const typing_indicator_1 = tslib_1.__importDefault(require("../typing-indicator"));
|
|
10
11
|
const intro_message_1 = require("./intro-message");
|
|
11
12
|
const scroll_button_1 = require("./scroll-button");
|
|
12
13
|
const styles_1 = require("./styles");
|
|
13
14
|
const unread_messages_banner_1 = require("./unread-messages-banner");
|
|
14
15
|
const use_notifications_1 = require("./use-notifications");
|
|
16
|
+
const SCROLL_TIMEOUT = 200;
|
|
17
|
+
const scrollOptionsEnd = {
|
|
18
|
+
block: 'end',
|
|
19
|
+
};
|
|
20
|
+
const scrollOptionsCenter = {
|
|
21
|
+
block: 'center',
|
|
22
|
+
};
|
|
15
23
|
const WebchatMessageList = () => {
|
|
16
|
-
const { webchatState, resetUnreadMessages, setLastMessageVisible, scrollableMessagesListRef, } = (0, react_1.useContext)(
|
|
24
|
+
const { webchatState, resetUnreadMessages, setLastMessageVisible, scrollableMessagesListRef, } = (0, react_1.useContext)(context_1.WebchatContext);
|
|
25
|
+
const { notificationsEnabled } = (0, use_notifications_1.useNotifications)();
|
|
17
26
|
const [firstUnreadMessageId, setFirstUnreadMessageId] = (0, react_1.useState)();
|
|
18
|
-
const
|
|
19
|
-
const
|
|
27
|
+
const lastMessageRef = (0, react_1.useRef)(null);
|
|
28
|
+
const typingRef = (0, react_1.useRef)(null);
|
|
29
|
+
const unreadMessagesBannerRef = (0, react_1.useRef)(null);
|
|
30
|
+
const scrollToTyping = () => {
|
|
20
31
|
setTimeout(() => {
|
|
21
32
|
var _a;
|
|
22
|
-
(_a =
|
|
23
|
-
|
|
24
|
-
block: 'end',
|
|
25
|
-
});
|
|
26
|
-
}, 100);
|
|
33
|
+
(_a = typingRef.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView(scrollOptionsEnd);
|
|
34
|
+
}, SCROLL_TIMEOUT);
|
|
27
35
|
};
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
|
|
36
|
+
const scrollToLastMessage = () => {
|
|
37
|
+
setTimeout(() => {
|
|
38
|
+
var _a;
|
|
39
|
+
(_a = lastMessageRef.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView(scrollOptionsEnd);
|
|
40
|
+
}, SCROLL_TIMEOUT);
|
|
31
41
|
};
|
|
32
|
-
const unreadMessagesBannerRef = (0, react_1.useRef)(null);
|
|
33
42
|
const scrollToBanner = () => {
|
|
34
43
|
setTimeout(() => {
|
|
35
44
|
var _a;
|
|
36
|
-
(_a = unreadMessagesBannerRef.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
45
|
+
(_a = unreadMessagesBannerRef.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView(scrollOptionsCenter);
|
|
46
|
+
}, SCROLL_TIMEOUT);
|
|
47
|
+
};
|
|
48
|
+
const handleScrollToBottom = () => {
|
|
49
|
+
resetUnreadMessages();
|
|
50
|
+
if (webchatState.typing) {
|
|
51
|
+
scrollToTyping();
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
scrollToLastMessage();
|
|
55
|
+
};
|
|
56
|
+
const showUnreadMessagesBanner = (messageComponentId) => {
|
|
57
|
+
return (!webchatState.isInputFocused &&
|
|
58
|
+
firstUnreadMessageId &&
|
|
59
|
+
messageComponentId === firstUnreadMessageId &&
|
|
60
|
+
webchatState.numUnreadMessages > 0);
|
|
41
61
|
};
|
|
42
|
-
const showUnreadMessagesBanner = (messageComponentId) => firstUnreadMessageId &&
|
|
43
|
-
messageComponentId === firstUnreadMessageId &&
|
|
44
|
-
webchatState.numUnreadMessages > 0;
|
|
45
62
|
(0, react_1.useEffect)(() => {
|
|
46
63
|
var _a;
|
|
47
64
|
const firstUnreadMessage = webchatState.messagesComponents.find(message => message.props.isUnread);
|
|
48
65
|
setFirstUnreadMessageId((_a = firstUnreadMessage === null || firstUnreadMessage === void 0 ? void 0 : firstUnreadMessage.props) === null || _a === void 0 ? void 0 : _a.id);
|
|
49
66
|
}, [webchatState.messagesComponents]);
|
|
50
67
|
(0, react_1.useEffect)(() => {
|
|
51
|
-
if (webchatState.messagesComponents.length > 0 &&
|
|
52
|
-
lastMessageBottomRef.current) {
|
|
68
|
+
if (webchatState.messagesComponents.length > 0 && lastMessageRef.current) {
|
|
53
69
|
const observer = new IntersectionObserver(entries => {
|
|
54
70
|
entries.forEach(entry => {
|
|
55
71
|
setLastMessageVisible(entry.isIntersecting);
|
|
56
72
|
});
|
|
57
73
|
});
|
|
58
|
-
observer.observe(
|
|
74
|
+
observer.observe(lastMessageRef.current);
|
|
59
75
|
}
|
|
60
76
|
}, [webchatState.messagesComponents]);
|
|
61
|
-
const { notificationsEnabled } = (0, use_notifications_1.useNotifications)();
|
|
62
77
|
(0, react_1.useEffect)(() => {
|
|
63
78
|
if (!notificationsEnabled) {
|
|
64
|
-
|
|
65
|
-
|
|
79
|
+
if (webchatState.typing) {
|
|
80
|
+
scrollToTyping();
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
scrollToLastMessage();
|
|
66
84
|
}
|
|
67
|
-
}, [webchatState.typing]);
|
|
85
|
+
}, [webchatState.typing, webchatState.messagesComponents]);
|
|
68
86
|
(0, react_1.useEffect)(() => {
|
|
69
|
-
if (notificationsEnabled) {
|
|
70
|
-
if (
|
|
87
|
+
if (webchatState.isWebchatOpen && notificationsEnabled) {
|
|
88
|
+
if (unreadMessagesBannerRef.current) {
|
|
71
89
|
scrollToBanner();
|
|
72
90
|
return;
|
|
73
91
|
}
|
|
74
|
-
|
|
75
|
-
|
|
92
|
+
if (webchatState.typing) {
|
|
93
|
+
scrollToTyping();
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
scrollToLastMessage();
|
|
76
97
|
}
|
|
77
|
-
}, [
|
|
98
|
+
}, [
|
|
99
|
+
firstUnreadMessageId,
|
|
100
|
+
webchatState.isWebchatOpen,
|
|
101
|
+
webchatState.typing,
|
|
102
|
+
webchatState.messagesComponents,
|
|
103
|
+
]);
|
|
78
104
|
const showScrollButton = webchatState.numUnreadMessages > 0 && !webchatState.isLastMessageVisible;
|
|
79
105
|
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(styles_1.ScrollableMessageList, Object.assign({ id: constants_2.BotonicContainerId.ScrollableMessagesList, ref: scrollableMessagesListRef, role: constants_1.ROLES.MESSAGE_LIST }, { children: [(0, jsx_runtime_1.jsx)(intro_message_1.IntroMessage, {}), webchatState.messagesComponents.map((messageComponent, index) => {
|
|
80
|
-
return ((0, jsx_runtime_1.jsxs)(styles_1.ContainerMessage, Object.assign({ role: constants_1.ROLES.MESSAGE }, { children: [showUnreadMessagesBanner(messageComponent.props.id) && ((0, jsx_runtime_1.jsx)(unread_messages_banner_1.UnreadMessagesBanner, { unreadMessagesBannerRef: unreadMessagesBannerRef })), messageComponent, index === webchatState.messagesComponents.length - 1 && ((0, jsx_runtime_1.jsx)("div", { ref:
|
|
106
|
+
return ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [(0, jsx_runtime_1.jsxs)(styles_1.ContainerMessage, Object.assign({ role: constants_1.ROLES.MESSAGE }, { children: [showUnreadMessagesBanner(messageComponent.props.id) && ((0, jsx_runtime_1.jsx)(unread_messages_banner_1.UnreadMessagesBanner, { unreadMessagesBannerRef: unreadMessagesBannerRef })), messageComponent] })), index === webchatState.messagesComponents.length - 1 && ((0, jsx_runtime_1.jsx)("div", { ref: lastMessageRef, style: {
|
|
81
107
|
content: '',
|
|
82
|
-
} }))] }
|
|
83
|
-
}), webchatState.typing && (0, jsx_runtime_1.jsx)(typing_indicator_1.
|
|
108
|
+
} }))] }, messageComponent.props.id));
|
|
109
|
+
}), webchatState.typing && (0, jsx_runtime_1.jsx)(typing_indicator_1.default, { ref: typingRef })] })), showScrollButton && (0, jsx_runtime_1.jsx)(scroll_button_1.ScrollButton, { handleClick: handleScrollToBottom })] }));
|
|
84
110
|
};
|
|
85
111
|
exports.WebchatMessageList = WebchatMessageList;
|
|
86
112
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const IntroMessage: () => JSX.Element | null;
|
|
1
|
+
export declare const IntroMessage: () => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -4,13 +4,13 @@ exports.IntroMessage = void 0;
|
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = require("react");
|
|
6
6
|
const constants_1 = require("../../constants");
|
|
7
|
-
const contexts_1 = require("../../contexts");
|
|
8
7
|
const styles_1 = require("../../shared/styles");
|
|
9
8
|
const environment_1 = require("../../util/environment");
|
|
10
9
|
const react_2 = require("../../util/react");
|
|
10
|
+
const context_1 = require("../../webchat/context");
|
|
11
11
|
const styles_2 = require("./styles");
|
|
12
12
|
const IntroMessage = () => {
|
|
13
|
-
const { getThemeProperty } = (0, react_1.useContext)(
|
|
13
|
+
const { getThemeProperty } = (0, react_1.useContext)(context_1.WebchatContext);
|
|
14
14
|
const animationsEnabled = getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.enableAnimations, true);
|
|
15
15
|
const CustomIntro = getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.customIntro);
|
|
16
16
|
const introImage = getThemeProperty(constants_1.WEBCHAT.CUSTOM_PROPERTIES.introImage);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intro-message.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/intro-message.tsx"],"names":[],"mappings":";;;;AAAA,iCAAyC;AAEzC,+CAAyC;AACzC,
|
|
1
|
+
{"version":3,"file":"intro-message.js","sourceRoot":"","sources":["../../../../src/webchat/message-list/intro-message.tsx"],"names":[],"mappings":";;;;AAAA,iCAAyC;AAEzC,+CAAyC;AACzC,gDAA0C;AAC1C,wDAAqD;AACrD,4CAAqD;AACrD,mDAAsD;AACtD,qCAA4C;AAErC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,kBAAU,EAAC,wBAAc,CAAC,CAAA;IAEvD,MAAM,iBAAiB,GAAG,gBAAgB,CACxC,mBAAO,CAAC,iBAAiB,CAAC,gBAAgB,EAC1C,IAAI,CACL,CAAA;IACD,MAAM,WAAW,GAAG,gBAAgB,CAAC,mBAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAA;IAC3E,MAAM,UAAU,GAAG,gBAAgB,CAAC,mBAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACzE,MAAM,UAAU,GAAG,gBAAgB,CAAC,mBAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;IAEzE,MAAM,YAAY,GAAG,UAAU,IAAI,CACjC,uBAAC,0BAAiB,IAChB,KAAK,oBACA,UAAU,GAEf,GAAG,EAAE,IAAA,0BAAY,EAAC,UAAU,CAAC,GAC7B,CACH,CAAA;IAED,OAAO,WAAW,IAAI,YAAY,CAAC,CAAC,CAAC,CACnC,uBAAC,0BAAkB,kBACjB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,uBAAC,aAAI,cAAE,QAAQ,GAAQ,gBAE3C,WAAW,CAAC,CAAC,CAAC,uBAAC,WAAW,KAAG,CAAC,CAAC,CAAC,YAAY,IAC1B,CACtB,CAAC,CAAC,CAAC,IAAI,CAAA;AACV,CAAC,CAAA;AA5BY,QAAA,YAAY,gBA4BxB"}
|
|
@@ -16,9 +16,9 @@ exports.DefaultIntroImage = styled_components_1.default.img `
|
|
|
16
16
|
width: 100%;
|
|
17
17
|
`;
|
|
18
18
|
exports.ContainerScrollButton = styled_components_1.default.div `
|
|
19
|
-
position:
|
|
20
|
-
|
|
21
|
-
bottom:
|
|
19
|
+
position: sticky;
|
|
20
|
+
left: 85%;
|
|
21
|
+
bottom: 15px;
|
|
22
22
|
|
|
23
23
|
background-color: #6d6a78;
|
|
24
24
|
cursor: pointer;
|
|
@@ -54,6 +54,7 @@ exports.ScrollableMessageList = styled_components_1.default.div `
|
|
|
54
54
|
overflow-y: auto;
|
|
55
55
|
overflow-x: hidden;
|
|
56
56
|
overscroll-behavior: contain; // https://css-tricks.com/almanac/properties/o/overscroll-behavior/
|
|
57
|
+
scroll-behavior: smooth;
|
|
57
58
|
-webkit-overflow-scrolling: touch;
|
|
58
59
|
`;
|
|
59
60
|
//# sourceMappingURL=styles.js.map
|