@microsoft/omnichannel-chat-widget 0.1.0-main.7a3ed6a → 0.1.0-main.834a4cd

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 (363) hide show
  1. package/README.md +259 -0
  2. package/lib/cjs/assets/Audios.js +8 -0
  3. package/lib/cjs/assets/Icons.js +28 -0
  4. package/lib/cjs/common/Constants.js +47 -148
  5. package/lib/cjs/common/KeyCodes.js +0 -3
  6. package/lib/cjs/common/contextDataStore/DataStoreManager.js +10 -0
  7. package/lib/cjs/{assets/assets.d.js → common/interfaces/IContextDataStore.js} +0 -0
  8. package/lib/cjs/common/storage/default/defaultCacheManager.js +24 -0
  9. package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +102 -0
  10. package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +78 -0
  11. package/lib/cjs/common/telemetry/TelemetryConstants.js +84 -22
  12. package/lib/cjs/common/telemetry/TelemetryHelper.js +34 -57
  13. package/lib/cjs/common/telemetry/TelemetryManager.js +22 -34
  14. package/lib/cjs/common/telemetry/defaultConfigs/defaultAriaConfig.js +3 -3
  15. package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +4 -3
  16. package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +59 -32
  17. package/lib/cjs/common/telemetry/loggers/consoleLogger.js +9 -14
  18. package/lib/cjs/common/utils.js +80 -80
  19. package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +21 -45
  20. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +28 -27
  21. package/lib/cjs/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  22. package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +14 -85
  23. package/lib/cjs/components/dimlayer/DimLayer.js +0 -4
  24. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +10 -38
  25. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -8
  26. package/lib/cjs/components/footerstateful/FooterStateful.js +14 -46
  27. package/lib/cjs/components/footerstateful/audionotificationstateful/AudioNotificationStateful.js +0 -6
  28. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +15 -44
  29. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -8
  30. package/lib/cjs/components/headerstateful/HeaderStateful.js +23 -34
  31. package/lib/cjs/components/livechatwidget/LiveChatWidget.js +2 -14
  32. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +37 -0
  33. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +18 -0
  34. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  35. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +32 -0
  36. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +62 -0
  37. package/lib/cjs/components/livechatwidget/common/Deferred.js +35 -0
  38. package/lib/cjs/components/livechatwidget/common/authHelper.js +50 -0
  39. package/lib/cjs/components/livechatwidget/common/createAdapter.js +10 -9
  40. package/lib/cjs/components/livechatwidget/common/createFooter.js +4 -23
  41. package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -10
  42. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +36 -44
  43. package/lib/cjs/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +14 -0
  44. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +105 -79
  45. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +11 -0
  46. package/lib/cjs/components/livechatwidget/common/endChat.js +168 -54
  47. package/lib/cjs/components/livechatwidget/common/getGeneralStylesForButton.js +0 -6
  48. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +10 -14
  49. package/lib/cjs/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -8
  50. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +58 -55
  51. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +101 -66
  52. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +13 -22
  53. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +18 -29
  54. package/lib/cjs/components/livechatwidget/common/shareObservable.js +41 -0
  55. package/lib/cjs/components/livechatwidget/common/startChat.js +248 -65
  56. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +3 -11
  57. package/lib/cjs/components/livechatwidget/common/updateSessionDataForTelemetry.js +2 -11
  58. package/lib/cjs/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  59. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +367 -158
  60. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +5 -18
  61. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +9 -14
  62. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +9 -14
  63. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -23
  64. package/lib/cjs/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  65. package/lib/cjs/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +13 -0
  66. package/lib/cjs/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  67. package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  68. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +26 -42
  69. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +27 -35
  70. package/lib/cjs/components/proactivechatpanestateful/interfaces/IProactiveChatNotificationConfig.js +1 -0
  71. package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -24
  72. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +94 -19
  73. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -7
  74. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -6
  75. package/lib/cjs/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +11 -0
  76. package/lib/cjs/components/webchatcontainerstateful/common/mockadapter.js +9 -26
  77. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +6 -15
  78. package/lib/cjs/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -24
  79. package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +54 -88
  80. package/lib/cjs/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -8
  81. package/lib/cjs/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  82. package/lib/cjs/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.js +1 -0
  83. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +10 -0
  84. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +0 -4
  85. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  86. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  87. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  88. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  89. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  90. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  91. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  92. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  93. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +0 -7
  94. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -5
  95. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +33 -80
  96. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +9 -19
  97. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -60
  98. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +7 -15
  99. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +41 -0
  100. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +82 -0
  101. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +10 -0
  102. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
  103. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -3
  104. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -3
  105. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
  106. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -9
  107. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +89 -0
  108. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +2 -12
  109. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +6 -28
  110. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +2 -11
  111. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +13 -30
  112. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +3 -9
  113. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -34
  114. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +1 -10
  115. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +7 -18
  116. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -19
  117. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +1 -9
  118. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -9
  119. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +13 -34
  120. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +1 -10
  121. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +7 -11
  122. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +5 -14
  123. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -21
  124. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +33 -0
  125. package/lib/cjs/contexts/ChatAdapterStore.js +0 -2
  126. package/lib/cjs/contexts/ChatContextStore.js +0 -2
  127. package/lib/cjs/contexts/ChatSDKStore.js +0 -2
  128. package/lib/cjs/contexts/common/ConversationState.js +4 -3
  129. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +17 -10
  130. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +20 -13
  131. package/lib/cjs/contexts/createReducer.js +177 -98
  132. package/lib/cjs/controller/componentController.js +5 -34
  133. package/lib/cjs/hooks/useChatAdapterStore.js +0 -6
  134. package/lib/cjs/hooks/useChatContextStore.js +0 -6
  135. package/lib/cjs/hooks/useChatSDKStore.js +0 -6
  136. package/lib/cjs/index.js +0 -5
  137. package/lib/cjs/plugins/newMessageEventHandler.js +78 -0
  138. package/lib/esm/assets/Audios.js +1 -0
  139. package/lib/esm/assets/Icons.js +11 -0
  140. package/lib/esm/common/Constants.js +42 -136
  141. package/lib/esm/common/KeyCodes.js +0 -2
  142. package/lib/esm/common/contextDataStore/DataStoreManager.js +3 -0
  143. package/lib/esm/common/interfaces/IContextDataStore.js +1 -0
  144. package/lib/esm/common/storage/default/defaultCacheManager.js +16 -0
  145. package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +95 -0
  146. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +70 -0
  147. package/lib/esm/common/telemetry/TelemetryConstants.js +83 -17
  148. package/lib/esm/common/telemetry/TelemetryHelper.js +35 -47
  149. package/lib/esm/common/telemetry/TelemetryManager.js +21 -26
  150. package/lib/esm/common/telemetry/defaultConfigs/defaultAriaConfig.js +3 -3
  151. package/lib/esm/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +4 -1
  152. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +62 -23
  153. package/lib/esm/common/telemetry/loggers/consoleLogger.js +9 -10
  154. package/lib/esm/common/utils.js +73 -45
  155. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +21 -16
  156. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +31 -13
  157. package/lib/esm/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  158. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +15 -61
  159. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +10 -17
  160. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
  161. package/lib/esm/components/footerstateful/FooterStateful.js +15 -26
  162. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +15 -37
  163. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -6
  164. package/lib/esm/components/headerstateful/HeaderStateful.js +24 -20
  165. package/lib/esm/components/livechatwidget/LiveChatWidget.js +2 -2
  166. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +30 -0
  167. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +11 -0
  168. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  169. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +25 -0
  170. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +55 -0
  171. package/lib/esm/components/livechatwidget/common/Deferred.js +28 -0
  172. package/lib/esm/components/livechatwidget/common/authHelper.js +42 -0
  173. package/lib/esm/components/livechatwidget/common/createAdapter.js +12 -4
  174. package/lib/esm/components/livechatwidget/common/createFooter.js +4 -16
  175. package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -5
  176. package/lib/esm/components/livechatwidget/common/createMarkdown.js +38 -37
  177. package/lib/esm/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +7 -0
  178. package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +107 -69
  179. package/lib/esm/components/livechatwidget/common/disposeTelemetryLoggers.js +4 -0
  180. package/lib/esm/components/livechatwidget/common/endChat.js +171 -42
  181. package/lib/esm/components/livechatwidget/common/getGeneralStylesForButton.js +0 -2
  182. package/lib/esm/components/livechatwidget/common/initCallingSdk.js +12 -11
  183. package/lib/esm/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -5
  184. package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +60 -27
  185. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +101 -59
  186. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +13 -11
  187. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +19 -21
  188. package/lib/esm/components/livechatwidget/common/shareObservable.js +35 -0
  189. package/lib/esm/components/livechatwidget/common/startChat.js +251 -50
  190. package/lib/esm/components/livechatwidget/common/startProactiveChat.js +5 -5
  191. package/lib/esm/components/livechatwidget/common/updateSessionDataForTelemetry.js +4 -2
  192. package/lib/esm/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  193. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +370 -114
  194. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +5 -6
  195. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +9 -4
  196. package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +9 -4
  197. package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -11
  198. package/lib/esm/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  199. package/lib/esm/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +6 -0
  200. package/lib/esm/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  201. package/lib/esm/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  202. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +29 -27
  203. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +30 -14
  204. package/lib/esm/components/proactivechatpanestateful/interfaces/IProactiveChatNotificationConfig.js +1 -0
  205. package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -6
  206. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +94 -4
  207. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -1
  208. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
  209. package/lib/esm/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +4 -0
  210. package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +9 -18
  211. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +6 -11
  212. package/lib/esm/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -16
  213. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -17
  214. package/lib/esm/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -6
  215. package/lib/esm/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  216. package/lib/esm/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.js +1 -0
  217. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +3 -0
  218. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +0 -2
  219. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  220. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  221. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  222. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  223. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  224. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  225. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  226. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  227. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +2 -5
  228. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -4
  229. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +34 -66
  230. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +11 -11
  231. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -39
  232. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +9 -8
  233. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +34 -0
  234. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +80 -0
  235. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +3 -0
  236. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +3 -0
  237. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -1
  238. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -1
  239. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +3 -0
  240. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -7
  241. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +83 -0
  242. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +3 -3
  243. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +7 -14
  244. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +3 -3
  245. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +15 -19
  246. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +5 -8
  247. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -29
  248. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +3 -7
  249. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +9 -14
  250. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -14
  251. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +3 -7
  252. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -7
  253. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +15 -27
  254. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +3 -5
  255. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +9 -9
  256. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +7 -9
  257. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -13
  258. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +27 -0
  259. package/lib/esm/contexts/ChatAdapterStore.js +2 -1
  260. package/lib/esm/contexts/ChatContextStore.js +2 -1
  261. package/lib/esm/contexts/ChatSDKStore.js +2 -1
  262. package/lib/esm/contexts/common/ConversationState.js +4 -3
  263. package/lib/esm/contexts/common/LiveChatWidgetActionType.js +17 -10
  264. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +20 -9
  265. package/lib/esm/contexts/createReducer.js +177 -94
  266. package/lib/esm/controller/componentController.js +6 -5
  267. package/lib/esm/hooks/useChatAdapterStore.js +0 -4
  268. package/lib/esm/hooks/useChatContextStore.js +0 -4
  269. package/lib/esm/hooks/useChatSDKStore.js +0 -4
  270. package/lib/esm/plugins/newMessageEventHandler.js +71 -0
  271. package/lib/types/assets/Audios.d.ts +1 -0
  272. package/lib/types/assets/Icons.d.ts +11 -0
  273. package/lib/types/common/Constants.d.ts +39 -1
  274. package/lib/types/common/contextDataStore/DataStoreManager.d.ts +4 -0
  275. package/lib/types/common/interfaces/IContextDataStore.d.ts +14 -0
  276. package/lib/types/common/storage/default/defaultCacheManager.d.ts +4 -0
  277. package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +2 -0
  278. package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -0
  279. package/lib/types/common/telemetry/TelemetryConstants.d.ts +58 -4
  280. package/lib/types/common/telemetry/TelemetryHelper.d.ts +2 -0
  281. package/lib/types/common/telemetry/TelemetryManager.d.ts +1 -0
  282. package/lib/types/common/telemetry/definitions/Contracts.d.ts +5 -4
  283. package/lib/types/common/telemetry/definitions/Payload.d.ts +15 -9
  284. package/lib/types/common/telemetry/interfaces/IChatSDKLogger.d.ts +1 -0
  285. package/lib/types/common/telemetry/interfaces/IInternalTelemetryData.d.ts +2 -0
  286. package/lib/types/common/telemetry/interfaces/ITelemetryConfig.d.ts +12 -0
  287. package/lib/types/common/utils.d.ts +8 -1
  288. package/lib/types/components/confirmationpanestateful/interfaces/IConfirmationPaneStatefulParams.d.ts +5 -2
  289. package/lib/types/components/footerstateful/audionotificationstateful/interfaces/IAudioNotificationStatefulParams.d.ts +0 -1
  290. package/lib/types/components/headerstateful/interfaces/IHeaderStatefulParams.d.ts +5 -1
  291. package/lib/types/components/livechatwidget/common/ActivityStreamHandler.d.ts +14 -0
  292. package/lib/types/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.d.ts +5 -0
  293. package/lib/types/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.d.ts +6 -0
  294. package/lib/types/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.d.ts +7 -0
  295. package/lib/types/components/livechatwidget/common/ChatAdapterShim.d.ts +7 -0
  296. package/lib/types/components/livechatwidget/common/Deferred.d.ts +9 -0
  297. package/lib/types/components/livechatwidget/common/authHelper.d.ts +5 -0
  298. package/lib/types/components/livechatwidget/common/defaultProps/defaultScrollBarProps.d.ts +2 -0
  299. package/lib/types/components/livechatwidget/common/disposeTelemetryLoggers.d.ts +1 -0
  300. package/lib/types/components/livechatwidget/common/endChat.d.ts +4 -1
  301. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +6 -4
  302. package/lib/types/components/livechatwidget/common/setPostChatContextAndLoadSurvey.d.ts +1 -1
  303. package/lib/types/components/livechatwidget/common/shareObservable.d.ts +1 -0
  304. package/lib/types/components/livechatwidget/common/startChat.d.ts +5 -2
  305. package/lib/types/components/livechatwidget/common/startProactiveChat.d.ts +2 -1
  306. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetComponentOverrides.d.ts +1 -0
  307. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +2 -1
  308. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +8 -3
  309. package/lib/types/components/livechatwidget/interfaces/IScrollBarProps.d.ts +22 -0
  310. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
  311. package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -0
  312. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
  313. package/lib/types/components/prechatsurveypanestateful/interfaces/IPreChatSurveyPaneStatefulParams.d.ts +1 -1
  314. package/lib/types/components/proactivechatpanestateful/interfaces/IProactiveChatNotificationConfig.d.ts +3 -0
  315. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +1 -2
  316. package/lib/types/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.d.ts +2 -0
  317. package/lib/types/components/webchatcontainerstateful/common/mockchatsdk.d.ts +2 -0
  318. package/lib/types/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.d.ts +1 -1
  319. package/lib/types/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.d.ts +4 -0
  320. package/lib/types/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.d.ts +4 -0
  321. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +4 -1
  322. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatContainerStatefulProps.d.ts +4 -0
  323. package/lib/types/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.d.ts +3 -0
  324. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.d.ts +0 -1
  325. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.d.ts +1 -1
  326. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.d.ts +2 -0
  327. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.d.ts +1 -0
  328. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +2 -0
  329. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  330. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  331. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.d.ts +5 -0
  332. package/lib/types/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.d.ts +1 -0
  333. package/lib/types/contexts/common/ConversationState.d.ts +4 -2
  334. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +8 -3
  335. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +18 -10
  336. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
  337. package/lib/types/plugins/newMessageEventHandler.d.ts +2 -0
  338. package/package.json +14 -13
  339. package/lib/cjs/assets/audios/newMessageNotification.mp3 +0 -0
  340. package/lib/cjs/assets/icons/archiveIcon.svg +0 -3
  341. package/lib/cjs/assets/icons/audioIcon.svg +0 -6
  342. package/lib/cjs/assets/icons/blankIcon.svg +0 -6
  343. package/lib/cjs/assets/icons/excelIcon.svg +0 -6
  344. package/lib/cjs/assets/icons/imageIcon.svg +0 -6
  345. package/lib/cjs/assets/icons/oneNoteIcon.svg +0 -6
  346. package/lib/cjs/assets/icons/pdfIcon.svg +0 -6
  347. package/lib/cjs/assets/icons/powerpointIcon.svg +0 -6
  348. package/lib/cjs/assets/icons/videoIcon.svg +0 -6
  349. package/lib/cjs/assets/icons/visioIcon.svg +0 -6
  350. package/lib/cjs/assets/icons/wordIcon.svg +0 -6
  351. package/lib/esm/assets/assets.d.js +0 -0
  352. package/lib/esm/assets/audios/newMessageNotification.mp3 +0 -0
  353. package/lib/esm/assets/icons/archiveIcon.svg +0 -3
  354. package/lib/esm/assets/icons/audioIcon.svg +0 -6
  355. package/lib/esm/assets/icons/blankIcon.svg +0 -6
  356. package/lib/esm/assets/icons/excelIcon.svg +0 -6
  357. package/lib/esm/assets/icons/imageIcon.svg +0 -6
  358. package/lib/esm/assets/icons/oneNoteIcon.svg +0 -6
  359. package/lib/esm/assets/icons/pdfIcon.svg +0 -6
  360. package/lib/esm/assets/icons/powerpointIcon.svg +0 -6
  361. package/lib/esm/assets/icons/videoIcon.svg +0 -6
  362. package/lib/esm/assets/icons/visioIcon.svg +0 -6
  363. package/lib/esm/assets/icons/wordIcon.svg +0 -6
