@kando-env/kando-ui 1.2.316-alpha.0 → 1.2.316-alpha.1

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.
@@ -5,11 +5,16 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.Breadcrumbs = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
8
10
  var _styledComponents = _interopRequireDefault(require("styled-components"));
9
11
  var _react = _interopRequireDefault(require("react"));
10
12
  var _StyledLink = require("components/Links/StyledLink/StyledLink");
11
13
  var _rightArrowLight = require("@svgr/webpack?-svgo!./right-arrow-light.svg");
12
14
  var _Analytics = require("utilities/Analytics");
15
+ var _WWTPDashboardSlice = require("store/WWTPDashboard/WWTPDashboardSlice");
16
+ var _reactRedux = require("react-redux");
17
+ var _Widget = require("pages/DashboardMap/Widget");
13
18
  var Breadcrumbs = function Breadcrumbs(_ref) {
14
19
  var parts = _ref.parts;
15
20
  var cleanEmptyCrumbs = function cleanEmptyCrumbs(parts) {
@@ -17,6 +22,65 @@ var Breadcrumbs = function Breadcrumbs(_ref) {
17
22
  return el && (typeof el === 'string' || el['name'] !== undefined);
18
23
  });
19
24
  };
25
+ var dispatch = (0, _reactRedux.useDispatch)();
26
+ var _useSelector = (0, _reactRedux.useSelector)(function (state) {
27
+ return state.global_data;
28
+ }),
29
+ waterAuthorityId = _useSelector.waterAuthorityId;
30
+ var locale = (0, _reactRedux.useSelector)(function (state) {
31
+ return state.nav_context_data.navContext.locale;
32
+ });
33
+ var points = (0, _reactRedux.useSelector)(function (state) {
34
+ return state.points_data.items;
35
+ });
36
+ var areas = (0, _reactRedux.useSelector)(function (state) {
37
+ return state.areas_data.newAreas;
38
+ });
39
+ var changeFocusedArea = /*#__PURE__*/function () {
40
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(selectedPointId) {
41
+ var point, listItems, response, focusedPoint;
42
+ return _regenerator.default.wrap(function _callee$(_context) {
43
+ while (1) {
44
+ switch (_context.prev = _context.next) {
45
+ case 0:
46
+ point = points.find(function (point) {
47
+ return point.id === selectedPointId;
48
+ });
49
+ _context.next = 3;
50
+ return fetch("/api_ui/wwtp_page/site/".concat(point === null || point === void 0 ? void 0 : point.id, "/capacity?locale=").concat(locale, "&water_authority_id=").concat(waterAuthorityId));
51
+ case 3:
52
+ response = _context.sent;
53
+ if (!response.ok) {
54
+ _context.next = 10;
55
+ break;
56
+ }
57
+ _context.next = 7;
58
+ return response.json();
59
+ case 7:
60
+ listItems = _context.sent;
61
+ _context.next = 11;
62
+ break;
63
+ case 10:
64
+ console.warn("HTTP error! for point: ".concat(point, ", status: "), response.status);
65
+ case 11:
66
+ focusedPoint = (0, _Widget.updatePoint)({
67
+ point: point,
68
+ listItems: listItems.data,
69
+ areas: areas,
70
+ points: points
71
+ });
72
+ dispatch((0, _WWTPDashboardSlice.setFocusedArea)(focusedPoint));
73
+ case 13:
74
+ case "end":
75
+ return _context.stop();
76
+ }
77
+ }
78
+ }, _callee);
79
+ }));
80
+ return function changeFocusedArea(_x) {
81
+ return _ref2.apply(this, arguments);
82
+ };
83
+ }();
20
84
  parts = cleanEmptyCrumbs(parts);
21
85
  return /*#__PURE__*/_react.default.createElement(Container, null, /*#__PURE__*/_react.default.createElement("div", {
22
86
  className: "tab"
@@ -32,11 +96,27 @@ var Breadcrumbs = function Breadcrumbs(_ref) {
32
96
  className: "tab".concat(index === parts.length - 2 ? ' last' : '')
33
97
  }, typeof part === 'string' ? part : /*#__PURE__*/_react.default.createElement(_StyledLink.Link, {
34
98
  to: part.link,
35
- onClick: function onClick() {
36
- (0, _Analytics.analyticsTrack)('Breadcrumbs clicked', {
37
- name: part.name
38
- });
39
- }
99
+ onClick: /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
100
+ return _regenerator.default.wrap(function _callee2$(_context2) {
101
+ while (1) {
102
+ switch (_context2.prev = _context2.next) {
103
+ case 0:
104
+ (0, _Analytics.analyticsTrack)('Breadcrumbs clicked', {
105
+ name: part.name
106
+ });
107
+ if (!part.point_id) {
108
+ _context2.next = 4;
109
+ break;
110
+ }
111
+ _context2.next = 4;
112
+ return changeFocusedArea(part.point_id);
113
+ case 4:
114
+ case "end":
115
+ return _context2.stop();
116
+ }
117
+ }
118
+ }, _callee2);
119
+ }))
40
120
  }, part.name)));
41
121
  }));
42
122
  };
@@ -45,4 +125,4 @@ var Container = _styledComponents.default.div.withConfig({
45
125
  displayName: "Breadcrumbs__Container",
46
126
  componentId: "sc-12kmapt-0"
47
127
  })(["display:flex;font-size:14px;font-weight:300;align-items:center;> .tab,.arrow{margin-right:10px;color:#1e1e1e;a{color:#1e1e1e;}&.last{font-weight:600;}}> .arrow{transform:rotate(-90deg);}[dir='rtl'] &{> .arrow{transform:rotate(90deg);}}"]);
