@kando-env/kando-ui 1.2.466 → 1.2.467-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.
Files changed (40) hide show
  1. package/lib/Router.js +7 -5
  2. package/lib/Widgets/Map/Map.js +3 -3
  3. package/lib/Widgets/Map/MapUtils.js +2 -1
  4. package/lib/assets/streami-logo.svg +26 -0
  5. package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -3
  6. package/lib/components/Header/Toolbar/Toolbar.js +3 -6
  7. package/lib/components/KandoModal/KandoModal.js +27 -4
  8. package/lib/components/KandoModal/styles.scss +4 -0
  9. package/lib/components/SeasonalInsights/SeasonalInsights.js +220 -0
  10. package/lib/components/SevereEvent/SevereEvent.js +18 -2
  11. package/lib/components/SevereEvent/SevereEvent.scss +24 -0
  12. package/lib/components/SevereEvent/UpstreamBadge.js +60 -0
  13. package/lib/components/TopBanner/TopBanner.js +227 -0
  14. package/lib/components/TopBanner/insightsDismissalStorage.js +36 -0
  15. package/lib/i18n/en.json +24 -3
  16. package/lib/i18n/fr.json +13 -0
  17. package/lib/i18n/he.json +21 -1
  18. package/lib/i18n/it.json +13 -0
  19. package/lib/macros/getVersion.js +2 -2
  20. package/lib/pages/AreaPage/Dashboard/Dashboard.js +2 -2
  21. package/lib/pages/EventsPage/events/EventsStyle.scss +1 -1
  22. package/lib/pages/EventsPage/events/event_info/EventDetails.js +2 -2
  23. package/lib/pages/EventsPage/events/event_info/EventSection.test.js +21 -22
  24. package/lib/pages/EventsPage/events/event_info/Header/Header.js +1 -1
  25. package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +2 -2
  26. package/lib/pages/EventsPage/events/event_info/Header/index.js +1 -1
  27. package/lib/pages/EventsPage/events/event_info/SeverityScore/index.js +1 -1
  28. package/lib/pages/EventsPage/events/event_info/Timelines/index.js +1 -1
  29. package/lib/pages/EventsPage/events/events_list/EventsList.js +7 -1
  30. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +2 -2
  31. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +4 -1
  32. package/lib/pages/EventsPage/events/events_list/Sort.js +21 -15
  33. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +9 -4
  34. package/lib/pages/SitePage/SitePage.js +2 -2
  35. package/lib/test/mocks/browser.js +1 -1
  36. package/lib/test/test-utils.js +1 -1
  37. package/lib/ui-kit/KandoTable/KandoTable.test.js +1 -1
  38. package/lib/utilities/scoreToData.test.js +1 -1
  39. package/lib/utilities/urls.js +3 -3
  40. package/package.json +1 -1
