@microsoft/omnichannel-chat-widget 0.1.0-main.acb91cf → 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 (289) hide show
  1. package/README.md +7 -34
  2. package/lib/cjs/assets/Icons.js +4 -2
  3. package/lib/cjs/common/Constants.js +24 -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 +29 -23
  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 +18 -105
  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 +9 -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 +10 -34
  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 +18 -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/DefaultActivitySubscriber.js +3 -6
  31. package/lib/cjs/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +7 -12
  32. package/lib/cjs/components/livechatwidget/common/ChatAdapterShim.js +14 -20
  33. package/lib/cjs/components/livechatwidget/common/Deferred.js +6 -11
  34. package/lib/cjs/components/livechatwidget/common/authHelper.js +4 -19
  35. package/lib/cjs/components/livechatwidget/common/createAdapter.js +2 -13
  36. package/lib/cjs/components/livechatwidget/common/createFooter.js +0 -10
  37. package/lib/cjs/components/livechatwidget/common/createInternetConnectionChangeHandler.js +2 -14
  38. package/lib/cjs/components/livechatwidget/common/createMarkdown.js +16 -24
  39. package/lib/cjs/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +14 -0
  40. package/lib/cjs/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +119 -48
  41. package/lib/cjs/components/livechatwidget/common/disposeTelemetryLoggers.js +0 -3
  42. package/lib/cjs/components/livechatwidget/common/endChat.js +71 -50
  43. package/lib/cjs/components/livechatwidget/common/getGeneralStylesForButton.js +0 -6
  44. package/lib/cjs/components/livechatwidget/common/initCallingSdk.js +7 -16
  45. package/lib/cjs/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -8
  46. package/lib/cjs/components/livechatwidget/common/initWebChatComposer.js +40 -66
  47. package/lib/cjs/components/livechatwidget/common/reconnectChatHelper.js +79 -152
  48. package/lib/cjs/components/livechatwidget/common/registerTelemetryLoggers.js +4 -17
  49. package/lib/cjs/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +2 -11
  50. package/lib/cjs/components/livechatwidget/common/shareObservable.js +4 -8
  51. package/lib/cjs/components/livechatwidget/common/startChat.js +168 -128
  52. package/lib/cjs/components/livechatwidget/common/startProactiveChat.js +0 -8
  53. package/lib/cjs/components/livechatwidget/common/updateSessionDataForTelemetry.js +2 -11
  54. package/lib/cjs/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  55. package/lib/cjs/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +227 -252
  56. package/lib/cjs/components/loadingpanestateful/LoadingPaneStateful.js +26 -19
  57. package/lib/cjs/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +57 -0
  58. package/lib/cjs/components/ooohpanestateful/OOOHPaneStateful.js +4 -17
  59. package/lib/cjs/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -17
  60. package/lib/cjs/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -23
  61. package/lib/cjs/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  62. package/lib/cjs/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +13 -0
  63. package/lib/cjs/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  64. package/lib/cjs/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  65. package/lib/cjs/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +10 -38
  66. package/lib/cjs/components/prechatsurveypanestateful/common/defaultStyles/defaultGeneralPreChatSurveyPaneStyleProps.js +1 -1
  67. package/lib/cjs/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +2 -32
  68. package/lib/cjs/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -24
  69. package/lib/cjs/components/webchatcontainerstateful/WebChatContainerStateful.js +21 -37
  70. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps.js +0 -7
  71. package/lib/cjs/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -6
  72. package/lib/cjs/components/webchatcontainerstateful/common/mockadapter.js +12 -27
  73. package/lib/cjs/components/webchatcontainerstateful/common/mockchatsdk.js +5 -18
  74. package/lib/cjs/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -24
  75. package/lib/cjs/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -15
  76. package/lib/cjs/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -8
  77. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +3 -5
  78. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -5
  79. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  80. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  81. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  82. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  83. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  84. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  85. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  86. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  87. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +0 -7
  88. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -5
  89. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -41
  90. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +9 -22
  91. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -61
  92. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +7 -15
  93. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -13
  94. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -16
  95. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +10 -0
  96. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +10 -0
  97. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -3
  98. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -3
  99. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +10 -0
  100. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -9
  101. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +2 -30
  102. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +7 -18
  103. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +8 -42
  104. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +4 -22
  105. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +13 -30
  106. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +3 -9
  107. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -34
  108. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +1 -10
  109. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +1 -12
  110. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -19
  111. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +1 -9
  112. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -9
  113. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +13 -34
  114. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +1 -10
  115. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +7 -11
  116. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +5 -14
  117. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -21
  118. package/lib/cjs/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -12
  119. package/lib/cjs/contexts/ChatAdapterStore.js +0 -2
  120. package/lib/cjs/contexts/ChatContextStore.js +0 -2
  121. package/lib/cjs/contexts/ChatSDKStore.js +0 -2
  122. package/lib/cjs/contexts/common/ConversationState.js +0 -1
  123. package/lib/cjs/contexts/common/LiveChatWidgetActionType.js +30 -29
  124. package/lib/cjs/contexts/common/LiveChatWidgetContextInitialState.js +12 -11
  125. package/lib/cjs/contexts/createReducer.js +154 -108
  126. package/lib/cjs/controller/componentController.js +2 -31
  127. package/lib/cjs/hooks/useChatAdapterStore.js +0 -6
  128. package/lib/cjs/hooks/useChatContextStore.js +0 -6
  129. package/lib/cjs/hooks/useChatSDKStore.js +0 -6
  130. package/lib/cjs/hooks/useDebounce.js +28 -0
  131. package/lib/cjs/hooks/useWindowDimensions.js +30 -0
  132. package/lib/cjs/index.js +0 -5
  133. package/lib/cjs/plugins/newMessageEventHandler.js +29 -36
  134. package/lib/esm/assets/Icons.js +2 -1
  135. package/lib/esm/common/Constants.js +21 -158
  136. package/lib/esm/common/KeyCodes.js +3 -3
  137. package/lib/esm/common/contextDataStore/DataStoreManager.js +3 -3
  138. package/lib/esm/common/storage/default/defaultCacheManager.js +18 -0
  139. package/lib/esm/common/storage/default/defaultClientDataStoreProvider.js +104 -0
  140. package/lib/esm/common/storage/default/defaultInMemoryDataStore.js +70 -0
  141. package/lib/esm/common/telemetry/TelemetryConstants.js +33 -20
  142. package/lib/esm/common/telemetry/TelemetryHelper.js +21 -47
  143. package/lib/esm/common/telemetry/TelemetryManager.js +3 -19
  144. package/lib/esm/common/telemetry/loggers/ariaTelemetryLogger.js +28 -24
  145. package/lib/esm/common/telemetry/loggers/consoleLogger.js +0 -5
  146. package/lib/esm/common/utils.js +18 -53
  147. package/lib/esm/components/callingcontainerstateful/CallingContainerStateful.js +8 -17
  148. package/lib/esm/components/chatbuttonstateful/ChatButtonStateful.js +2 -7
  149. package/lib/esm/components/chatbuttonstateful/common/styleProps/defaultOutOfOfficeChatButtonStyleProps.js +3 -0
  150. package/lib/esm/components/confirmationpanestateful/ConfirmationPaneStateful.js +11 -14
  151. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.js +9 -16
  152. package/lib/esm/components/emailtranscriptpanestateful/EmailTranscriptPaneStateful.spec.js +6 -6
  153. package/lib/esm/components/footerstateful/FooterStateful.js +12 -15
  154. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.js +7 -35
  155. package/lib/esm/components/footerstateful/downloadtranscriptstateful/DownloadTranscriptStateful.spec.js +6 -6
  156. package/lib/esm/components/headerstateful/HeaderStateful.js +18 -16
  157. package/lib/esm/components/livechatwidget/LiveChatWidget.js +2 -2
  158. package/lib/esm/components/livechatwidget/common/ActivityStreamHandler.js +5 -7
  159. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/DefaultActivitySubscriber.js +3 -4
  160. package/lib/esm/components/livechatwidget/common/ActivitySubscriber/PauseActivitySubscriber.js +7 -9
  161. package/lib/esm/components/livechatwidget/common/ChatAdapterShim.js +14 -16
  162. package/lib/esm/components/livechatwidget/common/Deferred.js +6 -9
  163. package/lib/esm/components/livechatwidget/common/authHelper.js +4 -12
  164. package/lib/esm/components/livechatwidget/common/createAdapter.js +4 -6
  165. package/lib/esm/components/livechatwidget/common/createFooter.js +0 -1
  166. package/lib/esm/components/livechatwidget/common/createInternetConnectionChangeHandler.js +2 -5
  167. package/lib/esm/components/livechatwidget/common/createMarkdown.js +18 -18
  168. package/lib/esm/components/livechatwidget/common/defaultProps/defaultScrollBarProps.js +7 -0
  169. package/lib/esm/components/livechatwidget/common/defaultProps/dummyDefaultProps.js +120 -34
  170. package/lib/esm/components/livechatwidget/common/endChat.js +73 -35
  171. package/lib/esm/components/livechatwidget/common/getGeneralStylesForButton.js +0 -2
  172. package/lib/esm/components/livechatwidget/common/initCallingSdk.js +9 -11
  173. package/lib/esm/components/livechatwidget/common/initConfirmationPropsComposer.js +4 -5
  174. package/lib/esm/components/livechatwidget/common/initWebChatComposer.js +42 -31
  175. package/lib/esm/components/livechatwidget/common/reconnectChatHelper.js +77 -130
  176. package/lib/esm/components/livechatwidget/common/registerTelemetryLoggers.js +4 -9
  177. package/lib/esm/components/livechatwidget/common/setPostChatContextAndLoadSurvey.js +4 -3
  178. package/lib/esm/components/livechatwidget/common/shareObservable.js +4 -7
  179. package/lib/esm/components/livechatwidget/common/startChat.js +167 -99
  180. package/lib/esm/components/livechatwidget/common/updateSessionDataForTelemetry.js +4 -2
  181. package/lib/esm/components/livechatwidget/interfaces/IScrollBarProps.js +1 -0
  182. package/lib/esm/components/livechatwidget/livechatwidgetstateful/LiveChatWidgetStateful.js +229 -186
  183. package/lib/esm/components/loadingpanestateful/LoadingPaneStateful.js +26 -7
  184. package/lib/esm/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.js +50 -0
  185. package/lib/esm/components/ooohpanestateful/OOOHPaneStateful.js +4 -5
  186. package/lib/esm/components/postchatloadingpanestateful/PostChatLoadingPaneStateful.js +4 -5
  187. package/lib/esm/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.js +32 -11
  188. package/lib/esm/components/postchatsurveypanestateful/common/defaultStyleProps/defaultgeneralPostChatSurveyPaneStyleProps.js +1 -1
  189. package/lib/esm/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.js +6 -0
  190. package/lib/esm/components/postchatsurveypanestateful/enums/PostChatSurveyMode.js +0 -1
  191. package/lib/esm/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.js +1 -0
  192. package/lib/esm/components/prechatsurveypanestateful/PreChatSurveyPaneStateful.js +12 -22
  193. package/lib/esm/components/prechatsurveypanestateful/common/defaultStyles/defaultGeneralPreChatSurveyPaneStyleProps.js +1 -1
  194. package/lib/esm/components/proactivechatpanestateful/ProactiveChatPaneStateful.js +4 -8
  195. package/lib/esm/components/reconnectchatpanestateful/ReconnectChatPaneStateful.js +6 -6
  196. package/lib/esm/components/webchatcontainerstateful/WebChatContainerStateful.js +19 -11
  197. package/lib/esm/components/webchatcontainerstateful/common/defaultProps/defaultWebChatStatefulProps.js +2 -2
  198. package/lib/esm/components/webchatcontainerstateful/common/mockadapter.js +12 -19
  199. package/lib/esm/components/webchatcontainerstateful/common/mockchatsdk.js +5 -14
  200. package/lib/esm/components/webchatcontainerstateful/common/utils/BrowserInfo.js +2 -16
  201. package/lib/esm/components/webchatcontainerstateful/common/utils/FileAttachmentIconManager.js +5 -5
  202. package/lib/esm/components/webchatcontainerstateful/common/utils/isMaskingFromCustomer.js +5 -6
  203. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/BotMagicCodeStore.js +3 -3
  204. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/WebChatStoreLoader.js +3 -3
  205. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/BrowserVendor.js +0 -1
  206. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineActivityType.js +0 -1
  207. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/DirectLineSenderRole.js +0 -1
  208. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/MessageType.js +0 -1
  209. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationLevel.js +0 -1
  210. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/NotificationScenarios.js +0 -1
  211. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/SendStatus.js +0 -1
  212. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/enums/WebChatActionType.js +0 -1
  213. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsEgressMiddleware.js +2 -5
  214. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/adaptermiddlewares/formatTagsIngressMiddleware.js +0 -4
  215. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityMiddleware.js +17 -26
  216. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/activityStatusMiddleware.js +11 -14
  217. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/attachmentMiddleware.js +25 -39
  218. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/avatarMiddleware.js +9 -8
  219. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.js +2 -9
  220. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/cardActionMiddleware.spec.js +0 -14
  221. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.js +3 -0
  222. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.js +3 -0
  223. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampFailedStyles.js +2 -1
  224. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultTimestampRetryStyles.js +2 -1
  225. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.js +3 -0
  226. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/groupActivitiesMiddleware.js +3 -7
  227. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/messageTimestampMiddleware.js +4 -28
  228. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/DeliveredTimestamp.js +8 -9
  229. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/NotDeliveredTimestamp.js +9 -28
  230. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.js +5 -14
  231. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/typingIndicatorMiddleware.js +15 -19
  232. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentProcessingMiddleware.js +5 -8
  233. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/attachmentUploadValidatorMiddleware.js +6 -29
  234. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/channelDataMiddleware.js +3 -7
  235. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/conversationEndMiddleware.js +3 -8
  236. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/dataMaskingMiddleware.js +17 -14
  237. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/gifUploadMiddleware.js +3 -7
  238. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlPlayerMiddleware.js +3 -7
  239. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/htmlTextMiddleware.js +15 -27
  240. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/maxMessageSizeValidator.js +3 -5
  241. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/preProcessingMiddleware.js +9 -9
  242. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/middlewares/storemiddlewares/sanitizationMiddleware.js +7 -9
  243. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/notification/NotificationHandler.js +1 -13
  244. package/lib/esm/components/webchatcontainerstateful/webchatcontroller/webchattelemetry/WebChatLogger.js +0 -5
  245. package/lib/esm/contexts/ChatAdapterStore.js +2 -1
  246. package/lib/esm/contexts/ChatContextStore.js +2 -1
  247. package/lib/esm/contexts/ChatSDKStore.js +2 -1
  248. package/lib/esm/contexts/common/ConversationState.js +0 -1
  249. package/lib/esm/contexts/common/LiveChatWidgetActionType.js +30 -29
  250. package/lib/esm/contexts/common/LiveChatWidgetContextInitialState.js +12 -7
  251. package/lib/esm/contexts/createReducer.js +154 -105
  252. package/lib/esm/controller/componentController.js +3 -2
  253. package/lib/esm/hooks/useChatAdapterStore.js +0 -4
  254. package/lib/esm/hooks/useChatContextStore.js +0 -4
  255. package/lib/esm/hooks/useChatSDKStore.js +0 -4
  256. package/lib/esm/hooks/useDebounce.js +22 -0
  257. package/lib/esm/hooks/useWindowDimensions.js +23 -0
  258. package/lib/esm/plugins/newMessageEventHandler.js +29 -26
  259. package/lib/types/assets/Icons.d.ts +1 -0
  260. package/lib/types/common/Constants.d.ts +14 -0
  261. package/lib/types/common/storage/default/defaultCacheManager.d.ts +4 -0
  262. package/lib/types/common/storage/default/defaultClientDataStoreProvider.d.ts +2 -0
  263. package/lib/types/common/storage/default/defaultInMemoryDataStore.d.ts +6 -0
  264. package/lib/types/common/telemetry/TelemetryConstants.d.ts +18 -4
  265. package/lib/types/common/telemetry/definitions/Contracts.d.ts +4 -4
  266. package/lib/types/common/telemetry/definitions/Payload.d.ts +1 -0
  267. package/lib/types/common/telemetry/interfaces/ITelemetryConfig.d.ts +4 -0
  268. package/lib/types/components/livechatwidget/common/defaultProps/defaultScrollBarProps.d.ts +2 -0
  269. package/lib/types/components/livechatwidget/common/reconnectChatHelper.d.ts +5 -7
  270. package/lib/types/components/livechatwidget/common/startChat.d.ts +5 -4
  271. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetControlProps.d.ts +3 -1
  272. package/lib/types/components/livechatwidget/interfaces/ILiveChatWidgetProps.d.ts +4 -2
  273. package/lib/types/components/livechatwidget/interfaces/IScrollBarProps.d.ts +22 -0
  274. package/lib/types/components/loadingpanestateful/common/errorUIStyleProps/errorUILoadingPaneStyleProps.d.ts +2 -0
  275. package/lib/types/components/postchatsurveypanestateful/PostChatSurveyPaneStateful.d.ts +2 -2
  276. package/lib/types/components/postchatsurveypanestateful/enums/CustomerVoiceEvents.d.ts +5 -0
  277. package/lib/types/components/postchatsurveypanestateful/interfaces/IPostChatSurveyPaneStatefulProps.d.ts +4 -0
  278. package/lib/types/components/reconnectchatpanestateful/interfaces/IReconnectChatPaneStatefulProps.d.ts +0 -1
  279. package/lib/types/components/webchatcontainerstateful/interfaces/IRenderingMiddlewareProps.d.ts +4 -1
  280. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultReceivedMessageAnchorStyles.d.ts +2 -0
  281. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultSystemMessageBoxStyles.d.ts +3 -0
  282. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/defaultStyles/defaultUserMessageBoxStyles.d.ts +3 -0
  283. package/lib/types/components/webchatcontainerstateful/webchatcontroller/middlewares/renderingmiddlewares/timestamps/SendingTimestamp.d.ts +1 -1
  284. package/lib/types/contexts/common/ILiveChatWidgetContext.d.ts +3 -2
  285. package/lib/types/contexts/common/LiveChatWidgetActionType.d.ts +30 -28
  286. package/lib/types/contexts/common/LiveChatWidgetContextInitialState.d.ts +1 -2
  287. package/lib/types/hooks/useDebounce.d.ts +3 -0
  288. package/lib/types/hooks/useWindowDimensions.d.ts +4 -0
  289. package/package.json +3 -3