@@ -0,0 +1,95 @@
1
+ import { inMemoryDataStore } from "./defaultInMemoryDataStore";
2
+ import { TelemetryHelper } from "../../telemetry/TelemetryHelper";
3
+ import { LogLevel, TelemetryEvent } from "../../telemetry/TelemetryConstants";
4
+ export const defaultClientDataStoreProvider = () => {
5
+ const isCookieAllowed = () => {
6
+ try {
7
+ localStorage;
8
+ sessionStorage;
9
+ return true;
10
+ } catch (error) {
11
+ console.error("Third party cookie blocked");
12
+ return false;
13
+ }
14
+ };
15
+ const TtlInMs = 15 * 60 * 1000; // 15 mins
16
+ const dataStoreProvider = {
17
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
18
+ setData: (key, data, type) => {
19
+ if (isCookieAllowed()) {
20
+ try {
21
+ if (key) {
22
+ const now = new Date();
23
+ const item = {
24
+ data: data,
25
+ expiry: now.getTime() + TtlInMs
26
+ };
27
+ const strItem = JSON.stringify(item);
28
+ if (type === "localStorage") {
29
+ localStorage.setItem(key, strItem);
30
+ } else {
31
+ sessionStorage.setItem(key, strItem);
32
+ }
33
+ }
34
+ } catch (error) {
35
+ TelemetryHelper.logConfigDataEvent(LogLevel.ERROR, {
36
+ Event: TelemetryEvent.ClientDataStoreProviderFailed,
37
+ ExceptionDetails: error,
38
+ Description: "Unable to store data in localStorage."
39
+ });
40
+ }
41
+ } else {
42
+ const dataToCache = {
43
+ key: key,
44
+ data: data,
45
+ type: type
46
+ };
47
+ parent.postMessage(dataToCache, "*");
48
+ }
49
+ },
50
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
51
+ getData: (key, type) => {
52
+ if (isCookieAllowed()) {
53
+ let item;
54
+ if (type === "localStorage") {
55
+ item = localStorage.getItem(key);
56
+ } else {
57
+ item = sessionStorage.getItem(key);
58
+ }
59
+ //Return item if not expired
60
+ let itemInJson = undefined;
61
+ if (item !== null) {
62
+ itemInJson = JSON.parse(item);
63
+ const now = new Date();
64
+ // compare the expiry time of the item with the current time
65
+ if (now.getTime() > itemInJson.expiry) {
66
+ // If the item is expired, delete the item from storage
67
+ // and return null
68
+ localStorage.removeItem(key);
69
+ return null;
70
+ }
71
+ return itemInJson.data;
72
+ }
73
+ } else {
74
+ // get data from in memory db when cookie is disabled
75
+ return inMemoryDataStore().getData(key);
76
+ }
77
+ },
78
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
79
+ removeData: (key, type) => {
80
+ if (isCookieAllowed()) {
81
+ if (key) {
82
+ if (type === "localStorage") {
83
+ return localStorage.removeItem(key);
84
+ } else {
85
+ return sessionStorage.removeItem(key);
86
+ }
87
+ }
88
+ } else {
89
+ // get data from in memory db when cookie is disabled
90
+ return inMemoryDataStore().removeData(key);
91
+ }
92
+ }
93
+ };
94
+ return dataStoreProvider;
95
+ };
@@ -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,18 +11,46 @@ export let ScenarioType;
12
11
  ScenarioType["UNDEFINED"] = "LCW_Undefined";
