@microsoft/omnichannel-chat-widget 1.0.2-main.118265f → 1.0.2-main.97e373e

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.
@@ -60,6 +60,8 @@ exports.BroadcastEvent = BroadcastEvent;
60
60
  BroadcastEvent["BotAuthConfigRequest"] = "BotAuthConfigRequest";
61
61
  BroadcastEvent["BotAuthConfigResponse"] = "BotAuthConfigResponse";
62
62
  BroadcastEvent["HideChatVisibilityChangeEvent"] = "hideChatVisibilityChangeEvent";
63
+ BroadcastEvent["UpdateSessionDataForTelemetry"] = "UpdateSessionDataForTelemetry";
64
+ BroadcastEvent["UpdateConversationDataForTelemetry"] = "UpdateConversationDataForTelemetry";
63
65
  })(BroadcastEvent || (exports.BroadcastEvent = BroadcastEvent = {}));
64
66
  let TelemetryEvent;
65
67
  exports.TelemetryEvent = TelemetryEvent;
@@ -4,6 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.updateSessionDataForTelemetry = void 0;
7
+ var _TelemetryConstants = require("../../../common/telemetry/TelemetryConstants");
8
+ var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
7
9
  var _LiveChatWidgetActionType = require("../../../contexts/common/LiveChatWidgetActionType");
8
10
  var _TelemetryHelper = require("../../../common/telemetry/TelemetryHelper");
9
11
  var _TelemetryManager = require("../../../common/telemetry/TelemetryManager");
@@ -17,6 +19,12 @@ const updateSessionDataForTelemetry = async (chatSDK, dispatch) => {
17
19
  type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_TELEMETRY_DATA,
18
20
  payload: telemetryData
19
21
  });
22
+ _omnichannelChatComponents.BroadcastService.postMessage({
23
+ eventName: _TelemetryConstants.BroadcastEvent.UpdateSessionDataForTelemetry,
24
+ payload: {
25
+ chatSession
26
+ }
27
+ });
20
28
  await updateConversationDataForTelemetry(chatSDK, dispatch);
21
29
  }
22
30
  };
@@ -32,5 +40,11 @@ const updateConversationDataForTelemetry = async (chatSDK, dispatch) => {
32
40
  type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_TELEMETRY_DATA,
33
41
  payload: telemetryData
34
42
  });
43
+ _omnichannelChatComponents.BroadcastService.postMessage({
44
+ eventName: _TelemetryConstants.BroadcastEvent.UpdateConversationDataForTelemetry,
45
+ payload: {
46
+ liveWorkItem
47
+ }
48
+ });
35
49
  }
36
50
  };
@@ -6,20 +6,22 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = exports.LiveChatWidgetStateful = void 0;
7
7
  var _TelemetryConstants = require("../../../common/telemetry/TelemetryConstants");
8
8
  var _omnichannelChatComponents = require("@microsoft/omnichannel-chat-components");
9
+ var _Constants = require("../../../common/Constants");
9
10
  var _react = require("@fluentui/react");
10
11
  var _react2 = _interopRequireWildcard(require("react"));
11
12
  var _startChat = require("../common/startChat");
12
13
  var _utils = require("../../../common/utils");
13
14
  var _endChat = require("../common/endChat");
15
+ var _reconnectChatHelper = require("../common/reconnectChatHelper");
14
16
  var _componentController = require("../../../controller/componentController");
15
17
  var _ActivityStreamHandler = require("../common/ActivityStreamHandler");
16
18
  var _CallingContainerStateful = _interopRequireDefault(require("../../callingcontainerstateful/CallingContainerStateful"));
17
19
  var _ChatButtonStateful = _interopRequireDefault(require("../../chatbuttonstateful/ChatButtonStateful"));
18
20
  var _botframeworkWebchat = require("botframework-webchat");
19
21
  var _ConfirmationPaneStateful = _interopRequireDefault(require("../../confirmationpanestateful/ConfirmationPaneStateful"));
22
+ var _ConversationEndEntity = require("../../../contexts/common/ConversationEndEntity");
20
23
  var _ConversationState = require("../../../contexts/common/ConversationState");
21
24
  var _DataStoreManager = require("../../../common/contextDataStore/DataStoreManager");
