@microsoft/omnichannel-chat-widget 0.1.0-main.c461296 → 0.1.0-main.c881067

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 (321) hide show
  1. package/README.md +35 -11
  2. package/lib/cjs/assets/Icons.js +4 -2
  3. package/lib/cjs/common/Constants.js +50 -155
  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 +107 -0
  8. package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +78 -0
  9. package/lib/cjs/common/telemetry/TelemetryConstants.js +65 -25
  10. package/lib/cjs/common/telemetry/TelemetryHelper.js +31 -56
  11. package/lib/cjs/common/telemetry/TelemetryManager.js +16 -34
  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 +12 -72
  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 +131 -61
  43. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
  44. package/lib/cjs/components/livechatwidget/common/endChat.js +121 -23
  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 +38 -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 +2 -15
  52. package/lib/cjs/components/livechatwidget/common/shareObservable.js +41 -0
  53. package/lib/cjs/components/livechatwidget/common/startChat.js +246 -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 +347 -165
  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 +19 -33
  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 +6 -17
  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 +27 -37
  94. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +10 -22
  95. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -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 +1 -12
  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 +14 -13
  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 +26 -46
  136. package/lib/esm/assets/Icons.js +2 -1
  137. package/lib/esm/common/Constants.js +45 -143
  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 +100 -0
  142. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +70 -0
  143. package/lib/esm/common/telemetry/TelemetryConstants.js +69 -22
  144. package/lib/esm/common/telemetry/TelemetryHelper.js +32 -46
  145. package/lib/esm/common/telemetry/TelemetryManager.js +16 -23
  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 +15 -49
  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 +133 -49
  175. package/lib/esm/components/livechatwidget/common/endChat.js +124 -14
  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 +41 -22
  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 -7
  183. package/lib/esm/components/livechatwidget/common/shareObservable.js +35 -0
  184. package/lib/esm/components/livechatwidget/common/startChat.js +245 -71
  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 +350 -117
  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 +21 -9
  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 +6 -13
  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 +27 -22
  224. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +12 -14
  225. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -39
  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 +3 -8
  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 +14 -9
  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 +26 -35
  265. package/lib/types/assets/Icons.d.ts +1 -0
  266. package/lib/types/common/Constants.d.ts +37 -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 +45 -7
  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 +1 -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/activityStatusMiddleware.d.ts +1 -1
  309. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.d.ts +2 -0
  310. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.d.ts +1 -0
  311. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +2 -0
  312. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  313. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  314. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.d.ts +5 -0
  315. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.d.ts +1 -1
  316. package/lib/types/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.d.ts +1 -0
  317. package/lib/types/contexts/common/ConversationState.d.ts +3 -2
  318. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +6 -3
  319. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +30 -25
  320. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
  321. package/package.json +9 -9
@@ -1,5 +1,5 @@
1
1
  var _class;
2
-
3
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4
-
2
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
3
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
4
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
5
5
  export const KeyCodes = (_class = class KeyCodes {}, _defineProperty(_class, "ENTER", "Enter"), _defineProperty(_class, "TAB", "Tab"), _class);
@@ -1,5 +1,5 @@
1
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
-
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
3
4
  export class DataStoreManager {}
4
-
5
5
  _defineProperty(DataStoreManager, "clientDataStore", void 0);