@@ -0,0 +1,220 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
12
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
13
+ var _i18next = _interopRequireDefault(require("i18next"));
14
+ var _react = _interopRequireWildcard(require("react"));
15
+ var _Sector = _interopRequireDefault(require("../Sector"));
16
+ var _MoreInfoButton = require("pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton");
17
+ var _streamiLogo = _interopRequireDefault(require("assets/streami-logo.svg"));
18
+ var _useNavContext2 = require("hooks/useNavContext");
19
+ 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); }
20
+ 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; }
21
+ var SeasonalInsights = function SeasonalInsights(_ref) {
22
+ var apiEndpoint = _ref.apiEndpoint,
23
+ dataProp = _ref.data,
24
+ className = _ref.className,
25
+ onLoaded = _ref.onLoaded;
26
+ var _useState = (0, _react.useState)(dataProp !== null && dataProp !== void 0 ? dataProp : null),
27
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
28
+ data = _useState2[0],
29
+ setData = _useState2[1];
30
+ var _useState3 = (0, _react.useState)(false),
31
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
32
+ showDetails = _useState4[0],
33
+ setShowDetails = _useState4[1];
34
+
35
+ // If parent provides data, render it and skip fetching.
36
+ (0, _react.useEffect)(function () {
37
+ if (typeof dataProp === 'undefined') return;
38
+ setData(dataProp !== null && dataProp !== void 0 ? dataProp : null);
39
+ }, [dataProp]);
40
+ var risk = (0, _react.useMemo)(function () {
41
+ var _data$insight_info;
42
+ var risks = data === null || data === void 0 ? void 0 : (_data$insight_info = data.insight_info) === null || _data$insight_info === void 0 ? void 0 : _data$insight_info.risks;
43
+ if (!risks) return null;
44
+ var lang = (data === null || data === void 0 ? void 0 : data.locale) || 'en';
45
+ return risks[lang] || null;
46
+ }, [data]);
47
+ var summary = (risk === null || risk === void 0 ? void 0 : risk.risk_summary) || '';
48
+ var detailed = (risk === null || risk === void 0 ? void 0 : risk.detailed_risks) || [];
49
+ var hasDetails = detailed.length > 0;
50
+ var _useNavContext = (0, _useNavContext2.useNavContext)(),
51
+ isRtl = _useNavContext.isRtl;
52
+ (0, _react.useEffect)(function () {
53
+ // If parent provides data, do not fetch.
54
+ if (typeof dataProp !== 'undefined') return;
55
+ if (!apiEndpoint) return;
56
+ var controller = new AbortController();
57
+ fetch(apiEndpoint, {
58
+ signal: controller.signal
59
+ }).then( /*#__PURE__*/function () {
60
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(res) {
61
+ return _regenerator.default.wrap(function _callee$(_context) {
62
+ while (1) {
63
+ switch (_context.prev = _context.next) {
64
+ case 0:
65
+ if (res.ok) {
66
+ _context.next = 2;
67
+ break;
68
+ }
69
+ throw new Error("Request failed (".concat(res.status, ")"));
70
+ case 2:
71
+ _context.next = 4;
72
+ return res.json();
73
+ case 4:
74
+ return _context.abrupt("return", _context.sent);
75
+ case 5:
76
+ case "end":
77
+ return _context.stop();
78
+ }
79
+ }
80
+ }, _callee);
81
+ }));
82
+ return function (_x) {
83
+ return _ref2.apply(this, arguments);
84
+ };
85
+ }()).then(function (payload) {
86
+ setData(payload);
87
+ if (onLoaded) onLoaded(payload);
88
+ }).catch(function (err) {
89
+ if ((err === null || err === void 0 ? void 0 : err.name) === 'AbortError') return;
90
+ setData(null);
91
+ });
92
+ return function () {
93
+ return controller.abort();
94
+ };
95
+ }, [apiEndpoint, dataProp, onLoaded]);
96
+ return /*#__PURE__*/_react.default.createElement(Container, {
97
+ isRtl: isRtl
98
+ }, /*#__PURE__*/_react.default.createElement(SummarySection, null, /*#__PURE__*/_react.default.createElement(SummaryHeader, {
99
+ isRtl: isRtl
100
+ }, /*#__PURE__*/_react.default.createElement(SummaryTitle, null, _i18next.default.t('seasonal_insights.summary_heading'))), /*#__PURE__*/_react.default.createElement(SummaryText, null, summary)), /*#__PURE__*/_react.default.createElement(ToggleRow, null, /*#__PURE__*/_react.default.createElement(Attribution, null, /*#__PURE__*/_react.default.createElement(BrandLogoSmall, {
101
+ src: _streamiLogo.default,
102
+ alt: "Streami"
103
+ }), /*#__PURE__*/_react.default.createElement(PoweredBy, null, 'Powered by STREAMi')), hasDetails ? /*#__PURE__*/_react.default.createElement(MoreInfoWrap, null, /*#__PURE__*/_react.default.createElement(_MoreInfoButton.MoreInfoDiv, null, /*#__PURE__*/_react.default.createElement("a", {
104
+ href: "#",
105
+ className: "more-info-button",
106
+ onClick: function onClick(e) {
107
+ e.preventDefault();
108
+ setShowDetails(function (prev) {
109
+ return !prev;
110
+ });
111
+ },
112
+ "aria-expanded": showDetails
113
+ }, showDetails ? _i18next.default.t('seasonal_insights.show_less') : _i18next.default.t('seasonal_insights.show_more')))) : null), hasDetails ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, showDetails ? /*#__PURE__*/_react.default.createElement(CardList, null, detailed.map(function (r, idx) {
114
+ var _r$expected_pollution;
115
+ return /*#__PURE__*/_react.default.createElement(Card, {
116
+ key: idx
117
+ }, /*#__PURE__*/_react.default.createElement(CardHeader, null, /*#__PURE__*/_react.default.createElement(TitleBlock, null, formatSectorIconName(r.sector) ? /*#__PURE__*/_react.default.createElement(_Sector.default, {
118
+ sectorIconName: formatSectorIconName(r.sector) || 'Missing',
119
+ sectorName: r.sector,
120
+ showLabel: false,
121
+ withTooltip: true
122
+ }) : null, /*#__PURE__*/_react.default.createElement(CardTitle, null, r.siu_name))), ((_r$expected_pollution = r.expected_pollution_types) === null || _r$expected_pollution === void 0 ? void 0 : _r$expected_pollution.length) ? /*#__PURE__*/_react.default.createElement(CardSection, null, /*#__PURE__*/_react.default.createElement(SectionLabel, null, _i18next.default.t('seasonal_insights.key_risks')), /*#__PURE__*/_react.default.createElement(ChipRow, null, r.expected_pollution_types.map(function (p, chipIdx) {
123
+ return /*#__PURE__*/_react.default.createElement(Chip, {
124
+ key: "".concat(p, "-").concat(chipIdx)
125
+ }, p);
126
+ }))) : null, r.seasonal_or_location_factors ? /*#__PURE__*/_react.default.createElement(CardSection, null, /*#__PURE__*/_react.default.createElement(SectionLabel, null, _i18next.default.t('seasonal_insights.seasonal_factors')), /*#__PURE__*/_react.default.createElement(SectionText, null, r.seasonal_or_location_factors)) : null);
127
+ })) : null) : null);
128
+ };
129
+ var Container = _styledComponents.default.div.withConfig({
130
+ displayName: "SeasonalInsights__Container",
131
+ componentId: "sc-jrd7ho-0"
132
+ })(["padding:16px;margin:16px;display:flex;flex-direction:column;gap:12px;text-align:", ";min-width:320px;border-radius:12px;"], function (_ref3) {
133
+ var isRtl = _ref3.isRtl;
134
+ return isRtl ? 'right' : 'left';
135
+ });
136
+ var SummarySection = _styledComponents.default.div.withConfig({
137
+ displayName: "SeasonalInsights__SummarySection",
138
+ componentId: "sc-jrd7ho-1"
139
+ })(["display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:10px;"]);
140
+ var SummaryHeader = _styledComponents.default.div.withConfig({
141
+ displayName: "SeasonalInsights__SummaryHeader",
142
+ componentId: "sc-jrd7ho-2"
143
+ })(["display:flex;align-items:center;justify-content:space-between;gap:12px;flex-direction:", ";"], function (_ref4) {
144
+ var isRtl = _ref4.isRtl;
145
+ return isRtl ? 'row-reverse' : 'row';
146
+ });
147
+ var SummaryTitle = _styledComponents.default.div.withConfig({
148
+ displayName: "SeasonalInsights__SummaryTitle",
149
+ componentId: "sc-jrd7ho-3"
150
+ })(["font-weight:600;font-size:16px;color:#1d1d1d;"]);
151
+ var SummaryText = _styledComponents.default.div.withConfig({
152
+ displayName: "SeasonalInsights__SummaryText",
153
+ componentId: "sc-jrd7ho-4"
154
+ })(["font-size:15px;color:#2b2b2b;line-height:1.5;"]);
155
+ var ToggleRow = _styledComponents.default.div.withConfig({
156
+ displayName: "SeasonalInsights__ToggleRow",
157
+ componentId: "sc-jrd7ho-5"
158
+ })(["display:flex;justify-content:space-between;align-items:center;margin-top:6px;gap:10px;flex-direction:row;.more-info-button:focus,.more-info-button:focus-visible{outline:none;box-shadow:none;}"]);
159
+ var PoweredBy = _styledComponents.default.span.withConfig({
160
+ displayName: "SeasonalInsights__PoweredBy",
161
+ componentId: "sc-jrd7ho-6"
162
+ })(["font-size:12px;color:#6b7280;white-space:nowrap;"]);
163
+ var Attribution = _styledComponents.default.div.withConfig({
164
+ displayName: "SeasonalInsights__Attribution",
165
+ componentId: "sc-jrd7ho-7"
166
+ })(["display:inline-flex;align-items:center;gap:6px;order:1;"]);
167
+ var BrandLogoSmall = _styledComponents.default.img.withConfig({
168
+ displayName: "SeasonalInsights__BrandLogoSmall",
169
+ componentId: "sc-jrd7ho-8"
170
+ })(["height:16px;width:auto;opacity:0.7;flex-shrink:0;"]);
171
+ var MoreInfoWrap = _styledComponents.default.div.withConfig({
172
+ displayName: "SeasonalInsights__MoreInfoWrap",
173
+ componentId: "sc-jrd7ho-9"
174
+ })(["order:2;"]);
175
+ var CardList = _styledComponents.default.div.withConfig({
176
+ displayName: "SeasonalInsights__CardList",
177
+ componentId: "sc-jrd7ho-10"
178
+ })(["display:flex;flex-direction:column;gap:12px;"]);
179
+ var Card = _styledComponents.default.div.withConfig({
180
+ displayName: "SeasonalInsights__Card",
181
+ componentId: "sc-jrd7ho-11"
182
+ })(["padding:14px;border-radius:10px;background:#ffffff;border:1px solid #e4e6ea;box-shadow:0 1px 4px rgba(0,0,0,0.05);display:flex;flex-direction:column;gap:10px;"]);
183
+ var CardHeader = _styledComponents.default.div.withConfig({
184
+ displayName: "SeasonalInsights__CardHeader",
185
+ componentId: "sc-jrd7ho-12"
186
+ })(["display:flex;align-items:center;gap:8px;justify-content:space-between;"]);
187
+ var TitleBlock = _styledComponents.default.div.withConfig({
188
+ displayName: "SeasonalInsights__TitleBlock",
189
+ componentId: "sc-jrd7ho-13"
190
+ })(["display:inline-flex;align-items:center;margin-inline-start:-14px;"]);
191
+ var CardTitle = _styledComponents.default.div.withConfig({
192
+ displayName: "SeasonalInsights__CardTitle",
193
+ componentId: "sc-jrd7ho-14"
194
+ })(["font-weight:600;font-size:15px;color:#1e1e1e;"]);
195
+ var CardSection = _styledComponents.default.div.withConfig({
196
+ displayName: "SeasonalInsights__CardSection",
197
+ componentId: "sc-jrd7ho-15"
198
+ })(["display:flex;flex-direction:column;gap:6px;"]);
199
+ var SectionLabel = _styledComponents.default.div.withConfig({
200
+ displayName: "SeasonalInsights__SectionLabel",
201
+ componentId: "sc-jrd7ho-16"
202
+ })(["font-weight:600;font-size:13px;color:#2f333a;"]);
203
+ var SectionText = _styledComponents.default.div.withConfig({
204
+ displayName: "SeasonalInsights__SectionText",
205
+ componentId: "sc-jrd7ho-17"
206
+ })(["font-size:14px;color:#3d3d3d;line-height:1.45;"]);
207
+ var ChipRow = _styledComponents.default.div.withConfig({
208
+ displayName: "SeasonalInsights__ChipRow",
209
+ componentId: "sc-jrd7ho-18"
210
+ })(["display:flex;gap:8px;flex-wrap:wrap;"]);
211
+ var Chip = _styledComponents.default.span.withConfig({
212
+ displayName: "SeasonalInsights__Chip",
213
+ componentId: "sc-jrd7ho-19"
214
+ })(["background:#f1f3f5;color:#1f2933;border-radius:12px;padding:6px 10px;font-size:12px;font-weight:500;border:1px solid #e0e4ea;"]);
215
+ var formatSectorIconName = function formatSectorIconName(value) {
216
+ return (value || '').toString().trim().toLowerCase().replace(/[^a-z0-9]+/g, '_').replace(/^_+|_+$/g, '');
217
+ };
218
+ var _default = SeasonalInsights;
219
+ exports.default = _default;
220
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaTE4bmV4dCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfU2VjdG9yIiwiX01vcmVJbmZvQnV0dG9uIiwiX3N0cmVhbWlMb2dvIiwiX3VzZU5hdkNvbnRleHQyIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJTZWFzb25hbEluc2lnaHRzIiwiX3JlZiIsImFwaUVuZHBvaW50IiwiZGF0YVByb3AiLCJkYXRhIiwiY2xhc3NOYW1lIiwib25Mb2FkZWQiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJzZXREYXRhIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJzaG93RGV0YWlscyIsInNldFNob3dEZXRhaWxzIiwidXNlRWZmZWN0IiwicmlzayIsInVzZU1lbW8iLCJfZGF0YSRpbnNpZ2h0X2luZm8iLCJyaXNrcyIsImluc2lnaHRfaW5mbyIsImxhbmciLCJsb2NhbGUiLCJzdW1tYXJ5Iiwicmlza19zdW1tYXJ5IiwiZGV0YWlsZWQiLCJkZXRhaWxlZF9yaXNrcyIsImhhc0RldGFpbHMiLCJsZW5ndGgiLCJfdXNlTmF2Q29udGV4dCIsInVzZU5hdkNvbnRleHQiLCJpc1J0bCIsImNvbnRyb2xsZXIiLCJBYm9ydENvbnRyb2xsZXIiLCJmZXRjaCIsInNpZ25hbCIsInRoZW4iLCJfcmVmMiIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwicmVzIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsIm9rIiwiRXJyb3IiLCJjb25jYXQiLCJzdGF0dXMiLCJqc29uIiwiYWJydXB0Iiwic2VudCIsInN0b3AiLCJfeCIsImFwcGx5IiwiYXJndW1lbnRzIiwicGF5bG9hZCIsImNhdGNoIiwiZXJyIiwibmFtZSIsImFib3J0IiwiY3JlYXRlRWxlbWVudCIsIkNvbnRhaW5lciIsIlN1bW1hcnlTZWN0aW9uIiwiU3VtbWFyeUhlYWRlciIsIlN1bW1hcnlUaXRsZSIsImkxOG5leHQiLCJ0IiwiU3VtbWFyeVRleHQiLCJUb2dnbGVSb3ciLCJBdHRyaWJ1dGlvbiIsIkJyYW5kTG9nb1NtYWxsIiwic3JjIiwiU3RyZWFtaUxvZ28iLCJhbHQiLCJQb3dlcmVkQnkiLCJNb3JlSW5mb1dyYXAiLCJNb3JlSW5mb0RpdiIsImhyZWYiLCJvbkNsaWNrIiwiZSIsInByZXZlbnREZWZhdWx0IiwiRnJhZ21lbnQiLCJDYXJkTGlzdCIsIm1hcCIsInIiLCJpZHgiLCJfciRleHBlY3RlZF9wb2xsdXRpb24iLCJDYXJkIiwiQ2FyZEhlYWRlciIsIlRpdGxlQmxvY2siLCJmb3JtYXRTZWN0b3JJY29uTmFtZSIsInNlY3RvciIsInNlY3Rvckljb25OYW1lIiwic2VjdG9yTmFtZSIsInNob3dMYWJlbCIsIndpdGhUb29sdGlwIiwiQ2FyZFRpdGxlIiwic2l1X25hbWUiLCJleHBlY3RlZF9wb2xsdXRpb25fdHlwZXMiLCJDYXJkU2VjdGlvbiIsIlNlY3Rpb25MYWJlbCIsIkNoaXBSb3ciLCJwIiwiY2hpcElkeCIsIkNoaXAiLCJzZWFzb25hbF9vcl9sb2NhdGlvbl9mYWN0b3JzIiwiU2VjdGlvblRleHQiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIl9yZWYzIiwiX3JlZjQiLCJzcGFuIiwiaW1nIiwidmFsdWUiLCJ0b1N0cmluZyIsInRyaW0iLCJ0b0xvd2VyQ2FzZSIsInJlcGxhY2UiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9TZWFzb25hbEluc2lnaHRzL1NlYXNvbmFsSW5zaWdodHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpMThuZXh0IGZyb20gJ2kxOG5leHQnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCBTZWN0b3IgZnJvbSAnLi4vU2VjdG9yJztcbmltcG9ydCB7IE1vcmVJbmZvRGl2IH0gZnJvbSAnc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50X2luZm8vU291cmNlRGV0YWlscy9Nb3JlSW5mb0J1dHRvbic7XG5pbXBvcnQgU3RyZWFtaUxvZ28gZnJvbSAnc3JjL2Fzc2V0cy9zdHJlYW1pLWxvZ28uc3ZnJztcbmltcG9ydCB7IHVzZU5hdkNvbnRleHQgfSBmcm9tICdzcmMvaG9va3MvdXNlTmF2Q29udGV4dCc7XG5cbnR5cGUgRGV0YWlsZWRSaXNrID0ge1xuICBzZWN0b3I/OiBzdHJpbmc7XG4gIHNpdV9uYW1lPzogc3RyaW5nO1xuICBleHBlY3RlZF9wb2xsdXRpb25fdHlwZXM/OiBzdHJpbmdbXTtcbiAgc2Vhc29uYWxfb3JfbG9jYXRpb25fZmFjdG9ycz86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFNlYXNvbmFsSW5zaWdodFJlc3BvbnNlID0ge1xuICBsb2NhbGU6IHN0cmluZztcbiAgaWQ/OiBudW1iZXI7XG4gIHN0YXJ0X3RpbWU/OiBzdHJpbmc7XG4gIGVuZF90aW1lPzogc3RyaW5nO1xuICBpbnNpZ2h0X2luZm8/OiB7XG4gICAgcmlza3M/OiB7XG4gICAgICBbbGFuZzogc3RyaW5nXToge1xuICAgICAgICByaXNrX3N1bW1hcnk/OiBzdHJpbmc7XG4gICAgICAgIGRldGFpbGVkX3Jpc2tzPzogRGV0YWlsZWRSaXNrW107XG4gICAgICB9O1xuICAgIH07XG4gICAgc3RhcnRfdGltZT86IHN0cmluZztcbiAgICBlbmRfdGltZT86IHN0cmluZztcbiAgICBvdmVyYWxsX2NvbmZpZGVuY2U/OiBzdHJpbmc7XG4gICAgd2F0ZXJfYXV0aG9yaXR5X2lkPzogc3RyaW5nIHwgbnVtYmVyO1xuICB9O1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBTZWFzb25hbEluc2lnaHRzUHJvcHMge1xuICAvKiogSWYgcHJvdmlkZWQsIHRoZSBjb21wb25lbnQgd2lsbCBmZXRjaCB0aGUgaW5zaWdodCBwYXlsb2FkIGZyb20gdGhpcyBlbmRwb2ludC4gKi9cbiAgYXBpRW5kcG9pbnQ/OiBzdHJpbmc7XG4gIC8qKiBJZiBwcm92aWRlZCwgdGhlIGNvbXBvbmVudCB3aWxsIHJlbmRlciB1c2luZyB0aGlzIGRhdGEgYW5kIHdpbGwgTk9UIGZldGNoLiAqL1xuICBkYXRhPzogU2Vhc29uYWxJbnNpZ2h0UmVzcG9uc2UgfCBudWxsO1xuICAvKiogT3B0aW9uYWwgb3ZlcnJpZGU6ICdoZScsICdlbicsIGV0Yy4gRGVmYXVsdHMgdG8gYXV0by1kZXRlY3QgYmFzZWQgb24gZG9jdW1lbnQgZGlyZWN0aW9uIC8gYnJvd3NlciBsYW5ndWFnZS4gKi9cbiAgbGFuZ3VhZ2U/OiBzdHJpbmc7XG4gIC8qKiBPcHRpb25hbCBjbGFzc05hbWUgZm9yIG91dGVyIHdyYXBwZXIgKi9cbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICAvKiogT3B0aW9uYWwgY2FsbGJhY2sgdG8gcmVjZWl2ZSByYXcgcGF5bG9hZCAob25seSB3aGVuIGZldGNoaW5nKS4gKi9cbiAgb25Mb2FkZWQ/OiAoZGF0YTogU2Vhc29uYWxJbnNpZ2h0UmVzcG9uc2UpID0+IHZvaWQ7XG59XG5cbmNvbnN0IFNlYXNvbmFsSW5zaWdodHM6IFJlYWN0LkZDPFNlYXNvbmFsSW5zaWdodHNQcm9wcz4gPSAoe1xuICBhcGlFbmRwb2ludCxcbiAgZGF0YTogZGF0YVByb3AsXG4gIGNsYXNzTmFtZSxcbiAgb25Mb2FkZWQsXG59KSA9PiB7XG4gIGNvbnN0IFtkYXRhLCBzZXREYXRhXSA9IHVzZVN0YXRlPFNlYXNvbmFsSW5zaWdodFJlc3BvbnNlIHwgbnVsbD4oXG4gICAgZGF0YVByb3AgPz8gbnVsbCxcbiAgKTtcbiAgY29uc3QgW3Nob3dEZXRhaWxzLCBzZXRTaG93RGV0YWlsc10gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG5cbiAgLy8gSWYgcGFyZW50IHByb3ZpZGVzIGRhdGEsIHJlbmRlciBpdCBhbmQgc2tpcCBmZXRjaGluZy5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAodHlwZW9mIGRhdGFQcm9wID09PSAndW5kZWZpbmVkJykgcmV0dXJuO1xuICAgIHNldERhdGEoZGF0YVByb3AgPz8gbnVsbCk7XG4gIH0sIFtkYXRhUHJvcF0pO1xuXG4gIGNvbnN0IHJpc2sgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCByaXNrcyA9IGRhdGE/Lmluc2lnaHRfaW5mbz8ucmlza3M7XG4gICAgaWYgKCFyaXNrcykgcmV0dXJuIG51bGw7XG4gICAgY29uc3QgbGFuZyA9IGRhdGE/LmxvY2FsZSB8fCAnZW4nO1xuICAgIHJldHVybiByaXNrc1tsYW5nXSB8fCBudWxsO1xuICB9LCBbZGF0YV0pO1xuXG4gIGNvbnN0IHN1bW1hcnkgPSByaXNrPy5yaXNrX3N1bW1hcnkgfHwgJyc7XG4gIGNvbnN0IGRldGFpbGVkID0gcmlzaz8uZGV0YWlsZWRfcmlza3MgfHwgW107XG4gIGNvbnN0IGhhc0RldGFpbHMgPSBkZXRhaWxlZC5sZW5ndGggPiAwO1xuICBjb25zdCB7IGlzUnRsIH0gPSB1c2VOYXZDb250ZXh0KCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBJZiBwYXJlbnQgcHJvdmlkZXMgZGF0YSwgZG8gbm90IGZldGNoLlxuICAgIGlmICh0eXBlb2YgZGF0YVByb3AgIT09ICd1bmRlZmluZWQnKSByZXR1cm47XG4gICAgaWYgKCFhcGlFbmRwb2ludCkgcmV0dXJuO1xuXG4gICAgY29uc3QgY29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAgIGZldGNoKGFwaUVuZHBvaW50LCB7IHNpZ25hbDogY29udHJvbGxlci5zaWduYWwgfSlcbiAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHtcbiAgICAgICAgaWYgKCFyZXMub2spIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFJlcXVlc3QgZmFpbGVkICgke3Jlcy5zdGF0dXN9KWApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAoYXdhaXQgcmVzLmpzb24oKSkgYXMgU2Vhc29uYWxJbnNpZ2h0UmVzcG9uc2U7XG4gICAgICB9KVxuICAgICAgLnRoZW4oKHBheWxvYWQpID0+IHtcbiAgICAgICAgc2V0RGF0YShwYXlsb2FkKTtcbiAgICAgICAgaWYgKG9uTG9hZGVkKSBvbkxvYWRlZChwYXlsb2FkKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICBpZiAoZXJyPy5uYW1lID09PSAnQWJvcnRFcnJvcicpIHJldHVybjtcbiAgICAgICAgc2V0RGF0YShudWxsKTtcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuICgpID0+IGNvbnRyb2xsZXIuYWJvcnQoKTtcbiAgfSwgW2FwaUVuZHBvaW50LCBkYXRhUHJvcCwgb25Mb2FkZWRdKTtcblxuICByZXR1cm4gKFxuICAgIDxDb250YWluZXIgaXNSdGw9e2lzUnRsfT5cbiAgICAgIDxTdW1tYXJ5U2VjdGlvbj5cbiAgICAgICAgPFN1bW1hcnlIZWFkZXIgaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICA8U3VtbWFyeVRpdGxlPlxuICAgICAgICAgICAge2kxOG5leHQudCgnc2Vhc29uYWxfaW5zaWdodHMuc3VtbWFyeV9oZWFkaW5nJyl9XG4gICAgICAgICAgPC9TdW1tYXJ5VGl0bGU+XG4gICAgICAgIDwvU3VtbWFyeUhlYWRlcj5cbiAgICAgICAgPFN1bW1hcnlUZXh0PntzdW1tYXJ5fTwvU3VtbWFyeVRleHQ+XG4gICAgICA8L1N1bW1hcnlTZWN0aW9uPlxuICAgICAgPFRvZ2dsZVJvdz5cbiAgICAgICAgPEF0dHJpYnV0aW9uPlxuICAgICAgICAgIDxCcmFuZExvZ29TbWFsbCBzcmM9e1N0cmVhbWlMb2dvfSBhbHQ9XCJTdHJlYW1pXCIgLz5cbiAgICAgICAgICA8UG93ZXJlZEJ5PnsnUG93ZXJlZCBieSBTVFJFQU1pJ308L1Bvd2VyZWRCeT5cbiAgICAgICAgPC9BdHRyaWJ1dGlvbj5cbiAgICAgICAge2hhc0RldGFpbHMgPyAoXG4gICAgICAgICAgPE1vcmVJbmZvV3JhcD5cbiAgICAgICAgICAgIDxNb3JlSW5mb0Rpdj5cbiAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibW9yZS1pbmZvLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IHtcbiAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgIHNldFNob3dEZXRhaWxzKChwcmV2KSA9PiAhcHJldik7XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICBhcmlhLWV4cGFuZGVkPXtzaG93RGV0YWlsc31cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtzaG93RGV0YWlsc1xuICAgICAgICAgICAgICAgICAgPyBpMThuZXh0LnQoJ3NlYXNvbmFsX2luc2lnaHRzLnNob3dfbGVzcycpXG4gICAgICAgICAgICAgICAgICA6IGkxOG5leHQudCgnc2Vhc29uYWxfaW5zaWdodHMuc2hvd19tb3JlJyl9XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvTW9yZUluZm9EaXY+XG4gICAgICAgICAgPC9Nb3JlSW5mb1dyYXA+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9Ub2dnbGVSb3c+XG5cbiAgICAgIHtoYXNEZXRhaWxzID8gKFxuICAgICAgICA8PlxuICAgICAgICAgIHtzaG93RGV0YWlscyA/IChcbiAgICAgICAgICAgIDxDYXJkTGlzdD5cbiAgICAgICAgICAgICAge2RldGFpbGVkLm1hcCgociwgaWR4KSA9PiAoXG4gICAgICAgICAgICAgICAgPENhcmQga2V5PXtpZHh9PlxuICAgICAgICAgICAgICAgICAgPENhcmRIZWFkZXI+XG4gICAgICAgICAgICAgICAgICAgIDxUaXRsZUJsb2NrPlxuICAgICAgICAgICAgICAgICAgICAgIHtmb3JtYXRTZWN0b3JJY29uTmFtZShyLnNlY3RvcikgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8U2VjdG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNlY3Rvckljb25OYW1lPXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXRTZWN0b3JJY29uTmFtZShyLnNlY3RvcikgfHwgJ01pc3NpbmcnXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgc2VjdG9yTmFtZT17ci5zZWN0b3J9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dMYWJlbD17ZmFsc2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhUb29sdGlwPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICA8Q2FyZFRpdGxlPntyLnNpdV9uYW1lfTwvQ2FyZFRpdGxlPlxuICAgICAgICAgICAgICAgICAgICA8L1RpdGxlQmxvY2s+XG4gICAgICAgICAgICAgICAgICA8L0NhcmRIZWFkZXI+XG5cbiAgICAgICAgICAgICAgICAgIHtyLmV4cGVjdGVkX3BvbGx1dGlvbl90eXBlcz8ubGVuZ3RoID8gKFxuICAgICAgICAgICAgICAgICAgICA8Q2FyZFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgICAgICAgPFNlY3Rpb25MYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpMThuZXh0LnQoJ3NlYXNvbmFsX2luc2lnaHRzLmtleV9yaXNrcycpfVxuICAgICAgICAgICAgICAgICAgICAgIDwvU2VjdGlvbkxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgIDxDaGlwUm93PlxuICAgICAgICAgICAgICAgICAgICAgICAge3IuZXhwZWN0ZWRfcG9sbHV0aW9uX3R5cGVzLm1hcCgocCwgY2hpcElkeCkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2hpcCBrZXk9e2Ake3B9LSR7Y2hpcElkeH1gfT57cH08L0NoaXA+XG4gICAgICAgICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L0NoaXBSb3c+XG4gICAgICAgICAgICAgICAgICAgIDwvQ2FyZFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgICApIDogbnVsbH1cblxuICAgICAgICAgICAgICAgICAge3Iuc2Vhc29uYWxfb3JfbG9jYXRpb25fZmFjdG9ycyA/IChcbiAgICAgICAgICAgICAgICAgICAgPENhcmRTZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgIDxTZWN0aW9uTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aTE4bmV4dC50KCdzZWFzb25hbF9pbnNpZ2h0cy5zZWFzb25hbF9mYWN0b3JzJyl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9TZWN0aW9uTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPFNlY3Rpb25UZXh0PlxuICAgICAgICAgICAgICAgICAgICAgICAge3Iuc2Vhc29uYWxfb3JfbG9jYXRpb25fZmFjdG9yc31cbiAgICAgICAgICAgICAgICAgICAgICA8L1NlY3Rpb25UZXh0PlxuICAgICAgICAgICAgICAgICAgICA8L0NhcmRTZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgPC9DYXJkPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvQ2FyZExpc3Q+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvPlxuICAgICAgKSA6IG51bGx9XG4gICAgPC9Db250YWluZXI+XG4gICk7XG59O1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2PHsgaXNSdGw6IGJvb2xlYW4gfT5gXG4gIHBhZGRpbmc6IDE2cHg7XG4gIG1hcmdpbjogMTZweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxMnB4O1xuICB0ZXh0LWFsaWduOiAkeyh7IGlzUnRsIH0pID0+IChpc1J0bCA/ICdyaWdodCcgOiAnbGVmdCcpfTtcbiAgLy8gYmFja2dyb3VuZDogI2Y3ZjhmYTtcbiAgbWluLXdpZHRoOiAzMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbmA7XG5cbmNvbnN0IFN1bW1hcnlTZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA4cHg7XG4gIHBhZGRpbmc6IDEycHggMTRweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgLy8gYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgLy8gYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4wNik7XG5gO1xuXG5jb25zdCBTdW1tYXJ5SGVhZGVyID0gc3R5bGVkLmRpdjx7IGlzUnRsOiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMTJweDtcbiAgZmxleC1kaXJlY3Rpb246ICR7KHsgaXNSdGwgfSkgPT4gKGlzUnRsID8gJ3Jvdy1yZXZlcnNlJyA6ICdyb3cnKX07XG5gO1xuXG5jb25zdCBTdW1tYXJ5VGl0bGUgPSBzdHlsZWQuZGl2YFxuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGNvbG9yOiAjMWQxZDFkO1xuYDtcblxuY29uc3QgU3VtbWFyeVRleHQgPSBzdHlsZWQuZGl2YFxuICBmb250LXNpemU6IDE1cHg7XG4gIGNvbG9yOiAjMmIyYjJiO1xuICBsaW5lLWhlaWdodDogMS41O1xuYDtcblxuY29uc3QgVG9nZ2xlUm93ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA2cHg7XG4gIGdhcDogMTBweDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAubW9yZS1pbmZvLWJ1dHRvbjpmb2N1cyxcbiAgLm1vcmUtaW5mby1idXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5gO1xuXG5jb25zdCBQb3dlcmVkQnkgPSBzdHlsZWQuc3BhbmBcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogIzZiNzI4MDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbmA7XG5cbmNvbnN0IEF0dHJpYnV0aW9uID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNnB4O1xuICBvcmRlcjogMTtcbmA7XG5cbmNvbnN0IEJyYW5kTG9nb1NtYWxsID0gc3R5bGVkLmltZ2BcbiAgaGVpZ2h0OiAxNnB4O1xuICB3aWR0aDogYXV0bztcbiAgb3BhY2l0eTogMC43O1xuICBmbGV4LXNocmluazogMDtcbmA7XG5cbmNvbnN0IE1vcmVJbmZvV3JhcCA9IHN0eWxlZC5kaXZgXG4gIG9yZGVyOiAyO1xuYDtcblxuY29uc3QgQ2FyZExpc3QgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDEycHg7XG5gO1xuXG5jb25zdCBDYXJkID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMTRweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U0ZTZlYTtcbiAgYm94LXNoYWRvdzogMCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTBweDtcbmA7XG5cbmNvbnN0IENhcmRIZWFkZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuYDtcblxuY29uc3QgVGl0bGVCbG9jayA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAvLyAgIGdhcDogOHB4O1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAtMTRweDtcbmA7XG5cbmNvbnN0IENhcmRUaXRsZSA9IHN0eWxlZC5kaXZgXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgY29sb3I6ICMxZTFlMWU7XG5gO1xuXG5jb25zdCBDYXJkU2VjdGlvbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogNnB4O1xuYDtcblxuY29uc3QgU2VjdGlvbkxhYmVsID0gc3R5bGVkLmRpdmBcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzJmMzMzYTtcbmA7XG5cbmNvbnN0IFNlY3Rpb25UZXh0ID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogIzNkM2QzZDtcbiAgbGluZS1oZWlnaHQ6IDEuNDU7XG5gO1xuXG5jb25zdCBDaGlwUm93ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA4cHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbmA7XG5cbmNvbnN0IENoaXAgPSBzdHlsZWQuc3BhbmBcbiAgYmFja2dyb3VuZDogI2YxZjNmNTtcbiAgY29sb3I6ICMxZjI5MzM7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIHBhZGRpbmc6IDZweCAxMHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMGU0ZWE7XG5gO1xuXG5jb25zdCBmb3JtYXRTZWN0b3JJY29uTmFtZSA9ICh2YWx1ZT86IHN0cmluZykgPT5cbiAgKHZhbHVlIHx8ICcnKVxuICAgIC50b1N0cmluZygpXG4gICAgLnRyaW0oKVxuICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgLnJlcGxhY2UoL1teYS16MC05XSsvZywgJ18nKVxuICAgIC5yZXBsYWNlKC9eXyt8XyskL2csICcnKTtcblxuZXhwb3J0IGRlZmF1bHQgU2Vhc29uYWxJbnNpZ2h0cztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsUUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsT0FBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksZUFBQSxHQUFBSixPQUFBO0FBQWtHLElBQUFLLFlBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUVsRyxJQUFBTSxlQUFBLEdBQUFOLE9BQUE7QUFBd0QsU0FBQU8seUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxX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
@@ -18,6 +18,7 @@ var _AlertIcon = require("@svgr/webpack?&svgo=false&ref!./AlertIcon.svg");
18
18
  var _EventUtils = require("pages/EventsPage/events/events_list/EventUtils");