22
- var _Constants = require("../../../common/Constants");
23
25
  var _EmailTranscriptPaneStateful = _interopRequireDefault(require("../../emailtranscriptpanestateful/EmailTranscriptPaneStateful"));
24
26
  var _HeaderStateful = _interopRequireDefault(require("../../headerstateful/HeaderStateful"));
25
27
  var _LiveChatWidgetActionType = require("../../../contexts/common/LiveChatWidgetActionType");
@@ -40,6 +42,8 @@ var _defaultScrollBarProps = require("../common/defaultProps/defaultScrollBarPro
40
42
  var _defaultWebChatContainerStatefulProps = require("../../webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps");
41
43
  var _disposeTelemetryLoggers = require("../common/disposeTelemetryLoggers");
42
44
  var _getGeneralStylesForButton = require("../common/getGeneralStylesForButton");
45
+ var _agentEndConversationHelper = require("../common/agentEndConversationHelper");
46
+ var _chatDisconnectHelper = require("../common/chatDisconnectHelper");
43
47
  var _initCallingSdk = require("../common/initCallingSdk");
44
48
  var _initConfirmationPropsComposer = require("../common/initConfirmationPropsComposer");
45
49
  var _initWebChatComposer = require("../common/initWebChatComposer");
@@ -50,10 +54,6 @@ var _startProactiveChat = require("../common/startProactiveChat");
50
54
  var _useChatAdapterStore = _interopRequireDefault(require("../../../hooks/useChatAdapterStore"));
51
55
  var _useChatContextStore = _interopRequireDefault(require("../../../hooks/useChatContextStore"));
52
56
  var _useChatSDKStore = _interopRequireDefault(require("../../../hooks/useChatSDKStore"));
53
- var _ConversationEndEntity = require("../../../contexts/common/ConversationEndEntity");
54
- var _agentEndConversationHelper = require("../common/agentEndConversationHelper");
55
- var _reconnectChatHelper = require("../common/reconnectChatHelper");
56
- var _chatDisconnectHelper = require("../common/chatDisconnectHelper");
57
57
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
58
58
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
59
59
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -264,16 +264,12 @@ const LiveChatWidgetStateful = props => {
264
264
  _omnichannelChatComponents.BroadcastService.getMessageByEventName(_TelemetryConstants.BroadcastEvent.HideChatVisibilityChangeEvent).subscribe(async event => {
265
265
  var _event$payload;
266
266
  if ((event === null || event === void 0 ? void 0 : (_event$payload = event.payload) === null || _event$payload === void 0 ? void 0 : _event$payload.isChatHidden) !== undefined) {
267
- var _event$payload2, _props$controlProps10;
268
- _TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.INFO, {
269
- Event: _TelemetryConstants.TelemetryEvent.ChatVisibilityChanged,
270
- Description: "Chat visibility changed to " + (event === null || event === void 0 ? void 0 : (_event$payload2 = event.payload) === null || _event$payload2 === void 0 ? void 0 : _event$payload2.isChatHidden)
271
- });
267
+ var _props$controlProps10;
272
268
  if ((_props$controlProps10 = props.controlProps) !== null && _props$controlProps10 !== void 0 && _props$controlProps10.hideStartChatButton) {
273
- var _event$payload3;
269
+ var _event$payload2;
274
270
  dispatch({
275
271
  type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_MINIMIZED,
276
- payload: event === null || event === void 0 ? void 0 : (_event$payload3 = event.payload) === null || _event$payload3 === void 0 ? void 0 : _event$payload3.isChatHidden
272
+ payload: event === null || event === void 0 ? void 0 : (_event$payload2 = event.payload) === null || _event$payload2 === void 0 ? void 0 : _event$payload2.isChatHidden
277
273
  });
278
274
  }
279
275
  const dateNow = Date.now();
@@ -7,6 +7,7 @@ exports.default = exports.PreChatSurveyPaneStateful = void 0;
7
7
  var _Constants = require("../../common/Constants");
8
8
  var _TelemetryConstants = require("../../common/telemetry/TelemetryConstants");
9
9
  var _react = _interopRequireWildcard(require("react"));
10
+ var _markdownIt = _interopRequireDefault(require("markdown-it"));
10
11
  var _utils = require("../../common/utils");
11
12
  var _ConversationState = require("../../contexts/common/ConversationState");
12
13
  var _LiveChatWidgetActionType = require("../../contexts/common/LiveChatWidgetActionType");
@@ -21,6 +22,8 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
21
22
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
22
23
  const PreChatSurveyPaneStateful = props => {
23
24
  var _surveyProps$stylePro, _props$surveyProps, _props$surveyProps$co;
25
+ // Set MarkDown global variable to be used for prechat adaptive cards
26
+ window["markdownit"] = _markdownIt.default;
24
27
  const [state, dispatch] = (0, _useChatContextStore.default)();
25
28
  const {
26
29
  surveyProps,
@@ -55,6 +55,8 @@ export let BroadcastEvent;
55
55
  BroadcastEvent["BotAuthConfigRequest"] = "BotAuthConfigRequest";
56
56
  BroadcastEvent["BotAuthConfigResponse"] = "BotAuthConfigResponse";
57
57
  BroadcastEvent["HideChatVisibilityChangeEvent"] = "hideChatVisibilityChangeEvent";
58
+ BroadcastEvent["UpdateSessionDataForTelemetry"] = "UpdateSessionDataForTelemetry";
59
+ BroadcastEvent["UpdateConversationDataForTelemetry"] = "UpdateConversationDataForTelemetry";
58
60
  })(BroadcastEvent || (BroadcastEvent = {}));
59
61
  export let TelemetryEvent;
60
62
  (function (TelemetryEvent) {
@@ -1,3 +1,5 @@
1
+ import { BroadcastEvent } from "../../../common/telemetry/TelemetryConstants";
2
+ import { BroadcastService } from "@microsoft/omnichannel-chat-components";
1
3
  import { LiveChatWidgetActionType } from "../../../contexts/common/LiveChatWidgetActionType";
2
4
  import { TelemetryHelper } from "../../../common/telemetry/TelemetryHelper";
3
5
  import { TelemetryManager } from "../../../common/telemetry/TelemetryManager";
@@ -12,6 +14,12 @@ export const updateSessionDataForTelemetry = async (chatSDK, dispatch) => {
12
14
  type: LiveChatWidgetActionType.SET_TELEMETRY_DATA,
13
15
  payload: telemetryData
14
16
  });
17
+ BroadcastService.postMessage({
18
+ eventName: BroadcastEvent.UpdateSessionDataForTelemetry,
19
+ payload: {
20
+ chatSession
21
+ }
22
+ });
15
23
  await updateConversationDataForTelemetry(chatSDK, dispatch);
16
24
  }
17
25
  };
@@ -26,5 +34,11 @@ const updateConversationDataForTelemetry = async (chatSDK, dispatch) => {
26
34
  type: LiveChatWidgetActionType.SET_TELEMETRY_DATA,
27
35
  payload: telemetryData
28
36
  });
37
+ BroadcastService.postMessage({
38
+ eventName: BroadcastEvent.UpdateConversationDataForTelemetry,
39
+ payload: {
40
+ liveWorkItem
41
+ }
42
+ });
29
43
  }
30
44
  };
