@microsoft/omnichannel-chat-widget 1.7.8-main.f60b0b7 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (404) hide show
  1. package/lib/cjs/common/Constants.js +67 -20
  2. package/lib/cjs/common/KeyCodes.js +6 -1
  3. package/lib/cjs/common/contextDataStore/DataStoreManager.js +6 -1
  4. package/lib/cjs/common/facades/FacadeChatSDK.js +392 -295
  5. package/lib/cjs/common/storage/default/defaultCacheManager.js +6 -3
  6. package/lib/cjs/common/telemetry/AppInsightsEvents.js +31 -0
  7. package/lib/cjs/common/telemetry/ScenarioMarker.js +66 -0
  8. package/lib/cjs/common/telemetry/TelemetryConstants.js +160 -129
  9. package/lib/cjs/common/telemetry/TelemetryHelper.js +281 -250
  10. package/lib/cjs/common/telemetry/TelemetryManager.js +32 -12
  11. package/lib/cjs/common/telemetry/defaultConfigs/defaultAppInsightsConfig.js +11 -0
  12. package/lib/cjs/common/telemetry/interfaces/IAppInsightsConfig.js +1 -0
  13. package/lib/cjs/common/telemetry/loggers/appInsightsLogger.js +149 -0
  14. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +17 -14
  15. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +3 -2
  16. package/lib/cjs/components/footerstateful/FooterStateful.js +11 -6
  17. package/lib/cjs/components/headerstateful/HeaderStateful.js +21 -11
  18. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +32 -19
  19. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/BotAuthActivitySubscriber.js +71 -56
  20. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +17 -8
  21. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/HiddenAdaptiveCardActivitySubscriber.js +65 -52
  22. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +31 -18
  23. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +14 -6
  24. package/lib/cjs/components/livechatwidget/common/Deferred.js +14 -6
  25. package/lib/cjs/components/livechatwidget/common/chatDisconnectHelper.js +3 -1
  26. package/lib/cjs/components/livechatwidget/common/endChat.js +4 -18
  27. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +0 -5
  28. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +3 -1
  29. package/lib/cjs/components/livechatwidget/common/renderSurveyHelpers.js +6 -3
  30. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +7 -2
  31. package/lib/cjs/components/livechatwidget/common/startChat.js +45 -40
  32. package/lib/cjs/components/livechatwidget/common/startChatErrorHandler.js +5 -4
  33. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +28 -23
  34. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +12 -8
  35. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +31 -10
  36. package/lib/cjs/components/postchatsurveypanestateful/common/isValidSurveyUrl.js +28 -0
  37. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +9 -6
  38. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +8 -6
  39. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +11 -4
  40. package/lib/cjs/components/webchatcontainerstateful/common/DemoChatAdapter.js +88 -65
  41. package/lib/cjs/components/webchatcontainerstateful/common/DemoChatSDK.js +26 -7
  42. package/lib/cjs/components/webchatcontainerstateful/common/DesignerChatAdapter.js +49 -26
  43. package/lib/cjs/components/webchatcontainerstateful/common/DesignerChatSDK.js +57 -35
  44. package/lib/cjs/components/webchatcontainerstateful/common/mockadapter.js +62 -52
  45. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +95 -61
  46. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +6 -1
  47. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +6 -1
  48. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/markdownrenderers/HyperlinkTextOverrideRenderer.js +53 -39
  49. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +4 -0
  50. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +2 -0
  51. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +88 -60
  52. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +17 -6
  53. package/lib/cjs/controller/componentController.js +3 -2
  54. package/lib/cjs/firstresponselatency/Constants.js +13 -0
  55. package/lib/cjs/firstresponselatency/FirstMessageTrackerFromBot.js +118 -0
  56. package/lib/cjs/firstresponselatency/FirstResponseLatencyTracker.js +201 -0
  57. package/lib/cjs/firstresponselatency/util.js +98 -0
  58. package/lib/cjs/plugins/createChatTranscript.js +88 -58
  59. package/lib/cjs/plugins/newMessageEventHandler.js +105 -88
  60. package/lib/esm/common/Constants.js +65 -19
  61. package/lib/esm/common/KeyCodes.js +6 -1
  62. package/lib/esm/common/contextDataStore/DataStoreManager.js +6 -1
  63. package/lib/esm/common/facades/FacadeChatSDK.js +392 -295
  64. package/lib/esm/common/storage/default/defaultCacheManager.js +6 -1
  65. package/lib/esm/common/telemetry/AppInsightsEvents.js +24 -0
  66. package/lib/esm/common/telemetry/ScenarioMarker.js +59 -0
  67. package/lib/esm/common/telemetry/TelemetryConstants.js +160 -129
  68. package/lib/esm/common/telemetry/TelemetryHelper.js +281 -250
  69. package/lib/esm/common/telemetry/TelemetryManager.js +32 -12
  70. package/lib/esm/common/telemetry/defaultConfigs/defaultAppInsightsConfig.js +4 -0
  71. package/lib/esm/common/telemetry/interfaces/IAppInsightsConfig.js +1 -0
  72. package/lib/esm/common/telemetry/loggers/appInsightsLogger.js +139 -0
  73. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +17 -14
  74. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +3 -2
  75. package/lib/esm/components/footerstateful/FooterStateful.js +11 -6
  76. package/lib/esm/components/headerstateful/HeaderStateful.js +21 -11
  77. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +32 -19
  78. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/BotAuthActivitySubscriber.js +71 -56
  79. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +17 -8
  80. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/HiddenAdaptiveCardActivitySubscriber.js +65 -52
  81. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +31 -18
  82. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +14 -6
  83. package/lib/esm/components/livechatwidget/common/Deferred.js +14 -6
  84. package/lib/esm/components/livechatwidget/common/chatDisconnectHelper.js +3 -1
  85. package/lib/esm/components/livechatwidget/common/endChat.js +4 -18
  86. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +1 -6
  87. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +3 -1
  88. package/lib/esm/components/livechatwidget/common/renderSurveyHelpers.js +6 -3
  89. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +7 -2
  90. package/lib/esm/components/livechatwidget/common/startChat.js +46 -41
  91. package/lib/esm/components/livechatwidget/common/startChatErrorHandler.js +5 -4
  92. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +28 -23
  93. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +12 -8
  94. package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +31 -10
  95. package/lib/esm/components/postchatsurveypanestateful/common/isValidSurveyUrl.js +21 -0
  96. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +9 -6
  97. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +8 -6
  98. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +11 -4
  99. package/lib/esm/components/webchatcontainerstateful/common/DemoChatAdapter.js +88 -65
  100. package/lib/esm/components/webchatcontainerstateful/common/DemoChatSDK.js +26 -7
  101. package/lib/esm/components/webchatcontainerstateful/common/DesignerChatAdapter.js +49 -26
  102. package/lib/esm/components/webchatcontainerstateful/common/DesignerChatSDK.js +57 -35
  103. package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +63 -52
  104. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +95 -61
  105. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +6 -1
  106. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +6 -1
  107. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/markdownrenderers/HyperlinkTextOverrideRenderer.js +53 -39
  108. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +4 -0
  109. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +2 -0
  110. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +88 -60
  111. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +17 -6
  112. package/lib/esm/controller/componentController.js +3 -2
  113. package/lib/esm/firstresponselatency/Constants.js +6 -0
  114. package/lib/esm/firstresponselatency/FirstMessageTrackerFromBot.js +112 -0
  115. package/lib/esm/firstresponselatency/FirstResponseLatencyTracker.js +194 -0
  116. package/lib/esm/firstresponselatency/util.js +87 -0
  117. package/lib/esm/plugins/createChatTranscript.js +88 -58
  118. package/lib/esm/plugins/newMessageEventHandler.js +103 -86
  119. package/lib/types/assets/Audios.d.ts +1 -1
  120. package/lib/types/assets/Icons.d.ts +16 -16
  121. package/lib/types/common/Constants.d.ts +283 -277
  122. package/lib/types/common/KeyCodes.d.ts +5 -5
  123. package/lib/types/common/contextDataStore/DataStoreManager.d.ts +4 -4
  124. package/lib/types/common/facades/FacadeChatSDK.d.ts +75 -74
  125. package/lib/types/common/facades/types/IFacadeChatSDKInput.d.ts +13 -13
  126. package/lib/types/common/interfaces/IContextDataStore.d.ts +14 -14
  127. package/lib/types/common/interfaces/ITimer.d.ts +3 -3
  128. package/lib/types/common/storage/default/defaultCacheManager.d.ts +5 -5
  129. package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +4 -4
  130. package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -6
  131. package/lib/types/common/telemetry/AppInsightsEvents.d.ts +1 -0
  132. package/lib/types/common/telemetry/ScenarioMarker.d.ts +19 -0
  133. package/lib/types/common/telemetry/TelemetryConstants.d.ts +272 -255
  134. package/lib/types/common/telemetry/TelemetryHelper.d.ts +48 -43
  135. package/lib/types/common/telemetry/TelemetryManager.d.ts +12 -12
  136. package/lib/types/common/telemetry/defaultConfigs/defaultAppInsightsConfig.d.ts +2 -0
  137. package/lib/types/common/telemetry/defaultConfigs/defaultAriaConfig.d.ts +2 -2
  138. package/lib/types/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.d.ts +2 -2
  139. package/lib/types/common/telemetry/defaultConfigs/defaultTelemetryInternalData.d.ts +2 -2
  140. package/lib/types/common/telemetry/definitions/Contracts.d.ts +77 -77
  141. package/lib/types/common/telemetry/definitions/Payload.d.ts +105 -105
  142. package/lib/types/common/telemetry/interfaces/IAppInsightsConfig.d.ts +4 -0
  143. package/lib/types/common/telemetry/interfaces/IAriaConfigurations.d.ts +18 -18
  144. package/lib/types/common/telemetry/interfaces/IChatSDKLogger.d.ts +6 -5
  145. package/lib/types/common/telemetry/interfaces/IInternalTelemetryData.d.ts +23 -21
  146. package/lib/types/common/telemetry/interfaces/ITelemetryConfig.d.ts +48 -48
  147. package/lib/types/common/telemetry/interfaces/ITelemetryEvents.d.ts +7 -7
  148. package/lib/types/common/telemetry/loggers/appInsightsLogger.d.ts +10 -0
  149. package/lib/types/common/telemetry/loggers/ariaTelemetryLogger.d.ts +2 -2
  150. package/lib/types/common/telemetry/loggers/consoleLogger.d.ts +2 -2
  151. package/lib/types/common/utils.d.ts +49 -49
  152. package/lib/types/components/callingcontainerstateful/CallingContainerStateful.d.ts +4 -3
  153. package/lib/types/components/callingcontainerstateful/ICallingContainerStatefulProps.d.ts +4 -4
  154. package/lib/types/components/chatbuttonstateful/ChatButtonStateful.d.ts +4 -3
  155. package/lib/types/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.d.ts +2 -2
  156. package/lib/types/components/chatbuttonstateful/interfaces/IChatButtonStatefulParams.d.ts +17 -17
  157. package/lib/types/components/confirmationpanestateful/ConfirmationPaneStateful.d.ts +4 -3
  158. package/lib/types/components/confirmationpanestateful/common/defaultProps/defaultConfirmationPaneLocalizedTexts.d.ts +2 -2
  159. package/lib/types/components/confirmationpanestateful/interfaces/IConfirmationPaneInputs.d.ts +4 -4
  160. package/lib/types/components/confirmationpanestateful/interfaces/IConfirmationPaneLocalizedText.d.ts +10 -10
  161. package/lib/types/components/confirmationpanestateful/interfaces/IConfirmationPaneStatefulParams.d.ts +13 -13
  162. package/lib/types/components/confirmationpanestateful/interfaces/IConfirmationPaneStatefulProps.d.ts +8 -8
  163. package/lib/types/components/dimlayer/DimLayer.d.ts +6 -5
  164. package/lib/types/components/draggable/DraggableChatWidget.d.ts +9 -9
  165. package/lib/types/components/draggable/DraggableEventEmitter.d.ts +27 -27
  166. package/lib/types/components/draggable/DraggableEventNames.d.ts +6 -6
  167. package/lib/types/components/draggable/DraggableEventReceiver.d.ts +27 -27
  168. package/lib/types/components/draggable/IDraggableElementPosition.d.ts +5 -5
  169. package/lib/types/components/draggable/IDraggableElementPositionDelta.d.ts +5 -5
  170. package/lib/types/components/draggable/IDraggableEvent.d.ts +12 -12
  171. package/lib/types/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.d.ts +4 -3
  172. package/lib/types/components/emailtranscriptpanestateful/interfaces/IChatTranscriptBody.d.ts +5 -5
  173. package/lib/types/components/emailtranscriptpanestateful/interfaces/IEmailTranscriptPaneProps.d.ts +11 -11
  174. package/lib/types/components/footerstateful/FooterStateful.d.ts +3 -2
  175. package/lib/types/components/footerstateful/audionotificationstateful/AudioNotificationStateful.d.ts +4 -3
  176. package/lib/types/components/footerstateful/audionotificationstateful/interfaces/IAudioNotificationProps.d.ts +3 -3
  177. package/lib/types/components/footerstateful/audionotificationstateful/interfaces/IAudioNotificationStatefulParams.d.ts +4 -4
  178. package/lib/types/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.d.ts +4 -4
  179. package/lib/types/components/footerstateful/downloadtranscriptstateful/common/defaultLibraryScripts.d.ts +23 -23
  180. package/lib/types/components/footerstateful/downloadtranscriptstateful/interfaces/IDownloadTranscriptProps.d.ts +19 -19
  181. package/lib/types/components/footerstateful/downloadtranscriptstateful/interfaces/IWebChatTranscriptConfig.d.ts +14 -14
  182. package/lib/types/components/footerstateful/downloadtranscriptstateful/interfaces/TranscriptHtmlScripts.d.ts +33 -33
  183. package/lib/types/components/headerstateful/HeaderStateful.d.ts +4 -3
  184. package/lib/types/components/headerstateful/common/styleProps/defaultOutOfOfficeHeaderStyleProps.d.ts +2 -2
  185. package/lib/types/components/headerstateful/interfaces/IHeaderStatefulParams.d.ts +33 -33
  186. package/lib/types/components/livechatwidget/LiveChatWidget.d.ts +4 -3
  187. package/lib/types/components/livechatwidget/common/ActivityStreamHandler.d.ts +14 -14
  188. package/lib/types/components/livechatwidget/common/ActivitySubscriber/BotAuthActivitySubscriber.d.ts +12 -12
  189. package/lib/types/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.d.ts +5 -5
  190. package/lib/types/components/livechatwidget/common/ActivitySubscriber/HiddenAdaptiveCardActivitySubscriber.d.ts +7 -7
  191. package/lib/types/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.d.ts +6 -6
  192. package/lib/types/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.d.ts +7 -7
  193. package/lib/types/components/livechatwidget/common/ChatAdapterShim.d.ts +7 -7
  194. package/lib/types/components/livechatwidget/common/Deferred.d.ts +9 -9
  195. package/lib/types/components/livechatwidget/common/authHelper.d.ts +18 -18
  196. package/lib/types/components/livechatwidget/common/chatDisconnectHelper.d.ts +4 -4
  197. package/lib/types/components/livechatwidget/common/createAdapter.d.ts +3 -3
  198. package/lib/types/components/livechatwidget/common/createDownloadTranscriptProps.d.ts +25 -25
  199. package/lib/types/components/livechatwidget/common/createFooter.d.ts +4 -3
  200. package/lib/types/components/livechatwidget/common/createInternetConnectionChangeHandler.d.ts +2 -2
  201. package/lib/types/components/livechatwidget/common/createMarkdown.d.ts +2 -2
  202. package/lib/types/components/livechatwidget/common/defaultProps/defaultScrollBarProps.d.ts +2 -2
  203. package/lib/types/components/livechatwidget/common/defaultStyles/defaultLiveChatWidgetGeneralStyles.d.ts +2 -2
  204. package/lib/types/components/livechatwidget/common/disposeTelemetryLoggers.d.ts +1 -1
  205. package/lib/types/components/livechatwidget/common/endChat.d.ts +13 -13
  206. package/lib/types/components/livechatwidget/common/getGeneralStylesForButton.d.ts +3 -3
  207. package/lib/types/components/livechatwidget/common/getMockChatSDKIfApplicable.d.ts +1 -1
  208. package/lib/types/components/livechatwidget/common/helpers/markdownHelper.d.ts +2 -2
  209. package/lib/types/components/livechatwidget/common/initCallingSdk.d.ts +2 -2
  210. package/lib/types/components/livechatwidget/common/initConfirmationPropsComposer.d.ts +3 -3
  211. package/lib/types/components/livechatwidget/common/initWebChatComposer.d.ts +7 -7
  212. package/lib/types/components/livechatwidget/common/liveChatConfigUtils.d.ts +3 -3
  213. package/lib/types/components/livechatwidget/common/overridePropsOnMockIfApplicable.d.ts +3 -3
  214. package/lib/types/components/livechatwidget/common/persistentChatHelper.d.ts +1 -1
  215. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +12 -12
  216. package/lib/types/components/livechatwidget/common/registerTelemetryLoggers.d.ts +4 -4
  217. package/lib/types/components/livechatwidget/common/renderSurveyHelpers.d.ts +10 -10
  218. package/lib/types/components/livechatwidget/common/setPostChatContextAndLoadSurvey.d.ts +4 -4
  219. package/lib/types/components/livechatwidget/common/shareObservable.d.ts +1 -1
  220. package/lib/types/components/livechatwidget/common/startChat.d.ts +11 -11
  221. package/lib/types/components/livechatwidget/common/startChatErrorHandler.d.ts +6 -6
  222. package/lib/types/components/livechatwidget/common/startProactiveChat.d.ts +4 -4
  223. package/lib/types/components/livechatwidget/common/updateSessionDataForTelemetry.d.ts +4 -4
  224. package/lib/types/components/livechatwidget/interfaces/IBotAuthActivitySubscriberOptionalParams.d.ts +4 -4
  225. package/lib/types/components/livechatwidget/interfaces/IDraggableChatWidgetProps.d.ts +10 -10
  226. package/lib/types/components/livechatwidget/interfaces/IFeatureConfigProps.d.ts +3 -3
  227. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetComponentOverrides.d.ts +17 -17
  228. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +21 -21
  229. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +70 -68
  230. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetStyleProps.d.ts +5 -5
  231. package/lib/types/components/livechatwidget/interfaces/IMockProps.d.ts +8 -8
  232. package/lib/types/components/livechatwidget/interfaces/IScrollBarProps.d.ts +22 -22
  233. package/lib/types/components/livechatwidget/interfaces/ISendBox.d.ts +12 -12
  234. package/lib/types/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.d.ts +3 -3
  235. package/lib/types/components/loadingpanestateful/LoadingPaneStateful.d.ts +3 -2
  236. package/lib/types/components/loadingpanestateful/common/defaultStyleProps/defaultgeneralLoadingPaneStyleProps.d.ts +2 -2
  237. package/lib/types/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.d.ts +2 -2
  238. package/lib/types/components/notificationpanestateful/NotificationPaneStateful.d.ts +4 -3
  239. package/lib/types/components/notificationpanestateful/defaultProps/defaultChatDisconnectControlProps.d.ts +2 -2
  240. package/lib/types/components/notificationpanestateful/defaultProps/defaultChatDisconnectStyleProps.d.ts +2 -2
  241. package/lib/types/components/notificationpanestateful/interfaces/INotificationPaneStatefulProps.d.ts +13 -13
  242. package/lib/types/components/ooohpanestateful/OOOHPaneStateful.d.ts +4 -3
  243. package/lib/types/components/ooohpanestateful/common/defaultStyleProps/defaultgeneralOOOHPaneStyleProps.d.ts +2 -2
  244. package/lib/types/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.d.ts +4 -3
  245. package/lib/types/components/postchatloadingpanestateful/common/defaultgeneralPostChatLoadingPaneStyleProps.d.ts +2 -2
  246. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +4 -3
  247. package/lib/types/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.d.ts +2 -2
  248. package/lib/types/components/postchatsurveypanestateful/common/isValidSurveyUrl.d.ts +2 -0
  249. package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -5
  250. package/lib/types/components/postchatsurveypanestateful/enums/PostChatSurveyMode.d.ts +4 -4
  251. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +5 -5
  252. package/lib/types/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.d.ts +4 -3
  253. package/lib/types/components/prechatsurveypanestateful/common/defaultProps/defaultPreChatSurveyLocalizedTexts.d.ts +2 -2
  254. package/lib/types/components/prechatsurveypanestateful/common/defaultStyles/defaultGeneralPreChatSurveyPaneStyleProps.d.ts +2 -2
  255. package/lib/types/components/prechatsurveypanestateful/interfaces/IPreChatSurveyPaneStatefulParams.d.ts +5 -5
  256. package/lib/types/components/proactivechatpanestateful/ProactiveChatPaneStateful.d.ts +3 -2
  257. package/lib/types/components/proactivechatpanestateful/interfaces/IProactiveChatNotificationConfig.d.ts +3 -3
  258. package/lib/types/components/proactivechatpanestateful/interfaces/IProactiveChatPaneStatefulProps.d.ts +4 -4
  259. package/lib/types/components/reconnectchatpanestateful/ReconnectChatPaneStateful.d.ts +4 -3
  260. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatContext.d.ts +4 -4
  261. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatOptionalParams.d.ts +3 -3
  262. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulParams.d.ts +5 -5
  263. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +5 -5
  264. package/lib/types/components/startchaterrorpanestateful/StartChatErrorPaneStateful.d.ts +4 -3
  265. package/lib/types/components/startchaterrorpanestateful/common/defaultStartChatErrorPaneGeneralStyleProps.d.ts +2 -2
  266. package/lib/types/components/startchaterrorpanestateful/common/defaultStartChatErrorPaneIconImageProps.d.ts +2 -2
  267. package/lib/types/components/startchaterrorpanestateful/common/defaultStartChatErrorPaneIconStyleProps.d.ts +2 -2
  268. package/lib/types/components/startchaterrorpanestateful/common/defaultStartChatErrorPaneSubtitleStyleProps.d.ts +2 -2
  269. package/lib/types/components/startchaterrorpanestateful/common/defaultStartChatErrorPaneTitleStyleProps.d.ts +2 -2
  270. package/lib/types/components/startchaterrorpanestateful/interfaces/IStartChatErrorPaneClassNames.d.ts +5 -5
  271. package/lib/types/components/startchaterrorpanestateful/interfaces/IStartChatErrorPaneComponentOverrides.d.ts +6 -6
  272. package/lib/types/components/startchaterrorpanestateful/interfaces/IStartChatErrorPaneControlProps.d.ts +14 -14
  273. package/lib/types/components/startchaterrorpanestateful/interfaces/IStartChatErrorPaneProps.d.ts +8 -8
  274. package/lib/types/components/startchaterrorpanestateful/interfaces/IStartChatErrorPaneStyleProps.d.ts +10 -10
  275. package/lib/types/components/webchatcontainerstateful/WebChatContainerStateful.d.ts +4 -3
  276. package/lib/types/components/webchatcontainerstateful/common/DemoChatAdapter.d.ts +10 -10
  277. package/lib/types/components/webchatcontainerstateful/common/DemoChatSDK.d.ts +6 -6
  278. package/lib/types/components/webchatcontainerstateful/common/DesignerChatAdapter.d.ts +8 -8
  279. package/lib/types/components/webchatcontainerstateful/common/DesignerChatSDK.d.ts +31 -31
  280. package/lib/types/components/webchatcontainerstateful/common/MockBotCardCommandType.d.ts +6 -6
  281. package/lib/types/components/webchatcontainerstateful/common/MockBotCommand.d.ts +11 -11
  282. package/lib/types/components/webchatcontainerstateful/common/defaultProps/defaultAttachmentProps.d.ts +2 -2
  283. package/lib/types/components/webchatcontainerstateful/common/defaultProps/defaultMarkdownLocalizedTexts.d.ts +2 -2
  284. package/lib/types/components/webchatcontainerstateful/common/defaultProps/defaultMiddlewareLocalizedTexts.d.ts +2 -2
  285. package/lib/types/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.d.ts +2 -2
  286. package/lib/types/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.d.ts +2 -2
  287. package/lib/types/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.d.ts +2 -2
  288. package/lib/types/components/webchatcontainerstateful/common/defaultStyles/defaultWebChatStatefulContainerStyles.d.ts +2 -2
  289. package/lib/types/components/webchatcontainerstateful/common/defaultStyles/defaultWebChatStyles.d.ts +2 -2
  290. package/lib/types/components/webchatcontainerstateful/common/mockadapter.d.ts +14 -14
  291. package/lib/types/components/webchatcontainerstateful/common/mockchatsdk.d.ts +45 -45
  292. package/lib/types/components/webchatcontainerstateful/common/utils/BrowserInfo.d.ts +5 -5
  293. package/lib/types/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.d.ts +7 -7
  294. package/lib/types/components/webchatcontainerstateful/common/utils/attachmentActivityUtils.d.ts +9 -9
  295. package/lib/types/components/webchatcontainerstateful/common/utils/chatAdapterUtils.d.ts +9 -9
  296. package/lib/types/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.d.ts +2 -2
  297. package/lib/types/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.d.ts +8 -8
  298. package/lib/types/components/webchatcontainerstateful/interfaces/IAttachmentProps.d.ts +5 -5
  299. package/lib/types/components/webchatcontainerstateful/interfaces/IBotAuthConfig.d.ts +4 -4
  300. package/lib/types/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.d.ts +4 -4
  301. package/lib/types/components/webchatcontainerstateful/interfaces/IDataMaskingInfo.d.ts +6 -6
  302. package/lib/types/components/webchatcontainerstateful/interfaces/IDataMaskingRule.d.ts +3 -3
  303. package/lib/types/components/webchatcontainerstateful/interfaces/IDataMaskingSetting.d.ts +4 -4
  304. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +37 -37
  305. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatAction.d.ts +4 -4
  306. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatContainerStatefulProps.d.ts +28 -28
  307. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatProps.d.ts +39 -39
  308. package/lib/types/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.d.ts +3 -3
  309. package/lib/types/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.d.ts +3 -3
  310. package/lib/types/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.d.ts +9 -9
  311. package/lib/types/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.d.ts +4 -4
  312. package/lib/types/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.d.ts +5 -5
  313. package/lib/types/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.d.ts +11 -11
  314. package/lib/types/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.d.ts +6 -6
  315. package/lib/types/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.d.ts +11 -11
  316. package/lib/types/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.d.ts +5 -5
  317. package/lib/types/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.d.ts +24 -24
  318. package/lib/types/components/webchatcontainerstateful/webchatcontroller/markdownrenderers/HyperlinkTextOverrideRenderer.d.ts +9 -9
  319. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.d.ts +2 -2
  320. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.d.ts +2 -2
  321. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.d.ts +10 -10
  322. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.d.ts +1 -1
  323. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.d.ts +6 -6
  324. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachments/Attachment.d.ts +3 -2
  325. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachments/AttachmentContent.d.ts +3 -2
  326. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachments/AttachmentIcon.d.ts +3 -2
  327. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachments/DownloadBlockedAttachment.d.ts +3 -2
  328. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachments/FileScanStatus.d.ts +6 -6
  329. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachments/MaliciousAttachment.d.ts +3 -2
  330. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachments/ScanInProgressAttachment.d.ts +3 -2
  331. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachments/Spinner.d.ts +3 -2
  332. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.d.ts +8 -8
  333. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.d.ts +2 -2
  334. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultAttachmentContentStyles.d.ts +1 -2
  335. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultAttachmentDividerStyles.d.ts +1 -2
  336. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultAttachmentDownloadIconStyles.d.ts +1 -2
  337. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultAttachmentFileNameStyles.d.ts +1 -2
  338. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultAttachmentSizeStyles.d.ts +1 -2
  339. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultAtttachmentAdaptiveCardStyles.d.ts +1 -2
  340. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultAtttachmentIconStyles.d.ts +1 -2
  341. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultAtttachmentStyles.d.ts +1 -2
  342. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultAvatarStyles.d.ts +1 -2
  343. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultAvatarTextStyles.d.ts +1 -2
  344. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +1 -2
  345. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSentMessageAnchorStyles.d.ts +1 -2
  346. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -3
  347. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageStyles.d.ts +11 -11
  348. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampContentStyles.d.ts +2 -2
  349. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.d.ts +1 -2
  350. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.d.ts +1 -2
  351. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTypingIndicatorBubbleStyles.d.ts +1 -2
  352. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTypingIndicatorContainerStyles.d.ts +1 -2
  353. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTypingIndicatorMessageStyles.d.ts +1 -2
  354. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -3
  355. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageStyles.d.ts +3 -3
  356. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.d.ts +10 -10
  357. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/index.d.ts +10 -10
  358. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageSequenceIdOverrideMiddleware.d.ts +4 -4
  359. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.d.ts +4 -4
  360. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.d.ts +2 -1
  361. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.d.ts +2 -1
  362. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.d.ts +2 -1
  363. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/toastMiddleware.d.ts +2 -2
  364. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.d.ts +7 -6
  365. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.d.ts +10 -10
  366. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.d.ts +11 -11
  367. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.d.ts +10 -10
  368. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.d.ts +11 -11
  369. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.d.ts +11 -11
  370. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.d.ts +10 -10
  371. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.d.ts +10 -10
  372. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.d.ts +10 -10
  373. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.d.ts +11 -11
  374. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.d.ts +10 -10
  375. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.d.ts +10 -10
  376. package/lib/types/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.d.ts +12 -12
  377. package/lib/types/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.d.ts +1 -1
  378. package/lib/types/contexts/ChatAdapterStore.d.ts +1 -2
  379. package/lib/types/contexts/ChatContextStore.d.ts +1 -1
  380. package/lib/types/contexts/ChatSDKStore.d.ts +1 -1
  381. package/lib/types/contexts/FacadeChatSDKStore.d.ts +1 -1
  382. package/lib/types/contexts/common/ConversationState.d.ts +13 -13
  383. package/lib/types/contexts/common/ILiveChatWidgetAction.d.ts +5 -5
  384. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +63 -63
  385. package/lib/types/contexts/common/ILiveChatWidgetLocalizedTexts.d.ts +40 -40
  386. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +48 -48
  387. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +3 -3
  388. package/lib/types/contexts/common/StartChatFailureType.d.ts +5 -5
  389. package/lib/types/contexts/createReducer.d.ts +4 -4
  390. package/lib/types/controller/componentController.d.ts +16 -16
  391. package/lib/types/firstresponselatency/Constants.d.ts +30 -0
  392. package/lib/types/firstresponselatency/FirstMessageTrackerFromBot.d.ts +1 -0
  393. package/lib/types/firstresponselatency/FirstResponseLatencyTracker.d.ts +22 -0
  394. package/lib/types/firstresponselatency/util.d.ts +7 -0
  395. package/lib/types/hooks/useChatAdapterStore.d.ts +2 -2
  396. package/lib/types/hooks/useChatContextStore.d.ts +5 -5
  397. package/lib/types/hooks/useChatSDKStore.d.ts +2 -2
  398. package/lib/types/hooks/useDebounce.d.ts +3 -3
  399. package/lib/types/hooks/useFacadeChatSDKStore.d.ts +3 -3
  400. package/lib/types/hooks/useWindowDimensions.d.ts +4 -4
  401. package/lib/types/index.d.ts +11 -11
  402. package/lib/types/plugins/createChatTranscript.d.ts +3 -3
  403. package/lib/types/plugins/newMessageEventHandler.d.ts +2 -2
  404. package/package.json +42 -17
