@kando-env/kando-ui 1.2.75-alpha.4 → 1.2.75-alpha.40

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 (61) hide show
  1. package/lib/Widgets/Map/Map.js +19 -5
  2. package/lib/Widgets/Map/areas/AreaPolygons.js +1 -6
  3. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +2 -5
  4. package/lib/Widgets/Map/points/PointMarker.js +21 -6
  5. package/lib/Widgets/Map/points/PointMarkers.js +2 -2
  6. package/lib/assets/icons/close-modal.svg +8 -0
  7. package/lib/assets/icons/index.js +8 -0
  8. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +2 -2
  9. package/lib/components/DischargeHeatmap/mocks/handlers.js +19 -0
  10. package/lib/components/Header/KandoNavbar/KandoNavbar.js +3 -1
  11. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +3 -1
  12. package/lib/components/Sector/Sector.test.js +4 -11
  13. package/lib/hooks/useApiWithDashboardQuery.js +2 -4
  14. package/lib/i18n/en.json +36 -26
  15. package/lib/i18n/en_uk.json +3760 -0
  16. package/lib/i18n/fr.json +4 -2
  17. package/lib/i18n/he.json +16 -6
  18. package/lib/i18n/it.json +4 -2
  19. package/lib/index.js +8 -1
  20. package/lib/macros/getVersion.js +2 -2
  21. package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +6 -4
  22. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +3 -3
  23. package/lib/pages/EventsPage/events/event_info/sources/Source.js +2 -2
  24. package/lib/pages/EventsPage/events/events_list/EventsList.js +8 -10
  25. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +4 -1
  26. package/lib/pages/EventsPage/events/events_list/Filter/FilterStyle.scss +1 -1
  27. package/lib/pages/ImportFileWizard/ValidationForm.js +7 -12
  28. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +5 -1
  29. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +41 -0
  30. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +39 -0
  31. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +172 -0
  32. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +74 -0
  33. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +48 -0
  34. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +99 -0
  35. package/lib/pages/SamplingsPage/NewSamplingAction.js +4 -3
  36. package/lib/pages/SamplingsPage/SamplingMobileModal.js +1 -17
  37. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +10 -3
  38. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +9 -12
  39. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +24 -17
  40. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +15 -10
  41. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +14 -4
  42. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +4 -2
  43. package/lib/pages/SamplingsPage/SamplingsPage.js +4 -2
  44. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +2 -5
  45. package/lib/pages/SamplingsPage/samplingsPageUtils.js +57 -27
  46. package/lib/pages/SamplingsPage/style.module.scss +1 -1
  47. package/lib/pages/SamplingsPage/table.styles.scss +8 -6
  48. package/lib/pages/WbeDashboard/SummaryGraph.js +15 -6
  49. package/lib/store/permissions/permissionsSlice.js +3 -1
  50. package/lib/styles.scss +7 -0
  51. package/lib/test/mocks/browser.js +23 -0
  52. package/lib/test/test-utils.js +61 -0
  53. package/lib/ui-kit/Button/Button.test.js +26 -11
  54. package/lib/ui-kit/DropDown/DropDown.js +12 -6
  55. package/lib/ui-kit/DropDown/DropDown.test.js +50 -41
  56. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +9 -2
  57. package/lib/ui-kit/KandoTable/KandoTable.test.js +46 -43
  58. package/lib/utilities/i18n.js +6 -1
  59. package/lib/utilities/urls.js +8 -5
  60. package/package.json +5 -2
  61. package/lib/pages/SamplingsPage/SamplingActionDropdown.js +0 -189