@@ -1,20 +1,22 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
  import { BroadcastEvent, LogLevel, TelemetryEvent } from "../../../common/telemetry/TelemetryConstants";
3
3
  import { BroadcastService, BroadcastServiceInitialize, decodeComponentString } from "@microsoft/omnichannel-chat-components";
4
+ import { Constants, E2VVOptions, LiveWorkItemState } from "../../../common/Constants";
4
5
  import { Stack } from "@fluentui/react";
5
6
  import React, { useEffect, useRef, useState } from "react";
6
7
  import { checkIfConversationStillValid, initStartChat, prepareStartChat, setPreChatAndInitiateChat } from "../common/startChat";
7
- import { createTimer, getBroadcastChannelName, getLocaleDirection, getStateFromCache, getWidgetCacheId, getWidgetEndChatEventName, isNullOrEmptyString, isUndefinedOrEmpty, getConversationDetailsCall } from "../../../common/utils";
8
+ import { createTimer, getBroadcastChannelName, getConversationDetailsCall, getLocaleDirection, getStateFromCache, getWidgetCacheId, getWidgetEndChatEventName, isNullOrEmptyString, isUndefinedOrEmpty } from "../../../common/utils";
8
9
  import { endChat, prepareEndChat } from "../common/endChat";
10
+ import { handleChatReconnect, isReconnectEnabled } from "../common/reconnectChatHelper";
9
11
  import { shouldShowCallingContainer, shouldShowChatButton, shouldShowConfirmationPane, shouldShowEmailTranscriptPane, shouldShowHeader, shouldShowLoadingPane, shouldShowOutOfOfficeHoursPane, shouldShowPostChatLoadingPane, shouldShowPostChatSurveyPane, shouldShowPreChatSurveyPane, shouldShowProactiveChatPane, shouldShowReconnectChatPane, shouldShowWebChatContainer } from "../../../controller/componentController";
