@kando-env/kando-ui 1.2.232 → 1.2.233
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 +4 -66
- package/lib/Widgets/EventsCarousel/EventsCarousel.js +11 -41
- package/lib/Widgets/EventsRow/EventsRow.js +14 -41
- package/lib/Widgets/Map/GraphUtils.js +1 -4
- package/lib/Widgets/Map/Map.js +20 -42
- package/lib/Widgets/Map/MapUtils.js +4 -58
- package/lib/Widgets/Map/areas/AreaPolygon.js +7 -27
- package/lib/Widgets/Map/areas/AreaPolygons.js +8 -21
- package/lib/Widgets/Map/edges/Edge.js +9 -30
- package/lib/Widgets/Map/edges/Edges.js +11 -17
- package/lib/Widgets/Map/edges/arrows/Arrows.js +7 -22
- package/lib/Widgets/Map/events/Event.js +7 -23
- package/lib/Widgets/Map/events/EventIndicator.js +19 -42
- package/lib/Widgets/Map/events/EventPath.js +5 -20
- package/lib/Widgets/Map/events/EventUtils.js +4 -53
- package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +5 -16
- package/lib/Widgets/Map/events/PointOfEvent.js +3 -32
- package/lib/Widgets/Map/events/PointsForSpecificEvent.js +4 -14
- package/lib/Widgets/Map/events/Snail.js +7 -19
- package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +15 -54
- package/lib/Widgets/Map/map/FloatingGraph.js +3 -19
- package/lib/Widgets/Map/map/GraphDateButton.js +3 -9
- package/lib/Widgets/Map/matchGraph/MatchGraph.js +5 -11
- package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +4 -10
- package/lib/Widgets/Map/points/PointMarker.js +3 -19
- package/lib/Widgets/Map/points/PointMarkers.js +6 -19
- package/lib/Widgets/Map/points/PointUtils.js +7 -78
- package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +15 -49
- package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +4 -19
- package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +1 -13
- package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +1 -5
- package/lib/Widgets/MostPolluting/Areas/Areas.js +19 -53
- package/lib/Widgets/MostPolluting/Areas/areas.mock.js +1 -1
- package/lib/Widgets/MostPolluting/Areas/areasResponse.interface.js +1 -1
- package/lib/Widgets/MostPolluting/Areas/styles.js +1 -7
- package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +3 -11
- package/lib/Widgets/MostPolluting/Factories/Factories.js +30 -64
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +4 -21
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +1 -10
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +4 -17
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +3 -7
- package/lib/Widgets/MostPolluting/Factories/factories.mock.js +1 -1
- package/lib/Widgets/MostPolluting/Factories/factoriesResponse.interface.js +1 -1
- package/lib/Widgets/MostPolluting/Factories/styles.js +1 -7
- package/lib/Widgets/MostPolluting/MostPolluting.js +4 -17
- package/lib/Widgets/MostPolluting/MostPolluting.stories.js +13 -17
- package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +2 -9
- package/lib/Widgets/MostPolluting/ShowMore/styles.js +1 -5
- package/lib/Widgets/MostPolluting/assets/index.js +17 -28
- package/lib/Widgets/MostPolluting/components/ChangePercent.js +1 -16
- package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +15 -26
- package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +4 -26
- package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +25 -33
- package/lib/Widgets/MostPolluting/components/PotentialImpact.js +4 -20
- package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +29 -43
- package/lib/Widgets/MostPolluting/models.js +1 -1
- package/lib/Widgets/MostPolluting/styles.js +1 -7
- package/lib/Widgets/PotentialImpactSummary/Back/Back.js +2 -9
- package/lib/Widgets/PotentialImpactSummary/Icon.js +1 -11
- package/lib/Widgets/PotentialImpactSummary/index.js +7 -29
- package/lib/Widgets/PotentialImpactSummary/index.test.js +17 -36
- package/lib/Widgets/PotentialImpactSummary/styles.js +2 -15
- package/lib/Widgets/PotentialImpactSummary/useCasesResponse.interface.js +1 -1
- package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +4 -10
- package/lib/Widgets/QualitySummary/PieChart/PieChart.js +7 -21
- package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +19 -29
- package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +15 -24
- package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +7 -21
- package/lib/Widgets/QualitySummary/QualitySummary.js +8 -24
- package/lib/Widgets/QualitySummary/qualitySummary.mock.js +2 -2
- package/lib/Widgets/QualitySummary/qualitySummaryResponse.interface.js +1 -1
- package/lib/Widgets/QualitySummary/styles.js +3 -16
- package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +9 -20
- package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +9 -34
- package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +9 -18
- package/lib/Widgets/UtilityInformation/UtilityInformation.js +22 -45
- package/lib/Widgets/UtilityInformation/UtilityInformationResponse.interface.js +1 -1
- package/lib/Widgets/UtilityInformation/styles.js +2 -22
- package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +2 -2
- package/lib/assets/icons/index.js +5 -8
- package/lib/assets/icons/kandoStepper/index.js +9 -14
- package/lib/components/ApplyButton/ApplyButton.js +5 -11
- package/lib/components/ApplyButton/index.js +1 -4
- package/lib/components/Backdrop/Backdrop.js +2 -8
- package/lib/components/ContentLoader/ContentLoader.js +7 -12
- package/lib/components/ContentLoader/index.js +1 -2
- package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +7 -14
- package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +2 -8
- package/lib/components/CustomInputs/DoubleTabs/styles.js +2 -10
- package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +5 -18
- package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +1 -5
- package/lib/components/CustomInputs/Search/Search.js +13 -38
- package/lib/components/CustomInputs/Search/index.js +1 -4
- package/lib/components/CustomInputs/Select/Select.js +13 -31
- package/lib/components/CustomInputs/Select/Select.stories.js +2 -8
- package/lib/components/DamageType/DamageType.js +37 -76
- package/lib/components/DamageType/index.js +1 -4
- package/lib/components/DataLoaderError/DataLoaderError.js +4 -10
- package/lib/components/DischargeHeatmap/DischargeHeatmap.js +6 -16
- package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +17 -37
- package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +12 -37
- package/lib/components/DischargeHeatmap/HighchartsOptions.js +6 -10
- package/lib/components/DischargeHeatmap/index.js +1 -4
- package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -4
- package/lib/components/DischargeHeatmap/popupText.js +1 -16
- package/lib/components/DischargeHeatmap/titles.js +1 -8
- package/lib/components/DischargeHeatmap/types.js +1 -1
- package/lib/components/ErrorBoundary.js +3 -15
- package/lib/components/Events/Events.js +5 -30
- package/lib/components/Events/index.js +1 -4
- package/lib/components/Graph/Graph.js +31 -74
- package/lib/components/Graph/index.js +1 -4
- package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +1 -7
- package/lib/components/Header/Breadcrumbs/index.js +1 -4
- package/lib/components/Header/DoubleTabs/DoubleTabs.js +14 -30
- package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +2 -8
- package/lib/components/Header/DoubleTabs/styles.js +2 -10
- package/lib/components/Header/Header.js +1 -7
- package/lib/components/Header/Header.stories.js +2 -8
- package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +1 -11
- package/lib/components/Header/InfoBar/InfoBar.js +4 -30
- package/lib/components/Header/InfoBar/Search/Control.js +2 -13
- package/lib/components/Header/InfoBar/Search/GroupLabel.js +1 -12
- package/lib/components/Header/InfoBar/Search/Search.js +5 -26
- package/lib/components/Header/InfoBar/Search/SearchContainer.js +4 -21
- package/lib/components/Header/InfoBar/Search/index.js +1 -4
- package/lib/components/Header/InfoBar/Search/searchStyle.js +1 -4
- package/lib/components/Header/KandoNavbar/KandoNavbar.js +46 -91
- package/lib/components/Header/KandoNavbar/index.js +1 -4
- package/lib/components/Header/Slideshow/Slideshow.js +31 -67
- package/lib/components/Header/Slideshow/index.js +1 -4
- package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +1 -7
- package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +2 -15
- package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +1 -15
- package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +7 -24
- package/lib/components/Header/Toolbar/Toolbar.js +46 -84
- package/lib/components/InfoBar/InfoBar.js +8 -23
- package/lib/components/InfoBar/InfoBar.stories.js +2 -8
- package/lib/components/KandoModal/KandoModal.js +19 -42
- package/lib/components/KandoModal/index.js +1 -4
- package/lib/components/Link.js +2 -11
- package/lib/components/Links/CustomRedirect/CustomRedirect.js +3 -12
- package/lib/components/Links/StyledLink/StyledLink.js +6 -16
- package/lib/components/Links/StyledNavLink/StyledNavLink.js +4 -14
- package/lib/components/LiveEvents/CarouselSlide.js +5 -11
- package/lib/components/LiveEvents/LiveEvents.js +1 -10
- package/lib/components/LiveEvents/index.js +1 -4
- package/lib/components/LoaderByPercent/LoaderByPercent.js +13 -23
- package/lib/components/Map/Map.js +12 -26
- package/lib/components/Map/index.js +1 -4
- package/lib/components/Modal/Modal.js +3 -10
- package/lib/components/NarrowHeader.js +1 -12
- package/lib/components/PointInfo/PointInfo.js +10 -22
- package/lib/components/PointInfo/index.js +1 -4
- package/lib/components/PopupModal/PopupModal.js +6 -17
- package/lib/components/PopupModal/PopupModal.stories.js +2 -11
- package/lib/components/Sector/Sector.js +4 -13
- package/lib/components/Sector/Sector.test.js +3 -8
- package/lib/components/Sector/index.js +1 -4
- package/lib/components/Sector/sectorIcons.js +1 -27
- package/lib/components/SevereEvent/Eta/Eta.js +14 -39
- package/lib/components/SevereEvent/Eta/styles.js +1 -5
- package/lib/components/SevereEvent/SevereEvent.js +15 -36
- package/lib/components/Spinner/Spinner.js +5 -10
- package/lib/components/Spinner/Spinner.stories.js +2 -8
- package/lib/components/Spinner/index.js +1 -4
- package/lib/components/Spinner/styles.js +1 -9
- package/lib/components/Tabs/Tabs.js +4 -24
- package/lib/components/Tabs/Tabs.stories.js +2 -8
- package/lib/components/Tabs/assets/index.js +1 -6
- package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +2 -12
- package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +12 -43
- package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +12 -36
- package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +1 -4
- package/lib/components/TimeRangeSelector/TimeRangeHelper.js +9 -29
- package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +4 -9
- package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +1 -4
- package/lib/components/TimeRangeSelector/TimeRangeList.js +4 -13
- package/lib/components/TimeRangeSelector/TimeRangeOptions.js +11 -24
- package/lib/components/TimeRangeSelector/TimeRangeSelector.js +11 -36
- package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +2 -10
- package/lib/components/TimeRangeSelector/constants.js +2 -2
- package/lib/components/TimeRangeSelector/index.js +1 -4
- package/lib/components/Toggle/Toggle.js +7 -21
- package/lib/components/Toggle/index.js +1 -4
- package/lib/components/TrendGraph/TrendGraph.js +16 -49
- package/lib/components/TrendGraph/index.js +1 -4
- package/lib/components/TrendGraphNVL/TrendGraphNVL.js +10 -35
- package/lib/components/TrendGraphNVL/index.js +1 -4
- package/lib/development-environment/index.js +1 -13
- package/lib/development-environment/mock/browser.js +1 -8
- package/lib/development-environment/mock/get.js +1 -5
- package/lib/development-environment/mock/handlers.js +1 -26
- package/lib/development-environment/mock/mockBus.js +2 -7
- package/lib/development-environment/mock/mockObjects/area-trends-graph.js +1 -1
- package/lib/development-environment/mock/mockObjects/areaInformation.js +1 -1
- package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +1 -1
- package/lib/development-environment/mock/mockObjects/areaSitesData.js +1 -1
- package/lib/development-environment/mock/mockObjects/areasJson.js +1 -1
- package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +1 -1
- package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +1 -1
- package/lib/development-environment/mock/mockObjects/data-menuData.js +1 -1
- package/lib/development-environment/mock/mockObjects/data-search.js +1 -1
- package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +1 -1
- package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +1 -1
- package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +1 -1
- package/lib/development-environment/mock/mockObjects/eventsJson.js +1 -1
- package/lib/development-environment/mock/mockObjects/metascore.js +1 -1
- package/lib/development-environment/mock/mockObjects/permissionsJson.js +1 -1
- package/lib/development-environment/mock/mockObjects/pointsJson.js +1 -1
- package/lib/development-environment/mock/mockObjects/site-info.js +1 -1
- package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +1 -1
- package/lib/development-environment/togly/ToglyDashboard.js +4 -22
- package/lib/development-environment/togly/ToglyItem.js +5 -25
- package/lib/development-environment/togly/flags.js +1 -1
- package/lib/development-environment/togly/init.js +1 -6
- package/lib/development-environment/togly/macro.js +7 -9
- package/lib/development-environment/togly/useDoubleKeyDown.js +1 -8
- package/lib/development-environment/togly/useLocalStorage.js +12 -19
- package/lib/hooks/useApi.js +10 -29
- package/lib/hooks/useApiWithDashboardQuery.js +10 -30
- package/lib/hooks/useClickOutside.js +1 -5
- package/lib/hooks/useInitializeHeaders.js +1 -7
- package/lib/hooks/useKandoFetch.js +13 -27
- package/lib/hooks/useMap.js +8 -39
- package/lib/hooks/useNavContext.js +13 -22
- package/lib/hooks/useQueryURL.js +1 -4
- package/lib/hooks/useRemoveExistingLayers.js +2 -7
- package/lib/hooks/useUpdateEventBodyTail.js +1 -10
- package/lib/hooks/useUserTimeZone.js +1 -9
- package/lib/hooks/useUserTimeZone.test.js +1 -9
- package/lib/hooks/useWindowSize.js +14 -19
- package/lib/index.js +13 -29
- package/lib/macros/getVersion.js +2 -3
- package/lib/models/IAction.js +1 -1
- package/lib/models/IAppState.js +1 -1
- package/lib/pages/AreaPage/AreaPage.js +5 -34
- package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +6 -17
- package/lib/pages/AreaPage/Dashboard/Dashboard.js +3 -24
- package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +11 -35
- package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +6 -8
- package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +28 -64
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +1 -10
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +3 -15
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +3 -7
- package/lib/pages/AreaPage/Dashboard/Sites/SitesResponse.interface.js +1 -1
- package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +1 -1
- package/lib/pages/AreaPage/Dashboard/Sites/styles.js +3 -11
- package/lib/pages/AssessmentPage/AssessmentPage.js +5 -30
- package/lib/pages/CannyWidget/Feedback.js +10 -25
- package/lib/pages/CovidPage/CovidPage.js +1 -14
- package/lib/pages/CovidPage/components/Body.js +9 -33
- package/lib/pages/CovidPage/components/Map.js +20 -38
- package/lib/pages/CovidPage/components/Sidebar.js +4 -18
- package/lib/pages/CovidPage/components/Summary.js +8 -29
- package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +10 -35
- package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +1 -4
- package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +13 -41
- package/lib/pages/CovidPage/components/TrendPopupContent/index.js +1 -4
- package/lib/pages/CovidPage/components/areas/Area.js +6 -33
- package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +4 -45
- package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +5 -18
- package/lib/pages/CovidPage/components/areas/AreasList.js +14 -33
- package/lib/pages/CovidPage/components/areas/Sort.js +5 -19
- package/lib/pages/CovidPage/components/nvlStatusHelper.js +2 -11
- package/lib/pages/EventsPage/Body/Body.js +2 -19
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +11 -28
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +11 -31
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +4 -11
- package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +3 -11
- package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +5 -10
- package/lib/pages/EventsPage/DragAndDropArea/index.js +1 -4
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +7 -33
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +2 -21
- package/lib/pages/EventsPage/EventsPage.js +1 -13
- package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +9 -32
- package/lib/pages/EventsPage/events/MoreInfo.js +1 -19
- package/lib/pages/EventsPage/events/Sidebar.js +5 -18
- package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +5 -29
- package/lib/pages/EventsPage/events/event_info/EventDetails.js +8 -32
- package/lib/pages/EventsPage/events/event_info/EventInfo.js +12 -41
- package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +2 -14
- package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +10 -40
- package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +1 -12
- package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +8 -30
- package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +1 -8
- package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/LineChartYear/LineChartYear.js +7 -27
- package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/MockHistoryInformation.js +2 -10
- package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +5 -21
- package/lib/pages/EventsPage/events/event_info/charts/EventDetailsLineChart.js +4 -23
- package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +4 -22
- package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +6 -33
- package/lib/pages/EventsPage/events/event_info/samplings/Sampling.js +3 -15
- package/lib/pages/EventsPage/events/event_info/samplings/Samplings.js +2 -10
- package/lib/pages/EventsPage/events/event_info/sources/Source.js +8 -31
- package/lib/pages/EventsPage/events/event_info/sources/Sources.js +4 -20
- package/lib/pages/EventsPage/events/events_list/EventItem.js +3 -24
- package/lib/pages/EventsPage/events/events_list/EventUtils.js +2 -13
- package/lib/pages/EventsPage/events/events_list/EventsList.js +38 -102
- package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +11 -32
- package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +31 -96
- package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +10 -55
- package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +5 -17
- package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +15 -38
- package/lib/pages/EventsPage/events/events_list/Sort.js +4 -23
- package/lib/pages/ImportFileWizard/FileUploadRespones.js +4 -19
- package/lib/pages/ImportFileWizard/ImportButtomButtons.js +2 -8
- package/lib/pages/ImportFileWizard/ImportFile.js +10 -29
- package/lib/pages/ImportFileWizard/ResponseBody.js +3 -12
- package/lib/pages/ImportFileWizard/ValidationForm.js +7 -27
- package/lib/pages/ImportFileWizard/ValidationResponse.js +6 -30
- package/lib/pages/ImportFileWizard/importFileUtils.js +1 -2
- package/lib/pages/ImportFileWizard/index.js +1 -4
- package/lib/pages/ImportGisPage/ImportGisContainer.js +7 -27
- package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +10 -27
- package/lib/pages/ImportGisPage/importGisUtils.js +1 -13
- package/lib/pages/ImportGisProcess/index.js +4 -18
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +5 -19
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +3 -10
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +1 -8
- package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +25 -58
- package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +2 -8
- package/lib/pages/NotificationsPage/Notification/Notification.js +8 -16
- package/lib/pages/NotificationsPage/Notifications.interface.js +1 -1
- package/lib/pages/NotificationsPage/Notifications.mock.js +1 -1
- package/lib/pages/NotificationsPage/Notifications.stories.js +2 -10
- package/lib/pages/NotificationsPage/NotificationsPage.js +11 -35
- package/lib/pages/NotificationsPage/assets/index.js +15 -24
- package/lib/pages/NotificationsPageV2/NotificationsPage.js +35 -83
- package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +4 -24
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +15 -40
- package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +18 -49
- package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +6 -49
- package/lib/pages/NotificationsPageV2/notificationUtils.js +2 -30
- package/lib/pages/OldSitePage/IDashboardData.js +1 -1
- package/lib/pages/OldSitePage/OldSitePage.js +16 -77
- package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +3 -16
- package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +2 -8
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +4 -9
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +5 -12
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +2 -12
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +7 -23
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +6 -20
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +4 -10
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +2 -12
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +9 -24
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +4 -12
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +28 -59
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +2 -2
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +12 -10
- package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +3 -18
- package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +2 -15
- package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +8 -16
- package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +1 -16
- package/lib/pages/OldSitePage/SamplingParameters/models.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +2 -10
- package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +2 -7
- package/lib/pages/ProfilePage/Container.js +1 -5
- package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +16 -43
- package/lib/pages/ProfilePage/ProfilePage.js +39 -88
- package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +9 -32
- package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +7 -17
- package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +3 -14
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +7 -43
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +4 -21
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +7 -15
- package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +8 -29
- package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +6 -25
- package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +9 -21
- package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +1 -13
- package/lib/pages/SamplingsPage/DesktopActions/index.js +1 -4
- package/lib/pages/SamplingsPage/NavigationDropdown.js +3 -21
- package/lib/pages/SamplingsPage/NewSamplingAction.js +38 -84
- package/lib/pages/SamplingsPage/SamplingMobileModal.js +12 -65
- package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +5 -19
- package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +2 -13
- package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +22 -56
- package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +4 -20
- package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +1 -14
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +34 -107
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +11 -42
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +14 -47
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +15 -49
- package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +5 -21
- package/lib/pages/SamplingsPage/SamplingProperties/styles.js +2 -8
- package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +1 -11
- package/lib/pages/SamplingsPage/SamplingsMobileItem.js +7 -36
- package/lib/pages/SamplingsPage/SamplingsMobileList.js +10 -34
- package/lib/pages/SamplingsPage/SamplingsPage.js +14 -39
- package/lib/pages/SamplingsPage/SamplingsPageContainer.js +14 -48
- package/lib/pages/SamplingsPage/index.js +1 -3
- package/lib/pages/SamplingsPage/samplingsPageUtils.js +7 -30
- package/lib/pages/SitePage/DischargePattern/DischargePattern.js +2 -10
- package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +2 -8
- package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +3 -17
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +6 -11
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +15 -23
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +7 -16
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +18 -27
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +2 -12
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +9 -26
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +6 -20
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +4 -10
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +2 -12
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +9 -24
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +4 -12
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +32 -68
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +2 -2
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +12 -10
- package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +4 -19
- package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +2 -15
- package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +17 -38
- package/lib/pages/SitePage/SamplingParameters/dataParser.js +13 -29
- package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +3 -7
- package/lib/pages/SitePage/SamplingParameters/models.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +2 -10
- package/lib/pages/SitePage/SamplingParameters/styles/styles.js +2 -8
- package/lib/pages/SitePage/SiteInformation/ContributorItem.js +5 -12
- package/lib/pages/SitePage/SiteInformation/EmptyState.js +1 -10
- package/lib/pages/SitePage/SiteInformation/PollutionContributor.js +5 -15
- package/lib/pages/SitePage/SiteInformation/SiteInformation.js +17 -48
- package/lib/pages/SitePage/SiteInformation/style.js +2 -8
- package/lib/pages/SitePage/SitePage.js +10 -49
- package/lib/pages/UploadLabResult/index.js +1 -8
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +9 -37
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +2 -9
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +2 -16
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +2 -8
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +9 -35
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +1 -5
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +1 -7
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +1 -10
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +7 -16
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/models.js +1 -1
- package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +1 -10
- package/lib/pages/UtilityDashboardPage/TopBar/styles.js +1 -5
- package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +3 -25
- package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +13 -19
- package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +6 -17
- package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +5 -20
- package/lib/pages/WbeDashboard/ExpandableComponent.js +1 -11
- package/lib/pages/WbeDashboard/GraphWrapper.js +5 -26
- package/lib/pages/WbeDashboard/IndividualTinyGraph.js +6 -19
- package/lib/pages/WbeDashboard/SearchInput.js +4 -22
- package/lib/pages/WbeDashboard/SummaryGraph.js +13 -44
- package/lib/pages/WbeDashboard/SummaryGraphModal.js +1 -13
- package/lib/pages/WbeDashboard/Tabs.js +3 -9
- package/lib/pages/WbeDashboard/WbeDashboardPage.js +25 -112
- package/lib/pages/WbeDashboard/WbeSummaryBar.js +8 -42
- package/lib/providers/Slideshow/SlideshowContext.js +3 -5
- package/lib/providers/Slideshow/SlideshowProvider.js +16 -31
- package/lib/providers/Slideshow/SlideshowRunner.js +7 -17
- package/lib/providers/UrlHistory/UrlHistoryContext.js +3 -7
- package/lib/providers/UrlHistory/UrlHistoryProvider.js +1 -13
- package/lib/providers/UrlHistory/index.js +5 -8
- package/lib/providers/UrlHistory/useLastVisited.js +1 -7
- package/lib/react-app-env.d.js +1 -1
- package/lib/store/ImportGis/action.js +1 -1
- package/lib/store/ImportGis/actionTypes.js +1 -2
- package/lib/store/ImportGis/actionsCreator.js +7 -17
- package/lib/store/ImportGis/models/gisImports.js +1 -1
- package/lib/store/ImportGis/reducer.js +1 -17
- package/lib/store/WBE/actionTypes.js +1 -1
- package/lib/store/WBE/actions.js +1 -3
- package/lib/store/WBE/models/IAreaWBE.js +1 -1
- package/lib/store/WBE/models/IWBE.js +1 -1
- package/lib/store/WBE/models/IWBEState.js +1 -1
- package/lib/store/WBE/reducer.js +2 -9
- package/lib/store/areas/actionTypes.js +2 -2
- package/lib/store/areas/actions.js +2 -11
- package/lib/store/areas/models/IArea.js +1 -1
- package/lib/store/areas/models/IAreasState.js +1 -1
- package/lib/store/areas/reducer.js +1 -9
- package/lib/store/context/actionTypes.js +2 -2
- package/lib/store/context/actions.js +2 -6
- package/lib/store/context/contextMiddlewares.js +1 -9
- package/lib/store/context/models/INavContext.js +1 -1
- package/lib/store/context/models/INavContextState.js +1 -1
- package/lib/store/context/reducer.js +2 -9
- package/lib/store/dashboard/dashboardSlice.js +1 -3
- package/lib/store/dashboard/periodType.js +1 -1
- package/lib/store/edges/actionTypes.js +2 -2
- package/lib/store/edges/actions.js +3 -9
- package/lib/store/edges/models/IEdge.js +1 -1
- package/lib/store/edges/models/IEdgesState.js +1 -1
- package/lib/store/edges/reducer.js +2 -16
- package/lib/store/events/actionTypes.js +2 -2
- package/lib/store/events/actions.js +10 -28
- package/lib/store/events/models/IEvent.js +1 -1
- package/lib/store/events/models/IEventsState.js +1 -1
- package/lib/store/events/models/ISource.js +1 -1
- package/lib/store/events/reducer.js +3 -41
- package/lib/store/filters/IFilter.js +1 -1
- package/lib/store/filters/IFilterItem.js +1 -1
- package/lib/store/global/actionTypes.js +2 -2
- package/lib/store/global/actions.js +8 -20
- package/lib/store/global/models/IGlobalState.js +1 -1
- package/lib/store/global/reducer.js +2 -18
- package/lib/store/permissions/permissionsSlice.js +1 -6
- package/lib/store/points/actionTypes.js +2 -2
- package/lib/store/points/actions.js +1 -5
- package/lib/store/points/models/IGroup.js +1 -1
- package/lib/store/points/models/IPoint.js +1 -1
- package/lib/store/points/models/IPointsState.js +1 -1
- package/lib/store/points/reducer.js +1 -7
- package/lib/store/rootActionTypes.js +1 -1
- package/lib/store/rootActions.js +1 -3
- package/lib/store/rootReducer.js +4 -23
- package/lib/store/rootStore.js +4 -12
- package/lib/store/samplings/action.js +1 -1
- package/lib/store/samplings/actionTypes.js +1 -2
- package/lib/store/samplings/actionsCreator.js +2 -5
- package/lib/store/samplings/models/Samplings.js +1 -1
- package/lib/store/samplings/reducer.js +1 -9
- package/lib/styles/StylesLayout.js +1 -7
- package/lib/styles/theme/theme.js +2 -4
- package/lib/test/mocks/browser.js +3 -7
- package/lib/test/test-utils.js +11 -21
- package/lib/ui-kit/Button/Button.js +15 -23
- package/lib/ui-kit/Button/Button.test.js +6 -26
- package/lib/ui-kit/Button/ButtonUtils.js +1 -1
- package/lib/ui-kit/Checkbox/Checkbox.js +7 -21
- package/lib/ui-kit/DropDown/DropDown.js +5 -16
- package/lib/ui-kit/DropDown/DropDown.test.js +6 -12
- package/lib/ui-kit/DropDown/DropDownItem.js +5 -13
- package/lib/ui-kit/DropDown/DropdownToggle.js +2 -13
- package/lib/ui-kit/IconAction/IconAction.js +3 -9
- package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +16 -49
- package/lib/ui-kit/InfoTooltip/InfoTooltip.js +16 -27
- package/lib/ui-kit/KandoList/KandoList.js +5 -16
- package/lib/ui-kit/KandoList/kandoListUtils.js +1 -1
- package/lib/ui-kit/KandoTable/KandoTable.js +21 -35
- package/lib/ui-kit/KandoTable/KandoTable.test.js +1 -16
- package/lib/ui-kit/KandoTable/kandoTableUtils.js +1 -1
- package/lib/ui-kit/Layout/Layout.js +1 -8
- package/lib/ui-kit/MobileInput/MobileInput.js +18 -33
- package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +8 -14
- package/lib/ui-kit/ModalConfirmation/index.js +1 -3
- package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +5 -10
- package/lib/ui-kit/SamplingStatus/SamplingStatus.js +3 -11
- package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +4 -11
- package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +5 -14
- package/lib/ui-kit/Tooltip/Tooltip.js +3 -8
- package/lib/ui-kit/index.js +1 -15
- package/lib/ui-kit/kandoStepper/KandoStepper.js +2 -7
- package/lib/utilities/ActionUtility.js +1 -2
- package/lib/utilities/Alert.js +2 -10
- package/lib/utilities/Analytics.js +1 -12
- package/lib/utilities/Array.js +2 -6
- package/lib/utilities/Enum.js +1 -16
- package/lib/utilities/ErrorBoundary.js +3 -18
- package/lib/utilities/File.js +5 -24
- package/lib/utilities/GetDir.js +4 -8
- package/lib/utilities/KandoDate.js +1 -7
- package/lib/utilities/KandoModal.js +7 -22
- package/lib/utilities/LocalStorage.js +2 -13
- package/lib/utilities/ThousandsToK.js +1 -3
- package/lib/utilities/TimeFormat.js +6 -19
- package/lib/utilities/Truncate.js +7 -27
- package/lib/utilities/edgesMath.js +5 -24
- package/lib/utilities/i18n.js +1 -14
- package/lib/utilities/kql.js +3 -10
- package/lib/utilities/map/icons.js +1 -14
- package/lib/utilities/scoreToColor.js +1 -8
- package/lib/utilities/time.js +2 -9
- package/lib/utilities/uploadToS3.js +1 -9
- package/lib/utilities/urls.js +4 -12
- package/package.json +1 -1
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.graphDatesButtons = exports.dndGraphInitOptions = void 0;
|
|
9
|
-
|
|
10
8
|
var _i18n = _interopRequireDefault(require("../../utilities/i18n"));
|
|
11
|
-
|
|
12
9
|
var dndGraphInitOptions = {
|
|
13
10
|
scrollbar: {
|
|
14
11
|
enabled: true,
|
|
@@ -103,4 +100,4 @@ var graphDatesButtons = [{
|
|
|
103
100
|
time: 2880
|
|
104
101
|
}];
|
|
105
102
|
exports.graphDatesButtons = graphDatesButtons;
|
|
106
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
103
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaTE4biIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiZG5kR3JhcGhJbml0T3B0aW9ucyIsInNjcm9sbGJhciIsImVuYWJsZWQiLCJiYXJCYWNrZ3JvdW5kQ29sb3IiLCJiYXJCb3JkZXJSYWRpdXMiLCJiYXJCb3JkZXJXaWR0aCIsImJ1dHRvbkJhY2tncm91bmRDb2xvciIsImJ1dHRvbkJvcmRlcldpZHRoIiwiYnV0dG9uQXJyb3dDb2xvciIsImJ1dHRvbkJvcmRlclJhZGl1cyIsInJpZmxlQ29sb3IiLCJ0cmFja0JhY2tncm91bmRDb2xvciIsInRyYWNrQm9yZGVyV2lkdGgiLCJ0cmFja0JvcmRlckNvbG9yIiwidHJhY2tCb3JkZXJSYWRpdXMiLCJjaGFydCIsInNwYWNpbmdCb3R0b20iLCJzcGFjaW5nTGVmdCIsInNwYWNpbmdSaWdodCIsInNwYWNpbmdUb3AiLCJiYWNrZ3JvdW5kQ29sb3IiLCJoZWlnaHQiLCJ6b29tVHlwZSIsInJhbmdlU2VsZWN0b3IiLCJhbGxCdXR0b25zRW5hYmxlZCIsImlucHV0RW5hYmxlZCIsImJ1dHRvbnMiLCJ0eXBlIiwiY291bnQiLCJ0ZXh0IiwiaTE4biIsInQiLCJidXR0b25UaGVtZSIsIndpZHRoIiwiZmlsbCIsInN0cm9rZSIsInBhZGRpbmciLCJyIiwic3R5bGUiLCJmb250U2l6ZSIsInN0YXRlcyIsImhvdmVyIiwiY29sb3IiLCJmb250V2VpZ2h0Iiwic2VsZWN0IiwiZXhwb3J0cyIsImdyYXBoRGF0ZXNCdXR0b25zIiwidGl0bGUiLCJ0aW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL0dyYXBoVXRpbHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBJRXZlbnRzU3RhdGUgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnRzU3RhdGUnO1xuaW1wb3J0IHsgSUdsb2JhbFN0YXRlIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9tb2RlbHMvSUdsb2JhbFN0YXRlJztcbmltcG9ydCBIaWdoY2hhcnRzIGZyb20gJ2hpZ2hjaGFydHMvaGlnaHN0b2NrJztcbmltcG9ydCBpMThuIGZyb20gJy4uLy4uL3V0aWxpdGllcy9pMThuJztcblxuZXhwb3J0IGludGVyZmFjZSBHcmFwaFR5cGUge1xuICBncmFwaERhdGE6IHtcbiAgICBnbG9iYWxfZGF0YTogSUdsb2JhbFN0YXRlO1xuICAgIGV2ZW50c19kYXRhOiBJRXZlbnRzU3RhdGU7XG4gICAgZ3JhcGhEYXRlOiBudW1iZXI7XG4gIH07XG4gIGdyYXBoRWxlbWVudDogUmVhY3QuUmVhY3RFbGVtZW50O1xufVxuZXhwb3J0IGludGVyZmFjZSBHcmFwaHNDb2x1bW5UeXBlIHtcbiAgaWQ6IHN0cmluZztcbiAgZ3JhcGhzOiBHcmFwaFR5cGVbXSB8IFtdO1xufVxuZXhwb3J0IGNvbnN0IGRuZEdyYXBoSW5pdE9wdGlvbnM6IEhpZ2hjaGFydHMuT3B0aW9ucyA9IHtcbiAgc2Nyb2xsYmFyOiB7XG4gICAgZW5hYmxlZDogdHJ1ZSxcbiAgICBiYXJCYWNrZ3JvdW5kQ29sb3I6ICcjREJERUUzJyxcbiAgICBiYXJCb3JkZXJSYWRpdXM6IDcsXG4gICAgYmFyQm9yZGVyV2lkdGg6IDAsXG4gICAgYnV0dG9uQmFja2dyb3VuZENvbG9yOiAnI0RCREVFMycsXG4gICAgYnV0dG9uQm9yZGVyV2lkdGg6IDAsXG4gICAgYnV0dG9uQXJyb3dDb2xvcjogJyNmNjAwNGYnLFxuICAgIGJ1dHRvbkJvcmRlclJhZGl1czogNyxcbiAgICByaWZsZUNvbG9yOiAnI2Y2MDA0ZicsXG4gICAgdHJhY2tCYWNrZ3JvdW5kQ29sb3I6ICcjZmZmZicsXG4gICAgdHJhY2tCb3JkZXJXaWR0aDogMixcbiAgICB0cmFja0JvcmRlckNvbG9yOiAnI0RCREVFMycsXG4gICAgdHJhY2tCb3JkZXJSYWRpdXM6IDcsXG4gIH0sXG4gIGNoYXJ0OiB7XG4gICAgc3BhY2luZ0JvdHRvbTogMCxcbiAgICBzcGFjaW5nTGVmdDogMCxcbiAgICBzcGFjaW5nUmlnaHQ6IDAsXG4gICAgc3BhY2luZ1RvcDogMCxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICdyZ2JhKDAsMCwwLDApJyxcbiAgICBoZWlnaHQ6IDIzMCxcbiAgICB6b29tVHlwZTogJ3gnLFxuICB9LFxuXG4gIHJhbmdlU2VsZWN0b3I6IHtcbiAgICBlbmFibGVkOiB0cnVlLFxuICAgIGFsbEJ1dHRvbnNFbmFibGVkOiB0cnVlLFxuICAgIGlucHV0RW5hYmxlZDogZmFsc2UsXG4gICAgYnV0dG9uczogW1xuICAgICAge1xuICAgICAgICB0eXBlOiAnZGF5JyxcbiAgICAgICAgY291bnQ6IDEsXG4gICAgICAgIHRleHQ6IGkxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZsb2F0aW5nX2dyYXBoLnRpbWVfc2VsZWN0aW9uLm9uZV9kYXknKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdkYXknLFxuICAgICAgICBjb3VudDogMixcbiAgICAgICAgdGV4dDogaTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmxvYXRpbmdfZ3JhcGgudGltZV9zZWxlY3Rpb24udHdvX2RheXMnKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICd3ZWVrJyxcbiAgICAgICAgY291bnQ6IDEsXG4gICAgICAgIHRleHQ6IGkxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZsb2F0aW5nX2dyYXBoLnRpbWVfc2VsZWN0aW9uLm9uZV93ZWVrJyksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB0eXBlOiAnbW9udGgnLFxuICAgICAgICBjb3VudDogMSxcbiAgICAgICAgdGV4dDogaTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmxvYXRpbmdfZ3JhcGgudGltZV9zZWxlY3Rpb24ub25lX21vbnRoJyksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB0eXBlOiAnbW9udGgnLFxuICAgICAgICBjb3VudDogMyxcbiAgICAgICAgdGV4dDogaTE4bi50KFxuICAgICAgICAgICdldmVudHNfb3ZlcnZpZXcuZmxvYXRpbmdfZ3JhcGgudGltZV9zZWxlY3Rpb24ub25lX3F1YXJ0ZXInLFxuICAgICAgICApLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGJ1dHRvblRoZW1lOiB7XG4gICAgICB3aWR0aDogNjAsXG4gICAgICBmaWxsOiAnbm9uZScsXG4gICAgICBzdHJva2U6ICdub25lJyxcbiAgICAgICdzdHJva2Utd2lkdGgnOiAwLFxuICAgICAgcGFkZGluZzogNSxcbiAgICAgIHI6IDgsXG4gICAgICBzdHlsZToge1xuICAgICAgICBmb250U2l6ZTogJzE0cHgnLFxuICAgICAgfSxcbiAgICAgIHN0YXRlczoge1xuICAgICAgICBob3Zlcjoge1xuICAgICAgICAgIGZpbGw6ICcjRTMxQjYyJyxcbiAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgICAgICBmb250V2VpZ2h0OiAnNDAwJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBzZWxlY3Q6IHtcbiAgICAgICAgICBmaWxsOiAnI0UzMUI2MicsXG4gICAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgICAgZm9udFdlaWdodDogJzQwMCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSxcbn07XG5leHBvcnQgY29uc3QgZ3JhcGhEYXRlc0J1dHRvbnMgPSBbXG4gIHtcbiAgICB0aXRsZTogJzEgRGF5JyxcbiAgICB0aW1lOiAyNCxcbiAgfSxcbiAge1xuICAgIHRpdGxlOiAnMSBXZWVrJyxcbiAgICB0aW1lOiAxNjgsXG4gIH0sXG4gIHtcbiAgICB0aXRsZTogJzEgTW9udGgnLFxuICAgIHRpbWU6IDcyMCxcbiAgfSxcbiAge1xuICAgIHRpdGxlOiAnMSBRdWFydGVyJyxcbiAgICB0aW1lOiAyODgwLFxuICB9LFxuXTtcbiJdLCJtYXBwaW5n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
|
package/lib/Widgets/Map/Map.js
CHANGED
|
@@ -1,71 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.Map = void 0;
|
|
11
|
-
|
|
12
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
13
|
-
|
|
14
10
|
var _leaflet = _interopRequireDefault(require("leaflet"));
|
|
15
|
-
|
|
16
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
|
-
|
|
18
12
|
var _reactRedux = require("react-redux");
|
|
19
|
-
|
|
20
13
|
var _actions = require("store/global/actions");
|
|
21
|
-
|
|
22
14
|
var _ErrorBoundary = _interopRequireDefault(require("utilities/ErrorBoundary"));
|
|
23
|
-
|
|
24
15
|
var _AreaPolygons = require("./areas/AreaPolygons");
|
|
25
|
-
|
|
26
16
|
var _Edges = _interopRequireDefault(require("./edges/Edges"));
|
|
27
|
-
|
|
28
17
|
require("./Map.scss");
|
|
29
|
-
|
|
30
18
|
var _PointMarkers = require("./points/PointMarkers");
|
|
31
|
-
|
|
32
19
|
var _Event = require("./events/Event");
|
|
33
|
-
|
|
34
20
|
var _MapUtils = require("./MapUtils");
|
|
35
|
-
|
|
36
21
|
var _theme = require("../../styles/theme/theme");
|
|
37
|
-
|
|
38
22
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
39
|
-
|
|
40
23
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
41
|
-
|
|
42
24
|
// @ts-ignore
|
|
25
|
+
|
|
43
26
|
var Map = function Map(_ref) {
|
|
44
27
|
var areas = _ref.areas,
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
28
|
+
edges = _ref.edges,
|
|
29
|
+
points = _ref.points,
|
|
30
|
+
global_data = _ref.global_data,
|
|
31
|
+
areaToCenterBy = _ref.areaToCenterBy,
|
|
32
|
+
focusedEvent = _ref.focusedEvent,
|
|
33
|
+
hoveredEvent = _ref.hoveredEvent,
|
|
34
|
+
_ref$hideEdges = _ref.hideEdges,
|
|
35
|
+
hideEdges = _ref$hideEdges === void 0 ? false : _ref$hideEdges,
|
|
36
|
+
_ref$mapBoxStyle = _ref.mapBoxStyle,
|
|
37
|
+
mapBoxStyle = _ref$mapBoxStyle === void 0 ? _theme.leafletMap.mapDefault : _ref$mapBoxStyle,
|
|
38
|
+
children = _ref.children,
|
|
39
|
+
_ref$includeUnmonitor = _ref.includeUnmonitoredPoints,
|
|
40
|
+
includeUnmonitoredPoints = _ref$includeUnmonitor === void 0 ? false : _ref$includeUnmonitor,
|
|
41
|
+
_ref$includeUnmonitor2 = _ref.includeUnmonitoredDescendantsForEdges,
|
|
42
|
+
includeUnmonitoredDescendantsForEdges = _ref$includeUnmonitor2 === void 0 ? false : _ref$includeUnmonitor2;
|
|
60
43
|
var map = global_data.map;
|
|
61
44
|
var mapRef = (0, _react.useRef)(null);
|
|
62
45
|
var dispatch = (0, _reactRedux.useDispatch)();
|
|
63
|
-
|
|
64
46
|
var _useState = (0, _react.useState)(2),
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
47
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
48
|
+
mapZoomLevel = _useState2[0],
|
|
49
|
+
setMapZoomLevel = _useState2[1];
|
|
69
50
|
var eventsData = (0, _reactRedux.useSelector)(function (state) {
|
|
70
51
|
return state.events_data;
|
|
71
52
|
});
|
|
@@ -91,12 +72,10 @@ var Map = function Map(_ref) {
|
|
|
91
72
|
focusedEvent.focused = focusedEventPresent;
|
|
92
73
|
focusedEvent.hovered = !focusedEventPresent;
|
|
93
74
|
}
|
|
94
|
-
|
|
95
75
|
if (hoveredEventPresent) {
|
|
96
76
|
hoveredEvent.hovered = hoveredEventPresent;
|
|
97
77
|
hoveredEvent.focused = !hoveredEventPresent;
|
|
98
78
|
}
|
|
99
|
-
|
|
100
79
|
if (!hoveredEventPresent && !focusedEventPresent) return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
|
|
101
80
|
return /*#__PURE__*/_react.default.createElement(_Event.Event, {
|
|
102
81
|
event: focusedEvent || hoveredEvent,
|
|
@@ -142,6 +121,5 @@ var Map = function Map(_ref) {
|
|
|
142
121
|
allowUnmonitoredDescendants: includeUnmonitoredDescendantsForEdges
|
|
143
122
|
})), (0, _MapUtils.shoudLoadDependentMapObjects)(edges, areas, global_data, mapRef) && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, memoizedEvent, activateZoomControlForIcons, children))));
|
|
144
123
|
};
|
|
145
|
-
|
|
146
124
|
exports.Map = Map;
|
|
147
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9NYXAudHN4Il0sIm5hbWVzIjpbIk1hcCIsImFyZWFzIiwiZWRnZXMiLCJwb2ludHMiLCJnbG9iYWxfZGF0YSIsImFyZWFUb0NlbnRlckJ5IiwiZm9jdXNlZEV2ZW50IiwiaG92ZXJlZEV2ZW50IiwiaGlkZUVkZ2VzIiwibWFwQm94U3R5bGUiLCJsZWFmbGV0TWFwIiwibWFwRGVmYXVsdCIsImNoaWxkcmVuIiwiaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzIiwiaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcyIsIm1hcCIsIm1hcFJlZiIsImRpc3BhdGNoIiwibWFwWm9vbUxldmVsIiwic2V0TWFwWm9vbUxldmVsIiwiZXZlbnRzRGF0YSIsInN0YXRlIiwiZXZlbnRzX2RhdGEiLCJob3ZlcmVkRXZlbnRQcmVzZW50IiwidW5kZWZpbmVkIiwiZm9jdXNlZEV2ZW50UHJlc2VudCIsInJlbmRlclBvaW50cyIsImlzRmV0Y2hpbmciLCJjdXJyZW50IiwiYWN0aXZhdGVab29tQ29udHJvbEZvckljb25zIiwibWVtb2l6ZWRFdmVudCIsImZvY3VzZWQiLCJob3ZlcmVkIiwiZXZlbnRGaWx0ZXJQYXJhbSIsInNhdGVsbGl0ZSIsImlzVmFsaWRBcmVhIiwiY2xlYW51cCIsInJlbW92ZSIsIndhdGVyQXV0aG9yaXR5SWQiLCJzaWRlbmF2RXhwYW5kZWQiLCJMIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBSUE7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBUUE7Ozs7OztBQXpCQTtBQXlDTyxJQUFNQSxHQUF1QixHQUFHLFNBQTFCQSxHQUEwQixPQWFqQztBQUFBLE1BWkpDLEtBWUksUUFaSkEsS0FZSTtBQUFBLE1BWEpDLEtBV0ksUUFYSkEsS0FXSTtBQUFBLE1BVkpDLE1BVUksUUFWSkEsTUFVSTtBQUFBLE1BVEpDLFdBU0ksUUFU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UixJQURGLEVBRUcsb0NBQXFCbkMsV0FBckIsRUFBa0NZLE1BQWxDLEVBQTBDZCxLQUExQyxFQUFpREMsTUFBakQsa0JBQ0MsNERBQ0d1QixZQURILGVBRUUsNkJBQUMsMEJBQUQ7QUFDRSxJQUFBLEtBQUssRUFBRXpCLEtBRFQ7QUFFRSxJQUFBLEdBQUcsRUFBRWUsTUFBTSxDQUFDWSxPQUZkO0FBR0UsSUFBQSxDQUFDLEVBQUVZLGdCQUhMO0FBSUUsSUFBQSxjQUFjLEVBQUVuQyxjQUpsQjtBQUtFLElBQUEsT0FBTyxFQUFFYTtBQUxYLElBRkYsZUFVRSw2QkFBQyxjQUFEO0FBQ0UsSUFBQSxLQUFLLEVBQUVoQixLQURUO0FBRUUsSUFBQSxHQUFHLEVBQUVjLE1BQU0sQ0FBQ1ksT0FGZDtBQUdFLElBQUEsQ0FBQyxFQUFFWSxnQkFITDtBQUlFLElBQUEsTUFBTSxFQUFFckMsTUFKVjtBQUtFLElBQUEsU0FBUyxFQUFFSyxTQUxiO0FBTUUsSUFBQSwyQkFBMkIsRUFDekJNO0FBUEosSUFWRixDQUhKLEVBeUJHLDRDQUE2QlosS0FBN0IsRUFBb0NELEtBQXBDLEVBQTJDRyxXQUEzQyxFQUF3RFksTUFBeEQsa0JBQ0MsNERBQ0djLGFBREgsRUFFR0QsMkJBRkgsRUFHR2pCLFFBSEgsQ0ExQkosQ0FMRixDQURGLENBREY7QUEyQ0QsQ0F0Sk0iLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtaWdub3JlXG5pbXBvcnQgTCBmcm9tICdsZWFmbGV0JztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBJQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9hcmVhcy9tb2RlbHMvSUFyZWEnO1xuaW1wb3J0IHsgSUVkZ2UgfSBmcm9tICdzcmMvc3RvcmUvZWRnZXMvbW9kZWxzL0lFZGdlJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzdG9yZU1hcCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyBJR2xvYmFsU3RhdGUgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL21vZGVscy9JR2xvYmFsU3RhdGUnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJ3NyYy91dGlsaXRpZXMvRXJyb3JCb3VuZGFyeSc7XG5pbXBvcnQgeyBBcmVhUG9seWdvbnMgfSBmcm9tICcuL2FyZWFzL0FyZWFQb2x5Z29ucyc7XG5pbXBvcnQgRWRnZXMgZnJvbSAnLi9lZGdlcy9FZGdlcyc7XG5pbXBvcnQgJy4vTWFwLnNjc3MnO1xuaW1wb3J0IHsgUG9pbnRNYXJrZXJzIH0gZnJvbSAnLi9wb2ludHMvUG9pbnRNYXJrZXJzJztcbmltcG9ydCB7IGFwcFJlZHVjZXIgfSBmcm9tICcuLi8uLi9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgeyBFdmVudCB9IGZyb20gJy4vZXZlbnRzL0V2ZW50JztcbmltcG9ydCB7XG4gIGFyZWFGb2N1c0xvZ2ljLFxuICBpY29uWm9vbUNvbnRyb2wsXG4gIGluaXRpYWxpemVNYXAsXG4gIGlzVmFsaWRBcmVhLFxuICBzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzLFxuICBzaG91bGRMb2FkTWFwT2JqZWN0cyxcbn0gZnJvbSAnLi9NYXBVdGlscyc7XG5pbXBvcnQgeyBsZWFmbGV0TWFwIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcblxuaW50ZXJmYWNlIE1hcFByb3BzIHtcbiAgYXJlYXM6IElBcmVhW107XG4gIGVkZ2VzPzogSUVkZ2VbXTtcbiAgcG9pbnRzPzogSVBvaW50W107XG4gIGdsb2JhbF9kYXRhOiBJR2xvYmFsU3RhdGU7XG4gIGFyZWFUb0NlbnRlckJ5PzogYW55O1xuICBmb2N1c2VkRXZlbnQ/OiBJRXZlbnQgfCBudWxsO1xuICBob3ZlcmVkRXZlbnQ/OiBJRXZlbnQgfCBudWxsO1xuICBoaWRlRWRnZXM/OiBib29sZWFuO1xuICBtYXBCb3hTdHlsZT86IHN0cmluZztcbiAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPzogYm9vbGVhbjtcbiAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcz86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjb25zdCBNYXA6IFJlYWN0LkZDPE1hcFByb3BzPiA9ICh7XG4gIGFyZWFzLFxuICBlZGdlcyxcbiAgcG9pbnRzLFxuICBnbG9iYWxfZGF0YSxcbiAgYXJlYVRvQ2VudGVyQnksXG4gIGZvY3VzZWRFdmVudCxcbiAgaG92ZXJlZEV2ZW50LFxuICBoaWRlRWRnZXMgPSBmYWxzZSxcbiAgbWFwQm94U3R5bGUgPSBsZWFmbGV0TWFwLm1hcERlZmF1bHQsXG4gIGNoaWxkcmVuLFxuICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHMgPSBmYWxzZSxcbiAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcyA9IGZhbHNlLFxufSkgPT4ge1xuICBjb25zdCB7IG1hcCB9ID0gZ2xvYmFsX2RhdGE7XG4gIGNvbnN0IG1hcFJlZiA9IHVzZVJlZjxMLk1hcD4obnVsbCk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgW21hcFpvb21MZXZlbCwgc2V0TWFwWm9vbUxldmVsXSA9IHVzZVN0YXRlKDIpO1xuICBjb25zdCBldmVudHNEYXRhID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUuZXZlbnRzX2RhdGEsXG4gICk7XG4gIGNvbnN0IGhvdmVyZWRFdmVudFByZXNlbnQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gaG92ZXJlZEV2ZW50ICE9PSBudWxsICYmIGhvdmVyZWRFdmVudCAhPT0gdW5kZWZpbmVkO1xuICB9LCBbaG92ZXJlZEV2ZW50XSk7XG5cbiAgY29uc3QgZm9jdXNlZEV2ZW50UHJlc2VudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiYgZm9jdXNlZEV2ZW50ICE9PSB1bmRlZmluZWQ7XG4gIH0sIFtmb2N1c2VkRXZlbnRdKTtcblxuICBjb25zdCByZW5kZXJQb2ludHMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgIWV2ZW50c0RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgbWFwUmVmLmN1cnJlbnQgIT09IG51bGwgJiZcbiAgICAgICFmb2N1c2VkRXZlbnRQcmVzZW50ICYmIChcbiAgICAgICAgPFBvaW50TWFya2Vyc1xuICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgcG9pbnRzPXtwb2ludHN9XG4gICAgICAgICAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPXtpbmNsdWRlVW5tb25pdG9yZWRQb2ludHN9XG4gICAgICAgICAgcmVyZW5kZXI9e2ZvY3VzZWRFdmVudFByZXNlbnR9XG4gICAgICAgIC8+XG4gICAgICApXG4gICAgKTtcbiAgfSwgW2V2ZW50c0RhdGEuaXNGZXRjaGluZywgbWFwUmVmLmN1cnJlbnQsIHBvaW50cywgZm9jdXNlZEV2ZW50UHJlc2VudF0pO1xuXG4gIGNvbnN0IGFjdGl2YXRlWm9vbUNvbnRyb2xGb3JJY29ucyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmIGljb25ab29tQ29udHJvbChtYXBSZWYuY3VycmVudCk7XG4gIH0sIFttYXBSZWYuY3VycmVudCwgcG9pbnRzLCBmb2N1c2VkRXZlbnRQcmVzZW50XSk7XG5cbiAgY29uc3QgbWVtb2l6ZWRFdmVudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChmb2N1c2VkRXZlbnRQcmVzZW50KSB7XG4gICAgICBmb2N1c2VkRXZlbnQhLmZvY3VzZWQgPSBmb2N1c2VkRXZlbnRQcmVzZW50O1xuICAgICAgZm9jdXNlZEV2ZW50IS5ob3ZlcmVkID0gIWZvY3VzZWRFdmVudFByZXNlbnQ7XG4gICAgfVxuXG4gICAgaWYgKGhvdmVyZWRFdmVudFByZXNlbnQpIHtcbiAgICAgIGhvdmVyZWRFdmVudCEuaG92ZXJlZCA9IGhvdmVyZWRFdmVudFByZXNlbnQ7XG4gICAgICBob3ZlcmVkRXZlbnQhLmZvY3VzZWQgPSAhaG92ZXJlZEV2ZW50UHJlc2VudDtcbiAgICB9XG5cbiAgICBpZiAoIWhvdmVyZWRFdmVudFByZXNlbnQgJiYgIWZvY3VzZWRFdmVudFByZXNlbnQpIHJldHVybiA8PjwvPjtcbiAgICByZXR1cm4gKFxuICAgICAgPEV2ZW50XG4gICAgICAgIGV2ZW50PXtmb2N1c2VkRXZlbnQhIHx8IGhvdmVyZWRFdmVudCF9XG4gICAgICAgIG1hcD17bWFwfVxuICAgICAgICBlZGdlcz17ZWRnZXMhfVxuICAgICAgICBwb2ludHM9e3BvaW50cyF9XG4gICAgICAgIGluY2x1ZGVOZXR3b3JrPXshaG92ZXJlZEV2ZW50UHJlc2VudH1cbiAgICAgIC8+XG4gICAgKTtcbiAgfSwgW2ZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50LCBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpbml0aWFsaXplTWFwKFxuICAgICAgbWFwWm9vbUxldmVsLFxuICAgICAgbWFwQm94U3R5bGUsXG4gICAgICBsZWFmbGV0TWFwLnNhdGVsbGl0ZSxcbiAgICAgIG1hcFJlZixcbiAgICAgIGRpc3BhdGNoLFxuICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICBhcmVhVG9DZW50ZXJCeSxcbiAgICAgIHNldE1hcFpvb21MZXZlbCxcbiAgICApO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBtYXBSZWYuY3VycmVudC5yZW1vdmUoKTtcbiAgICAgIGRpc3BhdGNoKHN0b3JlTWFwKHVuZGVmaW5lZCkpO1xuICAgIH07XG4gIH0sIFtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIW1hcFJlZi5jdXJyZW50KSB7XG4gICAgICBpbml0aWFsaXplTWFwKFxuICAgICAgICBtYXBab29tTGV2ZWwsXG4gICAgICAgIG1hcEJveFN0eWxlLFxuICAgICAgICBsZWFmbGV0TWFwLnNhdGVsbGl0ZSxcbiAgICAgICAgbWFwUmVmLFxuICAgICAgICBkaXNwYXRjaCxcbiAgICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICAgIGFyZWFUb0NlbnRlckJ5LFxuICAgICAgICBzZXRNYXBab29tTGV2ZWwsXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBhcmVhRm9jdXNMb2dpYyhtYXBSZWYsIGlzVmFsaWRBcmVhLCBhcmVhVG9DZW50ZXJCeSk7XG4gICAgfVxuICB9LCBbYXJlYVRvQ2VudGVyQnldKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwia2QtbWFwLWNvbnRhaW5lclwiPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e2AgbWFwLWNvbnRhaW5lciAke1xuICAgICAgICAgIGdsb2JhbF9kYXRhLnNpZGVuYXZFeHBhbmRlZCA/ICcnIDogJ21hcC1jb250YWluZXItLXNpZGVuYXYtY29sbGFwc2VkJ1xuICAgICAgICB9YH1cbiAgICAgID5cbiAgICAgICAgPEVycm9yQm91bmRhcnk+XG4gICAgICAgICAgPGRpdiBpZD1cIm1hcFwiPjwvZGl2PlxuICAgICAgICAgIHtzaG91bGRMb2FkTWFwT2JqZWN0cyhnbG9iYWxfZGF0YSwgbWFwUmVmLCBlZGdlcywgcG9pbnRzKSAmJiAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICB7cmVuZGVyUG9pbnRzfVxuICAgICAgICAgICAgICA8QXJlYVBvbHlnb25zXG4gICAgICAgICAgICAgICAgYXJlYXM9e2FyZWFzfVxuICAgICAgICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgICAgICAgTD17TH1cbiAgICAgICAgICAgICAgICBhcmVhVG9DZW50ZXJCeT17YXJlYVRvQ2VudGVyQnl9XG4gICAgICAgICAgICAgICAgbWFwWm9vbT17bWFwWm9vbUxldmVsfVxuICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgIDxFZGdlc1xuICAgICAgICAgICAgICAgIGVkZ2VzPXtlZGdlcyF9XG4gICAgICAgICAgICAgICAgbWFwPXttYXBSZWYuY3VycmVudH1cbiAgICAgICAgICAgICAgICBMPXtMfVxuICAgICAgICAgICAgICAgIHBvaW50cz17cG9pbnRzIX1cbiAgICAgICAgICAgICAgICBoaWRlRWRnZXM9e2hpZGVFZGdlc31cbiAgICAgICAgICAgICAgICBhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHM9e1xuICAgICAgICAgICAgICAgICAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlc1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvPlxuICAgICAgICAgICl9XG4gICAgICAgICAge3Nob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMoZWRnZXMsIGFyZWFzLCBnbG9iYWxfZGF0YSwgbWFwUmVmKSAmJiAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICB7bWVtb2l6ZWRFdmVudH1cbiAgICAgICAgICAgICAge2FjdGl2YXRlWm9vbUNvbnRyb2xGb3JJY29uc31cbiAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9FcnJvckJvdW5kYXJ5PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl19
|
|
125
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGVhZmxldCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfcmVhY3RSZWR1eCIsIl9hY3Rpb25zIiwiX0Vycm9yQm91bmRhcnkiLCJfQXJlYVBvbHlnb25zIiwiX0VkZ2VzIiwiX1BvaW50TWFya2VycyIsIl9FdmVudCIsIl9NYXBVdGlscyIsIl90aGVtZSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiTWFwIiwiX3JlZiIsImFyZWFzIiwiZWRnZXMiLCJwb2ludHMiLCJnbG9iYWxfZGF0YSIsImFyZWFUb0NlbnRlckJ5IiwiZm9jdXNlZEV2ZW50IiwiaG92ZXJlZEV2ZW50IiwiX3JlZiRoaWRlRWRnZXMiLCJoaWRlRWRnZXMiLCJfcmVmJG1hcEJveFN0eWxlIiwibWFwQm94U3R5bGUiLCJsZWFmbGV0TWFwIiwibWFwRGVmYXVsdCIsImNoaWxkcmVuIiwiX3JlZiRpbmNsdWRlVW5tb25pdG9yIiwiaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzIiwiX3JlZiRpbmNsdWRlVW5tb25pdG9yMiIsImluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMiLCJtYXAiLCJtYXBSZWYiLCJ1c2VSZWYiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwibWFwWm9vbUxldmVsIiwic2V0TWFwWm9vbUxldmVsIiwiZXZlbnRzRGF0YSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJldmVudHNfZGF0YSIsImhvdmVyZWRFdmVudFByZXNlbnQiLCJ1c2VNZW1vIiwidW5kZWZpbmVkIiwiZm9jdXNlZEV2ZW50UHJlc2VudCIsInJlbmRlclBvaW50cyIsImlzRmV0Y2hpbmciLCJjdXJyZW50IiwiY3JlYXRlRWxlbWVudCIsIlBvaW50TWFya2VycyIsInJlcmVuZGVyIiwiYWN0aXZhdGVab29tQ29udHJvbEZvckljb25zIiwiaWNvblpvb21Db250cm9sIiwibWVtb2l6ZWRFdmVudCIsImZvY3VzZWQiLCJob3ZlcmVkIiwiRnJhZ21lbnQiLCJFdmVudCIsImV2ZW50IiwiaW5jbHVkZU5ldHdvcmsiLCJldmVudEZpbHRlclBhcmFtIiwidXNlRWZmZWN0IiwiaW5pdGlhbGl6ZU1hcCIsInNhdGVsbGl0ZSIsImlzVmFsaWRBcmVhIiwiY2xlYW51cCIsInJlbW92ZSIsInN0b3JlTWFwIiwid2F0ZXJBdXRob3JpdHlJZCIsImFyZWFGb2N1c0xvZ2ljIiwiY2xhc3NOYW1lIiwiY29uY2F0Iiwic2lkZW5hdkV4cGFuZGVkIiwiaWQiLCJzaG91bGRMb2FkTWFwT2JqZWN0cyIsIkFyZWFQb2x5Z29ucyIsIkwiLCJtYXBab29tIiwiYWxsb3dVbm1vbml0b3JlZERlc2NlbmRhbnRzIiwic2hvdWRMb2FkRGVwZW5kZW50TWFwT2JqZWN0cyIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvV2lkZ2V0cy9NYXAvTWFwLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtaWdub3JlXG5pbXBvcnQgTCBmcm9tICdsZWFmbGV0JztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBJQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9hcmVhcy9tb2RlbHMvSUFyZWEnO1xuaW1wb3J0IHsgSUVkZ2UgfSBmcm9tICdzcmMvc3RvcmUvZWRnZXMvbW9kZWxzL0lFZGdlJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzdG9yZU1hcCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyBJR2xvYmFsU3RhdGUgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL21vZGVscy9JR2xvYmFsU3RhdGUnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJ3NyYy91dGlsaXRpZXMvRXJyb3JCb3VuZGFyeSc7XG5pbXBvcnQgeyBBcmVhUG9seWdvbnMgfSBmcm9tICcuL2FyZWFzL0FyZWFQb2x5Z29ucyc7XG5pbXBvcnQgRWRnZXMgZnJvbSAnLi9lZGdlcy9FZGdlcyc7XG5pbXBvcnQgJy4vTWFwLnNjc3MnO1xuaW1wb3J0IHsgUG9pbnRNYXJrZXJzIH0gZnJvbSAnLi9wb2ludHMvUG9pbnRNYXJrZXJzJztcbmltcG9ydCB7IGFwcFJlZHVjZXIgfSBmcm9tICcuLi8uLi9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgeyBFdmVudCB9IGZyb20gJy4vZXZlbnRzL0V2ZW50JztcbmltcG9ydCB7XG4gIGFyZWFGb2N1c0xvZ2ljLFxuICBpY29uWm9vbUNvbnRyb2wsXG4gIGluaXRpYWxpemVNYXAsXG4gIGlzVmFsaWRBcmVhLFxuICBzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzLFxuICBzaG91bGRMb2FkTWFwT2JqZWN0cyxcbn0gZnJvbSAnLi9NYXBVdGlscyc7XG5pbXBvcnQgeyBsZWFmbGV0TWFwIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcblxuaW50ZXJmYWNlIE1hcFByb3BzIHtcbiAgYXJlYXM6IElBcmVhW107XG4gIGVkZ2VzPzogSUVkZ2VbXTtcbiAgcG9pbnRzPzogSVBvaW50W107XG4gIGdsb2JhbF9kYXRhOiBJR2xvYmFsU3RhdGU7XG4gIGFyZWFUb0NlbnRlckJ5PzogYW55O1xuICBmb2N1c2VkRXZlbnQ/OiBJRXZlbnQgfCBudWxsO1xuICBob3ZlcmVkRXZlbnQ/OiBJRXZlbnQgfCBudWxsO1xuICBoaWRlRWRnZXM/OiBib29sZWFuO1xuICBtYXBCb3hTdHlsZT86IHN0cmluZztcbiAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPzogYm9vbGVhbjtcbiAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcz86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjb25zdCBNYXA6IFJlYWN0LkZDPE1hcFByb3BzPiA9ICh7XG4gIGFyZWFzLFxuICBlZGdlcyxcbiAgcG9pbnRzLFxuICBnbG9iYWxfZGF0YSxcbiAgYXJlYVRvQ2VudGVyQnksXG4gIGZvY3VzZWRFdmVudCxcbiAgaG92ZXJlZEV2ZW50LFxuICBoaWRlRWRnZXMgPSBmYWxzZSxcbiAgbWFwQm94U3R5bGUgPSBsZWFmbGV0TWFwLm1hcERlZmF1bHQsXG4gIGNoaWxkcmVuLFxuICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHMgPSBmYWxzZSxcbiAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcyA9IGZhbHNlLFxufSkgPT4ge1xuICBjb25zdCB7IG1hcCB9ID0gZ2xvYmFsX2RhdGE7XG4gIGNvbnN0IG1hcFJlZiA9IHVzZVJlZjxMLk1hcD4obnVsbCk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgW21hcFpvb21MZXZlbCwgc2V0TWFwWm9vbUxldmVsXSA9IHVzZVN0YXRlKDIpO1xuICBjb25zdCBldmVudHNEYXRhID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUuZXZlbnRzX2RhdGEsXG4gICk7XG4gIGNvbnN0IGhvdmVyZWRFdmVudFByZXNlbnQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gaG92ZXJlZEV2ZW50ICE9PSBudWxsICYmIGhvdmVyZWRFdmVudCAhPT0gdW5kZWZpbmVkO1xuICB9LCBbaG92ZXJlZEV2ZW50XSk7XG5cbiAgY29uc3QgZm9jdXNlZEV2ZW50UHJlc2VudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiYgZm9jdXNlZEV2ZW50ICE9PSB1bmRlZmluZWQ7XG4gIH0sIFtmb2N1c2VkRXZlbnRdKTtcblxuICBjb25zdCByZW5kZXJQb2ludHMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgIWV2ZW50c0RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgbWFwUmVmLmN1cnJlbnQgIT09IG51bGwgJiZcbiAgICAgICFmb2N1c2VkRXZlbnRQcmVzZW50ICYmIChcbiAgICAgICAgPFBvaW50TWFya2Vyc1xuICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgcG9pbnRzPXtwb2ludHN9XG4gICAgICAgICAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPXtpbmNsdWRlVW5tb25pdG9yZWRQb2ludHN9XG4gICAgICAgICAgcmVyZW5kZXI9e2ZvY3VzZWRFdmVudFByZXNlbnR9XG4gICAgICAgIC8+XG4gICAgICApXG4gICAgKTtcbiAgfSwgW2V2ZW50c0RhdGEuaXNGZXRjaGluZywgbWFwUmVmLmN1cnJlbnQsIHBvaW50cywgZm9jdXNlZEV2ZW50UHJlc2VudF0pO1xuXG4gIGNvbnN0IGFjdGl2YXRlWm9vbUNvbnRyb2xGb3JJY29ucyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmIGljb25ab29tQ29udHJvbChtYXBSZWYuY3VycmVudCk7XG4gIH0sIFttYXBSZWYuY3VycmVudCwgcG9pbnRzLCBmb2N1c2VkRXZlbnRQcmVzZW50XSk7XG5cbiAgY29uc3QgbWVtb2l6ZWRFdmVudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChmb2N1c2VkRXZlbnRQcmVzZW50KSB7XG4gICAgICBmb2N1c2VkRXZlbnQhLmZvY3VzZWQgPSBmb2N1c2VkRXZlbnRQcmVzZW50O1xuICAgICAgZm9jdXNlZEV2ZW50IS5ob3ZlcmVkID0gIWZvY3VzZWRFdmVudFByZXNlbnQ7XG4gICAgfVxuXG4gICAgaWYgKGhvdmVyZWRFdmVudFByZXNlbnQpIHtcbiAgICAgIGhvdmVyZWRFdmVudCEuaG92ZXJlZCA9IGhvdmVyZWRFdmVudFByZXNlbnQ7XG4gICAgICBob3ZlcmVkRXZlbnQhLmZvY3VzZWQgPSAhaG92ZXJlZEV2ZW50UHJlc2VudDtcbiAgICB9XG5cbiAgICBpZiAoIWhvdmVyZWRFdmVudFByZXNlbnQgJiYgIWZvY3VzZWRFdmVudFByZXNlbnQpIHJldHVybiA8PjwvPjtcbiAgICByZXR1cm4gKFxuICAgICAgPEV2ZW50XG4gICAgICAgIGV2ZW50PXtmb2N1c2VkRXZlbnQhIHx8IGhvdmVyZWRFdmVudCF9XG4gICAgICAgIG1hcD17bWFwfVxuICAgICAgICBlZGdlcz17ZWRnZXMhfVxuICAgICAgICBwb2ludHM9e3BvaW50cyF9XG4gICAgICAgIGluY2x1ZGVOZXR3b3JrPXshaG92ZXJlZEV2ZW50UHJlc2VudH1cbiAgICAgIC8+XG4gICAgKTtcbiAgfSwgW2ZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50LCBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpbml0aWFsaXplTWFwKFxuICAgICAgbWFwWm9vbUxldmVsLFxuICAgICAgbWFwQm94U3R5bGUsXG4gICAgICBsZWFmbGV0TWFwLnNhdGVsbGl0ZSxcbiAgICAgIG1hcFJlZixcbiAgICAgIGRpc3BhdGNoLFxuICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICBhcmVhVG9DZW50ZXJCeSxcbiAgICAgIHNldE1hcFpvb21MZXZlbCxcbiAgICApO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBtYXBSZWYuY3VycmVudC5yZW1vdmUoKTtcbiAgICAgIGRpc3BhdGNoKHN0b3JlTWFwKHVuZGVmaW5lZCkpO1xuICAgIH07XG4gIH0sIFtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIW1hcFJlZi5jdXJyZW50KSB7XG4gICAgICBpbml0aWFsaXplTWFwKFxuICAgICAgICBtYXBab29tTGV2ZWwsXG4gICAgICAgIG1hcEJveFN0eWxlLFxuICAgICAgICBsZWFmbGV0TWFwLnNhdGVsbGl0ZSxcbiAgICAgICAgbWFwUmVmLFxuICAgICAgICBkaXNwYXRjaCxcbiAgICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICAgIGFyZWFUb0NlbnRlckJ5LFxuICAgICAgICBzZXRNYXBab29tTGV2ZWwsXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBhcmVhRm9jdXNMb2dpYyhtYXBSZWYsIGlzVmFsaWRBcmVhLCBhcmVhVG9DZW50ZXJCeSk7XG4gICAgfVxuICB9LCBbYXJlYVRvQ2VudGVyQnldKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwia2QtbWFwLWNvbnRhaW5lclwiPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e2AgbWFwLWNvbnRhaW5lciAke1xuICAgICAgICAgIGdsb2JhbF9kYXRhLnNpZGVuYXZFeHBhbmRlZCA/ICcnIDogJ21hcC1jb250YWluZXItLXNpZGVuYXYtY29sbGFwc2VkJ1xuICAgICAgICB9YH1cbiAgICAgID5cbiAgICAgICAgPEVycm9yQm91bmRhcnk+XG4gICAgICAgICAgPGRpdiBpZD1cIm1hcFwiPjwvZGl2PlxuICAgICAgICAgIHtzaG91bGRMb2FkTWFwT2JqZWN0cyhnbG9iYWxfZGF0YSwgbWFwUmVmLCBlZGdlcywgcG9pbnRzKSAmJiAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICB7cmVuZGVyUG9pbnRzfVxuICAgICAgICAgICAgICA8QXJlYVBvbHlnb25zXG4gICAgICAgICAgICAgICAgYXJlYXM9e2FyZWFzfVxuICAgICAgICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgICAgICAgTD17TH1cbiAgICAgICAgICAgICAgICBhcmVhVG9DZW50ZXJCeT17YXJlYVRvQ2VudGVyQnl9XG4gICAgICAgICAgICAgICAgbWFwWm9vbT17bWFwWm9vbUxldmVsfVxuICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgIDxFZGdlc1xuICAgICAgICAgICAgICAgIGVkZ2VzPXtlZGdlcyF9XG4gICAgICAgICAgICAgICAgbWFwPXttYXBSZWYuY3VycmVudH1cbiAgICAgICAgICAgICAgICBMPXtMfVxuICAgICAgICAgICAgICAgIHBvaW50cz17cG9pbnRzIX1cbiAgICAgICAgICAgICAgICBoaWRlRWRnZXM9e2hpZGVFZGdlc31cbiAgICAgICAgICAgICAgICBhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHM9e1xuICAgICAgICAgICAgICAgICAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlc1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvPlxuICAgICAgICAgICl9XG4gICAgICAgICAge3Nob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMoZWRnZXMsIGFyZWFzLCBnbG9iYWxfZGF0YSwgbWFwUmVmKSAmJiAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICB7bWVtb2l6ZWRFdmVudH1cbiAgICAgICAgICAgICAge2FjdGl2YXRlWm9vbUNvbnRyb2xGb3JJY29uc31cbiAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9FcnJvckJvdW5kYXJ5PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFDQSxJQUFBQSxRQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFDLHVCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxXQUFBLEdBQUFILE9BQUE7QUFJQSxJQUFBSSxRQUFBLEdBQUFKLE9BQUE7QUFHQSxJQUFBSyxjQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTSxhQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxNQUFBLEdBQUFSLHNCQUFBLENBQUFDLE9BQUE7QUFDQUEsT0FBQTtBQUNBLElBQUFRLGFBQUEsR0FBQVIsT0FBQTtBQUVBLElBQUFTLE1BQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLFNBQUEsR0FBQVYsT0FBQTtBQVFBLElBQUFXLE1BQUEsR0FBQVgsT0FBQTtBQUFzRCxTQUFBWSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQVgsd0JBQUFlLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFBLENBQUFFLEdBQUEsQ0FBQU4sR0FBQSxTQUFBTyxNQUFBLFdBQUFDLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLEdBQUEsSUFBQVosR0FBQSxRQUFBWSxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFmLEdBQUEsRUFBQVksR0FBQSxTQUFBSSxJQUFBLEdBQUFSLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVgsR0FBQSxFQUFBWSxHQUFBLGNBQUFJLElBQUEsS0FBQUEsSUFBQSxDQUFBVixHQUFBLElBQUFVLElBQUEsQ0FBQUMsR0FBQSxLQUFBUixNQUFBLENBQUFDLGNBQUEsQ0FBQUgsTUFBQSxFQUFBSyxHQUFBLEVBQUFJLElBQUEsWUFBQVQsTUFBQSxDQUFBSyxHQUFBLElBQUFaLEdBQUEsQ0FBQVksR0FBQSxTQUFBTCxNQUFBLENBQUFKLE9BQUEsR0FBQUgsR0FBQSxNQUFBSSxLQUFBLElBQUFBLEtBQUEsQ0FBQWEsR0FBQSxDQUFBakIsR0FBQSxFQUFBTyxNQUFBLFlBQUFBLE1BQUE7QUF6QnREOztBQXlDTyxJQUFNVyxHQUF1QixHQUFHLFNBQTFCQSxHQUF1QkEsQ0FBQUMsSUFBQSxFQWE5QjtFQUFBLElBWkpDLEtBQUssR0FBQUQsSUFBQSxDQUFMQyxLQUFLO0lBQ0xDLEtBQUssR0FBQUYsSUFBQSxDQUFMRSxLQUFLO0lBQ0xDLE1BQU0sR0FBQUgsSUFBQSxDQUFORyxNQUFNO0lBQ05DLFdBQVcsR0FBQUosSUFBQSxDQUFYSSxXQUFXO0lBQ1hDLGNBQWMsR0FBQUwsSUFBQSxDQUFkSyxjQUFjO0lBQ2RDLFlBQVksR0FBQU4sSUFBQSxDQUFaTSxZQUFZO0lBQ1pDLFlBQVksR0FBQVAsSUFBQSxDQUFaTyxZQUFZO0lBQUFDLGNBQUEsR0FBQVIsSUFBQSxDQUNaUyxTQUFTO0lBQVRBLFNBQVMsR0FBQUQsY0FBQSxjQUFHLEtBQUssR0FBQUEsY0FBQTtJQUFBRSxnQkFBQSxHQUFBVixJQUFBLENBQ2pCVyxXQUFXO0lBQVhBLFdBQVcsR0FBQUQsZ0JBQUEsY0FBR0UsaUJBQVUsQ0FBQ0MsVUFBVSxHQUFBSCxnQkFBQTtJQUNuQ0ksUUFBUSxHQUFBZCxJQUFBLENBQVJjLFFBQVE7SUFBQUMscUJBQUEsR0FBQWYsSUFBQSxDQUNSZ0Isd0JBQXdCO0lBQXhCQSx3QkFBd0IsR0FBQUQscUJBQUEsY0FBRyxLQUFLLEdBQUFBLHFCQUFBO0lBQUFFLHNCQUFBLEdBQUFqQixJQUFBLENBQ2hDa0IscUNBQXFDO0lBQXJDQSxxQ0FBcUMsR0FBQUQsc0JBQUEsY0FBRyxLQUFLLEdBQUFBLHNCQUFBO0VBRTdDLElBQVFFLEdBQUcsR0FBS2YsV0FBVyxDQUFuQmUsR0FBRztFQUNYLElBQU1DLE1BQU0sR0FBRyxJQUFBQyxhQUFNLEVBQVEsSUFBSSxDQUFDO0VBQ2xDLElBQU1DLFFBQVEsR0FBRyxJQUFBQyx1QkFBVyxFQUFDLENBQUM7RUFDOUIsSUFBQUMsU0FBQSxHQUF3QyxJQUFBQyxlQUFRLEVBQUMsQ0FBQyxDQUFDO0lBQUFDLFVBQUEsT0FBQUMsZUFBQSxDQUFBM0MsT0FBQSxFQUFBd0MsU0FBQTtJQUE1Q0ksWUFBWSxHQUFBRixVQUFBO0lBQUVHLGVBQWUsR0FBQUgsVUFBQTtFQUNwQyxJQUFNSSxVQUFVLEdBQUcsSUFBQUMsdUJBQVcsRUFDNUIsVUFBQ0MsS0FBb0M7SUFBQSxPQUFLQSxLQUFLLENBQUNDLFdBQVc7RUFBQSxDQUM3RCxDQUFDO0VBQ0QsSUFBTUMsbUJBQW1CLEdBQUcsSUFBQUMsY0FBTyxFQUFDLFlBQU07SUFDeEMsT0FBTzVCLFlBQVksS0FBSyxJQUFJLElBQUlBLFlBQVksS0FBSzZCLFNBQVM7RUFDNUQsQ0FBQyxFQUFFLENBQUM3QixZQUFZLENBQUMsQ0FBQztFQUVsQixJQUFNOEIsbUJBQW1CLEdBQUcsSUFBQUYsY0FBTyxFQUFDLFlBQU07SUFDeEMsT0FBTzdCLFlBQVksS0FBSyxJQUFJLElBQUlBLFlBQVksS0FBSzhCLFNBQVM7RUFDNUQsQ0FBQyxFQUFFLENBQUM5QixZQUFZLENBQUMsQ0FBQztFQUVsQixJQUFNZ0MsWUFBWSxHQUFHLElBQUFILGNBQU8sRUFBQyxZQUFNO0lBQ2pDLE9BQ0UsQ0FBQ0wsVUFBVSxDQUFDUyxVQUFVLElBQ3RCbkIsTUFBTSxDQUFDb0IsT0FBTyxLQUFLLElBQUksSUFDdkIsQ0FBQ0gsbUJBQW1CLGlCQUNsQnhFLE1BQUEsQ0FBQW1CLE9BQUEsQ0FBQXlELGFBQUEsQ0FBQ3JFLGFBQUEsQ0FBQXNFLFlBQVk7TUFDWHZCLEdBQUcsRUFBRUMsTUFBTSxDQUFDb0IsT0FBUTtNQUNwQnJDLE1BQU0sRUFBRUEsTUFBTztNQUNmYSx3QkFBd0IsRUFBRUEsd0JBQXlCO01BQ25EMkIsUUFBUSxFQUFFTjtJQUFvQixDQUMvQixDQUNGO0VBRUwsQ0FBQyxFQUFFLENBQUNQLFVBQVUsQ0FBQ1MsVUFBVSxFQUFFbkIsTUFBTSxDQUFDb0IsT0FBTyxFQUFFckMsTUFBTSxFQUFFa0MsbUJBQW1CLENBQUMsQ0FBQztFQUV4RSxJQUFNTywyQkFBMkIsR0FBRyxJQUFBVCxjQUFPLEVBQUMsWUFBTTtJQUNoRGYsTUFBTSxDQUFDb0IsT0FBTyxLQUFLLElBQUksSUFBSSxJQUFBSyx5QkFBZSxFQUFDekIsTUFBTSxDQUFDb0IsT0FBTyxDQUFDO0VBQzVELENBQUMsRUFBRSxDQUFDcEIsTUFBTSxDQUFDb0IsT0FBTyxFQUFFckMsTUFBTSxFQUFFa0MsbUJBQW1CLENBQUMsQ0FBQztFQUVqRCxJQUFNUyxhQUFhLEdBQUcsSUFBQVgsY0FBTyxFQUFDLFlBQU07SUFDbEMsSUFBSUUsbUJBQW1CLEVBQUU7TUFDdkIvQixZQUFZLENBQUV5QyxPQUFPLEdBQUdWLG1CQUFtQjtNQUMzQy9CLFlBQVksQ0FBRTBDLE9BQU8sR0FBRyxDQUFDWCxtQkFBbUI7SUFDOUM7SUFFQSxJQUFJSCxtQkFBbUIsRUFBRTtNQUN2QjNCLFlBQVksQ0FBRXlDLE9BQU8sR0FBR2QsbUJBQW1CO01BQzNDM0IsWUFBWSxDQUFFd0MsT0FBTyxHQUFHLENBQUNiLG1CQUFtQjtJQUM5QztJQUVBLElBQUksQ0FBQ0EsbUJBQW1CLElBQUksQ0FBQ0csbUJBQW1CLEVBQUUsb0JBQU94RSxNQUFBLENBQUFtQixPQUFBLENBQUF5RCxhQUFBLENBQUE1RSxNQUFBLENBQUFtQixPQUFBLENBQUFpRSxRQUFBLE1BQUksQ0FBQztJQUM5RCxvQkFDRXBGLE1BQUEsQ0FBQW1CLE9BQUEsQ0FBQXlELGFBQUEsQ0FBQ3BFLE1BQUEsQ0FBQTZFLEtBQUs7TUFDSkMsS0FBSyxFQUFFN0MsWUFBWSxJQUFLQyxZQUFjO01BQ3RDWSxHQUFHLEVBQUVBLEdBQUk7TUFDVGpCLEtBQUssRUFBRUEsS0FBTztNQUNkQyxNQUFNLEVBQUVBLE1BQVE7TUFDaEJpRCxjQUFjLEVBQUUsQ0FBQ2xCO0lBQW9CLENBQ3RDLENBQUM7RUFFTixDQUFDLEVBQUUsQ0FBQzVCLFlBQVksRUFBRUMsWUFBWSxFQUFFSCxXQUFXLENBQUNpRCxnQkFBZ0IsQ0FBQyxDQUFDO0VBRTlELElBQUFDLGdCQUFTLEVBQUMsWUFBTTtJQUNkLElBQUFDLHVCQUFhLEVBQ1gzQixZQUFZLEVBQ1pqQixXQUFXLEVBQ1hDLGlCQUFVLENBQUM0QyxTQUFTLEVBQ3BCcEMsTUFBTSxFQUNORSxRQUFRLEVBQ1JtQyxxQkFBVyxFQUNYcEQsY0FBYyxFQUNkd0IsZUFDRixDQUFDO0lBRUQsT0FBTyxTQUFTNkIsT0FBT0EsQ0FBQSxFQUFHO01BQ3hCO01BQ0F0QyxNQUFNLENBQUNvQixPQUFPLENBQUNtQixNQUFNLENBQUMsQ0FBQztNQUN2QnJDLFFBQVEsQ0FBQyxJQUFBc0MsaUJBQVEsRUFBQ3hCLFNBQVMsQ0FBQyxDQUFDO0lBQy9CLENBQUM7RUFDSCxDQUFDLEVBQUUsQ0FBQ2hDLFdBQVcsQ0FBQ3lELGdCQUFnQixDQUFDLENBQUM7RUFFbEMsSUFBQVAsZ0JBQVMsRUFBQyxZQUFNO0lBQ2QsSUFBSSxDQUFDbEMsTUFBTSxDQUFDb0IsT0FBTyxFQUFFO01BQ25CLElBQUFlLHVCQUFhLEVBQ1gzQixZQUFZLEVBQ1pqQixXQUFXLEVBQ1hDLGlCQUFVLENBQUM0QyxTQUFTLEVBQ3BCcEMsTUFBTSxFQUNORSxRQUFRLEVBQ1JtQyxxQkFBVyxFQUNYcEQsY0FBYyxFQUNkd0IsZUFDRixDQUFDO0lBQ0gsQ0FBQyxNQUFNO01BQ0wsSUFBQWlDLHdCQUFjLEVBQUMxQyxNQUFNLEVBQUVxQyxxQkFBVyxFQUFFcEQsY0FBYyxDQUFDO0lBQ3JEO0VBQ0YsQ0FBQyxFQUFFLENBQUNBLGNBQWMsQ0FBQyxDQUFDO0VBRXBCLG9CQUNFeEMsTUFBQSxDQUFBbUIsT0FBQSxDQUFBeUQsYUFBQTtJQUFLc0IsU0FBUyxFQUFDO0VBQWtCLGdCQUMvQmxHLE1BQUEsQ0FBQW1CLE9BQUEsQ0FBQXlELGFBQUE7SUFDRXNCLFNBQVMsb0JBQUFDLE1BQUEsQ0FDUDVELFdBQVcsQ0FBQzZELGVBQWUsR0FBRyxFQUFFLEdBQUcsa0NBQWtDO0VBQ3BFLGdCQUVIcEcsTUFBQSxDQUFBbUIsT0FBQSxDQUFBeUQsYUFBQSxDQUFDeEUsY0FBQSxDQUFBZSxPQUFhLHFCQUNabkIsTUFBQSxDQUFBbUIsT0FBQSxDQUFBeUQsYUFBQTtJQUFLeUIsRUFBRSxFQUFDO0VBQUssQ0FBTSxDQUFDLEVBQ25CLElBQUFDLDhCQUFvQixFQUFDL0QsV0FBVyxFQUFFZ0IsTUFBTSxFQUFFbEIsS0FBSyxFQUFFQyxNQUFNLENBQUMsaUJBQ3ZEdEMsTUFBQSxDQUFBbUIsT0FBQSxDQUFBeUQsYUFBQSxDQUFBNUUsTUFBQSxDQUFBbUIsT0FBQSxDQUFBaUUsUUFBQSxRQUNHWCxZQUFZLGVBQ2J6RSxNQUFBLENBQUFtQixPQUFBLENBQUF5RCxhQUFBLENBQUN2RSxhQUFBLENBQUFrRyxZQUFZO0lBQ1huRSxLQUFLLEVBQUVBLEtBQU07SUFDYmtCLEdBQUcsRUFBRUMsTUFBTSxDQUFDb0IsT0FBUTtJQUNwQjZCLENBQUMsRUFBRUEsZ0JBQUU7SUFDTGhFLGNBQWMsRUFBRUEsY0FBZTtJQUMvQmlFLE9BQU8sRUFBRTFDO0VBQWEsQ0FDdkIsQ0FBQyxlQUVGL0QsTUFBQSxDQUFBbUIsT0FBQSxDQUFBeUQsYUFBQSxDQUFDdEUsTUFBQSxDQUFBYSxPQUFLO0lBQ0prQixLQUFLLEVBQUVBLEtBQU87SUFDZGlCLEdBQUcsRUFBRUMsTUFBTSxDQUFDb0IsT0FBUTtJQUNwQjZCLENBQUMsRUFBRUEsZ0JBQUU7SUFDTGxFLE1BQU0sRUFBRUEsTUFBUTtJQUNoQk0sU0FBUyxFQUFFQSxTQUFVO0lBQ3JCOEQsMkJBQTJCLEVBQ3pCckQ7RUFDRCxDQUNGLENBQ0QsQ0FDSCxFQUNBLElBQUFzRCxzQ0FBNEIsRUFBQ3RFLEtBQUssRUFBRUQsS0FBSyxFQUFFRyxXQUFXLEVBQUVnQixNQUFNLENBQUMsaUJBQzlEdkQsTUFBQSxDQUFBbUIsT0FBQSxDQUFBeUQsYUFBQSxDQUFBNUUsTUFBQSxDQUFBbUIsT0FBQSxDQUFBaUUsUUFBQSxRQUNHSCxhQUFhLEVBQ2JGLDJCQUEyQixFQUMzQjlCLFFBQ0QsQ0FFUyxDQUNaLENBQ0YsQ0FBQztBQUVWLENBQUM7QUFBQzJELE9BQUEsQ0FBQTFFLEdBQUEsR0FBQUEsR0FBQSJ9
|
|
@@ -1,72 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
|
-
exports.
|
|
9
|
-
|
|
7
|
+
exports.topIconOptions = exports.shouldLoadMapObjects = exports.shoudLoadDependentMapObjects = exports.multipleLayeredIcons = exports.middleIconOptions = exports.isValidArea = exports.initializeMap = exports.iconZoomControl = exports.findSpecificLayersFromMap = exports.eventsCounterIcons = exports.eventsCountIcon = exports.bubbleIconOptions = exports.areaFocusLogic = void 0;
|
|
10
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
|
|
11
|
-
|
|
12
9
|
var _leaflet = _interopRequireDefault(require("leaflet"));
|
|
13
|
-
|
|
14
10
|
var _actions = require("../../store/global/actions");
|
|
15
|
-
|
|
16
11
|
var _i18n = _interopRequireDefault(require("utilities/i18n"));
|
|
17
|
-
|
|
18
12
|
var areaFocusLogic = function areaFocusLogic(mapRef, isValidArea, areaToCenterBy) {
|
|
19
13
|
var mapInstance = mapRef.current;
|
|
20
|
-
|
|
21
14
|
if (isValidArea(areaToCenterBy)) {
|
|
22
15
|
mapInstance.fitBounds(areaToCenterBy, {
|
|
23
16
|
padding: [0, 0]
|
|
24
17
|
});
|
|
25
18
|
} else {
|
|
26
19
|
var group = [];
|
|
27
|
-
|
|
28
20
|
for (var property in mapInstance._layers) {
|
|
29
21
|
if (mapInstance._layers[property].kando_object === 'Area') {
|
|
30
22
|
group.push(mapInstance._layers[property]);
|
|
31
23
|
}
|
|
32
24
|
}
|
|
33
|
-
|
|
34
25
|
if (Object.keys(_leaflet.default.featureGroup(group).getBounds()).length !== 0) {
|
|
35
26
|
mapInstance.fitBounds(_leaflet.default.featureGroup(group).getBounds(), {
|
|
36
27
|
padding: [100, 100]
|
|
37
28
|
});
|
|
38
29
|
}
|
|
39
30
|
}
|
|
40
|
-
|
|
41
31
|
mapInstance.invalidateSize(true);
|
|
42
32
|
};
|
|
43
|
-
|
|
44
33
|
exports.areaFocusLogic = areaFocusLogic;
|
|
45
|
-
|
|
46
34
|
var isValidArea = function isValidArea(area) {
|
|
47
35
|
return area && area.length > 0 && Object.keys(area[0]).length > 0;
|
|
48
36
|
};
|
|
49
|
-
|
|
50
37
|
exports.isValidArea = isValidArea;
|
|
51
|
-
|
|
52
38
|
var shouldLoadMapObjects = function shouldLoadMapObjects(global_data, mapRef, points, edges) {
|
|
53
39
|
return global_data.map !== undefined && mapRef.current !== null && edges !== undefined && points !== undefined;
|
|
54
40
|
};
|
|
55
|
-
|
|
56
41
|
exports.shouldLoadMapObjects = shouldLoadMapObjects;
|
|
57
|
-
|
|
58
42
|
var shoudLoadDependentMapObjects = function shoudLoadDependentMapObjects(edges, areas, global, mapRef) {
|
|
59
43
|
return global.map !== undefined && mapRef.current !== null && edges.length !== 0 && areas.length !== 0;
|
|
60
44
|
};
|
|
61
|
-
|
|
62
45
|
exports.shoudLoadDependentMapObjects = shoudLoadDependentMapObjects;
|
|
63
|
-
|
|
64
46
|
var findSpecificLayersFromMap = function findSpecificLayersFromMap(layersToFind, currentLayer) {
|
|
65
47
|
return layersToFind.includes(currentLayer.kando_object) && currentLayer.kando_point_type !== 'Manhole';
|
|
66
48
|
};
|
|
67
|
-
|
|
68
49
|
exports.findSpecificLayersFromMap = findSpecificLayersFromMap;
|
|
69
|
-
|
|
70
50
|
var eventsCounterIcons = function eventsCounterIcons(layer, zoomLevel) {
|
|
71
51
|
var icon = layer.options.icon;
|
|
72
52
|
icon.options.iconSize = eventsCountIcon(zoomLevel).iconSize;
|
|
@@ -74,9 +54,7 @@ var eventsCounterIcons = function eventsCounterIcons(layer, zoomLevel) {
|
|
|
74
54
|
layer.setIcon(icon);
|
|
75
55
|
layer.setOpacity(1);
|
|
76
56
|
};
|
|
77
|
-
|
|
78
57
|
exports.eventsCounterIcons = eventsCounterIcons;
|
|
79
|
-
|
|
80
58
|
var multipleLayeredIcons = function multipleLayeredIcons(layer, zoomLevel) {
|
|
81
59
|
var icon = layer.options.icon;
|
|
82
60
|
var isAFewLayerIcon = layer.kando_few_layer_icon;
|
|
@@ -85,7 +63,6 @@ var multipleLayeredIcons = function multipleLayeredIcons(layer, zoomLevel) {
|
|
|
85
63
|
secondary: layer.kando_secondary,
|
|
86
64
|
third: layer.kando_third
|
|
87
65
|
};
|
|
88
|
-
|
|
89
66
|
if (layer.kando_index_object === 0) {
|
|
90
67
|
if (isAFewLayerIcon) {
|
|
91
68
|
icon.options.iconSize = bubbleIconOptions(zoomLevel, miniIcon).iconSize;
|
|
@@ -103,28 +80,22 @@ var multipleLayeredIcons = function multipleLayeredIcons(layer, zoomLevel) {
|
|
|
103
80
|
icon.options.iconAnchor = topIconOptions(zoomLevel, miniIcon).iconAnchor;
|
|
104
81
|
}
|
|
105
82
|
}
|
|
106
|
-
|
|
107
83
|
layer.setIcon(icon);
|
|
108
84
|
};
|
|
109
|
-
|
|
110
85
|
exports.multipleLayeredIcons = multipleLayeredIcons;
|
|
111
|
-
|
|
112
86
|
var oneLayerIconOptions = function oneLayerIconOptions(zoomLevel) {
|
|
113
87
|
return {
|
|
114
88
|
iconSize: [zoomLevel * 3.3, zoomLevel * 3.3],
|
|
115
89
|
iconAnchor: [zoomLevel * 1.7, zoomLevel * 3.7]
|
|
116
90
|
};
|
|
117
91
|
};
|
|
118
|
-
|
|
119
92
|
var eventsCountIcon = function eventsCountIcon(zoomLevel) {
|
|
120
93
|
return {
|
|
121
94
|
iconSize: [zoomLevel * 2.5, zoomLevel * 2.5],
|
|
122
95
|
iconAnchor: [zoomLevel * 0, zoomLevel * 4]
|
|
123
96
|
};
|
|
124
97
|
};
|
|
125
|
-
|
|
126
98
|
exports.eventsCountIcon = eventsCountIcon;
|
|
127
|
-
|
|
128
99
|
var bubbleIconOptions = function bubbleIconOptions(zoomLevel, miniIcon) {
|
|
129
100
|
if (miniIcon.present) {
|
|
130
101
|
if (miniIcon.secondary) {
|
|
@@ -145,9 +116,7 @@ var bubbleIconOptions = function bubbleIconOptions(zoomLevel, miniIcon) {
|
|
|
145
116
|
};
|
|
146
117
|
}
|
|
147
118
|
};
|
|
148
|
-
|
|
149
119
|
exports.bubbleIconOptions = bubbleIconOptions;
|
|
150
|
-
|
|
151
120
|
var middleIconOptions = function middleIconOptions(zoomLevel, miniIcon) {
|
|
152
121
|
if (miniIcon.present) {
|
|
153
122
|
if (miniIcon.secondary) {
|
|
@@ -168,9 +137,7 @@ var middleIconOptions = function middleIconOptions(zoomLevel, miniIcon) {
|
|
|
168
137
|
};
|
|
169
138
|
}
|
|
170
139
|
};
|
|
171
|
-
|
|
172
140
|
exports.middleIconOptions = middleIconOptions;
|
|
173
|
-
|
|
174
141
|
var topIconOptions = function topIconOptions(zoomLevel, miniIcon) {
|
|
175
142
|
if (miniIcon.present) {
|
|
176
143
|
if (miniIcon.secondary) {
|
|
@@ -191,30 +158,23 @@ var topIconOptions = function topIconOptions(zoomLevel, miniIcon) {
|
|
|
191
158
|
};
|
|
192
159
|
}
|
|
193
160
|
};
|
|
194
|
-
|
|
195
161
|
exports.topIconOptions = topIconOptions;
|
|
196
|
-
|
|
197
162
|
var iconZoomControl = function iconZoomControl(map) {
|
|
198
163
|
var layers = map._layers;
|
|
199
164
|
var zoomLevel = map._zoom;
|
|
200
|
-
|
|
201
165
|
for (var property in layers) {
|
|
202
166
|
if (findSpecificLayersFromMap(['IconNumber'], layers[property])) {
|
|
203
167
|
eventsCounterIcons(layers[property], zoomLevel);
|
|
204
168
|
}
|
|
205
|
-
|
|
206
169
|
if (findSpecificLayersFromMap(['Point', 'Icon'], layers[property])) {
|
|
207
170
|
multipleLayeredIcons(layers[property], zoomLevel);
|
|
208
171
|
}
|
|
209
|
-
|
|
210
172
|
if (findSpecificLayersFromMap(['Sampling', 'Observation'], layers[property])) {
|
|
211
173
|
multipleLayeredIcons(layers[property], zoomLevel);
|
|
212
174
|
}
|
|
213
175
|
}
|
|
214
176
|
};
|
|
215
|
-
|
|
216
177
|
exports.iconZoomControl = iconZoomControl;
|
|
217
|
-
|
|
218
178
|
var mapStyle = function mapStyle(mapBoxStyle) {
|
|
219
179
|
return _leaflet.default.tileLayer("https://api.mapbox.com/styles/v1/nadav-kando/".concat(mapBoxStyle, "/tiles/256/{z}/{x}/{y}@2x?access_token=pk.eyJ1IjoibmFkYXYta2FuZG8iLCJhIjoiY2pveHprdGRxMHlmdDN4bDg0dzJxOXc4dSJ9.J-2ohq7j4yKNbm4N_-P6qw"), {
|
|
220
180
|
attribution: 'Map data © <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="https://www.mapbox.com/">Mapbox</a>',
|
|
@@ -226,17 +186,12 @@ var mapStyle = function mapStyle(mapBoxStyle) {
|
|
|
226
186
|
updateWhenIdle: false
|
|
227
187
|
});
|
|
228
188
|
};
|
|
229
|
-
|
|
230
189
|
var baseMaps = function baseMaps(mapBoxStyle, mapBoxSatelliteStyle) {
|
|
231
190
|
var _ref;
|
|
232
|
-
|
|
233
191
|
var defaultMap = _i18n.default.t('map.layers.default');
|
|
234
|
-
|
|
235
192
|
var satellite = _i18n.default.t('map.layers.satellite');
|
|
236
|
-
|
|
237
193
|
return _ref = {}, (0, _defineProperty2.default)(_ref, defaultMap, mapStyle(mapBoxStyle)), (0, _defineProperty2.default)(_ref, satellite, mapStyle(mapBoxSatelliteStyle)), _ref;
|
|
238
194
|
};
|
|
239
|
-
|
|
240
195
|
var initializeMap = function initializeMap(mapZoomLevel, mapBoxStyle, mapBoxSatelliteStyle, mapRef, dispatch, isValidArea, areaToCenterBy, setMapZoomLevel) {
|
|
241
196
|
// @ts-ignore
|
|
242
197
|
mapRef.current = _leaflet.default.map('map', {
|
|
@@ -249,20 +204,16 @@ var initializeMap = function initializeMap(mapZoomLevel, mapBoxStyle, mapBoxSate
|
|
|
249
204
|
});
|
|
250
205
|
mapRef.current.whenReady(function () {
|
|
251
206
|
var map = mapRef.current;
|
|
252
|
-
|
|
253
207
|
_leaflet.default.control.layers(baseMaps(mapBoxStyle, mapBoxSatelliteStyle), {}, {
|
|
254
208
|
position: 'bottomright'
|
|
255
209
|
}).addTo(map);
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
210
|
+
mapStyle(mapBoxStyle).addTo(map);
|
|
211
|
+
// Set default map box checked
|
|
259
212
|
var radioMap = document.querySelector("[type='radio'].leaflet-control-layers-selector");
|
|
260
|
-
|
|
261
213
|
if (radioMap) {
|
|
262
214
|
// @ts-ignore
|
|
263
215
|
radioMap.checked = true;
|
|
264
216
|
}
|
|
265
|
-
|
|
266
217
|
map.on('zoomend', function () {
|
|
267
218
|
iconZoomControl(map);
|
|
268
219
|
});
|
|
@@ -270,17 +221,14 @@ var initializeMap = function initializeMap(mapZoomLevel, mapBoxStyle, mapBoxSate
|
|
|
270
221
|
if (!mapRef.current) {
|
|
271
222
|
return;
|
|
272
223
|
}
|
|
273
|
-
|
|
274
224
|
try {
|
|
275
225
|
mapRef.current.invalidateSize(true);
|
|
276
226
|
} catch (err) {
|
|
277
227
|
console.error('err', err);
|
|
278
228
|
}
|
|
279
|
-
|
|
280
229
|
dispatch((0, _actions.storeMap)(mapRef.current));
|
|
281
230
|
dispatch((0, _actions.sideNavExpanded)(true));
|
|
282
231
|
}, 0);
|
|
283
|
-
|
|
284
232
|
if (mapRef.current && isValidArea(areaToCenterBy)) {
|
|
285
233
|
mapRef.current.fitBounds(areaToCenterBy);
|
|
286
234
|
}
|
|
@@ -289,11 +237,9 @@ var initializeMap = function initializeMap(mapZoomLevel, mapBoxStyle, mapBoxSate
|
|
|
289
237
|
if (!mapRef.current) {
|
|
290
238
|
return;
|
|
291
239
|
}
|
|
292
|
-
|
|
293
240
|
var zoom = mapRef.current.getZoom();
|
|
294
241
|
setMapZoomLevel(zoom);
|
|
295
242
|
});
|
|
296
243
|
};
|
|
297
|
-
|
|
298
244
|
exports.initializeMap = initializeMap;
|
|
299
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9NYXBVdGlscy50cyJdLCJuYW1lcyI6WyJhcmVhRm9jdXNMb2dpYyIsIm1hcFJlZiIsImlzVmFsaWRBcmVhIiwiYXJlYVRvQ2VudGVyQnkiLCJtYXBJbnN0YW5jZSIsImN1cnJlbnQiLCJmaXRCb3VuZHMiLCJwYWRkaW5nIiwiZ3JvdXAiLCJwcm9wZXJ0eSIsIl9sYXllcnMiLCJrYW5kb19vYmplY3QiLCJwdXNoIiwiT2JqZWN0Iiwia2V5cyIsIkwiLCJmZWF0dXJlR3JvdXAiLCJnZXRCb3VuZHMiLCJsZW5ndGgiLCJpbnZhbGlkYXRlU2l6ZSIsImFyZWEiLCJzaG91bGRMb2FkTWFwT2JqZWN0cyIsImdsb2JhbF9kYXRhIiwicG9pbnRzIiwiZWRnZXMiLCJtYXAiLCJ1bmRlZmluZWQiLCJzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzIiwiYXJlYXMiLCJnbG9iYWwiLCJmaW5kU3BlY2lmaWNMYXllcnNGcm9tTWFwIiwibGF5ZXJzVG9GaW5kIiwiY3VycmVudExheWVyIiwiaW5jbHVkZXMiLCJrYW5kb19wb2ludF90eXBlIiwiZXZlbnRzQ291bnRlckljb25zIiwibGF5ZXIiLCJ6b29tTGV2ZWwiLCJpY29uIiwib3B0aW9ucyIsImljb25TaXplIiwiZXZlbnRzQ291bnRJY29uIiwiaWNvbkFuY2hvciIsInNldEljb24iLCJzZXRPcGFjaXR5IiwibXVsdGlwbGVMYXllcmVkSWNvbnMiLCJpc0FGZXdMYXllckljb24iLCJrYW5kb19mZXdfbGF5ZXJfaWNvbiIsIm1pbmlJY29uIiwicHJlc2VudCIsImthbmRvX3NlY29uZGFyeSIsImthbmRvX3RoaXJkIiwic2Vjb25kYXJ5IiwidGhpcmQiLCJrYW5kb19pbmRleF9vYmplY3QiLCJidWJibGVJY29uT3B0aW9ucyIsIm9uZUxheWVySWNvbk9wdGlvbnMiLCJtaWRkbGVJY29uT3B0aW9ucyIsInRvcEljb25PcHRpb25zIiwiaWNvblpvb21Db250cm9sIiwibGF5ZXJzIiwiX3pvb20iLCJtYXBTdHlsZSIsIm1hcEJveFN0eWxlIiwidGlsZUxheWVyIiwiYXR0cmlidXRpb24iLCJtYXhab29tIiwiaWQiLCJ0aWxlU2l6ZSIsInpvb21PZmZzZXQiLCJ1cGRhdGVXaGVuWm9vbWluZyIsInVwZGF0ZVdoZW5JZGxlIiwiYmFzZU1hcHMiLCJtYXBCb3hTYXRlbGxpdGVTdHlsZSIsImRlZmF1bHRNYXAiLCJpMThuIiwidCIsInNhdGVsbGl0ZSIsImluaXRpYWxpemVNYXAiLCJtYXBab29tTGV2ZWwiLCJkaXNwYXRjaCIsInNldE1hcFpvb21MZXZlbCIsImNlbnRlciIsInpvb21TbmFwIiwiem9vbSIsImF0dHJpYnV0aW9uQ29udHJvbCIsInByZWZlckNhbnZhcyIsIndoZW5SZWFkeSIsImNvbnRyb2wiLCJwb3NpdGlvbiIsImFkZFRvIiwicmFkaW9NYXAiLCJkb2N1bWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJjaGVja2VkIiwib24iLCJzZXRUaW1lb3V0IiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwiZSIsImdldFpvb20iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBRU8sSUFBTUEsY0FBYyxHQUFHLFNBQWpCQSxjQUFpQixDQUFDQyxNQUFELEVBQVNDLFdBQVQsRUFBc0JDLGNBQXRCLEVBQXlDO0FBQ3JFLE1BQUlDLFdBQWdCLEdBQUdILE1BQU0sQ0FBQ0ksT0FBOUI7O0FBQ0EsTUFBSUgsV0FBVyxDQUFDQyxjQUFELENBQWYsRUFBaUM7QUFDL0JDLElBQUFBLFdBQVcsQ0FBQ0UsU0FBWixDQUFzQkgsY0FBdEIsRUFBc0M7QUFBRUksTUFBQUEsT0FBTyxFQUFFLENBQUMsQ0FBRCxFQUFJLENBQUo7QUFBWCxLQUF0QztBQUNELEdBRkQsTUFFTztBQUNMLFFBQU1DLEtBQVksR0FBRyxFQUFyQjs7QUFFQSxTQUFLLElBQU1DLFFBQVgsSUFBdUJMLFdBQVcsQ0FBQ00sT0FBbkMsRUFBNEM7QUFDMUMsVUFBSU4sV0FBVyxDQUFDTSxPQUFaLENBQW9C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QW1EO0FBQ2pERixNQUFBQSxNQUFNLENBQUNJLE9BQVAsQ0FBZUMsU0FBZixDQUF5QkgsY0FBekI7QUFDRDtBQUNGLEdBdENEO0FBd0NBRixFQUFBQSxNQUFNLENBQUNJLE9BQVAsQ0FBZTBGLEVBQWYsQ0FBa0IsU0FBbEIsRUFBNkIsVUFBVUssQ0FBVixFQUFhO0FBQ3hDLFFBQUksQ0FBQ25HLE1BQU0sQ0FBQ0ksT0FBWixFQUFxQjtBQUNuQjtBQUNEOztBQUNELFFBQUkrRSxJQUFJLEdBQUduRixNQUFNLENBQUNJLE9BQVAsQ0FBZWdHLE9BQWYsRUFBWDtBQUNBcEIsSUFBQUEsZUFBZSxDQUFDRyxJQUFELENBQWY7QUFDRCxHQU5EO0FBT0QsQ0FuRU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTCwgeyBQb2ludFR1cGxlIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBzaWRlTmF2RXhwYW5kZWQsIHN0b3JlTWFwIH0gZnJvbSAnLi4vLi4vc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcblxuZXhwb3J0IGNvbnN0IGFyZWFGb2N1c0xvZ2ljID0gKG1hcFJlZiwgaXNWYWxpZEFyZWEsIGFyZWFUb0NlbnRlckJ5KSA9PiB7XG4gIGxldCBtYXBJbnN0YW5jZTogYW55ID0gbWFwUmVmLmN1cnJlbnQ7XG4gIGlmIChpc1ZhbGlkQXJlYShhcmVhVG9DZW50ZXJCeSkpIHtcbiAgICBtYXBJbnN0YW5jZS5maXRCb3VuZHMoYXJlYVRvQ2VudGVyQnksIHsgcGFkZGluZzogWzAsIDBdIH0pO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IGdyb3VwOiBhbnlbXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBtYXBJbnN0YW5jZS5fbGF5ZXJzKSB7XG4gICAgICBpZiAobWFwSW5zdGFuY2UuX2xheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0ID09PSAnQXJlYScpIHtcbiAgICAgICAgZ3JvdXAucHVzaChtYXBJbnN0YW5jZS5fbGF5ZXJzW3Byb3BlcnR5XSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKE9iamVjdC5rZXlzKEwuZmVhdHVyZUdyb3VwKGdyb3VwKS5nZXRCb3VuZHMoKSkubGVuZ3RoICE9PSAwKSB7XG4gICAgICBtYXBJbnN0YW5jZS5maXRCb3VuZHMoTC5mZWF0dXJlR3JvdXAoZ3JvdXApLmdldEJvdW5kcygpLCB7XG4gICAgICAgIHBhZGRpbmc6IFsxMDAsIDEwMF0sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbiAgbWFwSW5zdGFuY2UuaW52YWxpZGF0ZVNpemUodHJ1ZSk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNWYWxpZEFyZWEgPSAoYXJlYSkgPT4ge1xuICByZXR1cm4gYXJlYSAmJiBhcmVhLmxlbmd0aCA+IDAgJiYgT2JqZWN0LmtleXMoYXJlYVswXSkubGVuZ3RoID4gMDtcbn07XG5cbmV4cG9ydCBjb25zdCBzaG91bGRMb2FkTWFwT2JqZWN0cyA9IChnbG9iYWxfZGF0YSwgbWFwUmVmLCBwb2ludHMsIGVkZ2VzKSA9PiB7XG4gIHJldHVybiAoXG4gICAgZ2xvYmFsX2RhdGEubWFwICE9PSB1bmRlZmluZWQgJiZcbiAgICBtYXBSZWYuY3VycmVudCAhPT0gbnVsbCAmJlxuICAgIGVkZ2VzICE9PSB1bmRlZmluZWQgJiZcbiAgICBwb2ludHMgIT09IHVuZGVmaW5lZFxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IHNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMgPSAoZWRnZXMsIGFyZWFzLCBnbG9iYWwsIG1hcFJlZikgPT4ge1xuICByZXR1cm4gKFxuICAgIGdsb2JhbC5tYXAgIT09IHVuZGVmaW5lZCAmJlxuICAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmXG4gICAgZWRnZXMubGVuZ3RoICE9PSAwICYmXG4gICAgYXJlYXMubGVuZ3RoICE9PSAwXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgZmluZFNwZWNpZmljTGF5ZXJzRnJvbU1hcCA9IChcbiAgbGF5ZXJzVG9GaW5kOiBzdHJpbmdbXSxcbiAgY3VycmVudExheWVyLFxuKSA9PiB7XG4gIHJldHVybiAoXG4gICAgbGF5ZXJzVG9GaW5kLmluY2x1ZGVzKGN1cnJlbnRMYXllci5rYW5kb19vYmplY3QpICYmXG4gICAgY3VycmVudExheWVyLmthbmRvX3BvaW50X3R5cGUgIT09ICdNYW5ob2xlJ1xuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IGV2ZW50c0NvdW50ZXJJY29ucyA9IChsYXllciwgem9vbUxldmVsKSA9PiB7XG4gIGxldCBpY29uID0gbGF5ZXIub3B0aW9ucy5pY29uO1xuICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSBldmVudHNDb3VudEljb24oem9vbUxldmVsKS5pY29uU2l6ZTtcbiAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSBldmVudHNDb3VudEljb24oem9vbUxldmVsKS5pY29uQW5jaG9yO1xuICBsYXllci5zZXRJY29uKGljb24pO1xuICBsYXllci5zZXRPcGFjaXR5KDEpO1xufTtcblxuZXhwb3J0IGNvbnN0IG11bHRpcGxlTGF5ZXJlZEljb25zID0gKGxheWVyLCB6b29tTGV2ZWwpID0+IHtcbiAgbGV0IGljb24gPSBsYXllci5vcHRpb25zLmljb247XG4gIGxldCBpc0FGZXdMYXllckljb24gPSBsYXllci5rYW5kb19mZXdfbGF5ZXJfaWNvbjtcbiAgbGV0IG1pbmlJY29uID0ge1xuICAgIHByZXNlbnQ6IGxheWVyLmthbmRvX3NlY29uZGFyeSB8fCBsYXllci5rYW5kb190aGlyZCxcbiAgICBzZWNvbmRhcnk6IGxheWVyLmthbmRvX3NlY29uZGFyeSxcbiAgICB0aGlyZDogbGF5ZXIua2FuZG9fdGhpcmQsXG4gIH07XG5cbiAgaWYgKGxheWVyLmthbmRvX2luZGV4X29iamVjdCA9PT0gMCkge1xuICAgIGlmIChpc0FGZXdMYXllckljb24pIHtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uU2l6ZSA9IGJ1YmJsZUljb25PcHRpb25zKHpvb21MZXZlbCwgbWluaUljb24pLmljb25TaXplO1xuICAgICAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSBidWJibGVJY29uT3B0aW9ucyhcbiAgICAgICAgem9vbUxldmVsLFxuICAgICAgICBtaW5pSWNvbixcbiAgICAgICkuaWNvbkFuY2hvcjtcbiAgICB9IGVsc2Uge1xuICAgICAgaWNvbi5vcHRpb25zLmljb25TaXplID0gb25lTGF5ZXJJY29uT3B0aW9ucyh6b29tTGV2ZWwpLmljb25TaXplO1xuICAgICAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSBvbmVMYXllckljb25PcHRpb25zKHpvb21MZXZlbCkuaWNvbkFuY2hvcjtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgaWYgKGxheWVyLmthbmRvX2luZGV4X29iamVjdCA9PT0gMSkge1xuICAgICAgaWNvbi5vcHRpb25zLmljb25TaXplID0gbWlkZGxlSWNvbk9wdGlvbnMoem9vbUxldmVsLCBtaW5pSWNvbikuaWNvblNpemU7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IG1pZGRsZUljb25PcHRpb25zKFxuICAgICAgICB6b29tTGV2ZWwsXG4gICAgICAgIG1pbmlJY29uLFxuICAgICAgKS5pY29uQW5jaG9yO1xuICAgIH0gZWxzZSB7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSB0b3BJY29uT3B0aW9ucyh6b29tTGV2ZWwsIG1pbmlJY29uKS5pY29uU2l6ZTtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uQW5jaG9yID0gdG9wSWNvbk9wdGlvbnMoem9vbUxldmVsLCBtaW5pSWNvbikuaWNvbkFuY2hvcjtcbiAgICB9XG4gIH1cblxuICBsYXllci5zZXRJY29uKGljb24pO1xufTtcblxuY29uc3Qgb25lTGF5ZXJJY29uT3B0aW9ucyA9ICh6b29tTGV2ZWwpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBpY29uU2l6ZTogPFBvaW50VHVwbGU+W3pvb21MZXZlbCAqIDMuMywgem9vbUxldmVsICogMy4zXSxcbiAgICBpY29uQW5jaG9yOiA8UG9pbnRUdXBsZT5bem9vbUxldmVsICogMS43LCB6b29tTGV2ZWwgKiAzLjddLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGV2ZW50c0NvdW50SWNvbiA9ICh6b29tTGV2ZWwpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBpY29uU2l6ZTogPFBvaW50VHVwbGU+W3pvb21MZXZlbCAqIDIuNSwgem9vbUxldmVsICogMi41XSxcbiAgICBpY29uQW5jaG9yOiA8UG9pbnRUdXBsZT5bem9vbUxldmVsICogMCwgem9vbUxldmVsICogNF0sXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgYnViYmxlSWNvbk9wdGlvbnMgPSAoem9vbUxldmVsLCBtaW5pSWNvbikgPT4ge1xuICBpZiAobWluaUljb24ucHJlc2VudCkge1xuICAgIGlmIChtaW5pSWNvbi5zZWNvbmRhcnkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiA8UG9pbnRUdXBsZT5bem9vbUxldmVsICogMS45OCwgem9vbUxldmVsICogMi4zXSxcbiAgICAgICAgaWNvbkFuY2hvcjogPFBvaW50VHVwbGU+W3pvb21MZXZlbCAqIDAsIHpvb21MZXZlbCAqIDRdLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IDxQb2ludFR1cGxlPlt6b29tTGV2ZWwgKiAxLjk4LCB6b29tTGV2ZWwgKiAyLjNdLFxuICAgICAgICBpY29uQW5jaG9yOiA8UG9pbnRUdXBsZT5bem9vbUxldmVsICogMCwgem9vbUxldmVsICogMl0sXG4gICAgICB9O1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWNvblNpemU6IDxQb2ludFR1cGxlPlt6b29tTGV2ZWwgKiAzLjk4LCB6b29tTGV2ZWwgKiA0LjNdLFxuICAgICAgaWNvbkFuY2hvcjogPFBvaW50VHVwbGU+W3pvb21MZXZlbCAqIDIsIHpvb21MZXZlbCAqIDRdLFxuICAgIH07XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBtaWRkbGVJY29uT3B0aW9ucyA9ICh6b29tTGV2ZWwsIG1pbmlJY29uKSA9PiB7XG4gIGlmIChtaW5pSWNvbi5wcmVzZW50KSB7XG4gICAgaWYgKG1pbmlJY29uLnNlY29uZGFyeSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAxLjEsIHpvb21MZXZlbCAqIDEuMV0sXG4gICAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAtMC40NSwgem9vbUxldmVsICogMy41XSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMS4xLCB6b29tTGV2ZWwgKiAxLjFdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuNDUsIHpvb21MZXZlbCAqIDEuNV0sXG4gICAgICB9O1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAyLjUsIHpvb21MZXZlbCAqIDIuNV0sXG4gICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogMS4yOTUsIHpvb21MZXZlbCAqIDMuMzVdLFxuICAgIH07XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCB0b3BJY29uT3B0aW9ucyA9ICh6b29tTGV2ZWwsIG1pbmlJY29uKSA9PiB7XG4gIGlmIChtaW5pSWNvbi5wcmVzZW50KSB7XG4gICAgaWYgKG1pbmlJY29uLnNlY29uZGFyeSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAwLjksIHpvb21MZXZlbCAqIDEuOF0sXG4gICAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAtMC41LCB6b29tTGV2ZWwgKiAzLjhdLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAxLjYsIHpvb21MZXZlbCAqIDIuNV0sXG4gICAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAtMC4yLCB6b29tTGV2ZWwgKiAyLjFdLFxuICAgICAgfTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMy45LCB6b29tTGV2ZWwgKiAzLjhdLFxuICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDIsIHpvb21MZXZlbCAqIDMuOF0sXG4gICAgfTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGljb25ab29tQ29udHJvbCA9IChtYXApID0+IHtcbiAgbGV0IGxheWVycyA9IG1hcC5fbGF5ZXJzO1xuICBsZXQgem9vbUxldmVsID0gbWFwLl96b29tO1xuXG4gIGZvciAoY29uc3QgcHJvcGVydHkgaW4gbGF5ZXJzKSB7XG4gICAgaWYgKGZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAoWydJY29uTnVtYmVyJ10sIGxheWVyc1twcm9wZXJ0eV0pKSB7XG4gICAgICBldmVudHNDb3VudGVySWNvbnMobGF5ZXJzW3Byb3BlcnR5XSwgem9vbUxldmVsKTtcbiAgICB9XG5cbiAgICBpZiAoZmluZFNwZWNpZmljTGF5ZXJzRnJvbU1hcChbJ1BvaW50JywgJ0ljb24nXSwgbGF5ZXJzW3Byb3BlcnR5XSkpIHtcbiAgICAgIG11bHRpcGxlTGF5ZXJlZEljb25zKGxheWVyc1twcm9wZXJ0eV0sIHpvb21MZXZlbCk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgZmluZFNwZWNpZmljTGF5ZXJzRnJvbU1hcChbJ1NhbXBsaW5nJywgJ09ic2VydmF0aW9uJ10sIGxheWVyc1twcm9wZXJ0eV0pXG4gICAgKSB7XG4gICAgICBtdWx0aXBsZUxheWVyZWRJY29ucyhsYXllcnNbcHJvcGVydHldLCB6b29tTGV2ZWwpO1xuICAgIH1cbiAgfVxufTtcblxuY29uc3QgbWFwU3R5bGUgPSAobWFwQm94U3R5bGUpID0+IHtcbiAgcmV0dXJuIEwudGlsZUxheWVyKFxuICAgIGBodHRwczovL2FwaS5tYXBib3guY29tL3N0eWxlcy92MS9uYWRhdi1rYW5kby8ke21hcEJveFN0eWxlfS90aWxlcy8yNTYve3p9L3t4fS97eX1AMng/YWNjZXNzX3Rva2VuPXBrLmV5SjFJam9pYm1Ga1lYWXRhMkZ1Wkc4aUxDSmhJam9pWTJwdmVIcHJkR1J4TUhsbWRETjRiRGcwZHpKeE9YYzRkU0o5LkotMm9ocTdqNHlLTmJtNE5fLVA2cXdgLFxuICAgIHtcbiAgICAgIGF0dHJpYnV0aW9uOlxuICAgICAgICAnTWFwIGRhdGEgJmNvcHk7IDxhIGhyZWY9XCJodHRwczovL3d3dy5vcGVuc3RyZWV0bWFwLm9yZy9cIj5PcGVuU3RyZWV0TWFwPC9hPiBjb250cmlidXRvcnMsIDxhIGhyZWY9XCJodHRwczovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGljZW5zZXMvYnktc2EvMi4wL1wiPkNDLUJZLVNBPC9hPiwgSW1hZ2VyeSDCqSA8YSBocmVmPVwiaHR0cHM6Ly93d3cubWFwYm94LmNvbS9cIj5NYXBib3g8L2E+JyxcbiAgICAgIG1heFpvb206IDE4LFxuICAgICAgaWQ6ICdtYXBib3gvc3RyZWV0cy12MTEnLFxuICAgICAgdGlsZVNpemU6IDUxMixcbiAgICAgIHpvb21PZmZzZXQ6IC0xLFxuICAgICAgdXBkYXRlV2hlblpvb21pbmc6IGZhbHNlLFxuICAgICAgdXBkYXRlV2hlbklkbGU6IGZhbHNlLFxuICAgIH0sXG4gICk7XG59O1xuY29uc3QgYmFzZU1hcHMgPSAobWFwQm94U3R5bGUsIG1hcEJveFNhdGVsbGl0ZVN0eWxlKSA9PiB7XG4gIGxldCBkZWZhdWx0TWFwID0gaTE4bi50KCdtYXAubGF5ZXJzLmRlZmF1bHQnKTtcbiAgbGV0IHNhdGVsbGl0ZSA9IGkxOG4udCgnbWFwLmxheWVycy5zYXRlbGxpdGUnKTtcbiAgcmV0dXJuIHtcbiAgICBbZGVmYXVsdE1hcF06IG1hcFN0eWxlKG1hcEJveFN0eWxlKSxcbiAgICBbc2F0ZWxsaXRlXTogbWFwU3R5bGUobWFwQm94U2F0ZWxsaXRlU3R5bGUpLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGluaXRpYWxpemVNYXAgPSAoXG4gIG1hcFpvb21MZXZlbCxcbiAgbWFwQm94U3R5bGUsXG4gIG1hcEJveFNhdGVsbGl0ZVN0eWxlLFxuICBtYXBSZWYsXG4gIGRpc3BhdGNoLFxuICBpc1ZhbGlkQXJlYSxcbiAgYXJlYVRvQ2VudGVyQnksXG4gIHNldE1hcFpvb21MZXZlbCxcbikgPT4ge1xuICAvLyBAdHMtaWdub3JlXG4gIG1hcFJlZi5jdXJyZW50ID0gTC5tYXAoJ21hcCcsIHtcbiAgICBjZW50ZXI6IFswLCAwXSxcbiAgICB6b29tU25hcDogMSxcbiAgICB6b29tOiBtYXBab29tTGV2ZWwsXG4gICAgYXR0cmlidXRpb25Db250cm9sOiBmYWxzZSxcbiAgICBwcmVmZXJDYW52YXM6IHRydWUsXG4gICAgbGF5ZXJzOiBbbWFwU3R5bGUobWFwQm94U3R5bGUpLCBtYXBTdHlsZShtYXBCb3hTYXRlbGxpdGVTdHlsZSldLFxuICB9KTtcblxuICBtYXBSZWYuY3VycmVudC53aGVuUmVhZHkoKCkgPT4ge1xuICAgIGxldCBtYXAgPSBtYXBSZWYuY3VycmVudDtcbiAgICBMLmNvbnRyb2xcbiAgICAgIC5sYXllcnMoXG4gICAgICAgIGJhc2VNYXBzKG1hcEJveFN0eWxlLCBtYXBCb3hTYXRlbGxpdGVTdHlsZSksXG4gICAgICAgIHt9LFxuICAgICAgICB7IHBvc2l0aW9uOiAnYm90dG9tcmlnaHQnIH0sXG4gICAgICApXG4gICAgICAuYWRkVG8obWFwKTtcbiAgICBtYXBTdHlsZShtYXBCb3hTdHlsZSkuYWRkVG8obWFwKTtcbiAgICAvLyBTZXQgZGVmYXVsdCBtYXAgYm94IGNoZWNrZWRcbiAgICBjb25zdCByYWRpb01hcCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBcIlt0eXBlPSdyYWRpbyddLmxlYWZsZXQtY29udHJvbC1sYXllcnMtc2VsZWN0b3JcIixcbiAgICApO1xuICAgIGlmIChyYWRpb01hcCkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgcmFkaW9NYXAuY2hlY2tlZCA9IHRydWU7XG4gICAgfVxuICAgIG1hcC5vbignem9vbWVuZCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGljb25ab29tQ29udHJvbChtYXApO1xuICAgIH0pO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKCFtYXBSZWYuY3VycmVudCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIG1hcFJlZi5jdXJyZW50LmludmFsaWRhdGVTaXplKHRydWUpO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ2VycicsIGVycik7XG4gICAgICB9XG5cbiAgICAgIGRpc3BhdGNoKHN0b3JlTWFwKG1hcFJlZi5jdXJyZW50KSk7XG4gICAgICBkaXNwYXRjaChzaWRlTmF2RXhwYW5kZWQodHJ1ZSkpO1xuICAgIH0sIDApO1xuICAgIGlmIChtYXBSZWYuY3VycmVudCAmJiBpc1ZhbGlkQXJlYShhcmVhVG9DZW50ZXJCeSkpIHtcbiAgICAgIG1hcFJlZi5jdXJyZW50LmZpdEJvdW5kcyhhcmVhVG9DZW50ZXJCeSk7XG4gICAgfVxuICB9KTtcblxuICBtYXBSZWYuY3VycmVudC5vbignem9vbWVuZCcsIGZ1bmN0aW9uIChlKSB7XG4gICAgaWYgKCFtYXBSZWYuY3VycmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsZXQgem9vbSA9IG1hcFJlZi5jdXJyZW50LmdldFpvb20oKTtcbiAgICBzZXRNYXBab29tTGV2ZWwoem9vbSk7XG4gIH0pO1xufTtcbiJdfQ==
|
|
245
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGVhZmxldCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2FjdGlvbnMiLCJfaTE4biIsImFyZWFGb2N1c0xvZ2ljIiwibWFwUmVmIiwiaXNWYWxpZEFyZWEiLCJhcmVhVG9DZW50ZXJCeSIsIm1hcEluc3RhbmNlIiwiY3VycmVudCIsImZpdEJvdW5kcyIsInBhZGRpbmciLCJncm91cCIsInByb3BlcnR5IiwiX2xheWVycyIsImthbmRvX29iamVjdCIsInB1c2giLCJPYmplY3QiLCJrZXlzIiwiTCIsImZlYXR1cmVHcm91cCIsImdldEJvdW5kcyIsImxlbmd0aCIsImludmFsaWRhdGVTaXplIiwiZXhwb3J0cyIsImFyZWEiLCJzaG91bGRMb2FkTWFwT2JqZWN0cyIsImdsb2JhbF9kYXRhIiwicG9pbnRzIiwiZWRnZXMiLCJtYXAiLCJ1bmRlZmluZWQiLCJzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzIiwiYXJlYXMiLCJnbG9iYWwiLCJmaW5kU3BlY2lmaWNMYXllcnNGcm9tTWFwIiwibGF5ZXJzVG9GaW5kIiwiY3VycmVudExheWVyIiwiaW5jbHVkZXMiLCJrYW5kb19wb2ludF90eXBlIiwiZXZlbnRzQ291bnRlckljb25zIiwibGF5ZXIiLCJ6b29tTGV2ZWwiLCJpY29uIiwib3B0aW9ucyIsImljb25TaXplIiwiZXZlbnRzQ291bnRJY29uIiwiaWNvbkFuY2hvciIsInNldEljb24iLCJzZXRPcGFjaXR5IiwibXVsdGlwbGVMYXllcmVkSWNvbnMiLCJpc0FGZXdMYXllckljb24iLCJrYW5kb19mZXdfbGF5ZXJfaWNvbiIsIm1pbmlJY29uIiwicHJlc2VudCIsImthbmRvX3NlY29uZGFyeSIsImthbmRvX3RoaXJkIiwic2Vjb25kYXJ5IiwidGhpcmQiLCJrYW5kb19pbmRleF9vYmplY3QiLCJidWJibGVJY29uT3B0aW9ucyIsIm9uZUxheWVySWNvbk9wdGlvbnMiLCJtaWRkbGVJY29uT3B0aW9ucyIsInRvcEljb25PcHRpb25zIiwiaWNvblpvb21Db250cm9sIiwibGF5ZXJzIiwiX3pvb20iLCJtYXBTdHlsZSIsIm1hcEJveFN0eWxlIiwidGlsZUxheWVyIiwiY29uY2F0IiwiYXR0cmlidXRpb24iLCJtYXhab29tIiwiaWQiLCJ0aWxlU2l6ZSIsInpvb21PZmZzZXQiLCJ1cGRhdGVXaGVuWm9vbWluZyIsInVwZGF0ZVdoZW5JZGxlIiwiYmFzZU1hcHMiLCJtYXBCb3hTYXRlbGxpdGVTdHlsZSIsIl9yZWYiLCJkZWZhdWx0TWFwIiwiaTE4biIsInQiLCJzYXRlbGxpdGUiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGVmYXVsdCIsImluaXRpYWxpemVNYXAiLCJtYXBab29tTGV2ZWwiLCJkaXNwYXRjaCIsInNldE1hcFpvb21MZXZlbCIsImNlbnRlciIsInpvb21TbmFwIiwiem9vbSIsImF0dHJpYnV0aW9uQ29udHJvbCIsInByZWZlckNhbnZhcyIsIndoZW5SZWFkeSIsImNvbnRyb2wiLCJwb3NpdGlvbiIsImFkZFRvIiwicmFkaW9NYXAiLCJkb2N1bWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJjaGVja2VkIiwib24iLCJzZXRUaW1lb3V0IiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwic3RvcmVNYXAiLCJzaWRlTmF2RXhwYW5kZWQiLCJlIiwiZ2V0Wm9vbSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9NYXBVdGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTCwgeyBQb2ludFR1cGxlIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBzaWRlTmF2RXhwYW5kZWQsIHN0b3JlTWFwIH0gZnJvbSAnLi4vLi4vc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcblxuZXhwb3J0IGNvbnN0IGFyZWFGb2N1c0xvZ2ljID0gKG1hcFJlZiwgaXNWYWxpZEFyZWEsIGFyZWFUb0NlbnRlckJ5KSA9PiB7XG4gIGxldCBtYXBJbnN0YW5jZTogYW55ID0gbWFwUmVmLmN1cnJlbnQ7XG4gIGlmIChpc1ZhbGlkQXJlYShhcmVhVG9DZW50ZXJCeSkpIHtcbiAgICBtYXBJbnN0YW5jZS5maXRCb3VuZHMoYXJlYVRvQ2VudGVyQnksIHsgcGFkZGluZzogWzAsIDBdIH0pO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IGdyb3VwOiBhbnlbXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBtYXBJbnN0YW5jZS5fbGF5ZXJzKSB7XG4gICAgICBpZiAobWFwSW5zdGFuY2UuX2xheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0ID09PSAnQXJlYScpIHtcbiAgICAgICAgZ3JvdXAucHVzaChtYXBJbnN0YW5jZS5fbGF5ZXJzW3Byb3BlcnR5XSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKE9iamVjdC5rZXlzKEwuZmVhdHVyZUdyb3VwKGdyb3VwKS5nZXRCb3VuZHMoKSkubGVuZ3RoICE9PSAwKSB7XG4gICAgICBtYXBJbnN0YW5jZS5maXRCb3VuZHMoTC5mZWF0dXJlR3JvdXAoZ3JvdXApLmdldEJvdW5kcygpLCB7XG4gICAgICAgIHBhZGRpbmc6IFsxMDAsIDEwMF0sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbiAgbWFwSW5zdGFuY2UuaW52YWxpZGF0ZVNpemUodHJ1ZSk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNWYWxpZEFyZWEgPSAoYXJlYSkgPT4ge1xuICByZXR1cm4gYXJlYSAmJiBhcmVhLmxlbmd0aCA+IDAgJiYgT2JqZWN0LmtleXMoYXJlYVswXSkubGVuZ3RoID4gMDtcbn07XG5cbmV4cG9ydCBjb25zdCBzaG91bGRMb2FkTWFwT2JqZWN0cyA9IChnbG9iYWxfZGF0YSwgbWFwUmVmLCBwb2ludHMsIGVkZ2VzKSA9PiB7XG4gIHJldHVybiAoXG4gICAgZ2xvYmFsX2RhdGEubWFwICE9PSB1bmRlZmluZWQgJiZcbiAgICBtYXBSZWYuY3VycmVudCAhPT0gbnVsbCAmJlxuICAgIGVkZ2VzICE9PSB1bmRlZmluZWQgJiZcbiAgICBwb2ludHMgIT09IHVuZGVmaW5lZFxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IHNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMgPSAoZWRnZXMsIGFyZWFzLCBnbG9iYWwsIG1hcFJlZikgPT4ge1xuICByZXR1cm4gKFxuICAgIGdsb2JhbC5tYXAgIT09IHVuZGVmaW5lZCAmJlxuICAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmXG4gICAgZWRnZXMubGVuZ3RoICE9PSAwICYmXG4gICAgYXJlYXMubGVuZ3RoICE9PSAwXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgZmluZFNwZWNpZmljTGF5ZXJzRnJvbU1hcCA9IChcbiAgbGF5ZXJzVG9GaW5kOiBzdHJpbmdbXSxcbiAgY3VycmVudExheWVyLFxuKSA9PiB7XG4gIHJldHVybiAoXG4gICAgbGF5ZXJzVG9GaW5kLmluY2x1ZGVzKGN1cnJlbnRMYXllci5rYW5kb19vYmplY3QpICYmXG4gICAgY3VycmVudExheWVyLmthbmRvX3BvaW50X3R5cGUgIT09ICdNYW5ob2xlJ1xuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IGV2ZW50c0NvdW50ZXJJY29ucyA9IChsYXllciwgem9vbUxldmVsKSA9PiB7XG4gIGxldCBpY29uID0gbGF5ZXIub3B0aW9ucy5pY29uO1xuICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSBldmVudHNDb3VudEljb24oem9vbUxldmVsKS5pY29uU2l6ZTtcbiAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSBldmVudHNDb3VudEljb24oem9vbUxldmVsKS5pY29uQW5jaG9yO1xuICBsYXllci5zZXRJY29uKGljb24pO1xuICBsYXllci5zZXRPcGFjaXR5KDEpO1xufTtcblxuZXhwb3J0IGNvbnN0IG11bHRpcGxlTGF5ZXJlZEljb25zID0gKGxheWVyLCB6b29tTGV2ZWwpID0+IHtcbiAgbGV0IGljb24gPSBsYXllci5vcHRpb25zLmljb247XG4gIGxldCBpc0FGZXdMYXllckljb24gPSBsYXllci5rYW5kb19mZXdfbGF5ZXJfaWNvbjtcbiAgbGV0IG1pbmlJY29uID0ge1xuICAgIHByZXNlbnQ6IGxheWVyLmthbmRvX3NlY29uZGFyeSB8fCBsYXllci5rYW5kb190aGlyZCxcbiAgICBzZWNvbmRhcnk6IGxheWVyLmthbmRvX3NlY29uZGFyeSxcbiAgICB0aGlyZDogbGF5ZXIua2FuZG9fdGhpcmQsXG4gIH07XG5cbiAgaWYgKGxheWVyLmthbmRvX2luZGV4X29iamVjdCA9PT0gMCkge1xuICAgIGlmIChpc0FGZXdMYXllckljb24pIHtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uU2l6ZSA9IGJ1YmJsZUljb25PcHRpb25zKHpvb21MZXZlbCwgbWluaUljb24pLmljb25TaXplO1xuICAgICAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSBidWJibGVJY29uT3B0aW9ucyhcbiAgICAgICAgem9vbUxldmVsLFxuICAgICAgICBtaW5pSWNvbixcbiAgICAgICkuaWNvbkFuY2hvcjtcbiAgICB9IGVsc2Uge1xuICAgICAgaWNvbi5vcHRpb25zLmljb25TaXplID0gb25lTGF5ZXJJY29uT3B0aW9ucyh6b29tTGV2ZWwpLmljb25TaXplO1xuICAgICAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSBvbmVMYXllckljb25PcHRpb25zKHpvb21MZXZlbCkuaWNvbkFuY2hvcjtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgaWYgKGxheWVyLmthbmRvX2luZGV4X29iamVjdCA9PT0gMSkge1xuICAgICAgaWNvbi5vcHRpb25zLmljb25TaXplID0gbWlkZGxlSWNvbk9wdGlvbnMoem9vbUxldmVsLCBtaW5pSWNvbikuaWNvblNpemU7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IG1pZGRsZUljb25PcHRpb25zKFxuICAgICAgICB6b29tTGV2ZWwsXG4gICAgICAgIG1pbmlJY29uLFxuICAgICAgKS5pY29uQW5jaG9yO1xuICAgIH0gZWxzZSB7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSB0b3BJY29uT3B0aW9ucyh6b29tTGV2ZWwsIG1pbmlJY29uKS5pY29uU2l6ZTtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uQW5jaG9yID0gdG9wSWNvbk9wdGlvbnMoem9vbUxldmVsLCBtaW5pSWNvbikuaWNvbkFuY2hvcjtcbiAgICB9XG4gIH1cblxuICBsYXllci5zZXRJY29uKGljb24pO1xufTtcblxuY29uc3Qgb25lTGF5ZXJJY29uT3B0aW9ucyA9ICh6b29tTGV2ZWwpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBpY29uU2l6ZTogPFBvaW50VHVwbGU+W3pvb21MZXZlbCAqIDMuMywgem9vbUxldmVsICogMy4zXSxcbiAgICBpY29uQW5jaG9yOiA8UG9pbnRUdXBsZT5bem9vbUxldmVsICogMS43LCB6b29tTGV2ZWwgKiAzLjddLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGV2ZW50c0NvdW50SWNvbiA9ICh6b29tTGV2ZWwpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBpY29uU2l6ZTogPFBvaW50VHVwbGU+W3pvb21MZXZlbCAqIDIuNSwgem9vbUxldmVsICogMi41XSxcbiAgICBpY29uQW5jaG9yOiA8UG9pbnRUdXBsZT5bem9vbUxldmVsICogMCwgem9vbUxldmVsICogNF0sXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgYnViYmxlSWNvbk9wdGlvbnMgPSAoem9vbUxldmVsLCBtaW5pSWNvbikgPT4ge1xuICBpZiAobWluaUljb24ucHJlc2VudCkge1xuICAgIGlmIChtaW5pSWNvbi5zZWNvbmRhcnkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiA8UG9pbnRUdXBsZT5bem9vbUxldmVsICogMS45OCwgem9vbUxldmVsICogMi4zXSxcbiAgICAgICAgaWNvbkFuY2hvcjogPFBvaW50VHVwbGU+W3pvb21MZXZlbCAqIDAsIHpvb21MZXZlbCAqIDRdLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IDxQb2ludFR1cGxlPlt6b29tTGV2ZWwgKiAxLjk4LCB6b29tTGV2ZWwgKiAyLjNdLFxuICAgICAgICBpY29uQW5jaG9yOiA8UG9pbnRUdXBsZT5bem9vbUxldmVsICogMCwgem9vbUxldmVsICogMl0sXG4gICAgICB9O1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWNvblNpemU6IDxQb2ludFR1cGxlPlt6b29tTGV2ZWwgKiAzLjk4LCB6b29tTGV2ZWwgKiA0LjNdLFxuICAgICAgaWNvbkFuY2hvcjogPFBvaW50VHVwbGU+W3pvb21MZXZlbCAqIDIsIHpvb21MZXZlbCAqIDRdLFxuICAgIH07XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBtaWRkbGVJY29uT3B0aW9ucyA9ICh6b29tTGV2ZWwsIG1pbmlJY29uKSA9PiB7XG4gIGlmIChtaW5pSWNvbi5wcmVzZW50KSB7XG4gICAgaWYgKG1pbmlJY29uLnNlY29uZGFyeSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAxLjEsIHpvb21MZXZlbCAqIDEuMV0sXG4gICAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAtMC40NSwgem9vbUxldmVsICogMy41XSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMS4xLCB6b29tTGV2ZWwgKiAxLjFdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuNDUsIHpvb21MZXZlbCAqIDEuNV0sXG4gICAgICB9O1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAyLjUsIHpvb21MZXZlbCAqIDIuNV0sXG4gICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogMS4yOTUsIHpvb21MZXZlbCAqIDMuMzVdLFxuICAgIH07XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCB0b3BJY29uT3B0aW9ucyA9ICh6b29tTGV2ZWwsIG1pbmlJY29uKSA9PiB7XG4gIGlmIChtaW5pSWNvbi5wcmVzZW50KSB7XG4gICAgaWYgKG1pbmlJY29uLnNlY29uZGFyeSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAwLjksIHpvb21MZXZlbCAqIDEuOF0sXG4gICAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAtMC41LCB6b29tTGV2ZWwgKiAzLjhdLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAxLjYsIHpvb21MZXZlbCAqIDIuNV0sXG4gICAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAtMC4yLCB6b29tTGV2ZWwgKiAyLjFdLFxuICAgICAgfTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMy45LCB6b29tTGV2ZWwgKiAzLjhdLFxuICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDIsIHpvb21MZXZlbCAqIDMuOF0sXG4gICAgfTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGljb25ab29tQ29udHJvbCA9IChtYXApID0+IHtcbiAgbGV0IGxheWVycyA9IG1hcC5fbGF5ZXJzO1xuICBsZXQgem9vbUxldmVsID0gbWFwLl96b29tO1xuXG4gIGZvciAoY29uc3QgcHJvcGVydHkgaW4gbGF5ZXJzKSB7XG4gICAgaWYgKGZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAoWydJY29uTnVtYmVyJ10sIGxheWVyc1twcm9wZXJ0eV0pKSB7XG4gICAgICBldmVudHNDb3VudGVySWNvbnMobGF5ZXJzW3Byb3BlcnR5XSwgem9vbUxldmVsKTtcbiAgICB9XG5cbiAgICBpZiAoZmluZFNwZWNpZmljTGF5ZXJzRnJvbU1hcChbJ1BvaW50JywgJ0ljb24nXSwgbGF5ZXJzW3Byb3BlcnR5XSkpIHtcbiAgICAgIG11bHRpcGxlTGF5ZXJlZEljb25zKGxheWVyc1twcm9wZXJ0eV0sIHpvb21MZXZlbCk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgZmluZFNwZWNpZmljTGF5ZXJzRnJvbU1hcChbJ1NhbXBsaW5nJywgJ09ic2VydmF0aW9uJ10sIGxheWVyc1twcm9wZXJ0eV0pXG4gICAgKSB7XG4gICAgICBtdWx0aXBsZUxheWVyZWRJY29ucyhsYXllcnNbcHJvcGVydHldLCB6b29tTGV2ZWwpO1xuICAgIH1cbiAgfVxufTtcblxuY29uc3QgbWFwU3R5bGUgPSAobWFwQm94U3R5bGUpID0+IHtcbiAgcmV0dXJuIEwudGlsZUxheWVyKFxuICAgIGBodHRwczovL2FwaS5tYXBib3guY29tL3N0eWxlcy92MS9uYWRhdi1rYW5kby8ke21hcEJveFN0eWxlfS90aWxlcy8yNTYve3p9L3t4fS97eX1AMng/YWNjZXNzX3Rva2VuPXBrLmV5SjFJam9pYm1Ga1lYWXRhMkZ1Wkc4aUxDSmhJam9pWTJwdmVIcHJkR1J4TUhsbWRETjRiRGcwZHpKeE9YYzRkU0o5LkotMm9ocTdqNHlLTmJtNE5fLVA2cXdgLFxuICAgIHtcbiAgICAgIGF0dHJpYnV0aW9uOlxuICAgICAgICAnTWFwIGRhdGEgJmNvcHk7IDxhIGhyZWY9XCJodHRwczovL3d3dy5vcGVuc3RyZWV0bWFwLm9yZy9cIj5PcGVuU3RyZWV0TWFwPC9hPiBjb250cmlidXRvcnMsIDxhIGhyZWY9XCJodHRwczovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGljZW5zZXMvYnktc2EvMi4wL1wiPkNDLUJZLVNBPC9hPiwgSW1hZ2VyeSDCqSA8YSBocmVmPVwiaHR0cHM6Ly93d3cubWFwYm94LmNvbS9cIj5NYXBib3g8L2E+JyxcbiAgICAgIG1heFpvb206IDE4LFxuICAgICAgaWQ6ICdtYXBib3gvc3RyZWV0cy12MTEnLFxuICAgICAgdGlsZVNpemU6IDUxMixcbiAgICAgIHpvb21PZmZzZXQ6IC0xLFxuICAgICAgdXBkYXRlV2hlblpvb21pbmc6IGZhbHNlLFxuICAgICAgdXBkYXRlV2hlbklkbGU6IGZhbHNlLFxuICAgIH0sXG4gICk7XG59O1xuY29uc3QgYmFzZU1hcHMgPSAobWFwQm94U3R5bGUsIG1hcEJveFNhdGVsbGl0ZVN0eWxlKSA9PiB7XG4gIGxldCBkZWZhdWx0TWFwID0gaTE4bi50KCdtYXAubGF5ZXJzLmRlZmF1bHQnKTtcbiAgbGV0IHNhdGVsbGl0ZSA9IGkxOG4udCgnbWFwLmxheWVycy5zYXRlbGxpdGUnKTtcbiAgcmV0dXJuIHtcbiAgICBbZGVmYXVsdE1hcF06IG1hcFN0eWxlKG1hcEJveFN0eWxlKSxcbiAgICBbc2F0ZWxsaXRlXTogbWFwU3R5bGUobWFwQm94U2F0ZWxsaXRlU3R5bGUpLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGluaXRpYWxpemVNYXAgPSAoXG4gIG1hcFpvb21MZXZlbCxcbiAgbWFwQm94U3R5bGUsXG4gIG1hcEJveFNhdGVsbGl0ZVN0eWxlLFxuICBtYXBSZWYsXG4gIGRpc3BhdGNoLFxuICBpc1ZhbGlkQXJlYSxcbiAgYXJlYVRvQ2VudGVyQnksXG4gIHNldE1hcFpvb21MZXZlbCxcbikgPT4ge1xuICAvLyBAdHMtaWdub3JlXG4gIG1hcFJlZi5jdXJyZW50ID0gTC5tYXAoJ21hcCcsIHtcbiAgICBjZW50ZXI6IFswLCAwXSxcbiAgICB6b29tU25hcDogMSxcbiAgICB6b29tOiBtYXBab29tTGV2ZWwsXG4gICAgYXR0cmlidXRpb25Db250cm9sOiBmYWxzZSxcbiAgICBwcmVmZXJDYW52YXM6IHRydWUsXG4gICAgbGF5ZXJzOiBbbWFwU3R5bGUobWFwQm94U3R5bGUpLCBtYXBTdHlsZShtYXBCb3hTYXRlbGxpdGVTdHlsZSldLFxuICB9KTtcblxuICBtYXBSZWYuY3VycmVudC53aGVuUmVhZHkoKCkgPT4ge1xuICAgIGxldCBtYXAgPSBtYXBSZWYuY3VycmVudDtcbiAgICBMLmNvbnRyb2xcbiAgICAgIC5sYXllcnMoXG4gICAgICAgIGJhc2VNYXBzKG1hcEJveFN0eWxlLCBtYXBCb3hTYXRlbGxpdGVTdHlsZSksXG4gICAgICAgIHt9LFxuICAgICAgICB7IHBvc2l0aW9uOiAnYm90dG9tcmlnaHQnIH0sXG4gICAgICApXG4gICAgICAuYWRkVG8obWFwKTtcbiAgICBtYXBTdHlsZShtYXBCb3hTdHlsZSkuYWRkVG8obWFwKTtcbiAgICAvLyBTZXQgZGVmYXVsdCBtYXAgYm94IGNoZWNrZWRcbiAgICBjb25zdCByYWRpb01hcCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBcIlt0eXBlPSdyYWRpbyddLmxlYWZsZXQtY29udHJvbC1sYXllcnMtc2VsZWN0b3JcIixcbiAgICApO1xuICAgIGlmIChyYWRpb01hcCkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgcmFkaW9NYXAuY2hlY2tlZCA9IHRydWU7XG4gICAgfVxuICAgIG1hcC5vbignem9vbWVuZCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGljb25ab29tQ29udHJvbChtYXApO1xuICAgIH0pO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKCFtYXBSZWYuY3VycmVudCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIG1hcFJlZi5jdXJyZW50LmludmFsaWRhdGVTaXplKHRydWUpO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ2VycicsIGVycik7XG4gICAgICB9XG5cbiAgICAgIGRpc3BhdGNoKHN0b3JlTWFwKG1hcFJlZi5jdXJyZW50KSk7XG4gICAgICBkaXNwYXRjaChzaWRlTmF2RXhwYW5kZWQodHJ1ZSkpO1xuICAgIH0sIDApO1xuICAgIGlmIChtYXBSZWYuY3VycmVudCAmJiBpc1ZhbGlkQXJlYShhcmVhVG9DZW50ZXJCeSkpIHtcbiAgICAgIG1hcFJlZi5jdXJyZW50LmZpdEJvdW5kcyhhcmVhVG9DZW50ZXJCeSk7XG4gICAgfVxuICB9KTtcblxuICBtYXBSZWYuY3VycmVudC5vbignem9vbWVuZCcsIGZ1bmN0aW9uIChlKSB7XG4gICAgaWYgKCFtYXBSZWYuY3VycmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsZXQgem9vbSA9IG1hcFJlZi5jdXJyZW50LmdldFpvb20oKTtcbiAgICBzZXRNYXBab29tTGV2ZWwoem9vbSk7XG4gIH0pO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxRQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxRQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxLQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFFTyxJQUFNRyxjQUFjLEdBQUcsU0FBakJBLGNBQWNBLENBQUlDLE1BQU0sRUFBRUMsV0FBVyxFQUFFQyxjQUFjLEVBQUs7RUFDckUsSUFBSUMsV0FBZ0IsR0FBR0gsTUFBTSxDQUFDSSxPQUFPO0VBQ3JDLElBQUlILFdBQVcsQ0FBQ0MsY0FBYyxDQUFDLEVBQUU7SUFDL0JDLFdBQVcsQ0FBQ0UsU0FBUyxDQUFDSCxjQUFjLEVBQUU7TUFBRUksT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFBRSxDQUFDLENBQUM7RUFDNUQsQ0FBQyxNQUFNO0lBQ0wsSUFBTUMsS0FBWSxHQUFHLEVBQUU7SUFFdkIsS0FBSyxJQUFNQyxRQUFRLElBQUlMLFdBQVcsQ0FBQ00sT0FBTyxFQUFFO01BQzFDLElBQUlOLFdBQVcsQ0FBQ00sT0FBTyxDQUFDRCxRQUFRLENBQUMsQ0FBQ0UsWUFBWSxLQUFLLE1BQU0sRUFBRTtRQUN6REgsS0FBSyxDQUFDSSxJQUFJLENBQUNSLFdBQVcsQ0FBQ00sT0FBTyxDQUFDRCxRQUFRLENBQUMsQ0FBQztNQUMzQztJQUNGO0lBRUEsSUFBSUksTUFBTSxDQUFDQyxJQUFJLENBQUNDLGdCQUFDLENBQUNDLFlBQVksQ0FBQ1IsS0FBSyxDQUFDLENBQUNTLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQ0MsTUFBTSxLQUFLLENBQUMsRUFBRTtNQUMvRGQsV0FBVyxDQUFDRSxTQUFTLENBQUNTLGdCQUFDLENBQUNDLFlBQVksQ0FBQ1IsS0FBSyxDQUFDLENBQUNTLFNB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
|