@microsoft/omnichannel-chat-widget 0.1.0-main.488d6f1 → 0.1.0-main.49826ed

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 (323) hide show
  1. package/README.md +35 -11
  2. package/lib/cjs/assets/Icons.js +4 -2
  3. package/lib/cjs/common/Constants.js +52 -153
  4. package/lib/cjs/common/KeyCodes.js +3 -4
  5. package/lib/cjs/common/contextDataStore/DataStoreManager.js +3 -5
  6. package/lib/cjs/common/storage/default/defaultCacheManager.js +26 -0
  7. package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +102 -0
  8. package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +78 -0
  9. package/lib/cjs/common/telemetry/TelemetryConstants.js +81 -24
  10. package/lib/cjs/common/telemetry/TelemetryHelper.js +31 -56
  11. package/lib/cjs/common/telemetry/TelemetryManager.js +17 -35
  12. package/lib/cjs/common/telemetry/defaultConfigs/defaultAriaConfig.js +1 -1
  13. package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +4 -3
  14. package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +49 -35
  15. package/lib/cjs/common/telemetry/loggers/consoleLogger.js +6 -14
  16. package/lib/cjs/common/utils.js +80 -80
  17. package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +21 -45
  18. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +20 -26
  19. package/lib/cjs/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  20. package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +13 -73
  21. package/lib/cjs/components/dimlayer/DimLayer.js +0 -4
  22. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +9 -37
  23. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -8
  24. package/lib/cjs/components/footerstateful/FooterStateful.js +12 -44
  25. package/lib/cjs/components/footerstateful/audionotificationstateful/AudioNotificationStateful.js +0 -6
  26. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +15 -44
  27. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -8
  28. package/lib/cjs/components/headerstateful/HeaderStateful.js +21 -39
  29. package/lib/cjs/components/livechatwidget/LiveChatWidget.js +2 -14
  30. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +39 -0
  31. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +20 -0
  32. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  33. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +34 -0
  34. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +64 -0
  35. package/lib/cjs/components/livechatwidget/common/Deferred.js +37 -0
  36. package/lib/cjs/components/livechatwidget/common/authHelper.js +50 -0
  37. package/lib/cjs/components/livechatwidget/common/createAdapter.js +10 -9
  38. package/lib/cjs/components/livechatwidget/common/createFooter.js +4 -23
  39. package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -10
  40. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +36 -43
  41. package/lib/cjs/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +14 -0
  42. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +128 -59
  43. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
  44. package/lib/cjs/components/livechatwidget/common/endChat.js +122 -24
  45. package/lib/cjs/components/livechatwidget/common/getGeneralStylesForButton.js +0 -6
  46. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +8 -17
  47. package/lib/cjs/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -8
  48. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +47 -52
  49. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +98 -66
  50. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +9 -33
  51. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +3 -15
  52. package/lib/cjs/components/livechatwidget/common/shareObservable.js +41 -0
  53. package/lib/cjs/components/livechatwidget/common/startChat.js +248 -92
  54. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +0 -8
  55. package/lib/cjs/components/livechatwidget/common/updateSessionDataForTelemetry.js +2 -11
  56. package/lib/cjs/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  57. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +353 -171
  58. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +19 -19
  59. package/lib/cjs/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +57 -0
  60. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +4 -17
  61. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +9 -14
  62. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -23
  63. package/lib/cjs/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  64. package/lib/cjs/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +13 -0
  65. package/lib/cjs/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  66. package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  67. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +11 -44
  68. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +21 -35
  69. package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -24
  70. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +94 -19
  71. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -7
  72. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -6
  73. package/lib/cjs/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +11 -0
  74. package/lib/cjs/components/webchatcontainerstateful/common/mockadapter.js +12 -27
  75. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +9 -16
  76. package/lib/cjs/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -24
  77. package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -15
  78. package/lib/cjs/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -8
  79. package/lib/cjs/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  80. package/lib/cjs/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.js +1 -0
  81. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +12 -0
  82. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -5
  83. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  84. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  85. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  86. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  87. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  88. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  89. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  90. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  91. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +0 -7
  92. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -5
  93. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +33 -80
  94. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +10 -22
  95. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +27 -61
  96. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +7 -15
  97. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +41 -0
  98. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +82 -0
  99. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +10 -0
  100. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
  101. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -3
  102. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -3
  103. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
  104. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -9
  105. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +89 -0
  106. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +7 -18
  107. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +8 -42
  108. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +4 -22
  109. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +13 -30
  110. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +3 -9
  111. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -34
  112. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +1 -10
  113. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +7 -18
  114. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -19
  115. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +1 -9
  116. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -9
  117. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +13 -34
  118. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +1 -10
  119. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +7 -11
  120. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +5 -14
  121. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -21
  122. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +33 -0
  123. package/lib/cjs/contexts/ChatAdapterStore.js +0 -2
  124. package/lib/cjs/contexts/ChatContextStore.js +0 -2
  125. package/lib/cjs/contexts/ChatSDKStore.js +0 -2
  126. package/lib/cjs/contexts/common/ConversationState.js +3 -3
  127. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +30 -26
  128. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +16 -11
  129. package/lib/cjs/contexts/createReducer.js +169 -109
  130. package/lib/cjs/controller/componentController.js +4 -33
  131. package/lib/cjs/hooks/useChatAdapterStore.js +0 -6
  132. package/lib/cjs/hooks/useChatContextStore.js +0 -6
  133. package/lib/cjs/hooks/useChatSDKStore.js +0 -6
  134. package/lib/cjs/index.js +0 -5
  135. package/lib/cjs/plugins/newMessageEventHandler.js +82 -0
  136. package/lib/esm/assets/Icons.js +2 -1
  137. package/lib/esm/common/Constants.js +47 -141
  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 +95 -0
  142. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +70 -0
  143. package/lib/esm/common/telemetry/TelemetryConstants.js +80 -19
  144. package/lib/esm/common/telemetry/TelemetryHelper.js +32 -46
  145. package/lib/esm/common/telemetry/TelemetryManager.js +17 -24
  146. package/lib/esm/common/telemetry/defaultConfigs/defaultAriaConfig.js +1 -1
  147. package/lib/esm/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +4 -1
  148. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +49 -23
  149. package/lib/esm/common/telemetry/loggers/consoleLogger.js +6 -10
  150. package/lib/esm/common/utils.js +73 -45
  151. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +21 -16
  152. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +23 -13
  153. package/lib/esm/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  154. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +14 -48
  155. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +9 -16
  156. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
  157. package/lib/esm/components/footerstateful/FooterStateful.js +14 -25
  158. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +15 -37
  159. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -6
  160. package/lib/esm/components/headerstateful/HeaderStateful.js +21 -24
  161. package/lib/esm/components/livechatwidget/LiveChatWidget.js +2 -2
  162. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +32 -0
  163. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +13 -0
  164. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  165. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +27 -0
  166. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +57 -0
  167. package/lib/esm/components/livechatwidget/common/Deferred.js +30 -0
  168. package/lib/esm/components/livechatwidget/common/authHelper.js +42 -0
  169. package/lib/esm/components/livechatwidget/common/createAdapter.js +12 -4
  170. package/lib/esm/components/livechatwidget/common/createFooter.js +4 -16
  171. package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -5
  172. package/lib/esm/components/livechatwidget/common/createMarkdown.js +38 -37
  173. package/lib/esm/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +7 -0
  174. package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +130 -47
  175. package/lib/esm/components/livechatwidget/common/endChat.js +126 -16
  176. package/lib/esm/components/livechatwidget/common/getGeneralStylesForButton.js +0 -2
  177. package/lib/esm/components/livechatwidget/common/initCallingSdk.js +10 -12
  178. package/lib/esm/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -5
  179. package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +49 -23
  180. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +98 -58
  181. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +9 -23
  182. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +4 -6
  183. package/lib/esm/components/livechatwidget/common/shareObservable.js +35 -0
  184. package/lib/esm/components/livechatwidget/common/startChat.js +247 -72
  185. package/lib/esm/components/livechatwidget/common/updateSessionDataForTelemetry.js +4 -2
  186. package/lib/esm/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  187. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +356 -123
  188. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +19 -7
  189. package/lib/esm/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +50 -0
  190. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +4 -5
  191. package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +9 -4
  192. package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -11
  193. package/lib/esm/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  194. package/lib/esm/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +6 -0
  195. package/lib/esm/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  196. package/lib/esm/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  197. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +15 -29
  198. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +24 -12
  199. package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -6
  200. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +94 -4
  201. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -1
  202. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
  203. package/lib/esm/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +4 -0
  204. package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +12 -19
  205. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +9 -12
  206. package/lib/esm/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -16
  207. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -5
  208. package/lib/esm/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -6
  209. package/lib/esm/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  210. package/lib/esm/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.js +1 -0
  211. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +5 -0
  212. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -3
  213. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  214. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  215. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  216. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  217. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  218. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  219. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  220. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  221. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +2 -5
  222. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -4
  223. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +34 -66
  224. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +12 -14
  225. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +27 -40
  226. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +9 -8
  227. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +34 -0
  228. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +80 -0
  229. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +3 -0
  230. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +3 -0
  231. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -1
  232. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -1
  233. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +3 -0
  234. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -7
  235. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +83 -0
  236. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +8 -9
  237. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +9 -28
  238. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +5 -14
  239. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +15 -19
  240. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +5 -8
  241. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -29
  242. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +3 -7
  243. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +9 -14
  244. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -14
  245. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +3 -7
  246. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -7
  247. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +15 -27
  248. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +3 -5
  249. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +9 -9
  250. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +7 -9
  251. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -13
  252. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +27 -0
  253. package/lib/esm/contexts/ChatAdapterStore.js +2 -1
  254. package/lib/esm/contexts/ChatContextStore.js +2 -1
  255. package/lib/esm/contexts/ChatSDKStore.js +2 -1
  256. package/lib/esm/contexts/common/ConversationState.js +3 -3
  257. package/lib/esm/contexts/common/LiveChatWidgetActionType.js +30 -26
  258. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +16 -7
  259. package/lib/esm/contexts/createReducer.js +169 -105
  260. package/lib/esm/controller/componentController.js +5 -4
  261. package/lib/esm/hooks/useChatAdapterStore.js +0 -4
  262. package/lib/esm/hooks/useChatContextStore.js +0 -4
  263. package/lib/esm/hooks/useChatSDKStore.js +0 -4
  264. package/lib/esm/plugins/newMessageEventHandler.js +75 -0
  265. package/lib/types/assets/Icons.d.ts +1 -0
  266. package/lib/types/common/Constants.d.ts +39 -2
  267. package/lib/types/common/interfaces/IContextDataStore.d.ts +2 -2
  268. package/lib/types/common/storage/default/defaultCacheManager.d.ts +4 -0
  269. package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +2 -0
  270. package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -0
  271. package/lib/types/common/telemetry/TelemetryConstants.d.ts +55 -6
  272. package/lib/types/common/telemetry/TelemetryHelper.d.ts +2 -0
  273. package/lib/types/common/telemetry/definitions/Contracts.d.ts +4 -4
  274. package/lib/types/common/telemetry/definitions/Payload.d.ts +13 -9
  275. package/lib/types/common/telemetry/interfaces/ITelemetryConfig.d.ts +7 -3
  276. package/lib/types/common/utils.d.ts +8 -1
  277. package/lib/types/components/confirmationpanestateful/interfaces/IConfirmationPaneStatefulParams.d.ts +4 -4
  278. package/lib/types/components/footerstateful/audionotificationstateful/interfaces/IAudioNotificationStatefulParams.d.ts +0 -1
  279. package/lib/types/components/headerstateful/interfaces/IHeaderStatefulParams.d.ts +2 -1
  280. package/lib/types/components/livechatwidget/common/ActivityStreamHandler.d.ts +14 -0
  281. package/lib/types/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.d.ts +5 -0
  282. package/lib/types/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.d.ts +6 -0
  283. package/lib/types/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.d.ts +7 -0
  284. package/lib/types/components/livechatwidget/common/ChatAdapterShim.d.ts +7 -0
  285. package/lib/types/components/livechatwidget/common/Deferred.d.ts +9 -0
  286. package/lib/types/components/livechatwidget/common/authHelper.d.ts +5 -0
  287. package/lib/types/components/livechatwidget/common/defaultProps/defaultScrollBarProps.d.ts +2 -0
  288. package/lib/types/components/livechatwidget/common/endChat.d.ts +4 -1
  289. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +6 -4
  290. package/lib/types/components/livechatwidget/common/shareObservable.d.ts +1 -0
  291. package/lib/types/components/livechatwidget/common/startChat.d.ts +6 -2
  292. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetComponentOverrides.d.ts +1 -0
  293. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +2 -1
  294. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +6 -3
  295. package/lib/types/components/livechatwidget/interfaces/IScrollBarProps.d.ts +22 -0
  296. package/lib/types/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.d.ts +2 -0
  297. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
  298. package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -0
  299. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
  300. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +1 -2
  301. package/lib/types/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.d.ts +2 -0
  302. package/lib/types/components/webchatcontainerstateful/common/mockchatsdk.d.ts +2 -0
  303. package/lib/types/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.d.ts +4 -0
  304. package/lib/types/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.d.ts +4 -0
  305. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +4 -1
  306. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatContainerStatefulProps.d.ts +4 -0
  307. package/lib/types/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.d.ts +3 -0
  308. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.d.ts +0 -1
  309. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.d.ts +1 -1
  310. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.d.ts +2 -0
  311. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.d.ts +1 -0
  312. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +2 -0
  313. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  314. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  315. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.d.ts +5 -0
  316. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.d.ts +1 -1
  317. package/lib/types/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.d.ts +1 -0
  318. package/lib/types/contexts/common/ConversationState.d.ts +3 -2
  319. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +6 -3
  320. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +30 -25
  321. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
  322. package/lib/types/plugins/newMessageEventHandler.d.ts +2 -0
  323. package/package.json +12 -13