@@ -1,321 +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
-
7
6
  _defineProperty(Constants, "magicCodeBroadcastChannel", "MagicCodeChannel");
8
-
9
7
  _defineProperty(Constants, "magicCodeResponseBroadcastChannel", "MagicCodeResponseChannel");
10
-
11
8
  _defineProperty(Constants, "systemMessageTag", "system");
12
-
13
9
  _defineProperty(Constants, "userMessageTag", "user");
14
-
15
10
  _defineProperty(Constants, "historyMessageTag", "history");
16
-
17
11
  _defineProperty(Constants, "agentEndConversationMessageTag", "agentendconversation");
18
-
19
12
  _defineProperty(Constants, "supervisorForceCloseMessageTag", "supervisorforceclosedconversation");
20
-
21
13
  _defineProperty(Constants, "receivedMessageClassName", "ms_lcw_webchat_received_message");
22
-
23
14
  _defineProperty(Constants, "sentMessageClassName", "ms_lcw_webchat_sent_message");
24
-
25
15
  _defineProperty(Constants, "webchatChannelId", "webchat");
26
-
27
16
  _defineProperty(Constants, "markdown", "markdown");
28
-
29
17
  _defineProperty(Constants, "actionType", "actionType");
30
-
31
18
  _defineProperty(Constants, "String", "string");
