@kando-env/kando-ui 1.2.412-alpha.8 → 1.2.412

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.
Files changed (40) hide show
  1. package/lib/Widgets/EventsRow/EventsRow.js +3 -3
  2. package/lib/Widgets/Map/Map.js +100 -128
  3. package/lib/Widgets/Map/MapUtils.js +18 -10
  4. package/lib/Widgets/Map/areas/AreaPolygon.js +24 -23
  5. package/lib/Widgets/Map/events/Event.js +6 -2
  6. package/lib/Widgets/Map/points/PointMarker.js +3 -10
  7. package/lib/Widgets/Map/points/PointMarkers.js +25 -15
  8. package/lib/Widgets/Map/points/PointUtils.js +16 -32
  9. package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -3
  10. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +3 -4
  11. package/lib/components/Header/InfoBar/InfoBar.js +9 -9
  12. package/lib/components/Map/Map.js +5 -6
  13. package/lib/components/SevereEvent/SevereEvent.js +2 -3
  14. package/lib/i18n/en.json +1 -2
  15. package/lib/i18n/en_uk.json +5 -2
  16. package/lib/macros/getVersion.js +2 -2
  17. package/lib/pages/DashboardMap/FactoryCard.js +5 -2
  18. package/lib/pages/DashboardMap/List.js +69 -77
  19. package/lib/pages/DashboardMap/SeverityBadge.js +3 -7
  20. package/lib/pages/DashboardMap/WWTPMap.js +5 -6
  21. package/lib/pages/EventsPage/Body/Body.js +17 -17
  22. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +5 -4
  23. package/lib/pages/EventsPage/events/Sidebar.js +11 -12
  24. package/lib/pages/EventsPage/events/event_info/EventSection.test.js +22 -21
  25. package/lib/pages/EventsPage/events/event_info/Header/Header.js +1 -1
  26. package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +1 -1
  27. package/lib/pages/EventsPage/events/event_info/Header/index.js +1 -1
  28. package/lib/pages/EventsPage/events/event_info/SeverityScore/index.js +1 -1
  29. package/lib/pages/EventsPage/events/event_info/Timelines/index.js +1 -1
  30. package/lib/pages/EventsPage/events/events_list/EventsList.js +2 -2
  31. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +5 -7
  32. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +2 -2
  33. package/lib/pages/UtilityDashboardPage/TopBar/constants.js +11 -9
  34. package/lib/test/mocks/browser.js +1 -1
  35. package/lib/test/test-utils.js +1 -1
  36. package/lib/ui-kit/KandoTable/KandoTable.test.js +1 -1
  37. package/lib/utilities/Analytics.js +27 -34
  38. package/lib/utilities/scoreToData.js +3 -7
  39. package/lib/utilities/scoreToData.test.js +1 -1
  40. package/package.json +1 -1
@@ -1,11 +1,14 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
4
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.List = void 0;
9
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/typeof"));
10
+ var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
11
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
9
12
  var _styledComponents = _interopRequireDefault(require("styled-components"));
10
13
  var _react = _interopRequireWildcard(require("react"));
11
14
  var _theme = require("styles/theme/theme");
@@ -20,13 +23,12 @@ var _i18n = _interopRequireDefault(require("utilities/i18n"));
20
23
  var _DischargePattern = require("../SitePage/DischargePattern/DischargePattern");
21
24
  var _QualitySummary = require("Widgets/QualitySummary/QualitySummary");
22
25
  var _LineChart = require("pages/AreaPage/Dashboard/LineChart/LineChart");
26
+ var _WWTPDashboardSlice = require("store/WWTPDashboard/WWTPDashboardSlice");
23
27
  var _reactI18next = require("react-i18next");
24
28
  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); }
25
- 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; }
26
- // import { setFocusedArea } from 'src/store/WWTPDashboard/WWTPDashboardSlice';
27
-
29
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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; }
28
30
  var List = function List(props) {
29
- var _WWTPInfo$point, _focusedArea$sub_area, _focusedArea$sub_area3, _WWTPInfo$point2;
31
+ var _WWTPInfo$point, _focusedArea$sub_area, _WWTPInfo$point2;
30
32
  var ReduxState = (0, _reactRedux.useSelector)(function (state) {
31
33
  return state;
32
34
  });
@@ -35,8 +37,10 @@ var List = function List(props) {
35
37
  sub_areas: 'sub_areas',
36
38
  factories: 'factories'
37
39
  };
38
- var global_data = ReduxState.global_data;
39
- // const dispatch = useDispatch();
40
+ var areas_data = ReduxState.areas_data,
41
+ points_data = ReduxState.points_data,
42
+ global_data = ReduxState.global_data;
43
+ var dispatch = (0, _reactRedux.useDispatch)();
40
44
  var _useSelectedItem = (0, _ListContext.useSelectedItem)(),
41
45
  selectedItem = _useSelectedItem.selectedItem,
42
46
  handleSelectItem = _useSelectedItem.handleSelectItem;
@@ -61,7 +65,7 @@ var List = function List(props) {
61
65
  }
62
66
  return allArray;
63
67
  };
64
- var noAreas = focusedArea && (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.forWWTPMap) === true && siteID !== undefined && ((_focusedArea$sub_area = focusedArea.sub_areas) === null || _focusedArea$sub_area === void 0 ? void 0 : _focusedArea$sub_area.filter(Boolean).length) === 0;
68
+ var noAreas = focusedArea && (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.forWWTPMap) === true && siteID !== undefined && ((_focusedArea$sub_area = focusedArea.sub_areas) === null || _focusedArea$sub_area === void 0 ? void 0 : _focusedArea$sub_area.length) === 0;
65
69
  var listDetails = function listDetails() {
66
70
  var _focusedArea$sub_area2;
67
71
  if (!siteID && !focusedArea) {
@@ -116,76 +120,64 @@ var List = function List(props) {
116
120
  };
117
121
 
118
122
  // Update the list only if the score of at least one of the sub-areas has changed
119
- // useEffect(() => {
120
- // if (
121
- // focusedArea &&
122
- // focusedArea.sub_areas &&
123
- // focusedArea.sub_areas.length > 0 &&
124
- // areas_data?.isFetching === false
125
- // ) {
126
- // const subAreasChanged = areasScoreChangedById(
127
- // focusedArea.sub_areas,
128
- // areas_data.newAreas,
129
- // );
130
- // if (!subAreasChanged) return;
131
-
132
- // const focusedAreaWithUpdatedSubAreas = {
133
- // ...focusedArea,
134
- // sub_areas: getUpdatedAreasById(
135
- // focusedArea.sub_areas,
136
- // areas_data.newAreas,
137
- // ),
138
- // };
139
- // dispatch(setFocusedArea(focusedAreaWithUpdatedSubAreas));
140
- // }
141
- // }, [areas_data]);
142
-
143
- // useEffect(() => {
144
- // if (
145
- // !focusedArea ||
146
- // !focusedArea.factories ||
147
- // focusedArea.factories.length === 0 ||
148
- // points_data?.isFetching === true ||
149
- // points_data?.items?.length === 0
150
- // )
151
- // return;
152
-
153
- // dispatch(
154
- // setFocusedArea({
155
- // ...focusedArea,
156
- // factories: getPoints(focusedArea?.factories, points_data.items),
157
- // }),
158
- // );
159
- // }, [points_data, areas_data]);
160
-
161
- // const areasScoreChangedById = (arr1, arr2) => {
162
- // // go over the 1st array
163
- // for (let item1 of arr1) {
164
- // // Find the object with the same id in the second array
165
- // let matchingItem = arr2.find(
166
- // (item2) => item2?.area_id === item1?.area_id,
167
- // );
168
-
169
- // // Return true if one matching item is found in the second array and their scores changed
170
- // if (matchingItem && item1.area_score !== matchingItem.area_score) {
171
- // return true;
172
- // }
173
- // }
174
-
175
- // // If all items matched and had the same score, return false
176
- // return false;
177
- // };
178
-
179
- // const getUpdatedAreasById = (array1, array2) => {
180
- // const updatedArray = array2.filter((obj2) =>
181
- // array1.some((obj1) => obj1.area_id === obj2.area_id),
182
- // );
123
+ (0, _react.useEffect)(function () {
124
+ if (focusedArea && focusedArea.sub_areas && focusedArea.sub_areas.length > 0 && (areas_data === null || areas_data === void 0 ? void 0 : areas_data.isFetching) === false) {
125
+ var subAreasChanged = areasScoreChangedById(focusedArea.sub_areas, areas_data.newAreas);
126
+ if (!subAreasChanged) return;
127
+ var focusedAreaWithUpdatedSubAreas = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, focusedArea), {}, {
128
+ sub_areas: getUpdatedAreasById(focusedArea.sub_areas, areas_data.newAreas)
129
+ });
130
+ dispatch((0, _WWTPDashboardSlice.setFocusedArea)(focusedAreaWithUpdatedSubAreas));
131
+ }
132
+ }, [areas_data]);
133
+ (0, _react.useEffect)(function () {
134
+ var _points_data$items;
135
+ if (!focusedArea || !focusedArea.factories || focusedArea.factories.length === 0 || (points_data === null || points_data === void 0 ? void 0 : points_data.isFetching) === true || (points_data === null || points_data === void 0 ? void 0 : (_points_data$items = points_data.items) === null || _points_data$items === void 0 ? void 0 : _points_data$items.length) === 0) return;
136
+ dispatch((0, _WWTPDashboardSlice.setFocusedArea)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, focusedArea), {}, {
137
+ factories: (0, _utils.getPoints)(focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.factories, points_data.items)
138
+ })));
139
+ }, [points_data, areas_data]);
140
+ var areasScoreChangedById = function areasScoreChangedById(arr1, arr2) {
141
+ // go over the 1st array
142
+ var _iterator = (0, _createForOfIteratorHelper2.default)(arr1),
143
+ _step;
144
+ try {
145
+ var _loop = function _loop() {
146
+ var item1 = _step.value;
147
+ // Find the object with the same id in the second array
148
+ var matchingItem = arr2.find(function (item2) {
149
+ return (item2 === null || item2 === void 0 ? void 0 : item2.area_id) === (item1 === null || item1 === void 0 ? void 0 : item1.area_id);
150
+ });
183
151
 
184
- // return updatedArray?.length > 0 ? updatedArray : array1;
185
- // };
152
+ // Return true if one matching item is found in the second array and their scores changed
153
+ if (matchingItem && item1.area_score !== matchingItem.area_score) {
154
+ return {
155
+ v: true
156
+ };
157
+ }
158
+ };
159
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
160
+ var _ret = _loop();
161
+ if ((0, _typeof2.default)(_ret) === "object") return _ret.v;
162
+ }
186
163
 
187
- // updates the title of the list based on what is shown
188
- var listType = (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.area_id) === null ? listTypes.areas : (focusedArea === null || focusedArea === void 0 ? void 0 : (_focusedArea$sub_area3 = focusedArea.sub_areas) === null || _focusedArea$sub_area3 === void 0 ? void 0 : _focusedArea$sub_area3.filter(Boolean).length) > 0 ? listTypes.sub_areas : noAreas ? '' : listTypes.factories;
164
+ // If all items matched and had the same score, return false
165
+ } catch (err) {
166
+ _iterator.e(err);
167
+ } finally {
168
+ _iterator.f();
169
+ }
170
+ return false;
171
+ };
172
+ var getUpdatedAreasById = function getUpdatedAreasById(array1, array2) {
173
+ var updatedArray = array2.filter(function (obj2) {
174
+ return array1.some(function (obj1) {
175
+ return obj1.area_id === obj2.area_id;
176
+ });
177
+ });
178
+ return (updatedArray === null || updatedArray === void 0 ? void 0 : updatedArray.length) > 0 ? updatedArray : array1;
179
+ };
180
+ var listType = (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.area_id) === null ? listTypes.areas : (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.sub_areas.length) > 0 ? listTypes.sub_areas : noAreas ? '' : listTypes.factories;
189
181
  var translatedListType = listType === '' ? '' : /*#__PURE__*/_react.default.createElement("span", null, ' ', "- ", /*#__PURE__*/_react.default.createElement(_reactI18next.Trans, {
190
182
  i18nKey: _i18n.default.t("wwtpPage.list_type.".concat(listType))
191
183
  }));
@@ -237,4 +229,4 @@ var ErrorMessage = _styledComponents.default.div.withConfig({
237
229
  displayName: "List__ErrorMessage",
238
230
  componentId: "sc-1f5wz2c-4"
239
231
  })(["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;"]);