@@ -0,0 +1,18 @@
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4
+ import { BroadcastService } from "@microsoft/omnichannel-chat-components";
5
+ import { getWidgetCacheId } from "../../utils";
6
+ import { defaultClientDataStoreProvider } from "./defaultClientDataStoreProvider";
7
+ export class defaultCacheManager {}
8
+ _defineProperty(defaultCacheManager, "InternalCache", {});
9
+ export const registerBroadcastServiceForLocalStorage = (orgid, widgetId, widgetInstanceId) => {
10
+ const widgetCacheId = getWidgetCacheId(orgid, widgetId, widgetInstanceId);
11
+ BroadcastService.getMessageByEventName(widgetCacheId).subscribe(msg => {
12
+ try {
13
+ defaultClientDataStoreProvider().setData(widgetCacheId, JSON.stringify(msg.payload), "localStorage");
14
+ } catch (error) {
15
+ console.error("Error in setting data to localstorage", error);
16
+ }
17
+ });
18
+ };
@@ -0,0 +1,100 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+
3
+ import { LogLevel, TelemetryEvent } from "../../telemetry/TelemetryConstants";
4
+ import { TelemetryHelper } from "../../telemetry/TelemetryHelper";
5
+ import { inMemoryDataStore } from "./defaultInMemoryDataStore";
6
+ export const defaultClientDataStoreProvider = () => {
7
+ const isCookieAllowed = () => {
8
+ try {
9
+ localStorage;
10
+ sessionStorage;
11
+ return true;
12
+ } catch (error) {
13
+ if (!window.TPCWarningShown) {
14
+ console.warn("Third party cookies blocked.");
15
+ window.TPCWarningShown = true;
16
+ }
17
+ return false;
18
+ }
19
+ };
20
+ const TtlInMs = 15 * 60 * 1000; // 15 mins
21
+ const dataStoreProvider = {
22
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
23
+ setData: (key, data, type) => {
24
+ if (isCookieAllowed()) {
25
+ try {
26
+ if (key) {
27
+ const now = new Date();
28
+ const item = {
29
+ data: data,
30
+ expiry: now.getTime() + TtlInMs
31
+ };
32
+ const strItem = JSON.stringify(item);
33
+ if (type === "localStorage") {
34
+ localStorage.setItem(key, strItem);
35
+ } else {
36
+ sessionStorage.setItem(key, strItem);
37
+ }
38
+ }
39
+ } catch (error) {
40
+ TelemetryHelper.logConfigDataEvent(LogLevel.ERROR, {
41
+ Event: TelemetryEvent.ClientDataStoreProviderFailed,
42
+ ExceptionDetails: error,
43
+ Description: "Unable to store data in localStorage."
44
+ });
45
+ }
46
+ } else {
47
+ const dataToCache = {
48
+ key: key,
49
+ data: data,
50
+ type: type
51
+ };
52
+ parent.postMessage(dataToCache, "*");
53
+ }
54
+ },
55
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
56
+ getData: (key, type) => {
57
+ if (isCookieAllowed()) {
58
+ let item;
59
+ if (type === "localStorage") {
60
+ item = localStorage.getItem(key);
61
+ } else {
62
+ item = sessionStorage.getItem(key);
63
+ }
64
+ //Return item if not expired
65
+ let itemInJson = undefined;
66
+ if (item !== null) {
67
+ itemInJson = JSON.parse(item);
68
+ const now = new Date();
69
+ // compare the expiry time of the item with the current time
70
+ if (now.getTime() > itemInJson.expiry) {
71
+ // If the item is expired, delete the item from storage
72
+ // and return null
73
+ localStorage.removeItem(key);
74
+ return null;
75
+ }
76
+ return itemInJson.data;
77
+ }
78
+ } else {
79
+ // get data from in memory db when cookie is disabled
80
+ return inMemoryDataStore().getData(key);
81
+ }
82
+ },
83
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
84
+ removeData: (key, type) => {
85
+ if (isCookieAllowed()) {
86
+ if (key) {
87
+ if (type === "localStorage") {
88
+ return localStorage.removeItem(key);
89
+ } else {
90
+ return sessionStorage.removeItem(key);
91
+ }
92
+ }
93
+ } else {
94
+ // get data from in memory db when cookie is disabled
95
+ return inMemoryDataStore().removeData(key);
96
+ }
97
+ }
98
+ };
99
+ return dataStoreProvider;
100
+ };
@@ -0,0 +1,70 @@
1
+ import { LogLevel, TelemetryEvent } from "../../telemetry/TelemetryConstants";
2
+ import { TelemetryHelper } from "../../telemetry/TelemetryHelper";
3
+ import { defaultCacheManager } from "./defaultCacheManager";
4
+ export const defaultInitializeInMemoryDataStore = widgetId => {
5
+ try {
6
+ localStorage;
7
+ } catch (error) {
8
+ // Register below events when localStorage is not accessible
9
+ // Listening to event raised from client browser
10
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
+ window.addEventListener("message", function (e) {
12
+ try {
13
+ if (e.data.key) {
14
+ const browserData = e.data;
15
+ if (defaultCacheManager.InternalCache[browserData.key]) {
16
+ delete defaultCacheManager.InternalCache[browserData.key];
17
+ }
18
+ defaultCacheManager.InternalCache[browserData.key] = browserData.data;
19
+ }
20
+ } catch (error) {
21
+ TelemetryHelper.logConfigDataEvent(LogLevel.ERROR, {
22
+ Event: TelemetryEvent.InMemoryDataStoreFailed,
23
+ ExceptionDetails: error,
24
+ Description: "Unable to register default in-memory cache."
25
+ });
26
+ }
27
+ });
28
+
29
+ // send cache initialize message to client
30
+ if (defaultCacheManager.InternalCache === undefined || {}) {
31
+ parent.postMessage({
32
+ data: "cacheinitialize",
33
+ widgetId: widgetId
34
+ }, "*");
35
+ }
36
+ }
37
+ };
38
+ export const inMemoryDataStore = () => {
39
+ const dataStoreProvider = {
40
+ getData: key => {
41
+ if (defaultCacheManager.InternalCache && defaultCacheManager.InternalCache[key]) {
42
+ return defaultCacheManager.InternalCache[key];
43
+ }
44
+ },
45
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
46
+ setData: (key, data) => {
47
+ try {
48
+ defaultCacheManager.InternalCache[key] = data;
49
+ } catch (error) {
50
+ TelemetryHelper.logConfigDataEvent(LogLevel.ERROR, {
51
+ Event: TelemetryEvent.InMemoryDataStoreFailed,
52
+ ExceptionDetails: error,
53
+ Description: "Unable to set data in default in-memory cache."
54
+ });
55
+ }
56
+ },
57
+ removeData: key => {
58
+ try {
59
+ defaultCacheManager.InternalCache[key] = {};
60
+ } catch (error) {
61
+ TelemetryHelper.logConfigDataEvent(LogLevel.ERROR, {
62
+ Event: TelemetryEvent.InMemoryDataStoreFailed,
63
+ ExceptionDetails: error,
64
+ Description: "Unable to remove data from default in-memory cache."
65
+ });
66
+ }
67
+ }
68
+ };
69
+ return dataStoreProvider;
70
+ };
@@ -1,5 +1,4 @@
1
1
  export let ScenarioType;
