@microsoft/omnichannel-chat-widget 0.1.0-main.c2417f9 → 0.1.0-main.c5ffed0

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 (311) hide show
  1. package/lib/cjs/assets/Icons.js +4 -2
  2. package/lib/cjs/common/Constants.js +26 -169
  3. package/lib/cjs/common/KeyCodes.js +3 -4
  4. package/lib/cjs/common/contextDataStore/DataStoreManager.js +3 -5
  5. package/lib/cjs/common/storage/default/defaultCacheManager.js +26 -0
  6. package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +111 -0
  7. package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +78 -0
  8. package/lib/cjs/common/telemetry/TelemetryConstants.js +39 -23
  9. package/lib/cjs/common/telemetry/TelemetryHelper.js +21 -59
  10. package/lib/cjs/common/telemetry/TelemetryManager.js +3 -32
  11. package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +0 -2
  12. package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +30 -36
  13. package/lib/cjs/common/telemetry/loggers/consoleLogger.js +0 -9
  14. package/lib/cjs/common/utils.js +65 -93
  15. package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +8 -46
  16. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +5 -23
  17. package/lib/cjs/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  18. package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +8 -33
  19. package/lib/cjs/components/dimlayer/DimLayer.js +0 -4
  20. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +9 -37
  21. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -8
  22. package/lib/cjs/components/footerstateful/FooterStateful.js +11 -42
  23. package/lib/cjs/components/footerstateful/audionotificationstateful/AudioNotificationStateful.js +0 -6
  24. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -45
  25. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -8
  26. package/lib/cjs/components/headerstateful/HeaderStateful.js +20 -32
  27. package/lib/cjs/components/livechatwidget/LiveChatWidget.js +2 -14
  28. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +39 -0
  29. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +20 -0
  30. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  31. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +34 -0
  32. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +64 -0
  33. package/lib/cjs/components/livechatwidget/common/Deferred.js +37 -0
  34. package/lib/cjs/components/livechatwidget/common/authHelper.js +50 -0
  35. package/lib/cjs/components/livechatwidget/common/createAdapter.js +10 -9
  36. package/lib/cjs/components/livechatwidget/common/createFooter.js +4 -23
  37. package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -10
  38. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +36 -43
  39. package/lib/cjs/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +14 -0
  40. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +127 -51
  41. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
  42. package/lib/cjs/components/livechatwidget/common/endChat.js +92 -45
  43. package/lib/cjs/components/livechatwidget/common/getGeneralStylesForButton.js +0 -6
  44. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +7 -16
  45. package/lib/cjs/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -8
  46. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +27 -53
  47. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +76 -129
  48. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +4 -17
  49. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +2 -15
  50. package/lib/cjs/components/livechatwidget/common/shareObservable.js +41 -0
  51. package/lib/cjs/components/livechatwidget/common/startChat.js +235 -127
  52. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +0 -8
  53. package/lib/cjs/components/livechatwidget/common/updateSessionDataForTelemetry.js +2 -11
  54. package/lib/cjs/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  55. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +294 -250
  56. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +26 -19
  57. package/lib/cjs/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +57 -0
  58. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +4 -17
  59. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -17
  60. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -23
  61. package/lib/cjs/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  62. package/lib/cjs/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +13 -0
  63. package/lib/cjs/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  64. package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  65. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +11 -43
  66. package/lib/cjs/components/prechatsurveypanestateful/common/defaultStyles/defaultGeneralPreChatSurveyPaneStyleProps.js +1 -1
  67. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +3 -33
  68. package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -24
  69. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +29 -34
  70. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -7
  71. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -6
  72. package/lib/cjs/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +11 -0
  73. package/lib/cjs/components/webchatcontainerstateful/common/mockadapter.js +12 -27
  74. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +6 -17
  75. package/lib/cjs/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -24
  76. package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -15
  77. package/lib/cjs/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -8
  78. package/lib/cjs/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  79. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +3 -5
  80. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -5
  81. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  82. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  83. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  84. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  85. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  86. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  87. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  88. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  89. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +0 -7
  90. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -5
  91. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -41
  92. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +10 -22
  93. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -61
  94. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +7 -15
  95. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -13
  96. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -16
  97. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +10 -0
  98. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
  99. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -3
  100. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -3
  101. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
  102. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -9
  103. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +2 -30
  104. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +7 -18
  105. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +8 -42
  106. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +4 -22
  107. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +13 -30
  108. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +3 -9
  109. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -34
  110. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +1 -10
  111. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +1 -12
  112. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -19
  113. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +1 -9
  114. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -9
  115. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +13 -34
  116. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +1 -10
  117. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +7 -11
  118. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +5 -14
  119. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -21
  120. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -12
  121. package/lib/cjs/contexts/ChatAdapterStore.js +0 -2
  122. package/lib/cjs/contexts/ChatContextStore.js +0 -2
  123. package/lib/cjs/contexts/ChatSDKStore.js +0 -2
  124. package/lib/cjs/contexts/common/ConversationState.js +3 -3
  125. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +30 -28
  126. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +14 -13
  127. package/lib/cjs/contexts/createReducer.js +159 -105
  128. package/lib/cjs/controller/componentController.js +4 -33
  129. package/lib/cjs/hooks/useChatAdapterStore.js +0 -6
  130. package/lib/cjs/hooks/useChatContextStore.js +0 -6
  131. package/lib/cjs/hooks/useChatSDKStore.js +0 -6
  132. package/lib/cjs/hooks/useDebounce.js +28 -0
  133. package/lib/cjs/hooks/useWindowDimensions.js +30 -0
  134. package/lib/cjs/index.js +0 -5
  135. package/lib/cjs/plugins/newMessageEventHandler.js +19 -36
  136. package/lib/esm/assets/Icons.js +2 -1
  137. package/lib/esm/common/Constants.js +23 -156
  138. package/lib/esm/common/KeyCodes.js +3 -3
  139. package/lib/esm/common/contextDataStore/DataStoreManager.js +3 -3
  140. package/lib/esm/common/storage/default/defaultCacheManager.js +18 -0
  141. package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +104 -0
  142. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +70 -0
  143. package/lib/esm/common/telemetry/TelemetryConstants.js +43 -20
  144. package/lib/esm/common/telemetry/TelemetryHelper.js +21 -47
  145. package/lib/esm/common/telemetry/TelemetryManager.js +3 -19
  146. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +28 -24
  147. package/lib/esm/common/telemetry/loggers/consoleLogger.js +0 -5
  148. package/lib/esm/common/utils.js +60 -50
  149. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +8 -17
  150. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +5 -6
  151. package/lib/esm/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  152. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +10 -14
  153. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +9 -16
  154. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
  155. package/lib/esm/components/footerstateful/FooterStateful.js +13 -23
  156. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -35
  157. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -6
  158. package/lib/esm/components/headerstateful/HeaderStateful.js +20 -17
  159. package/lib/esm/components/livechatwidget/LiveChatWidget.js +2 -2
  160. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +32 -0
  161. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +13 -0
  162. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  163. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +27 -0
  164. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +57 -0
  165. package/lib/esm/components/livechatwidget/common/Deferred.js +30 -0
  166. package/lib/esm/components/livechatwidget/common/authHelper.js +42 -0
  167. package/lib/esm/components/livechatwidget/common/createAdapter.js +12 -4
  168. package/lib/esm/components/livechatwidget/common/createFooter.js +4 -16
  169. package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -5
  170. package/lib/esm/components/livechatwidget/common/createMarkdown.js +38 -37
  171. package/lib/esm/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +7 -0
  172. package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +128 -37
  173. package/lib/esm/components/livechatwidget/common/endChat.js +94 -30
  174. package/lib/esm/components/livechatwidget/common/getGeneralStylesForButton.js +0 -2
  175. package/lib/esm/components/livechatwidget/common/initCallingSdk.js +9 -11
  176. package/lib/esm/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -5
  177. package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +30 -20
  178. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +77 -111
  179. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +4 -9
  180. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +4 -7
  181. package/lib/esm/components/livechatwidget/common/shareObservable.js +35 -0
  182. package/lib/esm/components/livechatwidget/common/startChat.js +233 -103
  183. package/lib/esm/components/livechatwidget/common/updateSessionDataForTelemetry.js +4 -2
  184. package/lib/esm/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  185. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +297 -188
  186. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +26 -7
  187. package/lib/esm/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +50 -0
  188. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +4 -5
  189. package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -5
  190. package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -11
  191. package/lib/esm/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  192. package/lib/esm/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +6 -0
  193. package/lib/esm/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  194. package/lib/esm/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  195. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +14 -27
  196. package/lib/esm/components/prechatsurveypanestateful/common/defaultStyles/defaultGeneralPreChatSurveyPaneStyleProps.js +1 -1
  197. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +5 -9
  198. package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -6
  199. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +27 -9
  200. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -1
  201. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
  202. package/lib/esm/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +4 -0
  203. package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +12 -19
  204. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +6 -13
  205. package/lib/esm/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -16
  206. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -5
  207. package/lib/esm/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -6
  208. package/lib/esm/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  209. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +3 -3
  210. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -3
  211. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  212. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  213. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  214. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  215. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  216. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  217. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  218. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  219. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +2 -5
  220. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -4
  221. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -26
  222. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +12 -14
  223. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -39
  224. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +9 -8
  225. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -9
  226. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -14
  227. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +3 -0
  228. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +3 -0
  229. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -1
  230. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -1
  231. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +3 -0
  232. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -7
  233. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +4 -28
  234. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +8 -9
  235. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +9 -28
  236. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +5 -14
  237. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +15 -19
  238. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +5 -8
  239. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -29
  240. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +3 -7
  241. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +3 -8
  242. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -14
  243. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +3 -7
  244. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -7
  245. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +15 -27
  246. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +3 -5
  247. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +9 -9
  248. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +7 -9
  249. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -13
  250. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -5
  251. package/lib/esm/contexts/ChatAdapterStore.js +2 -1
  252. package/lib/esm/contexts/ChatContextStore.js +2 -1
  253. package/lib/esm/contexts/ChatSDKStore.js +2 -1
  254. package/lib/esm/contexts/common/ConversationState.js +3 -3
  255. package/lib/esm/contexts/common/LiveChatWidgetActionType.js +30 -28
  256. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +14 -9
  257. package/lib/esm/contexts/createReducer.js +159 -102
  258. package/lib/esm/controller/componentController.js +5 -4
  259. package/lib/esm/hooks/useChatAdapterStore.js +0 -4
  260. package/lib/esm/hooks/useChatContextStore.js +0 -4
  261. package/lib/esm/hooks/useChatSDKStore.js +0 -4
  262. package/lib/esm/hooks/useDebounce.js +22 -0
  263. package/lib/esm/hooks/useWindowDimensions.js +23 -0
  264. package/lib/esm/plugins/newMessageEventHandler.js +19 -26
  265. package/lib/types/assets/Icons.d.ts +1 -0
  266. package/lib/types/common/Constants.d.ts +16 -0
  267. package/lib/types/common/storage/default/defaultCacheManager.d.ts +4 -0
  268. package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +2 -0
  269. package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -0
  270. package/lib/types/common/telemetry/TelemetryConstants.d.ts +26 -5
  271. package/lib/types/common/telemetry/definitions/Contracts.d.ts +4 -4
  272. package/lib/types/common/telemetry/definitions/Payload.d.ts +1 -0
  273. package/lib/types/common/telemetry/interfaces/ITelemetryConfig.d.ts +4 -0
  274. package/lib/types/common/utils.d.ts +7 -3
  275. package/lib/types/components/headerstateful/interfaces/IHeaderStatefulParams.d.ts +2 -1
  276. package/lib/types/components/livechatwidget/common/ActivityStreamHandler.d.ts +14 -0
  277. package/lib/types/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.d.ts +5 -0
  278. package/lib/types/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.d.ts +6 -0
  279. package/lib/types/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.d.ts +7 -0
  280. package/lib/types/components/livechatwidget/common/ChatAdapterShim.d.ts +7 -0
  281. package/lib/types/components/livechatwidget/common/Deferred.d.ts +9 -0
  282. package/lib/types/components/livechatwidget/common/authHelper.d.ts +5 -0
  283. package/lib/types/components/livechatwidget/common/defaultProps/defaultScrollBarProps.d.ts +2 -0
  284. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +6 -7
  285. package/lib/types/components/livechatwidget/common/shareObservable.d.ts +1 -0
  286. package/lib/types/components/livechatwidget/common/startChat.d.ts +5 -2
  287. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +4 -1
  288. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +5 -2
  289. package/lib/types/components/livechatwidget/interfaces/IScrollBarProps.d.ts +22 -0
  290. package/lib/types/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.d.ts +2 -0
  291. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
  292. package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -0
  293. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
  294. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +0 -2
  295. package/lib/types/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.d.ts +2 -0
  296. package/lib/types/components/webchatcontainerstateful/common/mockchatsdk.d.ts +1 -0
  297. package/lib/types/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.d.ts +4 -0
  298. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +4 -1
  299. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatContainerStatefulProps.d.ts +2 -0
  300. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.d.ts +1 -1
  301. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +2 -0
  302. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  303. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  304. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.d.ts +1 -1
  305. package/lib/types/contexts/common/ConversationState.d.ts +3 -2
  306. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +4 -3
  307. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +30 -27
  308. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
  309. package/lib/types/hooks/useDebounce.d.ts +3 -0
  310. package/lib/types/hooks/useWindowDimensions.d.ts +4 -0
  311. package/package.json +5 -4