32
-
33
19
  _defineProperty(Constants, "ChatMessagesJson", "chatMessagesJson");
34
-
35
20
  _defineProperty(Constants, "truePascal", "True");
36
-
37
21
  _defineProperty(Constants, "true", "true");
38
-
39
22
  _defineProperty(Constants, "false", "false");
40
-
41
23
  _defineProperty(Constants, "maximumUnreadMessageCount", 99);
42
-
43
24
  _defineProperty(Constants, "channelIdKey", "ChannelId-");
44
-
45
25
  _defineProperty(Constants, "ChannelId", "lcw");
46
-
47
26
  _defineProperty(Constants, "CustomerTag", "FromCustomer");
48
-
49
27
  _defineProperty(Constants, "GifContentType", "image/gif");
50
-
51
28
  _defineProperty(Constants, "video", "video");
52
-
53
29
  _defineProperty(Constants, "audio", "audio");
54
-
55
30
  _defineProperty(Constants, "controlsList", "controlsList");
56
-
57
31
  _defineProperty(Constants, "nodownload", "nodownload");
58
-
59
32
  _defineProperty(Constants, "activity", "activity");
60
-
61
33
  _defineProperty(Constants, "payload", "payload");
62
-
63
34
  _defineProperty(Constants, "text", "text");