@@ -0,0 +1,75 @@
1
+ import { BroadcastEvent, LogLevel, TelemetryEvent } from "../common/telemetry/TelemetryConstants";
2
+ import { BroadcastService } from "@microsoft/omnichannel-chat-components";
3
+ import { Constants } from "../common/Constants";
4
+ import { TelemetryHelper } from "../common/telemetry/TelemetryHelper";
5
+ export const createOnNewAdapterActivityHandler = (chatId, userId) => {
6
+ const onNewAdapterActivityHandler = activity => {
7
+ var _activity$channelData, _activity$channelData2, _activity$channelData3;
8
+ const isActivityMessage = (activity === null || activity === void 0 ? void 0 : activity.type) === Constants.message;
9
+ const isHistoryMessage = isActivityMessage && ((activity === null || activity === void 0 ? void 0 : (_activity$channelData = activity.channelData) === null || _activity$channelData === void 0 ? void 0 : (_activity$channelData2 = _activity$channelData.tags) === null || _activity$channelData2 === void 0 ? void 0 : _activity$channelData2.includes(Constants.historyMessageTag)) || (activity === null || activity === void 0 ? void 0 : (_activity$channelData3 = activity.channelData) === null || _activity$channelData3 === void 0 ? void 0 : _activity$channelData3.fromList));
10
+ raiseMessageEvent(activity, isHistoryMessage);
11
+ };
12
+ const raiseMessageEvent = (activity, isHistoryMessage) => {
13
+ if ((activity === null || activity === void 0 ? void 0 : activity.type) === Constants.message) {
14
+ var _text, _text2, _activity$channelData4, _activity$from;
15
+ const payload = {
16
+ // To identify hidden contents vs empty content
17
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
18
+ text: (activity === null || activity === void 0 ? void 0 : (_text = activity.text) === null || _text === void 0 ? void 0 : _text.length) >= 1 ? `*contents hidden (${activity === null || activity === void 0 ? void 0 : (_text2 = activity.text) === null || _text2 === void 0 ? void 0 : _text2.length} chars)*` : "",
19
+ type: activity === null || activity === void 0 ? void 0 : activity.type,
20
+ timestamp: activity === null || activity === void 0 ? void 0 : activity.timestamp,
21
+ userId: userId,
22
+ tags: activity === null || activity === void 0 ? void 0 : (_activity$channelData4 = activity.channelData) === null || _activity$channelData4 === void 0 ? void 0 : _activity$channelData4.tags,
23
+ messageType: ""
24
+ };
25
+ if ((activity === null || activity === void 0 ? void 0 : (_activity$from = activity.from) === null || _activity$from === void 0 ? void 0 : _activity$from.role) === Constants.userMessageTag) {
26
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
27
+ payload.messageType = Constants.userMessageTag;
28
+ const newMessageSentEvent = {
29
+ eventName: BroadcastEvent.NewMessageSent,
30
+ payload: payload
31
+ };
32
+ BroadcastService.postMessage(newMessageSentEvent);
33
+ TelemetryHelper.logActionEvent(LogLevel.INFO, {
34
+ Event: TelemetryEvent.MessageSent,
35
+ Description: "New message sent"
36
+ });
37
+ } else {
38
+ var _activity$channelData5, _activity$channelData6;
39
+ if (activity !== null && activity !== void 0 && (_activity$channelData5 = activity.channelData) !== null && _activity$channelData5 !== void 0 && (_activity$channelData6 = _activity$channelData5.tags) !== null && _activity$channelData6 !== void 0 && _activity$channelData6.includes(Constants.systemMessageTag)) {
40
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
41
+ payload.messageType = Constants.systemMessageTag;
42
+ TelemetryHelper.logActionEvent(LogLevel.INFO, {
43
+ Event: TelemetryEvent.MessageReceived,
44
+ Description: "System message received"
45
+ });
46
+ } else {
47
+ var _activity$channelData7, _activity$channelData8, _activity$channelData9;
48
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
49
+ const messageHasNoText = !(activity !== null && activity !== void 0 && activity.text);
50
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
51
+ const messageHasNoTags = !(activity !== null && activity !== void 0 && activity.channelData) || !(activity !== null && activity !== void 0 && (_activity$channelData7 = activity.channelData) !== null && _activity$channelData7 !== void 0 && _activity$channelData7.tags) || (activity === null || activity === void 0 ? void 0 : (_activity$channelData8 = activity.channelData) === null || _activity$channelData8 === void 0 ? void 0 : (_activity$channelData9 = _activity$channelData8.tags) === null || _activity$channelData9 === void 0 ? void 0 : _activity$channelData9.length) === 0;
52
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
53
+ const messageHasNoAttachments = !(activity !== null && activity !== void 0 && activity.attachments) || (activity === null || activity === void 0 ? void 0 : activity.attachments.length) === 0;
54
+ if (messageHasNoTags && messageHasNoText && messageHasNoAttachments) {
55
+ return;
56
+ }
57
+ payload.messageType = Constants.userMessageTag;
58
+ }
59
+ const newMessageReceivedEvent = {
60
+ eventName: isHistoryMessage ? BroadcastEvent.HistoryMessageReceived : BroadcastEvent.NewMessageReceived,
61
+ payload: payload
62
+ };
63
+ BroadcastService.postMessage(newMessageReceivedEvent);
64
+ if (!isHistoryMessage) {
65
+ TelemetryHelper.logActionEvent(LogLevel.INFO, {
66
+ Event: TelemetryEvent.MessageReceived,
67
+ Description: "New message received",
68
+ Data: payload
69
+ });
70
+ }
71
+ }
72
+ }
73
+ };
74
+ return onNewAdapterActivityHandler;
75
+ };
@@ -9,3 +9,4 @@ export declare const PowerpointIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0
9
9
  export declare const VideoIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0wIDI1NmgyMDQ4djE0MDhIMFYyNTZ6bTI1NiAxMjgwdi0xMjhIMTI4djEyOGgxMjh6bTAtMjU2di0xMjhIMTI4djEyOGgxMjh6bTAtMjU2Vjg5NkgxMjh2MTI4aDEyOHptMC0yNTZWNjQwSDEyOHYxMjhoMTI4em0wLTI1NlYzODRIMTI4djEyOGgxMjh6bTE0MDggNzg2VjM4NEgzODR2ODIzbDQxMS01NDkgNzQxIDg3OC0zMjktNTU4IDEzNy0xMzcgMzIwIDQ1N3ptMjU2IDIzOHYtMTI4aC0xMjh2MTI4aDEyOHptMC0yNTZ2LTEyOGgtMTI4djEyOGgxMjh6bTAtMjU2Vjg5NmgtMTI4djEyOGgxMjh6bTAtMjU2VjY0MGgtMTI4djEyOGgxMjh6bTAtMjU2VjM4NGgtMTI4djEyOGgxMjh6IiAvPg0KPC9zdmc+";
