@microsoft/omnichannel-chat-widget 0.1.0-main.20562ae → 0.1.0-main.21ab3ba

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 (316) hide show
  1. package/README.md +32 -0
  2. package/lib/cjs/assets/Icons.js +4 -2
  3. package/lib/cjs/common/Constants.js +50 -155
  4. package/lib/cjs/common/KeyCodes.js +3 -4
  5. package/lib/cjs/common/contextDataStore/DataStoreManager.js +3 -5
  6. package/lib/cjs/common/storage/default/defaultCacheManager.js +26 -0
  7. package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +102 -0
  8. package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +78 -0
  9. package/lib/cjs/common/telemetry/TelemetryConstants.js +57 -25
  10. package/lib/cjs/common/telemetry/TelemetryHelper.js +29 -55
  11. package/lib/cjs/common/telemetry/TelemetryManager.js +11 -31
  12. package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +4 -3
  13. package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +49 -35
  14. package/lib/cjs/common/telemetry/loggers/consoleLogger.js +6 -14
  15. package/lib/cjs/common/utils.js +80 -80
  16. package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +21 -45
  17. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +20 -26
  18. package/lib/cjs/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  19. package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +7 -32
  20. package/lib/cjs/components/dimlayer/DimLayer.js +0 -4
  21. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +8 -36
  22. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -8
  23. package/lib/cjs/components/footerstateful/FooterStateful.js +12 -44
  24. package/lib/cjs/components/footerstateful/audionotificationstateful/AudioNotificationStateful.js +0 -6
  25. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +15 -44
  26. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -8
  27. package/lib/cjs/components/headerstateful/HeaderStateful.js +17 -31
  28. package/lib/cjs/components/livechatwidget/LiveChatWidget.js +2 -14
  29. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +39 -0
  30. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +20 -0
  31. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  32. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +34 -0
  33. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +64 -0
  34. package/lib/cjs/components/livechatwidget/common/Deferred.js +37 -0
  35. package/lib/cjs/components/livechatwidget/common/authHelper.js +50 -0
  36. package/lib/cjs/components/livechatwidget/common/createAdapter.js +10 -9
  37. package/lib/cjs/components/livechatwidget/common/createFooter.js +4 -23
  38. package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -10
  39. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +36 -43
  40. package/lib/cjs/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +14 -0
  41. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +126 -57
  42. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
  43. package/lib/cjs/components/livechatwidget/common/endChat.js +99 -37
  44. package/lib/cjs/components/livechatwidget/common/getGeneralStylesForButton.js +0 -6
  45. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +7 -16
  46. package/lib/cjs/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -8
  47. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +38 -52
  48. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +98 -66
  49. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +7 -32
  50. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +2 -15
  51. package/lib/cjs/components/livechatwidget/common/shareObservable.js +41 -0
  52. package/lib/cjs/components/livechatwidget/common/startChat.js +236 -91
  53. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +0 -8
  54. package/lib/cjs/components/livechatwidget/common/updateSessionDataForTelemetry.js +2 -11
  55. package/lib/cjs/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  56. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +329 -185
  57. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +19 -19
  58. package/lib/cjs/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +57 -0
  59. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +4 -17
  60. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -17
  61. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -23
  62. package/lib/cjs/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  63. package/lib/cjs/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +13 -0
  64. package/lib/cjs/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  65. package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  66. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +11 -44
  67. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +19 -33
  68. package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -24
  69. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +94 -19
  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/interfaces/IBotMagicCodeConfig.js +1 -0
  80. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +12 -0
  81. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -5
  82. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  83. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  84. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  85. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  86. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  87. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  88. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  89. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  90. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +0 -7
  91. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -5
  92. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +27 -37
  93. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +9 -19
  94. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +23 -60
  95. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +7 -15
  96. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +41 -0
  97. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +82 -0
  98. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +10 -0
  99. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
  100. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -3
  101. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -3
  102. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
  103. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -9
  104. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +89 -0
  105. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +7 -18
  106. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +6 -28
  107. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +2 -11
  108. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +13 -30
  109. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +3 -9
  110. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -34
  111. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +1 -10
  112. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +1 -12
  113. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -19
  114. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +1 -9
  115. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -9
  116. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +13 -34
  117. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +1 -10
  118. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +7 -11
  119. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +5 -14
  120. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -21
  121. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +33 -0
  122. package/lib/cjs/contexts/ChatAdapterStore.js +0 -2
  123. package/lib/cjs/contexts/ChatContextStore.js +0 -2
  124. package/lib/cjs/contexts/ChatSDKStore.js +0 -2
  125. package/lib/cjs/contexts/common/ConversationState.js +3 -3
  126. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +30 -25
  127. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +14 -13
  128. package/lib/cjs/contexts/createReducer.js +169 -99
  129. package/lib/cjs/controller/componentController.js +4 -33
  130. package/lib/cjs/hooks/useChatAdapterStore.js +0 -6
  131. package/lib/cjs/hooks/useChatContextStore.js +0 -6
  132. package/lib/cjs/hooks/useChatSDKStore.js +0 -6
  133. package/lib/cjs/index.js +0 -5
  134. package/lib/cjs/plugins/newMessageEventHandler.js +22 -46
  135. package/lib/esm/assets/Icons.js +2 -1
  136. package/lib/esm/common/Constants.js +45 -143
  137. package/lib/esm/common/KeyCodes.js +3 -3
  138. package/lib/esm/common/contextDataStore/DataStoreManager.js +3 -3
  139. package/lib/esm/common/storage/default/defaultCacheManager.js +18 -0
  140. package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +95 -0
  141. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +70 -0
  142. package/lib/esm/common/telemetry/TelemetryConstants.js +61 -22
  143. package/lib/esm/common/telemetry/TelemetryHelper.js +30 -45
  144. package/lib/esm/common/telemetry/TelemetryManager.js +11 -19
  145. package/lib/esm/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +4 -1
  146. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +49 -23
  147. package/lib/esm/common/telemetry/loggers/consoleLogger.js +6 -10
  148. package/lib/esm/common/utils.js +73 -45
  149. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +21 -16
  150. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +23 -13
  151. package/lib/esm/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  152. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +9 -13
  153. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +8 -15
  154. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
  155. package/lib/esm/components/footerstateful/FooterStateful.js +14 -25
  156. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +15 -37
  157. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -6
  158. package/lib/esm/components/headerstateful/HeaderStateful.js +17 -16
  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 -45
  173. package/lib/esm/components/livechatwidget/common/endChat.js +99 -23
  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 +41 -22
  178. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +98 -59
  179. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +7 -22
  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 +236 -71
  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 +333 -136
  186. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +19 -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 +15 -29
  196. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +21 -9
  197. package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -6
  198. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +94 -4
  199. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -1
  200. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
  201. package/lib/esm/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +4 -0
  202. package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +12 -19
  203. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +6 -13
  204. package/lib/esm/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -16
  205. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -5
  206. package/lib/esm/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -6
  207. package/lib/esm/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  208. package/lib/esm/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.js +1 -0
  209. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +5 -0
  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 +27 -22
  222. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +11 -11
  223. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +23 -38
  224. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +9 -8
  225. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +34 -0
  226. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +80 -0
  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 +83 -0
  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 +7 -14
  236. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +3 -3
  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 +27 -0
  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 -25
  256. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +14 -9
  257. package/lib/esm/contexts/createReducer.js +169 -96
  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/plugins/newMessageEventHandler.js +22 -35
  263. package/lib/types/assets/Icons.d.ts +1 -0
  264. package/lib/types/common/Constants.d.ts +37 -2
  265. package/lib/types/common/interfaces/IContextDataStore.d.ts +2 -2
  266. package/lib/types/common/storage/default/defaultCacheManager.d.ts +4 -0
  267. package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +2 -0
  268. package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -0
  269. package/lib/types/common/telemetry/TelemetryConstants.d.ts +42 -7
  270. package/lib/types/common/telemetry/TelemetryHelper.d.ts +2 -0
  271. package/lib/types/common/telemetry/definitions/Contracts.d.ts +2 -4
  272. package/lib/types/common/telemetry/definitions/Payload.d.ts +12 -9
  273. package/lib/types/common/telemetry/interfaces/ITelemetryConfig.d.ts +3 -3
  274. package/lib/types/common/utils.d.ts +8 -1
  275. package/lib/types/components/footerstateful/audionotificationstateful/interfaces/IAudioNotificationStatefulParams.d.ts +0 -1
  276. package/lib/types/components/headerstateful/interfaces/IHeaderStatefulParams.d.ts +2 -1
  277. package/lib/types/components/livechatwidget/common/ActivityStreamHandler.d.ts +14 -0
  278. package/lib/types/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.d.ts +5 -0
  279. package/lib/types/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.d.ts +6 -0
  280. package/lib/types/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.d.ts +7 -0
  281. package/lib/types/components/livechatwidget/common/ChatAdapterShim.d.ts +7 -0
  282. package/lib/types/components/livechatwidget/common/Deferred.d.ts +9 -0
  283. package/lib/types/components/livechatwidget/common/authHelper.d.ts +5 -0
  284. package/lib/types/components/livechatwidget/common/defaultProps/defaultScrollBarProps.d.ts +2 -0
  285. package/lib/types/components/livechatwidget/common/endChat.d.ts +1 -1
  286. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +6 -4
  287. package/lib/types/components/livechatwidget/common/shareObservable.d.ts +1 -0
  288. package/lib/types/components/livechatwidget/common/startChat.d.ts +5 -2
  289. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +2 -1
  290. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +6 -3
  291. package/lib/types/components/livechatwidget/interfaces/IScrollBarProps.d.ts +22 -0
  292. package/lib/types/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.d.ts +2 -0
  293. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
  294. package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -0
  295. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
  296. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +1 -2
  297. package/lib/types/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.d.ts +2 -0
  298. package/lib/types/components/webchatcontainerstateful/common/mockchatsdk.d.ts +1 -0
  299. package/lib/types/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.d.ts +4 -0
  300. package/lib/types/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.d.ts +4 -0
  301. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +4 -1
  302. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatContainerStatefulProps.d.ts +4 -0
  303. package/lib/types/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.d.ts +3 -0
  304. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.d.ts +1 -1
  305. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.d.ts +2 -0
  306. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.d.ts +1 -0
  307. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +2 -0
  308. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  309. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  310. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.d.ts +5 -0
  311. package/lib/types/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.d.ts +1 -0
  312. package/lib/types/contexts/common/ConversationState.d.ts +3 -2
  313. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +6 -3
  314. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +30 -24
  315. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
  316. package/package.json +9 -9
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.inMemoryDataStore = exports.defaultInitializeInMemoryDataStore = void 0;
7
+ var _TelemetryConstants = require("../../telemetry/TelemetryConstants");
8
+ var _TelemetryHelper = require("../../telemetry/TelemetryHelper");
9
+ var _defaultCacheManager = require("./defaultCacheManager");
10
+ const defaultInitializeInMemoryDataStore = widgetId => {
11
+ try {
12
+ localStorage;
13
+ } catch (error) {
14
+ // Register below events when localStorage is not accessible
15
+ // Listening to event raised from client browser
16
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
+ window.addEventListener("message", function (e) {
18
+ try {
19
+ if (e.data.key) {
20
+ const browserData = e.data;
21
+ if (_defaultCacheManager.defaultCacheManager.InternalCache[browserData.key]) {
22
+ delete _defaultCacheManager.defaultCacheManager.InternalCache[browserData.key];
23
+ }
24
+ _defaultCacheManager.defaultCacheManager.InternalCache[browserData.key] = browserData.data;
25
+ }
26
+ } catch (error) {
27
+ _TelemetryHelper.TelemetryHelper.logConfigDataEvent(_TelemetryConstants.LogLevel.ERROR, {
28
+ Event: _TelemetryConstants.TelemetryEvent.InMemoryDataStoreFailed,
29
+ ExceptionDetails: error,
30
+ Description: "Unable to register default in-memory cache."
31
+ });
32
+ }
33
+ });
34
+
35
+ // send cache initialize message to client
36
+ if (_defaultCacheManager.defaultCacheManager.InternalCache === undefined || {}) {
37
+ parent.postMessage({
38
+ data: "cacheinitialize",
39
+ widgetId: widgetId
40
+ }, "*");
41
+ }
42
+ }
43
+ };
44
+ exports.defaultInitializeInMemoryDataStore = defaultInitializeInMemoryDataStore;
45
+ const inMemoryDataStore = () => {
46
+ const dataStoreProvider = {
47
+ getData: key => {
48
+ if (_defaultCacheManager.defaultCacheManager.InternalCache && _defaultCacheManager.defaultCacheManager.InternalCache[key]) {
49
+ return _defaultCacheManager.defaultCacheManager.InternalCache[key];
50
+ }
51
+ },
52
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
53
+ setData: (key, data) => {
54
+ try {
55
+ _defaultCacheManager.defaultCacheManager.InternalCache[key] = data;
56
+ } catch (error) {
57
+ _TelemetryHelper.TelemetryHelper.logConfigDataEvent(_TelemetryConstants.LogLevel.ERROR, {
58
+ Event: _TelemetryConstants.TelemetryEvent.InMemoryDataStoreFailed,
59
+ ExceptionDetails: error,
60
+ Description: "Unable to set data in default in-memory cache."
61
+ });
62
+ }
63
+ },
64
+ removeData: key => {
65
+ try {
66
+ _defaultCacheManager.defaultCacheManager.InternalCache[key] = {};
67
+ } catch (error) {
68
+ _TelemetryHelper.TelemetryHelper.logConfigDataEvent(_TelemetryConstants.LogLevel.ERROR, {
69
+ Event: _TelemetryConstants.TelemetryEvent.InMemoryDataStoreFailed,
70
+ ExceptionDetails: error,
71
+ Description: "Unable to remove data from default in-memory cache."
72
+ });
73
+ }
74
+ }
75
+ };
76
+ return dataStoreProvider;
77
+ };
78
+ exports.inMemoryDataStore = inMemoryDataStore;
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.TelemetryEvent = exports.TelemetryConstants = exports.ScenarioType = exports.LogLevel = exports.BroadcastEvent = void 0;
7
7
  let ScenarioType;
