@microsoft/omnichannel-chat-widget 0.1.0-main.a7e4e7d → 0.1.0-main.ada8ec0

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