@microsoft/omnichannel-chat-widget 0.1.0-main.fdf1fdf → 1.0.1-main.068a14e

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 (312) hide show
  1. package/README.md +7 -34
  2. package/lib/cjs/assets/Icons.js +4 -2
  3. package/lib/cjs/common/Constants.js +31 -171
  4. package/lib/cjs/common/KeyCodes.js +3 -4
  5. package/lib/cjs/common/contextDataStore/DataStoreManager.js +3 -5
  6. package/lib/cjs/common/storage/default/defaultCacheManager.js +26 -0
  7. package/lib/cjs/common/storage/default/defaultClientDataStoreProvider.js +111 -0
  8. package/lib/cjs/common/storage/default/defaultInMemoryDataStore.js +78 -0
  9. package/lib/cjs/common/telemetry/TelemetryConstants.js +63 -27
  10. package/lib/cjs/common/telemetry/TelemetryHelper.js +21 -59
  11. package/lib/cjs/common/telemetry/TelemetryManager.js +3 -32
  12. package/lib/cjs/common/telemetry/defaultConfigs/defaultTelemetryConfiguration.js +0 -2
  13. package/lib/cjs/common/telemetry/loggers/ariaTelemetryLogger.js +30 -36
  14. package/lib/cjs/common/telemetry/loggers/consoleLogger.js +0 -9
  15. package/lib/cjs/common/utils.js +40 -106
  16. package/lib/cjs/components/callingcontainerstateful/CallingContainerStateful.js +8 -46
  17. package/lib/cjs/components/chatbuttonstateful/ChatButtonStateful.js +2 -24
  18. package/lib/cjs/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  19. package/lib/cjs/components/confirmationpanestateful/ConfirmationPaneStateful.js +18 -49
  20. package/lib/cjs/components/dimlayer/DimLayer.js +0 -4
  21. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +9 -37
  22. package/lib/cjs/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -8
  23. package/lib/cjs/components/footerstateful/FooterStateful.js +11 -42
  24. package/lib/cjs/components/footerstateful/audionotificationstateful/AudioNotificationStateful.js +0 -6
  25. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -45
  26. package/lib/cjs/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -8
  27. package/lib/cjs/components/headerstateful/HeaderStateful.js +19 -31
  28. package/lib/cjs/components/livechatwidget/LiveChatWidget.js +2 -14
  29. package/lib/cjs/components/livechatwidget/common/ActivityStreamHandler.js +5 -10
  30. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/BotAuthActivitySubscriber.js +139 -0
  31. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +3 -6
  32. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +7 -12
  33. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +14 -20
  34. package/lib/cjs/components/livechatwidget/common/Deferred.js +6 -11
  35. package/lib/cjs/components/livechatwidget/common/agentEndConversationHelper.js +36 -0
  36. package/lib/cjs/components/livechatwidget/common/authHelper.js +13 -15
  37. package/lib/cjs/components/livechatwidget/common/createAdapter.js +4 -13
  38. package/lib/cjs/components/livechatwidget/common/createFooter.js +4 -23
  39. package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -10
  40. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +16 -24
  41. package/lib/cjs/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +14 -0
  42. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +127 -49
  43. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
  44. package/lib/cjs/components/livechatwidget/common/endChat.js +65 -70
  45. package/lib/cjs/components/livechatwidget/common/getGeneralStylesForButton.js +0 -6
  46. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +7 -16
  47. package/lib/cjs/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -8
  48. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +25 -101
  49. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +82 -151
  50. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +4 -17
  51. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +256 -12
  52. package/lib/cjs/components/livechatwidget/common/shareObservable.js +4 -8
  53. package/lib/cjs/components/livechatwidget/common/startChat.js +185 -128
  54. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +0 -8
  55. package/lib/cjs/components/livechatwidget/common/updateSessionDataForTelemetry.js +2 -11
  56. package/lib/cjs/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  57. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +284 -253
  58. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +37 -25
  59. package/lib/cjs/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +57 -0
  60. package/lib/cjs/components/loadingpanestateful/interfaces/IStartChatErrorPaneControlProps.js +1 -0
  61. package/lib/cjs/components/loadingpanestateful/interfaces/IStartChatErrorPaneProps.js +1 -0
  62. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +4 -17
  63. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -17
  64. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +35 -24
  65. package/lib/cjs/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  66. package/lib/cjs/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +13 -0
  67. package/lib/cjs/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  68. package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  69. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +10 -38
  70. package/lib/cjs/components/prechatsurveypanestateful/common/defaultStyles/defaultGeneralPreChatSurveyPaneStyleProps.js +1 -1
  71. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +2 -32
  72. package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +8 -24
  73. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +21 -37
  74. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +0 -7
  75. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -6
  76. package/lib/cjs/components/webchatcontainerstateful/common/mockadapter.js +12 -27
  77. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +5 -18
  78. package/lib/cjs/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -24
  79. package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -15
  80. package/lib/cjs/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -8
  81. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +3 -5
  82. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -5
  83. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  84. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  85. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  86. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  87. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  88. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  89. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  90. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  91. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +0 -7
  92. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -5
  93. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -41
  94. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +10 -22
  95. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -61
  96. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +7 -15
  97. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -13
  98. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -16
  99. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +10 -0
  100. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
  101. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -3
  102. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -3
  103. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
  104. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -9
  105. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +2 -30
  106. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +7 -18
  107. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +8 -42
  108. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +4 -22
  109. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +20 -33
  110. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +3 -9
  111. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +81 -45
  112. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +1 -10
  113. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +1 -12
  114. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -19
  115. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +1 -9
  116. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -9
  117. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +13 -34
  118. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +1 -10
  119. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +7 -11
  120. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +5 -14
  121. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -21
  122. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -12
  123. package/lib/cjs/contexts/ChatAdapterStore.js +0 -2
  124. package/lib/cjs/contexts/ChatContextStore.js +0 -2
  125. package/lib/cjs/contexts/ChatSDKStore.js +0 -2
  126. package/lib/cjs/contexts/common/ConversationEndEntity.js +12 -0
  127. package/lib/cjs/contexts/common/ConversationState.js +0 -1
  128. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +34 -29
  129. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +18 -13
  130. package/lib/cjs/contexts/createReducer.js +190 -110
  131. package/lib/cjs/controller/componentController.js +2 -31
  132. package/lib/cjs/hooks/useChatAdapterStore.js +0 -6
  133. package/lib/cjs/hooks/useChatContextStore.js +0 -6
  134. package/lib/cjs/hooks/useChatSDKStore.js +0 -6
  135. package/lib/cjs/hooks/useDebounce.js +28 -0
  136. package/lib/cjs/hooks/useWindowDimensions.js +30 -0
  137. package/lib/cjs/index.js +0 -5
  138. package/lib/cjs/plugins/newMessageEventHandler.js +29 -36
  139. package/lib/esm/assets/Icons.js +2 -1
  140. package/lib/esm/common/Constants.js +27 -158
  141. package/lib/esm/common/KeyCodes.js +3 -3
  142. package/lib/esm/common/contextDataStore/DataStoreManager.js +3 -3
  143. package/lib/esm/common/storage/default/defaultCacheManager.js +18 -0
  144. package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +104 -0
  145. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +70 -0
  146. package/lib/esm/common/telemetry/TelemetryConstants.js +67 -24
  147. package/lib/esm/common/telemetry/TelemetryHelper.js +21 -47
  148. package/lib/esm/common/telemetry/TelemetryManager.js +3 -19
  149. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +28 -24
  150. package/lib/esm/common/telemetry/loggers/consoleLogger.js +0 -5
  151. package/lib/esm/common/utils.js +38 -53
  152. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +8 -17
  153. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +2 -7
  154. package/lib/esm/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  155. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +20 -30
  156. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +9 -16
  157. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
  158. package/lib/esm/components/footerstateful/FooterStateful.js +13 -23
  159. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -35
  160. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -6
  161. package/lib/esm/components/headerstateful/HeaderStateful.js +19 -16
  162. package/lib/esm/components/livechatwidget/LiveChatWidget.js +2 -2
  163. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +5 -7
  164. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/BotAuthActivitySubscriber.js +134 -0
  165. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +3 -4
  166. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +7 -9
  167. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +14 -16
  168. package/lib/esm/components/livechatwidget/common/Deferred.js +6 -9
  169. package/lib/esm/components/livechatwidget/common/agentEndConversationHelper.js +30 -0
  170. package/lib/esm/components/livechatwidget/common/authHelper.js +13 -10
  171. package/lib/esm/components/livechatwidget/common/createAdapter.js +6 -6
  172. package/lib/esm/components/livechatwidget/common/createFooter.js +4 -16
  173. package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +10 -5
  174. package/lib/esm/components/livechatwidget/common/createMarkdown.js +18 -18
  175. package/lib/esm/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +7 -0
  176. package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +128 -35
  177. package/lib/esm/components/livechatwidget/common/endChat.js +69 -57
  178. package/lib/esm/components/livechatwidget/common/getGeneralStylesForButton.js +0 -2
  179. package/lib/esm/components/livechatwidget/common/initCallingSdk.js +9 -11
  180. package/lib/esm/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -5
  181. package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +28 -67
  182. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +80 -129
  183. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +4 -9
  184. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +259 -6
  185. package/lib/esm/components/livechatwidget/common/shareObservable.js +4 -7
  186. package/lib/esm/components/livechatwidget/common/startChat.js +184 -99
  187. package/lib/esm/components/livechatwidget/common/updateSessionDataForTelemetry.js +4 -2
  188. package/lib/esm/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  189. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +287 -188
  190. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +38 -13
  191. package/lib/esm/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +50 -0
  192. package/lib/esm/components/loadingpanestateful/interfaces/IStartChatErrorPaneControlProps.js +1 -0
  193. package/lib/esm/components/loadingpanestateful/interfaces/IStartChatErrorPaneProps.js +1 -0
  194. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +4 -5
  195. package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -5
  196. package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +35 -12
  197. package/lib/esm/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  198. package/lib/esm/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +6 -0
  199. package/lib/esm/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  200. package/lib/esm/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  201. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +12 -22
  202. package/lib/esm/components/prechatsurveypanestateful/common/defaultStyles/defaultGeneralPreChatSurveyPaneStyleProps.js +1 -1
  203. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +4 -8
  204. package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +8 -6
  205. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +19 -11
  206. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
  207. package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +12 -19
  208. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +5 -14
  209. package/lib/esm/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -16
  210. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -5
  211. package/lib/esm/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -6
  212. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +3 -3
  213. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -3
  214. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  215. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  216. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  217. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  218. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  219. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  220. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  221. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  222. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +2 -5
  223. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -4
  224. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -26
  225. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +12 -14
  226. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -39
  227. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +9 -8
  228. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -9
  229. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -14
  230. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +3 -0
  231. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +3 -0
  232. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -1
  233. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -1
  234. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +3 -0
  235. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -7
  236. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +4 -28
  237. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +8 -9
  238. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +9 -28
  239. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +5 -14
  240. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +20 -22
  241. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +5 -8
  242. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +81 -40
  243. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +3 -7
  244. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +3 -8
  245. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -14
  246. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +3 -7
  247. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -7
  248. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +15 -27
  249. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +3 -5
  250. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +9 -9
  251. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +7 -9
  252. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -13
  253. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -5
  254. package/lib/esm/contexts/ChatAdapterStore.js +2 -1
  255. package/lib/esm/contexts/ChatContextStore.js +2 -1
  256. package/lib/esm/contexts/ChatSDKStore.js +2 -1
  257. package/lib/esm/contexts/common/ConversationEndEntity.js +5 -0
  258. package/lib/esm/contexts/common/ConversationState.js +0 -1
  259. package/lib/esm/contexts/common/LiveChatWidgetActionType.js +34 -29
  260. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +18 -9
  261. package/lib/esm/contexts/createReducer.js +190 -107
  262. package/lib/esm/controller/componentController.js +3 -2
  263. package/lib/esm/hooks/useChatAdapterStore.js +0 -4
  264. package/lib/esm/hooks/useChatContextStore.js +0 -4
  265. package/lib/esm/hooks/useChatSDKStore.js +0 -4
  266. package/lib/esm/hooks/useDebounce.js +22 -0
  267. package/lib/esm/hooks/useWindowDimensions.js +23 -0
  268. package/lib/esm/plugins/newMessageEventHandler.js +29 -26
  269. package/lib/types/assets/Icons.d.ts +1 -0
  270. package/lib/types/common/Constants.d.ts +21 -0
  271. package/lib/types/common/storage/default/defaultCacheManager.d.ts +4 -0
  272. package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +2 -0
  273. package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -0
  274. package/lib/types/common/telemetry/TelemetryConstants.d.ts +45 -9
  275. package/lib/types/common/telemetry/definitions/Contracts.d.ts +4 -4
  276. package/lib/types/common/telemetry/definitions/Payload.d.ts +1 -0
  277. package/lib/types/common/telemetry/interfaces/ITelemetryConfig.d.ts +4 -0
  278. package/lib/types/common/utils.d.ts +1 -0
  279. package/lib/types/components/confirmationpanestateful/interfaces/IConfirmationPaneStatefulParams.d.ts +0 -7
  280. package/lib/types/components/livechatwidget/common/ActivitySubscriber/BotAuthActivitySubscriber.d.ts +9 -0
  281. package/lib/types/components/livechatwidget/common/agentEndConversationHelper.d.ts +6 -0
  282. package/lib/types/components/livechatwidget/common/authHelper.d.ts +3 -2
  283. package/lib/types/components/livechatwidget/common/defaultProps/defaultScrollBarProps.d.ts +2 -0
  284. package/lib/types/components/livechatwidget/common/initWebChatComposer.d.ts +1 -1
  285. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +5 -7
  286. package/lib/types/components/livechatwidget/common/setPostChatContextAndLoadSurvey.d.ts +6 -1
  287. package/lib/types/components/livechatwidget/common/startChat.d.ts +5 -4
  288. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +3 -1
  289. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +6 -2
  290. package/lib/types/components/livechatwidget/interfaces/IScrollBarProps.d.ts +22 -0
  291. package/lib/types/components/loadingpanestateful/LoadingPaneStateful.d.ts +1 -2
  292. package/lib/types/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.d.ts +2 -0
  293. package/lib/types/components/loadingpanestateful/interfaces/IStartChatErrorPaneControlProps.d.ts +4 -0
  294. package/lib/types/components/loadingpanestateful/interfaces/IStartChatErrorPaneProps.d.ts +4 -0
  295. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
  296. package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -0
  297. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
  298. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +0 -1
  299. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +4 -1
  300. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.d.ts +1 -1
  301. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +2 -0
  302. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  303. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  304. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.d.ts +1 -1
  305. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.d.ts +1 -1
  306. package/lib/types/contexts/common/ConversationEndEntity.d.ts +4 -0
  307. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +9 -3
  308. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +34 -28
  309. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
  310. package/lib/types/hooks/useDebounce.d.ts +3 -0
  311. package/lib/types/hooks/useWindowDimensions.d.ts +4 -0
  312. package/package.json +3 -3
