@microsoft/omnichannel-chat-widget 0.1.0-main.bcfe8a3 → 0.1.0-main.bf74329

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 (285) hide show
  1. package/lib/cjs/common/Constants.js +2 -165
  2. package/lib/cjs/common/KeyCodes.js +0 -3
  3. package/lib/cjs/common/contextDataStore/DataStoreManager.js +0 -4
  4. package/lib/cjs/common/storage/default/defaultCacheManager.js +24 -0
  5. package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +102 -0
  6. package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +78 -0
  7. package/lib/cjs/common/telemetry/TelemetryConstants.js +26 -18
  8. package/lib/cjs/common/telemetry/TelemetryHelper.js +14 -57
  9. package/lib/cjs/common/telemetry/TelemetryManager.js +0 -31
  10. package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +0 -2
  11. package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +30 -36
  12. package/lib/cjs/common/telemetry/loggers/consoleLogger.js +0 -9
  13. package/lib/cjs/common/utils.js +65 -93
  14. package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +6 -44
  15. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +5 -23
  16. package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +7 -32
  17. package/lib/cjs/components/dimlayer/DimLayer.js +0 -4
  18. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +8 -36
  19. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -8
  20. package/lib/cjs/components/footerstateful/FooterStateful.js +11 -42
  21. package/lib/cjs/components/footerstateful/audionotificationstateful/AudioNotificationStateful.js +0 -6
  22. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -45
  23. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -8
  24. package/lib/cjs/components/headerstateful/HeaderStateful.js +16 -30
  25. package/lib/cjs/components/livechatwidget/LiveChatWidget.js +2 -14
  26. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +37 -0
  27. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +18 -0
  28. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  29. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +32 -0
  30. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +62 -0
  31. package/lib/cjs/components/livechatwidget/common/Deferred.js +35 -0
  32. package/lib/cjs/components/livechatwidget/common/authHelper.js +50 -0
  33. package/lib/cjs/components/livechatwidget/common/createAdapter.js +10 -9
  34. package/lib/cjs/components/livechatwidget/common/createFooter.js +4 -23
  35. package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -10
  36. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +36 -43
  37. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +63 -38
  38. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
  39. package/lib/cjs/components/livechatwidget/common/endChat.js +50 -43
  40. package/lib/cjs/components/livechatwidget/common/getGeneralStylesForButton.js +0 -6
  41. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +7 -16
  42. package/lib/cjs/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -8
  43. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +27 -53
  44. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +68 -82
  45. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +4 -17
  46. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +2 -15
  47. package/lib/cjs/components/livechatwidget/common/shareObservable.js +41 -0
  48. package/lib/cjs/components/livechatwidget/common/startChat.js +145 -117
  49. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +0 -8
  50. package/lib/cjs/components/livechatwidget/common/updateSessionDataForTelemetry.js +2 -11
  51. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +203 -217
  52. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +4 -17
  53. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +4 -17
  54. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -17
  55. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -23
  56. package/lib/cjs/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  57. package/lib/cjs/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +13 -0
  58. package/lib/cjs/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  59. package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  60. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +10 -42
  61. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +3 -33
  62. package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +2 -24
  63. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +29 -34
  64. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -7
  65. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -6
  66. package/lib/cjs/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +11 -0
  67. package/lib/cjs/components/webchatcontainerstateful/common/mockadapter.js +9 -26
  68. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +3 -16
  69. package/lib/cjs/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -24
  70. package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +3 -15
  71. package/lib/cjs/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -8
  72. package/lib/cjs/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  73. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +0 -4
  74. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +0 -4
  75. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  76. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  77. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  78. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  79. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  80. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  81. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  82. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  83. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +0 -7
  84. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -5
  85. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -41
  86. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +9 -19
  87. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +23 -60
  88. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +7 -15
  89. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -13
  90. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -16
  91. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +10 -0
  92. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
  93. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -3
  94. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -3
  95. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
  96. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -9
  97. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +2 -30
  98. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +2 -12
  99. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +6 -28
  100. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +2 -11
  101. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +13 -30
  102. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +3 -9
  103. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -34
  104. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +1 -10
  105. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +1 -12
  106. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +5 -18
  107. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +1 -9
  108. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -9
  109. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +13 -34
  110. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +1 -10
  111. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +7 -11
  112. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +5 -14
  113. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -21
  114. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -12
  115. package/lib/cjs/contexts/ChatAdapterStore.js +0 -2
  116. package/lib/cjs/contexts/ChatContextStore.js +0 -2
  117. package/lib/cjs/contexts/ChatSDKStore.js +0 -2
  118. package/lib/cjs/contexts/common/ConversationState.js +3 -3
  119. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +2 -2
  120. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +10 -12
  121. package/lib/cjs/contexts/createReducer.js +140 -103
  122. package/lib/cjs/controller/componentController.js +3 -32
  123. package/lib/cjs/hooks/useChatAdapterStore.js +0 -6
  124. package/lib/cjs/hooks/useChatContextStore.js +0 -6
  125. package/lib/cjs/hooks/useChatSDKStore.js +0 -6
  126. package/lib/cjs/index.js +0 -5
  127. package/lib/cjs/plugins/newMessageEventHandler.js +15 -36
  128. package/lib/esm/common/Constants.js +2 -153
  129. package/lib/esm/common/KeyCodes.js +0 -2
  130. package/lib/esm/common/contextDataStore/DataStoreManager.js +0 -2
  131. package/lib/esm/common/storage/default/defaultCacheManager.js +16 -0
  132. package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +95 -0
  133. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +70 -0
  134. package/lib/esm/common/telemetry/TelemetryConstants.js +30 -15
  135. package/lib/esm/common/telemetry/TelemetryHelper.js +14 -45
  136. package/lib/esm/common/telemetry/TelemetryManager.js +0 -18
  137. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +28 -24
  138. package/lib/esm/common/telemetry/loggers/consoleLogger.js +0 -5
  139. package/lib/esm/common/utils.js +60 -50
  140. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +6 -15
  141. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +5 -6
  142. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +9 -13
  143. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +8 -15
  144. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
  145. package/lib/esm/components/footerstateful/FooterStateful.js +13 -23
  146. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -35
  147. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -6
  148. package/lib/esm/components/headerstateful/HeaderStateful.js +16 -15
  149. package/lib/esm/components/livechatwidget/LiveChatWidget.js +2 -2
  150. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +30 -0
  151. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +11 -0
  152. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  153. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +25 -0
  154. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +55 -0
  155. package/lib/esm/components/livechatwidget/common/Deferred.js +28 -0
  156. package/lib/esm/components/livechatwidget/common/authHelper.js +42 -0
  157. package/lib/esm/components/livechatwidget/common/createAdapter.js +12 -4
  158. package/lib/esm/components/livechatwidget/common/createFooter.js +4 -16
  159. package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -5
  160. package/lib/esm/components/livechatwidget/common/createMarkdown.js +38 -37
  161. package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +65 -25
  162. package/lib/esm/components/livechatwidget/common/endChat.js +52 -28
  163. package/lib/esm/components/livechatwidget/common/getGeneralStylesForButton.js +0 -2
  164. package/lib/esm/components/livechatwidget/common/initCallingSdk.js +9 -11
  165. package/lib/esm/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -5
  166. package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +30 -20
  167. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +71 -68
  168. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +4 -9
  169. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +4 -7
  170. package/lib/esm/components/livechatwidget/common/shareObservable.js +35 -0
  171. package/lib/esm/components/livechatwidget/common/startChat.js +147 -96
  172. package/lib/esm/components/livechatwidget/common/updateSessionDataForTelemetry.js +4 -2
  173. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +208 -156
  174. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +4 -5
  175. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +4 -5
  176. package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -5
  177. package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -11
  178. package/lib/esm/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  179. package/lib/esm/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +6 -0
  180. package/lib/esm/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  181. package/lib/esm/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  182. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +13 -26
  183. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +5 -9
  184. package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +2 -6
  185. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +27 -9
  186. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -1
  187. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
  188. package/lib/esm/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +4 -0
  189. package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +9 -18
  190. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +3 -12
  191. package/lib/esm/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -16
  192. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +3 -5
  193. package/lib/esm/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -6
  194. package/lib/esm/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  195. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +0 -2
  196. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +0 -2
  197. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  198. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  199. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  200. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  201. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  202. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  203. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  204. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  205. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +2 -5
  206. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -4
  207. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -26
  208. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +11 -11
  209. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +23 -38
  210. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +9 -8
  211. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -9
  212. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -14
  213. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +3 -0
  214. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +3 -0
  215. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -1
  216. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -1
  217. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +3 -0
  218. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -7
  219. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +4 -28
  220. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +3 -3
  221. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +7 -14
  222. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +3 -3
  223. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +15 -19
  224. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +5 -8
  225. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -29
  226. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +3 -7
  227. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +3 -8
  228. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +5 -13
  229. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +3 -7
  230. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -7
  231. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +15 -27
  232. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +3 -5
  233. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +9 -9
  234. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +7 -9
  235. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -13
  236. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -5
  237. package/lib/esm/contexts/ChatAdapterStore.js +2 -1
  238. package/lib/esm/contexts/ChatContextStore.js +2 -1
  239. package/lib/esm/contexts/ChatSDKStore.js +2 -1
  240. package/lib/esm/contexts/common/ConversationState.js +3 -3
  241. package/lib/esm/contexts/common/LiveChatWidgetActionType.js +2 -2
  242. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +10 -8
  243. package/lib/esm/contexts/createReducer.js +140 -100
  244. package/lib/esm/controller/componentController.js +4 -3
  245. package/lib/esm/hooks/useChatAdapterStore.js +0 -4
  246. package/lib/esm/hooks/useChatContextStore.js +0 -4
  247. package/lib/esm/hooks/useChatSDKStore.js +0 -4
  248. package/lib/esm/plugins/newMessageEventHandler.js +15 -26
  249. package/lib/types/common/Constants.d.ts +2 -0
  250. package/lib/types/common/storage/default/defaultCacheManager.d.ts +4 -0
  251. package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +2 -0
  252. package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -0
  253. package/lib/types/common/telemetry/TelemetryConstants.d.ts +15 -2
  254. package/lib/types/common/utils.d.ts +7 -3
  255. package/lib/types/components/headerstateful/interfaces/IHeaderStatefulParams.d.ts +2 -1
  256. package/lib/types/components/livechatwidget/common/ActivityStreamHandler.d.ts +14 -0
  257. package/lib/types/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.d.ts +5 -0
  258. package/lib/types/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.d.ts +6 -0
  259. package/lib/types/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.d.ts +7 -0
  260. package/lib/types/components/livechatwidget/common/ChatAdapterShim.d.ts +7 -0
  261. package/lib/types/components/livechatwidget/common/Deferred.d.ts +9 -0
  262. package/lib/types/components/livechatwidget/common/authHelper.d.ts +5 -0
  263. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +5 -4
  264. package/lib/types/components/livechatwidget/common/shareObservable.d.ts +1 -0
  265. package/lib/types/components/livechatwidget/common/startChat.d.ts +4 -2
  266. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +1 -0
  267. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +3 -2
  268. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
  269. package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -0
  270. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
  271. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +0 -1
  272. package/lib/types/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.d.ts +2 -0
  273. package/lib/types/components/webchatcontainerstateful/common/mockchatsdk.d.ts +1 -0
  274. package/lib/types/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.d.ts +4 -0
  275. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +4 -1
  276. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatContainerStatefulProps.d.ts +2 -0
  277. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.d.ts +1 -1
  278. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +2 -0
  279. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  280. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  281. package/lib/types/contexts/common/ConversationState.d.ts +3 -2
  282. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +2 -2
  283. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +3 -2
  284. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
  285. package/package.json +5 -4