10
12
  import { ActivityStreamHandler } from "../common/ActivityStreamHandler";
11
13
  import CallingContainerStateful from "../../callingcontainerstateful/CallingContainerStateful";
12
14
  import ChatButtonStateful from "../../chatbuttonstateful/ChatButtonStateful";
13
15
  import { Components } from "botframework-webchat";
14
16
  import ConfirmationPaneStateful from "../../confirmationpanestateful/ConfirmationPaneStateful";
17
+ import { ConversationEndEntity } from "../../../contexts/common/ConversationEndEntity";
15
18
  import { ConversationState } from "../../../contexts/common/ConversationState";
16
19
  import { DataStoreManager } from "../../../common/contextDataStore/DataStoreManager";
17
- import { Constants, E2VVOptions, LiveWorkItemState } from "../../../common/Constants";
18
20
  import { ElementType } from "@microsoft/omnichannel-chat-components";
19
21
  import EmailTranscriptPaneStateful from "../../emailtranscriptpanestateful/EmailTranscriptPaneStateful";
20
22
  import HeaderStateful from "../../headerstateful/HeaderStateful";
@@ -36,6 +38,8 @@ import { defaultScrollBarProps } from "../common/defaultProps/defaultScrollBarPr
36
38
  import { defaultWebChatContainerStatefulProps } from "../../webchatcontainerstateful/common/defaultProps/defaultWebChatContainerStatefulProps";
37
39
  import { disposeTelemetryLoggers } from "../common/disposeTelemetryLoggers";
38
40
  import { getGeneralStylesForButton } from "../common/getGeneralStylesForButton";
41
+ import { handleAgentEndConversation } from "../common/agentEndConversationHelper";
42
+ import { handleChatDisconnect } from "../common/chatDisconnectHelper";
39
43
  import { initCallingSdk } from "../common/initCallingSdk";
40
44
  import { initConfirmationPropsComposer } from "../common/initConfirmationPropsComposer";
41
45
  import { initWebChatComposer } from "../common/initWebChatComposer";
@@ -46,10 +50,6 @@ import { startProactiveChat } from "../common/startProactiveChat";
46
50
  import useChatAdapterStore from "../../../hooks/useChatAdapterStore";
47
51
  import useChatContextStore from "../../../hooks/useChatContextStore";
48
52
  import useChatSDKStore from "../../../hooks/useChatSDKStore";
