@kando-env/kando-ui 1.2.288-alpha.18 → 1.2.288-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Widgets/Map/Map.js +8 -11
- package/lib/Widgets/Map/MapUtils.js +3 -1
- package/lib/Widgets/Map/areas/AreaPolygon.js +15 -28
- package/lib/Widgets/Map/areas/AreaPolygons.js +1 -1
- package/lib/Widgets/Map/areas/AreaUtils.js +37 -64
- package/lib/Widgets/Map/edges/Edges.js +1 -7
- package/lib/Widgets/Map/events/EventUtils.js +5 -4
- package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +3 -7
- package/lib/i18n/en.json +9 -10
- package/lib/macros/getVersion.js +2 -2
- package/lib/pages/DashboardMap/ListContext.js +2 -4
- package/lib/pages/DashboardMap/WWTPMap.js +2 -7
- package/lib/pages/DashboardMap/Widget.js +22 -11
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +11 -11
- package/lib/pages/WwtpPage/DashboardCard.js +5 -3
- package/lib/pages/WwtpPage/OrganicCard.js +44 -4
- package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +18 -17
- package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +2 -3
- package/lib/pages/WwtpPage/PotentialSaving/types.js +1 -1
- package/lib/pages/WwtpPage/TrendChart.js +39 -14
- package/lib/pages/WwtpPage/WwtpPage.js +30 -12
- package/lib/scss/custom.scss +1 -1
- package/lib/store/edges/models/IEdge.js +1 -1
- package/lib/styles/theme/theme.js +16 -10
- package/lib/ui-kit/InletsPie/InletsPie.js +1 -7
- package/lib/ui-kit/InletsPie/options.js +1 -1
- package/lib/ui-kit/OrganicEvents/OrganicEvents.js +8 -9
- package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +4 -10
- package/lib/utilities/urls.js +3 -4
- package/package.json +1 -1
- package/lib/pages/WwtpPage/DischargePatternCard.js +0 -58
- package/lib/pages/WwtpPage/InletsCard.js +0 -44
- package/lib/pages/WwtpPage/TrendCard.js +0 -63
- package/lib/ui-kit/EmptyState/EmptyState.js +0 -31
|
@@ -21,21 +21,16 @@ var genericPolygon = function genericPolygon(area, mapZoom) {
|
|
|
21
21
|
});
|
|
22
22
|
if (latlngs.length < 1) return;
|
|
23
23
|
var color = area.color ? area.color : (0, _scoreToData.scoreToColor)(area.area_score);
|
|
24
|
-
|
|
25
|
-
// const title = polygonTitle(area, mapZoom);
|
|
26
|
-
|
|
24
|
+
var title = polygonTitle(area, mapZoom);
|
|
27
25
|
areaPolygon = _leaflet.default.polygon(latlngs, {
|
|
28
26
|
color: color,
|
|
29
27
|
fillOpacity: area.showColorOnlyInBorders ? 0.3 : 0.4,
|
|
30
|
-
weight: area.showColorOnlyInBorders ? 2 : 0
|
|
31
|
-
|
|
28
|
+
weight: area.showColorOnlyInBorders ? 2 : 0
|
|
29
|
+
}).bindTooltip(title, {
|
|
30
|
+
className: 'area-tooltip',
|
|
31
|
+
permanent: mapZoom > 12,
|
|
32
|
+
direction: 'center'
|
|
32
33
|
});
|
|
33
|
-
// .bindTooltip(title, {
|
|
34
|
-
// className: 'area-tooltip',
|
|
35
|
-
// permanent: mapZoom > 12,
|
|
36
|
-
// direction: 'center',
|
|
37
|
-
// });
|
|
38
|
-
|
|
39
34
|
return areaPolygon;
|
|
40
35
|
};
|
|
41
36
|
exports.genericPolygon = genericPolygon;
|
|
@@ -79,47 +74,40 @@ var drillDownBasedOnZoomLevel = function drillDownBasedOnZoomLevel(areaPolygon,
|
|
|
79
74
|
var drillDownCondition = function drillDownCondition() {
|
|
80
75
|
return percentage >= zoomPercentageToDrillDown && isPartialPolygonVisible && area.sub_areas.length !== 0 && areaPolygon._map !== null;
|
|
81
76
|
};
|
|
82
|
-
var
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
fill: false
|
|
88
|
-
});
|
|
89
|
-
};
|
|
90
|
-
var showPolygon = function showPolygon(polygon, fill) {
|
|
91
|
-
polygon['hidden'] = false;
|
|
92
|
-
polygon.setStyle({
|
|
93
|
-
stroke: fill ? false : true,
|
|
77
|
+
var polygonLayer = _leaflet.default.layerGroup();
|
|
78
|
+
if (drillDownCondition()) {
|
|
79
|
+
areaPolygon.setStyle({
|
|
80
|
+
stroke: true,
|
|
81
|
+
color: (0, _scoreToData.scoreToColor)(area.area_score),
|
|
94
82
|
weight: 2,
|
|
95
|
-
|
|
83
|
+
fillOpacity: 0.0,
|
|
84
|
+
opacity: 1
|
|
96
85
|
});
|
|
97
|
-
|
|
98
|
-
var handleSubAreas = function handleSubAreas(show) {
|
|
86
|
+
bindPopupBasedOnZoomLevel(areaPolygon, areaPolygon._map.getZoom(), area, false);
|
|
99
87
|
if (areaPolygon['sub_areas'] !== undefined) {
|
|
100
|
-
areaPolygon['sub_areas'].forEach(function (
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
88
|
+
areaPolygon['sub_areas'].getLayers().forEach(function (subArea) {
|
|
89
|
+
if (subArea.sub_areas && subArea.sub_areas.length === 0) {
|
|
90
|
+
map.addLayer(polygonLayer);
|
|
91
|
+
bindPopupBasedOnZoomLevel(subArea, subArea._map.getZoom(), subArea, true);
|
|
92
|
+
subArea.setStyle({
|
|
93
|
+
fillOpacity: 0.4
|
|
94
|
+
});
|
|
95
|
+
}
|
|
107
96
|
});
|
|
108
97
|
}
|
|
109
|
-
};
|
|
110
|
-
if (drillDownCondition()) {
|
|
111
|
-
console.warn('show border only: ', areaPolygon.area_name);
|
|
112
|
-
showPolygon(areaPolygon, false);
|
|
113
|
-
areaPolygon.unbindTooltip();
|
|
114
|
-
handleSubAreas(true);
|
|
115
98
|
} else {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
99
|
+
map.addLayer(areaPolygon);
|
|
100
|
+
areaPolygon.setStyle({
|
|
101
|
+
fillOpacity: 0.4,
|
|
102
|
+
stroke: false
|
|
103
|
+
});
|
|
104
|
+
bindPopupBasedOnZoomLevel(areaPolygon, areaPolygon._map.getZoom(), area, true);
|
|
105
|
+
areaPolygon['sub_areas'] !== undefined && areaPolygon['sub_areas'].getLayers().forEach(function (subArea) {
|
|
106
|
+
polygonLayer.addLayer(subArea);
|
|
107
|
+
map.removeLayer(subArea);
|
|
108
|
+
});
|
|
122
109
|
}
|
|
110
|
+
areaPolygon.redraw();
|
|
123
111
|
};
|
|
124
112
|
var zoomControlForArea = function zoomControlForArea(areaPolygon, area, map) {
|
|
125
113
|
map.on('zoomend', function () {
|
|
@@ -141,10 +129,10 @@ var customAttributesForAreaPolygon = function customAttributesForAreaPolygon(are
|
|
|
141
129
|
areaPolygon['area_name'] = area.area_name;
|
|
142
130
|
areaPolygon['calculated_surface'] = area.calculated_surface;
|
|
143
131
|
};
|
|
144
|
-
var createPolygon = function createPolygon(area, mapZoom, LayerGroup, map, popupCreator, handleClick
|
|
132
|
+
var createPolygon = function createPolygon(area, mapZoom, LayerGroup, map, popupCreator, handleClick) {
|
|
145
133
|
var polygon;
|
|
146
134
|
if (area.shape_data !== null && area.shape_data !== undefined && area.shape_data.length > 0) {
|
|
147
|
-
polygon = genericPolygon(area, mapZoom
|
|
135
|
+
polygon = genericPolygon(area, mapZoom);
|
|
148
136
|
if (handleClick !== undefined && handleClick !== null) {
|
|
149
137
|
var onClick = function onClick() {
|
|
150
138
|
polygon.on('click', function () {
|
|
@@ -159,22 +147,7 @@ var createPolygon = function createPolygon(area, mapZoom, LayerGroup, map, popup
|
|
|
159
147
|
onClick();
|
|
160
148
|
}
|
|
161
149
|
customAttributesForAreaPolygon(polygon, area);
|
|
162
|
-
|
|
163
|
-
// map.eachLayer(element => {
|
|
164
|
-
// if(!isExists) {
|
|
165
|
-
// isExists = element?.kando_object_id === area.area_id;
|
|
166
|
-
// }
|
|
167
|
-
// });
|
|
168
|
-
//console.log('adding polygon isExists: ', isExists);
|
|
169
|
-
// if(!isExists) {
|
|
170
|
-
// LayerGroup.addLayer(polygon);
|
|
171
|
-
// }
|
|
172
|
-
// if(!map.hasLayer(LayerGroup)) {
|
|
173
|
-
console.warn('adding polygon: ', area.area_name);
|
|
174
|
-
//debugger;
|
|
175
|
-
map.addLayer(polygon);
|
|
176
|
-
// }
|
|
177
|
-
|
|
150
|
+
!LayerGroup.hasLayer(polygon) && LayerGroup.addLayer(polygon).addTo(map);
|
|
178
151
|
popupCreator(polygon, area);
|
|
179
152
|
zoomControlForArea(polygon, area, map);
|
|
180
153
|
return polygon;
|
|
@@ -182,4 +155,4 @@ var createPolygon = function createPolygon(area, mapZoom, LayerGroup, map, popup
|
|
|
182
155
|
return null;
|
|
183
156
|
};
|
|
184
157
|
exports.createPolygon = createPolygon;
|
|
185
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc2NvcmVUb0RhdGEiLCJyZXF1aXJlIiwiX3RoZW1lIiwiX2xlYWZsZXQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3V0aWxzIiwiZ2V0QXJlYU5hbWUiLCJhcmVhIiwibmFtZSIsImFyZWFfbmFtZSIsImV4cG9ydHMiLCJnZW5lcmljUG9seWdvbiIsIm1hcFpvb20iLCJhcmVhUG9seWdvbiIsImxhdGxuZ3MiLCJzaGFwZV9kYXRhIiwibWFwIiwibG9jYXRpb24iLCJsZW5ndGgiLCJjb2xvciIsInNjb3JlVG9Db2xvciIsImFyZWFfc2NvcmUiLCJMIiwicG9seWdvbiIsImZpbGxPcGFjaXR5Iiwic2hvd0NvbG9yT25seUluQm9yZGVycyIsIndlaWdodCIsImZpbGwiLCJjYWxjdWxhdGVQb2x5Z29uQXJlYSIsImNvb3JkaW5hdGVzIiwibnVtUG9pbnRzIiwiaSIsIngxIiwieTEiLCJ4MiIsInkyIiwiTWF0aCIsImFicyIsInBvbHlnb25UaXRsZSIsImNvbmNhdCIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJwcmltYXJ5IiwicHMxIiwiYmluZFRvb2xUaXAiLCJsYXllciIsInRpdGxlIiwicGVybWFuZW50IiwidW5iaW5kVG9vbHRpcCIsImJpbmRUb29sdGlwIiwiY2xhc3NOYW1lIiwidW5kZWZpbmVkIiwiZGlyZWN0aW9uIiwiYmluZFBvcHVwQmFzZWRPblpvb21MZXZlbCIsIkxheWVyR3JvdXAiLCJhcmd1bWVudHMiLCJnZXRMYXllcnMiLCJmb3JFYWNoIiwiZHJpbGxEb3duQmFzZWRPblpvb21MZXZlbCIsInBlcmNlbnRhZ2UiLCJ6b29tUGVyY2VudGFnZVRvRHJpbGxEb3duIiwiaXNQYXJ0aWFsUG9seWdvblZpc2libGUiLCJkcmlsbERvd25Db25kaXRpb24iLCJzdWJfYXJlYXMiLCJfbWFwIiwiaGlkZVBvbHlnb24iLCJzZXRTdHlsZSIsInN0cm9rZSIsInNob3dQb2x5Z29uIiwiaGFuZGxlU3ViQXJlYXMiLCJzaG93Iiwic3ViQXJlYUlkIiwiZWFjaExheWVyIiwiY29uc29sZSIsIndhcm4iLCJnZXRab29tIiwiem9vbUNvbnRyb2xGb3JBcmVhIiwib24iLCJnZXRNYXBCb3VuZHMiLCJnZXRCb3VuZHMiLCJwb2x5Z29uQm91bmRzIiwiaW50ZXJzZWN0cyIsIm1hcEJvdW5kc1BvbHlnb24iLCJnZXRTb3V0aFdlc3QiLCJnZXROb3J0aFdlc3QiLCJnZXROb3J0aEVhc3QiLCJnZXRTb3V0aEVhc3QiLCJtYXBCb3VuZHMiLCJ0b0dlb0pTT04iLCJnZW9tZXRyeSIsImFyZWFTdXJmYWNlIiwiY3VzdG9tQXR0cmlidXRlc0ZvckFyZWFQb2x5Z29uIiwiYXJlYV9pZCIsImNhbGN1bGF0ZWRfc3VyZmFjZSIsImNyZWF0ZVBvbHlnb24iLCJwb3B1cENyZWF0b3IiLCJoYW5kbGVDbGljayIsInBhcmVudEFyZWFJZCIsIm9uQ2xpY2siLCJrYW5kb19vYmplY3RfaWQiLCJzdWJqZWN0Iiwic2VuZEFuYWx5dGljc0V2ZW50IiwiYWRkTGF5ZXIiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvV2lkZ2V0cy9NYXAvYXJlYXMvQXJlYVV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNjb3JlVG9Db2xvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxpdGllcy9zY29yZVRvRGF0YSc7XG5pbXBvcnQgeyB0aGVtZSB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy90aGVtZS90aGVtZSc7XG5pbXBvcnQgTCwgeyBQb2x5Z29uIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBzZW5kQW5hbHl0aWNzRXZlbnQgfSBmcm9tICdzcmMvcGFnZXMvRGFzaGJvYXJkTWFwL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IGdldEFyZWFOYW1lID0gKGFyZWEpID0+IHtcbiAgbGV0IG5hbWUgPSBhcmVhLmFyZWFfbmFtZSB8fCBhcmVhLm5hbWU7XG5cbiAgcmV0dXJuIG5hbWU7XG59O1xuXG5leHBvcnQgY29uc3QgZ2VuZXJpY1BvbHlnb24gPSAoYXJlYSwgbWFwWm9vbSkgPT4ge1xuICBsZXQgYXJlYVBvbHlnb246IFBvbHlnb247XG4gIGxldCBsYXRsbmdzID0gYXJlYS5zaGFwZV9kYXRhLm1hcCgobG9jYXRpb246IGFueSkgPT4ge1xuICAgIHJldHVybiBbbG9jYXRpb25bJ2xhdCddLCBsb2NhdGlvblsnbG5nJ11dO1xuICB9KTtcblxuICBpZiAobGF0bG5ncy5sZW5ndGggPCAxKSByZXR1cm47XG5cbiAgbGV0IGNvbG9yID0gYXJlYS5jb2xvciA/IGFyZWEuY29sb3IgOiBzY29yZVRvQ29sb3IoYXJlYS5hcmVhX3Njb3JlKTtcblxuICAvLyBjb25zdCB0aXRsZSA9IHBvbHlnb25UaXRsZShhcmVhLCBtYXBab29tKTtcblxuICBhcmVhUG9seWdvbiA9IEwucG9seWdvbihsYXRsbmdzLCB7XG4gICAgY29sb3IsXG4gICAgZmlsbE9wYWNpdHk6IGFyZWEuc2hvd0NvbG9yT25seUluQm9yZGVycyA/IDAuMyA6IDAuNCxcbiAgICB3ZWlnaHQ6IGFyZWEuc2hvd0NvbG9yT25seUluQm9yZGVycyA/IDIgOiAwLFxuICAgIGZpbGw6IGZhbHNlLFxuICB9KTtcbiAgLy8gLmJpbmRUb29sdGlwKHRpdGxlLCB7XG4gIC8vICAgY2xhc3NOYW1lOiAnYXJlYS10b29sdGlwJyxcbiAgLy8gICBwZXJtYW5lbnQ6IG1hcFpvb20gPiAxMixcbiAgLy8gICBkaXJlY3Rpb246ICdjZW50ZXInLFxuICAvLyB9KTtcblxuICByZXR1cm4gYXJlYVBvbHlnb247XG59O1xuXG5leHBvcnQgY29uc3QgY2FsY3VsYXRlUG9seWdvbkFyZWEgPSAoY29vcmRpbmF0ZXMpID0+IHtcbiAgbGV0IGFyZWEgPSAwO1xuICBsZXQgbnVtUG9pbnRzID0gY29vcmRpbmF0ZXMubGVuZ3RoO1xuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgbnVtUG9pbnRzOyBpKyspIHtcbiAgICBsZXQgeDEgPSBjb29yZGluYXRlc1tpXVswXTtcbiAgICBsZXQgeTEgPSBjb29yZGluYXRlc1tpXVsxXTtcbiAgICBsZXQgeDIgPSBjb29yZGluYXRlc1soaSArIDEpICUgbnVtUG9pbnRzXVswXTtcbiAgICBsZXQgeTIgPSBjb29yZGluYXRlc1soaSArIDEpICUgbnVtUG9pbnRzXVsxXTtcblxuICAgIGFyZWEgKz0geDEgKiB5MiAtIHgyICogeTE7XG4gIH1cblxuICByZXR1cm4gTWF0aC5hYnMoYXJlYSAvIDIpO1xufTtcblxuY29uc3QgcG9seWdvblRpdGxlID0gKGFyZWEsIG1hcFpvb20pID0+IHtcbiAgcmV0dXJuIGA8ZGl2IGNsYXNzPVwiYXJlYS10b29sdGlwXCIgc3R5bGU9XCJjb2xvcjoke1xuICAgIHRoZW1lLmNvbG9yU2NoZW1lLnByaW1hcnkucHMxXG4gIH07Zm9udC13ZWlnaHQ6NzAwO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Zm9udC1zaXplOiAke1xuICAgIG1hcFpvb20gKiAxLjVcbiAgfXB4Oy13ZWJraXQtdGV4dC1zdHJva2U6IDAuOHB4ICNmZmZmZmY7XCI+ICR7Z2V0QXJlYU5hbWUoYXJlYSl9IFxuICAgICAgICA8L2Rpdj5gO1xufTtcblxuY29uc3QgYmluZFRvb2xUaXAgPSAobGF5ZXIsIHRpdGxlLCBwZXJtYW5lbnQsIG1hcFpvb20pID0+IHtcbiAgbGF5ZXIudW5iaW5kVG9vbHRpcCgpO1xuICBsYXllci5iaW5kVG9vbHRpcCh0aXRsZSwge1xuICAgIGNsYXNzTmFtZTogJ2FyZWEtdG9vbHRpcCcsXG4gICAgcGVybWFuZW50OiBwZXJtYW5lbnQgIT09IHVuZGVmaW5lZCA/IHBlcm1hbmVudCA6IG1hcFpvb20gPiAxMSxcbiAgICBkaXJlY3Rpb246ICdjZW50ZXInLFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBiaW5kUG9wdXBCYXNlZE9uWm9vbUxldmVsID0gKFxuICBMYXllckdyb3VwLFxuICBtYXBab29tLFxuICBhcmVhLFxuICBwZXJtYW5lbnQgPSB1bmRlZmluZWQsXG4pID0+IHtcbiAgY29uc3QgdGl0bGUgPSBwb2x5Z29uVGl0bGUoYXJlYSwgbWFwWm9vbSk7XG5cbiAgaWYgKExheWVyR3JvdXBbJ2thbmRvX29iamVjdCddID09PSB1bmRlZmluZWQpIHtcbiAgICBMYXllckdyb3VwLmdldExheWVycygpLmZvckVhY2goKGxheWVyKSA9PiB7XG4gICAgICBiaW5kVG9vbFRpcChsYXllciwgdGl0bGUsIHBlcm1hbmVudCwgbWFwWm9vbSk7XG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgYmluZFRvb2xUaXAoTGF5ZXJHcm91cCwgdGl0bGUsIHBlcm1hbmVudCwgbWFwWm9vbSk7XG4gIH1cbn07XG5cbmNvbnN0IGRyaWxsRG93bkJhc2VkT25ab29tTGV2ZWwgPSAoXG4gIGFyZWFQb2x5Z29uLFxuICBhcmVhLFxuICBwZXJjZW50YWdlLFxuICB6b29tUGVyY2VudGFnZVRvRHJpbGxEb3duLFxuICBpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSxcbiAgbWFwLFxuKSA9PiB7XG4gIGNvbnN0IGRyaWxsRG93bkNvbmRpdGlvbiA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgcGVyY2VudGFnZSA+PSB6b29tUGVyY2VudGFnZVRvRHJpbGxEb3duICYmXG4gICAgICBpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSAmJlxuICAgICAgYXJlYS5zdWJfYXJlYXMubGVuZ3RoICE9PSAwICYmXG4gICAgICBhcmVhUG9seWdvbi5fbWFwICE9PSBudWxsXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBoaWRlUG9seWdvbiA9IChwb2x5Z29uOiBQb2x5Z29uKSA9PiB7XG4gICAgcG9seWdvbi51bmJpbmRUb29sdGlwKCk7XG4gICAgcG9seWdvblsnaGlkZGVuJ10gPSB0cnVlO1xuICAgIHBvbHlnb24uc2V0U3R5bGUoe1xuICAgICAgc3Ryb2tlOiBmYWxzZSxcbiAgICAgIGZpbGw6IGZhbHNlLFxuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IHNob3dQb2x5Z29uID0gKHBvbHlnb246IFBvbHlnb24sIGZpbGw6IGJvb2xlYW4pID0+IHtcbiAgICBwb2x5Z29uWydoaWRkZW4nXSA9IGZhbHNlO1xuICAgIHBvbHlnb24uc2V0U3R5bGUoe1xuICAgICAgc3Ryb2tlOiBmaWxsID8gZmFsc2UgOiB0cnVlLFxuICAgICAgd2VpZ2h0OiAyLFxuICAgICAgZmlsbDogZmlsbCxcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJBcmVhcyA9IChzaG93OiBib29sZWFuKSA9PiB7XG4gICAgaWYgKGFyZWFQb2x5Z29uWydzdWJfYXJlYXMnXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBhcmVhUG9seWdvblsnc3ViX2FyZWFzJ10uZm9yRWFjaCgoc3ViQXJlYUlkKSA9PiB7XG4gICAgICAgIG1hcC5lYWNoTGF5ZXIoKGxheWVyKSA9PiB7XG4gICAgICAgICAgaWYgKGxheWVyWydrYW5kb19vYmplY3RfaWQnXSA9PT0gc3ViQXJlYUlkKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ3Nob3dpbmcgc3ViIGFyZWE6ICcsIGxheWVyLmFyZWFfbmFtZSk7XG4gICAgICAgICAgICBzaG93ID8gc2hvd1BvbHlnb24obGF5ZXIsIHRydWUpIDogaGlkZVBvbHlnb24obGF5ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgaWYgKGRyaWxsRG93bkNvbmRpdGlvbigpKSB7XG4gICAgY29uc29sZS53YXJuKCdzaG93IGJvcmRlciBvbmx5OiAnLCBhcmVhUG9seWdvbi5hcmVhX25hbWUpO1xuXG4gICAgc2hvd1BvbHlnb24oYXJlYVBvbHlnb24sIGZhbHNlKTtcbiAgICBhcmVhUG9seWdvbi51bmJpbmRUb29sdGlwKCk7XG4gICAgaGFuZGxlU3ViQXJlYXModHJ1ZSk7XG4gIH0gZWxzZSB7XG4gICAgaGFuZGxlU3ViQXJlYXMoZmFsc2UpO1xuXG4gICAgaWYgKCFhcmVhUG9seWdvblsnaGlkZGVuJ10pIHtcbiAgICAgIHNob3dQb2x5Z29uKGFyZWFQb2x5Z29uLCB0cnVlKTtcblxuICAgICAgYmluZFBvcHVwQmFzZWRPblpvb21MZXZlbChcbiAgICAgICAgYXJlYVBvbHlnb24sXG4gICAgICAgIGFyZWFQb2x5Z29uLl9tYXAuZ2V0Wm9vbSgpLFxuICAgICAgICBhcmVhLFxuICAgICAgICB0cnVlLFxuICAgICAgKTtcbiAgICAgIGNvbnNvbGUud2Fybignc2hvdyBmdWxsIGFyZWE6ICcsIGFyZWFQb2x5Z29uLmFyZWFfbmFtZSk7XG4gICAgfVxuICB9XG59O1xuXG5leHBvcnQgY29uc3Qgem9vbUNvbnRyb2xGb3JBcmVhID0gKGFyZWFQb2x5Z29uLCBhcmVhLCBtYXApID0+IHtcbiAgbWFwLm9uKCd6b29tZW5kJywgZnVuY3Rpb24gKCkge1xuICAgIGxldCBnZXRNYXBCb3VuZHMgPSBtYXAuZ2V0Qm91bmRzKCk7XG4gICAgbGV0IHBvbHlnb25Cb3VuZHMgPSBhcmVhUG9seWdvbi5nZXRCb3VuZHMoKTtcbiAgICBsZXQgaXNQYXJ0aWFsUG9seWdvblZpc2libGUgPSBnZXRNYXBCb3VuZHMuaW50ZXJzZWN0cyhwb2x5Z29uQm91bmRzKTtcbiAgICBsZXQgbWFwQm91bmRzUG9seWdvbiA9IEwucG9seWdvbihbXG4gICAgICBnZXRNYXBCb3VuZHMuZ2V0U291dGhXZXN0KCksXG4gICAgICBnZXRNYXBCb3VuZHMuZ2V0Tm9ydGhXZXN0KCksXG4gICAgICBnZXRNYXBCb3VuZHMuZ2V0Tm9ydGhFYXN0KCksXG4gICAgICBnZXRNYXBCb3VuZHMuZ2V0U291dGhFYXN0KCksXG4gICAgXSk7XG5cbiAgICBsZXQgbWFwQm91bmRzID0gY2FsY3VsYXRlUG9seWdvbkFyZWEoXG4gICAgICBtYXBCb3VuZHNQb2x5Z29uLnRvR2VvSlNPTigpLmdlb21ldHJ5LmNvb3JkaW5hdGVzWzBdLFxuICAgICk7XG5cbiAgICBsZXQgYXJlYVN1cmZhY2UgPSBhcmVhUG9seWdvblsnY2FsY3VsYXRlZF9zdXJmYWNlJ107XG4gICAgY29uc3Qgem9vbVBlcmNlbnRhZ2VUb0RyaWxsRG93biA9IDE1LjA7XG4gICAgY29uc3QgcGVyY2VudGFnZSA9IChhcmVhU3VyZmFjZSAvIG1hcEJvdW5kcykgKiAxMDA7XG5cbiAgICBkcmlsbERvd25CYXNlZE9uWm9vbUxldmVsKFxuICAgICAgYXJlYVBvbHlnb24sXG4gICAgICBhcmVhLFxuICAgICAgcGVyY2VudGFnZSxcbiAgICAgIHpvb21QZXJjZW50YWdlVG9EcmlsbERvd24sXG4gICAgICBpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSxcbiAgICAgIG1hcCxcbiAgICApO1xuICB9KTtcbn07XG5cbmNvbnN0IGN1c3RvbUF0dHJpYnV0ZXNGb3JBcmVhUG9seWdvbiA9IChhcmVhUG9seWdvbiwgYXJlYSkgPT4ge1xuICBhcmVhUG9seWdvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBhcmVhLmFyZWFfaWQ7XG4gIGFyZWFQb2x5Z29uWydrYW5kb19vYmplY3QnXSA9ICdBcmVhJztcbiAgYXJlYVBvbHlnb25bJ2FyZWFfbmFtZSddID0gYXJlYS5hcmVhX25hbWU7XG4gIGFyZWFQb2x5Z29uWydjYWxjdWxhdGVkX3N1cmZhY2UnXSA9IGFyZWEuY2FsY3VsYXRlZF9zdXJmYWNlO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVBvbHlnb24gPSAoXG4gIGFyZWEsXG4gIG1hcFpvb20sXG4gIExheWVyR3JvdXAsXG4gIG1hcCxcbiAgcG9wdXBDcmVhdG9yPzogKHBvbHlnb24sIGFyZWEpID0+IHZvaWQsXG4gIGhhbmRsZUNsaWNrPyxcbiAgcGFyZW50QXJlYUlkPyxcbikgPT4ge1xuICBsZXQgcG9seWdvbjogUG9seWdvbjtcbiAgaWYgKFxuICAgIGFyZWEuc2hhcGVfZGF0YSAhPT0gbnVsbCAmJlxuICAgIGFyZWEuc2hhcGVfZGF0YSAhPT0gdW5kZWZpbmVkICYmXG4gICAgYXJlYS5zaGFwZV9kYXRhLmxlbmd0aCA+IDBcbiAgKSB7XG4gICAgcG9seWdvbiA9IGdlbmVyaWNQb2x5Z29uKGFyZWEsIG1hcFpvb20sIHBhcmVudEFyZWFJZCk7XG5cbiAgICBpZiAoaGFuZGxlQ2xpY2sgIT09IHVuZGVmaW5lZCAmJiBoYW5kbGVDbGljayAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgb25DbGljayA9ICgpID0+IHtcbiAgICAgICAgcG9seWdvbi5vbignY2xpY2snLCAoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlQ2xpY2socG9seWdvbi5rYW5kb19vYmplY3RfaWQpO1xuXG4gICAgICAgICAgY29uc3Qgc3ViamVjdCA9ICdNYXAgVmlldyAtIEFyZWEgY2xpY2tlZCc7XG4gICAgICAgICAgc2VuZEFuYWx5dGljc0V2ZW50KHN1YmplY3QsICdtYXAnLCB7XG4gICAgICAgICAgICBhcmVhX2lkOiBhcmVhLmFyZWFfaWQsXG4gICAgICAgICAgICBhcmVhX25hbWU6IGFyZWEuYXJlYV9uYW1lLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH07XG4gICAgICBvbkNsaWNrKCk7XG4gICAgfVxuICAgIGN1c3RvbUF0dHJpYnV0ZXNGb3JBcmVhUG9seWdvbihwb2x5Z29uLCBhcmVhKTtcbiAgICAvLyBsZXQgaXNFeGlzdHMgPSBmYWxzZTtcbiAgICAvLyBtYXAuZWFjaExheWVyKGVsZW1lbnQgPT4ge1xuICAgIC8vICAgaWYoIWlzRXhpc3RzKSB7XG4gICAgLy8gICAgIGlzRXhpc3RzID0gZWxlbWVudD8ua2FuZG9fb2JqZWN0X2lkID09PSBhcmVhLmFyZWFfaWQ7XG4gICAgLy8gICB9XG4gICAgLy8gfSk7XG4gICAgLy9jb25zb2xlLmxvZygnYWRkaW5nIHBvbHlnb24gaXNFeGlzdHM6ICcsIGlzRXhpc3RzKTtcbiAgICAvLyBpZighaXNFeGlzdHMpIHtcbiAgICAvLyAgIExheWVyR3JvdXAuYWRkTGF5ZXIocG9seWdvbik7XG4gICAgLy8gfVxuICAgIC8vIGlmKCFtYXAuaGFzTGF5ZXIoTGF5ZXJHcm91cCkpIHtcbiAgICBjb25zb2xlLndhcm4oJ2FkZGluZyBwb2x5Z29uOiAnLCBhcmVhLmFyZWFfbmFtZSk7XG4gICAgLy9kZWJ1Z2dlcjtcbiAgICBtYXAuYWRkTGF5ZXIocG9seWdvbik7XG4gICAgLy8gfVxuXG4gICAgcG9wdXBDcmVhdG9yKHBvbHlnb24sIGFyZWEpO1xuICAgIHpvb21Db250cm9sRm9yQXJlYShwb2x5Z29uLCBhcmVhLCBtYXApO1xuICAgIHJldHVybiBwb2x5Z29uO1xuICB9XG4gIHJldHVybiBudWxsO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLFlBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFFBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLE1BQUEsR0FBQUosT0FBQTtBQUVPLElBQU1LLFdBQVcsR0FBRyxTQUFkQSxXQUFXQSxDQUFJQyxJQUFJLEVBQUs7RUFDbkMsSUFBSUMsSUFBSSxHQUFHRCxJQUFJLENBQUNFLFNBQVMsSUFBSUYsSUFBSSxDQUFDQyxJQUFJO0VBRXRDLE9BQU9BLElBQUk7QUFDYixDQUFDO0FBQUNFLE9BQUEsQ0FBQUosV0FBQSxHQUFBQSxXQUFBO0FBRUssSUFBTUssY0FBYyxHQUFHLFNBQWpCQSxjQUFjQSxDQUFJSixJQUFJLEVBQUVLLE9BQU8sRUFBSztFQUMvQyxJQUFJQyxXQUFvQjtFQUN4QixJQUFJQyxPQUFPLEdBQUdQLElBQUksQ0FBQ1EsVUFBVSxDQUFDQyxHQUFHLENBQUMsVUFBQ0MsUUFBYSxFQUFLO0lBQ25ELE9BQU8sQ0FBQ0EsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFQSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7RUFDM0MsQ0FBQyxDQUFDO0VBRUYsSUFBSUgsT0FBTyxDQUFDSSxNQUFNLEdBQUcsQ0FBQyxFQUFFO0VBRXhCLElBQUlDLEtBQUssR0FBR1osSUFBSSxDQUFDWSxLQUFLLEdBQUdaLElBQUksQ0FBQ1ksS0FBSyxHQUFHLElBQUFDLHlCQUFZLEVBQUNiLElBQUksQ0FBQ2MsVUFBVSxDQUFDOztFQUVuRTs7RUFFQVIsV0FBVyxHQUFHUyxnQkFBQyxDQUFDQyxPQUFPLENBQUNULE9BQU8sRUFBRTtJQUMvQkssS0FBSyxFQUFMQSxLQUFLO0lBQ0xLLFdBQVcsRUFBRWpCLElBQUksQ0FBQ2tCLHNCQUFz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
|
|
158
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc2NvcmVUb0RhdGEiLCJyZXF1aXJlIiwiX3RoZW1lIiwiX2xlYWZsZXQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3V0aWxzIiwiZ2V0QXJlYU5hbWUiLCJhcmVhIiwibmFtZSIsImFyZWFfbmFtZSIsImV4cG9ydHMiLCJnZW5lcmljUG9seWdvbiIsIm1hcFpvb20iLCJhcmVhUG9seWdvbiIsImxhdGxuZ3MiLCJzaGFwZV9kYXRhIiwibWFwIiwibG9jYXRpb24iLCJsZW5ndGgiLCJjb2xvciIsInNjb3JlVG9Db2xvciIsImFyZWFfc2NvcmUiLCJ0aXRsZSIsInBvbHlnb25UaXRsZSIsIkwiLCJwb2x5Z29uIiwiZmlsbE9wYWNpdHkiLCJzaG93Q29sb3JPbmx5SW5Cb3JkZXJzIiwid2VpZ2h0IiwiYmluZFRvb2x0aXAiLCJjbGFzc05hbWUiLCJwZXJtYW5lbnQiLCJkaXJlY3Rpb24iLCJjYWxjdWxhdGVQb2x5Z29uQXJlYSIsImNvb3JkaW5hdGVzIiwibnVtUG9pbnRzIiwiaSIsIngxIiwieTEiLCJ4MiIsInkyIiwiTWF0aCIsImFicyIsImNvbmNhdCIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJwcmltYXJ5IiwicHMxIiwiYmluZFRvb2xUaXAiLCJsYXllciIsInVuYmluZFRvb2x0aXAiLCJ1bmRlZmluZWQiLCJiaW5kUG9wdXBCYXNlZE9uWm9vbUxldmVsIiwiTGF5ZXJHcm91cCIsImFyZ3VtZW50cyIsImdldExheWVycyIsImZvckVhY2giLCJkcmlsbERvd25CYXNlZE9uWm9vbUxldmVsIiwicGVyY2VudGFnZSIsInpvb21QZXJjZW50YWdlVG9EcmlsbERvd24iLCJpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSIsImRyaWxsRG93bkNvbmRpdGlvbiIsInN1Yl9hcmVhcyIsIl9tYXAiLCJwb2x5Z29uTGF5ZXIiLCJsYXllckdyb3VwIiwic2V0U3R5bGUiLCJzdHJva2UiLCJvcGFjaXR5IiwiZ2V0Wm9vbSIsInN1YkFyZWEiLCJhZGRMYXllciIsInJlbW92ZUxheWVyIiwicmVkcmF3Iiwiem9vbUNvbnRyb2xGb3JBcmVhIiwib24iLCJnZXRNYXBCb3VuZHMiLCJnZXRCb3VuZHMiLCJwb2x5Z29uQm91bmRzIiwiaW50ZXJzZWN0cyIsIm1hcEJvdW5kc1BvbHlnb24iLCJnZXRTb3V0aFdlc3QiLCJnZXROb3J0aFdlc3QiLCJnZXROb3J0aEVhc3QiLCJnZXRTb3V0aEVhc3QiLCJtYXBCb3VuZHMiLCJ0b0dlb0pTT04iLCJnZW9tZXRyeSIsImFyZWFTdXJmYWNlIiwiY3VzdG9tQXR0cmlidXRlc0ZvckFyZWFQb2x5Z29uIiwiYXJlYV9pZCIsImNhbGN1bGF0ZWRfc3VyZmFjZSIsImNyZWF0ZVBvbHlnb24iLCJwb3B1cENyZWF0b3IiLCJoYW5kbGVDbGljayIsIm9uQ2xpY2siLCJrYW5kb19vYmplY3RfaWQiLCJzdWJqZWN0Iiwic2VuZEFuYWx5dGljc0V2ZW50IiwiaGFzTGF5ZXIiLCJhZGRUbyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9hcmVhcy9BcmVhVXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2NvcmVUb0NvbG9yIH0gZnJvbSAnLi4vLi4vLi4vdXRpbGl0aWVzL3Njb3JlVG9EYXRhJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnLi4vLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCBMLCB7IFBvbHlnb24gfSBmcm9tICdsZWFmbGV0JztcbmltcG9ydCB7IHNlbmRBbmFseXRpY3NFdmVudCB9IGZyb20gJ3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgZ2V0QXJlYU5hbWUgPSAoYXJlYSkgPT4ge1xuICBsZXQgbmFtZSA9IGFyZWEuYXJlYV9uYW1lIHx8IGFyZWEubmFtZTtcblxuICByZXR1cm4gbmFtZTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZW5lcmljUG9seWdvbiA9IChhcmVhLCBtYXBab29tKSA9PiB7XG4gIGxldCBhcmVhUG9seWdvbjogUG9seWdvbjtcbiAgbGV0IGxhdGxuZ3MgPSBhcmVhLnNoYXBlX2RhdGEubWFwKChsb2NhdGlvbjogYW55KSA9PiB7XG4gICAgcmV0dXJuIFtsb2NhdGlvblsnbGF0J10sIGxvY2F0aW9uWydsbmcnXV07XG4gIH0pO1xuXG4gIGlmIChsYXRsbmdzLmxlbmd0aCA8IDEpIHJldHVybjtcblxuICBsZXQgY29sb3IgPSBhcmVhLmNvbG9yID8gYXJlYS5jb2xvciA6IHNjb3JlVG9Db2xvcihhcmVhLmFyZWFfc2NvcmUpO1xuXG4gIGNvbnN0IHRpdGxlID0gcG9seWdvblRpdGxlKGFyZWEsIG1hcFpvb20pO1xuXG4gIGFyZWFQb2x5Z29uID0gTC5wb2x5Z29uKGxhdGxuZ3MsIHtcbiAgICBjb2xvcixcbiAgICBmaWxsT3BhY2l0eTogYXJlYS5zaG93Q29sb3JPbmx5SW5Cb3JkZXJzID8gMC4zIDogMC40LFxuICAgIHdlaWdodDogYXJlYS5zaG93Q29sb3JPbmx5SW5Cb3JkZXJzID8gMiA6IDAsXG4gIH0pLmJpbmRUb29sdGlwKHRpdGxlLCB7XG4gICAgY2xhc3NOYW1lOiAnYXJlYS10b29sdGlwJyxcbiAgICBwZXJtYW5lbnQ6IG1hcFpvb20gPiAxMixcbiAgICBkaXJlY3Rpb246ICdjZW50ZXInLFxuICB9KTtcblxuICByZXR1cm4gYXJlYVBvbHlnb247XG59O1xuXG5leHBvcnQgY29uc3QgY2FsY3VsYXRlUG9seWdvbkFyZWEgPSAoY29vcmRpbmF0ZXMpID0+IHtcbiAgbGV0IGFyZWEgPSAwO1xuICBsZXQgbnVtUG9pbnRzID0gY29vcmRpbmF0ZXMubGVuZ3RoO1xuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgbnVtUG9pbnRzOyBpKyspIHtcbiAgICBsZXQgeDEgPSBjb29yZGluYXRlc1tpXVswXTtcbiAgICBsZXQgeTEgPSBjb29yZGluYXRlc1tpXVsxXTtcbiAgICBsZXQgeDIgPSBjb29yZGluYXRlc1soaSArIDEpICUgbnVtUG9pbnRzXVswXTtcbiAgICBsZXQgeTIgPSBjb29yZGluYXRlc1soaSArIDEpICUgbnVtUG9pbnRzXVsxXTtcblxuICAgIGFyZWEgKz0geDEgKiB5MiAtIHgyICogeTE7XG4gIH1cblxuICByZXR1cm4gTWF0aC5hYnMoYXJlYSAvIDIpO1xufTtcblxuY29uc3QgcG9seWdvblRpdGxlID0gKGFyZWEsIG1hcFpvb20pID0+IHtcbiAgcmV0dXJuIGA8ZGl2IGNsYXNzPVwiYXJlYS10b29sdGlwXCIgc3R5bGU9XCJjb2xvcjoke1xuICAgIHRoZW1lLmNvbG9yU2NoZW1lLnByaW1hcnkucHMxXG4gIH07Zm9udC13ZWlnaHQ6NzAwO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Zm9udC1zaXplOiAke1xuICAgIG1hcFpvb20gKiAxLjVcbiAgfXB4Oy13ZWJraXQtdGV4dC1zdHJva2U6IDAuOHB4ICNmZmZmZmY7XCI+ICR7Z2V0QXJlYU5hbWUoYXJlYSl9IFxuICAgICAgICA8L2Rpdj5gO1xufTtcblxuY29uc3QgYmluZFRvb2xUaXAgPSAobGF5ZXIsIHRpdGxlLCBwZXJtYW5lbnQsIG1hcFpvb20pID0+IHtcbiAgbGF5ZXIudW5iaW5kVG9vbHRpcCgpO1xuICBsYXllci5iaW5kVG9vbHRpcCh0aXRsZSwge1xuICAgIGNsYXNzTmFtZTogJ2FyZWEtdG9vbHRpcCcsXG4gICAgcGVybWFuZW50OiBwZXJtYW5lbnQgIT09IHVuZGVmaW5lZCA/IHBlcm1hbmVudCA6IG1hcFpvb20gPiAxMSxcbiAgICBkaXJlY3Rpb246ICdjZW50ZXInLFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBiaW5kUG9wdXBCYXNlZE9uWm9vbUxldmVsID0gKFxuICBMYXllckdyb3VwLFxuICBtYXBab29tLFxuICBhcmVhLFxuICBwZXJtYW5lbnQgPSB1bmRlZmluZWQsXG4pID0+IHtcbiAgY29uc3QgdGl0bGUgPSBwb2x5Z29uVGl0bGUoYXJlYSwgbWFwWm9vbSk7XG5cbiAgaWYgKExheWVyR3JvdXBbJ2thbmRvX29iamVjdCddID09PSB1bmRlZmluZWQpIHtcbiAgICBMYXllckdyb3VwLmdldExheWVycygpLmZvckVhY2goKGxheWVyKSA9PiB7XG4gICAgICBiaW5kVG9vbFRpcChsYXllciwgdGl0bGUsIHBlcm1hbmVudCwgbWFwWm9vbSk7XG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgYmluZFRvb2xUaXAoTGF5ZXJHcm91cCwgdGl0bGUsIHBlcm1hbmVudCwgbWFwWm9vbSk7XG4gIH1cbn07XG5cbmNvbnN0IGRyaWxsRG93bkJhc2VkT25ab29tTGV2ZWwgPSAoXG4gIGFyZWFQb2x5Z29uLFxuICBhcmVhLFxuICBwZXJjZW50YWdlLFxuICB6b29tUGVyY2VudGFnZVRvRHJpbGxEb3duLFxuICBpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSxcbiAgbWFwLFxuKSA9PiB7XG4gIGNvbnN0IGRyaWxsRG93bkNvbmRpdGlvbiA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgcGVyY2VudGFnZSA+PSB6b29tUGVyY2VudGFnZVRvRHJpbGxEb3duICYmXG4gICAgICBpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSAmJlxuICAgICAgYXJlYS5zdWJfYXJlYXMubGVuZ3RoICE9PSAwICYmXG4gICAgICBhcmVhUG9seWdvbi5fbWFwICE9PSBudWxsXG4gICAgKTtcbiAgfTtcblxuICBsZXQgcG9seWdvbkxheWVyID0gTC5sYXllckdyb3VwKCk7XG4gIGlmIChkcmlsbERvd25Db25kaXRpb24oKSkge1xuICAgIGFyZWFQb2x5Z29uLnNldFN0eWxlKHtcbiAgICAgIHN0cm9rZTogdHJ1ZSxcbiAgICAgIGNvbG9yOiBzY29yZVRvQ29sb3IoYXJlYS5hcmVhX3Njb3JlKSxcbiAgICAgIHdlaWdodDogMixcbiAgICAgIGZpbGxPcGFjaXR5OiAwLjAsXG4gICAgICBvcGFjaXR5OiAxLFxuICAgIH0pO1xuICAgIGJpbmRQb3B1cEJhc2VkT25ab29tTGV2ZWwoXG4gICAgICBhcmVhUG9seWdvbixcbiAgICAgIGFyZWFQb2x5Z29uLl9tYXAuZ2V0Wm9vbSgpLFxuICAgICAgYXJlYSxcbiAgICAgIGZhbHNlLFxuICAgICk7XG5cbiAgICBpZiAoYXJlYVBvbHlnb25bJ3N1Yl9hcmVhcyddICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGFyZWFQb2x5Z29uWydzdWJfYXJlYXMnXS5nZXRMYXllcnMoKS5mb3JFYWNoKChzdWJBcmVhKSA9PiB7XG4gICAgICAgIGlmIChzdWJBcmVhLnN1Yl9hcmVhcyAmJiBzdWJBcmVhLnN1Yl9hcmVhcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICBtYXAuYWRkTGF5ZXIocG9seWdvbkxheWVyKTtcbiAgICAgICAgICBiaW5kUG9wdXBCYXNlZE9uWm9vbUxldmVsKFxuICAgICAgICAgICAgc3ViQXJlYSxcbiAgICAgICAgICAgIHN1YkFyZWEuX21hcC5nZXRab29tKCksXG4gICAgICAgICAgICBzdWJBcmVhLFxuICAgICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICApO1xuICAgICAgICAgIHN1YkFyZWEuc2V0U3R5bGUoeyBmaWxsT3BhY2l0eTogMC40IH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgbWFwLmFkZExheWVyKGFyZWFQb2x5Z29uKTtcbiAgICBhcmVhUG9seWdvbi5zZXRTdHlsZSh7IGZpbGxPcGFjaXR5OiAwLjQsIHN0cm9rZTogZmFsc2UgfSk7XG4gICAgYmluZFBvcHVwQmFzZWRPblpvb21MZXZlbChcbiAgICAgIGFyZWFQb2x5Z29uLFxuICAgICAgYXJlYVBvbHlnb24uX21hcC5nZXRab29tKCksXG4gICAgICBhcmVhLFxuICAgICAgdHJ1ZSxcbiAgICApO1xuXG4gICAgYXJlYVBvbHlnb25bJ3N1Yl9hcmVhcyddICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIGFyZWFQb2x5Z29uWydzdWJfYXJlYXMnXS5nZXRMYXllcnMoKS5mb3JFYWNoKChzdWJBcmVhKSA9PiB7XG4gICAgICAgIHBvbHlnb25MYXllci5hZGRMYXllcihzdWJBcmVhKTtcbiAgICAgICAgbWFwLnJlbW92ZUxheWVyKHN1YkFyZWEpO1xuICAgICAgfSk7XG4gIH1cblxuICBhcmVhUG9seWdvbi5yZWRyYXcoKTtcbn07XG5cbmV4cG9ydCBjb25zdCB6b29tQ29udHJvbEZvckFyZWEgPSAoYXJlYVBvbHlnb24sIGFyZWEsIG1hcCkgPT4ge1xuICBtYXAub24oJ3pvb21lbmQnLCBmdW5jdGlvbiAoKSB7XG4gICAgbGV0IGdldE1hcEJvdW5kcyA9IG1hcC5nZXRCb3VuZHMoKTtcbiAgICBsZXQgcG9seWdvbkJvdW5kcyA9IGFyZWFQb2x5Z29uLmdldEJvdW5kcygpO1xuICAgIGxldCBpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSA9IGdldE1hcEJvdW5kcy5pbnRlcnNlY3RzKHBvbHlnb25Cb3VuZHMpO1xuICAgIGxldCBtYXBCb3VuZHNQb2x5Z29uID0gTC5wb2x5Z29uKFtcbiAgICAgIGdldE1hcEJvdW5kcy5nZXRTb3V0aFdlc3QoKSxcbiAgICAgIGdldE1hcEJvdW5kcy5nZXROb3J0aFdlc3QoKSxcbiAgICAgIGdldE1hcEJvdW5kcy5nZXROb3J0aEVhc3QoKSxcbiAgICAgIGdldE1hcEJvdW5kcy5nZXRTb3V0aEVhc3QoKSxcbiAgICBdKTtcblxuICAgIGxldCBtYXBCb3VuZHMgPSBjYWxjdWxhdGVQb2x5Z29uQXJlYShcbiAgICAgIG1hcEJvdW5kc1BvbHlnb24udG9HZW9KU09OKCkuZ2VvbWV0cnkuY29vcmRpbmF0ZXNbMF0sXG4gICAgKTtcblxuICAgIGxldCBhcmVhU3VyZmFjZSA9IGFyZWFQb2x5Z29uWydjYWxjdWxhdGVkX3N1cmZhY2UnXTtcbiAgICBjb25zdCB6b29tUGVyY2VudGFnZVRvRHJpbGxEb3duID0gMTUuMDtcbiAgICBjb25zdCBwZXJjZW50YWdlID0gKGFyZWFTdXJmYWNlIC8gbWFwQm91bmRzKSAqIDEwMDtcblxuICAgIGRyaWxsRG93bkJhc2VkT25ab29tTGV2ZWwoXG4gICAgICBhcmVhUG9seWdvbixcbiAgICAgIGFyZWEsXG4gICAgICBwZXJjZW50YWdlLFxuICAgICAgem9vbVBlcmNlbnRhZ2VUb0RyaWxsRG93bixcbiAgICAgIGlzUGFydGlhbFBvbHlnb25WaXNpYmxlLFxuICAgICAgbWFwLFxuICAgICk7XG4gIH0pO1xufTtcblxuY29uc3QgY3VzdG9tQXR0cmlidXRlc0ZvckFyZWFQb2x5Z29uID0gKGFyZWFQb2x5Z29uLCBhcmVhKSA9PiB7XG4gIGFyZWFQb2x5Z29uWydrYW5kb19vYmplY3RfaWQnXSA9IGFyZWEuYXJlYV9pZDtcbiAgYXJlYVBvbHlnb25bJ2thbmRvX29iamVjdCddID0gJ0FyZWEnO1xuICBhcmVhUG9seWdvblsnYXJlYV9uYW1lJ10gPSBhcmVhLmFyZWFfbmFtZTtcbiAgYXJlYVBvbHlnb25bJ2NhbGN1bGF0ZWRfc3VyZmFjZSddID0gYXJlYS5jYWxjdWxhdGVkX3N1cmZhY2U7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlUG9seWdvbiA9IChcbiAgYXJlYSxcbiAgbWFwWm9vbSxcbiAgTGF5ZXJHcm91cCxcbiAgbWFwLFxuICBwb3B1cENyZWF0b3I/OiAocG9seWdvbiwgYXJlYSkgPT4gdm9pZCxcbiAgaGFuZGxlQ2xpY2s/LFxuKSA9PiB7XG4gIGxldCBwb2x5Z29uOiBQb2x5Z29uO1xuICBpZiAoXG4gICAgYXJlYS5zaGFwZV9kYXRhICE9PSBudWxsICYmXG4gICAgYXJlYS5zaGFwZV9kYXRhICE9PSB1bmRlZmluZWQgJiZcbiAgICBhcmVhLnNoYXBlX2RhdGEubGVuZ3RoID4gMFxuICApIHtcbiAgICBwb2x5Z29uID0gZ2VuZXJpY1BvbHlnb24oYXJlYSwgbWFwWm9vbSk7XG5cbiAgICBpZiAoaGFuZGxlQ2xpY2sgIT09IHVuZGVmaW5lZCAmJiBoYW5kbGVDbGljayAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgb25DbGljayA9ICgpID0+IHtcbiAgICAgICAgcG9seWdvbi5vbignY2xpY2snLCAoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlQ2xpY2socG9seWdvbi5rYW5kb19vYmplY3RfaWQpO1xuXG4gICAgICAgICAgY29uc3Qgc3ViamVjdCA9ICdNYXAgVmlldyAtIEFyZWEgY2xpY2tlZCc7XG4gICAgICAgICAgc2VuZEFuYWx5dGljc0V2ZW50KHN1YmplY3QsICdtYXAnLCB7XG4gICAgICAgICAgICBhcmVhX2lkOiBhcmVhLmFyZWFfaWQsXG4gICAgICAgICAgICBhcmVhX25hbWU6IGFyZWEuYXJlYV9uYW1lLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH07XG4gICAgICBvbkNsaWNrKCk7XG4gICAgfVxuICAgIGN1c3RvbUF0dHJpYnV0ZXNGb3JBcmVhUG9seWdvbihwb2x5Z29uLCBhcmVhKTtcbiAgICAhTGF5ZXJHcm91cC5oYXNMYXllcihwb2x5Z29uKSAmJiBMYXllckdyb3VwLmFkZExheWVyKHBvbHlnb24pLmFkZFRvKG1hcCk7XG4gICAgcG9wdXBDcmVhdG9yKHBvbHlnb24sIGFyZWEpO1xuICAgIHpvb21Db250cm9sRm9yQXJlYShwb2x5Z29uLCBhcmVhLCBtYXApO1xuICAgIHJldHVybiBwb2x5Z29uO1xuICB9XG4gIHJldHVybiBudWxsO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLFlBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFFBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLE1BQUEsR0FBQUosT0FBQTtBQUVPLElBQU1LLFdBQVcsR0FBRyxTQUFkQSxXQUFXQSxDQUFJQyxJQUFJLEVBQUs7RUFDbkMsSUFBSUMsSUFBSSxHQUFHRCxJQUFJLENBQUNFLFNBQVMsSUFBSUYsSUFBSSxDQUFDQyxJQUFJO0VBRXRDLE9BQU9BLElBQUk7QUFDYixDQUFDO0FBQUNFLE9BQUEsQ0FBQUosV0FBQSxHQUFBQSxXQUFBO0FBRUssSUFBTUssY0FBYyxHQUFHLFNBQWpCQSxjQUFjQSxDQUFJSixJQUFJLEVBQUVLLE9BQU8sRUFBSztFQUMvQyxJQUFJQyxXQUFvQjtFQUN4QixJQUFJQyxPQUFPLEdBQUdQLElBQUksQ0FBQ1EsVUFBVSxDQUFDQyxHQUFHLENBQUMsVUFBQ0MsUUFBYSxFQUFLO0lBQ25ELE9B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
|
|
@@ -32,12 +32,6 @@ var Edges = function Edges(_ref) {
|
|
|
32
32
|
}
|
|
33
33
|
};
|
|
34
34
|
}, []);
|
|
35
|
-
var shownEdges = function shownEdges() {
|
|
36
|
-
return edges.filter(function (edge) {
|
|
37
|
-
return edge.descendants_has_device === true || edge.descendants_has_none_collectors === true;
|
|
38
|
-
});
|
|
39
|
-
};
|
|
40
|
-
edges = shownEdges();
|
|
41
35
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, edges.length !== 0 && edges.map(function (edge) {
|
|
42
36
|
return /*#__PURE__*/_react.default.createElement(_Edge.default, {
|
|
43
37
|
edge: edge,
|
|
@@ -58,4 +52,4 @@ var Edges = function Edges(_ref) {
|
|
|
58
52
|
};
|
|
59
53
|
var _default = Edges;
|
|
60
54
|
exports.default = _default;
|
|
61
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfQXJyb3dzIiwiX0VkZ2UiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJFZGdlcyIsIl9yZWYiLCJMIiwiZWRnZXMiLCJtYXAiLCJwb2ludHMiLCJfcmVmJGhpZGVFZGdlcyIsImhpZGVFZGdlcyIsIl9yZWYkaGlkZUFycm93cyIsImhpZGVBcnJvd3MiLCJfcmVmJGFsbG93VW5tb25pdG9yZWQiLCJhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHMiLCJzcGVjaWZpY0V2ZW50IiwidXNlRWZmZWN0IiwiY2xlYW51cCIsInByb3BlcnR5IiwiX2xheWVycyIsImthbmRvX29iamVjdCIsInJlbW92ZUxheWVyIiwiY3JlYXRlRWxlbWVudCIsIkZyYWdtZW50IiwibGVuZ3RoIiwiZWRnZSIsImlkIiwiQXJyb3dzIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL2VkZ2VzL0VkZ2VzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQXJyb3dzIH0gZnJvbSAnLi9hcnJvd3MvQXJyb3dzJztcbmltcG9ydCB7IElFZGdlIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL21vZGVscy9JRWRnZSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IEVkZ2UgZnJvbSAnLi9FZGdlJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcblxuaW50ZXJmYWNlIEVkZ2VzUHJvcHMge1xuICBtYXA6IGFueTtcbiAgTDogYW55O1xuICBlZGdlczogSUVkZ2VbXTtcbiAgcG9pbnRzOiBJUG9pbnRbXTtcbiAgaGlkZUVkZ2VzPzogYm9vbGVhbjtcbiAgaGlkZUFycm93cz86IGJvb2xlYW47XG4gIHNwZWNpZmljRXZlbnQ/OiBJRXZlbnQ7XG4gIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cz86IGJvb2xlYW47XG59XG5cbmNvbnN0IEVkZ2VzOiBSZWFjdC5GQzxFZGdlc1Byb3BzPiA9ICh7XG4gIEwsXG4gIGVkZ2VzLFxuICBtYXAsXG4gIHBvaW50cyxcbiAgaGlkZUVkZ2VzID0gZmFsc2UsXG4gIGhpZGVBcnJvd3MgPSBmYWxzZSxcbiAgYWxsb3dVbm1vbml0b3JlZERlc2NlbmRhbnRzID0gZmFsc2UsXG4gIHNwZWNpZmljRXZlbnQsXG59KSA9PiB7XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIG1hcC5fbGF5ZXJzKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBtYXAuX2xheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0ID09PSAnRWRnZScgfHxcbiAgICAgICAgICBtYXAuX2xheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0ID09PSAnRWRnZUZyb250JyB8fFxuICAgICAgICAgIG1hcC5fbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3QgPT09ICdBcnJvdydcbiAgICAgICAgKSB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKG1hcC5fbGF5ZXJzW3Byb3BlcnR5XSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge2VkZ2VzLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgICBlZGdlcy5tYXAoKGVkZ2U6IElFZGdlKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxFZGdlXG4gICAgICAgICAgICAgIGVkZ2U9e2VkZ2V9XG4gICAgICAgICAgICAgIG1hcD17bWFwfVxuICAgICAgICAgICAgICBMPXtMfVxuICAgICAgICAgICAgICBrZXk9e2VkZ2UuaWR9XG4gICAgICAgICAgICAgIHBvaW50cz17cG9pbnRzfVxuICAgICAgICAgICAgICBoaWRlRWRnZXM9e2hpZGVFZGdlc31cbiAgICAgICAgICAgICAgc3BlY2lmaWNFdmVudD17c3BlY2lmaWNFdmVudH1cbiAgICAgICAgICAgICAgYWxsb3dVbm1vbml0b3JlZERlc2NlbmRhbnRzPXthbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHN9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICk7XG4gICAgICAgIH0pfVxuICAgICAgeyFoaWRlRWRnZXMgJiYgIWhpZGVBcnJvd3MgJiYgZWRnZXMubGVuZ3RoICE9PSAwICYmIChcbiAgICAgICAgPEFycm93cyBtYXA9e21hcH0gTD17TH0gZWRnZXM9e2VkZ2VzfSBwb2ludHM9e3BvaW50c30gLz5cbiAgICAgICl9XG4gICAgPC8+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBFZGdlcztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFHQSxJQUFBRSxLQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFBMEIsU0FBQUkseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFOLHdCQUFBVSxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFMLEdBQUEsWUFBQUksS0FBQSxDQUFBRSxHQUFBLENBQUFOLEdBQUEsU0FBQU8sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFaLEdBQUEsUUFBQVksR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZixHQUFBLEVBQUFZLEdBQUEsU0FBQUksSUFBQSxHQUFBUixxQkFBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFYLEdBQUEsRUFBQVksR0FBQSxjQUFBSSxJQUFBLEtBQUFBLElBQUEsQ0FBQVYsR0FBQSxJQUFBVSxJQUFBLENBQUFDLEdBQUEsS0FBQVIsTUFBQSxDQUFBQyxjQUFBLENBQUFILE1BQUEsRUFBQUssR0FBQSxFQUFBSSxJQUFBLFlBQUFULE1BQUEsQ0FBQUssR0FBQSxJQUFBWixHQUFBLENBQUFZLEdBQUEsU0FBQUwsTUFBQSxDQUFBSixPQUFBLEdBQUFILEdBQUEsTUFBQUksS0FBQSxJQUFBQSxLQUFBLENBQUFhLEdBQUEsQ0FBQWpCLEdBQUEsRUFBQU8sTUFBQSxZQUFBQSxNQUFBO0FBYzFCLElBQU1XLEtBQTJCLEdBQUcsU0FBOUJBLEtBQTJCQSxDQUFBQyxJQUFBLEVBUzNCO0VBQUEsSUFSSkMsQ0FBQyxHQUFBRCxJQUFBLENBQURDLENBQUM7SUFDREMsS0FBSyxHQUFBRixJQUFBLENBQUxFLEtBQUs7SUFDTEMsR0FBRyxHQUFBSCxJQUFBLENBQUhHLEdBQUc7SUFDSEMsTUFBTSxHQUFBSixJQUFBLENBQU5JLE1BQU07SUFBQUMsY0FBQSxHQUFBTCxJQUFBLENBQ05NLFNBQVM7SUFBVEEsU0FBUyxHQUFBRCxjQUFBLGNBQUcsS0FBSyxHQUFBQSxjQUFBO0lBQUFFLGVBQUEsR0FBQVAsSUFBQSxDQUNqQlEsVUFBVTtJQUFWQSxVQUFVLEdBQUFELGVBQUEsY0FBRyxLQUFLLEdBQUFBLGVBQUE7SUFBQUUscUJBQUEsR0FBQVQsSUFBQSxDQUNsQlUsMkJBQTJCO0lBQTNCQSwyQkFBMkIsR0FBQUQscUJBQUEsY0FBRyxLQUFLLEdBQUFBLHFCQUFBO0lBQ25DRSxhQUFhLEdBQUFYLElBQUEsQ0FBYlcsYUFBYTtFQUViLElBQUFDLGdCQUFTLEVBQUMsWUFBTTtJQUNkLE9BQU8sU0FBU0MsT0FBT0EsQ0FBQSxFQUFHO01BQ3hCLEtBQUssSUFBTUMsUUFBUSxJQUFJWCxHQUFHLENBQUNZLE9BQU8sRUFBRTtRQUNsQyxJQUNFWixHQUFHLENBQUNZLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUNFLFlBQVksS0FBSyxNQUFNLElBQzdDYixHQUFHLENBQUNZLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUNFLFlBQVksS0FBSyxXQUFXLElBQ2xEYixHQUFHLENBQUNZLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUNFLFlBQVksS0FBSyxPQUFPLEVBQzlDO1VBQ0FiLEdBQUcsQ0FBQ2MsV0FBVyxDQUFDZCxHQUFHLENBQUNZLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUM7UUFDeEM7TUFDRjtJQUNGLENBQUM7RUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDO0VBRU4sb0JBQ0U1QyxNQUFBLENBQUFjLE9BQUEsQ0FBQWtDLGFBQUEsQ0FBQWhELE1BQUEsQ0FBQWMsT0FBQSxDQUFBbUMsUUFBQSxRQUNHakIsS0FBSyxDQUFDa0IsTUFBTSxLQUFLLENBQUMsSUFDakJsQixLQUFLLENBQUNDLEdBQUcsQ0FBQyxVQUFDa0IsSUFBVyxFQUFLO0lBQ3pCLG9CQUNFbkQsTUFBQSxDQUFBYyxPQUFBLENBQUFrQyxhQUFBLENBQUM1QyxLQUFBLENBQUFVLE9BQUk7TUFDSHFDLElBQUksRUFBRUEsSUFBSztNQUNYbEIsR0FBRyxFQUFFQSxHQUFJO01BQ1RGLENBQUMsRUFBRUEsQ0FBRTtNQUNMUixHQUFHLEVBQUU0QixJQUFJLENBQUNDLEVBQUc7TUFDYmxCLE1BQU0sRUFBRUEsTUFBTztNQUNmRSxTQUFTLEVBQUVBLFNBQVU7TUFDckJLLGFBQWEsRUFBRUEsYUFBYztNQUM3QkQsMkJBQTJCLEVBQUVBO0lBQTRCLENBQzFELENBQUM7RUFFTixDQUFDLENBQUMsRUFDSCxDQUFDSixTQUFTLElBQUksQ0FBQ0UsVUFBVSxJQUFJTixLQUFLLENBQUNrQixNQUFNLEtBQUssQ0FBQyxpQkFDOUNsRCxNQUFBLENBQUFjLE9BQUEsQ0FBQWtDLGFBQUEsQ0FBQzdDLE9BQUEsQ0FBQWtELE1BQU07SUFBQ3BCLEdBQUcsRUFBRUEsR0FBSTtJQUFDRixDQUFDLEVBQUVBLENBQUU7SUFBQ0MsS0FBSyxFQUFFQSxLQUFNO0lBQUNFLE1BQU0sRUFBRUE7RUFBTyxDQUFFLENBRXpELENBQUM7QUFFUCxDQUFDO0FBQUMsSUFBQW9CLFFBQUEsR0FFYXpCLEtBQUs7QUFBQTBCLE9BQUEsQ0FBQXpDLE9BQUEsR0FBQXdDLFFBQUEifQ==
|
|
@@ -228,9 +228,10 @@ var isCollectorUnmonitored = function isCollectorUnmonitored(point) {
|
|
|
228
228
|
};
|
|
229
229
|
exports.isCollectorUnmonitored = isCollectorUnmonitored;
|
|
230
230
|
var createPointLogic = function createPointLogic(point, map, layerGroup) {
|
|
231
|
-
if (isCollectorUnmonitored(point)) {
|
|
232
|
-
|
|
233
|
-
}
|
|
231
|
+
// if (isCollectorUnmonitored(point)) {
|
|
232
|
+
// return;
|
|
233
|
+
// }
|
|
234
|
+
|
|
234
235
|
(0, _PointUtils.createBubblePoint)([point.latitude, point.longitude], point, map, null, layerGroup);
|
|
235
236
|
};
|
|
236
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX3doaXRlUG9pbnQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2FjdGlvbnMiLCJfUG9pbnRVdGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiZHJhd01hbmhvbGVJY29uIiwic291cmNlUG9pbnQiLCJtYXAiLCJwb2ludEljb24iLCJpY29uIiwiaWNvblVybCIsIndoaXRlUG9pbnQiLCJpY29uU2l6ZSIsImljb25BbmNob3IiLCJtYW5ob2xlSWNvbiIsIm1hcmtlciIsImxhdGl0dWRlIiwibG9uZ2l0dWRlIiwicmlzZU9uSG92ZXIiLCJhZGRUbyIsImJpbmRUb29sdGlwIiwiY29uY2F0IiwiZ3JvdXAiLCJuYW1lIiwic2VjdG9yX25hbWUiLCJpZCIsImV4cG9ydHMiLCJnZXRGaXJzdEVkZ2VPZkV2ZW50UGF0aCIsImVkZ2VzIiwiZXZlbnQiLCJwYXRoIiwidW5kZWZpbmVkIiwiZmluZCIsImVkZ2UiLCJlZGdlX2lkIiwiZmluZEVkZ2VzIiwibmV4dFVwc3RyZWFtTGV2ZWxJZHMiLCJmaWx0ZXIiLCJpbmNsdWRlcyIsInRhcmdldF9wb2ludF9pZCIsInJlY3Vyc2l2ZVVwc3RyZWFtU2VhcmNoIiwibmV4dExldmVsIiwibWFwQWxsRWRnZXNOZXN0aW5nIiwiYWxsVXBzdHJlYW1FZGdlcyIsInNvdXJjZV9wb2ludF9pZCIsImxlbmd0aCIsInB1c2giLCJtYXBwZWQiLCJmb3JFYWNoIiwiZ2V0VXBzdHJlYW1FZGdlcyIsImZpcnN0RWRnZSIsImZpcnN0VXBzdHJlYW1MZXZlbCIsImZpbmRVcHN0cmVhbUVkZ2VzVG9EcmF3IiwidXBzdHJlYW1FZGdlcyIsImVkZ2VzVG9EcmF3IiwicG9pbnRzIiwidXBzdHJlYW1FZGdlIiwicG9pbnQiLCJjb25uZWN0aW9uRWRnZXMiLCJmaW5kRG93bnN0cmVhbUVkZ2VzVG9EcmF3IiwiZG93bnN0cmVhbU5ldHdvcmsiLCJyZWN1cnNpdmVEb3duU3RyZWFtU2VhcmNoIiwiZG93blN0cmVhbUVkZ2UiLCJsYXN0RG93blN0cmVhbUVkZ2UiLCJuZXh0TGV2ZWxEb3duU3RyZWFtIiwiZmluZEVkZ2VzRnJvbUV2ZW50UGF0aFRvRHJhdyIsInBhcnQiLCJtYXRjaGVkUGFydCIsImRyYXdOZXR3b3JrIiwiZGlzcGF0Y2giLCJsYXllckdyb3VwIiwibGF0bG5ncyIsInNoYXBlX2RhdGEiLCJkYXRhIiwibGF0IiwibG5nIiwicG9seWxpbmVCYWNrIiwicG9seWxpbmUiLCJjb2xvciIsIndlaWdodCIsIm9wYWNpdHkiLCJ0YWlsRGFzaCIsIlN5bWJvbCIsInBvbHlsaW5lRGVjb3JhdG9yIiwiX2xhdGxuZ3MiLCJwYXR0ZXJucyIsIm9mZnNldCIsInJlcGVhdCIsInN5bWJvbCIsImFycm93SGVhZCIsInBpeGVsU2l6ZSIsInBvbHlnb24iLCJwYXRoT3B0aW9ucyIsInN0cm9rZSIsImFkZExheWVyIiwiaG92ZXJlZCIsImZvY3VzZWQiLCJicmluZ1RvRnJvbnQiLCJwb2x5bGluZUZyb250Iiwic2V0SG92ZXJlZEVkZ2VQYXRocyIsInBvaW50RmluZGVyIiwidGFyZ2V0UG9pbnQiLCJiaW5kUG9wdXAiLCJkaXN0YW5jZSIsImNyZWF0ZVBvaW50TG9naWMiLCJkZXNpcmVkUG9pbnRJZCIsImRlc2lyZWRQb2ludCIsImZpbmRBbmREcmF3RXZlbnROZXR3b3JrRWRnZXMiLCJwb2ludElzT2JzZXJ2YXRpb24iLCJvYnNlcnZhdGlvbnMiLCJvYnMiLCJwb2ludF9pZCIsInBvaW50SXNXV1RQIiwidHlwZSIsInBvaW50SXNDb2xsZWN0b3IiLCJpc0NvbGxlY3RvclVubW9uaXRvcmVkIiwiaGFzX2RldmljZSIsImNyZWF0ZUJ1YmJsZVBvaW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL2V2ZW50cy9FdmVudFV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEwgZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgJ3NyYy91dGlsaXRpZXMvcG9seWxpbmVkZWNvcmF0b3InO1xuaW1wb3J0IHdoaXRlUG9pbnQgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3doaXRlLXBvaW50LnBuZyc7XG5pbXBvcnQgeyBJRWRnZSB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2VkZ2VzL21vZGVscy9JRWRnZSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzZXRIb3ZlcmVkRWRnZVBhdGhzIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgY3JlYXRlQnViYmxlUG9pbnQgfSBmcm9tICcuLi9wb2ludHMvUG9pbnRVdGlscyc7XG5cbmV4cG9ydCBjb25zdCBkcmF3TWFuaG9sZUljb24gPSAoc291cmNlUG9pbnQ6IElQb2ludCwgbWFwOiBMLk1hcCkgPT4ge1xuICBsZXQgcG9pbnRJY29uID0gTC5pY29uKHtcbiAgICBpY29uVXJsOiB3aGl0ZVBvaW50LFxuICAgIGljb25TaXplOiBbOSwgOV0sXG4gICAgaWNvbkFuY2hvcjogWzQuNSwgNC41XSxcbiAgfSk7XG5cbiAgbGV0IG1hbmhvbGVJY29uOiBhbnkgPSBMLm1hcmtlcihcbiAgICBbc291cmNlUG9pbnQubGF0aXR1ZGUsIHNvdXJjZVBvaW50LmxvbmdpdHVkZV0sXG4gICAge1xuICAgICAgaWNvbjogcG9pbnRJY29uLFxuICAgICAgcmlzZU9uSG92ZXI6IHRydWUsXG4gICAgfSxcbiAgKS5hZGRUbyhtYXApO1xuICBtYW5ob2xlSWNvbi5iaW5kVG9vbHRpcChcbiAgICBgJHtzb3VyY2VQb2ludC5ncm91cC5uYW1lfSAoJHtzb3VyY2VQb2ludC5ncm91cC5zZWN0b3JfbmFtZX0pYCxcbiAgKTtcbiAgbWFuaG9sZUljb25bJ2thbmRvX29iamVjdF9pZCddID0gc291cmNlUG9pbnQuaWQ7XG4gIG1hbmhvbGVJY29uWydrYW5kb19vYmplY3QnXSA9ICdVcHN0cmVhbVBvaW50Jztcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRGaXJzdEVkZ2VPZkV2ZW50UGF0aCA9IChlZGdlczogSUVkZ2VbXSwgZXZlbnQ6IElFdmVudCkgPT4ge1xuICBpZiAoZXZlbnQucGF0aFswXSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gIHJldHVybiBlZGdlcy5maW5kKChlZGdlKSA9PiBlZGdlLmlkID09PSBldmVudC5wYXRoWzBdLmVkZ2VfaWQpO1xufTtcblxuY29uc3QgZmluZEVkZ2VzID0gKGVkZ2VzLCBuZXh0VXBzdHJlYW1MZXZlbElkcykgPT4ge1xuICByZXR1cm4gZWRnZXMuZmlsdGVyKChlZGdlOiBJRWRnZSkgPT5cbiAgICBuZXh0VXBzdHJlYW1MZXZlbElkcy5pbmNsdWRlcyhlZGdlLnRhcmdldF9wb2ludF9pZCksXG4gICk7XG59O1xuXG5jb25zdCByZWN1cnNpdmVVcHN0cmVhbVNlYXJjaCA9IChcbiAgbmV4dExldmVsLFxuICBlZGdlcyxcbiAgbWFwQWxsRWRnZXNOZXN0aW5nLFxuICBhbGxVcHN0cmVhbUVkZ2VzLFxuKSA9PiB7XG4gIGxldCBuZXh0VXBzdHJlYW1MZXZlbElkcyA9IG5leHRMZXZlbC5tYXAoKGVkZ2UpID0+IGVkZ2Uuc291cmNlX3BvaW50X2lkKTtcbiAgaWYgKGZpbmRFZGdlcyhlZGdlcywgbmV4dFVwc3RyZWFtTGV2ZWxJZHMpLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBtYXBBbGxFZGdlc05lc3RpbmcoW25leHRMZXZlbF0pO1xuICB9IGVsc2Uge1xuICAgIGFsbFVwc3RyZWFtRWRnZXMucHVzaChmaW5kRWRnZXMoZWRnZXMsIG5leHRVcHN0cmVhbUxldmVsSWRzKSk7XG4gICAgcmVjdXJzaXZlVXBzdHJlYW1TZWFyY2goXG4gICAgICBmaW5kRWRnZXMoZWRnZXMsIG5leHRVcHN0cmVhbUxldmVsSWRzKSxcbiAgICAgIGVkZ2VzLFxuICAgICAgbWFwQWxsRWRnZXNOZXN0aW5nLFxuICAgICAgYWxsVXBzdHJlYW1FZGdlcyxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIG1hcEFsbEVkZ2VzTmVzdGluZyhhbGxVcHN0cmVhbUVkZ2VzKTtcbn07XG5cbmNvbnN0IG1hcEFsbEVkZ2VzTmVzdGluZyA9IChhbGxVcHN0cmVhbUVkZ2VzKSA9PiB7XG4gIGxldCBtYXBwZWQ6IGFueVtdID0gW107XG4gIGFsbFVwc3RyZWFtRWRnZXMuZm9yRWFjaCgoZWRnZXMpID0+IHtcbiAgICBlZGdlcy5mb3JFYWNoKChlZGdlKSA9PiB7XG4gICAgICBtYXBwZWQucHVzaChlZGdlKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgcmV0dXJuIG1hcHBlZDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRVcHN0cmVhbUVkZ2VzID0gKGZpcnN0RWRnZTogSUVkZ2UsIGVkZ2VzOiBJRWRnZVtdKSA9PiB7XG4gIGxldCBhbGxVcHN0cmVhbUVkZ2VzOiBhbnlbXSA9IFtdO1xuICBsZXQgZmlyc3RVcHN0cmVhbUxldmVsOiBJRWRnZVtdID0gZWRnZXMuZmlsdGVyKFxuICAgIChlZGdlKSA9PiBlZGdlLnRhcmdldF9wb2ludF9pZCA9PT0gZmlyc3RFZGdlIS5zb3VyY2VfcG9pbnRfaWQsXG4gICk7XG5cbiAgcmV0dXJuIHJlY3Vyc2l2ZVVwc3RyZWFtU2VhcmNoKFxuICAgIGZpcnN0VXBzdHJlYW1MZXZlbCxcbiAgICBlZGdlcyxcbiAgICBtYXBBbGxFZGdlc05lc3RpbmcsXG4gICAgYWxsVXBzdHJlYW1FZGdlcyxcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaW5kVXBzdHJlYW1FZGdlc1RvRHJhdyA9IChcbiAgdXBzdHJlYW1FZGdlczogSUVkZ2VbXSxcbiAgZWRnZXNUb0RyYXc6IElFZGdlW10sXG4gIHBvaW50czogSVBvaW50W10sXG4gIGVkZ2VzOiBJRWRnZVtdLFxuKSA9PiB7XG4gIHVwc3RyZWFtRWRnZXMuZm9yRWFjaCgodXBzdHJlYW1FZGdlKSA9PiB7XG4gICAgaWYgKHVwc3RyZWFtRWRnZSkge1xuICAgICAgbGV0IHNvdXJjZVBvaW50ID0gcG9pbnRzLmZpbmQoXG4gICAgICAgIChwb2ludCkgPT4gcG9pbnQuaWQgPT09IHVwc3RyZWFtRWRnZSEuc291cmNlX3BvaW50X2lkLFxuICAgICAgKTtcblxuICAgICAgaWYgKHNvdXJjZVBvaW50KSBlZGdlc1RvRHJhdy5wdXNoKHVwc3RyZWFtRWRnZSk7XG5cbiAgICAgIGxldCBjb25uZWN0aW9uRWRnZXMgPSBlZGdlcy5maWx0ZXIoXG4gICAgICAgIChlZGdlKSA9PiBlZGdlLnNvdXJjZV9wb2ludF9pZCA9PT0gdXBzdHJlYW1FZGdlLnRhcmdldF9wb2ludF9pZCxcbiAgICAgICk7XG5cbiAgICAgIGlmIChjb25uZWN0aW9uRWRnZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICAgIGNvbm5lY3Rpb25FZGdlcy5mb3JFYWNoKChlZGdlKSA9PiBlZGdlc1RvRHJhdy5wdXNoKGVkZ2UpKTtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBlZGdlc1RvRHJhdztcbn07XG5cbmV4cG9ydCBjb25zdCBmaW5kRG93bnN0cmVhbUVkZ2VzVG9EcmF3ID0gKFxuICBmaXJzdEVkZ2U6IElFZGdlLFxuICBlZGdlczogSUVkZ2VbXSxcbiAgZG93bnN0cmVhbU5ldHdvcmssXG4gIGVkZ2VzVG9EcmF3LFxuKSA9PiB7XG4gIHJlY3Vyc2l2ZURvd25TdHJlYW1TZWFyY2goZG93bnN0cmVhbU5ldHdvcmssIGVkZ2VzKS5mb3JFYWNoKFxuICAgIChkb3duU3RyZWFtRWRnZSkgPT4ge1xuICAgICAgZWRnZXNUb0RyYXcucHVzaChkb3duU3RyZWFtRWRnZSk7XG4gICAgfSxcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCByZWN1cnNpdmVEb3duU3RyZWFtU2VhcmNoID0gKFxuICBkb3duc3RyZWFtTmV0d29yazogSUVkZ2VbXSxcbiAgZWRnZXM6IElFZGdlW10sXG4pID0+IHtcbiAgbGV0IGxhc3REb3duU3RyZWFtRWRnZSA9IGRvd25zdHJlYW1OZXR3b3JrW2Rvd25zdHJlYW1OZXR3b3JrLmxlbmd0aCAtIDFdO1xuXG4gIGlmIChuZXh0TGV2ZWxEb3duU3RyZWFtKGxhc3REb3duU3RyZWFtRWRnZSwgZWRnZXMpLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBkb3duc3RyZWFtTmV0d29yaztcbiAgfSBlbHNlIHtcbiAgICBuZXh0TGV2ZWxEb3duU3RyZWFtKGxhc3REb3duU3RyZWFtRWRnZSwgZWRnZXMpLmZvckVhY2goKGVkZ2UpID0+IHtcbiAgICAgIGRvd25zdHJlYW1OZXR3b3JrLnB1c2goZWRnZSk7XG4gICAgICByZWN1cnNpdmVEb3duU3RyZWFtU2VhcmNoKGRvd25zdHJlYW1OZXR3b3JrLCBlZGdlcyk7XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gZG93bnN0cmVhbU5ldHdvcms7XG59O1xuXG5leHBvcnQgY29uc3QgbmV4dExldmVsRG93blN0cmVhbSA9IChmaXJzdEVkZ2U6IElFZGdlLCBlZGdlczogSUVkZ2VbXSkgPT4ge1xuICByZXR1cm4gZWRnZXMuZmlsdGVyKFxuICAgIChlZGdlKSA9PiBlZGdlLnNvdXJjZV9wb2ludF9pZCA9PT0gZmlyc3RFZGdlLnRhcmdldF9wb2ludF9pZCxcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaW5kRWRnZXNGcm9tRXZlbnRQYXRoVG9EcmF3ID0gKFxuICBlZGdlc1RvRHJhdzogSUVkZ2VbXSxcbiAgZXZlbnQ6IElFdmVudCxcbiAgZWRnZXM6IElFZGdlW10sXG4pID0+IHtcbiAgZXZlbnQucGF0aC5mb3JFYWNoKChwYXJ0KSA9PiB7XG4gICAgbGV0IG1hdGNoZWRQYXJ0ID0gZWRnZXMuZmluZCgoZWRnZSkgPT4gZWRnZS5pZCA9PT0gcGFydC5lZGdlX2lkKTtcbiAgICBpZiAobWF0Y2hlZFBhcnQgIT09IHVuZGVmaW5lZCkgZWRnZXNUb0RyYXcucHVzaChtYXRjaGVkUGFydCk7XG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGRyYXdOZXR3b3JrID0gKFxuICBlZGdlczogSUVkZ2VbXSxcbiAgcG9pbnRzOiBJUG9pbnRbXSxcbiAgZGlzcGF0Y2gsXG4gIG1hcCxcbiAgZXZlbnQsXG4gIGxheWVyR3JvdXAsXG4pID0+IHtcbiAgbGV0IGxhdGxuZ3M6IGFueSA9IFtdO1xuICBlZGdlcy5mb3JFYWNoKChlZGdlKSA9PiB7XG4gICAgZWRnZS5zaGFwZV9kYXRhLmZvckVhY2goKGRhdGE6IGFueSkgPT4ge1xuICAgICAgbGF0bG5ncy5wdXNoKFtkYXRhLmxhdCwgZGF0YS5sbmddKTtcbiAgICB9KTtcblxuICAgIGxldCBwb2x5bGluZUJhY2s6IGFueSA9IEwucG9seWxpbmUobGF0bG5ncywge1xuICAgICAgY29sb3I6ICdyZ2IoMjI3LDIyNywyMjcpJyxcbiAgICAgIHdlaWdodDogNixcbiAgICAgIG9wYWNpdHk6IDEsXG4gICAgfSk7XG5cbiAgICBsZXQgdGFpbERhc2g6IGFueTtcblxuICAgIGlmIChMLlN5bWJvbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0YWlsRGFzaCA9IEwucG9seWxpbmVEZWNvcmF0b3IocG9seWxpbmVCYWNrLl9sYXRsbmdzLCB7XG4gICAgICAgIHBhdHRlcm5zOiBbXG4gICAgICAgICAgLy8gZGVmaW5lcyBhIHBhdHRlcm4gb2YgMTBweC13aWRlIGRhc2hlcywgcmVwZWF0ZWQgZXZlcnkgMjBweCBvbiB0aGUgbGluZVxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG9mZnNldDogMTUsXG4gICAgICAgICAgICByZXBlYXQ6IDI1LFxuICAgICAgICAgICAgc3ltYm9sOiBMLlN5bWJvbC5hcnJvd0hlYWQoe1xuICAgICAgICAgICAgICBwaXhlbFNpemU6IDMsXG4gICAgICAgICAgICAgIHBvbHlnb246IGZhbHNlLFxuICAgICAgICAgICAgICBwYXRoT3B0aW9uczoge1xuICAgICAgICAgICAgICAgIHN0cm9rZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBjb2xvcjogJ3JnYmEoMCwwLDApJyxcbiAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSk7XG4gICAgICB0YWlsRGFzaFsna2FuZG9fb2JqZWN0J10gPSAnRGVjb3JhdG9yJztcbiAgICAgIGxheWVyR3JvdXAuYWRkTGF5ZXIodGFpbERhc2gpO1xuICAgIH1cblxuICAgIHBvbHlsaW5lQmFja1sna2FuZG9fb2JqZWN0X2lkJ10gPSBlZGdlLmlkO1xuICAgIGlmIChldmVudC5ob3ZlcmVkKSBwb2x5bGluZUJhY2tbJ2thbmRvX29iamVjdCddID0gJ0hvdmVyZWRFZGdlJztcbiAgICBpZiAoZXZlbnQuZm9jdXNlZCkgcG9seWxpbmVCYWNrWydrYW5kb19vYmplY3QnXSA9ICdGb2N1c2VkRWRnZSc7XG4gICAgaWYgKG1hcCAhPT0gbnVsbCkgbGF5ZXJHcm91cC5hZGRMYXllcihwb2x5bGluZUJhY2spO1xuICAgIHBvbHlsaW5lQmFjay5icmluZ1RvRnJvbnQoKTtcbiAgICBpZiAoTC5TeW1ib2wgIT09IHVuZGVmaW5lZCkgdGFpbERhc2guYnJpbmdUb0Zyb250KCk7XG5cbiAgICBsZXQgcG9seWxpbmVGcm9udDogYW55ID0gTC5wb2x5bGluZShsYXRsbmdzLCB7XG4gICAgICBjb2xvcjogJ3JnYigyOSwyOSwyOSknLFxuICAgICAgd2VpZ2h0OiAxLFxuICAgICAgb3BhY2l0eTogMSxcbiAgICB9KTtcblxuICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICBpZiAoZXZlbnQuaG92ZXJlZCkgcG9seWxpbmVGcm9udFsna2FuZG9fb2JqZWN0J10gPSAnSG92ZXJlZEVkZ2VGcm9udCc7XG4gICAgaWYgKGV2ZW50LmZvY3VzZWQpIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdCddID0gJ0ZvY3VzZWRFZGdlRnJvbnQnO1xuICAgIGlmIChtYXAgIT09IG51bGwpIGxheWVyR3JvdXAuYWRkTGF5ZXIocG9seWxpbmVGcm9udCk7XG4gICAgcG9seWxpbmVCYWNrLmFkZFRvKG1hcCk7XG4gICAgcG9seWxpbmVGcm9udC5hZGRUbyhtYXApO1xuXG4gICAgcG9seWxpbmVGcm9udC5icmluZ1RvRnJvbnQoKTtcbiAgICBpZiAoZXZlbnQuaG92ZXJlZClcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW3BvbHlsaW5lQmFjaywgcG9seWxpbmVGcm9udF0pKTtcbiAgICBsYXRsbmdzID0gW107XG5cbiAgICBpZiAocG9pbnRzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgbGV0IHNvdXJjZVBvaW50OiBJUG9pbnQgPSBwb2ludEZpbmRlcihwb2ludHMsIGVkZ2Uuc291cmNlX3BvaW50X2lkKTtcbiAgICAgIGxldCB0YXJnZXRQb2ludDogSVBvaW50ID0gcG9pbnRGaW5kZXIocG9pbnRzLCBlZGdlLnRhcmdldF9wb2ludF9pZCk7XG4gICAgICBpZiAoc291cmNlUG9pbnQgIT09IHVuZGVmaW5lZCAmJiB0YXJnZXRQb2ludCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHBvbHlsaW5lQmFjay5iaW5kUG9wdXAoYEVkZ2UgSUQ6ICR7ZWRnZS5pZH0sPGJyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb3VyY2UgcG9pbnQ6ICR7c291cmNlUG9pbnQuZ3JvdXAubmFtZX0sPGJyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUYXJnZXQgcG9pbnQ6ICR7dGFyZ2V0UG9pbnQuZ3JvdXAubmFtZX0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpc3RhbmNlOiAke2VkZ2UuZGlzdGFuY2V9YCk7XG4gICAgICB9XG4gICAgICBjcmVhdGVQb2ludExvZ2ljKHNvdXJjZVBvaW50LCBtYXAsIGxheWVyR3JvdXApO1xuICAgICAgaWYgKGVkZ2VzW2VkZ2VzLmxlbmd0aCAtIDFdLnRhcmdldF9wb2ludF9pZCA9PT0gZWRnZS50YXJnZXRfcG9pbnRfaWQpIHtcbiAgICAgICAgY3JlYXRlUG9pbnRMb2dpYyh0YXJnZXRQb2ludCwgbWFwLCBsYXllckdyb3VwKTtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xufTtcblxuY29uc3QgcG9pbnRGaW5kZXIgPSAocG9pbnRzLCBkZXNpcmVkUG9pbnRJZCkgPT4ge1xuICBsZXQgZGVzaXJlZFBvaW50OiBJUG9pbnQgPSBwb2ludHMuZmluZChcbiAgICAocG9pbnQ6IElQb2ludCkgPT4gcG9pbnQuaWQgPT09IGRlc2lyZWRQb2ludElkLFxuICApO1xuXG4gIHJldHVybiBkZXNpcmVkUG9pbnQ7XG59O1xuXG5leHBvcnQgY29uc3QgZmluZEFuZERyYXdFdmVudE5ldHdvcmtFZGdlcyA9IChcbiAgZWRnZXM6IElFZGdlW10sXG4gIGV2ZW50OiBJRXZlbnQsXG4gIHBvaW50czogSVBvaW50W10sXG4gIGRpc3BhdGNoLFxuICBtYXAsXG4gIGxheWVyR3JvdXAsXG4pID0+IHtcbiAgbGV0IGVkZ2VzVG9EcmF3OiBJRWRnZVtdID0gW107XG4gIGxldCBmaXJzdEVkZ2UgPSBnZXRGaXJzdEVkZ2VPZkV2ZW50UGF0aChlZGdlcywgZXZlbnQpO1xuXG4gIGlmIChmaXJzdEVkZ2UgIT09IHVuZGVmaW5lZCkge1xuICAgIGxldCBkb3duc3RyZWFtTmV0d29yazogSUVkZ2VbXSA9IFtmaXJzdEVkZ2VdO1xuICAgIGxldCB1cHN0cmVhbUVkZ2VzID0gZ2V0VXBzdHJlYW1FZGdlcyhmaXJzdEVkZ2UsIGVkZ2VzKTtcbiAgICBpZiAodXBzdHJlYW1FZGdlcyA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgaWYgKHVwc3RyZWFtRWRnZXMubGVuZ3RoICE9PSAwKVxuICAgICAgZmluZFVwc3RyZWFtRWRnZXNUb0RyYXcodXBzdHJlYW1FZGdlcywgZWRnZXNUb0RyYXcsIHBvaW50cywgZWRnZXMpO1xuICAgIGZpbmREb3duc3RyZWFtRWRnZXNUb0RyYXcoZmlyc3RFZGdlLCBlZGdlcywgZG93bnN0cmVhbU5ldHdvcmssIGVkZ2VzVG9EcmF3KTtcbiAgfVxuXG4gIGRyYXdOZXR3b3JrKGVkZ2VzVG9EcmF3LCBwb2ludHMsIGRpc3BhdGNoLCBtYXAsIGV2ZW50LCBsYXllckdyb3VwKTtcbn07XG5cbmV4cG9ydCBjb25zdCBwb2ludElzT2JzZXJ2YXRpb24gPSAoZXZlbnQ6IElFdmVudCwgcG9pbnQ6IElQb2ludCkgPT4ge1xuICByZXR1cm4gZXZlbnQub2JzZXJ2YXRpb25zLmZpbmQoKG9icykgPT4gb2JzLnBvaW50X2lkID09PSBwb2ludC5pZCk7XG59O1xuXG5leHBvcnQgY29uc3QgcG9pbnRJc1dXVFAgPSAocG9pbnQ6IElQb2ludCkgPT4ge1xuICByZXR1cm4gcG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6V2FzdGV3YXRlclRyZWF0bWVudFBsYW50Jztcbn07XG5cbmV4cG9ydCBjb25zdCBwb2ludElzQ29sbGVjdG9yID0gKHBvaW50OiBJUG9pbnQpID0+IHtcbiAgcmV0dXJuIHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6OkNvbGxlY3RvcnMnO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzQ29sbGVjdG9yVW5tb25pdG9yZWQgPSAocG9pbnQ6IElQb2ludCkgPT4ge1xuICByZXR1cm4gcG9pbnRJc0NvbGxlY3Rvcihwb2ludCkgJiYgIXBvaW50Lmhhc19kZXZpY2U7XG59O1xuXG5jb25zdCBjcmVhdGVQb2ludExvZ2ljID0gKHBvaW50OiBJUG9pbnQsIG1hcCwgbGF5ZXJHcm91cCkgPT4ge1xuICBpZiAoaXNDb2xsZWN0b3JVbm1vbml0b3JlZChwb2ludCkpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjcmVhdGVCdWJibGVQb2ludChcbiAgICBbcG9pbnQubGF0aXR1ZGUsIHBvaW50LmxvbmdpdHVkZV0sXG4gICAgcG9pbnQsXG4gICAgbWFwLFxuICAgIG51bGwsXG4gICAgbGF5ZXJHcm91cCxcbiAgKTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsQ0FBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0FBLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFJQSxJQUFBRyxRQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxXQUFBLEdBQUFKLE9BQUE7QUFBeUQsU0FBQUsseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFQLHdCQUFBVyxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFMLEdBQUEsWUFBQUksS0FBQSxDQUFBRSxHQUFBLENBQUFOLEdBQUEsU0FBQU8sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFaLEdBQUEsUUFBQVksR0FBQSxrQkFBQUgsTUFBQSxDQUFB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
|
|
237
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX3doaXRlUG9pbnQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2FjdGlvbnMiLCJfUG9pbnRVdGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiZHJhd01hbmhvbGVJY29uIiwic291cmNlUG9pbnQiLCJtYXAiLCJwb2ludEljb24iLCJpY29uIiwiaWNvblVybCIsIndoaXRlUG9pbnQiLCJpY29uU2l6ZSIsImljb25BbmNob3IiLCJtYW5ob2xlSWNvbiIsIm1hcmtlciIsImxhdGl0dWRlIiwibG9uZ2l0dWRlIiwicmlzZU9uSG92ZXIiLCJhZGRUbyIsImJpbmRUb29sdGlwIiwiY29uY2F0IiwiZ3JvdXAiLCJuYW1lIiwic2VjdG9yX25hbWUiLCJpZCIsImV4cG9ydHMiLCJnZXRGaXJzdEVkZ2VPZkV2ZW50UGF0aCIsImVkZ2VzIiwiZXZlbnQiLCJwYXRoIiwidW5kZWZpbmVkIiwiZmluZCIsImVkZ2UiLCJlZGdlX2lkIiwiZmluZEVkZ2VzIiwibmV4dFVwc3RyZWFtTGV2ZWxJZHMiLCJmaWx0ZXIiLCJpbmNsdWRlcyIsInRhcmdldF9wb2ludF9pZCIsInJlY3Vyc2l2ZVVwc3RyZWFtU2VhcmNoIiwibmV4dExldmVsIiwibWFwQWxsRWRnZXNOZXN0aW5nIiwiYWxsVXBzdHJlYW1FZGdlcyIsInNvdXJjZV9wb2ludF9pZCIsImxlbmd0aCIsInB1c2giLCJtYXBwZWQiLCJmb3JFYWNoIiwiZ2V0VXBzdHJlYW1FZGdlcyIsImZpcnN0RWRnZSIsImZpcnN0VXBzdHJlYW1MZXZlbCIsImZpbmRVcHN0cmVhbUVkZ2VzVG9EcmF3IiwidXBzdHJlYW1FZGdlcyIsImVkZ2VzVG9EcmF3IiwicG9pbnRzIiwidXBzdHJlYW1FZGdlIiwicG9pbnQiLCJjb25uZWN0aW9uRWRnZXMiLCJmaW5kRG93bnN0cmVhbUVkZ2VzVG9EcmF3IiwiZG93bnN0cmVhbU5ldHdvcmsiLCJyZWN1cnNpdmVEb3duU3RyZWFtU2VhcmNoIiwiZG93blN0cmVhbUVkZ2UiLCJsYXN0RG93blN0cmVhbUVkZ2UiLCJuZXh0TGV2ZWxEb3duU3RyZWFtIiwiZmluZEVkZ2VzRnJvbUV2ZW50UGF0aFRvRHJhdyIsInBhcnQiLCJtYXRjaGVkUGFydCIsImRyYXdOZXR3b3JrIiwiZGlzcGF0Y2giLCJsYXllckdyb3VwIiwibGF0bG5ncyIsInNoYXBlX2RhdGEiLCJkYXRhIiwibGF0IiwibG5nIiwicG9seWxpbmVCYWNrIiwicG9seWxpbmUiLCJjb2xvciIsIndlaWdodCIsIm9wYWNpdHkiLCJ0YWlsRGFzaCIsIlN5bWJvbCIsInBvbHlsaW5lRGVjb3JhdG9yIiwiX2xhdGxuZ3MiLCJwYXR0ZXJucyIsIm9mZnNldCIsInJlcGVhdCIsInN5bWJvbCIsImFycm93SGVhZCIsInBpeGVsU2l6ZSIsInBvbHlnb24iLCJwYXRoT3B0aW9ucyIsInN0cm9rZSIsImFkZExheWVyIiwiaG92ZXJlZCIsImZvY3VzZWQiLCJicmluZ1RvRnJvbnQiLCJwb2x5bGluZUZyb250Iiwic2V0SG92ZXJlZEVkZ2VQYXRocyIsInBvaW50RmluZGVyIiwidGFyZ2V0UG9pbnQiLCJiaW5kUG9wdXAiLCJkaXN0YW5jZSIsImNyZWF0ZVBvaW50TG9naWMiLCJkZXNpcmVkUG9pbnRJZCIsImRlc2lyZWRQb2ludCIsImZpbmRBbmREcmF3RXZlbnROZXR3b3JrRWRnZXMiLCJwb2ludElzT2JzZXJ2YXRpb24iLCJvYnNlcnZhdGlvbnMiLCJvYnMiLCJwb2ludF9pZCIsInBvaW50SXNXV1RQIiwidHlwZSIsInBvaW50SXNDb2xsZWN0b3IiLCJpc0NvbGxlY3RvclVubW9uaXRvcmVkIiwiaGFzX2RldmljZSIsImNyZWF0ZUJ1YmJsZVBvaW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL2V2ZW50cy9FdmVudFV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEwgZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgJ3NyYy91dGlsaXRpZXMvcG9seWxpbmVkZWNvcmF0b3InO1xuaW1wb3J0IHdoaXRlUG9pbnQgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3doaXRlLXBvaW50LnBuZyc7XG5pbXBvcnQgeyBJRWRnZSB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2VkZ2VzL21vZGVscy9JRWRnZSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzZXRIb3ZlcmVkRWRnZVBhdGhzIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgY3JlYXRlQnViYmxlUG9pbnQgfSBmcm9tICcuLi9wb2ludHMvUG9pbnRVdGlscyc7XG5cbmV4cG9ydCBjb25zdCBkcmF3TWFuaG9sZUljb24gPSAoc291cmNlUG9pbnQ6IElQb2ludCwgbWFwOiBMLk1hcCkgPT4ge1xuICBsZXQgcG9pbnRJY29uID0gTC5pY29uKHtcbiAgICBpY29uVXJsOiB3aGl0ZVBvaW50LFxuICAgIGljb25TaXplOiBbOSwgOV0sXG4gICAgaWNvbkFuY2hvcjogWzQuNSwgNC41XSxcbiAgfSk7XG5cbiAgbGV0IG1hbmhvbGVJY29uOiBhbnkgPSBMLm1hcmtlcihcbiAgICBbc291cmNlUG9pbnQubGF0aXR1ZGUsIHNvdXJjZVBvaW50LmxvbmdpdHVkZV0sXG4gICAge1xuICAgICAgaWNvbjogcG9pbnRJY29uLFxuICAgICAgcmlzZU9uSG92ZXI6IHRydWUsXG4gICAgfSxcbiAgKS5hZGRUbyhtYXApO1xuICBtYW5ob2xlSWNvbi5iaW5kVG9vbHRpcChcbiAgICBgJHtzb3VyY2VQb2ludC5ncm91cC5uYW1lfSAoJHtzb3VyY2VQb2ludC5ncm91cC5zZWN0b3JfbmFtZX0pYCxcbiAgKTtcbiAgbWFuaG9sZUljb25bJ2thbmRvX29iamVjdF9pZCddID0gc291cmNlUG9pbnQuaWQ7XG4gIG1hbmhvbGVJY29uWydrYW5kb19vYmplY3QnXSA9ICdVcHN0cmVhbVBvaW50Jztcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRGaXJzdEVkZ2VPZkV2ZW50UGF0aCA9IChlZGdlczogSUVkZ2VbXSwgZXZlbnQ6IElFdmVudCkgPT4ge1xuICBpZiAoZXZlbnQucGF0aFswXSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gIHJldHVybiBlZGdlcy5maW5kKChlZGdlKSA9PiBlZGdlLmlkID09PSBldmVudC5wYXRoWzBdLmVkZ2VfaWQpO1xufTtcblxuY29uc3QgZmluZEVkZ2VzID0gKGVkZ2VzLCBuZXh0VXBzdHJlYW1MZXZlbElkcykgPT4ge1xuICByZXR1cm4gZWRnZXMuZmlsdGVyKChlZGdlOiBJRWRnZSkgPT5cbiAgICBuZXh0VXBzdHJlYW1MZXZlbElkcy5pbmNsdWRlcyhlZGdlLnRhcmdldF9wb2ludF9pZCksXG4gICk7XG59O1xuXG5jb25zdCByZWN1cnNpdmVVcHN0cmVhbVNlYXJjaCA9IChcbiAgbmV4dExldmVsLFxuICBlZGdlcyxcbiAgbWFwQWxsRWRnZXNOZXN0aW5nLFxuICBhbGxVcHN0cmVhbUVkZ2VzLFxuKSA9PiB7XG4gIGxldCBuZXh0VXBzdHJlYW1MZXZlbElkcyA9IG5leHRMZXZlbC5tYXAoKGVkZ2UpID0+IGVkZ2Uuc291cmNlX3BvaW50X2lkKTtcbiAgaWYgKGZpbmRFZGdlcyhlZGdlcywgbmV4dFVwc3RyZWFtTGV2ZWxJZHMpLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBtYXBBbGxFZGdlc05lc3RpbmcoW25leHRMZXZlbF0pO1xuICB9IGVsc2Uge1xuICAgIGFsbFVwc3RyZWFtRWRnZXMucHVzaChmaW5kRWRnZXMoZWRnZXMsIG5leHRVcHN0cmVhbUxldmVsSWRzKSk7XG4gICAgcmVjdXJzaXZlVXBzdHJlYW1TZWFyY2goXG4gICAgICBmaW5kRWRnZXMoZWRnZXMsIG5leHRVcHN0cmVhbUxldmVsSWRzKSxcbiAgICAgIGVkZ2VzLFxuICAgICAgbWFwQWxsRWRnZXNOZXN0aW5nLFxuICAgICAgYWxsVXBzdHJlYW1FZGdlcyxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIG1hcEFsbEVkZ2VzTmVzdGluZyhhbGxVcHN0cmVhbUVkZ2VzKTtcbn07XG5cbmNvbnN0IG1hcEFsbEVkZ2VzTmVzdGluZyA9IChhbGxVcHN0cmVhbUVkZ2VzKSA9PiB7XG4gIGxldCBtYXBwZWQ6IGFueVtdID0gW107XG4gIGFsbFVwc3RyZWFtRWRnZXMuZm9yRWFjaCgoZWRnZXMpID0+IHtcbiAgICBlZGdlcy5mb3JFYWNoKChlZGdlKSA9PiB7XG4gICAgICBtYXBwZWQucHVzaChlZGdlKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgcmV0dXJuIG1hcHBlZDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRVcHN0cmVhbUVkZ2VzID0gKGZpcnN0RWRnZTogSUVkZ2UsIGVkZ2VzOiBJRWRnZVtdKSA9PiB7XG4gIGxldCBhbGxVcHN0cmVhbUVkZ2VzOiBhbnlbXSA9IFtdO1xuICBsZXQgZmlyc3RVcHN0cmVhbUxldmVsOiBJRWRnZVtdID0gZWRnZXMuZmlsdGVyKFxuICAgIChlZGdlKSA9PiBlZGdlLnRhcmdldF9wb2ludF9pZCA9PT0gZmlyc3RFZGdlIS5zb3VyY2VfcG9pbnRfaWQsXG4gICk7XG5cbiAgcmV0dXJuIHJlY3Vyc2l2ZVVwc3RyZWFtU2VhcmNoKFxuICAgIGZpcnN0VXBzdHJlYW1MZXZlbCxcbiAgICBlZGdlcyxcbiAgICBtYXBBbGxFZGdlc05lc3RpbmcsXG4gICAgYWxsVXBzdHJlYW1FZGdlcyxcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaW5kVXBzdHJlYW1FZGdlc1RvRHJhdyA9IChcbiAgdXBzdHJlYW1FZGdlczogSUVkZ2VbXSxcbiAgZWRnZXNUb0RyYXc6IElFZGdlW10sXG4gIHBvaW50czogSVBvaW50W10sXG4gIGVkZ2VzOiBJRWRnZVtdLFxuKSA9PiB7XG4gIHVwc3RyZWFtRWRnZXMuZm9yRWFjaCgodXBzdHJlYW1FZGdlKSA9PiB7XG4gICAgaWYgKHVwc3RyZWFtRWRnZSkge1xuICAgICAgbGV0IHNvdXJjZVBvaW50ID0gcG9pbnRzLmZpbmQoXG4gICAgICAgIChwb2ludCkgPT4gcG9pbnQuaWQgPT09IHVwc3RyZWFtRWRnZSEuc291cmNlX3BvaW50X2lkLFxuICAgICAgKTtcblxuICAgICAgaWYgKHNvdXJjZVBvaW50KSBlZGdlc1RvRHJhdy5wdXNoKHVwc3RyZWFtRWRnZSk7XG5cbiAgICAgIGxldCBjb25uZWN0aW9uRWRnZXMgPSBlZGdlcy5maWx0ZXIoXG4gICAgICAgIChlZGdlKSA9PiBlZGdlLnNvdXJjZV9wb2ludF9pZCA9PT0gdXBzdHJlYW1FZGdlLnRhcmdldF9wb2ludF9pZCxcbiAgICAgICk7XG5cbiAgICAgIGlmIChjb25uZWN0aW9uRWRnZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICAgIGNvbm5lY3Rpb25FZGdlcy5mb3JFYWNoKChlZGdlKSA9PiBlZGdlc1RvRHJhdy5wdXNoKGVkZ2UpKTtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBlZGdlc1RvRHJhdztcbn07XG5cbmV4cG9ydCBjb25zdCBmaW5kRG93bnN0cmVhbUVkZ2VzVG9EcmF3ID0gKFxuICBmaXJzdEVkZ2U6IElFZGdlLFxuICBlZGdlczogSUVkZ2VbXSxcbiAgZG93bnN0cmVhbU5ldHdvcmssXG4gIGVkZ2VzVG9EcmF3LFxuKSA9PiB7XG4gIHJlY3Vyc2l2ZURvd25TdHJlYW1TZWFyY2goZG93bnN0cmVhbU5ldHdvcmssIGVkZ2VzKS5mb3JFYWNoKFxuICAgIChkb3duU3RyZWFtRWRnZSkgPT4ge1xuICAgICAgZWRnZXNUb0RyYXcucHVzaChkb3duU3RyZWFtRWRnZSk7XG4gICAgfSxcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCByZWN1cnNpdmVEb3duU3RyZWFtU2VhcmNoID0gKFxuICBkb3duc3RyZWFtTmV0d29yazogSUVkZ2VbXSxcbiAgZWRnZXM6IElFZGdlW10sXG4pID0+IHtcbiAgbGV0IGxhc3REb3duU3RyZWFtRWRnZSA9IGRvd25zdHJlYW1OZXR3b3JrW2Rvd25zdHJlYW1OZXR3b3JrLmxlbmd0aCAtIDFdO1xuXG4gIGlmIChuZXh0TGV2ZWxEb3duU3RyZWFtKGxhc3REb3duU3RyZWFtRWRnZSwgZWRnZXMpLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBkb3duc3RyZWFtTmV0d29yaztcbiAgfSBlbHNlIHtcbiAgICBuZXh0TGV2ZWxEb3duU3RyZWFtKGxhc3REb3duU3RyZWFtRWRnZSwgZWRnZXMpLmZvckVhY2goKGVkZ2UpID0+IHtcbiAgICAgIGRvd25zdHJlYW1OZXR3b3JrLnB1c2goZWRnZSk7XG4gICAgICByZWN1cnNpdmVEb3duU3RyZWFtU2VhcmNoKGRvd25zdHJlYW1OZXR3b3JrLCBlZGdlcyk7XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gZG93bnN0cmVhbU5ldHdvcms7XG59O1xuXG5leHBvcnQgY29uc3QgbmV4dExldmVsRG93blN0cmVhbSA9IChmaXJzdEVkZ2U6IElFZGdlLCBlZGdlczogSUVkZ2VbXSkgPT4ge1xuICByZXR1cm4gZWRnZXMuZmlsdGVyKFxuICAgIChlZGdlKSA9PiBlZGdlLnNvdXJjZV9wb2ludF9pZCA9PT0gZmlyc3RFZGdlLnRhcmdldF9wb2ludF9pZCxcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaW5kRWRnZXNGcm9tRXZlbnRQYXRoVG9EcmF3ID0gKFxuICBlZGdlc1RvRHJhdzogSUVkZ2VbXSxcbiAgZXZlbnQ6IElFdmVudCxcbiAgZWRnZXM6IElFZGdlW10sXG4pID0+IHtcbiAgZXZlbnQucGF0aC5mb3JFYWNoKChwYXJ0KSA9PiB7XG4gICAgbGV0IG1hdGNoZWRQYXJ0ID0gZWRnZXMuZmluZCgoZWRnZSkgPT4gZWRnZS5pZCA9PT0gcGFydC5lZGdlX2lkKTtcbiAgICBpZiAobWF0Y2hlZFBhcnQgIT09IHVuZGVmaW5lZCkgZWRnZXNUb0RyYXcucHVzaChtYXRjaGVkUGFydCk7XG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGRyYXdOZXR3b3JrID0gKFxuICBlZGdlczogSUVkZ2VbXSxcbiAgcG9pbnRzOiBJUG9pbnRbXSxcbiAgZGlzcGF0Y2gsXG4gIG1hcCxcbiAgZXZlbnQsXG4gIGxheWVyR3JvdXAsXG4pID0+IHtcbiAgbGV0IGxhdGxuZ3M6IGFueSA9IFtdO1xuICBlZGdlcy5mb3JFYWNoKChlZGdlKSA9PiB7XG4gICAgZWRnZS5zaGFwZV9kYXRhLmZvckVhY2goKGRhdGE6IGFueSkgPT4ge1xuICAgICAgbGF0bG5ncy5wdXNoKFtkYXRhLmxhdCwgZGF0YS5sbmddKTtcbiAgICB9KTtcblxuICAgIGxldCBwb2x5bGluZUJhY2s6IGFueSA9IEwucG9seWxpbmUobGF0bG5ncywge1xuICAgICAgY29sb3I6ICdyZ2IoMjI3LDIyNywyMjcpJyxcbiAgICAgIHdlaWdodDogNixcbiAgICAgIG9wYWNpdHk6IDEsXG4gICAgfSk7XG5cbiAgICBsZXQgdGFpbERhc2g6IGFueTtcblxuICAgIGlmIChMLlN5bWJvbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0YWlsRGFzaCA9IEwucG9seWxpbmVEZWNvcmF0b3IocG9seWxpbmVCYWNrLl9sYXRsbmdzLCB7XG4gICAgICAgIHBhdHRlcm5zOiBbXG4gICAgICAgICAgLy8gZGVmaW5lcyBhIHBhdHRlcm4gb2YgMTBweC13aWRlIGRhc2hlcywgcmVwZWF0ZWQgZXZlcnkgMjBweCBvbiB0aGUgbGluZVxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG9mZnNldDogMTUsXG4gICAgICAgICAgICByZXBlYXQ6IDI1LFxuICAgICAgICAgICAgc3ltYm9sOiBMLlN5bWJvbC5hcnJvd0hlYWQoe1xuICAgICAgICAgICAgICBwaXhlbFNpemU6IDMsXG4gICAgICAgICAgICAgIHBvbHlnb246IGZhbHNlLFxuICAgICAgICAgICAgICBwYXRoT3B0aW9uczoge1xuICAgICAgICAgICAgICAgIHN0cm9rZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBjb2xvcjogJ3JnYmEoMCwwLDApJyxcbiAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSk7XG4gICAgICB0YWlsRGFzaFsna2FuZG9fb2JqZWN0J10gPSAnRGVjb3JhdG9yJztcbiAgICAgIGxheWVyR3JvdXAuYWRkTGF5ZXIodGFpbERhc2gpO1xuICAgIH1cblxuICAgIHBvbHlsaW5lQmFja1sna2FuZG9fb2JqZWN0X2lkJ10gPSBlZGdlLmlkO1xuICAgIGlmIChldmVudC5ob3ZlcmVkKSBwb2x5bGluZUJhY2tbJ2thbmRvX29iamVjdCddID0gJ0hvdmVyZWRFZGdlJztcbiAgICBpZiAoZXZlbnQuZm9jdXNlZCkgcG9seWxpbmVCYWNrWydrYW5kb19vYmplY3QnXSA9ICdGb2N1c2VkRWRnZSc7XG4gICAgaWYgKG1hcCAhPT0gbnVsbCkgbGF5ZXJHcm91cC5hZGRMYXllcihwb2x5bGluZUJhY2spO1xuICAgIHBvbHlsaW5lQmFjay5icmluZ1RvRnJvbnQoKTtcbiAgICBpZiAoTC5TeW1ib2wgIT09IHVuZGVmaW5lZCkgdGFpbERhc2guYnJpbmdUb0Zyb250KCk7XG5cbiAgICBsZXQgcG9seWxpbmVGcm9udDogYW55ID0gTC5wb2x5bGluZShsYXRsbmdzLCB7XG4gICAgICBjb2xvcjogJ3JnYigyOSwyOSwyOSknLFxuICAgICAgd2VpZ2h0OiAxLFxuICAgICAgb3BhY2l0eTogMSxcbiAgICB9KTtcblxuICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICBpZiAoZXZlbnQuaG92ZXJlZCkgcG9seWxpbmVGcm9udFsna2FuZG9fb2JqZWN0J10gPSAnSG92ZXJlZEVkZ2VGcm9udCc7XG4gICAgaWYgKGV2ZW50LmZvY3VzZWQpIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdCddID0gJ0ZvY3VzZWRFZGdlRnJvbnQnO1xuICAgIGlmIChtYXAgIT09IG51bGwpIGxheWVyR3JvdXAuYWRkTGF5ZXIocG9seWxpbmVGcm9udCk7XG4gICAgcG9seWxpbmVCYWNrLmFkZFRvKG1hcCk7XG4gICAgcG9seWxpbmVGcm9udC5hZGRUbyhtYXApO1xuXG4gICAgcG9seWxpbmVGcm9udC5icmluZ1RvRnJvbnQoKTtcbiAgICBpZiAoZXZlbnQuaG92ZXJlZClcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW3BvbHlsaW5lQmFjaywgcG9seWxpbmVGcm9udF0pKTtcbiAgICBsYXRsbmdzID0gW107XG5cbiAgICBpZiAocG9pbnRzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgbGV0IHNvdXJjZVBvaW50OiBJUG9pbnQgPSBwb2ludEZpbmRlcihwb2ludHMsIGVkZ2Uuc291cmNlX3BvaW50X2lkKTtcbiAgICAgIGxldCB0YXJnZXRQb2ludDogSVBvaW50ID0gcG9pbnRGaW5kZXIocG9pbnRzLCBlZGdlLnRhcmdldF9wb2ludF9pZCk7XG4gICAgICBpZiAoc291cmNlUG9pbnQgIT09IHVuZGVmaW5lZCAmJiB0YXJnZXRQb2ludCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHBvbHlsaW5lQmFjay5iaW5kUG9wdXAoYEVkZ2UgSUQ6ICR7ZWRnZS5pZH0sPGJyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb3VyY2UgcG9pbnQ6ICR7c291cmNlUG9pbnQuZ3JvdXAubmFtZX0sPGJyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUYXJnZXQgcG9pbnQ6ICR7dGFyZ2V0UG9pbnQuZ3JvdXAubmFtZX0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpc3RhbmNlOiAke2VkZ2UuZGlzdGFuY2V9YCk7XG4gICAgICB9XG4gICAgICBjcmVhdGVQb2ludExvZ2ljKHNvdXJjZVBvaW50LCBtYXAsIGxheWVyR3JvdXApO1xuICAgICAgaWYgKGVkZ2VzW2VkZ2VzLmxlbmd0aCAtIDFdLnRhcmdldF9wb2ludF9pZCA9PT0gZWRnZS50YXJnZXRfcG9pbnRfaWQpIHtcbiAgICAgICAgY3JlYXRlUG9pbnRMb2dpYyh0YXJnZXRQb2ludCwgbWFwLCBsYXllckdyb3VwKTtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xufTtcblxuY29uc3QgcG9pbnRGaW5kZXIgPSAocG9pbnRzLCBkZXNpcmVkUG9pbnRJZCkgPT4ge1xuICBsZXQgZGVzaXJlZFBvaW50OiBJUG9pbnQgPSBwb2ludHMuZmluZChcbiAgICAocG9pbnQ6IElQb2ludCkgPT4gcG9pbnQuaWQgPT09IGRlc2lyZWRQb2ludElkLFxuICApO1xuXG4gIHJldHVybiBkZXNpcmVkUG9pbnQ7XG59O1xuXG5leHBvcnQgY29uc3QgZmluZEFuZERyYXdFdmVudE5ldHdvcmtFZGdlcyA9IChcbiAgZWRnZXM6IElFZGdlW10sXG4gIGV2ZW50OiBJRXZlbnQsXG4gIHBvaW50czogSVBvaW50W10sXG4gIGRpc3BhdGNoLFxuICBtYXAsXG4gIGxheWVyR3JvdXAsXG4pID0+IHtcbiAgbGV0IGVkZ2VzVG9EcmF3OiBJRWRnZVtdID0gW107XG4gIGxldCBmaXJzdEVkZ2UgPSBnZXRGaXJzdEVkZ2VPZkV2ZW50UGF0aChlZGdlcywgZXZlbnQpO1xuXG4gIGlmIChmaXJzdEVkZ2UgIT09IHVuZGVmaW5lZCkge1xuICAgIGxldCBkb3duc3RyZWFtTmV0d29yazogSUVkZ2VbXSA9IFtmaXJzdEVkZ2VdO1xuICAgIGxldCB1cHN0cmVhbUVkZ2VzID0gZ2V0VXBzdHJlYW1FZGdlcyhmaXJzdEVkZ2UsIGVkZ2VzKTtcbiAgICBpZiAodXBzdHJlYW1FZGdlcyA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgaWYgKHVwc3RyZWFtRWRnZXMubGVuZ3RoICE9PSAwKVxuICAgICAgZmluZFVwc3RyZWFtRWRnZXNUb0RyYXcodXBzdHJlYW1FZGdlcywgZWRnZXNUb0RyYXcsIHBvaW50cywgZWRnZXMpO1xuICAgIGZpbmREb3duc3RyZWFtRWRnZXNUb0RyYXcoZmlyc3RFZGdlLCBlZGdlcywgZG93bnN0cmVhbU5ldHdvcmssIGVkZ2VzVG9EcmF3KTtcbiAgfVxuXG4gIGRyYXdOZXR3b3JrKGVkZ2VzVG9EcmF3LCBwb2ludHMsIGRpc3BhdGNoLCBtYXAsIGV2ZW50LCBsYXllckdyb3VwKTtcbn07XG5cbmV4cG9ydCBjb25zdCBwb2ludElzT2JzZXJ2YXRpb24gPSAoZXZlbnQ6IElFdmVudCwgcG9pbnQ6IElQb2ludCkgPT4ge1xuICByZXR1cm4gZXZlbnQub2JzZXJ2YXRpb25zLmZpbmQoKG9icykgPT4gb2JzLnBvaW50X2lkID09PSBwb2ludC5pZCk7XG59O1xuXG5leHBvcnQgY29uc3QgcG9pbnRJc1dXVFAgPSAocG9pbnQ6IElQb2ludCkgPT4ge1xuICByZXR1cm4gcG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6V2FzdGV3YXRlclRyZWF0bWVudFBsYW50Jztcbn07XG5cbmV4cG9ydCBjb25zdCBwb2ludElzQ29sbGVjdG9yID0gKHBvaW50OiBJUG9pbnQpID0+IHtcbiAgcmV0dXJuIHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6OkNvbGxlY3RvcnMnO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzQ29sbGVjdG9yVW5tb25pdG9yZWQgPSAocG9pbnQ6IElQb2ludCkgPT4ge1xuICByZXR1cm4gcG9pbnRJc0NvbGxlY3Rvcihwb2ludCkgJiYgIXBvaW50Lmhhc19kZXZpY2U7XG59O1xuXG5jb25zdCBjcmVhdGVQb2ludExvZ2ljID0gKHBvaW50OiBJUG9pbnQsIG1hcCwgbGF5ZXJHcm91cCkgPT4ge1xuICAvLyBpZiAoaXNDb2xsZWN0b3JVbm1vbml0b3JlZChwb2ludCkpIHtcbiAgLy8gICByZXR1cm47XG4gIC8vIH1cblxuICBjcmVhdGVCdWJibGVQb2ludChcbiAgICBbcG9pbnQubGF0aXR1ZGUsIHBvaW50LmxvbmdpdHVkZV0sXG4gICAgcG9pbnQsXG4gICAgbWFwLFxuICAgIG51bGwsXG4gICAgbGF5ZXJHcm91cCxcbiAgKTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsQ0FBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0FBLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFJQSxJQUFBRyxRQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxXQUFBLEdBQUFKLE9BQUE7QUFBeUQsU0FBQUsseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFQLHdCQUFBVyxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFMLEdBQUEsWUFBQUksS0FBQSxDQUFBRSxHQUFBLENBQUFOLEdBQUEsU0FBQU8sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFaLEdBQUEsUUFBQVksR0FBQSxrQkFBQUgs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
|
|
@@ -21,10 +21,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
21
21
|
var DischargeHeatmapContainer = function DischargeHeatmapContainer(_ref) {
|
|
22
22
|
var pointId = _ref.pointId,
|
|
23
23
|
_ref$isShowingTitles = _ref.isShowingTitles,
|
|
24
|
-
isShowingTitles = _ref$isShowingTitles === void 0 ? true : _ref$isShowingTitles
|
|
25
|
-
_ref$isEvents = _ref.isEvents,
|
|
26
|
-
isEvents = _ref$isEvents === void 0 ? false : _ref$isEvents,
|
|
27
|
-
onDataLoad = _ref.onDataLoad;
|
|
24
|
+
isShowingTitles = _ref$isShowingTitles === void 0 ? true : _ref$isShowingTitles;
|
|
28
25
|
var listByWeekStart = function listByWeekStart(isStartOnSunday, list) {
|
|
29
26
|
if (isStartOnSunday) {
|
|
30
27
|
return list;
|
|
@@ -56,7 +53,7 @@ var DischargeHeatmapContainer = function DischargeHeatmapContainer(_ref) {
|
|
|
56
53
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
57
54
|
state = _useState2[0],
|
|
58
55
|
setState = _useState2[1];
|
|
59
|
-
var _useApiWithDashboardQ = (0, _useApiWithDashboardQuery.useApiWithDashboardQuery)("/points/".concat(pointId, "/discharge_pattern_overtime.json")
|
|
56
|
+
var _useApiWithDashboardQ = (0, _useApiWithDashboardQuery.useApiWithDashboardQuery)("/points/".concat(pointId, "/discharge_pattern_overtime.json")),
|
|
60
57
|
_useApiWithDashboardQ2 = (0, _slicedToArray2.default)(_useApiWithDashboardQ, 3),
|
|
61
58
|
response = _useApiWithDashboardQ2[0],
|
|
62
59
|
isLoading = _useApiWithDashboardQ2[1],
|
|
@@ -73,7 +70,6 @@ var DischargeHeatmapContainer = function DischargeHeatmapContainer(_ref) {
|
|
|
73
70
|
data: response === null || response === void 0 ? void 0 : (_response$data2 = response.data) === null || _response$data2 === void 0 ? void 0 : _response$data2.data.filter(Boolean)
|
|
74
71
|
});
|
|
75
72
|
}
|
|
76
|
-
onDataLoad && onDataLoad(response);
|
|
77
73
|
}, [response]);
|
|
78
74
|
return /*#__PURE__*/_react.default.createElement(_DischargeHeatmap.default, {
|
|
79
75
|
weekDays: state.weekDays,
|
|
@@ -88,4 +84,4 @@ var DischargeHeatmapContainer = function DischargeHeatmapContainer(_ref) {
|
|
|
88
84
|
};
|
|
89
85
|
var _default = DischargeHeatmapContainer;
|
|
90
86
|
exports.default = _default;
|
|
91
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5IiwiX2kxOG4iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0Rpc2NoYXJnZUhlYXRtYXAiLCJfdGl0bGVzIiwiX0NvbnRlbnRMb2FkZXIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkRpc2NoYXJnZUhlYXRtYXBDb250YWluZXIiLCJfcmVmIiwicG9pbnRJZCIsIl9yZWYkaXNTaG93aW5nVGl0bGVzIiwiaXNTaG93aW5nVGl0bGVzIiwiX3JlZiRpc0V2ZW50cyIsImlzRXZlbnRzIiwib25EYXRhTG9hZCIsImxpc3RCeVdlZWtTdGFydCIsImlzU3RhcnRPblN1bmRheSIsImxpc3QiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwic2xpY2UiLCJ3ZWVrRGF5c0xpc3QiLCJpMThuIiwidCIsImFiYnJXZWVrRGF5c0xpc3QiLCJjYWxjT3JkZXJlZFdlZWtEYXlzIiwiaXNXZWVrU3RhcnRPblN1bmRheSIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsIndlZWtEYXlzIiwiYWJicldlZWtEYXlzIiwibWFwIiwic2hvcnQiLCJpbmRleCIsImZ1bGwiLCJpbml0aWFsU3RhdGUiLCJkYXRhIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwic3RhdGUiLCJzZXRTdGF0ZSIsIl91c2VBcGlXaXRoRGFzaGJvYXJkUSIsInVzZUFwaVdpdGhEYXNoYm9hcmRRdWVyeSIsIl91c2VBcGlXaXRoRGFzaGJvYXJkUTIiLCJyZXNwb25zZSIsImlzTG9hZGluZyIsImVycm9yIiwidGl0bGVzIiwiaGVhZF90aXRsZSIsInN1Yl90aXRsZSIsInVzZUVmZmVjdCIsIl9yZXNwb25zZSRkYXRhIiwiX3Jlc3BvbnNlJGRhdGEyIiwiaXNfd2Vla19zdGFydF9vbl9zdW5kYXkiLCJmaWx0ZXIiLCJCb29sZWFuIiwiY3JlYXRlRWxlbWVudCIsIl9vYmplY3RTcHJlYWQyIiwibG9hZGVyIiwiUm93TG9hZGVyIiwibWFyZ2luIiwiYmdDb2xvciIsImZnQ29sb3IiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9EaXNjaGFyZ2VIZWF0bWFwL0Rpc2NoYXJnZUhlYXRtYXBDb250YWluZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5IH0gZnJvbSAnc3JjL2hvb2tzL3VzZUFwaVdpdGhEYXNoYm9hcmRRdWVyeSc7XG5pbXBvcnQgaTE4biBmcm9tICcuLi8uLi91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgRGlzY2hhcmdlSGVhdG1hcCBmcm9tICcuL0Rpc2NoYXJnZUhlYXRtYXAnO1xuaW1wb3J0ICcuL3N0eWxlcy5zY3NzJztcbmltcG9ydCB7IGhlYWRfdGl0bGUsIHN1Yl90aXRsZSB9IGZyb20gJy4vdGl0bGVzJztcbmltcG9ydCB7IElXZWVrRGF5IH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBSb3dMb2FkZXIgfSBmcm9tICcuLi9Db250ZW50TG9hZGVyJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIHBvaW50SWQ6IG51bWJlciB8IG51bGw7XG4gIGlzV2Vla1N0YXJ0T25TdW5kYXk/OiBib29sZWFuO1xuICBpc1Nob3dpbmdUaXRsZXM/OiBib29sZWFuO1xuICBpc0V2ZW50cz86IGJvb2xlYW47XG4gIG9uRGF0YUxvYWQ/OiAoZGF0YTogYW55KSA9PiB2b2lkO1xufTtcbmNvbnN0IERpc2NoYXJnZUhlYXRtYXBDb250YWluZXIgPSAoe1xuICBwb2ludElkLFxuICBpc1Nob3dpbmdUaXRsZXMgPSB0cnVlLFxuICBpc0V2ZW50cyA9IGZhbHNlLFxuICBvbkRhdGFMb2FkLFxufTogSVByb3BzKSA9PiB7XG4gIGNvbnN0IGxpc3RCeVdlZWtTdGFydCA9IChpc1N0YXJ0T25TdW5kYXksIGxpc3QpID0+IHtcbiAgICBpZiAoaXNTdGFydE9uU3VuZGF5KSB7XG4gICAgICByZXR1cm4gbGlzdDtcbiAgICB9XG5cbiAgICByZXR1cm4gWy4uLmxpc3Quc2xpY2UoMSksIGxpc3RbMF1dO1xuICB9O1xuXG4gIGNvbnN0IHdlZWtEYXlzTGlzdDogc3RyaW5nW10gPSBpMThuLnQoJ2RhdGUuZGF5X25hbWVzJyk7XG4gIGNvbnN0IGFiYnJXZWVrRGF5c0xpc3Q6IHN0cmluZ1tdID0gaTE4bi50KCdkYXRlLmFiYnJfZGF5X25hbWVzJyk7XG5cbiAgLy8gV2UncmUgYWRkaW5nIGFuIG9mZnNldCBvZiAxIGRheSB0byB0aGUgd2Vla3MgdGhhdCBzdGFydCBvbiBTdW5kYXlcbiAgLy8gaW4gb3JkZXIgdG8gcmVmbGVjdCBjb3JyZWN0bHkgdGhlIGZhY3QgdGhhdCB0aGUgZGF0YSByZXR1cm5lZCBmcm9tIHRoZSBzZXJ2ZXJcbiAgLy8gYWx3YXlzIHN0YXJ0cyBmcm9tIHRoZSBmaXJzdCBkYXkgb2Ygd2VlayAoSXNyYWVsID0+IFN1bmRheSwgb3RoZXIgY291bnRyaWVzID0+IE1vbmRheSkuXG4gIGNvbnN0IGNhbGNPcmRlcmVkV2Vla0RheXMgPSAoaXNXZWVrU3RhcnRPblN1bmRheSA9IGZhbHNlKSA9PiB7XG4gICAgbGV0IHdlZWtEYXlzID0gbGlzdEJ5V2Vla1N0YXJ0KGlzV2Vla1N0YXJ0T25TdW5kYXksIHdlZWtEYXlzTGlzdCk7XG4gICAgbGV0IGFiYnJXZWVrRGF5cyA9IGxpc3RCeVdlZWtTdGFydChpc1dlZWtTdGFydE9uU3VuZGF5LCBhYmJyV2Vla0RheXNMaXN0KTtcblxuICAgIHJldHVybiBhYmJyV2Vla0RheXNMaXN0Lm1hcCgoc2hvcnQsIGluZGV4KSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzaG9ydDogYWJicldlZWtEYXlzW2luZGV4XSxcbiAgICAgICAgZnVsbDogd2Vla0RheXNbaW5kZXhdLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBpbml0aWFsU3RhdGU6IHtcbiAgICB3ZWVrRGF5czogSVdlZWtEYXlbXTtcbiAgICBkYXRhOiBhbnlbXTtcbiAgfSA9IHtcbiAgICB3ZWVrRGF5czogW10sXG4gICAgZGF0YTogW10sXG4gIH07XG4gIGNvbnN0IFtzdGF0ZSwgc2V0U3RhdGVdID0gdXNlU3RhdGUoaW5pdGlhbFN0YXRlKTtcbiAgY29uc3QgW3Jlc3BvbnNlLCBpc0xvYWRpbmcsIGVycm9yXSA9IHVzZUFwaVdpdGhEYXNoYm9hcmRRdWVyeTxhbnk+KFxuICAgIGAvcG9pbnRzLyR7cG9pbnRJZH0vZGlzY2hhcmdlX3BhdHRlcm5fb3ZlcnRpbWUuanNvbiR7XG4gICAgICBpc0V2ZW50cyA/ICc/aGFyc2huZXNzX3R5cGU9ZXZlbnRzJyA6ICcnXG4gICAgfWAsXG4gICk7XG5cbiAgY29uc3QgdGl0bGVzID0gIWlzU2hvd2luZ1RpdGxlcyA/IHt9IDogeyBoZWFkX3RpdGxlLCBzdWJfdGl0bGUgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChyZXNwb25zZSkge1xuICAgICAgc2V0U3RhdGUoe1xuICAgICAgICB3ZWVrRGF5czogY2FsY09yZGVyZWRXZWVrRGF5cyhyZXNwb25zZT8uZGF0YT8uaXNfd2Vla19zdGFydF9vbl9zdW5kYXkpLFxuICAgICAgICBkYXRhOiByZXNwb25zZT8uZGF0YT8uZGF0YS5maWx0ZXIoQm9vbGVhbiksXG4gICAgICB9KTtcbiAgICB9XG4gICAgb25EYXRhTG9hZCAmJiBvbkRhdGFMb2FkKHJlc3BvbnNlKTtcbiAgfSwgW3Jlc3BvbnNlXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8RGlzY2hhcmdlSGVhdG1hcCB3ZWVrRGF5cz17c3RhdGUud2Vla0RheXN9IGRhdGE9e3N0YXRlLmRhdGF9PlxuICAgICAge3tcbiAgICAgICAgLi4udGl0bGVzLFxuICAgICAgICBsb2FkZXI6IGlzTG9hZGluZyAmJiAhZXJyb3IgJiYgKFxuICAgICAgICAgIDxSb3dMb2FkZXIgbWFyZ2luPVwiMjZweCAwIDBcIiBiZ0NvbG9yPVwiI2YyZjJmMlwiIGZnQ29sb3I9XCIjZmZmXCIgLz5cbiAgICAgICAgKSxcbiAgICAgIH19XG4gICAgPC9EaXNjaGFyZ2VIZWF0bWFwPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgRGlzY2hhcmdlSGVhdG1hcENvbnRhaW5lcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyx5QkFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksaUJBQUEsR0FBQUQsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQUssT0FBQSxHQUFBTCxPQUFBO0FBRUEsSUFBQU0sY0FBQSxHQUFBTixPQUFBO0FBQTZDLFNBQUFPLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBVCx3QkFBQWEsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUks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
|
|
87
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5IiwiX2kxOG4iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0Rpc2NoYXJnZUhlYXRtYXAiLCJfdGl0bGVzIiwiX0NvbnRlbnRMb2FkZXIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkRpc2NoYXJnZUhlYXRtYXBDb250YWluZXIiLCJfcmVmIiwicG9pbnRJZCIsIl9yZWYkaXNTaG93aW5nVGl0bGVzIiwiaXNTaG93aW5nVGl0bGVzIiwibGlzdEJ5V2Vla1N0YXJ0IiwiaXNTdGFydE9uU3VuZGF5IiwibGlzdCIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJzbGljZSIsIndlZWtEYXlzTGlzdCIsImkxOG4iLCJ0IiwiYWJicldlZWtEYXlzTGlzdCIsImNhbGNPcmRlcmVkV2Vla0RheXMiLCJpc1dlZWtTdGFydE9uU3VuZGF5IiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwid2Vla0RheXMiLCJhYmJyV2Vla0RheXMiLCJtYXAiLCJzaG9ydCIsImluZGV4IiwiZnVsbCIsImluaXRpYWxTdGF0ZSIsImRhdGEiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJzdGF0ZSIsInNldFN0YXRlIiwiX3VzZUFwaVdpdGhEYXNoYm9hcmRRIiwidXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5IiwiX3VzZUFwaVdpdGhEYXNoYm9hcmRRMiIsInJlc3BvbnNlIiwiaXNMb2FkaW5nIiwiZXJyb3IiLCJ0aXRsZXMiLCJoZWFkX3RpdGxlIiwic3ViX3RpdGxlIiwidXNlRWZmZWN0IiwiX3Jlc3BvbnNlJGRhdGEiLCJfcmVzcG9uc2UkZGF0YTIiLCJpc193ZWVrX3N0YXJ0X29uX3N1bmRheSIsImZpbHRlciIsIkJvb2xlYW4iLCJjcmVhdGVFbGVtZW50IiwiX29iamVjdFNwcmVhZDIiLCJsb2FkZXIiLCJSb3dMb2FkZXIiLCJtYXJnaW4iLCJiZ0NvbG9yIiwiZmdDb2xvciIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0Rpc2NoYXJnZUhlYXRtYXAvRGlzY2hhcmdlSGVhdG1hcENvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnkgfSBmcm9tICdzcmMvaG9va3MvdXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5JztcbmltcG9ydCBpMThuIGZyb20gJy4uLy4uL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCBEaXNjaGFyZ2VIZWF0bWFwIGZyb20gJy4vRGlzY2hhcmdlSGVhdG1hcCc7XG5pbXBvcnQgJy4vc3R5bGVzLnNjc3MnO1xuaW1wb3J0IHsgaGVhZF90aXRsZSwgc3ViX3RpdGxlIH0gZnJvbSAnLi90aXRsZXMnO1xuaW1wb3J0IHsgSVdlZWtEYXkgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IFJvd0xvYWRlciB9IGZyb20gJy4uL0NvbnRlbnRMb2FkZXInO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgcG9pbnRJZDogbnVtYmVyIHwgbnVsbDtcbiAgaXNXZWVrU3RhcnRPblN1bmRheT86IGJvb2xlYW47XG4gIGlzU2hvd2luZ1RpdGxlcz86IGJvb2xlYW47XG59O1xuY29uc3QgRGlzY2hhcmdlSGVhdG1hcENvbnRhaW5lciA9ICh7XG4gIHBvaW50SWQsXG4gIGlzU2hvd2luZ1RpdGxlcyA9IHRydWUsXG59OiBJUHJvcHMpID0+IHtcbiAgY29uc3QgbGlzdEJ5V2Vla1N0YXJ0ID0gKGlzU3RhcnRPblN1bmRheSwgbGlzdCkgPT4ge1xuICAgIGlmIChpc1N0YXJ0T25TdW5kYXkpIHtcbiAgICAgIHJldHVybiBsaXN0O1xuICAgIH1cblxuICAgIHJldHVybiBbLi4ubGlzdC5zbGljZSgxKSwgbGlzdFswXV07XG4gIH07XG5cbiAgY29uc3Qgd2Vla0RheXNMaXN0OiBzdHJpbmdbXSA9IGkxOG4udCgnZGF0ZS5kYXlfbmFtZXMnKTtcbiAgY29uc3QgYWJicldlZWtEYXlzTGlzdDogc3RyaW5nW10gPSBpMThuLnQoJ2RhdGUuYWJicl9kYXlfbmFtZXMnKTtcblxuICAvLyBXZSdyZSBhZGRpbmcgYW4gb2Zmc2V0IG9mIDEgZGF5IHRvIHRoZSB3ZWVrcyB0aGF0IHN0YXJ0IG9uIFN1bmRheVxuICAvLyBpbiBvcmRlciB0byByZWZsZWN0IGNvcnJlY3RseSB0aGUgZmFjdCB0aGF0IHRoZSBkYXRhIHJldHVybmVkIGZyb20gdGhlIHNlcnZlclxuICAvLyBhbHdheXMgc3RhcnRzIGZyb20gdGhlIGZpcnN0IGRheSBvZiB3ZWVrIChJc3JhZWwgPT4gU3VuZGF5LCBvdGhlciBjb3VudHJpZXMgPT4gTW9uZGF5KS5cbiAgY29uc3QgY2FsY09yZGVyZWRXZWVrRGF5cyA9IChpc1dlZWtTdGFydE9uU3VuZGF5ID0gZmFsc2UpID0+IHtcbiAgICBsZXQgd2Vla0RheXMgPSBsaXN0QnlXZWVrU3RhcnQoaXNXZWVrU3RhcnRPblN1bmRheSwgd2Vla0RheXNMaXN0KTtcbiAgICBsZXQgYWJicldlZWtEYXlzID0gbGlzdEJ5V2Vla1N0YXJ0KGlzV2Vla1N0YXJ0T25TdW5kYXksIGFiYnJXZWVrRGF5c0xpc3QpO1xuXG4gICAgcmV0dXJuIGFiYnJXZWVrRGF5c0xpc3QubWFwKChzaG9ydCwgaW5kZXgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHNob3J0OiBhYmJyV2Vla0RheXNbaW5kZXhdLFxuICAgICAgICBmdWxsOiB3ZWVrRGF5c1tpbmRleF0sXG4gICAgICB9O1xuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGluaXRpYWxTdGF0ZToge1xuICAgIHdlZWtEYXlzOiBJV2Vla0RheVtdO1xuICAgIGRhdGE6IGFueVtdO1xuICB9ID0ge1xuICAgIHdlZWtEYXlzOiBbXSxcbiAgICBkYXRhOiBbXSxcbiAgfTtcbiAgY29uc3QgW3N0YXRlLCBzZXRTdGF0ZV0gPSB1c2VTdGF0ZShpbml0aWFsU3RhdGUpO1xuICBjb25zdCBbcmVzcG9uc2UsIGlzTG9hZGluZywgZXJyb3JdID0gdXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5PGFueT4oXG4gICAgYC9wb2ludHMvJHtwb2ludElkfS9kaXNjaGFyZ2VfcGF0dGVybl9vdmVydGltZS5qc29uYCxcbiAgKTtcblxuICBjb25zdCB0aXRsZXMgPSAhaXNTaG93aW5nVGl0bGVzID8ge30gOiB7IGhlYWRfdGl0bGUsIHN1Yl90aXRsZSB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHJlc3BvbnNlKSB7XG4gICAgICBzZXRTdGF0ZSh7XG4gICAgICAgIHdlZWtEYXlzOiBjYWxjT3JkZXJlZFdlZWtEYXlzKHJlc3BvbnNlPy5kYXRhPy5pc193ZWVrX3N0YXJ0X29uX3N1bmRheSksXG4gICAgICAgIGRhdGE6IHJlc3BvbnNlPy5kYXRhPy5kYXRhLmZpbHRlcihCb29sZWFuKSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW3Jlc3BvbnNlXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8RGlzY2hhcmdlSGVhdG1hcCB3ZWVrRGF5cz17c3RhdGUud2Vla0RheXN9IGRhdGE9e3N0YXRlLmRhdGF9PlxuICAgICAge3tcbiAgICAgICAgLi4udGl0bGVzLFxuICAgICAgICBsb2FkZXI6IGlzTG9hZGluZyAmJiAhZXJyb3IgJiYgKFxuICAgICAgICAgIDxSb3dMb2FkZXIgbWFyZ2luPVwiMjZweCAwIDBcIiBiZ0NvbG9yPVwiI2YyZjJmMlwiIGZnQ29sb3I9XCIjZmZmXCIgLz5cbiAgICAgICAgKSxcbiAgICAgIH19XG4gICAgPC9EaXNjaGFyZ2VIZWF0bWFwPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgRGlzY2hhcmdlSGVhdG1hcENvbnRhaW5lcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyx5QkFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksaUJBQUEsR0FBQUQsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQUssT0FBQSxHQUFBTCxPQUFBO0FBRUEsSUFBQU0sY0FBQSxHQUFBTixPQUFBO0FBQTZDLFNBQUFPLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBVCx3QkFBQWEsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLGFBQUFFLE9BQUEsQ0FBQUYsR0FBQSx5QkFBQUEsR0FBQSw0QkFBQUcsT0FBQSxFQUFBSCxHQUFBLFVBQUFJLEtBQUEsR0FBQVQsd0JBQUEsQ0FBQUMsV0FBQSxPQUFBUSxLQUFBLElBQUFBLEtBQUEsQ0FBQUMsR0FBQSxDQUFBTCxHQUFBLFlBQUFJLEtBQUEsQ0FBQUUsR0FBQSxDQUFBTixHQUFBLFNBQUFPLE1BQUEsV0FBQUMs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
|
package/lib/i18n/en.json
CHANGED
|
@@ -3939,24 +3939,24 @@
|
|
|
3939
3939
|
},
|
|
3940
3940
|
"wwtpPage": {
|
|
3941
3941
|
"see_children": "See children",
|
|
3942
|
-
"trend": "Organic Events Trend",
|
|
3943
3942
|
"organic_event": "Organic Events Score",
|
|
3944
|
-
"organic_events_pattern": "Organic Events Pattern",
|
|
3945
|
-
"organic_events_pattern_info_data": "Organic Events Pattern info data",
|
|
3946
3943
|
"view_sub_areas": "View Sub Areas",
|
|
3947
3944
|
"view_inlets": "View Inlets",
|
|
3948
3945
|
"view_factories": "View Factories",
|
|
3949
3946
|
"organic_load": "Organic Load",
|
|
3950
|
-
"
|
|
3951
|
-
"
|
|
3947
|
+
"trend_modal_title": "Organic Load Over Time",
|
|
3948
|
+
"organic_load_info_data": "Organic Load explanation",
|
|
3949
|
+
"organic_event_info_data": "Organic Load explanation",
|
|
3950
|
+
"impact": "Potential savings",
|
|
3952
3951
|
"impact_info_data": "Impact info data",
|
|
3953
3952
|
"inlets": "Inlets",
|
|
3954
3953
|
"inlets_info_data": "Inlets info data",
|
|
3955
3954
|
"inlets_plural": "Inlets ({{count}})",
|
|
3956
3955
|
"potential_savings": "Potential Savings",
|
|
3957
|
-
"actual_savings": "Actual
|
|
3956
|
+
"actual_savings": "Actual Saving of",
|
|
3958
3957
|
"contaminates": "Event Types",
|
|
3959
|
-
"
|
|
3958
|
+
"no_result_1": "Your sewer network is not fully configured yet to show more insights.",
|
|
3959
|
+
"no_result_2": "Contact your support representative to learn more.",
|
|
3960
3960
|
"prediction": "Next 7 Days Prediction",
|
|
3961
3961
|
"discharge": "discharge",
|
|
3962
3962
|
"upcoming_title": "Upgrade to unlock this insight.",
|
|
@@ -3965,11 +3965,10 @@
|
|
|
3965
3965
|
"urban_development": "Urban Development",
|
|
3966
3966
|
"urban_development_unit": "Population equivalent",
|
|
3967
3967
|
"co2_emission": "CO2 Emission",
|
|
3968
|
-
"co2_emission_unit": "kg CO2 eq/year",
|
|
3968
|
+
"co2_emission_unit": "kg CO2 eq /year",
|
|
3969
3969
|
"energy": "Energy",
|
|
3970
3970
|
"energy_unit": "kWh/year",
|
|
3971
|
-
"organic_load_unit": "kgCOD/
|
|
3972
|
-
"empty_state": "There is not enough data to display this insight"
|
|
3971
|
+
"organic_load_unit": "kgCOD/day"
|
|
3973
3972
|
}
|
|
3974
3973
|
}
|
|
3975
3974
|
}
|
package/lib/macros/getVersion.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var packageJsonVersion = "1.2.288-alpha.
|
|
3
|
+
var packageJsonVersion = "1.2.288-alpha.3";
|
|
4
4
|
if (typeof packageJsonVersion === 'string') {
|
|
5
5
|
// eslint-disable-next-line no-console
|
|
6
6
|
console.log("%c Kando UI %c v".concat(packageJsonVersion, " "), 'font-size: 15px; background-color: #fff; color: #e20f53;', 'font-weight: bold; font-size: 15px; background-color: #e20f53; color: #fff;', "with NODE_ENV=".concat(process.env.NODE_ENV));
|
|
7
7
|
} else {
|
|
8
8
|
console.error('getVersion.js got bad version from package.json, expected string.');
|
|
9
9
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYWNrYWdlSnNvblZlcnNpb24iLCJjb25zb2xlIiwibG9nIiwiY29uY2F0IiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiZXJyb3IiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbWFjcm9zL2dldFZlcnNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHByZXZhbCBmcm9tICdwcmV2YWwubWFjcm8nO1xuXG5jb25zdCBwYWNrYWdlSnNvblZlcnNpb24gPSBwcmV2YWxgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9iaW4vZ2V0VmVyc2lvbkZyb21QYWNrYWdlSnNvbi5qcycpYDtcbmlmICh0eXBlb2YgcGFja2FnZUpzb25WZXJzaW9uID09PSAnc3RyaW5nJykge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICBjb25zb2xlLmxvZyhcbiAgICBgJWMgS2FuZG8gVUkgJWMgdiR7cGFja2FnZUpzb25WZXJzaW9ufSBgLFxuICAgICdmb250LXNpemU6IDE1cHg7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGNvbG9yOiAjZTIwZjUzOycsXG4gICAgJ2ZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXNpemU6IDE1cHg7IGJhY2tncm91bmQtY29sb3I6ICNlMjBmNTM7IGNvbG9yOiAjZmZmOycsXG4gICAgYHdpdGggTk9ERV9FTlY9JHtwcm9jZXNzLmVudi5OT0RFX0VOVn1gLFxuICApO1xufSBlbHNlIHtcbiAgY29uc29sZS5lcnJvcihcbiAgICAnZ2V0VmVyc2lvbi5qcyBnb3QgYmFkIHZlcnNpb24gZnJvbSBwYWNrYWdlLmpzb24sIGV4cGVjdGVkIHN0cmluZy4nLFxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiOztBQUVBLElBQU1BLGtCQUFrQixvQkFBNkU7QUFDckcsSUFBSSxPQUFPQSxrQkFBa0IsS0FBSyxRQUFRLEVBQUU7RUFDMUM7RUFDQUMsT0FBTyxDQUFDQyxHQUFHLG9CQUFBQyxNQUFBLENBQ1VILGtCQUFrQixRQUNyQywwREFBMEQsRUFDMUQsNkVBQTZFLG1CQUFBRyxNQUFBLENBQzVEQyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsUUFBUSxDQUN2QyxDQUFDO0FBQ0gsQ0FBQyxNQUFNO0VBQ0xMLE9BQU8sQ0FBQ00sS0FBSyxDQUNYLG1FQUNGLENBQUM7QUFDSCJ9
|
|
@@ -25,9 +25,7 @@ var SelectedItemProvider = function SelectedItemProvider(_ref) {
|
|
|
25
25
|
selectedItem = _useState2[0],
|
|
26
26
|
setSelectedItem = _useState2[1];
|
|
27
27
|
var handleSelectItem = function handleSelectItem(itemId) {
|
|
28
|
-
|
|
29
|
-
setSelectedItem(itemId);
|
|
30
|
-
}
|
|
28
|
+
setSelectedItem(itemId);
|
|
31
29
|
};
|
|
32
30
|
var contextValue = {
|
|
33
31
|
selectedItem: selectedItem,
|
|
@@ -38,4 +36,4 @@ var SelectedItemProvider = function SelectedItemProvider(_ref) {
|
|
|
38
36
|
}, children);
|
|
39
37
|
};
|
|
40
38
|
exports.SelectedItemProvider = SelectedItemProvider;
|
|
41
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIlNlbGVjdGVkSXRlbUNvbnRleHQiLCJjcmVhdGVDb250ZXh0Iiwic2VsZWN0ZWRJdGVtIiwiaGFuZGxlU2VsZWN0SXRlbSIsIml0ZW1JZCIsInVzZVNlbGVjdGVkSXRlbSIsInVzZUNvbnRleHQiLCJleHBvcnRzIiwiU2VsZWN0ZWRJdGVtUHJvdmlkZXIiLCJfcmVmIiwiY2hpbGRyZW4iLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJzZXRTZWxlY3RlZEl0ZW0iLCJjb250ZXh0VmFsdWUiLCJjcmVhdGVFbGVtZW50IiwiUHJvdmlkZXIiLCJ2YWx1ZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvTGlzdENvbnRleHQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBjcmVhdGVDb250ZXh0LCB1c2VDb250ZXh0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcblxuY29uc3QgU2VsZWN0ZWRJdGVtQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQoe1xuICBzZWxlY3RlZEl0ZW06IG51bGwsXG4gIGhhbmRsZVNlbGVjdEl0ZW06IChpdGVtSWQpID0+IHt9LFxufSk7XG5cbmV4cG9ydCBjb25zdCB1c2VTZWxlY3RlZEl0ZW0gPSAoKSA9PiB7XG4gIHJldHVybiB1c2VDb250ZXh0KFNlbGVjdGVkSXRlbUNvbnRleHQpO1xufTtcblxuZXhwb3J0IGNvbnN0IFNlbGVjdGVkSXRlbVByb3ZpZGVyID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xuICBjb25zdCBbc2VsZWN0ZWRJdGVtLCBzZXRTZWxlY3RlZEl0ZW1dID0gdXNlU3RhdGUobnVsbCk7XG5cbiAgY29uc3QgaGFuZGxlU2VsZWN0SXRlbSA9IChpdGVtSWQpID0+
|
|
39
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIlNlbGVjdGVkSXRlbUNvbnRleHQiLCJjcmVhdGVDb250ZXh0Iiwic2VsZWN0ZWRJdGVtIiwiaGFuZGxlU2VsZWN0SXRlbSIsIml0ZW1JZCIsInVzZVNlbGVjdGVkSXRlbSIsInVzZUNvbnRleHQiLCJleHBvcnRzIiwiU2VsZWN0ZWRJdGVtUHJvdmlkZXIiLCJfcmVmIiwiY2hpbGRyZW4iLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJzZXRTZWxlY3RlZEl0ZW0iLCJjb250ZXh0VmFsdWUiLCJjcmVhdGVFbGVtZW50IiwiUHJvdmlkZXIiLCJ2YWx1ZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvTGlzdENvbnRleHQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBjcmVhdGVDb250ZXh0LCB1c2VDb250ZXh0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcblxuY29uc3QgU2VsZWN0ZWRJdGVtQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQoe1xuICBzZWxlY3RlZEl0ZW06IG51bGwsXG4gIGhhbmRsZVNlbGVjdEl0ZW06IChpdGVtSWQpID0+IHt9LFxufSk7XG5cbmV4cG9ydCBjb25zdCB1c2VTZWxlY3RlZEl0ZW0gPSAoKSA9PiB7XG4gIHJldHVybiB1c2VDb250ZXh0KFNlbGVjdGVkSXRlbUNvbnRleHQpO1xufTtcblxuZXhwb3J0IGNvbnN0IFNlbGVjdGVkSXRlbVByb3ZpZGVyID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xuICBjb25zdCBbc2VsZWN0ZWRJdGVtLCBzZXRTZWxlY3RlZEl0ZW1dID0gdXNlU3RhdGUobnVsbCk7XG5cbiAgY29uc3QgaGFuZGxlU2VsZWN0SXRlbSA9IChpdGVtSWQpID0+IHtcbiAgICBzZXRTZWxlY3RlZEl0ZW0oaXRlbUlkKTtcbiAgfTtcblxuICBjb25zdCBjb250ZXh0VmFsdWUgPSB7XG4gICAgc2VsZWN0ZWRJdGVtLFxuICAgIGhhbmRsZVNlbGVjdEl0ZW0sXG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8U2VsZWN0ZWRJdGVtQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17Y29udGV4dFZhbHVlfT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L1NlbGVjdGVkSXRlbUNvbnRleHQuUHJvdmlkZXI+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFBbUUsU0FBQUMseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFILHdCQUFBTyxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFMLEdBQUEsWUFBQUksS0FBQSxDQUFBRSxHQUFBLENBQUFOLEdBQUEsU0FBQU8sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFaLEdBQUEsUUFBQVksR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZixHQUFBLEVBQUFZLEdBQUEsU0FBQUksSUFBQSxHQUFBUixxQkFBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFYLEdBQUEsRUFBQVksR0FBQSxjQUFBSSxJQUFBLEtBQUFBLElBQUEsQ0FBQVYsR0FBQSxJQUFBVSxJQUFBLENBQUFDLEdBQUEsS0FBQVIsTUFBQSxDQUFBQyxjQUFBLENBQUFILE1BQUEsRUFBQUssR0FBQSxFQUFBSSxJQUFBLFlBQUFULE1BQUEsQ0FBQUssR0FBQSxJQUFBWixHQUFBLENBQUFZLEdBQUEsU0FBQUwsTUFBQSxDQUFBSixPQUFBLEdBQUFILEdBQUEsTUFBQUksS0FBQSxJQUFBQSxLQUFBLENBQUFhLEdBQUEsQ0FBQWpCLEdBQUEsRUFBQU8sTUFBQSxZQUFBQSxNQUFBO0FBRW5FLElBQU1XLG1CQUFtQixnQkFBRyxJQUFBQyxvQkFBYSxFQUFDO0VBQ3hDQyxZQUFZLEVBQUUsSUFBSTtFQUNsQkMsZ0JBQWdCLEVBQUUsU0FBQUEsaUJBQUNDLE1BQU0sRUFBSyxDQUFDO0FBQ2pDLENBQUMsQ0FBQztBQUVLLElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBQSxFQUFTO0VBQ25DLE9BQU8sSUFBQUMsaUJBQVUsRUFBQ04sbUJBQW1CLENBQUM7QUFDeEMsQ0FBQztBQUFDTyxPQUFBLENBQUFGLGVBQUEsR0FBQUEsZUFBQTtBQUVLLElBQU1HLG9CQUFvQixHQUFHLFNBQXZCQSxvQkFBb0JBLENBQUFDLElBQUEsRUFBcUI7RUFBQSxJQUFmQyxRQUFRLEdBQUFELElBQUEsQ0FBUkMsUUFBUTtFQUM3QyxJQUFBQyxTQUFBLEdBQXdDLElBQUFDLGVBQVEsRUFBQyxJQUFJLENBQUM7SUFBQUMsVUFBQSxPQUFBQyxlQUFBLENBQUE3QixPQUFBLEVBQUEwQixTQUFBO0lBQS9DVCxZQUFZLEdBQUFXLFVBQUE7SUFBRUUsZUFBZSxHQUFBRixVQUFBO0VBRXBDLElBQU1WLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBZ0JBLENBQUlDLE1BQU0sRUFBSztJQUNuQ1csZUFBZSxDQUFDWCxNQUFNLENBQUM7RUFDekIsQ0FBQztFQUVELElBQU1ZLFlBQVksR0FBRztJQUNuQmQsWUFBWSxFQUFaQSxZQUFZO0lBQ1pDLGdCQUFnQixFQUFoQkE7RUFDRixDQUFDO0VBRUQsb0JBQ0U3QixNQUFBLENBQUFXLE9BQUEsQ0FBQWdDLGFBQUEsQ0FBQ2pCLG1CQUFtQixDQUFDa0IsUUFBUTtJQUFDQyxLQUFLLEVBQUVIO0VBQWEsR0FDL0NOLFFBQzJCLENBQUM7QUFFbkMsQ0FBQztBQUFDSCxPQUFBLENBQUFDLG9CQUFBLEdBQUFBLG9CQUFBIn0=
|