@@ -1,317 +1,166 @@
1
1
  var _class;
2
-
3
2
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4
-
5
3
  export class Constants {}
6
-
7
4
  _defineProperty(Constants, "magicCodeBroadcastChannel", "MagicCodeChannel");
8
-
9
5
  _defineProperty(Constants, "magicCodeResponseBroadcastChannel", "MagicCodeResponseChannel");
10
-
11
6
  _defineProperty(Constants, "systemMessageTag", "system");
12
-
13
7
  _defineProperty(Constants, "userMessageTag", "user");
14
-
15
8
  _defineProperty(Constants, "historyMessageTag", "history");
16
-
17
9
  _defineProperty(Constants, "agentEndConversationMessageTag", "agentendconversation");
18
-
19
10
  _defineProperty(Constants, "supervisorForceCloseMessageTag", "supervisorforceclosedconversation");
20
-
21
11
  _defineProperty(Constants, "receivedMessageClassName", "ms_lcw_webchat_received_message");
22
-
23
12
  _defineProperty(Constants, "sentMessageClassName", "ms_lcw_webchat_sent_message");
24
-
25
13
  _defineProperty(Constants, "webchatChannelId", "webchat");
26
-
27
14
  _defineProperty(Constants, "markdown", "markdown");
28
-
29
15
  _defineProperty(Constants, "actionType", "actionType");
