@microsoft/omnichannel-chat-widget 0.1.0-main.ce08f21 → 0.1.0-main.ce5063d
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/assets/Icons.js +4 -2
- package/lib/cjs/common/Constants.js +17 -168
- 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 +24 -0
- package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +102 -0
- package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +78 -0
- package/lib/cjs/common/telemetry/TelemetryConstants.js +28 -23
- 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 +30 -36
- package/lib/cjs/common/telemetry/loggers/consoleLogger.js +0 -9
- package/lib/cjs/common/utils.js +24 -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 +8 -32
- package/lib/cjs/components/dimlayer/DimLayer.js +0 -4
- package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +8 -36
- package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -8
- package/lib/cjs/components/footerstateful/FooterStateful.js +11 -42
- 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 +15 -30
- 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 +50 -0
- package/lib/cjs/components/livechatwidget/common/createAdapter.js +2 -13
- package/lib/cjs/components/livechatwidget/common/createFooter.js +4 -23
- package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -10
- package/lib/cjs/components/livechatwidget/common/createMarkdown.js +16 -24
- package/lib/cjs/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +14 -0
- package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +62 -38
- package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
- package/lib/cjs/components/livechatwidget/common/endChat.js +50 -35
- 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 +20 -54
- package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +78 -136
- 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 +169 -139
- 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/interfaces/IScrollBarProps.js +1 -0
- package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +226 -243
- package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +19 -19
- package/lib/cjs/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +57 -0
- 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 +9 -37
- package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +2 -32
- package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -24
- package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +29 -34
- package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -7
- package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -6
- package/lib/cjs/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +11 -0
- 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/interfaces/IAdaptiveCardStyles.js +1 -0
- 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 +9 -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/defaultReceivedMessageAnchorStyles.js +10 -0
- 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 +17 -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 +30 -29
- package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +10 -11
- package/lib/cjs/contexts/createReducer.js +154 -108
- package/lib/cjs/controller/componentController.js +2 -31
- 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/assets/Icons.js +2 -1
- package/lib/esm/common/Constants.js +14 -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 +16 -0
- package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +95 -0
- package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +70 -0
- package/lib/esm/common/telemetry/TelemetryConstants.js +32 -20
- 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 +28 -24
- package/lib/esm/common/telemetry/loggers/consoleLogger.js +0 -5
- package/lib/esm/common/utils.js +21 -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 +10 -13
- package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +8 -15
- package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
- package/lib/esm/components/footerstateful/FooterStateful.js +13 -23
- 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 +15 -15
- 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 +42 -0
- package/lib/esm/components/livechatwidget/common/createAdapter.js +4 -6
- package/lib/esm/components/livechatwidget/common/createFooter.js +4 -16
- package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -5
- package/lib/esm/components/livechatwidget/common/createMarkdown.js +18 -18
- package/lib/esm/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +7 -0
- package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +64 -25
- package/lib/esm/components/livechatwidget/common/endChat.js +52 -20
- 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 +22 -19
- package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +78 -118
- 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 +171 -115
- package/lib/esm/components/livechatwidget/common/updateSessionDataForTelemetry.js +4 -2
- package/lib/esm/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
- package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +230 -179
- package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +19 -7
- package/lib/esm/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +50 -0
- 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 +11 -21
- package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +4 -8
- package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -6
- package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +27 -9
- package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -1
- package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
- package/lib/esm/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +4 -0
- 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/interfaces/IAdaptiveCardStyles.js +1 -0
- 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 +11 -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/defaultReceivedMessageAnchorStyles.js +3 -0
- 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 +17 -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 +30 -29
- package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +10 -7
- package/lib/esm/contexts/createReducer.js +154 -105
- package/lib/esm/controller/componentController.js +3 -2
- 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/assets/Icons.d.ts +1 -0
- package/lib/types/common/Constants.d.ts +12 -0
- package/lib/types/common/storage/default/defaultCacheManager.d.ts +4 -0
- package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +2 -0
- package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -0
- package/lib/types/common/telemetry/TelemetryConstants.d.ts +16 -5
- package/lib/types/common/telemetry/definitions/Contracts.d.ts +2 -4
- package/lib/types/common/utils.d.ts +1 -0
- package/lib/types/components/livechatwidget/common/authHelper.d.ts +5 -0
- package/lib/types/components/livechatwidget/common/defaultProps/defaultScrollBarProps.d.ts +2 -0
- package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +5 -7
- package/lib/types/components/livechatwidget/common/startChat.d.ts +3 -2
- package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +1 -1
- package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +4 -2
- package/lib/types/components/livechatwidget/interfaces/IScrollBarProps.d.ts +22 -0
- package/lib/types/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.d.ts +2 -0
- 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/common/defaultStyles/defaultAdaptiveCardStyles.d.ts +2 -0
- package/lib/types/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.d.ts +4 -0
- package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +4 -1
- package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatContainerStatefulProps.d.ts +2 -0
- package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.d.ts +1 -1
- package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.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/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +3 -2
- package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +30 -28
- package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
- package/package.json +3 -3
|
@@ -4,55 +4,36 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _Constants = require("../../../../../common/Constants");
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
9
|
var _FileAttachmentIconManager = require("../../../common/utils/FileAttachmentIconManager");
|
|
13
|
-
|
|
14
10
|
var _TelemetryConstants = require("../../../../../common/telemetry/TelemetryConstants");
|
|
15
|
-
|
|
16
11
|
var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
|
|
17
|
-
|
|
18
12
|
var _WebChatActionType = require("../../enums/WebChatActionType");
|
|
19
|
-
|
|
20
13
|
var _defaultAtttachmentAdaptiveCardStyles = require("./defaultStyles/defaultAtttachmentAdaptiveCardStyles");
|
|
21
|
-
|
|
22
14
|
var _defaultAttachmentContentStyles = require("./defaultStyles/defaultAttachmentContentStyles");
|
|
23
|
-
|
|
24
15
|
var _defaultAttachmentDividerStyles = require("./defaultStyles/defaultAttachmentDividerStyles");
|
|
25
|
-
|
|
26
16
|
var _defaultAttachmentDownloadIconStyles = require("./defaultStyles/defaultAttachmentDownloadIconStyles");
|
|
27
|
-
|
|
28
17
|
var _defaultAttachmentFileNameStyles = require("./defaultStyles/defaultAttachmentFileNameStyles");
|
|
29
|
-
|
|
30
18
|
var _defaultAtttachmentIconStyles = require("./defaultStyles/defaultAtttachmentIconStyles");
|
|
31
|
-
|
|
32
19
|
var _defaultAttachmentProps = require("../../../common/defaultProps/defaultAttachmentProps");
|
|
33
|
-
|
|
34
20
|
var _defaultAttachmentSizeStyles = require("./defaultStyles/defaultAttachmentSizeStyles");
|
|
35
|
-
|
|
36
21
|
var _defaultAtttachmentStyles = require("./defaultStyles/defaultAtttachmentStyles");
|
|
37
|
-
|
|
38
22
|
var _ = require("../../../../..");
|
|
39
|
-
|
|
40
23
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
41
|
-
|
|
42
24
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
43
|
-
|
|
44
25
|
/******
|
|
45
26
|
* AttachmentMiddleware
|
|
46
27
|
*
|
|
47
28
|
* Handles attachment downloading.
|
|
48
29
|
******/
|
|
30
|
+
|
|
49
31
|
const AttachmentContent = props => {
|
|
50
32
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
51
33
|
id: props.id,
|
|
52
34
|
style: props.style
|
|
53
35
|
}, props.children);
|
|
54
36
|
};
|
|
55
|
-
|
|
56
37
|
const AttachmentIcon = props => {
|
|
57
38
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
58
39
|
id: props.id,
|
|
@@ -61,10 +42,8 @@ const AttachmentIcon = props => {
|
|
|
61
42
|
src: props.src ?? (0, _FileAttachmentIconManager.getFileAttachmentIconData)("txt")
|
|
62
43
|
}));
|
|
63
44
|
};
|
|
64
|
-
|
|
65
45
|
const Attachment = props => {
|
|
66
46
|
var _state$domainStates$r, _state$domainStates$r2, _state$domainStates$r3, _state$domainStates$r4, _state$domainStates$r5, _state$domainStates$r6, _state$domainStates$r7, _state$domainStates$r8, _state$domainStates$r9;
|
|
67
|
-
|
|
68
47
|
const {
|
|
69
48
|
iconData,
|
|
70
49
|
imageCard,
|
|
@@ -73,34 +52,41 @@ const Attachment = props => {
|
|
|
73
52
|
} = props;
|
|
74
53
|
const [state] = (0, _.useChatContextStore)();
|
|
75
54
|
const attachmentId = ((_state$domainStates$r = state.domainStates.renderingMiddlewareProps) === null || _state$domainStates$r === void 0 ? void 0 : (_state$domainStates$r2 = _state$domainStates$r.attachmentProps) === null || _state$domainStates$r2 === void 0 ? void 0 : _state$domainStates$r2.webChatAttachmentId) ?? _defaultAttachmentProps.defaultAttachmentProps.webChatAttachmentId;
|
|
76
|
-
const attachmentDividerStyles = {
|
|
55
|
+
const attachmentDividerStyles = {
|
|
56
|
+
..._defaultAttachmentDividerStyles.defaultAttachmentDividerStyles,
|
|
77
57
|
...((_state$domainStates$r3 = state.domainStates.renderingMiddlewareProps) === null || _state$domainStates$r3 === void 0 ? void 0 : _state$domainStates$r3.attachmentDividerStyles)
|
|
78
58
|
};
|
|
79
|
-
const attachmentIconStyles = {
|
|
59
|
+
const attachmentIconStyles = {
|
|
60
|
+
..._defaultAtttachmentIconStyles.defaultAttachmentIconStyles,
|
|
80
61
|
...((_state$domainStates$r4 = state.domainStates.renderingMiddlewareProps) === null || _state$domainStates$r4 === void 0 ? void 0 : _state$domainStates$r4.attachmentIconStyles)
|
|
81
62
|
};
|
|
82
|
-
const attachmentStyles = {
|
|
63
|
+
const attachmentStyles = {
|
|
64
|
+
..._defaultAtttachmentStyles.defaultAttachmentStyles,
|
|
83
65
|
...((_state$domainStates$r5 = state.domainStates.renderingMiddlewareProps) === null || _state$domainStates$r5 === void 0 ? void 0 : _state$domainStates$r5.attachmentStyles)
|
|
84
66
|
};
|
|
85
|
-
const attachmentSizeStylesString = Object.entries({
|
|
67
|
+
const attachmentSizeStylesString = Object.entries({
|
|
68
|
+
..._defaultAttachmentSizeStyles.defaultAttachmentSizeStyles,
|
|
86
69
|
...((_state$domainStates$r6 = state.domainStates.renderingMiddlewareProps) === null || _state$domainStates$r6 === void 0 ? void 0 : _state$domainStates$r6.attachmentSizeStyles)
|
|
87
70
|
}).map(_ref => {
|
|
88
71
|
let [k, v] = _ref;
|
|
89
72
|
return `${k.replace(/[A-Z]/g, match => `-${match.toLowerCase()}`)}:${v}`;
|
|
90
73
|
}).join(";");
|
|
91
|
-
const attachmentContentStylesString = Object.entries({
|
|
74
|
+
const attachmentContentStylesString = Object.entries({
|
|
75
|
+
..._defaultAttachmentContentStyles.defaultAttachmentContentStyles,
|
|
92
76
|
...((_state$domainStates$r7 = state.domainStates.renderingMiddlewareProps) === null || _state$domainStates$r7 === void 0 ? void 0 : _state$domainStates$r7.attachmentContentStyles)
|
|
93
77
|
}).map(_ref2 => {
|
|
94
78
|
let [k, v] = _ref2;
|
|
95
79
|
return `${k.replace(/[A-Z]/g, match => `-${match.toLowerCase()}`)}:${v}`;
|
|
96
80
|
}).join(";");
|
|
97
|
-
const attachmentFileNameStylesString = Object.entries({
|
|
81
|
+
const attachmentFileNameStylesString = Object.entries({
|
|
82
|
+
..._defaultAttachmentFileNameStyles.defaultAttachmentFileNameStyles,
|
|
98
83
|
...((_state$domainStates$r8 = state.domainStates.renderingMiddlewareProps) === null || _state$domainStates$r8 === void 0 ? void 0 : _state$domainStates$r8.attachmentFileNameStyles)
|
|
99
84
|
}).map(_ref3 => {
|
|
100
85
|
let [k, v] = _ref3;
|
|
101
86
|
return `${k.replace(/[A-Z]/g, match => `-${match.toLowerCase()}`)}:${v}`;
|
|
102
87
|
}).join(";");
|
|
103
|
-
const attachmentDownloadIconStylesString = Object.entries({
|
|
88
|
+
const attachmentDownloadIconStylesString = Object.entries({
|
|
89
|
+
..._defaultAttachmentDownloadIconStyles.defaultAttachmentDownloadIconStyles,
|
|
104
90
|
...((_state$domainStates$r9 = state.domainStates.renderingMiddlewareProps) === null || _state$domainStates$r9 === void 0 ? void 0 : _state$domainStates$r9.attachmentDownloadIconStyles)
|
|
105
91
|
}).map(_ref4 => {
|
|
106
92
|
let [k, v] = _ref4;
|
|
@@ -126,13 +112,12 @@ const Attachment = props => {
|
|
|
126
112
|
style: attachmentIconStyles
|
|
127
113
|
}), textCard && renderer(textCard))));
|
|
128
114
|
};
|
|
115
|
+
|
|
129
116
|
/**
|
|
130
117
|
* Patch card with different attachment data.
|
|
131
118
|
* @param card
|
|
132
119
|
* @param newAttachment
|
|
133
120
|
*/
|
|
134
|
-
|
|
135
|
-
|
|
136
121
|
const patchAttachment = (card, newAttachment) => {
|
|
137
122
|
const {
|
|
138
123
|
activity,
|
|
@@ -149,7 +134,6 @@ const patchAttachment = (card, newAttachment) => {
|
|
|
149
134
|
attachment: patchedAttachment
|
|
150
135
|
};
|
|
151
136
|
};
|
|
152
|
-
|
|
153
137
|
const genPreviewCardWithAttachment = (card, iconData, next) => {
|
|
154
138
|
const patchedTextCard = patchAttachment(card, {
|
|
155
139
|
contentType: _Constants.MimeTypes.UnknownFileType,
|
|
@@ -162,35 +146,30 @@ const genPreviewCardWithAttachment = (card, iconData, next) => {
|
|
|
162
146
|
renderer: next
|
|
163
147
|
});
|
|
164
148
|
};
|
|
165
|
-
|
|
166
149
|
const createAttachmentMiddleware = enableInlinePlaying => {
|
|
167
150
|
// eslint-disable-next-line react/display-name
|
|
168
151
|
const attachmentMiddleware = () => next => function () {
|
|
169
152
|
var _state$domainStates$r10, _state$domainStates$r11, _state$domainStates$r12, _card$activity$channe;
|
|
170
|
-
|
|
171
153
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
172
154
|
args[_key] = arguments[_key];
|
|
173
155
|
}
|
|
174
|
-
|
|
175
156
|
const [card] = args;
|
|
176
|
-
|
|
177
157
|
if (!(card !== null && card !== void 0 && card.activity)) {
|
|
178
158
|
return next(...args);
|
|
179
159
|
}
|
|
180
|
-
|
|
181
160
|
const {
|
|
182
161
|
activity: {
|
|
183
162
|
attachments
|
|
184
163
|
},
|
|
185
164
|
attachment
|
|
186
|
-
} = card;
|
|
187
|
-
|
|
165
|
+
} = card;
|
|
166
|
+
// No attachment
|
|
188
167
|
if (!attachments || !attachments.length || !attachment) {
|
|
189
168
|
return next(...args);
|
|
190
|
-
}
|
|
191
|
-
// eslint-disable-next-line prefer-const
|
|
192
|
-
|
|
169
|
+
}
|
|
193
170
|
|
|
171
|
+
// Check for Adaptive cards
|
|
172
|
+
// eslint-disable-next-line prefer-const
|
|
194
173
|
let {
|
|
195
174
|
content,
|
|
196
175
|
contentType
|
|
@@ -203,7 +182,6 @@ const createAttachmentMiddleware = enableInlinePlaying => {
|
|
|
203
182
|
} = content || {
|
|
204
183
|
type: ""
|
|
205
184
|
};
|
|
206
|
-
|
|
207
185
|
if (!type && content && _Constants.Constants.supportedAdaptiveCardContentTypes.indexOf(contentType) >= 0) {
|
|
208
186
|
try {
|
|
209
187
|
content = JSON.parse(content);
|
|
@@ -211,7 +189,6 @@ const createAttachmentMiddleware = enableInlinePlaying => {
|
|
|
211
189
|
card.attachment.content = content;
|
|
212
190
|
} catch (e) {
|
|
213
191
|
const errorData = "Unable to parse the adaptive card format";
|
|
214
|
-
|
|
215
192
|
_omnichannelChatComponents.BroadcastService.postMessage({
|
|
216
193
|
eventName: _TelemetryConstants.BroadcastEvent.InvalidAdaptiveCardFormat,
|
|
217
194
|
payload: {
|
|
@@ -221,45 +198,35 @@ const createAttachmentMiddleware = enableInlinePlaying => {
|
|
|
221
198
|
});
|
|
222
199
|
}
|
|
223
200
|
}
|
|
224
|
-
|
|
225
201
|
const [state] = (0, _.useChatContextStore)();
|
|
226
202
|
const attachmentId = ((_state$domainStates$r10 = state.domainStates.renderingMiddlewareProps) === null || _state$domainStates$r10 === void 0 ? void 0 : (_state$domainStates$r11 = _state$domainStates$r10.attachmentProps) === null || _state$domainStates$r11 === void 0 ? void 0 : _state$domainStates$r11.adaptiveCardAttachmentId) ?? _defaultAttachmentProps.defaultAttachmentProps.adaptiveCardAttachmentId;
|
|
227
|
-
const atttachmentAdaptiveCardStyles = {
|
|
203
|
+
const atttachmentAdaptiveCardStyles = {
|
|
204
|
+
..._defaultAtttachmentAdaptiveCardStyles.defaultAttachmentAdaptiveCardStyles,
|
|
228
205
|
...((_state$domainStates$r12 = state.domainStates.renderingMiddlewareProps) === null || _state$domainStates$r12 === void 0 ? void 0 : _state$domainStates$r12.attachmentAdaptiveCardStyles)
|
|
229
206
|
};
|
|
230
|
-
|
|
231
207
|
if (type === _Constants.WebChatMiddlewareConstants.adaptiveCard || _Constants.Constants.supportedAdaptiveCardContentTypes.indexOf(contentType) >= 0) {
|
|
232
208
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
233
209
|
id: attachmentId,
|
|
234
210
|
style: atttachmentAdaptiveCardStyles
|
|
235
211
|
}, next(...args));
|
|
236
212
|
}
|
|
237
|
-
|
|
238
213
|
if ((_card$activity$channe = card.activity.channelData) !== null && _card$activity$channe !== void 0 && _card$activity$channe.middlewareData) {
|
|
239
214
|
attachment.contentUrl = card.activity.channelData.middlewareData[attachment.name];
|
|
240
215
|
} else if (attachment !== null && attachment !== void 0 && attachment.tempContentUrl) {
|
|
241
216
|
attachment.contentUrl = attachment.tempContentUrl;
|
|
242
217
|
}
|
|
243
|
-
|
|
244
218
|
const fileExtension = attachment.name.substring(attachment.name.lastIndexOf(".") + 1, attachment.name.length) || attachment.name;
|
|
245
|
-
|
|
246
219
|
const imageExtension = _Constants.Constants.imageRegex.test(attachment.name);
|
|
247
|
-
|
|
248
220
|
const audioExtension = _Constants.Constants.audioMediaRegex.test(attachment.name);
|
|
249
|
-
|
|
250
221
|
const videoExtension = _Constants.Constants.videoMediaRegex.test(attachment.name);
|
|
251
|
-
|
|
252
222
|
const iconData = (0, _FileAttachmentIconManager.getFileAttachmentIconData)(fileExtension);
|
|
253
|
-
|
|
254
223
|
if (imageExtension) {
|
|
255
224
|
return genPreviewCardWithAttachment(card, iconData, next);
|
|
256
225
|
}
|
|
257
|
-
|
|
258
226
|
if (audioExtension || videoExtension) {
|
|
259
227
|
if (enableInlinePlaying && card.activity.actionType && card.activity.actionType === _WebChatActionType.WebChatActionType.DIRECT_LINE_INCOMING_ACTIVITY && (0, _FileAttachmentIconManager.isInlineMediaSupported)(attachment.name)) {
|
|
260
228
|
return genPreviewCardWithAttachment(card, iconData, next);
|
|
261
229
|
}
|
|
262
|
-
|
|
263
230
|
return /*#__PURE__*/_react.default.createElement(Attachment, {
|
|
264
231
|
iconData: iconData,
|
|
265
232
|
textCard: patchAttachment(card, {
|
|
@@ -269,7 +236,6 @@ const createAttachmentMiddleware = enableInlinePlaying => {
|
|
|
269
236
|
renderer: next
|
|
270
237
|
});
|
|
271
238
|
}
|
|
272
|
-
|
|
273
239
|
if (fileExtension === "txt") {
|
|
274
240
|
return /*#__PURE__*/_react.default.createElement(Attachment, {
|
|
275
241
|
iconData: iconData,
|
|
@@ -280,16 +246,13 @@ const createAttachmentMiddleware = enableInlinePlaying => {
|
|
|
280
246
|
renderer: next
|
|
281
247
|
});
|
|
282
248
|
}
|
|
283
|
-
|
|
284
249
|
return /*#__PURE__*/_react.default.createElement(Attachment, {
|
|
285
250
|
iconData: iconData,
|
|
286
251
|
textCard: card,
|
|
287
252
|
renderer: next
|
|
288
253
|
});
|
|
289
254
|
};
|
|
290
|
-
|
|
291
255
|
return attachmentMiddleware;
|
|
292
256
|
};
|
|
293
|
-
|
|
294
257
|
var _default = createAttachmentMiddleware;
|
|
295
258
|
exports.default = _default;
|
|
@@ -4,31 +4,24 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.createAvatarMiddleware = void 0;
|
|
7
|
-
|
|
8
7
|
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
|
|
10
8
|
var _Constants = require("../../../../../common/Constants");
|
|
11
|
-
|
|
12
9
|
var _defaultAvatarStyles = require("./defaultStyles/defaultAvatarStyles");
|
|
13
|
-
|
|
14
10
|
var _defaultAvatarTextStyles = require("./defaultStyles/defaultAvatarTextStyles");
|
|
15
|
-
|
|
16
11
|
var _utils = require("../../../../../common/utils");
|
|
17
|
-
|
|
18
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
20
13
|
/******
|
|
21
14
|
* AvatarMiddleware
|
|
22
15
|
*
|
|
23
16
|
* This middleware handles the avatar icon for each non-system message. It does the following processing:
|
|
24
17
|
* 1. Renders the first two letters of the sender as the profile pic
|
|
25
18
|
******/
|
|
19
|
+
|
|
26
20
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any
|
|
27
21
|
const createAvatarMiddleware = (avatarStyleProps, avatarTextStyleProps) => () => next => function () {
|
|
28
22
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
29
23
|
args[_key] = arguments[_key];
|
|
30
24
|
}
|
|
31
|
-
|
|
32
25
|
const [params] = args;
|
|
33
26
|
const {
|
|
34
27
|
activity: {
|
|
@@ -41,23 +34,22 @@ const createAvatarMiddleware = (avatarStyleProps, avatarTextStyleProps) => () =>
|
|
|
41
34
|
},
|
|
42
35
|
fromUser
|
|
43
36
|
} = params;
|
|
44
|
-
|
|
45
37
|
if (fromUser !== false || tags && tags.includes(_Constants.Constants.systemMessageTag)) {
|
|
46
38
|
return false;
|
|
47
39
|
}
|
|
48
|
-
|
|
49
|
-
|
|
40
|
+
const avatarStyles = {
|
|
41
|
+
..._defaultAvatarStyles.defaultAvatarStyles,
|
|
50
42
|
...avatarStyleProps
|
|
51
43
|
};
|
|
52
|
-
const avatarTextStyles = {
|
|
44
|
+
const avatarTextStyles = {
|
|
45
|
+
..._defaultAvatarTextStyles.defaultAvatarTextStyles,
|
|
53
46
|
...avatarTextStyleProps
|
|
54
|
-
};
|
|
55
|
-
|
|
47
|
+
};
|
|
48
|
+
// eslint-disable-next-line react/display-name
|
|
56
49
|
return () => /*#__PURE__*/_react.default.createElement("div", {
|
|
57
50
|
style: avatarStyles
|
|
58
51
|
}, /*#__PURE__*/_react.default.createElement("p", {
|
|
59
52
|
style: avatarTextStyles
|
|
60
53
|
}, " ", (0, _utils.getIconText)(name), " "));
|
|
61
54
|
};
|
|
62
|
-
|
|
63
55
|
exports.createAvatarMiddleware = createAvatarMiddleware;
|
|
@@ -4,49 +4,38 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.createCardActionMiddleware = void 0;
|
|
7
|
-
|
|
8
7
|
var _BotMagicCodeStore = require("../../BotMagicCodeStore");
|
|
9
|
-
|
|
10
8
|
var CardActionType;
|
|
11
|
-
|
|
12
9
|
(function (CardActionType) {
|
|
13
10
|
CardActionType["OpenUrl"] = "openUrl";
|
|
14
11
|
CardActionType["SignIn"] = "signin";
|
|
15
12
|
})(CardActionType || (CardActionType = {}));
|
|
16
|
-
|
|
17
13
|
const validCardActionTypes = [CardActionType.OpenUrl, CardActionType.SignIn];
|
|
18
14
|
const botOauthUrlRegex = /[\S]+.botframework.com\/api\/oauth\/signin\?signin=([\S]+)/;
|
|
19
|
-
|
|
20
15
|
const createCardActionMiddleware = botMagicCodeConfig => {
|
|
21
16
|
const cardActionMiddleware = () => next => function () {
|
|
22
17
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
23
18
|
args[_key] = arguments[_key];
|
|
24
19
|
}
|
|
25
|
-
|
|
26
20
|
// eslint-disable-line @typescript-eslint/no-explicit-any
|
|
27
21
|
const [card] = args;
|
|
28
|
-
|
|
29
22
|
if (card.cardAction && validCardActionTypes.indexOf(card.cardAction.type) >= 0 && card.cardAction.value) {
|
|
30
23
|
// Override signin url only if fwdUrl is valid & feature is enabled
|
|
31
24
|
if ((botMagicCodeConfig === null || botMagicCodeConfig === void 0 ? void 0 : botMagicCodeConfig.disabled) === true && botMagicCodeConfig !== null && botMagicCodeConfig !== void 0 && botMagicCodeConfig.fwdUrl) {
|
|
32
25
|
const baseUrl = window.location.origin;
|
|
33
26
|
const result = botOauthUrlRegex.exec(card.cardAction.value);
|
|
34
|
-
|
|
35
27
|
if (result) {
|
|
36
28
|
_BotMagicCodeStore.BotMagicCodeStore.botOAuthSignInId = `${result[1]}`;
|
|
37
|
-
}
|
|
38
|
-
|
|
29
|
+
}
|
|
39
30
|
|
|
31
|
+
// fwdUrl must be on the same domain as the chat widget
|
|
40
32
|
if (botMagicCodeConfig !== null && botMagicCodeConfig !== void 0 && botMagicCodeConfig.fwdUrl.startsWith(baseUrl)) {
|
|
41
33
|
card.cardAction.value += `&fwdUrl=${botMagicCodeConfig.fwdUrl}`;
|
|
42
34
|
}
|
|
43
35
|
}
|
|
44
36
|
}
|
|
45
|
-
|
|
46
37
|
return next(...args);
|
|
47
38
|
};
|
|
48
|
-
|
|
49
39
|
return cardActionMiddleware;
|
|
50
40
|
};
|
|
51
|
-
|
|
52
41
|
exports.createCardActionMiddleware = createCardActionMiddleware;
|
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("@testing-library/jest-dom/extend-expect");
|
|
4
|
-
|
|
5
4
|
var _cardActionMiddleware = require("./cardActionMiddleware");
|
|
6
|
-
|
|
7
5
|
describe("cardActionMiddleware test", () => {
|
|
8
6
|
it("createCardActionMiddleware() with undefined botMagicCodeConfig should not change the sign in card url", () => {
|
|
9
7
|
const next = args => args; // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
10
|
-
|
|
11
|
-
|
|
12
8
|
const signInUrl = "https://token.botframework.com/api/oauth/signin?signin=[signin]";
|
|
13
9
|
const args = {
|
|
14
10
|
cardAction: {
|
|
@@ -23,10 +19,7 @@ describe("cardActionMiddleware test", () => {
|
|
|
23
19
|
const botMagicCodeConfig = {
|
|
24
20
|
disabled: false
|
|
25
21
|
};
|
|
26
|
-
|
|
27
22
|
const next = args => args; // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
28
|
-
|
|
29
|
-
|
|
30
23
|
const signInUrl = "https://token.botframework.com/api/oauth/signin?signin=[signin]";
|
|
31
24
|
const args = {
|
|
32
25
|
cardAction: {
|
|
@@ -41,10 +34,7 @@ describe("cardActionMiddleware test", () => {
|
|
|
41
34
|
const botMagicCodeConfig = {
|
|
42
35
|
disabled: true
|
|
43
36
|
};
|
|
44
|
-
|
|
45
37
|
const next = args => args; // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
46
|
-
|
|
47
|
-
|
|
48
38
|
const signInUrl = "https://token.botframework.com/api/oauth/signin?signin=[signin]";
|
|
49
39
|
const args = {
|
|
50
40
|
cardAction: {
|
|
@@ -60,10 +50,7 @@ describe("cardActionMiddleware test", () => {
|
|
|
60
50
|
disabled: true,
|
|
61
51
|
fwdUrl: "http://localhost/forwarder.html"
|
|
62
52
|
};
|
|
63
|
-
|
|
64
53
|
const next = args => args; // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
65
|
-
|
|
66
|
-
|
|
67
54
|
const signInUrl = "https://token.botframework.com/api/oauth/signin?signin=[signin]";
|
|
68
55
|
const args = {
|
|
69
56
|
cardAction: {
|
|
@@ -80,10 +67,7 @@ describe("cardActionMiddleware test", () => {
|
|
|
80
67
|
disabled: true,
|
|
81
68
|
fwdUrl: "https://localhost/forwarder.html"
|
|
82
69
|
};
|
|
83
|
-
|
|
84
70
|
const next = args => args; // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
85
|
-
|
|
86
|
-
|
|
87
71
|
const signInUrl = "https://token.botframework.com/api/oauth/signin?signin=[signin]";
|
|
88
72
|
const args = {
|
|
89
73
|
cardAction: {
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.defaultReceivedMessageAnchorStyles = void 0;
|
|
7
|
+
const defaultReceivedMessageAnchorStyles = {
|
|
8
|
+
color: "white"
|
|
9
|
+
};
|
|
10
|
+
exports.defaultReceivedMessageAnchorStyles = defaultReceivedMessageAnchorStyles;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.defaultSystemMessageBoxStyles = void 0;
|
|
7
|
+
const defaultSystemMessageBoxStyles = {
|
|
8
|
+
maxWidth: "75%"
|
|
9
|
+
};
|
|
10
|
+
exports.defaultSystemMessageBoxStyles = defaultSystemMessageBoxStyles;
|
|
@@ -4,10 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.defaultTimestampFailedStyles = void 0;
|
|
7
|
-
|
|
8
7
|
var _defaultTimestampContentStyles = require("./defaultTimestampContentStyles");
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
const defaultTimestampFailedStyles = {
|
|
9
|
+
..._defaultTimestampContentStyles.defaultTimestampContentStyles,
|
|
11
10
|
color: "#A80000"
|
|
12
11
|
};
|
|
13
12
|
exports.defaultTimestampFailedStyles = defaultTimestampFailedStyles;
|
|
@@ -4,10 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.defaultTimestampRetryStyles = void 0;
|
|
7
|
-
|
|
8
7
|
var _defaultTimestampContentStyles = require("./defaultTimestampContentStyles");
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
const defaultTimestampRetryStyles = {
|
|
9
|
+
..._defaultTimestampContentStyles.defaultTimestampContentStyles,
|
|
11
10
|
color: "#0063B1",
|
|
12
11
|
cursor: "pointer"
|
|
13
12
|
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.defaultUserMessageBoxStyles = void 0;
|
|
7
|
+
const defaultUserMessageBoxStyles = {
|
|
8
|
+
maxWidth: "75%"
|
|
9
|
+
};
|
|
10
|
+
exports.defaultUserMessageBoxStyles = defaultUserMessageBoxStyles;
|
|
@@ -4,20 +4,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.groupActivitiesMiddleware = void 0;
|
|
7
|
-
|
|
8
7
|
var _Constants = require("../../../../../common/Constants");
|
|
9
|
-
|
|
10
8
|
/******
|
|
11
9
|
* GroupActivitiesMiddleware
|
|
12
10
|
*
|
|
13
11
|
* This middleware controls which messages are grouped together regarding to timestamps. It does the following processing:
|
|
14
12
|
* 1. Distinguishes different messages by sender name and whether it is a system message
|
|
15
13
|
******/
|
|
14
|
+
|
|
16
15
|
function bin(items, grouping) {
|
|
17
16
|
let lastBin;
|
|
18
17
|
const bins = [];
|
|
19
18
|
let lastItem;
|
|
20
|
-
|
|
21
19
|
if (items.length > 0) {
|
|
22
20
|
items.forEach(item => {
|
|
23
21
|
if (lastItem && grouping(lastItem, item)) {
|
|
@@ -26,20 +24,17 @@ function bin(items, grouping) {
|
|
|
26
24
|
lastBin = [item];
|
|
27
25
|
bins.push(lastBin);
|
|
28
26
|
}
|
|
29
|
-
|
|
30
27
|
lastItem = item;
|
|
31
28
|
});
|
|
32
29
|
}
|
|
33
|
-
|
|
34
30
|
return bins;
|
|
35
|
-
}
|
|
36
|
-
|
|
31
|
+
}
|
|
37
32
|
|
|
33
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any
|
|
38
34
|
const groupActivitiesMiddleware = () => next => args => {
|
|
39
35
|
const {
|
|
40
36
|
activities
|
|
41
37
|
} = args;
|
|
42
|
-
|
|
43
38
|
if (activities != null && activities.length > 0) {
|
|
44
39
|
const {
|
|
45
40
|
status
|
|
@@ -59,5 +54,4 @@ const groupActivitiesMiddleware = () => next => args => {
|
|
|
59
54
|
return () => false;
|
|
60
55
|
}
|
|
61
56
|
};
|
|
62
|
-
|
|
63
57
|
exports.groupActivitiesMiddleware = groupActivitiesMiddleware;
|
|
@@ -4,11 +4,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _WebChatActionType = require("../../enums/WebChatActionType");
|
|
9
|
-
|
|
10
8
|
var _Constants = require("../../../../../common/Constants");
|
|
11
|
-
|
|
12
9
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars
|
|
13
10
|
const createMessageTimeStampMiddleware = _ref => {
|
|
14
11
|
let {
|
|
@@ -18,100 +15,75 @@ const createMessageTimeStampMiddleware = _ref => {
|
|
|
18
15
|
if (isApplicable(action)) {
|
|
19
16
|
return next(evaluateTagsAndOverrideTimeStamp(action));
|
|
20
17
|
}
|
|
21
|
-
|
|
22
18
|
return next(action);
|
|
23
19
|
};
|
|
24
20
|
};
|
|
25
|
-
|
|
26
21
|
const isApplicable = action => {
|
|
27
22
|
return action.type === _WebChatActionType.WebChatActionType.DIRECT_LINE_INCOMING_ACTIVITY && isPVAConversation(action) && isPayloadValid(action) && isValidChannel(action);
|
|
28
23
|
};
|
|
29
|
-
|
|
30
24
|
const isPayloadValid = action => {
|
|
31
25
|
var _action$payload;
|
|
32
|
-
|
|
33
26
|
return action === null || action === void 0 ? void 0 : (_action$payload = action.payload) === null || _action$payload === void 0 ? void 0 : _action$payload.activity;
|
|
34
27
|
};
|
|
35
|
-
|
|
36
28
|
const isValidChannel = action => {
|
|
37
29
|
var _action$payload2, _action$payload2$acti;
|
|
38
|
-
|
|
39
30
|
return (action === null || action === void 0 ? void 0 : (_action$payload2 = action.payload) === null || _action$payload2 === void 0 ? void 0 : (_action$payload2$acti = _action$payload2.activity) === null || _action$payload2$acti === void 0 ? void 0 : _action$payload2$acti.channelId) === _Constants.Constants.acsChannel;
|
|
40
31
|
};
|
|
41
|
-
|
|
42
32
|
const isPVAConversation = action => {
|
|
43
33
|
return !isTagIncluded(action, _Constants.Constants.systemMessageTag) && !isTagIncluded(action, _Constants.Constants.publicMessageTag) && !isRoleUserOn(action);
|
|
44
|
-
};
|
|
45
|
-
|
|
34
|
+
};
|
|
46
35
|
|
|
36
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
47
37
|
const isTagIncluded = (action, tag) => {
|
|
48
38
|
return isDataTagsPresent(action) && action.payload.activity.channelData.tags.includes(tag);
|
|
49
39
|
};
|
|
50
|
-
|
|
51
40
|
const isRoleUserOn = action => {
|
|
52
41
|
var _action$payload3, _action$payload3$acti, _action$payload3$acti2;
|
|
53
|
-
|
|
54
42
|
return (action === null || action === void 0 ? void 0 : (_action$payload3 = action.payload) === null || _action$payload3 === void 0 ? void 0 : (_action$payload3$acti = _action$payload3.activity) === null || _action$payload3$acti === void 0 ? void 0 : (_action$payload3$acti2 = _action$payload3$acti.from) === null || _action$payload3$acti2 === void 0 ? void 0 : _action$payload3$acti2.role) === _Constants.Constants.userMessageTag;
|
|
55
43
|
};
|
|
56
|
-
|
|
57
44
|
const overrideTimeStamp = (timestampOriginal, timeStampNew) => {
|
|
58
45
|
return isTimestampValid(timeStampNew) ? timeStampNew : timestampOriginal;
|
|
59
46
|
};
|
|
60
|
-
|
|
61
47
|
const isTimestampValid = timeStamp => {
|
|
62
48
|
const regex = /(\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])(T)(\d{2})(:{1})(\d{2})(:{1})(\d{2})(.\d+)([Z]{1}))/;
|
|
63
49
|
return regex.test(timeStamp);
|
|
64
50
|
};
|
|
65
|
-
|
|
66
51
|
const isDataTagsPresent = action => {
|
|
67
52
|
var _action$payload4, _action$payload4$acti, _action$payload4$acti2;
|
|
68
|
-
|
|
69
53
|
return (action === null || action === void 0 ? void 0 : (_action$payload4 = action.payload) === null || _action$payload4 === void 0 ? void 0 : (_action$payload4$acti = _action$payload4.activity) === null || _action$payload4$acti === void 0 ? void 0 : (_action$payload4$acti2 = _action$payload4$acti.channelData) === null || _action$payload4$acti2 === void 0 ? void 0 : _action$payload4$acti2.tags) && action.payload.activity.channelData.tags.length > 0;
|
|
70
54
|
};
|
|
71
|
-
|
|
72
55
|
const evaluateTagsAndOverrideTimeStamp = action => {
|
|
73
56
|
const tagValue = tagLookup(action, _Constants.Constants.prefixTimestampTag);
|
|
74
|
-
|
|
75
57
|
if (tagValue) {
|
|
76
58
|
const newTimestamp = extractTimeStamp(tagValue);
|
|
77
59
|
action.payload.activity.timestamp = overrideTimeStamp(action.payload.activity.timestamp, newTimestamp);
|
|
78
60
|
}
|
|
79
|
-
|
|
80
61
|
return action;
|
|
81
62
|
};
|
|
82
|
-
|
|
83
63
|
const extractTimeStamp = timeStamp => {
|
|
84
64
|
if (timeStamp && timeStamp.length > 0) {
|
|
85
65
|
const ts = timeStamp.split(_Constants.Constants.prefixTimestampTag);
|
|
86
|
-
|
|
87
66
|
if (ts && ts.length > 1) {
|
|
88
67
|
return ts[1];
|
|
89
68
|
}
|
|
90
69
|
}
|
|
91
|
-
|
|
92
70
|
return timeStamp;
|
|
93
71
|
};
|
|
94
|
-
|
|
95
72
|
const tagLookup = (action, tag) => {
|
|
96
73
|
if (!isDataTagsPresent(action)) {
|
|
97
74
|
return null;
|
|
98
75
|
}
|
|
99
|
-
|
|
100
76
|
const tags = action.payload.activity.channelData.tags;
|
|
101
77
|
let value;
|
|
102
|
-
|
|
103
78
|
if (tags && tags.length > 0) {
|
|
104
79
|
for (let i = 0; i < tags.length; i++) {
|
|
105
80
|
value = tags[i];
|
|
106
|
-
|
|
107
81
|
if (value && value.indexOf(tag) > -1) {
|
|
108
82
|
return value;
|
|
109
83
|
}
|
|
110
84
|
}
|
|
111
85
|
}
|
|
112
|
-
|
|
113
86
|
return null;
|
|
114
87
|
};
|
|
115
|
-
|
|
116
88
|
var _default = createMessageTimeStampMiddleware;
|
|
117
89
|
exports.default = _default;
|