240
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdGhlbWUiLCJfcmVhY3RSZWR1eCIsIl91dGlscyIsIl9BcmVhQ2FyZCIsIl9GYWN0b3J5Q2FyZCIsIl9PcmdhbmljQ2FyZCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUG90ZW50aWFsU2F2aW5nIiwiX0xpc3RDb250ZXh0IiwiX2kxOG4iLCJfRGlzY2hhcmdlUGF0dGVybiIsIl9RdWFsaXR5U3VtbWFyeSIsIl9MaW5lQ2hhcnQiLCJfcmVhY3RJMThuZXh0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJMaXN0IiwicHJvcHMiLCJfV1dUUEluZm8kcG9pbnQiLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEiLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEzIiwiX1dXVFBJbmZvJHBvaW50MiIsIlJlZHV4U3RhdGUiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwibGlzdFR5cGVzIiwiYXJlYXMiLCJzdWJfYXJlYXMiLCJmYWN0b3JpZXMiLCJnbG9iYWxfZGF0YSIsIl91c2VTZWxlY3RlZEl0ZW0iLCJ1c2VTZWxlY3RlZEl0ZW0iLCJzZWxlY3RlZEl0ZW0iLCJoYW5kbGVTZWxlY3RJdGVtIiwiV1dUUEluZm8iLCJfdXNlU2VsZWN0b3IiLCJ3d3RwX2Rhc2hib2FyZCIsImZvY3VzZWRBcmVhIiwibWFwIiwic2VsZWN0ZWRSZWYiLCJ1c2VSZWYiLCJzaXRlSUQiLCJwb2ludCIsImlkIiwiaGFuZGxlSXRlbUNsaWNrIiwiaXRlbSIsIm5vRGF0YU1lc3NhZ2UiLCJpMThuIiwidCIsInNob3dlZEFyZWFzIiwiYWxsQXJyYXkiLCJzb3J0QXJlYXMiLCJmaWx0ZXIiLCJCb29sZWFuIiwiYXJlYV9pZCIsImFyZWFfbmFtZSIsImFyZWEiLCJ0b3BfbGV2ZWwiLCJub0FyZWFzIiwiZm9yV1dUUE1hcCIsInVuZGVmaW5lZCIsImxlbmd0aCIsImxpc3REZXRhaWxzIiwiX2ZvY3VzZWRBcmVhJHN1Yl9hcmVhMiIsImhhc19kZXZpY2UiLCJjcmVhdGVFbGVtZW50IiwiTGlzdENvbnRhaW5lciIsIkVycm9yTWVzc2FnZSIsIlN1bW1hcnlDb21wb25lbnQiLCJlbmRwb2ludCIsImNvbmNhdCIsImNsYXNzTmFtZSIsIkxpbmVDaGFydENvbXBvbmVudCIsInRpdGxlIiwiRGlzY2hhcmdlUGF0dGVybiIsIk51bWJlciIsIkFyZWFDYXJkIiwib2JqZWN0IiwibWFwUmVmIiwib25DbGljayIsInNlbGVjdGVkIiwiaXRlbVJlZiIsInNvcnRQb2ludHMiLCJmYWN0b3J5IiwiRmFjdG9yeUNhcmQiLCJsaXN0VHlwZSIsInRyYW5zbGF0ZWRMaXN0VHlwZSIsIlRyYW5zIiwiaTE4bktleSIsInVzZUVmZmVjdCIsIl9zZWxlY3RlZFJlZiRjdXJyZW50IiwiY3VycmVudCIsInNjcm9sbEludG9WaWV3IiwiYmVoYXZpb3IiLCJibG9jayIsImlubGluZSIsImdyb3VwIiwidHlwZSIsImNsaWNrZWQiLCJXV1RQRGV0YWlscyIsInN0eWxlIiwib3ZlcmZsb3ciLCJuYW1lIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwidGhlbWUiLCJXV1RQTWFwIiwiYmciLCJRdWFsaXR5U3VtbWFyeSIsIkxpbmVDaGFydCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvTGlzdC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUFyZWEgfSBmcm9tICcuLi8uLi9zdG9yZS9hcmVhcy9tb2RlbHMvSUFyZWEnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyB0aGVtZSB9IGZyb20gJ3NyYy9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgc29ydEFyZWFzLCBzb3J0UG9pbnRzIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBBcmVhQ2FyZCB9IGZyb20gJy4vQXJlYUNhcmQnO1xuaW1wb3J0IHsgRmFjdG9yeUNhcmQgfSBmcm9tICcuL0ZhY3RvcnlDYXJkJztcbmltcG9ydCBPcmdhbmljQ2FyZCBmcm9tICcuLi9Xd3RwUGFnZS9PcmdhbmljQ2FyZCc7XG5pbXBvcnQgSW1wYWN0Q2FyZCBmcm9tICcuLi9Xd3RwUGFnZS9Qb3RlbnRpYWxTYXZpbmcnO1xuaW1wb3J0IHsgdXNlU2VsZWN0ZWRJdGVtIH0gZnJvbSAnLi9MaXN0Q29udGV4dCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgRGlzY2hhcmdlUGF0dGVybiB9IGZyb20gJy4uL1NpdGVQYWdlL0Rpc2NoYXJnZVBhdHRlcm4vRGlzY2hhcmdlUGF0dGVybic7XG5pbXBvcnQgeyBRdWFsaXR5U3VtbWFyeSB9IGZyb20gJ3NyYy9XaWRnZXRzL1F1YWxpdHlTdW1tYXJ5L1F1YWxpdHlTdW1tYXJ5JztcbmltcG9ydCB7IExpbmVDaGFydCB9IGZyb20gJ3NyYy9wYWdlcy9BcmVhUGFnZS9EYXNoYm9hcmQvTGluZUNoYXJ0L0xpbmVDaGFydCc7XG4vLyBpbXBvcnQgeyBzZXRGb2N1c2VkQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9XV1RQRGFzaGJvYXJkL1dXVFBEYXNoYm9hcmRTbGljZSc7XG5pbXBvcnQgeyBUcmFucyB9IGZyb20gJ3JlYWN0LWkxOG5leHQnO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgZ2xvYmFsX2RhdGE6IGFueTtcbiAgV1dUUEluZm86IGFueTtcbiAgZGlzcGF0Y2g6IGFueTtcbn07XG5cbmV4cG9ydCBjb25zdCBMaXN0OiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IFJlZHV4U3RhdGUgPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlKTtcbiAgY29uc3QgbGlzdFR5cGVzID0ge1xuICAgIGFyZWFzOiAnYXJlYXMnLFxuICAgIHN1Yl9hcmVhczogJ3N1Yl9hcmVhcycsXG4gICAgZmFjdG9yaWVzOiAnZmFjdG9yaWVzJyxcbiAgfTtcbiAgY29uc3QgeyBnbG9iYWxfZGF0YSB9ID0gUmVkdXhTdGF0ZTtcbiAgLy8gY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCB7IHNlbGVjdGVkSXRlbSwgaGFuZGxlU2VsZWN0SXRlbSB9ID0gdXNlU2VsZWN0ZWRJdGVtKCk7XG4gIGNvbnN0IHsgV1dUUEluZm8gfSA9IHByb3BzO1xuICBjb25zdCB7IGZvY3VzZWRBcmVhLCBtYXAgfSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLnd3dHBfZGFzaGJvYXJkLFxuICApO1xuICBjb25zdCBzZWxlY3RlZFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3Qgc2l0ZUlEID0gV1dUUEluZm8ucG9pbnQ/LmlkO1xuXG4gIGNvbnN0IGhhbmRsZUl0ZW1DbGljayA9IChpdGVtKSA9PiB7XG4gICAgaGFuZGxlU2VsZWN0SXRlbShpdGVtKTtcbiAgfTtcblxuICBjb25zdCBub0RhdGFNZXNzYWdlID0gaTE4bi50KCd3d3RwUGFnZS5ub19kYXRhX2Zvcl9zaXRlJyk7XG5cbiAgY29uc3Qgc2hvd2VkQXJlYXMgPSAoZm9jdXNlZEFyZWEpID0+IHtcbiAgICBsZXQgYWxsQXJyYXkgPVxuICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzICYmIHNvcnRBcmVhcyhmb2N1c2VkQXJlYS5zdWJfYXJlYXMpLmZpbHRlcihCb29sZWFuKTtcblxuICAgIGlmIChmb2N1c2VkQXJlYS5hcmVhX2lkID09PSBudWxsICYmIGZvY3VzZWRBcmVhLmFyZWFfbmFtZSA9PT0gJycpIHtcbiAgICAgIGFsbEFycmF5ID0gYWxsQXJyYXkuZmlsdGVyKChhcmVhKSA9PiBhcmVhLnRvcF9sZXZlbCA9PT0gdHJ1ZSk7XG4gICAgfVxuICAgIHJldHVybiBhbGxBcnJheTtcbiAgfTtcblxuICBjb25zdCBub0FyZWFzID1cbiAgICBmb2N1c2VkQXJlYSAmJlxuICAgIGZvY3VzZWRBcmVhPy5mb3JXV1RQTWFwID09PSB0cnVlICYmXG4gICAgc2l0ZUlEICE9PSB1bmRlZmluZWQgJiZcbiAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXM/LmZpbHRlcihCb29sZWFuKS5sZW5ndGggPT09IDA7XG5cbiAgY29uc3QgbGlzdERldGFpbHMgPSAoKSA9PiB7XG4gICAgaWYgKCFzaXRlSUQgJiYgIWZvY3VzZWRBcmVhKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKG5vQXJlYXMpIHtcbiAgICAgIGlmIChcbiAgICAgICAgLy8gZm9jdXNlZEFyZWE/LmNsaWNrZWQgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICBmb2N1c2VkQXJlYT8uaGFzX2RldmljZSA9PT0gZmFsc2UgfHxcbiAgICAgICAgIXNpdGVJRFxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPExpc3RDb250YWluZXI+XG4gICAgICAgICAgICA8RXJyb3JNZXNzYWdlPntub0RhdGFNZXNzYWdlfTwvRXJyb3JNZXNzYWdlPlxuICAgICAgICAgIDwvTGlzdENvbnRhaW5lcj5cbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPExpc3RDb250YWluZXI+XG4gICAgICAgICAgICA8U3VtbWFyeUNvbXBvbmVudFxuICAgICAgICAgICAgICBlbmRwb2ludD17YC9kYXRhL2V2ZW50cy1jb21wb25lbnQtZGF0YS8ke3NpdGVJRH1gfVxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJzdW1tYXJ5LWNvbXBvbmVudFwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPExpbmVDaGFydENvbXBvbmVudFxuICAgICAgICAgICAgICB0aXRsZT17aTE4bi50KCdhcmVhX2Rhc2hib2FyZC50cmVuZCcpfVxuICAgICAgICAgICAgICBlbmRwb2ludD17YC9wb2ludHMvJHtzaXRlSUR9L3RyZW5kLWdyYXBoYH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8RGlzY2hhcmdlUGF0dGVybiBzaXRlSUQ9e051bWJlcihzaXRlSUQpfSAvPlxuICAgICAgICAgIDwvTGlzdENvbnRhaW5lcj5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZm9jdXNlZEFyZWEgJiYgZm9jdXNlZEFyZWE/LnN1Yl9hcmVhcz8ubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIHNob3dlZEFyZWFzKGZvY3VzZWRBcmVhKS5tYXAoKGFyZWE6IElBcmVhKSA9PiAoXG4gICAgICAgIDxBcmVhQ2FyZFxuICAgICAgICAgIGtleT17YXJlYS5hcmVhX2lkfVxuICAgICAgICAgIG9iamVjdD17YXJlYX1cbiAgICAgICAgICBtYXBSZWY9e21hcH1cbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVJdGVtQ2xpY2soYXJlYS5hcmVhX2lkKX1cbiAgICAgICAgICBzZWxlY3RlZD17c2VsZWN0ZWRJdGVtID09PSBhcmVhLmFyZWFfaWR9XG4gICAgICAgICAgaXRlbVJlZj17c2VsZWN0ZWRJdGVtID09PSBhcmVhLmFyZWFfaWQgPyBzZWxlY3RlZFJlZiA6IG51bGx9XG4gICAgICAgIC8+XG4gICAgICApKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGZvY3VzZWRBcmVhPy5mYWN0b3JpZXMpIHtcbiAgICAgICAgcmV0dXJuIHNvcnRQb2ludHMoZm9jdXNlZEFyZWEuZmFjdG9yaWVzKVxuICAgICAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgICAgICAubWFwKChmYWN0b3J5KSA9PiAoXG4gICAgICAgICAgICA8RmFjdG9yeUNhcmRcbiAgICAgICAgICAgICAga2V5PXtmYWN0b3J5LmlkfVxuICAgICAgICAgICAgICBvYmplY3Q9e2ZhY3Rvcnl9XG4gICAgICAgICAgICAgIG1hcFJlZj17bWFwfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVJdGVtQ2xpY2soZmFjdG9yeS5pZCl9XG4gICAgICAgICAgICAgIHNlbGVjdGVkPXtzZWxlY3RlZEl0ZW0gPT09IGZhY3RvcnkuaWR9XG4gICAgICAgICAgICAgIGl0ZW1SZWY9e3NlbGVjdGVkSXRlbSA9PT0gZmFjdG9yeS5pZCA/IHNlbGVjdGVkUmVmIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKSk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIC8vIFVwZGF0ZSB0aGUgbGlzdCBvbmx5IGlmIHRoZSBzY29yZSBvZiBhdCBsZWFzdCBvbmUgb2YgdGhlIHN1Yi1hcmVhcyBoYXMgY2hhbmdlZFxuICAvLyB1c2VFZmZlY3QoKCkgPT4ge1xuICAvLyAgIGlmIChcbiAgLy8gICAgIGZvY3VzZWRBcmVhICYmXG4gIC8vICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMgJiZcbiAgLy8gICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcy5sZW5ndGggPiAwICYmXG4gIC8vICAgICBhcmVhc19kYXRhPy5pc0ZldGNoaW5nID09PSBmYWxzZVxuICAvLyAgICkge1xuICAvLyAgICAgY29uc3Qgc3ViQXJlYXNDaGFuZ2VkID0gYXJlYXNTY29yZUNoYW5nZWRCeUlkKFxuICAvLyAgICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMsXG4gIC8vICAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMsXG4gIC8vICAgICApO1xuICAvLyAgICAgaWYgKCFzdWJBcmVhc0NoYW5nZWQpIHJldHVybjtcblxuICAvLyAgICAgY29uc3QgZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzID0ge1xuICAvLyAgICAgICAuLi5mb2N1c2VkQXJlYSxcbiAgLy8gICAgICAgc3ViX2FyZWFzOiBnZXRVcGRhdGVkQXJlYXNCeUlkKFxuICAvLyAgICAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcyxcbiAgLy8gICAgICAgICBhcmVhc19kYXRhLm5ld0FyZWFzLFxuICAvLyAgICAgICApLFxuICAvLyAgICAgfTtcbiAgLy8gICAgIGRpc3BhdGNoKHNldEZvY3VzZWRBcmVhKGZvY3VzZWRBcmVhV2l0aFVwZGF0ZWRTdWJBcmVhcykpO1xuICAvLyAgIH1cbiAgLy8gfSwgW2FyZWFzX2RhdGFdKTtcblxuICAvLyB1c2VFZmZlY3QoKCkgPT4ge1xuICAvLyAgIGlmIChcbiAgLy8gICAgICFmb2N1c2VkQXJlYSB8fFxuICAvLyAgICAgIWZvY3VzZWRBcmVhLmZhY3RvcmllcyB8fFxuICAvLyAgICAgZm9jdXNlZEFyZWEuZmFjdG9yaWVzLmxlbmd0aCA9PT0gMCB8fFxuICAvLyAgICAgcG9pbnRzX2RhdGE/LmlzRmV0Y2hpbmcgPT09IHRydWUgfHxcbiAgLy8gICAgIHBvaW50c19kYXRhPy5pdGVtcz8ubGVuZ3RoID09PSAwXG4gIC8vICAgKVxuICAvLyAgICAgcmV0dXJuO1xuXG4gIC8vICAgZGlzcGF0Y2goXG4gIC8vICAgICBzZXRGb2N1c2VkQXJlYSh7XG4gIC8vICAgICAgIC4uLmZvY3VzZWRBcmVhLFxuICAvLyAgICAgICBmYWN0b3JpZXM6IGdldFBvaW50cyhmb2N1c2VkQXJlYT8uZmFjdG9yaWVzLCBwb2ludHNfZGF0YS5pdGVtcyksXG4gIC8vICAgICB9KSxcbiAgLy8gICApO1xuICAvLyB9LCBbcG9pbnRzX2RhdGEsIGFyZWFzX2RhdGFdKTtcblxuICAvLyBjb25zdCBhcmVhc1Njb3JlQ2hhbmdlZEJ5SWQgPSAoYXJyMSwgYXJyMikgPT4ge1xuICAvLyAgIC8vIGdvIG92ZXIgdGhlIDFzdCBhcnJheVxuICAvLyAgIGZvciAobGV0IGl0ZW0xIG9mIGFycjEpIHtcbiAgLy8gICAgIC8vIEZpbmQgdGhlIG9iamVjdCB3aXRoIHRoZSBzYW1lIGlkIGluIHRoZSBzZWNvbmQgYXJyYXlcbiAgLy8gICAgIGxldCBtYXRjaGluZ0l0ZW0gPSBhcnIyLmZpbmQoXG4gIC8vICAgICAgIChpdGVtMikgPT4gaXRlbTI/LmFyZWFfaWQgPT09IGl0ZW0xPy5hcmVhX2lkLFxuICAvLyAgICAgKTtcblxuICAvLyAgICAgLy8gUmV0dXJuIHRydWUgaWYgb25lIG1hdGNoaW5nIGl0ZW0gaXMgZm91bmQgaW4gdGhlIHNlY29uZCBhcnJheSBhbmQgdGhlaXIgc2NvcmVzIGNoYW5nZWRcbiAgLy8gICAgIGlmIChtYXRjaGluZ0l0ZW0gJiYgaXRlbTEuYXJlYV9zY29yZSAhPT0gbWF0Y2hpbmdJdGVtLmFyZWFfc2NvcmUpIHtcbiAgLy8gICAgICAgcmV0dXJuIHRydWU7XG4gIC8vICAgICB9XG4gIC8vICAgfVxuXG4gIC8vICAgLy8gSWYgYWxsIGl0ZW1zIG1hdGNoZWQgYW5kIGhhZCB0aGUgc2FtZSBzY29yZSwgcmV0dXJuIGZhbHNlXG4gIC8vICAgcmV0dXJuIGZhbHNlO1xuICAvLyB9O1xuXG4gIC8vIGNvbnN0IGdldFVwZGF0ZWRBcmVhc0J5SWQgPSAoYXJyYXkxLCBhcnJheTIpID0+IHtcbiAgLy8gICBjb25zdCB1cGRhdGVkQXJyYXkgPSBhcnJheTIuZmlsdGVyKChvYmoyKSA9PlxuICAvLyAgICAgYXJyYXkxLnNvbWUoKG9iajEpID0+IG9iajEuYXJlYV9pZCA9PT0gb2JqMi5hcmVhX2lkKSxcbiAgLy8gICApO1xuXG4gIC8vICAgcmV0dXJuIHVwZGF0ZWRBcnJheT8ubGVuZ3RoID4gMCA/IHVwZGF0ZWRBcnJheSA6IGFycmF5MTtcbiAgLy8gfTtcblxuICAvLyB1cGRhdGVzIHRoZSB0aXRsZSBvZiB0aGUgbGlzdCBiYXNlZCBvbiB3aGF0IGlzIHNob3duXG4gIGNvbnN0IGxpc3RUeXBlID1cbiAgICBmb2N1c2VkQXJlYT8uYXJlYV9pZCA9PT0gbnVsbFxuICAgICAgPyBsaXN0VHlwZXMuYXJlYXNcbiAgICAgIDogZm9jdXNlZEFyZWE/LnN1Yl9hcmVhcz8uZmlsdGVyKEJvb2xlYW4pLmxlbmd0aCA+IDBcbiAgICAgID8gbGlzdFR5cGVzLnN1Yl9hcmVhc1xuICAgICAgOiBub0FyZWFzXG4gICAgICA/ICcnXG4gICAgICA6IGxpc3RUeXBlcy5mYWN0b3JpZXM7XG5cbiAgY29uc3QgdHJhbnNsYXRlZExpc3RUeXBlID1cbiAgICBsaXN0VHlwZSA9PT0gJycgPyAoXG4gICAgICAnJ1xuICAgICkgOiAoXG4gICAgICA8c3Bhbj5cbiAgICAgICAgeycgJ31cbiAgICAgICAgLSA8VHJhbnMgaTE4bktleT17aTE4bi50KGB3d3RwUGFnZS5saXN0X3R5cGUuJHtsaXN0VHlwZX1gKX0gLz5cbiAgICAgIDwvc3Bhbj5cbiAgICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2VsZWN0ZWRSZWYuY3VycmVudD8uc2Nyb2xsSW50b1ZpZXcoe1xuICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgYmxvY2s6ICdjZW50ZXInLFxuICAgICAgaW5saW5lOiAnY2VudGVyJyxcbiAgICB9KTtcbiAgfSwgW3NlbGVjdGVkSXRlbV0pO1xuXG4gIGlmIChcbiAgICBmb2N1c2VkQXJlYT8uZ3JvdXAgJiZcbiAgICBmb2N1c2VkQXJlYS5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnICYmXG4gICAgZm9jdXNlZEFyZWE/LmNsaWNrZWQgPT09IHVuZGVmaW5lZFxuICApXG4gICAgcmV0dXJuIChcbiAgICAgIDxXV1RQRGV0YWlscyBjbGFzc05hbWU9XCJwLTNcIiBzdHlsZT17eyBvdmVyZmxvdzogJ3Njcm9sbCcgfX0+XG4gICAgICAgIDxoMz57V1dUUEluZm8ucG9pbnQ/Lm5hbWV9PC9oMz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoLWF1dG8gbXktNCd9PlxuICAgICAgICAgIDxPcmdhbmljQ2FyZCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoLWF1dG8gbXQtMid9PlxuICAgICAgICAgIDxJbXBhY3RDYXJkIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9XV1RQRGV0YWlscz5cbiAgICApO1xuXG4gIHJldHVybiAoXG4gICAgPFdXVFBEZXRhaWxzIGNsYXNzTmFtZT1cInAtM1wiIHN0eWxlPXt7IG92ZXJmbG93OiAnc2Nyb2xsJyB9fT5cbiAgICAgIDxoMz5cbiAgICAgICAge2ZvY3VzZWRBcmVhPy5hcmVhX25hbWUgfHxcbiAgICAgICAgICBmb2N1c2VkQXJlYT8ubmFtZSB8fFxuICAgICAgICAgIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5TmFtZX1cbiAgICAgICAge3RyYW5zbGF0ZWRMaXN0VHlwZX1cbiAgICAgIDwvaDM+XG4gICAgICA8dWwgY2xhc3NOYW1lPXsnbXgtbjMnfT57bGlzdERldGFpbHMoKX08L3VsPlxuICAgIDwvV1dUUERldGFpbHM+XG4gICk7XG59O1xuXG5jb25zdCBXV1RQRGV0YWlscyA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMzRweCk7XG4gIGJhY2tncm91bmQ6ICR7dGhlbWUuV1dUUE1hcC5iZ307XG5gO1xuXG5jb25zdCBTdW1tYXJ5Q29tcG9uZW50ID0gc3R5bGVkKFF1YWxpdHlTdW1tYXJ5KWBcbiAgZ3JpZC1hcmVhOiBzdW1tYXJ5O1xuXG4gIHN1bW1hcnktY29tcG9uZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlO1xuICB9XG5gO1xuXG5jb25zdCBMaW5lQ2hhcnRDb21wb25lbnQgPSBzdHlsZWQoTGluZUNoYXJ0KWBcbiAgZ3JpZC1hcmVhOiBncmFwaDtcbmA7XG5cbmNvbnN0IExpc3RDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMjBweDtcbiAgZ2FwOiAzMHB4O1xuYDtcblxuY29uc3QgRXJyb3JNZXNzYWdlID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2hhZG93OiAtMC45cHggLTAuNXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4wNik7XG4gIGJvcmRlcjogc29saWQgMXB4ICNlYmViZWI7XG4gIHBhZGRpbmc6IDIwcHg7XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFDQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxXQUFBLEdBQUFGLE9BQUE7QUFFQSxJQUFBRyxNQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxTQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxZQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxZQUFBLEdBQUFDLHNCQUFBLENBQUFQLE9BQUE7QUFDQSxJQUFBUSxnQkFBQSxHQUFBRCxzQkFBQSxDQUFBUCxPQUFBO0FBQ0EsSUFBQVMsWUFBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUsS0FBQSxHQUFBSCxzQkFBQSxDQUFBUCxPQUFBO0FBQ0EsSUFBQVcsaUJBQUEsR0FBQVgsT0FBQTtBQUNBLElBQUFZLGVBQUEsR0FBQVosT0FBQTtBQUNBLElBQUFhLFVBQUEsR0FBQWIsT0FBQTtBQUVBLElBQUFjLGFBQUEsR0FBQWQsT0FBQTtBQUFz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
232
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdGhlbWUiLCJfcmVhY3RSZWR1eCIsIl91dGlscyIsIl9BcmVhQ2FyZCIsIl9GYWN0b3J5Q2FyZCIsIl9PcmdhbmljQ2FyZCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUG90ZW50aWFsU2F2aW5nIiwiX0xpc3RDb250ZXh0IiwiX2kxOG4iLCJfRGlzY2hhcmdlUGF0dGVybiIsIl9RdWFsaXR5U3VtbWFyeSIsIl9MaW5lQ2hhcnQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX3JlYWN0STE4bmV4dCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mMyIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkxpc3QiLCJwcm9wcyIsIl9XV1RQSW5mbyRwb2ludCIsIl9mb2N1c2VkQXJlYSRzdWJfYXJlYSIsIl9XV1RQSW5mbyRwb2ludDIiLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImxpc3RUeXBlcyIsImFyZWFzIiwic3ViX2FyZWFzIiwiZmFjdG9yaWVzIiwiYXJlYXNfZGF0YSIsInBvaW50c19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwiX3VzZVNlbGVjdGVkSXRlbSIsInVzZVNlbGVjdGVkSXRlbSIsInNlbGVjdGVkSXRlbSIsImhhbmRsZVNlbGVjdEl0ZW0iLCJXV1RQSW5mbyIsIl91c2VTZWxlY3RvciIsInd3dHBfZGFzaGJvYXJkIiwiZm9jdXNlZEFyZWEiLCJtYXAiLCJzZWxlY3RlZFJlZiIsInVzZVJlZiIsInNpdGVJRCIsInBvaW50IiwiaWQiLCJoYW5kbGVJdGVtQ2xpY2siLCJpdGVtIiwibm9EYXRhTWVzc2FnZSIsImkxOG4iLCJ0Iiwic2hvd2VkQXJlYXMiLCJhbGxBcnJheSIsInNvcnRBcmVhcyIsImZpbHRlciIsIkJvb2xlYW4iLCJhcmVhX2lkIiwiYXJlYV9uYW1lIiwiYXJlYSIsInRvcF9sZXZlbCIsIm5vQXJlYXMiLCJmb3JXV1RQTWFwIiwidW5kZWZpbmVkIiwibGVuZ3RoIiwibGlzdERldGFpbHMiLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEyIiwiaGFzX2RldmljZSIsImNyZWF0ZUVsZW1lbnQiLCJMaXN0Q29udGFpbmVyIiwiRXJyb3JNZXNzYWdlIiwiU3VtbWFyeUNvbXBvbmVudCIsImVuZHBvaW50IiwiY29uY2F0IiwiY2xhc3NOYW1lIiwiTGluZUNoYXJ0Q29tcG9uZW50IiwidGl0bGUiLCJEaXNjaGFyZ2VQYXR0ZXJuIiwiTnVtYmVyIiwiQXJlYUNhcmQiLCJvYmplY3QiLCJtYXBSZWYiLCJvbkNsaWNrIiwic2VsZWN0ZWQiLCJpdGVtUmVmIiwic29ydFBvaW50cyIsImZhY3RvcnkiLCJGYWN0b3J5Q2FyZCIsInVzZUVmZmVjdCIsImlzRmV0Y2hpbmciLCJzdWJBcmVhc0NoYW5nZWQiLCJhcmVhc1Njb3JlQ2hhbmdlZEJ5SWQiLCJuZXdBcmVhcyIsImZvY3VzZWRBcmVhV2l0aFVwZGF0ZWRTdWJBcmVhcyIsIl9vYmplY3RTcHJlYWQyIiwiZ2V0VXBkYXRlZEFyZWFzQnlJZCIsInNldEZvY3VzZWRBcmVhIiwiX3BvaW50c19kYXRhJGl0ZW1zIiwiaXRlbXMiLCJnZXRQb2ludHMiLCJhcnIxIiwiYXJyMiIsIl9pdGVyYXRvciIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyMiIsIl9zdGVwIiwiX2xvb3AiLCJpdGVtMSIsInZhbHVlIiwibWF0Y2hpbmdJdGVtIiwiZmluZCIsIml0ZW0yIiwiYXJlYV9zY29yZSIsInYiLCJzIiwibiIsImRvbmUiLCJfcmV0IiwiX3R5cGVvZjIiLCJlcnIiLCJlIiwiZiIsImFycmF5MSIsImFycmF5MiIsInVwZGF0ZWRBcnJheSIsIm9iajIiLCJzb21lIiwib2JqMSIsImxpc3RUeXBlIiwidHJhbnNsYXRlZExpc3RUeXBlIiwiVHJhbnMiLCJpMThuS2V5IiwiX3NlbGVjdGVkUmVmJGN1cnJlbnQiLCJjdXJyZW50Iiwic2Nyb2xsSW50b1ZpZXciLCJiZWhhdmlvciIsImJsb2NrIiwiaW5saW5lIiwiZ3JvdXAiLCJ0eXBlIiwiY2xpY2tlZCIsIldXVFBEZXRhaWxzIiwic3R5bGUiLCJvdmVyZmxvdyIsIm5hbWUiLCJ3YXRlckF1dGhvcml0eU5hbWUiLCJleHBvcnRzIiwic3R5bGVkIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJ0aGVtZSIsIldXVFBNYXAiLCJiZyIsIlF1YWxpdHlTdW1tYXJ5IiwiTGluZUNoYXJ0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC9MaXN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQXJlYSB9IGZyb20gJy4uLy4uL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnc3JjL3N0eWxlcy90aGVtZS90aGVtZSc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgc29ydEFyZWFzLCBnZXRQb2ludHMsIHNvcnRQb2ludHMgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEFyZWFDYXJkIH0gZnJvbSAnLi9BcmVhQ2FyZCc7XG5pbXBvcnQgeyBGYWN0b3J5Q2FyZCB9IGZyb20gJy4vRmFjdG9yeUNhcmQnO1xuaW1wb3J0IE9yZ2FuaWNDYXJkIGZyb20gJy4uL1d3dHBQYWdlL09yZ2FuaWNDYXJkJztcbmltcG9ydCBJbXBhY3RDYXJkIGZyb20gJy4uL1d3dHBQYWdlL1BvdGVudGlhbFNhdmluZyc7XG5pbXBvcnQgeyB1c2VTZWxlY3RlZEl0ZW0gfSBmcm9tICcuL0xpc3RDb250ZXh0JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBEaXNjaGFyZ2VQYXR0ZXJuIH0gZnJvbSAnLi4vU2l0ZVBhZ2UvRGlzY2hhcmdlUGF0dGVybi9EaXNjaGFyZ2VQYXR0ZXJuJztcbmltcG9ydCB7IFF1YWxpdHlTdW1tYXJ5IH0gZnJvbSAnc3JjL1dpZGdldHMvUXVhbGl0eVN1bW1hcnkvUXVhbGl0eVN1bW1hcnknO1xuaW1wb3J0IHsgTGluZUNoYXJ0IH0gZnJvbSAnc3JjL3BhZ2VzL0FyZWFQYWdlL0Rhc2hib2FyZC9MaW5lQ2hhcnQvTGluZUNoYXJ0JztcbmltcG9ydCB7IHNldEZvY3VzZWRBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL1dXVFBEYXNoYm9hcmQvV1dUUERhc2hib2FyZFNsaWNlJztcbmltcG9ydCB7IFRyYW5zIH0gZnJvbSAncmVhY3QtaTE4bmV4dCc7XG5cbnR5cGUgSVByb3BzID0ge1xuICBnbG9iYWxfZGF0YTogYW55O1xuICBXV1RQSW5mbzogYW55O1xuICBkaXNwYXRjaDogYW55O1xufTtcblxuZXhwb3J0IGNvbnN0IExpc3Q6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCBsaXN0VHlwZXMgPSB7XG4gICAgYXJlYXM6ICdhcmVhcycsXG4gICAgc3ViX2FyZWFzOiAnc3ViX2FyZWFzJyxcbiAgICBmYWN0b3JpZXM6ICdmYWN0b3JpZXMnLFxuICB9O1xuICBjb25zdCB7IGFyZWFzX2RhdGEsIHBvaW50c19kYXRhLCBnbG9iYWxfZGF0YSB9ID0gUmVkdXhTdGF0ZTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCB7IHNlbGVjdGVkSXRlbSwgaGFuZGxlU2VsZWN0SXRlbSB9ID0gdXNlU2VsZWN0ZWRJdGVtKCk7XG4gIGNvbnN0IHsgV1dUUEluZm8gfSA9IHByb3BzO1xuICBjb25zdCB7IGZvY3VzZWRBcmVhLCBtYXAgfSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLnd3dHBfZGFzaGJvYXJkLFxuICApO1xuICBjb25zdCBzZWxlY3RlZFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3Qgc2l0ZUlEID0gV1dUUEluZm8ucG9pbnQ/LmlkO1xuXG4gIGNvbnN0IGhhbmRsZUl0ZW1DbGljayA9IChpdGVtKSA9PiB7XG4gICAgaGFuZGxlU2VsZWN0SXRlbShpdGVtKTtcbiAgfTtcblxuICBjb25zdCBub0RhdGFNZXNzYWdlID0gaTE4bi50KCd3d3RwUGFnZS5ub19kYXRhX2Zvcl9zaXRlJyk7XG5cbiAgY29uc3Qgc2hvd2VkQXJlYXMgPSAoZm9jdXNlZEFyZWEpID0+IHtcbiAgICBsZXQgYWxsQXJyYXkgPVxuICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzICYmIHNvcnRBcmVhcyhmb2N1c2VkQXJlYS5zdWJfYXJlYXMpLmZpbHRlcihCb29sZWFuKTtcblxuICAgIGlmIChmb2N1c2VkQXJlYS5hcmVhX2lkID09PSBudWxsICYmIGZvY3VzZWRBcmVhLmFyZWFfbmFtZSA9PT0gJycpIHtcbiAgICAgIGFsbEFycmF5ID0gYWxsQXJyYXkuZmlsdGVyKChhcmVhKSA9PiBhcmVhLnRvcF9sZXZlbCA9PT0gdHJ1ZSk7XG4gICAgfVxuICAgIHJldHVybiBhbGxBcnJheTtcbiAgfTtcblxuICBjb25zdCBub0FyZWFzID1cbiAgICBmb2N1c2VkQXJlYSAmJlxuICAgIGZvY3VzZWRBcmVhPy5mb3JXV1RQTWFwID09PSB0cnVlICYmXG4gICAgc2l0ZUlEICE9PSB1bmRlZmluZWQgJiZcbiAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXM/Lmxlbmd0aCA9PT0gMDtcblxuICBjb25zdCBsaXN0RGV0YWlscyA9ICgpID0+IHtcbiAgICBpZiAoIXNpdGVJRCAmJiAhZm9jdXNlZEFyZWEpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAobm9BcmVhcykge1xuICAgICAgaWYgKFxuICAgICAgICAvLyBmb2N1c2VkQXJlYT8uY2xpY2tlZCA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgIGZvY3VzZWRBcmVhPy5oYXNfZGV2aWNlID09PSBmYWxzZSB8fFxuICAgICAgICAhc2l0ZUlEXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8TGlzdENvbnRhaW5lcj5cbiAgICAgICAgICAgIDxFcnJvck1lc3NhZ2U+e25vRGF0YU1lc3NhZ2V9PC9FcnJvck1lc3NhZ2U+XG4gICAgICAgICAgPC9MaXN0Q29udGFpbmVyPlxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8TGlzdENvbnRhaW5lcj5cbiAgICAgICAgICAgIDxTdW1tYXJ5Q29tcG9uZW50XG4gICAgICAgICAgICAgIGVuZHBvaW50PXtgL2RhdGEvZXZlbnRzLWNvbXBvbmVudC1kYXRhLyR7c2l0ZUlEfWB9XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cInN1bW1hcnktY29tcG9uZW50XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8TGluZUNoYXJ0Q29tcG9uZW50XG4gICAgICAgICAgICAgIHRpdGxlPXtpMThuLnQoJ2FyZWFfZGFzaGJvYXJkLnRyZW5kJyl9XG4gICAgICAgICAgICAgIGVuZHBvaW50PXtgL3BvaW50cy8ke3NpdGVJRH0vdHJlbmQtZ3JhcGhgfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxEaXNjaGFyZ2VQYXR0ZXJuIHNpdGVJRD17TnVtYmVyKHNpdGVJRCl9IC8+XG4gICAgICAgICAgPC9MaXN0Q29udGFpbmVyPlxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChmb2N1c2VkQXJlYSAmJiBmb2N1c2VkQXJlYT8uc3ViX2FyZWFzPy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gc2hvd2VkQXJlYXMoZm9jdXNlZEFyZWEpLm1hcCgoYXJlYTogSUFyZWEpID0+IChcbiAgICAgICAgPEFyZWFDYXJkXG4gICAgICAgICAga2V5PXthcmVhLmFyZWFfaWR9XG4gICAgICAgICAgb2JqZWN0PXthcmVhfVxuICAgICAgICAgIG1hcFJlZj17bWFwfVxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUl0ZW1DbGljayhhcmVhLmFyZWFfaWQpfVxuICAgICAgICAgIHNlbGVjdGVkPXtzZWxlY3RlZEl0ZW0gPT09IGFyZWEuYXJlYV9pZH1cbiAgICAgICAgICBpdGVtUmVmPXtzZWxlY3RlZEl0ZW0gPT09IGFyZWEuYXJlYV9pZCA/IHNlbGVjdGVkUmVmIDogbnVsbH1cbiAgICAgICAgLz5cbiAgICAgICkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoZm9jdXNlZEFyZWE/LmZhY3Rvcmllcykge1xuICAgICAgICByZXR1cm4gc29ydFBvaW50cyhmb2N1c2VkQXJlYS5mYWN0b3JpZXMpXG4gICAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAgIC5tYXAoKGZhY3RvcnkpID0+IChcbiAgICAgICAgICAgIDxGYWN0b3J5Q2FyZFxuICAgICAgICAgICAgICBrZXk9e2ZhY3RvcnkuaWR9XG4gICAgICAgICAgICAgIG9iamVjdD17ZmFjdG9yeX1cbiAgICAgICAgICAgICAgbWFwUmVmPXttYXB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUl0ZW1DbGljayhmYWN0b3J5LmlkKX1cbiAgICAgICAgICAgICAgc2VsZWN0ZWQ9e3NlbGVjdGVkSXRlbSA9PT0gZmFjdG9yeS5pZH1cbiAgICAgICAgICAgICAgaXRlbVJlZj17c2VsZWN0ZWRJdGVtID09PSBmYWN0b3J5LmlkID8gc2VsZWN0ZWRSZWYgOiBudWxsfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgLy8gVXBkYXRlIHRoZSBsaXN0IG9ubHkgaWYgdGhlIHNjb3JlIG9mIGF0IGxlYXN0IG9uZSBvZiB0aGUgc3ViLWFyZWFzIGhhcyBjaGFuZ2VkXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgZm9jdXNlZEFyZWEgJiZcbiAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcyAmJlxuICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzLmxlbmd0aCA+IDAgJiZcbiAgICAgIGFyZWFzX2RhdGE/LmlzRmV0Y2hpbmcgPT09IGZhbHNlXG4gICAgKSB7XG4gICAgICBjb25zdCBzdWJBcmVhc0NoYW5nZWQgPSBhcmVhc1Njb3JlQ2hhbmdlZEJ5SWQoXG4gICAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcyxcbiAgICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcyxcbiAgICAgICk7XG4gICAgICBpZiAoIXN1YkFyZWFzQ2hhbmdlZCkgcmV0dXJuO1xuXG4gICAgICBjb25zdCBmb2N1c2VkQXJlYVdpdGhVcGRhdGVkU3ViQXJlYXMgPSB7XG4gICAgICAgIC4uLmZvY3VzZWRBcmVhLFxuICAgICAgICBzdWJfYXJlYXM6IGdldFVwZGF0ZWRBcmVhc0J5SWQoXG4gICAgICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzLFxuICAgICAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMsXG4gICAgICAgICksXG4gICAgICB9O1xuICAgICAgZGlzcGF0Y2goc2V0Rm9jdXNlZEFyZWEoZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzKSk7XG4gICAgfVxuICB9LCBbYXJlYXNfZGF0YV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgIWZvY3VzZWRBcmVhIHx8XG4gICAgICAhZm9jdXNlZEFyZWEuZmFjdG9yaWVzIHx8XG4gICAgICBmb2N1c2VkQXJlYS5mYWN0b3JpZXMubGVuZ3RoID09PSAwIHx8XG4gICAgICBwb2ludHNfZGF0YT8uaXNGZXRjaGluZyA9PT0gdHJ1ZSB8fFxuICAgICAgcG9pbnRzX2RhdGE/Lml0ZW1zPy5sZW5ndGggPT09IDBcbiAgICApXG4gICAgICByZXR1cm47XG5cbiAgICBkaXNwYXRjaChcbiAgICAgIHNldEZvY3VzZWRBcmVhKHtcbiAgICAgICAgLi4uZm9jdXNlZEFyZWEsXG4gICAgICAgIGZhY3RvcmllczogZ2V0UG9pbnRzKGZvY3VzZWRBcmVhPy5mYWN0b3JpZXMsIHBvaW50c19kYXRhLml0ZW1zKSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH0sIFtwb2ludHNfZGF0YSwgYXJlYXNfZGF0YV0pO1xuXG4gIGNvbnN0IGFyZWFzU2NvcmVDaGFuZ2VkQnlJZCA9IChhcnIxLCBhcnIyKSA9PiB7XG4gICAgLy8gZ28gb3ZlciB0aGUgMXN0IGFycmF5XG4gICAgZm9yIChsZXQgaXRlbTEgb2YgYXJyMSkge1xuICAgICAgLy8gRmluZCB0aGUgb2JqZWN0IHdpdGggdGhlIHNhbWUgaWQgaW4gdGhlIHNlY29uZCBhcnJheVxuICAgICAgbGV0IG1hdGNoaW5nSXRlbSA9IGFycjIuZmluZChcbiAgICAgICAgKGl0ZW0yKSA9PiBpdGVtMj8uYXJlYV9pZCA9PT0gaXRlbTE/LmFyZWFfaWQsXG4gICAgICApO1xuXG4gICAgICAvLyBSZXR1cm4gdHJ1ZSBpZiBvbmUgbWF0Y2hpbmcgaXRlbSBpcyBmb3VuZCBpbiB0aGUgc2Vjb25kIGFycmF5IGFuZCB0aGVpciBzY29yZXMgY2hhbmdlZFxuICAgICAgaWYgKG1hdGNoaW5nSXRlbSAmJiBpdGVtMS5hcmVhX3Njb3JlICE9PSBtYXRjaGluZ0l0ZW0uYXJlYV9zY29yZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBhbGwgaXRlbXMgbWF0Y2hlZCBhbmQgaGFkIHRoZSBzYW1lIHNjb3JlLCByZXR1cm4gZmFsc2VcbiAgICByZXR1cm4gZmFsc2U7XG4gIH07XG5cbiAgY29uc3QgZ2V0VXBkYXRlZEFyZWFzQnlJZCA9IChhcnJheTEsIGFycmF5MikgPT4ge1xuICAgIGNvbnN0IHVwZGF0ZWRBcnJheSA9IGFycmF5Mi5maWx0ZXIoKG9iajIpID0+XG4gICAgICBhcnJheTEuc29tZSgob2JqMSkgPT4gb2JqMS5hcmVhX2lkID09PSBvYmoyLmFyZWFfaWQpLFxuICAgICk7XG5cbiAgICByZXR1cm4gdXBkYXRlZEFycmF5Py5sZW5ndGggPiAwID8gdXBkYXRlZEFycmF5IDogYXJyYXkxO1xuICB9O1xuXG4gIGNvbnN0IGxpc3RUeXBlID1cbiAgICBmb2N1c2VkQXJlYT8uYXJlYV9pZCA9PT0gbnVsbFxuICAgICAgPyBsaXN0VHlwZXMuYXJlYXNcbiAgICAgIDogZm9jdXNlZEFyZWE/LnN1Yl9hcmVhcy5sZW5ndGggPiAwXG4gICAgICA/IGxpc3RUeXBlcy5zdWJfYXJlYXNcbiAgICAgIDogbm9BcmVhc1xuICAgICAgPyAnJ1xuICAgICAgOiBsaXN0VHlwZXMuZmFjdG9yaWVzO1xuXG4gIGNvbnN0IHRyYW5zbGF0ZWRMaXN0VHlwZSA9XG4gICAgbGlzdFR5cGUgPT09ICcnID8gKFxuICAgICAgJydcbiAgICApIDogKFxuICAgICAgPHNwYW4+XG4gICAgICAgIHsnICd9XG4gICAgICAgIC0gPFRyYW5zIGkxOG5LZXk9e2kxOG4udChgd3d0cFBhZ2UubGlzdF90eXBlLiR7bGlzdFR5cGV9YCl9IC8+XG4gICAgICA8L3NwYW4+XG4gICAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNlbGVjdGVkUmVmLmN1cnJlbnQ/LnNjcm9sbEludG9WaWV3KHtcbiAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICAgIGJsb2NrOiAnY2VudGVyJyxcbiAgICAgIGlubGluZTogJ2NlbnRlcicsXG4gICAgfSk7XG4gIH0sIFtzZWxlY3RlZEl0ZW1dKTtcblxuICBpZiAoXG4gICAgZm9jdXNlZEFyZWE/Lmdyb3VwICYmXG4gICAgZm9jdXNlZEFyZWEuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6V2FzdGV3YXRlclRyZWF0bWVudFBsYW50JyAmJlxuICAgIGZvY3VzZWRBcmVhPy5jbGlja2VkID09PSB1bmRlZmluZWRcbiAgKVxuICAgIHJldHVybiAoXG4gICAgICA8V1dUUERldGFpbHMgY2xhc3NOYW1lPVwicC0zXCIgc3R5bGU9e3sgb3ZlcmZsb3c6ICdzY3JvbGwnIH19PlxuICAgICAgICA8aDM+e1dXVFBJbmZvLnBvaW50Py5uYW1lfTwvaDM+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnaC1hdXRvIG15LTQnfT5cbiAgICAgICAgICA8T3JnYW5pY0NhcmQgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnaC1hdXRvIG10LTInfT5cbiAgICAgICAgICA8SW1wYWN0Q2FyZCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvV1dUUERldGFpbHM+XG4gICAgKTtcblxuICByZXR1cm4gKFxuICAgIDxXV1RQRGV0YWlscyBjbGFzc05hbWU9XCJwLTNcIiBzdHlsZT17eyBvdmVyZmxvdzogJ3Njcm9sbCcgfX0+XG4gICAgICA8aDM+XG4gICAgICAgIHtmb2N1c2VkQXJlYT8uYXJlYV9uYW1lIHx8XG4gICAgICAgICAgZm9jdXNlZEFyZWE/Lm5hbWUgfHxcbiAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eU5hbWV9XG4gICAgICAgIHt0cmFuc2xhdGVkTGlzdFR5cGV9XG4gICAgICA8L2gzPlxuICAgICAgPHVsIGNsYXNzTmFtZT17J214LW4zJ30+e2xpc3REZXRhaWxzKCl9PC91bD5cbiAgICA8L1dXVFBEZXRhaWxzPlxuICApO1xufTtcblxuY29uc3QgV1dUUERldGFpbHMgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTM0cHgpO1xuICBiYWNrZ3JvdW5kOiAke3RoZW1lLldXVFBNYXAuYmd9O1xuYDtcblxuY29uc3QgU3VtbWFyeUNvbXBvbmVudCA9IHN0eWxlZChRdWFsaXR5U3VtbWFyeSlgXG4gIGdyaWQtYXJlYTogc3VtbWFyeTtcblxuICBzdW1tYXJ5LWNvbXBvbmVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTtcbiAgfVxuYDtcblxuY29uc3QgTGluZUNoYXJ0Q29tcG9uZW50ID0gc3R5bGVkKExpbmVDaGFydClgXG4gIGdyaWQtYXJlYTogZ3JhcGg7XG5gO1xuXG5jb25zdCBMaXN0Q29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGdhcDogMzBweDtcbmA7XG5cbmNvbnN0IEVycm9yTWVzc2FnZSA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm94LXNoYWRvdzogLTAuOXB4IC0wLjVweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMDYpO1xuICBib3JkZXI6IHNvbGlkIDFweCAjZWJlYmViO1xuICBwYWRkaW5nOiAyMHB4O1xuYDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQ0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsV0FBQSxHQUFBRixPQUFBO0FBRUEsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksU0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssWUFBQSxHQUFBTCxPQUFB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
@@ -9,15 +9,11 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
9
9
  var _react = _interopRequireDefault(require("react"));