30
-
31
16
  _defineProperty(Constants, "String", "string");
32
-
33
17
  _defineProperty(Constants, "ChatMessagesJson", "chatMessagesJson");
34
-
35
18
  _defineProperty(Constants, "truePascal", "True");
36
-
37
19
  _defineProperty(Constants, "true", "true");
38
-
39
20
  _defineProperty(Constants, "false", "false");
40
-
41
21
  _defineProperty(Constants, "maximumUnreadMessageCount", 99);
42
-
43
22
  _defineProperty(Constants, "channelIdKey", "ChannelId-");
44
-
45
23
  _defineProperty(Constants, "ChannelId", "lcw");
46
-
47
24
  _defineProperty(Constants, "CustomerTag", "FromCustomer");
48
-
49
25
  _defineProperty(Constants, "GifContentType", "image/gif");
50
-
51
26
  _defineProperty(Constants, "video", "video");
52
-
53
27
  _defineProperty(Constants, "audio", "audio");
54
-
55
28
  _defineProperty(Constants, "controlsList", "controlsList");
56
-
57
29
  _defineProperty(Constants, "nodownload", "nodownload");
58
-
59
30
  _defineProperty(Constants, "activity", "activity");
60
-
61
31
  _defineProperty(Constants, "payload", "payload");
62
-
63
32
  _defineProperty(Constants, "text", "text");
64
-
65
33
  _defineProperty(Constants, "blank", "_blank");
66
-
67
34
  _defineProperty(Constants, "visitorIdPrefix", "8:");
68
-
69
35
  _defineProperty(Constants, "left", "left");
70
-
71
36
  _defineProperty(Constants, "queuePositionMessageTag", "queueposition");
72
-
73
37
  _defineProperty(Constants, "averageWaitTimeMessageTag", "averagewaittime");
74
-
75
38
  _defineProperty(Constants, "message", "message");
76
-
77
39
  _defineProperty(Constants, "hiddenTag", "Hidden");
78
-
79
40
  _defineProperty(Constants, "prefixTimestampTag", "ServerMessageTimestamp_");
80
-
81
41
  _defineProperty(Constants, "acsChannel", "ACS_CHANNEL");
82
-
83
42
  _defineProperty(Constants, "publicMessageTag", "public");
84
-
85
43
  _defineProperty(Constants, "supportedAdaptiveCardContentTypes", ["application/vnd.microsoft.card.adaptive", "application/vnd.microsoft.card.audio", "application/vnd.microsoft.card.hero", "application/vnd.microsoft.card.receipt", "application/vnd.microsoft.card.thumbnail", "application/vnd.microsoft.card.signin", "application/vnd.microsoft.card.oauth"]);
86
-
87
44
  _defineProperty(Constants, "maxUploadFileSize", "500000");
88
-
89
45
  _defineProperty(Constants, "imageRegex", /(\.)(jpeg|jpg|jiff|png|gif|bmp)$/i);
90
-
91
46
  _defineProperty(Constants, "audioMediaRegex", /(\.)(aac|aiff|alac|flac|mp2|mp3|pcm|wav|wma)$/i);
92
-
93
47
  _defineProperty(Constants, "videoMediaRegex", /(\.)(avchd|avi|flv|mpe|mpeg|mpg|mpv|mp4|m4p|m4v|mov|qt|swf|webm|wmv)$/i);
94
-
95
48
  _defineProperty(Constants, "chromeSupportedInlineMediaRegex", /(\.)(aac|mp3|wav|mp4)$/i);
96
-
97
49
  _defineProperty(Constants, "firefoxSupportedInlineMediaRegex", /(\.)(aac|flac|mp3|wav|mp4|mov)$/i);