64
-
65
35
  _defineProperty(Constants, "blank", "_blank");
66
-
67
36
  _defineProperty(Constants, "visitorIdPrefix", "8:");
68
-
69
37
  _defineProperty(Constants, "left", "left");
70
-
71
38
  _defineProperty(Constants, "queuePositionMessageTag", "queueposition");
72
-
73
39
  _defineProperty(Constants, "averageWaitTimeMessageTag", "averagewaittime");
74
-
75
40
  _defineProperty(Constants, "message", "message");
76
-
77
41
  _defineProperty(Constants, "hiddenTag", "Hidden");
78
-
79
42
  _defineProperty(Constants, "prefixTimestampTag", "ServerMessageTimestamp_");
80
-
81
43
  _defineProperty(Constants, "acsChannel", "ACS_CHANNEL");
82
-
83
44
  _defineProperty(Constants, "publicMessageTag", "public");
84
-
85
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"]);
86
-
87
46
  _defineProperty(Constants, "maxUploadFileSize", "500000");
88
-
89
- _defineProperty(Constants, "imageRegex", /(\.)(jpeg|jpg|jiff|png|gif|bmp)$/i);
90
-
91
- _defineProperty(Constants, "audioMediaRegex", /(\.)(aac|aiff|alac|flac|mp2|mp3|pcm|wav|wma)$/i);
92
-
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);
93
49
  _defineProperty(Constants, "videoMediaRegex", /(\.)(avchd|avi|flv|mpe|mpeg|mpg|mpv|mp4|m4p|m4v|mov|qt|swf|webm|wmv)$/i);