10
10
  export declare const VisioIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0yMDQ4IDQ3NXYxNDQ1cTAgMjctMTAgNTB0LTI3IDQwLTQxIDI4LTUwIDEwSDY0MHEtMjcgMC01MC0xMHQtNDAtMjctMjgtNDEtMTAtNTB2LTI1NkgxMTVxLTI0IDAtNDQtOXQtMzctMjUtMjUtMzYtOS00NVY2MjdxMC0yNCA5LTQ0dDI1LTM3IDM2LTI1IDQ1LTloMzk3VjEyOHEwLTI3IDEwLTUwdDI3LTQwIDQxLTI4IDUwLTEwaDkzM3EyNiAwIDQ5IDl0NDIgMjhsMzQ3IDM0N3ExOCAxOCAyNyA0MXQxMCA1MHptLTM4NC0yNTZ2MTY1aDE2NWwtMTY1LTE2NXpNNDkzIDE0MjRoMTYzbDI1NS02NzJINzQ1bC0xNDcgNDI3cS01IDE2LTEwIDMxdC0xMSAzMXEtNDEtMTIzLTgyLTI0NHQtODQtMjQ1SDI0MWwyNDggNjYyIDQgMTB6bTE0NyA0OTZoMTI4MFY1MTJoLTI1NnEtMjcgMC01MC0xMHQtNDAtMjctMjgtNDEtMTAtNTBWMTI4SDY0MHYzODRoMzk3cTI0IDAgNDQgOXQzNyAyNSAyNSAzNiA5IDQ1djkyMnEwIDI0LTkgNDR0LTI1IDM3LTM2IDI1LTQ1IDlINjQwdjI1NnptOTYwLTEyODBsMTkyIDE5Mi0xMjggMTI4djQ0OGgtMjU2djEyOGgtMTI4di0zODRoMTI4djEyOGgxMjhWOTYwbC0xMjgtMTI4IDE5Mi0xOTJ6IiAvPg0KPC9zdmc+";