98
-
99
50
  _defineProperty(Constants, "CallAdded", "callAdded");
100
-
101
51
  _defineProperty(Constants, "LocalVideoStreamAdded", "localVideoStreamAdded");
102
-
103
52
  _defineProperty(Constants, "LocalVideoStreamRemoved", "localVideoStreamRemoved");
104
-
105
53
  _defineProperty(Constants, "RemoteVideoStreamAdded", "remoteVideoStreamAdded");
106
-
107
54
  _defineProperty(Constants, "RemoteVideoStreamRemoved", "remoteVideoStreamRemoved");
108
-
109
55
  _defineProperty(Constants, "CallDisconnected", "callDisconnected");
110
-
111
56
  _defineProperty(Constants, "IncomingCallEnded", "incomingCallEnded");
112
-
113
57
  _defineProperty(Constants, "VoiceVideoInitialize", "voiceVideoInitialize");
114
-
115
58
  _defineProperty(Constants, "VoiceVideoInitializeException", "voiceVideoInitializeOnException");
116
-
117
59
  _defineProperty(Constants, "VoiceVideoLoading", "voiceVideoLoading");
118
-
119
60
  _defineProperty(Constants, "VoiceVideoNotLoaded", "voiceVideoNotLoaded");
120
-
121
61
  _defineProperty(Constants, "VoiceVideoLoadingException", "voiceVideoLoadingOnException");
122
-
123
62
  _defineProperty(Constants, "VoiceVideoAcceptCallException", "voiceVideoAcceptCallOnException");
124
-
125
63
  _defineProperty(Constants, "VoiceVideoAcceptCallWithVideoException", "voiceVideoAcceptCallWithVideoException");
126
-
127
64
  _defineProperty(Constants, "defaultDownloadTranscriptError", "Download transcript failed.");
128
-
129
65
  _defineProperty(Constants, "ProactiveChatInviteTimeoutInMs", 60000);
130
-
131
66
  _defineProperty(Constants, "InputSubmit", "InputSubmit");
132
-
133
67
  _defineProperty(Constants, "ReconnectIdAttributeName", "oc.reconnectid");
134
-
135
68
  _defineProperty(Constants, "LiveChatWidget", "LiveChatWidgetNew");
136
-
137
69
  _defineProperty(Constants, "GuidPattern", "xx-x-4m-ym-xxx");
138
-
139
70
  _defineProperty(Constants, "Default", "default");
140
-
141
71
  _defineProperty(Constants, "Zero", "zero");
142
-
143
72
  _defineProperty(Constants, "Title", "title");
144
-
145
73
  _defineProperty(Constants, "Target", "target");
146
-
147
74
  _defineProperty(Constants, "Blank", "_blank");
148
-
149
75
  _defineProperty(Constants, "TargetRelationship", "rel");
150
-
151
76
  _defineProperty(Constants, "TargetRelationshipAttributes", "noopener noreferrer");
152
-
153
77
  _defineProperty(Constants, "OpenLinkIconCssClass", "webchat__markdown__external-link-icon");
154
-
155
78
  _defineProperty(Constants, "internetConnectionTestUrl", "https://ocsdk-prod.azureedge.net/public/connecttest.txt");
156
-
157
79
  _defineProperty(Constants, "internetConnectionTestUrlText", "Omnichannel Connect Test");
158
-
159
80
  _defineProperty(Constants, "ChatWidgetStateChangedPrefix", "ChatWidgetStateChanged");
160
-
81
+ _defineProperty(Constants, "PostChatLoadingDurationInMs", 2000);
82
+ _defineProperty(Constants, "BrowserUnloadConfirmationMessage", "Do you want to leave chat?");
161
83
  export const Regex = (_class = class Regex {}, _defineProperty(_class, "EmailRegex", "(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-zA-Z0-9-]*[a-zA-Z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])"), _class);
162
84
  export class HtmlIdNames {}
163
-
164
85
  _defineProperty(HtmlIdNames, "MSLiveChatWidget", "MSLiveChatWidget");
165
-
166
86
  export class HtmlClassNames {}
167
-
168
87
  _defineProperty(HtmlClassNames, "webChatBannerCloseButton", "webchat__toast__dismissButton");
169
-
170
88
  _defineProperty(HtmlClassNames, "webChatBannerExpandButton", "webchat__toaster__expandIcon");
171
-
172
89
  export class HtmlElementSelectors {}
173
-
174
90
  _defineProperty(HtmlElementSelectors, "sendBoxSelector", "textarea[data-id=\"webchat-sendbox-input\"]");
175
-
176
91
  export class HtmlAttributeNames {}
177
-
178
92
  _defineProperty(HtmlAttributeNames, "role", "role");
179
-
180
93
  _defineProperty(HtmlAttributeNames, "navigation", "navigation");
181
-
182
94
  _defineProperty(HtmlAttributeNames, "ariaLabel", "aria-label");
183
-
184
95
  _defineProperty(HtmlAttributeNames, "ariaLive", "aria-live");
185
-
186
96
  _defineProperty(HtmlAttributeNames, "ariaDisabled", "aria-disabled");
187
-
188
97
  _defineProperty(HtmlAttributeNames, "form", "form");
189
-
190
98
  _defineProperty(HtmlAttributeNames, "ariaLabelledby", "aria-labelledby");
191
-
192
99
  _defineProperty(HtmlAttributeNames, "tabindex", "tabindex");
193
-
194
100
  _defineProperty(HtmlAttributeNames, "ariaRequired", "aria-required");
