@microsoft/omnichannel-chat-widget 0.1.0-main.8b6c0d8 → 0.1.0-main.8cded52

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 (205) hide show
  1. package/README.md +259 -0
  2. package/lib/cjs/assets/Audios.js +8 -0
  3. package/lib/cjs/assets/Icons.js +28 -0
  4. package/lib/cjs/common/Constants.js +54 -4
  5. package/lib/cjs/common/contextDataStore/DataStoreManager.js +14 -0
  6. package/lib/cjs/{assets/assets.d.js → common/interfaces/IContextDataStore.js} +0 -0
  7. package/lib/cjs/common/telemetry/TelemetryConstants.js +61 -4
  8. package/lib/cjs/common/telemetry/TelemetryHelper.js +22 -4
  9. package/lib/cjs/common/telemetry/TelemetryManager.js +28 -9
  10. package/lib/cjs/common/telemetry/defaultConfigs/defaultAriaConfig.js +3 -3
  11. package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +4 -1
  12. package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +48 -15
  13. package/lib/cjs/common/telemetry/loggers/consoleLogger.js +9 -5
  14. package/lib/cjs/common/utils.js +89 -2
  15. package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +14 -0
  16. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +28 -5
  17. package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +7 -54
  18. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +2 -2
  19. package/lib/cjs/components/footerstateful/FooterStateful.js +4 -5
  20. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +11 -2
  21. package/lib/cjs/components/headerstateful/HeaderStateful.js +14 -10
  22. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +44 -0
  23. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +23 -0
  24. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  25. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +39 -0
  26. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +70 -0
  27. package/lib/cjs/components/livechatwidget/common/Deferred.js +42 -0
  28. package/lib/cjs/components/livechatwidget/common/createAdapter.js +13 -1
  29. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +32 -32
  30. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +50 -48
  31. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +14 -0
  32. package/lib/cjs/components/livechatwidget/common/endChat.js +142 -43
  33. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +5 -0
  34. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +51 -10
  35. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +115 -22
  36. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +11 -7
  37. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +22 -24
  38. package/lib/cjs/components/livechatwidget/common/shareObservable.js +45 -0
  39. package/lib/cjs/components/livechatwidget/common/startChat.js +225 -40
  40. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +3 -3
  41. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +296 -69
  42. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +1 -1
  43. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +8 -0
  44. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +8 -0
  45. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +22 -10
  46. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +27 -5
  47. package/lib/cjs/components/proactivechatpanestateful/interfaces/IProactiveChatNotificationConfig.js +1 -0
  48. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +80 -0
  49. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +6 -0
  50. package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +51 -73
  51. package/lib/cjs/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.js +1 -0
  52. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +14 -0
  53. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +25 -48
  54. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +3 -1
  55. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +52 -0
  56. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +98 -0
  57. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +117 -0
  58. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +6 -6
  59. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +45 -0
  60. package/lib/cjs/contexts/common/ConversationState.js +4 -2
  61. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +14 -7
  62. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +14 -5
  63. package/lib/cjs/contexts/createReducer.js +51 -10
  64. package/lib/cjs/controller/componentController.js +5 -5
  65. package/lib/cjs/plugins/newMessageEventHandler.js +99 -0
  66. package/lib/esm/assets/Audios.js +1 -0
  67. package/lib/esm/assets/Icons.js +11 -0
  68. package/lib/esm/common/Constants.js +50 -3
  69. package/lib/esm/common/contextDataStore/DataStoreManager.js +5 -0
  70. package/lib/esm/common/interfaces/IContextDataStore.js +1 -0
  71. package/lib/esm/common/telemetry/TelemetryConstants.js +57 -3
  72. package/lib/esm/common/telemetry/TelemetryHelper.js +22 -5
  73. package/lib/esm/common/telemetry/TelemetryManager.js +22 -9
  74. package/lib/esm/common/telemetry/defaultConfigs/defaultAriaConfig.js +3 -3
  75. package/lib/esm/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +4 -1
  76. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +50 -15
  77. package/lib/esm/common/telemetry/loggers/consoleLogger.js +9 -5
  78. package/lib/esm/common/utils.js +64 -1
  79. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +14 -0
  80. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +31 -8
  81. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +7 -50
  82. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +2 -2
  83. package/lib/esm/components/footerstateful/FooterStateful.js +4 -5
  84. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +9 -3
  85. package/lib/esm/components/headerstateful/HeaderStateful.js +15 -11
  86. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +34 -0
  87. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +14 -0
  88. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  89. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +29 -0
  90. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +59 -0
  91. package/lib/esm/components/livechatwidget/common/Deferred.js +33 -0
  92. package/lib/esm/components/livechatwidget/common/createAdapter.js +12 -2
  93. package/lib/esm/components/livechatwidget/common/createMarkdown.js +32 -31
  94. package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +48 -49
  95. package/lib/esm/components/livechatwidget/common/disposeTelemetryLoggers.js +4 -0
  96. package/lib/esm/components/livechatwidget/common/endChat.js +139 -42
  97. package/lib/esm/components/livechatwidget/common/initCallingSdk.js +3 -0
  98. package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +45 -11
  99. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +104 -22
  100. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +10 -3
  101. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +19 -22
  102. package/lib/esm/components/livechatwidget/common/shareObservable.js +38 -0
  103. package/lib/esm/components/livechatwidget/common/startChat.js +212 -37
  104. package/lib/esm/components/livechatwidget/common/startProactiveChat.js +5 -5
  105. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +280 -74
  106. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +1 -1
  107. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +6 -0
  108. package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +6 -0
  109. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +22 -10
  110. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +26 -6
  111. package/lib/esm/components/proactivechatpanestateful/interfaces/IProactiveChatNotificationConfig.js +1 -0
  112. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +72 -0
  113. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +6 -0
  114. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +2 -12
  115. package/lib/esm/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.js +1 -0
  116. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +5 -0
  117. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +23 -46
  118. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +2 -1
  119. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +41 -0
  120. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +94 -0
  121. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +107 -0
  122. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +6 -6
  123. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +32 -0
  124. package/lib/esm/contexts/common/ConversationState.js +4 -2
  125. package/lib/esm/contexts/common/LiveChatWidgetActionType.js +14 -7
  126. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +14 -5
  127. package/lib/esm/contexts/createReducer.js +51 -9
  128. package/lib/esm/controller/componentController.js +5 -5
  129. package/lib/esm/plugins/newMessageEventHandler.js +82 -0
  130. package/lib/types/assets/Audios.d.ts +1 -0
  131. package/lib/types/assets/Icons.d.ts +11 -0
  132. package/lib/types/common/Constants.d.ts +27 -1
  133. package/lib/types/common/contextDataStore/DataStoreManager.d.ts +4 -0
  134. package/lib/types/common/interfaces/IContextDataStore.d.ts +14 -0
  135. package/lib/types/common/telemetry/TelemetryConstants.d.ts +45 -2
  136. package/lib/types/common/telemetry/TelemetryHelper.d.ts +2 -0
  137. package/lib/types/common/telemetry/TelemetryManager.d.ts +1 -0
  138. package/lib/types/common/telemetry/definitions/Contracts.d.ts +3 -0
  139. package/lib/types/common/telemetry/definitions/Payload.d.ts +15 -9
  140. package/lib/types/common/telemetry/interfaces/IChatSDKLogger.d.ts +1 -0
  141. package/lib/types/common/telemetry/interfaces/IInternalTelemetryData.d.ts +2 -0
  142. package/lib/types/common/telemetry/interfaces/ITelemetryConfig.d.ts +12 -0
  143. package/lib/types/common/utils.d.ts +8 -1
  144. package/lib/types/components/confirmationpanestateful/interfaces/IConfirmationPaneStatefulParams.d.ts +5 -2
  145. package/lib/types/components/footerstateful/audionotificationstateful/interfaces/IAudioNotificationStatefulParams.d.ts +0 -1
  146. package/lib/types/components/headerstateful/interfaces/IHeaderStatefulParams.d.ts +5 -1
  147. package/lib/types/components/livechatwidget/common/ActivityStreamHandler.d.ts +14 -0
  148. package/lib/types/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.d.ts +5 -0
  149. package/lib/types/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.d.ts +6 -0
  150. package/lib/types/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.d.ts +7 -0
  151. package/lib/types/components/livechatwidget/common/ChatAdapterShim.d.ts +7 -0
  152. package/lib/types/components/livechatwidget/common/Deferred.d.ts +9 -0
  153. package/lib/types/components/livechatwidget/common/disposeTelemetryLoggers.d.ts +1 -0
  154. package/lib/types/components/livechatwidget/common/endChat.d.ts +4 -1
  155. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +6 -2
  156. package/lib/types/components/livechatwidget/common/setPostChatContextAndLoadSurvey.d.ts +1 -1
  157. package/lib/types/components/livechatwidget/common/shareObservable.d.ts +1 -0
  158. package/lib/types/components/livechatwidget/common/startChat.d.ts +4 -2
  159. package/lib/types/components/livechatwidget/common/startProactiveChat.d.ts +2 -1
  160. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetComponentOverrides.d.ts +1 -0
  161. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +1 -0
  162. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +4 -1
  163. package/lib/types/components/prechatsurveypanestateful/interfaces/IPreChatSurveyPaneStatefulParams.d.ts +1 -1
  164. package/lib/types/components/proactivechatpanestateful/interfaces/IProactiveChatNotificationConfig.d.ts +3 -0
  165. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +1 -1
  166. package/lib/types/components/webchatcontainerstateful/common/mockchatsdk.d.ts +2 -0
  167. package/lib/types/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.d.ts +1 -1
  168. package/lib/types/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.d.ts +4 -0
  169. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatContainerStatefulProps.d.ts +2 -0
  170. package/lib/types/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.d.ts +3 -0
  171. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.d.ts +0 -1
  172. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.d.ts +2 -0
  173. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.d.ts +1 -0
  174. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.d.ts +5 -0
  175. package/lib/types/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.d.ts +1 -0
  176. package/lib/types/contexts/common/ConversationState.d.ts +4 -2
  177. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +6 -1
  178. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +15 -8
  179. package/lib/types/plugins/newMessageEventHandler.d.ts +2 -0
  180. package/package.json +13 -12
  181. package/lib/cjs/assets/audios/newMessageNotification.mp3 +0 -0
  182. package/lib/cjs/assets/icons/archiveIcon.svg +0 -3
  183. package/lib/cjs/assets/icons/audioIcon.svg +0 -6
  184. package/lib/cjs/assets/icons/blankIcon.svg +0 -6
  185. package/lib/cjs/assets/icons/excelIcon.svg +0 -6
  186. package/lib/cjs/assets/icons/imageIcon.svg +0 -6
  187. package/lib/cjs/assets/icons/oneNoteIcon.svg +0 -6
  188. package/lib/cjs/assets/icons/pdfIcon.svg +0 -6
  189. package/lib/cjs/assets/icons/powerpointIcon.svg +0 -6
  190. package/lib/cjs/assets/icons/videoIcon.svg +0 -6
  191. package/lib/cjs/assets/icons/visioIcon.svg +0 -6
  192. package/lib/cjs/assets/icons/wordIcon.svg +0 -6
  193. package/lib/esm/assets/assets.d.js +0 -0
  194. package/lib/esm/assets/audios/newMessageNotification.mp3 +0 -0
  195. package/lib/esm/assets/icons/archiveIcon.svg +0 -3
  196. package/lib/esm/assets/icons/audioIcon.svg +0 -6
  197. package/lib/esm/assets/icons/blankIcon.svg +0 -6
  198. package/lib/esm/assets/icons/excelIcon.svg +0 -6
  199. package/lib/esm/assets/icons/imageIcon.svg +0 -6
  200. package/lib/esm/assets/icons/oneNoteIcon.svg +0 -6
  201. package/lib/esm/assets/icons/pdfIcon.svg +0 -6
  202. package/lib/esm/assets/icons/powerpointIcon.svg +0 -6
  203. package/lib/esm/assets/icons/videoIcon.svg +0 -6
  204. package/lib/esm/assets/icons/visioIcon.svg +0 -6
  205. package/lib/esm/assets/icons/wordIcon.svg +0 -6