@@ -4,85 +4,63 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.isChromiumEdge = exports.getUserAgent = exports.getBrowserVersion = exports.getBrowserName = void 0;
7
-
8
7
  var _BrowserVendor = require("../../webchatcontroller/enums/BrowserVendor");
9
-
10
8
  const REGEX_VERSION = "([\\d,.]+)";
11
9
  const UNKNOWN_VERSION = "U";
12
10
  let userAgent = undefined;
13
-
14
11
  const getUserAgent = () => {
15
12
  if (!userAgent) {
16
13
  userAgent = window.navigator.userAgent;
17
14
  }
18
-
19
15
  return userAgent;
20
16
  };
21
-
22
17
  exports.getUserAgent = getUserAgent;
23
-
24
18
  const userAgentContainsString = searchString => {
25
19
  const userAgent = getUserAgent();
26
20
  return userAgent.indexOf(searchString) > -1;
27
21
  };
28
-
29
22
  const isEdge = () => {
30
23
  return userAgentContainsString(_BrowserVendor.BrowserVendor.EDGE) || userAgentContainsString(_BrowserVendor.BrowserVendor.EDGE_CHROMIUM);
31
24
  };
32
-
33
25
  const isChromiumEdge = () => {
34
26
  return userAgentContainsString(_BrowserVendor.BrowserVendor.EDGE_CHROMIUM) && !userAgentContainsString(_BrowserVendor.BrowserVendor.EDGE);
35
27
  };
