@kando-env/kando-ui 1.2.458-alpha.1 → 1.2.458-alpha.10
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/factoriesResponse.interface.js +1 -1
- package/lib/components/Header/InfoBar/InfoBar.js +3 -3
- package/lib/i18n/en.json +11 -1
- package/lib/macros/getVersion.js +2 -2
- package/lib/pages/DashboardMap/SeverityBadge.js +1 -2
- package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +30 -3
- package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +5 -1
- package/lib/ui-kit/Dashboard/Dashboard.js +2 -2
- package/lib/ui-kit/HierarchyGraph/AutoFitTree.js +16 -13
- package/lib/ui-kit/HierarchyGraph/HierarchyGraph.js +54 -117
- package/lib/ui-kit/HierarchyGraph/NodeLayout.js +11 -4
- package/lib/ui-kit/HierarchyGraph/style.scss +19 -0
- package/lib/ui-kit/HierarchyGraph/utils.js +1 -1
- package/package.json +1 -1
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
|
-
exports.getAllNodeNames = getAllNodeNames;
|
|
10
9
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
11
10
|
var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
|
|
12
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
@@ -20,32 +19,14 @@ var _Loader = require("../../pages/DashboardMap/Loader");
|
|
|
20
19
|
var _RightPanel = _interopRequireDefault(require("../../pages/OperationsPage/RightPanel"));
|
|
21
20
|
var _urls = require("../../utilities/urls");
|
|
22
21
|
var _useApiWithDashboardQuery = require("../../hooks/useApiWithDashboardQuery");
|
|
23
|
-
var
|
|
24
|
-
var _d3Hierarchy = require("d3-hierarchy");
|
|
25
|
-
var _i18n = _interopRequireDefault(require("../../utilities/i18n"));
|
|
26
|
-
var _reactRouterDom = require("react-router-dom");
|
|
22
|
+
var _FilterContainer = _interopRequireDefault(require("../../pages/EventsPage/events/events_list/Filter/FilterContainer"));
|
|
27
23
|
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); }
|
|
28
24
|
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; }
|
|
29
|
-
function getAllNodeNames(tree) {
|
|
30
|
-
var root = (0, _d3Hierarchy.hierarchy)(tree);
|
|
31
|
-
return root.descendants().map(function (n) {
|
|
32
|
-
var _n$data$attributes;
|
|
33
|
-
return {
|
|
34
|
-
value: (_n$data$attributes = n.data.attributes) === null || _n$data$attributes === void 0 ? void 0 : _n$data$attributes.point_id,
|
|
35
|
-
label: n.data.name
|
|
36
|
-
};
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
25
|
var HierarchyGraph = function HierarchyGraph() {
|
|
40
26
|
var searchQuery = (0, _useQueryURL.default)();
|
|
41
|
-
var _useParams = (0, _reactRouterDom.useParams)(),
|
|
42
|
-
siteID = _useParams.siteID;
|
|
43
27
|
var ReduxState = (0, _reactRedux.useSelector)(function (state) {
|
|
44
28
|
return state;
|
|
45
29
|
});
|
|
46
|
-
// const [depth, setDepth] = useState<number>(12);
|
|
47
|
-
// const [treeKey, setTreeKey] = useState<number>(0);
|
|
48
|
-
// const [nodeType, setNodeType] = useState<NodeType>('pie');
|
|
49
30
|
var _useState = (0, _react.useState)(null),
|
|
50
31
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
51
32
|
selectedPoint = _useState2[0],
|
|
@@ -54,14 +35,10 @@ var HierarchyGraph = function HierarchyGraph() {
|
|
|
54
35
|
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
55
36
|
showRightPanel = _useState4[0],
|
|
56
37
|
setShowRightPanel = _useState4[1];
|
|
57
|
-
var _useState5 = (0, _react.useState)(
|
|
38
|
+
var _useState5 = (0, _react.useState)({}),
|
|
58
39
|
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
// const updateTreeView = (depth) => {
|
|
62
|
-
// setDepth(depth);
|
|
63
|
-
// setTreeKey((prev) => prev + 1); // force re-mount to reset tree state
|
|
64
|
-
// };
|
|
40
|
+
filterOptions = _useState6[0],
|
|
41
|
+
setFilterOptions = _useState6[1];
|
|
65
42
|
var isHierarchyTab = searchQuery.get('view') === 'hierarchy';
|
|
66
43
|
var points_data = ReduxState.points_data,
|
|
67
44
|
edges_data = ReduxState.edges_data,
|
|
@@ -100,8 +77,17 @@ var HierarchyGraph = function HierarchyGraph() {
|
|
|
100
77
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
101
78
|
var _step$value = _step.value,
|
|
102
79
|
site_id = _step$value.site_id,
|
|
103
|
-
pollution = _step$value.pollution
|
|
104
|
-
|
|
80
|
+
pollution = _step$value.pollution,
|
|
81
|
+
sector_name = _step$value.sector_name,
|
|
82
|
+
sector_id = _step$value.sector_id,
|
|
83
|
+
contributor_percents = _step$value.contributor_percents;
|
|
84
|
+
var extraData = {
|
|
85
|
+
sector_name: sector_name,
|
|
86
|
+
contributor_percents: contributor_percents,
|
|
87
|
+
sector_id: sector_id
|
|
88
|
+
};
|
|
89
|
+
if (pollution === null || pollution === void 0 ? void 0 : pollution.type_distribution) extraData['pollution'] = pollution.type_distribution;
|
|
90
|
+
m.set(site_id, extraData);
|
|
105
91
|
}
|
|
106
92
|
} catch (err) {
|
|
107
93
|
_iterator.e(err);
|
|
@@ -122,9 +108,7 @@ var HierarchyGraph = function HierarchyGraph() {
|
|
|
122
108
|
var numId = Number(id);
|
|
123
109
|
var pollution = pollutionBySiteId.get(numId);
|
|
124
110
|
// shallow clone each point; add pollution if exists
|
|
125
|
-
copy[numId] = pollution ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, base[numId]), {},
|
|
126
|
-
pollution: pollution
|
|
127
|
-
}) : (0, _objectSpread2.default)({}, base[numId]);
|
|
111
|
+
copy[numId] = pollution ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, base[numId]), pollution) : (0, _objectSpread2.default)({}, base[numId]);
|
|
128
112
|
}
|
|
129
113
|
return copy;
|
|
130
114
|
}, [points_data.items, pollutionBySiteId]);
|
|
@@ -138,96 +122,52 @@ var HierarchyGraph = function HierarchyGraph() {
|
|
|
138
122
|
return pointsWithDevice[edge.source_point_id] || edge.descendants_has_device;
|
|
139
123
|
});
|
|
140
124
|
}, [points_data.items, edges_data.items]);
|
|
125
|
+
var filterPoints = (0, _react.useMemo)(function () {
|
|
126
|
+
var pointsOption = {};
|
|
127
|
+
var pointList = points_data.items;
|
|
128
|
+
edgesWithDevice.forEach(function (edge) {
|
|
129
|
+
var sourcePoint = pointList.find(function (p) {
|
|
130
|
+
return p.id === edge.source_point_id;
|
|
131
|
+
});
|
|
132
|
+
var targetPoint = pointList.find(function (p) {
|
|
133
|
+
return p.id === edge.target_point_id;
|
|
134
|
+
});
|
|
135
|
+
if (sourcePoint) pointsOption[sourcePoint.id] = {
|
|
136
|
+
id: sourcePoint.id,
|
|
137
|
+
name: sourcePoint.group.name
|
|
138
|
+
};
|
|
139
|
+
if (targetPoint) pointsOption[targetPoint.id] = {
|
|
140
|
+
id: targetPoint.id,
|
|
141
|
+
name: targetPoint.group.name
|
|
142
|
+
};
|
|
143
|
+
});
|
|
144
|
+
return Object.values(pointsOption);
|
|
145
|
+
}, [points_data.items, edgesWithDevice]);
|
|
141
146
|
|
|
142
147
|
// 4) Build the tree ONLY when data is ready; keep referential stability
|
|
143
148
|
var treeData = (0, _react.useMemo)(function () {
|
|
144
149
|
if (isLoadingSites || errorSites) return null;
|
|
145
150
|
return (0, _utils.buildTree)(edgesWithDevice, decoratedPointsById, waterAuthorityName);
|
|
146
151
|
}, [edgesWithDevice, decoratedPointsById, waterAuthorityName, isLoadingSites, errorSites]);
|
|
152
|
+
var updateFilter = function updateFilter(appliedFilter) {
|
|
153
|
+
// Process the applied filter as needed
|
|
154
|
+
var selectedFilters = {};
|
|
155
|
+
appliedFilter.filter_items.forEach(function (item) {
|
|
156
|
+
selectedFilters[item.type] = item.selected_options;
|
|
157
|
+
});
|
|
158
|
+
setFilterOptions(selectedFilters);
|
|
159
|
+
// You can update state or make API calls based on the applied filter
|
|
160
|
+
};
|
|
147
161
|
|
|
148
|
-
// const nodeTypeOptions = [
|
|
149
|
-
// { label: 'Pie Chart', value: 'pie' },
|
|
150
|
-
// { label: 'Bar', value: 'bar' },
|
|
151
|
-
// ];
|
|
152
|
-
|
|
153
|
-
var _useState7 = (0, _react.useState)(''),
|
|
154
|
-
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
155
|
-
searchTerm = _useState8[0],
|
|
156
|
-
setSearchTerm = _useState8[1];
|
|
157
|
-
var searchOptions = (0, _react.useMemo)(function () {
|
|
158
|
-
return treeData ? getAllNodeNames(treeData) : [];
|
|
159
|
-
}, [treeData]);
|
|
160
|
-
var _useState9 = (0, _react.useState)(false),
|
|
161
|
-
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
162
|
-
showSamplers = _useState10[0],
|
|
163
|
-
setShowSamplers = _useState10[1];
|
|
164
|
-
(0, _react.useEffect)(function () {
|
|
165
|
-
if (siteID) {
|
|
166
|
-
var matchedOption = searchOptions.find(function (option) {
|
|
167
|
-
var _option$value;
|
|
168
|
-
return (option === null || option === void 0 ? void 0 : (_option$value = option.value) === null || _option$value === void 0 ? void 0 : _option$value.toString()) === siteID;
|
|
169
|
-
});
|
|
170
|
-
if (matchedOption) {
|
|
171
|
-
setSearchTerm(matchedOption.label);
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
}, [searchOptions]);
|
|
175
162
|
if (!isHierarchyTab) {
|
|
176
163
|
return null;
|
|
177
164
|
}
|
|
178
|
-
return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
zIndex: 10
|
|
185
|
-
}
|
|
186
|
-
}, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Form.Group, {
|
|
187
|
-
className: 'mt-2'
|
|
188
|
-
}, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Form.Check, {
|
|
189
|
-
inline: true,
|
|
190
|
-
label: 'Show only monitored',
|
|
191
|
-
name: "show_only_monitored",
|
|
192
|
-
type: "checkbox",
|
|
193
|
-
id: "show_only_monitored",
|
|
194
|
-
onChange: function onChange(e) {
|
|
195
|
-
setShowOnlyMonitored(!showOnlyMonitored);
|
|
196
|
-
},
|
|
197
|
-
checked: showOnlyMonitored
|
|
198
|
-
})), /*#__PURE__*/_react.default.createElement(_reactBootstrap.Form.Group, {
|
|
199
|
-
className: 'mt-2'
|
|
200
|
-
}, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Form.Check, {
|
|
201
|
-
inline: true,
|
|
202
|
-
label: 'Show samplers',
|
|
203
|
-
name: "show_samplers",
|
|
204
|
-
type: "checkbox",
|
|
205
|
-
id: "show_samplers",
|
|
206
|
-
onChange: function onChange(e) {
|
|
207
|
-
setShowSamplers(!showSamplers);
|
|
208
|
-
},
|
|
209
|
-
checked: showSamplers
|
|
210
|
-
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
211
|
-
style: {
|
|
212
|
-
width: '240px'
|
|
213
|
-
}
|
|
214
|
-
}, /*#__PURE__*/_react.default.createElement(_reactSelect.default, {
|
|
215
|
-
placeholder: _i18n.default.t('dashboard_v2.utility_dashboard.hierarchy.search'),
|
|
216
|
-
value: searchOptions.find(function (option) {
|
|
217
|
-
return option.label === searchTerm;
|
|
218
|
-
}) || null,
|
|
219
|
-
isLoading: !searchOptions.length,
|
|
220
|
-
isClearable: true,
|
|
221
|
-
isSearchable: true,
|
|
222
|
-
name: "color",
|
|
223
|
-
onChange: function onChange(value) {
|
|
224
|
-
return setSearchTerm((value === null || value === void 0 ? void 0 : value.label) || '');
|
|
225
|
-
},
|
|
226
|
-
options: searchOptions,
|
|
227
|
-
onInputChangeCallback: function onInputChangeCallback(input) {
|
|
228
|
-
return setSearchTerm(input);
|
|
229
|
-
}
|
|
230
|
-
}))), /*#__PURE__*/_react.default.createElement(_reactBootstrap.Container, {
|
|
165
|
+
return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_FilterContainer.default, {
|
|
166
|
+
filterPopupOpen: true,
|
|
167
|
+
fetchType: 'HierarchyFilter',
|
|
168
|
+
applyLogic: updateFilter,
|
|
169
|
+
custom_points: filterPoints
|
|
170
|
+
}), /*#__PURE__*/_react.default.createElement(_reactBootstrap.Container, {
|
|
231
171
|
fluid: true,
|
|
232
172
|
className: "p-0",
|
|
233
173
|
style: {
|
|
@@ -244,10 +184,7 @@ var HierarchyGraph = function HierarchyGraph() {
|
|
|
244
184
|
treeKey: 0,
|
|
245
185
|
initialDepth: 12,
|
|
246
186
|
data: treeData,
|
|
247
|
-
|
|
248
|
-
searchTerm: searchTerm,
|
|
249
|
-
showOnlyMonitored: showOnlyMonitored,
|
|
250
|
-
showSamplers: showSamplers,
|
|
187
|
+
selectedFilters: filterOptions,
|
|
251
188
|
onNodeClick: onNodeClick
|
|
252
189
|
}), /*#__PURE__*/_react.default.createElement(_RightPanel.default, {
|
|
253
190
|
className: "right-panel ".concat(showRightPanel ? 'open' : ''),
|
|
@@ -260,4 +197,4 @@ var HierarchyGraph = function HierarchyGraph() {
|
|
|
260
197
|
};
|
|
261
198
|
var _default = HierarchyGraph;
|
|
262
199
|
exports.default = _default;
|
|
263
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdXNlUXVlcnlVUkwiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3V0aWxzIiwiX3JlYWN0UmVkdXgiLCJfQXV0b0ZpdFRyZWUiLCJfcmVhY3RCb290c3RyYXAiLCJfTG9hZGVyIiwiX1JpZ2h0UGFuZWwiLCJfdXJscyIsIl91c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnkiLCJfcmVhY3RTZWxlY3QiLCJfZDNIaWVyYXJjaHkiLCJfaTE4biIsIl9yZWFjdFJvdXRlckRvbSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiZ2V0QWxsTm9kZU5hbWVzIiwidHJlZSIsInJvb3QiLCJoaWVyYXJjaHkiLCJkZXNjZW5kYW50cyIsIm1hcCIsIm4iLCJfbiRkYXRhJGF0dHJpYnV0ZXMiLCJ2YWx1ZSIsImRhdGEiLCJhdHRyaWJ1dGVzIiwicG9pbnRfaWQiLCJsYWJlbCIsIm5hbWUiLCJIaWVyYXJjaHlHcmFwaCIsInNlYXJjaFF1ZXJ5IiwidXNlUXVlcnlVUkwiLCJfdXNlUGFyYW1zIiwidXNlUGFyYW1zIiwic2l0ZUlEIiwiUmVkdXhTdGF0ZSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJzZWxlY3RlZFBvaW50Iiwic2V0U2VsZWN0ZWRQb2ludCIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0Iiwic2hvd1JpZ2h0UGFuZWwiLCJzZXRTaG93UmlnaHRQYW5lbCIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2Iiwic2hvd09ubHlNb25pdG9yZWQiLCJzZXRTaG93T25seU1vbml0b3JlZCIsImlzSGllcmFyY2h5VGFiIiwicG9pbnRzX2RhdGEiLCJlZGdlc19kYXRhIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwiZ2xvYmFsX2RhdGEiLCJvbk5vZGVDbGljayIsIm5vZGVEYXRhIiwiaXRlbXMiLCJmaW5kIiwicCIsImlkIiwiZmFjdG9yaWVzRW5kUG9pbnQiLCJ1c2VNZW1vIiwidXJscyIsImRhc2hib2FyZCIsIlV0aWxpdHkiLCJmYWN0b3JpZXMiLCJwYXJhbXNBbGwiLCJ0eXBlIiwiX3VzZUFwaVdpdGhEYXNoYm9hcmRRIiwidXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5IiwiX3VzZUFwaVdpdGhEYXNoYm9hcmRRMiIsInJlc3BvbnNlU2l0ZXMiLCJpc0xvYWRpbmdTaXRlcyIsImVycm9yU2l0ZXMiLCJwb2xsdXRpb25CeVNpdGVJZCIsIm0iLCJNYXAiLCJfaXRlcmF0b3IiLCJfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlcjIiLCJfc3RlcCIsInMiLCJkb25lIiwiX3N0ZXAkdmFsdWUiLCJzaXRlX2lkIiwicG9sbHV0aW9uIiwidHlwZV9kaXN0cmlidXRpb24iLCJlcnIiLCJlIiwiZiIsImRlY29yYXRlZFBvaW50c0J5SWQiLCJiYXNlIiwibWFwQnlJZCIsImNvcHkiLCJfaSIsIl9PYmplY3Qka2V5cyIsImtleXMiLCJsZW5ndGgiLCJudW1JZCIsIk51bWJlciIsIl9vYmplY3RTcHJlYWQyIiwiZWRnZXNXaXRoRGV2aWNlIiwicG9pbnRzV2l0aERldmljZSIsImZpbHRlciIsImhhc19kZXZpY2UiLCJlZGdlIiwic291cmNlX3BvaW50X2lkIiwiZGVzY2VuZGFudHNfaGFzX2RldmljZSIsInRyZWVEYXRhIiwiYnVpbGRUcmVlIiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJzZWFyY2hUZXJtIiwic2V0U2VhcmNoVGVybSIsInNlYXJjaE9wdGlvbnMiLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMTAiLCJzaG93U2FtcGxlcnMiLCJzZXRTaG93U2FtcGxlcnMiLCJ1c2VFZmZlY3QiLCJtYXRjaGVkT3B0aW9uIiwib3B0aW9uIiwiX29wdGlvbiR2YWx1ZSIsInRvU3RyaW5nIiwiY3JlYXRlRWxlbWVudCIsInN0eWxlIiwibWFyZ2luVG9wIiwibWFyZ2luSW5saW5lU3RhcnQiLCJkaXNwbGF5IiwiZ2FwIiwiekluZGV4IiwiRm9ybSIsIkdyb3VwIiwiY2xhc3NOYW1lIiwiQ2hlY2siLCJpbmxpbmUiLCJvbkNoYW5nZSIsImNoZWNrZWQiLCJ3aWR0aCIsInBsYWNlaG9sZGVyIiwiSTE4biIsInQiLCJpc0xvYWRpbmciLCJpc0NsZWFyYWJsZSIsImlzU2VhcmNoYWJsZSIsIm9wdGlvbnMiLCJvbklucHV0Q2hhbmdlQ2FsbGJhY2siLCJpbnB1dCIsIkNvbnRhaW5lciIsImZsdWlkIiwib3ZlcmZsb3ciLCJSb3ciLCJzbSIsIkNvbCIsImhlaWdodCIsImlzRmV0Y2hpbmciLCJMb2FkZXIiLCJ0cmVlS2V5IiwiaW5pdGlhbERlcHRoIiwibm9kZVR5cGUiLCJjb25jYXQiLCJwb2ludCIsIm9uQ2xvc2UiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdWkta2l0L0hpZXJhcmNoeUdyYXBoL0hpZXJhcmNoeUdyYXBoLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdXNlUXVlcnlVUkwgZnJvbSAnLi4vLi4vaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IHsgYnVpbGRUcmVlLCBtYXBCeUlkLCBUcmVlRGF0YSB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBBdXRvRml0VHJlZSBmcm9tICcuL0F1dG9GaXRUcmVlJztcbmltcG9ydCB7IENvbnRhaW5lciwgUm93LCBDb2wsIEZvcm0gfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgTG9hZGVyIH0gZnJvbSAnLi4vLi4vcGFnZXMvRGFzaGJvYXJkTWFwL0xvYWRlcic7XG5pbXBvcnQgUmlnaHRQYW5lbCBmcm9tICcuLi8uLi9wYWdlcy9PcGVyYXRpb25zUGFnZS9SaWdodFBhbmVsJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvdXJscyc7XG5pbXBvcnQgeyB1c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnkgfSBmcm9tICcuLi8uLi9ob29rcy91c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnknO1xuaW1wb3J0IHsgRmFjdG9yaWVzUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9XaWRnZXRzL01vc3RQb2xsdXRpbmcvRmFjdG9yaWVzL2ZhY3Rvcmllc1Jlc3BvbnNlLmludGVyZmFjZSc7XG5pbXBvcnQgUmVhY3RTZWxlY3QgZnJvbSAncmVhY3Qtc2VsZWN0JztcbmltcG9ydCB7IGhpZXJhcmNoeSB9IGZyb20gJ2QzLWhpZXJhcmNoeSc7XG5pbXBvcnQgSTE4biBmcm9tICcuLi8uLi91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyB1c2VQYXJhbXMgfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFsbE5vZGVOYW1lcyh0cmVlOiBUcmVlRGF0YSk6IHN0cmluZ1tdIHtcbiAgY29uc3Qgcm9vdCA9IGhpZXJhcmNoeSh0cmVlIGFzIGFueSk7XG4gIHJldHVybiByb290LmRlc2NlbmRhbnRzKCkubWFwKChuKSA9PiB7XG4gICAgcmV0dXJuIHsgdmFsdWU6IG4uZGF0YS5hdHRyaWJ1dGVzPy5wb2ludF9pZCwgbGFiZWw6IG4uZGF0YS5uYW1lIH07XG4gIH0pO1xufVxuXG5jb25zdCBIaWVyYXJjaHlHcmFwaCA9ICgpID0+IHtcbiAgY29uc3Qgc2VhcmNoUXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCB7IHNpdGVJRCB9ID0gdXNlUGFyYW1zKCk7XG4gIGNvbnN0IFJlZHV4U3RhdGUgPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlKTtcbiAgLy8gY29uc3QgW2RlcHRoLCBzZXREZXB0aF0gPSB1c2VTdGF0ZTxudW1iZXI+KDEyKTtcbiAgLy8gY29uc3QgW3RyZWVLZXksIHNldFRyZWVLZXldID0gdXNlU3RhdGU8bnVtYmVyPigwKTtcbiAgLy8gY29uc3QgW25vZGVUeXBlLCBzZXROb2RlVHlwZV0gPSB1c2VTdGF0ZTxOb2RlVHlwZT4oJ3BpZScpO1xuICBjb25zdCBbc2VsZWN0ZWRQb2ludCwgc2V0U2VsZWN0ZWRQb2ludF0gPSB1c2VTdGF0ZShudWxsKTtcbiAgY29uc3QgW3Nob3dSaWdodFBhbmVsLCBzZXRTaG93UmlnaHRQYW5lbF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzaG93T25seU1vbml0b3JlZCwgc2V0U2hvd09ubHlNb25pdG9yZWRdID0gdXNlU3RhdGUoZmFsc2UpO1xuICAvLyBjb25zdCB1cGRhdGVUcmVlVmlldyA9IChkZXB0aCkgPT4ge1xuICAvLyAgIHNldERlcHRoKGRlcHRoKTtcbiAgLy8gICBzZXRUcmVlS2V5KChwcmV2KSA9PiBwcmV2ICsgMSk7IC8vIGZvcmNlIHJlLW1vdW50IHRvIHJlc2V0IHRyZWUgc3RhdGVcbiAgLy8gfTtcbiAgY29uc3QgaXNIaWVyYXJjaHlUYWIgPSBzZWFyY2hRdWVyeS5nZXQoJ3ZpZXcnKSA9PT0gJ2hpZXJhcmNoeSc7XG4gIGNvbnN0IHtcbiAgICBwb2ludHNfZGF0YSxcbiAgICBlZGdlc19kYXRhLFxuICAgIGdsb2JhbF9kYXRhOiB7IHdhdGVyQXV0aG9yaXR5TmFtZSB9LFxuICB9ID0gUmVkdXhTdGF0ZTtcblxuICBjb25zdCBvbk5vZGVDbGljayA9IChub2RlRGF0YSkgPT4ge1xuICAgIHNldFNlbGVjdGVkUG9pbnQoXG4gICAgICBwb2ludHNfZGF0YS5pdGVtcy5maW5kKChwKSA9PiBwLmlkID09PSBub2RlRGF0YS5hdHRyaWJ1dGVzLnBvaW50X2lkKSxcbiAgICApO1xuICAgIHNldFNob3dSaWdodFBhbmVsKCFzaG93UmlnaHRQYW5lbCk7XG4gIH07XG5cbiAgLy8gc3RhYmxlIGVuZHBvaW50cy9wYXJhbXMg4pyFXG4gIGNvbnN0IGZhY3Rvcmllc0VuZFBvaW50ID0gdXNlTWVtbyhcbiAgICAoKSA9PiB1cmxzKCkuZGFzaGJvYXJkLlV0aWxpdHkuZmFjdG9yaWVzLFxuICAgIFtdLFxuICApO1xuXG4gIGNvbnN0IHBhcmFtc0FsbCA9IHVzZU1lbW8oKCkgPT4gKHsgdHlwZTogJ0FsbCcgfSksIFtdKTtcblxuICAvLyBmZXRjaGVzXG4gIGNvbnN0IFtyZXNwb25zZVNpdGVzLCBpc0xvYWRpbmdTaXRlcywgZXJyb3JTaXRlc10gPVxuICAgIHVzZUFwaVdpdGhEYXNoYm9hcmRRdWVyeTxGYWN0b3JpZXNSZXNwb25zZT4oZmFjdG9yaWVzRW5kUG9pbnQsIHBhcmFtc0FsbCk7XG5cbiAgLy8gMSkgQnVpbGQgYSBwb2xsdXRpb24gbWFwIGZyb20gYm90aCByZXNwb25zZXMgKG5vIHN0YXRlOyBwdXJlIG1lbW8pXG4gIGNvbnN0IHBvbGx1dGlvbkJ5U2l0ZUlkID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgbSA9IG5ldyBNYXA8bnVtYmVyLCBhbnk+KCk7XG4gICAgaWYgKHJlc3BvbnNlU2l0ZXM/LmRhdGEpIHtcbiAgICAgIGZvciAoY29uc3QgeyBzaXRlX2lkLCBwb2xsdXRpb24gfSBvZiByZXNwb25zZVNpdGVzLmRhdGEpIHtcbiAgICAgICAgaWYgKHBvbGx1dGlvbj8udHlwZV9kaXN0cmlidXRpb24pXG4gICAgICAgICAgbS5zZXQoc2l0ZV9pZCwgcG9sbHV0aW9uLnR5cGVfZGlzdHJpYnV0aW9uKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG07XG4gIH0sIFtyZXNwb25zZVNpdGVzPy5kYXRhXSk7XG5cbiAgLy8gMikgQ3JlYXRlIGEgU0FGRSBjb3B5IG9mIHBvaW50X21hcF9kYXRhIHdpdGggcG9sbHV0aW9uIG1lcmdlZCBpbiAobm8gbXV0YXRpb25zKVxuICBjb25zdCBkZWNvcmF0ZWRQb2ludHNCeUlkID0gdXNlTWVtbygoKSA9PiB7XG4gICAgLy8gbWFwQnlJZChwb2ludHNfZGF0YS5pdGVtcykgcmV0dXJucyBhIHBsYWluIG9iamVjdCBrZXllZCBieSBpZDsgY2xvbmUgaXRcbiAgICBjb25zdCBiYXNlID0gbWFwQnlJZChwb2ludHNfZGF0YS5pdGVtcyk7XG4gICAgY29uc3QgY29weTogUmVjb3JkPG51bWJlciwgYW55PiA9IHt9O1xuICAgIGZvciAoY29uc3QgaWQgb2YgT2JqZWN0LmtleXMoYmFzZSkpIHtcbiAgICAgIGNvbnN0IG51bUlkID0gTnVtYmVyKGlkKTtcbiAgICAgIGNvbnN0IHBvbGx1dGlvbiA9IHBvbGx1dGlvbkJ5U2l0ZUlkLmdldChudW1JZCk7XG4gICAgICAvLyBzaGFsbG93IGNsb25lIGVhY2ggcG9pbnQ7IGFkZCBwb2xsdXRpb24gaWYgZXhpc3RzXG4gICAgICBjb3B5W251bUlkXSA9IHBvbGx1dGlvblxuICAgICAgICA/IHsgLi4uYmFzZVtudW1JZF0sIHBvbGx1dGlvbiB9XG4gICAgICAgIDogeyAuLi5iYXNlW251bUlkXSB9O1xuICAgIH1cbiAgICByZXR1cm4gY29weTtcbiAgfSwgW3BvaW50c19kYXRhLml0ZW1zLCBwb2xsdXRpb25CeVNpdGVJZF0pO1xuXG4gIC8vIDMpIENvbXB1dGUgZWRnZXNXaXRoRGV2aWNlIHNhZmVseS9tZW1vaXplZCAobm8gZXh0cmEgcmVuZGVycylcbiAgY29uc3QgZWRnZXNXaXRoRGV2aWNlID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgcG9pbnRzV2l0aERldmljZSA9IG1hcEJ5SWQoXG4gICAgICBwb2ludHNfZGF0YS5pdGVtcy5maWx0ZXIoKHApID0+IHAuaGFzX2RldmljZSksXG4gICAgKTtcbiAgICByZXR1cm4gZWRnZXNfZGF0YS5pdGVtcy5maWx0ZXIoXG4gICAgICAoZWRnZSkgPT5cbiAgICAgICAgcG9pbnRzV2l0aERldmljZVtlZGdlLnNvdXJjZV9wb2ludF9pZF0gfHwgZWRnZS5kZXNjZW5kYW50c19oYXNfZGV2aWNlLFxuICAgICk7XG4gIH0sIFtwb2ludHNfZGF0YS5pdGVtcywgZWRnZXNfZGF0YS5pdGVtc10pO1xuXG4gIC8vIDQpIEJ1aWxkIHRoZSB0cmVlIE9OTFkgd2hlbiBkYXRhIGlzIHJlYWR5OyBrZWVwIHJlZmVyZW50aWFsIHN0YWJpbGl0eVxuICBjb25zdCB0cmVlRGF0YSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChpc0xvYWRpbmdTaXRlcyB8fCBlcnJvclNpdGVzKSByZXR1cm4gbnVsbDtcblxuICAgIHJldHVybiBidWlsZFRyZWUoZWRnZXNXaXRoRGV2aWNlLCBkZWNvcmF0ZWRQb2ludHNCeUlkLCB3YXRlckF1dGhvcml0eU5hbWUpO1xuICB9LCBbXG4gICAgZWRnZXNXaXRoRGV2aWNlLFxuICAgIGRlY29yYXRlZFBvaW50c0J5SWQsXG4gICAgd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIGlzTG9hZGluZ1NpdGVzLFxuICAgIGVycm9yU2l0ZXMsXG4gIF0pO1xuXG4gIC8vIGNvbnN0IG5vZGVUeXBlT3B0aW9ucyA9IFtcbiAgLy8gICB7IGxhYmVsOiAnUGllIENoYXJ0JywgdmFsdWU6ICdwaWUnIH0sXG4gIC8vICAgeyBsYWJlbDogJ0JhcicsIHZhbHVlOiAnYmFyJyB9LFxuICAvLyBdO1xuXG4gIGNvbnN0IFtzZWFyY2hUZXJtLCBzZXRTZWFyY2hUZXJtXSA9IHVzZVN0YXRlKCcnKTtcbiAgY29uc3Qgc2VhcmNoT3B0aW9ucyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gKHRyZWVEYXRhID8gZ2V0QWxsTm9kZU5hbWVzKHRyZWVEYXRhKSA6IFtdKSxcbiAgICBbdHJlZURhdGFdLFxuICApO1xuICBjb25zdCBbc2hvd1NhbXBsZXJzLCBzZXRTaG93U2FtcGxlcnNdID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHNpdGVJRCkge1xuICAgICAgY29uc3QgbWF0Y2hlZE9wdGlvbiA9IHNlYXJjaE9wdGlvbnMuZmluZChcbiAgICAgICAgKG9wdGlvbikgPT4gb3B0aW9uPy52YWx1ZT8udG9TdHJpbmcoKSA9PT0gc2l0ZUlELFxuICAgICAgKTtcbiAgICAgIGlmIChtYXRjaGVkT3B0aW9uKSB7XG4gICAgICAgIHNldFNlYXJjaFRlcm0obWF0Y2hlZE9wdGlvbi5sYWJlbCk7XG4gICAgICB9XG4gICAgfVxuICB9LCBbc2VhcmNoT3B0aW9uc10pO1xuXG4gIGlmICghaXNIaWVyYXJjaHlUYWIpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBtYXJnaW5Ub3A6ICcxMHB4JyxcbiAgICAgICAgICBtYXJnaW5JbmxpbmVTdGFydDogJzEwcHgnLFxuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBnYXA6IDgsXG4gICAgICAgICAgekluZGV4OiAxMCxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgey8qPEJ1dHRvbiBvbkNsaWNrPXsoKSA9PiB1cGRhdGVUcmVlVmlldygxKX0+eydDb2xsYXBzZSBBbGwnfTwvQnV0dG9uPiovfVxuICAgICAgICB7Lyo8QnV0dG9uIG9uQ2xpY2s9eygpID0+IHVwZGF0ZVRyZWVWaWV3KDEyKX0+eydFeHBhbmQgQWxsJ308L0J1dHRvbj4qL31cblxuICAgICAgICB7Lyo8U2VsZWN0Ki99XG4gICAgICAgIHsvKiAgb3B0aW9ucz17bm9kZVR5cGVPcHRpb25zfSovfVxuICAgICAgICB7LyogIHZhbHVlPXtub2RlVHlwZU9wdGlvbnMuZmluZCgob3B0aW9uKSA9PiBvcHRpb24udmFsdWUgPT09IG5vZGVUeXBlKX0qL31cbiAgICAgICAgey8qICBzZXRWYWx1ZT17KHNlbGVjdGVkKSA9PiBzZXROb2RlVHlwZShzZWxlY3RlZC52YWx1ZSl9Ki99XG4gICAgICAgIHsvKiAgbWVudVdpZHRoPXsxMjB9Ki99XG4gICAgICAgIHsvKi8+Ki99XG4gICAgICAgIDxGb3JtLkdyb3VwIGNsYXNzTmFtZT17J210LTInfT5cbiAgICAgICAgICA8Rm9ybS5DaGVja1xuICAgICAgICAgICAgaW5saW5lXG4gICAgICAgICAgICBsYWJlbD17J1Nob3cgb25seSBtb25pdG9yZWQnfVxuICAgICAgICAgICAgbmFtZT1cInNob3dfb25seV9tb25pdG9yZWRcIlxuICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgIGlkPVwic2hvd19vbmx5X21vbml0b3JlZFwiXG4gICAgICAgICAgICBvbkNoYW5nZT17KGUpID0+IHtcbiAgICAgICAgICAgICAgc2V0U2hvd09ubHlNb25pdG9yZWQoIXNob3dPbmx5TW9uaXRvcmVkKTtcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBjaGVja2VkPXtzaG93T25seU1vbml0b3JlZH1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0Zvcm0uR3JvdXA+XG4gICAgICAgIDxGb3JtLkdyb3VwIGNsYXNzTmFtZT17J210LTInfT5cbiAgICAgICAgICA8Rm9ybS5DaGVja1xuICAgICAgICAgICAgaW5saW5lXG4gICAgICAgICAgICBsYWJlbD17J1Nob3cgc2FtcGxlcnMnfVxuICAgICAgICAgICAgbmFtZT1cInNob3dfc2FtcGxlcnNcIlxuICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgIGlkPVwic2hvd19zYW1wbGVyc1wiXG4gICAgICAgICAgICBvbkNoYW5nZT17KGUpID0+IHtcbiAgICAgICAgICAgICAgc2V0U2hvd1NhbXBsZXJzKCFzaG93U2FtcGxlcnMpO1xuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIGNoZWNrZWQ9e3Nob3dTYW1wbGVyc31cbiAgICAgICAgICAvPlxuICAgICAgICA8L0Zvcm0uR3JvdXA+XG4gICAgICAgIDxkaXYgc3R5bGU9e3sgd2lkdGg6ICcyNDBweCcgfX0+XG4gICAgICAgICAgPFJlYWN0U2VsZWN0XG4gICAgICAgICAgICBwbGFjZWhvbGRlcj17STE4bi50KFxuICAgICAgICAgICAgICAnZGFzaGJvYXJkX3YyLnV0aWxpdHlfZGFzaGJvYXJkLmhpZXJhcmNoeS5zZWFyY2gnLFxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHZhbHVlPXtcbiAgICAgICAgICAgICAgc2VhcmNoT3B0aW9ucy5maW5kKChvcHRpb24pID0+IG9wdGlvbi5sYWJlbCA9PT0gc2VhcmNoVGVybSkgfHxcbiAgICAgICAgICAgICAgbnVsbFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaXNMb2FkaW5nPXshc2VhcmNoT3B0aW9ucy5sZW5ndGh9XG4gICAgICAgICAgICBpc0NsZWFyYWJsZT17dHJ1ZX1cbiAgICAgICAgICAgIGlzU2VhcmNoYWJsZT17dHJ1ZX1cbiAgICAgICAgICAgIG5hbWU9XCJjb2xvclwiXG4gICAgICAgICAgICBvbkNoYW5nZT17KHZhbHVlKSA9PiBzZXRTZWFyY2hUZXJtKHZhbHVlPy5sYWJlbCB8fCAnJyl9XG4gICAgICAgICAgICBvcHRpb25zPXtzZWFyY2hPcHRpb25zfVxuICAgICAgICAgICAgb25JbnB1dENoYW5nZUNhbGxiYWNrPXsoaW5wdXQpID0+IHNldFNlYXJjaFRlcm0oaW5wdXQpfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB7Lyo8aW5wdXQqL31cbiAgICAgICAgey8qICB0eXBlPVwidGV4dFwiKi99XG4gICAgICAgIHsvKiAgc3R5bGU9e3sgaGVpZ2h0OiAnMzBweCcsIG1hcmdpblRvcDogNiwgcGFkZGluZ0lubGluZVN0YXJ0OiA1IH19Ki99XG4gICAgICAgIHsvKiAgdmFsdWU9e3NlYXJjaFRlcm19Ki99XG4gICAgICAgIHsvKiAgb25DaGFuZ2U9eyhlKSA9PiBzZXRTZWFyY2hUZXJtKGUudGFyZ2V0LnZhbHVlKX0qL31cbiAgICAgICAgey8qICBwbGFjZWhvbGRlcj1cIlNlYXJjaCBieSBuYW1lLi4uXCIqL31cbiAgICAgICAgey8qLz4qL31cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8Q29udGFpbmVyIGZsdWlkIGNsYXNzTmFtZT1cInAtMFwiIHN0eWxlPXt7IG92ZXJmbG93OiAnaGlkZGVuJyB9fT5cbiAgICAgICAgPFJvdyBjbGFzc05hbWU9XCJtYXAtY29sdW1uXCIgc209ezEyfT5cbiAgICAgICAgICA8Q29sIHN0eWxlPXt7IGhlaWdodDogJzg1dmgnIH19PlxuICAgICAgICAgICAge2VkZ2VzX2RhdGEuaXNGZXRjaGluZyB8fFxuICAgICAgICAgICAgcG9pbnRzX2RhdGEuaXNGZXRjaGluZyB8fFxuICAgICAgICAgICAgIXRyZWVEYXRhIHx8XG4gICAgICAgICAgICBpc0xvYWRpbmdTaXRlcyA/IChcbiAgICAgICAgICAgICAgPExvYWRlciAvPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPEF1dG9GaXRUcmVlXG4gICAgICAgICAgICAgICAgdHJlZUtleT17MH1cbiAgICAgICAgICAgICAgICBpbml0aWFsRGVwdGg9ezEyfVxuICAgICAgICAgICAgICAgIGRhdGE9e3RyZWVEYXRhfVxuICAgICAgICAgICAgICAgIG5vZGVUeXBlPXsnbm9kZVR5cGUnfVxuICAgICAgICAgICAgICAgIHNlYXJjaFRlcm09e3NlYXJjaFRlcm19XG4gICAgICAgICAgICAgICAgc2hvd09ubHlNb25pdG9yZWQ9e3Nob3dPbmx5TW9uaXRvcmVkfVxuICAgICAgICAgICAgICAgIHNob3dTYW1wbGVycz17c2hvd1NhbXBsZXJzfVxuICAgICAgICAgICAgICAgIG9uTm9kZUNsaWNrPXtvbk5vZGVDbGlja31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8UmlnaHRQYW5lbFxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2ByaWdodC1wYW5lbCAke3Nob3dSaWdodFBhbmVsID8gJ29wZW4nIDogJyd9YH1cbiAgICAgICAgICAgICAgcG9pbnQ9e3NlbGVjdGVkUG9pbnR9XG4gICAgICAgICAgICAgIG9uQ2xvc2U9eygpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRTZWxlY3RlZFBvaW50KG51bGwpO1xuICAgICAgICAgICAgICAgIHNldFNob3dSaWdodFBhbmVsKGZhbHNlKTtcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9Db2w+XG4gICAgICAgIDwvUm93PlxuICAgICAgPC9Db250YWluZXI+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuZXhwb3J0IGRlZmF1bHQgSGllcmFyY2h5R3JhcGg7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUVBLElBQUFLLFlBQUEsR0FBQUgsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFNLGVBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLE9BQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLFdBQUEsR0FBQU4sc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFTLEtBQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLHlCQUFBLEdBQUFWLE9BQUE7QUFFQSxJQUFBVyxZQUFBLEdBQUFULHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBWSxZQUFBLEdBQUFaLE9BQUE7QUFDQSxJQUFBYSxLQUFBLEdBQUFYLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBYyxlQUFBLEdBQUFkLE9BQUE7QUFBNkMsU0FBQWUseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFB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
|
|
200
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdXNlUXVlcnlVUkwiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3V0aWxzIiwiX3JlYWN0UmVkdXgiLCJfQXV0b0ZpdFRyZWUiLCJfcmVhY3RCb290c3RyYXAiLCJfTG9hZGVyIiwiX1JpZ2h0UGFuZWwiLCJfdXJscyIsIl91c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnkiLCJfRmlsdGVyQ29udGFpbmVyIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJIaWVyYXJjaHlHcmFwaCIsInNlYXJjaFF1ZXJ5IiwidXNlUXVlcnlVUkwiLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInNlbGVjdGVkUG9pbnQiLCJzZXRTZWxlY3RlZFBvaW50IiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJzaG93UmlnaHRQYW5lbCIsInNldFNob3dSaWdodFBhbmVsIiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJmaWx0ZXJPcHRpb25zIiwic2V0RmlsdGVyT3B0aW9ucyIsImlzSGllcmFyY2h5VGFiIiwicG9pbnRzX2RhdGEiLCJlZGdlc19kYXRhIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwiZ2xvYmFsX2RhdGEiLCJvbk5vZGVDbGljayIsIm5vZGVEYXRhIiwiaXRlbXMiLCJmaW5kIiwicCIsImlkIiwiYXR0cmlidXRlcyIsInBvaW50X2lkIiwiZmFjdG9yaWVzRW5kUG9pbnQiLCJ1c2VNZW1vIiwidXJscyIsImRhc2hib2FyZCIsIlV0aWxpdHkiLCJmYWN0b3JpZXMiLCJwYXJhbXNBbGwiLCJ0eXBlIiwiX3VzZUFwaVdpdGhEYXNoYm9hcmRRIiwidXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5IiwiX3VzZUFwaVdpdGhEYXNoYm9hcmRRMiIsInJlc3BvbnNlU2l0ZXMiLCJpc0xvYWRpbmdTaXRlcyIsImVycm9yU2l0ZXMiLCJwb2xsdXRpb25CeVNpdGVJZCIsIm0iLCJNYXAiLCJkYXRhIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIyIiwiX3N0ZXAiLCJzIiwibiIsImRvbmUiLCJfc3RlcCR2YWx1ZSIsInZhbHVlIiwic2l0ZV9pZCIsInBvbGx1dGlvbiIsInNlY3Rvcl9uYW1lIiwic2VjdG9yX2lkIiwiY29udHJpYnV0b3JfcGVyY2VudHMiLCJleHRyYURhdGEiLCJ0eXBlX2Rpc3RyaWJ1dGlvbiIsImVyciIsImUiLCJmIiwiZGVjb3JhdGVkUG9pbnRzQnlJZCIsImJhc2UiLCJtYXBCeUlkIiwiY29weSIsIl9pIiwiX09iamVjdCRrZXlzIiwia2V5cyIsImxlbmd0aCIsIm51bUlkIiwiTnVtYmVyIiwiX29iamVjdFNwcmVhZDIiLCJlZGdlc1dpdGhEZXZpY2UiLCJwb2ludHNXaXRoRGV2aWNlIiwiZmlsdGVyIiwiaGFzX2RldmljZSIsImVkZ2UiLCJzb3VyY2VfcG9pbnRfaWQiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwiZmlsdGVyUG9pbnRzIiwicG9pbnRzT3B0aW9uIiwicG9pbnRMaXN0IiwiZm9yRWFjaCIsInNvdXJjZVBvaW50IiwidGFyZ2V0UG9pbnQiLCJ0YXJnZXRfcG9pbnRfaWQiLCJuYW1lIiwiZ3JvdXAiLCJ2YWx1ZXMiLCJ0cmVlRGF0YSIsImJ1aWxkVHJlZSIsInVwZGF0ZUZpbHRlciIsImFwcGxpZWRGaWx0ZXIiLCJzZWxlY3RlZEZpbHRlcnMiLCJmaWx0ZXJfaXRlbXMiLCJpdGVtIiwic2VsZWN0ZWRfb3B0aW9ucyIsImNyZWF0ZUVsZW1lbnQiLCJmaWx0ZXJQb3B1cE9wZW4iLCJmZXRjaFR5cGUiLCJhcHBseUxvZ2ljIiwiY3VzdG9tX3BvaW50cyIsIkNvbnRhaW5lciIsImZsdWlkIiwiY2xhc3NOYW1lIiwic3R5bGUiLCJvdmVyZmxvdyIsIlJvdyIsInNtIiwiQ29sIiwiaGVpZ2h0IiwiaXNGZXRjaGluZyIsIkxvYWRlciIsInRyZWVLZXkiLCJpbml0aWFsRGVwdGgiLCJjb25jYXQiLCJwb2ludCIsIm9uQ2xvc2UiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdWkta2l0L0hpZXJhcmNoeUdyYXBoL0hpZXJhcmNoeUdyYXBoLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJy4uLy4uL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IGJ1aWxkVHJlZSwgbWFwQnlJZCB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBBdXRvRml0VHJlZSBmcm9tICcuL0F1dG9GaXRUcmVlJztcbmltcG9ydCB7IENvbnRhaW5lciwgUm93LCBDb2wgfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgTG9hZGVyIH0gZnJvbSAnLi4vLi4vcGFnZXMvRGFzaGJvYXJkTWFwL0xvYWRlcic7XG5pbXBvcnQgUmlnaHRQYW5lbCBmcm9tICcuLi8uLi9wYWdlcy9PcGVyYXRpb25zUGFnZS9SaWdodFBhbmVsJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvdXJscyc7XG5pbXBvcnQgeyB1c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnkgfSBmcm9tICcuLi8uLi9ob29rcy91c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnknO1xuaW1wb3J0IHsgRmFjdG9yaWVzUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9XaWRnZXRzL01vc3RQb2xsdXRpbmcvRmFjdG9yaWVzL2ZhY3Rvcmllc1Jlc3BvbnNlLmludGVyZmFjZSc7XG5pbXBvcnQgRmlsdGVyQ29udGFpbmVyIGZyb20gJy4uLy4uL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0ZpbHRlci9GaWx0ZXJDb250YWluZXInO1xuXG5jb25zdCBIaWVyYXJjaHlHcmFwaCA9ICgpID0+IHtcbiAgY29uc3Qgc2VhcmNoUXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCBSZWR1eFN0YXRlID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZSk7XG4gIGNvbnN0IFtzZWxlY3RlZFBvaW50LCBzZXRTZWxlY3RlZFBvaW50XSA9IHVzZVN0YXRlKG51bGwpO1xuICBjb25zdCBbc2hvd1JpZ2h0UGFuZWwsIHNldFNob3dSaWdodFBhbmVsXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2ZpbHRlck9wdGlvbnMsIHNldEZpbHRlck9wdGlvbnNdID0gdXNlU3RhdGUoe30pO1xuICBjb25zdCBpc0hpZXJhcmNoeVRhYiA9IHNlYXJjaFF1ZXJ5LmdldCgndmlldycpID09PSAnaGllcmFyY2h5JztcbiAgY29uc3Qge1xuICAgIHBvaW50c19kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgZ2xvYmFsX2RhdGE6IHsgd2F0ZXJBdXRob3JpdHlOYW1lIH0sXG4gIH0gPSBSZWR1eFN0YXRlO1xuXG4gIGNvbnN0IG9uTm9kZUNsaWNrID0gKG5vZGVEYXRhKSA9PiB7XG4gICAgc2V0U2VsZWN0ZWRQb2ludChcbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLmZpbmQoKHApID0+IHAuaWQgPT09IG5vZGVEYXRhLmF0dHJpYnV0ZXMucG9pbnRfaWQpLFxuICAgICk7XG4gICAgc2V0U2hvd1JpZ2h0UGFuZWwoIXNob3dSaWdodFBhbmVsKTtcbiAgfTtcblxuICAvLyBzdGFibGUgZW5kcG9pbnRzL3BhcmFtcyDinIVcbiAgY29uc3QgZmFjdG9yaWVzRW5kUG9pbnQgPSB1c2VNZW1vKFxuICAgICgpID0+IHVybHMoKS5kYXNoYm9hcmQuVXRpbGl0eS5mYWN0b3JpZXMsXG4gICAgW10sXG4gICk7XG5cbiAgY29uc3QgcGFyYW1zQWxsID0gdXNlTWVtbygoKSA9PiAoeyB0eXBlOiAnQWxsJyB9KSwgW10pO1xuXG4gIC8vIGZldGNoZXNcbiAgY29uc3QgW3Jlc3BvbnNlU2l0ZXMsIGlzTG9hZGluZ1NpdGVzLCBlcnJvclNpdGVzXSA9XG4gICAgdXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5PEZhY3Rvcmllc1Jlc3BvbnNlPihmYWN0b3JpZXNFbmRQb2ludCwgcGFyYW1zQWxsKTtcblxuICAvLyAxKSBCdWlsZCBhIHBvbGx1dGlvbiBtYXAgZnJvbSBib3RoIHJlc3BvbnNlcyAobm8gc3RhdGU7IHB1cmUgbWVtbylcbiAgY29uc3QgcG9sbHV0aW9uQnlTaXRlSWQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBtID0gbmV3IE1hcDxudW1iZXIsIGFueT4oKTtcbiAgICBpZiAocmVzcG9uc2VTaXRlcz8uZGF0YSkge1xuICAgICAgZm9yIChjb25zdCB7XG4gICAgICAgIHNpdGVfaWQsXG4gICAgICAgIHBvbGx1dGlvbixcbiAgICAgICAgc2VjdG9yX25hbWUsXG4gICAgICAgIHNlY3Rvcl9pZCxcbiAgICAgICAgY29udHJpYnV0b3JfcGVyY2VudHMsXG4gICAgICB9IG9mIHJlc3BvbnNlU2l0ZXMuZGF0YSkge1xuICAgICAgICBjb25zdCBleHRyYURhdGEgPSB7IHNlY3Rvcl9uYW1lLCBjb250cmlidXRvcl9wZXJjZW50cywgc2VjdG9yX2lkIH07XG4gICAgICAgIGlmIChwb2xsdXRpb24/LnR5cGVfZGlzdHJpYnV0aW9uKVxuICAgICAgICAgIGV4dHJhRGF0YVsncG9sbHV0aW9uJ10gPSBwb2xsdXRpb24udHlwZV9kaXN0cmlidXRpb247XG4gICAgICAgIG0uc2V0KHNpdGVfaWQsIGV4dHJhRGF0YSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBtO1xuICB9LCBbcmVzcG9uc2VTaXRlcz8uZGF0YV0pO1xuXG4gIC8vIDIpIENyZWF0ZSBhIFNBRkUgY29weSBvZiBwb2ludF9tYXBfZGF0YSB3aXRoIHBvbGx1dGlvbiBtZXJnZWQgaW4gKG5vIG11dGF0aW9ucylcbiAgY29uc3QgZGVjb3JhdGVkUG9pbnRzQnlJZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIC8vIG1hcEJ5SWQocG9pbnRzX2RhdGEuaXRlbXMpIHJldHVybnMgYSBwbGFpbiBvYmplY3Qga2V5ZWQgYnkgaWQ7IGNsb25lIGl0XG4gICAgY29uc3QgYmFzZSA9IG1hcEJ5SWQocG9pbnRzX2RhdGEuaXRlbXMpO1xuICAgIGNvbnN0IGNvcHk6IFJlY29yZDxudW1iZXIsIGFueT4gPSB7fTtcbiAgICBmb3IgKGNvbnN0IGlkIG9mIE9iamVjdC5rZXlzKGJhc2UpKSB7XG4gICAgICBjb25zdCBudW1JZCA9IE51bWJlcihpZCk7XG4gICAgICBjb25zdCBwb2xsdXRpb24gPSBwb2xsdXRpb25CeVNpdGVJZC5nZXQobnVtSWQpO1xuICAgICAgLy8gc2hhbGxvdyBjbG9uZSBlYWNoIHBvaW50OyBhZGQgcG9sbHV0aW9uIGlmIGV4aXN0c1xuICAgICAgY29weVtudW1JZF0gPSBwb2xsdXRpb25cbiAgICAgICAgPyB7IC4uLmJhc2VbbnVtSWRdLCAuLi5wb2xsdXRpb24gfVxuICAgICAgICA6IHsgLi4uYmFzZVtudW1JZF0gfTtcbiAgICB9XG4gICAgcmV0dXJuIGNvcHk7XG4gIH0sIFtwb2ludHNfZGF0YS5pdGVtcywgcG9sbHV0aW9uQnlTaXRlSWRdKTtcblxuICAvLyAzKSBDb21wdXRlIGVkZ2VzV2l0aERldmljZSBzYWZlbHkvbWVtb2l6ZWQgKG5vIGV4dHJhIHJlbmRlcnMpXG4gIGNvbnN0IGVkZ2VzV2l0aERldmljZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IHBvaW50c1dpdGhEZXZpY2UgPSBtYXBCeUlkKFxuICAgICAgcG9pbnRzX2RhdGEuaXRlbXMuZmlsdGVyKChwKSA9PiBwLmhhc19kZXZpY2UpLFxuICAgICk7XG4gICAgcmV0dXJuIGVkZ2VzX2RhdGEuaXRlbXMuZmlsdGVyKFxuICAgICAgKGVkZ2UpID0+XG4gICAgICAgIHBvaW50c1dpdGhEZXZpY2VbZWRnZS5zb3VyY2VfcG9pbnRfaWRdIHx8IGVkZ2UuZGVzY2VuZGFudHNfaGFzX2RldmljZSxcbiAgICApO1xuICB9LCBbcG9pbnRzX2RhdGEuaXRlbXMsIGVkZ2VzX2RhdGEuaXRlbXNdKTtcblxuICBjb25zdCBmaWx0ZXJQb2ludHMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBwb2ludHNPcHRpb24gPSB7fTtcbiAgICBjb25zdCBwb2ludExpc3QgPSBwb2ludHNfZGF0YS5pdGVtcztcbiAgICBlZGdlc1dpdGhEZXZpY2UuZm9yRWFjaCgoZWRnZSkgPT4ge1xuICAgICAgY29uc3Qgc291cmNlUG9pbnQgPSBwb2ludExpc3QuZmluZCgocCkgPT4gcC5pZCA9PT0gZWRnZS5zb3VyY2VfcG9pbnRfaWQpO1xuICAgICAgY29uc3QgdGFyZ2V0UG9pbnQgPSBwb2ludExpc3QuZmluZCgocCkgPT4gcC5pZCA9PT0gZWRnZS50YXJnZXRfcG9pbnRfaWQpO1xuICAgICAgaWYgKHNvdXJjZVBvaW50KVxuICAgICAgICBwb2ludHNPcHRpb25bc291cmNlUG9pbnQuaWRdID0ge1xuICAgICAgICAgIGlkOiBzb3VyY2VQb2ludC5pZCxcbiAgICAgICAgICBuYW1lOiBzb3VyY2VQb2ludC5ncm91cC5uYW1lLFxuICAgICAgICB9O1xuICAgICAgaWYgKHRhcmdldFBvaW50KVxuICAgICAgICBwb2ludHNPcHRpb25bdGFyZ2V0UG9pbnQuaWRdID0ge1xuICAgICAgICAgIGlkOiB0YXJnZXRQb2ludC5pZCxcbiAgICAgICAgICBuYW1lOiB0YXJnZXRQb2ludC5ncm91cC5uYW1lLFxuICAgICAgICB9O1xuICAgIH0pO1xuICAgIHJldHVybiBPYmplY3QudmFsdWVzKHBvaW50c09wdGlvbik7XG4gIH0sIFtwb2ludHNfZGF0YS5pdGVtcywgZWRnZXNXaXRoRGV2aWNlXSk7XG5cbiAgLy8gNCkgQnVpbGQgdGhlIHRyZWUgT05MWSB3aGVuIGRhdGEgaXMgcmVhZHk7IGtlZXAgcmVmZXJlbnRpYWwgc3RhYmlsaXR5XG4gIGNvbnN0IHRyZWVEYXRhID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGlzTG9hZGluZ1NpdGVzIHx8IGVycm9yU2l0ZXMpIHJldHVybiBudWxsO1xuXG4gICAgcmV0dXJuIGJ1aWxkVHJlZShlZGdlc1dpdGhEZXZpY2UsIGRlY29yYXRlZFBvaW50c0J5SWQsIHdhdGVyQXV0aG9yaXR5TmFtZSk7XG4gIH0sIFtcbiAgICBlZGdlc1dpdGhEZXZpY2UsXG4gICAgZGVjb3JhdGVkUG9pbnRzQnlJZCxcbiAgICB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgaXNMb2FkaW5nU2l0ZXMsXG4gICAgZXJyb3JTaXRlcyxcbiAgXSk7XG5cbiAgY29uc3QgdXBkYXRlRmlsdGVyID0gKGFwcGxpZWRGaWx0ZXIpID0+IHtcbiAgICAvLyBQcm9jZXNzIHRoZSBhcHBsaWVkIGZpbHRlciBhcyBuZWVkZWRcbiAgICBjb25zdCBzZWxlY3RlZEZpbHRlcnMgPSB7fTtcblxuICAgIGFwcGxpZWRGaWx0ZXIuZmlsdGVyX2l0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIHNlbGVjdGVkRmlsdGVyc1tpdGVtLnR5cGVdID0gaXRlbS5zZWxlY3RlZF9vcHRpb25zO1xuICAgIH0pO1xuICAgIHNldEZpbHRlck9wdGlvbnMoc2VsZWN0ZWRGaWx0ZXJzKTtcbiAgICAvLyBZb3UgY2FuIHVwZGF0ZSBzdGF0ZSBvciBtYWtlIEFQSSBjYWxscyBiYXNlZCBvbiB0aGUgYXBwbGllZCBmaWx0ZXJcbiAgfTtcblxuICBpZiAoIWlzSGllcmFyY2h5VGFiKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXY+XG4gICAgICA8RmlsdGVyQ29udGFpbmVyXG4gICAgICAgIGZpbHRlclBvcHVwT3Blbj17dHJ1ZX1cbiAgICAgICAgZmV0Y2hUeXBlPXsnSGllcmFyY2h5RmlsdGVyJ31cbiAgICAgICAgYXBwbHlMb2dpYz17dXBkYXRlRmlsdGVyfVxuICAgICAgICBjdXN0b21fcG9pbnRzPXtmaWx0ZXJQb2ludHN9XG4gICAgICAvPlxuXG4gICAgICA8Q29udGFpbmVyIGZsdWlkIGNsYXNzTmFtZT1cInAtMFwiIHN0eWxlPXt7IG92ZXJmbG93OiAnaGlkZGVuJyB9fT5cbiAgICAgICAgPFJvdyBjbGFzc05hbWU9XCJtYXAtY29sdW1uXCIgc209ezEyfT5cbiAgICAgICAgICA8Q29sIHN0eWxlPXt7IGhlaWdodDogJzg1dmgnIH19PlxuICAgICAgICAgICAge2VkZ2VzX2RhdGEuaXNGZXRjaGluZyB8fFxuICAgICAgICAgICAgcG9pbnRzX2RhdGEuaXNGZXRjaGluZyB8fFxuICAgICAgICAgICAgIXRyZWVEYXRhIHx8XG4gICAgICAgICAgICBpc0xvYWRpbmdTaXRlcyA/IChcbiAgICAgICAgICAgICAgPExvYWRlciAvPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPEF1dG9GaXRUcmVlXG4gICAgICAgICAgICAgICAgdHJlZUtleT17MH1cbiAgICAgICAgICAgICAgICBpbml0aWFsRGVwdGg9ezEyfVxuICAgICAgICAgICAgICAgIGRhdGE9e3RyZWVEYXRhfVxuICAgICAgICAgICAgICAgIHNlbGVjdGVkRmlsdGVycz17ZmlsdGVyT3B0aW9uc31cbiAgICAgICAgICAgICAgICBvbk5vZGVDbGljaz17b25Ob2RlQ2xpY2t9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgICAgPFJpZ2h0UGFuZWxcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgcmlnaHQtcGFuZWwgJHtzaG93UmlnaHRQYW5lbCA/ICdvcGVuJyA6ICcnfWB9XG4gICAgICAgICAgICAgIHBvaW50PXtzZWxlY3RlZFBvaW50fVxuICAgICAgICAgICAgICBvbkNsb3NlPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0U2VsZWN0ZWRQb2ludChudWxsKTtcbiAgICAgICAgICAgICAgICBzZXRTaG93UmlnaHRQYW5lbChmYWxzZSk7XG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvQ29sPlxuICAgICAgICA8L1Jvdz5cbiAgICAgIDwvQ29udGFpbmVyPlxuICAgIDwvZGl2PlxuICApO1xufTtcbmV4cG9ydCBkZWZhdWx0IEhpZXJhcmNoeUdyYXBoO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUVBLElBQUFLLFlBQUEsR0FBQUgsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFNLGVBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLE9BQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLFdBQUEsR0FBQU4sc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFTLEtBQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLHlCQUFBLEdBQUFWLE9BQUE7QUFFQSxJQUFBVyxnQkFBQSxHQUFBVCxzQkFBQSxDQUFBRixPQUFBO0FBQStGLFNBQUFZLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBZCx3QkFBQWtC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
|
|
@@ -19,6 +19,7 @@ var _icons = require("utilities/map/icons");
|
|
|
19
19
|
require("./style.scss");
|
|
20
20
|
var _PollutionScorePercent = require("../../Widgets/MostPolluting/components/PollutionScorePercent");
|
|
21
21
|
var _scoreToData = require("../../utilities/scoreToData");
|
|
22
|
+
var _SeverityBadge = require("../../pages/DashboardMap/SeverityBadge");
|
|
22
23
|
var NodeLayout = function NodeLayout(_ref) {
|
|
23
24
|
var _nodeDatum$attributes, _nodeDatum$attributes2, _nodeDatum$attributes3, _nodeDatum$attributes4, _nodeDatum$name, _nodeDatum$name$toLow, _nodeDatum$attributes5, _nodeDatum$attributes6, _nodeDatum$attributes7, _nodeDatum$attributes8, _nodeDatum$attributes9, _nodeDatum$attributes10;
|
|
24
25
|
var nodeDatum = _ref.nodeDatum,
|
|
@@ -37,7 +38,7 @@ var NodeLayout = function NodeLayout(_ref) {
|
|
|
37
38
|
|
|
38
39
|
var cardStyle = {
|
|
39
40
|
borderRadius: '4px',
|
|
40
|
-
borderColor: isHighlighted ? _theme.theme.
|
|
41
|
+
borderColor: isHighlighted ? _theme.theme.brand.surface.muted : borderColor,
|
|
41
42
|
borderStyle: isMonitored ? 'solid' : 'dashed',
|
|
42
43
|
borderWidth: '3px',
|
|
43
44
|
backgroundColor: '#FFFFFF',
|
|
@@ -65,7 +66,7 @@ var NodeLayout = function NodeLayout(_ref) {
|
|
|
65
66
|
height: "250"
|
|
66
67
|
}, ((_nodeDatum$attributes10 = nodeDatum.attributes) === null || _nodeDatum$attributes10 === void 0 ? void 0 : _nodeDatum$attributes10.point_id) && /*#__PURE__*/_react.default.createElement(_utils.ActionsContainer, null, /*#__PURE__*/_react.default.createElement(_StyledLink.StyledLink, {
|
|
67
68
|
style: {
|
|
68
|
-
stroke:
|
|
69
|
+
stroke: _theme.theme.brand.surface.default,
|
|
69
70
|
strokeWidth: 1,
|
|
70
71
|
background: 'white',
|
|
71
72
|
marginInlineStart: 64
|
|
@@ -121,10 +122,16 @@ var NodeLayout = function NodeLayout(_ref) {
|
|
|
121
122
|
_react.default.createElement(_PollutionScorePercent.Wrapper, {
|
|
122
123
|
scoreColor: (0, _scoreToData.scoreToColor)(score),
|
|
123
124
|
up: true
|
|
124
|
-
},
|
|
125
|
+
}, /*#__PURE__*/_react.default.createElement(_SeverityBadge.SeverityBadge, {
|
|
126
|
+
props: {
|
|
127
|
+
score: score,
|
|
128
|
+
has_device: isMonitored
|
|
129
|
+
},
|
|
130
|
+
className: 'score'
|
|
131
|
+
}))))), isLeafNode && /*#__PURE__*/_react.default.createElement(_LeafSign.default, {
|
|
125
132
|
color: borderColor
|
|
126
133
|
}));
|
|
127
134
|
};
|
|
128
135
|
var _default = NodeLayout;
|
|
129
136
|
exports.default = _default;
|
|
130
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9DYXJkTGF5b3V0IiwiX05vZGVJY29uIiwiX1RvcE5hdmJhciIsIl9TdHlsZWRMaW5rIiwiX3V0aWxzIiwiX0xlYWZTaWduIiwiX3JlYWN0STE4bmV4dCIsIl9yZWFjdEJvb3RzdHJhcCIsIl90aGVtZSIsIl9pY29ucyIsIl9Qb2xsdXRpb25TY29yZVBlcmNlbnQiLCJfc2NvcmVUb0RhdGEiLCJOb2RlTGF5b3V0IiwiX3JlZiIsIl9ub2RlRGF0dW0kYXR0cmlidXRlcyIsIl9ub2RlRGF0dW0kYXR0cmlidXRlczIiLCJfbm9kZURhdHVtJGF0dHJpYnV0ZXMzIiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzNCIsIl9ub2RlRGF0dW0kbmFtZSIsIl9ub2RlRGF0dW0kbmFtZSR0b0xvdyIsIl9ub2RlRGF0dW0kYXR0cmlidXRlczUiLCJfbm9kZURhdHVtJGF0dHJpYnV0ZXM2IiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzNyIsIl9ub2RlRGF0dW0kYXR0cmlidXRlczgiLCJfbm9kZURhdHVtJGF0dHJpYnV0ZXM5IiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzMTAiLCJub2RlRGF0dW0iLCJ0b2dnbGVOb2RlIiwic2VhcmNoVGVybSIsInNob3dTYW1wbGVycyIsImNoaWxkcmVuIiwiY29udGVudFN0eWxlIiwiZmFjdG9yeVR5cGUiLCJhdHRyaWJ1dGVzIiwidHlwZSIsImlzTGVhZk5vZGUiLCJsZW5ndGgiLCJpc01vbml0b3JlZCIsIm1vbml0b3JlZCIsInNjb3JlIiwiYm9yZGVyQ29sb3IiLCJ0aGVtZSIsIm5hdHVyYWwiLCJuMzAiLCJpc0hpZ2hsaWdodGVkIiwibmFtZSIsInRvTG93ZXJDYXNlIiwiaW5jbHVkZXMiLCJhcmVhX25hbWUiLCJjYXJkU3R5bGUiLCJib3JkZXJSYWRpdXMiLCJjb2xvclNjaGVtZSIsInNlY29uZGFyeSIsInMxIiwiYm9yZGVyU3R5bGUiLCJib3JkZXJXaWR0aCIsImJhY2tncm91bmRDb2xvciIsInN0cm9rZSIsImhlaWdodCIsInRpdGxlIiwiaXNTaG93U2FtcGxlciIsImhhc19zYW1wbGVyIiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJvbkNsaWNrIiwic3R5bGUiLCJjdXJzb3IiLCJ4IiwieSIsIndpZHRoIiwicG9pbnRfaWQiLCJBY3Rpb25zQ29udGFpbmVyIiwiU3R5bGVkTGluayIsInN0cm9rZVdpZHRoIiwiYmFja2dyb3VuZCIsIm1hcmdpbklubGluZVN0YXJ0IiwidGFyZ2V0IiwidXBkYXRlUGFyYW1zIiwidmlldyIsInRvIiwiY29uY2F0IiwiZSIsInN0b3BQcm9wYWdhdGlvbiIsIk92ZXJsYXlUcmlnZ2VyIiwib3ZlcmxheSIsIlRvb2x0aXAiLCJpZCIsInBsYWNlbWVudCIsIlRyYW5zIiwiaTE4bktleSIsIk1hcFN2ZyIsImNsYXNzTmFtZSIsInNyYyIsInNhbXBsZXJJY29uIiwiYWx0IiwiaGVhZGVyUmlnaHQiLCJXcmFwcGVyIiwic2NvcmVDb2xvciIsInNjb3JlVG9Db2xvciIsInVwIiwicmVuZGVyX3Njb3JlX3VuZGVmaW5lZCIsInNjb3JlVG9MYWJlbCIsInNjb3JlTGV2ZWwiLCJjb2xvciIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91aS1raXQvSGllcmFyY2h5R3JhcGgvTm9kZUxheW91dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBDYXJkTGF5b3V0IGZyb20gJy4uLy4uL1dpZGdldHMvTW9zdFBvbGx1dGluZy9GYWN0b3JpZXMvRmFjdG9yeUJveC9DYXJkTGF5b3V0JztcbmltcG9ydCBOb2RlSWNvbiBmcm9tICcuL05vZGVJY29uJztcbmltcG9ydCB7IE1hcFN2ZyB9IGZyb20gJy4uLy4uL2Fzc2V0cy9pY29ucy9Ub3BOYXZiYXInO1xuaW1wb3J0IHsgU3R5bGVkTGluayB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0xpbmtzL1N0eWxlZExpbmsvU3R5bGVkTGluayc7XG5pbXBvcnQgeyBBY3Rpb25zQ29udGFpbmVyLCBOb2RlUHJvcHMgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCBMZWFmU2lnbiBmcm9tICcuL0xlYWZTaWduJztcbmltcG9ydCB7IFRyYW5zIH0gZnJvbSAncmVhY3QtaTE4bmV4dCc7XG5pbXBvcnQgeyBPdmVybGF5VHJpZ2dlciwgVG9vbHRpcCB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyB0aGVtZSB9IGZyb20gJy4uLy4uL3N0eWxlcy90aGVtZS90aGVtZSc7XG5pbXBvcnQgeyBzYW1wbGVySWNvbiB9IGZyb20gJ3NyYy91dGlsaXRpZXMvbWFwL2ljb25zJztcbmltcG9ydCAnLi9zdHlsZS5zY3NzJztcbmltcG9ydCB7XG4gIHJlbmRlcl9zY29yZV91bmRlZmluZWQsXG4gIHNjb3JlTGV2ZWwsXG4gIFdyYXBwZXIsXG59IGZyb20gJy4uLy4uL1dpZGdldHMvTW9zdFBvbGx1dGluZy9jb21wb25lbnRzL1BvbGx1dGlvblNjb3JlUGVyY2VudCc7XG5pbXBvcnQgeyBzY29yZVRvQ29sb3IsIHNjb3JlVG9MYWJlbCB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9zY29yZVRvRGF0YSc7XG5cbmNvbnN0IE5vZGVMYXlvdXQgPSAoe1xuICBub2RlRGF0dW0sXG4gIHRvZ2dsZU5vZGUsXG4gIHNlYXJjaFRlcm0sXG4gIHNob3dTYW1wbGVycyxcbiAgY2hpbGRyZW4sXG4gIGNvbnRlbnRTdHlsZSxcbn06IE5vZGVQcm9wcykgPT4ge1xuICBjb25zdCBmYWN0b3J5VHlwZSA9IG5vZGVEYXR1bS5hdHRyaWJ1dGVzPy50eXBlIHx8ICcnO1xuICBjb25zdCBpc0xlYWZOb2RlID0gIW5vZGVEYXR1bS5jaGlsZHJlbiB8fCBub2RlRGF0dW0uY2hpbGRyZW4ubGVuZ3RoID09PSAwO1xuICBjb25zdCBpc01vbml0b3JlZCA9IG5vZGVEYXR1bS5hdHRyaWJ1dGVzPy5tb25pdG9yZWQ7XG4gIGNvbnN0IHNjb3JlID0gbm9kZURhdHVtLmF0dHJpYnV0ZXM/LnNjb3JlID8/IC0xO1xuICBjb25zdCBib3JkZXJDb2xvciA9IHRoZW1lLm5hdHVyYWwubjMwO1xuICBjb25zdCBpc0hpZ2hsaWdodGVkID1cbiAgICAhIXNlYXJjaFRlcm0gJiZcbiAgICAobm9kZURhdHVtLm5hbWU/LnRvTG93ZXJDYXNlKCk/LmluY2x1ZGVzKHNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSkgfHxcbiAgICAgIG5vZGVEYXR1bT8uYXR0cmlidXRlcz8uYXJlYV9uYW1lXG4gICAgICAgID8udG9Mb3dlckNhc2UoKVxuICAgICAgICA/LmluY2x1ZGVzKHNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSkpO1xuICAvLyBjb25zdCBpc0ZvY3VzZWQgPSBzaXRlSUQgPT09IG5vZGVEYXR1bS5hdHRyaWJ1dGVzPy5wb2ludF9pZD8udG9TdHJpbmcoKTtcblxuICBjb25zdCBjYXJkU3R5bGU6IFJlYWN0LkNTU1Byb3BlcnRpZXMgPSB7XG4gICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcbiAgICBib3JkZXJDb2xvcjogaXNIaWdobGlnaHRlZCA/IHRoZW1lLmNvbG9yU2NoZW1lLnNlY29uZGFyeS5zMSA6IGJvcmRlckNvbG9yLFxuICAgIGJvcmRlclN0eWxlOiBpc01vbml0b3JlZCA/ICdzb2xpZCcgOiAnZGFzaGVkJyxcbiAgICBib3JkZXJXaWR0aDogJzNweCcsXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRicsXG4gICAgc3Ryb2tlOiAnbm9uZScsXG4gICAgaGVpZ2h0OiAnMTcwcHgnLFxuICB9O1xuICBjb25zdCB0aXRsZSA9XG4gICAgZmFjdG9yeVR5cGUgPT09ICdhcmVhJ1xuICAgICAgPyBub2RlRGF0dW0uYXR0cmlidXRlcz8uYXJlYV9uYW1lIHx8IG5vZGVEYXR1bS5uYW1lXG4gICAgICA6IG5vZGVEYXR1bS5uYW1lO1xuICAvLyBjb25zdCBvblNob3dEZXRhaWxzID0gKGV2ZW50KSA9PiB7XG4gIC8vICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIC8vICAgb25Ob2RlQ2xpY2sobm9kZURhdHVtKTtcbiAgLy8gfTtcbiAgY29uc3QgaXNTaG93U2FtcGxlciA9IHNob3dTYW1wbGVycyAmJiBub2RlRGF0dW0uYXR0cmlidXRlcz8uaGFzX3NhbXBsZXI7XG5cbiAgaWYgKCFub2RlRGF0dW0ubmFtZSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiAoXG4gICAgPGcgb25DbGljaz17dG9nZ2xlTm9kZX0gc3R5bGU9e3sgY3Vyc29yOiAncG9pbnRlcicgfX0+XG4gICAgICA8Zm9yZWlnbk9iamVjdCB4PVwiLTEwMFwiIHk9XCItMTM3XCIgd2lkdGg9XCIyMDBcIiBoZWlnaHQ9XCIyNTBcIj5cbiAgICAgICAge25vZGVEYXR1bS5hdHRyaWJ1dGVzPy5wb2ludF9pZCAmJiAoXG4gICAgICAgICAgPEFjdGlvbnNDb250YWluZXI+XG4gICAgICAgICAgICB7Lyp7ZWFybHlBZG9wdGVyICYmICgqL31cbiAgICAgICAgICAgIHsvKiAgPHNwYW4gc3R5bGU9e3sgbWFyZ2luSW5saW5lRW5kOiAnOHB4JyB9fT4qL31cbiAgICAgICAgICAgIHsvKiAgICA8T3ZlcmxheVRyaWdnZXIqL31cbiAgICAgICAgICAgIHsvKiAgICAgIG92ZXJsYXk9eyovfVxuICAgICAgICAgICAgey8qICAgICAgICA8VG9vbHRpcCBpZD17J2RldGFpbHMnfSBwbGFjZW1lbnQ9XCJhdXRvXCI+Ki99XG4gICAgICAgICAgICB7LyogICAgICAgICAgPFRyYW5zKi99XG4gICAgICAgICAgICB7LyogICAgICAgICAgICBpMThuS2V5PXsnZ3JvdXBfc2NyZWVuLmdlbmVyYWxfdGFiLmdyb3VwX2RldGFpbHMnfSovfVxuICAgICAgICAgICAgey8qICAgICAgICAgIC8+Ki99XG4gICAgICAgICAgICB7LyogICAgICAgIDwvVG9vbHRpcD4qL31cbiAgICAgICAgICAgIHsvKiAgICAgIH0qL31cbiAgICAgICAgICAgIHsvKiAgICA+Ki99XG4gICAgICAgICAgICB7LyogICAgICA8RGV0YWlsc1N2ZyBvbkNsaWNrPXtvblNob3dEZXRhaWxzfSAvPiovfVxuICAgICAgICAgICAgey8qICAgIDwvT3ZlcmxheVRyaWdnZXI+Ki99XG4gICAgICAgICAgICB7LyogIDwvc3Bhbj4qL31cbiAgICAgICAgICAgIHsvKil9Ki99XG4gICAgICAgICAgICA8U3R5bGVkTGlua1xuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIHN0cm9rZTogYm9yZGVyQ29sb3IsXG4gICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDEsXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJ3doaXRlJyxcbiAgICAgICAgICAgICAgICBtYXJnaW5JbmxpbmVTdGFydDogNjQsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgIHVwZGF0ZVBhcmFtcz17eyB2aWV3OiAnbWFwJyB9fVxuICAgICAgICAgICAgICB0bz17YC9kYXNoYm9hcmRfdjIvc2l0ZS8ke25vZGVEYXR1bS5hdHRyaWJ1dGVzLnBvaW50X2lkfWB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eyhlKSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8T3ZlcmxheVRyaWdnZXJcbiAgICAgICAgICAgICAgICBvdmVybGF5PXtcbiAgICAgICAgICAgICAgICAgIDxUb29sdGlwIGlkPVwibWFwXCIgcGxhY2VtZW50PVwiYXV0b1wiPlxuICAgICAgICAgICAgICAgICAgICA8VHJhbnMgaTE4bktleT17J2hlYWRlci5tYXAnfSAvPlxuICAgICAgICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxNYXBTdmcgc3R5bGU9e3sgd2lkdGg6IDU1LCBoZWlnaHQ6IDU1IH19IC8+XG4gICAgICAgICAgICAgIDwvT3ZlcmxheVRyaWdnZXI+XG4gICAgICAgICAgICA8L1N0eWxlZExpbms+XG4gICAgICAgICAgICB7aXNTaG93U2FtcGxlciAmJiAoXG4gICAgICAgICAgICAgIDxPdmVybGF5VHJpZ2dlclxuICAgICAgICAgICAgICAgIG92ZXJsYXk9e1xuICAgICAgICAgICAgICAgICAgPFRvb2x0aXAgaWQ9XCJzYW1wbGVyXCIgcGxhY2VtZW50PVwiYXV0b1wiPlxuICAgICAgICAgICAgICAgICAgICA8VHJhbnNcbiAgICAgICAgICAgICAgICAgICAgICBpMThuS2V5PXtcbiAgICAgICAgICAgICAgICAgICAgICAgICdkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQuaGllcmFyY2h5LnNhbXBsZXInXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17J3NhbXBsZXItaWNvbi1ob2xkZXInfT5cbiAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgc3JjPXtzYW1wbGVySWNvbigpfVxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJzYW1wbGVyLWljb25cIlxuICAgICAgICAgICAgICAgICAgICBhbHQ9eydzYW1wbGVyJ31cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L092ZXJsYXlUcmlnZ2VyPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0FjdGlvbnNDb250YWluZXI+XG4gICAgICAgICl9XG4gICAgICAgIDxDYXJkTGF5b3V0XG4gICAgICAgICAgdGl0bGU9e3RpdGxlfVxuICAgICAgICAgIHN0eWxlPXtjYXJkU3R5bGV9XG4gICAgICAgICAgaGVhZGVyUmlnaHQ9ezxOb2RlSWNvbiB0eXBlPXtmYWN0b3J5VHlwZX0gLz59XG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J25vZGUtY29udGVudCd9IHN0eWxlPXtjb250ZW50U3R5bGV9PlxuICAgICAgICAgICAge25vZGVEYXR1bS5hdHRyaWJ1dGVzICYmIGlzTW9uaXRvcmVkICYmIChcbiAgICAgICAgICAgICAgLy8gPFNldmVyaXR5QmFkZ2VcbiAgICAgICAgICAgICAgLy8gICBjbGFzc05hbWU9eydzY29yZSd9XG4gICAgICAgICAgICAgIC8vICAgcHJvcHM9e3sgc2NvcmUsIGhhc19kZXZpY2U6IGlzTW9uaXRvcmVkIH19XG4gICAgICAgICAgICAgIC8vIC8+ICYmXG4gICAgICAgICAgICAgIDxXcmFwcGVyIHNjb3JlQ29sb3I9e3Njb3JlVG9Db2xvcihzY29yZSl9IHVwPXt0cnVlfT5cbiAgICAgICAgICAgICAgICB7c2NvcmUgPCAwXG4gICAgICAgICAgICAgICAgICA/IHJlbmRlcl9zY29yZV91bmRlZmluZWQoc2NvcmVUb0xhYmVsKHNjb3JlKSlcbiAgICAgICAgICAgICAgICAgIDogc2NvcmVMZXZlbChzY29yZVRvTGFiZWwoc2NvcmUpLCBzY29yZSl9XG4gICAgICAgICAgICAgIDwvV3JhcHBlcj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvQ2FyZExheW91dD5cbiAgICAgIDwvZm9yZWlnbk9iamVjdD5cbiAgICAgIHtpc0xlYWZOb2RlICYmIDxMZWFmU2lnbiBjb2xvcj17Ym9yZGVyQ29sb3J9IC8+fVxuICAgIDwvZz5cbiAgKTtcbn07XG5leHBvcnQgZGVmYXVsdCBOb2RlTGF5b3V0O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsU0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsVUFBQSxHQUFBSCxP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
|
|
137
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9DYXJkTGF5b3V0IiwiX05vZGVJY29uIiwiX1RvcE5hdmJhciIsIl9TdHlsZWRMaW5rIiwiX3V0aWxzIiwiX0xlYWZTaWduIiwiX3JlYWN0STE4bmV4dCIsIl9yZWFjdEJvb3RzdHJhcCIsIl90aGVtZSIsIl9pY29ucyIsIl9Qb2xsdXRpb25TY29yZVBlcmNlbnQiLCJfc2NvcmVUb0RhdGEiLCJfU2V2ZXJpdHlCYWRnZSIsIk5vZGVMYXlvdXQiLCJfcmVmIiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzIiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzMiIsIl9ub2RlRGF0dW0kYXR0cmlidXRlczMiLCJfbm9kZURhdHVtJGF0dHJpYnV0ZXM0IiwiX25vZGVEYXR1bSRuYW1lIiwiX25vZGVEYXR1bSRuYW1lJHRvTG93IiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzNSIsIl9ub2RlRGF0dW0kYXR0cmlidXRlczYiLCJfbm9kZURhdHVtJGF0dHJpYnV0ZXM3IiwiX25vZGVEYXR1bSRhdHRyaWJ1dGVzOCIsIl9ub2RlRGF0dW0kYXR0cmlidXRlczkiLCJfbm9kZURhdHVtJGF0dHJpYnV0ZXMxMCIsIm5vZGVEYXR1bSIsInRvZ2dsZU5vZGUiLCJzZWFyY2hUZXJtIiwic2hvd1NhbXBsZXJzIiwiY2hpbGRyZW4iLCJjb250ZW50U3R5bGUiLCJmYWN0b3J5VHlwZSIsImF0dHJpYnV0ZXMiLCJ0eXBlIiwiaXNMZWFmTm9kZSIsImxlbmd0aCIsImlzTW9uaXRvcmVkIiwibW9uaXRvcmVkIiwic2NvcmUiLCJib3JkZXJDb2xvciIsInRoZW1lIiwibmF0dXJhbCIsIm4zMCIsImlzSGlnaGxpZ2h0ZWQiLCJuYW1lIiwidG9Mb3dlckNhc2UiLCJpbmNsdWRlcyIsImFyZWFfbmFtZSIsImNhcmRTdHlsZSIsImJvcmRlclJhZGl1cyIsImJyYW5kIiwic3VyZmFjZSIsIm11dGVkIiwiYm9yZGVyU3R5bGUiLCJib3JkZXJXaWR0aCIsImJhY2tncm91bmRDb2xvciIsInN0cm9rZSIsImhlaWdodCIsInRpdGxlIiwiaXNTaG93U2FtcGxlciIsImhhc19zYW1wbGVyIiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJvbkNsaWNrIiwic3R5bGUiLCJjdXJzb3IiLCJ4IiwieSIsIndpZHRoIiwicG9pbnRfaWQiLCJBY3Rpb25zQ29udGFpbmVyIiwiU3R5bGVkTGluayIsInN0cm9rZVdpZHRoIiwiYmFja2dyb3VuZCIsIm1hcmdpbklubGluZVN0YXJ0IiwidGFyZ2V0IiwidXBkYXRlUGFyYW1zIiwidmlldyIsInRvIiwiY29uY2F0IiwiZSIsInN0b3BQcm9wYWdhdGlvbiIsIk92ZXJsYXlUcmlnZ2VyIiwib3ZlcmxheSIsIlRvb2x0aXAiLCJpZCIsInBsYWNlbWVudCIsIlRyYW5zIiwiaTE4bktleSIsIk1hcFN2ZyIsImNsYXNzTmFtZSIsInNyYyIsInNhbXBsZXJJY29uIiwiYWx0IiwiaGVhZGVyUmlnaHQiLCJXcmFwcGVyIiwic2NvcmVDb2xvciIsInNjb3JlVG9Db2xvciIsInVwIiwiU2V2ZXJpdHlCYWRnZSIsInByb3BzIiwiaGFzX2RldmljZSIsImNvbG9yIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3VpLWtpdC9IaWVyYXJjaHlHcmFwaC9Ob2RlTGF5b3V0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IENhcmRMYXlvdXQgZnJvbSAnLi4vLi4vV2lkZ2V0cy9Nb3N0UG9sbHV0aW5nL0ZhY3Rvcmllcy9GYWN0b3J5Qm94L0NhcmRMYXlvdXQnO1xuaW1wb3J0IE5vZGVJY29uIGZyb20gJy4vTm9kZUljb24nO1xuaW1wb3J0IHsgTWFwU3ZnIH0gZnJvbSAnLi4vLi4vYXNzZXRzL2ljb25zL1RvcE5hdmJhcic7XG5pbXBvcnQgeyBTdHlsZWRMaW5rIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvTGlua3MvU3R5bGVkTGluay9TdHlsZWRMaW5rJztcbmltcG9ydCB7IEFjdGlvbnNDb250YWluZXIsIE5vZGVQcm9wcyB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IExlYWZTaWduIGZyb20gJy4vTGVhZlNpZ24nO1xuaW1wb3J0IHsgVHJhbnMgfSBmcm9tICdyZWFjdC1pMThuZXh0JztcbmltcG9ydCB7IE92ZXJsYXlUcmlnZ2VyLCBUb29sdGlwIH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCB7IHNhbXBsZXJJY29uIH0gZnJvbSAnc3JjL3V0aWxpdGllcy9tYXAvaWNvbnMnO1xuaW1wb3J0ICcuL3N0eWxlLnNjc3MnO1xuaW1wb3J0IHsgV3JhcHBlciB9IGZyb20gJy4uLy4uL1dpZGdldHMvTW9zdFBvbGx1dGluZy9jb21wb25lbnRzL1BvbGx1dGlvblNjb3JlUGVyY2VudCc7XG5pbXBvcnQgeyBzY29yZVRvQ29sb3IgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvc2NvcmVUb0RhdGEnO1xuaW1wb3J0IHsgU2V2ZXJpdHlCYWRnZSB9IGZyb20gJy4uLy4uL3BhZ2VzL0Rhc2hib2FyZE1hcC9TZXZlcml0eUJhZGdlJztcblxuY29uc3QgTm9kZUxheW91dCA9ICh7XG4gIG5vZGVEYXR1bSxcbiAgdG9nZ2xlTm9kZSxcbiAgc2VhcmNoVGVybSxcbiAgc2hvd1NhbXBsZXJzLFxuICBjaGlsZHJlbixcbiAgY29udGVudFN0eWxlLFxufTogTm9kZVByb3BzKSA9PiB7XG4gIGNvbnN0IGZhY3RvcnlUeXBlID0gbm9kZURhdHVtLmF0dHJpYnV0ZXM/LnR5cGUgfHwgJyc7XG4gIGNvbnN0IGlzTGVhZk5vZGUgPSAhbm9kZURhdHVtLmNoaWxkcmVuIHx8IG5vZGVEYXR1bS5jaGlsZHJlbi5sZW5ndGggPT09IDA7XG4gIGNvbnN0IGlzTW9uaXRvcmVkID0gbm9kZURhdHVtLmF0dHJpYnV0ZXM/Lm1vbml0b3JlZDtcbiAgY29uc3Qgc2NvcmUgPSBub2RlRGF0dW0uYXR0cmlidXRlcz8uc2NvcmUgPz8gLTE7XG4gIGNvbnN0IGJvcmRlckNvbG9yID0gdGhlbWUubmF0dXJhbC5uMzA7XG4gIGNvbnN0IGlzSGlnaGxpZ2h0ZWQgPVxuICAgICEhc2VhcmNoVGVybSAmJlxuICAgIChub2RlRGF0dW0ubmFtZT8udG9Mb3dlckNhc2UoKT8uaW5jbHVkZXMoc2VhcmNoVGVybS50b0xvd2VyQ2FzZSgpKSB8fFxuICAgICAgbm9kZURhdHVtPy5hdHRyaWJ1dGVzPy5hcmVhX25hbWVcbiAgICAgICAgPy50b0xvd2VyQ2FzZSgpXG4gICAgICAgID8uaW5jbHVkZXMoc2VhcmNoVGVybS50b0xvd2VyQ2FzZSgpKSk7XG4gIC8vIGNvbnN0IGlzRm9jdXNlZCA9IHNpdGVJRCA9PT0gbm9kZURhdHVtLmF0dHJpYnV0ZXM/LnBvaW50X2lkPy50b1N0cmluZygpO1xuXG4gIGNvbnN0IGNhcmRTdHlsZTogUmVhY3QuQ1NTUHJvcGVydGllcyA9IHtcbiAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxuICAgIGJvcmRlckNvbG9yOiBpc0hpZ2hsaWdodGVkID8gdGhlbWUuYnJhbmQuc3VyZmFjZS5tdXRlZCA6IGJvcmRlckNvbG9yLFxuICAgIGJvcmRlclN0eWxlOiBpc01vbml0b3JlZCA/ICdzb2xpZCcgOiAnZGFzaGVkJyxcbiAgICBib3JkZXJXaWR0aDogJzNweCcsXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRicsXG4gICAgc3Ryb2tlOiAnbm9uZScsXG4gICAgaGVpZ2h0OiAnMTcwcHgnLFxuICB9O1xuICBjb25zdCB0aXRsZSA9XG4gICAgZmFjdG9yeVR5cGUgPT09ICdhcmVhJ1xuICAgICAgPyBub2RlRGF0dW0uYXR0cmlidXRlcz8uYXJlYV9uYW1lIHx8IG5vZGVEYXR1bS5uYW1lXG4gICAgICA6IG5vZGVEYXR1bS5uYW1lO1xuICAvLyBjb25zdCBvblNob3dEZXRhaWxzID0gKGV2ZW50KSA9PiB7XG4gIC8vICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIC8vICAgb25Ob2RlQ2xpY2sobm9kZURhdHVtKTtcbiAgLy8gfTtcbiAgY29uc3QgaXNTaG93U2FtcGxlciA9IHNob3dTYW1wbGVycyAmJiBub2RlRGF0dW0uYXR0cmlidXRlcz8uaGFzX3NhbXBsZXI7XG5cbiAgaWYgKCFub2RlRGF0dW0ubmFtZSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiAoXG4gICAgPGcgb25DbGljaz17dG9nZ2xlTm9kZX0gc3R5bGU9e3sgY3Vyc29yOiAncG9pbnRlcicgfX0+XG4gICAgICA8Zm9yZWlnbk9iamVjdCB4PVwiLTEwMFwiIHk9XCItMTM3XCIgd2lkdGg9XCIyMDBcIiBoZWlnaHQ9XCIyNTBcIj5cbiAgICAgICAge25vZGVEYXR1bS5hdHRyaWJ1dGVzPy5wb2ludF9pZCAmJiAoXG4gICAgICAgICAgPEFjdGlvbnNDb250YWluZXI+XG4gICAgICAgICAgICB7Lyp7ZWFybHlBZG9wdGVyICYmICgqL31cbiAgICAgICAgICAgIHsvKiAgPHNwYW4gc3R5bGU9e3sgbWFyZ2luSW5saW5lRW5kOiAnOHB4JyB9fT4qL31cbiAgICAgICAgICAgIHsvKiAgICA8T3ZlcmxheVRyaWdnZXIqL31cbiAgICAgICAgICAgIHsvKiAgICAgIG92ZXJsYXk9eyovfVxuICAgICAgICAgICAgey8qICAgICAgICA8VG9vbHRpcCBpZD17J2RldGFpbHMnfSBwbGFjZW1lbnQ9XCJhdXRvXCI+Ki99XG4gICAgICAgICAgICB7LyogICAgICAgICAgPFRyYW5zKi99XG4gICAgICAgICAgICB7LyogICAgICAgICAgICBpMThuS2V5PXsnZ3JvdXBfc2NyZWVuLmdlbmVyYWxfdGFiLmdyb3VwX2RldGFpbHMnfSovfVxuICAgICAgICAgICAgey8qICAgICAgICAgIC8+Ki99XG4gICAgICAgICAgICB7LyogICAgICAgIDwvVG9vbHRpcD4qL31cbiAgICAgICAgICAgIHsvKiAgICAgIH0qL31cbiAgICAgICAgICAgIHsvKiAgICA+Ki99XG4gICAgICAgICAgICB7LyogICAgICA8RGV0YWlsc1N2ZyBvbkNsaWNrPXtvblNob3dEZXRhaWxzfSAvPiovfVxuICAgICAgICAgICAgey8qICAgIDwvT3ZlcmxheVRyaWdnZXI+Ki99XG4gICAgICAgICAgICB7LyogIDwvc3Bhbj4qL31cbiAgICAgICAgICAgIHsvKil9Ki99XG4gICAgICAgICAgICA8U3R5bGVkTGlua1xuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIHN0cm9rZTogdGhlbWUuYnJhbmQuc3VyZmFjZS5kZWZhdWx0LFxuICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAxLFxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICd3aGl0ZScsXG4gICAgICAgICAgICAgICAgbWFyZ2luSW5saW5lU3RhcnQ6IDY0LFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICB1cGRhdGVQYXJhbXM9e3sgdmlldzogJ21hcCcgfX1cbiAgICAgICAgICAgICAgdG89e2AvZGFzaGJvYXJkX3YyL3NpdGUvJHtub2RlRGF0dW0uYXR0cmlidXRlcy5wb2ludF9pZH1gfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoZSkgPT4gZS5zdG9wUHJvcGFnYXRpb24oKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPE92ZXJsYXlUcmlnZ2VyXG4gICAgICAgICAgICAgICAgb3ZlcmxheT17XG4gICAgICAgICAgICAgICAgICA8VG9vbHRpcCBpZD1cIm1hcFwiIHBsYWNlbWVudD1cImF1dG9cIj5cbiAgICAgICAgICAgICAgICAgICAgPFRyYW5zIGkxOG5LZXk9eydoZWFkZXIubWFwJ30gLz5cbiAgICAgICAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8TWFwU3ZnIHN0eWxlPXt7IHdpZHRoOiA1NSwgaGVpZ2h0OiA1NSB9fSAvPlxuICAgICAgICAgICAgICA8L092ZXJsYXlUcmlnZ2VyPlxuICAgICAgICAgICAgPC9TdHlsZWRMaW5rPlxuICAgICAgICAgICAge2lzU2hvd1NhbXBsZXIgJiYgKFxuICAgICAgICAgICAgICA8T3ZlcmxheVRyaWdnZXJcbiAgICAgICAgICAgICAgICBvdmVybGF5PXtcbiAgICAgICAgICAgICAgICAgIDxUb29sdGlwIGlkPVwic2FtcGxlclwiIHBsYWNlbWVudD1cImF1dG9cIj5cbiAgICAgICAgICAgICAgICAgICAgPFRyYW5zXG4gICAgICAgICAgICAgICAgICAgICAgaTE4bktleT17XG4gICAgICAgICAgICAgICAgICAgICAgICAnZGFzaGJvYXJkX3YyLnV0aWxpdHlfZGFzaGJvYXJkLmhpZXJhcmNoeS5zYW1wbGVyJ1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eydzYW1wbGVyLWljb24taG9sZGVyJ30+XG4gICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgIHNyYz17c2FtcGxlckljb24oKX1cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwic2FtcGxlci1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgYWx0PXsnc2FtcGxlcid9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9PdmVybGF5VHJpZ2dlcj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9BY3Rpb25zQ29udGFpbmVyPlxuICAgICAgICApfVxuICAgICAgICA8Q2FyZExheW91dFxuICAgICAgICAgIHRpdGxlPXt0aXRsZX1cbiAgICAgICAgICBzdHlsZT17Y2FyZFN0eWxlfVxuICAgICAgICAgIGhlYWRlclJpZ2h0PXs8Tm9kZUljb24gdHlwZT17ZmFjdG9yeVR5cGV9IC8+fVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydub2RlLWNvbnRlbnQnfSBzdHlsZT17Y29udGVudFN0eWxlfT5cbiAgICAgICAgICAgIHtub2RlRGF0dW0uYXR0cmlidXRlcyAmJiBpc01vbml0b3JlZCAmJiAoXG4gICAgICAgICAgICAgIC8vIDxTZXZlcml0eUJhZGdlXG4gICAgICAgICAgICAgIC8vICAgY2xhc3NOYW1lPXsnc2NvcmUnfVxuICAgICAgICAgICAgICAvLyAgIHByb3BzPXt7IHNjb3JlLCBoYXNfZGV2aWNlOiBpc01vbml0b3JlZCB9fVxuICAgICAgICAgICAgICAvLyAvPiAmJlxuICAgICAgICAgICAgICA8V3JhcHBlciBzY29yZUNvbG9yPXtzY29yZVRvQ29sb3Ioc2NvcmUpfSB1cD17dHJ1ZX0+XG4gICAgICAgICAgICAgICAgPFNldmVyaXR5QmFkZ2VcbiAgICAgICAgICAgICAgICAgIHByb3BzPXt7IHNjb3JlLCBoYXNfZGV2aWNlOiBpc01vbml0b3JlZCB9fVxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsnc2NvcmUnfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvV3JhcHBlcj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvQ2FyZExheW91dD5cbiAgICAgIDwvZm9yZWlnbk9iamVjdD5cbiAgICAgIHtpc0xlYWZOb2RlICYmIDxMZWFmU2lnbiBjb2xvcj17Ym9yZGVyQ29sb3J9IC8+fVxuICAgIDwvZz5cbiAgKTtcbn07XG5leHBvcnQgZGVmYXVsdCBOb2RlTGF5b3V0O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsU0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0Es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
|
|
@@ -6,10 +6,29 @@
|
|
|
6
6
|
margin-bottom: -30px;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
|
+
.filter-container {
|
|
10
|
+
position: unset !important;
|
|
11
|
+
box-shadow: none;
|
|
12
|
+
padding-bottom: 0;
|
|
13
|
+
width: 100vw;
|
|
14
|
+
.filter-container__content__header {
|
|
15
|
+
justify-content: flex-start;
|
|
16
|
+
}
|
|
17
|
+
.filter-container__content__body {
|
|
18
|
+
margin-inline-start: -15px;
|
|
19
|
+
.filter_item:first-child {
|
|
20
|
+
margin-inline-start: 15px;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
9
24
|
.node-content {
|
|
10
25
|
display: flex;
|
|
11
26
|
justify-content: center;
|
|
12
27
|
|
|
28
|
+
.score {
|
|
29
|
+
height: fit-content;
|
|
30
|
+
}
|
|
31
|
+
|
|
13
32
|
.score-level {
|
|
14
33
|
width: fit-content;
|
|
15
34
|
line-height: 40px;
|
|
@@ -98,4 +98,4 @@ var ActionsContainer = _styledComponents.default.div.withConfig({
|
|
|
98
98
|
componentId: "sc-21qmj9-0"
|
|
99
99
|
})(["{}"]);
|
|
100
100
|
exports.ActionsContainer = ActionsContainer;
|
|
101
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFRyZWUiLCJjb25uZWN0aW9ucyIsInBvaW50X2RhdGEiLCJ1dGlsaXR5X25hbWUiLCJub2RlcyIsImNoaWxkcmVuIiwiU2V0IiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIyIiwiZGVmYXVsdCIsIl9zdGVwIiwicyIsIm4iLCJkb25lIiwiX3N0ZXAkdmFsdWUiLCJ2YWx1ZSIsInNvdXJjZV9wb2ludF9pZCIsInRhcmdldF9wb2ludF9pZCIsImRpc3RhbmNlIiwiX3JlZiIsIm5hbWUiLCJzb3VyY2VEYXRhIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsIl9leGNsdWRlZCIsInRhcmdldF9kYXRhIiwiYXR0cmlidXRlcyIsIl9vYmplY3RTcHJlYWQyIiwicG9pbnRfaWQiLCJwdXNoIiwiYWRkIiwiZXJyIiwiZSIsImYiLCJyb290cyIsIk9iamVjdCIsImtleXMiLCJmaWx0ZXIiLCJpZCIsImhhcyIsIk51bWJlciIsIm1hcCIsImxlbmd0aCIsIm1hcEJ5SWQiLCJpdGVtcyIsInJlZHVjZSIsImFjYyIsIl9yZWYyIiwiaGFzX2RldmljZSIsImdyb3VwIiwiYXJlYV9uYW1lIiwicHJvcHMiLCJfZXhjbHVkZWQyIiwibW9uaXRvcmVkIiwidHlwZSIsIkFjdGlvbnNDb250YWluZXIiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdWkta2l0L0hpZXJhcmNoeUdyYXBoL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludCB9IGZyb20gJy4uLy4uL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuLyoqXG4gKiBDb252ZXJ0IGVkZ2VzIHRvIHJvd3Mgc3VpdGFibGUgZm9yIGQzLnN0cmF0aWZ5KClcbiAqIFJldHVybnMgYW4gYXJyYXkgb2YgeyBpZCwgcGFyZW50SWQsIGRpc3RhbmNlPywgc2hhcGVfZGF0YT8gfVxuICogSWYgbXVsdGlwbGUgcm9vdHMgZXhpc3QsIHlvdSBjYW4gb3B0aW9uYWxseSBhZGQgYSBzdXBlciByb290IHJvdy5cbiAqL1xudHlwZSBFZGdlID0ge1xuICBzb3VyY2VfcG9pbnRfaWQ6IG51bWJlciB8IHN0cmluZztcbiAgdGFyZ2V0X3BvaW50X2lkOiBudW1iZXIgfCBzdHJpbmc7XG4gIGRpc3RhbmNlPzogbnVtYmVyO1xufTtcbnR5cGUgVHJlZU5vZGUgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgY2hpbGRyZW4/OiBUcmVlTm9kZVtdO1xuICBhdHRyaWJ1dGVzPzogeyBkaXN0YW5jZTogbnVtYmVyOyB0eXBlOiBzdHJpbmc7IG1vbml0b3JlZDogYm9vbGVhbiB9O1xufTtcbmV4cG9ydCB0eXBlIFRyZWVEYXRhID0gVHJlZU5vZGUgfCB7IG5hbWU6IHN0cmluZzsgY2hpbGRyZW46IFRyZWVOb2RlW10gfTtcblxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkVHJlZShcbiAgY29ubmVjdGlvbnM6IEVkZ2VbXSxcbiAgcG9pbnRfZGF0YSxcbiAgdXRpbGl0eV9uYW1lLFxuKTogVHJlZURhdGEge1xuICBjb25zdCBub2RlcyA9IHt9O1xuICBjb25zdCBjaGlsZHJlbiA9IG5ldyBTZXQoKTtcblxuICAvLyBCdWlsZCBtYXAgb2Ygbm9kZXMgYW5kIHRyYWNrIGNoaWxkcmVuXG4gIGZvciAoY29uc3QgeyBzb3VyY2VfcG9pbnRfaWQsIHRhcmdldF9wb2ludF9pZCwgZGlzdGFuY2UgfSBvZiBjb25uZWN0aW9ucykge1xuICAgIGNvbnN0IHsgbmFtZSwgLi4uc291cmNlRGF0YSB9ID0gcG9pbnRfZGF0YVtzb3VyY2VfcG9pbnRfaWRdIHx8IHt9O1xuICAgIGlmICghbm9kZXNbc291cmNlX3BvaW50X2lkXSlcbiAgICAgIG5vZGVzW3NvdXJjZV9wb2ludF9pZF0gPSB7XG4gICAgICAgIG5hbWUsXG4gICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgIH07XG4gICAgaWYgKCFub2Rlc1t0YXJnZXRfcG9pbnRfaWRdKSB7XG4gICAgICBjb25zdCB0YXJnZXRfZGF0YSA9IHBvaW50X2RhdGFbdGFyZ2V0X3BvaW50X2lkXSB8fCB7fTtcbiAgICAgIG5vZGVzW3RhcmdldF9wb2ludF9pZF0gPSB7XG4gICAgICAgIG5hbWU6IHRhcmdldF9kYXRhLm5hbWUsXG4gICAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgICAuLi50YXJnZXRfZGF0YSxcbiAgICAgICAgICBwb2ludF9pZDogdGFyZ2V0X3BvaW50X2lkLFxuICAgICAgICB9LFxuICAgICAgICBjaGlsZHJlbjogW10sXG4gICAgICB9O1xuICAgIH1cbiAgICBub2Rlc1t0YXJnZXRfcG9pbnRfaWRdLmNoaWxkcmVuLnB1c2gobm9kZXNbc291cmNlX3BvaW50X2lkXSk7XG4gICAgY2hpbGRyZW4uYWRkKHNvdXJjZV9wb2ludF9pZCk7XG4gICAgbm9kZXNbc291cmNlX3BvaW50X2lkXS5hdHRyaWJ1dGVzID0ge1xuICAgICAgZGlzdGFuY2UsXG4gICAgICAuLi5zb3VyY2VEYXRhLFxuICAgICAgcG9pbnRfaWQ6IHNvdXJjZV9wb2ludF9pZCxcbiAgICB9O1xuICB9XG5cbiAgLy8gRmluZCByb290KHMpXG4gIGNvbnN0IHJvb3RzID0gT2JqZWN0LmtleXMobm9kZXMpXG4gICAgLmZpbHRlcigoaWQpID0+ICFjaGlsZHJlbi5oYXMoTnVtYmVyKGlkKSkpXG4gICAgLm1hcCgoaWQpID0+IG5vZGVzW2lkXSk7XG5cbiAgLy8gSWYgbXVsdGlwbGUgcm9vdHMgZXhpc3QsIHdyYXAgaW4gYSBzdXBlciByb290XG4gIHJldHVybiByb290cy5sZW5ndGggPT09IDFcbiAgICA/IHJvb3RzWzBdXG4gICAgOiB7IG5hbWU6IHV0aWxpdHlfbmFtZSwgY2hpbGRyZW46IHJvb3RzIH07XG59XG50eXBlIFBvaW50RGF0YSA9IHtcbiAgbmFtZTogc3RyaW5nO1xuICBtb25pdG9yZWQ6IGJvb2xlYW47XG4gIHR5cGU6IHN0cmluZztcbiAgYXJlYV9uYW1lPzogc3RyaW5nO1xuICBzY29yZT86IG51bWJlcjtcbiAgcG9sbHV0aW9uPzogYW55O1xufTtcbmV4cG9ydCBmdW5jdGlvbiBtYXBCeUlkKGl0ZW1zOiBJUG9pbnRbXSk6IFJlY29yZDxzdHJpbmcgfCBudW1iZXIsIFBvaW50RGF0YT4ge1xuICByZXR1cm4gaXRlbXMucmVkdWNlKFxuICAgIChhY2MsIHsgaWQsIG5hbWUsIGhhc19kZXZpY2UsIGdyb3VwLCBhcmVhX25hbWUsIC4uLnByb3BzIH0pID0+IHtcbiAgICAgIGFjY1tpZF0gPSB7XG4gICAgICAgIC4uLnByb3BzLFxuICAgICAgICBuYW1lLFxuICAgICAgICBtb25pdG9yZWQ6IGhhc19kZXZpY2UsXG4gICAgICAgIHR5cGU6IGFyZWFfbmFtZSA/
|
|
101
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFRyZWUiLCJjb25uZWN0aW9ucyIsInBvaW50X2RhdGEiLCJ1dGlsaXR5X25hbWUiLCJub2RlcyIsImNoaWxkcmVuIiwiU2V0IiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIyIiwiZGVmYXVsdCIsIl9zdGVwIiwicyIsIm4iLCJkb25lIiwiX3N0ZXAkdmFsdWUiLCJ2YWx1ZSIsInNvdXJjZV9wb2ludF9pZCIsInRhcmdldF9wb2ludF9pZCIsImRpc3RhbmNlIiwiX3JlZiIsIm5hbWUiLCJzb3VyY2VEYXRhIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsIl9leGNsdWRlZCIsInRhcmdldF9kYXRhIiwiYXR0cmlidXRlcyIsIl9vYmplY3RTcHJlYWQyIiwicG9pbnRfaWQiLCJwdXNoIiwiYWRkIiwiZXJyIiwiZSIsImYiLCJyb290cyIsIk9iamVjdCIsImtleXMiLCJmaWx0ZXIiLCJpZCIsImhhcyIsIk51bWJlciIsIm1hcCIsImxlbmd0aCIsIm1hcEJ5SWQiLCJpdGVtcyIsInJlZHVjZSIsImFjYyIsIl9yZWYyIiwiaGFzX2RldmljZSIsImdyb3VwIiwiYXJlYV9uYW1lIiwicHJvcHMiLCJfZXhjbHVkZWQyIiwibW9uaXRvcmVkIiwidHlwZSIsIkFjdGlvbnNDb250YWluZXIiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdWkta2l0L0hpZXJhcmNoeUdyYXBoL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludCB9IGZyb20gJy4uLy4uL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuLyoqXG4gKiBDb252ZXJ0IGVkZ2VzIHRvIHJvd3Mgc3VpdGFibGUgZm9yIGQzLnN0cmF0aWZ5KClcbiAqIFJldHVybnMgYW4gYXJyYXkgb2YgeyBpZCwgcGFyZW50SWQsIGRpc3RhbmNlPywgc2hhcGVfZGF0YT8gfVxuICogSWYgbXVsdGlwbGUgcm9vdHMgZXhpc3QsIHlvdSBjYW4gb3B0aW9uYWxseSBhZGQgYSBzdXBlciByb290IHJvdy5cbiAqL1xudHlwZSBFZGdlID0ge1xuICBzb3VyY2VfcG9pbnRfaWQ6IG51bWJlciB8IHN0cmluZztcbiAgdGFyZ2V0X3BvaW50X2lkOiBudW1iZXIgfCBzdHJpbmc7XG4gIGRpc3RhbmNlPzogbnVtYmVyO1xufTtcbnR5cGUgVHJlZU5vZGUgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgY2hpbGRyZW4/OiBUcmVlTm9kZVtdO1xuICBhdHRyaWJ1dGVzPzogeyBkaXN0YW5jZTogbnVtYmVyOyB0eXBlOiBzdHJpbmc7IG1vbml0b3JlZDogYm9vbGVhbiB9O1xufTtcbmV4cG9ydCB0eXBlIFRyZWVEYXRhID0gVHJlZU5vZGUgfCB7IG5hbWU6IHN0cmluZzsgY2hpbGRyZW46IFRyZWVOb2RlW10gfTtcblxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkVHJlZShcbiAgY29ubmVjdGlvbnM6IEVkZ2VbXSxcbiAgcG9pbnRfZGF0YSxcbiAgdXRpbGl0eV9uYW1lLFxuKTogVHJlZURhdGEge1xuICBjb25zdCBub2RlcyA9IHt9O1xuICBjb25zdCBjaGlsZHJlbiA9IG5ldyBTZXQoKTtcblxuICAvLyBCdWlsZCBtYXAgb2Ygbm9kZXMgYW5kIHRyYWNrIGNoaWxkcmVuXG4gIGZvciAoY29uc3QgeyBzb3VyY2VfcG9pbnRfaWQsIHRhcmdldF9wb2ludF9pZCwgZGlzdGFuY2UgfSBvZiBjb25uZWN0aW9ucykge1xuICAgIGNvbnN0IHsgbmFtZSwgLi4uc291cmNlRGF0YSB9ID0gcG9pbnRfZGF0YVtzb3VyY2VfcG9pbnRfaWRdIHx8IHt9O1xuICAgIGlmICghbm9kZXNbc291cmNlX3BvaW50X2lkXSlcbiAgICAgIG5vZGVzW3NvdXJjZV9wb2ludF9pZF0gPSB7XG4gICAgICAgIG5hbWUsXG4gICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgIH07XG4gICAgaWYgKCFub2Rlc1t0YXJnZXRfcG9pbnRfaWRdKSB7XG4gICAgICBjb25zdCB0YXJnZXRfZGF0YSA9IHBvaW50X2RhdGFbdGFyZ2V0X3BvaW50X2lkXSB8fCB7fTtcbiAgICAgIG5vZGVzW3RhcmdldF9wb2ludF9pZF0gPSB7XG4gICAgICAgIG5hbWU6IHRhcmdldF9kYXRhLm5hbWUsXG4gICAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgICAuLi50YXJnZXRfZGF0YSxcbiAgICAgICAgICBwb2ludF9pZDogdGFyZ2V0X3BvaW50X2lkLFxuICAgICAgICB9LFxuICAgICAgICBjaGlsZHJlbjogW10sXG4gICAgICB9O1xuICAgIH1cbiAgICBub2Rlc1t0YXJnZXRfcG9pbnRfaWRdLmNoaWxkcmVuLnB1c2gobm9kZXNbc291cmNlX3BvaW50X2lkXSk7XG4gICAgY2hpbGRyZW4uYWRkKHNvdXJjZV9wb2ludF9pZCk7XG4gICAgbm9kZXNbc291cmNlX3BvaW50X2lkXS5hdHRyaWJ1dGVzID0ge1xuICAgICAgZGlzdGFuY2UsXG4gICAgICAuLi5zb3VyY2VEYXRhLFxuICAgICAgcG9pbnRfaWQ6IHNvdXJjZV9wb2ludF9pZCxcbiAgICB9O1xuICB9XG5cbiAgLy8gRmluZCByb290KHMpXG4gIGNvbnN0IHJvb3RzID0gT2JqZWN0LmtleXMobm9kZXMpXG4gICAgLmZpbHRlcigoaWQpID0+ICFjaGlsZHJlbi5oYXMoTnVtYmVyKGlkKSkpXG4gICAgLm1hcCgoaWQpID0+IG5vZGVzW2lkXSk7XG5cbiAgLy8gSWYgbXVsdGlwbGUgcm9vdHMgZXhpc3QsIHdyYXAgaW4gYSBzdXBlciByb290XG4gIHJldHVybiByb290cy5sZW5ndGggPT09IDFcbiAgICA/IHJvb3RzWzBdXG4gICAgOiB7IG5hbWU6IHV0aWxpdHlfbmFtZSwgY2hpbGRyZW46IHJvb3RzIH07XG59XG50eXBlIFBvaW50RGF0YSA9IHtcbiAgbmFtZTogc3RyaW5nO1xuICBtb25pdG9yZWQ6IGJvb2xlYW47XG4gIHR5cGU6IHN0cmluZztcbiAgYXJlYV9uYW1lPzogc3RyaW5nO1xuICBzY29yZT86IG51bWJlcjtcbiAgcG9sbHV0aW9uPzogYW55O1xufTtcbmV4cG9ydCBmdW5jdGlvbiBtYXBCeUlkKGl0ZW1zOiBJUG9pbnRbXSk6IFJlY29yZDxzdHJpbmcgfCBudW1iZXIsIFBvaW50RGF0YT4ge1xuICByZXR1cm4gaXRlbXMucmVkdWNlKFxuICAgIChhY2MsIHsgaWQsIG5hbWUsIGhhc19kZXZpY2UsIGdyb3VwLCBhcmVhX25hbWUsIC4uLnByb3BzIH0pID0+IHtcbiAgICAgIGFjY1tpZF0gPSB7XG4gICAgICAgIC4uLnByb3BzLFxuICAgICAgICBuYW1lLFxuICAgICAgICBtb25pdG9yZWQ6IGhhc19kZXZpY2UsXG4gICAgICAgIHR5cGU6IGFyZWFfbmFtZSA/ICdhcmVhJyA6IGdyb3VwLnR5cGUsXG4gICAgICAgIGFyZWFfbmFtZSxcbiAgICAgIH07XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sXG4gICAge30gYXMgUmVjb3JkPHN0cmluZyB8IG51bWJlciwgUG9pbnREYXRhPixcbiAgKTtcbn1cblxuZXhwb3J0IHR5cGUgTm9kZVByb3BzID0ge1xuICBub2RlRGF0dW06IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgYXR0cmlidXRlcz86IHtcbiAgICAgIHNjb3JlPzogbnVtYmVyO1xuICAgICAgdHlwZT86IHN0cmluZztcbiAgICAgIHBvaW50X2lkPzogbnVtYmVyIHwgc3RyaW5nO1xuICAgICAgYXJlYV9uYW1lPzogc3RyaW5nO1xuICAgICAgbW9uaXRvcmVkPzogYm9vbGVhbjtcbiAgICAgIHBvbGx1dGlvbj86IGFueTtcbiAgICAgIHNlY3Rvcl9uYW1lPzogc3RyaW5nO1xuICAgICAgY29udHJpYnV0b3JfcGVyY2VudHM6IG51bWJlcjtcbiAgICB9O1xuICAgIGNoaWxkcmVuPzogYW55W107XG4gIH07XG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xuICBzZWFyY2hUZXJtPzogc3RyaW5nO1xuICB0b2dnbGVOb2RlOiAoKSA9PiB2b2lkO1xuICBvbk5vZGVDbGljazogKG5vZGVEYXRhOiBhbnkpID0+IHZvaWQ7XG4gIGNvbnRlbnRTdHlsZT86IFJlYWN0LkNTU1Byb3BlcnRpZXM7XG4gIGVhcmx5QWRvcHRlcj86IGJvb2xlYW47XG4gIHNob3dTYW1wbGVycz86IGJvb2xlYW47XG59O1xuZXhwb3J0IHR5cGUgTm9kZVR5cGUgPSAncGllJyB8ICdiYXInIHwgJ21peGVkJyB8ICdtdWx0aV9iYXInO1xuZXhwb3J0IGNvbnN0IEFjdGlvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICAge1xuICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQWFPLFNBQVNBLFNBQVNBLENBQ3ZCQyxXQUFtQixFQUNuQkMsVUFBVSxFQUNWQyxZQUFZLEVBQ0Y7RUFDVixJQUFNQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0VBQ2hCLElBQU1DLFFBQVEsR0FBRyxJQUFJQyxHQUFHLENBQUMsQ0FBQzs7RUFFMUI7RUFBQSxJQUFBQyxTQUFBLE9BQUFDLDJCQUFBLENBQUFDLE9BQUEsRUFDNkRSLFdBQVc7SUFBQVMsS0FBQTtFQUFBO0lBQXhFLEtBQUFILFNBQUEsQ0FBQUksQ0FBQSxNQUFBRCxLQUFBLEdBQUFILFNBQUEsQ0FBQUssQ0FBQSxJQUFBQyxJQUFBLEdBQTBFO01BQUEsSUFBQUMsV0FBQSxHQUFBSixLQUFBLENBQUFLLEtBQUE7UUFBN0RDLGVBQWUsR0FBQUYsV0FBQSxDQUFmRSxlQUFlO1FBQUVDLGVBQWUsR0FBQUgsV0FBQSxDQUFmRyxlQUFlO1FBQUVDLFFBQVEsR0FBQUosV0FBQSxDQUFSSSxRQUFRO01BQ3JELElBQUFDLElBQUEsR0FBZ0NqQixVQUFVLENBQUNjLGVBQWUsQ0FBQyxJQUFJLENB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
|