13
12
  ScenarioType["ACS_ADAPTER"] = "LCW_ACSAdapterEvents";
14
13
  })(ScenarioType || (ScenarioType = {}));
15
-
16
14
  export let LogLevel;
17
15
 
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
+ // Events being logged
26
+ (function (BroadcastEvent) {
27
+ BroadcastEvent["LoadPostChatSurvey"] = "LoadPostChatSurvey";
28
+ BroadcastEvent["ChatEnded"] = "ChatEnded";
29
+ BroadcastEvent["NewMessageNotification"] = "NewMessageNotification";
30
+ BroadcastEvent["UnreadMessageCount"] = "UnreadMessageCount";
31
+ BroadcastEvent["StartProactiveChat"] = "StartProactiveChat";
32
+ BroadcastEvent["ProactiveChatStartChat"] = "ProactiveChatStartChat";
33
+ BroadcastEvent["ProactiveChatStartPopoutChat"] = "ProactiveChatStartPopoutChat";
34
+ BroadcastEvent["ProactiveChatIsInPopoutMode"] = "ProactiveChatIsInPopoutMode";
35
+ BroadcastEvent["ResetProactiveChatParams"] = "ResetProactiveChatParams";
36
+ BroadcastEvent["InvalidAdaptiveCardFormat"] = "InvalidAdaptiveCardFormat";
37
+ BroadcastEvent["NewMessageSent"] = "NewMessageSent";
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";
52
+ })(BroadcastEvent || (BroadcastEvent = {}));
25
53
  export let TelemetryEvent;