@@ -136,6 +136,9 @@ var FilterItem = function FilterItem(props) {
136
136
  case 'SamplingFilterItem':
137
137
  return _i18n.default.t("events_overview.filter.samplings_options.".concat(option));
138
138
 
139
+ case 'SamplingModeFilterItem':
140
+ return _i18n.default.t("events_overview.filter.sampling_mode.".concat(option));
141
+
139
142
  case 'LabFilterItem':
140
143
  return displayNameForObjectTypedOptions(filterItem, option, forOuterDisplay);
141
144
 
@@ -226,4 +229,4 @@ var FilterItem = function FilterItem(props) {
226
229
 
227
230
  var _default = FilterItem;
228
231
  exports.default = _default;
229
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9GaWx0ZXIvRmlsdGVySXRlbS50c3giXSwibmFtZXMiOlsiRmlsdGVySXRlbSIsInByb3BzIiwiZmlsdGVyX2l0ZW0iLCJwYXJzZVNlbGVjdGVkSXRlbXMiLCJhY3RpdmVGaWx0ZXJDb3B5Iiwic2V0QWN0aXZlRmlsdGVyQ29weSIsImF2YWlsYWJsZUZpbHRlckl0ZW1zIiwic2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAiLCJzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCIsImhhbmRsZUZpbHRlckl0ZW1DbGljayIsImZpbHRlckl0ZW0iLCJzaG93IiwiZmlsdGVySXRlbUlkIiwiaWQiLCJyZW1vdmVGaWx0ZXJJdGVtIiwidW5kZWZpbmVkIiwiaW5kZXgiLCJmaWx0ZXJfaXRlbXMiLCJpbmRleE9mIiwiZmluZCIsIml0ZW0iLCJzcGxpY2UiLCJhY3RpdmVGaWx0ZXJEdXBsaWNhdGUiLCJPYmplY3QiLCJhc3NpZ24iLCJoYW5kbGVDaGFuZ2UiLCJzZWxlY3RlZCIsImFjdGl2ZUZpbHRlciIsInNlbGVjdGVkT3B0aW9ucyIsImxlbmd0aCIsImZvckVhY2giLCJzZWxlY3Rpb24iLCJwdXNoIiwib3JpZ2luYWwiLCJzZWxlY3RlZF9vcHRpb25zIiwiaGFuZGxlU2luZ2xlU2VsZWN0aW9uIiwiY3VycmVudFRhcmdldCIsImN1c3RvbVZhbHVlIiwic2VsZWN0ZWRWYWx1ZSIsImNoaWxkcmVuIiwidmFsdWUiLCJzdHJpcERhbWFnZVR5cGUiLCJzdHJpbmciLCJ0b0xvd2VyQ2FzZSIsInJlcGxhY2UiLCJjYW1lbFRvU25ha2VDYXNlIiwic3RyIiwic2xpY2UiLCJsZXR0ZXIiLCJkaXNwbGF5TmFtZUZvck9iamVjdFR5cGVkT3B0aW9ucyIsIm9wdGlvbiIsImZvck91dGVyRGlzcGxheSIsImF2YWlsYWJsZV9vcHRpb25zIiwiZiIsIm5hbWUiLCJ0cmFuc2xhdGVGaWx0ZXJJdGVtT3B0aW9uTGFiZWwiLCJ0eXBlIiwiaTE4biIsInQiLCJ0cmFuc2xhdGVGaWx0ZXJJdGVtVHlwZSIsImZpbHRlckl0ZW1UeXBlIiwiZ2V0U2VsZWN0aW9ucyIsInNlbGVjdGlvbnMiLCJtYXAiLCJtYXRjaEZpbHRlckl0ZW0iLCJhdmFpbGFibGVGaWx0ZXJJdGVtIiwib3B0aW9ucyIsImZhVGltZXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQWtCQSxJQUFNQSxVQUE0QixHQUFHLFNBQS9CQSxVQUErQixDQUFDQyxLQUFELEVBQVc7QUFDOUMsTUFDRUMsV0FERixHQVFJRCxLQVJKLENBQ0VDLFdBREY7QUFBQSxNQUVFQyxrQkFGRixHQVFJRixLQVJKLENBRUVFLGtCQUZGO0FBQUEsTUFHRUMsZ0JBSEYsR0FRSUgsS0FSSixDQUdFRyxnQkFIRjtBQUFBLE1BSUVDLG1CQUpGLEdBUUlKLEtBUkosQ0FJRUksbUJBSkY7QUFBQSxNQUtFQyxvQkFMRixHQVFJTCxLQVJKLENBS0VLLG9CQUxGO0FBQUEsTUFNRUMsMEJBTkYsR0FRSU4sS0FSSixDQU1FTSwwQkFORjtBQUFBLE1BT0VDLDZCQVBGLEdBUUlQLEtBUkosQ0FPRU8sNkJBUEY7O0FBU0EsTUFBTUMscUJBQXFCLEdBQUcsU0FBeEJBLHFCQUF3QixDQUFDQyxVQUFELEVBQXFCO0FBQ2pELFFBQ0UsQ0FBQ0gsMEJBQTBCLENBQUNJLElBQTVCLElBQ0FKLDBCQUEwQixDQUFDSyxZQUEzQixLQUE0Q0YsVUFBVSxDQUFDRyxFQUZ6RCxFQUdFO0FBQ0FMLE1BQUFBLDZCQUE2QixDQUFDO0FBQzVCSSxRQUFBQSxZQUFZLEVBQUVGLFVBQVUsQ0FBQ0csRUFERztBQUU1QkYsUUFBQUEsSUFBSSxFQUFFO0FBRnNCLE9BQUQsQ0FBN0I7QUFJRDtBQUNGLEdBVkQ7O0FBWUEsTUFBTUcsZ0JBQWdCLEdBQUcsU0FBbkJBLGdCQUFtQixDQUFDSixVQUFELEVBQTZC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ZXMgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgRm9udEF3ZXNvbWVJY29uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3JlYWN0LWZvbnRhd2Vzb21lJztcbmltcG9ydCBSZWFjdCwgeyBGb3JtRXZlbnQsIHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IElGaWx0ZXIgfSBmcm9tICdzcmMvc3RvcmUvZmlsdGVycy9JRmlsdGVyJztcbmltcG9ydCB7IElGaWx0ZXJJdGVtIH0gZnJvbSAnc3JjL3N0b3JlL2ZpbHRlcnMvSUZpbHRlckl0ZW0nO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCAnLi4vLi4vRXZlbnRzU3R5bGUuc2Nzcyc7XG5pbXBvcnQgT3B0aW9uc0Ryb3BEb3duIGZyb20gJy4vT3B0aW9uc0Ryb3BEb3duJztcbmltcG9ydCB7IGZvcm1hdFRpbWVTZWxlY3Rpb24gfSBmcm9tICdzcmMvY29tcG9uZW50cy9UaW1lUmFuZ2VTZWxlY3Rvci9UaW1lUmFuZ2VIZWxwZXInO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgZmlsdGVyX2l0ZW06IElGaWx0ZXJJdGVtO1xuICBwYXJzZVNlbGVjdGVkSXRlbXM6IEZ1bmN0aW9uO1xuICBhY3RpdmVGaWx0ZXJDb3B5OiBhbnk7XG4gIHNldEFjdGl2ZUZpbHRlckNvcHk6IFJlYWN0LkRpc3BhdGNoPGFueT47XG4gIGF2YWlsYWJsZUZpbHRlckl0ZW1zOiBhbnk7XG4gIHNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwOiBhbnk7XG4gIHNldFNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwOiBhbnk7XG59O1xuXG50eXBlIElDdXN0b21WYWx1ZSA9IHtcbiAgY3VzdG9tVmFsdWU6IHN0cmluZztcbn07XG5cbnR5cGUgSVNlbGVjdGlvbkV2ZW50ID0gSUN1c3RvbVZhbHVlIHwgRm9ybUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG5jb25zdCBGaWx0ZXJJdGVtOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBmaWx0ZXJfaXRlbSxcbiAgICBwYXJzZVNlbGVjdGVkSXRlbXMsXG4gICAgYWN0aXZlRmlsdGVyQ29weSxcbiAgICBzZXRBY3RpdmVGaWx0ZXJDb3B5LFxuICAgIGF2YWlsYWJsZUZpbHRlckl0ZW1zLFxuICAgIHNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwLFxuICAgIHNldFNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwLFxuICB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZUZpbHRlckl0ZW1DbGljayA9IChmaWx0ZXJJdGVtOiBhbnkpID0+IHtcbiAgICBpZiAoXG4gICAgICAhc2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAuc2hvdyAmJlxuICAgICAgc2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAuZmlsdGVySXRlbUlkICE9PSBmaWx0ZXJJdGVtLmlkXG4gICAgKSB7XG4gICAgICBzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCh7XG4gICAgICAgIGZpbHRlckl0ZW1JZDogZmlsdGVySXRlbS5pZCxcbiAgICAgICAgc2hvdzogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCByZW1vdmVGaWx0ZXJJdGVtID0gKGZpbHRlckl0ZW06IElGaWx0ZXJJdGVtKSA9PiB7XG4gICAgaWYgKGFjdGl2ZUZpbHRlckNvcHkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgbGV0IGluZGV4ID0gYWN0aXZlRmlsdGVyQ29weS5maWx0ZXJfaXRlbXMuaW5kZXhPZihcbiAgICAgICAgYWN0aXZlRmlsdGVyQ29weS5maWx0ZXJfaXRlbXMuZmluZChcbiAgICAgICAgICAoaXRlbTogSUZpbHRlckl0ZW0pID0+IGl0ZW0uaWQgPT09IGZpbHRlckl0ZW0uaWQsXG4gICAgICAgICksXG4gICAgICApO1xuICAgICAgYWN0aXZlRmlsdGVyQ29weS5maWx0ZXJfaXRlbXMuc3BsaWNlKGluZGV4LCAxKTtcblxuICAgICAgbGV0IGFjdGl2ZUZpbHRlckR1cGxpY2F0ZSA9IE9iamVjdC5hc3NpZ24oe30sIGFjdGl2ZUZpbHRlckNvcHkpO1xuICAgICAgc2V0QWN0aXZlRmlsdGVyQ29weShhY3RpdmVGaWx0ZXJEdXBsaWNhdGUpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAoXG4gICAgc2VsZWN0ZWQ6IGFueSxcbiAgICBmaWx0ZXJJdGVtOiBJRmlsdGVySXRlbSxcbiAgICBhY3RpdmVGaWx0ZXI6IElGaWx0ZXIsXG4gICkgPT4ge1xuICAgIGxldCBzZWxlY3RlZE9wdGlvbnM6IGFueVtdID0gW107XG5cbiAgICBpZiAoc2VsZWN0ZWQubGVuZ3RoICE9PSAwKSB7XG4gICAgICBzZWxlY3RlZC5mb3JFYWNoKChzZWxlY3Rpb246IGFueSkgPT4ge1xuICAgICAgICBzZWxlY3RlZE9wdGlvbnMucHVzaChzZWxlY3Rpb24ub3JpZ2luYWwpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgZmlsdGVySXRlbS5zZWxlY3RlZF9vcHRpb25zID0gc2VsZWN0ZWRPcHRpb25zO1xuICAgIGxldCBhY3RpdmVGaWx0ZXJDb3B5ID0gT2JqZWN0LmFzc2lnbih7fSwgYWN0aXZlRmlsdGVyKTtcbiAgICBzZXRBY3RpdmVGaWx0ZXJDb3B5KGFjdGl2ZUZpbHRlckNvcHkpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVNpbmdsZVNlbGVjdGlvbiA9IChcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgeyBjdXJyZW50VGFyZ2V0ID0gJycsIGN1c3RvbVZhbHVlID0gJycgfTogSVNlbGVjdGlvbkV2ZW50LFxuICAgIGZpbHRlckl0ZW06IElGaWx0ZXJJdGVtLFxuICAgIGFjdGl2ZUZpbHRlcjogSUZpbHRlcixcbiAgKSA9PiB7XG4gICAgbGV0IHNlbGVjdGVkT3B0aW9uczogYW55W10gPSBbXTtcbiAgICBjb25zdCBzZWxlY3RlZFZhbHVlID0gY3VzdG9tVmFsdWUgfHwgY3VycmVudFRhcmdldC5jaGlsZHJlblswXS52YWx1ZTtcbiAgICBzZWxlY3RlZE9wdGlvbnMucHVzaChzZWxlY3RlZFZhbHVlKTtcbiAgICBmaWx0ZXJJdGVtLnNlbGVjdGVkX29wdGlvbnMgPSBzZWxlY3RlZE9wdGlvbnM7XG5cbiAgICBsZXQgYWN0aXZlRmlsdGVyQ29weSA9IE9iamVjdC5hc3NpZ24oe30sIGFjdGl2ZUZpbHRlcik7XG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weShhY3RpdmVGaWx0ZXJDb3B5KTtcbiAgfTtcblxuICBjb25zdCBzdHJpcERhbWFnZVR5cGUgPSAoc3RyaW5nOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gc3RyaW5nLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvWycgJy8mXS9nLCAnLScpO1xuICB9O1xuXG4gIGNvbnN0IGNhbWVsVG9TbmFrZUNhc2UgPSAoc3RyOiBzdHJpbmcpID0+XG4gICAgc3RyWzBdLnRvTG93ZXJDYXNlKCkgK1xuICAgIHN0clxuICAgICAgLnNsaWNlKDEsIHN0ci5sZW5ndGgpXG4gICAgICAucmVwbGFjZSgvW0EtWl0vZywgKGxldHRlcikgPT4gYF8ke2xldHRlci50b0xvd2VyQ2FzZSgpfWApO1xuICBjb25zdCBkaXNwbGF5TmFtZUZvck9iamVjdFR5cGVkT3B0aW9ucyA9IChcbiAgICBmaWx0ZXJJdGVtOiBJRmlsdGVySXRlbSxcbiAgICBvcHRpb246IGFueSxcbiAgICBmb3JPdXRlckRpc3BsYXk6IGJvb2xlYW4sXG4gICkgPT4ge1xuICAgIGxldCBpdGVtO1xuICAgIGlmIChmb3JPdXRlckRpc3BsYXkgJiYgZmlsdGVySXRlbS5hdmFpbGFibGVfb3B0aW9ucyAhPT0gbnVsbCkge1xuICAgICAgaXRlbSA9IGZpbHRlckl0ZW0uYXZhaWxhYmxlX29wdGlvbnMuZmluZCgoZikgPT4gZi5pZCA9PT0gb3B0aW9uKTtcbiAgICAgIGl0ZW0gIT09IHVuZGVmaW5lZCAmJiAoaXRlbSA9IGl0ZW0ubmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZW0gPSBvcHRpb247XG4gICAgfVxuXG4gICAgcmV0dXJuIGl0ZW07XG4gIH07XG4gIGNvbnN0IHRyYW5zbGF0ZUZpbHRlckl0ZW1PcHRpb25MYWJlbCA9IChcbiAgICBmaWx0ZXJJdGVtOiBJRmlsdGVySXRlbSxcbiAgICBvcHRpb246IHN0cmluZyxcbiAgICBmb3JPdXRlckRpc3BsYXkgPSBmYWxzZSxcbiAgKSA9PiB7XG4gICAgc3dpdGNoIChmaWx0ZXJJdGVtLnR5cGUpIHtcbiAgICAgIGNhc2UgJ0ludGVyZXN0UG9pbnRGaWx0ZXJJdGVtJzpcbiAgICAgICAgcmV0dXJuIGRpc3BsYXlOYW1lRm9yT2JqZWN0VHlwZWRPcHRpb25zKFxuICAgICAgICAgIGZpbHRlckl0ZW0sXG4gICAgICAgICAgb3B0aW9uLFxuICAgICAgICAgIGZvck91dGVyRGlzcGxheSxcbiAgICAgICAgKTtcbiAgICAgIGNhc2UgJ0FyZWFGaWx0ZXJJdGVtJzpcbiAgICAgICAgcmV0dXJuIGRpc3BsYXlOYW1lRm9yT2JqZWN0VHlwZWRPcHRpb25zKFxuICAgICAgICAgIGZpbHRlckl0ZW0sXG4gICAgICAgICAgb3B0aW9uLFxuICAgICAgICAgIGZvck91dGVyRGlzcGxheSxcbiAgICAgICAgKTtcbiAgICAgIGNhc2UgJ1NlY3RvckZpbHRlckl0ZW0nOlxuICAgICAgICByZXR1cm4gZGlzcGxheU5hbWVGb3JPYmplY3RUeXBlZE9wdGlvbnMoXG4gICAgICAgICAgZmlsdGVySXRlbSxcbiAgICAgICAgICBvcHRpb24sXG4gICAgICAgICAgZm9yT3V0ZXJEaXNwbGF5LFxuICAgICAgICApO1xuICAgICAgY2FzZSAnU2V2ZXJpdHlGaWx0ZXJJdGVtJzpcbiAgICAgICAgcmV0dXJuIGkxOG4udChgZXZlbnRzX292ZXJ2aWV3LnNldmVyaXRpZXMuJHtvcHRpb259YCk7XG4gICAgICBjYXNlICdEYW1hZ2VUeXBlRmlsdGVySXRlbSc6XG4gICAgICAgIHJldHVybiBpMThuLnQoXG4gICAgICAgICAgYGV2ZW50c19vdmVydmlldy5kYW1hZ2VfdHlwZXMuJHtzdHJpcERhbWFnZVR5cGUob3B0aW9uKX1gLFxuICAgICAgICApO1xuICAgICAgY2FzZSAnVGltZUZpbHRlckl0ZW0nOlxuICAgICAgICByZXR1cm4gZm9ybWF0VGltZVNlbGVjdGlvbihvcHRpb24pO1xuICAgICAgY2FzZSAnU3RhdHVzRmlsdGVySXRlbSc6XG4gICAgICAgIHJldHVybiBpMThuLnQoYGV2ZW50c19vdmVydmlldy5maWx0ZXIuc3RhdHVzLiR7b3B0aW9ufWApO1xuICAgICAgY2FzZSAnU2FtcGxpbmdGaWx0ZXJJdGVtJzpcbiAgICAgICAgcmV0dXJuIGkxOG4udChgZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5zYW1wbGluZ3Nfb3B0aW9ucy4ke29wdGlvbn1gKTtcbiAgICAgIGNhc2UgJ0xhYkZpbHRlckl0ZW0nOlxuICAgICAgICByZXR1cm4gZGlzcGxheU5hbWVGb3JPYmplY3RUeXBlZE9wdGlvbnMoXG4gICAgICAgICAgZmlsdGVySXRlbSxcbiAgICAgICAgICBvcHRpb24sXG4gICAgICAgICAgZm9yT3V0ZXJEaXNwbGF5LFxuICAgICAgICApO1xuICAgICAgY2FzZSAnU2FtcGxpbmdTdGF0dXNGaWx0ZXJJdGVtJzpcbiAgICAgICAgcmV0dXJuIGkxOG4udChgZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5zYW1wbGluZ3Nfc3RhdHVzLiR7b3B0aW9ufWApO1xuICAgICAgY2FzZSAnU2FtcGxpbmdJZEZpbHRlckl0ZW0nOlxuICAgICAgICByZXR1cm4gZGlzcGxheU5hbWVGb3JPYmplY3RUeXBlZE9wdGlvbnMoXG4gICAgICAgICAgZmlsdGVySXRlbSxcbiAgICAgICAgICBvcHRpb24sXG4gICAgICAgICAgZm9yT3V0ZXJEaXNwbGF5LFxuICAgICAgICApO1xuICAgICAgY2FzZSAnU2l0ZUZpbHRlckl0ZW0nOlxuICAgICAgICByZXR1cm4gZGlzcGxheU5hbWVGb3JPYmplY3RUeXBlZE9wdGlvbnMoXG4gICAgICAgICAgZmlsdGVySXRlbSxcbiAgICAgICAgICBvcHRpb24sXG4gICAgICAgICAgZm9yT3V0ZXJEaXNwbGF5LFxuICAgICAgICApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCB0cmFuc2xhdGVGaWx0ZXJJdGVtVHlwZSA9IChmaWx0ZXJJdGVtVHlwZTogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIGkxOG4udChcbiAgICAgIGBldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmZpbHRlcl90eXBlcy4ke2NhbWVsVG9TbmFrZUNhc2UoZmlsdGVySXRlbVR5cGUpfWAsXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBnZXRTZWxlY3Rpb25zID0gKHNlbGVjdGVkX29wdGlvbnM6IGFueSkgPT4ge1xuICAgIGxldCBzZWxlY3Rpb25zOiBhbnlbXSA9IFtdO1xuICAgIGlmIChzZWxlY3RlZF9vcHRpb25zLmxlbmd0aCA+IDEpIHtcbiAgICAgIHBhcnNlU2VsZWN0ZWRJdGVtcyhmaWx0ZXJfaXRlbSlcbiAgICAgICAgLnNsaWNlKDAsIDEpXG4gICAgICAgIC5tYXAoKHNlbGVjdGlvbjogc3RyaW5nKSA9PlxuICAgICAgICAgIHNlbGVjdGlvbnMucHVzaChcbiAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICBjbGFzc05hbWU9eydmaWx0ZXJfaXRlbV9fY29udGVudF9fc2VsZWN0aW9uc19fc2VsZWN0aW9uJ31cbiAgICAgICAgICAgICAga2V5PXtzZWxlY3Rpb259XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHt0cmFuc2xhdGVGaWx0ZXJJdGVtT3B0aW9uTGFiZWwoZmlsdGVyX2l0ZW0sIHNlbGVjdGlvbiwgdHJ1ZSl9XG4gICAgICAgICAgICA8L2xpPixcbiAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgc2VsZWN0aW9ucy5wdXNoKFxuICAgICAgICA8c3BhbiBrZXk9eydNT1JFJ30+e2AgKCR7c2VsZWN0ZWRfb3B0aW9ucy5sZW5ndGh9KWB9PC9zcGFuPixcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcnNlU2VsZWN0ZWRJdGVtcyhmaWx0ZXJfaXRlbSkubWFwKChzZWxlY3Rpb246IHN0cmluZykgPT5cbiAgICAgICAgc2VsZWN0aW9ucy5wdXNoKFxuICAgICAgICAgIDxsaVxuICAgICAgICAgICAgY2xhc3NOYW1lPXsnZmlsdGVyX2l0ZW1fX2NvbnRlbnRfX3NlbGVjdGlvbnNfX3NlbGVjdGlvbid9XG4gICAgICAgICAgICBrZXk9e3NlbGVjdGlvbn1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7dHJhbnNsYXRlRmlsdGVySXRlbU9wdGlvbkxhYmVsKGZpbHRlcl9pdGVtLCBzZWxlY3Rpb24sIHRydWUpfVxuICAgICAgICAgIDwvbGk+LFxuICAgICAgICApLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2VsZWN0aW9ucztcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChmaWx0ZXJfaXRlbS5zZWxlY3RlZF9vcHRpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgc2V0U2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAoe1xuICAgICAgICBmaWx0ZXJJdGVtSWQ6IGZpbHRlcl9pdGVtLmlkLFxuICAgICAgICBzaG93OiB0cnVlLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKGZpbHRlcl9pdGVtLmF2YWlsYWJsZV9vcHRpb25zID09PSBudWxsKSB7XG4gICAgICBsZXQgbWF0Y2hGaWx0ZXJJdGVtID0gYXZhaWxhYmxlRmlsdGVySXRlbXMuZmluZChcbiAgICAgICAgKGF2YWlsYWJsZUZpbHRlckl0ZW06IGFueSkgPT5cbiAgICAgICAgICBhdmFpbGFibGVGaWx0ZXJJdGVtLnR5cGUgPT09IGZpbHRlcl9pdGVtLnR5cGUsXG4gICAgICApO1xuXG4gICAgICBpZiAobWF0Y2hGaWx0ZXJJdGVtICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgZmlsdGVyX2l0ZW0uYXZhaWxhYmxlX29wdGlvbnMgPSBtYXRjaEZpbHRlckl0ZW0ub3B0aW9ucztcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtmaWx0ZXJfaXRlbV0pO1xuXG4gIHJldHVybiAoXG4gICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9eydmaWx0ZXJfaXRlbV9fY29udGVudCd9XG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUZpbHRlckl0ZW1DbGljayhmaWx0ZXJfaXRlbSl9XG4gICAgICA+XG4gICAgICAgIDxzcGFuPnt0cmFuc2xhdGVGaWx0ZXJJdGVtVHlwZShmaWx0ZXJfaXRlbS50eXBlKX08L3NwYW4+XG4gICAgICAgIDx1bCBjbGFzc05hbWU9eydmaWx0ZXJfaXRlbV9fY29udGVudF9fc2VsZWN0aW9ucyd9PlxuICAgICAgICAgIHtnZXRTZWxlY3Rpb25zKHBhcnNlU2VsZWN0ZWRJdGVtcyhmaWx0ZXJfaXRlbSkpLm1hcChcbiAgICAgICAgICAgIChzZWxlY3Rpb246IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiBzZWxlY3Rpb247XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICl9XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGEgb25DbGljaz17KCkgPT4gcmVtb3ZlRmlsdGVySXRlbShmaWx0ZXJfaXRlbSl9PlxuICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhVGltZXN9IC8+XG4gICAgICA8L2E+XG4gICAgICB7c2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAuZmlsdGVySXRlbUlkID09PSBmaWx0ZXJfaXRlbS5pZCAmJlxuICAgICAgICBzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCAmJiAoXG4gICAgICAgICAgPE9wdGlvbnNEcm9wRG93blxuICAgICAgICAgICAgcGFyc2VTZWxlY3RlZEl0ZW1zPXtwYXJzZVNlbGVjdGVkSXRlbXN9XG4gICAgICAgICAgICBmaWx0ZXJJdGVtPXtmaWx0ZXJfaXRlbX1cbiAgICAgICAgICAgIGFjdGl2ZUZpbHRlckNvcHk9e2FjdGl2ZUZpbHRlckNvcHl9XG4gICAgICAgICAgICBzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cD17c2V0U2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXB9XG4gICAgICAgICAgICBzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cD17c2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXB9XG4gICAgICAgICAgICBoYW5kbGVTaW5nbGVTZWxlY3Rpb249e2hhbmRsZVNpbmdsZVNlbGVjdGlvbn1cbiAgICAgICAgICAgIHRyYW5zbGF0ZUZpbHRlckl0ZW1PcHRpb25MYWJlbD17dHJhbnNsYXRlRmlsdGVySXRlbU9wdGlvbkxhYmVsfVxuICAgICAgICAgICAgaGFuZGxlQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICA8L1JlYWN0LkZyYWdtZW50PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgRmlsdGVySXRlbTtcbiJdfQ==
232
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9GaWx0ZXIvRmlsdGVySXRlbS50c3giXSwibmFtZXMiOlsiRmlsdGVySXRlbSIsInByb3BzIiwiZmlsdGVyX2l0ZW0iLCJwYXJzZVNlbGVjdGVkSXRlbXMiLCJhY3RpdmVGaWx0ZXJDb3B5Iiwic2V0QWN0aXZlRmlsdGVyQ29weSIsImF2YWlsYWJsZUZpbHRlckl0ZW1zIiwic2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAiLCJzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCIsImhhbmRsZUZpbHRlckl0ZW1DbGljayIsImZpbHRlckl0ZW0iLCJzaG93IiwiZmlsdGVySXRlbUlkIiwiaWQiLCJyZW1vdmVGaWx0ZXJJdGVtIiwidW5kZWZpbmVkIiwiaW5kZXgiLCJmaWx0ZXJfaXRlbXMiLCJpbmRleE9mIiwiZmluZCIsIml0ZW0iLCJzcGxpY2UiLCJhY3RpdmVGaWx0ZXJEdXBsaWNhdGUiLCJPYmplY3QiLCJhc3NpZ24iLCJoYW5kbGVDaGFuZ2UiLCJzZWxlY3RlZCIsImFjdGl2ZUZpbHRlciIsInNlbGVjdGVkT3B0aW9ucyIsImxlbmd0aCIsImZvckVhY2giLCJzZWxlY3Rpb24iLCJwdXNoIiwib3JpZ2luYWwiLCJzZWxlY3RlZF9vcHRpb25zIiwiaGFuZGxlU2luZ2xlU2VsZWN0aW9uIiwiY3VycmVudFRhcmdldCIsImN1c3RvbVZhbHVlIiwic2VsZWN0ZWRWYWx1ZSIsImNoaWxkcmVuIiwidmFsdWUiLCJzdHJpcERhbWFnZVR5cGUiLCJzdHJpbmciLCJ0b0xvd2VyQ2FzZSIsInJlcGxhY2UiLCJjYW1lbFRvU25ha2VDYXNlIiwic3RyIiwic2xpY2UiLCJsZXR0ZXIiLCJkaXNwbGF5TmFtZUZvck9iamVjdFR5cGVkT3B0aW9ucyIsIm9wdGlvbiIsImZvck91dGVyRGlzcGxheSIsImF2YWlsYWJsZV9vcHRpb25zIiwiZiIsIm5hbWUiLCJ0cmFuc2xhdGVGaWx0ZXJJdGVtT3B0aW9uTGFiZWwiLCJ0eXBlIiwiaTE4biIsInQiLCJ0cmFuc2xhdGVGaWx0ZXJJdGVtVHlwZSIsImZpbHRlckl0ZW1UeXBlIiwiZ2V0U2VsZWN0aW9ucyIsInNlbGVjdGlvbnMiLCJtYXAiLCJtYXRjaEZpbHRlckl0ZW0iLCJhdmFpbGFibGVGaWx0ZXJJdGVtIiwib3B0aW9ucyIsImZhVGltZXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQWtCQSxJQUFNQSxVQUE0QixHQUFHLFNBQS9CQSxVQUErQixDQUFDQyxLQUFELEVBQVc7QUFDOUMsTUFDRUMsV0FERixHQVFJRCxLQVJKLENBQ0VDLFdBREY7QUFBQSxNQUVFQyxrQkFGRixHQVFJRixLQVJKLENBRUVFLGtCQUZGO0FBQUEsTUFHRUMsZ0JBSEYsR0FRSUgsS0FSSixDQUdFRyxnQkFIRjtBQUFBLE1BSUVDLG1CQUpGLEdBUUlKLEtBUkosQ0FJRUksbUJBSkY7QUFBQSxNQUtFQyxvQkFMRixHQVFJTCxLQVJKLENBS0VLLG9CQUxGO0FBQUEsTUFNRUMsMEJBTkYsR0FRSU4sS0FSSixDQU1FTSwwQkFORjtBQUFBLE1BT0VDLDZCQVBGLEdBUUlQLEtBUkosQ0FPRU8sNkJBUEY7O0FBU0EsTUFBTUMscUJBQXFCLEdBQUcsU0FBeEJBLHFCQUF3QixDQUFDQyxVQUFELEVBQXFCO0FBQ2pELFFBQ0UsQ0FBQ0gsMEJBQTBCLENBQUNJLElBQTVCLElBQ0FKLDBCQUEwQixDQUFDSyxZQUEzQixLQUE0Q0YsVUFBVSxDQUFDRyxFQUZ6RCxFQUdFO0FBQ0FMLE1BQUFBLDZCQUE2QixDQUFDO0FBQzVCSSxRQUFBQSxZQUFZLEVBQUVGLFVBQVUsQ0FBQ0csRUFERztBQUU1QkYsUUFBQUEsSUFBSSxFQUFFO0FBRnNCLE9BQUQsQ0FBN0I7QUFJRDtBQUNGLEdBVkQ7O0FBWUEsTUFBTUcsZ0JBQWdCLEdBQUcsU0FBbkJBLGdCQUFtQixDQUFDSixVQUFELEVBQTZC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O0FBa0NELENBeFBEOztlQTBQZXpCLFUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmYVRpbWVzIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9yZWFjdC1mb250YXdlc29tZSc7XG5pbXBvcnQgUmVhY3QsIHsgRm9ybUV2ZW50LCB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBJRmlsdGVyIH0gZnJvbSAnc3JjL3N0b3JlL2ZpbHRlcnMvSUZpbHRlcic7XG5pbXBvcnQgeyBJRmlsdGVySXRlbSB9IGZyb20gJ3NyYy9zdG9yZS9maWx0ZXJzL0lGaWx0ZXJJdGVtJztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgJy4uLy4uL0V2ZW50c1N0eWxlLnNjc3MnO1xuaW1wb3J0IE9wdGlvbnNEcm9wRG93biBmcm9tICcuL09wdGlvbnNEcm9wRG93bic7XG5pbXBvcnQgeyBmb3JtYXRUaW1lU2VsZWN0aW9uIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvVGltZVJhbmdlU2VsZWN0b3IvVGltZVJhbmdlSGVscGVyJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIGZpbHRlcl9pdGVtOiBJRmlsdGVySXRlbTtcbiAgcGFyc2VTZWxlY3RlZEl0ZW1zOiBGdW5jdGlvbjtcbiAgYWN0aXZlRmlsdGVyQ29weTogYW55O1xuICBzZXRBY3RpdmVGaWx0ZXJDb3B5OiBSZWFjdC5EaXNwYXRjaDxhbnk+O1xuICBhdmFpbGFibGVGaWx0ZXJJdGVtczogYW55O1xuICBzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cDogYW55O1xuICBzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cDogYW55O1xufTtcblxudHlwZSBJQ3VzdG9tVmFsdWUgPSB7XG4gIGN1c3RvbVZhbHVlOiBzdHJpbmc7XG59O1xuXG50eXBlIElTZWxlY3Rpb25FdmVudCA9IElDdXN0b21WYWx1ZSB8IEZvcm1FdmVudDxIVE1MSW5wdXRFbGVtZW50PjtcblxuY29uc3QgRmlsdGVySXRlbTogUmVhY3QuRkM8SVByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7XG4gICAgZmlsdGVyX2l0ZW0sXG4gICAgcGFyc2VTZWxlY3RlZEl0ZW1zLFxuICAgIGFjdGl2ZUZpbHRlckNvcHksXG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weSxcbiAgICBhdmFpbGFibGVGaWx0ZXJJdGVtcyxcbiAgICBzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCxcbiAgICBzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCxcbiAgfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVGaWx0ZXJJdGVtQ2xpY2sgPSAoZmlsdGVySXRlbTogYW55KSA9PiB7XG4gICAgaWYgKFxuICAgICAgIXNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwLnNob3cgJiZcbiAgICAgIHNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwLmZpbHRlckl0ZW1JZCAhPT0gZmlsdGVySXRlbS5pZFxuICAgICkge1xuICAgICAgc2V0U2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAoe1xuICAgICAgICBmaWx0ZXJJdGVtSWQ6IGZpbHRlckl0ZW0uaWQsXG4gICAgICAgIHNob3c6IHRydWUsXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgcmVtb3ZlRmlsdGVySXRlbSA9IChmaWx0ZXJJdGVtOiBJRmlsdGVySXRlbSkgPT4ge1xuICAgIGlmIChhY3RpdmVGaWx0ZXJDb3B5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGxldCBpbmRleCA9IGFjdGl2ZUZpbHRlckNvcHkuZmlsdGVyX2l0ZW1zLmluZGV4T2YoXG4gICAgICAgIGFjdGl2ZUZpbHRlckNvcHkuZmlsdGVyX2l0ZW1zLmZpbmQoXG4gICAgICAgICAgKGl0ZW06IElGaWx0ZXJJdGVtKSA9PiBpdGVtLmlkID09PSBmaWx0ZXJJdGVtLmlkLFxuICAgICAgICApLFxuICAgICAgKTtcbiAgICAgIGFjdGl2ZUZpbHRlckNvcHkuZmlsdGVyX2l0ZW1zLnNwbGljZShpbmRleCwgMSk7XG5cbiAgICAgIGxldCBhY3RpdmVGaWx0ZXJEdXBsaWNhdGUgPSBPYmplY3QuYXNzaWduKHt9LCBhY3RpdmVGaWx0ZXJDb3B5KTtcbiAgICAgIHNldEFjdGl2ZUZpbHRlckNvcHkoYWN0aXZlRmlsdGVyRHVwbGljYXRlKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKFxuICAgIHNlbGVjdGVkOiBhbnksXG4gICAgZmlsdGVySXRlbTogSUZpbHRlckl0ZW0sXG4gICAgYWN0aXZlRmlsdGVyOiBJRmlsdGVyLFxuICApID0+IHtcbiAgICBsZXQgc2VsZWN0ZWRPcHRpb25zOiBhbnlbXSA9IFtdO1xuXG4gICAgaWYgKHNlbGVjdGVkLmxlbmd0aCAhPT0gMCkge1xuICAgICAgc2VsZWN0ZWQuZm9yRWFjaCgoc2VsZWN0aW9uOiBhbnkpID0+IHtcbiAgICAgICAgc2VsZWN0ZWRPcHRpb25zLnB1c2goc2VsZWN0aW9uLm9yaWdpbmFsKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGZpbHRlckl0ZW0uc2VsZWN0ZWRfb3B0aW9ucyA9IHNlbGVjdGVkT3B0aW9ucztcbiAgICBsZXQgYWN0aXZlRmlsdGVyQ29weSA9IE9iamVjdC5hc3NpZ24oe30sIGFjdGl2ZUZpbHRlcik7XG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weShhY3RpdmVGaWx0ZXJDb3B5KTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVTaW5nbGVTZWxlY3Rpb24gPSAoXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHsgY3VycmVudFRhcmdldCA9ICcnLCBjdXN0b21WYWx1ZSA9ICcnIH06IElTZWxlY3Rpb25FdmVudCxcbiAgICBmaWx0ZXJJdGVtOiBJRmlsdGVySXRlbSxcbiAgICBhY3RpdmVGaWx0ZXI6IElGaWx0ZXIsXG4gICkgPT4ge1xuICAgIGxldCBzZWxlY3RlZE9wdGlvbnM6IGFueVtdID0gW107XG4gICAgY29uc3Qgc2VsZWN0ZWRWYWx1ZSA9IGN1c3RvbVZhbHVlIHx8IGN1cnJlbnRUYXJnZXQuY2hpbGRyZW5bMF0udmFsdWU7XG4gICAgc2VsZWN0ZWRPcHRpb25zLnB1c2goc2VsZWN0ZWRWYWx1ZSk7XG4gICAgZmlsdGVySXRlbS5zZWxlY3RlZF9vcHRpb25zID0gc2VsZWN0ZWRPcHRpb25zO1xuXG4gICAgbGV0IGFjdGl2ZUZpbHRlckNvcHkgPSBPYmplY3QuYXNzaWduKHt9LCBhY3RpdmVGaWx0ZXIpO1xuICAgIHNldEFjdGl2ZUZpbHRlckNvcHkoYWN0aXZlRmlsdGVyQ29weSk7XG4gIH07XG5cbiAgY29uc3Qgc3RyaXBEYW1hZ2VUeXBlID0gKHN0cmluZzogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIHN0cmluZy50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL1snICcvJl0vZywgJy0nKTtcbiAgfTtcblxuICBjb25zdCBjYW1lbFRvU25ha2VDYXNlID0gKHN0cjogc3RyaW5nKSA9PlxuICAgIHN0clswXS50b0xvd2VyQ2FzZSgpICtcbiAgICBzdHJcbiAgICAgIC5zbGljZSgxLCBzdHIubGVuZ3RoKVxuICAgICAgLnJlcGxhY2UoL1tBLVpdL2csIChsZXR0ZXIpID0+IGBfJHtsZXR0ZXIudG9Mb3dlckNhc2UoKX1gKTtcbiAgY29uc3QgZGlzcGxheU5hbWVGb3JPYmplY3RUeXBlZE9wdGlvbnMgPSAoXG4gICAgZmlsdGVySXRlbTogSUZpbHRlckl0ZW0sXG4gICAgb3B0aW9uOiBhbnksXG4gICAgZm9yT3V0ZXJEaXNwbGF5OiBib29sZWFuLFxuICApID0+IHtcbiAgICBsZXQgaXRlbTtcbiAgICBpZiAoZm9yT3V0ZXJEaXNwbGF5ICYmIGZpbHRlckl0ZW0uYXZhaWxhYmxlX29wdGlvbnMgIT09IG51bGwpIHtcbiAgICAgIGl0ZW0gPSBmaWx0ZXJJdGVtLmF2YWlsYWJsZV9vcHRpb25zLmZpbmQoKGYpID0+IGYuaWQgPT09IG9wdGlvbik7XG4gICAgICBpdGVtICE9PSB1bmRlZmluZWQgJiYgKGl0ZW0gPSBpdGVtLm5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpdGVtID0gb3B0aW9uO1xuICAgIH1cblxuICAgIHJldHVybiBpdGVtO1xuICB9O1xuICBjb25zdCB0cmFuc2xhdGVGaWx0ZXJJdGVtT3B0aW9uTGFiZWwgPSAoXG4gICAgZmlsdGVySXRlbTogSUZpbHRlckl0ZW0sXG4gICAgb3B0aW9uOiBzdHJpbmcsXG4gICAgZm9yT3V0ZXJEaXNwbGF5ID0gZmFsc2UsXG4gICkgPT4ge1xuICAgIHN3aXRjaCAoZmlsdGVySXRlbS50eXBlKSB7XG4gICAgICBjYXNlICdJbnRlcmVzdFBvaW50RmlsdGVySXRlbSc6XG4gICAgICAgIHJldHVybiBkaXNwbGF5TmFtZUZvck9iamVjdFR5cGVkT3B0aW9ucyhcbiAgICAgICAgICBmaWx0ZXJJdGVtLFxuICAgICAgICAgIG9wdGlvbixcbiAgICAgICAgICBmb3JPdXRlckRpc3BsYXksXG4gICAgICAgICk7XG4gICAgICBjYXNlICdBcmVhRmlsdGVySXRlbSc6XG4gICAgICAgIHJldHVybiBkaXNwbGF5TmFtZUZvck9iamVjdFR5cGVkT3B0aW9ucyhcbiAgICAgICAgICBmaWx0ZXJJdGVtLFxuICAgICAgICAgIG9wdGlvbixcbiAgICAgICAgICBmb3JPdXRlckRpc3BsYXksXG4gICAgICAgICk7XG4gICAgICBjYXNlICdTZWN0b3JGaWx0ZXJJdGVtJzpcbiAgICAgICAgcmV0dXJuIGRpc3BsYXlOYW1lRm9yT2JqZWN0VHlwZWRPcHRpb25zKFxuICAgICAgICAgIGZpbHRlckl0ZW0sXG4gICAgICAgICAgb3B0aW9uLFxuICAgICAgICAgIGZvck91dGVyRGlzcGxheSxcbiAgICAgICAgKTtcbiAgICAgIGNhc2UgJ1NldmVyaXR5RmlsdGVySXRlbSc6XG4gICAgICAgIHJldHVybiBpMThuLnQoYGV2ZW50c19vdmVydmlldy5zZXZlcml0aWVzLiR7b3B0aW9ufWApO1xuICAgICAgY2FzZSAnRGFtYWdlVHlwZUZpbHRlckl0ZW0nOlxuICAgICAgICByZXR1cm4gaTE4bi50KFxuICAgICAgICAgIGBldmVudHNfb3ZlcnZpZXcuZGFtYWdlX3R5cGVzLiR7c3RyaXBEYW1hZ2VUeXBlKG9wdGlvbil9YCxcbiAgICAgICAgKTtcbiAgICAgIGNhc2UgJ1RpbWVGaWx0ZXJJdGVtJzpcbiAgICAgICAgcmV0dXJuIGZvcm1hdFRpbWVTZWxlY3Rpb24ob3B0aW9uKTtcbiAgICAgIGNhc2UgJ1N0YXR1c0ZpbHRlckl0ZW0nOlxuICAgICAgICByZXR1cm4gaTE4bi50KGBldmVudHNfb3ZlcnZpZXcuZmlsdGVyLnN0YXR1cy4ke29wdGlvbn1gKTtcbiAgICAgIGNhc2UgJ1NhbXBsaW5nRmlsdGVySXRlbSc6XG4gICAgICAgIHJldHVybiBpMThuLnQoYGV2ZW50c19vdmVydmlldy5maWx0ZXIuc2FtcGxpbmdzX29wdGlvbnMuJHtvcHRpb259YCk7XG4gICAgICBjYXNlICdTYW1wbGluZ01vZGVGaWx0ZXJJdGVtJzpcbiAgICAgICAgcmV0dXJuIGkxOG4udChgZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5zYW1wbGluZ19tb2RlLiR7b3B0aW9ufWApO1xuICAgICAgY2FzZSAnTGFiRmlsdGVySXRlbSc6XG4gICAgICAgIHJldHVybiBkaXNwbGF5TmFtZUZvck9iamVjdFR5cGVkT3B0aW9ucyhcbiAgICAgICAgICBmaWx0ZXJJdGVtLFxuICAgICAgICAgIG9wdGlvbixcbiAgICAgICAgICBmb3JPdXRlckRpc3BsYXksXG4gICAgICAgICk7XG4gICAgICBjYXNlICdTYW1wbGluZ1N0YXR1c0ZpbHRlckl0ZW0nOlxuICAgICAgICByZXR1cm4gaTE4bi50KGBldmVudHNfb3ZlcnZpZXcuZmlsdGVyLnNhbXBsaW5nc19zdGF0dXMuJHtvcHRpb259YCk7XG4gICAgICBjYXNlICdTYW1wbGluZ0lkRmlsdGVySXRlbSc6XG4gICAgICAgIHJldHVybiBkaXNwbGF5TmFtZUZvck9iamVjdFR5cGVkT3B0aW9ucyhcbiAgICAgICAgICBmaWx0ZXJJdGVtLFxuICAgICAgICAgIG9wdGlvbixcbiAgICAgICAgICBmb3JPdXRlckRpc3BsYXksXG4gICAgICAgICk7XG4gICAgICBjYXNlICdTaXRlRmlsdGVySXRlbSc6XG4gICAgICAgIHJldHVybiBkaXNwbGF5TmFtZUZvck9iamVjdFR5cGVkT3B0aW9ucyhcbiAgICAgICAgICBmaWx0ZXJJdGVtLFxuICAgICAgICAgIG9wdGlvbixcbiAgICAgICAgICBmb3JPdXRlckRpc3BsYXksXG4gICAgICAgICk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IHRyYW5zbGF0ZUZpbHRlckl0ZW1UeXBlID0gKGZpbHRlckl0ZW1UeXBlOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gaTE4bi50KFxuICAgICAgYGV2ZW50c19vdmVydmlldy5maWx0ZXIuZmlsdGVyX3R5cGVzLiR7Y2FtZWxUb1NuYWtlQ2FzZShmaWx0ZXJJdGVtVHlwZSl9YCxcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGdldFNlbGVjdGlvbnMgPSAoc2VsZWN0ZWRfb3B0aW9uczogYW55KSA9PiB7XG4gICAgbGV0IHNlbGVjdGlvbnM6IGFueVtdID0gW107XG4gICAgaWYgKHNlbGVjdGVkX29wdGlvbnMubGVuZ3RoID4gMSkge1xuICAgICAgcGFyc2VTZWxlY3RlZEl0ZW1zKGZpbHRlcl9pdGVtKVxuICAgICAgICAuc2xpY2UoMCwgMSlcbiAgICAgICAgLm1hcCgoc2VsZWN0aW9uOiBzdHJpbmcpID0+XG4gICAgICAgICAgc2VsZWN0aW9ucy5wdXNoKFxuICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17J2ZpbHRlcl9pdGVtX19jb250ZW50X19zZWxlY3Rpb25zX19zZWxlY3Rpb24nfVxuICAgICAgICAgICAgICBrZXk9e3NlbGVjdGlvbn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3RyYW5zbGF0ZUZpbHRlckl0ZW1PcHRpb25MYWJlbChmaWx0ZXJfaXRlbSwgc2VsZWN0aW9uLCB0cnVlKX1cbiAgICAgICAgICAgIDwvbGk+LFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICBzZWxlY3Rpb25zLnB1c2goXG4gICAgICAgIDxzcGFuIGtleT17J01PUkUnfT57YCAoJHtzZWxlY3RlZF9vcHRpb25zLmxlbmd0aH0pYH08L3NwYW4+LFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcGFyc2VTZWxlY3RlZEl0ZW1zKGZpbHRlcl9pdGVtKS5tYXAoKHNlbGVjdGlvbjogc3RyaW5nKSA9PlxuICAgICAgICBzZWxlY3Rpb25zLnB1c2goXG4gICAgICAgICAgPGxpXG4gICAgICAgICAgICBjbGFzc05hbWU9eydmaWx0ZXJfaXRlbV9fY29udGVudF9fc2VsZWN0aW9uc19fc2VsZWN0aW9uJ31cbiAgICAgICAgICAgIGtleT17c2VsZWN0aW9ufVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt0cmFuc2xhdGVGaWx0ZXJJdGVtT3B0aW9uTGFiZWwoZmlsdGVyX2l0ZW0sIHNlbGVjdGlvbiwgdHJ1ZSl9XG4gICAgICAgICAgPC9saT4sXG4gICAgICAgICksXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBzZWxlY3Rpb25zO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGZpbHRlcl9pdGVtLnNlbGVjdGVkX29wdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICBzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCh7XG4gICAgICAgIGZpbHRlckl0ZW1JZDogZmlsdGVyX2l0ZW0uaWQsXG4gICAgICAgIHNob3c6IHRydWUsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoZmlsdGVyX2l0ZW0uYXZhaWxhYmxlX29wdGlvbnMgPT09IG51bGwpIHtcbiAgICAgIGxldCBtYXRjaEZpbHRlckl0ZW0gPSBhdmFpbGFibGVGaWx0ZXJJdGVtcy5maW5kKFxuICAgICAgICAoYXZhaWxhYmxlRmlsdGVySXRlbTogYW55KSA9PlxuICAgICAgICAgIGF2YWlsYWJsZUZpbHRlckl0ZW0udHlwZSA9PT0gZmlsdGVyX2l0ZW0udHlwZSxcbiAgICAgICk7XG5cbiAgICAgIGlmIChtYXRjaEZpbHRlckl0ZW0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBmaWx0ZXJfaXRlbS5hdmFpbGFibGVfb3B0aW9ucyA9IG1hdGNoRmlsdGVySXRlbS5vcHRpb25zO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW2ZpbHRlcl9pdGVtXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17J2ZpbHRlcl9pdGVtX19jb250ZW50J31cbiAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlRmlsdGVySXRlbUNsaWNrKGZpbHRlcl9pdGVtKX1cbiAgICAgID5cbiAgICAgICAgPHNwYW4+e3RyYW5zbGF0ZUZpbHRlckl0ZW1UeXBlKGZpbHRlcl9pdGVtLnR5cGUpfTwvc3Bhbj5cbiAgICAgICAgPHVsIGNsYXNzTmFtZT17J2ZpbHRlcl9pdGVtX19jb250ZW50X19zZWxlY3Rpb25zJ30+XG4gICAgICAgICAge2dldFNlbGVjdGlvbnMocGFyc2VTZWxlY3RlZEl0ZW1zKGZpbHRlcl9pdGVtKSkubWFwKFxuICAgICAgICAgICAgKHNlbGVjdGlvbjogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIHNlbGVjdGlvbjtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgKX1cbiAgICAgICAgPC91bD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8YSBvbkNsaWNrPXsoKSA9PiByZW1vdmVGaWx0ZXJJdGVtKGZpbHRlcl9pdGVtKX0+XG4gICAgICAgIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFUaW1lc30gLz5cbiAgICAgIDwvYT5cbiAgICAgIHtzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cC5maWx0ZXJJdGVtSWQgPT09IGZpbHRlcl9pdGVtLmlkICYmXG4gICAgICAgIHNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwICYmIChcbiAgICAgICAgICA8T3B0aW9uc0Ryb3BEb3duXG4gICAgICAgICAgICBwYXJzZVNlbGVjdGVkSXRlbXM9e3BhcnNlU2VsZWN0ZWRJdGVtc31cbiAgICAgICAgICAgIGZpbHRlckl0ZW09e2ZpbHRlcl9pdGVtfVxuICAgICAgICAgICAgYWN0aXZlRmlsdGVyQ29weT17YWN0aXZlRmlsdGVyQ29weX1cbiAgICAgICAgICAgIHNldFNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwPXtzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cH1cbiAgICAgICAgICAgIHNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwPXtzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cH1cbiAgICAgICAgICAgIGhhbmRsZVNpbmdsZVNlbGVjdGlvbj17aGFuZGxlU2luZ2xlU2VsZWN0aW9ufVxuICAgICAgICAgICAgdHJhbnNsYXRlRmlsdGVySXRlbU9wdGlvbkxhYmVsPXt0cmFuc2xhdGVGaWx0ZXJJdGVtT3B0aW9uTGFiZWx9XG4gICAgICAgICAgICBoYW5kbGVDaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgIDwvUmVhY3QuRnJhZ21lbnQ+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBGaWx0ZXJJdGVtO1xuIl19
@@ -275,7 +275,7 @@
275
275
  position: absolute;
276
276
  bottom: 0;
277
277
  transform: translateY(100%);
278
- left: 0;
278
+ margin-inline-start: -12px;
279
279
  z-index: 9;
280
280
 
281
281
  .filter-items-options-popup {
@@ -27,8 +27,6 @@ var _axios = _interopRequireDefault(require("axios"));
27
27
 
28
28
  var _ImportButtomButtons = _interopRequireDefault(require("./ImportButtomButtons"));
29
29
 
30
- var _reactToastify = require("react-toastify");
31
-
32
30
  var ValidationForm = function ValidationForm(_ref) {
33
31
  var _uploadingFile$file;
34
32
 
@@ -52,7 +50,7 @@ var ValidationForm = function ValidationForm(_ref) {
52
50
  }));
53
51
  };
54
52
 
55
- var HandleCancle = function HandleCancle() {
53
+ var HandleCancel = function HandleCancel() {
56
54
  history.goBack();
57
55
  dispatch((0, _actionsCreator.resetImportGisState)());
58
56
  };
@@ -67,13 +65,10 @@ var ValidationForm = function ValidationForm(_ref) {
67
65
  dispatch((0, _actionsCreator.setValidationRespones)(res.data));
68
66
  }
69
67
  }).catch(function (error) {
70
- if (error.response) {
71
- dispatch((0, _actionsCreator.setIsFethcing)(false));
72
-
73
- _reactToastify.toast.error(_i18n.default.t('errors.request_error'), {
74
- position: 'top-center'
75
- });
76
- }
68
+ dispatch((0, _actionsCreator.setValidationRespones)({
69
+ warnings: {},
70
+ errors: [_i18n.default.t('import_file_wizard.invalid_file')]
71
+ }));
77
72
  });