2
-
3
2
  (function (ScenarioType) {
4
3
  ScenarioType["CONFIG_VALIDATION"] = "LCW_ConfigValidationEvents";
5
4
  ScenarioType["LOAD"] = "LCW_LoadEvents";
@@ -12,33 +11,46 @@ export let ScenarioType;
12
11
  ScenarioType["UNDEFINED"] = "LCW_Undefined";
13
12
  ScenarioType["ACS_ADAPTER"] = "LCW_ACSAdapterEvents";
14
13
  })(ScenarioType || (ScenarioType = {}));
14
+ export let LogLevel;
15
15
 
16
- export let LogLevel; // Events used in certain functionalities that are not being logged
17
-
16
+ // Events used in certain functionalities that are not being logged
18
17
  (function (LogLevel) {
19
18
  LogLevel["INFO"] = "INFO";
20
19
  LogLevel["DEBUG"] = "DEBUG";
21
20
  LogLevel["WARN"] = "WARN";
22
21
  LogLevel["ERROR"] = "ERROR";
23
22
  })(LogLevel || (LogLevel = {}));
23
+ export let BroadcastEvent;
24
24
 
25
- export let BroadcastEvent; // Events being logged
26
-
25
+ // Events being logged
27
26
  (function (BroadcastEvent) {
28
27
  BroadcastEvent["LoadPostChatSurvey"] = "LoadPostChatSurvey";
29
- BroadcastEvent["EndChat"] = "EndChat";
28
+ BroadcastEvent["ChatEnded"] = "ChatEnded";
30
29
  BroadcastEvent["NewMessageNotification"] = "NewMessageNotification";
31
30
  BroadcastEvent["UnreadMessageCount"] = "UnreadMessageCount";
32
- BroadcastEvent["ChatWidgetStateChanged"] = "ChatWidgetStateChanged";
31
+ BroadcastEvent["StartProactiveChat"] = "StartProactiveChat";
33
32
  BroadcastEvent["ProactiveChatStartChat"] = "ProactiveChatStartChat";
34
33
  BroadcastEvent["ProactiveChatStartPopoutChat"] = "ProactiveChatStartPopoutChat";
34
+ BroadcastEvent["ProactiveChatIsInPopoutMode"] = "ProactiveChatIsInPopoutMode";
35
+ BroadcastEvent["ResetProactiveChatParams"] = "ResetProactiveChatParams";
35
36
  BroadcastEvent["InvalidAdaptiveCardFormat"] = "InvalidAdaptiveCardFormat";
36
37
  BroadcastEvent["NewMessageSent"] = "NewMessageSent";
37
38
  BroadcastEvent["NewMessageReceived"] = "NewMessageReceived";
39
+ BroadcastEvent["HistoryMessageReceived"] = "HistoryMessageReceived";
40
+ BroadcastEvent["RedirectPageRequest"] = "RedirectPageRequest";
41
+ BroadcastEvent["StartChat"] = "StartChat";
42
+ BroadcastEvent["StartUnauthenticatedReconnectChat"] = "StartUnauthenticatedReconnectChat";
43
+ BroadcastEvent["InitiateEndChat"] = "InitiateEndChat";
44
+ BroadcastEvent["SetCustomContext"] = "SetCustomContext";
45
+ BroadcastEvent["ChatRetrievedFromCache"] = "ChatRetrievedFromCache";
46
+ BroadcastEvent["MaximizeChat"] = "MaximizeChat";
47
+ BroadcastEvent["ChatInitiated"] = "ChatInitiated";
48
+ BroadcastEvent["CloseChat"] = "CloseChat";
49
+ BroadcastEvent["InitiateEndChatOnBrowserUnload"] = "InitiateEndChatOnBrowserUnload";
50
+ BroadcastEvent["ClosePopoutWindow"] = "ClosePopoutWindow";
51
+ BroadcastEvent["RaiseErrorEvent"] = "RaiseErrorEvent";
38
52
  })(BroadcastEvent || (BroadcastEvent = {}));
