@microsoft/omnichannel-chat-widget 0.1.0-main.0d584e6 → 0.1.0-main.0e38a73

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 (253) hide show
  1. package/lib/cjs/common/Constants.js +0 -167
  2. package/lib/cjs/common/KeyCodes.js +0 -3
  3. package/lib/cjs/common/contextDataStore/DataStoreManager.js +0 -4
  4. package/lib/cjs/common/storage/default/defaultCacheManager.js +0 -10
  5. package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +4 -16
  6. package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +2 -10
  7. package/lib/cjs/common/telemetry/TelemetryConstants.js +12 -22
  8. package/lib/cjs/common/telemetry/TelemetryHelper.js +16 -57
  9. package/lib/cjs/common/telemetry/TelemetryManager.js +0 -31
  10. package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +0 -2
  11. package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +2 -21
  12. package/lib/cjs/common/telemetry/loggers/consoleLogger.js +0 -9
  13. package/lib/cjs/common/utils.js +18 -105
  14. package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +8 -46
  15. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +2 -24
  16. package/lib/cjs/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  17. package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +4 -28
  18. package/lib/cjs/components/dimlayer/DimLayer.js +0 -4
  19. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +4 -32
  20. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -8
  21. package/lib/cjs/components/footerstateful/FooterStateful.js +6 -29
  22. package/lib/cjs/components/footerstateful/audionotificationstateful/AudioNotificationStateful.js +0 -6
  23. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -45
  24. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -8
  25. package/lib/cjs/components/headerstateful/HeaderStateful.js +4 -25
  26. package/lib/cjs/components/livechatwidget/LiveChatWidget.js +2 -14
  27. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +2 -9
  28. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +0 -5
  29. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +4 -11
  30. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +11 -19
  31. package/lib/cjs/components/livechatwidget/common/Deferred.js +3 -10
  32. package/lib/cjs/components/livechatwidget/common/authHelper.js +4 -19
  33. package/lib/cjs/components/livechatwidget/common/createAdapter.js +2 -13
  34. package/lib/cjs/components/livechatwidget/common/createFooter.js +0 -10
  35. package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +2 -14
  36. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +16 -24
  37. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +40 -34
  38. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
  39. package/lib/cjs/components/livechatwidget/common/endChat.js +8 -33
  40. package/lib/cjs/components/livechatwidget/common/getGeneralStylesForButton.js +0 -6
  41. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +7 -16
  42. package/lib/cjs/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -8
  43. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +16 -54
  44. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +36 -66
  45. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +4 -17
  46. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +2 -11
  47. package/lib/cjs/components/livechatwidget/common/shareObservable.js +4 -8
  48. package/lib/cjs/components/livechatwidget/common/startChat.js +46 -86
  49. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +0 -8
  50. package/lib/cjs/components/livechatwidget/common/updateSessionDataForTelemetry.js +2 -11
  51. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +72 -162
  52. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +4 -17
  53. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +4 -17
  54. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -17
  55. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -23
  56. package/lib/cjs/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  57. package/lib/cjs/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +13 -0
  58. package/lib/cjs/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  59. package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  60. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +8 -36
  61. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +2 -32
  62. package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +2 -24
  63. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +19 -38
  64. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +0 -7
  65. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -6
  66. package/lib/cjs/components/webchatcontainerstateful/common/mockadapter.js +9 -26
  67. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +2 -17
  68. package/lib/cjs/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -24
  69. package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +3 -15
  70. package/lib/cjs/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -8
  71. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +0 -4
  72. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +0 -4
  73. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  74. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  75. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  76. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  77. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  78. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  79. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  80. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  81. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +0 -7
  82. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -5
  83. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -41
  84. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +8 -19
  85. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +23 -60
  86. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +7 -15
  87. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -13
  88. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -16
  89. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
  90. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -3
  91. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -3
  92. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
  93. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -9
  94. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +2 -30
  95. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +2 -12
  96. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +6 -28
  97. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +2 -11
  98. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +13 -30
  99. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +3 -9
  100. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -34
  101. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +1 -10
  102. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +1 -12
  103. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +16 -19
  104. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +1 -9
  105. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -9
  106. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +13 -34
  107. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +1 -10
  108. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +7 -11
  109. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +5 -14
  110. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -21
  111. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -12
  112. package/lib/cjs/contexts/ChatAdapterStore.js +0 -2
  113. package/lib/cjs/contexts/ChatContextStore.js +0 -2
  114. package/lib/cjs/contexts/ChatSDKStore.js +0 -2
  115. package/lib/cjs/contexts/common/ConversationState.js +0 -1
  116. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +0 -1
  117. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +0 -9
  118. package/lib/cjs/contexts/createReducer.js +133 -104
  119. package/lib/cjs/controller/componentController.js +1 -30
  120. package/lib/cjs/hooks/useChatAdapterStore.js +0 -6
  121. package/lib/cjs/hooks/useChatContextStore.js +0 -6
  122. package/lib/cjs/hooks/useChatSDKStore.js +0 -6
  123. package/lib/cjs/index.js +0 -5
  124. package/lib/cjs/plugins/newMessageEventHandler.js +15 -36
  125. package/lib/esm/common/Constants.js +0 -155
  126. package/lib/esm/common/KeyCodes.js +0 -2
  127. package/lib/esm/common/contextDataStore/DataStoreManager.js +0 -2
  128. package/lib/esm/common/storage/default/defaultCacheManager.js +0 -3
  129. package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +4 -11
  130. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +2 -3
  131. package/lib/esm/common/telemetry/TelemetryConstants.js +16 -19
  132. package/lib/esm/common/telemetry/TelemetryHelper.js +16 -45
  133. package/lib/esm/common/telemetry/TelemetryManager.js +0 -18
  134. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +2 -14
  135. package/lib/esm/common/telemetry/loggers/consoleLogger.js +0 -5
  136. package/lib/esm/common/utils.js +18 -53
  137. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +8 -17
  138. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +2 -7
  139. package/lib/esm/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  140. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +6 -9
  141. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +4 -11
  142. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
  143. package/lib/esm/components/footerstateful/FooterStateful.js +8 -10
  144. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -35
  145. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -6
  146. package/lib/esm/components/headerstateful/HeaderStateful.js +4 -10
  147. package/lib/esm/components/livechatwidget/LiveChatWidget.js +2 -2
  148. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +2 -6
  149. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +0 -3
  150. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +4 -8
  151. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +11 -15
  152. package/lib/esm/components/livechatwidget/common/Deferred.js +3 -8
  153. package/lib/esm/components/livechatwidget/common/authHelper.js +4 -12
  154. package/lib/esm/components/livechatwidget/common/createAdapter.js +4 -6
  155. package/lib/esm/components/livechatwidget/common/createFooter.js +0 -1
  156. package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +2 -5
  157. package/lib/esm/components/livechatwidget/common/createMarkdown.js +18 -18
  158. package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +42 -21
  159. package/lib/esm/components/livechatwidget/common/endChat.js +10 -18
  160. package/lib/esm/components/livechatwidget/common/getGeneralStylesForButton.js +0 -2
  161. package/lib/esm/components/livechatwidget/common/initCallingSdk.js +9 -11
  162. package/lib/esm/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -5
  163. package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +18 -19
  164. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +37 -51
  165. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +4 -9
  166. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +4 -3
  167. package/lib/esm/components/livechatwidget/common/shareObservable.js +4 -7
  168. package/lib/esm/components/livechatwidget/common/startChat.js +48 -59
  169. package/lib/esm/components/livechatwidget/common/updateSessionDataForTelemetry.js +4 -2
  170. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +73 -95
  171. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +4 -5
  172. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +4 -5
  173. package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -5
  174. package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -11
  175. package/lib/esm/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  176. package/lib/esm/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +6 -0
  177. package/lib/esm/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  178. package/lib/esm/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  179. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +10 -20
  180. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +4 -8
  181. package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +2 -6
  182. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +17 -11
  183. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
  184. package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +9 -18
  185. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +2 -13
  186. package/lib/esm/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -16
  187. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +3 -5
  188. package/lib/esm/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -6
  189. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +0 -2
  190. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +0 -2
  191. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  192. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  193. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  194. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  195. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  196. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  197. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  198. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  199. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +2 -5
  200. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -4
  201. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -26
  202. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +10 -11
  203. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +23 -38
  204. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +9 -8
  205. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -9
  206. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -14
  207. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +3 -0
  208. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -1
  209. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -1
  210. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +3 -0
  211. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -7
  212. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +4 -28
  213. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +3 -3
  214. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +7 -14
  215. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +3 -3
  216. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +15 -19
  217. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +5 -8
  218. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -29
  219. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +3 -7
  220. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +3 -8
  221. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +16 -14
  222. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +3 -7
  223. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -7
  224. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +15 -27
  225. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +3 -5
  226. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +9 -9
  227. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +7 -9
  228. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -13
  229. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -5
  230. package/lib/esm/contexts/ChatAdapterStore.js +2 -1
  231. package/lib/esm/contexts/ChatContextStore.js +2 -1
  232. package/lib/esm/contexts/ChatSDKStore.js +2 -1
  233. package/lib/esm/contexts/common/ConversationState.js +0 -1
  234. package/lib/esm/contexts/common/LiveChatWidgetActionType.js +0 -1
  235. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +0 -3
  236. package/lib/esm/contexts/createReducer.js +133 -101
  237. package/lib/esm/controller/componentController.js +2 -1
  238. package/lib/esm/hooks/useChatAdapterStore.js +0 -4
  239. package/lib/esm/hooks/useChatContextStore.js +0 -4
  240. package/lib/esm/hooks/useChatSDKStore.js +0 -4
  241. package/lib/esm/plugins/newMessageEventHandler.js +15 -26
  242. package/lib/types/common/telemetry/TelemetryConstants.d.ts +7 -2
  243. package/lib/types/common/telemetry/definitions/Contracts.d.ts +2 -4
  244. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +6 -5
  245. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +2 -2
  246. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
  247. package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -0
  248. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
  249. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +0 -1
  250. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +2 -0
  251. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  252. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  253. package/package.json +3 -3
