@microsoft/omnichannel-chat-widget 0.1.0-main.86df755 → 0.1.0-main.875499b

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 (249) 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/storage/default/defaultCacheManager.js +34 -0
  8. package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +114 -0
  9. package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +86 -0
  10. package/lib/cjs/common/telemetry/TelemetryConstants.js +74 -4
  11. package/lib/cjs/common/telemetry/TelemetryHelper.js +22 -4
  12. package/lib/cjs/common/telemetry/TelemetryManager.js +28 -9
  13. package/lib/cjs/common/telemetry/defaultConfigs/defaultAriaConfig.js +3 -3
  14. package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +4 -1
  15. package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +66 -20
  16. package/lib/cjs/common/telemetry/loggers/consoleLogger.js +9 -5
  17. package/lib/cjs/common/utils.js +89 -2
  18. package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +14 -0
  19. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +28 -5
  20. package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +11 -58
  21. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +6 -6
  22. package/lib/cjs/components/footerstateful/FooterStateful.js +9 -18
  23. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +11 -2
  24. package/lib/cjs/components/headerstateful/HeaderStateful.js +23 -13
  25. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +44 -0
  26. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +23 -0
  27. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  28. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +39 -0
  29. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +70 -0
  30. package/lib/cjs/components/livechatwidget/common/Deferred.js +42 -0
  31. package/lib/cjs/components/livechatwidget/common/authHelper.js +65 -0
  32. package/lib/cjs/components/livechatwidget/common/createAdapter.js +13 -1
  33. package/lib/cjs/components/livechatwidget/common/createFooter.js +7 -16
  34. package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +12 -0
  35. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +32 -32
  36. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +101 -61
  37. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +14 -0
  38. package/lib/cjs/components/livechatwidget/common/endChat.js +142 -43
  39. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +5 -0
  40. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +51 -10
  41. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +144 -39
  42. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +11 -7
  43. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +22 -24
  44. package/lib/cjs/components/livechatwidget/common/shareObservable.js +45 -0
  45. package/lib/cjs/components/livechatwidget/common/startChat.js +207 -41
  46. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +3 -3
  47. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +335 -71
  48. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +1 -1
  49. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +8 -0
  50. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +8 -0
  51. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +6 -4
  52. package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  53. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +22 -10
  54. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +27 -5
  55. package/lib/cjs/components/proactivechatpanestateful/interfaces/IProactiveChatNotificationConfig.js +1 -0
  56. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +110 -2
  57. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +4 -1
  58. package/lib/cjs/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +11 -0
  59. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +6 -0
  60. package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +51 -73
  61. package/lib/cjs/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  62. package/lib/cjs/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.js +1 -0
  63. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +14 -0
  64. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +25 -48
  65. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +2 -1
  66. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +3 -1
  67. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +52 -0
  68. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +98 -0
  69. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +10 -0
  70. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
  71. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
  72. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +117 -0
  73. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +6 -6
  74. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +45 -0
  75. package/lib/cjs/contexts/common/ConversationState.js +4 -2
  76. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +15 -8
  77. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +23 -7
  78. package/lib/cjs/contexts/createReducer.js +53 -12
  79. package/lib/cjs/controller/componentController.js +5 -5
  80. package/lib/cjs/plugins/newMessageEventHandler.js +99 -0
  81. package/lib/esm/assets/Audios.js +1 -0
  82. package/lib/esm/assets/Icons.js +11 -0
  83. package/lib/esm/common/Constants.js +50 -3
  84. package/lib/esm/common/contextDataStore/DataStoreManager.js +5 -0
  85. package/lib/esm/common/interfaces/IContextDataStore.js +1 -0
  86. package/lib/esm/common/storage/default/defaultCacheManager.js +19 -0
  87. package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +102 -0
  88. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +71 -0
  89. package/lib/esm/common/telemetry/TelemetryConstants.js +70 -3
  90. package/lib/esm/common/telemetry/TelemetryHelper.js +22 -5
  91. package/lib/esm/common/telemetry/TelemetryManager.js +22 -9
  92. package/lib/esm/common/telemetry/defaultConfigs/defaultAriaConfig.js +3 -3
  93. package/lib/esm/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +4 -1
  94. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +69 -18
  95. package/lib/esm/common/telemetry/loggers/consoleLogger.js +9 -5
  96. package/lib/esm/common/utils.js +64 -1
  97. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +14 -0
  98. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +31 -8
  99. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +11 -54
  100. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +6 -6
  101. package/lib/esm/components/footerstateful/FooterStateful.js +9 -18
  102. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +9 -3
  103. package/lib/esm/components/headerstateful/HeaderStateful.js +24 -14
  104. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +34 -0
  105. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +14 -0
  106. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.js +1 -0
  107. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +29 -0
  108. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +59 -0
  109. package/lib/esm/components/livechatwidget/common/Deferred.js +33 -0
  110. package/lib/esm/components/livechatwidget/common/authHelper.js +50 -0
  111. package/lib/esm/components/livechatwidget/common/createAdapter.js +12 -2
  112. package/lib/esm/components/livechatwidget/common/createFooter.js +4 -15
  113. package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +8 -0
  114. package/lib/esm/components/livechatwidget/common/createMarkdown.js +32 -31
  115. package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +99 -62
  116. package/lib/esm/components/livechatwidget/common/disposeTelemetryLoggers.js +4 -0
  117. package/lib/esm/components/livechatwidget/common/endChat.js +139 -42
  118. package/lib/esm/components/livechatwidget/common/initCallingSdk.js +3 -0
  119. package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +45 -11
  120. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +134 -41
  121. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +10 -3
  122. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +19 -22
  123. package/lib/esm/components/livechatwidget/common/shareObservable.js +38 -0
  124. package/lib/esm/components/livechatwidget/common/startChat.js +195 -39
  125. package/lib/esm/components/livechatwidget/common/startProactiveChat.js +5 -5
  126. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +319 -76
  127. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +1 -1
  128. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +6 -0
  129. package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +6 -0
  130. package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +5 -4
  131. package/lib/esm/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  132. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +22 -10
  133. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +26 -6
  134. package/lib/esm/components/proactivechatpanestateful/interfaces/IProactiveChatNotificationConfig.js +1 -0
  135. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +97 -2
  136. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +3 -1
  137. package/lib/esm/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.js +4 -0
  138. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +6 -0
  139. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +2 -12
  140. package/lib/esm/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.js +1 -0
  141. package/lib/esm/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.js +1 -0
  142. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +5 -0
  143. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +23 -46
  144. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +2 -1
  145. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +2 -1
  146. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +41 -0
  147. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +94 -0
  148. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +3 -0
  149. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +3 -0
  150. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +3 -0
  151. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +107 -0
  152. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +6 -6
  153. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +32 -0
  154. package/lib/esm/contexts/common/ConversationState.js +4 -2
  155. package/lib/esm/contexts/common/LiveChatWidgetActionType.js +15 -8
  156. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +21 -7
  157. package/lib/esm/contexts/createReducer.js +53 -11
  158. package/lib/esm/controller/componentController.js +5 -5
  159. package/lib/esm/plugins/newMessageEventHandler.js +82 -0
  160. package/lib/types/assets/Audios.d.ts +1 -0
  161. package/lib/types/assets/Icons.d.ts +11 -0
  162. package/lib/types/common/Constants.d.ts +27 -1
  163. package/lib/types/common/contextDataStore/DataStoreManager.d.ts +4 -0
  164. package/lib/types/common/interfaces/IContextDataStore.d.ts +14 -0
  165. package/lib/types/common/storage/default/defaultCacheManager.d.ts +4 -0
  166. package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +2 -0
  167. package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -0
  168. package/lib/types/common/telemetry/TelemetryConstants.d.ts +49 -2
  169. package/lib/types/common/telemetry/TelemetryHelper.d.ts +2 -0
  170. package/lib/types/common/telemetry/TelemetryManager.d.ts +1 -0
  171. package/lib/types/common/telemetry/definitions/Contracts.d.ts +3 -0
  172. package/lib/types/common/telemetry/definitions/Payload.d.ts +15 -9
  173. package/lib/types/common/telemetry/interfaces/IChatSDKLogger.d.ts +1 -0
  174. package/lib/types/common/telemetry/interfaces/IInternalTelemetryData.d.ts +2 -0
  175. package/lib/types/common/telemetry/interfaces/ITelemetryConfig.d.ts +12 -0
  176. package/lib/types/common/utils.d.ts +8 -1
  177. package/lib/types/components/confirmationpanestateful/interfaces/IConfirmationPaneStatefulParams.d.ts +5 -2
  178. package/lib/types/components/footerstateful/audionotificationstateful/interfaces/IAudioNotificationStatefulParams.d.ts +0 -1
  179. package/lib/types/components/headerstateful/interfaces/IHeaderStatefulParams.d.ts +5 -1
  180. package/lib/types/components/livechatwidget/common/ActivityStreamHandler.d.ts +14 -0
  181. package/lib/types/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.d.ts +5 -0
  182. package/lib/types/components/livechatwidget/common/ActivitySubscriber/IActivitySubscriber.d.ts +6 -0
  183. package/lib/types/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.d.ts +7 -0
  184. package/lib/types/components/livechatwidget/common/ChatAdapterShim.d.ts +7 -0
  185. package/lib/types/components/livechatwidget/common/Deferred.d.ts +9 -0
  186. package/lib/types/components/livechatwidget/common/authHelper.d.ts +5 -0
  187. package/lib/types/components/livechatwidget/common/disposeTelemetryLoggers.d.ts +1 -0
  188. package/lib/types/components/livechatwidget/common/endChat.d.ts +4 -1
  189. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +6 -2
  190. package/lib/types/components/livechatwidget/common/setPostChatContextAndLoadSurvey.d.ts +1 -1
  191. package/lib/types/components/livechatwidget/common/shareObservable.d.ts +1 -0
  192. package/lib/types/components/livechatwidget/common/startChat.d.ts +4 -2
  193. package/lib/types/components/livechatwidget/common/startProactiveChat.d.ts +2 -1
  194. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetComponentOverrides.d.ts +1 -0
  195. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +1 -0
  196. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +6 -3
  197. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
  198. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
  199. package/lib/types/components/prechatsurveypanestateful/interfaces/IPreChatSurveyPaneStatefulParams.d.ts +1 -1
  200. package/lib/types/components/proactivechatpanestateful/interfaces/IProactiveChatNotificationConfig.d.ts +3 -0
  201. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +1 -1
  202. package/lib/types/components/webchatcontainerstateful/common/defaultStyles/defaultAdaptiveCardStyles.d.ts +2 -0
  203. package/lib/types/components/webchatcontainerstateful/common/mockchatsdk.d.ts +2 -0
  204. package/lib/types/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.d.ts +1 -1
  205. package/lib/types/components/webchatcontainerstateful/interfaces/IAdaptiveCardStyles.d.ts +4 -0
  206. package/lib/types/components/webchatcontainerstateful/interfaces/IBotMagicCodeConfig.d.ts +4 -0
  207. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +4 -1
  208. package/lib/types/components/webchatcontainerstateful/interfaces/IWebChatContainerStatefulProps.d.ts +4 -0
  209. package/lib/types/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.d.ts +3 -0
  210. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.d.ts +0 -1
  211. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.d.ts +1 -1
  212. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.d.ts +2 -0
  213. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.d.ts +1 -0
  214. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +2 -0
  215. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  216. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  217. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.d.ts +5 -0
  218. package/lib/types/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.d.ts +1 -0
  219. package/lib/types/contexts/common/ConversationState.d.ts +4 -2
  220. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +7 -2
  221. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +16 -9
  222. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
  223. package/lib/types/plugins/newMessageEventHandler.d.ts +2 -0
  224. package/package.json +14 -13
  225. package/lib/cjs/assets/audios/newMessageNotification.mp3 +0 -0
  226. package/lib/cjs/assets/icons/archiveIcon.svg +0 -3
  227. package/lib/cjs/assets/icons/audioIcon.svg +0 -6
  228. package/lib/cjs/assets/icons/blankIcon.svg +0 -6
  229. package/lib/cjs/assets/icons/excelIcon.svg +0 -6
  230. package/lib/cjs/assets/icons/imageIcon.svg +0 -6
  231. package/lib/cjs/assets/icons/oneNoteIcon.svg +0 -6
  232. package/lib/cjs/assets/icons/pdfIcon.svg +0 -6
  233. package/lib/cjs/assets/icons/powerpointIcon.svg +0 -6
  234. package/lib/cjs/assets/icons/videoIcon.svg +0 -6
  235. package/lib/cjs/assets/icons/visioIcon.svg +0 -6
  236. package/lib/cjs/assets/icons/wordIcon.svg +0 -6
  237. package/lib/esm/assets/assets.d.js +0 -0
  238. package/lib/esm/assets/audios/newMessageNotification.mp3 +0 -0
  239. package/lib/esm/assets/icons/archiveIcon.svg +0 -3
  240. package/lib/esm/assets/icons/audioIcon.svg +0 -6
  241. package/lib/esm/assets/icons/blankIcon.svg +0 -6
  242. package/lib/esm/assets/icons/excelIcon.svg +0 -6
  243. package/lib/esm/assets/icons/imageIcon.svg +0 -6
  244. package/lib/esm/assets/icons/oneNoteIcon.svg +0 -6
  245. package/lib/esm/assets/icons/pdfIcon.svg +0 -6
  246. package/lib/esm/assets/icons/powerpointIcon.svg +0 -6
  247. package/lib/esm/assets/icons/videoIcon.svg +0 -6
  248. package/lib/esm/assets/icons/visioIcon.svg +0 -6
  249. package/lib/esm/assets/icons/wordIcon.svg +0 -6
