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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (311) hide show
  1. package/lib/cjs/assets/Icons.js +4 -2
  2. package/lib/cjs/common/Constants.js +26 -169
  3. package/lib/cjs/common/KeyCodes.js +3 -4
  4. package/lib/cjs/common/contextDataStore/DataStoreManager.js +3 -5
  5. package/lib/cjs/common/storage/default/defaultCacheManager.js +26 -0
  6. package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +111 -0
  7. package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +78 -0
  8. package/lib/cjs/common/telemetry/TelemetryConstants.js +39 -23
  9. package/lib/cjs/common/telemetry/TelemetryHelper.js +21 -59
  10. package/lib/cjs/common/telemetry/TelemetryManager.js +3 -32
  11. package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +0 -2
  12. package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +30 -36
  13. package/lib/cjs/common/telemetry/loggers/consoleLogger.js +0 -9
  14. package/lib/cjs/common/utils.js +65 -93
  15. package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +8 -46
  16. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +5 -23
  17. package/lib/cjs/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  18. package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +8 -33
  19. package/lib/cjs/components/dimlayer/DimLayer.js +0 -4
  20. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +9 -37
  21. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -8
  22. package/lib/cjs/components/footerstateful/FooterStateful.js +11 -42
  23. package/lib/cjs/components/footerstateful/audionotificationstateful/AudioNotificationStateful.js +0 -6
  24. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -45
  25. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -8
  26. package/lib/cjs/components/headerstateful/HeaderStateful.js +20 -32
  27. package/lib/cjs/components/livechatwidget/LiveChatWidget.js +2 -14
  28. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +39 -0
  29. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +20 -0
  30. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  31. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +34 -0
  32. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +64 -0
  33. package/lib/cjs/components/livechatwidget/common/Deferred.js +37 -0
  34. package/lib/cjs/components/livechatwidget/common/authHelper.js +50 -0
  35. package/lib/cjs/components/livechatwidget/common/createAdapter.js +10 -9
  36. package/lib/cjs/components/livechatwidget/common/createFooter.js +4 -23
  37. package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -10
  38. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +36 -43
  39. package/lib/cjs/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +14 -0
  40. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +127 -51
  41. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
  42. package/lib/cjs/components/livechatwidget/common/endChat.js +92 -45
  43. package/lib/cjs/components/livechatwidget/common/getGeneralStylesForButton.js +0 -6
  44. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +7 -16
  45. package/lib/cjs/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -8
  46. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +27 -53
  47. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +76 -129
  48. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +4 -17
  49. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +2 -15
  50. package/lib/cjs/components/livechatwidget/common/shareObservable.js +41 -0
  51. package/lib/cjs/components/livechatwidget/common/startChat.js +235 -127
  52. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +0 -8
  53. package/lib/cjs/components/livechatwidget/common/updateSessionDataForTelemetry.js +2 -11
  54. package/lib/cjs/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  55. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +294 -250
  56. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +26 -19
  57. package/lib/cjs/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +57 -0
  58. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +4 -17
  59. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -17
  60. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -23
  61. package/lib/cjs/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  62. package/lib/cjs/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +13 -0
  63. package/lib/cjs/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  64. package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  65. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +11 -43
  66. package/lib/cjs/components/prechatsurveypanestateful/common/defaultStyles/defaultGeneralPreChatSurveyPaneStyleProps.js +1 -1
  67. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +3 -33
  68. package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -24
  69. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +29 -34
  70. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -7
  71. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -6
  72. package/lib/cjs/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +11 -0
  73. package/lib/cjs/components/webchatcontainerstateful/common/mockadapter.js +12 -27
  74. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +6 -17
  75. package/lib/cjs/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -24
  76. package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -15
  77. package/lib/cjs/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -8
  78. package/lib/cjs/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  79. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +3 -5
  80. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -5
  81. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  82. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  83. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  84. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  85. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  86. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  87. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  88. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  89. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +0 -7
  90. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -5
  91. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -41
  92. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +10 -22
  93. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -61
  94. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +7 -15
  95. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -13
  96. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -16
  97. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +10 -0
  98. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
  99. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -3
  100. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -3
  101. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
  102. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -9
  103. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +2 -30
  104. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +7 -18
  105. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +8 -42
  106. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +4 -22
  107. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +13 -30
  108. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +3 -9
  109. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -34
  110. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +1 -10
  111. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +1 -12
  112. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -19
  113. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +1 -9
  114. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -9
  115. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +13 -34
  116. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +1 -10
  117. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +7 -11
  118. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +5 -14
  119. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -21
  120. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -12
  121. package/lib/cjs/contexts/ChatAdapterStore.js +0 -2
  122. package/lib/cjs/contexts/ChatContextStore.js +0 -2
  123. package/lib/cjs/contexts/ChatSDKStore.js +0 -2
  124. package/lib/cjs/contexts/common/ConversationState.js +3 -3
  125. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +30 -28
  126. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +14 -13
  127. package/lib/cjs/contexts/createReducer.js +159 -105
  128. package/lib/cjs/controller/componentController.js +4 -33
  129. package/lib/cjs/hooks/useChatAdapterStore.js +0 -6
  130. package/lib/cjs/hooks/useChatContextStore.js +0 -6
  131. package/lib/cjs/hooks/useChatSDKStore.js +0 -6
  132. package/lib/cjs/hooks/useDebounce.js +28 -0
  133. package/lib/cjs/hooks/useWindowDimensions.js +30 -0
  134. package/lib/cjs/index.js +0 -5
  135. package/lib/cjs/plugins/newMessageEventHandler.js +19 -36
  136. package/lib/esm/assets/Icons.js +2 -1
  137. package/lib/esm/common/Constants.js +23 -156
  138. package/lib/esm/common/KeyCodes.js +3 -3
  139. package/lib/esm/common/contextDataStore/DataStoreManager.js +3 -3
  140. package/lib/esm/common/storage/default/defaultCacheManager.js +18 -0
  141. package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +104 -0
  142. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +70 -0
  143. package/lib/esm/common/telemetry/TelemetryConstants.js +43 -20
  144. package/lib/esm/common/telemetry/TelemetryHelper.js +21 -47
  145. package/lib/esm/common/telemetry/TelemetryManager.js +3 -19
  146. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +28 -24
  147. package/lib/esm/common/telemetry/loggers/consoleLogger.js +0 -5
  148. package/lib/esm/common/utils.js +60 -50
  149. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +8 -17
  150. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +5 -6
  151. package/lib/esm/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  152. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +10 -14
  153. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +9 -16
  154. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
  155. package/lib/esm/components/footerstateful/FooterStateful.js +13 -23
  156. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -35
  157. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -6
  158. package/lib/esm/components/headerstateful/HeaderStateful.js +20 -17
  159. package/lib/esm/components/livechatwidget/LiveChatWidget.js +2 -2
  160. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +32 -0
  161. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +13 -0
  162. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  163. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +27 -0
  164. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +57 -0
  165. package/lib/esm/components/livechatwidget/common/Deferred.js +30 -0
  166. package/lib/esm/components/livechatwidget/common/authHelper.js +42 -0
  167. package/lib/esm/components/livechatwidget/common/createAdapter.js +12 -4
  168. package/lib/esm/components/livechatwidget/common/createFooter.js +4 -16
  169. package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -5
  170. package/lib/esm/components/livechatwidget/common/createMarkdown.js +38 -37
  171. package/lib/esm/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +7 -0
  172. package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +128 -37
  173. package/lib/esm/components/livechatwidget/common/endChat.js +94 -30
  174. package/lib/esm/components/livechatwidget/common/getGeneralStylesForButton.js +0 -2
  175. package/lib/esm/components/livechatwidget/common/initCallingSdk.js +9 -11
  176. package/lib/esm/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -5
  177. package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +30 -20
  178. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +77 -111
  179. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +4 -9
  180. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +4 -7
  181. package/lib/esm/components/livechatwidget/common/shareObservable.js +35 -0
  182. package/lib/esm/components/livechatwidget/common/startChat.js +233 -103
  183. package/lib/esm/components/livechatwidget/common/updateSessionDataForTelemetry.js +4 -2
  184. package/lib/esm/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  185. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +297 -188
  186. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +26 -7
  187. package/lib/esm/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +50 -0
  188. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +4 -5
  189. package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -5
  190. package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -11
  191. package/lib/esm/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  192. package/lib/esm/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +6 -0
  193. package/lib/esm/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  194. package/lib/esm/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  195. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +14 -27
  196. package/lib/esm/components/prechatsurveypanestateful/common/defaultStyles/defaultGeneralPreChatSurveyPaneStyleProps.js +1 -1
  197. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +5 -9
  198. package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -6
  199. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +27 -9
  200. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -1
  201. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
  202. package/lib/esm/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +4 -0
  203. package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +12 -19
  204. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +6 -13
  205. package/lib/esm/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -16
  206. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -5
  207. package/lib/esm/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -6
  208. package/lib/esm/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  209. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +3 -3
  210. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -3
  211. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  212. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  213. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  214. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  215. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  216. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  217. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  218. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  219. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +2 -5
  220. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -4
  221. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -26
  222. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +12 -14
  223. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -39
  224. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +9 -8
  225. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -9
  226. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -14
  227. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +3 -0
  228. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +3 -0
  229. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -1
  230. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -1
  231. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +3 -0
  232. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -7
  233. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +4 -28
  234. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +8 -9
  235. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +9 -28
  236. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +5 -14
  237. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +15 -19
  238. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +5 -8
  239. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -29
  240. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +3 -7
  241. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +3 -8
  242. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -14
  243. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +3 -7
  244. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -7
  245. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +15 -27
  246. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +3 -5
  247. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +9 -9
  248. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +7 -9
  249. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -13
  250. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -5
  251. package/lib/esm/contexts/ChatAdapterStore.js +2 -1
  252. package/lib/esm/contexts/ChatContextStore.js +2 -1
  253. package/lib/esm/contexts/ChatSDKStore.js +2 -1
  254. package/lib/esm/contexts/common/ConversationState.js +3 -3
  255. package/lib/esm/contexts/common/LiveChatWidgetActionType.js +30 -28
  256. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +14 -9
  257. package/lib/esm/contexts/createReducer.js +159 -102
  258. package/lib/esm/controller/componentController.js +5 -4
  259. package/lib/esm/hooks/useChatAdapterStore.js +0 -4
  260. package/lib/esm/hooks/useChatContextStore.js +0 -4
  261. package/lib/esm/hooks/useChatSDKStore.js +0 -4
  262. package/lib/esm/hooks/useDebounce.js +22 -0
  263. package/lib/esm/hooks/useWindowDimensions.js +23 -0
  264. package/lib/esm/plugins/newMessageEventHandler.js +19 -26
  265. package/lib/types/assets/Icons.d.ts +1 -0
  266. package/lib/types/common/Constants.d.ts +16 -0
  267. package/lib/types/common/storage/default/defaultCacheManager.d.ts +4 -0
  268. package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +2 -0
  269. package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -0
  270. package/lib/types/common/telemetry/TelemetryConstants.d.ts +26 -5
  271. package/lib/types/common/telemetry/definitions/Contracts.d.ts +4 -4
  272. package/lib/types/common/telemetry/definitions/Payload.d.ts +1 -0
  273. package/lib/types/common/telemetry/interfaces/ITelemetryConfig.d.ts +4 -0
  274. package/lib/types/common/utils.d.ts +7 -3
  275. package/lib/types/components/headerstateful/interfaces/IHeaderStatefulParams.d.ts +2 -1
  276. package/lib/types/components/livechatwidget/common/ActivityStreamHandler.d.ts +14 -0
  277. package/lib/types/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.d.ts +5 -0
  278. package/lib/types/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.d.ts +6 -0
  279. package/lib/types/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.d.ts +7 -0
  280. package/lib/types/components/livechatwidget/common/ChatAdapterShim.d.ts +7 -0
  281. package/lib/types/components/livechatwidget/common/Deferred.d.ts +9 -0
  282. package/lib/types/components/livechatwidget/common/authHelper.d.ts +5 -0
  283. package/lib/types/components/livechatwidget/common/defaultProps/defaultScrollBarProps.d.ts +2 -0
  284. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +6 -7
  285. package/lib/types/components/livechatwidget/common/shareObservable.d.ts +1 -0
  286. package/lib/types/components/livechatwidget/common/startChat.d.ts +5 -2
  287. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +4 -1
  288. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +5 -2
  289. package/lib/types/components/livechatwidget/interfaces/IScrollBarProps.d.ts +22 -0
  290. package/lib/types/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.d.ts +2 -0
  291. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
  292. package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -0
  293. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
  294. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +0 -2
  295. package/lib/types/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.d.ts +2 -0
  296. package/lib/types/components/webchatcontainerstateful/common/mockchatsdk.d.ts +1 -0
  297. package/lib/types/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.d.ts +4 -0
  298. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +4 -1
  299. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatContainerStatefulProps.d.ts +2 -0
  300. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.d.ts +1 -1
  301. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +2 -0
  302. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  303. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  304. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.d.ts +1 -1
  305. package/lib/types/contexts/common/ConversationState.d.ts +3 -2
  306. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +4 -3
  307. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +30 -27
  308. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
  309. package/lib/types/hooks/useDebounce.d.ts +3 -0
  310. package/lib/types/hooks/useWindowDimensions.d.ts +4 -0
  311. package/package.json +5 -4
