@kando-env/kando-ui 1.2.75-alpha.78 → 1.2.75-alpha.8

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 (126) hide show
  1. package/lib/Router.js +6 -5
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +9 -7
  3. package/lib/Widgets/EventsRow/EventsRow.js +9 -7
  4. package/lib/Widgets/Map/Map.js +148 -39
  5. package/lib/Widgets/Map/areas/AreaPolygons.js +6 -1
  6. package/lib/Widgets/Map/events/EventIndicator.js +46 -21
  7. package/lib/Widgets/Map/events/EventIndicatorHover.js +252 -0
  8. package/lib/Widgets/Map/events/EventPath.js +37 -16
  9. package/lib/Widgets/Map/events/EventPathHover.js +81 -0
  10. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +102 -10
  11. package/lib/Widgets/Map/points/PointMarker.js +460 -13
  12. package/lib/Widgets/Map/points/PointMarkers.js +12 -31
  13. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +2 -2
  14. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +2 -2
  15. package/lib/Widgets/MostPolluting/components/ChangePercent.js +6 -24
  16. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +4 -6
  17. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +3 -5
  18. package/lib/Widgets/QualitySummary/QualitySummary.js +5 -10
  19. package/lib/assets/icons/index.js +0 -8
  20. package/lib/components/CustomInputs/DoubleTabs/styles.js +2 -2
  21. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +2 -2
  22. package/lib/components/Header/InfoBar/InfoBar.js +2 -6
  23. package/lib/components/Header/KandoNavbar/KandoNavbar.js +1 -3
  24. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +2 -4
  25. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +3 -2
  26. package/lib/components/Sector/Sector.test.js +11 -4
  27. package/lib/components/SevereEvent/SevereEvent.js +7 -5
  28. package/lib/components/TimeRangeSelector/constants.js +2 -2
  29. package/lib/hooks/useApiWithDashboardQuery.js +4 -2
  30. package/lib/hooks/useUserTimeZone.js +2 -2
  31. package/lib/i18n/en.json +29 -63
  32. package/lib/i18n/fr.json +424 -655
  33. package/lib/i18n/he.json +6 -40
  34. package/lib/i18n/it.json +190 -421
  35. package/lib/index.js +1 -8
  36. package/lib/macros/getVersion.js +2 -2
  37. package/lib/pages/AreaPage/AreaPage.js +2 -4
  38. package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +3 -3
  39. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +3 -3
  40. package/lib/pages/CovidPage/CovidPage.js +2 -7
  41. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +5 -2
  42. package/lib/pages/EventsPage/EventsPage.js +2 -7
  43. package/lib/pages/EventsPage/events/EventsStyle.scss +0 -5
  44. package/lib/pages/EventsPage/events/event_info/EventDetails.js +18 -74
  45. package/lib/pages/EventsPage/events/event_info/EventInfoStyle.scss +0 -16
  46. package/lib/pages/EventsPage/events/event_info/sources/Source.js +2 -2
  47. package/lib/pages/EventsPage/events/events_list/EventItem.js +19 -9
  48. package/lib/pages/EventsPage/events/events_list/EventsList.js +14 -28
  49. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +2 -2
  50. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +1 -4
  51. package/lib/pages/EventsPage/events/events_list/Filter/FilterStyle.scss +1 -1
  52. package/lib/pages/ImportFileWizard/ValidationForm.js +12 -7
  53. package/lib/pages/NotificationsPage/NotificationsPage.js +2 -9
  54. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +1 -5
  55. package/lib/pages/OldSitePage/OldSitePage.js +2 -4
  56. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +8 -51
  57. package/lib/pages/ProfilePage/ProfilePage.js +2 -10
  58. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +2 -3
  59. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +2 -6
  60. package/lib/pages/SamplingsPage/NavigationDropdown.js +2 -9
  61. package/lib/pages/SamplingsPage/NewSamplingAction.js +4 -10
  62. package/lib/pages/SamplingsPage/SamplingActionDropdown.js +189 -0
  63. package/lib/pages/SamplingsPage/SamplingMobileModal.js +17 -1
  64. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +19 -41
  65. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +2 -2
  66. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +12 -33
  67. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +19 -14
  68. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +19 -26
  69. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +11 -21
  70. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +4 -14
  71. package/lib/pages/SamplingsPage/SamplingProperties/style.module.scss +1 -5
  72. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +3 -12
  73. package/lib/pages/SamplingsPage/SamplingsPage.js +3 -9
  74. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +6 -9
  75. package/lib/pages/SamplingsPage/samplingsPageUtils.js +34 -77
  76. package/lib/pages/SamplingsPage/style.module.scss +1 -1
  77. package/lib/pages/SamplingsPage/table.styles.scss +6 -8
  78. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +4 -5
  79. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +3 -5
  80. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +23 -90
  81. package/lib/pages/SitePage/SamplingParameters/dataParser.js +6 -18
  82. package/lib/pages/SitePage/SitePage.js +2 -4
  83. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +9 -7
  84. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +1 -6
  85. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +2 -4
  86. package/lib/pages/WbeDashboard/SummaryGraph.js +6 -15
  87. package/lib/pages/WbeDashboard/WbeDashboardPage.js +3 -10
  88. package/lib/store/areas/actions.js +2 -19
  89. package/lib/store/events/reducer.js +2 -4
  90. package/lib/store/permissions/permissionsSlice.js +1 -5
  91. package/lib/styles.scss +4 -5
  92. package/lib/ui-kit/Button/Button.test.js +11 -26
  93. package/lib/ui-kit/DropDown/DropDown.js +6 -12
  94. package/lib/ui-kit/DropDown/DropDown.test.js +41 -50
  95. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +2 -9
  96. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +3 -4
  97. package/lib/ui-kit/KandoTable/KandoTable.test.js +43 -46
  98. package/lib/utilities/i18n.js +1 -6
  99. package/lib/utilities/urls.js +5 -8
  100. package/package.json +2 -6
  101. package/lib/Widgets/Map/MapUtils.js +0 -103
  102. package/lib/Widgets/Map/events/Event.js +0 -69
  103. package/lib/Widgets/Map/events/EventUtils.js +0 -211
  104. package/lib/Widgets/Map/events/PointOfEvent.js +0 -135
  105. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +0 -55
  106. package/lib/Widgets/Map/events/Snail.js +0 -60
  107. package/lib/Widgets/Map/points/PointUtils.js +0 -368
  108. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +0 -62
  109. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +0 -75
  110. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +0 -52
  111. package/lib/assets/icons/close-modal.svg +0 -8
  112. package/lib/components/DischargeHeatmap/mocks/handlers.js +0 -19
  113. package/lib/hooks/useUserTimeZone.test.js +0 -45
  114. package/lib/i18n/en_uk.json +0 -3759
  115. package/lib/pages/EventsPage/events/events_list/EventUtils.js +0 -19
  116. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +0 -43
  117. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +0 -39
  118. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +0 -182
  119. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +0 -74
  120. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +0 -48
  121. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +0 -119
  122. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +0 -63
  123. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +0 -57
  124. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +0 -27
  125. package/lib/test/mocks/browser.js +0 -23
  126. package/lib/test/test-utils.js +0 -61