@@ -1,7 +1,9 @@
1
1
  import { NotificationHandler } from "../../webchatcontainerstateful/webchatcontroller/notification/NotificationHandler";
2
2
  import { NotificationLevel } from "../../webchatcontainerstateful/webchatcontroller/enums/NotificationLevel";
3
3
  import { NotificationScenarios } from "../../webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios";
4
- import { defaultMiddlewareLocalizedTexts } from "../../webchatcontainerstateful/common/defaultProps/defaultMiddlewareLocalizedTexts"; // eslint-disable-next-line @typescript-eslint/no-explicit-any
4
+ import { defaultMiddlewareLocalizedTexts } from "../../webchatcontainerstateful/common/defaultProps/defaultMiddlewareLocalizedTexts";
5
+ import { ChatAdapterShim } from "./ChatAdapterShim";
6
+ import { PauseActivitySubscriber } from "./ActivitySubscriber/PauseActivitySubscriber"; // eslint-disable-next-line @typescript-eslint/no-explicit-any
5
7
 
6
8
  export const createAdapter = async chatSDK => {
7
9
  const chatAdapterOptionalParams = {
@@ -23,5 +25,13 @@ export const createAdapter = async chatSDK => {
23
25
  }
24
26
  }
25
27
  };
26
- return await chatSDK.createChatAdapter(chatAdapterOptionalParams);
28
+ let adapter = await chatSDK.createChatAdapter(chatAdapterOptionalParams); //so far, there is no need to convert to the shim adapter when using visual tests
29
+
30
+ if (chatSDK.isMockModeOn !== true) {
31
+ adapter = new ChatAdapterShim(adapter);
32
+ adapter.addSubscriber(new PauseActivitySubscriber());
33
+ return adapter.chatAdapter;
34
+ }
35
+
36
+ return adapter;
27
37
  };