@@ -8,11 +8,11 @@ import { PreChatSurveyPane } from "@microsoft/omnichannel-chat-components";
8
8
  import { TelemetryHelper } from "../../common/telemetry/TelemetryHelper";
9
9
  import { defaultGeneralPreChatSurveyPaneStyleProps } from "./common/defaultStyles/defaultGeneralPreChatSurveyPaneStyleProps";
10
10
  import { defaultPreChatSurveyLocalizedTexts } from "./common/defaultProps/defaultPreChatSurveyLocalizedTexts";
11
- import useChatContextStore from "../../hooks/useChatContextStore"; // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
+ import useChatContextStore from "../../hooks/useChatContextStore";
12
12
 
13
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
14
  export const PreChatSurveyPaneStateful = props => {
14
15
  var _surveyProps$stylePro, _props$surveyProps, _props$surveyProps$co;
15
-
16
16
  const [state, dispatch] = useChatContextStore();
17
17
  const {
18
18
  surveyProps,
@@ -20,8 +20,9 @@ export const PreChatSurveyPaneStateful = props => {
20
20
  } = props;
21
21
  const generalStyleProps = Object.assign({}, defaultGeneralPreChatSurveyPaneStyleProps, surveyProps === null || surveyProps === void 0 ? void 0 : (_surveyProps$stylePro = surveyProps.styleProps) === null || _surveyProps$stylePro === void 0 ? void 0 : _surveyProps$stylePro.generalStyleProps, {
22
22
  display: state.appStates.isMinimized ? "none" : ""
23
- }); // eslint-disable-next-line @typescript-eslint/no-explicit-any
23
+ });
24
24
 