@@ -1,10 +1,14 @@
1
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
3
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
1
4
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
5
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
6
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4
7
  import MockAdapter from "./mockadapter";
5
8
  import { ParticipantType } from "../../../common/Constants";
6
- export class MockChatSDK {
7
- constructor() {
9
+ export let MockChatSDK = /*#__PURE__*/function () {
10
+ function MockChatSDK() {
11
+ _classCallCheck(this, MockChatSDK);
8
12
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
13
  _defineProperty(this, "sleep", ms => new Promise(r => setTimeout(r, ms)));
10
14
  _defineProperty(this, "isMockModeOn", true);
@@ -14,63 +18,93 @@ export class MockChatSDK {
14
18
  orgUrl: "https://contoso.crm.dynamics.com"
15
19
  });
16
20
  }
17
- async initialize() {
18
- return this.getLiveChatConfig();
19
- }
20
- async startChat() {
21
- await this.sleep(1000);
22
- }
23
- endChat() {
24
- return null;
25
- }
26
- getChatToken() {
27
- return null;
28
- }
29
- createChatAdapter() {
30
- return new MockAdapter();
31
- }
21
+ _createClass(MockChatSDK, [{
22
+ key: "initialize",
23
+ value: async function initialize() {
24
+ return this.getLiveChatConfig();
25
+ }
26
+ }, {
27
+ key: "startChat",
28
+ value: async function startChat() {
29
+ await this.sleep(1000);
30
+ }
31
+ }, {
32
+ key: "endChat",
33
+ value: function endChat() {
34
+ return null;
35
+ }
36
+ }, {
37
+ key: "getChatToken",
38
+ value: function getChatToken() {
39
+ return null;
40
+ }
41
+ }, {
42
+ key: "createChatAdapter",
43
+ value: function createChatAdapter() {
44
+ return new MockAdapter();
45
+ }
32
46
 
33
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
34
- getPreChatSurvey(parseToJson) {
35
- return "";
36
- }
37
- getConversationDetails() {
38
- return {
39
- State: "Active",
40
- conversationId: "",
41
- canRenderPostChat: "",
42
- participantType: ParticipantType.User
43
- };
44
- }
45
- getCurrentLiveChatContext() {
46
- return {
47
- chatToken: {},
48
- requestId: ""
49
- };
50
- }
51
- onNewMessage() {
52
- return null;
53
- }
54
- getChatReconnectContext() {
55
- return {
56
- reconnectId: "123"
57
- };
58
- }
59
- getVoiceVideoCalling() {
60
- return null;
61
- }
62
- setAuthTokenProvider() {
63
- return null;
64
- }
65
- getLiveChatConfig() {
66
- return {
67
- LiveWSAndLiveChatEngJoin: {
68
- msdyn_postconversationsurveyenable: "true",
69
- msdyn_conversationmode: "192350000"
70
- }
71
- };
72
- }
73
- sendTypingEvent() {
74
- return null;
75
- }
76
- }
47
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
48
+ }, {
49
+ key: "getPreChatSurvey",
50
+ value: function getPreChatSurvey(parseToJson) {
51
+ return "";
52
+ }
53
+ }, {
54
+ key: "getConversationDetails",
55
+ value: function getConversationDetails() {
56
+ return {
57
+ State: "Active",
58
+ conversationId: "",
59
+ canRenderPostChat: "",
60
+ participantType: ParticipantType.User
61
+ };
62
+ }
63
+ }, {
64
+ key: "getCurrentLiveChatContext",
65
+ value: function getCurrentLiveChatContext() {
66
+ return {
67
+ chatToken: {},
68
+ requestId: ""
69
+ };
70
+ }
71
+ }, {
72
+ key: "onNewMessage",
73
+ value: function onNewMessage() {
74
+ return null;
75
+ }
76
+ }, {
77
+ key: "getChatReconnectContext",
78
+ value: function getChatReconnectContext() {
79
+ return {
80
+ reconnectId: "123"
81
+ };
82
+ }
83
+ }, {
84
+ key: "getVoiceVideoCalling",
85
+ value: function getVoiceVideoCalling() {
86
+ return null;
87
+ }
88
+ }, {
89
+ key: "setAuthTokenProvider",
90
+ value: function setAuthTokenProvider() {
91
+ return null;
92
+ }
93
+ }, {
94
+ key: "getLiveChatConfig",
95
+ value: function getLiveChatConfig() {
96
+ return {
97
+ LiveWSAndLiveChatEngJoin: {
98
+ msdyn_postconversationsurveyenable: "true",
99
+ msdyn_conversationmode: "192350000"
100
+ }
101
+ };
102
+ }
103
+ }, {
104
+ key: "sendTypingEvent",
105
+ value: function sendTypingEvent() {
106
+ return null;
107
+ }
108
+ }]);
109
+ return MockChatSDK;
110
+ }();
@@ -1,5 +1,10 @@
1
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
2
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
3
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
1
4
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
5
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
6
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4
- export class BotMagicCodeStore {}
7
+ export let BotMagicCodeStore = /*#__PURE__*/_createClass(function BotMagicCodeStore() {
8
+ _classCallCheck(this, BotMagicCodeStore);
9
+ });
5
10
  _defineProperty(BotMagicCodeStore, "botOAuthSignInId", "");