11
11
  export declare const WordIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0yMDQ4IDQ3NXYxNDQ1cTAgMjctMTAgNTB0LTI3IDQwLTQxIDI4LTUwIDEwSDY0MHEtMjcgMC01MC0xMHQtNDAtMjctMjgtNDEtMTAtNTB2LTI1NkgxMTVxLTI0IDAtNDQtOXQtMzctMjUtMjUtMzYtOS00NVY2MjdxMC0yNCA5LTQ0dDI1LTM3IDM2LTI1IDQ1LTloMzk3VjEyOHEwLTI3IDEwLTUwdDI3LTQwIDQxLTI4IDUwLTEwaDkzM3EyNiAwIDQ5IDl0NDIgMjhsMzQ3IDM0N3ExOCAxOCAyNyA0MXQxMCA1MHptLTM4NC0yNTZ2MTY1aDE2NWwtMTY1LTE2NXpNMzIwIDE0MjRoMTYxcTItOCA5LTQzdDE4LTgzIDIxLTEwMyAyMi0xMDEgMTYtNzYgOC0zMWw3IDMwcTcgMzAgMTcgNzd0MjMgMTAwIDIzIDEwMyAxOSA4NCAxMCA0M2gxNjBsMTQ4LTY3Mkg4MzRsLTgwIDQzOC0xMDAtNDM4SDUwMmwtOTYgNDQwLTg2LTQ0MEgxNzBsMTUwIDY3MnptMzIwIDQ5NmgxMjgwVjUxMmgtMjU2cS0yNyAwLTUwLTEwdC00MC0yNy0yOC00MS0xMC01MFYxMjhINjQwdjM4NGgzOTdxMjQgMCA0NCA5dDM3IDI1IDI1IDM2IDkgNDV2OTIycTAgMjQtOSA0NHQtMjUgMzctMzYgMjUtNDUgOUg2NDB2MjU2em02NDAtMTAyNFY3NjhoNTEydjEyOGgtNTEyem0wIDI1NnYtMTI4aDUxMnYxMjhoLTUxMnptMCAyNTZ2LTEyOGg1MTJ2MTI4aC01MTJ6IiAvPg0KPC9zdmc+";