@@ -4,14 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.getGeneralStylesForButton = void 0;
7
-
8
7
  var _componentController = require("../../../controller/componentController");
9
-
10
8
  var _defaultLiveChatWidgetGeneralStyles = require("./defaultStyles/defaultLiveChatWidgetGeneralStyles");
11
-
12
9
  const getGeneralStylesForButton = state => {
13
10
  let generalStylesForButton = _defaultLiveChatWidgetGeneralStyles.defaultLiveChatWidgetGeneralStyles;
14
-
15
11
  if (!(0, _componentController.shouldShowChatButton)(state) && !(0, _componentController.shouldShowProactiveChatPane)(state)) {
16
12
  generalStylesForButton = Object.assign({}, _defaultLiveChatWidgetGeneralStyles.defaultLiveChatWidgetGeneralStyles, {
17
13
  boxShadow: "0px 0px 2px rgba(0, 0, 0, 0.16), 0px 4px 8px rgba(0, 0, 0, 0.12)",
@@ -21,8 +17,6 @@ const getGeneralStylesForButton = state => {
21
17
  padding: "0.5"
22
18
  });
23
19
  }
24
-
25
20
  return generalStylesForButton;
26
21
  };
27
-
28
22
  exports.getGeneralStylesForButton = getGeneralStylesForButton;
@@ -4,11 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.initCallingSdk = void 0;
7
-
8
7
  var _TelemetryConstants = require("../../../common/telemetry/TelemetryConstants");
9
-
10
8
  var _TelemetryHelper = require("../../../common/telemetry/TelemetryHelper");
11
-
12
9
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
10
  const initCallingSdk = async (chatSDK, setVoiceVideoCallingSDK) => {
14
11
  try {
@@ -17,27 +14,21 @@ const initCallingSdk = async (chatSDK, setVoiceVideoCallingSDK) => {
17
14
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
18
15
  const callingSDK = await chatSDK.getVoiceVideoCalling();
19
16
  setVoiceVideoCallingSDK(callingSDK);
20
-
21
17
  _TelemetryHelper.TelemetryHelper.logCallingEvent(_TelemetryConstants.LogLevel.INFO, {
22
18
  Event: _TelemetryConstants.TelemetryEvent.CallingSDKLoadSuccess
23
19
  });
24
-
25
20
  return true;
26
21
  }
27
-
28
22
  return false;
29
23
  } catch (error) {
30
- if (error !== "Voice and video call is not enabled") {
31
- _TelemetryHelper.TelemetryHelper.logCallingEvent(_TelemetryConstants.LogLevel.ERROR, {
32
- Event: _TelemetryConstants.TelemetryEvent.CallingSDKLoadFailed,
33
- ExceptionDetails: {
34
- exception: error
35
- }
36
- });
37
- }
38
-
24
+ _TelemetryHelper.TelemetryHelper.logCallingEvent(_TelemetryConstants.LogLevel.ERROR, {
25
+ Event: _TelemetryConstants.TelemetryEvent.CallingSDKLoadFailed,
26
+ ExceptionDetails: {
27
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
28
+ exception: error.message
29
+ }
30
+ });
39
31
  return false;
40
32
  }
41
33
  };
42
-
43
34
  exports.initCallingSdk = initCallingSdk;
@@ -4,19 +4,16 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.initConfirmationPropsComposer = void 0;
7
-
8
7
  var _defaultConfirmationPaneLocalizedTexts = require("../../confirmationpanestateful/common/defaultProps/defaultConfirmationPaneLocalizedTexts");
9
-
10
8
  const initConfirmationPropsComposer = props => {
11
9
  var _props$confirmationPa, _props$footerProps, _props$footerProps$co, _props$footerProps2, _props$footerProps2$c, _props$confirmationPa2;
12
-
13
- const confirmationPanelocalizedTexts = { ..._defaultConfirmationPaneLocalizedTexts.defaultConfirmationPaneLocalizedTexts,
10
+ const confirmationPanelocalizedTexts = {
11
+ ..._defaultConfirmationPaneLocalizedTexts.defaultConfirmationPaneLocalizedTexts,
14
12
  ...(props === null || props === void 0 ? void 0 : (_props$confirmationPa = props.confirmationPaneProps) === null || _props$confirmationPa === void 0 ? void 0 : _props$confirmationPa.confirmationPaneLocalizedTexts)
15
13
  };
16
14
  let confirmationPaneInputs;
17
15
  const emailTranscriptDisabled = ((_props$footerProps = props.footerProps) === null || _props$footerProps === void 0 ? void 0 : (_props$footerProps$co = _props$footerProps.controlProps) === null || _props$footerProps$co === void 0 ? void 0 : _props$footerProps$co.hideEmailTranscriptButton) ?? false;
18
16
  const downloadTranscriptDisabled = ((_props$footerProps2 = props.footerProps) === null || _props$footerProps2 === void 0 ? void 0 : (_props$footerProps2$c = _props$footerProps2.controlProps) === null || _props$footerProps2$c === void 0 ? void 0 : _props$footerProps2$c.hideDownloadTranscriptButton) ?? false;
19
-
20
17
  if (!emailTranscriptDisabled && !downloadTranscriptDisabled) {
21
18
  confirmationPaneInputs = {
22
19
  title: confirmationPanelocalizedTexts.CLOSE_CONFIRMATION_DIALOG_TITLE_FOR_EMAIL_AND_DOWNLOAD_TRANSCRIPT_ENABLED,
@@ -38,8 +35,8 @@ const initConfirmationPropsComposer = props => {
38
35
  description: confirmationPanelocalizedTexts.CLOSE_CONFIRMATION_DIALOG_DESCRIPTION_DEFAULT
39
36
  };
40
37
  }
41
-
42
- const confirmationPaneProps = { ...props.confirmationPaneProps,
38
+ const confirmationPaneProps = {
39
+ ...props.confirmationPaneProps,
43
40
  controlProps: {
44
41
  titleText: confirmationPaneInputs.title,
45
42
  subtitleText: confirmationPaneInputs.description,
@@ -48,5 +45,4 @@ const initConfirmationPropsComposer = props => {
48
45
  };
49
46
  return confirmationPaneProps;
50
47
  };
51
-
52
48
  exports.initConfirmationPropsComposer = initConfirmationPropsComposer;
@@ -4,111 +4,81 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.initWebChatComposer = void 0;
7
-
8
7
  var _TelemetryConstants = require("../../../common/telemetry/TelemetryConstants");
9
-
10
8
  var _botframeworkWebchat = require("botframework-webchat");
11
-
12
9
  var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
13
-
14
10
  var _ConversationState = require("../../../contexts/common/ConversationState");
15
-
16
11
  var _LiveChatWidgetActionType = require("../../../contexts/common/LiveChatWidgetActionType");
17
-
18
12
  var _PostChatSurveyMode = require("../../postchatsurveypanestateful/enums/PostChatSurveyMode");
19
-
20
13
  var _TelemetryHelper = require("../../../common/telemetry/TelemetryHelper");
21
-
22
14
  var _WebChatStoreLoader = require("../../webchatcontainerstateful/webchatcontroller/WebChatStoreLoader");
23
-
24
15
  var _attachmentProcessingMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware"));
25
-
26
16
  var _utils = require("../../../common/utils");
27
-
28
17
  var _channelDataMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware"));
29
-
30
18
  var _activityMiddleware = require("../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware");
31
-
32
19
  var _attachmentMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware"));
33
-
34
20
  var _attachmentUploadValidatorMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware"));
35
-
36
21
  var _avatarMiddleware = require("../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware");
37
-
38
22
  var _conversationEndMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware"));
39
-
40
23
  var _dataMaskingMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware"));
41
-
42
24
  var _createMarkdown = require("./createMarkdown");
43
-
44
25
  var _maxMessageSizeValidator = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator"));
45
-
46
26
  var _WebChatLogger = require("../../webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger");
47
-
48
27
  var _defaultAttachmentProps = require("../../webchatcontainerstateful/common/defaultProps/defaultAttachmentProps");
49
-
50
28
  var _defaultMiddlewareLocalizedTexts = require("../../webchatcontainerstateful/common/defaultProps/defaultMiddlewareLocalizedTexts");
51
-
52
29
  var _defaultWebChatContainerStatefulProps = require("../../webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps");
53
-
54
30
  var _omnichannelChatSdk = require("@microsoft/omnichannel-chat-sdk");
55
-
56
31
  var _gifUploadMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware"));
57
-
58
32
  var _htmlPlayerMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware"));
59
-
60
33
  var _htmlTextMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware"));
61
-
62
34
  var _preProcessingMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware"));
63
-
64
35
  var _sanitizationMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware"));
65
-
66
36
  var _cardActionMiddleware = require("../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware");
67
-
68
37
  var _messageTimestampMiddleware = _interopRequireDefault(require("../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware"));
69
-
38
+ var _Constants = require("../../../common/Constants");
70
39
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
71
-
72
40
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
73
41
  const initWebChatComposer = (props, chatSDK, state, dispatch, setWebChatStyles) => {
74
42
  var _props$webChatContain, _props$webChatContain2, _props$webChatContain3, _state$domainStates$l, _state$domainStates$l2, _state$domainStates$l3, _state$domainStates$l4, _state$domainStates$l8, _state$domainStates$l9, _props$webChatContain7, _props$webChatContain8, _state$domainStates$r, _state$domainStates$r2, _props$webChatContain9, _props$webChatContain10, _state$domainStates$r3, _state$domainStates$r4, _props$webChatContain11, _props$webChatContain12, _defaultWebChatContai, _props$webChatContain13, _props$webChatContain14, _props$webChatContain15, _props$webChatContain16, _state$domainStates$r5, _state$domainStates$r6, _props$webChatContain17, _props$webChatContain18, _defaultWebChatContai2, _props$webChatContain19, _props$webChatContain20, _defaultWebChatContai3, _props$webChatContain21, _props$webChatContain22;
75
-
76
- const localizedTexts = { ..._defaultMiddlewareLocalizedTexts.defaultMiddlewareLocalizedTexts,
43
+ const localizedTexts = {
44
+ ..._defaultMiddlewareLocalizedTexts.defaultMiddlewareLocalizedTexts,
77
45
  ...((_props$webChatContain = props.webChatContainerProps) === null || _props$webChatContain === void 0 ? void 0 : _props$webChatContain.localizedTexts)
78
46
  };
79
- const disableNewLineMarkdownSupport = ((_props$webChatContain2 = props.webChatContainerProps) === null || _props$webChatContain2 === void 0 ? void 0 : _props$webChatContain2.disableNewLineMarkdownSupport) ?? _defaultWebChatContainerStatefulProps.defaultWebChatContainerStatefulProps.disableNewLineMarkdownSupport; // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
80
-
47
+ const disableNewLineMarkdownSupport = ((_props$webChatContain2 = props.webChatContainerProps) === null || _props$webChatContain2 === void 0 ? void 0 : _props$webChatContain2.disableNewLineMarkdownSupport) ?? _defaultWebChatContainerStatefulProps.defaultWebChatContainerStatefulProps.disableNewLineMarkdownSupport;
48
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
81
49
  const markdown = (0, _createMarkdown.createMarkdown)(((_props$webChatContain3 = props.webChatContainerProps) === null || _props$webChatContain3 === void 0 ? void 0 : _props$webChatContain3.disableMarkdownMessageFormatting) ?? _defaultWebChatContainerStatefulProps.defaultWebChatContainerStatefulProps.disableMarkdownMessageFormatting, disableNewLineMarkdownSupport);
82
50
  const isPostChatEnabled = (_state$domainStates$l = state.domainStates.liveChatConfig) === null || _state$domainStates$l === void 0 ? void 0 : (_state$domainStates$l2 = _state$domainStates$l.LiveWSAndLiveChatEngJoin) === null || _state$domainStates$l2 === void 0 ? void 0 : _state$domainStates$l2.msdyn_postconversationsurveyenable;
83
- const postChatSurveyMode = (_state$domainStates$l3 = state.domainStates.liveChatConfig) === null || _state$domainStates$l3 === void 0 ? void 0 : (_state$domainStates$l4 = _state$domainStates$l3.LiveWSAndLiveChatEngJoin) === null || _state$domainStates$l4 === void 0 ? void 0 : _state$domainStates$l4.msdyn_postconversationsurveymode; // Initialize Web Chat's redux store
51
+ const postChatSurveyMode = (_state$domainStates$l3 = state.domainStates.liveChatConfig) === null || _state$domainStates$l3 === void 0 ? void 0 : (_state$domainStates$l4 = _state$domainStates$l3.LiveWSAndLiveChatEngJoin) === null || _state$domainStates$l4 === void 0 ? void 0 : _state$domainStates$l4.msdyn_postconversationsurveymode;
84
52
 
53
+ // Initialize Web Chat's redux store
85
54
  let webChatStore = _WebChatStoreLoader.WebChatStoreLoader.store;
86
-
87
55
  if (!webChatStore) {
88
56
  var _state$domainStates$l5, _state$domainStates$l6, _state$domainStates$l7, _props$webChatContain6;
89
-
90
57
  const conversationEndCallback = async () => {
91
58
  var _props$webChatContain4, _props$webChatContain5;
92
-
93
59
  _TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.INFO, {
94
60
  Event: _TelemetryConstants.TelemetryEvent.ConversationEndedThreadEventReceived,
95
61
  Description: "Conversation is ended by agent side or by timeout."
96
62
  });
97
-
98
63
  if ((props === null || props === void 0 ? void 0 : (_props$webChatContain4 = props.webChatContainerProps) === null || _props$webChatContain4 === void 0 ? void 0 : (_props$webChatContain5 = _props$webChatContain4.renderingMiddlewareProps) === null || _props$webChatContain5 === void 0 ? void 0 : _props$webChatContain5.hideSendboxOnConversationEnd) !== false) {
99
64
  setWebChatStyles(styles => {
100
- return { ...styles,
65
+ return {
66
+ ...styles,
101
67
  hideSendBox: true
102
68
  };
103
69
  });
104
70
  }
105
-
106
71
  if (isPostChatEnabled === "true") {
107
72
  if (postChatSurveyMode === _PostChatSurveyMode.PostChatSurveyMode.Embed) {
73
+ _WebChatStoreLoader.WebChatStoreLoader.store = null;
74
+ dispatch({
75
+ type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_CONVERSATION_STATE,
76
+ payload: _ConversationState.ConversationState.PostchatLoading
77
+ });
78
+ await (0, _utils.addDelayInMs)(_Constants.Constants.PostChatLoadingDurationInMs);
108
79
  const loadPostChatEvent = {
109
80
  eventName: _TelemetryConstants.BroadcastEvent.LoadPostChatSurvey
110
81
  };
111
-
112
82
  _omnichannelChatComponents.BroadcastService.postMessage(loadPostChatEvent);
113
83
  } else if (postChatSurveyMode === _PostChatSurveyMode.PostChatSurveyMode.Link) {
114
84
  dispatch({
@@ -117,12 +87,15 @@ const initWebChatComposer = (props, chatSDK, state, dispatch, setWebChatStyles)
117
87
  });
118
88
  }
119
89
  } else {
90
+ dispatch({
91
+ type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_CONVERSATION_STATE,
92
+ payload: _ConversationState.ConversationState.InActive
93
+ });
120
94
  dispatch({
121
95
  type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_CONVERSATION_ENDED_BY_AGENT,
122
96
  payload: true
123
97
  });
124
98
  }
125
-
126
99
  dispatch({
127
100
  type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_CHAT_TOKEN,
128
101
  payload: undefined
@@ -132,15 +105,17 @@ const initWebChatComposer = (props, chatSDK, state, dispatch, setWebChatStyles)
132
105
  payload: undefined
133
106
  });
134
107
  };
135
-
136
- webChatStore = (0, _botframeworkWebchat.createStore)({}, //initial state
137
- _preProcessingMiddleware.default, _attachmentProcessingMiddleware.default, (0, _attachmentUploadValidatorMiddleware.default)((_state$domainStates$l5 = state.domainStates.liveChatConfig) === null || _state$domainStates$l5 === void 0 ? void 0 : _state$domainStates$l5.allowedFileExtensions, (_state$domainStates$l6 = state.domainStates.liveChatConfig) === null || _state$domainStates$l6 === void 0 ? void 0 : _state$domainStates$l6.maxUploadFileSize, localizedTexts), _channelDataMiddleware.default, (0, _conversationEndMiddleware.default)(conversationEndCallback), (0, _dataMaskingMiddleware.default)((_state$domainStates$l7 = state.domainStates.liveChatConfig) === null || _state$domainStates$l7 === void 0 ? void 0 : _state$domainStates$l7.DataMaskingInfo), _messageTimestampMiddleware.default, _gifUploadMiddleware.default, _htmlPlayerMiddleware.default, _htmlTextMiddleware.default, (0, _maxMessageSizeValidator.default)(localizedTexts), _sanitizationMiddleware.default, // eslint-disable-next-line @typescript-eslint/no-explicit-any
108
+ webChatStore = (0, _botframeworkWebchat.createStore)({},
109
+ //initial state
110
+ _preProcessingMiddleware.default, _attachmentProcessingMiddleware.default, (0, _attachmentUploadValidatorMiddleware.default)((_state$domainStates$l5 = state.domainStates.liveChatConfig) === null || _state$domainStates$l5 === void 0 ? void 0 : _state$domainStates$l5.allowedFileExtensions, (_state$domainStates$l6 = state.domainStates.liveChatConfig) === null || _state$domainStates$l6 === void 0 ? void 0 : _state$domainStates$l6.maxUploadFileSize, localizedTexts), _channelDataMiddleware.default, (0, _conversationEndMiddleware.default)(conversationEndCallback), (0, _dataMaskingMiddleware.default)((_state$domainStates$l7 = state.domainStates.liveChatConfig) === null || _state$domainStates$l7 === void 0 ? void 0 : _state$domainStates$l7.DataMaskingInfo), _messageTimestampMiddleware.default, _gifUploadMiddleware.default, _htmlPlayerMiddleware.default, _htmlTextMiddleware.default, (0, _maxMessageSizeValidator.default)(localizedTexts), _sanitizationMiddleware.default,
111
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
138
112
  ...(((_props$webChatContain6 = props.webChatContainerProps) === null || _props$webChatContain6 === void 0 ? void 0 : _props$webChatContain6.storeMiddlewares) ?? []));
139
113
  _WebChatStoreLoader.WebChatStoreLoader.store = webChatStore;
140
- } // Initialize the remaining Web Chat props
141
-
114
+ }
142
115
 
143
- const webChatProps = { ..._defaultWebChatContainerStatefulProps.defaultWebChatContainerStatefulProps.webChatProps,
116
+ // Initialize the remaining Web Chat props
117
+ const webChatProps = {
118
+ ..._defaultWebChatContainerStatefulProps.defaultWebChatContainerStatefulProps.webChatProps,
144
119
  dir: state.domainStates.globalDir,
145
120
  locale: (0, _utils.changeLanguageCodeFormatForWebChat)((0, _omnichannelChatSdk.getLocaleStringFromId)((_state$domainStates$l8 = state.domainStates.liveChatConfig) === null || _state$domainStates$l8 === void 0 ? void 0 : (_state$domainStates$l9 = _state$domainStates$l8.ChatWidgetLanguage) === null || _state$domainStates$l9 === void 0 ? void 0 : _state$domainStates$l9.msdyn_localeid)),
146
121
  store: webChatStore,
@@ -157,5 +132,4 @@ const initWebChatComposer = (props, chatSDK, state, dispatch, setWebChatStyles)
157
132
  };
158
133
  return webChatProps;
159
134
  };
160
-
161
135
  exports.initWebChatComposer = initWebChatComposer;
@@ -3,97 +3,93 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.startUnauthenticatedReconnectChat = exports.handleUnauthenticatedReconnectChat = exports.handleRedirectUnauthenticatedReconnectChat = exports.getReconnectIdForAuthenticatedChat = exports.getChatReconnectContext = void 0;
7
-
6
+ exports.isReconnectEnabled = exports.handleChatReconnect = exports.getChatReconnectContext = void 0;
8
7
  require("regenerator-runtime/runtime");
9
-
10
8
  var _TelemetryConstants = require("../../../common/telemetry/TelemetryConstants");
11
-
9
+ var _authHelper = require("./authHelper");
10
+ var _utils = require("../../../common/utils");
12
11
  var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
13
-
14
12
  var _ConversationState = require("../../../contexts/common/ConversationState");
15
-
16
13
  var _LiveChatWidgetActionType = require("../../../contexts/common/LiveChatWidgetActionType");
17
-
18
14
  var _TelemetryHelper = require("../../../common/telemetry/TelemetryHelper");
15
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
16
+ const handleChatReconnect = async (chatSDK, props, dispatch, setAdapter, initStartChat, state) => {
17
+ var _props$chatConfig, _props$chatConfig$Liv;
18
+ if (!isReconnectEnabled(props.chatConfig)) return;
19
+
20
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
+ const isAuthenticatedChat = (_props$chatConfig = props.chatConfig) !== null && _props$chatConfig !== void 0 && (_props$chatConfig$Liv = _props$chatConfig.LiveChatConfigAuthSettings) !== null && _props$chatConfig$Liv !== void 0 && _props$chatConfig$Liv.msdyn_javascriptclientfunction ? true : false;
22
+
23
+ // Get chat reconnect context
24
+ const reconnectChatContext = await getChatReconnectContext(chatSDK, props.chatConfig, props, isAuthenticatedChat);
25
+ if (hasReconnectId(reconnectChatContext)) {
26
+ var _props$reconnectChatP2, _props$reconnectChatP3;
27
+ //Redirect if enabled
28
+ if (reconnectChatContext.redirectURL && !(0, _utils.isNullOrEmptyString)(reconnectChatContext.redirectURL)) {
29
+ var _props$reconnectChatP;
30
+ redirectPage(reconnectChatContext.redirectURL, (_props$reconnectChatP = props.reconnectChatPaneProps) === null || _props$reconnectChatP === void 0 ? void 0 : _props$reconnectChatP.redirectInSameWindow);
31
+ return;
32
+ }
33
+
34
+ //if reconnect id is provided in props, don't show reconnect pane
35
+ if ((_props$reconnectChatP2 = props.reconnectChatPaneProps) !== null && _props$reconnectChatP2 !== void 0 && _props$reconnectChatP2.reconnectId && !(0, _utils.isNullOrEmptyString)((_props$reconnectChatP3 = props.reconnectChatPaneProps) === null || _props$reconnectChatP3 === void 0 ? void 0 : _props$reconnectChatP3.reconnectId)) {
36
+ const reconnectChatContext = await getChatReconnectContext(chatSDK, props.chatConfig, props, isAuthenticatedChat);
37
+ await setReconnectIdAndStartChat(isAuthenticatedChat, chatSDK, props, dispatch, setAdapter, reconnectChatContext.reconnectId ?? "", initStartChat);
38
+ return;
39
+ }
40
+
41
+ //show reconnect pane
42
+ state.appStates.conversationState = _ConversationState.ConversationState.ReconnectChat;
43
+ dispatch({
44
+ type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_RECONNECT_ID,
45
+ payload: reconnectChatContext.reconnectId ?? ""
46
+ });
47
+ dispatch({
48
+ type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_CONVERSATION_STATE,
49
+ payload: _ConversationState.ConversationState.ReconnectChat
50
+ });
51
+ return;
52
+ }
53
+ };
19
54
 
20
55
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
- const getChatReconnectContext = async (chatSDK, reconnectId) => {
56
+ exports.handleChatReconnect = handleChatReconnect;
57
+ const getChatReconnectContext = async (chatSDK, chatConfig, props, isAuthenticatedChat) => {
22
58
  try {
23
- if (reconnectId) {
24
- const chatReconnectOptionalParams = {
25
- reconnectId: reconnectId
26
- };
27
- return await (chatSDK === null || chatSDK === void 0 ? void 0 : chatSDK.getChatReconnectContext(chatReconnectOptionalParams));
28
- } else {
29
- return await (chatSDK === null || chatSDK === void 0 ? void 0 : chatSDK.getChatReconnectContext());
59
+ var _props$reconnectChatP4;
60
+ const chatReconnectOptionalParams = {
61
+ reconnectId: (_props$reconnectChatP4 = props.reconnectChatPaneProps) === null || _props$reconnectChatP4 === void 0 ? void 0 : _props$reconnectChatP4.reconnectId
62
+ };
63
+ // Get auth token for getting chat reconnect context
64
+ if (isAuthenticatedChat) {
65
+ await (0, _authHelper.handleAuthentication)(chatSDK, chatConfig, props.getAuthToken);
66
+ }
67
+ const reconnectChatContext = await (chatSDK === null || chatSDK === void 0 ? void 0 : chatSDK.getChatReconnectContext(chatReconnectOptionalParams));
68
+ if (isAuthenticatedChat) {
69
+ // remove auth token after reconnectId is fetched
70
+ // AuthToken will be reset later at start chat
71
+ (0, _authHelper.removeAuthTokenProvider)(chatSDK);
30
72
  }
31
- } catch (ex) {
73
+ return reconnectChatContext;
74
+ } catch (error) {
32
75
  _TelemetryHelper.TelemetryHelper.logSDKEvent(_TelemetryConstants.LogLevel.ERROR, {
33
76
  Event: _TelemetryConstants.TelemetryEvent.GetChatReconnectContextSDKCallFailed,
34
77
  ExceptionDetails: {
35
- exception: ex
78
+ exception: error
36
79
  }
37
80
  });
38
81
  }
82
+ };
39
83
 
40
- return null;
41
- }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
42
-
43
-
84
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
44
85
  exports.getChatReconnectContext = getChatReconnectContext;
45
-
46
- const getReconnectIdForAuthenticatedChat = async (props, chatSDK) => {
47
- var _props$reconnectChatP, _props$reconnectChatP2;
48
-
49
- if ((_props$reconnectChatP = props.reconnectChatPaneProps) !== null && _props$reconnectChatP !== void 0 && _props$reconnectChatP.isReconnectEnabled && (_props$reconnectChatP2 = props.reconnectChatPaneProps) !== null && _props$reconnectChatP2 !== void 0 && _props$reconnectChatP2.authClientFunction // TODO: Implement this after storage is in place
50
-
51
- /* && !isLoadWithState() */
52
- ) {
53
- const previousActiveSessionResponse = await getChatReconnectContext(chatSDK);
54
-
55
- if (previousActiveSessionResponse && previousActiveSessionResponse.reconnectId) {
56
- return previousActiveSessionResponse.reconnectId;
57
- }
58
- }
59
-
60
- return undefined;
61
- }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
62
-
63
-
64
- exports.getReconnectIdForAuthenticatedChat = getReconnectIdForAuthenticatedChat;
65
-
66
- const handleUnauthenticatedReconnectChat = async (chatSDK, dispatch, setAdapter, reconnectId, initStartChat, redirectInSameWindow) => {
67
- const reconnectAvailabilityResponse = await getChatReconnectContext(chatSDK, reconnectId);
68
-
69
- if (shouldRedirectOrStartNewChat(reconnectAvailabilityResponse)) {
70
- await redirectOrStartNewChat(reconnectAvailabilityResponse, chatSDK, dispatch, setAdapter, initStartChat, redirectInSameWindow);
71
- } else {
72
- await setReconnectIdAndStartChat(chatSDK, dispatch, setAdapter, reconnectId, initStartChat);
73
- }
74
- }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
75
-
76
-
77
- exports.handleUnauthenticatedReconnectChat = handleUnauthenticatedReconnectChat;
78
-
79
- const startUnauthenticatedReconnectChat = async (chatSDK, dispatch, setAdapter, reconnectId, initStartChat) => {
80
- const reconnectAvailabilityResponse = await getChatReconnectContext(chatSDK, reconnectId);
81
-
82
- if (!shouldRedirectOrStartNewChat(reconnectAvailabilityResponse)) {
83
- await setReconnectIdAndStartChat(chatSDK, dispatch, setAdapter, reconnectId, initStartChat);
86
+ const setReconnectIdAndStartChat = async (isAuthenticatedChat, chatSDK, props, dispatch, setAdapter, reconnectId, initStartChat) => {
87
+ if (!isAuthenticatedChat) {
88
+ const startUnauthenticatedReconnectChat = {
89
+ eventName: _TelemetryConstants.BroadcastEvent.StartUnauthenticatedReconnectChat
90
+ };
91
+ _omnichannelChatComponents.BroadcastService.postMessage(startUnauthenticatedReconnectChat);
84
92
  }
85
- }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
86
-
87
-
88
- exports.startUnauthenticatedReconnectChat = startUnauthenticatedReconnectChat;
89
-
90
- const setReconnectIdAndStartChat = async (chatSDK, dispatch, setAdapter, reconnectId, initStartChat) => {
91
- const startUnauthenticatedReconnectChat = {
92
- eventName: _TelemetryConstants.BroadcastEvent.StartUnauthenticatedReconnectChat
93
- };
94
-
95
- _omnichannelChatComponents.BroadcastService.postMessage(startUnauthenticatedReconnectChat);
96
-
97
93
  const optionalParams = {
98
94
  reconnectId: reconnectId
99
95
  };
@@ -105,9 +101,8 @@ const setReconnectIdAndStartChat = async (chatSDK, dispatch, setAdapter, reconne
105
101
  type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_CONVERSATION_STATE,
106
102
  payload: _ConversationState.ConversationState.Loading
107
103
  });
108
- await initStartChat(chatSDK, dispatch, setAdapter, optionalParams);
104
+ await initStartChat(chatSDK, dispatch, setAdapter, props, optionalParams);
109
105
  };
110
-
111
106
  const redirectPage = (redirectURL, redirectInSameWindow) => {
112
107
  const redirectPageRequest = {
113
108
  eventName: _TelemetryConstants.BroadcastEvent.RedirectPageRequest,
@@ -115,64 +110,16 @@ const redirectPage = (redirectURL, redirectInSameWindow) => {
115
110
  redirectURL: redirectURL
116
111
  }
117
112
  };
118
-
119
113
  _omnichannelChatComponents.BroadcastService.postMessage(redirectPageRequest);
120
-
121
114
  if (redirectInSameWindow) {
122
115
  window.location.href = redirectURL;
123
116
  }
124
117
  };
125
-
126
- const shouldRedirectOrStartNewChat = reconnectAvailabilityResponse => {
127
- return reconnectAvailabilityResponse && !reconnectAvailabilityResponse.reconnectId;
128
- }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
129
-
130
-
131
- const startNewChatEmptyRedirectionUrl = async (chatSDK, dispatch, setAdapter, initStartChat) => {
132
- const startUnauthenticatedReconnectChat = {
133
- eventName: _TelemetryConstants.BroadcastEvent.StartUnauthenticatedReconnectChat
134
- };
135
-
136
- _omnichannelChatComponents.BroadcastService.postMessage(startUnauthenticatedReconnectChat); // Getting PreChat Survey Context
137
-
138
-
139
- const parseToJson = false;
140
- const preChatSurveyResponse = await chatSDK.getPreChatSurvey(parseToJson);
141
-
142
- if (preChatSurveyResponse) {
143
- dispatch({
144
- type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_PRE_CHAT_SURVEY_RESPONSE,
145
- payload: preChatSurveyResponse
146
- });
147
- dispatch({
148
- type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_CONVERSATION_STATE,
149
- payload: _ConversationState.ConversationState.Prechat
150
- });
151
- } else {
152
- dispatch({
153
- type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_CONVERSATION_STATE,
154
- payload: _ConversationState.ConversationState.Loading
155
- });
156
- await initStartChat(chatSDK, dispatch, setAdapter);
157
- }
158
- }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
159
-
160
-
161
- const handleRedirectUnauthenticatedReconnectChat = async (chatSDK, dispatch, setAdapter, initStartChat, reconnectId, redirectInSameWindow) => {
162
- const reconnectAvailabilityResponse = await getChatReconnectContext(chatSDK, reconnectId);
163
-
164
- if (shouldRedirectOrStartNewChat(reconnectAvailabilityResponse)) {
165
- await redirectOrStartNewChat(reconnectAvailabilityResponse, chatSDK, dispatch, setAdapter, initStartChat, redirectInSameWindow);
166
- }
167
- }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
168
-
169
-
170
- exports.handleRedirectUnauthenticatedReconnectChat = handleRedirectUnauthenticatedReconnectChat;
171
-
172
- const redirectOrStartNewChat = async (reconnectAvailabilityResponse, chatSDK, dispatch, setAdapter, initStartChat, redirectInSameWindow) => {
173
- if (reconnectAvailabilityResponse.redirectURL) {
174
- redirectPage(reconnectAvailabilityResponse.redirectURL, redirectInSameWindow);
175
- } else {
176
- await startNewChatEmptyRedirectionUrl(chatSDK, dispatch, setAdapter, initStartChat);
177
- }
118
+ const isReconnectEnabled = chatConfig => {
119
+ var _chatConfig$LiveWSAnd;
120
+ return chatConfig && ((_chatConfig$LiveWSAnd = chatConfig.LiveWSAndLiveChatEngJoin) === null || _chatConfig$LiveWSAnd === void 0 ? void 0 : _chatConfig$LiveWSAnd.msdyn_enablechatreconnect) && (chatConfig.LiveWSAndLiveChatEngJoin.msdyn_enablechatreconnect === "true" || chatConfig.LiveWSAndLiveChatEngJoin.msdyn_enablechatreconnect === true);
121
+ };
122
+ exports.isReconnectEnabled = isReconnectEnabled;
123
+ const hasReconnectId = reconnectAvailabilityResponse => {
124
+ return reconnectAvailabilityResponse && !(0, _utils.isNullOrUndefined)(reconnectAvailabilityResponse.reconnectId);
178
125
  };
@@ -4,42 +4,31 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.registerTelemetryLoggers = void 0;
7
-
8
7
  var _TelemetryManager = require("../../../common/telemetry/TelemetryManager");
9
-
10
8
  var _LiveChatWidgetActionType = require("../../../contexts/common/LiveChatWidgetActionType");
11
-
12
9
  var _TelemetryHelper = require("../../../common/telemetry/TelemetryHelper");
13
-
14
10
  var _defaultAriaConfig = require("../../../common/telemetry/defaultConfigs/defaultAriaConfig");
15
-
16
11
  var _defaultTelemetryInternalData = require("../../../common/telemetry/defaultConfigs/defaultTelemetryInternalData");
17
-
18
12
  var _defaultTelemetryConfiguration = require("../../../common/telemetry/defaultConfigs/defaultTelemetryConfiguration");
19
-
20
13
  const registerTelemetryLoggers = (props, dispatch) => {
21
14
  var _props$liveChatContex, _props$liveChatContex2;
22
-
23
- const telemetryConfig = { ..._defaultTelemetryConfiguration.defaultTelemetryConfiguration,
15
+ const telemetryConfig = {
16
+ ..._defaultTelemetryConfiguration.defaultTelemetryConfiguration,
24
17
  ...props.telemetryConfig
25
18
  };
26
-
27
19
  if ((_props$liveChatContex = props.liveChatContextFromCache) !== null && _props$liveChatContex !== void 0 && (_props$liveChatContex2 = _props$liveChatContex.domainStates) !== null && _props$liveChatContex2 !== void 0 && _props$liveChatContex2.telemetryInternalData) {
28
20
  var _props$liveChatContex3, _props$liveChatContex4;
29
-
30
21
  _TelemetryManager.TelemetryManager.InternalTelemetryData = (_props$liveChatContex3 = props.liveChatContextFromCache) === null || _props$liveChatContex3 === void 0 ? void 0 : (_props$liveChatContex4 = _props$liveChatContex3.domainStates) === null || _props$liveChatContex4 === void 0 ? void 0 : _props$liveChatContex4.telemetryInternalData;
31
22
  } else {
32
23
  var _props$chatSDK, _props$chatSDK$omnich, _props$chatSDK2, _props$chatSDK2$omnic, _props$chatSDK3, _props$chatSDK3$omnic;
33
-
34
- let telemetryData = { ..._defaultTelemetryInternalData.defaultInternalTelemetryData,
24
+ let telemetryData = {
25
+ ..._defaultTelemetryInternalData.defaultInternalTelemetryData,
35
26
  telemetryConfig: Object.assign({}, _defaultTelemetryConfiguration.defaultTelemetryConfiguration, telemetryConfig),
36
27
  ariaConfig: Object.assign({}, _defaultAriaConfig.defaultAriaConfig, telemetryConfig === null || telemetryConfig === void 0 ? void 0 : telemetryConfig.ariaConfigurations)
37
28
  };
38
-
39
29
  if (props.chatConfig) {
40
30
  telemetryData = _TelemetryHelper.TelemetryHelper.addChatConfigDataToTelemetry(props === null || props === void 0 ? void 0 : props.chatConfig, telemetryData);
41
31
  }
42
-
43
32
  telemetryData = _TelemetryHelper.TelemetryHelper.addWidgetDataToTelemetry(telemetryConfig, telemetryData);
44
33
  telemetryData.OCChatSDKVersion = telemetryConfig.OCChatSDKVersion ?? "0.0.0-0";
45
34
  telemetryData.chatComponentVersion = telemetryConfig.chatComponentVersion ?? "0.0.0-0";
@@ -53,8 +42,6 @@ const registerTelemetryLoggers = (props, dispatch) => {
53
42
  payload: telemetryData
54
43
  });
55
44
  }
56
-
57
45
  (0, _TelemetryManager.RegisterLoggers)();
58
46
  };
59
-
60
47
  exports.registerTelemetryLoggers = registerTelemetryLoggers;
@@ -4,29 +4,21 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.setPostChatContextAndLoadSurvey = void 0;
7
-
8
7
  var _TelemetryConstants = require("../../../common/telemetry/TelemetryConstants");
9
-
10
8
  var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
11
-
12
9
  var _ConversationState = require("../../../contexts/common/ConversationState");
13
-
14
10
  var _LiveChatWidgetActionType = require("../../../contexts/common/LiveChatWidgetActionType");
15
-
16
11
  var _TelemetryHelper = require("../../../common/telemetry/TelemetryHelper");
17
-
18
12
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
13
  const setPostChatContextAndLoadSurvey = async (chatSDK, dispatch, persistedChat) => {
20
14
  try {
21
15
  if (!persistedChat) {
22
16
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
23
17
  const context = await chatSDK.getPostChatSurveyContext();
24
-
25
18
  _TelemetryHelper.TelemetryHelper.logSDKEvent(_TelemetryConstants.LogLevel.INFO, {
26
19
  Event: _TelemetryConstants.TelemetryEvent.PostChatContextCallSucceed,
27
20
  Description: "Postchat context call succeed."
28
21
  });
29
-
30
22
  dispatch({
31
23
  type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_POST_CHAT_CONTEXT,
32
24
  payload: context
@@ -39,19 +31,14 @@ const setPostChatContextAndLoadSurvey = async (chatSDK, dispatch, persistedChat)
39
31
  exception: ex
40
32
  }
41
33
  });
42
- } // eslint-disable-next-line @typescript-eslint/no-unused-vars
43
-
34
+ }
44
35
 
36
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
45
37
  _omnichannelChatComponents.BroadcastService.getMessageByEventName("LoadPostChatSurvey").subscribe(msg => {
46
- dispatch({
47
- type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_CONVERSATION_STATE,
48
- payload: _ConversationState.ConversationState.Loading
49
- });
50
38
  dispatch({
51
39
  type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_CONVERSATION_STATE,
52
40
  payload: _ConversationState.ConversationState.Postchat
53
41
  });
54
42
  });
55
43
  };
56
-
57
44
  exports.setPostChatContextAndLoadSurvey = setPostChatContextAndLoadSurvey;