@@ -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,18 @@ 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
28
  BroadcastEvent["ChatEnded"] = "ChatEnded";
@@ -37,9 +36,9 @@ export let BroadcastEvent; // Events being logged
37
36
  BroadcastEvent["InvalidAdaptiveCardFormat"] = "InvalidAdaptiveCardFormat";
38
37
  BroadcastEvent["NewMessageSent"] = "NewMessageSent";
39
38
  BroadcastEvent["NewMessageReceived"] = "NewMessageReceived";
39
+ BroadcastEvent["HistoryMessageReceived"] = "HistoryMessageReceived";
40
40
  BroadcastEvent["RedirectPageRequest"] = "RedirectPageRequest";
41
41
  BroadcastEvent["StartChat"] = "StartChat";
42
- BroadcastEvent["StartChatSkippingChatButtonRendering"] = "StartChatSkippingChatButtonRendering";
43
42
  BroadcastEvent["StartUnauthenticatedReconnectChat"] = "StartUnauthenticatedReconnectChat";
44
43
  BroadcastEvent["InitiateEndChat"] = "InitiateEndChat";
45
44
  BroadcastEvent["SetCustomContext"] = "SetCustomContext";
@@ -47,10 +46,13 @@ export let BroadcastEvent; // Events being logged
47
46
  BroadcastEvent["MaximizeChat"] = "MaximizeChat";