8
8
  exports.ScenarioType = ScenarioType;
9
-
10
9
  (function (ScenarioType) {
11
10
  ScenarioType["CONFIG_VALIDATION"] = "LCW_ConfigValidationEvents";
12
11
  ScenarioType["LOAD"] = "LCW_LoadEvents";
@@ -19,38 +18,45 @@ exports.ScenarioType = ScenarioType;
19
18
  ScenarioType["UNDEFINED"] = "LCW_Undefined";
20
19
  ScenarioType["ACS_ADAPTER"] = "LCW_ACSAdapterEvents";
21
20
  })(ScenarioType || (exports.ScenarioType = ScenarioType = {}));
22
-
23
21
  let LogLevel; // Events used in certain functionalities that are not being logged
24
-
25
22
  exports.LogLevel = LogLevel;
26
-
27
23
  (function (LogLevel) {
28
24
  LogLevel["INFO"] = "INFO";
29
25
  LogLevel["DEBUG"] = "DEBUG";
30
26
  LogLevel["WARN"] = "WARN";
31
27
  LogLevel["ERROR"] = "ERROR";
32
28
  })(LogLevel || (exports.LogLevel = LogLevel = {}));
33
-
34
29
  let BroadcastEvent; // Events being logged
35
-
36
30
  exports.BroadcastEvent = BroadcastEvent;