@@ -3,25 +3,14 @@ import React from "react";
3
3
  import { decodeComponentString } from "@microsoft/omnichannel-chat-components";
4
4
  import { shouldShowFooter } from "../../../controller/componentController";
5
5
  export const createFooter = (props, state) => {
6
- var _props$footerProps, _props$controlProps, _props$componentOverr, _props$componentOverr2;
6
+ var _props$controlProps, _props$componentOverr;
7
7
 
8
- const footerPropsHidden = { ...props.footerProps,
9
- controlProps: { ...((_props$footerProps = props.footerProps) === null || _props$footerProps === void 0 ? void 0 : _props$footerProps.controlProps),
10
- hideDownloadTranscriptButton: true,
11
- hideEmailTranscriptButton: true,
12
- hideAudioNotificationButton: true
13
- }
14
- };
15
- const footer = !((_props$controlProps = props.controlProps) !== null && _props$controlProps !== void 0 && _props$controlProps.hideFooter) && shouldShowFooter(state) ? decodeComponentString((_props$componentOverr = props.componentOverrides) === null || _props$componentOverr === void 0 ? void 0 : _props$componentOverr.footer) || /*#__PURE__*/React.createElement(FooterStateful, {
8
+ const hideFooterDisplay = !((_props$controlProps = props.controlProps) !== null && _props$controlProps !== void 0 && _props$controlProps.hideFooter) && shouldShowFooter(state) ? false : true;
9
+ const footer = decodeComponentString((_props$componentOverr = props.componentOverrides) === null || _props$componentOverr === void 0 ? void 0 : _props$componentOverr.footer) || /*#__PURE__*/React.createElement(FooterStateful, {
16
10
  footerProps: props.footerProps,
17
11
  downloadTranscriptProps: props.downloadTranscriptProps,
18
12
  audioNotificationProps: props.audioNotificationProps,
19
- hideFooterDisplay: false
20
- }) : decodeComponentString((_props$componentOverr2 = props.componentOverrides) === null || _props$componentOverr2 === void 0 ? void 0 : _props$componentOverr2.footer) || /*#__PURE__*/React.createElement(FooterStateful, {
21
- footerProps: footerPropsHidden,
22
- downloadTranscriptProps: props.downloadTranscriptProps,
23
- audioNotificationProps: props.audioNotificationProps,
24
- hideFooterDisplay: true
13
+ hideFooterDisplay: hideFooterDisplay
25
14
  });
26
15
  return footer;
27
16
  };
@@ -2,6 +2,8 @@ import { Constants } from "../../../common/Constants";
2
2
  import { NotificationHandler } from "../../webchatcontainerstateful/webchatcontroller/notification/NotificationHandler";
3
3
  import { NotificationScenarios } from "../../webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios";
4
4
  import { defaultMiddlewareLocalizedTexts } from "../../webchatcontainerstateful/common/defaultProps/defaultMiddlewareLocalizedTexts";
5
+ import { TelemetryHelper } from "../../../common/telemetry/TelemetryHelper";
6
+ import { LogLevel, TelemetryEvent } from "../../../common/telemetry/TelemetryConstants";
5
7
 
6
8
  const isInternetConnected = async () => {
7
9
  try {
@@ -18,8 +20,14 @@ export const createInternetConnectionChangeHandler = async () => {
18
20
  const connected = await isInternetConnected();
19
21
 
20
22
  if (!connected) {
23
+ TelemetryHelper.logActionEvent(LogLevel.WARN, {
24
+ Event: TelemetryEvent.NetworkDisconnected
25
+ });
21
26
  NotificationHandler.notifyError(NotificationScenarios.InternetConnection, defaultMiddlewareLocalizedTexts.MIDDLEWARE_BANNER_NO_INTERNET_CONNECTION);
22
27
  } else {
28
+ TelemetryHelper.logActionEvent(LogLevel.WARN, {
29
+ Event: TelemetryEvent.NetworkReconnected
30
+ });
23
31
  NotificationHandler.notifySuccess(NotificationScenarios.InternetConnection, defaultMiddlewareLocalizedTexts.MIDDLEWARE_BANNER_INTERNET_BACK_ONLINE);
24
32
  }
25
33
  }; // Checking connection status on online & offline events due to possible false positives
@@ -1,5 +1,4 @@
1
1
  import MarkdownIt from "markdown-it";
2
- import MarkdownSlack from "slack-markdown-it";
3
2
  import MarkdownItForInline from "markdown-it-for-inline";
4
3
  import { defaultMarkdownLocalizedTexts } from "../../webchatcontainerstateful/common/defaultProps/defaultMarkdownLocalizedTexts";
5
4
  import { Constants } from "../../../common/Constants"; // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -12,27 +11,42 @@ export const createMarkdown = (disableMarkdownMessageFormatting, disableNewLineM
12
11
  html: true,
13
12
  linkify: true,
14
13
  breaks: !disableNewLineMarkdownSupport
14
+ }); // ToDo: Commenting below usage of plugin until deferred bug is resolved: https://github.com/mayashavin/markdown-it-slack/issues/1
15
+ // markdown.use(MarkdownSlack);
16
+ } else {
17
+ markdown = new MarkdownIt(Constants.Zero, {
18
+ html: true,
19
+ linkify: true,
20
+ breaks: !disableNewLineMarkdownSupport
15
21
  });
16
- markdown.use(MarkdownSlack); // Markdown override for open link in new tab
17
- // eslint-disable-next-line @typescript-eslint/no-explicit-any, quotes
22
+ markdown.enable(["entity", // Rule to process html entity - {, ¯, "
23
+ "linkify", // Rule to replace link-like texts with link nodes
24
+ "html_block", // Rule to process html blocks and paragraphs
25
+ "html_inline", // Rule to process html tags
26
+ "newline" // Rule to proceess '\n'
27
+ ]);
28
+ } // eslint-disable-next-line @typescript-eslint/no-explicit-any
18
29
 
19
- markdown.use(MarkdownItForInline, "url_new_win", "link_open", function (tokens, idx, env) {
20
- const targetAttrIndex = tokens[idx].attrIndex(Constants.Target); // Put a transparent pixel instead of the "open in new window" icon, so developers can easily modify the icon in CSS.
21
30
 
22
- const TRANSPARENT_GIF = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";
31
+ markdown.use(MarkdownItForInline, "url_new_win", "link_open", function (tokens, idx, env) {
32
+ const targetAttrIndex = tokens[idx].attrIndex(Constants.Target); // Put a transparent pixel instead of the "open in new window" icon, so developers can easily modify the icon in CSS.
23
33
 
24
- if (~targetAttrIndex) {
25
- tokens[idx].attrs[targetAttrIndex][1] = Constants.Blank;
26
- } else {
27
- tokens[idx].attrPush([Constants.Target, Constants.Blank]);
28
- }
34
+ const TRANSPARENT_GIF = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";
35
+
36
+ if (~targetAttrIndex) {
37
+ tokens[idx].attrs[targetAttrIndex][1] = Constants.Blank;
38
+ } else {
39
+ tokens[idx].attrPush([Constants.Target, Constants.Blank]);
40
+ }
41
+
42
+ const relAttrIndex = tokens[idx].attrIndex(Constants.TargetRelationship);
29
43
 
30
- const relAttrIndex = tokens[idx].attrIndex(Constants.TargetRelationship);
44
+ if (~relAttrIndex) {
45
+ tokens[idx].attrs[relAttrIndex][1] = Constants.TargetRelationshipAttributes;
46
+ } else {
47
+ tokens[idx].attrPush([Constants.TargetRelationship, Constants.TargetRelationshipAttributes]);
31
48
 
32
- if (~relAttrIndex) {
33
- tokens[idx].attrs[relAttrIndex][1] = Constants.TargetRelationshipAttributes;
34
- } else {
35
- tokens[idx].attrPush([Constants.TargetRelationship, Constants.TargetRelationshipAttributes]);
49
+ if (!disableMarkdownMessageFormatting) {
36
50
  tokens[idx].attrPush([Constants.Title, defaultMarkdownLocalizedTexts.MARKDOWN_EXTERNAL_LINK_ALT]); // eslint-disable-next-line quotes
37
51
 
38
52
  const iconTokens = markdown.parseInline(`![${defaultMarkdownLocalizedTexts.MARKDOWN_EXTERNAL_LINK_ALT}](${TRANSPARENT_GIF})`, env)[0].children;
@@ -42,20 +56,7 @@ export const createMarkdown = (disableMarkdownMessageFormatting, disableNewLineM
42
56
  tokens.splice(idx + 2, 0, ...iconTokens);
43
57
  }
44
58
  }
45
- });
46
- } else {
47
- markdown = new MarkdownIt(Constants.Zero, {
48
- html: true,
49
- linkify: true,
50
- breaks: !disableNewLineMarkdownSupport
51
- });
52
- markdown.enable(["entity", // Rule to process html entity - {, ¯, "
53
- "linkify", // Rule to replace link-like texts with link nodes
54
- "html_block", // Rule to process html blocks and paragraphs
55
- "html_inline", // Rule to process html tags
56
- "newline" // Rule to proceess '\n'
57
- ]);
58
- }
59
-
59
+ }
60
+ });
60
61
  return markdown;
61
62
  };
