@botonic/react 0.57.0-rslib-esm.0 → 0.57.0-rslib-esm.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/app.js.map +1 -0
- package/lib/botonic-tester.js.map +1 -0
- package/lib/components/audio.d.ts +9 -0
- package/lib/components/audio.js.map +1 -0
- package/lib/components/button/index.js.map +1 -0
- package/lib/components/button/styles.js.map +1 -0
- package/lib/components/buttons-disabler.js.map +1 -0
- package/lib/components/carousel.d.ts +10 -0
- package/lib/components/carousel.js.map +1 -0
- package/lib/components/components.js.map +1 -0
- package/lib/components/constants.js.map +1 -0
- package/lib/components/custom-message.js.map +1 -0
- package/lib/components/document.d.ts +9 -0
- package/lib/components/document.js.map +1 -0
- package/lib/components/element.js.map +1 -0
- package/lib/components/handoff.d.ts +1 -0
- package/lib/components/handoff.js.map +1 -0
- package/lib/components/image.d.ts +9 -0
- package/lib/components/image.js.map +1 -0
- package/lib/components/index-types.js.map +1 -0
- package/lib/components/index.js.map +1 -0
- package/lib/components/location.js.map +1 -0
- package/lib/components/markdown.js.map +1 -0
- package/lib/components/message/index.js.map +1 -0
- package/lib/components/message/message-footer.d.ts +8 -0
- package/lib/components/message/message-footer.js.map +1 -0
- package/lib/components/message/message-image.js.map +1 -0
- package/lib/components/message/styles.js.map +1 -0
- package/lib/components/message/timestamps.d.ts +13 -0
- package/lib/components/message/timestamps.js.map +1 -0
- package/lib/components/message-template.js.map +1 -0
- package/lib/components/multichannel/facebook/facebook.js.map +1 -0
- package/lib/components/multichannel/index-types.js.map +1 -0
- package/lib/components/multichannel/index.d.ts +7 -0
- package/lib/components/multichannel/index.js +21 -0
- package/lib/components/multichannel/index.js.map +1 -0
- package/lib/components/multichannel/multichannel-button.d.ts +4 -0
- package/lib/components/multichannel/multichannel-button.js.map +1 -0
- package/lib/components/multichannel/multichannel-carousel.d.ts +1 -0
- package/lib/components/multichannel/multichannel-carousel.js.map +1 -0
- package/lib/components/multichannel/multichannel-context.js.map +1 -0
- package/lib/components/multichannel/multichannel-reply.d.ts +4 -0
- package/lib/components/multichannel/multichannel-reply.js.map +1 -0
- package/lib/components/multichannel/multichannel-text.d.ts +2 -0
- package/lib/components/multichannel/multichannel-text.js.map +1 -0
- package/lib/components/multichannel/multichannel-utils.js.map +1 -0
- package/lib/components/multichannel/multichannel.js.map +1 -0
- package/lib/components/multichannel/whatsapp/constants.js.map +1 -0
- package/lib/components/multichannel/whatsapp/markdown-meta.js.map +1 -0
- package/lib/components/pic.js.map +1 -0
- package/lib/components/raw.d.ts +9 -0
- package/lib/components/raw.js.map +1 -0
- package/lib/components/reply.js.map +1 -0
- package/lib/components/share-button.js.map +1 -0
- package/lib/components/subtitle.js.map +1 -0
- package/lib/components/system-debug-trace/debug-message.d.ts +8 -0
- package/lib/components/system-debug-trace/debug-message.js.map +1 -0
- package/lib/components/system-debug-trace/events/ai-agent/ai-agent.d.ts +4 -0
- package/lib/components/system-debug-trace/events/ai-agent/ai-agent.js.map +1 -0
- package/lib/components/system-debug-trace/events/ai-agent/executed-tools.d.ts +7 -0
- package/lib/components/system-debug-trace/events/ai-agent/executed-tools.js.map +1 -0
- package/lib/components/system-debug-trace/events/ai-agent/index.js.map +1 -0
- package/lib/components/system-debug-trace/events/ai-agent/parse-tools.js.map +1 -0
- package/lib/components/system-debug-trace/events/ai-agent/rehydrate-ai-agent-event.js.map +1 -0
- package/lib/components/system-debug-trace/events/ai-agent/types.js.map +1 -0
- package/lib/components/system-debug-trace/events/ai-agent/use-rehydrated-ai-agent-event.js.map +1 -0
- package/lib/components/system-debug-trace/events/ai-agent-router/ai-agent-router.d.ts +4 -0
- package/lib/components/system-debug-trace/events/ai-agent-router/ai-agent-router.js.map +1 -0
- package/lib/components/system-debug-trace/events/ai-agent-router/index.js.map +1 -0
- package/lib/components/system-debug-trace/events/ai-agent-router/types.js.map +1 -0
- package/lib/components/system-debug-trace/events/bot-action.js.map +1 -0
- package/lib/components/system-debug-trace/events/components/guardrail-item.js.map +1 -0
- package/lib/components/system-debug-trace/events/components/index.js.map +1 -0
- package/lib/components/system-debug-trace/events/components/sources-section.d.ts +11 -0
- package/lib/components/system-debug-trace/events/components/sources-section.js.map +1 -0
- package/lib/components/system-debug-trace/events/conditional-channel.js.map +1 -0
- package/lib/components/system-debug-trace/events/conditional-country.js.map +1 -0
- package/lib/components/system-debug-trace/events/conditional-custom.d.ts +10 -0
- package/lib/components/system-debug-trace/events/conditional-custom.js.map +1 -0
- package/lib/components/system-debug-trace/events/conditional-queue-status.d.ts +11 -0
- package/lib/components/system-debug-trace/events/conditional-queue-status.js.map +1 -0
- package/lib/components/system-debug-trace/events/constants.js.map +1 -0
- package/lib/components/system-debug-trace/events/fallback.js.map +1 -0
- package/lib/components/system-debug-trace/events/handoff-success.d.ts +11 -0
- package/lib/components/system-debug-trace/events/handoff-success.js.map +1 -0
- package/lib/components/system-debug-trace/events/index.js.map +1 -0
- package/lib/components/system-debug-trace/events/keyword.js.map +1 -0
- package/lib/components/system-debug-trace/events/knowledge-bases-types.js.map +1 -0
- package/lib/components/system-debug-trace/events/redirect-flow.js.map +1 -0
- package/lib/components/system-debug-trace/events/smart-intent.js.map +1 -0
- package/lib/components/system-debug-trace/events/webview-action-triggered.d.ts +10 -0
- package/lib/components/system-debug-trace/events/webview-action-triggered.js.map +1 -0
- package/lib/components/system-debug-trace/hooks/use-knowledge-base-info.d.ts +16 -0
- package/lib/components/system-debug-trace/hooks/use-knowledge-base-info.js.map +1 -0
- package/lib/components/system-debug-trace/hooks/use-last-label-position.js.map +1 -0
- package/lib/components/system-debug-trace/icons/ai-router.d.ts +1 -0
- package/lib/components/system-debug-trace/icons/ai-router.js.map +1 -0
- package/lib/components/system-debug-trace/icons/ai-specialist.d.ts +1 -0
- package/lib/components/system-debug-trace/icons/ai-specialist.js.map +1 -0
- package/lib/components/system-debug-trace/icons/arrow-progress.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/arrow-progress.js.map +1 -0
- package/lib/components/system-debug-trace/icons/brain.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/brain.js.map +1 -0
- package/lib/components/system-debug-trace/icons/caret-down.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/caret-down.js.map +1 -0
- package/lib/components/system-debug-trace/icons/caret-up.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/caret-up.js.map +1 -0
- package/lib/components/system-debug-trace/icons/circle-check.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/circle-check.js.map +1 -0
- package/lib/components/system-debug-trace/icons/code.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/code.js.map +1 -0
- package/lib/components/system-debug-trace/icons/file-pdf.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/file-pdf.js.map +1 -0
- package/lib/components/system-debug-trace/icons/file-word.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/file-word.js.map +1 -0
- package/lib/components/system-debug-trace/icons/hand.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/hand.js.map +1 -0
- package/lib/components/system-debug-trace/icons/head-set.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/head-set.js.map +1 -0
- package/lib/components/system-debug-trace/icons/index.js.map +1 -0
- package/lib/components/system-debug-trace/icons/life-ring.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/life-ring.js.map +1 -0
- package/lib/components/system-debug-trace/icons/link.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/link.js.map +1 -0
- package/lib/components/system-debug-trace/icons/quote-right.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/quote-right.js.map +1 -0
- package/lib/components/system-debug-trace/icons/screwdriver-wrench.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/screwdriver-wrench.js.map +1 -0
- package/lib/components/system-debug-trace/icons/split.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/split.js.map +1 -0
- package/lib/components/system-debug-trace/icons/wand.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/wand.js.map +1 -0
- package/lib/components/system-debug-trace/icons/window-restore.d.ts +2 -0
- package/lib/components/system-debug-trace/icons/window-restore.js.map +1 -0
- package/lib/components/system-debug-trace/index.d.ts +10 -0
- package/lib/components/system-debug-trace/index.js.map +1 -0
- package/lib/components/system-debug-trace/styles.js.map +1 -0
- package/lib/components/system-debug-trace/types.js.map +1 -0
- package/lib/components/text.d.ts +8 -0
- package/lib/components/text.js.map +1 -0
- package/lib/components/title.js.map +1 -0
- package/lib/components/video.d.ts +9 -0
- package/lib/components/video.js.map +1 -0
- package/lib/components/webchat-settings.js.map +1 -0
- package/lib/components/whatsapp-button-list.js.map +1 -0
- package/lib/components/whatsapp-catalog.js.map +1 -0
- package/lib/components/whatsapp-cta-url-button.js.map +1 -0
- package/lib/components/whatsapp-interactive-media-carousel.d.ts +31 -0
- package/lib/components/whatsapp-interactive-media-carousel.js.map +1 -0
- package/lib/components/whatsapp-media-carousel.js.map +1 -0
- package/lib/components/whatsapp-product-carousel.js.map +1 -0
- package/lib/components/whatsapp-product-list.js.map +1 -0
- package/lib/components/whatsapp-product.js.map +1 -0
- package/lib/components/whatsapp-request-contact-info.js.map +1 -0
- package/lib/components/whatsapp-template/index.js.map +1 -0
- package/lib/components/whatsapp-template/types.js.map +1 -0
- package/lib/constants.js.map +1 -0
- package/lib/contexts.js.map +1 -0
- package/lib/debug-system-messages.js.map +1 -0
- package/lib/dev-app.d.ts +213 -0
- package/lib/dev-app.js.map +1 -0
- package/lib/index-types.js.map +1 -0
- package/lib/index.js.map +1 -0
- package/lib/message-utils.js.map +1 -0
- package/lib/msg-to-botonic.js.map +1 -0
- package/lib/node-app.js.map +1 -0
- package/lib/react-bot.js.map +1 -0
- package/lib/shared/styles.js.map +1 -0
- package/lib/util/dom.js.map +1 -0
- package/lib/util/environment.js.map +1 -0
- package/lib/util/error-boundary.d.ts +7 -0
- package/lib/util/error-boundary.js.map +1 -0
- package/lib/util/functional.js.map +1 -0
- package/lib/util/i18n.js.map +1 -0
- package/lib/util/index.js.map +1 -0
- package/lib/util/logs.js.map +1 -0
- package/lib/util/objects.js.map +1 -0
- package/lib/util/react.js.map +1 -0
- package/lib/util/regexs.js.map +1 -0
- package/lib/util/strings.js.map +1 -0
- package/lib/util/webchat.js.map +1 -0
- package/lib/util/webviews.js.map +1 -0
- package/lib/webchat/chat-area/index.d.ts +1 -0
- package/lib/webchat/chat-area/index.js.map +1 -0
- package/lib/webchat/chat-area/styles.js.map +1 -0
- package/lib/webchat/components/common.d.ts +1 -0
- package/lib/webchat/components/common.js.map +1 -0
- package/lib/webchat/components/conditional-animation.d.ts +1 -0
- package/lib/webchat/components/conditional-animation.js.map +1 -0
- package/lib/webchat/components/opened-persistent-menu.d.ts +6 -0
- package/lib/webchat/components/opened-persistent-menu.js.map +1 -0
- package/lib/webchat/constants.js.map +1 -0
- package/lib/webchat/context/actions.js.map +1 -0
- package/lib/webchat/context/index.js.map +1 -0
- package/lib/webchat/context/messages-reducer.js.map +1 -0
- package/lib/webchat/context/types.js.map +1 -0
- package/lib/webchat/context/use-webchat.js.map +1 -0
- package/lib/webchat/context/webchat-reducer.js.map +1 -0
- package/lib/webchat/cover-component/index.d.ts +6 -0
- package/lib/webchat/cover-component/index.js.map +1 -0
- package/lib/webchat/custom-messages/index.js.map +1 -0
- package/lib/webchat/custom-messages/rating/icons/face-angry.d.ts +3 -0
- package/lib/webchat/custom-messages/rating/icons/face-angry.js.map +1 -0
- package/lib/webchat/custom-messages/rating/icons/face-frown.d.ts +3 -0
- package/lib/webchat/custom-messages/rating/icons/face-frown.js.map +1 -0
- package/lib/webchat/custom-messages/rating/icons/face-grin-beam.d.ts +3 -0
- package/lib/webchat/custom-messages/rating/icons/face-grin-beam.js.map +1 -0
- package/lib/webchat/custom-messages/rating/icons/face-meh.d.ts +3 -0
- package/lib/webchat/custom-messages/rating/icons/face-meh.js.map +1 -0
- package/lib/webchat/custom-messages/rating/icons/face-smile.d.ts +3 -0
- package/lib/webchat/custom-messages/rating/icons/face-smile.js.map +1 -0
- package/lib/webchat/custom-messages/rating/icons/index.js.map +1 -0
- package/lib/webchat/custom-messages/rating/icons/star.d.ts +3 -0
- package/lib/webchat/custom-messages/rating/icons/star.js.map +1 -0
- package/lib/webchat/custom-messages/rating/index.js.map +1 -0
- package/lib/webchat/custom-messages/rating/rating-selector.d.ts +11 -0
- package/lib/webchat/custom-messages/rating/rating-selector.js.map +1 -0
- package/lib/webchat/custom-messages/rating/smileys.d.ts +2 -0
- package/lib/webchat/custom-messages/rating/smileys.js.map +1 -0
- package/lib/webchat/custom-messages/rating/stars.d.ts +2 -0
- package/lib/webchat/custom-messages/rating/stars.js.map +1 -0
- package/lib/webchat/custom-messages/rating/styles.js.map +1 -0
- package/lib/webchat/custom-messages/rating/types.js.map +1 -0
- package/lib/webchat/devices/index.js.map +1 -0
- package/lib/webchat/header/default-header.d.ts +1 -0
- package/lib/webchat/header/default-header.js.map +1 -0
- package/lib/webchat/header/index.js.map +1 -0
- package/lib/webchat/header/styles.js.map +1 -0
- package/lib/webchat/hooks/index.js.map +1 -0
- package/lib/webchat/hooks/use-component-visible.js.map +1 -0
- package/lib/webchat/hooks/use-component-will-mount.js.map +1 -0
- package/lib/webchat/hooks/use-device-adapter.js.map +1 -0
- package/lib/webchat/hooks/use-previous.js.map +1 -0
- package/lib/webchat/hooks/use-scroll-to-bottom.js.map +1 -0
- package/lib/webchat/hooks/use-scrollbar-controller.js.map +1 -0
- package/lib/webchat/hooks/use-typing.js.map +1 -0
- package/lib/webchat/hooks/use-virtual-keyboard-detection.js.map +1 -0
- package/lib/webchat/hooks/use-webchat-dimensions.js.map +1 -0
- package/lib/webchat/hooks/use-webchat-resizer.js.map +1 -0
- package/lib/webchat/index-types.js.map +1 -0
- package/lib/webchat/index.js.map +1 -0
- package/lib/webchat/input-panel/attachment.d.ts +6 -0
- package/lib/webchat/input-panel/attachment.js.map +1 -0
- package/lib/webchat/input-panel/emoji-picker.d.ts +5 -0
- package/lib/webchat/input-panel/emoji-picker.js.map +1 -0
- package/lib/webchat/input-panel/index.d.ts +9 -0
- package/lib/webchat/input-panel/index.js.map +1 -0
- package/lib/webchat/input-panel/opened-emoji-picker.d.ts +6 -0
- package/lib/webchat/input-panel/opened-emoji-picker.js.map +1 -0
- package/lib/webchat/input-panel/persistent-menu.d.ts +5 -0
- package/lib/webchat/input-panel/persistent-menu.js.map +1 -0
- package/lib/webchat/input-panel/send-button.d.ts +5 -0
- package/lib/webchat/input-panel/send-button.js.map +1 -0
- package/lib/webchat/input-panel/styles.js.map +1 -0
- package/lib/webchat/input-panel/textarea.d.ts +10 -0
- package/lib/webchat/input-panel/textarea.js.map +1 -0
- package/lib/webchat/input-panel/typing-network-sender.js.map +1 -0
- package/lib/webchat/input-panel/use-typing-chat-event-sender.js.map +1 -0
- package/lib/webchat/input-panel/use-typing-session.js.map +1 -0
- package/lib/webchat/message-list/index.d.ts +2 -0
- package/lib/webchat/message-list/index.js +177 -0
- package/lib/webchat/message-list/index.js.map +1 -0
- package/lib/webchat/message-list/intro-message.d.ts +1 -0
- package/lib/webchat/message-list/intro-message.js.map +1 -0
- package/lib/webchat/message-list/scroll-button.js.map +1 -0
- package/lib/webchat/message-list/styles.js.map +1 -0
- package/lib/webchat/message-list/unread-messages-banner.js.map +1 -0
- package/lib/webchat/message-list/use-debounce.js.map +1 -0
- package/lib/webchat/message-list/use-notifications.js.map +1 -0
- package/lib/webchat/replies/index.d.ts +1 -0
- package/lib/webchat/replies/index.js.map +1 -0
- package/lib/webchat/replies/styles.js.map +1 -0
- package/lib/webchat/session-view.d.ts +1 -0
- package/lib/webchat/session-view.js.map +1 -0
- package/lib/webchat/styles.js.map +1 -0
- package/lib/webchat/theme/default-theme.js.map +1 -0
- package/lib/webchat/theme/types.js.map +1 -0
- package/lib/webchat/tracking.js.map +1 -0
- package/lib/webchat/trigger-button/index.js.map +1 -0
- package/lib/webchat/trigger-button/styles.js.map +1 -0
- package/lib/webchat/typing-indicator/index.js.map +1 -0
- package/lib/webchat/typing-indicator/styles.js.map +1 -0
- package/lib/webchat/use-storage-state-hook.js.map +1 -0
- package/lib/webchat/utils.js.map +1 -0
- package/lib/webchat/webchat-dev.js.map +1 -0
- package/lib/webchat/webchat.js.map +1 -0
- package/lib/webchat/webview/header.d.ts +1 -0
- package/lib/webchat/webview/header.js.map +1 -0
- package/lib/webchat/webview/index.d.ts +6 -0
- package/lib/webchat/webview/index.js.map +1 -0
- package/lib/webchat/webview/styles.js.map +1 -0
- package/lib/webchat-app.d.ts +114 -0
- package/lib/webchat-app.js.map +1 -0
- package/lib/webview-app.js.map +1 -0
- package/package.json +11 -14
- package/src/components/multichannel/index.ts +7 -6
- package/src/webchat/message-list/index.tsx +1 -0
- package/src/webchat/webchat.tsx +1 -0
- package/lib/esm/app.js.map +0 -1
- package/lib/esm/botonic-tester.js.map +0 -1
- package/lib/esm/components/audio.d.ts +0 -9
- package/lib/esm/components/audio.js.map +0 -1
- package/lib/esm/components/button/index.js.map +0 -1
- package/lib/esm/components/button/styles.js.map +0 -1
- package/lib/esm/components/buttons-disabler.js.map +0 -1
- package/lib/esm/components/carousel.d.ts +0 -10
- package/lib/esm/components/carousel.js.map +0 -1
- package/lib/esm/components/components.js.map +0 -1
- package/lib/esm/components/constants.js.map +0 -1
- package/lib/esm/components/custom-message.js.map +0 -1
- package/lib/esm/components/document.d.ts +0 -9
- package/lib/esm/components/document.js.map +0 -1
- package/lib/esm/components/element.js.map +0 -1
- package/lib/esm/components/handoff.d.ts +0 -1
- package/lib/esm/components/handoff.js.map +0 -1
- package/lib/esm/components/image.d.ts +0 -9
- package/lib/esm/components/image.js.map +0 -1
- package/lib/esm/components/index-types.js.map +0 -1
- package/lib/esm/components/index.js.map +0 -1
- package/lib/esm/components/location.js.map +0 -1
- package/lib/esm/components/markdown.js.map +0 -1
- package/lib/esm/components/message/index.js.map +0 -1
- package/lib/esm/components/message/message-footer.d.ts +0 -8
- package/lib/esm/components/message/message-footer.js.map +0 -1
- package/lib/esm/components/message/message-image.js.map +0 -1
- package/lib/esm/components/message/styles.js.map +0 -1
- package/lib/esm/components/message/timestamps.d.ts +0 -13
- package/lib/esm/components/message/timestamps.js.map +0 -1
- package/lib/esm/components/message-template.js.map +0 -1
- package/lib/esm/components/multichannel/facebook/facebook.js.map +0 -1
- package/lib/esm/components/multichannel/index-types.js.map +0 -1
- package/lib/esm/components/multichannel/index.d.ts +0 -11
- package/lib/esm/components/multichannel/index.js +0 -25
- package/lib/esm/components/multichannel/index.js.map +0 -1
- package/lib/esm/components/multichannel/multichannel-button.d.ts +0 -4
- package/lib/esm/components/multichannel/multichannel-button.js.map +0 -1
- package/lib/esm/components/multichannel/multichannel-carousel.d.ts +0 -1
- package/lib/esm/components/multichannel/multichannel-carousel.js.map +0 -1
- package/lib/esm/components/multichannel/multichannel-context.js.map +0 -1
- package/lib/esm/components/multichannel/multichannel-reply.d.ts +0 -4
- package/lib/esm/components/multichannel/multichannel-reply.js.map +0 -1
- package/lib/esm/components/multichannel/multichannel-text.d.ts +0 -1
- package/lib/esm/components/multichannel/multichannel-text.js.map +0 -1
- package/lib/esm/components/multichannel/multichannel-utils.js.map +0 -1
- package/lib/esm/components/multichannel/multichannel.js.map +0 -1
- package/lib/esm/components/multichannel/whatsapp/constants.js.map +0 -1
- package/lib/esm/components/multichannel/whatsapp/markdown-meta.js.map +0 -1
- package/lib/esm/components/pic.js.map +0 -1
- package/lib/esm/components/raw.d.ts +0 -9
- package/lib/esm/components/raw.js.map +0 -1
- package/lib/esm/components/reply.js.map +0 -1
- package/lib/esm/components/share-button.js.map +0 -1
- package/lib/esm/components/subtitle.js.map +0 -1
- package/lib/esm/components/system-debug-trace/debug-message.d.ts +0 -7
- package/lib/esm/components/system-debug-trace/debug-message.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/ai-agent/ai-agent.d.ts +0 -4
- package/lib/esm/components/system-debug-trace/events/ai-agent/ai-agent.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/ai-agent/executed-tools.d.ts +0 -7
- package/lib/esm/components/system-debug-trace/events/ai-agent/executed-tools.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/ai-agent/index.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/ai-agent/parse-tools.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/ai-agent/rehydrate-ai-agent-event.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/ai-agent/types.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/ai-agent/use-rehydrated-ai-agent-event.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/ai-agent-router/ai-agent-router.d.ts +0 -4
- package/lib/esm/components/system-debug-trace/events/ai-agent-router/ai-agent-router.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/ai-agent-router/index.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/ai-agent-router/types.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/bot-action.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/components/guardrail-item.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/components/index.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/components/sources-section.d.ts +0 -11
- package/lib/esm/components/system-debug-trace/events/components/sources-section.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/conditional-channel.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/conditional-country.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/conditional-custom.d.ts +0 -10
- package/lib/esm/components/system-debug-trace/events/conditional-custom.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/conditional-queue-status.d.ts +0 -11
- package/lib/esm/components/system-debug-trace/events/conditional-queue-status.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/constants.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/fallback.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/handoff-success.d.ts +0 -11
- package/lib/esm/components/system-debug-trace/events/handoff-success.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/index.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/keyword.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/knowledge-bases-types.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/redirect-flow.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/smart-intent.js.map +0 -1
- package/lib/esm/components/system-debug-trace/events/webview-action-triggered.d.ts +0 -10
- package/lib/esm/components/system-debug-trace/events/webview-action-triggered.js.map +0 -1
- package/lib/esm/components/system-debug-trace/hooks/use-knowledge-base-info.d.ts +0 -16
- package/lib/esm/components/system-debug-trace/hooks/use-knowledge-base-info.js.map +0 -1
- package/lib/esm/components/system-debug-trace/hooks/use-last-label-position.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/ai-router.d.ts +0 -1
- package/lib/esm/components/system-debug-trace/icons/ai-router.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/ai-specialist.d.ts +0 -1
- package/lib/esm/components/system-debug-trace/icons/ai-specialist.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/arrow-progress.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/arrow-progress.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/brain.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/brain.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/caret-down.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/caret-down.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/caret-up.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/caret-up.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/circle-check.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/circle-check.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/code.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/code.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/file-pdf.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/file-pdf.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/file-word.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/file-word.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/hand.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/hand.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/head-set.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/head-set.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/index.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/life-ring.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/life-ring.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/link.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/link.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/quote-right.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/quote-right.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/screwdriver-wrench.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/screwdriver-wrench.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/split.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/split.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/wand.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/wand.js.map +0 -1
- package/lib/esm/components/system-debug-trace/icons/window-restore.d.ts +0 -2
- package/lib/esm/components/system-debug-trace/icons/window-restore.js.map +0 -1
- package/lib/esm/components/system-debug-trace/index.d.ts +0 -10
- package/lib/esm/components/system-debug-trace/index.js.map +0 -1
- package/lib/esm/components/system-debug-trace/styles.js.map +0 -1
- package/lib/esm/components/system-debug-trace/types.js.map +0 -1
- package/lib/esm/components/text.d.ts +0 -8
- package/lib/esm/components/text.js.map +0 -1
- package/lib/esm/components/title.js.map +0 -1
- package/lib/esm/components/video.d.ts +0 -9
- package/lib/esm/components/video.js.map +0 -1
- package/lib/esm/components/webchat-settings.js.map +0 -1
- package/lib/esm/components/whatsapp-button-list.js.map +0 -1
- package/lib/esm/components/whatsapp-catalog.js.map +0 -1
- package/lib/esm/components/whatsapp-cta-url-button.js.map +0 -1
- package/lib/esm/components/whatsapp-interactive-media-carousel.d.ts +0 -31
- package/lib/esm/components/whatsapp-interactive-media-carousel.js.map +0 -1
- package/lib/esm/components/whatsapp-media-carousel.js.map +0 -1
- package/lib/esm/components/whatsapp-product-carousel.js.map +0 -1
- package/lib/esm/components/whatsapp-product-list.js.map +0 -1
- package/lib/esm/components/whatsapp-product.js.map +0 -1
- package/lib/esm/components/whatsapp-request-contact-info.js.map +0 -1
- package/lib/esm/components/whatsapp-template/index.js.map +0 -1
- package/lib/esm/components/whatsapp-template/types.js.map +0 -1
- package/lib/esm/constants.js.map +0 -1
- package/lib/esm/contexts.js.map +0 -1
- package/lib/esm/debug-system-messages.js.map +0 -1
- package/lib/esm/dev-app.d.ts +0 -213
- package/lib/esm/dev-app.js.map +0 -1
- package/lib/esm/index-types.js.map +0 -1
- package/lib/esm/index.js.map +0 -1
- package/lib/esm/message-utils.js.map +0 -1
- package/lib/esm/msg-to-botonic.js.map +0 -1
- package/lib/esm/node-app.js.map +0 -1
- package/lib/esm/package.json +0 -3
- package/lib/esm/react-bot.js.map +0 -1
- package/lib/esm/shared/styles.js.map +0 -1
- package/lib/esm/util/dom.js.map +0 -1
- package/lib/esm/util/environment.js.map +0 -1
- package/lib/esm/util/error-boundary.d.ts +0 -7
- package/lib/esm/util/error-boundary.js.map +0 -1
- package/lib/esm/util/functional.js.map +0 -1
- package/lib/esm/util/i18n.js.map +0 -1
- package/lib/esm/util/index.js.map +0 -1
- package/lib/esm/util/logs.js.map +0 -1
- package/lib/esm/util/objects.js.map +0 -1
- package/lib/esm/util/react.js.map +0 -1
- package/lib/esm/util/regexs.js.map +0 -1
- package/lib/esm/util/strings.js.map +0 -1
- package/lib/esm/util/webchat.js.map +0 -1
- package/lib/esm/util/webviews.js.map +0 -1
- package/lib/esm/webchat/chat-area/index.d.ts +0 -1
- package/lib/esm/webchat/chat-area/index.js.map +0 -1
- package/lib/esm/webchat/chat-area/styles.js.map +0 -1
- package/lib/esm/webchat/components/common.d.ts +0 -1
- package/lib/esm/webchat/components/common.js.map +0 -1
- package/lib/esm/webchat/components/conditional-animation.d.ts +0 -1
- package/lib/esm/webchat/components/conditional-animation.js.map +0 -1
- package/lib/esm/webchat/components/opened-persistent-menu.d.ts +0 -6
- package/lib/esm/webchat/components/opened-persistent-menu.js.map +0 -1
- package/lib/esm/webchat/constants.js.map +0 -1
- package/lib/esm/webchat/context/actions.js.map +0 -1
- package/lib/esm/webchat/context/index.js.map +0 -1
- package/lib/esm/webchat/context/messages-reducer.js.map +0 -1
- package/lib/esm/webchat/context/types.js.map +0 -1
- package/lib/esm/webchat/context/use-webchat.js.map +0 -1
- package/lib/esm/webchat/context/webchat-reducer.js.map +0 -1
- package/lib/esm/webchat/cover-component/index.d.ts +0 -6
- package/lib/esm/webchat/cover-component/index.js.map +0 -1
- package/lib/esm/webchat/custom-messages/index.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/icons/face-angry.d.ts +0 -3
- package/lib/esm/webchat/custom-messages/rating/icons/face-angry.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/icons/face-frown.d.ts +0 -3
- package/lib/esm/webchat/custom-messages/rating/icons/face-frown.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/icons/face-grin-beam.d.ts +0 -3
- package/lib/esm/webchat/custom-messages/rating/icons/face-grin-beam.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/icons/face-meh.d.ts +0 -3
- package/lib/esm/webchat/custom-messages/rating/icons/face-meh.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/icons/face-smile.d.ts +0 -3
- package/lib/esm/webchat/custom-messages/rating/icons/face-smile.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/icons/index.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/icons/star.d.ts +0 -3
- package/lib/esm/webchat/custom-messages/rating/icons/star.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/index.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/rating-selector.d.ts +0 -11
- package/lib/esm/webchat/custom-messages/rating/rating-selector.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/smileys.d.ts +0 -2
- package/lib/esm/webchat/custom-messages/rating/smileys.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/stars.d.ts +0 -2
- package/lib/esm/webchat/custom-messages/rating/stars.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/styles.js.map +0 -1
- package/lib/esm/webchat/custom-messages/rating/types.js.map +0 -1
- package/lib/esm/webchat/devices/index.js.map +0 -1
- package/lib/esm/webchat/header/default-header.d.ts +0 -1
- package/lib/esm/webchat/header/default-header.js.map +0 -1
- package/lib/esm/webchat/header/index.js.map +0 -1
- package/lib/esm/webchat/header/styles.js.map +0 -1
- package/lib/esm/webchat/hooks/index.js.map +0 -1
- package/lib/esm/webchat/hooks/use-component-visible.js.map +0 -1
- package/lib/esm/webchat/hooks/use-component-will-mount.js.map +0 -1
- package/lib/esm/webchat/hooks/use-device-adapter.js.map +0 -1
- package/lib/esm/webchat/hooks/use-previous.js.map +0 -1
- package/lib/esm/webchat/hooks/use-scroll-to-bottom.js.map +0 -1
- package/lib/esm/webchat/hooks/use-scrollbar-controller.js.map +0 -1
- package/lib/esm/webchat/hooks/use-typing.js.map +0 -1
- package/lib/esm/webchat/hooks/use-virtual-keyboard-detection.js.map +0 -1
- package/lib/esm/webchat/hooks/use-webchat-dimensions.js.map +0 -1
- package/lib/esm/webchat/hooks/use-webchat-resizer.js.map +0 -1
- package/lib/esm/webchat/index-types.js.map +0 -1
- package/lib/esm/webchat/index.js.map +0 -1
- package/lib/esm/webchat/input-panel/attachment.d.ts +0 -6
- package/lib/esm/webchat/input-panel/attachment.js.map +0 -1
- package/lib/esm/webchat/input-panel/emoji-picker.d.ts +0 -5
- package/lib/esm/webchat/input-panel/emoji-picker.js.map +0 -1
- package/lib/esm/webchat/input-panel/index.d.ts +0 -9
- package/lib/esm/webchat/input-panel/index.js.map +0 -1
- package/lib/esm/webchat/input-panel/opened-emoji-picker.d.ts +0 -6
- package/lib/esm/webchat/input-panel/opened-emoji-picker.js.map +0 -1
- package/lib/esm/webchat/input-panel/persistent-menu.d.ts +0 -5
- package/lib/esm/webchat/input-panel/persistent-menu.js.map +0 -1
- package/lib/esm/webchat/input-panel/send-button.d.ts +0 -5
- package/lib/esm/webchat/input-panel/send-button.js.map +0 -1
- package/lib/esm/webchat/input-panel/styles.js.map +0 -1
- package/lib/esm/webchat/input-panel/textarea.d.ts +0 -10
- package/lib/esm/webchat/input-panel/textarea.js.map +0 -1
- package/lib/esm/webchat/input-panel/typing-network-sender.js.map +0 -1
- package/lib/esm/webchat/input-panel/use-typing-chat-event-sender.js.map +0 -1
- package/lib/esm/webchat/input-panel/use-typing-session.js.map +0 -1
- package/lib/esm/webchat/message-list/index.d.ts +0 -1
- package/lib/esm/webchat/message-list/index.js +0 -176
- package/lib/esm/webchat/message-list/index.js.map +0 -1
- package/lib/esm/webchat/message-list/intro-message.d.ts +0 -1
- package/lib/esm/webchat/message-list/intro-message.js.map +0 -1
- package/lib/esm/webchat/message-list/scroll-button.js.map +0 -1
- package/lib/esm/webchat/message-list/styles.js.map +0 -1
- package/lib/esm/webchat/message-list/unread-messages-banner.js.map +0 -1
- package/lib/esm/webchat/message-list/use-debounce.js.map +0 -1
- package/lib/esm/webchat/message-list/use-notifications.js.map +0 -1
- package/lib/esm/webchat/replies/index.d.ts +0 -1
- package/lib/esm/webchat/replies/index.js.map +0 -1
- package/lib/esm/webchat/replies/styles.js.map +0 -1
- package/lib/esm/webchat/session-view.d.ts +0 -1
- package/lib/esm/webchat/session-view.js.map +0 -1
- package/lib/esm/webchat/styles.js.map +0 -1
- package/lib/esm/webchat/theme/default-theme.js.map +0 -1
- package/lib/esm/webchat/theme/types.js.map +0 -1
- package/lib/esm/webchat/tracking.js.map +0 -1
- package/lib/esm/webchat/trigger-button/index.js.map +0 -1
- package/lib/esm/webchat/trigger-button/styles.js.map +0 -1
- package/lib/esm/webchat/typing-indicator/index.js.map +0 -1
- package/lib/esm/webchat/typing-indicator/styles.js.map +0 -1
- package/lib/esm/webchat/use-storage-state-hook.js.map +0 -1
- package/lib/esm/webchat/utils.js.map +0 -1
- package/lib/esm/webchat/webchat-dev.js.map +0 -1
- package/lib/esm/webchat/webchat.js.map +0 -1
- package/lib/esm/webchat/webview/header.d.ts +0 -1
- package/lib/esm/webchat/webview/header.js.map +0 -1
- package/lib/esm/webchat/webview/index.d.ts +0 -6
- package/lib/esm/webchat/webview/index.js.map +0 -1
- package/lib/esm/webchat/webview/styles.js.map +0 -1
- package/lib/esm/webchat-app.d.ts +0 -114
- package/lib/esm/webchat-app.js.map +0 -1
- package/lib/esm/webview-app.js.map +0 -1
- /package/lib/{esm/app.d.ts → app.d.ts} +0 -0
- /package/lib/{esm/app.js → app.js} +0 -0
- /package/lib/{esm/assets → assets}/arrow-down.svg +0 -0
- /package/lib/{esm/assets → assets}/arrow-scroll-down.svg +0 -0
- /package/lib/{esm/assets → assets}/attachment-icon.svg +0 -0
- /package/lib/{esm/assets → assets}/audio.svg +0 -0
- /package/lib/{esm/assets → assets}/botonic_react_logo100x100.png +0 -0
- /package/lib/{esm/assets → assets}/document.svg +0 -0
- /package/lib/{esm/assets → assets}/emojiButton.svg +0 -0
- /package/lib/{esm/assets → assets}/image.svg +0 -0
- /package/lib/{esm/assets → assets}/leftArrow.svg +0 -0
- /package/lib/{esm/assets → assets}/menuButton.svg +0 -0
- /package/lib/{esm/assets → assets}/rightArrow.svg +0 -0
- /package/lib/{esm/assets → assets}/send-button.svg +0 -0
- /package/lib/{esm/assets → assets}/thumbs-down.svg +0 -0
- /package/lib/{esm/assets → assets}/thumbs-up.svg +0 -0
- /package/lib/{esm/assets → assets}/types.d.ts +0 -0
- /package/lib/{esm/assets → assets}/url-icon.png +0 -0
- /package/lib/{esm/assets → assets}/video.svg +0 -0
- /package/lib/{esm/botonic-tester.d.ts → botonic-tester.d.ts} +0 -0
- /package/lib/{esm/botonic-tester.js → botonic-tester.js} +0 -0
- /package/lib/{esm/components → components}/audio.js +0 -0
- /package/lib/{esm/components → components}/button/index.d.ts +0 -0
- /package/lib/{esm/components → components}/button/index.js +0 -0
- /package/lib/{esm/components → components}/button/styles.d.ts +0 -0
- /package/lib/{esm/components → components}/button/styles.js +0 -0
- /package/lib/{esm/components → components}/buttons-disabler.d.ts +0 -0
- /package/lib/{esm/components → components}/buttons-disabler.js +0 -0
- /package/lib/{esm/components → components}/carousel.js +0 -0
- /package/lib/{esm/components → components}/components.d.ts +0 -0
- /package/lib/{esm/components → components}/components.js +0 -0
- /package/lib/{esm/components → components}/constants.d.ts +0 -0
- /package/lib/{esm/components → components}/constants.js +0 -0
- /package/lib/{esm/components → components}/custom-message.d.ts +0 -0
- /package/lib/{esm/components → components}/custom-message.js +0 -0
- /package/lib/{esm/components → components}/document.js +0 -0
- /package/lib/{esm/components → components}/element.d.ts +0 -0
- /package/lib/{esm/components → components}/element.js +0 -0
- /package/lib/{esm/components → components}/handoff.js +0 -0
- /package/lib/{esm/components → components}/image.js +0 -0
- /package/lib/{esm/components → components}/index-types.d.ts +0 -0
- /package/lib/{esm/components → components}/index-types.js +0 -0
- /package/lib/{esm/components → components}/index.d.ts +0 -0
- /package/lib/{esm/components → components}/index.js +0 -0
- /package/lib/{esm/components → components}/location.d.ts +0 -0
- /package/lib/{esm/components → components}/location.js +0 -0
- /package/lib/{esm/components → components}/markdown.d.ts +0 -0
- /package/lib/{esm/components → components}/markdown.js +0 -0
- /package/lib/{esm/components → components}/message/index.d.ts +0 -0
- /package/lib/{esm/components → components}/message/index.js +0 -0
- /package/lib/{esm/components → components}/message/message-footer.js +0 -0
- /package/lib/{esm/components → components}/message/message-image.d.ts +0 -0
- /package/lib/{esm/components → components}/message/message-image.js +0 -0
- /package/lib/{esm/components → components}/message/styles.d.ts +0 -0
- /package/lib/{esm/components → components}/message/styles.js +0 -0
- /package/lib/{esm/components → components}/message/timestamps.js +0 -0
- /package/lib/{esm/components → components}/message-template.d.ts +0 -0
- /package/lib/{esm/components → components}/message-template.js +0 -0
- /package/lib/{esm/components → components}/multichannel/facebook/facebook.d.ts +0 -0
- /package/lib/{esm/components → components}/multichannel/facebook/facebook.js +0 -0
- /package/lib/{esm/components → components}/multichannel/index-types.d.ts +0 -0
- /package/lib/{esm/components → components}/multichannel/index-types.js +0 -0
- /package/lib/{esm/components → components}/multichannel/multichannel-button.js +0 -0
- /package/lib/{esm/components → components}/multichannel/multichannel-carousel.js +0 -0
- /package/lib/{esm/components → components}/multichannel/multichannel-context.d.ts +0 -0
- /package/lib/{esm/components → components}/multichannel/multichannel-context.js +0 -0
- /package/lib/{esm/components → components}/multichannel/multichannel-reply.js +0 -0
- /package/lib/{esm/components → components}/multichannel/multichannel-text.js +0 -0
- /package/lib/{esm/components → components}/multichannel/multichannel-utils.d.ts +0 -0
- /package/lib/{esm/components → components}/multichannel/multichannel-utils.js +0 -0
- /package/lib/{esm/components → components}/multichannel/multichannel.d.ts +0 -0
- /package/lib/{esm/components → components}/multichannel/multichannel.js +0 -0
- /package/lib/{esm/components → components}/multichannel/whatsapp/constants.d.ts +0 -0
- /package/lib/{esm/components → components}/multichannel/whatsapp/constants.js +0 -0
- /package/lib/{esm/components → components}/multichannel/whatsapp/markdown-meta.d.ts +0 -0
- /package/lib/{esm/components → components}/multichannel/whatsapp/markdown-meta.js +0 -0
- /package/lib/{esm/components → components}/pic.d.ts +0 -0
- /package/lib/{esm/components → components}/pic.js +0 -0
- /package/lib/{esm/components → components}/raw.js +0 -0
- /package/lib/{esm/components → components}/reply.d.ts +0 -0
- /package/lib/{esm/components → components}/reply.js +0 -0
- /package/lib/{esm/components → components}/share-button.d.ts +0 -0
- /package/lib/{esm/components → components}/share-button.js +0 -0
- /package/lib/{esm/components → components}/subtitle.d.ts +0 -0
- /package/lib/{esm/components → components}/subtitle.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/debug-message.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/ai-agent.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/executed-tools.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/index.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/index.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/parse-tools.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/parse-tools.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/rehydrate-ai-agent-event.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/rehydrate-ai-agent-event.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/types.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/types.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/use-rehydrated-ai-agent-event.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent/use-rehydrated-ai-agent-event.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent-router/ai-agent-router.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent-router/index.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent-router/index.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent-router/types.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/ai-agent-router/types.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/bot-action.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/bot-action.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/components/guardrail-item.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/components/guardrail-item.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/components/index.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/components/index.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/components/sources-section.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/conditional-channel.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/conditional-channel.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/conditional-country.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/conditional-country.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/conditional-custom.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/conditional-queue-status.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/constants.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/constants.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/fallback.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/fallback.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/handoff-success.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/index.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/index.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/keyword.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/keyword.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/knowledge-bases-types.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/knowledge-bases-types.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/redirect-flow.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/redirect-flow.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/smart-intent.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/smart-intent.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/events/webview-action-triggered.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/hooks/use-knowledge-base-info.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/hooks/use-last-label-position.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/hooks/use-last-label-position.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/ai-router.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/ai-specialist.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/arrow-progress.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/brain.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/caret-down.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/caret-up.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/circle-check.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/code.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/file-pdf.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/file-word.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/hand.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/head-set.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/index.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/index.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/life-ring.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/link.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/quote-right.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/screwdriver-wrench.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/split.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/wand.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/icons/window-restore.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/index.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/styles.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/styles.js +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/types.d.ts +0 -0
- /package/lib/{esm/components → components}/system-debug-trace/types.js +0 -0
- /package/lib/{esm/components → components}/text.js +0 -0
- /package/lib/{esm/components → components}/title.d.ts +0 -0
- /package/lib/{esm/components → components}/title.js +0 -0
- /package/lib/{esm/components → components}/video.js +0 -0
- /package/lib/{esm/components → components}/webchat-settings.d.ts +0 -0
- /package/lib/{esm/components → components}/webchat-settings.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-button-list.d.ts +0 -0
- /package/lib/{esm/components → components}/whatsapp-button-list.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-catalog.d.ts +0 -0
- /package/lib/{esm/components → components}/whatsapp-catalog.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-cta-url-button.d.ts +0 -0
- /package/lib/{esm/components → components}/whatsapp-cta-url-button.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-interactive-media-carousel.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-media-carousel.d.ts +0 -0
- /package/lib/{esm/components → components}/whatsapp-media-carousel.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-product-carousel.d.ts +0 -0
- /package/lib/{esm/components → components}/whatsapp-product-carousel.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-product-list.d.ts +0 -0
- /package/lib/{esm/components → components}/whatsapp-product-list.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-product.d.ts +0 -0
- /package/lib/{esm/components → components}/whatsapp-product.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-request-contact-info.d.ts +0 -0
- /package/lib/{esm/components → components}/whatsapp-request-contact-info.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-template/index.d.ts +0 -0
- /package/lib/{esm/components → components}/whatsapp-template/index.js +0 -0
- /package/lib/{esm/components → components}/whatsapp-template/types.d.ts +0 -0
- /package/lib/{esm/components → components}/whatsapp-template/types.js +0 -0
- /package/lib/{esm/constants.d.ts → constants.d.ts} +0 -0
- /package/lib/{esm/constants.js → constants.js} +0 -0
- /package/lib/{esm/contexts.d.ts → contexts.d.ts} +0 -0
- /package/lib/{esm/contexts.js → contexts.js} +0 -0
- /package/lib/{esm/debug-system-messages.d.ts → debug-system-messages.d.ts} +0 -0
- /package/lib/{esm/debug-system-messages.js → debug-system-messages.js} +0 -0
- /package/lib/{esm/dev-app.js → dev-app.js} +0 -0
- /package/lib/{esm/index-types.d.ts → index-types.d.ts} +0 -0
- /package/lib/{esm/index-types.js → index-types.js} +0 -0
- /package/lib/{esm/index.d.ts → index.d.ts} +0 -0
- /package/lib/{esm/index.js → index.js} +0 -0
- /package/lib/{esm/message-utils.d.ts → message-utils.d.ts} +0 -0
- /package/lib/{esm/message-utils.js → message-utils.js} +0 -0
- /package/lib/{esm/msg-to-botonic.d.ts → msg-to-botonic.d.ts} +0 -0
- /package/lib/{esm/msg-to-botonic.js → msg-to-botonic.js} +0 -0
- /package/lib/{esm/node-app.d.ts → node-app.d.ts} +0 -0
- /package/lib/{esm/node-app.js → node-app.js} +0 -0
- /package/lib/{esm/react-bot.d.ts → react-bot.d.ts} +0 -0
- /package/lib/{esm/react-bot.js → react-bot.js} +0 -0
- /package/lib/{esm/shared → shared}/styles.d.ts +0 -0
- /package/lib/{esm/shared → shared}/styles.js +0 -0
- /package/lib/{esm/util → util}/dom.d.ts +0 -0
- /package/lib/{esm/util → util}/dom.js +0 -0
- /package/lib/{esm/util → util}/environment.d.ts +0 -0
- /package/lib/{esm/util → util}/environment.js +0 -0
- /package/lib/{esm/util → util}/error-boundary.js +0 -0
- /package/lib/{esm/util → util}/functional.d.ts +0 -0
- /package/lib/{esm/util → util}/functional.js +0 -0
- /package/lib/{esm/util → util}/i18n.d.ts +0 -0
- /package/lib/{esm/util → util}/i18n.js +0 -0
- /package/lib/{esm/util → util}/index.d.ts +0 -0
- /package/lib/{esm/util → util}/index.js +0 -0
- /package/lib/{esm/util → util}/logs.d.ts +0 -0
- /package/lib/{esm/util → util}/logs.js +0 -0
- /package/lib/{esm/util → util}/objects.d.ts +0 -0
- /package/lib/{esm/util → util}/objects.js +0 -0
- /package/lib/{esm/util → util}/react.d.ts +0 -0
- /package/lib/{esm/util → util}/react.js +0 -0
- /package/lib/{esm/util → util}/regexs.d.ts +0 -0
- /package/lib/{esm/util → util}/regexs.js +0 -0
- /package/lib/{esm/util → util}/strings.d.ts +0 -0
- /package/lib/{esm/util → util}/strings.js +0 -0
- /package/lib/{esm/util → util}/webchat.d.ts +0 -0
- /package/lib/{esm/util → util}/webchat.js +0 -0
- /package/lib/{esm/util → util}/webviews.d.ts +0 -0
- /package/lib/{esm/util → util}/webviews.js +0 -0
- /package/lib/{esm/webchat → webchat}/chat-area/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/chat-area/styles.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/chat-area/styles.js +0 -0
- /package/lib/{esm/webchat → webchat}/components/common.js +0 -0
- /package/lib/{esm/webchat → webchat}/components/conditional-animation.js +0 -0
- /package/lib/{esm/webchat → webchat}/components/opened-persistent-menu.js +0 -0
- /package/lib/{esm/webchat → webchat}/constants.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/constants.js +0 -0
- /package/lib/{esm/webchat → webchat}/context/actions.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/context/actions.js +0 -0
- /package/lib/{esm/webchat → webchat}/context/index.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/context/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/context/messages-reducer.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/context/messages-reducer.js +0 -0
- /package/lib/{esm/webchat → webchat}/context/types.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/context/types.js +0 -0
- /package/lib/{esm/webchat → webchat}/context/use-webchat.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/context/use-webchat.js +0 -0
- /package/lib/{esm/webchat → webchat}/context/webchat-reducer.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/context/webchat-reducer.js +0 -0
- /package/lib/{esm/webchat → webchat}/cover-component/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/index.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/icons/face-angry.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/icons/face-frown.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/icons/face-grin-beam.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/icons/face-meh.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/icons/face-smile.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/icons/index.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/icons/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/icons/star.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/index.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/rating-selector.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/smileys.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/stars.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/styles.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/styles.js +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/types.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/custom-messages/rating/types.js +0 -0
- /package/lib/{esm/webchat → webchat}/devices/index.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/devices/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/global.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/header/default-header.js +0 -0
- /package/lib/{esm/webchat → webchat}/header/index.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/header/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/header/styles.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/header/styles.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/index.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-component-visible.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-component-visible.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-component-will-mount.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-component-will-mount.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-device-adapter.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-device-adapter.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-previous.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-previous.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-scroll-to-bottom.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-scroll-to-bottom.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-scrollbar-controller.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-scrollbar-controller.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-typing.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-typing.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-virtual-keyboard-detection.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-virtual-keyboard-detection.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-webchat-dimensions.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-webchat-dimensions.js +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-webchat-resizer.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/hooks/use-webchat-resizer.js +0 -0
- /package/lib/{esm/webchat → webchat}/index-types.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/index-types.js +0 -0
- /package/lib/{esm/webchat → webchat}/index.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/attachment.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/emoji-picker.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/opened-emoji-picker.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/persistent-menu.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/send-button.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/styles.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/styles.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/textarea.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/typing-network-sender.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/typing-network-sender.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/use-typing-chat-event-sender.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/use-typing-chat-event-sender.js +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/use-typing-session.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/input-panel/use-typing-session.js +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/intro-message.js +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/scroll-button.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/scroll-button.js +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/styles.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/styles.js +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/unread-messages-banner.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/unread-messages-banner.js +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/use-debounce.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/use-debounce.js +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/use-notifications.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/message-list/use-notifications.js +0 -0
- /package/lib/{esm/webchat → webchat}/replies/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/replies/styles.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/replies/styles.js +0 -0
- /package/lib/{esm/webchat → webchat}/session-view.js +0 -0
- /package/lib/{esm/webchat → webchat}/styles.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/styles.js +0 -0
- /package/lib/{esm/webchat → webchat}/theme/default-theme.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/theme/default-theme.js +0 -0
- /package/lib/{esm/webchat → webchat}/theme/theme.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/theme/types.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/theme/types.js +0 -0
- /package/lib/{esm/webchat → webchat}/tracking.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/tracking.js +0 -0
- /package/lib/{esm/webchat → webchat}/trigger-button/index.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/trigger-button/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/trigger-button/styles.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/trigger-button/styles.js +0 -0
- /package/lib/{esm/webchat → webchat}/typing-indicator/index.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/typing-indicator/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/typing-indicator/styles.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/typing-indicator/styles.js +0 -0
- /package/lib/{esm/webchat → webchat}/use-storage-state-hook.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/use-storage-state-hook.js +0 -0
- /package/lib/{esm/webchat → webchat}/utils.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/utils.js +0 -0
- /package/lib/{esm/webchat → webchat}/webchat-dev.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/webchat-dev.js +0 -0
- /package/lib/{esm/webchat → webchat}/webchat.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/webchat.js +0 -0
- /package/lib/{esm/webchat → webchat}/webview/header.js +0 -0
- /package/lib/{esm/webchat → webchat}/webview/index.js +0 -0
- /package/lib/{esm/webchat → webchat}/webview/styles.d.ts +0 -0
- /package/lib/{esm/webchat → webchat}/webview/styles.js +0 -0
- /package/lib/{esm/webchat-app.js → webchat-app.js} +0 -0
- /package/lib/{esm/webchat.template.html → webchat.template.html} +0 -0
- /package/lib/{esm/webview-app.d.ts → webview-app.d.ts} +0 -0
- /package/lib/{esm/webview-app.js → webview-app.js} +0 -0
- /package/lib/{esm/webview.template.html → webview.template.html} +0 -0
package/lib/esm/util/i18n.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util/i18n.js","sources":["../../../src/util/i18n.ts"],"sourcesContent":["/* eslint-disable filenames/match-regex */\n/**\n * Normalizes a locale string to a valid format.\n * Keeps letter-based region codes (e.g., 'en-GB', 'es-ES') but strips\n * numeric UN M.49 region codes (e.g., 'es-419' -> 'es').\n * Handles both dash and underscore separators.\n * @example\n * normalizeLocale('en-GB') // 'en-GB' (letter region preserved)\n * normalizeLocale('es-419') // 'es' (numeric region stripped)\n * normalizeLocale('zh-Hans-CN') // 'zh-CN' (script stripped, letter region preserved)\n * normalizeLocale('en_US') // 'en-US' (underscore normalized)\n */\nexport function normalizeLocale(locale = navigator.language) {\n // Normalize underscore separators to dashes (some systems use underscores)\n const normalizedLocale = locale.replace(/_/g, '-')\n try {\n const parsed = new Intl.Locale(normalizedLocale)\n const language = parsed.language\n const region = parsed.region\n\n // If no region, return just the language\n if (!region) {\n return language\n }\n\n // If region is numeric (UN M.49 code like '419'), return just the language\n if (/^\\d+$/.test(region)) {\n return language\n }\n\n // Otherwise, return language-REGION (letter-based region codes)\n return `${language}-${region}`\n } catch {\n // Fallback: check if the part after dash is numeric\n const parts = normalizedLocale.split('-')\n if (parts.length > 1 && /^\\d+$/.test(parts[1])) {\n return parts[0]\n }\n return normalizedLocale\n }\n}\n\n/**\n * Gets the country code from a time zone string.\n * @param timeZone - IANA time zone string (e.g., 'Europe/Madrid')\n * @returns ISO 3166-1 alpha-2 country code (e.g., 'ES') or undefined if not found\n * @example\n * getCountryFromTimeZone('Europe/Madrid') // 'ES'\n * getCountryFromTimeZone('America/New_York') // 'US'\n */\nexport function getCountryFromTimeZone(\n timeZone: string = Intl.DateTimeFormat().resolvedOptions().timeZone\n): string | undefined {\n return timeZoneToCountryCode[timeZone]\n}\n\n/* eslint-disable @typescript-eslint/naming-convention */\n/**\n * Mapping of IANA time zones to ISO 3166-1 alpha-2 country codes.\n * Used to infer a user's country from their browser's time zone.\n */\nexport const timeZoneToCountryCode: Record<string, string> = {\n 'Africa/Abidjan': 'CI',\n 'Africa/Accra': 'GH',\n 'Africa/Addis_Ababa': 'ET',\n 'Africa/Algiers': 'DZ',\n 'Africa/Asmara': 'ER',\n 'Africa/Bamako': 'ML',\n 'Africa/Bangui': 'CF',\n 'Africa/Banjul': 'GM',\n 'Africa/Bissau': 'GW',\n 'Africa/Blantyre': 'MW',\n 'Africa/Brazzaville': 'CG',\n 'Africa/Bujumbura': 'BI',\n 'Africa/Cairo': 'EG',\n 'Africa/Casablanca': 'MA',\n 'Africa/Ceuta': 'ES',\n 'Africa/Conakry': 'GN',\n 'Africa/Dakar': 'SN',\n 'Africa/Dar_es_Salaam': 'TZ',\n 'Africa/Djibouti': 'DJ',\n 'Africa/Douala': 'CM',\n 'Africa/El_Aaiun': 'EH',\n 'Africa/Freetown': 'SL',\n 'Africa/Gaborone': 'BW',\n 'Africa/Harare': 'ZW',\n 'Africa/Johannesburg': 'ZA',\n 'Africa/Juba': 'SS',\n 'Africa/Kampala': 'UG',\n 'Africa/Khartoum': 'SD',\n 'Africa/Kigali': 'RW',\n 'Africa/Kinshasa': 'CD',\n 'Africa/Lagos': 'NG',\n 'Africa/Libreville': 'GA',\n 'Africa/Lome': 'TG',\n 'Africa/Luanda': 'AO',\n 'Africa/Lubumbashi': 'CD',\n 'Africa/Lusaka': 'ZM',\n 'Africa/Malabo': 'GQ',\n 'Africa/Maputo': 'MZ',\n 'Africa/Maseru': 'LS',\n 'Africa/Mbabane': 'SZ',\n 'Africa/Mogadishu': 'SO',\n 'Africa/Monrovia': 'LR',\n 'Africa/Nairobi': 'KE',\n 'Africa/Ndjamena': 'TD',\n 'Africa/Niamey': 'NE',\n 'Africa/Nouakchott': 'MR',\n 'Africa/Ouagadougou': 'BF',\n 'Africa/Porto-Novo': 'BJ',\n 'Africa/Sao_Tome': 'ST',\n 'Africa/Tripoli': 'LY',\n 'Africa/Tunis': 'TN',\n 'Africa/Windhoek': 'NA',\n 'America/Argentina/Buenos_Aires': 'AR',\n 'America/Bogota': 'CO',\n 'America/Caracas': 'VE',\n 'America/Chicago': 'US',\n 'America/Denver': 'US',\n 'America/Guatemala': 'GT',\n 'America/Halifax': 'CA',\n 'America/La_Paz': 'BO',\n 'America/Lima': 'PE',\n 'America/Los_Angeles': 'US',\n 'America/Mexico_City': 'MX',\n 'America/Montevideo': 'UY',\n 'America/New_York': 'US',\n 'America/Phoenix': 'US',\n 'America/Santiago': 'CL',\n 'America/Sao_Paulo': 'BR',\n 'America/Toronto': 'CA',\n 'Asia/Bangkok': 'TH',\n 'Asia/Colombo': 'LK',\n 'Asia/Dubai': 'AE',\n 'Asia/Hong_Kong': 'HK',\n 'Asia/Jakarta': 'ID',\n 'Asia/Kolkata': 'IN',\n 'Asia/Manila': 'PH',\n 'Asia/Seoul': 'KR',\n 'Asia/Shanghai': 'CN',\n 'Asia/Singapore': 'SG',\n 'Asia/Taipei': 'TW',\n 'Asia/Tokyo': 'JP',\n 'Australia/Brisbane': 'AU',\n 'Australia/Melbourne': 'AU',\n 'Australia/Perth': 'AU',\n 'Australia/Sydney': 'AU',\n 'Europe/Amsterdam': 'NL',\n 'Europe/Berlin': 'DE',\n 'Europe/Brussels': 'BE',\n 'Europe/Bucharest': 'RO',\n 'Europe/Copenhagen': 'DK',\n 'Europe/Helsinki': 'FI',\n 'Europe/Lisbon': 'PT',\n 'Europe/London': 'GB',\n 'Europe/Madrid': 'ES',\n 'Europe/Oslo': 'NO',\n 'Europe/Paris': 'FR',\n 'Europe/Prague': 'CZ',\n 'Europe/Rome': 'IT',\n 'Europe/Stockholm': 'SE',\n 'Europe/Warsaw': 'PL',\n 'Pacific/Auckland': 'NZ',\n}\n/* eslint-enable @typescript-eslint/naming-convention */\n"],"names":["normalizeLocale","locale","navigator","normalizedLocale","parsed","Intl","language","region","parts","getCountryFromTimeZone","timeZone","timeZoneToCountryCode"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util/index.js","sources":["../../../src/util/index.ts"],"sourcesContent":["export * from './dom'\nexport * from './environment'\nexport * from './error-boundary'\nexport * from './i18n'\nexport * from './logs'\nexport * from './objects'\nexport * from './react'\nexport * from './regexs'\nexport * from './strings'\nexport * from './webchat'\n"],"names":[],"mappings":";;;;;;;;;;AAAqB;AACQ;AACG;AACV;AACA;AACG;AACF;AACC;AACC;AACA"}
|
package/lib/esm/util/logs.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util/logs.js","sources":["../../../src/util/logs.js"],"sourcesContent":["import { getProperty } from '../util/objects'\n\nexport function warnDeprecated(legacyCode, newCode, extraInfo = undefined) {\n console.warn(\n `${\n extraInfo ? extraInfo : ''\n } '${legacyCode}' is deprecated. Use '${newCode}' instead.`\n )\n}\n\nexport function warnDeprecatedProps(props, extraInfo) {\n const legacyNewProps = [\n { legacy: 'enableTimestamps', new: 'enabletimestamps' },\n { legacy: 'imageStyle', new: 'imagestyle' },\n ]\n legacyNewProps.forEach(p => {\n if (getProperty(props, p.legacy) !== undefined) {\n warnDeprecated(p.legacy, p.new, extraInfo)\n }\n })\n}\n"],"names":["getProperty","warnDeprecated","legacyCode","newCode","extraInfo","undefined","console","warnDeprecatedProps","props","legacyNewProps","p"],"mappings":";;;AAA6C;AAEtC,SAASC,cAAcA,CAACC,UAAU,EAAEC,OAAO,EAAEC,YAAYC,SAAS;IACvEC,QAAQ,IAAI,CACV,GACEF,YAAYA,YAAY,GACzB,EAAE,EAAEF,WAAW,sBAAsB,EAAEC,QAAQ,UAAU,CAAC;AAE/D;AAEO,SAASI,mBAAmBA,CAACC,KAAK,EAAEJ,SAAS;IAClD,MAAMK,iBAAiB;QACrB;YAAE,QAAQ;YAAoB,KAAK;QAAmB;QACtD;YAAE,QAAQ;YAAc,KAAK;QAAa;KAC3C;IACDA,eAAe,OAAO,CAACC,CAAAA;QACrB,IAAIV,WAAWA,CAACQ,OAAOE,EAAE,MAAM,MAAML,WAAW;YAC9CJ,cAAcA,CAACS,EAAE,MAAM,EAAEA,EAAE,GAAG,EAAEN;QAClC;IACF;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util/objects.js","sources":["../../../src/util/objects.js"],"sourcesContent":["/**\n * given an object and a property, returns the property if exists (recursively), else undefined\n * ex:\n * let obj = { a: { b: { c: 5 } } }\n * getProperty(obj, 'a.b.c'), returns 5\n * getProperty(obj, 'a.b.z'), returns undefined\n */\nexport const getProperty = (obj, property) => {\n if (!property) {\n return undefined\n }\n const properties = property.split('.')\n for (let i = 0; i < properties.length; i++) {\n const prop = properties[i]\n // eslint-disable-next-line no-prototype-builtins\n if (!obj || !Object.hasOwn(obj, prop)) {\n return undefined\n } else {\n obj = obj[prop]\n }\n }\n return obj\n}\n\nexport function strToBool(string) {\n const regex = /^\\s*(true|1|on)\\s*$/i\n string = String(string)\n return regex.test(string)\n}\n\nexport const mapObject = (obj, conversion = ([key, value]) => [key, value]) => {\n return (\n obj &&\n Object.entries(obj)\n .map(conversion)\n .reduce((prev, curr) => {\n prev[curr[0]] = curr[1]\n return prev\n }, {})\n )\n}\n"],"names":["getProperty","obj","property","undefined","properties","i","prop","Object","strToBool","string","regex","String","mapObject","conversion","key","value","prev","curr"],"mappings":"AAAA;;;;;;CAMC,GACM,MAAMA,WAAWA,GAAG,CAACC,KAAKC;IAC/B,IAAI,CAACA,UAAU;QACb,OAAOC;IACT;IACA,MAAMC,aAAaF,SAAS,KAAK,CAAC;IAClC,IAAK,IAAIG,IAAI,GAAGA,IAAID,WAAW,MAAM,EAAEC,IAAK;QAC1C,MAAMC,OAAOF,UAAU,CAACC,EAAE;QAC1B,iDAAiD;QACjD,IAAI,CAACJ,OAAO,CAACM,OAAO,MAAM,CAACN,KAAKK,OAAO;YACrC,OAAOH;QACT,OAAO;YACLF,MAAMA,GAAG,CAACK,KAAK;QACjB;IACF;IACA,OAAOL;AACT,EAAC;AAEM,SAASO,SAASA,CAACC,MAAM;IAC9B,MAAMC,QAAQ;IACdD,SAASE,OAAOF;IAChB,OAAOC,MAAM,IAAI,CAACD;AACpB;AAEO,MAAMG,SAASA,GAAG,CAACX,KAAKY,aAAa,CAAC,CAACC,KAAKC,MAAM,GAAK;QAACD;QAAKC;KAAM;IACxE,OACEd,OACAM,OAAO,OAAO,CAACN,KACZ,GAAG,CAACY,YACJ,MAAM,CAAC,CAACG,MAAMC;QACbD,IAAI,CAACC,IAAI,CAAC,EAAE,CAAC,GAAGA,IAAI,CAAC,EAAE;QACvB,OAAOD;IACT,GAAG,CAAC;AAEV,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util/react.js","sources":["../../../src/util/react.js"],"sourcesContent":["import { isBrowser, isNode } from '@botonic/core'\nimport { Children, cloneElement, isValidElement } from 'react'\n\nimport { mapObject } from './objects'\n\nexport const ConditionalWrapper = ({ condition, wrapper, children }) =>\n condition ? wrapper(children) : children\n\nexport function renderComponent({ renderBrowser, renderNode }) {\n if (isBrowser()) {\n return renderBrowser()\n } else if (isNode()) {\n return renderNode()\n }\n throw new Error('Unexpected process type. Not recognized as browser nor node')\n}\n\nexport const mapObjectNonBooleanValues = obj => {\n // to avoid React SSR warnings: https://github.com/styled-components/styled-components/issues/1198#issue-262022540\n return mapObject(obj, ([key, value]) => {\n if (typeof value === 'boolean') {\n return [key, Number(value)]\n }\n return [key, value]\n })\n}\n\nconst hasChildren = element =>\n isValidElement(element) && Boolean(element.props.children)\n\nexport const hasComplexChildren = element =>\n hasChildren(element) &&\n Children.toArray(element.props.children).reduce(\n (response, child) => response || isValidElement(child),\n false\n )\n\nexport const deepMapWithIndex = (children, deepMapFn) => {\n return Children.toArray(children).map((child, index) => {\n if (isValidElement(child) && hasComplexChildren(child)) {\n // Clone the child that has children and map them too\n return deepMapFn(\n cloneElement(\n child,\n Object.assign(Object.assign({}, child.props), {\n children: deepMapWithIndex(child.props.children, deepMapFn),\n })\n ),\n index,\n children\n )\n }\n return deepMapFn(child, index, children)\n })\n}\n"],"names":["isBrowser","isNode","Children","cloneElement","isValidElement","mapObject","ConditionalWrapper","condition","wrapper","children","renderComponent","renderBrowser","renderNode","Error","mapObjectNonBooleanValues","obj","key","value","Number","hasChildren","element","Boolean","hasComplexChildren","response","child","deepMapWithIndex","deepMapFn","index","Object"],"mappings":";;;;;;;AAAiD;AACa;AAEzB;AAE9B,MAAMM,kBAAkBA,GAAG,CAAC,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,EAAE,GACjEF,YAAYC,QAAQC,YAAYA,SAAQ;AAEnC,SAASC,eAAeA,CAAC,EAAEC,aAAa,EAAEC,UAAU,EAAE;IAC3D,IAAIZ,SAASA,IAAI;QACf,OAAOW;IACT,OAAO,IAAIV,MAAMA,IAAI;QACnB,OAAOW;IACT;IACA,MAAM,IAAIC,MAAM;AAClB;AAEO,MAAMC,yBAAyBA,GAAGC,CAAAA;IACvC,kHAAkH;IAClH,OAAOV,SAASA,CAACU,KAAK,CAAC,CAACC,KAAKC,MAAM;QACjC,IAAI,OAAOA,UAAU,WAAW;YAC9B,OAAO;gBAACD;gBAAKE,OAAOD;aAAO;QAC7B;QACA,OAAO;YAACD;YAAKC;SAAM;IACrB;AACF,EAAC;AAED,MAAME,WAAWA,GAAGC,CAAAA,wBAClBhB,cAAcA,CAACgB,YAAYC,QAAQD,QAAQ,KAAK,CAAC,QAAQ;AAEpD,MAAME,kBAAkBA,GAAGF,CAAAA,UAChCD,WAAWA,CAACC,YACZlB,gBAAgB,CAACkB,QAAQ,KAAK,CAAC,QAAQ,EAAE,MAAM,CAC7C,CAACG,UAAUC,QAAUD,0BAAYnB,cAAcA,CAACoB,QAChD,OACD;AAEI,MAAMC,gBAAgBA,GAAG,CAAChB,UAAUiB;IACzC,OAAOxB,gBAAgB,CAACO,UAAU,GAAG,CAAC,CAACe,OAAOG;QAC5C,kBAAIvB,cAAcA,CAACoB,UAAUF,kBAAkBA,CAACE,QAAQ;YACtD,qDAAqD;YACrD,OAAOE,wBACLvB,YAAYA,CACVqB,OACAI,OAAO,MAAM,CAACA,OAAO,MAAM,CAAC,CAAC,GAAGJ,MAAM,KAAK,GAAG;gBAC5C,UAAUC,gBAAgBA,CAACD,MAAM,KAAK,CAAC,QAAQ,EAAEE;YACnD,KAEFC,OACAlB;QAEJ;QACA,OAAOiB,UAAUF,OAAOG,OAAOlB;IACjC;AACF,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util/regexs.js","sources":["../../../src/util/regexs.js"],"sourcesContent":["export const deserializeRegex = regexStr => {\n /* eslint-disable no-useless-escape */\n const fragments = regexStr.match(/\\/(.[^/]+)\\/([a-z]{1})?$/i) // https://stackoverflow.com/a/33642463, https://github.com/hubtype/botonic/pull/805#discussion_r437309074\n const deserialized = new RegExp(fragments[1], fragments[2] || '')\n return deserialized\n}\n/** Serialization of objects containing regexs:\n * Ref.: https://stackoverflow.com/questions/12075927/serialization-of-regexp\n * Ref.: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify\n */\nexport const stringifyWithRegexs = object => {\n return JSON.stringify(object, (_, value) => {\n if (value instanceof RegExp) {\n return value.toString()\n }\n return value\n })\n}\n"],"names":["deserializeRegex","regexStr","fragments","deserialized","RegExp","stringifyWithRegexs","object","JSON","_","value"],"mappings":"AAAO,MAAMA,gBAAgBA,GAAGC,CAAAA;IAC9B,oCAAoC,GACpC,MAAMC,YAAYD,SAAS,KAAK,CAAC,6BAA6B,0GAA0G;;IACxK,MAAME,eAAe,IAAIC,OAAOF,SAAS,CAAC,EAAE,EAAEA,SAAS,CAAC,EAAE,IAAI;IAC9D,OAAOC;AACT,EAAC;AACD;;;CAGC,GACM,MAAME,mBAAmBA,GAAGC,CAAAA;IACjC,OAAOC,KAAK,SAAS,CAACD,QAAQ,CAACE,GAAGC;QAChC,IAAIA,iBAAiBL,QAAQ;YAC3B,OAAOK,MAAM,QAAQ;QACvB;QACA,OAAOA;IACT;AACF,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util/strings.js","sources":["../../../src/util/strings.ts"],"sourcesContent":["export const truncateText = (\n text: string,\n maxLength: number,\n ellipsis = '...'\n) => {\n if (text.length > maxLength) {\n return text.substring(0, maxLength - ellipsis.length) + ellipsis\n }\n return text\n}\n"],"names":["truncateText","text","maxLength","ellipsis"],"mappings":"AAAO,MAAMA,YAAYA,GAAG,CAC1BC,MACAC,WACAC,WAAW,KAAK;IAEhB,IAAIF,KAAK,MAAM,GAAGC,WAAW;QAC3B,OAAOD,KAAK,SAAS,CAAC,GAAGC,YAAYC,SAAS,MAAM,IAAIA;IAC1D;IACA,OAAOF;AACT,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util/webchat.js","sources":["../../../src/util/webchat.ts"],"sourcesContent":["import merge from 'lodash.merge'\nimport UAParser from 'ua-parser-js'\nimport { v7 as uuidv7 } from 'uuid'\n\nimport { WEBCHAT } from '../constants'\nimport type { ClientUser } from '../webchat/context/types'\nimport type { WebchatTheme } from '../webchat/theme/types'\nimport { getCountryFromTimeZone, normalizeLocale } from './i18n'\nimport { getProperty } from './objects'\n\n/**\n * Returns the value of a property defined in bot's theme based on WEBCHAT.CUSTOM_PROPERTIES dictionary.\n * It gives preference to nested defined properties (e.g.: header.style) over plain properties (e.g.: headerStyle).\n * If property doesn't exist, returns the defaultValue.\n */\nexport const _getThemeProperty =\n (theme: WebchatTheme) => (property: string, defaultValue?: any) => {\n for (const [key, value] of Object.entries(WEBCHAT.CUSTOM_PROPERTIES)) {\n if (value === property) {\n const nestedProperty = getProperty(theme, value)\n if (nestedProperty !== undefined) {\n return nestedProperty\n }\n const plainProperty = getProperty(theme, key)\n if (plainProperty !== undefined) {\n return plainProperty\n }\n return defaultValue\n }\n }\n return undefined\n }\n\nexport const createUser = (): {\n id: string\n name: string\n} => {\n const parser = new UAParser()\n const ua = parser.getResult()\n let name = `${ua.os.name} ${ua.browser.name}`\n if (ua.device?.type) {\n name = `${ua.device.type} ${name}`\n }\n return {\n id: uuidv7(),\n name,\n }\n}\nexport const initSession = (\n session: any\n): { user: { id: string; name: string } } => {\n if (!session) {\n session = {}\n }\n const hasUserId = session?.user?.id !== undefined\n if (!session.user || Object.keys(session.user).length === 0 || !hasUserId) {\n session.user = !hasUserId ? merge(session.user, createUser()) : createUser()\n }\n return session\n}\n\nexport function updateUserLocaleAndCountry(user: Partial<ClientUser>) {\n user.locale = getLocale(user)\n user.country = getCountry(user)\n user.system_locale = getSystemLocale(user)\n\n return user\n}\n\nfunction getLocale(user: Partial<ClientUser>) {\n if (user.locale) {\n return normalizeLocale(user.locale)\n }\n\n const locale = user.extra_data?.language\n ? (user.extra_data?.language as string)\n : navigator.language\n\n return normalizeLocale(locale)\n}\n\nfunction getCountry(user: Partial<ClientUser>) {\n if (user.country) {\n return user.country\n }\n\n return user.extra_data?.country\n ? (user.extra_data?.country as string)\n : getCountryFromTimeZone()\n}\n\nfunction getSystemLocale(user: Partial<ClientUser>) {\n if (user.system_locale) {\n return user.system_locale\n }\n return getLocale(user)\n}\n\nexport const shouldKeepSessionOnReload = ({\n initialDevSettings,\n devSettings,\n}) => !initialDevSettings || devSettings?.keepSessionOnReload\n\n//TODO: Review param serverConfig if is of type ServerConfig this never have errorMessage\nexport const getServerErrorMessage = serverConfig => {\n if (!serverConfig || !serverConfig.errorMessage) {\n return 'Connection issues'\n }\n if (typeof serverConfig.errorMessage === 'function') {\n return serverConfig.errorMessage()\n }\n return serverConfig.errorMessage\n}\n"],"names":["merge","UAParser","v7","uuidv7","WEBCHAT","getCountryFromTimeZone","normalizeLocale","getProperty","_getThemeProperty","theme","property","defaultValue","key","value","Object","nestedProperty","undefined","plainProperty","createUser","parser","ua","name","initSession","session","hasUserId","updateUserLocaleAndCountry","user","getLocale","getCountry","getSystemLocale","locale","navigator","shouldKeepSessionOnReload","initialDevSettings","devSettings","getServerErrorMessage","serverConfig"],"mappings":";;;;;;;;;;;;;AAAgC;AACG;AACA;AAEG;AAG0B;AACzB;AAEvC;;;;CAIC,GACM,MAAMQ,iBAAiBA,GAC5B,CAACC,QAAwB,CAACC,UAAkBC;QAC1C,KAAK,MAAM,CAACC,KAAKC,MAAM,IAAIC,OAAO,OAAO,CAACV,yBAAyB,EAAG;YACpE,IAAIS,UAAUH,UAAU;gBACtB,MAAMK,iBAAiBR,WAAWA,CAACE,OAAOI;gBAC1C,IAAIE,mBAAmBC,WAAW;oBAChC,OAAOD;gBACT;gBACA,MAAME,gBAAgBV,WAAWA,CAACE,OAAOG;gBACzC,IAAIK,kBAAkBD,WAAW;oBAC/B,OAAOC;gBACT;gBACA,OAAON;YACT;QACF;QACA,OAAOK;IACT,EAAC;AAEI,MAAME,UAAUA,GAAG;IAIxB,MAAMC,SAAS,IAAIlB,YAAQA;IAC3B,MAAMmB,KAAKD,OAAO,SAAS;IAC3B,IAAIE,OAAO,GAAGD,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,EAAEA,GAAG,OAAO,CAAC,IAAI,EAAE;IAC7C,IAAIA,GAAG,MAAM,EAAE,MAAM;QACnBC,OAAO,GAAGD,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAEC,MAAM;IACpC;IACA,OAAO;QACL,IAAIlB,EAAMA;QACVkB;IACF;AACF,EAAC;AACM,MAAMC,WAAWA,GAAG,CACzBC;IAEA,IAAI,CAACA,SAAS;QACZA,UAAU,CAAC;IACb;IACA,MAAMC,YAAYD,SAAS,MAAM,OAAOP;IACxC,IAAI,CAACO,QAAQ,IAAI,IAAIT,OAAO,IAAI,CAACS,QAAQ,IAAI,EAAE,MAAM,KAAK,KAAK,CAACC,WAAW;QACzED,QAAQ,IAAI,GAAG,CAACC,YAAYxB,YAAKA,CAACuB,QAAQ,IAAI,EAAEL,UAAUA,MAAMA,UAAUA;IAC5E;IACA,OAAOK;AACT,EAAC;AAEM,SAASE,0BAA0BA,CAACC,IAAyB;IAClEA,KAAK,MAAM,GAAGC,SAASA,CAACD;IACxBA,KAAK,OAAO,GAAGE,UAAUA,CAACF;IAC1BA,KAAK,aAAa,GAAGG,eAAeA,CAACH;IAErC,OAAOA;AACT;AAEA,SAASC,SAASA,CAACD,IAAyB;IAC1C,IAAIA,KAAK,MAAM,EAAE;QACf,OAAOpB,eAAeA,CAACoB,KAAK,MAAM;IACpC;IAEA,MAAMI,SAASJ,KAAK,UAAU,EAAE,WAC3BA,KAAK,UAAU,EAAE,WAClBK,UAAU,QAAQ;IAEtB,OAAOzB,eAAeA,CAACwB;AACzB;AAEA,SAASF,UAAUA,CAACF,IAAyB;IAC3C,IAAIA,KAAK,OAAO,EAAE;QAChB,OAAOA,KAAK,OAAO;IACrB;IAEA,OAAOA,KAAK,UAAU,EAAE,UACnBA,KAAK,UAAU,EAAE,UAClBrB,sBAAsBA;AAC5B;AAEA,SAASwB,eAAeA,CAACH,IAAyB;IAChD,IAAIA,KAAK,aAAa,EAAE;QACtB,OAAOA,KAAK,aAAa;IAC3B;IACA,OAAOC,SAASA,CAACD;AACnB;AAEO,MAAMM,yBAAyBA,GAAG,CAAC,EACxCC,kBAAkB,EAClBC,WAAW,EACZ,GAAK,CAACD,sBAAsBC,aAAa,oBAAmB;AAE7D,yFAAyF;AAClF,MAAMC,qBAAqBA,GAAGC,CAAAA;IACnC,IAAI,CAACA,gBAAgB,CAACA,aAAa,YAAY,EAAE;QAC/C,OAAO;IACT;IACA,IAAI,OAAOA,aAAa,YAAY,KAAK,YAAY;QACnD,OAAOA,aAAa,YAAY;IAClC;IACA,OAAOA,aAAa,YAAY;AAClC,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util/webviews.js","sources":["../../../src/util/webviews.ts"],"sourcesContent":["import type { Webview } from '../components/index-types'\n\nexport function generateWebviewUrlWithParams(\n webview: Webview,\n params?: Record<string, string>\n): string {\n const webviewParams = params ? new URLSearchParams(params).toString() : ''\n return `/webviews/${webview.name}?${webviewParams}`\n}\n"],"names":["generateWebviewUrlWithParams","webview","params","webviewParams","URLSearchParams"],"mappings":"AAEO,SAASA,4BAA4BA,CAC1CC,OAAgB,EAChBC,MAA+B;IAE/B,MAAMC,gBAAgBD,SAAS,IAAIE,gBAAgBF,QAAQ,QAAQ,KAAK;IACxE,OAAO,CAAC,UAAU,EAAED,QAAQ,IAAI,CAAC,CAAC,EAAEE,eAAe;AACrD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const ChatArea: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/chat-area/index.js","sources":["../../../../src/webchat/chat-area/index.tsx"],"sourcesContent":["import { useContext, useEffect, useState } from 'react'\n\nimport { BotonicContainerId } from '../constants'\nimport { WebchatContext } from '../context'\nimport { useWebchatDimensions } from '../hooks'\nimport { WebchatMessageList } from '../message-list'\nimport { WebchatReplies } from '../replies'\nimport { StyledChatArea } from './styles'\n\nexport const ChatArea = () => {\n const {\n webchatState: { replies },\n chatAreaRef,\n } = useContext(WebchatContext)\n\n const { calculateResizedPxChatAreaHeight } = useWebchatDimensions()\n const [chatAreaHeight, setChatAreaHeight] = useState(0)\n\n useEffect(() => {\n setChatAreaHeight(calculateResizedPxChatAreaHeight())\n }, [])\n\n return (\n <StyledChatArea\n id={BotonicContainerId.ChatArea}\n ref={chatAreaRef}\n height={chatAreaHeight}\n >\n <WebchatMessageList />\n {replies && replies.length > 0 && <WebchatReplies />}\n </StyledChatArea>\n )\n}\n"],"names":["useContext","useEffect","useState","BotonicContainerId","WebchatContext","useWebchatDimensions","WebchatMessageList","WebchatReplies","StyledChatArea","ChatArea","replies","chatAreaRef","calculateResizedPxChatAreaHeight","chatAreaHeight","setChatAreaHeight"],"mappings":";;;;;;;;;;;;;;;;;;AAAuD;AAEN;AACN;AACI;AACK;AACT;AACF;AAElC,MAAMS,QAAQA,GAAG;IACtB,MAAM,EACJ,cAAc,EAAEC,OAAO,EAAE,EACzBC,WAAW,EACZ,GAAGX,UAAUA,CAACI,cAAcA;IAE7B,MAAM,EAAEQ,gCAAgC,EAAE,GAAGP,oBAAoBA;IACjE,MAAM,CAACQ,gBAAgBC,kBAAkB,GAAGZ,QAAQA,CAAC;IAErDD,SAASA,CAAC;QACRa,kBAAkBF;IACpB,GAAG,EAAE;IAEL,qBACE,KAACJ,cAAcA;QACb,IAAIL,2BAA2B;QAC/B,KAAKQ;QACL,QAAQE;;0BAER,IAACP,kBAAkBA;YAClBI,WAAWA,QAAQ,MAAM,GAAG,mBAAK,IAACH,cAAcA;;;AAGvD,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/chat-area/styles.js","sources":["../../../../src/webchat/chat-area/styles.ts"],"sourcesContent":["import styled from 'styled-components'\n\nexport const StyledChatArea = styled.div<{ height: number }>`\n display: inherit;\n flex-direction: inherit;\n height: ${props => props.height}px;\n width: inherit;\n overflow: inherit;\n`\n"],"names":["styled","StyledChatArea","props"],"mappings":";;;AAAsC;AAE/B,MAAMC,cAAcA,GAAGD,qBAA8B,CAAC;;;UAGnD,EAAEE,CAAAA,QAASA,MAAM,MAAM,CAAC;;;AAGlC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export function Icon(props: any): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/components/common.js","sources":["../../../../src/webchat/components/common.jsx"],"sourcesContent":["import styled from 'styled-components'\n\nimport { resolveImage } from '../../util/environment'\n\nconst PointerImage = styled.img`\n cursor: pointer;\n`\nexport const Icon = props => <PointerImage src={resolveImage(props.src)} />\n"],"names":["styled","resolveImage","PointerImage","Icon","props"],"mappings":";;;;;;;;AAAsC;AAEe;AAErD,MAAME,YAAYA,GAAGF,qBAAU,CAAC;;AAEhC,CAAC;AACM,MAAMG,IAAIA,GAAGC,CAAAA,sBAAS,IAACF,YAAYA;QAAC,KAAKD,YAAYA,CAACG,MAAM,GAAG;OAAK"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export function ConditionalAnimation(props: any): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/components/conditional-animation.js","sources":["../../../../src/webchat/components/conditional-animation.jsx"],"sourcesContent":["import { useContext } from 'react'\n\nimport { WEBCHAT } from '../../constants'\nimport { Scale } from '../../shared/styles'\nimport { ConditionalWrapper } from '../../util/react'\nimport { WebchatContext } from '../context'\n\nexport const ConditionalAnimation = props => {\n const { getThemeProperty } = useContext(WebchatContext)\n\n const animationsEnabled = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.enableAnimations\n )\n\n return (\n <ConditionalWrapper\n condition={animationsEnabled}\n wrapper={children => <Scale>{children}</Scale>}\n >\n {props.children}\n </ConditionalWrapper>\n )\n}\n"],"names":["useContext","WEBCHAT","Scale","ConditionalWrapper","WebchatContext","ConditionalAnimation","props","getThemeProperty","animationsEnabled","children"],"mappings":";;;;;;;;;;;;;;AAAkC;AAEO;AACE;AACU;AACV;AAEpC,MAAMK,oBAAoBA,GAAGC,CAAAA;IAClC,MAAM,EAAEC,gBAAgB,EAAE,GAAGP,UAAUA,CAACI,cAAcA;IAEtD,MAAMI,oBAAoBD,iBACxBN,0CAA0C;IAG5C,qBACE,IAACE,kBAAkBA;QACjB,WAAWK;QACX,SAASC,CAAAA,yBAAY,IAACP,KAAKA;0BAAEO;;kBAE5BH,MAAM,QAAQ;;AAGrB,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/components/opened-persistent-menu.js","sources":["../../../../src/webchat/components/opened-persistent-menu.jsx"],"sourcesContent":["import { useContext } from 'react'\nimport styled from 'styled-components'\n\nimport { Button } from '../../components/button/index'\nimport { ROLES, WEBCHAT } from '../../constants'\nimport { WebchatContext } from '../context'\nimport { useComponentVisible } from '../hooks'\n\nconst ButtonsContainer = styled.div`\n position: absolute;\n z-index: 2;\n width: 100%;\n bottom: 0;\n text-align: center;\n`\n\nexport const OpenedPersistentMenu = ({ onClick, options, borderRadius }) => {\n const { ref, isComponentVisible } = useComponentVisible(true, onClick)\n const { getThemeProperty } = useContext(WebchatContext)\n const CustomPersistentMenu = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.customPersistentMenu\n )\n let closeLabel = 'Cancel'\n try {\n closeLabel = options.filter(opt => opt.closeLabel !== undefined)[0]\n .closeLabel\n } catch {\n // do nothing\n }\n return (\n <div ref={ref} role={ROLES.PERSISTENT_MENU}>\n {isComponentVisible && CustomPersistentMenu ? (\n <CustomPersistentMenu onClick={onClick} options={options} />\n ) : (\n <ButtonsContainer>\n {Object.values(options).map((e, i) => {\n return (\n e.label && (\n <Button\n onClick={onClick}\n url={e.url}\n target={e.target}\n webview={e.webview}\n payload={e.payload}\n key={i}\n >\n {e.label}\n </Button>\n )\n )\n })}\n <Button onClick={onClick} bottomRadius={borderRadius}>\n {closeLabel}\n </Button>\n </ButtonsContainer>\n )}\n </div>\n )\n}\n\nexport default OpenedPersistentMenu\n"],"names":["useContext","styled","Button","ROLES","WEBCHAT","WebchatContext","useComponentVisible","ButtonsContainer","OpenedPersistentMenu","onClick","options","borderRadius","ref","isComponentVisible","getThemeProperty","CustomPersistentMenu","closeLabel","opt","undefined","Object","e","i"],"mappings":";;;;;;;;;;;;;;;;AAAkC;AACI;AAEgB;AACN;AACL;AACG;AAE9C,MAAMO,gBAAgBA,GAAGN,qBAAU,CAAC;;;;;;AAMpC,CAAC;AAEM,MAAMO,oBAAoBA,GAAG,CAAC,EAAEC,OAAO,EAAEC,OAAO,EAAEC,YAAY,EAAE;IACrE,MAAM,EAAEC,GAAG,EAAEC,kBAAkB,EAAE,GAAGP,mBAAmBA,CAAC,MAAMG;IAC9D,MAAM,EAAEK,gBAAgB,EAAE,GAAGd,UAAUA,CAACK,cAAcA;IACtD,MAAMU,uBAAuBD,iBAC3BV,8CAA8C;IAEhD,IAAIY,aAAa;IACjB,IAAI;QACFA,aAAaN,QAAQ,MAAM,CAACO,CAAAA,MAAOA,IAAI,UAAU,KAAKC,UAAU,CAAC,EAAE,CAChE,UAAU;IACf,EAAE,OAAM;IACN,aAAa;IACf;IACA,qBACE,IAAC;QAAI,KAAKN;QAAK,MAAMT,qBAAqB;kBACvCU,sBAAsBE,qCACrB,IAACA;YAAqB,SAASN;YAAS,SAASC;2BAEjD,KAACH,gBAAgBA;;gBACdY,OAAO,MAAM,CAACT,SAAS,GAAG,CAAC,CAACU,GAAGC;oBAC9B,OACED,EAAE,KAAK,kBACL,IAAClB,MAAMA;wBACL,SAASO;wBACT,KAAKW,EAAE,GAAG;wBACV,QAAQA,EAAE,MAAM;wBAChB,SAASA,EAAE,OAAO;wBAClB,SAASA,EAAE,OAAO;kCAGjBA,EAAE,KAAK;uBAFHC;gBAMb;8BACA,IAACnB,MAAMA;oBAAC,SAASO;oBAAS,cAAcE;8BACrCK;;;;;AAMb,EAAC;AAED,qDAAeR,oBAAoBA,EAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/constants.js","sources":["../../../src/webchat/constants.ts"],"sourcesContent":["// Convert to an enum when all the files using these values are migrated to ts{x}\nexport const BotonicContainerId = {\n Webchat: 'botonic-webchat',\n Header: 'botonic-header',\n ChatArea: 'botonic-chat-area',\n ScrollableMessagesList: 'botonic-scrollable-messages-list',\n RepliesContainer: 'botonic-replies-container',\n InputPanel: 'botonic-input-panel',\n}\n"],"names":["BotonicContainerId"],"mappings":"AAAA,iFAAiF;AAC1E,MAAMA,kBAAkBA,GAAG;IAChC,SAAS;IACT,QAAQ;IACR,UAAU;IACV,wBAAwB;IACxB,kBAAkB;IAClB,YAAY;AACd,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/context/actions.js","sources":["../../../../src/webchat/context/actions.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\nexport enum WebchatAction {\n ADD_MESSAGE = 'addMessage',\n ADD_MESSAGE_COMPONENT = 'addMessageComponent',\n CLEAR_MESSAGES = 'clearMessages',\n DO_RENDER_CUSTOM_COMPONENT = 'doRenderCustomComponent',\n RESET_UNREAD_MESSAGES = 'resetUnreadMessages',\n SET_CURRENT_ATTACHMENT = 'setCurrentAttachment',\n SET_ERROR = 'setError',\n SET_LAST_MESSAGE_VISIBLE = 'setlastMessageVisible',\n SET_ONLINE = 'setOnline',\n TOGGLE_COVER_COMPONENT = 'toggleCoverComponent',\n TOGGLE_EMOJI_PICKER = 'toggleEmojiPicker',\n TOGGLE_PERSISTENT_MENU = 'togglePersistentMenu',\n TOGGLE_WEBCHAT = 'toggleWebchat',\n UPDATE_CUSTOM_MESSAGE_PROPS = 'updateCustomMessageProps',\n UPDATE_DEV_SETTINGS = 'updateDevSettings',\n UPDATE_HANDOFF = 'updateHandoff',\n UPDATE_LAST_MESSAGE_DATE = 'updateLastMessageDate',\n UPDATE_LAST_ROUTE_PATH = 'updateLastRoutePath',\n UPDATE_LATEST_INPUT = 'updateLatestInput',\n UPDATE_MESSAGE = 'updateMessage',\n UPDATE_REPLIES = 'updateReplies',\n UPDATE_SESSION = 'updateSession',\n UPDATE_THEME = 'updateTheme',\n UPDATE_TYPING = 'updateTyping',\n UPDATE_WEBVIEW = 'updateWebview',\n REMOVE_REPLIES = 'removeReplies',\n REMOVE_WEBVIEW = 'removeWebview',\n SET_IS_INPUT_FOCUSED = 'setIsInputFocused',\n}\n"],"names":["WebchatAction"],"mappings":"AAAA,uDAAuD,GAChD,IAAKA,qBAAaA,0BAAbA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAAAA;MA6BX"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/context/index.js","sources":["../../../../src/webchat/context/index.tsx"],"sourcesContent":["import { createContext } from 'react'\n\nimport type { ChunkIdsGroupedBySourceData } from '../../components/system-debug-trace/events/knowledge-bases-types'\nimport type { MinimalHubtypeMessage } from '../../index-types'\nimport type { WebchatContextProps, WebchatState } from './types'\n\nexport type { ClientSession, WebchatState } from './types'\nexport { useWebchat } from './use-webchat'\n\nexport const WebchatContext = createContext<WebchatContextProps>({\n addMessage: () => {\n return\n },\n getThemeProperty: () => {\n return\n }, // used to retrieve a specific property of the theme defined by the developer in his 'webchat/index.js'\n closeWebview: async () => {\n return\n },\n openWebview: () => {\n return\n },\n resolveCase: () => {\n return\n },\n resetUnreadMessages: () => {\n return\n },\n setIsInputFocused: () => {\n return\n },\n setLastMessageVisible: () => {\n return\n },\n sendAttachment: async () => {\n return\n },\n sendInput: async () => {\n return\n },\n sendPayload: async () => {\n return\n },\n sendText: async () => {\n return\n },\n toggleCoverComponent: () => {\n return\n },\n toggleWebchat: () => {\n return\n },\n toggleEmojiPicker: () => {\n return\n },\n togglePersistentMenu: () => {\n return\n },\n updateCustomMessageProps: () => {\n return\n },\n updateLatestInput: () => {\n return\n },\n updateMessage: () => {\n return\n },\n updateReplies: () => {\n return\n },\n updateUser: () => {\n return\n },\n updateWebchatDevSettings: () => {\n return\n },\n webchatState: {} as WebchatState,\n previewUtils: {\n onClickOpenToolResults: () => {\n return\n },\n trackPreviewEventOpened: () => {\n return\n },\n getChunkIdsGroupedBySource: async () => {\n return [] as ChunkIdsGroupedBySourceData[]\n },\n onClickOpenChunks: () => {\n return\n },\n getMessageById: async () => {\n return {} as MinimalHubtypeMessage\n },\n },\n\n trackEvent: async () => {\n return\n },\n webchatContainerRef: { current: null },\n chatAreaRef: { current: null },\n inputPanelRef: { current: null },\n headerRef: { current: null },\n scrollableMessagesListRef: { current: null },\n repliesRef: { current: null },\n})\n"],"names":["createContext","useWebchat","WebchatContext"],"mappings":";;;;AAAqC;AAOK;AAEnC,MAAME,cAAcA,iBAAGF,aAAaA,CAAsB;IAC/D,YAAY;QACV;IACF;IACA,kBAAkB;QAChB;IACF;IACA,cAAc;QACZ;IACF;IACA,aAAa;QACX;IACF;IACA,aAAa;QACX;IACF;IACA,qBAAqB;QACnB;IACF;IACA,mBAAmB;QACjB;IACF;IACA,uBAAuB;QACrB;IACF;IACA,gBAAgB;QACd;IACF;IACA,WAAW;QACT;IACF;IACA,aAAa;QACX;IACF;IACA,UAAU;QACR;IACF;IACA,sBAAsB;QACpB;IACF;IACA,eAAe;QACb;IACF;IACA,mBAAmB;QACjB;IACF;IACA,sBAAsB;QACpB;IACF;IACA,0BAA0B;QACxB;IACF;IACA,mBAAmB;QACjB;IACF;IACA,eAAe;QACb;IACF;IACA,eAAe;QACb;IACF;IACA,YAAY;QACV;IACF;IACA,0BAA0B;QACxB;IACF;IACA,cAAc,CAAC;IACf,cAAc;QACZ,wBAAwB;YACtB;QACF;QACA,yBAAyB;YACvB;QACF;QACA,4BAA4B;YAC1B,OAAO,EAAE;QACX;QACA,mBAAmB;YACjB;QACF;QACA,gBAAgB;YACd,OAAO,CAAC;QACV;IACF;IAEA,YAAY;QACV;IACF;IACA,qBAAqB;QAAE,SAAS;IAAK;IACrC,aAAa;QAAE,SAAS;IAAK;IAC7B,eAAe;QAAE,SAAS;IAAK;IAC/B,WAAW;QAAE,SAAS;IAAK;IAC3B,2BAA2B;QAAE,SAAS;IAAK;IAC3C,YAAY;QAAE,SAAS;IAAK;AAC9B,GAAE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/context/messages-reducer.js","sources":["../../../../src/webchat/context/messages-reducer.ts"],"sourcesContent":["import { SENDERS } from '../../index-types'\nimport { WebchatAction } from './actions'\nimport type { WebchatState } from './types'\n\nexport const messagesReducer = (\n state: WebchatState,\n action: { type: WebchatAction; payload?: any }\n): WebchatState => {\n switch (action.type) {\n case WebchatAction.ADD_MESSAGE:\n return addMessageReducer(state, action)\n case WebchatAction.ADD_MESSAGE_COMPONENT:\n return addMessageComponent(state, action)\n case WebchatAction.UPDATE_MESSAGE:\n return updateMessageReducer(state, action)\n case WebchatAction.UPDATE_CUSTOM_MESSAGE_PROPS:\n return updateCustomMessagePropsReducer(state, action)\n case WebchatAction.UPDATE_REPLIES:\n return { ...state, replies: action.payload }\n case WebchatAction.REMOVE_REPLIES:\n return { ...state, replies: undefined }\n case WebchatAction.CLEAR_MESSAGES:\n return {\n ...state,\n messagesJSON: [],\n messagesComponents: [],\n numUnreadMessages: 0,\n }\n case WebchatAction.UPDATE_LAST_MESSAGE_DATE:\n return {\n ...state,\n lastMessageUpdate: action.payload,\n }\n case WebchatAction.RESET_UNREAD_MESSAGES:\n return resetUnreadMessages(state)\n case WebchatAction.SET_LAST_MESSAGE_VISIBLE:\n return {\n ...state,\n isLastMessageVisible: action.payload,\n }\n default:\n throw new Error()\n }\n}\n\nfunction addMessageComponent(\n state: WebchatState,\n action: { type: WebchatAction; payload?: any }\n) {\n const messageComponent = action.payload\n const isUnreadMessage =\n messageComponent.props?.isUnread &&\n messageComponent.props?.sentBy !== SENDERS.user &&\n messageComponent.props?.sentBy !== SENDERS.system\n\n const numUnreadMessages = isUnreadMessage\n ? state.numUnreadMessages + 1\n : state.numUnreadMessages\n\n return {\n ...state,\n messagesComponents: [...(state.messagesComponents || []), messageComponent],\n numUnreadMessages,\n }\n}\n\nfunction resetUnreadMessages(state: WebchatState) {\n const messagesComponents = state.messagesComponents.map(messageComponent => {\n if (messageComponent.props.isUnread) {\n messageComponent = {\n ...messageComponent,\n props: { ...messageComponent.props, isUnread: false },\n }\n }\n return messageComponent\n })\n const messagesJSON = state.messagesJSON.map(messageJSON => {\n if (messageJSON.isUnread) {\n messageJSON.isUnread = false\n }\n return messageJSON\n })\n return {\n ...state,\n messagesComponents,\n messagesJSON,\n numUnreadMessages: 0,\n }\n}\n\nfunction updateMessageReducer(\n state: WebchatState,\n action: { type: WebchatAction; payload?: any }\n) {\n const messageId = action.payload.id\n const msgIndex = state.messagesJSON.map(m => m.id).indexOf(messageId)\n if (msgIndex > -1) {\n const msgComponent = state.messagesComponents[msgIndex]\n let updatedMsgComponent = {}\n if (msgComponent) {\n updatedMsgComponent = {\n ...msgComponent,\n ...{\n props: { ...msgComponent.props, ack: action.payload.ack },\n },\n }\n }\n\n const updatedMessagesComponents = msgComponent\n ? getUpdatedMessagesComponents(state, msgIndex, updatedMsgComponent)\n : state.messagesComponents\n\n const messageJSON = state.messagesJSON.find(m => m.id === messageId)\n\n const updatedMessagesJSON = messageJSON\n ? getUpdatedMessagesJSON(state, msgIndex, action.payload)\n : state.messagesJSON\n\n const numUnreadMessages = updatedMessagesComponents.filter(\n messageComponent =>\n messageComponent.props?.isUnread &&\n messageComponent.props?.sentBy !== SENDERS.user &&\n messageComponent.props?.sentBy !== SENDERS.system\n ).length\n\n return {\n ...state,\n messagesJSON: updatedMessagesJSON,\n messagesComponents: updatedMessagesComponents,\n numUnreadMessages,\n }\n }\n\n return state\n}\n\nfunction addMessageReducer(\n state: WebchatState,\n action: { type: WebchatAction; payload?: any }\n) {\n if (state.messagesJSON?.find(m => m.id === action.payload.id)) {\n return state\n }\n return {\n ...state,\n messagesJSON: [...(state.messagesJSON || []), action.payload],\n }\n}\n\nfunction updateCustomMessagePropsReducer(\n state: WebchatState,\n action: { type: WebchatAction; payload?: any }\n) {\n const { messageId, props } = action.payload\n\n if (!messageId) {\n return state\n }\n\n // Similar to updateMessageReducer but only for custom messages when update props\n const msgIndex = state.messagesJSON.map(m => m.id).indexOf(messageId)\n if (msgIndex > -1) {\n const msgComponent = state.messagesComponents[msgIndex]\n if (msgComponent) {\n msgComponent.props = {\n ...msgComponent.props,\n ack: action.payload.ack,\n ...props,\n }\n }\n\n const updatedMessagesComponents = msgComponent\n ? getUpdatedMessagesComponents(state, msgIndex, msgComponent)\n : state.messagesComponents\n\n const messageJSON = state.messagesJSON.find(m => m.id === messageId)\n if (messageJSON) {\n messageJSON.data = {\n ...messageJSON.data,\n ...props,\n }\n }\n\n const updatedMessagesJSON = messageJSON\n ? getUpdatedMessagesJSON(state, msgIndex, messageJSON)\n : state.messagesJSON\n\n return {\n ...state,\n messagesJSON: updatedMessagesJSON,\n messagesComponents: updatedMessagesComponents,\n }\n }\n\n return state\n}\n\n// Helper functions to update messagesComponents and messagesJSON\nfunction getUpdatedMessagesComponents(\n state: WebchatState,\n msgIndex: number,\n updatedMessageComponent: any\n) {\n return [\n ...state.messagesComponents.slice(0, msgIndex),\n { ...updatedMessageComponent },\n ...state.messagesComponents.slice(msgIndex + 1),\n ]\n}\n\nfunction getUpdatedMessagesJSON(\n state: WebchatState,\n msgIndex: number,\n messageJSON: any\n) {\n return [\n ...state.messagesJSON.slice(0, msgIndex),\n { ...messageJSON },\n ...state.messagesJSON.slice(msgIndex + 1),\n ]\n}\n"],"names":["SENDERS","WebchatAction","messagesReducer","state","action","addMessageReducer","addMessageComponent","updateMessageReducer","updateCustomMessagePropsReducer","undefined","resetUnreadMessages","Error","messageComponent","isUnreadMessage","numUnreadMessages","messagesComponents","messagesJSON","messageJSON","messageId","msgIndex","m","msgComponent","updatedMsgComponent","updatedMessagesComponents","getUpdatedMessagesComponents","updatedMessagesJSON","getUpdatedMessagesJSON","props","updatedMessageComponent"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/context/types.js","sources":["../../../../src/webchat/context/types.ts"],"sourcesContent":["import type { Input as CoreInput, Session as CoreSession } from '@botonic/core'\n\nimport type { Reply, WebchatSettingsProps, Webview } from '../../components'\nimport type { CloseWebviewOptions } from '../../contexts'\nimport type {\n PreviewUtils,\n TrackEventFunction,\n WebchatMessage,\n} from '../../index-types'\nimport type { WebchatTheme } from '../theme/types'\n\nexport interface ErrorMessage {\n message?: string\n}\n\nexport interface DevSettings {\n keepSessionOnReload?: boolean\n showSessionView?: boolean\n}\n\nexport interface WebchatState {\n messagesJSON: any[]\n messagesComponents: any[]\n replies?: (typeof Reply)[]\n latestInput: Partial<CoreInput>\n typing: boolean\n // In local development webview can be a React.ComponentType or a Webview object\n webview?: Webview | string | React.ComponentType\n webviewParams: Record<string, string>\n session: Partial<CoreSession>\n lastRoutePath?: string\n handoff: boolean\n theme: WebchatTheme\n themeUpdates: Partial<WebchatTheme>\n error: ErrorMessage\n online: boolean\n devSettings: DevSettings\n isWebchatOpen: boolean\n isEmojiPickerOpen: boolean\n isPersistentMenuOpen: boolean\n isCoverComponentOpen: boolean\n isCustomComponentRendered: boolean\n lastMessageUpdate?: string\n currentAttachment?: File\n numUnreadMessages: number\n isLastMessageVisible: boolean\n isInputFocused: boolean\n}\n\n// ClientInput: type for sendInput and updateLatestInput function without message_id and bot_interaction_id because backend set this values\nexport type ClientInput = Omit<CoreInput, 'message_id' | 'bot_interaction_id'>\n// ClientSession: type for session in frontend when webchat is deployed\nexport type ClientSession = {\n user: ClientUser\n}\n// ClientUser: type for user in frontend when webchat is deployed\nexport type ClientUser = {\n id: string\n name: string\n locale: string\n country: string\n system_locale?: string\n extra_data?: Record<string, any>\n}\n\nexport interface WebchatContextProps {\n addMessage: (message: WebchatMessage) => void\n getThemeProperty: (property: string, defaultValue?: any) => any\n closeWebview: (options?: CloseWebviewOptions) => Promise<void>\n openWebview: (\n webviewComponent: Webview,\n params?: Record<string, string>\n ) => void\n resetUnreadMessages: () => void\n resolveCase: () => void\n sendAttachment: (attachment: File) => Promise<void>\n sendInput: (input: ClientInput) => Promise<void>\n sendPayload: (payload: string) => Promise<void>\n sendText: (text: string, payload?: string) => Promise<void>\n setIsInputFocused: (isInputFocused: boolean) => void\n setLastMessageVisible: (isLastMessageVisible: boolean) => void\n toggleWebchat: (toggle: boolean) => void\n toggleEmojiPicker: (toggle: boolean) => void\n togglePersistentMenu: (toggle: boolean) => void\n toggleCoverComponent: (toggle: boolean) => void\n updateCustomMessageProps: (\n json: Record<string, any>,\n messageId?: string\n ) => void\n updateLatestInput: (input: ClientInput) => void\n updateMessage: (message: WebchatMessage) => void\n updateReplies: (replies: (typeof Reply)[]) => void\n updateUser: (user: Partial<ClientUser>) => void\n updateWebchatDevSettings: (settings: WebchatSettingsProps) => void\n trackEvent?: TrackEventFunction\n previewUtils?: PreviewUtils\n webchatState: WebchatState\n webchatContainerRef: React.MutableRefObject<HTMLDivElement | null>\n chatAreaRef: React.MutableRefObject<HTMLDivElement | null>\n inputPanelRef: React.MutableRefObject<HTMLDivElement | null>\n headerRef: React.MutableRefObject<HTMLDivElement | null>\n scrollableMessagesListRef: React.MutableRefObject<HTMLDivElement | null>\n repliesRef: React.MutableRefObject<HTMLDivElement | null>\n}\n"],"names":[],"mappings":"AAuGC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/context/use-webchat.js","sources":["../../../../src/webchat/context/use-webchat.ts"],"sourcesContent":["import type { Session } from '@botonic/core'\nimport { useReducer, useRef } from 'react'\n\nimport type { Reply } from '../../components'\nimport type { Webview } from '../../components/index-types'\nimport type { WebchatMessage } from '../../index-types'\nimport { defaultTheme } from '../theme/default-theme'\nimport type { WebchatTheme } from '../theme/types'\nimport { WebchatAction } from './actions'\nimport type {\n ClientInput,\n DevSettings,\n ErrorMessage,\n WebchatState,\n} from './types'\nimport { webchatReducer } from './webchat-reducer'\n\nfunction getWebchatInitialState(initialTheme: WebchatTheme): WebchatState {\n return {\n replies: [],\n messagesJSON: [],\n messagesComponents: [],\n latestInput: {},\n typing: false,\n webview: undefined,\n webviewParams: {},\n session: { user: undefined },\n lastRoutePath: undefined,\n handoff: false,\n theme: initialTheme,\n themeUpdates: {},\n error: {},\n online: true,\n devSettings: { keepSessionOnReload: false },\n isWebchatOpen: false,\n isEmojiPickerOpen: false,\n isPersistentMenuOpen: false,\n isCoverComponentOpen: false,\n isCustomComponentRendered: false,\n lastMessageUpdate: undefined,\n currentAttachment: undefined,\n numUnreadMessages: 0,\n isLastMessageVisible: true,\n isInputFocused: false,\n }\n}\n\nexport interface UseWebchat {\n addMessage: (message: WebchatMessage) => void\n addMessageComponent: (message: { props: WebchatMessage }) => void\n clearMessages: () => void\n doRenderCustomComponent: (toggle: boolean) => void\n resetUnreadMessages: () => void\n setCurrentAttachment: (attachment?: File) => void\n setError: (error?: ErrorMessage) => void\n setIsInputFocused: (isInputFocused: boolean) => void\n setLastMessageVisible: (isLastMessageVisible: boolean) => void\n setOnline: (online: boolean) => void\n toggleCoverComponent: (toggle: boolean) => void\n toggleEmojiPicker: (toggle: boolean) => void\n togglePersistentMenu: (toggle: boolean) => void\n toggleWebchat: (toggle: boolean) => void\n updateCustomMessageProps: (\n props: Record<string, any>,\n messageId?: string\n ) => void\n updateDevSettings: (settings: DevSettings) => void\n updateHandoff: (handoff: boolean) => void\n updateLastMessageDate: (date: string) => void\n updateLastRoutePath: (path: string) => void\n updateLatestInput: (input: ClientInput) => void\n updateMessage: (message: WebchatMessage) => void\n updateReplies: (replies: (typeof Reply)[]) => void\n updateSession: (session: Partial<Session>) => void\n updateTheme: (theme: WebchatTheme, themeUpdates?: WebchatTheme) => void\n updateTyping: (typing: boolean) => void\n updateWebview: (webview: Webview, params?: Record<string, string>) => void\n removeReplies: () => void\n removeWebview: () => void\n webchatState: WebchatState\n webchatContainerRef: React.MutableRefObject<HTMLDivElement | null>\n headerRef: React.MutableRefObject<HTMLDivElement | null>\n chatAreaRef: React.MutableRefObject<HTMLDivElement | null>\n scrollableMessagesListRef: React.MutableRefObject<HTMLDivElement | null>\n repliesRef: React.MutableRefObject<HTMLDivElement | null>\n inputPanelRef: React.MutableRefObject<HTMLDivElement | null>\n}\n\nexport function useWebchat(theme?: WebchatTheme): UseWebchat {\n const initialTheme = theme || defaultTheme\n const webchatInitialState = getWebchatInitialState(initialTheme)\n\n const [webchatState, webchatDispatch] = useReducer(\n webchatReducer,\n webchatInitialState\n )\n\n const webchatContainerRef = useRef<HTMLDivElement | null>(null)\n const chatAreaRef = useRef<HTMLDivElement | null>(null)\n const inputPanelRef = useRef<HTMLDivElement | null>(null)\n const headerRef = useRef<HTMLDivElement | null>(null)\n const scrollableMessagesListRef = useRef<HTMLDivElement | null>(null)\n const repliesRef = useRef<HTMLDivElement | null>(null)\n\n const addMessage = (message: WebchatMessage) =>\n webchatDispatch({ type: WebchatAction.ADD_MESSAGE, payload: message })\n\n const addMessageComponent = (message: { props: WebchatMessage }) =>\n webchatDispatch({\n type: WebchatAction.ADD_MESSAGE_COMPONENT,\n payload: message,\n })\n\n const updateCustomMessageProps = (\n props: Record<string, any>,\n messageId?: string\n ) =>\n webchatDispatch({\n type: WebchatAction.UPDATE_CUSTOM_MESSAGE_PROPS,\n payload: { messageId, props },\n })\n\n const updateMessage = (message: WebchatMessage) =>\n webchatDispatch({ type: WebchatAction.UPDATE_MESSAGE, payload: message })\n\n const updateReplies = (replies: (typeof Reply)[]) =>\n webchatDispatch({ type: WebchatAction.UPDATE_REPLIES, payload: replies })\n\n const removeReplies = () =>\n webchatDispatch({ type: WebchatAction.REMOVE_REPLIES, payload: [] })\n\n const updateLatestInput = (input: ClientInput) =>\n webchatDispatch({ type: WebchatAction.UPDATE_LATEST_INPUT, payload: input })\n\n const updateTyping = (typing: boolean) =>\n webchatDispatch({ type: WebchatAction.UPDATE_TYPING, payload: typing })\n\n const updateWebview = (webview: Webview, params?: Record<string, string>) =>\n webchatDispatch({\n type: WebchatAction.UPDATE_WEBVIEW,\n payload: { webview, webviewParams: params ?? {} },\n })\n\n const removeWebview = () =>\n webchatDispatch({\n type: WebchatAction.REMOVE_WEBVIEW,\n })\n\n const updateSession = (session: Partial<Session>) => {\n webchatDispatch({\n type: WebchatAction.UPDATE_SESSION,\n payload: session,\n })\n }\n\n const updateLastRoutePath = (path: string) =>\n webchatDispatch({\n type: WebchatAction.UPDATE_LAST_ROUTE_PATH,\n payload: path,\n })\n\n const updateHandoff = (handoff: boolean) =>\n webchatDispatch({\n type: WebchatAction.UPDATE_HANDOFF,\n payload: handoff,\n })\n\n const updateTheme = (theme: WebchatTheme, themeUpdates?: WebchatTheme) => {\n const payload =\n themeUpdates !== undefined ? { theme, themeUpdates } : { theme }\n webchatDispatch({\n type: WebchatAction.UPDATE_THEME,\n payload,\n })\n }\n\n const updateDevSettings = (settings: DevSettings) =>\n webchatDispatch({\n type: WebchatAction.UPDATE_DEV_SETTINGS,\n payload: settings,\n })\n\n const toggleWebchat = (toggle: boolean) => {\n webchatDispatch({\n type: WebchatAction.TOGGLE_WEBCHAT,\n payload: toggle,\n })\n }\n\n const toggleEmojiPicker = (toggle: boolean) =>\n webchatDispatch({\n type: WebchatAction.TOGGLE_EMOJI_PICKER,\n payload: toggle,\n })\n\n const togglePersistentMenu = (toggle: boolean) =>\n webchatDispatch({\n type: WebchatAction.TOGGLE_PERSISTENT_MENU,\n payload: toggle,\n })\n\n const toggleCoverComponent = (toggle: boolean) =>\n webchatDispatch({\n type: WebchatAction.TOGGLE_COVER_COMPONENT,\n payload: toggle,\n })\n\n const doRenderCustomComponent = (toggle: boolean) =>\n webchatDispatch({\n type: WebchatAction.DO_RENDER_CUSTOM_COMPONENT,\n payload: toggle,\n })\n\n const setError = (error?: ErrorMessage) =>\n webchatDispatch({\n type: WebchatAction.SET_ERROR,\n payload: error,\n })\n\n const setOnline = (online: boolean) =>\n webchatDispatch({\n type: WebchatAction.SET_ONLINE,\n payload: online,\n })\n\n const clearMessages = () => {\n webchatDispatch({\n type: WebchatAction.CLEAR_MESSAGES,\n })\n }\n\n const updateLastMessageDate = (date: string) => {\n webchatDispatch({\n type: WebchatAction.UPDATE_LAST_MESSAGE_DATE,\n payload: date,\n })\n }\n\n const setCurrentAttachment = (attachment?: File) => {\n webchatDispatch({\n type: WebchatAction.SET_CURRENT_ATTACHMENT,\n payload: attachment,\n })\n }\n\n const resetUnreadMessages = () => {\n webchatDispatch({\n type: WebchatAction.RESET_UNREAD_MESSAGES,\n })\n }\n\n const setLastMessageVisible = (isLastMessageVisible: boolean) => {\n webchatDispatch({\n type: WebchatAction.SET_LAST_MESSAGE_VISIBLE,\n payload: isLastMessageVisible,\n })\n }\n\n const setIsInputFocused = (isInputFocused: boolean) => {\n webchatDispatch({\n type: WebchatAction.SET_IS_INPUT_FOCUSED,\n payload: isInputFocused,\n })\n }\n\n return {\n addMessage,\n addMessageComponent,\n clearMessages,\n doRenderCustomComponent,\n resetUnreadMessages,\n setCurrentAttachment,\n setError,\n setIsInputFocused,\n setLastMessageVisible,\n setOnline,\n toggleCoverComponent,\n toggleEmojiPicker,\n togglePersistentMenu,\n toggleWebchat,\n updateCustomMessageProps,\n updateDevSettings,\n updateHandoff,\n updateLastMessageDate,\n updateLastRoutePath,\n updateLatestInput,\n updateMessage,\n updateReplies,\n updateSession,\n updateTheme,\n updateTyping,\n updateWebview,\n removeReplies,\n removeWebview,\n webchatState,\n webchatContainerRef,\n headerRef,\n chatAreaRef,\n scrollableMessagesListRef,\n repliesRef,\n inputPanelRef,\n }\n}\n"],"names":["useReducer","useRef","defaultTheme","WebchatAction","webchatReducer","getWebchatInitialState","initialTheme","undefined","useWebchat","theme","webchatInitialState","webchatState","webchatDispatch","webchatContainerRef","chatAreaRef","inputPanelRef","headerRef","scrollableMessagesListRef","repliesRef","addMessage","message","addMessageComponent","updateCustomMessageProps","props","messageId","updateMessage","updateReplies","replies","removeReplies","updateLatestInput","input","updateTyping","typing","updateWebview","webview","params","removeWebview","updateSession","session","updateLastRoutePath","path","updateHandoff","handoff","updateTheme","themeUpdates","payload","updateDevSettings","settings","toggleWebchat","toggle","toggleEmojiPicker","togglePersistentMenu","toggleCoverComponent","doRenderCustomComponent","setError","error","setOnline","online","clearMessages","updateLastMessageDate","date","setCurrentAttachment","attachment","resetUnreadMessages","setLastMessageVisible","isLastMessageVisible","setIsInputFocused","isInputFocused"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/context/webchat-reducer.js","sources":["../../../../src/webchat/context/webchat-reducer.ts"],"sourcesContent":["import { WebchatAction } from './actions'\nimport { messagesReducer } from './messages-reducer'\nimport type { WebchatState } from './types'\n\n// eslint-disable-next-line complexity\nexport function webchatReducer(\n state: WebchatState,\n action: { type: WebchatAction; payload?: any }\n): WebchatState {\n switch (action.type) {\n case WebchatAction.UPDATE_WEBVIEW:\n return { ...state, ...action.payload }\n case WebchatAction.REMOVE_WEBVIEW:\n return { ...state, webview: undefined, webviewParams: {} }\n case WebchatAction.UPDATE_SESSION:\n return { ...state, session: { ...action.payload } }\n case WebchatAction.UPDATE_TYPING:\n return { ...state, typing: action.payload }\n case WebchatAction.UPDATE_THEME:\n return {\n ...state,\n ...action.payload,\n }\n case WebchatAction.UPDATE_HANDOFF:\n return { ...state, handoff: action.payload }\n case WebchatAction.TOGGLE_WEBCHAT: {\n const isWebchatOpen = action.payload\n return {\n ...state,\n isWebchatOpen,\n }\n }\n case WebchatAction.TOGGLE_EMOJI_PICKER:\n return { ...state, isEmojiPickerOpen: action.payload }\n case WebchatAction.TOGGLE_PERSISTENT_MENU:\n return { ...state, isPersistentMenuOpen: action.payload }\n case WebchatAction.TOGGLE_COVER_COMPONENT:\n return { ...state, isCoverComponentOpen: action.payload }\n case WebchatAction.DO_RENDER_CUSTOM_COMPONENT:\n return { ...state, isCustomComponentRendered: action.payload }\n case WebchatAction.SET_ERROR:\n return { ...state, error: action.payload || {} }\n case WebchatAction.SET_ONLINE:\n return { ...state, online: action.payload }\n case WebchatAction.UPDATE_DEV_SETTINGS:\n return { ...state, devSettings: { ...action.payload } }\n case WebchatAction.UPDATE_LATEST_INPUT:\n return { ...state, latestInput: action.payload }\n case WebchatAction.UPDATE_LAST_ROUTE_PATH:\n return { ...state, lastRoutePath: action.payload }\n case WebchatAction.SET_CURRENT_ATTACHMENT:\n return { ...state, currentAttachment: action.payload }\n case WebchatAction.SET_IS_INPUT_FOCUSED:\n return { ...state, isInputFocused: action.payload }\n default:\n return messagesReducer(state, action)\n }\n}\n"],"names":["WebchatAction","messagesReducer","webchatReducer","state","action","undefined","isWebchatOpen"],"mappings":";;;;;AAAyC;AACW;AAGpD,sCAAsC;AAC/B,SAASE,cAAcA,CAC5BC,KAAmB,EACnBC,MAA8C;IAE9C,OAAQA,OAAO,IAAI;QACjB,KAAKJ,4BAA4B;YAC/B,OAAO;gBAAE,GAAGG,KAAK;gBAAE,GAAGC,OAAO,OAAO;YAAC;QACvC,KAAKJ,4BAA4B;YAC/B,OAAO;gBAAE,GAAGG,KAAK;gBAAE,SAASE;gBAAW,eAAe,CAAC;YAAE;QAC3D,KAAKL,4BAA4B;YAC/B,OAAO;gBAAE,GAAGG,KAAK;gBAAE,SAAS;oBAAE,GAAGC,OAAO,OAAO;gBAAC;YAAE;QACpD,KAAKJ,2BAA2B;YAC9B,OAAO;gBAAE,GAAGG,KAAK;gBAAE,QAAQC,OAAO,OAAO;YAAC;QAC5C,KAAKJ,0BAA0B;YAC7B,OAAO;gBACL,GAAGG,KAAK;gBACR,GAAGC,OAAO,OAAO;YACnB;QACF,KAAKJ,4BAA4B;YAC/B,OAAO;gBAAE,GAAGG,KAAK;gBAAE,SAASC,OAAO,OAAO;YAAC;QAC7C,KAAKJ,4BAA4B;YAAE;gBACjC,MAAMM,gBAAgBF,OAAO,OAAO;gBACpC,OAAO;oBACL,GAAGD,KAAK;oBACRG;gBACF;YACF;QACA,KAAKN,iCAAiC;YACpC,OAAO;gBAAE,GAAGG,KAAK;gBAAE,mBAAmBC,OAAO,OAAO;YAAC;QACvD,KAAKJ,oCAAoC;YACvC,OAAO;gBAAE,GAAGG,KAAK;gBAAE,sBAAsBC,OAAO,OAAO;YAAC;QAC1D,KAAKJ,oCAAoC;YACvC,OAAO;gBAAE,GAAGG,KAAK;gBAAE,sBAAsBC,OAAO,OAAO;YAAC;QAC1D,KAAKJ,wCAAwC;YAC3C,OAAO;gBAAE,GAAGG,KAAK;gBAAE,2BAA2BC,OAAO,OAAO;YAAC;QAC/D,KAAKJ,uBAAuB;YAC1B,OAAO;gBAAE,GAAGG,KAAK;gBAAE,OAAOC,OAAO,OAAO,IAAI,CAAC;YAAE;QACjD,KAAKJ,wBAAwB;YAC3B,OAAO;gBAAE,GAAGG,KAAK;gBAAE,QAAQC,OAAO,OAAO;YAAC;QAC5C,KAAKJ,iCAAiC;YACpC,OAAO;gBAAE,GAAGG,KAAK;gBAAE,aAAa;oBAAE,GAAGC,OAAO,OAAO;gBAAC;YAAE;QACxD,KAAKJ,iCAAiC;YACpC,OAAO;gBAAE,GAAGG,KAAK;gBAAE,aAAaC,OAAO,OAAO;YAAC;QACjD,KAAKJ,oCAAoC;YACvC,OAAO;gBAAE,GAAGG,KAAK;gBAAE,eAAeC,OAAO,OAAO;YAAC;QACnD,KAAKJ,oCAAoC;YACvC,OAAO;gBAAE,GAAGG,KAAK;gBAAE,mBAAmBC,OAAO,OAAO;YAAC;QACvD,KAAKJ,kCAAkC;YACrC,OAAO;gBAAE,GAAGG,KAAK;gBAAE,gBAAgBC,OAAO,OAAO;YAAC;QACpD;YACE,OAAOH,eAAeA,CAACE,OAAOC;IAClC;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/cover-component/index.js","sources":["../../../../src/webchat/cover-component/index.tsx"],"sourcesContent":["import { useContext } from 'react'\n\nimport { WEBCHAT } from '../../constants'\nimport { WebchatContext } from '../context'\n\ninterface Props {\n component: any\n componentProps: any\n}\n\nexport const CoverComponent = ({ component, componentProps }: Props) => {\n const { getThemeProperty, toggleCoverComponent, webchatState } =\n useContext(WebchatContext)\n\n const Cover = component\n\n const coverComponentProps = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.coverComponentProps,\n componentProps\n )\n\n const closeCoverComponent = () => {\n toggleCoverComponent(false)\n }\n\n if (!Cover || !webchatState.isCoverComponentOpen) {\n return null\n }\n\n return <Cover closeComponent={closeCoverComponent} {...coverComponentProps} />\n}\n"],"names":["useContext","WEBCHAT","WebchatContext","CoverComponent","component","componentProps","getThemeProperty","toggleCoverComponent","webchatState","Cover","coverComponentProps","closeCoverComponent"],"mappings":";;;;;;;;;;AAAkC;AAEO;AACE;AAOpC,MAAMG,cAAcA,GAAG,CAAC,EAAEC,SAAS,EAAEC,cAAc,EAAS;IACjE,MAAM,EAAEC,gBAAgB,EAAEC,oBAAoB,EAAEC,YAAY,EAAE,GAC5DR,UAAUA,CAACE,cAAcA;IAE3B,MAAMO,QAAQL;IAEd,MAAMM,sBAAsBJ,iBAC1BL,6CAA6C,EAC7CI;IAGF,MAAMM,sBAAsB;QAC1BJ,qBAAqB;IACvB;IAEA,IAAI,CAACE,SAAS,CAACD,aAAa,oBAAoB,EAAE;QAChD,OAAO;IACT;IAEA,qBAAO,IAACC;QAAM,gBAAgBE;QAAsB,GAAGD,mBAAmB;;AAC5E,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/index.js","sources":["../../../../src/webchat/custom-messages/index.ts"],"sourcesContent":["export { default as CustomRatingMessage } from './rating'\n"],"names":["default","CustomRatingMessage"],"mappings":";AAAyD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/icons/face-angry.js","sources":["../../../../../../src/webchat/custom-messages/rating/icons/face-angry.tsx"],"sourcesContent":["/** biome-ignore-all lint/a11y/noSvgWithoutTitle: This is a SVG icon */\nimport type { RatingIconProps } from '../types'\n\nexport const FaceAngrySvg = ({ color, selected }: RatingIconProps) => {\n return selected ? (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' color={color}>\n <path\n d='M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM338.7 395.9c6.6-5.9 7.1-16 1.2-22.6C323.8 355.4 295.7 336 256 336s-67.8 19.4-83.9 37.3c-5.9 6.6-5.4 16.7 1.2 22.6s16.7 5.4 22.6-1.2c11.7-13 31.6-26.7 60.1-26.7s48.4 13.7 60.1 26.7c5.9 6.6 16 7.1 22.6 1.2zM176.4 272c17.7 0 32-14.3 32-32c0-1.5-.1-3-.3-4.4l10.9 3.6c8.4 2.8 17.4-1.7 20.2-10.1s-1.7-17.4-10.1-20.2l-96-32c-8.4-2.8-17.4 1.7-20.2 10.1s1.7 17.4 10.1 20.2l30.7 10.2c-5.8 5.8-9.3 13.8-9.3 22.6c0 17.7 14.3 32 32 32zm192-32c0-8.9-3.6-17-9.5-22.8l30.2-10.1c8.4-2.8 12.9-11.9 10.1-20.2s-11.9-12.9-20.2-10.1l-96 32c-8.4 2.8-12.9 11.9-10.1 20.2s11.9 12.9 20.2 10.1l11.7-3.9c-.2 1.5-.3 3.1-.3 4.7c0 17.7 14.3 32 32 32s32-14.3 32-32z'\n fill='currentColor'\n />\n </svg>\n ) : (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' color={color}>\n <path\n d='M256 48a208 208 0 1 1 0 416 208 208 0 1 1 0-416zm0 464A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm72.4-118.5c9.7-9 10.2-24.2 1.2-33.9C315.3 344.3 290.6 328 256 328s-59.3 16.3-73.5 31.6c-9 9.7-8.5 24.9 1.2 33.9s24.9 8.5 33.9-1.2c7.4-7.9 20-16.4 38.5-16.4s31.1 8.5 38.5 16.4c9 9.7 24.2 10.2 33.9 1.2zM176.4 272c17.7 0 32-14.3 32-32c0-1.5-.1-3-.3-4.4l10.9 3.6c8.4 2.8 17.4-1.7 20.2-10.1s-1.7-17.4-10.1-20.2l-96-32c-8.4-2.8-17.4 1.7-20.2 10.1s1.7 17.4 10.1 20.2l30.7 10.2c-5.8 5.8-9.3 13.8-9.3 22.6c0 17.7 14.3 32 32 32zm192-32c0-8.9-3.6-17-9.5-22.8l30.2-10.1c8.4-2.8 12.9-11.9 10.1-20.2s-11.9-12.9-20.2-10.1l-96 32c-8.4 2.8-12.9 11.9-10.1 20.2s11.9 12.9 20.2 10.1l11.7-3.9c-.2 1.5-.3 3.1-.3 4.7c0 17.7 14.3 32 32 32s32-14.3 32-32z'\n fill='currentColor'\n />\n </svg>\n )\n}\n"],"names":["FaceAngrySvg","color","selected"],"mappings":";;;AAAA,qEAAqE;AAG9D,MAAMA,YAAYA,GAAG,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAmB;IAC/D,OAAOA,yBACL,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOD;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;uBAIT,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOA;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;;AAIb,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/icons/face-frown.js","sources":["../../../../../../src/webchat/custom-messages/rating/icons/face-frown.tsx"],"sourcesContent":["/** biome-ignore-all lint/a11y/noSvgWithoutTitle: This is a SVG icon */\nimport type { RatingIconProps } from '../types'\n\nexport const FaceFrownSvg = ({ color, selected }: RatingIconProps) => {\n return selected ? (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' color={color}>\n <path\n d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM159.3 388.7c-2.6 8.4-11.6 13.2-20 10.5s-13.2-11.6-10.5-20C145.2 326.1 196.3 288 256 288s110.8 38.1 127.3 91.3c2.6 8.4-2.1 17.4-10.5 20s-17.4-2.1-20-10.5C340.5 349.4 302.1 320 256 320s-84.5 29.4-96.7 68.7zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'\n fill='currentColor'\n />\n </svg>\n ) : (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' color={color}>\n <path\n d='M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM174.6 384.1c-4.5 12.5-18.2 18.9-30.7 14.4s-18.9-18.2-14.4-30.7C146.9 319.4 198.9 288 256 288s109.1 31.4 126.6 79.9c4.5 12.5-2 26.2-14.4 30.7s-26.2-2-30.7-14.4C328.2 358.5 297.2 336 256 336s-72.2 22.5-81.4 48.1zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'\n fill='currentColor'\n />\n </svg>\n )\n}\n"],"names":["FaceFrownSvg","color","selected"],"mappings":";;;AAAA,qEAAqE;AAG9D,MAAMA,YAAYA,GAAG,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAmB;IAC/D,OAAOA,yBACL,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOD;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;uBAIT,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOA;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;;AAIb,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/icons/face-grin-beam.js","sources":["../../../../../../src/webchat/custom-messages/rating/icons/face-grin-beam.tsx"],"sourcesContent":["/** biome-ignore-all lint/a11y/noSvgWithoutTitle: This is a SVG icon */\nimport type { RatingIconProps } from '../types'\n\nexport const FaceGrinBeamSvg = ({ color, selected }: RatingIconProps) => {\n return selected ? (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' color={color}>\n <path\n d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zm-170.5-84s0 0 0 0c0 0 0 0 0 0l-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8c0 0 0 0 0 0s0 0 0 0zm160 0c0 0 0 0 0 0l-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8c0 0 0 0 0 0s0 0 0 0s0 0 0 0z'\n fill='currentColor'\n />\n </svg>\n ) : (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' color={color}>\n <path\n d='M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm349.5 52.4c18.7-4.4 35.9 12 25.5 28.1C350.4 374.6 306.3 400 255.9 400s-94.5-25.4-119.1-63.5c-10.4-16.1 6.8-32.5 25.5-28.1c28.9 6.8 60.5 10.5 93.6 10.5s64.7-3.7 93.6-10.5zM217.6 228.8s0 0 0 0c0 0 0 0 0 0l-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8c0 0 0 0 0 0s0 0 0 0zm160 0c0 0 0 0 0 0l-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8c0 0 0 0 0 0s0 0 0 0s0 0 0 0z'\n fill='currentColor'\n />\n </svg>\n )\n}\n"],"names":["FaceGrinBeamSvg","color","selected"],"mappings":";;;AAAA,qEAAqE;AAG9D,MAAMA,eAAeA,GAAG,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAmB;IAClE,OAAOA,yBACL,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOD;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;uBAIT,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOA;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;;AAIb,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/icons/face-meh.js","sources":["../../../../../../src/webchat/custom-messages/rating/icons/face-meh.tsx"],"sourcesContent":["/** biome-ignore-all lint/a11y/noSvgWithoutTitle: we don't need a title for the svg */\nimport type { RatingIconProps } from '../types'\n\nexport const FaceMehSvg = ({ color, selected }: RatingIconProps) => {\n return selected ? (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' color={color}>\n <path\n d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM176.4 176a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM160 336l192 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-192 0c-8.8 0-16-7.2-16-16s7.2-16 16-16z'\n fill='currentColor'\n />\n </svg>\n ) : (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' color={color}>\n <path\n d='M464 256A208 208 0 1 1 48 256a208 208 0 1 1 416 0zM256 0a256 256 0 1 0 0 512A256 256 0 1 0 256 0zM176.4 240a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm192-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM184 328c-13.3 0-24 10.7-24 24s10.7 24 24 24l144 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-144 0z'\n fill='currentColor'\n />\n </svg>\n )\n}\n"],"names":["FaceMehSvg","color","selected"],"mappings":";;;AAAA,oFAAoF;AAG7E,MAAMA,UAAUA,GAAG,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAmB;IAC7D,OAAOA,yBACL,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOD;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;uBAIT,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOA;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;;AAIb,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/icons/face-smile.js","sources":["../../../../../../src/webchat/custom-messages/rating/icons/face-smile.tsx"],"sourcesContent":["/** biome-ignore-all lint/a11y/noSvgWithoutTitle: This is a SVG icon */\nimport type { RatingIconProps } from '../types'\n\nexport const FaceSmileSvg = ({ color, selected }: RatingIconProps) => {\n return selected ? (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' color={color}>\n <path\n d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM164.1 325.5C182 346.2 212.6 368 256 368s74-21.8 91.9-42.5c5.8-6.7 15.9-7.4 22.6-1.6s7.4 15.9 1.6 22.6C349.8 372.1 311.1 400 256 400s-93.8-27.9-116.1-53.5c-5.8-6.7-5.1-16.8 1.6-22.6s16.8-5.1 22.6 1.6zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'\n fill='currentColor'\n />\n </svg>\n ) : (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' color={color}>\n <path\n d='M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm177.6 62.1C192.8 334.5 218.8 352 256 352s63.2-17.5 78.4-33.9c9-9.7 24.2-10.4 33.9-1.4s10.4 24.2 1.4 33.9c-22 23.8-60 49.4-113.6 49.4s-91.7-25.5-113.6-49.4c-9-9.7-8.4-24.9 1.4-33.9s24.9-8.4 33.9 1.4zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'\n fill='currentColor'\n />\n </svg>\n )\n}\n"],"names":["FaceSmileSvg","color","selected"],"mappings":";;;AAAA,qEAAqE;AAG9D,MAAMA,YAAYA,GAAG,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAmB;IAC/D,OAAOA,yBACL,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOD;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;uBAIT,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOA;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;;AAIb,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/icons/index.js","sources":["../../../../../../src/webchat/custom-messages/rating/icons/index.ts"],"sourcesContent":["export * from './face-angry'\nexport * from './face-frown'\nexport * from './face-grin-beam'\nexport * from './face-meh'\nexport * from './face-smile'\nexport * from './star'\n"],"names":[],"mappings":";;;;;;AAA4B;AACA;AACI;AACN;AACE;AACN"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/icons/star.js","sources":["../../../../../../src/webchat/custom-messages/rating/icons/star.tsx"],"sourcesContent":["/** biome-ignore-all lint/a11y/noSvgWithoutTitle: This is a SVG icon */\nimport type { RatingIconProps } from '../types'\n\nexport const StarSvg = ({ color, selected }: RatingIconProps) => {\n return selected ? (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512' color={color}>\n <path\n d='M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z'\n fill='currentColor'\n />\n </svg>\n ) : (\n <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512' color={color}>\n <path\n d='M287.9 0c9.2 0 17.6 5.2 21.6 13.5l68.6 141.3 153.2 22.6c9 1.3 16.5 7.6 19.3 16.3s.5 18.1-5.9 24.5L433.6 328.4l26.2 155.6c1.5 9-2.2 18.1-9.7 23.5s-17.3 6-25.3 1.7l-137-73.2L151 509.1c-8.1 4.3-17.9 3.7-25.3-1.7s-11.2-14.5-9.7-23.5l26.2-155.6L31.1 218.2c-6.5-6.4-8.7-15.9-5.9-24.5s10.3-14.9 19.3-16.3l153.2-22.6L266.3 13.5C270.4 5.2 278.7 0 287.9 0zm0 79L235.4 187.2c-3.5 7.1-10.2 12.1-18.1 13.3L99 217.9 184.9 303c5.5 5.5 8.1 13.3 6.8 21L171.4 443.7l105.2-56.2c7.1-3.8 15.6-3.8 22.6 0l105.2 56.2L384.2 324.1c-1.3-7.7 1.2-15.5 6.8-21l85.9-85.1L358.6 200.5c-7.8-1.2-14.6-6.1-18.1-13.3L287.9 79z'\n fill='currentColor'\n />\n </svg>\n )\n}\n"],"names":["StarSvg","color","selected"],"mappings":";;;AAAA,qEAAqE;AAG9D,MAAMA,OAAOA,GAAG,CAAC,EAAEC,KAAK,EAAEC,QAAQ,EAAmB;IAC1D,OAAOA,yBACL,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOD;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;uBAIT,IAAC;QAAI,OAAM;QAA6B,SAAQ;QAAc,OAAOA;kBACnE,kBAAC;YACC,GAAE;YACF,MAAK;;;AAIb,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/index.js","sources":["../../../../../src/webchat/custom-messages/rating/index.tsx"],"sourcesContent":["import { INPUT, type InputType } from '@botonic/core'\nimport type React from 'react'\nimport { useContext, useState } from 'react'\nimport { ThemeContext } from 'styled-components'\n\nimport { Button, customMessage } from '../../../components'\nimport { WebchatContext } from '../../context'\nimport { RatingSelector } from './rating-selector'\nimport { MessageBubble } from './styles'\nimport { RatingType } from './types'\n\ninterface CustomRatingMessageProps {\n payloads: string[]\n messageText: string\n buttonText: string\n ratingType: RatingType\n id?: string // This id not exist in local development\n valueSent?: number\n}\n\nconst ratingValues = {\n [RatingType.Stars]: [\n '⭐'.repeat(1),\n '⭐'.repeat(2),\n '⭐'.repeat(3),\n '⭐'.repeat(4),\n '⭐'.repeat(5),\n ],\n [RatingType.Smileys]: ['😠', '🙁', '😐', '🙂', '😄'],\n} as const\n\nconst CustomRatingMessage: React.FC<CustomRatingMessageProps> = props => {\n const { payloads, messageText, buttonText, ratingType, id, valueSent } = props\n const { updateCustomMessageProps, sendInput } = useContext(WebchatContext)\n\n const theme = useContext(ThemeContext)\n const color = theme?.brand?.color ?? ''\n\n const [ratingValue, setRatingValue] = useState(valueSent ? valueSent : -1)\n const [showRating, setShowRating] = useState(true)\n\n const ratingChanged = (newRating: number) => {\n setRatingValue(newRating)\n }\n\n const handleButtonSend = () => {\n if (ratingValue === -1) {\n return\n }\n\n const json = {\n valueSent: ratingValue,\n }\n updateCustomMessageProps(json, id)\n\n setShowRating(false)\n const payload = payloads[ratingValue - 1]\n\n const input = {\n type: INPUT.POSTBACK as InputType,\n payload,\n referral: ratingValues[ratingType][ratingValue - 1],\n }\n void sendInput(input)\n }\n\n const disabled = ratingValue === -1\n\n return (\n <div className='rating-message-container'>\n <MessageBubble className='rating-message-bubble'>\n {messageText}\n <RatingSelector\n color={color}\n onRatingChange={ratingChanged}\n ratingValue={ratingValue}\n ratingType={ratingType}\n valueSent={valueSent}\n />\n </MessageBubble>\n {!props?.valueSent && showRating && (\n <Button\n autodisable={true}\n disabled={disabled}\n onClick={handleButtonSend}\n >\n {buttonText}\n </Button>\n )}\n </div>\n )\n}\n\nexport default customMessage({\n name: 'custom-rating',\n component: CustomRatingMessage,\n})\n"],"names":["INPUT","useContext","useState","ThemeContext","Button","customMessage","WebchatContext","RatingSelector","MessageBubble","RatingType","ratingValues","CustomRatingMessage","props","payloads","messageText","buttonText","ratingType","id","valueSent","updateCustomMessageProps","sendInput","theme","color","ratingValue","setRatingValue","showRating","setShowRating","ratingChanged","newRating","handleButtonSend","json","payload","input","disabled"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAqD;AAET;AACI;AAEW;AACb;AACI;AACV;AACJ;AAWpC,MAAMU,YAAYA,GAAG;IACnB,CAACD,gBAAgB,CAAC,EAAE;QAClB,IAAI,MAAM,CAAC;QACX,IAAI,MAAM,CAAC;QACX,IAAI,MAAM,CAAC;QACX,IAAI,MAAM,CAAC;QACX,IAAI,MAAM,CAAC;KACZ;IACD,CAACA,kBAAkB,CAAC,EAAE;QAAC;QAAM;QAAM;QAAM;QAAM;KAAK;AACtD;AAEA,MAAME,mBAAmBA,GAAuCC,CAAAA;IAC9D,MAAM,EAAEC,QAAQ,EAAEC,WAAW,EAAEC,UAAU,EAAEC,UAAU,EAAEC,EAAE,EAAEC,SAAS,EAAE,GAAGN;IACzE,MAAM,EAAEO,wBAAwB,EAAEC,SAAS,EAAE,GAAGnB,UAAUA,CAACK,cAAcA;IAEzE,MAAMe,QAAQpB,UAAUA,CAACE,YAAYA;IACrC,MAAMmB,QAAQD,OAAO,OAAO,SAAS;IAErC,MAAM,CAACE,aAAaC,eAAe,GAAGtB,QAAQA,CAACgB,YAAYA,YAAY,CAAC;IACxE,MAAM,CAACO,YAAYC,cAAc,GAAGxB,QAAQA,CAAC;IAE7C,MAAMyB,gBAAgB,CAACC;QACrBJ,eAAeI;IACjB;IAEA,MAAMC,mBAAmB;QACvB,IAAIN,gBAAgB,CAAC,GAAG;YACtB;QACF;QAEA,MAAMO,OAAO;YACX,WAAWP;QACb;QACAJ,yBAAyBW,MAAMb;QAE/BS,cAAc;QACd,MAAMK,UAAUlB,QAAQ,CAACU,cAAc,EAAE;QAEzC,MAAMS,QAAQ;YACZ,MAAMhC,cAAc;YACpB+B;YACA,UAAUrB,YAAY,CAACM,WAAW,CAACO,cAAc,EAAE;QACrD;QACA,KAAKH,UAAUY;IACjB;IAEA,MAAMC,WAAWV,gBAAgB,CAAC;IAElC,qBACE,KAAC;QAAI,WAAU;;0BACb,KAACf,aAAaA;gBAAC,WAAU;;oBACtBM;kCACD,IAACP,cAAcA;wBACb,OAAOe;wBACP,gBAAgBK;wBAChB,aAAaJ;wBACb,YAAYP;wBACZ,WAAWE;;;;YAGd,CAACN,OAAO,aAAaa,4BACpB,IAACrB,MAAMA;gBACL,aAAa;gBACb,UAAU6B;gBACV,SAASJ;0BAERd;;;;AAKX;AAEA,qCAAeV,aAAaA,CAAC;IAC3B,MAAM;IACN,WAAWM,mBAAmBA;AAChC,EAAE"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { RatingType } from './types.js';
|
|
2
|
-
interface RatingSelectorProps {
|
|
3
|
-
color: string;
|
|
4
|
-
isSent?: boolean;
|
|
5
|
-
onRatingChange: (newRating: number) => void;
|
|
6
|
-
ratingValue: number;
|
|
7
|
-
ratingType: RatingType;
|
|
8
|
-
valueSent?: number;
|
|
9
|
-
}
|
|
10
|
-
export declare const RatingSelector: ({ color, isSent, onRatingChange, ratingValue, ratingType, valueSent, }: RatingSelectorProps) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/rating-selector.js","sources":["../../../../../src/webchat/custom-messages/rating/rating-selector.tsx"],"sourcesContent":["/** biome-ignore-all lint/a11y/noStaticElementInteractions: we need to use static elements for the rating selector */\n/** biome-ignore-all lint/a11y/useKeyWithClickEvents: we need to use key with click events for the rating selector */\nimport { useState } from 'react'\n\nimport { Smileys } from './smileys'\nimport { Stars } from './stars'\nimport { RatingSelectorContainer } from './styles'\nimport { RatingType } from './types'\n\nconst NUMBER_OF_RATING_BUTTONS = 5\ninterface RatingSelectorProps {\n color: string\n isSent?: boolean\n onRatingChange: (newRating: number) => void\n ratingValue: number\n ratingType: RatingType\n valueSent?: number\n}\n\nexport const RatingSelector = ({\n color,\n isSent,\n onRatingChange,\n ratingValue,\n ratingType,\n valueSent,\n}: RatingSelectorProps) => {\n const [hover, setHover] = useState<number>(valueSent ? valueSent : -1)\n\n const onHover = (ratingNumber: number) => {\n if (!valueSent) {\n setHover(ratingNumber)\n }\n }\n\n return (\n <RatingSelectorContainer isSent={isSent}>\n {Array.from({ length: NUMBER_OF_RATING_BUTTONS }, (_star, i) => {\n const ratingNumber = i + 1\n\n return (\n <div\n key={ratingNumber}\n onMouseEnter={() => onHover(ratingNumber)}\n onMouseLeave={() => onHover(ratingValue)}\n onClick={() => onRatingChange(ratingNumber)}\n >\n {ratingType === RatingType.Stars && (\n <Stars color={color} ratingNumber={ratingNumber} hover={hover} />\n )}\n {ratingType === RatingType.Smileys && (\n <Smileys\n color={color}\n ratingNumber={ratingNumber}\n hover={hover}\n />\n )}\n </div>\n )\n })}\n </RatingSelectorContainer>\n )\n}\n"],"names":["useState","Smileys","Stars","RatingSelectorContainer","RatingType","NUMBER_OF_RATING_BUTTONS","RatingSelector","color","isSent","onRatingChange","ratingValue","ratingType","valueSent","hover","setHover","onHover","ratingNumber","Array","_star","i"],"mappings":";;;;;;;;;;;;;;AAAA,mHAAmH,GACnH,mHAAmH,GACnF;AAEG;AACJ;AACmB;AACd;AAEpC,MAAMK,wBAAwBA,GAAG;AAU1B,MAAMC,cAAcA,GAAG,CAAC,EAC7BC,KAAK,EACLC,MAAM,EACNC,cAAc,EACdC,WAAW,EACXC,UAAU,EACVC,SAAS,EACW;IACpB,MAAM,CAACC,OAAOC,SAAS,GAAGd,QAAQA,CAASY,YAAYA,YAAY,CAAC;IAEpE,MAAMG,UAAU,CAACC;QACf,IAAI,CAACJ,WAAW;YACdE,SAASE;QACX;IACF;IAEA,qBACE,IAACb,uBAAuBA;QAAC,QAAQK;kBAC9BS,MAAM,IAAI,CAAC;YAAE,QAAQZ,wBAAwBA;QAAC,GAAG,CAACa,OAAOC;YACxD,MAAMH,eAAeG,IAAI;YAEzB,qBACE,KAAC;gBAEC,cAAc,IAAMJ,QAAQC;gBAC5B,cAAc,IAAMD,QAAQL;gBAC5B,SAAS,IAAMD,eAAeO;;oBAE7BL,eAAeP,gBAAgB,kBAC9B,IAACF,KAAKA;wBAAC,OAAOK;wBAAO,cAAcS;wBAAc,OAAOH;;oBAEzDF,eAAeP,kBAAkB,kBAChC,IAACH,OAAOA;wBACN,OAAOM;wBACP,cAAcS;wBACd,OAAOH;;;eAZNG;QAiBX;;AAGN,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/smileys.js","sources":["../../../../../src/webchat/custom-messages/rating/smileys.tsx"],"sourcesContent":["import {\n FaceAngrySvg,\n FaceFrownSvg,\n FaceGrinBeamSvg,\n FaceMehSvg,\n FaceSmileSvg,\n} from './icons'\nimport type { RatingItemProps } from './types'\n\nconst SMILEY_MAP = {\n 1: FaceAngrySvg,\n 2: FaceFrownSvg,\n 3: FaceMehSvg,\n 4: FaceSmileSvg,\n 5: FaceGrinBeamSvg,\n} as const\n\nexport const Smileys = ({ color, ratingNumber, hover }: RatingItemProps) => {\n const isSelected = hover === ratingNumber\n const SmileyComponent = SMILEY_MAP[ratingNumber as keyof typeof SMILEY_MAP]\n\n return SmileyComponent ? (\n <SmileyComponent color={color} selected={isSelected} />\n ) : null\n}\n"],"names":["FaceAngrySvg","FaceFrownSvg","FaceGrinBeamSvg","FaceMehSvg","FaceSmileSvg","SMILEY_MAP","Smileys","color","ratingNumber","hover","isSelected","SmileyComponent"],"mappings":";;;;;;AAMgB;AAGhB,MAAMK,UAAUA,GAAG;IACjB,GAAGL,YAAYA;IACf,GAAGC,YAAYA;IACf,GAAGE,UAAUA;IACb,GAAGC,YAAYA;IACf,GAAGF,eAAeA;AACpB;AAEO,MAAMI,OAAOA,GAAG,CAAC,EAAEC,KAAK,EAAEC,YAAY,EAAEC,KAAK,EAAmB;IACrE,MAAMC,aAAaD,UAAUD;IAC7B,MAAMG,kBAAkBN,UAAU,CAACG,aAAwC;IAE3E,OAAOG,gCACL,IAACA;QAAgB,OAAOJ;QAAO,UAAUG;SACvC;AACN,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/stars.js","sources":["../../../../../src/webchat/custom-messages/rating/stars.tsx"],"sourcesContent":["import { StarSvg } from './icons/index'\nimport type { RatingItemProps } from './types'\n\nexport const Stars = ({ color, ratingNumber, hover }: RatingItemProps) => {\n const isSelected = hover >= ratingNumber\n return <StarSvg color={color} selected={isSelected} />\n}\n"],"names":["StarSvg","Stars","color","ratingNumber","hover","isSelected"],"mappings":";;;;;;AAAuC;AAGhC,MAAMC,KAAKA,GAAG,CAAC,EAAEC,KAAK,EAAEC,YAAY,EAAEC,KAAK,EAAmB;IACnE,MAAMC,aAAaD,SAASD;IAC5B,qBAAO,IAACH,OAAOA;QAAC,OAAOE;QAAO,UAAUG;;AAC1C,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/styles.js","sources":["../../../../../src/webchat/custom-messages/rating/styles.ts"],"sourcesContent":["import styled from 'styled-components'\n\n// TODO: Review how define all this styles\nexport const MessageBubble = styled.div`\n margin: 0px 0px 5px 0px;\n`\n\ninterface RatingSelectorContainerProps {\n isSent?: boolean\n}\n\nexport const RatingSelectorContainer = styled.div<RatingSelectorContainerProps>`\n display: flex;\n justify-content: center;\n gap: 8px;\n margin-top: 16px;\n\n & > div {\n cursor: ${props => (props.isSent ? 'default' : 'pointer')};\n\n svg {\n height: 27px;\n width: 27px;\n }\n }\n`\n"],"names":["styled","MessageBubble","RatingSelectorContainer","props"],"mappings":";;;AAAsC;AAEtC,0CAA0C;AACnC,MAAMC,aAAaA,GAAGD,qBAAU,CAAC;;AAExC,CAAC;AAMM,MAAME,uBAAuBA,GAAGF,qBAAwC,CAAC;;;;;;;YAOpE,EAAEG,CAAAA,QAAUA,MAAM,MAAM,GAAG,YAAY,UAAW;;;;;;;AAO9D,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/custom-messages/rating/types.js","sources":["../../../../../src/webchat/custom-messages/rating/types.ts"],"sourcesContent":["export enum RatingType {\n Stars = 'stars',\n Smileys = 'smileys',\n}\n\nexport interface RatingItemProps {\n color: string\n ratingNumber: number\n hover: number\n}\n\nexport interface RatingIconProps {\n color: string\n selected?: boolean\n}\n"],"names":["RatingType"],"mappings":"AAAO,IAAKA,gBAAUA,0BAAVA;;;WAAAA;MAGX"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/devices/index.js","sources":["../../../../src/webchat/devices/index.js"],"sourcesContent":["export const DEVICES = Object.freeze({\n MOBILE: {\n IPHONE: 'iPhone',\n ANDROID: 'Android',\n WEBOS: 'webOS',\n BLACKBERRY: 'BlackBerry',\n WINDOWS_PHONE: 'Windows Phone',\n },\n})\n\nexport const isDevice = deviceName => {\n // https://stackoverflow.com/questions/19877924/what-is-the-list-of-possible-values-for-navigator-platform-as-of-today\n return (\n !!navigator.platform &&\n navigator.platform.toLowerCase().includes(deviceName.toLowerCase())\n )\n}\n\nexport const isMobileDevice = () => {\n return Object.values(DEVICES.MOBILE).some(deviceName => isDevice(deviceName))\n}\n"],"names":["DEVICES","Object","isDevice","deviceName","navigator","isMobileDevice"],"mappings":"AAAO,MAAMA,OAAOA,GAAGC,OAAO,MAAM,CAAC;IACnC,QAAQ;QACN,QAAQ;QACR,SAAS;QACT,OAAO;QACP,YAAY;QACZ,eAAe;IACjB;AACF,GAAE;AAEK,MAAMC,QAAQA,GAAGC,CAAAA;IACtB,sHAAsH;IACtH,OACE,CAAC,CAACC,UAAU,QAAQ,IACpBA,UAAU,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAACD,WAAW,WAAW;AAEpE,EAAC;AAEM,MAAME,cAAcA,GAAG;IAC5B,OAAOJ,OAAO,MAAM,CAACD,OAAOA,CAAC,MAAM,EAAE,IAAI,CAACG,CAAAA,aAAcD,QAAQA,CAACC;AACnE,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const DefaultHeader: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/header/default-header.js","sources":["../../../../src/webchat/header/default-header.tsx"],"sourcesContent":["import { useContext } from 'react'\n\nimport { ROLES, WEBCHAT } from '../../constants'\nimport { Scale } from '../../shared/styles'\nimport { resolveImage } from '../../util/environment'\nimport { ConditionalWrapper } from '../../util/react'\nimport { WebchatContext } from '../../webchat/context'\nimport {\n CloseHeader,\n HeaderContainer,\n ImageContainer,\n Subtitle,\n TextContainer,\n Title,\n} from './styles'\n\nexport const DefaultHeader = () => {\n const { getThemeProperty, toggleWebchat } = useContext(WebchatContext)\n\n const animationsEnabled = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.enableAnimations\n )\n\n const headerImage = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.headerImage,\n getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.brandImage)\n )\n\n const headerTitle = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.headerTitle)\n\n const headerSubtitle = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.headerSubtitle\n )\n\n const handleCloseWebchat = () => {\n toggleWebchat(false)\n }\n\n const color = getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.brandColor)\n\n return (\n <HeaderContainer\n role={ROLES.HEADER}\n color={color}\n style={{ ...getThemeProperty(WEBCHAT.CUSTOM_PROPERTIES.headerStyle) }}\n >\n {headerImage && (\n <ImageContainer>\n <img src={resolveImage(headerImage)} alt='Header' />\n </ImageContainer>\n )}\n <TextContainer>\n <Title>{headerTitle}</Title>\n {headerSubtitle ? <Subtitle>{headerSubtitle}</Subtitle> : null}\n </TextContainer>\n <ConditionalWrapper\n condition={animationsEnabled}\n wrapper={children => <Scale>{children}</Scale>}\n >\n <CloseHeader onClick={handleCloseWebchat}>⨯</CloseHeader>\n </ConditionalWrapper>\n </HeaderContainer>\n )\n}\n"],"names":["useContext","ROLES","WEBCHAT","Scale","resolveImage","ConditionalWrapper","WebchatContext","CloseHeader","HeaderContainer","ImageContainer","Subtitle","TextContainer","Title","DefaultHeader","getThemeProperty","toggleWebchat","animationsEnabled","headerImage","headerTitle","headerSubtitle","handleCloseWebchat","color","children"],"mappings":";;;;;;;;;;;;;;;;;;AAAkC;AAEc;AACL;AACU;AACA;AACC;AAQrC;AAEV,MAAMa,aAAaA,GAAG;IAC3B,MAAM,EAAEC,gBAAgB,EAAEC,aAAa,EAAE,GAAGf,UAAUA,CAACM,cAAcA;IAErE,MAAMU,oBAAoBF,iBACxBZ,0CAA0C;IAG5C,MAAMe,cAAcH,iBAClBZ,qCAAqC,EACrCY,iBAAiBZ,oCAAoC;IAGvD,MAAMgB,cAAcJ,iBAAiBZ,qCAAqC;IAE1E,MAAMiB,iBAAiBL,iBACrBZ,wCAAwC;IAG1C,MAAMkB,qBAAqB;QACzBL,cAAc;IAChB;IAEA,MAAMM,QAAQP,iBAAiBZ,oCAAoC;IAEnE,qBACE,KAACM,eAAeA;QACd,MAAMP,YAAY;QAClB,OAAOoB;QACP,OAAO;YAAE,GAAGP,iBAAiBZ,qCAAqC,CAAC;QAAC;;YAEnEe,6BACC,IAACR,cAAcA;0BACb,kBAAC;oBAAI,KAAKL,YAAYA,CAACa;oBAAc,KAAI;;;0BAG7C,KAACN,aAAaA;;kCACZ,IAACC,KAAKA;kCAAEM;;oBACPC,+BAAiB,IAACT,QAAQA;kCAAES;yBAA6B;;;0BAE5D,IAACd,kBAAkBA;gBACjB,WAAWW;gBACX,SAASM,CAAAA,yBAAY,IAACnB,KAAKA;kCAAEmB;;0BAE7B,kBAACf,WAAWA;oBAAC,SAASa;8BAAoB;;;;;AAIlD,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/header/index.js","sources":["../../../../src/webchat/header/index.tsx"],"sourcesContent":["import { type ForwardedRef, forwardRef, useContext } from 'react'\n\nimport { WEBCHAT } from '../../constants'\nimport { WebchatContext } from '../../webchat/context'\nimport { BotonicContainerId } from '../constants'\nimport { DefaultHeader } from './default-header'\nimport { StyledWebchatHeader } from './styles'\n\nexport const WebchatHeader = forwardRef(\n (_, ref: ForwardedRef<HTMLDivElement>) => {\n const { getThemeProperty, toggleWebchat } = useContext(WebchatContext)\n\n const handleCloseWebchat = () => {\n toggleWebchat(false)\n }\n\n const CustomHeader = getThemeProperty(\n WEBCHAT.CUSTOM_PROPERTIES.customHeader\n )\n\n if (CustomHeader) {\n return (\n <div id={BotonicContainerId.Header} ref={ref}>\n <CustomHeader onCloseClick={handleCloseWebchat} />\n </div>\n )\n }\n\n return (\n <StyledWebchatHeader id={BotonicContainerId.Header} ref={ref}>\n <DefaultHeader />\n </StyledWebchatHeader>\n )\n }\n)\n\nWebchatHeader.displayName = 'WebchatHeader'\n"],"names":["forwardRef","useContext","WEBCHAT","WebchatContext","BotonicContainerId","DefaultHeader","StyledWebchatHeader","WebchatHeader","_","ref","getThemeProperty","toggleWebchat","handleCloseWebchat","CustomHeader"],"mappings":";;;;;;;;;;;;;;;;AAAiE;AAExB;AACa;AACL;AACD;AACF;AAEvC,MAAMO,aAAaA,iBAAGP,UAAUA,CACrC,CAACQ,GAAGC;IACF,MAAM,EAAEC,gBAAgB,EAAEC,aAAa,EAAE,GAAGV,UAAUA,CAACE,cAAcA;IAErE,MAAMS,qBAAqB;QACzBD,cAAc;IAChB;IAEA,MAAME,eAAeH,iBACnBR,sCAAsC;IAGxC,IAAIW,cAAc;QAChB,qBACE,IAAC;YAAI,IAAIT,yBAAyB;YAAE,KAAKK;sBACvC,kBAACI;gBAAa,cAAcD;;;IAGlC;IAEA,qBACE,IAACN,mBAAmBA;QAAC,IAAIF,yBAAyB;QAAE,KAAKK;kBACvD,kBAACJ,aAAaA;;AAGpB,GACD;AAEDE,aAAaA,CAAC,WAAW,GAAG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/header/styles.js","sources":["../../../../src/webchat/header/styles.ts"],"sourcesContent":["import styled from 'styled-components'\n\nimport { COLORS } from '../../constants'\n\nexport const HeaderContainer = styled.div`\n display: flex;\n background: linear-gradient(\n 90deg,\n ${COLORS.BLEACHED_CEDAR_PURPLE} 0%,\n ${props => props.color} 100%\n );\n border-radius: ${props => props.theme.header?.style?.borderRadius};\n z-index: 2;\n height: inherit;\n\n @media (max-width: ${props => props.theme.mobileBreakpoint}px) {\n border-radius: ${props => props.theme.header?.mobileStyle?.borderRadius};\n }\n`\n\nexport const ImageContainer = styled.div`\n padding: 10px;\n align-items: center;\n\n img {\n width: 32px;\n border-radius: 50%;\n }\n`\n\nexport const TextContainer = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: center;\n flex: 1 1 auto;\n`\n\nexport const Title = styled.div`\n display: flex;\n font-family: inherit;\n font-size: 15px;\n font-weight: bold;\n color: ${COLORS.SOLID_WHITE};\n`\n\nexport const Subtitle = styled.div`\n display: flex;\n font-family: inherit;\n font-size: 11px;\n color: ${COLORS.SOLID_WHITE};\n`\n\nexport const CloseHeader = styled.div`\n padding: 0px 16px;\n cursor: pointer;\n color: ${COLORS.SOLID_WHITE};\n font-family: inherit;\n font-size: 36px;\n`\n\nexport const StyledWebchatHeader = styled.div`\n border-radius: 8px 8px 0px 0px;\n box-shadow: ${COLORS.PIGEON_POST_BLUE_ALPHA_0_5} 0px 2px 5px;\n height: 55px;\n flex: none;\n`\n"],"names":["styled","COLORS","HeaderContainer","props","ImageContainer","TextContainer","Title","Subtitle","CloseHeader","StyledWebchatHeader"],"mappings":";;;;;AAAsC;AAEE;AAEjC,MAAME,eAAeA,GAAGF,qBAAU,CAAC;;;;IAItC,EAAEC,4BAA4B,CAAC;IAC/B,EAAEE,CAAAA,QAASA,MAAM,KAAK,CAAC;;iBAEV,EAAEA,CAAAA,QAASA,MAAM,KAAK,CAAC,MAAM,EAAE,OAAO,aAAa;;;;qBAI/C,EAAEA,CAAAA,QAASA,MAAM,KAAK,CAAC,gBAAgB,CAAC;mBAC1C,EAAEA,CAAAA,QAASA,MAAM,KAAK,CAAC,MAAM,EAAE,aAAa,aAAa;;AAE5E,CAAC;AAEM,MAAMC,cAAcA,GAAGJ,qBAAU,CAAC;;;;;;;;AAQzC,CAAC;AAEM,MAAMK,aAAaA,GAAGL,qBAAU,CAAC;;;;;AAKxC,CAAC;AAEM,MAAMM,KAAKA,GAAGN,qBAAU,CAAC;;;;;SAKvB,EAAEC,kBAAkB,CAAC;AAC9B,CAAC;AAEM,MAAMM,QAAQA,GAAGP,qBAAU,CAAC;;;;SAI1B,EAAEC,kBAAkB,CAAC;AAC9B,CAAC;AAEM,MAAMO,WAAWA,GAAGR,qBAAU,CAAC;;;SAG7B,EAAEC,kBAAkB,CAAC;;;AAG9B,CAAC;AAEM,MAAMQ,mBAAmBA,GAAGT,qBAAU,CAAC;;cAEhC,EAAEC,iCAAiC,CAAC;;;AAGlD,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/hooks/index.js","sources":["../../../../src/webchat/hooks/index.ts"],"sourcesContent":["export { useComponentVisible } from './use-component-visible'\nexport { useComponentWillMount } from './use-component-will-mount'\nexport { useDeviceAdapter } from './use-device-adapter'\nexport { usePrevious } from './use-previous'\nexport { useScrollToBottom } from './use-scroll-to-bottom'\nexport { useScrollbarController } from './use-scrollbar-controller'\nexport { useTyping } from './use-typing'\nexport { useVirtualKeyboardDetection } from './use-virtual-keyboard-detection'\nexport { useWebchatDimensions } from './use-webchat-dimensions'\nexport { useWebchatResizer } from './use-webchat-resizer'\n"],"names":["useComponentVisible","useComponentWillMount","useDeviceAdapter","usePrevious","useScrollToBottom","useScrollbarController","useTyping","useVirtualKeyboardDetection","useWebchatDimensions","useWebchatResizer"],"mappings":";;;;;;;;;;AAA6D;AACK;AACX;AACX;AACc;AACS;AAC3B;AACsC;AACf;AACN"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/hooks/use-component-visible.js","sources":["../../../../src/webchat/hooks/use-component-visible.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\n\ninterface ComponentVisible {\n ref: React.RefObject<HTMLElement>\n isComponentVisible: boolean\n setIsComponentVisible: React.Dispatch<React.SetStateAction<boolean>>\n}\n\nexport function useComponentVisible(\n initialIsVisible: boolean,\n onClickOutside: () => void\n): ComponentVisible {\n const [isComponentVisible, setIsComponentVisible] = useState(initialIsVisible)\n const ref = useRef<HTMLElement>(null)\n const handleClickOutside = event => {\n const target = event.path ? event.path[0] : event.target\n if (ref.current && !ref.current.contains(target)) {\n setIsComponentVisible(false)\n onClickOutside()\n }\n }\n useEffect(() => {\n document.addEventListener('click', handleClickOutside, false)\n return () => {\n document.removeEventListener('click', handleClickOutside, false)\n }\n })\n return { ref, isComponentVisible, setIsComponentVisible }\n}\n"],"names":["useEffect","useRef","useState","useComponentVisible","initialIsVisible","onClickOutside","isComponentVisible","setIsComponentVisible","ref","handleClickOutside","event","target","document"],"mappings":";;;AAAmD;AAQ5C,SAASG,mBAAmBA,CACjCC,gBAAyB,EACzBC,cAA0B;IAE1B,MAAM,CAACC,oBAAoBC,sBAAsB,GAAGL,QAAQA,CAACE;IAC7D,MAAMI,MAAMP,MAAMA,CAAc;IAChC,MAAMQ,qBAAqBC,CAAAA;QACzB,MAAMC,SAASD,MAAM,IAAI,GAAGA,MAAM,IAAI,CAAC,EAAE,GAAGA,MAAM,MAAM;QACxD,IAAIF,IAAI,OAAO,IAAI,CAACA,IAAI,OAAO,CAAC,QAAQ,CAACG,SAAS;YAChDJ,sBAAsB;YACtBF;QACF;IACF;IACAL,SAASA,CAAC;QACRY,SAAS,gBAAgB,CAAC,SAASH,oBAAoB;QACvD,OAAO;YACLG,SAAS,mBAAmB,CAAC,SAASH,oBAAoB;QAC5D;IACF;IACA,OAAO;QAAED;QAAKF;QAAoBC;IAAsB;AAC1D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/hooks/use-component-will-mount.js","sources":["../../../../src/webchat/hooks/use-component-will-mount.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nexport const useComponentWillMount = func => {\n useMemo(func, [])\n}\n"],"names":["useMemo","useComponentWillMount","func"],"mappings":";;;AAA+B;AAExB,MAAMC,qBAAqBA,GAAGC,CAAAA;IACnCF,OAAOA,CAACE,MAAM,EAAE;AAClB,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/hooks/use-device-adapter.js","sources":["../../../../src/webchat/hooks/use-device-adapter.ts"],"sourcesContent":["import { useEffect } from 'react'\n\nimport { DEVICES } from '../devices'\nimport { useScrollToBottom } from './use-scroll-to-bottom'\nimport { useScrollbarController } from './use-scrollbar-controller'\nimport { useVirtualKeyboardDetection } from './use-virtual-keyboard-detection'\nimport { useWebchatResizer } from './use-webchat-resizer'\n\n// To avoid type error using experimental new API supported by some browsers like Chrome but not in Safari\ninterface NavigatorWithUserAgentData extends Navigator {\n userAgentData?: {\n platform: string\n }\n}\n\nfunction getCurrentDevice() {\n const nav = navigator as NavigatorWithUserAgentData\n if (nav.userAgentData) {\n return nav.userAgentData.platform\n }\n return navigator.platform\n}\n\nexport const useDeviceAdapter = (host, isWebchatOpen) => {\n const currentDevice = getCurrentDevice()\n\n const { scrollToBottom } = useScrollToBottom({ host })\n\n const { isVirtualKeyboardVisible } = useVirtualKeyboardDetection(\n window.innerHeight\n )\n\n const { handleKeyboardShown, handleKeyboardHidden } = useWebchatResizer()\n\n const { handleScrollEvents } = useScrollbarController(currentDevice, host)\n\n useEffect(() => {\n if (currentDevice !== DEVICES.MOBILE.IPHONE) {\n return\n }\n if (isVirtualKeyboardVisible) {\n handleKeyboardShown()\n scrollToBottom()\n } else {\n handleKeyboardHidden()\n }\n\n return\n }, [isVirtualKeyboardVisible])\n\n useEffect(() => {\n if (host && isWebchatOpen) {\n if (currentDevice !== DEVICES.MOBILE.IPHONE) {\n return\n }\n handleScrollEvents()\n }\n }, [host, isWebchatOpen, handleScrollEvents])\n\n return {\n currentDevice,\n }\n}\n"],"names":["useEffect","DEVICES","useScrollToBottom","useScrollbarController","useVirtualKeyboardDetection","useWebchatResizer","getCurrentDevice","nav","navigator","useDeviceAdapter","host","isWebchatOpen","currentDevice","scrollToBottom","isVirtualKeyboardVisible","window","handleKeyboardShown","handleKeyboardHidden","handleScrollEvents"],"mappings":";;;;;;;;;;;;;AAAiC;AAEG;AACsB;AACS;AACW;AACrB;AASzD,SAASM,gBAAgBA;IACvB,MAAMC,MAAMC;IACZ,IAAID,IAAI,aAAa,EAAE;QACrB,OAAOA,IAAI,aAAa,CAAC,QAAQ;IACnC;IACA,OAAOC,UAAU,QAAQ;AAC3B;AAEO,MAAMC,gBAAgBA,GAAG,CAACC,MAAMC;IACrC,MAAMC,gBAAgBN,gBAAgBA;IAEtC,MAAM,EAAEO,cAAc,EAAE,GAAGX,iBAAiBA,CAAC;QAAEQ;IAAK;IAEpD,MAAM,EAAEI,wBAAwB,EAAE,GAAGV,2BAA2BA,CAC9DW,OAAO,WAAW;IAGpB,MAAM,EAAEC,mBAAmB,EAAEC,oBAAoB,EAAE,GAAGZ,iBAAiBA;IAEvE,MAAM,EAAEa,kBAAkB,EAAE,GAAGf,sBAAsBA,CAACS,eAAeF;IAErEV,SAASA,CAAC;QACR,IAAIY,kBAAkBX,qBAAqB,EAAE;YAC3C;QACF;QACA,IAAIa,0BAA0B;YAC5BE;YACAH;QACF,OAAO;YACLI;QACF;QAEA;IACF,GAAG;QAACH;KAAyB;IAE7Bd,SAASA,CAAC;QACR,IAAIU,QAAQC,eAAe;YACzB,IAAIC,kBAAkBX,qBAAqB,EAAE;gBAC3C;YACF;YACAiB;QACF;IACF,GAAG;QAACR;QAAMC;QAAeO;KAAmB;IAE5C,OAAO;QACLN;IACF;AACF,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/hooks/use-previous.js","sources":["../../../../src/webchat/hooks/use-previous.ts"],"sourcesContent":["import { useEffect, useRef } from 'react'\n\nexport function usePrevious(value: any): any {\n const ref = useRef()\n useEffect(() => {\n ref.current = value\n })\n return ref.current\n}\n"],"names":["useEffect","useRef","usePrevious","value","ref"],"mappings":";;;AAAyC;AAElC,SAASE,WAAWA,CAACC,KAAU;IACpC,MAAMC,MAAMH,MAAMA;IAClBD,SAASA,CAAC;QACRI,IAAI,OAAO,GAAGD;IAChB;IACA,OAAOC,IAAI,OAAO;AACpB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/hooks/use-scroll-to-bottom.js","sources":["../../../../src/webchat/hooks/use-scroll-to-bottom.ts"],"sourcesContent":["import {\n getScrollableMessagesListElement,\n getWebchatElement,\n} from '../../util/dom'\n\ninterface UseScrollToBottom {\n host: any\n behavior?: ScrollBehavior\n timeout?: number\n}\n\nexport const useScrollToBottom = ({\n host,\n behavior = 'smooth',\n timeout = 200,\n}: UseScrollToBottom) => {\n const scrollToBottom = () => {\n const webchatElement = getWebchatElement(host)\n if (!webchatElement) {\n return\n }\n const scrollableMessagesListElement = getScrollableMessagesListElement(host)\n if (!scrollableMessagesListElement) {\n return\n }\n\n setTimeout(() => {\n scrollableMessagesListElement.scrollTo({\n top: scrollableMessagesListElement.scrollHeight,\n behavior: behavior,\n })\n }, timeout)\n }\n\n return { scrollToBottom }\n}\n"],"names":["getScrollableMessagesListElement","getWebchatElement","useScrollToBottom","host","behavior","timeout","scrollToBottom","webchatElement","scrollableMessagesListElement","setTimeout"],"mappings":";;;AAGuB;AAQhB,MAAME,iBAAiBA,GAAG,CAAC,EAChCC,IAAI,EACJC,WAAW,QAAQ,EACnBC,UAAU,GAAG,EACK;IAClB,MAAMC,iBAAiB;QACrB,MAAMC,iBAAiBN,iBAAiBA,CAACE;QACzC,IAAI,CAACI,gBAAgB;YACnB;QACF;QACA,MAAMC,gCAAgCR,gCAAgCA,CAACG;QACvE,IAAI,CAACK,+BAA+B;YAClC;QACF;QAEAC,WAAW;YACTD,8BAA8B,QAAQ,CAAC;gBACrC,KAAKA,8BAA8B,YAAY;gBAC/C,UAAUJ;YACZ;QACF,GAAGC;IACL;IAEA,OAAO;QAAEC;IAAe;AAC1B,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/hooks/use-scrollbar-controller.js","sources":["../../../../src/webchat/hooks/use-scrollbar-controller.ts"],"sourcesContent":["import { useContext, useEffect } from 'react'\n\nimport { WebchatContext } from '../../webchat/context'\nimport { DEVICES, isMobileDevice } from '../devices'\n\n// TODO: Investigate why when we have some messages, scroll actions are not disabled properly\n\nconst debounced = (delay, fn) => {\n let timerId: NodeJS.Timeout | null = null\n return (...args) => {\n if (timerId) {\n clearTimeout(timerId)\n }\n timerId = setTimeout(() => {\n fn(...args)\n timerId = null\n }, delay)\n }\n}\n\nconst stopAtScrollLimit = element => {\n if (element.scrollTop === 0) {\n element.scrollTop = 1\n }\n if (element.scrollHeight - element.scrollTop === element.clientHeight) {\n element.scrollTop -= 1\n }\n}\n\nexport const useScrollbarController = (currentDevice, host) => {\n const {\n webchatContainerRef,\n chatAreaRef,\n repliesRef,\n scrollableMessagesListRef,\n } = useContext(WebchatContext)\n\n const hasScrollbar = () => {\n if (chatAreaRef.current && scrollableMessagesListRef.current) {\n if (!repliesRef?.current) {\n return (\n scrollableMessagesListRef.current?.scrollHeight >\n chatAreaRef.current?.clientHeight\n )\n }\n if (repliesRef.current) {\n return (\n scrollableMessagesListRef.current?.scrollHeight >\n chatAreaRef.current?.clientHeight - repliesRef.current?.clientHeight\n )\n }\n }\n\n return false\n }\n\n const toggleOnMouseWheelEvents = () => {\n if (scrollableMessagesListRef.current) {\n if (hasScrollbar()) {\n // @ts-expect-error\n scrollableMessagesListRef.current.onmousewheel = {}\n return\n }\n // @ts-expect-error\n scrollableMessagesListRef.current.onmousewheel = e => {\n e.preventDefault()\n }\n }\n }\n\n const handleOnMouseOverEvents = e => {\n let target = e.currentTarget\n while (target) {\n toggleOnMouseWheelEvents()\n target = target.parentNode\n }\n }\n\n const toggleOnTouchMoveEvents = () => {\n if (webchatContainerRef.current && scrollableMessagesListRef.current) {\n if (hasScrollbar()) {\n scrollableMessagesListRef.current.style.touchAction = 'auto'\n webchatContainerRef.current.style.touchAction = 'auto'\n webchatContainerRef.current.ontouchmove = null\n webchatContainerRef.current.ontouchstart = null\n return\n }\n\n scrollableMessagesListRef.current.style.touchAction = 'none'\n webchatContainerRef.current.style.touchAction = 'none'\n }\n if (webchatContainerRef.current) {\n webchatContainerRef.current.ontouchstart = e => {\n if (e.target === e.currentTarget) {\n e.preventDefault()\n }\n }\n webchatContainerRef.current.ontouchmove = e => {\n if (e.target === e.currentTarget) {\n e.preventDefault()\n }\n }\n }\n }\n\n const handleOnTouchMoveEvents = () => {\n toggleOnTouchMoveEvents()\n }\n\n const limitScrollBoundaries = () => {\n if (currentDevice !== DEVICES.MOBILE.IPHONE) {\n return\n }\n const chatArea = chatAreaRef.current\n const dStopAtScrollLimit = debounced(100, stopAtScrollLimit)\n\n if (chatArea) {\n // @ts-expect-error\n if (window.addEventListener) {\n chatArea.addEventListener(\n 'scroll',\n () => dStopAtScrollLimit(chatArea),\n true\n )\n // @ts-expect-error\n } else if (window.attachEvent) {\n // @ts-expect-error\n chatAreaRef.attachEvent('scroll', () => dStopAtScrollLimit(chatArea))\n }\n }\n }\n\n const handleScrollEvents = () => {\n if (webchatContainerRef.current) {\n if (isMobileDevice()) {\n if (currentDevice !== DEVICES.MOBILE.IPHONE) {\n return\n }\n\n limitScrollBoundaries()\n\n webchatContainerRef.current.ontouchstart = handleOnTouchMoveEvents\n webchatContainerRef.current.ontouchmove = handleOnTouchMoveEvents\n } else {\n webchatContainerRef.current.onmouseover = e =>\n handleOnMouseOverEvents(e)\n }\n }\n }\n\n useEffect(() => {\n const webchat = webchatContainerRef.current\n\n handleScrollEvents()\n\n return () => {\n if (webchat) {\n webchat.onmouseover = null\n webchat.ontouchstart = null\n webchat.ontouchmove = null\n }\n }\n }, [currentDevice, host])\n\n return {\n handleScrollEvents,\n handleOnTouchMoveEvents,\n handleOnMouseOverEvents,\n hasScrollbar,\n }\n}\n"],"names":["useContext","useEffect","WebchatContext","DEVICES","isMobileDevice","debounced","delay","fn","timerId","args","clearTimeout","setTimeout","stopAtScrollLimit","element","useScrollbarController","currentDevice","host","webchatContainerRef","chatAreaRef","repliesRef","scrollableMessagesListRef","hasScrollbar","toggleOnMouseWheelEvents","e","handleOnMouseOverEvents","target","toggleOnTouchMoveEvents","handleOnTouchMoveEvents","limitScrollBoundaries","chatArea","dStopAtScrollLimit","window","handleScrollEvents","webchat"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/hooks/use-typing.js","sources":["../../../../src/webchat/hooks/use-typing.ts"],"sourcesContent":["/* eslint-disable no-empty */\nimport { useEffect } from 'react'\n\nimport type { WebchatMessage } from '../../index-types'\nimport type { WebchatState } from '../context'\n\ninterface UseTyping {\n webchatState: WebchatState\n updateTyping: (typing: boolean) => void\n updateMessage: (message: WebchatMessage) => void\n host: any\n}\n\nexport function useTyping({\n webchatState,\n updateTyping,\n updateMessage,\n}: UseTyping): void {\n useEffect(() => {\n let delayTimeout: NodeJS.Timeout | null = null\n let typingTimeout: NodeJS.Timeout | null = null\n try {\n const nextMsg = webchatState.messagesJSON.filter(m => !m.display)[0]\n if (nextMsg) {\n if (nextMsg.delay && nextMsg.typing) {\n delayTimeout = setTimeout(\n () => updateTyping(true),\n nextMsg.delay * 1000\n )\n } else if (nextMsg.typing) {\n updateTyping(true)\n }\n const totalDelay = nextMsg.delay + nextMsg.typing\n if (totalDelay) {\n typingTimeout = setTimeout(() => {\n updateMessage({ ...nextMsg, display: true })\n updateTyping(false)\n }, totalDelay * 1000)\n }\n }\n // biome-ignore lint/suspicious/noEmptyBlockStatements: error is not used\n } catch (_e) {}\n return () => {\n delayTimeout && clearTimeout(delayTimeout)\n typingTimeout && clearTimeout(typingTimeout)\n }\n }, [webchatState.messagesJSON, webchatState.typing])\n}\n"],"names":["useEffect","useTyping","webchatState","updateTyping","updateMessage","delayTimeout","typingTimeout","nextMsg","m","setTimeout","totalDelay","_e","clearTimeout"],"mappings":";;;AAAA,2BAA2B,GACM;AAY1B,SAASC,SAASA,CAAC,EACxBC,YAAY,EACZC,YAAY,EACZC,aAAa,EACH;IACVJ,SAASA,CAAC;QACR,IAAIK,eAAsC;QAC1C,IAAIC,gBAAuC;QAC3C,IAAI;YACF,MAAMC,UAAUL,aAAa,YAAY,CAAC,MAAM,CAACM,CAAAA,IAAK,CAACA,EAAE,OAAO,CAAC,CAAC,EAAE;YACpE,IAAID,SAAS;gBACX,IAAIA,QAAQ,KAAK,IAAIA,QAAQ,MAAM,EAAE;oBACnCF,eAAeI,WACb,IAAMN,aAAa,OACnBI,QAAQ,KAAK,GAAG;gBAEpB,OAAO,IAAIA,QAAQ,MAAM,EAAE;oBACzBJ,aAAa;gBACf;gBACA,MAAMO,aAAaH,QAAQ,KAAK,GAAGA,QAAQ,MAAM;gBACjD,IAAIG,YAAY;oBACdJ,gBAAgBG,WAAW;wBACzBL,cAAc;4BAAE,GAAGG,OAAO;4BAAE,SAAS;wBAAK;wBAC1CJ,aAAa;oBACf,GAAGO,aAAa;gBAClB;YACF;QACA,yEAAyE;QAC3E,EAAE,OAAOC,IAAI,CAAC;QACd,OAAO;YACLN,gBAAgBO,aAAaP;YAC7BC,iBAAiBM,aAAaN;QAChC;IACF,GAAG;QAACJ,aAAa,YAAY;QAAEA,aAAa,MAAM;KAAC;AACrD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/hooks/use-virtual-keyboard-detection.js","sources":["../../../../src/webchat/hooks/use-virtual-keyboard-detection.ts"],"sourcesContent":["import { useEffect, useState } from 'react'\n\nexport const useVirtualKeyboardDetection = (originalHeight: number) => {\n const [isVirtualKeyboardVisible, setIsVirtualKeyboardVisible] =\n useState(false)\n\n useEffect(() => {\n const handleResize = () => {\n if (window.visualViewport) {\n if (window.visualViewport.height < originalHeight) {\n setIsVirtualKeyboardVisible(true)\n return\n }\n setIsVirtualKeyboardVisible(false)\n return\n }\n }\n window.visualViewport?.addEventListener('resize', handleResize)\n\n return () => {\n window.visualViewport?.removeEventListener('resize', handleResize)\n }\n }, [originalHeight])\n\n return { isVirtualKeyboardVisible }\n}\n"],"names":["useEffect","useState","useVirtualKeyboardDetection","originalHeight","isVirtualKeyboardVisible","setIsVirtualKeyboardVisible","handleResize","window"],"mappings":";;;AAA2C;AAEpC,MAAME,2BAA2BA,GAAG,CAACC;IAC1C,MAAM,CAACC,0BAA0BC,4BAA4B,GAC3DJ,QAAQA,CAAC;IAEXD,SAASA,CAAC;QACR,MAAMM,eAAe;YACnB,IAAIC,OAAO,cAAc,EAAE;gBACzB,IAAIA,OAAO,cAAc,CAAC,MAAM,GAAGJ,gBAAgB;oBACjDE,4BAA4B;oBAC5B;gBACF;gBACAA,4BAA4B;gBAC5B;YACF;QACF;QACAE,OAAO,cAAc,EAAE,iBAAiB,UAAUD;QAElD,OAAO;YACLC,OAAO,cAAc,EAAE,oBAAoB,UAAUD;QACvD;IACF,GAAG;QAACH;KAAe;IAEnB,OAAO;QAAEC;IAAyB;AACpC,EAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webchat/hooks/use-webchat-dimensions.js","sources":["../../../../src/webchat/hooks/use-webchat-dimensions.ts"],"sourcesContent":["import { useCallback, useContext } from 'react'\n\nimport { WebchatContext } from '../../webchat/context'\n\nexport const useWebchatDimensions = () => {\n const {\n webchatContainerRef,\n headerRef,\n inputPanelRef,\n webchatState: { isWebchatOpen },\n } = useContext(WebchatContext)\n\n const calculateResizedPercentualWebchatHeight = useCallback(() => {\n const webchatElement = webchatContainerRef.current\n if (!isWebchatOpen || !webchatElement) {\n return 0\n }\n const webchatHeight = webchatElement.clientHeight || 0\n const keyboardOffset = window.visualViewport?.height || window.innerHeight\n let newWebchatPercentualHeight = keyboardOffset / webchatHeight\n newWebchatPercentualHeight =\n Math.round(newWebchatPercentualHeight * 100 * 100) / 100 // Two decimal places\n return newWebchatPercentualHeight\n }, [isWebchatOpen])\n\n const calculateResizedPxChatAreaHeight = useCallback(() => {\n const webchatElement = webchatContainerRef.current\n const headerElement = headerRef.current\n const inputPanelElement = inputPanelRef.current\n\n if (!isWebchatOpen || !webchatElement) {\n return 0\n }\n\n const headerElementHeight = headerElement ? headerElement.clientHeight : 0\n const inputPanelElementHeight = inputPanelElement\n ? inputPanelElement.clientHeight\n : 0\n\n return (\n webchatElement.clientHeight -\n headerElementHeight -\n inputPanelElementHeight\n )\n }, [isWebchatOpen])\n\n return {\n calculateResizedPercentualWebchatHeight,\n calculateResizedPxChatAreaHeight,\n }\n}\n"],"names":["useCallback","useContext","WebchatContext","useWebchatDimensions","webchatContainerRef","headerRef","inputPanelRef","isWebchatOpen","calculateResizedPercentualWebchatHeight","webchatElement","webchatHeight","keyboardOffset","window","newWebchatPercentualHeight","Math","calculateResizedPxChatAreaHeight","headerElement","inputPanelElement","headerElementHeight","inputPanelElementHeight"],"mappings":";;;;;AAA+C;AAEO;AAE/C,MAAMG,oBAAoBA,GAAG;IAClC,MAAM,EACJC,mBAAmB,EACnBC,SAAS,EACTC,aAAa,EACb,cAAc,EAAEC,aAAa,EAAE,EAChC,GAAGN,UAAUA,CAACC,cAAcA;IAE7B,MAAMM,0CAA0CR,WAAWA,CAAC;QAC1D,MAAMS,iBAAiBL,oBAAoB,OAAO;QAClD,IAAI,CAACG,iBAAiB,CAACE,gBAAgB;YACrC,OAAO;QACT;QACA,MAAMC,gBAAgBD,eAAe,YAAY,IAAI;QACrD,MAAME,iBAAiBC,OAAO,cAAc,EAAE,UAAUA,OAAO,WAAW;QAC1E,IAAIC,6BAA6BF,iBAAiBD;QAClDG,6BACEC,KAAK,KAAK,CAACD,6BAA6B,MAAM,OAAO,KAAI,qBAAqB;QAChF,OAAOA;IACT,GAAG;QAACN;KAAc;IAElB,MAAMQ,mCAAmCf,WAAWA,CAAC;QACnD,MAAMS,iBAAiBL,oBAAoB,OAAO;QAClD,MAAMY,gBAAgBX,UAAU,OAAO;QACvC,MAAMY,oBAAoBX,cAAc,OAAO;QAE/C,IAAI,CAACC,iBAAiB,CAACE,gBAAgB;YACrC,OAAO;QACT;QAEA,MAAMS,sBAAsBF,gBAAgBA,cAAc,YAAY,GAAG;QACzE,MAAMG,0BAA0BF,oBAC5BA,kBAAkB,YAAY,GAC9B;QAEJ,OACER,eAAe,YAAY,GAC3BS,sBACAC;IAEJ,GAAG;QAACZ;KAAc;IAElB,OAAO;QACLC;QACAO;IACF;AACF,EAAC"}
|