94
-
95
50
  _defineProperty(Constants, "chromeSupportedInlineMediaRegex", /(\.)(aac|mp3|wav|mp4)$/i);
96
-
97
51
  _defineProperty(Constants, "firefoxSupportedInlineMediaRegex", /(\.)(aac|flac|mp3|wav|mp4|mov)$/i);
98
-
99
52
  _defineProperty(Constants, "CallAdded", "callAdded");
100
-
101
53
  _defineProperty(Constants, "LocalVideoStreamAdded", "localVideoStreamAdded");
102
-
103
54
  _defineProperty(Constants, "LocalVideoStreamRemoved", "localVideoStreamRemoved");
104
-
105
55
  _defineProperty(Constants, "RemoteVideoStreamAdded", "remoteVideoStreamAdded");
106
-
107
56
  _defineProperty(Constants, "RemoteVideoStreamRemoved", "remoteVideoStreamRemoved");
108
-
109
57
  _defineProperty(Constants, "CallDisconnected", "callDisconnected");
110
-
111
58
  _defineProperty(Constants, "IncomingCallEnded", "incomingCallEnded");
112
-
113
59
  _defineProperty(Constants, "VoiceVideoInitialize", "voiceVideoInitialize");
114
-
115
60
  _defineProperty(Constants, "VoiceVideoInitializeException", "voiceVideoInitializeOnException");