@@ -1,6 +1,11 @@
1
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
2
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
3
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
1
4
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
5
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
6
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4
- export class WebChatStoreLoader {}
7
+ export let WebChatStoreLoader = /*#__PURE__*/_createClass(function WebChatStoreLoader() {
8
+ _classCallCheck(this, WebChatStoreLoader);
9
+ });
5
10
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
11
  _defineProperty(WebChatStoreLoader, "store", void 0);
@@ -1,56 +1,70 @@
1
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
3
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
1
4
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
5
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
6
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4
7
  import DOMPurify from "dompurify";
5
8
  import { HtmlAttributeNames } from "../../../../common/Constants";
6
- class HyperlinkTextOverrideRenderer {
7
- constructor(hyperlinkTextOverride) {
9
+ let HyperlinkTextOverrideRenderer = /*#__PURE__*/function () {
10
+ function HyperlinkTextOverrideRenderer(hyperlinkTextOverride) {
11
+ _classCallCheck(this, HyperlinkTextOverrideRenderer);
8
12
  _defineProperty(this, "hyperlinkTextOverride", void 0);
9
13
  this.hyperlinkTextOverride = hyperlinkTextOverride;
10
14
  }
11
- convertTextToHtmlNode(text) {
12
- const htmlNode = document.createElement(HtmlAttributeNames.div);
13
- try {
14
- text = DOMPurify.sanitize(text, {
15
- ADD_ATTR: ["target"]
16
- });
17
- htmlNode.innerHTML = text;
18
- } catch {
15
+ _createClass(HyperlinkTextOverrideRenderer, [{
16
+ key: "convertTextToHtmlNode",
17
+ value: function convertTextToHtmlNode(text) {
18
+ const htmlNode = document.createElement(HtmlAttributeNames.div);
19
+ try {
20
+ text = DOMPurify.sanitize(text, {
21
+ ADD_ATTR: ["target"]
22
+ });
23
+ htmlNode.innerHTML = text;
24
+ } catch {
25
+ return htmlNode;
26
+ }
19
27
  return htmlNode;
20
28
  }
21
- return htmlNode;
22
- }
23
- processANode(htmlNode) {
24
- // eslint-disable-line @typescript-eslint/no-explicit-any
25
- const aTags = htmlNode.getElementsByTagName(HtmlAttributeNames.aTagName);
26
- for (let index = 0; index < aTags.length; index++) {
27
- const aNode = aTags[index];
28
- if (!aNode || !aNode.tagName || aNode.tagName.toLowerCase() !== HtmlAttributeNames.aTagName || !aNode.href) continue;
29
- if (aNode.href !== aNode.text.trim()) {
30
- aNode.text = aNode.href;
29
+ }, {
30
+ key: "processANode",
31
+ value: function processANode(htmlNode) {
32
+ // eslint-disable-line @typescript-eslint/no-explicit-any
33
+ const aTags = htmlNode.getElementsByTagName(HtmlAttributeNames.aTagName);
34
+ for (let index = 0; index < aTags.length; index++) {
35
+ const aNode = aTags[index];
36
+ if (!aNode || !aNode.tagName || aNode.tagName.toLowerCase() !== HtmlAttributeNames.aTagName || !aNode.href) continue;
37
+ if (aNode.href !== aNode.text.trim()) {
38
+ aNode.text = aNode.href;
39
+ }
31
40
  }
32
41
  }
33
- }
34
- applicable(text) {
35
- if (!this.hyperlinkTextOverride) {
36
- return false;
42
+ }, {
43
+ key: "applicable",
44
+ value: function applicable(text) {
45
+ if (!this.hyperlinkTextOverride) {
46
+ return false;
47
+ }
48
+ try {
49
+ const htmlNode = this.convertTextToHtmlNode(text);
50
+ const aNodes = htmlNode.getElementsByTagName(HtmlAttributeNames.aTagName);
51
+ return !!aNodes && aNodes.length && aNodes.length > 0;
52
+ } catch {
53
+ return false;
54
+ }
37
55
  }
38
- try {
56
+ }, {
57
+ key: "render",
58
+ value: function render(text) {
59
+ if (!this.applicable(text)) {
60
+ return text;
61
+ }
39
62
  const htmlNode = this.convertTextToHtmlNode(text);
40
- const aNodes = htmlNode.getElementsByTagName(HtmlAttributeNames.aTagName);
41
- return !!aNodes && aNodes.length && aNodes.length > 0;
42
- } catch {
43
- return false;
44
- }
45
- }
46
- render(text) {
47
- if (!this.applicable(text)) {
63
+ this.processANode(htmlNode);
64
+ text = htmlNode.innerHTML;
48
65
  return text;
49
66
  }
50
- const htmlNode = this.convertTextToHtmlNode(text);
51
- this.processANode(htmlNode);
52
- text = htmlNode.innerHTML;
53
- return text;
54
- }
55
- }
67
+ }]);
68
+ return HyperlinkTextOverrideRenderer;
69
+ }();
56
70
  export default HyperlinkTextOverrideRenderer;
@@ -35,6 +35,10 @@ export const DeliveredTimestamp = _ref => {
35
35
  return /*#__PURE__*/React.createElement("span", {
36
36
  dir: "ltr"
37
37
  }, getTimestampHourMinute(timestamp));
38
+ } else {
39
+ return /*#__PURE__*/React.createElement("span", {
40
+ dir: dir
41
+ }, getTimestampHourMinute(timestamp));
38
42
  }
39
43
  return timeString;
40
44
  };
@@ -24,6 +24,8 @@ const validateAttachment = (action, allowedFileExtensions, maxFileSizeSupportedB
24
24
  return action;
25
25
  }
26
26
  if (attachments) {
27
+ NotificationHandler.dismissNotification(NotificationScenarios.AttachmentError); // Dismiss any previous attachment error notification
28
+
27
29
  for (let i = 0; i < attachments.length; i++) {
28
30
  const maxUploadFileSize = getMaxUploadFileSize(maxFileSizeSupportedByDynamics, attachments[i].contentType);
29
31
  const fileExtensionValid = validateFileExtension(attachments[i], allowedFileExtensions);
@@ -1,3 +1,8 @@
1
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
3
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
4
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
5
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
1
6
  import { HtmlClassNames, HtmlIdNames } from "../../../../common/Constants";
2
7
  import { NotificationLevel } from "../enums/NotificationLevel";
3
8
  import { WebChatActionType } from "../enums/WebChatActionType";
@@ -5,73 +10,96 @@ import { WebChatStoreLoader } from "../WebChatStoreLoader";
5
10
  import { setFocusOnSendBox } from "../../../../common/utils";
6
11
  import { BroadcastService } from "@microsoft/omnichannel-chat-components";
7
12
  import { BroadcastEvent } from "../../../../common/telemetry/TelemetryConstants";
8
- export class NotificationHandler {
9
- static notify(id, level, message) {
10
- if (WebChatStoreLoader.store) {
11
- WebChatStoreLoader.store.dispatch({
12
- type: WebChatActionType.WEB_CHAT_SET_NOTIFICATION,
13
- payload: {
14
- id,
15
- level,
16
- message
17
- }
18
- });
19
- NotificationHandler.setFocusOnNotificationCloseButton();
20
- }
13
+ export let NotificationHandler = /*#__PURE__*/function () {
14
+ function NotificationHandler() {
15
+ _classCallCheck(this, NotificationHandler);
21
16
  }
22
- static dismissNotification(id) {
23
- if (WebChatStoreLoader.store) {
24
- WebChatStoreLoader.store.dispatch({
25
- type: WebChatActionType.WEB_CHAT_DISMISS_NOTIFICATION,
17
+ _createClass(NotificationHandler, null, [{
18
+ key: "notify",
19
+ value: function notify(id, level, message) {
20
+ if (WebChatStoreLoader.store) {
21
+ WebChatStoreLoader.store.dispatch({
22
+ type: WebChatActionType.WEB_CHAT_SET_NOTIFICATION,
23
+ payload: {
24
+ id,
25
+ level,
26
+ message
27
+ }
28
+ });
29
+ NotificationHandler.setFocusOnNotificationCloseButton();
30
+ }
31
+ }
32
+ }, {
33
+ key: "dismissNotification",
34
+ value: function dismissNotification(id) {
35
+ if (WebChatStoreLoader.store) {
36
+ WebChatStoreLoader.store.dispatch({
37
+ type: WebChatActionType.WEB_CHAT_DISMISS_NOTIFICATION,
38
+ payload: {
39
+ id
40
+ }
41
+ });
42
+ }
43
+ }
44
+ }, {
45
+ key: "notifyError",
46
+ value: function notifyError(id, message) {
47
+ BroadcastService.postMessage({
48
+ eventName: BroadcastEvent.OnWidgetError,
26
49
  payload: {
27
- id
50
+ errorMessage: message
28
51
  }
29
52
  });
53
+ this.notify(id, NotificationLevel.Error, message);
30
54
  }
31
- }
32
- static notifyError(id, message) {
33
- BroadcastService.postMessage({
34
- eventName: BroadcastEvent.OnWidgetError,
35
- payload: {
36
- errorMessage: message
55
+ }, {
56
+ key: "notifyWarning",
57
+ value: function notifyWarning(id, message) {
58
+ this.notify(id, NotificationLevel.Warning, message);
59
+ }
60
+ }, {
61
+ key: "notifyInfo",
62
+ value: function notifyInfo(id, message) {
63
+ this.notify(id, NotificationLevel.Info, message);
64
+ }
65
+ }, {
66
+ key: "notifySuccess",
67
+ value: function notifySuccess(id, message) {
68
+ this.notify(id, NotificationLevel.Success, message);
69
+ }
70
+ }, {
71
+ key: "notifyWithLevel",
72
+ value: function notifyWithLevel(id, message, level) {
73
+ if (!level) {
74
+ this.notifyInfo(id, message);
75
+ } else {
76
+ this.notify(id, level, message);
37
77
  }
38
- });
39
- this.notify(id, NotificationLevel.Error, message);
40
- }
41
- static notifyWarning(id, message) {
42
- this.notify(id, NotificationLevel.Warning, message);
43
- }
44
- static notifyInfo(id, message) {
45
- this.notify(id, NotificationLevel.Info, message);
46
- }
47
- static notifySuccess(id, message) {
48
- this.notify(id, NotificationLevel.Success, message);
49
- }
50
- static notifyWithLevel(id, message, level) {
51
- if (!level) {
52
- this.notifyInfo(id, message);
53
- } else {
54
- this.notify(id, level, message);
55
78
  }
56
- }
57
79
 
58
- /* Bypass WebChat behavior and focus on banner close button */
59
- static setFocusOnNotificationCloseButton() {
60
- const expandButton = document.querySelector(`#${HtmlIdNames.MSLiveChatWidget} .${HtmlClassNames.webChatBannerExpandButton}`);
61
- if (expandButton) {
62
- expandButton.focus();
63
- return;
80
+ /* Bypass WebChat behavior and focus on banner close button */
81
+ }, {
82
+ key: "setFocusOnNotificationCloseButton",
83
+ value: function setFocusOnNotificationCloseButton() {
84
+ const expandButton = document.querySelector(`#${HtmlIdNames.MSLiveChatWidget} .${HtmlClassNames.webChatBannerExpandButton}`);
85
+ if (expandButton) {
86
+ expandButton.focus();
87
+ return;
88
+ }
89
+ const closeButton = document.querySelector(`#${HtmlIdNames.MSLiveChatWidget} .${HtmlClassNames.webChatBannerCloseButton}`);
90
+ if (closeButton) {
91
+ closeButton.focus();
92
+ NotificationHandler.registerOnCloseEvent(closeButton);
93
+ return;
94
+ }
64
95
  }
65
- const closeButton = document.querySelector(`#${HtmlIdNames.MSLiveChatWidget} .${HtmlClassNames.webChatBannerCloseButton}`);
66
- if (closeButton) {
67
- closeButton.focus();
68
- NotificationHandler.registerOnCloseEvent(closeButton);
69
- return;
96
+ }, {
97
+ key: "registerOnCloseEvent",
98
+ value: function registerOnCloseEvent(button) {
99
+ button.onclick = () => {
100
+ setFocusOnSendBox();
101
+ };
70
102
  }
71
- }
72
- static registerOnCloseEvent(button) {
73
- button.onclick = () => {
74
- setFocusOnSendBox();
75
- };
76
- }
77
- }
103
+ }]);
104
+ return NotificationHandler;
105
+ }();
@@ -1,17 +1,22 @@
1
- import { ConversationState } from "./ConversationState";
2
- import { defaultMiddlewareLocalizedTexts } from "../../components/webchatcontainerstateful/common/defaultProps/defaultMiddlewareLocalizedTexts";
3
- import { getWidgetCacheIdfromProps, isNullOrUndefined } from "../../common/utils";
4
- import { defaultClientDataStoreProvider } from "../../common/storage/default/defaultClientDataStoreProvider";
5
1
  import { ConfirmationState, Constants, ConversationEndEntity, StorageType } from "../../common/Constants";
2
+ import { getWidgetCacheIdfromProps, isNullOrUndefined } from "../../common/utils";
3
+ import { ConversationState } from "./ConversationState";
6
4
  import { StartChatFailureType } from "./StartChatFailureType";
5
+ import { defaultClientDataStoreProvider } from "../../common/storage/default/defaultClientDataStoreProvider";
6
+ import { defaultMiddlewareLocalizedTexts } from "../../components/webchatcontainerstateful/common/defaultProps/defaultMiddlewareLocalizedTexts";
7
7
  export const getLiveChatWidgetContextInitialState = props => {
8
8
  var _props$controlProps, _props$webChatContain;
9
+ const isOutsideOperatingHours = () => {
10
+ var _props$chatConfig, _props$chatConfig$Liv, _props$chatConfig$Liv2;
11
+ return ((_props$chatConfig = props.chatConfig) === null || _props$chatConfig === void 0 ? void 0 : (_props$chatConfig$Liv = _props$chatConfig.LiveWSAndLiveChatEngJoin) === null || _props$chatConfig$Liv === void 0 ? void 0 : (_props$chatConfig$Liv2 = _props$chatConfig$Liv.OutOfOperatingHours) === null || _props$chatConfig$Liv2 === void 0 ? void 0 : _props$chatConfig$Liv2.toString().toLowerCase()) === "true";
12
+ };
9
13
  const widgetCacheId = getWidgetCacheIdfromProps(props);
10
14
  const cacheTtlInMins = (props === null || props === void 0 ? void 0 : (_props$controlProps = props.controlProps) === null || _props$controlProps === void 0 ? void 0 : _props$controlProps.cacheTtlInMins) ?? Constants.CacheTtlInMinutes;
11
15
  const storageType = (props === null || props === void 0 ? void 0 : props.useSessionStorage) === true ? StorageType.sessionStorage : StorageType.localStorage;
12
16
  const initialState = defaultClientDataStoreProvider(cacheTtlInMins, storageType).getData(widgetCacheId);
13
17
  if (!isNullOrUndefined(initialState)) {
14
18
  const initialStateFromCache = JSON.parse(initialState);
19
+ const outsideOperatingHours = isOutsideOperatingHours();
15
20
 
16
21
  /*
17
22
  * this step is needed to avoid the pre-chat pane to be injected in the DOM when the widget is reloaded, because wont be visible
@@ -19,9 +24,15 @@ export const getLiveChatWidgetContextInitialState = props => {
19
24
  * as part of the flow, the pre-chat will be detected and then it will be displayed properly
20
25
  * this case is only and only for pre-chat pane.
21
26
  * **/
22
- if (initialStateFromCache.appStates.conversationState === ConversationState.Prechat) {
27
+ if (initialStateFromCache.appStates.conversationState === ConversationState.Prechat || initialStateFromCache.appStates.conversationState === ConversationState.OutOfOffice || outsideOperatingHours) {
23
28
  initialStateFromCache.appStates.conversationState = ConversationState.Closed;
29
+ // if we are resetting the conversation state, there is no point to obtain minimized state from cache
30
+ initialStateFromCache.appStates.isMinimized = undefined;
24
31
  }
32
+ // we are always setting the chatConfig from the props to avoid any issues with the cache
33
+ initialStateFromCache.domainStates.liveChatConfig = props.chatConfig;
34
+ // Cache the result of isOutsideOperatingHours() to ensure consistency
35
+ initialStateFromCache.appStates.outsideOperatingHours = outsideOperatingHours;
25
36
  return initialStateFromCache;
26
37
  }
27
38
  const LiveChatWidgetContextInitialState = {
@@ -50,7 +61,7 @@ export const getLiveChatWidgetContextInitialState = props => {
50
61
  isMinimized: undefined,
51
62
  previousElementIdOnFocusBeforeModalOpen: null,
52
63
  startChatFailed: false,
53
- outsideOperatingHours: false,
64
+ outsideOperatingHours: isOutsideOperatingHours(),
54
65
  preChatResponseEmail: "",
55
66
  isAudioMuted: null,
56
67
  newMessage: false,
@@ -17,7 +17,7 @@ export const shouldShowEmailTranscriptPane = state => {
17
17
  return state.uiStates.showEmailTranscriptPane;
18
18
  };
19
19
  export const shouldShowWebChatContainer = state => {
20
- return state.appStates.conversationState === ConversationState.Active || state.appStates.conversationState === ConversationState.InActive;
20
+ return !state.appStates.isMinimized && state.appStates.conversationState === ConversationState.Active || state.appStates.conversationState === ConversationState.InActive;
21
21
  };
22
22
  export const shouldShowLoadingPane = state => {
23
23
  return !state.appStates.isMinimized && state.appStates.conversationState === ConversationState.Loading;
@@ -32,7 +32,8 @@ export const shouldShowPostChatLoadingPane = state => {
32
32
  return !state.appStates.isMinimized && state.appStates.conversationState === ConversationState.PostchatLoading;
33
33
  };
34
34
  export const shouldShowOutOfOfficeHoursPane = state => {
35
- return !state.appStates.isMinimized && state.appStates.conversationState === ConversationState.OutOfOffice;
35
+ // Show OOOH pane only when the conversation state is Closed and outside operating hours is true
36
+ return !state.appStates.isMinimized && state.appStates.outsideOperatingHours === true && state.appStates.conversationState === ConversationState.OutOfOffice;
36
37
  };
37
38
  export const shouldShowPreChatSurveyPane = state => {
38
39
  return state.appStates.conversationState === ConversationState.Prechat;
@@ -0,0 +1,6 @@
1
+ export let ScenarioType;
2
+ (function (ScenarioType) {
3
+ ScenarioType["UserSendMessageStrategy"] = "UserSendMessageStrategy";
4
+ ScenarioType["SystemMessageStrategy"] = "SystemMessageStrategy";
5
+ ScenarioType["ReceivedMessageStrategy"] = "ReceivedMessageStrategy";
6
+ })(ScenarioType || (ScenarioType = {}));