37
-
38
31
  (function (BroadcastEvent) {
39
32
  BroadcastEvent["LoadPostChatSurvey"] = "LoadPostChatSurvey";
40
- BroadcastEvent["EndChat"] = "ChatEnded";
33
+ BroadcastEvent["ChatEnded"] = "ChatEnded";
41
34
  BroadcastEvent["NewMessageNotification"] = "NewMessageNotification";
42
35
  BroadcastEvent["UnreadMessageCount"] = "UnreadMessageCount";
43
- BroadcastEvent["ChatWidgetStateChanged"] = "ChatWidgetStateChanged";
36
+ BroadcastEvent["StartProactiveChat"] = "StartProactiveChat";
44
37
  BroadcastEvent["ProactiveChatStartChat"] = "ProactiveChatStartChat";
45
38
  BroadcastEvent["ProactiveChatStartPopoutChat"] = "ProactiveChatStartPopoutChat";
39
+ BroadcastEvent["ProactiveChatIsInPopoutMode"] = "ProactiveChatIsInPopoutMode";
40
+ BroadcastEvent["ResetProactiveChatParams"] = "ResetProactiveChatParams";
46
41
  BroadcastEvent["InvalidAdaptiveCardFormat"] = "InvalidAdaptiveCardFormat";
47
42
  BroadcastEvent["NewMessageSent"] = "NewMessageSent";
48
43
  BroadcastEvent["NewMessageReceived"] = "NewMessageReceived";
44
+ BroadcastEvent["HistoryMessageReceived"] = "HistoryMessageReceived";
45
+ BroadcastEvent["RedirectPageRequest"] = "RedirectPageRequest";
46
+ BroadcastEvent["StartChat"] = "StartChat";
47
+ BroadcastEvent["StartUnauthenticatedReconnectChat"] = "StartUnauthenticatedReconnectChat";
48
+ BroadcastEvent["InitiateEndChat"] = "InitiateEndChat";
49
+ BroadcastEvent["SetCustomContext"] = "SetCustomContext";
50
+ BroadcastEvent["ChatRetrievedFromCache"] = "ChatRetrievedFromCache";
51
+ BroadcastEvent["MaximizeChat"] = "MaximizeChat";
52
+ BroadcastEvent["ChatInitiated"] = "ChatInitiated";
53
+ BroadcastEvent["CloseChat"] = "CloseChat";
54
+ BroadcastEvent["InitiateEndChatOnBrowserUnload"] = "InitiateEndChatOnBrowserUnload";
55
+ BroadcastEvent["ClosePopoutWindow"] = "ClosePopoutWindow";
56
+ BroadcastEvent["RaiseErrorEvent"] = "RaiseErrorEvent";
49
57
  })(BroadcastEvent || (exports.BroadcastEvent = BroadcastEvent = {}));