36
-
37
28
  exports.isChromiumEdge = isChromiumEdge;
38
-
39
29
  const isOpera = () => {
40
30
  return userAgentContainsString("OPR/");
41
31
  };
42
-
43
32
  const getBrowserName = () => {
44
33
  if (isOpera()) {
45
34
  return _BrowserVendor.BrowserVendor.OPERA;
46
35
  }
47
-
48
36
  if (isEdge()) {
49
37
  return _BrowserVendor.BrowserVendor.EDGE;
50
38
  }
51
-
52
39
  if (userAgentContainsString(_BrowserVendor.BrowserVendor.CHROME)) {
53
40
  return _BrowserVendor.BrowserVendor.CHROME;
54
41
  }
55
-
56
42
  if (userAgentContainsString(_BrowserVendor.BrowserVendor.FIREFOX)) {
57
43
  return _BrowserVendor.BrowserVendor.FIREFOX;
58
44
  }
59
-
60
45
  if (userAgentContainsString(_BrowserVendor.BrowserVendor.SAFARI)) {
61
46
  return _BrowserVendor.BrowserVendor.SAFARI;
62
47
  }
63
-
64
48
  return _BrowserVendor.BrowserVendor.UNKNOWN;
65
49
  };
66
-
67
50
  exports.getBrowserName = getBrowserName;