116
-
117
61
  _defineProperty(Constants, "VoiceVideoLoading", "voiceVideoLoading");
118
-
119
62
  _defineProperty(Constants, "VoiceVideoNotLoaded", "voiceVideoNotLoaded");
120
-
121
63
  _defineProperty(Constants, "VoiceVideoLoadingException", "voiceVideoLoadingOnException");
122
-
123
64
  _defineProperty(Constants, "VoiceVideoAcceptCallException", "voiceVideoAcceptCallOnException");
124
-
125
65
  _defineProperty(Constants, "VoiceVideoAcceptCallWithVideoException", "voiceVideoAcceptCallWithVideoException");
126
-
127
66
  _defineProperty(Constants, "defaultDownloadTranscriptError", "Download transcript failed.");
128
-
129
67
  _defineProperty(Constants, "ProactiveChatInviteTimeoutInMs", 60000);
130
-
131
68
  _defineProperty(Constants, "InputSubmit", "InputSubmit");
132
-
133
69
  _defineProperty(Constants, "ReconnectIdAttributeName", "oc.reconnectid");
134
-
135
70
  _defineProperty(Constants, "LiveChatWidget", "LiveChatWidgetNew");
136
-
137
71
  _defineProperty(Constants, "GuidPattern", "xx-x-4m-ym-xxx");
138
-
139
72
  _defineProperty(Constants, "Default", "default");
140
-
141
73
  _defineProperty(Constants, "Zero", "zero");
142
-
143
74
  _defineProperty(Constants, "Title", "title");
144
-
145
75
  _defineProperty(Constants, "Target", "target");
146
-
147
76
  _defineProperty(Constants, "Blank", "_blank");
148
-
149
77
  _defineProperty(Constants, "TargetRelationship", "rel");
150
-
151
78
  _defineProperty(Constants, "TargetRelationshipAttributes", "noopener noreferrer");
152
-
153
79
  _defineProperty(Constants, "OpenLinkIconCssClass", "webchat__markdown__external-link-icon");