50
-
51
58
  let TelemetryEvent;
52
59
  exports.TelemetryEvent = TelemetryEvent;
53
-
54
60
  (function (TelemetryEvent) {
55
61
  TelemetryEvent["CallAdded"] = "CallAdded";
56
62
  TelemetryEvent["LocalVideoStreamAdded"] = "LocalVideoStreamAdded";
@@ -60,8 +66,8 @@ exports.TelemetryEvent = TelemetryEvent;
60
66
  TelemetryEvent["CallDisconnected"] = "CallDisconnected";
61
67
  TelemetryEvent["CallDisconnectedException"] = "CallDisconnectedException";
62
68
  TelemetryEvent["IncomingCallEnded"] = "incomingCallEnded";
63
- TelemetryEvent["VoiceVideoInitialize"] = "VoiceVideoInitialize";
64
- TelemetryEvent["VoiceVideoInitializeException"] = "VoiceVideoInitializeException";
69
+ TelemetryEvent["VoiceVideoSdkInitialize"] = "VoiceVideoSdkInitialize";
70
+ TelemetryEvent["VoiceVideoSdkInitializeException"] = "VoiceVideoSdkInitializeException";
65
71
  TelemetryEvent["VoiceVideoLoading"] = "VoiceVideoLoading";
66
72
  TelemetryEvent["VoiceVideoNotLoaded"] = "VoiceVideoNotLoaded";
67
73
  TelemetryEvent["VoiceVideoLoadingException"] = "VoiceVideoLoadingException";
@@ -87,9 +93,12 @@ exports.TelemetryEvent = TelemetryEvent;
87
93
  TelemetryEvent["PostChatContextCallSucceed"] = "PostChatContextCallSucceed";
88
94
  TelemetryEvent["PostChatContextCallFailed"] = "PostChatContextCallFailed";
89
95
  TelemetryEvent["ParseAdaptiveCardFailed"] = "ParseAdaptiveCardFailed";
96
+ TelemetryEvent["ClientDataStoreProviderFailed"] = "ClientDataStoreProviderFailed";
97
+ TelemetryEvent["InMemoryDataStoreFailed"] = "InMemoryDataStoreFailed";
90
98
  TelemetryEvent["WebChatLoaded"] = "WebChatLoaded";
91
99
  TelemetryEvent["LCWChatButtonClicked"] = "LCWChatButtonClicked";
92
100
  TelemetryEvent["LCWChatButtonShow"] = "LCWChatButtonShow";
101
+ TelemetryEvent["WidgetLoadStarted"] = "WidgetLoadStarted";
93
102
  TelemetryEvent["WidgetLoadComplete"] = "WidgetLoadComplete";
94
103
  TelemetryEvent["WidgetLoadFailed"] = "WidgetLoadFailed";
95
104
  TelemetryEvent["StartChatMethodException"] = "StartChatMethodException";
@@ -98,8 +107,9 @@ exports.TelemetryEvent = TelemetryEvent;
98
107
  TelemetryEvent["PrechatSubmitted"] = "PrechatSubmitted";
99
108
  TelemetryEvent["StartChatSDKCall"] = "StartChatCall";
100
109
  TelemetryEvent["StartChatEventRecevied"] = "StartChatEventReceived";
101
- TelemetryEvent["EndChatSDKCall"] = "EndChatCall";
110
+ TelemetryEvent["EndChatSDKCall"] = "EndChatSDKCall";
102
111
  TelemetryEvent["EndChatEventReceived"] = "EndChatEventReceived";
112
+ TelemetryEvent["WindowClosed"] = "WindowClosed";
103
113
  TelemetryEvent["OnNewMessageFailed"] = "OnNewMessageFailed";
104
114
  TelemetryEvent["OnNewMessageAudioNotificationFailed"] = "OnNewMessageAudioNotificationFailed";
105
115
  TelemetryEvent["DownloadTranscriptResponseNullOrUndefined"] = "DownloadTranscriptResponseNullOrUndefined";
@@ -124,17 +134,29 @@ exports.TelemetryEvent = TelemetryEvent;
124
134
  TelemetryEvent["EmailTranscriptButtonClicked"] = "EmailTranscriptButtonClicked";
125
135
  TelemetryEvent["EmailTranscriptCancelButtonClicked"] = "EmailTranscriptCancelButtonClicked";
126
136
  TelemetryEvent["AudioToggleButtonClicked"] = "AudioToggleButtonClicked";
137
+ TelemetryEvent["SuppressBotMagicCodeSucceeded"] = "SuppressBotMagicCodeSucceeded";
138
+ TelemetryEvent["SuppressBotMagicCodeFailed"] = "SuppressBotMagicCodeFailed";
139
+ TelemetryEvent["GetConversationDetailsException"] = "GetConversationDetailsException";
140
+ TelemetryEvent["BrowserUnloadEventStarted"] = "BrowserUnloadEventStarted";
141
+ TelemetryEvent["GetAuthTokenCalled"] = "GetAuthTokenCalled";
142
+ TelemetryEvent["GetAuthTokenFailed"] = "GetAuthTokenFailed";
143
+ TelemetryEvent["ReceivedNullOrEmptyToken"] = "ReceivedNullOrEmptyToken";
144
+ TelemetryEvent["CustomerVoiceResponsePageLoaded"] = "CustomerVoiceResponsePageLoaded";
145
+ TelemetryEvent["CustomerVoiceFormResponseSubmitted"] = "CustomerVoiceFormResponseSubmitted";
146
+ TelemetryEvent["CustomerVoiceFormResponseError"] = "CustomerVoiceFormResponseError";
127
147
  TelemetryEvent["ProcessingHTMLTextMiddlewareFailed"] = "ProcessingHTMLTextMiddlewareFailed";
128
148
  TelemetryEvent["ProcessingSanitizationMiddlewareFailed"] = "ProcessingSanitizationMiddlewareFailed";
129
149
  TelemetryEvent["FormatTagsMiddlewareJSONStringifyFailed"] = "FormatTagsMiddlewareJSONStringifyFailed";
130
150
  TelemetryEvent["QueuePositionMessageRecieved"] = "QueuePositionMessageRecieved";
131
151
  TelemetryEvent["AverageWaitTimeMessageRecieved"] = "AverageWaitTimeMessageRecieved";
132
152
  TelemetryEvent["DataMaskingRuleApplied"] = "DataMaskingRuleApplied";
153
+ TelemetryEvent["DataMaskingRuleApplyFailed"] = "DataMaskingRuleApplyFailed";
133
154
  TelemetryEvent["IC3ClientEvent"] = "IC3ClientEvent";
134
155
  TelemetryEvent["ConversationEndedThreadEventReceived"] = "ConversationEndedThreadEventReceived";
135
156
  TelemetryEvent["InvalidConfiguration"] = "InvalidConfiguration";
136
157
  TelemetryEvent["SendTypingIndicatorSucceeded"] = "SendTypingIndicatorSucceeded";
137
158
  TelemetryEvent["SendTypingIndicatorFailed"] = "SendTypingIndicatorFailed";
159
+ TelemetryEvent["WebChatEvent"] = "WebChatEvent";
138
160
  TelemetryEvent["PreChatSurveyStartChatMethodFailed"] = "PreChatSurveyStartChatMethodFailed";
139
161
  TelemetryEvent["ChatAlreadyTriggered"] = "ChatAlreadyTriggered";
140
162
  TelemetryEvent["StartProactiveChatEventReceived"] = "StartProactiveChatEventReceived";
@@ -148,14 +170,19 @@ exports.TelemetryEvent = TelemetryEvent;
148
170
  TelemetryEvent["ReconnectChatMinimize"] = "ReconnectChatMinimize";
149
171
  TelemetryEvent["MessageSent"] = "MessageSent";
150
172
  TelemetryEvent["MessageReceived"] = "MessageReceived";
173
+ TelemetryEvent["CustomContextReceived"] = "CustomContextReceived";
174
+ TelemetryEvent["NetworkDisconnected"] = "NetworkDisconnected";
175
+ TelemetryEvent["NetworkReconnected"] = "NetworkReconnected";
151
176
  })(TelemetryEvent || (exports.TelemetryEvent = TelemetryEvent = {}));