39
-
40
53
  export let TelemetryEvent;
41
-
42
54
  (function (TelemetryEvent) {
43
55
  TelemetryEvent["CallAdded"] = "CallAdded";
44
56
  TelemetryEvent["LocalVideoStreamAdded"] = "LocalVideoStreamAdded";
@@ -48,8 +60,8 @@ export let TelemetryEvent;
48
60
  TelemetryEvent["CallDisconnected"] = "CallDisconnected";
49
61
  TelemetryEvent["CallDisconnectedException"] = "CallDisconnectedException";
50
62
  TelemetryEvent["IncomingCallEnded"] = "incomingCallEnded";
51
- TelemetryEvent["VoiceVideoInitialize"] = "VoiceVideoInitialize";
52
- TelemetryEvent["VoiceVideoInitializeException"] = "VoiceVideoInitializeException";
63
+ TelemetryEvent["VoiceVideoSdkInitialize"] = "VoiceVideoSdkInitialize";
64
+ TelemetryEvent["VoiceVideoSdkInitializeException"] = "VoiceVideoSdkInitializeException";
53
65
  TelemetryEvent["VoiceVideoLoading"] = "VoiceVideoLoading";
54
66
  TelemetryEvent["VoiceVideoNotLoaded"] = "VoiceVideoNotLoaded";
55
67
  TelemetryEvent["VoiceVideoLoadingException"] = "VoiceVideoLoadingException";
@@ -75,9 +87,12 @@ export let TelemetryEvent;
75
87
  TelemetryEvent["PostChatContextCallSucceed"] = "PostChatContextCallSucceed";
76
88
  TelemetryEvent["PostChatContextCallFailed"] = "PostChatContextCallFailed";
77
89
  TelemetryEvent["ParseAdaptiveCardFailed"] = "ParseAdaptiveCardFailed";
90
+ TelemetryEvent["ClientDataStoreProviderFailed"] = "ClientDataStoreProviderFailed";
91
+ TelemetryEvent["InMemoryDataStoreFailed"] = "InMemoryDataStoreFailed";
78
92
  TelemetryEvent["WebChatLoaded"] = "WebChatLoaded";
79
93
  TelemetryEvent["LCWChatButtonClicked"] = "LCWChatButtonClicked";
80
94
  TelemetryEvent["LCWChatButtonShow"] = "LCWChatButtonShow";
95
+ TelemetryEvent["WidgetLoadStarted"] = "WidgetLoadStarted";
81
96
  TelemetryEvent["WidgetLoadComplete"] = "WidgetLoadComplete";
82
97
  TelemetryEvent["WidgetLoadFailed"] = "WidgetLoadFailed";
83
98
  TelemetryEvent["StartChatMethodException"] = "StartChatMethodException";
@@ -85,7 +100,10 @@ export let TelemetryEvent;
85
100
  TelemetryEvent["PrechatSurveyLoaded"] = "PrechatSurveyLoaded";
86
101
  TelemetryEvent["PrechatSubmitted"] = "PrechatSubmitted";
87
102
  TelemetryEvent["StartChatSDKCall"] = "StartChatCall";
88
- TelemetryEvent["EndChatSDKCall"] = "EndChatCall";
103
+ TelemetryEvent["StartChatEventRecevied"] = "StartChatEventReceived";
104
+ TelemetryEvent["EndChatSDKCall"] = "EndChatSDKCall";
105
+ TelemetryEvent["EndChatEventReceived"] = "EndChatEventReceived";
106
+ TelemetryEvent["WindowClosed"] = "WindowClosed";
89
107
  TelemetryEvent["OnNewMessageFailed"] = "OnNewMessageFailed";
90
108
  TelemetryEvent["OnNewMessageAudioNotificationFailed"] = "OnNewMessageAudioNotificationFailed";
91
109
  TelemetryEvent["DownloadTranscriptResponseNullOrUndefined"] = "DownloadTranscriptResponseNullOrUndefined";
@@ -99,6 +117,7 @@ export let TelemetryEvent;
99
117
  TelemetryEvent["LoadingPaneLoaded"] = "LoadingPaneLoaded";
100
118
  TelemetryEvent["EmailTranscriptLoaded"] = "EmailTranscriptLoaded";
101
119
  TelemetryEvent["OutOfOfficePaneLoaded"] = "OutOfOfficePaneLoaded";
120
+ TelemetryEvent["PostChatSurveyLoadingPaneLoaded"] = "PostChatSurveyLoadingPaneLoaded";
102
121
  TelemetryEvent["PostChatSurveyLoaded"] = "PostChatSurveyLoaded";
103
122
  TelemetryEvent["ConfirmationPaneLoaded"] = "ConfirmationPaneLoaded";
104
123
  TelemetryEvent["ProactiveChatPaneLoaded"] = "ProactiveChatPaneLoaded";
@@ -109,17 +128,29 @@ export let TelemetryEvent;
109
128
  TelemetryEvent["EmailTranscriptButtonClicked"] = "EmailTranscriptButtonClicked";
110
129
  TelemetryEvent["EmailTranscriptCancelButtonClicked"] = "EmailTranscriptCancelButtonClicked";
111
130
  TelemetryEvent["AudioToggleButtonClicked"] = "AudioToggleButtonClicked";
131
+ TelemetryEvent["SuppressBotMagicCodeSucceeded"] = "SuppressBotMagicCodeSucceeded";
132
+ TelemetryEvent["SuppressBotMagicCodeFailed"] = "SuppressBotMagicCodeFailed";
133
+ TelemetryEvent["GetConversationDetailsException"] = "GetConversationDetailsException";
134
+ TelemetryEvent["BrowserUnloadEventStarted"] = "BrowserUnloadEventStarted";
135
+ TelemetryEvent["GetAuthTokenCalled"] = "GetAuthTokenCalled";
136
+ TelemetryEvent["GetAuthTokenFailed"] = "GetAuthTokenFailed";
137
+ TelemetryEvent["ReceivedNullOrEmptyToken"] = "ReceivedNullOrEmptyToken";
138
+ TelemetryEvent["CustomerVoiceResponsePageLoaded"] = "CustomerVoiceResponsePageLoaded";
139
+ TelemetryEvent["CustomerVoiceFormResponseSubmitted"] = "CustomerVoiceFormResponseSubmitted";
140
+ TelemetryEvent["CustomerVoiceFormResponseError"] = "CustomerVoiceFormResponseError";
112
141
  TelemetryEvent["ProcessingHTMLTextMiddlewareFailed"] = "ProcessingHTMLTextMiddlewareFailed";
113
142
  TelemetryEvent["ProcessingSanitizationMiddlewareFailed"] = "ProcessingSanitizationMiddlewareFailed";
114
143
  TelemetryEvent["FormatTagsMiddlewareJSONStringifyFailed"] = "FormatTagsMiddlewareJSONStringifyFailed";
115
144
  TelemetryEvent["QueuePositionMessageRecieved"] = "QueuePositionMessageRecieved";
116
145
  TelemetryEvent["AverageWaitTimeMessageRecieved"] = "AverageWaitTimeMessageRecieved";
117
146
  TelemetryEvent["DataMaskingRuleApplied"] = "DataMaskingRuleApplied";
147
+ TelemetryEvent["DataMaskingRuleApplyFailed"] = "DataMaskingRuleApplyFailed";
118
148
  TelemetryEvent["IC3ClientEvent"] = "IC3ClientEvent";
119
149
  TelemetryEvent["ConversationEndedThreadEventReceived"] = "ConversationEndedThreadEventReceived";
120
150
  TelemetryEvent["InvalidConfiguration"] = "InvalidConfiguration";
121
151
  TelemetryEvent["SendTypingIndicatorSucceeded"] = "SendTypingIndicatorSucceeded";
122
152
  TelemetryEvent["SendTypingIndicatorFailed"] = "SendTypingIndicatorFailed";
153
+ TelemetryEvent["WebChatEvent"] = "WebChatEvent";
123
154
  TelemetryEvent["PreChatSurveyStartChatMethodFailed"] = "PreChatSurveyStartChatMethodFailed";
124
155
  TelemetryEvent["ChatAlreadyTriggered"] = "ChatAlreadyTriggered";
125
156
  TelemetryEvent["StartProactiveChatEventReceived"] = "StartProactiveChatEventReceived";
@@ -133,14 +164,19 @@ export let TelemetryEvent;
133
164
  TelemetryEvent["ReconnectChatMinimize"] = "ReconnectChatMinimize";
134
165
  TelemetryEvent["MessageSent"] = "MessageSent";
135
166
  TelemetryEvent["MessageReceived"] = "MessageReceived";
167
+ TelemetryEvent["CustomContextReceived"] = "CustomContextReceived";
168
+ TelemetryEvent["NetworkDisconnected"] = "NetworkDisconnected";
169
+ TelemetryEvent["NetworkReconnected"] = "NetworkReconnected";
136
170
  })(TelemetryEvent || (TelemetryEvent = {}));