48
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9TdHlsZWRMaW5rIiwiX3JpZ2h0QXJyb3dMaWdodCIsIl9BbmFseXRpY3MiLCJCcmVhZGNydW1icyIsIl9yZWYiLCJwYXJ0cyIsImNsZWFuRW1wdHlDcnVtYnMiLCJmaWx0ZXIiLCJlbCIsInVuZGVmaW5lZCIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiQ29udGFpbmVyIiwiY2xhc3NOYW1lIiwiTGluayIsInRvIiwibGluayIsIm5hbWUiLCJzbGljZSIsIm1hcCIsInBhcnQiLCJpbmRleCIsIkZyYWdtZW50IiwiUmVhY3RDb21wb25lbnQiLCJrZXkiLCJoZWlnaHQiLCJ3aWR0aCIsImNvbmNhdCIsImxlbmd0aCIsIm9uQ2xpY2siLCJhbmFseXRpY3NUcmFjayIsImV4cG9ydHMiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hlYWRlci9JbmZvQmFyL0JyZWFkY3J1bWJzL0JyZWFkY3J1bWJzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTGluayB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0xpbmtzL1N0eWxlZExpbmsvU3R5bGVkTGluayc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIFJpZ2h0QXJyb3cgfSBmcm9tICcuL3JpZ2h0LWFycm93LWxpZ2h0LnN2Zyc7XG5pbXBvcnQgeyBhbmFseXRpY3NUcmFjayB9IGZyb20gJ3NyYy91dGlsaXRpZXMvQW5hbHl0aWNzJztcblxuZXhwb3J0IGNvbnN0IEJyZWFkY3J1bWJzOiBSZWFjdC5GQzx7XG4gIHBhcnRzOiAoeyBsaW5rOiBzdHJpbmc7IG5hbWU6IHN0cmluZyB9IHwgc3RyaW5nKVtdO1xufT4gPSAoeyBwYXJ0cyB9KSA9PiB7XG4gIGNvbnN0IGNsZWFuRW1wdHlDcnVtYnMgPSAocGFydHMpID0+IHtcbiAgICByZXR1cm4gcGFydHMuZmlsdGVyKChlbCkgPT4ge1xuICAgICAgcmV0dXJuIGVsICYmICh0eXBlb2YgZWwgPT09ICdzdHJpbmcnIHx8IGVsWyduYW1lJ10gIT09IHVuZGVmaW5lZCk7XG4gICAgfSk7XG4gIH07XG5cbiAgcGFydHMgPSBjbGVhbkVtcHR5Q3J1bWJzKHBhcnRzKTtcblxuICByZXR1cm4gKFxuICAgIDxDb250YWluZXI+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInRhYlwiPlxuICAgICAgICB7cGFydHNbMF0gJiZcbiAgICAgICAgICAodHlwZW9mIHBhcnRzWzBdID09PSAnc3RyaW5nJyA/IChcbiAgICAgICAgICAgIHBhcnRzWzBdXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxMaW5rIHRvPXtwYXJ0c1swXS5saW5rIHx8ICcvJ30+e3BhcnRzWzBdLm5hbWV9PC9MaW5rPlxuICAgICAgICAgICkpfVxuICAgICAgPC9kaXY+XG5cbiAgICAgIHtwYXJ0cy5zbGljZSgxKS5tYXAoKHBhcnQsIGluZGV4KSA9PiAoXG4gICAgICAgIDw+XG4gICAgICAgICAgPFJpZ2h0QXJyb3cga2V5PXtpbmRleH0gY2xhc3NOYW1lPVwiYXJyb3dcIiBoZWlnaHQ9XCI5cHhcIiB3aWR0aD1cIjZweFwiIC8+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2B0YWIke2luZGV4ID09PSBwYXJ0cy5sZW5ndGggLSAyID8gJyBsYXN0JyA6ICcnfWB9PlxuICAgICAgICAgICAge3R5cGVvZiBwYXJ0ID09PSAnc3RyaW5nJyA/IChcbiAgICAgICAgICAgICAgcGFydFxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPExpbmtcbiAgICAgICAgICAgICAgICB0bz17cGFydC5saW5rfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGFuYWx5dGljc1RyYWNrKCdCcmVhZGNydW1icyBjbGlja2VkJywge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBwYXJ0Lm5hbWUsXG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3BhcnQubmFtZX1cbiAgICAgICAgICAgICAgPC9MaW5rPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC8+XG4gICAgICApKX1cbiAgICA8L0NvbnRhaW5lcj5cbiAgKTtcbn07XG5cbmNvbnN0IENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gID4gLnRhYixcbiAgLmFycm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgY29sb3I6ICMxZTFlMWU7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjMWUxZTFlO1xuICAgIH1cbiAgICAmLmxhc3Qge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cblxuICA+IC5hcnJvdyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgfVxuICBbZGlyPSdydGwnXSAmIHtcbiAgICA+IC5hcnJvdyB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgfVxuICB9XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFdBQUEsR0FBQUQsT0FBQTtBQUFrRSxJQUFBRSxnQkFBQSxHQUFBRixPQUFBO0FBR2xFLElBQUFHLFVBQUEsR0FBQUgsT0FBQTtBQUVPLElBQU1JLFdBRVgsR0FBRyxTQUZR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
128
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9TdHlsZWRMaW5rIiwiX3JpZ2h0QXJyb3dMaWdodCIsIl9BbmFseXRpY3MiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX3JlYWN0UmVkdXgiLCJfV2lkZ2V0IiwiQnJlYWRjcnVtYnMiLCJfcmVmIiwicGFydHMiLCJjbGVhbkVtcHR5Q3J1bWJzIiwiZmlsdGVyIiwiZWwiLCJ1bmRlZmluZWQiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwiX3VzZVNlbGVjdG9yIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImdsb2JhbF9kYXRhIiwid2F0ZXJBdXRob3JpdHlJZCIsImxvY2FsZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJuYXZDb250ZXh0IiwicG9pbnRzIiwicG9pbnRzX2RhdGEiLCJpdGVtcyIsImFyZWFzIiwiYXJlYXNfZGF0YSIsIm5ld0FyZWFzIiwiY2hhbmdlRm9jdXNlZEFyZWEiLCJfcmVmMiIsIl9hc3luY1RvR2VuZXJhdG9yMiIsImRlZmF1bHQiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsInNlbGVjdGVkUG9pbnRJZCIsInBvaW50IiwibGlzdEl0ZW1zIiwicmVzcG9uc2UiLCJmb2N1c2VkUG9pbnQiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiZmluZCIsImlkIiwiZmV0Y2giLCJjb25jYXQiLCJzZW50Iiwib2siLCJqc29uIiwiY29uc29sZSIsIndhcm4iLCJzdGF0dXMiLCJ1cGRhdGVQb2ludCIsImRhdGEiLCJzZXRGb2N1c2VkQXJlYSIsInN0b3AiLCJfeCIsImFwcGx5IiwiYXJndW1lbnRzIiwiY3JlYXRlRWxlbWVudCIsIkNvbnRhaW5lciIsImNsYXNzTmFtZSIsIkxpbmsiLCJ0byIsImxpbmsiLCJuYW1lIiwic2xpY2UiLCJtYXAiLCJwYXJ0IiwiaW5kZXgiLCJGcmFnbWVudCIsIlJlYWN0Q29tcG9uZW50Iiwia2V5IiwiaGVpZ2h0Iiwid2lkdGgiLCJsZW5ndGgiLCJvbkNsaWNrIiwiX2NhbGxlZTIiLCJfY2FsbGVlMiQiLCJfY29udGV4dDIiLCJhbmFseXRpY3NUcmFjayIsInBvaW50X2lkIiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSGVhZGVyL0luZm9CYXIvQnJlYWRjcnVtYnMvQnJlYWRjcnVtYnMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvTGlua3MvU3R5bGVkTGluay9TdHlsZWRMaW5rJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgUmlnaHRBcnJvdyB9IGZyb20gJy4vcmlnaHQtYXJyb3ctbGlnaHQuc3ZnJztcbmltcG9ydCB7IGFuYWx5dGljc1RyYWNrIH0gZnJvbSAnc3JjL3V0aWxpdGllcy9BbmFseXRpY3MnO1xuaW1wb3J0IHsgc2V0Rm9jdXNlZEFyZWEgfSBmcm9tICdzcmMvc3RvcmUvV1dUUERhc2hib2FyZC9XV1RQRGFzaGJvYXJkU2xpY2UnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXBkYXRlUG9pbnQgfSBmcm9tICdzcmMvcGFnZXMvRGFzaGJvYXJkTWFwL1dpZGdldCc7XG5cbmV4cG9ydCBjb25zdCBCcmVhZGNydW1iczogUmVhY3QuRkM8e1xuICBwYXJ0czogKHsgbGluazogc3RyaW5nOyBuYW1lOiBzdHJpbmc7IHBvaW50X2lkPzogbnVtYmVyIH0gfCBzdHJpbmcpW107XG59PiA9ICh7IHBhcnRzIH0pID0+IHtcbiAgY29uc3QgY2xlYW5FbXB0eUNydW1icyA9IChwYXJ0cykgPT4ge1xuICAgIHJldHVybiBwYXJ0cy5maWx0ZXIoKGVsKSA9PiB7XG4gICAgICByZXR1cm4gZWwgJiYgKHR5cGVvZiBlbCA9PT0gJ3N0cmluZycgfHwgZWxbJ25hbWUnXSAhPT0gdW5kZWZpbmVkKTtcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHsgd2F0ZXJBdXRob3JpdHlJZCB9ID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZS5nbG9iYWxfZGF0YSk7XG4gIGNvbnN0IGxvY2FsZSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZSxcbiAgKTtcbiAgY29uc3QgcG9pbnRzID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZS5wb2ludHNfZGF0YS5pdGVtcyk7XG4gIGNvbnN0IGFyZWFzID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZS5hcmVhc19kYXRhLm5ld0FyZWFzKTtcblxuICBjb25zdCBjaGFuZ2VGb2N1c2VkQXJlYSA9IGFzeW5jIChzZWxlY3RlZFBvaW50SWQpID0+IHtcbiAgICBjb25zdCBwb2ludCA9IHBvaW50cy5maW5kKChwb2ludCkgPT4gcG9pbnQuaWQgPT09IHNlbGVjdGVkUG9pbnRJZCk7XG4gICAgbGV0IGxpc3RJdGVtcztcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFxuICAgICAgYC9hcGlfdWkvd3d0cF9wYWdlL3NpdGUvJHtwb2ludD8uaWR9L2NhcGFjaXR5P2xvY2FsZT0ke2xvY2FsZX0md2F0ZXJfYXV0aG9yaXR5X2lkPSR7d2F0ZXJBdXRob3JpdHlJZH1gLFxuICAgICk7XG5cbiAgICBpZiAocmVzcG9uc2Uub2spIHtcbiAgICAgIGxpc3RJdGVtcyA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgSFRUUCBlcnJvciEgZm9yIHBvaW50OiAke3BvaW50fSwgc3RhdHVzOiBgLFxuICAgICAgICByZXNwb25zZS5zdGF0dXMsXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGZvY3VzZWRQb2ludCA9IHVwZGF0ZVBvaW50KHtcbiAgICAgIHBvaW50LFxuICAgICAgbGlzdEl0ZW1zOiBsaXN0SXRlbXMuZGF0YSxcbiAgICAgIGFyZWFzLFxuICAgICAgcG9pbnRzLFxuICAgIH0pO1xuICAgIGRpc3BhdGNoKHNldEZvY3VzZWRBcmVhKGZvY3VzZWRQb2ludCkpO1xuICB9O1xuXG4gIHBhcnRzID0gY2xlYW5FbXB0eUNydW1icyhwYXJ0cyk7XG5cbiAgcmV0dXJuIChcbiAgICA8Q29udGFpbmVyPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0YWJcIj5cbiAgICAgICAge3BhcnRzWzBdICYmXG4gICAgICAgICAgKHR5cGVvZiBwYXJ0c1swXSA9PT0gJ3N0cmluZycgPyAoXG4gICAgICAgICAgICBwYXJ0c1swXVxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICA8TGluayB0bz17cGFydHNbMF0ubGluayB8fCAnLyd9PntwYXJ0c1swXS5uYW1lfTwvTGluaz5cbiAgICAgICAgICApKX1cbiAgICAgIDwvZGl2PlxuXG4gICAgICB7cGFydHMuc2xpY2UoMSkubWFwKChwYXJ0LCBpbmRleCkgPT4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxSaWdodEFycm93IGtleT17aW5kZXh9IGNsYXNzTmFtZT1cImFycm93XCIgaGVpZ2h0PVwiOXB4XCIgd2lkdGg9XCI2cHhcIiAvPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtgdGFiJHtpbmRleCA9PT0gcGFydHMubGVuZ3RoIC0gMiA/ICcgbGFzdCcgOiAnJ31gfT5cbiAgICAgICAgICAgIHt0eXBlb2YgcGFydCA9PT0gJ3N0cmluZycgPyAoXG4gICAgICAgICAgICAgIHBhcnRcbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxMaW5rXG4gICAgICAgICAgICAgICAgdG89e3BhcnQubGlua31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXthc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBhbmFseXRpY3NUcmFjaygnQnJlYWRjcnVtYnMgY2xpY2tlZCcsIHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogcGFydC5uYW1lLFxuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICBpZiAocGFydC5wb2ludF9pZCkge1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCBjaGFuZ2VGb2N1c2VkQXJlYShwYXJ0LnBvaW50X2lkKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3BhcnQubmFtZX1cbiAgICAgICAgICAgICAgPC9MaW5rPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC8+XG4gICAgICApKX1cbiAgICA8L0NvbnRhaW5lcj5cbiAgKTtcbn07XG5cbmNvbnN0IENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gID4gLnRhYixcbiAgLmFycm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgY29sb3I6ICMxZTFlMWU7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjMWUxZTFlO1xuICAgIH1cbiAgICAmLmxhc3Qge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cblxuICA+IC5hcnJvdyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgfVxuICBbZGlyPSdydGwnXSAmIHtcbiAgICA+IC5hcnJvdyB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4g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
@@ -60,9 +60,11 @@ var InfoBar = function InfoBar(_ref) {
60
60
  return state.wwtp_dashboard;
61
61
  }),
62
62
  focusedArea = _useSelector2.focusedArea;
63
- var dashboardName = (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.is_virtual) ? 'Varea' : 'Area';
63
+ var isArea = focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.area_id;
64
+ var dashboardName = isArea ? (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.is_virtual) ? 'Varea' : 'Area' : 'Site';
64
65
  var breadcrumbsUrl = (0, _urls.urls)({
65
- areaID: focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.area_id
66
+ areaID: focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.area_id,
67
+ siteID: focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.id
66
68
  }).dashboard[dashboardName].name;
67
69
  var fetchAreaData = /*#__PURE__*/function () {
68
70
  var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(url) {
@@ -191,4 +193,4 @@ var NavItem = (0, _styledComponents.default)(_reactBootstrap.Nav.Link).withConfi
191
193
  is_active = _ref6.is_active;
192
194
  return is_active ? theme.colorScheme.natural.n90 : theme.colorScheme.natural.n60;
193
195
  });