152
-
153
177
  class TelemetryConstants {
154
178
  static map(eventTypeOrScenarioType) {
155
179
  switch (eventTypeOrScenarioType) {
156
180
  case TelemetryEvent.ParseAdaptiveCardFailed:
181
+ case TelemetryEvent.ReceivedNullOrEmptyToken:
182
+ case TelemetryEvent.GetAuthTokenCalled:
183
+ case TelemetryEvent.SuppressBotMagicCodeSucceeded:
184
+ case TelemetryEvent.SuppressBotMagicCodeFailed:
157
185
  return ScenarioType.CONFIG_VALIDATION;
158
-
159
186
  case TelemetryEvent.WebChatLoaded:
160
187
  case TelemetryEvent.WidgetLoadComplete:
161
188
  case TelemetryEvent.WidgetLoadFailed:
@@ -170,7 +197,6 @@ class TelemetryConstants {
170
197
  case TelemetryEvent.ConfirmationPaneLoaded:
171
198
  case TelemetryEvent.ProactiveChatPaneLoaded:
172
199
  return ScenarioType.LOAD;
173
-
174
200
  case TelemetryEvent.PrechatSubmitted:
175
201
  case TelemetryEvent.LCWChatButtonClicked:
176
202
  case TelemetryEvent.ProactiveChatAccepted:
@@ -190,8 +216,18 @@ class TelemetryConstants {
190
216
  case TelemetryEvent.PreChatSurveyStartChatMethodFailed:
191
217
  case TelemetryEvent.HeaderCloseButtonClicked:
192
218
  case TelemetryEvent.HeaderMinimizeButtonClicked:
219
+ case TelemetryEvent.MessageSent:
220
+ case TelemetryEvent.MessageReceived:
221
+ case TelemetryEvent.CustomContextReceived:
222
+ case TelemetryEvent.BrowserUnloadEventStarted:
223
+ case TelemetryEvent.NetworkDisconnected:
224
+ case TelemetryEvent.NetworkReconnected:
225
+ case TelemetryEvent.AudioToggleButtonClicked:
226
+ case TelemetryEvent.EmailTranscriptCancelButtonClicked:
227
+ case TelemetryEvent.CustomerVoiceResponsePageLoaded:
228
+ case TelemetryEvent.CustomerVoiceFormResponseSubmitted:
229
+ case TelemetryEvent.CustomerVoiceFormResponseError:
193
230
  return ScenarioType.ACTIONS;
194
-
195
231
  case TelemetryEvent.StartChatSDKCall:
196
232
  case TelemetryEvent.StartChatEventRecevied:
197
233
  case TelemetryEvent.StartChatMethodException:
@@ -206,8 +242,8 @@ class TelemetryConstants {
206
242
  case TelemetryEvent.EndChatSDKCallFailed:
207
243
  case TelemetryEvent.PostChatContextCallFailed:
208
244
  case TelemetryEvent.PostChatContextCallSucceed:
245
+ case TelemetryEvent.GetConversationDetailsException:
209
246
  return ScenarioType.SDK;
210
-
211
247
  case TelemetryEvent.VideoCallAcceptButtonClick:
212
248
  case TelemetryEvent.CallAdded:
213
249
  case TelemetryEvent.LocalVideoStreamAdded:
@@ -217,8 +253,8 @@ class TelemetryConstants {
217
253
  case TelemetryEvent.CallDisconnected:
218
254
  case TelemetryEvent.CallDisconnectedException:
219
255
  case TelemetryEvent.IncomingCallEnded:
220
- case TelemetryEvent.VoiceVideoInitialize:
221
- case TelemetryEvent.VoiceVideoInitializeException:
256
+ case TelemetryEvent.VoiceVideoSdkInitialize:
257
+ case TelemetryEvent.VoiceVideoSdkInitializeException:
222
258
  case TelemetryEvent.VoiceVideoLoading:
223
259
  case TelemetryEvent.VoiceVideoNotLoaded:
224
260
  case TelemetryEvent.VoiceVideoLoadingException:
@@ -238,16 +274,12 @@ class TelemetryConstants {
238
274
  case TelemetryEvent.CallingSDKLoadSuccess:
239
275
  case TelemetryEvent.CallingSDKLoadFailed:
240
276
  return ScenarioType.CALLING;
241
-
242
277
  default:
243
278
  return ScenarioType.ACTIONS;
244
279
  }
245
280
  }
246
-
247
281
  static mapEventToScenario(eventTypeOrScenarioType) {
248
282
  return TelemetryConstants.map(eventTypeOrScenarioType);
249
283
  }
250
-
251
284
  }
252
-
253
285
  exports.TelemetryConstants = TelemetryConstants;
@@ -4,51 +4,39 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.TelemetryHelper = void 0;
7
-
8
7
  var _TelemetryConstants = require("./TelemetryConstants");
9
-
10
8
  var _utils = require("../utils");
11
-
12
9
  var _TelemetryManager = require("./TelemetryManager");
13
-
14
10
  var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
15
-
16
- 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; }
17
-
11
+ 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; }
12
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
13
+ 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); }
18
14
  class TelemetryHelper {
19
15
  static buildTelemetryEvent(level, input) {
20
16
  switch (input.scenarioType) {
21
17
  case _TelemetryConstants.ScenarioType.LOAD:
22
18
  return TelemetryHelper.conformToLoadContract(level, input);
23
-
24
19
  case _TelemetryConstants.ScenarioType.IC3_CLIENT:
25
20
  return TelemetryHelper.conformToIC3ClientContract(level, input);
26
-
27
21
  case _TelemetryConstants.ScenarioType.WEBCHAT:
28
22
  return TelemetryHelper.conformToWebChatContract(level, input);
29
-
30
23
  case _TelemetryConstants.ScenarioType.OCCHATSDK:
31
24
  return TelemetryHelper.conformToOCChatSDKContract(level, input);
32
-
33
25
  case _TelemetryConstants.ScenarioType.ACTIONS:
34
26
  return TelemetryHelper.conformToActionsContract(level, input);
35
-
36
27
  case _TelemetryConstants.ScenarioType.CALLING:
37
28
  return TelemetryHelper.conformToCallingContract(level, input);
38
-
39
29
  case _TelemetryConstants.ScenarioType.ACS_ADAPTER:
40
30
  return TelemetryHelper.conformToACSAdapterContract(level, input);
41
-
42
31
  default:
43
32
  case _TelemetryConstants.ScenarioType.CONFIG_VALIDATION:
44
33
  return TelemetryHelper.conformToConfigValidationContract(level, input);
45
34
  }
46
35
  }
47
-
48
- static populateBasicProperties(level, // eslint-disable-next-line @typescript-eslint/no-unused-vars
36
+ static populateBasicProperties(level,
37
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
49
38
  telemetryData) {
50
39
  var _TelemetryManager$Int, _TelemetryManager$Int2, _TelemetryManager$Int3, _TelemetryManager$Int4, _TelemetryManager$Int5, _TelemetryManager$Int6, _TelemetryManager$Int7;
51
-
52
40
  return {
53
41
  WidgetId: ((_TelemetryManager$Int = _TelemetryManager.TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int === void 0 ? void 0 : _TelemetryManager$Int.widgetId) ?? "",
54
42
  ChatId: ((_TelemetryManager$Int2 = _TelemetryManager.TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int2 === void 0 ? void 0 : _TelemetryManager$Int2.chatId) ?? "",
@@ -60,14 +48,12 @@ class TelemetryHelper {
60
48
  LogLevel: level
61
49
  };
62
50
  }
63
-
64
51
  static populate(level, telemetryData, configure) {
65
52
  const base = TelemetryHelper.populateBasicProperties(level, telemetryData);
66
53
  const event = base;
67
54
  configure(event);
68
55
  return event;
69
56
  }
70
-
71
57
  static conformToActionsContract(level, input) {
72
58
  const payload = input.payload;
73
59
  return TelemetryHelper.populate(level, payload, event => {
@@ -75,9 +61,9 @@ class TelemetryHelper {
75
61
  event.ActionType = payload.ActionType;
76
62
  event.ElapsedTimeInMilliseconds = payload.ElapsedTimeInMilliseconds;
77
63
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
64
+ event.Description = payload.Description;
78
65
  });
79
66
  }
80
-
81
67
  static conformToWebChatContract(level, input) {
82
68
  const payload = input.payload;
83
69
  return TelemetryHelper.populate(level, payload, event => {
@@ -89,12 +75,10 @@ class TelemetryHelper {
89
75
  event.ExceptionDetails = JSON.stringify(payload.error);
90
76
  });
91
77
  }
92
-
93
78
  static conformToConfigValidationContract(level, input) {
94
79
  const payload = input.payload;
95
80
  return TelemetryHelper.populate(level, payload, event => {
96
81
  var _TelemetryManager$Int8, _TelemetryManager$Int9, _TelemetryManager$Int10;
97
-
98
82
  event.Event = payload.Event;
99
83
  event.RequestId = payload.RequestId;
100
84
  event.LCWVersion = (_TelemetryManager$Int8 = _TelemetryManager.TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int8 === void 0 ? void 0 : _TelemetryManager$Int8.environmentVersion;
@@ -103,14 +87,13 @@ class TelemetryHelper {
103
87
  event.ElapsedTimeInMilliseconds = payload.ElapsedTimeInMilliseconds;
104
88
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
105
89
  event.Language = ((_TelemetryManager$Int10 = _TelemetryManager.TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int10 === void 0 ? void 0 : _TelemetryManager$Int10.chatWidgetLocaleLCID) || "";
90
+ event.Description = payload.Data;
106
91
  });
107
92
  }
108
-
109
93
  static conformToLoadContract(level, input) {
110
94
  const payload = input.payload;
111
95
  return TelemetryHelper.populate(level, payload, event => {
112
96
  var _TelemetryManager$Int11, _TelemetryManager$Int12, _TelemetryManager$Int13;
113
-
114
97
  event.Event = payload.Event;
115
98
  event.ResourcePath = payload.ResourcePath;
116
99
  event.WidgetState = payload.WidgetState;
@@ -123,12 +106,10 @@ class TelemetryHelper {
123
106
  event.OCChatComponentsVersion = ((_TelemetryManager$Int13 = _TelemetryManager.TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int13 === void 0 ? void 0 : _TelemetryManager$Int13.chatComponentVersion) ?? "";
124
107
  });
125
108
  }
126
-
127
109
  static conformToIC3ClientContract(level, input) {
128
110
  const payload = input.payload;
129
111
  return TelemetryHelper.populate(level, payload, event => {
130
112
  var _TelemetryManager$Int14;
131
-
132
113
  event.Event = payload.Event;
133
114
  event.IC3ClientVersion = (_TelemetryManager$Int14 = _TelemetryManager.TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int14 === void 0 ? void 0 : _TelemetryManager$Int14.IC3ClientVersion;
134
115
  event.SubscriptionId = payload.SubscriptionId;
@@ -141,7 +122,6 @@ class TelemetryHelper {
141
122
  event.Description = payload.Description;
142
123
  });
143
124
  }
144
-
145
125
  static conformToACSAdapterContract(level, input) {
146
126
  const payload = input.payload;
147
127
  return TelemetryHelper.populate(level, payload, event => {
@@ -155,7 +135,6 @@ class TelemetryHelper {
155
135
  event.ExceptionDetails = payload.ExceptionDetails;
156
136
  });
157
137
  }
158
-
159
138
  static conformToCallingContract(level, input) {
160
139
  const payload = input.payload;
161
140
  return TelemetryHelper.populate(level, payload, event => {
@@ -166,7 +145,6 @@ class TelemetryHelper {
166
145
  event.Description = payload.Description;
167
146
  });
168
147
  }
169
-
170
148
  static conformToOCChatSDKContract(level, input) {
171
149
  const payload = input.payload;
172
150
  return TelemetryHelper.populate(level, payload, event => {
@@ -178,15 +156,12 @@ class TelemetryHelper {
178
156
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
179
157
  });
180
158
  }
181
-
182
159
  static addChatConfigDataToTelemetry(chatConfig, telemetryInternalData) {
183
160
  var _chatConfig$ChatWidge;
184
-
185
161
  const telemetryDataLocal = telemetryInternalData;
186
162
  telemetryDataLocal.chatWidgetLocaleLCID = (_chatConfig$ChatWidge = chatConfig.ChatWidgetLanguage) === null || _chatConfig$ChatWidge === void 0 ? void 0 : _chatConfig$ChatWidge.msdyn_localeid;
187
163
  return telemetryDataLocal;
188
164
  }
189
-
190
165
  static addWidgetDataToTelemetry(telemetryConfig, telemetryInternalData) {
191
166
  const telemetryDataLocal = telemetryInternalData;
192
167
  telemetryDataLocal.widgetId = telemetryConfig === null || telemetryConfig === void 0 ? void 0 : telemetryConfig.appId;
@@ -195,86 +170,85 @@ class TelemetryHelper {
195
170
  telemetryDataLocal.lcwRuntimeId = (0, _utils.newGuid)();
196
171
  return telemetryDataLocal;
197
172
  }
198
-
199
173
  static addSessionDataToTelemetry(chatSession, telemetryInternalData) {
200
174
  var _chatSession$chatToke, _chatSession$chatToke2;
201
-
202
175
  const telemetryDataLocal = telemetryInternalData;
203
176
  telemetryDataLocal.chatId = chatSession === null || chatSession === void 0 ? void 0 : (_chatSession$chatToke = chatSession.chatToken) === null || _chatSession$chatToke === void 0 ? void 0 : _chatSession$chatToke.chatId;
204
177
  telemetryDataLocal.currentRequestId = chatSession === null || chatSession === void 0 ? void 0 : (_chatSession$chatToke2 = chatSession.chatToken) === null || _chatSession$chatToke2 === void 0 ? void 0 : _chatSession$chatToke2.requestId;
205
178
  return telemetryInternalData;
206
179
  }
207
-
208
180
  static addConversationDataToTelemetry(liveWorkItem, telemetryInternalData) {
209
181
  const telemetryDataLocal = telemetryInternalData;
210
182
  telemetryDataLocal.conversationId = liveWorkItem.conversationId;
211
183
  return telemetryDataLocal;
212
184
  }
213
-
214
185
  }
215
-
216
186
  exports.TelemetryHelper = TelemetryHelper;
217
-
218
187
  _defineProperty(TelemetryHelper, "callId", void 0);
219
-
220
188
  _defineProperty(TelemetryHelper, "elapsedTime", void 0);
221
-
222
189
  _defineProperty(TelemetryHelper, "logCallingEvent", (logLevel, payload, callId) => {
223
190
  const telemetryEvent = {
224
191
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
225
192
  logLevel: logLevel,
226
- payload: { ...payload,
193
+ payload: {
194
+ ...payload,
227
195
  CallId: callId
228
196
  }
229
197
  };
230
-
231
198
  _omnichannelChatComponents.BroadcastService.postMessage(telemetryEvent);
232
199
  });
233
-
234
200
  _defineProperty(TelemetryHelper, "logLoadingEvent", (logLevel, payload) => {
235
201
  const telemetryEvent = {
236
202
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
237
203
  logLevel: logLevel,
238
- payload: { ...payload
204
+ payload: {
205
+ ...payload
239
206
  }
240
207
  };
241
-
242
208
  _omnichannelChatComponents.BroadcastService.postMessage(telemetryEvent);
243
209
  });
244
-
245
210
  _defineProperty(TelemetryHelper, "logActionEvent", (logLevel, payload) => {
246
211
  const telemetryEvent = {
247
212
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
248
213
  logLevel: logLevel,
249
- payload: { ...payload
214
+ payload: {
215
+ ...payload
250
216
  }
251
217
  };
252
-
253
218
  _omnichannelChatComponents.BroadcastService.postMessage(telemetryEvent);
254
219
  });
255
-
256
220
  _defineProperty(TelemetryHelper, "logSDKEvent", (logLevel, payload) => {
257
221
  var _TelemetryManager$Int15;
258
-
259
222
  const telemetryEvent = {
260
223
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
261
224
  logLevel: logLevel,
262
- payload: { ...payload,
225
+ payload: {
226
+ ...payload,
263
227
  TransactionId: (0, _utils.newGuid)(),
264
228
  RequestId: (_TelemetryManager$Int15 = _TelemetryManager.TelemetryManager.InternalTelemetryData) === null || _TelemetryManager$Int15 === void 0 ? void 0 : _TelemetryManager$Int15.currentRequestId
265
229
  }
266
230
  };
267
-
268
231
  _omnichannelChatComponents.BroadcastService.postMessage(telemetryEvent);
269
232
  });
270
-
271
233
  _defineProperty(TelemetryHelper, "logConfigDataEvent", (logLevel, payload) => {
272
234
  const telemetryEvent = {
273
235
  eventName: (payload === null || payload === void 0 ? void 0 : payload.Event) ?? "",
274
236
  logLevel: logLevel,
275
- payload: { ...payload
237
+ payload: {
238
+ ...payload
239
+ }
240
+ };
241
+ _omnichannelChatComponents.BroadcastService.postMessage(telemetryEvent);
242
+ });
243
+ _defineProperty(TelemetryHelper, "logWebChatEvent", (logLevel, payload) => {
244
+ const telemetryEvent = {
245
+ eventName: _TelemetryConstants.TelemetryEvent.WebChatEvent,
246
+ logLevel: logLevel,
247
+ payload: {
248
+ ...payload,
249
+ type: _TelemetryConstants.TelemetryEvent.WebChatEvent,
250
+ scenarioType: _TelemetryConstants.ScenarioType.WEBCHAT
276
251
  }
277
252
  };
278
-
279
253
  _omnichannelChatComponents.BroadcastService.postMessage(telemetryEvent);
280
254
  });