botframework-webchat-component 4.15.0 → 4.15.2-main.20220413.d89850f
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.
- package/lib/Activity/CarouselLayout.js +3 -3
- package/lib/Activity/Speak.d.ts +2 -2
- package/lib/Activity/Speak.d.ts.map +1 -1
- package/lib/Activity/Speak.js +14 -7
- package/lib/Activity/StackedLayout.d.ts +5 -3
- package/lib/Activity/StackedLayout.d.ts.map +1 -1
- package/lib/Activity/StackedLayout.js +15 -20
- package/lib/Attachment/FileContent.js +2 -2
- package/lib/BasicSendBox.d.ts.map +1 -1
- package/lib/BasicSendBox.js +7 -8
- package/lib/BasicToast.js +1 -1
- package/lib/BasicToaster.js +1 -1
- package/lib/BasicTranscript.d.ts.map +1 -1
- package/lib/BasicTranscript.js +30 -15
- package/lib/BasicTypingIndicator.js +1 -1
- package/lib/Composer.js +3 -3
- package/lib/ConnectivityStatus/Connecting.js +1 -1
- package/lib/Dictation.js +1 -1
- package/lib/Middleware/Activity/createCoreMiddleware.d.ts.map +1 -1
- package/lib/Middleware/Activity/createCoreMiddleware.js +9 -12
- package/lib/Middleware/ActivityStatus/SendStatus/SendFailedRetry.js +1 -1
- package/lib/Middleware/ActivityStatus/SendStatus/SendStatus.d.ts +2 -2
- package/lib/Middleware/ActivityStatus/SendStatus/SendStatus.d.ts.map +1 -1
- package/lib/Middleware/ActivityStatus/SendStatus/SendStatus.js +4 -3
- package/lib/Middleware/ActivityStatus/Timestamp.d.ts +2 -2
- package/lib/Middleware/ActivityStatus/Timestamp.d.ts.map +1 -1
- package/lib/Middleware/ActivityStatus/Timestamp.js +4 -2
- package/lib/Middleware/ActivityStatus/createSendStatusMiddleware.js +2 -2
- package/lib/ReactWebChat.js +2 -2
- package/lib/ScreenReaderActivity.js +1 -1
- package/lib/ScreenReaderText.js +1 -1
- package/lib/SendBox/AutoResizeTextArea.js +1 -1
- package/lib/SendBox/IconButton.js +1 -1
- package/lib/SendBox/MicrophoneButton.js +1 -1
- package/lib/SendBox/SendButton.js +1 -1
- package/lib/SendBox/SuggestedAction.js +2 -2
- package/lib/SendBox/SuggestedActions.js +2 -2
- package/lib/SendBox/TextBox.js +3 -3
- package/lib/SendBox/UploadButton.js +3 -3
- package/lib/Styles/StyleSet/Bubble.js +2 -2
- package/lib/Styles/StyleSet/CarouselFilmStrip.js +2 -2
- package/lib/Styles/StyleSet/CarouselFilmStripAttachment.js +2 -2
- package/lib/Styles/createStyleSet.d.ts +1 -1
- package/lib/Styles/createStyleSet.js +2 -2
- package/lib/Transcript/ActivityRow.d.ts +2 -2
- package/lib/Transcript/ActivityRow.d.ts.map +1 -1
- package/lib/Transcript/ActivityRow.js +4 -2
- package/lib/Transcript/ActivityTextAlt.js +1 -1
- package/lib/Transcript/FocusTrap.js +1 -1
- package/lib/Transcript/KeyboardHelp.js +1 -1
- package/lib/Transcript/LiveRegionTranscript.d.ts.map +1 -1
- package/lib/Transcript/LiveRegionTranscript.js +22 -7
- package/lib/Transcript/useActivityAccessibleName.d.ts +2 -2
- package/lib/Transcript/useActivityAccessibleName.d.ts.map +1 -1
- package/lib/Transcript/useActivityAccessibleName.js +2 -2
- package/lib/Transcript/useTypistNames.d.ts +3 -0
- package/lib/Transcript/useTypistNames.d.ts.map +1 -0
- package/lib/Transcript/useTypistNames.js +61 -0
- package/lib/Utils/AccessKeySink/Surface.js +1 -1
- package/lib/Utils/AccessibleButton.js +1 -1
- package/lib/Utils/AccessibleInputText.js +1 -1
- package/lib/Utils/AccessibleTextArea.js +1 -1
- package/lib/Utils/CroppedImage.js +1 -1
- package/lib/Utils/FocusRedirector.js +1 -1
- package/lib/Utils/InlineMarkdown.js +3 -3
- package/lib/Utils/TypeFocusSink/FocusBox.js +1 -1
- package/lib/Utils/addTargetBlankToHyperlinksMarkdown.js +2 -2
- package/lib/Utils/downscaleImageToDataURL/index.js +1 -1
- package/lib/Utils/getActivityUniqueId.js +1 -1
- package/lib/connectToWebChat.js +2 -2
- package/lib/hooks/internal/BypassSpeechSynthesisPonyfill.js +3 -3
- package/lib/hooks/internal/useMemoize.d.ts +1 -1
- package/lib/hooks/internal/useMemoize.d.ts.map +1 -1
- package/lib/hooks/internal/useMemoize.js +1 -1
- package/lib/hooks/useObserveTranscriptFocus.d.ts +2 -2
- package/lib/hooks/useObserveTranscriptFocus.d.ts.map +1 -1
- package/lib/hooks/useObserveTranscriptFocus.js +1 -1
- package/lib/hooks/useSendFiles.d.ts.map +1 -1
- package/lib/hooks/useSendFiles.js +4 -4
- package/lib/index.d.ts +3 -3
- package/lib/index.js +5 -5
- package/lib/providers/ActivityTree/ActivityTreeComposer.d.ts.map +1 -1
- package/lib/providers/ActivityTree/ActivityTreeComposer.js +2 -2
- package/lib/providers/ActivityTree/private/types.d.ts +2 -2
- package/lib/providers/ActivityTree/private/types.d.ts.map +1 -1
- package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.d.ts +2 -2
- package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.d.ts.map +1 -1
- package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.js +1 -1
- package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.d.ts.map +1 -1
- package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.js +1 -1
- package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.d.ts +2 -0
- package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.d.ts.map +1 -1
- package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.js +10 -6
- package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.d.ts +1 -0
- package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.d.ts.map +1 -1
- package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.js +22 -8
- package/lib/providers/TranscriptFocus/TranscriptFocusComposer.js +1 -1
- package/package.json +24 -20
- package/src/Activity/Speak.tsx +21 -18
- package/src/Activity/StackedLayout.tsx +20 -26
- package/src/Attachment/FileContent.tsx +1 -1
- package/src/BasicSendBox.tsx +3 -2
- package/src/BasicTranscript.tsx +29 -13
- package/src/Middleware/Activity/createCoreMiddleware.tsx +5 -10
- package/src/Middleware/ActivityStatus/SendStatus/SendStatus.tsx +5 -3
- package/src/Middleware/ActivityStatus/Timestamp.tsx +5 -3
- package/src/SendBox/SuggestedAction.tsx +1 -1
- package/src/SendBox/SuggestedActions.tsx +1 -1
- package/src/Transcript/ActivityRow.tsx +4 -5
- package/src/Transcript/ActivityTextAlt.tsx +2 -3
- package/src/Transcript/LiveRegionTranscript.tsx +27 -12
- package/src/Transcript/useActivityAccessibleName.ts +3 -4
- package/src/Transcript/useTypistNames.ts +37 -0
- package/src/Utils/getActivityUniqueId.ts +2 -2
- package/src/hooks/internal/useMemoize.ts +6 -6
- package/src/hooks/useObserveTranscriptFocus.ts +2 -2
- package/src/hooks/useSendFiles.ts +7 -5
- package/src/providers/ActivityTree/ActivityTreeComposer.tsx +2 -2
- package/src/providers/ActivityTree/private/types.ts +2 -2
- package/src/providers/ActivityTree/private/useActivitiesWithRenderer.ts +4 -6
- package/src/providers/ActivityTree/private/useActivityTreeWithRenderer.ts +6 -11
- package/src/providers/LiveRegionTwin/LiveRegionTwinComposer.tsx +10 -3
- package/src/providers/LiveRegionTwin/private/LiveRegionTwinContainer.tsx +22 -6
- package/lib/Middleware/GroupActivities/createCoreMiddleware.js +0 -69
- package/src/Middleware/GroupActivities/createCoreMiddleware.js +0 -57
|
@@ -9,9 +9,9 @@ var _mirrorStyle = _interopRequireDefault(require("../mirrorStyle"));
|
|
|
9
9
|
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
11
|
|
|
12
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
12
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
13
13
|
|
|
14
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
14
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
15
15
|
|
|
16
16
|
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; }
|
|
17
17
|
|
|
@@ -9,9 +9,9 @@ var _mirrorStyle = _interopRequireDefault(require("../mirrorStyle"));
|
|
|
9
9
|
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
11
|
|
|
12
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
12
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
13
13
|
|
|
14
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
14
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
15
15
|
|
|
16
16
|
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; }
|
|
17
17
|
|
|
@@ -574,7 +574,7 @@ export default function createStyleSet(styleOptions: StyleOptions): {
|
|
|
574
574
|
suggestedActionsStackedLayoutButtonMaxHeight: string | number;
|
|
575
575
|
suggestedActionsStackedLayoutButtonTextWrap: boolean;
|
|
576
576
|
groupTimestamp: number | boolean;
|
|
577
|
-
sendTimeout: number | ((activity:
|
|
577
|
+
sendTimeout: number | ((activity: import("botframework-webchat-core/lib/types/WebChatActivity").WebChatActivity) => number);
|
|
578
578
|
sendTimeoutForAttachments: number;
|
|
579
579
|
timestampColor: string;
|
|
580
580
|
timestampFormat: "absolute" | "relative";
|
|
@@ -91,9 +91,9 @@ var _YouTubeContent = _interopRequireDefault(require("./StyleSet/YouTubeContent"
|
|
|
91
91
|
|
|
92
92
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
93
93
|
|
|
94
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
94
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
95
95
|
|
|
96
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
96
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
97
97
|
|
|
98
98
|
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; }
|
|
99
99
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type {
|
|
2
|
+
import type { WebChatActivity } from 'botframework-webchat-core';
|
|
3
3
|
declare const ActivityRow: React.ForwardRefExoticComponent<{
|
|
4
|
-
activity:
|
|
4
|
+
activity: WebChatActivity;
|
|
5
5
|
} & {
|
|
6
6
|
children?: React.ReactNode;
|
|
7
7
|
} & React.RefAttributes<HTMLLIElement>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActivityRow.d.ts","sourceRoot":"","sources":["../../src/Transcript/ActivityRow.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAE/D,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"ActivityRow.d.ts","sourceRoot":"","sources":["../../src/Transcript/ActivityRow.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAE/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAgBjE,QAAA,MAAM,WAAW;cAFqC,eAAe;;;uCAqFnE,CAAC;AAkBH,eAAe,WAAW,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -144,6 +144,8 @@ ActivityRow.defaultProps = {
|
|
|
144
144
|
children: undefined
|
|
145
145
|
};
|
|
146
146
|
ActivityRow.propTypes = {
|
|
147
|
+
// PropTypes cannot fully capture TypeScript type.
|
|
148
|
+
// @ts-ignore
|
|
147
149
|
activity: _propTypes.default.shape({
|
|
148
150
|
channelData: _propTypes.default.shape({
|
|
149
151
|
speak: _propTypes.default.bool,
|
|
@@ -154,4 +156,4 @@ ActivityRow.propTypes = {
|
|
|
154
156
|
};
|
|
155
157
|
var _default = ActivityRow;
|
|
156
158
|
exports.default = _default;
|
|
157
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9UcmFuc2NyaXB0L0FjdGl2aXR5Um93LnRzeCJdLCJuYW1lcyI6WyJ1c2VBY3Rpdml0eUtleXNCeVJlYWQiLCJob29rcyIsInVzZUdldEhhc0Fja25vd2xlZGdlZEJ5QWN0aXZpdHlLZXkiLCJ1c2VHZXRLZXlCeUFjdGl2aXR5IiwiQWN0aXZpdHlSb3ciLCJyZWYiLCJhY3Rpdml0eSIsImNoaWxkcmVuIiwiYWN0aXZlRGVzY2VuZGFudElkIiwicmVhZEFjdGl2aXR5S2V5cyIsImJvZHlSZWYiLCJmb2N1c0J5QWN0aXZpdHlLZXkiLCJnZXRLZXlCeUFjdGl2aXR5Iiwic2hvdWxkU3BlYWsiLCJjaGFubmVsRGF0YSIsInNwZWFrIiwiYWNjZXNzaWJsZU5hbWUiLCJhY3Rpdml0eUtleSIsImFja25vd2xlZGdlZCIsImFjdGl2aXR5S2V5UmVmIiwiZGVzY2VuZGFudElkIiwiZGVzY2VuZGFudExhYmVsSWQiLCJpc0FjdGl2ZURlc2NlbmRhbnQiLCJyZWFkIiwiaW5jbHVkZXMiLCJmb2N1c1NlbGYiLCJ3aXRoRm9jdXMiLCJjdXJyZW50IiwiaGFuZGxlRGVzY2VuZGFudEZvY3VzIiwiaGFuZGxlTGVhdmVGb2N1c1RyYXAiLCJoYW5kbGVNb3VzZURvd25DYXB0dXJlIiwiYW5kcm9pZCIsImRlZmF1bHRQcm9wcyIsInVuZGVmaW5lZCIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInNoYXBlIiwiYm9vbCIsInN0cmluZyIsImlzUmVxdWlyZWQiLCJvbmVPZlR5cGUiLCJlbGVtZW50IiwiYXJyYXlPZiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBS0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsSUFBUUEscUJBQVIsR0FBMkZDLDZCQUEzRixDQUFRRCxxQkFBUjtBQUFBLElBQStCRSxrQ0FBL0IsR0FBMkZELDZCQUEzRixD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QUFDLGtCQUFEO0FBQVcsTUFBQSxPQUFPLEVBQUVZLHFCQUFwQjtBQUEyQyxNQUFBLE9BQU8sRUFBRUM7QUFBcEQsb0JBQ0U7QUFBSyxNQUFBLFNBQVMsRUFBQywwQ0FBZjtBQUEwRCxNQUFBLEdBQUcsRUFBRW5CO0FBQS9ELE9BQ0dILFFBREgsQ0FERixDQWhDRixFQXFDR00sV0FBVyxpQkFBSSw2QkFBQyxjQUFEO0FBQWUsTUFBQSxRQUFRLEVBQUVQO0FBQXpCLE1BckNsQixlQXNDRTtBQUNFLE1BQUEsU0FBUyxFQUFFLHlCQUFXLCtDQUFYLEVBQTREO0FBQ3JFLGdFQUF3RGdCO0FBRGEsT0FBNUQ7QUFEYixNQXRDRjtBQUZGO0FBK0NELENBbkZtQixDQUFwQjtBQXFGQWxCLFdBQVcsQ0FBQzRCLFlBQVosR0FBMkI7QUFDekJ6QixFQUFBQSxRQUFRLEVBQUUwQjtBQURlLENBQTNCO0FBSUE3QixXQUFXLENBQUM4QixTQUFaLEdBQXdCO0FBQ3RCNUIsRUFBQUEsUUFBUSxFQUFFNkIsbUJBQVVDLEtBQVYsQ0FBZ0I7QUFDeEJ0QixJQUFBQSxXQUFXLEVBQUVxQixtQkFBVUMsS0FBVixDQUFnQjtBQUMzQnJCLE1BQUFBLEtBQUssRUFBRW9CLG1CQUFVRSxJQURVO0FBRTNCLCtCQUF5QkYsbUJBQVVHO0FBRlIsS0FBaEI7QUFEVyxHQUFoQixFQUtQQyxVQU5tQjtBQU90QmhDLEVBQUFBLFFBQVEsRUFBRTRCLG1CQUFVSyxTQUFWLENBQW9CLENBQUNMLG1CQUFVTSxPQUFYLEVBQW9CTixtQkFBVU8sT0FBVixDQUFrQlAsbUJBQVVNLE9BQTVCLENBQXBCLENBQXBCO0FBUFksQ0FBeEI7ZUFVZXJDLFciLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGhvb2tzIH0gZnJvbSAnYm90ZnJhbWV3b3JrLXdlYmNoYXQtYXBpJztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBSZWFjdCwgeyBmb3J3YXJkUmVmLCB1c2VDYWxsYmFjaywgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdHlwZSB7IERpcmVjdExpbmVBY3Rpdml0eSB9IGZyb20gJ2JvdGZyYW1ld29yay13ZWJjaGF0LWNvcmUnO1xuaW1wb3J0IHR5cGUgeyBNb3VzZUV2ZW50SGFuZGxlciwgUHJvcHNXaXRoQ2hpbGRyZW4gfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IGFuZHJvaWQgfSBmcm9tICcuLi9VdGlscy9kZXRlY3RCcm93c2VyJztcbmltcG9ydCBGb2N1c1RyYXAgZnJvbSAnLi9Gb2N1c1RyYXAnO1xuaW1wb3J0IFNjcmVlblJlYWRlclRleHQgZnJvbSAnLi4vU2NyZWVuUmVhZGVyVGV4dCc7XG5pbXBvcnQgU3BlYWtBY3Rpdml0eSBmcm9tICcuLi9BY3Rpdml0eS9TcGVhayc7XG5pbXBvcnQgdXNlQWN0aXZlRGVzY2VuZGFudElkIGZyb20gJy4uL3Byb3ZpZGVycy9UcmFuc2NyaXB0Rm9jdXMvdXNlQWN0aXZlRGVzY2VuZGFudElkJztcbmltcG9ydCB1c2VBY3Rpdml0eUFjY2Vzc2libGVOYW1lIGZyb20gJy4vdXNlQWN0aXZpdHlBY2Nlc3NpYmxlTmFtZSc7XG5pbXBvcnQgdXNlRm9jdXNCeUFjdGl2aXR5S2V5IGZyb20gJy4uL3Byb3ZpZGVycy9UcmFuc2NyaXB0Rm9jdXMvdXNlRm9jdXNCeUFjdGl2aXR5S2V5JztcbmltcG9ydCB1c2VHZXREZXNjZW5kYW50SWRCeUFjdGl2aXR5S2V5IGZyb20gJy4uL3Byb3ZpZGVycy9UcmFuc2NyaXB0Rm9jdXMvdXNlR2V0RGVzY2VuZGFudElkQnlBY3Rpdml0eUtleSc7XG5pbXBvcnQgdXNlVmFsdWVSZWYgZnJvbSAnLi4vaG9va3MvaW50ZXJuYWwvdXNlVmFsdWVSZWYnO1xuXG5jb25zdCB7IHVzZUFjdGl2aXR5S2V5c0J5UmVhZCwgdXNlR2V0SGFzQWNrbm93bGVkZ2VkQnlBY3Rpdml0eUtleSwgdXNlR2V0S2V5QnlBY3Rpdml0eSB9ID0gaG9va3M7XG5cbnR5cGUgQWN0aXZpdHlSb3dQcm9wcyA9IFByb3BzV2l0aENoaWxkcmVuPHtcbiAgYWN0aXZpdHk6IERpcmVjdExpbmVBY3Rpdml0eTtcbn0+O1xuXG5jb25zdCBBY3Rpdml0eVJvdyA9IGZvcndhcmRSZWY8SFRNTExJRWxlbWVudCwgQWN0aXZpdHlSb3dQcm9wcz4oKHsgYWN0aXZpdHksIGNoaWxkcmVuIH0sIHJlZikgPT4ge1xuICBjb25zdCBbYWN0aXZlRGVzY2VuZGFudElkXSA9IHVzZUFjdGl2ZURlc2NlbmRhbnRJZCgpO1xuICBjb25zdCBbcmVhZEFjdGl2aXR5S2V5c10gPSB1c2VBY3Rpdml0eUtleXNCeVJlYWQoKTtcbiAgY29uc3QgYm9keVJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4oKTtcbiAgY29uc3QgZm9jdXNCeUFjdGl2aXR5S2V5ID0gdXNlRm9jdXNCeUFjdGl2aXR5S2V5KCk7XG4gIGNvbnN0IGdldEtleUJ5QWN0aXZpdHkgPSB1c2VHZXRLZXlCeUFjdGl2aXR5KCk7XG4gIC8vIFRPRE86IFtQMl0gIzI4NTggV2Ugc2hvdWxkIHVzZSBjb3JlL2RlZmluaXRpb25zL3NwZWFraW5nQWN0aXZpdHkgZm9yIHRoaXMgcHJlZGljYXRlIGluc3RlYWRcbiAgY29uc3Qgc2hvdWxkU3BlYWsgPSBhY3Rpdml0eS5jaGFubmVsRGF0YT8uc3BlYWs7XG5cbiAgY29uc3QgW2FjY2Vzc2libGVOYW1lXSA9IHVzZUFjdGl2aXR5QWNjZXNzaWJsZU5hbWUoYWN0aXZpdHksIGJvZHlSZWYpO1xuICBjb25zdCBhY3Rpdml0eUtleSA9IGdldEtleUJ5QWN0aXZpdHkoYWN0aXZpdHkpO1xuXG4gIGNvbnN0IGFja25vd2xlZGdlZCA9IHVzZUdldEhhc0Fja25vd2xlZGdlZEJ5QWN0aXZpdHlLZXkoKShhY3Rpdml0eUtleSk7XG4gIGNvbnN0IGFjdGl2aXR5S2V5UmVmID0gdXNlVmFsdWVSZWY8c3RyaW5nPihhY3Rpdml0eUtleSk7XG4gIGNvbnN0IGRlc2NlbmRhbnRJZCA9IHVzZUdldERlc2NlbmRhbnRJZEJ5QWN0aXZpdHlLZXkoKShhY3Rpdml0eUtleSk7XG4gIGNvbnN0IGRlc2NlbmRhbnRMYWJlbElkID0gYHdlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2ZS1kZXNjZW5kYW50LWxhYmVsLS0ke2FjdGl2aXR5S2V5fWA7XG5cbiAgY29uc3QgaXNBY3RpdmVEZXNjZW5kYW50ID0gZGVzY2VuZGFudElkID09PSBhY3RpdmVEZXNjZW5kYW50SWQ7XG4gIGNvbnN0IHJlYWQgPSByZWFkQWN0aXZpdHlLZXlzLmluY2x1ZGVzKGFjdGl2aXR5S2V5KTtcblxuICBjb25zdCBmb2N1c1NlbGYgPSB1c2VDYWxsYmFjazwod2l0aEZvY3VzPzogYm9vbGVhbikgPT4gdm9pZD4oXG4gICAgKHdpdGhGb2N1cz86IGJvb2xlYW4pID0+IGZvY3VzQnlBY3Rpdml0eUtleShhY3Rpdml0eUtleVJlZi5jdXJyZW50LCB3aXRoRm9jdXMpLFxuICAgIFthY3Rpdml0eUtleVJlZiwgZm9jdXNCeUFjdGl2aXR5S2V5XVxuICApO1xuXG4gIC8vIFdoZW4gYSBjaGlsZCBvZiB0aGUgYWN0aXZpdHkgcmVjZWl2ZXMgZm9jdXMsIG5vdGlmeSB0aGUgdHJhbnNjcmlwdCB0byBzZXQgdGhlIGBhcmlhLWFjdGl2ZWRlc2NlbmRhbnRgIHRvIHRoaXMgYWN0aXZpdHkuXG4gIGNvbnN0IGhhbmRsZURlc2NlbmRhbnRGb2N1czogKCkgPT4gdm9pZCA9IHVzZUNhbGxiYWNrKCgpID0+IGZvY3VzU2VsZihmYWxzZSksIFtmb2N1c1NlbGZdKTtcblxuICAvLyBXaGVuIHJlY2VpdmUgRXNjYXBlIGtleSBmcm9tIGRlc2NlbmRhbnQsIGZvY3VzIGJhY2sgdG8gdGhlIGFjdGl2aXR5LlxuICBjb25zdCBoYW5kbGVMZWF2ZUZvY3VzVHJhcCA9IHVzZUNhbGxiYWNrKCgpID0+IGZvY3VzU2VsZigpLCBbZm9jdXNTZWxmXSk7XG5cbiAgLy8gV2hlbiB0aGUgdXNlciBwcmVzcyBVUC9ET1dOIGFycm93IGtleXMsIHdlIHB1dCBhIHZpc3VhbCBmb2N1cyBpbmRpY2F0b3IgYXJvdW5kIHRoZSBmb2N1c2VkIGFjdGl2aXR5LlxuICAvLyBXZSBzaG91bGQgZG8gdGhlIHNhbWUgZm9yIG1vdXNlLCB3aGVuIHRoZSB1c2VyIGNsaWNrIG9uIHRoZSBhY3Rpdml0eSwgd2Ugc2hvdWxkIGFsc28gcHV0IGEgdmlzdWFsIGZvY3VzIGluZGljYXRvciBhcm91bmQgdGhlIGFjdGl2aXR5LlxuICAvLyBXZSBhcmUgZG9pbmcgaXQgaW4gZXZlbnQgY2FwdHVyZSBwaGFzZSB0byBwcmV2ZW50IGRlc2NlbmRhbnRzIGZyb20gc3RvcHBpbmcgZXZlbnQgcHJvcGFnYXRpb24gdG8gdXMuXG4gIGNvbnN0IGhhbmRsZU1vdXNlRG93bkNhcHR1cmU6IE1vdXNlRXZlbnRIYW5kbGVyID0gdXNlQ2FsbGJhY2soKCkgPT4gZm9jdXNTZWxmKGZhbHNlKSwgW2ZvY3VzU2VsZl0pO1xuXG4gIHJldHVybiAoXG4gICAgLy8gVE9ETzogW1AyXSBBZGQgYGFyaWEtcm9sZWRlc2NyaXB0aW9uPVwibWVzc2FnZVwiYCBmb3IgYmV0dGVyIEFYLCBuZWVkIGxvY2FsaXphdGlvbiBzdHJpbmdzLlxuICAgIDxhcnRpY2xlXG4gICAgICBhcmlhLWhpZGRlbj17YWN0aXZpdHkuY2hhbm5lbERhdGE/Llsnd2ViY2hhdDpmYWxsYmFjay10ZXh0J10gPT09ICcnfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKCd3ZWJjaGF0X19iYXNpYy10cmFuc2NyaXB0X19hY3Rpdml0eScsIHtcbiAgICAgICAgJ3dlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2aXR5LS1hY2tub3dsZWRnZWQnOiBhY2tub3dsZWRnZWQsXG4gICAgICAgICd3ZWJjaGF0X19iYXNpYy10cmFuc2NyaXB0X19hY3Rpdml0eS0tcmVhZCc6IHJlYWRcbiAgICAgIH0pfVxuICAgICAgLy8gV2hlbiBOVkRBIGlzIGluIGJyb3dzZSBtb2RlLCB1c2luZyB1cC9kb3duIGFycm93IGtleSB0byBcImJyb3dzZVwiIHdpbGwgZGlzcGF0Y2ggXCJjbGlja1wiIGFuZCBcIm1vdXNlZG93blwiIGV2ZW50cyBmb3IgPGFydGljbGU+IGVsZW1lbnQgKGluc2lkZSA8U2NyZWVuUmVhZGVyQWN0aXZpdHk+KS5cbiAgICAgIG9uTW91c2VEb3duQ2FwdHVyZT17aGFuZGxlTW91c2VEb3duQ2FwdHVyZX1cbiAgICAgIHJlZj17cmVmfVxuICAgID5cbiAgICAgIHsvKiBUT0RPOiBbUDFdIEZpbGUgYSBjcmJ1ZyBmb3IgVGFsa0JhY2suIEl0IHNob3VsZCBub3QgYWJsZSB0byByZWFkIHRoZSBjb250ZW50IHR3aWNlIHdoZW4gc2Nhbm5pbmcuICovfVxuXG4gICAgICB7LyogVGhlIGZvbGxvd2luZyA8ZGl2PiBpcyBkZXNpZ25lZCBmb3IgYWN0aXZlIGRlc2NlbmRhbnQgb25seS5cbiAgICAgICAgICBXZSB3YW50IHRvIHByZXZlbnQgc2NyZWVuIHJlYWRlciBmcm9tIHNjYW5uaW5nIHRoZSBjb250ZW50IHRoYXQgaXMgYXV0aG9yZWQgb25seSBmb3IgYWN0aXZlIGRlc2NlbmRhbnQuXG4gICAgICAgICAgVGhlIHNwZWNpZmljIGNvbnRlbnQgc2hvdWxkIG9ubHkgcmVhZCB3aGVuIHVzZXIgcHJlc3MgVVAvRE9XTiBhcnJvdyBrZXlzIHRvIGNoYW5nZSBgYXJpYS1hY3RpdmVkZXNjZW5kYW50YC5cbiAgICAgICAgICBIb3dldmVyLCBBbmRyb2lkIFRhbGtCYWNrIDEyLjEgaXMgYnVnZ3kgd2hlbiB0aGUgdGhlcmUgaXMgYW4gZWxlbWVudCB3aXRoIElEIG9mIG9uZSBvZiB0aGUgYGFyaWEtYWN0aXZlZGVzY2VuZGFudGAgcG90ZW50aWFsIGNhbmRpZGF0ZXMsXG4gICAgICAgICAgVGFsa0JhY2sgd2lsbCBuYXJyYXRlIHRoZSBtZXNzYWdlIGNvbnRlbnQgdHdpY2UgKGkuZS4gY29udGVudCBvZiBgYm9keVJlZmApLCByZWdhcmRsZXNzIHdoZXRoZXIgdGhlIElEIGlzIGN1cnJlbnRseSBzZXQgYXMgYGFyaWEtYWN0aXZlZGVzY2VuZGFudGAgb3Igbm90LlxuICAgICAgICAgIEFzIEFuZHJvaWQgZG9lcyBub3Qgc3VwcG9ydCBhY3RpdmUgZGVzY2VuZGFudCwgd2UgYXJlIGhpZGluZyB0aGUgd2hvbGUgRE9NIGVsZW1lbnQgYWx0b2dldGhlci4gKi99XG5cbiAgICAgIHshYW5kcm9pZCAmJiAoXG4gICAgICAgIDxkaXZcbiAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9e2Rlc2NlbmRhbnRMYWJlbElkfVxuICAgICAgICAgIGNsYXNzTmFtZT1cIndlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2aXR5LWFjdGl2ZS1kZXNjZW5kYW50XCJcbiAgICAgICAgICAvLyBcImlkXCIgaXMgcmVxdWlyZWQgZm9yIFwiYXJpYS1sYWJlbGxlZGJ5XCJcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvZm9yYmlkLWRvbS1wcm9wc1xuICAgICAgICAgIGlkPXtkZXNjZW5kYW50SWR9XG4gICAgICAgICAgcm9sZT1cImFydGljbGVcIlxuICAgICAgICA+XG4gICAgICAgICAgPFNjcmVlblJlYWRlclRleHQgYXJpYS1oaWRkZW49e3RydWV9IGlkPXtkZXNjZW5kYW50TGFiZWxJZH0gdGV4dD17YWNjZXNzaWJsZU5hbWV9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cbiAgICAgIHsvKiBBZGQgdGVzdHMgZm9yIGZvY3VzIHRyYXAgKi99XG4gICAgICA8Rm9jdXNUcmFwIG9uRm9jdXM9e2hhbmRsZURlc2NlbmRhbnRGb2N1c30gb25MZWF2ZT17aGFuZGxlTGVhdmVGb2N1c1RyYXB9PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIndlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2aXR5LWJvZHlcIiByZWY9e2JvZHlSZWZ9PlxuICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L0ZvY3VzVHJhcD5cbiAgICAgIHtzaG91bGRTcGVhayAmJiA8U3BlYWtBY3Rpdml0eSBhY3Rpdml0eT17YWN0aXZpdHl9IC8+fVxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoJ3dlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2aXR5LWluZGljYXRvcicsIHtcbiAgICAgICAgICAnd2ViY2hhdF9fYmFzaWMtdHJhbnNjcmlwdF9fYWN0aXZpdHktaW5kaWNhdG9yLS1mb2N1cyc6IGlzQWN0aXZlRGVzY2VuZGFudFxuICAgICAgICB9KX1cbiAgICAgIC8+XG4gICAgPC9hcnRpY2xlPlxuICApO1xufSk7XG5cbkFjdGl2aXR5Um93LmRlZmF1bHRQcm9wcyA9IHtcbiAgY2hpbGRyZW46IHVuZGVmaW5lZFxufTtcblxuQWN0aXZpdHlSb3cucHJvcFR5cGVzID0ge1xuICBhY3Rpdml0eTogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICBjaGFubmVsRGF0YTogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICAgIHNwZWFrOiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgICd3ZWJjaGF0OmZhbGxiYWNrLXRleHQnOiBQcm9wVHlwZXMuc3RyaW5nXG4gICAgfSlcbiAgfSkuaXNSZXF1aXJlZCxcbiAgY2hpbGRyZW46IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5lbGVtZW50LCBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuZWxlbWVudCldKVxufTtcblxuZXhwb3J0IGRlZmF1bHQgQWN0aXZpdHlSb3c7XG4iXX0=
|
|
159
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9UcmFuc2NyaXB0L0FjdGl2aXR5Um93LnRzeCJdLCJuYW1lcyI6WyJ1c2VBY3Rpdml0eUtleXNCeVJlYWQiLCJob29rcyIsInVzZUdldEhhc0Fja25vd2xlZGdlZEJ5QWN0aXZpdHlLZXkiLCJ1c2VHZXRLZXlCeUFjdGl2aXR5IiwiQWN0aXZpdHlSb3ciLCJyZWYiLCJhY3Rpdml0eSIsImNoaWxkcmVuIiwiYWN0aXZlRGVzY2VuZGFudElkIiwicmVhZEFjdGl2aXR5S2V5cyIsImJvZHlSZWYiLCJmb2N1c0J5QWN0aXZpdHlLZXkiLCJnZXRLZXlCeUFjdGl2aXR5Iiwic2hvdWxkU3BlYWsiLCJjaGFubmVsRGF0YSIsInNwZWFrIiwiYWNjZXNzaWJsZU5hbWUiLCJhY3Rpdml0eUtleSIsImFja25vd2xlZGdlZCIsImFjdGl2aXR5S2V5UmVmIiwiZGVzY2VuZGFudElkIiwiZGVzY2VuZGFudExhYmVsSWQiLCJpc0FjdGl2ZURlc2NlbmRhbnQiLCJyZWFkIiwiaW5jbHVkZXMiLCJmb2N1c1NlbGYiLCJ3aXRoRm9jdXMiLCJjdXJyZW50IiwiaGFuZGxlRGVzY2VuZGFudEZvY3VzIiwiaGFuZGxlTGVhdmVGb2N1c1RyYXAiLCJoYW5kbGVNb3VzZURvd25DYXB0dXJlIiwiYW5kcm9pZCIsImRlZmF1bHRQcm9wcyIsInVuZGVmaW5lZCIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInNoYXBlIiwiYm9vbCIsInN0cmluZyIsImlzUmVxdWlyZWQiLCJvbmVPZlR5cGUiLCJlbGVtZW50IiwiYXJyYXlPZiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBSUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsSUFBUUEscUJBQVIsR0FBMkZDLDZCQUEzRixDQUFRRCxxQkFBUjtBQUFBLElBQStCRSxrQ0FBL0IsR0FBMkZELDZCQUEzRixD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QUFDLGtCQUFEO0FBQVcsTUFBQSxPQUFPLEVBQUVZLHFCQUFwQjtBQUEyQyxNQUFBLE9BQU8sRUFBRUM7QUFBcEQsb0JBQ0U7QUFBSyxNQUFBLFNBQVMsRUFBQywwQ0FBZjtBQUEwRCxNQUFBLEdBQUcsRUFBRW5CO0FBQS9ELE9BQ0dILFFBREgsQ0FERixDQWhDRixFQXFDR00sV0FBVyxpQkFBSSw2QkFBQyxjQUFEO0FBQWUsTUFBQSxRQUFRLEVBQUVQO0FBQXpCLE1BckNsQixlQXNDRTtBQUNFLE1BQUEsU0FBUyxFQUFFLHlCQUFXLCtDQUFYLEVBQTREO0FBQ3JFLGdFQUF3RGdCO0FBRGEsT0FBNUQ7QUFEYixNQXRDRjtBQUZGO0FBK0NELENBbkZtQixDQUFwQjtBQXFGQWxCLFdBQVcsQ0FBQzRCLFlBQVosR0FBMkI7QUFDekJ6QixFQUFBQSxRQUFRLEVBQUUwQjtBQURlLENBQTNCO0FBSUE3QixXQUFXLENBQUM4QixTQUFaLEdBQXdCO0FBQ3RCO0FBQ0E7QUFDQTVCLEVBQUFBLFFBQVEsRUFBRTZCLG1CQUFVQyxLQUFWLENBQWdCO0FBQ3hCdEIsSUFBQUEsV0FBVyxFQUFFcUIsbUJBQVVDLEtBQVYsQ0FBZ0I7QUFDM0JyQixNQUFBQSxLQUFLLEVBQUVvQixtQkFBVUUsSUFEVTtBQUUzQiwrQkFBeUJGLG1CQUFVRztBQUZSLEtBQWhCO0FBRFcsR0FBaEIsRUFLUEMsVUFSbUI7QUFTdEJoQyxFQUFBQSxRQUFRLEVBQUU0QixtQkFBVUssU0FBVixDQUFvQixDQUFDTCxtQkFBVU0sT0FBWCxFQUFvQk4sbUJBQVVPLE9BQVYsQ0FBa0JQLG1CQUFVTSxPQUE1QixDQUFwQixDQUFwQjtBQVRZLENBQXhCO2VBWWVyQyxXIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBob29rcyB9IGZyb20gJ2JvdGZyYW1ld29yay13ZWJjaGF0LWFwaSc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgUmVhY3QsIHsgZm9yd2FyZFJlZiwgdXNlQ2FsbGJhY2ssIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgTW91c2VFdmVudEhhbmRsZXIsIFByb3BzV2l0aENoaWxkcmVuIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHR5cGUgeyBXZWJDaGF0QWN0aXZpdHkgfSBmcm9tICdib3RmcmFtZXdvcmstd2ViY2hhdC1jb3JlJztcblxuaW1wb3J0IHsgYW5kcm9pZCB9IGZyb20gJy4uL1V0aWxzL2RldGVjdEJyb3dzZXInO1xuaW1wb3J0IEZvY3VzVHJhcCBmcm9tICcuL0ZvY3VzVHJhcCc7XG5pbXBvcnQgU2NyZWVuUmVhZGVyVGV4dCBmcm9tICcuLi9TY3JlZW5SZWFkZXJUZXh0JztcbmltcG9ydCBTcGVha0FjdGl2aXR5IGZyb20gJy4uL0FjdGl2aXR5L1NwZWFrJztcbmltcG9ydCB1c2VBY3RpdmVEZXNjZW5kYW50SWQgZnJvbSAnLi4vcHJvdmlkZXJzL1RyYW5zY3JpcHRGb2N1cy91c2VBY3RpdmVEZXNjZW5kYW50SWQnO1xuaW1wb3J0IHVzZUFjdGl2aXR5QWNjZXNzaWJsZU5hbWUgZnJvbSAnLi91c2VBY3Rpdml0eUFjY2Vzc2libGVOYW1lJztcbmltcG9ydCB1c2VGb2N1c0J5QWN0aXZpdHlLZXkgZnJvbSAnLi4vcHJvdmlkZXJzL1RyYW5zY3JpcHRGb2N1cy91c2VGb2N1c0J5QWN0aXZpdHlLZXknO1xuaW1wb3J0IHVzZUdldERlc2NlbmRhbnRJZEJ5QWN0aXZpdHlLZXkgZnJvbSAnLi4vcHJvdmlkZXJzL1RyYW5zY3JpcHRGb2N1cy91c2VHZXREZXNjZW5kYW50SWRCeUFjdGl2aXR5S2V5JztcbmltcG9ydCB1c2VWYWx1ZVJlZiBmcm9tICcuLi9ob29rcy9pbnRlcm5hbC91c2VWYWx1ZVJlZic7XG5cbmNvbnN0IHsgdXNlQWN0aXZpdHlLZXlzQnlSZWFkLCB1c2VHZXRIYXNBY2tub3dsZWRnZWRCeUFjdGl2aXR5S2V5LCB1c2VHZXRLZXlCeUFjdGl2aXR5IH0gPSBob29rcztcblxudHlwZSBBY3Rpdml0eVJvd1Byb3BzID0gUHJvcHNXaXRoQ2hpbGRyZW48eyBhY3Rpdml0eTogV2ViQ2hhdEFjdGl2aXR5IH0+O1xuXG5jb25zdCBBY3Rpdml0eVJvdyA9IGZvcndhcmRSZWY8SFRNTExJRWxlbWVudCwgQWN0aXZpdHlSb3dQcm9wcz4oKHsgYWN0aXZpdHksIGNoaWxkcmVuIH0sIHJlZikgPT4ge1xuICBjb25zdCBbYWN0aXZlRGVzY2VuZGFudElkXSA9IHVzZUFjdGl2ZURlc2NlbmRhbnRJZCgpO1xuICBjb25zdCBbcmVhZEFjdGl2aXR5S2V5c10gPSB1c2VBY3Rpdml0eUtleXNCeVJlYWQoKTtcbiAgY29uc3QgYm9keVJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4oKTtcbiAgY29uc3QgZm9jdXNCeUFjdGl2aXR5S2V5ID0gdXNlRm9jdXNCeUFjdGl2aXR5S2V5KCk7XG4gIGNvbnN0IGdldEtleUJ5QWN0aXZpdHkgPSB1c2VHZXRLZXlCeUFjdGl2aXR5KCk7XG4gIC8vIFRPRE86IFtQMl0gIzI4NTggV2Ugc2hvdWxkIHVzZSBjb3JlL2RlZmluaXRpb25zL3NwZWFraW5nQWN0aXZpdHkgZm9yIHRoaXMgcHJlZGljYXRlIGluc3RlYWRcbiAgY29uc3Qgc2hvdWxkU3BlYWsgPSBhY3Rpdml0eS5jaGFubmVsRGF0YT8uc3BlYWs7XG5cbiAgY29uc3QgW2FjY2Vzc2libGVOYW1lXSA9IHVzZUFjdGl2aXR5QWNjZXNzaWJsZU5hbWUoYWN0aXZpdHksIGJvZHlSZWYpO1xuICBjb25zdCBhY3Rpdml0eUtleSA9IGdldEtleUJ5QWN0aXZpdHkoYWN0aXZpdHkpO1xuXG4gIGNvbnN0IGFja25vd2xlZGdlZCA9IHVzZUdldEhhc0Fja25vd2xlZGdlZEJ5QWN0aXZpdHlLZXkoKShhY3Rpdml0eUtleSk7XG4gIGNvbnN0IGFjdGl2aXR5S2V5UmVmID0gdXNlVmFsdWVSZWY8c3RyaW5nPihhY3Rpdml0eUtleSk7XG4gIGNvbnN0IGRlc2NlbmRhbnRJZCA9IHVzZUdldERlc2NlbmRhbnRJZEJ5QWN0aXZpdHlLZXkoKShhY3Rpdml0eUtleSk7XG4gIGNvbnN0IGRlc2NlbmRhbnRMYWJlbElkID0gYHdlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2ZS1kZXNjZW5kYW50LWxhYmVsLS0ke2FjdGl2aXR5S2V5fWA7XG5cbiAgY29uc3QgaXNBY3RpdmVEZXNjZW5kYW50ID0gZGVzY2VuZGFudElkID09PSBhY3RpdmVEZXNjZW5kYW50SWQ7XG4gIGNvbnN0IHJlYWQgPSByZWFkQWN0aXZpdHlLZXlzLmluY2x1ZGVzKGFjdGl2aXR5S2V5KTtcblxuICBjb25zdCBmb2N1c1NlbGYgPSB1c2VDYWxsYmFjazwod2l0aEZvY3VzPzogYm9vbGVhbikgPT4gdm9pZD4oXG4gICAgKHdpdGhGb2N1cz86IGJvb2xlYW4pID0+IGZvY3VzQnlBY3Rpdml0eUtleShhY3Rpdml0eUtleVJlZi5jdXJyZW50LCB3aXRoRm9jdXMpLFxuICAgIFthY3Rpdml0eUtleVJlZiwgZm9jdXNCeUFjdGl2aXR5S2V5XVxuICApO1xuXG4gIC8vIFdoZW4gYSBjaGlsZCBvZiB0aGUgYWN0aXZpdHkgcmVjZWl2ZXMgZm9jdXMsIG5vdGlmeSB0aGUgdHJhbnNjcmlwdCB0byBzZXQgdGhlIGBhcmlhLWFjdGl2ZWRlc2NlbmRhbnRgIHRvIHRoaXMgYWN0aXZpdHkuXG4gIGNvbnN0IGhhbmRsZURlc2NlbmRhbnRGb2N1czogKCkgPT4gdm9pZCA9IHVzZUNhbGxiYWNrKCgpID0+IGZvY3VzU2VsZihmYWxzZSksIFtmb2N1c1NlbGZdKTtcblxuICAvLyBXaGVuIHJlY2VpdmUgRXNjYXBlIGtleSBmcm9tIGRlc2NlbmRhbnQsIGZvY3VzIGJhY2sgdG8gdGhlIGFjdGl2aXR5LlxuICBjb25zdCBoYW5kbGVMZWF2ZUZvY3VzVHJhcCA9IHVzZUNhbGxiYWNrKCgpID0+IGZvY3VzU2VsZigpLCBbZm9jdXNTZWxmXSk7XG5cbiAgLy8gV2hlbiB0aGUgdXNlciBwcmVzcyBVUC9ET1dOIGFycm93IGtleXMsIHdlIHB1dCBhIHZpc3VhbCBmb2N1cyBpbmRpY2F0b3IgYXJvdW5kIHRoZSBmb2N1c2VkIGFjdGl2aXR5LlxuICAvLyBXZSBzaG91bGQgZG8gdGhlIHNhbWUgZm9yIG1vdXNlLCB3aGVuIHRoZSB1c2VyIGNsaWNrIG9uIHRoZSBhY3Rpdml0eSwgd2Ugc2hvdWxkIGFsc28gcHV0IGEgdmlzdWFsIGZvY3VzIGluZGljYXRvciBhcm91bmQgdGhlIGFjdGl2aXR5LlxuICAvLyBXZSBhcmUgZG9pbmcgaXQgaW4gZXZlbnQgY2FwdHVyZSBwaGFzZSB0byBwcmV2ZW50IGRlc2NlbmRhbnRzIGZyb20gc3RvcHBpbmcgZXZlbnQgcHJvcGFnYXRpb24gdG8gdXMuXG4gIGNvbnN0IGhhbmRsZU1vdXNlRG93bkNhcHR1cmU6IE1vdXNlRXZlbnRIYW5kbGVyID0gdXNlQ2FsbGJhY2soKCkgPT4gZm9jdXNTZWxmKGZhbHNlKSwgW2ZvY3VzU2VsZl0pO1xuXG4gIHJldHVybiAoXG4gICAgLy8gVE9ETzogW1AyXSBBZGQgYGFyaWEtcm9sZWRlc2NyaXB0aW9uPVwibWVzc2FnZVwiYCBmb3IgYmV0dGVyIEFYLCBuZWVkIGxvY2FsaXphdGlvbiBzdHJpbmdzLlxuICAgIDxhcnRpY2xlXG4gICAgICBhcmlhLWhpZGRlbj17YWN0aXZpdHkuY2hhbm5lbERhdGE/Llsnd2ViY2hhdDpmYWxsYmFjay10ZXh0J10gPT09ICcnfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKCd3ZWJjaGF0X19iYXNpYy10cmFuc2NyaXB0X19hY3Rpdml0eScsIHtcbiAgICAgICAgJ3dlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2aXR5LS1hY2tub3dsZWRnZWQnOiBhY2tub3dsZWRnZWQsXG4gICAgICAgICd3ZWJjaGF0X19iYXNpYy10cmFuc2NyaXB0X19hY3Rpdml0eS0tcmVhZCc6IHJlYWRcbiAgICAgIH0pfVxuICAgICAgLy8gV2hlbiBOVkRBIGlzIGluIGJyb3dzZSBtb2RlLCB1c2luZyB1cC9kb3duIGFycm93IGtleSB0byBcImJyb3dzZVwiIHdpbGwgZGlzcGF0Y2ggXCJjbGlja1wiIGFuZCBcIm1vdXNlZG93blwiIGV2ZW50cyBmb3IgPGFydGljbGU+IGVsZW1lbnQgKGluc2lkZSA8U2NyZWVuUmVhZGVyQWN0aXZpdHk+KS5cbiAgICAgIG9uTW91c2VEb3duQ2FwdHVyZT17aGFuZGxlTW91c2VEb3duQ2FwdHVyZX1cbiAgICAgIHJlZj17cmVmfVxuICAgID5cbiAgICAgIHsvKiBUT0RPOiBbUDFdIEZpbGUgYSBjcmJ1ZyBmb3IgVGFsa0JhY2suIEl0IHNob3VsZCBub3QgYWJsZSB0byByZWFkIHRoZSBjb250ZW50IHR3aWNlIHdoZW4gc2Nhbm5pbmcuICovfVxuXG4gICAgICB7LyogVGhlIGZvbGxvd2luZyA8ZGl2PiBpcyBkZXNpZ25lZCBmb3IgYWN0aXZlIGRlc2NlbmRhbnQgb25seS5cbiAgICAgICAgICBXZSB3YW50IHRvIHByZXZlbnQgc2NyZWVuIHJlYWRlciBmcm9tIHNjYW5uaW5nIHRoZSBjb250ZW50IHRoYXQgaXMgYXV0aG9yZWQgb25seSBmb3IgYWN0aXZlIGRlc2NlbmRhbnQuXG4gICAgICAgICAgVGhlIHNwZWNpZmljIGNvbnRlbnQgc2hvdWxkIG9ubHkgcmVhZCB3aGVuIHVzZXIgcHJlc3MgVVAvRE9XTiBhcnJvdyBrZXlzIHRvIGNoYW5nZSBgYXJpYS1hY3RpdmVkZXNjZW5kYW50YC5cbiAgICAgICAgICBIb3dldmVyLCBBbmRyb2lkIFRhbGtCYWNrIDEyLjEgaXMgYnVnZ3kgd2hlbiB0aGUgdGhlcmUgaXMgYW4gZWxlbWVudCB3aXRoIElEIG9mIG9uZSBvZiB0aGUgYGFyaWEtYWN0aXZlZGVzY2VuZGFudGAgcG90ZW50aWFsIGNhbmRpZGF0ZXMsXG4gICAgICAgICAgVGFsa0JhY2sgd2lsbCBuYXJyYXRlIHRoZSBtZXNzYWdlIGNvbnRlbnQgdHdpY2UgKGkuZS4gY29udGVudCBvZiBgYm9keVJlZmApLCByZWdhcmRsZXNzIHdoZXRoZXIgdGhlIElEIGlzIGN1cnJlbnRseSBzZXQgYXMgYGFyaWEtYWN0aXZlZGVzY2VuZGFudGAgb3Igbm90LlxuICAgICAgICAgIEFzIEFuZHJvaWQgZG9lcyBub3Qgc3VwcG9ydCBhY3RpdmUgZGVzY2VuZGFudCwgd2UgYXJlIGhpZGluZyB0aGUgd2hvbGUgRE9NIGVsZW1lbnQgYWx0b2dldGhlci4gKi99XG5cbiAgICAgIHshYW5kcm9pZCAmJiAoXG4gICAgICAgIDxkaXZcbiAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9e2Rlc2NlbmRhbnRMYWJlbElkfVxuICAgICAgICAgIGNsYXNzTmFtZT1cIndlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2aXR5LWFjdGl2ZS1kZXNjZW5kYW50XCJcbiAgICAgICAgICAvLyBcImlkXCIgaXMgcmVxdWlyZWQgZm9yIFwiYXJpYS1sYWJlbGxlZGJ5XCJcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvZm9yYmlkLWRvbS1wcm9wc1xuICAgICAgICAgIGlkPXtkZXNjZW5kYW50SWR9XG4gICAgICAgICAgcm9sZT1cImFydGljbGVcIlxuICAgICAgICA+XG4gICAgICAgICAgPFNjcmVlblJlYWRlclRleHQgYXJpYS1oaWRkZW49e3RydWV9IGlkPXtkZXNjZW5kYW50TGFiZWxJZH0gdGV4dD17YWNjZXNzaWJsZU5hbWV9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cbiAgICAgIHsvKiBBZGQgdGVzdHMgZm9yIGZvY3VzIHRyYXAgKi99XG4gICAgICA8Rm9jdXNUcmFwIG9uRm9jdXM9e2hhbmRsZURlc2NlbmRhbnRGb2N1c30gb25MZWF2ZT17aGFuZGxlTGVhdmVGb2N1c1RyYXB9PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIndlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2aXR5LWJvZHlcIiByZWY9e2JvZHlSZWZ9PlxuICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L0ZvY3VzVHJhcD5cbiAgICAgIHtzaG91bGRTcGVhayAmJiA8U3BlYWtBY3Rpdml0eSBhY3Rpdml0eT17YWN0aXZpdHl9IC8+fVxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoJ3dlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2aXR5LWluZGljYXRvcicsIHtcbiAgICAgICAgICAnd2ViY2hhdF9fYmFzaWMtdHJhbnNjcmlwdF9fYWN0aXZpdHktaW5kaWNhdG9yLS1mb2N1cyc6IGlzQWN0aXZlRGVzY2VuZGFudFxuICAgICAgICB9KX1cbiAgICAgIC8+XG4gICAgPC9hcnRpY2xlPlxuICApO1xufSk7XG5cbkFjdGl2aXR5Um93LmRlZmF1bHRQcm9wcyA9IHtcbiAgY2hpbGRyZW46IHVuZGVmaW5lZFxufTtcblxuQWN0aXZpdHlSb3cucHJvcFR5cGVzID0ge1xuICAvLyBQcm9wVHlwZXMgY2Fubm90IGZ1bGx5IGNhcHR1cmUgVHlwZVNjcmlwdCB0eXBlLlxuICAvLyBAdHMtaWdub3JlXG4gIGFjdGl2aXR5OiBQcm9wVHlwZXMuc2hhcGUoe1xuICAgIGNoYW5uZWxEYXRhOiBQcm9wVHlwZXMuc2hhcGUoe1xuICAgICAgc3BlYWs6IFByb3BUeXBlcy5ib29sLFxuICAgICAgJ3dlYmNoYXQ6ZmFsbGJhY2stdGV4dCc6IFByb3BUeXBlcy5zdHJpbmdcbiAgICB9KVxuICB9KS5pc1JlcXVpcmVkLFxuICBjaGlsZHJlbjogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLmVsZW1lbnQsIFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5lbGVtZW50KV0pXG59O1xuXG5leHBvcnQgZGVmYXVsdCBBY3Rpdml0eVJvdztcbiJdfQ==
|
|
@@ -54,4 +54,4 @@ ActivityTextAlt.propTypes = {
|
|
|
54
54
|
};
|
|
55
55
|
var _default = ActivityTextAlt;
|
|
56
56
|
exports.default = _default;
|
|
57
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9UcmFuc2NyaXB0L0FjdGl2aXR5VGV4dEFsdC50c3giXSwibmFtZXMiOlsiQWN0aXZpdHlUZXh0QWx0IiwiYWN0aXZpdHkiLCJib2R5UmVmIiwiaWQiLCJhY2Nlc3NpYmxlTmFtZSIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsImFueSIsImlzUmVxdWlyZWQiLCJzaGFwZSIsImN1cnJlbnQiLCJzdHJpbmciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFJQTs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztBQVFBLElBQU1BLGVBQTBDLEdBQUcsU0FBN0NBLGVBQTZDLE9BQStCO0FBQUEsTUFBNUJDLFFBQTRCLFFBQTVCQSxRQUE0QjtBQUFBLE1BQWxCQyxPQUFrQixRQUFsQkEsT0FBa0I7QUFBQSxNQUFUQyxFQUFTLFFBQVRBLEVBQVM7O0FBQ2hGLDhCQUF5Qix3Q0FBMEJGLFFBQTFCLEVBQW9DQyxPQUFwQyxDQUF6QjtBQUFBO0FBQUEsTUFBT0UsY0FBUDs7QUFFQSxzQkFBTyw2QkFBQyx5QkFBRDtBQUFrQixtQkFBYSxJQUEvQjtBQUFxQyxJQUFBLEVBQUUsRUFBRUQsRUFBekM7QUFBNkMsSUFBQSxJQUFJLEVBQUVDO0FBQW5ELElBQVA7QUFDRCxDQUpEOztBQU1BSixlQUFlLENBQUNLLFNBQWhCLEdBQTRCO0FBQzFCSixFQUFBQSxRQUFRLEVBQUVLLG1CQUFVQyxHQUFWLENBQWNDLFVBREU7QUFFMUI7QUFDQTtBQUNBTixFQUFBQSxPQUFPLEVBQUVJLG1CQUFVRyxLQUFWLENBQWdCO0FBQ3ZCQyxJQUFBQSxPQUFPLEVBQUVKLG1CQUFVQztBQURJLEdBQWhCLEVBRU5DLFVBTnVCO0FBTzFCTCxFQUFBQSxFQUFFLEVBQUVHLG1CQUFVSyxNQUFWLENBQWlCSDtBQVBLLENBQTVCO2VBVWVSLGUiLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHR5cGUgeyBSZWZPYmplY3QsIFZGQyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgV2ViQ2hhdEFjdGl2aXR5IH0gZnJvbSAnYm90ZnJhbWV3b3JrLXdlYmNoYXQtY29yZSc7XG5cbmltcG9ydCBTY3JlZW5SZWFkZXJUZXh0IGZyb20gJy4uL1NjcmVlblJlYWRlclRleHQnO1xuaW1wb3J0IHVzZUFjdGl2aXR5QWNjZXNzaWJsZU5hbWUgZnJvbSAnLi91c2VBY3Rpdml0eUFjY2Vzc2libGVOYW1lJztcblxudHlwZSBBY3Rpdml0eVRleHRBbHRQcm9wcyA9IHtcbiAgYWN0aXZpdHk6IFdlYkNoYXRBY3Rpdml0eTtcbiAgYm9keVJlZjogUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50PjtcbiAgaWQ6IHN0cmluZztcbn07XG5cbmNvbnN0IEFjdGl2aXR5VGV4dEFsdDogVkZDPEFjdGl2aXR5VGV4dEFsdFByb3BzPiA9ICh7IGFjdGl2aXR5LCBib2R5UmVmLCBpZCB9KSA9PiB7XG4gIGNvbnN0IFthY2Nlc3NpYmxlTmFtZV0gPSB1c2VBY3Rpdml0eUFjY2Vzc2libGVOYW1lKGFjdGl2aXR5LCBib2R5UmVmKTtcblxuICByZXR1cm4gPFNjcmVlblJlYWRlclRleHQgYXJpYS1oaWRkZW49e3RydWV9IGlkPXtpZH0gdGV4dD17YWNjZXNzaWJsZU5hbWV9IC8+O1xufTtcblxuQWN0aXZpdHlUZXh0QWx0LnByb3BUeXBlcyA9IHtcbiAgYWN0aXZpdHk6IFByb3BUeXBlcy5hbnkuaXNSZXF1aXJlZCxcbiAgLy8gUHJvcFR5cGVzIGlzIG5vdCBmdWxseSBjb21wYXRpYmxlIHdpdGggVHlwZVNjcmlwdFxuICAvLyBAdHMtaWdub3JlXG4gIGJvZHlSZWY6IFByb3BUeXBlcy5zaGFwZSh7XG4gICAgY3VycmVudDogUHJvcFR5cGVzLmFueVxuICB9KS5pc1JlcXVpcmVkLFxuICBpZDogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkXG59O1xuXG5leHBvcnQgZGVmYXVsdCBBY3Rpdml0eVRleHRBbHQ7XG4iXX0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiveRegionTranscript.d.ts","sourceRoot":"","sources":["../../src/Transcript/LiveRegionTranscript.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LiveRegionTranscript.d.ts","sourceRoot":"","sources":["../../src/Transcript/LiveRegionTranscript.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAM,SAAS,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAWhD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAmJlD,aAAK,yBAAyB,GAAG;IAC/B,qBAAqB,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC;CACtD,CAAC;AAEF,QAAA,MAAM,oBAAoB,EAAE,GAAG,CAAC,yBAAyB,CAkBxD,CAAC;AAUF,eAAe,oBAAoB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -9,6 +9,8 @@ exports.default = void 0;
|
|
|
9
9
|
|
|
10
10
|
var _botframeworkWebchatApi = require("botframework-webchat-api");
|
|
11
11
|
|
|
12
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
|
+
|
|
12
14
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
15
|
|
|
14
16
|
var _mathRandom = _interopRequireDefault(require("math-random"));
|
|
@@ -27,7 +29,7 @@ var _useQueueStaticElement = _interopRequireDefault(require("../providers/LiveRe
|
|
|
27
29
|
|
|
28
30
|
var _useStyleToEmotionObject = _interopRequireDefault(require("../hooks/internal/useStyleToEmotionObject"));
|
|
29
31
|
|
|
30
|
-
var
|
|
32
|
+
var _useTypistNames3 = _interopRequireDefault(require("./useTypistNames"));
|
|
31
33
|
|
|
32
34
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
33
35
|
|
|
@@ -54,7 +56,7 @@ var useGetKeyByActivity = _botframeworkWebchatApi.hooks.useGetKeyByActivity,
|
|
|
54
56
|
useStyleOptions = _botframeworkWebchatApi.hooks.useStyleOptions;
|
|
55
57
|
var ROOT_STYLE = {
|
|
56
58
|
'&.webchat__live-region-transcript': {
|
|
57
|
-
'& .webchat__live-region-
|
|
59
|
+
'& .webchat__live-region-transcript__interactive-note, & .webchat__live-region-transcript__text-element': {
|
|
58
60
|
color: 'transparent',
|
|
59
61
|
height: 1,
|
|
60
62
|
overflow: 'hidden',
|
|
@@ -74,6 +76,10 @@ var ROOT_STYLE = {
|
|
|
74
76
|
function isPresentational(activity) {
|
|
75
77
|
var _channelData$messageB, _activity$attachments;
|
|
76
78
|
|
|
79
|
+
if (activity.type !== 'message') {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
|
|
77
83
|
var channelData = activity.channelData; // "Fallback text" includes both message text and narratives for attachments.
|
|
78
84
|
// Emptying out "fallback text" essentially mute for both message and attachments.
|
|
79
85
|
|
|
@@ -96,11 +102,16 @@ var LiveRegionTranscriptCore = function LiveRegionTranscriptCore(_ref) {
|
|
|
96
102
|
_useActivityTreeWithR2 = _slicedToArray(_useActivityTreeWithR, 1),
|
|
97
103
|
flattenedActivityTree = _useActivityTreeWithR2[0];
|
|
98
104
|
|
|
105
|
+
var _useTypistNames = (0, _useTypistNames3.default)(),
|
|
106
|
+
_useTypistNames2 = _slicedToArray(_useTypistNames, 1),
|
|
107
|
+
typistNames = _useTypistNames2[0];
|
|
108
|
+
|
|
99
109
|
var getKeyByActivity = useGetKeyByActivity();
|
|
100
110
|
var localize = useLocalizer();
|
|
101
111
|
var queueStaticElement = (0, _useQueueStaticElement.default)();
|
|
102
112
|
var liveRegionInteractiveLabelAlt = localize('TRANSCRIPT_LIVE_REGION_INTERACTIVE_LABEL_ALT');
|
|
103
113
|
var liveRegionInteractiveWithLinkLabelAlt = localize('TRANSCRIPT_LIVE_REGION_INTERACTIVE_WITH_LINKS_LABEL_ALT');
|
|
114
|
+
var typingIndicator = !!typistNames.length && localize(typistNames.length > 1 ? 'TYPING_INDICATOR_MULTIPLE_TEXT' : 'TYPING_INDICATOR_SINGLE_TEXT', typistNames[0]);
|
|
104
115
|
var renderingActivities = (0, _react.useMemo)(function () {
|
|
105
116
|
return Object.freeze(flattenedActivityTree.reduce(function (intermediate, _ref2) {
|
|
106
117
|
var activity = _ref2.activity;
|
|
@@ -156,7 +167,7 @@ var LiveRegionTranscriptCore = function LiveRegionTranscriptCore(_ref) {
|
|
|
156
167
|
|
|
157
168
|
if (hasNewLink || hasNewWidget) {
|
|
158
169
|
// eslint-disable-next-line no-magic-numbers
|
|
159
|
-
var labelId = "webchat__live-region-
|
|
170
|
+
var labelId = "webchat__live-region-transcript__interactive-note--".concat((0, _mathRandom.default)().toString(36).substr(2, 5));
|
|
160
171
|
queueStaticElement(
|
|
161
172
|
/*#__PURE__*/
|
|
162
173
|
// Inside ARIA live region:
|
|
@@ -170,7 +181,7 @@ var LiveRegionTranscriptCore = function LiveRegionTranscriptCore(_ref) {
|
|
|
170
181
|
_react.default.createElement("div", {
|
|
171
182
|
"aria-atomic": "true",
|
|
172
183
|
"aria-labelledby": labelId,
|
|
173
|
-
className: "webchat__live-region-
|
|
184
|
+
className: "webchat__live-region-transcript__interactive-note",
|
|
174
185
|
role: "note"
|
|
175
186
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
176
187
|
id: labelId
|
|
@@ -179,6 +190,9 @@ var LiveRegionTranscriptCore = function LiveRegionTranscriptCore(_ref) {
|
|
|
179
190
|
|
|
180
191
|
prevRenderingActivitiesRef.current = renderingActivities;
|
|
181
192
|
}, [activityElementMapRef, getKeyByActivity, liveRegionInteractiveLabelAlt, liveRegionInteractiveWithLinkLabelAlt, prevRenderingActivitiesRef, queueStaticElement, renderingActivities]);
|
|
193
|
+
(0, _react.useEffect)(function () {
|
|
194
|
+
typingIndicator && queueStaticElement(typingIndicator);
|
|
195
|
+
}, [queueStaticElement, typingIndicator]);
|
|
182
196
|
return null;
|
|
183
197
|
};
|
|
184
198
|
|
|
@@ -196,7 +210,8 @@ var LiveRegionTranscript = function LiveRegionTranscript(_ref5) {
|
|
|
196
210
|
"aria-roledescription": transcriptRoleDescription,
|
|
197
211
|
className: (0, _classnames.default)('webchat__live-region-transcript', rootClassName),
|
|
198
212
|
fadeAfter: internalLiveRegionFadeAfter,
|
|
199
|
-
role: "log"
|
|
213
|
+
role: "log",
|
|
214
|
+
textElementClassName: "webchat__live-region-transcript__text-element"
|
|
200
215
|
}, /*#__PURE__*/_react.default.createElement(LiveRegionTranscriptCore, {
|
|
201
216
|
activityElementMapRef: activityElementMapRef
|
|
202
217
|
}));
|
|
@@ -211,4 +226,4 @@ LiveRegionTranscript.propTypes = {
|
|
|
211
226
|
};
|
|
212
227
|
var _default = LiveRegionTranscript;
|
|
213
228
|
exports.default = _default;
|
|
214
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9UcmFuc2NyaXB0L0xpdmVSZWdpb25UcmFuc2NyaXB0LnRzeCJdLCJuYW1lcyI6WyJ1c2VHZXRLZXlCeUFjdGl2aXR5IiwiaG9va3MiLCJ1c2VMb2NhbGl6ZXIiLCJ1c2VTdHlsZU9wdGlvbnMiLCJST09UX1NUWUxFIiwiY29sb3IiLCJoZWlnaHQiLCJvdmVyZmxvdyIsInBvc2l0aW9uIiwidG9wIiwid2hpdGVTcGFjZSIsIndpZHRoIiwiaXNQcmVzZW50YXRpb25hbCIsImFjdGl2aXR5IiwiY2hhbm5lbERhdGEiLCJmYWxsYmFja1RleHQiLCJtZXNzYWdlQmFjayIsImRpc3BsYXlUZXh0IiwidGV4dCIsImF0dGFjaG1lbnRzIiwibGVuZ3RoIiwiTGl2ZVJlZ2lvblRyYW5zY3JpcHRDb3JlIiwiYWN0aXZpdHlFbGVtZW50TWFwUmVmIiwiZmxhdCIsImZsYXR0ZW5lZEFjdGl2aXR5VHJlZSIsImdldEtleUJ5QWN0aXZpdHkiLCJsb2NhbGl6ZSIsInF1ZXVlU3RhdGljRWxlbWVudCIsImxpdmVSZWdpb25JbnRlcmFjdGl2ZUxhYmVsQWx0IiwibGl2ZVJlZ2lvbkludGVyYWN0aXZlV2l0aExpbmtMYWJlbEFsdCIsInJlbmRlcmluZ0FjdGl2aXRpZXMiLCJPYmplY3QiLCJmcmVlemUiLCJyZWR1Y2UiLCJpbnRlcm1lZGlhdGUiLCJzZXQiLCJNYXAiLCJwcmV2UmVuZGVyaW5nQWN0aXZpdGllc1JlZiIsInByZXZSZW5kZXJpbmdBY3Rpdml0aWVzIiwiY3VycmVudCIsImFwcGVuZGVkQWN0aXZpdGllcyIsIkFycmF5IiwiZnJvbSIsImVudHJpZXMiLCJyZXZlcnNlIiwia2V5IiwiaGFzIiwidW5zaGlmdCIsImhhc05ld0xpbmsiLCJzb21lIiwiZ2V0IiwicXVlcnlTZWxlY3RvciIsImhhc05ld1dpZGdldCIsImxhYmVsSWQiLCJ0b1N0cmluZyIsInN1YnN0ciIsIkxpdmVSZWdpb25UcmFuc2NyaXB0IiwiaW50ZXJuYWxMaXZlUmVnaW9uRmFkZUFmdGVyIiwicm9vdENsYXNzTmFtZSIsInRyYW5zY3JpcHRSb2xlRGVzY3JpcHRpb24iLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJzaGFwZSIsImluc3RhbmNlT2YiLCJpc1JlcXVpcmVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFLQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFHQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLElBQVFBLG1CQUFSLEdBQStEQyw2QkFBL0QsQ0FBUUQsbUJBQVI7QUFBQSxJQUE2QkUsWUFBN0IsR0FBK0RELDZCQUEvRCxDQUE2QkMsWUFBN0I7QUFBQSxJQUEyQ0MsZUFBM0MsR0FBK0RGLDZCQUEvRCxDQUEyQ0UsZUFBM0M7QUFFQSxJQUFNQyxVQUFVLEdBQUc7QUFDakIsdUNBQXFDO0FBQ25DLDREQUF3RDtBQUN0REMsTUFBQUEsS0FBSyxFQUFFLGFBRCtDO0FBRXREQyxNQUFBQSxNQUFNLEVBQUUsQ0FGOEM7QUFHdERDLE1BQUFBLFFBQVEsRUFBRSxRQUg0QztBQUl0REMsTUFBQUEsUUFBUSxFQUFFLFVBSjRDO0FBS3REQyxNQUFBQSxHQUFHLEVBQUUsQ0FMaUQ7QUFNdERDLE1BQUFBLFVBQVUsRUFBRSxRQU4wQztBQU90REMsTUFBQUEsS0FBSyxFQUFFO0FBUCtDO0FBRHJCO0FBRHBCLENBQW5CO0FBY0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxTQUFTQyxnQkFBVCxDQUEwQkMsUUFBMUIsRUFBaUU7QUFBQTs7QUFDL0QsTUFBUUMsV0FBUixHQUNFRCxRQURGLENBQVFDLFdBQVIsQ0FEK0QsQ0FJL0Q7QUFDQTs7QUFDQSxNQUFNQyxZQUFZLEdBQUdELFdBQUgsYUFBR0EsV0FBSCx1QkFBR0EsV0FBVyxDQUFHLHVCQUFILENBQWhDOztBQUVBLE1BQUksT0FBT0MsWUFBUCxLQUF3QixRQUE1QixFQUFzQztBQUNwQyxXQUFPLENBQUNBLFlBQVI7QUFDRCxHQVY4RCxDQVkvRDs7O0FBQ0EsU0FBTyxF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LHNCQUNFLDZCQUFDLCtCQUFEO0FBQ0UsNEJBQXNCaUMseUJBRHhCO0FBRUUsSUFBQSxTQUFTLEVBQUUseUJBQVcsaUNBQVgsRUFBOENELGFBQTlDLENBRmI7QUFHRSxJQUFBLFNBQVMsRUFBRUQsMkJBSGI7QUFJRSxJQUFBLElBQUksRUFBQztBQUpQLGtCQU1FLDZCQUFDLHdCQUFEO0FBQTBCLElBQUEscUJBQXFCLEVBQUVuQztBQUFqRCxJQU5GLENBREY7QUFVRCxDQWpCRDs7QUFtQkFrQyxvQkFBb0IsQ0FBQ0ksU0FBckIsR0FBaUM7QUFDL0I7QUFDQTtBQUNBdEMsRUFBQUEscUJBQXFCLEVBQUV1QyxtQkFBVUMsS0FBVixDQUFnQjtBQUNyQ3ZCLElBQUFBLE9BQU8sRUFBRXNCLG1CQUFVRSxVQUFWLENBQXFCM0IsR0FBckI7QUFENEIsR0FBaEIsRUFFcEI0QjtBQUw0QixDQUFqQztlQVFlUixvQiIsInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaG9va3MgfSBmcm9tICdib3RmcmFtZXdvcmstd2ViY2hhdC1hcGknO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCByYW5kb20gZnJvbSAnbWF0aC1yYW5kb20nO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdHlwZSB7IERpcmVjdExpbmVBY3Rpdml0eSB9IGZyb20gJ2JvdGZyYW1ld29yay13ZWJjaGF0LWNvcmUnO1xuaW1wb3J0IHR5cGUgeyBGQywgUmVmT2JqZWN0LCBWRkMgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCBMaXZlUmVnaW9uVHdpbkNvbXBvc2VyIGZyb20gJy4uL3Byb3ZpZGVycy9MaXZlUmVnaW9uVHdpbi9MaXZlUmVnaW9uVHdpbkNvbXBvc2VyJztcbmltcG9ydCBTY3JlZW5SZWFkZXJBY3Rpdml0eSBmcm9tICcuLi9TY3JlZW5SZWFkZXJBY3Rpdml0eSc7XG5pbXBvcnQgdGFiYmFibGVFbGVtZW50cyBmcm9tICcuLi9VdGlscy90YWJiYWJsZUVsZW1lbnRzJztcbmltcG9ydCB1c2VBY3Rpdml0eVRyZWVXaXRoUmVuZGVyZXIgZnJvbSAnLi4vcHJvdmlkZXJzL0FjdGl2aXR5VHJlZS91c2VBY3Rpdml0eVRyZWVXaXRoUmVuZGVyZXInO1xuaW1wb3J0IHVzZVF1ZXVlU3RhdGljRWxlbWVudCBmcm9tICcuLi9wcm92aWRlcnMvTGl2ZVJlZ2lvblR3aW4vdXNlUXVldWVTdGF0aWNFbGVtZW50JztcbmltcG9ydCB1c2VTdHlsZVRvRW1vdGlvbk9iamVjdCBmcm9tICcuLi9ob29rcy9pbnRlcm5hbC91c2VTdHlsZVRvRW1vdGlvbk9iamVjdCc7XG5cbmltcG9ydCB0eXBlIHsgQWN0aXZpdHlFbGVtZW50TWFwIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcblxuY29uc3QgeyB1c2VHZXRLZXlCeUFjdGl2aXR5LCB1c2VMb2NhbGl6ZXIsIHVzZVN0eWxlT3B0aW9ucyB9ID0gaG9va3M7XG5cbmNvbnN0IFJPT1RfU1RZTEUgPSB7XG4gICcmLndlYmNoYXRfX2xpdmUtcmVnaW9uLXRyYW5zY3JpcHQnOiB7XG4gICAgJyYgLndlYmNoYXRfX2xpdmUtcmVnaW9uLXRyYW5zY3JpcHRfX2ludGVyYWN0aXZlX25vdGUnOiB7XG4gICAgICBjb2xvcjogJ3RyYW5zcGFyZW50JyxcbiAgICAgIGhlaWdodDogMSxcbiAgICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcbiAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgdG9wOiAwLFxuICAgICAgd2hpdGVTcGFjZTogJ25vd3JhcCcsXG4gICAgICB3aWR0aDogMVxuICAgIH1cbiAgfVxufTtcblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIHJlbmRlcmluZyBhY3Rpdml0eSBpcyBwcmVzZW50YXRpb25hbCBvciBub3QuIFJldHVybnMgYHRydWVgIGlmIHByZXNlbnRhdGlvbmFsLCBvdGhlcndpc2UsIGBmYWxzZWAuXG4gKlxuICogUHJlc2VudGF0aW9uYWwgYWN0aXZpdHksIHdpbGwgYmUgcmVuZGVyZWQgdmlzdWFsbHkgYnV0IG5vdCBnb2luZyB0aHJvdWdoIHNjcmVlbiByZWFkZXIuXG4gKi9cbmZ1bmN0aW9uIGlzUHJlc2VudGF0aW9uYWwoYWN0aXZpdHk6IERpcmVjdExpbmVBY3Rpdml0eSk6IGJvb2xlYW4ge1xuICBjb25zdCB7IGNoYW5uZWxEYXRhIH06IHsgYXR0YWNobWVudHM/OiBbXTsgY2hhbm5lbERhdGE/OiB7IG1lc3NhZ2VCYWNrPzogeyBkaXNwbGF5VGV4dD86IHN0cmluZyB9IH07IHRleHQ/OiBzdHJpbmcgfSA9XG4gICAgYWN0aXZpdHk7XG5cbiAgLy8gXCJGYWxsYmFjayB0ZXh0XCIgaW5jbHVkZXMgYm90aCBtZXNzYWdlIHRleHQgYW5kIG5hcnJhdGl2ZXMgZm9yIGF0dGFjaG1lbnRzLlxuICAvLyBFbXB0eWluZyBvdXQgXCJmYWxsYmFjayB0ZXh0XCIgZXNzZW50aWFsbHkgbXV0ZSBmb3IgYm90aCBtZXNzYWdlIGFuZCBhdHRhY2htZW50cy5cbiAgY29uc3QgZmFsbGJhY2tUZXh0ID0gY2hhbm5lbERhdGE/Llsnd2ViY2hhdDpmYWxsYmFjay10ZXh0J107XG5cbiAgaWYgKHR5cGVvZiBmYWxsYmFja1RleHQgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuICFmYWxsYmFja1RleHQ7XG4gIH1cblxuICAvLyBJZiB0aGVyZSBhcmUgXCJkaXNwbGF5VGV4dFwiIChNZXNzYWdlQmFjayksIFwidGV4dFwiLCBvciBhbnkgYXR0YWNobWVudHMsIHRoZXJlIGFyZSBzb21ldGhpbmcgdG8gbmFycmF0ZS5cbiAgcmV0dXJuICEoY2hhbm5lbERhdGE/Lm1lc3NhZ2VCYWNrPy5kaXNwbGF5VGV4dCB8fCBhY3Rpdml0eS50ZXh0IHx8IGFjdGl2aXR5LmF0dGFjaG1lbnRzPy5sZW5ndGgpO1xufVxuXG50eXBlIFJlbmRlcmluZ0FjdGl2aXRpZXMgPSBNYXA8c3RyaW5nLCBEaXJlY3RMaW5lQWN0aXZpdHk+O1xuXG50eXBlIExpdmVSZWdpb25UcmFuc2NyaXB0Q29yZVByb3BzID0ge1xuICBhY3Rpdml0eUVsZW1lbnRNYXBSZWY6IFJlZk9iamVjdDxBY3Rpdml0eUVsZW1lbnRNYXA+O1xufTtcblxuY29uc3QgTGl2ZVJlZ2lvblRyYW5zY3JpcHRDb3JlOiBGQzxMaXZlUmVnaW9uVHJhbnNjcmlwdENvcmVQcm9wcz4gPSAoeyBhY3Rpdml0eUVsZW1lbnRNYXBSZWYgfSkgPT4ge1xuICBjb25zdCBbZmxhdHRlbmVkQWN0aXZpdHlUcmVlXSA9IHVzZUFjdGl2aXR5VHJlZVdpdGhSZW5kZXJlcih7IGZsYXQ6IHRydWUgfSk7XG4gIGNvbnN0IGdldEtleUJ5QWN0aXZpdHkgPSB1c2VHZXRLZXlCeUFjdGl2aXR5KCk7XG4gIGNvbnN0IGxvY2FsaXplID0gdXNlTG9jYWxpemVyKCk7XG4gIGNvbnN0IHF1ZXVlU3RhdGljRWxlbWVudCA9IHVzZVF1ZXVlU3RhdGljRWxlbWVudCgpO1xuXG4gIGNvbnN0IGxpdmVSZWdpb25JbnRlcmFjdGl2ZUxhYmVsQWx0ID0gbG9jYWxpemUoJ1RSQU5TQ1JJUFRfTElWRV9SRUdJT05fSU5URVJBQ1RJVkVfTEFCRUxfQUxUJyk7XG4gIGNvbnN0IGxpdmVSZWdpb25JbnRlcmFjdGl2ZVdpdGhMaW5rTGFiZWxBbHQgPSBsb2NhbGl6ZSgnVFJBTlNDUklQVF9MSVZFX1JFR0lPTl9JTlRFUkFDVElWRV9XSVRIX0xJTktTX0xBQkVMX0FMVCcpO1xuXG4gIGNvbnN0IHJlbmRlcmluZ0FjdGl2aXRpZXMgPSB1c2VNZW1vPFJlYWRvbmx5PFJlbmRlcmluZ0FjdGl2aXRpZXM+PihcbiAgICAoKSA9PlxuICAgICAgT2JqZWN0LmZyZWV6ZShcbiAgICAgICAgZmxhdHRlbmVkQWN0aXZpdHlUcmVlLnJlZHVjZTxSZW5kZXJpbmdBY3Rpdml0aWVzPihcbiAgICAgICAgICAoaW50ZXJtZWRpYXRlLCB7IGFjdGl2aXR5IH0pID0+IGludGVybWVkaWF0ZS5zZXQoZ2V0S2V5QnlBY3Rpdml0eShhY3Rpdml0eSksIGFjdGl2aXR5KSxcbiAgICAgICAgICBuZXcgTWFwPHN0cmluZywgRGlyZWN0TGluZUFjdGl2aXR5PigpXG4gICAgICAgIClcbiAgICAgICksXG4gICAgW2ZsYXR0ZW5lZEFjdGl2aXR5VHJlZSwgZ2V0S2V5QnlBY3Rpdml0eV1cbiAgKTtcblxuICBjb25zdCBwcmV2UmVuZGVyaW5nQWN0aXZpdGllc1JlZiA9IHVzZVJlZjxSZWFkb25seTxSZW5kZXJpbmdBY3Rpdml0aWVzPj4oKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHsgY3VycmVudDogcHJldlJlbmRlcmluZ0FjdGl2aXRpZXMgfSA9IHByZXZSZW5kZXJpbmdBY3Rpdml0aWVzUmVmO1xuICAgIGNvbnN0IGFwcGVuZGVkQWN0aXZpdGllczogeyBhY3Rpdml0eTogRGlyZWN0TGluZUFjdGl2aXR5OyBrZXk6IHN0cmluZyB9W10gPSBbXTtcblxuICAgIC8vIEJvdHRvbS11cCwgZmluZCBhY3Rpdml0aWVzIHdoaWNoIGFyZSByZWNlbnRseSBhcHBlbmRlZCAoaS5lLiBuZXcgYWN0aXZpdHkgd2lsbCBoYXZlIGEgbmV3IGtleSkuXG4gICAgLy8gV2Ugb25seSBjb25zaWRlciBuZXcgYWN0aXZpdGllcyBhZGRlZCB0byB0aGUgYm90dG9tIG9mIHRoZSBjaGF0IGhpc3RvcnkuXG4gICAgLy8gQmFzZWQgb24gaG93IGBhcmlhLXJlbGV2YW50PVwiYWRkaXRpb25zXCJgIHdvcmtzLCBhY3Rpdml0aWVzIHRoYXQgYXJlIHVwZGF0ZWQsIGRlbGV0ZWQsIG9yIHJlb3JkZXJlZCwgc2hvdWxkIGJlIGlnbm9yZWQuXG4gICAgZm9yIChjb25zdCBba2V5LCBhY3Rpdml0eV0gb2YgQXJyYXkuZnJvbShyZW5kZXJpbmdBY3Rpdml0aWVzLmVudHJpZXMoKSkucmV2ZXJzZSgpKSB7XG4gICAgICBpZiAocHJldlJlbmRlcmluZ0FjdGl2aXRpZXM/LmhhcyhrZXkpKSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBhcHBlbmRlZEFjdGl2aXRpZXMudW5zaGlmdCh7IGFjdGl2aXR5LCBrZXkgfSk7XG5cbiAgICAgIGlzUHJlc2VudGF0aW9uYWwoYWN0aXZpdHkpIHx8IHF1ZXVlU3RhdGljRWxlbWVudCg8U2NyZWVuUmVhZGVyQWN0aXZpdHkgYWN0aXZpdHk9e2FjdGl2aXR5fSAvPik7XG4gICAgfVxuXG4gICAgY29uc3QgaGFzTmV3TGluayA9IGFwcGVuZGVkQWN0aXZpdGllcy5zb21lKCh7IGtleSB9KSA9PiBhY3Rpdml0eUVsZW1lbnRNYXBSZWYuY3VycmVudC5nZXQoa2V5KT8ucXVlcnlTZWxlY3RvcignYScpKTtcblxuICAgIGNvbnN0IGhhc05ld1dpZGdldCA9IGFwcGVuZGVkQWN0aXZpdGllcy5zb21lKFxuICAgICAgKHsga2V5IH0pID0+XG4gICAgICAgICEhdGFiYmFibGVFbGVtZW50cyhcbiAgICAgICAgICBhY3Rpdml0eUVsZW1lbnRNYXBSZWYuY3VycmVudC5nZXQoa2V5KT8ucXVlcnlTZWxlY3RvcignLndlYmNoYXRfX2Jhc2ljLXRyYW5zY3JpcHRfX2FjdGl2aXR5LWJvZHknKVxuICAgICAgICApLmxlbmd0aFxuICAgICk7XG5cbiAgICBpZiAoaGFzTmV3TGluayB8fCBoYXNOZXdXaWRnZXQpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1tYWdpYy1udW1iZXJzXG4gICAgICBjb25zdCBsYWJlbElkID0gYHdlYmNoYXRfX2xpdmUtcmVnaW9uLXRyYW5zY3JpcHRfX2ludGVyYWN0aXZlX25vdGUtLSR7cmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cigyLCA1KX1gO1xuXG4gICAgICBxdWV1ZVN0YXRpY0VsZW1lbnQoXG4gICAgICAgIC8vIEluc2lkZSBBUklBIGxpdmUgcmVnaW9uOlxuICAgICAgICAvLyAtIEVkZ2UgKyBOYXJyYXRvcjpcbiAgICAgICAgLy8gICAtIEl0IHJlYWQgaWYgYGFyaWEtbGFiZWxsZWRieWAgb3IgYGFyaWEtbGFiZWxgIGlzIHNldDtcbiAgICAgICAgLy8gICAtIEl0IHJlYWQgbm90aGluZyBpZiBgYXJpYS1sYWJlbGxlZGJ5YCBvciBgYXJpYS1sYWJlbGAgYXJlIG5vdCBzZXQgKGluIHRoaXMgY2FzZSwgaXQgcmVhZCBcIm5vdGVcIikuXG4gICAgICAgIC8vIC0gU2FmYXJpICsgVm9pY2VPdmVyIGFuZCBDaHJvbWUgKyBOVkRBOlxuICAgICAgICAvLyAgIC0gVGhleSByZWFkIGl0cyBjb250ZW50IGFuZCBpZ25vcmUgYGFyaWEtbGFiZWxsZWRieWAgb3IgYGFyaWEtbGFiZWxgXG4gICAgICAgIC8vICAgLSBUaGV5IHdpbGwgbm90IHJlYWQgaWYgaXQgaXMgc2ltcGx5IDxkaXYgYXJpYS1sYWJlbD1cIlNvbWV0aGluZ1wiIC8+IHdpdGhvdXQgY29udGVudCAoc2VsZi1jbG9zaW5nIHRhZykuXG4gICAgICAgIC8vIEZvciBiZXN0IGNvbXBhdGliaWxpdHksIHdlIG5lZWQgYm90aCBgYXJpYS1sYWJlbGxlZGJ5YCBhbmQgY29udGVudGVkIDxkaXY+LlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgYXJpYS1hdG9taWM9XCJ0cnVlXCJcbiAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9e2xhYmVsSWR9XG4gICAgICAgICAgY2xhc3NOYW1lPVwid2ViY2hhdF9fbGl2ZS1yZWdpb24tdHJhbnNjcmlwdF9faW50ZXJhY3RpdmVfbm90ZVwiXG4gICAgICAgICAgcm9sZT1cIm5vdGVcIlxuICAgICAgICA+XG4gICAgICAgICAgey8qIFwiaWRcIiBpcyByZXF1aXJlZCBmb3IgXCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnRcIiAqL31cbiAgICAgICAgICB7LyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L2ZvcmJpZC1kb20tcHJvcHMgKi99XG4gICAgICAgICAgPHNwYW4gaWQ9e2xhYmVsSWR9PntoYXNOZXdMaW5rID8gbGl2ZVJlZ2lvbkludGVyYWN0aXZlV2l0aExpbmtMYWJlbEFsdCA6IGxpdmVSZWdpb25JbnRlcmFjdGl2ZUxhYmVsQWx0fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cblxuICAgIHByZXZSZW5kZXJpbmdBY3Rpdml0aWVzUmVmLmN1cnJlbnQgPSByZW5kZXJpbmdBY3Rpdml0aWVzO1xuICB9LCBbXG4gICAgYWN0aXZpdHlFbGVtZW50TWFwUmVmLFxuICAgIGdldEtleUJ5QWN0aXZpdHksXG4gICAgbGl2ZVJlZ2lvbkludGVyYWN0aXZlTGFiZWxBbHQsXG4gICAgbGl2ZVJlZ2lvbkludGVyYWN0aXZlV2l0aExpbmtMYWJlbEFsdCxcbiAgICBwcmV2UmVuZGVyaW5nQWN0aXZpdGllc1JlZixcbiAgICBxdWV1ZVN0YXRpY0VsZW1lbnQsXG4gICAgcmVuZGVyaW5nQWN0aXZpdGllc1xuICBdKTtcblxuICByZXR1cm4gbnVsbDtcbn07XG5cbnR5cGUgTGl2ZVJlZ2lvblRyYW5zY3JpcHRQcm9wcyA9IHtcbiAgYWN0aXZpdHlFbGVtZW50TWFwUmVmOiBSZWZPYmplY3Q8QWN0aXZpdHlFbGVtZW50TWFwPjtcbn07XG5cbmNvbnN0IExpdmVSZWdpb25UcmFuc2NyaXB0OiBWRkM8TGl2ZVJlZ2lvblRyYW5zY3JpcHRQcm9wcz4gPSAoeyBhY3Rpdml0eUVsZW1lbnRNYXBSZWYgfSkgPT4ge1xuICBjb25zdCBbeyBpbnRlcm5hbExpdmVSZWdpb25GYWRlQWZ0ZXIgfV0gPSB1c2VTdHlsZU9wdGlvbnMoKTtcbiAgY29uc3QgbG9jYWxpemUgPSB1c2VMb2NhbGl6ZXIoKTtcbiAgY29uc3Qgcm9vdENsYXNzTmFtZSA9IHVzZVN0eWxlVG9FbW90aW9uT2JqZWN0KCkoUk9PVF9TVFlMRSkgKyAnJztcblxuICBjb25zdCB0cmFuc2NyaXB0Um9sZURlc2NyaXB0aW9uID0gbG9jYWxpemUoJ1RSQU5TQ1JJUFRfQVJJQV9ST0xFX0FMVCcpO1xuXG4gIHJldHVybiAoXG4gICAgPExpdmVSZWdpb25Ud2luQ29tcG9zZXJcbiAgICAgIGFyaWEtcm9sZWRlc2NyaXB0aW9uPXt0cmFuc2NyaXB0Um9sZURlc2NyaXB0aW9ufVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKCd3ZWJjaGF0X19saXZlLXJlZ2lvbi10cmFuc2NyaXB0Jywgcm9vdENsYXNzTmFtZSl9XG4gICAgICBmYWRlQWZ0ZXI9e2ludGVybmFsTGl2ZVJlZ2lvbkZhZGVBZnRlcn1cbiAgICAgIHJvbGU9XCJsb2dcIlxuICAgID5cbiAgICAgIDxMaXZlUmVnaW9uVHJhbnNjcmlwdENvcmUgYWN0aXZpdHlFbGVtZW50TWFwUmVmPXthY3Rpdml0eUVsZW1lbnRNYXBSZWZ9IC8+XG4gICAgPC9MaXZlUmVnaW9uVHdpbkNvbXBvc2VyPlxuICApO1xufTtcblxuTGl2ZVJlZ2lvblRyYW5zY3JpcHQucHJvcFR5cGVzID0ge1xuICAvLyBQcm9wVHlwZXMgY2Fubm90IGJlIGZ1bGx5IGV4cHJlc3NlZCBpbiBUeXBlU2NyaXB0LlxuICAvLyBAdHMtaWdub3JlXG4gIGFjdGl2aXR5RWxlbWVudE1hcFJlZjogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICBjdXJyZW50OiBQcm9wVHlwZXMuaW5zdGFuY2VPZihNYXApXG4gIH0pLmlzUmVxdWlyZWRcbn07XG5cbmV4cG9ydCBkZWZhdWx0IExpdmVSZWdpb25UcmFuc2NyaXB0O1xuIl19
|
|
229
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9UcmFuc2NyaXB0L0xpdmVSZWdpb25UcmFuc2NyaXB0LnRzeCJdLCJuYW1lcyI6WyJ1c2VHZXRLZXlCeUFjdGl2aXR5IiwiaG9va3MiLCJ1c2VMb2NhbGl6ZXIiLCJ1c2VTdHlsZU9wdGlvbnMiLCJST09UX1NUWUxFIiwiY29sb3IiLCJoZWlnaHQiLCJvdmVyZmxvdyIsInBvc2l0aW9uIiwidG9wIiwid2hpdGVTcGFjZSIsIndpZHRoIiwiaXNQcmVzZW50YXRpb25hbCIsImFjdGl2aXR5IiwidHlwZSIsImNoYW5uZWxEYXRhIiwiZmFsbGJhY2tUZXh0IiwibWVzc2FnZUJhY2siLCJkaXNwbGF5VGV4dCIsInRleHQiLCJhdHRhY2htZW50cyIsImxlbmd0aCIsIkxpdmVSZWdpb25UcmFuc2NyaXB0Q29yZSIsImFjdGl2aXR5RWxlbWVudE1hcFJlZiIsImZsYXQiLCJmbGF0dGVuZWRBY3Rpdml0eVRyZWUiLCJ0eXBpc3ROYW1lcyIsImdldEtleUJ5QWN0aXZpdHkiLCJsb2NhbGl6ZSIsInF1ZXVlU3RhdGljRWxlbWVudCIsImxpdmVSZWdpb25JbnRlcmFjdGl2ZUxhYmVsQWx0IiwibGl2ZVJlZ2lvbkludGVyYWN0aXZlV2l0aExpbmtMYWJlbEFsdCIsInR5cGluZ0luZGljYXRvciIsInJlbmRlcmluZ0FjdGl2aXRpZXMiLCJPYmplY3QiLCJmcmVlemUiLCJyZWR1Y2UiLCJpbnRlcm1lZGlhdGUiLCJzZXQiLCJNYXAiLCJwcmV2UmVuZGVyaW5nQWN0aXZpdGllc1JlZiIsInByZXZSZW5kZXJpbmdBY3Rpdml0aWVzIiwiY3VycmVudCIsImFwcGVuZGVkQWN0aXZpdGllcyIsIkFycmF5IiwiZnJvbSIsImVudHJpZXMiLCJyZXZlcnNlIiwia2V5IiwiaGFzIiwidW5zaGlmdCIsImhhc05ld0xpbmsiLCJzb21lIiwiZ2V0IiwicXVlcnlTZWxlY3RvciIsImhhc05ld1dpZGdldCIsImxhYmVsSWQiLCJ0b1N0cmluZyIsInN1YnN0ciIsIkxpdmVSZWdpb25UcmFuc2NyaXB0IiwiaW50ZXJuYWxMaXZlUmVnaW9uRmFkZUFmdGVyIiwicm9vdENsYXNzTmFtZSIsInRyYW5zY3JpcHRSb2xlRGVzY3JpcHRpb24iLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJzaGFwZSIsImluc3RhbmNlT2YiLCJpc1JlcXVpcmVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFJQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUlBLElBQVFBLG1CQUFSLEdBQStEQyw2QkFBL0QsQ0FBUUQsbUJBQVI7QUFBQSxJQUE2QkUsWUFBN0IsR0FBK0RELDZCQUEvRCxDQUE2QkMsWUFBN0I7QUFBQSxJQUEyQ0MsZUFBM0MsR0FBK0RGLDZCQUEvRCxDQUEyQ0UsZUFBM0M7QUFFQSxJQUFNQyxVQUFVLEdBQUc7QUFDakIsdUNBQXFDO0FBQ25DLDhHQUEwRztBQUN4R0MsTUFBQUEsS0FBSyxFQUFFLGFBRGlHO0FBRXhHQyxNQUFBQSxNQUFNLEVBQUUsQ0FGZ0c7QUFHeEdDLE1BQUFBLFFBQVEsRUFBRSxRQUg4RjtBQUl4R0MsTUFBQUEsUUFBUSxFQUFFLFVBSjhGO0FBS3hHQyxNQUFBQSxHQUFHLEVBQUUsQ0FMbUc7QUFNeEdDLE1BQUFBLFVBQVUsRUFBRSxRQU40RjtBQU94R0MsTUFBQUEsS0FBSyxFQUFFO0FBUGlHO0FBRHZFO0FBRHBCLENBQW5CO0FBY0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxTQUFTQyxnQkFBVCxDQUEwQkMsUUFBMUIsRUFBOEQ7QUFBQTs7QUFDNUQsTUFBSUEsUUFBUSxDQUFDQyxJQUFULEtBQWtCLFNBQXRCLEVBQWlDO0FBQy9CO0FBQ0Q7O0FBRUQsTUFBUUMsV0FBUixHQUF3QkYsUUFBeEIsQ0FBUUUsV0FBUixDQUw0RCxDQU81RDtBQUNBOztBQUNBLE1BQU1DLFlBQVksR0FBR0QsV0FBSCxhQUFHQSxXQUFILHVCQUFHQSxXQUFXLENBQUcs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J2JvdGZyYW1ld29yay13ZWJjaGF0LWFwaSc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgcmFuZG9tIGZyb20gJ21hdGgtcmFuZG9tJztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgRkMsIFJlZk9iamVjdCwgVkZDIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHR5cGUgeyBXZWJDaGF0QWN0aXZpdHkgfSBmcm9tICdib3RmcmFtZXdvcmstd2ViY2hhdC1jb3JlJztcblxuaW1wb3J0IExpdmVSZWdpb25Ud2luQ29tcG9zZXIgZnJvbSAnLi4vcHJvdmlkZXJzL0xpdmVSZWdpb25Ud2luL0xpdmVSZWdpb25Ud2luQ29tcG9zZXInO1xuaW1wb3J0IFNjcmVlblJlYWRlckFjdGl2aXR5IGZyb20gJy4uL1NjcmVlblJlYWRlckFjdGl2aXR5JztcbmltcG9ydCB0YWJiYWJsZUVsZW1lbnRzIGZyb20gJy4uL1V0aWxzL3RhYmJhYmxlRWxlbWVudHMnO1xuaW1wb3J0IHVzZUFjdGl2aXR5VHJlZVdpdGhSZW5kZXJlciBmcm9tICcuLi9wcm92aWRlcnMvQWN0aXZpdHlUcmVlL3VzZUFjdGl2aXR5VHJlZVdpdGhSZW5kZXJlcic7XG5pbXBvcnQgdXNlUXVldWVTdGF0aWNFbGVtZW50IGZyb20gJy4uL3Byb3ZpZGVycy9MaXZlUmVnaW9uVHdpbi91c2VRdWV1ZVN0YXRpY0VsZW1lbnQnO1xuaW1wb3J0IHVzZVN0eWxlVG9FbW90aW9uT2JqZWN0IGZyb20gJy4uL2hvb2tzL2ludGVybmFsL3VzZVN0eWxlVG9FbW90aW9uT2JqZWN0JztcbmltcG9ydCB1c2VUeXBpc3ROYW1lcyBmcm9tICcuL3VzZVR5cGlzdE5hbWVzJztcblxuaW1wb3J0IHR5cGUgeyBBY3Rpdml0eUVsZW1lbnRNYXAgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgeyB1c2VHZXRLZXlCeUFjdGl2aXR5LCB1c2VMb2NhbGl6ZXIsIHVzZVN0eWxlT3B0aW9ucyB9ID0gaG9va3M7XG5cbmNvbnN0IFJPT1RfU1RZTEUgPSB7XG4gICcmLndlYmNoYXRfX2xpdmUtcmVnaW9uLXRyYW5zY3JpcHQnOiB7XG4gICAgJyYgLndlYmNoYXRfX2xpdmUtcmVnaW9uLXRyYW5zY3JpcHRfX2ludGVyYWN0aXZlLW5vdGUsICYgLndlYmNoYXRfX2xpdmUtcmVnaW9uLXRyYW5zY3JpcHRfX3RleHQtZWxlbWVudCc6IHtcbiAgICAgIGNvbG9yOiAndHJhbnNwYXJlbnQnLFxuICAgICAgaGVpZ2h0OiAxLFxuICAgICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxuICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICB0b3A6IDAsXG4gICAgICB3aGl0ZVNwYWNlOiAnbm93cmFwJyxcbiAgICAgIHdpZHRoOiAxXG4gICAgfVxuICB9XG59O1xuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgcmVuZGVyaW5nIGFjdGl2aXR5IGlzIHByZXNlbnRhdGlvbmFsIG9yIG5vdC4gUmV0dXJucyBgdHJ1ZWAgaWYgcHJlc2VudGF0aW9uYWwsIG90aGVyd2lzZSwgYGZhbHNlYC5cbiAqXG4gKiBQcmVzZW50YXRpb25hbCBhY3Rpdml0eSwgd2lsbCBiZSByZW5kZXJlZCB2aXN1YWxseSBidXQgbm90IGdvaW5nIHRocm91Z2ggc2NyZWVuIHJlYWRlci5cbiAqL1xuZnVuY3Rpb24gaXNQcmVzZW50YXRpb25hbChhY3Rpdml0eTogV2ViQ2hhdEFjdGl2aXR5KTogYm9vbGVhbiB7XG4gIGlmIChhY3Rpdml0eS50eXBlICE9PSAnbWVzc2FnZScpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCB7IGNoYW5uZWxEYXRhIH0gPSBhY3Rpdml0eTtcblxuICAvLyBcIkZhbGxiYWNrIHRleHRcIiBpbmNsdWRlcyBib3RoIG1lc3NhZ2UgdGV4dCBhbmQgbmFycmF0aXZlcyBmb3IgYXR0YWNobWVudHMuXG4gIC8vIEVtcHR5aW5nIG91dCBcImZhbGxiYWNrIHRleHRcIiBlc3NlbnRpYWxseSBtdXRlIGZvciBib3RoIG1lc3NhZ2UgYW5kIGF0dGFjaG1lbnRzLlxuICBjb25zdCBmYWxsYmFja1RleHQgPSBjaGFubmVsRGF0YT8uWyd3ZWJjaGF0OmZhbGxiYWNrLXRleHQnXTtcblxuICBpZiAodHlwZW9mIGZhbGxiYWNrVGV4dCA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gIWZhbGxiYWNrVGV4dDtcbiAgfVxuXG4gIC8vIElmIHRoZXJlIGFyZSBcImRpc3BsYXlUZXh0XCIgKE1lc3NhZ2VCYWNrKSwgXCJ0ZXh0XCIsIG9yIGFueSBhdHRhY2htZW50cywgdGhlcmUgYXJlIHNvbWV0aGluZyB0byBuYXJyYXRlLlxuICByZXR1cm4gIShjaGFubmVsRGF0YT8ubWVzc2FnZUJhY2s/LmRpc3BsYXlUZXh0IHx8IGFjdGl2aXR5LnRleHQgfHwgYWN0aXZpdHkuYXR0YWNobWVudHM/Lmxlbmd0aCk7XG59XG5cbnR5cGUgUmVuZGVyaW5nQWN0aXZpdGllcyA9IE1hcDxzdHJpbmcsIFdlYkNoYXRBY3Rpdml0eT47XG5cbnR5cGUgTGl2ZVJlZ2lvblRyYW5zY3JpcHRDb3JlUHJvcHMgPSB7XG4gIGFjdGl2aXR5RWxlbWVudE1hcFJlZjogUmVmT2JqZWN0PEFjdGl2aXR5RWxlbWVudE1hcD47XG59O1xuXG5jb25zdCBMaXZlUmVnaW9uVHJhbnNjcmlwdENvcmU6IEZDPExpdmVSZWdpb25UcmFuc2NyaXB0Q29yZVByb3BzPiA9ICh7IGFjdGl2aXR5RWxlbWVudE1hcFJlZiB9KSA9PiB7XG4gIGNvbnN0IFtmbGF0dGVuZWRBY3Rpdml0eVRyZWVdID0gdXNlQWN0aXZpdHlUcmVlV2l0aFJlbmRlcmVyKHsgZmxhdDogdHJ1ZSB9KTtcbiAgY29uc3QgW3R5cGlzdE5hbWVzXSA9IHVzZVR5cGlzdE5hbWVzKCk7XG4gIGNvbnN0IGdldEtleUJ5QWN0aXZpdHkgPSB1c2VHZXRLZXlCeUFjdGl2aXR5KCk7XG4gIGNvbnN0IGxvY2FsaXplID0gdXNlTG9jYWxpemVyKCk7XG4gIGNvbnN0IHF1ZXVlU3RhdGljRWxlbWVudCA9IHVzZVF1ZXVlU3RhdGljRWxlbWVudCgpO1xuXG4gIGNvbnN0IGxpdmVSZWdpb25JbnRlcmFjdGl2ZUxhYmVsQWx0ID0gbG9jYWxpemUoJ1RSQU5TQ1JJUFRfTElWRV9SRUdJT05fSU5URVJBQ1RJVkVfTEFCRUxfQUxUJyk7XG4gIGNvbnN0IGxpdmVSZWdpb25JbnRlcmFjdGl2ZVdpdGhMaW5rTGFiZWxBbHQgPSBsb2NhbGl6ZSgnVFJBTlNDUklQVF9MSVZFX1JFR0lPTl9JTlRFUkFDVElWRV9XSVRIX0xJTktTX0xBQkVMX0FMVCcpO1xuICBjb25zdCB0eXBpbmdJbmRpY2F0b3IgPVxuICAgICEhdHlwaXN0TmFtZXMubGVuZ3RoICYmXG4gICAgbG9jYWxpemUoXG4gICAgICB0eXBpc3ROYW1lcy5sZW5ndGggPiAxID8gJ1RZUElOR19JTkRJQ0FUT1JfTVVMVElQTEVfVEVYVCcgOiAnVFlQSU5HX0lORElDQVRPUl9TSU5HTEVfVEVYVCcsXG4gICAgICB0eXBpc3ROYW1lc1swXVxuICAgICk7XG5cbiAgY29uc3QgcmVuZGVyaW5nQWN0aXZpdGllcyA9IHVzZU1lbW88UmVhZG9ubHk8UmVuZGVyaW5nQWN0aXZpdGllcz4+KFxuICAgICgpID0+XG4gICAgICBPYmplY3QuZnJlZXplKFxuICAgICAgICBmbGF0dGVuZWRBY3Rpdml0eVRyZWUucmVkdWNlPFJlbmRlcmluZ0FjdGl2aXRpZXM+KFxuICAgICAgICAgIChpbnRlcm1lZGlhdGUsIHsgYWN0aXZpdHkgfSkgPT4gaW50ZXJtZWRpYXRlLnNldChnZXRLZXlCeUFjdGl2aXR5KGFjdGl2aXR5KSwgYWN0aXZpdHkpLFxuICAgICAgICAgIG5ldyBNYXA8c3RyaW5nLCBXZWJDaGF0QWN0aXZpdHk+KClcbiAgICAgICAgKVxuICAgICAgKSxcbiAgICBbZmxhdHRlbmVkQWN0aXZpdHlUcmVlLCBnZXRLZXlCeUFjdGl2aXR5XVxuICApO1xuXG4gIGNvbnN0IHByZXZSZW5kZXJpbmdBY3Rpdml0aWVzUmVmID0gdXNlUmVmPFJlYWRvbmx5PFJlbmRlcmluZ0FjdGl2aXRpZXM+PigpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50OiBwcmV2UmVuZGVyaW5nQWN0aXZpdGllcyB9ID0gcHJldlJlbmRlcmluZ0FjdGl2aXRpZXNSZWY7XG4gICAgY29uc3QgYXBwZW5kZWRBY3Rpdml0aWVzOiB7IGFjdGl2aXR5OiBXZWJDaGF0QWN0aXZpdHk7IGtleTogc3RyaW5nIH1bXSA9IFtdO1xuXG4gICAgLy8gQm90dG9tLXVwLCBmaW5kIGFjdGl2aXRpZXMgd2hpY2ggYXJlIHJlY2VudGx5IGFwcGVuZGVkIChpLmUuIG5ldyBhY3Rpdml0eSB3aWxsIGhhdmUgYSBuZXcga2V5KS5cbiAgICAvLyBXZSBvbmx5IGNvbnNpZGVyIG5ldyBhY3Rpdml0aWVzIGFkZGVkIHRvIHRoZSBib3R0b20gb2YgdGhlIGNoYXQgaGlzdG9yeS5cbiAgICAvLyBCYXNlZCBvbiBob3cgYGFyaWEtcmVsZXZhbnQ9XCJhZGRpdGlvbnNcImAgd29ya3MsIGFjdGl2aXRpZXMgdGhhdCBhcmUgdXBkYXRlZCwgZGVsZXRlZCwgb3IgcmVvcmRlcmVkLCBzaG91bGQgYmUgaWdub3JlZC5cbiAgICBmb3IgKGNvbnN0IFtrZXksIGFjdGl2aXR5XSBvZiBBcnJheS5mcm9tKHJlbmRlcmluZ0FjdGl2aXRpZXMuZW50cmllcygpKS5yZXZlcnNlKCkpIHtcbiAgICAgIGlmIChwcmV2UmVuZGVyaW5nQWN0aXZpdGllcz8uaGFzKGtleSkpIHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGFwcGVuZGVkQWN0aXZpdGllcy51bnNoaWZ0KHsgYWN0aXZpdHksIGtleSB9KTtcblxuICAgICAgaXNQcmVzZW50YXRpb25hbChhY3Rpdml0eSkgfHwgcXVldWVTdGF0aWNFbGVtZW50KDxTY3JlZW5SZWFkZXJBY3Rpdml0eSBhY3Rpdml0eT17YWN0aXZpdHl9IC8+KTtcbiAgICB9XG5cbiAgICBjb25zdCBoYXNOZXdMaW5rID0gYXBwZW5kZWRBY3Rpdml0aWVzLnNvbWUoKHsga2V5IH0pID0+IGFjdGl2aXR5RWxlbWVudE1hcFJlZi5jdXJyZW50LmdldChrZXkpPy5xdWVyeVNlbGVjdG9yKCdhJykpO1xuXG4gICAgY29uc3QgaGFzTmV3V2lkZ2V0ID0gYXBwZW5kZWRBY3Rpdml0aWVzLnNvbWUoXG4gICAgICAoeyBrZXkgfSkgPT5cbiAgICAgICAgISF0YWJiYWJsZUVsZW1lbnRzKFxuICAgICAgICAgIGFjdGl2aXR5RWxlbWVudE1hcFJlZi5jdXJyZW50LmdldChrZXkpPy5xdWVyeVNlbGVjdG9yKCcud2ViY2hhdF9fYmFzaWMtdHJhbnNjcmlwdF9fYWN0aXZpdHktYm9keScpXG4gICAgICAgICkubGVuZ3RoXG4gICAgKTtcblxuICAgIGlmIChoYXNOZXdMaW5rIHx8IGhhc05ld1dpZGdldCkge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLW1hZ2ljLW51bWJlcnNcbiAgICAgIGNvbnN0IGxhYmVsSWQgPSBgd2ViY2hhdF9fbGl2ZS1yZWdpb24tdHJhbnNjcmlwdF9faW50ZXJhY3RpdmUtbm90ZS0tJHtyYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyKDIsIDUpfWA7XG5cbiAgICAgIHF1ZXVlU3RhdGljRWxlbWVudChcbiAgICAgICAgLy8gSW5zaWRlIEFSSUEgbGl2ZSByZWdpb246XG4gICAgICAgIC8vIC0gRWRnZSArIE5hcnJhdG9yOlxuICAgICAgICAvLyAgIC0gSXQgcmVhZCBpZiBgYXJpYS1sYWJlbGxlZGJ5YCBvciBgYXJpYS1sYWJlbGAgaXMgc2V0O1xuICAgICAgICAvLyAgIC0gSXQgcmVhZCBub3RoaW5nIGlmIGBhcmlhLWxhYmVsbGVkYnlgIG9yIGBhcmlhLWxhYmVsYCBhcmUgbm90IHNldCAoaW4gdGhpcyBjYXNlLCBpdCByZWFkIFwibm90ZVwiKS5cbiAgICAgICAgLy8gLSBTYWZhcmkgKyBWb2ljZU92ZXIgYW5kIENocm9tZSArIE5WREE6XG4gICAgICAgIC8vICAgLSBUaGV5IHJlYWQgaXRzIGNvbnRlbnQgYW5kIGlnbm9yZSBgYXJpYS1sYWJlbGxlZGJ5YCBvciBgYXJpYS1sYWJlbGBcbiAgICAgICAgLy8gICAtIFRoZXkgd2lsbCBub3QgcmVhZCBpZiBpdCBpcyBzaW1wbHkgPGRpdiBhcmlhLWxhYmVsPVwiU29tZXRoaW5nXCIgLz4gd2l0aG91dCBjb250ZW50IChzZWxmLWNsb3NpbmcgdGFnKS5cbiAgICAgICAgLy8gRm9yIGJlc3QgY29tcGF0aWJpbGl0eSwgd2UgbmVlZCBib3RoIGBhcmlhLWxhYmVsbGVkYnlgIGFuZCBjb250ZW50ZWQgPGRpdj4uXG4gICAgICAgIDxkaXZcbiAgICAgICAgICBhcmlhLWF0b21pYz1cInRydWVcIlxuICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17bGFiZWxJZH1cbiAgICAgICAgICBjbGFzc05hbWU9XCJ3ZWJjaGF0X19saXZlLXJlZ2lvbi10cmFuc2NyaXB0X19pbnRlcmFjdGl2ZS1ub3RlXCJcbiAgICAgICAgICByb2xlPVwibm90ZVwiXG4gICAgICAgID5cbiAgICAgICAgICB7LyogXCJpZFwiIGlzIHJlcXVpcmVkIGZvciBcImFyaWEtYWN0aXZlZGVzY2VuZGFudFwiICovfVxuICAgICAgICAgIHsvKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvZm9yYmlkLWRvbS1wcm9wcyAqL31cbiAgICAgICAgICA8c3BhbiBpZD17bGFiZWxJZH0+e2hhc05ld0xpbmsgPyBsaXZlUmVnaW9uSW50ZXJhY3RpdmVXaXRoTGlua0xhYmVsQWx0IDogbGl2ZVJlZ2lvbkludGVyYWN0aXZlTGFiZWxBbHR9PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgcHJldlJlbmRlcmluZ0FjdGl2aXRpZXNSZWYuY3VycmVudCA9IHJlbmRlcmluZ0FjdGl2aXRpZXM7XG4gIH0sIFtcbiAgICBhY3Rpdml0eUVsZW1lbnRNYXBSZWYsXG4gICAgZ2V0S2V5QnlBY3Rpdml0eSxcbiAgICBsaXZlUmVnaW9uSW50ZXJhY3RpdmVMYWJlbEFsdCxcbiAgICBsaXZlUmVnaW9uSW50ZXJhY3RpdmVXaXRoTGlua0xhYmVsQWx0LFxuICAgIHByZXZSZW5kZXJpbmdBY3Rpdml0aWVzUmVmLFxuICAgIHF1ZXVlU3RhdGljRWxlbWVudCxcbiAgICByZW5kZXJpbmdBY3Rpdml0aWVzXG4gIF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgdHlwaW5nSW5kaWNhdG9yICYmIHF1ZXVlU3RhdGljRWxlbWVudCh0eXBpbmdJbmRpY2F0b3IpO1xuICB9LCBbcXVldWVTdGF0aWNFbGVtZW50LCB0eXBpbmdJbmRpY2F0b3JdKTtcblxuICByZXR1cm4gbnVsbDtcbn07XG5cbnR5cGUgTGl2ZVJlZ2lvblRyYW5zY3JpcHRQcm9wcyA9IHtcbiAgYWN0aXZpdHlFbGVtZW50TWFwUmVmOiBSZWZPYmplY3Q8QWN0aXZpdHlFbGVtZW50TWFwPjtcbn07XG5cbmNvbnN0IExpdmVSZWdpb25UcmFuc2NyaXB0OiBWRkM8TGl2ZVJlZ2lvblRyYW5zY3JpcHRQcm9wcz4gPSAoeyBhY3Rpdml0eUVsZW1lbnRNYXBSZWYgfSkgPT4ge1xuICBjb25zdCBbeyBpbnRlcm5hbExpdmVSZWdpb25GYWRlQWZ0ZXIgfV0gPSB1c2VTdHlsZU9wdGlvbnMoKTtcbiAgY29uc3QgbG9jYWxpemUgPSB1c2VMb2NhbGl6ZXIoKTtcbiAgY29uc3Qgcm9vdENsYXNzTmFtZSA9IHVzZVN0eWxlVG9FbW90aW9uT2JqZWN0KCkoUk9PVF9TVFlMRSkgKyAnJztcblxuICBjb25zdCB0cmFuc2NyaXB0Um9sZURlc2NyaXB0aW9uID0gbG9jYWxpemUoJ1RSQU5TQ1JJUFRfQVJJQV9ST0xFX0FMVCcpO1xuXG4gIHJldHVybiAoXG4gICAgPExpdmVSZWdpb25Ud2luQ29tcG9zZXJcbiAgICAgIGFyaWEtcm9sZWRlc2NyaXB0aW9uPXt0cmFuc2NyaXB0Um9sZURlc2NyaXB0aW9ufVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKCd3ZWJjaGF0X19saXZlLXJlZ2lvbi10cmFuc2NyaXB0Jywgcm9vdENsYXNzTmFtZSl9XG4gICAgICBmYWRlQWZ0ZXI9e2ludGVybmFsTGl2ZVJlZ2lvbkZhZGVBZnRlcn1cbiAgICAgIHJvbGU9XCJsb2dcIlxuICAgICAgdGV4dEVsZW1lbnRDbGFzc05hbWU9XCJ3ZWJjaGF0X19saXZlLXJlZ2lvbi10cmFuc2NyaXB0X190ZXh0LWVsZW1lbnRcIlxuICAgID5cbiAgICAgIDxMaXZlUmVnaW9uVHJhbnNjcmlwdENvcmUgYWN0aXZpdHlFbGVtZW50TWFwUmVmPXthY3Rpdml0eUVsZW1lbnRNYXBSZWZ9IC8+XG4gICAgPC9MaXZlUmVnaW9uVHdpbkNvbXBvc2VyPlxuICApO1xufTtcblxuTGl2ZVJlZ2lvblRyYW5zY3JpcHQucHJvcFR5cGVzID0ge1xuICAvLyBQcm9wVHlwZXMgY2Fubm90IGJlIGZ1bGx5IGV4cHJlc3NlZCBpbiBUeXBlU2NyaXB0LlxuICAvLyBAdHMtaWdub3JlXG4gIGFjdGl2aXR5RWxlbWVudE1hcFJlZjogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICBjdXJyZW50OiBQcm9wVHlwZXMuaW5zdGFuY2VPZihNYXApXG4gIH0pLmlzUmVxdWlyZWRcbn07XG5cbmV4cG9ydCBkZWZhdWx0IExpdmVSZWdpb25UcmFuc2NyaXB0O1xuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { DirectLineActivity } from 'botframework-webchat-core';
|
|
2
1
|
import type { RefObject } from 'react';
|
|
3
|
-
|
|
2
|
+
import type { WebChatActivity } from 'botframework-webchat-core';
|
|
3
|
+
export default function useActivityAccessibleName(activity: WebChatActivity, bodyRef: RefObject<HTMLElement>): string[];
|
|
4
4
|
//# sourceMappingURL=useActivityAccessibleName.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useActivityAccessibleName.d.ts","sourceRoot":"","sources":["../../src/Transcript/useActivityAccessibleName.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useActivityAccessibleName.d.ts","sourceRoot":"","sources":["../../src/Transcript/useActivityAccessibleName.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAsBjE,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,YA0D3G"}
|
|
@@ -65,7 +65,7 @@ function useActivityAccessibleName(activity, bodyRef) {
|
|
|
65
65
|
var localizeWithPlural = useLocalizer({
|
|
66
66
|
plural: true
|
|
67
67
|
});
|
|
68
|
-
var numAttachments = ((_activity$attachments = activity.attachments) === null || _activity$attachments === void 0 ? void 0 : _activity$attachments.length) || 0;
|
|
68
|
+
var numAttachments = activity.type === 'message' ? ((_activity$attachments = activity.attachments) === null || _activity$attachments === void 0 ? void 0 : _activity$attachments.length) || 0 : 0;
|
|
69
69
|
var renderMarkdownAsHTML = (0, _useRenderMarkdownAsHTML.default)();
|
|
70
70
|
var activityInteractiveAlt = localize('ACTIVITY_INTERACTIVE_LABEL_ALT'); // "Click to interact."
|
|
71
71
|
|
|
@@ -94,4 +94,4 @@ function useActivityAccessibleName(activity, bodyRef) {
|
|
|
94
94
|
}, [bodyRef, interactiveTypeRef, setInteractiveType]);
|
|
95
95
|
return [accessibleName];
|
|
96
96
|
}
|
|
97
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9UcmFuc2NyaXB0L3VzZUFjdGl2aXR5QWNjZXNzaWJsZU5hbWUudHMiXSwibmFtZXMiOlsiSW50ZXJhY3RpdmVUeXBlIiwidXNlQXZhdGFyRm9yQm90IiwiaG9va3MiLCJ1c2VMb2NhbGl6ZXIiLCJBQ1RJVklUWV9OVU1fQVRUQUNITUVOVFNfQUxUX0lEUyIsImZldyIsIm1hbnkiLCJvbmUiLCJvdGhlciIsInR3byIsInVzZUFjdGl2aXR5QWNjZXNzaWJsZU5hbWUiLCJhY3Rpdml0eSIsImJvZHlSZWYiLCJib3RJbml0aWFscyIsImluaXRpYWxzIiwiaW50ZXJhY3RpdmVUeXBlIiwic2V0SW50ZXJhY3RpdmVUeXBlIiwiZnJvbVNlbGYiLCJmcm9tIiwicm9sZSIsImxvY2FsaXplIiwibG9jYWxpemVXaXRoUGx1cmFsIiwicGx1cmFsIiwibnVtQXR0YWNobWVudHMiLCJ0eXBlIiwiYXR0YWNobWVudHMiLCJsZW5ndGgiLCJyZW5kZXJNYXJrZG93bkFzSFRNTCIsImFjdGl2aXR5SW50ZXJhY3RpdmVBbHQiLCJhY3Rpdml0eUludGVyYWN0aXZlV2l0aExpbmtBbHQiLCJncmVldGluZ0FsdCIsInJlcGxhY2UiLCJpbnRlcmFjdGl2ZVR5cGVSZWYiLCJtZXNzYWdlVGV4dEFsdCIsIm51bUF0dGFjaG1lbnRzQWx0IiwiYWNjZXNzaWJsZU5hbWUiLCJMSU5LIiwiV0lER0VUIiwiaGFzTGlua3MiLCJjdXJyZW50IiwicXVlcnlTZWxlY3RvciIsImhhc1dpZGdldHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFJQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztJQUVLQSxlOztXQUFBQSxlO0FBQUFBLEVBQUFBLGUsQ0FBQUEsZTtBQUFBQSxFQUFBQSxlLENBQUFBLGU7R0FBQUEsZSxLQUFBQSxlOztBQUtMLElBQVFDLGVBQVIsR0FBMENDLDZCQUExQyxDQUFRRCxlQUFSO0FBQUEsSUFBeUJFLFlBQXpCLEdBQTBDRCw2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QUFVLEdBQUcsQ0FBQyxDQUFDLCtCQUFpQjdCLE9BQU8sQ0FBQzJCLE9BQXpCLEVBQWtDYixNQUF2RDtBQUVBTSxJQUFBQSxrQkFBa0IsQ0FBQ08sT0FBbkIsS0FBK0JFLFVBQS9CLElBQ0V6QixrQkFBa0IsQ0FBQ3NCLFFBQVEsR0FBR3RDLGVBQWUsQ0FBQ29DLElBQW5CLEdBQTBCSyxVQUFVLEdBQUd6QyxlQUFlLENBQUNxQyxNQUFuQixHQUE0QixLQUF6RSxDQURwQjtBQUVELEdBTkQsRUFNRyxDQUFDekIsT0FBRCxFQUFVb0Isa0JBQVYsRUFBOEJoQixrQkFBOUIsQ0FOSDtBQVFBLFNBQU8sQ0FBQ21CLGNBQUQsQ0FBUDtBQUNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBob29rcyB9IGZyb20gJ2JvdGZyYW1ld29yay13ZWJjaGF0LWFwaSc7XG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHR5cGUgeyBSZWZPYmplY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgdHlwZSB7IFdlYkNoYXRBY3Rpdml0eSB9IGZyb20gJ2JvdGZyYW1ld29yay13ZWJjaGF0LWNvcmUnO1xuXG5pbXBvcnQgYWN0aXZpdHlBbHRUZXh0IGZyb20gJy4uL1V0aWxzL2FjdGl2aXR5QWx0VGV4dCc7XG5pbXBvcnQgdGFiYmFibGVFbGVtZW50cyBmcm9tICcuLi9VdGlscy90YWJiYWJsZUVsZW1lbnRzJztcbmltcG9ydCB1c2VSZW5kZXJNYXJrZG93bkFzSFRNTCBmcm9tICcuLi9ob29rcy91c2VSZW5kZXJNYXJrZG93bkFzSFRNTCc7XG5pbXBvcnQgdXNlVmFsdWVSZWYgZnJvbSAnLi4vaG9va3MvaW50ZXJuYWwvdXNlVmFsdWVSZWYnO1xuXG5lbnVtIEludGVyYWN0aXZlVHlwZSB7XG4gIExJTkssXG4gIFdJREdFVFxufVxuXG5jb25zdCB7IHVzZUF2YXRhckZvckJvdCwgdXNlTG9jYWxpemVyIH0gPSBob29rcztcblxuY29uc3QgQUNUSVZJVFlfTlVNX0FUVEFDSE1FTlRTX0FMVF9JRFMgPSB7XG4gIGZldzogJ0FDVElWSVRZX05VTV9BVFRBQ0hNRU5UU19GRVdfQUxUJyxcbiAgbWFueTogJ0FDVElWSVRZX05VTV9BVFRBQ0hNRU5UU19NQU5ZX0FMVCcsXG4gIG9uZTogJ0FDVElWSVRZX05VTV9BVFRBQ0hNRU5UU19PTkVfQUxUJyxcbiAgb3RoZXI6ICdBQ1RJVklUWV9OVU1fQVRUQUNITUVOVFNfT1RIRVJfQUxUJyxcbiAgdHdvOiAnQUNUSVZJVFlfTlVNX0FUVEFDSE1FTlRTX1RXT19BTFQnXG59O1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VBY3Rpdml0eUFjY2Vzc2libGVOYW1lKGFjdGl2aXR5OiBXZWJDaGF0QWN0aXZpdHksIGJvZHlSZWY6IFJlZk9iamVjdDxIVE1MRWxlbWVudD4pIHtcbiAgY29uc3QgW3sgaW5pdGlhbHM6IGJvdEluaXRpYWxzIH1dID0gdXNlQXZhdGFyRm9yQm90KCk7XG4gIGNvbnN0IFtpbnRlcmFjdGl2ZVR5cGUsIHNldEludGVyYWN0aXZlVHlwZV0gPSB1c2VTdGF0ZTxJbnRlcmFjdGl2ZVR5cGUgfCBmYWxzZT4oZmFsc2UpO1xuICBjb25zdCBmcm9tU2VsZiA9IGFjdGl2aXR5LmZyb20/LnJvbGUgPT09ICd1c2VyJztcbiAgY29uc3QgbG9jYWxpemUgPSB1c2VMb2NhbGl6ZXIoKTtcbiAgY29uc3QgbG9jYWxpemVXaXRoUGx1cmFsID0gdXNlTG9jYWxpemVyKHsgcGx1cmFsOiB0cnVlIH0pO1xuICBjb25zdCBudW1BdHRhY2htZW50cyA9IGFjdGl2aXR5LnR5cGUgPT09ICdtZXNzYWdlJyA/IGFjdGl2aXR5LmF0dGFjaG1lbnRzPy5sZW5ndGggfHwgMCA6IDA7XG4gIGNvbnN0IHJlbmRlck1hcmtkb3duQXNIVE1MID0gdXNlUmVuZGVyTWFya2Rvd25Bc0hUTUwoKTtcblxuICBjb25zdCBhY3Rpdml0eUludGVyYWN0aXZlQWx0ID0gbG9jYWxpemUoJ0FDVElWSVRZX0lOVEVSQUNUSVZFX0xBQkVMX0FMVCcpOyAvLyBcIkNsaWNrIHRvIGludGVyYWN0LlwiXG4gIGNvbnN0IGFjdGl2aXR5SW50ZXJhY3RpdmVXaXRoTGlua0FsdCA9IGxvY2FsaXplKCdBQ1RJVklUWV9JTlRFUkFDVElWRV9XSVRIX0xJTktTX0xBQkVMX0FMVCcpOyAvLyBcIkNsaWNrIHRvIGludGVyYWN0LlwiXG4gIGNvbnN0IGdyZWV0aW5nQWx0ID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgKGZyb21TZWxmID8gbG9jYWxpemUoJ0FDVElWSVRZX1lPVV9TQUlEX0FMVCcpIDogbG9jYWxpemUoJ0FDVElWSVRZX0JPVF9TQUlEX0FMVCcsIGJvdEluaXRpYWxzIHx8ICcnKSkucmVwbGFjZShcbiAgICAgICAgL1xcc3syLH0vZ3UsXG4gICAgICAgICcgJ1xuICAgICAgKSxcbiAgICBbYm90SW5pdGlhbHMsIGZyb21TZWxmLCBsb2NhbGl6ZV1cbiAgKTtcbiAgY29uc3QgaW50ZXJhY3RpdmVUeXBlUmVmID0gdXNlVmFsdWVSZWYoaW50ZXJhY3RpdmVUeXBlKTtcbiAgY29uc3QgbWVzc2FnZVRleHRBbHQgPSB1c2VNZW1vKFxuICAgICgpID0+IGFjdGl2aXR5QWx0VGV4dChhY3Rpdml0eSwgcmVuZGVyTWFya2Rvd25Bc0hUTUwpLFxuICAgIFthY3Rpdml0eSwgcmVuZGVyTWFya2Rvd25Bc0hUTUxdXG4gICk7XG4gIGNvbnN0IG51bUF0dGFjaG1lbnRzQWx0ID0gdXNlTWVtbyhcbiAgICAoKSA9PiAobnVtQXR0YWNobWVudHMgPyBsb2NhbGl6ZVdpdGhQbHVyYWwoQUNUSVZJVFlfTlVNX0FUVEFDSE1FTlRTX0FMVF9JRFMsIG51bUF0dGFjaG1lbnRzKSA6ICcnKSxcbiAgICBbbG9jYWxpemVXaXRoUGx1cmFsLCBudW1BdHRhY2htZW50c11cbiAgKTtcblxuICBjb25zdCBhY2Nlc3NpYmxlTmFtZSA9IHVzZU1lbW8oXG4gICAgLy8gV2UgYXJlIGNvbmNhdGVuYXRpbmcgaW4gYSBzaW5nbGUgc3RyaW5nIGZvciBTYWZhcmkuIElmIHdlIHNwbGl0IGl0IHVwLCBTYWZhcmkgd2lsbCBvbmx5IG5hcnJhdGUgdGhlIGZpcnN0IHNlY3Rpb24uXG4gICAgKCkgPT5cbiAgICAgIGAke2dyZWV0aW5nQWx0fSAke21lc3NhZ2VUZXh0QWx0fSAke251bUF0dGFjaG1lbnRzQWx0fSAke1xuICAgICAgICBpbnRlcmFjdGl2ZVR5cGUgPT09IEludGVyYWN0aXZlVHlwZS5MSU5LXG4gICAgICAgICAgPyBhY3Rpdml0eUludGVyYWN0aXZlV2l0aExpbmtBbHRcbiAgICAgICAgICA6IGludGVyYWN0aXZlVHlwZSA9PT0gSW50ZXJhY3RpdmVUeXBlLldJREdFVFxuICAgICAgICAgID8gYWN0aXZpdHlJbnRlcmFjdGl2ZUFsdFxuICAgICAgICAgIDogJydcbiAgICAgIH1gLFxuICAgIFtcbiAgICAgIGFjdGl2aXR5SW50ZXJhY3RpdmVBbHQsXG4gICAgICBhY3Rpdml0eUludGVyYWN0aXZlV2l0aExpbmtBbHQsXG4gICAgICBncmVldGluZ0FsdCxcbiAgICAgIGludGVyYWN0aXZlVHlwZSxcbiAgICAgIG1lc3NhZ2VUZXh0QWx0LFxuICAgICAgbnVtQXR0YWNobWVudHNBbHRcbiAgICBdXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBoYXNMaW5rcyA9ICEhYm9keVJlZi5jdXJyZW50Py5xdWVyeVNlbGVjdG9yKCdhJyk7XG4gICAgY29uc3QgaGFzV2lkZ2V0cyA9ICEhdGFiYmFibGVFbGVtZW50cyhib2R5UmVmLmN1cnJlbnQpLmxlbmd0aDtcblxuICAgIGludGVyYWN0aXZlVHlwZVJlZi5jdXJyZW50ICE9PSBoYXNXaWRnZXRzICYmXG4gICAgICBzZXRJbnRlcmFjdGl2ZVR5cGUoaGFzTGlua3MgPyBJbnRlcmFjdGl2ZVR5cGUuTElOSyA6IGhhc1dpZGdldHMgPyBJbnRlcmFjdGl2ZVR5cGUuV0lER0VUIDogZmFsc2UpO1xuICB9LCBbYm9keVJlZiwgaW50ZXJhY3RpdmVUeXBlUmVmLCBzZXRJbnRlcmFjdGl2ZVR5cGVdKTtcblxuICByZXR1cm4gW2FjY2Vzc2libGVOYW1lXTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTypistNames.d.ts","sourceRoot":"","sources":["../../src/Transcript/useTypistNames.ts"],"names":[],"mappings":"AASA,2FAA2F;AAC3F,MAAM,CAAC,OAAO,UAAU,cAAc,IAAI,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,CA0BrE"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = useTypistNames;
|
|
7
|
+
|
|
8
|
+
var _botframeworkWebchatApi = require("botframework-webchat-api");
|
|
9
|
+
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
|
|
12
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
13
|
+
|
|
14
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
15
|
+
|
|
16
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
17
|
+
|
|
18
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
19
|
+
|
|
20
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
21
|
+
|
|
22
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
23
|
+
|
|
24
|
+
var useActiveTyping = _botframeworkWebchatApi.hooks.useActiveTyping;
|
|
25
|
+
|
|
26
|
+
function arrayEquals(x, y) {
|
|
27
|
+
return x.length === y.length && x.every(function (value, index) {
|
|
28
|
+
return y[+index] === value;
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
/** Gets names of users who are actively typing, sorted by the time they started typing. */
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
function useTypistNames() {
|
|
35
|
+
var _useActiveTyping = useActiveTyping(),
|
|
36
|
+
_useActiveTyping2 = _slicedToArray(_useActiveTyping, 1),
|
|
37
|
+
activeTyping = _useActiveTyping2[0];
|
|
38
|
+
|
|
39
|
+
var prevTypistNamesStateRef = (0, _react.useRef)(Object.freeze([Object.freeze([])]));
|
|
40
|
+
var activeTypingFromOthersValues = Object.values(activeTyping).filter(function (_ref) {
|
|
41
|
+
var role = _ref.role;
|
|
42
|
+
return role !== 'user';
|
|
43
|
+
}); // Sort the list by the first typist.
|
|
44
|
+
|
|
45
|
+
var sortedActiveTypingFromOthersValues = activeTypingFromOthersValues.sort(function (_ref2, _ref3) {
|
|
46
|
+
var x = _ref2.at;
|
|
47
|
+
var y = _ref3.at;
|
|
48
|
+
return x - y;
|
|
49
|
+
});
|
|
50
|
+
var typistNamesState = Object.freeze([Object.freeze(sortedActiveTypingFromOthersValues.map(function (_ref4) {
|
|
51
|
+
var name = _ref4.name;
|
|
52
|
+
return name;
|
|
53
|
+
}))]);
|
|
54
|
+
var prevTypistNamesState = prevTypistNamesStateRef.current;
|
|
55
|
+
var nextTypistNamesState = arrayEquals(typistNamesState[0], prevTypistNamesState[0]) ? prevTypistNamesState : typistNamesState;
|
|
56
|
+
(0, _react.useEffect)(function () {
|
|
57
|
+
prevTypistNamesStateRef.current = nextTypistNamesState;
|
|
58
|
+
}, [prevTypistNamesStateRef, nextTypistNamesState]);
|
|
59
|
+
return nextTypistNamesState;
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9UcmFuc2NyaXB0L3VzZVR5cGlzdE5hbWVzLnRzIl0sIm5hbWVzIjpbInVzZUFjdGl2ZVR5cGluZyIsImhvb2tzIiwiYXJyYXlFcXVhbHMiLCJ4IiwieSIsImxlbmd0aCIsImV2ZXJ5IiwidmFsdWUiLCJpbmRleCIsInVzZVR5cGlzdE5hbWVzIiwiYWN0aXZlVHlwaW5nIiwicHJldlR5cGlzdE5hbWVzU3RhdGVSZWYiLCJPYmplY3QiLCJmcmVlemUiLCJhY3RpdmVUeXBpbmdGcm9tT3RoZXJzVmFsdWVzIiwidmFsdWVzIiwiZmlsdGVyIiwicm9sZSIsInNvcnRlZEFjdGl2ZVR5cGluZ0Zyb21PdGhlcnNWYWx1ZXMiLCJzb3J0IiwiYXQiLCJ0eXBpc3ROYW1lc1N0YXRlIiwibWFwIiwibmFtZSIsInByZXZUeXBpc3ROYW1lc1N0YXRlIiwiY3VycmVudCIsIm5leHRUeXBpc3ROYW1lc1N0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7O0FBRUEsSUFBUUEsZUFBUixHQUE0QkMsNkJBQTVCLENBQVFELGVBQVI7O0FBRUEsU0FBU0UsV0FBVCxDQUF3QkMsQ0FBeEIsRUFBeUNDLENBQXpDLEVBQW1FO0FBQ2pFLFNBQU9ELENBQUMsQ0FBQ0UsTUFBRixLQUFhRCxDQUFDLENBQUNDLE1BQWYsSUFBeUJGLENBQUMsQ0FBQ0csS0FBRixDQUFRLFVBQUNDLEtBQUQsRUFBUUMsS0FBUjtBQUFBLFdBQWtCSixDQUFDLENBQUMsQ0FBQ0ksS0FBRixDQUFELEtBQWNELEtBQWhDO0FBQUEsR0FBUixDQUFoQztBQUNEO0FBRUQ7OztBQUNlLFNBQVNFLGNBQVQsR0FBd0Q7QUFDckUseUJBQXVCVCxlQUFlLEVBQXRDO0FBQUE7QUFBQSxNQUFPVSxZQUFQOztBQUNBLE1BQU1DLHVCQUF1QixHQUFHLG1CQUM5QkMsTUFBTSxDQUFDQyxNQUFQLENBQWMsQ0FBQ0QsTUFBTSxDQUFDQyxNQUFQLENBQWMsRUFBZCxDQUFELENBQWQsQ0FEOEIsQ0FBaEM7QUFJQSxNQUFNQyw0QkFBNEIsR0FBR0YsTUFBTSxDQUFDRyxNQUFQLENBQWNMLFlBQWQsRUFBNEJNLE1BQTVCLENBQW1DO0FBQUEsUUFBR0MsSUFBSCxRQUFHQSxJQUFIO0FBQUEsV0FBY0EsSUFBSSxLQUFLLE1BQXZCO0FBQUEsR0FBbkMsQ0FBckMsQ0FOcUUsQ0FRckU7O0FBQ0EsTUFBTUMsa0NBQWtDLEdBQUdKLDRCQUE0QixDQUFDSyxJQUE3QixDQUFrQztBQUFBLFFBQU9oQixDQUFQLFNBQUdpQixFQUFIO0FBQUEsUUFBa0JoQixDQUFsQixTQUFjZ0IsRUFBZDtBQUFBLFdBQTBCakIsQ0FBQyxHQUFHQyxDQUE5QjtBQUFBLEdBQWxDLENBQTNDO0FBRUEsTUFBTWlCLGdCQUE4QyxHQUFHVCxNQUFNLENBQUNDLE1BQVAsQ0FBYyxDQUNuRUQsTUFBTSxDQUFDQyxNQUFQLENBQWNLLGtDQUFrQyxDQUFDSSxHQUFuQyxDQUF1QztBQUFBLFFBQUdDLElBQUgsU0FBR0EsSUFBSDtBQUFBLFdBQWNBLElBQWQ7QUFBQSxHQUF2QyxDQUFkLENBRG1FLENBQWQsQ0FBdkQ7QUFJQSxNQUFpQkMsb0JBQWpCLEdBQTBDYix1QkFBMUMsQ0FBUWMsT0FBUjtBQUVBLE1BQU1DLG9CQUFvQixHQUFHeEIsV0FBVyxDQUFDbUIsZ0JBQWdCLENBQUMsQ0FBRCxDQUFqQixFQUFzQkcsb0JBQW9CLENBQUMsQ0FBRCxDQUExQyxDQUFYLEdBQ3pCQSxvQkFEeUIsR0FFekJILGdCQUZKO0FBSUEsd0JBQVUsWUFBTTtBQUNkVixJQUFBQSx1QkFBdUIsQ0FBQ2MsT0FBeEIsR0FBa0NDLG9CQUFsQztBQUNELEdBRkQsRUFFRyxDQUFDZix1QkFBRCxFQUEwQmUsb0JBQTFCLENBRkg7QUFJQSxTQUFPQSxvQkFBUDtBQUNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBob29rcyB9IGZyb20gJ2JvdGZyYW1ld29yay13ZWJjaGF0LWFwaSc7XG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcblxuY29uc3QgeyB1c2VBY3RpdmVUeXBpbmcgfSA9IGhvb2tzO1xuXG5mdW5jdGlvbiBhcnJheUVxdWFsczxUPih4OiByZWFkb25seSBUW10sIHk6IHJlYWRvbmx5IFRbXSk6IGJvb2xlYW4ge1xuICByZXR1cm4geC5sZW5ndGggPT09IHkubGVuZ3RoICYmIHguZXZlcnkoKHZhbHVlLCBpbmRleCkgPT4geVsraW5kZXhdID09PSB2YWx1ZSk7XG59XG5cbi8qKiBHZXRzIG5hbWVzIG9mIHVzZXJzIHdobyBhcmUgYWN0aXZlbHkgdHlwaW5nLCBzb3J0ZWQgYnkgdGhlIHRpbWUgdGhleSBzdGFydGVkIHR5cGluZy4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVzZVR5cGlzdE5hbWVzKCk6IHJlYWRvbmx5IFtyZWFkb25seSBzdHJpbmdbXV0ge1xuICBjb25zdCBbYWN0aXZlVHlwaW5nXSA9IHVzZUFjdGl2ZVR5cGluZygpO1xuICBjb25zdCBwcmV2VHlwaXN0TmFtZXNTdGF0ZVJlZiA9IHVzZVJlZjxyZWFkb25seSBbcmVhZG9ubHkgc3RyaW5nW11dPihcbiAgICBPYmplY3QuZnJlZXplKFtPYmplY3QuZnJlZXplKFtdIGFzIHN0cmluZ1tdKV0pIGFzIFtyZWFkb25seSBzdHJpbmdbXV1cbiAgKTtcblxuICBjb25zdCBhY3RpdmVUeXBpbmdGcm9tT3RoZXJzVmFsdWVzID0gT2JqZWN0LnZhbHVlcyhhY3RpdmVUeXBpbmcpLmZpbHRlcigoeyByb2xlIH0pID0+IHJvbGUgIT09ICd1c2VyJyk7XG5cbiAgLy8gU29ydCB0aGUgbGlzdCBieSB0aGUgZmlyc3QgdHlwaXN0LlxuICBjb25zdCBzb3J0ZWRBY3RpdmVUeXBpbmdGcm9tT3RoZXJzVmFsdWVzID0gYWN0aXZlVHlwaW5nRnJvbU90aGVyc1ZhbHVlcy5zb3J0KCh7IGF0OiB4IH0sIHsgYXQ6IHkgfSkgPT4geCAtIHkpO1xuXG4gIGNvbnN0IHR5cGlzdE5hbWVzU3RhdGU6IHJlYWRvbmx5IFtyZWFkb25seSBzdHJpbmdbXV0gPSBPYmplY3QuZnJlZXplKFtcbiAgICBPYmplY3QuZnJlZXplKHNvcnRlZEFjdGl2ZVR5cGluZ0Zyb21PdGhlcnNWYWx1ZXMubWFwKCh7IG5hbWUgfSkgPT4gbmFtZSkpXG4gIF0pIGFzIHJlYWRvbmx5IFtyZWFkb25seSBzdHJpbmdbXV07XG5cbiAgY29uc3QgeyBjdXJyZW50OiBwcmV2VHlwaXN0TmFtZXNTdGF0ZSB9ID0gcHJldlR5cGlzdE5hbWVzU3RhdGVSZWY7XG5cbiAgY29uc3QgbmV4dFR5cGlzdE5hbWVzU3RhdGUgPSBhcnJheUVxdWFscyh0eXBpc3ROYW1lc1N0YXRlWzBdLCBwcmV2VHlwaXN0TmFtZXNTdGF0ZVswXSlcbiAgICA/IHByZXZUeXBpc3ROYW1lc1N0YXRlXG4gICAgOiB0eXBpc3ROYW1lc1N0YXRlO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcHJldlR5cGlzdE5hbWVzU3RhdGVSZWYuY3VycmVudCA9IG5leHRUeXBpc3ROYW1lc1N0YXRlO1xuICB9LCBbcHJldlR5cGlzdE5hbWVzU3RhdGVSZWYsIG5leHRUeXBpc3ROYW1lc1N0YXRlXSk7XG5cbiAgcmV0dXJuIG5leHRUeXBpc3ROYW1lc1N0YXRlO1xufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|