137
-
138
171
  export class TelemetryConstants {
139
172
  static map(eventTypeOrScenarioType) {
140
173
  switch (eventTypeOrScenarioType) {
141
174
  case TelemetryEvent.ParseAdaptiveCardFailed:
175
+ case TelemetryEvent.ReceivedNullOrEmptyToken:
176
+ case TelemetryEvent.GetAuthTokenCalled:
177
+ case TelemetryEvent.SuppressBotMagicCodeSucceeded:
178
+ case TelemetryEvent.SuppressBotMagicCodeFailed:
142
179
  return ScenarioType.CONFIG_VALIDATION;
143
-
144
180
  case TelemetryEvent.WebChatLoaded:
145
181
  case TelemetryEvent.WidgetLoadComplete:
146
182
  case TelemetryEvent.WidgetLoadFailed:
@@ -148,13 +184,13 @@ export class TelemetryConstants {
148
184
  case TelemetryEvent.LCWChatButtonShow:
149
185
  case TelemetryEvent.PrechatSurveyLoaded:
150
186
  case TelemetryEvent.LoadingPaneLoaded:
187
+ case TelemetryEvent.PostChatSurveyLoadingPaneLoaded:
151
188
  case TelemetryEvent.PostChatSurveyLoaded:
152
189
  case TelemetryEvent.EmailTranscriptLoaded:
153
190
  case TelemetryEvent.OutOfOfficePaneLoaded:
154
191
  case TelemetryEvent.ConfirmationPaneLoaded:
155
192
  case TelemetryEvent.ProactiveChatPaneLoaded:
156
193
  return ScenarioType.LOAD;
157
-
158
194
  case TelemetryEvent.PrechatSubmitted:
159
195
  case TelemetryEvent.LCWChatButtonClicked:
160
196
  case TelemetryEvent.ProactiveChatAccepted:
@@ -174,20 +210,34 @@ export class TelemetryConstants {
174
210
  case TelemetryEvent.PreChatSurveyStartChatMethodFailed:
175
211
  case TelemetryEvent.HeaderCloseButtonClicked:
176
212
  case TelemetryEvent.HeaderMinimizeButtonClicked:
213
+ case TelemetryEvent.MessageSent:
214
+ case TelemetryEvent.MessageReceived:
215
+ case TelemetryEvent.CustomContextReceived:
216
+ case TelemetryEvent.BrowserUnloadEventStarted:
217
+ case TelemetryEvent.NetworkDisconnected:
218
+ case TelemetryEvent.NetworkReconnected:
219
+ case TelemetryEvent.AudioToggleButtonClicked:
220
+ case TelemetryEvent.EmailTranscriptCancelButtonClicked:
221
+ case TelemetryEvent.CustomerVoiceResponsePageLoaded:
222
+ case TelemetryEvent.CustomerVoiceFormResponseSubmitted:
223
+ case TelemetryEvent.CustomerVoiceFormResponseError:
177
224
  return ScenarioType.ACTIONS;
178
-
179
225
  case TelemetryEvent.StartChatSDKCall:
226
+ case TelemetryEvent.StartChatEventRecevied:
180
227
  case TelemetryEvent.StartChatMethodException:
181
228
  case TelemetryEvent.CloseChatMethodException:
229
+ case TelemetryEvent.StartProactiveChatEventReceived:
182
230
  case TelemetryEvent.StartProactiveChatMethodFailed:
183
231
  case TelemetryEvent.OnNewMessageFailed:
184
232
  case TelemetryEvent.OnNewMessageAudioNotificationFailed:
185
233
  case TelemetryEvent.GetConversationDetailsCallFailed:
234
+ case TelemetryEvent.EndChatSDKCall:
235
+ case TelemetryEvent.EndChatEventReceived:
186
236
  case TelemetryEvent.EndChatSDKCallFailed:
187
237
  case TelemetryEvent.PostChatContextCallFailed:
188
238
  case TelemetryEvent.PostChatContextCallSucceed:
239
+ case TelemetryEvent.GetConversationDetailsException:
189
240
  return ScenarioType.SDK;
190
-
191
241
  case TelemetryEvent.VideoCallAcceptButtonClick:
192
242
  case TelemetryEvent.CallAdded:
193
243
  case TelemetryEvent.LocalVideoStreamAdded:
@@ -197,8 +247,8 @@ export class TelemetryConstants {
197
247
  case TelemetryEvent.CallDisconnected:
198
248
  case TelemetryEvent.CallDisconnectedException:
199
249
  case TelemetryEvent.IncomingCallEnded:
200
- case TelemetryEvent.VoiceVideoInitialize:
201
- case TelemetryEvent.VoiceVideoInitializeException:
250
+ case TelemetryEvent.VoiceVideoSdkInitialize:
251
+ case TelemetryEvent.VoiceVideoSdkInitializeException:
202
252
  case TelemetryEvent.VoiceVideoLoading:
203
253
  case TelemetryEvent.VoiceVideoNotLoaded:
204
254
  case TelemetryEvent.VoiceVideoLoadingException:
@@ -218,14 +268,11 @@ export class TelemetryConstants {
218
268
  case TelemetryEvent.CallingSDKLoadSuccess:
219
269
  case TelemetryEvent.CallingSDKLoadFailed:
220
270
  return ScenarioType.CALLING;
221
-
222
271
  default:
223
272
  return ScenarioType.ACTIONS;
224
273
  }
225
274
  }
226
-
227
275
  static mapEventToScenario(eventTypeOrScenarioType) {
228
276
  return TelemetryConstants.map(eventTypeOrScenarioType);
229
277
  }
230
-
231
278
  }