48
47
  BroadcastEvent["ChatInitiated"] = "ChatInitiated";
49
48
  BroadcastEvent["CloseChat"] = "CloseChat";
49
+ BroadcastEvent["InitiateEndChatOnBrowserUnload"] = "InitiateEndChatOnBrowserUnload";
50
+ BroadcastEvent["ClosePopoutWindow"] = "ClosePopoutWindow";
51
+ BroadcastEvent["RaiseErrorEvent"] = "RaiseErrorEvent";
52
+ BroadcastEvent["NetworkDisconnected"] = "NetworkDisconnected";
53
+ BroadcastEvent["NetworkReconnected"] = "NetworkReconnected";
50
54
  })(BroadcastEvent || (BroadcastEvent = {}));
51
-
52
55
  export let TelemetryEvent;
53
-
54
56
  (function (TelemetryEvent) {
55
57
  TelemetryEvent["CallAdded"] = "CallAdded";
56
58
  TelemetryEvent["LocalVideoStreamAdded"] = "LocalVideoStreamAdded";
@@ -60,8 +62,8 @@ export let TelemetryEvent;
60
62
  TelemetryEvent["CallDisconnected"] = "CallDisconnected";
61
63
  TelemetryEvent["CallDisconnectedException"] = "CallDisconnectedException";
62
64
  TelemetryEvent["IncomingCallEnded"] = "incomingCallEnded";
63
- TelemetryEvent["VoiceVideoInitialize"] = "VoiceVideoInitialize";
64
- TelemetryEvent["VoiceVideoInitializeException"] = "VoiceVideoInitializeException";
65
+ TelemetryEvent["VoiceVideoSdkInitialize"] = "VoiceVideoSdkInitialize";
66
+ TelemetryEvent["VoiceVideoSdkInitializeException"] = "VoiceVideoSdkInitializeException";
65
67
  TelemetryEvent["VoiceVideoLoading"] = "VoiceVideoLoading";
66
68
  TelemetryEvent["VoiceVideoNotLoaded"] = "VoiceVideoNotLoaded";
67
69
  TelemetryEvent["VoiceVideoLoadingException"] = "VoiceVideoLoadingException";
@@ -87,9 +89,12 @@ export let TelemetryEvent;
87
89
  TelemetryEvent["PostChatContextCallSucceed"] = "PostChatContextCallSucceed";
88
90
  TelemetryEvent["PostChatContextCallFailed"] = "PostChatContextCallFailed";
89
91
  TelemetryEvent["ParseAdaptiveCardFailed"] = "ParseAdaptiveCardFailed";
92
+ TelemetryEvent["ClientDataStoreProviderFailed"] = "ClientDataStoreProviderFailed";
93
+ TelemetryEvent["InMemoryDataStoreFailed"] = "InMemoryDataStoreFailed";
90
94
  TelemetryEvent["WebChatLoaded"] = "WebChatLoaded";
91
95
  TelemetryEvent["LCWChatButtonClicked"] = "LCWChatButtonClicked";
92
96
  TelemetryEvent["LCWChatButtonShow"] = "LCWChatButtonShow";
97
+ TelemetryEvent["WidgetLoadStarted"] = "WidgetLoadStarted";
93
98
  TelemetryEvent["WidgetLoadComplete"] = "WidgetLoadComplete";
94
99
  TelemetryEvent["WidgetLoadFailed"] = "WidgetLoadFailed";
95
100
  TelemetryEvent["StartChatMethodException"] = "StartChatMethodException";
@@ -106,6 +111,7 @@ export let TelemetryEvent;
106
111
  TelemetryEvent["DownloadTranscriptResponseNullOrUndefined"] = "DownloadTranscriptResponseNullOrUndefined";
107
112
  TelemetryEvent["EmailTranscriptSent"] = "EmailTranscriptSent";
108
113
  TelemetryEvent["EmailTranscriptFailed"] = "EmailTranscriptFailed";
114
+ TelemetryEvent["ErrorUIPaneLoaded"] = "ErrorUIPaneLoaded";
109
115
  TelemetryEvent["DownloadTranscriptFailed"] = "DownloadTranscriptFailed";
110
116
  TelemetryEvent["StartChatFailed"] = "StartChatFailed";
111
117
  TelemetryEvent["IC3ThreadUpdateEventReceived"] = "IC3ThreadUpdateEventReceived";
@@ -127,12 +133,21 @@ export let TelemetryEvent;
127
133
  TelemetryEvent["AudioToggleButtonClicked"] = "AudioToggleButtonClicked";
128
134
  TelemetryEvent["SuppressBotMagicCodeSucceeded"] = "SuppressBotMagicCodeSucceeded";
129
135
  TelemetryEvent["SuppressBotMagicCodeFailed"] = "SuppressBotMagicCodeFailed";
136
+ TelemetryEvent["GetConversationDetailsException"] = "GetConversationDetailsException";
137
+ TelemetryEvent["BrowserUnloadEventStarted"] = "BrowserUnloadEventStarted";
138
+ TelemetryEvent["GetAuthTokenCalled"] = "GetAuthTokenCalled";
139
+ TelemetryEvent["GetAuthTokenFailed"] = "GetAuthTokenFailed";
140
+ TelemetryEvent["ReceivedNullOrEmptyToken"] = "ReceivedNullOrEmptyToken";
141
+ TelemetryEvent["CustomerVoiceResponsePageLoaded"] = "CustomerVoiceResponsePageLoaded";
142
+ TelemetryEvent["CustomerVoiceFormResponseSubmitted"] = "CustomerVoiceFormResponseSubmitted";
143
+ TelemetryEvent["CustomerVoiceFormResponseError"] = "CustomerVoiceFormResponseError";
130
144
  TelemetryEvent["ProcessingHTMLTextMiddlewareFailed"] = "ProcessingHTMLTextMiddlewareFailed";
131
145
  TelemetryEvent["ProcessingSanitizationMiddlewareFailed"] = "ProcessingSanitizationMiddlewareFailed";
132
146
  TelemetryEvent["FormatTagsMiddlewareJSONStringifyFailed"] = "FormatTagsMiddlewareJSONStringifyFailed";
133
147
  TelemetryEvent["QueuePositionMessageRecieved"] = "QueuePositionMessageRecieved";
134
148
  TelemetryEvent["AverageWaitTimeMessageRecieved"] = "AverageWaitTimeMessageRecieved";
135
149
  TelemetryEvent["DataMaskingRuleApplied"] = "DataMaskingRuleApplied";
150
+ TelemetryEvent["DataMaskingRuleApplyFailed"] = "DataMaskingRuleApplyFailed";
136
151
  TelemetryEvent["IC3ClientEvent"] = "IC3ClientEvent";
137
152
  TelemetryEvent["ConversationEndedThreadEventReceived"] = "ConversationEndedThreadEventReceived";
138
153
  TelemetryEvent["InvalidConfiguration"] = "InvalidConfiguration";
@@ -152,15 +167,20 @@ export let TelemetryEvent;
152
167
  TelemetryEvent["ReconnectChatMinimize"] = "ReconnectChatMinimize";
153
168
  TelemetryEvent["MessageSent"] = "MessageSent";
154
169
  TelemetryEvent["MessageReceived"] = "MessageReceived";
170
+ TelemetryEvent["SystemMessageReceived"] = "SystemMessageReceived";
155
171
  TelemetryEvent["CustomContextReceived"] = "CustomContextReceived";
172
+ TelemetryEvent["NetworkDisconnected"] = "NetworkDisconnected";
173
+ TelemetryEvent["NetworkReconnected"] = "NetworkReconnected";
156
174
  })(TelemetryEvent || (TelemetryEvent = {}));
