@kando-env/kando-ui 1.2.363-alpha.11 → 1.2.363-alpha.13
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/macros/getVersion.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var packageJsonVersion = "1.2.363-alpha.
|
|
3
|
+
var packageJsonVersion = "1.2.363-alpha.13";
|
|
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));
|
|
@@ -105,11 +105,11 @@ var List = function List(props) {
|
|
|
105
105
|
|
|
106
106
|
// Update the list only if the score of at least one of the sub-areas has changed
|
|
107
107
|
(0, _react.useEffect)(function () {
|
|
108
|
-
if (focusedArea && focusedArea.sub_areas && focusedArea.sub_areas.length > 0 && areas_data) {
|
|
108
|
+
if (focusedArea && focusedArea.sub_areas && focusedArea.sub_areas.length > 0 && areas_data && areas_data.isFetching === false) {
|
|
109
109
|
var isSubAreasNotEqual = areasChangedByIdAndScore(focusedArea.sub_areas, areas_data.newAreas);
|
|
110
110
|
if (!isSubAreasNotEqual) return;
|
|
111
111
|
var focusedAreaWithUpdatedSubAreas = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, focusedArea), {}, {
|
|
112
|
-
sub_areas: areas_data.newAreas
|
|
112
|
+
sub_areas: getUpdatedAreasById(focusedArea.sub_areas, areas_data.newAreas)
|
|
113
113
|
});
|
|
114
114
|
dispatch((0, _WWTPDashboardSlice.setFocusedArea)(focusedAreaWithUpdatedSubAreas));
|
|
115
115
|
}
|
|
@@ -120,7 +120,11 @@ var List = function List(props) {
|
|
|
120
120
|
factories: (0, _utils.getPoints)(focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.factories, points_data.items)
|
|
121
121
|
})));
|
|
122
122
|
}, [points_data]);
|
|
123
|
-
function areasChangedByIdAndScore(arr1, arr2) {
|
|
123
|
+
var areasChangedByIdAndScore = function areasChangedByIdAndScore(arr1, arr2) {
|
|
124
|
+
if (arr1.length !== arr2.length) {
|
|
125
|
+
return true;
|
|
126
|
+
}
|
|
127
|
+
|
|
124
128
|
// go over the 1st array
|
|
125
129
|
var _iterator = (0, _createForOfIteratorHelper2.default)(arr1),
|
|
126
130
|
_step;
|
|
@@ -151,7 +155,14 @@ var List = function List(props) {
|
|
|
151
155
|
_iterator.f();
|
|
152
156
|
}
|
|
153
157
|
return false;
|
|
154
|
-
}
|
|
158
|
+
};
|
|
159
|
+
var getUpdatedAreasById = function getUpdatedAreasById(array1, array2) {
|
|
160
|
+
return array2.filter(function (obj2) {
|
|
161
|
+
return array1.some(function (obj1) {
|
|
162
|
+
return obj1.area_id === obj2.area_id;
|
|
163
|
+
});
|
|
164
|
+
});
|
|
165
|
+
};
|
|
155
166
|
(0, _react.useEffect)(function () {
|
|
156
167
|
var _selectedRef$current;
|
|
157
168
|
(_selectedRef$current = selectedRef.current) === null || _selectedRef$current === void 0 ? void 0 : _selectedRef$current.scrollIntoView({
|
|
@@ -200,4 +211,4 @@ var ErrorMessage = _styledComponents.default.div.withConfig({
|
|
|
200
211
|
displayName: "List__ErrorMessage",
|
|
201
212
|
componentId: "sc-1f5wz2c-4"
|
|
202
213
|
})(["display:flex;height:100%;font-size:20px;justify-content:center;box-shadow:-0.9px -0.5px 5px 0 rgba(0,0,0,0.06);border:solid 1px #ebebeb;padding:20px;"]);
|
|
203
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdGhlbWUiLCJfcmVhY3RSZWR1eCIsIl91dGlscyIsIl9BcmVhQ2FyZCIsIl9GYWN0b3J5Q2FyZCIsIl9PcmdhbmljQ2FyZCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUG90ZW50aWFsU2F2aW5nIiwiX0xpc3RDb250ZXh0IiwiX2kxOG4iLCJfRGlzY2hhcmdlUGF0dGVybiIsIl9RdWFsaXR5U3VtbWFyeSIsIl9MaW5lQ2hhcnQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YzIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiTGlzdCIsInByb3BzIiwiX1dXVFBJbmZvJHBvaW50IiwiX1dXVFBJbmZvJHBvaW50MiIsIlJlZHV4U3RhdGUiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiYXJlYXNfZGF0YSIsInBvaW50c19kYXRhIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIl91c2VTZWxlY3RlZEl0ZW0iLCJ1c2VTZWxlY3RlZEl0ZW0iLCJzZWxlY3RlZEl0ZW0iLCJoYW5kbGVTZWxlY3RJdGVtIiwiV1dUUEluZm8iLCJfdXNlU2VsZWN0b3IiLCJ3d3RwX2Rhc2hib2FyZCIsImZvY3VzZWRBcmVhIiwibWFwIiwic2VsZWN0ZWRSZWYiLCJ1c2VSZWYiLCJzaXRlSUQiLCJwb2ludCIsImlkIiwiaGFuZGxlSXRlbUNsaWNrIiwiaXRlbSIsIm5vRGF0YU1lc3NhZ2UiLCJpMThuIiwidCIsImxpc3REZXRhaWxzIiwidXNlTWVtbyIsIl9mb2N1c2VkQXJlYSRzdWJfYXJlYSIsIl9mb2N1c2VkQXJlYSRzdWJfYXJlYTIiLCJpc19ub19hcmVhcyIsImZvcldXVFBNYXAiLCJ1bmRlZmluZWQiLCJzdWJfYXJlYXMiLCJsZW5ndGgiLCJoYXNfZGV2aWNlIiwiY3JlYXRlRWxlbWVudCIsIkxpc3RDb250YWluZXIiLCJFcnJvck1lc3NhZ2UiLCJTdW1tYXJ5Q29tcG9uZW50IiwiZW5kcG9pbnQiLCJjb25jYXQiLCJjbGFzc05hbWUiLCJMaW5lQ2hhcnRDb21wb25lbnQiLCJ0aXRsZSIsIkRpc2NoYXJnZVBhdHRlcm4iLCJOdW1iZXIiLCJzb3J0QXJlYXMiLCJmaWx0ZXIiLCJCb29sZWFuIiwiYXJlYSIsIkFyZWFDYXJkIiwiYXJlYV9pZCIsIm9iamVjdCIsIm1hcFJlZiIsIm9uQ2xpY2siLCJzZWxlY3RlZCIsIml0ZW1SZWYiLCJmYWN0b3JpZXMiLCJzb3J0UG9pbnRzIiwiZmFjdG9yeSIsIkZhY3RvcnlDYXJkIiwidXNlRWZmZWN0IiwiaXNTdWJBcmVhc05vdEVxdWFsIiwiYXJlYXNDaGFuZ2VkQnlJZEFuZFNjb3JlIiwibmV3QXJlYXMiLCJmb2N1c2VkQXJlYVdpdGhVcGRhdGVkU3ViQXJlYXMiLCJfb2JqZWN0U3ByZWFkMiIsInNldEZvY3VzZWRBcmVhIiwiZ2V0UG9pbnRzIiwiaXRlbXMiLCJhcnIxIiwiYXJyMiIsIl9pdGVyYXRvciIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyMiIsIl9zdGVwIiwiX2xvb3AiLCJpdGVtMSIsInZhbHVlIiwibWF0Y2hpbmdJdGVtIiwiZmluZCIsIml0ZW0yIiwiYXJlYV9zY29yZSIsInYiLCJzIiwibiIsImRvbmUiLCJfcmV0IiwiX3R5cGVvZjIiLCJlcnIiLCJlIiwiZiIsIl9zZWxlY3RlZFJlZiRjdXJyZW50IiwiY3VycmVudCIsInNjcm9sbEludG9WaWV3IiwiYmVoYXZpb3IiLCJibG9jayIsImlubGluZSIsImdyb3VwIiwidHlwZSIsImNsaWNrZWQiLCJXV1RQRGV0YWlscyIsInN0eWxlIiwib3ZlcmZsb3ciLCJuYW1lIiwiYXJlYV9uYW1lIiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwidGhlbWUiLCJXV1RQTWFwIiwiYmciLCJRdWFsaXR5U3VtbWFyeSIsIkxpbmVDaGFydCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvTGlzdC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUFyZWEgfSBmcm9tICcuLi8uLi9zdG9yZS9hcmVhcy9tb2RlbHMvSUFyZWEnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyB0aGVtZSB9IGZyb20gJ3NyYy9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJy4uLy4uL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IHNvcnRBcmVhcywgZ2V0UG9pbnRzLCBzb3J0UG9pbnRzIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBBcmVhQ2FyZCB9IGZyb20gJy4vQXJlYUNhcmQnO1xuaW1wb3J0IHsgRmFjdG9yeUNhcmQgfSBmcm9tICcuL0ZhY3RvcnlDYXJkJztcbmltcG9ydCBPcmdhbmljQ2FyZCBmcm9tICcuLi9Xd3RwUGFnZS9PcmdhbmljQ2FyZCc7XG5pbXBvcnQgSW1wYWN0Q2FyZCBmcm9tICcuLi9Xd3RwUGFnZS9Qb3RlbnRpYWxTYXZpbmcnO1xuaW1wb3J0IHsgdXNlU2VsZWN0ZWRJdGVtIH0gZnJvbSAnLi9MaXN0Q29udGV4dCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgRGlzY2hhcmdlUGF0dGVybiB9IGZyb20gJy4uL1NpdGVQYWdlL0Rpc2NoYXJnZVBhdHRlcm4vRGlzY2hhcmdlUGF0dGVybic7XG5pbXBvcnQgeyBRdWFsaXR5U3VtbWFyeSB9IGZyb20gJ3NyYy9XaWRnZXRzL1F1YWxpdHlTdW1tYXJ5L1F1YWxpdHlTdW1tYXJ5JztcbmltcG9ydCB7IExpbmVDaGFydCB9IGZyb20gJ3NyYy9wYWdlcy9BcmVhUGFnZS9EYXNoYm9hcmQvTGluZUNoYXJ0L0xpbmVDaGFydCc7XG5pbXBvcnQgeyBzZXRGb2N1c2VkQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9XV1RQRGFzaGJvYXJkL1dXVFBEYXNoYm9hcmRTbGljZSc7XG5cbnR5cGUgSVByb3BzID0ge1xuICBnbG9iYWxfZGF0YTogYW55O1xuICBXV1RQSW5mbzogYW55O1xufTtcblxuZXhwb3J0IGNvbnN0IExpc3Q6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEsIHBvaW50c19kYXRhIH0gPSBSZWR1eFN0YXRlO1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHsgc2VsZWN0ZWRJdGVtLCBoYW5kbGVTZWxlY3RJdGVtIH0gPSB1c2VTZWxlY3RlZEl0ZW0oKTtcbiAgY29uc3QgeyBXV1RQSW5mbyB9ID0gcHJvcHM7XG4gIGNvbnN0IHsgZm9jdXNlZEFyZWEsIG1hcCB9ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUud3d0cF9kYXNoYm9hcmQsXG4gICk7XG4gIGNvbnN0IHNlbGVjdGVkUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBzaXRlSUQgPSBXV1RQSW5mby5wb2ludD8uaWQ7XG5cbiAgY29uc3QgaGFuZGxlSXRlbUNsaWNrID0gKGl0ZW0pID0+IHtcbiAgICBoYW5kbGVTZWxlY3RJdGVtKGl0ZW0pO1xuICB9O1xuXG4gIGNvbnN0IG5vRGF0YU1lc3NhZ2UgPSBpMThuLnQoJ3d3dHBQYWdlLm5vX2RhdGFfZm9yX3NpdGUnKTtcblxuICBsZXQgbGlzdERldGFpbHMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIXNpdGVJRCAmJiAhZm9jdXNlZEFyZWEpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpc19ub19hcmVhcyA9XG4gICAgICBmb2N1c2VkQXJlYSAmJlxuICAgICAgZm9jdXNlZEFyZWE/LmZvcldXVFBNYXAgPT09IHRydWUgJiZcbiAgICAgIHNpdGVJRCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXM/Lmxlbmd0aCA9PT0gMDtcblxuICAgIGlmIChpc19ub19hcmVhcykge1xuICAgICAgaWYgKFxuICAgICAgICAvLyBmb2N1c2VkQXJlYT8uY2xpY2tlZCA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgIGZvY3VzZWRBcmVhPy5oYXNfZGV2aWNlID09PSBmYWxzZSB8fFxuICAgICAgICAhc2l0ZUlEXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8TGlzdENvbnRhaW5lcj5cbiAgICAgICAgICAgIDxFcnJvck1lc3NhZ2U+e25vRGF0YU1lc3NhZ2V9PC9FcnJvck1lc3NhZ2U+XG4gICAgICAgICAgPC9MaXN0Q29udGFpbmVyPlxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8TGlzdENvbnRhaW5lcj5cbiAgICAgICAgICAgIDxTdW1tYXJ5Q29tcG9uZW50XG4gICAgICAgICAgICAgIGVuZHBvaW50PXtgL2RhdGEvZXZlbnRzLWNvbXBvbmVudC1kYXRhLyR7c2l0ZUlEfWB9XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cInN1bW1hcnktY29tcG9uZW50XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8TGluZUNoYXJ0Q29tcG9uZW50XG4gICAgICAgICAgICAgIHRpdGxlPXtpMThuLnQoJ2FyZWFfZGFzaGJvYXJkLnRyZW5kJyl9XG4gICAgICAgICAgICAgIGVuZHBvaW50PXtgL3BvaW50cy8ke3NpdGVJRH0vdHJlbmQtZ3JhcGhgfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxEaXNjaGFyZ2VQYXR0ZXJuIHNpdGVJRD17TnVtYmVyKHNpdGVJRCl9IC8+XG4gICAgICAgICAgPC9MaXN0Q29udGFpbmVyPlxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChmb2N1c2VkQXJlYSAmJiBmb2N1c2VkQXJlYT8uc3ViX2FyZWFzPy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMgJiZcbiAgICAgICAgc29ydEFyZWFzKGZvY3VzZWRBcmVhLnN1Yl9hcmVhcylcbiAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgLm1hcCgoYXJlYTogSUFyZWEpID0+IChcbiAgICAgICAgICAgIDxBcmVhQ2FyZFxuICAgICAgICAgICAgICBrZXk9e2FyZWEuYXJlYV9pZH1cbiAgICAgICAgICAgICAgb2JqZWN0PXthcmVhfVxuICAgICAgICAgICAgICBtYXBSZWY9e21hcH1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlSXRlbUNsaWNrKGFyZWEuYXJlYV9pZCl9XG4gICAgICAgICAgICAgIHNlbGVjdGVkPXtzZWxlY3RlZEl0ZW0gPT09IGFyZWEuYXJlYV9pZH1cbiAgICAgICAgICAgICAgaXRlbVJlZj17c2VsZWN0ZWRJdGVtID09PSBhcmVhLmFyZWFfaWQgPyBzZWxlY3RlZFJlZiA6IG51bGx9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkpXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoZm9jdXNlZEFyZWE/LmZhY3Rvcmllcykge1xuICAgICAgICByZXR1cm4gc29ydFBvaW50cyhmb2N1c2VkQXJlYS5mYWN0b3JpZXMpXG4gICAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAgIC5tYXAoKGZhY3RvcnkpID0+IChcbiAgICAgICAgICAgIDxGYWN0b3J5Q2FyZFxuICAgICAgICAgICAgICBrZXk9e2ZhY3RvcnkuaWR9XG4gICAgICAgICAgICAgIG9iamVjdD17ZmFjdG9yeX1cbiAgICAgICAgICAgICAgbWFwUmVmPXttYXB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUl0ZW1DbGljayhmYWN0b3J5LmlkKX1cbiAgICAgICAgICAgICAgc2VsZWN0ZWQ9e3NlbGVjdGVkSXRlbSA9PT0gZmFjdG9yeS5pZH1cbiAgICAgICAgICAgICAgaXRlbVJlZj17c2VsZWN0ZWRJdGVtID09PSBmYWN0b3J5LmlkID8gc2VsZWN0ZWRSZWYgOiBudWxsfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtzZWxlY3RlZEl0ZW0sIHNpdGVJRCwgZm9jdXNlZEFyZWFdKTtcblxuICAvLyBVcGRhdGUgdGhlIGxpc3Qgb25seSBpZiB0aGUgc2NvcmUgb2YgYXQgbGVhc3Qgb25lIG9mIHRoZSBzdWItYXJlYXMgaGFzIGNoYW5nZWRcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoXG4gICAgICBmb2N1c2VkQXJlYSAmJlxuICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMubGVuZ3RoID4gMCAmJlxuICAgICAgYXJlYXNfZGF0YVxuICAgICkge1xuICAgICAgY29uc3QgaXNTdWJBcmVhc05vdEVxdWFsID0gYXJlYXNDaGFuZ2VkQnlJZEFuZFNjb3JlKFxuICAgICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMsXG4gICAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMsXG4gICAgICApO1xuICAgICAgaWYgKCFpc1N1YkFyZWFzTm90RXF1YWwpIHJldHVybjtcblxuICAgICAgY29uc3QgZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzID0ge1xuICAgICAgICAuLi5mb2N1c2VkQXJlYSxcbiAgICAgICAgc3ViX2FyZWFzOiBhcmVhc19kYXRhLm5ld0FyZWFzLFxuICAgICAgfTtcbiAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRBcmVhKGZvY3VzZWRBcmVhV2l0aFVwZGF0ZWRTdWJBcmVhcykpO1xuICAgIH1cbiAgfSwgW2FyZWFzX2RhdGFdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgICFmb2N1c2VkQXJlYSB8fFxuICAgICAgIWZvY3VzZWRBcmVhLmZhY3RvcmllcyB8fFxuICAgICAgZm9jdXNlZEFyZWEuZmFjdG9yaWVzLmxlbmd0aCA9PT0gMFxuICAgIClcbiAgICAgIHJldHVybjtcblxuICAgIGRpc3BhdGNoKFxuICAgICAgc2V0Rm9jdXNlZEFyZWEoe1xuICAgICAgICAuLi5mb2N1c2VkQXJlYSxcbiAgICAgICAgZmFjdG9yaWVzOiBnZXRQb2ludHMoZm9jdXNlZEFyZWE/LmZhY3RvcmllcywgcG9pbnRzX2RhdGEuaXRlbXMpLFxuICAgICAgfSksXG4gICAgKTtcbiAgfSwgW3BvaW50c19kYXRhXSk7XG5cbiAgZnVuY3Rpb24gYXJlYXNDaGFuZ2VkQnlJZEFuZFNjb3JlKGFycjEsIGFycjIpIHtcbiAgICAvLyBnbyBvdmVyIHRoZSAxc3QgYXJyYXlcbiAgICBmb3IgKGxldCBpdGVtMSBvZiBhcnIxKSB7XG4gICAgICAvLyBGaW5kIHRoZSBvYmplY3Qgd2l0aCB0aGUgc2FtZSBpZCBpbiB0aGUgc2Vjb25kIGFycmF5XG4gICAgICBsZXQgbWF0Y2hpbmdJdGVtID0gYXJyMi5maW5kKChpdGVtMikgPT4gaXRlbTIuYXJlYV9pZCA9PT0gaXRlbTEuYXJlYV9pZCk7XG5cbiAgICAgIC8vIFJldHVybiB0cnVlIGlmIG9uZSBtYXRjaGluZyBpdGVtIGlzIGZvdW5kIGluIHRoZSBzZWNvbmQgYXJyYXkgYW5kIHRoZWlyIHNjb3JlcyBjaGFuZ2VkXG4gICAgICBpZiAobWF0Y2hpbmdJdGVtICYmIGl0ZW0xLmFyZWFfc2NvcmUgIT09IG1hdGNoaW5nSXRlbS5hcmVhX3Njb3JlKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElmIGFsbCBpdGVtcyBtYXRjaGVkIGFuZCBoYWQgdGhlIHNhbWUgc2NvcmUsIHJldHVybiBmYWxzZVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2VsZWN0ZWRSZWYuY3VycmVudD8uc2Nyb2xsSW50b1ZpZXcoe1xuICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgYmxvY2s6ICdjZW50ZXInLFxuICAgICAgaW5saW5lOiAnY2VudGVyJyxcbiAgICB9KTtcbiAgfSwgW3NlbGVjdGVkSXRlbV0pO1xuXG4gIGlmIChcbiAgICBmb2N1c2VkQXJlYT8uZ3JvdXAgJiZcbiAgICBmb2N1c2VkQXJlYS5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnICYmXG4gICAgZm9jdXNlZEFyZWE/LmNsaWNrZWQgPT09IHVuZGVmaW5lZFxuICApXG4gICAgcmV0dXJuIChcbiAgICAgIDxXV1RQRGV0YWlscyBjbGFzc05hbWU9XCJwLTNcIiBzdHlsZT17eyBvdmVyZmxvdzogJ3Njcm9sbCcgfX0+XG4gICAgICAgIDxoMz57V1dUUEluZm8ucG9pbnQ/Lm5hbWV9PC9oMz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoLWF1dG8gbXktNCd9PlxuICAgICAgICAgIDxPcmdhbmljQ2FyZCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoLWF1dG8gbXQtMid9PlxuICAgICAgICAgIDxJbXBhY3RDYXJkIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9XV1RQRGV0YWlscz5cbiAgICApO1xuXG4gIHJldHVybiAoXG4gICAgPFdXVFBEZXRhaWxzIGNsYXNzTmFtZT1cInAtM1wiIHN0eWxlPXt7IG92ZXJmbG93OiAnc2Nyb2xsJyB9fT5cbiAgICAgIDxoMz57Zm9jdXNlZEFyZWE/LmFyZWFfbmFtZSB8fCBmb2N1c2VkQXJlYT8ubmFtZX08L2gzPlxuICAgICAgPHVsIGNsYXNzTmFtZT17J214LW4zJ30+e2xpc3REZXRhaWxzfTwvdWw+XG4gICAgPC9XV1RQRGV0YWlscz5cbiAgKTtcbn07XG5cbmNvbnN0IFdXVFBEZXRhaWxzID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDEzNHB4KTtcbiAgYmFja2dyb3VuZDogJHt0aGVtZS5XV1RQTWFwLmJnfTtcbmA7XG5cbmNvbnN0IFN1bW1hcnlDb21wb25lbnQgPSBzdHlsZWQoUXVhbGl0eVN1bW1hcnkpYFxuICBncmlkLWFyZWE6IHN1bW1hcnk7XG5cbiAgc3VtbWFyeS1jb21wb25lbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7XG4gIH1cbmA7XG5cbmNvbnN0IExpbmVDaGFydENvbXBvbmVudCA9IHN0eWxlZChMaW5lQ2hhcnQpYFxuICBncmlkLWFyZWE6IGdyYXBoO1xuYDtcblxuY29uc3QgTGlzdENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAyMHB4O1xuICBnYXA6IDMwcHg7XG5gO1xuXG5jb25zdCBFcnJvck1lc3NhZ2UgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJveC1zaGFkb3c6IC0wLjlweCAtMC41cHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjA2KTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ViZWJlYjtcbiAgcGFkZGluZzogMjBweDtcbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUNBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFdBQUEsR0FBQUYsT0FBQTtBQUVBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFlBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQVAsT0FBQTtBQUNBLElBQUFRLGdCQUFBLEdBQUFELHNCQUFBLENBQUFQLE9BQUE7QUFDQSxJQUFBUyxZQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxLQUFBLEdBQUFILHNCQUFBLENBQUFQLE9BQUE7QUFDQSxJQUFBVyxpQkFBQSxHQUFBWCxPQUFBO0FBQ0EsSUFBQVksZUFBQSxHQUFBWixPQUFBO0FBQ0EsSUFBQWEsVUFBQSxHQUFBYixPQUFBO0FBQ0EsSUFBQWMsbUJBQUEsR0FBQWQsT0FBQTtBQUE0RSxTQUFBZSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQWpCLHdCQUFBcUIsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLGFBQUFFLFFBQUEsQ0FBQUYsR0FBQSx5QkFBQUEsR0FBQSw0QkFBQUcsT0FBQSxFQUFBSCxHQUFBLFVBQUFJLEtBQUEsR0FBQVQsd0JBQUEsQ0FBQUMsV0FBQSxPQUFBUSxLQUFBLElB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
|
|
214
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdGhlbWUiLCJfcmVhY3RSZWR1eCIsIl91dGlscyIsIl9BcmVhQ2FyZCIsIl9GYWN0b3J5Q2FyZCIsIl9PcmdhbmljQ2FyZCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUG90ZW50aWFsU2F2aW5nIiwiX0xpc3RDb250ZXh0IiwiX2kxOG4iLCJfRGlzY2hhcmdlUGF0dGVybiIsIl9RdWFsaXR5U3VtbWFyeSIsIl9MaW5lQ2hhcnQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YzIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiTGlzdCIsInByb3BzIiwiX1dXVFBJbmZvJHBvaW50IiwiX1dXVFBJbmZvJHBvaW50MiIsIlJlZHV4U3RhdGUiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiYXJlYXNfZGF0YSIsInBvaW50c19kYXRhIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIl91c2VTZWxlY3RlZEl0ZW0iLCJ1c2VTZWxlY3RlZEl0ZW0iLCJzZWxlY3RlZEl0ZW0iLCJoYW5kbGVTZWxlY3RJdGVtIiwiV1dUUEluZm8iLCJfdXNlU2VsZWN0b3IiLCJ3d3RwX2Rhc2hib2FyZCIsImZvY3VzZWRBcmVhIiwibWFwIiwic2VsZWN0ZWRSZWYiLCJ1c2VSZWYiLCJzaXRlSUQiLCJwb2ludCIsImlkIiwiaGFuZGxlSXRlbUNsaWNrIiwiaXRlbSIsIm5vRGF0YU1lc3NhZ2UiLCJpMThuIiwidCIsImxpc3REZXRhaWxzIiwidXNlTWVtbyIsIl9mb2N1c2VkQXJlYSRzdWJfYXJlYSIsIl9mb2N1c2VkQXJlYSRzdWJfYXJlYTIiLCJpc19ub19hcmVhcyIsImZvcldXVFBNYXAiLCJ1bmRlZmluZWQiLCJzdWJfYXJlYXMiLCJsZW5ndGgiLCJoYXNfZGV2aWNlIiwiY3JlYXRlRWxlbWVudCIsIkxpc3RDb250YWluZXIiLCJFcnJvck1lc3NhZ2UiLCJTdW1tYXJ5Q29tcG9uZW50IiwiZW5kcG9pbnQiLCJjb25jYXQiLCJjbGFzc05hbWUiLCJMaW5lQ2hhcnRDb21wb25lbnQiLCJ0aXRsZSIsIkRpc2NoYXJnZVBhdHRlcm4iLCJOdW1iZXIiLCJzb3J0QXJlYXMiLCJmaWx0ZXIiLCJCb29sZWFuIiwiYXJlYSIsIkFyZWFDYXJkIiwiYXJlYV9pZCIsIm9iamVjdCIsIm1hcFJlZiIsIm9uQ2xpY2siLCJzZWxlY3RlZCIsIml0ZW1SZWYiLCJmYWN0b3JpZXMiLCJzb3J0UG9pbnRzIiwiZmFjdG9yeSIsIkZhY3RvcnlDYXJkIiwidXNlRWZmZWN0IiwiaXNGZXRjaGluZyIsImlzU3ViQXJlYXNOb3RFcXVhbCIsImFyZWFzQ2hhbmdlZEJ5SWRBbmRTY29yZSIsIm5ld0FyZWFzIiwiZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzIiwiX29iamVjdFNwcmVhZDIiLCJnZXRVcGRhdGVkQXJlYXNCeUlkIiwic2V0Rm9jdXNlZEFyZWEiLCJnZXRQb2ludHMiLCJpdGVtcyIsImFycjEiLCJhcnIyIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIyIiwiX3N0ZXAiLCJfbG9vcCIsIml0ZW0xIiwidmFsdWUiLCJtYXRjaGluZ0l0ZW0iLCJmaW5kIiwiaXRlbTIiLCJhcmVhX3Njb3JlIiwidiIsInMiLCJuIiwiZG9uZSIsIl9yZXQiLCJfdHlwZW9mMiIsImVyciIsImUiLCJmIiwiYXJyYXkxIiwiYXJyYXkyIiwib2JqMiIsInNvbWUiLCJvYmoxIiwiX3NlbGVjdGVkUmVmJGN1cnJlbnQiLCJjdXJyZW50Iiwic2Nyb2xsSW50b1ZpZXciLCJiZWhhdmlvciIsImJsb2NrIiwiaW5saW5lIiwiZ3JvdXAiLCJ0eXBlIiwiY2xpY2tlZCIsIldXVFBEZXRhaWxzIiwic3R5bGUiLCJvdmVyZmxvdyIsIm5hbWUiLCJhcmVhX25hbWUiLCJleHBvcnRzIiwic3R5bGVkIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJ0aGVtZSIsIldXVFBNYXAiLCJiZyIsIlF1YWxpdHlTdW1tYXJ5IiwiTGluZUNoYXJ0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC9MaXN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQXJlYSB9IGZyb20gJy4uLy4uL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnc3JjL3N0eWxlcy90aGVtZS90aGVtZSc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgc29ydEFyZWFzLCBnZXRQb2ludHMsIHNvcnRQb2ludHMgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEFyZWFDYXJkIH0gZnJvbSAnLi9BcmVhQ2FyZCc7XG5pbXBvcnQgeyBGYWN0b3J5Q2FyZCB9IGZyb20gJy4vRmFjdG9yeUNhcmQnO1xuaW1wb3J0IE9yZ2FuaWNDYXJkIGZyb20gJy4uL1d3dHBQYWdlL09yZ2FuaWNDYXJkJztcbmltcG9ydCBJbXBhY3RDYXJkIGZyb20gJy4uL1d3dHBQYWdlL1BvdGVudGlhbFNhdmluZyc7XG5pbXBvcnQgeyB1c2VTZWxlY3RlZEl0ZW0gfSBmcm9tICcuL0xpc3RDb250ZXh0JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBEaXNjaGFyZ2VQYXR0ZXJuIH0gZnJvbSAnLi4vU2l0ZVBhZ2UvRGlzY2hhcmdlUGF0dGVybi9EaXNjaGFyZ2VQYXR0ZXJuJztcbmltcG9ydCB7IFF1YWxpdHlTdW1tYXJ5IH0gZnJvbSAnc3JjL1dpZGdldHMvUXVhbGl0eVN1bW1hcnkvUXVhbGl0eVN1bW1hcnknO1xuaW1wb3J0IHsgTGluZUNoYXJ0IH0gZnJvbSAnc3JjL3BhZ2VzL0FyZWFQYWdlL0Rhc2hib2FyZC9MaW5lQ2hhcnQvTGluZUNoYXJ0JztcbmltcG9ydCB7IHNldEZvY3VzZWRBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL1dXVFBEYXNoYm9hcmQvV1dUUERhc2hib2FyZFNsaWNlJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIGdsb2JhbF9kYXRhOiBhbnk7XG4gIFdXVFBJbmZvOiBhbnk7XG59O1xuXG5leHBvcnQgY29uc3QgTGlzdDogUmVhY3QuRkM8SVByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCBSZWR1eFN0YXRlID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZSk7XG4gIGNvbnN0IHsgYXJlYXNfZGF0YSwgcG9pbnRzX2RhdGEgfSA9IFJlZHV4U3RhdGU7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgeyBzZWxlY3RlZEl0ZW0sIGhhbmRsZVNlbGVjdEl0ZW0gfSA9IHVzZVNlbGVjdGVkSXRlbSgpO1xuICBjb25zdCB7IFdXVFBJbmZvIH0gPSBwcm9wcztcbiAgY29uc3QgeyBmb2N1c2VkQXJlYSwgbWFwIH0gPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS53d3RwX2Rhc2hib2FyZCxcbiAgKTtcbiAgY29uc3Qgc2VsZWN0ZWRSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHNpdGVJRCA9IFdXVFBJbmZvLnBvaW50Py5pZDtcblxuICBjb25zdCBoYW5kbGVJdGVtQ2xpY2sgPSAoaXRlbSkgPT4ge1xuICAgIGhhbmRsZVNlbGVjdEl0ZW0oaXRlbSk7XG4gIH07XG5cbiAgY29uc3Qgbm9EYXRhTWVzc2FnZSA9IGkxOG4udCgnd3d0cFBhZ2Uubm9fZGF0YV9mb3Jfc2l0ZScpO1xuXG4gIGxldCBsaXN0RGV0YWlscyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghc2l0ZUlEICYmICFmb2N1c2VkQXJlYSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGlzX25vX2FyZWFzID1cbiAgICAgIGZvY3VzZWRBcmVhICYmXG4gICAgICBmb2N1c2VkQXJlYT8uZm9yV1dUUE1hcCA9PT0gdHJ1ZSAmJlxuICAgICAgc2l0ZUlEICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcz8ubGVuZ3RoID09PSAwO1xuXG4gICAgaWYgKGlzX25vX2FyZWFzKSB7XG4gICAgICBpZiAoXG4gICAgICAgIC8vIGZvY3VzZWRBcmVhPy5jbGlja2VkID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgZm9jdXNlZEFyZWE/Lmhhc19kZXZpY2UgPT09IGZhbHNlIHx8XG4gICAgICAgICFzaXRlSURcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxMaXN0Q29udGFpbmVyPlxuICAgICAgICAgICAgPEVycm9yTWVzc2FnZT57bm9EYXRhTWVzc2FnZX08L0Vycm9yTWVzc2FnZT5cbiAgICAgICAgICA8L0xpc3RDb250YWluZXI+XG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxMaXN0Q29udGFpbmVyPlxuICAgICAgICAgICAgPFN1bW1hcnlDb21wb25lbnRcbiAgICAgICAgICAgICAgZW5kcG9pbnQ9e2AvZGF0YS9ldmVudHMtY29tcG9uZW50LWRhdGEvJHtzaXRlSUR9YH1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwic3VtbWFyeS1jb21wb25lbnRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxMaW5lQ2hhcnRDb21wb25lbnRcbiAgICAgICAgICAgICAgdGl0bGU9e2kxOG4udCgnYXJlYV9kYXNoYm9hcmQudHJlbmQnKX1cbiAgICAgICAgICAgICAgZW5kcG9pbnQ9e2AvcG9pbnRzLyR7c2l0ZUlEfS90cmVuZC1ncmFwaGB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPERpc2NoYXJnZVBhdHRlcm4gc2l0ZUlEPXtOdW1iZXIoc2l0ZUlEKX0gLz5cbiAgICAgICAgICA8L0xpc3RDb250YWluZXI+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGZvY3VzZWRBcmVhICYmIGZvY3VzZWRBcmVhPy5zdWJfYXJlYXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcyAmJlxuICAgICAgICBzb3J0QXJlYXMoZm9jdXNlZEFyZWEuc3ViX2FyZWFzKVxuICAgICAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgICAgICAubWFwKChhcmVhOiBJQXJlYSkgPT4gKFxuICAgICAgICAgICAgPEFyZWFDYXJkXG4gICAgICAgICAgICAgIGtleT17YXJlYS5hcmVhX2lkfVxuICAgICAgICAgICAgICBvYmplY3Q9e2FyZWF9XG4gICAgICAgICAgICAgIG1hcFJlZj17bWFwfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVJdGVtQ2xpY2soYXJlYS5hcmVhX2lkKX1cbiAgICAgICAgICAgICAgc2VsZWN0ZWQ9e3NlbGVjdGVkSXRlbSA9PT0gYXJlYS5hcmVhX2lkfVxuICAgICAgICAgICAgICBpdGVtUmVmPXtzZWxlY3RlZEl0ZW0gPT09IGFyZWEuYXJlYV9pZCA/IHNlbGVjdGVkUmVmIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChmb2N1c2VkQXJlYT8uZmFjdG9yaWVzKSB7XG4gICAgICAgIHJldHVybiBzb3J0UG9pbnRzKGZvY3VzZWRBcmVhLmZhY3RvcmllcylcbiAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgLm1hcCgoZmFjdG9yeSkgPT4gKFxuICAgICAgICAgICAgPEZhY3RvcnlDYXJkXG4gICAgICAgICAgICAgIGtleT17ZmFjdG9yeS5pZH1cbiAgICAgICAgICAgICAgb2JqZWN0PXtmYWN0b3J5fVxuICAgICAgICAgICAgICBtYXBSZWY9e21hcH1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlSXRlbUNsaWNrKGZhY3RvcnkuaWQpfVxuICAgICAgICAgICAgICBzZWxlY3RlZD17c2VsZWN0ZWRJdGVtID09PSBmYWN0b3J5LmlkfVxuICAgICAgICAgICAgICBpdGVtUmVmPXtzZWxlY3RlZEl0ZW0gPT09IGZhY3RvcnkuaWQgPyBzZWxlY3RlZFJlZiA6IG51bGx9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW3NlbGVjdGVkSXRlbSwgc2l0ZUlELCBmb2N1c2VkQXJlYV0pO1xuXG4gIC8vIFVwZGF0ZSB0aGUgbGlzdCBvbmx5IGlmIHRoZSBzY29yZSBvZiBhdCBsZWFzdCBvbmUgb2YgdGhlIHN1Yi1hcmVhcyBoYXMgY2hhbmdlZFxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGZvY3VzZWRBcmVhICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMgJiZcbiAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcy5sZW5ndGggPiAwICYmXG4gICAgICBhcmVhc19kYXRhICYmXG4gICAgICBhcmVhc19kYXRhLmlzRmV0Y2hpbmcgPT09IGZhbHNlXG4gICAgKSB7XG4gICAgICBjb25zdCBpc1N1YkFyZWFzTm90RXF1YWwgPSBhcmVhc0NoYW5nZWRCeUlkQW5kU2NvcmUoXG4gICAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcyxcbiAgICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcyxcbiAgICAgICk7XG4gICAgICBpZiAoIWlzU3ViQXJlYXNOb3RFcXVhbCkgcmV0dXJuO1xuXG4gICAgICBjb25zdCBmb2N1c2VkQXJlYVdpdGhVcGRhdGVkU3ViQXJlYXMgPSB7XG4gICAgICAgIC4uLmZvY3VzZWRBcmVhLFxuICAgICAgICBzdWJfYXJlYXM6IGdldFVwZGF0ZWRBcmVhc0J5SWQoXG4gICAgICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzLFxuICAgICAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMsXG4gICAgICAgICksXG4gICAgICB9O1xuICAgICAgZGlzcGF0Y2goc2V0Rm9jdXNlZEFyZWEoZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzKSk7XG4gICAgfVxuICB9LCBbYXJlYXNfZGF0YV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgIWZvY3VzZWRBcmVhIHx8XG4gICAgICAhZm9jdXNlZEFyZWEuZmFjdG9yaWVzIHx8XG4gICAgICBmb2N1c2VkQXJlYS5mYWN0b3JpZXMubGVuZ3RoID09PSAwXG4gICAgKVxuICAgICAgcmV0dXJuO1xuXG4gICAgZGlzcGF0Y2goXG4gICAgICBzZXRGb2N1c2VkQXJlYSh7XG4gICAgICAgIC4uLmZvY3VzZWRBcmVhLFxuICAgICAgICBmYWN0b3JpZXM6IGdldFBvaW50cyhmb2N1c2VkQXJlYT8uZmFjdG9yaWVzLCBwb2ludHNfZGF0YS5pdGVtcyksXG4gICAgICB9KSxcbiAgICApO1xuICB9LCBbcG9pbnRzX2RhdGFdKTtcblxuICBjb25zdCBhcmVhc0NoYW5nZWRCeUlkQW5kU2NvcmUgPSAoYXJyMSwgYXJyMikgPT4ge1xuICAgIGlmIChhcnIxLmxlbmd0aCAhPT0gYXJyMi5sZW5ndGgpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIC8vIGdvIG92ZXIgdGhlIDFzdCBhcnJheVxuICAgIGZvciAobGV0IGl0ZW0xIG9mIGFycjEpIHtcbiAgICAgIC8vIEZpbmQgdGhlIG9iamVjdCB3aXRoIHRoZSBzYW1lIGlkIGluIHRoZSBzZWNvbmQgYXJyYXlcbiAgICAgIGxldCBtYXRjaGluZ0l0ZW0gPSBhcnIyLmZpbmQoKGl0ZW0yKSA9PiBpdGVtMi5hcmVhX2lkID09PSBpdGVtMS5hcmVhX2lkKTtcblxuICAgICAgLy8gUmV0dXJuIHRydWUgaWYgb25lIG1hdGNoaW5nIGl0ZW0gaXMgZm91bmQgaW4gdGhlIHNlY29uZCBhcnJheSBhbmQgdGhlaXIgc2NvcmVzIGNoYW5nZWRcbiAgICAgIGlmIChtYXRjaGluZ0l0ZW0gJiYgaXRlbTEuYXJlYV9zY29yZSAhPT0gbWF0Y2hpbmdJdGVtLmFyZWFfc2NvcmUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgYWxsIGl0ZW1zIG1hdGNoZWQgYW5kIGhhZCB0aGUgc2FtZSBzY29yZSwgcmV0dXJuIGZhbHNlXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9O1xuXG4gIGNvbnN0IGdldFVwZGF0ZWRBcmVhc0J5SWQgPSAoYXJyYXkxLCBhcnJheTIpID0+IHtcbiAgICByZXR1cm4gYXJyYXkyLmZpbHRlcigob2JqMikgPT5cbiAgICAgIGFycmF5MS5zb21lKChvYmoxKSA9PiBvYmoxLmFyZWFfaWQgPT09IG9iajIuYXJlYV9pZCksXG4gICAgKTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNlbGVjdGVkUmVmLmN1cnJlbnQ/LnNjcm9sbEludG9WaWV3KHtcbiAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICAgIGJsb2NrOiAnY2VudGVyJyxcbiAgICAgIGlubGluZTogJ2NlbnRlcicsXG4gICAgfSk7XG4gIH0sIFtzZWxlY3RlZEl0ZW1dKTtcblxuICBpZiAoXG4gICAgZm9jdXNlZEFyZWE/Lmdyb3VwICYmXG4gICAgZm9jdXNlZEFyZWEuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6V2FzdGV3YXRlclRyZWF0bWVudFBsYW50JyAmJlxuICAgIGZvY3VzZWRBcmVhPy5jbGlja2VkID09PSB1bmRlZmluZWRcbiAgKVxuICAgIHJldHVybiAoXG4gICAgICA8V1dUUERldGFpbHMgY2xhc3NOYW1lPVwicC0zXCIgc3R5bGU9e3sgb3ZlcmZsb3c6ICdzY3JvbGwnIH19PlxuICAgICAgICA8aDM+e1dXVFBJbmZvLnBvaW50Py5uYW1lfTwvaDM+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnaC1hdXRvIG15LTQnfT5cbiAgICAgICAgICA8T3JnYW5pY0NhcmQgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnaC1hdXRvIG10LTInfT5cbiAgICAgICAgICA8SW1wYWN0Q2FyZCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvV1dUUERldGFpbHM+XG4gICAgKTtcblxuICByZXR1cm4gKFxuICAgIDxXV1RQRGV0YWlscyBjbGFzc05hbWU9XCJwLTNcIiBzdHlsZT17eyBvdmVyZmxvdzogJ3Njcm9sbCcgfX0+XG4gICAgICA8aDM+e2ZvY3VzZWRBcmVhPy5hcmVhX25hbWUgfHwgZm9jdXNlZEFyZWE/Lm5hbWV9PC9oMz5cbiAgICAgIDx1bCBjbGFzc05hbWU9eydteC1uMyd9PntsaXN0RGV0YWlsc308L3VsPlxuICAgIDwvV1dUUERldGFpbHM+XG4gICk7XG59O1xuXG5jb25zdCBXV1RQRGV0YWlscyA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMzRweCk7XG4gIGJhY2tncm91bmQ6ICR7dGhlbWUuV1dUUE1hcC5iZ307XG5gO1xuXG5jb25zdCBTdW1tYXJ5Q29tcG9uZW50ID0gc3R5bGVkKFF1YWxpdHlTdW1tYXJ5KWBcbiAgZ3JpZC1hcmVhOiBzdW1tYXJ5O1xuXG4gIHN1bW1hcnktY29tcG9uZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlO1xuICB9XG5gO1xuXG5jb25zdCBMaW5lQ2hhcnRDb21wb25lbnQgPSBzdHlsZWQoTGluZUNoYXJ0KWBcbiAgZ3JpZC1hcmVhOiBncmFwaDtcbmA7XG5cbmNvbnN0IExpc3RDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMjBweDtcbiAgZ2FwOiAzMHB4O1xuYDtcblxuY29uc3QgRXJyb3JNZXNzYWdlID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2hhZG93OiAtMC45cHggLTAuNXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4wNik7XG4gIGJvcmRlcjogc29saWQgMXB4ICNlYmViZWI7XG4gIHBhZGRpbmc6IDIwcHg7XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFDQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxXQUFBLEdBQUFGLE9BQUE7QUFFQSxJQUFBRyxNQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxTQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxZQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxZQUFBLEdBQUFDLHNCQUFBLENBQUFQLE9BQUE7QUFDQSxJQUFBUSxnQkFBQSxHQUFBRCxzQkFBQSxDQUFBUCxPQUFBO0FBQ0EsSUFBQVMsWUFBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUsS0FBQSxHQUFBSCxzQkFBQSxDQUFBUCxPQUFBO0FBQ0EsSUFBQVcsaUJBQUEsR0FBQVgsT0FBQTtBQUNBLElBQUFZLGVB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
|