@kando-env/kando-ui 1.2.376 → 1.2.378

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 (586) hide show
  1. package/lib/Router.js +73 -36
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +35 -25
  3. package/lib/Widgets/EventsRow/EventsRow.js +39 -27
  4. package/lib/Widgets/Map/GraphUtils.js +3 -3
  5. package/lib/Widgets/Map/Map.js +94 -72
  6. package/lib/Widgets/Map/MapUtils.js +61 -64
  7. package/lib/Widgets/Map/areas/AreaPolygon.js +77 -53
  8. package/lib/Widgets/Map/areas/AreaPolygons.js +24 -23
  9. package/lib/Widgets/Map/areas/AreaUtils.js +46 -47
  10. package/lib/Widgets/Map/areas/Patterns.js +4 -4
  11. package/lib/Widgets/Map/edges/Edge.js +35 -31
  12. package/lib/Widgets/Map/edges/Edges.js +23 -19
  13. package/lib/Widgets/Map/edges/arrows/Arrows.js +44 -23
  14. package/lib/Widgets/Map/events/Event.js +17 -17
  15. package/lib/Widgets/Map/events/EventIndicator.js +60 -65
  16. package/lib/Widgets/Map/events/EventPath.js +22 -24
  17. package/lib/Widgets/Map/events/EventUtils.js +80 -60
  18. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +18 -17
  19. package/lib/Widgets/Map/events/PointOfEvent.js +34 -29
  20. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +37 -30
  21. package/lib/Widgets/Map/events/Snail.js +20 -19
  22. package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +86 -93
  23. package/lib/Widgets/Map/map/FloatingGraph.js +18 -22
  24. package/lib/Widgets/Map/map/GraphDateButton.js +17 -25
  25. package/lib/Widgets/Map/matchGraph/MatchGraph.js +12 -13
  26. package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +15 -16
  27. package/lib/Widgets/Map/points/PointIcon.js +15 -22
  28. package/lib/Widgets/Map/points/PointMarker.js +87 -71
  29. package/lib/Widgets/Map/points/PointMarkers.js +66 -45
  30. package/lib/Widgets/Map/points/PointUtils.js +83 -145
  31. package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +48 -30
  32. package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +10 -29
  33. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +12 -11
  34. package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +3 -3
  35. package/lib/Widgets/MostPolluting/Areas/Areas.js +60 -31
  36. package/lib/Widgets/MostPolluting/Areas/areas.mock.js +3 -3
  37. package/lib/Widgets/MostPolluting/Areas/styles.js +3 -3
  38. package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +8 -11
  39. package/lib/Widgets/MostPolluting/Factories/Factories.js +70 -39
  40. package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +18 -15
  41. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +8 -8
  42. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +10 -12
  43. package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +3 -3
  44. package/lib/Widgets/MostPolluting/Factories/factories.mock.js +2 -2
  45. package/lib/Widgets/MostPolluting/Factories/styles.js +3 -3
  46. package/lib/Widgets/MostPolluting/MostPolluting.js +42 -23
  47. package/lib/Widgets/MostPolluting/MostPolluting.stories.js +22 -18
  48. package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +4 -6
  49. package/lib/Widgets/MostPolluting/ShowMore/styles.js +4 -6
  50. package/lib/Widgets/MostPolluting/assets/index.js +10 -10
  51. package/lib/Widgets/MostPolluting/components/ChangePercent.js +13 -19
  52. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +30 -35
  53. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +35 -45
  54. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +35 -39
  55. package/lib/Widgets/MostPolluting/components/PotentialImpact.js +27 -28
  56. package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +50 -54
  57. package/lib/Widgets/MostPolluting/styles.js +3 -3
  58. package/lib/Widgets/PotentialImpactSummary/Back/Back.js +5 -7
  59. package/lib/Widgets/PotentialImpactSummary/Icon.js +6 -8
  60. package/lib/Widgets/PotentialImpactSummary/index.js +27 -19
  61. package/lib/Widgets/PotentialImpactSummary/index.test.js +52 -47
  62. package/lib/Widgets/PotentialImpactSummary/styles.js +7 -7
  63. package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +7 -9
  64. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +17 -22
  65. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +32 -35
  66. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +24 -26
  67. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +37 -35
  68. package/lib/Widgets/QualitySummary/QualitySummary.js +13 -9
  69. package/lib/Widgets/QualitySummary/qualitySummary.mock.js +4 -4
  70. package/lib/Widgets/QualitySummary/styles.js +15 -23
  71. package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +13 -12
  72. package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +26 -27
  73. package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +24 -29
  74. package/lib/Widgets/UtilityInformation/UtilityInformation.js +44 -30
  75. package/lib/Widgets/UtilityInformation/styles.js +25 -34
  76. package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +3 -3
  77. package/lib/assets/icons/TopNavbar/index.js +6 -6
  78. package/lib/assets/icons/TrendSvg.js +6 -6
  79. package/lib/assets/icons/index.js +15 -15
  80. package/lib/assets/icons/kandoStepper/index.js +5 -5
  81. package/lib/assets/icons/siteTypes/index.js +1 -1
  82. package/lib/components/ApplyButton/ApplyButton.js +9 -9
  83. package/lib/components/Backdrop/Backdrop.js +4 -6
  84. package/lib/components/ContentLoader/ContentLoader.js +9 -11
  85. package/lib/components/ContentLoader/index.js +1 -1
  86. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +12 -13
  87. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +5 -3
  88. package/lib/components/CustomInputs/DoubleTabs/styles.js +12 -20
  89. package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +20 -13
  90. package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +4 -6
  91. package/lib/components/CustomInputs/Search/Search.js +63 -42
  92. package/lib/components/CustomInputs/Select/Select.js +58 -45
  93. package/lib/components/CustomInputs/Select/Select.stories.js +6 -4
  94. package/lib/components/DamageType/DamageType.js +57 -35
  95. package/lib/components/DataLoaderError/DataLoaderError.js +6 -8
  96. package/lib/components/DischargeHeatmap/DischargeHeatmap.js +10 -9
  97. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +71 -70
  98. package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +37 -27
  99. package/lib/components/DischargeHeatmap/HighchartsOptions.js +12 -10
  100. package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -3
  101. package/lib/components/DischargeHeatmap/popupText.js +10 -10
  102. package/lib/components/DischargeHeatmap/titles.js +3 -3
  103. package/lib/components/ErrorBoundary.js +41 -27
  104. package/lib/components/Events/Events.js +58 -41
  105. package/lib/components/Graph/Graph.js +97 -70
  106. package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +21 -17
  107. package/lib/components/Header/DoubleTabs/DoubleTabs.js +33 -25
  108. package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +5 -3
  109. package/lib/components/Header/DoubleTabs/styles.js +4 -4
  110. package/lib/components/Header/Header.js +2 -2
  111. package/lib/components/Header/Header.stories.js +5 -3
  112. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +108 -90
  113. package/lib/components/Header/InfoBar/InfoBar.js +103 -74
  114. package/lib/components/Header/InfoBar/Search/Control.js +9 -9
  115. package/lib/components/Header/InfoBar/Search/GroupLabel.js +5 -7
  116. package/lib/components/Header/InfoBar/Search/Search.js +21 -16
  117. package/lib/components/Header/InfoBar/Search/SearchContainer.js +33 -21
  118. package/lib/components/Header/InfoBar/Search/searchStyle.js +49 -41
  119. package/lib/components/Header/InfoBar/TimeFilter.js +14 -11
  120. package/lib/components/Header/KandoNavbar/KandoNavbar.js +89 -64
  121. package/lib/components/Header/Slideshow/Slideshow.js +90 -68
  122. package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +4 -6
  123. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +23 -21
  124. package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +18 -18
  125. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +43 -37
  126. package/lib/components/Header/Toolbar/Toolbar.js +74 -55
  127. package/lib/components/InfoBar/InfoBar.js +23 -10
  128. package/lib/components/InfoBar/InfoBar.stories.js +5 -3
  129. package/lib/components/KandoModal/KandoModal.js +41 -27
  130. package/lib/components/Link.js +7 -8
  131. package/lib/components/Links/CustomRedirect/CustomRedirect.js +8 -9
  132. package/lib/components/Links/StyledLink/StyledLink.js +12 -12
  133. package/lib/components/Links/StyledNavLink/StyledNavLink.js +10 -11
  134. package/lib/components/LiveEvents/CarouselSlide.js +7 -9
  135. package/lib/components/LiveEvents/LiveEvents.js +3 -5
  136. package/lib/components/LoaderByPercent/LoaderByPercent.js +29 -37
  137. package/lib/components/Map/Map.js +23 -20
  138. package/lib/components/Modal/Modal.js +9 -9
  139. package/lib/components/NarrowHeader.js +31 -17
  140. package/lib/components/PointInfo/PointInfo.js +17 -19
  141. package/lib/components/PopupModal/PopupModal.js +16 -12
  142. package/lib/components/PopupModal/PopupModal.stories.js +19 -15
  143. package/lib/components/Sector/Sector.js +6 -8
  144. package/lib/components/Sector/Sector.test.js +20 -19
  145. package/lib/components/Sector/sectorIcons.js +2 -2
  146. package/lib/components/SevereEvent/Eta/Eta.js +52 -49
  147. package/lib/components/SevereEvent/Eta/styles.js +6 -10
  148. package/lib/components/SevereEvent/SevereEvent.js +37 -30
  149. package/lib/components/Spinner/Spinner.js +8 -8
  150. package/lib/components/Spinner/Spinner.stories.js +6 -4
  151. package/lib/components/Spinner/styles.js +14 -22
  152. package/lib/components/Tabs/Tabs.js +29 -21
  153. package/lib/components/Tabs/Tabs.stories.js +6 -4
  154. package/lib/components/Tabs/assets/index.js +5 -5
  155. package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +15 -12
  156. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +51 -40
  157. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +31 -19
  158. package/lib/components/TimeRangeSelector/TimeRangeHelper.js +25 -20
  159. package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +13 -13
  160. package/lib/components/TimeRangeSelector/TimeRangeList.js +24 -23
  161. package/lib/components/TimeRangeSelector/TimeRangeOptions.js +25 -17
  162. package/lib/components/TimeRangeSelector/TimeRangeSelector.js +32 -31
  163. package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +6 -4
  164. package/lib/components/TimeRangeSelector/constants.js +3 -3
  165. package/lib/components/Toggle/Toggle.js +17 -12
  166. package/lib/components/TrendGraph/TrendGraph.js +39 -23
  167. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +33 -27
  168. package/lib/development-environment/index.js +12 -8
  169. package/lib/development-environment/mock/browser.js +4 -2
  170. package/lib/development-environment/mock/get.js +10 -8
  171. package/lib/development-environment/mock/handlers.js +2 -2
  172. package/lib/development-environment/mock/mockBus.js +4 -4
  173. package/lib/development-environment/mock/mockObjects/area-trends-graph.js +2 -2
  174. package/lib/development-environment/mock/mockObjects/areaInformation.js +2 -2
  175. package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +2 -2
  176. package/lib/development-environment/mock/mockObjects/areaSitesData.js +2 -2
  177. package/lib/development-environment/mock/mockObjects/areasJson.js +2 -2
  178. package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +2 -2
  179. package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +2 -2
  180. package/lib/development-environment/mock/mockObjects/data-menuData.js +2 -2
  181. package/lib/development-environment/mock/mockObjects/data-search.js +2 -2
  182. package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +2 -2
  183. package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +2 -2
  184. package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +2 -2
  185. package/lib/development-environment/mock/mockObjects/eventsJson.js +2 -2
  186. package/lib/development-environment/mock/mockObjects/metascore.js +2 -2
  187. package/lib/development-environment/mock/mockObjects/permissionsJson.js +2 -2
  188. package/lib/development-environment/mock/mockObjects/pointsJson.js +2 -2
  189. package/lib/development-environment/mock/mockObjects/site-info.js +2 -2
  190. package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +2 -2
  191. package/lib/development-environment/togly/ToglyDashboard.js +22 -13
  192. package/lib/development-environment/togly/ToglyItem.js +31 -36
  193. package/lib/development-environment/togly/init.js +2 -2
  194. package/lib/development-environment/togly/macro.js +10 -14
  195. package/lib/development-environment/togly/useDoubleKeyDown.js +9 -7
  196. package/lib/development-environment/togly/useLocalStorage.js +18 -13
  197. package/lib/hooks/useApi.js +55 -19
  198. package/lib/hooks/useApiWithDashboardQuery.js +49 -30
  199. package/lib/hooks/useClickOutside.js +3 -3
  200. package/lib/hooks/useInitializeHeaders.js +5 -5
  201. package/lib/hooks/useKandoFetch.js +29 -16
  202. package/lib/hooks/useMap.js +34 -22
  203. package/lib/hooks/useNavContext.js +26 -22
  204. package/lib/hooks/useRemoveExistingLayers.js +6 -6
  205. package/lib/hooks/useUpdateEventBodyTail.js +17 -13
  206. package/lib/hooks/useUserTimeZone.js +30 -33
  207. package/lib/hooks/useUserTimeZone.test.js +22 -19
  208. package/lib/hooks/useWindowSize.js +14 -7
  209. package/lib/i18n/en.json +5 -0
  210. package/lib/i18n/he.json +5 -0
  211. package/lib/index.js +12 -11
  212. package/lib/macros/getVersion.js +3 -3
  213. package/lib/pages/AreaPage/AreaPage.js +67 -34
  214. package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +17 -16
  215. package/lib/pages/AreaPage/Dashboard/Dashboard.js +34 -29
  216. package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +25 -17
  217. package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +4 -4
  218. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +8 -8
  219. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +11 -11
  220. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +3 -3
  221. package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +2 -2
  222. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +4 -4
  223. package/lib/pages/AssessmentPage/AssessmentPage.js +46 -40
  224. package/lib/pages/CannyWidget/Feedback.js +13 -13
  225. package/lib/pages/CovidPage/CovidPage.js +13 -8
  226. package/lib/pages/CovidPage/components/Body.js +27 -25
  227. package/lib/pages/CovidPage/components/Map.js +39 -29
  228. package/lib/pages/CovidPage/components/Sidebar.js +15 -16
  229. package/lib/pages/CovidPage/components/Summary.js +27 -20
  230. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +33 -27
  231. package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +73 -51
  232. package/lib/pages/CovidPage/components/areas/Area.js +40 -29
  233. package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +46 -55
  234. package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +35 -32
  235. package/lib/pages/CovidPage/components/areas/AreasList.js +46 -34
  236. package/lib/pages/CovidPage/components/areas/Sort.js +14 -11
  237. package/lib/pages/CovidPage/components/nvlStatusHelper.js +11 -11
  238. package/lib/pages/DashboardMap/AreaCard.js +28 -28
  239. package/lib/pages/DashboardMap/AssessmentIcon.js +7 -8
  240. package/lib/pages/DashboardMap/Capacity.js +80 -31
  241. package/lib/pages/DashboardMap/FactoryCard.js +29 -33
  242. package/lib/pages/DashboardMap/HighchartsOptions.js +4 -5
  243. package/lib/pages/DashboardMap/List.js +112 -74
  244. package/lib/pages/DashboardMap/ListContext.js +19 -15
  245. package/lib/pages/DashboardMap/Loader.js +2 -2
  246. package/lib/pages/DashboardMap/SeverityBadge.js +18 -10
  247. package/lib/pages/DashboardMap/WWTPMap.js +103 -80
  248. package/lib/pages/DashboardMap/WaterDischarge.js +10 -10
  249. package/lib/pages/DashboardMap/Widget.js +71 -54
  250. package/lib/pages/DashboardMap/utils.js +65 -48
  251. package/lib/pages/EventsPage/Body/Body.js +15 -20
  252. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +19 -17
  253. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +35 -27
  254. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +6 -8
  255. package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +7 -11
  256. package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +30 -21
  257. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +64 -53
  258. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +31 -19
  259. package/lib/pages/EventsPage/EventsPage.js +10 -7
  260. package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +38 -26
  261. package/lib/pages/EventsPage/events/MoreInfo.js +16 -17
  262. package/lib/pages/EventsPage/events/Sidebar.js +16 -21
  263. package/lib/pages/EventsPage/events/event_info/Contaminants/Contaminants.js +7 -7
  264. package/lib/pages/EventsPage/events/event_info/Contaminants/ContaminantsList.js +20 -17
  265. package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +35 -30
  266. package/lib/pages/EventsPage/events/event_info/EventDetails.js +37 -40
  267. package/lib/pages/EventsPage/events/event_info/EventInfo.js +42 -43
  268. package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +4 -4
  269. package/lib/pages/EventsPage/events/event_info/EventSection.js +19 -17
  270. package/lib/pages/EventsPage/events/event_info/EventSection.test.js +38 -43
  271. package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +47 -39
  272. package/lib/pages/EventsPage/events/event_info/Header/Header.js +4 -6
  273. package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +33 -30
  274. package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +6 -6
  275. package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +36 -29
  276. package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +6 -4
  277. package/lib/pages/EventsPage/events/event_info/PollutionAssessment /PollutionAssessment.js +10 -10
  278. package/lib/pages/EventsPage/events/event_info/PollutionAssessment /PollutionTypesList.js +9 -7
  279. package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +21 -22
  280. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResult.js +19 -12
  281. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResultButton.js +3 -5
  282. package/lib/pages/EventsPage/events/event_info/SamplingList/SamplingDetails.js +9 -11
  283. package/lib/pages/EventsPage/events/event_info/SamplingList/Samplings.js +26 -22
  284. package/lib/pages/EventsPage/events/event_info/SeverityScore/ScoreExplanation.js +8 -12
  285. package/lib/pages/EventsPage/events/event_info/SeverityScore/SeverityScore.js +7 -7
  286. package/lib/pages/EventsPage/events/event_info/SourceDetails/Confidence.js +4 -6
  287. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.js +2 -2
  288. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.test.js +10 -12
  289. package/lib/pages/EventsPage/events/event_info/SourceDetails/IconAndTitles.js +8 -10
  290. package/lib/pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton.js +12 -10
  291. package/lib/pages/EventsPage/events/event_info/SourceDetails/OtherSources.js +3 -5
  292. package/lib/pages/EventsPage/events/event_info/SourceDetails/PotentialSources.js +5 -7
  293. package/lib/pages/EventsPage/events/event_info/SourceDetails/SingleSource.js +5 -7
  294. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceCardBody.js +4 -6
  295. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.js +9 -11
  296. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.test.js +15 -15
  297. package/lib/pages/EventsPage/events/event_info/SourceDetails/WaterDischarge.js +6 -6
  298. package/lib/pages/EventsPage/events/event_info/Timelines/DischargeBox.js +5 -7
  299. package/lib/pages/EventsPage/events/event_info/Timelines/EarlyWarning.js +15 -17
  300. package/lib/pages/EventsPage/events/event_info/Timelines/LiveStatusBadge.js +4 -4
  301. package/lib/pages/EventsPage/events/event_info/Timelines/SeenBox.js +8 -10
  302. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.js +11 -16
  303. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.test.js +8 -9
  304. package/lib/pages/EventsPage/events/event_info/Timelines/Titles.js +2 -2
  305. package/lib/pages/EventsPage/events/event_info/Timelines/style.js +3 -3
  306. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +38 -25
  307. package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +36 -29
  308. package/lib/pages/EventsPage/events/event_info/samplingsOld/Sampling.js +9 -11
  309. package/lib/pages/EventsPage/events/event_info/samplingsOld/Samplings.js +17 -15
  310. package/lib/pages/EventsPage/events/event_info/sources/Source.js +30 -27
  311. package/lib/pages/EventsPage/events/event_info/sources/Sources.js +26 -23
  312. package/lib/pages/EventsPage/events/event_info/styles.js +12 -20
  313. package/lib/pages/EventsPage/events/events_list/EventItem.js +19 -18
  314. package/lib/pages/EventsPage/events/events_list/EventUtils.js +10 -10
  315. package/lib/pages/EventsPage/events/events_list/EventsList.js +145 -124
  316. package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +55 -40
  317. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +115 -79
  318. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +77 -60
  319. package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +41 -38
  320. package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +36 -29
  321. package/lib/pages/EventsPage/events/events_list/Sort.js +16 -13
  322. package/lib/pages/ImportFileWizard/FileUploadRespones.js +20 -13
  323. package/lib/pages/ImportFileWizard/ImportButtomButtons.js +4 -6
  324. package/lib/pages/ImportFileWizard/ImportFile.js +22 -20
  325. package/lib/pages/ImportFileWizard/ResponseBody.js +33 -24
  326. package/lib/pages/ImportFileWizard/ValidationForm.js +22 -23
  327. package/lib/pages/ImportFileWizard/ValidationResponse.js +21 -21
  328. package/lib/pages/ImportFileWizard/importFileUtils.js +1 -1
  329. package/lib/pages/ImportGisPage/ImportGisContainer.js +24 -21
  330. package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +23 -21
  331. package/lib/pages/ImportGisPage/importGisUtils.js +21 -13
  332. package/lib/pages/ImportGisProcess/index.js +15 -12
  333. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +12 -7
  334. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +19 -17
  335. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +3 -3
  336. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +65 -56
  337. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +8 -6
  338. package/lib/pages/NotificationsPage/Notification/Notification.js +12 -16
  339. package/lib/pages/NotificationsPage/Notifications.mock.js +2 -2
  340. package/lib/pages/NotificationsPage/Notifications.stories.js +6 -4
  341. package/lib/pages/NotificationsPage/NotificationsPage.js +36 -18
  342. package/lib/pages/NotificationsPage/assets/index.js +9 -9
  343. package/lib/pages/NotificationsPageV2/NotificationsPage.js +97 -71
  344. package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +63 -94
  345. package/lib/pages/NotificationsPageV2/components/NotificationsForm/EventType.js +16 -14
  346. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSendVia.js +16 -18
  347. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSensors.js +21 -17
  348. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSources.js +21 -17
  349. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationTags.js +22 -18
  350. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +69 -83
  351. package/lib/pages/NotificationsPageV2/components/NotificationsForm/WaterAuthoritySelection.js +22 -18
  352. package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +74 -74
  353. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +95 -97
  354. package/lib/pages/NotificationsPageV2/notificationUtils.js +48 -54
  355. package/lib/pages/OldSitePage/OldSitePage.js +132 -57
  356. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +5 -5
  357. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +5 -3
  358. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +6 -8
  359. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +20 -18
  360. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +7 -9
  361. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +18 -12
  362. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +12 -16
  363. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +5 -3
  364. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +12 -18
  365. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +63 -51
  366. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +7 -9
  367. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +53 -29
  368. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +4 -4
  369. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +12 -10
  370. package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +10 -11
  371. package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +11 -10
  372. package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +28 -32
  373. package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +29 -27
  374. package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +4 -4
  375. package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +12 -18
  376. package/lib/pages/ProfilePage/Container.js +2 -2
  377. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +44 -28
  378. package/lib/pages/ProfilePage/ProfilePage.js +237 -120
  379. package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +33 -25
  380. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +16 -19
  381. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +30 -28
  382. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +117 -57
  383. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +20 -17
  384. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +10 -12
  385. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +41 -39
  386. package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +26 -25
  387. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +16 -16
  388. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +15 -13
  389. package/lib/pages/SamplingsPage/NavigationDropdown.js +32 -45
  390. package/lib/pages/SamplingsPage/NewSamplingAction.js +100 -76
  391. package/lib/pages/SamplingsPage/SamplingMobileModal.js +101 -129
  392. package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +22 -21
  393. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +22 -34
  394. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +59 -36
  395. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +18 -15
  396. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +7 -9
  397. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +194 -110
  398. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +55 -49
  399. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +43 -47
  400. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +45 -49
  401. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +20 -19
  402. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +3 -3
  403. package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +6 -10
  404. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +54 -58
  405. package/lib/pages/SamplingsPage/SamplingsMobileList.js +28 -21
  406. package/lib/pages/SamplingsPage/SamplingsPage.js +33 -27
  407. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +58 -50
  408. package/lib/pages/SamplingsPage/samplingsPageUtils.js +76 -68
  409. package/lib/pages/SitePage/DischargePattern/DischargePattern.js +4 -6
  410. package/lib/pages/SitePage/PollutionContributor/PollutionContributor.js +13 -14
  411. package/lib/pages/SitePage/PollutionContributor/PollutionContributorContainer.js +13 -10
  412. package/lib/pages/SitePage/PollutionContributor/contributorUtils.js +16 -16
  413. package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +5 -3
  414. package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +10 -14
  415. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +8 -9
  416. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +23 -26
  417. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +17 -14
  418. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +32 -36
  419. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +7 -9
  420. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +24 -15
  421. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +12 -16
  422. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +5 -3
  423. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +12 -18
  424. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +70 -58
  425. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +7 -9
  426. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +26 -15
  427. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +5 -5
  428. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +12 -10
  429. package/lib/pages/SitePage/SamplingParameters/body/Body.js +9 -9
  430. package/lib/pages/SitePage/SamplingParameters/body/BodyContainer.js +37 -29
  431. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +11 -11
  432. package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +11 -10
  433. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +59 -60
  434. package/lib/pages/SitePage/SamplingParameters/dataParser.js +39 -30
  435. package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +9 -11
  436. package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +4 -4
  437. package/lib/pages/SitePage/SamplingParameters/styles/styles.js +12 -18
  438. package/lib/pages/SitePage/SiteInformation/EmptyState.js +7 -11
  439. package/lib/pages/SitePage/SiteInformation/SiteInformation.js +48 -41
  440. package/lib/pages/SitePage/SitePage.js +84 -41
  441. package/lib/pages/UploadLabResult/index.js +13 -13
  442. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +35 -26
  443. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +8 -6
  444. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +8 -9
  445. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +5 -3
  446. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +48 -47
  447. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +6 -10
  448. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +4 -4
  449. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +6 -4
  450. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +12 -13
  451. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +12 -15
  452. package/lib/pages/UtilityDashboardPage/TopBar/constants.js +7 -7
  453. package/lib/pages/UtilityDashboardPage/TopBar/styles.js +2 -2
  454. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +38 -23
  455. package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +30 -26
  456. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +18 -17
  457. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +13 -7
  458. package/lib/pages/UtilityDashboardPage/VirtualAreaDashboardPage.js +31 -27
  459. package/lib/pages/WbeDashboard/ExpandableComponent.js +8 -9
  460. package/lib/pages/WbeDashboard/GraphWrapper.js +36 -30
  461. package/lib/pages/WbeDashboard/IndividualTinyGraph.js +19 -17
  462. package/lib/pages/WbeDashboard/SearchInput.js +20 -15
  463. package/lib/pages/WbeDashboard/SummaryGraph.js +76 -50
  464. package/lib/pages/WbeDashboard/SummaryGraphModal.js +17 -19
  465. package/lib/pages/WbeDashboard/Tabs.js +11 -11
  466. package/lib/pages/WbeDashboard/WbeDashboardPage.js +213 -151
  467. package/lib/pages/WbeDashboard/WbeSummaryBar.js +48 -40
  468. package/lib/pages/WwtpPage/DashboardCard.js +23 -26
  469. package/lib/pages/WwtpPage/DischargePatternCard.js +23 -14
  470. package/lib/pages/WwtpPage/InletsCard/InletsBar.js +22 -26
  471. package/lib/pages/WwtpPage/InletsCard/InletsCard.js +18 -19
  472. package/lib/pages/WwtpPage/Map.js +3 -5
  473. package/lib/pages/WwtpPage/OrganicCard.js +2 -2
  474. package/lib/pages/WwtpPage/PotentialSaving/ImpactCard.js +2 -2
  475. package/lib/pages/WwtpPage/PotentialSaving/PotentialItem.js +6 -8
  476. package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +8 -9
  477. package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +14 -18
  478. package/lib/pages/WwtpPage/PredictionCard.js +2 -2
  479. package/lib/pages/WwtpPage/TrendCard.js +19 -18
  480. package/lib/pages/WwtpPage/UpgradeBox.js +3 -3
  481. package/lib/pages/WwtpPage/WwtpPage.js +8 -8
  482. package/lib/pages/WwtpPage/WwtpPageContainer.js +16 -21
  483. package/lib/providers/Slideshow/SlideshowContext.js +9 -11
  484. package/lib/providers/Slideshow/SlideshowProvider.js +38 -22
  485. package/lib/providers/Slideshow/SlideshowRunner.js +19 -17
  486. package/lib/providers/UrlHistory/UrlHistoryContext.js +4 -6
  487. package/lib/providers/UrlHistory/UrlHistoryProvider.js +11 -12
  488. package/lib/providers/UrlHistory/index.js +2 -2
  489. package/lib/providers/UrlHistory/useLastVisited.js +5 -5
  490. package/lib/store/ImportGis/actionTypes.js +1 -1
  491. package/lib/store/ImportGis/actionsCreator.js +5 -7
  492. package/lib/store/ImportGis/reducer.js +29 -40
  493. package/lib/store/WBE/actionTypes.js +2 -2
  494. package/lib/store/WBE/reducer.js +9 -13
  495. package/lib/store/WWTPDashboard/WWTPDashboardSlice.js +14 -24
  496. package/lib/store/areas/actionTypes.js +4 -4
  497. package/lib/store/areas/actions.js +13 -7
  498. package/lib/store/areas/reducer.js +6 -8
  499. package/lib/store/context/actionTypes.js +3 -3
  500. package/lib/store/context/actions.js +3 -3
  501. package/lib/store/context/contextMiddlewares.js +16 -14
  502. package/lib/store/context/reducer.js +9 -13
  503. package/lib/store/dashboard/dashboardSlice.js +10 -18
  504. package/lib/store/edges/actionTypes.js +5 -5
  505. package/lib/store/edges/actions.js +8 -4
  506. package/lib/store/edges/reducer.js +17 -13
  507. package/lib/store/events/actionTypes.js +17 -17
  508. package/lib/store/events/actions.js +7 -3
  509. package/lib/store/events/reducer.js +49 -42
  510. package/lib/store/global/actionTypes.js +11 -11
  511. package/lib/store/global/actions.js +6 -8
  512. package/lib/store/global/reducer.js +10 -11
  513. package/lib/store/permissions/permissionsSlice.js +8 -12
  514. package/lib/store/points/actionTypes.js +3 -3
  515. package/lib/store/points/actions.js +8 -4
  516. package/lib/store/points/reducer.js +5 -7
  517. package/lib/store/rootActionTypes.js +2 -2
  518. package/lib/store/rootReducer.js +12 -17
  519. package/lib/store/rootStore.js +5 -5
  520. package/lib/store/samplings/actionTypes.js +1 -1
  521. package/lib/store/samplings/reducer.js +14 -16
  522. package/lib/styles/StylesLayout.js +3 -5
  523. package/lib/styles/theme/theme.js +27 -26
  524. package/lib/test/mocks/browser.js +4 -2
  525. package/lib/test/test-utils.js +15 -17
  526. package/lib/ui-kit/Button/Button.js +80 -128
  527. package/lib/ui-kit/Button/Button.test.js +29 -24
  528. package/lib/ui-kit/Checkbox/Checkbox.js +20 -30
  529. package/lib/ui-kit/ContentCard/ContentCard.js +18 -15
  530. package/lib/ui-kit/Dashboard/Dashboard.js +22 -25
  531. package/lib/ui-kit/DropDown/DropDown.js +24 -23
  532. package/lib/ui-kit/DropDown/DropDown.test.js +12 -12
  533. package/lib/ui-kit/DropDown/DropDownItem.js +21 -24
  534. package/lib/ui-kit/DropDown/DropdownToggle.js +8 -12
  535. package/lib/ui-kit/EmptyState/EmptyState.js +4 -6
  536. package/lib/ui-kit/IconAction/IconAction.js +5 -7
  537. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +64 -48
  538. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +52 -69
  539. package/lib/ui-kit/InletsPie/InletsPie.js +13 -15
  540. package/lib/ui-kit/InletsPie/options.js +6 -6
  541. package/lib/ui-kit/KandoList/KandoList.js +12 -14
  542. package/lib/ui-kit/KandoTable/KandoTable.js +40 -48
  543. package/lib/ui-kit/KandoTable/KandoTable.test.js +22 -16
  544. package/lib/ui-kit/Layout/Layout.js +4 -6
  545. package/lib/ui-kit/MobileInput/MobileInput.js +50 -60
  546. package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +16 -13
  547. package/lib/ui-kit/OrganicEvents/GaugeChart.js +6 -8
  548. package/lib/ui-kit/OrganicEvents/OrganicEvents.js +6 -6
  549. package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +20 -27
  550. package/lib/ui-kit/OrganicEvents/TextInfo.js +10 -15
  551. package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +8 -10
  552. package/lib/ui-kit/SamplingStatus/SamplingStatus.js +17 -14
  553. package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +3 -3
  554. package/lib/ui-kit/ScoreGauge/ScoreGauge.js +20 -20
  555. package/lib/ui-kit/ScoreGauge/constant.js +3 -3
  556. package/lib/ui-kit/TimeLineChart/TrendChart.js +42 -54
  557. package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +7 -8
  558. package/lib/ui-kit/Tooltip/Tooltip.js +8 -14
  559. package/lib/ui-kit/index.js +8 -8
  560. package/lib/ui-kit/kandoStepper/KandoStepper.js +12 -12
  561. package/lib/ui-kit/siteName/SiteName.js +8 -11
  562. package/lib/utilities/ActionUtility.js +7 -7
  563. package/lib/utilities/Alert.js +17 -21
  564. package/lib/utilities/Analytics.js +11 -11
  565. package/lib/utilities/Array.js +5 -4
  566. package/lib/utilities/Enum.js +51 -15
  567. package/lib/utilities/ErrorBoundary.js +41 -27
  568. package/lib/utilities/File.js +69 -40
  569. package/lib/utilities/GetDir.js +7 -8
  570. package/lib/utilities/KandoDate.js +15 -7
  571. package/lib/utilities/KandoModal.js +26 -16
  572. package/lib/utilities/LocalStorage.js +10 -8
  573. package/lib/utilities/ThousandsToK.js +3 -3
  574. package/lib/utilities/TimeFormat.js +20 -21
  575. package/lib/utilities/Truncate.js +25 -17
  576. package/lib/utilities/edgesMath.js +15 -14
  577. package/lib/utilities/i18n.js +3 -3
  578. package/lib/utilities/kql.js +14 -12
  579. package/lib/utilities/map/icons.js +3 -3
  580. package/lib/utilities/polylinedecorator.js +112 -87
  581. package/lib/utilities/scoreToData.js +17 -17
  582. package/lib/utilities/scoreToData.test.js +5 -5
  583. package/lib/utilities/time.js +8 -8
  584. package/lib/utilities/uploadToS3.js +11 -11
  585. package/lib/utilities/urls.js +59 -61
  586. package/package.json +1 -1
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.EventsMapContainer = void 0;
9
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
8
10
  var _react = _interopRequireWildcard(require("react"));