25
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
25
26
  const setPreChatResponseEmail = preChatResponse => {
26
27
  if (preChatResponse) {
27
28
  for (let index = 0; index < preChatResponse.length; index++) {
@@ -34,7 +35,6 @@ export const PreChatSurveyPaneStateful = props => {
34
35
  }
35
36
  }
36
37
  };
37
-
38
38
  const getAdaptiveCardPayload = (payload, requiredFieldMissingMessage) => {
39
39
  try {
40
40
  return parseAdaptiveCardPayload(payload, requiredFieldMissingMessage);
@@ -48,7 +48,6 @@ export const PreChatSurveyPaneStateful = props => {
48
48
  });
49
49
  }
50
50
  };
51
-
52
51
  const requiredFieldMissingMessage = ((_props$surveyProps = props.surveyProps) === null || _props$surveyProps === void 0 ? void 0 : (_props$surveyProps$co = _props$surveyProps.controlProps) === null || _props$surveyProps$co === void 0 ? void 0 : _props$surveyProps$co.requiredFieldMissingMessage) ?? defaultPreChatSurveyLocalizedTexts.PRECHAT_REQUIRED_FIELD_MISSING_MESSAGE;
53
52
  const controlProps = {
54
53
  id: "oc-lcw-prechatsurvey-pane",
@@ -64,16 +63,14 @@ export const PreChatSurveyPaneStateful = props => {
64
63
  type: LiveChatWidgetActionType.SET_CONVERSATION_STATE,
65
64
  payload: ConversationState.Loading
66
65
  });