@@ -17,22 +17,22 @@ const createConversationEndMiddleware = conversationEndCallback => _ref => {
17
17
  var _action$payload;
18
18
 
19
19
  if ((action === null || action === void 0 ? void 0 : action.type) == WebChatActionType.DIRECT_LINE_INCOMING_ACTIVITY && (_action$payload = action.payload) !== null && _action$payload !== void 0 && _action$payload.activity) {
20
- var _activity$from, _activity$from2, _activity$channelData5, _activity$channelData6;
20
+ var _activity$from, _activity$from2, _activity$channelData7, _activity$channelData8;
21
21
 
22
22
  const activity = action.payload.activity;
23
23
 
24
24
  if (((_activity$from = activity.from) === null || _activity$from === void 0 ? void 0 : _activity$from.role) === DirectLineSenderRole.Bot && activity.channelId === "ACS_CHANNEL") {
25
- var _activity$channelData, _activity$channelData2, _activity$channelData3, _activity$channelData4;
25
+ var _activity$channelData, _activity$channelData2, _activity$channelData3, _activity$channelData4, _activity$channelData5, _activity$channelData6;
26
26
 
27
27
  // ACS
28
- if ((_activity$channelData = activity.channelData) !== null && _activity$channelData !== void 0 && (_activity$channelData2 = _activity$channelData.tags) !== null && _activity$channelData2 !== void 0 && _activity$channelData2.includes(Constants.systemMessageTag) && (_activity$channelData3 = activity.channelData) !== null && _activity$channelData3 !== void 0 && (_activity$channelData4 = _activity$channelData3.tags) !== null && _activity$channelData4 !== void 0 && _activity$channelData4.includes(Constants.agentEndConversationMessageTag)) {
28
+ if ((_activity$channelData = activity.channelData) !== null && _activity$channelData !== void 0 && (_activity$channelData2 = _activity$channelData.tags) !== null && _activity$channelData2 !== void 0 && _activity$channelData2.includes(Constants.systemMessageTag) && ((_activity$channelData3 = activity.channelData) !== null && _activity$channelData3 !== void 0 && (_activity$channelData4 = _activity$channelData3.tags) !== null && _activity$channelData4 !== void 0 && _activity$channelData4.includes(Constants.agentEndConversationMessageTag) || (_activity$channelData5 = activity.channelData) !== null && _activity$channelData5 !== void 0 && (_activity$channelData6 = _activity$channelData5.tags) !== null && _activity$channelData6 !== void 0 && _activity$channelData6.includes(Constants.supervisorForceCloseMessageTag))) {
29
29
  conversationEndCallback();
30
30
  }
31
- } else if (((_activity$from2 = activity.from) === null || _activity$from2 === void 0 ? void 0 : _activity$from2.role) === DirectLineSenderRole.Channel && ((_activity$channelData5 = activity.channelData) === null || _activity$channelData5 === void 0 ? void 0 : _activity$channelData5.type) === MessageTypes.Thread && (_activity$channelData6 = activity.channelData) !== null && _activity$channelData6 !== void 0 && _activity$channelData6.properties) {
32
- var _activity$channelData7, _activity$channelData8, _activity$channelData9, _activity$channelData10;
31
+ } else if (((_activity$from2 = activity.from) === null || _activity$from2 === void 0 ? void 0 : _activity$from2.role) === DirectLineSenderRole.Channel && ((_activity$channelData7 = activity.channelData) === null || _activity$channelData7 === void 0 ? void 0 : _activity$channelData7.type) === MessageTypes.Thread && (_activity$channelData8 = activity.channelData) !== null && _activity$channelData8 !== void 0 && _activity$channelData8.properties) {
32
+ var _activity$channelData9, _activity$channelData10, _activity$channelData11, _activity$channelData12;
33
33
 
34
34
  // IC3
35
- if (((_activity$channelData7 = activity.channelData) === null || _activity$channelData7 === void 0 ? void 0 : (_activity$channelData8 = _activity$channelData7.properties) === null || _activity$channelData8 === void 0 ? void 0 : _activity$channelData8.isdeleted) === Constants.truePascal || !((_activity$channelData9 = activity.channelData) !== null && _activity$channelData9 !== void 0 && (_activity$channelData10 = _activity$channelData9.properties) !== null && _activity$channelData10 !== void 0 && _activity$channelData10.containsExternalEntitiesListeningAll)) {
35
+ if (((_activity$channelData9 = activity.channelData) === null || _activity$channelData9 === void 0 ? void 0 : (_activity$channelData10 = _activity$channelData9.properties) === null || _activity$channelData10 === void 0 ? void 0 : _activity$channelData10.isdeleted) === Constants.truePascal || !((_activity$channelData11 = activity.channelData) !== null && _activity$channelData11 !== void 0 && (_activity$channelData12 = _activity$channelData11.properties) !== null && _activity$channelData12 !== void 0 && _activity$channelData12.containsExternalEntitiesListeningAll)) {
36
36
  conversationEndCallback();
37
37
  }
38
38
  }
@@ -0,0 +1,32 @@
1
+ import { LogLevel } from "../../../../common/telemetry/TelemetryConstants";
2
+ import { TelemetryHelper } from "../../../../common/telemetry/TelemetryHelper";
3
+ export function createWebChatTelemetry() {
4
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
5
+ const handleTelemetry = event => {
6
+ const {
7
+ level
8
+ } = event;
9
+ const loglevel = level ? level.toUpperCase() : "";
10
+
11
+ switch (loglevel) {
12
+ case LogLevel.DEBUG:
13
+ TelemetryHelper.logWebChatEvent(LogLevel.DEBUG, event);
14
+ break;
15
+
16
+ case LogLevel.WARN:
17
+ TelemetryHelper.logWebChatEvent(LogLevel.WARN, event);
18
+ break;
19
+
20
+ case LogLevel.ERROR:
21
+ TelemetryHelper.logWebChatEvent(LogLevel.ERROR, event);
22
+ break;
23
+
24
+ case LogLevel.INFO:
25
+ default:
26
+ TelemetryHelper.logWebChatEvent(LogLevel.INFO, event);
27
+ break;
28
+ }
29
+ };
30
+
31
+ return handleTelemetry;
32
+ }
@@ -7,6 +7,8 @@ export let ConversationState;
7
7
  ConversationState[ConversationState["OutOfOffice"] = 3] = "OutOfOffice";
8
8
  ConversationState[ConversationState["ProactiveChat"] = 4] = "ProactiveChat";
9
9
  ConversationState[ConversationState["Active"] = 5] = "Active";
10
- ConversationState[ConversationState["Postchat"] = 6] = "Postchat";
11
- ConversationState[ConversationState["Closed"] = 7] = "Closed";
10
+ ConversationState[ConversationState["InActive"] = 6] = "InActive";
11
+ ConversationState[ConversationState["PostchatLoading"] = 7] = "PostchatLoading";
12
+ ConversationState[ConversationState["Postchat"] = 8] = "Postchat";
13
+ ConversationState[ConversationState["Closed"] = 9] = "Closed";
12
14
  })(ConversationState || (ConversationState = {}));
@@ -10,13 +10,13 @@ export let LiveChatWidgetActionType;
10
10
  LiveChatWidgetActionType[LiveChatWidgetActionType["SET_PREVIOUS_FOCUSED_ELEMENT"] = 6] = "SET_PREVIOUS_FOCUSED_ELEMENT";
11
11
  LiveChatWidgetActionType[LiveChatWidgetActionType["SET_OUTSIDE_OPERATING_HOURS"] = 7] = "SET_OUTSIDE_OPERATING_HOURS";
12
12
  LiveChatWidgetActionType[LiveChatWidgetActionType["SET_PRE_CHAT_SURVEY_RESPONSE"] = 8] = "SET_PRE_CHAT_SURVEY_RESPONSE";
13
- LiveChatWidgetActionType[LiveChatWidgetActionType["SET_SHOW_CONFIRMATION"] = 9] = "SET_SHOW_CONFIRMATION";
14
- LiveChatWidgetActionType[LiveChatWidgetActionType["SET_SHOW_EMAIL_TRANSCRIPT_PANE"] = 10] = "SET_SHOW_EMAIL_TRANSCRIPT_PANE";
15
- LiveChatWidgetActionType[LiveChatWidgetActionType["SET_PRECHAT_RESPONSE_EMAIL"] = 11] = "SET_PRECHAT_RESPONSE_EMAIL";
16
- LiveChatWidgetActionType[LiveChatWidgetActionType["SET_AUDIO_NOTIFICATION"] = 12] = "SET_AUDIO_NOTIFICATION";
17
- LiveChatWidgetActionType[LiveChatWidgetActionType["SET_E2VV_ENABLED"] = 13] = "SET_E2VV_ENABLED";
18
- LiveChatWidgetActionType[LiveChatWidgetActionType["SET_POST_CHAT_CONTEXT"] = 14] = "SET_POST_CHAT_CONTEXT";
19
- LiveChatWidgetActionType[LiveChatWidgetActionType["SET_SHOULD_SHOW_POST_CHAT"] = 15] = "SET_SHOULD_SHOW_POST_CHAT";
13
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_CUSTOM_CONTEXT"] = 9] = "SET_CUSTOM_CONTEXT";
14
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_SHOW_CONFIRMATION"] = 10] = "SET_SHOW_CONFIRMATION";
15
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_SHOW_EMAIL_TRANSCRIPT_PANE"] = 11] = "SET_SHOW_EMAIL_TRANSCRIPT_PANE";
16
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_PRECHAT_RESPONSE_EMAIL"] = 12] = "SET_PRECHAT_RESPONSE_EMAIL";
17
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_AUDIO_NOTIFICATION"] = 13] = "SET_AUDIO_NOTIFICATION";
18
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_E2VV_ENABLED"] = 14] = "SET_E2VV_ENABLED";
19
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_POST_CHAT_CONTEXT"] = 15] = "SET_POST_CHAT_CONTEXT";
20
20
  LiveChatWidgetActionType[LiveChatWidgetActionType["SHOW_CALLING_CONTAINER"] = 16] = "SHOW_CALLING_CONTAINER";
21
21
  LiveChatWidgetActionType[LiveChatWidgetActionType["SET_INCOMING_CALL"] = 17] = "SET_INCOMING_CALL";
22
22
  LiveChatWidgetActionType[LiveChatWidgetActionType["DISABLE_VIDEO_CALL"] = 18] = "DISABLE_VIDEO_CALL";
@@ -28,4 +28,11 @@ export let LiveChatWidgetActionType;
28
28
  LiveChatWidgetActionType[LiveChatWidgetActionType["SET_TELEMETRY_DATA"] = 24] = "SET_TELEMETRY_DATA";
29
29
  LiveChatWidgetActionType[LiveChatWidgetActionType["SET_RECONNECT_ID"] = 25] = "SET_RECONNECT_ID";
30
30
  LiveChatWidgetActionType[LiveChatWidgetActionType["SET_UNREAD_MESSAGE_COUNT"] = 26] = "SET_UNREAD_MESSAGE_COUNT";
31
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_FOCUS_CHAT_BUTTON"] = 27] = "SET_FOCUS_CHAT_BUTTON";
32
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_CONVERSATION_ENDED_BY_AGENT"] = 28] = "SET_CONVERSATION_ENDED_BY_AGENT";
33
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_WIDGET_STATE"] = 29] = "SET_WIDGET_STATE";
34
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_LIVE_CHAT_CONTEXT"] = 30] = "SET_LIVE_CHAT_CONTEXT";
35
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_BOT_OAUTH_SIGNIN_ID"] = 31] = "SET_BOT_OAUTH_SIGNIN_ID";
36
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_WIDGET_SIZE"] = 32] = "SET_WIDGET_SIZE";
37
+ LiveChatWidgetActionType[LiveChatWidgetActionType["SET_WIDGET_INSTANCE_ID"] = 33] = "SET_WIDGET_INSTANCE_ID";
31
38
  })(LiveChatWidgetActionType || (LiveChatWidgetActionType = {}));