@@ -1,5 +1,7 @@
1
1
  /* eslint-disable @typescript-eslint/no-empty-function, @typescript-eslint/no-explicit-any */
2
+ import { ChatReconnectIconBase64, CloseChatButtonIconBase64, ModernChatIconBase64, ProactiveChatBannerBase64 } from "@microsoft/omnichannel-chat-components";
2
3
  import MockAdapter from "../../../webchatcontainerstateful/common/mockadapter";
4
+ import { NewMessageNotificationSoundBase64 } from "../../../../assets/Audios";
3
5
  import { WebChatStoreLoader } from "../../../webchatcontainerstateful/webchatcontroller/WebChatStoreLoader";
4
6
  import { activityStatusMiddleware } from "../../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware";
5
7
  import { createActivityMiddleware } from "../../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware";
@@ -7,11 +9,12 @@ import createAttachmentMiddleware from "../../../webchatcontainerstateful/webcha
7
9
  import { createAvatarMiddleware } from "../../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware";
8
10
  import { createMarkdown } from "../createMarkdown";
9
11
  import { groupActivitiesMiddleware } from "../../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware";
10
- import { typingIndicatorMiddleware } from "../../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware"; // eslint-disable-next-line @typescript-eslint/no-unused-vars
12
+ import { typingIndicatorMiddleware } from "../../../webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware";
13
+ import { createWebChatTelemetry } from "../../../webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger"; // eslint-disable-next-line @typescript-eslint/no-unused-vars
11
14
 