78
73
  };
79
74
 
@@ -110,7 +105,7 @@ var ValidationForm = function ValidationForm(_ref) {
110
105
  label: _i18n.default.t('import_file_wizard.next_button')
111
106
  },
112
107
  back: {
113
- handler: HandleCancle,
108
+ handler: HandleCancel,
114
109
  disable: false,
115
110
  label: _i18n.default.t('import_file_wizard.cancel_button')
116
111
  }
@@ -119,4 +114,4 @@ var ValidationForm = function ValidationForm(_ref) {
119
114
 
120
115
  var _default = ValidationForm;
121
116
  exports.default = _default;
122
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9JbXBvcnRGaWxlV2l6YXJkL1ZhbGlkYXRpb25Gb3JtLnRzeCJdLCJuYW1lcyI6WyJWYWxpZGF0aW9uRm9ybSIsImFjY2VwdFR5cGUiLCJ2YWxpZGF0aW9uVVJMIiwiY2hpbGRyZW4iLCJkaXNwYXRjaCIsImhpc3RvcnkiLCJzdGF0ZSIsImltcG9ydEdpcyIsInVwbG9hZGluZ0ZpbGUiLCJpc1ZhbGlkIiwiaGFuZGxlSW5wdXRDaGFuZ2UiLCJldmVudCIsImZpbGUiLCJ0YXJnZXQiLCJmaWxlcyIsImlzU2luZ2xlSW5wdXQiLCJIYW5kbGVDYW5jbGUiLCJnb0JhY2siLCJoYW5kbGVTdWJtaXQiLCJmb3JtRGF0YSIsIkZvcm1EYXRhIiwiYXBwZW5kIiwiYXhpb3MiLCJwb3N0IiwidGhlbiIsInJlcyIsImRhdGEiLCJjYXRjaCIsImVycm9yIiwicmVzcG9uc2UiLCJ0b2FzdCIsImkxOG4iLCJ0IiwicG9zaXRpb24iLCJzdHlsZXMiLCJ2YWxpZGF0aW9uRm9ybVdyYXBwZXIiLCJ1cGxvYWRXcmFwcGVyIiwidXBsb2FkVHh0RmllbGRXcmFwcGVyIiwidHlwZSIsIm5hbWUiLCJ1cGxvYWRGaWxlQnRuIiwidXBsb2FkRmlsZUJ0blNlY29uZGVyeSIsImhhbmRsZXIiLCJkaXNhYmxlIiwibGFiZWwiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQU1BOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUVBLElBQU1BLGNBQWMsR0FBRyxTQUFqQkEsY0FBaUIsT0FBNkM7QUFBQTs7QUFBQSxNQUExQ0MsVUFBMEMsUUFBMUNBLFVBQTBDO0FBQUEsTUFBOUJDLGFBQThCLFFBQTlCQSxhQUE4QjtBQUFBLE1BQWZDLFFBQWUsUUFBZkEsUUFBZTtBQUNsRSxNQUFNQyxRQUFRLEdBQUcsOEJBQWpCO0FBQ0EsTUFBTUMsT0FBTyxHQUFHLGlDQUFoQjtBQUNBOztBQUNBLHFCQUFtQyw2QkFDakMsVUFBQ0MsS0FBRDtBQUFBLFdBQTBDQSxLQUFLLENBQUNDLFNBQWhEO0FBQUEsR0FEaUMsQ0FBbkM7QUFBQSxNQUFRQyxhQUFSLGdCQUFRQSxhQUFSO0FBQUEsTUFBdUJDLE9BQXZCLGdCQUF1QkEsT0FBdkI7O0FBSUEsTUFBTUMsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFvQixDQUFDQyxLQUFELEVBQVc7QUFDbkNQLElBQUFBLFFBQVEsQ0FDTiw2QkFBUTtBQUFFUSxNQUFBQSxJQUFJLEVBQUVELEtBQUssQ0FBQ0UsTUFBTixDQUFhQyxLQUFiLENBQW1CLENBQW5CLENBQVI7QUFBK0JDLE1BQUFBLGFBQWEsRUFBRSxDQUFDWjtBQUEvQyxLQUFSLENBRE0sQ0FBUjtBQUdELEdBSkQ7O0FBTUEsTUFBTWEsWUFBWSxHQUFHLFNBQWZBLFlBQWUsR0FBTTtBQUN6QlgsSUFBQUEsT0FBTyxDQUFDWSxNQUFSO0FBQ0FiLElBQUFBLFFBQVEsQ0FBQywwQ0FBRCxDQUFSO0FBQ0QsR0FIRDs7QUFLQSxNQUFNYyxZQUFZLEdBQUcsU0FBZkEsWUFBZSxHQUFNO0FBQ3pCLFFBQU1DLFFBQVEsR0FBRyxJQUFJQyxRQUFKLEVBQWpCO0FBQ0FELElBQUFBLFFBQVEsQ0FBQ0UsTUFBVCxDQUFnQixNQUFoQixFQUF3QmIsYUFBYSxDQUFDSSxJQUF0QztBQUNBUixJQUFBQSxRQUFRLENBQUMsbUNBQWMsSUFBZCxDQUFELENBQVI7O0FBQ0FrQixtQkFDR0MsSUFESCxDQUNRckIsYUFEUixFQUN1QmlCLFFBRHZCLEVBRUdLLElBRkgsQ0FFUSxVQUFDQyxHQUFELEVBQVM7QUFDYixVQUFJQSxHQUFHLElBQUlBLEdBQUcsQ0FBQ0MsSUFBZixFQUFxQjtBQUNuQnRCLFFBQUFBLFFBQVEsQ0FBQywyQ0FBc0JxQixHQUFHLENBQUNDLElBQTFCLENBQUQsQ0FBUjtBQUNEO0FBQ0YsS0FOSCxFQU9HQyxLQVBILENBT1MsVUFBQ0MsS0FBRCxFQUFXO0FBQ2hCLFVBQUlBLEtBQUssQ0FBQ0MsUUFBVixFQUFvQjtBQUNsQnpCLFFBQUFBLFFBQVEsQ0FBQyxtQ0FBYyxLQUFkLENBQUQsQ0FBUjs7QUFDQTBCLDZCQUFNRixLQUFOLENBQVlHLGNBQUtDLENBQUwsQ0FBTyxzQkFBUCxDQUFaLEVBQTRDO0FBQzFDQyxVQUFBQSxRQUFRLEVBQUU7QUFEZ0MsU0FBNUM7QUFHRDtBQUNGLEtBZEg7QUFlRCxHQW5CRDs7QUFxQkEsc0JBQ0U7QUFBSyxJQUFBLFNBQVMsRUFBRUMscUJBQU9DO0FBQXZCLEtBQ0doQyxRQURILGVBRUU7QUFBSyxJQUFBLFNBQVMsRUFBRStCLHFCQUFPRTtBQUF2QixrQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFFRixxQkFBT0c7QUFBdkIsa0JBQ0UsNkJBQUMsd0JBQUQ7QUFDRSxJQUFBLFNBQVMsRUFBRSxLQURiO0FBRUUsSUFBQSxZQUFZLEVBQUUsd0JBQU0sQ0FBRSxDQUZ4QjtBQUdFLElBQUEsVUFBVSxFQUFFTixjQUFLQyxDQUFMLENBQU8scUNBQVAsQ0FIZDtBQUlFLElBQUEsV0FBVyxFQUFFRCxjQUFLQyxDQUFMLENBQU8sMkNBQVAsRUFBb0Q7QUFDL0RNLE1BQUFBLElBQUksRUFBRXJDO0FBRHlELEtBQXBELENBSmY7QUFPRSxJQUFBLElBQUksRUFBQyxNQVBQO0FBUUUsSUFBQSxLQUFLLEVBQUUsd0JBQUFPLGFBQWEsQ0FBQ0ksSUFBZCw0RUFBb0IyQixJQUFwQixLQUE0QixFQVJyQztBQVNFLElBQUEsU0FBUyxFQUFFO0FBVGIsSUFERixDQURGLGVBY0U7QUFDRSxJQUFBLElBQUksRUFBQyxNQURQO0FBRUUsSUFBQSxNQUFNLGFBQU10QyxVQUFOLENBRlI7QUFHRSxJQUFBLFNBQVMsRUFBQyxjQUhaO0FBSUUsSUFBQSxFQUFFLEVBQUMsV0FKTDtBQUtFLElBQUEsUUFBUSxFQUFFUyxpQkFMWjtBQU1FLElBQUEsTUFBTSxFQUFFO0FBTlYsSUFkRixlQXNCRTtBQUNFLElBQUEsU0FBUyxZQUFLd0IscUJBQU9NLGFBQVosY0FDUC9CLE9BQU8sR0FBR3lCLHFCQUFPTyxzQkFBVixHQUFtQyxFQURuQyxDQURYO0FBSUUsSUFBQSxPQUFPLEVBQUM7QUFKVixLQU1HVixjQUFLQyxDQUFMLENBQU8sc0NBQVAsQ0FOSCxDQXRCRixDQUZGLGVBa0NFLDZCQUFDLDRCQUFEO0FBQ0UsSUFBQSxJQUFJLEVBQUU7QUFDSlUsTUFBQUEsT0FBTyxFQUFFeEIsWUFETDtBQUVKeUIsTUFBQUEsT0FBTyxFQUFFLENBQUNsQyxPQUZOO0FBR0ptQyxNQUFBQSxLQUFLLEVBQUViLGNBQUtDLENBQUwsQ0FBTyxnQ0FBUDtBQUhILEtBRFI7QUFNRSxJQUFBLElBQUksRUFBRTtBQUNKVSxNQUFBQSxPQUFPLEVBQUUxQixZQURMO0FBRUoyQixNQUFBQSxPQUFPLEVBQUUsS0FGTDtBQUdKQyxNQUFBQSxLQUFLLEVBQUViLGNBQUtDLENBQUwsQ0FBTyxrQ0FBUDtBQUhIO0FBTlIsSUFsQ0YsQ0FERjtBQWlERCxDQXpGRDs7ZUEwRmVoQyxjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IE1vYmlsZUlucHV0IH0gZnJvbSAnc3JjL3VpLWtpdC9Nb2JpbGVJbnB1dC9Nb2JpbGVJbnB1dCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5IH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyB1c2VJbml0aWFsaXplSGVhZGVycyB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZUluaXRpYWxpemVIZWFkZXJzJztcbmltcG9ydCB7XG4gIHJlc2V0SW1wb3J0R2lzU3RhdGUsXG4gIHNldEZpbGUsXG4gIHNldFZhbGlkYXRpb25SZXNwb25lcyxcbiAgc2V0SXNGZXRoY2luZyxcbn0gZnJvbSAnc3JjL3N0b3JlL0ltcG9ydEdpcy9hY3Rpb25zQ3JlYXRvcic7XG5pbXBvcnQgc3R5bGVzIGZyb20gJy4vc3R5bGUubW9kdWxlLnNjc3MnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgSW1wb3J0QnV0dG9tQnV0dG9ucyBmcm9tICcuL0ltcG9ydEJ1dHRvbUJ1dHRvbnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgeyB0b2FzdCB9IGZyb20gJ3JlYWN0LXRvYXN0aWZ5JztcblxuY29uc3QgVmFsaWRhdGlvbkZvcm0gPSAoeyBhY2NlcHRUeXBlLCB2YWxpZGF0aW9uVVJMLCBjaGlsZHJlbiB9KSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgdXNlSW5pdGlhbGl6ZUhlYWRlcnMoKTtcbiAgY29uc3QgeyB1cGxvYWRpbmdGaWxlLCBpc1ZhbGlkIH0gPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5pbXBvcnRHaXMsXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlSW5wdXRDaGFuZ2UgPSAoZXZlbnQpID0+IHtcbiAgICBkaXNwYXRjaChcbiAgICAgIHNldEZpbGUoeyBmaWxlOiBldmVudC50YXJnZXQuZmlsZXNbMF0sIGlzU2luZ2xlSW5wdXQ6ICFjaGlsZHJlbiB9KSxcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IEhhbmRsZUNhbmNsZSA9ICgpID0+IHtcbiAgICBoaXN0b3J5LmdvQmFjaygpO1xuICAgIGRpc3BhdGNoKHJlc2V0SW1wb3J0R2lzU3RhdGUoKSk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gKCkgPT4ge1xuICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlJywgdXBsb2FkaW5nRmlsZS5maWxlKTtcbiAgICBkaXNwYXRjaChzZXRJc0ZldGhjaW5nKHRydWUpKTtcbiAgICBheGlvc1xuICAgICAgLnBvc3QodmFsaWRhdGlvblVSTCwgZm9ybURhdGEpXG4gICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgIGlmIChyZXMgJiYgcmVzLmRhdGEpIHtcbiAgICAgICAgICBkaXNwYXRjaChzZXRWYWxpZGF0aW9uUmVzcG9uZXMocmVzLmRhdGEpKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgaWYgKGVycm9yLnJlc3BvbnNlKSB7XG4gICAgICAgICAgZGlzcGF0Y2goc2V0SXNGZXRoY2luZyhmYWxzZSkpO1xuICAgICAgICAgIHRvYXN0LmVycm9yKGkxOG4udCgnZXJyb3JzLnJlcXVlc3RfZXJyb3InKSwge1xuICAgICAgICAgICAgcG9zaXRpb246ICd0b3AtY2VudGVyJyxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLnZhbGlkYXRpb25Gb3JtV3JhcHBlcn0+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLnVwbG9hZFdyYXBwZXJ9PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLnVwbG9hZFR4dEZpZWxkV3JhcHBlcn0+XG4gICAgICAgICAgPE1vYmlsZUlucHV0XG4gICAgICAgICAgICBpc0ludmFsaWQ9e2ZhbHNlfVxuICAgICAgICAgICAgaGFuZGxlQ2hhbmdlPXsoKSA9PiB7fX1cbiAgICAgICAgICAgIGlucHV0VGl0bGU9e2kxOG4udCgnaW1wb3J0X2ZpbGVfd2l6YXJkLmZpbGVfaW5wdXRfbGFiZWwnKX1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtpMThuLnQoJ2ltcG9ydF9maWxlX3dpemFyZC5maWxlX2lucHV0X3BsYWNlaG9sZGVyJywge1xuICAgICAgICAgICAgICB0eXBlOiBhY2NlcHRUeXBlLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICB2YWx1ZT17dXBsb2FkaW5nRmlsZS5maWxlPy5uYW1lIHx8ICcnfVxuICAgICAgICAgICAgbWFuZGF0b3J5PXt0cnVlfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgYWNjZXB0PXtgLiR7YWNjZXB0VHlwZX1gfVxuICAgICAgICAgIGNsYXNzTmFtZT1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgaWQ9XCJmaWxlSW5wdXRcIlxuICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVJbnB1dENoYW5nZX1cbiAgICAgICAgICBoaWRkZW49e3RydWV9XG4gICAgICAgIC8+XG4gICAgICAgIDxsYWJlbFxuICAgICAgICAgIGNsYXNzTmFtZT17YCR7c3R5bGVzLnVwbG9hZEZpbGVCdG59ICR7XG4gICAgICAgICAgICBpc1ZhbGlkID8gc3R5bGVzLnVwbG9hZEZpbGVCdG5TZWNvbmRlcnkgOiAnJ1xuICAgICAgICAgIH1gfVxuICAgICAgICAgIGh0bWxGb3I9XCJmaWxlSW5wdXRcIlxuICAgICAgICA+XG4gICAgICAgICAge2kxOG4udCgnaW1wb3J0X2ZpbGVfd2l6YXJkLmZpbGVfaW5wdXRfYnV0dG9uJyl9XG4gICAgICAgIDwvbGFiZWw+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPEltcG9ydEJ1dHRvbUJ1dHRvbnNcbiAgICAgICAgbmV4dD17e1xuICAgICAgICAgIGhhbmRsZXI6IGhhbmRsZVN1Ym1pdCxcbiAgICAgICAgICBkaXNhYmxlOiAhaXNWYWxpZCxcbiAgICAgICAgICBsYWJlbDogaTE4bi50KCdpbXBvcnRfZmlsZV93aXphcmQubmV4dF9idXR0b24nKSxcbiAgICAgICAgfX1cbiAgICAgICAgYmFjaz17e1xuICAgICAgICAgIGhhbmRsZXI6IEhhbmRsZUNhbmNsZSxcbiAgICAgICAgICBkaXNhYmxlOiBmYWxzZSxcbiAgICAgICAgICBsYWJlbDogaTE4bi50KCdpbXBvcnRfZmlsZV93aXphcmQuY2FuY2VsX2J1dHRvbicpLFxuICAgICAgICB9fVxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5leHBvcnQgZGVmYXVsdCBWYWxpZGF0aW9uRm9ybTtcbiJdfQ==
117
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9JbXBvcnRGaWxlV2l6YXJkL1ZhbGlkYXRpb25Gb3JtLnRzeCJdLCJuYW1lcyI6WyJWYWxpZGF0aW9uRm9ybSIsImFjY2VwdFR5cGUiLCJ2YWxpZGF0aW9uVVJMIiwiY2hpbGRyZW4iLCJkaXNwYXRjaCIsImhpc3RvcnkiLCJzdGF0ZSIsImltcG9ydEdpcyIsInVwbG9hZGluZ0ZpbGUiLCJpc1ZhbGlkIiwiaGFuZGxlSW5wdXRDaGFuZ2UiLCJldmVudCIsImZpbGUiLCJ0YXJnZXQiLCJmaWxlcyIsImlzU2luZ2xlSW5wdXQiLCJIYW5kbGVDYW5jZWwiLCJnb0JhY2siLCJoYW5kbGVTdWJtaXQiLCJmb3JtRGF0YSIsIkZvcm1EYXRhIiwiYXBwZW5kIiwiYXhpb3MiLCJwb3N0IiwidGhlbiIsInJlcyIsImRhdGEiLCJjYXRjaCIsImVycm9yIiwid2FybmluZ3MiLCJlcnJvcnMiLCJpMThuIiwidCIsInN0eWxlcyIsInZhbGlkYXRpb25Gb3JtV3JhcHBlciIsInVwbG9hZFdyYXBwZXIiLCJ1cGxvYWRUeHRGaWVsZFdyYXBwZXIiLCJ0eXBlIiwibmFtZSIsInVwbG9hZEZpbGVCdG4iLCJ1cGxvYWRGaWxlQnRuU2Vjb25kZXJ5IiwiaGFuZGxlciIsImRpc2FibGUiLCJsYWJlbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBTUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBR0EsSUFBTUEsY0FBYyxHQUFHLFNBQWpCQSxjQUFpQixPQUE2QztBQUFBOztBQUFBLE1BQTFDQyxVQUEwQyxRQUExQ0EsVUFBMEM7QUFBQSxNQUE5QkMsYUFBOEIsUUFBOUJBLGFBQThCO0FBQUEsTUFBZkMsUUFBZSxRQUFmQSxRQUFlO0FBQ2xFLE1BQU1DLFFBQVEsR0FBRyw4QkFBakI7QUFDQSxNQUFNQyxPQUFPLEdBQUcsaUNBQWhCO0FBQ0E7O0FBQ0EscUJBQW1DLDZCQUNqQyxVQUFDQyxLQUFE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SCxDQXRCRixDQUZGLGVBa0NFLDZCQUFDLDRCQUFEO0FBQ0UsSUFBQSxJQUFJLEVBQUU7QUFDSlMsTUFBQUEsT0FBTyxFQUFFdkIsWUFETDtBQUVKd0IsTUFBQUEsT0FBTyxFQUFFLENBQUNqQyxPQUZOO0FBR0prQyxNQUFBQSxLQUFLLEVBQUVaLGNBQUtDLENBQUwsQ0FBTyxnQ0FBUDtBQUhILEtBRFI7QUFNRSxJQUFBLElBQUksRUFBRTtBQUNKUyxNQUFBQSxPQUFPLEVBQUV6QixZQURMO0FBRUowQixNQUFBQSxPQUFPLEVBQUUsS0FGTDtBQUdKQyxNQUFBQSxLQUFLLEVBQUVaLGNBQUtDLENBQUwsQ0FBTyxrQ0FBUDtBQUhIO0FBTlIsSUFsQ0YsQ0FERjtBQWlERCxDQXpGRDs7ZUEwRmVoQyxjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IE1vYmlsZUlucHV0IH0gZnJvbSAnc3JjL3VpLWtpdC9Nb2JpbGVJbnB1dC9Nb2JpbGVJbnB1dCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5IH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyB1c2VJbml0aWFsaXplSGVhZGVycyB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZUluaXRpYWxpemVIZWFkZXJzJztcbmltcG9ydCB7XG4gIHJlc2V0SW1wb3J0R2lzU3RhdGUsXG4gIHNldEZpbGUsXG4gIHNldFZhbGlkYXRpb25SZXNwb25lcyxcbiAgc2V0SXNGZXRoY2luZyxcbn0gZnJvbSAnc3JjL3N0b3JlL0ltcG9ydEdpcy9hY3Rpb25zQ3JlYXRvcic7XG5pbXBvcnQgc3R5bGVzIGZyb20gJy4vc3R5bGUubW9kdWxlLnNjc3MnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgSW1wb3J0QnV0dG9tQnV0dG9ucyBmcm9tICcuL0ltcG9ydEJ1dHRvbUJ1dHRvbnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5cbmNvbnN0IFZhbGlkYXRpb25Gb3JtID0gKHsgYWNjZXB0VHlwZSwgdmFsaWRhdGlvblVSTCwgY2hpbGRyZW4gfSkgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIHVzZUluaXRpYWxpemVIZWFkZXJzKCk7XG4gIGNvbnN0IHsgdXBsb2FkaW5nRmlsZSwgaXNWYWxpZCB9ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUuaW1wb3J0R2lzLFxuICApO1xuXG4gIGNvbnN0IGhhbmRsZUlucHV0Q2hhbmdlID0gKGV2ZW50KSA9PiB7XG4gICAgZGlzcGF0Y2goXG4gICAgICBzZXRGaWxlKHsgZmlsZTogZXZlbnQudGFyZ2V0LmZpbGVzWzBdLCBpc1NpbmdsZUlucHV0OiAhY2hpbGRyZW4gfSksXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBIYW5kbGVDYW5jZWwgPSAoKSA9PiB7XG4gICAgaGlzdG9yeS5nb0JhY2soKTtcbiAgICBkaXNwYXRjaChyZXNldEltcG9ydEdpc1N0YXRlKCkpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9ICgpID0+IHtcbiAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIHVwbG9hZGluZ0ZpbGUuZmlsZSk7XG4gICAgZGlzcGF0Y2goc2V0SXNGZXRoY2luZyh0cnVlKSk7XG4gICAgYXhpb3NcbiAgICAgIC5wb3N0KHZhbGlkYXRpb25VUkwsIGZvcm1EYXRhKVxuICAgICAgLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICBpZiAocmVzICYmIHJlcy5kYXRhKSB7XG4gICAgICAgICAgZGlzcGF0Y2goc2V0VmFsaWRhdGlvblJlc3BvbmVzKHJlcy5kYXRhKSk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgIGRpc3BhdGNoKFxuICAgICAgICAgIHNldFZhbGlkYXRpb25SZXNwb25lcyh7XG4gICAgICAgICAgICB3YXJuaW5nczoge30sXG4gICAgICAgICAgICBlcnJvcnM6IFtpMThuLnQoJ2ltcG9ydF9maWxlX3dpemFyZC5pbnZhbGlkX2ZpbGUnKV0sXG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMudmFsaWRhdGlvbkZvcm1XcmFwcGVyfT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMudXBsb2FkV3JhcHBlcn0+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMudXBsb2FkVHh0RmllbGRXcmFwcGVyfT5cbiAgICAgICAgICA8TW9iaWxlSW5wdXRcbiAgICAgICAgICAgIGlzSW52YWxpZD17ZmFsc2V9XG4gICAgICAgICAgICBoYW5kbGVDaGFuZ2U9eygpID0+IHt9fVxuICAgICAgICAgICAgaW5wdXRUaXRsZT17aTE4bi50KCdpbXBvcnRfZmlsZV93aXphcmQuZmlsZV9pbnB1dF9sYWJlbCcpfVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e2kxOG4udCgnaW1wb3J0X2ZpbGVfd2l6YXJkLmZpbGVfaW5wdXRfcGxhY2Vob2xkZXInLCB7XG4gICAgICAgICAgICAgIHR5cGU6IGFjY2VwdFR5cGUsXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIHZhbHVlPXt1cGxvYWRpbmdGaWxlLmZpbGU/Lm5hbWUgfHwgJyd9XG4gICAgICAgICAgICBtYW5kYXRvcnk9e3RydWV9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICBhY2NlcHQ9e2AuJHthY2NlcHRUeXBlfWB9XG4gICAgICAgICAgY2xhc3NOYW1lPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICBpZD1cImZpbGVJbnB1dFwiXG4gICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUlucHV0Q2hhbmdlfVxuICAgICAgICAgIGhpZGRlbj17dHJ1ZX1cbiAgICAgICAgLz5cbiAgICAgICAgPGxhYmVsXG4gICAgICAgICAgY2xhc3NOYW1lPXtgJHtzdHlsZXMudXBsb2FkRmlsZUJ0bn0gJHtcbiAgICAgICAgICAgIGlzVmFsaWQgPyBzdHlsZXMudXBsb2FkRmlsZUJ0blNlY29uZGVyeSA6ICcnXG4gICAgICAgICAgfWB9XG4gICAgICAgICAgaHRtbEZvcj1cImZpbGVJbnB1dFwiXG4gICAgICAgID5cbiAgICAgICAgICB7aTE4bi50KCdpbXBvcnRfZmlsZV93aXphcmQuZmlsZV9pbnB1dF9idXR0b24nKX1cbiAgICAgICAgPC9sYWJlbD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8SW1wb3J0QnV0dG9tQnV0dG9uc1xuICAgICAgICBuZXh0PXt7XG4gICAgICAgICAgaGFuZGxlcjogaGFuZGxlU3VibWl0LFxuICAgICAgICAgIGRpc2FibGU6ICFpc1ZhbGlkLFxuICAgICAgICAgIGxhYmVsOiBpMThuLnQoJ2ltcG9ydF9maWxlX3dpemFyZC5uZXh0X2J1dHRvbicpLFxuICAgICAgICB9fVxuICAgICAgICBiYWNrPXt7XG4gICAgICAgICAgaGFuZGxlcjogSGFuZGxlQ2FuY2VsLFxuICAgICAgICAgIGRpc2FibGU6IGZhbHNlLFxuICAgICAgICAgIGxhYmVsOiBpMThuLnQoJ2ltcG9ydF9maWxlX3dpemFyZC5jYW5jZWxfYnV0dG9uJyksXG4gICAgICAgIH19XG4gICAgICAvPlxuICAgIDwvZGl2PlxuICApO1xufTtcbmV4cG9ydCBkZWZhdWx0IFZhbGlkYXRpb25Gb3JtO1xuIl19
@@ -161,6 +161,10 @@ var parseNotificationAdvancedSelection = function parseNotificationAdvancedSelec
161
161
  });