195
-
196
101
  _defineProperty(HtmlAttributeNames, "ariaDesribedby", "aria-describedby");
197
-
198
102
  _defineProperty(HtmlAttributeNames, "ariaHidden", "aria-hidden");
199
-
200
103
  _defineProperty(HtmlAttributeNames, "disabled", "disabled");
201
-
202
104
  _defineProperty(HtmlAttributeNames, "hidden", "hidden");
203
-
204
105
  _defineProperty(HtmlAttributeNames, "download", "download");
205
-
206
106
  _defineProperty(HtmlAttributeNames, "href", "href");
207
-
208
107
  _defineProperty(HtmlAttributeNames, "region", "region");
209
-
210
108
  _defineProperty(HtmlAttributeNames, "button", "button");
211
-
212
109
  _defineProperty(HtmlAttributeNames, "input", "Input");
213
-
214
110
  _defineProperty(HtmlAttributeNames, "style", "style");
215
-
216
111
  _defineProperty(HtmlAttributeNames, "head", "head");
217
-
218
112
  _defineProperty(HtmlAttributeNames, "type", "type");
219
-
220
113
  _defineProperty(HtmlAttributeNames, "csstext", "text/css");
221
-
222
114
  _defineProperty(HtmlAttributeNames, "listItem", "LI");
223
-
224
115
  _defineProperty(HtmlAttributeNames, "unorderedList", "UL");
225
-
226
116
  _defineProperty(HtmlAttributeNames, "div", "div");
227
-
228
117
  _defineProperty(HtmlAttributeNames, "aTagName", "a");
229
-
230
118
  _defineProperty(HtmlAttributeNames, "noopenerTag", "noopener");
231
-
232
119
  _defineProperty(HtmlAttributeNames, "noreferrerTag", "noreferrer");
233
-
234
120
  _defineProperty(HtmlAttributeNames, "adaptiveCardClassName", "ac-adaptiveCard");
235
-
236
121
  _defineProperty(HtmlAttributeNames, "adaptiveCardTextBlockClassName", "ac-textBlock");
237
-
238
122
  _defineProperty(HtmlAttributeNames, "adaptiveCardToggleInputClassName", "ac-toggleInput");
239
-
240
123
  export class WebChatMiddlewareConstants {}
241
-
242
124
  _defineProperty(WebChatMiddlewareConstants, "nextVisibleActivity", "nextVisibleActivity");
243
-
244
125
  _defineProperty(WebChatMiddlewareConstants, "timeBetweenTimestampGroups", 300000);
245
-
246
126
  _defineProperty(WebChatMiddlewareConstants, "maxTextLength", 6000);
247
-
248
127
  _defineProperty(WebChatMiddlewareConstants, "adaptiveCard", "AdaptiveCard");
249
-
250
128
  export class MimeTypes {}
251
-
252
129
  _defineProperty(MimeTypes, "UnknownFileType", "application/octet-stream");
253
-
254
130
  export class LocaleConstants {}
255
-
256
131
  _defineProperty(LocaleConstants, "RTL_LOCALES", ["1025", "1037"]);
257
-
258
132
  export let ElementType;
259
-
260
133
  (function (ElementType) {
261
134
  ElementType["CallingContainerSDK"] = "CallingContainerSDK";
262
135
  })(ElementType || (ElementType = {}));
263
-
264
136
  export let ChatSDKError;
265
-
266
137
  (function (ChatSDKError) {
267
138
  ChatSDKError["WidgetUseOutsideOperatingHour"] = "WidgetUseOutsideOperatingHour";
268
139
  })(ChatSDKError || (ChatSDKError = {}));
269
-
270
140
  export let EnvironmentVersion;
271
-
272
141
  (function (EnvironmentVersion) {
273
142
  EnvironmentVersion["prod"] = "prod";
274
143
  EnvironmentVersion["dogfood"] = "df";
275
144
  EnvironmentVersion["int"] = "int";
276
145
  EnvironmentVersion["test"] = "test";
277
146
  })(EnvironmentVersion || (EnvironmentVersion = {}));
278
-
279
147
  export class TranscriptConstants {}
280
-
281
148
  _defineProperty(TranscriptConstants, "ChatTranscriptsBodyColor", "#F5F5F5");
282
-
283
149
  _defineProperty(TranscriptConstants, "TranscriptMessageEmojiMessageType", "http://schema.skype.com/emoji");
284
-
285
150
  _defineProperty(TranscriptConstants, "ChatTranscriptDownloadFile", "ChatTranscripts.html");
286
-
287
151
  _defineProperty(TranscriptConstants, "DefaultFileAttachmentName", "Untitled.txt");
288
-
289
152
  _defineProperty(TranscriptConstants, "CustomerDialogColor", "#E8E8E8");
290
-
291
153
  _defineProperty(TranscriptConstants, "CustomerFontColor", "black");
292
-
293
154
  _defineProperty(TranscriptConstants, "AdaptiveCardType", "adaptivecard");
294
-
295
155
  _defineProperty(TranscriptConstants, "InternalMode", "internal");
296
-
297
156
  _defineProperty(TranscriptConstants, "AgentDialogColor", "#2266E3");
298
-
299
157
  _defineProperty(TranscriptConstants, "AgentFontColor", "white");
300
-
301
158
  export class AriaTelemetryConstants {}
302
-
303
159
  _defineProperty(AriaTelemetryConstants, "GERMANY_ENDPOINT", "https://de.pipe.aria.microsoft.com/Collector/3.0/");
304
-
305
160
  _defineProperty(AriaTelemetryConstants, "GCCH_ENDPOINT", "https://tb.pipe.aria.microsoft.com/Collector/3.0/");