12
15
  export const dummyDefaultProps = {
13
16
  audioNotificationProps: {
14
- audioSrc: "assets/audios/newMessageNotification.mp3"
17
+ audioSrc: NewMessageNotificationSoundBase64
15
18
  },
16
19
  callingContainerProps: {
17
20
  controlProps: {
@@ -132,7 +135,7 @@ export const dummyDefaultProps = {
132
135
  id: "oc-lcw-CurrentCall-timer",
133
136
  showHours: false,
134
137
  timerStyles: {
135
- color: "white",
138
+ color: "#FFFFFF",
136
139
  textAlign: "center",
137
140
  backgroundColor: "#3d3c3c",
138
141
  height: "45px",
@@ -163,24 +166,28 @@ export const dummyDefaultProps = {
163
166
  },
164
167
  audioCallButtonStyleProps: {
165
168
  borderRadius: "50%",
166
- color: "white",
167
- backgroundColor: "green",
169
+ backgroundColor: "#008000",
168
170
  lineHeight: "40px",
169
171
  height: "40px",
170
172
  width: "40px",
171
- fontSize: 18
173
+ icon: {
174
+ fontSize: 18,
175
+ color: "#FFFFFF"
176
+ }
172
177
  },
173
178
  audioCallButtonHoverStyleProps: {
174
179
  filter: "brightness(0.8)"
175
180
  },
176
181
  videoCallButtonStyleProps: {
177
182
  borderRadius: "50%",
178
- color: "white",
179
- backgroundColor: "green",
183
+ backgroundColor: "#008000",
180
184
  lineHeight: "40px",
181
185
  height: "40px",
182
186
  width: "40px",
183
- fontSize: 18
187
+ icon: {
188
+ fontSize: 18,
189
+ color: "#FFFFFF"
190
+ }
184
191
  },
185
192
  videoCallButtonHoverStyleProps: {
186
193
  filter: "brightness(0.8)"
@@ -191,22 +198,24 @@ export const dummyDefaultProps = {
191
198
  },
192
199
  declineCallButtonStyleProps: {
193
200
  borderRadius: "50%",
194
- color: "white",
195
- backgroundColor: "red",
201
+ backgroundColor: "#DC0000",
196
202
  lineHeight: "40px",
197
203
  height: "40px",
198
204
  width: "40px",
199
- fontSize: 18,
200
- marginLeft: "5px"
205
+ marginLeft: "5px",
206
+ icon: {
207
+ fontSize: 18,
208
+ color: "#FFFFFF"
209
+ }
201
210
  },
202
211
  incomingCallTitleStyleProps: {
203
212
  margin: "0 5px",
204
- color: "white",
213
+ color: "#FFFFFF",
205
214
  fontSize: 12,
206
215
  fontFamily: "Segoe UI, Arial, sans-serif"
207
216
  },
208
217
  itemFocusStyleProps: {
209
- outline: "2px solid white"
218
+ outline: "2px solid #FFFFFF"
210
219
  }
211
220
  },
212
221
  currentCallStyleProps: {
@@ -218,7 +227,7 @@ export const dummyDefaultProps = {
218
227
  },
219
228
  micButtonStyleProps: {
220
229
  borderRadius: "2px",
221
- color: "white",
230
+ color: "#FFFFFF",
222
231
  backgroundColor: "#3d3c3c",
223
232
  height: "45px",
224
233
  width: "50px",
@@ -229,7 +238,7 @@ export const dummyDefaultProps = {
229
238
  },
230
239
  videoOffButtonStyleProps: {
231
240
  borderRadius: "2px",
232
- color: "white",
241
+ color: "#FFFFFF",
233
242
  backgroundColor: "#3d3c3c",
234
243
  height: "45px",
235
244
  width: "50px",
@@ -243,25 +252,13 @@ export const dummyDefaultProps = {
243
252
  },
244
253
  endCallButtonStyleProps: {
245
254
  borderRadius: "2px",
246
- color: "white",
247
- backgroundColor: "red",
255
+ color: "#FFFFFF",
256
+ backgroundColor: "#DC0000",
248
257
  lineHeight: "50px",
249
258
  height: "45px",
250
259
  width: "50px",
251
260
  fontSize: "18px"
252
261
  },
253
- currentCallTimerStyleProps: {
254
- borderRadius: "2px",
255
- margin: "1px",
256
- color: "white",
257
- paddingTop: "18px",
258
- fontSize: 12,
259
- fontFamily: "Segoe UI, Arial, sans-serif",
260
- backgroundColor: "darkgrey",
261
- height: "45px",
262
- width: "50px",
263
- textAlign: "center"
264
- },
265
262
  videoTileStyleProps: {
266
263
  width: "100%",
267
264
  marginLeft: "auto",
@@ -325,7 +322,10 @@ export const dummyDefaultProps = {
325
322
  hideChatTextContainer: false,
326
323
  hideChatSubtitle: false,
327
324
  hideChatTitle: false,
328
- hideNotificationBubble: true
325
+ hideNotificationBubble: true,
326
+ unreadMessageString: "new messages",
327
+ largeUnreadMessageString: "99+",
328
+ ariaLabelUnreadMessageString: "you have new messages"
329
329
  },
330
330
  styleProps: {
331
331
  generalStyleProps: {
@@ -366,7 +366,7 @@ export const dummyDefaultProps = {
366
366
  margin: "-2px -2px -2px -3px",
367
367
  justifyContent: "center",
368
368
  backgroundSize: "65% 65%",
369
- backgroundImage: "assets/imgs/chat.svg",
369
+ backgroundImage: `url(${ModernChatIconBase64})`,
370
370
  display: "flex",
371
371
  backgroundRepeat: "no-repeat",
372
372
  backgroundPosition: "center"
@@ -475,7 +475,7 @@ export const dummyDefaultProps = {
475
475
  },
476
476
  styleProps: {
477
477
  generalStyleProps: {
478
- backgroundColor: "white",
478
+ backgroundColor: "#FFFFFF",
479
479
  borderRadius: "2px",
480
480
  color: "black",
481
481
  fontFamily: "Segoe UI, Arial, sans-serif",
@@ -517,7 +517,7 @@ export const dummyDefaultProps = {
517
517
  },
518
518
  confirmButtonStyleProps: {
519
519
  backgroundColor: "rgba(9,72,159,1)",
520
- color: "white",
520
+ color: "#FFFFFF",
521
521
  fontFamily: "Segoe UI, Arial, sans-serif",
522
522
  fontSize: "14px",
523
523
  fontWeight: "500",
@@ -531,7 +531,7 @@ export const dummyDefaultProps = {
531
531
  border: "2px dotted #000"
532
532
  },
533
533
  cancelButtonStyleProps: {
534
- backgroundColor: "white",
534
+ backgroundColor: "#FFFFFF",
535
535
  fontFamily: "Segoe UI, Arial, sans-serif",
536
536
  fontSize: "14px",
537
537
  fontWeight: "500",
@@ -777,6 +777,7 @@ export const dummyDefaultProps = {
777
777
  },
778
778
  audioNotificationButtonProps: {
779
779
  id: "oc-lcw-footer-audionotification-button",
780
+ type: "icon",
780
781
  ariaLabel: "Turn sound off",
781
782
  toggleAriaLabel: "Turn sound on",
782
783
  iconName: "Volume3",
@@ -802,8 +803,10 @@ export const dummyDefaultProps = {
802
803
  padding: "0 10px 5px 10px"
803
804
  },
804
805
  downloadTranscriptButtonStyleProps: {
805
- color: "blue",
806
- fontSize: 16,
806
+ icon: {
807
+ color: "blue",
808
+ fontSize: 16
809
+ },
807
810
  height: "25px",
808
811
  lineHeight: "25px",
809
812
  width: "25px"
@@ -813,8 +816,10 @@ export const dummyDefaultProps = {
813
816
  backgroundColor: "#C8C8C8"
814
817
  },
815
818
  emailTranscriptButtonStyleProps: {
816
- color: "blue",
817
- fontSize: 16,
819
+ cicon: {
820
+ color: "blue",
821
+ fontSize: 16
822
+ },
818
823
  height: "25px",
819
824
  lineHeight: "25px",
820
825
  width: "25px"
@@ -824,8 +829,10 @@ export const dummyDefaultProps = {
824
829
  backgroundColor: "#C8C8C8"
825
830
  },
826
831
  audioNotificationButtonStyleProps: {
827
- color: "blue",
828
- fontSize: 16,
832
+ icon: {
833
+ color: "blue",
834
+ fontSize: 16
835
+ },
829
836
  height: "25px",
830
837
  lineHeight: "25px",
831
838
  width: "25px"
@@ -876,7 +883,7 @@ export const dummyDefaultProps = {
876
883
  className: undefined
877
884
  },
878
885
  closeButtonProps: {
879
- id: "oc-lcw-header-minimize-button",
886
+ id: "oc-lcw-header-close-button",
880
887
  type: "icon",
881
888
  iconName: "ChromeClose",
882
889
  ariaLabel: "Close",
@@ -887,7 +894,7 @@ export const dummyDefaultProps = {
887
894
  },
888
895
  headerIconProps: {
889
896
  id: "oc-lcw-header-icon",
890
- src: "assets/imgs/chatIcon.svg",
897
+ src: ModernChatIconBase64,
891
898
  alt: "Chat Icon",
892
899
  className: undefined
893
900
  },
@@ -916,16 +923,16 @@ export const dummyDefaultProps = {
916
923
  fontSize: 16,
917
924
  fontFamily: "Segoe UI, Arial, sans-serif",
918
925
  fontWeight: "450",
919
- color: "white",
926
+ color: "#FFFFFF",
920
927
  padding: "3px 0"
921
928
  },
922
929
  minimizeButtonStyleProps: {
923
- color: "white",
930
+ color: "#FFFFFF",
924
931
  margin: "5px 0",
925
932
  fontSize: "12px"
926
933
  },
927
934
  closeButtonStyleProps: {
928
- color: "white",
935
+ color: "#FFFFFF",
929
936
  margin: "5px 0",
930
937
  fontSize: "12px"
931
938
  },
@@ -1012,7 +1019,7 @@ export const dummyDefaultProps = {
1012
1019
  alignSelf: "auto"
1013
1020
  },
1014
1021
  iconImageProps: {
1015
- src: "assets/imgs/chat.svg",
1022
+ src: "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxnIGZpbHRlcj0idXJsKCNmaWx0ZXIwX2lpKSI+DQo8cGF0aCBkPSJNMTUuMTk3MSAxNi4yNzI1VjI1Ljg1MjRDMTUuMTk3MSAyNy4zODExIDE1Ljg0MDEgMjcuNTIwMSAxNi45ODMyIDI3LjUyMDFMMjYuNzA4NCAyNy41NjQ5TDMxLjAwMzkgMzIuMzEyM1YyNy41NjQ5SDMxLjg5N0MzMi4xNzQzIDI3LjU2MzcgMzIuNDQ4NyAyNy41MDc3IDMyLjcwNDUgMjcuNDAwMUMzMi45NjAzIDI3LjI5MjQgMzMuMTkyNSAyNy4xMzUzIDMzLjM4NzggMjYuOTM3NUMzMy41ODMxIDI2LjczOTggMzMuNzM3NyAyNi41MDU0IDMzLjg0MjcgMjYuMjQ3N0MzMy45NDc4IDI1Ljk5IDM0LjAwMTMgMjUuNzE0IDM0LjAwMDEgMjUuNDM1NVYxNi4zMDM4QzM0LjAwMTMgMTYuMDI1NCAzMy45NDc4IDE1Ljc0OTQgMzMuODQyNyAxNS40OTE3QzMzLjczNzcgMTUuMjM0IDMzLjU4MzEgMTQuOTk5NiAzMy4zODc4IDE0LjgwMThDMzMuMTkyNSAxNC42MDQxIDMyLjk2MDMgMTQuNDQ2OSAzMi43MDQ1IDE0LjMzOTNDMzIuNDQ4NyAxNC4yMzE2IDMyLjE3NDMgMTQuMTc1NiAzMS44OTcgMTQuMTc0NEwxNy4zMDQ3IDE0LjE0MzFDMTcuMDI2OSAxNC4xNDM3IDE2Ljc1MiAxNC4xOTkyIDE2LjQ5NTcgMTQuMzA2NkMxNi4yMzk0IDE0LjQxNCAxNi4wMDY3IDE0LjU3MTEgMTUuODEwOSAxNC43Njg5QzE1LjYxNTIgMTQuOTY2NyAxNS40NjAyIDE1LjIwMTMgMTUuMzU0OCAxNS40NTkzQzE1LjI0OTUgMTUuNzE3MyAxNS4xOTU5IDE1Ljk5MzYgMTUuMTk3MSAxNi4yNzI1WiIgZmlsbD0iI0Q2RDZENiIvPg0KPC9nPg0KPGcgZmlsdGVyPSJ1cmwoI2ZpbHRlcjFfZGlpKSI+DQo8cGF0aCBkPSJNMjcuODczNSA2LjY5ODg3VjE4Ljg0MDlDMjcuODczNSAyMC43Nzg1IDI3LjA1NzIgMjAuOTU0NiAyNS42MDU4IDIwLjk1NDZMMTMuMjU4IDIxLjAxMTRMNy44MDQxNCAyNy4wMjg1VjIxLjAxMTRINi42NzAyN0M2LjMxODEyIDIxLjAwOTkgNS45Njk3MSAyMC45Mzg5IDUuNjQ0OTMgMjAuODAyNUM1LjMyMDE2IDIwLjY2NjEgNS4wMjUzOCAyMC40NjY4IDQuNzc3NDIgMjAuMjE2MkM0LjUyOTQ2IDE5Ljk2NTYgNC4zMzMxOSAxOS42Njg1IDQuMTk5OCAxOS4zNDE5QzQuMDY2NDIgMTkuMDE1MiAzLjk5ODUzIDE4LjY2NTUgNC4wMDAwMiAxOC4zMTI1VjYuNzM4NjRDMy45OTg1MyA2LjM4NTcxIDQuMDY2NDIgNi4wMzU5NSA0LjE5OTggNS43MDkzMUM0LjMzMzE5IDUuMzgyNjcgNC41Mjk0NiA1LjA4NTU3IDQuNzc3NDIgNC44MzQ5NUM1LjAyNTM4IDQuNTg0MzQgNS4zMjAxNiA0LjM4NTEzIDUuNjQ0OTMgNC4yNDg2OUM1Ljk2OTcxIDQuMTEyMjUgNi4zMTgxMiA0LjA0MTI2IDYuNjcwMjcgNC4wMzk3N0wyNS4xOTc2IDRDMjUuNTUwMiA0LjAwMDc0IDI1Ljg5OTMgNC4wNzExOCAyNi4yMjQ3IDQuMjA3MjlDMjYuNTUwMSA0LjM0MzM5IDI2Ljg0NTYgNC41NDI0OSAyNy4wOTQxIDQuNzkzMThDMjcuMzQyNyA1LjA0Mzg2IDI3LjUzOTUgNS4zNDEyMiAyNy42NzMyIDUuNjY4MjNDMjcuODA3IDUuOTk1MjMgMjcuODc1IDYuMzQ1NDYgMjcuODczNSA2LjY5ODg3WiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyKSIvPg0KPC9nPg0KPGRlZnM+DQo8ZmlsdGVyIGlkPSJmaWx0ZXIwX2lpIiB4PSIxNS4xOTcxIiB5PSIxNC4xNDMxIiB3aWR0aD0iMTguODAzMSIgaGVpZ2h0PSIxOC4xNjkzIiBmaWx0ZXJVbml0cz0idXNlclNwYWNlT25Vc2UiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiI+DQo8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPg0KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0ic2hhcGUiLz4NCjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIiByZXN1bHQ9ImhhcmRBbHBoYSIvPg0KPGZlT2Zmc2V0IGR4PSItMC4yIiBkeT0iLTAuMiIvPg0KPGZlQ29tcG9zaXRlIGluMj0iaGFyZEFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIvPg0KPGZlQ29sb3JNYXRyaXggdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAuMTcgMCIvPg0KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbjI9InNoYXBlIiByZXN1bHQ9ImVmZmVjdDFfaW5uZXJTaGFkb3ciLz4NCjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIiByZXN1bHQ9ImhhcmRBbHBoYSIvPg0KPGZlT2Zmc2V0IGR4PSItMC41IiBkeT0iLTAuNSIvPg0KPGZlQ29tcG9zaXRlIGluMj0iaGFyZEFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIvPg0KPGZlQ29sb3JNYXRyaXggdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAuMTYgMCIvPg0KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbjI9ImVmZmVjdDFfaW5uZXJTaGFkb3ciIHJlc3VsdD0iZWZmZWN0Ml9pbm5lclNoYWRvdyIvPg0KPC9maWx0ZXI+DQo8ZmlsdGVyIGlkPSJmaWx0ZXIxX2RpaSIgeD0iMCIgeT0iMCIgd2lkdGg9IjM5Ljg3MzYiIGhlaWdodD0iMzkuMDI4NSIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiPg0KPGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz4NCjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+DQo8ZmVPZmZzZXQgZHg9IjQiIGR5PSI0Ii8+DQo8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSI0Ii8+DQo8ZmVDb2xvck1hdHJpeCB0eXBlPSJtYXRyaXgiIHZhbHVlcz0iMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMC4yNSAwIi8+DQo8ZmVCbGVuZCBtb2RlPSJub3JtYWwiIGluMj0iQmFja2dyb3VuZEltYWdlRml4IiByZXN1bHQ9ImVmZmVjdDFfZHJvcFNoYWRvdyIvPg0KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3ciIHJlc3VsdD0ic2hhcGUiLz4NCjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIiByZXN1bHQ9ImhhcmRBbHBoYSIvPg0KPGZlT2Zmc2V0IGR4PSItMiIgZHk9Ii0yIi8+DQo8ZmVDb21wb3NpdGUgaW4yPSJoYXJkQWxwaGEiIG9wZXJhdG9yPSJhcml0aG1ldGljIiBrMj0iLTEiIGszPSIxIi8+DQo8ZmVDb2xvck1hdHJpeCB0eXBlPSJtYXRyaXgiIHZhbHVlcz0iMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMC4xNyAwIi8+DQo8ZmVCbGVuZCBtb2RlPSJub3JtYWwiIGluMj0ic2hhcGUiIHJlc3VsdD0iZWZmZWN0Ml9pbm5lclNoYWRvdyIvPg0KPGZlQ29sb3JNYXRyaXggaW49IlNvdXJjZUFscGhhIiB0eXBlPSJtYXRyaXgiIHZhbHVlcz0iMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDAiIHJlc3VsdD0iaGFyZEFscGhhIi8+DQo8ZmVPZmZzZXQgZHg9Ii0xIiBkeT0iLTEiLz4NCjxmZUNvbXBvc2l0ZSBpbjI9ImhhcmRBbHBoYSIgb3BlcmF0b3I9ImFyaXRobWV0aWMiIGsyPSItMSIgazM9IjEiLz4NCjxmZUNvbG9yTWF0cml4IHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwLjE2IDAiLz4NCjxmZUJsZW5kIG1vZGU9Im5vcm1hbCIgaW4yPSJlZmZlY3QyX2lubmVyU2hhZG93IiByZXN1bHQ9ImVmZmVjdDNfaW5uZXJTaGFkb3ciLz4NCjwvZmlsdGVyPg0KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyIiB4MT0iLTAuMzk1MDAxIiB5MT0iMjMuMTI4MiIgeDI9IjIwLjEwNTgiIHkyPSIzNy44NDc0IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+DQo8c3RvcCBzdG9wLWNvbG9yPSIjRUZFRkVGIi8+DQo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IndoaXRlIi8+DQo8L2xpbmVhckdyYWRpZW50Pg0KPC9kZWZzPg0KPC9zdmc+DQo=",
1016
1023
  imageFit: 0,
1017
1024
  width: "86px",
1018
1025
  height: "86px",
@@ -1087,7 +1094,7 @@ export const dummyDefaultProps = {
1087
1094
  titleStyleProps: {
1088
1095
  // ...[Existing chat button title style props]
1089
1096
  margin: "0 0 0 10px",
1090
- color: "White"
1097
+ color: "#FFFFFF"
1091
1098
  }
1092
1099
  }
1093
1100
  },
@@ -1172,7 +1179,8 @@ export const dummyDefaultProps = {
1172
1179
  backgroundColor: "#FFFFFF",
1173
1180
  borderColor: "#F1F1F1"
1174
1181
  }
1175
- }
1182
+ },
1183
+ isCustomerVoiceSurveyCompact: undefined
1176
1184
  },
1177
1185
  proactiveChatPaneProps: {
1178
1186
  componentOverrides: {
@@ -1192,7 +1200,17 @@ export const dummyDefaultProps = {
1192
1200
  hideSubtitle: false,
1193
1201
  subtitleText: "Live chat support!",
1194
1202
  hideCloseButton: false,
1195
- closeButtonAriaLabel: "Close Button",
1203
+ closeButtonProps: {
1204
+ id: "oc-lcw-proactivechat-closebutton",
1205
+ type: "icon",
1206
+ iconName: "ChromeClose",
1207
+ ariaLabel: "Close",
1208
+ imageIconProps: undefined,
1209
+ text: "Close",
1210
+ onClick: undefined,
1211
+ className: undefined,
1212
+ hideButtonTitle: true
1213
+ },
1196
1214
  isBodyContainerHorizantal: false,
1197
1215
  hideBodyTitle: false,
1198
1216
  bodyTitleText: "Hi! Have any questions? I am here to help.",
@@ -1220,7 +1238,7 @@ export const dummyDefaultProps = {
1220
1238
  },
1221
1239
  headerContainerStyleProps: {
1222
1240
  backgroundColor: "rgb(49, 95, 162)",
1223
- backgroundImage: "assets/imgs/Proactive_banner.png",
1241
+ backgroundImage: `url(${ProactiveChatBannerBase64})`,
1224
1242
  backgroundPosition: "initial",
1225
1243
  backgroundRepeat: "no-repeat",
1226
1244
  borderTopLeftRadius: "inherit",
@@ -1248,7 +1266,7 @@ export const dummyDefaultProps = {
1248
1266
  fontWeight: "600"
1249
1267
  },
1250
1268
  closeButtonStyleProps: {
1251
- backgroundImage: "assets/imgs/closeChatButton.svg",
1269
+ backgroundImage: `url(${CloseChatButtonIconBase64})`,
1252
1270
  backgroundPosition: "center",
1253
1271
  backgroundRepeat: "no-repeat",
1254
1272
  color: "#605e5c",
@@ -1371,7 +1389,7 @@ export const dummyDefaultProps = {
1371
1389
  lineHeight: "19px"
1372
1390
  },
1373
1391
  iconStyleProps: {
1374
- backgroundImage: "assets/imgs//ChatReconnectPopupIcon.png",
1392
+ backgroundImage: `url(${ChatReconnectIconBase64})`,
1375
1393
  backgroundPosition: "center",
1376
1394
  backgroundRepeat: "no-repeat",
1377
1395
  backgroundSize: "200px",
@@ -1420,9 +1438,9 @@ export const dummyDefaultProps = {
1420
1438
  startNewChatButtonClassName: undefined
1421
1439
  }
1422
1440
  },
1423
- authClientFunction: undefined,
1424
1441
  isReconnectEnabled: undefined,
1425
- reconnectId: undefined
1442
+ reconnectId: undefined,
1443
+ redirectInSameWindow: undefined
1426
1444
  },
1427
1445
  styleProps: {
1428
1446
  generalStyles: {
@@ -1453,7 +1471,7 @@ export const dummyDefaultProps = {
1453
1471
  bubbleBackground: "#315FA2",
1454
1472
  bubbleBorderRadius: 4,
1455
1473
  bubbleBorderWidth: 0,
1456
- bubbleFromUserBackground: "White",
1474
+ bubbleFromUserBackground: "#FFFFFF",
1457
1475
  bubbleFromUserBorderRadius: 4,
1458
1476
  bubbleFromUserBorderWidth: 1,
1459
1477
  bubbleFromUserTextColor: "Black",
@@ -1461,7 +1479,7 @@ export const dummyDefaultProps = {
1461
1479
  bubbleMaxWidth: 250,
1462
1480
  bubbleMinHeight: 34,
1463
1481
  bubbleMinWidth: 20,
1464
- bubbleTextColor: "White",
1482
+ bubbleTextColor: "#FFFFFF",
1465
1483
  hideSendBox: false,
1466
1484
  hideUploadButton: true,
1467
1485
  primaryFont: "Segoe UI, Arial, sans-serif",
@@ -1470,7 +1488,7 @@ export const dummyDefaultProps = {
1470
1488
  sendBoxTextWrap: true,
1471
1489
  sendBoxHeight: 60,
1472
1490
  sendBoxMaxHeight: 96,
1473
- sendBoxBackground: "White",
1491
+ sendBoxBackground: "#FFFFFF",
1474
1492
  showAvatarInGroup: true,
1475
1493
  suggestedActionsStackedHeight: 125,
1476
1494
  suggestedActionsStackedOverflow: "scroll",
@@ -1494,7 +1512,7 @@ export const dummyDefaultProps = {
1494
1512
  internalErrorBoxClass: undefined,
1495
1513
  internalRenderErrorBox: undefined,
1496
1514
  locale: "en-US",
1497
- onTelemetry: undefined,
1515
+ onTelemetry: createWebChatTelemetry(),
1498
1516
  overrideLocalizedStrings: undefined,
1499
1517
  renderMarkdown: createMarkdown(false, false),
1500
1518
  scrollToEndButtonMiddleware: undefined,
@@ -1542,6 +1560,12 @@ export const dummyDefaultProps = {
1542
1560
  lineHeight: "16px",
1543
1561
  padding: "0px 10px 0 10px"
1544
1562
  },
1563
+ userMessageBoxStyles: {
1564
+ maxWidth: "75%"
1565
+ },
1566
+ systemMessageBoxStyles: {
1567
+ maxWidth: "75%"
1568
+ },
1545
1569
  typingIndicatorStyleProps: {
1546
1570
  marginLeft: "10px",
1547
1571
  marginBottom: "5px",
@@ -1581,7 +1605,7 @@ export const dummyDefaultProps = {
1581
1605
  fontWeight: 600,
1582
1606
  fontSize: "13px",
1583
1607
  lineHeight: "18px",
1584
- color: "white",
1608
+ color: "#FFFFFF",
1585
1609
  paddingTop: "7px",
1586
1610
  WebkitUserSelect: "none",
1587
1611
  MozUserSelect: "none",
@@ -1661,6 +1685,9 @@ export const dummyDefaultProps = {
1661
1685
  },
1662
1686
  attachmentSizeStyles: {
1663
1687
  display: "none"
1688
+ },
1689
+ receivedMessageAnchorStyles: {
1690
+ color: "white"
1664
1691
  }
1665
1692
  },
1666
1693
  localizedTexts: {
@@ -1684,6 +1711,16 @@ export const dummyDefaultProps = {
1684
1711
  MIDDLEWARE_MESSAGE_RETRY: "Retry",
1685
1712
  PRECHAT_REQUIRED_FIELD_MISSING_MESSAGE: "{0} field is required",
1686
1713
  MARKDOWN_EXTERNAL_LINK_ALT: "Opens in a new window; external."
1714
+ },
1715
+ botMagicCode: {
1716
+ disabled: false,
1717
+ fwdUrl: ""
1718
+ },
1719
+ adaptiveCardStyles: {
1720
+ background: "white",
1721
+ color: "black"
1687
1722
  }
1688
- }
1723
+ },
1724
+ telemetryConfig: undefined,
1725
+ getAuthToken: undefined
1689
1726
  };
@@ -0,0 +1,4 @@
1
+ import { disposeLoggers } from "../../../common/telemetry/TelemetryManager";
2
+ export const disposeTelemetryLoggers = () => {
3
+ disposeLoggers();
4
+ };