9
11
  var _reactRedux = require("react-redux");
10
12
  var _EventsMapContainerHelpers = require("pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers");
@@ -17,41 +19,43 @@ var _GraphUtils = require("Widgets/Map/GraphUtils");
17
19
  var _actions4 = require("store/global/actions");
18
20
  var _DragAndDropArea = _interopRequireDefault(require("../DragAndDropArea"));
19
21
  var _EventUtils = require("Widgets/Map/events/EventUtils");
20
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
- 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; }
22
- const EventsMapContainer = props => {
22
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
23
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
24
+ var EventsMapContainer = function EventsMapContainer(props) {
23
25
  var _global_data$floating, _global_data$floating2;
24
- const dispatch = (0, _reactRedux.useDispatch)();
25
- const ReduxState = (0, _reactRedux.useSelector)(state => state);
26
- const {
27
- areas_data,
28
- global_data,
29
- points_data,
30
- events_data,
31
- edges_data
32
- } = ReduxState;
33
- const isTimeFilterNotSelected = (0, _react.useMemo)(() => {
26
+ var dispatch = (0, _reactRedux.useDispatch)();
27
+ var ReduxState = (0, _reactRedux.useSelector)(function (state) {
28
+ return state;
29
+ });
30
+ var areas_data = ReduxState.areas_data,
31
+ global_data = ReduxState.global_data,
32
+ points_data = ReduxState.points_data,
33
+ events_data = ReduxState.events_data,
34
+ edges_data = ReduxState.edges_data;
35
+ var isTimeFilterNotSelected = (0, _react.useMemo)(function () {
34
36
  var _global_data$activeFi;
35
- const filters = global_data === null || global_data === void 0 ? void 0 : (_global_data$activeFi = global_data.activeFilter) === null || _global_data$activeFi === void 0 ? void 0 : _global_data$activeFi.filter_items;
37
+ var filters = global_data === null || global_data === void 0 ? void 0 : (_global_data$activeFi = global_data.activeFilter) === null || _global_data$activeFi === void 0 ? void 0 : _global_data$activeFi.filter_items;
36
38
  if (!filters || filters.length < 1) {
37
39
  return true;
38
40
  }
39
- for (let index = 0; index < filters.length; index++) {
41
+ for (var index = 0; index < filters.length; index++) {
40
42
  if (filters[index].type === 'TimeFilterItem') {
41
43
  return false;
42
44
  }
43
45
  }
44
46
  return true;
45
47
  }, [global_data === null || global_data === void 0 ? void 0 : global_data.activeFilter]);
46
- const mappedAreas = (0, _react.useMemo)(() => (0, _EventsMapContainerHelpers.areasMapper)(areas_data, isTimeFilterNotSelected), [areas_data, isTimeFilterNotSelected]);
47
- const getActiveTimeFilterPeriod = () => {
48
+ var mappedAreas = (0, _react.useMemo)(function () {
49
+ return (0, _EventsMapContainerHelpers.areasMapper)(areas_data, isTimeFilterNotSelected);
50
+ }, [areas_data, isTimeFilterNotSelected]);
51
+ var getActiveTimeFilterPeriod = function getActiveTimeFilterPeriod() {
48
52
  var _global_data$activeFi2;
49
- const items = global_data === null || global_data === void 0 ? void 0 : (_global_data$activeFi2 = global_data.activeFilter) === null || _global_data$activeFi2 === void 0 ? void 0 : _global_data$activeFi2.filter_items;
50
- let activeTimeFilter = '1m';
53
+ var items = global_data === null || global_data === void 0 ? void 0 : (_global_data$activeFi2 = global_data.activeFilter) === null || _global_data$activeFi2 === void 0 ? void 0 : _global_data$activeFi2.filter_items;
54
+ var activeTimeFilter = '1m';
51
55
  if (!items || items.length < 1) {
52
56
  return activeTimeFilter;
53
57
  }
54
- for (let index = 0; index < items.length; index++) {
58
+ for (var index = 0; index < items.length; index++) {
55
59
  if (items[index].type === 'TimeFilterItem') {
56
60
  if (typeof items[index].selected_options === 'string') items[index].selected_options = JSON.parse(items[index].selected_options);
57
61
  activeTimeFilter = items[index].selected_options[0];
@@ -60,8 +64,10 @@ const EventsMapContainer = props => {
60
64
  }
61
65
  return activeTimeFilter;
62
66
  };
63
- const EventsPerSite = (0, _react.useMemo)(() => (0, _EventsMapContainerHelpers.CountEventsPerSiteID)(events_data.items), [events_data.items]);
64
- const MustSeenSites = (0, _react.useMemo)(() => {
67
+ var EventsPerSite = (0, _react.useMemo)(function () {
68
+ return (0, _EventsMapContainerHelpers.CountEventsPerSiteID)(events_data.items);
69
+ }, [events_data.items]);
70
+ var MustSeenSites = (0, _react.useMemo)(function () {
65
71
  if (events_data.focusedEvent) {
66
72
  return (0, _EventsMapContainerHelpers.getFocusedEventMustSeenSites)(events_data.focusedEvent);
67
73
  } else if (events_data.hoveredEvent) {
@@ -69,41 +75,46 @@ const EventsMapContainer = props => {
69
75
  }
70
76
  return {};
71
77
  }, [EventsPerSite, events_data.focusedEvent, events_data.hoveredEvent]);
72
- const mappedPoints = (0, _react.useMemo)(() => points_data.items.map(point => {
73
- const newPoint = {
74
- ...point
75
- };
76
- if (!EventsPerSite[point.id] || (0, _EventUtils.isCollectorUnmonitored)(point)) {
77
- newPoint.hide = true;
78
- }
79
- if (events_data.focusedEvent) {
80
- if (!MustSeenSites[point.id]) {
78
+ var mappedPoints = (0, _react.useMemo)(function () {
79
+ return points_data.items.map(function (point) {
80
+ var newPoint = (0, _objectSpread2.default)({}, point);
81
+ if (!EventsPerSite[point.id] || (0, _EventUtils.isCollectorUnmonitored)(point)) {
81
82
  newPoint.hide = true;
82
- } else {
83
- newPoint.hide = false;
84
83
  }
85
- } else if (events_data.hoveredEvent) {
86
- if (!MustSeenSites[point.id] && (0, _EventUtils.isCollectorUnmonitored)(point)) {
87
- newPoint.hide = true;
88
- } else {
89
- newPoint.hide = false;
84
+ if (events_data.focusedEvent) {
85
+ if (!MustSeenSites[point.id]) {
86
+ newPoint.hide = true;
87
+ } else {
88
+ newPoint.hide = false;
89
+ }
90
+ } else if (events_data.hoveredEvent) {
91
+ if (!MustSeenSites[point.id] && (0, _EventUtils.isCollectorUnmonitored)(point)) {
92
+ newPoint.hide = true;
93
+ } else {
94
+ newPoint.hide = false;
95
+ }
90
96
  }
91
- }
92
- newPoint.relatedEventsAmount = EventsPerSite[point.id] || 0;
93
- newPoint.eventsViewHovered = true;
94
- return newPoint;
95
- }), [points_data, EventsPerSite, events_data.items, events_data.focusedEvent, events_data.hoveredEvent]);
97
+ newPoint.relatedEventsAmount = EventsPerSite[point.id] || 0;
98
+ newPoint.eventsViewHovered = true;
99
+ return newPoint;
100
+ });
101
+ }, [points_data, EventsPerSite, events_data.items, events_data.focusedEvent, events_data.hoveredEvent]);
96
102
 
97
103
  // eslint-disable-next-line
98
- const mappedEdges = edges_data.items.filter(edge =>
99
- // (Number(EventsPerSite[edge.source_point_id]) > 0 ||
100
- // Number(EventsPerSite[edge.target_point_id]) > 0)
101
- // &&
102
- edge.descendants_has_device === true || edge.descendants_has_none_collectors === true);
103
- const areaToCenterBy = (0, _react.useMemo)(() => (0, _EventsMapContainerHelpers.getAreasToCenterBy)(global_data, mappedAreas), [global_data === null || global_data === void 0 ? void 0 : global_data.activeFilter, mappedAreas]);
104
- (0, _react.useEffect)(() => {
104
+ var mappedEdges = edges_data.items.filter(function (edge) {
105
+ return (
106
+ // (Number(EventsPerSite[edge.source_point_id]) > 0 ||
107
+ // Number(EventsPerSite[edge.target_point_id]) > 0)
108
+ // &&
109
+ edge.descendants_has_device === true || edge.descendants_has_none_collectors === true
110
+ );
111
+ });
112
+ var areaToCenterBy = (0, _react.useMemo)(function () {
113
+ return (0, _EventsMapContainerHelpers.getAreasToCenterBy)(global_data, mappedAreas);
114
+ }, [global_data === null || global_data === void 0 ? void 0 : global_data.activeFilter, mappedAreas]);
115
+ (0, _react.useEffect)(function () {
105
116
  if (global_data.waterAuthorityId) {
106
- const period = getActiveTimeFilterPeriod();
117
+ var period = getActiveTimeFilterPeriod();
107
118
  dispatch((0, _actions3.fetchPoints)(global_data.waterAuthorityId, period));
108
119
  dispatch((0, _actions2.fetchEdges)(global_data.waterAuthorityId));
109
120
  dispatch((0, _actions.fetchAreas)(global_data.waterAuthorityId, period, true));
@@ -128,7 +139,7 @@ const EventsMapContainer = props => {
128
139
  floatingGraph: /*#__PURE__*/_react.default.createElement(_FloatingGraph.default, {
129
140
  isOpen: global_data === null || global_data === void 0 ? void 0 : global_data.floatingGraph.open,
130
141
  customHighChartOptions: _GraphUtils.dndGraphInitOptions,
131
- closeGraphHandler: () => {
142
+ closeGraphHandler: function closeGraphHandler() {
132
143
  dispatch((0, _actions4.closeFloatingGraph)());
133
144
  },
134
145
  globalDataFloatingGraph: global_data.floatingGraph,
@@ -138,4 +149,4 @@ const EventsMapContainer = props => {
138
149
  }));
139
150
  };
140
151
  exports.EventsMapContainer = EventsMapContainer;
141
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzIiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfYWN0aW9uczMiLCJfTWFwIiwiX0Zsb2F0aW5nR3JhcGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0dyYXBoVXRpbHMiLCJfYWN0aW9uczQiLCJfRHJhZ0FuZERyb3BBcmVhIiwiX0V2ZW50VXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiRXZlbnRzTWFwQ29udGFpbmVyIiwicHJvcHMiLCJfZ2xvYmFsX2RhdGEkZmxvYXRpbmciLCJfZ2xvYmFsX2RhdGEkZmxvYXRpbmcyIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIlJlZHV4U3RhdGUiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiYXJlYXNfZGF0YSIsImdsb2JhbF9kYXRhIiwicG9pbnRzX2RhdGEiLCJldmVudHNfZGF0YSIsImVkZ2VzX2RhdGEiLCJpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCIsInVzZU1lbW8iLCJfZ2xvYmFsX2RhdGEkYWN0aXZlRmkiLCJmaWx0ZXJzIiwiYWN0aXZlRmlsdGVyIiwiZmlsdGVyX2l0ZW1zIiwibGVuZ3RoIiwiaW5kZXgiLCJ0eXBlIiwibWFwcGVkQXJlYXMiLCJhcmVhc01hcHBlciIsImdldEFjdGl2ZVRpbWVGaWx0ZXJQZXJpb2QiLCJfZ2xvYmFsX2RhdGEkYWN0aXZlRmkyIiwiaXRlbXMiLCJhY3RpdmVUaW1lRmlsdGVyIiwic2VsZWN0ZWRfb3B0aW9ucyIsIkpTT04iLCJwYXJzZSIsIkV2ZW50c1BlclNpdGUiLCJDb3VudEV2ZW50c1BlclNpdGVJRCIsIk11c3RTZWVuU2l0ZXMiLCJmb2N1c2VkRXZlbnQiLCJnZXRGb2N1c2VkRXZlbnRNdXN0U2VlblNpdGVzIiwiaG92ZXJlZEV2ZW50IiwibWFwcGVkUG9pbnRzIiwibWFwIiwicG9pbnQiLCJuZXdQb2ludCIsImlkIiwiaXNDb2xsZWN0b3JVbm1vbml0b3JlZCIsImhpZGUiLCJyZWxhdGVkRXZlbnRzQW1vdW50IiwiZXZlbnRzVmlld0hvdmVyZWQiLCJtYXBwZWRFZGdlcyIsImZpbHRlciIsImVkZ2UiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwiZGVzY2VuZGFudHNfaGFzX25vbmVfY29sbGVjdG9ycyIsImFyZWFUb0NlbnRlckJ5IiwiZ2V0QXJlYXNUb0NlbnRlckJ5IiwidXNlRWZmZWN0Iiwid2F0ZXJBdXRob3JpdHlJZCIsInBlcmlvZCIsImZldGNoUG9pbnRzIiwiZmV0Y2hFZGdlcyIsImZldGNoQXJlYXMiLCJjcmVhdGVFbGVtZW50IiwiTWFwIiwiYXNzaWduIiwiYXJlYXMiLCJwb2ludHMiLCJlZGdlcyIsImV2ZW50cyIsImhpZGVFZGdlcyIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsImluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMiLCJmb3JFdmVudHNWaWV3IiwiZm9jdXNlZEV2ZW50UGF0aCIsImZvY3VzZWRFdmVudFBhdGhzIiwiZmxvYXRpbmdHcmFwaCIsImlzT3BlbiIsIm9wZW4iLCJjdXN0b21IaWdoQ2hhcnRPcHRpb25zIiwiZG5kR3JhcGhJbml0T3B0aW9ucyIsImNsb3NlR3JhcGhIYW5kbGVyIiwiY2xvc2VGbG9hdGluZ0dyYXBoIiwiZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGgiLCJldmVudF9kYXRhIiwiZ3JhcGhJZCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNNYXBDb250YWluZXIvRXZlbnRzTWFwQ29udGFpbmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIENvdW50RXZlbnRzUGVyU2l0ZUlELFxuICBnZXRBcmVhc1RvQ2VudGVyQnksXG4gIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMsXG59IGZyb20gJ3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzJztcbmltcG9ydCB7IGZldGNoQXJlYXMgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEVkZ2VzIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgRmxvYXRpbmdHcmFwaCBmcm9tICdzcmMvcGFnZXMvRXZlbnRzUGFnZS9GbG9hdGluZ0dyYXBoL0Zsb2F0aW5nR3JhcGgnO1xuaW1wb3J0IHsgZG5kR3JhcGhJbml0T3B0aW9ucyB9IGZyb20gJ3NyYy9XaWRnZXRzL01hcC9HcmFwaFV0aWxzJztcbmltcG9ydCB7IGNsb3NlRmxvYXRpbmdHcmFwaCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgRHJhZ0FuZERyb3BBcmVhIGZyb20gJy4uL0RyYWdBbmREcm9wQXJlYSc7XG5pbXBvcnQgeyBpc0NvbGxlY3RvclVubW9uaXRvcmVkIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL2V2ZW50cy9FdmVudFV0aWxzJztcbmludGVyZmFjZSBFdmVudHNNYXBDb250YWluZXJQcm9wcyB7XG4gIHNob3dTZWNvbmRNYXA6IGJvb2xlYW47XG59XG5leHBvcnQgY29uc3QgRXZlbnRzTWFwQ29udGFpbmVyOiBSZWFjdC5GQzxFdmVudHNNYXBDb250YWluZXJQcm9wcz4gPSAoXG4gIHByb3BzLFxuKSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEsIGdsb2JhbF9kYXRhLCBwb2ludHNfZGF0YSwgZXZlbnRzX2RhdGEsIGVkZ2VzX2RhdGEgfSA9XG4gICAgUmVkdXhTdGF0ZTtcblxuICBjb25zdCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyPy5maWx0ZXJfaXRlbXM7XG5cbiAgICBpZiAoIWZpbHRlcnMgfHwgZmlsdGVycy5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZmlsdGVycy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChmaWx0ZXJzW2luZGV4XS50eXBlID09PSAnVGltZUZpbHRlckl0ZW0nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSwgW2dsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXJdKTtcblxuICBjb25zdCBtYXBwZWRBcmVhcyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gYXJlYXNNYXBwZXIoYXJlYXNfZGF0YSwgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQpLFxuICAgIFthcmVhc19kYXRhLCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0QWN0aXZlVGltZUZpbHRlclBlcmlvZCA9ICgpID0+IHtcbiAgICBjb25zdCBpdGVtcyA9IGdsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXI/LmZpbHRlcl9pdGVtcztcbiAgICBsZXQgYWN0aXZlVGltZUZpbHRlciA9ICcxbSc7XG5cbiAgICBpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA8IDEpIHtcbiAgICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICAgIH1cblxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBpdGVtcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChpdGVtc1tpbmRleF0udHlwZSA9PT0gJ1RpbWVGaWx0ZXJJdGVtJykge1xuICAgICAgICBpZiAodHlwZW9mIGl0ZW1zW2luZGV4XS5zZWxlY3RlZF9vcHRpb25zID09PSAnc3RyaW5nJylcbiAgICAgICAgICBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9ucyA9IEpTT04ucGFyc2UoXG4gICAgICAgICAgICBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9ucyxcbiAgICAgICAgICApO1xuXG4gICAgICAgIGFjdGl2ZVRpbWVGaWx0ZXIgPSBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9uc1swXTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICB9O1xuXG4gIGNvbnN0IEV2ZW50c1BlclNpdGUgPSB1c2VNZW1vKFxuICAgICgpID0+IENvdW50RXZlbnRzUGVyU2l0ZUlEKGV2ZW50c19kYXRhLml0ZW1zKSxcbiAgICBbZXZlbnRzX2RhdGEuaXRlbXNdLFxuICApO1xuXG4gIGNvbnN0IE11c3RTZWVuU2l0ZXMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQpO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH0sIFtFdmVudHNQZXJTaXRlLCBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsIGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudF0pO1xuXG4gIGNvbnN0IG1hcHBlZFBvaW50cyA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLm1hcCgocG9pbnQpID0+IHtcbiAgICAgICAgY29uc3QgbmV3UG9pbnQgPSB7IC4uLnBvaW50IH07XG5cbiAgICAgICAgaWYgKCFFdmVudHNQZXJTaXRlW3BvaW50LmlkXSB8fCBpc0NvbGxlY3RvclVubW9uaXRvcmVkKHBvaW50KSkge1xuICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0pIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0gJiYgaXNDb2xsZWN0b3JVbm1vbml0b3JlZChwb2ludCkpIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbmV3UG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA9IEV2ZW50c1BlclNpdGVbcG9pbnQuaWRdIHx8IDA7XG4gICAgICAgIG5ld1BvaW50LmV2ZW50c1ZpZXdIb3ZlcmVkID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIG5ld1BvaW50O1xuICAgICAgfSksXG4gICAgW1xuICAgICAgcG9pbnRzX2RhdGEsXG4gICAgICBFdmVudHNQZXJTaXRlLFxuICAgICAgZXZlbnRzX2RhdGEuaXRlbXMsXG4gICAgICBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsXG4gICAgICBldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQsXG4gICAgXSxcbiAgKTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY29uc3QgbWFwcGVkRWRnZXMgPSBlZGdlc19kYXRhLml0ZW1zLmZpbHRlcihcbiAgICAoZWRnZSkgPT5cbiAgICAgIC8vIChOdW1iZXIoRXZlbnRzUGVyU2l0ZVtlZGdlLnNvdXJjZV9wb2ludF9pZF0pID4gMCB8fFxuICAgICAgLy8gTnVtYmVyKEV2ZW50c1BlclNpdGVbZWRnZS50YXJnZXRfcG9pbnRfaWRdKSA+IDApXG4gICAgICAvLyAgJiZcbiAgICAgIGVkZ2UuZGVzY2VuZGFudHNfaGFzX2RldmljZSA9PT0gdHJ1ZSB8fFxuICAgICAgZWRnZS5kZXNjZW5kYW50c19oYXNfbm9uZV9jb2xsZWN0b3JzID09PSB0cnVlLFxuICApO1xuXG4gIGNvbnN0IGFyZWFUb0NlbnRlckJ5ID0gdXNlTWVtbyhcbiAgICAoKSA9PiBnZXRBcmVhc1RvQ2VudGVyQnkoZ2xvYmFsX2RhdGEsIG1hcHBlZEFyZWFzKSxcbiAgICBbZ2xvYmFsX2RhdGE/LmFjdGl2ZUZpbHRlciwgbWFwcGVkQXJlYXNdLFxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpIHtcbiAgICAgIGNvbnN0IHBlcmlvZCA9IGdldEFjdGl2ZVRpbWVGaWx0ZXJQZXJpb2QoKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoUG9pbnRzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIHBlcmlvZCkpO1xuICAgICAgZGlzcGF0Y2goZmV0Y2hFZGdlcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICBkaXNwYXRjaChmZXRjaEFyZWFzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIHBlcmlvZCwgdHJ1ZSkpO1xuICAgIH1cbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlcl0pO1xuXG4gIHJldHVybiAoXG4gICAgPE1hcFxuICAgICAgey4uLlJlZHV4U3RhdGV9XG4gICAgICBhcmVhcz17bWFwcGVkQXJlYXN9XG4gICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICBwb2ludHM9e21hcHBlZFBvaW50c31cbiAgICAgIGVkZ2VzPXttYXBwZWRFZGdlc31cbiAgICAgIGV2ZW50cz17ZXZlbnRzX2RhdGEuaXRlbXN9XG4gICAgICBmb2N1c2VkRXZlbnQ9e2V2ZW50c19kYXRhLmZvY3VzZWRFdmVudH1cbiAgICAgIGhvdmVyZWRFdmVudD17ZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50fVxuICAgICAgYXJlYVRvQ2VudGVyQnk9e2FyZWFUb0NlbnRlckJ5fVxuICAgICAgaGlkZUVkZ2VzPXt0cnVlfVxuICAgICAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPXtmYWxzZX1cbiAgICAgIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXM9e3RydWV9XG4gICAgICBmb3JFdmVudHNWaWV3PXt0cnVlfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtcbiAgICAgICAgPERyYWdBbmREcm9wQXJlYSBmb2N1c2VkRXZlbnRQYXRoPXtldmVudHNfZGF0YT8uZm9jdXNlZEV2ZW50UGF0aHN9PlxuICAgICAgICAgIHt7XG4gICAgICAgICAgICBmbG9hdGluZ0dyYXBoOiAoXG4gICAgICAgICAgICAgIDxGbG9hdGluZ0dyYXBoXG4gICAgICAgICAgICAgICAgaXNPcGVuPXtnbG9iYWxfZGF0YT8uZmxvYXRpbmdHcmFwaC5vcGVufVxuICAgICAgICAgICAgICAgIGN1c3RvbUhpZ2hDaGFydE9wdGlvbnM9e2RuZEdyYXBoSW5pdE9wdGlvbnN9XG4gICAgICAgICAgICAgICAgY2xvc2VHcmFwaEhhbmRsZXI9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKGNsb3NlRmxvYXRpbmdHcmFwaCgpKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIGdsb2JhbERhdGFGbG9hdGluZ0dyYXBoPXtnbG9iYWxfZGF0YS5mbG9hdGluZ0dyYXBofVxuICAgICAgICAgICAgICAgIGV2ZW50X2RhdGE9e2V2ZW50c19kYXRhPy5mb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICAgICAgZ3JhcGhJZD17Z2xvYmFsX2RhdGE/LmZsb2F0aW5nR3JhcGg/LnBvaW50Py5pZH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgfX1cbiAgICAgICAgPC9EcmFnQW5kRHJvcEFyZWE+XG4gICAgICB9XG4gICAgPC9NYXA+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsMEJBQUEsR0FBQUYsT0FBQTtBQU1BLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFNBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLElBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLGNBQUEsR0FBQUMsc0JBQUEsQ0FBQVIsT0FBQTtBQUNBLElBQUFTLFdBQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLFNBQUEsR0FBQVYsT0FBQTtBQUNBLElBQUFXLGdCQUFBLEdBQUFILHNCQUFBLENBQUFSLE9BQUE7QUFDQSxJQUFBWSxXQUFBLEdBQUFaLE9BQUE7QUFBMkUsU0FBQWEseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLENBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQWYsd0JBQUFtQixHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsb0JBQUFBLEdBQUEsd0JBQUFBLEdBQUEsNEJBQUFFLE9BQUEsRUFBQUYsR0FBQSxVQUFBRyxLQUFBLEdBQUFSLHdCQUFBLENBQUFDLFdBQUEsT0FBQU8sS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUosR0FBQSxZQUFBRyxLQUFBLENBQUFFLEdBQUEsQ0FBQUwsR0FBQSxTQUFBTSxNQUFBLFdBQUFDLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLEdBQUEsSUFBQVgsR0FBQSxRQUFBVyxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFkLEdBQUEsRUFBQVcsR0FBQSxTQUFBSSxJQUFBLEdBQUFSLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVYsR0FBQSxFQUFBVyxHQUFBLGNBQUFJLElBQUEsS0FBQUEsSUFBQSxDQUFBVixHQUFBLElBQUFVLElBQUEsQ0FBQUMsR0FBQSxLQUFBUixNQUFBLENBQUFDLGNBQUEsQ0FBQUgsTUFBQSxFQUFBSyxHQUFBLEVBQUFJLElBQUEsWUFBQVQsTUFBQSxDQUFBSyxHQUFBLElBQUFYLEdBQUEsQ0FBQVcsR0FBQSxTQUFBTCxNQUFBLENBQUFKLE9BQUEsR0FBQUYsR0FBQSxNQUFBRyxLQUFBLElBQUFBLEtBQUEsQ0FBQWEsR0FBQSxDQUFBaEIsR0FBQSxFQUFBTSxNQUFBLFlBQUFBLE1BQUE7QUFJcEUsTUFBTVcsa0JBQXFELEdBQ2hFQyxLQUFLLElBQ0Y7RUFBQSxJQUFBQyxxQkFBQSxFQUFBQyxzQkFBQTtFQUNILE1BQU1DLFFBQVEsR0FBRyxJQUFBQyx1QkFBVyxFQUFDLENBQUM7RUFDOUIsTUFBTUMsVUFBVSxHQUFHLElBQUFDLHVCQUFXLEVBQUVDLEtBQUssSUFBS0EsS0FBSyxDQUFDO0VBQ2hELE1BQU07SUFBRUMsVUFBVTtJQUFFQyxXQUFXO0lBQUVDLFdBQVc7SUFBRUMsV0FBVztJQUFFQztFQUFXLENBQUMsR0FDckVQLFVBQVU7RUFFWixNQUFNUSx1QkFBdUIsR0FBRyxJQUFBQyxjQUFPLEVBQUMsTUFBTTtJQUFBLElBQUFDLHFCQUFBO0lBQzVDLE1BQU1DLE9BQU8sR0FBR1AsV0FBVyxhQUFYQSxXQUFXLHdCQUFBTSxxQkFBQSxHQUFYTixXQUFXLENBQUVRLFlBQVksY0FBQUYscUJBQUEsdUJBQXpCQSxxQkFBQSxDQUEyQkcsWUFBWTtJQUV2RCxJQUFJLENBQUNGLE9BQU8sSUFBSUEsT0FBTyxDQUFDRyxNQUFNLEdBQUcsQ0FBQyxFQUFFO01BQ2xDLE9BQU8sSUFBSTtJQUNiO0lBRUEsS0FBSyxJQUFJQyxLQUFLLEdBQUcsQ0FBQyxFQUFFQSxLQUFLLEdBQUdKLE9BQU8sQ0FBQ0csTUFBTSxFQUFFQyxLQUFLLEVBQUUsRUFBRTtNQUNuRCxJQUFJSixPQUFPLENBQUNJLEtBQUssQ0FBQyxDQUFDQyxJQUFJLEtBQUssZ0JBQWdCLEVBQUU7UUFDNUMsT0FBTyxLQUFLO01BQ2Q7SUFDRjtJQUVBLE9BQU8sSUFBSTtFQUNiLENBQUMsRUFBRSxDQUFDWixXQUFXLGFBQVhBLFdBQVcsdUJBQVhBLFdBQVcsQ0FBRVEsWUFBWSxDQUFDLENBQUM7RUFFL0IsTUFBTUssV0FBVyxHQUFHLElBQUFSLGNBQU8sRUFDekIsTUFBTSxJQUFBUyxzQ0FBVyxFQUFDZixVQUFVLEVBQUVLLHVCQUF1QixDQUFDLEVBQ3RELENBQUNMLFVBQVUsRUFBRUssdUJBQXVCLENBQ3RDLENBQUM7RUFFRCxNQUFNVyx5QkFBeUIsR0FBR0EsQ0FBQSxLQUFNO0lBQUEsSUFBQUMsc0JBQUE7SUFDdEMsTUFBTUMsS0FBSyxHQUFHakIsV0FBVyxhQUFYQSxXQUFXLHdCQUFBZ0Isc0JBQUEsR0FBWGhCLFdBQVcsQ0FBRVEsWUFBWSxjQUFBUSxzQkFBQSx1QkFBekJBLHNCQUFBLENBQTJCUCxZQUFZO0lBQ3JELElBQUlTLGdCQUFnQixHQUFHLElBQUk7SUFFM0IsSUFBSSxDQUFDRCxLQUFLLElBQUlBLEtBQUssQ0FBQ1AsTUFBTSxHQUFHLENBQUMsRUFBRTtNQUM5QixPQUFPUSxnQkFBZ0I7SUFDekI7SUFFQSxLQUFLLElBQUlQLEtBQUssR0FBRyxDQUFDLEVBQUVBLEtBQUssR0FBR00sS0FBSyxDQUFDUCxNQUFNLEVBQUVDLEtBQUssRUFBRSxFQUFFO01BQ2pELElBQUlNLEtBQUssQ0FBQ04sS0FBSyxDQUFDLENBQUNDLElBQUksS0FBSyxnQkFBZ0IsRUFBRTtRQUMxQyxJQUFJLE9BQU9LLEtBQUssQ0FBQ04sS0FBSyxDQUFDLENBQUNRLGdCQUFnQixLQUFLLFFBQVEsRUFDbkRGLEtBQUssQ0FBQ04sS0FBSyxDQUFDLENBQUNRLGdCQUFnQixHQUFHQyxJQUFJLENBQUNDLEtBQUssQ0FDeENKLEtBQUssQ0FBQ04sS0FBSyxDQUFDLENBQUNRLGdCQUNmLENBQUM7UUFFSEQsZ0JBQWdCLEdBQUdELEtBQUssQ0FBQ04sS0FBSyxDQUFDLENBQUNRLGdCQUFnQixDQUFDLENBQUMsQ0FBQztRQUNuRDtNQUNGO0lBQ0Y7SUFDQSxPQUFPRCxnQkFBZ0I7RUFDekIsQ0FBQztFQUVELE1BQU1JLGFBQWEsR0FBRyxJQUFBakIsY0FBTyxFQUMzQixNQUFNLElBQUFrQiwrQ0FBb0IsRUFBQ3JCLFdBQVcsQ0FBQ2UsS0FBSyxDQUFDLEVBQzdDLENBQUNmLFdBQVcsQ0FBQ2UsS0FBSyxDQUNwQixDQUFDO0VBRUQsTUFBTU8sYUFBYSxHQUFHLElBQUFuQixjQUFPLEVBQUMsTUFBTTtJQUNsQyxJQUFJSCxXQUFXLENBQUN1QixZQUFZLEVBQUU7TUFDNUIsT0FBTyxJQUFBQyx1REFBNEIsRUFBQ3hCLFdBQVcsQ0FBQ3VCLFlBQVksQ0FBQztJQUMvRCxDQUFDLE1BQU0sSUFBSXZCLFdBQVcsQ0FBQ3lCLFlBQVksRUFBRTtNQUNuQyxPQUFPLElBQUFELHVEQUE0QixFQUFDeEIsV0FBVyxDQUFDeUIsWUFBWSxDQUFDO0lBQy9EO0lBQ0EsT0FBTyxDQUFDLENBQUM7RUFDWCxDQUFDLEVBQUUsQ0FBQ0wsYUFBYSxFQUFFcEIsV0FBVyxDQUFDdUIsWUFBWSxFQUFFdkIsV0FBVyxDQUFDeUIsWUFBWSxDQUFDLENBQUM7RUFFdkUsTUFBTUMsWUFBWSxHQUFHLElBQUF2QixjQUFPLEVBQzFCLE1BQ0VKLFdBQVcsQ0FBQ2dCLEtBQUssQ0FBQ1ksR0FBRyxDQUFFQyxLQUFLLElBQUs7SUFDL0IsTUFBTUMsUUFBUSxHQUFHO01BQUUsR0FBR0Q7SUFBTSxDQUFDO0lBRTdCLElBQUksQ0FBQ1IsYUFBYSxDQUFDUSxLQUFLLENBQUNFLEVBQUUsQ0FBQyxJQUFJLElBQUFDLGtDQUFzQixFQUFDSCxLQUFLLENBQUMsRUFBRTtNQUM3REMsUUFBUSxDQUFDRyxJQUFJLEdBQUcsSUFBSTtJQUN0QjtJQUVBLElBQUloQyxXQUFXLENBQUN1QixZQUFZLEVBQUU7TUFDNUIsSUFBSSxDQUFDRCxhQUFhLENBQUNNLEtBQUssQ0FBQ0UsRUFBRSxDQUFDLEVBQUU7UUFDNUJELFFBQVEsQ0FBQ0csSUFBSSxHQUFHLElBQUk7TUFDdEIsQ0FBQyxNQUFNO1FBQ0xILFFBQVEsQ0FBQ0csSUFBSSxHQUFHLEtBQUs7TUFDdkI7SUFDRixDQUFDLE1BQU0sSUFBSWhDLFdBQVcsQ0FBQ3lCLFlBQVksRUFBRTtNQUNuQyxJQUFJLENBQUNILGFBQWEsQ0FBQ00sS0FBSyxDQUFDRSxFQUFFLENBQUMsSUFBSSxJQUFBQyxrQ0FBc0IsRUFBQ0gsS0FBSyxDQUFDLEVBQUU7UUFDN0RDLFFBQVEsQ0FBQ0csSUFBSSxHQUFHLElBQUk7TUFDdEIsQ0FBQyxNQUFNO1FBQ0xILFFBQVEsQ0FBQ0csSUFBSSxHQUFHLEtBQUs7TUFDdkI7SUFDRjtJQUVBSCxRQUFRLENBQUNJLG1CQUFtQixHQUFHYixhQUFhLENBQUNRLEtBQUssQ0FBQ0UsRUFBRSxDQUFDLElBQUksQ0FBQztJQUMzREQsUUFBUSxDQUFDSyxpQkFBaUIsR0FBRyxJQUFJO0lBQ2pDLE9BQU9MLFFBQVE7RUFDakIsQ0FBQyxDQUFDLEVBQ0osQ0FDRTlCLFdBQVcsRUFDWHFCLGFBQWEsRUFDYnBCLFdBQVcsQ0FBQ2UsS0FBSyxFQUNqQmYsV0FBVyxDQUFDdUIsWUFBWSxFQUN4QnZCLFdBQVcsQ0FBQ3lCLFlBQVksQ0FFNUIsQ0FBQzs7RUFFRDtFQUNBLE1BQU1VLFdBQVcsR0FBR2xDLFVBQVUsQ0FBQ2MsS0FBSyxDQUFDcUIsTUFBTSxDQUN4Q0MsSUFBSTtFQUNIO0VBQ0E7RUFDQTtFQUNBQSxJQUFJLENBQUNDLHNCQUFzQixLQUFLLElBQUksSUFDcENELElBQUksQ0FBQ0UsK0JBQStCLEtBQUssSUFDN0MsQ0FBQztFQUVELE1BQU1DLGNBQWMsR0FBRyxJQUFBckMsY0FBTyxFQUM1QixNQUFNLElBQUFzQyw2Q0FBa0IsRUFBQzNDLFdBQVcsRUFBRWEsV0FBVyxDQUFDLEVBQ2xELENBQUNiLFdBQVcsYUFBWEEsV0FBVyx1QkFBWEEsV0FBVyxDQUFFUSxZQUFZLEVBQUVLLFdBQVcsQ0FDekMsQ0FBQztFQUVELElBQUErQixnQkFBUyxFQUFDLE1BQU07SUFDZCxJQUFJNUMsV0FBVyxDQUFDNkMsZ0JBQWdCLEVBQUU7TUFDaEMsTUFBTUMsTUFBTSxHQUFHL0IseUJBQXlCLENBQUMsQ0FBQztNQUMxQ3JCLFFBQVEsQ0FBQyxJQUFBcUQscUJBQVcsRUFBQy9DLFdBQVcsQ0FBQzZDLGdCQUFnQixFQUFFQyxNQUFNLENBQUMsQ0FBQztNQUMzRHBELFFBQVEsQ0FBQyxJQUFBc0Qsb0JBQVUsRUFBQ2hELFdBQVcsQ0FBQzZDLGdCQUFnQixDQUFDLENBQUM7TUFDbERuRCxRQUFRLENBQUMsSUFBQXVELG1CQUFVLEVBQUNqRCxXQUFXLENBQUM2QyxnQkFBZ0IsRUFBRUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xFO0VBQ0YsQ0FBQyxFQUFFLENBQUM5QyxXQUFXLENBQUM2QyxnQkFBZ0IsRUFBRTdDLFdBQVcsQ0FBQ1EsWUFBWSxDQUFDLENBQUM7RUFFNUQsb0JBQ0V2RCxNQUFBLENBQUFzQixPQUFBLENBQUEyRSxhQUFBLENBQUN6RixJQUFBLENBQUEwRixHQUFHLEVBQUF0RSxNQUFBLENBQUF1RSxNQUFBLEtBQ0V4RCxVQUFVO0lBQ2R5RCxLQUFLLEVBQUV4QyxXQUFZO0lBQ25CYixXQUFXLEVBQUVBLFdBQVk7SUFDekJzRCxNQUFNLEVBQUUxQixZQUFhO0lBQ3JCMkIsS0FBSyxFQUFFbEIsV0FBWTtJQUNuQm1CLE1BQU0sRUFBRXRELFdBQVcsQ0FBQ2UsS0FBTTtJQUMxQlEsWUFBWSxFQUFFdkIsV0FBVyxDQUFDdUIsWUFBYTtJQUN2Q0UsWUFBWSxFQUFFekIsV0FBVyxDQUFDeUIsWUFBYTtJQUN2Q2UsY0FBYyxFQUFFQSxjQUFlO0lBQy9CZSxTQUFTLEVBQUUsSUFBSztJQUNoQkMsd0JBQXdCLEVBQUUsS0FBTTtJQUNoQ0MscUNBQXFDLEVBQUUsSUFBSztJQUM1Q0MsYUFBYSxFQUFFO0VBQUssR0FDaEJyRSxLQUFLLGdCQUdQdEMsTUFBQSxDQUFBc0IsT0FBQSxDQUFBMkUsYUFBQSxDQUFDcEYsZ0JBQUEsQ0FBQVMsT0FBZTtJQUFDc0YsZ0JBQWdCLEVBQUUzRCxXQUFXLGFBQVhBLFdBQVcsdUJBQVhBLFdBQVcsQ0FBRTREO0VBQWtCLEdBQy9EO0lBQ0NDLGFBQWEsZUFDWDlHLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTJFLGFBQUEsQ0FBQ3hGLGNBQUEsQ0FBQWEsT0FBYTtNQUNaeUYsTUFBTSxFQUFFaEUsV0FBVyxhQUFYQSxXQUFXLHVCQUFYQSxXQUFXLENBQUUrRCxhQUFhLENBQUNFLElBQUs7TUFDeENDLHNCQUFzQixFQUFFQywrQkFBb0I7TUFDNUNDLGlCQUFpQixFQUFFQSxDQUFBLEtBQU07UUFDdkIxRSxRQUFRLENBQUMsSUFBQTJFLDRCQUFrQixFQUFDLENBQUMsQ0FBQztNQUNoQyxDQUFFO01BQ0ZDLHVCQUF1QixFQUFFdEUsV0FBVyxDQUFDK0QsYUFBYztNQUNuRFEsVUFBVSxFQUFFckUsV0FBVyxhQUFYQSxXQUFXLHVCQUFYQSxXQUFXLENBQUV1QixZQUFhO01BQ3RDK0MsT0FBTyxFQUFFeEUsV0FBVyxhQUFYQSxXQUFXLHdCQUFBUixxQkFBQSxHQUFYUSxXQUFXLENBQUUrRCxhQUFhLGNBQUF2RSxxQkFBQSx3QkFBQUMsc0JBQUEsR0FBMUJELHFCQUFBLENBQTRCc0MsS0FBSyxjQUFBckMsc0JBQUEsdUJBQWpDQSxzQkFBQSxDQUFtQ3VDO0lBQUcsQ0FDaEQ7RUFFTCxDQUNlLENBRWhCLENBQUM7QUFFVixDQUFDO0FBQUN5QyxPQUFBLENBQUFuRixrQkFBQSxHQUFBQSxrQkFBQSJ9
152
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzIiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfYWN0aW9uczMiLCJfTWFwIiwiX0Zsb2F0aW5nR3JhcGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0dyYXBoVXRpbHMiLCJfYWN0aW9uczQiLCJfRHJhZ0FuZERyb3BBcmVhIiwiX0V2ZW50VXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkV2ZW50c01hcENvbnRhaW5lciIsInByb3BzIiwiX2dsb2JhbF9kYXRhJGZsb2F0aW5nIiwiX2dsb2JhbF9kYXRhJGZsb2F0aW5nMiIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImFyZWFzX2RhdGEiLCJnbG9iYWxfZGF0YSIsInBvaW50c19kYXRhIiwiZXZlbnRzX2RhdGEiLCJlZGdlc19kYXRhIiwiaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQiLCJ1c2VNZW1vIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpIiwiZmlsdGVycyIsImFjdGl2ZUZpbHRlciIsImZpbHRlcl9pdGVtcyIsImxlbmd0aCIsImluZGV4IiwidHlwZSIsIm1hcHBlZEFyZWFzIiwiYXJlYXNNYXBwZXIiLCJnZXRBY3RpdmVUaW1lRmlsdGVyUGVyaW9kIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpMiIsIml0ZW1zIiwiYWN0aXZlVGltZUZpbHRlciIsInNlbGVjdGVkX29wdGlvbnMiLCJKU09OIiwicGFyc2UiLCJFdmVudHNQZXJTaXRlIiwiQ291bnRFdmVudHNQZXJTaXRlSUQiLCJNdXN0U2VlblNpdGVzIiwiZm9jdXNlZEV2ZW50IiwiZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyIsImhvdmVyZWRFdmVudCIsIm1hcHBlZFBvaW50cyIsIm1hcCIsInBvaW50IiwibmV3UG9pbnQiLCJfb2JqZWN0U3ByZWFkMiIsImlkIiwiaXNDb2xsZWN0b3JVbm1vbml0b3JlZCIsImhpZGUiLCJyZWxhdGVkRXZlbnRzQW1vdW50IiwiZXZlbnRzVmlld0hvdmVyZWQiLCJtYXBwZWRFZGdlcyIsImZpbHRlciIsImVkZ2UiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwiZGVzY2VuZGFudHNfaGFzX25vbmVfY29sbGVjdG9ycyIsImFyZWFUb0NlbnRlckJ5IiwiZ2V0QXJlYXNUb0NlbnRlckJ5IiwidXNlRWZmZWN0Iiwid2F0ZXJBdXRob3JpdHlJZCIsInBlcmlvZCIsImZldGNoUG9pbnRzIiwiZmV0Y2hFZGdlcyIsImZldGNoQXJlYXMiLCJjcmVhdGVFbGVtZW50IiwiTWFwIiwiYXNzaWduIiwiYXJlYXMiLCJwb2ludHMiLCJlZGdlcyIsImV2ZW50cyIsImhpZGVFZGdlcyIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsImluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMiLCJmb3JFdmVudHNWaWV3IiwiZm9jdXNlZEV2ZW50UGF0aCIsImZvY3VzZWRFdmVudFBhdGhzIiwiZmxvYXRpbmdHcmFwaCIsImlzT3BlbiIsIm9wZW4iLCJjdXN0b21IaWdoQ2hhcnRPcHRpb25zIiwiZG5kR3JhcGhJbml0T3B0aW9ucyIsImNsb3NlR3JhcGhIYW5kbGVyIiwiY2xvc2VGbG9hdGluZ0dyYXBoIiwiZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGgiLCJldmVudF9kYXRhIiwiZ3JhcGhJZCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNNYXBDb250YWluZXIvRXZlbnRzTWFwQ29udGFpbmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIENvdW50RXZlbnRzUGVyU2l0ZUlELFxuICBnZXRBcmVhc1RvQ2VudGVyQnksXG4gIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMsXG59IGZyb20gJ3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzJztcbmltcG9ydCB7IGZldGNoQXJlYXMgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEVkZ2VzIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgRmxvYXRpbmdHcmFwaCBmcm9tICdzcmMvcGFnZXMvRXZlbnRzUGFnZS9GbG9hdGluZ0dyYXBoL0Zsb2F0aW5nR3JhcGgnO1xuaW1wb3J0IHsgZG5kR3JhcGhJbml0T3B0aW9ucyB9IGZyb20gJ3NyYy9XaWRnZXRzL01hcC9HcmFwaFV0aWxzJztcbmltcG9ydCB7IGNsb3NlRmxvYXRpbmdHcmFwaCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgRHJhZ0FuZERyb3BBcmVhIGZyb20gJy4uL0RyYWdBbmREcm9wQXJlYSc7XG5pbXBvcnQgeyBpc0NvbGxlY3RvclVubW9uaXRvcmVkIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL2V2ZW50cy9FdmVudFV0aWxzJztcbmludGVyZmFjZSBFdmVudHNNYXBDb250YWluZXJQcm9wcyB7XG4gIHNob3dTZWNvbmRNYXA6IGJvb2xlYW47XG59XG5leHBvcnQgY29uc3QgRXZlbnRzTWFwQ29udGFpbmVyOiBSZWFjdC5GQzxFdmVudHNNYXBDb250YWluZXJQcm9wcz4gPSAoXG4gIHByb3BzLFxuKSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEsIGdsb2JhbF9kYXRhLCBwb2ludHNfZGF0YSwgZXZlbnRzX2RhdGEsIGVkZ2VzX2RhdGEgfSA9XG4gICAgUmVkdXhTdGF0ZTtcblxuICBjb25zdCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyPy5maWx0ZXJfaXRlbXM7XG5cbiAgICBpZiAoIWZpbHRlcnMgfHwgZmlsdGVycy5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZmlsdGVycy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChmaWx0ZXJzW2luZGV4XS50eXBlID09PSAnVGltZUZpbHRlckl0ZW0nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSwgW2dsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXJdKTtcblxuICBjb25zdCBtYXBwZWRBcmVhcyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gYXJlYXNNYXBwZXIoYXJlYXNfZGF0YSwgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQpLFxuICAgIFthcmVhc19kYXRhLCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0QWN0aXZlVGltZUZpbHRlclBlcmlvZCA9ICgpID0+IHtcbiAgICBjb25zdCBpdGVtcyA9IGdsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXI/LmZpbHRlcl9pdGVtcztcbiAgICBsZXQgYWN0aXZlVGltZUZpbHRlciA9ICcxbSc7XG5cbiAgICBpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA8IDEpIHtcbiAgICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICAgIH1cblxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBpdGVtcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChpdGVtc1tpbmRleF0udHlwZSA9PT0gJ1RpbWVGaWx0ZXJJdGVtJykge1xuICAgICAgICBpZiAodHlwZW9mIGl0ZW1zW2luZGV4XS5zZWxlY3RlZF9vcHRpb25zID09PSAnc3RyaW5nJylcbiAgICAgICAgICBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9ucyA9IEpTT04ucGFyc2UoXG4gICAgICAgICAgICBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9ucyxcbiAgICAgICAgICApO1xuXG4gICAgICAgIGFjdGl2ZVRpbWVGaWx0ZXIgPSBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9uc1swXTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICB9O1xuXG4gIGNvbnN0IEV2ZW50c1BlclNpdGUgPSB1c2VNZW1vKFxuICAgICgpID0+IENvdW50RXZlbnRzUGVyU2l0ZUlEKGV2ZW50c19kYXRhLml0ZW1zKSxcbiAgICBbZXZlbnRzX2RhdGEuaXRlbXNdLFxuICApO1xuXG4gIGNvbnN0IE11c3RTZWVuU2l0ZXMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQpO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH0sIFtFdmVudHNQZXJTaXRlLCBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsIGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudF0pO1xuXG4gIGNvbnN0IG1hcHBlZFBvaW50cyA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLm1hcCgocG9pbnQpID0+IHtcbiAgICAgICAgY29uc3QgbmV3UG9pbnQgPSB7IC4uLnBvaW50IH07XG5cbiAgICAgICAgaWYgKCFFdmVudHNQZXJTaXRlW3BvaW50LmlkXSB8fCBpc0NvbGxlY3RvclVubW9uaXRvcmVkKHBvaW50KSkge1xuICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0pIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0gJiYgaXNDb2xsZWN0b3JVbm1vbml0b3JlZChwb2ludCkpIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbmV3UG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA9IEV2ZW50c1BlclNpdGVbcG9pbnQuaWRdIHx8IDA7XG4gICAgICAgIG5ld1BvaW50LmV2ZW50c1ZpZXdIb3ZlcmVkID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIG5ld1BvaW50O1xuICAgICAgfSksXG4gICAgW1xuICAgICAgcG9pbnRzX2RhdGEsXG4gICAgICBFdmVudHNQZXJTaXRlLFxuICAgICAgZXZlbnRzX2RhdGEuaXRlbXMsXG4gICAgICBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsXG4gICAgICBldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQsXG4gICAgXSxcbiAgKTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY29uc3QgbWFwcGVkRWRnZXMgPSBlZGdlc19kYXRhLml0ZW1zLmZpbHRlcihcbiAgICAoZWRnZSkgPT5cbiAgICAgIC8vIChOdW1iZXIoRXZlbnRzUGVyU2l0ZVtlZGdlLnNvdXJjZV9wb2ludF9pZF0pID4gMCB8fFxuICAgICAgLy8gTnVtYmVyKEV2ZW50c1BlclNpdGVbZWRnZS50YXJnZXRfcG9pbnRfaWRdKSA+IDApXG4gICAgICAvLyAgJiZcbiAgICAgIGVkZ2UuZGVzY2VuZGFudHNfaGFzX2RldmljZSA9PT0gdHJ1ZSB8fFxuICAgICAgZWRnZS5kZXNjZW5kYW50c19oYXNfbm9uZV9jb2xsZWN0b3JzID09PSB0cnVlLFxuICApO1xuXG4gIGNvbnN0IGFyZWFUb0NlbnRlckJ5ID0gdXNlTWVtbyhcbiAgICAoKSA9PiBnZXRBcmVhc1RvQ2VudGVyQnkoZ2xvYmFsX2RhdGEsIG1hcHBlZEFyZWFzKSxcbiAgICBbZ2xvYmFsX2RhdGE/LmFjdGl2ZUZpbHRlciwgbWFwcGVkQXJlYXNdLFxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpIHtcbiAgICAgIGNvbnN0IHBlcmlvZCA9IGdldEFjdGl2ZVRpbWVGaWx0ZXJQZXJpb2QoKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoUG9pbnRzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIHBlcmlvZCkpO1xuICAgICAgZGlzcGF0Y2goZmV0Y2hFZGdlcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICBkaXNwYXRjaChmZXRjaEFyZWFzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIHBlcmlvZCwgdHJ1ZSkpO1xuICAgIH1cbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlcl0pO1xuXG4gIHJldHVybiAoXG4gICAgPE1hcFxuICAgICAgey4uLlJlZHV4U3RhdGV9XG4gICAgICBhcmVhcz17bWFwcGVkQXJlYXN9XG4gICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICBwb2ludHM9e21hcHBlZFBvaW50c31cbiAgICAgIGVkZ2VzPXttYXBwZWRFZGdlc31cbiAgICAgIGV2ZW50cz17ZXZlbnRzX2RhdGEuaXRlbXN9XG4gICAgICBmb2N1c2VkRXZlbnQ9e2V2ZW50c19kYXRhLmZvY3VzZWRFdmVudH1cbiAgICAgIGhvdmVyZWRFdmVudD17ZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50fVxuICAgICAgYXJlYVRvQ2VudGVyQnk9e2FyZWFUb0NlbnRlckJ5fVxuICAgICAgaGlkZUVkZ2VzPXt0cnVlfVxuICAgICAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPXtmYWxzZX1cbiAgICAgIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXM9e3RydWV9XG4gICAgICBmb3JFdmVudHNWaWV3PXt0cnVlfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtcbiAgICAgICAgPERyYWdBbmREcm9wQXJlYSBmb2N1c2VkRXZlbnRQYXRoPXtldmVudHNfZGF0YT8uZm9jdXNlZEV2ZW50UGF0aHN9PlxuICAgICAgICAgIHt7XG4gICAgICAgICAgICBmbG9hdGluZ0dyYXBoOiAoXG4gICAgICAgICAgICAgIDxGbG9hdGluZ0dyYXBoXG4gICAgICAgICAgICAgICAgaXNPcGVuPXtnbG9iYWxfZGF0YT8uZmxvYXRpbmdHcmFwaC5vcGVufVxuICAgICAgICAgICAgICAgIGN1c3RvbUhpZ2hDaGFydE9wdGlvbnM9e2RuZEdyYXBoSW5pdE9wdGlvbnN9XG4gICAgICAgICAgICAgICAgY2xvc2VHcmFwaEhhbmRsZXI9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKGNsb3NlRmxvYXRpbmdHcmFwaCgpKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIGdsb2JhbERhdGFGbG9hdGluZ0dyYXBoPXtnbG9iYWxfZGF0YS5mbG9hdGluZ0dyYXBofVxuICAgICAgICAgICAgICAgIGV2ZW50X2RhdGE9e2V2ZW50c19kYXRhPy5mb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICAgICAgZ3JhcGhJZD17Z2xvYmFsX2RhdGE/LmZsb2F0aW5nR3JhcGg/LnBvaW50Py5pZH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgfX1cbiAgICAgICAgPC9EcmFnQW5kRHJvcEFyZWE+XG4gICAgICB9XG4gICAgPC9NYXA+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSwwQkFBQSxHQUFBRixPQUFBO0FBTUEsSUFBQUcsUUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksU0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssU0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sSUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sY0FB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
@@ -1,46 +1,58 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.getFocusedEventMustSeenSites = exports.getAreasToCenterBy = exports.areasMapper = exports.CountEventsPerSiteID = void 0;
7
- const CountEventsPerSiteID = events => {
8
- let eventsPerSite = {};
9
- events.reduce((EventsPerSite, event) => {
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
9
+ var CountEventsPerSiteID = function CountEventsPerSiteID(events) {
10
+ var eventsPerSite = {};
11
+ events.reduce(function (EventsPerSite, event) {
10
12
  eventsPerSite = event.point_id__events;
11
13
  return event.point_id__events;
12
14
  }, eventsPerSite);
13
15
  return eventsPerSite;
14
16
  };
15
17
  exports.CountEventsPerSiteID = CountEventsPerSiteID;
16
- const getFocusedEventMustSeenSites = focusedEvent => {
17
- const points_ids = {};
18
+ var getFocusedEventMustSeenSites = function getFocusedEventMustSeenSites(focusedEvent) {
19
+ var points_ids = {};
18
20
  if (focusedEvent) {
19
- focusedEvent.observations.forEach(observation => points_ids[observation.point_id] = true);
21
+ focusedEvent.observations.forEach(function (observation) {
22
+ return points_ids[observation.point_id] = true;
23
+ });
20
24
  }
21
25
  return points_ids;
22
26
  };
23
27
  exports.getFocusedEventMustSeenSites = getFocusedEventMustSeenSites;
24
- const getAreasToCenterBy = (global_data, mappedAreas) => {
28
+ var getAreasToCenterBy = function getAreasToCenterBy(global_data, mappedAreas) {
25
29
  var _global_data$activeFi;
26
- const filters = global_data === null || global_data === void 0 ? void 0 : (_global_data$activeFi = global_data.activeFilter) === null || _global_data$activeFi === void 0 ? void 0 : _global_data$activeFi.filter_items;
30
+ var filters = global_data === null || global_data === void 0 ? void 0 : (_global_data$activeFi = global_data.activeFilter) === null || _global_data$activeFi === void 0 ? void 0 : _global_data$activeFi.filter_items;
27
31
  if (!filters || filters.length < 1) {
28
32
  return null;
29
33
  }
30
- const areaFilter = filters.find(filter => filter.type === 'AreaFilterItem');
34
+ var areaFilter = filters.find(function (filter) {
35
+ return filter.type === 'AreaFilterItem';
36
+ });
31
37
  if (areaFilter && areaFilter.selected_options.length > 0) {
32
- const areaIDs = areaFilter.selected_options.map(item => Number(item));
33
- const areas = mappedAreas.filter(Area => areaIDs.includes(Area.area_id));
34
- return areas === null || areas === void 0 ? void 0 : areas.map(area => area.shape_data).flat();
38
+ var areaIDs = areaFilter.selected_options.map(function (item) {
39
+ return Number(item);
40
+ });
41
+ var areas = mappedAreas.filter(function (Area) {
42
+ return areaIDs.includes(Area.area_id);
43
+ });
44
+ return areas === null || areas === void 0 ? void 0 : areas.map(function (area) {
45
+ return area.shape_data;
46
+ }).flat();
35
47
  }
36
- return mappedAreas === null || mappedAreas === void 0 ? void 0 : mappedAreas.map(area => area.shape_data).flat();
48
+ return mappedAreas === null || mappedAreas === void 0 ? void 0 : mappedAreas.map(function (area) {
49
+ return area.shape_data;
50
+ }).flat();
37
51
  };
38
52
  exports.getAreasToCenterBy = getAreasToCenterBy;
39
- const areasMapper = (areas_data, isTimeFilterNotSelected) => {
40
- return areas_data.newAreas.map(area => {
41
- const newArea = {
42
- ...area
43
- };
53
+ var areasMapper = function areasMapper(areas_data, isTimeFilterNotSelected) {
54
+ return areas_data.newAreas.map(function (area) {
55
+ var newArea = (0, _objectSpread2.default)({}, area);
44
56
  newArea.showColorOnlyInBorders = true;
45
57
  // if (isTimeFilterNotSelected) {
46
58
  // newArea.color = '#7f7f7f';
@@ -49,4 +61,4 @@ const areasMapper = (areas_data, isTimeFilterNotSelected) => {
49
61
  });
50
62
  };
51
63
  exports.areasMapper = areasMapper;
52
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb3VudEV2ZW50c1BlclNpdGVJRCIsImV2ZW50cyIsImV2ZW50c1BlclNpdGUiLCJyZWR1Y2UiLCJFdmVudHNQZXJTaXRlIiwiZXZlbnQiLCJwb2ludF9pZF9fZXZlbnRzIiwiZXhwb3J0cyIsImdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMiLCJmb2N1c2VkRXZlbnQiLCJwb2ludHNfaWRzIiwib2JzZXJ2YXRpb25zIiwiZm9yRWFjaCIsIm9ic2VydmF0aW9uIiwicG9pbnRfaWQiLCJnZXRBcmVhc1RvQ2VudGVyQnkiLCJnbG9iYWxfZGF0YSIsIm1hcHBlZEFyZWFzIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpIiwiZmlsdGVycyIsImFjdGl2ZUZpbHRlciIsImZpbHRlcl9pdGVtcyIsImxlbmd0aCIsImFyZWFGaWx0ZXIiLCJmaW5kIiwiZmlsdGVyIiwidHlwZSIsInNlbGVjdGVkX29wdGlvbnMiLCJhcmVhSURzIiwibWFwIiwiaXRlbSIsIk51bWJlciIsImFyZWFzIiwiQXJlYSIsImluY2x1ZGVzIiwiYXJlYV9pZCIsImFyZWEiLCJzaGFwZV9kYXRhIiwiZmxhdCIsImFyZWFzTWFwcGVyIiwiYXJlYXNfZGF0YSIsImlzVGltZUZpbHRlck5vdFNlbGVjdGVkIiwibmV3QXJlYXMiLCJuZXdBcmVhIiwic2hvd0NvbG9yT25seUluQm9yZGVycyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgSUdsb2JhbFN0YXRlIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9tb2RlbHMvSUdsb2JhbFN0YXRlJztcblxudHlwZSBldmVudHNQZXJTaXRlVHlwZSA9IHsgW2tleTogbnVtYmVyXTogbnVtYmVyIH07XG5jb25zdCBDb3VudEV2ZW50c1BlclNpdGVJRCA9IChldmVudHM6IElFdmVudFtdKTogZXZlbnRzUGVyU2l0ZVR5cGUgPT4ge1xuICBsZXQgZXZlbnRzUGVyU2l0ZSA9IHt9IGFzIGV2ZW50c1BlclNpdGVUeXBlO1xuXG4gIGV2ZW50cy5yZWR1Y2UoKEV2ZW50c1BlclNpdGUsIGV2ZW50KSA9PiB7XG4gICAgZXZlbnRzUGVyU2l0ZSA9IGV2ZW50LnBvaW50X2lkX19ldmVudHM7XG4gICAgcmV0dXJuIGV2ZW50LnBvaW50X2lkX19ldmVudHM7XG4gIH0sIGV2ZW50c1BlclNpdGUpO1xuXG4gIHJldHVybiBldmVudHNQZXJTaXRlO1xufTtcblxuY29uc3QgZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyA9IChcbiAgZm9jdXNlZEV2ZW50OiBJRXZlbnQgfCBudWxsLFxuKTogeyBba2V5OiBudW1iZXJdOiBib29sZWFuIH0gPT4ge1xuICBjb25zdCBwb2ludHNfaWRzID0ge30gYXMgeyBba2V5OiBudW1iZXJdOiBib29sZWFuIH07XG4gIGlmIChmb2N1c2VkRXZlbnQpIHtcbiAgICBmb2N1c2VkRXZlbnQub2JzZXJ2YXRpb25zLmZvckVhY2goXG4gICAgICAob2JzZXJ2YXRpb24pID0+IChwb2ludHNfaWRzW29ic2VydmF0aW9uLnBvaW50X2lkXSA9IHRydWUpLFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIHBvaW50c19pZHM7XG59O1xuXG5jb25zdCBnZXRBcmVhc1RvQ2VudGVyQnkgPSAoXG4gIGdsb2JhbF9kYXRhOiBJR2xvYmFsU3RhdGUsXG4gIG1hcHBlZEFyZWFzOiBJQXJlYVtdLFxuKSA9PiB7XG4gIGNvbnN0IGZpbHRlcnMgPSBnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyPy5maWx0ZXJfaXRlbXM7XG5cbiAgaWYgKCFmaWx0ZXJzIHx8IGZpbHRlcnMubGVuZ3RoIDwgMSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgYXJlYUZpbHRlciA9IGZpbHRlcnMuZmluZCgoZmlsdGVyKSA9PiBmaWx0ZXIudHlwZSA9PT0gJ0FyZWFGaWx0ZXJJdGVtJyk7XG5cbiAgaWYgKGFyZWFGaWx0ZXIgJiYgYXJlYUZpbHRlci5zZWxlY3RlZF9vcHRpb25zLmxlbmd0aCA+IDApIHtcbiAgICBjb25zdCBhcmVhSURzID0gYXJlYUZpbHRlci5zZWxlY3RlZF9vcHRpb25zLm1hcCgoaXRlbSkgPT4gTnVtYmVyKGl0ZW0pKTtcbiAgICBjb25zdCBhcmVhcyA9IG1hcHBlZEFyZWFzLmZpbHRlcigoQXJlYSkgPT4gYXJlYUlEcy5pbmNsdWRlcyhBcmVhLmFyZWFfaWQpKTtcblxuICAgIHJldHVybiBhcmVhcz8ubWFwKChhcmVhKSA9PiBhcmVhLnNoYXBlX2RhdGEpLmZsYXQoKTtcbiAgfVxuXG4gIHJldHVybiBtYXBwZWRBcmVhcz8ubWFwKChhcmVhKSA9PiBhcmVhLnNoYXBlX2RhdGEpLmZsYXQoKTtcbn07XG5cbmNvbnN0IGFyZWFzTWFwcGVyID0gKGFyZWFzX2RhdGEsIGlzVGltZUZpbHRlck5vdFNlbGVjdGVkKSA9PiB7XG4gIHJldHVybiBhcmVhc19kYXRhLm5ld0FyZWFzLm1hcCgoYXJlYSkgPT4ge1xuICAgIGNvbnN0IG5ld0FyZWEgPSB7IC4uLmFyZWEgfTtcbiAgICBuZXdBcmVhLnNob3dDb2xvck9ubHlJbkJvcmRlcnMgPSB0cnVlO1xuICAgIC8vIGlmIChpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCkge1xuICAgIC8vICAgbmV3QXJlYS5jb2xvciA9ICcjN2Y3ZjdmJztcbiAgICAvLyB9XG4gICAgcmV0dXJuIG5ld0FyZWE7XG4gIH0pO1xufTtcblxuZXhwb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIGdldEFyZWFzVG9DZW50ZXJCeSxcbiAgZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyxcbiAgQ291bnRFdmVudHNQZXJTaXRlSUQsXG59O1xuIl0sIm1hcHBpbmdzIjoi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
64
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb3VudEV2ZW50c1BlclNpdGVJRCIsImV2ZW50cyIsImV2ZW50c1BlclNpdGUiLCJyZWR1Y2UiLCJFdmVudHNQZXJTaXRlIiwiZXZlbnQiLCJwb2ludF9pZF9fZXZlbnRzIiwiZXhwb3J0cyIsImdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMiLCJmb2N1c2VkRXZlbnQiLCJwb2ludHNfaWRzIiwib2JzZXJ2YXRpb25zIiwiZm9yRWFjaCIsIm9ic2VydmF0aW9uIiwicG9pbnRfaWQiLCJnZXRBcmVhc1RvQ2VudGVyQnkiLCJnbG9iYWxfZGF0YSIsIm1hcHBlZEFyZWFzIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpIiwiZmlsdGVycyIsImFjdGl2ZUZpbHRlciIsImZpbHRlcl9pdGVtcyIsImxlbmd0aCIsImFyZWFGaWx0ZXIiLCJmaW5kIiwiZmlsdGVyIiwidHlwZSIsInNlbGVjdGVkX29wdGlvbnMiLCJhcmVhSURzIiwibWFwIiwiaXRlbSIsIk51bWJlciIsImFyZWFzIiwiQXJlYSIsImluY2x1ZGVzIiwiYXJlYV9pZCIsImFyZWEiLCJzaGFwZV9kYXRhIiwiZmxhdCIsImFyZWFzTWFwcGVyIiwiYXJlYXNfZGF0YSIsImlzVGltZUZpbHRlck5vdFNlbGVjdGVkIiwibmV3QXJlYXMiLCJuZXdBcmVhIiwiX29iamVjdFNwcmVhZDIiLCJkZWZhdWx0Iiwic2hvd0NvbG9yT25seUluQm9yZGVycyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgSUdsb2JhbFN0YXRlIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9tb2RlbHMvSUdsb2JhbFN0YXRlJztcblxudHlwZSBldmVudHNQZXJTaXRlVHlwZSA9IHsgW2tleTogbnVtYmVyXTogbnVtYmVyIH07XG5jb25zdCBDb3VudEV2ZW50c1BlclNpdGVJRCA9IChldmVudHM6IElFdmVudFtdKTogZXZlbnRzUGVyU2l0ZVR5cGUgPT4ge1xuICBsZXQgZXZlbnRzUGVyU2l0ZSA9IHt9IGFzIGV2ZW50c1BlclNpdGVUeXBlO1xuXG4gIGV2ZW50cy5yZWR1Y2UoKEV2ZW50c1BlclNpdGUsIGV2ZW50KSA9PiB7XG4gICAgZXZlbnRzUGVyU2l0ZSA9IGV2ZW50LnBvaW50X2lkX19ldmVudHM7XG4gICAgcmV0dXJuIGV2ZW50LnBvaW50X2lkX19ldmVudHM7XG4gIH0sIGV2ZW50c1BlclNpdGUpO1xuXG4gIHJldHVybiBldmVudHNQZXJTaXRlO1xufTtcblxuY29uc3QgZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyA9IChcbiAgZm9jdXNlZEV2ZW50OiBJRXZlbnQgfCBudWxsLFxuKTogeyBba2V5OiBudW1iZXJdOiBib29sZWFuIH0gPT4ge1xuICBjb25zdCBwb2ludHNfaWRzID0ge30gYXMgeyBba2V5OiBudW1iZXJdOiBib29sZWFuIH07XG4gIGlmIChmb2N1c2VkRXZlbnQpIHtcbiAgICBmb2N1c2VkRXZlbnQub2JzZXJ2YXRpb25zLmZvckVhY2goXG4gICAgICAob2JzZXJ2YXRpb24pID0+IChwb2ludHNfaWRzW29ic2VydmF0aW9uLnBvaW50X2lkXSA9IHRydWUpLFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIHBvaW50c19pZHM7XG59O1xuXG5jb25zdCBnZXRBcmVhc1RvQ2VudGVyQnkgPSAoXG4gIGdsb2JhbF9kYXRhOiBJR2xvYmFsU3RhdGUsXG4gIG1hcHBlZEFyZWFzOiBJQXJlYVtdLFxuKSA9PiB7XG4gIGNvbnN0IGZpbHRlcnMgPSBnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyPy5maWx0ZXJfaXRlbXM7XG5cbiAgaWYgKCFmaWx0ZXJzIHx8IGZpbHRlcnMubGVuZ3RoIDwgMSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgYXJlYUZpbHRlciA9IGZpbHRlcnMuZmluZCgoZmlsdGVyKSA9PiBmaWx0ZXIudHlwZSA9PT0gJ0FyZWFGaWx0ZXJJdGVtJyk7XG5cbiAgaWYgKGFyZWFGaWx0ZXIgJiYgYXJlYUZpbHRlci5zZWxlY3RlZF9vcHRpb25zLmxlbmd0aCA+IDApIHtcbiAgICBjb25zdCBhcmVhSURzID0gYXJlYUZpbHRlci5zZWxlY3RlZF9vcHRpb25zLm1hcCgoaXRlbSkgPT4gTnVtYmVyKGl0ZW0pKTtcbiAgICBjb25zdCBhcmVhcyA9IG1hcHBlZEFyZWFzLmZpbHRlcigoQXJlYSkgPT4gYXJlYUlEcy5pbmNsdWRlcyhBcmVhLmFyZWFfaWQpKTtcblxuICAgIHJldHVybiBhcmVhcz8ubWFwKChhcmVhKSA9PiBhcmVhLnNoYXBlX2RhdGEpLmZsYXQoKTtcbiAgfVxuXG4gIHJldHVybiBtYXBwZWRBcmVhcz8ubWFwKChhcmVhKSA9PiBhcmVhLnNoYXBlX2RhdGEpLmZsYXQoKTtcbn07XG5cbmNvbnN0IGFyZWFzTWFwcGVyID0gKGFyZWFzX2RhdGEsIGlzVGltZUZpbHRlck5vdFNlbGVjdGVkKSA9PiB7XG4gIHJldHVybiBhcmVhc19kYXRhLm5ld0FyZWFzLm1hcCgoYXJlYSkgPT4ge1xuICAgIGNvbnN0IG5ld0FyZWEgPSB7IC4uLmFyZWEgfTtcbiAgICBuZXdBcmVhLnNob3dDb2xvck9ubHlJbkJvcmRlcnMgPSB0cnVlO1xuICAgIC8vIGlmIChpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCkge1xuICAgIC8vICAgbmV3QXJlYS5jb2xvciA9ICcjN2Y3ZjdmJztcbiAgICAvLyB9XG4gICAgcmV0dXJuIG5ld0FyZWE7XG4gIH0pO1xufTtcblxuZXhwb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIGdldEFyZWFzVG9DZW50ZXJCeSxcbiAgZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyxcbiAgQ291bnRFdmVudHNQZXJT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
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
@@ -11,12 +12,14 @@ var _reactRedux = require("react-redux");
11
12
  var _actions = require("store/context/actions");
12
13
  var _Body = _interopRequireDefault(require("./Body/Body"));
13
14
  var _Analytics = require("../../utilities/Analytics");
14
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
- 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; }
16
- const EventsPage = () => {
17
- const dispatch = (0, _reactRedux.useDispatch)();
18
- const waterAuthorityName = (0, _reactRedux.useSelector)(state => state.global_data.waterAuthorityName);
19
- (0, _react.useEffect)(() => {
15
+ 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); }
16
+ 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; }
17
+ var EventsPage = function EventsPage() {
18
+ var dispatch = (0, _reactRedux.useDispatch)();
19
+ var waterAuthorityName = (0, _reactRedux.useSelector)(function (state) {
20
+ return state.global_data.waterAuthorityName;
21
+ });
22
+ (0, _react.useEffect)(function () {
20
23
  (0, _Analytics.analyticsTrack)('Viewed Events Page', {
21
24
  utility_name: waterAuthorityName
22
25
  });
@@ -30,4 +33,4 @@ const EventsPage = () => {
30
33
  };
31
34
  var _default = EventsPage;
32
35
  exports.default = _default;
33
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfcmVhY3RSZWR1eCIsIl9hY3Rpb25zIiwiX0JvZHkiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0FuYWx5dGljcyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJFdmVudHNQYWdlIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIndhdGVyQXV0aG9yaXR5TmFtZSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJnbG9iYWxfZGF0YSIsInVzZUVmZmVjdCIsImFuYWx5dGljc1RyYWNrIiwidXRpbGl0eV9uYW1lIiwidXBkYXRlTmF2Q29udGV4dCIsIm5hbWUiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJjbGFzc05hbWUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNQYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ2Jvb3RzdHJhcC9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXBkYXRlTmF2Q29udGV4dCB9IGZyb20gJ3NyYy9zdG9yZS9jb250ZXh0L2FjdGlvbnMnO1xuaW1wb3J0IEJvZHkgZnJvbSAnLi9Cb2R5L0JvZHknO1xuaW1wb3J0IHsgYW5hbHl0aWNzVHJhY2sgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvQW5hbHl0aWNzJztcblxuY29uc3QgRXZlbnRzUGFnZTogUmVhY3QuRkMgPSAoKSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlOYW1lID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlKSA9PiBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eU5hbWUsXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBhbmFseXRpY3NUcmFjaygnVmlld2VkIEV2ZW50cyBQYWdlJywge1xuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gICAgZGlzcGF0Y2godXBkYXRlTmF2Q29udGV4dCh7IG5hbWU6ICdldmVudHNfdmlldycgfSkpO1xuICB9LCBbZGlzcGF0Y2hdKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImFwcC13cmFwcGVyXCI+XG4gICAgICAgIDxCb2R5IC8+XG4gICAgICA8L2Rpdj5cbiAgICA8Lz5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEV2ZW50c1BhZ2U7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQUEsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFFBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQU4sT0FBQTtBQUNBLElBQUFPLFVBQUEsR0FBQVAsT0FBQTtBQUEyRCxTQUFBUSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEsQ0FBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBUCx3QkFBQVcsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLG9CQUFBQSxHQUFBLHdCQUFBQSxHQUFBLDRCQUFBRSxPQUFBLEVBQUFGLEdBQUEsVUFBQUcsS0FBQSxHQUFBUix3QkFBQSxDQUFBQyxXQUFBLE9BQUFPLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFKLEdBQUEsWUFBQUcsS0FBQSxDQUFBRSxHQUFBLENBQUFMLEdBQUEsU0FBQU0sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFYLEdBQUEsUUFBQVcsR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZCxHQUFBLEVBQUFXLEdBQUEsU0FBQUksSUFBQSxHQUFBUixxQkFBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFWLEdBQUEsRUFBQVcsR0FBQSxjQUFBSSxJQUFBLEtBQUFBLElBQUEsQ0FBQVYsR0FBQSxJQUFBVSxJQUFBLENBQUFDLEdBQUEsS0FBQVIsTUFBQSxDQUFBQyxjQUFBLENBQUFILE1BQUEsRUFBQUssR0FBQSxFQUFBSSxJQUFBLFlBQUFULE1BQUEsQ0FBQUssR0FBQSxJQUFBWCxHQUFBLENBQUFXLEdBQUEsU0FBQUwsTUFBQSxDQUFBSixPQUFBLEdBQUFGLEdBQUEsTUFBQUcsS0FBQSxJQUFBQSxLQUFBLENBQUFhLEdBQUEsQ0FBQWhCLEdBQUEsRUFBQU0sTUFBQSxZQUFBQSxNQUFBO0FBRTNELE1BQU1XLFVBQW9CLEdBQUdBLENBQUEsS0FBTTtFQUNqQyxNQUFNQyxRQUFRLEdBQUcsSUFBQUMsdUJBQVcsRUFBQyxDQUFDO0VBQzlCLE1BQU1DLGtCQUFrQixHQUFHLElBQUFDLHVCQUFXLEVBQ25DQyxLQUFLLElBQUtBLEtBQUssQ0FBQ0MsV0FBVyxDQUFDSCxrQkFDL0IsQ0FBQztFQUVELElBQUFJLGdCQUFTLEVBQUMsTUFBTTtJQUNkLElBQUFDLHlCQUFjLEVBQUMsb0JBQW9CLEVBQUU7TUFDbkNDLFlBQVksRUFBRU47SUFDaEIsQ0FBQyxDQUFDO0lBQ0ZGLFFBQVEsQ0FBQyxJQUFBUyx5QkFBZ0IsRUFBQztNQUFFQyxJQUFJLEVBQUU7SUFBYyxDQUFDLENBQUMsQ0FBQztFQUNyRCxDQUFDLEVBQUUsQ0FBQ1YsUUFBUSxDQUFDLENBQUM7RUFFZCxvQkFDRTlCLE1BQUEsQ0FBQWMsT0FBQSxDQUFBMkIsYUFBQSxDQUFBekMsTUFBQSxDQUFBYyxPQUFBLENBQUE0QixRQUFBLHFCQUNFMUMsTUFBQSxDQUFBYyxPQUFBLENBQUEyQixhQUFBO0lBQUtFLFNBQVMsRUFBQztFQUFhLGdCQUMxQjNDLE1BQUEsQ0FBQWMsT0FBQSxDQUFBMkIsYUFBQSxDQUFDckMsS0FBQSxDQUFBVSxPQUFJLE1BQUUsQ0FDSixDQUNMLENBQUM7QUFFUCxDQUFDO0FBQUMsSUFBQThCLFFBQUEsR0FFYWYsVUFBVTtBQUFBZ0IsT0FBQSxDQUFBL0IsT0FBQSxHQUFBOEIsUUFBQSJ9
36
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfcmVhY3RSZWR1eCIsIl9hY3Rpb25zIiwiX0JvZHkiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0FuYWx5dGljcyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiRXZlbnRzUGFnZSIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJ3YXRlckF1dGhvcml0eU5hbWUiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiZ2xvYmFsX2RhdGEiLCJ1c2VFZmZlY3QiLCJhbmFseXRpY3NUcmFjayIsInV0aWxpdHlfbmFtZSIsInVwZGF0ZU5hdkNvbnRleHQiLCJuYW1lIiwiY3JlYXRlRWxlbWVudCIsIkZyYWdtZW50IiwiY2xhc3NOYW1lIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvRXZlbnRzUGFnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdib290c3RyYXAvZGlzdC9jc3MvYm9vdHN0cmFwLm1pbi5jc3MnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IHVwZGF0ZU5hdkNvbnRleHQgfSBmcm9tICdzcmMvc3RvcmUvY29udGV4dC9hY3Rpb25zJztcbmltcG9ydCBCb2R5IGZyb20gJy4vQm9keS9Cb2R5JztcbmltcG9ydCB7IGFuYWx5dGljc1RyYWNrIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL0FuYWx5dGljcyc7XG5cbmNvbnN0IEV2ZW50c1BhZ2U6IFJlYWN0LkZDID0gKCkgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5TmFtZSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlOYW1lLFxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYW5hbHl0aWNzVHJhY2soJ1ZpZXdlZCBFdmVudHMgUGFnZScsIHtcbiAgICAgIHV0aWxpdHlfbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIH0pO1xuICAgIGRpc3BhdGNoKHVwZGF0ZU5hdkNvbnRleHQoeyBuYW1lOiAnZXZlbnRzX3ZpZXcnIH0pKTtcbiAgfSwgW2Rpc3BhdGNoXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJhcHAtd3JhcHBlclwiPlxuICAgICAgICA8Qm9keSAvPlxuICAgICAgPC9kaXY+XG4gICAgPC8+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBFdmVudHNQYWdlO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBQSxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksUUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssS0FBQSxHQUFBQyxzQkFBQSxDQUFBTixPQUFBO0FBQ0EsSUFBQU8sVUFBQSxHQUFBUCxPQUFBO0FBQTJELFNBQUFRLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9B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
@@ -1,42 +1,48 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
8
11
  var _react = _interopRequireWildcard(require("react"));
9
12
  var _Graph = _interopRequireDefault(require("components/Graph"));
10
13
  require("./floatingGraphStyle.scss");
11
14
  var _highstock = _interopRequireDefault(require("highcharts/highstock"));
12
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (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
- const FloatingGraph = _ref => {
15
- let {
16
- isOpen,
17
- customHighChartOptions = {},
18
- globalDataFloatingGraph,
19
- event_data,
20
- closeGraphHandler
21
- } = _ref;
22
- const [minimized, setMinimized] = (0, _react.useState)(false);
15
+ 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); }
16
+ 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; }
17
+ var FloatingGraph = function FloatingGraph(_ref) {
18
+ var isOpen = _ref.isOpen,
19
+ _ref$customHighChartO = _ref.customHighChartOptions,
20
+ customHighChartOptions = _ref$customHighChartO === void 0 ? {} : _ref$customHighChartO,
21
+ globalDataFloatingGraph = _ref.globalDataFloatingGraph,
22
+ event_data = _ref.event_data,
23
+ closeGraphHandler = _ref.closeGraphHandler;
24
+ var _useState = (0, _react.useState)(false),
25
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
26
+ minimized = _useState2[0],
27
+ setMinimized = _useState2[1];
23
28
  _highstock.default.setOptions({
24
29
  lang: {
25
30
  rangeSelectorZoom: ''
26
31
  }
27
32
  });
28
- const graphTitle = isOpen ? globalDataFloatingGraph === null || globalDataFloatingGraph === void 0 ? void 0 : globalDataFloatingGraph.point.group.name : '';
29
- const matchGraph = () => {
33
+ var graphTitle = isOpen ? globalDataFloatingGraph === null || globalDataFloatingGraph === void 0 ? void 0 : globalDataFloatingGraph.point.group.name : '';
34
+ var matchGraph = function matchGraph() {
30
35
  var _observation, _observation2, _observation3;
31
- const timeGapFromEvent = 86400 * 31 * 2; // 2 months
32
- let graphData = {};
33
- let observation = globalDataFloatingGraph === null || globalDataFloatingGraph === void 0 ? void 0 : globalDataFloatingGraph.observation;
36
+ var timeGapFromEvent = 86400 * 31 * 2; // 2 months
37
+ var graphData = {};
38
+ var observation = globalDataFloatingGraph === null || globalDataFloatingGraph === void 0 ? void 0 : globalDataFloatingGraph.observation;
34
39
  graphData.pointId = ((_observation = observation) === null || _observation === void 0 ? void 0 : _observation.point_id) || (globalDataFloatingGraph === null || globalDataFloatingGraph === void 0 ? void 0 : globalDataFloatingGraph.point.id);
35
40
  if (!observation && (event_data === null || event_data === void 0 ? void 0 : event_data.observations)) {
36
- observation = event_data.observations.find(o => o.id === (event_data === null || event_data === void 0 ? void 0 : event_data.first_seen_observation_id));
41
+ observation = event_data.observations.find(function (o) {
42
+ return o.id === (event_data === null || event_data === void 0 ? void 0 : event_data.first_seen_observation_id);
43
+ });
37
44
  }
38
- graphData = {
39
- ...graphData,
45
+ graphData = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, graphData), {}, {
40
46
  plotFrom: ((_observation2 = observation) === null || _observation2 === void 0 ? void 0 : _observation2.start_time) || 0,
41
47
  plotTo: ((_observation3 = observation) === null || _observation3 === void 0 ? void 0 : _observation3.last_seen_time) || 0,
42
48
  startTime: observation.start_time - timeGapFromEvent,
@@ -44,23 +50,29 @@ const FloatingGraph = _ref => {
44
50
  noObservation: observation ? false : true,
45
51
  customHighChartOptions: customHighChartOptions,
46
52
  displayResetZoomButton: true
47
- };
53
+ });
48
54
  return /*#__PURE__*/_react.default.createElement(_Graph.default, graphData);
49
55
  };
50
- const minimizeGraphHandler = () => {
51
- setMinimized(prevState => !prevState);
56
+ var minimizeGraphHandler = function minimizeGraphHandler() {
57
+ setMinimized(function (prevState) {
58
+ return !prevState;
59
+ });
52
60
  };
53
61
  if (!isOpen) {
54
62
  return null;
55
63
  }
56
64
  return /*#__PURE__*/_react.default.createElement("div", {
57
- className: `floating-graph ${minimized ? 'minimized' : ''}`
65
+ className: "floating-graph ".concat(minimized ? 'minimized' : '')
58
66
  }, /*#__PURE__*/_react.default.createElement("div", {
59
67
  className: "floating-graph__close",
60
- onClick: () => closeGraphHandler()
68
+ onClick: function onClick() {
69
+ return closeGraphHandler();
70
+ }
61
71
  }), /*#__PURE__*/_react.default.createElement("div", {
62
72
  className: "floating-graph__minimize",
63
- onClick: () => minimizeGraphHandler()
73
+ onClick: function onClick() {
74
+ return minimizeGraphHandler();
75
+ }
64
76
  }), /*#__PURE__*/_react.default.createElement("div", {
65
77
  className: "graph-ttl"
66
78
  }, graphTitle), /*#__PURE__*/_react.default.createElement("div", {
@@ -69,4 +81,4 @@ const FloatingGraph = _ref => {
69
81
  };
70
82
  var _default = FloatingGraph;
71
83
  exports.default = _default;
72
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfR3JhcGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2hpZ2hzdG9jayIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJGbG9hdGluZ0dyYXBoIiwiX3JlZiIsImlzT3BlbiIsImN1c3RvbUhpZ2hDaGFydE9wdGlvbnMiLCJnbG9iYWxEYXRhRmxvYXRpbmdHcmFwaCIsImV2ZW50X2RhdGEiLCJjbG9zZUdyYXBoSGFuZGxlciIsIm1pbmltaXplZCIsInNldE1pbmltaXplZCIsInVzZVN0YXRlIiwiSGlnaGNoYXJ0cyIsInNldE9wdGlvbnMiLCJsYW5nIiwicmFuZ2VTZWxlY3Rvclpvb20iLCJncmFwaFRpdGxlIiwicG9pbnQiLCJncm91cCIsIm5hbWUiLCJtYXRjaEdyYXBoIiwiX29ic2VydmF0aW9uIiwiX29ic2VydmF0aW9uMiIsIl9vYnNlcnZhdGlvbjMiLCJ0aW1lR2FwRnJvbUV2ZW50IiwiZ3JhcGhEYXRhIiwib2JzZXJ2YXRpb24iLCJwb2ludElkIiwicG9pbnRfaWQiLCJpZCIsIm9ic2VydmF0aW9ucyIsImZpbmQiLCJvIiwiZmlyc3Rfc2Vlbl9vYnNlcnZhdGlvbl9pZCIsInBsb3RGcm9tIiwic3RhcnRfdGltZSIsInBsb3RUbyIsImxhc3Rfc2Vlbl90aW1lIiwic3RhcnRUaW1lIiwiZW5kVGltZSIsIm5vT2JzZXJ2YXRpb24iLCJkaXNwbGF5UmVzZXRab29tQnV0dG9uIiwiY3JlYXRlRWxlbWVudCIsIm1pbmltaXplR3JhcGhIYW5kbGVyIiwicHJldlN0YXRlIiwiY2xhc3NOYW1lIiwib25DbGljayIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL0Zsb2F0aW5nR3JhcGgvRmxvYXRpbmdHcmFwaC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IEdyYXBoIGZyb20gJ3NyYy9jb21wb25lbnRzL0dyYXBoJztcbmltcG9ydCAnLi9mbG9hdGluZ0dyYXBoU3R5bGUuc2Nzcyc7XG5pbXBvcnQgSGlnaGNoYXJ0cyBmcm9tICdoaWdoY2hhcnRzL2hpZ2hzdG9jayc7XG5cbnR5cGUgSVByb3BzID0ge1xuICBjdXN0b21IaWdoQ2hhcnRPcHRpb25zPzogSGlnaGNoYXJ0cy5PcHRpb25zO1xuICBnbG9iYWxEYXRhRmxvYXRpbmdHcmFwaD86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG4gIGV2ZW50X2RhdGE/OiBhbnk7XG4gIGNsb3NlR3JhcGhIYW5kbGVyOiBGdW5jdGlvbjtcbiAgZ3JhcGhJZDogc3RyaW5nO1xuICBpc09wZW4/OiBib29sZWFuO1xufTtcblxuY29uc3QgRmxvYXRpbmdHcmFwaDogUmVhY3QuRkM8SVByb3BzPiA9ICh7XG4gIGlzT3BlbixcbiAgY3VzdG9tSGlnaENoYXJ0T3B0aW9ucyA9IHt9LFxuICBnbG9iYWxEYXRhRmxvYXRpbmdHcmFwaCxcbiAgZXZlbnRfZGF0YSxcbiAgY2xvc2VHcmFwaEhhbmRsZXIsXG59KSA9PiB7XG4gIGNvbnN0IFttaW5pbWl6ZWQsIHNldE1pbmltaXplZF0gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gIEhpZ2hjaGFydHMuc2V0T3B0aW9ucyh7XG4gICAgbGFuZzoge1xuICAgICAgcmFuZ2VTZWxlY3Rvclpvb206ICcnLFxuICAgIH0sXG4gIH0pO1xuICBjb25zdCBncmFwaFRpdGxlID0gaXNPcGVuID8gZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGg/LnBvaW50Lmdyb3VwLm5hbWUgOiAnJztcblxuICBjb25zdCBtYXRjaEdyYXBoID0gKCkgPT4ge1xuICAgIGNvbnN0IHRpbWVHYXBGcm9tRXZlbnQgPSA4NjQwMCAqIDMxICogMjsgLy8gMiBtb250aHNcbiAgICBsZXQgZ3JhcGhEYXRhOiBhbnkgPSB7fTtcbiAgICBsZXQgb2JzZXJ2YXRpb24gPSBnbG9iYWxEYXRhRmxvYXRpbmdHcmFwaD8ub2JzZXJ2YXRpb247XG4gICAgZ3JhcGhEYXRhLnBvaW50SWQgPVxuICAgICAgb2JzZXJ2YXRpb24/LnBvaW50X2lkIHx8IGdsb2JhbERhdGFGbG9hdGluZ0dyYXBoPy5wb2ludC5pZDtcbiAgICBpZiAoIW9ic2VydmF0aW9uICYmIGV2ZW50X2RhdGE/Lm9ic2VydmF0aW9ucykge1xuICAgICAgb2JzZXJ2YXRpb24gPSBldmVudF9kYXRhLm9ic2VydmF0aW9ucy5maW5kKFxuICAgICAgICAobykgPT4gby5pZCA9PT0gZXZlbnRfZGF0YT8uZmlyc3Rfc2Vlbl9vYnNlcnZhdGlvbl9pZCxcbiAgICAgICk7XG4gICAgfVxuICAgIGdyYXBoRGF0YSA9IHtcbiAgICAgIC4uLmdyYXBoRGF0YSxcbiAgICAgIHBsb3RGcm9tOiBvYnNlcnZhdGlvbj8uc3RhcnRfdGltZSB8fCAwLFxuICAgICAgcGxvdFRvOiBvYnNlcnZhdGlvbj8ubGFzdF9zZWVuX3RpbWUgfHwgMCxcbiAgICAgIHN0YXJ0VGltZTogb2JzZXJ2YXRpb24uc3RhcnRfdGltZSAtIHRpbWVHYXBGcm9tRXZlbnQsXG4gICAgICBlbmRUaW1lOiBvYnNlcnZhdGlvbi5sYXN0X3NlZW5fdGltZSArIHRpbWVHYXBGcm9tRXZlbnQsXG4gICAgICBub09ic2VydmF0aW9uOiBvYnNlcnZhdGlvbiA/IGZhbHNlIDogdHJ1ZSxcbiAgICAgIGN1c3RvbUhpZ2hDaGFydE9wdGlvbnM6IGN1c3RvbUhpZ2hDaGFydE9wdGlvbnMsXG4gICAgICBkaXNwbGF5UmVzZXRab29tQnV0dG9uOiB0cnVlLFxuICAgIH07XG4gICAgcmV0dXJuIDxHcmFwaCB7Li4uZ3JhcGhEYXRhfSAvPjtcbiAgfTtcbiAgY29uc3QgbWluaW1pemVHcmFwaEhhbmRsZXIgPSAoKSA9PiB7XG4gICAgc2V0TWluaW1pemVkKChwcmV2U3RhdGUpID0+ICFwcmV2U3RhdGUpO1xuICB9O1xuXG4gIGlmICghaXNPcGVuKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17YGZsb2F0aW5nLWdyYXBoICR7bWluaW1pemVkID8gJ21pbmltaXplZCcgOiAnJ31gfT5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPVwiZmxvYXRpbmctZ3JhcGhfX2Nsb3NlXCJcbiAgICAgICAgb25DbGljaz17KCkgPT4gY2xvc2VHcmFwaEhhbmRsZXIoKX1cbiAgICAgID48L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPVwiZmxvYXRpbmctZ3JhcGhfX21pbmltaXplXCJcbiAgICAgICAgb25DbGljaz17KCkgPT4gbWluaW1pemVHcmFwaEhhbmRsZXIoKX1cbiAgICAgID48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZ3JhcGgtdHRsXCI+e2dyYXBoVGl0bGV9PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImhpZ2gtY2hhcnQtd3JhcHBlclwiPnttYXRjaEdyYXBoKCl9PC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBGbG9hdGluZ0dyYXBoO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0FBLE9BQUE7QUFDQSxJQUFBRyxVQUFBLEdBQUFELHNCQUFBLENBQUFGLE9B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
84
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfR3JhcGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2hpZ2hzdG9jayIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiRmxvYXRpbmdHcmFwaCIsIl9yZWYiLCJpc09wZW4iLCJfcmVmJGN1c3RvbUhpZ2hDaGFydE8iLCJjdXN0b21IaWdoQ2hhcnRPcHRpb25zIiwiZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGgiLCJldmVudF9kYXRhIiwiY2xvc2VHcmFwaEhhbmRsZXIiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJtaW5pbWl6ZWQiLCJzZXRNaW5pbWl6ZWQiLCJIaWdoY2hhcnRzIiwic2V0T3B0aW9ucyIsImxhbmciLCJyYW5nZVNlbGVjdG9yWm9vbSIsImdyYXBoVGl0bGUiLCJwb2ludCIsImdyb3VwIiwibmFtZSIsIm1hdGNoR3JhcGgiLCJfb2JzZXJ2YXRpb24iLCJfb2JzZXJ2YXRpb24yIiwiX29ic2VydmF0aW9uMyIsInRpbWVHYXBGcm9tRXZlbnQiLCJncmFwaERhdGEiLCJvYnNlcnZhdGlvbiIsInBvaW50SWQiLCJwb2ludF9pZCIsImlkIiwib2JzZXJ2YXRpb25zIiwiZmluZCIsIm8iLCJmaXJzdF9zZWVuX29ic2VydmF0aW9uX2lkIiwiX29iamVjdFNwcmVhZDIiLCJwbG90RnJvbSIsInN0YXJ0X3RpbWUiLCJwbG90VG8iLCJsYXN0X3NlZW5fdGltZSIsInN0YXJ0VGltZSIsImVuZFRpbWUiLCJub09ic2VydmF0aW9uIiwiZGlzcGxheVJlc2V0Wm9vbUJ1dHRvbiIsImNyZWF0ZUVsZW1lbnQiLCJtaW5pbWl6ZUdyYXBoSGFuZGxlciIsInByZXZTdGF0ZSIsImNsYXNzTmFtZSIsImNvbmNhdCIsIm9uQ2xpY2siLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9GbG9hdGluZ0dyYXBoL0Zsb2F0aW5nR3JhcGgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBHcmFwaCBmcm9tICdzcmMvY29tcG9uZW50cy9HcmFwaCc7XG5pbXBvcnQgJy4vZmxvYXRpbmdHcmFwaFN0eWxlLnNjc3MnO1xuaW1wb3J0IEhpZ2hjaGFydHMgZnJvbSAnaGlnaGNoYXJ0cy9oaWdoc3RvY2snO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgY3VzdG9tSGlnaENoYXJ0T3B0aW9ucz86IEhpZ2hjaGFydHMuT3B0aW9ucztcbiAgZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGg/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuICBldmVudF9kYXRhPzogYW55O1xuICBjbG9zZUdyYXBoSGFuZGxlcjogRnVuY3Rpb247XG4gIGdyYXBoSWQ6IHN0cmluZztcbiAgaXNPcGVuPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IEZsb2F0aW5nR3JhcGg6IFJlYWN0LkZDPElQcm9wcz4gPSAoe1xuICBpc09wZW4sXG4gIGN1c3RvbUhpZ2hDaGFydE9wdGlvbnMgPSB7fSxcbiAgZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGgsXG4gIGV2ZW50X2RhdGEsXG4gIGNsb3NlR3JhcGhIYW5kbGVyLFxufSkgPT4ge1xuICBjb25zdCBbbWluaW1pemVkLCBzZXRNaW5pbWl6ZWRdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuICBIaWdoY2hhcnRzLnNldE9wdGlvbnMoe1xuICAgIGxhbmc6IHtcbiAgICAgIHJhbmdlU2VsZWN0b3Jab29tOiAnJyxcbiAgICB9LFxuICB9KTtcbiAgY29uc3QgZ3JhcGhUaXRsZSA9IGlzT3BlbiA/IGdsb2JhbERhdGFGbG9hdGluZ0dyYXBoPy5wb2ludC5ncm91cC5uYW1lIDogJyc7XG5cbiAgY29uc3QgbWF0Y2hHcmFwaCA9ICgpID0+IHtcbiAgICBjb25zdCB0aW1lR2FwRnJvbUV2ZW50ID0gODY0MDAgKiAzMSAqIDI7IC8vIDIgbW9udGhzXG4gICAgbGV0IGdyYXBoRGF0YTogYW55ID0ge307XG4gICAgbGV0IG9ic2VydmF0aW9uID0gZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGg/Lm9ic2VydmF0aW9uO1xuICAgIGdyYXBoRGF0YS5wb2ludElkID1cbiAgICAgIG9ic2VydmF0aW9uPy5wb2ludF9pZCB8fCBnbG9iYWxEYXRhRmxvYXRpbmdHcmFwaD8ucG9pbnQuaWQ7XG4gICAgaWYgKCFvYnNlcnZhdGlvbiAmJiBldmVudF9kYXRhPy5vYnNlcnZhdGlvbnMpIHtcbiAgICAgIG9ic2VydmF0aW9uID0gZXZlbnRfZGF0YS5vYnNlcnZhdGlvbnMuZmluZChcbiAgICAgICAgKG8pID0+IG8uaWQgPT09IGV2ZW50X2RhdGE/LmZpcnN0X3NlZW5fb2JzZXJ2YXRpb25faWQsXG4gICAgICApO1xuICAgIH1cbiAgICBncmFwaERhdGEgPSB7XG4gICAgICAuLi5ncmFwaERhdGEsXG4gICAgICBwbG90RnJvbTogb2JzZXJ2YXRpb24/LnN0YXJ0X3RpbWUgfHwgMCxcbiAgICAgIHBsb3RUbzogb2JzZXJ2YXRpb24/Lmxhc3Rfc2Vlbl90aW1lIHx8IDAsXG4gICAgICBzdGFydFRpbWU6IG9ic2VydmF0aW9uLnN0YXJ0X3RpbWUgLSB0aW1lR2FwRnJvbUV2ZW50LFxuICAgICAgZW5kVGltZTogb2JzZXJ2YXRpb24ubGFzdF9zZWVuX3RpbWUgKyB0aW1lR2FwRnJvbUV2ZW50LFxuICAgICAgbm9PYnNlcnZhdGlvbjogb2JzZXJ2YXRpb24gPyBmYWxzZSA6IHRydWUsXG4gICAgICBjdXN0b21IaWdoQ2hhcnRPcHRpb25zOiBjdXN0b21IaWdoQ2hhcnRPcHRpb25zLFxuICAgICAgZGlzcGxheVJlc2V0Wm9vbUJ1dHRvbjogdHJ1ZSxcbiAgICB9O1xuICAgIHJldHVybiA8R3JhcGggey4uLmdyYXBoRGF0YX0gLz47XG4gIH07XG4gIGNvbnN0IG1pbmltaXplR3JhcGhIYW5kbGVyID0gKCkgPT4ge1xuICAgIHNldE1pbmltaXplZCgocHJldlN0YXRlKSA9PiAhcHJldlN0YXRlKTtcbiAgfTtcblxuICBpZiAoIWlzT3Blbikge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2BmbG9hdGluZy1ncmFwaCAke21pbmltaXplZCA/ICdtaW5pbWl6ZWQnIDogJyd9YH0+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT1cImZsb2F0aW5nLWdyYXBoX19jbG9zZVwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGNsb3NlR3JhcGhIYW5kbGVyKCl9XG4gICAgICA+PC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT1cImZsb2F0aW5nLWdyYXBoX19taW5pbWl6ZVwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IG1pbmltaXplR3JhcGhIYW5kbGVyKCl9XG4gICAgICA+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImdyYXBoLXR0bFwiPntncmFwaFRpdGxlfTwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJoaWdoLWNoYXJ0LXdyYXBwZXJcIj57bWF0Y2hHcmFwaCgpfTwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgRmxvYXRpbmdHcmFwaDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQUcsVUFBQSxHQUFBRCxzQkFBQSxDQUFBRixPQUFBO0FBQThDLFNBQUFJLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBTix3QkFBQVUsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLGFBQUFFLE9BQUEsQ0FBQUYsR0FBQSx5QkFBQUEsR0FBQSw0QkFBQUcsT0FBQSxFQUFBSCxHQUFBLFVBQUFJLEtBQUEsR0FBQVQsd0JBQUEsQ0FBQUMsV0FBQSxPQUFBUSxLQUFBLElBQUFBLEtBQUEsQ0FBQUMsR0FBQSxDQUFBTCxHQUFBLFlBQUFJLEtBQUEsQ0FBQUUsR0FBQSxDQUFBTixHQUFBLFNBQUFPLE1BQUEsV0FBQUMscUJBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsR0FBQSxJQUFBWixHQUFBLFFBQUFZLEdBQUEsa0JBQUFILE1BQUEsQ0FBQUksU0FBQSxDQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWYsR0FBQSxFQUFBWSxHQUFBLFNBQUFJLElBQUEsR0FBQVIscUJBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBWCxHQUFBLEVBQUFZLEdBQUEsY0FBQUksSUFBQSxLQUFBQSxJQUFBLENBQUFWLEdBQUEsSUFBQVUsSUFBQSxDQUFBQyxHQUFBLEtBQUFSLE1BQUEsQ0FBQUMsY0FBQSxDQUFBSCxNQUFBLEVBQUFLLEdBQUEsRUFBQUksSUFBQSxZQUFBVCxNQUFBLENBQUFLLEdBQUEsSUFBQVosR0FBQSxDQUFBWSxHQUFBLFNBQUFMLE1BQUEsQ0FBQUosT0FBQSxHQUFBSCxHQUFBLE1BQUFJLEtBQUEsSUFBQUEsS0FBQSxDQUFBYSxHQUFBLENBQUFqQixHQUFBLEVBQUFPLE1BQUEsWUFBQUEsTUFBQTtBQVc5QyxJQUFNVyxhQUErQixHQUFHLFNBQWxDQSxhQUErQkEsQ0FBQUMsSUFBQSxFQU0vQjtFQUFBLElBTEpDLE1BQU0sR0FBQUQsSUFBQSxDQUFOQyxNQUFNO0lBQUFDLHFCQUFBLEdBQUFGLElBQUEsQ0FDTkcsc0JBQXNCO0lBQXRCQSxzQkFBc0IsR0FBQUQscUJBQUEsY0FBRyxDQUFDLENBQUMsR0FBQUEscUJBQUE7SUFDM0JFLHVCQUF1QixHQUFBSixJQUFBLENBQXZCSSx1QkFBdUI7SUFDdkJDLFVBQVUsR0FBQUwsSUFBQSxDQUFWSyxVQUFVO0lBQ1ZDLGlCQUFpQixHQUFBTixJQUFBLENBQWpCTSxpQkFBaUI7RUFFakIsSUFBQUMsU0FBQSxHQUFrQyxJQUFBQyxlQUFRLEVBQVUsS0FBSyxDQUFDO0lBQUFDLFVBQUEsT0FBQUMsZUFBQSxDQUFBMUIsT0FBQSxFQUFBdUIsU0FBQTtJQUFuREksU0FBUyxHQUFBRixVQUFBO0lBQUVHLFlBQVksR0FBQUgsVUFBQTtFQUM5Qkksa0JBQVUsQ0FBQ0MsVUFBVSxDQUFDO0lBQ3BCQyxJQUFJLEVBQUU7TUFDSkMsaUJBQWlCLEVBQUU7SUFDckI7RUFDRixDQUFDLENBQUM7RUFDRixJQUFNQyxVQUFVLEdBQUdoQixNQUFNLEdBQUdHLHVCQUF1QixhQUF2QkEsdUJBQXVCLHVCQUF2QkEsdUJBQXVCLENBQUVjLEtBQUssQ0FBQ0MsS0FBSyxDQUFDQyxJQUFJLEdBQUcsRUFBRTtFQUUxRSxJQUFNQyxVQUFVLEdBQUcsU0FBYkEsVUFBVUEsQ0FBQSxFQUFTO0lBQUEsSUFBQUMsWUFBQSxFQUFBQyxhQUFBLEVBQUFDLGFBQUE7SUFDdkIsSUFBTUMsZ0JBQWdCLEdBQUcsS0FBSyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN6QyxJQUFJQyxTQUFjLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZCLElBQUlDLFdBQVcsR0FBR3ZCLHVCQUF1QixhQUF2QkEsdUJBQXVCLHVCQUF2QkEsdUJBQXVCLENBQUV1QixXQUFXO0lBQ3RERCxTQUFTLENBQUNFLE9BQU8sR0FDZixFQUFBTixZQUFBLEdBQUFLLFdBQVcsY0FBQUwsWUFBQSx1QkFBWEEsWUFBQSxDQUFhTyxRQUFRLE1BQUl6Qix1QkFBdUIsYUFBdkJBLHVCQUF1Qix1QkFBdkJBLHVCQUF1QixDQUFFYyxLQUFLLENBQUNZLEVBQUU7SUFDNUQsSUFBSSxDQUFDSCxXQUFXLEtBQUl0QixVQUFVLGFBQVZBLFVBQVUsdUJBQVZBLFVBQVUsQ0FBRTBCLFlBQVksR0FBRTtNQUM1Q0osV0FBVyxHQUFHdEIsVUFBVSxDQUFDMEIsWUFBWSxDQUFDQyxJQUFJLENBQ3hDLFVBQUNDLENBQUM7UUFBQSxPQUFLQSxDQUFDLENBQUNILEVBQUUsTUFBS3pCLFVBQVUsYUFBVkEsVUFBVSx1QkFBVkEsVUFBVSxDQUFFNkIseUJBQXlCO01BQUEsQ0FDdkQsQ0FBQztJQUNIO0lBQ0FSLFNBQVMsT0FBQVMsY0FBQSxDQUFBbkQsT0FBQSxNQUFBbUQsY0FBQSxDQUFBbkQsT0FBQSxNQUNKMEMsU0FBUztNQUNaVSxRQUFRLEVBQUUsRUFBQWIsYUFBQSxHQUFBSSxXQUFXLGNBQUFKLGFBQUEsdUJBQVhBLGFBQUEsQ0FBYWMsVUFBVSxLQUFJLENBQUM7TUFDdENDLE1BQU0sRUFBRSxFQUFBZCxhQUFBLEdBQUFHLFdBQVcsY0FBQUgsYUFBQSx1QkFBWEEsYUFBQSxDQUFhZSxjQUFjLEtBQUksQ0FBQztNQUN4Q0MsU0FBUyxFQUFFYixXQUFXLENBQUNVLFVBQVUsR0FBR1osZ0JBQWdCO01BQ3BEZ0IsT0FBTyxFQUFFZCxXQUFXLENBQUNZLGNBQWMsR0FBR2QsZ0JBQWdCO01BQ3REaUIsYUFBYSxFQUFFZixXQUFXLEdBQUcsS0FBSyxHQUFHLElBQUk7TUFDekN4QixzQkFBc0IsRUFBRUEsc0JBQXNCO01BQzlDd0Msc0JBQXNCLEVBQUU7SUFBSSxFQUM3QjtJQUNELG9CQUFPekUsTUFBQSxDQUFBYyxPQUFBLENBQUE0RCxhQUFBLENBQUN2RSxNQUFBLENBQUFXLE9BQUssRUFBSzBDLFNBQVksQ0FBQztFQUNqQyxDQUFDO0VBQ0QsSUFBTW1CLG9CQUFvQixHQUFHLFNBQXZCQSxvQkFBb0JBLENBQUEsRUFBUztJQUNqQ2pDLFlBQVksQ0FBQyxVQUFDa0MsU0FBUztNQUFBLE9BQUssQ0FBQ0EsU0FBUztJQUFBLEVBQUM7RUFDekMsQ0FBQztFQUVELElBQUksQ0FBQzdDLE1BQU0sRUFBRTtJQUNYLE9BQU8sSUFBSTtFQUNiO0VBQ0Esb0JBQ0UvQixNQUFBLENBQUFjLE9BQUEsQ0FBQTRELGFBQUE7SUFBS0csU0FBUyxvQkFBQUMsTUFBQSxDQUFvQnJDLFNBQVMsR0FBRyxXQUFXLEdBQUcsRUFBRTtFQUFHLGdCQUMvRHpDLE1BQUEsQ0FBQWMsT0FBQSxDQUFBNEQsYUFBQTtJQUNFRyxTQUFTLEVBQUMsdUJBQXVCO0lBQ2pDRSxPQUFPLEVBQUUsU0FBQUEsUUFBQTtNQUFBLE9BQU0zQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQUE7RUFBQyxDQUMvQixDQUFDLGVBQ1BwQyxNQUFBLENBQUFjLE9BQUEsQ0FBQTRELGFBQUE7SUFDRUcsU0FBUyxFQUFDLDBCQUEwQjtJQUNwQ0UsT0FBTyxFQUFFLFNBQUFBLFFBQUE7TUFBQSxPQUFNSixvQkFBb0IsQ0FBQyxDQUFDO0lBQUE7RUFBQyxDQUNsQyxDQUFDLGVBQ1AzRSxNQUFBLENBQUFjLE9BQUEsQ0FBQTRELGFBQUE7SUFBS0csU0FBUyxFQUFDO0VBQVcsR0FBRTlCLFVBQWdCLENBQUMsZUFDN0MvQyxNQUFBLENBQUFjLE9BQUEsQ0FBQTRELGFBQUE7SUFBS0csU0FBUyxFQUFDO0VBQW9CLEdBQUUxQixVQUFVLENBQUMsQ0FBTyxDQUNwRCxDQUFDO0FBRVYsQ0FBQztBQUFDLElBQUE2QixRQUFBLEdBRWFuRCxhQUFhO0FBQUFvRCxPQUFBLENBQUFuRSxPQUFBLEdBQUFrRSxRQUFBIn0=