194
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfQnJlYWRjcnVtYnMiLCJfU2VhcmNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9yZWFjdEJvb3RzdHJhcCIsIl9OYXZiYXIiLCJfVGltZUZpbHRlciIsIl9kb3RzIiwiX1RvcE5hdmJhciIsIl9BbmFseXRpY3MiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdEkxOG5leHQiLCJfdXNlTmF2Q29udGV4dDIiLCJfdXNlUXVlcnlVUkwiLCJfcmVhY3RSb3V0ZXJEb20iLCJfdXJscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiY2xhc3NOYW1lc1RhYnMiLCJkYXNoYm9hcmQiLCJtYXBfYWN0aXZlIiwibWFwIiwiZGFzaGJvYXJkX2FjdGl2ZSIsIkluZm9CYXIiLCJfcmVmIiwicGFydHMiLCJfcmVmJG1hcERpc2FibGUiLCJtYXBEaXNhYmxlIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwicGFydExpc3QiLCJzZXRQYXJ0TGlzdCIsInF1ZXJ5VVJMIiwidXNlUXVlcnlVUkwiLCJhY3RpdmVUYWIiLCJfdXNlU2VsZWN0b3IiLCJ1c2VTZWxlY3RvciIsIl9yZWYyIiwiZ2xvYmFsX2RhdGEiLCJ3YXRlckF1dGhvcml0eU5hbWUiLCJfdXNlTmF2Q29udGV4dCIsInVzZU5hdkNvbnRleHQiLCJpc1J0bCIsImhpc3RvcnkiLCJ1c2VIaXN0b3J5IiwiX3VzZVNlbGVjdG9yMiIsInN0YXRlIiwid3d0cF9kYXNoYm9hcmQiLCJmb2N1c2VkQXJlYSIsImRhc2hib2FyZE5hbWUiLCJpc192aXJ0dWFsIiwiYnJlYWRjcnVtYnNVcmwiLCJ1cmxzIiwiYXJlYUlEIiwiYXJlYV9pZCIsIm5hbWUiLCJmZXRjaEFyZWFEYXRhIiwiX3JlZjMiLCJfYXN5bmNUb0dlbmVyYXRvcjIiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsInVybCIsInJlc3BvbnNlIiwiZGF0YSIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJmZXRjaCIsInNlbnQiLCJvayIsImpzb24iLCJsaW5rIiwiY29uY2F0IiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsImJyZWFkY3J1bWJzIiwiRXJyb3IiLCJzdGF0dXMiLCJzdG9wIiwiX3giLCJhcHBseSIsImFyZ3VtZW50cyIsInVzZUVmZmVjdCIsImNhdGNoIiwiZSIsImNvbnNvbGUiLCJlcnJvciIsIm1lc3NhZ2UiLCJzZXROYXYiLCJuYXZLZXkiLCJhbmFseXRpY3NUcmFjayIsInNlbGVjdGlvbiIsInBhZ2VfbmFtZSIsIndpbmRvdyIsImxvY2F0aW9uIiwicGF0aG5hbWUiLCJ1dGlsaXR5X25hbWUiLCJwdXNoIiwiY3JlYXRlRWxlbWVudCIsImV4cGFuZCIsImNsYXNzTmFtZSIsIlRvZ2dsZSIsIlJlYWN0Q29tcG9uZW50IiwiQ29sIiwibWQiLCJzbSIsInhzIiwiQ29sbGFwc2UiLCJpZCIsIk5hdiIsIlRleHQiLCJCcmVhZGNydW1icyIsIk5hdkl0ZW0iLCJpc19hY3RpdmUiLCJvbkNsaWNrIiwiZGlzYWJsZWQiLCJNYXBTdmciLCJNYXBBY3RpdmVTdmciLCJUcmFucyIsImkxOG5LZXkiLCJwbGFjZW1lbnQiLCJEYXNoYm9hcmRTdmciLCJEYXNoYm9hcmRBY3RpdmVTdmciLCJleHBvcnRzIiwic3R5bGVkIiwiTGluayIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwiX3JlZjQiLCJ0aGVtZSIsImNvbG9yU2NoZW1lIiwibmF0dXJhbCIsIm45MCIsIm42MCIsIl9yZWY1IiwicHJpbWFyeSIsInAxIiwiX3JlZjYiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9IZWFkZXIvSW5mb0Jhci9JbmZvQmFyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEJyZWFkY3J1bWJzIH0gZnJvbSAnLi9CcmVhZGNydW1icy9CcmVhZGNydW1icyc7XG5pbXBvcnQgU2VhcmNoIGZyb20gJy4vU2VhcmNoJztcbmltcG9ydCB7IENvbCwgTmF2IH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCBOYXZiYXIgZnJvbSAncmVhY3QtYm9vdHN0cmFwL05hdmJhcic7XG5pbXBvcnQgVGltZUZpbHRlciBmcm9tICcuL1RpbWVGaWx0ZXInO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgVG9nZ2xlSWNvblN2ZyB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvMy1kb3RzLnN2Zyc7XG5pbXBvcnQge1xuICBEYXNoYm9hcmRBY3RpdmVTdmcsXG4gIERhc2hib2FyZFN2ZyxcbiAgTWFwQWN0aXZlU3ZnLFxuICBNYXBTdmcsXG59IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvVG9wTmF2YmFyJztcbmltcG9ydCB7IGFuYWx5dGljc1RyYWNrIH0gZnJvbSAnc3JjL3V0aWxpdGllcy9BbmFseXRpY3MnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBUcmFucyB9IGZyb20gJ3JlYWN0LWkxOG5leHQnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyB1c2VOYXZDb250ZXh0IH0gZnJvbSAnc3JjL2hvb2tzL3VzZU5hdkNvbnRleHQnO1xuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJ3NyYy9ob29rcy91c2VRdWVyeVVSTCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5IH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyB1cmxzIH0gZnJvbSAnc3JjL3V0aWxpdGllcy91cmxzJztcblxuaW50ZXJmYWNlIEluZm9CYXJQcm9wcyB7XG4gIHBhcnRzOiAoeyBsaW5rOiBzdHJpbmc7IG5hbWU6IHN0cmluZyB9IHwgc3RyaW5nKVtdO1xuICBtYXBEaXNhYmxlPzogYm9vbGVhbjtcbn1cbmNvbnN0IGNsYXNzTmFtZXNUYWJzID0ge1xuICBkYXNoYm9hcmQ6IHsgZGFzaGJvYXJkOiAnZC1ub25lJywgbWFwX2FjdGl2ZTogJ2Qtbm9uZScgfSxcbiAgbWFwOiB7IGRhc2hib2FyZF9hY3RpdmU6ICdkLW5vbmUnLCBtYXA6ICdkLW5vbmUnIH0sXG59O1xuZXhwb3J0IGNvbnN0IEluZm9CYXI6IFJlYWN0LkZDPEluZm9CYXJQcm9wcz4gPSAoe1xuICBwYXJ0cyxcbiAgbWFwRGlzYWJsZSA9IHRydWUsXG59KSA9PiB7XG4gIGNvbnN0IFtwYXJ0TGlzdCwgc2V0UGFydExpc3RdID0gdXNlU3RhdGUocGFydHMpO1xuICBjb25zdCBxdWVyeVVSTCA9IHVzZVF1ZXJ5VVJMKCk7XG4gIGNvbnN0IGFjdGl2ZVRhYiA9IG1hcERpc2FibGVcbiAgICA/ICdkYXNoYm9hcmQnXG4gICAgOiBxdWVyeVVSTC5nZXQoJ3ZpZXcnKSB8fCAnZGFzaGJvYXJkJztcbiAgY29uc3QgeyB3YXRlckF1dGhvcml0eU5hbWUgfSA9IHVzZVNlbGVjdG9yKCh7IGdsb2JhbF9kYXRhIH0pID0+IGdsb2JhbF9kYXRhKTtcbiAgY29uc3QgeyBpc1J0bCB9ID0gdXNlTmF2Q29udGV4dCgpO1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCB7IGZvY3VzZWRBcmVhIH0gPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlLnd3dHBfZGFzaGJvYXJkKTtcbiAgY29uc3QgZGFzaGJvYXJkTmFtZSA9IGZvY3VzZWRBcmVhPy5pc192aXJ0dWFsID8gJ1ZhcmVhJyA6ICdBcmVhJztcbiAgY29uc3QgYnJlYWRjcnVtYnNVcmwgPSB1cmxzKHsgYXJlYUlEOiBmb2N1c2VkQXJlYT8uYXJlYV9pZCB9KS5kYXNoYm9hcmRbXG4gICAgZGFzaGJvYXJkTmFtZVxuICBdLm5hbWU7XG5cbiAgY29uc3QgZmV0Y2hBcmVhRGF0YSA9IGFzeW5jICh1cmw6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKTtcbiAgICBpZiAocmVzcG9uc2Uub2spIHtcbiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG4gICAgICBzZXRQYXJ0TGlzdChbXG4gICAgICAgIHtcbiAgICAgICAgICBsaW5rOiAnL2Rhc2hib2FyZF92Mi9pbmRleCcsXG4gICAgICAgICAgbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgICAgICB9LFxuICAgICAgICAuLi5kYXRhLmRhdGEuYnJlYWRjcnVtYnMsXG4gICAgICBdKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBIVFRQIGVycm9yISBzdGF0dXM6ICR7cmVzcG9uc2Uuc3RhdHVzfWApO1xuICAgIH1cbiAgfTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZm9jdXNlZEFyZWEpIHtcbiAgICAgIGZldGNoQXJlYURhdGEoYnJlYWRjcnVtYnNVcmwpLmNhdGNoKChlKSA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ1JlcXVlc3QgZXJyb3I6ICcgKyBlLm1lc3NhZ2UpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFBhcnRMaXN0KHBhcnRzKTtcbiAgICB9XG4gIH0sIFtmb2N1c2VkQXJlYV0pO1xuXG4gIGNvbnN0IHNldE5hdiA9IChuYXZLZXkpID0+IHtcbiAgICBpZiAoYWN0aXZlVGFiID09PSBuYXZLZXkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgcXVlcnlVUkwuc2V0KCd2aWV3JywgbmF2S2V5KTtcbiAgICBhbmFseXRpY3NUcmFjaygnQ2xpY2sgdG9wIGJhciBuYXYgc3dpdGNoJywge1xuICAgICAgc2VsZWN0aW9uOiBuYXZLZXksXG4gICAgICBwYWdlX25hbWU6IHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSxcbiAgICAgIHV0aWxpdHlfbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIH0pO1xuICAgIGhpc3RvcnkucHVzaChgJHt3aW5kb3cubG9jYXRpb24ucGF0aG5hbWV9PyR7cXVlcnlVUkx9YCk7XG4gIH07XG4gIHJldHVybiAoXG4gICAgPE5hdmJhclxuICAgICAgZXhwYW5kPVwibWRcIlxuICAgICAgY2xhc3NOYW1lPVwiYmctd2hpdGUgbXQtNSBwdC0zIHBiLTAgcC1tZC0wIG10LW1kLTEgbXktbWQtMCBib3JkZXItYm90dG9tIGJvcmRlci10b3BcIlxuICAgID5cbiAgICAgIDxOYXZiYXIuVG9nZ2xlXG4gICAgICAgIGFyaWEtY29udHJvbHM9XCJiYXNpYy1uYXZiYXItbmF2XCJcbiAgICAgICAgY2xhc3NOYW1lPXsncC0yIG1lLTIgbXktYXV0byBib3JkZXItMCd9XG4gICAgICA+XG4gICAgICAgIDxUb2dnbGVJY29uU3ZnIC8+XG4gICAgICA8L05hdmJhci5Ub2dnbGU+XG4gICAgICA8Q29sIG1kPXsnYXV0byd9IHNtPXsnYXV0byd9IHhzPXsnYXV0byd9PlxuICAgICAgICA8TmF2YmFyLkNvbGxhcHNlIGlkPVwiYmFzaWMtbmF2YmFyLW5hdlwiPlxuICAgICAgICAgIDxOYXZcbiAgICAgICAgICAgIGNsYXNzTmFtZT17YCR7XG4gICAgICAgICAgICAgIGlzUnRsID8gJ2JvcmRlci1sZWZ0JyA6ICdib3JkZXItcmlnaHQnXG4gICAgICAgICAgICB9IHB5LW1kLTEgbXgtbWQtMCBweC0xYH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8TmF2YmFyLlRleHQgY2xhc3NOYW1lPXsnbWUtMid9PlxuICAgICAgICAgICAgICA8U2VhcmNoIC8+XG4gICAgICAgICAgICA8L05hdmJhci5UZXh0PlxuICAgICAgICAgICAgPE5hdmJhci5UZXh0IGNsYXNzTmFtZT17J21lLTInfT5cbiAgICAgICAgICAgICAgPFRpbWVGaWx0ZXIgLz5cbiAgICAgICAgICAgIDwvTmF2YmFyLlRleHQ+XG4gICAgICAgICAgPC9OYXY+XG4gICAgICAgIDwvTmF2YmFyLkNvbGxhcHNlPlxuICAgICAgPC9Db2w+XG4gICAgICB7cGFydExpc3QgJiYgKFxuICAgICAgICA8TmF2YmFyLlRleHRcbiAgICAgICAgICBjbGFzc05hbWU9e2BkLW5vbmUgZC1tZC1ibG9jayBteS1hdXRvIG14LTEgJHtcbiAgICAgICAgICAgIGlzUnRsID8gJ21sLWF1dG8nIDogJ21yLWF1dG8nXG4gICAgICAgICAgfWB9XG4gICAgICAgID5cbiAgICAgICAgICA8QnJlYWRjcnVtYnMgcGFydHM9e3BhcnRMaXN0fSAvPlxuICAgICAgICA8L05hdmJhci5UZXh0PlxuICAgICAgKX1cbiAgICAgIDxOYXZJdGVtXG4gICAgICAgIGlzX2FjdGl2ZT17YWN0aXZlVGFiID09PSAnbWFwJ31cbiAgICAgICAgb25DbGljaz17KCkgPT4gc2V0TmF2KCdtYXAnKX1cbiAgICAgICAgZGlzYWJsZWQ9e21hcERpc2FibGV9XG4gICAgICAgIGNsYXNzTmFtZT17J21iLW4xJ31cbiAgICAgID5cbiAgICAgICAgPE1hcFN2ZyBjbGFzc05hbWU9e2Ake2NsYXNzTmFtZXNUYWJzW2FjdGl2ZVRhYl0ubWFwfSBtZS0yYH0gLz5cbiAgICAgICAgPE1hcEFjdGl2ZVN2Z1xuICAgICAgICAgIGNsYXNzTmFtZT17YCR7Y2xhc3NOYW1lc1RhYnNbYWN0aXZlVGFiXS5tYXBfYWN0aXZlfSBtZS0yYH1cbiAgICAgICAgLz5cbiAgICAgICAgPFRyYW5zIGkxOG5LZXk9eydoZWFkZXIubWFwJ30gLz5cbiAgICAgIDwvTmF2SXRlbT5cbiAgICAgIDxOYXZJdGVtXG4gICAgICAgIHBsYWNlbWVudD1cImVuZFwiXG4gICAgICAgIGlzX2FjdGl2ZT17YWN0aXZlVGFiID09PSAnZGFzaGJvYXJkJ31cbiAgICAgICAgZGlzYWJsZWQ9e21hcERpc2FibGV9XG4gICAgICAgIGNsYXNzTmFtZT17J21iLW4xJ31cbiAgICAgICAgb25DbGljaz17KCkgPT4gc2V0TmF2KCdkYXNoYm9hcmQnKX1cbiAgICAgID5cbiAgICAgICAgPERhc2hib2FyZFN2Z1xuICAgICAgICAgIGNsYXNzTmFtZT17YCR7Y2xhc3NOYW1lc1RhYnNbYWN0aXZlVGFiXS5kYXNoYm9hcmR9IG1lLTJgfVxuICAgICAgICAvPlxuICAgICAgICA8RGFzaGJvYXJkQWN0aXZlU3ZnXG4gICAgICAgICAgY2xhc3NOYW1lPXtgJHtjbGFzc05hbWVzVGFic1thY3RpdmVUYWJdLmRhc2hib2FyZF9hY3RpdmV9IG1lLTJgfVxuICAgICAgICAvPlxuICAgICAgICA8VHJhbnMgaTE4bktleT17J2hlYWRlci5kYXNoYm9hcmQnfSAvPlxuICAgICAgPC9OYXZJdGVtPlxuICAgIDwvTmF2YmFyPlxuICApO1xufTtcblxuY29uc3QgTmF2SXRlbSA9IHN0eWxlZChOYXYuTGluayk8eyBpc19hY3RpdmU6IGJvb2xlYW4gfT5gXG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogMTJweDtcbiAgY29sb3I6ICR7KHsgdGhlbWUsIGlzX2FjdGl2ZSB9KSA9PlxuICAgIGlzX2FjdGl2ZSA/IHRoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjkwIDogdGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjB9O1xuICAkeyh7IHRoZW1lLCBpc19hY3RpdmUgfSkgPT5cbiAgICBpc19hY3RpdmUgJiYgYGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAke3RoZW1lLmNvbG9yU2NoZW1lLnByaW1hcnkucDF9O2B9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkeyh7IHRoZW1lLCBpc19hY3RpdmUgfSkgPT5cbiAgICAgIGlzX2FjdGl2ZVxuICAgICAgICA/IHRoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjkwXG4gICAgICAgIDogdGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjB9O1xuICB9XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsWUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsT0FBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksZUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssT0FBQSxHQUFBRixzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQU0sV0FBQSxHQUFBSCxzQkFBQSxDQUFBSCxPQUFBO0FBQXNDLElBQUFPLEtBQUEsR0FBQVAsT0FBQTtBQUV0QyxJQUFBUSxVQUFBLEdBQUFSLE9BQUE7QUFNQSxJQUFBUyxVQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxXQUFBLEdBQUFWLE9BQUE7QUFDQSxJQUFBVyxhQUFBLEdBQUFYLE9BQUE7QUFFQSxJQUFBWSxlQUFBLEdBQUFaLE9BQUE7QUFDQSxJQUFBYSxZQUFBLEdBQUFWLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBYyxlQUFBLEdBQUFkLE9BQUE7QUFDQSxJQUFBZSxLQUFBLEdBQUFmLE9BQUE7QUFBMEMsU0FBQWdCLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBbEIsd0JBQUFzQixHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFB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
196
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfQnJlYWRjcnVtYnMiLCJfU2VhcmNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9yZWFjdEJvb3RzdHJhcCIsIl9OYXZiYXIiLCJfVGltZUZpbHRlciIsIl9kb3RzIiwiX1RvcE5hdmJhciIsIl9BbmFseXRpY3MiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdEkxOG5leHQiLCJfdXNlTmF2Q29udGV4dDIiLCJfdXNlUXVlcnlVUkwiLCJfcmVhY3RSb3V0ZXJEb20iLCJfdXJscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiY2xhc3NOYW1lc1RhYnMiLCJkYXNoYm9hcmQiLCJtYXBfYWN0aXZlIiwibWFwIiwiZGFzaGJvYXJkX2FjdGl2ZSIsIkluZm9CYXIiLCJfcmVmIiwicGFydHMiLCJfcmVmJG1hcERpc2FibGUiLCJtYXBEaXNhYmxlIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwicGFydExpc3QiLCJzZXRQYXJ0TGlzdCIsInF1ZXJ5VVJMIiwidXNlUXVlcnlVUkwiLCJhY3RpdmVUYWIiLCJfdXNlU2VsZWN0b3IiLCJ1c2VTZWxlY3RvciIsIl9yZWYyIiwiZ2xvYmFsX2RhdGEiLCJ3YXRlckF1dGhvcml0eU5hbWUiLCJfdXNlTmF2Q29udGV4dCIsInVzZU5hdkNvbnRleHQiLCJpc1J0bCIsImhpc3RvcnkiLCJ1c2VIaXN0b3J5IiwiX3VzZVNlbGVjdG9yMiIsInN0YXRlIiwid3d0cF9kYXNoYm9hcmQiLCJmb2N1c2VkQXJlYSIsImlzQXJlYSIsImFyZWFfaWQiLCJkYXNoYm9hcmROYW1lIiwiaXNfdmlydHVhbCIsImJyZWFkY3J1bWJzVXJsIiwidXJscyIsImFyZWFJRCIsInNpdGVJRCIsImlkIiwibmFtZSIsImZldGNoQXJlYURhdGEiLCJfcmVmMyIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwidXJsIiwicmVzcG9uc2UiLCJkYXRhIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImZldGNoIiwic2VudCIsIm9rIiwianNvbiIsImxpbmsiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiYnJlYWRjcnVtYnMiLCJFcnJvciIsInN0YXR1cyIsInN0b3AiLCJfeCIsImFwcGx5IiwiYXJndW1lbnRzIiwidXNlRWZmZWN0IiwiY2F0Y2giLCJlIiwiY29uc29sZSIsImVycm9yIiwibWVzc2FnZSIsInNldE5hdiIsIm5hdktleSIsImFuYWx5dGljc1RyYWNrIiwic2VsZWN0aW9uIiwicGFnZV9uYW1lIiwid2luZG93IiwibG9jYXRpb24iLCJwYXRobmFtZSIsInV0aWxpdHlfbmFtZSIsInB1c2giLCJjcmVhdGVFbGVtZW50IiwiZXhwYW5kIiwiY2xhc3NOYW1lIiwiVG9nZ2xlIiwiUmVhY3RDb21wb25lbnQiLCJDb2wiLCJtZCIsInNtIiwieHMiLCJDb2xsYXBzZSIsIk5hdiIsIlRleHQiLCJCcmVhZGNydW1icyIsIk5hdkl0ZW0iLCJpc19hY3RpdmUiLCJvbkNsaWNrIiwiZGlzYWJsZWQiLCJNYXBTdmciLCJNYXBBY3RpdmVTdmciLCJUcmFucyIsImkxOG5LZXkiLCJwbGFjZW1lbnQiLCJEYXNoYm9hcmRTdmciLCJEYXNoYm9hcmRBY3RpdmVTdmciLCJleHBvcnRzIiwic3R5bGVkIiwiTGluayIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwiX3JlZjQiLCJ0aGVtZSIsImNvbG9yU2NoZW1lIiwibmF0dXJhbCIsIm45MCIsIm42MCIsIl9yZWY1IiwicHJpbWFyeSIsInAxIiwiX3JlZjYiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9IZWFkZXIvSW5mb0Jhci9JbmZvQmFyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEJyZWFkY3J1bWJzIH0gZnJvbSAnLi9CcmVhZGNydW1icy9CcmVhZGNydW1icyc7XG5pbXBvcnQgU2VhcmNoIGZyb20gJy4vU2VhcmNoJztcbmltcG9ydCB7IENvbCwgTmF2IH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCBOYXZiYXIgZnJvbSAncmVhY3QtYm9vdHN0cmFwL05hdmJhcic7XG5pbXBvcnQgVGltZUZpbHRlciBmcm9tICcuL1RpbWVGaWx0ZXInO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgVG9nZ2xlSWNvblN2ZyB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvMy1kb3RzLnN2Zyc7XG5pbXBvcnQge1xuICBEYXNoYm9hcmRBY3RpdmVTdmcsXG4gIERhc2hib2FyZFN2ZyxcbiAgTWFwQWN0aXZlU3ZnLFxuICBNYXBTdmcsXG59IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvVG9wTmF2YmFyJztcbmltcG9ydCB7IGFuYWx5dGljc1RyYWNrIH0gZnJvbSAnc3JjL3V0aWxpdGllcy9BbmFseXRpY3MnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBUcmFucyB9IGZyb20gJ3JlYWN0LWkxOG5leHQnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyB1c2VOYXZDb250ZXh0IH0gZnJvbSAnc3JjL2hvb2tzL3VzZU5hdkNvbnRleHQnO1xuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJ3NyYy9ob29rcy91c2VRdWVyeVVSTCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5IH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyB1cmxzIH0gZnJvbSAnc3JjL3V0aWxpdGllcy91cmxzJztcblxuaW50ZXJmYWNlIEluZm9CYXJQcm9wcyB7XG4gIHBhcnRzOiAoeyBsaW5rOiBzdHJpbmc7IG5hbWU6IHN0cmluZyB9IHwgc3RyaW5nKVtdO1xuICBtYXBEaXNhYmxlPzogYm9vbGVhbjtcbn1cbmNvbnN0IGNsYXNzTmFtZXNUYWJzID0ge1xuICBkYXNoYm9hcmQ6IHsgZGFzaGJvYXJkOiAnZC1ub25lJywgbWFwX2FjdGl2ZTogJ2Qtbm9uZScgfSxcbiAgbWFwOiB7IGRhc2hib2FyZF9hY3RpdmU6ICdkLW5vbmUnLCBtYXA6ICdkLW5vbmUnIH0sXG59O1xuZXhwb3J0IGNvbnN0IEluZm9CYXI6IFJlYWN0LkZDPEluZm9CYXJQcm9wcz4gPSAoe1xuICBwYXJ0cyxcbiAgbWFwRGlzYWJsZSA9IHRydWUsXG59KSA9PiB7XG4gIGNvbnN0IFtwYXJ0TGlzdCwgc2V0UGFydExpc3RdID0gdXNlU3RhdGUocGFydHMpO1xuICBjb25zdCBxdWVyeVVSTCA9IHVzZVF1ZXJ5VVJMKCk7XG4gIGNvbnN0IGFjdGl2ZVRhYiA9IG1hcERpc2FibGVcbiAgICA/ICdkYXNoYm9hcmQnXG4gICAgOiBxdWVyeVVSTC5nZXQoJ3ZpZXcnKSB8fCAnZGFzaGJvYXJkJztcbiAgY29uc3QgeyB3YXRlckF1dGhvcml0eU5hbWUgfSA9IHVzZVNlbGVjdG9yKCh7IGdsb2JhbF9kYXRhIH0pID0+IGdsb2JhbF9kYXRhKTtcbiAgY29uc3QgeyBpc1J0bCB9ID0gdXNlTmF2Q29udGV4dCgpO1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCB7IGZvY3VzZWRBcmVhIH0gPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlLnd3dHBfZGFzaGJvYXJkKTtcbiAgY29uc3QgaXNBcmVhID0gZm9jdXNlZEFyZWE/LmFyZWFfaWQ7XG4gIGNvbnN0IGRhc2hib2FyZE5hbWUgPSBpc0FyZWFcbiAgICA/IGZvY3VzZWRBcmVhPy5pc192aXJ0dWFsXG4gICAgICA/ICdWYXJlYSdcbiAgICAgIDogJ0FyZWEnXG4gICAgOiAnU2l0ZSc7XG4gIGNvbnN0IGJyZWFkY3J1bWJzVXJsID0gdXJscyh7XG4gICAgYXJlYUlEOiBmb2N1c2VkQXJlYT8uYXJlYV9pZCxcbiAgICBzaXRlSUQ6IGZvY3VzZWRBcmVhPy5pZCxcbiAgfSkuZGFzaGJvYXJkW2Rhc2hib2FyZE5hbWVdLm5hbWU7XG5cbiAgY29uc3QgZmV0Y2hBcmVhRGF0YSA9IGFzeW5jICh1cmw6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKTtcbiAgICBpZiAocmVzcG9uc2Uub2spIHtcbiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG4gICAgICBzZXRQYXJ0TGlzdChbXG4gICAgICAgIHtcbiAgICAgICAgICBsaW5rOiAnL2Rhc2hib2FyZF92Mi9pbmRleCcsXG4gICAgICAgICAgbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgICAgICB9LFxuICAgICAgICAuLi5kYXRhLmRhdGEuYnJlYWRjcnVtYnMsXG4gICAgICBdKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBIVFRQIGVycm9yISBzdGF0dXM6ICR7cmVzcG9uc2Uuc3RhdHVzfWApO1xuICAgIH1cbiAgfTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZm9jdXNlZEFyZWEpIHtcbiAgICAgIGZldGNoQXJlYURhdGEoYnJlYWRjcnVtYnNVcmwpLmNhdGNoKChlKSA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ1JlcXVlc3QgZXJyb3I6ICcgKyBlLm1lc3NhZ2UpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFBhcnRMaXN0KHBhcnRzKTtcbiAgICB9XG4gIH0sIFtmb2N1c2VkQXJlYV0pO1xuXG4gIGNvbnN0IHNldE5hdiA9IChuYXZLZXkpID0+IHtcbiAgICBpZiAoYWN0aXZlVGFiID09PSBuYXZLZXkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgcXVlcnlVUkwuc2V0KCd2aWV3JywgbmF2S2V5KTtcbiAgICBhbmFseXRpY3NUcmFjaygnQ2xpY2sgdG9wIGJhciBuYXYgc3dpdGNoJywge1xuICAgICAgc2VsZWN0aW9uOiBuYXZLZXksXG4gICAgICBwYWdlX25hbWU6IHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSxcbiAgICAgIHV0aWxpdHlfbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIH0pO1xuICAgIGhpc3RvcnkucHVzaChgJHt3aW5kb3cubG9jYXRpb24ucGF0aG5hbWV9PyR7cXVlcnlVUkx9YCk7XG4gIH07XG4gIHJldHVybiAoXG4gICAgPE5hdmJhclxuICAgICAgZXhwYW5kPVwibWRcIlxuICAgICAgY2xhc3NOYW1lPVwiYmctd2hpdGUgbXQtNSBwdC0zIHBiLTAgcC1tZC0wIG10LW1kLTEgbXktbWQtMCBib3JkZXItYm90dG9tIGJvcmRlci10b3BcIlxuICAgID5cbiAgICAgIDxOYXZiYXIuVG9nZ2xlXG4gICAgICAgIGFyaWEtY29udHJvbHM9XCJiYXNpYy1uYXZiYXItbmF2XCJcbiAgICAgICAgY2xhc3NOYW1lPXsncC0yIG1lLTIgbXktYXV0byBib3JkZXItMCd9XG4gICAgICA+XG4gICAgICAgIDxUb2dnbGVJY29uU3ZnIC8+XG4gICAgICA8L05hdmJhci5Ub2dnbGU+XG4gICAgICA8Q29sIG1kPXsnYXV0byd9IHNtPXsnYXV0byd9IHhzPXsnYXV0byd9PlxuICAgICAgICA8TmF2YmFyLkNvbGxhcHNlIGlkPVwiYmFzaWMtbmF2YmFyLW5hdlwiPlxuICAgICAgICAgIDxOYXZcbiAgICAgICAgICAgIGNsYXNzTmFtZT17YCR7XG4gICAgICAgICAgICAgIGlzUnRsID8gJ2JvcmRlci1sZWZ0JyA6ICdib3JkZXItcmlnaHQnXG4gICAgICAgICAgICB9IHB5LW1kLTEgbXgtbWQtMCBweC0xYH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8TmF2YmFyLlRleHQgY2xhc3NOYW1lPXsnbWUtMid9PlxuICAgICAgICAgICAgICA8U2VhcmNoIC8+XG4gICAgICAgICAgICA8L05hdmJhci5UZXh0PlxuICAgICAgICAgICAgPE5hdmJhci5UZXh0IGNsYXNzTmFtZT17J21lLTInfT5cbiAgICAgICAgICAgICAgPFRpbWVGaWx0ZXIgLz5cbiAgICAgICAgICAgIDwvTmF2YmFyLlRleHQ+XG4gICAgICAgICAgPC9OYXY+XG4gICAgICAgIDwvTmF2YmFyLkNvbGxhcHNlPlxuICAgICAgPC9Db2w+XG4gICAgICB7cGFydExpc3QgJiYgKFxuICAgICAgICA8TmF2YmFyLlRleHRcbiAgICAgICAgICBjbGFzc05hbWU9e2BkLW5vbmUgZC1tZC1ibG9jayBteS1hdXRvIG14LTEgJHtcbiAgICAgICAgICAgIGlzUnRsID8gJ21sLWF1dG8nIDogJ21yLWF1dG8nXG4gICAgICAgICAgfWB9XG4gICAgICAgID5cbiAgICAgICAgICA8QnJlYWRjcnVtYnMgcGFydHM9e3BhcnRMaXN0fSAvPlxuICAgICAgICA8L05hdmJhci5UZXh0PlxuICAgICAgKX1cbiAgICAgIDxOYXZJdGVtXG4gICAgICAgIGlzX2FjdGl2ZT17YWN0aXZlVGFiID09PSAnbWFwJ31cbiAgICAgICAgb25DbGljaz17KCkgPT4gc2V0TmF2KCdtYXAnKX1cbiAgICAgICAgZGlzYWJsZWQ9e21hcERpc2FibGV9XG4gICAgICAgIGNsYXNzTmFtZT17J21iLW4xJ31cbiAgICAgID5cbiAgICAgICAgPE1hcFN2ZyBjbGFzc05hbWU9e2Ake2NsYXNzTmFtZXNUYWJzW2FjdGl2ZVRhYl0ubWFwfSBtZS0yYH0gLz5cbiAgICAgICAgPE1hcEFjdGl2ZVN2Z1xuICAgICAgICAgIGNsYXNzTmFtZT17YCR7Y2xhc3NOYW1lc1RhYnNbYWN0aXZlVGFiXS5tYXBfYWN0aXZlfSBtZS0yYH1cbiAgICAgICAgLz5cbiAgICAgICAgPFRyYW5zIGkxOG5LZXk9eydoZWFkZXIubWFwJ30gLz5cbiAgICAgIDwvTmF2SXRlbT5cbiAgICAgIDxOYXZJdGVtXG4gICAgICAgIHBsYWNlbWVudD1cImVuZFwiXG4gICAgICAgIGlzX2FjdGl2ZT17YWN0aXZlVGFiID09PSAnZGFzaGJvYXJkJ31cbiAgICAgICAgZGlzYWJsZWQ9e21hcERpc2FibGV9XG4gICAgICAgIGNsYXNzTmFtZT17J21iLW4xJ31cbiAgICAgICAgb25DbGljaz17KCkgPT4gc2V0TmF2KCdkYXNoYm9hcmQnKX1cbiAgICAgID5cbiAgICAgICAgPERhc2hib2FyZFN2Z1xuICAgICAgICAgIGNsYXNzTmFtZT17YCR7Y2xhc3NOYW1lc1RhYnNbYWN0aXZlVGFiXS5kYXNoYm9hcmR9IG1lLTJgfVxuICAgICAgICAvPlxuICAgICAgICA8RGFzaGJvYXJkQWN0aXZlU3ZnXG4gICAgICAgICAgY2xhc3NOYW1lPXtgJHtjbGFzc05hbWVzVGFic1thY3RpdmVUYWJdLmRhc2hib2FyZF9hY3RpdmV9IG1lLTJgfVxuICAgICAgICAvPlxuICAgICAgICA8VHJhbnMgaTE4bktleT17J2hlYWRlci5kYXNoYm9hcmQnfSAvPlxuICAgICAgPC9OYXZJdGVtPlxuICAgIDwvTmF2YmFyPlxuICApO1xufTtcblxuY29uc3QgTmF2SXRlbSA9IHN0eWxlZChOYXYuTGluayk8eyBpc19hY3RpdmU6IGJvb2xlYW4gfT5gXG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogMTJweDtcbiAgY29sb3I6ICR7KHsgdGhlbWUsIGlzX2FjdGl2ZSB9KSA9PlxuICAgIGlzX2FjdGl2ZSA/IHRoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjkwIDogdGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjB9O1xuICAkeyh7IHRoZW1lLCBpc19hY3RpdmUgfSkgPT5cbiAgICBpc19hY3RpdmUgJiYgYGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAke3RoZW1lLmNvbG9yU2NoZW1lLnByaW1hcnkucDF9O2B9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkeyh7IHRoZW1lLCBpc19hY3RpdmUgfSkgPT5cbiAgICAgIGlzX2FjdGl2ZVxuICAgICAgICA/IHRoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjkwXG4gICAgICAgIDogdGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjB9O1xuICB9XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsWUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsT0FBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksZUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssT0FBQSxHQUFBRixzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQU0sV0FBQSxHQUFBSCxzQkFBQSxDQUFBSCxPQUFBO0FBQXNDLElBQUFPLEtBQUEsR0FBQVAsT0FBQTtBQUV0QyxJQUFBUSxVQUFBLEdBQUFSLE9BQUE7QUFNQSxJQUFBUyxVQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxXQUFBLEdBQUFWLE9BQUE7QUFDQSxJQUFBVyxhQUFBLEdBQUFYLE9BQUE7QUFFQSxJQUFBWSxlQUFBLEdBQUFaLE9BQUE7QUFDQSxJQUFBYSxZQUFBLEdBQUFWLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBYyxlQUFBLEdBQUFkLE9BQUE7QUFDQSxJQUFBZSxLQUFBLEdBQUFmLE9BQUE7QUFBMEMsU0FBQWdCLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFB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
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var packageJsonVersion = "1.2.316-alpha.0";
3
+ var packageJsonVersion = "1.2.316-alpha.1";
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));
@@ -5,9 +5,9 @@ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.Widget = void 0;
9
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
8
+ exports.updatePoint = exports.Widget = void 0;
10
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
11
11
  var _react = _interopRequireWildcard(require("react"));