157
-
158
175
  export class TelemetryConstants {
159
176
  static map(eventTypeOrScenarioType) {
160
177
  switch (eventTypeOrScenarioType) {
161
178
  case TelemetryEvent.ParseAdaptiveCardFailed:
179
+ case TelemetryEvent.ReceivedNullOrEmptyToken:
180
+ case TelemetryEvent.GetAuthTokenCalled:
181
+ case TelemetryEvent.SuppressBotMagicCodeSucceeded:
182
+ case TelemetryEvent.SuppressBotMagicCodeFailed:
162
183
  return ScenarioType.CONFIG_VALIDATION;
163
-
164
184
  case TelemetryEvent.WebChatLoaded:
165
185
  case TelemetryEvent.WidgetLoadComplete:
166
186
  case TelemetryEvent.WidgetLoadFailed:
@@ -175,7 +195,6 @@ export class TelemetryConstants {
175
195
  case TelemetryEvent.ConfirmationPaneLoaded:
176
196
  case TelemetryEvent.ProactiveChatPaneLoaded:
177
197
  return ScenarioType.LOAD;
178
-
179
198
  case TelemetryEvent.PrechatSubmitted:
180
199
  case TelemetryEvent.LCWChatButtonClicked:
181
200
  case TelemetryEvent.ProactiveChatAccepted:
@@ -198,8 +217,15 @@ export class TelemetryConstants {
198
217
  case TelemetryEvent.MessageSent:
199
218
  case TelemetryEvent.MessageReceived:
200
219
  case TelemetryEvent.CustomContextReceived:
220
+ case TelemetryEvent.BrowserUnloadEventStarted:
221
+ case TelemetryEvent.NetworkDisconnected:
222
+ case TelemetryEvent.NetworkReconnected:
223
+ case TelemetryEvent.AudioToggleButtonClicked:
224
+ case TelemetryEvent.EmailTranscriptCancelButtonClicked:
225
+ case TelemetryEvent.CustomerVoiceResponsePageLoaded:
226
+ case TelemetryEvent.CustomerVoiceFormResponseSubmitted:
227
+ case TelemetryEvent.CustomerVoiceFormResponseError:
201
228
  return ScenarioType.ACTIONS;
202
-
203
229
  case TelemetryEvent.StartChatSDKCall:
204
230
  case TelemetryEvent.StartChatEventRecevied:
205
231
  case TelemetryEvent.StartChatMethodException:
@@ -214,8 +240,8 @@ export class TelemetryConstants {
214
240
  case TelemetryEvent.EndChatSDKCallFailed:
215
241
  case TelemetryEvent.PostChatContextCallFailed:
216
242
  case TelemetryEvent.PostChatContextCallSucceed:
243
+ case TelemetryEvent.GetConversationDetailsException:
217
244
  return ScenarioType.SDK;
218
-
219
245
  case TelemetryEvent.VideoCallAcceptButtonClick:
220
246
  case TelemetryEvent.CallAdded:
221
247
  case TelemetryEvent.LocalVideoStreamAdded:
@@ -225,8 +251,8 @@ export class TelemetryConstants {
225
251
  case TelemetryEvent.CallDisconnected:
226
252
  case TelemetryEvent.CallDisconnectedException:
227
253
  case TelemetryEvent.IncomingCallEnded:
228
- case TelemetryEvent.VoiceVideoInitialize:
229
- case TelemetryEvent.VoiceVideoInitializeException:
254
+ case TelemetryEvent.VoiceVideoSdkInitialize:
255
+ case TelemetryEvent.VoiceVideoSdkInitializeException:
230
256
  case TelemetryEvent.VoiceVideoLoading:
231
257
  case TelemetryEvent.VoiceVideoNotLoaded:
232
258
  case TelemetryEvent.VoiceVideoLoadingException:
@@ -246,14 +272,11 @@ export class TelemetryConstants {
246
272
  case TelemetryEvent.CallingSDKLoadSuccess:
247
273
  case TelemetryEvent.CallingSDKLoadFailed:
248
274
  return ScenarioType.CALLING;
249
-
250
275
  default:
251
276
  return ScenarioType.ACTIONS;
252
277
  }
253
278
  }
254
-
255
279
  static mapEventToScenario(eventTypeOrScenarioType) {
256
280
  return TelemetryConstants.map(eventTypeOrScenarioType);
257
281
  }
258
-
259
282
  }
@@ -1,5 +1,6 @@
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
  import { ScenarioType, TelemetryEvent } from "./TelemetryConstants";
4
5
  import { newGuid } from "../utils";
5
6
  import { TelemetryManager } from "./TelemetryManager";
@@ -9,35 +10,27 @@ export class TelemetryHelper {
9
10
  switch (input.scenarioType) {
10
11
  case ScenarioType.LOAD:
11
12
  return TelemetryHelper.conformToLoadContract(level, input);
12
-
13
13
  case ScenarioType.IC3_CLIENT:
14
14
  return TelemetryHelper.conformToIC3ClientContract(level, input);
15
-
16
15
  case ScenarioType.WEBCHAT:
17
16
  return TelemetryHelper.conformToWebChatContract(level, input);
18
-
19
17
  case ScenarioType.OCCHATSDK:
20
18
  return TelemetryHelper.conformToOCChatSDKContract(level, input);
21
-
22
19
  case ScenarioType.ACTIONS:
23
20
  return TelemetryHelper.conformToActionsContract(level, input);
24
-
25
21
  case ScenarioType.CALLING:
26
22
  return TelemetryHelper.conformToCallingContract(level, input);
27
-
28
23
  case ScenarioType.ACS_ADAPTER:
29
24
  return TelemetryHelper.conformToACSAdapterContract(level, input);
30
-
31
25
  default:
32
26
  case ScenarioType.CONFIG_VALIDATION:
33
27
  return TelemetryHelper.conformToConfigValidationContract(level, input);
34
28
  }
35
29
  }
36
-
37
- static populateBasicProperties(level, // eslint-disable-next-line @typescript-eslint/no-unused-vars
30
+ static populateBasicProperties(level,
31
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
38
32
  telemetryData) {
39
33
  var _TelemetryManager$Int, _TelemetryManager$Int2, _TelemetryManager$Int3, _TelemetryManager$Int4, _TelemetryManager$Int5, _TelemetryManager$Int6, _TelemetryManager$Int7;
40
-
41
34
  return {
42
35
  WidgetId: ((_TelemetryManager$Int = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int === void 0 ? void 0 : _TelemetryManager$Int.widgetId) ?? "",
43
36
  ChatId: ((_TelemetryManager$Int2 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int2 === void 0 ? void 0 : _TelemetryManager$Int2.chatId) ?? "",
@@ -49,14 +42,12 @@ export class TelemetryHelper {
49
42
  LogLevel: level
50
43
  };
51
44
  }
52
-
53
45
  static populate(level, telemetryData, configure) {
54
46
  const base = TelemetryHelper.populateBasicProperties(level, telemetryData);
55
47
  const event = base;
56
48
  configure(event);
57
49
  return event;
58
50
  }
59
-
60
51
  static conformToActionsContract(level, input) {
61
52
  const payload = input.payload;
62
53
  return TelemetryHelper.populate(level, payload, event => {
@@ -64,9 +55,10 @@ export class TelemetryHelper {
64
55
  event.ActionType = payload.ActionType;
65
56
  event.ElapsedTimeInMilliseconds = payload.ElapsedTimeInMilliseconds;
66
57
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
58
+ event.Description = payload.Description;
59
+ event.CustomProperties = JSON.stringify(payload.CustomProperties);
67
60
  });
68
61
  }
69
-
70
62
  static conformToWebChatContract(level, input) {
71
63
  const payload = input.payload;
72
64
  return TelemetryHelper.populate(level, payload, event => {
@@ -78,12 +70,10 @@ export class TelemetryHelper {
78
70
  event.ExceptionDetails = JSON.stringify(payload.error);
79
71
  });
80
72
  }
81
-
82
73
  static conformToConfigValidationContract(level, input) {
83
74
  const payload = input.payload;
84
75
  return TelemetryHelper.populate(level, payload, event => {
85
76
  var _TelemetryManager$Int8, _TelemetryManager$Int9, _TelemetryManager$Int10;
86
-
87
77
  event.Event = payload.Event;
88
78
  event.RequestId = payload.RequestId;
89
79
  event.LCWVersion = (_TelemetryManager$Int8 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int8 === void 0 ? void 0 : _TelemetryManager$Int8.environmentVersion;
@@ -92,14 +82,13 @@ export class TelemetryHelper {
92
82
  event.ElapsedTimeInMilliseconds = payload.ElapsedTimeInMilliseconds;
93
83
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
94
84
  event.Language = ((_TelemetryManager$Int10 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int10 === void 0 ? void 0 : _TelemetryManager$Int10.chatWidgetLocaleLCID) || "";
85
+ event.Description = payload.Data;
95
86
  });
96
87
  }
97
-
98
88
  static conformToLoadContract(level, input) {
99
89
  const payload = input.payload;
100
90
  return TelemetryHelper.populate(level, payload, event => {
101
91
  var _TelemetryManager$Int11, _TelemetryManager$Int12, _TelemetryManager$Int13;
102
-
103
92
  event.Event = payload.Event;
104
93
  event.ResourcePath = payload.ResourcePath;
105
94
  event.WidgetState = payload.WidgetState;
@@ -112,12 +101,10 @@ export class TelemetryHelper {
112
101
  event.OCChatComponentsVersion = ((_TelemetryManager$Int13 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int13 === void 0 ? void 0 : _TelemetryManager$Int13.chatComponentVersion) ?? "";
113
102
  });
114
103
  }
115
-
116
104
  static conformToIC3ClientContract(level, input) {
117
105
  const payload = input.payload;
118
106
  return TelemetryHelper.populate(level, payload, event => {
119
107
  var _TelemetryManager$Int14;
120
-
121
108
  event.Event = payload.Event;
122
109
  event.IC3ClientVersion = (_TelemetryManager$Int14 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int14 === void 0 ? void 0 : _TelemetryManager$Int14.IC3ClientVersion;
123
110
  event.SubscriptionId = payload.SubscriptionId;
@@ -130,7 +117,6 @@ export class TelemetryHelper {
130
117
  event.Description = payload.Description;
131
118
  });
132
119
  }
133
-
134
120
  static conformToACSAdapterContract(level, input) {
135
121
  const payload = input.payload;
136
122
  return TelemetryHelper.populate(level, payload, event => {
@@ -144,7 +130,6 @@ export class TelemetryHelper {
144
130
  event.ExceptionDetails = payload.ExceptionDetails;
145
131
  });
146
132
  }
147
-
148
133
  static conformToCallingContract(level, input) {
149
134
  const payload = input.payload;
150
135
  return TelemetryHelper.populate(level, payload, event => {
@@ -155,7 +140,6 @@ export class TelemetryHelper {
155
140
  event.Description = payload.Description;
156
141
  });
157
142
  }
158
-
159
143
  static conformToOCChatSDKContract(level, input) {
160
144
  const payload = input.payload;
161
145
  return TelemetryHelper.populate(level, payload, event => {
@@ -167,105 +151,95 @@ export class TelemetryHelper {
167
151
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
168
152
  });
169
153
  }
170
-
171
154
  static addChatConfigDataToTelemetry(chatConfig, telemetryInternalData) {
172
155
  var _chatConfig$ChatWidge;
173
-
174
156
  const telemetryDataLocal = telemetryInternalData;
175
157
  telemetryDataLocal.chatWidgetLocaleLCID = (_chatConfig$ChatWidge = chatConfig.ChatWidgetLanguage) === null || _chatConfig$ChatWidge === void 0 ? void 0 : _chatConfig$ChatWidge.msdyn_localeid;
176
158
  return telemetryDataLocal;
177
159
  }
178
-
179
160
  static addWidgetDataToTelemetry(telemetryConfig, telemetryInternalData) {
180
161
  const telemetryDataLocal = telemetryInternalData;
181
162
  telemetryDataLocal.widgetId = telemetryConfig === null || telemetryConfig === void 0 ? void 0 : telemetryConfig.appId;
182
163
  telemetryDataLocal.orgId = telemetryConfig === null || telemetryConfig === void 0 ? void 0 : telemetryConfig.orgId;
183
164
  telemetryDataLocal.orgUrl = telemetryConfig === null || telemetryConfig === void 0 ? void 0 : telemetryConfig.orgUrl;
184
- telemetryDataLocal.lcwRuntimeId = newGuid();
165
+ telemetryDataLocal.lcwRuntimeId = telemetryConfig.LCWRuntimeId ?? newGuid();
185
166
  return telemetryDataLocal;
186
167
  }
187
-
188
168
  static addSessionDataToTelemetry(chatSession, telemetryInternalData) {
189
169
  var _chatSession$chatToke, _chatSession$chatToke2;
190
-
191
170
  const telemetryDataLocal = telemetryInternalData;
192
171
  telemetryDataLocal.chatId = chatSession === null || chatSession === void 0 ? void 0 : (_chatSession$chatToke = chatSession.chatToken) === null || _chatSession$chatToke === void 0 ? void 0 : _chatSession$chatToke.chatId;
193
172
  telemetryDataLocal.currentRequestId = chatSession === null || chatSession === void 0 ? void 0 : (_chatSession$chatToke2 = chatSession.chatToken) === null || _chatSession$chatToke2 === void 0 ? void 0 : _chatSession$chatToke2.requestId;
194
173
  return telemetryInternalData;
195
174
  }
196
-
197
175
  static addConversationDataToTelemetry(liveWorkItem, telemetryInternalData) {
198
176
  const telemetryDataLocal = telemetryInternalData;
199
177
  telemetryDataLocal.conversationId = liveWorkItem.conversationId;
200
178
  return telemetryDataLocal;
201
179
  }
202
-
203
180
  }
204
-
205
181
  _defineProperty(TelemetryHelper, "callId", void 0);
206
-
207
182
  _defineProperty(TelemetryHelper, "elapsedTime", void 0);
208
-
209
183
  _defineProperty(TelemetryHelper, "logCallingEvent", (logLevel, payload, callId) => {
210
184
  const telemetryEvent = {
211
185
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
212
186
  logLevel: logLevel,
213
- payload: { ...payload,
187
+ payload: {
188
+ ...payload,
214
189
  CallId: callId
215
190
  }
216
191
  };
217
192
  BroadcastService.postMessage(telemetryEvent);
218
193
  });
219
-
220
194
  _defineProperty(TelemetryHelper, "logLoadingEvent", (logLevel, payload) => {
221
195
  const telemetryEvent = {
222
196
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
223
197
  logLevel: logLevel,
224
- payload: { ...payload
198
+ payload: {
199
+ ...payload
225
200
  }
226
201
  };
227
202
  BroadcastService.postMessage(telemetryEvent);
228
203
  });
229
-
230
204
  _defineProperty(TelemetryHelper, "logActionEvent", (logLevel, payload) => {
231
205
  const telemetryEvent = {
232
206
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
233
207
  logLevel: logLevel,
234
- payload: { ...payload
208
+ payload: {
209
+ ...payload
235
210
  }
236
211
  };
237
212
  BroadcastService.postMessage(telemetryEvent);
238
213
  });
239
-
240
214
  _defineProperty(TelemetryHelper, "logSDKEvent", (logLevel, payload) => {
241
215
  var _TelemetryManager$Int15;
242
-
243
216
  const telemetryEvent = {
244
217
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
245
218
  logLevel: logLevel,
246
- payload: { ...payload,
219
+ payload: {
220
+ ...payload,
247
221
  TransactionId: newGuid(),
248
222
  RequestId: (_TelemetryManager$Int15 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int15 === void 0 ? void 0 : _TelemetryManager$Int15.currentRequestId
249
223
  }
250
224
  };
251
225
  BroadcastService.postMessage(telemetryEvent);
252
226
  });
253
-
254
227
  _defineProperty(TelemetryHelper, "logConfigDataEvent", (logLevel, payload) => {
255
228
  const telemetryEvent = {
256
229
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
257
230
  logLevel: logLevel,
258
- payload: { ...payload
231
+ payload: {
232
+ ...payload
259
233
  }
260
234
  };
261
235
  BroadcastService.postMessage(telemetryEvent);
262
236
  });
263
-
264
237
  _defineProperty(TelemetryHelper, "logWebChatEvent", (logLevel, payload) => {
265
238
  const telemetryEvent = {
266
239
  eventName: TelemetryEvent.WebChatEvent,
267
240
  logLevel: logLevel,
268
- payload: { ...payload,
241
+ payload: {
242
+ ...payload,
269
243
  type: TelemetryEvent.WebChatEvent,
270
244
  scenarioType: ScenarioType.WEBCHAT
271
245
  }
@@ -1,5 +1,6 @@
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
  import { LogLevel, ScenarioType, TelemetryConstants, TelemetryEvent } from "./TelemetryConstants";
4
5
  import { BroadcastService } from "@microsoft/omnichannel-chat-components";
5
6
  import { ariaTelemetryLogger } from "./loggers/ariaTelemetryLogger";
@@ -7,17 +8,11 @@ import { consoleLogger } from "./loggers/consoleLogger";
7
8
  import { defaultAriaConfig } from "./defaultConfigs/defaultAriaConfig";
8
9
  import { TelemetryHelper } from "./TelemetryHelper";
9
10
  export class TelemetryTimers {}
10
-
11
11
  _defineProperty(TelemetryTimers, "LcwLoadToChatButtonTimer", void 0);
12
-
13
12
  _defineProperty(TelemetryTimers, "ProactiveChatScreenTimer", void 0);
14
-
15
13
  _defineProperty(TelemetryTimers, "WidgetLoadTimer", void 0);
16
-
17
14
  export class TelemetryManager {}
18
-
19
15
  _defineProperty(TelemetryManager, "InternalTelemetryData", void 0);
20
-
21
16
  const loggers = [];
22
17
  export const disposeLoggers = () => {
23
18
  loggers.map(logger => {
@@ -27,7 +22,6 @@ export const disposeLoggers = () => {
27
22
  export const RegisterLoggers = () => {
28
23
  const registerLoggers = () => {
29
24
  var _TelemetryManager$Int, _TelemetryManager$Int2, _TelemetryManager$Int3, _TelemetryManager$Int4, _TelemetryManager$Int5, _TelemetryManager$Int6, _TelemetryManager$Int7, _TelemetryManager$Int8;
30
-
31
25
  if (((_TelemetryManager$Int = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int === void 0 ? void 0 : (_TelemetryManager$Int2 = _TelemetryManager$Int.telemetryConfig) === null || _TelemetryManager$Int2 === void 0 ? void 0 : _TelemetryManager$Int2.disableConsoleLog) === false || ((_TelemetryManager$Int3 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int3 === void 0 ? void 0 : (_TelemetryManager$Int4 = _TelemetryManager$Int3.telemetryConfig) === null || _TelemetryManager$Int4 === void 0 ? void 0 : _TelemetryManager$Int4.telemetryDisabled) === false) {
32
26
  BroadcastService.getAnyMessage().subscribe(event => {
33
27
  if (event.payload && event.eventName in TelemetryEvent) {
@@ -35,22 +29,16 @@ export const RegisterLoggers = () => {
35
29
  }
36
30
  });
37
31
  }
38
-
39
32
  if (((_TelemetryManager$Int5 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int5 === void 0 ? void 0 : (_TelemetryManager$Int6 = _TelemetryManager$Int5.telemetryConfig) === null || _TelemetryManager$Int6 === void 0 ? void 0 : _TelemetryManager$Int6.disableConsoleLog) === false) {
40
33
  loggers.push(consoleLogger());
41
34
  }
42
-
43
35
  if (((_TelemetryManager$Int7 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int7 === void 0 ? void 0 : (_TelemetryManager$Int8 = _TelemetryManager$Int7.telemetryConfig) === null || _TelemetryManager$Int8 === void 0 ? void 0 : _TelemetryManager$Int8.telemetryDisabled) === false) {
44
36
  var _TelemetryManager$Int9, _TelemetryManager$Int18, _TelemetryManager$Int19;
45
-
46
37
  if ((_TelemetryManager$Int9 = TelemetryManager.InternalTelemetryData) !== null && _TelemetryManager$Int9 !== void 0 && _TelemetryManager$Int9.ariaConfig) {
47
38
  var _TelemetryManager$Int10, _TelemetryManager$Int11, _TelemetryManager$Int12, _TelemetryManager$Int13, _TelemetryManager$Int14, _TelemetryManager$Int15, _TelemetryManager$Int16, _TelemetryManager$Int17;
48
-
49
39
  loggers.push(ariaTelemetryLogger(((_TelemetryManager$Int10 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int10 === void 0 ? void 0 : (_TelemetryManager$Int11 = _TelemetryManager$Int10.ariaConfig) === null || _TelemetryManager$Int11 === void 0 ? void 0 : _TelemetryManager$Int11.ariaTelemetryKey) ?? defaultAriaConfig.ariaTelemetryKey, ((_TelemetryManager$Int12 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int12 === void 0 ? void 0 : (_TelemetryManager$Int13 = _TelemetryManager$Int12.ariaConfig) === null || _TelemetryManager$Int13 === void 0 ? void 0 : _TelemetryManager$Int13.disableCookieUsage) ?? defaultAriaConfig.disableCookieUsage, ((_TelemetryManager$Int14 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int14 === void 0 ? void 0 : (_TelemetryManager$Int15 = _TelemetryManager$Int14.ariaConfig) === null || _TelemetryManager$Int15 === void 0 ? void 0 : _TelemetryManager$Int15.collectorUriForTelemetry) ?? defaultAriaConfig.collectorUriForTelemetry, ((_TelemetryManager$Int16 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int16 === void 0 ? void 0 : (_TelemetryManager$Int17 = _TelemetryManager$Int16.ariaConfig) === null || _TelemetryManager$Int17 === void 0 ? void 0 : _TelemetryManager$Int17.ariaTelemetryApplicationName) ?? defaultAriaConfig.ariaTelemetryApplicationName));
50
40
  }
51
-
52
41
  const customLoggers = (_TelemetryManager$Int18 = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int18 === void 0 ? void 0 : (_TelemetryManager$Int19 = _TelemetryManager$Int18.telemetryConfig) === null || _TelemetryManager$Int19 === void 0 ? void 0 : _TelemetryManager$Int19.telemetryLoggers;
53
-
54
42
  if (customLoggers) {
55
43
  customLoggers.map(logger => {
56
44
  loggers.push(logger);
@@ -58,7 +46,6 @@ export const RegisterLoggers = () => {
58
46
  }
59
47
  }
60
48
  };
61
-
62
49
  const parseInput = function (payload) {
63
50
  let scenarioType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ScenarioType.UNDEFINED;
64
51
  return {
@@ -66,11 +53,9 @@ export const RegisterLoggers = () => {
66
53
  payload: payload
67
54
  };
68
55
  };
69
-
70
56
  const logTelemetry = telemetryEvent => {
71
57
  loggers.map(logger => {
72
58
  var _payload;
73
-
74
59
  const logLevel = telemetryEvent.logLevel ?? LogLevel.INFO;
75
60
  const scenarioType = ((_payload = telemetryEvent.payload) === null || _payload === void 0 ? void 0 : _payload.scenarioType) ?? ScenarioType.UNDEFINED;
76
61
  const telemetryInput = parseInput(telemetryEvent === null || telemetryEvent === void 0 ? void 0 : telemetryEvent.payload, scenarioType);
@@ -80,6 +65,5 @@ export const RegisterLoggers = () => {
80
65
  logger.log(logLevel, telemetryInput);
81
66
  });
82
67
  };
83
-
84
68
  return registerLoggers();
85
69
  };
@@ -1,40 +1,32 @@
1
1
  import { getDomain, isNullOrEmptyString, isNullOrUndefined } from "../../utils";
2
- import AWTEventProperties from "@microsoft/omnichannel-chat-sdk/lib/external/aria/webjs/AWTEventProperties";
3
- import AWTLogManager from "@microsoft/omnichannel-chat-sdk/lib/external/aria/webjs/AWTLogManager";
4
- import { AWTPiiKind } from "@microsoft/omnichannel-chat-sdk/lib/external/aria/common/Enums";
2
+ import { AWTLogManager } from "@microsoft/omnichannel-chat-sdk/lib/external/aria/webjs/AriaSDK";
3
+ import { AWTCustomerContentKind, AWTPiiKind, AWTPropertyType } from "@microsoft/omnichannel-chat-sdk/lib/external/aria/common/Enums";
5
4
  import { Constants, AriaTelemetryConstants, EnvironmentVersion } from "../../Constants";
6
5
  import { TelemetryManager } from "../TelemetryManager";
7
6
  export const ariaTelemetryLogger = (ariaTelemetryKey, disabledCookieUsage, collectiorUriForTelemetry, ariaTelemetryApplicationName) => {
8
7
  let _logger;
9
-
10
8
  const logger = () => {
11
9
  if (isNullOrUndefined(_logger) && !isNullOrEmptyString(ariaTelemetryKey)) {
12
10
  const configuration = {
13
11
  disableCookiesUsage: disabledCookieUsage
14
12
  };
15
-
16
13
  if (!isNullOrEmptyString(collectiorUriForTelemetry)) {
17
14
  configuration.collectorUri = collectiorUriForTelemetry;
18
15
  } else {
19
16
  if (TelemetryManager.InternalTelemetryData.environmentVersion == EnvironmentVersion.prod) {
20
17
  var _TelemetryManager$Int;
21
-
22
18
  const orgUrl = (_TelemetryManager$Int = TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int === void 0 ? void 0 : _TelemetryManager$Int.orgUrl;
23
-
24
19
  if (!isNullOrUndefined(orgUrl)) {
25
20
  // If the given org is a Production EU org, modify the Aria collector uri
26
21
  const region = getDomain(orgUrl);
27
-
28
22
  if (region === AriaTelemetryConstants.EU) {
29
23
  configuration.collectorUri = AriaTelemetryConstants.EUROPE_ENDPOINT;
30
24
  }
31
25
  }
32
26
  }
33
27
  }
34
-
35
28
  try {
36
29
  _logger = AWTLogManager.initialize(ariaTelemetryKey, configuration);
37
-
38
30
  if (_logger === undefined) {
39
31
  _logger = AWTLogManager.getLogger(ariaTelemetryKey);
40
32
  }
@@ -42,27 +34,39 @@ export const ariaTelemetryLogger = (ariaTelemetryKey, disabledCookieUsage, colle
42
34
  console.log(error);
43
35
  }
44
36
  }
45
-
46
37
  return _logger;
47
38
  };
48
-
49
39
  const ariaLogger = {
50
40
  log: (logLevel, telemetryInput) => {
51
41
  try {
52
- let property;
53
- const telemetryInfo = telemetryInput === null || telemetryInput === void 0 ? void 0 : telemetryInput.telemetryInfo;
54
- const eventProperties = new AWTEventProperties();
55
- eventProperties.setName(telemetryInput.scenarioType);
56
-
42
+ var _telemetryInput$telem;
43
+ const telemetryInfo = telemetryInput === null || telemetryInput === void 0 ? void 0 : (_telemetryInput$telem = telemetryInput.telemetryInfo) === null || _telemetryInput$telem === void 0 ? void 0 : _telemetryInput$telem.telemetryInfo;
44
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
45
+ const eventProperties = {
46
+ name: telemetryInput.scenarioType,
47
+ properties: {}
48
+ };
57
49
  if (telemetryInfo) {
58
- for (const key of Object.keys(telemetryInfo)) {
59
- property = typeof telemetryInfo[key] === "object" ? JSON.stringify(telemetryInfo[key]) : telemetryInfo[key];
60
- eventProperties.setProperty(key, property);
61
- }
62
-
63
- eventProperties.setPropertyWithPii(ariaTelemetryApplicationName, Constants.LiveChatWidget, AWTPiiKind.GenericData);
50
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
51
+ Object.keys(telemetryInfo).forEach((key, index) => {
52
+ if (!isNullOrUndefined(telemetryInfo[key]) && !isNullOrEmptyString(telemetryInfo[key])) {
53
+ const property = {
54
+ value: typeof telemetryInfo[key] === "object" ? JSON.stringify(telemetryInfo[key]) : telemetryInfo[key],
55
+ type: typeof telemetryInfo[key] === "number" ? AWTPropertyType.Double : AWTPropertyType.String,
56
+ pii: AWTPiiKind.NotSet,
57
+ cc: AWTCustomerContentKind.NotSet
58
+ };
59
+ eventProperties.properties[key] = property;
60
+ }
61
+ });
62
+ const nameProperty = {
63
+ value: Constants.LiveChatWidget,
64
+ type: AWTPropertyType.String,
65
+ pii: AWTPiiKind.GenericData,
66
+ cc: AWTCustomerContentKind.NotSet
67
+ };
68
+ eventProperties.properties[ariaTelemetryApplicationName] = nameProperty;
64
69
  }
65
-
66
70
  logger() ? logger().logEvent(eventProperties) : console.log("Unable to initialize aria logger");
67
71
  } catch (error) {
68
72
  console.error("Error in logging telemetry to Aria logger:" + error);
@@ -5,25 +5,20 @@ export const consoleLogger = () => {
5
5
  log: (logLevel, telemetryInput) => {
6
6
  const payload = telemetryInput !== null && telemetryInput !== void 0 && telemetryInput.payload && Object.keys(telemetryInput === null || telemetryInput === void 0 ? void 0 : telemetryInput.payload).length > 0 ? telemetryInput === null || telemetryInput === void 0 ? void 0 : telemetryInput.payload : "";
7
7
  const telemetryInfo = telemetryInput !== null && telemetryInput !== void 0 && telemetryInput.telemetryInfo && Object.keys(telemetryInput === null || telemetryInput === void 0 ? void 0 : telemetryInput.telemetryInfo).length > 0 ? telemetryInput === null || telemetryInput === void 0 ? void 0 : telemetryInput.telemetryInfo : "";
8
-
9
8
  try {
10
9
  switch (logLevel) {
11
10
  case LogLevel.INFO:
12
11
  console.info(Constants.LiveChatWidget, payload, telemetryInfo);
13
12
  break;
14
-
15
13
  case LogLevel.DEBUG:
16
14
  console.debug(Constants.LiveChatWidget, payload, telemetryInfo);
17
15
  break;
18
-
19
16
  case LogLevel.WARN:
20
17
  console.warn(Constants.LiveChatWidget, payload, telemetryInfo);
21
18
  break;
22
-
23
19
  case LogLevel.ERROR:
24
20
  console.error(Constants.LiveChatWidget, payload, telemetryInfo);
25
21
  break;
26
-
27
22
  default:
28
23
  console.debug(Constants.LiveChatWidget, payload, telemetryInfo);
29
24
  break;