@kando-env/kando-ui 1.2.300-alpha.18 → 1.2.300-alpha.3

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 (620) hide show
  1. package/lib/Router.js +36 -75
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +24 -35
  3. package/lib/Widgets/EventsRow/EventsRow.js +26 -39
  4. package/lib/Widgets/Map/GraphUtils.js +4 -6
  5. package/lib/Widgets/Map/Map.js +68 -90
  6. package/lib/Widgets/Map/MapUtils.js +43 -45
  7. package/lib/Widgets/Map/areas/AreaPolygon.js +62 -93
  8. package/lib/Widgets/Map/areas/AreaPolygons.js +25 -36
  9. package/lib/Widgets/Map/areas/AreaUtils.js +55 -77
  10. package/lib/Widgets/Map/edges/Edge.js +24 -33
  11. package/lib/Widgets/Map/edges/Edges.js +20 -26
  12. package/lib/Widgets/Map/edges/arrows/Arrows.js +24 -45
  13. package/lib/Widgets/Map/events/Event.js +17 -18
  14. package/lib/Widgets/Map/events/EventIndicator.js +58 -55
  15. package/lib/Widgets/Map/events/EventPath.js +25 -25
  16. package/lib/Widgets/Map/events/EventUtils.js +59 -83
  17. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +17 -20
  18. package/lib/Widgets/Map/events/PointOfEvent.js +27 -36
  19. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +28 -36
  20. package/lib/Widgets/Map/events/Snail.js +19 -21
  21. package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +94 -90
  22. package/lib/Widgets/Map/map/FloatingGraph.js +24 -21
  23. package/lib/Widgets/Map/map/GraphDateButton.js +27 -20
  24. package/lib/Widgets/Map/matchGraph/MatchGraph.js +14 -14
  25. package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +17 -16
  26. package/lib/Widgets/Map/points/PointIcon.js +17 -16
  27. package/lib/Widgets/Map/points/PointMarker.js +67 -97
  28. package/lib/Widgets/Map/points/PointMarkers.js +45 -67
  29. package/lib/Widgets/Map/points/PointUtils.js +57 -83
  30. package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +27 -45
  31. package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +14 -18
  32. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +10 -12
  33. package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +4 -6
  34. package/lib/Widgets/MostPolluting/Areas/Areas.js +28 -58
  35. package/lib/Widgets/MostPolluting/Areas/areas.mock.js +3 -4
  36. package/lib/Widgets/MostPolluting/Areas/styles.js +4 -6
  37. package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +12 -9
  38. package/lib/Widgets/MostPolluting/Factories/Factories.js +33 -65
  39. package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +15 -18
  40. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +8 -8
  41. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +13 -11
  42. package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +4 -6
  43. package/lib/Widgets/MostPolluting/Factories/factories.mock.js +2 -3
  44. package/lib/Widgets/MostPolluting/Factories/styles.js +4 -6
  45. package/lib/Widgets/MostPolluting/MostPolluting.js +18 -24
  46. package/lib/Widgets/MostPolluting/MostPolluting.stories.js +20 -32
  47. package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +7 -5
  48. package/lib/Widgets/MostPolluting/ShowMore/styles.js +7 -6
  49. package/lib/Widgets/MostPolluting/assets/index.js +11 -11
  50. package/lib/Widgets/MostPolluting/components/ChangePercent.js +20 -14
  51. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +36 -31
  52. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +49 -36
  53. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +40 -36
  54. package/lib/Widgets/MostPolluting/components/PotentialImpact.js +28 -27
  55. package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +53 -49
  56. package/lib/Widgets/MostPolluting/styles.js +4 -6
  57. package/lib/Widgets/PotentialImpactSummary/Back/Back.js +8 -6
  58. package/lib/Widgets/PotentialImpactSummary/Icon.js +8 -6
  59. package/lib/Widgets/PotentialImpactSummary/index.js +20 -28
  60. package/lib/Widgets/PotentialImpactSummary/index.test.js +48 -54
  61. package/lib/Widgets/PotentialImpactSummary/styles.js +8 -13
  62. package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +10 -8
  63. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +23 -18
  64. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +36 -33
  65. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +27 -25
  66. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +35 -38
  67. package/lib/Widgets/QualitySummary/QualitySummary.js +10 -14
  68. package/lib/Widgets/QualitySummary/qualitySummary.mock.js +4 -7
  69. package/lib/Widgets/QualitySummary/styles.js +20 -19
  70. package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +12 -14
  71. package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +25 -25
  72. package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +30 -26
  73. package/lib/Widgets/UtilityInformation/UtilityInformation.js +25 -43
  74. package/lib/Widgets/UtilityInformation/styles.js +31 -29
  75. package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +3 -5
  76. package/lib/assets/icons/TopNavbar/index.js +6 -6
  77. package/lib/assets/icons/TrendSvg.js +7 -7
  78. package/lib/assets/icons/index.js +14 -14
  79. package/lib/assets/icons/kandoStepper/index.js +5 -5
  80. package/lib/assets/icons/siteTypes/index.js +1 -1
  81. package/lib/components/ApplyButton/ApplyButton.js +10 -11
  82. package/lib/components/ApplyButton/index.js +3 -4
  83. package/lib/components/Backdrop/Backdrop.js +7 -5
  84. package/lib/components/ContentLoader/ContentLoader.js +12 -10
  85. package/lib/components/ContentLoader/index.js +1 -1
  86. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +12 -12
  87. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +5 -9
  88. package/lib/components/CustomInputs/DoubleTabs/styles.js +21 -16
  89. package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +12 -20
  90. package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +7 -6
  91. package/lib/components/CustomInputs/Search/Search.js +40 -63
  92. package/lib/components/CustomInputs/Search/index.js +3 -4
  93. package/lib/components/CustomInputs/Select/Select.js +42 -56
  94. package/lib/components/CustomInputs/Select/Select.stories.js +6 -10
  95. package/lib/components/DamageType/DamageType.js +35 -60
  96. package/lib/components/DamageType/index.js +3 -4
  97. package/lib/components/DataLoaderError/DataLoaderError.js +9 -7
  98. package/lib/components/DischargeHeatmap/DischargeHeatmap.js +11 -13
  99. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +71 -72
  100. package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +28 -40
  101. package/lib/components/DischargeHeatmap/HighchartsOptions.js +12 -16
  102. package/lib/components/DischargeHeatmap/index.js +3 -4
  103. package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -4
  104. package/lib/components/DischargeHeatmap/popupText.js +11 -12
  105. package/lib/components/DischargeHeatmap/titles.js +4 -6
  106. package/lib/components/ErrorBoundary.js +27 -42
  107. package/lib/components/Events/Events.js +29 -48
  108. package/lib/components/Events/index.js +3 -4
  109. package/lib/components/Graph/Graph.js +70 -91
  110. package/lib/components/Graph/index.js +3 -4
  111. package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +19 -24
  112. package/lib/components/Header/Breadcrumbs/index.js +3 -4
  113. package/lib/components/Header/DoubleTabs/DoubleTabs.js +18 -28
  114. package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +5 -9
  115. package/lib/components/Header/DoubleTabs/styles.js +5 -8
  116. package/lib/components/Header/Header.js +3 -3
  117. package/lib/components/Header/Header.stories.js +5 -9
  118. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +24 -24
  119. package/lib/components/Header/InfoBar/InfoBar.js +42 -35
  120. package/lib/components/Header/InfoBar/Search/Control.js +11 -12
  121. package/lib/components/Header/InfoBar/Search/GroupLabel.js +8 -7
  122. package/lib/components/Header/InfoBar/Search/Search.js +15 -22
  123. package/lib/components/Header/InfoBar/Search/SearchContainer.js +16 -30
  124. package/lib/components/Header/InfoBar/Search/index.js +3 -4
  125. package/lib/components/Header/InfoBar/Search/searchStyle.js +42 -51
  126. package/lib/components/Header/InfoBar/TimeFilter.js +13 -17
  127. package/lib/components/Header/KandoNavbar/KandoNavbar.js +63 -90
  128. package/lib/components/Header/KandoNavbar/index.js +3 -4
  129. package/lib/components/Header/Slideshow/Slideshow.js +67 -91
  130. package/lib/components/Header/Slideshow/index.js +3 -4
  131. package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +7 -5
  132. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +22 -24
  133. package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +14 -14
  134. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +27 -33
  135. package/lib/components/Header/Toolbar/Toolbar.js +56 -76
  136. package/lib/components/InfoBar/InfoBar.js +10 -24
  137. package/lib/components/InfoBar/InfoBar.stories.js +5 -9
  138. package/lib/components/KandoModal/KandoModal.js +24 -40
  139. package/lib/components/KandoModal/index.js +3 -4
  140. package/lib/components/Link.js +9 -8
  141. package/lib/components/Links/CustomRedirect/CustomRedirect.js +10 -9
  142. package/lib/components/Links/StyledLink/StyledLink.js +13 -14
  143. package/lib/components/Links/StyledNavLink/StyledNavLink.js +12 -12
  144. package/lib/components/LiveEvents/CarouselSlide.js +11 -10
  145. package/lib/components/LiveEvents/LiveEvents.js +7 -6
  146. package/lib/components/LiveEvents/index.js +3 -4
  147. package/lib/components/LoaderByPercent/LoaderByPercent.js +37 -30
  148. package/lib/components/Map/Map.js +20 -25
  149. package/lib/components/Map/index.js +3 -4
  150. package/lib/components/Modal/Modal.js +10 -10
  151. package/lib/components/NarrowHeader.js +18 -32
  152. package/lib/components/PointInfo/PointInfo.js +20 -19
  153. package/lib/components/PointInfo/index.js +3 -4
  154. package/lib/components/PopupModal/PopupModal.js +13 -17
  155. package/lib/components/PopupModal/PopupModal.stories.js +17 -24
  156. package/lib/components/Sector/Sector.js +10 -9
  157. package/lib/components/Sector/Sector.test.js +20 -21
  158. package/lib/components/Sector/index.js +3 -4
  159. package/lib/components/Sector/sectorIcons.js +4 -5
  160. package/lib/components/SevereEvent/Eta/Eta.js +49 -54
  161. package/lib/components/SevereEvent/Eta/styles.js +11 -8
  162. package/lib/components/SevereEvent/SevereEvent.js +27 -35
  163. package/lib/components/Spinner/Spinner.js +8 -8
  164. package/lib/components/Spinner/Spinner.stories.js +6 -11
  165. package/lib/components/Spinner/index.js +3 -4
  166. package/lib/components/Spinner/styles.js +21 -16
  167. package/lib/components/Tabs/Tabs.js +18 -29
  168. package/lib/components/Tabs/Tabs.stories.js +6 -10
  169. package/lib/components/Tabs/assets/index.js +5 -5
  170. package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +13 -18
  171. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +35 -48
  172. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +20 -34
  173. package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +3 -4
  174. package/lib/components/TimeRangeSelector/TimeRangeHelper.js +17 -22
  175. package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +13 -14
  176. package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +3 -4
  177. package/lib/components/TimeRangeSelector/TimeRangeList.js +24 -27
  178. package/lib/components/TimeRangeSelector/TimeRangeOptions.js +17 -27
  179. package/lib/components/TimeRangeSelector/TimeRangeSelector.js +29 -32
  180. package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +6 -10
  181. package/lib/components/TimeRangeSelector/constants.js +3 -5
  182. package/lib/components/TimeRangeSelector/index.js +3 -4
  183. package/lib/components/Toggle/Toggle.js +11 -18
  184. package/lib/components/Toggle/index.js +3 -4
  185. package/lib/components/TrendGraph/TrendGraph.js +24 -42
  186. package/lib/components/TrendGraph/index.js +3 -4
  187. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +26 -33
  188. package/lib/components/TrendGraphNVL/index.js +3 -4
  189. package/lib/development-environment/index.js +9 -13
  190. package/lib/development-environment/mock/browser.js +2 -5
  191. package/lib/development-environment/mock/get.js +8 -10
  192. package/lib/development-environment/mock/handlers.js +2 -3
  193. package/lib/development-environment/mock/mockBus.js +4 -5
  194. package/lib/development-environment/mock/mockObjects/area-trends-graph.js +2 -3
  195. package/lib/development-environment/mock/mockObjects/areaInformation.js +2 -3
  196. package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +2 -3
  197. package/lib/development-environment/mock/mockObjects/areaSitesData.js +2 -3
  198. package/lib/development-environment/mock/mockObjects/areasJson.js +2 -3
  199. package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +2 -3
  200. package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +2 -3
  201. package/lib/development-environment/mock/mockObjects/data-menuData.js +2 -3
  202. package/lib/development-environment/mock/mockObjects/data-search.js +2 -3
  203. package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +2 -3
  204. package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +2 -3
  205. package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +2 -3
  206. package/lib/development-environment/mock/mockObjects/eventsJson.js +2 -3
  207. package/lib/development-environment/mock/mockObjects/metascore.js +2 -3
  208. package/lib/development-environment/mock/mockObjects/permissionsJson.js +2 -3
  209. package/lib/development-environment/mock/mockObjects/pointsJson.js +2 -3
  210. package/lib/development-environment/mock/mockObjects/site-info.js +2 -3
  211. package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +2 -3
  212. package/lib/development-environment/togly/ToglyDashboard.js +13 -23
  213. package/lib/development-environment/togly/ToglyItem.js +25 -29
  214. package/lib/development-environment/togly/init.js +3 -3
  215. package/lib/development-environment/togly/macro.js +13 -9
  216. package/lib/development-environment/togly/useDoubleKeyDown.js +7 -9
  217. package/lib/development-environment/togly/useLocalStorage.js +13 -18
  218. package/lib/hooks/useApi.js +20 -56
  219. package/lib/hooks/useApiWithDashboardQuery.js +29 -48
  220. package/lib/hooks/useClickOutside.js +4 -5
  221. package/lib/hooks/useInitializeHeaders.js +6 -6
  222. package/lib/hooks/useKandoFetch.js +17 -31
  223. package/lib/hooks/useMap.js +26 -38
  224. package/lib/hooks/useNavContext.js +22 -26
  225. package/lib/hooks/useQueryURL.js +2 -3
  226. package/lib/hooks/useRemoveExistingLayers.js +7 -8
  227. package/lib/hooks/useUpdateEventBodyTail.js +14 -19
  228. package/lib/hooks/useUserTimeZone.js +32 -29
  229. package/lib/hooks/useUserTimeZone.test.js +19 -23
  230. package/lib/hooks/useWindowSize.js +7 -14
  231. package/lib/i18n/en.json +3 -5
  232. package/lib/i18n/he.json +4 -5
  233. package/lib/index.js +11 -13
  234. package/lib/macros/getVersion.js +2 -2
  235. package/lib/pages/AreaPage/AreaPage.js +28 -64
  236. package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +15 -17
  237. package/lib/pages/AreaPage/Dashboard/Dashboard.js +16 -19
  238. package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +16 -28
  239. package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +7 -7
  240. package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +34 -68
  241. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +8 -8
  242. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +10 -10
  243. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +4 -6
  244. package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +2 -3
  245. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +5 -8
  246. package/lib/pages/AssessmentPage/AssessmentPage.js +38 -46
  247. package/lib/pages/CannyWidget/Feedback.js +14 -16
  248. package/lib/pages/CovidPage/CovidPage.js +9 -16
  249. package/lib/pages/CovidPage/components/Body.js +26 -30
  250. package/lib/pages/CovidPage/components/Map.js +28 -40
  251. package/lib/pages/CovidPage/components/Sidebar.js +15 -16
  252. package/lib/pages/CovidPage/components/Summary.js +20 -29
  253. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +26 -33
  254. package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +3 -4
  255. package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +52 -76
  256. package/lib/pages/CovidPage/components/TrendPopupContent/index.js +3 -4
  257. package/lib/pages/CovidPage/components/areas/Area.js +24 -36
  258. package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +45 -46
  259. package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +32 -36
  260. package/lib/pages/CovidPage/components/areas/AreasList.js +29 -42
  261. package/lib/pages/CovidPage/components/areas/Sort.js +12 -17
  262. package/lib/pages/CovidPage/components/nvlStatusHelper.js +11 -11
  263. package/lib/pages/DashboardMap/AreaCard.js +40 -48
  264. package/lib/pages/DashboardMap/FactoryCard.js +34 -50
  265. package/lib/pages/DashboardMap/HighchartsOptions.js +6 -5
  266. package/lib/pages/DashboardMap/List.js +42 -54
  267. package/lib/pages/DashboardMap/ListContext.js +14 -19
  268. package/lib/pages/DashboardMap/Loader.js +3 -3
  269. package/lib/pages/DashboardMap/WWTPMap.js +43 -58
  270. package/lib/pages/DashboardMap/Widget.js +63 -76
  271. package/lib/pages/DashboardMap/index.js +3 -4
  272. package/lib/pages/DashboardMap/utils.js +19 -24
  273. package/lib/pages/EventsPage/Body/Body.js +21 -18
  274. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +17 -20
  275. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +27 -36
  276. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +10 -9
  277. package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +13 -10
  278. package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +22 -31
  279. package/lib/pages/EventsPage/DragAndDropArea/index.js +3 -4
  280. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +53 -65
  281. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +17 -23
  282. package/lib/pages/EventsPage/EventsPage.js +8 -13
  283. package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +27 -41
  284. package/lib/pages/EventsPage/events/MoreInfo.js +18 -19
  285. package/lib/pages/EventsPage/events/Sidebar.js +22 -19
  286. package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +31 -38
  287. package/lib/pages/EventsPage/events/event_info/EventDetails.js +34 -32
  288. package/lib/pages/EventsPage/events/event_info/EventInfo.js +42 -43
  289. package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +5 -5
  290. package/lib/pages/EventsPage/events/event_info/EventSection.js +15 -18
  291. package/lib/pages/EventsPage/events/event_info/EventSection.test.js +44 -39
  292. package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +39 -50
  293. package/lib/pages/EventsPage/events/event_info/Header/Header.js +8 -7
  294. package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +29 -34
  295. package/lib/pages/EventsPage/events/event_info/Header/index.js +3 -4
  296. package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +6 -7
  297. package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +30 -39
  298. package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +6 -9
  299. package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/LineChartYear/LineChartYear.js +16 -25
  300. package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/MockHistoryInformation.js +4 -4
  301. package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +23 -24
  302. package/lib/pages/EventsPage/events/event_info/SamplingList/SamplingDetails.js +12 -11
  303. package/lib/pages/EventsPage/events/event_info/SamplingList/Samplings.js +11 -10
  304. package/lib/pages/EventsPage/events/event_info/SamplingList/index.js +3 -4
  305. package/lib/pages/EventsPage/events/event_info/SeverityScore/ScoreExplanation.js +13 -10
  306. package/lib/pages/EventsPage/events/event_info/SeverityScore/SeverityScore.js +8 -9
  307. package/lib/pages/EventsPage/events/event_info/SeverityScore/index.js +3 -4
  308. package/lib/pages/EventsPage/events/event_info/SourceDetails/Confidence.js +6 -4
  309. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.js +11 -16
  310. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.test.js +25 -12
  311. package/lib/pages/EventsPage/events/event_info/SourceDetails/IconAndTitles.js +8 -6
  312. package/lib/pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton.js +11 -13
  313. package/lib/pages/EventsPage/events/event_info/SourceDetails/OtherSources.js +7 -6
  314. package/lib/pages/EventsPage/events/event_info/SourceDetails/PotentialSources.js +9 -8
  315. package/lib/pages/EventsPage/events/event_info/SourceDetails/SingleSource.js +14 -11
  316. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceCardBody.js +8 -7
  317. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.js +13 -12
  318. package/lib/pages/EventsPage/events/event_info/SourceDetails/WaterConsumptionPerDay.js +8 -8
  319. package/lib/pages/EventsPage/events/event_info/Timelines/DischargeBox.js +9 -8
  320. package/lib/pages/EventsPage/events/event_info/Timelines/EarlyWarning.js +19 -18
  321. package/lib/pages/EventsPage/events/event_info/Timelines/LiveStatusBadge.js +6 -7
  322. package/lib/pages/EventsPage/events/event_info/Timelines/SeenBox.js +12 -11
  323. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.js +15 -13
  324. package/lib/pages/EventsPage/events/event_info/Timelines/Titles.js +4 -5
  325. package/lib/pages/EventsPage/events/event_info/Timelines/index.js +3 -4
  326. package/lib/pages/EventsPage/events/event_info/Timelines/style.js +4 -6
  327. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsLineChart.js +17 -26
  328. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +25 -40
  329. package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +30 -39
  330. package/lib/pages/EventsPage/events/event_info/samplingsOld/Sampling.js +13 -12
  331. package/lib/pages/EventsPage/events/event_info/samplingsOld/Samplings.js +17 -20
  332. package/lib/pages/EventsPage/events/event_info/sources/Source.js +27 -31
  333. package/lib/pages/EventsPage/events/event_info/sources/Sources.js +22 -27
  334. package/lib/pages/EventsPage/events/event_info/styles.js +21 -15
  335. package/lib/pages/EventsPage/events/events_list/EventItem.js +18 -21
  336. package/lib/pages/EventsPage/events/events_list/EventUtils.js +11 -11
  337. package/lib/pages/EventsPage/events/events_list/EventsList.js +115 -139
  338. package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +39 -56
  339. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +73 -111
  340. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +53 -72
  341. package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +39 -44
  342. package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +30 -39
  343. package/lib/pages/EventsPage/events/events_list/Sort.js +14 -19
  344. package/lib/pages/ImportFileWizard/FileUploadRespones.js +14 -22
  345. package/lib/pages/ImportFileWizard/ImportButtomButtons.js +9 -8
  346. package/lib/pages/ImportFileWizard/ImportFile.js +21 -25
  347. package/lib/pages/ImportFileWizard/ResponseBody.js +26 -36
  348. package/lib/pages/ImportFileWizard/ValidationForm.js +22 -22
  349. package/lib/pages/ImportFileWizard/ValidationResponse.js +23 -25
  350. package/lib/pages/ImportFileWizard/importFileUtils.js +4 -5
  351. package/lib/pages/ImportFileWizard/index.js +3 -4
  352. package/lib/pages/ImportGisPage/ImportGisContainer.js +22 -27
  353. package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +23 -26
  354. package/lib/pages/ImportGisPage/importGisUtils.js +15 -24
  355. package/lib/pages/ImportGisProcess/index.js +14 -18
  356. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +7 -13
  357. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +18 -20
  358. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +4 -4
  359. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +28 -58
  360. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +8 -12
  361. package/lib/pages/NotificationsPage/Notification/Notification.js +17 -13
  362. package/lib/pages/NotificationsPage/Notifications.mock.js +2 -3
  363. package/lib/pages/NotificationsPage/Notifications.stories.js +6 -10
  364. package/lib/pages/NotificationsPage/NotificationsPage.js +19 -38
  365. package/lib/pages/NotificationsPage/assets/index.js +9 -9
  366. package/lib/pages/NotificationsPageV2/NotificationsPage.js +71 -97
  367. package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +95 -65
  368. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +127 -140
  369. package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +72 -74
  370. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +90 -87
  371. package/lib/pages/NotificationsPageV2/notificationUtils.js +40 -39
  372. package/lib/pages/OldSitePage/OldSitePage.js +56 -132
  373. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +6 -10
  374. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +5 -9
  375. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +9 -7
  376. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +19 -21
  377. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +10 -12
  378. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +12 -19
  379. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +17 -13
  380. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +5 -9
  381. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +18 -16
  382. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +51 -64
  383. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +10 -8
  384. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +29 -54
  385. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +4 -7
  386. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +12 -19
  387. package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +11 -11
  388. package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +10 -12
  389. package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +27 -23
  390. package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +28 -30
  391. package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +5 -8
  392. package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +16 -12
  393. package/lib/pages/ProfilePage/Container.js +3 -4
  394. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +23 -40
  395. package/lib/pages/ProfilePage/ProfilePage.js +113 -205
  396. package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +25 -34
  397. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +20 -20
  398. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +23 -26
  399. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +57 -119
  400. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +18 -23
  401. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +14 -13
  402. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +39 -43
  403. package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +27 -29
  404. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +18 -19
  405. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +15 -18
  406. package/lib/pages/SamplingsPage/DesktopActions/index.js +3 -4
  407. package/lib/pages/SamplingsPage/NavigationDropdown.js +43 -31
  408. package/lib/pages/SamplingsPage/NewSamplingAction.js +75 -102
  409. package/lib/pages/SamplingsPage/SamplingMobileModal.js +124 -98
  410. package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +23 -25
  411. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +36 -25
  412. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +34 -59
  413. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +16 -21
  414. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +10 -9
  415. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +107 -192
  416. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +47 -54
  417. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +42 -39
  418. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +42 -39
  419. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +21 -28
  420. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +4 -6
  421. package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +11 -7
  422. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +50 -52
  423. package/lib/pages/SamplingsPage/SamplingsMobileList.js +22 -31
  424. package/lib/pages/SamplingsPage/SamplingsPage.js +25 -33
  425. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +49 -58
  426. package/lib/pages/SamplingsPage/index.js +2 -3
  427. package/lib/pages/SamplingsPage/samplingsPageUtils.js +68 -92
  428. package/lib/pages/SitePage/DischargePattern/DischargePattern.js +7 -5
  429. package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +5 -9
  430. package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +15 -15
  431. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +10 -9
  432. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +27 -24
  433. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +15 -18
  434. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +37 -33
  435. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +10 -12
  436. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +15 -25
  437. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +17 -13
  438. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +5 -9
  439. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +18 -16
  440. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +58 -71
  441. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +10 -8
  442. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +15 -27
  443. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +5 -9
  444. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +12 -19
  445. package/lib/pages/SitePage/SamplingParameters/body/Body.js +10 -11
  446. package/lib/pages/SitePage/SamplingParameters/body/BodyContainer.js +30 -40
  447. package/lib/pages/SitePage/SamplingParameters/body/index.js +3 -4
  448. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +11 -12
  449. package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +10 -12
  450. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +54 -54
  451. package/lib/pages/SitePage/SamplingParameters/dataParser.js +31 -40
  452. package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +11 -9
  453. package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +5 -8
  454. package/lib/pages/SitePage/SamplingParameters/styles/styles.js +16 -12
  455. package/lib/pages/SitePage/SiteInformation/ContributorItem.js +11 -10
  456. package/lib/pages/SitePage/SiteInformation/EmptyState.js +13 -10
  457. package/lib/pages/SitePage/SiteInformation/PollutionContributor.js +13 -13
  458. package/lib/pages/SitePage/SiteInformation/SiteInformation.js +34 -46
  459. package/lib/pages/SitePage/SiteInformation/style.js +16 -12
  460. package/lib/pages/SitePage/SitePage.js +29 -70
  461. package/lib/pages/UploadLabResult/index.js +15 -16
  462. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +27 -37
  463. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +8 -13
  464. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +11 -15
  465. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +5 -9
  466. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +47 -50
  467. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +11 -8
  468. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +4 -5
  469. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +6 -9
  470. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +11 -10
  471. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +16 -13
  472. package/lib/pages/UtilityDashboardPage/TopBar/constants.js +8 -9
  473. package/lib/pages/UtilityDashboardPage/TopBar/styles.js +3 -4
  474. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +15 -23
  475. package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +28 -40
  476. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +15 -17
  477. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +6 -14
  478. package/lib/pages/UtilityDashboardPage/VirtualAreaDashboardPage.js +23 -32
  479. package/lib/pages/WbeDashboard/ExpandableComponent.js +9 -9
  480. package/lib/pages/WbeDashboard/GraphWrapper.js +28 -35
  481. package/lib/pages/WbeDashboard/IndividualTinyGraph.js +16 -19
  482. package/lib/pages/WbeDashboard/SearchInput.js +15 -21
  483. package/lib/pages/WbeDashboard/SummaryGraph.js +50 -77
  484. package/lib/pages/WbeDashboard/SummaryGraphModal.js +20 -18
  485. package/lib/pages/WbeDashboard/Tabs.js +11 -11
  486. package/lib/pages/WbeDashboard/WbeDashboardPage.js +145 -211
  487. package/lib/pages/WbeDashboard/WbeSummaryBar.js +39 -48
  488. package/lib/pages/WwtpPage/ContaminateCard.js +4 -5
  489. package/lib/pages/WwtpPage/DashboardCard.js +29 -28
  490. package/lib/pages/WwtpPage/DischargePatternCard.js +16 -26
  491. package/lib/pages/WwtpPage/InletsCard.js +19 -17
  492. package/lib/pages/WwtpPage/Map.js +7 -6
  493. package/lib/pages/WwtpPage/OrganicCard.js +4 -5
  494. package/lib/pages/WwtpPage/PotentialSaving/ImpactCard.js +4 -5
  495. package/lib/pages/WwtpPage/PotentialSaving/PotentialItem.js +9 -8
  496. package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +11 -11
  497. package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +20 -17
  498. package/lib/pages/WwtpPage/PotentialSaving/index.js +3 -4
  499. package/lib/pages/WwtpPage/PredictionCard.js +4 -5
  500. package/lib/pages/WwtpPage/TrendCard.js +27 -35
  501. package/lib/pages/WwtpPage/TrendChart.js +12 -12
  502. package/lib/pages/WwtpPage/UpgradeBox.js +4 -5
  503. package/lib/pages/WwtpPage/WwtpPage.js +9 -10
  504. package/lib/pages/WwtpPage/WwtpPageContainer.js +23 -19
  505. package/lib/pages/WwtpPage/index.js +3 -4
  506. package/lib/providers/Slideshow/SlideshowContext.js +11 -10
  507. package/lib/providers/Slideshow/SlideshowProvider.js +22 -40
  508. package/lib/providers/Slideshow/SlideshowRunner.js +18 -21
  509. package/lib/providers/UrlHistory/UrlHistoryContext.js +7 -6
  510. package/lib/providers/UrlHistory/UrlHistoryProvider.js +12 -13
  511. package/lib/providers/UrlHistory/index.js +3 -3
  512. package/lib/providers/UrlHistory/useLastVisited.js +5 -6
  513. package/lib/store/ImportGis/actionTypes.js +4 -5
  514. package/lib/store/ImportGis/actionsCreator.js +7 -5
  515. package/lib/store/ImportGis/reducer.js +41 -30
  516. package/lib/store/WBE/actionTypes.js +2 -3
  517. package/lib/store/WBE/reducer.js +14 -10
  518. package/lib/store/WWTPDashboard/WWTPDashboardSlice.js +24 -15
  519. package/lib/store/areas/actionTypes.js +4 -7
  520. package/lib/store/areas/actions.js +6 -13
  521. package/lib/store/areas/reducer.js +8 -6
  522. package/lib/store/context/actionTypes.js +3 -5
  523. package/lib/store/context/actions.js +3 -3
  524. package/lib/store/context/contextMiddlewares.js +15 -18
  525. package/lib/store/context/reducer.js +14 -10
  526. package/lib/store/dashboard/dashboardSlice.js +18 -11
  527. package/lib/store/edges/actionTypes.js +5 -9
  528. package/lib/store/edges/actions.js +4 -8
  529. package/lib/store/edges/reducer.js +13 -17
  530. package/lib/store/events/actionTypes.js +17 -33
  531. package/lib/store/events/actions.js +3 -7
  532. package/lib/store/events/models/IEvent.js +1 -1
  533. package/lib/store/events/reducer.js +42 -49
  534. package/lib/store/global/actionTypes.js +11 -21
  535. package/lib/store/global/actions.js +6 -4
  536. package/lib/store/global/reducer.js +11 -10
  537. package/lib/store/permissions/permissionsSlice.js +12 -9
  538. package/lib/store/points/actionTypes.js +3 -5
  539. package/lib/store/points/actions.js +3 -7
  540. package/lib/store/points/models/IPoint.js +1 -1
  541. package/lib/store/points/reducer.js +7 -5
  542. package/lib/store/rootActionTypes.js +2 -3
  543. package/lib/store/rootReducer.js +17 -13
  544. package/lib/store/rootStore.js +6 -6
  545. package/lib/store/samplings/actionTypes.js +4 -5
  546. package/lib/store/samplings/reducer.js +16 -14
  547. package/lib/styles/StylesLayout.js +7 -6
  548. package/lib/styles/theme/theme.js +27 -33
  549. package/lib/test/mocks/browser.js +2 -5
  550. package/lib/test/test-utils.js +18 -16
  551. package/lib/ui-kit/Button/Button.js +129 -83
  552. package/lib/ui-kit/Button/Button.test.js +24 -30
  553. package/lib/ui-kit/Checkbox/Checkbox.js +32 -24
  554. package/lib/ui-kit/ContentCard/ContentCard.js +19 -28
  555. package/lib/ui-kit/Dashboard/Dashboard.js +23 -22
  556. package/lib/ui-kit/Dashboard/index.js +3 -4
  557. package/lib/ui-kit/DropDown/DropDown.js +18 -20
  558. package/lib/ui-kit/DropDown/DropDown.test.js +13 -13
  559. package/lib/ui-kit/DropDown/DropDownItem.js +26 -25
  560. package/lib/ui-kit/DropDown/DropdownToggle.js +13 -10
  561. package/lib/ui-kit/EmptyState/EmptyState.js +7 -6
  562. package/lib/ui-kit/IconAction/IconAction.js +9 -8
  563. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +47 -64
  564. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +58 -49
  565. package/lib/ui-kit/InletsPie/InletsPie.js +17 -16
  566. package/lib/ui-kit/InletsPie/index.js +3 -4
  567. package/lib/ui-kit/InletsPie/options.js +7 -8
  568. package/lib/ui-kit/KandoList/KandoList.js +13 -12
  569. package/lib/ui-kit/KandoTable/KandoTable.js +48 -41
  570. package/lib/ui-kit/KandoTable/KandoTable.test.js +17 -23
  571. package/lib/ui-kit/Layout/Layout.js +8 -7
  572. package/lib/ui-kit/MobileInput/MobileInput.js +56 -50
  573. package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +14 -17
  574. package/lib/ui-kit/ModalConfirmation/index.js +2 -3
  575. package/lib/ui-kit/OrganicEvents/GaugeChart.js +9 -8
  576. package/lib/ui-kit/OrganicEvents/OrganicEvents.js +8 -9
  577. package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +29 -23
  578. package/lib/ui-kit/OrganicEvents/TextInfo.js +17 -13
  579. package/lib/ui-kit/OrganicEvents/index.js +3 -4
  580. package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +12 -11
  581. package/lib/ui-kit/SamplingStatus/SamplingStatus.js +14 -18
  582. package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +3 -4
  583. package/lib/ui-kit/ScoreGauge/ScoreGauge.js +21 -24
  584. package/lib/ui-kit/ScoreGauge/constant.js +3 -4
  585. package/lib/ui-kit/ScoreGauge/index.js +3 -4
  586. package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +10 -11
  587. package/lib/ui-kit/Tooltip/Tooltip.js +15 -9
  588. package/lib/ui-kit/index.js +8 -8
  589. package/lib/ui-kit/kandoStepper/KandoStepper.js +13 -14
  590. package/lib/ui-kit/siteName/SiteName.js +13 -11
  591. package/lib/utilities/ActionUtility.js +7 -7
  592. package/lib/utilities/Alert.js +23 -20
  593. package/lib/utilities/Analytics.js +12 -12
  594. package/lib/utilities/Array.js +4 -5
  595. package/lib/utilities/Enum.js +15 -51
  596. package/lib/utilities/ErrorBoundary.js +27 -42
  597. package/lib/utilities/File.js +41 -70
  598. package/lib/utilities/GetDir.js +10 -10
  599. package/lib/utilities/KandoDate.js +7 -15
  600. package/lib/utilities/KandoModal.js +16 -28
  601. package/lib/utilities/LocalStorage.js +5 -7
  602. package/lib/utilities/ThousandsToK.js +2 -2
  603. package/lib/utilities/TimeFormat.js +20 -21
  604. package/lib/utilities/Truncate.js +17 -27
  605. package/lib/utilities/edgesMath.js +15 -16
  606. package/lib/utilities/i18n.js +5 -6
  607. package/lib/utilities/kql.js +10 -12
  608. package/lib/utilities/map/icons.js +4 -4
  609. package/lib/utilities/polylinedecorator.js +88 -113
  610. package/lib/utilities/scoreToData.js +14 -14
  611. package/lib/utilities/scoreToData.test.js +5 -5
  612. package/lib/utilities/time.js +9 -10
  613. package/lib/utilities/uploadToS3.js +12 -12
  614. package/lib/utilities/urls.js +17 -16
  615. package/package.json +5 -6
  616. package/lib/Widgets/Map/areas/Patterns.js +0 -28
  617. package/lib/pages/DashboardMap/SeverityBadge.js +0 -43
  618. package/lib/pages/DashboardMap/svgs/icon_assessment.svg +0 -22
  619. package/lib/pages/DashboardMap/svgs/icon_monitored.svg +0 -4
  620. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.test.js +0 -27