26
-
27
54
  (function (TelemetryEvent) {
28
55
  TelemetryEvent["CallAdded"] = "CallAdded";
29
56
  TelemetryEvent["LocalVideoStreamAdded"] = "LocalVideoStreamAdded";
@@ -33,8 +60,8 @@ export let TelemetryEvent;
33
60
  TelemetryEvent["CallDisconnected"] = "CallDisconnected";
34
61
  TelemetryEvent["CallDisconnectedException"] = "CallDisconnectedException";
35
62
  TelemetryEvent["IncomingCallEnded"] = "incomingCallEnded";
36
- TelemetryEvent["VoiceVideoInitialize"] = "VoiceVideoInitialize";
37
- TelemetryEvent["VoiceVideoInitializeException"] = "VoiceVideoInitializeException";
63
+ TelemetryEvent["VoiceVideoSdkInitialize"] = "VoiceVideoSdkInitialize";
64
+ TelemetryEvent["VoiceVideoSdkInitializeException"] = "VoiceVideoSdkInitializeException";
38
65
  TelemetryEvent["VoiceVideoLoading"] = "VoiceVideoLoading";
39
66
  TelemetryEvent["VoiceVideoNotLoaded"] = "VoiceVideoNotLoaded";
40
67
  TelemetryEvent["VoiceVideoLoadingException"] = "VoiceVideoLoadingException";
@@ -60,9 +87,12 @@ export let TelemetryEvent;
60
87
  TelemetryEvent["PostChatContextCallSucceed"] = "PostChatContextCallSucceed";
61
88
  TelemetryEvent["PostChatContextCallFailed"] = "PostChatContextCallFailed";
62
89
  TelemetryEvent["ParseAdaptiveCardFailed"] = "ParseAdaptiveCardFailed";
90
+ TelemetryEvent["ClientDataStoreProviderFailed"] = "ClientDataStoreProviderFailed";
91
+ TelemetryEvent["InMemoryDataStoreFailed"] = "InMemoryDataStoreFailed";
63
92
  TelemetryEvent["WebChatLoaded"] = "WebChatLoaded";
64
93
  TelemetryEvent["LCWChatButtonClicked"] = "LCWChatButtonClicked";
65
94
  TelemetryEvent["LCWChatButtonShow"] = "LCWChatButtonShow";
95
+ TelemetryEvent["WidgetLoadStarted"] = "WidgetLoadStarted";
66
96
  TelemetryEvent["WidgetLoadComplete"] = "WidgetLoadComplete";
67
97
  TelemetryEvent["WidgetLoadFailed"] = "WidgetLoadFailed";
68
98
  TelemetryEvent["StartChatMethodException"] = "StartChatMethodException";
@@ -70,7 +100,10 @@ export let TelemetryEvent;
70
100
  TelemetryEvent["PrechatSurveyLoaded"] = "PrechatSurveyLoaded";
71
101
  TelemetryEvent["PrechatSubmitted"] = "PrechatSubmitted";
72
102
  TelemetryEvent["StartChatSDKCall"] = "StartChatCall";
73
- TelemetryEvent["EndChatSDKCall"] = "EndChatCall";
103
+ TelemetryEvent["StartChatEventRecevied"] = "StartChatEventReceived";
104
+ TelemetryEvent["EndChatSDKCall"] = "EndChatSDKCall";
105
+ TelemetryEvent["EndChatEventReceived"] = "EndChatEventReceived";
106
+ TelemetryEvent["WindowClosed"] = "WindowClosed";
74
107
  TelemetryEvent["OnNewMessageFailed"] = "OnNewMessageFailed";
75
108
  TelemetryEvent["OnNewMessageAudioNotificationFailed"] = "OnNewMessageAudioNotificationFailed";
76
109
  TelemetryEvent["DownloadTranscriptResponseNullOrUndefined"] = "DownloadTranscriptResponseNullOrUndefined";
@@ -84,6 +117,7 @@ export let TelemetryEvent;
84
117
  TelemetryEvent["LoadingPaneLoaded"] = "LoadingPaneLoaded";
85
118
  TelemetryEvent["EmailTranscriptLoaded"] = "EmailTranscriptLoaded";
86
119
  TelemetryEvent["OutOfOfficePaneLoaded"] = "OutOfOfficePaneLoaded";
120
+ TelemetryEvent["PostChatSurveyLoadingPaneLoaded"] = "PostChatSurveyLoadingPaneLoaded";
87
121
  TelemetryEvent["PostChatSurveyLoaded"] = "PostChatSurveyLoaded";
88
122
  TelemetryEvent["ConfirmationPaneLoaded"] = "ConfirmationPaneLoaded";
89
123
  TelemetryEvent["ProactiveChatPaneLoaded"] = "ProactiveChatPaneLoaded";
@@ -94,18 +128,32 @@ export let TelemetryEvent;
94
128
  TelemetryEvent["EmailTranscriptButtonClicked"] = "EmailTranscriptButtonClicked";
95
129
  TelemetryEvent["EmailTranscriptCancelButtonClicked"] = "EmailTranscriptCancelButtonClicked";
96
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";
97
141
  TelemetryEvent["ProcessingHTMLTextMiddlewareFailed"] = "ProcessingHTMLTextMiddlewareFailed";
98
142
  TelemetryEvent["ProcessingSanitizationMiddlewareFailed"] = "ProcessingSanitizationMiddlewareFailed";
99
143
  TelemetryEvent["FormatTagsMiddlewareJSONStringifyFailed"] = "FormatTagsMiddlewareJSONStringifyFailed";
100
144
  TelemetryEvent["QueuePositionMessageRecieved"] = "QueuePositionMessageRecieved";
101
145
  TelemetryEvent["AverageWaitTimeMessageRecieved"] = "AverageWaitTimeMessageRecieved";
102
146
  TelemetryEvent["DataMaskingRuleApplied"] = "DataMaskingRuleApplied";
147
+ TelemetryEvent["DataMaskingRuleApplyFailed"] = "DataMaskingRuleApplyFailed";
103
148
  TelemetryEvent["IC3ClientEvent"] = "IC3ClientEvent";
104
149
  TelemetryEvent["ConversationEndedThreadEventReceived"] = "ConversationEndedThreadEventReceived";
105
150
  TelemetryEvent["InvalidConfiguration"] = "InvalidConfiguration";
106
151
  TelemetryEvent["SendTypingIndicatorSucceeded"] = "SendTypingIndicatorSucceeded";
107
152
  TelemetryEvent["SendTypingIndicatorFailed"] = "SendTypingIndicatorFailed";
153
+ TelemetryEvent["WebChatEvent"] = "WebChatEvent";
108
154
  TelemetryEvent["PreChatSurveyStartChatMethodFailed"] = "PreChatSurveyStartChatMethodFailed";
155
+ TelemetryEvent["ChatAlreadyTriggered"] = "ChatAlreadyTriggered";
156
+ TelemetryEvent["StartProactiveChatEventReceived"] = "StartProactiveChatEventReceived";
109
157
  TelemetryEvent["StartProactiveChatMethodFailed"] = "StartProactiveChatMethodFailed";
110
158
  TelemetryEvent["ProactiveChatAccepted"] = "ProactiveChatAccepted";
111
159
  TelemetryEvent["ProactiveChatRejected"] = "ProactiveChatRejected";
@@ -114,15 +162,21 @@ export let TelemetryEvent;
114
162
  TelemetryEvent["ReconnectChatContinueConversation"] = "ReconnectChatContinueConversation";
115
163
  TelemetryEvent["ReconnectChatStartNewConversation"] = "ReconnectChatStartNewConversation";
116
164
  TelemetryEvent["ReconnectChatMinimize"] = "ReconnectChatMinimize";
165
+ TelemetryEvent["MessageSent"] = "MessageSent";
166
+ TelemetryEvent["MessageReceived"] = "MessageReceived";
167
+ TelemetryEvent["CustomContextReceived"] = "CustomContextReceived";
168
+ TelemetryEvent["NetworkDisconnected"] = "NetworkDisconnected";
169
+ TelemetryEvent["NetworkReconnected"] = "NetworkReconnected";
117
170
  })(TelemetryEvent || (TelemetryEvent = {}));