162
162
  selection.set = set;
163
163
  }
164
+
165
+ if (selection && selection.set !== undefined && selection.set === null) {
166
+ selection.set = [];
167
+ }
164
168
  });
165
169
  return notification;
166
170
  };
@@ -237,4 +241,4 @@ var formatNotification = function formatNotification(newNotification) {
237
241
  };
238
242
 
239
243
  exports.formatNotification = formatNotification;
240
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9Ob3RpZmljYXRpb25zUGFnZVYyL2NvbXBvbmVudHMvTm90aWZpY2F0aW9uc1V0aWxzLnRzIl0sIm5hbWVzIjpbImhhbmRsZU5vdGlmaWNhdGlvblR5cGUiLCJvcHRpb24iLCJub3RpZmljYXRpb24iLCJzZXROZXdOb3RpZmljYXRpb24iLCJ2YWx1ZSIsImF2YWlsYWJsZV90eXBlcyIsImZpbmQiLCJ0eXBlIiwicHJldlN0YXRlIiwiaGFuZGxlU2V2ZXJpdGllcyIsImUiLCJ0YXJnZXQiLCJzZXZlcml0eSIsImhhbmRsZVdhdGVyQXV0aG9yaXRpZXMiLCJuZXdOb3RpZmljYXRpb24iLCJ3YXRlcl9hdXRob3JpdGllcyIsImhhbmRsZVNlbGVjdGlvbkFuZFNldCIsImhhbmRsZVNvdXJjZXMiLCJwb2ludHMiLCJoYW5kbGVUYWdzIiwidGFncyIsImhhbmRsZVNlbnNvcnMiLCJzZW5zb3JzIiwiZmllbGQiLCJ1bmRlZmluZWQiLCJzZWxlY3Rpb25fdHlwZSIsInNldCIsImZvckVhY2giLCJwdXNoIiwiSlNPTiIsInN0cmluZ2lmeSIsImhhbmRsZVNlbmRWaWEiLCJzZXRNb2RhbERldGFpbHMiLCJhY3Rpb25zIiwib3BlbiIsImluc3RhbmNlIiwiaGFuZGxlTm90aWZpY2F0aW9uU2FtcGxlIiwiY2hlY2tlZCIsInBhcnNlZFZhbHVlIiwicHVtcF9vbmx5IiwidmFsaWRhdGVWYWx1ZUlzTm90QW5PYmplY3QiLCJBcnJheSIsImlzQXJyYXkiLCJwYXJzZU5vdGlmaWNhdGlvbkFkdmFuY2VkU2VsZWN0aW9uIiwid2F0ZXJBdXRob3JpdGllcyIsImFsbF9hZHZhbmNlZF9zZWxlY3Rpb25zIiwic2VsZWN0aW9uIiwicG9pbnQiLCJpZCIsImRlbGV0ZUF0dHJpYnV0ZXMiLCJmb3JtYXRTZW5kVmlhIiwiZm9ybWF0dGVkVmFsdWUiLCJmbGF0IiwicGFyc2VTZXZlcml0aWVzIiwiZm9ybWF0Tm90aWZpY2F0aW9uIiwibm90aWZpY2F0aW9uQ29weSIsInBhcnNlIiwibm90aWZpY2F0aW9uVG9TYXZlIiwidXNlciIsImFsZXJ0X2NvbmZpZ3NfYXR0cmlidXRlcyIsIm5vdGlmaWNhdGlvbldpdGhUaW1lU3RhbXAiLCJub3ciLCJEYXRlIiwiZ2V0VGltZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBRU8sSUFBTUEsc0JBQXNCLEdBQUcsU0FBekJBLHNCQUF5QixDQUNwQ0MsTUFEb0MsRUFFcENDLFlBRm9DLEVBR3BDQyxrQkFIb0MsRUFJakM7QUFDSCxNQUFNQyxLQUFLLEdBQUdGLFlBQVksQ0FBQ0csZUFBYixDQUE4QkMsSUFBOUIsQ0FDWixVQUFDQyxJQUFEO0FBQUEsV0FBVUEsSUFBSSxLQUFLTixNQUFNLENBQUNHLEtBQTFCO0FBQUEsR0FEWSxDQUFkO0FBR0EsTUFBSUEsS0FBSixFQUNFRCxrQkFBa0IsQ0FBQyxVQUFDSyxTQUFEO0FBQUEsdUVBQ2RBLFNBRGM7QUFFakJELE1BQUFBLElBQUksRUFBRUg7QUFGVztBQUFBLEdBQUQsQ0FBbEI7QUFJSCxDQWJNOzs7O0FBZUEsSUFBTUssZ0JBQWdCLEdBQUcsU0FBbkJBLGdCQUFtQixDQUM5QkMsQ0FEOEIsRUFFOUJQLGtCQUY4QixFQUczQjtBQUNILE1BQU1DLEtBQUssR0FBR00sQ0FBQyxDQUFDQyxNQUFGLENBQVNQLEtBQXZCO0FBRUFELEVBQUFBLGtCQUFrQixDQUFDLFVBQUNLLFNBQUQ7QUFBQSx1RUFDZEEsU0FEYztBQUVqQkksTUFBQUEsUUFBUSxFQUFFUjtBQUZPO0FBQUEsR0FBRCxDQUFsQjtBQUlELENBVk07Ozs7QUFXQSxJQUFNUyxzQkFBc0IsR0FBRyxTQUF6QkEsc0JBQXlCLENBQ3BDSCxDQURvQyxFQUtqQztBQUFBLE1BSEhULE1BR0csdUVBSFcsRUFHWDtBQUFBLE1BRkhhLGVBRUc7QUFBQSxNQURIWCxrQkFDRztBQUNILE1BQU1DLEtBQUssbUNBQVFVLGVBQWUsQ0FBQ0MsaUJBQXhCLENBQVg7QUFDQUMsRUFBQUEscUJBQXFCLENBQ25CWixLQURtQixFQUVuQixtQkFGbUIsRUFHbkJNLENBSG1CLEVBSW5CVCxNQUptQixFQUtuQkUsa0JBTG1CLENBQXJCO0FBT0QsQ0FkTTs7OztBQWdCQSxJQUFNYyxhQUFhLEdBQUcsU0FBaEJBLGFBQWdCLENBQzNCUCxDQUQyQixFQUt4QjtBQUFBLE1BSEhULE1BR0csdUVBSFcsRUFHWDtBQUFBLE1BRkhhLGVBRUc7QUFBQSxNQURIWCxrQkFDRztBQUNILE1BQU1DLEtBQUssbUNBQVFVLGVBQWUsQ0FBQ0ksTUFBeEIsQ0FBWDtBQUNBRixFQUFBQSxxQkFBcUIsQ0FBQ1osS0FBRCxFQUFRLFFBQVIsRUFBa0JNLENBQWxCLEVBQXFCVCxNQUFyQixFQUE2QkUsa0JBQTdCLENBQXJCO0FBQ0QsQ0FSTTs7OztBQVVBLElBQU1nQixVQUFVLEdBQUcsU0FBYkEsVUFBYSxDQUN4QlQsQ0FEd0IsRUFLckI7QUFBQSxNQUhIVCxNQUdHLHVFQUhXLEVBR1g7QUFBQSxNQUZIYSxlQUVHO0FBQUEsTUFESFgsa0JBQ0c7QUFDSCxNQUFNQyxLQUFLLG1DQUFRVSxlQUFlLENBQUNNLElBQXhCLENBQVg7QUFDQUosRUFBQUEscUJBQXFCLENBQUNaLEtBQUQsRUFBUSxNQUFSLEVBQWdCTSxDQUFoQixFQUFtQlQsTUFBbkIsRUFBMkJFLGtCQUEzQixDQUFyQjtBQUNELENBUk07Ozs7QUFVQSxJQUFNa0IsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQixDQUMzQlgsQ0FEMkIsRUFLeEI7QUFBQSxNQUhIVCxNQUdHLHVFQUhXLEVBR1g7QUFBQSxNQUZIYSxlQUVHO0FBQUEsTUFESFgsa0JBQ0c7QUFDSCxNQUFNQyxLQUFLLG1DQUFRVSxlQUFlLENBQUNRLE9BQXhCLENBQVg7QUFDQU4sRUFBQUEscUJBQXFCLENBQUNaLEtBQUQsRUFBUSxTQUFSLEVBQW1CTSxDQUFuQixFQUFzQlQsTUFBdEIsRUFBOEJFLGtCQUE5QixDQUFyQjtBQUNELENBUk07Ozs7QUFVQSxJQUFNYSxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXdCLENBQ25DWixLQURtQyxFQUVuQ21CLEtBRm1DLEVBR25DYixDQUhtQyxFQU1oQztBQUFBLE1BRkhULE1BRUcsdUVBRlcsRUFFWDtBQUFBLE1BREhFLGtCQUNHOztBQUNILE1BQUlPLENBQUMsS0FBS2MsU0FBTixJQUFtQmQsQ0FBQyxDQUFDQyxNQUFGLEtBQWFhLFNBQXBDLEVBQStDO0FBQzdDcEIsSUFBQUEsS0FBSyxDQUFDcUIsY0FBTixHQUF1QmYsQ0FBQyxDQUFDQyxNQUFGLENBQVNQLEtBQWhDO0FBQ0FELElBQUFBLGtCQUFrQixDQUFDLFVBQUNLLFNBQUQ7QUFBQSx5RUFDZEEsU0FEYyx5Q0FFaEJlLEtBRmdCLEVBRVJuQixLQUZRO0FBQUEsS0FBRCxDQUFsQjtBQUlELEdBTkQsTUFNTztBQUNMLFFBQU1zQixHQUFhLEdBQUcsRUFBdEI7QUFDQXpCLElBQUFBLE1BQU0sQ0FBQ3lCLEdBQVAsQ0FBV0MsT0FBWCxDQUFtQixVQUFDMUIsTUFBRCxFQUFZO0FBQzdCeUIsTUFBQUEsR0FBRyxDQUFDRSxJQUFKLENBQVNDLElBQUksQ0FBQ0MsU0FBTCxDQUFlN0IsTUFBTSxDQUFDRyxLQUF0QixDQUFUO0FBQ0QsS0FGRDtBQUlBQSxJQUFBQSxLQUFLLENBQUNxQixjQUFOLEdBQXVCeEIsTUFBTSxDQUFDd0IsY0FBOUI7O0FBQ0EsUUFBSXJCLEtBQUssQ0FBQ3NCLEdBQU4sS0FBYyxJQUFsQixFQUF3QjtBQUN0QnRCLE1BQUFBLEtBQUssQ0FBQ3NCLEdBQU4sR0FBWSxFQUFaO0FBQ0QsS0FGRCxNQUVPO0FBQ0x0QixNQUFBQSxLQUFLLENBQUNzQixHQUFOLEdBQVlBLEdBQVo7QUFDRDs7QUFFRHZCLElBQUFBLGtCQUFrQixDQUFDLFVBQUNLLFNBQUQ7QUFBQSx5RUFDZEEsU0FEYyx5Q0FFaEJlLEtBRmdCLEVBRVJuQixLQUZRO0FBQUEsS0FBRCxDQUFsQjtBQUlEO0FBQ0YsQ0EvQk07Ozs7QUFpQ0EsSUFBTTJCLGFBQWEsR0FBRyxTQUFoQkEsYUFBZ0IsQ0FDM0JyQixDQUQyQixFQUUzQkksZUFGMkIsRUFHM0JYLGtCQUgyQixFQUkzQjZCLGVBSjJCLEVBS3hCO0FBQ0gsTUFBTTVCLEtBQUssbUNBQVFVLGVBQWUsQ0FBQ21CLE9BQXhCLENBQVg7QUFDQSxNQUFNVixLQUFLLEdBQUdiLENBQUMsQ0FBQ0MsTUFBRixDQUFTUCxLQUF2QjtBQUNBQSxFQUFBQSxLQUFLLENBQUNtQixLQUFELENBQUwsR0FBZSxDQUFDbkIsS0FBSyxDQUFDbUIsS0FBRCxDQUFyQjs7QUFFQSxNQUFJQSxLQUFLLEtBQUssS0FBVixJQUFtQkEsS0FBSyxLQUFLLFVBQWpDLEVBQTZDO0FBQzNDUyxJQUFBQSxlQUFlLENBQUM7QUFBRUUsTUFBQUEsSUFBSSxFQUFFLElBQVI7QUFBY0MsTUFBQUEsUUFBUSxFQUFFWjtBQUF4QixLQUFELENBQWY7QUFDRDs7QUFFRHBCLEVBQUFBLGtCQUFrQixDQUFDLFVBQUNLLFNBQUQ7QUFBQSx1RUFDZEEsU0FEYztBQUVqQnlCLE1BQUFBLE9BQU8sRUFBRTdCO0FBRlE7QUFBQSxHQUFELENBQWxCO0FBSUQsQ0FsQk07Ozs7QUFvQkEsSUFBTWdDLHdCQUF3QixHQUFHLFNBQTNCQSx3QkFBMkIsQ0FDdEMxQixDQURzQyxFQUV0Q1Asa0JBRnNDLEVBR25DO0FBQ0gsTUFBTUMsS0FBSyxHQUFHTSxDQUFDLENBQUNDLE1BQUYsQ0FBUzBCLE9BQXZCO0FBQ0EsTUFBSUMsV0FBVyxHQUFHbEMsS0FBSyxHQUFHLEdBQUgsR0FBUyxHQUFoQztBQUNBRCxFQUFBQSxrQkFBa0IsQ0FBQyxVQUFDSyxTQUFEO0FBQUEsdUVBQ2RBLFNBRGM7QUFFakIrQixNQUFBQSxTQUFTLEVBQUVEO0FBRk07QUFBQSxHQUFELENBQWxCO0FBSUQsQ0FWTTs7OztBQVlBLElBQU1FLDBCQUEwQixHQUFHLFNBQTdCQSwwQkFBNkIsQ0FBQ3BDLEtBQUQsRUFBVztBQUNuRCxTQUNFLHNCQUFPQSxLQUFQLE1BQWlCLFFBQWpCLElBQ0EsQ0FBQ3FDLEtBQUssQ0FBQ0MsT0FBTixDQUFjdEMsS0FBZCxDQURELElBRUFBLEtBQUssS0FBSyxJQUZWLElBR0FBLEtBQUssS0FBS29CLFNBSlo7QUFNRCxDQVBNOzs7O0FBU0EsSUFBTW1CLGtDQUFrQyxHQUFHLFNBQXJDQSxrQ0FBcUMsQ0FBQ3pDLFlBQUQsRUFBa0I7QUFDbEU7QUFFQSxNQUFJZ0IsTUFBTSxHQUFHaEIsWUFBWSxDQUFDZ0IsTUFBMUI7QUFDQSxNQUFJMEIsZ0JBQWdCLEdBQUcxQyxZQUFZLENBQUNhLGlCQUFwQztBQUNBLE1BQUlLLElBQUksR0FBR2xCLFlBQVksQ0FBQ2tCLElBQXhCO0FBQ0EsTUFBSUUsT0FBTyxHQUFHcEIsWUFBWSxDQUFDb0IsT0FBM0I7QUFFQSxNQUFNdUIsdUJBQXVCLEdBQUcsQ0FBQzNCLE1BQUQsRUFBUzBCLGdCQUFULEVBQTJCeEIsSUFBM0IsRUFBaUNFLE9BQWpDLENBQWhDO0FBRUF1QixFQUFBQSx1QkFBdUIsQ0FBQ2xCLE9BQXhCLENBQWdDLFVBQUNtQixTQUFELEVBQWU7QUFDN0MsUUFDRU4sMEJBQTBCLENBQ3hCTSxTQUFTLEtBQUt0QixTQUFkLElBQTJCc0IsU0FBUyxDQUFDcEIsR0FBVixLQUFrQixJQUE3QyxJQUFxRG9CLFNBQVMsQ0FBQ3BCLEdBQVYsQ0FBYyxDQUFkLENBRDdCLENBRDVCLEVBSUU7QUFDQSxVQUFNQSxHQUFhLEdBQUcsRUFBdEI7QUFDQW9CLE1BQUFBLFNBQVMsQ0FBQ3BCLEdBQVYsQ0FBY0MsT0FBZCxDQUFzQixVQUFDb0IsS0FBRCxFQUFXO0FBQy9CckIsUUFBQUEsR0FBRyxDQUFDRSxJQUFKLENBQVNDLElBQUksQ0FBQ0MsU0FBTCxDQUFlaUIsS0FBSyxDQUFDQyxFQUFyQixDQUFUO0FBQ0QsT0FGRDtBQUlBRixNQUFBQSxTQUFTLENBQUNwQixHQUFWLEdBQWdCQSxHQUFoQjtBQUNEO0FBQ0YsR0FiRDtBQWVBLFNBQU94QixZQUFQO0FBQ0QsQ0ExQk07Ozs7QUE0QkEsSUFBTStDLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBbUIsQ0FBQy9DLFlBQUQsRUFBZVksZUFBZixFQUFtQztBQUNqRTtBQUVBLFNBQU9aLFlBQVksQ0FBQ0csZUFBcEI7QUFDQSxNQUFJUyxlQUFlLENBQUNQLElBQWhCLEtBQXlCLHNCQUE3QixFQUNFLE9BQU9MLFlBQVksQ0FBQ1UsUUFBcEI7QUFDRixNQUFJRSxlQUFlLENBQUNQLElBQWhCLEtBQXlCLHNCQUE3QixFQUNFLE9BQU9MLFlBQVksQ0FBQ3FDLFNBQXBCO0FBQ0YsTUFBSXpCLGVBQWUsQ0FBQ1AsSUFBaEIsS0FBeUIsNEJBQTdCLEVBQ0UsT0FBT0wsWUFBWSxDQUFDZ0IsTUFBcEI7QUFDRixNQUFJSixlQUFlLENBQUNQLElBQWhCLEtBQXlCLDRCQUE3QixFQUNFLE9BQU9MLFlBQVksQ0FBQ2tCLElBQXBCO0FBQ0YsTUFBSU4sZUFBZSxDQUFDUCxJQUFoQixLQUF5QixnQ0FBN0IsRUFDRSxPQUFPTCxZQUFZLENBQUNvQixPQUFwQjtBQUVGcEIsRUFBQUEsWUFBWSxDQUFDLFlBQUQsQ0FBWixHQUE2QkEsWUFBWSxDQUFDSyxJQUExQztBQUNBTCxFQUFBQSxZQUFZLENBQUMsVUFBRCxDQUFaLEdBQTJCLENBQTNCO0FBRUEsU0FBT0EsWUFBUDtBQUNELENBbkJNOzs7O0FBcUJBLElBQU1nRCxhQUFhLEdBQUcsU0FBaEJBLGFBQWdCLENBQUNoRCxZQUFELEVBQWtCO0FBQzdDLE1BQUlpRCxjQUFtQixHQUFHLEVBQTFCO0FBQ0EsTUFBSWpELFlBQVksQ0FBQytCLE9BQWIsQ0FBcUIsVUFBckIsQ0FBSixFQUNFa0IsY0FBYyxDQUFDdkIsSUFBZixDQUFvQixDQUFDLG9CQUFELEVBQXVCLEdBQXZCLENBQXBCO0FBQ0YsTUFBSTFCLFlBQVksQ0FBQytCLE9BQWIsQ0FBcUIsT0FBckIsQ0FBSixFQUNFa0IsY0FBYyxDQUFDdkIsSUFBZixDQUFvQixDQUFDLGlCQUFELEVBQW9CLEdBQXBCLENBQXBCO0FBQ0YsTUFBSTFCLFlBQVksQ0FBQytCLE9BQWIsQ0FBcUIsS0FBckIsQ0FBSixFQUFpQ2tCLGNBQWMsQ0FBQ3ZCLElBQWYsQ0FBb0IsQ0FBQyxlQUFELEVBQWtCLEdBQWxCLENBQXBCO0FBQ2pDMUIsRUFBQUEsWUFBWSxDQUFDK0IsT0FBYixHQUF1QmtCLGNBQWMsQ0FBQ0MsSUFBZixFQUF2QjtBQUVBLFNBQU9sRCxZQUFQO0FBQ0QsQ0FWTTs7OztBQVlBLElBQU1tRCxlQUFlLEdBQUcsU0FBbEJBLGVBQWtCLENBQUNuRCxZQUFELEVBQWtCO0FBQy9DLE1BQUlFLEtBQUo7O0FBQ0EsVUFBUUYsWUFBWSxDQUFDVSxRQUFyQjtBQUNFLFNBQUssUUFBTDtBQUNFUixNQUFBQSxLQUFLLEdBQUcsR0FBUjtBQUNBOztBQUNGLFNBQUssTUFBTDtBQUNFQSxNQUFBQSxLQUFLLEdBQUcsR0FBUjtBQUNBOztBQUNGLFNBQUssU0FBTDtBQUNFQSxNQUFBQSxLQUFLLEdBQUcsR0FBUjtBQVJKOztBQVVBRixFQUFBQSxZQUFZLENBQUNVLFFBQWIsR0FBd0JSLEtBQXhCO0FBQ0EsU0FBT0YsWUFBUDtBQUNELENBZE07Ozs7QUFnQkEsSUFBTW9ELGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsQ0FBQ3hDLGVBQUQsRUFBcUI7QUFDckQsTUFBSXlDLGdCQUFnQixHQUFHMUIsSUFBSSxDQUFDMkIsS0FBTCxDQUFXM0IsSUFBSSxDQUFDQyxTQUFMLENBQWVoQixlQUFmLENBQVgsQ0FBdkI7QUFDQXlDLEVBQUFBLGdCQUFnQixHQUFHWixrQ0FBa0MsQ0FBQ1ksZ0JBQUQsQ0FBckQ7QUFDQUEsRUFBQUEsZ0JBQWdCLEdBQUdMLGFBQWEsQ0FBQ0ssZ0JBQUQsQ0FBaEM7QUFDQUEsRUFBQUEsZ0JBQWdCLEdBQUdOLGdCQUFnQixDQUFDTSxnQkFBRCxFQUFtQnpDLGVBQW5CLENBQW5DO0FBQ0F5QyxFQUFBQSxnQkFBZ0IsR0FBR0YsZUFBZSxDQUFDRSxnQkFBRCxDQUFsQztBQUVBLE1BQUlFLGtCQUFrQixHQUFHO0FBQ3ZCQyxJQUFBQSxJQUFJLEVBQUU7QUFDSkMsTUFBQUEsd0JBQXdCLGtDQUNuQkosZ0JBRG1CO0FBRHBCO0FBRGlCLEdBQXpCO0FBUUEsTUFBTUsseUJBQXlCLEdBQUc7QUFDaENGLElBQUFBLElBQUksRUFBRTtBQUNKQyxNQUFBQSx3QkFBd0IsRUFBRTtBQUR0QjtBQUQwQixHQUFsQztBQU1BLE1BQU1FLEdBQUcsR0FBRyxJQUFJQyxJQUFKLEVBQVo7QUFDQUYsRUFBQUEseUJBQXlCLENBQUNGLElBQTFCLENBQStCQyx3QkFBL0IsV0FBMkRFLEdBQUcsQ0FBQ0UsT0FBSixFQUEzRCxLQUNFTixrQkFBa0IsQ0FBQ0MsSUFBbkIsQ0FBd0JDLHdCQUQxQjtBQUdBLFNBQU9DLHlCQUFQO0FBQ0QsQ0ExQk0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG5leHBvcnQgY29uc3QgaGFuZGxlTm90aWZpY2F0aW9uVHlwZSA9IChcbiAgb3B0aW9uLFxuICBub3RpZmljYXRpb24sXG4gIHNldE5ld05vdGlmaWNhdGlvbixcbikgPT4ge1xuICBjb25zdCB2YWx1ZSA9IG5vdGlmaWNhdGlvbi5hdmFpbGFibGVfdHlwZXMhLmZpbmQoXG4gICAgKHR5cGUpID0+IHR5cGUgPT09IG9wdGlvbi52YWx1ZSxcbiAgKTtcbiAgaWYgKHZhbHVlKVxuICAgIHNldE5ld05vdGlmaWNhdGlvbigocHJldlN0YXRlKSA9PiAoe1xuICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgdHlwZTogdmFsdWUsXG4gICAgfSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZVNldmVyaXRpZXMgPSAoXG4gIGU6IFJlYWN0LkNoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+LFxuICBzZXROZXdOb3RpZmljYXRpb24sXG4pID0+IHtcbiAgY29uc3QgdmFsdWUgPSBlLnRhcmdldC52YWx1ZTtcblxuICBzZXROZXdOb3RpZmljYXRpb24oKHByZXZTdGF0ZSkgPT4gKHtcbiAgICAuLi5wcmV2U3RhdGUsXG4gICAgc2V2ZXJpdHk6IHZhbHVlLFxuICB9KSk7XG59O1xuZXhwb3J0IGNvbnN0IGhhbmRsZVdhdGVyQXV0aG9yaXRpZXMgPSAoXG4gIGU6IFJlYWN0LkNoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+IHwgdW5kZWZpbmVkLFxuICBvcHRpb246IGFueSA9ICcnLFxuICBuZXdOb3RpZmljYXRpb24sXG4gIHNldE5ld05vdGlmaWNhdGlvbixcbikgPT4ge1xuICBjb25zdCB2YWx1ZSA9IHsgLi4ubmV3Tm90aWZpY2F0aW9uLndhdGVyX2F1dGhvcml0aWVzIH07XG4gIGhhbmRsZVNlbGVjdGlvbkFuZFNldChcbiAgICB2YWx1ZSxcbiAgICAnd2F0ZXJfYXV0aG9yaXRpZXMnLFxuICAgIGUsXG4gICAgb3B0aW9uLFxuICAgIHNldE5ld05vdGlmaWNhdGlvbixcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVTb3VyY2VzID0gKFxuICBlOiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PiB8IHVuZGVmaW5lZCxcbiAgb3B0aW9uOiBhbnkgPSAnJyxcbiAgbmV3Tm90aWZpY2F0aW9uLFxuICBzZXROZXdOb3RpZmljYXRpb24sXG4pID0+IHtcbiAgY29uc3QgdmFsdWUgPSB7IC4uLm5ld05vdGlmaWNhdGlvbi5wb2ludHMgfTtcbiAgaGFuZGxlU2VsZWN0aW9uQW5kU2V0KHZhbHVlLCAncG9pbnRzJywgZSwgb3B0aW9uLCBzZXROZXdOb3RpZmljYXRpb24pO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZVRhZ3MgPSAoXG4gIGU6IFJlYWN0LkNoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+IHwgdW5kZWZpbmVkLFxuICBvcHRpb246IGFueSA9ICcnLFxuICBuZXdOb3RpZmljYXRpb24sXG4gIHNldE5ld05vdGlmaWNhdGlvbixcbikgPT4ge1xuICBjb25zdCB2YWx1ZSA9IHsgLi4ubmV3Tm90aWZpY2F0aW9uLnRhZ3MgfTtcbiAgaGFuZGxlU2VsZWN0aW9uQW5kU2V0KHZhbHVlLCAndGFncycsIGUsIG9wdGlvbiwgc2V0TmV3Tm90aWZpY2F0aW9uKTtcbn07XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVTZW5zb3JzID0gKFxuICBlOiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PiB8IHVuZGVmaW5lZCxcbiAgb3B0aW9uOiBhbnkgPSAnJyxcbiAgbmV3Tm90aWZpY2F0aW9uLFxuICBzZXROZXdOb3RpZmljYXRpb24sXG4pID0+IHtcbiAgY29uc3QgdmFsdWUgPSB7IC4uLm5ld05vdGlmaWNhdGlvbi5zZW5zb3JzIH07XG4gIGhhbmRsZVNlbGVjdGlvbkFuZFNldCh2YWx1ZSwgJ3NlbnNvcnMnLCBlLCBvcHRpb24sIHNldE5ld05vdGlmaWNhdGlvbik7XG59O1xuXG5leHBvcnQgY29uc3QgaGFuZGxlU2VsZWN0aW9uQW5kU2V0ID0gKFxuICB2YWx1ZSxcbiAgZmllbGQ6IHN0cmluZyxcbiAgZTogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4gfCB1bmRlZmluZWQsXG4gIG9wdGlvbjogYW55ID0gJycsXG4gIHNldE5ld05vdGlmaWNhdGlvbixcbikgPT4ge1xuICBpZiAoZSAhPT0gdW5kZWZpbmVkICYmIGUudGFyZ2V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICB2YWx1ZS5zZWxlY3Rpb25fdHlwZSA9IGUudGFyZ2V0LnZhbHVlO1xuICAgIHNldE5ld05vdGlmaWNhdGlvbigocHJldlN0YXRlKSA9PiAoe1xuICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgW2ZpZWxkXTogdmFsdWUsXG4gICAgfSkpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHNldDogc3RyaW5nW10gPSBbXTtcbiAgICBvcHRpb24uc2V0LmZvckVhY2goKG9wdGlvbikgPT4ge1xuICAgICAgc2V0LnB1c2goSlNPTi5zdHJpbmdpZnkob3B0aW9uLnZhbHVlKSk7XG4gICAgfSk7XG5cbiAgICB2YWx1ZS5zZWxlY3Rpb25fdHlwZSA9IG9wdGlvbi5zZWxlY3Rpb25fdHlwZTtcbiAgICBpZiAodmFsdWUuc2V0ID09PSBudWxsKSB7XG4gICAgICB2YWx1ZS5zZXQgPSBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFsdWUuc2V0ID0gc2V0O1xuICAgIH1cblxuICAgIHNldE5ld05vdGlmaWNhdGlvbigocHJldlN0YXRlKSA9PiAoe1xuICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgW2ZpZWxkXTogdmFsdWUsXG4gICAgfSkpO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgaGFuZGxlU2VuZFZpYSA9IChcbiAgZTogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4sXG4gIG5ld05vdGlmaWNhdGlvbixcbiAgc2V0TmV3Tm90aWZpY2F0aW9uLFxuICBzZXRNb2RhbERldGFpbHMsXG4pID0+IHtcbiAgY29uc3QgdmFsdWUgPSB7IC4uLm5ld05vdGlmaWNhdGlvbi5hY3Rpb25zIH07XG4gIGNvbnN0IGZpZWxkID0gZS50YXJnZXQudmFsdWU7XG4gIHZhbHVlW2ZpZWxkXSA9ICF2YWx1ZVtmaWVsZF07XG5cbiAgaWYgKGZpZWxkID09PSAnc21zJyB8fCBmaWVsZCA9PT0gJ3RlbGVncmFtJykge1xuICAgIHNldE1vZGFsRGV0YWlscyh7IG9wZW46IHRydWUsIGluc3RhbmNlOiBmaWVsZCB9KTtcbiAgfVxuXG4gIHNldE5ld05vdGlmaWNhdGlvbigocHJldlN0YXRlKSA9PiAoe1xuICAgIC4uLnByZXZTdGF0ZSxcbiAgICBhY3Rpb25zOiB2YWx1ZSxcbiAgfSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZU5vdGlmaWNhdGlvblNhbXBsZSA9IChcbiAgZTogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4sXG4gIHNldE5ld05vdGlmaWNhdGlvbixcbikgPT4ge1xuICBjb25zdCB2YWx1ZSA9IGUudGFyZ2V0LmNoZWNrZWQ7XG4gIGxldCBwYXJzZWRWYWx1ZSA9IHZhbHVlID8gJzEnIDogJzAnO1xuICBzZXROZXdOb3RpZmljYXRpb24oKHByZXZTdGF0ZSkgPT4gKHtcbiAgICAuLi5wcmV2U3RhdGUsXG4gICAgcHVtcF9vbmx5OiBwYXJzZWRWYWx1ZSxcbiAgfSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlVmFsdWVJc05vdEFuT2JqZWN0ID0gKHZhbHVlKSA9PiB7XG4gIHJldHVybiAoXG4gICAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJlxuICAgICFBcnJheS5pc0FycmF5KHZhbHVlKSAmJlxuICAgIHZhbHVlICE9PSBudWxsICYmXG4gICAgdmFsdWUgIT09IHVuZGVmaW5lZFxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IHBhcnNlTm90aWZpY2F0aW9uQWR2YW5jZWRTZWxlY3Rpb24gPSAobm90aWZpY2F0aW9uKSA9PiB7XG4gIC8vIElmIHRoZXJlJ2xsIGJlIGEgZnV0dXJlIHJlcXVpcmVtZW50IHRvIGFkZCBhbm90aGVyIEFkdmFuY2VkU2VsZWN0aW9uIGZpZWxkcywgcGxlYXNlIGFkZCB0aGVtIHJpZ2h0IGJlbG93XG5cbiAgbGV0IHBvaW50cyA9IG5vdGlmaWNhdGlvbi5wb2ludHM7XG4gIGxldCB3YXRlckF1dGhvcml0aWVzID0gbm90aWZpY2F0aW9uLndhdGVyX2F1dGhvcml0aWVzO1xuICBsZXQgdGFncyA9IG5vdGlmaWNhdGlvbi50YWdzO1xuICBsZXQgc2Vuc29ycyA9IG5vdGlmaWNhdGlvbi5zZW5zb3JzO1xuXG4gIGNvbnN0IGFsbF9hZHZhbmNlZF9zZWxlY3Rpb25zID0gW3BvaW50cywgd2F0ZXJBdXRob3JpdGllcywgdGFncywgc2Vuc29yc107XG5cbiAgYWxsX2FkdmFuY2VkX3NlbGVjdGlvbnMuZm9yRWFjaCgoc2VsZWN0aW9uKSA9PiB7XG4gICAgaWYgKFxuICAgICAgdmFsaWRhdGVWYWx1ZUlzTm90QW5PYmplY3QoXG4gICAgICAgIHNlbGVjdGlvbiAhPT0gdW5kZWZpbmVkICYmIHNlbGVjdGlvbi5zZXQgIT09IG51bGwgJiYgc2VsZWN0aW9uLnNldFswXSxcbiAgICAgIClcbiAgICApIHtcbiAgICAgIGNvbnN0IHNldDogc3RyaW5nW10gPSBbXTtcbiAgICAgIHNlbGVjdGlvbi5zZXQuZm9yRWFjaCgocG9pbnQpID0+IHtcbiAgICAgICAgc2V0LnB1c2goSlNPTi5zdHJpbmdpZnkocG9pbnQuaWQpKTtcbiAgICAgIH0pO1xuXG4gICAgICBzZWxlY3Rpb24uc2V0ID0gc2V0O1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIG5vdGlmaWNhdGlvbjtcbn07XG5cbmV4cG9ydCBjb25zdCBkZWxldGVBdHRyaWJ1dGVzID0gKG5vdGlmaWNhdGlvbiwgbmV3Tm90aWZpY2F0aW9uKSA9PiB7XG4gIC8vIE1ha2Ugc3VyZSB0byByZW1vdmUgdW5uZWNlc3NhcnkgYXR0cmlidXRlcyBmb3Igc29tZSBBbGVydENvbmZpZ3NcblxuICBkZWxldGUgbm90aWZpY2F0aW9uLmF2YWlsYWJsZV90eXBlcztcbiAgaWYgKG5ld05vdGlmaWNhdGlvbi50eXBlICE9PSAnUG9sbHV0aW9uQWxlcnRDb25maWcnKVxuICAgIGRlbGV0ZSBub3RpZmljYXRpb24uc2V2ZXJpdHk7XG4gIGlmIChuZXdOb3RpZmljYXRpb24udHlwZSAhPT0gJ1BvbGx1dGlvbkFsZXJ0Q29uZmlnJylcbiAgICBkZWxldGUgbm90aWZpY2F0aW9uLnB1bXBfb25seTtcbiAgaWYgKG5ld05vdGlmaWNhdGlvbi50eXBlID09PSAnV2JlV2Vla2x5RGlnZXN0QWxlcnRDb25maWcnKVxuICAgIGRlbGV0ZSBub3RpZmljYXRpb24ucG9pbnRzO1xuICBpZiAobmV3Tm90aWZpY2F0aW9uLnR5cGUgIT09ICdXYmVXZWVrbHlEaWdlc3RBbGVydENvbmZpZycpXG4gICAgZGVsZXRlIG5vdGlmaWNhdGlvbi50YWdzO1xuICBpZiAobmV3Tm90aWZpY2F0aW9uLnR5cGUgIT09ICdEYXRhbG9nZ2VyVGhyZXNob2xkQWxlcnRDb25maWcnKVxuICAgIGRlbGV0ZSBub3RpZmljYXRpb24uc2Vuc29ycztcblxuICBub3RpZmljYXRpb25bJ2FsZXJ0X3R5cGUnXSA9IG5vdGlmaWNhdGlvbi50eXBlO1xuICBub3RpZmljYXRpb25bJ19kZXN0cm95J10gPSAwO1xuXG4gIHJldHVybiBub3RpZmljYXRpb247XG59O1xuXG5leHBvcnQgY29uc3QgZm9ybWF0U2VuZFZpYSA9IChub3RpZmljYXRpb24pID0+IHtcbiAgbGV0IGZvcm1hdHRlZFZhbHVlOiBhbnkgPSBbXTtcbiAgaWYgKG5vdGlmaWNhdGlvbi5hY3Rpb25zWyd0ZWxlZ3JhbSddKVxuICAgIGZvcm1hdHRlZFZhbHVlLnB1c2goWydTZW5kVGVsZWdyYW1BY3Rpb24nLCAnMCddKTtcbiAgaWYgKG5vdGlmaWNhdGlvbi5hY3Rpb25zWydlbWFpbCddKVxuICAgIGZvcm1hdHRlZFZhbHVlLnB1c2goWydTZW5kRW1haWxBY3Rpb24nLCAnMCddKTtcbiAgaWYgKG5vdGlmaWNhdGlvbi5hY3Rpb25zWydzbXMnXSkgZm9ybWF0dGVkVmFsdWUucHVzaChbJ1NlbmRTbXNBY3Rpb24nLCAnMCddKTtcbiAgbm90aWZpY2F0aW9uLmFjdGlvbnMgPSBmb3JtYXR0ZWRWYWx1ZS5mbGF0KCk7XG5cbiAgcmV0dXJuIG5vdGlmaWNhdGlvbjtcbn07XG5cbmV4cG9ydCBjb25zdCBwYXJzZVNldmVyaXRpZXMgPSAobm90aWZpY2F0aW9uKSA9PiB7XG4gIGxldCB2YWx1ZTtcbiAgc3dpdGNoIChub3RpZmljYXRpb24uc2V2ZXJpdHkpIHtcbiAgICBjYXNlICdtZWRpdW0nOlxuICAgICAgdmFsdWUgPSAnMCc7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdoaWdoJzpcbiAgICAgIHZhbHVlID0gJzEnO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnZXh0cmVtZSc6XG4gICAgICB2YWx1ZSA9ICcyJztcbiAgfVxuICBub3RpZmljYXRpb24uc2V2ZXJpdHkgPSB2YWx1ZTtcbiAgcmV0dXJuIG5vdGlmaWNhdGlvbjtcbn07XG5cbmV4cG9ydCBjb25zdCBmb3JtYXROb3RpZmljYXRpb24gPSAobmV3Tm90aWZpY2F0aW9uKSA9PiB7XG4gIGxldCBub3RpZmljYXRpb25Db3B5ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShuZXdOb3RpZmljYXRpb24pKTtcbiAgbm90aWZpY2F0aW9uQ29weSA9IHBhcnNlTm90aWZpY2F0aW9uQWR2YW5jZWRTZWxlY3Rpb24obm90aWZpY2F0aW9uQ29weSk7XG4gIG5vdGlmaWNhdGlvbkNvcHkgPSBmb3JtYXRTZW5kVmlhKG5vdGlmaWNhdGlvbkNvcHkpO1xuICBub3RpZmljYXRpb25Db3B5ID0gZGVsZXRlQXR0cmlidXRlcyhub3RpZmljYXRpb25Db3B5LCBuZXdOb3RpZmljYXRpb24pO1xuICBub3RpZmljYXRpb25Db3B5ID0gcGFyc2VTZXZlcml0aWVzKG5vdGlmaWNhdGlvbkNvcHkpO1xuXG4gIGxldCBub3RpZmljYXRpb25Ub1NhdmUgPSB7XG4gICAgdXNlcjoge1xuICAgICAgYWxlcnRfY29uZmlnc19hdHRyaWJ1dGVzOiB7XG4gICAgICAgIC4uLm5vdGlmaWNhdGlvbkNvcHksXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG5cbiAgY29uc3Qgbm90aWZpY2F0aW9uV2l0aFRpbWVTdGFtcCA9IHtcbiAgICB1c2VyOiB7XG4gICAgICBhbGVydF9jb25maWdzX2F0dHJpYnV0ZXM6IHt9LFxuICAgIH0sXG4gIH07XG5cbiAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcbiAgbm90aWZpY2F0aW9uV2l0aFRpbWVTdGFtcC51c2VyLmFsZXJ0X2NvbmZpZ3NfYXR0cmlidXRlc1tgJHtub3cuZ2V0VGltZSgpfWBdID1cbiAgICBub3RpZmljYXRpb25Ub1NhdmUudXNlci5hbGVydF9jb25maWdzX2F0dHJpYnV0ZXM7XG5cbiAgcmV0dXJuIG5vdGlmaWNhdGlvbldpdGhUaW1lU3RhbXA7XG59O1xuIl19
244
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9Ob3RpZmljYXRpb25zUGFnZVYyL2NvbXBvbmVudHMvTm90aWZpY2F0aW9uc1V0aWxzLnRzIl0sIm5hbWVzIjpbImhhbmRsZU5vdGlmaWNhdGlvblR5cGUiLCJvcHRpb24iLCJub3RpZmljYXRpb24iLCJzZXROZXdOb3RpZmljYXRpb24iLCJ2YWx1ZSIsImF2YWlsYWJsZV90eXBlcyIsImZpbmQiLCJ0eXBlIiwicHJldlN0YXRlIiwiaGFuZGxlU2V2ZXJpdGllcyIsImUiLCJ0YXJnZXQiLCJzZXZlcml0eSIsImhhbmRsZVdhdGVyQXV0aG9yaXRpZXMiLCJuZXdOb3RpZmljYXRpb24iLCJ3YXRlcl9hdXRob3JpdGllcyIsImhhbmRsZVNlbGVjdGlvbkFuZFNldCIsImhhbmRsZVNvdXJjZXMiLCJwb2ludHMiLCJoYW5kbGVUYWdzIiwidGFncyIsImhhbmRsZVNlbnNvcnMiLCJzZW5zb3JzIiwiZmllbGQiLCJ1bmRlZmluZWQiLCJzZWxlY3Rpb25fdHlwZSIsInNldCIsImZvckVhY2giLCJwdXNoIiwiSlNPTiIsInN0cmluZ2lmeSIsImhhbmRsZVNlbmRWaWEiLCJzZXRNb2RhbERldGFpbHMiLCJhY3Rpb25zIiwib3BlbiIsImluc3RhbmNlIiwiaGFuZGxlTm90aWZpY2F0aW9uU2FtcGxlIiwiY2hlY2tlZCIsInBhcnNlZFZhbHVlIiwicHVtcF9vbmx5IiwidmFsaWRhdGVWYWx1ZUlzTm90QW5PYmplY3QiLCJBcnJheSIsImlzQXJyYXkiLCJwYXJzZU5vdGlmaWNhdGlvbkFkdmFuY2VkU2VsZWN0aW9uIiwid2F0ZXJBdXRob3JpdGllcyIsImFsbF9hZHZhbmNlZF9zZWxlY3Rpb25zIiwic2VsZWN0aW9uIiwicG9pbnQiLCJpZCIsImRlbGV0ZUF0dHJpYnV0ZXMiLCJmb3JtYXRTZW5kVmlhIiwiZm9ybWF0dGVkVmFsdWUiLCJmbGF0IiwicGFyc2VTZXZlcml0aWVzIiwiZm9ybWF0Tm90aWZpY2F0aW9uIiwibm90aWZpY2F0aW9uQ29weSIsInBhcnNlIiwibm90aWZpY2F0aW9uVG9TYXZlIiwidXNlciIsImFsZXJ0X2NvbmZpZ3NfYXR0cmlidXRlcyIsIm5vdGlmaWNhdGlvbldpdGhUaW1lU3RhbXAiLCJub3ciLCJEYXRlIiwiZ2V0VGltZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBRU8sSUFBTUEsc0JBQXNCLEdBQUcsU0FBekJBLHNCQUF5QixDQUNwQ0MsTUFEb0MsRUFFcENDLFlBRm9DLEVBR3BDQyxrQkFIb0MsRUFJakM7QUFDSCxNQUFNQyxLQUFLLEdBQUdGLFlBQVksQ0FBQ0csZUFBYixDQUE4QkMsSUFBOUIsQ0FDWixVQUFDQyxJQUFEO0FBQUEsV0FBVUEsSUFBSSxLQUFLTixNQUFNLENBQUNHLEtBQTFCO0FBQUEsR0FEWSxDQUFkO0FBR0EsTUFBSUEsS0FBSixFQUNFRCxrQkFBa0IsQ0FBQyxVQUFDSyxTQUFEO0FBQUEsdUVBQ2RBLFNBRGM7QUFFakJELE1BQUFBLElBQUksRUFBRUg7QUFGVztBQUFBLEdBQUQsQ0FBbEI7QUFJSCxDQWJNOzs7O0FBZUEsSUFBTUssZ0JBQWdCLEdBQUcsU0FBbkJBLGdCQUFtQixDQUM5QkMsQ0FEOEIsRUFFOUJQLGtCQUY4QixFQUczQjtBQUNILE1BQU1DLEtBQUssR0FBR00sQ0FBQyxDQUFDQyxNQUFGLENBQVNQLEtBQXZCO0FBRUFELEVBQUFBLGtCQUFrQixDQUFDLFVBQUNLLFNBQUQ7QUFBQSx1RUFDZEEsU0FEYztBQUVqQkksTUFBQUEsUUFBUSxFQUFFUjtBQUZPO0FBQUEsR0FBRCxDQUFsQjtBQUlELENBVk07Ozs7QUFXQSxJQUFNUyxzQkFBc0IsR0FBRyxTQUF6QkEsc0JBQXlCLENBQ3BDSCxDQURvQyxFQUtqQztBQUFBLE1BSEhULE1BR0csdUVBSFcsRUFHWDtBQUFBLE1BRkhhLGVBRUc7QUFBQSxNQURIWCxrQkFDRztBQUNILE1BQU1DLEtBQUssbUNBQVFVLGVBQWUsQ0FBQ0MsaUJBQXhCLENBQVg7QUFDQUMsRUFBQUEscUJBQXFCLENBQ25CWixLQURtQixFQUVuQixtQkFGbUIsRUFHbkJNLENBSG1CLEVBSW5CVCxNQUptQixFQUtuQkUsa0JBTG1CLENBQXJCO0FBT0QsQ0FkTTs7OztBQWdCQSxJQUFNYyxhQUFhLEdBQUcsU0FBaEJBLGFBQWdCLENBQzNCUCxDQUQyQixFQUt4QjtBQUFBLE1BSEhULE1BR0csdUVBSFcsRUFHWDtBQUFBLE1BRkhhLGVBRUc7QUFBQSxNQURIWCxrQkFDRztBQUNILE1BQU1DLEtBQUssbUNBQVFVLGVBQWUsQ0FBQ0ksTUFBeEIsQ0FBWDtBQUNBRixFQUFBQSxxQkFBcUIsQ0FBQ1osS0FBRCxFQUFRLFFBQVIsRUFBa0JNLENBQWxCLEVBQXFCVCxNQUFyQixFQUE2QkUsa0JBQTdCLENBQXJCO0FBQ0QsQ0FSTTs7OztBQVVBLElBQU1nQixVQUFVLEdBQUcsU0FBYkEsVUFBYSxDQUN4QlQsQ0FEd0IsRUFLckI7QUFBQSxNQUhIVCxNQUdHLHVFQUhXLEVBR1g7QUFBQSxNQUZIYSxlQUVHO0FBQUEsTUFESFgsa0JBQ0c7QUFDSCxNQUFNQyxLQUFLLG1DQUFRVSxlQUFlLENBQUNNLElBQXhCLENBQVg7QUFDQUosRUFBQUEscUJBQXFCLENBQUNaLEtBQUQsRUFBUSxNQUFSLEVBQWdCTSxDQUFoQixFQUFtQlQsTUFBbkIsRUFBMkJFLGtCQUEzQixDQUFyQjtBQUNELENBUk07Ozs7QUFVQSxJQUFNa0IsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQixDQUMzQlgsQ0FEMkIsRUFLeEI7QUFBQSxNQUhIVCxNQUdHLHVFQUhXLEVBR1g7QUFBQSxNQUZIYSxlQUVHO0FBQUEsTUFESFgsa0JBQ0c7QUFDSCxNQUFNQyxLQUFLLG1DQUFRVSxlQUFlLENBQUNRLE9BQXhCLENBQVg7QUFDQU4sRUFBQUEscUJBQXFCLENBQUNaLEtBQUQsRUFBUSxTQUFSLEVBQW1CTSxDQUFuQixFQUFzQlQsTUFBdEIsRUFBOEJFLGtCQUE5QixDQUFyQjtBQUNELENBUk07Ozs7QUFVQSxJQUFNYSxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXdCLENBQ25DWixLQURtQyxFQUVuQ21CLEtBRm1DLEVBR25DYixDQUhtQyxFQU1oQztBQUFBLE1BRkhULE1BRUcsdUVBRlcsRUFFWDtBQUFBLE1BREhFLGtCQUNHOztBQUNILE1BQUlPLENBQUMsS0FBS2MsU0FBTixJQUFtQmQsQ0FBQyxDQUFDQyxNQUFGLEtBQWFhLFNBQXBDLEVBQStDO0FBQzdDcEIsSUFBQUEsS0FBSyxDQUFDcUIsY0FBTixHQUF1QmYsQ0FBQyxDQUFDQyxNQUFGLENBQVNQLEtBQWhDO0FBQ0FELElBQUFBLGtCQUFrQixDQUFDLFVBQUNLLFNBQUQ7QUFBQSx5RUFDZEEsU0FEYyx5Q0FFaEJlLEtBRmdCLEVBRVJuQixLQUZRO0FBQUEsS0FBRCxDQUFsQjtBQUlELEdBTkQsTUFNTztBQUNMLFFBQU1zQixHQUFhLEdBQUcsRUFBdEI7QUFDQXpCLElBQUFBLE1BQU0sQ0FBQ3lCLEdBQVAsQ0FBV0MsT0FBWCxDQUFtQixVQUFDMUIsTUFBRCxFQUFZO0FBQzdCeUIsTUFBQUEsR0FBRyxDQUFDRSxJQUFKLENBQVNDLElBQUksQ0FBQ0MsU0FBTCxDQUFlN0IsTUFBTSxDQUFDRyxLQUF0QixDQUFUO0FBQ0QsS0FGRDtBQUlBQSxJQUFBQSxLQUFLLENBQUNxQixjQUFOLEdBQXVCeEIsTUFBTSxDQUFDd0IsY0FBOUI7O0FBQ0EsUUFBSXJCLEtBQUssQ0FBQ3NCLEdBQU4sS0FBYyxJQUFsQixFQUF3QjtBQUN0QnRCLE1BQUFBLEtBQUssQ0FBQ3NCLEdBQU4sR0FBWSxFQUFaO0FBQ0QsS0FGRCxNQUVPO0FBQ0x0QixNQUFBQSxLQUFLLENBQUNzQixHQUFOLEdBQVlBLEdBQVo7QUFDRDs7QUFFRHZCLElBQUFBLGtCQUFrQixDQUFDLFVBQUNLLFNBQUQ7QUFBQSx5RUFDZEEsU0FEYyx5Q0FFaEJlLEtBRmdCLEVBRVJuQixLQUZRO0FBQUEsS0FBRCxDQUFsQjtBQUlEO0FBQ0YsQ0EvQk07Ozs7QUFpQ0EsSUFBTTJCLGFBQWEsR0FBRyxTQUFoQkEsYUFBZ0IsQ0FDM0JyQixDQUQyQixFQUUzQkksZUFGMkIsRUFHM0JYLGtCQUgyQixFQUkzQjZCLGVBSjJCLEVBS3hCO0FBQ0gsTUFBTTVCLEtBQUssbUNBQVFVLGVBQWUsQ0FBQ21CLE9BQXhCLENBQVg7QUFDQSxNQUFNVixLQUFLLEdBQUdiLENBQUMsQ0FBQ0MsTUFBRixDQUFTUCxLQUF2QjtBQUNBQSxFQUFBQSxLQUFLLENBQUNtQixLQUFELENBQUwsR0FBZSxDQUFDbkIsS0FBSyxDQUFDbUIsS0FBRCxDQUFyQjs7QUFFQSxNQUFJQSxLQUFLLEtBQUssS0FBVixJQUFtQkEsS0FBSyxLQUFLLFVBQWpDLEVBQTZDO0FBQzNDUyxJQUFBQSxlQUFlLENBQUM7QUFBRUUsTUFBQUEsSUFBSSxFQUFFLElBQVI7QUFBY0MsTUFBQUEsUUFBUSxFQUFFWjtBQUF4QixLQUFELENBQWY7QUFDRDs7QUFFRHBCLEVBQUFBLGtCQUFrQixDQUFDLFVBQUNLLFNBQUQ7QUFBQSx1RUFDZEEsU0FEYztBQUVqQnlCLE1BQUFBLE9BQU8sRUFBRTdCO0FBRlE7QUFBQSxHQUFELENBQWxCO0FBSUQsQ0FsQk07Ozs7QUFvQkEsSUFBTWdDLHdCQUF3QixHQUFHLFNBQTNCQSx3QkFBMkIsQ0FDdEMxQixDQURzQyxFQUV0Q1Asa0JBRnNDLEVBR25DO0FBQ0gsTUFBTUMsS0FBSyxHQUFHTSxDQUFDLENBQUNDLE1BQUYsQ0FBUzBCLE9BQXZCO0FBQ0EsTUFBSUMsV0FBVyxHQUFHbEMsS0FBSyxHQUFHLEdBQUgsR0FBUyxHQUFoQztBQUNBRCxFQUFBQSxrQkFBa0IsQ0FBQyxVQUFDSyxTQUFEO0FBQUEsdUVBQ2RBLFNBRGM7QUFFakIrQixNQUFBQSxTQUFTLEVBQUVEO0FBRk07QUFBQSxHQUFELENBQWxCO0FBSUQsQ0FWTTs7OztBQVlBLElBQU1FLDBCQUEwQixHQUFHLFNBQTdCQSwwQkFBNkIsQ0FBQ3BDLEtBQUQsRUFBVztBQUNuRCxTQUNFLHNCQUFPQSxLQUFQLE1BQWlCLFFBQWpCLElBQ0EsQ0FBQ3FDLEtBQUssQ0FBQ0MsT0FBTixDQUFjdEMsS0FBZCxDQURELElBRUFBLEtBQUssS0FBSyxJQUZWLElBR0FBLEtBQUssS0FBS29CLFNBSlo7QUFNRCxDQVBNOzs7O0FBU0EsSUFBTW1CLGtDQUFrQyxHQUFHLFNBQXJDQSxrQ0FBcUMsQ0FBQ3pDLFlBQUQsRUFBa0I7QUFDbEU7QUFFQSxNQUFJZ0IsTUFBTSxHQUFHaEIsWUFBWSxDQUFDZ0IsTUFBMUI7QUFDQSxNQUFJMEIsZ0JBQWdCLEdBQUcxQyxZQUFZLENBQUNhLGlCQUFwQztBQUNBLE1BQUlLLElBQUksR0FBR2xCLFlBQVksQ0FBQ2tCLElBQXhCO0FBQ0EsTUFBSUUsT0FBTyxHQUFHcEIsWUFBWSxDQUFDb0IsT0FBM0I7QUFFQSxNQUFNdUIsdUJBQXVCLEdBQUcsQ0FBQzNCLE1BQUQsRUFBUzBCLGdCQUFULEVBQTJCeEIsSUFBM0IsRUFBaUNFLE9BQWpDLENBQWhDO0FBRUF1QixFQUFBQSx1QkFBdUIsQ0FBQ2xCLE9BQXhCLENBQWdDLFVBQUNtQixTQUFELEVBQWU7QUFDN0MsUUFDRU4sMEJBQTBCLENBQ3hCTSxTQUFTLEtBQUt0QixTQUFkLElBQTJCc0IsU0FBUyxDQUFDcEIsR0FBVixLQUFrQixJQUE3QyxJQUFxRG9CLFNBQVMsQ0FBQ3BCLEdBQVYsQ0FBYyxDQUFkLENBRDdCLENBRDVCLEVBSUU7QUFDQSxVQUFNQSxHQUFhLEdBQUcsRUFBdEI7QUFDQW9CLE1BQUFBLFNBQVMsQ0FBQ3BCLEdBQVYsQ0FBY0MsT0FBZCxDQUFzQixVQUFDb0IsS0FBRCxFQUFXO0FBQy9CckIsUUFBQUEsR0FBRyxDQUFDRSxJQUFKLENBQVNDLElBQUksQ0FBQ0MsU0FBTCxDQUFlaUIsS0FBSyxDQUFDQyxFQUFyQixDQUFUO0FBQ0QsT0FGRDtBQUlBRixNQUFBQSxTQUFTLENBQUNwQixHQUFWLEdBQWdCQSxHQUFoQjtBQUNEOztBQUVELFFBQUlvQixTQUFTLElBQUlBLFNBQVMsQ0FBQ3BCLEdBQVYsS0FBa0JGLFNBQS9CLElBQTRDc0IsU0FBUyxDQUFDcEIsR0FBVixLQUFrQixJQUFsRSxFQUF3RTtBQUN0RW9CLE1BQUFBLFNBQVMsQ0FBQ3BCLEdBQVYsR0FBZ0IsRUFBaEI7QUFDRDtBQUNGLEdBakJEO0FBbUJBLFNBQU94QixZQUFQO0FBQ0QsQ0E5Qk07Ozs7QUFnQ0EsSUFBTStDLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBbUIsQ0FBQy9DLFlBQUQsRUFBZVksZUFBZixFQUFtQztBQUNqRTtBQUVBLFNBQU9aLFlBQVksQ0FBQ0csZUFBcEI7QUFDQSxNQUFJUyxlQUFlLENBQUNQLElBQWhCLEtBQXlCLHNCQUE3QixFQUNFLE9BQU9MLFlBQVksQ0FBQ1UsUUFBcEI7QUFDRixNQUFJRSxlQUFlLENBQUNQLElBQWhCLEtBQXlCLHNCQUE3QixFQUNFLE9BQU9MLFlBQVksQ0FBQ3FDLFNBQXBCO0FBQ0YsTUFBSXpCLGVBQWUsQ0FBQ1AsSUFBaEIsS0FBeUIsNEJBQTdCLEVBQ0UsT0FBT0wsWUFBWSxDQUFDZ0IsTUFBcEI7QUFDRixNQUFJSixlQUFlLENBQUNQLElBQWhCLEtBQXlCLDRCQUE3QixFQUNFLE9BQU9MLFlBQVksQ0FBQ2tCLElBQXBCO0FBQ0YsTUFBSU4sZUFBZSxDQUFDUCxJQUFoQixLQUF5QixnQ0FBN0IsRUFDRSxPQUFPTCxZQUFZLENBQUNvQixPQUFwQjtBQUVGcEIsRUFBQUEsWUFBWSxDQUFDLFlBQUQsQ0FBWixHQUE2QkEsWUFBWSxDQUFDSyxJQUExQztBQUNBTCxFQUFBQSxZQUFZLENBQUMsVUFBRCxDQUFaLEdBQTJCLENBQTNCO0FBRUEsU0FBT0EsWUFBUDtBQUNELENBbkJNOzs7O0FBcUJBLElBQU1nRCxhQUFhLEdBQUcsU0FBaEJBLGFBQWdCLENBQUNoRCxZQUFELEVBQWtCO0FBQzdDLE1BQUlpRCxjQUFtQixHQUFHLEVBQTFCO0FBQ0EsTUFBSWpELFlBQVksQ0FBQytCLE9BQWIsQ0FBcUIsVUFBckIsQ0FBSixFQUNFa0IsY0FBYyxDQUFDdkIsSUFBZixDQUFvQixDQUFDLG9CQUFELEVBQXVCLEdBQXZCLENBQXBCO0FBQ0YsTUFBSTFCLFlBQVksQ0FBQytCLE9BQWIsQ0FBcUIsT0FBckIsQ0FBSixFQUNFa0IsY0FBYyxDQUFDdkIsSUFBZixDQUFvQixDQUFDLGlCQUFELEVBQW9CLEdBQXBCLENBQXBCO0FBQ0YsTUFBSTFCLFlBQVksQ0FBQytCLE9BQWIsQ0FBcUIsS0FBckIsQ0FBSixFQUFpQ2tCLGNBQWMsQ0FBQ3ZCLElBQWYsQ0FBb0IsQ0FBQyxlQUFELEVBQWtCLEdBQWxCLENBQXBCO0FBQ2pDMUIsRUFBQUEsWUFBWSxDQUFDK0IsT0FBYixHQUF1QmtCLGNBQWMsQ0FBQ0MsSUFBZixFQUF2QjtBQUVBLFNBQU9sRCxZQUFQO0FBQ0QsQ0FWTTs7OztBQVlBLElBQU1tRCxlQUFlLEdBQUcsU0FBbEJBLGVBQWtCLENBQUNuRCxZQUFELEVBQWtCO0FBQy9DLE1BQUlFLEtBQUo7O0FBQ0EsVUFBUUYsWUFBWSxDQUFDVSxRQUFyQjtBQUNFLFNBQUssUUFBTDtBQUNFUixNQUFBQSxLQUFLLEdBQUcsR0FBUjtBQUNBOztBQUNGLFNBQUssTUFBTDtBQUNFQSxNQUFBQSxLQUFLLEdBQUcsR0FBUjtBQUNBOztBQUNGLFNBQUssU0FBTDtBQUNFQSxNQUFBQSxLQUFLLEdBQUcsR0FBUjtBQVJKOztBQVVBRixFQUFBQSxZQUFZLENBQUNVLFFBQWIsR0FBd0JSLEtBQXhCO0FBQ0EsU0FBT0YsWUFBUDtBQUNELENBZE07Ozs7QUFnQkEsSUFBTW9ELGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsQ0FBQ3hDLGVBQUQsRUFBcUI7QUFDckQsTUFBSXlDLGdCQUFnQixHQUFHMUIsSUFBSSxDQUFDMkIsS0FBTCxDQUFXM0IsSUFBSSxDQUFDQyxTQUFMLENBQWVoQixlQUFmLENBQVgsQ0FBdkI7QUFDQXlDLEVBQUFBLGdCQUFnQixHQUFHWixrQ0FBa0MsQ0FBQ1ksZ0JBQUQsQ0FBckQ7QUFDQUEsRUFBQUEsZ0JBQWdCLEdBQUdMLGFBQWEsQ0FBQ0ssZ0JBQUQsQ0FBaEM7QUFDQUEsRUFBQUEsZ0JBQWdCLEdBQUdOLGdCQUFnQixDQUFDTSxnQkFBRCxFQUFtQnpDLGVBQW5CLENBQW5DO0FBQ0F5QyxFQUFBQSxnQkFBZ0IsR0FBR0YsZUFBZSxDQUFDRSxnQkFBRCxDQUFsQztBQUVBLE1BQUlFLGtCQUFrQixHQUFHO0FBQ3ZCQyxJQUFBQSxJQUFJLEVBQUU7QUFDSkMsTUFBQUEsd0JBQXdCLGtDQUNuQkosZ0JBRG1CO0FBRHBCO0FBRGlCLEdBQXpCO0FBUUEsTUFBTUsseUJBQXlCLEdBQUc7QUFDaENGLElBQUFBLElBQUksRUFBRTtBQUNKQyxNQUFBQSx3QkFBd0IsRUFBRTtBQUR0QjtBQUQwQixHQUFsQztBQU1BLE1BQU1FLEdBQUcsR0FBRyxJQUFJQyxJQUFKLEVBQVo7QUFDQUYsRUFBQUEseUJBQXlCLENBQUNGLElBQTFCLENBQStCQyx3QkFBL0IsV0FBMkRFLEdBQUcsQ0FBQ0UsT0FBSixFQUEzRCxLQUNFTixrQkFBa0IsQ0FBQ0MsSUFBbkIsQ0FBd0JDLHdCQUQxQjtBQUdBLFNBQU9DLHlCQUFQO0FBQ0QsQ0ExQk0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG5leHBvcnQgY29uc3QgaGFuZGxlTm90aWZpY2F0aW9uVHlwZSA9IChcbiAgb3B0aW9uLFxuICBub3RpZmljYXRpb24sXG4gIHNldE5ld05vdGlmaWNhdGlvbixcbikgPT4ge1xuICBjb25zdCB2YWx1ZSA9IG5vdGlmaWNhdGlvbi5hdmFpbGFibGVfdHlwZXMhLmZpbmQoXG4gICAgKHR5cGUpID0+IHR5cGUgPT09IG9wdGlvbi52YWx1ZSxcbiAgKTtcbiAgaWYgKHZhbHVlKVxuICAgIHNldE5ld05vdGlmaWNhdGlvbigocHJldlN0YXRlKSA9PiAoe1xuICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgdHlwZTogdmFsdWUsXG4gICAgfSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZVNldmVyaXRpZXMgPSAoXG4gIGU6IFJlYWN0LkNoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+LFxuICBzZXROZXdOb3RpZmljYXRpb24sXG4pID0+IHtcbiAgY29uc3QgdmFsdWUgPSBlLnRhcmdldC52YWx1ZTtcblxuICBzZXROZXdOb3RpZmljYXRpb24oKHByZXZTdGF0ZSkgPT4gKHtcbiAgICAuLi5wcmV2U3RhdGUsXG4gICAgc2V2ZXJpdHk6IHZhbHVlLFxuICB9KSk7XG59O1xuZXhwb3J0IGNvbnN0IGhhbmRsZVdhdGVyQXV0aG9yaXRpZXMgPSAoXG4gIGU6IFJlYWN0LkNoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+IHwgdW5kZWZpbmVkLFxuICBvcHRpb246IGFueSA9ICcnLFxuICBuZXdOb3RpZmljYXRpb24sXG4gIHNldE5ld05vdGlmaWNhdGlvbixcbikgPT4ge1xuICBjb25zdCB2YWx1ZSA9IHsgLi4ubmV3Tm90aWZpY2F0aW9uLndhdGVyX2F1dGhvcml0aWVzIH07XG4gIGhhbmRsZVNlbGVjdGlvbkFuZFNldChcbiAgICB2YWx1ZSxcbiAgICAnd2F0ZXJfYXV0aG9yaXRpZXMnLFxuICAgIGUsXG4gICAgb3B0aW9uLFxuICAgIHNldE5ld05vdGlmaWNhdGlvbixcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVTb3VyY2VzID0gKFxuICBlOiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PiB8IHVuZGVmaW5lZCxcbiAgb3B0aW9uOiBhbnkgPSAnJyxcbiAgbmV3Tm90aWZpY2F0aW9uLFxuICBzZXROZXdOb3RpZmljYXRpb24sXG4pID0+IHtcbiAgY29uc3QgdmFsdWUgPSB7IC4uLm5ld05vdGlmaWNhdGlvbi5wb2ludHMgfTtcbiAgaGFuZGxlU2VsZWN0aW9uQW5kU2V0KHZhbHVlLCAncG9pbnRzJywgZSwgb3B0aW9uLCBzZXROZXdOb3RpZmljYXRpb24pO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZVRhZ3MgPSAoXG4gIGU6IFJlYWN0LkNoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+IHwgdW5kZWZpbmVkLFxuICBvcHRpb246IGFueSA9ICcnLFxuICBuZXdOb3RpZmljYXRpb24sXG4gIHNldE5ld05vdGlmaWNhdGlvbixcbikgPT4ge1xuICBjb25zdCB2YWx1ZSA9IHsgLi4ubmV3Tm90aWZpY2F0aW9uLnRhZ3MgfTtcbiAgaGFuZGxlU2VsZWN0aW9uQW5kU2V0KHZhbHVlLCAndGFncycsIGUsIG9wdGlvbiwgc2V0TmV3Tm90aWZpY2F0aW9uKTtcbn07XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVTZW5zb3JzID0gKFxuICBlOiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PiB8IHVuZGVmaW5lZCxcbiAgb3B0aW9uOiBhbnkgPSAnJyxcbiAgbmV3Tm90aWZpY2F0aW9uLFxuICBzZXROZXdOb3RpZmljYXRpb24sXG4pID0+IHtcbiAgY29uc3QgdmFsdWUgPSB7IC4uLm5ld05vdGlmaWNhdGlvbi5zZW5zb3JzIH07XG4gIGhhbmRsZVNlbGVjdGlvbkFuZFNldCh2YWx1ZSwgJ3NlbnNvcnMnLCBlLCBvcHRpb24sIHNldE5ld05vdGlmaWNhdGlvbik7XG59O1xuXG5leHBvcnQgY29uc3QgaGFuZGxlU2VsZWN0aW9uQW5kU2V0ID0gKFxuICB2YWx1ZSxcbiAgZmllbGQ6IHN0cmluZyxcbiAgZTogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4gfCB1bmRlZmluZWQsXG4gIG9wdGlvbjogYW55ID0gJycsXG4gIHNldE5ld05vdGlmaWNhdGlvbixcbikgPT4ge1xuICBpZiAoZSAhPT0gdW5kZWZpbmVkICYmIGUudGFyZ2V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICB2YWx1ZS5zZWxlY3Rpb25fdHlwZSA9IGUudGFyZ2V0LnZhbHVlO1xuICAgIHNldE5ld05vdGlmaWNhdGlvbigocHJldlN0YXRlKSA9PiAoe1xuICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgW2ZpZWxkXTogdmFsdWUsXG4gICAgfSkpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHNldDogc3RyaW5nW10gPSBbXTtcbiAgICBvcHRpb24uc2V0LmZvckVhY2goKG9wdGlvbikgPT4ge1xuICAgICAgc2V0LnB1c2goSlNPTi5zdHJpbmdpZnkob3B0aW9uLnZhbHVlKSk7XG4gICAgfSk7XG5cbiAgICB2YWx1ZS5zZWxlY3Rpb25fdHlwZSA9IG9wdGlvbi5zZWxlY3Rpb25fdHlwZTtcbiAgICBpZiAodmFsdWUuc2V0ID09PSBudWxsKSB7XG4gICAgICB2YWx1ZS5zZXQgPSBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFsdWUuc2V0ID0gc2V0O1xuICAgIH1cblxuICAgIHNldE5ld05vdGlmaWNhdGlvbigocHJldlN0YXRlKSA9PiAoe1xuICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgW2ZpZWxkXTogdmFsdWUsXG4gICAgfSkpO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgaGFuZGxlU2VuZFZpYSA9IChcbiAgZTogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4sXG4gIG5ld05vdGlmaWNhdGlvbixcbiAgc2V0TmV3Tm90aWZpY2F0aW9uLFxuICBzZXRNb2RhbERldGFpbHMsXG4pID0+IHtcbiAgY29uc3QgdmFsdWUgPSB7IC4uLm5ld05vdGlmaWNhdGlvbi5hY3Rpb25zIH07XG4gIGNvbnN0IGZpZWxkID0gZS50YXJnZXQudmFsdWU7XG4gIHZhbHVlW2ZpZWxkXSA9ICF2YWx1ZVtmaWVsZF07XG5cbiAgaWYgKGZpZWxkID09PSAnc21zJyB8fCBmaWVsZCA9PT0gJ3RlbGVncmFtJykge1xuICAgIHNldE1vZGFsRGV0YWlscyh7IG9wZW46IHRydWUsIGluc3RhbmNlOiBmaWVsZCB9KTtcbiAgfVxuXG4gIHNldE5ld05vdGlmaWNhdGlvbigocHJldlN0YXRlKSA9PiAoe1xuICAgIC4uLnByZXZTdGF0ZSxcbiAgICBhY3Rpb25zOiB2YWx1ZSxcbiAgfSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZU5vdGlmaWNhdGlvblNhbXBsZSA9IChcbiAgZTogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4sXG4gIHNldE5ld05vdGlmaWNhdGlvbixcbikgPT4ge1xuICBjb25zdCB2YWx1ZSA9IGUudGFyZ2V0LmNoZWNrZWQ7XG4gIGxldCBwYXJzZWRWYWx1ZSA9IHZhbHVlID8gJzEnIDogJzAnO1xuICBzZXROZXdOb3RpZmljYXRpb24oKHByZXZTdGF0ZSkgPT4gKHtcbiAgICAuLi5wcmV2U3RhdGUsXG4gICAgcHVtcF9vbmx5OiBwYXJzZWRWYWx1ZSxcbiAgfSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlVmFsdWVJc05vdEFuT2JqZWN0ID0gKHZhbHVlKSA9PiB7XG4gIHJldHVybiAoXG4gICAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJlxuICAgICFBcnJheS5pc0FycmF5KHZhbHVlKSAmJlxuICAgIHZhbHVlICE9PSBudWxsICYmXG4gICAgdmFsdWUgIT09IHVuZGVmaW5lZFxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IHBhcnNlTm90aWZpY2F0aW9uQWR2YW5jZWRTZWxlY3Rpb24gPSAobm90aWZpY2F0aW9uKSA9PiB7XG4gIC8vIElmIHRoZXJlJ2xsIGJlIGEgZnV0dXJlIHJlcXVpcmVtZW50IHRvIGFkZCBhbm90aGVyIEFkdmFuY2VkU2VsZWN0aW9uIGZpZWxkcywgcGxlYXNlIGFkZCB0aGVtIHJpZ2h0IGJlbG93XG5cbiAgbGV0IHBvaW50cyA9IG5vdGlmaWNhdGlvbi5wb2ludHM7XG4gIGxldCB3YXRlckF1dGhvcml0aWVzID0gbm90aWZpY2F0aW9uLndhdGVyX2F1dGhvcml0aWVzO1xuICBsZXQgdGFncyA9IG5vdGlmaWNhdGlvbi50YWdzO1xuICBsZXQgc2Vuc29ycyA9IG5vdGlmaWNhdGlvbi5zZW5zb3JzO1xuXG4gIGNvbnN0IGFsbF9hZHZhbmNlZF9zZWxlY3Rpb25zID0gW3BvaW50cywgd2F0ZXJBdXRob3JpdGllcywgdGFncywgc2Vuc29yc107XG5cbiAgYWxsX2FkdmFuY2VkX3NlbGVjdGlvbnMuZm9yRWFjaCgoc2VsZWN0aW9uKSA9PiB7XG4gICAgaWYgKFxuICAgICAgdmFsaWRhdGVWYWx1ZUlzTm90QW5PYmplY3QoXG4gICAgICAgIHNlbGVjdGlvbiAhPT0gdW5kZWZpbmVkICYmIHNlbGVjdGlvbi5zZXQgIT09IG51bGwgJiYgc2VsZWN0aW9uLnNldFswXSxcbiAgICAgIClcbiAgICApIHtcbiAgICAgIGNvbnN0IHNldDogc3RyaW5nW10gPSBbXTtcbiAgICAgIHNlbGVjdGlvbi5zZXQuZm9yRWFjaCgocG9pbnQpID0+IHtcbiAgICAgICAgc2V0LnB1c2goSlNPTi5zdHJpbmdpZnkocG9pbnQuaWQpKTtcbiAgICAgIH0pO1xuXG4gICAgICBzZWxlY3Rpb24uc2V0ID0gc2V0O1xuICAgIH1cblxuICAgIGlmIChzZWxlY3Rpb24gJiYgc2VsZWN0aW9uLnNldCAhPT0gdW5kZWZpbmVkICYmIHNlbGVjdGlvbi5zZXQgPT09IG51bGwpIHtcbiAgICAgIHNlbGVjdGlvbi5zZXQgPSBbXTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBub3RpZmljYXRpb247XG59O1xuXG5leHBvcnQgY29uc3QgZGVsZXRlQXR0cmlidXRlcyA9IChub3RpZmljYXRpb24sIG5ld05vdGlmaWNhdGlvbikgPT4ge1xuICAvLyBNYWtlIHN1cmUgdG8gcmVtb3ZlIHVubmVjZXNzYXJ5IGF0dHJpYnV0ZXMgZm9yIHNvbWUgQWxlcnRDb25maWdzXG5cbiAgZGVsZXRlIG5vdGlmaWNhdGlvbi5hdmFpbGFibGVfdHlwZXM7XG4gIGlmIChuZXdOb3RpZmljYXRpb24udHlwZSAhPT0gJ1BvbGx1dGlvbkFsZXJ0Q29uZmlnJylcbiAgICBkZWxldGUgbm90aWZpY2F0aW9uLnNldmVyaXR5O1xuICBpZiAobmV3Tm90aWZpY2F0aW9uLnR5cGUgIT09ICdQb2xsdXRpb25BbGVydENvbmZpZycpXG4gICAgZGVsZXRlIG5vdGlmaWNhdGlvbi5wdW1wX29ubHk7XG4gIGlmIChuZXdOb3RpZmljYXRpb24udHlwZSA9PT0gJ1diZVdlZWtseURpZ2VzdEFsZXJ0Q29uZmlnJylcbiAgICBkZWxldGUgbm90aWZpY2F0aW9uLnBvaW50cztcbiAgaWYgKG5ld05vdGlmaWNhdGlvbi50eXBlICE9PSAnV2JlV2Vla2x5RGlnZXN0QWxlcnRDb25maWcnKVxuICAgIGRlbGV0ZSBub3RpZmljYXRpb24udGFncztcbiAgaWYgKG5ld05vdGlmaWNhdGlvbi50eXBlICE9PSAnRGF0YWxvZ2dlclRocmVzaG9sZEFsZXJ0Q29uZmlnJylcbiAgICBkZWxldGUgbm90aWZpY2F0aW9uLnNlbnNvcnM7XG5cbiAgbm90aWZpY2F0aW9uWydhbGVydF90eXBlJ10gPSBub3RpZmljYXRpb24udHlwZTtcbiAgbm90aWZpY2F0aW9uWydfZGVzdHJveSddID0gMDtcblxuICByZXR1cm4gbm90aWZpY2F0aW9uO1xufTtcblxuZXhwb3J0IGNvbnN0IGZvcm1hdFNlbmRWaWEgPSAobm90aWZpY2F0aW9uKSA9PiB7XG4gIGxldCBmb3JtYXR0ZWRWYWx1ZTogYW55ID0gW107XG4gIGlmIChub3RpZmljYXRpb24uYWN0aW9uc1sndGVsZWdyYW0nXSlcbiAgICBmb3JtYXR0ZWRWYWx1ZS5wdXNoKFsnU2VuZFRlbGVncmFtQWN0aW9uJywgJzAnXSk7XG4gIGlmIChub3RpZmljYXRpb24uYWN0aW9uc1snZW1haWwnXSlcbiAgICBmb3JtYXR0ZWRWYWx1ZS5wdXNoKFsnU2VuZEVtYWlsQWN0aW9uJywgJzAnXSk7XG4gIGlmIChub3RpZmljYXRpb24uYWN0aW9uc1snc21zJ10pIGZvcm1hdHRlZFZhbHVlLnB1c2goWydTZW5kU21zQWN0aW9uJywgJzAnXSk7XG4gIG5vdGlmaWNhdGlvbi5hY3Rpb25zID0gZm9ybWF0dGVkVmFsdWUuZmxhdCgpO1xuXG4gIHJldHVybiBub3RpZmljYXRpb247XG59O1xuXG5leHBvcnQgY29uc3QgcGFyc2VTZXZlcml0aWVzID0gKG5vdGlmaWNhdGlvbikgPT4ge1xuICBsZXQgdmFsdWU7XG4gIHN3aXRjaCAobm90aWZpY2F0aW9uLnNldmVyaXR5KSB7XG4gICAgY2FzZSAnbWVkaXVtJzpcbiAgICAgIHZhbHVlID0gJzAnO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnaGlnaCc6XG4gICAgICB2YWx1ZSA9ICcxJztcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ2V4dHJlbWUnOlxuICAgICAgdmFsdWUgPSAnMic7XG4gIH1cbiAgbm90aWZpY2F0aW9uLnNldmVyaXR5ID0gdmFsdWU7XG4gIHJldHVybiBub3RpZmljYXRpb247XG59O1xuXG5leHBvcnQgY29uc3QgZm9ybWF0Tm90aWZpY2F0aW9uID0gKG5ld05vdGlmaWNhdGlvbikgPT4ge1xuICBsZXQgbm90aWZpY2F0aW9uQ29weSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkobmV3Tm90aWZpY2F0aW9uKSk7XG4gIG5vdGlmaWNhdGlvbkNvcHkgPSBwYXJzZU5vdGlmaWNhdGlvbkFkdmFuY2VkU2VsZWN0aW9uKG5vdGlmaWNhdGlvbkNvcHkpO1xuICBub3RpZmljYXRpb25Db3B5ID0gZm9ybWF0U2VuZFZpYShub3RpZmljYXRpb25Db3B5KTtcbiAgbm90aWZpY2F0aW9uQ29weSA9IGRlbGV0ZUF0dHJpYnV0ZXMobm90aWZpY2F0aW9uQ29weSwgbmV3Tm90aWZpY2F0aW9uKTtcbiAgbm90aWZpY2F0aW9uQ29weSA9IHBhcnNlU2V2ZXJpdGllcyhub3RpZmljYXRpb25Db3B5KTtcblxuICBsZXQgbm90aWZpY2F0aW9uVG9TYXZlID0ge1xuICAgIHVzZXI6IHtcbiAgICAgIGFsZXJ0X2NvbmZpZ3NfYXR0cmlidXRlczoge1xuICAgICAgICAuLi5ub3RpZmljYXRpb25Db3B5LFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIGNvbnN0IG5vdGlmaWNhdGlvbldpdGhUaW1lU3RhbXAgPSB7XG4gICAgdXNlcjoge1xuICAgICAgYWxlcnRfY29uZmlnc19hdHRyaWJ1dGVzOiB7fSxcbiAgICB9LFxuICB9O1xuXG4gIGNvbnN0IG5vdyA9IG5ldyBEYXRlKCk7XG4gIG5vdGlmaWNhdGlvbldpdGhUaW1lU3RhbXAudXNlci5hbGVydF9jb25maWdzX2F0dHJpYnV0ZXNbYCR7bm93LmdldFRpbWUoKX1gXSA9XG4gICAgbm90aWZpY2F0aW9uVG9TYXZlLnVzZXIuYWxlcnRfY29uZmlnc19hdHRyaWJ1dGVzO1xuXG4gIHJldHVybiBub3RpZmljYXRpb25XaXRoVGltZVN0YW1wO1xufTtcbiJdfQ==
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var LabResultValue = function LabResultValue(_ref) {
15
+ var _ref$name = _ref.name,
16
+ name = _ref$name === void 0 ? '' : _ref$name,
17
+ _ref$value = _ref.value,
18
+ value = _ref$value === void 0 ? '' : _ref$value,
19
+ _ref$exceeded = _ref.exceeded,
20
+ exceeded = _ref$exceeded === void 0 ? false : _ref$exceeded;
21
+
22
+ var LabResultValueStyle = _styledComponents.default.div.withConfig({
23
+ displayName: "LabResultValue__LabResultValueStyle",
24
+ componentId: "sc-1dszxf-0"
25
+ })(["color:", ";font-weight:bold;margin-bottom:5px;display:grid;grid-template-columns:200px 70px;align-items:baseline;grid-gap:20px;justify-content:space-between;.value{font-weight:normal;}"], function (_ref2) {
26
+ var theme = _ref2.theme;
27
+ return exceeded ? theme.colorScheme.data.R100 : theme.colorScheme.natural.n90;
28
+ });
29
+
30
+ return /*#__PURE__*/_react.default.createElement(LabResultValueStyle, {
31
+ "data-testid": "labResultValue"
32
+ }, /*#__PURE__*/_react.default.createElement("span", {
33
+ className: 'name'
34
+ }, name, ":"), /*#__PURE__*/_react.default.createElement("span", {
35
+ className: 'value'
36
+ }, value));
37
+ };
38
+
39
+ var _default = LabResultValue;
40
+ exports.default = _default;
41
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL0FjdGlvbnNEcm9wRG93bi9MYWJSZXN1bHRWYWx1ZS50c3giXSwibmFtZXMiOlsiTGFiUmVzdWx0VmFsdWUiLCJuYW1lIiwidmFsdWUiLCJleGNlZWRlZCIsIkxhYlJlc3VsdFZhbHVlU3R5bGUiLCJzdHlsZWQiLCJkaXYiLCJ0aGVtZSIsImNvbG9yU2NoZW1lIiwiZGF0YSIsIlIxMDAiLCJuYXR1cmFsIiwibjkwIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUNBOztBQUNBLElBQU1BLGNBQWMsR0FBRyxTQUFqQkEsY0FBaUIsT0FBaUQ7QUFBQSx1QkFBOUNDLElBQThDO0FBQUEsTUFBOUNBLElBQThDLDBCQUF2QyxFQUF1QztBQUFBLHdCQUFuQ0MsS0FBbUM7QUFBQSxNQUFuQ0EsS0FBbUMsMkJBQTNCLEVBQTJCO0FBQUEsMkJBQXZCQyxRQUF1QjtBQUFBLE1BQXZCQSxRQUF1Qiw4QkFBWixLQUFZOztBQUN0RSxNQUFNQyxtQkFBbUIsR0FBR0MsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEsbU1BQ2Q7QUFBQSxRQUFHQyxLQUFILFNBQUdBLEtBQUg7QUFBQSxXQUNQSixRQUFRLEdBQUdJLEtBQUssQ0FBQ0MsV0FBTixDQUFrQkMsSUFBbEIsQ0FBdUJDLElBQTFCLEdBQWlDSCxLQUFLLENBQUNDLFdBQU4sQ0FBa0JHLE9BQWxCLENBQTBCQyxHQUQ1RDtBQUFBLEdBRGMsQ0FBekI7O0FBY0Esc0JBQ0UsNkJBQUMsbUJBQUQ7QUFBcUIsbUJBQVk7QUFBakMsa0JBQ0U7QUFBTSxJQUFBLFNBQVMsRUFBRTtBQUFqQixLQUEwQlgsSUFBMUIsTUFERixlQUVFO0FBQU0sSUFBQSxTQUFTLEVBQUU7QUFBakIsS0FBMkJDLEtBQTNCLENBRkYsQ0FERjtBQU1ELENBckJEOztlQXNCZUYsYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmNvbnN0IExhYlJlc3VsdFZhbHVlID0gKHsgbmFtZSA9ICcnLCB2YWx1ZSA9ICcnLCBleGNlZWRlZCA9IGZhbHNlIH0pID0+IHtcbiAgY29uc3QgTGFiUmVzdWx0VmFsdWVTdHlsZSA9IHN0eWxlZC5kaXZgXG4gICAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT5cbiAgICAgIGV4Y2VlZGVkID8gdGhlbWUuY29sb3JTY2hlbWUuZGF0YS5SMTAwIDogdGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uOTB9O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjAwcHggNzBweDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgZ3JpZC1nYXA6IDIwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIC52YWx1ZSB7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgYDtcbiAgcmV0dXJuIChcbiAgICA8TGFiUmVzdWx0VmFsdWVTdHlsZSBkYXRhLXRlc3RpZD1cImxhYlJlc3VsdFZhbHVlXCI+XG4gICAgICA8c3BhbiBjbGFzc05hbWU9eyduYW1lJ30+e25hbWV9Ojwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzTmFtZT17J3ZhbHVlJ30+e3ZhbHVlfTwvc3Bhbj5cbiAgICA8L0xhYlJlc3VsdFZhbHVlU3R5bGU+XG4gICk7XG59O1xuZXhwb3J0IGRlZmF1bHQgTGFiUmVzdWx0VmFsdWU7XG4iXX0=
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _LabResultValue = _interopRequireDefault(require("./LabResultValue"));
6
+
7
+ var _react = _interopRequireDefault(require("react"));
8
+
9
+ require("@testing-library/jest-dom/extend-expect");
10
+
11
+ var _theme = require("styles/theme/theme");
12
+
13
+ var _StylesLayout = _interopRequireDefault(require("../../../styles/StylesLayout"));
14
+
15
+ var _require = require('@testing-library/react'),
16
+ screen = _require.screen,
17
+ render = _require.render;
18
+
19
+ describe('Lab result value unit tests', function () {
20
+ test('Lab value exceeded', function () {
21
+ render( /*#__PURE__*/_react.default.createElement(_StylesLayout.default, null, /*#__PURE__*/_react.default.createElement(_LabResultValue.default, {
22
+ value: '500',
23
+ name: 'mrna',
24
+ exceeded: true
25
+ })));
26
+ var element = screen.getByTestId('labResultValue');
27
+ expect(element).toHaveStyle("color: ".concat(_theme.theme.colorScheme.data.R100));
28
+ });
29
+ test('Lab value not exceeded', function () {
30
+ render( /*#__PURE__*/_react.default.createElement(_StylesLayout.default, null, /*#__PURE__*/_react.default.createElement(_LabResultValue.default, {
31
+ value: '500',
32
+ name: 'mrna',
33
+ exceeded: false
34
+ })));
35
+ var element = screen.getByTestId('labResultValue');
36
+ expect(element).toHaveStyle("color: ".concat(_theme.theme.colorScheme.natural.n90));
37
+ });
38
+ });
39
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL0FjdGlvbnNEcm9wRG93bi9MYWJSZXN1bHRWYWx1ZS50ZXN0LnRzeCJdLCJuYW1lcyI6WyJyZXF1aXJlIiwic2NyZWVuIiwicmVuZGVyIiwiZGVzY3JpYmUiLCJ0ZXN0IiwiZWxlbWVudCIsImdldEJ5VGVzdElkIiwiZXhwZWN0IiwidG9IYXZlU3R5bGUiLCJ0aGVtZSIsImNvbG9yU2NoZW1lIiwiZGF0YSIsIlIxMDAiLCJuYXR1cmFsIiwibjkwIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0EsZUFBMkJBLE9BQU8sQ0FBQyx3QkFBRCxDQUFsQztBQUFBLElBQVFDLE1BQVIsWUFBUUEsTUFBUjtBQUFBLElBQWdCQyxNQUFoQixZQUFnQkEsTUFBaEI7O0FBRUFDLFFBQVEsQ0FBQyw2QkFBRCxFQUFnQyxZQUFNO0FBQzVDQyxFQUFBQSxJQUFJLENBQUMsb0JBQUQsRUFBdUIsWUFBTTtBQUMvQkYsSUFBQUEsTUFBTSxlQUNKLDZCQUFDLHFCQUFELHFCQUNFLDZCQUFDLHVCQUFEO0FBQWdCLE1BQUEsS0FBSyxFQUFFLEtBQXZCO0FBQThCLE1BQUEsSUFBSSxFQUFFLE1BQXBDO0FBQTRDLE1BQUEsUUFBUSxFQUFFO0FBQXRELE1BREYsQ0FESSxDQUFOO0FBS0EsUUFBTUcsT0FBTyxHQUFHSixNQUFNLENBQUNLLFdBQVAsQ0FBbUIsZ0JBQW5CLENBQWhCO0FBQ0FDLElBQUFBLE1BQU0sQ0FBQ0YsT0FBRCxDQUFOLENBQWdCRyxXQUFoQixrQkFBc0NDLGFBQU1DLFdBQU4sQ0FBa0JDLElBQWxCLENBQXVCQyxJQUE3RDtBQUNELEdBUkcsQ0FBSjtBQVNBUixFQUFBQSxJQUFJLENBQUMsd0JBQUQsRUFBMkIsWUFBTTtBQUNuQ0YsSUFBQUEsTUFBTSxlQUNKLDZCQUFDLHFCQUFELHFCQUNFLDZCQUFDLHVCQUFEO0FBQWdCLE1BQUEsS0FBSyxFQUFFLEtBQXZCO0FBQThCLE1BQUEsSUFBSSxFQUFFLE1BQXBDO0FBQTRDLE1BQUEsUUFBUSxFQUFFO0FBQXRELE1BREYsQ0FESSxDQUFOO0FBS0EsUUFBTUcsT0FBTyxHQUFHSixNQUFNLENBQUNLLFdBQVAsQ0FBbUIsZ0JBQW5CLENBQWhCO0FBQ0FDLElBQUFBLE1BQU0sQ0FBQ0YsT0FBRCxDQUFOLENBQWdCRyxXQUFoQixrQkFBc0NDLGFBQU1DLFdBQU4sQ0FBa0JHLE9BQWxCLENBQTBCQyxHQUFoRTtBQUNELEdBUkcsQ0FBSjtBQVNELENBbkJPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTGFiUmVzdWx0VmFsdWUgZnJvbSAnLi9MYWJSZXN1bHRWYWx1ZSc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0ICdAdGVzdGluZy1saWJyYXJ5L2plc3QtZG9tL2V4dGVuZC1leHBlY3QnO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICdzcmMvc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCBTdHlsZXNMYXlvdXQgZnJvbSAnLi4vLi4vLi4vc3R5bGVzL1N0eWxlc0xheW91dCc7XG5jb25zdCB7IHNjcmVlbiwgcmVuZGVyIH0gPSByZXF1aXJlKCdAdGVzdGluZy1saWJyYXJ5L3JlYWN0Jyk7XG5cbmRlc2NyaWJlKCdMYWIgcmVzdWx0IHZhbHVlIHVuaXQgdGVzdHMnLCAoKSA9PiB7XG4gIHRlc3QoJ0xhYiB2YWx1ZSBleGNlZWRlZCcsICgpID0+IHtcbiAgICByZW5kZXIoXG4gICAgICA8U3R5bGVzTGF5b3V0PlxuICAgICAgICA8TGFiUmVzdWx0VmFsdWUgdmFsdWU9eyc1MDAnfSBuYW1lPXsnbXJuYSd9IGV4Y2VlZGVkPXt0cnVlfSAvPlxuICAgICAgPC9TdHlsZXNMYXlvdXQ+LFxuICAgICk7XG4gICAgY29uc3QgZWxlbWVudCA9IHNjcmVlbi5nZXRCeVRlc3RJZCgnbGFiUmVzdWx0VmFsdWUnKTtcbiAgICBleHBlY3QoZWxlbWVudCkudG9IYXZlU3R5bGUoYGNvbG9yOiAke3RoZW1lLmNvbG9yU2NoZW1lLmRhdGEuUjEwMH1gKTtcbiAgfSk7XG4gIHRlc3QoJ0xhYiB2YWx1ZSBub3QgZXhjZWVkZWQnLCAoKSA9PiB7XG4gICAgcmVuZGVyKFxuICAgICAgPFN0eWxlc0xheW91dD5cbiAgICAgICAgPExhYlJlc3VsdFZhbHVlIHZhbHVlPXsnNTAwJ30gbmFtZT17J21ybmEnfSBleGNlZWRlZD17ZmFsc2V9IC8+XG4gICAgICA8L1N0eWxlc0xheW91dD4sXG4gICAgKTtcbiAgICBjb25zdCBlbGVtZW50ID0gc2NyZWVuLmdldEJ5VGVzdElkKCdsYWJSZXN1bHRWYWx1ZScpO1xuICAgIGV4cGVjdChlbGVtZW50KS50b0hhdmVTdHlsZShgY29sb3I6ICR7dGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uOTB9YCk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -0,0 +1,172 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
+
14
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _axios = _interopRequireDefault(require("axios"));
21
+
22
+ var _reactRedux = require("react-redux");
23
+
24
+ var _reactRouterDom = require("react-router-dom");
25
+
26
+ var _Analytics = require("utilities/Analytics");
27
+
28
+ var _actionsCreator = require("store/samplings/actionsCreator");
29
+
30
+ var _urls = require("utilities/urls");
31
+
32
+ var _useInitializeHeaders = require("hooks/useInitializeHeaders");
33
+
34
+ var _samplingsPageUtils = require("../samplingsPageUtils");
35
+
36
+ var _SamplingActions = _interopRequireDefault(require("./SamplingActions"));
37
+
38
+ 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); }
39
+
40
+ 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; }
41
+
42
+ var SamplingActionContainer = function SamplingActionContainer(props) {
43
+ var sampling = props.sampling,
44
+ waterAuthorityId = props.waterAuthorityId,
45
+ showLabResult = props.showLabResult,
46
+ dropdownToggle = props.dropdownToggle;
47
+ var allowed_actions = [_samplingsPageUtils.COLLECT_SAMPLING_OP, _samplingsPageUtils.CANCEL_SAMPLING_OP, _samplingsPageUtils.EDIT_PROPERTIES_OP, _samplingsPageUtils.REVERT_CANCELLATION];
48
+ var history = (0, _reactRouterDom.useHistory)();
49
+ (0, _useInitializeHeaders.useInitializeHeaders)();
50
+ var dispatch = (0, _reactRedux.useDispatch)();
51
+ var navContext = (0, _reactRedux.useSelector)(function (state) {
52
+ return state.nav_context_data.navContext;
53
+ });
54
+
55
+ var _useState = (0, _react.useState)(false),
56
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
57
+ showConfirm = _useState2[0],
58
+ setShowConfirm = _useState2[1];
59
+
60
+ var handleClick = function handleClick() {
61
+ (0, _Analytics.analyticsTrack)("Open web action");
62
+ };
63
+
64
+ var deleteSampling = /*#__PURE__*/function () {
65
+ var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(sampling) {
66
+ var response;
67
+ return _regenerator.default.wrap(function _callee$(_context) {
68
+ while (1) {
69
+ switch (_context.prev = _context.next) {
70
+ case 0:
71
+ _context.next = 2;
72
+ return _axios.default.delete((0, _urls.urls)({
73
+ samplingId: sampling.id,
74
+ locale: navContext.locale,
75
+ waterAuthorityId: waterAuthorityId
76
+ }).samplingProperties.deleteSampling.url);
77
+
78
+ case 2:
79
+ response = _context.sent;
80
+
81
+ if (response.status === 200) {
82
+ // Refresh the samplings hack
83
+ window.location.reload();
84
+ }
85
+
86
+ case 4:
87
+ case "end":
88
+ return _context.stop();
89
+ }
90
+ }
91
+ }, _callee);
92
+ }));
93
+
94
+ return function deleteSampling(_x) {
95
+ return _ref.apply(this, arguments);
96
+ };
97
+ }();
98
+
99
+ var handleActionClick = function handleActionClick(sampling) {
100
+ return /*#__PURE__*/function () {
101
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(item) {
102
+ var urlPrefix, route;
103
+ return _regenerator.default.wrap(function _callee2$(_context2) {
104
+ while (1) {
105
+ switch (_context2.prev = _context2.next) {
106
+ case 0:
107
+ if (!(item.id === _samplingsPageUtils.DELETE_SAMPLING_OP)) {
108
+ _context2.next = 4;
109
+ break;
110
+ }
111
+
112
+ setShowConfirm(true);
113
+ _context2.next = 16;
114
+ break;
115
+
116
+ case 4:
117
+ if (!(item.id === _samplingsPageUtils.LAB_RESULT_OP)) {
118
+ _context2.next = 8;
119
+ break;
120
+ }
121
+
122
+ showLabResult();
123
+ _context2.next = 16;
124
+ break;
125
+
126
+ case 8:
127
+ if (allowed_actions.includes(item.id)) {
128
+ _context2.next = 12;
129
+ break;
130
+ }
131
+
132
+ return _context2.abrupt("return");
133
+
134
+ case 12:
135
+ dispatch((0, _actionsCreator.getSamplingById)(sampling.id));
136
+ urlPrefix = (0, _urls.urls)({
137
+ id: sampling.id,
138
+ locale: navContext.locale,
139
+ waterAuthorityId: waterAuthorityId,
140
+ op: _samplingsPageUtils.SPECIAL_MENU_ID_TO_OP[item.id] || item.id
141
+ }).samplingsPage;
142
+ route = urlPrefix.samplingPropertiesRoute;
143
+ history.push(route.url);
144
+
145
+ case 16:
146
+ case "end":
147
+ return _context2.stop();
148
+ }
149
+ }
150
+ }, _callee2);
151
+ }));
152
+
153
+ return function (_x2) {
154
+ return _ref2.apply(this, arguments);
155
+ };
156
+ }();
157
+ };
158
+
159
+ return /*#__PURE__*/_react.default.createElement(_SamplingActions.default, {
160
+ sampling: sampling,
161
+ showConfirm: showConfirm,
162
+ setShowConfirm: setShowConfirm,
163
+ deleteSampling: deleteSampling,
164
+ handleActionClick: handleActionClick,
165
+ handleClick: handleClick,
166
+ dropdownToggle: dropdownToggle
167
+ });
168
+ };
169
+
170
+ var _default = SamplingActionContainer;
171
+ exports.default = _default;
172
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL0FjdGlvbnNEcm9wRG93bi9TYW1wbGluZ0FjdGlvbkNvbnRhaW5lci50c3giXSwibmFtZXMiOlsiU2FtcGxpbmdBY3Rpb25Db250YWluZXIiLCJwcm9wcyIsInNhbXBsaW5nIiwid2F0ZXJBdXRob3JpdHlJZCIsInNob3dMYWJSZXN1bHQiLCJkcm9wZG93blRvZ2dsZSIsImFsbG93ZWRfYWN0aW9ucyIsIkNPTExFQ1RfU0FNUExJTkdfT1AiLCJDQU5DRUxfU0FNUExJTkdfT1AiLCJFRElUX1BST1BFUlRJRVNfT1AiLCJSRVZFUlRfQ0FOQ0VMTEFUSU9OIiwiaGlzdG9yeSIsImRpc3BhdGNoIiwibmF2Q29udGV4dCIsInN0YXRlIiwibmF2X2NvbnRleHRfZGF0YSIsInNob3dDb25maXJtIiwic2V0U2hvd0NvbmZpcm0iLCJoYW5kbGVDbGljayIsImRlbGV0ZVNhbXBsaW5nIiwiYXhpb3MiLCJkZWxldGUiLCJzYW1wbGluZ0lkIiwiaWQiLCJsb2NhbGUiLCJzYW1wbGluZ1Byb3BlcnRpZXMiLCJ1cmwiLCJyZXNwb25zZSIsInN0YXR1cyIsIndpbmRvdyIsImxvY2F0aW9uIiwicmVsb2FkIiwiaGFuZGxlQWN0aW9uQ2xpY2siLCJpdGVtIiwiREVMRVRFX1NBTVBMSU5HX09QIiwiTEFCX1JFU1VMVF9PUCIsImluY2x1ZGVzIiwidXJsUHJlZml4Iiwib3AiLCJTUEVDSUFMX01FTlVfSURfVE9fT1AiLCJzYW1wbGluZ3NQYWdlIiwicm91dGUiLCJzYW1wbGluZ1Byb3BlcnRpZXNSb3V0ZSIsInB1c2giXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBV0E7Ozs7OztBQVNBLElBQU1BLHVCQUF3RCxHQUFHLFNBQTNEQSx1QkFBMkQsQ0FBQ0MsS0FBRCxFQUFXO0FBQzFFLE1BQVFDLFFBQVIsR0FB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QUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLE9BQTVCOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsR0FERjs7QUFxQkEsc0JBQ0UsNkJBQUMsd0JBQUQ7QUFDRSxJQUFBLFFBQVEsRUFBRXhCLFFBRFo7QUFFRSxJQUFBLFdBQVcsRUFBRWMsV0FGZjtBQUdFLElBQUEsY0FBYyxFQUFFQyxjQUhsQjtBQUlFLElBQUEsY0FBYyxFQUFFRSxjQUpsQjtBQUtFLElBQUEsaUJBQWlCLEVBQUVhLGlCQUxyQjtBQU1FLElBQUEsV0FBVyxFQUFFZCxXQU5mO0FBT0UsSUFBQSxjQUFjLEVBQUViO0FBUGxCLElBREY7QUFXRCxDQW5FRDs7ZUFxRWVMLHVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZDLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5IH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyBEcm9wRG93bkl0ZW1UeXBlIH0gZnJvbSAnc3JjL3VpLWtpdC9Ecm9wRG93bi9Ecm9wRG93bkl0ZW0nO1xuaW1wb3J0IHsgYW5hbHl0aWNzVHJhY2sgfSBmcm9tICdzcmMvdXRpbGl0aWVzL0FuYWx5dGljcyc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnc3JjL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IGdldFNhbXBsaW5nQnlJZCB9IGZyb20gJ3NyYy9zdG9yZS9zYW1wbGluZ3MvYWN0aW9uc0NyZWF0b3InO1xuaW1wb3J0IHsgdXJscyB9IGZyb20gJ3NyYy91dGlsaXRpZXMvdXJscyc7XG5pbXBvcnQgeyB1c2VJbml0aWFsaXplSGVhZGVycyB9IGZyb20gJ3NyYy9ob29rcy91c2VJbml0aWFsaXplSGVhZGVycyc7XG5cbmltcG9ydCB7XG4gIENBTkNFTF9TQU1QTElOR19PUCxcbiAgQ09MTEVDVF9TQU1QTElOR19PUCxcbiAgREVMRVRFX1NBTVBMSU5HX09QLFxuICBFRElUX1BST1BFUlRJRVNfT1AsXG4gIFJFVkVSVF9DQU5DRUxMQVRJT04sXG4gIFNQRUNJQUxfTUVOVV9JRF9UT19PUCxcbiAgU2FtcGxpbmdEYXRhLFxuICBMQUJfUkVTVUxUX09QLFxufSBmcm9tICcuLi9zYW1wbGluZ3NQYWdlVXRpbHMnO1xuXG5pbXBvcnQgU2FtcGxpbmdBY3Rpb25zIGZyb20gJy4vU2FtcGxpbmdBY3Rpb25zJztcblxudHlwZSBTYW1wbGluZ0FjdGlvbkRyb3Bkb3duUHJvcHMgPSB7XG4gIHNhbXBsaW5nPzogU2FtcGxpbmdEYXRhO1xuICB3YXRlckF1dGhvcml0eUlkOiBzdHJpbmc7XG4gIHNob3dMYWJSZXN1bHQ6IEZ1bmN0aW9uO1xuICBkcm9wZG93blRvZ2dsZTogUmVhY3QuUmVhY3ROb2RlO1xufTtcblxuY29uc3QgU2FtcGxpbmdBY3Rpb25Db250YWluZXI6IEZDPFNhbXBsaW5nQWN0aW9uRHJvcGRvd25Qcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBzYW1wbGluZywgd2F0ZXJBdXRob3JpdHlJZCwgc2hvd0xhYlJlc3VsdCwgZHJvcGRvd25Ub2dnbGUgfSA9IHByb3BzO1xuICBjb25zdCBhbGxvd2VkX2FjdGlvbnMgPSBbXG4gICAgQ09MTEVDVF9TQU1QTElOR19PUCxcbiAgICBDQU5DRUxfU0FNUExJTkdfT1AsXG4gICAgRURJVF9QUk9QRVJUSUVTX09QLFxuICAgIFJFVkVSVF9DQU5DRUxMQVRJT04sXG4gIF07XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIHVzZUluaXRpYWxpemVIZWFkZXJzKCk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgbmF2Q29udGV4dCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLm5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dCxcbiAgKTtcbiAgY29uc3QgW3Nob3dDb25maXJtLCBzZXRTaG93Q29uZmlybV0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoKSA9PiB7XG4gICAgYW5hbHl0aWNzVHJhY2soYE9wZW4gd2ViIGFjdGlvbmApO1xuICB9O1xuXG4gIGNvbnN0IGRlbGV0ZVNhbXBsaW5nID0gYXN5bmMgKHNhbXBsaW5nOiBTYW1wbGluZ0RhdGEpID0+IHtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGF4aW9zLmRlbGV0ZShcbiAgICAgIHVybHMoe1xuICAgICAgICBzYW1wbGluZ0lkOiBzYW1wbGluZy5pZCxcbiAgICAgICAgbG9jYWxlOiBuYXZDb250ZXh0LmxvY2FsZSxcbiAgICAgICAgd2F0ZXJBdXRob3JpdHlJZDogd2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgIH0pLnNhbXBsaW5nUHJvcGVydGllcy5kZWxldGVTYW1wbGluZy51cmwsXG4gICAgKTtcblxuICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDIwMCkge1xuICAgICAgLy8gUmVmcmVzaCB0aGUgc2FtcGxpbmdzIGhhY2tcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQWN0aW9uQ2xpY2sgPVxuICAgIChzYW1wbGluZzogU2FtcGxpbmdEYXRhKSA9PiBhc3luYyAoaXRlbTogRHJvcERvd25JdGVtVHlwZSkgPT4ge1xuICAgICAgaWYgKGl0ZW0uaWQgPT09IERFTEVURV9TQU1QTElOR19PUCkge1xuICAgICAgICBzZXRTaG93Q29uZmlybSh0cnVlKTtcbiAgICAgIH0gZWxzZSBpZiAoaXRlbS5pZCA9PT0gTEFCX1JFU1VMVF9PUCkge1xuICAgICAgICBzaG93TGFiUmVzdWx0KCk7XG4gICAgICB9IGVsc2UgaWYgKCFhbGxvd2VkX2FjdGlvbnMuaW5jbHVkZXMoaXRlbS5pZCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGlzcGF0Y2goZ2V0U2FtcGxpbmdCeUlkKHNhbXBsaW5nLmlkKSk7XG4gICAgICAgIGNvbnN0IHVybFByZWZpeCA9IHVybHMoe1xuICAgICAgICAgIGlkOiBzYW1wbGluZy5pZCxcbiAgICAgICAgICBsb2NhbGU6IG5hdkNvbnRleHQubG9jYWxlLFxuICAgICAgICAgIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQsXG4gICAgICAgICAgb3A6IFNQRUNJQUxfTUVOVV9JRF9UT19PUFtpdGVtLmlkXSB8fCBpdGVtLmlkLFxuICAgICAgICB9KS5zYW1wbGluZ3NQYWdlO1xuICAgICAgICBjb25zdCByb3V0ZSA9IHVybFByZWZpeC5zYW1wbGluZ1Byb3BlcnRpZXNSb3V0ZTtcbiAgICAgICAgaGlzdG9yeS5wdXNoKHJvdXRlLnVybCk7XG4gICAgICB9XG4gICAgfTtcblxuICByZXR1cm4gKFxuICAgIDxTYW1wbGluZ0FjdGlvbnNcbiAgICAgIHNhbXBsaW5nPXtzYW1wbGluZ31cbiAgICAgIHNob3dDb25maXJtPXtzaG93Q29uZmlybX1cbiAgICAgIHNldFNob3dDb25maXJtPXtzZXRTaG93Q29uZmlybX1cbiAgICAgIGRlbGV0ZVNhbXBsaW5nPXtkZWxldGVTYW1wbGluZ31cbiAgICAgIGhhbmRsZUFjdGlvbkNsaWNrPXtoYW5kbGVBY3Rpb25DbGlja31cbiAgICAgIGhhbmRsZUNsaWNrPXtoYW5kbGVDbGlja31cbiAgICAgIGRyb3Bkb3duVG9nZ2xlPXtkcm9wZG93blRvZ2dsZX1cbiAgICAvPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgU2FtcGxpbmdBY3Rpb25Db250YWluZXI7XG4iXX0=