68
-
69
51
  const getBrowserVersion = () => {
70
52
  let browserString = getBrowserName();
71
53
  const browserVersion = UNKNOWN_VERSION;
72
54
  let matches;
73
-
74
55
  if (browserString === _BrowserVendor.BrowserVendor.SAFARI) {
75
56
  browserString = "Version";
76
- } // eslint-disable-next-line prefer-const
77
-
57
+ }
78
58
 
59
+ // eslint-disable-next-line prefer-const
79
60
  matches = getUserAgent().match(new RegExp(browserString + "/" + REGEX_VERSION));
80
-
81
61
  if (matches) {
82
62
  return matches[1];
83
63
  }
84
-
85
64
  return browserVersion;
86
65
  };
87
-
88
66
  exports.getBrowserVersion = getBrowserVersion;
@@ -4,19 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.isInlineMediaSupported = exports.getFileAttachmentIconData = void 0;
7
-
8
7
  var _Icons = require("../../../../assets/Icons");
9
-
10
8
  var _BrowserInfo = require("./BrowserInfo");
11
-
12
9
  var _BrowserVendor = require("../../webchatcontroller/enums/BrowserVendor");
13
-
14
10
  var _Constants = require("../../../../common/Constants");
15
-
16
11
  const FileAttachmentIconMap = {
17
12
  "aac": _Icons.AudioIcon,
18
13
  "aiff": _Icons.AudioIcon,
19
14
  "alac": _Icons.AudioIcon,
15
+ "amr": _Icons.AudioIcon,
20
16
  "avchd": _Icons.VideoIcon,
21
17
  "avi": _Icons.VideoIcon,
22
18
  "bmp": _Icons.ImageIcon,
@@ -55,6 +51,7 @@ const FileAttachmentIconMap = {
55
51
  "vsdx": _Icons.VisioIcon,
56
52
  "wav": _Icons.AudioIcon,
57
53
  "webm": _Icons.VideoIcon,
54
+ "webp": _Icons.ImageIcon,
58
55
  "wma": _Icons.AudioIcon,
59
56
  "wmv": _Icons.VideoIcon,
60
57
  "xls": _Icons.ExcelIcon,
@@ -63,38 +60,31 @@ const FileAttachmentIconMap = {
63
60
  "zipx": _Icons.ArchiveIcon,
64
61
  "7z": _Icons.ArchiveIcon
65
62
  };
63
+
66
64
  /**
67
65
  * Get file attachment icon image depending on extension.
68
66
  *
69
67
  * @param extension File extension
70
68
  */
71
-
72
69
  const getFileAttachmentIconData = extension => {
73
70
  const key = extension.startsWith(".") ? extension.slice(1) : extension || "";
74
-
75
71
  const icon = FileAttachmentIconMap[key.toLowerCase()] || _Icons.BlankIcon;
76
-
77
72
  return icon;
78
- }; // Check if browser supports inline media playing for current media format
79
-
73
+ };
80
74
 
75
+ // Check if browser supports inline media playing for current media format
81
76
  exports.getFileAttachmentIconData = getFileAttachmentIconData;
82
-
83
77
  const isInlineMediaSupported = attachmentName => {
84
78
  switch ((0, _BrowserInfo.getBrowserName)()) {
85
79
  case _BrowserVendor.BrowserVendor.CHROME:
86
80
  case _BrowserVendor.BrowserVendor.OPERA:
87
81
  return _Constants.Constants.chromeSupportedInlineMediaRegex.test(attachmentName);
88
-
89
82
  case _BrowserVendor.BrowserVendor.FIREFOX:
90
83
  return _Constants.Constants.firefoxSupportedInlineMediaRegex.test(attachmentName);
91
-
92
84
  case _BrowserVendor.BrowserVendor.EDGE:
93
85
  return (0, _BrowserInfo.isChromiumEdge)() && _Constants.Constants.chromeSupportedInlineMediaRegex.test(attachmentName);
94
-
95
86
  default:
96
87
  return false;
97
88
  }
98
89
  };
99
-
100
90
  exports.isInlineMediaSupported = isInlineMediaSupported;
@@ -4,24 +4,21 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.isMaskingforCustomer = void 0;
7
-
8
7
  const isMaskingforCustomer = maskingInfo => {
9
8
  var _maskingInfo$setting;
10
-
11
9
  // If the masking info (containing masking setting and masking rules) is missing or empty, return false.
12
10
  // If the masking rules are missing or empty, also return false.
13
11
  if (!maskingInfo || Object.keys(maskingInfo).length == 0 || !maskingInfo.dataMaskingRules || Object.keys(maskingInfo.dataMaskingRules).length == 0) {
14
12
  return false;
15
- } // If the masking rules are provided and;
16
- // If the masking setting is NOT null and masking for customer is NOT null, return the configuration
17
-
13
+ }
18
14
 
15
+ // If the masking rules are provided and;
16
+ // If the masking setting is NOT null and masking for customer is NOT null, return the configuration
19
17
  if ((_maskingInfo$setting = maskingInfo.setting) !== null && _maskingInfo$setting !== void 0 && _maskingInfo$setting.msdyn_maskforcustomer) {
20
18
  return maskingInfo.setting.msdyn_maskforcustomer;
21
- } // 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)
22
-
19
+ }
23
20
 