154
-
155
80
  _defineProperty(Constants, "internetConnectionTestUrl", "https://ocsdk-prod.azureedge.net/public/connecttest.txt");
156
-
157
81
  _defineProperty(Constants, "internetConnectionTestUrlText", "Omnichannel Connect Test");
158
-
159
82
  _defineProperty(Constants, "ChatWidgetStateChangedPrefix", "ChatWidgetStateChanged");
160
-
161
83
  _defineProperty(Constants, "PostChatLoadingDurationInMs", 2000);
162
-
163
84
  _defineProperty(Constants, "BrowserUnloadConfirmationMessage", "Do you want to leave chat?");
164
-
85
+ _defineProperty(Constants, "CacheTtlInMinutes", 15);
165
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);
166
87
  export class HtmlIdNames {}
167
-
168
88
  _defineProperty(HtmlIdNames, "MSLiveChatWidget", "MSLiveChatWidget");
169
-
170
89
  export class HtmlClassNames {}
171
-
172
90
  _defineProperty(HtmlClassNames, "webChatBannerCloseButton", "webchat__toast__dismissButton");
173
-
174
91
  _defineProperty(HtmlClassNames, "webChatBannerExpandButton", "webchat__toaster__expandIcon");
175
-
176
92
  export class HtmlElementSelectors {}
177
-
178
93
  _defineProperty(HtmlElementSelectors, "sendBoxSelector", "textarea[data-id=\"webchat-sendbox-input\"]");
179
-
180
94
  export class HtmlAttributeNames {}
181
-
182
95
  _defineProperty(HtmlAttributeNames, "role", "role");
183
-
184
96
  _defineProperty(HtmlAttributeNames, "navigation", "navigation");
185
-
186
97
  _defineProperty(HtmlAttributeNames, "ariaLabel", "aria-label");
187
-
188
98
  _defineProperty(HtmlAttributeNames, "ariaLive", "aria-live");
189
-
190
99
  _defineProperty(HtmlAttributeNames, "ariaDisabled", "aria-disabled");
191
-
192
100
  _defineProperty(HtmlAttributeNames, "form", "form");
193
-
194
101
  _defineProperty(HtmlAttributeNames, "ariaLabelledby", "aria-labelledby");
195
-
196
102
  _defineProperty(HtmlAttributeNames, "tabindex", "tabindex");
197
-
198
103
  _defineProperty(HtmlAttributeNames, "ariaRequired", "aria-required");
199
-
200
104
  _defineProperty(HtmlAttributeNames, "ariaDesribedby", "aria-describedby");
201
-
202
105
  _defineProperty(HtmlAttributeNames, "ariaHidden", "aria-hidden");
203
-
204
106
  _defineProperty(HtmlAttributeNames, "disabled", "disabled");
205
-
206
107
  _defineProperty(HtmlAttributeNames, "hidden", "hidden");
207
-
208
108
  _defineProperty(HtmlAttributeNames, "download", "download");
209
-
210
109
  _defineProperty(HtmlAttributeNames, "href", "href");
211
-
212
110
  _defineProperty(HtmlAttributeNames, "region", "region");
213
-
214
111
  _defineProperty(HtmlAttributeNames, "button", "button");
215
-
216
112
  _defineProperty(HtmlAttributeNames, "input", "Input");
217
-
218
113
  _defineProperty(HtmlAttributeNames, "style", "style");
219
-
220
114
  _defineProperty(HtmlAttributeNames, "head", "head");
221
-
222
115
  _defineProperty(HtmlAttributeNames, "type", "type");
223
-
224
116
  _defineProperty(HtmlAttributeNames, "csstext", "text/css");
225
-
226
117
  _defineProperty(HtmlAttributeNames, "listItem", "LI");
227
-
228
118
  _defineProperty(HtmlAttributeNames, "unorderedList", "UL");
229
-
230
119
  _defineProperty(HtmlAttributeNames, "div", "div");
231
-
232
120
  _defineProperty(HtmlAttributeNames, "aTagName", "a");
233
-
234
121
  _defineProperty(HtmlAttributeNames, "noopenerTag", "noopener");
235
-
236
122
  _defineProperty(HtmlAttributeNames, "noreferrerTag", "noreferrer");
237
-
238
123
  _defineProperty(HtmlAttributeNames, "adaptiveCardClassName", "ac-adaptiveCard");
239
-
240
124
  _defineProperty(HtmlAttributeNames, "adaptiveCardTextBlockClassName", "ac-textBlock");