@@ -25,12 +25,18 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
25
25
  var EventPath = function EventPath(_ref) {
26
26
  var event = _ref.event,
27
27
  global_data = _ref.global_data,
28
- _ref$eventPaths = _ref.eventPaths,
29
- eventPaths = _ref$eventPaths === void 0 ? [] : _ref$eventPaths;
28
+ _ref$focusedEvent = _ref.focusedEvent,
29
+ focusedEvent = _ref$focusedEvent === void 0 ? null : _ref$focusedEvent,
30
+ _ref$focusedEventPath = _ref.focusedEventPaths,
31
+ focusedEventPaths = _ref$focusedEventPath === void 0 ? [] : _ref$focusedEventPath,
32
+ _ref$hoveredEvent = _ref.hoveredEvent,
33
+ hoveredEvent = _ref$hoveredEvent === void 0 ? null : _ref$hoveredEvent,
34
+ _ref$hoveredEventPath = _ref.hoveredEventPaths,
35
+ hoveredEventPaths = _ref$hoveredEventPath === void 0 ? [] : _ref$hoveredEventPath;
30
36
  var map = global_data.map;
31
37
  var dispatch = (0, _reactRedux.useDispatch)();
32
38
 
33
- var drawPolyline = function drawPolyline(event, layerLatlngs, eventPathsAsMapObjects) {
39
+ var drawPolyline = function drawPolyline(event, layerLatlngs, Paths, isHover) {
34
40
  var eventPath = _leaflet.default.polyline(layerLatlngs, {
35
41
  color: 'rgba(0,0,0,0)',
36
42
  weight: 10,
@@ -38,48 +44,63 @@ var EventPath = function EventPath(_ref) {
38
44
  stroke: true
39
45
  }).addTo(map);
40
46
 
41
- eventPathsAsMapObjects.push(eventPath);
47
+ Paths.push(eventPath);
42
48
  eventPath['kando_object_id'] = event.id;
43
49
  eventPath['kando_object'] = 'EventPath';
44
50
 
45
- if (event.hovered) {
46
- dispatch((0, _actions.setHoveredEventPaths)(eventPathsAsMapObjects));
51
+ if (isHover) {
52
+ dispatch((0, _actions.setHoveredEventPaths)(Paths));
47
53
  } else {
48
- dispatch((0, _actions.setFocusedEventPaths)(eventPathsAsMapObjects));
54
+ dispatch((0, _actions.setFocusedEventPaths)(Paths));
49
55
  }
50
56
  };
51
57
 
52
58
  var renderEventPath = function renderEventPath(event, isHover) {
53
59
  if (map !== undefined) {
54
- var eventPathsAsMapObjects = [];
60
+ var Paths = [];
55
61
  var layers = map._layers;
56
62
  event.path.forEach(function (path) {
57
63
  for (var property in layers) {
58
64
  if (layers[property].kando_object_id !== undefined && layers[property].kando_object_id === path.edge_id && layers[property].kando_object === 'Edge') {
59
65
  var layerLatlngs = layers[property].getLatLngs();
60
- drawPolyline(event, layerLatlngs, eventPathsAsMapObjects);
66
+ drawPolyline(event, layerLatlngs, Paths, isHover);
61
67
  }
62
68
  }
63
69
  });
64
70
 
65
- if (!isHover && eventPaths.length === 0 && eventPathsAsMapObjects.length > 0) {
66
- map.fitBounds(_leaflet.default.featureGroup(eventPathsAsMapObjects).getBounds().pad(0.1));
71
+ if (!isHover && focusedEventPaths.length === 0 && Paths.length > 0) {
72
+ map.fitBounds(_leaflet.default.featureGroup(Paths).getBounds().pad(0.1));
67
73
  }
68
74
  }
69
75
  };
70
76
 
71
77
  (0, _react.useEffect)(function () {
72
78
  // Cleanup existing paths if necessary
73
- if (eventPaths) {
74
- eventPaths.forEach(function (path) {
79
+ if (focusedEventPaths !== null) {
80
+ focusedEventPaths.forEach(function (path) {
75
81
  map.removeLayer(path);
76
82
  });
77
- renderEventPath(event, event.hovered);
78
83
  }
79
- }, [event]);
84
+
85
+ if (event.path !== null && focusedEvent !== null) {
86
+ renderEventPath(event, false);
87
+ }
88
+ }, [focusedEvent]);
89
+ (0, _react.useEffect)(function () {
90
+ // Cleanup existing paths if necessary
91
+ if (hoveredEventPaths) {
92
+ hoveredEventPaths.forEach(function (path) {
93
+ map.removeLayer(path);
94
+ });
95
+ }
96
+
97
+ if (event.path !== null && hoveredEvent !== null) {
98
+ renderEventPath(event, true);
99
+ }
100
+ }, [hoveredEvent]);
80
101
  return /*#__PURE__*/_react.default.createElement("div", null);
81
102
  };
82
103
 
83
104
  var _default = EventPath;
84
105
  exports.default = _default;
85
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9ldmVudHMvRXZlbnRQYXRoLnRzeCJdLCJuYW1lcyI6WyJFdmVudFBhdGgiLCJldmVudCIsImdsb2JhbF9kYXRhIiwiZXZlbnRQYXRocyIsIm1hcCIsImRpc3BhdGNoIiwiZHJhd1BvbHlsaW5lIiwibGF5ZXJMYXRsbmdzIiwiZXZlbnRQYXRoc0FzTWFwT2JqZWN0cyIsImV2ZW50UGF0aCIsIkwiLCJwb2x5bGluZSIsImNvbG9yIiwid2VpZ2h0IiwiY2xhc3NOYW1lIiwic3Ryb2tlIiwiYWRkVG8iLCJwdXNoIiwiaWQiLCJob3ZlcmVkIiwicmVuZGVyRXZlbnRQYXRoIiwiaXNIb3ZlciIsInVuZGVmaW5lZCIsImxheWVycyIsIl9sYXllcnMiLCJwYXRoIiwiZm9yRWFjaCIsInByb3BlcnR5Iiwia2FuZG9fb2JqZWN0X2lkIiwiZWRnZV9pZCIsImthbmRvX29iamVjdCIsImdldExhdExuZ3MiLCJsZW5ndGgiLCJmaXRCb3VuZHMiLCJmZWF0dXJlR3JvdXAiLCJnZXRCb3VuZHMiLCJwYWQiLCJyZW1vdmVMYXllciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBSkE7QUFpQkEsSUFBTUEsU0FBMkIsR0FBRyxTQUE5QkEsU0FBOEIsT0FJOUI7QUFBQSxNQUhKQyxLQUdJLFFBSEpBLEtBR0k7QUFBQSxNQUZKQyxXQUVJLFFBRkpBLFdBRUk7QUFBQSw2QkFESkMsVUFDSTtBQUFBLE1BREpBLFVBQ0ksZ0NBRFMsRUFDVDtBQUNKLE1BQVFDLEdBQVIsR0FBZ0JGLFdBQWhCLENBQVFFLEdBQVI7QUFDQSxNQUFNQyxRQUFRLEdBQUcsOEJBQWpCOztBQUVBLE1BQU1DLFlBQVksR0FBRyxTQUFmQSxZQUFlLENBQ25CTCxLQURtQixFQUVuQk0sWUFGbUIsRUFHbkJDLHNCQUhtQixFQUloQjtBQUNILFFBQUlDLFNBQVMsR0FBR0MsaUJBQUVDLFFBQUYsQ0FBV0osWUFBWCxFQUF5QjtBQUN2Q0ssTUFBQUEsS0FBSyxFQUFFLGVBRGdDO0FBRXZDQyxNQUFBQSxNQUFNLEVBQUUsRUFGK0I7QUFHdkNDLE1BQUFBLFNBQVMsRUFBRSxZQUg0QjtBQUl2Q0MsTUFBQUEsTUFBTSxFQUFFO0FBSitCLEtBQXpCLEVBS2JDLEtBTGEsQ0FLUFosR0FMTyxDQUFoQjs7QUFPQUksSUFBQUEsc0JBQXNCLENBQUNTLElBQXZCLENBQTRCUixTQUE1QjtBQUNBQSxJQUFBQSxTQUFTLENBQUMsaUJBQUQsQ0FBVCxHQUErQlIsS0FBSyxDQUFDaUIsRUFBckM7QUFDQVQsSUFBQUEsU0FBUyxDQUFDLGNBQUQsQ0FBVCxHQUE0QixXQUE1Qjs7QUFFQSxRQUFJUixLQUFLLENBQUNrQixPQUFWLEVBQW1CO0FBQ2pCZCxNQUFBQSxRQUFRLENBQUMsbUNBQXFCRyxzQkFBckIsQ0FBRCxDQUFSO0FBQ0QsS0FGRCxNQUVPO0FBQ0xILE1BQUFBLFFBQVEsQ0FBQyxtQ0FBcUJHLHNCQUFyQixDQUFELENBQVI7QUFDRDtBQUNGLEdBckJEOztBQXVCQSxNQUFNWSxlQUFlLEdBQUcsU0FBbEJBLGVBQWtCLENBQUNuQixLQUFELEVBQWdCb0IsT0FBaEIsRUFBcUM7QUFDM0QsUUFBSWpCLEdBQUcsS0FBS2tCLFNBQVosRUFBdUI7QUFDckIsVUFBSWQsc0JBQTZCLEdBQUcsRUFBcEM7QUFDQSxVQUFJZSxNQUFNLEdBQUduQixHQUFHLENBQUNvQixPQUFqQjtBQUVBdkIsTUFBQUEsS0FBSyxDQUFDd0IsSUFBTixDQUFXQyxPQUFYLENBQW1CLFVBQUNELElBQUQsRUFBZTtBQUNoQyxhQUFLLElBQU1FLFFBQVgsSUFBdUJKLE1BQXZCLEVBQStCO0FBQzdCLGNBQ0VBLE1BQU0sQ0FBQ0ksUUFBRCxDQUFOLENBQWlCQyxlQUFqQixLQUFxQ04sU0FBckMsSUFDQUMsTUFBTSxDQUFDSSxRQUFELENBQU4sQ0FBaUJDLGVBQWpCLEtBQXFDSCxJQUFJLENBQUNJLE9BRDFDLElBRUFOLE1BQU0sQ0FBQ0ksUUFBRCxDQUFOLENBQWlCRyxZQUFqQixLQUFrQyxNQUhwQyxFQUlFO0FBQ0EsZ0JBQUl2QixZQUFZLEdBQUdnQixNQUFNLENBQUNJLFFBQUQsQ0FBTixDQUFpQkksVUFBakIsRUFBbkI7QUFFQXpCLFlBQUFBLFlBQVksQ0FBQ0wsS0FBRCxFQUFRTSxZQUFSLEVBQXNCQyxzQkFBdEIsQ0FBWjtBQUNEO0FBQ0Y7QUFDRixPQVpEOztBQWNBLFVBQ0UsQ0FBQ2EsT0FBRCxJQUNBbEIsVUFBVSxDQUFDNkIsTUFBWCxLQUFzQixDQUR0QixJQUVBeEIsc0JBQXNCLENBQUN3QixNQUF2QixHQUFnQyxDQUhsQyxFQUlFO0FBQ0E1QixRQUFBQSxHQUFHLENBQUM2QixTQUFKLENBQ0V2QixpQkFBRXdCLFlBQUYsQ0FBZTFCLHNCQUFmLEVBQXVDMkIsU0FBdkMsR0FBbURDLEdBQW5ELENBQXVELEdBQXZELENBREY7QUFHRDtBQUNGO0FBQ0YsR0E3QkQ7O0FBK0JBLHdCQUFVLFlBQU07QUFDZDtBQUNBLFFBQUlqQyxVQUFKLEVBQWdCO0FBQ2RBLE1BQUFBLFVBQVUsQ0FBQ3VCLE9BQVgsQ0FBbUIsVUFBQ0QsSUFBRCxFQUFVO0FBQzNCckIsUUFBQUEsR0FBRyxDQUFDaUMsV0FBSixDQUFnQlosSUFBaEI7QUFDRCxPQUZEO0FBSUFMLE1BQUFBLGVBQWUsQ0FBQ25CLEtBQUQsRUFBUUEsS0FBSyxDQUFDa0IsT0FBZCxDQUFmO0FBQ0Q7QUFDRixHQVRELEVBU0csQ0FBQ2xCLEtBQUQsQ0FUSDtBQVdBLHNCQUFPLHlDQUFQO0FBQ0QsQ0ExRUQ7O2VBNEVlRCxTIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0IEwgZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2ggfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQge1xuICBzZXRGb2N1c2VkRXZlbnRQYXRocyxcbiAgc2V0SG92ZXJlZEV2ZW50UGF0aHMsXG59IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvYWN0aW9ucyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgSUdsb2JhbFN0YXRlIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9tb2RlbHMvSUdsb2JhbFN0YXRlJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIGV2ZW50OiBJRXZlbnQ7XG4gIGdsb2JhbF9kYXRhOiBJR2xvYmFsU3RhdGU7XG4gIGV2ZW50UGF0aHM/OiBhbnlbXTtcbn07XG5cbmNvbnN0IEV2ZW50UGF0aDogUmVhY3QuRkM8SVByb3BzPiA9ICh7XG4gIGV2ZW50LFxuICBnbG9iYWxfZGF0YSxcbiAgZXZlbnRQYXRocyA9IFtdLFxufSkgPT4ge1xuICBjb25zdCB7IG1hcCB9ID0gZ2xvYmFsX2RhdGE7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcblxuICBjb25zdCBkcmF3UG9seWxpbmUgPSAoXG4gICAgZXZlbnQ6IElFdmVudCxcbiAgICBsYXllckxhdGxuZ3M6IGFueSxcbiAgICBldmVudFBhdGhzQXNNYXBPYmplY3RzOiBhbnksXG4gICkgPT4ge1xuICAgIGxldCBldmVudFBhdGggPSBMLnBvbHlsaW5lKGxheWVyTGF0bG5ncywge1xuICAgICAgY29sb3I6ICdyZ2JhKDAsMCwwLDApJyxcbiAgICAgIHdlaWdodDogMTAsXG4gICAgICBjbGFzc05hbWU6ICdldmVudC1wYXRoJyxcbiAgICAgIHN0cm9rZTogdHJ1ZSxcbiAgICB9KS5hZGRUbyhtYXApO1xuXG4gICAgZXZlbnRQYXRoc0FzTWFwT2JqZWN0cy5wdXNoKGV2ZW50UGF0aCk7XG4gICAgZXZlbnRQYXRoWydrYW5kb19vYmplY3RfaWQnXSA9IGV2ZW50LmlkO1xuICAgIGV2ZW50UGF0aFsna2FuZG9fb2JqZWN0J10gPSAnRXZlbnRQYXRoJztcblxuICAgIGlmIChldmVudC5ob3ZlcmVkKSB7XG4gICAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnRQYXRocyhldmVudFBhdGhzQXNNYXBPYmplY3RzKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRFdmVudFBhdGhzKGV2ZW50UGF0aHNBc01hcE9iamVjdHMpKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgcmVuZGVyRXZlbnRQYXRoID0gKGV2ZW50OiBJRXZlbnQsIGlzSG92ZXI6IGJvb2xlYW4pID0+IHtcbiAgICBpZiAobWFwICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGxldCBldmVudFBhdGhzQXNNYXBPYmplY3RzOiBhbnlbXSA9IFtdO1xuICAgICAgbGV0IGxheWVycyA9IG1hcC5fbGF5ZXJzO1xuXG4gICAgICBldmVudC5wYXRoLmZvckVhY2goKHBhdGg6IGFueSkgPT4ge1xuICAgICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGxheWVycykge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGxheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0X2lkICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgIGxheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0X2lkID09PSBwYXRoLmVkZ2VfaWQgJiZcbiAgICAgICAgICAgIGxheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0ID09PSAnRWRnZSdcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIGxldCBsYXllckxhdGxuZ3MgPSBsYXllcnNbcHJvcGVydHldLmdldExhdExuZ3MoKTtcblxuICAgICAgICAgICAgZHJhd1BvbHlsaW5lKGV2ZW50LCBsYXllckxhdGxuZ3MsIGV2ZW50UGF0aHNBc01hcE9iamVjdHMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIGlmIChcbiAgICAgICAgIWlzSG92ZXIgJiZcbiAgICAgICAgZXZlbnRQYXRocy5sZW5ndGggPT09IDAgJiZcbiAgICAgICAgZXZlbnRQYXRoc0FzTWFwT2JqZWN0cy5sZW5ndGggPiAwXG4gICAgICApIHtcbiAgICAgICAgbWFwLmZpdEJvdW5kcyhcbiAgICAgICAgICBMLmZlYXR1cmVHcm91cChldmVudFBhdGhzQXNNYXBPYmplY3RzKS5nZXRCb3VuZHMoKS5wYWQoMC4xKSxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBDbGVhbnVwIGV4aXN0aW5nIHBhdGhzIGlmIG5lY2Vzc2FyeVxuICAgIGlmIChldmVudFBhdGhzKSB7XG4gICAgICBldmVudFBhdGhzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgICAgfSk7XG5cbiAgICAgIHJlbmRlckV2ZW50UGF0aChldmVudCwgZXZlbnQuaG92ZXJlZCk7XG4gICAgfVxuICB9LCBbZXZlbnRdKTtcblxuICByZXR1cm4gPGRpdj48L2Rpdj47XG59O1xuXG5leHBvcnQgZGVmYXVsdCBFdmVudFBhdGg7XG4iXX0=
106
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9ldmVudHMvRXZlbnRQYXRoLnRzeCJdLCJuYW1lcyI6WyJFdmVudFBhdGgiLCJldmVudCIsImdsb2JhbF9kYXRhIiwiZm9jdXNlZEV2ZW50IiwiZm9jdXNlZEV2ZW50UGF0aHMiLCJob3ZlcmVkRXZlbnQiLCJob3ZlcmVkRXZlbnRQYXRocyIsIm1hcCIsImRpc3BhdGNoIiwiZHJhd1BvbHlsaW5lIiwibGF5ZXJMYXRsbmdzIiwiUGF0aHMiLCJpc0hvdmVyIiwiZXZlbnRQYXRoIiwiTCIsInBvbHlsaW5lIiwiY29sb3IiLCJ3ZWlnaHQiLCJjbGFzc05hbWUiLCJzdHJva2UiLCJhZGRUbyIsInB1c2giLCJpZCIsInJlbmRlckV2ZW50UGF0aCIsInVuZGVmaW5lZCIsImxheWVycyIsIl9sYXllcnMiLCJwYXRoIiwiZm9yRWFjaCIsInByb3BlcnR5Iiwia2FuZG9fb2JqZWN0X2lkIiwiZWRnZV9pZCIsImthbmRvX29iamVjdCIsImdldExhdExuZ3MiLCJsZW5ndGgiLCJmaXRCb3VuZHMiLCJmZWF0dXJlR3JvdXAiLCJnZXRCb3VuZHMiLCJwYWQiLCJyZW1vdmVMYXllciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBSkE7QUFvQkEsSUFBTUEsU0FBMkIsR0FBRyxTQUE5QkEsU0FBOEIsT0FROUI7QUFBQSxNQVBKQyxLQU9JLFFBUEpBLEtBT0k7QUFBQSxNQU5KQyxXQU1JLFFBTkpBLFdBTUk7QUFBQSwrQkFMSkMsWUFLSTtBQUFBLE1BTEpBLFlBS0ksa0NBTFcsSUFLWDtBQUFBLG1DQUpKQyxpQkFJSTtBQUFBLE1BSkpBLGlCQUlJLHNDQUpnQixFQUloQjtBQUFBLCtCQUZKQyxZQUVJO0FBQUEsTUFGSkEsWUFFSSxrQ0FGVyxJQUVYO0FBQUEsbUNBREpDLGlCQUNJO0FBQUEsTUFESkEsaUJBQ0ksc0NBRGdCLEVBQ2hCO0FBQ0osTUFBUUMsR0FBUixHQUFnQkws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WUFBTTtBQUNkO0FBQ0EsUUFBSUcsaUJBQUosRUFBdUI7QUFDckJBLE1BQUFBLGlCQUFpQixDQUFDc0IsT0FBbEIsQ0FBMEIsVUFBQ0QsSUFBRCxFQUFVO0FBQ2xDcEIsUUFBQUEsR0FBRyxDQUFDZ0MsV0FBSixDQUFnQlosSUFBaEI7QUFDRCxPQUZEO0FBR0Q7O0FBRUQsUUFBSTFCLEtBQUssQ0FBQzBCLElBQU4sS0FBZSxJQUFmLElBQXVCdEIsWUFBWSxLQUFLLElBQTVDLEVBQWtEO0FBQ2hEa0IsTUFBQUEsZUFBZSxDQUFDdEIsS0FBRCxFQUFRLElBQVIsQ0FBZjtBQUNEO0FBQ0YsR0FYRCxFQVdHLENBQUNJLFlBQUQsQ0FYSDtBQWFBLHNCQUFPLHlDQUFQO0FBQ0QsQ0F6RkQ7O2VBMkZlTCxTIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0IEwgZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2ggfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQge1xuICBzZXRGb2N1c2VkRXZlbnRQYXRocyxcbiAgc2V0SG92ZXJlZEV2ZW50UGF0aHMsXG59IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvYWN0aW9ucyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgSUdsb2JhbFN0YXRlIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9tb2RlbHMvSUdsb2JhbFN0YXRlJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIGV2ZW50OiBJRXZlbnQ7XG4gIGdsb2JhbF9kYXRhOiBJR2xvYmFsU3RhdGU7XG4gIGZvY3VzZWRFdmVudD86IElFdmVudDtcbiAgaG92ZXJlZEV2ZW50PzogSUV2ZW50O1xuICBmb2N1c2VkRXZlbnRQYXRocz86IGFueVtdO1xuICBob3ZlcmVkRXZlbnRQYXRocz86IGFueVtdO1xufTtcblxuY29uc3QgRXZlbnRQYXRoOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHtcbiAgZXZlbnQsXG4gIGdsb2JhbF9kYXRhLFxuICBmb2N1c2VkRXZlbnQgPSBudWxsLFxuICBmb2N1c2VkRXZlbnRQYXRocyA9IFtdLFxuXG4gIGhvdmVyZWRFdmVudCA9IG51bGwsXG4gIGhvdmVyZWRFdmVudFBhdGhzID0gW10sXG59KSA9PiB7XG4gIGNvbnN0IHsgbWFwIH0gPSBnbG9iYWxfZGF0YTtcblxuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG5cbiAgY29uc3QgZHJhd1BvbHlsaW5lID0gKFxuICAgIGV2ZW50OiBJRXZlbnQsXG4gICAgbGF5ZXJMYXRsbmdzOiBhbnksXG4gICAgUGF0aHM6IGFueSxcbiAgICBpc0hvdmVyOiBib29sZWFuLFxuICApID0+IHtcbiAgICBsZXQgZXZlbnRQYXRoID0gTC5wb2x5bGluZShsYXllckxhdGxuZ3MsIHtcbiAgICAgIGNvbG9yOiAncmdiYSgwLDAsMCwwKScsXG4gICAgICB3ZWlnaHQ6IDEwLFxuICAgICAgY2xhc3NOYW1lOiAnZXZlbnQtcGF0aCcsXG4gICAgICBzdHJva2U6IHRydWUsXG4gICAgfSkuYWRkVG8obWFwKTtcblxuICAgIFBhdGhzLnB1c2goZXZlbnRQYXRoKTtcblxuICAgIGV2ZW50UGF0aFsna2FuZG9fb2JqZWN0X2lkJ10gPSBldmVudC5pZDtcbiAgICBldmVudFBhdGhbJ2thbmRvX29iamVjdCddID0gJ0V2ZW50UGF0aCc7XG4gICAgaWYgKGlzSG92ZXIpIHtcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudFBhdGhzKFBhdGhzKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRFdmVudFBhdGhzKFBhdGhzKSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IHJlbmRlckV2ZW50UGF0aCA9IChldmVudDogSUV2ZW50LCBpc0hvdmVyOiBib29sZWFuKSA9PiB7XG4gICAgaWYgKG1hcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBsZXQgUGF0aHM6IGFueVtdID0gW107XG4gICAgICBsZXQgbGF5ZXJzID0gbWFwLl9sYXllcnM7XG5cbiAgICAgIGV2ZW50LnBhdGguZm9yRWFjaCgocGF0aDogYW55KSA9PiB7XG4gICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgaW4gbGF5ZXJzKSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3RfaWQgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3RfaWQgPT09IHBhdGguZWRnZV9pZCAmJlxuICAgICAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3QgPT09ICdFZGdlJ1xuICAgICAgICAgICkge1xuICAgICAgICAgICAgbGV0IGxheWVyTGF0bG5ncyA9IGxheWVyc1twcm9wZXJ0eV0uZ2V0TGF0TG5ncygpO1xuXG4gICAgICAgICAgICBkcmF3UG9seWxpbmUoZXZlbnQsIGxheWVyTGF0bG5ncywgUGF0aHMsIGlzSG92ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIGlmICghaXNIb3ZlciAmJiBmb2N1c2VkRXZlbnRQYXRocy5sZW5ndGggPT09IDAgJiYgUGF0aHMubGVuZ3RoID4gMCkge1xuICAgICAgICBtYXAuZml0Qm91bmRzKEwuZmVhdHVyZUdyb3VwKFBhdGhzKS5nZXRCb3VuZHMoKS5wYWQoMC4xKSk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gQ2xlYW51cCBleGlzdGluZyBwYXRocyBpZiBuZWNlc3NhcnlcbiAgICBpZiAoZm9jdXNlZEV2ZW50UGF0aHMgIT09IG51bGwpIHtcbiAgICAgIGZvY3VzZWRFdmVudFBhdGhzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKGV2ZW50LnBhdGggIT09IG51bGwgJiYgZm9jdXNlZEV2ZW50ICE9PSBudWxsKSB7XG4gICAgICByZW5kZXJFdmVudFBhdGgoZXZlbnQsIGZhbHNlKTtcbiAgICB9XG4gIH0sIFtmb2N1c2VkRXZlbnRdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIENsZWFudXAgZXhpc3RpbmcgcGF0aHMgaWYgbmVjZXNzYXJ5XG4gICAgaWYgKGhvdmVyZWRFdmVudFBhdGhzKSB7XG4gICAgICBob3ZlcmVkRXZlbnRQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgIG1hcC5yZW1vdmVMYXllcihwYXRoKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChldmVudC5wYXRoICE9PSBudWxsICYmIGhvdmVyZWRFdmVudCAhPT0gbnVsbCkge1xuICAgICAgcmVuZGVyRXZlbnRQYXRoKGV2ZW50LCB0cnVlKTtcbiAgICB9XG4gIH0sIFtob3ZlcmVkRXZlbnRdKTtcblxuICByZXR1cm4gPGRpdj48L2Rpdj47XG59O1xuXG5leHBvcnQgZGVmYXVsdCBFdmVudFBhdGg7XG4iXX0=
@@ -0,0 +1,81 @@
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 _leaflet = _interopRequireDefault(require("leaflet"));
13
+
14
+ var _react = _interopRequireWildcard(require("react"));
15
+
16
+ var _reactRedux = require("react-redux");
17
+
18
+ var _actions = require("store/events/actions");
19
+
20
+ 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); }
21
+
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
+
24
+ // @ts-ignore
25
+ var EventPath = function EventPath(_ref) {
26
+ var event = _ref.event,
27
+ global_data = _ref.global_data,
28
+ _ref$hoveredEvent = _ref.hoveredEvent,
29
+ hoveredEvent = _ref$hoveredEvent === void 0 ? null : _ref$hoveredEvent,
30
+ _ref$hoveredEventPath = _ref.hoveredEventPaths,
31
+ hoveredEventPaths = _ref$hoveredEventPath === void 0 ? [] : _ref$hoveredEventPath;
32
+ var map = global_data.map;
33
+ var dispatch = (0, _reactRedux.useDispatch)();
34
+
35
+ var drawPolyline = function drawPolyline(event, layerLatlngs, Paths, isHover) {
36
+ var eventPath = _leaflet.default.polyline(layerLatlngs, {
37
+ color: 'rgba(0,0,0,0)',
38
+ weight: 10,
39
+ className: 'event-path',
40
+ stroke: true
41
+ }).addTo(map);
42
+
43
+ Paths.push(eventPath);
44
+ eventPath['kando_object_id'] = event.id;
45
+ eventPath['kando_object'] = 'EventPath';
46
+ dispatch((0, _actions.setHoveredEventPaths)(Paths));
47
+ };
48
+
49
+ var renderEventPath = function renderEventPath(event, isHover) {
50
+ if (map !== undefined) {
51
+ var Paths = [];
52
+ var layers = map._layers;
53
+ event.path.forEach(function (path) {
54
+ for (var property in layers) {
55
+ if (layers[property].kando_object_id !== undefined && layers[property].kando_object_id === path.edge_id && layers[property].kando_object === 'Edge') {
56
+ var layerLatlngs = layers[property].getLatLngs();
57
+ drawPolyline(event, layerLatlngs, Paths, isHover);
58
+ }
59
+ }
60
+ });
61
+ }
62
+ };
63
+
64
+ (0, _react.useEffect)(function () {
65
+ // Cleanup existing paths if necessary
66
+ if (hoveredEventPaths !== null) {
67
+ hoveredEventPaths.forEach(function (path) {
68
+ map.removeLayer(path);
69
+ });
70
+ }
71
+
72
+ if (event.path !== null && hoveredEvent !== null && hoveredEventPaths.length === 0) {
73
+ renderEventPath(event, true);
74
+ }
75
+ }, [hoveredEvent, hoveredEventPaths]);
76
+ return /*#__PURE__*/_react.default.createElement("div", null);
77
+ };
78
+
79
+ var _default = EventPath;
80
+ exports.default = _default;
81
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9ldmVudHMvRXZlbnRQYXRoSG92ZXIudHN4Il0sIm5hbWVzIjpbIkV2ZW50UGF0aCIsImV2ZW50IiwiZ2xvYmFsX2RhdGEiLCJob3ZlcmVkRXZlbnQiLCJob3ZlcmVkRXZlbnRQYXRocyIsIm1hcCIsImRpc3BhdGNoIiwiZHJhd1BvbHlsaW5lIiwibGF5ZXJMYXRsbmdzIiwiUGF0aHMiLCJpc0hvdmVyIiwiZXZlbnRQYXRoIiwiTCIsInBvbHlsaW5lIiwiY29sb3IiLCJ3ZWlnaHQiLCJjbGFzc05hbWUiLCJzdHJva2UiLCJhZGRUbyIsInB1c2giLCJpZCIsInJlbmRlckV2ZW50UGF0aCIsInVuZGVmaW5lZCIsImxheWVycyIsIl9sYXllcnMiLCJwYXRoIiwiZm9yRWFjaCIsInByb3BlcnR5Iiwia2FuZG9fb2JqZWN0X2lkIiwiZWRnZV9pZCIsImthbmRvX29iamVjdCIsImdldExhdExuZ3MiLCJyZW1vdmVMYXllciIsImxlbmd0aCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBSkE7QUFlQSxJQUFNQSxTQUEyQixHQUFHLFNBQTlCQSxTQUE4QixPQU05QjtBQUFBLE1BTEpDLEtBS0ksUUFMSkEsS0FLSTtBQUFBLE1BSkpDLFdBSUksUUFKSkEsV0FJSTtBQUFBLCtCQUZKQyxZQUVJO0FBQUEsTUFGSkEsWUFFSSxrQ0FGVyxJQUVYO0FBQUEsbUNBREpDLGlCQUNJO0FBQUEsTUFESkEsaUJBQ0ksc0NBRGdCLEVBQ2hCO0FBQ0osTUFBUUMsR0FBUixHQUFnQkgsV0FBaEIsQ0FBUUcsR0FBUjtBQUVBLE1BQU1DLFFBQVEsR0FBRyw4QkFBakI7O0FBRUEsTUFBTUMsWUFBWSxHQUFHLFNBQWZBLFlBQWUsQ0FDbkJOLEtBRG1CLEVBRW5CTyxZQUZtQixFQUduQkMsS0FIbUIsRUFJbkJDLE9BSm1CLEVBS2hCO0FBQ0gsUUFBSUMsU0FBUyxHQUFHQyxpQkFBRUMsUUFBRixDQUFXTCxZQUFYLEVBQXlCO0FBQ3ZDTSxNQUFBQSxLQUFLLEVBQUUsZUFEZ0M7QUFFdkNDLE1BQUFBLE1BQU0sRUFBRSxFQUYrQjtBQUd2Q0MsTUFBQUEsU0FBUyxFQUFFLFlBSDRCO0FBSXZDQyxNQUFBQSxNQUFNLEVBQUU7QUFKK0IsS0FBekIsRUFLYkMsS0FMYSxDQUtQYixHQUxPLENBQWhCOztBQU9BSSxJQUFBQSxLQUFLLENBQUNVLElBQU4sQ0FBV1IsU0FBWDtBQUVBQSxJQUFBQSxTQUFTLENBQUMsaUJBQUQsQ0FBVCxHQUErQlYsS0FBSyxDQUFDbUIsRUFBckM7QUFDQVQsSUFBQUEsU0FBUyxDQUFDLGNBQUQsQ0FBVCxHQUE0QixXQUE1QjtBQUNBTCxJQUFBQSxRQUFRLENBQUMsbUNBQXFCRyxLQUFyQixDQUFELENBQVI7QUFDRCxHQWxCRDs7QUFvQkEsTUFBTVksZUFBZSxHQUFHLFNBQWxCQSxlQUFrQixDQUFDcEIsS0FBRCxFQUFnQlMsT0FBaEIsRUFBcUM7QUFDM0QsUUFBSUwsR0FBRyxLQUFLaUIsU0FBWixFQUF1QjtBQUNyQixVQUFJYixLQUFZLEdBQUcsRUFBbkI7QUFDQSxVQUFJYyxNQUFNLEdBQUdsQixHQUFHLENBQUNtQixPQUFqQjtBQUVBdkIsTUFBQUEsS0FBSyxDQUFDd0IsSUFBTixDQUFXQyxPQUFYLENBQW1CLFVBQUNELElBQUQsRUFBZTtBQUNoQyxhQUFLLElBQU1FLFFBQVgsSUFBdUJKLE1BQXZCLEVBQStCO0FBQzdCLGNBQ0VBLE1BQU0sQ0FBQ0ksUUFBRCxDQUFOLENBQWlCQyxlQUFqQixLQUFxQ04sU0FBckMsSUFDQUMsTUFBTSxDQUFDSSxRQUFELENBQU4sQ0FBaUJDLGVBQWpCLEtBQXFDSCxJQUFJLENBQUNJLE9BRDFDLElBRUFOLE1BQU0sQ0FBQ0ksUUFBRCxDQUFOLENBQWlCRyxZQUFqQixLQUFrQyxNQUhwQyxFQUlFO0FBQ0EsZ0JBQUl0QixZQUFZLEdBQUdlLE1BQU0sQ0FBQ0ksUUFBRCxDQUFOLENBQWlCSSxVQUFqQixFQUFuQjtBQUVBeEIsWUFBQUEsWUFBWSxDQUFDTixLQUFELEVBQVFPLFlBQVIsRUFBc0JDLEtBQXRCLEVBQTZCQyxPQUE3QixDQUFaO0FBQ0Q7QUFDRjtBQUNGLE9BWkQ7QUFhRDtBQUNGLEdBbkJEOztBQXFCQSx3QkFBVSxZQUFNO0FBQ2Q7QUFDQSxRQUFJTixpQkFBaUIsS0FBSyxJQUExQixFQUFnQztBQUM5QkEsTUFBQUEsaUJBQWlCLENBQUNzQixPQUFsQixDQUEwQixVQUFDRCxJQUFELEVBQVU7QUFDbENwQixRQUFBQSxHQUFHLENBQUMyQixXQUFKLENBQWdCUCxJQUFoQjtBQUNELE9BRkQ7QUFHRDs7QUFFRCxRQUNFeEIsS0FBSyxDQUFDd0IsSUFBTixLQUFlLElBQWYsSUFDQXRCLFlBQVksS0FBSyxJQURqQixJQUVBQyxpQkFBaUIsQ0FBQzZCLE1BQWxCLEtBQTZCLENBSC9CLEVBSUU7QUFDQVosTUFBQUEsZUFBZSxDQUFDcEIsS0FBRCxFQUFRLElBQVIsQ0FBZjtBQUNEO0FBQ0YsR0FmRCxFQWVHLENBQUNFLFlBQUQsRUFBZUMsaUJBQWYsQ0FmSDtBQWlCQSxzQkFBTyx5Q0FBUDtBQUNELENBdEVEOztlQXdFZUosUyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1pZ25vcmVcbmltcG9ydCBMIGZyb20gJ2xlYWZsZXQnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgc2V0SG92ZXJlZEV2ZW50UGF0aHMgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCB7IElHbG9iYWxTdGF0ZSB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvbW9kZWxzL0lHbG9iYWxTdGF0ZSc7XG5cbnR5cGUgSVByb3BzID0ge1xuICBldmVudDogSUV2ZW50O1xuICBnbG9iYWxfZGF0YTogSUdsb2JhbFN0YXRlO1xuICBob3ZlcmVkRXZlbnQ/OiBJRXZlbnQ7XG4gIGhvdmVyZWRFdmVudFBhdGhzPzogYW55W107XG59O1xuXG5jb25zdCBFdmVudFBhdGg6IFJlYWN0LkZDPElQcm9wcz4gPSAoe1xuICBldmVudCxcbiAgZ2xvYmFsX2RhdGEsXG5cbiAgaG92ZXJlZEV2ZW50ID0gbnVsbCxcbiAgaG92ZXJlZEV2ZW50UGF0aHMgPSBbXSxcbn0pID0+IHtcbiAgY29uc3QgeyBtYXAgfSA9IGdsb2JhbF9kYXRhO1xuXG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcblxuICBjb25zdCBkcmF3UG9seWxpbmUgPSAoXG4gICAgZXZlbnQ6IElFdmVudCxcbiAgICBsYXllckxhdGxuZ3M6IGFueSxcbiAgICBQYXRoczogYW55LFxuICAgIGlzSG92ZXI6IGJvb2xlYW4sXG4gICkgPT4ge1xuICAgIGxldCBldmVudFBhdGggPSBMLnBvbHlsaW5lKGxheWVyTGF0bG5ncywge1xuICAgICAgY29sb3I6ICdyZ2JhKDAsMCwwLDApJyxcbiAgICAgIHdlaWdodDogMTAsXG4gICAgICBjbGFzc05hbWU6ICdldmVudC1wYXRoJyxcbiAgICAgIHN0cm9rZTogdHJ1ZSxcbiAgICB9KS5hZGRUbyhtYXApO1xuXG4gICAgUGF0aHMucHVzaChldmVudFBhdGgpO1xuXG4gICAgZXZlbnRQYXRoWydrYW5kb19vYmplY3RfaWQnXSA9IGV2ZW50LmlkO1xuICAgIGV2ZW50UGF0aFsna2FuZG9fb2JqZWN0J10gPSAnRXZlbnRQYXRoJztcbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnRQYXRocyhQYXRocykpO1xuICB9O1xuXG4gIGNvbnN0IHJlbmRlckV2ZW50UGF0aCA9IChldmVudDogSUV2ZW50LCBpc0hvdmVyOiBib29sZWFuKSA9PiB7XG4gICAgaWYgKG1hcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBsZXQgUGF0aHM6IGFueVtdID0gW107XG4gICAgICBsZXQgbGF5ZXJzID0gbWFwLl9sYXllcnM7XG5cbiAgICAgIGV2ZW50LnBhdGguZm9yRWFjaCgocGF0aDogYW55KSA9PiB7XG4gICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgaW4gbGF5ZXJzKSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3RfaWQgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3RfaWQgPT09IHBhdGguZWRnZV9pZCAmJlxuICAgICAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3QgPT09ICdFZGdlJ1xuICAgICAgICAgICkge1xuICAgICAgICAgICAgbGV0IGxheWVyTGF0bG5ncyA9IGxheWVyc1twcm9wZXJ0eV0uZ2V0TGF0TG5ncygpO1xuXG4gICAgICAgICAgICBkcmF3UG9seWxpbmUoZXZlbnQsIGxheWVyTGF0bG5ncywgUGF0aHMsIGlzSG92ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gQ2xlYW51cCBleGlzdGluZyBwYXRocyBpZiBuZWNlc3NhcnlcbiAgICBpZiAoaG92ZXJlZEV2ZW50UGF0aHMgIT09IG51bGwpIHtcbiAgICAgIGhvdmVyZWRFdmVudFBhdGhzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgZXZlbnQucGF0aCAhPT0gbnVsbCAmJlxuICAgICAgaG92ZXJlZEV2ZW50ICE9PSBudWxsICYmXG4gICAgICBob3ZlcmVkRXZlbnRQYXRocy5sZW5ndGggPT09IDBcbiAgICApIHtcbiAgICAgIHJlbmRlckV2ZW50UGF0aChldmVudCwgdHJ1ZSk7XG4gICAgfVxuICB9LCBbaG92ZXJlZEV2ZW50LCBob3ZlcmVkRXZlbnRQYXRoc10pO1xuXG4gIHJldHVybiA8ZGl2PjwvZGl2Pjtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEV2ZW50UGF0aDtcbiJdfQ==
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  var _typeof = require("@babel/runtime/helpers/typeof");
4
6
 
5
7
  Object.defineProperty(exports, "__esModule", {
@@ -7,13 +9,15 @@ Object.defineProperty(exports, "__esModule", {
7
9
  });
8
10
  exports.NetworkForSpecificEvent = void 0;
9
11
 
12
+ var _leaflet = _interopRequireDefault(require("leaflet"));
13
+
10
14
  var _react = _interopRequireWildcard(require("react"));
11
15
 
12
16
  var _reactRedux = require("react-redux");
13
17
 
14
18
  var _actions = require("store/events/actions");
15
19
 
16
- var _EventUtils = require("./EventUtils");
20
+ var _whitePoint = _interopRequireDefault(require("../../../assets/white-point.png"));
17
21
 
18
22
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
23
 
@@ -26,26 +30,114 @@ var NetworkForSpecificEvent = function NetworkForSpecificEvent(_ref) {
26
30
  points = _ref.points,
27
31
  map = _ref.map;
28
32
  var dispatch = (0, _reactRedux.useDispatch)();
33
+ var edgesToDraw = [];
34
+ var firstEdge = edges.find(function (edge) {
35
+ return edge.id === event.path[0].edge_id;
36
+ });
37
+
38
+ if (firstEdge !== undefined) {
39
+ var upstreamEdge = edges.find(function (edge) {
40
+ return edge.target_point_id === firstEdge.source_point_id;
41
+ });
29
42
 
30
- var cleanupLogic = function cleanupLogic() {
31
- dispatch((0, _actions.setHoveredEdgePaths)([]));
32
- var layers = map._layers;
43
+ if (upstreamEdge) {
44
+ var sourcePoint = points.find(function (point) {
45
+ return point.id === upstreamEdge.source_point_id;
46
+ });
33
47
 
34
- for (var property in layers) {
35
- if (layers[property].kando_object !== undefined && layers[property].kando_object === 'UpstreamPoint') {
36
- map.removeLayer(layers[property]);
48
+ if (sourcePoint && !sourcePoint.has_device) {
49
+ edgesToDraw.push(upstreamEdge);
37
50
  }
38
51
  }
52
+ }
53
+
54
+ event.path.forEach(function (part) {
55
+ var matchedPart = edges.find(function (edge) {
56
+ return edge.id === part.edge_id;
57
+ });
58
+ if (matchedPart !== undefined) edgesToDraw.push(matchedPart);
59
+ });
60
+
61
+ var drawManholeIcon = function drawManholeIcon(sourcePoint) {
62
+ var pointIcon = _leaflet.default.icon({
63
+ iconUrl: _whitePoint.default,
64
+ iconSize: [9, 9],
65
+ iconAnchor: [4.5, 4.5]
66
+ });
67
+
68
+ var manholeIcon = _leaflet.default.marker([sourcePoint.latitude, sourcePoint.longitude], {
69
+ icon: pointIcon,
70
+ riseOnHover: true
71
+ }).addTo(map);
72
+
73
+ manholeIcon.bindTooltip("".concat(sourcePoint.group.name, " (").concat(sourcePoint.id, ")"));
74
+ manholeIcon['kando_object_id'] = sourcePoint.id;
75
+ manholeIcon['kando_object'] = 'UpstreamPoint';
76
+ };
77
+
78
+ var drawNetwork = function drawNetwork(edges) {
79
+ var latlngs = [];
80
+ edges.forEach(function (edge) {
81
+ edge.shape_data.forEach(function (data) {
82
+ latlngs.push([data.lat, data.lng]);
83
+ });
84
+
85
+ var polylineBack = _leaflet.default.polyline(latlngs, {
86
+ color: 'rgb(227,227,227)',
87
+ weight: 6,
88
+ opacity: 1
89
+ }).addTo(map);
90
+
91
+ if (points.length !== 0) {
92
+ var _sourcePoint = points.find(function (point) {
93
+ return point.id === edge.source_point_id;
94
+ });
95
+
96
+ var targetPoint = points.find(function (point) {
97
+ return point.id === edge.target_point_id;
98
+ });
99
+
100
+ if (_sourcePoint !== undefined && targetPoint !== undefined) {
101
+ polylineBack.bindPopup("Edge ID: ".concat(edge.id, ",<br>\n Source point: ").concat(_sourcePoint.group.name, ",<br>\n Target point: ").concat(targetPoint.group.name, ",\n Distance: ").concat(edge.distance));
102
+ }
103
+
104
+ if (_sourcePoint) drawManholeIcon(_sourcePoint);
105
+ if (targetPoint) drawManholeIcon(targetPoint);
106
+ }
107
+
108
+ polylineBack['kando_object_id'] = edge.id;
109
+ polylineBack['kando_object'] = 'HoveredEdge';
110
+ polylineBack.bringToFront();
111
+
112
+ var polylineFront = _leaflet.default.polyline(latlngs, {
113
+ color: 'rgb(29,29,29)',
114
+ weight: 1,
115
+ opacity: 1
116
+ }).addTo(map);
117
+
118
+ polylineFront['kando_object_id'] = edge.id;
119
+ polylineFront['kando_object'] = 'HoveredEdgeFront';
120
+ polylineFront.bringToFront();
121
+ dispatch((0, _actions.setHoveredEdgePaths)([polylineBack, polylineFront]));
122
+ latlngs = [];
123
+ });
39
124
  };
40
125
 
41
126
  (0, _react.useEffect)(function () {
42
- (0, _EventUtils.findAndDrawEventNetworkEdges)(edges, event, points, dispatch, map);
127
+ drawNetwork(edgesToDraw);
43
128
  return function cleanup() {
44
- cleanupLogic();
129
+ dispatch((0, _actions.setHoveredEdgePaths)([]));
130
+ var layers = map._layers;
131
+
132
+ for (var property in layers) {
133
+ if (layers[property].kando_object !== undefined && layers[property].kando_object === 'UpstreamPoint') {
134
+ map.removeLayer(layers[property]);
135
+ }
136
+ }
45
137
  };
46
138
  }, [event]);
47
139
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
48
140
  };
49
141
 
50
142
  exports.NetworkForSpecificEvent = NetworkForSpecificEvent;
51
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9ldmVudHMvTmV0d29ya0ZvclNwZWNpZmljRXZlbnQudHN4Il0sIm5hbWVzIjpbIk5ldHdvcmtGb3JTcGVjaWZpY0V2ZW50IiwiZXZlbnQiLCJlZGdlcyIsInBvaW50cyIsIm1hcCIsImRpc3BhdGNoIiwiY2xlYW51cExvZ2ljIiwibGF5ZXJzIiwiX2xheWVycyIsInByb3BlcnR5Iiwia2FuZG9fb2JqZWN0IiwidW5kZWZpbmVkIiwicmVtb3ZlTGF5ZXIiLCJjbGVhbnVwIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFFQTs7QUFDQTs7QUFDQTs7QUFJQTs7Ozs7O0FBUkE7QUFpQk8sSUFBTUEsdUJBQXlDLEdBQUcsU0FBNUNBLHVCQUE0QyxPQUtuRDtBQUFBLE1BSkpDLEtBSUksUUFKSkEsS0FJSTtBQUFBLE1BSEpDLEtBR0ksUUFISkEsS0FHSTtBQUFBLE1BRkpDLE1BRUksUUFGSkEsTUFFSTtBQUFBLE1BREpDLEdBQ0ksUUFESkEsR0FDSTtBQUNKLE1BQU1DLFFBQVEsR0FBRyw4QkFBakI7O0FBQ0EsTUFBTUMsWUFBWSxHQUFHLFNBQWZBLFlBQWUsR0FBTTtBQUN6QkQsSUFBQUEsUUFBUSxDQUFDLGtDQUFvQixFQUFwQixDQUFELENBQVI7QUFDQSxRQUFJRSxNQUFNLEdBQUdILEdBQUcsQ0FBQ0ksT0FBakI7O0FBQ0EsU0FBSyxJQUFNQyxRQUFYLElBQXVCRixNQUF2QixFQUErQjtBQUM3QixVQUNFQSxNQUFNLENBQUNFLFFBQUQsQ0FBTixDQUFpQkMsWUFBakIsS0FBa0NDLFNBQWxDLElBQ0FKLE1BQU0sQ0FBQ0UsUUFBRCxDQUFOLENBQWlCQyxZQUFqQixLQUFrQyxlQUZwQyxFQUdFO0FBQ0FOLFFBQUFBLEdBQUcsQ0FBQ1EsV0FBSixDQUFnQkwsTUFBTSxDQUFDRSxRQUFELENBQXRCO0FBQ0Q7QUFDRjtBQUNGLEdBWEQ7O0FBYUEsd0JBQVUsWUFBTTtBQUNkLGtEQUE2QlAsS0FBN0IsRUFBb0NELEtBQXBDLEVBQTJDRSxNQUEzQyxFQUFtREUsUUFBbkQsRUFBNkRELEdBQTdEO0FBRUEsV0FBTyxTQUFTUyxPQUFULEdBQW1CO0FBQ3hCUCxNQUFBQSxZQUFZO0FBQ2IsS0FGRDtBQUdELEdBTkQsRUFNRyxDQUFDTCxLQUFELENBTkg7QUFRQSxzQkFBTywyREFBUDtBQUNELENBN0JNIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0IHsgTWFwIGFzIExlYWZsZXRNYXAgfSBmcm9tICdsZWFmbGV0JztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IHNldEhvdmVyZWRFZGdlUGF0aHMgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCB7IElFZGdlIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvZWRnZXMvbW9kZWxzL0lFZGdlJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCB7IGZpbmRBbmREcmF3RXZlbnROZXR3b3JrRWRnZXMgfSBmcm9tICcuL0V2ZW50VXRpbHMnO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgZXZlbnQ6IElFdmVudDtcbiAgZWRnZXM6IElFZGdlW107XG4gIHBvaW50czogSVBvaW50W107XG4gIG1hcDogTGVhZmxldE1hcCB8IGFueTtcbn07XG5cbmV4cG9ydCBjb25zdCBOZXR3b3JrRm9yU3BlY2lmaWNFdmVudDogUmVhY3QuRkM8SVByb3BzPiA9ICh7XG4gIGV2ZW50LFxuICBlZGdlcyxcbiAgcG9pbnRzLFxuICBtYXAsXG59KSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgY2xlYW51cExvZ2ljID0gKCkgPT4ge1xuICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW10pKTtcbiAgICBsZXQgbGF5ZXJzID0gbWFwLl9sYXllcnM7XG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBsYXllcnMpIHtcbiAgICAgIGlmIChcbiAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3QgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICBsYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCA9PT0gJ1Vwc3RyZWFtUG9pbnQnXG4gICAgICApIHtcbiAgICAgICAgbWFwLnJlbW92ZUxheWVyKGxheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGZpbmRBbmREcmF3RXZlbnROZXR3b3JrRWRnZXMoZWRnZXMsIGV2ZW50LCBwb2ludHMsIGRpc3BhdGNoLCBtYXApO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICBjbGVhbnVwTG9naWMoKTtcbiAgICB9O1xuICB9LCBbZXZlbnRdKTtcblxuICByZXR1cm4gPD48Lz47XG59O1xuIl19
143
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9ldmVudHMvTmV0d29ya0ZvclNwZWNpZmljRXZlbnQudHN4Il0sIm5hbWVzIjpbIk5ldHdvcmtGb3JTcGVjaWZpY0V2ZW50IiwiZXZlbnQiLCJlZGdlcyIsInBvaW50cyIsIm1hcCIsImRpc3BhdGNoIiwiZWRnZXNUb0RyYXciLCJmaXJzdEVkZ2UiLCJmaW5kIiwiZWRnZSIsImlkIiwicGF0aCIsImVkZ2VfaWQiLCJ1bmRlZmluZWQiLCJ1cHN0cmVhbUVkZ2UiLCJ0YXJnZXRfcG9pbnRfaWQiLCJzb3VyY2VfcG9pbnRfaWQiLCJzb3VyY2VQb2ludCIsInBvaW50IiwiaGFzX2RldmljZSIsInB1c2giLCJmb3JFYWNoIiwicGFydCIsIm1hdGNoZWRQYXJ0IiwiZHJhd01hbmhvbGVJY29uIiwicG9pbnRJY29uIiwiTCIsImljb24iLCJpY29uVXJsIiwid2hpdGVQb2ludCIsImljb25TaXplIiwiaWNvbkFuY2hvciIsIm1hbmhvbGVJY29uIiwibWFya2VyIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJyaXNlT25Ib3ZlciIsImFkZFRvIiwiYmluZFRvb2x0aXAiLCJncm91cCIsIm5hbWUiLCJkcmF3TmV0d29yayIsImxhdGxuZ3MiLCJzaGFwZV9kYXRhIiwiZGF0YSIsImxhdCIsImxuZyIsInBvbHlsaW5lQmFjayIsInBvbHlsaW5lIiwiY29sb3IiLCJ3ZWlnaHQiLCJvcGFjaXR5IiwibGVuZ3RoIiwidGFyZ2V0UG9pbnQiLCJiaW5kUG9wdXAiLCJkaXN0YW5jZSIsImJyaW5nVG9Gcm9udCIsInBvbHlsaW5lRnJvbnQiLCJjbGVhbnVwIiwibGF5ZXJzIiwiX2xheWVycyIsInByb3BlcnR5Iiwia2FuZG9fb2JqZWN0IiwicmVtb3ZlTGF5ZXIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBSUE7Ozs7OztBQVJBO0FBaUJPLElBQU1BLHVCQUF5QyxHQUFHLFNBQTVDQSx1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QyxlQUZwQyxFQUdFO0FBQ0ExRCxVQUFBQSxHQUFHLENBQUMyRCxXQUFKLENBQWdCSixNQUFNLENBQUNFLFFBQUQsQ0FBdEI7QUFDRDtBQUNGO0FBQ0YsS0FYRDtBQVlELEdBZkQsRUFlRyxDQUFDNUQsS0FBRCxDQWZIO0FBaUJBLHNCQUFPLDJEQUFQO0FBQ0QsQ0FsSE0iLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtaWdub3JlXG5pbXBvcnQgTCwgeyBNYXAgYXMgTGVhZmxldE1hcCB9IGZyb20gJ2xlYWZsZXQnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgc2V0SG92ZXJlZEVkZ2VQYXRocyB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvYWN0aW9ucyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgSUVkZ2UgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9lZGdlcy9tb2RlbHMvSUVkZ2UnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IHdoaXRlUG9pbnQgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3doaXRlLXBvaW50LnBuZyc7XG5cbnR5cGUgSVByb3BzID0ge1xuICBldmVudDogSUV2ZW50O1xuICBlZGdlczogSUVkZ2VbXTtcbiAgcG9pbnRzOiBJUG9pbnRbXTtcbiAgbWFwOiBMZWFmbGV0TWFwIHwgYW55O1xufTtcblxuZXhwb3J0IGNvbnN0IE5ldHdvcmtGb3JTcGVjaWZpY0V2ZW50OiBSZWFjdC5GQzxJUHJvcHM+ID0gKHtcbiAgZXZlbnQsXG4gIGVkZ2VzLFxuICBwb2ludHMsXG4gIG1hcCxcbn0pID0+IHtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBsZXQgZWRnZXNUb0RyYXc6IElFZGdlW10gPSBbXTtcbiAgbGV0IGZpcnN0RWRnZSA9IGVkZ2VzLmZpbmQoKGVkZ2UpID0+IGVkZ2UuaWQgPT09IGV2ZW50LnBhdGhbMF0uZWRnZV9pZCk7XG4gIGlmIChmaXJzdEVkZ2UgIT09IHVuZGVmaW5lZCkge1xuICAgIGxldCB1cHN0cmVhbUVkZ2UgPSBlZGdlcy5maW5kKFxuICAgICAgKGVkZ2UpID0+IGVkZ2UudGFyZ2V0X3BvaW50X2lkID09PSBmaXJzdEVkZ2UhLnNvdXJjZV9wb2ludF9pZCxcbiAgICApO1xuICAgIGlmICh1cHN0cmVhbUVkZ2UpIHtcbiAgICAgIGxldCBzb3VyY2VQb2ludCA9IHBvaW50cy5maW5kKFxuICAgICAgICAocG9pbnQpID0+IHBvaW50LmlkID09PSB1cHN0cmVhbUVkZ2UhLnNvdXJjZV9wb2ludF9pZCxcbiAgICAgICk7XG4gICAgICBpZiAoc291cmNlUG9pbnQgJiYgIXNvdXJjZVBvaW50Lmhhc19kZXZpY2UpIHtcbiAgICAgICAgZWRnZXNUb0RyYXcucHVzaCh1cHN0cmVhbUVkZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGV2ZW50LnBhdGguZm9yRWFjaCgocGFydCkgPT4ge1xuICAgIGxldCBtYXRjaGVkUGFydCA9IGVkZ2VzLmZpbmQoKGVkZ2UpID0+IGVkZ2UuaWQgPT09IHBhcnQuZWRnZV9pZCk7XG4gICAgaWYgKG1hdGNoZWRQYXJ0ICE9PSB1bmRlZmluZWQpIGVkZ2VzVG9EcmF3LnB1c2gobWF0Y2hlZFBhcnQpO1xuICB9KTtcblxuICBjb25zdCBkcmF3TWFuaG9sZUljb24gPSAoc291cmNlUG9pbnQpID0+IHtcbiAgICBsZXQgcG9pbnRJY29uID0gTC5pY29uKHtcbiAgICAgIGljb25Vcmw6IHdoaXRlUG9pbnQsXG4gICAgICBpY29uU2l6ZTogWzksIDldLFxuICAgICAgaWNvbkFuY2hvcjogWzQuNSwgNC41XSxcbiAgICB9KTtcbiAgICBsZXQgbWFuaG9sZUljb246IGFueSA9IEwubWFya2VyKFxuICAgICAgW3NvdXJjZVBvaW50LmxhdGl0dWRlLCBzb3VyY2VQb2ludC5sb25naXR1ZGVdLFxuICAgICAge1xuICAgICAgICBpY29uOiBwb2ludEljb24sXG4gICAgICAgIHJpc2VPbkhvdmVyOiB0cnVlLFxuICAgICAgfSxcbiAgICApLmFkZFRvKG1hcCk7XG4gICAgbWFuaG9sZUljb24uYmluZFRvb2x0aXAoYCR7c291cmNlUG9pbnQuZ3JvdXAubmFtZX0gKCR7c291cmNlUG9pbnQuaWR9KWApO1xuICAgIG1hbmhvbGVJY29uWydrYW5kb19vYmplY3RfaWQnXSA9IHNvdXJjZVBvaW50LmlkO1xuICAgIG1hbmhvbGVJY29uWydrYW5kb19vYmplY3QnXSA9ICdVcHN0cmVhbVBvaW50JztcbiAgfTtcblxuICBjb25zdCBkcmF3TmV0d29yayA9IChlZGdlcykgPT4ge1xuICAgIGxldCBsYXRsbmdzOiBhbnkgPSBbXTtcbiAgICBlZGdlcy5mb3JFYWNoKChlZGdlKSA9PiB7XG4gICAgICBlZGdlLnNoYXBlX2RhdGEuZm9yRWFjaCgoZGF0YTogYW55KSA9PiB7XG4gICAgICAgIGxhdGxuZ3MucHVzaChbZGF0YS5sYXQsIGRhdGEubG5nXSk7XG4gICAgICB9KTtcblxuICAgICAgbGV0IHBvbHlsaW5lQmFjazogYW55ID0gTC5wb2x5bGluZShsYXRsbmdzLCB7XG4gICAgICAgIGNvbG9yOiAncmdiKDIyNywyMjcsMjI3KScsXG4gICAgICAgIHdlaWdodDogNixcbiAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgIH0pLmFkZFRvKG1hcCk7XG4gICAgICBpZiAocG9pbnRzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgICBsZXQgc291cmNlUG9pbnQgPSBwb2ludHMuZmluZChcbiAgICAgICAgICAocG9pbnQ6IElQb2ludCkgPT4gcG9pbnQuaWQgPT09IGVkZ2Uuc291cmNlX3BvaW50X2lkLFxuICAgICAgICApO1xuICAgICAgICBsZXQgdGFyZ2V0UG9pbnQgPSBwb2ludHMuZmluZChcbiAgICAgICAgICAocG9pbnQ6IElQb2ludCkgPT4gcG9pbnQuaWQgPT09IGVkZ2UudGFyZ2V0X3BvaW50X2lkLFxuICAgICAgICApO1xuICAgICAgICBpZiAoc291cmNlUG9pbnQgIT09IHVuZGVmaW5lZCAmJiB0YXJnZXRQb2ludCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgcG9seWxpbmVCYWNrLmJpbmRQb3B1cChgRWRnZSBJRDogJHtlZGdlLmlkfSw8YnI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNvdXJjZSBwb2ludDogJHtzb3VyY2VQb2ludC5ncm91cC5uYW1lfSw8YnI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRhcmdldCBwb2ludDogJHt0YXJnZXRQb2ludC5ncm91cC5uYW1lfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGlzdGFuY2U6ICR7ZWRnZS5kaXN0YW5jZX1gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzb3VyY2VQb2ludCkgZHJhd01hbmhvbGVJY29uKHNvdXJjZVBvaW50KTtcbiAgICAgICAgaWYgKHRhcmdldFBvaW50KSBkcmF3TWFuaG9sZUljb24odGFyZ2V0UG9pbnQpO1xuICAgICAgfVxuXG4gICAgICBwb2x5bGluZUJhY2tbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lQmFja1sna2FuZG9fb2JqZWN0J10gPSAnSG92ZXJlZEVkZ2UnO1xuXG4gICAgICBwb2x5bGluZUJhY2suYnJpbmdUb0Zyb250KCk7XG5cbiAgICAgIGxldCBwb2x5bGluZUZyb250OiBhbnkgPSBMLnBvbHlsaW5lKGxhdGxuZ3MsIHtcbiAgICAgICAgY29sb3I6ICdyZ2IoMjksMjksMjkpJyxcbiAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICBvcGFjaXR5OiAxLFxuICAgICAgfSkuYWRkVG8obWFwKTtcblxuICAgICAgcG9seWxpbmVGcm9udFsna2FuZG9fb2JqZWN0X2lkJ10gPSBlZGdlLmlkO1xuICAgICAgcG9seWxpbmVGcm9udFsna2FuZG9fb2JqZWN0J10gPSAnSG92ZXJlZEVkZ2VGcm9udCc7XG5cbiAgICAgIHBvbHlsaW5lRnJvbnQuYnJpbmdUb0Zyb250KCk7XG4gICAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRWRnZVBhdGhzKFtwb2x5bGluZUJhY2ssIHBvbHlsaW5lRnJvbnRdKSk7XG4gICAgICBsYXRsbmdzID0gW107XG4gICAgfSk7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkcmF3TmV0d29yayhlZGdlc1RvRHJhdyk7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW10pKTtcbiAgICAgIGxldCBsYXllcnMgPSBtYXAuX2xheWVycztcbiAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgaW4gbGF5ZXJzKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBsYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3QgPT09ICdVcHN0cmVhbVBvaW50J1xuICAgICAgICApIHtcbiAgICAgICAgICBtYXAucmVtb3ZlTGF5ZXIobGF5ZXJzW3Byb3BlcnR5XSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICB9LCBbZXZlbnRdKTtcblxuICByZXR1cm4gPD48Lz47XG59O1xuIl19