118
-
119
171
  export class TelemetryConstants {
120
172
  static map(eventTypeOrScenarioType) {
121
173
  switch (eventTypeOrScenarioType) {
122
- case TelemetryEvent.StartChatSDKCall:
123
174
  case TelemetryEvent.ParseAdaptiveCardFailed:
175
+ case TelemetryEvent.ReceivedNullOrEmptyToken:
176
+ case TelemetryEvent.GetAuthTokenCalled:
177
+ case TelemetryEvent.SuppressBotMagicCodeSucceeded:
178
+ case TelemetryEvent.SuppressBotMagicCodeFailed:
124
179
  return ScenarioType.CONFIG_VALIDATION;
125
-
126
180
  case TelemetryEvent.WebChatLoaded:
127
181
  case TelemetryEvent.WidgetLoadComplete:
128
182
  case TelemetryEvent.WidgetLoadFailed:
@@ -130,13 +184,13 @@ export class TelemetryConstants {
130
184
  case TelemetryEvent.LCWChatButtonShow:
131
185
  case TelemetryEvent.PrechatSurveyLoaded:
132
186
  case TelemetryEvent.LoadingPaneLoaded:
187
+ case TelemetryEvent.PostChatSurveyLoadingPaneLoaded:
133
188
  case TelemetryEvent.PostChatSurveyLoaded:
134
189
  case TelemetryEvent.EmailTranscriptLoaded:
135
190
  case TelemetryEvent.OutOfOfficePaneLoaded:
136
191
  case TelemetryEvent.ConfirmationPaneLoaded:
137
192
  case TelemetryEvent.ProactiveChatPaneLoaded:
138
193
  return ScenarioType.LOAD;
139
-
140
194
  case TelemetryEvent.PrechatSubmitted:
141
195
  case TelemetryEvent.LCWChatButtonClicked:
142
196
  case TelemetryEvent.ProactiveChatAccepted:
@@ -156,19 +210,34 @@ export class TelemetryConstants {
156
210
  case TelemetryEvent.PreChatSurveyStartChatMethodFailed:
157
211
  case TelemetryEvent.HeaderCloseButtonClicked:
158
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:
159
224
  return ScenarioType.ACTIONS;
160
-
225
+ case TelemetryEvent.StartChatSDKCall:
226
+ case TelemetryEvent.StartChatEventRecevied:
161
227
  case TelemetryEvent.StartChatMethodException:
162
228
  case TelemetryEvent.CloseChatMethodException:
229
+ case TelemetryEvent.StartProactiveChatEventReceived:
163
230
  case TelemetryEvent.StartProactiveChatMethodFailed:
164
231
  case TelemetryEvent.OnNewMessageFailed:
165
232
  case TelemetryEvent.OnNewMessageAudioNotificationFailed:
166
233
  case TelemetryEvent.GetConversationDetailsCallFailed:
234
+ case TelemetryEvent.EndChatSDKCall:
235
+ case TelemetryEvent.EndChatEventReceived:
167
236
  case TelemetryEvent.EndChatSDKCallFailed:
168
237
  case TelemetryEvent.PostChatContextCallFailed:
169
238
  case TelemetryEvent.PostChatContextCallSucceed:
239
+ case TelemetryEvent.GetConversationDetailsException:
170
240
  return ScenarioType.SDK;
171
-
172
241
  case TelemetryEvent.VideoCallAcceptButtonClick:
173
242
  case TelemetryEvent.CallAdded:
174
243
  case TelemetryEvent.LocalVideoStreamAdded:
@@ -178,8 +247,8 @@ export class TelemetryConstants {
178
247
  case TelemetryEvent.CallDisconnected:
179
248
  case TelemetryEvent.CallDisconnectedException:
180
249
  case TelemetryEvent.IncomingCallEnded:
181
- case TelemetryEvent.VoiceVideoInitialize:
182
- case TelemetryEvent.VoiceVideoInitializeException:
250
+ case TelemetryEvent.VoiceVideoSdkInitialize:
251
+ case TelemetryEvent.VoiceVideoSdkInitializeException:
183
252
  case TelemetryEvent.VoiceVideoLoading:
184
253
  case TelemetryEvent.VoiceVideoNotLoaded:
185
254
  case TelemetryEvent.VoiceVideoLoadingException:
@@ -199,14 +268,11 @@ export class TelemetryConstants {
199
268
  case TelemetryEvent.CallingSDKLoadSuccess:
200
269
  case TelemetryEvent.CallingSDKLoadFailed:
201
270
  return ScenarioType.CALLING;
202
-
203
271
  default:
204
272
  return ScenarioType.ACTIONS;
205
273
  }
206
274
  }
207
-
208
275
  static mapEventToScenario(eventTypeOrScenarioType) {
209
276
  return TelemetryConstants.map(eventTypeOrScenarioType);
210
277
  }
211
-
212
278
  }
@@ -1,6 +1,5 @@
1
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
-
3
- import { ScenarioType } from "./TelemetryConstants";
2
+ import { ScenarioType, TelemetryEvent } from "./TelemetryConstants";
4
3
  import { newGuid } from "../utils";
5
4
  import { TelemetryManager } from "./TelemetryManager";
6
5
  import { BroadcastService } from "@microsoft/omnichannel-chat-components";
@@ -9,35 +8,27 @@ export class TelemetryHelper {
9
8
  switch (input.scenarioType) {
10
9
  case ScenarioType.LOAD:
11
10
  return TelemetryHelper.conformToLoadContract(level, input);
12
-
13
11
  case ScenarioType.IC3_CLIENT:
14
12
  return TelemetryHelper.conformToIC3ClientContract(level, input);
15
-
16
13
  case ScenarioType.WEBCHAT:
17
14
  return TelemetryHelper.conformToWebChatContract(level, input);
18
-
19
15
  case ScenarioType.OCCHATSDK:
20
16
  return TelemetryHelper.conformToOCChatSDKContract(level, input);
21
-
22
17
  case ScenarioType.ACTIONS:
23
18
  return TelemetryHelper.conformToActionsContract(level, input);
24
-
25
19
  case ScenarioType.CALLING:
26
20
  return TelemetryHelper.conformToCallingContract(level, input);
27
-
28
21
  case ScenarioType.ACS_ADAPTER:
29
22
  return TelemetryHelper.conformToACSAdapterContract(level, input);
30
-
31
23
  default:
32
24
  case ScenarioType.CONFIG_VALIDATION:
33
25
  return TelemetryHelper.conformToConfigValidationContract(level, input);
34
26
  }
35
27
  }
36
-
37
- static populateBasicProperties(level, // eslint-disable-next-line @typescript-eslint/no-unused-vars
28
+ static populateBasicProperties(level,
29
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
38
30
  telemetryData) {
39
31
  var _TelemetryManager$Int, _TelemetryManager$Int2, _TelemetryManager$Int3, _TelemetryManager$Int4, _TelemetryManager$Int5, _TelemetryManager$Int6, _TelemetryManager$Int7;
40
-
41
32
  return {
42
33
  WidgetId: ((_TelemetryManager$Int = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int === void 0 ? void 0 : _TelemetryManager$Int.widgetId) ?? "",
43
34
  ChatId: ((_TelemetryManager$Int2 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int2 === void 0 ? void 0 : _TelemetryManager$Int2.chatId) ?? "",
@@ -49,14 +40,12 @@ export class TelemetryHelper {
49
40
  LogLevel: level
50
41
  };
51
42
  }
52
-
53
43
  static populate(level, telemetryData, configure) {
54
44
  const base = TelemetryHelper.populateBasicProperties(level, telemetryData);
55
45
  const event = base;
56
46
  configure(event);
57
47
  return event;
58
48
  }
59
-
60
49
  static conformToActionsContract(level, input) {
61
50
  const payload = input.payload;
62
51
  return TelemetryHelper.populate(level, payload, event => {
@@ -64,9 +53,9 @@ export class TelemetryHelper {
64
53
  event.ActionType = payload.ActionType;
65
54
  event.ElapsedTimeInMilliseconds = payload.ElapsedTimeInMilliseconds;
66
55
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
56
+ event.Description = payload.Description;
67
57
  });
68
58
  }
69
-
70
59
  static conformToWebChatContract(level, input) {
71
60
  const payload = input.payload;
72
61
  return TelemetryHelper.populate(level, payload, event => {
@@ -78,12 +67,10 @@ export class TelemetryHelper {
78
67
  event.ExceptionDetails = JSON.stringify(payload.error);
79
68
  });
80
69
  }
81
-
82
70
  static conformToConfigValidationContract(level, input) {
83
71
  const payload = input.payload;
84
72
  return TelemetryHelper.populate(level, payload, event => {
85
73
  var _TelemetryManager$Int8, _TelemetryManager$Int9, _TelemetryManager$Int10;
86
-
87
74
  event.Event = payload.Event;
88
75
  event.RequestId = payload.RequestId;
89
76
  event.LCWVersion = (_TelemetryManager$Int8 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int8 === void 0 ? void 0 : _TelemetryManager$Int8.environmentVersion;
@@ -92,12 +79,13 @@ export class TelemetryHelper {
92
79
  event.ElapsedTimeInMilliseconds = payload.ElapsedTimeInMilliseconds;
93
80
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
94
81
  event.Language = ((_TelemetryManager$Int10 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int10 === void 0 ? void 0 : _TelemetryManager$Int10.chatWidgetLocaleLCID) || "";
82
+ event.Description = payload.Data;
95
83
  });
96
84
  }
97
-
98
85
  static conformToLoadContract(level, input) {
99
86
  const payload = input.payload;
100
87
  return TelemetryHelper.populate(level, payload, event => {
88
+ var _TelemetryManager$Int11, _TelemetryManager$Int12, _TelemetryManager$Int13;
101
89
  event.Event = payload.Event;
102
90
  event.ResourcePath = payload.ResourcePath;
103
91
  event.WidgetState = payload.WidgetState;
@@ -105,16 +93,17 @@ export class TelemetryHelper {
105
93
  event.ChatType = payload.ChatType;
106
94
  event.ElapsedTimeInMilliseconds = payload.ElapsedTimeInMilliseconds;
107
95
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
96
+ event.OCChatSDKVersion = ((_TelemetryManager$Int11 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int11 === void 0 ? void 0 : _TelemetryManager$Int11.OCChatSDKVersion) ?? "";
97
+ event.OCChatWidgetVersion = ((_TelemetryManager$Int12 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int12 === void 0 ? void 0 : _TelemetryManager$Int12.chatWidgetVersion) ?? "";
98
+ event.OCChatComponentsVersion = ((_TelemetryManager$Int13 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int13 === void 0 ? void 0 : _TelemetryManager$Int13.chatComponentVersion) ?? "";
108
99
  });
109
100
  }
110
-
111
101
  static conformToIC3ClientContract(level, input) {
112
102
  const payload = input.payload;
113
103
  return TelemetryHelper.populate(level, payload, event => {
114
- var _TelemetryManager$Int11;
115
-
104
+ var _TelemetryManager$Int14;
116
105
  event.Event = payload.Event;
117
- event.IC3ClientVersion = (_TelemetryManager$Int11 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int11 === void 0 ? void 0 : _TelemetryManager$Int11.IC3ClientVersion;
106
+ event.IC3ClientVersion = (_TelemetryManager$Int14 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int14 === void 0 ? void 0 : _TelemetryManager$Int14.IC3ClientVersion;
118
107
  event.SubscriptionId = payload.SubscriptionId;
119
108
  event.EndpointUrl = payload.EndpointUrl;
120
109
  event.EndpointId = payload.EndpointId;
@@ -125,7 +114,6 @@ export class TelemetryHelper {
125
114
  event.Description = payload.Description;
126
115
  });
127
116
  }
128
-
129
117
  static conformToACSAdapterContract(level, input) {
130
118
  const payload = input.payload;
131
119
  return TelemetryHelper.populate(level, payload, event => {
@@ -139,7 +127,6 @@ export class TelemetryHelper {
139
127
  event.ExceptionDetails = payload.ExceptionDetails;
140
128
  });
141
129
  }
142
-
143
130
  static conformToCallingContract(level, input) {
144
131
  const payload = input.payload;
145
132
  return TelemetryHelper.populate(level, payload, event => {
@@ -150,7 +137,6 @@ export class TelemetryHelper {
150
137
  event.Description = payload.Description;
151
138
  });
152
139
  }
153
-
154
140
  static conformToOCChatSDKContract(level, input) {
155
141
  const payload = input.payload;
156
142
  return TelemetryHelper.populate(level, payload, event => {
@@ -162,15 +148,12 @@ export class TelemetryHelper {
162
148
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
163
149
  });
164
150
  }
165
-
166
151
  static addChatConfigDataToTelemetry(chatConfig, telemetryInternalData) {
167
152
  var _chatConfig$ChatWidge;
168
-
169
153
  const telemetryDataLocal = telemetryInternalData;
170
154
  telemetryDataLocal.chatWidgetLocaleLCID = (_chatConfig$ChatWidge = chatConfig.ChatWidgetLanguage) === null || _chatConfig$ChatWidge === void 0 ? void 0 : _chatConfig$ChatWidge.msdyn_localeid;
171
155
  return telemetryDataLocal;
172
156
  }
173
-
174
157
  static addWidgetDataToTelemetry(telemetryConfig, telemetryInternalData) {
175
158
  const telemetryDataLocal = telemetryInternalData;
176
159
  telemetryDataLocal.widgetId = telemetryConfig === null || telemetryConfig === void 0 ? void 0 : telemetryConfig.appId;
@@ -179,78 +162,83 @@ export class TelemetryHelper {
179
162
  telemetryDataLocal.lcwRuntimeId = newGuid();
180
163
  return telemetryDataLocal;
181
164
  }
182
-
183
165
  static addSessionDataToTelemetry(chatSession, telemetryInternalData) {
184
166
  var _chatSession$chatToke, _chatSession$chatToke2;
185
-
186
167
  const telemetryDataLocal = telemetryInternalData;
187
168
  telemetryDataLocal.chatId = chatSession === null || chatSession === void 0 ? void 0 : (_chatSession$chatToke = chatSession.chatToken) === null || _chatSession$chatToke === void 0 ? void 0 : _chatSession$chatToke.chatId;
188
169
  telemetryDataLocal.currentRequestId = chatSession === null || chatSession === void 0 ? void 0 : (_chatSession$chatToke2 = chatSession.chatToken) === null || _chatSession$chatToke2 === void 0 ? void 0 : _chatSession$chatToke2.requestId;
189
170
  return telemetryInternalData;
190
171
  }
191
-
192
172
  static addConversationDataToTelemetry(liveWorkItem, telemetryInternalData) {
193
173
  const telemetryDataLocal = telemetryInternalData;
194
174
  telemetryDataLocal.conversationId = liveWorkItem.conversationId;
195
175
  return telemetryDataLocal;
196
176
  }
197
-
198
177
  }
199
-
200
178
  _defineProperty(TelemetryHelper, "callId", void 0);
201
-
202
179
  _defineProperty(TelemetryHelper, "elapsedTime", void 0);
203
-
204
180
  _defineProperty(TelemetryHelper, "logCallingEvent", (logLevel, payload, callId) => {
205
181
  const telemetryEvent = {
206
182
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
207
183
  logLevel: logLevel,
208
- payload: { ...payload,
184
+ payload: {
185
+ ...payload,
209
186
  CallId: callId
210
187
  }
211
188
  };
212
189
  BroadcastService.postMessage(telemetryEvent);
213
190
  });
214
-
215
191
  _defineProperty(TelemetryHelper, "logLoadingEvent", (logLevel, payload) => {
216
192
  const telemetryEvent = {
217
193
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
218
194
  logLevel: logLevel,
219
- payload: { ...payload
195
+ payload: {
196
+ ...payload
220
197
  }
221
198
  };
222
199
  BroadcastService.postMessage(telemetryEvent);
223
200
  });
224
-
225
201
  _defineProperty(TelemetryHelper, "logActionEvent", (logLevel, payload) => {
226
202
  const telemetryEvent = {
227
203
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
228
204
  logLevel: logLevel,
229
- payload: { ...payload
205
+ payload: {
206
+ ...payload
230
207
  }
231
208
  };
232
209
  BroadcastService.postMessage(telemetryEvent);
233
210
  });
234
-
235
211
  _defineProperty(TelemetryHelper, "logSDKEvent", (logLevel, payload) => {
236
- var _TelemetryManager$Int12;
237
-
212
+ var _TelemetryManager$Int15;
238
213
  const telemetryEvent = {
239
214
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
240
215
  logLevel: logLevel,
241
- payload: { ...payload,
216
+ payload: {
217
+ ...payload,
242
218
  TransactionId: newGuid(),
243
- RequestId: (_TelemetryManager$Int12 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int12 === void 0 ? void 0 : _TelemetryManager$Int12.currentRequestId
219
+ RequestId: (_TelemetryManager$Int15 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int15 === void 0 ? void 0 : _TelemetryManager$Int15.currentRequestId
244
220
  }
245
221
  };
246
222
  BroadcastService.postMessage(telemetryEvent);
247
223
  });
248
-
249
224
  _defineProperty(TelemetryHelper, "logConfigDataEvent", (logLevel, payload) => {
250
225
  const telemetryEvent = {
251
226
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
252
227
  logLevel: logLevel,
253
- payload: { ...payload
228
+ payload: {
229
+ ...payload
230
+ }
231
+ };
232
+ BroadcastService.postMessage(telemetryEvent);
233
+ });
234
+ _defineProperty(TelemetryHelper, "logWebChatEvent", (logLevel, payload) => {
235
+ const telemetryEvent = {
236
+ eventName: TelemetryEvent.WebChatEvent,
237
+ logLevel: logLevel,
238
+ payload: {
239
+ ...payload,
240
+ type: TelemetryEvent.WebChatEvent,
241
+ scenarioType: ScenarioType.WEBCHAT
254
242
  }
255
243
  };
256
244
  BroadcastService.postMessage(telemetryEvent);