19
19
  var _useUserTimeZone = require("hooks/useUserTimeZone");
20
20
  var _SiteName = _interopRequireDefault(require("../../ui-kit/siteName/SiteName"));
21
+ var _UpstreamBadge = _interopRequireDefault(require("./UpstreamBadge"));
21
22
  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); }
22
23
  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; }
23
24
  var SevereEvent = function SevereEvent(_ref) {
@@ -71,7 +72,22 @@ var SevereEvent = function SevereEvent(_ref) {
71
72
  className: "top"
72
73
  }, eventSource(event), event.discharging && /*#__PURE__*/_react.default.createElement("div", {
73
74
  className: "discharging"
74
- }, _i18n.default.t('events_overview.discharging'))), /*#__PURE__*/_react.default.createElement("div", {
75
+ }, _i18n.default.t('events_overview.discharging')), event.observations.length > 1 && /*#__PURE__*/_react.default.createElement("div", {
76
+ className: "upstream-badge"
77
+ }, /*#__PURE__*/_react.default.createElement(_InfoTooltip.InfoTooltip, {
78
+ key: "upstream-".concat(event.id),
79
+ data: _i18n.default.t('event_info.upstream_observations', {
80
+ count: event.observations.length
81
+ }),
82
+ title: '',
83
+ alignToBottom: false,
84
+ alternateIcon: /*#__PURE__*/_react.default.createElement(_UpstreamBadge.default, {
85
+ count: event.observations.length,
86
+ className: "upstream-badge"
87
+ }),
88
+ padding: false,
89
+ reversed: true
90
+ }, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)))), /*#__PURE__*/_react.default.createElement("div", {
75
91
  className: "content"
76
92
  }, /*#__PURE__*/_react.default.createElement("div", {
77
93
  className: "seen"
@@ -155,4 +171,4 @@ var SevereEvent = function SevereEvent(_ref) {
155
171
  };
156
172
  exports.SevereEvent = SevereEvent;
157
173
  var severities = ['low', 'high', 'extreme'];
158
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfbG9kYXNoIiwiX2kxOG4iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1RpbWVGb3JtYXQiLCJfaW5mbyIsIl9FdGEiLCJfSW5mb1Rvb2x0aXAiLCJfQWxlcnRJY29uIiwiX0V2ZW50VXRpbHMiLCJfdXNlVXNlclRpbWVab25lIiwiX1NpdGVOYW1lIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJTZXZlcmVFdmVudCIsIl9yZWYiLCJldGFXV1RQIiwiX3JlZiRtc2ciLCJtc2ciLCJldmVudCIsImhhbmRsZUNsaWNrIiwib25Nb3VzZUVudGVyRXZlbnQiLCJvbk1vdXNlTGVhdmVFdmVudCIsImV4Y2VwdGlvbkFsZXJ0IiwidmFsaWRhdGVFdmVudCIsIl91c2VNZW1vIiwidXNlTWVtbyIsInBhcnNlRXZlbnREYXRhIiwiZmlyc3RzZWVuIiwibGFzdHNlZW4iLCJkaXNjaGFyZ2VUaW1lIiwiY2FsY3VsYXRlVGltZUR1cmF0aW9uIiwic3RhcnRfdGltZSIsImVuZF90aW1lIiwibGFzdF9zZWVuX3RpbWUiLCJpdGVtQ29udGFpbmVyIiwidXNlUmVmIiwiZXZlbnRTb3VyY2UiLCJzb3VyY2VfdHlwZSIsInNvdXJjZXMiLCJwb2xsdXRlciIsIl9maXJzdCIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJpMThuIiwidCIsImZpcnN0IiwicG9pbnRfbmFtZSIsInVzZUVmZmVjdCIsInVuZGVmaW5lZCIsInJlZiIsIm9uQ2xpY2siLCJvbk1vdXNlRW50ZXIiLCJvbk1vdXNlTGVhdmUiLCJjb25jYXQiLCJzZXZlcml0aWVzIiwiTnVtYmVyIiwic2V2ZXJpdHkiLCJpZCIsImRpc2NoYXJnaW5nIiwic2l0ZSIsInRpbWVzdGFtcCIsInRvU3RyaW5nIiwidGltZV96b25lIiwiZGF0ZSIsInRpbWUiLCJocmVmIiwiaW50ZXJlc3RQb2ludHMiLCJldmVudF9pZHMiLCJpbmNsdWRlcyIsIm1lc3NhZ2VzIiwibWFwIiwiZXZlbnRfaWQiLCJJbmZvVG9vbHRpcCIsImRhdGEiLCJtZXNzYWdlIiwidGl0bGUiLCJhbGlnblRvQm90dG9tIiwiYWx0ZXJuYXRlSWNvbiIsIlJlYWN0Q29tcG9uZW50IiwicmV2ZXJzZWQiLCJwYWRkaW5nIiwiRnJhZ21lbnQiLCJ3aWR0aCIsImhlaWdodCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9TZXZlcmVFdmVudC9TZXZlcmVFdmVudC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgZmlyc3QgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IGkxOG4gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IFRpbWVGb3JtYXQgZnJvbSAnc3JjL3V0aWxpdGllcy9UaW1lRm9ybWF0JztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIEluZm8gfSBmcm9tICcuL2Fzc2V0cy9pbmZvLnN2Zyc7XG5pbXBvcnQgRXRhIGZyb20gJy4vRXRhL0V0YSc7XG5pbXBvcnQgJy4vU2V2ZXJlRXZlbnQuc2Nzcyc7XG5pbXBvcnQgeyBldGFXV1RQIH0gZnJvbSAnc3JjL3BhZ2VzL1V0aWxpdHlEYXNoYm9hcmRQYWdlL01vc3RTZXZlcmVFdmVudHMvbW9kZWxzJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBJbmZvVG9vbHRpcCB9IGZyb20gJ3NyYy91aS1raXQvSW5mb1Rvb2x0aXAvSW5mb1Rvb2x0aXAnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgQWxlcnRJY29uIH0gZnJvbSAnLi9BbGVydEljb24uc3ZnJztcbmltcG9ydCB7IHBhcnNlRXZlbnREYXRhIH0gZnJvbSAnc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0V2ZW50VXRpbHMnO1xuaW1wb3J0IHsgY2FsY3VsYXRlVGltZUR1cmF0aW9uIH0gZnJvbSAnc3JjL2hvb2tzL3VzZVVzZXJUaW1lWm9uZSc7XG5pbXBvcnQgU2l0ZU5hbWUgZnJvbSAnLi4vLi4vdWkta2l0L3NpdGVOYW1lL1NpdGVOYW1lJztcblxuZXhwb3J0IGludGVyZmFjZSBTZXZlcmVFdmVudFByb3BzIHtcbiAgZXRhV1dUUD86IGV0YVdXVFA7XG4gIG1zZz86IHN0cmluZztcbiAgZXZlbnQ6IElFdmVudDtcbiAgb25Nb3VzZUVudGVyRXZlbnQ/OiAoZXZlbnQ6IGFueSkgPT4gdm9pZDtcbiAgb25Nb3VzZUxlYXZlRXZlbnQ/OiAoKSA9PiB2b2lkO1xuICBoYW5kbGVDbGljaz86IChhcmcyOiBhbnksIGFyZzE6IGFueSkgPT4gdm9pZDtcbiAgdmFsdWVzRnJvbUtRTD86IHN0cmluZztcbiAgZXhjZXB0aW9uQWxlcnQ/OiB7XG4gICAgbWVzc2FnZXM6IHsgbWVzc2FnZTogYW55OyBldmVudF9pZDogbnVtYmVyIH1bXTtcbiAgICBldmVudF9pZHM6IG51bWJlcltdO1xuICB9O1xuICB2YWxpZGF0ZUV2ZW50PzogKGV2ZW50OiBJRXZlbnQpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBjb25zdCBTZXZlcmVFdmVudDogUmVhY3QuRkM8U2V2ZXJlRXZlbnRQcm9wcz4gPSAoe1xuICBldGFXV1RQLFxuICBtc2cgPSAnJyxcbiAgZXZlbnQsXG4gIGhhbmRsZUNsaWNrLFxuICBvbk1vdXNlRW50ZXJFdmVudCxcbiAgb25Nb3VzZUxlYXZlRXZlbnQsXG4gIGV4Y2VwdGlvbkFsZXJ0LFxuICB2YWxpZGF0ZUV2ZW50LFxufSkgPT4ge1xuICBjb25zdCB7IGZpcnN0c2VlbiwgbGFzdHNlZW4gfSA9IHVzZU1lbW8oKCkgPT4gcGFyc2VFdmVudERhdGEoZXZlbnQpLCBbZXZlbnRdKTtcbiAgY29uc3QgZGlzY2hhcmdlVGltZSA9IGNhbGN1bGF0ZVRpbWVEdXJhdGlvbih7XG4gICAgc3RhcnRfdGltZTogZmlyc3RzZWVuLnN0YXJ0X3RpbWUsXG4gICAgZW5kX3RpbWU6IGZpcnN0c2Vlbi5sYXN0X3NlZW5fdGltZSxcbiAgfSk7XG4gIGNvbnN0IGl0ZW1Db250YWluZXIgPSB1c2VSZWY8YW55PihudWxsKTtcblxuICAvKiBTaG93IG5hbWUgaW4gdGhlIHRpdGxlIGZvciBmYWN0b3JpZXMgb25seSAqL1xuICBjb25zdCBldmVudFNvdXJjZSA9IChldmVudDogSUV2ZW50KSA9PiB7XG4gICAgaWYgKGV2ZW50LnNvdXJjZV90eXBlID09PSAnZmFjdG9yeScgJiYgZXZlbnQuc291cmNlc1swXS5wb2xsdXRlcikge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzb3VyY2VcIj5cbiAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQubW9zdC1zZXZlcmUtZXZlbnRzLnNvdXJjZScpfVxuICAgICAgICAgIDombmJzcDtcbiAgICAgICAgICB7Zmlyc3QoZXZlbnQuc291cmNlcyk/LnBvaW50X25hbWUgfHwgJ05vIE5hbWUnfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICB2YWxpZGF0ZUV2ZW50ICE9PSB1bmRlZmluZWQgJiYgdmFsaWRhdGVFdmVudChldmVudCk7XG4gIH0sIFtdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHJlZj17aXRlbUNvbnRhaW5lcn1cbiAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUNsaWNrICYmIGhhbmRsZUNsaWNrKGV2ZW50LCBpdGVtQ29udGFpbmVyKX1cbiAgICAgIG9uTW91c2VFbnRlcj17KCkgPT4gb25Nb3VzZUVudGVyRXZlbnQgJiYgb25Nb3VzZUVudGVyRXZlbnQoZXZlbnQpfVxuICAgICAgb25Nb3VzZUxlYXZlPXsoKSA9PiBvbk1vdXNlTGVhdmVFdmVudCAmJiBvbk1vdXNlTGVhdmVFdmVudCgpfVxuICAgICAgY2xhc3NOYW1lPXtgc2V2ZXJlLWV2ZW50ICR7c2V2ZXJpdGllc1tOdW1iZXIoZXZlbnQuc2V2ZXJpdHkpXX1gfVxuICAgICAgZGF0YS1ldmVudC1pZD17ZXZlbnQuaWR9XG4gICAgPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0b3BcIj5cbiAgICAgICAge2V2ZW50U291cmNlKGV2ZW50KX1cblxuICAgICAgICB7ZXZlbnQuZGlzY2hhcmdpbmcgJiYgKFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGlzY2hhcmdpbmdcIj5cbiAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5kaXNjaGFyZ2luZycpfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbnRlbnRcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzZWVuXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWxzXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpcnN0XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidHlwZS10aXRsZVwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAnZGFzaGJvYXJkX3YyLnV0aWxpdHlfZGFzaGJvYXJkLm1vc3Qtc2V2ZXJlLWV2ZW50cy5maXJzdC1zZWVuJyxcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDpcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cIm1vYmlsZVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWRkclwiPlxuICAgICAgICAgICAgICAgICAgPFNpdGVOYW1lIHNpdGU9e2ZpcnN0c2Vlbi5wb2ludF9uYW1lfSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGF0ZVwiPlxuICAgICAgICAgICAgICAgICAgPFRpbWVGb3JtYXRcbiAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wPXtmaXJzdHNlZW4uc3RhcnRfdGltZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgICAgICB0aW1lX3pvbmU9e2ZpcnN0c2Vlbi50aW1lX3pvbmUudG9TdHJpbmcoKX1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYXN0XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidHlwZS10aXRsZVwiPlxuICAgICAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICAgICAge2kxOG4udChcbiAgICAgICAgICAgICAgICAgICdkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQubW9zdC1zZXZlcmUtZXZlbnRzLmxhc3Qtc2VlbicsXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA6XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJtb2JpbGVcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImFkZHJcIj5cbiAgICAgICAgICAgICAgICAgIDxTaXRlTmFtZSBzaXRlPXtsYXN0c2Vlbi5wb2ludF9uYW1lfSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGF0ZVwiPlxuICAgICAgICAgICAgICAgICAgPFRpbWVGb3JtYXRcbiAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wPXtsYXN0c2Vlbi5sYXN0X3NlZW5fdGltZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgICAgICB0aW1lX3pvbmU9e2xhc3RzZWVuLnRpbWVfem9uZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydsb3dlcl9kZXRhaWxzJ30+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRvdGFsLXRpbWVcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0eXBlLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmRpc2NoYXJnZV90aW1lJyl9XG4gICAgICAgICAgICAgICAgey8qVG90YWwgdGltZSovfTpcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGltZVwiPntkaXNjaGFyZ2VUaW1lfTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB7ZXRhV1dUUCAmJiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJldGEtd3d0cFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0eXBlLXRpdGxlXCI+XG4gICAgICAgICAgICAgIHtpMThuLnQoXG4gICAgICAgICAgICAgICAgJ2Rhc2hib2FyZF92Mi51dGlsaXR5X2Rhc2hib2FyZC5tb3N0LXNldmVyZS1ldmVudHMuZXRhLXd3dHAnLFxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA6XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaW5mb1wiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRhdGUgXCI+XG4gICAgICAgICAgICAgICAge2V0YVdXVFAuZGF0ZX1cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0aW1lXCI+ICh7ZXRhV1dUUC50aW1lfSk8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzTmFtZT1cIm1vcmUgXCI+XG4gICAgICAgICAgICAgICAge2V0YVdXVFAuaW50ZXJlc3RQb2ludHNcbiAgICAgICAgICAgICAgICAgID8gYCR7ZXRhV1dUUC5pbnRlcmVzdFBvaW50c30gJHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgJ2Rhc2hib2FyZF92Mi51dGlsaXR5X2Rhc2hib2FyZC5tb3N0LXNldmVyZS1ldmVudHMubW9yZS1pbnRlcnNldCcsXG4gICAgICAgICAgICAgICAgICAgICl9YFxuICAgICAgICAgICAgICAgICAgOiAnJ31cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWxlcnQtaWNvblwiPlxuICAgICAgICAgIHtleGNlcHRpb25BbGVydCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICBleGNlcHRpb25BbGVydC5ldmVudF9pZHMuaW5jbHVkZXMoZXZlbnQuaWQpICYmXG4gICAgICAgICAgICBleGNlcHRpb25BbGVydC5tZXNzYWdlcy5tYXAoKG1zZykgPT4ge1xuICAgICAgICAgICAgICBpZiAobXNnLmV2ZW50X2lkID09PSBldmVudC5pZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICA8SW5mb1Rvb2x0aXBcbiAgICAgICAgICAgICAgICAgICAga2V5PXtgYWxlcnQtJHttc2cuZXZlbnRfaWR9YH1cbiAgICAgICAgICAgICAgICAgICAgZGF0YT17bXNnLm1lc3NhZ2V9XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlPXsnJ31cbiAgICAgICAgICAgICAgICAgICAgYWxpZ25Ub0JvdHRvbT17ZmFsc2V9XG4gICAgICAgICAgICAgICAgICAgIGFsdGVybmF0ZUljb249ezxBbGVydEljb24gLz59XG4gICAgICAgICAgICAgICAgICAgIHJldmVyc2VkPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nPXtmYWxzZX1cbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPD48Lz5cbiAgICAgICAgICAgICAgICAgIDwvSW5mb1Rvb2x0aXA+XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8RXRhIGV2ZW50PXtldmVudH0gLz5cblxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17YG1zZyR7bXNnID8gJyBvbicgOiAnJ31gfT5cbiAgICAgICAgICA8SW5mbyB3aWR0aD1cIjEzcHhcIiBoZWlnaHQ9XCIxMnB4XCIgLz5cbiAgICAgICAgICB7bXNnfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuY29uc3Qgc2V2ZXJpdGllcyA9IFsnbG93JywgJ2hpZ2gnLCAnZXh0cmVtZSddO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJB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
174
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfbG9kYXNoIiwiX2kxOG4iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1RpbWVGb3JtYXQiLCJfaW5mbyIsIl9FdGEiLCJfSW5mb1Rvb2x0aXAiLCJfQWxlcnRJY29uIiwiX0V2ZW50VXRpbHMiLCJfdXNlVXNlclRpbWVab25lIiwiX1NpdGVOYW1lIiwiX1Vwc3RyZWFtQmFkZ2UiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIlNldmVyZUV2ZW50IiwiX3JlZiIsImV0YVdXVFAiLCJfcmVmJG1zZyIsIm1zZyIsImV2ZW50IiwiaGFuZGxlQ2xpY2siLCJvbk1vdXNlRW50ZXJFdmVudCIsIm9uTW91c2VMZWF2ZUV2ZW50IiwiZXhjZXB0aW9uQWxlcnQiLCJ2YWxpZGF0ZUV2ZW50IiwiX3VzZU1lbW8iLCJ1c2VNZW1vIiwicGFyc2VFdmVudERhdGEiLCJmaXJzdHNlZW4iLCJsYXN0c2VlbiIsImRpc2NoYXJnZVRpbWUiLCJjYWxjdWxhdGVUaW1lRHVyYXRpb24iLCJzdGFydF90aW1lIiwiZW5kX3RpbWUiLCJsYXN0X3NlZW5fdGltZSIsIml0ZW1Db250YWluZXIiLCJ1c2VSZWYiLCJldmVudFNvdXJjZSIsInNvdXJjZV90eXBlIiwic291cmNlcyIsInBvbGx1dGVyIiwiX2ZpcnN0IiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsImkxOG4iLCJ0IiwiZmlyc3QiLCJwb2ludF9uYW1lIiwidXNlRWZmZWN0IiwidW5kZWZpbmVkIiwicmVmIiwib25DbGljayIsIm9uTW91c2VFbnRlciIsIm9uTW91c2VMZWF2ZSIsImNvbmNhdCIsInNldmVyaXRpZXMiLCJOdW1iZXIiLCJzZXZlcml0eSIsImlkIiwiZGlzY2hhcmdpbmciLCJvYnNlcnZhdGlvbnMiLCJsZW5ndGgiLCJJbmZvVG9vbHRpcCIsImRhdGEiLCJJMThuIiwiY291bnQiLCJ0aXRsZSIsImFsaWduVG9Cb3R0b20iLCJhbHRlcm5hdGVJY29uIiwicGFkZGluZyIsInJldmVyc2VkIiwiRnJhZ21lbnQiLCJzaXRlIiwidGltZXN0YW1wIiwidG9TdHJpbmciLCJ0aW1lX3pvbmUiLCJkYXRlIiwidGltZSIsImhyZWYiLCJpbnRlcmVzdFBvaW50cyIsImV2ZW50X2lkcyIsImluY2x1ZGVzIiwibWVzc2FnZXMiLCJtYXAiLCJldmVudF9pZCIsIm1lc3NhZ2UiLCJSZWFjdENvbXBvbmVudCIsIndpZHRoIiwiaGVpZ2h0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL1NldmVyZUV2ZW50L1NldmVyZUV2ZW50LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgaTE4biBmcm9tICcuLi8uLi91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgVGltZUZvcm1hdCBmcm9tICdzcmMvdXRpbGl0aWVzL1RpbWVGb3JtYXQnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgSW5mbyB9IGZyb20gJy4vYXNzZXRzL2luZm8uc3ZnJztcbmltcG9ydCBFdGEgZnJvbSAnLi9FdGEvRXRhJztcbmltcG9ydCAnLi9TZXZlcmVFdmVudC5zY3NzJztcbmltcG9ydCB7IGV0YVdXVFAgfSBmcm9tICdzcmMvcGFnZXMvVXRpbGl0eURhc2hib2FyZFBhZ2UvTW9zdFNldmVyZUV2ZW50cy9tb2RlbHMnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCB7IEluZm9Ub29sdGlwIH0gZnJvbSAnc3JjL3VpLWtpdC9JbmZvVG9vbHRpcC9JbmZvVG9vbHRpcCc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBBbGVydEljb24gfSBmcm9tICcuL0FsZXJ0SWNvbi5zdmcnO1xuaW1wb3J0IHsgcGFyc2VFdmVudERhdGEgfSBmcm9tICdzcmMvcGFnZXMvRXZlbnRzUGFnZS9ldmVudHMvZXZlbnRzX2xpc3QvRXZlbnRVdGlscyc7XG5pbXBvcnQgeyBjYWxjdWxhdGVUaW1lRHVyYXRpb24gfSBmcm9tICdzcmMvaG9va3MvdXNlVXNlclRpbWVab25lJztcbmltcG9ydCBTaXRlTmFtZSBmcm9tICcuLi8uLi91aS1raXQvc2l0ZU5hbWUvU2l0ZU5hbWUnO1xuaW1wb3J0IFVwc3RyZWFtQmFkZ2UgZnJvbSAnLi9VcHN0cmVhbUJhZGdlJztcbmltcG9ydCBJMThuIGZyb20gJy4uLy4uL3V0aWxpdGllcy9pMThuJztcblxuZXhwb3J0IGludGVyZmFjZSBTZXZlcmVFdmVudFByb3BzIHtcbiAgZXRhV1dUUD86IGV0YVdXVFA7XG4gIG1zZz86IHN0cmluZztcbiAgZXZlbnQ6IElFdmVudDtcbiAgb25Nb3VzZUVudGVyRXZlbnQ/OiAoZXZlbnQ6IGFueSkgPT4gdm9pZDtcbiAgb25Nb3VzZUxlYXZlRXZlbnQ/OiAoKSA9PiB2b2lkO1xuICBoYW5kbGVDbGljaz86IChhcmcyOiBhbnksIGFyZzE6IGFueSkgPT4gdm9pZDtcbiAgdmFsdWVzRnJvbUtRTD86IHN0cmluZztcbiAgZXhjZXB0aW9uQWxlcnQ/OiB7XG4gICAgbWVzc2FnZXM6IHsgbWVzc2FnZTogYW55OyBldmVudF9pZDogbnVtYmVyIH1bXTtcbiAgICBldmVudF9pZHM6IG51bWJlcltdO1xuICB9O1xuICB2YWxpZGF0ZUV2ZW50PzogKGV2ZW50OiBJRXZlbnQpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBjb25zdCBTZXZlcmVFdmVudDogUmVhY3QuRkM8U2V2ZXJlRXZlbnRQcm9wcz4gPSAoe1xuICBldGFXV1RQLFxuICBtc2cgPSAnJyxcbiAgZXZlbnQsXG4gIGhhbmRsZUNsaWNrLFxuICBvbk1vdXNlRW50ZXJFdmVudCxcbiAgb25Nb3VzZUxlYXZlRXZlbnQsXG4gIGV4Y2VwdGlvbkFsZXJ0LFxuICB2YWxpZGF0ZUV2ZW50LFxufSkgPT4ge1xuICBjb25zdCB7IGZpcnN0c2VlbiwgbGFzdHNlZW4gfSA9IHVzZU1lbW8oKCkgPT4gcGFyc2VFdmVudERhdGEoZXZlbnQpLCBbZXZlbnRdKTtcbiAgY29uc3QgZGlzY2hhcmdlVGltZSA9IGNhbGN1bGF0ZVRpbWVEdXJhdGlvbih7XG4gICAgc3RhcnRfdGltZTogZmlyc3RzZWVuLnN0YXJ0X3RpbWUsXG4gICAgZW5kX3RpbWU6IGZpcnN0c2Vlbi5sYXN0X3NlZW5fdGltZSxcbiAgfSk7XG4gIGNvbnN0IGl0ZW1Db250YWluZXIgPSB1c2VSZWY8YW55PihudWxsKTtcblxuICAvKiBTaG93IG5hbWUgaW4gdGhlIHRpdGxlIGZvciBmYWN0b3JpZXMgb25seSAqL1xuICBjb25zdCBldmVudFNvdXJjZSA9IChldmVudDogSUV2ZW50KSA9PiB7XG4gICAgaWYgKGV2ZW50LnNvdXJjZV90eXBlID09PSAnZmFjdG9yeScgJiYgZXZlbnQuc291cmNlc1swXS5wb2xsdXRlcikge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzb3VyY2VcIj5cbiAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQubW9zdC1zZXZlcmUtZXZlbnRzLnNvdXJjZScpfVxuICAgICAgICAgIDombmJzcDtcbiAgICAgICAgICB7Zmlyc3QoZXZlbnQuc291cmNlcyk/LnBvaW50X25hbWUgfHwgJ05vIE5hbWUnfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICB2YWxpZGF0ZUV2ZW50ICE9PSB1bmRlZmluZWQgJiYgdmFsaWRhdGVFdmVudChldmVudCk7XG4gIH0sIFtdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHJlZj17aXRlbUNvbnRhaW5lcn1cbiAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUNsaWNrICYmIGhhbmRsZUNsaWNrKGV2ZW50LCBpdGVtQ29udGFpbmVyKX1cbiAgICAgIG9uTW91c2VFbnRlcj17KCkgPT4gb25Nb3VzZUVudGVyRXZlbnQgJiYgb25Nb3VzZUVudGVyRXZlbnQoZXZlbnQpfVxuICAgICAgb25Nb3VzZUxlYXZlPXsoKSA9PiBvbk1vdXNlTGVhdmVFdmVudCAmJiBvbk1vdXNlTGVhdmVFdmVudCgpfVxuICAgICAgY2xhc3NOYW1lPXtgc2V2ZXJlLWV2ZW50ICR7c2V2ZXJpdGllc1tOdW1iZXIoZXZlbnQuc2V2ZXJpdHkpXX1gfVxuICAgICAgZGF0YS1ldmVudC1pZD17ZXZlbnQuaWR9XG4gICAgPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0b3BcIj5cbiAgICAgICAge2V2ZW50U291cmNlKGV2ZW50KX1cblxuICAgICAgICB7ZXZlbnQuZGlzY2hhcmdpbmcgJiYgKFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGlzY2hhcmdpbmdcIj5cbiAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5kaXNjaGFyZ2luZycpfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgICB7ZXZlbnQub2JzZXJ2YXRpb25zLmxlbmd0aCA+IDEgJiYgKFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidXBzdHJlYW0tYmFkZ2VcIj5cbiAgICAgICAgICAgIDxJbmZvVG9vbHRpcFxuICAgICAgICAgICAgICBrZXk9e2B1cHN0cmVhbS0ke2V2ZW50LmlkfWB9XG4gICAgICAgICAgICAgIGRhdGE9e0kxOG4udCgnZXZlbnRfaW5mby51cHN0cmVhbV9vYnNlcnZhdGlvbnMnLCB7XG4gICAgICAgICAgICAgICAgY291bnQ6IGV2ZW50Lm9ic2VydmF0aW9ucy5sZW5ndGgsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICB0aXRsZT17Jyd9XG4gICAgICAgICAgICAgIGFsaWduVG9Cb3R0b209e2ZhbHNlfVxuICAgICAgICAgICAgICBhbHRlcm5hdGVJY29uPXtcbiAgICAgICAgICAgICAgICA8VXBzdHJlYW1CYWRnZVxuICAgICAgICAgICAgICAgICAgY291bnQ9e2V2ZW50Lm9ic2VydmF0aW9ucy5sZW5ndGh9XG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ1cHN0cmVhbS1iYWRnZVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBwYWRkaW5nPXtmYWxzZX1cbiAgICAgICAgICAgICAgcmV2ZXJzZWQ9e3RydWV9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDw+PC8+XG4gICAgICAgICAgICA8L0luZm9Ub29sdGlwPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbnRlbnRcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzZWVuXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWxzXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpcnN0XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidHlwZS10aXRsZVwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAnZGFzaGJvYXJkX3YyLnV0aWxpdHlfZGFzaGJvYXJkLm1vc3Qtc2V2ZXJlLWV2ZW50cy5maXJzdC1zZWVuJyxcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDpcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cIm1vYmlsZVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWRkclwiPlxuICAgICAgICAgICAgICAgICAgPFNpdGVOYW1lIHNpdGU9e2ZpcnN0c2Vlbi5wb2ludF9uYW1lfSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGF0ZVwiPlxuICAgICAgICAgICAgICAgICAgPFRpbWVGb3JtYXRcbiAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wPXtmaXJzdHNlZW4uc3RhcnRfdGltZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgICAgICB0aW1lX3pvbmU9e2ZpcnN0c2Vlbi50aW1lX3pvbmUudG9TdHJpbmcoKX1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYXN0XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidHlwZS10aXRsZVwiPlxuICAgICAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICAgICAge2kxOG4udChcbiAgICAgICAgICAgICAgICAgICdkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQubW9zdC1zZXZlcmUtZXZlbnRzLmxhc3Qtc2VlbicsXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA6XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJtb2JpbGVcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImFkZHJcIj5cbiAgICAgICAgICAgICAgICAgIDxTaXRlTmFtZSBzaXRlPXtsYXN0c2Vlbi5wb2ludF9uYW1lfSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGF0ZVwiPlxuICAgICAgICAgICAgICAgICAgPFRpbWVGb3JtYXRcbiAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wPXtsYXN0c2Vlbi5sYXN0X3NlZW5fdGltZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgICAgICB0aW1lX3pvbmU9e2xhc3RzZWVuLnRpbWVfem9uZS50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydsb3dlcl9kZXRhaWxzJ30+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRvdGFsLXRpbWVcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0eXBlLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmRpc2NoYXJnZV90aW1lJyl9XG4gICAgICAgICAgICAgICAgey8qVG90YWwgdGltZSovfTpcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGltZVwiPntkaXNjaGFyZ2VUaW1lfTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB7ZXRhV1dUUCAmJiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJldGEtd3d0cFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0eXBlLXRpdGxlXCI+XG4gICAgICAgICAgICAgIHtpMThuLnQoXG4gICAgICAgICAgICAgICAgJ2Rhc2hib2FyZF92Mi51dGlsaXR5X2Rhc2hib2FyZC5tb3N0LXNldmVyZS1ldmVudHMuZXRhLXd3dHAnLFxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA6XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaW5mb1wiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRhdGUgXCI+XG4gICAgICAgICAgICAgICAge2V0YVdXVFAuZGF0ZX1cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0aW1lXCI+ICh7ZXRhV1dUUC50aW1lfSk8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8YSBocmVmPVwiI1wiIGNsYXNzTmFtZT1cIm1vcmUgXCI+XG4gICAgICAgICAgICAgICAge2V0YVdXVFAuaW50ZXJlc3RQb2ludHNcbiAgICAgICAgICAgICAgICAgID8gYCR7ZXRhV1dUUC5pbnRlcmVzdFBvaW50c30gJHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgJ2Rhc2hib2FyZF92Mi51dGlsaXR5X2Rhc2hib2FyZC5tb3N0LXNldmVyZS1ldmVudHMubW9yZS1pbnRlcnNldCcsXG4gICAgICAgICAgICAgICAgICAgICl9YFxuICAgICAgICAgICAgICAgICAgOiAnJ31cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWxlcnQtaWNvblwiPlxuICAgICAgICAgIHtleGNlcHRpb25BbGVydCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICBleGNlcHRpb25BbGVydC5ldmVudF9pZHMuaW5jbHVkZXMoZXZlbnQuaWQpICYmXG4gICAgICAgICAgICBleGNlcHRpb25BbGVydC5tZXNzYWdlcy5tYXAoKG1zZykgPT4ge1xuICAgICAgICAgICAgICBpZiAobXNnLmV2ZW50X2lkID09PSBldmVudC5pZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICA8SW5mb1Rvb2x0aXBcbiAgICAgICAgICAgICAgICAgICAga2V5PXtgYWxlcnQtJHttc2cuZXZlbnRfaWR9YH1cbiAgICAgICAgICAgICAgICAgICAgZGF0YT17bXNnLm1lc3NhZ2V9XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlPXsnJ31cbiAgICAgICAgICAgICAgICAgICAgYWxpZ25Ub0JvdHRvbT17ZmFsc2V9XG4gICAgICAgICAgICAgICAgICAgIGFsdGVybmF0ZUljb249ezxBbGVydEljb24gLz59XG4gICAgICAgICAgICAgICAgICAgIHJldmVyc2VkPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nPXtmYWxzZX1cbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPD48Lz5cbiAgICAgICAgICAgICAgICAgIDwvSW5mb1Rvb2x0aXA+XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8RXRhIGV2ZW50PXtldmVudH0gLz5cblxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17YG1zZyR7bXNnID8gJyBvbicgOiAnJ31gfT5cbiAgICAgICAgICA8SW5mbyB3aWR0aD1cIjEzcHhcIiBoZWlnaHQ9XCIxMnB4XCIgLz5cbiAgICAgICAgICB7bXNnfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuY29uc3Qgc2V2ZXJpdGllcyA9IFsnbG93JywgJ2hpZ2gnLCAnZXh0cmVtZSddO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FB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
@@ -62,6 +62,30 @@
62
62
  align-items: center;
63
63
  justify-content: space-between;
64
64
 
65
+ > :first-child {
66
+ &.upstream-badge {
67
+ width: 100%;
68
+ display: flex;
69
+ justify-content: flex-end;
70
+ }
71
+ }
72
+ .upstream-badge {
73
+ color: var(--theme-color);
74
+
75
+ svg {
76
+ opacity: 1;
77
+ fill: var(--theme-color);
78
+ }
79
+ .info-tooltip::after {
80
+ inset-inline-end: 10px;
81
+ margin-top: 5px;
82
+ }
83
+ .tooltip-content {
84
+ inset-inline-end: 50px;
85
+ margin-block-start: -15px;
86
+ }
87
+ }
88
+
65
89
  > .source {
66
90
  font-size: 14px;
67
91
  color: #fff;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = exports.UpstreamBadge = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var UpstreamBadge = function UpstreamBadge(_ref) {
10
+ var count = _ref.count,
11
+ _ref$color = _ref.color,
12
+ color = _ref$color === void 0 ? '#E11D48' : _ref$color,
13
+ _ref$size = _ref.size,
14
+ size = _ref$size === void 0 ? 35 : _ref$size,
15
+ _ref$className = _ref.className,
16
+ className = _ref$className === void 0 ? 'UpstreamBadge' : _ref$className;
17
+ var innerSize = size * 0.82;
18
+ return /*#__PURE__*/_react.default.createElement("div", {
19
+ className: className,
20
+ style: {
21
+ width: size,
22
+ height: size,
23
+ borderRadius: '50%',
24
+ backgroundColor: '#FFFFFF',
25
+ boxShadow: '0 4px 10px rgba(0,0,0,0.15)',
26
+ display: 'flex',
27
+ alignItems: 'center',
28
+ justifyContent: 'center'
29
+ }
30
+ }, /*#__PURE__*/_react.default.createElement("div", {
31
+ style: {
32
+ width: innerSize,
33
+ height: innerSize,
34
+ borderRadius: '50%',
35
+ backgroundColor: '#F8F8F8',
36
+ display: 'flex',
37
+ flexDirection: 'column',
38
+ alignItems: 'center',
39
+ justifyContent: 'center',
40
+ fontWeight: 700,
41
+ lineHeight: 1
42
+ }
43
+ }, /*#__PURE__*/_react.default.createElement("svg", {
44
+ width: innerSize * 0.45,
45
+ height: innerSize * 0.5,
46
+ viewBox: "0 0 24 24",
47
+ fill: color
48
+ }, /*#__PURE__*/_react.default.createElement("path", {
49
+ d: "M12 2l7 8h-4v12h-6V10H5l7-8z"
50
+ })), /*#__PURE__*/_react.default.createElement("div", {
51
+ style: {
52
+ marginTop: 2,
53
+ fontSize: innerSize * 0.45
54
+ }
55
+ }, count)));
56
+ };
57
+ exports.UpstreamBadge = UpstreamBadge;
58
+ var _default = UpstreamBadge;
59
+ exports.default = _default;
60
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIlVwc3RyZWFtQmFkZ2UiLCJfcmVmIiwiY291bnQiLCJfcmVmJGNvbG9yIiwiY29sb3IiLCJfcmVmJHNpemUiLCJzaXplIiwiX3JlZiRjbGFzc05hbWUiLCJjbGFzc05hbWUiLCJpbm5lclNpemUiLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsInN0eWxlIiwid2lkdGgiLCJoZWlnaHQiLCJib3JkZXJSYWRpdXMiLCJiYWNrZ3JvdW5kQ29sb3IiLCJib3hTaGFkb3ciLCJkaXNwbGF5IiwiYWxpZ25JdGVtcyIsImp1c3RpZnlDb250ZW50IiwiZmxleERpcmVjdGlvbiIsImZvbnRXZWlnaHQiLCJsaW5lSGVpZ2h0Iiwidmlld0JveCIsImZpbGwiLCJkIiwibWFyZ2luVG9wIiwiZm9udFNpemUiLCJleHBvcnRzIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9TZXZlcmVFdmVudC9VcHN0cmVhbUJhZGdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG50eXBlIFVwc3RyZWFtQmFkZ2VQcm9wcyA9IHtcbiAgY291bnQ6IG51bWJlcjtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICBjb2xvcj86IHN0cmluZzsgLy8gbWFpbiBjb2xvciAoYXJyb3cgKyBudW1iZXIpXG4gIHNpemU/OiBudW1iZXI7IC8vIGRpYW1ldGVyIGluIHB4XG59O1xuXG5leHBvcnQgY29uc3QgVXBzdHJlYW1CYWRnZTogUmVhY3QuRkM8VXBzdHJlYW1CYWRnZVByb3BzPiA9ICh7XG4gIGNvdW50LFxuICBjb2xvciA9ICcjRTExRDQ4JywgLy8gZGVmYXVsdCByZWRcbiAgc2l6ZSA9IDM1LFxuICBjbGFzc05hbWUgPSAnVXBzdHJlYW1CYWRnZScsXG59KSA9PiB7XG4gIGNvbnN0IGlubmVyU2l6ZSA9IHNpemUgKiAwLjgyO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICBzdHlsZT17e1xuICAgICAgICB3aWR0aDogc2l6ZSxcbiAgICAgICAgaGVpZ2h0OiBzaXplLFxuICAgICAgICBib3JkZXJSYWRpdXM6ICc1MCUnLFxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjRkZGRkZGJyxcbiAgICAgICAgYm94U2hhZG93OiAnMCA0cHggMTBweCByZ2JhKDAsMCwwLDAuMTUpJyxcbiAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgfX1cbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgd2lkdGg6IGlubmVyU2l6ZSxcbiAgICAgICAgICBoZWlnaHQ6IGlubmVyU2l6ZSxcbiAgICAgICAgICBib3JkZXJSYWRpdXM6ICc1MCUnLFxuICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJyNGOEY4RjgnLFxuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgZm9udFdlaWdodDogNzAwLFxuICAgICAgICAgIGxpbmVIZWlnaHQ6IDEsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHsvKiBBcnJvdyAqL31cbiAgICAgICAgPHN2Z1xuICAgICAgICAgIHdpZHRoPXtpbm5lclNpemUgKiAwLjQ1fVxuICAgICAgICAgIGhlaWdodD17aW5uZXJTaXplICogMC41fVxuICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICAgIGZpbGw9e2NvbG9yfVxuICAgICAgICA+XG4gICAgICAgICAgPHBhdGggZD1cIk0xMiAybDcgOGgtNHYxMmgtNlYxMEg1bDctOHpcIiAvPlxuICAgICAgICA8L3N2Zz5cblxuICAgICAgICB7LyogQ291bnQgKi99XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgbWFyZ2luVG9wOiAyLFxuICAgICAgICAgICAgZm9udFNpemU6IGlubmVyU2l6ZSAqIDAuNDUsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIHtjb3VudH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5leHBvcnQgZGVmYXVsdCBVcHN0cmVhbUJhZGdlO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBU08sSUFBTUMsYUFBMkMsR0FBRyxTQUE5Q0EsYUFBMkNBLENBQUFDLElBQUEsRUFLbEQ7RUFBQSxJQUpKQyxLQUFLLEdBQUFELElBQUEsQ0FBTEMsS0FBSztJQUFBQyxVQUFBLEdBQUFGLElBQUEsQ0FDTEcsS0FBSztJQUFMQSxLQUFLLEdBQUFELFVBQUEsY0FBRyxTQUFTLEdBQUFBLFVBQUE7SUFBQUUsU0FBQSxHQUFBSixJQUFBLENBQ2pCSyxJQUFJO0lBQUpBLElBQUksR0FBQUQsU0FBQSxjQUFHLEVBQUUsR0FBQUEsU0FBQTtJQUFBRSxjQUFBLEdBQUFOLElBQUEsQ0FDVE8sU0FBUztJQUFUQSxTQUFTLEdBQUFELGNBQUEsY0FBRyxlQUFlLEdBQUFBLGNBQUE7RUFFM0IsSUFBTUUsU0FBUyxHQUFHSCxJQUFJLEdBQUcsSUFBSTtFQUU3QixvQkFDRVQsTUFBQSxDQUFBYSxPQUFBLENBQUFDLGFBQUE7SUFDRUgsU0FBUyxFQUFFQSxTQUFVO0lBQ3JCSSxLQUFLLEVBQUU7TUFDTEMsS0FBSyxFQUFFUCxJQUFJO01BQ1hRLE1BQU0sRUFBRVIsSUFBSTtNQUNaUyxZQUFZLEVBQUUsS0FBSztNQUNuQkMsZUFBZSxFQUFFLFNBQVM7TUFDMUJDLFNBQVMsRUFBRSw2QkFBNkI7TUFDeENDLE9BQU8sRUFBRSxNQUFNO01BQ2ZDLFVBQVUsRUFBRSxRQUFRO01BQ3BCQyxjQUFjLEVBQUU7SUFDbEI7RUFBRSxnQkFFRnZCLE1BQUEsQ0FBQWEsT0FBQSxDQUFBQyxhQUFBO0lBQ0VDLEtBQUssRUFBRTtNQUNMQyxLQUFLLEVBQUVKLFNBQVM7TUFDaEJLLE1BQU0sRUFBRUwsU0FBUztNQUNqQk0sWUFBWSxFQUFFLEtBQUs7TUFDbkJDLGVBQWUsRUFBRSxTQUFTO01BQzFCRSxPQUFPLEVBQUUsTUFBTTtNQUNmRyxhQUFhLEVBQUUsUUFBUTtNQUN2QkYsVUFBVSxFQUFFLFFBQVE7TUFDcEJDLGNBQWMsRUFBRSxRQUFRO01BQ3hCRSxVQUFVLEVBQUUsR0FBRztNQUNmQyxVQUFVLEVBQUU7SUFDZDtFQUFFLGdCQUdGMUIsTUFBQSxDQUFBYSxPQUFBLENBQUFDLGFBQUE7SUFDRUUsS0FBSyxFQUFFSixTQUFTLEdBQUcsSUFBSztJQUN4QkssTUFBTSxFQUFFTCxTQUFTLEdBQUcsR0FBSTtJQUN4QmUsT0FBTyxFQUFDLFdBQVc7SUFDbkJDLElBQUksRUFBRXJCO0VBQU0sZ0JBRVpQLE1BQUEsQ0FBQWEsT0FBQSxDQUFBQyxhQUFBO0lBQU1lLENBQUMsRUFBQztFQUE4QixDQUFFLENBQ3JDLENBQUMsZUFHTjdCLE1BQUEsQ0FBQWEsT0FBQSxDQUFBQyxhQUFBO0lBQ0VDLEtBQUssRUFBRTtNQUNMZSxTQUFTLEVBQUUsQ0FBQztNQUNaQyxRQUFRLEVBQUVuQixTQUFTLEdBQUc7SUFDeEI7RUFBRSxHQUVEUCxLQUNFLENBQ0YsQ0FDRixDQUFDO0FBRVYsQ0FBQztBQUFDMkIsT0FBQSxDQUFBN0IsYUFBQSxHQUFBQSxhQUFBO0FBQUEsSUFBQThCLFFBQUEsR0FDYTlCLGFBQWE7QUFBQTZCLE9BQUEsQ0FBQW5CLE9BQUEsR0FBQW9CLFFBQUEifQ==