12
12
  var _reactBootstrap = require("react-bootstrap");
13
13
  var _WWTPDashboardSlice = require("../../store/WWTPDashboard/WWTPDashboardSlice");
@@ -16,6 +16,42 @@ var _InletsPie = _interopRequireDefault(require("../../ui-kit/InletsPie"));
16
16
  var _utils = require("./utils");
17
17
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
18
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+ var updatePoint = function updatePoint(_ref) {
20
+ var point = _ref.point,
21
+ listItems = _ref.listItems,
22
+ areas = _ref.areas,
23
+ points = _ref.points;
24
+ var areaIds = listItems.map(function (item) {
25
+ return item.id;
26
+ });
27
+ var subAreas = getAreas(areaIds, areas);
28
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, point), {}, {
29
+ factories: subAreas.length > 0 ? [] : getPoints(listItems, points),
30
+ sub_areas: subAreas,
31
+ shape_data: [[point.latitude, point.longitude]]
32
+ });
33
+ };
34
+ exports.updatePoint = updatePoint;
35
+ var getAreas = function getAreas(areaIds, areas) {
36
+ if (areaIds.length === 0 || areas === undefined || areas === null || areas.length === 0) return [];
37
+ var returnedAreas = areaIds.map(function (id) {
38
+ var correspondingArea = areas.find(function (area) {
39
+ return area.area_id === id;
40
+ });
41
+ return correspondingArea;
42
+ });
43
+ return returnedAreas;
44
+ };
45
+ var getPoints = function getPoints(listItems, points) {
46
+ if (listItems === null || points === undefined || points.length === 0) return [];
47
+ var returnedPoints = listItems.map(function (item) {
48
+ var correspondingPoint = points.find(function (point) {
49
+ return point.id === item.id;
50
+ });
51
+ return correspondingPoint;
52
+ });
53
+ return returnedPoints;
54
+ };
19
55
  var Widget = function Widget(props) {
20
56
  var object = props.object,
21
57
  dispatch = props.dispatch,
@@ -46,7 +82,7 @@ var Widget = function Widget(props) {
46
82
  var focusedArea = area;
47
83
  if (listItems && listItems.length > 0) {
48
84
  var _area = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, focusedArea), {}, {
49
- factories: focusedArea.sub_areas.length > 0 ? [] : getPoints()
85
+ factories: focusedArea.sub_areas.length > 0 ? [] : getPoints(listItems, points)
50
86
  });
51
87
  dispatch((0, _WWTPDashboardSlice.setFocusedArea)(_area));
52
88
  } else {
@@ -54,14 +90,11 @@ var Widget = function Widget(props) {
54
90
  }
55
91
  } else {
56
92
  if (point) {
57
- var areaIds = listItems.map(function (item) {
58
- return item.id;
59
- });
60
- var subAreas = getAreas(areaIds);
61
- var focusedPoint = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, point), {}, {
62
- factories: subAreas.length > 0 ? [] : getPoints(),
63
- sub_areas: subAreas,
64
- shape_data: [[point.latitude, point.longitude]]
93
+ var focusedPoint = updatePoint({
94
+ point: point,
95
+ listItems: listItems,
96
+ areas: areas,
97
+ points: points
65
98
  });
66
99
  dispatch((0, _WWTPDashboardSlice.setFocusedArea)(focusedPoint));
67
100
  }
@@ -73,28 +106,9 @@ var Widget = function Widget(props) {
73
106
  utility_name: global_data.waterAuthorityName
74
107
  });
