@microsoft/omnichannel-chat-widget 0.1.0-main.0d584e6 → 0.1.0-main.0e38a73
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/common/Constants.js +0 -167
- package/lib/cjs/common/KeyCodes.js +0 -3
- package/lib/cjs/common/contextDataStore/DataStoreManager.js +0 -4
- package/lib/cjs/common/storage/default/defaultCacheManager.js +0 -10
- package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +4 -16
- package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +2 -10
- package/lib/cjs/common/telemetry/TelemetryConstants.js +12 -22
- package/lib/cjs/common/telemetry/TelemetryHelper.js +16 -57
- package/lib/cjs/common/telemetry/TelemetryManager.js +0 -31
- package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +0 -2
- package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +2 -21
- package/lib/cjs/common/telemetry/loggers/consoleLogger.js +0 -9
- package/lib/cjs/common/utils.js +18 -105
- package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +8 -46
- package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +2 -24
- package/lib/cjs/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
- package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +4 -28
- package/lib/cjs/components/dimlayer/DimLayer.js +0 -4
- package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +4 -32
- package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -8
- package/lib/cjs/components/footerstateful/FooterStateful.js +6 -29
- package/lib/cjs/components/footerstateful/audionotificationstateful/AudioNotificationStateful.js +0 -6
- package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -45
- package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -8
- package/lib/cjs/components/headerstateful/HeaderStateful.js +4 -25
- package/lib/cjs/components/livechatwidget/LiveChatWidget.js +2 -14
- package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +2 -9
- package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +0 -5
- package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +4 -11
- package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +11 -19
- package/lib/cjs/components/livechatwidget/common/Deferred.js +3 -10
- package/lib/cjs/components/livechatwidget/common/authHelper.js +4 -19
- package/lib/cjs/components/livechatwidget/common/createAdapter.js +2 -13
- package/lib/cjs/components/livechatwidget/common/createFooter.js +0 -10
- package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +2 -14
- package/lib/cjs/components/livechatwidget/common/createMarkdown.js +16 -24
- package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +40 -34
- package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
- package/lib/cjs/components/livechatwidget/common/endChat.js +8 -33
- package/lib/cjs/components/livechatwidget/common/getGeneralStylesForButton.js +0 -6
- package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +7 -16
- package/lib/cjs/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -8
- package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +16 -54
- package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +36 -66
- package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +4 -17
- package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +2 -11
- package/lib/cjs/components/livechatwidget/common/shareObservable.js +4 -8
- package/lib/cjs/components/livechatwidget/common/startChat.js +46 -86
- package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +0 -8
- package/lib/cjs/components/livechatwidget/common/updateSessionDataForTelemetry.js +2 -11
- package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +72 -162
- package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +4 -17
- package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +4 -17
- package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -17
- package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -23
- package/lib/cjs/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
- package/lib/cjs/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +13 -0
- package/lib/cjs/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
- package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
- package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +8 -36
- package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +2 -32
- package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +2 -24
- package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +19 -38
- package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +0 -7
- package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -6
- package/lib/cjs/components/webchatcontainerstateful/common/mockadapter.js +9 -26
- package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +2 -17
- package/lib/cjs/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -24
- package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +3 -15
- package/lib/cjs/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -8
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +0 -4
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +0 -4
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +0 -7
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -5
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -41
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +8 -19
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +23 -60
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +7 -15
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -13
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -16
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -3
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -3
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -9
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +2 -30
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +2 -12
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +6 -28
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +2 -11
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +13 -30
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +3 -9
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -34
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +1 -10
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +1 -12
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +16 -19
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +1 -9
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -9
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +13 -34
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +1 -10
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +7 -11
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +5 -14
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -21
- package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -12
- package/lib/cjs/contexts/ChatAdapterStore.js +0 -2
- package/lib/cjs/contexts/ChatContextStore.js +0 -2
- package/lib/cjs/contexts/ChatSDKStore.js +0 -2
- package/lib/cjs/contexts/common/ConversationState.js +0 -1
- package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +0 -1
- package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +0 -9
- package/lib/cjs/contexts/createReducer.js +133 -104
- package/lib/cjs/controller/componentController.js +1 -30
- package/lib/cjs/hooks/useChatAdapterStore.js +0 -6
- package/lib/cjs/hooks/useChatContextStore.js +0 -6
- package/lib/cjs/hooks/useChatSDKStore.js +0 -6
- package/lib/cjs/index.js +0 -5
- package/lib/cjs/plugins/newMessageEventHandler.js +15 -36
- package/lib/esm/common/Constants.js +0 -155
- package/lib/esm/common/KeyCodes.js +0 -2
- package/lib/esm/common/contextDataStore/DataStoreManager.js +0 -2
- package/lib/esm/common/storage/default/defaultCacheManager.js +0 -3
- package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +4 -11
- package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +2 -3
- package/lib/esm/common/telemetry/TelemetryConstants.js +16 -19
- package/lib/esm/common/telemetry/TelemetryHelper.js +16 -45
- package/lib/esm/common/telemetry/TelemetryManager.js +0 -18
- package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +2 -14
- package/lib/esm/common/telemetry/loggers/consoleLogger.js +0 -5
- package/lib/esm/common/utils.js +18 -53
- package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +8 -17
- package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +2 -7
- package/lib/esm/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
- package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +6 -9
- package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +4 -11
- package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
- package/lib/esm/components/footerstateful/FooterStateful.js +8 -10
- package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -35
- package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -6
- package/lib/esm/components/headerstateful/HeaderStateful.js +4 -10
- package/lib/esm/components/livechatwidget/LiveChatWidget.js +2 -2
- package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +2 -6
- package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +0 -3
- package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +4 -8
- package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +11 -15
- package/lib/esm/components/livechatwidget/common/Deferred.js +3 -8
- package/lib/esm/components/livechatwidget/common/authHelper.js +4 -12
- package/lib/esm/components/livechatwidget/common/createAdapter.js +4 -6
- package/lib/esm/components/livechatwidget/common/createFooter.js +0 -1
- package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +2 -5
- package/lib/esm/components/livechatwidget/common/createMarkdown.js +18 -18
- package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +42 -21
- package/lib/esm/components/livechatwidget/common/endChat.js +10 -18
- package/lib/esm/components/livechatwidget/common/getGeneralStylesForButton.js +0 -2
- package/lib/esm/components/livechatwidget/common/initCallingSdk.js +9 -11
- package/lib/esm/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -5
- package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +18 -19
- package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +37 -51
- package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +4 -9
- package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +4 -3
- package/lib/esm/components/livechatwidget/common/shareObservable.js +4 -7
- package/lib/esm/components/livechatwidget/common/startChat.js +48 -59
- package/lib/esm/components/livechatwidget/common/updateSessionDataForTelemetry.js +4 -2
- package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +73 -95
- package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +4 -5
- package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +4 -5
- package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -5
- package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -11
- package/lib/esm/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
- package/lib/esm/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +6 -0
- package/lib/esm/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
- package/lib/esm/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
- package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +10 -20
- package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +4 -8
- package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +2 -6
- package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +17 -11
- package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
- package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +9 -18
- package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +2 -13
- package/lib/esm/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -16
- package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +3 -5
- package/lib/esm/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -6
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +0 -2
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +0 -2
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +2 -5
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -4
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -26
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +10 -11
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +23 -38
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +9 -8
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -9
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -14
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +3 -0
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -1
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -1
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +3 -0
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -7
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +4 -28
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +3 -3
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +7 -14
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +3 -3
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +15 -19
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +5 -8
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -29
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +3 -7
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +3 -8
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +16 -14
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +3 -7
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -7
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +15 -27
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +3 -5
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +9 -9
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +7 -9
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -13
- package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -5
- package/lib/esm/contexts/ChatAdapterStore.js +2 -1
- package/lib/esm/contexts/ChatContextStore.js +2 -1
- package/lib/esm/contexts/ChatSDKStore.js +2 -1
- package/lib/esm/contexts/common/ConversationState.js +0 -1
- package/lib/esm/contexts/common/LiveChatWidgetActionType.js +0 -1
- package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +0 -3
- package/lib/esm/contexts/createReducer.js +133 -101
- package/lib/esm/controller/componentController.js +2 -1
- package/lib/esm/hooks/useChatAdapterStore.js +0 -4
- package/lib/esm/hooks/useChatContextStore.js +0 -4
- package/lib/esm/hooks/useChatSDKStore.js +0 -4
- package/lib/esm/plugins/newMessageEventHandler.js +15 -26
- package/lib/types/common/telemetry/TelemetryConstants.d.ts +7 -2
- package/lib/types/common/telemetry/definitions/Contracts.d.ts +2 -4
- package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +6 -5
- package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +2 -2
- package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
- package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -0
- package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
- package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +0 -1
- package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +2 -0
- package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
- package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
- package/package.json +3 -3
|
@@ -4,45 +4,29 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports.ChatButtonStateful = void 0;
|
|
7
|
-
|
|
8
7
|
var _TelemetryConstants = require("../../common/telemetry/TelemetryConstants");
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
9
|
var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
|
|
13
|
-
|
|
14
10
|
var _Constants = require("../../common/Constants");
|
|
15
|
-
|
|
16
11
|
var _utils = require("../../common/utils");
|
|
17
|
-
|
|
18
12
|
var _ConversationState = require("../../contexts/common/ConversationState");
|
|
19
|
-
|
|
20
13
|
var _LiveChatWidgetActionType = require("../../contexts/common/LiveChatWidgetActionType");
|
|
21
|
-
|
|
22
14
|
var _TelemetryHelper = require("../../common/telemetry/TelemetryHelper");
|
|
23
|
-
|
|
24
15
|
var _TelemetryManager = require("../../common/telemetry/TelemetryManager");
|
|
25
|
-
|
|
26
16
|
var _defaultOutOfOfficeChatButtonStyleProps = require("./common/styleProps/defaultOutOfOfficeChatButtonStyleProps");
|
|
27
|
-
|
|
28
17
|
var _useChatContextStore = _interopRequireDefault(require("../../hooks/useChatContextStore"));
|
|
29
|
-
|
|
30
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
31
|
-
|
|
32
19
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
33
|
-
|
|
34
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
35
|
-
|
|
36
21
|
const ChatButtonStateful = props => {
|
|
37
22
|
var _state$domainStates$l, _state$domainStates$l2, _buttonProps$controlP, _props$buttonProps, _props$buttonProps$co, _props$buttonProps2, _props$buttonProps2$c, _props$buttonProps3, _props$buttonProps3$c;
|
|
38
|
-
|
|
39
23
|
const [state, dispatch] = (0, _useChatContextStore.default)();
|
|
40
24
|
const {
|
|
41
25
|
buttonProps,
|
|
42
26
|
outOfOfficeButtonProps,
|
|
43
27
|
startChat
|
|
44
|
-
} = props;
|
|
45
|
-
|
|
28
|
+
} = props;
|
|
29
|
+
//Setting OutOfOperatingHours Flag
|
|
46
30
|
const [outOfOperatingHours, setOutOfOperatingHours] = (0, _react.useState)(((_state$domainStates$l = state.domainStates.liveChatConfig) === null || _state$domainStates$l === void 0 ? void 0 : (_state$domainStates$l2 = _state$domainStates$l.LiveWSAndLiveChatEngJoin) === null || _state$domainStates$l2 === void 0 ? void 0 : _state$domainStates$l2.OutOfOperatingHours) === "True");
|
|
47
31
|
const proactiveChatInNewWindow = (0, _react.useRef)(state.appStates.proactiveChatStates.proactiveChatInNewWindow);
|
|
48
32
|
const outOfOfficeStyleProps = Object.assign({}, _defaultOutOfOfficeChatButtonStyleProps.defaultOutOfOfficeChatButtonStyleProps, outOfOfficeButtonProps === null || outOfOfficeButtonProps === void 0 ? void 0 : outOfOfficeButtonProps.styleProps);
|
|
@@ -57,12 +41,10 @@ const ChatButtonStateful = props => {
|
|
|
57
41
|
_TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.INFO, {
|
|
58
42
|
Event: _TelemetryConstants.TelemetryEvent.LCWChatButtonClicked
|
|
59
43
|
});
|
|
60
|
-
|
|
61
44
|
if (proactiveChatInNewWindow.current) {
|
|
62
45
|
const proactiveChatIsInPopoutModeEvent = {
|
|
63
46
|
eventName: _TelemetryConstants.BroadcastEvent.ProactiveChatIsInPopoutMode
|
|
64
47
|
};
|
|
65
|
-
|
|
66
48
|
_omnichannelChatComponents.BroadcastService.postMessage(proactiveChatIsInPopoutModeEvent);
|
|
67
49
|
} else if (state.appStates.isMinimized) {
|
|
68
50
|
dispatch({
|
|
@@ -85,7 +67,6 @@ const ChatButtonStateful = props => {
|
|
|
85
67
|
_TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.INFO, {
|
|
86
68
|
Event: _TelemetryConstants.TelemetryEvent.LCWChatButtonClicked
|
|
87
69
|
});
|
|
88
|
-
|
|
89
70
|
if (state.appStates.isMinimized) {
|
|
90
71
|
dispatch({
|
|
91
72
|
type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_MINIMIZED,
|
|
@@ -105,12 +86,10 @@ const ChatButtonStateful = props => {
|
|
|
105
86
|
if (state.appStates.outsideOperatingHours) {
|
|
106
87
|
setOutOfOperatingHours(true);
|
|
107
88
|
}
|
|
108
|
-
|
|
109
89
|
_TelemetryHelper.TelemetryHelper.logLoadingEvent(_TelemetryConstants.LogLevel.INFO, {
|
|
110
90
|
Event: _TelemetryConstants.TelemetryEvent.LCWChatButtonShow,
|
|
111
91
|
ElapsedTimeInMilliseconds: _TelemetryManager.TelemetryTimers.LcwLoadToChatButtonTimer.milliSecondsElapsed
|
|
112
92
|
});
|
|
113
|
-
|
|
114
93
|
if (state.uiStates.focusChatButton) {
|
|
115
94
|
(0, _utils.setFocusOnElement)(document.getElementById((controlProps === null || controlProps === void 0 ? void 0 : controlProps.id) ?? "oc-lcw-chat-button"));
|
|
116
95
|
} else {
|
|
@@ -129,7 +108,6 @@ const ChatButtonStateful = props => {
|
|
|
129
108
|
styleProps: outOfOperatingHours ? outOfOfficeStyleProps : buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.styleProps
|
|
130
109
|
});
|
|
131
110
|
};
|
|
132
|
-
|
|
133
111
|
exports.ChatButtonStateful = ChatButtonStateful;
|
|
134
112
|
var _default = ChatButtonStateful;
|
|
135
113
|
exports.default = _default;
|
|
@@ -7,6 +7,9 @@ exports.defaultOutOfOfficeChatButtonStyleProps = void 0;
|
|
|
7
7
|
const defaultOutOfOfficeChatButtonStyleProps = {
|
|
8
8
|
iconStyleProps: {
|
|
9
9
|
backgroundColor: "#000000"
|
|
10
|
+
},
|
|
11
|
+
subtitleStyleProps: {
|
|
12
|
+
margin: "0px 10px 0px 10px"
|
|
10
13
|
}
|
|
11
14
|
};
|
|
12
15
|
exports.defaultOutOfOfficeChatButtonStyleProps = defaultOutOfOfficeChatButtonStyleProps;
|
|
@@ -4,35 +4,20 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports.ConfirmationPaneStateful = void 0;
|
|
7
|
-
|
|
8
7
|
var _TelemetryConstants = require("../../common/telemetry/TelemetryConstants");
|
|
9
|
-
|
|
10
8
|
var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
|
|
11
|
-
|
|
12
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
-
|
|
14
10
|
var _utils = require("../../common/utils");
|
|
15
|
-
|
|
16
11
|
var _DimLayer = require("../dimlayer/DimLayer");
|
|
17
|
-
|
|
18
12
|
var _LiveChatWidgetActionType = require("../../contexts/common/LiveChatWidgetActionType");
|
|
19
|
-
|
|
20
13
|
var _NotificationHandler = require("../webchatcontainerstateful/webchatcontroller/notification/NotificationHandler");
|
|
21
|
-
|
|
22
14
|
var _NotificationScenarios = require("../webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios");
|
|
23
|
-
|
|
24
15
|
var _TelemetryHelper = require("../../common/telemetry/TelemetryHelper");
|
|
25
|
-
|
|
26
16
|
var _useChatAdapterStore = _interopRequireDefault(require("../../hooks/useChatAdapterStore"));
|
|
27
|
-
|
|
28
17
|
var _useChatContextStore = _interopRequireDefault(require("../../hooks/useChatContextStore"));
|
|
29
|
-
|
|
30
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
31
|
-
|
|
32
19
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
33
|
-
|
|
34
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
35
|
-
|
|
36
21
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
37
22
|
const ConfirmationPaneStateful = props => {
|
|
38
23
|
const initialTabIndexMap = new Map();
|
|
@@ -40,8 +25,8 @@ const ConfirmationPaneStateful = props => {
|
|
|
40
25
|
const [state, dispatch] = (0, _useChatContextStore.default)();
|
|
41
26
|
const {
|
|
42
27
|
prepareEndChat
|
|
43
|
-
} = props;
|
|
44
|
-
|
|
28
|
+
} = props;
|
|
29
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
45
30
|
const [adapter] = (0, _useChatAdapterStore.default)();
|
|
46
31
|
const controlProps = {
|
|
47
32
|
id: "oc-lcw-confirmation-pane",
|
|
@@ -51,12 +36,10 @@ const ConfirmationPaneStateful = props => {
|
|
|
51
36
|
Event: _TelemetryConstants.TelemetryEvent.ConfirmationConfirmButtonClicked,
|
|
52
37
|
Description: "Confirmation pane Confirm button clicked"
|
|
53
38
|
});
|
|
54
|
-
|
|
55
39
|
dispatch({
|
|
56
40
|
type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_SHOW_CONFIRMATION,
|
|
57
41
|
payload: false
|
|
58
42
|
});
|
|
59
|
-
|
|
60
43
|
try {
|
|
61
44
|
(0, _utils.setTabIndices)(elements, initialTabIndexMap, true);
|
|
62
45
|
await prepareEndChat(adapter, state);
|
|
@@ -67,7 +50,6 @@ const ConfirmationPaneStateful = props => {
|
|
|
67
50
|
exception: `Get Conversation Details Call Failed : ${ex}`
|
|
68
51
|
}
|
|
69
52
|
});
|
|
70
|
-
|
|
71
53
|
_NotificationHandler.NotificationHandler.notifyError(_NotificationScenarios.NotificationScenarios.Connection, "Get Conversation Details Call Failed: " + ex);
|
|
72
54
|
}
|
|
73
55
|
},
|
|
@@ -76,13 +58,11 @@ const ConfirmationPaneStateful = props => {
|
|
|
76
58
|
Event: _TelemetryConstants.TelemetryEvent.ConfirmationCancelButtonClicked,
|
|
77
59
|
Description: "Confirmation pane Cancel button clicked."
|
|
78
60
|
});
|
|
79
|
-
|
|
80
61
|
dispatch({
|
|
81
62
|
type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_SHOW_CONFIRMATION,
|
|
82
63
|
payload: false
|
|
83
64
|
});
|
|
84
65
|
const previousFocusedElementId = state.appStates.previousElementIdOnFocusBeforeModalOpen;
|
|
85
|
-
|
|
86
66
|
if (previousFocusedElementId) {
|
|
87
67
|
(0, _utils.setFocusOnElement)("#" + previousFocusedElementId);
|
|
88
68
|
dispatch({
|
|
@@ -92,23 +72,20 @@ const ConfirmationPaneStateful = props => {
|
|
|
92
72
|
} else {
|
|
93
73
|
(0, _utils.setFocusOnSendBox)();
|
|
94
74
|
}
|
|
95
|
-
|
|
96
75
|
(0, _utils.setTabIndices)(elements, initialTabIndexMap, true);
|
|
97
76
|
},
|
|
98
77
|
...(props === null || props === void 0 ? void 0 : props.controlProps)
|
|
99
|
-
};
|
|
78
|
+
};
|
|
100
79
|
|
|
80
|
+
// Move focus to the first button
|
|
101
81
|
(0, _react.useEffect)(() => {
|
|
102
82
|
(0, _utils.preventFocusToMoveOutOfElement)(controlProps.id);
|
|
103
83
|
const focusableElements = (0, _utils.findAllFocusableElement)(`#${controlProps.id}`);
|
|
104
|
-
|
|
105
84
|
if (focusableElements) {
|
|
106
85
|
focusableElements[0].focus();
|
|
107
86
|
}
|
|
108
|
-
|
|
109
87
|
elements = (0, _utils.findParentFocusableElementsWithoutChildContainer)(controlProps.id);
|
|
110
88
|
(0, _utils.setTabIndices)(elements, initialTabIndexMap, false);
|
|
111
|
-
|
|
112
89
|
_TelemetryHelper.TelemetryHelper.logLoadingEvent(_TelemetryConstants.LogLevel.INFO, {
|
|
113
90
|
Event: _TelemetryConstants.TelemetryEvent.ConfirmationPaneLoaded
|
|
114
91
|
});
|
|
@@ -121,7 +98,6 @@ const ConfirmationPaneStateful = props => {
|
|
|
121
98
|
styleProps: props === null || props === void 0 ? void 0 : props.styleProps
|
|
122
99
|
}));
|
|
123
100
|
};
|
|
124
|
-
|
|
125
101
|
exports.ConfirmationPaneStateful = ConfirmationPaneStateful;
|
|
126
102
|
var _default = ConfirmationPaneStateful;
|
|
127
103
|
exports.default = _default;
|
|
@@ -4,11 +4,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.DimLayer = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
|
|
10
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
9
|
const DimLayer = _ref => {
|
|
13
10
|
let {
|
|
14
11
|
brightness
|
|
@@ -27,5 +24,4 @@ const DimLayer = _ref => {
|
|
|
27
24
|
style: defaultDimLayerStyles
|
|
28
25
|
});
|
|
29
26
|
};
|
|
30
|
-
|
|
31
27
|
exports.DimLayer = DimLayer;
|
|
@@ -4,67 +4,46 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports.EmailTranscriptPaneStateful = void 0;
|
|
7
|
-
|
|
8
7
|
var _TelemetryConstants = require("../../common/telemetry/TelemetryConstants");
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
9
|
var _utils = require("../../common/utils");
|
|
13
|
-
|
|
14
10
|
var _DimLayer = require("../dimlayer/DimLayer");
|
|
15
|
-
|
|
16
11
|
var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
|
|
17
|
-
|
|
18
12
|
var _LiveChatWidgetActionType = require("../../contexts/common/LiveChatWidgetActionType");
|
|
19
|
-
|
|
20
13
|
var _NotificationHandler = require("../webchatcontainerstateful/webchatcontroller/notification/NotificationHandler");
|
|
21
|
-
|
|
22
14
|
var _NotificationScenarios = require("../webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios");
|
|
23
|
-
|
|
24
15
|
var _Constants = require("../../common/Constants");
|
|
25
|
-
|
|
26
16
|
var _TelemetryHelper = require("../../common/telemetry/TelemetryHelper");
|
|
27
|
-
|
|
28
17
|
var _useChatContextStore = _interopRequireDefault(require("../../hooks/useChatContextStore"));
|
|
29
|
-
|
|
30
18
|
var _useChatSDKStore = _interopRequireDefault(require("../../hooks/useChatSDKStore"));
|
|
31
|
-
|
|
32
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
33
|
-
|
|
34
20
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
35
|
-
|
|
36
21
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
37
|
-
|
|
38
22
|
const EmailTranscriptPaneStateful = props => {
|
|
39
23
|
var _props$controlProps;
|
|
40
|
-
|
|
41
24
|
const initialTabIndexMap = new Map();
|
|
42
25
|
let elements = [];
|
|
43
|
-
const [state, dispatch] = (0, _useChatContextStore.default)();
|
|
44
|
-
|
|
26
|
+
const [state, dispatch] = (0, _useChatContextStore.default)();
|
|
27
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
45
28
|
const chatSDK = (0, _useChatSDKStore.default)();
|
|
46
29
|
const [initialEmail, setInitialEmail] = (0, _react.useState)("");
|
|
47
|
-
|
|
48
30
|
const closeEmailTranscriptPane = () => {
|
|
49
31
|
dispatch({
|
|
50
32
|
type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_SHOW_EMAIL_TRANSCRIPT_PANE,
|
|
51
33
|
payload: false
|
|
52
34
|
});
|
|
53
35
|
const previousFocusedElementId = state.appStates.previousElementIdOnFocusBeforeModalOpen;
|
|
54
|
-
|
|
55
36
|
if (previousFocusedElementId) {
|
|
56
37
|
(0, _utils.setFocusOnElement)("#" + previousFocusedElementId);
|
|
57
38
|
} else {
|
|
58
39
|
(0, _utils.setFocusOnSendBox)();
|
|
59
40
|
}
|
|
60
|
-
|
|
61
41
|
dispatch({
|
|
62
42
|
type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_PREVIOUS_FOCUSED_ELEMENT_ID,
|
|
63
43
|
payload: null
|
|
64
44
|
});
|
|
65
45
|
(0, _utils.setTabIndices)(elements, initialTabIndexMap, true);
|
|
66
46
|
};
|
|
67
|
-
|
|
68
47
|
const controlProps = {
|
|
69
48
|
id: "oclcw-emailTranscriptDialogContainer",
|
|
70
49
|
dir: state.domainStates.globalDir,
|
|
@@ -74,10 +53,8 @@ const EmailTranscriptPaneStateful = props => {
|
|
|
74
53
|
emailAddress: email,
|
|
75
54
|
attachmentMessage: (props === null || props === void 0 ? void 0 : props.attachmentMessage) ?? "The following attachment was uploaded during the conversation:"
|
|
76
55
|
};
|
|
77
|
-
|
|
78
56
|
try {
|
|
79
57
|
await (chatSDK === null || chatSDK === void 0 ? void 0 : chatSDK.emailLiveChatTranscript(chatTranscriptBody));
|
|
80
|
-
|
|
81
58
|
_TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.INFO, {
|
|
82
59
|
Event: _TelemetryConstants.TelemetryEvent.EmailTranscriptSent,
|
|
83
60
|
Description: "Transcript sent to email successfully."
|
|
@@ -89,7 +66,6 @@ const EmailTranscriptPaneStateful = props => {
|
|
|
89
66
|
exception: ex
|
|
90
67
|
}
|
|
91
68
|
});
|
|
92
|
-
|
|
93
69
|
_NotificationHandler.NotificationHandler.notifyError(_NotificationScenarios.NotificationScenarios.EmailTranscriptError, (props === null || props === void 0 ? void 0 : props.bannerMessageOnError) ?? "Email transcript to " + email + " failed.");
|
|
94
70
|
}
|
|
95
71
|
},
|
|
@@ -98,7 +74,6 @@ const EmailTranscriptPaneStateful = props => {
|
|
|
98
74
|
Event: _TelemetryConstants.TelemetryEvent.EmailTranscriptCancelButtonClicked,
|
|
99
75
|
Description: "Email Transcript cancel button clicked."
|
|
100
76
|
});
|
|
101
|
-
|
|
102
77
|
closeEmailTranscriptPane();
|
|
103
78
|
},
|
|
104
79
|
checkInput: function (input) {
|
|
@@ -106,20 +81,18 @@ const EmailTranscriptPaneStateful = props => {
|
|
|
106
81
|
},
|
|
107
82
|
...props.controlProps,
|
|
108
83
|
inputInitialText: ((_props$controlProps = props.controlProps) === null || _props$controlProps === void 0 ? void 0 : _props$controlProps.inputInitialText) ?? initialEmail
|
|
109
|
-
};
|
|
84
|
+
};
|
|
110
85
|
|
|
86
|
+
// Move focus to the first button
|
|
111
87
|
(0, _react.useEffect)(() => {
|
|
112
88
|
(0, _utils.preventFocusToMoveOutOfElement)(controlProps.id);
|
|
113
89
|
const focusableElements = (0, _utils.findAllFocusableElement)(`#${controlProps.id}`);
|
|
114
|
-
|
|
115
90
|
if (focusableElements) {
|
|
116
91
|
focusableElements[0].focus();
|
|
117
92
|
}
|
|
118
|
-
|
|
119
93
|
elements = (0, _utils.findParentFocusableElementsWithoutChildContainer)(controlProps.id);
|
|
120
94
|
(0, _utils.setTabIndices)(elements, initialTabIndexMap, false);
|
|
121
95
|
setInitialEmail(state.appStates.preChatResponseEmail);
|
|
122
|
-
|
|
123
96
|
_TelemetryHelper.TelemetryHelper.logLoadingEvent(_TelemetryConstants.LogLevel.INFO, {
|
|
124
97
|
Event: _TelemetryConstants.TelemetryEvent.EmailTranscriptLoaded
|
|
125
98
|
});
|
|
@@ -132,7 +105,6 @@ const EmailTranscriptPaneStateful = props => {
|
|
|
132
105
|
styleProps: props.styleProps
|
|
133
106
|
}));
|
|
134
107
|
};
|
|
135
|
-
|
|
136
108
|
exports.EmailTranscriptPaneStateful = EmailTranscriptPaneStateful;
|
|
137
109
|
var _default = EmailTranscriptPaneStateful;
|
|
138
110
|
exports.default = _default;
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _omnichannelChatSdk = require("@microsoft/omnichannel-chat-sdk");
|
|
4
|
-
|
|
5
4
|
var _react = require("@testing-library/react");
|
|
6
|
-
|
|
7
5
|
jest.mock("@microsoft/omnichannel-chat-sdk");
|
|
8
6
|
describe("EmailTranscriptPaneStateful unit test", () => {
|
|
9
7
|
afterEach(() => {
|
|
@@ -23,10 +21,10 @@ describe("EmailTranscriptPaneStateful unit test", () => {
|
|
|
23
21
|
attachmentMessage: "sample",
|
|
24
22
|
locale: "sample"
|
|
25
23
|
};
|
|
26
|
-
|
|
27
24
|
try {
|
|
28
25
|
await chatSDK.emailLiveChatTranscript(chatTranscriptBody);
|
|
29
|
-
expect(chatSDK.emailLiveChatTranscript).toHaveBeenCalledTimes(1);
|
|
26
|
+
expect(chatSDK.emailLiveChatTranscript).toHaveBeenCalledTimes(1);
|
|
27
|
+
// eslint-disable-next-line no-empty
|
|
30
28
|
} catch (ex) {}
|
|
31
29
|
});
|
|
32
30
|
it("Method emailLiveChatTranscript throws exception", async () => {
|
|
@@ -43,9 +41,9 @@ describe("EmailTranscriptPaneStateful unit test", () => {
|
|
|
43
41
|
attachmentMessage: "sample",
|
|
44
42
|
locale: "sample"
|
|
45
43
|
};
|
|
46
|
-
|
|
47
44
|
try {
|
|
48
|
-
await chatSDK.emailLiveChatTranscript(chatTranscriptBody);
|
|
45
|
+
await chatSDK.emailLiveChatTranscript(chatTranscriptBody);
|
|
46
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
49
47
|
} catch (ex) {
|
|
50
48
|
expect(ex.message).toEqual(errorMessage);
|
|
51
49
|
}
|
|
@@ -63,9 +61,9 @@ describe("EmailTranscriptPaneStateful unit test", () => {
|
|
|
63
61
|
attachmentMessage: "sample",
|
|
64
62
|
locale: "sample"
|
|
65
63
|
};
|
|
66
|
-
|
|
67
64
|
try {
|
|
68
|
-
await chatSDK.emailLiveChatTranscript(chatTranscriptBody);
|
|
65
|
+
await chatSDK.emailLiveChatTranscript(chatTranscriptBody);
|
|
66
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
69
67
|
} catch (ex) {
|
|
70
68
|
expect(ex.message).toEqual(errorMessage);
|
|
71
69
|
}
|
|
@@ -4,50 +4,34 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports.FooterStateful = void 0;
|
|
7
|
-
|
|
8
7
|
var _TelemetryConstants = require("../../common/telemetry/TelemetryConstants");
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
9
|
var _AudioNotificationStateful = _interopRequireDefault(require("./audionotificationstateful/AudioNotificationStateful"));
|
|
13
|
-
|
|
14
10
|
var _Constants = require("../../common/Constants");
|
|
15
|
-
|
|
16
11
|
var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
|
|
17
|
-
|
|
18
12
|
var _LiveChatWidgetActionType = require("../../contexts/common/LiveChatWidgetActionType");
|
|
19
|
-
|
|
20
13
|
var _Audios = require("../../assets/Audios");
|
|
21
|
-
|
|
22
14
|
var _NotificationHandler = require("../webchatcontainerstateful/webchatcontroller/notification/NotificationHandler");
|
|
23
|
-
|
|
24
15
|
var _NotificationScenarios = require("../webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios");
|
|
25
|
-
|
|
26
16
|
var _TelemetryHelper = require("../../common/telemetry/TelemetryHelper");
|
|
27
|
-
|
|
28
17
|
var _DownloadTranscriptStateful = require("./downloadtranscriptstateful/DownloadTranscriptStateful");
|
|
29
|
-
|
|
30
18
|
var _useChatContextStore = _interopRequireDefault(require("../../hooks/useChatContextStore"));
|
|
31
|
-
|
|
32
19
|
var _useChatSDKStore = _interopRequireDefault(require("../../hooks/useChatSDKStore"));
|
|
33
|
-
|
|
34
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
35
|
-
|
|
36
21
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
37
22
|
const FooterStateful = props => {
|
|
38
23
|
var _footerProps$controlP3, _footerProps$controlP4;
|
|
39
|
-
|
|
40
|
-
|
|
24
|
+
const [state, dispatch] = (0, _useChatContextStore.default)();
|
|
25
|
+
// hideFooterDisplay - the purpose of this is to keep the footer always "active",
|
|
41
26
|
// but hide it visually in certain states (e.g., loading state) and show in some other states (e.g. active state).
|
|
42
27
|
// The reason for this approach is to make sure that state variables for audio notification work correctly after minimizing
|
|
43
|
-
|
|
44
28
|
const {
|
|
45
29
|
footerProps,
|
|
46
30
|
downloadTranscriptProps,
|
|
47
31
|
audioNotificationProps,
|
|
48
32
|
hideFooterDisplay
|
|
49
|
-
} = props;
|
|
50
|
-
|
|
33
|
+
} = props;
|
|
34
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
51
35
|
const chatSDK = (0, _useChatSDKStore.default)();
|
|
52
36
|
const controlProps = {
|
|
53
37
|
id: "oc-lcw-footer",
|
|
@@ -58,7 +42,6 @@ const FooterStateful = props => {
|
|
|
58
42
|
Event: _TelemetryConstants.TelemetryEvent.DownloadTranscriptButtonClicked,
|
|
59
43
|
Description: "Download Transcript button clicked."
|
|
60
44
|
});
|
|
61
|
-
|
|
62
45
|
await (0, _DownloadTranscriptStateful.downloadTranscript)(chatSDK, downloadTranscriptProps === null || downloadTranscriptProps === void 0 ? void 0 : downloadTranscriptProps.renderMarkDown, downloadTranscriptProps === null || downloadTranscriptProps === void 0 ? void 0 : downloadTranscriptProps.bannerMessageOnError, downloadTranscriptProps === null || downloadTranscriptProps === void 0 ? void 0 : downloadTranscriptProps.attachmentMessage);
|
|
63
46
|
} catch (ex) {
|
|
64
47
|
_TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.ERROR, {
|
|
@@ -67,27 +50,22 @@ const FooterStateful = props => {
|
|
|
67
50
|
exception: ex
|
|
68
51
|
}
|
|
69
52
|
});
|
|
70
|
-
|
|
71
53
|
_NotificationHandler.NotificationHandler.notifyError(_NotificationScenarios.NotificationScenarios.DownloadTranscriptError, (downloadTranscriptProps === null || downloadTranscriptProps === void 0 ? void 0 : downloadTranscriptProps.bannerMessageOnError) ?? _Constants.Constants.defaultDownloadTranscriptError);
|
|
72
54
|
}
|
|
73
55
|
},
|
|
74
56
|
onEmailTranscriptClick: () => {
|
|
75
57
|
var _footerProps$controlP, _footerProps$controlP2;
|
|
76
|
-
|
|
77
58
|
_TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.INFO, {
|
|
78
59
|
Event: _TelemetryConstants.TelemetryEvent.EmailTranscriptButtonClicked,
|
|
79
60
|
Description: "Email Transcript button clicked."
|
|
80
61
|
});
|
|
81
|
-
|
|
82
62
|
const emailTranscriptButtonId = (footerProps === null || footerProps === void 0 ? void 0 : (_footerProps$controlP = footerProps.controlProps) === null || _footerProps$controlP === void 0 ? void 0 : (_footerProps$controlP2 = _footerProps$controlP.emailTranscriptButtonProps) === null || _footerProps$controlP2 === void 0 ? void 0 : _footerProps$controlP2.id) ?? `${controlProps.id}-emailtranscript-button`;
|
|
83
|
-
|
|
84
63
|
if (emailTranscriptButtonId) {
|
|
85
64
|
dispatch({
|
|
86
65
|
type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_PREVIOUS_FOCUSED_ELEMENT_ID,
|
|
87
66
|
payload: emailTranscriptButtonId
|
|
88
67
|
});
|
|
89
68
|
}
|
|
90
|
-
|
|
91
69
|
dispatch({
|
|
92
70
|
type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_SHOW_EMAIL_TRANSCRIPT_PANE,
|
|
93
71
|
payload: true
|
|
@@ -98,14 +76,14 @@ const FooterStateful = props => {
|
|
|
98
76
|
Event: _TelemetryConstants.TelemetryEvent.AudioToggleButtonClicked,
|
|
99
77
|
Description: "Audio button clicked."
|
|
100
78
|
});
|
|
101
|
-
|
|
102
79
|
dispatch({
|
|
103
80
|
type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_AUDIO_NOTIFICATION,
|
|
104
81
|
payload: !state.appStates.isAudioMuted
|
|
105
82
|
});
|
|
106
83
|
},
|
|
107
84
|
...(footerProps === null || footerProps === void 0 ? void 0 : footerProps.controlProps),
|
|
108
|
-
audioNotificationButtonProps: {
|
|
85
|
+
audioNotificationButtonProps: {
|
|
86
|
+
...(footerProps === null || footerProps === void 0 ? void 0 : (_footerProps$controlP3 = footerProps.controlProps) === null || _footerProps$controlP3 === void 0 ? void 0 : _footerProps$controlP3.audioNotificationButtonProps),
|
|
109
87
|
isAudioMuted: state.appStates.isAudioMuted
|
|
110
88
|
}
|
|
111
89
|
};
|
|
@@ -118,7 +96,6 @@ const FooterStateful = props => {
|
|
|
118
96
|
isAudioMuted: state.appStates.isAudioMuted === null ? (footerProps === null || footerProps === void 0 ? void 0 : (_footerProps$controlP4 = footerProps.controlProps) === null || _footerProps$controlP4 === void 0 ? void 0 : _footerProps$controlP4.hideAudioNotificationButton) ?? false : state.appStates.isAudioMuted ?? false
|
|
119
97
|
}));
|
|
120
98
|
};
|
|
121
|
-
|
|
122
99
|
exports.FooterStateful = FooterStateful;
|
|
123
100
|
var _default = FooterStateful;
|
|
124
101
|
exports.default = _default;
|
package/lib/cjs/components/footerstateful/audionotificationstateful/AudioNotificationStateful.js
CHANGED
|
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports.AudioNotificationStateful = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
8
|
var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
|
|
11
|
-
|
|
12
9
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
13
|
-
|
|
14
10
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
15
|
-
|
|
16
11
|
const AudioNotificationStateful = props => {
|
|
17
12
|
const {
|
|
18
13
|
audioSrc,
|
|
@@ -30,7 +25,6 @@ const AudioNotificationStateful = props => {
|
|
|
30
25
|
}, [isAudioMuted]);
|
|
31
26
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
|
|
32
27
|
};
|
|
33
|
-
|
|
34
28
|
exports.AudioNotificationStateful = AudioNotificationStateful;
|
|
35
29
|
var _default = AudioNotificationStateful;
|
|
36
30
|
exports.default = _default;
|