306
-
307
161
  _defineProperty(AriaTelemetryConstants, "DOD_ENDPOINT", "https://pf.pipe.aria.microsoft.com/Collector/3.0");
308
-
309
162
  _defineProperty(AriaTelemetryConstants, "EUROPE_ENDPOINT", "https://eu-mobile.events.data.microsoft.com/Collector/3.0/");
310
-
311
163
  _defineProperty(AriaTelemetryConstants, "MOONCAKE_ENDPOINT", "");
312
-
313
164
  _defineProperty(AriaTelemetryConstants, "Public", "Public");
314
-
315
165
  _defineProperty(AriaTelemetryConstants, "EU", "Europe");
316
-
317
166
  _defineProperty(AriaTelemetryConstants, "lcwEUDomainNames", ["crm4.omnichannelengagementhub.com", "crm12.omnichannelengagementhub.com", "crm16.omnichannelengagementhub.com", "crm17.omnichannelengagementhub.com", "crm19.omnichannelengagementhub.com"]);
@@ -1,5 +1,3 @@
1
1
  var _class;
2
-
3
2
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4
-
5
3
  export const KeyCodes = (_class = class KeyCodes {}, _defineProperty(_class, "ENTER", "Enter"), _defineProperty(_class, "TAB", "Tab"), _class);
@@ -1,5 +1,3 @@
1
1
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
-
3
2
  export class DataStoreManager {}
4
-
5
3
  _defineProperty(DataStoreManager, "clientDataStore", void 0);
@@ -0,0 +1,16 @@
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
+ import { BroadcastService } from "@microsoft/omnichannel-chat-components";
3
+ import { getWidgetCacheId } from "../../utils";
4
+ import { defaultClientDataStoreProvider } from "./defaultClientDataStoreProvider";
5
+ export class defaultCacheManager {}
6
+ _defineProperty(defaultCacheManager, "InternalCache", {});
7
+ export const registerBroadcastServiceForLocalStorage = (orgid, widgetId, widgetInstanceId) => {
8
+ const widgetCacheId = getWidgetCacheId(orgid, widgetId, widgetInstanceId);
9
+ BroadcastService.getMessageByEventName(widgetCacheId).subscribe(msg => {
10
+ try {
11
+ defaultClientDataStoreProvider().setData(widgetCacheId, JSON.stringify(msg.payload), "localStorage");
12
+ } catch (error) {
13
+ console.error("Error in setting data to localstorage", error);
14
+ }
15
+ });
16
+ };
@@ -0,0 +1,95 @@
1
+ import { inMemoryDataStore } from "./defaultInMemoryDataStore";
2
+ import { TelemetryHelper } from "../../telemetry/TelemetryHelper";
3
+ import { LogLevel, TelemetryEvent } from "../../telemetry/TelemetryConstants";
4
+ export const defaultClientDataStoreProvider = () => {
5
+ const isCookieAllowed = () => {
6
+ try {
7
+ localStorage;
8
+ sessionStorage;
9
+ return true;
10
+ } catch (error) {
11
+ console.error("Third party cookie blocked");
12
+ return false;
13
+ }
14
+ };
15
+ const TtlInMs = 15 * 60 * 1000; // 15 mins
16
+ const dataStoreProvider = {
17
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
18
+ setData: (key, data, type) => {
19
+ if (isCookieAllowed()) {
20
+ try {
21
+ if (key) {
22
+ const now = new Date();
23
+ const item = {
24
+ data: data,
25
+ expiry: now.getTime() + TtlInMs
26
+ };
27
+ const strItem = JSON.stringify(item);
28
+ if (type === "localStorage") {
29
+ localStorage.setItem(key, strItem);
30
+ } else {
31
+ sessionStorage.setItem(key, strItem);
32
+ }
33
+ }
34
+ } catch (error) {
35
+ TelemetryHelper.logConfigDataEvent(LogLevel.ERROR, {
36
+ Event: TelemetryEvent.ClientDataStoreProviderFailed,
37
+ ExceptionDetails: error,
38
+ Description: "Unable to store data in localStorage."
39
+ });
40
+ }
41
+ } else {
42
+ const dataToCache = {
43
+ key: key,
44
+ data: data,
45
+ type: type
46
+ };
47
+ parent.postMessage(dataToCache, "*");
48
+ }
49
+ },
50
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
51
+ getData: (key, type) => {
52
+ if (isCookieAllowed()) {
53
+ let item;
54
+ if (type === "localStorage") {
55
+ item = localStorage.getItem(key);
56
+ } else {
57
+ item = sessionStorage.getItem(key);
58
+ }
59
+ //Return item if not expired
60
+ let itemInJson = undefined;
61
+ if (item !== null) {
62
+ itemInJson = JSON.parse(item);
63
+ const now = new Date();
64
+ // compare the expiry time of the item with the current time
65
+ if (now.getTime() > itemInJson.expiry) {
66
+ // If the item is expired, delete the item from storage
67
+ // and return null
68
+ localStorage.removeItem(key);
69
+ return null;
70
+ }
71
+ return itemInJson.data;
72
+ }
73
+ } else {
74
+ // get data from in memory db when cookie is disabled
75
+ return inMemoryDataStore().getData(key);
76
+ }
77
+ },
78
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
79
+ removeData: (key, type) => {
80
+ if (isCookieAllowed()) {
81
+ if (key) {
82
+ if (type === "localStorage") {
83
+ return localStorage.removeItem(key);
84
+ } else {
85
+ return sessionStorage.removeItem(key);
86
+ }
87
+ }
88
+ } else {
89
+ // get data from in memory db when cookie is disabled
90
+ return inMemoryDataStore().removeData(key);
91
+ }
92
+ }
93
+ };
94
+ return dataStoreProvider;
95
+ };
@@ -0,0 +1,70 @@
1
+ import { LogLevel, TelemetryEvent } from "../../telemetry/TelemetryConstants";
2
+ import { TelemetryHelper } from "../../telemetry/TelemetryHelper";
3
+ import { defaultCacheManager } from "./defaultCacheManager";
4
+ export const defaultInitializeInMemoryDataStore = widgetId => {
5
+ try {
6
+ localStorage;
7
+ } catch (error) {
8
+ // Register below events when localStorage is not accessible
9
+ // Listening to event raised from client browser
10
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
+ window.addEventListener("message", function (e) {
12
+ try {
13
+ if (e.data.key) {
14
+ const browserData = e.data;
15
+ if (defaultCacheManager.InternalCache[browserData.key]) {
16
+ delete defaultCacheManager.InternalCache[browserData.key];
17
+ }
18
+ defaultCacheManager.InternalCache[browserData.key] = browserData.data;
19
+ }
20
+ } catch (error) {
21
+ TelemetryHelper.logConfigDataEvent(LogLevel.ERROR, {
22
+ Event: TelemetryEvent.InMemoryDataStoreFailed,
23
+ ExceptionDetails: error,
24
+ Description: "Unable to register default in-memory cache."
25
+ });
26
+ }
27
+ });
28
+
29
+ // send cache initialize message to client
30
+ if (defaultCacheManager.InternalCache === undefined || {}) {
31
+ parent.postMessage({
32
+ data: "cacheinitialize",
33
+ widgetId: widgetId
34
+ }, "*");
35
+ }
36
+ }
37
+ };
38
+ export const inMemoryDataStore = () => {
39
+ const dataStoreProvider = {
40
+ getData: key => {
41
+ if (defaultCacheManager.InternalCache && defaultCacheManager.InternalCache[key]) {
42
+ return defaultCacheManager.InternalCache[key];
43
+ }
44
+ },
45
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
46
+ setData: (key, data) => {
47
+ try {
48
+ defaultCacheManager.InternalCache[key] = data;
49
+ } catch (error) {
50
+ TelemetryHelper.logConfigDataEvent(LogLevel.ERROR, {
51
+ Event: TelemetryEvent.InMemoryDataStoreFailed,
52
+ ExceptionDetails: error,
53
+ Description: "Unable to set data in default in-memory cache."
54
+ });
55
+ }
56
+ },
57
+ removeData: key => {
58
+ try {
59
+ defaultCacheManager.InternalCache[key] = {};
60
+ } catch (error) {
61
+ TelemetryHelper.logConfigDataEvent(LogLevel.ERROR, {
62
+ Event: TelemetryEvent.InMemoryDataStoreFailed,
63
+ ExceptionDetails: error,
64
+ Description: "Unable to remove data from default in-memory cache."
65
+ });
66
+ }
67
+ }
68
+ };
69
+ return dataStoreProvider;
70
+ };
@@ -1,5 +1,4 @@
1
1
  export let ScenarioType;