75
108
  };
76
- var getAreas = function getAreas(areaIds) {
77
- if (areaIds.length === 0 || areas === undefined || areas === null || areas.length === 0) return [];
78
- var returnedAreas = areaIds.map(function (id) {
79
- var correspondingArea = areas.find(function (area) {
80
- return area.area_id === id;
81
- });
82
- return correspondingArea;
83
- });
84
- return returnedAreas;
85
- };
86
109
 
87
110
  // Return the point objects of all items in the list sorted by their names
88
- var getPoints = function getPoints() {
89
- if (listItems === null || points === undefined || points.length === 0) return [];
90
- var returnedPoints = listItems.map(function (item) {
91
- var correspondingPoint = points.find(function (point) {
92
- return point.id === item.id;
93
- });
94
- return correspondingPoint;
95
- });
96
- return returnedPoints;
97
- };
111
+
98
112
  var getButtonType = function getButtonType(type) {
99
113
  var rc;
100
114
  switch (type.toLowerCase()) {
@@ -157,4 +171,4 @@ var Widget = function Widget(props) {
157
171
  }, widgetContent()));
158
172
  };
159
173
  exports.Widget = Widget;
160
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RCb290c3RyYXAiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX2kxOG4iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0lubGV0c1BpZSIsIl91dGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiV2lkZ2V0IiwicHJvcHMiLCJvYmplY3QiLCJkaXNwYXRjaCIsInBvaW50cyIsImFyZWFzIiwibWFwIiwiZ2xvYmFsX2RhdGEiLCJsaXN0RGF0YSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImFyZWEiLCJzZXRBcmVhIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJwb2ludCIsInNldFBvaW50IiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJidXR0b25OYW1lIiwic2V0QnV0dG9uTmFtZSIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwibGlzdEl0ZW1zIiwic2V0TGlzdEl0ZW1zIiwiaGFuZGxlQ2xpY2siLCJjbG9zZVBvcHVwIiwiZm9jdXNlZEFyZWEiLCJsZW5ndGgiLCJfb2JqZWN0U3ByZWFkMiIsImZhY3RvcmllcyIsInN1Yl9hcmVhcyIsImdldFBvaW50cyIsInNldEZvY3VzZWRBcmVhIiwiYXJlYUlkcyIsIml0ZW0iLCJpZCIsInN1YkFyZWFzIiwiZ2V0QXJlYXMiLCJmb2N1c2VkUG9pbnQiLCJzaGFwZV9kYXRhIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJzZW5kQnV0dG9uQ2xpY2tlZEFuYWx5dGljcyIsInNlbmRBbmFseXRpY3NFdmVudCIsInV0aWxpdHlfbmFtZSIsIndhdGVyQXV0aG9yaXR5TmFtZSIsInVuZGVmaW5lZCIsInJldHVybmVkQXJlYXMiLCJjb3JyZXNwb25kaW5nQXJlYSIsImZpbmQiLCJhcmVhX2lkIiwicmV0dXJuZWRQb2ludHMiLCJjb3JyZXNwb25kaW5nUG9pbnQiLCJnZXRCdXR0b25UeXBlIiwidHlwZSIsInJjIiwidG9Mb3dlckNhc2UiLCJ0aXRsZSIsInBheWxvYWQiLCJuYW1lIiwiYXJlYV9uYW1lIiwiYnV0dG9uVGl0bGUiLCJpMThuIiwidCIsImNvbmNhdCIsInVzZUVmZmVjdCIsImlzQVBvaW50IiwiZm9yV1dUUE1hcCIsImRhdGEiLCJ3aWRnZXRDb250ZW50Iiwic2hvd0J1dHRvbiIsImNyZWF0ZUVsZW1lbnQiLCJCdXR0b24iLCJvbkNsaWNrIiwiY2xhc3NOYW1lIiwiaW5sZXRzIiwiRnJhZ21lbnQiLCJDYXJkIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvV2lkZ2V0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEJ1dHRvbiwgQ2FyZCB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBzZXRGb2N1c2VkQXJlYSB9IGZyb20gJy4uLy4uL3N0b3JlL1dXVFBEYXNoYm9hcmQvV1dUUERhc2hib2FyZFNsaWNlJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJy4uLy4uL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBpMThuIGZyb20gJy4uLy4uL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IElBcmVhIH0gZnJvbSAnLi4vLi4vc3RvcmUvYXJlYXMvbW9kZWxzL0lBcmVhJztcbmltcG9ydCBJbmxldHNQaWUgZnJvbSAnLi4vLi4vdWkta2l0L0lubGV0c1BpZSc7XG5pbXBvcnQgeyBzZW5kQW5hbHl0aWNzRXZlbnQgfSBmcm9tICcuL3V0aWxzJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIG9iamVjdDogYW55O1xuICBkaXNwYXRjaDogYW55O1xuICBwb2ludHM/OiBJUG9pbnRbXTtcbiAgYXJlYXM/OiBJQXJlYVtdO1xuICBtYXA7XG4gIGdsb2JhbF9kYXRhO1xuICBsaXN0RGF0YTogYW55O1xufTtcblxuZXhwb3J0IGNvbnN0IFdpZGdldDogUmVhY3QuRkM8SVByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7IG9iamVjdCwgZGlzcGF0Y2gsIHBvaW50cywgYXJlYXMsIG1hcCwgZ2xvYmFsX2RhdGEsIGxpc3REYXRhIH0gPSBwcm9wcztcbiAgY29uc3QgW2FyZWEsIHNldEFyZWFdID0gdXNlU3RhdGU8SUFyZWEgfCBudWxsPihudWxsKTtcbiAgY29uc3QgW3BvaW50LCBzZXRQb2ludF0gPSB1c2VTdGF0ZTxJUG9pbnQgfCBudWxsPihudWxsKTtcbiAgY29uc3QgW2J1dHRvbk5hbWUsIHNldEJ1dHRvbk5hbWVdID0gdXNlU3RhdGU8c3RyaW5nPignJyk7XG4gIGNvbnN0IFtsaXN0SXRlbXMsIHNldExpc3RJdGVtc10gPSB1c2VTdGF0ZTxhbnlbXT4oW10pO1xuXG4gIGNvbnN0IGhhbmRsZUNsaWNrID0gKCkgPT4ge1xuICAgIG1hcC5jbG9zZVBvcHVwKCk7XG4gICAgaWYgKGFyZWEpIHtcbiAgICAgIGxldCBmb2N1c2VkQXJlYSA9IGFyZWE7XG4gICAgICBpZiAobGlzdEl0ZW1zICYmIGxpc3RJdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IGFyZWEgPSB7XG4gICAgICAgICAgLi4uZm9jdXNlZEFyZWEsXG4gICAgICAgICAgZmFjdG9yaWVzOiBmb2N1c2VkQXJlYS5zdWJfYXJlYXMubGVuZ3RoID4gMCA/IFtdIDogZ2V0UG9pbnRzKCksXG4gICAgICAgIH07XG4gICAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRBcmVhKGFyZWEpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRBcmVhKGZvY3VzZWRBcmVhKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChwb2ludCkge1xuICAgICAgICBjb25zdCBhcmVhSWRzID0gbGlzdEl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS5pZCk7XG4gICAgICAgIGNvbnN0IHN1YkFyZWFzID0gZ2V0QXJlYXMoYXJlYUlkcyk7XG4gICAgICAgIGNvbnN0IGZvY3VzZWRQb2ludCA9IHtcbiAgICAgICAgICAuLi5wb2ludCxcbiAgICAgICAgICBmYWN0b3JpZXM6IHN1YkFyZWFzLmxlbmd0aCA+IDAgPyBbXSA6IGdldFBvaW50cygpLFxuICAgICAgICAgIHN1Yl9hcmVhczogc3ViQXJlYXMsXG4gICAgICAgICAgc2hhcGVfZGF0YTogW1twb2ludC5sYXRpdHVkZSwgcG9pbnQubG9uZ2l0dWRlXV0sXG4gICAgICAgIH07XG4gICAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRBcmVhKGZvY3VzZWRQb2ludCkpO1xuICAgICAgfVxuICAgIH1cbiAgICBzZW5kQnV0dG9uQ2xpY2tlZEFuYWx5dGljcygpO1xuICB9O1xuXG4gIGNvbnN0IHNlbmRCdXR0b25DbGlja2VkQW5hbHl0aWNzID0gKCkgPT4ge1xuICAgIHNlbmRBbmFseXRpY3NFdmVudCgnTWFwIHZpZXcgLSBQb3B1cCBkcmlsbGRvd24gY2xpY2tlZCcsIGJ1dHRvbk5hbWUsIHtcbiAgICAgIHV0aWxpdHlfbmFtZTogZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGdldEFyZWFzID0gKGFyZWFJZHM6IGFueVtdKSA9PiB7XG4gICAgaWYgKFxuICAgICAgYXJlYUlkcy5sZW5ndGggPT09IDAgfHxcbiAgICAgIGFyZWFzID09PSB1bmRlZmluZWQgfHxcbiAgICAgIGFyZWFzID09PSBudWxsIHx8XG4gICAgICBhcmVhcy5sZW5ndGggPT09IDBcbiAgICApXG4gICAgICByZXR1cm4gW107XG5cbiAgICBjb25zdCByZXR1cm5lZEFyZWFzID0gYXJlYUlkcy5tYXAoKGlkKSA9PiB7XG4gICAgICBjb25zdCBjb3JyZXNwb25kaW5nQXJlYSA9IGFyZWFzLmZpbmQoKGFyZWEpID0+IGFyZWEuYXJlYV9pZCA9PT0gaWQpO1xuICAgICAgcmV0dXJuIGNvcnJlc3BvbmRpbmdBcmVhO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHJldHVybmVkQXJlYXM7XG4gIH07XG5cbiAgLy8gUmV0dXJuIHRoZSBwb2ludCBvYmplY3RzIG9mIGFsbCBpdGVtcyBpbiB0aGUgbGlzdCBzb3J0ZWQgYnkgdGhlaXIgbmFtZXNcbiAgY29uc3QgZ2V0UG9pbnRzID0gKCkgPT4ge1xuICAgIGlmIChsaXN0SXRlbXMgPT09IG51bGwgfHwgcG9pbnRzID09PSB1bmRlZmluZWQgfHwgcG9pbnRzLmxlbmd0aCA9PT0gMClcbiAgICAgIHJldHVybiBbXTtcblxuICAgIGNvbnN0IHJldHVybmVkUG9pbnRzID0gbGlzdEl0ZW1zLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgY29uc3QgY29ycmVzcG9uZGluZ1BvaW50ID0gcG9pbnRzLmZpbmQoKHBvaW50KSA9PiBwb2ludC5pZCA9PT0gaXRlbS5pZCk7XG4gICAgICByZXR1cm4gY29ycmVzcG9uZGluZ1BvaW50O1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHJldHVybmVkUG9pbnRzO1xuICB9O1xuXG4gIGNvbnN0IGdldEJ1dHRvblR5cGUgPSAodHlwZTogc3RyaW5nKSA9PiB7XG4gICAgbGV0IHJjO1xuXG4gICAgc3dpdGNoICh0eXBlLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgIGNhc2UgJ2FyZWEnOlxuICAgICAgY2FzZSAndmFyZWEnOlxuICAgICAgICByYyA9ICd2aWV3X3N1Yl9hcmVhcyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZmFjdG9yeSc6XG4gICAgICAgIHJjID0gJ3ZpZXdfZmFjdG9yaWVzJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByYyA9ICd2aWV3X2lubGV0cyc7XG4gICAgfVxuICAgIHJldHVybiByYztcbiAgfTtcblxuICBjb25zdCB0aXRsZSA9ICgpID0+IHtcbiAgICBsZXQgcGF5bG9hZCA9ICcnO1xuICAgIGlmIChwb2ludCkge1xuICAgICAgcGF5bG9hZCA9IHBvaW50Lm5hbWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChhcmVhKSB7XG4gICAgICAgIHBheWxvYWQgPSBhcmVhLmFyZWFfbmFtZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHBheWxvYWQ7XG4gIH07XG5cbiAgY29uc3QgYnV0dG9uVGl0bGUgPSAoKSA9PiB7XG4gICAgaWYgKGJ1dHRvbk5hbWUgPT09ICcnKSByZXR1cm4gJyc7XG4gICAgcmV0dXJuIGkxOG4udChgd3d0cFBhZ2UuJHtidXR0b25OYW1lfWApO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgbGV0IGlzQVBvaW50ID0gb2JqZWN0LmZvcldXVFBNYXAgIT09IHVuZGVmaW5lZDtcblxuICAgIGlmIChpc0FQb2ludCkge1xuICAgICAgc2V0UG9pbnQob2JqZWN0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgc2V0QXJlYShvYmplY3QpO1xuICAgIH1cbiAgfSwgW29iamVjdF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGxpc3REYXRhID09PSB1bmRlZmluZWQpIHJldHVybjtcblxuICAgIHNldExpc3RJdGVtcyhsaXN0RGF0YT8uZGF0YSk7XG4gICAgaWYgKGxpc3REYXRhLmRhdGEubGVuZ3RoID4gMCkge1xuICAgICAgc2V0QnV0dG9uTmFtZShnZXRCdXR0b25UeXBlKGxpc3REYXRhLmRhdGFbMF0udHlwZSkpO1xuICAgIH1cbiAgfSwgW2xpc3REYXRhXSk7XG5cbiAgY29uc3Qgd2lkZ2V0Q29udGVudCA9ICgpID0+IHtcbiAgICBjb25zdCBkYXRhID0gbGlzdERhdGE/LmRhdGE7XG4gICAgY29uc3Qgc2hvd0J1dHRvbiA9IGRhdGE/Lmxlbmd0aCA+IDA7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdj5cbiAgICAgICAge3Nob3dCdXR0b24gJiYgKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUNsaWNrKCl9XG4gICAgICAgICAgICBjbGFzc05hbWU9eydjaGlsZHJlbkJ1dHRvbiByb3VuZGVkLXBpbGwgYnRuLWxpZ2h0J31cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7YnV0dG9uVGl0bGUoKX1cbiAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgICAgPElubGV0c1BpZSBpbmxldHM9e2xpc3RJdGVtc30gLz5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPGgzPnt0aXRsZSgpfTwvaDM+XG4gICAgICA8Q2FyZCBjbGFzc05hbWU9XCJiZy13aGl0ZSB3aWRnZXQtY29udGFpbmVyXCI+e3dpZGdldENvbnRlbnQoKX08L0NhcmQ+XG4gICAgPC8+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsZUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsbUJBQUEsR0FBQUYsT0FBQTtBQUVBLElBQUFHLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUosT0FBQTtBQUVBLElBQUFLLFVBQUEsR0FBQUQsc0JBQUEsQ0FBQUosT0FBQTtBQUNBLElBQUFNLE1BQUEsR0FBQU4sT0FBQTtBQUE2QyxTQUFBTyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFB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
174
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RCb290c3RyYXAiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX2kxOG4iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0lubGV0c1BpZSIsIl91dGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwidXBkYXRlUG9pbnQiLCJfcmVmIiwicG9pbnQiLCJsaXN0SXRlbXMiLCJhcmVhcyIsInBvaW50cyIsImFyZWFJZHMiLCJtYXAiLCJpdGVtIiwiaWQiLCJzdWJBcmVhcyIsImdldEFyZWFzIiwiX29iamVjdFNwcmVhZDIiLCJmYWN0b3JpZXMiLCJsZW5ndGgiLCJnZXRQb2ludHMiLCJzdWJfYXJlYXMiLCJzaGFwZV9kYXRhIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJleHBvcnRzIiwidW5kZWZpbmVkIiwicmV0dXJuZWRBcmVhcyIsImNvcnJlc3BvbmRpbmdBcmVhIiwiZmluZCIsImFyZWEiLCJhcmVhX2lkIiwicmV0dXJuZWRQb2ludHMiLCJjb3JyZXNwb25kaW5nUG9pbnQiLCJXaWRnZXQiLCJwcm9wcyIsIm9iamVjdCIsImRpc3BhdGNoIiwiZ2xvYmFsX2RhdGEiLCJsaXN0RGF0YSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInNldEFyZWEiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInNldFBvaW50IiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJidXR0b25OYW1lIiwic2V0QnV0dG9uTmFtZSIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4Iiwic2V0TGlzdEl0ZW1zIiwiaGFuZGxlQ2xpY2siLCJjbG9zZVBvcHVwIiwiZm9jdXNlZEFyZWEiLCJzZXRGb2N1c2VkQXJlYSIsImZvY3VzZWRQb2ludCIsInNlbmRCdXR0b25DbGlja2VkQW5hbHl0aWNzIiwic2VuZEFuYWx5dGljc0V2ZW50IiwidXRpbGl0eV9uYW1lIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwiZ2V0QnV0dG9uVHlwZSIsInR5cGUiLCJyYyIsInRvTG93ZXJDYXNlIiwidGl0bGUiLCJwYXlsb2FkIiwibmFtZSIsImFyZWFfbmFtZSIsImJ1dHRvblRpdGxlIiwiaTE4biIsInQiLCJjb25jYXQiLCJ1c2VFZmZlY3QiLCJpc0FQb2ludCIsImZvcldXVFBNYXAiLCJkYXRhIiwid2lkZ2V0Q29udGVudCIsInNob3dCdXR0b24iLCJjcmVhdGVFbGVtZW50IiwiQnV0dG9uIiwib25DbGljayIsImNsYXNzTmFtZSIsImlubGV0cyIsIkZyYWdtZW50IiwiQ2FyZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvV2lkZ2V0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEJ1dHRvbiwgQ2FyZCB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBzZXRGb2N1c2VkQXJlYSB9IGZyb20gJy4uLy4uL3N0b3JlL1dXVFBEYXNoYm9hcmQvV1dUUERhc2hib2FyZFNsaWNlJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJy4uLy4uL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBpMThuIGZyb20gJy4uLy4uL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IElBcmVhIH0gZnJvbSAnLi4vLi4vc3RvcmUvYXJlYXMvbW9kZWxzL0lBcmVhJztcbmltcG9ydCBJbmxldHNQaWUgZnJvbSAnLi4vLi4vdWkta2l0L0lubGV0c1BpZSc7XG5pbXBvcnQgeyBzZW5kQW5hbHl0aWNzRXZlbnQgfSBmcm9tICcuL3V0aWxzJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIG9iamVjdDogYW55O1xuICBkaXNwYXRjaDogYW55O1xuICBwb2ludHM/OiBJUG9pbnRbXTtcbiAgYXJlYXM/OiBJQXJlYVtdO1xuICBtYXA7XG4gIGdsb2JhbF9kYXRhO1xuICBsaXN0RGF0YTogYW55O1xufTtcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVBvaW50ID0gKHsgcG9pbnQsIGxpc3RJdGVtcywgYXJlYXMsIHBvaW50cyB9KSA9PiB7XG4gIGNvbnN0IGFyZWFJZHMgPSBsaXN0SXRlbXMubWFwKChpdGVtKSA9PiBpdGVtLmlkKTtcbiAgY29uc3Qgc3ViQXJlYXMgPSBnZXRBcmVhcyhhcmVhSWRzLCBhcmVhcyk7XG4gIHJldHVybiB7XG4gICAgLi4ucG9pbnQsXG4gICAgZmFjdG9yaWVzOiBzdWJBcmVhcy5sZW5ndGggPiAwID8gW10gOiBnZXRQb2ludHMobGlzdEl0ZW1zLCBwb2ludHMpLFxuICAgIHN1Yl9hcmVhczogc3ViQXJlYXMsXG4gICAgc2hhcGVfZGF0YTogW1twb2ludC5sYXRpdHVkZSwgcG9pbnQubG9uZ2l0dWRlXV0sXG4gIH07XG59O1xuXG5jb25zdCBnZXRBcmVhcyA9IChhcmVhSWRzOiBhbnlbXSwgYXJlYXMpID0+IHtcbiAgaWYgKFxuICAgIGFyZWFJZHMubGVuZ3RoID09PSAwIHx8XG4gICAgYXJlYXMgPT09IHVuZGVmaW5lZCB8fFxuICAgIGFyZWFzID09PSBudWxsIHx8XG4gICAgYXJlYXMubGVuZ3RoID09PSAwXG4gIClcbiAgICByZXR1cm4gW107XG5cbiAgY29uc3QgcmV0dXJuZWRBcmVhcyA9IGFyZWFJZHMubWFwKChpZCkgPT4ge1xuICAgIGNvbnN0IGNvcnJlc3BvbmRpbmdBcmVhID0gYXJlYXMuZmluZCgoYXJlYSkgPT4gYXJlYS5hcmVhX2lkID09PSBpZCk7XG4gICAgcmV0dXJuIGNvcnJlc3BvbmRpbmdBcmVhO1xuICB9KTtcblxuICByZXR1cm4gcmV0dXJuZWRBcmVhcztcbn07XG5cbmNvbnN0IGdldFBvaW50cyA9IChsaXN0SXRlbXMsIHBvaW50cykgPT4ge1xuICBpZiAobGlzdEl0ZW1zID09PSBudWxsIHx8IHBvaW50cyA9PT0gdW5kZWZpbmVkIHx8IHBvaW50cy5sZW5ndGggPT09IDApXG4gICAgcmV0dXJuIFtdO1xuXG4gIGNvbnN0IHJldHVybmVkUG9pbnRzID0gbGlzdEl0ZW1zLm1hcCgoaXRlbSkgPT4ge1xuICAgIGNvbnN0IGNvcnJlc3BvbmRpbmdQb2ludCA9IHBvaW50cy5maW5kKChwb2ludCkgPT4gcG9pbnQuaWQgPT09IGl0ZW0uaWQpO1xuICAgIHJldHVybiBjb3JyZXNwb25kaW5nUG9pbnQ7XG4gIH0pO1xuXG4gIHJldHVybiByZXR1cm5lZFBvaW50cztcbn07XG5leHBvcnQgY29uc3QgV2lkZ2V0OiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgb2JqZWN0LCBkaXNwYXRjaCwgcG9pbnRzLCBhcmVhcywgbWFwLCBnbG9iYWxfZGF0YSwgbGlzdERhdGEgfSA9IHByb3BzO1xuICBjb25zdCBbYXJlYSwgc2V0QXJlYV0gPSB1c2VTdGF0ZTxJQXJlYSB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbcG9pbnQsIHNldFBvaW50XSA9IHVzZVN0YXRlPElQb2ludCB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbYnV0dG9uTmFtZSwgc2V0QnV0dG9uTmFtZV0gPSB1c2VTdGF0ZTxzdHJpbmc+KCcnKTtcbiAgY29uc3QgW2xpc3RJdGVtcywgc2V0TGlzdEl0ZW1zXSA9IHVzZVN0YXRlPGFueVtdPihbXSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoKSA9PiB7XG4gICAgbWFwLmNsb3NlUG9wdXAoKTtcbiAgICBpZiAoYXJlYSkge1xuICAgICAgbGV0IGZvY3VzZWRBcmVhID0gYXJlYTtcbiAgICAgIGlmIChsaXN0SXRlbXMgJiYgbGlzdEl0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgY29uc3QgYXJlYSA9IHtcbiAgICAgICAgICAuLi5mb2N1c2VkQXJlYSxcbiAgICAgICAgICBmYWN0b3JpZXM6XG4gICAgICAgICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMubGVuZ3RoID4gMFxuICAgICAgICAgICAgICA/IFtdXG4gICAgICAgICAgICAgIDogZ2V0UG9pbnRzKGxpc3RJdGVtcywgcG9pbnRzKSxcbiAgICAgICAgfTtcbiAgICAgICAgZGlzcGF0Y2goc2V0Rm9jdXNlZEFyZWEoYXJlYSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGlzcGF0Y2goc2V0Rm9jdXNlZEFyZWEoZm9jdXNlZEFyZWEpKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHBvaW50KSB7XG4gICAgICAgIGNvbnN0IGZvY3VzZWRQb2ludCA9IHVwZGF0ZVBvaW50KHsgcG9pbnQsIGxpc3RJdGVtcywgYXJlYXMsIHBvaW50cyB9KTtcbiAgICAgICAgZGlzcGF0Y2goc2V0Rm9jdXNlZEFyZWEoZm9jdXNlZFBvaW50KSk7XG4gICAgICB9XG4gICAgfVxuICAgIHNlbmRCdXR0b25DbGlja2VkQW5hbHl0aWNzKCk7XG4gIH07XG5cbiAgY29uc3Qgc2VuZEJ1dHRvbkNsaWNrZWRBbmFseXRpY3MgPSAoKSA9PiB7XG4gICAgc2VuZEFuYWx5dGljc0V2ZW50KCdNYXAgdmlldyAtIFBvcHVwIGRyaWxsZG93biBjbGlja2VkJywgYnV0dG9uTmFtZSwge1xuICAgICAgdXRpbGl0eV9uYW1lOiBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gIH07XG5cbiAgLy8gUmV0dXJuIHRoZSBwb2ludCBvYmplY3RzIG9mIGFsbCBpdGVtcyBpbiB0aGUgbGlzdCBzb3J0ZWQgYnkgdGhlaXIgbmFtZXNcblxuICBjb25zdCBnZXRCdXR0b25UeXBlID0gKHR5cGU6IHN0cmluZykgPT4ge1xuICAgIGxldCByYztcblxuICAgIHN3aXRjaCAodHlwZS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICBjYXNlICdhcmVhJzpcbiAgICAgIGNhc2UgJ3ZhcmVhJzpcbiAgICAgICAgcmMgPSAndmlld19zdWJfYXJlYXMnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2ZhY3RvcnknOlxuICAgICAgICByYyA9ICd2aWV3X2ZhY3Rvcmllcyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmMgPSAndmlld19pbmxldHMnO1xuICAgIH1cbiAgICByZXR1cm4gcmM7XG4gIH07XG5cbiAgY29uc3QgdGl0bGUgPSAoKSA9PiB7XG4gICAgbGV0IHBheWxvYWQgPSAnJztcbiAgICBpZiAocG9pbnQpIHtcbiAgICAgIHBheWxvYWQgPSBwb2ludC5uYW1lO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoYXJlYSkge1xuICAgICAgICBwYXlsb2FkID0gYXJlYS5hcmVhX25hbWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBwYXlsb2FkO1xuICB9O1xuXG4gIGNvbnN0IGJ1dHRvblRpdGxlID0gKCkgPT4ge1xuICAgIGlmIChidXR0b25OYW1lID09PSAnJykgcmV0dXJuICcnO1xuICAgIHJldHVybiBpMThuLnQoYHd3dHBQYWdlLiR7YnV0dG9uTmFtZX1gKTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxldCBpc0FQb2ludCA9IG9iamVjdC5mb3JXV1RQTWFwICE9PSB1bmRlZmluZWQ7XG5cbiAgICBpZiAoaXNBUG9pbnQpIHtcbiAgICAgIHNldFBvaW50KG9iamVjdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldEFyZWEob2JqZWN0KTtcbiAgICB9XG4gIH0sIFtvYmplY3RdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChsaXN0RGF0YSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG5cbiAgICBzZXRMaXN0SXRlbXMobGlzdERhdGE/LmRhdGEpO1xuICAgIGlmIChsaXN0RGF0YS5kYXRhLmxlbmd0aCA+IDApIHtcbiAgICAgIHNldEJ1dHRvbk5hbWUoZ2V0QnV0dG9uVHlwZShsaXN0RGF0YS5kYXRhWzBdLnR5cGUpKTtcbiAgICB9XG4gIH0sIFtsaXN0RGF0YV0pO1xuXG4gIGNvbnN0IHdpZGdldENvbnRlbnQgPSAoKSA9PiB7XG4gICAgY29uc3QgZGF0YSA9IGxpc3REYXRhPy5kYXRhO1xuICAgIGNvbnN0IHNob3dCdXR0b24gPSBkYXRhPy5sZW5ndGggPiAwO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXY+XG4gICAgICAgIHtzaG93QnV0dG9uICYmIChcbiAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVDbGljaygpfVxuICAgICAgICAgICAgY2xhc3NOYW1lPXsnY2hpbGRyZW5CdXR0b24gcm91bmRlZC1waWxsIGJ0bi1saWdodCd9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2J1dHRvblRpdGxlKCl9XG4gICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICl9XG4gICAgICAgIDxJbmxldHNQaWUgaW5sZXRzPXtsaXN0SXRlbXN9IC8+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxoMz57dGl0bGUoKX08L2gzPlxuICAgICAgPENhcmQgY2xhc3NOYW1lPVwiYmctd2hpdGUgd2lkZ2V0LWNvbnRhaW5lclwiPnt3aWRnZXRDb250ZW50KCl9PC9DYXJkPlxuICAgIDwvPlxuICApO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGVBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLG1CQUFBLEdBQUFGLE9BQUE7QUFFQSxJQUFBRyxL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