21
+ // 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)
24
22
  return true;
25
23
  };
26
-
27
24
  exports.isMaskingforCustomer = isMaskingforCustomer;
@@ -4,11 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.BotMagicCodeStore = void 0;
7
-
8
- 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; }
9
-
7
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
9
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
10
10
  class BotMagicCodeStore {}
11
-
12
11
  exports.BotMagicCodeStore = BotMagicCodeStore;
13
-
14
12
  _defineProperty(BotMagicCodeStore, "botOAuthSignInId", "");
@@ -4,11 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.WebChatStoreLoader = void 0;
7
-
8
- 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; }
9
-
7
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
9
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
10
10
  class WebChatStoreLoader {}
11
-
12
11
  exports.WebChatStoreLoader = WebChatStoreLoader;
13
-
14
12
  _defineProperty(WebChatStoreLoader, "store", void 0);
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.BrowserVendor = void 0;
7
7
  let BrowserVendor;
8
8
  exports.BrowserVendor = BrowserVendor;
9
-
10
9
  (function (BrowserVendor) {
11
10
  BrowserVendor["CHROME"] = "Chrome";
12
11
  BrowserVendor["FIREFOX"] = "Firefox";
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.DirectLineActivityType = void 0;
7
7
  let DirectLineActivityType;
8
8
  exports.DirectLineActivityType = DirectLineActivityType;
9
-
10
9
  (function (DirectLineActivityType) {
11
10
  DirectLineActivityType["Message"] = "message";
12
11
  DirectLineActivityType["Typing"] = "typing";
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.DirectLineSenderRole = void 0;
7
7
  let DirectLineSenderRole;
8
8
  exports.DirectLineSenderRole = DirectLineSenderRole;
9
-
10
9
  (function (DirectLineSenderRole) {
11
10
  DirectLineSenderRole["User"] = "user";
12
11
  DirectLineSenderRole["Bot"] = "bot";
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.MessageTypes = void 0;
7
7
  let MessageTypes;
8
8
  exports.MessageTypes = MessageTypes;
9
-
10
9
  (function (MessageTypes) {
11
10
  MessageTypes["User"] = "UserMessage";
12
11
  MessageTypes["Swift"] = "SwiftCard";
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.NotificationLevel = void 0;
7
7
  let NotificationLevel;
8
8
  exports.NotificationLevel = NotificationLevel;
9
-
10
9
  (function (NotificationLevel) {
11
10
  NotificationLevel["Success"] = "success";
12
11
  NotificationLevel["Info"] = "info";
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.NotificationScenarios = void 0;
7
7
  let NotificationScenarios;
8
8
  exports.NotificationScenarios = NotificationScenarios;
9
-
10
9
  (function (NotificationScenarios) {
11
10
  NotificationScenarios["Connection"] = "connection";
12
11
  NotificationScenarios["DownloadTranscriptError"] = "download transcript";
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.SendStatus = void 0;
7
7
  let SendStatus;
8
8
  exports.SendStatus = SendStatus;
9
-
10
9
  (function (SendStatus) {
11
10
  SendStatus["Sending"] = "sending";
12
11
  SendStatus["SendFailed"] = "send failed";
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.WebChatActionType = void 0;
7
7
  let WebChatActionType;
8
8
  exports.WebChatActionType = WebChatActionType;
9
-
10
9
  (function (WebChatActionType) {
11
10
  WebChatActionType["DIRECT_LINE_CONNECT_FULFILLED"] = "DIRECT_LINE/CONNECT_FULFILLED";
12
11
  WebChatActionType["DIRECT_LINE_CONNECT"] = "DIRECT_LINE/CONNECT";
@@ -4,21 +4,16 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _TelemetryConstants = require("../../../../../common/telemetry/TelemetryConstants");
9
-
10
8
  var _TelemetryHelper = require("../../../../../common/telemetry/TelemetryHelper");
11
-
12
9
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
10
  const FormatEgressTagsMiddleware = () => next => activity => {
14
11
  const activity_instance = JSON.parse(JSON.stringify(activity));
15
-
16
12
  if (activity_instance) {
17
13
  if (activity_instance.channelData && activity_instance.channelData.tags) {
18
14
  const {
19
15
  tags
20
16
  } = activity_instance.channelData;
21
-
22
17
  if (typeof tags === "string") {
23
18
  return next(activity);
24
19
  } else if (tags instanceof Array) {
@@ -37,9 +32,7 @@ const FormatEgressTagsMiddleware = () => next => activity => {
37
32
  }
38
33
  }
39
34
  }
40
-
41
35
  return next(activity_instance);
42
36
  };
43
-
44
37
  var _default = FormatEgressTagsMiddleware;
45
38
  exports.default = _default;
@@ -4,17 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
8
  const formatTagsIngressMiddleware = () => next => activity => {
10
9
  const activity_instance = JSON.parse(JSON.stringify(activity));
11
-
12
10
  if (activity_instance) {
13
11
  if (activity_instance.channelData && activity_instance.channelData.tags) {
14
12
  const {
15
13
  tags
16
14
  } = activity_instance.channelData;
17
-
18
15
  if (typeof tags === "string") {
19
16
  try {
20
17
  //If it is json format, parse the tags. Catch block will convert string to array.(We do not need to log anything since its not an error)
@@ -25,9 +22,7 @@ const formatTagsIngressMiddleware = () => next => activity => {
25
22
  }
26
23
  }
27
24
  }
28
-
29
25
  return next(activity_instance);
30
26
  };
31
-
32
27
  var _default = formatTagsIngressMiddleware;
33
28
  exports.default = _default;
@@ -4,29 +4,17 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createActivityMiddleware = void 0;
7
-
8
7
  var _TelemetryConstants = require("../../../../../common/telemetry/TelemetryConstants");
9
-
10
8
  var _Constants = require("../../../../../common/Constants");
11
-
12
9
  var _DirectLineActivityType = require("../../enums/DirectLineActivityType");
13
-
14
10
  var _DirectLineSenderRole = require("../../enums/DirectLineSenderRole");
15
-
16
11
  var _MessageType = require("../../enums/MessageType");
17
-
18
12
  var _react = _interopRequireDefault(require("react"));
19
-
20
13
  var _TelemetryHelper = require("../../../../../common/telemetry/TelemetryHelper");
21
-
22
14
  var _defaultSystemMessageStyles = require("./defaultStyles/defaultSystemMessageStyles");
23
-
24
15
  var _defaultUserMessageStyles = require("./defaultStyles/defaultUserMessageStyles");
25
-
26
16
  var _utils = require("../../../../../common/utils");
27
-
28
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
-
30
18
  /******
31
19
  * ActivityMiddleware
32
20
  *
@@ -35,83 +23,73 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
35
23
  * 2. Changes the font size of user messages
36
24
  * 3. Decodes certain html characters that came through from chat services
37
25
  ******/
38
- const loggedSystemMessages = new Array(); // eslint-disable-next-line @typescript-eslint/no-explicit-any
39
26
 
27
+ const loggedSystemMessages = new Array();
28
+
29
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
40
30
  const handleSystemMessage = (next, args, card, systemMessageStyleProps) => {
41
31
  var _card$activity, _card$activity$channe, _card$activity$channe2, _card$activity2, _card$activity2$chann, _card$activity3, _card$activity3$chann, _card$activity3$chann2, _card$activity4, _card$activity4$chann, _card$activity5, _card$activity5$chann, _card$nextVisibleActi, _card$nextVisibleActi2, _card$activity6, _card$activity6$chann, _card$activity7, _card$nextVisibleActi3, _card$activity8;
42
-
43
- const systemMessageStyles = { ..._defaultSystemMessageStyles.defaultSystemMessageStyles,
32
+ const systemMessageStyles = {
33
+ ..._defaultSystemMessageStyles.defaultSystemMessageStyles,
44
34
  ...systemMessageStyleProps
45
35
  };
46
-
47
36
  if ((_card$activity = card.activity) !== null && _card$activity !== void 0 && (_card$activity$channe = _card$activity.channelData) !== null && _card$activity$channe !== void 0 && (_card$activity$channe2 = _card$activity$channe.tags) !== null && _card$activity$channe2 !== void 0 && _card$activity$channe2.includes(_Constants.Constants.averageWaitTimeMessageTag) && loggedSystemMessages.indexOf((_card$activity2 = card.activity) === null || _card$activity2 === void 0 ? void 0 : (_card$activity2$chann = _card$activity2.channelData) === null || _card$activity2$chann === void 0 ? void 0 : _card$activity2$chann.clientmessageid) < 0) {
48
37
  _TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.INFO, {
49
38
  Event: _TelemetryConstants.TelemetryEvent.AverageWaitTimeMessageRecieved,
50
39
  Description: "Average wait time message was received"
51
40
  });
52
-
53
41
  loggedSystemMessages.push(card.activity.channelData.clientmessageid);
54
42
  }
55
-
56
43
  if ((_card$activity3 = card.activity) !== null && _card$activity3 !== void 0 && (_card$activity3$chann = _card$activity3.channelData) !== null && _card$activity3$chann !== void 0 && (_card$activity3$chann2 = _card$activity3$chann.tags) !== null && _card$activity3$chann2 !== void 0 && _card$activity3$chann2.includes(_Constants.Constants.queuePositionMessageTag) && loggedSystemMessages.indexOf((_card$activity4 = card.activity) === null || _card$activity4 === void 0 ? void 0 : (_card$activity4$chann = _card$activity4.channelData) === null || _card$activity4$chann === void 0 ? void 0 : _card$activity4$chann.clientmessageid) < 0) {
57
44
  _TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.INFO, {
58
45
  Event: _TelemetryConstants.TelemetryEvent.QueuePositionMessageRecieved,
59
46
  Description: "Queue position message was received"
60
47
  });
61
-
62
48
  loggedSystemMessages.push(card.activity.channelData.clientmessageid);
63
49
  }
64
-
65
50
  if ((_card$activity5 = card.activity) !== null && _card$activity5 !== void 0 && (_card$activity5$chann = _card$activity5.channelData) !== null && _card$activity5$chann !== void 0 && _card$activity5$chann.clientmessageid && ((_card$nextVisibleActi = card.nextVisibleActivity) === null || _card$nextVisibleActi === void 0 ? void 0 : (_card$nextVisibleActi2 = _card$nextVisibleActi.channelData) === null || _card$nextVisibleActi2 === void 0 ? void 0 : _card$nextVisibleActi2.clientmessageid) === ((_card$activity6 = card.activity) === null || _card$activity6 === void 0 ? void 0 : (_card$activity6$chann = _card$activity6.channelData) === null || _card$activity6$chann === void 0 ? void 0 : _card$activity6$chann.clientmessageid) || (_card$activity7 = card.activity) !== null && _card$activity7 !== void 0 && _card$activity7.messageid && ((_card$nextVisibleActi3 = card.nextVisibleActivity) === null || _card$nextVisibleActi3 === void 0 ? void 0 : _card$nextVisibleActi3.messageid) === ((_card$activity8 = card.activity) === null || _card$activity8 === void 0 ? void 0 : _card$activity8.messageid)) {
66
51
  return () => false;
67
- } // eslint-disable-next-line react/display-name, @typescript-eslint/no-explicit-any
68
-
52
+ }
69
53
 
54
+ // eslint-disable-next-line react/display-name, @typescript-eslint/no-explicit-any
70
55
  return () => /*#__PURE__*/_react.default.createElement("div", {
71
56
  key: card.activity.id,
72
57
  style: systemMessageStyles,
73
58
  "aria-hidden": "true"
74
59
  }, card.activity.text);
75
- }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
76
-
60
+ };
77
61
 
62
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
78
63
  const isTagIncluded = (card, tag) => {
79
64
  return isDataTagsPresent(card) && card.activity.channelData.tags.includes(tag);
80
- }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
81
-
65
+ };
82
66
 
67
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
83
68
  const isDataTagsPresent = card => {
84
69
  return card && card.activity && card.activity.channelData && card.activity.channelData.tags && card.activity.channelData.tags.length > 0;
85
- }; // eslint-disable-next-line @typescript-eslint/no-explicit-any
86
-
70
+ };
87
71
 
72
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
88
73
  const createActivityMiddleware = (systemMessageStyleProps, userMessageStyleProps) => () => next => function () {
89
74
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
90
75
  args[_key] = arguments[_key];
91
76
  }
92
-
93
77
  const [card] = args;
94
-
95
78
  if (card.activity) {
96
79
  var _card$activity$from;
97
-
98
80
  if (((_card$activity$from = card.activity.from) === null || _card$activity$from === void 0 ? void 0 : _card$activity$from.role) === _DirectLineSenderRole.DirectLineSenderRole.Channel) {
99
81
  var _card$activity$channe3;
100
-
101
82
  if (((_card$activity$channe3 = card.activity.channelData) === null || _card$activity$channe3 === void 0 ? void 0 : _card$activity$channe3.type) === _MessageType.MessageTypes.Thread) {
102
83
  _TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.INFO, {
103
84
  Event: _TelemetryConstants.TelemetryEvent.IC3ThreadUpdateEventReceived,
104
85
  Description: "IC3 ThreadUpdateEvent Received"
105
86
  });
106
87
  }
107
-
108
88
  return () => false;
109
89
  }
110
-
111
90
  if (isTagIncluded(card, _Constants.Constants.hiddenTag)) {
112
91
  return () => false;
113
92
  }
114
-
115
93
  if (isTagIncluded(card, _Constants.Constants.systemMessageTag)) {
116
94
  return handleSystemMessage(next, args, card, systemMessageStyleProps);
117
95
  } else if (card.activity.text && card.activity.type === _DirectLineActivityType.DirectLineActivityType.Message) {
@@ -119,11 +97,11 @@ const createActivityMiddleware = (systemMessageStyleProps, userMessageStyleProps
119
97
  card.activity.text = (0, _utils.escapeHtml)(card.activity.text);
120
98
  card.activity.channelData.isHtmlEncoded = true;
121
99
  }
122
-
123
- const userMessageStyles = { ..._defaultUserMessageStyles.defaultUserMessageStyles,
100
+ const userMessageStyles = {
101
+ ..._defaultUserMessageStyles.defaultUserMessageStyles,
124
102
  ...userMessageStyleProps
125
- }; // eslint-disable-next-line react/display-name, @typescript-eslint/no-explicit-any
126
-
103
+ };
104
+ // eslint-disable-next-line react/display-name, @typescript-eslint/no-explicit-any
127
105
  return function () {
128
106
  return /*#__PURE__*/_react.default.createElement("div", {
129
107
  className: card.activity.from.role === _DirectLineSenderRole.DirectLineSenderRole.User ? _Constants.Constants.sentMessageClassName : _Constants.Constants.receivedMessageClassName,
@@ -133,8 +111,6 @@ const createActivityMiddleware = (systemMessageStyleProps, userMessageStyleProps
133
111
  };
134
112
  }
135
113
  }
136
-
137
114
  return next(...args);
138
115
  };
139
-
140
116
  exports.createActivityMiddleware = createActivityMiddleware;
@@ -4,21 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.activityStatusMiddleware = void 0;
7
-
8
7
  var _Constants = require("../../../../../common/Constants");
9
-
10
8
  var _DeliveredTimestamp = require("./timestamps/DeliveredTimestamp");
11
-
12
9
  var _NotDeliveredTimestamp = require("./timestamps/NotDeliveredTimestamp");
13
-
14
10
  var _react = _interopRequireDefault(require("react"));
15
-
16
11
  var _SendStatus = require("../../enums/SendStatus");
17
-
18
12
  var _SendingTimestamp = require("./timestamps/SendingTimestamp");
19
-
20
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
-
22
14
  // eslint-disable-next-line @typescript-eslint/no-explicit-any, react/display-name, @typescript-eslint/no-unused-vars
23
15
  const activityStatusMiddleware = () => next => args => {
24
16
  const {
@@ -36,11 +28,10 @@ const activityStatusMiddleware = () => next => args => {
36
28
  sameTimestampGroup
37
29
  } = args;
38
30
  const current_tags = tags,
39
- current_name = name,
40
- current_role = role,
41
- current_timestamp = timestamp;
31
+ current_name = name,
32
+ current_role = role,
33
+ current_timestamp = timestamp;
42
34
  let sameTimestampGroupTemp = sameTimestampGroup;
43
-
44
35
  if (args[_Constants.WebChatMiddlewareConstants.nextVisibleActivity]) {
45
36
  const {
46
37
  nextVisibleActivity: {
@@ -49,18 +40,16 @@ const activityStatusMiddleware = () => next => args => {
49
40
  },
50
41
  timestamp
51
42
  }
52
- } = args; // eslint-disable-next-line @typescript-eslint/no-unused-vars
53
-
43
+ } = args;
44
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
54
45
  const next_name = name,
55
- next_timestamp = timestamp;
46
+ next_timestamp = timestamp;
56
47
  const timestampCurrentInMillisecond = Date.parse(current_timestamp);
57
48
  const timestampNextInMillisecond = Date.parse(next_timestamp);
58
-
59
49
  if (current_name !== next_name || timestampNextInMillisecond - timestampCurrentInMillisecond > _Constants.WebChatMiddlewareConstants.timeBetweenTimestampGroups) {
60
50
  sameTimestampGroupTemp = false;
61
51
  }
62
52
  }
63
-
64
53
  if (current_tags && current_tags.includes(_Constants.Constants.systemMessageTag) || sameTimestampGroupTemp && sendState === _SendStatus.SendStatus.Sent) {
65
54
  return;
66
55
  } else {
@@ -68,16 +57,15 @@ const activityStatusMiddleware = () => next => args => {
68
57
  style: {
69
58
  padding: "2px"
70
59
  }
71
- }, sendState === _SendStatus.SendStatus.Sending && /*#__PURE__*/_react.default.createElement(_SendingTimestamp.SendingTimestamp, {
72
- args: args
73
- }), sendState === _SendStatus.SendStatus.SendFailed && /*#__PURE__*/_react.default.createElement(_NotDeliveredTimestamp.NotDeliveredTimestamp, {
60
+ }, sendState === _SendStatus.SendStatus.Sending && /*#__PURE__*/_react.default.createElement(_SendingTimestamp.SendingTimestamp, null), sendState === _SendStatus.SendStatus.SendFailed && /*#__PURE__*/_react.default.createElement(_NotDeliveredTimestamp.NotDeliveredTimestamp, {
74
61
  args: args
75
62
  }), sendState === _SendStatus.SendStatus.Sent && /*#__PURE__*/_react.default.createElement(_DeliveredTimestamp.DeliveredTimestamp, {
76
63
  args: args,
77
64
  role: current_role,
78
65
  name: current_name
79
- }));
66
+ }))
67
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
68
+ ;
80
69
  }
81
70
  };
82
-
83
71
  exports.activityStatusMiddleware = activityStatusMiddleware;