241
-
242
125
  _defineProperty(HtmlAttributeNames, "adaptiveCardToggleInputClassName", "ac-toggleInput");
243
-
126
+ _defineProperty(HtmlAttributeNames, "adaptiveCardActionSetClassName", "ac-actionSet");
244
127
  export class WebChatMiddlewareConstants {}
245
-
246
128
  _defineProperty(WebChatMiddlewareConstants, "nextVisibleActivity", "nextVisibleActivity");
247
-
248
129
  _defineProperty(WebChatMiddlewareConstants, "timeBetweenTimestampGroups", 300000);
249
-
250
130
  _defineProperty(WebChatMiddlewareConstants, "maxTextLength", 6000);
251
-
252
131
  _defineProperty(WebChatMiddlewareConstants, "adaptiveCard", "AdaptiveCard");
253
-
254
132
  export class MimeTypes {}
255
-
256
133
  _defineProperty(MimeTypes, "UnknownFileType", "application/octet-stream");
257
-
258
134
  export class LocaleConstants {}
259
-
260
135
  _defineProperty(LocaleConstants, "RTL_LOCALES", ["1025", "1037"]);
261
-
262
136
  export let ElementType;
263
-
264
137
  (function (ElementType) {
265
138
  ElementType["CallingContainerSDK"] = "CallingContainerSDK";
266
139
  })(ElementType || (ElementType = {}));
267
-
268
140
  export let ChatSDKError;
269
-
270
141
  (function (ChatSDKError) {
271
142
  ChatSDKError["WidgetUseOutsideOperatingHour"] = "WidgetUseOutsideOperatingHour";
272
143
  })(ChatSDKError || (ChatSDKError = {}));
273
-
274
144
  export let EnvironmentVersion;
275
-
276
145
  (function (EnvironmentVersion) {
277
146
  EnvironmentVersion["prod"] = "prod";
278
147
  EnvironmentVersion["dogfood"] = "df";
279
148
  EnvironmentVersion["int"] = "int";
280
149
  EnvironmentVersion["test"] = "test";
281
150
  })(EnvironmentVersion || (EnvironmentVersion = {}));
282
-
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 = {}));
283
165
  export class TranscriptConstants {}
284
-
285
166
  _defineProperty(TranscriptConstants, "ChatTranscriptsBodyColor", "#F5F5F5");
286
-
287
167
  _defineProperty(TranscriptConstants, "TranscriptMessageEmojiMessageType", "http://schema.skype.com/emoji");
288
-
289
168
  _defineProperty(TranscriptConstants, "ChatTranscriptDownloadFile", "ChatTranscripts.html");
290
-
291
169
  _defineProperty(TranscriptConstants, "DefaultFileAttachmentName", "Untitled.txt");
292
-
293
170
  _defineProperty(TranscriptConstants, "CustomerDialogColor", "#E8E8E8");
294
-
295
171
  _defineProperty(TranscriptConstants, "CustomerFontColor", "black");
296
-
297
172
  _defineProperty(TranscriptConstants, "AdaptiveCardType", "adaptivecard");
298
-
299
173
  _defineProperty(TranscriptConstants, "InternalMode", "internal");
300
-
301
174
  _defineProperty(TranscriptConstants, "AgentDialogColor", "#2266E3");
302
-
303
175
  _defineProperty(TranscriptConstants, "AgentFontColor", "white");
304
-
305
176
  export class AriaTelemetryConstants {}
306
-
307
177
  _defineProperty(AriaTelemetryConstants, "GERMANY_ENDPOINT", "https://de.pipe.aria.microsoft.com/Collector/3.0/");
308
-
309
178
  _defineProperty(AriaTelemetryConstants, "GCCH_ENDPOINT", "https://tb.pipe.aria.microsoft.com/Collector/3.0/");
310
-
311
179
  _defineProperty(AriaTelemetryConstants, "DOD_ENDPOINT", "https://pf.pipe.aria.microsoft.com/Collector/3.0");
312
-
313
180
  _defineProperty(AriaTelemetryConstants, "EUROPE_ENDPOINT", "https://eu-mobile.events.data.microsoft.com/Collector/3.0/");
314
-
315
181
  _defineProperty(AriaTelemetryConstants, "MOONCAKE_ENDPOINT", "");
316
-
317
182
  _defineProperty(AriaTelemetryConstants, "Public", "Public");
318
-
319
183
  _defineProperty(AriaTelemetryConstants, "EU", "Europe");
320
-
321
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
+ };