10
10
  var _scoreToData = require("utilities/scoreToData");
11
11
  var SeverityBadge = function SeverityBadge(props, className) {
12
- var _props$props, _props$props2, _props$props3;
12
+ var _props$props, _props$props2;
13
13
  var isArea = (props === null || props === void 0 ? void 0 : (_props$props = props.props) === null || _props$props === void 0 ? void 0 : _props$props.area_score) !== undefined;
14
14
  var area = isArea ? props === null || props === void 0 ? void 0 : props.props : null;
15
15
  var score = area ? area.area_score : props === null || props === void 0 ? void 0 : (_props$props2 = props.props) === null || _props$props2 === void 0 ? void 0 : _props$props2.score;
16
- var unmonitoredPoint = (props === null || props === void 0 ? void 0 : (_props$props3 = props.props) === null || _props$props3 === void 0 ? void 0 : _props$props3.has_device) === false;
17
- if (!isArea && unmonitoredPoint) {
18
- score = -1;
19
- }
20
- var color = isArea ? (0, _scoreToData.objectToColor)(area) : (0, _scoreToData.scoreToColor)(score);
16
+ var color = isArea ? (0, _scoreToData.areaScoreToColor)(area) : (0, _scoreToData.scoreToColor)(score);
21
17
  var label = isArea ? (0, _scoreToData.areaScoreToLabel)(area) : (0, _scoreToData.scoreToLabel)(score);
22
18
  var ScorePresentation = function ScorePresentation() {
23
19
  return /*#__PURE__*/_react.default.createElement("div", {
@@ -55,4 +51,4 @@ var Delimiter = _styledComponents.default.span.withConfig({
55
51
  }, function (props) {
56
52
  return props.color;
57
53
  });
58
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zY29yZVRvRGF0YSIsIlNldmVyaXR5QmFkZ2UiLCJwcm9wcyIsImNsYXNzTmFtZSIsIl9wcm9wcyRwcm9wcyIsIl9wcm9wcyRwcm9wczIiLCJfcHJvcHMkcHJvcHMzIiwiaXNBcmVhIiwiYXJlYV9zY29yZSIsInVuZGVmaW5lZCIsImFyZWEiLCJzY29yZSIsInVubW9uaXRvcmVkUG9pbnQiLCJoYXNfZGV2aWNlIiwiY29sb3IiLCJvYmplY3RUb0NvbG9yIiwic2NvcmVUb0NvbG9yIiwibGFiZWwiLCJhcmVhU2NvcmVUb0xhYmVsIiwic2NvcmVUb0xhYmVsIiwiU2NvcmVQcmVzZW50YXRpb24iLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsImRlbGltaXRlckFuZFNjb3JlIiwiRnJhZ21lbnQiLCJEZWxpbWl0ZXIiLCJ0b0ZpeGVkIiwiU2V2ZXJpdHlCYWRnZUhvbGRlciIsImNvbmNhdCIsImJnIiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwic3BhbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvU2V2ZXJpdHlCYWRnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7XG4gIGFyZWFTY29yZVRvTGFiZWwsXG4gIHNjb3JlVG9Db2xvcixcbiAgc2NvcmVUb0xhYmVsLFxuICBvYmplY3RUb0NvbG9yLFxufSBmcm9tICdzcmMvdXRpbGl0aWVzL3Njb3JlVG9EYXRhJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgcHJvcHM6IGFueTtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNvbnN0IFNldmVyaXR5QmFkZ2U6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMsIGNsYXNzTmFtZSkgPT4ge1xuICBjb25zdCBpc0FyZWEgPSBwcm9wcz8ucHJvcHM/LmFyZWFfc2NvcmUgIT09IHVuZGVmaW5lZDtcbiAgY29uc3QgYXJlYSA9IGlzQXJlYSA/IHByb3BzPy5wcm9wcyA6IG51bGw7XG4gIGxldCBzY29yZSA9IGFyZWEgPyBhcmVhLmFyZWFfc2NvcmUgOiBwcm9wcz8ucHJvcHM/LnNjb3JlO1xuICBjb25zdCB1bm1vbml0b3JlZFBvaW50ID0gcHJvcHM/LnByb3BzPy5oYXNfZGV2aWNlID09PSBmYWxzZTtcblxuICBpZiAoIWlzQXJlYSAmJiB1bm1vbml0b3JlZFBvaW50KSB7XG4gICAgc2NvcmUgPSAtMTtcbiAgfVxuXG4gIGNvbnN0IGNvbG9yID0gaXNBcmVhID8gb2JqZWN0VG9Db2xvcihhcmVhKSA6IHNjb3JlVG9Db2xvcihzY29yZSk7XG4gIGNvbnN0IGxhYmVsID0gaXNBcmVhID8gYXJlYVNjb3JlVG9MYWJlbChhcmVhKSA6IHNjb3JlVG9MYWJlbChzY29yZSk7XG5cbiAgY29uc3QgU2NvcmVQcmVzZW50YXRpb24gPSAoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWV9PlxuICAgICAgICB7bGFiZWx9XG4gICAgICAgIHtkZWxpbWl0ZXJBbmRTY29yZShzY29yZSl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGRlbGltaXRlckFuZFNjb3JlID0gKHNjb3JlOiBudW1iZXIpID0+IHtcbiAgICBpZiAoc2NvcmUgPiAwKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxEZWxpbWl0ZXIgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtzY29yZS50b0ZpeGVkKDApfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxTZXZlcml0eUJhZGdlSG9sZGVyXG4gICAgICBjbGFzc05hbWU9e2BwdC0xIHBiLTEgcm91bmRlZC1waWxsICR7cHJvcHM/LmNsYXNzTmFtZX1gfVxuICAgICAgY29sb3I9e2NvbG9yfVxuICAgICAgYmc9e2NvbG9yfVxuICAgID5cbiAgICAgIHtTY29yZVByZXNlbnRhdGlvbigpfVxuICAgIDwvU2V2ZXJpdHlCYWRnZUhvbGRlcj5cbiAgKTtcbn07XG5cbmNvbnN0IFNldmVyaXR5QmFkZ2VIb2xkZXIgPSBzdHlsZWQuZGl2YFxuICBiYWNrZ3JvdW5kOiAkeyhwcm9wcykgPT4gcHJvcHMuYmd9Mzk7XG4gIGNvbG9yOiAkeyhwcm9wcykgPT4gcHJvcHMuY29sb3J9O1xuICBtaW4td2lkdGg6IDRlbTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgaGVpZ2h0OiAzOHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMTNweDtcbmA7XG5cbmNvbnN0IERlbGltaXRlciA9IHN0eWxlZC5zcGFuYFxuICB3aWR0aDogMTRweDtcbiAgYm9yZGVyOiAxcHg7XG4gIGFuZ2xlOiAtOTAgZGVnO1xuICBiYWNrZ3JvdW5kOiAkeyhwcm9wcykgPT4gcHJvcHMuY29sb3J9Mzk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR7KHByb3BzKSA9PiBwcm9wcy5jb2xvcn0zOTtcbiAgbWFyZ2luOiAwIDEwcHg7XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFlBQUEsR0FBQUQsT0FBQTtBQWFPLElBQU1FLGFBQStCLEdBQUcsU0FBbENBLGFBQStCQSxDQUFJQyxLQUFLLEVBQUVDLFNBQVMsRUFBSztFQUFBLElBQUFDLFlBQUEsRUFBQUMsYUFBQSxFQUFBQyxhQUFBO0VBQ25FLElBQU1DLE1BQU0sR0FBRyxDQUFBTCxLQUFLLGFBQUxBLEtBQUssd0JBQUFF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
54
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zY29yZVRvRGF0YSIsIlNldmVyaXR5QmFkZ2UiLCJwcm9wcyIsImNsYXNzTmFtZSIsIl9wcm9wcyRwcm9wcyIsIl9wcm9wcyRwcm9wczIiLCJpc0FyZWEiLCJhcmVhX3Njb3JlIiwidW5kZWZpbmVkIiwiYXJlYSIsInNjb3JlIiwiY29sb3IiLCJhcmVhU2NvcmVUb0NvbG9yIiwic2NvcmVUb0NvbG9yIiwibGFiZWwiLCJhcmVhU2NvcmVUb0xhYmVsIiwic2NvcmVUb0xhYmVsIiwiU2NvcmVQcmVzZW50YXRpb24iLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsImRlbGltaXRlckFuZFNjb3JlIiwiRnJhZ21lbnQiLCJEZWxpbWl0ZXIiLCJ0b0ZpeGVkIiwiU2V2ZXJpdHlCYWRnZUhvbGRlciIsImNvbmNhdCIsImJnIiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwic3BhbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvU2V2ZXJpdHlCYWRnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7XG4gIGFyZWFTY29yZVRvQ29sb3IsXG4gIGFyZWFTY29yZVRvTGFiZWwsXG4gIHNjb3JlVG9Db2xvcixcbiAgc2NvcmVUb0xhYmVsLFxufSBmcm9tICdzcmMvdXRpbGl0aWVzL3Njb3JlVG9EYXRhJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgcHJvcHM6IGFueTtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNvbnN0IFNldmVyaXR5QmFkZ2U6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMsIGNsYXNzTmFtZSkgPT4ge1xuICBjb25zdCBpc0FyZWEgPSBwcm9wcz8ucHJvcHM/LmFyZWFfc2NvcmUgIT09IHVuZGVmaW5lZDtcbiAgY29uc3QgYXJlYSA9IGlzQXJlYSA/IHByb3BzPy5wcm9wcyA6IG51bGw7XG4gIGNvbnN0IHNjb3JlID0gYXJlYSA/IGFyZWEuYXJlYV9zY29yZSA6IHByb3BzPy5wcm9wcz8uc2NvcmU7XG5cbiAgY29uc3QgY29sb3IgPSBpc0FyZWEgPyBhcmVhU2NvcmVUb0NvbG9yKGFyZWEpIDogc2NvcmVUb0NvbG9yKHNjb3JlKTtcbiAgY29uc3QgbGFiZWwgPSBpc0FyZWEgPyBhcmVhU2NvcmVUb0xhYmVsKGFyZWEpIDogc2NvcmVUb0xhYmVsKHNjb3JlKTtcblxuICBjb25zdCBTY29yZVByZXNlbnRhdGlvbiA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICAgIHtsYWJlbH1cbiAgICAgICAge2RlbGltaXRlckFuZFNjb3JlKHNjb3JlKX1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgZGVsaW1pdGVyQW5kU2NvcmUgPSAoc2NvcmU6IG51bWJlcikgPT4ge1xuICAgIGlmIChzY29yZSA+IDApIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDw+XG4gICAgICAgICAgPERlbGltaXRlciBjb2xvcj17Y29sb3J9IC8+XG4gICAgICAgICAge3Njb3JlLnRvRml4ZWQoMCl9XG4gICAgICAgIDwvPlxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPFNldmVyaXR5QmFkZ2VIb2xkZXJcbiAgICAgIGNsYXNzTmFtZT17YHB0LTEgcGItMSByb3VuZGVkLXBpbGwgJHtwcm9wcz8uY2xhc3NOYW1lfWB9XG4gICAgICBjb2xvcj17Y29sb3J9XG4gICAgICBiZz17Y29sb3J9XG4gICAgPlxuICAgICAge1Njb3JlUHJlc2VudGF0aW9uKCl9XG4gICAgPC9TZXZlcml0eUJhZGdlSG9sZGVyPlxuICApO1xufTtcblxuY29uc3QgU2V2ZXJpdHlCYWRnZUhvbGRlciA9IHN0eWxlZC5kaXZgXG4gIGJhY2tncm91bmQ6ICR7KHByb3BzKSA9PiBwcm9wcy5iZ30zOTtcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy5jb2xvcn07XG4gIG1pbi13aWR0aDogNGVtO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBoZWlnaHQ6IDM4cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMCAxM3B4O1xuYDtcblxuY29uc3QgRGVsaW1pdGVyID0gc3R5bGVkLnNwYW5gXG4gIHdpZHRoOiAxNHB4O1xuICBib3JkZXI6IDFweDtcbiAgYW5nbGU6IC05MCBkZWc7XG4gIGJhY2tncm91bmQ6ICR7KHByb3BzKSA9PiBwcm9wcy5jb2xvcn0zOTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHsocHJvcHMpID0+IHByb3BzLmNvbG9yfTM5O1xuICBtYXJnaW46IDAgMTBweDtcbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsWUFBQSxHQUFBRCxPQUFBO0FBYU8sSUFBTUUsYUFBK0IsR0FBRyxTQUFsQ0EsYUFBK0JBLENBQUlDLEtBQUssRUFBRUMsU0FBUyxFQUFLO0VBQUEsSUFBQUMsWUFBQSxFQUFBQyxhQUFBO0VBQ25FLElBQU1DLE1BQU0sR0FBRyxDQUFBSixLQUFLLGFBQUxBLEtBQUssd0JBQUFFLFlBQUEsR0FBTEYsS0FBSyxDQUFFQSxLQUFLLGNBQUFFLFlBQUEsdUJBQVpBLFlBQUEsQ0FBY0csVUFBVSxNQUFLQyxTQUFTO0VBQ3JELElBQU1DLElBQUksR0FBR0gsTUFBTSxHQUFHSixLQUFLLGFBQUxBLEtBQUssdUJBQUxBLEtBQUssQ0FBRUEsS0FBSyxHQUFHLElBQUk7RUFDekMsSUFBTVEsS0FBSyxHQUFHRCxJQUFJLEdBQUdBLElBQUksQ0FBQ0YsVUFBVSxHQUFHTCxLQUFLLGFBQUxBLEtBQUssd0JBQUFHLGFBQUEsR0FBTEgsS0FBSyxDQUFFQSxLQUFLLGNBQUFHLGFBQUEsdUJBQVpBLGFBQUEsQ0FBY0ssS0FBSztFQUUxRCxJQUFNQyxLQUFLLEdBQUdMLE1BQU0sR0FBRyxJQUFBTSw2QkFBZ0IsRUFBQ0gsSUFBSSxDQUFDLEdBQUcsSUFBQUkseUJBQVksRUFBQ0gsS0FBSyxDQUFDO0VBQ25FLElBQU1JLEtBQUssR0FBR1IsTUFBTSxHQUFHLElBQUFTLDZCQUFnQixFQUFDTixJQUFJLENBQUMsR0FBRyxJQUFBTyx5QkFBWSxFQUFDTixLQUFLLENBQUM7RUFFbkUsSUFBTU8saUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFpQkEsQ0FBQSxFQUFTO0lBQzlCLG9CQUNFcEIsTUFBQSxDQUFBcUIsT0FBQSxDQUFBQyxhQUFBO01BQUtoQixTQUFTLEVBQUVBO0lBQVUsR0FDdkJXLEtBQUssRUFDTE0saUJBQWlCLENBQUNWLEtBQUssQ0FDckIsQ0FBQztFQUVWLENBQUM7RUFFRCxJQUFNVSxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQWlCQSxDQUFJVixLQUFhLEVBQUs7SUFDM0MsSUFBSUEsS0FBSyxHQUFHLENBQUMsRUFBRTtNQUNiLG9CQUNFYixNQUFBLENBQUFxQixPQUFBLENBQUFDLGFBQUEsQ0FBQXRCLE1BQUEsQ0FBQXFCLE9BQUEsQ0FBQUcsUUFBQSxxQkFDRXhCLE1BQUEsQ0FBQXFCLE9BQUEsQ0FBQUMsYUFBQSxDQUFDRyxTQUFTO1FBQUNYLEtBQUssRUFBRUE7TUFBTSxDQUFFLENBQUMsRUFDMUJELEtBQUssQ0FBQ2EsT0FBTyxDQUFDLENBQUMsQ0FDaEIsQ0FBQztJQUVQO0lBQ0EsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUVELG9CQUNFMUIsTUFBQSxDQUFBcUIsT0FBQSxDQUFBQyxhQUFBLENBQUNLLG1CQUFtQjtJQUNsQnJCLFNBQVMsNEJBQUFzQixNQUFBLENBQTRCdkIsS0FBSyxhQUFMQSxLQUFLLHVCQUFMQSxLQUFLLENBQUVDLFNBQVMsQ0FBRztJQUN4RFEsS0FBSyxFQUFFQSxLQUFNO0lBQ2JlLEVBQUUsRUFBRWY7RUFBTSxHQUVUTSxpQkFBaUIsQ0FBQyxDQUNBLENBQUM7QUFFMUIsQ0FBQztBQUFDVSxPQUFBLENBQUExQixhQUFBLEdBQUFBLGFBQUE7QUFFRixJQUFNdUIsbUJBQW1CLEdBQUdJLHlCQUFNLENBQUNDLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxpSkFDdEIsVUFBQzlCLEtBQUs7RUFBQSxPQUFLQSxLQUFLLENBQUN3QixFQUFFO0FBQUEsR0FDeEIsVUFBQ3hCLEtBQUs7RUFBQSxPQUFLQSxLQUFLLENBQUNTLEtBQUs7QUFBQSxFQVFoQztBQUVELElBQU1XLFNBQVMsR0FBR00seUJBQU0sQ0FBQ0ssSUFBSSxDQUFBSCxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHFHQUliLFVBQUM5QixLQUFLO0VBQUEsT0FBS0EsS0FBSyxDQUFDUyxLQUFLO0FBQUEsR0FDaEIsVUFBQ1QsS0FBSztFQUFBLE9BQUtBLEtBQUssQ0FBQ1MsS0FBSztBQUFBLEVBRTNDIn0=
@@ -133,16 +133,15 @@ var WWTPMap = function WWTPMap(props) {
133
133
  // }, [ReduxState.wwtp_dashboard.focusedArea]);
134
134
 
135
135
  var getAreaToCenterBy = function getAreaToCenterBy() {
136
- var _ReduxState$wwtp_dash2;
136
+ var _ReduxState$wwtp_dash2, _ReduxState$wwtp_dash4, _ReduxState$wwtp_dash5;
137
137
  if ((_ReduxState$wwtp_dash2 = ReduxState.wwtp_dashboard.focusedArea) === null || _ReduxState$wwtp_dash2 === void 0 ? void 0 : _ReduxState$wwtp_dash2.shape_data) {
138
138
  var _ReduxState$wwtp_dash3;
139
139
  return (_ReduxState$wwtp_dash3 = ReduxState.wwtp_dashboard.focusedArea) === null || _ReduxState$wwtp_dash3 === void 0 ? void 0 : _ReduxState$wwtp_dash3.shape_data;
140
140
  }
141
- // return ReduxState.wwtp_dashboard.focusedArea?.sub_areas?.map(
142
- // (area) => area.shape_data,
143
- // );
141
+ return (_ReduxState$wwtp_dash4 = ReduxState.wwtp_dashboard.focusedArea) === null || _ReduxState$wwtp_dash4 === void 0 ? void 0 : (_ReduxState$wwtp_dash5 = _ReduxState$wwtp_dash4.sub_areas) === null || _ReduxState$wwtp_dash5 === void 0 ? void 0 : _ReduxState$wwtp_dash5.map(function (area) {
142
+ return area.shape_data;
143
+ });
144
144
  };
145
-
146
145
  var showList = (0, _react.useMemo)(function () {
147
146
  if (areas_data.isFetching || points_data.isFetching) return null;
148
147
  return /*#__PURE__*/_react.default.createElement(_List.List, {
@@ -180,4 +179,4 @@ var Container = _styledComponents.default.div.withConfig({
180
179
  })(["width:100vw;.map-column{z-index:0;}.kd-map-container{height:calc(100vh - 134px);width:100%;@media (max-width:1250px){height:calc(100vh - 125px);}#map{height:100%;width:100%;*,*:focus,*:hover{outline:none;}.leaflet-popup-close-button{font-size:x-large;}}}"]);
181
180
  var _default = WWTPMap;
182
181
  exports.default = _default;
183
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3RSZWR1eCIsInJlcXVpcmUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9NYXAiLCJfYWN0aW9ucyIsIl9hY3Rpb25zMiIsIl9hY3Rpb25zMyIsIl9MaXN0IiwiX3V0aWxzIiwiX0xvYWRlciIsIl9yZWFjdFJvdXRlckRvbSIsIl91c2VRdWVyeVVSTCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX0xpc3RDb250ZXh0IiwiX3JlYWN0Qm9vdHN0cmFwIiwiX0NhcGFjaXR5IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJXV1RQTWFwIiwicHJvcHMiLCJzZWFyY2hRdWVyeSIsInVzZVF1ZXJ5VVJMIiwiaXNNYXBUYWIiLCJfdXNlUGFyYW1zIiwidXNlUGFyYW1zIiwiaWQiLCJhcmVhSUQiLCJzaXRlSUQiLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJhcmVhc19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJwb2ludHNfZGF0YSIsImVkZ2VzX2RhdGEiLCJ3d3RwX2Rhc2hib2FyZCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInBvaW50cyIsInNldFBvaW50cyIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiYXJlYXMiLCJzZXRBcmVhcyIsIl91c2VTdGF0ZTUiLCJwb2ludCIsImFyZWEiLCJfdXNlU3RhdGU2IiwiV1dUUEluZm8iLCJzZXRXV1RQSW5mbyIsImRhdGFFeGlzdHMiLCJuZXdBcmVhcyIsImxlbmd0aCIsIml0ZW1zIiwidXNlRWZmZWN0IiwiaW5pdGlhbGl6ZVdXVFBEYXRhIiwid2F0ZXJBdXRob3JpdHlJZCIsInBlcmlvZCIsImRhc2hib2FyZCIsImZldGNoUG9pbnRzIiwiZmV0Y2hFZGdlcyIsImZldGNoQXJlYXMiLCJvYmplY3QiLCJfUmVkdXhTdGF0ZSR3d3RwX2Rhc2giLCJ0eXBlIiwiaXNfdmlydHVhbCIsInZhbGlkT2JqZWN0IiwidG9TdHJpbmciLCJhcmVhX2lkIiwicGFyc2VJbnQiLCJzaG93RXh0cmEiLCJmb2N1c2VkQXJlYSIsImZldGNoQ2FwYWNpdHkiLCJ0aGVuIiwicmVzcG9uc2UiLCJzZXRGb2N1c2VkSXRlbSIsImRhdGEiLCJzZXRGb2N1c2VkQXJlYSIsInV0aWxpdHlEaXJlY3RzIiwic29ydEFyZWFzIiwic2V0VGltZW91dCIsInVuZGVmaW5lZCIsIm1hcCIsImdldEFyZWFUb0NlbnRlckJ5IiwiX1JlZHV4U3RhdGUkd3d0cF9kYXNoMiIsInNoYXBlX2RhdGEiLCJfUmVkdXhTdGF0ZSR3d3RwX2Rhc2gzIiwic2hvd0xpc3QiLCJ1c2VNZW1vIiwiaXNGZXRjaGluZyIsImNyZWF0ZUVsZW1lbnQiLCJMaXN0IiwiRnJhZ21lbnQiLCJMb2FkZXIiLCJTZWxlY3RlZEl0ZW1Qcm92aWRlciIsIkNvbnRhaW5lciIsIlJvdyIsImNsYXNzTmFtZSIsIkNvbCIsInhzIiwic20iLCJNYXAiLCJlZGdlcyIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsImZvckV2ZW50c1ZpZXciLCJmb3JXV1RQRGFzaGJvYXJkIiwiYXJlYVRvQ2VudGVyQnkiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvV1dUUE1hcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBNYXAgfSBmcm9tICdzcmMvV2lkZ2V0cy9NYXAvTWFwJztcbmltcG9ydCB7IGZldGNoQXJlYXMgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEVkZ2VzIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyBMaXN0IH0gZnJvbSAnLi9MaXN0JztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJy4uLy4uL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCB7IElBcmVhIH0gZnJvbSAnLi4vLi4vc3RvcmUvYXJlYXMvbW9kZWxzL0lBcmVhJztcbmltcG9ydCB7IGluaXRpYWxpemVXV1RQRGF0YSwgc29ydEFyZWFzIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBMb2FkZXIgfSBmcm9tICcuL0xvYWRlcic7XG5pbXBvcnQgeyB1c2VQYXJhbXMgfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICcuLi8uLi9ob29rcy91c2VRdWVyeVVSTCc7XG5pbXBvcnQgeyBzZXRGb2N1c2VkQXJlYSB9IGZyb20gJy4uLy4uL3N0b3JlL1dXVFBEYXNoYm9hcmQvV1dUUERhc2hib2FyZFNsaWNlJztcbmltcG9ydCB7IFNlbGVjdGVkSXRlbVByb3ZpZGVyIH0gZnJvbSAnLi9MaXN0Q29udGV4dCc7XG5pbXBvcnQgeyBSb3csIENvbCB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBmZXRjaENhcGFjaXR5LCBzZXRGb2N1c2VkSXRlbSB9IGZyb20gJy4vQ2FwYWNpdHknO1xuXG5leHBvcnQgaW50ZXJmYWNlIENhcGFjaXR5TWFwQ29udGFpbmVyUHJvcHMge1xuICBjbGFzc05hbWU6IHN0cmluZztcbn1cbmNvbnN0IFdXVFBNYXA6IFJlYWN0LkZDPENhcGFjaXR5TWFwQ29udGFpbmVyUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHNlYXJjaFF1ZXJ5ID0gdXNlUXVlcnlVUkwoKTtcbiAgY29uc3QgaXNNYXBUYWIgPSBzZWFyY2hRdWVyeS5nZXQoJ3ZpZXcnKSA9PT0gJ21hcCc7XG4gIGxldCB7IGlkLCBhcmVhSUQsIHNpdGVJRCB9ID0gdXNlUGFyYW1zKCk7XG4gIGlkID0gaWQgfHwgYXJlYUlEIHx8IHNpdGVJRDtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHsgYXJlYXNfZGF0YSwgZ2xvYmFsX2RhdGEsIHBvaW50c19kYXRhLCBlZGdlc19kYXRhLCB3d3RwX2Rhc2hib2FyZCB9ID1cbiAgICBSZWR1eFN0YXRlO1xuICBjb25zdCBbcG9pbnRzLCBzZXRQb2ludHNdID0gdXNlU3RhdGU8SVBvaW50W10gfCBudWxsPihudWxsKTtcbiAgY29uc3QgW2FyZWFzLCBzZXRBcmVhc10gPSB1c2VTdGF0ZTxJQXJlYVtdIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IFtXV1RQSW5mbywgc2V0V1dUUEluZm9dID0gdXNlU3RhdGU8e1xuICAgIHBvaW50OiBJUG9pbnQgfCBudWxsO1xuICAgIGFyZWE6IElBcmVhIHwgbnVsbDtcbiAgfT4oeyBwb2ludDogbnVsbCwgYXJlYTogbnVsbCB9KTtcbiAgbGV0IGRhdGFFeGlzdHMgPSAoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMubGVuZ3RoICE9PSAwIHx8XG4gICAgICBwb2ludHNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDAgfHxcbiAgICAgIGVkZ2VzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwXG4gICAgKTtcbiAgfTtcblxuICAvLyB1c2VFZmZlY3QoKCkgPT4ge1xuICAvLyAgIGlmIChnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSB7XG4gIC8vICAgICBjb25zdCBwZXJpb2QgPVxuICAvLyAgICAgICBSZWR1eFN0YXRlLmRhc2hib2FyZC5wZXJpb2RbJ3JhbmdlJ10gfHwgUmVkdXhTdGF0ZS5kYXNoYm9hcmQucGVyaW9kO1xuICAvLyAgICAgZGlzcGF0Y2goZmV0Y2hQb2ludHMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCwgcGVyaW9kKSk7XG4gIC8vICAgICBkaXNwYXRjaChmZXRjaEVkZ2VzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpKTtcbiAgLy8gICAgIGRpc3BhdGNoKGZldGNoQXJlYXMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCwgcGVyaW9kLCB0cnVlKSk7XG4gIC8vICAgfVxuICAvLyB9LCBbUmVkdXhTdGF0ZS5kYXNoYm9hcmQucGVyaW9kXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpbml0aWFsaXplV1dUUERhdGEoe1xuICAgICAgYXJlYXNfZGF0YSxcbiAgICAgIHBvaW50c19kYXRhLFxuICAgICAgc2V0UG9pbnRzLFxuICAgICAgc2V0QXJlYXMsXG4gICAgICBzZXRXV1RQSW5mbyxcbiAgICAgIGRhdGFFeGlzdHMsXG4gICAgICBpZCxcbiAgICB9KTtcbiAgfSwgW2FyZWFzX2RhdGFdKTtcblxuICAvLyB1c2VFZmZlY3QoKCkgPT4ge1xuICAvLyAgIHNldFdXVFBJbmZvKGNhbGN1bGF0ZVdXVFBJbmZvKHsgaWQsIHBvaW50c19kYXRhLCBhcmVhc19kYXRhIH0pKTtcbiAgLy8gfSwgW2lkXSk7XG5cbiAgLy8gdXNlRWZmZWN0KCgpID0+IHtcbiAgLy8gICBmb2N1c01hcChXV1RQSW5mby5hcmVhIHx8IFdXVFBJbmZvLnBvaW50LCB3d3RwX2Rhc2hib2FyZC5tYXApO1xuICAvLyB9LCBbV1dUUEluZm9dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSB7XG4gICAgICBjb25zdCBwZXJpb2QgPVxuICAgICAgICBSZWR1eFN0YXRlLmRhc2hib2FyZC5wZXJpb2RbJ3JhbmdlJ10gfHwgUmVkdXhTdGF0ZS5kYXNoYm9hcmQucGVyaW9kO1xuICAgICAgZGlzcGF0Y2goZmV0Y2hQb2ludHMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCwgcGVyaW9kKSk7XG4gICAgICBkaXNwYXRjaChmZXRjaEVkZ2VzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoQXJlYXMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCwgcGVyaW9kLCB0cnVlKSk7XG4gICAgfVxuXG4gICAgLy8gcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgLy8gICBzZXRQb2ludHMobnVsbCk7XG4gICAgLy8gICBzZXRBcmVhcyhudWxsKTtcbiAgICAvLyAgIHNldFdXVFBJbmZvKHsgcG9pbnQ6IG51bGwsIGFyZWE6IG51bGwgfSk7XG4gICAgLy8gfTtcbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIFJlZHV4U3RhdGUuZGFzaGJvYXJkLnBlcmlvZF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3Qgb2JqZWN0ID0gV1dUUEluZm8uYXJlYSB8fCBXV1RQSW5mby5wb2ludDtcblxuICAgIGlmIChpc01hcFRhYiAmJiBvYmplY3QpIHtcbiAgICAgIGNvbnN0IHR5cGUgPSBXV1RQSW5mby5hcmVhXG4gICAgICAgID8gb2JqZWN0LmlzX3ZpcnR1YWwgPT09IHRydWVcbiAgICAgICAgICA/ICd2YXJlYSdcbiAgICAgICAgICA6ICdhcmVhJ1xuICAgICAgICA6ICdzaXRlJztcblxuICAgICAgY29uc3QgdmFsaWRPYmplY3QgPVxuICAgICAgICB0eXBlID09PSAnc2l0ZSdcbiAgICAgICAgICA/IG9iamVjdC5pZC50b1N0cmluZygpID09PSBpZFxuICAgICAgICAgIDogb2JqZWN0LmFyZWFfaWQgPT09IHBhcnNlSW50KGlkKTtcblxuICAgICAgY29uc3Qgc2hvd0V4dHJhID0gb2JqZWN0LmlkID09PSBSZWR1eFN0YXRlLnd3dHBfZGFzaGJvYXJkLmZvY3VzZWRBcmVhPy5pZDtcblxuICAgICAgaWYgKHZhbGlkT2JqZWN0KSB7XG4gICAgICAgIGZldGNoQ2FwYWNpdHkodHlwZSwgaWQsIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpLnRoZW4oXG4gICAgICAgICAgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICBzZXRGb2N1c2VkSXRlbShcbiAgICAgICAgICAgICAgb2JqZWN0LFxuICAgICAgICAgICAgICByZXNwb25zZS5kYXRhLFxuICAgICAgICAgICAgICBwb2ludHMsXG4gICAgICAgICAgICAgIGFyZWFzLFxuICAgICAgICAgICAgICBkaXNwYXRjaCxcbiAgICAgICAgICAgICAgc2V0Rm9jdXNlZEFyZWEsXG4gICAgICAgICAgICAgIHNob3dFeHRyYSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdXRpbGl0eURpcmVjdHMgPSBzb3J0QXJlYXMoYXJlYXMpO1xuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgc2V0Rm9jdXNlZEl0ZW0oXG4gICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgIG51bGwsXG4gICAgICAgICAgcG9pbnRzLFxuICAgICAgICAgIHV0aWxpdHlEaXJlY3RzLFxuICAgICAgICAgIGRpc3BhdGNoLFxuICAgICAgICAgIHNldEZvY3VzZWRBcmVhLFxuICAgICAgICAgIHRydWUsXG4gICAgICAgICk7XG4gICAgICB9LCAwKTtcbiAgICB9XG4gICAgLy8gZm9jdXNNYXAob2JqZWN0LCB3d3RwX2Rhc2hib2FyZC5tYXApO1xuICB9LCBbd3d0cF9kYXNoYm9hcmQubWFwLCBXV1RQSW5mb10pO1xuXG4gIC8vIHVzZUVmZmVjdCgoKSA9PiB7XG4gIC8vICAgaWYgKCFSZWR1eFN0YXRlLnd3dHBfZGFzaGJvYXJkLmZvY3VzZWRBcmVhIHx8ICF3d3RwX2Rhc2hib2FyZC5tYXApIHJldHVybjtcblxuICAvLyAgIC8vZm9jdXNNYXAoUmVkdXhTdGF0ZS53d3RwX2Rhc2hib2FyZC5mb2N1c2VkQXJlYSwgd3d0cF9kYXNoYm9hcmQubWFwKTtcbiAgLy8gfSwgW1JlZHV4U3RhdGUud3d0cF9kYXNoYm9hcmQuZm9jdXNlZEFyZWFdKTtcblxuICBjb25zdCBnZXRBcmVhVG9DZW50ZXJCeSA9ICgpID0+IHtcbiAgICBpZiAoUmVkdXhTdGF0ZS53d3RwX2Rhc2hib2FyZC5mb2N1c2VkQXJlYT8uc2hhcGVfZGF0YSkge1xuICAgICAgcmV0dXJuIFJlZHV4U3RhdGUud3d0cF9kYXNoYm9hcmQuZm9jdXNlZEFyZWE/LnNoYXBlX2RhdGE7XG4gICAgfVxuICAgIC8vIHJldHVybiBSZWR1eFN0YXRlLnd3dHBfZGFzaGJvYXJkLmZvY3VzZWRBcmVhPy5zdWJfYXJlYXM/Lm1hcChcbiAgICAvLyAgIChhcmVhKSA9PiBhcmVhLnNoYXBlX2RhdGEsXG4gICAgLy8gKTtcbiAgfTtcblxuICBjb25zdCBzaG93TGlzdCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChhcmVhc19kYXRhLmlzRmV0Y2hpbmcgfHwgcG9pbnRzX2RhdGEuaXNGZXRjaGluZykgcmV0dXJuIG51bGw7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPExpc3QgZ2xvYmFsX2RhdGE9e2dsb2JhbF9kYXRhfSBXV1RQSW5mbz17V1dUUEluZm99IGRpc3BhdGNoPXtkaXNwYXRjaH0gLz5cbiAgICApO1xuICB9LCBbYXJlYXNfZGF0YSwgcG9pbnRzX2RhdGEsIFdXVFBJbmZvXSk7XG5cbiAgaWYgKCFpc01hcFRhYikgcmV0dXJuIDw+PC8+O1xuICBpZiAoIWRhdGFFeGlzdHMoKSB8fCAhcG9pbnRzIHx8ICFhcmVhcykgcmV0dXJuIDxMb2FkZXIgLz47XG4gIHJldHVybiAoXG4gICAgPFNlbGVjdGVkSXRlbVByb3ZpZGVyPlxuICAgICAgPENvbnRhaW5lciB7Li4ucHJvcHN9PlxuICAgICAgICA8Um93IGNsYXNzTmFtZT1cIm5vLWd1dHRlcnNcIj5cbiAgICAgICAgICA8Q29sIHhzPVwiYXV0b1wiIHNtPXs0fSBjbGFzc05hbWU9XCJkLW5vbmUgZC1zbS1mbGV4XCI+XG4gICAgICAgICAgICB7c2hvd0xpc3R9XG4gICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgPENvbCBjbGFzc05hbWU9XCJtYXAtY29sdW1uXCIgeHM9ezEyfSBzbT17OH0+XG4gICAgICAgICAgICA8TWFwXG4gICAgICAgICAgICAgIHBvaW50cz17cG9pbnRzfVxuICAgICAgICAgICAgICBhcmVhcz17YXJlYXN9XG4gICAgICAgICAgICAgIGdsb2JhbF9kYXRhPXtnbG9iYWxfZGF0YX1cbiAgICAgICAgICAgICAgZWRnZXM9e2VkZ2VzX2RhdGEuaXRlbXN9XG4gICAgICAgICAgICAgIGluY2x1ZGVVbm1vbml0b3JlZFBvaW50cz17dHJ1ZX1cbiAgICAgICAgICAgICAgZm9yRXZlbnRzVmlldz17ZmFsc2V9XG4gICAgICAgICAgICAgIGZvcldXVFBEYXNoYm9hcmQ9e3RydWV9XG4gICAgICAgICAgICAgIGFyZWFUb0NlbnRlckJ5PXtnZXRBcmVhVG9DZW50ZXJCeSgpfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L0NvbD5cbiAgICAgICAgPC9Sb3c+XG4gICAgICA8L0NvbnRhaW5lcj5cbiAgICA8L1NlbGVjdGVkSXRlbVByb3ZpZGVyPlxuICApO1xufTtcblxuY29uc3QgQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDEwMHZ3O1xuXG4gIC5tYXAtY29sdW1uIHtcbiAgICB6LWluZGV4OiAwO1xuICB9XG5cbiAgLmtkLW1hcC1jb250YWluZXIge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDEzNHB4KTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjUwcHgpIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDEyNXB4KTtcbiAgICB9XG5cbiAgICAjbWFwIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAqLFxuICAgICAgKjpmb2N1cyxcbiAgICAgICo6aG92ZXIge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgfVxuXG4gICAgICAubGVhZmxldC1wb3B1cC1jbG9zZS1idXR0b24ge1xuICAgICAgICBmb250LXNpemU6IHgtbGFyZ2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5gO1xuXG5leHBvcnQgZGVmYXVsdCBXV1RQTWFwO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsSUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksUUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssU0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sU0FBQSxHQUFBTixPQUFBO0FBRUEsSUFBQU8sS0FBQSxHQUFBUCxPQUFBO0FBR0EsSUFBQVEsTUFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsT0FBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUsZUFBQSxHQUFBVixPQUFBO0FBQ0EsSUFBQVcsWUFBQSxHQUFBQyxzQkFBQSxDQUFBWixPQUFBO0FBQ0EsSUFBQWEsbUJBQUEsR0FBQWIsT0FBQTtBQUNBLElBQUFjLFlBQUEsR0FBQWQsT0FBQTtBQUNBLElBQUFlLGVBQUEsR0FB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
182
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3RSZWR1eCIsInJlcXVpcmUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9NYXAiLCJfYWN0aW9ucyIsIl9hY3Rpb25zMiIsIl9hY3Rpb25zMyIsIl9MaXN0IiwiX3V0aWxzIiwiX0xvYWRlciIsIl9yZWFjdFJvdXRlckRvbSIsIl91c2VRdWVyeVVSTCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX0xpc3RDb250ZXh0IiwiX3JlYWN0Qm9vdHN0cmFwIiwiX0NhcGFjaXR5IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJXV1RQTWFwIiwicHJvcHMiLCJzZWFyY2hRdWVyeSIsInVzZVF1ZXJ5VVJMIiwiaXNNYXBUYWIiLCJfdXNlUGFyYW1zIiwidXNlUGFyYW1zIiwiaWQiLCJhcmVhSUQiLCJzaXRlSUQiLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJhcmVhc19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJwb2ludHNfZGF0YSIsImVkZ2VzX2RhdGEiLCJ3d3RwX2Rhc2hib2FyZCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInBvaW50cyIsInNldFBvaW50cyIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiYXJlYXMiLCJzZXRBcmVhcyIsIl91c2VTdGF0ZTUiLCJwb2ludCIsImFyZWEiLCJfdXNlU3RhdGU2IiwiV1dUUEluZm8iLCJzZXRXV1RQSW5mbyIsImRhdGFFeGlzdHMiLCJuZXdBcmVhcyIsImxlbmd0aCIsIml0ZW1zIiwidXNlRWZmZWN0IiwiaW5pdGlhbGl6ZVdXVFBEYXRhIiwid2F0ZXJBdXRob3JpdHlJZCIsInBlcmlvZCIsImRhc2hib2FyZCIsImZldGNoUG9pbnRzIiwiZmV0Y2hFZGdlcyIsImZldGNoQXJlYXMiLCJvYmplY3QiLCJfUmVkdXhTdGF0ZSR3d3RwX2Rhc2giLCJ0eXBlIiwiaXNfdmlydHVhbCIsInZhbGlkT2JqZWN0IiwidG9TdHJpbmciLCJhcmVhX2lkIiwicGFyc2VJbnQiLCJzaG93RXh0cmEiLCJmb2N1c2VkQXJlYSIsImZldGNoQ2FwYWNpdHkiLCJ0aGVuIiwicmVzcG9uc2UiLCJzZXRGb2N1c2VkSXRlbSIsImRhdGEiLCJzZXRGb2N1c2VkQXJlYSIsInV0aWxpdHlEaXJlY3RzIiwic29ydEFyZWFzIiwic2V0VGltZW91dCIsInVuZGVmaW5lZCIsIm1hcCIsImdldEFyZWFUb0NlbnRlckJ5IiwiX1JlZHV4U3RhdGUkd3d0cF9kYXNoMiIsIl9SZWR1eFN0YXRlJHd3dHBfZGFzaDQiLCJfUmVkdXhTdGF0ZSR3d3RwX2Rhc2g1Iiwic2hhcGVfZGF0YSIsIl9SZWR1eFN0YXRlJHd3dHBfZGFzaDMiLCJzdWJfYXJlYXMiLCJzaG93TGlzdCIsInVzZU1lbW8iLCJpc0ZldGNoaW5nIiwiY3JlYXRlRWxlbWVudCIsIkxpc3QiLCJGcmFnbWVudCIsIkxvYWRlciIsIlNlbGVjdGVkSXRlbVByb3ZpZGVyIiwiQ29udGFpbmVyIiwiUm93IiwiY2xhc3NOYW1lIiwiQ29sIiwieHMiLCJzbSIsIk1hcCIsImVkZ2VzIiwiaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzIiwiZm9yRXZlbnRzVmlldyIsImZvcldXVFBEYXNoYm9hcmQiLCJhcmVhVG9DZW50ZXJCeSIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC9XV1RQTWFwLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IE1hcCB9IGZyb20gJ3NyYy9XaWRnZXRzL01hcC9NYXAnO1xuaW1wb3J0IHsgZmV0Y2hBcmVhcyB9IGZyb20gJ3NyYy9zdG9yZS9hcmVhcy9hY3Rpb25zJztcbmltcG9ydCB7IGZldGNoRWRnZXMgfSBmcm9tICdzcmMvc3RvcmUvZWRnZXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaFBvaW50cyB9IGZyb20gJ3NyYy9zdG9yZS9wb2ludHMvYWN0aW9ucyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IExpc3QgfSBmcm9tICcuL0xpc3QnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnLi4vLi4vc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IHsgSUFyZWEgfSBmcm9tICcuLi8uLi9zdG9yZS9hcmVhcy9tb2RlbHMvSUFyZWEnO1xuaW1wb3J0IHsgaW5pdGlhbGl6ZVdXVFBEYXRhLCBzb3J0QXJlYXMgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IExvYWRlciB9IGZyb20gJy4vTG9hZGVyJztcbmltcG9ydCB7IHVzZVBhcmFtcyB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJy4uLy4uL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IHNldEZvY3VzZWRBcmVhIH0gZnJvbSAnLi4vLi4vc3RvcmUvV1dUUERhc2hib2FyZC9XV1RQRGFzaGJvYXJkU2xpY2UnO1xuaW1wb3J0IHsgU2VsZWN0ZWRJdGVtUHJvdmlkZXIgfSBmcm9tICcuL0xpc3RDb250ZXh0JztcbmltcG9ydCB7IFJvdywgQ29sIH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCB7IGZldGNoQ2FwYWNpdHksIHNldEZvY3VzZWRJdGVtIH0gZnJvbSAnLi9DYXBhY2l0eSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FwYWNpdHlNYXBDb250YWluZXJQcm9wcyB7XG4gIGNsYXNzTmFtZTogc3RyaW5nO1xufVxuY29uc3QgV1dUUE1hcDogUmVhY3QuRkM8Q2FwYWNpdHlNYXBDb250YWluZXJQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3Qgc2VhcmNoUXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCBpc01hcFRhYiA9IHNlYXJjaFF1ZXJ5LmdldCgndmlldycpID09PSAnbWFwJztcbiAgbGV0IHsgaWQsIGFyZWFJRCwgc2l0ZUlEIH0gPSB1c2VQYXJhbXMoKTtcbiAgaWQgPSBpZCB8fCBhcmVhSUQgfHwgc2l0ZUlEO1xuICBjb25zdCBSZWR1eFN0YXRlID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZSk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgeyBhcmVhc19kYXRhLCBnbG9iYWxfZGF0YSwgcG9pbnRzX2RhdGEsIGVkZ2VzX2RhdGEsIHd3dHBfZGFzaGJvYXJkIH0gPVxuICAgIFJlZHV4U3RhdGU7XG4gIGNvbnN0IFtwb2ludHMsIHNldFBvaW50c10gPSB1c2VTdGF0ZTxJUG9pbnRbXSB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbYXJlYXMsIHNldEFyZWFzXSA9IHVzZVN0YXRlPElBcmVhW10gfCBudWxsPihudWxsKTtcbiAgY29uc3QgW1dXVFBJbmZvLCBzZXRXV1RQSW5mb10gPSB1c2VTdGF0ZTx7XG4gICAgcG9pbnQ6IElQb2ludCB8IG51bGw7XG4gICAgYXJlYTogSUFyZWEgfCBudWxsO1xuICB9Pih7IHBvaW50OiBudWxsLCBhcmVhOiBudWxsIH0pO1xuICBsZXQgZGF0YUV4aXN0cyA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcy5sZW5ndGggIT09IDAgfHxcbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLmxlbmd0aCAhPT0gMCB8fFxuICAgICAgZWRnZXNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDBcbiAgICApO1xuICB9O1xuXG4gIC8vIHVzZUVmZmVjdCgoKSA9PiB7XG4gIC8vICAgaWYgKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpIHtcbiAgLy8gICAgIGNvbnN0IHBlcmlvZCA9XG4gIC8vICAgICAgIFJlZHV4U3RhdGUuZGFzaGJvYXJkLnBlcmlvZFsncmFuZ2UnXSB8fCBSZWR1eFN0YXRlLmRhc2hib2FyZC5wZXJpb2Q7XG4gIC8vICAgICBkaXNwYXRjaChmZXRjaFBvaW50cyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLCBwZXJpb2QpKTtcbiAgLy8gICAgIGRpc3BhdGNoKGZldGNoRWRnZXMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAvLyAgICAgZGlzcGF0Y2goZmV0Y2hBcmVhcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLCBwZXJpb2QsIHRydWUpKTtcbiAgLy8gICB9XG4gIC8vIH0sIFtSZWR1eFN0YXRlLmRhc2hib2FyZC5wZXJpb2RdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGluaXRpYWxpemVXV1RQRGF0YSh7XG4gICAgICBhcmVhc19kYXRhLFxuICAgICAgcG9pbnRzX2RhdGEsXG4gICAgICBzZXRQb2ludHMsXG4gICAgICBzZXRBcmVhcyxcbiAgICAgIHNldFdXVFBJbmZvLFxuICAgICAgZGF0YUV4aXN0cyxcbiAgICAgIGlkLFxuICAgIH0pO1xuICB9LCBbYXJlYXNfZGF0YV0pO1xuXG4gIC8vIHVzZUVmZmVjdCgoKSA9PiB7XG4gIC8vICAgc2V0V1dUUEluZm8oY2FsY3VsYXRlV1dUUEluZm8oeyBpZCwgcG9pbnRzX2RhdGEsIGFyZWFzX2RhdGEgfSkpO1xuICAvLyB9LCBbaWRdKTtcblxuICAvLyB1c2VFZmZlY3QoKCkgPT4ge1xuICAvLyAgIGZvY3VzTWFwKFdXVFBJbmZvLmFyZWEgfHwgV1dUUEluZm8ucG9pbnQsIHd3dHBfZGFzaGJvYXJkLm1hcCk7XG4gIC8vIH0sIFtXV1RQSW5mb10pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpIHtcbiAgICAgIGNvbnN0IHBlcmlvZCA9XG4gICAgICAgIFJlZHV4U3RhdGUuZGFzaGJvYXJkLnBlcmlvZFsncmFuZ2UnXSB8fCBSZWR1eFN0YXRlLmRhc2hib2FyZC5wZXJpb2Q7XG4gICAgICBkaXNwYXRjaChmZXRjaFBvaW50cyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLCBwZXJpb2QpKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoRWRnZXMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAgICAgZGlzcGF0Y2goZmV0Y2hBcmVhcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLCBwZXJpb2QsIHRydWUpKTtcbiAgICB9XG5cbiAgICAvLyByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAvLyAgIHNldFBvaW50cyhudWxsKTtcbiAgICAvLyAgIHNldEFyZWFzKG51bGwpO1xuICAgIC8vICAgc2V0V1dUUEluZm8oeyBwb2ludDogbnVsbCwgYXJlYTogbnVsbCB9KTtcbiAgICAvLyB9O1xuICB9LCBbZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCwgUmVkdXhTdGF0ZS5kYXNoYm9hcmQucGVyaW9kXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBvYmplY3QgPSBXV1RQSW5mby5hcmVhIHx8IFdXVFBJbmZvLnBvaW50O1xuXG4gICAgaWYgKGlzTWFwVGFiICYmIG9iamVjdCkge1xuICAgICAgY29uc3QgdHlwZSA9IFdXVFBJbmZvLmFyZWFcbiAgICAgICAgPyBvYmplY3QuaXNfdmlydHVhbCA9PT0gdHJ1ZVxuICAgICAgICAgID8gJ3ZhcmVhJ1xuICAgICAgICAgIDogJ2FyZWEnXG4gICAgICAgIDogJ3NpdGUnO1xuXG4gICAgICBjb25zdCB2YWxpZE9iamVjdCA9XG4gICAgICAgIHR5cGUgPT09ICdzaXRlJ1xuICAgICAgICAgID8gb2JqZWN0LmlkLnRvU3RyaW5nKCkgPT09IGlkXG4gICAgICAgICAgOiBvYmplY3QuYXJlYV9pZCA9PT0gcGFyc2VJbnQoaWQpO1xuXG4gICAgICBjb25zdCBzaG93RXh0cmEgPSBvYmplY3QuaWQgPT09IFJlZHV4U3RhdGUud3d0cF9kYXNoYm9hcmQuZm9jdXNlZEFyZWE/LmlkO1xuXG4gICAgICBpZiAodmFsaWRPYmplY3QpIHtcbiAgICAgICAgZmV0Y2hDYXBhY2l0eSh0eXBlLCBpZCwgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkudGhlbihcbiAgICAgICAgICAocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIHNldEZvY3VzZWRJdGVtKFxuICAgICAgICAgICAgICBvYmplY3QsXG4gICAgICAgICAgICAgIHJlc3BvbnNlLmRhdGEsXG4gICAgICAgICAgICAgIHBvaW50cyxcbiAgICAgICAgICAgICAgYXJlYXMsXG4gICAgICAgICAgICAgIGRpc3BhdGNoLFxuICAgICAgICAgICAgICBzZXRGb2N1c2VkQXJlYSxcbiAgICAgICAgICAgICAgc2hvd0V4dHJhLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9LFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB1dGlsaXR5RGlyZWN0cyA9IHNvcnRBcmVhcyhhcmVhcyk7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBzZXRGb2N1c2VkSXRlbShcbiAgICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICBwb2ludHMsXG4gICAgICAgICAgdXRpbGl0eURpcmVjdHMsXG4gICAgICAgICAgZGlzcGF0Y2gsXG4gICAgICAgICAgc2V0Rm9jdXNlZEFyZWEsXG4gICAgICAgICAgdHJ1ZSxcbiAgICAgICAgKTtcbiAgICAgIH0sIDApO1xuICAgIH1cbiAgICAvLyBmb2N1c01hcChvYmplY3QsIHd3dHBfZGFzaGJvYXJkLm1hcCk7XG4gIH0sIFt3d3RwX2Rhc2hib2FyZC5tYXAsIFdXVFBJbmZvXSk7XG5cbiAgLy8gdXNlRWZmZWN0KCgpID0+IHtcbiAgLy8gICBpZiAoIVJlZHV4U3RhdGUud3d0cF9kYXNoYm9hcmQuZm9jdXNlZEFyZWEgfHwgIXd3dHBfZGFzaGJvYXJkLm1hcCkgcmV0dXJuO1xuXG4gIC8vICAgLy9mb2N1c01hcChSZWR1eFN0YXRlLnd3dHBfZGFzaGJvYXJkLmZvY3VzZWRBcmVhLCB3d3RwX2Rhc2hib2FyZC5tYXApO1xuICAvLyB9LCBbUmVkdXhTdGF0ZS53d3RwX2Rhc2hib2FyZC5mb2N1c2VkQXJlYV0pO1xuXG4gIGNvbnN0IGdldEFyZWFUb0NlbnRlckJ5ID0gKCkgPT4ge1xuICAgIGlmIChSZWR1eFN0YXRlLnd3dHBfZGFzaGJvYXJkLmZvY3VzZWRBcmVhPy5zaGFwZV9kYXRhKSB7XG4gICAgICByZXR1cm4gUmVkdXhTdGF0ZS53d3RwX2Rhc2hib2FyZC5mb2N1c2VkQXJlYT8uc2hhcGVfZGF0YTtcbiAgICB9XG4gICAgcmV0dXJuIFJlZHV4U3RhdGUud3d0cF9kYXNoYm9hcmQuZm9jdXNlZEFyZWE/LnN1Yl9hcmVhcz8ubWFwKFxuICAgICAgKGFyZWEpID0+IGFyZWEuc2hhcGVfZGF0YSxcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IHNob3dMaXN0ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGFyZWFzX2RhdGEuaXNGZXRjaGluZyB8fCBwb2ludHNfZGF0YS5pc0ZldGNoaW5nKSByZXR1cm4gbnVsbDtcblxuICAgIHJldHVybiAoXG4gICAgICA8TGlzdCBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9IFdXVFBJbmZvPXtXV1RQSW5mb30gZGlzcGF0Y2g9e2Rpc3BhdGNofSAvPlxuICAgICk7XG4gIH0sIFthcmVhc19kYXRhLCBwb2ludHNfZGF0YSwgV1dUUEluZm9dKTtcblxuICBpZiAoIWlzTWFwVGFiKSByZXR1cm4gPD48Lz47XG4gIGlmICghZGF0YUV4aXN0cygpIHx8ICFwb2ludHMgfHwgIWFyZWFzKSByZXR1cm4gPExvYWRlciAvPjtcbiAgcmV0dXJuIChcbiAgICA8U2VsZWN0ZWRJdGVtUHJvdmlkZXI+XG4gICAgICA8Q29udGFpbmVyIHsuLi5wcm9wc30+XG4gICAgICAgIDxSb3cgY2xhc3NOYW1lPVwibm8tZ3V0dGVyc1wiPlxuICAgICAgICAgIDxDb2wgeHM9XCJhdXRvXCIgc209ezR9IGNsYXNzTmFtZT1cImQtbm9uZSBkLXNtLWZsZXhcIj5cbiAgICAgICAgICAgIHtzaG93TGlzdH1cbiAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICA8Q29sIGNsYXNzTmFtZT1cIm1hcC1jb2x1bW5cIiB4cz17MTJ9IHNtPXs4fT5cbiAgICAgICAgICAgIDxNYXBcbiAgICAgICAgICAgICAgcG9pbnRzPXtwb2ludHN9XG4gICAgICAgICAgICAgIGFyZWFzPXthcmVhc31cbiAgICAgICAgICAgICAgZ2xvYmFsX2RhdGE9e2dsb2JhbF9kYXRhfVxuICAgICAgICAgICAgICBlZGdlcz17ZWRnZXNfZGF0YS5pdGVtc31cbiAgICAgICAgICAgICAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPXt0cnVlfVxuICAgICAgICAgICAgICBmb3JFdmVudHNWaWV3PXtmYWxzZX1cbiAgICAgICAgICAgICAgZm9yV1dUUERhc2hib2FyZD17dHJ1ZX1cbiAgICAgICAgICAgICAgYXJlYVRvQ2VudGVyQnk9e2dldEFyZWFUb0NlbnRlckJ5KCl9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvQ29sPlxuICAgICAgICA8L1Jvdz5cbiAgICAgIDwvQ29udGFpbmVyPlxuICAgIDwvU2VsZWN0ZWRJdGVtUHJvdmlkZXI+XG4gICk7XG59O1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogMTAwdnc7XG5cbiAgLm1hcC1jb2x1bW4ge1xuICAgIHotaW5kZXg6IDA7XG4gIH1cblxuICAua2QtbWFwLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTM0cHgpO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyNTBweCkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTI1cHgpO1xuICAgIH1cblxuICAgICNtYXAge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICosXG4gICAgICAqOmZvY3VzLFxuICAgICAgKjpob3ZlciB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5sZWFmbGV0LXBvcHVwLWNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogeC1sYXJnZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbmA7XG5cbmV4cG9ydCBkZWZhdWx0IFdXVFBNYXA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFDLHVCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxJQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxRQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxTQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxTQUFBLEdBQUFOLE9BQUE7QUFFQSxJQUFBTyxLQUFBLEdBQUFQLE9BQUE7QUFHQSxJQUFBUSxNQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxPQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxlQUFBLEdBQUFWLE9BQUE7QUFDQSxJQUFBVyxZQUFBLEdBQUFDLHNCQUFBLENBQUFaLE9BQUE7QUFDQSxJQUFBYSxtQkFBQSxHQUFB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
@@ -1,18 +1,21 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
8
9
  var _classnames = _interopRequireDefault(require("classnames"));
9
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
10
11
  var _reactRedux = require("react-redux");
11
12
  var _EventsMapContainer = require("pages/EventsPage/EventsMapContainer/EventsMapContainer");
13
+ var _actions = require("store/global/actions");
14
+ var _rootActions = require("store/rootActions");
12
15
  var _ErrorBoundary = _interopRequireDefault(require("utilities/ErrorBoundary"));
13
16
  var _Sidebar = _interopRequireDefault(require("../events/Sidebar"));
14
- // import { moreInfo, setCurrentTime } from 'src/store/global/actions';
15
- // import { resetStore } from 'src/store/rootActions';
17
+ 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); }
18
+ 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; }
16
19
  function mapStateToProps(state) {
17
20
  var events_data = state.events_data,
18
21
  global_data = state.global_data;
@@ -22,20 +25,17 @@ function mapStateToProps(state) {
22
25
  };
23
26
  }
24
27
  var Body = function Body(props) {
25
- // const { global_data } = props;
28
+ var global_data = props.global_data;
26
29
  var focusedEvent = props.events_data.focusedEvent;
27
-
28
- // const dispatch = useDispatch();
29
-
30
- // useEffect(() => {
31
- // dispatch(moreInfo(false, {}));
32
- // dispatch(setCurrentTime((Date.now() / 1000) | 0));
33
- // return function cleanup() {
34
- // dispatch(resetStore());
35
- // dispatch(setCurrentTime(0));
36
- // };
37
- // }, [global_data.waterAuthorityId]);
38
-
30
+ var dispatch = (0, _reactRedux.useDispatch)();
31
+ (0, _react.useEffect)(function () {
32
+ dispatch((0, _actions.moreInfo)(false, {}));
33
+ dispatch((0, _actions.setCurrentTime)(Date.now() / 1000 | 0));
34
+ return function cleanup() {
35
+ dispatch((0, _rootActions.resetStore)());
36
+ dispatch((0, _actions.setCurrentTime)(0));
37
+ };
38
+ }, [global_data.waterAuthorityId]);
39
39
  var eventAction = Boolean(focusedEvent);
40
40
  return /*#__PURE__*/_react.default.createElement("div", {
41
41
  className: (0, _classnames.default)('events-view-page', {
@@ -48,4 +48,4 @@ var Body = function Body(props) {
48
48
  var connector = (0, _reactRedux.connect)(mapStateToProps);
49
49
  var _default = connector(Body);
50
50
  exports.default = _default;
51
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0UmVkdXgiLCJfRXZlbnRzTWFwQ29udGFpbmVyIiwiX0Vycm9yQm91bmRhcnkiLCJfU2lkZWJhciIsIm1hcFN0YXRlVG9Qcm9wcyIsInN0YXRlIiwiZXZlbnRzX2RhdGEiLCJnbG9iYWxfZGF0YSIsIkJvZHkiLCJwcm9wcyIsImZvY3VzZWRFdmVudCIsImV2ZW50QWN0aW9uIiwiQm9vbGVhbiIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiY3giLCJFdmVudHNNYXBDb250YWluZXIiLCJzaG93U2Vjb25kTWFwIiwiY29ubmVjdG9yIiwiY29ubmVjdCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL0JvZHkvQm9keS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGN4IGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNvbm5lY3QsIENvbm5lY3RlZFByb3BzIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgSUFwcFN0YXRlIH0gZnJvbSAnc3JjL21vZGVscy9JQXBwU3RhdGUnO1xuaW1wb3J0IHsgRXZlbnRzTWFwQ29udGFpbmVyIH0gZnJvbSAnc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvRXZlbnRzTWFwQ29udGFpbmVyL0V2ZW50c01hcENvbnRhaW5lcic7XG4vLyBpbXBvcnQgeyBtb3JlSW5mbywgc2V0Q3VycmVudFRpbWUgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuLy8gaW1wb3J0IHsgcmVzZXRTdG9yZSB9IGZyb20gJ3NyYy9zdG9yZS9yb290QWN0aW9ucyc7XG5pbXBvcnQgRXJyb3JCb3VuZGFyeSBmcm9tICdzcmMvdXRpbGl0aWVzL0Vycm9yQm91bmRhcnknO1xuaW1wb3J0IFNpZGViYXIgZnJvbSAnLi4vZXZlbnRzL1NpZGViYXInO1xuXG5mdW5jdGlvbiBtYXBTdGF0ZVRvUHJvcHMoc3RhdGU6IElBcHBTdGF0ZSkge1xuICBjb25zdCB7IGV2ZW50c19kYXRhLCBnbG9iYWxfZGF0YSB9ID0gc3RhdGU7XG5cbiAgcmV0dXJuIHtcbiAgICBldmVudHNfZGF0YSxcbiAgICBnbG9iYWxfZGF0YSxcbiAgfTtcbn1cblxudHlwZSBJUHJvcHMgPSBDb25uZWN0ZWRQcm9wczx0eXBlb2YgY29ubmVjdG9yPiAmIHt9O1xuXG5jb25zdCBCb2R5OiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIC8vIGNvbnN0IHsgZ2xvYmFsX2RhdGEgfSA9IHByb3BzO1xuICBjb25zdCB7IGZvY3VzZWRFdmVudCB9ID0gcHJvcHMuZXZlbnRzX2RhdGE7XG5cbiAgLy8gY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gIC8vIHVzZUVmZmVjdCgoKSA9PiB7XG4gIC8vICAgZGlzcGF0Y2gobW9yZUluZm8oZmFsc2UsIHt9KSk7XG4gIC8vICAgZGlzcGF0Y2goc2V0Q3VycmVudFRpbWUoKERhdGUubm93KCkgLyAxMDAwKSB8IDApKTtcbiAgLy8gICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgLy8gICAgIGRpc3BhdGNoKHJlc2V0U3RvcmUoKSk7XG4gIC8vICAgICBkaXNwYXRjaChzZXRDdXJyZW50VGltZSgwKSk7XG4gIC8vICAgfTtcbiAgLy8gfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRdKTtcblxuICBjb25zdCBldmVudEFjdGlvbiA9IEJvb2xlYW4oZm9jdXNlZEV2ZW50KTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjbGFzc05hbWU9e2N4KCdldmVudHMtdmlldy1wYWdlJywge1xuICAgICAgICAnaGlkZS1jaXJjbGUtbnVtYmVycyc6IGV2ZW50QWN0aW9uLFxuICAgICAgfSl9XG4gICAgPlxuICAgICAgPEVycm9yQm91bmRhcnk+XG4gICAgICAgIDxTaWRlYmFyIC8+XG4gICAgICAgIDxFdmVudHNNYXBDb250YWluZXIgc2hvd1NlY29uZE1hcD17ZXZlbnRBY3Rpb259IC8+XG4gICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5jb25zdCBjb25uZWN0b3IgPSBjb25uZWN0KG1hcFN0YXRlVG9Qcm9wcyk7XG5leHBvcnQgZGVmYXVsdCBjb25uZWN0b3IoQm9keSk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxXQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxXQUFBLEdBQUFGLE9BQUE7QUFFQSxJQUFBRyxtQkFBQSxHQUFBSCxPQUFBO0FBR0EsSUFBQUksY0FBQSxHQUFBTCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUssUUFBQSxHQUFBTixzQkFBQSxDQUFBQyxPQUFBO0FBSEE7QUFDQTtBQUlBLFNBQVNNLGVBQWVBLENBQUNDLEtBQWdCLEVBQUU7RUFDekMsSUFBUUMsV0FBVyxHQUFrQkQsS0FBSyxDQUFsQ0MsV0FBVztJQUFFQyxXQUFXLEdBQUtGLEtBQUssQ0FBckJFLFdBQVc7RUFFaEMsT0FBTztJQUNMRCxXQUFXLEVBQVhBLFdBQVc7SUFDWEMsV0FBVyxFQUFYQTtFQUNGLENBQUM7QUFDSDtBQUlBLElBQU1DLElBQXNCLEdBQUcsU0FBekJBLElBQXNCQSxDQUFJQyxLQUFLLEVBQUs7RUFDeEM7RUFDQSxJQUFRQyxZQUFZLEdBQUtELEtBQUssQ0FBQ0gsV0FBVyxDQUFsQ0ksWUFBWTs7RUFFcEI7O0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7RUFFQSxJQUFNQyxXQUFXLEdBQUdDLE9BQU8sQ0FBQ0YsWUFBWSxDQUFDO0VBQ3pDLG9CQUNFWCxNQUFBLENBQUFjLE9BQUEsQ0FBQUMsYUFBQTtJQUNFQyxTQUFTLEVBQUUsSUFBQUMsbUJBQUUsRUFBQyxrQkFBa0IsRUFBRTtNQUNoQyxxQkFBcUIsRUFBRUw7SUFDekIsQ0FBQztFQUFFLGdCQUVIWixNQUFBLENBQUFjLE9BQUEsQ0FBQUMsYUFBQSxDQUFDWixjQUFBLENBQUFXLE9BQWEscUJBQ1pkLE1BQUEsQ0FBQWMsT0FBQSxDQUFBQyxhQUFBLENBQUNYLFFBQUEsQ0FBQVUsT0FBTyxNQUFFLENBQUMsZUFDWGQsTUFBQSxDQUFBYyxPQUFBLENBQUFDLGFBQUEsQ0FBQ2IsbUJBQUEsQ0FBQWdCLGtCQUFrQjtJQUFDQyxhQUFhLEVBQUVQO0VBQVksQ0FBRSxDQUNwQyxDQUNaLENBQUM7QUFFVixDQUFDO0FBRUQsSUFBTVEsU0FBUyxHQUFHLElBQUFDLG1CQUFPLEVBQUNoQixlQUFlLENBQUM7QUFBQyxJQUFBaUIsUUFBQSxHQUM1QkYsU0FBUyxDQUFDWCxJQUFJLENBQUM7QUFBQWMsT0FBQSxDQUFBVCxPQUFBLEdBQUFRLFFBQUEifQ==
51
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfcmVhY3RSZWR1eCIsIl9FdmVudHNNYXBDb250YWluZXIiLCJfYWN0aW9ucyIsIl9yb290QWN0aW9ucyIsIl9FcnJvckJvdW5kYXJ5IiwiX1NpZGViYXIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIm1hcFN0YXRlVG9Qcm9wcyIsInN0YXRlIiwiZXZlbnRzX2RhdGEiLCJnbG9iYWxfZGF0YSIsIkJvZHkiLCJwcm9wcyIsImZvY3VzZWRFdmVudCIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJ1c2VFZmZlY3QiLCJtb3JlSW5mbyIsInNldEN1cnJlbnRUaW1lIiwiRGF0ZSIsIm5vdyIsImNsZWFudXAiLCJyZXNldFN0b3JlIiwid2F0ZXJBdXRob3JpdHlJZCIsImV2ZW50QWN0aW9uIiwiQm9vbGVhbiIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJjeCIsIkV2ZW50c01hcENvbnRhaW5lciIsInNob3dTZWNvbmRNYXAiLCJjb25uZWN0b3IiLCJjb25uZWN0IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvQm9keS9Cb2R5LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY3ggZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMsIHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgSUFwcFN0YXRlIH0gZnJvbSAnc3JjL21vZGVscy9JQXBwU3RhdGUnO1xuaW1wb3J0IHsgRXZlbnRzTWFwQ29udGFpbmVyIH0gZnJvbSAnc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvRXZlbnRzTWFwQ29udGFpbmVyL0V2ZW50c01hcENvbnRhaW5lcic7XG5pbXBvcnQgeyBtb3JlSW5mbywgc2V0Q3VycmVudFRpbWUgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IHsgcmVzZXRTdG9yZSB9IGZyb20gJ3NyYy9zdG9yZS9yb290QWN0aW9ucyc7XG5pbXBvcnQgRXJyb3JCb3VuZGFyeSBmcm9tICdzcmMvdXRpbGl0aWVzL0Vycm9yQm91bmRhcnknO1xuaW1wb3J0IFNpZGViYXIgZnJvbSAnLi4vZXZlbnRzL1NpZGViYXInO1xuXG5mdW5jdGlvbiBtYXBTdGF0ZVRvUHJvcHMoc3RhdGU6IElBcHBTdGF0ZSkge1xuICBjb25zdCB7IGV2ZW50c19kYXRhLCBnbG9iYWxfZGF0YSB9ID0gc3RhdGU7XG5cbiAgcmV0dXJuIHtcbiAgICBldmVudHNfZGF0YSxcbiAgICBnbG9iYWxfZGF0YSxcbiAgfTtcbn1cblxudHlwZSBJUHJvcHMgPSBDb25uZWN0ZWRQcm9wczx0eXBlb2YgY29ubmVjdG9yPiAmIHt9O1xuXG5jb25zdCBCb2R5OiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZ2xvYmFsX2RhdGEgfSA9IHByb3BzO1xuICBjb25zdCB7IGZvY3VzZWRFdmVudCB9ID0gcHJvcHMuZXZlbnRzX2RhdGE7XG5cbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZGlzcGF0Y2gobW9yZUluZm8oZmFsc2UsIHt9KSk7XG4gICAgZGlzcGF0Y2goc2V0Q3VycmVudFRpbWUoKERhdGUubm93KCkgLyAxMDAwKSB8IDApKTtcbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIGRpc3BhdGNoKHJlc2V0U3RvcmUoKSk7XG4gICAgICBkaXNwYXRjaChzZXRDdXJyZW50VGltZSgwKSk7XG4gICAgfTtcbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRdKTtcblxuICBjb25zdCBldmVudEFjdGlvbiA9IEJvb2xlYW4oZm9jdXNlZEV2ZW50KTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjbGFzc05hbWU9e2N4KCdldmVudHMtdmlldy1wYWdlJywge1xuICAgICAgICAnaGlkZS1jaXJjbGUtbnVtYmVycyc6IGV2ZW50QWN0aW9uLFxuICAgICAgfSl9XG4gICAgPlxuICAgICAgPEVycm9yQm91bmRhcnk+XG4gICAgICAgIDxTaWRlYmFyIC8+XG4gICAgICAgIDxFdmVudHNNYXBDb250YWluZXIgc2hvd1NlY29uZE1hcD17ZXZlbnRBY3Rpb259IC8+XG4gICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5jb25zdCBjb25uZWN0b3IgPSBjb25uZWN0KG1hcFN0YXRlVG9Qcm9wcyk7XG5leHBvcnQgZGVmYXVsdCBjb25uZWN0b3IoQm9keSk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBSCxPQUFBO0FBRUEsSUFBQUksbUJBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFFBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFlBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLGNBQUEsR0FBQVIsc0JB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