@kando-env/kando-ui 1.2.28-alpha.13 → 1.2.28-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Router.js +7 -1
- package/lib/Widgets/Map/Map.js +3 -6
- package/lib/Widgets/Map/points/PointMarker.js +1 -2
- package/lib/Widgets/Map/points/PointMarkers.js +3 -5
- package/lib/i18n/en.json +5 -18
- package/lib/i18n/he.json +3 -8
- package/lib/macros/getVersion.js +2 -2
- package/lib/pages/EventsPage/events/EventsStyle.scss +281 -0
- package/lib/pages/EventsPage/events/events_list/EventsList.js +2 -3
- package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +16 -29
- package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +1 -13
- package/lib/pages/SamplingsPage/NewSamplingAction.js +2 -2
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingMobileProperties.js +2 -3
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +34 -41
- package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +8 -8
- package/lib/pages/SamplingsPage/SamplingsMobileList.js +5 -12
- package/lib/pages/SamplingsPage/SamplingsPage.js +14 -18
- package/lib/pages/SamplingsPage/SamplingsPageContainer.js +5 -23
- package/lib/pages/SamplingsPage/style.module.scss +11 -5
- package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +2 -3
- package/lib/ui-kit/KandoTable/KandoTable.js +2 -2
- package/lib/ui-kit/MobileInput/MobileInput.js +1 -1
- package/lib/utilities/kql.js +2 -2
- package/lib/utilities/urls.js +2 -2
- package/package.json +1 -1
- package/lib/pages/EventsPage/events/events_list/Filter/FilterStyle.scss +0 -281
- package/lib/pages/SamplingsPage/FilterStyle.scss +0 -29
|
@@ -49,8 +49,6 @@ var _styleModule = _interopRequireDefault(require("../style.module.scss"));
|
|
|
49
49
|
|
|
50
50
|
require("./bootstrap.overrides.scss");
|
|
51
51
|
|
|
52
|
-
var _lodash = require("lodash");
|
|
53
|
-
|
|
54
52
|
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); }
|
|
55
53
|
|
|
56
54
|
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; }
|
|
@@ -83,24 +81,21 @@ var SamplingPropertiesForm = function SamplingPropertiesForm(props) {
|
|
|
83
81
|
var navContext = (0, _reactRedux.useSelector)(function (state) {
|
|
84
82
|
return state.nav_context_data.navContext;
|
|
85
83
|
});
|
|
86
|
-
var validationSchema = pageType === 'collect' ? _samplingPropertiesUtils.propertiesValidationSchema : _samplingPropertiesUtils.
|
|
87
|
-
var collectionTime = pageType === 'collect' ? currentDate : samplingProperties.sampling.collection_time;
|
|
88
|
-
var isCanceled = pageType === 'cancel' ? true : pageType === 'collect' ? false : samplingProperties.sampling.is_canceled;
|
|
84
|
+
var validationSchema = pageType === 'collect' ? _samplingPropertiesUtils.propertiesValidationSchema : _samplingPropertiesUtils.cancellingValidationSchema;
|
|
89
85
|
var formik = (0, _formik.useFormik)({
|
|
90
86
|
initialValues: {
|
|
91
87
|
lab_id: samplingProperties.sampling.lab_id,
|
|
92
|
-
collection_time:
|
|
88
|
+
collection_time: currentDate,
|
|
93
89
|
pump_sampling_volume: samplingProperties.sampling.pump_sampling_volume,
|
|
94
90
|
pump_battery_level: samplingProperties.sampling.pump_battery_level,
|
|
95
91
|
description: samplingProperties.sampling.description,
|
|
96
92
|
kando_rep: samplingProperties.sampling.kando_rep,
|
|
97
93
|
sampling_plan_id: samplingProperties.sampling.sampling_plan_id,
|
|
98
|
-
cancellation_reason:
|
|
99
|
-
is_canceled: isCanceled
|
|
94
|
+
cancellation_reason: ''
|
|
100
95
|
},
|
|
101
96
|
validationSchema: validationSchema,
|
|
102
|
-
validateOnChange:
|
|
103
|
-
validateOnBlur:
|
|
97
|
+
validateOnChange: false,
|
|
98
|
+
validateOnBlur: false,
|
|
104
99
|
onSubmit: function onSubmit(values) {
|
|
105
100
|
handleSubmit(values);
|
|
106
101
|
}
|
|
@@ -117,8 +112,7 @@ var SamplingPropertiesForm = function SamplingPropertiesForm(props) {
|
|
|
117
112
|
|
|
118
113
|
for (var key in values) {
|
|
119
114
|
if (key !== 'pictures_attributes') {
|
|
120
|
-
|
|
121
|
-
formData.append("sampling[".concat(key, "]"), value);
|
|
115
|
+
formData.append("sampling[".concat(key, "]"), values[key]);
|
|
122
116
|
}
|
|
123
117
|
}
|
|
124
118
|
|
|
@@ -156,12 +150,10 @@ var SamplingPropertiesForm = function SamplingPropertiesForm(props) {
|
|
|
156
150
|
}
|
|
157
151
|
};
|
|
158
152
|
|
|
159
|
-
var handleSubmit = function handleSubmit() {
|
|
160
|
-
var values = formik.values;
|
|
153
|
+
var handleSubmit = function handleSubmit(values) {
|
|
161
154
|
setSavingMsg(_i18n.default.t('buttons.saving'));
|
|
162
155
|
values.pictures_attributes = photos;
|
|
163
|
-
|
|
164
|
-
updateOrCreate(saveFormData);
|
|
156
|
+
updateOrCreate(formDataBuilder(values));
|
|
165
157
|
};
|
|
166
158
|
|
|
167
159
|
var handleClose = function handleClose() {
|
|
@@ -174,8 +166,9 @@ var SamplingPropertiesForm = function SamplingPropertiesForm(props) {
|
|
|
174
166
|
|
|
175
167
|
(0, _useInitializeHeaders.useInitializeHeaders)();
|
|
176
168
|
(0, _react.useEffect)(function () {}, [samplingProperties]);
|
|
169
|
+
var CancellingReasons = (0, _react.useCallback)(function (_ref) {
|
|
170
|
+
var formik = _ref.formik;
|
|
177
171
|
|
|
178
|
-
var CancellationReasons = function CancellationReasons() {
|
|
179
172
|
var manualReasons = _samplingPropertiesUtils.manualReasonsKeys.map(function (key) {
|
|
180
173
|
return _i18n.default.t("cancellation_reasons.".concat(key));
|
|
181
174
|
});
|
|
@@ -187,33 +180,38 @@ var SamplingPropertiesForm = function SamplingPropertiesForm(props) {
|
|
|
187
180
|
var reasons = sampling.machine_type === 'sampling_type_rapid' ? manualReasons : autoReasons;
|
|
188
181
|
var machineReasons = sampling.machine_type === 'sampling_type_rapid' ? _samplingPropertiesUtils.manualReasonsKeys : _samplingPropertiesUtils.autoReasonsKeys;
|
|
189
182
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Form.Group, {
|
|
190
|
-
className: _styleModule.default.
|
|
183
|
+
className: "".concat(_styleModule.default.cancellingReasonGroup, " ").concat(formik.touched.cancellation_reason && formik.errors.cancellation_reason ? _styleModule.default.invalidBorders : '')
|
|
191
184
|
}, reasons.map(function (reason, idx) {
|
|
192
185
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
193
186
|
key: "opt-".concat(idx),
|
|
194
|
-
className: "mb-3 ".concat(_styleModule.default.
|
|
187
|
+
className: "mb-3 ".concat(_styleModule.default.cancellingReason)
|
|
195
188
|
}, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Form.Check, {
|
|
196
189
|
value: machineReasons[idx],
|
|
197
190
|
onChange: formik.handleChange,
|
|
198
|
-
onBlur: formik.handleBlur,
|
|
199
191
|
label: reason,
|
|
200
192
|
name: "cancellation_reason",
|
|
201
193
|
type: "radio",
|
|
202
|
-
id:
|
|
203
|
-
checked: machineReasons[idx] === formik.values.cancellation_reason
|
|
194
|
+
id: "idx-".concat(idx)
|
|
204
195
|
}));
|
|
205
|
-
}))
|
|
206
|
-
|
|
207
|
-
|
|
196
|
+
})), formik.touched.cancellation_reason && formik.errors.cancellation_reason && /*#__PURE__*/_react.default.createElement("div", {
|
|
197
|
+
className: _styleModule.default.validationError
|
|
198
|
+
}, _i18n.default.t('general.please_select')));
|
|
199
|
+
}, [samplingProperties]);
|
|
208
200
|
return /*#__PURE__*/_react.default.createElement(FormStyle, null, /*#__PURE__*/_react.default.createElement(_formik.Formik, {
|
|
209
201
|
initialValues: _samplingPropertiesUtils.samplingProperty,
|
|
210
|
-
|
|
202
|
+
validateOnBlur: false,
|
|
203
|
+
validateOnChange: false,
|
|
204
|
+
onSubmit: function onSubmit() {
|
|
205
|
+
return handleSubmit(formik.values);
|
|
206
|
+
}
|
|
211
207
|
}, function () {
|
|
212
208
|
return /*#__PURE__*/_react.default.createElement("form", {
|
|
213
|
-
onSubmit:
|
|
209
|
+
onSubmit: function onSubmit(e) {
|
|
210
|
+
e.preventDefault();
|
|
211
|
+
formik.handleSubmit(e);
|
|
212
|
+
}
|
|
214
213
|
}, /*#__PURE__*/_react.default.createElement(FormContainerStyle, null, /*#__PURE__*/_react.default.createElement(FieldsContainer, null, pageType === 'collect' && /*#__PURE__*/_react.default.createElement(Start, null, /*#__PURE__*/_react.default.createElement(InputWrapper, null, /*#__PURE__*/_react.default.createElement(_uiKit.MobileInput, {
|
|
215
214
|
handleChange: formik.handleChange,
|
|
216
|
-
handleBlur: formik.handleBlur,
|
|
217
215
|
inputTitle: _i18n.default.t('activerecord.models.lab'),
|
|
218
216
|
name: "lab_id",
|
|
219
217
|
type: "select",
|
|
@@ -224,15 +222,13 @@ var SamplingPropertiesForm = function SamplingPropertiesForm(props) {
|
|
|
224
222
|
value: undefined
|
|
225
223
|
}), samplingProperties.labs !== undefined && samplingProperties.labs.map(function (lab) {
|
|
226
224
|
return /*#__PURE__*/_react.default.createElement("option", {
|
|
227
|
-
value: lab.id
|
|
228
|
-
selected: lab.id === (0, _lodash.toSafeInteger)(formik.values.lab_id)
|
|
225
|
+
value: lab.id
|
|
229
226
|
}, lab.name);
|
|
230
227
|
})), formik.errors.lab_id && /*#__PURE__*/_react.default.createElement("div", {
|
|
231
228
|
className: 'hint'
|
|
232
229
|
}, formik.errors.lab_id)), /*#__PURE__*/_react.default.createElement(FormRowStyle, null, /*#__PURE__*/_react.default.createElement(InputWrapper, null, /*#__PURE__*/_react.default.createElement(_uiKit.MobileInput, {
|
|
233
230
|
isInvalid: !!formik.errors.pump_sampling_volume,
|
|
234
231
|
handleChange: formik.handleChange,
|
|
235
|
-
handleBlur: formik.handleBlur,
|
|
236
232
|
inputTitle: _i18n.default.t('pump_scheduled_days_configuration.volume'),
|
|
237
233
|
name: "pump_sampling_volume",
|
|
238
234
|
type: "number",
|
|
@@ -244,7 +240,6 @@ var SamplingPropertiesForm = function SamplingPropertiesForm(props) {
|
|
|
244
240
|
}, formik.errors.pump_sampling_volume)), /*#__PURE__*/_react.default.createElement(InputWrapper, null, /*#__PURE__*/_react.default.createElement(_uiKit.MobileInput, {
|
|
245
241
|
isInvalid: !!formik.errors.pump_battery_level,
|
|
246
242
|
handleChange: formik.handleChange,
|
|
247
|
-
handleBlur: formik.handleBlur,
|
|
248
243
|
inputTitle: _i18n.default.t('sampling_screen.pump_battery_level'),
|
|
249
244
|
name: "pump_battery_level",
|
|
250
245
|
type: "number",
|
|
@@ -258,7 +253,6 @@ var SamplingPropertiesForm = function SamplingPropertiesForm(props) {
|
|
|
258
253
|
}, pageType === 'collect' && /*#__PURE__*/_react.default.createElement(InputWrapper, null, /*#__PURE__*/_react.default.createElement(_uiKit.MobileInput, {
|
|
259
254
|
isInvalid: !!formik.errors.kando_rep,
|
|
260
255
|
handleChange: formik.handleChange,
|
|
261
|
-
handleBlur: formik.handleBlur,
|
|
262
256
|
inputTitle: _i18n.default.t('samplings_page.samplings_properties.reporter'),
|
|
263
257
|
name: "kando_rep",
|
|
264
258
|
type: "text",
|
|
@@ -268,12 +262,11 @@ var SamplingPropertiesForm = function SamplingPropertiesForm(props) {
|
|
|
268
262
|
}), formik.errors.kando_rep && /*#__PURE__*/_react.default.createElement("div", {
|
|
269
263
|
className: 'hint'
|
|
270
264
|
}, formik.errors.kando_rep)), pageType === 'cancel' && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
271
|
-
className: _styleModule.default.
|
|
272
|
-
}, _i18n.default.t('samplings_page.
|
|
273
|
-
|
|
274
|
-
}
|
|
265
|
+
className: _styleModule.default.cancellingTitle
|
|
266
|
+
}, _i18n.default.t('samplings_page.cancelling_title'), ":"), /*#__PURE__*/_react.default.createElement(CancellingReasons, {
|
|
267
|
+
formik: formik
|
|
268
|
+
})), /*#__PURE__*/_react.default.createElement(InputWrapper, null, /*#__PURE__*/_react.default.createElement(Description, null, /*#__PURE__*/_react.default.createElement(_uiKit.MobileInput, {
|
|
275
269
|
handleChange: formik.handleChange,
|
|
276
|
-
handleBlur: formik.handleBlur,
|
|
277
270
|
inputTitle: _i18n.default.t('water_meter.description'),
|
|
278
271
|
name: "description",
|
|
279
272
|
type: "textarea",
|
|
@@ -355,8 +348,8 @@ var FormRowStyle = (0, _styledComponents.default)(_reactBootstrap.Row).withConfi
|
|
|
355
348
|
var ButtonsRow = (0, _styledComponents.default)(_reactBootstrap.Row).withConfig({
|
|
356
349
|
displayName: "SamplingPropertiesForm__ButtonsRow",
|
|
357
350
|
componentId: "sc-11w8cbo-7"
|
|
358
|
-
})(["margin-top:30px;justify-content:", ";margin:", ";background-color:", ";div{", "}"], _reactDeviceDetect.isMobile ? 'space-between' : 'flex-end', _reactDeviceDetect.isMobile ? 0 : '9px 0', _reactDeviceDetect.isMobile ? function (
|
|
359
|
-
var theme =
|
|
351
|
+
})(["margin-top:30px;justify-content:", ";margin:", ";background-color:", ";div{", "}"], _reactDeviceDetect.isMobile ? 'space-between' : 'flex-end', _reactDeviceDetect.isMobile ? 0 : '9px 0', _reactDeviceDetect.isMobile ? function (_ref2) {
|
|
352
|
+
var theme = _ref2.theme;
|
|
360
353
|
return theme.colorScheme.natural.n10;
|
|
361
354
|
} : '', _reactDeviceDetect.isMobile ? '' : 'margin: 0 6px');
|
|
362
355
|
var FormContainerStyle = (0, _styledComponents.default)(_reactBootstrap.Container).withConfig({
|
|
@@ -368,4 +361,4 @@ var BottomFormStyle = _styledComponents.default.div.withConfig({
|
|
|
368
361
|
displayName: "SamplingPropertiesForm__BottomFormStyle",
|
|
369
362
|
componentId: "sc-11w8cbo-9"
|
|
370
363
|
})(["border-bottom:6px solid #f9fafc;"]);
|
|
371
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXNGb3JtLnRzeCJdLCJuYW1lcyI6WyJTYW1wbGluZ1Byb3BlcnRpZXNGb3JtIiwicHJvcHMiLCJzYW1wbGluZ1Byb3BlcnRpZXMiLCJzYW1wbGluZyIsImN1cnJlbnREYXRlIiwic2V0U2FtcGxpbmdVcGRhdGVkIiwicGFnZVR5cGUiLCJwaG90b3MiLCJzZXRQaG90b3MiLCJwaG90b3NUb0RlbGV0ZSIsInNldFBob3Rvc1RvRGVsZXRlIiwiaTE4biIsInQiLCJzYXZpbmdNc2ciLCJzZXRTYXZpbmdNc2ciLCJoaXN0b3J5IiwicXVlcnkiLCJ3YXRlckF1dGhvcml0eUlkRnJvbVVybCIsInBhcnNlSW50IiwiZ2V0IiwibmF2Q29udGV4dCIsInN0YXRlIiwibmF2X2NvbnRleHRfZGF0YSIsInZhbGlkYXRpb25TY2hlbWEiLCJwcm9wZXJ0aWVzVmFsaWRhdGlvblNjaGVtYSIsImNhbmNlbGxhdGlvblZhbGlkYXRpb25TY2hlbWEiLCJjb2xsZWN0aW9uVGltZSIsImNvbGxlY3Rpb25fdGltZSIsImlzQ2FuY2VsZWQiLCJpc19jYW5jZWxlZCIsImZvcm1payIsImluaXRpYWxWYWx1ZXMiLCJsYWJfaWQiLCJwdW1wX3NhbXBsaW5nX3ZvbHVtZSIsInB1bXBfYmF0dGVyeV9sZXZlbCIsImRlc2NyaXB0aW9uIiwia2FuZG9fcmVwIiwic2FtcGxpbmdfcGxhbl9pZCIsImNhbmNlbGxhdGlvbl9yZWFzb24iLCJ2YWxpZGF0ZU9uQ2hhbmdlIiwidmFsaWRhdGVPbkJsdXIiLCJvblN1Ym1pdCIsInZhbHVlcyIsImhhbmRsZVN1Ym1pdCIsInNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCIsInNldFRpbWVvdXQiLCJmb3JtRGF0YUJ1aWxkZXIiLCJmb3JtRGF0YSIsIkZvcm1EYXRhIiwia2V5IiwidmFsdWUiLCJhcHBlbmQiLCJ1bmlxdWVQaG90b3NUb0RlbGV0ZSIsIlNldCIsImxlbmd0aCIsImZvckVhY2giLCJpZCIsImluZGV4IiwiSlNPTiIsInN0cmluZ2lmeSIsInVwZGF0ZU9yQ3JlYXRlIiwiYXhpb3MiLCJwb3N0IiwiY3JlYXRlU2FtcGxpbmciLCJ1cmwiLCJ0aGVuIiwiY2F0Y2giLCJwdXQiLCJzYW1wbGluZ0lkIiwidXBkYXRlU2FtcGxpbmciLCJoYW5kbGVDbG9zZSIsInBpY3R1cmVzX2F0dHJpYnV0ZXMiLCJzYXZlRm9ybURhdGEiLCJzYW1wbGluZ3NMaXN0Um91dGUiLCJsb2NhbGUiLCJ3YXRlckF1dGhvcml0eUlkIiwic2FtcGxpbmdzUGFnZSIsInB1c2giLCJDYW5jZWxsYXRpb25SZWFzb25zIiwibWFudWFsUmVhc29ucyIsIm1hbnVhbFJlYXNvbnNLZXlzIiwibWFwIiwiYXV0b1JlYXNvbnMiLCJhdXRvUmVhc29uc0tleXMiLCJyZWFzb25zIiwibWFjaGluZV90eXBlIiwibWFjaGluZVJlYXNvbnMiLCJTdHlsZSIsImNhbmNlbGxhdGlvblJlYXNvbkdyb3VwIiwicmVhc29uIiwiaWR4IiwiY2FuY2VsbGF0aW9uUmVhc29uIiwiaGFuZGxlQ2hhbmdlIiwiaGFuZGxlQmx1ciIsInNhbXBsaW5nUHJvcGVydHkiLCJlcnJvcnMiLCJ1bmRlZmluZWQiLCJsYWJzIiwibGFiIiwibmFtZSIsImNhbmNlbGxhdGlvblRpdGxlIiwidG91Y2hlZCIsInZhbGlkYXRpb25FcnJvciIsIklucHV0V3JhcHBlciIsInN0eWxlZCIsImRpdiIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJkYXRhIiwiUjEwMCIsIkZpZWxkc0NvbnRhaW5lciIsImlzTW9iaWxlIiwiU3RhcnQiLCJFbmQiLCJhdHRycyIsImlzUHJvcGVydGllc1BhZ2UiLCJEZXNjcmlwdGlvbiIsIkZvcm1TdHlsZSIsIkZvcm1Sb3dTdHlsZSIsIlJvdyIsIkJ1dHRvbnNSb3ciLCJuYXR1cmFsIiwibjEwIiwiRm9ybUNvbnRhaW5lclN0eWxlIiwiQ29udGFpbmVyIiwiQm90dG9t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QWlDLE1BRC9DO0FBQUEsQ0FIRixFQUtpQkosOEJBQVcsUUFBWCxHQUFzQixPQUx2QyxFQU1RQSw4QkFBVyxRQUFYLEdBQXNCLE9BTjlCLENBQVQ7O0FBU0EsSUFBTUssV0FBVyxHQUFHWiwwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSxnUEFNRE0sOEJBQVcsTUFBWCxHQUFvQixrQkFObkIsRUFVQ0EsOEJBQVcsaUJBQVgsR0FBK0Isa0JBVmhDLENBQWpCOztBQXFCQSxJQUFNTSxTQUFTLEdBQUdiLDBCQUFPQyxHQUFWO0FBQUE7QUFBQTtBQUFBLHdDQUFmOztBQUlBLElBQU1hLFlBQVksR0FBRywrQkFBT0MsbUJBQVAsQ0FBSDtBQUFBO0FBQUE7QUFBQSxnRkFJTFIsOEJBQVcsTUFBWCxHQUFvQixPQUpmLENBQWxCO0FBWUEsSUFBTVMsVUFBVSxHQUFHLCtCQUFPRCxtQkFBUCxDQUFIO0FBQUE7QUFBQTtBQUFBLHlGQUVLUiw4QkFBVyxlQUFYLEdBQTZCLFVBRmxDLEVBR0pBLDhCQUFXLENBQVgsR0FBZSxPQUhYLEVBSU1BLDhCQUNoQjtBQUFBLE1BQUdMLEtBQUgsUUFBR0EsS0FBSDtBQUFBLFNBQWVBLEtBQUssQ0FBQ0MsV0FBTixDQUFrQmMsT0FBbEIsQ0FBMEJDLEdBQXpDO0FBQUEsQ0FEZ0IsR0FFaEIsRUFOVSxFQVNWWCw4QkFBVyxFQUFYLEdBQWdCLGVBVE4sQ0FBaEI7QUFhQSxJQUFNWSxrQkFBa0IsR0FBRywrQkFBT0MseUJBQVAsQ0FBSDtBQUFBO0FBQUE7QUFBQSwyQkFBeEI7O0FBS0EsSUFBTUMsZUFBZSxHQUFHckIsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEsd0NBQXJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZDLCB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHsgQ29udGFpbmVyLCBGb3JtLCBSb3cgfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgRm9ybWlrLCB1c2VGb3JtaWsgfSBmcm9tICdmb3JtaWsnO1xuaW1wb3J0IHsgaXNNb2JpbGUgfSBmcm9tICdyZWFjdC1kZXZpY2UtZGV0ZWN0JztcbmltcG9ydCB7IHVzZUhpc3RvcnkgfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCB7IHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtcbiAgc2FtcGxpbmdQcm9wZXJ0eSxcbiAgcHJvcGVydGllc1ZhbGlkYXRpb25TY2hlbWEsXG4gIGNhbmNlbGxhdGlvblZhbGlkYXRpb25TY2hlbWEsXG4gIGF1dG9SZWFzb25zS2V5cyxcbiAgbWFudWFsUmVhc29uc0tleXMsXG59IGZyb20gJ3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9zYW1wbGluZ1Byb3BlcnRpZXNVdGlscyc7XG5cbmltcG9ydCBJbWFnZVVwbG9hZCBmcm9tICdzcmMvcGFnZXMvU2FtcGxpbmdzUGFnZS9TYW1wbGluZ1Byb3BlcnRpZXMvSW1hZ2VVcGxvYWQnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICdzcmMvaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IHsgTW9iaWxlSW5wdXQsIEJ1dHRvbiB9IGZyb20gJ3NyYy91aS1raXQnO1xuaW1wb3J0IHsgVFNhbXBsaW5nUHJvcGVydGllcyB9IGZyb20gJy4vU2FtcGxpbmdNb2JpbGVQcm9wZXJ0aWVzJztcbmltcG9ydCB7IGFwcFJlZHVjZXIgfSBmcm9tICdzcmMvc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICdzcmMvc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICdzcmMvdXRpbGl0aWVzL3VybHMnO1xuaW1wb3J0IHsgdXNlSW5pdGlhbGl6ZUhlYWRlcnMgfSBmcm9tICdzcmMvaG9va3MvdXNlSW5pdGlhbGl6ZUhlYWRlcnMnO1xuaW1wb3J0IHsgU2FtcGxpbmdGZXRjaERhdGEgfSBmcm9tICdzcmMvcGFnZXMvU2FtcGxpbmdzUGFnZS9zYW1wbGluZ3NQYWdlVXRpbHMnO1xuXG5pbXBvcnQgU3R5bGUgZnJvbSAnLi4vc3R5bGUubW9kdWxlLnNjc3MnO1xuaW1wb3J0ICcuL2Jvb3RzdHJhcC5vdmVycmlkZXMuc2Nzcyc7XG5pbXBvcnQgeyB0b1NhZmVJbnRlZ2VyIH0gZnJvbSAnbG9kYXNoJztcblxudHlwZSBwcm9wcyA9IHtcbiAgc2FtcGxpbmdQcm9wZXJ0aWVzOiBUU2FtcGxpbmdQcm9wZXJ0aWVzO1xuICBzYW1wbGluZzogU2FtcGxpbmdGZXRjaERhdGE7XG4gIGN1cnJlbnREYXRlOiBzdHJpbmc7XG4gIHNldFNhbXBsaW5nVXBkYXRlZDogUmVhY3QuRGlzcGF0Y2g8UmVhY3QuU2V0U3RhdGVBY3Rpb248Ym9vbGVhbj4+O1xuICBwYWdlVHlwZTogc3RyaW5nO1xufTtcblxudHlwZSBGb3JtVHlwZSA9IHtcbiAgbGFiX2lkOiBudW1iZXI7XG4gIGNvbGxlY3Rpb25fdGltZTogc3RyaW5nO1xuICBwdW1wX3NhbXBsaW5nX3ZvbHVtZTogbnVtYmVyO1xuICBwdW1wX2JhdHRlcnlfbGV2ZWw6IG51bWJlcjtcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAga2FuZG9fcmVwOiBzdHJpbmc7XG4gIHNhbXBsaW5nX3BsYW5faWQ6IG51bWJlcjtcbiAgY2FuY2VsbGF0aW9uX3JlYXNvbjogc3RyaW5nO1xuICBpc19jYW5jZWxlZDogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCBjb25zdCBTYW1wbGluZ1Byb3BlcnRpZXNGb3JtOiBGQzxwcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIHNhbXBsaW5nUHJvcGVydGllcyxcbiAgICBzYW1wbGluZyxcbiAgICBjdXJyZW50RGF0ZSxcbiAgICBzZXRTYW1wbGluZ1VwZGF0ZWQsXG4gICAgcGFnZVR5cGUsXG4gIH0gPSBwcm9wcztcbiAgY29uc3QgW3Bob3Rvcywgc2V0UGhvdG9zXSA9IHVzZVN0YXRlPHN0cmluZyB8IEJsb2IgfCBhbnk+KFtdKTtcbiAgY29uc3QgW3Bob3Rvc1RvRGVsZXRlLCBzZXRQaG90b3NUb0RlbGV0ZV0gPSB1c2VTdGF0ZTxudW1iZXJbXT4oW10pO1xuICBjb25zdCBbc2F2aW5nTXNnLCBzZXRTYXZpbmdNc2ddID0gdXNlU3RhdGU8c3RyaW5nPihpMThuLnQoJ2J1dHRvbnMuc2F2ZScpKTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCB3YXRlckF1dGhvcml0eUlkRnJvbVVybCA9IHBhcnNlSW50KFxuICAgIHF1ZXJ5LmdldCgnd2F0ZXJfYXV0aG9yaXR5X2lkJykgfHwgJzAnLFxuICApO1xuICBjb25zdCBuYXZDb250ZXh0ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LFxuICApO1xuXG4gIGNvbnN0IHZhbGlkYXRpb25TY2hlbWEgPVxuICAgIHBhZ2VUeXBlID09PSAnY29sbGVjdCdcbiAgICAgID8gcHJvcGVydGllc1ZhbGlkYXRpb25TY2hlbWFcbiAgICAgIDogY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYTtcblxuICBjb25zdCBjb2xsZWN0aW9uVGltZSA9XG4gICAgcGFnZVR5cGUgPT09ICdjb2xsZWN0J1xuICAgICAgPyBjdXJyZW50RGF0ZVxuICAgICAgOiBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuY29sbGVjdGlvbl90aW1lO1xuXG4gIGNvbnN0IGlzQ2FuY2VsZWQgPVxuICAgIHBhZ2VUeXBlID09PSAnY2FuY2VsJ1xuICAgICAgPyB0cnVlXG4gICAgICA6IHBhZ2VUeXBlID09PSAnY29sbGVjdCdcbiAgICAgID8gZmFsc2VcbiAgICAgIDogc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmlzX2NhbmNlbGVkO1xuXG4gIGNvbnN0IGZvcm1payA9IHVzZUZvcm1pazxGb3JtVHlwZT4oe1xuICAgIGluaXRpYWxWYWx1ZXM6IHtcbiAgICAgIGxhYl9pZDogc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmxhYl9pZCxcbiAgICAgIGNvbGxlY3Rpb25fdGltZTogY29sbGVjdGlvblRpbWUsXG4gICAgICBwdW1wX3NhbXBsaW5nX3ZvbHVtZTogc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLnB1bXBfc2FtcGxpbmdfdm9sdW1lLFxuICAgICAgcHVtcF9iYXR0ZXJ5X2xldmVsOiBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcucHVtcF9iYXR0ZXJ5X2xldmVsLFxuICAgICAgZGVzY3JpcHRpb246IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5kZXNjcmlwdGlvbixcbiAgICAgIGthbmRvX3JlcDogc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmthbmRvX3JlcCxcbiAgICAgIHNhbXBsaW5nX3BsYW5faWQ6IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5zYW1wbGluZ19wbGFuX2lkLFxuICAgICAgY2FuY2VsbGF0aW9uX3JlYXNvbjogc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmNhbmNlbGxhdGlvbl9yZWFzb24sXG4gICAgICBpc19jYW5jZWxlZDogaXNDYW5jZWxlZCxcbiAgICB9LFxuICAgIHZhbGlkYXRpb25TY2hlbWE6IHZhbGlkYXRpb25TY2hlbWEsXG4gICAgdmFsaWRhdGVPbkNoYW5nZTogdHJ1ZSxcbiAgICB2YWxpZGF0ZU9uQmx1cjogdHJ1ZSxcbiAgICBvblN1Ym1pdDogKHZhbHVlcykgPT4ge1xuICAgICAgaGFuZGxlU3VibWl0KHZhbHVlcyk7XG4gICAgfSxcbiAgfSk7XG5cbiAgY29uc3Qgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0ID0gKCkgPT4ge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5zYXZlJykpO1xuICAgIH0sIDMwMDApO1xuICB9O1xuXG4gIGNvbnN0IGZvcm1EYXRhQnVpbGRlciA9ICh2YWx1ZXMpID0+IHtcbiAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvciAoY29uc3Qga2V5IGluIHZhbHVlcykge1xuICAgICAgaWYgKGtleSAhPT0gJ3BpY3R1cmVzX2F0dHJpYnV0ZXMnKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVzW2tleV0gPT09IG51bGwgPyAnJyA6IHZhbHVlc1trZXldO1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoYHNhbXBsaW5nWyR7a2V5fV1gLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IHVuaXF1ZVBob3Rvc1RvRGVsZXRlID0gWy4uLm5ldyBTZXQocGhvdG9zVG9EZWxldGUpXTtcbiAgICB1bmlxdWVQaG90b3NUb0RlbGV0ZS5sZW5ndGggIT09IDAgJiZcbiAgICAgIHVuaXF1ZVBob3Rvc1RvRGVsZXRlLmZvckVhY2goKGlkLCBpbmRleCkgPT4ge1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAgICAgYHNhbXBsaW5nW3BpY3R1cmVzX2F0dHJpYnV0ZXNdWyR7aW5kZXh9XVtpZF1gLFxuICAgICAgICAgIEpTT04uc3RyaW5naWZ5KGlkKSxcbiAgICAgICAgKTtcblxuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAgICAgYHNhbXBsaW5nW3BpY3R1cmVzX2F0dHJpYnV0ZXNdWyR7aW5kZXh9XVtfZGVzdHJveV1gLFxuICAgICAgICAgICd0cnVlJyxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIGZvcm1EYXRhO1xuICB9O1xuXG4gIGNvbnN0IHVwZGF0ZU9yQ3JlYXRlID0gKGZvcm1EYXRhKSA9PiB7XG4gICAgaWYgKHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5pZCA9PT0gbnVsbCkge1xuICAgICAgZm9ybURhdGEuYXBwZW5kKGBzYW1wbGluZ1tkYXRlXWAsIGN1cnJlbnREYXRlKTtcbiAgICAgIGF4aW9zXG4gICAgICAgIC5wb3N0KHVybHMoKS5zYW1wbGluZ1Byb3BlcnRpZXMuY3JlYXRlU2FtcGxpbmcudXJsLCBmb3JtRGF0YSlcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuY3JlYXRlZCcpKTtcbiAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQodHJ1ZSk7XG4gICAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5lcnJvcicpKTtcbiAgICAgICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGF4aW9zXG4gICAgICAgIC5wdXQoXG4gICAgICAgICAgdXJscyh7IHNhbXBsaW5nSWQ6IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5pZCB9KVxuICAgICAgICAgICAgLnNhbXBsaW5nUHJvcGVydGllcy51cGRhdGVTYW1wbGluZy51cmwsXG4gICAgICAgICAgZm9ybURhdGEsXG4gICAgICAgIClcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMudXBkYXRlZCcpKTtcbiAgICAgICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuZXJyb3InKSk7XG4gICAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAoKSA9PiB7XG4gICAgY29uc3QgdmFsdWVzOiBhbnkgPSBmb3JtaWsudmFsdWVzO1xuICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuc2F2aW5nJykpO1xuICAgIHZhbHVlcy5waWN0dXJlc19hdHRyaWJ1dGVzID0gcGhvdG9zO1xuICAgIGNvbnN0IHNhdmVGb3JtRGF0YSA9IGZvcm1EYXRhQnVpbGRlcih2YWx1ZXMpO1xuICAgIHVwZGF0ZU9yQ3JlYXRlKHNhdmVGb3JtRGF0YSk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgY29uc3Qgc2FtcGxpbmdzTGlzdFJvdXRlID0gdXJscyh7XG4gICAgICBsb2NhbGU6IG5hdkNvbnRleHQubG9jYWxlLFxuICAgICAgd2F0ZXJBdXRob3JpdHlJZDogd2F0ZXJBdXRob3JpdHlJZEZyb21VcmwsXG4gICAgfSkuc2FtcGxpbmdzUGFnZS5zYW1wbGluZ3NMaXN0Um91dGUudXJsO1xuICAgIGhpc3RvcnkucHVzaChzYW1wbGluZ3NMaXN0Um91dGUpO1xuICB9O1xuXG4gIHVzZUluaXRpYWxpemVIZWFkZXJzKCk7XG4gIHVzZUVmZmVjdCgoKSA9PiB7fSwgW3NhbXBsaW5nUHJvcGVydGllc10pO1xuXG4gIGNvbnN0IENhbmNlbGxhdGlvblJlYXNvbnMgPSAoKSA9PiB7XG4gICAgY29uc3QgbWFudWFsUmVhc29ucyA9IG1hbnVhbFJlYXNvbnNLZXlzLm1hcCgoa2V5OiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBpMThuLnQoYGNhbmNlbGxhdGlvbl9yZWFzb25zLiR7a2V5fWApO1xuICAgIH0pO1xuICAgIGNvbnN0IGF1dG9SZWFzb25zID0gYXV0b1JlYXNvbnNLZXlzLm1hcCgoa2V5OiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBpMThuLnQoYGNhbmNlbGxhdGlvbl9yZWFzb25zLmF1dG9tYXRlZC4ke2tleX1gKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlYXNvbnMgPVxuICAgICAgc2FtcGxpbmcubWFjaGluZV90eXBlID09PSAnc2FtcGxpbmdfdHlwZV9yYXBpZCdcbiAgICAgICAgPyBtYW51YWxSZWFzb25zXG4gICAgICAgIDogYXV0b1JlYXNvbnM7XG5cbiAgICBjb25zdCBtYWNoaW5lUmVhc29ucyA9XG4gICAgICBzYW1wbGluZy5tYWNoaW5lX3R5cGUgPT09ICdzYW1wbGluZ190eXBlX3JhcGlkJ1xuICAgICAgICA/IG1hbnVhbFJlYXNvbnNLZXlzXG4gICAgICAgIDogYXV0b1JlYXNvbnNLZXlzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIDxGb3JtLkdyb3VwIGNsYXNzTmFtZT17U3R5bGUuY2FuY2VsbGF0aW9uUmVhc29uR3JvdXB9PlxuICAgICAgICAgIHtyZWFzb25zLm1hcCgocmVhc29uLCBpZHgpID0+IChcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAga2V5PXtgb3B0LSR7aWR4fWB9XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17YG1iLTMgJHtTdHlsZS5jYW5jZWxsYXRpb25SZWFzb259YH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEZvcm0uQ2hlY2tcbiAgICAgICAgICAgICAgICB2YWx1ZT17bWFjaGluZVJlYXNvbnNbaWR4XX1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17Zm9ybWlrLmhhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICBvbkJsdXI9e2Zvcm1pay5oYW5kbGVCbHVyfVxuICAgICAgICAgICAgICAgIGxhYmVsPXtyZWFzb259XG4gICAgICAgICAgICAgICAgbmFtZT1cImNhbmNlbGxhdGlvbl9yZWFzb25cIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgICAgICAgICAgaWQ9e3JlYXNvbn1cbiAgICAgICAgICAgICAgICBjaGVja2VkPXtcbiAgICAgICAgICAgICAgICAgIG1hY2hpbmVSZWFzb25zW2lkeF0gPT09IGZvcm1pay52YWx1ZXMuY2FuY2VsbGF0aW9uX3JlYXNvblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICkpfVxuICAgICAgICA8L0Zvcm0uR3JvdXA+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPEZvcm1TdHlsZT5cbiAgICAgIDxGb3JtaWsgaW5pdGlhbFZhbHVlcz17c2FtcGxpbmdQcm9wZXJ0eX0gb25TdWJtaXQ9e2hhbmRsZVN1Ym1pdH0+XG4gICAgICAgIHsoKSA9PiAoXG4gICAgICAgICAgPGZvcm0gb25TdWJtaXQ9e2Zvcm1pay5oYW5kbGVTdWJtaXR9PlxuICAgICAgICAgICAgPEZvcm1Db250YWluZXJTdHlsZT5cbiAgICAgICAgICAgICAgPEZpZWxkc0NvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICB7cGFnZVR5cGUgPT09ICdjb2xsZWN0JyAmJiAoXG4gICAgICAgICAgICAgICAgICA8U3RhcnQ+XG4gICAgICAgICAgICAgICAgICAgIDxJbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgPE1vYmlsZUlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVDaGFuZ2U9e2Zvcm1pay5oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVCbHVyPXtmb3JtaWsuaGFuZGxlQmx1cn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0VGl0bGU9e2kxOG4udCgnYWN0aXZlcmVjb3JkLm1vZGVscy5sYWInKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJsYWJfaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInNlbGVjdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWlrLnZhbHVlcy5sYWJfaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICBpc0ludmFsaWQ9eyEhZm9ybWlrLmVycm9ycy5sYWJfaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICBtYW5kYXRvcnk9e3RydWV9XG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT17dW5kZWZpbmVkfT48L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtzYW1wbGluZ1Byb3BlcnRpZXMubGFicyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcy5sYWJzLm1hcCgobGFiOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17bGFiLmlkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZD17XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiLmlkID09PSB0b1NhZmVJbnRlZ2VyKGZvcm1pay52YWx1ZXMubGFiX2lkKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtsYWIubmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgIDwvTW9iaWxlSW5wdXQ+XG4gICAgICAgICAgICAgICAgICAgICAge2Zvcm1pay5lcnJvcnMubGFiX2lkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnaGludCd9Pntmb3JtaWsuZXJyb3JzLmxhYl9pZH08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICA8L0lucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgPEZvcm1Sb3dTdHlsZT5cbiAgICAgICAgICAgICAgICAgICAgICA8SW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPE1vYmlsZUlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlzSW52YWxpZD17ISFmb3JtaWsuZXJyb3JzLnB1bXBfc2FtcGxpbmdfdm9sdW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVDaGFuZ2U9e2Zvcm1pay5oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUJsdXI9e2Zvcm1pay5oYW5kbGVCbHVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFRpdGxlPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3B1bXBfc2NoZWR1bGVkX2RheXNfY29uZmlndXJhdGlvbi52b2x1bWUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwicHVtcF9zYW1wbGluZ192b2x1bWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMucHVtcF9zYW1wbGluZ192b2x1bWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbD1cIm1sXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWFuZGF0b3J5PXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtmb3JtaWsuZXJyb3JzLnB1bXBfc2FtcGxpbmdfdm9sdW1lICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoaW50IGhpbnQtLXVwcGVyJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1pay5lcnJvcnMucHVtcF9zYW1wbGluZ192b2x1bWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L0lucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8SW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPE1vYmlsZUlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlzSW52YWxpZD17ISFmb3JtaWsuZXJyb3JzLnB1bXBfYmF0dGVyeV9sZXZlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlQ2hhbmdlPXtmb3JtaWsuaGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVCbHVyPXtmb3JtaWsuaGFuZGxlQmx1cn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRUaXRsZT17aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzYW1wbGluZ19zY3JlZW4ucHVtcF9iYXR0ZXJ5X2xldmVsJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInB1bXBfYmF0dGVyeV9sZXZlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWlrLnZhbHVlcy5wdW1wX2JhdHRlcnlfbGV2ZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbD1cIiVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBtYW5kYXRvcnk9e3RydWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1pay5lcnJvcnMucHVtcF9iYXR0ZXJ5X2xldmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoaW50IGhpbnQtLXVwcGVyJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1pay5lcnJvcnMucHVtcF9iYXR0ZXJ5X2xldmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9JbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvRm9ybVJvd1N0eWxlPlxuICAgICAgICAgICAgICAgICAgPC9TdGFydD5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDxFbmQgcGFnZVR5cGU9e3BhZ2VUeXBlfT5cbiAgICAgICAgICAgICAgICAgIHtwYWdlVHlwZSA9PT0gJ2NvbGxlY3QnICYmIChcbiAgICAgICAgICAgICAgICAgICAgPElucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8TW9iaWxlSW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzSW52YWxpZD17ISFmb3JtaWsuZXJyb3JzLmthbmRvX3JlcH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUNoYW5nZT17Zm9ybWlrLmhhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUJsdXI9e2Zvcm1pay5oYW5kbGVCbHVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRUaXRsZT17aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnc2FtcGxpbmdzX3BhZ2Uuc2FtcGxpbmdzX3Byb3BlcnRpZXMucmVwb3J0ZXInLFxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJrYW5kb19yZXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NhbXBsaW5nc19wYWdlLnNhbXBsaW5nc19wcm9wZXJ0aWVzLnBsYWNlaG9sZGVyX3JlcG9ydGVyJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWlrLnZhbHVlcy5rYW5kb19yZXB9XG4gICAgICAgICAgICAgICAgICAgICAgICBtYW5kYXRvcnk9e3RydWV9XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICB7Zm9ybWlrLmVycm9ycy5rYW5kb19yZXAgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoaW50J30+e2Zvcm1pay5lcnJvcnMua2FuZG9fcmVwfTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDwvSW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgICAgICAge3BhZ2VUeXBlID09PSAnY2FuY2VsJyAmJiAoXG4gICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e1N0eWxlLmNhbmNlbGxhdGlvblRpdGxlfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpMThuLnQoJ3NhbXBsaW5nc19wYWdlLmNhbmNlbGxhdGlvbl90aXRsZScpfTpcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICB7Zm9ybWlrLnRvdWNoZWQuY2FuY2VsbGF0aW9uX3JlYXNvbiAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWlrLmVycm9ycy5jYW5jZWxsYXRpb25fcmVhc29uICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e1N0eWxlLnZhbGlkYXRpb25FcnJvcn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2kxOG4udCgnZ2VuZXJhbC5wbGVhc2Vfc2VsZWN0Jyl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8Q2FuY2VsbGF0aW9uUmVhc29ucyAvPlxuICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICl9XG5cbiAgICAgICAgICAgICAgICAgIDxJbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIDxEZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICA8TW9iaWxlSW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUNoYW5nZT17Zm9ybWlrLmhhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUJsdXI9e2Zvcm1pay5oYW5kbGVCbHVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRUaXRsZT17aTE4bi50KCd3YXRlcl9tZXRlci5kZXNjcmlwdGlvbicpfVxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0YXJlYVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnc2FtcGxpbmdzX3BhZ2Uuc2FtcGxpbmdzX3Byb3BlcnRpZXMuZ2VuZXJhbF9kZXNjcmlwdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMuZGVzY3JpcHRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICBpc0ludmFsaWQ9eyEhZm9ybWlrLmVycm9ycy5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgIG1hbmRhdG9yeT17ZmFsc2V9XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9EZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgICAgIDwvSW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgIDwvRW5kPlxuICAgICAgICAgICAgICA8L0ZpZWxkc0NvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgdHlwZT17J2hpZGRlbid9XG4gICAgICAgICAgICAgICAgbmFtZT17J2NvbGxlY3Rpb25fdGltZSd9XG4gICAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMuY29sbGVjdGlvbl90aW1lfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0eXBlPXsnaGlkZGVuJ31cbiAgICAgICAgICAgICAgICBuYW1lPXsnc2FtcGxpbmdfcGxhbl9pZCd9XG4gICAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMuc2FtcGxpbmdfcGxhbl9pZH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPEJvdHRvbUZvcm1TdHlsZSAvPlxuICAgICAgICAgICAgICA8SW1hZ2VVcGxvYWRcbiAgICAgICAgICAgICAgICBzZXRQaG90b3M9e3NldFBob3Rvc31cbiAgICAgICAgICAgICAgICBwaG90b3M9e3Bob3Rvc31cbiAgICAgICAgICAgICAgICBzYW1wbGluZz17c2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICAgIHNldFBob3Rvc1RvRGVsZXRlPXtzZXRQaG90b3NUb0RlbGV0ZX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPEJ1dHRvbnNSb3c+XG4gICAgICAgICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlQ2xvc2V9XG4gICAgICAgICAgICAgICAgICB3aWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgIHJvdW5kZWQ9e3RydWV9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge2kxOG4udCgnY2xvc2UnKX1cbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICByb3VuZGVkPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgb3V0bGluZT17dHJ1ZX1cbiAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtmYWxzZX1cbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNTBweFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3NhdmluZ01zZ31cbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgPC9CdXR0b25zUm93PlxuICAgICAgICAgICAgPC9Gb3JtQ29udGFpbmVyU3R5bGU+XG4gICAgICAgICAgPC9mb3JtPlxuICAgICAgICApfVxuICAgICAgPC9Gb3JtaWs+XG4gICAgPC9Gb3JtU3R5bGU+XG4gICk7XG59O1xuXG5jb25zdCBJbnB1dFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5oaW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMTZweDtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICR7dGhlbWUuY29sb3JTY2hlbWUuZGF0YS5SMTAwfTtcblxuICAgICYtLXVwcGVyIHtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IEZpZWxkc0NvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiAke2lzTW9iaWxlID8gJ2NvbHVtbjsnIDogJ3JvdzsnfVxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5gO1xuXG5jb25zdCBTdGFydCA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAke2lzTW9iaWxlID8gJ3Vuc2V0OycgOiAnNTAlOyd9XG4gIHBhZGRpbmctaW5saW5lLWVuZDogJHtpc01vYmlsZSA/ICd1bnNldDsnIDogJzEwcHg7J31cbiAgcGFkZGluZy10b3A6ICR7aXNNb2JpbGUgPyAndW5zZXQ7JyA6ICcxMHB4Oyd9XG4gIFxuYDtcbmludGVyZmFjZSBFbmRQcm9wcyB7XG4gIHBhZ2VUeXBlOiBzdHJpbmc7XG59XG5jb25zdCBFbmQgPSBzdHlsZWQuZGl2LmF0dHJzKChwcm9wczogRW5kUHJvcHMpID0+ICh7XG4gIGlzUHJvcGVydGllc1BhZ2U6IHByb3BzLnBhZ2VUeXBlID09PSAnY29sbGVjdCcsXG59KSlgXG4gIHdpZHRoOiAkeyhwcm9wcykgPT5cbiAgICBpc01vYmlsZSA/ICd1bnNldCcgOiBwcm9wcy5pc1Byb3BlcnRpZXNQYWdlID8gJzUwJScgOiAnMTAwJSd9O1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogJHtpc01vYmlsZSA/ICd1bnNldDsnIDogJzEwcHg7J31cbiAgcGFkZGluZy10b3A6ICR7aXNNb2JpbGUgPyAndW5zZXQ7JyA6ICcxMHB4Oyd9XG5gO1xuXG5jb25zdCBEZXNjcmlwdGlvbiA9IHN0eWxlZC5kaXZgXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiA1cHggMDtcbiAgICBoZWlnaHQ6IG1heC1jb250ZW50O1xuICAgIHRleHRhcmVhIHtcbiAgICAgIHRyYW5zaXRpb246IGN1YmljLWJlemllcigwLjY1LCAwLjA1LCAwLjM2LCAxKSAwLjJzO1xuICAgICAgaGVpZ2h0OiAke2lzTW9iaWxlID8gJzI1cHgnIDogJzEwNXB4ICFpbXBvcnRhbnQnfTtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHRyYW5zaXRpb246IGN1YmljLWJlemllcigwLjY1LCAwLjA1LCAwLjM2LCAxKSAwLjJzO1xuICAgICAgICBoZWlnaHQ6ICR7aXNNb2JpbGUgPyAnNzVweCAhaW1wb3J0YW50JyA6ICcxMDVweCAhaW1wb3J0YW50J307XG4gICAgICB9XG4gICAgfVxuXG4gICAgZGl2IHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBGb3JtU3R5bGUgPSBzdHlsZWQuZGl2YFxuICBib3JkZXItYm90dG9tOiA2cHggc29saWQgI2Y5ZmFmYztcbmA7XG5cbmNvbnN0IEZvcm1Sb3dTdHlsZSA9IHN0eWxlZChSb3cpYFxuICBtYXJnaW46IDA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZGl2IHtcbiAgICB3aWR0aDogJHtpc01vYmlsZSA/ICc0NSU7JyA6ICcxMDAlOyd9O1xuXG4gICAgZGl2IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgQnV0dG9uc1JvdyA9IHN0eWxlZChSb3cpYFxuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6ICR7aXNNb2JpbGUgPyAnc3BhY2UtYmV0d2VlbicgOiAnZmxleC1lbmQnfTtcbiAgbWFyZ2luOiAke2lzTW9iaWxlID8gMCA6ICc5cHggMCd9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2lzTW9iaWxlXG4gICAgPyAoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvclNjaGVtZS5uYXR1cmFsLm4xMFxuICAgIDogJyd9O1xuXG4gIGRpdiB7XG4gICAgJHtpc01vYmlsZSA/ICcnIDogJ21hcmdpbjogMCA2cHgnfVxuICB9XG5gO1xuXG5jb25zdCBGb3JtQ29udGFpbmVyU3R5bGUgPSBzdHlsZWQoQ29udGFpbmVyKWBcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuYDtcblxuY29uc3QgQm90dG9tRm9ybVN0eWxlID0gc3R5bGVkLmRpdmBcbiAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICNmOWZhZmM7XG5gO1xuIl19
|
|
364
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXNGb3JtLnRzeCJdLCJuYW1lcyI6WyJTYW1wbGluZ1Byb3BlcnRpZXNGb3JtIiwicHJvcHMiLCJzYW1wbGluZ1Byb3BlcnRpZXMiLCJzYW1wbGluZyIsImN1cnJlbnREYXRlIiwic2V0U2FtcGxpbmdVcGRhdGVkIiwicGFnZVR5cGUiLCJwaG90b3MiLCJzZXRQaG90b3MiLCJwaG90b3NUb0RlbGV0ZSIsInNldFBob3Rvc1RvRGVsZXRlIiwiaTE4biIsInQiLCJzYXZpbmdNc2ciLCJzZXRTYXZpbmdNc2ciLCJoaXN0b3J5IiwicXVlcnkiLCJ3YXRlckF1dGhvcml0eUlkRnJvbVVybCIsInBhcnNlSW50IiwiZ2V0IiwibmF2Q29udGV4dCIsInN0YXRlIiwibmF2X2NvbnRleHRfZGF0YSIsInZhbGlkYXRpb25TY2hlbWEiLCJwcm9wZXJ0aWVzVmFsaWRhdGlvblNjaGVtYSIsImNhbmNlbGxpbmdWYWxpZGF0aW9uU2NoZW1hIiwiZm9ybWlrIiwiaW5pdGlhbFZhbHVlcyIsImxhYl9pZCIsImNvbGxlY3Rpb25fdGltZSIsInB1bXBfc2FtcGxpbmdfdm9sdW1lIiwicHVtcF9iYXR0ZXJ5X2xldmVsIiwiZGVzY3JpcHRpb24iLCJrYW5kb19yZXAiLCJzYW1wbGluZ19wbGFuX2lkIiwiY2FuY2VsbGF0aW9uX3JlYXNvbiIsInZhbGlkYXRlT25DaGFuZ2UiLCJ2YWxpZGF0ZU9uQmx1ciIsIm9uU3VibWl0IiwidmFsdWVzIiwiaGFuZGxlU3VibWl0Iiwic2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0Iiwic2V0VGltZW91dCIsImZvcm1EYXRhQnVpbGRlciIsImZvcm1EYXRhIiwiRm9ybURhdGEiLCJrZXkiLCJhcHBlbmQiLCJ1bmlxdWVQaG90b3NUb0RlbGV0ZSIsIlNldCIsImxlbmd0aCIsImZvckVhY2giLCJpZCIsImluZGV4IiwiSlNPTiIsInN0cmluZ2lmeSIsInVwZGF0ZU9yQ3JlYXRlIiwiYXhpb3MiLCJwb3N0IiwiY3JlYXRlU2FtcGxpbmciLCJ1cmwiLCJ0aGVuIiwiY2F0Y2giLCJwdXQiLCJzYW1wbGluZ0lkIiwidXBkYXRlU2FtcGxpbmciLCJoYW5kbGVDbG9zZSIsInBpY3R1cmVzX2F0dHJpYnV0ZXMiLCJzYW1wbGluZ3NMaXN0Um91dGUiLCJsb2NhbGUiLCJ3YXRlckF1dGhvcml0eUlkIiwic2FtcGxpbmdzUGFnZSIsInB1c2giLCJDYW5jZWxsaW5nUmVhc29ucyIsIm1hbnVhbFJlYXNvbnMiLCJtYW51YWxSZWFzb25zS2V5cyIsIm1hcCIsImF1dG9SZWFzb25zIiwiYXV0b1JlYXNvbnNLZXlzIiwicmVhc29ucyIsIm1hY2hpbmVfdHlwZSIsIm1hY2hpbmVSZWFzb25zIiwiU3R5bGUiLCJjYW5jZWxsaW5nUmVhc29uR3JvdXAiLCJ0b3VjaGVkIiwiZXJyb3JzIiwiaW52YWxpZEJvcmRlcnMiLCJyZWFzb24iLCJpZHgiLCJjYW5jZWxsaW5nUmVhc29uIiwiaGFuZGxlQ2hhbmdlIiwidmFsaWRhdGlvbkVycm9yIiwic2FtcGxpbmdQcm9wZXJ0eSIsImUiLCJwcmV2ZW50RGVmYXVsdCIsInVuZGVmaW5lZCIsImxhYnMiLCJsYWIiLCJuYW1lIiwiY2FuY2VsbGluZ1RpdGxlIiwiSW5wdXRXcmFwcGVyIiwic3R5bGVkIiwiZGl2IiwidGhlbWUiLCJjb2xvclNjaGVtZSIsImRhdGEiLCJSMTAwIiwiRmllbGRzQ29udGFpbmVyIiwiaXNNb2JpbGUiLCJTdGFydCIsIkVuZCIsImF0dHJzIiwiaXNQcm9wZXJ0aWVzUGFnZSIsIkRlc2NyaXB0aW9uIiwiRm9ybVN0eWxlIiwiRm9ybVJvd1N0eWxlIiwiUm93IiwiQnV0dG9uc1JvdyIsIm5hdHVyYWwiLCJuMTAiLCJGb3JtQ29udGFpbmVyU3R5bGUiLCJDb250YWluZXIiLCJCb3R0b21Gb3JtU3R5bGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7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QUgsU0FBR0EsS0FBSDtBQUFBLFNBQWVBLEtBQUssQ0FBQ0MsV0FBTixDQUFrQmMsT0FBbEIsQ0FBMEJDLEdBQXpDO0FBQUEsQ0FEZ0IsR0FFaEIsRUFOVSxFQVNWWCw4QkFBVyxFQUFYLEdBQWdCLGVBVE4sQ0FBaEI7QUFhQSxJQUFNWSxrQkFBa0IsR0FBRywrQkFBT0MseUJBQVAsQ0FBSDtBQUFBO0FBQUE7QUFBQSwyQkFBeEI7O0FBS0EsSUFBTUMsZUFBZSxHQUFHckIsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEsd0NBQXJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZDLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IENvbnRhaW5lciwgRm9ybSwgUm93IH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCB7IEZvcm1paywgdXNlRm9ybWlrIH0gZnJvbSAnZm9ybWlrJztcbmltcG9ydCB7IGlzTW9iaWxlIH0gZnJvbSAncmVhY3QtZGV2aWNlLWRldGVjdCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5IH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7XG4gIHNhbXBsaW5nUHJvcGVydHksXG4gIHByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hLFxuICBjYW5jZWxsaW5nVmFsaWRhdGlvblNjaGVtYSxcbiAgYXV0b1JlYXNvbnNLZXlzLFxuICBtYW51YWxSZWFzb25zS2V5cyxcbn0gZnJvbSAnc3JjL3BhZ2VzL1NhbXBsaW5nc1BhZ2UvU2FtcGxpbmdQcm9wZXJ0aWVzL3NhbXBsaW5nUHJvcGVydGllc1V0aWxzJztcblxuaW1wb3J0IEltYWdlVXBsb2FkIGZyb20gJ3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9JbWFnZVVwbG9hZCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJ3NyYy9ob29rcy91c2VRdWVyeVVSTCc7XG5pbXBvcnQgeyBNb2JpbGVJbnB1dCwgQnV0dG9uIH0gZnJvbSAnc3JjL3VpLWtpdCc7XG5pbXBvcnQgeyBUU2FtcGxpbmdQcm9wZXJ0aWVzIH0gZnJvbSAnLi9TYW1wbGluZ01vYmlsZVByb3BlcnRpZXMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgeyB0aGVtZSB9IGZyb20gJ3NyYy9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgdXJscyB9IGZyb20gJ3NyYy91dGlsaXRpZXMvdXJscyc7XG5pbXBvcnQgeyB1c2VJbml0aWFsaXplSGVhZGVycyB9IGZyb20gJ3NyYy9ob29rcy91c2VJbml0aWFsaXplSGVhZGVycyc7XG5pbXBvcnQgeyBTYW1wbGluZ0ZldGNoRGF0YSB9IGZyb20gJ3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL3NhbXBsaW5nc1BhZ2VVdGlscyc7XG5cbmltcG9ydCBTdHlsZSBmcm9tICcuLi9zdHlsZS5tb2R1bGUuc2Nzcyc7XG5pbXBvcnQgJy4vYm9vdHN0cmFwLm92ZXJyaWRlcy5zY3NzJztcblxudHlwZSBwcm9wcyA9IHtcbiAgc2FtcGxpbmdQcm9wZXJ0aWVzOiBUU2FtcGxpbmdQcm9wZXJ0aWVzO1xuICBzYW1wbGluZzogU2FtcGxpbmdGZXRjaERhdGE7XG4gIGN1cnJlbnREYXRlOiBzdHJpbmc7XG4gIHNldFNhbXBsaW5nVXBkYXRlZDogUmVhY3QuRGlzcGF0Y2g8UmVhY3QuU2V0U3RhdGVBY3Rpb248Ym9vbGVhbj4+O1xuICBwYWdlVHlwZTogc3RyaW5nO1xufTtcblxudHlwZSBGb3JtVHlwZSA9IHtcbiAgbGFiX2lkOiBudW1iZXI7XG4gIGNvbGxlY3Rpb25fdGltZTogc3RyaW5nO1xuICBwdW1wX3NhbXBsaW5nX3ZvbHVtZTogbnVtYmVyO1xuICBwdW1wX2JhdHRlcnlfbGV2ZWw6IG51bWJlcjtcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAga2FuZG9fcmVwOiBzdHJpbmc7XG4gIHNhbXBsaW5nX3BsYW5faWQ6IG51bWJlcjtcbiAgY2FuY2VsbGF0aW9uX3JlYXNvbjogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNvbnN0IFNhbXBsaW5nUHJvcGVydGllc0Zvcm06IEZDPHByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7XG4gICAgc2FtcGxpbmdQcm9wZXJ0aWVzLFxuICAgIHNhbXBsaW5nLFxuICAgIGN1cnJlbnREYXRlLFxuICAgIHNldFNhbXBsaW5nVXBkYXRlZCxcbiAgICBwYWdlVHlwZSxcbiAgfSA9IHByb3BzO1xuICBjb25zdCBbcGhvdG9zLCBzZXRQaG90b3NdID0gdXNlU3RhdGU8c3RyaW5nIHwgQmxvYiB8IGFueT4oW10pO1xuICBjb25zdCBbcGhvdG9zVG9EZWxldGUsIHNldFBob3Rvc1RvRGVsZXRlXSA9IHVzZVN0YXRlPG51bWJlcltdPihbXSk7XG4gIGNvbnN0IFtzYXZpbmdNc2csIHNldFNhdmluZ01zZ10gPSB1c2VTdGF0ZTxzdHJpbmc+KGkxOG4udCgnYnV0dG9ucy5zYXZlJykpO1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5VVJMKCk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5SWRGcm9tVXJsID0gcGFyc2VJbnQoXG4gICAgcXVlcnkuZ2V0KCd3YXRlcl9hdXRob3JpdHlfaWQnKSB8fCAnMCcsXG4gICk7XG4gIGNvbnN0IG5hdkNvbnRleHQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5uYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQsXG4gICk7XG5cbiAgY29uc3QgdmFsaWRhdGlvblNjaGVtYSA9XG4gICAgcGFnZVR5cGUgPT09ICdjb2xsZWN0J1xuICAgICAgPyBwcm9wZXJ0aWVzVmFsaWRhdGlvblNjaGVtYVxuICAgICAgOiBjYW5jZWxsaW5nVmFsaWRhdGlvblNjaGVtYTtcblxuICBjb25zdCBmb3JtaWsgPSB1c2VGb3JtaWs8Rm9ybVR5cGU+KHtcbiAgICBpbml0aWFsVmFsdWVzOiB7XG4gICAgICBsYWJfaWQ6IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5sYWJfaWQsXG4gICAgICBjb2xsZWN0aW9uX3RpbWU6IGN1cnJlbnREYXRlLFxuICAgICAgcHVtcF9zYW1wbGluZ192b2x1bWU6IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5wdW1wX3NhbXBsaW5nX3ZvbHVtZSxcbiAgICAgIHB1bXBfYmF0dGVyeV9sZXZlbDogc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLnB1bXBfYmF0dGVyeV9sZXZlbCxcbiAgICAgIGRlc2NyaXB0aW9uOiBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuZGVzY3JpcHRpb24sXG4gICAgICBrYW5kb19yZXA6IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5rYW5kb19yZXAsXG4gICAgICBzYW1wbGluZ19wbGFuX2lkOiBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuc2FtcGxpbmdfcGxhbl9pZCxcbiAgICAgIGNhbmNlbGxhdGlvbl9yZWFzb246ICcnLFxuICAgIH0sXG4gICAgdmFsaWRhdGlvblNjaGVtYTogdmFsaWRhdGlvblNjaGVtYSxcbiAgICB2YWxpZGF0ZU9uQ2hhbmdlOiBmYWxzZSxcbiAgICB2YWxpZGF0ZU9uQmx1cjogZmFsc2UsXG4gICAgb25TdWJtaXQ6ICh2YWx1ZXMpID0+IHtcbiAgICAgIGhhbmRsZVN1Ym1pdCh2YWx1ZXMpO1xuICAgIH0sXG4gIH0pO1xuXG4gIGNvbnN0IHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCA9ICgpID0+IHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuc2F2ZScpKTtcbiAgICB9LCAzMDAwKTtcbiAgfTtcblxuICBjb25zdCBmb3JtRGF0YUJ1aWxkZXIgPSAodmFsdWVzKSA9PiB7XG4gICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiB2YWx1ZXMpIHtcbiAgICAgIGlmIChrZXkgIT09ICdwaWN0dXJlc19hdHRyaWJ1dGVzJykge1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoYHNhbXBsaW5nWyR7a2V5fV1gLCB2YWx1ZXNba2V5XSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IHVuaXF1ZVBob3Rvc1RvRGVsZXRlID0gWy4uLm5ldyBTZXQocGhvdG9zVG9EZWxldGUpXTtcbiAgICB1bmlxdWVQaG90b3NUb0RlbGV0ZS5sZW5ndGggIT09IDAgJiZcbiAgICAgIHVuaXF1ZVBob3Rvc1RvRGVsZXRlLmZvckVhY2goKGlkLCBpbmRleCkgPT4ge1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAgICAgYHNhbXBsaW5nW3BpY3R1cmVzX2F0dHJpYnV0ZXNdWyR7aW5kZXh9XVtpZF1gLFxuICAgICAgICAgIEpTT04uc3RyaW5naWZ5KGlkKSxcbiAgICAgICAgKTtcblxuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAgICAgYHNhbXBsaW5nW3BpY3R1cmVzX2F0dHJpYnV0ZXNdWyR7aW5kZXh9XVtfZGVzdHJveV1gLFxuICAgICAgICAgICd0cnVlJyxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIGZvcm1EYXRhO1xuICB9O1xuXG4gIGNvbnN0IHVwZGF0ZU9yQ3JlYXRlID0gKGZvcm1EYXRhKSA9PiB7XG4gICAgaWYgKHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5pZCA9PT0gbnVsbCkge1xuICAgICAgZm9ybURhdGEuYXBwZW5kKGBzYW1wbGluZ1tkYXRlXWAsIGN1cnJlbnREYXRlKTtcbiAgICAgIGF4aW9zXG4gICAgICAgIC5wb3N0KHVybHMoKS5zYW1wbGluZ1Byb3BlcnRpZXMuY3JlYXRlU2FtcGxpbmcudXJsLCBmb3JtRGF0YSlcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuY3JlYXRlZCcpKTtcbiAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQodHJ1ZSk7XG4gICAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5lcnJvcicpKTtcbiAgICAgICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGF4aW9zXG4gICAgICAgIC5wdXQoXG4gICAgICAgICAgdXJscyh7IHNhbXBsaW5nSWQ6IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5pZCB9KVxuICAgICAgICAgICAgLnNhbXBsaW5nUHJvcGVydGllcy51cGRhdGVTYW1wbGluZy51cmwsXG4gICAgICAgICAgZm9ybURhdGEsXG4gICAgICAgIClcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMudXBkYXRlZCcpKTtcbiAgICAgICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuZXJyb3InKSk7XG4gICAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAodmFsdWVzKSA9PiB7XG4gICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5zYXZpbmcnKSk7XG4gICAgdmFsdWVzLnBpY3R1cmVzX2F0dHJpYnV0ZXMgPSBwaG90b3M7XG4gICAgdXBkYXRlT3JDcmVhdGUoZm9ybURhdGFCdWlsZGVyKHZhbHVlcykpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGNvbnN0IHNhbXBsaW5nc0xpc3RSb3V0ZSA9IHVybHMoe1xuICAgICAgbG9jYWxlOiBuYXZDb250ZXh0LmxvY2FsZSxcbiAgICAgIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWRGcm9tVXJsLFxuICAgIH0pLnNhbXBsaW5nc1BhZ2Uuc2FtcGxpbmdzTGlzdFJvdXRlLnVybDtcbiAgICBoaXN0b3J5LnB1c2goc2FtcGxpbmdzTGlzdFJvdXRlKTtcbiAgfTtcblxuICB1c2VJbml0aWFsaXplSGVhZGVycygpO1xuICB1c2VFZmZlY3QoKCkgPT4ge30sIFtzYW1wbGluZ1Byb3BlcnRpZXNdKTtcblxuICBjb25zdCBDYW5jZWxsaW5nUmVhc29ucyA9IHVzZUNhbGxiYWNrKFxuICAgICh7IGZvcm1payB9KSA9PiB7XG4gICAgICBjb25zdCBtYW51YWxSZWFzb25zID0gbWFudWFsUmVhc29uc0tleXMubWFwKChrZXk6IHN0cmluZykgPT4ge1xuICAgICAgICByZXR1cm4gaTE4bi50KGBjYW5jZWxsYXRpb25fcmVhc29ucy4ke2tleX1gKTtcbiAgICAgIH0pO1xuICAgICAgY29uc3QgYXV0b1JlYXNvbnMgPSBhdXRvUmVhc29uc0tleXMubWFwKChrZXk6IHN0cmluZykgPT4ge1xuICAgICAgICByZXR1cm4gaTE4bi50KGBjYW5jZWxsYXRpb25fcmVhc29ucy5hdXRvbWF0ZWQuJHtrZXl9YCk7XG4gICAgICB9KTtcblxuICAgICAgY29uc3QgcmVhc29ucyA9XG4gICAgICAgIHNhbXBsaW5nLm1hY2hpbmVfdHlwZSA9PT0gJ3NhbXBsaW5nX3R5cGVfcmFwaWQnXG4gICAgICAgICAgPyBtYW51YWxSZWFzb25zXG4gICAgICAgICAgOiBhdXRvUmVhc29ucztcblxuICAgICAgY29uc3QgbWFjaGluZVJlYXNvbnMgPVxuICAgICAgICBzYW1wbGluZy5tYWNoaW5lX3R5cGUgPT09ICdzYW1wbGluZ190eXBlX3JhcGlkJ1xuICAgICAgICAgID8gbWFudWFsUmVhc29uc0tleXNcbiAgICAgICAgICA6IGF1dG9SZWFzb25zS2V5cztcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8Rm9ybS5Hcm91cFxuICAgICAgICAgICAgY2xhc3NOYW1lPXtgJHtTdHlsZS5jYW5jZWxsaW5nUmVhc29uR3JvdXB9ICR7XG4gICAgICAgICAgICAgIGZvcm1pay50b3VjaGVkLmNhbmNlbGxhdGlvbl9yZWFzb24gJiZcbiAgICAgICAgICAgICAgZm9ybWlrLmVycm9ycy5jYW5jZWxsYXRpb25fcmVhc29uXG4gICAgICAgICAgICAgICAgPyBTdHlsZS5pbnZhbGlkQm9yZGVyc1xuICAgICAgICAgICAgICAgIDogJydcbiAgICAgICAgICAgIH1gfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtyZWFzb25zLm1hcCgocmVhc29uLCBpZHgpID0+IChcbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGtleT17YG9wdC0ke2lkeH1gfVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17YG1iLTMgJHtTdHlsZS5jYW5jZWxsaW5nUmVhc29ufWB9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Rm9ybS5DaGVja1xuICAgICAgICAgICAgICAgICAgdmFsdWU9e21hY2hpbmVSZWFzb25zW2lkeF19XG4gICAgICAgICAgICAgICAgICBvbkNoYW5nZT17Zm9ybWlrLmhhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICAgIGxhYmVsPXtyZWFzb259XG4gICAgICAgICAgICAgICAgICBuYW1lPVwiY2FuY2VsbGF0aW9uX3JlYXNvblwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgICAgICAgaWQ9e2BpZHgtJHtpZHh9YH1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICkpfVxuICAgICAgICAgIDwvRm9ybS5Hcm91cD5cbiAgICAgICAgICB7Zm9ybWlrLnRvdWNoZWQuY2FuY2VsbGF0aW9uX3JlYXNvbiAmJlxuICAgICAgICAgICAgZm9ybWlrLmVycm9ycy5jYW5jZWxsYXRpb25fcmVhc29uICYmIChcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e1N0eWxlLnZhbGlkYXRpb25FcnJvcn0+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZ2VuZXJhbC5wbGVhc2Vfc2VsZWN0Jyl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKX1cbiAgICAgICAgPC8+XG4gICAgICApO1xuICAgIH0sXG4gICAgW3NhbXBsaW5nUHJvcGVydGllc10sXG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8Rm9ybVN0eWxlPlxuICAgICAgPEZvcm1pa1xuICAgICAgICBpbml0aWFsVmFsdWVzPXtzYW1wbGluZ1Byb3BlcnR5fVxuICAgICAgICB2YWxpZGF0ZU9uQmx1cj17ZmFsc2V9XG4gICAgICAgIHZhbGlkYXRlT25DaGFuZ2U9e2ZhbHNlfVxuICAgICAgICBvblN1Ym1pdD17KCkgPT4gaGFuZGxlU3VibWl0KGZvcm1pay52YWx1ZXMpfVxuICAgICAgPlxuICAgICAgICB7KCkgPT4gKFxuICAgICAgICAgIDxmb3JtXG4gICAgICAgICAgICBvblN1Ym1pdD17KGUpID0+IHtcbiAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICBmb3JtaWsuaGFuZGxlU3VibWl0KGUpO1xuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Rm9ybUNvbnRhaW5lclN0eWxlPlxuICAgICAgICAgICAgICA8RmllbGRzQ29udGFpbmVyPlxuICAgICAgICAgICAgICAgIHtwYWdlVHlwZSA9PT0gJ2NvbGxlY3QnICYmIChcbiAgICAgICAgICAgICAgICAgIDxTdGFydD5cbiAgICAgICAgICAgICAgICAgICAgPElucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8TW9iaWxlSW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUNoYW5nZT17Zm9ybWlrLmhhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0VGl0bGU9e2kxOG4udCgnYWN0aXZlcmVjb3JkLm1vZGVscy5sYWInKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJsYWJfaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInNlbGVjdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWlrLnZhbHVlcy5sYWJfaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICBpc0ludmFsaWQ9eyEhZm9ybWlrLmVycm9ycy5sYWJfaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICBtYW5kYXRvcnk9e3RydWV9XG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT17dW5kZWZpbmVkfT48L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtzYW1wbGluZ1Byb3BlcnRpZXMubGFicyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcy5sYWJzLm1hcCgobGFiOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gPG9wdGlvbiB2YWx1ZT17bGFiLmlkfT57bGFiLm5hbWV9PC9vcHRpb24+O1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICA8L01vYmlsZUlucHV0PlxuICAgICAgICAgICAgICAgICAgICAgIHtmb3JtaWsuZXJyb3JzLmxhYl9pZCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2hpbnQnfT57Zm9ybWlrLmVycm9ycy5sYWJfaWR9PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPC9JbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIDxGb3JtUm93U3R5bGU+XG4gICAgICAgICAgICAgICAgICAgICAgPElucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxNb2JpbGVJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpc0ludmFsaWQ9eyEhZm9ybWlrLmVycm9ycy5wdW1wX3NhbXBsaW5nX3ZvbHVtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlQ2hhbmdlPXtmb3JtaWsuaGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFRpdGxlPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3B1bXBfc2NoZWR1bGVkX2RheXNfY29uZmlndXJhdGlvbi52b2x1bWUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwicHVtcF9zYW1wbGluZ192b2x1bWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMucHVtcF9zYW1wbGluZ192b2x1bWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbD1cIm1sXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWFuZGF0b3J5PXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtmb3JtaWsuZXJyb3JzLnB1bXBfc2FtcGxpbmdfdm9sdW1lICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoaW50IGhpbnQtLXVwcGVyJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1pay5lcnJvcnMucHVtcF9zYW1wbGluZ192b2x1bWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L0lucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICA8SW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPE1vYmlsZUlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlzSW52YWxpZD17ISFmb3JtaWsuZXJyb3JzLnB1bXBfYmF0dGVyeV9sZXZlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlQ2hhbmdlPXtmb3JtaWsuaGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFRpdGxlPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NhbXBsaW5nX3NjcmVlbi5wdW1wX2JhdHRlcnlfbGV2ZWwnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwicHVtcF9iYXR0ZXJ5X2xldmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXtmb3JtaWsudmFsdWVzLnB1bXBfYmF0dGVyeV9sZXZlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3ltYm9sPVwiJVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hbmRhdG9yeT17dHJ1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICB7Zm9ybWlrLmVycm9ycy5wdW1wX2JhdHRlcnlfbGV2ZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2hpbnQgaGludC0tdXBwZXInfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Zm9ybWlrLmVycm9ycy5wdW1wX2JhdHRlcnlfbGV2ZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L0lucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgPC9Gb3JtUm93U3R5bGU+XG4gICAgICAgICAgICAgICAgICA8L1N0YXJ0PlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPEVuZCBwYWdlVHlwZT17cGFnZVR5cGV9PlxuICAgICAgICAgICAgICAgICAge3BhZ2VUeXBlID09PSAnY29sbGVjdCcgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8SW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgIDxNb2JpbGVJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNJbnZhbGlkPXshIWZvcm1pay5lcnJvcnMua2FuZG9fcmVwfVxuICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlQ2hhbmdlPXtmb3JtaWsuaGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRUaXRsZT17aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnc2FtcGxpbmdzX3BhZ2Uuc2FtcGxpbmdzX3Byb3BlcnRpZXMucmVwb3J0ZXInLFxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJrYW5kb19yZXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NhbXBsaW5nc19wYWdlLnNhbXBsaW5nc19wcm9wZXJ0aWVzLnBsYWNlaG9sZGVyX3JlcG9ydGVyJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWlrLnZhbHVlcy5rYW5kb19yZXB9XG4gICAgICAgICAgICAgICAgICAgICAgICBtYW5kYXRvcnk9e3RydWV9XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICB7Zm9ybWlrLmVycm9ycy5rYW5kb19yZXAgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoaW50J30+e2Zvcm1pay5lcnJvcnMua2FuZG9fcmVwfTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDwvSW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgICAgICAge3BhZ2VUeXBlID09PSAnY2FuY2VsJyAmJiAoXG4gICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e1N0eWxlLmNhbmNlbGxpbmdUaXRsZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aTE4bi50KCdzYW1wbGluZ3NfcGFnZS5jYW5jZWxsaW5nX3RpdGxlJyl9OlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgIDxDYW5jZWxsaW5nUmVhc29ucyBmb3JtaWs9e2Zvcm1pa30gLz5cbiAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICApfVxuXG4gICAgICAgICAgICAgICAgICA8SW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICA8RGVzY3JpcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgPE1vYmlsZUlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVDaGFuZ2U9e2Zvcm1pay5oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFRpdGxlPXtpMThuLnQoJ3dhdGVyX21ldGVyLmRlc2NyaXB0aW9uJyl9XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRhcmVhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICdzYW1wbGluZ3NfcGFnZS5zYW1wbGluZ3NfcHJvcGVydGllcy5nZW5lcmFsX2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWlrLnZhbHVlcy5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlzSW52YWxpZD17ISFmb3JtaWsuZXJyb3JzLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgbWFuZGF0b3J5PXtmYWxzZX1cbiAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L0Rlc2NyaXB0aW9uPlxuICAgICAgICAgICAgICAgICAgPC9JbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgPC9FbmQ+XG4gICAgICAgICAgICAgIDwvRmllbGRzQ29udGFpbmVyPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0eXBlPXsnaGlkZGVuJ31cbiAgICAgICAgICAgICAgICBuYW1lPXsnY29sbGVjdGlvbl90aW1lJ31cbiAgICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWlrLnZhbHVlcy5jb2xsZWN0aW9uX3RpbWV9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHR5cGU9eydoaWRkZW4nfVxuICAgICAgICAgICAgICAgIG5hbWU9eydzYW1wbGluZ19wbGFuX2lkJ31cbiAgICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWlrLnZhbHVlcy5zYW1wbGluZ19wbGFuX2lkfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8Qm90dG9tRm9ybVN0eWxlIC8+XG4gICAgICAgICAgICAgIDxJbWFnZVVwbG9hZFxuICAgICAgICAgICAgICAgIHNldFBob3Rvcz17c2V0UGhvdG9zfVxuICAgICAgICAgICAgICAgIHBob3Rvcz17cGhvdG9zfVxuICAgICAgICAgICAgICAgIHNhbXBsaW5nPXtzYW1wbGluZ1Byb3BlcnRpZXN9XG4gICAgICAgICAgICAgICAgc2V0UGhvdG9zVG9EZWxldGU9e3NldFBob3Rvc1RvRGVsZXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8QnV0dG9uc1Jvdz5cbiAgICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMTUwcHhcIlxuICAgICAgICAgICAgICAgICAgdmFyaWFudD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgcm91bmRlZD17dHJ1ZX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7aTE4bi50KCdjbG9zZScpfVxuICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgIHJvdW5kZWQ9e3RydWV9XG4gICAgICAgICAgICAgICAgICBvdXRsaW5lPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2ZhbHNlfVxuICAgICAgICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgICAgICAgICAgICB3aWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7c2F2aW5nTXNnfVxuICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgICA8L0J1dHRvbnNSb3c+XG4gICAgICAgICAgICA8L0Zvcm1Db250YWluZXJTdHlsZT5cbiAgICAgICAgICA8L2Zvcm0+XG4gICAgICAgICl9XG4gICAgICA8L0Zvcm1paz5cbiAgICA8L0Zvcm1TdHlsZT5cbiAgKTtcbn07XG5cbmNvbnN0IElucHV0V3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLmhpbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0xNnB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBjb2xvcjogJHt0aGVtZS5jb2xvclNjaGVtZS5kYXRhLlIxMDB9O1xuXG4gICAgJi0tdXBwZXIge1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgRmllbGRzQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246ICR7aXNNb2JpbGUgPyAnY29sdW1uOycgOiAncm93Oyd9XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFN0YXJ0ID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6ICR7aXNNb2JpbGUgPyAndW5zZXQ7JyA6ICc1MCU7J31cbiAgcGFkZGluZy1pbmxpbmUtZW5kOiAke2lzTW9iaWxlID8gJ3Vuc2V0OycgOiAnMTBweDsnfVxuICBwYWRkaW5nLXRvcDogJHtpc01vYmlsZSA/ICd1bnNldDsnIDogJzEwcHg7J31cbiAgXG5gO1xuaW50ZXJmYWNlIEVuZFByb3BzIHtcbiAgcGFnZVR5cGU6IHN0cmluZztcbn1cbmNvbnN0IEVuZCA9IHN0eWxlZC5kaXYuYXR0cnMoKHByb3BzOiBFbmRQcm9wcykgPT4gKHtcbiAgaXNQcm9wZXJ0aWVzUGFnZTogcHJvcHMucGFnZVR5cGUgPT09ICdjb2xsZWN0Jyxcbn0pKWBcbiAgd2lkdGg6ICR7KHByb3BzKSA9PlxuICAgIGlzTW9iaWxlID8gJ3Vuc2V0JyA6IHByb3BzLmlzUHJvcGVydGllc1BhZ2UgPyAnNTAlJyA6ICcxMDAlJ307XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAke2lzTW9iaWxlID8gJ3Vuc2V0OycgOiAnMTBweDsnfVxuICBwYWRkaW5nLXRvcDogJHtpc01vYmlsZSA/ICd1bnNldDsnIDogJzEwcHg7J31cbmA7XG5cbmNvbnN0IERlc2NyaXB0aW9uID0gc3R5bGVkLmRpdmBcbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIGhlaWdodDogbWF4LWNvbnRlbnQ7XG4gICAgdGV4dGFyZWEge1xuICAgICAgdHJhbnNpdGlvbjogY3ViaWMtYmV6aWVyKDAuNjUsIDAuMDUsIDAuMzYsIDEpIDAuMnM7XG4gICAgICBoZWlnaHQ6ICR7aXNNb2JpbGUgPyAnMjVweCcgOiAnMTA1cHggIWltcG9ydGFudCd9O1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgdHJhbnNpdGlvbjogY3ViaWMtYmV6aWVyKDAuNjUsIDAuMDUsIDAuMzYsIDEpIDAuMnM7XG4gICAgICAgIGhlaWdodDogJHtpc01vYmlsZSA/ICc3NXB4ICFpbXBvcnRhbnQnIDogJzEwNXB4ICFpbXBvcnRhbnQnfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBkaXYge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IEZvcm1TdHlsZSA9IHN0eWxlZC5kaXZgXG4gIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjZjlmYWZjO1xuYDtcblxuY29uc3QgRm9ybVJvd1N0eWxlID0gc3R5bGVkKFJvdylgXG4gIG1hcmdpbjogMDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBkaXYge1xuICAgIHdpZHRoOiAke2lzTW9iaWxlID8gJzQ1JTsnIDogJzEwMCU7J307XG5cbiAgICBkaXYge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBCdXR0b25zUm93ID0gc3R5bGVkKFJvdylgXG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGp1c3RpZnktY29udGVudDogJHtpc01vYmlsZSA/ICdzcGFjZS1iZXR3ZWVuJyA6ICdmbGV4LWVuZCd9O1xuICBtYXJnaW46ICR7aXNNb2JpbGUgPyAwIDogJzlweCAwJ307XG4gIGJhY2tncm91bmQtY29sb3I6ICR7aXNNb2JpbGVcbiAgICA/ICh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjEwXG4gICAgOiAnJ307XG5cbiAgZGl2IHtcbiAgICAke2lzTW9iaWxlID8gJycgOiAnbWFyZ2luOiAwIDZweCd9XG4gIH1cbmA7XG5cbmNvbnN0IEZvcm1Db250YWluZXJTdHlsZSA9IHN0eWxlZChDb250YWluZXIpYFxuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5gO1xuXG5jb25zdCBCb3R0b21Gb3JtU3R5bGUgPSBzdHlsZWQuZGl2YFxuICBib3JkZXItYm90dG9tOiA2cHggc29saWQgI2Y5ZmFmYztcbmA7XG4iXX0=
|
|
@@ -7,7 +7,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
|
-
exports.autoReasonsKeys = exports.manualReasonsKeys = exports.
|
|
10
|
+
exports.autoReasonsKeys = exports.manualReasonsKeys = exports.cancellingValidationSchema = exports.propertiesValidationSchema = exports.samplingProperty = void 0;
|
|
11
11
|
|
|
12
12
|
var Yup = _interopRequireWildcard(require("yup"));
|
|
13
13
|
|
|
@@ -19,11 +19,10 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
19
19
|
|
|
20
20
|
var samplingProperty = {
|
|
21
21
|
lab_id: '',
|
|
22
|
-
pump_battery_level:
|
|
22
|
+
pump_battery_level: 0,
|
|
23
23
|
description: '',
|
|
24
|
-
pump_sampling_volume:
|
|
25
|
-
kando_rep: ''
|
|
26
|
-
cancellation_reason: ''
|
|
24
|
+
pump_sampling_volume: 0,
|
|
25
|
+
kando_rep: ''
|
|
27
26
|
};
|
|
28
27
|
exports.samplingProperty = samplingProperty;
|
|
29
28
|
var propertiesValidationSchema = Yup.object({
|
|
@@ -33,12 +32,13 @@ var propertiesValidationSchema = Yup.object({
|
|
|
33
32
|
lab_id: Yup.number().positive().integer(_i18n.default.t('samplings_page.samplings_properties.validation_messages.lab_id')).required(_i18n.default.t('samplings_page.samplings_properties.validation_messages.lab_id')).nullable()
|
|
34
33
|
});
|
|
35
34
|
exports.propertiesValidationSchema = propertiesValidationSchema;
|
|
36
|
-
var
|
|
35
|
+
var cancellingValidationSchema = Yup.object({
|
|
36
|
+
description: Yup.string(),
|
|
37
37
|
cancellation_reason: Yup.string().required()
|
|
38
38
|
});
|
|
39
|
-
exports.
|
|
39
|
+
exports.cancellingValidationSchema = cancellingValidationSchema;
|
|
40
40
|
var manualReasonsKeys = ['point_doesnt_open', 'no_flow', 'blocking', 'no_approach', 'group_dont_authorized', 'other'];
|
|
41
41
|
exports.manualReasonsKeys = manualReasonsKeys;
|
|
42
42
|
var autoReasonsKeys = ['pumped_by_mistake', 'mulfunctioned_sampler', 'was_not_picked_on_time', 'other'];
|
|
43
43
|
exports.autoReasonsKeys = autoReasonsKeys;
|
|
44
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9zYW1wbGluZ1Byb3BlcnRpZXNVdGlscy50c3giXSwibmFtZXMiOlsic2FtcGxpbmdQcm9wZXJ0eSIsImxhYl9pZCIsInB1bXBfYmF0dGVyeV9sZXZlbCIsImRlc2NyaXB0aW9uIiwicHVtcF9zYW1wbGluZ192b2x1bWUiLCJrYW5kb19yZXAiLCJwcm9wZXJ0aWVzVmFsaWRhdGlvblNjaGVtYSIsIll1cCIsIm9iamVjdCIsIm51bWJlciIsImludGVnZXIiLCJpMThuIiwidCIsInJlcXVpcmVkIiwibnVsbGFibGUiLCJzdHJpbmciLCJtYXgiLCJwb3NpdGl2ZSIsImNhbmNlbGxpbmdWYWxpZGF0aW9uU2NoZW1hIiwiY2FuY2VsbGF0aW9uX3JlYXNvbiIsIm1hbnVhbFJlYXNvbnNLZXlzIiwiYXV0b1JlYXNvbnNLZXlzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOzs7Ozs7QUFVTyxJQUFNQSxnQkFBa0MsR0FBRztBQUNoREMsRUFBQUEsTUFBTSxFQUFFLEVBRHdDO0FBRWhEQyxFQUFBQSxrQkFBa0IsRUFBRSxDQUY0QjtBQUdoREMsRUFBQUEsV0FBVyxFQUFFLEVBSG1DO0FBSWhEQyxFQUFBQSxvQkFBb0IsRUFBRSxDQUowQjtBQUtoREMsRUFBQUEsU0FBUyxFQUFFO0FBTHFDLENBQTNDOztBQWFBLElBQU1DLDBCQUEwQixHQUFHQyxHQUFHLENBQUNDLE1BQUosQ0FBVztBQUNuREosRUFBQUEsb0JBQW9CLEVBQUVHLEdBQUcsQ0FBQ0UsTUFBSixHQUNuQkMsT0FEbUIsQ0FFbEJDLGNBQUtDLENBQUwsQ0FDRSw4RUFERixDQUZrQixFQU1uQkMsUUFObUIsQ0FPbEJGLGNBQUtDLENBQUwsQ0FDRSw4RUFERixDQVBrQixFQVduQkUsUUFYbUIsRUFENkI7QUFhbkRaLEVBQUFBLGtCQUFrQixFQUFFSyxHQUFHLENBQUNFLE1BQUosR0FDakJDLE9BRGlCLENBRWhCQyxjQUFLQyxDQUFMLENBQ0UsNEVBREYsQ0FGZ0IsRUFNakJDLFFBTmlCLENBT2hCRixjQUFLQyxDQUFMLENBQ0UsNEVBREYsQ0FQZ0IsRUFXakJFLFFBWGlCLEVBYitCO0FBeUJuRFQsRUFBQUEsU0FBUyxFQUFFRSxHQUFHLENBQUNRLE1BQUosR0FDUkYsUUFEUSxDQUVQRixjQUFLQyxDQUFMLENBQ0UsbUVBREYsQ0FGTyxFQU1SSSxHQU5RLENBTUosRUFOSSxFQU9SRixRQVBRLEVBekJ3QztBQWlDbkRiLEVBQUFBLE1BQU0sRUFBRU0sR0FBRyxDQUFDRSxNQUFKLEdBQ0xRLFFBREssR0FFTFAsT0FGSyxDQUdKQyxjQUFLQyxDQUFMLENBQU8sZ0VBQVAsQ0FISSxFQUtMQyxRQUxLLENBTUpGLGNBQUtDLENBQUwsQ0FBTyxnRUFBUCxDQU5JLEVBUUxFLFFBUks7QUFqQzJDLENBQVgsQ0FBbkM7O0FBNENBLElBQU1JLDBCQUEwQixHQUFHWCxHQUFHLENBQUNDLE1BQUosQ0FBVztBQUNuREwsRUFBQUEsV0FBVyxFQUFFSSxHQUFHLENBQUNRLE1BQUosRUFEc0M7QUFFbkRJLEVBQUFBLG1CQUFtQixFQUFFWixHQUFHLENBQUNRLE1BQUosR0FBYUYsUUFBYjtBQUY4QixDQUFYLENBQW5DOztBQUtBLElBQU1PLGlCQUFpQixHQUFHLENBQy9CLG1CQUQrQixFQUUvQixTQUYrQixFQUcvQixVQUgrQixFQUkvQixhQUorQixFQUsvQix1QkFMK0IsRUFNL0IsT0FOK0IsQ0FBMUI7O0FBU0EsSUFBTUMsZUFBZSxHQUFHLENBQzdCLG1CQUQ2QixFQUU3Qix1QkFGNkIsRUFHN0Isd0JBSDZCLEVBSTdCLE9BSjZCLENBQXhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgWXVwIGZyb20gJ3l1cCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNhbXBsaW5nUHJvcGVydHkge1xuICBsYWJfaWQ6IHN0cmluZztcbiAgcHVtcF9zYW1wbGluZ192b2x1bWU6IHN0cmluZyB8IG51bWJlcjtcbiAgcHVtcF9iYXR0ZXJ5X2xldmVsOiBzdHJpbmcgfCBudW1iZXI7XG4gIGthbmRvX3JlcDogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3Qgc2FtcGxpbmdQcm9wZXJ0eTogU2FtcGxpbmdQcm9wZXJ0eSA9IHtcbiAgbGFiX2lkOiAnJyxcbiAgcHVtcF9iYXR0ZXJ5X2xldmVsOiAwLFxuICBkZXNjcmlwdGlvbjogJycsXG4gIHB1bXBfc2FtcGxpbmdfdm9sdW1lOiAwLFxuICBrYW5kb19yZXA6ICcnLFxufTtcblxuZXhwb3J0IHR5cGUgQWxlcnREZXRhaWxzID0ge1xuICBvcGVuOiBib29sZWFuO1xuICBpbnN0YW5jZTogYW55O1xufTtcblxuZXhwb3J0IGNvbnN0IHByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hID0gWXVwLm9iamVjdCh7XG4gIHB1bXBfc2FtcGxpbmdfdm9sdW1lOiBZdXAubnVtYmVyKClcbiAgICAuaW50ZWdlcihcbiAgICAgIGkxOG4udChcbiAgICAgICAgJ3NhbXBsaW5nc19wYWdlLnNhbXBsaW5nc19wcm9wZXJ0aWVzLnZhbGlkYXRpb25fbWVzc2FnZXMucHVtcF9zYW1wbGluZ192b2x1bWUnLFxuICAgICAgKSxcbiAgICApXG4gICAgLnJlcXVpcmVkKFxuICAgICAgaTE4bi50KFxuICAgICAgICAnc2FtcGxpbmdzX3BhZ2Uuc2FtcGxpbmdzX3Byb3BlcnRpZXMudmFsaWRhdGlvbl9tZXNzYWdlcy5wdW1wX3NhbXBsaW5nX3ZvbHVtZScsXG4gICAgICApLFxuICAgIClcbiAgICAubnVsbGFibGUoKSxcbiAgcHVtcF9iYXR0ZXJ5X2xldmVsOiBZdXAubnVtYmVyKClcbiAgICAuaW50ZWdlcihcbiAgICAgIGkxOG4udChcbiAgICAgICAgJ3NhbXBsaW5nc19wYWdlLnNhbXBsaW5nc19wcm9wZXJ0aWVzLnZhbGlkYXRpb25fbWVzc2FnZXMucHVtcF9iYXR0ZXJ5X2xldmVsJyxcbiAgICAgICksXG4gICAgKVxuICAgIC5yZXF1aXJlZChcbiAgICAgIGkxOG4udChcbiAgICAgICAgJ3NhbXBsaW5nc19wYWdlLnNhbXBsaW5nc19wcm9wZXJ0aWVzLnZhbGlkYXRpb25fbWVzc2FnZXMucHVtcF9iYXR0ZXJ5X2xldmVsJyxcbiAgICAgICksXG4gICAgKVxuICAgIC5udWxsYWJsZSgpLFxuICBrYW5kb19yZXA6IFl1cC5zdHJpbmcoKVxuICAgIC5yZXF1aXJlZChcbiAgICAgIGkxOG4udChcbiAgICAgICAgJ3NhbXBsaW5nc19wYWdlLnNhbXBsaW5nc19wcm9wZXJ0aWVzLnZhbGlkYXRpb25fbWVzc2FnZXMua2FuZG9fcmVwJyxcbiAgICAgICksXG4gICAgKVxuICAgIC5tYXgoMzApXG4gICAgLm51bGxhYmxlKCksXG4gIGxhYl9pZDogWXVwLm51bWJlcigpXG4gICAgLnBvc2l0aXZlKClcbiAgICAuaW50ZWdlcihcbiAgICAgIGkxOG4udCgnc2FtcGxpbmdzX3BhZ2Uuc2FtcGxpbmdzX3Byb3BlcnRpZXMudmFsaWRhdGlvbl9tZXNzYWdlcy5sYWJfaWQnKSxcbiAgICApXG4gICAgLnJlcXVpcmVkKFxuICAgICAgaTE4bi50KCdzYW1wbGluZ3NfcGFnZS5zYW1wbGluZ3NfcHJvcGVydGllcy52YWxpZGF0aW9uX21lc3NhZ2VzLmxhYl9pZCcpLFxuICAgIClcbiAgICAubnVsbGFibGUoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgY2FuY2VsbGluZ1ZhbGlkYXRpb25TY2hlbWEgPSBZdXAub2JqZWN0KHtcbiAgZGVzY3JpcHRpb246IFl1cC5zdHJpbmcoKSxcbiAgY2FuY2VsbGF0aW9uX3JlYXNvbjogWXVwLnN0cmluZygpLnJlcXVpcmVkKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IG1hbnVhbFJlYXNvbnNLZXlzID0gW1xuICAncG9pbnRfZG9lc250X29wZW4nLFxuICAnbm9fZmxvdycsXG4gICdibG9ja2luZycsXG4gICdub19hcHByb2FjaCcsXG4gICdncm91cF9kb250X2F1dGhvcml6ZWQnLFxuICAnb3RoZXInLFxuXTtcblxuZXhwb3J0IGNvbnN0IGF1dG9SZWFzb25zS2V5cyA9IFtcbiAgJ3B1bXBlZF9ieV9taXN0YWtlJyxcbiAgJ211bGZ1bmN0aW9uZWRfc2FtcGxlcicsXG4gICd3YXNfbm90X3BpY2tlZF9vbl90aW1lJyxcbiAgJ290aGVyJyxcbl07XG4iXX0=
|
|
@@ -27,8 +27,6 @@ var _actionsCreator = require("store/samplings/actionsCreator");
|
|
|
27
27
|
|
|
28
28
|
var _samplingsPageUtils = require("./samplingsPageUtils");
|
|
29
29
|
|
|
30
|
-
var _i18n = _interopRequireDefault(require("../../utilities/i18n"));
|
|
31
|
-
|
|
32
30
|
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); }
|
|
33
31
|
|
|
34
32
|
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; }
|
|
@@ -36,10 +34,9 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
36
34
|
var SamplingsMobileStyle = _styledComponents.default.div.withConfig({
|
|
37
35
|
displayName: "SamplingsMobileList__SamplingsMobileStyle",
|
|
38
36
|
componentId: "sc-1mrhbs9-0"
|
|
39
|
-
})(["height:calc(100vh - 160px);overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none;&::-webkit-scrollbar{width:0;height:0;}
|
|
37
|
+
})(["height:calc(100vh - 160px);overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none;&::-webkit-scrollbar{width:0;height:0;}"]);
|
|
40
38
|
|
|
41
|
-
var SamplingsMobileList = function SamplingsMobileList(
|
|
42
|
-
var samplings = _ref.samplings;
|
|
39
|
+
var SamplingsMobileList = function SamplingsMobileList() {
|
|
43
40
|
var dispatch = (0, _reactRedux.useDispatch)();
|
|
44
41
|
|
|
45
42
|
var _useState = (0, _react.useState)([]),
|
|
@@ -51,6 +48,7 @@ var SamplingsMobileList = function SamplingsMobileList(_ref) {
|
|
|
51
48
|
return state.samplings_data;
|
|
52
49
|
}),
|
|
53
50
|
isFetch = _useSelector.isFetch,
|
|
51
|
+
samplings = _useSelector.samplings,
|
|
54
52
|
currentPage = _useSelector.currentPage,
|
|
55
53
|
totalPages = _useSelector.totalPages,
|
|
56
54
|
perPage = _useSelector.perPage;
|
|
@@ -70,9 +68,6 @@ var SamplingsMobileList = function SamplingsMobileList(_ref) {
|
|
|
70
68
|
setLocalList(function (prev) {
|
|
71
69
|
return [].concat((0, _toConsumableArray2.default)(prev), (0, _toConsumableArray2.default)(samplings));
|
|
72
70
|
});
|
|
73
|
-
return function cleanup() {
|
|
74
|
-
setLocalList([]);
|
|
75
|
-
};
|
|
76
71
|
}, [samplings]);
|
|
77
72
|
|
|
78
73
|
var handleIsView = function handleIsView() {
|
|
@@ -88,9 +83,7 @@ var SamplingsMobileList = function SamplingsMobileList(_ref) {
|
|
|
88
83
|
return /*#__PURE__*/_react.default.createElement(SamplingsMobileStyle, null, /*#__PURE__*/_react.default.createElement(_uiKit.KandoList, {
|
|
89
84
|
handleIsView: handleIsView,
|
|
90
85
|
isFetching: isFetch
|
|
91
|
-
}, localList
|
|
92
|
-
className: 'no_data'
|
|
93
|
-
}, _i18n.default.t('samplings_page.no_data'))), localList === null || localList === void 0 ? void 0 : localList.map(function (list) {
|
|
86
|
+
}, localList === null || localList === void 0 ? void 0 : localList.map(function (list) {
|
|
94
87
|
return /*#__PURE__*/_react.default.createElement(_SamplingsMobileItem.SamplingsMobileItem, {
|
|
95
88
|
key: list.sampling_id,
|
|
96
89
|
data: list
|
|
@@ -100,4 +93,4 @@ var SamplingsMobileList = function SamplingsMobileList(_ref) {
|
|
|
100
93
|
|
|
101
94
|
var _default = SamplingsMobileList;
|
|
102
95
|
exports.default = _default;
|
|
103
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
96
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nc01vYmlsZUxpc3QudHN4Il0sIm5hbWVzIjpbIlNhbXBsaW5nc01vYmlsZVN0eWxlIiwic3R5bGVkIiwiZGl2IiwiU2FtcGxpbmdzTW9iaWxlTGlzdCIsImRpc3BhdGNoIiwibG9jYWxMaXN0Iiwic2V0TG9jYWxMaXN0Iiwic3RhdGUiLCJzYW1wbGluZ3NfZGF0YSIsImlzRmV0Y2giLCJzYW1wbGluZ3MiLCJjdXJyZW50UGFnZSIsInRvdGFsUGFnZXMiLCJwZXJQYWdlIiwiTU9CSUxFX1BBR0lOQVRJT05fUEVSX1BBR0UiLCJvcmRlckJ5IiwiTU9CSUxFX0RFRkFVTFRfU09SVEZJRUxEIiwib3JkZXJEaXJlY3Rpb24iLCJwcmV2IiwiaGFuZGxlSXNWaWV3IiwibWFwIiwibGlzdCIsInNhbXBsaW5nX2lkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUVBOzs7Ozs7QUFNQSxJQUFNQSxvQkFBb0IsR0FBR0MsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEseUlBQTFCOztBQVlBLElBQU1DLG1CQUF1QixHQUFHLFNBQTFCQSxtQkFBMEIsR0FBTTtBQUNwQyxNQUFNQyxRQUFRLEdBQUcsOEJBQWpCOztBQUNBLGtCQUFrQyxxQkFBeUIsRUFBekIsQ0FBbEM7QUFBQTtBQUFBLE1BQU9DLFNBQVA7QUFBQSxNQUFrQkMsWUFBbEI7O0FBRUEscUJBQWlFLDZCQUMvRCxVQUFDQyxLQUFEO0FBQUEsV0FBMENBLEtBQUssQ0FBQ0MsY0FBaEQ7QUFBQSxHQUQrRCxDQUFqRTtBQUFBLE1BQVFDLE9BQVIsZ0JBQVFBLE9BQVI7QUFBQSxNQUFpQkMsU0FBakIsZ0JBQWlCQSxTQUFqQjtBQUFBLE1BQTRCQyxXQUE1QixnQkFBNEJBLFdBQTVCO0FBQUEsTUFBeUNDLFVBQXpDLGdCQUF5Q0EsVUFBekM7QUFBQSxNQUFxREMsT0FBckQsZ0JBQXFEQSxPQUFyRDs7QUFJQSx3QkFBVSxZQUFNO0FBQ2RULElBQUFBLFFBQVEsQ0FDTixxQ0FBZ0I7QUFDZFMsTUFBQUEsT0FBTyxFQUFFQyw4Q0FESztBQUVkQyxNQUFBQSxPQUFPLEVBQUVDLDRDQUZLO0FBR2RDLE1BQUFBLGNBQWMsRUFBRTtBQUhGLEtBQWhCLENBRE0sQ0FBUjtBQU9ELEdBUkQsRUFRRyxFQVJIO0FBVUEsd0JBQVUsWUFBTTtBQUNkLFFBQUlKLE9BQU8sR0FBR0MsOENBQWQsRUFBMEM7QUFDeEM7QUFDRDs7QUFDRFIsSUFBQUEsWUFBWSxDQUFDLFVBQUNZLElBQUQ7QUFBQSx3REFBY0EsSUFBZCxvQ0FBdUJSLFNBQXZCO0FBQUEsS0FBRCxDQUFaO0FBQ0QsR0FMRCxFQUtHLENBQUNBLFNBQUQsQ0FMSDs7QUFPQSxNQUFNUyxZQUFZLEdBQUcsU0FBZkEsWUFBZSxHQUFNO0FBQ3pCLFFBQUlSLFdBQVcsSUFBSUMsVUFBbkIsRUFBK0I7QUFDN0I7QUFDRDs7QUFDRFIsSUFBQUEsUUFBUSxDQUFDLHFDQUFnQjtBQUFFTyxNQUFBQSxXQUFXLEVBQUVBLFdBQVcsR0FBRztBQUE3QixLQUFoQixDQUFELENBQVI7QUFDRCxHQUxEOztBQU9BLHNCQUNFLDZCQUFDLG9CQUFELHFCQUNFLDZCQUFDLGdCQUFEO0FBQVcsSUFBQSxZQUFZLEVBQUVRLFlBQXpCO0FBQXVDLElBQUEsVUFBVSxFQUFFVjtBQUFuRCxLQUNHSixTQURILGFBQ0dBLFNBREgsdUJBQ0dBLFNBQVMsQ0FBRWUsR0FBWCxDQUFlLFVBQUNDLElBQUQsRUFBd0I7QUFDdEMsd0JBQU8sNkJBQUMsd0NBQUQ7QUFBcUIsTUFBQSxHQUFHLEVBQUVBLElBQUksQ0FBQ0MsV0FBL0I7QUFBNEMsTUFBQSxJQUFJLEVBQUVEO0FBQWxELE1BQVA7QUFDRCxHQUZBLENBREgsQ0FERixDQURGO0FBU0QsQ0F6Q0Q7O2VBMkNlbEIsbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgRkMsIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBTYW1wbGluZ3NNb2JpbGVJdGVtIH0gZnJvbSAnLi9TYW1wbGluZ3NNb2JpbGVJdGVtJztcbmltcG9ydCB7IEthbmRvTGlzdCB9IGZyb20gJ3NyYy91aS1raXQnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgeyBzZXRTYW1wbGluZ0RhdGEgfSBmcm9tICdzcmMvc3RvcmUvc2FtcGxpbmdzL2FjdGlvbnNDcmVhdG9yJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHtcbiAgU2FtcGxpbmdEYXRhLFxuICBNT0JJTEVfUEFHSU5BVElPTl9QRVJfUEFHRSxcbiAgTU9CSUxFX0RFRkFVTFRfU09SVEZJRUxELFxufSBmcm9tICcuL3NhbXBsaW5nc1BhZ2VVdGlscyc7XG5cbmNvbnN0IFNhbXBsaW5nc01vYmlsZVN0eWxlID0gc3R5bGVkLmRpdmBcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTYwcHgpO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTsgLyogRkYgaGlkZSBzY3JvbGxiYXIgKi9cbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOyAvKiBJRTEwKyBoaWRlIHNjcm9sbGJhciAqL1xuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgLyogV2ViS2l0IGhpZGUgc2Nyb2xsYmFyICovXG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICB9XG5gO1xuXG5jb25zdCBTYW1wbGluZ3NNb2JpbGVMaXN0OiBGQyA9ICgpID0+IHtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBbbG9jYWxMaXN0LCBzZXRMb2NhbExpc3RdID0gdXNlU3RhdGU8U2FtcGxpbmdEYXRhW10+KFtdKTtcblxuICBjb25zdCB7IGlzRmV0Y2gsIHNhbXBsaW5ncywgY3VycmVudFBhZ2UsIHRvdGFsUGFnZXMsIHBlclBhZ2UgfSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLnNhbXBsaW5nc19kYXRhLFxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZGlzcGF0Y2goXG4gICAgICBzZXRTYW1wbGluZ0RhdGEoe1xuICAgICAgICBwZXJQYWdlOiBNT0JJTEVfUEFHSU5BVElPTl9QRVJfUEFHRSxcbiAgICAgICAgb3JkZXJCeTogTU9CSUxFX0RFRkFVTFRfU09SVEZJRUxELFxuICAgICAgICBvcmRlckRpcmVjdGlvbjogJ2Rlc2MnLFxuICAgICAgfSksXG4gICAgKTtcbiAgfSwgW10pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHBlclBhZ2UgPiBNT0JJTEVfUEFHSU5BVElPTl9QRVJfUEFHRSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBzZXRMb2NhbExpc3QoKHByZXYpID0+IFsuLi5wcmV2LCAuLi5zYW1wbGluZ3NdKTtcbiAgfSwgW3NhbXBsaW5nc10pO1xuXG4gIGNvbnN0IGhhbmRsZUlzVmlldyA9ICgpID0+IHtcbiAgICBpZiAoY3VycmVudFBhZ2UgPj0gdG90YWxQYWdlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBkaXNwYXRjaChzZXRTYW1wbGluZ0RhdGEoeyBjdXJyZW50UGFnZTogY3VycmVudFBhZ2UgKyAxIH0pKTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxTYW1wbGluZ3NNb2JpbGVTdHlsZT5cbiAgICAgIDxLYW5kb0xpc3QgaGFuZGxlSXNWaWV3PXtoYW5kbGVJc1ZpZXd9IGlzRmV0Y2hpbmc9e2lzRmV0Y2h9PlxuICAgICAgICB7bG9jYWxMaXN0Py5tYXAoKGxpc3Q6IFNhbXBsaW5nRGF0YSkgPT4ge1xuICAgICAgICAgIHJldHVybiA8U2FtcGxpbmdzTW9iaWxlSXRlbSBrZXk9e2xpc3Quc2FtcGxpbmdfaWR9IGRhdGE9e2xpc3R9IC8+O1xuICAgICAgICB9KX1cbiAgICAgIDwvS2FuZG9MaXN0PlxuICAgIDwvU2FtcGxpbmdzTW9iaWxlU3R5bGU+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBTYW1wbGluZ3NNb2JpbGVMaXN0O1xuIl19
|