67
-
68
66
  try {
69
67
  var _state$domainStates, _state$domainStates$t, _state$domainStates$t2, _persistedState$domai, _persistedState$appSt;
70
-
71
68
  const persistedState = getStateFromCache(((_state$domainStates = state.domainStates) === null || _state$domainStates === void 0 ? void 0 : (_state$domainStates$t = _state$domainStates.telemetryInternalData) === null || _state$domainStates$t === void 0 ? void 0 : _state$domainStates$t.orgId) ?? "", ((_state$domainStates$t2 = state.domainStates.telemetryInternalData) === null || _state$domainStates$t2 === void 0 ? void 0 : _state$domainStates$t2.widgetId) ?? "", state.domainStates.widgetInstanceId ?? "");
72
- let optionalParams = {}; //Connect to Active chats and chat is not popout
69
+ let optionalParams = {};
73
70
 
71
+ //Connect to Active chats and chat is not popout
74
72
  if (persistedState && !isUndefinedOrEmpty(persistedState === null || persistedState === void 0 ? void 0 : (_persistedState$domai = persistedState.domainStates) === null || _persistedState$domai === void 0 ? void 0 : _persistedState$domai.liveChatContext) && (persistedState === null || persistedState === void 0 ? void 0 : (_persistedState$appSt = persistedState.appStates) === null || _persistedState$appSt === void 0 ? void 0 : _persistedState$appSt.conversationState) === ConversationState.Active && !state.appStates.skipChatButtonRendering) {
75
73
  var _persistedState$domai2;
76
-
77
74
  optionalParams = {
78
75
  liveChatContext: persistedState === null || persistedState === void 0 ? void 0 : (_persistedState$domai2 = persistedState.domainStates) === null || _persistedState$domai2 === void 0 ? void 0 : _persistedState$domai2.liveChatContext
79
76
  };
@@ -98,41 +95,34 @@ export const PreChatSurveyPaneStateful = props => {
98
95
  },
99
96
  ...(surveyProps === null || surveyProps === void 0 ? void 0 : surveyProps.controlProps)
100
97
  };
101
- const styleProps = { ...(surveyProps === null || surveyProps === void 0 ? void 0 : surveyProps.styleProps),
98
+ const styleProps = {
99
+ ...(surveyProps === null || surveyProps === void 0 ? void 0 : surveyProps.styleProps),
102
100
  generalStyleProps: generalStyleProps
103
101
  };
104
102
  useEffect(() => {
105
103
  // Set Aria-Label Attribute for Inputs
106
104
  const adaptiveCardElements = document.getElementsByClassName(HtmlAttributeNames.adaptiveCardClassName);
107
-
108
105
  if (adaptiveCardElements && adaptiveCardElements.length > 0) {
109
106
  const children = adaptiveCardElements[0].children;
110
107
  let value = "";
111
-
112
108
  for (let index = 0; index < children.length; index++) {
113
109
  const current = children[index];
114
-
115
110
  if (current && current.className == HtmlAttributeNames.adaptiveCardTextBlockClassName) {
116
111
  value = current.innerHTML;
117
112
  }
118
-
119
113
  if (current && current.tagName.toLowerCase() == HtmlAttributeNames.div && current.childElementCount > 0) {
120
114
  const input = current.children[0].children;
121
-
122
115
  if (input && input.length > 0 && input[0].className != HtmlAttributeNames.adaptiveCardToggleInputClassName) {
123
116
  input[0].setAttribute(HtmlAttributeNames.ariaLabel, value);
124
117
  }
125
118
  }
126
119
  }
127
- } // Move focus to the first button
128
-
129
-
120
+ }
121
+ // Move focus to the first button
130
122
  const firstElement = findAllFocusableElement(`#${controlProps.id}`);
131
-
132
123
  if (firstElement && firstElement[0]) {
133
124
  firstElement[0].focus();
134
125
  }
135
-
136
126
  TelemetryHelper.logLoadingEvent(LogLevel.INFO, {
137
127
  Event: TelemetryEvent.PrechatSurveyLoaded
138
128
  });
@@ -8,19 +8,18 @@ import { LiveChatWidgetActionType } from "../../contexts/common/LiveChatWidgetAc
8
8
  import { ProactiveChatPane } from "@microsoft/omnichannel-chat-components";
9
9
  import { TelemetryHelper } from "../../common/telemetry/TelemetryHelper";
10
10
  import { TelemetryTimers } from "../../common/telemetry/TelemetryManager";
11
- import useChatContextStore from "../../hooks/useChatContextStore"; // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
+ import useChatContextStore from "../../hooks/useChatContextStore";
12
12
 
13
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
14
  export const ProactiveChatPaneStateful = props => {
14
15
  var _proactiveChatProps$c;
15
-
16
16
  const [state, dispatch] = useChatContextStore();
17
17
  const {
18
18
  proactiveChatProps,
19
19
  startChat
20
- } = props; // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
-
20
+ } = props;
21
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
22
22
  const [timeoutRemoved, setTimeoutRemoved] = useState(false);
23
-
24
23
  const handleProactiveChatInviteTimeout = () => {
25
24
  if (!timeoutRemoved) {
26
25
  setTimeoutRemoved(true);
@@ -43,19 +42,16 @@ export const ProactiveChatPaneStateful = props => {
43
42
  });
44
43
  }
45
44
  };
46
-
47
45
  const controlProps = {
48
46
  id: "oc-lcw-proactivechat",
49
47
  dir: state.domainStates.globalDir,
50
48
  onStart: async () => {
51
49
  var _state$domainStates$l, _state$domainStates$l2;
52
-
53
50
  setTimeoutRemoved(true);
54
51
  TelemetryHelper.logActionEvent(LogLevel.INFO, {
55
52
  Event: TelemetryEvent.ProactiveChatAccepted,
56
53
  Description: "Proactive chat accepted."
57
54
  });
58
-
59
55
  if (state.appStates.proactiveChatStates.proactiveChatInNewWindow) {
60
56
  // TODO: BroadcastService: replace with the sdk broadcast service, when in place
61
57
  const startPopoutChatEvent = {
@@ -8,20 +8,18 @@ import { setFocusOnElement } from "../../common/utils";
8
8
  import useChatContextStore from "../../hooks/useChatContextStore";
9
9
  import useChatSDKStore from "../../hooks/useChatSDKStore";
10
10
  export const ReconnectChatPaneStateful = props => {
11
- const [state, dispatch] = useChatContextStore(); // eslint-disable-next-line @typescript-eslint/no-explicit-any
12
-
11
+ const [state, dispatch] = useChatContextStore();
12
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
13
  const chatSDK = useChatSDKStore();
14
14
  const {
15
15
  reconnectChatProps,
16
16
  initStartChat
17
17
  } = props;
18
-
19
18
  const startChat = async continueChat => {
20
19
  dispatch({
21
20
  type: LiveChatWidgetActionType.SET_CONVERSATION_STATE,
22
21
  payload: ConversationState.Loading
23
22
  });
24
-
25
23
  if (continueChat && state.appStates.reconnectId) {
26
24
  const optionalParams = {
27
25
  reconnectId: state.appStates.reconnectId
@@ -30,7 +28,6 @@ export const ReconnectChatPaneStateful = props => {
30
28
  } else {
31
29
  const parseToJson = false;
32
30
  const preChatSurveyResponse = await chatSDK.getPreChatSurvey(parseToJson);
33
-
34
31
  if (preChatSurveyResponse) {
35
32
  dispatch({
36
33
  type: LiveChatWidgetActionType.SET_PRE_CHAT_SURVEY_RESPONSE,
@@ -49,7 +46,6 @@ export const ReconnectChatPaneStateful = props => {
49
46
  }
50
47
  }
51
48
  };
52
-
53
49
  const controlProps = {
54
50
  id: "lcw-components-reconnect-chat-pane",
55
51
  dir: state.domainStates.globalDir,
@@ -2,6 +2,7 @@ import { Stack } from "@fluentui/react";
2
2
  import { LogLevel, TelemetryEvent } from "../../common/telemetry/TelemetryConstants";
3
3
  import React, { useEffect } from "react";
4
4
  import { Components } from "botframework-webchat";
5
+ import { BroadcastChannel } from "broadcast-channel";
5
6
  import { LiveChatWidgetActionType } from "../../contexts/common/LiveChatWidgetActionType";
6
7
  import { TelemetryHelper } from "../../common/telemetry/TelemetryHelper";
7
8
  import { defaultMiddlewareLocalizedTexts } from "./common/defaultProps/defaultMiddlewareLocalizedTexts";
@@ -14,8 +15,9 @@ import { Constants } from "../../common/Constants";
14
15
  import { BotMagicCodeStore } from "./webchatcontroller/BotMagicCodeStore";
15
16
  import { defaultAdaptiveCardStyles } from "./common/defaultStyles/defaultAdaptiveCardStyles";
16
17
  import { defaultReceivedMessageAnchorStyles } from "./webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles";
18
+ import { defaultUserMessageBoxStyles } from "./webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles";
19
+ import { defaultSystemMessageBoxStyles } from "./webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles";
17
20
  const broadcastChannelMessageEvent = "message";
18
-
19
21
  const postActivity = activity => {
20
22
  // eslint-disable-line @typescript-eslint/no-explicit-any
21
23
  return {
@@ -34,17 +36,14 @@ const postActivity = activity => {
34
36
  }
35
37
  };
36
38
  };
37
-
38
39
  const createMagicCodeSuccessResponse = signin => {
39
40
  return {
40
41
  signin,
41
42
  result: "Success"
42
43
  };
43
44
  };
44
-
45
45
  export const WebChatContainerStateful = props => {
46
- var _props$adaptiveCardSt, _props$adaptiveCardSt2, _props$renderingMiddl, _props$renderingMiddl2, _props$renderingMiddl3, _props$renderingMiddl4;
47
-
46
+ var _props$adaptiveCardSt, _props$renderingMiddl, _props$renderingMiddl2, _props$renderingMiddl3, _props$renderingMiddl4, _props$adaptiveCardSt2, _props$renderingMiddl5, _props$renderingMiddl6, _props$renderingMiddl7, _props$renderingMiddl8;
48
47
  const {
49
48
  BasicWebChat
50
49
  } = Components;
@@ -55,9 +54,10 @@ export const WebChatContainerStateful = props => {
55
54
  root: Object.assign({}, defaultWebChatContainerStatefulProps.containerStyles, props === null || props === void 0 ? void 0 : props.containerStyles, {
56
55
  display: state.appStates.isMinimized ? "none" : ""
57
56
  }) // Use this instead of removing WebChat from the picture so that the activity observer inside the adapter is not invoked
58
-
59
57
  };
60
- const localizedTexts = { ...defaultMiddlewareLocalizedTexts,
58
+
59
+ const localizedTexts = {
60
+ ...defaultMiddlewareLocalizedTexts,
61
61
  ...(props === null || props === void 0 ? void 0 : props.localizedTexts)
62
62
  };
63
63
  useEffect(() => {
@@ -80,7 +80,6 @@ export const WebChatContainerStateful = props => {
80
80
  const {
81
81
  data
82
82
  } = event;
83
-
84
83
  if (BotMagicCodeStore.botOAuthSignInId === data.signin) {
85
84
  const {
86
85
  signin,
@@ -109,7 +108,6 @@ export const WebChatContainerStateful = props => {
109
108
  });
110
109
  }
111
110
  };
112
-
113
111
  magicCodeBroadcastChannel.addEventListener(broadcastChannelMessageEvent, eventListener);
114
112
  }, []);
115
113
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("style", null, `
@@ -118,13 +116,21 @@ export const WebChatContainerStateful = props => {
118
116
  background: ${(props === null || props === void 0 ? void 0 : (_props$adaptiveCardSt = props.adaptiveCardStyles) === null || _props$adaptiveCardSt === void 0 ? void 0 : _props$adaptiveCardSt.background) ?? defaultAdaptiveCardStyles.background};
119
117
  }
120
118
 
119
+ .webchat__stacked-layout__content div.webchat__stacked-layout__message-row div.webchat__bubble--from-user {
120
+ max-width: ${(props === null || props === void 0 ? void 0 : (_props$renderingMiddl = props.renderingMiddlewareProps) === null || _props$renderingMiddl === void 0 ? void 0 : (_props$renderingMiddl2 = _props$renderingMiddl.userMessageBoxStyles) === null || _props$renderingMiddl2 === void 0 ? void 0 : _props$renderingMiddl2.maxWidth) ?? (defaultUserMessageBoxStyles === null || defaultUserMessageBoxStyles === void 0 ? void 0 : defaultUserMessageBoxStyles.maxWidth)}
121
+ }
122
+
123
+ .webchat__stacked-layout--show-avatar div.webchat__stacked-layout__content div.webchat__stacked-layout__message-row div.webchat__stacked-layout__message {
124
+ max-width: ${(props === null || props === void 0 ? void 0 : (_props$renderingMiddl3 = props.renderingMiddlewareProps) === null || _props$renderingMiddl3 === void 0 ? void 0 : (_props$renderingMiddl4 = _props$renderingMiddl3.systemMessageBoxStyles) === null || _props$renderingMiddl4 === void 0 ? void 0 : _props$renderingMiddl4.maxWidth) ?? (defaultSystemMessageBoxStyles === null || defaultSystemMessageBoxStyles === void 0 ? void 0 : defaultSystemMessageBoxStyles.maxWidth)}
125
+ }
126
+
121
127
  div[class="ac-textBlock"]>p{color:${(props === null || props === void 0 ? void 0 : (_props$adaptiveCardSt2 = props.adaptiveCardStyles) === null || _props$adaptiveCardSt2 === void 0 ? void 0 : _props$adaptiveCardSt2.color) ?? defaultAdaptiveCardStyles.color};}
122
128
 
123
129
  .ms_lcw_webchat_received_message img.webchat__markdown__external-link-icon {
124
130
  background-image : url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIzIDMgMTggMTgiICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik03LjI1MDEgNC41MDAxN0gxMC43NDk1QzExLjE2MzcgNC41MDAxNyAxMS40OTk1IDQuODM1OTYgMTEuNDk5NSA1LjI1MDE3QzExLjQ5OTUgNS42Mjk4NiAxMS4yMTczIDUuOTQzNjYgMTAuODUxMyA1Ljk5MzMyTDEwLjc0OTUgNi4wMDAxN0g3LjI0OTc0QzYuMDcwNzkgNS45OTk2MSA1LjEwMzQ5IDYuOTA2NTYgNS4wMDc4NiA4LjA2MTEyTDUuMDAwMjggOC4yMjAwM0w1LjAwMzEyIDE2Ljc1MDdDNS4wMDM0MyAxNy45NDE1IDUuOTI4ODUgMTguOTE2MSA3LjA5OTY2IDE4Ljk5NDlMNy4yNTM3MSAxOS4wMDAxTDE1Ljc1MTggMTguOTg4NEMxNi45NDE1IDE4Ljk4NjggMTcuOTE0NSAxOC4wNjIgMTcuOTkzNSAxNi44OTIzTDE3Ljk5ODcgMTYuNzM4NFYxMy4yMzIxQzE3Ljk5ODcgMTIuODE3OSAxOC4zMzQ1IDEyLjQ4MjEgMTguNzQ4NyAxMi40ODIxQzE5LjEyODQgMTIuNDgyMSAxOS40NDIyIDEyLjc2NDMgMTkuNDkxOCAxMy4xMzAzTDE5LjQ5ODcgMTMuMjMyMVYxNi43Mzg0QzE5LjQ5ODcgMTguNzQwNyAxNy45MjkzIDIwLjM3NjkgMTUuOTUyOCAyMC40ODI5TDE1Ljc1MzggMjAuNDg4NEw3LjI1ODI3IDIwLjUwMDFMNy4wNTQ5NSAyMC40OTQ5QzUuMTQyMzkgMjAuMzk1NCAzLjYwODk1IDE4Ljg2MjcgMy41MDgzNyAxNi45NTAyTDMuNTAzMTIgMTYuNzUxMUwzLjUwMDg5IDguMjUyN0wzLjUwNTI5IDguMDUwMkMzLjYwNTM5IDYuMTM3NDkgNS4xMzg2NyA0LjYwNDQ5IDcuMDUwOTYgNC41MDUyN0w3LjI1MDEgNC41MDAxN0gxMC43NDk1SDcuMjUwMVpNMTMuNzQ4MSAzLjAwMTQ2TDIwLjMwMTggMy4wMDE5N0wyMC40MDE0IDMuMDE1NzVMMjAuNTAyMiAzLjA0MzkzTDIwLjU1OSAzLjA2ODAzQzIwLjYxMjIgMy4wOTEyMiAyMC42NjM0IDMuMTIxNjMgMjAuNzExMSAzLjE1ODg1TDIwLjc4MDQgMy4yMjE1NkwyMC44NjQxIDMuMzIwMTRMMjAuOTE4MyAzLjQxMDI1TDIwLjk1NyAzLjUwMDU3TDIwLjk3NjIgMy41NjQ3NkwyMC45ODk4IDMuNjI4NjJMMjAuOTk5MiAzLjcyMjgyTDIwLjk5OTcgMTAuMjU1NEMyMC45OTk3IDEwLjY2OTYgMjAuNjYzOSAxMS4wMDU0IDIwLjI0OTcgMTEuMDA1NEMxOS44NyAxMS4wMDU0IDE5LjU1NjIgMTAuNzIzMiAxOS41MDY1IDEwLjM1NzFMMTkuNDk5NyAxMC4yNTU0TDE5LjQ5ODkgNS41NjE0N0wxMi4yNzk3IDEyLjc4NDdDMTIuMDEzNCAxMy4wNTEgMTEuNTk2OCAxMy4wNzUzIDExLjMwMzEgMTIuODU3NUwxMS4yMTkgMTIuNzg0OUMxMC45NTI3IDEyLjUxODcgMTAuOTI4NCAxMi4xMDIxIDExLjE0NjIgMTEuODA4NEwxMS4yMTg4IDExLjcyNDNMMTguNDM2OSA0LjUwMTQ2SDEzLjc0ODFDMTMuMzY4NCA0LjUwMTQ2IDEzLjA1NDYgNC4yMTkzMSAxMy4wMDUgMy44NTMyNEwxMi45OTgxIDMuNzUxNDZDMTIuOTk4MSAzLjM3MTc3IDEzLjI4MDMgMy4wNTc5NyAxMy42NDY0IDMuMDA4MzFMMTMuNzQ4MSAzLjAwMTQ2WiIgZmlsbD0iI0ZGRkZGRiIgLz48L3N2Zz4) !important;
125
131
  height: '.75em';
126
132
  marginLeft: '.25em';
127
- filter:${(props === null || props === void 0 ? void 0 : (_props$renderingMiddl = props.renderingMiddlewareProps) === null || _props$renderingMiddl === void 0 ? void 0 : (_props$renderingMiddl2 = _props$renderingMiddl.receivedMessageAnchorStyles) === null || _props$renderingMiddl2 === void 0 ? void 0 : _props$renderingMiddl2.filter) ?? "none"};
133
+ filter:${(props === null || props === void 0 ? void 0 : (_props$renderingMiddl5 = props.renderingMiddlewareProps) === null || _props$renderingMiddl5 === void 0 ? void 0 : (_props$renderingMiddl6 = _props$renderingMiddl5.receivedMessageAnchorStyles) === null || _props$renderingMiddl6 === void 0 ? void 0 : _props$renderingMiddl6.filter) ?? "none"};
128
134
  }
129
135
  pre {
130
136
  white-space: pre-wrap;
@@ -137,7 +143,7 @@ export const WebChatContainerStateful = props => {
137
143
  .ms_lcw_webchat_received_message a:visited,
138
144
  .ms_lcw_webchat_received_message a:hover,
139
145
  .ms_lcw_webchat_received_message a:active {
140
- color: ${(props === null || props === void 0 ? void 0 : (_props$renderingMiddl3 = props.renderingMiddlewareProps) === null || _props$renderingMiddl3 === void 0 ? void 0 : (_props$renderingMiddl4 = _props$renderingMiddl3.receivedMessageAnchorStyles) === null || _props$renderingMiddl4 === void 0 ? void 0 : _props$renderingMiddl4.color) ?? (defaultReceivedMessageAnchorStyles === null || defaultReceivedMessageAnchorStyles === void 0 ? void 0 : defaultReceivedMessageAnchorStyles.color)};
146
+ color: ${(props === null || props === void 0 ? void 0 : (_props$renderingMiddl7 = props.renderingMiddlewareProps) === null || _props$renderingMiddl7 === void 0 ? void 0 : (_props$renderingMiddl8 = _props$renderingMiddl7.receivedMessageAnchorStyles) === null || _props$renderingMiddl8 === void 0 ? void 0 : _props$renderingMiddl8.color) ?? (defaultReceivedMessageAnchorStyles === null || defaultReceivedMessageAnchorStyles === void 0 ? void 0 : defaultReceivedMessageAnchorStyles.color)};
141
147
  } `), /*#__PURE__*/React.createElement(Stack, {
142
148
  styles: containerStyles
143
149
  }, /*#__PURE__*/React.createElement(BasicWebChat, null)));
@@ -7,6 +7,6 @@ export const defaultWebChatStatefulProps = {
7
7
  // avatarMiddleware: avatarMiddleware, - this is implemented elsewhere and can be customized
8
8
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
9
  groupActivitiesMiddleware: groupActivitiesMiddleware,
10
- typingIndicatorMiddleware: typingIndicatorMiddleware // attachmentMiddleware: createAttachmentMiddleware(false), - this is implemented elsewhere and can be customized
11
-
10
+ typingIndicatorMiddleware: typingIndicatorMiddleware
11
+ // attachmentMiddleware: createAttachmentMiddleware(false), - this is implemented elsewhere and can be customized
12
12
  };
@@ -1,5 +1,4 @@
1
1
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
-
3
2
  import "rxjs/add/operator/share";
4
3
  import "rxjs/add/observable/of";
5
4
  import { ConnectionStatus } from "botframework-directlinejs";
@@ -9,16 +8,12 @@ import { uuidv4 } from "@microsoft/omnichannel-chat-sdk";
9
8
  export default class MockAdapter {
10
9
  constructor() {
11
10
  _defineProperty(this, "activityObserver", void 0);
12
-
13
11
  _defineProperty(this, "activity$", void 0);
14
-
15
12
  _defineProperty(this, "connectionStatus$", new BehaviorSubject(ConnectionStatus.Uninitialized));
16
-
17
13
  this.activity$ = new Observable(observer => {
18
14
  this.activityObserver = observer;
19
15
  Promise.resolve().then(async () => {
20
16
  this.connectionStatus$.next(ConnectionStatus.Online);
21
-
22
17
  try {
23
18
  if (this.connectionStatus$) {
24
19
  this.connectionStatus$.next(ConnectionStatus.Online);
@@ -30,22 +25,20 @@ export default class MockAdapter {
30
25
  });
31
26
  }).share();
32
27
  }
33
-
34
28
  postActivity(activity) {
35
29
  if (activity) {
36
30
  var _activity$text;
37
-
38
31
  let modActivity;
39
32
  let typingActivity;
40
33
  const userId = "userId",
41
- botId = "botId";
42
-
34
+ botId = "botId";
43
35
  if ((_activity$text = activity.text) !== null && _activity$text !== void 0 && _activity$text.startsWith(":")) {
44
36
  var _this$activityObserve, _this$activityObserve2;
45
-
46
- modActivity = { ...activity,
37
+ modActivity = {
38
+ ...activity,
47
39
  id: uuidv4(),
48
- from: { ...activity.from,
40
+ from: {
41
+ ...activity.from,
49
42
  id: botId,
50
43
  name: "Bot",
51
44
  role: "bot"
@@ -62,14 +55,14 @@ export default class MockAdapter {
62
55
  type: "typing"
63
56
  };
64
57
  (_this$activityObserve = this.activityObserver) === null || _this$activityObserve === void 0 ? void 0 : _this$activityObserve.next(modActivity); // mock echo message
65
-
66
58
  (_this$activityObserve2 = this.activityObserver) === null || _this$activityObserve2 === void 0 ? void 0 : _this$activityObserve2.next(typingActivity); // mock typing
67
59
  } else {
68
60
  var _this$activityObserve3;
69
-
70
- modActivity = { ...activity,
61
+ modActivity = {
62
+ ...activity,
71
63
  id: uuidv4(),
72
- from: { ...activity.from,
64
+ from: {
65
+ ...activity.from,
73
66
  id: userId,
74
67
  name: "User",
75
68
  role: "user"
@@ -81,9 +74,7 @@ export default class MockAdapter {
81
74
 
82
75
  return Observable.of(activity.id || "");
83
76
  }
84
-
85
77
  end() {
86
78
  return;
87
79
  }
88
-
89
80
  }
@@ -1,53 +1,42 @@
1
1
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
-
3
2
  import MockAdapter from "./mockadapter";
4
3
  export class MockChatSDK {
5
4
  constructor() {
6
5
  _defineProperty(this, "sleep", ms => new Promise(r => setTimeout(r, ms)));
7
-
8
6
  _defineProperty(this, "isMockModeOn", true);
9
7
  }
10
-
11
8
  async startChat() {
12
9
  await this.sleep(1000);
13
10
  }
14
-
15
11
  endChat() {
16
12
  return null;
17
13
  }
18
-
19
14
  getChatToken() {
20
15
  return null;
21
16
  }
22
-
23
17
  createChatAdapter() {
24
18
  return new MockAdapter();
25
- } // eslint-disable-next-line @typescript-eslint/no-unused-vars
26
-
19
+ }
27
20
 
21
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
28
22
  getPreChatSurvey(parseToJson) {
29
23
  return "";
30
24
  }
31
-
32
25
  getConversationDetails() {
33
26
  return {};
34
27
  }
35
-
36
28
  getCurrentLiveChatContext() {
37
29
  return {
38
30
  chatToken: {},
39
31
  requestId: ""
40
32
  };
41
33
  }
42
-
43
34
  onNewMessage() {
44
35
  return null;
45
36
  }
46
-
47
37
  getChatReconnectContext() {
48
38
  return {
49
39
  reconnectId: "123"
50
40
  };
51
41
  }
52
-
53
42
  }
@@ -6,65 +6,51 @@ export const getUserAgent = () => {
6
6
  if (!userAgent) {
7
7
  userAgent = window.navigator.userAgent;
8
8
  }
9
-
10
9
  return userAgent;
11
10
  };
12
-
13
11
  const userAgentContainsString = searchString => {
14
12
  const userAgent = getUserAgent();
15
13
  return userAgent.indexOf(searchString) > -1;
16
14
  };
17
-
18
15
  const isEdge = () => {
19
16
  return userAgentContainsString(BrowserVendor.EDGE) || userAgentContainsString(BrowserVendor.EDGE_CHROMIUM);
20
17
  };
21
-
22
18
  export const isChromiumEdge = () => {
23
19
  return userAgentContainsString(BrowserVendor.EDGE_CHROMIUM) && !userAgentContainsString(BrowserVendor.EDGE);
24
20
  };
25
-
26
21
  const isOpera = () => {
27
22
  return userAgentContainsString("OPR/");
28
23
  };
29
-
30
24
  export const getBrowserName = () => {
31
25
  if (isOpera()) {
32
26
  return BrowserVendor.OPERA;
33
27
  }
34
-
35
28
  if (isEdge()) {
36
29
  return BrowserVendor.EDGE;
37
30
  }
38
-
39
31
  if (userAgentContainsString(BrowserVendor.CHROME)) {
40
32
  return BrowserVendor.CHROME;
41
33
  }
42
-
43
34
  if (userAgentContainsString(BrowserVendor.FIREFOX)) {
44
35
  return BrowserVendor.FIREFOX;
45
36
  }
46
-
47
37
  if (userAgentContainsString(BrowserVendor.SAFARI)) {
48
38
  return BrowserVendor.SAFARI;
49
39
  }
50
-
51
40
  return BrowserVendor.UNKNOWN;
52
41
  };
53
42
  export const getBrowserVersion = () => {
54
43
  let browserString = getBrowserName();
55
44
  const browserVersion = UNKNOWN_VERSION;
56
45
  let matches;
57
-
58
46
  if (browserString === BrowserVendor.SAFARI) {
59
47
  browserString = "Version";
60
- } // eslint-disable-next-line prefer-const
61
-
48
+ }
62
49
 
50
+ // eslint-disable-next-line prefer-const
63
51
  matches = getUserAgent().match(new RegExp(browserString + "/" + REGEX_VERSION));
64
-
65
52
  if (matches) {
66
53
  return matches[1];
67
54
  }
68
-
69
55
  return browserVersion;
70
56
  };
@@ -52,30 +52,28 @@ const FileAttachmentIconMap = {
52
52
  "zipx": ArchiveIcon,
53
53
  "7z": ArchiveIcon
54
54
  };
55
+
55
56
  /**
56
57
  * Get file attachment icon image depending on extension.
57
58
  *
58
59
  * @param extension File extension
59
60
  */
60
-
61
61
  export const getFileAttachmentIconData = extension => {
62
62
  const key = extension.startsWith(".") ? extension.slice(1) : extension || "";
63
63
  const icon = FileAttachmentIconMap[key.toLowerCase()] || BlankIcon;
64
64
  return icon;
65
- }; // Check if browser supports inline media playing for current media format
65
+ };
66
66
 
67
+ // Check if browser supports inline media playing for current media format
67
68
  export const isInlineMediaSupported = attachmentName => {
68
69
  switch (getBrowserName()) {
69
70
  case BrowserVendor.CHROME:
70
71
  case BrowserVendor.OPERA:
71
72
  return Constants.chromeSupportedInlineMediaRegex.test(attachmentName);
72
-
73
73
  case BrowserVendor.FIREFOX:
74
74
  return Constants.firefoxSupportedInlineMediaRegex.test(attachmentName);
75
-
76
75
  case BrowserVendor.EDGE:
77
76
  return isChromiumEdge() && Constants.chromeSupportedInlineMediaRegex.test(attachmentName);
78
-
79
77
  default:
80
78
  return false;
81
79
  }
@@ -1,18 +1,17 @@
1
1
  export const isMaskingforCustomer = maskingInfo => {
2
2
  var _maskingInfo$setting;
3
-
4
3
  // If the masking info (containing masking setting and masking rules) is missing or empty, return false.
5
4
  // If the masking rules are missing or empty, also return false.
6
5
  if (!maskingInfo || Object.keys(maskingInfo).length == 0 || !maskingInfo.dataMaskingRules || Object.keys(maskingInfo.dataMaskingRules).length == 0) {
7
6
  return false;
8
- } // If the masking rules are provided and;
9
- // If the masking setting is NOT null and masking for customer is NOT null, return the configuration
10
-
7
+ }
11
8
 
9
+ // If the masking rules are provided and;
10
+ // If the masking setting is NOT null and masking for customer is NOT null, return the configuration
12
11
  if ((_maskingInfo$setting = maskingInfo.setting) !== null && _maskingInfo$setting !== void 0 && _maskingInfo$setting.msdyn_maskforcustomer) {
13
12
  return maskingInfo.setting.msdyn_maskforcustomer;
14
- } // In all other cases, even if masking setting is missing, return true to apply the masking for backward compatibility (i.e. in old versions, OC does not have masking info settings)
15
-
13
+ }
16
14
 
15
+ // In all other cases, even if masking setting is missing, return true to apply the masking for backward compatibility (i.e. in old versions, OC does not have masking info settings)
17
16
  return true;
18
17
  };
@@ -1,5 +1,3 @@
1
1
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
-
3
2
  export class BotMagicCodeStore {}
4
-
5
3
  _defineProperty(BotMagicCodeStore, "botOAuthSignInId", "");
@@ -1,5 +1,3 @@
1
1
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
-
3
2
  export class WebChatStoreLoader {}
4
-
5
3
  _defineProperty(WebChatStoreLoader, "store", void 0);
@@ -1,5 +1,4 @@
1
1
  export let BrowserVendor;
2
-
3
2
  (function (BrowserVendor) {
4
3
  BrowserVendor["CHROME"] = "Chrome";
5
4
  BrowserVendor["FIREFOX"] = "Firefox";
@@ -1,5 +1,4 @@
1
1
  export let DirectLineActivityType;
2
-
3
2
  (function (DirectLineActivityType) {
4
3
  DirectLineActivityType["Message"] = "message";
5
4
  DirectLineActivityType["Typing"] = "typing";
@@ -1,5 +1,4 @@
1
1
  export let DirectLineSenderRole;
2
-
3
2
  (function (DirectLineSenderRole) {
4
3
  DirectLineSenderRole["User"] = "user";
5
4
  DirectLineSenderRole["Bot"] = "bot";
@@ -1,5 +1,4 @@
1
1
  export let MessageTypes;
2
-
3
2
  (function (MessageTypes) {
4
3
  MessageTypes["User"] = "UserMessage";
5
4
  MessageTypes["Swift"] = "SwiftCard";
@@ -1,5 +1,4 @@
1
1
  export let NotificationLevel;
2
-
3
2
  (function (NotificationLevel) {
4
3
  NotificationLevel["Success"] = "success";
5
4
  NotificationLevel["Info"] = "info";
@@ -1,5 +1,4 @@
1
1
  export let NotificationScenarios;
2
-
3
2
  (function (NotificationScenarios) {
4
3
  NotificationScenarios["Connection"] = "connection";
5
4
  NotificationScenarios["DownloadTranscriptError"] = "download transcript";
@@ -1,5 +1,4 @@
1
1
  export let SendStatus;
2
-
3
2
  (function (SendStatus) {
4
3
  SendStatus["Sending"] = "sending";
5
4
  SendStatus["SendFailed"] = "send failed";
@@ -1,5 +1,4 @@
1
1
  export let WebChatActionType;
2
-
3
2
  (function (WebChatActionType) {
4
3
  WebChatActionType["DIRECT_LINE_CONNECT_FULFILLED"] = "DIRECT_LINE/CONNECT_FULFILLED";
5
4
  WebChatActionType["DIRECT_LINE_CONNECT"] = "DIRECT_LINE/CONNECT";