12
+ export declare const AlertIcon = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjwhRE9DVFlQRSBzdmcgIFBVQkxJQyAnLS8vVzNDLy9EVEQgU1ZHIDEuMC8vRU4nICAnaHR0cDovL3d3dy53My5vcmcvVFIvMjAwMS9SRUMtU1ZHLTIwMDEwOTA0L0RURC9zdmcxMC5kdGQnPjxzdmcgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMjQgMjQiIGlkPSJMYXllcl8xIiB2ZXJzaW9uPSIxLjAiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PHBhdGggZD0iTTEzLDE3aC0ydi0yaDJWMTd6IE0xMywxM2gtMlY3aDJWMTN6Ii8+PGc+PHBhdGggZD0iTTEyLDRjNC40LDAsOCwzLjYsOCw4cy0zLjYsOC04LDhzLTgtMy42LTgtOFM3LjYsNCwxMiw0IE0xMiwyQzYuNSwyLDIsNi41LDIsMTJjMCw1LjUsNC41LDEwLDEwLDEwczEwLTQuNSwxMC0xMCAgIEMyMiw2LjUsMTcuNSwyLDEyLDJMMTIsMnoiLz48L2c+PC9zdmc+";
@@ -1,7 +1,11 @@
1
1
  export declare class Constants {
2
+ static readonly magicCodeBroadcastChannel = "MagicCodeChannel";
3
+ static readonly magicCodeResponseBroadcastChannel = "MagicCodeResponseChannel";
2
4
  static readonly systemMessageTag = "system";
3
5
  static readonly userMessageTag = "user";
6
+ static readonly historyMessageTag = "history";
4
7
  static readonly agentEndConversationMessageTag = "agentendconversation";
8
+ static readonly supervisorForceCloseMessageTag = "supervisorforceclosedconversation";
5
9
  static readonly receivedMessageClassName = "ms_lcw_webchat_received_message";
6
10
  static readonly sentMessageClassName = "ms_lcw_webchat_sent_message";
7
11
  static readonly webchatChannelId = "webchat";
@@ -13,7 +17,6 @@ export declare class Constants {
13
17
  static readonly true = "true";
14
18
  static readonly false = "false";
15
19
  static readonly maximumUnreadMessageCount = 99;
16
- static readonly widgetStateDataKey = "LcwChatWidgetState";
17
20
  static readonly channelIdKey = "ChannelId-";
18
21
  static readonly ChannelId = "lcw";
19
22
  static readonly CustomerTag = "FromCustomer";
@@ -31,6 +34,10 @@ export declare class Constants {
31
34
  static readonly queuePositionMessageTag = "queueposition";
32
35
  static readonly averageWaitTimeMessageTag = "averagewaittime";
33
36
  static readonly message = "message";
37
+ static readonly hiddenTag = "Hidden";
38
+ static readonly prefixTimestampTag = "ServerMessageTimestamp_";
39
+ static readonly acsChannel = "ACS_CHANNEL";
40
+ static readonly publicMessageTag = "public";
34
41
  static readonly supportedAdaptiveCardContentTypes: Array<string>;
35
42
  static readonly maxUploadFileSize = "500000";
36
43
  static readonly imageRegex: RegExp;
@@ -56,7 +63,6 @@ export declare class Constants {
56
63
  static readonly ProactiveChatInviteTimeoutInMs = 60000;
57
64
  static readonly InputSubmit = "InputSubmit";
58
65
  static readonly ReconnectIdAttributeName = "oc.reconnectid";
59
- static readonly redirectPageRequest = "redirectPageRequest";
60
66
  static readonly LiveChatWidget = "LiveChatWidgetNew";
61
67
  static readonly GuidPattern = "xx-x-4m-ym-xxx";
62
68
  static readonly Default = "default";
@@ -69,6 +75,9 @@ export declare class Constants {
69
75
  static readonly OpenLinkIconCssClass = "webchat__markdown__external-link-icon";
70
76
  static readonly internetConnectionTestUrl = "https://ocsdk-prod.azureedge.net/public/connecttest.txt";
71
77
  static readonly internetConnectionTestUrlText = "Omnichannel Connect Test";
78
+ static readonly ChatWidgetStateChangedPrefix = "ChatWidgetStateChanged";
79
+ static readonly PostChatLoadingDurationInMs = 2000;
80
+ static readonly BrowserUnloadConfirmationMessage = "Do you want to leave chat?";
72
81
  }
73
82
  export declare const Regex: {
74
83
  new (): {};
@@ -135,6 +144,24 @@ export declare enum ElementType {
135
144
  export declare enum ChatSDKError {
136
145
  WidgetUseOutsideOperatingHour = "WidgetUseOutsideOperatingHour"
137
146
  }
147
+ export declare enum EnvironmentVersion {
148
+ prod = "prod",
149
+ dogfood = "df",
150
+ int = "int",
151
+ test = "test"
152
+ }
153
+ export declare enum E2VVOptions {
154
+ NoCalling = "192350000",
155
+ VideoAndVoiceCalling = "192350001",
156
+ VoiceOnly = "192350002"
157
+ }
158
+ export declare enum LiveWorkItemState {
159
+ Active = "Active",
160
+ Closed = "Closed",
161
+ Open = "Open",
162
+ Waiting = "Waiting",
163
+ WrapUp = "WrapUp"
164
+ }
138
165
  export declare class TranscriptConstants {
139
166
  static readonly ChatTranscriptsBodyColor = "#F5F5F5";
140
167
  static readonly TranscriptMessageEmojiMessageType = "http://schema.skype.com/emoji";
@@ -147,3 +174,13 @@ export declare class TranscriptConstants {
147
174
  static readonly AgentDialogColor = "#2266E3";
148
175
  static readonly AgentFontColor = "white";
149
176
  }
177
+ export declare class AriaTelemetryConstants {
178
+ static readonly GERMANY_ENDPOINT: string;
179
+ static readonly GCCH_ENDPOINT: string;
180
+ static readonly DOD_ENDPOINT: string;
181
+ static readonly EUROPE_ENDPOINT: string;
182
+ static readonly MOONCAKE_ENDPOINT: string;
183
+ static readonly Public: string;
184
+ static readonly EU: string;
185
+ static readonly lcwEUDomainNames: Array<string>;
186
+ }
@@ -6,9 +6,9 @@ export interface IContextDataStore {
6
6
  /**
7
7
  * setData: Set data to data store
8
8
  */
9
- setData: (key: string, value: string) => void;
9
+ setData: (key: string, value: any, type: string) => void;
10
10
  /**
11
11
  * removeData: Remove data from data store by key
12
12
  */
13
- removeData?: (key: string) => void;
13
+ removeData: (key: string, type: string) => void;
14
14
  }
@@ -0,0 +1,4 @@
1
+ export declare class defaultCacheManager {
2
+ static InternalCache: any;
3
+ }
4
+ export declare const registerBroadcastServiceForLocalStorage: (orgid: string, widgetId: string, widgetInstanceId: string) => void;
@@ -0,0 +1,2 @@
1
+ import { IContextDataStore } from "../../interfaces/IContextDataStore";
2
+ export declare const defaultClientDataStoreProvider: () => IContextDataStore;
@@ -0,0 +1,6 @@
1
+ export declare const defaultInitializeInMemoryDataStore: (widgetId: string) => void;
2
+ export declare const inMemoryDataStore: () => {
3
+ getData: (key: string) => any;
4
+ setData: (key: any, data: any) => void;
5
+ removeData: (key: string) => void;
6
+ };
@@ -17,6 +17,33 @@ export declare enum LogLevel {
17
17
  WARN = "WARN",
18
18
  ERROR = "ERROR"
19
19
  }
20
+ export declare enum BroadcastEvent {
21
+ LoadPostChatSurvey = "LoadPostChatSurvey",
22
+ ChatEnded = "ChatEnded",
23
+ NewMessageNotification = "NewMessageNotification",
24
+ UnreadMessageCount = "UnreadMessageCount",
25
+ StartProactiveChat = "StartProactiveChat",
26
+ ProactiveChatStartChat = "ProactiveChatStartChat",
27
+ ProactiveChatStartPopoutChat = "ProactiveChatStartPopoutChat",
28
+ ProactiveChatIsInPopoutMode = "ProactiveChatIsInPopoutMode",
29
+ ResetProactiveChatParams = "ResetProactiveChatParams",
30
+ InvalidAdaptiveCardFormat = "InvalidAdaptiveCardFormat",
31
+ NewMessageSent = "NewMessageSent",
32
+ NewMessageReceived = "NewMessageReceived",
33
+ HistoryMessageReceived = "HistoryMessageReceived",
34
+ RedirectPageRequest = "RedirectPageRequest",
35
+ StartChat = "StartChat",
36
+ StartUnauthenticatedReconnectChat = "StartUnauthenticatedReconnectChat",
37
+ InitiateEndChat = "InitiateEndChat",
38
+ SetCustomContext = "SetCustomContext",
39
+ ChatRetrievedFromCache = "ChatRetrievedFromCache",
40
+ MaximizeChat = "MaximizeChat",
41
+ ChatInitiated = "ChatInitiated",
42
+ CloseChat = "CloseChat",
43
+ InitiateEndChatOnBrowserUnload = "InitiateEndChatOnBrowserUnload",
44
+ ClosePopoutWindow = "ClosePopoutWindow",
45
+ RaiseErrorEvent = "RaiseErrorEvent"
46
+ }
20
47
  export declare enum TelemetryEvent {
21
48
  CallAdded = "CallAdded",
22
49
  LocalVideoStreamAdded = "LocalVideoStreamAdded",
@@ -26,8 +53,8 @@ export declare enum TelemetryEvent {
26
53
  CallDisconnected = "CallDisconnected",
27
54
  CallDisconnectedException = "CallDisconnectedException",
28
55
  IncomingCallEnded = "incomingCallEnded",
29
- VoiceVideoInitialize = "VoiceVideoInitialize",
30
- VoiceVideoInitializeException = "VoiceVideoInitializeException",
56
+ VoiceVideoSdkInitialize = "VoiceVideoSdkInitialize",
57
+ VoiceVideoSdkInitializeException = "VoiceVideoSdkInitializeException",
31
58
  VoiceVideoLoading = "VoiceVideoLoading",
32
59
  VoiceVideoNotLoaded = "VoiceVideoNotLoaded",
33
60
  VoiceVideoLoadingException = "VoiceVideoLoadingException",
@@ -53,9 +80,12 @@ export declare enum TelemetryEvent {
53
80
  PostChatContextCallSucceed = "PostChatContextCallSucceed",
54
81
  PostChatContextCallFailed = "PostChatContextCallFailed",
55
82
  ParseAdaptiveCardFailed = "ParseAdaptiveCardFailed",
83
+ ClientDataStoreProviderFailed = "ClientDataStoreProviderFailed",
84
+ InMemoryDataStoreFailed = "InMemoryDataStoreFailed",
56
85
  WebChatLoaded = "WebChatLoaded",
57
86
  LCWChatButtonClicked = "LCWChatButtonClicked",
58
87
  LCWChatButtonShow = "LCWChatButtonShow",
88
+ WidgetLoadStarted = "WidgetLoadStarted",
59
89
  WidgetLoadComplete = "WidgetLoadComplete",
60
90
  WidgetLoadFailed = "WidgetLoadFailed",
61
91
  StartChatMethodException = "StartChatMethodException",
@@ -63,7 +93,10 @@ export declare enum TelemetryEvent {
63
93
  PrechatSurveyLoaded = "PrechatSurveyLoaded",
64
94
  PrechatSubmitted = "PrechatSubmitted",
65
95
  StartChatSDKCall = "StartChatCall",
66
- EndChatSDKCall = "EndChatCall",
96
+ StartChatEventRecevied = "StartChatEventReceived",
97
+ EndChatSDKCall = "EndChatSDKCall",
98
+ EndChatEventReceived = "EndChatEventReceived",
99
+ WindowClosed = "WindowClosed",
67
100
  OnNewMessageFailed = "OnNewMessageFailed",
68
101
  OnNewMessageAudioNotificationFailed = "OnNewMessageAudioNotificationFailed",
69
102
  DownloadTranscriptResponseNullOrUndefined = "DownloadTranscriptResponseNullOrUndefined",
@@ -77,6 +110,7 @@ export declare enum TelemetryEvent {
77
110
  LoadingPaneLoaded = "LoadingPaneLoaded",
78
111
  EmailTranscriptLoaded = "EmailTranscriptLoaded",
79
112
  OutOfOfficePaneLoaded = "OutOfOfficePaneLoaded",
113
+ PostChatSurveyLoadingPaneLoaded = "PostChatSurveyLoadingPaneLoaded",
80
114
  PostChatSurveyLoaded = "PostChatSurveyLoaded",
81
115
  ConfirmationPaneLoaded = "ConfirmationPaneLoaded",
82
116
  ProactiveChatPaneLoaded = "ProactiveChatPaneLoaded",
@@ -87,17 +121,29 @@ export declare enum TelemetryEvent {
87
121
  EmailTranscriptButtonClicked = "EmailTranscriptButtonClicked",
88
122
  EmailTranscriptCancelButtonClicked = "EmailTranscriptCancelButtonClicked",
89
123
  AudioToggleButtonClicked = "AudioToggleButtonClicked",
124
+ SuppressBotMagicCodeSucceeded = "SuppressBotMagicCodeSucceeded",
125
+ SuppressBotMagicCodeFailed = "SuppressBotMagicCodeFailed",
126
+ GetConversationDetailsException = "GetConversationDetailsException",
127
+ BrowserUnloadEventStarted = "BrowserUnloadEventStarted",
128
+ GetAuthTokenCalled = "GetAuthTokenCalled",
129
+ GetAuthTokenFailed = "GetAuthTokenFailed",
130
+ ReceivedNullOrEmptyToken = "ReceivedNullOrEmptyToken",
131
+ CustomerVoiceResponsePageLoaded = "CustomerVoiceResponsePageLoaded",
132
+ CustomerVoiceFormResponseSubmitted = "CustomerVoiceFormResponseSubmitted",
133
+ CustomerVoiceFormResponseError = "CustomerVoiceFormResponseError",
90
134
  ProcessingHTMLTextMiddlewareFailed = "ProcessingHTMLTextMiddlewareFailed",
91
135
  ProcessingSanitizationMiddlewareFailed = "ProcessingSanitizationMiddlewareFailed",
92
136
  FormatTagsMiddlewareJSONStringifyFailed = "FormatTagsMiddlewareJSONStringifyFailed",
93
137
  QueuePositionMessageRecieved = "QueuePositionMessageRecieved",
94
138
  AverageWaitTimeMessageRecieved = "AverageWaitTimeMessageRecieved",
95
139
  DataMaskingRuleApplied = "DataMaskingRuleApplied",
140
+ DataMaskingRuleApplyFailed = "DataMaskingRuleApplyFailed",
96
141
  IC3ClientEvent = "IC3ClientEvent",
97
142
  ConversationEndedThreadEventReceived = "ConversationEndedThreadEventReceived",
98
143
  InvalidConfiguration = "InvalidConfiguration",
99
144
  SendTypingIndicatorSucceeded = "SendTypingIndicatorSucceeded",
100
145
  SendTypingIndicatorFailed = "SendTypingIndicatorFailed",
146
+ WebChatEvent = "WebChatEvent",
101
147
  PreChatSurveyStartChatMethodFailed = "PreChatSurveyStartChatMethodFailed",
102
148
  ChatAlreadyTriggered = "ChatAlreadyTriggered",
103
149
  StartProactiveChatEventReceived = "StartProactiveChatEventReceived",
@@ -106,16 +152,19 @@ export declare enum TelemetryEvent {
106
152
  ProactiveChatRejected = "ProactiveChatRejected",
107
153
  IncomingProactiveChatScreenLoaded = "IncomingProactiveChatScreenLoaded",
108
154
  ProactiveChatClosed = "ProactiveChatClosed",
109
- ProactiveChatStartChat = "ProactiveChatStartChat",
110
- ProactiveChatStartPopoutChat = "ProactiveChatStartPopoutChat",
111
155
  ReconnectChatContinueConversation = "ReconnectChatContinueConversation",
112
156
  ReconnectChatStartNewConversation = "ReconnectChatStartNewConversation",
113
157
  ReconnectChatMinimize = "ReconnectChatMinimize",
114
- ChatWidgetStateChanged = "ChatWidgetStateChanged"
158
+ MessageSent = "MessageSent",
159
+ MessageReceived = "MessageReceived",
160
+ CustomContextReceived = "CustomContextReceived",
161
+ NetworkDisconnected = "NetworkDisconnected",
162
+ NetworkReconnected = "NetworkReconnected"
115
163
  }
116
164
  export interface TelemetryInput {
117
165
  scenarioType: ScenarioType;
118
166
  payload: TelemetryData;
167
+ telemetryInfo?: any;
119
168
  }
120
169
  export declare class TelemetryConstants {
121
170
  private static map;
@@ -11,6 +11,7 @@ export interface TelemetryEventWrapper {
11
11
  Description?: string;
12
12
  ExceptionDetails?: any;
13
13
  ElapsedTimeInMilliseconds?: number;
14
+ Data?: any;
14
15
  }
15
16
  export declare class TelemetryHelper {
16
17
  static callId: string;
@@ -35,4 +36,5 @@ export declare class TelemetryHelper {
35
36
  static logActionEvent: (logLevel: LogLevel, payload: TelemetryEventWrapper) => void;
36
37
  static logSDKEvent: (logLevel: LogLevel, payload: TelemetryEventWrapper) => void;
37
38
  static logConfigDataEvent: (logLevel: LogLevel, payload: TelemetryEventWrapper) => void;
39
+ static logWebChatEvent: (logLevel: LogLevel, payload: TelemetryEventWrapper) => void;
38
40
  }
@@ -7,8 +7,9 @@ export interface BaseContract {
7
7
  OrganizationId: string;
8
8
  LCWRuntimeId: string;
9
9
  CurrentRequestId: string;
10
- ExceptionDetails?: string;
10
+ ExceptionDetails?: any;
11
11
  LogLevel: string;
12
+ Description?: string;
12
13
  }
13
14
  export interface ConfigValidationContract extends BaseContract {
14
15
  Event?: string;
@@ -31,6 +32,8 @@ export interface LoadContract extends BaseContract {
31
32
  export interface ActionsContract extends BaseContract {
32
33
  Event?: string;
33
34
  ActionType?: string;
35
+ Description?: string;
36
+ CustomProperties?: any;
34
37
  }
35
38
  export interface IC3ClientContract extends BaseContract {
36
39
  Event?: string;
@@ -40,7 +43,6 @@ export interface IC3ClientContract extends BaseContract {
40
43
  EndpointId?: string;
41
44
  ErrorCode?: string;
42
45
  ShouldBubbleToHost?: boolean;
43
- Description?: string;
44
46
  }
45
47
  export interface OCChatSDKContract extends BaseContract {
46
48
  RequestId: string;
@@ -58,7 +60,6 @@ export interface WebChatContract extends BaseContract {
58
60
  export interface CallingContract extends BaseContract {
59
61
  CallId?: string;
60
62
  Event?: string;
61
- Description?: string;
62
63
  }
63
64
  export interface ACSAdapterContract extends BaseContract {
64
65
  Description?: string;
@@ -68,6 +69,5 @@ export interface ACSAdapterContract extends BaseContract {
68
69
  TimeStamp?: string;
69
70
  Event?: string;
70
71
  ErrorCode?: string;
71
- ExceptionDetails?: any;
72
72
  }
73
73
  export declare type TelemetryContract = OCChatSDKContract | IC3ClientContract | ActionsContract | LoadContract | WebChatContract | ConfigValidationContract | CallingContract | ACSAdapterContract | BaseContract | any;
@@ -1,4 +1,7 @@
1
- export interface ConfigValidationTelemetryData {
1
+ export interface BaseTelemetryData {
2
+ Data?: any;
3
+ }
4
+ export interface ConfigValidationTelemetryData extends BaseTelemetryData {
2
5
  Event?: string;
3
6
  RequestId?: string;
4
7
  LCWVersion?: string;
@@ -8,7 +11,7 @@ export interface ConfigValidationTelemetryData {
8
11
  ExceptionDetails?: object;
9
12
  Domain?: string;
10
13
  }
11
- export interface LoadTelemetryData {
14
+ export interface LoadTelemetryData extends BaseTelemetryData {
12
15
  Event?: string;
13
16
  ResourcePath?: string;
14
17
  ElapsedTimeInMilliseconds?: number;
@@ -20,18 +23,18 @@ export interface LoadTelemetryData {
20
23
  OCChatWidgetVersion?: string;
21
24
  OCChatComponentsVersion?: string;
22
25
  }
23
- export interface MessageProcessingErrorData {
26
+ export interface MessageProcessingErrorData extends BaseTelemetryData {
24
27
  Event: string;
25
28
  ExceptionDetails: object;
26
29
  }
27
- export interface OCChatSDKTelemetryData {
30
+ export interface OCChatSDKTelemetryData extends BaseTelemetryData {
28
31
  RequestId: string;
29
32
  Event?: string;
30
33
  ElapsedTimeInMilliseconds?: number;
31
34
  TransactionId: string;
32
35
  ExceptionDetails?: object;
33
36
  }
34
- export interface IC3ClientTelemetryData {
37
+ export interface IC3ClientTelemetryData extends BaseTelemetryData {
35
38
  SubscriptionId?: string;
36
39
  EndpointUrl?: string;
37
40
  EndpointId?: string;
@@ -42,7 +45,7 @@ export interface IC3ClientTelemetryData {
42
45
  ShouldBubbleToHost?: boolean;
43
46
  Description?: string;
44
47
  }
45
- export interface WebChatTelemetryData {
48
+ export interface WebChatTelemetryData extends BaseTelemetryData {
46
49
  data?: any;
47
50
  dimensions?: any;
48
51
  duration?: number;
@@ -53,7 +56,7 @@ export interface WebChatTelemetryData {
53
56
  name?: string;
54
57
  type?: string;
55
58
  }
56
- export interface ACSAdapterTelemetryData {
59
+ export interface ACSAdapterTelemetryData extends BaseTelemetryData {
57
60
  Description?: string;
58
61
  ACSUserId?: string;
59
62
  ChatThreadId?: string;
@@ -63,14 +66,15 @@ export interface ACSAdapterTelemetryData {
63
66
  ErrorCode?: string;
64
67
  ExceptionDetails?: any;
65
68
  }
66
- export interface ActionTelemetryData {
69
+ export interface ActionTelemetryData extends BaseTelemetryData {
67
70
  Event?: string;
68
71
  ElapsedTimeInMilliseconds?: number;
69
72
  ActionType?: string;
70
73
  ExceptionDetails?: object;
71
74
  Description?: string;
75
+ CustomProperties?: any;
72
76
  }
73
- export interface CallingTelemetryData {
77
+ export interface CallingTelemetryData extends BaseTelemetryData {
74
78
  CallId?: string;
75
79
  Event?: string;
76
80
  ElapsedTimeInMilliseconds?: number;
@@ -32,13 +32,17 @@ export interface ITelemetryConfig {
32
32
  /**
33
33
  * Omnichannel chat widget version
34
34
  */
35
- chatWidgetVersion?: string;
35
+ chatWidgetVersion: string;
36
36
  /**
37
37
  * Omnichannel chat components version
38
38
  */
39
- chatComponentVersion?: string;
39
+ chatComponentVersion: string;
40
40
  /**
41
41
  * Omnichannel Chat SDK Version
42
42
  */
43
- OCChatSDKVersion?: string;
43
+ OCChatSDKVersion: string;
44
+ /**
45
+ * LCW Runtime Id
46
+ */
47
+ LCWRuntimeId?: string;
44
48
  }
@@ -18,6 +18,13 @@ export declare const extractPreChatSurveyResponseValues: (preChatSurvey: string,
18
18
  value: string;
19
19
  }[]) => {};
20
20
  export declare const isNullOrUndefined: (obj: any) => boolean;
21
- export declare const isNullOrEmptyString: (s: string) => boolean;
21
+ export declare const isNullOrEmptyString: (s: string | null) => boolean;
22
22
  export declare const newGuid: () => string;
23
23
  export declare const createTimer: () => ITimer;
24
+ export declare const getDomain: (hostValue: any) => string;
25
+ export declare const getWidgetCacheId: (orgId: string, widgetId: string, widgetInstanceId: string) => string;
26
+ export declare const getWidgetEndChatEventName: (orgId: string, widgetId: string, widgetInstanceId: string) => string;
27
+ export declare const getStateFromCache: (orgId: string, widgetId: string, widgetInstanceId: string) => any;
28
+ export declare const isUndefinedOrEmpty: (object: any) => boolean;
29
+ export declare const addDelayInMs: (ms: number) => Promise<void>;
30
+ export declare const getBroadcastChannelName: (widgetId: string, widgetInstanceId: string) => string;
@@ -1,3 +1,4 @@
1
+ import { ILiveChatWidgetContext } from "../../../contexts/common/ILiveChatWidgetContext";
1
2
  import { IConfirmationPaneStatefulProps } from "./IConfirmationPaneStatefulProps";
2
3
  export interface IConfirmationPaneStatefulParams extends IConfirmationPaneStatefulProps {
3
4
  /**
@@ -5,10 +6,9 @@ export interface IConfirmationPaneStatefulParams extends IConfirmationPaneStatef
5
6
  */
6
7
  setPostChatContext: () => Promise<void>;
7
8
  /**
8
- * endChat: Internal Prop injected for triggering end of a chat using chatSDK
9
+ * prepareEndChat: Internal Prop injected for checking PostChat contexts and trigerring end of chat
9
10
  * @param adapter : The chat adapter for the live chat session
10
- * @param skipEndChatSDK : If set to true endchat will skip chatSDK endChat call
11
- * @param skipCloseChat : If set to true endchat will skip closing the live chat instance
11
+ * @param state : The chat state where the conversation is currently in
12
12
  */
13
- endChat: (adapter: any, skipEndChatSDK?: boolean, skipCloseChat?: boolean) => Promise<void>;
13
+ prepareEndChat: (adapter: any, state: ILiveChatWidgetContext) => Promise<void>;
14
14
  }
@@ -1,5 +1,4 @@
1
1
  export interface IAudioNotificationStatefulParams {
2
2
  audioSrc?: string;
3
- hideAudioNotificationButton?: boolean;
4
3
  isAudioMuted?: boolean;
5
4
  }
@@ -15,6 +15,7 @@ export interface IHeaderStatefulParams {
15
15
  * @param adapter : The chat adapter for the live chat session
16
16
  * @param skipEndChatSDK : If set to true endchat will skip chatSDK endChat call
17
17
  * @param skipCloseChat : If set to true endchat will skip closing the live chat instance
18
+ * @param postMessageToOtherTab : If set to true endchat will send a message to other tabs(multi-tabs)
18
19
  */
19
- endChat: (adapter: any, skipEndChatSDK?: boolean, skipCloseChat?: boolean) => Promise<void>;
20
+ endChat: (adapter: any, skipEndChatSDK?: boolean, skipCloseChat?: boolean, postMessageToOtherTab?: boolean) => Promise<void>;
20
21
  }
@@ -0,0 +1,14 @@
1
+ export declare class ActivityStreamHandler {
2
+ static restoreDeferred: any;
3
+ static restorePromise: Promise<any>;
4
+ /**
5
+ * Use of a deferred pattern, to hold the execution of the activity.
6
+ *
7
+ * */
8
+ static cork(): void;
9
+ /**
10
+ * Resolve the promise, releasing it to continue with the execution of the activity.
11
+ *
12
+ * */
13
+ static uncork(): void;
14
+ }
@@ -0,0 +1,5 @@
1
+ import { IActivitySubscriber } from "./IActivitySubscriber";
2
+ export declare class DefaultActivitySubscriber implements IActivitySubscriber {
3
+ observer: any;
4
+ next(activity: any): Promise<boolean>;
5
+ }
@@ -0,0 +1,6 @@
1
+ export interface IActivitySubscriber {
2
+ observer: any;
3
+ next(activity: any): Promise<any>;
4
+ applicable?(activity: any): boolean;
5
+ apply?(activity: any): Promise<any>;
6
+ }
@@ -0,0 +1,7 @@
1
+ import { IActivitySubscriber } from "./IActivitySubscriber";
2
+ export declare class PauseActivitySubscriber implements IActivitySubscriber {
3
+ observer: any;
4
+ apply(activity: any): Promise<void>;
5
+ applicable(activity: any): boolean;
6
+ next(activity: any): Promise<any>;
7
+ }
@@ -0,0 +1,7 @@
1
+ export declare class ChatAdapterShim {
2
+ chatAdapter: any;
3
+ activityObserver: any;
4
+ private subscribers;
5
+ constructor(chatAdapter: any);
6
+ addSubscriber(subscriber: any): void;
7
+ }
@@ -0,0 +1,9 @@
1
+ export declare class Deferred<T> {
2
+ private _promise;
3
+ private _resolve;
4
+ private _reject;
5
+ constructor();
6
+ resolve: (value?: any | PromiseLike<T>) => void;
7
+ reject: (value?: any | PromiseLike<T>) => void;
8
+ get promise(): Promise<T>;
9
+ }
@@ -0,0 +1,5 @@
1
+ import ChatConfig from "@microsoft/omnichannel-chat-sdk/lib/core/ChatConfig";
2
+ declare const getAuthClientFunction: (chatConfig: ChatConfig | undefined) => string | undefined;
3
+ declare const handleAuthentication: (chatSDK: any, chatConfig: ChatConfig | undefined, getAuthToken: ((authClientFunction?: string | undefined) => Promise<string | null>) | undefined) => Promise<boolean>;
4
+ declare const removeAuthTokenProvider: (chatSDK: any) => void;
5
+ export { getAuthClientFunction, handleAuthentication, removeAuthTokenProvider };
@@ -0,0 +1,2 @@
1
+ import { IScrollBarProps } from "../../interfaces/IScrollBarProps";
2
+ export declare const defaultScrollBarProps: IScrollBarProps;
@@ -1,4 +1,7 @@
1
1
  import { Dispatch } from "react";
2
2
  import { ILiveChatWidgetAction } from "../../../contexts/common/ILiveChatWidgetAction";
3
3
  import { ILiveChatWidgetProps } from "../interfaces/ILiveChatWidgetProps";
4
- export declare const endChat: (props: ILiveChatWidgetProps, chatSDK: any, setAdapter: any, setWebChatStyles: any, dispatch: Dispatch<ILiveChatWidgetAction>, adapter: any, skipEndChatSDK?: boolean | undefined, skipCloseChat?: boolean | undefined) => Promise<void>;
4
+ import { ILiveChatWidgetContext } from "../../../contexts/common/ILiveChatWidgetContext";
5
+ declare const prepareEndChat: (props: ILiveChatWidgetProps, chatSDK: any, setAdapter: any, setWebChatStyles: any, dispatch: Dispatch<ILiveChatWidgetAction>, adapter: any, state: ILiveChatWidgetContext) => Promise<void>;
6
+ declare const endChat: (props: ILiveChatWidgetProps, chatSDK: any, setAdapter: any, setWebChatStyles: any, dispatch: Dispatch<ILiveChatWidgetAction>, adapter: any, skipEndChatSDK?: boolean | undefined, skipCloseChat?: boolean | undefined, postMessageToOtherTab?: boolean | undefined) => Promise<void>;
7
+ export { prepareEndChat, endChat };
@@ -1,7 +1,9 @@
1
1
  import "regenerator-runtime/runtime";
2
+ import ChatConfig from "@microsoft/omnichannel-chat-sdk/lib/core/ChatConfig";
2
3
  import { Dispatch } from "react";
3
4
  import { ILiveChatWidgetAction } from "../../../contexts/common/ILiveChatWidgetAction";
4
- import { ILiveChatWidgetProps } from "../interfaces/ILiveChatWidgetProps";
5
- declare const getReconnectIdForAuthenticatedChat: (props: ILiveChatWidgetProps, chatSDK: any) => Promise<string | undefined>;
6
- declare const handleUnauthenticatedReconnectChat: (dispatch: Dispatch<ILiveChatWidgetAction>, reconnectId: string, initStartChat: any) => Promise<void>;
7
- export { getReconnectIdForAuthenticatedChat, handleUnauthenticatedReconnectChat };
5
+ import { ILiveChatWidgetContext } from "../../../contexts/common/ILiveChatWidgetContext";
6
+ declare const handleChatReconnect: (chatSDK: any, props: any, dispatch: Dispatch<ILiveChatWidgetAction>, setAdapter: any, initStartChat: any, state: ILiveChatWidgetContext) => Promise<void>;
7
+ declare const getChatReconnectContext: (chatSDK: any, chatConfig: ChatConfig, props: any, isAuthenticatedChat: boolean) => Promise<any>;
8
+ declare const isReconnectEnabled: (chatConfig: ChatConfig) => any;
9
+ export { handleChatReconnect, isReconnectEnabled, getChatReconnectContext };
@@ -0,0 +1 @@
1
+ export declare function shareObservable(observable: any): any;