@@ -1,32 +1,27 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.AreaPolygons = void 0;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
10
9
  var _react = _interopRequireWildcard(require("react"));
11
10
  var _AreaPolygon = _interopRequireDefault(require("./AreaPolygon"));
12
- 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); }
13
- 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; }
14
- var AreaPolygons = function AreaPolygons(props) {
15
- var L = props.L,
16
- areas = props.areas,
17
- map = props.map,
18
- mapZoom = props.mapZoom,
19
- areaToCenterBy = props.areaToCenterBy,
20
- global_data = props.global_data,
21
- featureGroup = props.featureGroup;
22
- var group = [];
23
- var _useState = (0, _react.useState)(true),
24
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
25
- shouldFly = _useState2[0],
26
- setShouldFly = _useState2[1];
27
- (0, _react.useEffect)(function () {
11
+ const AreaPolygons = props => {
12
+ const {
13
+ L,
14
+ areas,
15
+ map,
16
+ mapZoom,
17
+ areaToCenterBy,
18
+ global_data
19
+ } = props;
20
+ const group = [];
21
+ const [shouldFly, setShouldFly] = (0, _react.useState)(true);
22
+ (0, _react.useEffect)(() => {
28
23
  if (shouldFly) {
29
- for (var property in map._layers) {
24
+ for (const property in map._layers) {
30
25
  if (map._layers[property].kando_object === 'Area') {
31
26
  group.push(map._layers[property]);
32
27
  }
@@ -40,21 +35,15 @@ var AreaPolygons = function AreaPolygons(props) {
40
35
  map.invalidateSize(true);
41
36
  }
42
37
  }, [areas]);
43
- (0, _react.useEffect)(function () {
44
- featureGroup.addTo(map);
45
- }, []);
46
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, areas.length !== 0 && areas.map(function (area) {
47
- return /*#__PURE__*/_react.default.createElement(_AreaPolygon.default, {
48
- area: area,
49
- map: map,
50
- L: L,
51
- key: area.area_id,
52
- mapZoom: mapZoom,
53
- global_data: global_data,
54
- bindPopup: true,
55
- featureGroup: featureGroup
56
- });
57
- }));
38
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, areas.length !== 0 && areas.map(area => /*#__PURE__*/_react.default.createElement(_AreaPolygon.default, {
39
+ area: area,
40
+ map: map,
41
+ L: L,
42
+ key: area.area_id,
43
+ mapZoom: mapZoom,
44
+ global_data: global_data,
45
+ bindPopup: true
46
+ })));
58
47
  };
59
48
  exports.AreaPolygons = AreaPolygons;
60
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfQXJlYVBvbHlnb24iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJBcmVhUG9seWdvbnMiLCJwcm9wcyIsIkwiLCJhcmVhcyIsIm1hcCIsIm1hcFpvb20iLCJhcmVhVG9DZW50ZXJCeSIsImdsb2JhbF9kYXRhIiwiZmVhdHVyZUdyb3VwIiwiZ3JvdXAiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJzaG91bGRGbHkiLCJzZXRTaG91bGRGbHkiLCJ1c2VFZmZlY3QiLCJwcm9wZXJ0eSIsIl9sYXllcnMiLCJrYW5kb19vYmplY3QiLCJwdXNoIiwibGVuZ3RoIiwiZml0Qm91bmRzIiwiZ2V0Qm91bmRzIiwicGFkZGluZyIsImludmFsaWRhdGVTaXplIiwiYWRkVG8iLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJhcmVhIiwiYXJlYV9pZCIsImJpbmRQb3B1cCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvV2lkZ2V0cy9NYXAvYXJlYXMvQXJlYVBvbHlnb25zLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IElBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgQXJlYVBvbHlnb24gZnJvbSAnLi9BcmVhUG9seWdvbic7XG5pbXBvcnQgeyBGZWF0dXJlR3JvdXAgfSBmcm9tICdsZWFmbGV0JztcblxudHlwZSBQcm9wcyA9IHtcbiAgbWFwOiBhbnk7XG4gIEw6IGFueTtcbiAgYXJlYXM6IElBcmVhW107XG4gIG1hcFpvb206IG51bWJlcjtcbiAgYXJlYVRvQ2VudGVyQnk/OiBhbnk7XG4gIGdsb2JhbF9kYXRhOiBhbnk7XG4gIGZlYXR1cmVHcm91cDogRmVhdHVyZUdyb3VwO1xufTtcblxuZXhwb3J0IGNvbnN0IEFyZWFQb2x5Z29uczogUmVhY3QuRkM8UHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgTCwgYXJlYXMsIG1hcCwgbWFwWm9vbSwgYXJlYVRvQ2VudGVyQnksIGdsb2JhbF9kYXRhLCBmZWF0dXJlR3JvdXAgfSA9XG4gICAgcHJvcHM7XG4gIGNvbnN0IGdyb3VwOiBhbnlbXSA9IFtdO1xuICBjb25zdCBbc2hvdWxkRmx5LCBzZXRTaG91bGRGbHldID0gdXNlU3RhdGUodHJ1ZSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoc2hvdWxkRmx5KSB7XG4gICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIG1hcC5fbGF5ZXJzKSB7XG4gICAgICAgIGlmIChtYXAuX2xheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0ID09PSAnQXJlYScpIHtcbiAgICAgICAgICBncm91cC5wdXNoKG1hcC5fbGF5ZXJzW3Byb3BlcnR5XSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGdyb3VwLmxlbmd0aCAhPT0gMCAmJiAhYXJlYVRvQ2VudGVyQnkpIHtcbiAgICAgICAgbWFwLmZpdEJvdW5kcyhMLmZlYXR1cmVHcm91cChncm91cCkuZ2V0Qm91bmRzKCksIHtcbiAgICAgICAgICBwYWRkaW5nOiBbNDIwLCA0MjBdLFxuICAgICAgICB9KTtcbiAgICAgICAgc2V0U2hvdWxkRmx5KGZhbHNlKTtcbiAgICAgIH1cblxuICAgICAgbWFwLmludmFsaWRhdGVTaXplKHRydWUpO1xuICAgIH1cbiAgfSwgW2FyZWFzXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmZWF0dXJlR3JvdXAuYWRkVG8obWFwKTtcbiAgfSwgW10pO1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHthcmVhcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgYXJlYXMubWFwKChhcmVhOiBJQXJlYSkgPT4gKFxuICAgICAgICAgIDxBcmVhUG9seWdvblxuICAgICAgICAgICAgYXJlYT17YXJlYX1cbiAgICAgICAgICAgIG1hcD17bWFwfVxuICAgICAgICAgICAgTD17TH1cbiAgICAgICAgICAgIGtleT17YXJlYS5hcmVhX2lkfVxuICAgICAgICAgICAgbWFwWm9vbT17bWFwWm9vbX1cbiAgICAgICAgICAgIGdsb2JhbF9kYXRhPXtnbG9iYWxfZGF0YX1cbiAgICAgICAgICAgIGJpbmRQb3B1cD17dHJ1ZX1cbiAgICAgICAgICAgIGZlYXR1cmVHcm91cD17ZmVhdHVyZUdyb3VwfVxuICAgICAgICAgIC8+XG4gICAgICAgICkpfVxuICAgIDwvPlxuICApO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsWUFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQXdDLFNBQUFHLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBTCx3QkFBQVMsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLGFBQUFFLE9BQUEsQ0FBQUYsR0FBQSx5QkFBQUEsR0FBQSw0QkFBQUcsT0FBQSxFQUFBSCxHQUFBLFVBQUFJLEtBQUEsR0FBQVQsd0JBQUEsQ0FBQUMsV0FBQSxPQUFBUSxLQUFBLElBQUFBLEtBQUEsQ0FBQUMsR0FBQSxDQUFBTCxHQUFBLFlBQUFJLEtBQUEsQ0FBQUUsR0FBQSxDQUFBTixHQUFBLFNBQUFPLE1BQUEsV0FBQUMscUJBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsR0FBQSxJQUFBWixHQUFBLFFBQUFZLEdBQUEsa0JBQUFILE1BQUEsQ0FBQUksU0FBQSxDQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWYsR0FBQSxFQUFBWSxHQUFBLFNBQUFJLElBQUEsR0FBQVIscUJBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBWCxHQUFBLEVBQUFZLEdBQUEsY0FBQUksSUFBQSxLQUFBQSxJQUFBLENBQUFWLEdBQUEsSUFBQVUsSUFBQSxDQUFBQyxHQUFBLEtBQUFSLE1BQUEsQ0FBQUMsY0FBQSxDQUFBSCxNQUFBLEVBQUFLLEdBQUEsRUFBQUksSUFBQSxZQUFBVCxNQUFBLENBQUFLLEdBQUEsSUFBQVosR0FBQSxDQUFBWSxHQUFBLFNBQUFMLE1BQUEsQ0FBQUosT0FBQSxHQUFBSCxHQUFBLE1BQUFJLEtBQUEsSUFBQUEsS0FBQSxDQUFBYSxHQUFBLENBQUFqQixHQUFBLEVBQUFPLE1BQUEsWUFBQUEsTUFBQTtBQWFqQyxJQUFNVyxZQUE2QixHQUFHLFNBQWhDQSxZQUE2QkEsQ0FBSUMsS0FBSyxFQUFLO0VBQ3RELElBQVFDLENBQUMsR0FDUEQsS0FBSyxDQURDQyxDQUFDO0lBQUVDLEtBQUssR0FDZEYsS0FBSyxDQURJRSxLQUFLO0lBQUVDLEdBQUcsR0FDbkJILEtBQUssQ0FEV0csR0FBRztJQUFFQyxPQUFPLEdBQzVCSixLQUFLLENBRGdCSSxPQUFPO0lBQUVDLGNBQWMsR0FDNUNMLEtBQUssQ0FEeUJLLGNBQWM7SUFBRUMsV0FBVyxHQUN6RE4sS0FBSyxDQUR5Q00sV0FBVztJQUFFQyxZQUFZLEdBQ3ZFUCxLQUFLLENBRHNETyxZQUFZO0VBRXpFLElBQU1DLEtBQVksR0FBRyxFQUFFO0VBQ3ZCLElBQUFDLFNBQUEsR0FBa0MsSUFBQUMsZUFBUSxFQUFDLElBQUksQ0FBQztJQUFBQyxVQUFBLE9BQUFDLGVBQUEsQ0FBQTVCLE9BQUEsRUFBQXlCLFNBQUE7SUFBekNJLFNBQVMsR0FBQUYsVUFBQTtJQUFFRyxZQUFZLEdBQUFILFVBQUE7RUFFOUIsSUFBQUksZ0JBQVMsRUFBQyxZQUFNO0lBQ2QsSUFBSUYsU0FBUyxFQUFFO01BQ2IsS0FBSyxJQUFNRyxRQUFRLElBQUliLEdBQUcsQ0FBQ2MsT0FBTyxFQUFFO1FBQ2xDLElBQUlkLEdBQUcsQ0FBQ2MsT0FBTyxDQUFDRCxRQUFRLENBQUMsQ0FBQ0UsWUFBWSxLQUFLLE1BQU0sRUFBRTtVQUNqRFYsS0FBSyxDQUFDVyxJQUFJLENBQUNoQixHQUFHLENBQUNjLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUM7UUFDbkM7TUFDRjtNQUVBLElBQUlSLEtBQUssQ0FBQ1ksTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDZixjQUFjLEVBQUU7UUFDekNGLEdBQUcsQ0FBQ2tCLFNBQVMsQ0FBQ3BCLENBQUMsQ0FBQ00sWUFBWSxDQUFDQyxLQUFLLENBQUMsQ0FBQ2MsU0FBUyxDQUFDLENBQUMsRUFBRTtVQUMvQ0MsT0FBTyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUc7UUFDcEIsQ0FBQyxDQUFDO1FBQ0ZULFlBQVksQ0FBQyxLQUFLLENBQUM7TUFDckI7TUFFQVgsR0FBRyxDQUFDcUIsY0FBYyxDQUFDLElBQUksQ0FBQztJQUMxQjtFQUNGLENBQUMsRUFBRSxDQUFDdEIsS0FBSyxDQUFDLENBQUM7RUFFWCxJQUFBYSxnQkFBUyxFQUFDLFlBQU07SUFDZFIsWUFBWSxDQUFDa0IsS0FBSyxDQUFDdEIsR0FBRyxDQUFDO0VBQ3pCLENBQUMsRUFBRSxFQUFFLENBQUM7RUFFTixvQkFDRWhDLE1BQUEsQ0FBQWEsT0FBQSxDQUFBMEMsYUFBQSxDQUFBdkQsTUFBQSxDQUFBYSxPQUFBLENBQUEyQyxRQUFBLFFBQ0d6QixLQUFLLENBQUNrQixNQUFNLEtBQUssQ0FBQyxJQUNqQmxCLEtBQUssQ0FBQ0MsR0FBRyxDQUFDLFVBQUN5QixJQUFXO0lBQUEsb0JBQ3BCekQsTUFBQSxDQUFBYSxPQUFBLENBQUEwQyxhQUFBLENBQUNwRCxZQUFBLENBQUFVLE9BQVc7TUFDVjRDLElBQUksRUFBRUEsSUFBSztNQUNYekIsR0FBRyxFQUFFQSxHQUFJO01BQ1RGLENBQUMsRUFBRUEsQ0FBRTtNQUNMUixHQUFHLEVBQUVtQyxJQUFJLENBQUNDLE9BQVE7TUFDbEJ6QixPQUFPLEVBQUVBLE9BQVE7TUFDakJFLFdBQVcsRUFBRUEsV0FBWTtNQUN6QndCLFNBQVMsRUFBRSxJQUFLO01BQ2hCdkIsWUFBWSxFQUFFQTtJQUFhLENBQzVCLENBQUM7RUFBQSxDQUNILENBQ0gsQ0FBQztBQUVQLENBQUM7QUFBQ3dCLE9BQUEsQ0FBQWhDLFlBQUEsR0FBQUEsWUFBQSJ9
49
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfQXJlYVBvbHlnb24iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiQXJlYVBvbHlnb25zIiwicHJvcHMiLCJMIiwiYXJlYXMiLCJtYXAiLCJtYXBab29tIiwiYXJlYVRvQ2VudGVyQnkiLCJnbG9iYWxfZGF0YSIsImdyb3VwIiwic2hvdWxkRmx5Iiwic2V0U2hvdWxkRmx5IiwidXNlU3RhdGUiLCJ1c2VFZmZlY3QiLCJwcm9wZXJ0eSIsIl9sYXllcnMiLCJrYW5kb19vYmplY3QiLCJwdXNoIiwibGVuZ3RoIiwiZml0Qm91bmRzIiwiZmVhdHVyZUdyb3VwIiwiZ2V0Qm91bmRzIiwicGFkZGluZyIsImludmFsaWRhdGVTaXplIiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJGcmFnbWVudCIsImFyZWEiLCJrZXkiLCJhcmVhX2lkIiwiYmluZFBvcHVwIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9hcmVhcy9BcmVhUG9seWdvbnMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgSUFyZWEgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvbW9kZWxzL0lBcmVhJztcbmltcG9ydCBBcmVhUG9seWdvbiBmcm9tICcuL0FyZWFQb2x5Z29uJztcblxudHlwZSBQcm9wcyA9IHtcbiAgbWFwOiBhbnk7XG4gIEw6IGFueTtcbiAgYXJlYXM6IElBcmVhW107XG4gIG1hcFpvb206IG51bWJlcjtcbiAgYXJlYVRvQ2VudGVyQnk/OiBhbnk7XG4gIGdsb2JhbF9kYXRhOiBhbnk7XG59O1xuXG5leHBvcnQgY29uc3QgQXJlYVBvbHlnb25zOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBMLCBhcmVhcywgbWFwLCBtYXBab29tLCBhcmVhVG9DZW50ZXJCeSwgZ2xvYmFsX2RhdGEgfSA9IHByb3BzO1xuICBjb25zdCBncm91cDogYW55W10gPSBbXTtcbiAgY29uc3QgW3Nob3VsZEZseSwgc2V0U2hvdWxkRmx5XSA9IHVzZVN0YXRlKHRydWUpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHNob3VsZEZseSkge1xuICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBtYXAuX2xheWVycykge1xuICAgICAgICBpZiAobWFwLl9sYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCA9PT0gJ0FyZWEnKSB7XG4gICAgICAgICAgZ3JvdXAucHVzaChtYXAuX2xheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChncm91cC5sZW5ndGggIT09IDAgJiYgIWFyZWFUb0NlbnRlckJ5KSB7XG4gICAgICAgIG1hcC5maXRCb3VuZHMoTC5mZWF0dXJlR3JvdXAoZ3JvdXApLmdldEJvdW5kcygpLCB7XG4gICAgICAgICAgcGFkZGluZzogWzQyMCwgNDIwXSxcbiAgICAgICAgfSk7XG4gICAgICAgIHNldFNob3VsZEZseShmYWxzZSk7XG4gICAgICB9XG5cbiAgICAgIG1hcC5pbnZhbGlkYXRlU2l6ZSh0cnVlKTtcbiAgICB9XG4gIH0sIFthcmVhc10pO1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHthcmVhcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgYXJlYXMubWFwKChhcmVhOiBJQXJlYSkgPT4gKFxuICAgICAgICAgIDxBcmVhUG9seWdvblxuICAgICAgICAgICAgYXJlYT17YXJlYX1cbiAgICAgICAgICAgIG1hcD17bWFwfVxuICAgICAgICAgICAgTD17TH1cbiAgICAgICAgICAgIGtleT17YXJlYS5hcmVhX2lkfVxuICAgICAgICAgICAgbWFwWm9vbT17bWFwWm9vbX1cbiAgICAgICAgICAgIGdsb2JhbF9kYXRhPXtnbG9iYWxfZGF0YX1cbiAgICAgICAgICAgIGJpbmRQb3B1cD17dHJ1ZX1cbiAgICAgICAgICAvPlxuICAgICAgICApKX1cbiAgICA8Lz5cbiAgKTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsWUFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBV08sTUFBTUcsWUFBNkIsR0FBSUMsS0FBSyxJQUFLO0VBQ3RELE1BQU07SUFBRUMsQ0FBQztJQUFFQyxLQUFLO0lBQUVDLEdBQUc7SUFBRUMsT0FBTztJQUFFQyxjQUFjO0lBQUVDO0VBQVksQ0FBQyxHQUFHTixLQUFLO0VBQ3JFLE1BQU1PLEtBQVksR0FBRyxFQUFFO0VBQ3ZCLE1BQU0sQ0FBQ0MsU0FBUyxFQUFFQyxZQUFZLENBQUMsR0FBRyxJQUFBQyxlQUFRLEVBQUMsSUFBSSxDQUFDO0VBRWhELElBQUFDLGdCQUFTLEVBQUMsTUFBTTtJQUNkLElBQUlILFNBQVMsRUFBRTtNQUNiLEtBQUssTUFBTUksUUFBUSxJQUFJVCxHQUFHLENBQUNVLE9BQU8sRUFBRTtRQUNsQyxJQUFJVixHQUFHLENBQUNVLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUNFLFlBQVksS0FBSyxNQUFNLEVBQUU7VUFDakRQLEtBQUssQ0FBQ1EsSUFBSSxDQUFDWixHQUFHLENBQUNVLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUM7UUFDbkM7TUFDRjtNQUVBLElBQUlMLEtBQUssQ0FBQ1MsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDWCxjQUFjLEVBQUU7UUFDekNGLEdBQUcsQ0FBQ2MsU0FBUyxDQUFDaEIsQ0FBQyxDQUFDaUIsWUFBWSxDQUFDWCxLQUFLLENBQUMsQ0FBQ1ksU0FBUyxDQUFDLENBQUMsRUFBRTtVQUMvQ0MsT0FBTyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUc7UUFDcEIsQ0FBQyxDQUFDO1FBQ0ZYLFlBQVksQ0FBQyxLQUFLLENBQUM7TUFDckI7TUFFQU4sR0FBRyxDQUFDa0IsY0FBYyxDQUFDLElBQUksQ0FBQztJQUMxQjtFQUNGLENBQUMsRUFBRSxDQUFDbkIsS0FBSyxDQUFDLENBQUM7RUFFWCxvQkFDRVIsTUFBQSxDQUFBNEIsT0FBQSxDQUFBQyxhQUFBLENBQUE3QixNQUFBLENBQUE0QixPQUFBLENBQUFFLFFBQUEsUUFDR3RCLEtBQUssQ0FBQ2MsTUFBTSxLQUFLLENBQUMsSUFDakJkLEtBQUssQ0FBQ0MsR0FBRyxDQUFFc0IsSUFBVyxpQkFDcEIvQixNQUFBLENBQUE0QixPQUFBLENBQUFDLGFBQUEsQ0FBQzFCLFlBQUEsQ0FBQXlCLE9BQVc7SUFDVkcsSUFBSSxFQUFFQSxJQUFLO0lBQ1h0QixHQUFHLEVBQUVBLEdBQUk7SUFDVEYsQ0FBQyxFQUFFQSxDQUFFO0lBQ0x5QixHQUFHLEVBQUVELElBQUksQ0FBQ0UsT0FBUTtJQUNsQnZCLE9BQU8sRUFBRUEsT0FBUTtJQUNqQkUsV0FBVyxFQUFFQSxXQUFZO0lBQ3pCc0IsU0FBUyxFQUFFO0VBQUssQ0FDakIsQ0FDRixDQUNILENBQUM7QUFFUCxDQUFDO0FBQUNDLE9BQUEsQ0FBQTlCLFlBQUEsR0FBQUEsWUFBQSJ9
@@ -1,30 +1,28 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.zoomControlForArea = exports.getAreaName = exports.genericPolygon = exports.createPolygon = exports.calculatePolygonArea = exports.bindPopupBasedOnZoomLevel = void 0;
8
- var _leaflet = _interopRequireDefault(require("leaflet"));
9
- require("leaflet.pattern");
10
8
  var _scoreToData = require("../../../utilities/scoreToData");
11
9
  var _theme = require("../../../styles/theme/theme");
10
+ var _leaflet = _interopRequireDefault(require("leaflet"));
12
11
  var _utils = require("pages/DashboardMap/utils");
13
- var _Patterns = require("./Patterns");
14
- var getAreaName = function getAreaName(area) {
15
- var name = area.area_name || area.name;
12
+ const getAreaName = area => {
13
+ let name = area.area_name || area.name;
16
14
  return name;
17
15
  };
18
16
  exports.getAreaName = getAreaName;
19
- var genericPolygon = function genericPolygon(area, mapZoom) {
20
- var areaPolygon;
21
- var latlngs = area.shape_data.map(function (location) {
17
+ const genericPolygon = (area, mapZoom) => {
18
+ let areaPolygon;
19
+ let latlngs = area.shape_data.map(location => {
22
20
  return [location['lat'], location['lng']];
23
21
  });
24
22
  if (latlngs.length < 1) return;
25
- var color = area.color ? area.color : (0, _scoreToData.scoreToColor)(area.area_score);
23
+ let color = area.color ? area.color : (0, _scoreToData.scoreToColor)(area.area_score);
26
24
  areaPolygon = _leaflet.default.polygon(latlngs, {
27
- color: color,
25
+ color,
28
26
  fillOpacity: area.showColorOnlyInBorders ? 0.3 : 0.4,
29
27
  weight: area.showColorOnlyInBorders ? 2 : 0,
30
28
  fill: false
@@ -32,23 +30,23 @@ var genericPolygon = function genericPolygon(area, mapZoom) {
32
30
  return areaPolygon;
33
31
  };
34
32
  exports.genericPolygon = genericPolygon;
35
- var calculatePolygonArea = function calculatePolygonArea(coordinates) {
36
- var area = 0;
37
- var numPoints = coordinates.length;
38
- for (var i = 0; i < numPoints; i++) {
39
- var x1 = coordinates[i][0];
40
- var y1 = coordinates[i][1];
41
- var x2 = coordinates[(i + 1) % numPoints][0];
42
- var y2 = coordinates[(i + 1) % numPoints][1];
33
+ const calculatePolygonArea = coordinates => {
34
+ let area = 0;
35
+ let numPoints = coordinates.length;
36
+ for (let i = 0; i < numPoints; i++) {
37
+ let x1 = coordinates[i][0];
38
+ let y1 = coordinates[i][1];
39
+ let x2 = coordinates[(i + 1) % numPoints][0];
40
+ let y2 = coordinates[(i + 1) % numPoints][1];
43
41
  area += x1 * y2 - x2 * y1;
44
42
  }
45
43
  return Math.abs(area / 2);
46
44
  };
47
45
  exports.calculatePolygonArea = calculatePolygonArea;
48
- var polygonTitle = function polygonTitle(area, mapZoom) {
46
+ const polygonTitle = (area, mapZoom) => {
49
47
  return "<div class=\"area-tooltip\" style=\"color:".concat(_theme.theme.colorScheme.primary.ps1, ";font-weight:700;background-color:transparent;font-size: ").concat(mapZoom * 1.5, "px;-webkit-text-stroke: 0.8px #ffffff;\"> ").concat(getAreaName(area), " \n </div>");
50
48
  };
51
- var bindToolTip = function bindToolTip(layer, title, permanent, mapZoom) {
49
+ const bindToolTip = (layer, title, permanent, mapZoom) => {
52
50
  layer.unbindTooltip();
53
51
  layer.bindTooltip(title, {
54
52
  className: 'area-tooltip',
@@ -56,26 +54,23 @@ var bindToolTip = function bindToolTip(layer, title, permanent, mapZoom) {
56
54
  direction: 'center'
57
55
  });
58
56
  };
59
- var bindPopupBasedOnZoomLevel = function bindPopupBasedOnZoomLevel(polygon, mapZoom, area) {
60
- var permanent = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : undefined;
61
- var title = polygonTitle(area, mapZoom);
62
- if (polygon['kando_object'] === undefined) {
63
- polygon.getLayers().forEach(function (layer) {
57
+ const bindPopupBasedOnZoomLevel = function (LayerGroup, mapZoom, area) {
58
+ let permanent = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : undefined;
59
+ const title = polygonTitle(area, mapZoom);
60
+ if (LayerGroup['kando_object'] === undefined) {
61
+ LayerGroup.getLayers().forEach(layer => {
64
62
  bindToolTip(layer, title, permanent, mapZoom);
65
63
  });
66
64
  } else {
67
- bindToolTip(polygon, title, permanent, mapZoom);
65
+ bindToolTip(LayerGroup, title, permanent, mapZoom);
68
66
  }
69
67
  };
70
68
  exports.bindPopupBasedOnZoomLevel = bindPopupBasedOnZoomLevel;
71
- var drillDownBasedOnZoomLevel = function drillDownBasedOnZoomLevel(areaPolygon, area, percentage, zoomPercentageToDrillDown, isPartialPolygonVisible, map, featureGroup) {
72
- var drillDownCondition = function drillDownCondition() {
73
- return (
74
- //percentage >= zoomPercentageToDrillDown &&
75
- isPartialPolygonVisible && area.sub_areas.length !== 0 && areaPolygon._map !== null
76
- );
69
+ const drillDownBasedOnZoomLevel = (areaPolygon, area, percentage, zoomPercentageToDrillDown, isPartialPolygonVisible, map) => {
70
+ const drillDownCondition = () => {
71
+ return percentage >= zoomPercentageToDrillDown && isPartialPolygonVisible && area.sub_areas.length !== 0 && areaPolygon._map !== null;
77
72
  };
78
- var hidePolygon = function hidePolygon(polygon) {
73
+ const hidePolygon = polygon => {
79
74
  polygon.bringToBack();
80
75
  polygon.unbindTooltip();
81
76
  polygon['hidden'] = true;
@@ -84,21 +79,19 @@ var drillDownBasedOnZoomLevel = function drillDownBasedOnZoomLevel(areaPolygon,
84
79
  fill: false
85
80
  });
86
81
  };
87
- var showPolygon = function showPolygon(polygon, fill) {
82
+ const showPolygon = (polygon, fill) => {
88
83
  polygon.bringToFront();
89
84
  polygon['hidden'] = false;
90
85
  polygon.setStyle({
91
- //stroke: fill ? false : true,
92
- stroke: true,
86
+ stroke: fill ? false : true,
93
87
  weight: 2,
94
- fill: fill,
95
- fillOpacity: 0.4
88
+ fill: fill
96
89
  });
97
90
  };
98
- var handleSubAreas = function handleSubAreas(show) {
91
+ const handleSubAreas = show => {
99
92
  if (areaPolygon['sub_areas'] !== undefined) {
100
- areaPolygon['sub_areas'].forEach(function (subAreaId) {
101
- featureGroup.eachLayer(function (layer) {
93
+ areaPolygon['sub_areas'].forEach(subAreaId => {
94
+ map.eachLayer(layer => {
102
95
  if (layer['kando_object_id'] === subAreaId) {
103
96
  show ? showPolygon(layer, true) : hidePolygon(layer);
104
97
  }
@@ -121,35 +114,35 @@ var drillDownBasedOnZoomLevel = function drillDownBasedOnZoomLevel(areaPolygon,
121
114
  }
122
115
  }
123
116
  };
124
- var zoomControlForArea = function zoomControlForArea(areaPolygon, area, map, featureGroup) {
117
+ const zoomControlForArea = (areaPolygon, area, map) => {
125
118
  map.on('zoomend', function () {
126
- var getMapBounds = map.getBounds();
127
- var polygonBounds = areaPolygon.getBounds();
128
- var isPartialPolygonVisible = getMapBounds.intersects(polygonBounds);
129
- var mapBoundsPolygon = _leaflet.default.polygon([getMapBounds.getSouthWest(), getMapBounds.getNorthWest(), getMapBounds.getNorthEast(), getMapBounds.getSouthEast()]);
130
- var mapBounds = calculatePolygonArea(mapBoundsPolygon.toGeoJSON().geometry.coordinates[0]);
131
- var areaSurface = areaPolygon['calculated_surface'];
132
- var zoomPercentageToDrillDown = 15.0;
133
- var percentage = areaSurface / mapBounds * 100;
134
- drillDownBasedOnZoomLevel(areaPolygon, area, percentage, zoomPercentageToDrillDown, isPartialPolygonVisible, map, featureGroup);
119
+ let getMapBounds = map.getBounds();
120
+ let polygonBounds = areaPolygon.getBounds();
121
+ let isPartialPolygonVisible = getMapBounds.intersects(polygonBounds);
122
+ let mapBoundsPolygon = _leaflet.default.polygon([getMapBounds.getSouthWest(), getMapBounds.getNorthWest(), getMapBounds.getNorthEast(), getMapBounds.getSouthEast()]);
123
+ let mapBounds = calculatePolygonArea(mapBoundsPolygon.toGeoJSON().geometry.coordinates[0]);
124
+ let areaSurface = areaPolygon['calculated_surface'];
125
+ const zoomPercentageToDrillDown = 15.0;
126
+ const percentage = areaSurface / mapBounds * 100;
127
+ drillDownBasedOnZoomLevel(areaPolygon, area, percentage, zoomPercentageToDrillDown, isPartialPolygonVisible, map);
135
128
  });
136
129
  };
137
130
  exports.zoomControlForArea = zoomControlForArea;
138
- var customAttributesForAreaPolygon = function customAttributesForAreaPolygon(areaPolygon, area) {
131
+ const customAttributesForAreaPolygon = (areaPolygon, area) => {
139
132
  areaPolygon['kando_object_id'] = area.area_id;
140
133
  areaPolygon['kando_object'] = 'Area';
141
134
  areaPolygon['area_name'] = area.area_name;
142
135
  areaPolygon['calculated_surface'] = area.calculated_surface;
143
136
  };
144
- var createPolygon = function createPolygon(area, mapZoom, featureGroup, map, popupCreator, handleClick, parentAreaId) {
145
- var polygon;
137
+ const createPolygon = (area, mapZoom, LayerGroup, map, popupCreator, handleClick, parentAreaId) => {
138
+ let polygon;
146
139
  if (area.shape_data !== null && area.shape_data !== undefined && area.shape_data.length > 0) {
147
- polygon = genericPolygon(area, mapZoom);
140
+ polygon = genericPolygon(area, mapZoom, parentAreaId);
148
141
  if (handleClick !== undefined && handleClick !== null) {
149
- var onClick = function onClick() {
150
- polygon.on('click', function () {
142
+ const onClick = () => {
143
+ polygon.on('click', () => {
151
144
  handleClick(polygon.kando_object_id);
152
- var subject = 'Map View - Area clicked';
145
+ const subject = 'Map View - Area clicked';
153
146
  (0, _utils.sendAnalyticsEvent)(subject, 'map', {
154
147
  area_id: area.area_id,
155
148
  area_name: area.area_name
@@ -159,27 +152,12 @@ var createPolygon = function createPolygon(area, mapZoom, featureGroup, map, pop
159
152
  onClick();
160
153
  }
161
154
  customAttributesForAreaPolygon(polygon, area);
162
- var pattern = getPattern(area);
163
- if (pattern) {
164
- pattern === null || pattern === void 0 ? void 0 : pattern.addTo(map);
165
- polygon.setStyle({
166
- fillPattern: pattern,
167
- color: (0, _scoreToData.scoreToColor)(area.area_score)
168
- });
169
- }
170
- polygon.addTo(featureGroup);
155
+ map.addLayer(polygon);
171
156
  popupCreator(polygon, area);
172
- zoomControlForArea(polygon, area, map, featureGroup);
157
+ zoomControlForArea(polygon, area, map);
173
158
  return polygon;
174
159
  }
175
160
  return null;
176
161
  };
177
162
  exports.createPolygon = createPolygon;
178
- var getPattern = function getPattern(area) {
179
- if (area.is_assessment === false) {
180
- return null;
181
- }
182
- var color = (0, _scoreToData.scoreToColor)(area.area_score);
183
- return (0, _Patterns.assesmentPattern)(color);
184
- };
185
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGVhZmxldCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3Njb3JlVG9EYXRhIiwiX3RoZW1lIiwiX3V0aWxzIiwiX1BhdHRlcm5zIiwiZ2V0QXJlYU5hbWUiLCJhcmVhIiwibmFtZSIsImFyZWFfbmFtZSIsImV4cG9ydHMiLCJnZW5lcmljUG9seWdvbiIsIm1hcFpvb20iLCJhcmVhUG9seWdvbiIsImxhdGxuZ3MiLCJzaGFwZV9kYXRhIiwibWFwIiwibG9jYXRpb24iLCJsZW5ndGgiLCJjb2xvciIsInNjb3JlVG9Db2xvciIsImFyZWFfc2NvcmUiLCJMIiwicG9seWdvbiIsImZpbGxPcGFjaXR5Iiwic2hvd0NvbG9yT25seUluQm9yZGVycyIsIndlaWdodCIsImZpbGwiLCJjYWxjdWxhdGVQb2x5Z29uQXJlYSIsImNvb3JkaW5hdGVzIiwibnVtUG9pbnRzIiwiaSIsIngxIiwieTEiLCJ4MiIsInkyIiwiTWF0aCIsImFicyIsInBvbHlnb25UaXRsZSIsImNvbmNhdCIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJwcmltYXJ5IiwicHMxIiwiYmluZFRvb2xUaXAiLCJsYXllciIsInRpdGxlIiwicGVybWFuZW50IiwidW5iaW5kVG9vbHRpcCIsImJpbmRUb29sdGlwIiwiY2xhc3NOYW1lIiwidW5kZWZpbmVkIiwiZGlyZWN0aW9uIiwiYmluZFBvcHVwQmFzZWRPblpvb21MZXZlbCIsImFyZ3VtZW50cyIsImdldExheWVycyIsImZvckVhY2giLCJkcmlsbERvd25CYXNlZE9uWm9vbUxldmVsIiwicGVyY2VudGFnZSIsInpvb21QZXJjZW50YWdlVG9EcmlsbERvd24iLCJpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSIsImZlYXR1cmVHcm91cCIsImRyaWxsRG93bkNvbmRpdGlvbiIsInN1Yl9hcmVhcyIsIl9tYXAiLCJoaWRlUG9seWdvbiIsImJyaW5nVG9CYWNrIiwic2V0U3R5bGUiLCJzdHJva2UiLCJzaG93UG9seWdvbiIsImJyaW5nVG9Gcm9udCIsImhhbmRsZVN1YkFyZWFzIiwic2hvdyIsInN1YkFyZWFJZCIsImVhY2hMYXllciIsImdldFpvb20iLCJ6b29tQ29udHJvbEZvckFyZWEiLCJvbiIsImdldE1hcEJvdW5kcyIsImdldEJvdW5kcyIsInBvbHlnb25Cb3VuZHMiLCJpbnRlcnNlY3RzIiwibWFwQm91bmRzUG9seWdvbiIsImdldFNvdXRoV2VzdCIsImdldE5vcnRoV2VzdCIsImdldE5vcnRoRWFzdCIsImdldFNvdXRoRWFzdCIsIm1hcEJvdW5kcyIsInRvR2VvSlNPTiIsImdlb21ldHJ5IiwiYXJlYVN1cmZhY2UiLCJjdXN0b21BdHRyaWJ1dGVzRm9yQXJlYVBvbHlnb24iLCJhcmVhX2lkIiwiY2FsY3VsYXRlZF9zdXJmYWNlIiwiY3JlYXRlUG9seWdvbiIsInBvcHVwQ3JlYXRvciIsImhhbmRsZUNsaWNrIiwicGFyZW50QXJlYUlkIiwib25DbGljayIsImthbmRvX29iamVjdF9pZCIsInN1YmplY3QiLCJzZW5kQW5hbHl0aWNzRXZlbnQiLCJwYXR0ZXJuIiwiZ2V0UGF0dGVybiIsImFkZFRvIiwiZmlsbFBhdHRlcm4iLCJpc19hc3Nlc3NtZW50IiwiYXNzZXNtZW50UGF0dGVybiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9hcmVhcy9BcmVhVXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEwsIHsgRmVhdHVyZUdyb3VwLCBQb2x5Z29uIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgJ2xlYWZsZXQucGF0dGVybic7XG5pbXBvcnQgeyBzY29yZVRvQ29sb3IgfSBmcm9tICcuLi8uLi8uLi91dGlsaXRpZXMvc2NvcmVUb0RhdGEnO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgc2VuZEFuYWx5dGljc0V2ZW50IH0gZnJvbSAnc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC91dGlscyc7XG5pbXBvcnQgeyBhc3Nlc21lbnRQYXR0ZXJuIH0gZnJvbSAnLi9QYXR0ZXJucyc7XG5cbmV4cG9ydCBjb25zdCBnZXRBcmVhTmFtZSA9IChhcmVhKSA9PiB7XG4gIGxldCBuYW1lID0gYXJlYS5hcmVhX25hbWUgfHwgYXJlYS5uYW1lO1xuXG4gIHJldHVybiBuYW1lO1xufTtcblxuZXhwb3J0IGNvbnN0IGdlbmVyaWNQb2x5Z29uID0gKGFyZWEsIG1hcFpvb20pID0+IHtcbiAgbGV0IGFyZWFQb2x5Z29uOiBQb2x5Z29uO1xuICBsZXQgbGF0bG5ncyA9IGFyZWEuc2hhcGVfZGF0YS5tYXAoKGxvY2F0aW9uOiBhbnkpID0+IHtcbiAgICByZXR1cm4gW2xvY2F0aW9uWydsYXQnXSwgbG9jYXRpb25bJ2xuZyddXTtcbiAgfSk7XG5cbiAgaWYgKGxhdGxuZ3MubGVuZ3RoIDwgMSkgcmV0dXJuO1xuXG4gIGxldCBjb2xvciA9IGFyZWEuY29sb3IgPyBhcmVhLmNvbG9yIDogc2NvcmVUb0NvbG9yKGFyZWEuYXJlYV9zY29yZSk7XG5cbiAgYXJlYVBvbHlnb24gPSBMLnBvbHlnb24obGF0bG5ncywge1xuICAgIGNvbG9yLFxuICAgIGZpbGxPcGFjaXR5OiBhcmVhLnNob3dDb2xvck9ubHlJbkJvcmRlcnMgPyAwLjMgOiAwLjQsXG4gICAgd2VpZ2h0OiBhcmVhLnNob3dDb2xvck9ubHlJbkJvcmRlcnMgPyAyIDogMCxcbiAgICBmaWxsOiBmYWxzZSxcbiAgfSk7XG5cbiAgcmV0dXJuIGFyZWFQb2x5Z29uO1xufTtcblxuZXhwb3J0IGNvbnN0IGNhbGN1bGF0ZVBvbHlnb25BcmVhID0gKGNvb3JkaW5hdGVzKSA9PiB7XG4gIGxldCBhcmVhID0gMDtcbiAgbGV0IG51bVBvaW50cyA9IGNvb3JkaW5hdGVzLmxlbmd0aDtcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IG51bVBvaW50czsgaSsrKSB7XG4gICAgbGV0IHgxID0gY29vcmRpbmF0ZXNbaV1bMF07XG4gICAgbGV0IHkxID0gY29vcmRpbmF0ZXNbaV1bMV07XG4gICAgbGV0IHgyID0gY29vcmRpbmF0ZXNbKGkgKyAxKSAlIG51bVBvaW50c11bMF07XG4gICAgbGV0IHkyID0gY29vcmRpbmF0ZXNbKGkgKyAxKSAlIG51bVBvaW50c11bMV07XG5cbiAgICBhcmVhICs9IHgxICogeTIgLSB4MiAqIHkxO1xuICB9XG5cbiAgcmV0dXJuIE1hdGguYWJzKGFyZWEgLyAyKTtcbn07XG5cbmNvbnN0IHBvbHlnb25UaXRsZSA9IChhcmVhLCBtYXBab29tKSA9PiB7XG4gIHJldHVybiBgPGRpdiBjbGFzcz1cImFyZWEtdG9vbHRpcFwiIHN0eWxlPVwiY29sb3I6JHtcbiAgICB0aGVtZS5jb2xvclNjaGVtZS5wcmltYXJ5LnBzMVxuICB9O2ZvbnQtd2VpZ2h0OjcwMDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2ZvbnQtc2l6ZTogJHtcbiAgICBtYXBab29tICogMS41XG4gIH1weDstd2Via2l0LXRleHQtc3Ryb2tlOiAwLjhweCAjZmZmZmZmO1wiPiAke2dldEFyZWFOYW1lKGFyZWEpfSBcbiAgICAgICAgPC9kaXY+YDtcbn07XG5cbmNvbnN0IGJpbmRUb29sVGlwID0gKGxheWVyLCB0aXRsZSwgcGVybWFuZW50LCBtYXBab29tKSA9PiB7XG4gIGxheWVyLnVuYmluZFRvb2x0aXAoKTtcbiAgbGF5ZXIuYmluZFRvb2x0aXAodGl0bGUsIHtcbiAgICBjbGFzc05hbWU6ICdhcmVhLXRvb2x0aXAnLFxuICAgIHBlcm1hbmVudDogcGVybWFuZW50ICE9PSB1bmRlZmluZWQgPyBwZXJtYW5lbnQgOiBtYXBab29tID4gMTEsXG4gICAgZGlyZWN0aW9uOiAnY2VudGVyJyxcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgYmluZFBvcHVwQmFzZWRPblpvb21MZXZlbCA9IChcbiAgcG9seWdvbixcbiAgbWFwWm9vbSxcbiAgYXJlYSxcbiAgcGVybWFuZW50ID0gdW5kZWZpbmVkLFxuKSA9PiB7XG4gIGNvbnN0IHRpdGxlID0gcG9seWdvblRpdGxlKGFyZWEsIG1hcFpvb20pO1xuXG4gIGlmIChwb2x5Z29uWydrYW5kb19vYmplY3QnXSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcG9seWdvbi5nZXRMYXllcnMoKS5mb3JFYWNoKChsYXllcikgPT4ge1xuICAgICAgYmluZFRvb2xUaXAobGF5ZXIsIHRpdGxlLCBwZXJtYW5lbnQsIG1hcFpvb20pO1xuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIGJpbmRUb29sVGlwKHBvbHlnb24sIHRpdGxlLCBwZXJtYW5lbnQsIG1hcFpvb20pO1xuICB9XG59O1xuXG5jb25zdCBkcmlsbERvd25CYXNlZE9uWm9vbUxldmVsID0gKFxuICBhcmVhUG9seWdvbixcbiAgYXJlYSxcbiAgcGVyY2VudGFnZSxcbiAgem9vbVBlcmNlbnRhZ2VUb0RyaWxsRG93bixcbiAgaXNQYXJ0aWFsUG9seWdvblZpc2libGUsXG4gIG1hcCxcbiAgZmVhdHVyZUdyb3VwLFxuKSA9PiB7XG4gIGNvbnN0IGRyaWxsRG93bkNvbmRpdGlvbiA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgLy9wZXJjZW50YWdlID49IHpvb21QZXJjZW50YWdlVG9EcmlsbERvd24gJiZcbiAgICAgIGlzUGFydGlhbFBvbHlnb25WaXNpYmxlICYmXG4gICAgICBhcmVhLnN1Yl9hcmVhcy5sZW5ndGggIT09IDAgJiZcbiAgICAgIGFyZWFQb2x5Z29uLl9tYXAgIT09IG51bGxcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGhpZGVQb2x5Z29uID0gKHBvbHlnb246IFBvbHlnb24pID0+IHtcbiAgICBwb2x5Z29uLmJyaW5nVG9CYWNrKCk7XG4gICAgcG9seWdvbi51bmJpbmRUb29sdGlwKCk7XG4gICAgcG9seWdvblsnaGlkZGVuJ10gPSB0cnVlO1xuICAgIHBvbHlnb24uc2V0U3R5bGUoe1xuICAgICAgc3Ryb2tlOiBmYWxzZSxcbiAgICAgIGZpbGw6IGZhbHNlLFxuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IHNob3dQb2x5Z29uID0gKHBvbHlnb246IFBvbHlnb24sIGZpbGw6IGJvb2xlYW4pID0+IHtcbiAgICBwb2x5Z29uLmJyaW5nVG9Gcm9udCgpO1xuICAgIHBvbHlnb25bJ2hpZGRlbiddID0gZmFsc2U7XG4gICAgcG9seWdvbi5zZXRTdHlsZSh7XG4gICAgICAvL3N0cm9rZTogZmlsbCA/IGZhbHNlIDogdHJ1ZSxcbiAgICAgIHN0cm9rZTogdHJ1ZSxcbiAgICAgIHdlaWdodDogMixcbiAgICAgIGZpbGw6IGZpbGwsXG4gICAgICBmaWxsT3BhY2l0eTogMC40LFxuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1YkFyZWFzID0gKHNob3c6IGJvb2xlYW4pID0+IHtcbiAgICBpZiAoYXJlYVBvbHlnb25bJ3N1Yl9hcmVhcyddICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGFyZWFQb2x5Z29uWydzdWJfYXJlYXMnXS5mb3JFYWNoKChzdWJBcmVhSWQpID0+IHtcbiAgICAgICAgZmVhdHVyZUdyb3VwLmVhY2hMYXllcigobGF5ZXIpID0+IHtcbiAgICAgICAgICBpZiAobGF5ZXJbJ2thbmRvX29iamVjdF9pZCddID09PSBzdWJBcmVhSWQpIHtcbiAgICAgICAgICAgIHNob3cgPyBzaG93UG9seWdvbihsYXllciwgdHJ1ZSkgOiBoaWRlUG9seWdvbihsYXllcik7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICAvLyBTaG93IHRoZSBhcmVhIHdpdGggYm9yZGVyIG9ubHlcbiAgLy8gT3IgYmFja2dyb3VuZCBjb2xvclxuICBpZiAoZHJpbGxEb3duQ29uZGl0aW9uKCkpIHtcbiAgICBzaG93UG9seWdvbihhcmVhUG9seWdvbiwgZmFsc2UpO1xuICAgIGFyZWFQb2x5Z29uLnVuYmluZFRvb2x0aXAoKTtcbiAgICBoYW5kbGVTdWJBcmVhcyh0cnVlKTtcbiAgfSBlbHNlIHtcbiAgICBoYW5kbGVTdWJBcmVhcyhmYWxzZSk7XG5cbiAgICBpZiAoIWFyZWFQb2x5Z29uWydoaWRkZW4nXSkge1xuICAgICAgc2hvd1BvbHlnb24oYXJlYVBvbHlnb24sIHRydWUpO1xuICAgICAgYmluZFBvcHVwQmFzZWRPblpvb21MZXZlbChhcmVhUG9seWdvbiwgYXJlYVBvbHlnb24uX21hcC5nZXRab29tKCksIGFyZWEpO1xuICAgIH1cbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHpvb21Db250cm9sRm9yQXJlYSA9IChhcmVhUG9seWdvbiwgYXJlYSwgbWFwLCBmZWF0dXJlR3JvdXApID0+IHtcbiAgbWFwLm9uKCd6b29tZW5kJywgZnVuY3Rpb24gKCkge1xuICAgIGxldCBnZXRNYXBCb3VuZHMgPSBtYXAuZ2V0Qm91bmRzKCk7XG4gICAgbGV0IHBvbHlnb25Cb3VuZHMgPSBhcmVhUG9seWdvbi5nZXRCb3VuZHMoKTtcbiAgICBsZXQgaXNQYXJ0aWFsUG9seWdvblZpc2libGUgPSBnZXRNYXBCb3VuZHMuaW50ZXJzZWN0cyhwb2x5Z29uQm91bmRzKTtcbiAgICBsZXQgbWFwQm91bmRzUG9seWdvbiA9IEwucG9seWdvbihbXG4gICAgICBnZXRNYXBCb3VuZHMuZ2V0U291dGhXZXN0KCksXG4gICAgICBnZXRNYXBCb3VuZHMuZ2V0Tm9ydGhXZXN0KCksXG4gICAgICBnZXRNYXBCb3VuZHMuZ2V0Tm9ydGhFYXN0KCksXG4gICAgICBnZXRNYXBCb3VuZHMuZ2V0U291dGhFYXN0KCksXG4gICAgXSk7XG5cbiAgICBsZXQgbWFwQm91bmRzID0gY2FsY3VsYXRlUG9seWdvbkFyZWEoXG4gICAgICBtYXBCb3VuZHNQb2x5Z29uLnRvR2VvSlNPTigpLmdlb21ldHJ5LmNvb3JkaW5hdGVzWzBdLFxuICAgICk7XG5cbiAgICBsZXQgYXJlYVN1cmZhY2UgPSBhcmVhUG9seWdvblsnY2FsY3VsYXRlZF9zdXJmYWNlJ107XG4gICAgY29uc3Qgem9vbVBlcmNlbnRhZ2VUb0RyaWxsRG93biA9IDE1LjA7XG4gICAgY29uc3QgcGVyY2VudGFnZSA9IChhcmVhU3VyZmFjZSAvIG1hcEJvdW5kcykgKiAxMDA7XG5cbiAgICBkcmlsbERvd25CYXNlZE9uWm9vbUxldmVsKFxuICAgICAgYXJlYVBvbHlnb24sXG4gICAgICBhcmVhLFxuICAgICAgcGVyY2VudGFnZSxcbiAgICAgIHpvb21QZXJjZW50YWdlVG9EcmlsbERvd24sXG4gICAgICBpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSxcbiAgICAgIG1hcCxcbiAgICAgIGZlYXR1cmVHcm91cCxcbiAgICApO1xuICB9KTtcbn07XG5cbmNvbnN0IGN1c3RvbUF0dHJpYnV0ZXNGb3JBcmVhUG9seWdvbiA9IChhcmVhUG9seWdvbiwgYXJlYSkgPT4ge1xuICBhcmVhUG9seWdvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBhcmVhLmFyZWFfaWQ7XG4gIGFyZWFQb2x5Z29uWydrYW5kb19vYmplY3QnXSA9ICdBcmVhJztcbiAgYXJlYVBvbHlnb25bJ2FyZWFfbmFtZSddID0gYXJlYS5hcmVhX25hbWU7XG4gIGFyZWFQb2x5Z29uWydjYWxjdWxhdGVkX3N1cmZhY2UnXSA9IGFyZWEuY2FsY3VsYXRlZF9zdXJmYWNlO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVBvbHlnb24gPSAoXG4gIGFyZWEsXG4gIG1hcFpvb20sXG4gIGZlYXR1cmVHcm91cDogRmVhdHVyZUdyb3VwLFxuICBtYXAsXG4gIHBvcHVwQ3JlYXRvcj86IChwb2x5Z29uLCBhcmVhKSA9PiB2b2lkLFxuICBoYW5kbGVDbGljaz8sXG4gIHBhcmVudEFyZWFJZD8sXG4pID0+IHtcbiAgbGV0IHBvbHlnb246IFBvbHlnb247XG4gIGlmIChcbiAgICBhcmVhLnNoYXBlX2RhdGEgIT09IG51bGwgJiZcbiAgICBhcmVhLnNoYXBlX2RhdGEgIT09IHVuZGVmaW5lZCAmJlxuICAgIGFyZWEuc2hhcGVfZGF0YS5sZW5ndGggPiAwXG4gICkge1xuICAgIHBvbHlnb24gPSBnZW5lcmljUG9seWdvbihhcmVhLCBtYXBab29tKTtcblxuICAgIGlmIChoYW5kbGVDbGljayAhPT0gdW5kZWZpbmVkICYmIGhhbmRsZUNsaWNrICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBvbkNsaWNrID0gKCkgPT4ge1xuICAgICAgICBwb2x5Z29uLm9uKCdjbGljaycsICgpID0+IHtcbiAgICAgICAgICBoYW5kbGVDbGljayhwb2x5Z29uLmthbmRvX29iamVjdF9pZCk7XG5cbiAgICAgICAgICBjb25zdCBzdWJqZWN0ID0gJ01hcCBWaWV3IC0gQXJlYSBjbGlja2VkJztcbiAgICAgICAgICBzZW5kQW5hbHl0aWNzRXZlbnQoc3ViamVjdCwgJ21hcCcsIHtcbiAgICAgICAgICAgIGFyZWFfaWQ6IGFyZWEuYXJlYV9pZCxcbiAgICAgICAgICAgIGFyZWFfbmFtZTogYXJlYS5hcmVhX25hbWUsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICAgIG9uQ2xpY2soKTtcbiAgICB9XG4gICAgY3VzdG9tQXR0cmlidXRlc0ZvckFyZWFQb2x5Z29uKHBvbHlnb24sIGFyZWEpO1xuICAgIGNvbnN0IHBhdHRlcm4gPSBnZXRQYXR0ZXJuKGFyZWEpO1xuICAgIGlmIChwYXR0ZXJuKSB7XG4gICAgICBwYXR0ZXJuPy5hZGRUbyhtYXApO1xuICAgICAgcG9seWdvbi5zZXRTdHlsZSh7XG4gICAgICAgIGZpbGxQYXR0ZXJuOiBwYXR0ZXJuLFxuICAgICAgICBjb2xvcjogc2NvcmVUb0NvbG9yKGFyZWEuYXJlYV9zY29yZSksXG4gICAgICB9KTtcbiAgICB9XG4gICAgcG9seWdvbi5hZGRUbyhmZWF0dXJlR3JvdXApO1xuICAgIHBvcHVwQ3JlYXRvcihwb2x5Z29uLCBhcmVhKTtcbiAgICB6b29tQ29udHJvbEZvckFyZWEocG9seWdvbiwgYXJlYSwgbWFwLCBmZWF0dXJlR3JvdXApO1xuICAgIHJldHVybiBwb2x5Z29uO1xuICB9XG4gIHJldHVybiBudWxsO1xufTtcblxuY29uc3QgZ2V0UGF0dGVybiA9IChhcmVhKSA9PiB7XG4gIGlmIChhcmVhLmlzX2Fzc2Vzc21lbnQgPT09IGZhbHNlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgY29uc3QgY29sb3IgPSBzY29yZVRvQ29sb3IoYXJlYS5hcmVhX3Njb3JlKTtcbiAgcmV0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
163
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc2NvcmVUb0RhdGEiLCJyZXF1aXJlIiwiX3RoZW1lIiwiX2xlYWZsZXQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3V0aWxzIiwiZ2V0QXJlYU5hbWUiLCJhcmVhIiwibmFtZSIsImFyZWFfbmFtZSIsImV4cG9ydHMiLCJnZW5lcmljUG9seWdvbiIsIm1hcFpvb20iLCJhcmVhUG9seWdvbiIsImxhdGxuZ3MiLCJzaGFwZV9kYXRhIiwibWFwIiwibG9jYXRpb24iLCJsZW5ndGgiLCJjb2xvciIsInNjb3JlVG9Db2xvciIsImFyZWFfc2NvcmUiLCJMIiwicG9seWdvbiIsImZpbGxPcGFjaXR5Iiwic2hvd0NvbG9yT25seUluQm9yZGVycyIsIndlaWdodCIsImZpbGwiLCJjYWxjdWxhdGVQb2x5Z29uQXJlYSIsImNvb3JkaW5hdGVzIiwibnVtUG9pbnRzIiwiaSIsIngxIiwieTEiLCJ4MiIsInkyIiwiTWF0aCIsImFicyIsInBvbHlnb25UaXRsZSIsImNvbmNhdCIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJwcmltYXJ5IiwicHMxIiwiYmluZFRvb2xUaXAiLCJsYXllciIsInRpdGxlIiwicGVybWFuZW50IiwidW5iaW5kVG9vbHRpcCIsImJpbmRUb29sdGlwIiwiY2xhc3NOYW1lIiwidW5kZWZpbmVkIiwiZGlyZWN0aW9uIiwiYmluZFBvcHVwQmFzZWRPblpvb21MZXZlbCIsIkxheWVyR3JvdXAiLCJhcmd1bWVudHMiLCJnZXRMYXllcnMiLCJmb3JFYWNoIiwiZHJpbGxEb3duQmFzZWRPblpvb21MZXZlbCIsInBlcmNlbnRhZ2UiLCJ6b29tUGVyY2VudGFnZVRvRHJpbGxEb3duIiwiaXNQYXJ0aWFsUG9seWdvblZpc2libGUiLCJkcmlsbERvd25Db25kaXRpb24iLCJzdWJfYXJlYXMiLCJfbWFwIiwiaGlkZVBvbHlnb24iLCJicmluZ1RvQmFjayIsInNldFN0eWxlIiwic3Ryb2tlIiwic2hvd1BvbHlnb24iLCJicmluZ1RvRnJvbnQiLCJoYW5kbGVTdWJBcmVhcyIsInNob3ciLCJzdWJBcmVhSWQiLCJlYWNoTGF5ZXIiLCJnZXRab29tIiwiem9vbUNvbnRyb2xGb3JBcmVhIiwib24iLCJnZXRNYXBCb3VuZHMiLCJnZXRCb3VuZHMiLCJwb2x5Z29uQm91bmRzIiwiaW50ZXJzZWN0cyIsIm1hcEJvdW5kc1BvbHlnb24iLCJnZXRTb3V0aFdlc3QiLCJnZXROb3J0aFdlc3QiLCJnZXROb3J0aEVhc3QiLCJnZXRTb3V0aEVhc3QiLCJtYXBCb3VuZHMiLCJ0b0dlb0pTT04iLCJnZW9tZXRyeSIsImFyZWFTdXJmYWNlIiwiY3VzdG9tQXR0cmlidXRlc0ZvckFyZWFQb2x5Z29uIiwiYXJlYV9pZCIsImNhbGN1bGF0ZWRfc3VyZmFjZSIsImNyZWF0ZVBvbHlnb24iLCJwb3B1cENyZWF0b3IiLCJoYW5kbGVDbGljayIsInBhcmVudEFyZWFJZCIsIm9uQ2xpY2siLCJrYW5kb19vYmplY3RfaWQiLCJzdWJqZWN0Iiwic2VuZEFuYWx5dGljc0V2ZW50IiwiYWRkTGF5ZXIiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvV2lkZ2V0cy9NYXAvYXJlYXMvQXJlYVV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNjb3JlVG9Db2xvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxpdGllcy9zY29yZVRvRGF0YSc7XG5pbXBvcnQgeyB0aGVtZSB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy90aGVtZS90aGVtZSc7XG5pbXBvcnQgTCwgeyBQb2x5Z29uIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBzZW5kQW5hbHl0aWNzRXZlbnQgfSBmcm9tICdzcmMvcGFnZXMvRGFzaGJvYXJkTWFwL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IGdldEFyZWFOYW1lID0gKGFyZWEpID0+IHtcbiAgbGV0IG5hbWUgPSBhcmVhLmFyZWFfbmFtZSB8fCBhcmVhLm5hbWU7XG5cbiAgcmV0dXJuIG5hbWU7XG59O1xuXG5leHBvcnQgY29uc3QgZ2VuZXJpY1BvbHlnb24gPSAoYXJlYSwgbWFwWm9vbSkgPT4ge1xuICBsZXQgYXJlYVBvbHlnb246IFBvbHlnb247XG4gIGxldCBsYXRsbmdzID0gYXJlYS5zaGFwZV9kYXRhLm1hcCgobG9jYXRpb246IGFueSkgPT4ge1xuICAgIHJldHVybiBbbG9jYXRpb25bJ2xhdCddLCBsb2NhdGlvblsnbG5nJ11dO1xuICB9KTtcblxuICBpZiAobGF0bG5ncy5sZW5ndGggPCAxKSByZXR1cm47XG5cbiAgbGV0IGNvbG9yID0gYXJlYS5jb2xvciA/IGFyZWEuY29sb3IgOiBzY29yZVRvQ29sb3IoYXJlYS5hcmVhX3Njb3JlKTtcblxuICBhcmVhUG9seWdvbiA9IEwucG9seWdvbihsYXRsbmdzLCB7XG4gICAgY29sb3IsXG4gICAgZmlsbE9wYWNpdHk6IGFyZWEuc2hvd0NvbG9yT25seUluQm9yZGVycyA/IDAuMyA6IDAuNCxcbiAgICB3ZWlnaHQ6IGFyZWEuc2hvd0NvbG9yT25seUluQm9yZGVycyA/IDIgOiAwLFxuICAgIGZpbGw6IGZhbHNlLFxuICB9KTtcblxuICByZXR1cm4gYXJlYVBvbHlnb247XG59O1xuXG5leHBvcnQgY29uc3QgY2FsY3VsYXRlUG9seWdvbkFyZWEgPSAoY29vcmRpbmF0ZXMpID0+IHtcbiAgbGV0IGFyZWEgPSAwO1xuICBsZXQgbnVtUG9pbnRzID0gY29vcmRpbmF0ZXMubGVuZ3RoO1xuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgbnVtUG9pbnRzOyBpKyspIHtcbiAgICBsZXQgeDEgPSBjb29yZGluYXRlc1tpXVswXTtcbiAgICBsZXQgeTEgPSBjb29yZGluYXRlc1tpXVsxXTtcbiAgICBsZXQgeDIgPSBjb29yZGluYXRlc1soaSArIDEpICUgbnVtUG9pbnRzXVswXTtcbiAgICBsZXQgeTIgPSBjb29yZGluYXRlc1soaSArIDEpICUgbnVtUG9pbnRzXVsxXTtcblxuICAgIGFyZWEgKz0geDEgKiB5MiAtIHgyICogeTE7XG4gIH1cblxuICByZXR1cm4gTWF0aC5hYnMoYXJlYSAvIDIpO1xufTtcblxuY29uc3QgcG9seWdvblRpdGxlID0gKGFyZWEsIG1hcFpvb20pID0+IHtcbiAgcmV0dXJuIGA8ZGl2IGNsYXNzPVwiYXJlYS10b29sdGlwXCIgc3R5bGU9XCJjb2xvcjoke1xuICAgIHRoZW1lLmNvbG9yU2NoZW1lLnByaW1hcnkucHMxXG4gIH07Zm9udC13ZWlnaHQ6NzAwO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Zm9udC1zaXplOiAke1xuICAgIG1hcFpvb20gKiAxLjVcbiAgfXB4Oy13ZWJraXQtdGV4dC1zdHJva2U6IDAuOHB4ICNmZmZmZmY7XCI+ICR7Z2V0QXJlYU5hbWUoYXJlYSl9IFxuICAgICAgICA8L2Rpdj5gO1xufTtcblxuY29uc3QgYmluZFRvb2xUaXAgPSAobGF5ZXIsIHRpdGxlLCBwZXJtYW5lbnQsIG1hcFpvb20pID0+IHtcbiAgbGF5ZXIudW5iaW5kVG9vbHRpcCgpO1xuICBsYXllci5iaW5kVG9vbHRpcCh0aXRsZSwge1xuICAgIGNsYXNzTmFtZTogJ2FyZWEtdG9vbHRpcCcsXG4gICAgcGVybWFuZW50OiBwZXJtYW5lbnQgIT09IHVuZGVmaW5lZCA/IHBlcm1hbmVudCA6IG1hcFpvb20gPiAxMSxcbiAgICBkaXJlY3Rpb246ICdjZW50ZXInLFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBiaW5kUG9wdXBCYXNlZE9uWm9vbUxldmVsID0gKFxuICBMYXllckdyb3VwLFxuICBtYXBab29tLFxuICBhcmVhLFxuICBwZXJtYW5lbnQgPSB1bmRlZmluZWQsXG4pID0+IHtcbiAgY29uc3QgdGl0bGUgPSBwb2x5Z29uVGl0bGUoYXJlYSwgbWFwWm9vbSk7XG5cbiAgaWYgKExheWVyR3JvdXBbJ2thbmRvX29iamVjdCddID09PSB1bmRlZmluZWQpIHtcbiAgICBMYXllckdyb3VwLmdldExheWVycygpLmZvckVhY2goKGxheWVyKSA9PiB7XG4gICAgICBiaW5kVG9vbFRpcChsYXllciwgdGl0bGUsIHBlcm1hbmVudCwgbWFwWm9vbSk7XG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgYmluZFRvb2xUaXAoTGF5ZXJHcm91cCwgdGl0bGUsIHBlcm1hbmVudCwgbWFwWm9vbSk7XG4gIH1cbn07XG5cbmNvbnN0IGRyaWxsRG93bkJhc2VkT25ab29tTGV2ZWwgPSAoXG4gIGFyZWFQb2x5Z29uLFxuICBhcmVhLFxuICBwZXJjZW50YWdlLFxuICB6b29tUGVyY2VudGFnZVRvRHJpbGxEb3duLFxuICBpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSxcbiAgbWFwLFxuKSA9PiB7XG4gIGNvbnN0IGRyaWxsRG93bkNvbmRpdGlvbiA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgcGVyY2VudGFnZSA+PSB6b29tUGVyY2VudGFnZVRvRHJpbGxEb3duICYmXG4gICAgICBpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSAmJlxuICAgICAgYXJlYS5zdWJfYXJlYXMubGVuZ3RoICE9PSAwICYmXG4gICAgICBhcmVhUG9seWdvbi5fbWFwICE9PSBudWxsXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBoaWRlUG9seWdvbiA9IChwb2x5Z29uOiBQb2x5Z29uKSA9PiB7XG4gICAgcG9seWdvbi5icmluZ1RvQmFjaygpO1xuICAgIHBvbHlnb24udW5iaW5kVG9vbHRpcCgpO1xuICAgIHBvbHlnb25bJ2hpZGRlbiddID0gdHJ1ZTtcbiAgICBwb2x5Z29uLnNldFN0eWxlKHtcbiAgICAgIHN0cm9rZTogZmFsc2UsXG4gICAgICBmaWxsOiBmYWxzZSxcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBzaG93UG9seWdvbiA9IChwb2x5Z29uOiBQb2x5Z29uLCBmaWxsOiBib29sZWFuKSA9PiB7XG4gICAgcG9seWdvbi5icmluZ1RvRnJvbnQoKTtcbiAgICBwb2x5Z29uWydoaWRkZW4nXSA9IGZhbHNlO1xuICAgIHBvbHlnb24uc2V0U3R5bGUoe1xuICAgICAgc3Ryb2tlOiBmaWxsID8gZmFsc2UgOiB0cnVlLFxuICAgICAgd2VpZ2h0OiAyLFxuICAgICAgZmlsbDogZmlsbCxcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJBcmVhcyA9IChzaG93OiBib29sZWFuKSA9PiB7XG4gICAgaWYgKGFyZWFQb2x5Z29uWydzdWJfYXJlYXMnXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBhcmVhUG9seWdvblsnc3ViX2FyZWFzJ10uZm9yRWFjaCgoc3ViQXJlYUlkKSA9PiB7XG4gICAgICAgIG1hcC5lYWNoTGF5ZXIoKGxheWVyKSA9PiB7XG4gICAgICAgICAgaWYgKGxheWVyWydrYW5kb19vYmplY3RfaWQnXSA9PT0gc3ViQXJlYUlkKSB7XG4gICAgICAgICAgICBzaG93ID8gc2hvd1BvbHlnb24obGF5ZXIsIHRydWUpIDogaGlkZVBvbHlnb24obGF5ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgLy8gU2hvdyB0aGUgYXJlYSB3aXRoIGJvcmRlciBvbmx5XG4gIC8vIE9yIGJhY2tncm91bmQgY29sb3JcbiAgaWYgKGRyaWxsRG93bkNvbmRpdGlvbigpKSB7XG4gICAgc2hvd1BvbHlnb24oYXJlYVBvbHlnb24sIGZhbHNlKTtcbiAgICBhcmVhUG9seWdvbi51bmJpbmRUb29sdGlwKCk7XG4gICAgaGFuZGxlU3ViQXJlYXModHJ1ZSk7XG4gIH0gZWxzZSB7XG4gICAgaGFuZGxlU3ViQXJlYXMoZmFsc2UpO1xuXG4gICAgaWYgKCFhcmVhUG9seWdvblsnaGlkZGVuJ10pIHtcbiAgICAgIHNob3dQb2x5Z29uKGFyZWFQb2x5Z29uLCB0cnVlKTtcbiAgICAgIGJpbmRQb3B1cEJhc2VkT25ab29tTGV2ZWwoYXJlYVBvbHlnb24sIGFyZWFQb2x5Z29uLl9tYXAuZ2V0Wm9vbSgpLCBhcmVhKTtcbiAgICB9XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCB6b29tQ29udHJvbEZvckFyZWEgPSAoYXJlYVBvbHlnb24sIGFyZWEsIG1hcCkgPT4ge1xuICBtYXAub24oJ3pvb21lbmQnLCBmdW5jdGlvbiAoKSB7XG4gICAgbGV0IGdldE1hcEJvdW5kcyA9IG1hcC5nZXRCb3VuZHMoKTtcbiAgICBsZXQgcG9seWdvbkJvdW5kcyA9IGFyZWFQb2x5Z29uLmdldEJvdW5kcygpO1xuICAgIGxldCBpc1BhcnRpYWxQb2x5Z29uVmlzaWJsZSA9IGdldE1hcEJvdW5kcy5pbnRlcnNlY3RzKHBvbHlnb25Cb3VuZHMpO1xuICAgIGxldCBtYXBCb3VuZHNQb2x5Z29uID0gTC5wb2x5Z29uKFtcbiAgICAgIGdldE1hcEJvdW5kcy5nZXRTb3V0aFdlc3QoKSxcbiAgICAgIGdldE1hcEJvdW5kcy5nZXROb3J0aFdlc3QoKSxcbiAgICAgIGdldE1hcEJvdW5kcy5nZXROb3J0aEVhc3QoKSxcbiAgICAgIGdldE1hcEJvdW5kcy5nZXRTb3V0aEVhc3QoKSxcbiAgICBdKTtcblxuICAgIGxldCBtYXBCb3VuZHMgPSBjYWxjdWxhdGVQb2x5Z29uQXJlYShcbiAgICAgIG1hcEJvdW5kc1BvbHlnb24udG9HZW9KU09OKCkuZ2VvbWV0cnkuY29vcmRpbmF0ZXNbMF0sXG4gICAgKTtcblxuICAgIGxldCBhcmVhU3VyZmFjZSA9IGFyZWFQb2x5Z29uWydjYWxjdWxhdGVkX3N1cmZhY2UnXTtcbiAgICBjb25zdCB6b29tUGVyY2VudGFnZVRvRHJpbGxEb3duID0gMTUuMDtcbiAgICBjb25zdCBwZXJjZW50YWdlID0gKGFyZWFTdXJmYWNlIC8gbWFwQm91bmRzKSAqIDEwMDtcblxuICAgIGRyaWxsRG93bkJhc2VkT25ab29tTGV2ZWwoXG4gICAgICBhcmVhUG9seWdvbixcbiAgICAgIGFyZWEsXG4gICAgICBwZXJjZW50YWdlLFxuICAgICAgem9vbVBlcmNlbnRhZ2VUb0RyaWxsRG93bixcbiAgICAgIGlzUGFydGlhbFBvbHlnb25WaXNpYmxlLFxuICAgICAgbWFwLFxuICAgICk7XG4gIH0pO1xufTtcblxuY29uc3QgY3VzdG9tQXR0cmlidXRlc0ZvckFyZWFQb2x5Z29uID0gKGFyZWFQb2x5Z29uLCBhcmVhKSA9PiB7XG4gIGFyZWFQb2x5Z29uWydrYW5kb19vYmplY3RfaWQnXSA9IGFyZWEuYXJlYV9pZDtcbiAgYXJlYVBvbHlnb25bJ2thbmRvX29iamVjdCddID0gJ0FyZWEnO1xuICBhcmVhUG9seWdvblsnYXJlYV9uYW1lJ10gPSBhcmVhLmFyZWFfbmFtZTtcbiAgYXJlYVBvbHlnb25bJ2NhbGN1bGF0ZWRfc3VyZmFjZSddID0gYXJlYS5jYWxjdWxhdGVkX3N1cmZhY2U7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlUG9seWdvbiA9IChcbiAgYXJlYSxcbiAgbWFwWm9vbSxcbiAgTGF5ZXJHcm91cCxcbiAgbWFwLFxuICBwb3B1cENyZWF0b3I/OiAocG9seWdvbiwgYXJlYSkgPT4gdm9pZCxcbiAgaGFuZGxlQ2xpY2s/LFxuICBwYXJlbnRBcmVhSWQ/LFxuKSA9PiB7XG4gIGxldCBwb2x5Z29uOiBQb2x5Z29uO1xuICBpZiAoXG4gICAgYXJlYS5zaGFwZV9kYXRhICE9PSBudWxsICYmXG4gICAgYXJlYS5zaGFwZV9kYXRhICE9PSB1bmRlZmluZWQgJiZcbiAgICBhcmVhLnNoYXBlX2RhdGEubGVuZ3RoID4gMFxuICApIHtcbiAgICBwb2x5Z29uID0gZ2VuZXJpY1BvbHlnb24oYXJlYSwgbWFwWm9vbSwgcGFyZW50QXJlYUlkKTtcblxuICAgIGlmIChoYW5kbGVDbGljayAhPT0gdW5kZWZpbmVkICYmIGhhbmRsZUNsaWNrICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBvbkNsaWNrID0gKCkgPT4ge1xuICAgICAgICBwb2x5Z29uLm9uKCdjbGljaycsICgpID0+IHtcbiAgICAgICAgICBoYW5kbGVDbGljayhwb2x5Z29uLmthbmRvX29iamVjdF9pZCk7XG5cbiAgICAgICAgICBjb25zdCBzdWJqZWN0ID0gJ01hcCBWaWV3IC0gQXJlYSBjbGlja2VkJztcbiAgICAgICAgICBzZW5kQW5hbHl0aWNzRXZlbnQoc3ViamVjdCwgJ21hcCcsIHtcbiAgICAgICAgICAgIGFyZWFfaWQ6IGFyZWEuYXJlYV9pZCxcbiAgICAgICAgICAgIGFyZWFfbmFtZTogYXJlYS5hcmVhX25hbWUsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICAgIG9uQ2xpY2soKTtcbiAgICB9XG4gICAgY3VzdG9tQXR0cmlidXRlc0ZvckFyZWFQb2x5Z29uKHBvbHlnb24sIGFyZWEpO1xuICAgIG1hcC5hZGRMYXllcihwb2x5Z29uKTtcbiAgICBwb3B1cENyZWF0b3IocG9seWdvbiwgYXJlYSk7XG4gICAgem9vbUNvbnRyb2xGb3JBcmVhKHBvbHlnb24sIGFyZWEsIG1hcCk7XG4gICAgcmV0dXJuIHBvbHlnb247XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsWUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsUUFBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBRU8sTUFBTUssV0FBVyxHQUFJQyxJQUFJLElBQUs7RUFDbkMsSUFBSUMsSUFBSSxHQUFHRCxJQUFJLENBQUNFLFNBQVMsSUFBSUYsSUFBSSxDQUFDQyxJQUFJO0VBRXRDLE9BQU9BLElBQUk7QUFDYixDQUFDO0FBQUNFLE9BQUEsQ0FBQUosV0FBQSxHQUFBQSxXQUFBO0FBRUssTUFBTUssY0FBYyxHQUFHQSxDQUFDSixJQUFJLEVBQUVLLE9BQU8sS0FBSztFQUMvQyxJQUFJQyxXQUFvQjtFQUN4QixJQUFJQyxPQUFPLEdBQUdQLElBQUksQ0FBQ1EsVUFBVSxDQUFDQyxHQUFHLENBQUVDLFFBQWEsSUFBSztJQUNuRCxPQUFPLENBQUNBLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRUEsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0VBQzNDLENBQUMsQ0FBQztFQUVGLElBQUlILE9BQU8sQ0FBQ0ksTUFBTSxHQUFHLENBQUMsRUFBRTtFQUV4QixJQUFJQyxLQUFLLEdBQUdaLElBQUksQ0FBQ1ksS0FBSyxHQUFHWixJQUFJLENBQUNZLEtBQUssR0FBRyxJQUFBQyx5QkFBWSxFQUFDYixJQUFJLENBQUNjLFVB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
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _typeof = require("@babel/runtime/helpers/typeof");
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
@@ -10,39 +10,31 @@ var _react = _interopRequireWildcard(require("react"));
10
10
  var _reactRedux = require("react-redux");
11
11
  require("./Edge.scss");
12
12
  var _actions = require("../../../store/events/actions");
13
- 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); }
14
- 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; }
15
- var Edge = function Edge(_ref) {
16
- var L = _ref.L,
17
- map = _ref.map,
18
- edge = _ref.edge,
19
- points = _ref.points,
20
- _ref$hideEdges = _ref.hideEdges,
21
- hideEdges = _ref$hideEdges === void 0 ? false : _ref$hideEdges,
22
- _ref$allowUnmonitored = _ref.allowUnmonitoredDescendants,
23
- allowUnmonitoredDescendants = _ref$allowUnmonitored === void 0 ? false : _ref$allowUnmonitored,
24
- specificEvent = _ref.specificEvent;
25
- var dispatch = (0, _reactRedux.useDispatch)();
26
- var shapeDataExist = function shapeDataExist() {
27
- return Object.keys(edge.shape_data).length !== 0 && edge.shape_data.find(function (data) {
28
- return data.lat === null || data.lng === null;
29
- }) === undefined;
13
+ const Edge = _ref => {
14
+ let {
15
+ L,
16
+ map,
17
+ edge,
18
+ points,
19
+ hideEdges = false,
20
+ allowUnmonitoredDescendants = false,
21
+ specificEvent
22
+ } = _ref;
23
+ const dispatch = (0, _reactRedux.useDispatch)();
24
+ const shapeDataExist = () => {
25
+ return Object.keys(edge.shape_data).length !== 0 && edge.shape_data.find(data => data.lat === null || data.lng === null) === undefined;
30
26
  };
31
- (0, _react.useEffect)(function () {
27
+ (0, _react.useEffect)(() => {
32
28
  if (shapeDataExist()) {
33
- var latlngs = [];
34
- edge.shape_data.forEach(function (data) {
29
+ let latlngs = [];
30
+ edge.shape_data.forEach(data => {
35
31
  latlngs.push([data.lat, data.lng]);
36
32
  });
37
- var sourcePoint = points.filter(function (point) {
38
- return point.id === edge.source_point_id;
39
- });
40
- var targetPoint = points.filter(function (point) {
41
- return point.id === edge.target_point_id;
42
- });
33
+ let sourcePoint = points.filter(point => point.id === edge.source_point_id);
34
+ let targetPoint = points.filter(point => point.id === edge.target_point_id);
43
35
  if (points.length === 0) return;
44
36
  if (sourcePoint[0] === undefined || targetPoint[0] === undefined) return;
45
- var polylineBack = L.polyline(latlngs, {
37
+ let polylineBack = L.polyline(latlngs, {
46
38
  color: 'rgb(227,227,227)',
47
39
  weight: 6,
48
40
  opacity: hideEdges ? 0 : 1
@@ -51,7 +43,7 @@ var Edge = function Edge(_ref) {
51
43
  polylineBack['kando_object_id'] = edge.id;
52
44
  polylineBack['kando_object'] = 'Edge';
53
45
  polylineBack.bringToFront();
54
- var polylineFront = L.polyline(latlngs, {
46
+ let polylineFront = L.polyline(latlngs, {
55
47
  color: 'rgb(29,29,29)',
56
48
  weight: hideEdges ? 0 : 1,
57
49
  opacity: hideEdges ? 0 : 1
@@ -66,7 +58,6 @@ var Edge = function Edge(_ref) {
66
58
  }, [edge, specificEvent]);
67
59
  return /*#__PURE__*/_react.default.createElement("div", null);
68
60
  };
69
- var connector = (0, _reactRedux.connect)(null);
70
- var _default = connector(Edge);
71
- exports.default = _default;
72
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfcmVhY3RSZWR1eCIsIl9hY3Rpb25zIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJFZGdlIiwiX3JlZiIsIkwiLCJtYXAiLCJlZGdlIiwicG9pbnRzIiwiX3JlZiRoaWRlRWRnZXMiLCJoaWRlRWRnZXMiLCJfcmVmJGFsbG93VW5tb25pdG9yZWQiLCJhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHMiLCJzcGVjaWZpY0V2ZW50IiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsInNoYXBlRGF0YUV4aXN0Iiwia2V5cyIsInNoYXBlX2RhdGEiLCJsZW5ndGgiLCJmaW5kIiwiZGF0YSIsImxhdCIsImxuZyIsInVuZGVmaW5lZCIsInVzZUVmZmVjdCIsImxhdGxuZ3MiLCJmb3JFYWNoIiwicHVzaCIsInNvdXJjZVBvaW50IiwiZmlsdGVyIiwicG9pbnQiLCJpZCIsInNvdXJjZV9wb2ludF9pZCIsInRhcmdldFBvaW50IiwidGFyZ2V0X3BvaW50X2lkIiwicG9seWxpbmVCYWNrIiwicG9seWxpbmUiLCJjb2xvciIsIndlaWdodCIsIm9wYWNpdHkiLCJhZGRUbyIsImJpbmRQb3B1cCIsImNvbmNhdCIsImdyb3VwIiwibmFtZSIsImRpc3RhbmNlIiwiYnJpbmdUb0Zyb250IiwicG9seWxpbmVGcm9udCIsInNldEhvdmVyZWRFZGdlUGF0aHMiLCJjcmVhdGVFbGVtZW50IiwiY29ubmVjdG9yIiwiY29ubmVjdCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9lZGdlcy9FZGdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3NyYy91dGlsaXRpZXMvcG9seWxpbmVkZWNvcmF0b3InO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNvbm5lY3QsIENvbm5lY3RlZFByb3BzLCB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IElFZGdlIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL21vZGVscy9JRWRnZSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0ICcuL0VkZ2Uuc2Nzcyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzZXRIb3ZlcmVkRWRnZVBhdGhzIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xudHlwZSBQcm9wcyA9IENvbm5lY3RlZFByb3BzPHR5cGVvZiBjb25uZWN0b3I+ICYge1xuICBtYXA6IGFueTtcbiAgTDogYW55O1xuICBlZGdlOiBJRWRnZTtcbiAgcG9pbnRzOiBhbnk7XG4gIGhpZGVFZGdlcz86IGJvb2xlYW47XG4gIHNwZWNpZmljRXZlbnQ/OiBJRXZlbnQ7XG4gIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cz86IGJvb2xlYW47XG59O1xuXG5jb25zdCBFZGdlOiBSZWFjdC5GQzxQcm9wcz4gPSAoe1xuICBMLFxuICBtYXAsXG4gIGVkZ2UsXG4gIHBvaW50cyxcbiAgaGlkZUVkZ2VzID0gZmFsc2UsXG4gIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cyA9IGZhbHNlLFxuICBzcGVjaWZpY0V2ZW50LFxufSkgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHNoYXBlRGF0YUV4aXN0ID0gKCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICBPYmplY3Qua2V5cyhlZGdlLnNoYXBlX2RhdGEpLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgZWRnZS5zaGFwZV9kYXRhLmZpbmQoXG4gICAgICAgIChkYXRhOiBhbnkpID0+IGRhdGEubGF0ID09PSBudWxsIHx8IGRhdGEubG5nID09PSBudWxsLFxuICAgICAgKSA9PT0gdW5kZWZpbmVkXG4gICAgKTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChzaGFwZURhdGFFeGlzdCgpKSB7XG4gICAgICBsZXQgbGF0bG5nczogYW55ID0gW107XG4gICAgICBlZGdlLnNoYXBlX2RhdGEuZm9yRWFjaCgoZGF0YTogYW55KSA9PiB7XG4gICAgICAgIGxhdGxuZ3MucHVzaChbZGF0YS5sYXQsIGRhdGEubG5nXSk7XG4gICAgICB9KTtcblxuICAgICAgbGV0IHNvdXJjZVBvaW50ID0gcG9pbnRzLmZpbHRlcihcbiAgICAgICAgKHBvaW50OiBJUG9pbnQpID0+IHBvaW50LmlkID09PSBlZGdlLnNvdXJjZV9wb2ludF9pZCxcbiAgICAgICk7XG4gICAgICBsZXQgdGFyZ2V0UG9pbnQgPSBwb2ludHMuZmlsdGVyKFxuICAgICAgICAocG9pbnQ6IElQb2ludCkgPT4gcG9pbnQuaWQgPT09IGVkZ2UudGFyZ2V0X3BvaW50X2lkLFxuICAgICAgKTtcblxuICAgICAgaWYgKHBvaW50cy5sZW5ndGggPT09IDApIHJldHVybjtcbiAgICAgIGlmIChzb3VyY2VQb2ludFswXSA9PT0gdW5kZWZpbmVkIHx8IHRhcmdldFBvaW50WzBdID09PSB1bmRlZmluZWQpIHJldHVybjtcblxuICAgICAgbGV0IHBvbHlsaW5lQmFjazogYW55ID0gTC5wb2x5bGluZShsYXRsbmdzLCB7XG4gICAgICAgIGNvbG9yOiAncmdiKDIyNywyMjcsMjI3KScsXG4gICAgICAgIHdlaWdodDogNixcbiAgICAgICAgb3BhY2l0eTogaGlkZUVkZ2VzID8gMCA6IDEsXG4gICAgICB9KS5hZGRUbyhtYXApO1xuXG4gICAgICBwb2x5bGluZUJhY2suYmluZFBvcHVwKGBFZGdlIElEOiAke2VkZ2UuaWR9LDxicj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb3VyY2UgcG9pbnQ6ICR7c291cmNlUG9pbnRbMF0uZ3JvdXAubmFtZX0sPGJyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRhcmdldCBwb2ludDogJHt0YXJnZXRQb2ludFswXS5ncm91cC5uYW1lfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEaXN0YW5jZTogJHtlZGdlLmRpc3RhbmNlfWApO1xuXG4gICAgICBwb2x5bGluZUJhY2tbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lQmFja1sna2FuZG9fb2JqZWN0J10gPSAnRWRnZSc7XG5cbiAgICAgIHBvbHlsaW5lQmFjay5icmluZ1RvRnJvbnQoKTtcblxuICAgICAgbGV0IHBvbHlsaW5lRnJvbnQ6IGFueSA9IEwucG9seWxpbmUobGF0bG5ncywge1xuICAgICAgICBjb2xvcjogJ3JnYigyOSwyOSwyOSknLFxuICAgICAgICB3ZWlnaHQ6IGhpZGVFZGdlcyA/IDAgOiAxLFxuICAgICAgICBvcGFjaXR5OiBoaWRlRWRnZXMgPyAwIDogMSxcbiAgICAgIH0pLmFkZFRvKG1hcCk7XG5cbiAgICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdCddID0gJ0VkZ2VGcm9udCc7XG5cbiAgICAgIHBvbHlsaW5lRnJvbnQuYnJpbmdUb0Zyb250KCk7XG4gICAgICBpZiAoc3BlY2lmaWNFdmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW3BvbHlsaW5lQmFjaywgcG9seWxpbmVGcm9udF0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtlZGdlLCBzcGVjaWZpY0V2ZW50XSk7XG5cbiAgcmV0dXJuIDxkaXY+PC9kaXY+O1xufTtcblxuY29uc3QgY29ubmVjdG9yID0gY29ubmVjdChudWxsKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihFZGdlKTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBQSxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBSCxPQUFBO0FBR0FBLE9BQUE7QUFFQSxJQUFBSSxRQUFBLEdBQUFKLE9BQUE7QUFBb0UsU0FBQUsseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFKLHdCQUFBUSxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFMLEdBQUEsWUFBQUksS0FBQSxDQUFBRSxHQUFBLENBQUFOLEdBQUEsU0FBQU8sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFaLEdBQUEsUUFBQVksR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxT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
61
+ const connector = (0, _reactRedux.connect)(null);
62
+ var _default = exports.default = connector(Edge);
63
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfcmVhY3RSZWR1eCIsIl9hY3Rpb25zIiwiRWRnZSIsIl9yZWYiLCJMIiwibWFwIiwiZWRnZSIsInBvaW50cyIsImhpZGVFZGdlcyIsImFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cyIsInNwZWNpZmljRXZlbnQiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwic2hhcGVEYXRhRXhpc3QiLCJPYmplY3QiLCJrZXlzIiwic2hhcGVfZGF0YSIsImxlbmd0aCIsImZpbmQiLCJkYXRhIiwibGF0IiwibG5nIiwidW5kZWZpbmVkIiwidXNlRWZmZWN0IiwibGF0bG5ncyIsImZvckVhY2giLCJwdXNoIiwic291cmNlUG9pbnQiLCJmaWx0ZXIiLCJwb2ludCIsImlkIiwic291cmNlX3BvaW50X2lkIiwidGFyZ2V0UG9pbnQiLCJ0YXJnZXRfcG9pbnRfaWQiLCJwb2x5bGluZUJhY2siLCJwb2x5bGluZSIsImNvbG9yIiwid2VpZ2h0Iiwib3BhY2l0eSIsImFkZFRvIiwiYmluZFBvcHVwIiwiY29uY2F0IiwiZ3JvdXAiLCJuYW1lIiwiZGlzdGFuY2UiLCJicmluZ1RvRnJvbnQiLCJwb2x5bGluZUZyb250Iiwic2V0SG92ZXJlZEVkZ2VQYXRocyIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiY29ubmVjdG9yIiwiY29ubmVjdCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9lZGdlcy9FZGdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3NyYy91dGlsaXRpZXMvcG9seWxpbmVkZWNvcmF0b3InO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNvbm5lY3QsIENvbm5lY3RlZFByb3BzLCB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IElFZGdlIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL21vZGVscy9JRWRnZSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0ICcuL0VkZ2Uuc2Nzcyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzZXRIb3ZlcmVkRWRnZVBhdGhzIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xudHlwZSBQcm9wcyA9IENvbm5lY3RlZFByb3BzPHR5cGVvZiBjb25uZWN0b3I+ICYge1xuICBtYXA6IGFueTtcbiAgTDogYW55O1xuICBlZGdlOiBJRWRnZTtcbiAgcG9pbnRzOiBhbnk7XG4gIGhpZGVFZGdlcz86IGJvb2xlYW47XG4gIHNwZWNpZmljRXZlbnQ/OiBJRXZlbnQ7XG4gIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cz86IGJvb2xlYW47XG59O1xuXG5jb25zdCBFZGdlOiBSZWFjdC5GQzxQcm9wcz4gPSAoe1xuICBMLFxuICBtYXAsXG4gIGVkZ2UsXG4gIHBvaW50cyxcbiAgaGlkZUVkZ2VzID0gZmFsc2UsXG4gIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cyA9IGZhbHNlLFxuICBzcGVjaWZpY0V2ZW50LFxufSkgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHNoYXBlRGF0YUV4aXN0ID0gKCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICBPYmplY3Qua2V5cyhlZGdlLnNoYXBlX2RhdGEpLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgZWRnZS5zaGFwZV9kYXRhLmZpbmQoXG4gICAgICAgIChkYXRhOiBhbnkpID0+IGRhdGEubGF0ID09PSBudWxsIHx8IGRhdGEubG5nID09PSBudWxsLFxuICAgICAgKSA9PT0gdW5kZWZpbmVkXG4gICAgKTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChzaGFwZURhdGFFeGlzdCgpKSB7XG4gICAgICBsZXQgbGF0bG5nczogYW55ID0gW107XG4gICAgICBlZGdlLnNoYXBlX2RhdGEuZm9yRWFjaCgoZGF0YTogYW55KSA9PiB7XG4gICAgICAgIGxhdGxuZ3MucHVzaChbZGF0YS5sYXQsIGRhdGEubG5nXSk7XG4gICAgICB9KTtcblxuICAgICAgbGV0IHNvdXJjZVBvaW50ID0gcG9pbnRzLmZpbHRlcihcbiAgICAgICAgKHBvaW50OiBJUG9pbnQpID0+IHBvaW50LmlkID09PSBlZGdlLnNvdXJjZV9wb2ludF9pZCxcbiAgICAgICk7XG4gICAgICBsZXQgdGFyZ2V0UG9pbnQgPSBwb2ludHMuZmlsdGVyKFxuICAgICAgICAocG9pbnQ6IElQb2ludCkgPT4gcG9pbnQuaWQgPT09IGVkZ2UudGFyZ2V0X3BvaW50X2lkLFxuICAgICAgKTtcblxuICAgICAgaWYgKHBvaW50cy5sZW5ndGggPT09IDApIHJldHVybjtcbiAgICAgIGlmIChzb3VyY2VQb2ludFswXSA9PT0gdW5kZWZpbmVkIHx8IHRhcmdldFBvaW50WzBdID09PSB1bmRlZmluZWQpIHJldHVybjtcblxuICAgICAgbGV0IHBvbHlsaW5lQmFjazogYW55ID0gTC5wb2x5bGluZShsYXRsbmdzLCB7XG4gICAgICAgIGNvbG9yOiAncmdiKDIyNywyMjcsMjI3KScsXG4gICAgICAgIHdlaWdodDogNixcbiAgICAgICAgb3BhY2l0eTogaGlkZUVkZ2VzID8gMCA6IDEsXG4gICAgICB9KS5hZGRUbyhtYXApO1xuXG4gICAgICBwb2x5bGluZUJhY2suYmluZFBvcHVwKGBFZGdlIElEOiAke2VkZ2UuaWR9LDxicj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb3VyY2UgcG9pbnQ6ICR7c291cmNlUG9pbnRbMF0uZ3JvdXAubmFtZX0sPGJyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRhcmdldCBwb2ludDogJHt0YXJnZXRQb2ludFswXS5ncm91cC5uYW1lfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEaXN0YW5jZTogJHtlZGdlLmRpc3RhbmNlfWApO1xuXG4gICAgICBwb2x5bGluZUJhY2tbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lQmFja1sna2FuZG9fb2JqZWN0J10gPSAnRWRnZSc7XG5cbiAgICAgIHBvbHlsaW5lQmFjay5icmluZ1RvRnJvbnQoKTtcblxuICAgICAgbGV0IHBvbHlsaW5lRnJvbnQ6IGFueSA9IEwucG9seWxpbmUobGF0bG5ncywge1xuICAgICAgICBjb2xvcjogJ3JnYigyOSwyOSwyOSknLFxuICAgICAgICB3ZWlnaHQ6IGhpZGVFZGdlcyA/IDAgOiAxLFxuICAgICAgICBvcGFjaXR5OiBoaWRlRWRnZXMgPyAwIDogMSxcbiAgICAgIH0pLmFkZFRvKG1hcCk7XG5cbiAgICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdCddID0gJ0VkZ2VGcm9udCc7XG5cbiAgICAgIHBvbHlsaW5lRnJvbnQuYnJpbmdUb0Zyb250KCk7XG4gICAgICBpZiAoc3BlY2lmaWNFdmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW3BvbHlsaW5lQmFjaywgcG9seWxpbmVGcm9udF0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtlZGdlLCBzcGVjaWZpY0V2ZW50XSk7XG5cbiAgcmV0dXJuIDxkaXY+PC9kaXY+O1xufTtcblxuY29uc3QgY29ubmVjdG9yID0gY29ubmVjdChudWxsKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihFZGdlKTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBQSxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBSCxPQUFBO0FBR0FBLE9BQUE7QUFFQSxJQUFBSSxRQUFBLEdBQUFKLE9BQUE7QUFXQSxNQUFNSyxJQUFxQixHQUFHQyxJQUFBLElBUXhCO0VBQUEsSUFSeUI7SUFDN0JDLENBQUM7SUFDREMsR0FBRztJQUNIQyxJQUFJO0lBQ0pDLE1BQU07SUFDTkMsU0FBUyxHQUFHLEtBQUs7SUFDakJDLDJCQUEyQixHQUFHLEtBQUs7SUFDbkNDO0VBQ0YsQ0FBQyxHQUFBUCxJQUFBO0VBQ0MsTUFBTVEsUUFBUSxHQUFHLElBQUFDLHVCQUFXLEVBQUMsQ0FBQztFQUM5QixNQUFNQyxjQUFjLEdBQUdBLENBQUEsS0FBTTtJQUMzQixPQUNFQyxNQUFNLENBQUNDLElBQUksQ0FBQ1QsSUFBSSxDQUFDVSxVQUFVLENBQUMsQ0FBQ0MsTUFBTSxLQUFLLENBQUMsSUFDekNYLElBQUksQ0FBQ1UsVUFBVSxDQUFDRSxJQUFJLENBQ2pCQyxJQUFTLElBQUtBLElBQUksQ0FBQ0MsR0FBRyxLQUFLLElBQUksSUFBSUQsSUFBSSxDQUFDRSxHQUFHLEtBQUssSUFDbkQsQ0FBQyxLQUFLQyxTQUFTO0VBRW5CLENBQUM7RUFFRCxJQUFBQyxnQkFBUyxFQUFDLE1BQU07SUFDZCxJQUFJVixjQUFjLENBQUMsQ0FBQyxFQUFFO01BQ3BCLElBQUlXLE9BQVksR0FBRyxFQUFFO01BQ3JCbEIsSUFBSSxDQUFDVSxVQUFVLENBQUNTLE9BQU8sQ0FBRU4sSUFBUyxJQUFLO1FBQ3JDSyxPQUFPLENBQUNFLElBQUksQ0FBQyxDQUFDUCxJQUFJLENBQUNDLEdBQUcsRUFBRUQsSUFBSSxDQUFDRSxHQUFHLENBQUMsQ0FBQztNQUNwQyxDQUFDLENBQUM7TUFFRixJQUFJTSxXQUFXLEdBQUdwQixNQUFNLENBQUNxQixNQUFNLENBQzVCQyxLQUFhLElBQUtBLEtBQUssQ0FBQ0MsRUFBRSxLQUFLeEIsSUFBSSxDQUFDeUIsZUFDdkMsQ0FBQztNQUNELElBQUlDLFdBQVcsR0FBR3pCLE1BQU0sQ0FBQ3FCLE1BQU0sQ0FDNUJDLEtBQWEsSUFBS0EsS0FBSyxDQUFDQyxFQUFFLEtBQUt4QixJQUFJLENBQUMyQixlQUN2QyxDQUFDO01BRUQsSUFBSTFCLE1BQU0sQ0FBQ1UsTUFBTSxLQUFLLENBQUMsRUFBRTtNQUN6QixJQUFJVSxXQUFXLENBQUMsQ0FBQyxDQUFDLEtBQUtMLFNBQVMsSUFBSVUsV0FBVyxDQUFDLENBQUMsQ0FBQyxLQUFLVixTQUFTLEVBQUU7TUFFbEUsSUFBSVksWUFBaUIsR0FBRzlCLENBQUMsQ0FBQytCLFFBQVEsQ0FBQ1gsT0FBTyxFQUFFO1FBQzFDWSxLQUFLLEVBQUUsa0JBQWtCO1FBQ3pCQyxNQUFNLEVBQUUsQ0FBQztRQUNUQyxPQUFPLEVBQUU5QixTQUFTLEdBQUcsQ0FBQyxHQUFHO01BQzNCLENBQUMsQ0FBQyxDQUFDK0IsS0FBSyxDQUFDbEMsR0FBRyxDQUFDO01BRWI2QixZQUFZLENBQUNNLFNBQVMsYUFBQUMsTUFBQSxDQUFhbkMsSUFBSSxDQUFDd0IsRUFBRSw2REFBQVcsTUFBQSxDQUNFZCxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUNlLEtBQUssQ0FBQ0MsSUFBSSw2REFBQUYsTUFBQSxDQUN6QlQsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDVSxLQUFLLENBQUNDLElBQUkscURBQUFGLE1BQUEsQ0FDN0JuQyxJQUFJLENBQUNzQyxRQUFRLENBQUUsQ0FBQztNQUV4RFYsWUFBWSxDQUFDLGlCQUFpQixDQUFDLEdBQUc1QixJQUFJLENBQUN3QixFQUFFO01BQ3pDSSxZQUFZLENBQUMsY0FBYyxDQUFDLEdBQUcsTUFBTTtNQUVyQ0EsWUFBWSxDQUFDVyxZQUFZLENBQUMsQ0FBQztNQUUzQixJQUFJQyxhQUFrQixHQUFHMUMsQ0FBQyxDQUFDK0IsUUFBUSxDQUFDWCxPQUFPLEVBQUU7UUFDM0NZLEtBQUssRUFBRSxlQUFlO1FBQ3RCQyxNQUFNLEVBQUU3QixTQUFTLEdBQUcsQ0FBQyxHQUFHLENBQUM7UUFDekI4QixPQUFPLEVBQUU5QixTQUFTLEdBQUcsQ0FBQyxHQUFHO01BQzNCLENBQUMsQ0FBQyxDQUFDK0IsS0FBSyxDQUFDbEMsR0FBRyxDQUFDO01BRWJ5QyxhQUFhLENBQUMsaUJBQWlCLENBQUMsR0FBR3hDLElBQUksQ0FBQ3dCLEVBQUU7TUFDMUNnQixhQUFhLENBQUMsY0FBYyxDQUFDLEdBQUcsV0FBVztNQUUzQ0EsYUFBYSxDQUFDRCxZQUFZLENBQUMsQ0FBQztNQUM1QixJQUFJbkMsYUFBYSxLQUFLWSxTQUFTLEVBQUU7UUFDL0JYLFFBQVEsQ0FBQyxJQUFBb0MsNEJBQW1CLEVBQUMsQ0FBQ2IsWUFBWSxFQUFFWSxhQUFhLENBQUMsQ0FBQyxDQUFDO01BQzlEO0lBQ0Y7RUFDRixDQUFDLEVBQUUsQ0FBQ3hDLElBQUksRUFBRUksYUFBYSxDQUFDLENBQUM7RUFFekIsb0JBQU9aLE1BQUEsQ0FBQWtELE9BQUEsQ0FBQUMsYUFBQSxZQUFVLENBQUM7QUFDcEIsQ0FBQztBQUVELE1BQU1DLFNBQVMsR0FBRyxJQUFBQyxtQkFBTyxFQUFDLElBQUksQ0FBQztBQUFDLElBQUFDLFFBQUEsR0FBQUMsT0FBQSxDQUFBTCxPQUFBLEdBQ2pCRSxTQUFTLENBQUNoRCxJQUFJLENBQUMifQ==