@kando-env/kando-ui 1.2.458-alpha.15 → 1.2.458-alpha.17
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/Widgets/MostPolluting/Factories/FactoryBox/CardLayout.js +21 -6
- package/lib/components/Header/InfoBar/Search/SearchContainer.js +4 -3
- package/lib/i18n/en.json +1 -0
- package/lib/macros/getVersion.js +1 -1
- package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +13 -3
- package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +27 -7
- package/lib/pages/EventsPage/events/events_list/Filter/FilterStyle.scss +15 -0
- package/lib/ui-kit/HierarchyGraph/AutoFitTree.js +9 -2
- package/lib/ui-kit/HierarchyGraph/HierarchyGraph.js +25 -13
- package/lib/ui-kit/HierarchyGraph/NodeLayout.js +15 -13
- package/lib/ui-kit/HierarchyGraph/style.scss +57 -31
- package/lib/ui-kit/HierarchyGraph/utils.js +1 -1
- package/package.json +1 -1
|
@@ -9,6 +9,7 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
|
9
9
|
var _react = _interopRequireDefault(require("react"));
|
|
10
10
|
var _styles = require("./styles");
|
|
11
11
|
var _Truncate = _interopRequireDefault(require("../../../../utilities/Truncate"));
|
|
12
|
+
var _StyledLink = require("../../../../components/Links/StyledLink/StyledLink");
|
|
12
13
|
var KdPercentStyle = _styledComponents.default.div.withConfig({
|
|
13
14
|
displayName: "CardLayout__KdPercentStyle",
|
|
14
15
|
componentId: "sc-9gxpm8-0"
|
|
@@ -16,11 +17,19 @@ var KdPercentStyle = _styledComponents.default.div.withConfig({
|
|
|
16
17
|
return props.width;
|
|
17
18
|
});
|
|
18
19
|
exports.KdPercentStyle = KdPercentStyle;
|
|
20
|
+
var Header = function Header(titleText) {
|
|
21
|
+
return /*#__PURE__*/_react.default.createElement(_Truncate.default, {
|
|
22
|
+
characters: 0,
|
|
23
|
+
inheritTextAlign: true
|
|
24
|
+
}, /*#__PURE__*/_react.default.createElement("span", null, titleText));
|
|
25
|
+
};
|
|
19
26
|
var CardLayout = function CardLayout(_ref) {
|
|
20
27
|
var style = _ref.style,
|
|
21
28
|
title = _ref.title,
|
|
22
29
|
children = _ref.children,
|
|
23
|
-
headerRight = _ref.headerRight
|
|
30
|
+
headerRight = _ref.headerRight,
|
|
31
|
+
_ref$linkedHeaderUrl = _ref.linkedHeaderUrl,
|
|
32
|
+
linkedHeaderUrl = _ref$linkedHeaderUrl === void 0 ? '' : _ref$linkedHeaderUrl;
|
|
24
33
|
return /*#__PURE__*/_react.default.createElement(_styles.Box, {
|
|
25
34
|
style: style
|
|
26
35
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -29,13 +38,19 @@ var CardLayout = function CardLayout(_ref) {
|
|
|
29
38
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
30
39
|
className: "title",
|
|
31
40
|
"data-text": title
|
|
32
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
41
|
+
}, linkedHeaderUrl ? /*#__PURE__*/_react.default.createElement(_StyledLink.StyledLink, {
|
|
42
|
+
target: "_blank",
|
|
43
|
+
updateParams: {
|
|
44
|
+
view: 'dashboard'
|
|
45
|
+
},
|
|
46
|
+
to: linkedHeaderUrl,
|
|
47
|
+
onClick: function onClick(e) {
|
|
48
|
+
return e.stopPropagation();
|
|
49
|
+
}
|
|
50
|
+
}, Header(title)) : Header(title)), headerRight), /*#__PURE__*/_react.default.createElement("div", {
|
|
36
51
|
className: "content"
|
|
37
52
|
}, children));
|
|
38
53
|
};
|
|
39
54
|
var _default = CardLayout;
|
|
40
55
|
exports.default = _default;
|
|
41
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdHlsZXMiLCJfVHJ1bmNhdGUiLCJfU3R5bGVkTGluayIsIktkUGVyY2VudFN0eWxlIiwic3R5bGVkIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJwcm9wcyIsIndpZHRoIiwiZXhwb3J0cyIsIkhlYWRlciIsInRpdGxlVGV4dCIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiY2hhcmFjdGVycyIsImluaGVyaXRUZXh0QWxpZ24iLCJDYXJkTGF5b3V0IiwiX3JlZiIsInN0eWxlIiwidGl0bGUiLCJjaGlsZHJlbiIsImhlYWRlclJpZ2h0IiwiX3JlZiRsaW5rZWRIZWFkZXJVcmwiLCJsaW5rZWRIZWFkZXJVcmwiLCJCb3giLCJjbGFzc05hbWUiLCJTdHlsZWRMaW5rIiwidGFyZ2V0IiwidXBkYXRlUGFyYW1zIiwidmlldyIsInRvIiwib25DbGljayIsImUiLCJzdG9wUHJvcGFnYXRpb24iLCJfZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01vc3RQb2xsdXRpbmcvRmFjdG9yaWVzL0ZhY3RvcnlCb3gvQ2FyZExheW91dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHsgQm94IH0gZnJvbSAnLi9zdHlsZXMnO1xuaW1wb3J0IFRydW5jYXRlIGZyb20gJy4uLy4uLy4uLy4uL3V0aWxpdGllcy9UcnVuY2F0ZSc7XG5pbXBvcnQgeyBTdHlsZWRMaW5rIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9MaW5rcy9TdHlsZWRMaW5rL1N0eWxlZExpbmsnO1xuXG5leHBvcnQgY29uc3QgS2RQZXJjZW50U3R5bGUgPSBzdHlsZWQuZGl2PHsgd2lkdGg6IHN0cmluZyB9PmBcbiAgZm9udC1zaXplOiAxNHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAkeyhwcm9wcykgPT4gcHJvcHMud2lkdGh9O1xuICAuc2NvcmUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbmA7XG5cbnR5cGUgRmFjdG9yeUNhcmRQcm9wcyA9IHtcbiAgc3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xuICB0aXRsZTogc3RyaW5nO1xuICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0Tm9kZTtcbiAgaGVhZGVyUmlnaHQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIGxpbmtlZEhlYWRlclVybD86IHN0cmluZztcbn07XG5cbmNvbnN0IEhlYWRlciA9ICh0aXRsZVRleHQpID0+IHtcbiAgcmV0dXJuIChcbiAgICA8VHJ1bmNhdGUgY2hhcmFjdGVycz17MH0gaW5oZXJpdFRleHRBbGlnbj17dHJ1ZX0+XG4gICAgICA8c3Bhbj57dGl0bGVUZXh0fTwvc3Bhbj5cbiAgICA8L1RydW5jYXRlPlxuICApO1xufTtcbmNvbnN0IENhcmRMYXlvdXQgPSAoe1xuICBzdHlsZSxcbiAgdGl0bGUsXG4gIGNoaWxkcmVuLFxuICBoZWFkZXJSaWdodCxcbiAgbGlua2VkSGVhZGVyVXJsID0gJycsXG59OiBGYWN0b3J5Q2FyZFByb3BzKSA9PiB7XG4gIHJldHVybiAoXG4gICAgPEJveCBzdHlsZT17c3R5bGV9PlxuICAgICAgPGRpdiBjbGFzc05hbWU9e2B0b3BgfSBkYXRhLXRleHQ9e3RpdGxlfT5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aXRsZVwiIGRhdGEtdGV4dD17dGl0bGV9PlxuICAgICAgICAgIHtsaW5rZWRIZWFkZXJVcmwgPyAoXG4gICAgICAgICAgICA8U3R5bGVkTGlua1xuICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICB1cGRhdGVQYXJhbXM9e3sgdmlldzogJ2Rhc2hib2FyZCcgfX1cbiAgICAgICAgICAgICAgdG89e2xpbmtlZEhlYWRlclVybH1cbiAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IGUuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtIZWFkZXIodGl0bGUpfVxuICAgICAgICAgICAgPC9TdHlsZWRMaW5rPlxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICBIZWFkZXIodGl0bGUpXG4gICAgICAgICAgKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIHtoZWFkZXJSaWdodH1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb250ZW50XCI+e2NoaWxkcmVufTwvZGl2PlxuICAgIDwvQm94PlxuICApO1xufTtcbmV4cG9ydCBkZWZhdWx0IENhcmRMYXlvdXQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsT0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsU0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBSCxPQUFBO0FBRU8sSUFBTUksY0FBYyxHQUFHQyx5QkFBTSxDQUFDQyxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNEhBSzdCLFVBQUNDLEtBQUs7RUFBQSxPQUFLQSxLQUFLLENBQUNDLEtBQUs7QUFBQSxFQUloQztBQUFDQyxPQUFBLENBQUFSLGNBQUEsR0FBQUEsY0FBQTtBQVVGLElBQU1TLE1BQU0sR0FBRyxTQUFUQSxNQUFNQSxDQUFJQyxTQUFTLEVBQUs7RUFDNUIsb0JBQ0VoQixNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUEsQ0FBQ2QsU0FBQSxDQUFBYSxPQUFRO0lBQUNFLFVBQVUsRUFBRSxDQUFFO0lBQUNDLGdCQUFnQixFQUFFO0VBQUssZ0JBQzlDcEIsTUFBQSxDQUFBaUIsT0FBQSxDQUFBQyxhQUFBLGVBQU9GLFNBQWdCLENBQ2YsQ0FBQztBQUVmLENBQUM7QUFDRCxJQUFNSyxVQUFVLEdBQUcsU0FBYkEsVUFBVUEsQ0FBQUMsSUFBQSxFQU1RO0VBQUEsSUFMdEJDLEtBQUssR0FBQUQsSUFBQSxDQUFMQyxLQUFLO0lBQ0xDLEtBQUssR0FBQUYsSUFBQSxDQUFMRSxLQUFLO0lBQ0xDLFFBQVEsR0FBQUgsSUFBQSxDQUFSRyxRQUFRO0lBQ1JDLFdBQVcsR0FBQUosSUFBQSxDQUFYSSxXQUFXO0lBQUFDLG9CQUFBLEdBQUFMLElBQUEsQ0FDWE0sZUFBZTtJQUFmQSxlQUFlLEdBQUFELG9CQUFBLGNBQUcsRUFBRSxHQUFBQSxvQkFBQTtFQUVwQixvQkFDRTNCLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQUMsYUFBQSxDQUFDZixPQUFBLENBQUEwQixHQUFHO0lBQUNOLEtBQUssRUFBRUE7RUFBTSxnQkFDaEJ2QixNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUE7SUFBS1ksU0FBUyxPQUFRO0lBQUMsYUFBV047RUFBTSxnQkFDdEN4QixNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUE7SUFBS1ksU0FBUyxFQUFDLE9BQU87SUFBQyxhQUFXTjtFQUFNLEdBQ3JDSSxlQUFlLGdCQUNkNUIsTUFBQSxDQUFBaUIsT0FBQSxDQUFBQyxhQUFBLENBQUNiLFdBQUEsQ0FBQTBCLFVBQVU7SUFDVEMsTUFBTSxFQUFDLFFBQVE7SUFDZkMsWUFBWSxFQUFFO01BQUVDLElBQUksRUFBRTtJQUFZLENBQUU7SUFDcENDLEVBQUUsRUFBRVAsZUFBZ0I7SUFDcEJRLE9BQU8sRUFBRSxTQUFBQSxRQUFDQyxDQUFDO01BQUEsT0FBS0EsQ0FBQyxDQUFDQyxlQUFlLENBQUMsQ0FBQztJQUFBO0VBQUMsR0FFbkN2QixNQUFNLENBQUNTLEtBQUssQ0FDSCxDQUFDLEdBRWJULE1BQU0sQ0FBQ1MsS0FBSyxDQUVYLENBQUMsRUFDTEUsV0FDRSxDQUFDLGVBQ04xQixNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUE7SUFBS1ksU0FBUyxFQUFDO0VBQVMsR0FBRUwsUUFBYyxDQUNyQyxDQUFDO0FBRVYsQ0FBQztBQUFDLElBQUFjLFFBQUEsR0FDYWxCLFVBQVU7QUFBQVAsT0FBQSxDQUFBRyxPQUFBLEdBQUFzQixRQUFBIn0=
|
|
@@ -38,8 +38,9 @@ var SearchContainer = function SearchContainer() {
|
|
|
38
38
|
waterAuthorityName = _useSelector.waterAuthorityName;
|
|
39
39
|
var getViewMode = function getViewMode() {
|
|
40
40
|
var params = new URLSearchParams(location.search);
|
|
41
|
-
var viewParam = params.get('view');
|
|
42
|
-
|
|
41
|
+
var viewParam = params.get('view') || '';
|
|
42
|
+
var availableViews = ['map', 'hierarchy'];
|
|
43
|
+
return availableViews.includes(viewParam) ? viewParam : 'dashboard';
|
|
43
44
|
};
|
|
44
45
|
var handleChange = function handleChange(selected) {
|
|
45
46
|
if (!selected) {
|
|
@@ -62,4 +63,4 @@ var SearchContainer = function SearchContainer() {
|
|
|
62
63
|
};
|
|
63
64
|
var _default = /*#__PURE__*/_react.default.memo(SearchContainer);
|
|
64
65
|
exports.default = _default;
|
|
65
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdFJvdXRlckRvbSIsIl9TZWFyY2giLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0FuYWx5dGljcyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiZmV0Y2hEYXRhIiwidXJsIiwic2V0RGF0YSIsImZldGNoIiwidGhlbiIsInJlc3BvbnNlIiwianNvbiIsInJlc3VsdCIsIlNlYXJjaENvbnRhaW5lciIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImRhdGEiLCJoaXN0b3J5IiwidXNlSGlzdG9yeSIsImxvY2F0aW9uIiwidXNlTG9jYXRpb24iLCJuYXZDb250ZXh0IiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJfdXNlU2VsZWN0b3IiLCJnbG9iYWxfZGF0YSIsIndhdGVyQXV0aG9yaXR5SWQiLCJ3YXRlckF1dGhvcml0eU5hbWUiLCJnZXRWaWV3TW9kZSIsInBhcmFtcyIsIlVSTFNlYXJjaFBhcmFtcyIsInNlYXJjaCIsInZpZXdQYXJhbSIsImF2YWlsYWJsZVZpZXdzIiwiaW5jbHVkZXMiLCJoYW5kbGVDaGFuZ2UiLCJzZWxlY3RlZCIsImFuYWx5dGljc1RyYWNrIiwic2VsZWN0aW9uIiwibGFiZWwiLCJ1dGlsaXR5X25hbWUiLCJwdXNoIiwiY29uY2F0Iiwic3ViX3R5cGUiLCJpZCIsImxvY2FsZSIsInVzZUVmZmVjdCIsImNyZWF0ZUVsZW1lbnQiLCJGcmFnbWVudCIsIm9uQ2hhbmdlIiwib3B0aW9ucyIsInZpZXdNb2RlIiwiX2RlZmF1bHQiLCJSZWFjdCIsIm1lbW8iLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSGVhZGVyL0luZm9CYXIvU2VhcmNoL1NlYXJjaENvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IHVzZUhpc3RvcnksIHVzZUxvY2F0aW9uIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5cbmltcG9ydCB7IGFwcFJlZHVjZXIgfSBmcm9tICdzcmMvc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IFNlYXJjaCBmcm9tICcuL1NlYXJjaCc7XG5pbXBvcnQgeyBhbmFseXRpY3NUcmFjayB9IGZyb20gJ3NyYy91dGlsaXRpZXMvQW5hbHl0aWNzJztcblxuY29uc3QgZmV0Y2hEYXRhID0gKHVybDogc3RyaW5nLCBzZXREYXRhOiBGdW5jdGlvbikgPT4ge1xuICBmZXRjaCh1cmwpXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgLnRoZW4oKHJlc3VsdCkgPT4gc2V0RGF0YShyZXN1bHQpKTtcbn07XG5cbmNvbnN0IFNlYXJjaENvbnRhaW5lciA9ICgpID0+IHtcbiAgY29uc3QgW2RhdGEsIHNldERhdGFdID0gdXNlU3RhdGU8YW55PihudWxsKTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3QgbG9jYXRpb24gPSB1c2VMb2NhdGlvbigpO1xuICBjb25zdCBuYXZDb250ZXh0ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LFxuICApO1xuXG4gIGNvbnN0IHsgd2F0ZXJBdXRob3JpdHlJZCwgd2F0ZXJBdXRob3JpdHlOYW1lIH0gPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGUpID0+IHN0YXRlLmdsb2JhbF9kYXRhLFxuICApO1xuXG4gIGNvbnN0IGdldFZpZXdNb2RlID0gKCkgPT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMobG9jYXRpb24uc2VhcmNoKTtcbiAgICBjb25zdCB2aWV3UGFyYW0gPSBwYXJhbXMuZ2V0KCd2aWV3JykgfHwgJyc7XG4gICAgY29uc3QgYXZhaWxhYmxlVmlld3MgPSBbJ21hcCcsICdoaWVyYXJjaHknXTtcbiAgICByZXR1cm4gYXZhaWxhYmxlVmlld3MuaW5jbHVkZXModmlld1BhcmFtKSA/IHZpZXdQYXJhbSA6ICdkYXNoYm9hcmQnO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChzZWxlY3RlZDogYW55KSA9PiB7XG4gICAgaWYgKCFzZWxlY3RlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGFuYWx5dGljc1RyYWNrKCdDbGlja2VkIGRhc2hib2FyZCBzZWFyY2gnLCB7XG4gICAgICBzZWxlY3Rpb246IHNlbGVjdGVkLmxhYmVsLFxuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG5cbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgL2Rhc2hib2FyZF92Mi8ke3NlbGVjdGVkLnN1Yl90eXBlfS8ke1xuICAgICAgICBzZWxlY3RlZC5pZFxuICAgICAgfT93YXRlcl9hdXRob3JpdHlfaWQ9JHt3YXRlckF1dGhvcml0eUlkfSZsb2NhbGU9JHtcbiAgICAgICAgbmF2Q29udGV4dC5sb2NhbGVcbiAgICAgIH0mdmlldz0ke2dldFZpZXdNb2RlKCl9YCxcbiAgICApO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZmV0Y2hEYXRhKGAvZGF0YS9zZWFyY2g/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7d2F0ZXJBdXRob3JpdHlJZH1gLCBzZXREYXRhKTtcbiAgfSwgW3dhdGVyQXV0aG9yaXR5SWRdKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7ZGF0YSAmJiAoXG4gICAgICAgIDxTZWFyY2hcbiAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgIG9wdGlvbnM9e2RhdGF9XG4gICAgICAgICAgdmlld01vZGU9e2dldFZpZXdNb2RlKCl9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgUmVhY3QubWVtbyhTZWFyY2hDb250YWluZXIpO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxlQUFBLEdBQUFGLE9BQUE7QUFHQSxJQUFBRyxPQUFBLEdBQUFDLHNCQUFBLENBQUFKLE9BQUE7QUFDQSxJQUFBSyxVQUFBLEdBQUFMLE9BQUE7QUFBeUQsU0FBQU0seUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFSLHdCQUFBWSxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFB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
|
package/lib/i18n/en.json
CHANGED
package/lib/macros/getVersion.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var packageJsonVersion = "1.2.458-alpha.
|
|
3
|
+
var packageJsonVersion = "1.2.458-alpha.17";
|
|
4
4
|
if (typeof packageJsonVersion === 'string') {
|
|
5
5
|
// eslint-disable-next-line no-console
|
|
6
6
|
console.log("%c Kando UI %c v".concat(packageJsonVersion, " "), 'font-size: 15px; background-color: #fff; color: #e20f53;', 'font-weight: bold; font-size: 15px; background-color: #e20f53; color: #fff;', "with NODE_ENV=".concat(process.env.NODE_ENV));
|
|
@@ -21,7 +21,8 @@ var Filter = function Filter(props) {
|
|
|
21
21
|
setActiveFilterCopy = props.setActiveFilterCopy,
|
|
22
22
|
parseSelectedItems = props.parseSelectedItems,
|
|
23
23
|
availableFilterItems = props.availableFilterItems,
|
|
24
|
-
applyFilter = props.applyFilter
|
|
24
|
+
applyFilter = props.applyFilter,
|
|
25
|
+
resetFilter = props.resetFilter;
|
|
25
26
|
var _useState = (0, _react.useState)({
|
|
26
27
|
filterItemId: null,
|
|
27
28
|
show: false
|
|
@@ -113,8 +114,17 @@ var Filter = function Filter(props) {
|
|
|
113
114
|
onClick: function onClick() {
|
|
114
115
|
handleApplyFilter();
|
|
115
116
|
}
|
|
116
|
-
}, _i18n.default.t('events_overview.filter.apply'))))
|
|
117
|
+
}, _i18n.default.t('events_overview.filter.apply')))), resetFilter && /*#__PURE__*/_react.default.createElement("li", {
|
|
118
|
+
className: 'fixed-action'
|
|
119
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
120
|
+
className: 'reset-button-container'
|
|
121
|
+
}, /*#__PURE__*/_react.default.createElement("a", {
|
|
122
|
+
className: 'reset-button',
|
|
123
|
+
onClick: function onClick() {
|
|
124
|
+
resetFilter();
|
|
125
|
+
}
|
|
126
|
+
}, _i18n.default.t('events_overview.filter.reset'))))));
|
|
117
127
|
};
|
|
118
128
|
var _default = Filter;
|
|
119
129
|
exports.default = _default;
|
|
120
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfRHJvcGRvd24iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2FkZCIsIl9pMThuIiwiX0ZpbHRlckl0ZW0iLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkZpbHRlciIsInByb3BzIiwiYWN0aXZlRmlsdGVyQ29weSIsInNldEFjdGl2ZUZpbHRlckNvcHkiLCJwYXJzZVNlbGVjdGVkSXRlbXMiLCJhdmFpbGFibGVGaWx0ZXJJdGVtcyIsImFwcGx5RmlsdGVyIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJmaWx0ZXJJdGVtSWQiLCJzaG93IiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwIiwic2V0U2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAiLCJjYW1lbFRvU25ha2VDYXNlIiwic3RyIiwidG9Mb3dlckNhc2UiLCJzbGljZSIsImxlbmd0aCIsInJlcGxhY2UiLCJsZXR0ZXIiLCJjb25jYXQiLCJ0cmFuc2xhdGVGaWx0ZXJJdGVtVHlwZSIsImZpbHRlckl0ZW1UeXBlIiwiaTE4biIsInQiLCJidWlsZFVuc2VsZWN0ZWRJdGVtcyIsImZpbHRlcl9pdGVtIiwiZmlsdGVyX2l0ZW1zIiwidW5kZWZpbmVkIiwiZmluZCIsInNlbGVjdGVkX2l0ZW0iLCJ0eXBlIiwiY3JlYXRlRWxlbWVudCIsIkl0ZW0iLCJocmVmIiwib25DbGljayIsImFkZEZpbHRlckl0ZW0iLCJmaWx0ZXJJdGVtIiwicHVzaCIsImlkIiwibWF4X3NlbGVjdGVkX2l0ZW1zIiwiZmlsdGVyX2lkIiwiYXZhaWxhYmxlX29wdGlvbnMiLCJvcHRpb25zIiwic2VsZWN0ZWRfb3B0aW9ucyIsImFjdGl2ZUZpbHRlckR1cGxpY2F0ZSIsImFzc2lnbiIsImhhbmRsZUFwcGx5RmlsdGVyIiwidXNlRWZmZWN0IiwiY2xhc3NOYW1lIiwibWFwIiwiVG9nZ2xlIiwidmFyaWFudCIsIlJlYWN0Q29tcG9uZW50IiwiaGVpZ2h0Iiwid2lkdGgiLCJNZW51IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0ZpbHRlci9GaWx0ZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnQGtlbnNob291aS9yZWFjdC1tdWx0aS1zZWxlY3QvZGlzdC9zdHlsZS5jc3MnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgRHJvcGRvd24gZnJvbSAncmVhY3QtYm9vdHN0cmFwL0Ryb3Bkb3duJztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIFBsdXNJY29uIH0gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9hZGQuc3ZnJztcbmltcG9ydCB7IElGaWx0ZXJJdGVtIH0gZnJvbSAnc3JjL3N0b3JlL2ZpbHRlcnMvSUZpbHRlckl0ZW0nO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCAnLi4vLi4vRXZlbnRzU3R5bGUuc2Nzcyc7XG5pbXBvcnQgRmlsdGVySXRlbSBmcm9tICcuL0ZpbHRlckl0ZW0nO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgYWN0aXZlRmlsdGVyQ29weTogYW55O1xuICBzZXRBY3RpdmVGaWx0ZXJDb3B5OiBSZWFjdC5EaXNwYXRjaDxhbnk+O1xuICBwYXJzZVNlbGVjdGVkSXRlbXM6IGFueTtcbiAgYXZhaWxhYmxlRmlsdGVySXRlbXM6IGFueTtcbiAgYXBwbHlGaWx0ZXI6IGFueTtcbn07XG5cbmNvbnN0IEZpbHRlcjogUmVhY3QuRkM8SVByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7XG4gICAgYWN0aXZlRmlsdGVyQ29weSxcbiAgICBzZXRBY3RpdmVGaWx0ZXJDb3B5LFxuICAgIHBhcnNlU2VsZWN0ZWRJdGVtcyxcbiAgICBhdmFpbGFibGVGaWx0ZXJJdGVtcyxcbiAgICBhcHBseUZpbHRlcixcbiAgfSA9IHByb3BzO1xuICBjb25zdCBbc2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAsIHNldFNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwXSA9IHVzZVN0YXRlKHtcbiAgICBmaWx0ZXJJdGVtSWQ6IG51bGwsXG4gICAgc2hvdzogZmFsc2UsXG4gIH0pO1xuICBjb25zdCBjYW1lbFRvU25ha2VDYXNlID0gKHN0cjogc3RyaW5nKSA9PlxuICAgIHN0clswXS50b0xvd2VyQ2FzZSgpICtcbiAgICBzdHJcbiAgICAgIC5zbGljZSgxLCBzdHIubGVuZ3RoKVxuICAgICAgLnJlcGxhY2UoL1tBLVpdL2csIChsZXR0ZXIpID0+IGBfJHtsZXR0ZXIudG9Mb3dlckNhc2UoKX1gKTtcbiAgY29uc3QgdHJhbnNsYXRlRmlsdGVySXRlbVR5cGUgPSAoZmlsdGVySXRlbVR5cGU6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiBpMThuLnQoXG4gICAgICBgZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5maWx0ZXJfdHlwZXMuJHtjYW1lbFRvU25ha2VDYXNlKGZpbHRlckl0ZW1UeXBlKX1gLFxuICAgICk7XG4gIH07XG4gIGNvbnN0IGJ1aWxkVW5zZWxlY3RlZEl0ZW1zID0gKGZpbHRlcl9pdGVtOiBJRmlsdGVySXRlbSkgPT4ge1xuICAgIGlmIChcbiAgICAgIGFjdGl2ZUZpbHRlckNvcHkuZmlsdGVyX2l0ZW1zICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIGFjdGl2ZUZpbHRlckNvcHkuZmlsdGVyX2l0ZW1zLmZpbmQoXG4gICAgICAgIChzZWxlY3RlZF9pdGVtOiBJRmlsdGVySXRlbSkgPT4gc2VsZWN0ZWRfaXRlbS50eXBlID09PSBmaWx0ZXJfaXRlbS50eXBlLFxuICAgICAgKSA9PT0gdW5kZWZpbmVkXG4gICAgKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8RHJvcGRvd24uSXRlbVxuICAgICAgICAgIGhyZWY9XCIjXCJcbiAgICAgICAgICBrZXk9e2ZpbHRlcl9pdGVtLnR5cGV9XG4gICAgICAgICAgb25DbGljaz17KCkgPT4gYWRkRmlsdGVySXRlbShmaWx0ZXJfaXRlbSwgYWN0aXZlRmlsdGVyQ29weSl9XG4gICAgICAgID5cbiAgICAgICAgICB7dHJhbnNsYXRlRmlsdGVySXRlbVR5cGUoZmlsdGVyX2l0ZW0udHlwZSl9XG4gICAgICAgIDwvRHJvcGRvd24uSXRlbT5cbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgYWRkRmlsdGVySXRlbSA9IChmaWx0ZXJJdGVtOiBhbnksIGFjdGl2ZUZpbHRlckNvcHk6IGFueSkgPT4ge1xuICAgIGFjdGl2ZUZpbHRlckNvcHkuZmlsdGVyX2l0ZW1zLnB1c2goe1xuICAgICAgaWQ6IGZpbHRlckl0ZW0udHlwZSxcbiAgICAgIHR5cGU6IGZpbHRlckl0ZW0udHlwZSxcbiAgICAgIG1heF9zZWxlY3RlZF9pdGVtczogZmlsdGVySXRlbS5tYXhfc2VsZWN0ZWRfaXRlbXMsXG4gICAgICBmaWx0ZXJfaWQ6IGFjdGl2ZUZpbHRlckNvcHkuaWQsXG4gICAgICBhdmFpbGFibGVfb3B0aW9uczogZmlsdGVySXRlbS5vcHRpb25zLFxuICAgICAgc2VsZWN0ZWRfb3B0aW9uczogW10sXG4gICAgfSk7XG5cbiAgICBsZXQgYWN0aXZlRmlsdGVyRHVwbGljYXRlID0gT2JqZWN0LmFzc2lnbih7fSwgYWN0aXZlRmlsdGVyQ29weSk7XG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weShhY3RpdmVGaWx0ZXJEdXBsaWNhdGUpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUFwcGx5RmlsdGVyID0gKCkgPT4ge1xuICAgIGFwcGx5RmlsdGVyKCk7XG4gICAgc2V0U2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAoeyBmaWx0ZXJJdGVtSWQ6IG51bGwsIHNob3c6IGZhbHNlIH0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYXBwbHlGaWx0ZXIoKTtcbiAgfSwgW10pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9eydmaWx0ZXInfT5cbiAgICAgIDx1bFxuICAgICAgICBjbGFzc05hbWU9e2BmaWx0ZXJfaXRlbXMgJHtcbiAgICAgICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcy5sZW5ndGggPT09IGF2YWlsYWJsZUZpbHRlckl0ZW1zLmxlbmd0aFxuICAgICAgICAgICAgPyAnZmlsdGVyX2l0ZW1zLS1kaXNhYmxlZCdcbiAgICAgICAgICAgIDogJydcbiAgICAgICAgfWB9XG4gICAgICA+XG4gICAgICAgIHthY3RpdmVGaWx0ZXJDb3B5ICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgYWN0aXZlRmlsdGVyQ29weS5maWx0ZXJfaXRlbXMubGVuZ3RoICE9PSAwICYmXG4gICAgICAgICAgYWN0aXZlRmlsdGVyQ29weS5maWx0ZXJfaXRlbXMubWFwKChmaWx0ZXJfaXRlbTogSUZpbHRlckl0ZW0pID0+IChcbiAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9eydmaWx0ZXJfaXRlbSd9IGtleT17ZmlsdGVyX2l0ZW0uaWR9PlxuICAgICAgICAgICAgICA8RmlsdGVySXRlbVxuICAgICAgICAgICAgICAgIGFjdGl2ZUZpbHRlckNvcHk9e2FjdGl2ZUZpbHRlckNvcHl9XG4gICAgICAgICAgICAgICAgc2V0QWN0aXZlRmlsdGVyQ29weT17c2V0QWN0aXZlRmlsdGVyQ29weX1cbiAgICAgICAgICAgICAgICBmaWx0ZXJfaXRlbT17ZmlsdGVyX2l0ZW19XG4gICAgICAgICAgICAgICAgcGFyc2VTZWxlY3RlZEl0ZW1zPXtwYXJzZVNlbGVjdGVkSXRlbXN9XG4gICAgICAgICAgICAgICAgYXZhaWxhYmxlRmlsdGVySXRlbXM9e2F2YWlsYWJsZUZpbHRlckl0ZW1zfVxuICAgICAgICAgICAgICAgIHNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwPXtzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cH1cbiAgICAgICAgICAgICAgICBzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cD17c2V0U2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXB9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICkpfVxuICAgICAgICA8bGkgY2xhc3NOYW1lPXsnZml4ZWQtYWN0aW9uJ30+XG4gICAgICAgICAgPERyb3Bkb3duIGNsYXNzTmFtZT17J2F2YWlsYWJsZS1maWx0ZXItaXRlbXMnfT5cbiAgICAgICAgICAgIDxEcm9wZG93bi5Ub2dnbGUgdmFyaWFudD1cInN1Y2Nlc3NcIiBpZD1cImRyb3Bkb3duLWJhc2ljXCI+XG4gICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgIDxQbHVzSWNvbiBjbGFzc05hbWU9XCJwbHVzLWljb25cIiBoZWlnaHQ9XCIxNXB4XCIgd2lkdGg9XCIxNXB4XCIgLz5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmFkZF9maWx0ZXJfaXRlbScpfVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L0Ryb3Bkb3duLlRvZ2dsZT5cblxuICAgICAgICAgICAgPERyb3Bkb3duLk1lbnU+XG4gICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICB7YXZhaWxhYmxlRmlsdGVySXRlbXMubGVuZ3RoICE9PSAwICYmXG4gICAgICAgICAgICAgICAgICBhdmFpbGFibGVGaWx0ZXJJdGVtcy5tYXAoKGZpbHRlcl9pdGVtOiBJRmlsdGVySXRlbSkgPT5cbiAgICAgICAgICAgICAgICAgICAgYnVpbGRVbnNlbGVjdGVkSXRlbXMoZmlsdGVyX2l0ZW0pLFxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgIDwvRHJvcGRvd24uTWVudT5cbiAgICAgICAgICA8L0Ryb3Bkb3duPlxuICAgICAgICA8L2xpPlxuICAgICAgICA8bGkgY2xhc3NOYW1lPXsnZml4ZWQtYWN0aW9uJ30+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydhcHBseS1idXR0b24tY29udGFpbmVyJ30+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICBjbGFzc05hbWU9eydhcHBseS1idXR0b24nfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgaGFuZGxlQXBwbHlGaWx0ZXIoKTtcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5hcHBseScpfVxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEZpbHRlcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUFBLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFDLHVCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxTQUFBLEdBQUFDLHNCQUFBLENBQUFKLE9BQUE7QUFBZ0QsSUFBQUssSUFBQSxHQUFBTCxPQUFBO0FBR2hELElBQUFNLEtBQUEsR0FBQUYsc0JBQUEsQ0FBQUosT0FBQTtBQUNBQSxP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
|
|
130
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfRHJvcGRvd24iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2FkZCIsIl9pMThuIiwiX0ZpbHRlckl0ZW0iLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkZpbHRlciIsInByb3BzIiwiYWN0aXZlRmlsdGVyQ29weSIsInNldEFjdGl2ZUZpbHRlckNvcHkiLCJwYXJzZVNlbGVjdGVkSXRlbXMiLCJhdmFpbGFibGVGaWx0ZXJJdGVtcyIsImFwcGx5RmlsdGVyIiwicmVzZXRGaWx0ZXIiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsImZpbHRlckl0ZW1JZCIsInNob3ciLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwic2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAiLCJzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCIsImNhbWVsVG9TbmFrZUNhc2UiLCJzdHIiLCJ0b0xvd2VyQ2FzZSIsInNsaWNlIiwibGVuZ3RoIiwicmVwbGFjZSIsImxldHRlciIsImNvbmNhdCIsInRyYW5zbGF0ZUZpbHRlckl0ZW1UeXBlIiwiZmlsdGVySXRlbVR5cGUiLCJpMThuIiwidCIsImJ1aWxkVW5zZWxlY3RlZEl0ZW1zIiwiZmlsdGVyX2l0ZW0iLCJmaWx0ZXJfaXRlbXMiLCJ1bmRlZmluZWQiLCJmaW5kIiwic2VsZWN0ZWRfaXRlbSIsInR5cGUiLCJjcmVhdGVFbGVtZW50IiwiSXRlbSIsImhyZWYiLCJvbkNsaWNrIiwiYWRkRmlsdGVySXRlbSIsImZpbHRlckl0ZW0iLCJwdXNoIiwiaWQiLCJtYXhfc2VsZWN0ZWRfaXRlbXMiLCJmaWx0ZXJfaWQiLCJhdmFpbGFibGVfb3B0aW9ucyIsIm9wdGlvbnMiLCJzZWxlY3RlZF9vcHRpb25zIiwiYWN0aXZlRmlsdGVyRHVwbGljYXRlIiwiYXNzaWduIiwiaGFuZGxlQXBwbHlGaWx0ZXIiLCJ1c2VFZmZlY3QiLCJjbGFzc05hbWUiLCJtYXAiLCJUb2dnbGUiLCJ2YXJpYW50IiwiUmVhY3RDb21wb25lbnQiLCJoZWlnaHQiLCJ3aWR0aCIsIk1lbnUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9ldmVudHMvZXZlbnRzX2xpc3QvRmlsdGVyL0ZpbHRlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdAa2Vuc2hvb3VpL3JlYWN0LW11bHRpLXNlbGVjdC9kaXN0L3N0eWxlLmNzcyc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBEcm9wZG93biBmcm9tICdyZWFjdC1ib290c3RyYXAvRHJvcGRvd24nO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgUGx1c0ljb24gfSBmcm9tICdzcmMvYXNzZXRzL2ljb25zL2FkZC5zdmcnO1xuaW1wb3J0IHsgSUZpbHRlckl0ZW0gfSBmcm9tICdzcmMvc3RvcmUvZmlsdGVycy9JRmlsdGVySXRlbSc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0ICcuLi8uLi9FdmVudHNTdHlsZS5zY3NzJztcbmltcG9ydCBGaWx0ZXJJdGVtIGZyb20gJy4vRmlsdGVySXRlbSc7XG5cbnR5cGUgSVByb3BzID0ge1xuICBhY3RpdmVGaWx0ZXJDb3B5OiBhbnk7XG4gIHNldEFjdGl2ZUZpbHRlckNvcHk6IFJlYWN0LkRpc3BhdGNoPGFueT47XG4gIHBhcnNlU2VsZWN0ZWRJdGVtczogYW55O1xuICBhdmFpbGFibGVGaWx0ZXJJdGVtczogYW55O1xuICBhcHBseUZpbHRlcjogYW55O1xuICByZXNldEZpbHRlcjogYW55O1xufTtcblxuY29uc3QgRmlsdGVyOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBhY3RpdmVGaWx0ZXJDb3B5LFxuICAgIHNldEFjdGl2ZUZpbHRlckNvcHksXG4gICAgcGFyc2VTZWxlY3RlZEl0ZW1zLFxuICAgIGF2YWlsYWJsZUZpbHRlckl0ZW1zLFxuICAgIGFwcGx5RmlsdGVyLFxuICAgIHJlc2V0RmlsdGVyLFxuICB9ID0gcHJvcHM7XG4gIGNvbnN0IFtzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCwgc2V0U2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXBdID0gdXNlU3RhdGUoe1xuICAgIGZpbHRlckl0ZW1JZDogbnVsbCxcbiAgICBzaG93OiBmYWxzZSxcbiAgfSk7XG4gIGNvbnN0IGNhbWVsVG9TbmFrZUNhc2UgPSAoc3RyOiBzdHJpbmcpID0+XG4gICAgc3RyWzBdLnRvTG93ZXJDYXNlKCkgK1xuICAgIHN0clxuICAgICAgLnNsaWNlKDEsIHN0ci5sZW5ndGgpXG4gICAgICAucmVwbGFjZSgvW0EtWl0vZywgKGxldHRlcikgPT4gYF8ke2xldHRlci50b0xvd2VyQ2FzZSgpfWApO1xuICBjb25zdCB0cmFuc2xhdGVGaWx0ZXJJdGVtVHlwZSA9IChmaWx0ZXJJdGVtVHlwZTogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIGkxOG4udChcbiAgICAgIGBldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmZpbHRlcl90eXBlcy4ke2NhbWVsVG9TbmFrZUNhc2UoZmlsdGVySXRlbVR5cGUpfWAsXG4gICAgKTtcbiAgfTtcbiAgY29uc3QgYnVpbGRVbnNlbGVjdGVkSXRlbXMgPSAoZmlsdGVyX2l0ZW06IElGaWx0ZXJJdGVtKSA9PiB7XG4gICAgaWYgKFxuICAgICAgYWN0aXZlRmlsdGVyQ29weS5maWx0ZXJfaXRlbXMgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgYWN0aXZlRmlsdGVyQ29weS5maWx0ZXJfaXRlbXMuZmluZChcbiAgICAgICAgKHNlbGVjdGVkX2l0ZW06IElGaWx0ZXJJdGVtKSA9PiBzZWxlY3RlZF9pdGVtLnR5cGUgPT09IGZpbHRlcl9pdGVtLnR5cGUsXG4gICAgICApID09PSB1bmRlZmluZWRcbiAgICApIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxEcm9wZG93bi5JdGVtXG4gICAgICAgICAgaHJlZj1cIiNcIlxuICAgICAgICAgIGtleT17ZmlsdGVyX2l0ZW0udHlwZX1cbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBhZGRGaWx0ZXJJdGVtKGZpbHRlcl9pdGVtLCBhY3RpdmVGaWx0ZXJDb3B5KX1cbiAgICAgICAgPlxuICAgICAgICAgIHt0cmFuc2xhdGVGaWx0ZXJJdGVtVHlwZShmaWx0ZXJfaXRlbS50eXBlKX1cbiAgICAgICAgPC9Ecm9wZG93bi5JdGVtPlxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBhZGRGaWx0ZXJJdGVtID0gKGZpbHRlckl0ZW06IGFueSwgYWN0aXZlRmlsdGVyQ29weTogYW55KSA9PiB7XG4gICAgYWN0aXZlRmlsdGVyQ29weS5maWx0ZXJfaXRlbXMucHVzaCh7XG4gICAgICBpZDogZmlsdGVySXRlbS50eXBlLFxuICAgICAgdHlwZTogZmlsdGVySXRlbS50eXBlLFxuICAgICAgbWF4X3NlbGVjdGVkX2l0ZW1zOiBmaWx0ZXJJdGVtLm1heF9zZWxlY3RlZF9pdGVtcyxcbiAgICAgIGZpbHRlcl9pZDogYWN0aXZlRmlsdGVyQ29weS5pZCxcbiAgICAgIGF2YWlsYWJsZV9vcHRpb25zOiBmaWx0ZXJJdGVtLm9wdGlvbnMsXG4gICAgICBzZWxlY3RlZF9vcHRpb25zOiBbXSxcbiAgICB9KTtcblxuICAgIGxldCBhY3RpdmVGaWx0ZXJEdXBsaWNhdGUgPSBPYmplY3QuYXNzaWduKHt9LCBhY3RpdmVGaWx0ZXJDb3B5KTtcbiAgICBzZXRBY3RpdmVGaWx0ZXJDb3B5KGFjdGl2ZUZpbHRlckR1cGxpY2F0ZSk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQXBwbHlGaWx0ZXIgPSAoKSA9PiB7XG4gICAgYXBwbHlGaWx0ZXIoKTtcbiAgICBzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCh7IGZpbHRlckl0ZW1JZDogbnVsbCwgc2hvdzogZmFsc2UgfSk7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBhcHBseUZpbHRlcigpO1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17J2ZpbHRlcid9PlxuICAgICAgPHVsXG4gICAgICAgIGNsYXNzTmFtZT17YGZpbHRlcl9pdGVtcyAke1xuICAgICAgICAgIGFjdGl2ZUZpbHRlckNvcHkuZmlsdGVyX2l0ZW1zLmxlbmd0aCA9PT0gYXZhaWxhYmxlRmlsdGVySXRlbXMubGVuZ3RoXG4gICAgICAgICAgICA/ICdmaWx0ZXJfaXRlbXMtLWRpc2FibGVkJ1xuICAgICAgICAgICAgOiAnJ1xuICAgICAgICB9YH1cbiAgICAgID5cbiAgICAgICAge2FjdGl2ZUZpbHRlckNvcHkgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgIGFjdGl2ZUZpbHRlckNvcHkuZmlsdGVyX2l0ZW1zICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcy5tYXAoKGZpbHRlcl9pdGVtOiBJRmlsdGVySXRlbSkgPT4gKFxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT17J2ZpbHRlcl9pdGVtJ30ga2V5PXtmaWx0ZXJfaXRlbS5pZH0+XG4gICAgICAgICAgICAgIDxGaWx0ZXJJdGVtXG4gICAgICAgICAgICAgICAgYWN0aXZlRmlsdGVyQ29weT17YWN0aXZlRmlsdGVyQ29weX1cbiAgICAgICAgICAgICAgICBzZXRBY3RpdmVGaWx0ZXJDb3B5PXtzZXRBY3RpdmVGaWx0ZXJDb3B5fVxuICAgICAgICAgICAgICAgIGZpbHRlcl9pdGVtPXtmaWx0ZXJfaXRlbX1cbiAgICAgICAgICAgICAgICBwYXJzZVNlbGVjdGVkSXRlbXM9e3BhcnNlU2VsZWN0ZWRJdGVtc31cbiAgICAgICAgICAgICAgICBhdmFpbGFibGVGaWx0ZXJJdGVtcz17YXZhaWxhYmxlRmlsdGVySXRlbXN9XG4gICAgICAgICAgICAgICAgc2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXA9e3Nob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwfVxuICAgICAgICAgICAgICAgIHNldFNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwPXtzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgKSl9XG4gICAgICAgIDxsaSBjbGFzc05hbWU9eydmaXhlZC1hY3Rpb24nfT5cbiAgICAgICAgICA8RHJvcGRvd24gY2xhc3NOYW1lPXsnYXZhaWxhYmxlLWZpbHRlci1pdGVtcyd9PlxuICAgICAgICAgICAgPERyb3Bkb3duLlRvZ2dsZSB2YXJpYW50PVwic3VjY2Vzc1wiIGlkPVwiZHJvcGRvd24tYmFzaWNcIj5cbiAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgPFBsdXNJY29uIGNsYXNzTmFtZT1cInBsdXMtaWNvblwiIGhlaWdodD1cIjE1cHhcIiB3aWR0aD1cIjE1cHhcIiAvPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYWRkX2ZpbHRlcl9pdGVtJyl9XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvRHJvcGRvd24uVG9nZ2xlPlxuXG4gICAgICAgICAgICA8RHJvcGRvd24uTWVudT5cbiAgICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICAgIHthdmFpbGFibGVGaWx0ZXJJdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZUZpbHRlckl0ZW1zLm1hcCgoZmlsdGVyX2l0ZW06IElGaWx0ZXJJdGVtKSA9PlxuICAgICAgICAgICAgICAgICAgICBidWlsZFVuc2VsZWN0ZWRJdGVtcyhmaWx0ZXJfaXRlbSksXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgPC9Ecm9wZG93bi5NZW51PlxuICAgICAgICAgIDwvRHJvcGRvd24+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzc05hbWU9eydmaXhlZC1hY3Rpb24nfT5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2FwcGx5LWJ1dHRvbi1jb250YWluZXInfT5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17J2FwcGx5LWJ1dHRvbid9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICBoYW5kbGVBcHBseUZpbHRlcigpO1xuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmFwcGx5Jyl9XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIHtyZXNldEZpbHRlciAmJiAoXG4gICAgICAgICAgPGxpIGNsYXNzTmFtZT17J2ZpeGVkLWFjdGlvbid9PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydyZXNldC1idXR0b24tY29udGFpbmVyJ30+XG4gICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsncmVzZXQtYnV0dG9uJ31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICByZXNldEZpbHRlcigpO1xuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLnJlc2V0Jyl9XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICl9XG4gICAgICA8L3VsPlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgRmlsdGVyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQUEsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFNBQUEsR0FBQUMsc0JBQUEsQ0FBQUosT0FBQTtBQUFnRCxJQUFBSyxJQUFBLEdBQUFMLE9BQUE7QUFHaEQsSUFBQU0sS0FBQSxHQUFBRixzQkFBQSxDQUFBSixPQUFBO0FBQ0FBLE9BQUE7QUFDQSxJQUFBTyxXQUFBLEdBQUFILHNCQUFBLENBQUFKLE9BQUE7QUFBc0MsU0FBQVEseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFQLHdCQUFBVyxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENB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
|
|
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray"));
|
|
10
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
10
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
11
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
13
|
var _reactBootstrap = require("react-bootstrap");
|
|
@@ -42,7 +43,9 @@ var FilterContainer = function FilterContainer(props) {
|
|
|
42
43
|
filterPopupOpen = props.filterPopupOpen,
|
|
43
44
|
applyLogic = props.applyLogic,
|
|
44
45
|
_props$fetchType = props.fetchType,
|
|
45
|
-
fetchType = _props$fetchType === void 0 ? 'EventFilters' : _props$fetchType
|
|
46
|
+
fetchType = _props$fetchType === void 0 ? 'EventFilters' : _props$fetchType,
|
|
47
|
+
_props$resetFilter = props.resetFilter,
|
|
48
|
+
resetFilter = _props$resetFilter === void 0 ? null : _props$resetFilter;
|
|
46
49
|
var dispatch = (0, _reactRedux.useDispatch)();
|
|
47
50
|
var nameInput = (0, _react.useRef)(null);
|
|
48
51
|
var filterContent = (0, _react.useRef)(null);
|
|
@@ -67,10 +70,14 @@ var FilterContainer = function FilterContainer(props) {
|
|
|
67
70
|
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
68
71
|
activeFilter = _useState10[0],
|
|
69
72
|
setActiveFilter = _useState10[1];
|
|
70
|
-
var _useState11 = (0, _react.useState)(
|
|
73
|
+
var _useState11 = (0, _react.useState)([]),
|
|
71
74
|
_useState12 = (0, _slicedToArray2.default)(_useState11, 2),
|
|
72
|
-
|
|
73
|
-
|
|
75
|
+
defaultFilters = _useState12[0],
|
|
76
|
+
setDefaultFilters = _useState12[1];
|
|
77
|
+
var _useState13 = (0, _react.useState)(undefined),
|
|
78
|
+
_useState14 = (0, _slicedToArray2.default)(_useState13, 2),
|
|
79
|
+
activeFilterCopy = _useState14[0],
|
|
80
|
+
setActiveFilterCopy = _useState14[1];
|
|
74
81
|
// @ts-ignore
|
|
75
82
|
var csrf = document.querySelector("meta[name='csrf-token']").getAttribute('content');
|
|
76
83
|
var useQuery = function useQuery() {
|
|
@@ -81,6 +88,14 @@ var FilterContainer = function FilterContainer(props) {
|
|
|
81
88
|
var getKQLFromURL = function getKQLFromURL() {
|
|
82
89
|
return query.get('valuesFromKQL');
|
|
83
90
|
};
|
|
91
|
+
var handleResetFilter = function handleResetFilter() {
|
|
92
|
+
debugger;
|
|
93
|
+
var removeFilters = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, activeFilterCopy), {}, {
|
|
94
|
+
filter_items: defaultFilters
|
|
95
|
+
});
|
|
96
|
+
setActiveFilterCopy(removeFilters);
|
|
97
|
+
resetFilter && resetFilter();
|
|
98
|
+
};
|
|
84
99
|
var getPointsToFilters = function getPointsToFilters(availableFilterItems, filters) {
|
|
85
100
|
var interestPointFilterItem = availableFilterItems.find(function (f) {
|
|
86
101
|
return f.type === 'InterestPointFilterItem';
|
|
@@ -158,6 +173,7 @@ var FilterContainer = function FilterContainer(props) {
|
|
|
158
173
|
siteID = _useParams.siteID,
|
|
159
174
|
areaID = _useParams.areaID;
|
|
160
175
|
var getData = function getData() {
|
|
176
|
+
var firstTime = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
161
177
|
fetch("/ui_filters.json?water_authority_id=".concat(global_data.waterAuthorityId, "&filter_type=").concat(fetchType, "&valuesFromKQL=").concat(getKQLFromURL()).concat(siteID ? "&site_id=".concat(siteID) : '').concat(areaID ? "&area_id=".concat(areaID) : '')).then(function (response) {
|
|
162
178
|
return response.json();
|
|
163
179
|
}).then(function (json) {
|
|
@@ -175,6 +191,9 @@ var FilterContainer = function FilterContainer(props) {
|
|
|
175
191
|
setActiveFilter(active);
|
|
176
192
|
setActiveFilterCopy(active);
|
|
177
193
|
}
|
|
194
|
+
if (firstTime) {
|
|
195
|
+
setDefaultFilters(deepClone(active.filter_items));
|
|
196
|
+
}
|
|
178
197
|
applyFilter(active);
|
|
179
198
|
});
|
|
180
199
|
};
|
|
@@ -303,7 +322,7 @@ var FilterContainer = function FilterContainer(props) {
|
|
|
303
322
|
setWaId(getWaIdFromURL());
|
|
304
323
|
if (!rendered) {
|
|
305
324
|
setRendered(true);
|
|
306
|
-
getData();
|
|
325
|
+
getData(!rendered);
|
|
307
326
|
} else {
|
|
308
327
|
if (global_data.eventFilterParam === '' && filters.length !== 0) {
|
|
309
328
|
var filter = filters.find(function (filter) {
|
|
@@ -383,10 +402,11 @@ var FilterContainer = function FilterContainer(props) {
|
|
|
383
402
|
activeFilterCopy: activeFilterCopy,
|
|
384
403
|
availableFilterItems: availableFilterItems,
|
|
385
404
|
parseSelectedItems: _kql.parseSelectedItems,
|
|
386
|
-
applyFilter: applyFilter
|
|
405
|
+
applyFilter: applyFilter,
|
|
406
|
+
resetFilter: resetFilter ? handleResetFilter : null
|
|
387
407
|
}))));
|
|
388
408
|
};
|
|
389
409
|
var connector = (0, _reactRedux.connect)(mapStateToProps);
|
|
390
410
|
var _default = connector(FilterContainer);
|
|
391
411
|
exports.default = _default;
|
|
392
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RCb290c3RyYXAiLCJfRHJvcGRvd24iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JlYWN0UmVkdXgiLCJfcmVhY3RSb3V0ZXJEb20iLCJfZGlza2V0dGUiLCJfbGlzdCIsIl9hY3Rpb25zIiwiX2kxOG4iLCJfa3FsIiwiX0ZpbHRlciIsIl9GaWx0ZXJzRHJvcERvd24iLCJfYWN0aW9uc0NyZWF0b3IiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIm1hcFN0YXRlVG9Qcm9wcyIsInN0YXRlIiwiZ2xvYmFsX2RhdGEiLCJuYXZfY29udGV4dF9kYXRhIiwicG9pbnRzX2RhdGEiLCJGaWx0ZXJDb250YWluZXIiLCJwcm9wcyIsImN1c3RvbV9wb2ludHMiLCJmaWx0ZXJQb3B1cE9wZW4iLCJhcHBseUxvZ2ljIiwiX3Byb3BzJGZldGNoVHlwZSIsImZldGNoVHlwZSIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJuYW1lSW5wdXQiLCJ1c2VSZWYiLCJmaWx0ZXJDb250ZW50IiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwiZmlsdGVycyIsInNldEZpbHRlcnMiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImF2YWlsYWJsZUZpbHRlckl0ZW1zIiwic2V0QXZhaWxhYmxlRmlsdGVySXRlbXMiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsInJlbmRlcmVkIiwic2V0UmVuZGVyZWQiLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsIldhSWQiLCJzZXRXYUlkIiwiX3VzZVN0YXRlOSIsInVuZGVmaW5lZCIsIl91c2VTdGF0ZTEwIiwiYWN0aXZlRmlsdGVyIiwic2V0QWN0aXZlRmlsdGVyIiwiX3VzZVN0YXRlMTEiLCJfdXNlU3RhdGUxMiIsImFjdGl2ZUZpbHRlckNvcHkiLCJzZXRBY3RpdmVGaWx0ZXJDb3B5IiwiY3NyZiIsImRvY3VtZW50IiwicXVlcnlTZWxlY3RvciIsImdldEF0dHJpYnV0ZSIsInVzZVF1ZXJ5IiwiVVJMU2VhcmNoUGFyYW1zIiwidXNlTG9jYXRpb24iLCJzZWFyY2giLCJoaXN0b3J5IiwidXNlSGlzdG9yeSIsInF1ZXJ5IiwiZ2V0S1FMRnJvbVVSTCIsImdldFBvaW50c1RvRmlsdGVycyIsImludGVyZXN0UG9pbnRGaWx0ZXJJdGVtIiwiZmluZCIsImYiLCJ0eXBlIiwiZmlsdGVyZWRQb2ludHNEYXRhIiwiaXRlbXMiLCJmaWx0ZXIiLCJwb2ludCIsInBhcnRfb2Zfb2JzZXJ2YXRpb24iLCJtYXAiLCJpZCIsIm5hbWUiLCJncm91cCIsIm9wdGlvbnMiLCJmb3JFYWNoIiwiZmlsdGVySXRlbSIsImZpbHRlcl9pdGVtcyIsImZpIiwiYXZhaWxhYmxlX29wdGlvbnMiLCJ1cGRhdGVTaXRlVG9GaWx0ZXJzIiwic2l0ZUZpbHRlckl0ZW0iLCJmZXRjaEV2ZW50RmlsdGVycyIsInByZXBhcmVkUGFyYW1zIiwibWV0aG9kIiwidXJsIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZmV0Y2giLCJoZWFkZXJzIiwiQWNjZXB0IiwiYm9keSIsIkpTT04iLCJzdHJpbmdpZnkiLCJ0aGVuIiwicmVzcG9uc2UiLCJqc29uIiwiZGF0YSIsImF2YWlsYWJsZV9maWx0ZXJfaXRlbXMiLCJzYXZlZCIsImRlZXBDbG9uZSIsInBhcnNlIiwiX3VzZVBhcmFtcyIsInVzZVBhcmFtcyIsInNpdGVJRCIsImFyZWFJRCIsImdldERhdGEiLCJjb25jYXQiLCJ3YXRlckF1dGhvcml0eUlkIiwianNvblNoYWxsb3dDb3B5IiwiYXNzaWduIiwiYWN0aXZlIiwiZGlzcGxheWVkX2ZpbHRlciIsInNlbGVjdGVkUGVyaW9kIiwic2VsZWN0ZWRfb3B0aW9ucyIsImFjdGl2YXRlRmlsdGVyIiwiYXBwbHlGaWx0ZXIiLCJoYW5kbGVGaWx0ZXJDaGFuZ2UiLCJjdXJyZW50IiwiY2xpY2siLCJzYXZlQWN0aXZlRmlsdGVyIiwiY2xvbmVkRmlsdGVycyIsImZpbHRlclRvTW9kaWZ5SW5kZXgiLCJpbmRleE9mIiwiZmlsdGVyX3R5cGUiLCJ1aV9maWx0ZXIiLCJpc19hY3RpdmUiLCJNYXRoIiwic2lnbiIsImNyZWF0ZUZpbHRlciIsIm5ld0ZpbHRlciIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJkZWxldGVGaWx0ZXIiLCJnZXRFdmVudElkRnJvbVVSTCIsImdldFdhSWRGcm9tVVJMIiwiZ2V0S1FMVmFsdWVzRnJvbVVSTCIsInZhbHVlIiwibmF2Q29udGV4dCIsImluY2x1ZGVzIiwicHVzaCIsImxvY2FsZSIsImJ1aWxkS1FMUXVlcnkiLCJzZXRFdmVudEZpbHRlclBhcmFtIiwic2V0QWN0aXZlRmlsdGVyR2xvYmFsbHkiLCJzZXRTYW1wbGluZ0RhdGEiLCJjdXJyZW50UGFnZSIsImlzRmV0Y2giLCJoYW5kbGVDcmVhdGlvbkNsaWNrIiwidXNlRWZmZWN0IiwiZXZlbnRGaWx0ZXJQYXJhbSIsImNsZWFudXAiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwicmVmIiwiaTE4biIsInQiLCJUb2dnbGUiLCJ2YXJpYW50IiwiUmVhY3RDb21wb25lbnQiLCJoZWlnaHQiLCJ3aWR0aCIsImZpbGwiLCJNZW51IiwiSXRlbSIsImRpc2FibGVkIiwib25DbGljayIsIkZvcm1Db250cm9sIiwicGxhY2Vob2xkZXIiLCJhdXRvRm9jdXMiLCJCdXR0b24iLCJwYXJzZVNlbGVjdGVkSXRlbXMiLCJjb25uZWN0b3IiLCJjb25uZWN0IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0ZpbHRlci9GaWx0ZXJDb250YWluZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBCdXR0b24sIEZvcm1Db250cm9sIH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCBEcm9wZG93biBmcm9tICdyZWFjdC1ib290c3RyYXAvRHJvcGRvd24nO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMsIHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlTG9jYXRpb24sIHVzZVBhcmFtcyB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgU2F2ZUljb24gfSBmcm9tICdzcmMvYXNzZXRzL2ljb25zL2Rpc2tldHRlLnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBMaXN0SWNvbiB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvbGlzdC5zdmcnO1xuaW1wb3J0IHsgSUFwcFN0YXRlIH0gZnJvbSAnc3JjL21vZGVscy9JQXBwU3RhdGUnO1xuaW1wb3J0IHsgSUZpbHRlciB9IGZyb20gJ3NyYy9zdG9yZS9maWx0ZXJzL0lGaWx0ZXInO1xuaW1wb3J0IHsgSUZpbHRlckl0ZW0gfSBmcm9tICdzcmMvc3RvcmUvZmlsdGVycy9JRmlsdGVySXRlbSc7XG5pbXBvcnQge1xuICBzZXRBY3RpdmVGaWx0ZXJHbG9iYWxseSxcbiAgc2V0RXZlbnRGaWx0ZXJQYXJhbSxcbn0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJ3NyYy9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgYnVpbGRLUUxRdWVyeSwgcGFyc2VTZWxlY3RlZEl0ZW1zIH0gZnJvbSAnc3JjL3V0aWxpdGllcy9rcWwnO1xuaW1wb3J0ICcuL0ZpbHRlclN0eWxlLnNjc3MnO1xuaW1wb3J0IEZpbHRlciBmcm9tICcuL0ZpbHRlcic7XG5pbXBvcnQgRmlsdGVyc0Ryb3BEb3duIGZyb20gJy4vRmlsdGVyc0Ryb3BEb3duJztcbmltcG9ydCB7IHNldFNhbXBsaW5nRGF0YSB9IGZyb20gJ3NyYy9zdG9yZS9zYW1wbGluZ3MvYWN0aW9uc0NyZWF0b3InO1xuZnVuY3Rpb24gbWFwU3RhdGVUb1Byb3BzKHN0YXRlOiBJQXBwU3RhdGUpIHtcbiAgY29uc3QgeyBnbG9iYWxfZGF0YSwgbmF2X2NvbnRleHRfZGF0YSwgcG9pbnRzX2RhdGEgfSA9IHN0YXRlO1xuXG4gIHJldHVybiB7XG4gICAgZ2xvYmFsX2RhdGEsXG4gICAgbmF2X2NvbnRleHRfZGF0YSxcbiAgICBwb2ludHNfZGF0YSxcbiAgfTtcbn1cblxudHlwZSBJUHJvcHMgPSBDb25uZWN0ZWRQcm9wczx0eXBlb2YgY29ubmVjdG9yPiAmIHtcbiAgZmlsdGVyUG9wdXBPcGVuOiBib29sZWFuO1xuICBmZXRjaFR5cGU6IHN0cmluZztcbiAgY3VzdG9tX3BvaW50cz86IGFueTtcbiAgYXBwbHlMb2dpYz86ICh2YWx1ZXM6IHN0cmluZykgPT4gdm9pZDtcbn07XG5cbmNvbnN0IEZpbHRlckNvbnRhaW5lcjogUmVhY3QuRkM8SVByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7XG4gICAgZ2xvYmFsX2RhdGEsXG4gICAgbmF2X2NvbnRleHRfZGF0YSxcbiAgICBwb2ludHNfZGF0YSxcbiAgICBjdXN0b21fcG9pbnRzLFxuICAgIGZpbHRlclBvcHVwT3BlbixcbiAgICBhcHBseUxvZ2ljLFxuICAgIGZldGNoVHlwZSA9ICdFdmVudEZpbHRlcnMnLFxuICB9ID0gcHJvcHM7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgbmFtZUlucHV0ID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCBmaWx0ZXJDb250ZW50ID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgY29uc3QgW2ZpbHRlcnMsIHNldEZpbHRlcnNdID0gdXNlU3RhdGU8YW55PihbXSk7XG4gIGNvbnN0IFthdmFpbGFibGVGaWx0ZXJJdGVtcywgc2V0QXZhaWxhYmxlRmlsdGVySXRlbXNdID0gdXNlU3RhdGUoW10pO1xuICBjb25zdCBbcmVuZGVyZWQsIHNldFJlbmRlcmVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW1dhSWQsIHNldFdhSWRdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4oKTtcbiAgLy9lc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY29uc3QgW2FjdGl2ZUZpbHRlciwgc2V0QWN0aXZlRmlsdGVyXSA9IHVzZVN0YXRlPGFueT4odW5kZWZpbmVkKTtcbiAgY29uc3QgW2FjdGl2ZUZpbHRlckNvcHksIHNldEFjdGl2ZUZpbHRlckNvcHldID0gdXNlU3RhdGU8YW55Pih1bmRlZmluZWQpO1xuICAvLyBAdHMtaWdub3JlXG4gIGNvbnN0IGNzcmYgPSBkb2N1bWVudFxuICAgIC5xdWVyeVNlbGVjdG9yKFwibWV0YVtuYW1lPSdjc3JmLXRva2VuJ11cIilcbiAgICAuZ2V0QXR0cmlidXRlKCdjb250ZW50Jyk7XG4gIGNvbnN0IHVzZVF1ZXJ5ID0gKCkgPT4ge1xuICAgIHJldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKHVzZUxvY2F0aW9uKCkuc2VhcmNoKTtcbiAgfTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeSgpO1xuICBjb25zdCBnZXRLUUxGcm9tVVJMID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3ZhbHVlc0Zyb21LUUwnKTtcbiAgfTtcblxuICBjb25zdCBnZXRQb2ludHNUb0ZpbHRlcnMgPSAoYXZhaWxhYmxlRmlsdGVySXRlbXM6IGFueSwgZmlsdGVyczogYW55KSA9PiB7XG4gICAgbGV0IGludGVyZXN0UG9pbnRGaWx0ZXJJdGVtID0gYXZhaWxhYmxlRmlsdGVySXRlbXMuZmluZChcbiAgICAgIChmOiBJRmlsdGVySXRlbSkgPT4gZi50eXBlID09PSAnSW50ZXJlc3RQb2ludEZpbHRlckl0ZW0nLFxuICAgICk7XG4gICAgbGV0IGZpbHRlcmVkUG9pbnRzRGF0YSA9XG4gICAgICBjdXN0b21fcG9pbnRzIHx8XG4gICAgICBwb2ludHNfZGF0YS5pdGVtc1xuICAgICAgICAuZmlsdGVyKChwb2ludDogSVBvaW50KSA9PiBwb2ludC5wYXJ0X29mX29ic2VydmF0aW9uID09PSB0cnVlKVxuICAgICAgICAubWFwKChwb2ludDogSVBvaW50KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHsgaWQ6IHBvaW50LmlkLCBuYW1lOiBwb2ludC5ncm91cC5uYW1lIH07XG4gICAgICAgIH0pO1xuXG4gICAgaWYgKGludGVyZXN0UG9pbnRGaWx0ZXJJdGVtICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGludGVyZXN0UG9pbnRGaWx0ZXJJdGVtLm9wdGlvbnMgPSBmaWx0ZXJlZFBvaW50c0RhdGE7XG4gICAgfVxuXG4gICAgZmlsdGVycy5mb3JFYWNoKChmOiBJRmlsdGVyKSA9PiB7XG4gICAgICBsZXQgZmlsdGVySXRlbSA9IGYuZmlsdGVyX2l0ZW1zLmZpbmQoXG4gICAgICAgIChmaTogSUZpbHRlckl0ZW0pID0+IGZpLnR5cGUgPT09ICdJbnRlcmVzdFBvaW50RmlsdGVySXRlbScsXG4gICAgICApO1xuXG4gICAgICBpZiAoZmlsdGVySXRlbSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGZpbHRlckl0ZW0uYXZhaWxhYmxlX29wdGlvbnMgPSBmaWx0ZXJlZFBvaW50c0RhdGE7XG4gICAgICB9XG4gICAgfSk7XG4gICAgaWYgKGN1c3RvbV9wb2ludHMpIHtcbiAgICAgIHVwZGF0ZVNpdGVUb0ZpbHRlcnMoYXZhaWxhYmxlRmlsdGVySXRlbXMsIGZpbHRlcnMpO1xuICAgIH1cbiAgICBzZXRGaWx0ZXJzKGZpbHRlcnMpO1xuICB9O1xuXG4gIGNvbnN0IHVwZGF0ZVNpdGVUb0ZpbHRlcnMgPSAoYXZhaWxhYmxlRmlsdGVySXRlbXM6IGFueSwgZmlsdGVyczogYW55KSA9PiB7XG4gICAgbGV0IHNpdGVGaWx0ZXJJdGVtID0gYXZhaWxhYmxlRmlsdGVySXRlbXMuZmluZChcbiAgICAgIChmOiBJRmlsdGVySXRlbSkgPT4gZi50eXBlID09PSAnU2l0ZUZpbHRlckl0ZW0nLFxuICAgICk7XG4gICAgbGV0IGZpbHRlcmVkUG9pbnRzRGF0YSA9IGN1c3RvbV9wb2ludHM7XG5cbiAgICBpZiAoc2l0ZUZpbHRlckl0ZW0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgc2l0ZUZpbHRlckl0ZW0ub3B0aW9ucyA9IGZpbHRlcmVkUG9pbnRzRGF0YTtcbiAgICB9XG5cbiAgICBmaWx0ZXJzLmZvckVhY2goKGY6IElGaWx0ZXIpID0+IHtcbiAgICAgIGxldCBmaWx0ZXJJdGVtID0gZi5maWx0ZXJfaXRlbXMuZmluZChcbiAgICAgICAgKGZpOiBJRmlsdGVySXRlbSkgPT4gZmkudHlwZSA9PT0gJ1NpdGVGaWx0ZXJJdGVtJyxcbiAgICAgICk7XG5cbiAgICAgIGlmIChmaWx0ZXJJdGVtICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgZmlsdGVySXRlbS5hdmFpbGFibGVfb3B0aW9ucyA9IGZpbHRlcmVkUG9pbnRzRGF0YTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBmZXRjaEV2ZW50RmlsdGVycyA9IChcbiAgICBwcmVwYXJlZFBhcmFtczogYW55LFxuICAgIG1ldGhvZDogc3RyaW5nLFxuICAgIHVybDogc3RyaW5nLFxuICAgIGZpbHRlcjogYW55ID0gbnVsbCxcbiAgKSA9PiB7XG4gICAgaWYgKGNzcmYgIT09IG51bGwpIHtcbiAgICAgIGZldGNoKHVybCwge1xuICAgICAgICBtZXRob2Q6IG1ldGhvZCxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgJ1gtQ1NSRi1Ub2tlbic6IGNzcmYsXG4gICAgICAgICAgQWNjZXB0OiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIH0sXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHByZXBhcmVkUGFyYW1zKSxcbiAgICAgIH0pXG4gICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuanNvbigpKVxuICAgICAgICAudGhlbigoZGF0YSkgPT4ge1xuICAgICAgICAgIGdldFBvaW50c1RvRmlsdGVycyhkYXRhLmF2YWlsYWJsZV9maWx0ZXJfaXRlbXMsIGRhdGEuZmlsdGVycyk7XG5cbiAgICAgICAgICBpZiAoZmlsdGVyICE9PSBudWxsKSB7XG4gICAgICAgICAgICBsZXQgc2F2ZWQgPSBkYXRhLmZpbHRlcnMuZmluZChcbiAgICAgICAgICAgICAgKGY6IElGaWx0ZXIpID0+IGYubmFtZSA9PT0gZmlsdGVyLm5hbWUsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgc2V0QWN0aXZlRmlsdGVyKHNhdmVkKTtcbiAgICAgICAgICAgIHNldEFjdGl2ZUZpbHRlckNvcHkoc2F2ZWQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGRlZXBDbG9uZSA9IChkYXRhOiBhbnkpID0+IHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShkYXRhKSk7XG4gIH07XG5cbiAgY29uc3QgeyBzaXRlSUQsIGFyZWFJRCB9ID0gdXNlUGFyYW1zKCk7XG5cbiAgY29uc3QgZ2V0RGF0YSA9ICgpID0+IHtcbiAgICBmZXRjaChcbiAgICAgIGAvdWlfZmlsdGVycy5qc29uP3dhdGVyX2F1dGhvcml0eV9pZD0ke1xuICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICB9JmZpbHRlcl90eXBlPSR7ZmV0Y2hUeXBlfSZ2YWx1ZXNGcm9tS1FMPSR7Z2V0S1FMRnJvbVVSTCgpfSR7XG4gICAgICAgIHNpdGVJRCA/IGAmc2l0ZV9pZD0ke3NpdGVJRH1gIDogJydcbiAgICAgIH0ke2FyZWFJRCA/IGAmYXJlYV9pZD0ke2FyZWFJRH1gIDogJyd9YCxcbiAgICApXG4gICAgICAudGhlbigocmVzcG9uc2UpID0+IHJlc3BvbnNlLmpzb24oKSlcbiAgICAgIC50aGVuKChqc29uKSA9PiB7XG4gICAgICAgIGdldFBvaW50c1RvRmlsdGVycyhqc29uLmF2YWlsYWJsZV9maWx0ZXJfaXRlbXMsIGpzb24uZmlsdGVycyk7XG5cbiAgICAgICAgbGV0IGpzb25TaGFsbG93Q29weSA9IE9iamVjdC5hc3NpZ24oe30sIGpzb24pO1xuICAgICAgICBqc29uU2hhbGxvd0NvcHkuZmlsdGVycyA9IGRlZXBDbG9uZShqc29uU2hhbGxvd0NvcHkuZmlsdGVycyk7XG4gICAgICAgIGxldCBhY3RpdmUgPSBqc29uU2hhbGxvd0NvcHkuZGlzcGxheWVkX2ZpbHRlcjtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgZ2xvYmFsX2RhdGEuc2VsZWN0ZWRQZXJpb2QgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgIGdsb2JhbF9kYXRhLnNlbGVjdGVkUGVyaW9kICE9PSBudWxsXG4gICAgICAgICkge1xuICAgICAgICAgIGFjdGl2ZS5maWx0ZXJfaXRlbXNbMV0uc2VsZWN0ZWRfb3B0aW9ucyA9IFtcbiAgICAgICAgICAgIGdsb2JhbF9kYXRhLnNlbGVjdGVkUGVyaW9kLFxuICAgICAgICAgIF07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYWN0aXZlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBhY3RpdmF0ZUZpbHRlcihqc29uU2hhbGxvd0NvcHkuZmlsdGVyc1swXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2V0QXZhaWxhYmxlRmlsdGVySXRlbXMoanNvblNoYWxsb3dDb3B5LmF2YWlsYWJsZV9maWx0ZXJfaXRlbXMpO1xuICAgICAgICAgIHNldEFjdGl2ZUZpbHRlcihhY3RpdmUpO1xuICAgICAgICAgIHNldEFjdGl2ZUZpbHRlckNvcHkoYWN0aXZlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGFwcGx5RmlsdGVyKGFjdGl2ZSk7XG4gICAgICB9KTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVGaWx0ZXJDaGFuZ2UgPSAoZmlsdGVyOiBJRmlsdGVyKSA9PiB7XG4gICAgc2V0QWN0aXZlRmlsdGVyKGRlZXBDbG9uZShmaWx0ZXIpKTtcbiAgICBzZXRBY3RpdmVGaWx0ZXJDb3B5KGRlZXBDbG9uZShmaWx0ZXIpKTtcbiAgICBmaWx0ZXJDb250ZW50LmN1cnJlbnQhLmNsaWNrKCk7XG4gIH07XG5cbiAgY29uc3Qgc2F2ZUFjdGl2ZUZpbHRlciA9IChcbiAgICBmaWx0ZXI6XG4gICAgICB8IElGaWx0ZXJcbiAgICAgIHwge1xuICAgICAgICAgIGlkOiBudW1iZXI7XG4gICAgICAgICAgbmFtZTogc3RyaW5nO1xuICAgICAgICAgIGZpbHRlcl9pdGVtczogSUZpbHRlckl0ZW1bXTtcbiAgICAgICAgICBpc19hY3RpdmU6IGJvb2xlYW47XG4gICAgICAgIH0sXG4gICkgPT4ge1xuICAgIGxldCBjbG9uZWRGaWx0ZXJzID0gZGVlcENsb25lKGZpbHRlcnMpO1xuICAgIGxldCBmaWx0ZXJUb01vZGlmeUluZGV4ID0gY2xvbmVkRmlsdGVycy5pbmRleE9mKFxuICAgICAgY2xvbmVkRmlsdGVycy5maW5kKChmOiBhbnkpID0+IGYuaWQgPT09IGZpbHRlci5pZCksXG4gICAgKTtcbiAgICBsZXQgcHJlcGFyZWRQYXJhbXMgPSB7XG4gICAgICBmaWx0ZXJfdHlwZTogZmV0Y2hUeXBlLFxuICAgICAgdWlfZmlsdGVyOiB7XG4gICAgICAgIG5hbWU6IGZpbHRlci5uYW1lLFxuICAgICAgICBpc19hY3RpdmU6IGZpbHRlci5pc19hY3RpdmUsXG4gICAgICAgIGZpbHRlcl9pdGVtczogSlNPTi5zdHJpbmdpZnkoZmlsdGVyLmZpbHRlcl9pdGVtcyksXG4gICAgICB9LFxuICAgIH07XG5cbiAgICBjbG9uZWRGaWx0ZXJzW2ZpbHRlclRvTW9kaWZ5SW5kZXhdID0gZmlsdGVyO1xuICAgIHNldEZpbHRlcnMoY2xvbmVkRmlsdGVycyk7XG4gICAgc2V0QWN0aXZlRmlsdGVyKGZpbHRlcik7XG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weShmaWx0ZXIpO1xuXG4gICAgaWYgKE1hdGguc2lnbihmaWx0ZXIuaWQpID4gMCkge1xuICAgICAgZmV0Y2hFdmVudEZpbHRlcnMoXG4gICAgICAgIHByZXBhcmVkUGFyYW1zLFxuICAgICAgICAnUFVUJyxcbiAgICAgICAgYC91aV9maWx0ZXJzLyR7ZmlsdGVyLmlkfT93YXRlcl9hdXRob3JpdHlfaWQ9JHtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkfWAsXG4gICAgICAgIGZpbHRlcixcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZldGNoRXZlbnRGaWx0ZXJzKFxuICAgICAgICBwcmVwYXJlZFBhcmFtcyxcbiAgICAgICAgJ1BPU1QnLFxuICAgICAgICBgL3VpX2ZpbHRlcnM/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH1gLFxuICAgICAgICBmaWx0ZXIsXG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBjcmVhdGVGaWx0ZXIgPSAoZmlsdGVyOiBJRmlsdGVyLCBuYW1lOiBzdHJpbmcpID0+IHtcbiAgICBsZXQgbmV3RmlsdGVyID0ge1xuICAgICAgaWQ6IC0xLFxuICAgICAgbmFtZTogbmFtZSxcbiAgICAgIGZpbHRlcl9pdGVtczogZmlsdGVyLmZpbHRlcl9pdGVtcyxcbiAgICAgIGlzX2FjdGl2ZTogZmFsc2UsXG4gICAgfTtcblxuICAgIHNldEZpbHRlcnMoWy4uLmZpbHRlcnMsIG5ld0ZpbHRlcl0pO1xuICAgIHNldEFjdGl2ZUZpbHRlckNvcHkobmV3RmlsdGVyKTtcbiAgICBzZXRBY3RpdmVGaWx0ZXIobmV3RmlsdGVyKTtcbiAgICBzYXZlQWN0aXZlRmlsdGVyKG5ld0ZpbHRlcik7XG4gIH07XG5cbiAgY29uc3QgZGVsZXRlRmlsdGVyID0gKGZpbHRlcjogSUZpbHRlcikgPT4ge1xuICAgIGlmIChjc3JmICE9PSBudWxsICYmIGZpbHRlci5pZCAhPT0gLTEpIHtcbiAgICAgIGZldGNoKFxuICAgICAgICBgL3VpX2ZpbHRlcnMvJHtmaWx0ZXIuaWR9P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmZpbHRlcl90eXBlPSR7ZmV0Y2hUeXBlfWAsXG4gICAgICAgIHtcbiAgICAgICAgICBtZXRob2Q6ICdERUxFVEUnLFxuICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICdYLUNTUkYtVG9rZW4nOiBjc3JmLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICApXG4gICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuanNvbigpKVxuICAgICAgICAudGhlbigoZGF0YSkgPT4ge1xuICAgICAgICAgIGxldCBhY3RpdmUgPSBkYXRhLmZpbHRlcnMuZmluZChcbiAgICAgICAgICAgIChmaWx0ZXI6IElGaWx0ZXIpID0+IGZpbHRlci5pc19hY3RpdmUgPT09IHRydWUsXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGlmIChhY3RpdmUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgc2V0RmlsdGVycyhkYXRhLmZpbHRlcnMpO1xuICAgICAgICAgICAgc2V0QWN0aXZlRmlsdGVyKGFjdGl2ZSk7XG4gICAgICAgICAgICBzZXRBY3RpdmVGaWx0ZXJDb3B5KGFjdGl2ZSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChkYXRhLmZpbHRlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgIGdldERhdGEoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGRhdGEuZmlsdGVyc1swXS5pc19hY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgICBzZXRBY3RpdmVGaWx0ZXIoZGF0YS5maWx0ZXJzWzBdKTtcbiAgICAgICAgICAgICAgc2V0QWN0aXZlRmlsdGVyQ29weShkYXRhLmZpbHRlcnNbMF0pO1xuICAgICAgICAgICAgICBzZXRGaWx0ZXJzKGRhdGEuZmlsdGVycyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZ2V0RXZlbnRJZEZyb21VUkwgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHF1ZXJ5LmdldCgnZXZlbnRJZCcpO1xuICB9O1xuXG4gIGNvbnN0IGdldFdhSWRGcm9tVVJMID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3dhdGVyX2F1dGhvcml0eV9pZCcpO1xuICB9O1xuXG4gIGNvbnN0IGdldEtRTFZhbHVlc0Zyb21VUkwgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHF1ZXJ5LmdldCgndmFsdWVzRnJvbUtRTCcpO1xuICB9O1xuXG4gIGNvbnN0IGFjdGl2YXRlRmlsdGVyID0gKGZpbHRlcjogSUZpbHRlcikgPT4ge1xuICAgIGZldGNoRXZlbnRGaWx0ZXJzKFxuICAgICAge30sXG4gICAgICAnUFVUJyxcbiAgICAgIGAvdWlfZmlsdGVycy9hY3RpdmF0ZS8ke2ZpbHRlci5pZH0/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH0mZmlsdGVyX3R5cGU9JHtmZXRjaFR5cGV9YCxcbiAgICAgIGZpbHRlcixcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGFwcGx5RmlsdGVyID0gKGZpbHRlciA9IGFjdGl2ZUZpbHRlckNvcHkpID0+IHtcbiAgICBsZXQgdmFsdWUgPSAnc2V2ZXJpdHknO1xuXG4gICAgaWYgKG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lID09PSAnc2FtcGxpbmdzLWxpc3QnKSB7XG4gICAgICB2YWx1ZSA9ICduZXdlc3QnO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoZ2V0S1FMVmFsdWVzRnJvbVVSTCgpICE9PSBudWxsKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBnZXRLUUxWYWx1ZXNGcm9tVVJMKCkhLmluY2x1ZGVzKCdPUkRFUl9CWScpICYmXG4gICAgICAgICAgZ2V0S1FMVmFsdWVzRnJvbVVSTCgpIS5pbmNsdWRlcygnbmV3ZXN0JylcbiAgICAgICAgKSB7XG4gICAgICAgICAgdmFsdWUgPSAnbmV3ZXN0JztcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICBnZXRLUUxWYWx1ZXNGcm9tVVJMKCkhLmluY2x1ZGVzKCdPUkRFUl9CWScpICYmXG4gICAgICAgICAgZ2V0S1FMVmFsdWVzRnJvbVVSTCgpIS5pbmNsdWRlcygnb2xkZXN0JylcbiAgICAgICAgKSB7XG4gICAgICAgICAgdmFsdWUgPSAnb2xkZXN0JztcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICBnZXRLUUxWYWx1ZXNGcm9tVVJMKCkhLmluY2x1ZGVzKCdPUkRFUl9CWScpICYmXG4gICAgICAgICAgZ2V0S1FMVmFsdWVzRnJvbVVSTCgpIS5pbmNsdWRlcygnc2V2ZXJpdHknKVxuICAgICAgICApIHtcbiAgICAgICAgICB2YWx1ZSA9ICdzZXZlcml0eSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWUgPT09ICdldmVudHNfdmlldycpIHtcbiAgICAgIGhpc3RvcnkucHVzaChcbiAgICAgICAgYC8ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtcbiAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICAgIH0mbG9jYWxlPSR7XG4gICAgICAgICAgbmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZVxuICAgICAgICB9JmV2ZW50SWQ9JHtnZXRFdmVudElkRnJvbVVSTCgpfSZ2YWx1ZXNGcm9tS1FMPSR7YnVpbGRLUUxRdWVyeShcbiAgICAgICAgICBmaWx0ZXIsXG4gICAgICAgICAgdmFsdWUsXG4gICAgICAgICl9YCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lID09PSAnc2FtcGxpbmdzLWxpc3QnKSB7XG4gICAgICBoaXN0b3J5LnB1c2goXG4gICAgICAgIGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7XG4gICAgICAgICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZFxuICAgICAgICB9JmxvY2FsZT0ke1xuICAgICAgICAgIG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGVcbiAgICAgICAgfSZ2YWx1ZXNGcm9tS1FMPSR7YnVpbGRLUUxRdWVyeShmaWx0ZXIsIHZhbHVlKX1gLFxuICAgICAgKTtcblxuICAgICAgaWYgKGFwcGx5TG9naWMgIT09IHVuZGVmaW5lZCkgYXBwbHlMb2dpYyhidWlsZEtRTFF1ZXJ5KGZpbHRlciwgdmFsdWUpKTtcbiAgICB9XG4gICAgaWYgKGZldGNoVHlwZSA9PT0gJ0hpZXJhcmNoeUZpbHRlcicpIHtcbiAgICAgIGFwcGx5TG9naWMoZmlsdGVyKTtcbiAgICB9XG5cbiAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKGJ1aWxkS1FMUXVlcnkoZmlsdGVyLCB2YWx1ZSkpKTtcbiAgICBkaXNwYXRjaChzZXRBY3RpdmVGaWx0ZXJHbG9iYWxseShmaWx0ZXIpKTtcbiAgICAvLyBBbHdheXMgcmVzZXQgcGFnZSB0byAxIHdoZW4gYSBuZXcgZmlsdGVyIGlzIGFwcGxpZWRcbiAgICBkaXNwYXRjaChzZXRTYW1wbGluZ0RhdGEoeyBjdXJyZW50UGFnZTogMSwgaXNGZXRjaDogZmFsc2UgfSkpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNyZWF0aW9uQ2xpY2sgPSAoKSA9PiB7XG4gICAgY3JlYXRlRmlsdGVyKGFjdGl2ZUZpbHRlckNvcHksIG5hbWVJbnB1dC5jdXJyZW50IS52YWx1ZSk7XG4gICAgbmFtZUlucHV0LmN1cnJlbnQhLnZhbHVlID0gJyc7XG4gICAgZmlsdGVyQ29udGVudC5jdXJyZW50IS5jbGljaygpO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0V2FJZChnZXRXYUlkRnJvbVVSTCgpKTtcbiAgICBpZiAoIXJlbmRlcmVkKSB7XG4gICAgICBzZXRSZW5kZXJlZCh0cnVlKTtcbiAgICAgIGdldERhdGEoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW0gPT09ICcnICYmIGZpbHRlcnMubGVuZ3RoICE9PSAwKSB7XG4gICAgICAgIGxldCBmaWx0ZXIgPSBmaWx0ZXJzLmZpbmQoKGZpbHRlcjogSUZpbHRlcikgPT4ge1xuICAgICAgICAgIHJldHVybiBmaWx0ZXIuaXNfYWN0aXZlO1xuICAgICAgICB9KTtcbiAgICAgICAgc2V0QWN0aXZlRmlsdGVyQ29weShmaWx0ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIHNldFJlbmRlcmVkKGZhbHNlKTtcbiAgICB9O1xuICB9LCBbZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCwgV2FJZF0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgY2xhc3NOYW1lPXtgZmlsdGVyLWNvbnRhaW5lciAke1xuICAgICAgICBmaWx0ZXJQb3B1cE9wZW4gPyAnJyA6ICdmaWx0ZXItY29udGFpbmVyLS1oaWRkZW4nXG4gICAgICB9YH1cbiAgICA+XG4gICAgICB7YWN0aXZlRmlsdGVyQ29weSAhPT0gdW5kZWZpbmVkICYmIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydmaWx0ZXItY29udGFpbmVyX19jb250ZW50J30gcmVmPXtmaWx0ZXJDb250ZW50fT5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2ZpbHRlci1jb250YWluZXJfX2NvbnRlbnRfX2hlYWRlcid9PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eyd0aXRsZSd9PlxuICAgICAgICAgICAgICA8aDQ+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5maWx0ZXInKX08L2g0PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnYWN0aW9ucyd9PlxuICAgICAgICAgICAgICA8RHJvcGRvd24gY2xhc3NOYW1lPXsnYWN0aW9uJ30+XG4gICAgICAgICAgICAgICAgPERyb3Bkb3duLlRvZ2dsZSB2YXJpYW50PVwic3VjY2Vzc1wiIGlkPVwiZHJvcGRvd24tYmFzaWNcIj5cbiAgICAgICAgICAgICAgICAgIDxMaXN0SWNvblxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJwcmVzZXQtaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjE0cHhcIlxuICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE0cHhcIlxuICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzFkMWQxZFwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAge2FjdGl2ZUZpbHRlckNvcHkubmFtZX17JyAnfVxuICAgICAgICAgICAgICAgICAge2FjdGl2ZUZpbHRlckNvcHkuaWQgPT09IC0xID8gKFxuICAgICAgICAgICAgICAgICAgICA8Yj4gKHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIudW5zYXZlZCcpfSkgPC9iPlxuICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgJydcbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9Ecm9wZG93bi5Ub2dnbGU+XG5cbiAgICAgICAgICAgICAgICA8RmlsdGVyc0Ryb3BEb3duXG4gICAgICAgICAgICAgICAgICBmaWx0ZXJzPXtmaWx0ZXJzfVxuICAgICAgICAgICAgICAgICAgaGFuZGxlRmlsdGVyQ2hhbmdlPXtoYW5kbGVGaWx0ZXJDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICBhY3RpdmVGaWx0ZXJDb3B5PXthY3RpdmVGaWx0ZXJDb3B5fVxuICAgICAgICAgICAgICAgICAgYWN0aXZhdGVGaWx0ZXI9e2FjdGl2YXRlRmlsdGVyfVxuICAgICAgICAgICAgICAgICAgZGVsZXRlRmlsdGVyPXtkZWxldGVGaWx0ZXJ9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9Ecm9wZG93bj5cblxuICAgICAgICAgICAgICA8RHJvcGRvd24gY2xhc3NOYW1lPXsnYWN0aW9uJ30+XG4gICAgICAgICAgICAgICAgPERyb3Bkb3duLlRvZ2dsZSB2YXJpYW50PVwic3VjY2Vzc1wiIGlkPVwiZHJvcGRvd24tYmFzaWNcIj5cbiAgICAgICAgICAgICAgICAgIDxTYXZlSWNvblxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJzYXZlLWljb25cIlxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxM3B4XCJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxM3B4XCJcbiAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMxZDFkMWRcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxzcGFuPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuc2F2ZS5sYWJlbCcpfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duLlRvZ2dsZT5cblxuICAgICAgICAgICAgICAgIDxEcm9wZG93bi5NZW51PlxuICAgICAgICAgICAgICAgICAgPERyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2FjdGl2ZUZpbHRlckNvcHkuaWQgPT09IC0xID8gdHJ1ZSA6IGZhbHNlfVxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgc2F2ZUFjdGl2ZUZpbHRlcihhY3RpdmVGaWx0ZXJDb3B5KTtcbiAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5zYXZlLmV4aXN0aW5nJyl9XG4gICAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgICAgICAgICA8RHJvcGRvd24gY2xhc3NOYW1lPXsnYWN0aW9uIGFjdGlvbi0tc2F2ZSd9PlxuICAgICAgICAgICAgICAgICAgICA8RHJvcGRvd24uVG9nZ2xlIHZhcmlhbnQ9XCJzdWNjZXNzXCIgaWQ9XCJkcm9wZG93bi1iYXNpY1wiPlxuICAgICAgICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuc2F2ZS5uZXcnKX1cbiAgICAgICAgICAgICAgICAgICAgPC9Ecm9wZG93bi5Ub2dnbGU+XG5cbiAgICAgICAgICAgICAgICAgICAgPERyb3Bkb3duLk1lbnU+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eyduZXctZmlsdGVyLXBvcHVwJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybUNvbnRyb2xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5zYXZlLmZpZWxkX3BsYWNlaG9sZGVyJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIk5hbWUgdGhpcyBmaWx0ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWRlc2NyaWJlZGJ5PVwiYmFzaWMtYWRkb24yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtuYW1lSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9Gb2N1cz17dHJ1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUNyZWF0aW9uQ2xpY2soKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cInN1Y2Nlc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7aTE4bi50KCdkZXZpY2VfaGVhbHRoX3N0YXR1cy5vaycpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvRHJvcGRvd24uTWVudT5cbiAgICAgICAgICAgICAgICAgIDwvRHJvcGRvd24+XG4gICAgICAgICAgICAgICAgPC9Ecm9wZG93bi5NZW51PlxuICAgICAgICAgICAgICA8L0Ryb3Bkb3duPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2ZpbHRlci1jb250YWluZXJfX2NvbnRlbnRfX2JvZHknfT5cbiAgICAgICAgICAgIDxGaWx0ZXJcbiAgICAgICAgICAgICAgc2V0QWN0aXZlRmlsdGVyQ29weT17c2V0QWN0aXZlRmlsdGVyQ29weX1cbiAgICAgICAgICAgICAgYWN0aXZlRmlsdGVyQ29weT17YWN0aXZlRmlsdGVyQ29weX1cbiAgICAgICAgICAgICAgYXZhaWxhYmxlRmlsdGVySXRlbXM9e2F2YWlsYWJsZUZpbHRlckl0ZW1zfVxuICAgICAgICAgICAgICBwYXJzZVNlbGVjdGVkSXRlbXM9e3BhcnNlU2VsZWN0ZWRJdGVtc31cbiAgICAgICAgICAgICAgYXBwbHlGaWx0ZXI9e2FwcGx5RmlsdGVyfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICApO1xufTtcblxuY29uc3QgY29ubmVjdG9yID0gY29ubmVjdChtYXBTdGF0ZVRvUHJvcHMpO1xuZXhwb3J0IGRlZmF1bHQgY29ubmVjdG9yKEZpbHRlckNvbnRhaW5lcik7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxlQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxTQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxXQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxlQUFBLEdBQUFMLE9BQUE7QUFBc0UsSUFBQU0sU0FBQSxHQUFBTixPQUFBO0FBQUEsSUFBQU8sS0FBQSxHQUFBUCxPQUFBO0FBTXRFLElBQUFRLFFBQUEsR0FBQVIsT0FBQTtBQUtBLElBQUFTLEtBQUEsR0FBQU4sc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFVLElBQUEsR0FBQVYsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQVcsT0FBQSxHQUFBUixzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQVksZ0JBQUEsR0FBQVQsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFhLGVBQUEsR0FBQWIsT0FBQTtBQUFxRSxTQUFBYyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEs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
|
|
412
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RCb290c3RyYXAiLCJfRHJvcGRvd24iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JlYWN0UmVkdXgiLCJfcmVhY3RSb3V0ZXJEb20iLCJfZGlza2V0dGUiLCJfbGlzdCIsIl9hY3Rpb25zIiwiX2kxOG4iLCJfa3FsIiwiX0ZpbHRlciIsIl9GaWx0ZXJzRHJvcERvd24iLCJfYWN0aW9uc0NyZWF0b3IiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIm1hcFN0YXRlVG9Qcm9wcyIsInN0YXRlIiwiZ2xvYmFsX2RhdGEiLCJuYXZfY29udGV4dF9kYXRhIiwicG9pbnRzX2RhdGEiLCJGaWx0ZXJDb250YWluZXIiLCJwcm9wcyIsImN1c3RvbV9wb2ludHMiLCJmaWx0ZXJQb3B1cE9wZW4iLCJhcHBseUxvZ2ljIiwiX3Byb3BzJGZldGNoVHlwZSIsImZldGNoVHlwZSIsIl9wcm9wcyRyZXNldEZpbHRlciIsInJlc2V0RmlsdGVyIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIm5hbWVJbnB1dCIsInVzZVJlZiIsImZpbHRlckNvbnRlbnQiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJmaWx0ZXJzIiwic2V0RmlsdGVycyIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiYXZhaWxhYmxlRmlsdGVySXRlbXMiLCJzZXRBdmFpbGFibGVGaWx0ZXJJdGVtcyIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwicmVuZGVyZWQiLCJzZXRSZW5kZXJlZCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiV2FJZCIsInNldFdhSWQiLCJfdXNlU3RhdGU5IiwidW5kZWZpbmVkIiwiX3VzZVN0YXRlMTAiLCJhY3RpdmVGaWx0ZXIiLCJzZXRBY3RpdmVGaWx0ZXIiLCJfdXNlU3RhdGUxMSIsIl91c2VTdGF0ZTEyIiwiZGVmYXVsdEZpbHRlcnMiLCJzZXREZWZhdWx0RmlsdGVycyIsIl91c2VTdGF0ZTEzIiwiX3VzZVN0YXRlMTQiLCJhY3RpdmVGaWx0ZXJDb3B5Iiwic2V0QWN0aXZlRmlsdGVyQ29weSIsImNzcmYiLCJkb2N1bWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJnZXRBdHRyaWJ1dGUiLCJ1c2VRdWVyeSIsIlVSTFNlYXJjaFBhcmFtcyIsInVzZUxvY2F0aW9uIiwic2VhcmNoIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJxdWVyeSIsImdldEtRTEZyb21VUkwiLCJoYW5kbGVSZXNldEZpbHRlciIsInJlbW92ZUZpbHRlcnMiLCJfb2JqZWN0U3ByZWFkMiIsImZpbHRlcl9pdGVtcyIsImdldFBvaW50c1RvRmlsdGVycyIsImludGVyZXN0UG9pbnRGaWx0ZXJJdGVtIiwiZmluZCIsImYiLCJ0eXBlIiwiZmlsdGVyZWRQb2ludHNEYXRhIiwiaXRlbXMiLCJmaWx0ZXIiLCJwb2ludCIsInBhcnRfb2Zfb2JzZXJ2YXRpb24iLCJtYXAiLCJpZCIsIm5hbWUiLCJncm91cCIsIm9wdGlvbnMiLCJmb3JFYWNoIiwiZmlsdGVySXRlbSIsImZpIiwiYXZhaWxhYmxlX29wdGlvbnMiLCJ1cGRhdGVTaXRlVG9GaWx0ZXJzIiwic2l0ZUZpbHRlckl0ZW0iLCJmZXRjaEV2ZW50RmlsdGVycyIsInByZXBhcmVkUGFyYW1zIiwibWV0aG9kIiwidXJsIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZmV0Y2giLCJoZWFkZXJzIiwiQWNjZXB0IiwiYm9keSIsIkpTT04iLCJzdHJpbmdpZnkiLCJ0aGVuIiwicmVzcG9uc2UiLCJqc29uIiwiZGF0YSIsImF2YWlsYWJsZV9maWx0ZXJfaXRlbXMiLCJzYXZlZCIsImRlZXBDbG9uZSIsInBhcnNlIiwiX3VzZVBhcmFtcyIsInVzZVBhcmFtcyIsInNpdGVJRCIsImFyZWFJRCIsImdldERhdGEiLCJmaXJzdFRpbWUiLCJjb25jYXQiLCJ3YXRlckF1dGhvcml0eUlkIiwianNvblNoYWxsb3dDb3B5IiwiYXNzaWduIiwiYWN0aXZlIiwiZGlzcGxheWVkX2ZpbHRlciIsInNlbGVjdGVkUGVyaW9kIiwic2VsZWN0ZWRfb3B0aW9ucyIsImFjdGl2YXRlRmlsdGVyIiwiYXBwbHlGaWx0ZXIiLCJoYW5kbGVGaWx0ZXJDaGFuZ2UiLCJjdXJyZW50IiwiY2xpY2siLCJzYXZlQWN0aXZlRmlsdGVyIiwiY2xvbmVkRmlsdGVycyIsImZpbHRlclRvTW9kaWZ5SW5kZXgiLCJpbmRleE9mIiwiZmlsdGVyX3R5cGUiLCJ1aV9maWx0ZXIiLCJpc19hY3RpdmUiLCJNYXRoIiwic2lnbiIsImNyZWF0ZUZpbHRlciIsIm5ld0ZpbHRlciIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJkZWxldGVGaWx0ZXIiLCJnZXRFdmVudElkRnJvbVVSTCIsImdldFdhSWRGcm9tVVJMIiwiZ2V0S1FMVmFsdWVzRnJvbVVSTCIsInZhbHVlIiwibmF2Q29udGV4dCIsImluY2x1ZGVzIiwicHVzaCIsImxvY2FsZSIsImJ1aWxkS1FMUXVlcnkiLCJzZXRFdmVudEZpbHRlclBhcmFtIiwic2V0QWN0aXZlRmlsdGVyR2xvYmFsbHkiLCJzZXRTYW1wbGluZ0RhdGEiLCJjdXJyZW50UGFnZSIsImlzRmV0Y2giLCJoYW5kbGVDcmVhdGlvbkNsaWNrIiwidXNlRWZmZWN0IiwiZXZlbnRGaWx0ZXJQYXJhbSIsImNsZWFudXAiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwicmVmIiwiaTE4biIsInQiLCJUb2dnbGUiLCJ2YXJpYW50IiwiUmVhY3RDb21wb25lbnQiLCJoZWlnaHQiLCJ3aWR0aCIsImZpbGwiLCJNZW51IiwiSXRlbSIsImRpc2FibGVkIiwib25DbGljayIsIkZvcm1Db250cm9sIiwicGxhY2Vob2xkZXIiLCJhdXRvRm9jdXMiLCJCdXR0b24iLCJwYXJzZVNlbGVjdGVkSXRlbXMiLCJjb25uZWN0b3IiLCJjb25uZWN0IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0ZpbHRlci9GaWx0ZXJDb250YWluZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBCdXR0b24sIEZvcm1Db250cm9sIH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCBEcm9wZG93biBmcm9tICdyZWFjdC1ib290c3RyYXAvRHJvcGRvd24nO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMsIHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlTG9jYXRpb24sIHVzZVBhcmFtcyB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgU2F2ZUljb24gfSBmcm9tICdzcmMvYXNzZXRzL2ljb25zL2Rpc2tldHRlLnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBMaXN0SWNvbiB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvbGlzdC5zdmcnO1xuaW1wb3J0IHsgSUFwcFN0YXRlIH0gZnJvbSAnc3JjL21vZGVscy9JQXBwU3RhdGUnO1xuaW1wb3J0IHsgSUZpbHRlciB9IGZyb20gJ3NyYy9zdG9yZS9maWx0ZXJzL0lGaWx0ZXInO1xuaW1wb3J0IHsgSUZpbHRlckl0ZW0gfSBmcm9tICdzcmMvc3RvcmUvZmlsdGVycy9JRmlsdGVySXRlbSc7XG5pbXBvcnQge1xuICBzZXRBY3RpdmVGaWx0ZXJHbG9iYWxseSxcbiAgc2V0RXZlbnRGaWx0ZXJQYXJhbSxcbn0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJ3NyYy9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgYnVpbGRLUUxRdWVyeSwgcGFyc2VTZWxlY3RlZEl0ZW1zIH0gZnJvbSAnc3JjL3V0aWxpdGllcy9rcWwnO1xuaW1wb3J0ICcuL0ZpbHRlclN0eWxlLnNjc3MnO1xuaW1wb3J0IEZpbHRlciBmcm9tICcuL0ZpbHRlcic7XG5pbXBvcnQgRmlsdGVyc0Ryb3BEb3duIGZyb20gJy4vRmlsdGVyc0Ryb3BEb3duJztcbmltcG9ydCB7IHNldFNhbXBsaW5nRGF0YSB9IGZyb20gJ3NyYy9zdG9yZS9zYW1wbGluZ3MvYWN0aW9uc0NyZWF0b3InO1xuZnVuY3Rpb24gbWFwU3RhdGVUb1Byb3BzKHN0YXRlOiBJQXBwU3RhdGUpIHtcbiAgY29uc3QgeyBnbG9iYWxfZGF0YSwgbmF2X2NvbnRleHRfZGF0YSwgcG9pbnRzX2RhdGEgfSA9IHN0YXRlO1xuXG4gIHJldHVybiB7XG4gICAgZ2xvYmFsX2RhdGEsXG4gICAgbmF2X2NvbnRleHRfZGF0YSxcbiAgICBwb2ludHNfZGF0YSxcbiAgfTtcbn1cblxudHlwZSBJUHJvcHMgPSBDb25uZWN0ZWRQcm9wczx0eXBlb2YgY29ubmVjdG9yPiAmIHtcbiAgZmlsdGVyUG9wdXBPcGVuOiBib29sZWFuO1xuICBmZXRjaFR5cGU6IHN0cmluZztcbiAgY3VzdG9tX3BvaW50cz86IGFueTtcbiAgYXBwbHlMb2dpYz86ICh2YWx1ZXM6IHN0cmluZykgPT4gdm9pZDtcbiAgcmVzZXRGaWx0ZXI/OiAoKSA9PiB2b2lkO1xufTtcblxuY29uc3QgRmlsdGVyQ29udGFpbmVyOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBnbG9iYWxfZGF0YSxcbiAgICBuYXZfY29udGV4dF9kYXRhLFxuICAgIHBvaW50c19kYXRhLFxuICAgIGN1c3RvbV9wb2ludHMsXG4gICAgZmlsdGVyUG9wdXBPcGVuLFxuICAgIGFwcGx5TG9naWMsXG4gICAgZmV0Y2hUeXBlID0gJ0V2ZW50RmlsdGVycycsXG4gICAgcmVzZXRGaWx0ZXIgPSBudWxsLFxuICB9ID0gcHJvcHM7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgbmFtZUlucHV0ID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCBmaWx0ZXJDb250ZW50ID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgY29uc3QgW2ZpbHRlcnMsIHNldEZpbHRlcnNdID0gdXNlU3RhdGU8YW55PihbXSk7XG4gIGNvbnN0IFthdmFpbGFibGVGaWx0ZXJJdGVtcywgc2V0QXZhaWxhYmxlRmlsdGVySXRlbXNdID0gdXNlU3RhdGUoW10pO1xuICBjb25zdCBbcmVuZGVyZWQsIHNldFJlbmRlcmVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW1dhSWQsIHNldFdhSWRdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4oKTtcbiAgLy9lc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY29uc3QgW2FjdGl2ZUZpbHRlciwgc2V0QWN0aXZlRmlsdGVyXSA9IHVzZVN0YXRlPGFueT4odW5kZWZpbmVkKTtcbiAgY29uc3QgW2RlZmF1bHRGaWx0ZXJzLCBzZXREZWZhdWx0RmlsdGVyc10gPSB1c2VTdGF0ZTxhbnk+KFtdKTtcbiAgY29uc3QgW2FjdGl2ZUZpbHRlckNvcHksIHNldEFjdGl2ZUZpbHRlckNvcHldID0gdXNlU3RhdGU8YW55Pih1bmRlZmluZWQpO1xuICAvLyBAdHMtaWdub3JlXG4gIGNvbnN0IGNzcmYgPSBkb2N1bWVudFxuICAgIC5xdWVyeVNlbGVjdG9yKFwibWV0YVtuYW1lPSdjc3JmLXRva2VuJ11cIilcbiAgICAuZ2V0QXR0cmlidXRlKCdjb250ZW50Jyk7XG4gIGNvbnN0IHVzZVF1ZXJ5ID0gKCkgPT4ge1xuICAgIHJldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKHVzZUxvY2F0aW9uKCkuc2VhcmNoKTtcbiAgfTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeSgpO1xuICBjb25zdCBnZXRLUUxGcm9tVVJMID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3ZhbHVlc0Zyb21LUUwnKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVSZXNldEZpbHRlciA9ICgpID0+IHtcbiAgICBkZWJ1Z2dlcjtcbiAgICBjb25zdCByZW1vdmVGaWx0ZXJzID0geyAuLi5hY3RpdmVGaWx0ZXJDb3B5LCBmaWx0ZXJfaXRlbXM6IGRlZmF1bHRGaWx0ZXJzIH07XG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weShyZW1vdmVGaWx0ZXJzKTtcbiAgICByZXNldEZpbHRlciAmJiByZXNldEZpbHRlcigpO1xuICB9O1xuXG4gIGNvbnN0IGdldFBvaW50c1RvRmlsdGVycyA9IChhdmFpbGFibGVGaWx0ZXJJdGVtczogYW55LCBmaWx0ZXJzOiBhbnkpID0+IHtcbiAgICBsZXQgaW50ZXJlc3RQb2ludEZpbHRlckl0ZW0gPSBhdmFpbGFibGVGaWx0ZXJJdGVtcy5maW5kKFxuICAgICAgKGY6IElGaWx0ZXJJdGVtKSA9PiBmLnR5cGUgPT09ICdJbnRlcmVzdFBvaW50RmlsdGVySXRlbScsXG4gICAgKTtcbiAgICBsZXQgZmlsdGVyZWRQb2ludHNEYXRhID1cbiAgICAgIGN1c3RvbV9wb2ludHMgfHxcbiAgICAgIHBvaW50c19kYXRhLml0ZW1zXG4gICAgICAgIC5maWx0ZXIoKHBvaW50OiBJUG9pbnQpID0+IHBvaW50LnBhcnRfb2Zfb2JzZXJ2YXRpb24gPT09IHRydWUpXG4gICAgICAgIC5tYXAoKHBvaW50OiBJUG9pbnQpID0+IHtcbiAgICAgICAgICByZXR1cm4geyBpZDogcG9pbnQuaWQsIG5hbWU6IHBvaW50Lmdyb3VwLm5hbWUgfTtcbiAgICAgICAgfSk7XG5cbiAgICBpZiAoaW50ZXJlc3RQb2ludEZpbHRlckl0ZW0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgaW50ZXJlc3RQb2ludEZpbHRlckl0ZW0ub3B0aW9ucyA9IGZpbHRlcmVkUG9pbnRzRGF0YTtcbiAgICB9XG5cbiAgICBmaWx0ZXJzLmZvckVhY2goKGY6IElGaWx0ZXIpID0+IHtcbiAgICAgIGxldCBmaWx0ZXJJdGVtID0gZi5maWx0ZXJfaXRlbXMuZmluZChcbiAgICAgICAgKGZpOiBJRmlsdGVySXRlbSkgPT4gZmkudHlwZSA9PT0gJ0ludGVyZXN0UG9pbnRGaWx0ZXJJdGVtJyxcbiAgICAgICk7XG5cbiAgICAgIGlmIChmaWx0ZXJJdGVtICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgZmlsdGVySXRlbS5hdmFpbGFibGVfb3B0aW9ucyA9IGZpbHRlcmVkUG9pbnRzRGF0YTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAoY3VzdG9tX3BvaW50cykge1xuICAgICAgdXBkYXRlU2l0ZVRvRmlsdGVycyhhdmFpbGFibGVGaWx0ZXJJdGVtcywgZmlsdGVycyk7XG4gICAgfVxuICAgIHNldEZpbHRlcnMoZmlsdGVycyk7XG4gIH07XG5cbiAgY29uc3QgdXBkYXRlU2l0ZVRvRmlsdGVycyA9IChhdmFpbGFibGVGaWx0ZXJJdGVtczogYW55LCBmaWx0ZXJzOiBhbnkpID0+IHtcbiAgICBsZXQgc2l0ZUZpbHRlckl0ZW0gPSBhdmFpbGFibGVGaWx0ZXJJdGVtcy5maW5kKFxuICAgICAgKGY6IElGaWx0ZXJJdGVtKSA9PiBmLnR5cGUgPT09ICdTaXRlRmlsdGVySXRlbScsXG4gICAgKTtcbiAgICBsZXQgZmlsdGVyZWRQb2ludHNEYXRhID0gY3VzdG9tX3BvaW50cztcblxuICAgIGlmIChzaXRlRmlsdGVySXRlbSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBzaXRlRmlsdGVySXRlbS5vcHRpb25zID0gZmlsdGVyZWRQb2ludHNEYXRhO1xuICAgIH1cblxuICAgIGZpbHRlcnMuZm9yRWFjaCgoZjogSUZpbHRlcikgPT4ge1xuICAgICAgbGV0IGZpbHRlckl0ZW0gPSBmLmZpbHRlcl9pdGVtcy5maW5kKFxuICAgICAgICAoZmk6IElGaWx0ZXJJdGVtKSA9PiBmaS50eXBlID09PSAnU2l0ZUZpbHRlckl0ZW0nLFxuICAgICAgKTtcblxuICAgICAgaWYgKGZpbHRlckl0ZW0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBmaWx0ZXJJdGVtLmF2YWlsYWJsZV9vcHRpb25zID0gZmlsdGVyZWRQb2ludHNEYXRhO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGZldGNoRXZlbnRGaWx0ZXJzID0gKFxuICAgIHByZXBhcmVkUGFyYW1zOiBhbnksXG4gICAgbWV0aG9kOiBzdHJpbmcsXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgZmlsdGVyOiBhbnkgPSBudWxsLFxuICApID0+IHtcbiAgICBpZiAoY3NyZiAhPT0gbnVsbCkge1xuICAgICAgZmV0Y2godXJsLCB7XG4gICAgICAgIG1ldGhvZDogbWV0aG9kLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAnWC1DU1JGLVRva2VuJzogY3NyZixcbiAgICAgICAgICBBY2NlcHQ6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgfSxcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkocHJlcGFyZWRQYXJhbXMpLFxuICAgICAgfSlcbiAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAgIC50aGVuKChkYXRhKSA9PiB7XG4gICAgICAgICAgZ2V0UG9pbnRzVG9GaWx0ZXJzKGRhdGEuYXZhaWxhYmxlX2ZpbHRlcl9pdGVtcywgZGF0YS5maWx0ZXJzKTtcblxuICAgICAgICAgIGlmIChmaWx0ZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgIGxldCBzYXZlZCA9IGRhdGEuZmlsdGVycy5maW5kKFxuICAgICAgICAgICAgICAoZjogSUZpbHRlcikgPT4gZi5uYW1lID09PSBmaWx0ZXIubmFtZSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBzZXRBY3RpdmVGaWx0ZXIoc2F2ZWQpO1xuICAgICAgICAgICAgc2V0QWN0aXZlRmlsdGVyQ29weShzYXZlZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZGVlcENsb25lID0gKGRhdGE6IGFueSkgPT4ge1xuICAgIHJldHVybiBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcbiAgfTtcblxuICBjb25zdCB7IHNpdGVJRCwgYXJlYUlEIH0gPSB1c2VQYXJhbXMoKTtcblxuICBjb25zdCBnZXREYXRhID0gKGZpcnN0VGltZSA9IGZhbHNlKSA9PiB7XG4gICAgZmV0Y2goXG4gICAgICBgL3VpX2ZpbHRlcnMuanNvbj93YXRlcl9hdXRob3JpdHlfaWQ9JHtcbiAgICAgICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZFxuICAgICAgfSZmaWx0ZXJfdHlwZT0ke2ZldGNoVHlwZX0mdmFsdWVzRnJvbUtRTD0ke2dldEtRTEZyb21VUkwoKX0ke1xuICAgICAgICBzaXRlSUQgPyBgJnNpdGVfaWQ9JHtzaXRlSUR9YCA6ICcnXG4gICAgICB9JHthcmVhSUQgPyBgJmFyZWFfaWQ9JHthcmVhSUR9YCA6ICcnfWAsXG4gICAgKVxuICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAudGhlbigoanNvbikgPT4ge1xuICAgICAgICBnZXRQb2ludHNUb0ZpbHRlcnMoanNvbi5hdmFpbGFibGVfZmlsdGVyX2l0ZW1zLCBqc29uLmZpbHRlcnMpO1xuXG4gICAgICAgIGxldCBqc29uU2hhbGxvd0NvcHkgPSBPYmplY3QuYXNzaWduKHt9LCBqc29uKTtcbiAgICAgICAganNvblNoYWxsb3dDb3B5LmZpbHRlcnMgPSBkZWVwQ2xvbmUoanNvblNoYWxsb3dDb3B5LmZpbHRlcnMpO1xuICAgICAgICBsZXQgYWN0aXZlID0ganNvblNoYWxsb3dDb3B5LmRpc3BsYXllZF9maWx0ZXI7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIGdsb2JhbF9kYXRhLnNlbGVjdGVkUGVyaW9kICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICBnbG9iYWxfZGF0YS5zZWxlY3RlZFBlcmlvZCAhPT0gbnVsbFxuICAgICAgICApIHtcbiAgICAgICAgICBhY3RpdmUuZmlsdGVyX2l0ZW1zWzFdLnNlbGVjdGVkX29wdGlvbnMgPSBbXG4gICAgICAgICAgICBnbG9iYWxfZGF0YS5zZWxlY3RlZFBlcmlvZCxcbiAgICAgICAgICBdO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGFjdGl2ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgYWN0aXZhdGVGaWx0ZXIoanNvblNoYWxsb3dDb3B5LmZpbHRlcnNbMF0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHNldEF2YWlsYWJsZUZpbHRlckl0ZW1zKGpzb25TaGFsbG93Q29weS5hdmFpbGFibGVfZmlsdGVyX2l0ZW1zKTtcbiAgICAgICAgICBzZXRBY3RpdmVGaWx0ZXIoYWN0aXZlKTtcbiAgICAgICAgICBzZXRBY3RpdmVGaWx0ZXJDb3B5KGFjdGl2ZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGZpcnN0VGltZSkge1xuICAgICAgICAgIHNldERlZmF1bHRGaWx0ZXJzKGRlZXBDbG9uZShhY3RpdmUuZmlsdGVyX2l0ZW1zKSk7XG4gICAgICAgIH1cblxuICAgICAgICBhcHBseUZpbHRlcihhY3RpdmUpO1xuICAgICAgfSk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRmlsdGVyQ2hhbmdlID0gKGZpbHRlcjogSUZpbHRlcikgPT4ge1xuICAgIHNldEFjdGl2ZUZpbHRlcihkZWVwQ2xvbmUoZmlsdGVyKSk7XG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weShkZWVwQ2xvbmUoZmlsdGVyKSk7XG4gICAgZmlsdGVyQ29udGVudC5jdXJyZW50IS5jbGljaygpO1xuICB9O1xuXG4gIGNvbnN0IHNhdmVBY3RpdmVGaWx0ZXIgPSAoXG4gICAgZmlsdGVyOlxuICAgICAgfCBJRmlsdGVyXG4gICAgICB8IHtcbiAgICAgICAgICBpZDogbnVtYmVyO1xuICAgICAgICAgIG5hbWU6IHN0cmluZztcbiAgICAgICAgICBmaWx0ZXJfaXRlbXM6IElGaWx0ZXJJdGVtW107XG4gICAgICAgICAgaXNfYWN0aXZlOiBib29sZWFuO1xuICAgICAgICB9LFxuICApID0+IHtcbiAgICBsZXQgY2xvbmVkRmlsdGVycyA9IGRlZXBDbG9uZShmaWx0ZXJzKTtcbiAgICBsZXQgZmlsdGVyVG9Nb2RpZnlJbmRleCA9IGNsb25lZEZpbHRlcnMuaW5kZXhPZihcbiAgICAgIGNsb25lZEZpbHRlcnMuZmluZCgoZjogYW55KSA9PiBmLmlkID09PSBmaWx0ZXIuaWQpLFxuICAgICk7XG4gICAgbGV0IHByZXBhcmVkUGFyYW1zID0ge1xuICAgICAgZmlsdGVyX3R5cGU6IGZldGNoVHlwZSxcbiAgICAgIHVpX2ZpbHRlcjoge1xuICAgICAgICBuYW1lOiBmaWx0ZXIubmFtZSxcbiAgICAgICAgaXNfYWN0aXZlOiBmaWx0ZXIuaXNfYWN0aXZlLFxuICAgICAgICBmaWx0ZXJfaXRlbXM6IEpTT04uc3RyaW5naWZ5KGZpbHRlci5maWx0ZXJfaXRlbXMpLFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgY2xvbmVkRmlsdGVyc1tmaWx0ZXJUb01vZGlmeUluZGV4XSA9IGZpbHRlcjtcbiAgICBzZXRGaWx0ZXJzKGNsb25lZEZpbHRlcnMpO1xuICAgIHNldEFjdGl2ZUZpbHRlcihmaWx0ZXIpO1xuICAgIHNldEFjdGl2ZUZpbHRlckNvcHkoZmlsdGVyKTtcblxuICAgIGlmIChNYXRoLnNpZ24oZmlsdGVyLmlkKSA+IDApIHtcbiAgICAgIGZldGNoRXZlbnRGaWx0ZXJzKFxuICAgICAgICBwcmVwYXJlZFBhcmFtcyxcbiAgICAgICAgJ1BVVCcsXG4gICAgICAgIGAvdWlfZmlsdGVycy8ke2ZpbHRlci5pZH0/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH1gLFxuICAgICAgICBmaWx0ZXIsXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBmZXRjaEV2ZW50RmlsdGVycyhcbiAgICAgICAgcHJlcGFyZWRQYXJhbXMsXG4gICAgICAgICdQT1NUJyxcbiAgICAgICAgYC91aV9maWx0ZXJzP3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9YCxcbiAgICAgICAgZmlsdGVyLFxuICAgICAgKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlRmlsdGVyID0gKGZpbHRlcjogSUZpbHRlciwgbmFtZTogc3RyaW5nKSA9PiB7XG4gICAgbGV0IG5ld0ZpbHRlciA9IHtcbiAgICAgIGlkOiAtMSxcbiAgICAgIG5hbWU6IG5hbWUsXG4gICAgICBmaWx0ZXJfaXRlbXM6IGZpbHRlci5maWx0ZXJfaXRlbXMsXG4gICAgICBpc19hY3RpdmU6IGZhbHNlLFxuICAgIH07XG5cbiAgICBzZXRGaWx0ZXJzKFsuLi5maWx0ZXJzLCBuZXdGaWx0ZXJdKTtcbiAgICBzZXRBY3RpdmVGaWx0ZXJDb3B5KG5ld0ZpbHRlcik7XG4gICAgc2V0QWN0aXZlRmlsdGVyKG5ld0ZpbHRlcik7XG4gICAgc2F2ZUFjdGl2ZUZpbHRlcihuZXdGaWx0ZXIpO1xuICB9O1xuXG4gIGNvbnN0IGRlbGV0ZUZpbHRlciA9IChmaWx0ZXI6IElGaWx0ZXIpID0+IHtcbiAgICBpZiAoY3NyZiAhPT0gbnVsbCAmJiBmaWx0ZXIuaWQgIT09IC0xKSB7XG4gICAgICBmZXRjaChcbiAgICAgICAgYC91aV9maWx0ZXJzLyR7ZmlsdGVyLmlkfT93YXRlcl9hdXRob3JpdHlfaWQ9JHtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkfSZmaWx0ZXJfdHlwZT0ke2ZldGNoVHlwZX1gLFxuICAgICAgICB7XG4gICAgICAgICAgbWV0aG9kOiAnREVMRVRFJyxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnWC1DU1JGLVRva2VuJzogY3NyZixcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgKVxuICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHJlc3BvbnNlLmpzb24oKSlcbiAgICAgICAgLnRoZW4oKGRhdGEpID0+IHtcbiAgICAgICAgICBsZXQgYWN0aXZlID0gZGF0YS5maWx0ZXJzLmZpbmQoXG4gICAgICAgICAgICAoZmlsdGVyOiBJRmlsdGVyKSA9PiBmaWx0ZXIuaXNfYWN0aXZlID09PSB0cnVlLFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBpZiAoYWN0aXZlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHNldEZpbHRlcnMoZGF0YS5maWx0ZXJzKTtcbiAgICAgICAgICAgIHNldEFjdGl2ZUZpbHRlcihhY3RpdmUpO1xuICAgICAgICAgICAgc2V0QWN0aXZlRmlsdGVyQ29weShhY3RpdmUpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoZGF0YS5maWx0ZXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICBnZXREYXRhKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBkYXRhLmZpbHRlcnNbMF0uaXNfYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgc2V0QWN0aXZlRmlsdGVyKGRhdGEuZmlsdGVyc1swXSk7XG4gICAgICAgICAgICAgIHNldEFjdGl2ZUZpbHRlckNvcHkoZGF0YS5maWx0ZXJzWzBdKTtcbiAgICAgICAgICAgICAgc2V0RmlsdGVycyhkYXRhLmZpbHRlcnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGdldEV2ZW50SWRGcm9tVVJMID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ2V2ZW50SWQnKTtcbiAgfTtcblxuICBjb25zdCBnZXRXYUlkRnJvbVVSTCA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCd3YXRlcl9hdXRob3JpdHlfaWQnKTtcbiAgfTtcblxuICBjb25zdCBnZXRLUUxWYWx1ZXNGcm9tVVJMID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3ZhbHVlc0Zyb21LUUwnKTtcbiAgfTtcblxuICBjb25zdCBhY3RpdmF0ZUZpbHRlciA9IChmaWx0ZXI6IElGaWx0ZXIpID0+IHtcbiAgICBmZXRjaEV2ZW50RmlsdGVycyhcbiAgICAgIHt9LFxuICAgICAgJ1BVVCcsXG4gICAgICBgL3VpX2ZpbHRlcnMvYWN0aXZhdGUvJHtmaWx0ZXIuaWR9P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmZpbHRlcl90eXBlPSR7ZmV0Y2hUeXBlfWAsXG4gICAgICBmaWx0ZXIsXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBhcHBseUZpbHRlciA9IChmaWx0ZXIgPSBhY3RpdmVGaWx0ZXJDb3B5KSA9PiB7XG4gICAgbGV0IHZhbHVlID0gJ3NldmVyaXR5JztcblxuICAgIGlmIChuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZSA9PT0gJ3NhbXBsaW5ncy1saXN0Jykge1xuICAgICAgdmFsdWUgPSAnbmV3ZXN0JztcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGdldEtRTFZhbHVlc0Zyb21VUkwoKSAhPT0gbnVsbCkge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZ2V0S1FMVmFsdWVzRnJvbVVSTCgpIS5pbmNsdWRlcygnT1JERVJfQlknKSAmJlxuICAgICAgICAgIGdldEtRTFZhbHVlc0Zyb21VUkwoKSEuaW5jbHVkZXMoJ25ld2VzdCcpXG4gICAgICAgICkge1xuICAgICAgICAgIHZhbHVlID0gJ25ld2VzdCc7XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgZ2V0S1FMVmFsdWVzRnJvbVVSTCgpIS5pbmNsdWRlcygnT1JERVJfQlknKSAmJlxuICAgICAgICAgIGdldEtRTFZhbHVlc0Zyb21VUkwoKSEuaW5jbHVkZXMoJ29sZGVzdCcpXG4gICAgICAgICkge1xuICAgICAgICAgIHZhbHVlID0gJ29sZGVzdCc7XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgZ2V0S1FMVmFsdWVzRnJvbVVSTCgpIS5pbmNsdWRlcygnT1JERVJfQlknKSAmJlxuICAgICAgICAgIGdldEtRTFZhbHVlc0Zyb21VUkwoKSEuaW5jbHVkZXMoJ3NldmVyaXR5JylcbiAgICAgICAgKSB7XG4gICAgICAgICAgdmFsdWUgPSAnc2V2ZXJpdHknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lID09PSAnZXZlbnRzX3ZpZXcnKSB7XG4gICAgICBoaXN0b3J5LnB1c2goXG4gICAgICAgIGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7XG4gICAgICAgICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZFxuICAgICAgICB9JmxvY2FsZT0ke1xuICAgICAgICAgIG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGVcbiAgICAgICAgfSZldmVudElkPSR7Z2V0RXZlbnRJZEZyb21VUkwoKX0mdmFsdWVzRnJvbUtRTD0ke2J1aWxkS1FMUXVlcnkoXG4gICAgICAgICAgZmlsdGVyLFxuICAgICAgICAgIHZhbHVlLFxuICAgICAgICApfWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZSA9PT0gJ3NhbXBsaW5ncy1saXN0Jykge1xuICAgICAgaGlzdG9yeS5wdXNoKFxuICAgICAgICBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke1xuICAgICAgICAgIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRcbiAgICAgICAgfSZsb2NhbGU9JHtcbiAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlXG4gICAgICAgIH0mdmFsdWVzRnJvbUtRTD0ke2J1aWxkS1FMUXVlcnkoZmlsdGVyLCB2YWx1ZSl9YCxcbiAgICAgICk7XG5cbiAgICAgIGlmIChhcHBseUxvZ2ljICE9PSB1bmRlZmluZWQpIGFwcGx5TG9naWMoYnVpbGRLUUxRdWVyeShmaWx0ZXIsIHZhbHVlKSk7XG4gICAgfVxuICAgIGlmIChmZXRjaFR5cGUgPT09ICdIaWVyYXJjaHlGaWx0ZXInKSB7XG4gICAgICBhcHBseUxvZ2ljKGZpbHRlcik7XG4gICAgfVxuXG4gICAgZGlzcGF0Y2goc2V0RXZlbnRGaWx0ZXJQYXJhbShidWlsZEtRTFF1ZXJ5KGZpbHRlciwgdmFsdWUpKSk7XG4gICAgZGlzcGF0Y2goc2V0QWN0aXZlRmlsdGVyR2xvYmFsbHkoZmlsdGVyKSk7XG4gICAgLy8gQWx3YXlzIHJlc2V0IHBhZ2UgdG8gMSB3aGVuIGEgbmV3IGZpbHRlciBpcyBhcHBsaWVkXG4gICAgZGlzcGF0Y2goc2V0U2FtcGxpbmdEYXRhKHsgY3VycmVudFBhZ2U6IDEsIGlzRmV0Y2g6IGZhbHNlIH0pKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVDcmVhdGlvbkNsaWNrID0gKCkgPT4ge1xuICAgIGNyZWF0ZUZpbHRlcihhY3RpdmVGaWx0ZXJDb3B5LCBuYW1lSW5wdXQuY3VycmVudCEudmFsdWUpO1xuICAgIG5hbWVJbnB1dC5jdXJyZW50IS52YWx1ZSA9ICcnO1xuICAgIGZpbHRlckNvbnRlbnQuY3VycmVudCEuY2xpY2soKTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldFdhSWQoZ2V0V2FJZEZyb21VUkwoKSk7XG4gICAgaWYgKCFyZW5kZXJlZCkge1xuICAgICAgc2V0UmVuZGVyZWQodHJ1ZSk7XG4gICAgICBnZXREYXRhKCFyZW5kZXJlZCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtID09PSAnJyAmJiBmaWx0ZXJzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgICBsZXQgZmlsdGVyID0gZmlsdGVycy5maW5kKChmaWx0ZXI6IElGaWx0ZXIpID0+IHtcbiAgICAgICAgICByZXR1cm4gZmlsdGVyLmlzX2FjdGl2ZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHNldEFjdGl2ZUZpbHRlckNvcHkoZmlsdGVyKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICBzZXRSZW5kZXJlZChmYWxzZSk7XG4gICAgfTtcbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIFdhSWRdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNsYXNzTmFtZT17YGZpbHRlci1jb250YWluZXIgJHtcbiAgICAgICAgZmlsdGVyUG9wdXBPcGVuID8gJycgOiAnZmlsdGVyLWNvbnRhaW5lci0taGlkZGVuJ1xuICAgICAgfWB9XG4gICAgPlxuICAgICAge2FjdGl2ZUZpbHRlckNvcHkgIT09IHVuZGVmaW5lZCAmJiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZmlsdGVyLWNvbnRhaW5lcl9fY29udGVudCd9IHJlZj17ZmlsdGVyQ29udGVudH0+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydmaWx0ZXItY29udGFpbmVyX19jb250ZW50X19oZWFkZXInfT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsndGl0bGUnfT5cbiAgICAgICAgICAgICAgPGg0PntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuZmlsdGVyJyl9PC9oND5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2FjdGlvbnMnfT5cbiAgICAgICAgICAgICAgPERyb3Bkb3duIGNsYXNzTmFtZT17J2FjdGlvbid9PlxuICAgICAgICAgICAgICAgIDxEcm9wZG93bi5Ub2dnbGUgdmFyaWFudD1cInN1Y2Nlc3NcIiBpZD1cImRyb3Bkb3duLWJhc2ljXCI+XG4gICAgICAgICAgICAgICAgICA8TGlzdEljb25cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwicHJlc2V0LWljb25cIlxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxNHB4XCJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNHB4XCJcbiAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMxZDFkMWRcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIHthY3RpdmVGaWx0ZXJDb3B5Lm5hbWV9eycgJ31cbiAgICAgICAgICAgICAgICAgIHthY3RpdmVGaWx0ZXJDb3B5LmlkID09PSAtMSA/IChcbiAgICAgICAgICAgICAgICAgICAgPGI+ICh7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLnVuc2F2ZWQnKX0pIDwvYj5cbiAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICcnXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDwvRHJvcGRvd24uVG9nZ2xlPlxuXG4gICAgICAgICAgICAgICAgPEZpbHRlcnNEcm9wRG93blxuICAgICAgICAgICAgICAgICAgZmlsdGVycz17ZmlsdGVyc31cbiAgICAgICAgICAgICAgICAgIGhhbmRsZUZpbHRlckNoYW5nZT17aGFuZGxlRmlsdGVyQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgYWN0aXZlRmlsdGVyQ29weT17YWN0aXZlRmlsdGVyQ29weX1cbiAgICAgICAgICAgICAgICAgIGFjdGl2YXRlRmlsdGVyPXthY3RpdmF0ZUZpbHRlcn1cbiAgICAgICAgICAgICAgICAgIGRlbGV0ZUZpbHRlcj17ZGVsZXRlRmlsdGVyfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvRHJvcGRvd24+XG5cbiAgICAgICAgICAgICAgPERyb3Bkb3duIGNsYXNzTmFtZT17J2FjdGlvbid9PlxuICAgICAgICAgICAgICAgIDxEcm9wZG93bi5Ub2dnbGUgdmFyaWFudD1cInN1Y2Nlc3NcIiBpZD1cImRyb3Bkb3duLWJhc2ljXCI+XG4gICAgICAgICAgICAgICAgICA8U2F2ZUljb25cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwic2F2ZS1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMTNweFwiXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTNweFwiXG4gICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMWQxZDFkXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLnNhdmUubGFiZWwnKX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9Ecm9wZG93bi5Ub2dnbGU+XG5cbiAgICAgICAgICAgICAgICA8RHJvcGRvd24uTWVudT5cbiAgICAgICAgICAgICAgICAgIDxEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXthY3RpdmVGaWx0ZXJDb3B5LmlkID09PSAtMSA/IHRydWUgOiBmYWxzZX1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIHNhdmVBY3RpdmVGaWx0ZXIoYWN0aXZlRmlsdGVyQ29weSk7XG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuc2F2ZS5leGlzdGluZycpfVxuICAgICAgICAgICAgICAgICAgPC9Ecm9wZG93bi5JdGVtPlxuICAgICAgICAgICAgICAgICAgPERyb3Bkb3duIGNsYXNzTmFtZT17J2FjdGlvbiBhY3Rpb24tLXNhdmUnfT5cbiAgICAgICAgICAgICAgICAgICAgPERyb3Bkb3duLlRvZ2dsZSB2YXJpYW50PVwic3VjY2Vzc1wiIGlkPVwiZHJvcGRvd24tYmFzaWNcIj5cbiAgICAgICAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLnNhdmUubmV3Jyl9XG4gICAgICAgICAgICAgICAgICAgIDwvRHJvcGRvd24uVG9nZ2xlPlxuXG4gICAgICAgICAgICAgICAgICAgIDxEcm9wZG93bi5NZW51PlxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnbmV3LWZpbHRlci1wb3B1cCd9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1Db250cm9sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuc2F2ZS5maWVsZF9wbGFjZWhvbGRlcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJOYW1lIHRoaXMgZmlsdGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT1cImJhc2ljLWFkZG9uMlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17bmFtZUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvRm9jdXM9e3RydWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVDcmVhdGlvbkNsaWNrKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJzdWNjZXNzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2kxOG4udCgnZGV2aWNlX2hlYWx0aF9zdGF0dXMub2snKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duLk1lbnU+XG4gICAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duPlxuICAgICAgICAgICAgICAgIDwvRHJvcGRvd24uTWVudT5cbiAgICAgICAgICAgICAgPC9Ecm9wZG93bj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydmaWx0ZXItY29udGFpbmVyX19jb250ZW50X19ib2R5J30+XG4gICAgICAgICAgICA8RmlsdGVyXG4gICAgICAgICAgICAgIHNldEFjdGl2ZUZpbHRlckNvcHk9e3NldEFjdGl2ZUZpbHRlckNvcHl9XG4gICAgICAgICAgICAgIGFjdGl2ZUZpbHRlckNvcHk9e2FjdGl2ZUZpbHRlckNvcHl9XG4gICAgICAgICAgICAgIGF2YWlsYWJsZUZpbHRlckl0ZW1zPXthdmFpbGFibGVGaWx0ZXJJdGVtc31cbiAgICAgICAgICAgICAgcGFyc2VTZWxlY3RlZEl0ZW1zPXtwYXJzZVNlbGVjdGVkSXRlbXN9XG4gICAgICAgICAgICAgIGFwcGx5RmlsdGVyPXthcHBseUZpbHRlcn1cbiAgICAgICAgICAgICAgcmVzZXRGaWx0ZXI9e3Jlc2V0RmlsdGVyID8gaGFuZGxlUmVzZXRGaWx0ZXIgOiBudWxsfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICApO1xufTtcblxuY29uc3QgY29ubmVjdG9yID0gY29ubmVjdChtYXBTdGF0ZVRvUHJvcHMpO1xuZXhwb3J0IGRlZmF1bHQgY29ubmVjdG9yKEZpbHRlckNvbnRhaW5lcik7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsZUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsU0FBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssZUFBQSxHQUFBTCxPQUFBO0FBQXNFLElBQUFNLFNBQUEsR0FBQU4sT0FBQTtBQUFBLElBQUFPLEtBQUEsR0FBQVAsT0FBQTtBQU10RSxJQUFBUSxRQUFBLEdBQUFSLE9BQUE7QUFLQSxJQUFBUyxLQUFBLEdBQUFOLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBVSxJQUFBLEdBQUFWLE9BQUE7QUFDQUEsT0FBQTtBQUNBLElBQUFXLE9BQUEsR0FBQVIsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFZLGdCQUFBLEdBQUFULHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBYSxlQUFBLEdBQUFiLE9BQUE7QUFBcUUsU0FBQWMseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFoQix3QkFBQW9CLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJB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
|
|
@@ -64,6 +64,21 @@
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
+
.reset-button-container {
|
|
68
|
+
cursor: pointer;
|
|
69
|
+
|
|
70
|
+
.reset-button {
|
|
71
|
+
background-color: white;
|
|
72
|
+
border: 1px solid #f6004f;
|
|
73
|
+
padding: 6px 29px;
|
|
74
|
+
font-size: 14px;
|
|
75
|
+
|
|
76
|
+
border-radius: 12px;
|
|
77
|
+
color: #f6004f;
|
|
78
|
+
text-decoration: none;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
67
82
|
#dropdown-basic {
|
|
68
83
|
background: white;
|
|
69
84
|
color: black;
|
|
@@ -14,6 +14,7 @@ var _ScoreNode = _interopRequireDefault(require("./ScoreNode"));
|
|
|
14
14
|
var _PollutionContributorNode = _interopRequireDefault(require("./PollutionContributorNode"));
|
|
15
15
|
var _utils = require("./utils");
|
|
16
16
|
var _reactRedux = require("react-redux");
|
|
17
|
+
var _reactRouterDom = require("react-router-dom");
|
|
17
18
|
var _excluded = ["data", "orientation", "initialDepth", "treeKey", "selectedFilters"];
|
|
18
19
|
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); }
|
|
19
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -117,16 +118,22 @@ function AutoFitTree(_ref) {
|
|
|
117
118
|
var clone = JSON.parse(JSON.stringify(data));
|
|
118
119
|
return setCollapsedByDepth(clone, initialDepth);
|
|
119
120
|
}, [data, initialDepth]);
|
|
121
|
+
var _useParams = (0, _reactRouterDom.useParams)(),
|
|
122
|
+
siteID = _useParams.siteID,
|
|
123
|
+
areaID = _useParams.areaID;
|
|
120
124
|
var renderCustomNodeElement = function renderCustomNodeElement(rd3tProps) {
|
|
121
|
-
var _selectedFilters$Samp, _selectedFilters$Insi;
|
|
125
|
+
var _selectedFilters$Samp, _selectedFilters$Insi, _rd3tProps$nodeDatum$, _rd3tProps$nodeDatum$2, _rd3tProps$nodeDatum$3, _rd3tProps$nodeDatum$4;
|
|
122
126
|
var isRoot = rd3tProps.nodeDatum.__rd3t.depth === 0;
|
|
123
127
|
var showSamplers = (selectedFilters === null || selectedFilters === void 0 ? void 0 : (_selectedFilters$Samp = selectedFilters.SamplerFilterItem) === null || _selectedFilters$Samp === void 0 ? void 0 : _selectedFilters$Samp.toString()) === 'with' || false;
|
|
124
128
|
var insightData = (selectedFilters === null || selectedFilters === void 0 ? void 0 : (_selectedFilters$Insi = selectedFilters.InsightDataFilterItem) === null || _selectedFilters$Insi === void 0 ? void 0 : _selectedFilters$Insi.toString()) || 'score';
|
|
129
|
+
var isHighlight = siteID && siteID === ((_rd3tProps$nodeDatum$ = rd3tProps.nodeDatum.attributes) === null || _rd3tProps$nodeDatum$ === void 0 ? void 0 : (_rd3tProps$nodeDatum$2 = _rd3tProps$nodeDatum$.point_id) === null || _rd3tProps$nodeDatum$2 === void 0 ? void 0 : _rd3tProps$nodeDatum$2.toString()) || areaID && areaID === ((_rd3tProps$nodeDatum$3 = rd3tProps.nodeDatum.attributes) === null || _rd3tProps$nodeDatum$3 === void 0 ? void 0 : (_rd3tProps$nodeDatum$4 = _rd3tProps$nodeDatum$3.area_id) === null || _rd3tProps$nodeDatum$4 === void 0 ? void 0 : _rd3tProps$nodeDatum$4.toString());
|
|
125
130
|
return !isRoot && (0, _utils.shouldFilterOut)(rd3tProps, selectedFilters) ? /*#__PURE__*/_react.default.createElement("div", null) : insightData === 'score' ? /*#__PURE__*/_react.default.createElement(_ScoreNode.default, Object.assign({}, rd3tProps, {
|
|
131
|
+
isHighlight: isHighlight,
|
|
126
132
|
onNodeClick: rest.onNodeClick,
|
|
127
133
|
earlyAdopter: early_adopter,
|
|
128
134
|
showSamplers: showSamplers
|
|
129
135
|
})) : /*#__PURE__*/_react.default.createElement(_PollutionContributorNode.default, Object.assign({}, rd3tProps, {
|
|
136
|
+
isHighlight: isHighlight,
|
|
130
137
|
onNodeClick: rest.onNodeClick,
|
|
131
138
|
earlyAdopter: early_adopter,
|
|
132
139
|
showSamplers: showSamplers
|
|
@@ -158,4 +165,4 @@ function AutoFitTree(_ref) {
|
|
|
158
165
|
initialDepth: initialDepth
|
|
159
166
|
}, rest)));
|
|
160
167
|
}
|
|
161
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3REM1RyZWUiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1Njb3JlTm9kZSIsIl9Qb2xsdXRpb25Db250cmlidXRvck5vZGUiLCJfdXRpbHMiLCJfcmVhY3RSZWR1eCIsIl9leGNsdWRlZCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiY291bnREZXB0aEFuZEJyZWFkdGgiLCJyb290IiwibWF4RGVwdGgiLCJicmVhZHRoQnlEZXB0aCIsImRmcyIsIm4iLCJfbiRjaGlsZHJlbiIsImQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJNYXRoIiwibWF4IiwiY2hpbGRyZW4iLCJmb3JFYWNoIiwiYyIsIm1heEJyZWFkdGgiLCJhcHBseSIsIkF1dG9GaXRUcmVlIiwiX3JlZiIsImRhdGEiLCJfcmVmJG9yaWVudGF0aW9uIiwib3JpZW50YXRpb24iLCJpbml0aWFsRGVwdGgiLCJ0cmVlS2V5IiwiX3JlZiRzZWxlY3RlZEZpbHRlcnMiLCJzZWxlY3RlZEZpbHRlcnMiLCJyZXN0IiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsIlBBRERJTkciLCJ3cmFwcGVyUmVmIiwidXNlUmVmIiwibm9kZVNpemUiLCJ4IiwieSIsInNlcGFyYXRpb24iLCJzaWJsaW5ncyIsIm5vblNpYmxpbmdzIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJ3aWR0aCIsImhlaWdodCIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJkaW1zIiwic2V0RGltcyIsImVhcmx5X2Fkb3B0ZXIiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwicGVybWlzc2lvbnMiLCJ1c2VFZmZlY3QiLCJjdXJyZW50Iiwicm8iLCJSZXNpemVPYnNlcnZlciIsInIiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJvYnNlcnZlIiwiZGlzY29ubmVjdCIsIl91c2VNZW1vIiwidXNlTWVtbyIsIl9jb3VudERlcHRoQW5kQnJlYWR0aCIsInJlcVciLCJyZXFIIiwiYXZhaWxXIiwiYXZhaWxIIiwiZml0Wm9vbSIsIm1pbiIsInoiLCJpc0Zpbml0ZSIsInpvb20iLCJ0cmFuc2xhdGUiLCJzZXRDb2xsYXBzZWRCeURlcHRoIiwibm9kZSIsIl9ub2RlJGNoaWxkcmVuIiwiY29sbGFwc2VkIiwidmlld0RhdGEiLCJjbG9uZSIsIkpTT04iLCJwYXJzZSIsInN0cmluZ2lmeSIsInJlbmRlckN1c3RvbU5vZGVFbGVtZW50IiwicmQzdFByb3BzIiwiX3NlbGVjdGVkRmlsdGVycyRTYW1wIiwiX3NlbGVjdGVkRmlsdGVycyRJbnNpIiwiaXNSb290Iiwibm9kZURhdHVtIiwiX19yZDN0IiwiZGVwdGgiLCJzaG93U2FtcGxlcnMiLCJTYW1wbGVyRmlsdGVySXRlbSIsInRvU3RyaW5nIiwiaW5zaWdodERhdGEiLCJJbnNpZ2h0RGF0YUZpbHRlckl0ZW0iLCJzaG91bGRGaWx0ZXJPdXQiLCJjcmVhdGVFbGVtZW50IiwiYXNzaWduIiwib25Ob2RlQ2xpY2siLCJlYXJseUFkb3B0ZXIiLCJyZWYiLCJzdHlsZSIsIm92ZXJmbG93IiwicGF0aEZ1bmMiLCJ6b29tYWJsZSIsInNjYWxlRXh0ZW50IiwiY29sbGFwc2libGUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdWkta2l0L0hpZXJhcmNoeUdyYXBoL0F1dG9GaXRUcmVlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlUmVmLCB1c2VTdGF0ZSwgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFRyZWUsIHsgUmF3Tm9kZURhdHVtIH0gZnJvbSAncmVhY3QtZDMtdHJlZSc7XG5pbXBvcnQgU2NvcmVOb2RlIGZyb20gJy4vU2NvcmVOb2RlJztcbmltcG9ydCBQb2xsdXRpb25Db250cmlidXRvck5vZGUgZnJvbSAnLi9Qb2xsdXRpb25Db250cmlidXRvck5vZGUnO1xuaW1wb3J0IHsgSW5zaWdodERhdGEsIHNob3VsZEZpbHRlck91dCB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5cbnR5cGUgU2VwID0geyBzaWJsaW5nczogbnVtYmVyOyBub25TaWJsaW5nczogbnVtYmVyIH07XG5cbmZ1bmN0aW9uIGNvdW50RGVwdGhBbmRCcmVhZHRoKHJvb3Q6IFJhd05vZGVEYXR1bSkge1xuICBsZXQgbWF4RGVwdGggPSAwO1xuICBjb25zdCBicmVhZHRoQnlEZXB0aDogbnVtYmVyW10gPSBbXTtcbiAgY29uc3QgZGZzID0gKG46IFJhd05vZGVEYXR1bSwgZCA9IDApID0+IHtcbiAgICBtYXhEZXB0aCA9IE1hdGgubWF4KG1heERlcHRoLCBkKTtcbiAgICBicmVhZHRoQnlEZXB0aFtkXSA9IChicmVhZHRoQnlEZXB0aFtkXSB8fCAwKSArIDE7XG4gICAgbi5jaGlsZHJlbj8uZm9yRWFjaCgoYykgPT4gZGZzKGMsIGQgKyAxKSk7XG4gIH07XG4gIGRmcyhyb290KTtcbiAgY29uc3QgbWF4QnJlYWR0aCA9IE1hdGgubWF4KC4uLmJyZWFkdGhCeURlcHRoKTtcbiAgcmV0dXJuIHsgbWF4RGVwdGgsIG1heEJyZWFkdGggfTtcbn1cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEF1dG9GaXRUcmVlKHtcbiAgZGF0YSxcbiAgb3JpZW50YXRpb24gPSAndmVydGljYWwnLFxuICBpbml0aWFsRGVwdGgsXG4gIHRyZWVLZXksXG4gIHNlbGVjdGVkRmlsdGVycyA9IHt9LFxuICAuLi5yZXN0XG59OiB7XG4gIGRhdGE6IGFueTtcbiAgb3JpZW50YXRpb24/OiAndmVydGljYWwnIHwgJ2hvcml6b250YWwnO1xuICBpbml0aWFsRGVwdGg6IG51bWJlcjtcbiAgb25Ob2RlQ2xpY2s/OiAobm9kZURhdGE6IGFueSkgPT4gdm9pZDtcbiAgdHJlZUtleTogbnVtYmVyO1xuICBzZWxlY3RlZEZpbHRlcnM/OiBhbnk7XG59KSB7XG4gIGNvbnN0IFBBRERJTkcgPSA0MjsgLy8gc2NyZWVuIHBhZGRpbmcgaW4gcHhcbiAgY29uc3Qgd3JhcHBlclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IG5vZGVTaXplID0geyB4OiAyNzAsIHk6IDI3MCB9OyAvLyBob3cgbXVjaCBzcGFjZSBlYWNoIG5vZGUgb2NjdXBpZXNcbiAgY29uc3Qgc2VwYXJhdGlvbjogU2VwID0geyBzaWJsaW5nczogMC44LCBub25TaWJsaW5nczogMC45IH07IC8vIG5vZGUgc3BhY2luZ1xuICBjb25zdCBbZGltcywgc2V0RGltc10gPSB1c2VTdGF0ZSh7IHdpZHRoOiA1MDAsIGhlaWdodDogMTAwIH0pO1xuICBjb25zdCBlYXJseV9hZG9wdGVyID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBhbnkpID0+IHN0YXRlLnBlcm1pc3Npb25zLmVhcmx5X2Fkb3B0ZXIsXG4gICk7XG5cbiAgLy8ga2VlcCB3cmFwcGVyIHNpemVkIHRvIHRoZSB2aWV3cG9ydFxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghd3JhcHBlclJlZi5jdXJyZW50KSByZXR1cm47XG4gICAgY29uc3Qgcm8gPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKCkgPT4ge1xuICAgICAgY29uc3QgciA9IHdyYXBwZXJSZWYuY3VycmVudCEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICBzZXREaW1zKHsgd2lkdGg6IHIud2lkdGgsIGhlaWdodDogci5oZWlnaHQgfSk7XG4gICAgfSk7XG4gICAgcm8ub2JzZXJ2ZSh3cmFwcGVyUmVmLmN1cnJlbnQpO1xuICAgIHJldHVybiAoKSA9PiByby5kaXNjb25uZWN0KCk7XG4gIH0sIFtdKTtcblxuICBjb25zdCB7IHRyYW5zbGF0ZSwgem9vbSB9ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgeyBtYXhEZXB0aCwgbWF4QnJlYWR0aCB9ID0gY291bnREZXB0aEFuZEJyZWFkdGgoZGF0YSk7XG5cbiAgICAvLyBhcHByb3hpbWF0ZSByZXF1aXJlZCBwaXhlbCBzaXplIG9mIHRoZSBsYWlkLW91dCB0cmVlXG4gICAgY29uc3QgcmVxVyA9IG1heEJyZWFkdGggKiBub2RlU2l6ZS54ICogc2VwYXJhdGlvbi5zaWJsaW5ncztcbiAgICBjb25zdCByZXFIID0gKG1heERlcHRoICsgMSkgKiBub2RlU2l6ZS55O1xuXG4gICAgY29uc3QgYXZhaWxXID0gTWF0aC5tYXgoMSwgZGltcy53aWR0aCAtIFBBRERJTkcgKiAyKTtcbiAgICBjb25zdCBhdmFpbEggPSBNYXRoLm1heCgxLCBkaW1zLmhlaWdodCAtIFBBRERJTkcgKiAyKTtcblxuICAgIGNvbnN0IGZpdFpvb20gPSAwLjcgKiBNYXRoLm1pbihhdmFpbFcgLyByZXFXLCBhdmFpbEggLyByZXFIKTtcbiAgICBjb25zdCB6ID0gaXNGaW5pdGUoZml0Wm9vbSkgJiYgZml0Wm9vbSA+IDAgPyBmaXRab29tIDogMS4yO1xuXG4gICAgcmV0dXJuIHsgem9vbTogeiwgdHJhbnNsYXRlOiB7IHg6IGRpbXMud2lkdGggLyAyLCB5OiBQQURESU5HIH0gfTtcbiAgfSwgW1xuICAgIGRhdGEsXG4gICAgbm9kZVNpemUueCxcbiAgICBub2RlU2l6ZS55LFxuICAgIHNlcGFyYXRpb24uc2libGluZ3MsXG4gICAgZGltcy53aWR0aCxcbiAgICBkaW1zLmhlaWdodCxcbiAgXSk7XG5cbiAgZnVuY3Rpb24gc2V0Q29sbGFwc2VkQnlEZXB0aChub2RlOiBhbnksIG1heERlcHRoOiBudW1iZXIsIGQgPSAwKSB7XG4gICAgbm9kZS5jb2xsYXBzZWQgPSBkID49IG1heERlcHRoO1xuICAgIG5vZGUuY2hpbGRyZW4/LmZvckVhY2goKGMpID0+IHNldENvbGxhcHNlZEJ5RGVwdGgoYywgbWF4RGVwdGgsIGQgKyAxKSk7XG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICBjb25zdCB2aWV3RGF0YSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghZGF0YSkgcmV0dXJuIG51bGw7XG4gICAgY29uc3QgY2xvbmUgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcbiAgICByZXR1cm4gc2V0Q29sbGFwc2VkQnlEZXB0aChjbG9uZSwgaW5pdGlhbERlcHRoKTtcbiAgfSwgW2RhdGEsIGluaXRpYWxEZXB0aF0pO1xuXG4gIGNvbnN0IHJlbmRlckN1c3RvbU5vZGVFbGVtZW50ID0gKHJkM3RQcm9wcykgPT4ge1xuICAgIGNvbnN0IGlzUm9vdCA9IHJkM3RQcm9wcy5ub2RlRGF0dW0uX19yZDN0LmRlcHRoID09PSAwO1xuICAgIGNvbnN0IHNob3dTYW1wbGVycyA9XG4gICAgICBzZWxlY3RlZEZpbHRlcnM/LlNhbXBsZXJGaWx0ZXJJdGVtPy50b1N0cmluZygpID09PSAnd2l0aCcgfHwgZmFsc2U7XG4gICAgY29uc3QgaW5zaWdodERhdGEgPVxuICAgICAgKHNlbGVjdGVkRmlsdGVycz8uSW5zaWdodERhdGFGaWx0ZXJJdGVtPy50b1N0cmluZygpIGFzIEluc2lnaHREYXRhKSB8fFxuICAgICAgJ3Njb3JlJztcbiAgICByZXR1cm4gIWlzUm9vdCAmJiBzaG91bGRGaWx0ZXJPdXQocmQzdFByb3BzLCBzZWxlY3RlZEZpbHRlcnMpID8gKFxuICAgICAgPGRpdj48L2Rpdj5cbiAgICApIDogaW5zaWdodERhdGEgPT09ICdzY29yZScgPyAoXG4gICAgICA8U2NvcmVOb2RlXG4gICAgICAgIHsuLi5yZDN0UHJvcHN9XG4gICAgICAgIG9uTm9kZUNsaWNrPXtyZXN0Lm9uTm9kZUNsaWNrfVxuICAgICAgICBlYXJseUFkb3B0ZXI9e2Vhcmx5X2Fkb3B0ZXJ9XG4gICAgICAgIHNob3dTYW1wbGVycz17c2hvd1NhbXBsZXJzfVxuICAgICAgLz5cbiAgICApIDogKFxuICAgICAgPFBvbGx1dGlvbkNvbnRyaWJ1dG9yTm9kZVxuICAgICAgICB7Li4ucmQzdFByb3BzfVxuICAgICAgICBvbk5vZGVDbGljaz17cmVzdC5vbk5vZGVDbGlja31cbiAgICAgICAgZWFybHlBZG9wdGVyPXtlYXJseV9hZG9wdGVyfVxuICAgICAgICBzaG93U2FtcGxlcnM9e3Nob3dTYW1wbGVyc31cbiAgICAgIC8+XG4gICAgKTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHJlZj17d3JhcHBlclJlZn1cbiAgICAgIHN0eWxlPXt7IHdpZHRoOiAnMTAwdncnLCBoZWlnaHQ6ICcxMDB2aCcsIG92ZXJmbG93OiAnaGlkZGVuJyB9fVxuICAgID5cbiAgICAgIDxUcmVlXG4gICAgICAgIGtleT17dHJlZUtleX1cbiAgICAgICAgZGF0YT17dmlld0RhdGF9XG4gICAgICAgIG9yaWVudGF0aW9uPXtvcmllbnRhdGlvbn1cbiAgICAgICAgcGF0aEZ1bmM9XCJzdGVwXCJcbiAgICAgICAgbm9kZVNpemU9e25vZGVTaXplfVxuICAgICAgICBzZXBhcmF0aW9uPXtzZXBhcmF0aW9ufVxuICAgICAgICB0cmFuc2xhdGU9e3RyYW5zbGF0ZX1cbiAgICAgICAgem9vbT17em9vbX1cbiAgICAgICAgem9vbWFibGVcbiAgICAgICAgc2NhbGVFeHRlbnQ9e3sgbWluOiAwLjEsIG1heDogMiB9fVxuICAgICAgICByZW5kZXJDdXN0b21Ob2RlRWxlbWVudD17cmVuZGVyQ3VzdG9tTm9kZUVsZW1lbnR9XG4gICAgICAgIGNvbGxhcHNpYmxlXG4gICAgICAgIGluaXRpYWxEZXB0aD17aW5pdGlhbERlcHRofVxuICAgICAgICB7Li4ucmVzdH1cbiAgICAgIC8+XG4gICAgPC9kaXY+XG4gICk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxZQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxVQUFBLEdBQUFELHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBSSx5QkFBQSxHQUFBRixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUssTUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sV0FBQSxHQUFBTixPQUFBO0FBQTBDLElBQUFPLFNBQUE7QUFBQSxTQUFBQyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQVYsd0JBQUFjLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFBLENBQUFFLEdBQUEsQ0FBQU4sR0FBQSxTQUFBTyxNQUFBLFdBQUFDLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLEdBQUEsSUFBQVosR0FBQSxRQUFBWSxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFmLEdBQUEsRUFBQVksR0FBQSxTQUFBSSxJQUFBLEdBQUFSLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVgsR0FBQSxFQUFBWSxHQUFBLGNBQUFJLElBQUEsS0FBQUEsSUFBQSxDQUFBVixHQUFBLElBQUFVLElBQUEsQ0FBQUMsR0FBQSxLQUFBUixNQUFBLENBQUFDLGNBQUEsQ0FBQUgsTUFBQSxFQUFBSyxHQUFBLEVBQUFJLElBQUEsWUFBQVQsTUFBQSxDQUFBSyxHQUFBLElBQUFaLEdBQUEsQ0FBQVksR0FBQSxTQUFBTCxNQUFBLENBQUFKLE9BQUEsR0FBQUgsR0FBQSxNQUFBSSxLQUFBLElBQUFBLEtBQUEsQ0FBQWEsR0FBQSxDQUFBakIsR0FBQSxFQUFBTyxNQUFBLFlBQUFBLE1BQUE7QUFJMUMsU0FBU1csb0JBQW9CQSxDQUFDQyxJQUFrQixFQUFFO0VBQ2hELElBQUlDLFFBQVEsR0FBRyxDQUFDO0VBQ2hCLElBQU1DLGNBQXdCLEdBQUcsRUFBRTtFQUNuQyxJQUFNQyxHQUFHLEdBQUcsU0FBTkEsR0FBR0EsQ0FBSUMsQ0FBZSxFQUFZO0lBQUEsSUFBQUMsV0FBQTtJQUFBLElBQVZDLENBQUMsR0FBQUMsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsQ0FBQztJQUNqQ04sUUFBUSxHQUFHUyxJQUFJLENBQUNDLEdBQUcsQ0FBQ1YsUUFBUSxFQUFFSyxDQUFDLENBQUM7SUFDaENKLGNBQWMsQ0FBQ0ksQ0FBQyxDQUFDLEdBQUcsQ0FBQ0osY0FBYyxDQUFDSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNoRCxDQUFBRCxXQUFBLEdBQUFELENBQUMsQ0FBQ1EsUUFBUSxjQUFBUCxXQUFBLHVCQUFWQSxXQUFBLENBQVlRLE9BQU8sQ0FBQyxVQUFDQyxDQUFDO01BQUEsT0FBS1gsR0FBRyxDQUFDVyxDQUFDLEVBQUVSLENBQUMsR0FBRyxDQUFDLENBQUM7SUFBQSxFQUFDO0VBQzNDLENBQUM7RUFDREgsR0FBRyxDQUFDSCxJQUFJLENBQUM7RUFDVCxJQUFNZSxVQUFVLEdBQUdMLElBQUksQ0FBQ0MsR0FBRyxDQUFBSyxLQUFBLENBQVJOLElBQUksRUFBUVIsY0FBYyxDQUFDO0VBQzlDLE9BQU87SUFBRUQsUUFBUSxFQUFSQSxRQUFRO0lBQUVjLFVBQVUsRUFBVkE7RUFBVyxDQUFDO0FBQ2pDO0FBQ2UsU0FBU0UsV0FBV0EsQ0FBQUMsSUFBQSxFQWNoQztFQUFBLElBYkRDLElBQUksR0FBQUQsSUFBQSxDQUFKQyxJQUFJO0lBQUFDLGdCQUFBLEdBQUFGLElBQUEsQ0FDSkcsV0FBVztJQUFYQSxXQUFXLEdBQUFELGdCQUFBLGNBQUcsVUFBVSxHQUFBQSxnQkFBQTtJQUN4QkUsWUFBWSxHQUFBSixJQUFBLENBQVpJLFlBQVk7SUFDWkMsT0FBTyxHQUFBTCxJQUFBLENBQVBLLE9BQU87SUFBQUMsb0JBQUEsR0FBQU4sSUFBQSxDQUNQTyxlQUFlO0lBQWZBLGVBQWUsR0FBQUQsb0JBQUEsY0FBRyxDQUFDLENBQUMsR0FBQUEsb0JBQUE7SUFDakJFLElBQUksT0FBQUMseUJBQUEsQ0FBQTNDLE9BQUEsRUFBQWtDLElBQUEsRUFBQTNDLFNBQUE7RUFTUCxJQUFNcUQsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0VBQ3BCLElBQU1DLFVBQVUsR0FBRyxJQUFBQyxhQUFNLEVBQWlCLElBQUksQ0FBQztFQUMvQyxJQUFNQyxRQUFRLEdBQUc7SUFBRUMsQ0FBQyxFQUFFLEdBQUc7SUFBRUMsQ0FBQyxFQUFFO0VBQUksQ0FBQyxDQUFDLENBQUM7RUFDckMsSUFBTUMsVUFBZSxHQUFHO0lBQUVDLFFBQVEsRUFBRSxHQUFHO0lBQUVDLFdBQVcsRUFBRTtFQUFJLENBQUMsQ0FBQyxDQUFDO0VBQzdELElBQUFDLFNBQUEsR0FBd0IsSUFBQUMsZUFBUSxFQUFDO01BQUVDLEtBQUssRUFBRSxHQUFHO01BQUVDLE1BQU0sRUFBRTtJQUFJLENBQUMsQ0FBQztJQUFBQyxVQUFBLE9BQUFDLGVBQUEsQ0FBQTFELE9BQUEsRUFBQXFELFNBQUE7SUFBdERNLElBQUksR0FBQUYsVUFBQTtJQUFFRyxPQUFPLEdBQUFILFVBQUE7RUFDcEIsSUFBTUksYUFBYSxHQUFHLElBQUFDLHVCQUFXLEVBQy9CLFVBQUNDLEtBQVU7SUFBQSxPQUFLQSxLQUFLLENBQUNDLFdBQVcsQ0FBQ0gsYUFBYTtFQUFBLENBQ2pELENBQUM7O0VBRUQ7RUFDQSxJQUFBSSxnQkFBUyxFQUFDLFlBQU07SUFDZCxJQUFJLENBQUNwQixVQUFVLENBQUNxQixPQUFPLEVBQUU7SUFDekIsSUFBTUMsRUFBRSxHQUFHLElBQUlDLGNBQWMsQ0FBQyxZQUFNO01BQ2xDLElBQU1DLENBQUMsR0FBR3hCLFVBQVUsQ0FBQ3FCLE9BQU8sQ0FBRUkscUJBQXFCLENBQUMsQ0FBQztNQUNyRFYsT0FBTyxDQUFDO1FBQUVMLEtBQUssRUFBRWMsQ0FBQyxDQUFDZCxLQUFLO1FBQUVDLE1BQU0sRUFBRWEsQ0FBQyxDQUFDYjtNQUFPLENBQUMsQ0FBQztJQUMvQyxDQUFDLENBQUM7SUFDRlcsRUFBRSxDQUFDSSxPQUFPLENBQUMxQixVQUFVLENBQUNxQixPQUFPLENBQUM7SUFDOUIsT0FBTztNQUFBLE9BQU1DLEVBQUUsQ0FBQ0ssVUFBVSxDQUFDLENBQUM7SUFBQTtFQUM5QixDQUFDLEVBQUUsRUFBRSxDQUFDO0VBRU4sSUFBQUMsUUFBQSxHQUE0QixJQUFBQyxjQUFPLEVBQUMsWUFBTTtNQUN4QyxJQUFBQyxxQkFBQSxHQUFpQzVELG9CQUFvQixDQUFDb0IsSUFBSSxDQUFDO1FBQW5EbEIsUUFBUSxHQUFBMEQscUJBQUEsQ0FBUjFELFFBQVE7UUFBRWMsVUFBVSxHQUFBNEMscUJBQUEsQ0FBVjVDLFVBQVU7O01BRTVCO01BQ0EsSUFBTTZDLElBQUksR0FBRzdDLFVBQVUsR0FBR2dCLFFBQVEsQ0FBQ0MsQ0FBQyxHQUFHRSxVQUFVLENBQUNDLFFBQVE7TUFDMUQsSUFBTTBCLElBQUksR0FBRyxDQUFDNUQsUUFBUSxHQUFHLENBQUMsSUFBSThCLFFBQVEsQ0FBQ0UsQ0FBQztNQUV4QyxJQUFNNkIsTUFBTSxHQUFHcEQsSUFBSSxDQUFDQyxHQUFHLENBQUMsQ0FBQyxFQUFFZ0MsSUFBSSxDQUFDSixLQUFLLEdBQUdYLE9BQU8sR0FBRyxDQUFDLENBQUM7TUFDcEQsSUFBTW1DLE1BQU0sR0FBR3JELElBQUksQ0FBQ0MsR0FBRyxDQUFDLENBQUMsRUFBRWdDLElBQUksQ0FBQ0gsTUFBTSxHQUFHWixPQUFPLEdBQUcsQ0FBQyxDQUFDO01BRXJELElBQU1vQyxPQUFPLEdBQUcsR0FBRyxHQUFHdEQsSUFBSSxDQUFDdUQsR0FBRyxDQUFDSCxNQUFNLEdBQUdGLElBQUksRUFBRUcsTUFBTSxHQUFHRixJQUFJLENBQUM7TUFDNUQsSUFBTUssQ0FBQyxHQUFHQyxRQUFRLENBQUNILE9BQU8sQ0FBQyxJQUFJQSxPQUFPLEdBQUcsQ0FBQyxHQUFHQSxPQUFPLEdBQUcsR0FBRztNQUUxRCxPQUFPO1FBQUVJLElBQUksRUFBRUYsQ0FBQztRQUFFRyxTQUFTLEVBQUU7VUFBRXJDLENBQUMsRUFBRVcsSUFBSSxDQUFDSixLQUFLLEdBQUcsQ0FBQztVQUFFTixDQUFDLEVBQUVMO1FBQVE7TUFBRSxDQUFDO0lBQ2xFLENBQUMsRUFBRSxDQUNEVCxJQUFJLEVBQ0pZLFFBQVEsQ0FBQ0MsQ0FBQyxFQUNWRCxRQUFRLENBQUNFLENBQUMsRUFDVkMsVUFBVSxDQUFDQyxRQUFRLEVBQ25CUSxJQUFJLENBQUNKLEtBQUssRUFDVkksSUFBSSxDQUFDSCxNQUFNLENBQ1osQ0FBQztJQXJCTTZCLFNBQVMsR0FBQVosUUFBQSxDQUFUWSxTQUFTO0lBQUVELElBQUksR0FBQVgsUUFBQSxDQUFKVyxJQUFJO0VBdUJ2QixTQUFTRSxtQkFBbUJBLENBQUNDLElBQVMsRUFBRXRFLFFBQWdCLEVBQVM7SUFBQSxJQUFBdUUsY0FBQTtJQUFBLElBQVBsRSxDQUFDLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLENBQUM7SUFDN0RnRSxJQUFJLENBQUNFLFNBQVMsR0FBR25FLENBQUMsSUFBSUwsUUFBUTtJQUM5QixDQUFBdUUsY0FBQSxHQUFBRCxJQUFJLENBQUMzRCxRQUFRLGNBQUE0RCxjQUFBLHVCQUFiQSxjQUFBLENBQWUzRCxPQUFPLENBQUMsVUFBQ0MsQ0FBQztNQUFBLE9BQUt3RCxtQkFBbUIsQ0FBQ3hELENBQUMsRUFBRWIsUUFBUSxFQUFFSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQUEsRUFBQztJQUN0RSxPQUFPaUUsSUFBSTtFQUNiO0VBRUEsSUFBTUcsUUFBUSxHQUFHLElBQUFoQixjQUFPLEVBQUMsWUFBTTtJQUM3QixJQUFJLENBQUN2QyxJQUFJLEVBQUUsT0FBTyxJQUFJO0lBQ3RCLElBQU13RCxLQUFLLEdBQUdDLElBQUksQ0FBQ0MsS0FBSyxDQUFDRCxJQUFJLENBQUNFLFNBQVMsQ0FBQzNELElBQUksQ0FBQyxDQUFDO0lBQzlDLE9BQU9tRCxtQkFBbUIsQ0FBQ0ssS0FBSyxFQUFFckQsWUFBWSxDQUFDO0VBQ2pELENBQUMsRUFBRSxDQUFDSCxJQUFJLEVBQUVHLFlBQVksQ0FBQyxDQUFDO0VBRXhCLElBQU15RCx1QkFBdUIsR0FBRyxTQUExQkEsdUJBQXVCQSxDQUFJQyxTQUFTLEVBQUs7SUFBQSxJQUFBQyxxQkFBQSxFQUFBQyxxQkFBQTtJQUM3QyxJQUFNQyxNQUFNLEdBQUdILFNBQVMsQ0FBQ0ksU0FBUyxDQUFDQyxNQUFNLENBQUNDLEtBQUssS0FBSyxDQUFDO0lBQ3JELElBQU1DLFlBQVksR0FDaEIsQ0FBQTlELGVBQWUsYUFBZkEsZUFBZSx3QkFBQXdELHFCQUFBLEdBQWZ4RCxlQUFlLENBQUUrRCxpQkFBaUIsY0FBQVAscUJBQUEsdUJBQWxDQSxxQkFBQSxDQUFvQ1EsUUFBUSxDQUFDLENBQUMsTUFBSyxNQUFNLElBQUksS0FBSztJQUNwRSxJQUFNQyxXQUFXLEdBQ2YsQ0FBQ2pFLGVBQWUsYUFBZkEsZUFBZSx3QkFBQXlELHFCQUFBLEdBQWZ6RCxlQUFlLENBQUVrRSxxQkFBcUIsY0FBQVQscUJBQUEsdUJBQXRDQSxxQkFBQSxDQUF3Q08sUUFBUSxDQUFDLENBQUMsS0FDbkQsT0FBTztJQUNULE9BQU8sQ0FBQ04sTUFBTSxJQUFJLElBQUFTLHNCQUFlLEVBQUNaLFNBQVMsRUFBRXZELGVBQWUsQ0FBQyxnQkFDM0QzRCxNQUFBLENBQUFrQixPQUFBLENBQUE2RyxhQUFBLFlBQVUsQ0FBQyxHQUNUSCxXQUFXLEtBQUssT0FBTyxnQkFDekI1SCxNQUFBLENBQUFrQixPQUFBLENBQUE2RyxhQUFBLENBQUMxSCxVQUFBLENBQUFhLE9BQVMsRUFBQU0sTUFBQSxDQUFBd0csTUFBQSxLQUNKZCxTQUFTO01BQ2JlLFdBQVcsRUFBRXJFLElBQUksQ0FBQ3FFLFdBQVk7TUFDOUJDLFlBQVksRUFBRW5ELGFBQWM7TUFDNUIwQyxZQUFZLEVBQUVBO0lBQWEsRUFDNUIsQ0FBQyxnQkFFRnpILE1BQUEsQ0FBQWtCLE9BQUEsQ0FBQTZHLGFBQUEsQ0FBQ3pILHlCQUFBLENBQUFZLE9BQXdCLEVBQUFNLE1BQUEsQ0FBQXdHLE1BQUEsS0FDbkJkLFNBQVM7TUFDYmUsV0FBVyxFQUFFckUsSUFBSSxDQUFDcUUsV0FBWTtNQUM5QkMsWUFBWSxFQUFFbkQsYUFBYztNQUM1QjBDLFlBQVksRUFBRUE7SUFBYSxFQUM1QixDQUNGO0VBQ0gsQ0FBQztFQUVELG9CQUNFekgsTUFBQSxDQUFBa0IsT0FBQSxDQUFBNkcsYUFBQTtJQUNFSSxHQUFHLEVBQUVwRSxVQUFXO0lBQ2hCcUUsS0FBSyxFQUFFO01BQUUzRCxLQUFLLEVBQUUsT0FBTztNQUFFQyxNQUFNLEVBQUUsT0FBTztNQUFFMkQsUUFBUSxFQUFFO0lBQVM7RUFBRSxnQkFFL0RySSxNQUFBLENBQUFrQixPQUFBLENBQUE2RyxhQUFBLENBQUM1SCxZQUFBLENBQUFlLE9BQUksRUFBQU0sTUFBQSxDQUFBd0csTUFBQTtJQUNIckcsR0FBRyxFQUFFOEIsT0FBUTtJQUNiSixJQUFJLEVBQUV1RCxRQUFTO0lBQ2ZyRCxXQUFXLEVBQUVBLFdBQVk7SUFDekIrRSxRQUFRLEVBQUMsTUFBTTtJQUNmckUsUUFBUSxFQUFFQSxRQUFTO0lBQ25CRyxVQUFVLEVBQUVBLFVBQVc7SUFDdkJtQyxTQUFTLEVBQUVBLFNBQVU7SUFDckJELElBQUksRUFBRUEsSUFBSztJQUNYaUMsUUFBUTtJQUNSQyxXQUFXLEVBQUU7TUFBRXJDLEdBQUcsRUFBRSxHQUFHO01BQUV0RCxHQUFHLEVBQUU7SUFBRSxDQUFFO0lBQ2xDb0UsdUJBQXVCLEVBQUVBLHVCQUF3QjtJQUNqRHdCLFdBQVc7SUFDWGpGLFlBQVksRUFBRUE7RUFBYSxHQUN2QkksSUFBSSxDQUNULENBQ0UsQ0FBQztBQUVWIn0=
|
|
168
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3REM1RyZWUiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1Njb3JlTm9kZSIsIl9Qb2xsdXRpb25Db250cmlidXRvck5vZGUiLCJfdXRpbHMiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdFJvdXRlckRvbSIsIl9leGNsdWRlZCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiY291bnREZXB0aEFuZEJyZWFkdGgiLCJyb290IiwibWF4RGVwdGgiLCJicmVhZHRoQnlEZXB0aCIsImRmcyIsIm4iLCJfbiRjaGlsZHJlbiIsImQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJNYXRoIiwibWF4IiwiY2hpbGRyZW4iLCJmb3JFYWNoIiwiYyIsIm1heEJyZWFkdGgiLCJhcHBseSIsIkF1dG9GaXRUcmVlIiwiX3JlZiIsImRhdGEiLCJfcmVmJG9yaWVudGF0aW9uIiwib3JpZW50YXRpb24iLCJpbml0aWFsRGVwdGgiLCJ0cmVlS2V5IiwiX3JlZiRzZWxlY3RlZEZpbHRlcnMiLCJzZWxlY3RlZEZpbHRlcnMiLCJyZXN0IiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsIlBBRERJTkciLCJ3cmFwcGVyUmVmIiwidXNlUmVmIiwibm9kZVNpemUiLCJ4IiwieSIsInNlcGFyYXRpb24iLCJzaWJsaW5ncyIsIm5vblNpYmxpbmdzIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJ3aWR0aCIsImhlaWdodCIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJkaW1zIiwic2V0RGltcyIsImVhcmx5X2Fkb3B0ZXIiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwicGVybWlzc2lvbnMiLCJ1c2VFZmZlY3QiLCJjdXJyZW50Iiwicm8iLCJSZXNpemVPYnNlcnZlciIsInIiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJvYnNlcnZlIiwiZGlzY29ubmVjdCIsIl91c2VNZW1vIiwidXNlTWVtbyIsIl9jb3VudERlcHRoQW5kQnJlYWR0aCIsInJlcVciLCJyZXFIIiwiYXZhaWxXIiwiYXZhaWxIIiwiZml0Wm9vbSIsIm1pbiIsInoiLCJpc0Zpbml0ZSIsInpvb20iLCJ0cmFuc2xhdGUiLCJzZXRDb2xsYXBzZWRCeURlcHRoIiwibm9kZSIsIl9ub2RlJGNoaWxkcmVuIiwiY29sbGFwc2VkIiwidmlld0RhdGEiLCJjbG9uZSIsIkpTT04iLCJwYXJzZSIsInN0cmluZ2lmeSIsIl91c2VQYXJhbXMiLCJ1c2VQYXJhbXMiLCJzaXRlSUQiLCJhcmVhSUQiLCJyZW5kZXJDdXN0b21Ob2RlRWxlbWVudCIsInJkM3RQcm9wcyIsIl9zZWxlY3RlZEZpbHRlcnMkU2FtcCIsIl9zZWxlY3RlZEZpbHRlcnMkSW5zaSIsIl9yZDN0UHJvcHMkbm9kZURhdHVtJCIsIl9yZDN0UHJvcHMkbm9kZURhdHVtJDIiLCJfcmQzdFByb3BzJG5vZGVEYXR1bSQzIiwiX3JkM3RQcm9wcyRub2RlRGF0dW0kNCIsImlzUm9vdCIsIm5vZGVEYXR1bSIsIl9fcmQzdCIsImRlcHRoIiwic2hvd1NhbXBsZXJzIiwiU2FtcGxlckZpbHRlckl0ZW0iLCJ0b1N0cmluZyIsImluc2lnaHREYXRhIiwiSW5zaWdodERhdGFGaWx0ZXJJdGVtIiwiaXNIaWdobGlnaHQiLCJhdHRyaWJ1dGVzIiwicG9pbnRfaWQiLCJhcmVhX2lkIiwic2hvdWxkRmlsdGVyT3V0IiwiY3JlYXRlRWxlbWVudCIsImFzc2lnbiIsIm9uTm9kZUNsaWNrIiwiZWFybHlBZG9wdGVyIiwicmVmIiwic3R5bGUiLCJvdmVyZmxvdyIsInBhdGhGdW5jIiwiem9vbWFibGUiLCJzY2FsZUV4dGVudCIsImNvbGxhcHNpYmxlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3VpLWtpdC9IaWVyYXJjaHlHcmFwaC9BdXRvRml0VHJlZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZVJlZiwgdXNlU3RhdGUsIHVzZUVmZmVjdCwgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBUcmVlLCB7IFJhd05vZGVEYXR1bSB9IGZyb20gJ3JlYWN0LWQzLXRyZWUnO1xuaW1wb3J0IFNjb3JlTm9kZSBmcm9tICcuL1Njb3JlTm9kZSc7XG5pbXBvcnQgUG9sbHV0aW9uQ29udHJpYnV0b3JOb2RlIGZyb20gJy4vUG9sbHV0aW9uQ29udHJpYnV0b3JOb2RlJztcbmltcG9ydCB7IEluc2lnaHREYXRhLCBzaG91bGRGaWx0ZXJPdXQgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlUGFyYW1zIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5cbnR5cGUgU2VwID0geyBzaWJsaW5nczogbnVtYmVyOyBub25TaWJsaW5nczogbnVtYmVyIH07XG5cbmZ1bmN0aW9uIGNvdW50RGVwdGhBbmRCcmVhZHRoKHJvb3Q6IFJhd05vZGVEYXR1bSkge1xuICBsZXQgbWF4RGVwdGggPSAwO1xuICBjb25zdCBicmVhZHRoQnlEZXB0aDogbnVtYmVyW10gPSBbXTtcbiAgY29uc3QgZGZzID0gKG46IFJhd05vZGVEYXR1bSwgZCA9IDApID0+IHtcbiAgICBtYXhEZXB0aCA9IE1hdGgubWF4KG1heERlcHRoLCBkKTtcbiAgICBicmVhZHRoQnlEZXB0aFtkXSA9IChicmVhZHRoQnlEZXB0aFtkXSB8fCAwKSArIDE7XG4gICAgbi5jaGlsZHJlbj8uZm9yRWFjaCgoYykgPT4gZGZzKGMsIGQgKyAxKSk7XG4gIH07XG4gIGRmcyhyb290KTtcbiAgY29uc3QgbWF4QnJlYWR0aCA9IE1hdGgubWF4KC4uLmJyZWFkdGhCeURlcHRoKTtcbiAgcmV0dXJuIHsgbWF4RGVwdGgsIG1heEJyZWFkdGggfTtcbn1cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEF1dG9GaXRUcmVlKHtcbiAgZGF0YSxcbiAgb3JpZW50YXRpb24gPSAndmVydGljYWwnLFxuICBpbml0aWFsRGVwdGgsXG4gIHRyZWVLZXksXG4gIHNlbGVjdGVkRmlsdGVycyA9IHt9LFxuICAuLi5yZXN0XG59OiB7XG4gIGRhdGE6IGFueTtcbiAgb3JpZW50YXRpb24/OiAndmVydGljYWwnIHwgJ2hvcml6b250YWwnO1xuICBpbml0aWFsRGVwdGg6IG51bWJlcjtcbiAgb25Ob2RlQ2xpY2s/OiAobm9kZURhdGE6IGFueSkgPT4gdm9pZDtcbiAgdHJlZUtleTogbnVtYmVyO1xuICBzZWxlY3RlZEZpbHRlcnM/OiBhbnk7XG59KSB7XG4gIGNvbnN0IFBBRERJTkcgPSA0MjsgLy8gc2NyZWVuIHBhZGRpbmcgaW4gcHhcbiAgY29uc3Qgd3JhcHBlclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IG5vZGVTaXplID0geyB4OiAyNzAsIHk6IDI3MCB9OyAvLyBob3cgbXVjaCBzcGFjZSBlYWNoIG5vZGUgb2NjdXBpZXNcbiAgY29uc3Qgc2VwYXJhdGlvbjogU2VwID0geyBzaWJsaW5nczogMC44LCBub25TaWJsaW5nczogMC45IH07IC8vIG5vZGUgc3BhY2luZ1xuICBjb25zdCBbZGltcywgc2V0RGltc10gPSB1c2VTdGF0ZSh7IHdpZHRoOiA1MDAsIGhlaWdodDogMTAwIH0pO1xuICBjb25zdCBlYXJseV9hZG9wdGVyID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBhbnkpID0+IHN0YXRlLnBlcm1pc3Npb25zLmVhcmx5X2Fkb3B0ZXIsXG4gICk7XG5cbiAgLy8ga2VlcCB3cmFwcGVyIHNpemVkIHRvIHRoZSB2aWV3cG9ydFxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghd3JhcHBlclJlZi5jdXJyZW50KSByZXR1cm47XG4gICAgY29uc3Qgcm8gPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKCkgPT4ge1xuICAgICAgY29uc3QgciA9IHdyYXBwZXJSZWYuY3VycmVudCEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICBzZXREaW1zKHsgd2lkdGg6IHIud2lkdGgsIGhlaWdodDogci5oZWlnaHQgfSk7XG4gICAgfSk7XG4gICAgcm8ub2JzZXJ2ZSh3cmFwcGVyUmVmLmN1cnJlbnQpO1xuICAgIHJldHVybiAoKSA9PiByby5kaXNjb25uZWN0KCk7XG4gIH0sIFtdKTtcblxuICBjb25zdCB7IHRyYW5zbGF0ZSwgem9vbSB9ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgeyBtYXhEZXB0aCwgbWF4QnJlYWR0aCB9ID0gY291bnREZXB0aEFuZEJyZWFkdGgoZGF0YSk7XG5cbiAgICAvLyBhcHByb3hpbWF0ZSByZXF1aXJlZCBwaXhlbCBzaXplIG9mIHRoZSBsYWlkLW91dCB0cmVlXG4gICAgY29uc3QgcmVxVyA9IG1heEJyZWFkdGggKiBub2RlU2l6ZS54ICogc2VwYXJhdGlvbi5zaWJsaW5ncztcbiAgICBjb25zdCByZXFIID0gKG1heERlcHRoICsgMSkgKiBub2RlU2l6ZS55O1xuXG4gICAgY29uc3QgYXZhaWxXID0gTWF0aC5tYXgoMSwgZGltcy53aWR0aCAtIFBBRERJTkcgKiAyKTtcbiAgICBjb25zdCBhdmFpbEggPSBNYXRoLm1heCgxLCBkaW1zLmhlaWdodCAtIFBBRERJTkcgKiAyKTtcblxuICAgIGNvbnN0IGZpdFpvb20gPSAwLjcgKiBNYXRoLm1pbihhdmFpbFcgLyByZXFXLCBhdmFpbEggLyByZXFIKTtcbiAgICBjb25zdCB6ID0gaXNGaW5pdGUoZml0Wm9vbSkgJiYgZml0Wm9vbSA+IDAgPyBmaXRab29tIDogMS4yO1xuXG4gICAgcmV0dXJuIHsgem9vbTogeiwgdHJhbnNsYXRlOiB7IHg6IGRpbXMud2lkdGggLyAyLCB5OiBQQURESU5HIH0gfTtcbiAgfSwgW1xuICAgIGRhdGEsXG4gICAgbm9kZVNpemUueCxcbiAgICBub2RlU2l6ZS55LFxuICAgIHNlcGFyYXRpb24uc2libGluZ3MsXG4gICAgZGltcy53aWR0aCxcbiAgICBkaW1zLmhlaWdodCxcbiAgXSk7XG5cbiAgZnVuY3Rpb24gc2V0Q29sbGFwc2VkQnlEZXB0aChub2RlOiBhbnksIG1heERlcHRoOiBudW1iZXIsIGQgPSAwKSB7XG4gICAgbm9kZS5jb2xsYXBzZWQgPSBkID49IG1heERlcHRoO1xuICAgIG5vZGUuY2hpbGRyZW4/LmZvckVhY2goKGMpID0+IHNldENvbGxhcHNlZEJ5RGVwdGgoYywgbWF4RGVwdGgsIGQgKyAxKSk7XG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICBjb25zdCB2aWV3RGF0YSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghZGF0YSkgcmV0dXJuIG51bGw7XG4gICAgY29uc3QgY2xvbmUgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcbiAgICByZXR1cm4gc2V0Q29sbGFwc2VkQnlEZXB0aChjbG9uZSwgaW5pdGlhbERlcHRoKTtcbiAgfSwgW2RhdGEsIGluaXRpYWxEZXB0aF0pO1xuXG4gIGNvbnN0IHsgc2l0ZUlELCBhcmVhSUQgfSA9IHVzZVBhcmFtcygpO1xuXG4gIGNvbnN0IHJlbmRlckN1c3RvbU5vZGVFbGVtZW50ID0gKHJkM3RQcm9wcykgPT4ge1xuICAgIGNvbnN0IGlzUm9vdCA9IHJkM3RQcm9wcy5ub2RlRGF0dW0uX19yZDN0LmRlcHRoID09PSAwO1xuICAgIGNvbnN0IHNob3dTYW1wbGVycyA9XG4gICAgICBzZWxlY3RlZEZpbHRlcnM/LlNhbXBsZXJGaWx0ZXJJdGVtPy50b1N0cmluZygpID09PSAnd2l0aCcgfHwgZmFsc2U7XG4gICAgY29uc3QgaW5zaWdodERhdGEgPVxuICAgICAgKHNlbGVjdGVkRmlsdGVycz8uSW5zaWdodERhdGFGaWx0ZXJJdGVtPy50b1N0cmluZygpIGFzIEluc2lnaHREYXRhKSB8fFxuICAgICAgJ3Njb3JlJztcbiAgICBjb25zdCBpc0hpZ2hsaWdodCA9XG4gICAgICAoc2l0ZUlEICYmXG4gICAgICAgIHNpdGVJRCA9PT0gcmQzdFByb3BzLm5vZGVEYXR1bS5hdHRyaWJ1dGVzPy5wb2ludF9pZD8udG9TdHJpbmcoKSkgfHxcbiAgICAgIChhcmVhSUQgJiZcbiAgICAgICAgYXJlYUlEID09PSByZDN0UHJvcHMubm9kZURhdHVtLmF0dHJpYnV0ZXM/LmFyZWFfaWQ/LnRvU3RyaW5nKCkpO1xuICAgIHJldHVybiAhaXNSb290ICYmIHNob3VsZEZpbHRlck91dChyZDN0UHJvcHMsIHNlbGVjdGVkRmlsdGVycykgPyAoXG4gICAgICA8ZGl2PjwvZGl2PlxuICAgICkgOiBpbnNpZ2h0RGF0YSA9PT0gJ3Njb3JlJyA/IChcbiAgICAgIDxTY29yZU5vZGVcbiAgICAgICAgey4uLnJkM3RQcm9wc31cbiAgICAgICAgaXNIaWdobGlnaHQ9e2lzSGlnaGxpZ2h0fVxuICAgICAgICBvbk5vZGVDbGljaz17cmVzdC5vbk5vZGVDbGlja31cbiAgICAgICAgZWFybHlBZG9wdGVyPXtlYXJseV9hZG9wdGVyfVxuICAgICAgICBzaG93U2FtcGxlcnM9e3Nob3dTYW1wbGVyc31cbiAgICAgIC8+XG4gICAgKSA6IChcbiAgICAgIDxQb2xsdXRpb25Db250cmlidXRvck5vZGVcbiAgICAgICAgey4uLnJkM3RQcm9wc31cbiAgICAgICAgaXNIaWdobGlnaHQ9e2lzSGlnaGxpZ2h0fVxuICAgICAgICBvbk5vZGVDbGljaz17cmVzdC5vbk5vZGVDbGlja31cbiAgICAgICAgZWFybHlBZG9wdGVyPXtlYXJseV9hZG9wdGVyfVxuICAgICAgICBzaG93U2FtcGxlcnM9e3Nob3dTYW1wbGVyc31cbiAgICAgIC8+XG4gICAgKTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHJlZj17d3JhcHBlclJlZn1cbiAgICAgIHN0eWxlPXt7IHdpZHRoOiAnMTAwdncnLCBoZWlnaHQ6ICcxMDB2aCcsIG92ZXJmbG93OiAnaGlkZGVuJyB9fVxuICAgID5cbiAgICAgIDxUcmVlXG4gICAgICAgIGtleT17dHJlZUtleX1cbiAgICAgICAgZGF0YT17dmlld0RhdGF9XG4gICAgICAgIG9yaWVudGF0aW9uPXtvcmllbnRhdGlvbn1cbiAgICAgICAgcGF0aEZ1bmM9XCJzdGVwXCJcbiAgICAgICAgbm9kZVNpemU9e25vZGVTaXplfVxuICAgICAgICBzZXBhcmF0aW9uPXtzZXBhcmF0aW9ufVxuICAgICAgICB0cmFuc2xhdGU9e3RyYW5zbGF0ZX1cbiAgICAgICAgem9vbT17em9vbX1cbiAgICAgICAgem9vbWFibGVcbiAgICAgICAgc2NhbGVFeHRlbnQ9e3sgbWluOiAwLjEsIG1heDogMiB9fVxuICAgICAgICByZW5kZXJDdXN0b21Ob2RlRWxlbWVudD17cmVuZGVyQ3VzdG9tTm9kZUVsZW1lbnR9XG4gICAgICAgIGNvbGxhcHNpYmxlXG4gICAgICAgIGluaXRpYWxEZXB0aD17aW5pdGlhbERlcHRofVxuICAgICAgICB7Li4ucmVzdH1cbiAgICAgIC8+XG4gICAgPC9kaXY+XG4gICk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxZQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxVQUFBLEdBQUFELHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBSSx5QkFBQSxHQUFBRixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUssTUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sV0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sZUFBQSxHQUFBUCxPQUFBO0FBQTZDLElBQUFRLFNBQUE7QUFBQSxTQUFBQyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxP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
|
|
@@ -27,18 +27,22 @@ var HierarchyGraph = function HierarchyGraph() {
|
|
|
27
27
|
var ReduxState = (0, _reactRedux.useSelector)(function (state) {
|
|
28
28
|
return state;
|
|
29
29
|
});
|
|
30
|
-
var _useState = (0, _react.useState)(
|
|
30
|
+
var _useState = (0, _react.useState)(0),
|
|
31
31
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
var _useState3 = (0, _react.useState)(
|
|
32
|
+
treeKey = _useState2[0],
|
|
33
|
+
setTreeKey = _useState2[1];
|
|
34
|
+
var _useState3 = (0, _react.useState)(null),
|
|
35
35
|
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
var _useState5 = (0, _react.useState)(
|
|
36
|
+
selectedPoint = _useState4[0],
|
|
37
|
+
setSelectedPoint = _useState4[1];
|
|
38
|
+
var _useState5 = (0, _react.useState)(false),
|
|
39
39
|
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
showRightPanel = _useState6[0],
|
|
41
|
+
setShowRightPanel = _useState6[1];
|
|
42
|
+
var _useState7 = (0, _react.useState)({}),
|
|
43
|
+
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
44
|
+
filterOptions = _useState8[0],
|
|
45
|
+
setFilterOptions = _useState8[1];
|
|
42
46
|
var isHierarchyTab = searchQuery.get('view') === 'hierarchy';
|
|
43
47
|
var points_data = ReduxState.points_data,
|
|
44
48
|
edges_data = ReduxState.edges_data,
|
|
@@ -159,14 +163,22 @@ var HierarchyGraph = function HierarchyGraph() {
|
|
|
159
163
|
// You can update state or make API calls based on the applied filter
|
|
160
164
|
};
|
|
161
165
|
|
|
166
|
+
var resetFilter = function resetFilter() {
|
|
167
|
+
setFilterOptions({});
|
|
168
|
+
setTreeKey(treeKey + 1); // Force re-render by changing key
|
|
169
|
+
};
|
|
170
|
+
|
|
162
171
|
if (!isHierarchyTab) {
|
|
163
172
|
return null;
|
|
164
173
|
}
|
|
165
|
-
return /*#__PURE__*/_react.default.createElement("div",
|
|
174
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
175
|
+
className: 'hierarchy-graph-page'
|
|
176
|
+
}, !points_data.isFetching && treeKey > -1 && /*#__PURE__*/_react.default.createElement(_FilterContainer.default, {
|
|
166
177
|
filterPopupOpen: true,
|
|
167
178
|
fetchType: 'HierarchyFilter',
|
|
168
179
|
applyLogic: updateFilter,
|
|
169
|
-
custom_points: filterPoints
|
|
180
|
+
custom_points: filterPoints,
|
|
181
|
+
resetFilter: resetFilter
|
|
170
182
|
}), /*#__PURE__*/_react.default.createElement(_reactBootstrap.Container, {
|
|
171
183
|
fluid: true,
|
|
172
184
|
className: "p-0",
|
|
@@ -181,7 +193,7 @@ var HierarchyGraph = function HierarchyGraph() {
|
|
|
181
193
|
height: '85vh'
|
|
182
194
|
}
|
|
183
195
|
}, edges_data.isFetching || points_data.isFetching || !filterOptions || !treeData || isLoadingSites ? /*#__PURE__*/_react.default.createElement(_Loader.Loader, null) : /*#__PURE__*/_react.default.createElement(_AutoFitTree.default, {
|
|
184
|
-
treeKey:
|
|
196
|
+
treeKey: treeKey,
|
|
185
197
|
initialDepth: 12,
|
|
186
198
|
data: treeData,
|
|
187
199
|
selectedFilters: filterOptions,
|
|
@@ -197,4 +209,4 @@ var HierarchyGraph = function HierarchyGraph() {
|
|
|
197
209
|
};
|
|
198
210
|
var _default = HierarchyGraph;
|
|
199
211
|
exports.default = _default;
|
|
200
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdXNlUXVlcnlVUkwiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3V0aWxzIiwiX3JlYWN0UmVkdXgiLCJfQXV0b0ZpdFRyZWUiLCJfcmVhY3RCb290c3RyYXAiLCJfTG9hZGVyIiwiX1JpZ2h0UGFuZWwiLCJfdXJscyIsIl91c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnkiLCJfRmlsdGVyQ29udGFpbmVyIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJIaWVyYXJjaHlHcmFwaCIsInNlYXJjaFF1ZXJ5IiwidXNlUXVlcnlVUkwiLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInNlbGVjdGVkUG9pbnQiLCJzZXRTZWxlY3RlZFBvaW50IiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJzaG93UmlnaHRQYW5lbCIsInNldFNob3dSaWdodFBhbmVsIiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJmaWx0ZXJPcHRpb25zIiwic2V0RmlsdGVyT3B0aW9ucyIsImlzSGllcmFyY2h5VGFiIiwicG9pbnRzX2RhdGEiLCJlZGdlc19kYXRhIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwiZ2xvYmFsX2RhdGEiLCJvbk5vZGVDbGljayIsIm5vZGVEYXRhIiwiaXRlbXMiLCJmaW5kIiwicCIsImlkIiwiYXR0cmlidXRlcyIsInBvaW50X2lkIiwiZmFjdG9yaWVzRW5kUG9pbnQiLCJ1c2VNZW1vIiwidXJscyIsImRhc2hib2FyZCIsIlV0aWxpdHkiLCJmYWN0b3JpZXMiLCJwYXJhbXNBbGwiLCJ0eXBlIiwiX3VzZUFwaVdpdGhEYXNoYm9hcmRRIiwidXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5IiwiX3VzZUFwaVdpdGhEYXNoYm9hcmRRMiIsInJlc3BvbnNlU2l0ZXMiLCJpc0xvYWRpbmdTaXRlcyIsImVycm9yU2l0ZXMiLCJwb2xsdXRpb25CeVNpdGVJZCIsIm0iLCJNYXAiLCJkYXRhIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIyIiwiX3N0ZXAiLCJzIiwibiIsImRvbmUiLCJfc3RlcCR2YWx1ZSIsInZhbHVlIiwic2l0ZV9pZCIsInBvbGx1dGlvbiIsInNlY3Rvcl9uYW1lIiwic2VjdG9yX2lkIiwiY29udHJpYnV0b3JfcGVyY2VudHMiLCJleHRyYURhdGEiLCJ0eXBlX2Rpc3RyaWJ1dGlvbiIsImVyciIsImUiLCJmIiwiZGVjb3JhdGVkUG9pbnRzQnlJZCIsImJhc2UiLCJtYXBCeUlkIiwiY29weSIsIl9pIiwiX09iamVjdCRrZXlzIiwia2V5cyIsImxlbmd0aCIsIm51bUlkIiwiTnVtYmVyIiwiX29iamVjdFNwcmVhZDIiLCJlZGdlc1dpdGhEZXZpY2UiLCJwb2ludHNXaXRoRGV2aWNlIiwiZmlsdGVyIiwiaGFzX2RldmljZSIsImVkZ2UiLCJzb3VyY2VfcG9pbnRfaWQiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwiZmlsdGVyUG9pbnRzIiwicG9pbnRzT3B0aW9uIiwicG9pbnRMaXN0IiwiZm9yRWFjaCIsInNvdXJjZVBvaW50IiwidGFyZ2V0UG9pbnQiLCJ0YXJnZXRfcG9pbnRfaWQiLCJuYW1lIiwiZ3JvdXAiLCJ2YWx1ZXMiLCJ0cmVlRGF0YSIsImJ1aWxkVHJlZSIsInVwZGF0ZUZpbHRlciIsImFwcGxpZWRGaWx0ZXIiLCJzZWxlY3RlZEZpbHRlcnMiLCJmaWx0ZXJfaXRlbXMiLCJpdGVtIiwic2VsZWN0ZWRfb3B0aW9ucyIsImNyZWF0ZUVsZW1lbnQiLCJpc0ZldGNoaW5nIiwiZmlsdGVyUG9wdXBPcGVuIiwiZmV0Y2hUeXBlIiwiYXBwbHlMb2dpYyIsImN1c3RvbV9wb2ludHMiLCJDb250YWluZXIiLCJmbHVpZCIsImNsYXNzTmFtZSIsInN0eWxlIiwib3ZlcmZsb3ciLCJSb3ciLCJzbSIsIkNvbCIsImhlaWdodCIsIkxvYWRlciIsInRyZWVLZXkiLCJpbml0aWFsRGVwdGgiLCJjb25jYXQiLCJwb2ludCIsIm9uQ2xvc2UiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdWkta2l0L0hpZXJhcmNoeUdyYXBoL0hpZXJhcmNoeUdyYXBoLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJy4uLy4uL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IGJ1aWxkVHJlZSwgbWFwQnlJZCB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBBdXRvRml0VHJlZSBmcm9tICcuL0F1dG9GaXRUcmVlJztcbmltcG9ydCB7IENvbnRhaW5lciwgUm93LCBDb2wgfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgTG9hZGVyIH0gZnJvbSAnLi4vLi4vcGFnZXMvRGFzaGJvYXJkTWFwL0xvYWRlcic7XG5pbXBvcnQgUmlnaHRQYW5lbCBmcm9tICcuLi8uLi9wYWdlcy9PcGVyYXRpb25zUGFnZS9SaWdodFBhbmVsJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvdXJscyc7XG5pbXBvcnQgeyB1c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnkgfSBmcm9tICcuLi8uLi9ob29rcy91c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnknO1xuaW1wb3J0IHsgRmFjdG9yaWVzUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9XaWRnZXRzL01vc3RQb2xsdXRpbmcvRmFjdG9yaWVzL2ZhY3Rvcmllc1Jlc3BvbnNlLmludGVyZmFjZSc7XG5pbXBvcnQgRmlsdGVyQ29udGFpbmVyIGZyb20gJy4uLy4uL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0ZpbHRlci9GaWx0ZXJDb250YWluZXInO1xuXG5jb25zdCBIaWVyYXJjaHlHcmFwaCA9ICgpID0+IHtcbiAgY29uc3Qgc2VhcmNoUXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCBSZWR1eFN0YXRlID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZSk7XG4gIGNvbnN0IFtzZWxlY3RlZFBvaW50LCBzZXRTZWxlY3RlZFBvaW50XSA9IHVzZVN0YXRlKG51bGwpO1xuICBjb25zdCBbc2hvd1JpZ2h0UGFuZWwsIHNldFNob3dSaWdodFBhbmVsXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2ZpbHRlck9wdGlvbnMsIHNldEZpbHRlck9wdGlvbnNdID0gdXNlU3RhdGUoe30pO1xuICBjb25zdCBpc0hpZXJhcmNoeVRhYiA9IHNlYXJjaFF1ZXJ5LmdldCgndmlldycpID09PSAnaGllcmFyY2h5JztcbiAgY29uc3Qge1xuICAgIHBvaW50c19kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgZ2xvYmFsX2RhdGE6IHsgd2F0ZXJBdXRob3JpdHlOYW1lIH0sXG4gIH0gPSBSZWR1eFN0YXRlO1xuXG4gIGNvbnN0IG9uTm9kZUNsaWNrID0gKG5vZGVEYXRhKSA9PiB7XG4gICAgc2V0U2VsZWN0ZWRQb2ludChcbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLmZpbmQoKHApID0+IHAuaWQgPT09IG5vZGVEYXRhLmF0dHJpYnV0ZXMucG9pbnRfaWQpLFxuICAgICk7XG4gICAgc2V0U2hvd1JpZ2h0UGFuZWwoIXNob3dSaWdodFBhbmVsKTtcbiAgfTtcblxuICAvLyBzdGFibGUgZW5kcG9pbnRzL3BhcmFtcyDinIVcbiAgY29uc3QgZmFjdG9yaWVzRW5kUG9pbnQgPSB1c2VNZW1vKFxuICAgICgpID0+IHVybHMoKS5kYXNoYm9hcmQuVXRpbGl0eS5mYWN0b3JpZXMsXG4gICAgW10sXG4gICk7XG5cbiAgY29uc3QgcGFyYW1zQWxsID0gdXNlTWVtbygoKSA9PiAoeyB0eXBlOiAnQWxsJyB9KSwgW10pO1xuXG4gIC8vIGZldGNoZXNcbiAgY29uc3QgW3Jlc3BvbnNlU2l0ZXMsIGlzTG9hZGluZ1NpdGVzLCBlcnJvclNpdGVzXSA9XG4gICAgdXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5PEZhY3Rvcmllc1Jlc3BvbnNlPihmYWN0b3JpZXNFbmRQb2ludCwgcGFyYW1zQWxsKTtcblxuICAvLyAxKSBCdWlsZCBhIHBvbGx1dGlvbiBtYXAgZnJvbSBib3RoIHJlc3BvbnNlcyAobm8gc3RhdGU7IHB1cmUgbWVtbylcbiAgY29uc3QgcG9sbHV0aW9uQnlTaXRlSWQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBtID0gbmV3IE1hcDxudW1iZXIsIGFueT4oKTtcbiAgICBpZiAocmVzcG9uc2VTaXRlcz8uZGF0YSkge1xuICAgICAgZm9yIChjb25zdCB7XG4gICAgICAgIHNpdGVfaWQsXG4gICAgICAgIHBvbGx1dGlvbixcbiAgICAgICAgc2VjdG9yX25hbWUsXG4gICAgICAgIHNlY3Rvcl9pZCxcbiAgICAgICAgY29udHJpYnV0b3JfcGVyY2VudHMsXG4gICAgICB9IG9mIHJlc3BvbnNlU2l0ZXMuZGF0YSkge1xuICAgICAgICBjb25zdCBleHRyYURhdGEgPSB7IHNlY3Rvcl9uYW1lLCBjb250cmlidXRvcl9wZXJjZW50cywgc2VjdG9yX2lkIH07XG4gICAgICAgIGlmIChwb2xsdXRpb24/LnR5cGVfZGlzdHJpYnV0aW9uKVxuICAgICAgICAgIGV4dHJhRGF0YVsncG9sbHV0aW9uJ10gPSBwb2xsdXRpb24udHlwZV9kaXN0cmlidXRpb247XG4gICAgICAgIG0uc2V0KHNpdGVfaWQsIGV4dHJhRGF0YSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBtO1xuICB9LCBbcmVzcG9uc2VTaXRlcz8uZGF0YV0pO1xuXG4gIC8vIDIpIENyZWF0ZSBhIFNBRkUgY29weSBvZiBwb2ludF9tYXBfZGF0YSB3aXRoIHBvbGx1dGlvbiBtZXJnZWQgaW4gKG5vIG11dGF0aW9ucylcbiAgY29uc3QgZGVjb3JhdGVkUG9pbnRzQnlJZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIC8vIG1hcEJ5SWQocG9pbnRzX2RhdGEuaXRlbXMpIHJldHVybnMgYSBwbGFpbiBvYmplY3Qga2V5ZWQgYnkgaWQ7IGNsb25lIGl0XG4gICAgY29uc3QgYmFzZSA9IG1hcEJ5SWQocG9pbnRzX2RhdGEuaXRlbXMpO1xuICAgIGNvbnN0IGNvcHk6IFJlY29yZDxudW1iZXIsIGFueT4gPSB7fTtcbiAgICBmb3IgKGNvbnN0IGlkIG9mIE9iamVjdC5rZXlzKGJhc2UpKSB7XG4gICAgICBjb25zdCBudW1JZCA9IE51bWJlcihpZCk7XG4gICAgICBjb25zdCBwb2xsdXRpb24gPSBwb2xsdXRpb25CeVNpdGVJZC5nZXQobnVtSWQpO1xuICAgICAgLy8gc2hhbGxvdyBjbG9uZSBlYWNoIHBvaW50OyBhZGQgcG9sbHV0aW9uIGlmIGV4aXN0c1xuICAgICAgY29weVtudW1JZF0gPSBwb2xsdXRpb25cbiAgICAgICAgPyB7IC4uLmJhc2VbbnVtSWRdLCAuLi5wb2xsdXRpb24gfVxuICAgICAgICA6IHsgLi4uYmFzZVtudW1JZF0gfTtcbiAgICB9XG4gICAgcmV0dXJuIGNvcHk7XG4gIH0sIFtwb2ludHNfZGF0YS5pdGVtcywgcG9sbHV0aW9uQnlTaXRlSWRdKTtcblxuICAvLyAzKSBDb21wdXRlIGVkZ2VzV2l0aERldmljZSBzYWZlbHkvbWVtb2l6ZWQgKG5vIGV4dHJhIHJlbmRlcnMpXG4gIGNvbnN0IGVkZ2VzV2l0aERldmljZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IHBvaW50c1dpdGhEZXZpY2UgPSBtYXBCeUlkKFxuICAgICAgcG9pbnRzX2RhdGEuaXRlbXMuZmlsdGVyKChwKSA9PiBwLmhhc19kZXZpY2UpLFxuICAgICk7XG4gICAgcmV0dXJuIGVkZ2VzX2RhdGEuaXRlbXMuZmlsdGVyKFxuICAgICAgKGVkZ2UpID0+XG4gICAgICAgIHBvaW50c1dpdGhEZXZpY2VbZWRnZS5zb3VyY2VfcG9pbnRfaWRdIHx8IGVkZ2UuZGVzY2VuZGFudHNfaGFzX2RldmljZSxcbiAgICApO1xuICB9LCBbcG9pbnRzX2RhdGEuaXRlbXMsIGVkZ2VzX2RhdGEuaXRlbXNdKTtcblxuICBjb25zdCBmaWx0ZXJQb2ludHMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBwb2ludHNPcHRpb24gPSB7fTtcbiAgICBjb25zdCBwb2ludExpc3QgPSBwb2ludHNfZGF0YS5pdGVtcztcbiAgICBlZGdlc1dpdGhEZXZpY2UuZm9yRWFjaCgoZWRnZSkgPT4ge1xuICAgICAgY29uc3Qgc291cmNlUG9pbnQgPSBwb2ludExpc3QuZmluZCgocCkgPT4gcC5pZCA9PT0gZWRnZS5zb3VyY2VfcG9pbnRfaWQpO1xuICAgICAgY29uc3QgdGFyZ2V0UG9pbnQgPSBwb2ludExpc3QuZmluZCgocCkgPT4gcC5pZCA9PT0gZWRnZS50YXJnZXRfcG9pbnRfaWQpO1xuICAgICAgaWYgKHNvdXJjZVBvaW50KVxuICAgICAgICBwb2ludHNPcHRpb25bc291cmNlUG9pbnQuaWRdID0ge1xuICAgICAgICAgIGlkOiBzb3VyY2VQb2ludC5pZCxcbiAgICAgICAgICBuYW1lOiBzb3VyY2VQb2ludC5ncm91cC5uYW1lLFxuICAgICAgICB9O1xuICAgICAgaWYgKHRhcmdldFBvaW50KVxuICAgICAgICBwb2ludHNPcHRpb25bdGFyZ2V0UG9pbnQuaWRdID0ge1xuICAgICAgICAgIGlkOiB0YXJnZXRQb2ludC5pZCxcbiAgICAgICAgICBuYW1lOiB0YXJnZXRQb2ludC5ncm91cC5uYW1lLFxuICAgICAgICB9O1xuICAgIH0pO1xuICAgIHJldHVybiBPYmplY3QudmFsdWVzKHBvaW50c09wdGlvbik7XG4gIH0sIFtwb2ludHNfZGF0YS5pdGVtcywgZWRnZXNXaXRoRGV2aWNlXSk7XG5cbiAgLy8gNCkgQnVpbGQgdGhlIHRyZWUgT05MWSB3aGVuIGRhdGEgaXMgcmVhZHk7IGtlZXAgcmVmZXJlbnRpYWwgc3RhYmlsaXR5XG4gIGNvbnN0IHRyZWVEYXRhID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGlzTG9hZGluZ1NpdGVzIHx8IGVycm9yU2l0ZXMpIHJldHVybiBudWxsO1xuXG4gICAgcmV0dXJuIGJ1aWxkVHJlZShlZGdlc1dpdGhEZXZpY2UsIGRlY29yYXRlZFBvaW50c0J5SWQsIHdhdGVyQXV0aG9yaXR5TmFtZSk7XG4gIH0sIFtcbiAgICBlZGdlc1dpdGhEZXZpY2UsXG4gICAgZGVjb3JhdGVkUG9pbnRzQnlJZCxcbiAgICB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgaXNMb2FkaW5nU2l0ZXMsXG4gICAgZXJyb3JTaXRlcyxcbiAgXSk7XG5cbiAgY29uc3QgdXBkYXRlRmlsdGVyID0gKGFwcGxpZWRGaWx0ZXIpID0+IHtcbiAgICAvLyBQcm9jZXNzIHRoZSBhcHBsaWVkIGZpbHRlciBhcyBuZWVkZWRcbiAgICBjb25zdCBzZWxlY3RlZEZpbHRlcnMgPSB7fTtcblxuICAgIGFwcGxpZWRGaWx0ZXIuZmlsdGVyX2l0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIHNlbGVjdGVkRmlsdGVyc1tpdGVtLnR5cGVdID0gaXRlbS5zZWxlY3RlZF9vcHRpb25zO1xuICAgIH0pO1xuICAgIHNldEZpbHRlck9wdGlvbnMoc2VsZWN0ZWRGaWx0ZXJzKTtcbiAgICAvLyBZb3UgY2FuIHVwZGF0ZSBzdGF0ZSBvciBtYWtlIEFQSSBjYWxscyBiYXNlZCBvbiB0aGUgYXBwbGllZCBmaWx0ZXJcbiAgfTtcblxuICBpZiAoIWlzSGllcmFyY2h5VGFiKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXY+XG4gICAgICB7IXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICA8RmlsdGVyQ29udGFpbmVyXG4gICAgICAgICAgZmlsdGVyUG9wdXBPcGVuPXt0cnVlfVxuICAgICAgICAgIGZldGNoVHlwZT17J0hpZXJhcmNoeUZpbHRlcid9XG4gICAgICAgICAgYXBwbHlMb2dpYz17dXBkYXRlRmlsdGVyfVxuICAgICAgICAgIGN1c3RvbV9wb2ludHM9e2ZpbHRlclBvaW50c31cbiAgICAgICAgLz5cbiAgICAgICl9XG5cbiAgICAgIDxDb250YWluZXIgZmx1aWQgY2xhc3NOYW1lPVwicC0wXCIgc3R5bGU9e3sgb3ZlcmZsb3c6ICdoaWRkZW4nIH19PlxuICAgICAgICA8Um93IGNsYXNzTmFtZT1cIm1hcC1jb2x1bW5cIiBzbT17MTJ9PlxuICAgICAgICAgIDxDb2wgc3R5bGU9e3sgaGVpZ2h0OiAnODV2aCcgfX0+XG4gICAgICAgICAgICB7ZWRnZXNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICAgICAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICAgICAgICAhZmlsdGVyT3B0aW9ucyB8fFxuICAgICAgICAgICAgIXRyZWVEYXRhIHx8XG4gICAgICAgICAgICBpc0xvYWRpbmdTaXRlcyA/IChcbiAgICAgICAgICAgICAgPExvYWRlciAvPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPEF1dG9GaXRUcmVlXG4gICAgICAgICAgICAgICAgdHJlZUtleT17MH1cbiAgICAgICAgICAgICAgICBpbml0aWFsRGVwdGg9ezEyfVxuICAgICAgICAgICAgICAgIGRhdGE9e3RyZWVEYXRhfVxuICAgICAgICAgICAgICAgIHNlbGVjdGVkRmlsdGVycz17ZmlsdGVyT3B0aW9uc31cbiAgICAgICAgICAgICAgICBvbk5vZGVDbGljaz17b25Ob2RlQ2xpY2t9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgICAgPFJpZ2h0UGFuZWxcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgcmlnaHQtcGFuZWwgJHtzaG93UmlnaHRQYW5lbCA/ICdvcGVuJyA6ICcnfWB9XG4gICAgICAgICAgICAgIHBvaW50PXtzZWxlY3RlZFBvaW50fVxuICAgICAgICAgICAgICBvbkNsb3NlPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0U2VsZWN0ZWRQb2ludChudWxsKTtcbiAgICAgICAgICAgICAgICBzZXRTaG93UmlnaHRQYW5lbChmYWxzZSk7XG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvQ29sPlxuICAgICAgICA8L1Jvdz5cbiAgICAgIDwvQ29udGFpbmVyPlxuICAgIDwvZGl2PlxuICApO1xufTtcbmV4cG9ydCBkZWZhdWx0IEhpZXJhcmNoeUdyYXBoO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUVBLElBQUFLLFlBQUEsR0FBQUgsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFNLGVBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLE9BQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLFdBQUEsR0FBQU4sc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFTLEtBQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLHlCQUFBLEdBQUFWLE9BQUE7QUFFQSxJQUFBVyxnQkFBQSxHQUFBVCxzQkFBQSxDQUFBRixPQUFBO0FBQStGLFNBQUFZLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFB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
|
|
212
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdXNlUXVlcnlVUkwiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3V0aWxzIiwiX3JlYWN0UmVkdXgiLCJfQXV0b0ZpdFRyZWUiLCJfcmVhY3RCb290c3RyYXAiLCJfTG9hZGVyIiwiX1JpZ2h0UGFuZWwiLCJfdXJscyIsIl91c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnkiLCJfRmlsdGVyQ29udGFpbmVyIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJIaWVyYXJjaHlHcmFwaCIsInNlYXJjaFF1ZXJ5IiwidXNlUXVlcnlVUkwiLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInRyZWVLZXkiLCJzZXRUcmVlS2V5IiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJzZWxlY3RlZFBvaW50Iiwic2V0U2VsZWN0ZWRQb2ludCIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2Iiwic2hvd1JpZ2h0UGFuZWwiLCJzZXRTaG93UmlnaHRQYW5lbCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiZmlsdGVyT3B0aW9ucyIsInNldEZpbHRlck9wdGlvbnMiLCJpc0hpZXJhcmNoeVRhYiIsInBvaW50c19kYXRhIiwiZWRnZXNfZGF0YSIsIndhdGVyQXV0aG9yaXR5TmFtZSIsImdsb2JhbF9kYXRhIiwib25Ob2RlQ2xpY2siLCJub2RlRGF0YSIsIml0ZW1zIiwiZmluZCIsInAiLCJpZCIsImF0dHJpYnV0ZXMiLCJwb2ludF9pZCIsImZhY3Rvcmllc0VuZFBvaW50IiwidXNlTWVtbyIsInVybHMiLCJkYXNoYm9hcmQiLCJVdGlsaXR5IiwiZmFjdG9yaWVzIiwicGFyYW1zQWxsIiwidHlwZSIsIl91c2VBcGlXaXRoRGFzaGJvYXJkUSIsInVzZUFwaVdpdGhEYXNoYm9hcmRRdWVyeSIsIl91c2VBcGlXaXRoRGFzaGJvYXJkUTIiLCJyZXNwb25zZVNpdGVzIiwiaXNMb2FkaW5nU2l0ZXMiLCJlcnJvclNpdGVzIiwicG9sbHV0aW9uQnlTaXRlSWQiLCJtIiwiTWFwIiwiZGF0YSIsIl9pdGVyYXRvciIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyMiIsIl9zdGVwIiwicyIsIm4iLCJkb25lIiwiX3N0ZXAkdmFsdWUiLCJ2YWx1ZSIsInNpdGVfaWQiLCJwb2xsdXRpb24iLCJzZWN0b3JfbmFtZSIsInNlY3Rvcl9pZCIsImNvbnRyaWJ1dG9yX3BlcmNlbnRzIiwiZXh0cmFEYXRhIiwidHlwZV9kaXN0cmlidXRpb24iLCJlcnIiLCJlIiwiZiIsImRlY29yYXRlZFBvaW50c0J5SWQiLCJiYXNlIiwibWFwQnlJZCIsImNvcHkiLCJfaSIsIl9PYmplY3Qka2V5cyIsImtleXMiLCJsZW5ndGgiLCJudW1JZCIsIk51bWJlciIsIl9vYmplY3RTcHJlYWQyIiwiZWRnZXNXaXRoRGV2aWNlIiwicG9pbnRzV2l0aERldmljZSIsImZpbHRlciIsImhhc19kZXZpY2UiLCJlZGdlIiwic291cmNlX3BvaW50X2lkIiwiZGVzY2VuZGFudHNfaGFzX2RldmljZSIsImZpbHRlclBvaW50cyIsInBvaW50c09wdGlvbiIsInBvaW50TGlzdCIsImZvckVhY2giLCJzb3VyY2VQb2ludCIsInRhcmdldFBvaW50IiwidGFyZ2V0X3BvaW50X2lkIiwibmFtZSIsImdyb3VwIiwidmFsdWVzIiwidHJlZURhdGEiLCJidWlsZFRyZWUiLCJ1cGRhdGVGaWx0ZXIiLCJhcHBsaWVkRmlsdGVyIiwic2VsZWN0ZWRGaWx0ZXJzIiwiZmlsdGVyX2l0ZW1zIiwiaXRlbSIsInNlbGVjdGVkX29wdGlvbnMiLCJyZXNldEZpbHRlciIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJpc0ZldGNoaW5nIiwiZmlsdGVyUG9wdXBPcGVuIiwiZmV0Y2hUeXBlIiwiYXBwbHlMb2dpYyIsImN1c3RvbV9wb2ludHMiLCJDb250YWluZXIiLCJmbHVpZCIsInN0eWxlIiwib3ZlcmZsb3ciLCJSb3ciLCJzbSIsIkNvbCIsImhlaWdodCIsIkxvYWRlciIsImluaXRpYWxEZXB0aCIsImNvbmNhdCIsInBvaW50Iiwib25DbG9zZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91aS1raXQvSGllcmFyY2h5R3JhcGgvSGllcmFyY2h5R3JhcGgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdXNlUXVlcnlVUkwgZnJvbSAnLi4vLi4vaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IHsgYnVpbGRUcmVlLCBtYXBCeUlkIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IEF1dG9GaXRUcmVlIGZyb20gJy4vQXV0b0ZpdFRyZWUnO1xuaW1wb3J0IHsgQ29udGFpbmVyLCBSb3csIENvbCB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBMb2FkZXIgfSBmcm9tICcuLi8uLi9wYWdlcy9EYXNoYm9hcmRNYXAvTG9hZGVyJztcbmltcG9ydCBSaWdodFBhbmVsIGZyb20gJy4uLy4uL3BhZ2VzL09wZXJhdGlvbnNQYWdlL1JpZ2h0UGFuZWwnO1xuaW1wb3J0IHsgdXJscyB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy91cmxzJztcbmltcG9ydCB7IHVzZUFwaVdpdGhEYXNoYm9hcmRRdWVyeSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZUFwaVdpdGhEYXNoYm9hcmRRdWVyeSc7XG5pbXBvcnQgeyBGYWN0b3JpZXNSZXNwb25zZSB9IGZyb20gJy4uLy4uL1dpZGdldHMvTW9zdFBvbGx1dGluZy9GYWN0b3JpZXMvZmFjdG9yaWVzUmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCBGaWx0ZXJDb250YWluZXIgZnJvbSAnLi4vLi4vcGFnZXMvRXZlbnRzUGFnZS9ldmVudHMvZXZlbnRzX2xpc3QvRmlsdGVyL0ZpbHRlckNvbnRhaW5lcic7XG5cbmNvbnN0IEhpZXJhcmNoeUdyYXBoID0gKCkgPT4ge1xuICBjb25zdCBzZWFyY2hRdWVyeSA9IHVzZVF1ZXJ5VVJMKCk7XG4gIGNvbnN0IFJlZHV4U3RhdGUgPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlKTtcbiAgY29uc3QgW3RyZWVLZXksIHNldFRyZWVLZXldID0gdXNlU3RhdGUoMCk7XG4gIGNvbnN0IFtzZWxlY3RlZFBvaW50LCBzZXRTZWxlY3RlZFBvaW50XSA9IHVzZVN0YXRlKG51bGwpO1xuICBjb25zdCBbc2hvd1JpZ2h0UGFuZWwsIHNldFNob3dSaWdodFBhbmVsXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2ZpbHRlck9wdGlvbnMsIHNldEZpbHRlck9wdGlvbnNdID0gdXNlU3RhdGUoe30pO1xuICBjb25zdCBpc0hpZXJhcmNoeVRhYiA9IHNlYXJjaFF1ZXJ5LmdldCgndmlldycpID09PSAnaGllcmFyY2h5JztcbiAgY29uc3Qge1xuICAgIHBvaW50c19kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgZ2xvYmFsX2RhdGE6IHsgd2F0ZXJBdXRob3JpdHlOYW1lIH0sXG4gIH0gPSBSZWR1eFN0YXRlO1xuXG4gIGNvbnN0IG9uTm9kZUNsaWNrID0gKG5vZGVEYXRhKSA9PiB7XG4gICAgc2V0U2VsZWN0ZWRQb2ludChcbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLmZpbmQoKHApID0+IHAuaWQgPT09IG5vZGVEYXRhLmF0dHJpYnV0ZXMucG9pbnRfaWQpLFxuICAgICk7XG4gICAgc2V0U2hvd1JpZ2h0UGFuZWwoIXNob3dSaWdodFBhbmVsKTtcbiAgfTtcblxuICAvLyBzdGFibGUgZW5kcG9pbnRzL3BhcmFtcyDinIVcbiAgY29uc3QgZmFjdG9yaWVzRW5kUG9pbnQgPSB1c2VNZW1vKFxuICAgICgpID0+IHVybHMoKS5kYXNoYm9hcmQuVXRpbGl0eS5mYWN0b3JpZXMsXG4gICAgW10sXG4gICk7XG5cbiAgY29uc3QgcGFyYW1zQWxsID0gdXNlTWVtbygoKSA9PiAoeyB0eXBlOiAnQWxsJyB9KSwgW10pO1xuXG4gIC8vIGZldGNoZXNcbiAgY29uc3QgW3Jlc3BvbnNlU2l0ZXMsIGlzTG9hZGluZ1NpdGVzLCBlcnJvclNpdGVzXSA9XG4gICAgdXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5PEZhY3Rvcmllc1Jlc3BvbnNlPihmYWN0b3JpZXNFbmRQb2ludCwgcGFyYW1zQWxsKTtcblxuICAvLyAxKSBCdWlsZCBhIHBvbGx1dGlvbiBtYXAgZnJvbSBib3RoIHJlc3BvbnNlcyAobm8gc3RhdGU7IHB1cmUgbWVtbylcbiAgY29uc3QgcG9sbHV0aW9uQnlTaXRlSWQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBtID0gbmV3IE1hcDxudW1iZXIsIGFueT4oKTtcbiAgICBpZiAocmVzcG9uc2VTaXRlcz8uZGF0YSkge1xuICAgICAgZm9yIChjb25zdCB7XG4gICAgICAgIHNpdGVfaWQsXG4gICAgICAgIHBvbGx1dGlvbixcbiAgICAgICAgc2VjdG9yX25hbWUsXG4gICAgICAgIHNlY3Rvcl9pZCxcbiAgICAgICAgY29udHJpYnV0b3JfcGVyY2VudHMsXG4gICAgICB9IG9mIHJlc3BvbnNlU2l0ZXMuZGF0YSkge1xuICAgICAgICBjb25zdCBleHRyYURhdGEgPSB7IHNlY3Rvcl9uYW1lLCBjb250cmlidXRvcl9wZXJjZW50cywgc2VjdG9yX2lkIH07XG4gICAgICAgIGlmIChwb2xsdXRpb24/LnR5cGVfZGlzdHJpYnV0aW9uKVxuICAgICAgICAgIGV4dHJhRGF0YVsncG9sbHV0aW9uJ10gPSBwb2xsdXRpb24udHlwZV9kaXN0cmlidXRpb247XG4gICAgICAgIG0uc2V0KHNpdGVfaWQsIGV4dHJhRGF0YSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBtO1xuICB9LCBbcmVzcG9uc2VTaXRlcz8uZGF0YV0pO1xuXG4gIC8vIDIpIENyZWF0ZSBhIFNBRkUgY29weSBvZiBwb2ludF9tYXBfZGF0YSB3aXRoIHBvbGx1dGlvbiBtZXJnZWQgaW4gKG5vIG11dGF0aW9ucylcbiAgY29uc3QgZGVjb3JhdGVkUG9pbnRzQnlJZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIC8vIG1hcEJ5SWQocG9pbnRzX2RhdGEuaXRlbXMpIHJldHVybnMgYSBwbGFpbiBvYmplY3Qga2V5ZWQgYnkgaWQ7IGNsb25lIGl0XG4gICAgY29uc3QgYmFzZSA9IG1hcEJ5SWQocG9pbnRzX2RhdGEuaXRlbXMpO1xuICAgIGNvbnN0IGNvcHk6IFJlY29yZDxudW1iZXIsIGFueT4gPSB7fTtcbiAgICBmb3IgKGNvbnN0IGlkIG9mIE9iamVjdC5rZXlzKGJhc2UpKSB7XG4gICAgICBjb25zdCBudW1JZCA9IE51bWJlcihpZCk7XG4gICAgICBjb25zdCBwb2xsdXRpb24gPSBwb2xsdXRpb25CeVNpdGVJZC5nZXQobnVtSWQpO1xuICAgICAgLy8gc2hhbGxvdyBjbG9uZSBlYWNoIHBvaW50OyBhZGQgcG9sbHV0aW9uIGlmIGV4aXN0c1xuICAgICAgY29weVtudW1JZF0gPSBwb2xsdXRpb25cbiAgICAgICAgPyB7IC4uLmJhc2VbbnVtSWRdLCAuLi5wb2xsdXRpb24gfVxuICAgICAgICA6IHsgLi4uYmFzZVtudW1JZF0gfTtcbiAgICB9XG4gICAgcmV0dXJuIGNvcHk7XG4gIH0sIFtwb2ludHNfZGF0YS5pdGVtcywgcG9sbHV0aW9uQnlTaXRlSWRdKTtcblxuICAvLyAzKSBDb21wdXRlIGVkZ2VzV2l0aERldmljZSBzYWZlbHkvbWVtb2l6ZWQgKG5vIGV4dHJhIHJlbmRlcnMpXG4gIGNvbnN0IGVkZ2VzV2l0aERldmljZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IHBvaW50c1dpdGhEZXZpY2UgPSBtYXBCeUlkKFxuICAgICAgcG9pbnRzX2RhdGEuaXRlbXMuZmlsdGVyKChwKSA9PiBwLmhhc19kZXZpY2UpLFxuICAgICk7XG4gICAgcmV0dXJuIGVkZ2VzX2RhdGEuaXRlbXMuZmlsdGVyKFxuICAgICAgKGVkZ2UpID0+XG4gICAgICAgIHBvaW50c1dpdGhEZXZpY2VbZWRnZS5zb3VyY2VfcG9pbnRfaWRdIHx8IGVkZ2UuZGVzY2VuZGFudHNfaGFzX2RldmljZSxcbiAgICApO1xuICB9LCBbcG9pbnRzX2RhdGEuaXRlbXMsIGVkZ2VzX2RhdGEuaXRlbXNdKTtcblxuICBjb25zdCBmaWx0ZXJQb2ludHMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBwb2ludHNPcHRpb24gPSB7fTtcbiAgICBjb25zdCBwb2ludExpc3QgPSBwb2ludHNfZGF0YS5pdGVtcztcbiAgICBlZGdlc1dpdGhEZXZpY2UuZm9yRWFjaCgoZWRnZSkgPT4ge1xuICAgICAgY29uc3Qgc291cmNlUG9pbnQgPSBwb2ludExpc3QuZmluZCgocCkgPT4gcC5pZCA9PT0gZWRnZS5zb3VyY2VfcG9pbnRfaWQpO1xuICAgICAgY29uc3QgdGFyZ2V0UG9pbnQgPSBwb2ludExpc3QuZmluZCgocCkgPT4gcC5pZCA9PT0gZWRnZS50YXJnZXRfcG9pbnRfaWQpO1xuICAgICAgaWYgKHNvdXJjZVBvaW50KVxuICAgICAgICBwb2ludHNPcHRpb25bc291cmNlUG9pbnQuaWRdID0ge1xuICAgICAgICAgIGlkOiBzb3VyY2VQb2ludC5pZCxcbiAgICAgICAgICBuYW1lOiBzb3VyY2VQb2ludC5ncm91cC5uYW1lLFxuICAgICAgICB9O1xuICAgICAgaWYgKHRhcmdldFBvaW50KVxuICAgICAgICBwb2ludHNPcHRpb25bdGFyZ2V0UG9pbnQuaWRdID0ge1xuICAgICAgICAgIGlkOiB0YXJnZXRQb2ludC5pZCxcbiAgICAgICAgICBuYW1lOiB0YXJnZXRQb2ludC5ncm91cC5uYW1lLFxuICAgICAgICB9O1xuICAgIH0pO1xuICAgIHJldHVybiBPYmplY3QudmFsdWVzKHBvaW50c09wdGlvbik7XG4gIH0sIFtwb2ludHNfZGF0YS5pdGVtcywgZWRnZXNXaXRoRGV2aWNlXSk7XG5cbiAgLy8gNCkgQnVpbGQgdGhlIHRyZWUgT05MWSB3aGVuIGRhdGEgaXMgcmVhZHk7IGtlZXAgcmVmZXJlbnRpYWwgc3RhYmlsaXR5XG4gIGNvbnN0IHRyZWVEYXRhID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGlzTG9hZGluZ1NpdGVzIHx8IGVycm9yU2l0ZXMpIHJldHVybiBudWxsO1xuXG4gICAgcmV0dXJuIGJ1aWxkVHJlZShlZGdlc1dpdGhEZXZpY2UsIGRlY29yYXRlZFBvaW50c0J5SWQsIHdhdGVyQXV0aG9yaXR5TmFtZSk7XG4gIH0sIFtcbiAgICBlZGdlc1dpdGhEZXZpY2UsXG4gICAgZGVjb3JhdGVkUG9pbnRzQnlJZCxcbiAgICB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgaXNMb2FkaW5nU2l0ZXMsXG4gICAgZXJyb3JTaXRlcyxcbiAgXSk7XG5cbiAgY29uc3QgdXBkYXRlRmlsdGVyID0gKGFwcGxpZWRGaWx0ZXIpID0+IHtcbiAgICAvLyBQcm9jZXNzIHRoZSBhcHBsaWVkIGZpbHRlciBhcyBuZWVkZWRcbiAgICBjb25zdCBzZWxlY3RlZEZpbHRlcnMgPSB7fTtcblxuICAgIGFwcGxpZWRGaWx0ZXIuZmlsdGVyX2l0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIHNlbGVjdGVkRmlsdGVyc1tpdGVtLnR5cGVdID0gaXRlbS5zZWxlY3RlZF9vcHRpb25zO1xuICAgIH0pO1xuICAgIHNldEZpbHRlck9wdGlvbnMoc2VsZWN0ZWRGaWx0ZXJzKTtcbiAgICAvLyBZb3UgY2FuIHVwZGF0ZSBzdGF0ZSBvciBtYWtlIEFQSSBjYWxscyBiYXNlZCBvbiB0aGUgYXBwbGllZCBmaWx0ZXJcbiAgfTtcblxuICBjb25zdCByZXNldEZpbHRlciA9ICgpID0+IHtcbiAgICBzZXRGaWx0ZXJPcHRpb25zKHt9KTtcbiAgICBzZXRUcmVlS2V5KHRyZWVLZXkgKyAxKTsgLy8gRm9yY2UgcmUtcmVuZGVyIGJ5IGNoYW5naW5nIGtleVxuICB9O1xuXG4gIGlmICghaXNIaWVyYXJjaHlUYWIpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9eydoaWVyYXJjaHktZ3JhcGgtcGFnZSd9PlxuICAgICAgeyFwb2ludHNfZGF0YS5pc0ZldGNoaW5nICYmIHRyZWVLZXkgPiAtMSAmJiAoXG4gICAgICAgIDxGaWx0ZXJDb250YWluZXJcbiAgICAgICAgICBmaWx0ZXJQb3B1cE9wZW49e3RydWV9XG4gICAgICAgICAgZmV0Y2hUeXBlPXsnSGllcmFyY2h5RmlsdGVyJ31cbiAgICAgICAgICBhcHBseUxvZ2ljPXt1cGRhdGVGaWx0ZXJ9XG4gICAgICAgICAgY3VzdG9tX3BvaW50cz17ZmlsdGVyUG9pbnRzfVxuICAgICAgICAgIHJlc2V0RmlsdGVyPXtyZXNldEZpbHRlcn1cbiAgICAgICAgLz5cbiAgICAgICl9XG5cbiAgICAgIDxDb250YWluZXIgZmx1aWQgY2xhc3NOYW1lPVwicC0wXCIgc3R5bGU9e3sgb3ZlcmZsb3c6ICdoaWRkZW4nIH19PlxuICAgICAgICA8Um93IGNsYXNzTmFtZT1cIm1hcC1jb2x1bW5cIiBzbT17MTJ9PlxuICAgICAgICAgIDxDb2wgc3R5bGU9e3sgaGVpZ2h0OiAnODV2aCcgfX0+XG4gICAgICAgICAgICB7ZWRnZXNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICAgICAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICAgICAgICAhZmlsdGVyT3B0aW9ucyB8fFxuICAgICAgICAgICAgIXRyZWVEYXRhIHx8XG4gICAgICAgICAgICBpc0xvYWRpbmdTaXRlcyA/IChcbiAgICAgICAgICAgICAgPExvYWRlciAvPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPEF1dG9GaXRUcmVlXG4gICAgICAgICAgICAgICAgdHJlZUtleT17dHJlZUtleX1cbiAgICAgICAgICAgICAgICBpbml0aWFsRGVwdGg9ezEyfVxuICAgICAgICAgICAgICAgIGRhdGE9e3RyZWVEYXRhfVxuICAgICAgICAgICAgICAgIHNlbGVjdGVkRmlsdGVycz17ZmlsdGVyT3B0aW9uc31cbiAgICAgICAgICAgICAgICBvbk5vZGVDbGljaz17b25Ob2RlQ2xpY2t9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgICAgPFJpZ2h0UGFuZWxcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgcmlnaHQtcGFuZWwgJHtzaG93UmlnaHRQYW5lbCA/ICdvcGVuJyA6ICcnfWB9XG4gICAgICAgICAgICAgIHBvaW50PXtzZWxlY3RlZFBvaW50fVxuICAgICAgICAgICAgICBvbkNsb3NlPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0U2VsZWN0ZWRQb2ludChudWxsKTtcbiAgICAgICAgICAgICAgICBzZXRTaG93UmlnaHRQYW5lbChmYWxzZSk7XG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvQ29sPlxuICAgICAgICA8L1Jvdz5cbiAgICAgIDwvQ29udGFpbmVyPlxuICAgIDwvZGl2PlxuICApO1xufTtcbmV4cG9ydCBkZWZhdWx0IEhpZXJhcmNoeUdyYXBoO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFdBQUEs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
|
|
@@ -18,35 +18,35 @@ var _theme = require("../../styles/theme/theme");
|
|
|
18
18
|
var _icons = require("utilities/map/icons");
|
|
19
19
|
require("./style.scss");
|
|
20
20
|
var NodeLayout = function NodeLayout(_ref) {
|
|
21
|
-
var _nodeDatum$attributes, _nodeDatum$attributes2, _nodeDatum$
|
|
21
|
+
var _nodeDatum$attributes, _nodeDatum$attributes2, _nodeDatum$attributes3, _nodeDatum$attributes4, _nodeDatum$attributes5;
|
|
22
22
|
var nodeDatum = _ref.nodeDatum,
|
|
23
23
|
toggleNode = _ref.toggleNode,
|
|
24
24
|
searchTerm = _ref.searchTerm,
|
|
25
25
|
showSamplers = _ref.showSamplers,
|
|
26
|
+
_ref$isHighlight = _ref.isHighlight,
|
|
27
|
+
isHighlight = _ref$isHighlight === void 0 ? false : _ref$isHighlight,
|
|
26
28
|
children = _ref.children,
|
|
27
29
|
contentStyle = _ref.contentStyle;
|
|
28
30
|
var factoryType = ((_nodeDatum$attributes = nodeDatum.attributes) === null || _nodeDatum$attributes === void 0 ? void 0 : _nodeDatum$attributes.type) || '';
|
|
29
31
|
var isLeafNode = !nodeDatum.children || nodeDatum.children.length === 0;
|
|
30
32
|
var isMonitored = (_nodeDatum$attributes2 = nodeDatum.attributes) === null || _nodeDatum$attributes2 === void 0 ? void 0 : _nodeDatum$attributes2.monitored;
|
|
31
|
-
var borderColor = _theme.theme.natural.
|
|
32
|
-
var isHighlighted = !!searchTerm && (((_nodeDatum$name = nodeDatum.name) === null || _nodeDatum$name === void 0 ? void 0 : (_nodeDatum$name$toLow = _nodeDatum$name.toLowerCase()) === null || _nodeDatum$name$toLow === void 0 ? void 0 : _nodeDatum$name$toLow.includes(searchTerm.toLowerCase())) || (nodeDatum === null || nodeDatum === void 0 ? void 0 : (_nodeDatum$attributes3 = nodeDatum.attributes) === null || _nodeDatum$attributes3 === void 0 ? void 0 : (_nodeDatum$attributes4 = _nodeDatum$attributes3.area_name) === null || _nodeDatum$attributes4 === void 0 ? void 0 : (_nodeDatum$attributes5 = _nodeDatum$attributes4.toLowerCase()) === null || _nodeDatum$attributes5 === void 0 ? void 0 : _nodeDatum$attributes5.includes(searchTerm.toLowerCase())));
|
|
33
|
-
// const isFocused = siteID === nodeDatum.attributes?.point_id?.toString();
|
|
34
|
-
|
|
33
|
+
var borderColor = _theme.theme.natural.n60;
|
|
35
34
|
var cardStyle = {
|
|
36
35
|
borderRadius: '4px',
|
|
37
|
-
borderColor:
|
|
36
|
+
borderColor: isHighlight ? _theme.theme.brand.surface.muted : borderColor,
|
|
38
37
|
borderStyle: isMonitored ? 'solid' : 'dashed',
|
|
39
38
|
borderWidth: '3px',
|
|
39
|
+
color: isHighlight ? 'white' : _theme.theme.natural.text.default,
|
|
40
40
|
backgroundColor: '#FFFFFF',
|
|
41
41
|
stroke: 'none',
|
|
42
42
|
height: '170px'
|
|
43
43
|
};
|
|
44
|
-
var title = factoryType === 'area' ? ((_nodeDatum$
|
|
44
|
+
var title = factoryType === 'area' ? ((_nodeDatum$attributes3 = nodeDatum.attributes) === null || _nodeDatum$attributes3 === void 0 ? void 0 : _nodeDatum$attributes3.area_name) || nodeDatum.name : nodeDatum.name;
|
|
45
45
|
// const onShowDetails = (event) => {
|
|
46
46
|
// event.stopPropagation();
|
|
47
47
|
// onNodeClick(nodeDatum);
|
|
48
48
|
// };
|
|
49
|
-
var isShowSampler = showSamplers && ((_nodeDatum$
|
|
49
|
+
var isShowSampler = showSamplers && ((_nodeDatum$attributes4 = nodeDatum.attributes) === null || _nodeDatum$attributes4 === void 0 ? void 0 : _nodeDatum$attributes4.has_sampler);
|
|
50
50
|
if (!nodeDatum.name) {
|
|
51
51
|
return null;
|
|
52
52
|
}
|
|
@@ -54,15 +54,16 @@ var NodeLayout = function NodeLayout(_ref) {
|
|
|
54
54
|
onClick: toggleNode,
|
|
55
55
|
style: {
|
|
56
56
|
cursor: 'pointer'
|
|
57
|
-
}
|
|
57
|
+
},
|
|
58
|
+
className: isHighlight ? 'highlight' : ''
|
|
58
59
|
}, /*#__PURE__*/_react.default.createElement("foreignObject", {
|
|
59
60
|
x: "-100",
|
|
60
61
|
y: "-137",
|
|
61
62
|
width: "200",
|
|
62
63
|
height: "250"
|
|
63
|
-
}, ((_nodeDatum$
|
|
64
|
+
}, ((_nodeDatum$attributes5 = nodeDatum.attributes) === null || _nodeDatum$attributes5 === void 0 ? void 0 : _nodeDatum$attributes5.point_id) && /*#__PURE__*/_react.default.createElement(_utils.ActionsContainer, null, /*#__PURE__*/_react.default.createElement(_StyledLink.StyledLink, {
|
|
64
65
|
style: {
|
|
65
|
-
stroke: _theme.theme.brand.surface.
|
|
66
|
+
stroke: _theme.theme.brand.surface.muted,
|
|
66
67
|
strokeWidth: 1,
|
|
67
68
|
background: 'white',
|
|
68
69
|
marginInlineStart: 64
|
|
@@ -105,7 +106,8 @@ var NodeLayout = function NodeLayout(_ref) {
|
|
|
105
106
|
style: cardStyle,
|
|
106
107
|
headerRight: /*#__PURE__*/_react.default.createElement(_NodeIcon.default, {
|
|
107
108
|
type: factoryType
|
|
108
|
-
})
|
|
109
|
+
}),
|
|
110
|
+
linkedHeaderUrl: nodeDatum.attributes ? "/dashboard_v2/site/".concat(nodeDatum.attributes.point_id) : ''
|
|
109
111
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
110
112
|
className: 'node-content',
|
|
111
113
|
style: contentStyle
|
|
@@ -115,4 +117,4 @@ var NodeLayout = function NodeLayout(_ref) {
|
|
|
115
117
|
};
|
|
116
118
|
var _default = NodeLayout;
|
|
117
119
|
exports.default = _default;
|
|
118
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9DYXJkTGF5b3V0IiwiX05vZGVJY29uIiwiX1RvcE5hdmJhciIsIl9TdHlsZWRMaW5rIiwiX3V0aWxzIiwiX0xlYWZTaWduIiwiX3JlYWN0STE4bmV4dCIsIl9yZWFjdEJvb3RzdHJhcCIsIl90aGVtZSIsIl9pY29ucyIsIk5vZGVMYXlvdXQiLCJfcmVmIiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzIiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzMiIsIl9ub2RlRGF0dW0kbmFtZSIsIl9ub2RlRGF0dW0kbmFtZSR0b0xvdyIsIl9ub2RlRGF0dW0kYXR0cmlidXRlczMiLCJfbm9kZURhdHVtJGF0dHJpYnV0ZXM0IiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzNSIsIl9ub2RlRGF0dW0kYXR0cmlidXRlczYiLCJfbm9kZURhdHVtJGF0dHJpYnV0ZXM3IiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzOCIsIm5vZGVEYXR1bSIsInRvZ2dsZU5vZGUiLCJzZWFyY2hUZXJtIiwic2hvd1NhbXBsZXJzIiwiY2hpbGRyZW4iLCJjb250ZW50U3R5bGUiLCJmYWN0b3J5VHlwZSIsImF0dHJpYnV0ZXMiLCJ0eXBlIiwiaXNMZWFmTm9kZSIsImxlbmd0aCIsImlzTW9uaXRvcmVkIiwibW9uaXRvcmVkIiwiYm9yZGVyQ29sb3IiLCJ0aGVtZSIsIm5hdHVyYWwiLCJuMzAiLCJpc0hpZ2hsaWdodGVkIiwibmFtZSIsInRvTG93ZXJDYXNlIiwiaW5jbHVkZXMiLCJhcmVhX25hbWUiLCJjYXJkU3R5bGUiLCJib3JkZXJSYWRpdXMiLCJicmFuZCIsInN1cmZhY2UiLCJtdXRlZCIsImJvcmRlclN0eWxlIiwiYm9yZGVyV2lkdGgiLCJiYWNrZ3JvdW5kQ29sb3IiLCJzdHJva2UiLCJoZWlnaHQiLCJ0aXRsZSIsImlzU2hvd1NhbXBsZXIiLCJoYXNfc2FtcGxlciIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50Iiwib25DbGljayIsInN0eWxlIiwiY3Vyc29yIiwieCIsInkiLCJ3aWR0aCIsInBvaW50X2lkIiwiQWN0aW9uc0NvbnRhaW5lciIsIlN0eWxlZExpbmsiLCJzdHJva2VXaWR0aCIsImJhY2tncm91bmQiLCJtYXJnaW5JbmxpbmVTdGFydCIsInRhcmdldCIsInVwZGF0ZVBhcmFtcyIsInZpZXciLCJ0byIsImNvbmNhdCIsImUiLCJzdG9wUHJvcGFnYXRpb24iLCJPdmVybGF5VHJpZ2dlciIsIm92ZXJsYXkiLCJUb29sdGlwIiwiaWQiLCJwbGFjZW1lbnQiLCJUcmFucyIsImkxOG5LZXkiLCJNYXBTdmciLCJjbGFzc05hbWUiLCJzcmMiLCJzYW1wbGVySWNvbiIsImFsdCIsImhlYWRlclJpZ2h0IiwiY29sb3IiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdWkta2l0L0hpZXJhcmNoeUdyYXBoL05vZGVMYXlvdXQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgQ2FyZExheW91dCBmcm9tICcuLi8uLi9XaWRnZXRzL01vc3RQb2xsdXRpbmcvRmFjdG9yaWVzL0ZhY3RvcnlCb3gvQ2FyZExheW91dCc7XG5pbXBvcnQgTm9kZUljb24gZnJvbSAnLi9Ob2RlSWNvbic7XG5pbXBvcnQgeyBNYXBTdmcgfSBmcm9tICcuLi8uLi9hc3NldHMvaWNvbnMvVG9wTmF2YmFyJztcbmltcG9ydCB7IFN0eWxlZExpbmsgfSBmcm9tICdzcmMvY29tcG9uZW50cy9MaW5rcy9TdHlsZWRMaW5rL1N0eWxlZExpbmsnO1xuaW1wb3J0IHsgQWN0aW9uc0NvbnRhaW5lciwgTm9kZVByb3BzIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgTGVhZlNpZ24gZnJvbSAnLi9MZWFmU2lnbic7XG5pbXBvcnQgeyBUcmFucyB9IGZyb20gJ3JlYWN0LWkxOG5leHQnO1xuaW1wb3J0IHsgT3ZlcmxheVRyaWdnZXIsIFRvb2x0aXAgfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICcuLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgc2FtcGxlckljb24gfSBmcm9tICdzcmMvdXRpbGl0aWVzL21hcC9pY29ucyc7XG5pbXBvcnQgJy4vc3R5bGUuc2Nzcyc7XG5cbmNvbnN0IE5vZGVMYXlvdXQgPSAoe1xuICBub2RlRGF0dW0sXG4gIHRvZ2dsZU5vZGUsXG4gIHNlYXJjaFRlcm0sXG4gIHNob3dTYW1wbGVycyxcbiAgY2hpbGRyZW4sXG4gIGNvbnRlbnRTdHlsZSxcbn06IE5vZGVQcm9wcykgPT4ge1xuICBjb25zdCBmYWN0b3J5VHlwZSA9IG5vZGVEYXR1bS5hdHRyaWJ1dGVzPy50eXBlIHx8ICcnO1xuICBjb25zdCBpc0xlYWZOb2RlID0gIW5vZGVEYXR1bS5jaGlsZHJlbiB8fCBub2RlRGF0dW0uY2hpbGRyZW4ubGVuZ3RoID09PSAwO1xuICBjb25zdCBpc01vbml0b3JlZCA9IG5vZGVEYXR1bS5hdHRyaWJ1dGVzPy5tb25pdG9yZWQ7XG4gIGNvbnN0IGJvcmRlckNvbG9yID0gdGhlbWUubmF0dXJhbC5uMzA7XG4gIGNvbnN0IGlzSGlnaGxpZ2h0ZWQgPVxuICAgICEhc2VhcmNoVGVybSAmJlxuICAgIChub2RlRGF0dW0ubmFtZT8udG9Mb3dlckNhc2UoKT8uaW5jbHVkZXMoc2VhcmNoVGVybS50b0xvd2VyQ2FzZSgpKSB8fFxuICAgICAgbm9kZURhdHVtPy5hdHRyaWJ1dGVzPy5hcmVhX25hbWVcbiAgICAgICAgPy50b0xvd2VyQ2FzZSgpXG4gICAgICAgID8uaW5jbHVkZXMoc2VhcmNoVGVybS50b0xvd2VyQ2FzZSgpKSk7XG4gIC8vIGNvbnN0IGlzRm9jdXNlZCA9IHNpdGVJRCA9PT0gbm9kZURhdHVtLmF0dHJpYnV0ZXM/LnBvaW50X2lkPy50b1N0cmluZygpO1xuXG4gIGNvbnN0IGNhcmRTdHlsZTogUmVhY3QuQ1NTUHJvcGVydGllcyA9IHtcbiAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxuICAgIGJvcmRlckNvbG9yOiBpc0hpZ2hsaWdodGVkID8gdGhlbWUuYnJhbmQuc3VyZmFjZS5tdXRlZCA6IGJvcmRlckNvbG9yLFxuICAgIGJvcmRlclN0eWxlOiBpc01vbml0b3JlZCA/ICdzb2xpZCcgOiAnZGFzaGVkJyxcbiAgICBib3JkZXJXaWR0aDogJzNweCcsXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRicsXG4gICAgc3Ryb2tlOiAnbm9uZScsXG4gICAgaGVpZ2h0OiAnMTcwcHgnLFxuICB9O1xuICBjb25zdCB0aXRsZSA9XG4gICAgZmFjdG9yeVR5cGUgPT09ICdhcmVhJ1xuICAgICAgPyBub2RlRGF0dW0uYXR0cmlidXRlcz8uYXJlYV9uYW1lIHx8IG5vZGVEYXR1bS5uYW1lXG4gICAgICA6IG5vZGVEYXR1bS5uYW1lO1xuICAvLyBjb25zdCBvblNob3dEZXRhaWxzID0gKGV2ZW50KSA9PiB7XG4gIC8vICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIC8vICAgb25Ob2RlQ2xpY2sobm9kZURhdHVtKTtcbiAgLy8gfTtcbiAgY29uc3QgaXNTaG93U2FtcGxlciA9IHNob3dTYW1wbGVycyAmJiBub2RlRGF0dW0uYXR0cmlidXRlcz8uaGFzX3NhbXBsZXI7XG5cbiAgaWYgKCFub2RlRGF0dW0ubmFtZSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiAoXG4gICAgPGcgb25DbGljaz17dG9nZ2xlTm9kZX0gc3R5bGU9e3sgY3Vyc29yOiAncG9pbnRlcicgfX0+XG4gICAgICA8Zm9yZWlnbk9iamVjdCB4PVwiLTEwMFwiIHk9XCItMTM3XCIgd2lkdGg9XCIyMDBcIiBoZWlnaHQ9XCIyNTBcIj5cbiAgICAgICAge25vZGVEYXR1bS5hdHRyaWJ1dGVzPy5wb2ludF9pZCAmJiAoXG4gICAgICAgICAgPEFjdGlvbnNDb250YWluZXI+XG4gICAgICAgICAgICB7Lyp7ZWFybHlBZG9wdGVyICYmICgqL31cbiAgICAgICAgICAgIHsvKiAgPHNwYW4gc3R5bGU9e3sgbWFyZ2luSW5saW5lRW5kOiAnOHB4JyB9fT4qL31cbiAgICAgICAgICAgIHsvKiAgICA8T3ZlcmxheVRyaWdnZXIqL31cbiAgICAgICAgICAgIHsvKiAgICAgIG92ZXJsYXk9eyovfVxuICAgICAgICAgICAgey8qICAgICAgICA8VG9vbHRpcCBpZD17J2RldGFpbHMnfSBwbGFjZW1lbnQ9XCJhdXRvXCI+Ki99XG4gICAgICAgICAgICB7LyogICAgICAgICAgPFRyYW5zKi99XG4gICAgICAgICAgICB7LyogICAgICAgICAgICBpMThuS2V5PXsnZ3JvdXBfc2NyZWVuLmdlbmVyYWxfdGFiLmdyb3VwX2RldGFpbHMnfSovfVxuICAgICAgICAgICAgey8qICAgICAgICAgIC8+Ki99XG4gICAgICAgICAgICB7LyogICAgICAgIDwvVG9vbHRpcD4qL31cbiAgICAgICAgICAgIHsvKiAgICAgIH0qL31cbiAgICAgICAgICAgIHsvKiAgICA+Ki99XG4gICAgICAgICAgICB7LyogICAgICA8RGV0YWlsc1N2ZyBvbkNsaWNrPXtvblNob3dEZXRhaWxzfSAvPiovfVxuICAgICAgICAgICAgey8qICAgIDwvT3ZlcmxheVRyaWdnZXI+Ki99XG4gICAgICAgICAgICB7LyogIDwvc3Bhbj4qL31cbiAgICAgICAgICAgIHsvKil9Ki99XG4gICAgICAgICAgICA8U3R5bGVkTGlua1xuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIHN0cm9rZTogdGhlbWUuYnJhbmQuc3VyZmFjZS5kZWZhdWx0LFxuICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAxLFxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICd3aGl0ZScsXG4gICAgICAgICAgICAgICAgbWFyZ2luSW5saW5lU3RhcnQ6IDY0LFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICB1cGRhdGVQYXJhbXM9e3sgdmlldzogJ21hcCcgfX1cbiAgICAgICAgICAgICAgdG89e2AvZGFzaGJvYXJkX3YyL3NpdGUvJHtub2RlRGF0dW0uYXR0cmlidXRlcy5wb2ludF9pZH1gfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoZSkgPT4gZS5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPE92ZXJsYXlUcmlnZ2VyXG4gICAgICAgICAgICAgICAgb3ZlcmxheT17XG4gICAgICAgICAgICAgICAgICA8VG9vbHRpcCBpZD1cIm1hcFwiIHBsYWNlbWVudD1cImF1dG9cIj5cbiAgICAgICAgICAgICAgICAgICAgPFRyYW5zIGkxOG5LZXk9eydoZWFkZXIubWFwJ30gLz5cbiAgICAgICAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8TWFwU3ZnIHN0eWxlPXt7IHdpZHRoOiA1NSwgaGVpZ2h0OiA1NSB9fSAvPlxuICAgICAgICAgICAgICA8L092ZXJsYXlUcmlnZ2VyPlxuICAgICAgICAgICAgPC9TdHlsZWRMaW5rPlxuICAgICAgICAgICAge2lzU2hvd1NhbXBsZXIgJiYgKFxuICAgICAgICAgICAgICA8T3ZlcmxheVRyaWdnZXJcbiAgICAgICAgICAgICAgICBvdmVybGF5PXtcbiAgICAgICAgICAgICAgICAgIDxUb29sdGlwIGlkPVwic2FtcGxlclwiIHBsYWNlbWVudD1cImF1dG9cIj5cbiAgICAgICAgICAgICAgICAgICAgPFRyYW5zXG4gICAgICAgICAgICAgICAgICAgICAgaTE4bktleT17XG4gICAgICAgICAgICAgICAgICAgICAgICAnZGFzaGJvYXJkX3YyLnV0aWxpdHlfZGFzaGJvYXJkLmhpZXJhcmNoeS5zYW1wbGVyJ1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eydzYW1wbGVyLWljb24taG9sZGVyJ30+XG4gICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgIHNyYz17c2FtcGxlckljb24oKX1cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwic2FtcGxlci1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgYWx0PXsnc2FtcGxlcid9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9PdmVybGF5VHJpZ2dlcj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9BY3Rpb25zQ29udGFpbmVyPlxuICAgICAgICApfVxuICAgICAgICA8Q2FyZExheW91dFxuICAgICAgICAgIHRpdGxlPXt0aXRsZX1cbiAgICAgICAgICBzdHlsZT17Y2FyZFN0eWxlfVxuICAgICAgICAgIGhlYWRlclJpZ2h0PXs8Tm9kZUljb24gdHlwZT17ZmFjdG9yeVR5cGV9IC8+fVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydub2RlLWNvbnRlbnQnfSBzdHlsZT17Y29udGVudFN0eWxlfT5cbiAgICAgICAgICAgIHtub2RlRGF0dW0uYXR0cmlidXRlcyAmJiBpc01vbml0b3JlZCAmJiBjaGlsZHJlbn1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9DYXJkTGF5b3V0PlxuICAgICAgPC9mb3JlaWduT2JqZWN0PlxuICAgICAge2lzTGVhZk5vZGUgJiYgPExlYWZTaWduIGNvbG9yPXtib3JkZXJDb2xvcn0gLz59XG4gICAgPC9nPlxuICApO1xufTtcbmV4cG9ydCBkZWZhdWx0IE5vZGVMYXlvdXQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxTQUFBLEdBQUFILHNCQUFBLENB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
|
|
120
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9DYXJkTGF5b3V0IiwiX05vZGVJY29uIiwiX1RvcE5hdmJhciIsIl9TdHlsZWRMaW5rIiwiX3V0aWxzIiwiX0xlYWZTaWduIiwiX3JlYWN0STE4bmV4dCIsIl9yZWFjdEJvb3RzdHJhcCIsIl90aGVtZSIsIl9pY29ucyIsIk5vZGVMYXlvdXQiLCJfcmVmIiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzIiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzMiIsIl9ub2RlRGF0dW0kYXR0cmlidXRlczMiLCJfbm9kZURhdHVtJGF0dHJpYnV0ZXM0IiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzNSIsIm5vZGVEYXR1bSIsInRvZ2dsZU5vZGUiLCJzZWFyY2hUZXJtIiwic2hvd1NhbXBsZXJzIiwiX3JlZiRpc0hpZ2hsaWdodCIsImlzSGlnaGxpZ2h0IiwiY2hpbGRyZW4iLCJjb250ZW50U3R5bGUiLCJmYWN0b3J5VHlwZSIsImF0dHJpYnV0ZXMiLCJ0eXBlIiwiaXNMZWFmTm9kZSIsImxlbmd0aCIsImlzTW9uaXRvcmVkIiwibW9uaXRvcmVkIiwiYm9yZGVyQ29sb3IiLCJ0aGVtZSIsIm5hdHVyYWwiLCJuNjAiLCJjYXJkU3R5bGUiLCJib3JkZXJSYWRpdXMiLCJicmFuZCIsInN1cmZhY2UiLCJtdXRlZCIsImJvcmRlclN0eWxlIiwiYm9yZGVyV2lkdGgiLCJjb2xvciIsInRleHQiLCJkZWZhdWx0IiwiYmFja2dyb3VuZENvbG9yIiwic3Ryb2tlIiwiaGVpZ2h0IiwidGl0bGUiLCJhcmVhX25hbWUiLCJuYW1lIiwiaXNTaG93U2FtcGxlciIsImhhc19zYW1wbGVyIiwiY3JlYXRlRWxlbWVudCIsIm9uQ2xpY2siLCJzdHlsZSIsImN1cnNvciIsImNsYXNzTmFtZSIsIngiLCJ5Iiwid2lkdGgiLCJwb2ludF9pZCIsIkFjdGlvbnNDb250YWluZXIiLCJTdHlsZWRMaW5rIiwic3Ryb2tlV2lkdGgiLCJiYWNrZ3JvdW5kIiwibWFyZ2luSW5saW5lU3RhcnQiLCJ0YXJnZXQiLCJ1cGRhdGVQYXJhbXMiLCJ2aWV3IiwidG8iLCJjb25jYXQiLCJlIiwic3RvcFByb3BhZ2F0aW9uIiwiT3ZlcmxheVRyaWdnZXIiLCJvdmVybGF5IiwiVG9vbHRpcCIsImlkIiwicGxhY2VtZW50IiwiVHJhbnMiLCJpMThuS2V5IiwiTWFwU3ZnIiwic3JjIiwic2FtcGxlckljb24iLCJhbHQiLCJoZWFkZXJSaWdodCIsImxpbmtlZEhlYWRlclVybCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91aS1raXQvSGllcmFyY2h5R3JhcGgvTm9kZUxheW91dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBDYXJkTGF5b3V0IGZyb20gJy4uLy4uL1dpZGdldHMvTW9zdFBvbGx1dGluZy9GYWN0b3JpZXMvRmFjdG9yeUJveC9DYXJkTGF5b3V0JztcbmltcG9ydCBOb2RlSWNvbiBmcm9tICcuL05vZGVJY29uJztcbmltcG9ydCB7IE1hcFN2ZyB9IGZyb20gJy4uLy4uL2Fzc2V0cy9pY29ucy9Ub3BOYXZiYXInO1xuaW1wb3J0IHsgU3R5bGVkTGluayB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0xpbmtzL1N0eWxlZExpbmsvU3R5bGVkTGluayc7XG5pbXBvcnQgeyBBY3Rpb25zQ29udGFpbmVyLCBOb2RlUHJvcHMgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCBMZWFmU2lnbiBmcm9tICcuL0xlYWZTaWduJztcbmltcG9ydCB7IFRyYW5zIH0gZnJvbSAncmVhY3QtaTE4bmV4dCc7XG5pbXBvcnQgeyBPdmVybGF5VHJpZ2dlciwgVG9vbHRpcCB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyB0aGVtZSB9IGZyb20gJy4uLy4uL3N0eWxlcy90aGVtZS90aGVtZSc7XG5pbXBvcnQgeyBzYW1wbGVySWNvbiB9IGZyb20gJ3NyYy91dGlsaXRpZXMvbWFwL2ljb25zJztcbmltcG9ydCAnLi9zdHlsZS5zY3NzJztcblxuY29uc3QgTm9kZUxheW91dCA9ICh7XG4gIG5vZGVEYXR1bSxcbiAgdG9nZ2xlTm9kZSxcbiAgc2VhcmNoVGVybSxcbiAgc2hvd1NhbXBsZXJzLFxuICBpc0hpZ2hsaWdodCA9IGZhbHNlLFxuICBjaGlsZHJlbixcbiAgY29udGVudFN0eWxlLFxufTogTm9kZVByb3BzKSA9PiB7XG4gIGNvbnN0IGZhY3RvcnlUeXBlID0gbm9kZURhdHVtLmF0dHJpYnV0ZXM/LnR5cGUgfHwgJyc7XG4gIGNvbnN0IGlzTGVhZk5vZGUgPSAhbm9kZURhdHVtLmNoaWxkcmVuIHx8IG5vZGVEYXR1bS5jaGlsZHJlbi5sZW5ndGggPT09IDA7XG4gIGNvbnN0IGlzTW9uaXRvcmVkID0gbm9kZURhdHVtLmF0dHJpYnV0ZXM/Lm1vbml0b3JlZDtcbiAgY29uc3QgYm9yZGVyQ29sb3IgPSB0aGVtZS5uYXR1cmFsLm42MDtcblxuICBjb25zdCBjYXJkU3R5bGU6IFJlYWN0LkNTU1Byb3BlcnRpZXMgPSB7XG4gICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcbiAgICBib3JkZXJDb2xvcjogaXNIaWdobGlnaHQgPyB0aGVtZS5icmFuZC5zdXJmYWNlLm11dGVkIDogYm9yZGVyQ29sb3IsXG4gICAgYm9yZGVyU3R5bGU6IGlzTW9uaXRvcmVkID8gJ3NvbGlkJyA6ICdkYXNoZWQnLFxuICAgIGJvcmRlcldpZHRoOiAnM3B4JyxcbiAgICBjb2xvcjogaXNIaWdobGlnaHQgPyAnd2hpdGUnIDogdGhlbWUubmF0dXJhbC50ZXh0LmRlZmF1bHQsXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRicsXG4gICAgc3Ryb2tlOiAnbm9uZScsXG4gICAgaGVpZ2h0OiAnMTcwcHgnLFxuICB9O1xuICBjb25zdCB0aXRsZSA9XG4gICAgZmFjdG9yeVR5cGUgPT09ICdhcmVhJ1xuICAgICAgPyBub2RlRGF0dW0uYXR0cmlidXRlcz8uYXJlYV9uYW1lIHx8IG5vZGVEYXR1bS5uYW1lXG4gICAgICA6IG5vZGVEYXR1bS5uYW1lO1xuICAvLyBjb25zdCBvblNob3dEZXRhaWxzID0gKGV2ZW50KSA9PiB7XG4gIC8vICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIC8vICAgb25Ob2RlQ2xpY2sobm9kZURhdHVtKTtcbiAgLy8gfTtcbiAgY29uc3QgaXNTaG93U2FtcGxlciA9IHNob3dTYW1wbGVycyAmJiBub2RlRGF0dW0uYXR0cmlidXRlcz8uaGFzX3NhbXBsZXI7XG5cbiAgaWYgKCFub2RlRGF0dW0ubmFtZSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiAoXG4gICAgPGdcbiAgICAgIG9uQ2xpY2s9e3RvZ2dsZU5vZGV9XG4gICAgICBzdHlsZT17eyBjdXJzb3I6ICdwb2ludGVyJyB9fVxuICAgICAgY2xhc3NOYW1lPXtpc0hpZ2hsaWdodCA/ICdoaWdobGlnaHQnIDogJyd9XG4gICAgPlxuICAgICAgPGZvcmVpZ25PYmplY3QgeD1cIi0xMDBcIiB5PVwiLTEzN1wiIHdpZHRoPVwiMjAwXCIgaGVpZ2h0PVwiMjUwXCI+XG4gICAgICAgIHtub2RlRGF0dW0uYXR0cmlidXRlcz8ucG9pbnRfaWQgJiYgKFxuICAgICAgICAgIDxBY3Rpb25zQ29udGFpbmVyPlxuICAgICAgICAgICAgey8qe2Vhcmx5QWRvcHRlciAmJiAoKi99XG4gICAgICAgICAgICB7LyogIDxzcGFuIHN0eWxlPXt7IG1hcmdpbklubGluZUVuZDogJzhweCcgfX0+Ki99XG4gICAgICAgICAgICB7LyogICAgPE92ZXJsYXlUcmlnZ2VyKi99XG4gICAgICAgICAgICB7LyogICAgICBvdmVybGF5PXsqL31cbiAgICAgICAgICAgIHsvKiAgICAgICAgPFRvb2x0aXAgaWQ9eydkZXRhaWxzJ30gcGxhY2VtZW50PVwiYXV0b1wiPiovfVxuICAgICAgICAgICAgey8qICAgICAgICAgIDxUcmFucyovfVxuICAgICAgICAgICAgey8qICAgICAgICAgICAgaTE4bktleT17J2dyb3VwX3NjcmVlbi5nZW5lcmFsX3RhYi5ncm91cF9kZXRhaWxzJ30qL31cbiAgICAgICAgICAgIHsvKiAgICAgICAgICAvPiovfVxuICAgICAgICAgICAgey8qICAgICAgICA8L1Rvb2x0aXA+Ki99XG4gICAgICAgICAgICB7LyogICAgICB9Ki99XG4gICAgICAgICAgICB7LyogICAgPiovfVxuICAgICAgICAgICAgey8qICAgICAgPERldGFpbHNTdmcgb25DbGljaz17b25TaG93RGV0YWlsc30gLz4qL31cbiAgICAgICAgICAgIHsvKiAgICA8L092ZXJsYXlUcmlnZ2VyPiovfVxuICAgICAgICAgICAgey8qICA8L3NwYW4+Ki99XG4gICAgICAgICAgICB7LyopfSovfVxuICAgICAgICAgICAgPFN0eWxlZExpbmtcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBzdHJva2U6IHRoZW1lLmJyYW5kLnN1cmZhY2UubXV0ZWQsXG4gICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDEsXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJ3doaXRlJyxcbiAgICAgICAgICAgICAgICBtYXJnaW5JbmxpbmVTdGFydDogNjQsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgIHVwZGF0ZVBhcmFtcz17eyB2aWV3OiAnbWFwJyB9fVxuICAgICAgICAgICAgICB0bz17YC9kYXNoYm9hcmRfdjIvc2l0ZS8ke25vZGVEYXR1bS5hdHRyaWJ1dGVzLnBvaW50X2lkfWB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eyhlKSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8T3ZlcmxheVRyaWdnZXJcbiAgICAgICAgICAgICAgICBvdmVybGF5PXtcbiAgICAgICAgICAgICAgICAgIDxUb29sdGlwIGlkPVwibWFwXCIgcGxhY2VtZW50PVwiYXV0b1wiPlxuICAgICAgICAgICAgICAgICAgICA8VHJhbnMgaTE4bktleT17J2hlYWRlci5tYXAnfSAvPlxuICAgICAgICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxNYXBTdmcgc3R5bGU9e3sgd2lkdGg6IDU1LCBoZWlnaHQ6IDU1IH19IC8+XG4gICAgICAgICAgICAgIDwvT3ZlcmxheVRyaWdnZXI+XG4gICAgICAgICAgICA8L1N0eWxlZExpbms+XG4gICAgICAgICAgICB7aXNTaG93U2FtcGxlciAmJiAoXG4gICAgICAgICAgICAgIDxPdmVybGF5VHJpZ2dlclxuICAgICAgICAgICAgICAgIG92ZXJsYXk9e1xuICAgICAgICAgICAgICAgICAgPFRvb2x0aXAgaWQ9XCJzYW1wbGVyXCIgcGxhY2VtZW50PVwiYXV0b1wiPlxuICAgICAgICAgICAgICAgICAgICA8VHJhbnNcbiAgICAgICAgICAgICAgICAgICAgICBpMThuS2V5PXtcbiAgICAgICAgICAgICAgICAgICAgICAgICdkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQuaGllcmFyY2h5LnNhbXBsZXInXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17J3NhbXBsZXItaWNvbi1ob2xkZXInfT5cbiAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgc3JjPXtzYW1wbGVySWNvbigpfVxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJzYW1wbGVyLWljb25cIlxuICAgICAgICAgICAgICAgICAgICBhbHQ9eydzYW1wbGVyJ31cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L092ZXJsYXlUcmlnZ2VyPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0FjdGlvbnNDb250YWluZXI+XG4gICAgICAgICl9XG4gICAgICAgIDxDYXJkTGF5b3V0XG4gICAgICAgICAgdGl0bGU9e3RpdGxlfVxuICAgICAgICAgIHN0eWxlPXtjYXJkU3R5bGV9XG4gICAgICAgICAgaGVhZGVyUmlnaHQ9ezxOb2RlSWNvbiB0eXBlPXtmYWN0b3J5VHlwZX0gLz59XG4gICAgICAgICAgbGlua2VkSGVhZGVyVXJsPXtcbiAgICAgICAgICAgIG5vZGVEYXR1bS5hdHRyaWJ1dGVzXG4gICAgICAgICAgICAgID8gYC9kYXNoYm9hcmRfdjIvc2l0ZS8ke25vZGVEYXR1bS5hdHRyaWJ1dGVzLnBvaW50X2lkfWBcbiAgICAgICAgICAgICAgOiAnJ1xuICAgICAgICAgIH1cbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnbm9kZS1jb250ZW50J30gc3R5bGU9e2NvbnRlbnRTdHlsZX0+XG4gICAgICAgICAgICB7bm9kZURhdHVtLmF0dHJpYnV0ZXMgJiYgaXNNb25pdG9yZWQgJiYgY2hpbGRyZW59XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvQ2FyZExheW91dD5cbiAgICAgIDwvZm9yZWlnbk9iamVjdD5cbiAgICAgIHtpc0xlYWZOb2RlICYmIDxMZWFmU2lnbiBjb2xvcj17Ym9yZGVyQ29sb3J9IC8+fVxuICAgIDwvZz5cbiAgKTtcbn07XG5leHBvcnQgZGVmYXVsdCBOb2RlTGF5b3V0O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsU0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsVUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssTUFBQSxHQUFBTCxPQUFBO0FB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
|
|
@@ -1,43 +1,69 @@
|
|
|
1
|
-
.
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
.hierarchy-graph-page {
|
|
2
|
+
.sampler-icon-holder {
|
|
3
|
+
margin-inline-start: 33px;
|
|
4
|
+
|
|
5
|
+
.sampler-icon {
|
|
6
|
+
width: 45px;
|
|
7
|
+
position: static;
|
|
8
|
+
margin-bottom: -30px;
|
|
9
|
+
}
|
|
7
10
|
}
|
|
8
|
-
|
|
9
|
-
.filter-container {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
|
|
12
|
+
.filter-container {
|
|
13
|
+
position: unset !important;
|
|
14
|
+
box-shadow: none;
|
|
15
|
+
padding-bottom: 0;
|
|
16
|
+
width: 100vw;
|
|
17
|
+
|
|
18
|
+
.filter-container__content__header {
|
|
19
|
+
justify-content: flex-start;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.filter-container__content__body {
|
|
23
|
+
margin-inline-start: -15px;
|
|
24
|
+
|
|
25
|
+
.filter_item:first-child {
|
|
26
|
+
margin-inline-start: 15px;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
16
29
|
}
|
|
17
|
-
.
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
30
|
+
.top {
|
|
31
|
+
.title {
|
|
32
|
+
color: #18191a;
|
|
33
|
+
a {
|
|
34
|
+
color: #18191a !important;
|
|
35
|
+
}
|
|
21
36
|
}
|
|
22
37
|
}
|
|
23
|
-
}
|
|
24
|
-
.node-content {
|
|
25
|
-
display: flex;
|
|
26
|
-
justify-content: center;
|
|
27
38
|
|
|
28
|
-
.
|
|
29
|
-
|
|
39
|
+
.highlight {
|
|
40
|
+
.top {
|
|
41
|
+
color: white;
|
|
42
|
+
background-color: #f59fb5 !important;
|
|
43
|
+
a {
|
|
44
|
+
color: white !important;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
30
47
|
}
|
|
31
48
|
|
|
32
|
-
.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
font-size: 22px;
|
|
36
|
-
text-align: center;
|
|
49
|
+
.node-content {
|
|
50
|
+
display: flex;
|
|
51
|
+
justify-content: center;
|
|
37
52
|
|
|
38
|
-
.score
|
|
39
|
-
|
|
53
|
+
.score {
|
|
54
|
+
height: fit-content;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.score-level {
|
|
58
|
+
width: fit-content;
|
|
59
|
+
line-height: 40px;
|
|
60
|
+
font-size: 22px;
|
|
40
61
|
text-align: center;
|
|
62
|
+
|
|
63
|
+
.score-item {
|
|
64
|
+
padding: 2px 8px;
|
|
65
|
+
text-align: center;
|
|
66
|
+
}
|
|
41
67
|
}
|
|
42
68
|
}
|
|
43
69
|
}
|
|
@@ -113,4 +113,4 @@ var ActionsContainer = _styledComponents.default.div.withConfig({
|
|
|
113
113
|
componentId: "sc-21qmj9-0"
|
|
114
114
|
})(["{}"]);
|
|
115
115
|
exports.ActionsContainer = ActionsContainer;
|
|
116
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFRyZWUiLCJjb25uZWN0aW9ucyIsInBvaW50X2RhdGEiLCJ1dGlsaXR5X25hbWUiLCJub2RlcyIsImNoaWxkcmVuIiwiU2V0IiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIyIiwiZGVmYXVsdCIsIl9zdGVwIiwicyIsIm4iLCJkb25lIiwiX3N0ZXAkdmFsdWUiLCJ2YWx1ZSIsInNvdXJjZV9wb2ludF9pZCIsInRhcmdldF9wb2ludF9pZCIsImRpc3RhbmNlIiwiX3JlZiIsIm5hbWUiLCJzb3VyY2VEYXRhIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsIl9leGNsdWRlZCIsInRhcmdldF9kYXRhIiwiYXR0cmlidXRlcyIsIl9vYmplY3RTcHJlYWQyIiwicG9pbnRfaWQiLCJwdXNoIiwiYWRkIiwiZXJyIiwiZSIsImYiLCJyb290cyIsIk9iamVjdCIsImtleXMiLCJmaWx0ZXIiLCJpZCIsImhhcyIsIk51bWJlciIsIm1hcCIsImxlbmd0aCIsIm1hcEJ5SWQiLCJpdGVtcyIsInJlZHVjZSIsImFjYyIsIl9yZWYyIiwiaGFzX2RldmljZSIsImdyb3VwIiwiYXJlYV9uYW1lIiwicHJvcHMiLCJfZXhjbHVkZWQyIiwibW9uaXRvcmVkIiwidHlwZSIsInNob3VsZEZpbHRlck91dCIsInJkM3RQcm9wcyIsInNlbGVjdGVkRmlsdGVycyIsIl9yZDN0UHJvcHMkbm9kZURhdHVtJCIsIl9yZDN0UHJvcHMkbm9kZURhdHVtJDIiLCJfcmQzdFByb3BzJG5vZGVEYXR1bSQzIiwiX3NlbGVjdGVkRmlsdGVycyRQb2luIiwiX3JkM3RQcm9wcyRub2RlRGF0dW0kNCIsIl9yZDN0UHJvcHMkbm9kZURhdHVtJDUiLCJpc01vbml0b3JlZCIsIm5vZGVEYXR1bSIsInNpdGVJZCIsInNlY3RvcklkIiwic2VjdG9yX2lkIiwiZmlsdGVyQnlTaXRlIiwiU2l0ZUZpbHRlckl0ZW0iLCJpbmNsdWRlcyIsImZpbHRlckJ5U2VjdG9yIiwiU2VjdG9yRmlsdGVySXRlbSIsInNob3dPbmx5TW9uaXRvcmVkIiwiUG9pbnRzTW9kZUZpbHRlckl0ZW0iLCJ0b1N0cmluZyIsImludGVyZXN0UG9pbnRzRmlsdGVyIiwiSW50ZXJlc3RQb2ludEZpbHRlckl0ZW0iLCJmaWx0ZXJCeUludGVyZXN0UG9pbnQiLCJmaWx0ZXJCeUFyZWEiLCJBcmVhRmlsdGVySXRlbSIsImFyZWFfaWQiLCJleHBvcnRzIiwiQWN0aW9uc0NvbnRhaW5lciIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3VpLWtpdC9IaWVyYXJjaHlHcmFwaC91dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnQgfSBmcm9tICcuLi8uLi9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5cbi8qKlxuICogQ29udmVydCBlZGdlcyB0byByb3dzIHN1aXRhYmxlIGZvciBkMy5zdHJhdGlmeSgpXG4gKiBSZXR1cm5zIGFuIGFycmF5IG9mIHsgaWQsIHBhcmVudElkLCBkaXN0YW5jZT8sIHNoYXBlX2RhdGE/IH1cbiAqIElmIG11bHRpcGxlIHJvb3RzIGV4aXN0LCB5b3UgY2FuIG9wdGlvbmFsbHkgYWRkIGEgc3VwZXIgcm9vdCByb3cuXG4gKi9cbnR5cGUgRWRnZSA9IHtcbiAgc291cmNlX3BvaW50X2lkOiBudW1iZXIgfCBzdHJpbmc7XG4gIHRhcmdldF9wb2ludF9pZDogbnVtYmVyIHwgc3RyaW5nO1xuICBkaXN0YW5jZT86IG51bWJlcjtcbn07XG50eXBlIFRyZWVOb2RlID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGNoaWxkcmVuPzogVHJlZU5vZGVbXTtcbiAgYXR0cmlidXRlcz86IHsgZGlzdGFuY2U6IG51bWJlcjsgdHlwZTogc3RyaW5nOyBtb25pdG9yZWQ6IGJvb2xlYW4gfTtcbn07XG5leHBvcnQgdHlwZSBUcmVlRGF0YSA9IFRyZWVOb2RlIHwgeyBuYW1lOiBzdHJpbmc7IGNoaWxkcmVuOiBUcmVlTm9kZVtdIH07XG5cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFRyZWUoXG4gIGNvbm5lY3Rpb25zOiBFZGdlW10sXG4gIHBvaW50X2RhdGEsXG4gIHV0aWxpdHlfbmFtZSxcbik6IFRyZWVEYXRhIHtcbiAgY29uc3Qgbm9kZXMgPSB7fTtcbiAgY29uc3QgY2hpbGRyZW4gPSBuZXcgU2V0KCk7XG5cbiAgLy8gQnVpbGQgbWFwIG9mIG5vZGVzIGFuZCB0cmFjayBjaGlsZHJlblxuICBmb3IgKGNvbnN0IHsgc291cmNlX3BvaW50X2lkLCB0YXJnZXRfcG9pbnRfaWQsIGRpc3RhbmNlIH0gb2YgY29ubmVjdGlvbnMpIHtcbiAgICBjb25zdCB7IG5hbWUsIC4uLnNvdXJjZURhdGEgfSA9IHBvaW50X2RhdGFbc291cmNlX3BvaW50X2lkXSB8fCB7fTtcbiAgICBpZiAoIW5vZGVzW3NvdXJjZV9wb2ludF9pZF0pXG4gICAgICBub2Rlc1tzb3VyY2VfcG9pbnRfaWRdID0ge1xuICAgICAgICBuYW1lLFxuICAgICAgICBjaGlsZHJlbjogW10sXG4gICAgICB9O1xuICAgIGlmICghbm9kZXNbdGFyZ2V0X3BvaW50X2lkXSkge1xuICAgICAgY29uc3QgdGFyZ2V0X2RhdGEgPSBwb2ludF9kYXRhW3RhcmdldF9wb2ludF9pZF0gfHwge307XG4gICAgICBub2Rlc1t0YXJnZXRfcG9pbnRfaWRdID0ge1xuICAgICAgICBuYW1lOiB0YXJnZXRfZGF0YS5uYW1lLFxuICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgLi4udGFyZ2V0X2RhdGEsXG4gICAgICAgICAgcG9pbnRfaWQ6IHRhcmdldF9wb2ludF9pZCxcbiAgICAgICAgfSxcbiAgICAgICAgY2hpbGRyZW46IFtdLFxuICAgICAgfTtcbiAgICB9XG4gICAgbm9kZXNbdGFyZ2V0X3BvaW50X2lkXS5jaGlsZHJlbi5wdXNoKG5vZGVzW3NvdXJjZV9wb2ludF9pZF0pO1xuICAgIGNoaWxkcmVuLmFkZChzb3VyY2VfcG9pbnRfaWQpO1xuICAgIG5vZGVzW3NvdXJjZV9wb2ludF9pZF0uYXR0cmlidXRlcyA9IHtcbiAgICAgIGRpc3RhbmNlLFxuICAgICAgLi4uc291cmNlRGF0YSxcbiAgICAgIHBvaW50X2lkOiBzb3VyY2VfcG9pbnRfaWQsXG4gICAgfTtcbiAgfVxuXG4gIC8vIEZpbmQgcm9vdChzKVxuICBjb25zdCByb290cyA9IE9iamVjdC5rZXlzKG5vZGVzKVxuICAgIC5maWx0ZXIoKGlkKSA9PiAhY2hpbGRyZW4uaGFzKE51bWJlcihpZCkpKVxuICAgIC5tYXAoKGlkKSA9PiBub2Rlc1tpZF0pO1xuXG4gIC8vIElmIG11bHRpcGxlIHJvb3RzIGV4aXN0LCB3cmFwIGluIGEgc3VwZXIgcm9vdFxuICByZXR1cm4gcm9vdHMubGVuZ3RoID09PSAxXG4gICAgPyByb290c1swXVxuICAgIDogeyBuYW1lOiB1dGlsaXR5X25hbWUsIGNoaWxkcmVuOiByb290cyB9O1xufVxudHlwZSBQb2ludERhdGEgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgbW9uaXRvcmVkOiBib29sZWFuO1xuICB0eXBlOiBzdHJpbmc7XG4gIGFyZWFfbmFtZT86IHN0cmluZztcbiAgc2NvcmU/OiBudW1iZXI7XG4gIHBvbGx1dGlvbj86IGFueTtcbn07XG5leHBvcnQgZnVuY3Rpb24gbWFwQnlJZChpdGVtczogSVBvaW50W10pOiBSZWNvcmQ8c3RyaW5nIHwgbnVtYmVyLCBQb2ludERhdGE+IHtcbiAgcmV0dXJuIGl0ZW1zLnJlZHVjZShcbiAgICAoYWNjLCB7IGlkLCBuYW1lLCBoYXNfZGV2aWNlLCBncm91cCwgYXJlYV9uYW1lLCAuLi5wcm9wcyB9KSA9PiB7XG4gICAgICBhY2NbaWRdID0ge1xuICAgICAgICAuLi5wcm9wcyxcbiAgICAgICAgbmFtZSxcbiAgICAgICAgbW9uaXRvcmVkOiBoYXNfZGV2aWNlLFxuICAgICAgICB0eXBlOiBhcmVhX25hbWUgPyAnYXJlYScgOiBncm91cC50eXBlLFxuICAgICAgICBhcmVhX25hbWUsXG4gICAgICB9O1xuICAgICAgcmV0dXJuIGFjYztcbiAgICB9LFxuICAgIHt9IGFzIFJlY29yZDxzdHJpbmcgfCBudW1iZXIsIFBvaW50RGF0YT4sXG4gICk7XG59XG5cbmV4cG9ydCB0eXBlIE5vZGVQcm9wcyA9IHtcbiAgbm9kZURhdHVtOiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGF0dHJpYnV0ZXM/OiB7XG4gICAgICBzY29yZT86IG51bWJlcjtcbiAgICAgIHR5cGU/OiBzdHJpbmc7XG4gICAgICBwb2ludF9pZD86IG51bWJlciB8IHN0cmluZztcbiAgICAgIGFyZWFfbmFtZT86IHN0cmluZztcbiAgICAgIG1vbml0b3JlZD86IGJvb2xlYW47XG4gICAgICBwb2xsdXRpb24/OiBhbnk7XG4gICAgICBzZWN0b3JfbmFtZT86IHN0cmluZztcbiAgICAgIGNvbnRyaWJ1dG9yX3BlcmNlbnRzOiBudW1iZXI7XG4gICAgfTtcbiAgICBjaGlsZHJlbj86IGFueVtdO1xuICB9O1xuICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0Tm9kZTtcbiAgc2VhcmNoVGVybT86IHN0cmluZztcbiAgdG9nZ2xlTm9kZTogKCkgPT4gdm9pZDtcbiAgb25Ob2RlQ2xpY2s6IChub2RlRGF0YTogYW55KSA9PiB2b2lkO1xuICBjb250ZW50U3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xuICBlYXJseUFkb3B0ZXI/OiBib29sZWFuO1xuICBzaG93U2FtcGxlcnM/OiBib29sZWFuO1xufTtcbmV4cG9ydCB0eXBlIEluc2lnaHREYXRhID0gJ3Njb3JlJyB8ICdwb2xsdXRpb25fY29udHJpYnV0b3InO1xuZXhwb3J0IGNvbnN0IHNob3VsZEZpbHRlck91dCA9IChyZDN0UHJvcHMsIHNlbGVjdGVkRmlsdGVycykgPT4ge1xuICBjb25zdCBpc01vbml0b3JlZCA9IHJkM3RQcm9wcy5ub2RlRGF0dW0uYXR0cmlidXRlcz8ubW9uaXRvcmVkO1xuICBjb25zdCBzaXRlSWQgPSByZDN0UHJvcHMubm9kZURhdHVtLmF0dHJpYnV0ZXM/LnBvaW50X2lkO1xuICBjb25zdCBzZWN0b3JJZCA9IHJkM3RQcm9wcy5ub2RlRGF0dW0uYXR0cmlidXRlcz8uc2VjdG9yX2lkO1xuICBjb25zdCBmaWx0ZXJCeVNpdGUgPVxuICAgIHNlbGVjdGVkRmlsdGVycz8uU2l0ZUZpbHRlckl0ZW0gJiZcbiAgICAhc2VsZWN0ZWRGaWx0ZXJzLlNpdGVGaWx0ZXJJdGVtLmluY2x1ZGVzKHNpdGVJZCk7XG4gIGNvbnN0IGZpbHRlckJ5U2VjdG9yID1cbiAgICBzZWxlY3RlZEZpbHRlcnM/LlNlY3RvckZpbHRlckl0ZW0gJiZcbiAgICAhc2VsZWN0ZWRGaWx0ZXJzLlNlY3RvckZpbHRlckl0ZW0uaW5jbHVkZXMoc2VjdG9ySWQpO1xuICBjb25zdCBzaG93T25seU1vbml0b3JlZCA9XG4gICAgc2VsZWN0ZWRGaWx0ZXJzPy5Qb2ludHNNb2RlRmlsdGVySXRlbT8udG9TdHJpbmcoKSA9PT0gJ21vbml0b3JlZCcgfHwgZmFsc2U7XG4gIGNvbnN0IGludGVyZXN0UG9pbnRzRmlsdGVyID0gc2VsZWN0ZWRGaWx0ZXJzPy5JbnRlcmVzdFBvaW50RmlsdGVySXRlbSB8fCBbXTtcbiAgY29uc3QgZmlsdGVyQnlJbnRlcmVzdFBvaW50ID1cbiAgICBpbnRlcmVzdFBvaW50c0ZpbHRlci5sZW5ndGggPiAwICYmXG4gICAgIWludGVyZXN0UG9pbnRzRmlsdGVyLmluY2x1ZGVzKHJkM3RQcm9wcy5ub2RlRGF0dW0uYXR0cmlidXRlcz8ucG9pbnRfaWQpO1xuICBjb25zdCBmaWx0ZXJCeUFyZWEgPVxuICAgIHNlbGVjdGVkRmlsdGVycz8uQXJlYUZpbHRlckl0ZW0gJiZcbiAgICBzZWxlY3RlZEZpbHRlcnMuQXJlYUZpbHRlckl0ZW0ubGVuZ3RoID4gMCAmJlxuICAgICFzZWxlY3RlZEZpbHRlcnMuQXJlYUZpbHRlckl0ZW0uaW5jbHVkZXMoXG4gICAgICByZDN0UHJvcHMubm9kZURhdHVtLmF0dHJpYnV0ZXM/LmFyZWFfaWQsXG4gICAgKTtcbiAgcmV0dXJuIChcbiAgICAoc2hvd09ubHlNb25pdG9yZWQgJiYgIWlzTW9uaXRvcmVkKSB8fFxuICAgIGZpbHRlckJ5U2l0ZSB8fFxuICAgIGZpbHRlckJ5SW50ZXJlc3RQb2ludCB8fFxuICAgIGZpbHRlckJ5QXJlYSB8fFxuICAgIGZpbHRlckJ5U2VjdG9yXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgQWN0aW9uc0NvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gICB7XG4gICAgLy90ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQWFPLFNBQVNBLFNBQVNBLENBQ3ZCQyxXQUFtQixFQUNuQkMsVUFBVSxFQUNWQyxZQUFZLEVBQ0Y7RUFDVixJQUFNQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0VBQ2hCLElBQU1DLFFBQVEsR0FBRyxJQUFJQyxHQUFHLENBQUMsQ0FBQzs7RUFFMUI7RUFBQSxJQUFBQyxTQUFBLE9BQUFDLDJCQUFBLENBQUFDLE9BQUEsRUFDNkRSLFdBQVc7SUFBQVMsS0FBQTtFQUFBO0lBQXhFLEtBQUFILFNBQUEsQ0FBQUksQ0FBQSxNQUFBRCxLQUFBLEdBQUFILFNBQUEsQ0FBQUssQ0FBQSxJQUFBQyxJQUFBLEdBQTBFO01BQUEsSUFBQUMsV0FBQSxHQUFBSixLQUFBLENBQUFLLEtBQUE7UUFBN0RDLGVBQWUsR0FBQUYsV0FBQSxDQUFmRSxlQUFlO1FBQUVDLGVBQWUsR0FBQUgsV0FBQSxDQUFmRyxlQUFlO1FBQUVDLFFBQVEsR0FBQUosV0FBQSxDQUFSSSxRQUFRO01BQ3JELElBQUFDLElBQUEsR0FBZ0NqQixVQUFVLENBQUNjLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUF6REksSUFBSSxHQUFBRCxJQUFBLENBQUpDLElBQUk7UUFBS0MsVUFBVSxPQUFBQyx5QkFBQSxDQUFBYixPQUFBLEVB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
|
|
116
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFRyZWUiLCJjb25uZWN0aW9ucyIsInBvaW50X2RhdGEiLCJ1dGlsaXR5X25hbWUiLCJub2RlcyIsImNoaWxkcmVuIiwiU2V0IiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIyIiwiZGVmYXVsdCIsIl9zdGVwIiwicyIsIm4iLCJkb25lIiwiX3N0ZXAkdmFsdWUiLCJ2YWx1ZSIsInNvdXJjZV9wb2ludF9pZCIsInRhcmdldF9wb2ludF9pZCIsImRpc3RhbmNlIiwiX3JlZiIsIm5hbWUiLCJzb3VyY2VEYXRhIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsIl9leGNsdWRlZCIsInRhcmdldF9kYXRhIiwiYXR0cmlidXRlcyIsIl9vYmplY3RTcHJlYWQyIiwicG9pbnRfaWQiLCJwdXNoIiwiYWRkIiwiZXJyIiwiZSIsImYiLCJyb290cyIsIk9iamVjdCIsImtleXMiLCJmaWx0ZXIiLCJpZCIsImhhcyIsIk51bWJlciIsIm1hcCIsImxlbmd0aCIsIm1hcEJ5SWQiLCJpdGVtcyIsInJlZHVjZSIsImFjYyIsIl9yZWYyIiwiaGFzX2RldmljZSIsImdyb3VwIiwiYXJlYV9uYW1lIiwicHJvcHMiLCJfZXhjbHVkZWQyIiwibW9uaXRvcmVkIiwidHlwZSIsInNob3VsZEZpbHRlck91dCIsInJkM3RQcm9wcyIsInNlbGVjdGVkRmlsdGVycyIsIl9yZDN0UHJvcHMkbm9kZURhdHVtJCIsIl9yZDN0UHJvcHMkbm9kZURhdHVtJDIiLCJfcmQzdFByb3BzJG5vZGVEYXR1bSQzIiwiX3NlbGVjdGVkRmlsdGVycyRQb2luIiwiX3JkM3RQcm9wcyRub2RlRGF0dW0kNCIsIl9yZDN0UHJvcHMkbm9kZURhdHVtJDUiLCJpc01vbml0b3JlZCIsIm5vZGVEYXR1bSIsInNpdGVJZCIsInNlY3RvcklkIiwic2VjdG9yX2lkIiwiZmlsdGVyQnlTaXRlIiwiU2l0ZUZpbHRlckl0ZW0iLCJpbmNsdWRlcyIsImZpbHRlckJ5U2VjdG9yIiwiU2VjdG9yRmlsdGVySXRlbSIsInNob3dPbmx5TW9uaXRvcmVkIiwiUG9pbnRzTW9kZUZpbHRlckl0ZW0iLCJ0b1N0cmluZyIsImludGVyZXN0UG9pbnRzRmlsdGVyIiwiSW50ZXJlc3RQb2ludEZpbHRlckl0ZW0iLCJmaWx0ZXJCeUludGVyZXN0UG9pbnQiLCJmaWx0ZXJCeUFyZWEiLCJBcmVhRmlsdGVySXRlbSIsImFyZWFfaWQiLCJleHBvcnRzIiwiQWN0aW9uc0NvbnRhaW5lciIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3VpLWtpdC9IaWVyYXJjaHlHcmFwaC91dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnQgfSBmcm9tICcuLi8uLi9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5cbi8qKlxuICogQ29udmVydCBlZGdlcyB0byByb3dzIHN1aXRhYmxlIGZvciBkMy5zdHJhdGlmeSgpXG4gKiBSZXR1cm5zIGFuIGFycmF5IG9mIHsgaWQsIHBhcmVudElkLCBkaXN0YW5jZT8sIHNoYXBlX2RhdGE/IH1cbiAqIElmIG11bHRpcGxlIHJvb3RzIGV4aXN0LCB5b3UgY2FuIG9wdGlvbmFsbHkgYWRkIGEgc3VwZXIgcm9vdCByb3cuXG4gKi9cbnR5cGUgRWRnZSA9IHtcbiAgc291cmNlX3BvaW50X2lkOiBudW1iZXIgfCBzdHJpbmc7XG4gIHRhcmdldF9wb2ludF9pZDogbnVtYmVyIHwgc3RyaW5nO1xuICBkaXN0YW5jZT86IG51bWJlcjtcbn07XG50eXBlIFRyZWVOb2RlID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGNoaWxkcmVuPzogVHJlZU5vZGVbXTtcbiAgYXR0cmlidXRlcz86IHsgZGlzdGFuY2U6IG51bWJlcjsgdHlwZTogc3RyaW5nOyBtb25pdG9yZWQ6IGJvb2xlYW4gfTtcbn07XG5leHBvcnQgdHlwZSBUcmVlRGF0YSA9IFRyZWVOb2RlIHwgeyBuYW1lOiBzdHJpbmc7IGNoaWxkcmVuOiBUcmVlTm9kZVtdIH07XG5cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFRyZWUoXG4gIGNvbm5lY3Rpb25zOiBFZGdlW10sXG4gIHBvaW50X2RhdGEsXG4gIHV0aWxpdHlfbmFtZSxcbik6IFRyZWVEYXRhIHtcbiAgY29uc3Qgbm9kZXMgPSB7fTtcbiAgY29uc3QgY2hpbGRyZW4gPSBuZXcgU2V0KCk7XG5cbiAgLy8gQnVpbGQgbWFwIG9mIG5vZGVzIGFuZCB0cmFjayBjaGlsZHJlblxuICBmb3IgKGNvbnN0IHsgc291cmNlX3BvaW50X2lkLCB0YXJnZXRfcG9pbnRfaWQsIGRpc3RhbmNlIH0gb2YgY29ubmVjdGlvbnMpIHtcbiAgICBjb25zdCB7IG5hbWUsIC4uLnNvdXJjZURhdGEgfSA9IHBvaW50X2RhdGFbc291cmNlX3BvaW50X2lkXSB8fCB7fTtcbiAgICBpZiAoIW5vZGVzW3NvdXJjZV9wb2ludF9pZF0pXG4gICAgICBub2Rlc1tzb3VyY2VfcG9pbnRfaWRdID0ge1xuICAgICAgICBuYW1lLFxuICAgICAgICBjaGlsZHJlbjogW10sXG4gICAgICB9O1xuICAgIGlmICghbm9kZXNbdGFyZ2V0X3BvaW50X2lkXSkge1xuICAgICAgY29uc3QgdGFyZ2V0X2RhdGEgPSBwb2ludF9kYXRhW3RhcmdldF9wb2ludF9pZF0gfHwge307XG4gICAgICBub2Rlc1t0YXJnZXRfcG9pbnRfaWRdID0ge1xuICAgICAgICBuYW1lOiB0YXJnZXRfZGF0YS5uYW1lLFxuICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgLi4udGFyZ2V0X2RhdGEsXG4gICAgICAgICAgcG9pbnRfaWQ6IHRhcmdldF9wb2ludF9pZCxcbiAgICAgICAgfSxcbiAgICAgICAgY2hpbGRyZW46IFtdLFxuICAgICAgfTtcbiAgICB9XG4gICAgbm9kZXNbdGFyZ2V0X3BvaW50X2lkXS5jaGlsZHJlbi5wdXNoKG5vZGVzW3NvdXJjZV9wb2ludF9pZF0pO1xuICAgIGNoaWxkcmVuLmFkZChzb3VyY2VfcG9pbnRfaWQpO1xuICAgIG5vZGVzW3NvdXJjZV9wb2ludF9pZF0uYXR0cmlidXRlcyA9IHtcbiAgICAgIGRpc3RhbmNlLFxuICAgICAgLi4uc291cmNlRGF0YSxcbiAgICAgIHBvaW50X2lkOiBzb3VyY2VfcG9pbnRfaWQsXG4gICAgfTtcbiAgfVxuXG4gIC8vIEZpbmQgcm9vdChzKVxuICBjb25zdCByb290cyA9IE9iamVjdC5rZXlzKG5vZGVzKVxuICAgIC5maWx0ZXIoKGlkKSA9PiAhY2hpbGRyZW4uaGFzKE51bWJlcihpZCkpKVxuICAgIC5tYXAoKGlkKSA9PiBub2Rlc1tpZF0pO1xuXG4gIC8vIElmIG11bHRpcGxlIHJvb3RzIGV4aXN0LCB3cmFwIGluIGEgc3VwZXIgcm9vdFxuICByZXR1cm4gcm9vdHMubGVuZ3RoID09PSAxXG4gICAgPyByb290c1swXVxuICAgIDogeyBuYW1lOiB1dGlsaXR5X25hbWUsIGNoaWxkcmVuOiByb290cyB9O1xufVxudHlwZSBQb2ludERhdGEgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgbW9uaXRvcmVkOiBib29sZWFuO1xuICB0eXBlOiBzdHJpbmc7XG4gIGFyZWFfbmFtZT86IHN0cmluZztcbiAgc2NvcmU/OiBudW1iZXI7XG4gIHBvbGx1dGlvbj86IGFueTtcbn07XG5leHBvcnQgZnVuY3Rpb24gbWFwQnlJZChpdGVtczogSVBvaW50W10pOiBSZWNvcmQ8c3RyaW5nIHwgbnVtYmVyLCBQb2ludERhdGE+IHtcbiAgcmV0dXJuIGl0ZW1zLnJlZHVjZShcbiAgICAoYWNjLCB7IGlkLCBuYW1lLCBoYXNfZGV2aWNlLCBncm91cCwgYXJlYV9uYW1lLCAuLi5wcm9wcyB9KSA9PiB7XG4gICAgICBhY2NbaWRdID0ge1xuICAgICAgICAuLi5wcm9wcyxcbiAgICAgICAgbmFtZSxcbiAgICAgICAgbW9uaXRvcmVkOiBoYXNfZGV2aWNlLFxuICAgICAgICB0eXBlOiBhcmVhX25hbWUgPyAnYXJlYScgOiBncm91cC50eXBlLFxuICAgICAgICBhcmVhX25hbWUsXG4gICAgICB9O1xuICAgICAgcmV0dXJuIGFjYztcbiAgICB9LFxuICAgIHt9IGFzIFJlY29yZDxzdHJpbmcgfCBudW1iZXIsIFBvaW50RGF0YT4sXG4gICk7XG59XG5cbmV4cG9ydCB0eXBlIE5vZGVQcm9wcyA9IHtcbiAgbm9kZURhdHVtOiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGF0dHJpYnV0ZXM/OiB7XG4gICAgICBzY29yZT86IG51bWJlcjtcbiAgICAgIHR5cGU/OiBzdHJpbmc7XG4gICAgICBwb2ludF9pZD86IG51bWJlciB8IHN0cmluZztcbiAgICAgIGFyZWFfbmFtZT86IHN0cmluZztcbiAgICAgIG1vbml0b3JlZD86IGJvb2xlYW47XG4gICAgICBwb2xsdXRpb24/OiBhbnk7XG4gICAgICBzZWN0b3JfbmFtZT86IHN0cmluZztcbiAgICAgIGNvbnRyaWJ1dG9yX3BlcmNlbnRzOiBudW1iZXI7XG4gICAgfTtcbiAgICBjaGlsZHJlbj86IGFueVtdO1xuICB9O1xuICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0Tm9kZTtcbiAgc2VhcmNoVGVybT86IHN0cmluZztcbiAgaXNIaWdobGlnaHQ6IGJvb2xlYW47XG4gIHRvZ2dsZU5vZGU6ICgpID0+IHZvaWQ7XG4gIG9uTm9kZUNsaWNrOiAobm9kZURhdGE6IGFueSkgPT4gdm9pZDtcbiAgY29udGVudFN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllcztcbiAgZWFybHlBZG9wdGVyPzogYm9vbGVhbjtcbiAgc2hvd1NhbXBsZXJzPzogYm9vbGVhbjtcbn07XG5leHBvcnQgdHlwZSBJbnNpZ2h0RGF0YSA9ICdzY29yZScgfCAncG9sbHV0aW9uX2NvbnRyaWJ1dG9yJztcbmV4cG9ydCBjb25zdCBzaG91bGRGaWx0ZXJPdXQgPSAocmQzdFByb3BzLCBzZWxlY3RlZEZpbHRlcnMpID0+IHtcbiAgY29uc3QgaXNNb25pdG9yZWQgPSByZDN0UHJvcHMubm9kZURhdHVtLmF0dHJpYnV0ZXM/Lm1vbml0b3JlZDtcbiAgY29uc3Qgc2l0ZUlkID0gcmQzdFByb3BzLm5vZGVEYXR1bS5hdHRyaWJ1dGVzPy5wb2ludF9pZDtcbiAgY29uc3Qgc2VjdG9ySWQgPSByZDN0UHJvcHMubm9kZURhdHVtLmF0dHJpYnV0ZXM/LnNlY3Rvcl9pZDtcbiAgY29uc3QgZmlsdGVyQnlTaXRlID1cbiAgICBzZWxlY3RlZEZpbHRlcnM/LlNpdGVGaWx0ZXJJdGVtICYmXG4gICAgIXNlbGVjdGVkRmlsdGVycy5TaXRlRmlsdGVySXRlbS5pbmNsdWRlcyhzaXRlSWQpO1xuICBjb25zdCBmaWx0ZXJCeVNlY3RvciA9XG4gICAgc2VsZWN0ZWRGaWx0ZXJzPy5TZWN0b3JGaWx0ZXJJdGVtICYmXG4gICAgIXNlbGVjdGVkRmlsdGVycy5TZWN0b3JGaWx0ZXJJdGVtLmluY2x1ZGVzKHNlY3RvcklkKTtcbiAgY29uc3Qgc2hvd09ubHlNb25pdG9yZWQgPVxuICAgIHNlbGVjdGVkRmlsdGVycz8uUG9pbnRzTW9kZUZpbHRlckl0ZW0/LnRvU3RyaW5nKCkgPT09ICdtb25pdG9yZWQnIHx8IGZhbHNlO1xuICBjb25zdCBpbnRlcmVzdFBvaW50c0ZpbHRlciA9IHNlbGVjdGVkRmlsdGVycz8uSW50ZXJlc3RQb2ludEZpbHRlckl0ZW0gfHwgW107XG4gIGNvbnN0IGZpbHRlckJ5SW50ZXJlc3RQb2ludCA9XG4gICAgaW50ZXJlc3RQb2ludHNGaWx0ZXIubGVuZ3RoID4gMCAmJlxuICAgICFpbnRlcmVzdFBvaW50c0ZpbHRlci5pbmNsdWRlcyhyZDN0UHJvcHMubm9kZURhdHVtLmF0dHJpYnV0ZXM/LnBvaW50X2lkKTtcbiAgY29uc3QgZmlsdGVyQnlBcmVhID1cbiAgICBzZWxlY3RlZEZpbHRlcnM/LkFyZWFGaWx0ZXJJdGVtICYmXG4gICAgc2VsZWN0ZWRGaWx0ZXJzLkFyZWFGaWx0ZXJJdGVtLmxlbmd0aCA+IDAgJiZcbiAgICAhc2VsZWN0ZWRGaWx0ZXJzLkFyZWFGaWx0ZXJJdGVtLmluY2x1ZGVzKFxuICAgICAgcmQzdFByb3BzLm5vZGVEYXR1bS5hdHRyaWJ1dGVzPy5hcmVhX2lkLFxuICAgICk7XG4gIHJldHVybiAoXG4gICAgKHNob3dPbmx5TW9uaXRvcmVkICYmICFpc01vbml0b3JlZCkgfHxcbiAgICBmaWx0ZXJCeVNpdGUgfHxcbiAgICBmaWx0ZXJCeUludGVyZXN0UG9pbnQgfHxcbiAgICBmaWx0ZXJCeUFyZWEgfHxcbiAgICBmaWx0ZXJCeVNlY3RvclxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IEFjdGlvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICAge1xuICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBSUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFhTyxTQUFTQSxTQUFTQSxDQUN2QkMsV0FBbUIsRUFDbkJDLFVBQVUsRUFDVkMsWUFBWSxFQUNGO0VBQ1YsSUFBTUMsS0FBSyxHQUFHLENBQUMsQ0FBQztFQUNoQixJQUFNQyxRQUFRLEdBQUcsSUFBSUMsR0FBRyxDQUFDLENBQUM7O0VBRTFCO0VBQUEsSUFBQUMsU0FBQSxPQUFBQywyQkFBQSxDQUFBQyxPQUFBLEVBQzZEUixXQUFXO0lBQUFTLEtBQUE7RUFBQTtJQUF4RSxLQUFBSCxTQUFBLENBQUFJLENBQUEsTUFBQUQsS0FBQSxHQUFBSCxTQUFBLENBQUFLLENBQUEsSUFBQUMsSUFBQSxHQUEwRTtNQUFBLElBQUFDLFdBQUEsR0FBQUosS0FBQSxDQUFBSyxLQUFBO1FBQTdEQyxlQUFlLEdBQUFGLFdBQUEsQ0FBZkUsZUFBZTtRQUFFQyxlQUFlLEdBQUFILFdBQUEsQ0FBZkcsZUFBZTtRQUFFQyxRQUFRLEdBQUFKLFdBQUEsQ0FBUkksUUFBUTtNQUNyRCxJQUFBQyxJQUFBLEdBQWdDakIsVUFBVSxDQUFDYyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFBekRJLElBQUksR0FBQUQsSUFBQSxDQUFKQyxJQUFJO1FBQUtDLFVBQVUs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
|