49
- import { ConversationEndEntity } from "../../../contexts/common/ConversationEndEntity";
50
- import { handleAgentEndConversation } from "../common/agentEndConversationHelper";
51
- import { handleChatReconnect, isReconnectEnabled } from "../common/reconnectChatHelper";
52
- import { handleChatDisconnect } from "../common/chatDisconnectHelper";
53
53
  export const LiveChatWidgetStateful = props => {
54
54
  var _props$webChatContain, _props$styleProps, _chatSDK$omnichannelC, _props$controlProps, _props$controlProps2, _props$webChatContain3, _props$webChatContain4, _props$styleProps2, _props$controlProps15, _props$controlProps16, _props$componentOverr, _props$controlProps17, _props$componentOverr2, _props$controlProps18, _props$componentOverr3, _props$controlProps19, _props$componentOverr4, _props$controlProps20, _props$componentOverr5, _props$controlProps21, _props$componentOverr6, _props$controlProps22, _props$componentOverr7, _props$controlProps23, _props$controlProps24, _props$componentOverr8, _props$controlProps25, _props$componentOverr9, _props$controlProps26, _props$componentOverr10, _props$componentOverr11, _props$componentOverr12;
55
55
  const [state, dispatch] = useChatContextStore();
@@ -256,16 +256,12 @@ export const LiveChatWidgetStateful = props => {
256
256
  BroadcastService.getMessageByEventName(BroadcastEvent.HideChatVisibilityChangeEvent).subscribe(async event => {
257
257
  var _event$payload;
258
258
  if ((event === null || event === void 0 ? void 0 : (_event$payload = event.payload) === null || _event$payload === void 0 ? void 0 : _event$payload.isChatHidden) !== undefined) {
259
- var _event$payload2, _props$controlProps10;
260
- TelemetryHelper.logActionEvent(LogLevel.INFO, {
261
- Event: TelemetryEvent.ChatVisibilityChanged,
262
- Description: "Chat visibility changed to " + (event === null || event === void 0 ? void 0 : (_event$payload2 = event.payload) === null || _event$payload2 === void 0 ? void 0 : _event$payload2.isChatHidden)
263
- });
259
+ var _props$controlProps10;
264
260
  if ((_props$controlProps10 = props.controlProps) !== null && _props$controlProps10 !== void 0 && _props$controlProps10.hideStartChatButton) {
265
- var _event$payload3;
261
+ var _event$payload2;
266
262
  dispatch({
267
263
  type: LiveChatWidgetActionType.SET_MINIMIZED,
268
- payload: event === null || event === void 0 ? void 0 : (_event$payload3 = event.payload) === null || _event$payload3 === void 0 ? void 0 : _event$payload3.isChatHidden
264
+ payload: event === null || event === void 0 ? void 0 : (_event$payload2 = event.payload) === null || _event$payload2 === void 0 ? void 0 : _event$payload2.isChatHidden
269
265
  });
270
266
  }
271
267
  const dateNow = Date.now();
@@ -1,6 +1,7 @@
1
1
  import { HtmlAttributeNames, Regex } from "../../common/Constants";
2
2
  import { LogLevel, TelemetryEvent } from "../../common/telemetry/TelemetryConstants";
3
3
  import React, { useEffect } from "react";
4
+ import MarkdownIt from "markdown-it";
4
5
  import { extractPreChatSurveyResponseValues, findAllFocusableElement, getStateFromCache, isUndefinedOrEmpty, parseAdaptiveCardPayload } from "../../common/utils";
5
6
  import { ConversationState } from "../../contexts/common/ConversationState";
6
7
  import { LiveChatWidgetActionType } from "../../contexts/common/LiveChatWidgetActionType";
@@ -13,6 +14,8 @@ import useChatContextStore from "../../hooks/useChatContextStore";
13
14
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
14
15
  export const PreChatSurveyPaneStateful = props => {
15
16
  var _surveyProps$stylePro, _props$surveyProps, _props$surveyProps$co;
17
+ // Set MarkDown global variable to be used for prechat adaptive cards
18
+ window["markdownit"] = MarkdownIt;
16
19
  const [state, dispatch] = useChatContextStore();
17
20
  const {
18
21
  surveyProps,
@@ -48,7 +48,9 @@ export declare enum BroadcastEvent {
48
48
  SigninCardReceived = "SignInCardReceived",
49
49
  BotAuthConfigRequest = "BotAuthConfigRequest",
50
50
  BotAuthConfigResponse = "BotAuthConfigResponse",
51
- HideChatVisibilityChangeEvent = "hideChatVisibilityChangeEvent"
51
+ HideChatVisibilityChangeEvent = "hideChatVisibilityChangeEvent",
52
+ UpdateSessionDataForTelemetry = "UpdateSessionDataForTelemetry",
53
+ UpdateConversationDataForTelemetry = "UpdateConversationDataForTelemetry"
52
54
  }
53
55
  export declare enum TelemetryEvent {
54
56
  CallAdded = "CallAdded",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microsoft/omnichannel-chat-widget",
3
- "version": "1.0.2-main.118265f",
3
+ "version": "1.0.2-main.97e373e",
4
4
  "description": "Microsoft Omnichannel Chat Widget",
5
5
  "main": "lib/cjs/index.js",
6
6
  "types": "lib/types/index.d.ts",