@@ -3,6 +3,10 @@ import { defaultMiddlewareLocalizedTexts } from "../../components/webchatcontain
3
3
  export const getLiveChatWidgetContextInitialState = props => {
4
4
  var _props$webChatContain;
5
5
 
6
+ if (props !== null && props !== void 0 && props.liveChatContextFromCache) {
7
+ return props === null || props === void 0 ? void 0 : props.liveChatContextFromCache;
8
+ }
9
+
6
10
  const LiveChatWidgetContextInitialState = {
7
11
  domainStates: {
8
12
  liveChatConfig: props.chatConfig,
@@ -13,14 +17,17 @@ export const getLiveChatWidgetContextInitialState = props => {
13
17
  chatToken: undefined,
14
18
  postChatContext: undefined,
15
19
  telemetryInternalData: {},
16
- globalDir: "ltr"
20
+ globalDir: "ltr",
21
+ liveChatContext: undefined,
22
+ customContext: undefined,
23
+ widgetSize: undefined,
24
+ widgetInstanceId: ""
17
25
  },
18
26
  appStates: {
19
27
  conversationState: ConversationState.Closed,
20
28
  isMinimized: false,
21
29
  previousElementOnFocusBeforeModalOpen: null,
22
30
  outsideOperatingHours: false,
23
- shouldShowPostChat: false,
24
31
  preChatResponseEmail: "",
25
32
  isAudioMuted: null,
26
33
  newMessage: false,
@@ -32,7 +39,8 @@ export const getLiveChatWidgetContextInitialState = props => {
32
39
  proactiveChatInNewWindow: false
33
40
  },
34
41
  e2vvEnabled: false,
35
- unreadMessageCount: 0
42
+ unreadMessageCount: 0,
43
+ conversationEndedByAgent: false
36
44
  },
37
45
  uiStates: {
38
46
  showConfirmationPane: false,
@@ -41,8 +49,9 @@ export const getLiveChatWidgetContextInitialState = props => {
41
49
  isIncomingCall: true,
42
50
  disableVideoCall: true,
43
51
  disableRemoteVideo: true,
44
- disableSelfVideo: true
52
+ disableSelfVideo: true,
53
+ focusChatButton: false
45
54
  }
46
55
  };
47
- return props.liveChatContextFromCache ?? LiveChatWidgetContextInitialState;
56
+ return LiveChatWidgetContextInitialState;
48
57
  };
@@ -1,6 +1,5 @@
1
1
  /* eslint-disable indent */
2
2
  import { LiveChatWidgetActionType } from "./common/LiveChatWidgetActionType";
3
- import { TelemetryManager } from "../common/telemetry/TelemetryManager";
4
3
  export const createReducer = () => {
5
4
  const reducer = (state, action) => {
6
5
  var _action$payload, _action$payload2, _action$payload3;
@@ -62,6 +61,14 @@ export const createReducer = () => {
62
61
  }
63
62
  };
64
63
 
64
+ case LiveChatWidgetActionType.SET_CUSTOM_CONTEXT:
65
+ return { ...state,
66
+ domainStates: { ...state.domainStates,
67
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
68
+ customContext: action.payload
69
+ }
70
+ };
71
+
65
72
  case LiveChatWidgetActionType.SET_PREVIOUS_FOCUSED_ELEMENT:
66
73
  return { ...state,
67
74
  appStates: { ...state.appStates,
@@ -84,13 +91,6 @@ export const createReducer = () => {
84
91
  }
85
92
  };
86
93
 
87
- case LiveChatWidgetActionType.SET_SHOULD_SHOW_POST_CHAT:
88
- return { ...state,
89
- appStates: { ...state.appStates,
90
- shouldShowPostChat: action.payload
91
- }
92
- };
93
-
94
94
  case LiveChatWidgetActionType.SHOW_CALLING_CONTAINER:
95
95
  return { ...state,
96
96
  uiStates: { ...state.uiStates,
@@ -105,6 +105,13 @@ export const createReducer = () => {
105
105
  }
106
106
  };
107
107
 
108
+ case LiveChatWidgetActionType.SET_FOCUS_CHAT_BUTTON:
109
+ return { ...state,
110
+ uiStates: { ...state.uiStates,
111
+ focusChatButton: action.payload
112
+ }
113
+ };
114
+
108
115
  case LiveChatWidgetActionType.DISABLE_VIDEO_CALL:
109
116
  return { ...state,
110
117
  uiStates: { ...state.uiStates,
@@ -129,6 +136,7 @@ export const createReducer = () => {
129
136
  case LiveChatWidgetActionType.SET_CHAT_TOKEN:
130
137
  return { ...state,
131
138
  domainStates: { ...state.domainStates,
139
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
132
140
  chatToken: action.payload
133
141
  }
134
142
  };
@@ -180,7 +188,6 @@ export const createReducer = () => {
180
188
  };
181
189
 
182
190
  case LiveChatWidgetActionType.SET_TELEMETRY_DATA:
183
- TelemetryManager.InternalTelemetryData = action.payload;
184
191
  return { ...state,
185
192
  domainStates: { ...state.domainStates,
186
193
  telemetryInternalData: action.payload
@@ -201,6 +208,41 @@ export const createReducer = () => {
201
208
  }
202
209
  };
203
210
 
211
+ case LiveChatWidgetActionType.SET_LIVE_CHAT_CONTEXT:
212
+ return { ...state,
213
+ domainStates: { ...state.domainStates,
214
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
215
+ liveChatContext: action.payload
216
+ }
217
+ };
218
+
219
+ case LiveChatWidgetActionType.SET_WIDGET_STATE:
220
+ return { ...action.payload
221
+ };
222
+
223
+ case LiveChatWidgetActionType.SET_CONVERSATION_ENDED_BY_AGENT:
224
+ return { ...state,
225
+ appStates: { ...state.appStates,
226
+ conversationEndedByAgent: action.payload
227
+ }
228
+ };
229
+
230
+ case LiveChatWidgetActionType.SET_WIDGET_SIZE:
231
+ return { ...state,
232
+ domainStates: { ...state.domainStates,
233
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
234
+ widgetSize: action.payload
235
+ }
236
+ };
237
+
238
+ case LiveChatWidgetActionType.SET_WIDGET_INSTANCE_ID:
239
+ return { ...state,
240
+ domainStates: { ...state.domainStates,
241
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
242
+ widgetInstanceId: action.payload
243
+ }
244
+ };
245
+
204
246
  default:
205
247
  return state;
206
248
  }
@@ -1,6 +1,6 @@
1
1
  import { ConversationState } from "../contexts/common/ConversationState";
2
2
  export const shouldShowChatButton = state => {
3
- return state.appStates.isMinimized || state.appStates.conversationState === ConversationState.Closed;
3
+ return (state.appStates.isMinimized || state.appStates.conversationState === ConversationState.Closed) && state.appStates.skipChatButtonRendering == false; // Do not show chat button in case of popout
4
4
  };
5
5
  export const shouldShowProactiveChatPane = state => {
6
6
  return !state.appStates.isMinimized && state.appStates.conversationState === ConversationState.ProactiveChat;
@@ -9,22 +9,22 @@ export const shouldShowHeader = state => {
9
9
  return !state.appStates.isMinimized && state.appStates.conversationState !== ConversationState.Closed && state.appStates.conversationState !== ConversationState.ProactiveChat;
10
10
  };
11
11
  export const shouldShowFooter = state => {
12
- return !state.appStates.isMinimized && state.appStates.conversationState === ConversationState.Active;
12
+ return !state.appStates.isMinimized && (state.appStates.conversationState === ConversationState.Active || state.appStates.conversationState === ConversationState.InActive);
13
13
  };
14
14
  export const shouldShowEmailTranscriptPane = state => {
15
15
  return state.uiStates.showEmailTranscriptPane;
16
16
  };
17
17
  export const shouldShowWebChatContainer = state => {
18
- return state.appStates.conversationState === ConversationState.Active;
18
+ return state.appStates.conversationState === ConversationState.Active || state.appStates.conversationState === ConversationState.InActive;
19
19
  };
20
20
  export const shouldShowLoadingPane = state => {
21
- return !state.appStates.isMinimized && !state.appStates.shouldShowPostChat && state.appStates.conversationState === ConversationState.Loading;
21
+ return !state.appStates.isMinimized && state.appStates.conversationState === ConversationState.Loading;
22
22
  };
23
23
  export const shouldShowReconnectChatPane = state => {
24
24
  return !state.appStates.isMinimized && state.appStates.conversationState === ConversationState.ReconnectChat;
25
25
  };
26
26
  export const shouldShowPostChatLoadingPane = state => {
27
- return !state.appStates.isMinimized && state.appStates.shouldShowPostChat && state.appStates.conversationState === ConversationState.Loading;
27
+ return !state.appStates.isMinimized && state.appStates.conversationState === ConversationState.PostchatLoading;
28
28
  };
29
29
  export const shouldShowOutOfOfficeHoursPane = state => {
30
30
  return !state.appStates.isMinimized && state.appStates.conversationState === ConversationState.OutOfOffice;
@@ -0,0 +1,82 @@
1
+ import { BroadcastEvent, LogLevel, TelemetryEvent } from "../common/telemetry/TelemetryConstants";
2
+ import { BroadcastService } from "@microsoft/omnichannel-chat-components";
3
+ import { Constants } from "../common/Constants";
4
+ import { TelemetryHelper } from "../common/telemetry/TelemetryHelper";
5
+ export const createOnNewAdapterActivityHandler = (chatId, userId) => {
6
+ const onNewAdapterActivityHandler = activity => {
7
+ var _activity$channelData, _activity$channelData2, _activity$channelData3;
8
+
9
+ const isActivityMessage = (activity === null || activity === void 0 ? void 0 : activity.type) === Constants.message;
10
+ const isNotHistoryMessage = isActivityMessage && !(activity !== null && activity !== void 0 && (_activity$channelData = activity.channelData) !== null && _activity$channelData !== void 0 && (_activity$channelData2 = _activity$channelData.tags) !== null && _activity$channelData2 !== void 0 && _activity$channelData2.includes(Constants.historyMessageTag)) && !(activity !== null && activity !== void 0 && (_activity$channelData3 = activity.channelData) !== null && _activity$channelData3 !== void 0 && _activity$channelData3.fromList);
11
+
12
+ if (isNotHistoryMessage) {
13
+ raiseMessageEvent(activity);
14
+ }
15
+ };
16
+
17
+ const raiseMessageEvent = activity => {
18
+ if ((activity === null || activity === void 0 ? void 0 : activity.type) === Constants.message) {
19
+ var _text, _text2, _activity$channelData4, _activity$from;
20
+
21
+ const payload = {
22
+ // To identify hidden contents vs empty content
23
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
24
+ text: (activity === null || activity === void 0 ? void 0 : (_text = activity.text) === null || _text === void 0 ? void 0 : _text.length) >= 1 ? `*contents hidden (${activity === null || activity === void 0 ? void 0 : (_text2 = activity.text) === null || _text2 === void 0 ? void 0 : _text2.length} chars)*` : "",
25
+ type: activity === null || activity === void 0 ? void 0 : activity.type,
26
+ timestamp: activity === null || activity === void 0 ? void 0 : activity.timestamp,
27
+ userId: userId,
28
+ tags: activity === null || activity === void 0 ? void 0 : (_activity$channelData4 = activity.channelData) === null || _activity$channelData4 === void 0 ? void 0 : _activity$channelData4.tags,
29
+ messageType: ""
30
+ };
31
+
32
+ if ((activity === null || activity === void 0 ? void 0 : (_activity$from = activity.from) === null || _activity$from === void 0 ? void 0 : _activity$from.role) === Constants.userMessageTag) {
33
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
34
+ payload.messageType = Constants.userMessageTag;
35
+ const newMessageSentEvent = {
36
+ eventName: BroadcastEvent.NewMessageSent,
37
+ payload: payload
38
+ };
39
+ BroadcastService.postMessage(newMessageSentEvent);
40
+ TelemetryHelper.logActionEvent(LogLevel.INFO, {
41
+ Event: TelemetryEvent.MessageSent,
42
+ Description: "New message sent"
43
+ });
44
+ } else {
45
+ var _activity$channelData5, _activity$channelData6;
46
+
47
+ if (activity !== null && activity !== void 0 && (_activity$channelData5 = activity.channelData) !== null && _activity$channelData5 !== void 0 && (_activity$channelData6 = _activity$channelData5.tags) !== null && _activity$channelData6 !== void 0 && _activity$channelData6.includes(Constants.systemMessageTag)) {
48
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
49
+ payload.messageType = Constants.systemMessageTag;
50
+ } else {
51
+ var _activity$channelData7, _activity$channelData8, _activity$channelData9;
52
+
53
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
54
+ const messageHasNoText = !(activity !== null && activity !== void 0 && activity.text); // eslint-disable-next-line @typescript-eslint/no-explicit-any
55
+
56
+ const messageHasNoTags = !(activity !== null && activity !== void 0 && activity.channelData) || !(activity !== null && activity !== void 0 && (_activity$channelData7 = activity.channelData) !== null && _activity$channelData7 !== void 0 && _activity$channelData7.tags) || (activity === null || activity === void 0 ? void 0 : (_activity$channelData8 = activity.channelData) === null || _activity$channelData8 === void 0 ? void 0 : (_activity$channelData9 = _activity$channelData8.tags) === null || _activity$channelData9 === void 0 ? void 0 : _activity$channelData9.length) === 0; // eslint-disable-next-line @typescript-eslint/no-explicit-any
57
+
58
+ const messageHasNoAttachments = !(activity !== null && activity !== void 0 && activity.attachments) || (activity === null || activity === void 0 ? void 0 : activity.attachments.length) === 0;
59
+
60
+ if (messageHasNoTags && messageHasNoText && messageHasNoAttachments) {
61
+ return;
62
+ }
63
+
64
+ payload.messageType = Constants.userMessageTag;
65
+ }
66
+
67
+ const newMessageReceivedEvent = {
68
+ eventName: BroadcastEvent.NewMessageReceived,
69
+ payload: payload
70
+ };
71
+ BroadcastService.postMessage(newMessageReceivedEvent);
72
+ TelemetryHelper.logActionEvent(LogLevel.INFO, {
73
+ Event: TelemetryEvent.MessageReceived,
74
+ Description: "New message received",
75
+ Data: payload
76
+ });
77
+ }
78
+ }
79
+ };
80
+
81
+ return onNewAdapterActivityHandler;
82
+ };
@@ -0,0 +1 @@
1
+ export declare const NewMessageNotificationSoundBase64: string;
@@ -0,0 +1,11 @@
1
+ export declare const ArchiveIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMDQ4IDIwNDgiIHdpZHRoPSIxMnB4IiBoZWlnaHQ9IjEycHgiPg0KPHBhdGggZD0iTTE3OTIgMHEyNyAwIDUwIDEwdDQwIDI3IDI4IDQxIDEwIDUwdjQ4MHEwIDQ1LTkgNzd0LTI0IDU4LTMxIDQ2LTMxIDQwLTIzIDQ0LTEwIDU1djk5MnEwIDI3LTEwIDUwdC0yNyA0MC00MSAyOC01MCAxMEgyNTZWMGgxNTM2ek02NDAgMTI4djM4NGgyNTZWMTI4SDY0MHptMTAyNCA4MDBxMC0zMS05LTU0dC0yNC00NC0zMS00MS0zMS00NS0yMy01OC0xMC03OFYxMjhoLTUxMnY1MTJINzY4djEyOEg2NDBWNjQwSDUxMlYxMjhIMzg0djE3OTJoMzg0di0xMjhoMTI4djEyOGg3NjhWOTI4em0xMjgtODAwaC0xMjh2NDgwcTAgMjQgNCA0MnQxMyAzMyAyMCAyOSAyNyAzMnExNS0xNyAyNi0zMXQyMC0zMCAxMy0zMyA1LTQyVjEyOHpNNjQwIDg5NmgxMjh2MTI4SDY0MFY4OTZ6bTAgMjU2aDEyOHYxMjhINjQwdi0xMjh6bTAgMjU2aDEyOHYxMjhINjQwdi0xMjh6bTEyOCAyNTZ2MTI4SDY0MHYtMTI4aDEyOHptMC03NjhWNzY4aDEyOHYxMjhINzY4em0wIDI1NnYtMTI4aDEyOHYxMjhINzY4em0wIDI1NnYtMTI4aDEyOHYxMjhINzY4em0wIDI1NnYtMTI4aDEyOHYxMjhINzY4eiIgLz4NCjwvc3ZnPg==";
2
+ export declare const AudioIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0xNzkyIDE0MDhxMCA2Mi0yOSAxMDl0LTc2IDgwLTEwNCA1MC0xMTEgMTdxLTU0IDAtMTExLTE3dC0xMDMtNDktNzYtODAtMzAtMTEwcTAtNjEgMjktMTA5dDc2LTgwIDEwNC01MCAxMTEtMTdxNTEgMCAxMDAgMTJ0OTIgMzlWMjI2TDc2OCA0NTB2MTIxNHEwIDYyLTI5IDEwOXQtNzYgODAtMTA0IDUwLTExMSAxN3EtNTQgMC0xMTEtMTd0LTEwMy00OS03Ni04MC0zMC0xMTBxMC02MSAyOS0xMDl0NzYtODAgMTA0LTUwIDExMS0xN3E1MSAwIDEwMCAxMnQ5MiAzOVYzNTBMMTc5MiA2MnYxMzQ2eiIgLz4NCjwvc3ZnPg==";
3
+ export declare const BlankIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik01NDkgMGgxMjQzdjE3NTVsLTI5MyAyOTNIMjU2VjI5M0w1NDkgMHptMTExNSAxNzAxVjEyOEg2MDNMMzg0IDM0N3YxNTczaDEwNjFsMjE5LTIxOXoiIC8+DQo8L3N2Zz4=";
4
+ export declare const ExcelIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0yMDQ4IDQ3NXYxNDQ1cTAgMjctMTAgNTB0LTI3IDQwLTQxIDI4LTUwIDEwSDY0MHEtMjcgMC01MC0xMHQtNDAtMjctMjgtNDEtMTAtNTB2LTI1NkgxMTVxLTI0IDAtNDQtOXQtMzctMjUtMjUtMzYtOS00NVY2MjdxMC0yNCA5LTQ0dDI1LTM3IDM2LTI1IDQ1LTloMzk3VjEyOHEwLTI3IDEwLTUwdDI3LTQwIDQxLTI4IDUwLTEwaDkzM3EyNiAwIDQ5IDl0NDIgMjhsMzQ3IDM0N3ExOCAxOCAyNyA0MXQxMCA1MHptLTM4NC0yNTZ2MTY1aDE2NWwtMTY1LTE2NXpNMjYxIDE0MjRoMTg5cTItNCAxMi0yM3QyNS00NSAyOS01NSAyOS01MyAyMy00MSAxMC0xN3EyNyA1OSA2MCAxMTh0NjUgMTE2aDE4N2wtMjA5LTMzOSAyMDUtMzMzSDcwN3EtMzEgNTctNjAgMTE0dC02MyAxMTJxLTI5LTU3LTU3LTExM3QtNTctMTEzSDI3OWwxOTkgMzM1LTIxNyAzMzd6bTM3OSA0OTZoMTI4MFY1MTJoLTI1NnEtMjcgMC01MC0xMHQtNDAtMjctMjgtNDEtMTAtNTBWMTI4SDY0MHYzODRoMzk3cTI0IDAgNDQgOXQzNyAyNSAyNSAzNiA5IDQ1djkyMnEwIDI0LTkgNDR0LTI1IDM3LTM2IDI1LTQ1IDlINjQwdjI1NnptNjQwLTEwMjRWNzY4aDUxMnYxMjhoLTUxMnptMCAyNTZ2LTEyOGg1MTJ2MTI4aC01MTJ6bTAgMjU2di0xMjhoNTEydjEyOGgtNTEyeiIgLz4NCjwvc3ZnPg==";
5
+ export declare const ImageIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0yNTYgMTkyMGgxNTM2djEyOEgxMjhWMGgxMTE1bDU0OSA1NDl2OTFoLTY0MFYxMjhIMjU2djE3OTJ6TTEyODAgNTEyaDI5M2wtMjkzLTI5M3YyOTN6bTc2OCAyNTZ2MTAyNEg2NDBWNzY4aDE0MDh6TTc2OCA4OTZ2NDIxbDMyMC0zMTkgNDE2IDQxNiAxNjAtMTYwIDI1NiAyNTZWODk2SDc2OHptOTg3IDc2OGgxMzlsLTIzMC0yMzAtNjkgNzAgMTYwIDE2MHptLTk4NyAwaDgwNWwtNDg1LTQ4Ni0zMjAgMzIxdjE2NXptOTYwLTUxMnEtMjYgMC00NS0xOXQtMTktNDVxMC0yNiAxOS00NXQ0NS0xOXEyNiAwIDQ1IDE5dDE5IDQ1cTAgMjYtMTkgNDV0LTQ1IDE5eiIgLz4NCjwvc3ZnPg==";
6
+ export declare const OneNoteIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0xOTYzIDEyOHEzNSAwIDYwIDI1dDI1IDYwdjE2MjJxMCAzNS0yNSA2MHQtNjAgMjVINTk3cS0zNSAwLTYwLTI1dC0yNS02MHYtMjk5SDg1cS0zNSAwLTYwLTI1dC0yNS02MFY1OTdxMC0zNSAyNS02MHQ2MC0yNWg0MjdWMjEzcTAtMzUgMjUtNjB0NjAtMjVoMTM2NnpNMzg5IDkzOWwyNDIgNDIwaDE1MlY2ODlINjM1djQyOUw0MDIgNjg5SDI0MXY2NzBoMTQ4VjkzOXptMTUzMSA4NTN2LTI1NmgtMjU2djI1NmgyNTZ6bTAtMzg0di0yNTZoLTI1NnYyNTZoMjU2em0wLTM4NFY3NjhoLTI1NnYyNTZoMjU2em0wLTM4NFYyNTZINjQwdjI1NmgyOTlxMzUgMCA2MCAyNXQyNSA2MHY4NTRxMCAzNS0yNSA2MHQtNjAgMjVINjQwdjI1Nmg4OTZWNjQwaDM4NHoiIC8+DQo8L3N2Zz4=";
7
+ export declare const PDFIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0xOTIwIDE2NjRoLTEyOHYzODRIMTI4di0zODRIMFY2NDBoMTI4VjBoMTI0M2w0MjEgNDIxdjIxOWgxMjh2MTAyNHpNMTQwOCAzODRoMTY1bC0xNjUtMTY1djE2NXpNMjU2IDY0MGgxNDA4VjUxMmgtMzg0VjEyOEgyNTZ2NTEyem0xNDA4IDEwMjRIMjU2djI1NmgxNDA4di0yNTZ6bTEyOC04OTZIMTI4djc2OGgxNjY0Vjc2OHpNNDQ4IDg5NnE0MCAwIDc1IDE1dDYxIDQxIDQxIDYxIDE1IDc1cTAgNDAtMTUgNzV0LTQxIDYxLTYxIDQxLTc1IDE1aC02NHYxMjhIMjU2Vjg5NmgxOTJ6bTAgMjU2cTI2IDAgNDUtMTl0MTktNDVxMC0yNi0xOS00NXQtNDUtMTloLTY0djEyOGg2NHptNDQ4LTI1NnE1MyAwIDk5IDIwdDgyIDU1IDU1IDgxIDIwIDEwMHEwIDUzLTIwIDk5dC01NSA4Mi04MSA1NS0xMDAgMjBINzY4Vjg5NmgxMjh6bTAgMzg0cTI3IDAgNTAtMTB0NDAtMjcgMjgtNDEgMTAtNTBxMC0yNy0xMC01MHQtMjctNDAtNDEtMjgtNTAtMTB2MjU2em0zODQtMzg0aDMyMHYxMjhoLTE5MnYxMjhoMTkydjEyOGgtMTkydjEyOGgtMTI4Vjg5NnoiIC8+DQo8L3N2Zz4=";
8
+ export declare const PowerpointIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0yMDQ4IDQ3NXYxNDQ1cTAgMjctMTAgNTB0LTI3IDQwLTQxIDI4LTUwIDEwSDY0MHEtMjcgMC01MC0xMHQtNDAtMjctMjgtNDEtMTAtNTB2LTI1NkgxMTVxLTI0IDAtNDQtOXQtMzctMjUtMjUtMzYtOS00NVY2MjdxMC0yNCA5LTQ0dDI1LTM3IDM2LTI1IDQ1LTloMzk3VjEyOHEwLTI3IDEwLTUwdDI3LTQwIDQxLTI4IDUwLTEwaDkzM3EyNiAwIDQ5IDl0NDIgMjhsMzQ3IDM0N3ExOCAxOCAyNyA0MXQxMCA1MHptLTM4NC0yNTZ2MTY1aDE2NWwtMTY1LTE2NXpNMzY4IDc1MnY2NzJoMTUwdi0yMjZoMTAwcTUyIDAgOTctMTV0NzgtNDYgNTMtNzIgMjAtOTdxMC01Ni0xNy05N3QtNTAtNjctNzYtMzktOTctMTNIMzY4em0xNTUyIDExNjhWNTEyaC0yNTZxLTI3IDAtNTAtMTB0LTQwLTI3LTI4LTQxLTEwLTUwVjEyOEg2NDB2Mzg0aDM5N3EyNCAwIDQ0IDl0MzcgMjUgMjUgMzYgOSA0NXY5MjJxMCAyNC05IDQ0dC0yNSAzNy0zNiAyNS00NSA5SDY0MHYyNTZoMTI4MHpNMTUzNiA2NDBxNzkgMCAxNDkgMzB0MTIyIDgyIDgzIDEyMyAzMCAxNDloLTM4NFY2NDB6bS0xMjggMTI4djM4NGgzODRxMCA4MC0zMCAxNDl0LTgyIDEyMi0xMjMgODMtMTQ5IDMwcS0zMyAwLTY1LTZ0LTYzLTE4Vjc5MnEzMS0xMSA2My0xN3Q2NS03em0tODA0IDMwMGgtODZWODgzaDkwcTQ3IDAgNzQgMjB0MjcgNzBxMCA1Mi0yOCA3M3QtNzcgMjJ6IiAvPg0KPC9zdmc+";
9
+ export declare const VideoIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0wIDI1NmgyMDQ4djE0MDhIMFYyNTZ6bTI1NiAxMjgwdi0xMjhIMTI4djEyOGgxMjh6bTAtMjU2di0xMjhIMTI4djEyOGgxMjh6bTAtMjU2Vjg5NkgxMjh2MTI4aDEyOHptMC0yNTZWNjQwSDEyOHYxMjhoMTI4em0wLTI1NlYzODRIMTI4djEyOGgxMjh6bTE0MDggNzg2VjM4NEgzODR2ODIzbDQxMS01NDkgNzQxIDg3OC0zMjktNTU4IDEzNy0xMzcgMzIwIDQ1N3ptMjU2IDIzOHYtMTI4aC0xMjh2MTI4aDEyOHptMC0yNTZ2LTEyOGgtMTI4djEyOGgxMjh6bTAtMjU2Vjg5NmgtMTI4djEyOGgxMjh6bTAtMjU2VjY0MGgtMTI4djEyOGgxMjh6bTAtMjU2VjM4NGgtMTI4djEyOGgxMjh6IiAvPg0KPC9zdmc+";
10
+ export declare const VisioIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0yMDQ4IDQ3NXYxNDQ1cTAgMjctMTAgNTB0LTI3IDQwLTQxIDI4LTUwIDEwSDY0MHEtMjcgMC01MC0xMHQtNDAtMjctMjgtNDEtMTAtNTB2LTI1NkgxMTVxLTI0IDAtNDQtOXQtMzctMjUtMjUtMzYtOS00NVY2MjdxMC0yNCA5LTQ0dDI1LTM3IDM2LTI1IDQ1LTloMzk3VjEyOHEwLTI3IDEwLTUwdDI3LTQwIDQxLTI4IDUwLTEwaDkzM3EyNiAwIDQ5IDl0NDIgMjhsMzQ3IDM0N3ExOCAxOCAyNyA0MXQxMCA1MHptLTM4NC0yNTZ2MTY1aDE2NWwtMTY1LTE2NXpNNDkzIDE0MjRoMTYzbDI1NS02NzJINzQ1bC0xNDcgNDI3cS01IDE2LTEwIDMxdC0xMSAzMXEtNDEtMTIzLTgyLTI0NHQtODQtMjQ1SDI0MWwyNDggNjYyIDQgMTB6bTE0NyA0OTZoMTI4MFY1MTJoLTI1NnEtMjcgMC01MC0xMHQtNDAtMjctMjgtNDEtMTAtNTBWMTI4SDY0MHYzODRoMzk3cTI0IDAgNDQgOXQzNyAyNSAyNSAzNiA5IDQ1djkyMnEwIDI0LTkgNDR0LTI1IDM3LTM2IDI1LTQ1IDlINjQwdjI1NnptOTYwLTEyODBsMTkyIDE5Mi0xMjggMTI4djQ0OGgtMjU2djEyOGgtMTI4di0zODRoMTI4djEyOGgxMjhWOTYwbC0xMjgtMTI4IDE5Mi0xOTJ6IiAvPg0KPC9zdmc+";
11
+ export declare const WordIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciDQogICAgdmlld0JveD0iMCAwIDIwNDggMjA0OCINCiAgICB3aWR0aD0iMTJweCINCiAgICBoZWlnaHQ9IjEycHgiPg0KICAgIDxwYXRoIGQ9Ik0yMDQ4IDQ3NXYxNDQ1cTAgMjctMTAgNTB0LTI3IDQwLTQxIDI4LTUwIDEwSDY0MHEtMjcgMC01MC0xMHQtNDAtMjctMjgtNDEtMTAtNTB2LTI1NkgxMTVxLTI0IDAtNDQtOXQtMzctMjUtMjUtMzYtOS00NVY2MjdxMC0yNCA5LTQ0dDI1LTM3IDM2LTI1IDQ1LTloMzk3VjEyOHEwLTI3IDEwLTUwdDI3LTQwIDQxLTI4IDUwLTEwaDkzM3EyNiAwIDQ5IDl0NDIgMjhsMzQ3IDM0N3ExOCAxOCAyNyA0MXQxMCA1MHptLTM4NC0yNTZ2MTY1aDE2NWwtMTY1LTE2NXpNMzIwIDE0MjRoMTYxcTItOCA5LTQzdDE4LTgzIDIxLTEwMyAyMi0xMDEgMTYtNzYgOC0zMWw3IDMwcTcgMzAgMTcgNzd0MjMgMTAwIDIzIDEwMyAxOSA4NCAxMCA0M2gxNjBsMTQ4LTY3Mkg4MzRsLTgwIDQzOC0xMDAtNDM4SDUwMmwtOTYgNDQwLTg2LTQ0MEgxNzBsMTUwIDY3MnptMzIwIDQ5NmgxMjgwVjUxMmgtMjU2cS0yNyAwLTUwLTEwdC00MC0yNy0yOC00MS0xMC01MFYxMjhINjQwdjM4NGgzOTdxMjQgMCA0NCA5dDM3IDI1IDI1IDM2IDkgNDV2OTIycTAgMjQtOSA0NHQtMjUgMzctMzYgMjUtNDUgOUg2NDB2MjU2em02NDAtMTAyNFY3NjhoNTEydjEyOGgtNTEyem0wIDI1NnYtMTI4aDUxMnYxMjhoLTUxMnptMCAyNTZ2LTEyOGg1MTJ2MTI4aC01MTJ6IiAvPg0KPC9zdmc+";
@@ -1,7 +1,11 @@
1
1
  export declare class Constants {
2
+ static readonly magicCodeBroadcastChannel = "MagicCodeChannel";
3
+ static readonly magicCodeResponseBroadcastChannel = "MagicCodeResponseChannel";
2
4
  static readonly systemMessageTag = "system";
3
5
  static readonly userMessageTag = "user";
6
+ static readonly historyMessageTag = "history";
4
7
  static readonly agentEndConversationMessageTag = "agentendconversation";
8
+ static readonly supervisorForceCloseMessageTag = "supervisorforceclosedconversation";
5
9
  static readonly receivedMessageClassName = "ms_lcw_webchat_received_message";
6
10
  static readonly sentMessageClassName = "ms_lcw_webchat_sent_message";
7
11
  static readonly webchatChannelId = "webchat";
@@ -30,6 +34,10 @@ export declare class Constants {
30
34
  static readonly queuePositionMessageTag = "queueposition";
31
35
  static readonly averageWaitTimeMessageTag = "averagewaittime";
32
36
  static readonly message = "message";
37
+ static readonly hiddenTag = "Hidden";
38
+ static readonly prefixTimestampTag = "ServerMessageTimestamp_";
39
+ static readonly acsChannel = "ACS_CHANNEL";
40
+ static readonly publicMessageTag = "public";
33
41
  static readonly supportedAdaptiveCardContentTypes: Array<string>;
34
42
  static readonly maxUploadFileSize = "500000";
35
43
  static readonly imageRegex: RegExp;
@@ -55,7 +63,6 @@ export declare class Constants {
55
63
  static readonly ProactiveChatInviteTimeoutInMs = 60000;
56
64
  static readonly InputSubmit = "InputSubmit";
57
65
  static readonly ReconnectIdAttributeName = "oc.reconnectid";
58
- static readonly redirectPageRequest = "redirectPageRequest";
59
66
  static readonly LiveChatWidget = "LiveChatWidgetNew";
60
67
  static readonly GuidPattern = "xx-x-4m-ym-xxx";
61
68
  static readonly Default = "default";
@@ -68,6 +75,9 @@ export declare class Constants {
68
75
  static readonly OpenLinkIconCssClass = "webchat__markdown__external-link-icon";
69
76
  static readonly internetConnectionTestUrl = "https://ocsdk-prod.azureedge.net/public/connecttest.txt";
70
77
  static readonly internetConnectionTestUrlText = "Omnichannel Connect Test";
78
+ static readonly ChatWidgetStateChangedPrefix = "ChatWidgetStateChanged";
79
+ static readonly PostChatLoadingDurationInMs = 2000;
80
+ static readonly BrowserUnloadConfirmationMessage = "Do you want to leave chat?";
71
81
  }
72
82
  export declare const Regex: {
73
83
  new (): {};
@@ -134,6 +144,12 @@ export declare enum ElementType {
134
144
  export declare enum ChatSDKError {
135
145
  WidgetUseOutsideOperatingHour = "WidgetUseOutsideOperatingHour"
136
146
  }
147
+ export declare enum EnvironmentVersion {
148
+ prod = "prod",
149
+ dogfood = "df",
150
+ int = "int",
151
+ test = "test"
152
+ }
137
153
  export declare class TranscriptConstants {
138
154
  static readonly ChatTranscriptsBodyColor = "#F5F5F5";
139
155
  static readonly TranscriptMessageEmojiMessageType = "http://schema.skype.com/emoji";
@@ -146,3 +162,13 @@ export declare class TranscriptConstants {
146
162
  static readonly AgentDialogColor = "#2266E3";
147
163
  static readonly AgentFontColor = "white";
148
164
  }
165
+ export declare class AriaTelemetryConstants {
166
+ static readonly GERMANY_ENDPOINT: string;
167
+ static readonly GCCH_ENDPOINT: string;
168
+ static readonly DOD_ENDPOINT: string;
169
+ static readonly EUROPE_ENDPOINT: string;
170
+ static readonly MOONCAKE_ENDPOINT: string;
171
+ static readonly Public: string;
172
+ static readonly EU: string;
173
+ static readonly lcwEUDomainNames: Array<string>;
174
+ }
@@ -0,0 +1,4 @@
1
+ import { IContextDataStore } from "../interfaces/IContextDataStore";
2
+ export declare class DataStoreManager {
3
+ static clientDataStore?: IContextDataStore;
4
+ }
@@ -0,0 +1,14 @@
1
+ export interface IContextDataStore {
2
+ /**
3
+ * getData: Get data from data store
4
+ */
5
+ getData: (key: string, type: string) => any;
6
+ /**
7
+ * setData: Set data to data store
8
+ */
9
+ setData: (key: string, value: any, type: string) => void;
10
+ /**
11
+ * removeData: Remove data from data store by key
12
+ */
13
+ removeData: (key: string, type: string) => void;
14
+ }
@@ -17,6 +17,32 @@ export declare enum LogLevel {
17
17
  WARN = "WARN",
18
18
  ERROR = "ERROR"
19
19
  }
20
+ export declare enum BroadcastEvent {
21
+ LoadPostChatSurvey = "LoadPostChatSurvey",
22
+ ChatEnded = "ChatEnded",
23
+ NewMessageNotification = "NewMessageNotification",
24
+ UnreadMessageCount = "UnreadMessageCount",
25
+ StartProactiveChat = "StartProactiveChat",
26
+ ProactiveChatStartChat = "ProactiveChatStartChat",
27
+ ProactiveChatStartPopoutChat = "ProactiveChatStartPopoutChat",
28
+ ProactiveChatIsInPopoutMode = "ProactiveChatIsInPopoutMode",
29
+ ResetProactiveChatParams = "ResetProactiveChatParams",
30
+ InvalidAdaptiveCardFormat = "InvalidAdaptiveCardFormat",
31
+ NewMessageSent = "NewMessageSent",
32
+ NewMessageReceived = "NewMessageReceived",
33
+ RedirectPageRequest = "RedirectPageRequest",
34
+ StartChat = "StartChat",
35
+ StartChatSkippingChatButtonRendering = "StartChatSkippingChatButtonRendering",
36
+ StartUnauthenticatedReconnectChat = "StartUnauthenticatedReconnectChat",
37
+ InitiateEndChat = "InitiateEndChat",
38
+ SetCustomContext = "SetCustomContext",
39
+ ChatRetrievedFromCache = "ChatRetrievedFromCache",
40
+ MaximizeChat = "MaximizeChat",
41
+ ChatInitiated = "ChatInitiated",
42
+ CloseChat = "CloseChat",
43
+ InitiateEndChatOnBrowserUnload = "InitiateEndChatOnBrowserUnload",
44
+ ClosePopoutWindow = "ClosePopoutWindow"
45
+ }
20
46
  export declare enum TelemetryEvent {
21
47
  CallAdded = "CallAdded",
22
48
  LocalVideoStreamAdded = "LocalVideoStreamAdded",
@@ -63,7 +89,10 @@ export declare enum TelemetryEvent {
63
89
  PrechatSurveyLoaded = "PrechatSurveyLoaded",
64
90
  PrechatSubmitted = "PrechatSubmitted",
65
91
  StartChatSDKCall = "StartChatCall",
66
- EndChatSDKCall = "EndChatCall",
92
+ StartChatEventRecevied = "StartChatEventReceived",
93
+ EndChatSDKCall = "EndChatSDKCall",
94
+ EndChatEventReceived = "EndChatEventReceived",
95
+ WindowClosed = "WindowClosed",
67
96
  OnNewMessageFailed = "OnNewMessageFailed",
68
97
  OnNewMessageAudioNotificationFailed = "OnNewMessageAudioNotificationFailed",
69
98
  DownloadTranscriptResponseNullOrUndefined = "DownloadTranscriptResponseNullOrUndefined",
@@ -77,6 +106,7 @@ export declare enum TelemetryEvent {
77
106
  LoadingPaneLoaded = "LoadingPaneLoaded",
78
107
  EmailTranscriptLoaded = "EmailTranscriptLoaded",
79
108
  OutOfOfficePaneLoaded = "OutOfOfficePaneLoaded",
109
+ PostChatSurveyLoadingPaneLoaded = "PostChatSurveyLoadingPaneLoaded",
80
110
  PostChatSurveyLoaded = "PostChatSurveyLoaded",
81
111
  ConfirmationPaneLoaded = "ConfirmationPaneLoaded",
82
112
  ProactiveChatPaneLoaded = "ProactiveChatPaneLoaded",
@@ -87,6 +117,12 @@ export declare enum TelemetryEvent {
87
117
  EmailTranscriptButtonClicked = "EmailTranscriptButtonClicked",
88
118
  EmailTranscriptCancelButtonClicked = "EmailTranscriptCancelButtonClicked",
89
119
  AudioToggleButtonClicked = "AudioToggleButtonClicked",
120
+ SuppressBotMagicCodeSucceeded = "SuppressBotMagicCodeSucceeded",
121
+ SuppressBotMagicCodeFailed = "SuppressBotMagicCodeFailed",
122
+ GetConversationDetailsException = "GetConversationDetailsException",
123
+ BrowserUnloadEventStarted = "BrowserUnloadEventStarted",
124
+ GetAuthTokenCalled = "GetAuthTokenCalled",
125
+ ReceivedNullOrEmptyToken = "ReceivedNullOrEmptyToken",
90
126
  ProcessingHTMLTextMiddlewareFailed = "ProcessingHTMLTextMiddlewareFailed",
91
127
  ProcessingSanitizationMiddlewareFailed = "ProcessingSanitizationMiddlewareFailed",
92
128
  FormatTagsMiddlewareJSONStringifyFailed = "FormatTagsMiddlewareJSONStringifyFailed",
@@ -98,7 +134,10 @@ export declare enum TelemetryEvent {
98
134
  InvalidConfiguration = "InvalidConfiguration",
99
135
  SendTypingIndicatorSucceeded = "SendTypingIndicatorSucceeded",
100
136
  SendTypingIndicatorFailed = "SendTypingIndicatorFailed",
137
+ WebChatEvent = "WebChatEvent",
101
138
  PreChatSurveyStartChatMethodFailed = "PreChatSurveyStartChatMethodFailed",
139
+ ChatAlreadyTriggered = "ChatAlreadyTriggered",
140
+ StartProactiveChatEventReceived = "StartProactiveChatEventReceived",
102
141
  StartProactiveChatMethodFailed = "StartProactiveChatMethodFailed",
103
142
  ProactiveChatAccepted = "ProactiveChatAccepted",
104
143
  ProactiveChatRejected = "ProactiveChatRejected",
@@ -106,11 +145,15 @@ export declare enum TelemetryEvent {
106
145
  ProactiveChatClosed = "ProactiveChatClosed",
107
146
  ReconnectChatContinueConversation = "ReconnectChatContinueConversation",
108
147
  ReconnectChatStartNewConversation = "ReconnectChatStartNewConversation",
109
- ReconnectChatMinimize = "ReconnectChatMinimize"
148
+ ReconnectChatMinimize = "ReconnectChatMinimize",
149
+ MessageSent = "MessageSent",
150
+ MessageReceived = "MessageReceived",
151
+ CustomContextReceived = "CustomContextReceived"
110
152
  }
111
153
  export interface TelemetryInput {
112
154
  scenarioType: ScenarioType;
113
155
  payload: TelemetryData;
156
+ telemetryInfo?: any;
114
157
  }
115
158
  export declare class TelemetryConstants {
116
159
  private static map;
@@ -11,6 +11,7 @@ export interface TelemetryEventWrapper {
11
11
  Description?: string;
12
12
  ExceptionDetails?: any;
13
13
  ElapsedTimeInMilliseconds?: number;
14
+ Data?: any;
14
15
  }
15
16
  export declare class TelemetryHelper {
16
17
  static callId: string;
@@ -35,4 +36,5 @@ export declare class TelemetryHelper {
35
36
  static logActionEvent: (logLevel: LogLevel, payload: TelemetryEventWrapper) => void;
36
37
  static logSDKEvent: (logLevel: LogLevel, payload: TelemetryEventWrapper) => void;
37
38
  static logConfigDataEvent: (logLevel: LogLevel, payload: TelemetryEventWrapper) => void;
39
+ static logWebChatEvent: (logLevel: LogLevel, payload: TelemetryEventWrapper) => void;
38
40
  }
@@ -8,4 +8,5 @@ export declare class TelemetryTimers {
8
8
  export declare class TelemetryManager {
9
9
  static InternalTelemetryData: IInternalTelemetryData;
10
10
  }
11
+ export declare const disposeLoggers: () => void;
11
12
  export declare const RegisterLoggers: () => void;
@@ -24,6 +24,9 @@ export interface LoadContract extends BaseContract {
24
24
  WidgetState?: string;
25
25
  ChatState?: string;
26
26
  ChatType?: string;
27
+ OCChatSDKVersion: string;
28
+ OCChatWidgetVersion: string;
29
+ OCChatComponentsVersion: string;
27
30
  }
28
31
  export interface ActionsContract extends BaseContract {
29
32
  Event?: string;