2
-
3
2
  (function (ScenarioType) {
4
3
  ScenarioType["CONFIG_VALIDATION"] = "LCW_ConfigValidationEvents";
5
4
  ScenarioType["LOAD"] = "LCW_LoadEvents";
@@ -12,18 +11,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,6 +36,7 @@ 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
42
  BroadcastEvent["StartChatSkippingChatButtonRendering"] = "StartChatSkippingChatButtonRendering";
@@ -48,10 +48,9 @@ export let BroadcastEvent; // Events being logged
48
48
  BroadcastEvent["ChatInitiated"] = "ChatInitiated";
49
49
  BroadcastEvent["CloseChat"] = "CloseChat";
50
50
  BroadcastEvent["InitiateEndChatOnBrowserUnload"] = "InitiateEndChatOnBrowserUnload";
51
+ BroadcastEvent["ClosePopoutWindow"] = "ClosePopoutWindow";
51
52
  })(BroadcastEvent || (BroadcastEvent = {}));
52
-
53
53
  export let TelemetryEvent;
54
-
55
54
  (function (TelemetryEvent) {
56
55
  TelemetryEvent["CallAdded"] = "CallAdded";
57
56
  TelemetryEvent["LocalVideoStreamAdded"] = "LocalVideoStreamAdded";
@@ -88,6 +87,8 @@ export let TelemetryEvent;
88
87
  TelemetryEvent["PostChatContextCallSucceed"] = "PostChatContextCallSucceed";
89
88
  TelemetryEvent["PostChatContextCallFailed"] = "PostChatContextCallFailed";
90
89
  TelemetryEvent["ParseAdaptiveCardFailed"] = "ParseAdaptiveCardFailed";
90
+ TelemetryEvent["ClientDataStoreProviderFailed"] = "ClientDataStoreProviderFailed";
91
+ TelemetryEvent["InMemoryDataStoreFailed"] = "InMemoryDataStoreFailed";
91
92
  TelemetryEvent["WebChatLoaded"] = "WebChatLoaded";
92
93
  TelemetryEvent["LCWChatButtonClicked"] = "LCWChatButtonClicked";
93
94
  TelemetryEvent["LCWChatButtonShow"] = "LCWChatButtonShow";
@@ -128,6 +129,13 @@ export let TelemetryEvent;
128
129
  TelemetryEvent["AudioToggleButtonClicked"] = "AudioToggleButtonClicked";
129
130
  TelemetryEvent["SuppressBotMagicCodeSucceeded"] = "SuppressBotMagicCodeSucceeded";
130
131
  TelemetryEvent["SuppressBotMagicCodeFailed"] = "SuppressBotMagicCodeFailed";
132
+ TelemetryEvent["GetConversationDetailsException"] = "GetConversationDetailsException";
133
+ TelemetryEvent["BrowserUnloadEventStarted"] = "BrowserUnloadEventStarted";
134
+ TelemetryEvent["GetAuthTokenCalled"] = "GetAuthTokenCalled";
135
+ TelemetryEvent["ReceivedNullOrEmptyToken"] = "ReceivedNullOrEmptyToken";
136
+ TelemetryEvent["CustomerVoiceResponsePageLoaded"] = "CustomerVoiceResponsePageLoaded";
137
+ TelemetryEvent["CustomerVoiceFormResponseSubmitted"] = "CustomerVoiceFormResponseSubmitted";
138
+ TelemetryEvent["CustomerVoiceFormResponseError"] = "CustomerVoiceFormResponseError";
131
139
  TelemetryEvent["ProcessingHTMLTextMiddlewareFailed"] = "ProcessingHTMLTextMiddlewareFailed";
132
140
  TelemetryEvent["ProcessingSanitizationMiddlewareFailed"] = "ProcessingSanitizationMiddlewareFailed";
133
141
  TelemetryEvent["FormatTagsMiddlewareJSONStringifyFailed"] = "FormatTagsMiddlewareJSONStringifyFailed";
@@ -154,14 +162,18 @@ export let TelemetryEvent;
154
162
  TelemetryEvent["MessageSent"] = "MessageSent";
155
163
  TelemetryEvent["MessageReceived"] = "MessageReceived";
156
164
  TelemetryEvent["CustomContextReceived"] = "CustomContextReceived";
165
+ TelemetryEvent["NetworkDisconnected"] = "NetworkDisconnected";
166
+ TelemetryEvent["NetworkReconnected"] = "NetworkReconnected";
157
167
  })(TelemetryEvent || (TelemetryEvent = {}));
