@kando-env/kando-ui 1.2.377 → 1.2.379
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Router.js +36 -73
- package/lib/Widgets/EventsCarousel/EventsCarousel.js +25 -35
- package/lib/Widgets/EventsRow/EventsRow.js +27 -39
- package/lib/Widgets/Map/GraphUtils.js +3 -3
- package/lib/Widgets/Map/Map.js +130 -117
- package/lib/Widgets/Map/MapUtils.js +116 -67
- package/lib/Widgets/Map/areas/AreaPolygon.js +53 -77
- package/lib/Widgets/Map/areas/AreaPolygons.js +23 -24
- package/lib/Widgets/Map/areas/AreaUtils.js +47 -46
- package/lib/Widgets/Map/areas/Patterns.js +4 -4
- package/lib/Widgets/Map/edges/Edge.js +39 -38
- package/lib/Widgets/Map/edges/Edges.js +24 -24
- package/lib/Widgets/Map/edges/arrows/Arrows.js +23 -44
- package/lib/Widgets/Map/events/Event.js +17 -17
- package/lib/Widgets/Map/events/EventIndicator.js +65 -60
- package/lib/Widgets/Map/events/EventPath.js +24 -22
- package/lib/Widgets/Map/events/EventUtils.js +60 -80
- package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +17 -18
- package/lib/Widgets/Map/events/PointOfEvent.js +29 -34
- package/lib/Widgets/Map/events/PointsForSpecificEvent.js +30 -37
- package/lib/Widgets/Map/events/Snail.js +19 -20
- package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +93 -86
- package/lib/Widgets/Map/map/FloatingGraph.js +22 -18
- package/lib/Widgets/Map/map/GraphDateButton.js +25 -17
- package/lib/Widgets/Map/matchGraph/MatchGraph.js +13 -12
- package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +16 -15
- package/lib/Widgets/Map/points/PointIcon.js +22 -15
- package/lib/Widgets/Map/points/PointMarker.js +71 -87
- package/lib/Widgets/Map/points/PointMarkers.js +45 -66
- package/lib/Widgets/Map/points/PointUtils.js +146 -83
- package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +31 -47
- package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +11 -28
- package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +11 -12
- package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +3 -3
- package/lib/Widgets/MostPolluting/Areas/Areas.js +31 -60
- package/lib/Widgets/MostPolluting/Areas/areas.mock.js +3 -3
- package/lib/Widgets/MostPolluting/Areas/styles.js +3 -3
- package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +11 -8
- package/lib/Widgets/MostPolluting/Factories/Factories.js +39 -70
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +15 -18
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +8 -8
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +12 -10
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +3 -3
- package/lib/Widgets/MostPolluting/Factories/factories.mock.js +2 -2
- package/lib/Widgets/MostPolluting/Factories/styles.js +3 -3
- package/lib/Widgets/MostPolluting/MostPolluting.js +32 -29
- package/lib/Widgets/MostPolluting/MostPolluting.stories.js +18 -22
- package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +6 -4
- package/lib/Widgets/MostPolluting/ShowMore/styles.js +6 -4
- package/lib/Widgets/MostPolluting/assets/index.js +10 -10
- package/lib/Widgets/MostPolluting/components/ChangePercent.js +19 -13
- package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +35 -30
- package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +45 -35
- package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +39 -35
- package/lib/Widgets/MostPolluting/components/PotentialImpact.js +28 -27
- package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +54 -50
- package/lib/Widgets/MostPolluting/styles.js +3 -3
- package/lib/Widgets/PotentialImpactSummary/Back/Back.js +7 -5
- package/lib/Widgets/PotentialImpactSummary/Icon.js +8 -6
- package/lib/Widgets/PotentialImpactSummary/index.js +19 -27
- package/lib/Widgets/PotentialImpactSummary/index.test.js +47 -52
- package/lib/Widgets/PotentialImpactSummary/styles.js +7 -7
- package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +9 -7
- package/lib/Widgets/QualitySummary/PieChart/PieChart.js +22 -17
- package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +35 -32
- package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +26 -24
- package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +35 -37
- package/lib/Widgets/QualitySummary/QualitySummary.js +9 -13
- package/lib/Widgets/QualitySummary/qualitySummary.mock.js +4 -4
- package/lib/Widgets/QualitySummary/styles.js +23 -15
- package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +12 -13
- package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +27 -26
- package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +29 -24
- package/lib/Widgets/UtilityInformation/UtilityInformation.js +30 -47
- package/lib/Widgets/UtilityInformation/styles.js +34 -25
- package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +3 -3
- package/lib/assets/icons/TopNavbar/index.js +6 -6
- package/lib/assets/icons/TrendSvg.js +6 -6
- package/lib/assets/icons/index.js +15 -15
- package/lib/assets/icons/kandoStepper/index.js +5 -5
- package/lib/assets/icons/siteTypes/index.js +1 -1
- package/lib/components/ApplyButton/ApplyButton.js +9 -9
- package/lib/components/Backdrop/Backdrop.js +6 -4
- package/lib/components/ContentLoader/ContentLoader.js +11 -9
- package/lib/components/ContentLoader/index.js +1 -1
- package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +13 -12
- package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +3 -5
- package/lib/components/CustomInputs/DoubleTabs/styles.js +20 -12
- package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +13 -20
- package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +6 -4
- package/lib/components/CustomInputs/Search/Search.js +42 -63
- package/lib/components/CustomInputs/Select/Select.js +45 -58
- package/lib/components/CustomInputs/Select/Select.stories.js +4 -6
- package/lib/components/DamageType/DamageType.js +35 -57
- package/lib/components/DataLoaderError/DataLoaderError.js +8 -6
- package/lib/components/DischargeHeatmap/DischargeHeatmap.js +9 -10
- package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +70 -71
- package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +27 -37
- package/lib/components/DischargeHeatmap/HighchartsOptions.js +10 -12
- package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -3
- package/lib/components/DischargeHeatmap/popupText.js +10 -10
- package/lib/components/DischargeHeatmap/titles.js +3 -3
- package/lib/components/ErrorBoundary.js +27 -41
- package/lib/components/Events/Events.js +41 -58
- package/lib/components/Graph/Graph.js +77 -96
- package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +17 -21
- package/lib/components/Header/DoubleTabs/DoubleTabs.js +25 -33
- package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +3 -5
- package/lib/components/Header/DoubleTabs/styles.js +4 -4
- package/lib/components/Header/Header.js +2 -2
- package/lib/components/Header/Header.stories.js +3 -5
- package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +96 -205
- package/lib/components/Header/InfoBar/InfoBar.js +74 -103
- package/lib/components/Header/InfoBar/Search/Control.js +9 -9
- package/lib/components/Header/InfoBar/Search/GroupLabel.js +7 -5
- package/lib/components/Header/InfoBar/Search/Search.js +16 -21
- package/lib/components/Header/InfoBar/Search/SearchContainer.js +21 -33
- package/lib/components/Header/InfoBar/Search/searchStyle.js +41 -49
- package/lib/components/Header/InfoBar/TimeFilter.js +11 -14
- package/lib/components/Header/KandoNavbar/KandoNavbar.js +64 -89
- package/lib/components/Header/Slideshow/Slideshow.js +68 -90
- package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +6 -4
- package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +21 -23
- package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +18 -18
- package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +37 -43
- package/lib/components/Header/Toolbar/Toolbar.js +55 -74
- package/lib/components/InfoBar/InfoBar.js +10 -23
- package/lib/components/InfoBar/InfoBar.stories.js +3 -5
- package/lib/components/KandoModal/KandoModal.js +27 -41
- package/lib/components/Link.js +8 -7
- package/lib/components/Links/CustomRedirect/CustomRedirect.js +9 -8
- package/lib/components/Links/StyledLink/StyledLink.js +12 -12
- package/lib/components/Links/StyledNavLink/StyledNavLink.js +11 -10
- package/lib/components/LiveEvents/CarouselSlide.js +9 -7
- package/lib/components/LiveEvents/LiveEvents.js +5 -3
- package/lib/components/LoaderByPercent/LoaderByPercent.js +37 -29
- package/lib/components/Map/Map.js +20 -23
- package/lib/components/Modal/Modal.js +9 -9
- package/lib/components/NarrowHeader.js +17 -31
- package/lib/components/PointInfo/PointInfo.js +19 -17
- package/lib/components/PopupModal/PopupModal.js +12 -16
- package/lib/components/PopupModal/PopupModal.stories.js +15 -19
- package/lib/components/Sector/Sector.js +8 -6
- package/lib/components/Sector/Sector.test.js +19 -20
- package/lib/components/Sector/sectorIcons.js +2 -2
- package/lib/components/SevereEvent/Eta/Eta.js +49 -52
- package/lib/components/SevereEvent/Eta/styles.js +10 -6
- package/lib/components/SevereEvent/SevereEvent.js +30 -37
- package/lib/components/Spinner/Spinner.js +8 -8
- package/lib/components/Spinner/Spinner.stories.js +4 -6
- package/lib/components/Spinner/styles.js +22 -14
- package/lib/components/Tabs/Tabs.js +21 -29
- package/lib/components/Tabs/Tabs.stories.js +4 -6
- package/lib/components/Tabs/assets/index.js +5 -5
- package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +12 -15
- package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +40 -51
- package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +19 -31
- package/lib/components/TimeRangeSelector/TimeRangeHelper.js +20 -25
- package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +13 -13
- package/lib/components/TimeRangeSelector/TimeRangeList.js +23 -24
- package/lib/components/TimeRangeSelector/TimeRangeOptions.js +17 -25
- package/lib/components/TimeRangeSelector/TimeRangeSelector.js +31 -32
- package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +4 -6
- package/lib/components/TimeRangeSelector/constants.js +3 -3
- package/lib/components/Toggle/Toggle.js +12 -17
- package/lib/components/TrendGraph/TrendGraph.js +23 -39
- package/lib/components/TrendGraphNVL/TrendGraphNVL.js +27 -33
- package/lib/development-environment/index.js +8 -12
- package/lib/development-environment/mock/browser.js +2 -4
- package/lib/development-environment/mock/get.js +8 -10
- package/lib/development-environment/mock/handlers.js +2 -2
- package/lib/development-environment/mock/mockBus.js +4 -4
- package/lib/development-environment/mock/mockObjects/area-trends-graph.js +2 -2
- package/lib/development-environment/mock/mockObjects/areaInformation.js +2 -2
- package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +2 -2
- package/lib/development-environment/mock/mockObjects/areaSitesData.js +2 -2
- package/lib/development-environment/mock/mockObjects/areasJson.js +2 -2
- package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +2 -2
- package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +2 -2
- package/lib/development-environment/mock/mockObjects/data-menuData.js +2 -2
- package/lib/development-environment/mock/mockObjects/data-search.js +2 -2
- package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +2 -2
- package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +2 -2
- package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +2 -2
- package/lib/development-environment/mock/mockObjects/eventsJson.js +2 -2
- package/lib/development-environment/mock/mockObjects/metascore.js +2 -2
- package/lib/development-environment/mock/mockObjects/permissionsJson.js +2 -2
- package/lib/development-environment/mock/mockObjects/pointsJson.js +2 -2
- package/lib/development-environment/mock/mockObjects/site-info.js +2 -2
- package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +2 -2
- package/lib/development-environment/togly/ToglyDashboard.js +13 -22
- package/lib/development-environment/togly/ToglyItem.js +36 -31
- package/lib/development-environment/togly/init.js +2 -2
- package/lib/development-environment/togly/macro.js +14 -10
- package/lib/development-environment/togly/useDoubleKeyDown.js +7 -9
- package/lib/development-environment/togly/useLocalStorage.js +13 -18
- package/lib/hooks/useApi.js +19 -55
- package/lib/hooks/useApiWithDashboardQuery.js +30 -49
- package/lib/hooks/useClickOutside.js +3 -3
- package/lib/hooks/useInitializeHeaders.js +5 -5
- package/lib/hooks/useKandoFetch.js +16 -29
- package/lib/hooks/useMap.js +22 -34
- package/lib/hooks/useNavContext.js +22 -26
- package/lib/hooks/useRemoveExistingLayers.js +6 -6
- package/lib/hooks/useUpdateEventBodyTail.js +13 -17
- package/lib/hooks/useUserTimeZone.js +33 -30
- package/lib/hooks/useUserTimeZone.test.js +19 -22
- package/lib/hooks/useWindowSize.js +7 -14
- package/lib/index.js +11 -12
- package/lib/macros/getVersion.js +3 -3
- package/lib/pages/AreaPage/AreaPage.js +34 -67
- package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +16 -17
- package/lib/pages/AreaPage/Dashboard/Dashboard.js +33 -30
- package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +17 -25
- package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +4 -4
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +8 -8
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +11 -11
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +3 -3
- package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +2 -2
- package/lib/pages/AreaPage/Dashboard/Sites/styles.js +4 -4
- package/lib/pages/AssessmentPage/AssessmentPage.js +40 -46
- package/lib/pages/CannyWidget/Feedback.js +13 -13
- package/lib/pages/CovidPage/CovidPage.js +8 -13
- package/lib/pages/CovidPage/components/Body.js +25 -27
- package/lib/pages/CovidPage/components/Map.js +29 -39
- package/lib/pages/CovidPage/components/Sidebar.js +16 -15
- package/lib/pages/CovidPage/components/Summary.js +20 -27
- package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +27 -33
- package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +51 -73
- package/lib/pages/CovidPage/components/areas/Area.js +29 -40
- package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +55 -46
- package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +32 -35
- package/lib/pages/CovidPage/components/areas/AreasList.js +34 -46
- package/lib/pages/CovidPage/components/areas/Sort.js +11 -14
- package/lib/pages/CovidPage/components/nvlStatusHelper.js +11 -11
- package/lib/pages/DashboardMap/AreaCard.js +28 -28
- package/lib/pages/DashboardMap/AssessmentIcon.js +8 -7
- package/lib/pages/DashboardMap/Capacity.js +31 -80
- package/lib/pages/DashboardMap/FactoryCard.js +34 -28
- package/lib/pages/DashboardMap/HighchartsOptions.js +5 -4
- package/lib/pages/DashboardMap/List.js +81 -103
- package/lib/pages/DashboardMap/ListContext.js +15 -19
- package/lib/pages/DashboardMap/Loader.js +2 -2
- package/lib/pages/DashboardMap/SeverityBadge.js +10 -18
- package/lib/pages/DashboardMap/WWTPMap.js +91 -90
- package/lib/pages/DashboardMap/WaterDischarge.js +10 -10
- package/lib/pages/DashboardMap/Widget.js +54 -71
- package/lib/pages/DashboardMap/utils.js +48 -65
- package/lib/pages/EventsPage/Body/Body.js +20 -15
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +17 -19
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +27 -35
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +8 -6
- package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +11 -7
- package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +21 -30
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +53 -64
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +19 -31
- package/lib/pages/EventsPage/EventsPage.js +7 -10
- package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +26 -38
- package/lib/pages/EventsPage/events/MoreInfo.js +17 -16
- package/lib/pages/EventsPage/events/Sidebar.js +21 -16
- package/lib/pages/EventsPage/events/event_info/Contaminants/Contaminants.js +7 -7
- package/lib/pages/EventsPage/events/event_info/Contaminants/ContaminantsList.js +17 -20
- package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +30 -35
- package/lib/pages/EventsPage/events/event_info/EventDetails.js +40 -37
- package/lib/pages/EventsPage/events/event_info/EventInfo.js +43 -42
- package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +4 -4
- package/lib/pages/EventsPage/events/event_info/EventSection.js +17 -19
- package/lib/pages/EventsPage/events/event_info/EventSection.test.js +43 -38
- package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +39 -47
- package/lib/pages/EventsPage/events/event_info/Header/Header.js +6 -4
- package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +30 -33
- package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +6 -6
- package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +29 -36
- package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +4 -6
- package/lib/pages/EventsPage/events/event_info/PollutionAssessment /PollutionAssessment.js +10 -10
- package/lib/pages/EventsPage/events/event_info/PollutionAssessment /PollutionTypesList.js +7 -9
- package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +22 -21
- package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResult.js +12 -19
- package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResultButton.js +5 -3
- package/lib/pages/EventsPage/events/event_info/SamplingList/SamplingDetails.js +11 -9
- package/lib/pages/EventsPage/events/event_info/SamplingList/Samplings.js +22 -26
- package/lib/pages/EventsPage/events/event_info/SeverityScore/ScoreExplanation.js +12 -8
- package/lib/pages/EventsPage/events/event_info/SeverityScore/SeverityScore.js +7 -7
- package/lib/pages/EventsPage/events/event_info/SourceDetails/Confidence.js +6 -4
- package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.js +2 -2
- package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.test.js +12 -10
- package/lib/pages/EventsPage/events/event_info/SourceDetails/IconAndTitles.js +10 -8
- package/lib/pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton.js +10 -12
- package/lib/pages/EventsPage/events/event_info/SourceDetails/OtherSources.js +5 -3
- package/lib/pages/EventsPage/events/event_info/SourceDetails/PotentialSources.js +7 -5
- package/lib/pages/EventsPage/events/event_info/SourceDetails/SingleSource.js +7 -5
- package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceCardBody.js +6 -4
- package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.js +11 -9
- package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.test.js +15 -15
- package/lib/pages/EventsPage/events/event_info/SourceDetails/WaterDischarge.js +6 -6
- package/lib/pages/EventsPage/events/event_info/Timelines/DischargeBox.js +7 -5
- package/lib/pages/EventsPage/events/event_info/Timelines/EarlyWarning.js +17 -15
- package/lib/pages/EventsPage/events/event_info/Timelines/LiveStatusBadge.js +4 -4
- package/lib/pages/EventsPage/events/event_info/Timelines/SeenBox.js +10 -8
- package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.js +16 -11
- package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.test.js +9 -8
- package/lib/pages/EventsPage/events/event_info/Timelines/Titles.js +2 -2
- package/lib/pages/EventsPage/events/event_info/Timelines/style.js +3 -3
- package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +25 -38
- package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +29 -36
- package/lib/pages/EventsPage/events/event_info/samplingsOld/Sampling.js +11 -9
- package/lib/pages/EventsPage/events/event_info/samplingsOld/Samplings.js +15 -17
- package/lib/pages/EventsPage/events/event_info/sources/Source.js +27 -30
- package/lib/pages/EventsPage/events/event_info/sources/Sources.js +23 -26
- package/lib/pages/EventsPage/events/event_info/styles.js +20 -12
- package/lib/pages/EventsPage/events/events_list/EventItem.js +18 -19
- package/lib/pages/EventsPage/events/events_list/EventUtils.js +10 -10
- package/lib/pages/EventsPage/events/events_list/EventsList.js +124 -145
- package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +40 -55
- package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +79 -115
- package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +60 -77
- package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +38 -41
- package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +29 -36
- package/lib/pages/EventsPage/events/events_list/Sort.js +13 -16
- package/lib/pages/ImportFileWizard/FileUploadRespones.js +13 -20
- package/lib/pages/ImportFileWizard/ImportButtomButtons.js +6 -4
- package/lib/pages/ImportFileWizard/ImportFile.js +20 -22
- package/lib/pages/ImportFileWizard/ResponseBody.js +24 -33
- package/lib/pages/ImportFileWizard/ValidationForm.js +23 -22
- package/lib/pages/ImportFileWizard/ValidationResponse.js +21 -21
- package/lib/pages/ImportFileWizard/importFileUtils.js +1 -1
- package/lib/pages/ImportGisPage/ImportGisContainer.js +21 -24
- package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +21 -23
- package/lib/pages/ImportGisPage/importGisUtils.js +13 -21
- package/lib/pages/ImportGisProcess/index.js +12 -15
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +7 -12
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +17 -19
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +3 -3
- package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +56 -65
- package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +6 -8
- package/lib/pages/NotificationsPage/Notification/Notification.js +16 -12
- package/lib/pages/NotificationsPage/Notifications.mock.js +2 -2
- package/lib/pages/NotificationsPage/Notifications.stories.js +4 -6
- package/lib/pages/NotificationsPage/NotificationsPage.js +18 -36
- package/lib/pages/NotificationsPage/assets/index.js +9 -9
- package/lib/pages/NotificationsPageV2/NotificationsPage.js +71 -97
- package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +94 -63
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/EventType.js +14 -16
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSendVia.js +18 -16
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSensors.js +17 -21
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSources.js +17 -21
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationTags.js +18 -22
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +83 -69
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/WaterAuthoritySelection.js +18 -22
- package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +74 -74
- package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +97 -95
- package/lib/pages/NotificationsPageV2/notificationUtils.js +54 -48
- package/lib/pages/OldSitePage/OldSitePage.js +57 -132
- package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +5 -5
- package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +3 -5
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +8 -6
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +18 -20
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +9 -7
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +12 -18
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +16 -12
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +3 -5
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +18 -12
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +51 -63
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +9 -7
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +29 -53
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +4 -4
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +10 -12
- package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +11 -10
- package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +10 -11
- package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +32 -28
- package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +27 -29
- package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +4 -4
- package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +18 -12
- package/lib/pages/ProfilePage/Container.js +2 -2
- package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +28 -44
- package/lib/pages/ProfilePage/ProfilePage.js +121 -214
- package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +25 -33
- package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +19 -16
- package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +28 -30
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +57 -117
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +17 -20
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +12 -10
- package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +39 -41
- package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +25 -26
- package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +16 -16
- package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +13 -15
- package/lib/pages/SamplingsPage/NavigationDropdown.js +45 -32
- package/lib/pages/SamplingsPage/NewSamplingAction.js +76 -100
- package/lib/pages/SamplingsPage/SamplingMobileModal.js +129 -101
- package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +21 -22
- package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +34 -22
- package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +36 -59
- package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +15 -18
- package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +9 -7
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +110 -194
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +49 -55
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +47 -43
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +49 -45
- package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +19 -20
- package/lib/pages/SamplingsPage/SamplingProperties/styles.js +3 -3
- package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +10 -6
- package/lib/pages/SamplingsPage/SamplingsMobileItem.js +58 -54
- package/lib/pages/SamplingsPage/SamplingsMobileList.js +21 -28
- package/lib/pages/SamplingsPage/SamplingsPage.js +27 -33
- package/lib/pages/SamplingsPage/SamplingsPageContainer.js +50 -58
- package/lib/pages/SamplingsPage/samplingsPageUtils.js +68 -76
- package/lib/pages/SitePage/DischargePattern/DischargePattern.js +6 -4
- package/lib/pages/SitePage/PollutionContributor/PollutionContributor.js +14 -13
- package/lib/pages/SitePage/PollutionContributor/PollutionContributorContainer.js +10 -13
- package/lib/pages/SitePage/PollutionContributor/contributorUtils.js +16 -16
- package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +3 -5
- package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +14 -10
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +9 -8
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +26 -23
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +14 -17
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +36 -32
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +9 -7
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +15 -24
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +16 -12
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +3 -5
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +18 -12
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +58 -70
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +9 -7
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +15 -26
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +5 -5
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +10 -12
- package/lib/pages/SitePage/SamplingParameters/body/Body.js +9 -9
- package/lib/pages/SitePage/SamplingParameters/body/BodyContainer.js +29 -37
- package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +11 -11
- package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +10 -11
- package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +60 -59
- package/lib/pages/SitePage/SamplingParameters/dataParser.js +30 -39
- package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +11 -9
- package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +4 -4
- package/lib/pages/SitePage/SamplingParameters/styles/styles.js +18 -12
- package/lib/pages/SitePage/SiteInformation/EmptyState.js +11 -7
- package/lib/pages/SitePage/SiteInformation/SiteInformation.js +49 -41
- package/lib/pages/SitePage/SitePage.js +45 -80
- package/lib/pages/UploadLabResult/index.js +13 -13
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +26 -35
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +6 -8
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +9 -8
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +3 -5
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +47 -48
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +10 -6
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +4 -4
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +4 -6
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +13 -12
- package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +15 -12
- package/lib/pages/UtilityDashboardPage/TopBar/constants.js +7 -7
- package/lib/pages/UtilityDashboardPage/TopBar/styles.js +2 -2
- package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +30 -31
- package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +26 -30
- package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +17 -18
- package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +7 -13
- package/lib/pages/UtilityDashboardPage/VirtualAreaDashboardPage.js +27 -31
- package/lib/pages/WbeDashboard/ExpandableComponent.js +9 -8
- package/lib/pages/WbeDashboard/GraphWrapper.js +30 -36
- package/lib/pages/WbeDashboard/IndividualTinyGraph.js +17 -19
- package/lib/pages/WbeDashboard/SearchInput.js +15 -20
- package/lib/pages/WbeDashboard/SummaryGraph.js +50 -76
- package/lib/pages/WbeDashboard/SummaryGraphModal.js +19 -17
- package/lib/pages/WbeDashboard/Tabs.js +11 -11
- package/lib/pages/WbeDashboard/WbeDashboardPage.js +151 -213
- package/lib/pages/WbeDashboard/WbeSummaryBar.js +40 -48
- package/lib/pages/WwtpPage/DashboardCard.js +26 -23
- package/lib/pages/WwtpPage/DischargePatternCard.js +14 -23
- package/lib/pages/WwtpPage/InletsCard/InletsBar.js +26 -22
- package/lib/pages/WwtpPage/InletsCard/InletsCard.js +19 -18
- package/lib/pages/WwtpPage/Map.js +5 -3
- package/lib/pages/WwtpPage/OrganicCard.js +2 -2
- package/lib/pages/WwtpPage/PotentialSaving/ImpactCard.js +2 -2
- package/lib/pages/WwtpPage/PotentialSaving/PotentialItem.js +8 -6
- package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +9 -8
- package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +18 -14
- package/lib/pages/WwtpPage/PredictionCard.js +2 -2
- package/lib/pages/WwtpPage/TrendCard.js +18 -19
- package/lib/pages/WwtpPage/UpgradeBox.js +3 -3
- package/lib/pages/WwtpPage/WwtpPage.js +8 -8
- package/lib/pages/WwtpPage/WwtpPageContainer.js +21 -16
- package/lib/providers/Slideshow/SlideshowContext.js +11 -9
- package/lib/providers/Slideshow/SlideshowProvider.js +22 -38
- package/lib/providers/Slideshow/SlideshowRunner.js +17 -19
- package/lib/providers/UrlHistory/UrlHistoryContext.js +6 -4
- package/lib/providers/UrlHistory/UrlHistoryProvider.js +12 -11
- package/lib/providers/UrlHistory/index.js +2 -2
- package/lib/providers/UrlHistory/useLastVisited.js +5 -5
- package/lib/store/ImportGis/actionTypes.js +1 -1
- package/lib/store/ImportGis/actionsCreator.js +7 -5
- package/lib/store/ImportGis/reducer.js +40 -29
- package/lib/store/WBE/actionTypes.js +2 -2
- package/lib/store/WBE/reducer.js +13 -9
- package/lib/store/WWTPDashboard/WWTPDashboardSlice.js +24 -14
- package/lib/store/areas/actionTypes.js +4 -4
- package/lib/store/areas/actions.js +7 -13
- package/lib/store/areas/reducer.js +8 -6
- package/lib/store/context/actionTypes.js +3 -3
- package/lib/store/context/actions.js +3 -3
- package/lib/store/context/contextMiddlewares.js +14 -16
- package/lib/store/context/reducer.js +13 -9
- package/lib/store/dashboard/dashboardSlice.js +18 -10
- package/lib/store/edges/actionTypes.js +5 -5
- package/lib/store/edges/actions.js +4 -8
- package/lib/store/edges/reducer.js +13 -17
- package/lib/store/events/actionTypes.js +17 -17
- package/lib/store/events/actions.js +3 -7
- package/lib/store/events/reducer.js +42 -49
- package/lib/store/global/actionTypes.js +11 -11
- package/lib/store/global/actions.js +8 -6
- package/lib/store/global/reducer.js +11 -10
- package/lib/store/permissions/permissionsSlice.js +12 -8
- package/lib/store/points/actionTypes.js +3 -3
- package/lib/store/points/actions.js +4 -8
- package/lib/store/points/reducer.js +7 -5
- package/lib/store/rootActionTypes.js +2 -2
- package/lib/store/rootReducer.js +17 -12
- package/lib/store/rootStore.js +5 -5
- package/lib/store/samplings/actionTypes.js +1 -1
- package/lib/store/samplings/reducer.js +16 -14
- package/lib/styles/StylesLayout.js +5 -3
- package/lib/styles/theme/theme.js +26 -27
- package/lib/test/mocks/browser.js +2 -4
- package/lib/test/test-utils.js +17 -15
- package/lib/ui-kit/Button/Button.js +128 -80
- package/lib/ui-kit/Button/Button.test.js +24 -29
- package/lib/ui-kit/Checkbox/Checkbox.js +30 -20
- package/lib/ui-kit/ContentCard/ContentCard.js +15 -18
- package/lib/ui-kit/Dashboard/Dashboard.js +25 -22
- package/lib/ui-kit/DropDown/DropDown.js +23 -24
- package/lib/ui-kit/DropDown/DropDown.test.js +12 -12
- package/lib/ui-kit/DropDown/DropDownItem.js +24 -21
- package/lib/ui-kit/DropDown/DropdownToggle.js +12 -8
- package/lib/ui-kit/EmptyState/EmptyState.js +6 -4
- package/lib/ui-kit/IconAction/IconAction.js +7 -5
- package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +48 -64
- package/lib/ui-kit/InfoTooltip/InfoTooltip.js +69 -52
- package/lib/ui-kit/InletsPie/InletsPie.js +15 -13
- package/lib/ui-kit/InletsPie/options.js +6 -6
- package/lib/ui-kit/KandoList/KandoList.js +14 -12
- package/lib/ui-kit/KandoTable/KandoTable.js +48 -40
- package/lib/ui-kit/KandoTable/KandoTable.test.js +16 -22
- package/lib/ui-kit/Layout/Layout.js +6 -4
- package/lib/ui-kit/MobileInput/MobileInput.js +60 -50
- package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +13 -16
- package/lib/ui-kit/OrganicEvents/GaugeChart.js +8 -6
- package/lib/ui-kit/OrganicEvents/OrganicEvents.js +6 -6
- package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +27 -20
- package/lib/ui-kit/OrganicEvents/TextInfo.js +15 -10
- package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +10 -8
- package/lib/ui-kit/SamplingStatus/SamplingStatus.js +14 -17
- package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +3 -3
- package/lib/ui-kit/ScoreGauge/ScoreGauge.js +20 -20
- package/lib/ui-kit/ScoreGauge/constant.js +3 -3
- package/lib/ui-kit/TimeLineChart/TrendChart.js +54 -42
- package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +8 -7
- package/lib/ui-kit/Tooltip/Tooltip.js +14 -8
- package/lib/ui-kit/index.js +8 -8
- package/lib/ui-kit/kandoStepper/KandoStepper.js +12 -12
- package/lib/ui-kit/siteName/SiteName.js +11 -8
- package/lib/utilities/ActionUtility.js +7 -7
- package/lib/utilities/Alert.js +21 -17
- package/lib/utilities/Analytics.js +11 -11
- package/lib/utilities/Array.js +4 -5
- package/lib/utilities/Enum.js +15 -51
- package/lib/utilities/ErrorBoundary.js +27 -41
- package/lib/utilities/File.js +40 -69
- package/lib/utilities/GetDir.js +8 -7
- package/lib/utilities/KandoDate.js +7 -15
- package/lib/utilities/KandoModal.js +16 -26
- package/lib/utilities/LocalStorage.js +8 -10
- package/lib/utilities/ThousandsToK.js +3 -3
- package/lib/utilities/TimeFormat.js +21 -20
- package/lib/utilities/Truncate.js +17 -25
- package/lib/utilities/edgesMath.js +14 -15
- package/lib/utilities/i18n.js +3 -3
- package/lib/utilities/kql.js +12 -14
- package/lib/utilities/map/icons.js +3 -3
- package/lib/utilities/polylinedecorator.js +87 -112
- package/lib/utilities/scoreToData.js +17 -17
- package/lib/utilities/scoreToData.test.js +5 -5
- package/lib/utilities/time.js +8 -8
- package/lib/utilities/uploadToS3.js +11 -11
- package/lib/utilities/urls.js +61 -59
- package/package.json +1 -1
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.EventsMapContainer = void 0;
|
|
9
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
10
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
9
|
var _reactRedux = require("react-redux");
|
|
12
10
|
var _EventsMapContainerHelpers = require("pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers");
|
|
@@ -19,43 +17,41 @@ var _GraphUtils = require("Widgets/Map/GraphUtils");
|
|
|
19
17
|
var _actions4 = require("store/global/actions");
|
|
20
18
|
var _DragAndDropArea = _interopRequireDefault(require("../DragAndDropArea"));
|
|
21
19
|
var _EventUtils = require("Widgets/Map/events/EventUtils");
|
|
22
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function
|
|
23
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null ||
|
|
24
|
-
|
|
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 => {
|
|
25
23
|
var _global_data$floating, _global_data$floating2;
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
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)(() => {
|
|
36
34
|
var _global_data$activeFi;
|
|
37
|
-
|
|
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;
|
|
38
36
|
if (!filters || filters.length < 1) {
|
|
39
37
|
return true;
|
|
40
38
|
}
|
|
41
|
-
for (
|
|
39
|
+
for (let index = 0; index < filters.length; index++) {
|
|
42
40
|
if (filters[index].type === 'TimeFilterItem') {
|
|
43
41
|
return false;
|
|
44
42
|
}
|
|
45
43
|
}
|
|
46
44
|
return true;
|
|
47
45
|
}, [global_data === null || global_data === void 0 ? void 0 : global_data.activeFilter]);
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}, [areas_data, isTimeFilterNotSelected]);
|
|
51
|
-
var getActiveTimeFilterPeriod = function getActiveTimeFilterPeriod() {
|
|
46
|
+
const mappedAreas = (0, _react.useMemo)(() => (0, _EventsMapContainerHelpers.areasMapper)(areas_data, isTimeFilterNotSelected), [areas_data, isTimeFilterNotSelected]);
|
|
47
|
+
const getActiveTimeFilterPeriod = () => {
|
|
52
48
|
var _global_data$activeFi2;
|
|
53
|
-
|
|
54
|
-
|
|
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';
|
|
55
51
|
if (!items || items.length < 1) {
|
|
56
52
|
return activeTimeFilter;
|
|
57
53
|
}
|
|
58
|
-
for (
|
|
54
|
+
for (let index = 0; index < items.length; index++) {
|
|
59
55
|
if (items[index].type === 'TimeFilterItem') {
|
|
60
56
|
if (typeof items[index].selected_options === 'string') items[index].selected_options = JSON.parse(items[index].selected_options);
|
|
61
57
|
activeTimeFilter = items[index].selected_options[0];
|
|
@@ -64,10 +60,8 @@ var EventsMapContainer = function EventsMapContainer(props) {
|
|
|
64
60
|
}
|
|
65
61
|
return activeTimeFilter;
|
|
66
62
|
};
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
}, [events_data.items]);
|
|
70
|
-
var MustSeenSites = (0, _react.useMemo)(function () {
|
|
63
|
+
const EventsPerSite = (0, _react.useMemo)(() => (0, _EventsMapContainerHelpers.CountEventsPerSiteID)(events_data.items), [events_data.items]);
|
|
64
|
+
const MustSeenSites = (0, _react.useMemo)(() => {
|
|
71
65
|
if (events_data.focusedEvent) {
|
|
72
66
|
return (0, _EventsMapContainerHelpers.getFocusedEventMustSeenSites)(events_data.focusedEvent);
|
|
73
67
|
} else if (events_data.hoveredEvent) {
|
|
@@ -75,46 +69,41 @@ var EventsMapContainer = function EventsMapContainer(props) {
|
|
|
75
69
|
}
|
|
76
70
|
return {};
|
|
77
71
|
}, [EventsPerSite, events_data.focusedEvent, events_data.hoveredEvent]);
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
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]) {
|
|
82
81
|
newPoint.hide = true;
|
|
82
|
+
} else {
|
|
83
|
+
newPoint.hide = false;
|
|
83
84
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
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
|
-
}
|
|
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;
|
|
96
90
|
}
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
}, [points_data, EventsPerSite, events_data.items, events_data.focusedEvent, events_data.hoveredEvent]);
|
|
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]);
|
|
102
96
|
|
|
103
97
|
// eslint-disable-next-line
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
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 () {
|
|
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)(() => {
|
|
116
105
|
if (global_data.waterAuthorityId) {
|
|
117
|
-
|
|
106
|
+
const period = getActiveTimeFilterPeriod();
|
|
118
107
|
dispatch((0, _actions3.fetchPoints)(global_data.waterAuthorityId, period));
|
|
119
108
|
dispatch((0, _actions2.fetchEdges)(global_data.waterAuthorityId));
|
|
120
109
|
dispatch((0, _actions.fetchAreas)(global_data.waterAuthorityId, period, true));
|
|
@@ -139,7 +128,7 @@ var EventsMapContainer = function EventsMapContainer(props) {
|
|
|
139
128
|
floatingGraph: /*#__PURE__*/_react.default.createElement(_FloatingGraph.default, {
|
|
140
129
|
isOpen: global_data === null || global_data === void 0 ? void 0 : global_data.floatingGraph.open,
|
|
141
130
|
customHighChartOptions: _GraphUtils.dndGraphInitOptions,
|
|
142
|
-
closeGraphHandler:
|
|
131
|
+
closeGraphHandler: () => {
|
|
143
132
|
dispatch((0, _actions4.closeFloatingGraph)());
|
|
144
133
|
},
|
|
145
134
|
globalDataFloatingGraph: global_data.floatingGraph,
|
|
@@ -149,4 +138,4 @@ var EventsMapContainer = function EventsMapContainer(props) {
|
|
|
149
138
|
}));
|
|
150
139
|
};
|
|
151
140
|
exports.EventsMapContainer = EventsMapContainer;
|
|
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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
|
|
141
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzIiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfYWN0aW9uczMiLCJfTWFwIiwiX0Zsb2F0aW5nR3JhcGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0dyYXBoVXRpbHMiLCJfYWN0aW9uczQiLCJfRHJhZ0FuZERyb3BBcmVhIiwiX0V2ZW50VXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiRXZlbnRzTWFwQ29udGFpbmVyIiwicHJvcHMiLCJfZ2xvYmFsX2RhdGEkZmxvYXRpbmciLCJfZ2xvYmFsX2RhdGEkZmxvYXRpbmcyIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIlJlZHV4U3RhdGUiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiYXJlYXNfZGF0YSIsImdsb2JhbF9kYXRhIiwicG9pbnRzX2RhdGEiLCJldmVudHNfZGF0YSIsImVkZ2VzX2RhdGEiLCJpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCIsInVzZU1lbW8iLCJfZ2xvYmFsX2RhdGEkYWN0aXZlRmkiLCJmaWx0ZXJzIiwiYWN0aXZlRmlsdGVyIiwiZmlsdGVyX2l0ZW1zIiwibGVuZ3RoIiwiaW5kZXgiLCJ0eXBlIiwibWFwcGVkQXJlYXMiLCJhcmVhc01hcHBlciIsImdldEFjdGl2ZVRpbWVGaWx0ZXJQZXJpb2QiLCJfZ2xvYmFsX2RhdGEkYWN0aXZlRmkyIiwiaXRlbXMiLCJhY3RpdmVUaW1lRmlsdGVyIiwic2VsZWN0ZWRfb3B0aW9ucyIsIkpTT04iLCJwYXJzZSIsIkV2ZW50c1BlclNpdGUiLCJDb3VudEV2ZW50c1BlclNpdGVJRCIsIk11c3RTZWVuU2l0ZXMiLCJmb2N1c2VkRXZlbnQiLCJnZXRGb2N1c2VkRXZlbnRNdXN0U2VlblNpdGVzIiwiaG92ZXJlZEV2ZW50IiwibWFwcGVkUG9pbnRzIiwibWFwIiwicG9pbnQiLCJuZXdQb2ludCIsImlkIiwiaXNDb2xsZWN0b3JVbm1vbml0b3JlZCIsImhpZGUiLCJyZWxhdGVkRXZlbnRzQW1vdW50IiwiZXZlbnRzVmlld0hvdmVyZWQiLCJtYXBwZWRFZGdlcyIsImZpbHRlciIsImVkZ2UiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwiZGVzY2VuZGFudHNfaGFzX25vbmVfY29sbGVjdG9ycyIsImFyZWFUb0NlbnRlckJ5IiwiZ2V0QXJlYXNUb0NlbnRlckJ5IiwidXNlRWZmZWN0Iiwid2F0ZXJBdXRob3JpdHlJZCIsInBlcmlvZCIsImZldGNoUG9pbnRzIiwiZmV0Y2hFZGdlcyIsImZldGNoQXJlYXMiLCJjcmVhdGVFbGVtZW50IiwiTWFwIiwiYXNzaWduIiwiYXJlYXMiLCJwb2ludHMiLCJlZGdlcyIsImV2ZW50cyIsImhpZGVFZGdlcyIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsImluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMiLCJmb3JFdmVudHNWaWV3IiwiZm9jdXNlZEV2ZW50UGF0aCIsImZvY3VzZWRFdmVudFBhdGhzIiwiZmxvYXRpbmdHcmFwaCIsImlzT3BlbiIsIm9wZW4iLCJjdXN0b21IaWdoQ2hhcnRPcHRpb25zIiwiZG5kR3JhcGhJbml0T3B0aW9ucyIsImNsb3NlR3JhcGhIYW5kbGVyIiwiY2xvc2VGbG9hdGluZ0dyYXBoIiwiZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGgiLCJldmVudF9kYXRhIiwiZ3JhcGhJZCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNNYXBDb250YWluZXIvRXZlbnRzTWFwQ29udGFpbmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIENvdW50RXZlbnRzUGVyU2l0ZUlELFxuICBnZXRBcmVhc1RvQ2VudGVyQnksXG4gIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMsXG59IGZyb20gJ3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzJztcbmltcG9ydCB7IGZldGNoQXJlYXMgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEVkZ2VzIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgRmxvYXRpbmdHcmFwaCBmcm9tICdzcmMvcGFnZXMvRXZlbnRzUGFnZS9GbG9hdGluZ0dyYXBoL0Zsb2F0aW5nR3JhcGgnO1xuaW1wb3J0IHsgZG5kR3JhcGhJbml0T3B0aW9ucyB9IGZyb20gJ3NyYy9XaWRnZXRzL01hcC9HcmFwaFV0aWxzJztcbmltcG9ydCB7IGNsb3NlRmxvYXRpbmdHcmFwaCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgRHJhZ0FuZERyb3BBcmVhIGZyb20gJy4uL0RyYWdBbmREcm9wQXJlYSc7XG5pbXBvcnQgeyBpc0NvbGxlY3RvclVubW9uaXRvcmVkIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL2V2ZW50cy9FdmVudFV0aWxzJztcbmludGVyZmFjZSBFdmVudHNNYXBDb250YWluZXJQcm9wcyB7XG4gIHNob3dTZWNvbmRNYXA6IGJvb2xlYW47XG59XG5leHBvcnQgY29uc3QgRXZlbnRzTWFwQ29udGFpbmVyOiBSZWFjdC5GQzxFdmVudHNNYXBDb250YWluZXJQcm9wcz4gPSAoXG4gIHByb3BzLFxuKSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEsIGdsb2JhbF9kYXRhLCBwb2ludHNfZGF0YSwgZXZlbnRzX2RhdGEsIGVkZ2VzX2RhdGEgfSA9XG4gICAgUmVkdXhTdGF0ZTtcblxuICBjb25zdCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyPy5maWx0ZXJfaXRlbXM7XG5cbiAgICBpZiAoIWZpbHRlcnMgfHwgZmlsdGVycy5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZmlsdGVycy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChmaWx0ZXJzW2luZGV4XS50eXBlID09PSAnVGltZUZpbHRlckl0ZW0nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSwgW2dsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXJdKTtcblxuICBjb25zdCBtYXBwZWRBcmVhcyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gYXJlYXNNYXBwZXIoYXJlYXNfZGF0YSwgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQpLFxuICAgIFthcmVhc19kYXRhLCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0QWN0aXZlVGltZUZpbHRlclBlcmlvZCA9ICgpID0+IHtcbiAgICBjb25zdCBpdGVtcyA9IGdsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXI/LmZpbHRlcl9pdGVtcztcbiAgICBsZXQgYWN0aXZlVGltZUZpbHRlciA9ICcxbSc7XG5cbiAgICBpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA8IDEpIHtcbiAgICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICAgIH1cblxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBpdGVtcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChpdGVtc1tpbmRleF0udHlwZSA9PT0gJ1RpbWVGaWx0ZXJJdGVtJykge1xuICAgICAgICBpZiAodHlwZW9mIGl0ZW1zW2luZGV4XS5zZWxlY3RlZF9vcHRpb25zID09PSAnc3RyaW5nJylcbiAgICAgICAgICBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9ucyA9IEpTT04ucGFyc2UoXG4gICAgICAgICAgICBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9ucyxcbiAgICAgICAgICApO1xuXG4gICAgICAgIGFjdGl2ZVRpbWVGaWx0ZXIgPSBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9uc1swXTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICB9O1xuXG4gIGNvbnN0IEV2ZW50c1BlclNpdGUgPSB1c2VNZW1vKFxuICAgICgpID0+IENvdW50RXZlbnRzUGVyU2l0ZUlEKGV2ZW50c19kYXRhLml0ZW1zKSxcbiAgICBbZXZlbnRzX2RhdGEuaXRlbXNdLFxuICApO1xuXG4gIGNvbnN0IE11c3RTZWVuU2l0ZXMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQpO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH0sIFtFdmVudHNQZXJTaXRlLCBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsIGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudF0pO1xuXG4gIGNvbnN0IG1hcHBlZFBvaW50cyA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLm1hcCgocG9pbnQpID0+IHtcbiAgICAgICAgY29uc3QgbmV3UG9pbnQgPSB7IC4uLnBvaW50IH07XG5cbiAgICAgICAgaWYgKCFFdmVudHNQZXJTaXRlW3BvaW50LmlkXSB8fCBpc0NvbGxlY3RvclVubW9uaXRvcmVkKHBvaW50KSkge1xuICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0pIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0gJiYgaXNDb2xsZWN0b3JVbm1vbml0b3JlZChwb2ludCkpIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbmV3UG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA9IEV2ZW50c1BlclNpdGVbcG9pbnQuaWRdIHx8IDA7XG4gICAgICAgIG5ld1BvaW50LmV2ZW50c1ZpZXdIb3ZlcmVkID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIG5ld1BvaW50O1xuICAgICAgfSksXG4gICAgW1xuICAgICAgcG9pbnRzX2RhdGEsXG4gICAgICBFdmVudHNQZXJTaXRlLFxuICAgICAgZXZlbnRzX2RhdGEuaXRlbXMsXG4gICAgICBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsXG4gICAgICBldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQsXG4gICAgXSxcbiAgKTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY29uc3QgbWFwcGVkRWRnZXMgPSBlZGdlc19kYXRhLml0ZW1zLmZpbHRlcihcbiAgICAoZWRnZSkgPT5cbiAgICAgIC8vIChOdW1iZXIoRXZlbnRzUGVyU2l0ZVtlZGdlLnNvdXJjZV9wb2ludF9pZF0pID4gMCB8fFxuICAgICAgLy8gTnVtYmVyKEV2ZW50c1BlclNpdGVbZWRnZS50YXJnZXRfcG9pbnRfaWRdKSA+IDApXG4gICAgICAvLyAgJiZcbiAgICAgIGVkZ2UuZGVzY2VuZGFudHNfaGFzX2RldmljZSA9PT0gdHJ1ZSB8fFxuICAgICAgZWRnZS5kZXNjZW5kYW50c19oYXNfbm9uZV9jb2xsZWN0b3JzID09PSB0cnVlLFxuICApO1xuXG4gIGNvbnN0IGFyZWFUb0NlbnRlckJ5ID0gdXNlTWVtbyhcbiAgICAoKSA9PiBnZXRBcmVhc1RvQ2VudGVyQnkoZ2xvYmFsX2RhdGEsIG1hcHBlZEFyZWFzKSxcbiAgICBbZ2xvYmFsX2RhdGE/LmFjdGl2ZUZpbHRlciwgbWFwcGVkQXJlYXNdLFxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpIHtcbiAgICAgIGNvbnN0IHBlcmlvZCA9IGdldEFjdGl2ZVRpbWVGaWx0ZXJQZXJpb2QoKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoUG9pbnRzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIHBlcmlvZCkpO1xuICAgICAgZGlzcGF0Y2goZmV0Y2hFZGdlcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICBkaXNwYXRjaChmZXRjaEFyZWFzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIHBlcmlvZCwgdHJ1ZSkpO1xuICAgIH1cbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlcl0pO1xuXG4gIHJldHVybiAoXG4gICAgPE1hcFxuICAgICAgey4uLlJlZHV4U3RhdGV9XG4gICAgICBhcmVhcz17bWFwcGVkQXJlYXN9XG4gICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICBwb2ludHM9e21hcHBlZFBvaW50c31cbiAgICAgIGVkZ2VzPXttYXBwZWRFZGdlc31cbiAgICAgIGV2ZW50cz17ZXZlbnRzX2RhdGEuaXRlbXN9XG4gICAgICBmb2N1c2VkRXZlbnQ9e2V2ZW50c19kYXRhLmZvY3VzZWRFdmVudH1cbiAgICAgIGhvdmVyZWRFdmVudD17ZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50fVxuICAgICAgYXJlYVRvQ2VudGVyQnk9e2FyZWFUb0NlbnRlckJ5fVxuICAgICAgaGlkZUVkZ2VzPXt0cnVlfVxuICAgICAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPXtmYWxzZX1cbiAgICAgIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXM9e3RydWV9XG4gICAgICBmb3JFdmVudHNWaWV3PXt0cnVlfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtcbiAgICAgICAgPERyYWdBbmREcm9wQXJlYSBmb2N1c2VkRXZlbnRQYXRoPXtldmVudHNfZGF0YT8uZm9jdXNlZEV2ZW50UGF0aHN9PlxuICAgICAgICAgIHt7XG4gICAgICAgICAgICBmbG9hdGluZ0dyYXBoOiAoXG4gICAgICAgICAgICAgIDxGbG9hdGluZ0dyYXBoXG4gICAgICAgICAgICAgICAgaXNPcGVuPXtnbG9iYWxfZGF0YT8uZmxvYXRpbmdHcmFwaC5vcGVufVxuICAgICAgICAgICAgICAgIGN1c3RvbUhpZ2hDaGFydE9wdGlvbnM9e2RuZEdyYXBoSW5pdE9wdGlvbnN9XG4gICAgICAgICAgICAgICAgY2xvc2VHcmFwaEhhbmRsZXI9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKGNsb3NlRmxvYXRpbmdHcmFwaCgpKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIGdsb2JhbERhdGFGbG9hdGluZ0dyYXBoPXtnbG9iYWxfZGF0YS5mbG9hdGluZ0dyYXBofVxuICAgICAgICAgICAgICAgIGV2ZW50X2RhdGE9e2V2ZW50c19kYXRhPy5mb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICAgICAgZ3JhcGhJZD17Z2xvYmFsX2RhdGE/LmZsb2F0aW5nR3JhcGg/LnBvaW50Py5pZH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgfX1cbiAgICAgICAgPC9EcmFnQW5kRHJvcEFyZWE+XG4gICAgICB9XG4gICAgPC9NYXA+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsMEJBQUEsR0FBQUYsT0FBQTtBQU1BLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFNBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLElBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLGNBQUEsR0FBQUMsc0JBQUEsQ0FBQVIsT0FBQTtBQUNB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
|
|
@@ -1,58 +1,46 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
6
|
exports.getFocusedEventMustSeenSites = exports.getAreasToCenterBy = exports.areasMapper = exports.CountEventsPerSiteID = void 0;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
events.reduce(function (EventsPerSite, event) {
|
|
7
|
+
const CountEventsPerSiteID = events => {
|
|
8
|
+
let eventsPerSite = {};
|
|
9
|
+
events.reduce((EventsPerSite, event) => {
|
|
12
10
|
eventsPerSite = event.point_id__events;
|
|
13
11
|
return event.point_id__events;
|
|
14
12
|
}, eventsPerSite);
|
|
15
13
|
return eventsPerSite;
|
|
16
14
|
};
|
|
17
15
|
exports.CountEventsPerSiteID = CountEventsPerSiteID;
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
const getFocusedEventMustSeenSites = focusedEvent => {
|
|
17
|
+
const points_ids = {};
|
|
20
18
|
if (focusedEvent) {
|
|
21
|
-
focusedEvent.observations.forEach(
|
|
22
|
-
return points_ids[observation.point_id] = true;
|
|
23
|
-
});
|
|
19
|
+
focusedEvent.observations.forEach(observation => points_ids[observation.point_id] = true);
|
|
24
20
|
}
|
|
25
21
|
return points_ids;
|
|
26
22
|
};
|
|
27
23
|
exports.getFocusedEventMustSeenSites = getFocusedEventMustSeenSites;
|
|
28
|
-
|
|
24
|
+
const getAreasToCenterBy = (global_data, mappedAreas) => {
|
|
29
25
|
var _global_data$activeFi;
|
|
30
|
-
|
|
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;
|
|
31
27
|
if (!filters || filters.length < 1) {
|
|
32
28
|
return null;
|
|
33
29
|
}
|
|
34
|
-
|
|
35
|
-
return filter.type === 'AreaFilterItem';
|
|
36
|
-
});
|
|
30
|
+
const areaFilter = filters.find(filter => filter.type === 'AreaFilterItem');
|
|
37
31
|
if (areaFilter && areaFilter.selected_options.length > 0) {
|
|
38
|
-
|
|
39
|
-
|
|
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();
|
|
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();
|
|
47
35
|
}
|
|
48
|
-
return mappedAreas === null || mappedAreas === void 0 ? void 0 : mappedAreas.map(
|
|
49
|
-
return area.shape_data;
|
|
50
|
-
}).flat();
|
|
36
|
+
return mappedAreas === null || mappedAreas === void 0 ? void 0 : mappedAreas.map(area => area.shape_data).flat();
|
|
51
37
|
};
|
|
52
38
|
exports.getAreasToCenterBy = getAreasToCenterBy;
|
|
53
|
-
|
|
54
|
-
return areas_data.newAreas.map(
|
|
55
|
-
|
|
39
|
+
const areasMapper = (areas_data, isTimeFilterNotSelected) => {
|
|
40
|
+
return areas_data.newAreas.map(area => {
|
|
41
|
+
const newArea = {
|
|
42
|
+
...area
|
|
43
|
+
};
|
|
56
44
|
newArea.showColorOnlyInBorders = true;
|
|
57
45
|
// if (isTimeFilterNotSelected) {
|
|
58
46
|
// newArea.color = '#7f7f7f';
|
|
@@ -61,4 +49,4 @@ var areasMapper = function areasMapper(areas_data, isTimeFilterNotSelected) {
|
|
|
61
49
|
});
|
|
62
50
|
};
|
|
63
51
|
exports.areasMapper = areasMapper;
|
|
64
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb3VudEV2ZW50c1BlclNpdGVJRCIsImV2ZW50cyIsImV2ZW50c1BlclNpdGUiLCJyZWR1Y2UiLCJFdmVudHNQZXJTaXRlIiwiZXZlbnQiLCJwb2ludF9pZF9fZXZlbnRzIiwiZXhwb3J0cyIsImdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMiLCJmb2N1c2VkRXZlbnQiLCJwb2ludHNfaWRzIiwib2JzZXJ2YXRpb25zIiwiZm9yRWFjaCIsIm9ic2VydmF0aW9uIiwicG9pbnRfaWQiLCJnZXRBcmVhc1RvQ2VudGVyQnkiLCJnbG9iYWxfZGF0YSIsIm1hcHBlZEFyZWFzIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpIiwiZmlsdGVycyIsImFjdGl2ZUZpbHRlciIsImZpbHRlcl9pdGVtcyIsImxlbmd0aCIsImFyZWFGaWx0ZXIiLCJmaW5kIiwiZmlsdGVyIiwidHlwZSIsInNlbGVjdGVkX29wdGlvbnMiLCJhcmVhSURzIiwibWFwIiwiaXRlbSIsIk51bWJlciIsImFyZWFzIiwiQXJlYSIsImluY2x1ZGVzIiwiYXJlYV9pZCIsImFyZWEiLCJzaGFwZV9kYXRhIiwiZmxhdCIsImFyZWFzTWFwcGVyIiwiYXJlYXNfZGF0YSIsImlzVGltZUZpbHRlck5vdFNlbGVjdGVkIiwibmV3QXJlYXMiLCJuZXdBcmVhIiwic2hvd0NvbG9yT25seUluQm9yZGVycyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgSUdsb2JhbFN0YXRlIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9tb2RlbHMvSUdsb2JhbFN0YXRlJztcblxudHlwZSBldmVudHNQZXJTaXRlVHlwZSA9IHsgW2tleTogbnVtYmVyXTogbnVtYmVyIH07XG5jb25zdCBDb3VudEV2ZW50c1BlclNpdGVJRCA9IChldmVudHM6IElFdmVudFtdKTogZXZlbnRzUGVyU2l0ZVR5cGUgPT4ge1xuICBsZXQgZXZlbnRzUGVyU2l0ZSA9IHt9IGFzIGV2ZW50c1BlclNpdGVUeXBlO1xuXG4gIGV2ZW50cy5yZWR1Y2UoKEV2ZW50c1BlclNpdGUsIGV2ZW50KSA9PiB7XG4gICAgZXZlbnRzUGVyU2l0ZSA9IGV2ZW50LnBvaW50X2lkX19ldmVudHM7XG4gICAgcmV0dXJuIGV2ZW50LnBvaW50X2lkX19ldmVudHM7XG4gIH0sIGV2ZW50c1BlclNpdGUpO1xuXG4gIHJldHVybiBldmVudHNQZXJTaXRlO1xufTtcblxuY29uc3QgZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyA9IChcbiAgZm9jdXNlZEV2ZW50OiBJRXZlbnQgfCBudWxsLFxuKTogeyBba2V5OiBudW1iZXJdOiBib29sZWFuIH0gPT4ge1xuICBjb25zdCBwb2ludHNfaWRzID0ge30gYXMgeyBba2V5OiBudW1iZXJdOiBib29sZWFuIH07XG4gIGlmIChmb2N1c2VkRXZlbnQpIHtcbiAgICBmb2N1c2VkRXZlbnQub2JzZXJ2YXRpb25zLmZvckVhY2goXG4gICAgICAob2JzZXJ2YXRpb24pID0+IChwb2ludHNfaWRzW29ic2VydmF0aW9uLnBvaW50X2lkXSA9IHRydWUpLFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIHBvaW50c19pZHM7XG59O1xuXG5jb25zdCBnZXRBcmVhc1RvQ2VudGVyQnkgPSAoXG4gIGdsb2JhbF9kYXRhOiBJR2xvYmFsU3RhdGUsXG4gIG1hcHBlZEFyZWFzOiBJQXJlYVtdLFxuKSA9PiB7XG4gIGNvbnN0IGZpbHRlcnMgPSBnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyPy5maWx0ZXJfaXRlbXM7XG5cbiAgaWYgKCFmaWx0ZXJzIHx8IGZpbHRlcnMubGVuZ3RoIDwgMSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgYXJlYUZpbHRlciA9IGZpbHRlcnMuZmluZCgoZmlsdGVyKSA9PiBmaWx0ZXIudHlwZSA9PT0gJ0FyZWFGaWx0ZXJJdGVtJyk7XG5cbiAgaWYgKGFyZWFGaWx0ZXIgJiYgYXJlYUZpbHRlci5zZWxlY3RlZF9vcHRpb25zLmxlbmd0aCA+IDApIHtcbiAgICBjb25zdCBhcmVhSURzID0gYXJlYUZpbHRlci5zZWxlY3RlZF9vcHRpb25zLm1hcCgoaXRlbSkgPT4gTnVtYmVyKGl0ZW0pKTtcbiAgICBjb25zdCBhcmVhcyA9IG1hcHBlZEFyZWFzLmZpbHRlcigoQXJlYSkgPT4gYXJlYUlEcy5pbmNsdWRlcyhBcmVhLmFyZWFfaWQpKTtcblxuICAgIHJldHVybiBhcmVhcz8ubWFwKChhcmVhKSA9PiBhcmVhLnNoYXBlX2RhdGEpLmZsYXQoKTtcbiAgfVxuXG4gIHJldHVybiBtYXBwZWRBcmVhcz8ubWFwKChhcmVhKSA9PiBhcmVhLnNoYXBlX2RhdGEpLmZsYXQoKTtcbn07XG5cbmNvbnN0IGFyZWFzTWFwcGVyID0gKGFyZWFzX2RhdGEsIGlzVGltZUZpbHRlck5vdFNlbGVjdGVkKSA9PiB7XG4gIHJldHVybiBhcmVhc19kYXRhLm5ld0FyZWFzLm1hcCgoYXJlYSkgPT4ge1xuICAgIGNvbnN0IG5ld0FyZWEgPSB7IC4uLmFyZWEgfTtcbiAgICBuZXdBcmVhLnNob3dDb2xvck9ubHlJbkJvcmRlcnMgPSB0cnVlO1xuICAgIC8vIGlmIChpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCkge1xuICAgIC8vICAgbmV3QXJlYS5jb2xvciA9ICcjN2Y3ZjdmJztcbiAgICAvLyB9XG4gICAgcmV0dXJuIG5ld0FyZWE7XG4gIH0pO1xufTtcblxuZXhwb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIGdldEFyZWFzVG9DZW50ZXJCeSxcbiAgZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyxcbiAgQ291bnRFdmVudHNQZXJTaXRlSUQsXG59O1xuIl0sIm1hcHBpbmdzIjoi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
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
@@ -12,14 +11,12 @@ var _reactRedux = require("react-redux");
|
|
|
12
11
|
var _actions = require("store/context/actions");
|
|
13
12
|
var _Body = _interopRequireDefault(require("./Body/Body"));
|
|
14
13
|
var _Analytics = require("../../utilities/Analytics");
|
|
15
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function
|
|
16
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null ||
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
});
|
|
22
|
-
(0, _react.useEffect)(function () {
|
|
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)(() => {
|
|
23
20
|
(0, _Analytics.analyticsTrack)('Viewed Events Page', {
|
|
24
21
|
utility_name: waterAuthorityName
|
|
25
22
|
});
|
|
@@ -33,4 +30,4 @@ var EventsPage = function EventsPage() {
|
|
|
33
30
|
};
|
|
34
31
|
var _default = EventsPage;
|
|
35
32
|
exports.default = _default;
|
|
36
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfcmVhY3RSZWR1eCIsIl9hY3Rpb25zIiwiX0JvZHkiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0FuYWx5dGljcyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJFdmVudHNQYWdlIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIndhdGVyQXV0aG9yaXR5TmFtZSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJnbG9iYWxfZGF0YSIsInVzZUVmZmVjdCIsImFuYWx5dGljc1RyYWNrIiwidXRpbGl0eV9uYW1lIiwidXBkYXRlTmF2Q29udGV4dCIsIm5hbWUiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJjbGFzc05hbWUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNQYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ2Jvb3RzdHJhcC9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXBkYXRlTmF2Q29udGV4dCB9IGZyb20gJ3NyYy9zdG9yZS9jb250ZXh0L2FjdGlvbnMnO1xuaW1wb3J0IEJvZHkgZnJvbSAnLi9Cb2R5L0JvZHknO1xuaW1wb3J0IHsgYW5hbHl0aWNzVHJhY2sgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvQW5hbHl0aWNzJztcblxuY29uc3QgRXZlbnRzUGFnZTogUmVhY3QuRkMgPSAoKSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlOYW1lID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlKSA9PiBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eU5hbWUsXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBhbmFseXRpY3NUcmFjaygnVmlld2VkIEV2ZW50cyBQYWdlJywge1xuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gICAgZGlzcGF0Y2godXBkYXRlTmF2Q29udGV4dCh7IG5hbWU6ICdldmVudHNfdmlldycgfSkpO1xuICB9LCBbZGlzcGF0Y2hdKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImFwcC13cmFwcGVyXCI+XG4gICAgICAgIDxCb2R5IC8+XG4gICAgICA8L2Rpdj5cbiAgICA8Lz5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEV2ZW50c1BhZ2U7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQUEsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFFBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQU4sT0FBQTtBQUNBLElBQUFPLFVBQUEsR0FBQVAsT0FBQTtBQUEyRCxTQUFBUSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEsQ0FBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBUCx3QkFBQVcsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLG9CQUFBQSxHQUFBLHdCQUFBQSxHQUFBLDRCQUFBRSxPQUFBLEVBQUFGLEdBQUEsVUFBQUcsS0FBQSxHQUFBUix3QkFBQSxDQUFBQyxXQUFBLE9BQUFPLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFKLEdBQUEsWUFBQUcsS0FBQSxDQUFBRSxHQUFBLENBQUFMLEdBQUEsU0FBQU0sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFYLEdBQUEsUUFBQVcsR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZCxHQUFBLEVBQUFXLEdBQUEsU0FBQUksSUFBQSxHQUFBUixxQkFBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFWLEdBQUEsRUFBQVcsR0FBQSxjQUFBSSxJQUFBLEtBQUFBLElBQUEsQ0FBQVYsR0FBQSxJQUFBVSxJQUFBLENBQUFDLEdBQUEsS0FBQVIsTUFBQSxDQUFBQyxjQUFBLENBQUFILE1BQUEsRUFBQUssR0FBQSxFQUFBSSxJQUFBLFlBQUFULE1BQUEsQ0FBQUssR0FBQSxJQUFBWCxHQUFBLENBQUFXLEdBQUEsU0FBQUwsTUFBQSxDQUFBSixPQUFBLEdBQUFGLEdBQUEsTUFBQUcsS0FBQSxJQUFBQSxLQUFBLENBQUFhLEdBQUEsQ0FBQWhCLEdBQUEsRUFBQU0sTUFBQSxZQUFBQSxNQUFBO0FBRTNELE1BQU1XLFVBQW9CLEdBQUdBLENBQUEsS0FBTTtFQUNqQyxNQUFNQyxRQUFRLEdBQUcsSUFBQUMsdUJBQVcsRUFBQyxDQUFDO0VBQzlCLE1BQU1DLGtCQUFrQixHQUFHLElBQUFDLHVCQUFXLEVBQ25DQyxLQUFLLElBQUtBLEtBQUssQ0FBQ0MsV0FBVyxDQUFDSCxrQkFDL0IsQ0FBQztFQUVELElBQUFJLGdCQUFTLEVBQUMsTUFBTTtJQUNkLElBQUFDLHlCQUFjLEVBQUMsb0JBQW9CLEVBQUU7TUFDbkNDLFlBQVksRUFBRU47SUFDaEIsQ0FBQyxDQUFDO0lBQ0ZGLFFBQVEsQ0FBQyxJQUFBUyx5QkFBZ0IsRUFBQztNQUFFQyxJQUFJLEVBQUU7SUFBYyxDQUFDLENBQUMsQ0FBQztFQUNyRCxDQUFDLEVBQUUsQ0FBQ1YsUUFBUSxDQUFDLENBQUM7RUFFZCxvQkFDRTlCLE1BQUEsQ0FBQWMsT0FBQSxDQUFBMkIsYUFBQSxDQUFBekMsTUFBQSxDQUFBYyxPQUFBLENBQUE0QixRQUFBLHFCQUNFMUMsTUFBQSxDQUFBYyxPQUFBLENBQUEyQixhQUFBO0lBQUtFLFNBQVMsRUFBQztFQUFhLGdCQUMxQjNDLE1BQUEsQ0FBQWMsT0FBQSxDQUFBMkIsYUFBQSxDQUFDckMsS0FBQSxDQUFBVSxPQUFJLE1BQUUsQ0FDSixDQUNMLENBQUM7QUFFUCxDQUFDO0FBQUMsSUFBQThCLFFBQUEsR0FFYWYsVUFBVTtBQUFBZ0IsT0FBQSxDQUFBL0IsT0FBQSxHQUFBOEIsUUFBQSJ9
|
|
@@ -1,48 +1,42 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
10
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
11
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
9
|
var _Graph = _interopRequireDefault(require("components/Graph"));
|
|
13
10
|
require("./floatingGraphStyle.scss");
|
|
14
11
|
var _highstock = _interopRequireDefault(require("highcharts/highstock"));
|
|
15
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function
|
|
16
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null ||
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
customHighChartOptions =
|
|
21
|
-
globalDataFloatingGraph
|
|
22
|
-
event_data
|
|
23
|
-
closeGraphHandler
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
minimized = _useState2[0],
|
|
27
|
-
setMinimized = _useState2[1];
|
|
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);
|
|
28
23
|
_highstock.default.setOptions({
|
|
29
24
|
lang: {
|
|
30
25
|
rangeSelectorZoom: ''
|
|
31
26
|
}
|
|
32
27
|
});
|
|
33
|
-
|
|
34
|
-
|
|
28
|
+
const graphTitle = isOpen ? globalDataFloatingGraph === null || globalDataFloatingGraph === void 0 ? void 0 : globalDataFloatingGraph.point.group.name : '';
|
|
29
|
+
const matchGraph = () => {
|
|
35
30
|
var _observation, _observation2, _observation3;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
31
|
+
const timeGapFromEvent = 86400 * 31 * 2; // 2 months
|
|
32
|
+
let graphData = {};
|
|
33
|
+
let observation = globalDataFloatingGraph === null || globalDataFloatingGraph === void 0 ? void 0 : globalDataFloatingGraph.observation;
|
|
39
34
|
graphData.pointId = ((_observation = observation) === null || _observation === void 0 ? void 0 : _observation.point_id) || (globalDataFloatingGraph === null || globalDataFloatingGraph === void 0 ? void 0 : globalDataFloatingGraph.point.id);
|
|
40
35
|
if (!observation && (event_data === null || event_data === void 0 ? void 0 : event_data.observations)) {
|
|
41
|
-
observation = event_data.observations.find(
|
|
42
|
-
return o.id === (event_data === null || event_data === void 0 ? void 0 : event_data.first_seen_observation_id);
|
|
43
|
-
});
|
|
36
|
+
observation = event_data.observations.find(o => o.id === (event_data === null || event_data === void 0 ? void 0 : event_data.first_seen_observation_id));
|
|
44
37
|
}
|
|
45
|
-
graphData =
|
|
38
|
+
graphData = {
|
|
39
|
+
...graphData,
|
|
46
40
|
plotFrom: ((_observation2 = observation) === null || _observation2 === void 0 ? void 0 : _observation2.start_time) || 0,
|
|
47
41
|
plotTo: ((_observation3 = observation) === null || _observation3 === void 0 ? void 0 : _observation3.last_seen_time) || 0,
|
|
48
42
|
startTime: observation.start_time - timeGapFromEvent,
|
|
@@ -50,29 +44,23 @@ var FloatingGraph = function FloatingGraph(_ref) {
|
|
|
50
44
|
noObservation: observation ? false : true,
|
|
51
45
|
customHighChartOptions: customHighChartOptions,
|
|
52
46
|
displayResetZoomButton: true
|
|
53
|
-
}
|
|
47
|
+
};
|
|
54
48
|
return /*#__PURE__*/_react.default.createElement(_Graph.default, graphData);
|
|
55
49
|
};
|
|
56
|
-
|
|
57
|
-
setMinimized(
|
|
58
|
-
return !prevState;
|
|
59
|
-
});
|
|
50
|
+
const minimizeGraphHandler = () => {
|
|
51
|
+
setMinimized(prevState => !prevState);
|
|
60
52
|
};
|
|
61
53
|
if (!isOpen) {
|
|
62
54
|
return null;
|
|
63
55
|
}
|
|
64
56
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
65
|
-
className:
|
|
57
|
+
className: `floating-graph ${minimized ? 'minimized' : ''}`
|
|
66
58
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
67
59
|
className: "floating-graph__close",
|
|
68
|
-
onClick:
|
|
69
|
-
return closeGraphHandler();
|
|
70
|
-
}
|
|
60
|
+
onClick: () => closeGraphHandler()
|
|
71
61
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
72
62
|
className: "floating-graph__minimize",
|
|
73
|
-
onClick:
|
|
74
|
-
return minimizeGraphHandler();
|
|
75
|
-
}
|
|
63
|
+
onClick: () => minimizeGraphHandler()
|
|
76
64
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
77
65
|
className: "graph-ttl"
|
|
78
66
|
}, graphTitle), /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -81,4 +69,4 @@ var FloatingGraph = function FloatingGraph(_ref) {
|
|
|
81
69
|
};
|
|
82
70
|
var _default = FloatingGraph;
|
|
83
71
|
exports.default = _default;
|
|
84
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
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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
|