158
-
159
168
  export class TelemetryConstants {
160
169
  static map(eventTypeOrScenarioType) {
161
170
  switch (eventTypeOrScenarioType) {
162
171
  case TelemetryEvent.ParseAdaptiveCardFailed:
172
+ case TelemetryEvent.ReceivedNullOrEmptyToken:
173
+ case TelemetryEvent.GetAuthTokenCalled:
174
+ case TelemetryEvent.SuppressBotMagicCodeSucceeded:
175
+ case TelemetryEvent.SuppressBotMagicCodeFailed:
163
176
  return ScenarioType.CONFIG_VALIDATION;
164
-
165
177
  case TelemetryEvent.WebChatLoaded:
166
178
  case TelemetryEvent.WidgetLoadComplete:
167
179
  case TelemetryEvent.WidgetLoadFailed:
@@ -176,7 +188,6 @@ export class TelemetryConstants {
176
188
  case TelemetryEvent.ConfirmationPaneLoaded:
177
189
  case TelemetryEvent.ProactiveChatPaneLoaded:
178
190
  return ScenarioType.LOAD;
179
-
180
191
  case TelemetryEvent.PrechatSubmitted:
181
192
  case TelemetryEvent.LCWChatButtonClicked:
182
193
  case TelemetryEvent.ProactiveChatAccepted:
@@ -199,8 +210,15 @@ export class TelemetryConstants {
199
210
  case TelemetryEvent.MessageSent:
200
211
  case TelemetryEvent.MessageReceived:
201
212
  case TelemetryEvent.CustomContextReceived:
213
+ case TelemetryEvent.BrowserUnloadEventStarted:
214
+ case TelemetryEvent.NetworkDisconnected:
215
+ case TelemetryEvent.NetworkReconnected:
216
+ case TelemetryEvent.AudioToggleButtonClicked:
217
+ case TelemetryEvent.EmailTranscriptCancelButtonClicked:
218
+ case TelemetryEvent.CustomerVoiceResponsePageLoaded:
219
+ case TelemetryEvent.CustomerVoiceFormResponseSubmitted:
220
+ case TelemetryEvent.CustomerVoiceFormResponseError:
202
221
  return ScenarioType.ACTIONS;
203
-
204
222
  case TelemetryEvent.StartChatSDKCall:
205
223
  case TelemetryEvent.StartChatEventRecevied:
206
224
  case TelemetryEvent.StartChatMethodException:
@@ -215,8 +233,8 @@ export class TelemetryConstants {
215
233
  case TelemetryEvent.EndChatSDKCallFailed:
216
234
  case TelemetryEvent.PostChatContextCallFailed:
217
235
  case TelemetryEvent.PostChatContextCallSucceed:
236
+ case TelemetryEvent.GetConversationDetailsException:
218
237
  return ScenarioType.SDK;
219
-
220
238
  case TelemetryEvent.VideoCallAcceptButtonClick:
221
239
  case TelemetryEvent.CallAdded:
222
240
  case TelemetryEvent.LocalVideoStreamAdded:
@@ -247,14 +265,11 @@ export class TelemetryConstants {
247
265
  case TelemetryEvent.CallingSDKLoadSuccess:
248
266
  case TelemetryEvent.CallingSDKLoadFailed:
249
267
  return ScenarioType.CALLING;
250
-
251
268
  default:
252
269
  return ScenarioType.ACTIONS;
253
270
  }
254
271
  }
255
-
256
272
  static mapEventToScenario(eventTypeOrScenarioType) {
257
273
  return TelemetryConstants.map(eventTypeOrScenarioType);
258
274
  }
259
-
260
275
  }