@kando-env/kando-ui 1.2.228-alpha.29 → 1.2.228-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Router.js +106 -38
- package/lib/Widgets/EventsCarousel/EventsCarousel.js +46 -14
- package/lib/Widgets/EventsRow/EventsRow.js +46 -17
- package/lib/Widgets/Map/GraphUtils.js +5 -2
- package/lib/Widgets/Map/Map.js +88 -59
- package/lib/Widgets/Map/MapUtils.js +57 -6
- package/lib/Widgets/Map/areas/AreaPolygon.js +31 -9
- package/lib/Widgets/Map/areas/AreaPolygons.js +25 -10
- package/lib/Widgets/Map/edges/Edge.js +34 -11
- package/lib/Widgets/Map/edges/Edges.js +24 -13
- package/lib/Widgets/Map/edges/arrows/Arrows.js +24 -9
- package/lib/Widgets/Map/events/Event.js +27 -9
- package/lib/Widgets/Map/events/EventIndicator.js +46 -21
- package/lib/Widgets/Map/events/EventPath.js +24 -7
- package/lib/Widgets/Map/events/EventUtils.js +55 -5
- package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +23 -7
- package/lib/Widgets/Map/events/PointOfEvent.js +38 -7
- package/lib/Widgets/Map/events/PointsForSpecificEvent.js +17 -5
- package/lib/Widgets/Map/events/Snail.js +23 -9
- package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +58 -17
- package/lib/Widgets/Map/map/FloatingGraph.js +20 -4
- package/lib/Widgets/Map/map/GraphDateButton.js +10 -4
- package/lib/Widgets/Map/matchGraph/MatchGraph.js +11 -5
- package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +11 -5
- package/lib/Widgets/Map/points/PointIcon.js +23 -7
- package/lib/Widgets/Map/points/PointMarker.js +25 -15
- package/lib/Widgets/Map/points/PointMarkers.js +26 -18
- package/lib/Widgets/Map/points/PointUtils.js +95 -12
- package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +53 -17
- package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +23 -6
- package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +17 -3
- package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +6 -2
- package/lib/Widgets/MostPolluting/Areas/Areas.js +57 -21
- 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 +8 -2
- package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +12 -4
- package/lib/Widgets/MostPolluting/Factories/Factories.js +68 -32
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +22 -5
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +11 -2
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +18 -5
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +8 -4
- 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 +8 -2
- package/lib/Widgets/MostPolluting/MostPolluting.js +21 -6
- package/lib/Widgets/MostPolluting/MostPolluting.stories.js +18 -14
- package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +10 -3
- package/lib/Widgets/MostPolluting/ShowMore/styles.js +6 -2
- package/lib/Widgets/MostPolluting/assets/index.js +29 -18
- package/lib/Widgets/MostPolluting/components/ChangePercent.js +17 -2
- package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +27 -16
- package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +27 -5
- package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +34 -26
- package/lib/Widgets/MostPolluting/components/PotentialImpact.js +21 -5
- package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +44 -30
- package/lib/Widgets/MostPolluting/models.js +1 -1
- package/lib/Widgets/MostPolluting/styles.js +8 -2
- package/lib/Widgets/PotentialImpactSummary/Back/Back.js +10 -3
- package/lib/Widgets/PotentialImpactSummary/Icon.js +12 -2
- package/lib/Widgets/PotentialImpactSummary/index.js +31 -9
- package/lib/Widgets/PotentialImpactSummary/index.test.js +37 -18
- package/lib/Widgets/PotentialImpactSummary/styles.js +16 -3
- package/lib/Widgets/PotentialImpactSummary/useCasesResponse.interface.js +1 -1
- package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +11 -5
- package/lib/Widgets/QualitySummary/PieChart/PieChart.js +22 -8
- package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +30 -20
- package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +25 -16
- package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +25 -9
- package/lib/Widgets/QualitySummary/QualitySummary.js +25 -9
- package/lib/Widgets/QualitySummary/qualitySummary.mock.js +2 -2
- package/lib/Widgets/QualitySummary/qualitySummaryResponse.interface.js +1 -1
- package/lib/Widgets/QualitySummary/styles.js +16 -3
- package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +24 -11
- package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +38 -11
- package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +19 -10
- package/lib/Widgets/UtilityInformation/UtilityInformation.js +51 -26
- package/lib/Widgets/UtilityInformation/UtilityInformationResponse.interface.js +1 -1
- package/lib/Widgets/UtilityInformation/styles.js +26 -4
- package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +2 -2
- package/lib/assets/icons/index.js +8 -5
- package/lib/assets/icons/kandoStepper/index.js +14 -9
- package/lib/components/ApplyButton/ApplyButton.js +12 -6
- package/lib/components/ApplyButton/index.js +5 -2
- package/lib/components/Backdrop/Backdrop.js +9 -3
- package/lib/components/ContentLoader/ContentLoader.js +13 -8
- package/lib/components/ContentLoader/index.js +2 -1
- package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +15 -8
- package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +9 -3
- package/lib/components/CustomInputs/DoubleTabs/styles.js +11 -3
- package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +22 -7
- package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +6 -2
- package/lib/components/CustomInputs/Search/Search.js +42 -15
- package/lib/components/CustomInputs/Search/index.js +5 -2
- package/lib/components/CustomInputs/Select/Select.js +35 -15
- package/lib/components/CustomInputs/Select/Select.stories.js +9 -3
- package/lib/components/DamageType/DamageType.js +80 -39
- package/lib/components/DamageType/index.js +5 -2
- package/lib/components/DataLoaderError/DataLoaderError.js +11 -5
- package/lib/components/DischargeHeatmap/DischargeHeatmap.js +17 -7
- package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +38 -18
- package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +41 -14
- package/lib/components/DischargeHeatmap/HighchartsOptions.js +11 -7
- package/lib/components/DischargeHeatmap/index.js +5 -2
- package/lib/components/DischargeHeatmap/mocks/handlers.js +4 -3
- package/lib/components/DischargeHeatmap/popupText.js +17 -2
- package/lib/components/DischargeHeatmap/titles.js +9 -2
- package/lib/components/DischargeHeatmap/types.js +1 -1
- package/lib/components/ErrorBoundary.js +16 -4
- package/lib/components/Events/Events.js +34 -7
- package/lib/components/Events/index.js +5 -2
- package/lib/components/Graph/Graph.js +80 -35
- package/lib/components/Graph/index.js +5 -2
- package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +8 -2
- package/lib/components/Header/Breadcrumbs/index.js +5 -2
- package/lib/components/Header/DoubleTabs/DoubleTabs.js +34 -16
- package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +9 -3
- package/lib/components/Header/DoubleTabs/styles.js +11 -3
- package/lib/components/Header/Header.js +8 -2
- package/lib/components/Header/Header.stories.js +9 -3
- package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +12 -2
- package/lib/components/Header/InfoBar/InfoBar.js +34 -6
- package/lib/components/Header/InfoBar/Search/Control.js +14 -3
- package/lib/components/Header/InfoBar/Search/GroupLabel.js +13 -2
- package/lib/components/Header/InfoBar/Search/Search.js +30 -7
- package/lib/components/Header/InfoBar/Search/SearchContainer.js +25 -6
- package/lib/components/Header/InfoBar/Search/index.js +5 -2
- package/lib/components/Header/InfoBar/Search/searchStyle.js +5 -2
- package/lib/components/Header/KandoNavbar/KandoNavbar.js +95 -48
- package/lib/components/Header/KandoNavbar/index.js +5 -2
- package/lib/components/Header/Slideshow/Slideshow.js +71 -33
- package/lib/components/Header/Slideshow/index.js +5 -2
- package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +8 -2
- package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +16 -3
- package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +16 -2
- package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +25 -8
- package/lib/components/Header/Toolbar/Toolbar.js +89 -49
- package/lib/components/InfoBar/InfoBar.js +27 -10
- package/lib/components/InfoBar/InfoBar.stories.js +9 -3
- package/lib/components/KandoModal/KandoModal.js +46 -21
- package/lib/components/KandoModal/index.js +5 -2
- package/lib/components/Link.js +12 -3
- package/lib/components/Links/CustomRedirect/CustomRedirect.js +13 -4
- package/lib/components/Links/StyledLink/StyledLink.js +17 -7
- package/lib/components/Links/StyledNavLink/StyledNavLink.js +15 -5
- package/lib/components/LiveEvents/CarouselSlide.js +12 -6
- package/lib/components/LiveEvents/LiveEvents.js +11 -2
- package/lib/components/LiveEvents/index.js +5 -2
- package/lib/components/LoaderByPercent/LoaderByPercent.js +24 -14
- package/lib/components/Map/Map.js +30 -14
- package/lib/components/Map/index.js +5 -2
- package/lib/components/Modal/Modal.js +11 -4
- package/lib/components/NarrowHeader.js +13 -2
- package/lib/components/PointInfo/PointInfo.js +23 -11
- package/lib/components/PointInfo/index.js +5 -2
- package/lib/components/PopupModal/PopupModal.js +18 -7
- package/lib/components/PopupModal/PopupModal.stories.js +12 -3
- package/lib/components/Sector/Sector.js +14 -5
- package/lib/components/Sector/Sector.test.js +9 -4
- package/lib/components/Sector/index.js +5 -2
- package/lib/components/Sector/sectorIcons.js +28 -2
- package/lib/components/SevereEvent/Eta/Eta.js +43 -16
- package/lib/components/SevereEvent/Eta/styles.js +6 -2
- package/lib/components/SevereEvent/SevereEvent.js +40 -17
- package/lib/components/Spinner/Spinner.js +11 -6
- package/lib/components/Spinner/Spinner.stories.js +9 -3
- package/lib/components/Spinner/index.js +5 -2
- package/lib/components/Spinner/styles.js +10 -2
- package/lib/components/Tabs/Tabs.js +29 -7
- package/lib/components/Tabs/Tabs.stories.js +9 -3
- package/lib/components/Tabs/assets/index.js +6 -1
- package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +16 -4
- package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +47 -14
- package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +40 -14
- package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +5 -2
- package/lib/components/TimeRangeSelector/TimeRangeHelper.js +30 -10
- package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +10 -5
- package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +5 -2
- package/lib/components/TimeRangeSelector/TimeRangeList.js +17 -6
- package/lib/components/TimeRangeSelector/TimeRangeOptions.js +28 -13
- package/lib/components/TimeRangeSelector/TimeRangeSelector.js +40 -13
- package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +11 -3
- package/lib/components/TimeRangeSelector/constants.js +2 -2
- package/lib/components/TimeRangeSelector/index.js +5 -2
- package/lib/components/Toggle/Toggle.js +25 -9
- package/lib/components/Toggle/index.js +5 -2
- package/lib/components/TrendGraph/TrendGraph.js +54 -19
- package/lib/components/TrendGraph/index.js +5 -2
- package/lib/components/TrendGraphNVL/TrendGraphNVL.js +39 -12
- package/lib/components/TrendGraphNVL/index.js +5 -2
- package/lib/development-environment/index.js +14 -2
- package/lib/development-environment/mock/browser.js +9 -2
- package/lib/development-environment/mock/get.js +5 -1
- package/lib/development-environment/mock/handlers.js +26 -1
- package/lib/development-environment/mock/mockBus.js +7 -2
- 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 +26 -6
- package/lib/development-environment/togly/ToglyItem.js +29 -7
- package/lib/development-environment/togly/flags.js +1 -1
- package/lib/development-environment/togly/init.js +7 -2
- package/lib/development-environment/togly/macro.js +9 -7
- package/lib/development-environment/togly/useDoubleKeyDown.js +8 -1
- package/lib/development-environment/togly/useLocalStorage.js +20 -13
- package/lib/hooks/useApi.js +59 -38
- package/lib/hooks/useApiWithDashboardQuery.js +31 -11
- package/lib/hooks/useClickOutside.js +5 -1
- package/lib/hooks/useInitializeHeaders.js +8 -2
- package/lib/hooks/useKandoFetch.js +28 -14
- package/lib/hooks/useMap.js +38 -11
- package/lib/hooks/useNavContext.js +23 -14
- package/lib/hooks/useQueryURL.js +4 -1
- package/lib/hooks/useRemoveExistingLayers.js +7 -2
- package/lib/hooks/useUpdateEventBodyTail.js +10 -1
- package/lib/hooks/useUserTimeZone.js +9 -1
- package/lib/hooks/useUserTimeZone.test.js +13 -3
- package/lib/hooks/useWindowSize.js +20 -15
- package/lib/index.js +30 -14
- package/lib/macros/getVersion.js +3 -2
- package/lib/models/IAction.js +1 -1
- package/lib/models/IAppState.js +1 -1
- package/lib/pages/AreaPage/AreaPage.js +64 -31
- package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +20 -7
- package/lib/pages/AreaPage/Dashboard/Dashboard.js +27 -4
- package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +39 -13
- package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +9 -7
- package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +68 -30
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +11 -2
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +16 -4
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +8 -4
- 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 +11 -3
- package/lib/pages/AssessmentPage/AssessmentPage.js +34 -7
- package/lib/pages/CannyWidget/Feedback.js +29 -12
- package/lib/pages/CovidPage/CovidPage.js +18 -3
- package/lib/pages/CovidPage/components/Body.js +37 -11
- package/lib/pages/CovidPage/components/Map.js +42 -22
- package/lib/pages/CovidPage/components/Sidebar.js +22 -6
- package/lib/pages/CovidPage/components/Summary.js +33 -10
- package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +39 -12
- package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +5 -2
- package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +45 -15
- package/lib/pages/CovidPage/components/TrendPopupContent/index.js +5 -2
- package/lib/pages/CovidPage/components/areas/Area.js +37 -8
- package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +49 -6
- package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +22 -7
- package/lib/pages/CovidPage/components/areas/AreasList.js +37 -16
- package/lib/pages/CovidPage/components/areas/Sort.js +23 -7
- package/lib/pages/CovidPage/components/nvlStatusHelper.js +11 -2
- package/lib/pages/EventsPage/Body/Body.js +23 -4
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +32 -13
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +32 -12
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +12 -5
- package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +12 -4
- package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +11 -6
- package/lib/pages/EventsPage/DragAndDropArea/index.js +5 -2
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +37 -9
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +22 -3
- package/lib/pages/EventsPage/EventsPage.js +17 -3
- package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +37 -12
- package/lib/pages/EventsPage/events/MoreInfo.js +23 -3
- package/lib/pages/EventsPage/events/Sidebar.js +22 -7
- package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +33 -7
- package/lib/pages/EventsPage/events/event_info/EventDetails.js +33 -9
- package/lib/pages/EventsPage/events/event_info/EventInfo.js +45 -14
- package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +15 -3
- package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +44 -12
- package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +13 -2
- package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +34 -10
- package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +9 -2
- package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/LineChartYear/LineChartYear.js +31 -9
- package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/MockHistoryInformation.js +11 -3
- package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +25 -7
- package/lib/pages/EventsPage/events/event_info/charts/EventDetailsLineChart.js +27 -6
- package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +26 -6
- package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +37 -8
- package/lib/pages/EventsPage/events/event_info/samplings/Sampling.js +16 -4
- package/lib/pages/EventsPage/events/event_info/samplings/Samplings.js +11 -3
- package/lib/pages/EventsPage/events/event_info/sources/Source.js +32 -9
- package/lib/pages/EventsPage/events/event_info/sources/Sources.js +24 -6
- package/lib/pages/EventsPage/events/events_list/EventItem.js +28 -5
- package/lib/pages/EventsPage/events/events_list/EventUtils.js +14 -3
- package/lib/pages/EventsPage/events/events_list/EventsList.js +107 -41
- package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +36 -13
- package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +100 -33
- package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +59 -12
- package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +21 -7
- package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +42 -17
- package/lib/pages/EventsPage/events/events_list/Sort.js +27 -6
- package/lib/pages/ImportFileWizard/FileUploadRespones.js +20 -5
- package/lib/pages/ImportFileWizard/ImportButtomButtons.js +10 -4
- package/lib/pages/ImportFileWizard/ImportFile.js +33 -12
- package/lib/pages/ImportFileWizard/ResponseBody.js +13 -4
- package/lib/pages/ImportFileWizard/ValidationForm.js +28 -8
- package/lib/pages/ImportFileWizard/ValidationResponse.js +35 -9
- package/lib/pages/ImportFileWizard/importFileUtils.js +6 -5
- package/lib/pages/ImportFileWizard/index.js +5 -2
- package/lib/pages/ImportGisPage/ImportGisContainer.js +31 -9
- package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +28 -11
- package/lib/pages/ImportGisPage/importGisUtils.js +18 -6
- package/lib/pages/ImportGisProcess/index.js +19 -5
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +23 -7
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +11 -4
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +9 -2
- package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +62 -27
- package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +9 -3
- package/lib/pages/NotificationsPage/Notification/Notification.js +17 -9
- 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 +11 -3
- package/lib/pages/NotificationsPage/NotificationsPage.js +40 -14
- package/lib/pages/NotificationsPage/assets/index.js +24 -15
- package/lib/pages/NotificationsPageV2/NotificationsPage.js +87 -37
- package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +25 -5
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +44 -17
- package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +53 -20
- package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +48 -5
- package/lib/pages/NotificationsPageV2/notificationUtils.js +30 -3
- package/lib/pages/OldSitePage/IDashboardData.js +1 -1
- package/lib/pages/OldSitePage/OldSitePage.js +132 -65
- package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +17 -4
- package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +9 -3
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +10 -5
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +13 -6
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +13 -3
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +27 -9
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +21 -7
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +11 -5
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +13 -3
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +28 -11
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +13 -5
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +63 -30
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +2 -2
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +11 -13
- package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +22 -5
- package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +19 -4
- package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +17 -9
- package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +18 -3
- package/lib/pages/OldSitePage/SamplingParameters/models.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +11 -3
- package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +8 -3
- package/lib/pages/ProfilePage/Container.js +6 -2
- package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +47 -18
- package/lib/pages/ProfilePage/ProfilePage.js +92 -41
- package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +36 -11
- package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +18 -8
- package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +18 -5
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +111 -69
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +25 -6
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +16 -8
- package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +30 -9
- package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +26 -7
- package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +22 -10
- package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +14 -2
- package/lib/pages/SamplingsPage/DesktopActions/index.js +5 -2
- package/lib/pages/SamplingsPage/NavigationDropdown.js +22 -4
- package/lib/pages/SamplingsPage/NewSamplingAction.js +79 -29
- package/lib/pages/SamplingsPage/SamplingMobileModal.js +66 -13
- package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +20 -6
- package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +14 -3
- package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +60 -24
- package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +24 -6
- package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +15 -2
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +192 -113
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +46 -13
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +51 -16
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +53 -17
- package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +25 -7
- package/lib/pages/SamplingsPage/SamplingProperties/styles.js +9 -3
- package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +12 -2
- package/lib/pages/SamplingsPage/SamplingsMobileItem.js +40 -9
- package/lib/pages/SamplingsPage/SamplingsMobileList.js +38 -12
- package/lib/pages/SamplingsPage/SamplingsPage.js +43 -16
- package/lib/pages/SamplingsPage/SamplingsPageContainer.js +52 -16
- package/lib/pages/SamplingsPage/index.js +3 -1
- package/lib/pages/SamplingsPage/samplingsPageUtils.js +31 -8
- package/lib/pages/SitePage/DischargePattern/DischargePattern.js +11 -3
- package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +9 -3
- package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +18 -4
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +12 -7
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +24 -16
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +17 -8
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +28 -19
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +13 -3
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +30 -11
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +21 -7
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +11 -5
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +13 -3
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +28 -11
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +13 -5
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +72 -34
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +2 -2
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +11 -13
- package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +23 -6
- package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +19 -4
- package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +39 -18
- package/lib/pages/SitePage/SamplingParameters/dataParser.js +31 -15
- package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +7 -3
- package/lib/pages/SitePage/SamplingParameters/models.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +11 -3
- package/lib/pages/SitePage/SamplingParameters/styles/styles.js +9 -3
- package/lib/pages/SitePage/SiteInformation/ContributorItem.js +13 -6
- package/lib/pages/SitePage/SiteInformation/EmptyState.js +11 -2
- package/lib/pages/SitePage/SiteInformation/PollutionContributor.js +16 -6
- package/lib/pages/SitePage/SiteInformation/SiteInformation.js +52 -19
- package/lib/pages/SitePage/SiteInformation/style.js +9 -3
- package/lib/pages/SitePage/SitePage.js +79 -36
- package/lib/pages/UploadLabResult/index.js +9 -2
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +42 -12
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +10 -3
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +17 -3
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +9 -3
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +39 -11
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +6 -2
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +8 -2
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +11 -2
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +17 -8
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/models.js +1 -1
- package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +11 -2
- package/lib/pages/UtilityDashboardPage/TopBar/styles.js +6 -2
- package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +29 -5
- package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +20 -14
- package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +20 -7
- package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +24 -7
- package/lib/pages/WbeDashboard/ExpandableComponent.js +15 -3
- package/lib/pages/WbeDashboard/GraphWrapper.js +30 -7
- package/lib/pages/WbeDashboard/IndividualTinyGraph.js +23 -8
- package/lib/pages/WbeDashboard/SearchInput.js +26 -6
- package/lib/pages/WbeDashboard/SummaryGraph.js +69 -34
- package/lib/pages/WbeDashboard/SummaryGraphModal.js +14 -2
- package/lib/pages/WbeDashboard/Tabs.js +10 -4
- package/lib/pages/WbeDashboard/WbeDashboardPage.js +116 -27
- package/lib/pages/WbeDashboard/WbeSummaryBar.js +46 -10
- package/lib/providers/Slideshow/SlideshowContext.js +5 -3
- package/lib/providers/Slideshow/SlideshowProvider.js +35 -18
- package/lib/providers/Slideshow/SlideshowRunner.js +17 -7
- package/lib/providers/UrlHistory/UrlHistoryContext.js +8 -4
- package/lib/providers/UrlHistory/UrlHistoryProvider.js +16 -2
- package/lib/providers/UrlHistory/index.js +9 -6
- package/lib/providers/UrlHistory/useLastVisited.js +7 -1
- package/lib/react-app-env.d.js +1 -1
- package/lib/store/ImportGis/action.js +1 -1
- package/lib/store/ImportGis/actionTypes.js +6 -5
- package/lib/store/ImportGis/actionsCreator.js +17 -7
- package/lib/store/ImportGis/models/gisImports.js +1 -1
- package/lib/store/ImportGis/reducer.js +19 -3
- package/lib/store/WBE/actionTypes.js +1 -1
- package/lib/store/WBE/actions.js +3 -1
- 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 +10 -3
- package/lib/store/areas/actionTypes.js +2 -2
- package/lib/store/areas/actions.js +12 -3
- package/lib/store/areas/models/IArea.js +1 -1
- package/lib/store/areas/models/IAreasState.js +1 -1
- package/lib/store/areas/reducer.js +9 -1
- package/lib/store/context/actionTypes.js +2 -2
- package/lib/store/context/actions.js +6 -2
- package/lib/store/context/contextMiddlewares.js +9 -1
- package/lib/store/context/models/INavContext.js +1 -1
- package/lib/store/context/models/INavContextState.js +1 -1
- package/lib/store/context/reducer.js +10 -3
- package/lib/store/dashboard/dashboardSlice.js +3 -1
- package/lib/store/dashboard/periodType.js +1 -1
- package/lib/store/edges/actionTypes.js +2 -2
- package/lib/store/edges/actions.js +9 -3
- package/lib/store/edges/models/IEdge.js +1 -1
- package/lib/store/edges/models/IEdgesState.js +1 -1
- package/lib/store/edges/reducer.js +17 -3
- package/lib/store/events/actionTypes.js +2 -2
- package/lib/store/events/actions.js +28 -10
- 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 +42 -4
- 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 +20 -8
- package/lib/store/global/models/IGlobalState.js +1 -1
- package/lib/store/global/reducer.js +19 -3
- package/lib/store/permissions/permissionsSlice.js +6 -1
- package/lib/store/points/actionTypes.js +2 -2
- package/lib/store/points/actions.js +5 -1
- 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 +7 -1
- package/lib/store/rootActionTypes.js +1 -1
- package/lib/store/rootActions.js +3 -1
- package/lib/store/rootReducer.js +24 -5
- package/lib/store/rootStore.js +13 -5
- package/lib/store/samplings/action.js +1 -1
- package/lib/store/samplings/actionTypes.js +6 -5
- package/lib/store/samplings/actionsCreator.js +5 -2
- package/lib/store/samplings/models/Samplings.js +1 -1
- package/lib/store/samplings/reducer.js +10 -2
- package/lib/styles/StylesLayout.js +8 -2
- package/lib/styles/theme/theme.js +4 -2
- package/lib/test/mocks/browser.js +8 -4
- package/lib/test/test-utils.js +22 -12
- package/lib/ui-kit/Button/Button.js +24 -16
- package/lib/ui-kit/Button/Button.test.js +30 -8
- package/lib/ui-kit/Button/ButtonUtils.js +1 -1
- package/lib/ui-kit/Checkbox/Checkbox.js +22 -8
- package/lib/ui-kit/DropDown/DropDown.js +17 -6
- package/lib/ui-kit/DropDown/DropDown.test.js +13 -7
- package/lib/ui-kit/DropDown/DropDownItem.js +14 -6
- package/lib/ui-kit/DropDown/DropdownToggle.js +14 -3
- package/lib/ui-kit/IconAction/IconAction.js +10 -4
- package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +54 -19
- package/lib/ui-kit/InfoTooltip/InfoTooltip.js +28 -17
- package/lib/ui-kit/KandoList/KandoList.js +19 -6
- package/lib/ui-kit/KandoList/kandoListUtils.js +1 -1
- package/lib/ui-kit/KandoTable/KandoTable.js +39 -23
- package/lib/ui-kit/KandoTable/KandoTable.test.js +17 -2
- package/lib/ui-kit/KandoTable/kandoTableUtils.js +1 -1
- package/lib/ui-kit/Layout/Layout.js +9 -2
- package/lib/ui-kit/MobileInput/MobileInput.js +34 -19
- package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +15 -9
- package/lib/ui-kit/ModalConfirmation/index.js +3 -1
- package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +11 -6
- package/lib/ui-kit/SamplingStatus/SamplingStatus.js +12 -4
- package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +11 -4
- package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +15 -6
- package/lib/ui-kit/Tooltip/Tooltip.js +9 -4
- package/lib/ui-kit/index.js +15 -1
- package/lib/ui-kit/kandoStepper/KandoStepper.js +8 -3
- package/lib/utilities/ActionUtility.js +2 -1
- package/lib/utilities/Alert.js +11 -3
- package/lib/utilities/Analytics.js +13 -2
- package/lib/utilities/Array.js +6 -2
- package/lib/utilities/Enum.js +39 -22
- package/lib/utilities/ErrorBoundary.js +19 -4
- package/lib/utilities/File.js +66 -43
- package/lib/utilities/GetDir.js +9 -5
- package/lib/utilities/KandoDate.js +8 -2
- package/lib/utilities/KandoModal.js +26 -9
- package/lib/utilities/LocalStorage.js +13 -2
- package/lib/utilities/ThousandsToK.js +3 -1
- package/lib/utilities/TimeFormat.js +23 -8
- package/lib/utilities/Truncate.js +31 -9
- package/lib/utilities/edgesMath.js +28 -9
- package/lib/utilities/i18n.js +15 -2
- package/lib/utilities/kql.js +10 -3
- package/lib/utilities/map/icons.js +19 -2
- package/lib/utilities/scoreToColor.js +8 -1
- package/lib/utilities/time.js +10 -3
- package/lib/utilities/uploadToS3.js +10 -2
- package/lib/utilities/urls.js +13 -5
- package/package.json +2 -4
|
@@ -1,33 +1,53 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
5
7
|
Object.defineProperty(exports, "__esModule", {
|
|
6
8
|
value: true
|
|
7
9
|
});
|
|
8
10
|
exports.default = void 0;
|
|
11
|
+
|
|
9
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
13
|
+
|
|
10
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
|
|
11
16
|
var _i18n = _interopRequireDefault(require("utilities/i18n"));
|
|
17
|
+
|
|
12
18
|
var _GroupLabel = _interopRequireDefault(require("./GroupLabel"));
|
|
19
|
+
|
|
13
20
|
var _searchStyle = _interopRequireDefault(require("./searchStyle"));
|
|
21
|
+
|
|
14
22
|
require("./styles.scss");
|
|
23
|
+
|
|
15
24
|
var _reactSelect = _interopRequireDefault(require("react-select"));
|
|
25
|
+
|
|
16
26
|
var _Control = _interopRequireDefault(require("./Control"));
|
|
27
|
+
|
|
28
|
+
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); }
|
|
29
|
+
|
|
30
|
+
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; }
|
|
31
|
+
|
|
17
32
|
var formatGroupLabel = function formatGroupLabel(data) {
|
|
18
33
|
return /*#__PURE__*/_react.default.createElement(_GroupLabel.default, {
|
|
19
34
|
name: data.label
|
|
20
35
|
});
|
|
21
36
|
};
|
|
37
|
+
|
|
22
38
|
var Search = function Search(_ref) {
|
|
23
39
|
var onChange = _ref.onChange,
|
|
24
|
-
|
|
40
|
+
options = _ref.options;
|
|
41
|
+
|
|
25
42
|
var _useState = (0, _react.useState)(false),
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
43
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
44
|
+
showClearIcon = _useState2[0],
|
|
45
|
+
setShowClearIcon = _useState2[1];
|
|
46
|
+
|
|
29
47
|
var placeholder = "".concat(_i18n.default.t('header.search.placeholder'));
|
|
48
|
+
|
|
30
49
|
var _noOptionsMessage = "".concat(_i18n.default.t('header.search.empty'));
|
|
50
|
+
|
|
31
51
|
var onInputChange = function onInputChange(newInput) {
|
|
32
52
|
if (!newInput) {
|
|
33
53
|
setShowClearIcon(false);
|
|
@@ -35,6 +55,7 @@ var Search = function Search(_ref) {
|
|
|
35
55
|
setShowClearIcon(true);
|
|
36
56
|
}
|
|
37
57
|
};
|
|
58
|
+
|
|
38
59
|
return /*#__PURE__*/_react.default.createElement(_reactSelect.default, {
|
|
39
60
|
placeholder: placeholder,
|
|
40
61
|
value: null,
|
|
@@ -54,6 +75,8 @@ var Search = function Search(_ref) {
|
|
|
54
75
|
options: options
|
|
55
76
|
});
|
|
56
77
|
};
|
|
78
|
+
|
|
57
79
|
var _default = /*#__PURE__*/_react.default.memo(Search);
|
|
80
|
+
|
|
58
81
|
exports.default = _default;
|
|
59
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hlYWRlci9JbmZvQmFyL1NlYXJjaC9TZWFyY2gudHN4Il0sIm5hbWVzIjpbImZvcm1hdEdyb3VwTGFiZWwiLCJkYXRhIiwibGFiZWwiLCJTZWFyY2giLCJvbkNoYW5nZSIsIm9wdGlvbnMiLCJzaG93Q2xlYXJJY29uIiwic2V0U2hvd0NsZWFySWNvbiIsInBsYWNlaG9sZGVyIiwiaTE4biIsInQiLCJub09wdGlvbnNNZXNzYWdlIiwib25JbnB1dENoYW5nZSIsIm5ld0lucHV0IiwibGVuZ3RoIiwiQ29udHJvbCIsInNlYXJjaFN0eWxlIiwiUmVhY3QiLCJtZW1vIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBLElBQU1BLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBbUIsQ0FBQ0MsSUFBRCxFQUFVO0FBQ2pDLHNCQUFPLDZCQUFDLG1CQUFEO0FBQVksSUFBQSxJQUFJLEVBQUVBLElBQUksQ0FBQ0M7QUFBdkIsSUFBUDtBQUNELENBRkQ7O0FBSUEsSUFBTUMsTUFBTSxHQUFHLFNBQVRBLE1BQVMsT0FBMkI7QUFBQSxNQUF4QkMsUUFBd0IsUUFBeEJBLFFBQXdCO0FBQUEsTUFBZEMsT0FBYyxRQUFkQSxPQUFjOztBQUN4QyxrQkFBMEMscUJBQVMsS0FBVCxDQUExQztBQUFBO0FBQUEsTUFBT0MsYUFBUDtBQUFBLE1BQXNCQyxnQkFBdEI7O0FBQ0EsTUFBTUMsV0FBVyxhQUFNQyxjQUFLQyxDQUFMLENBQU8sMkJBQVAsQ0FBTixDQUFqQjs7QUFDQSxNQUFNQyxpQkFBZ0IsYUFBTUYsY0FBS0MsQ0FBTCxDQUFPLHFCQUFQLENBQU4sQ0FBdEI7O0FBRUEsTUFBTUUsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQixDQUFDQyxRQUFELEVBQWM7QUFDbEMsUUFBSSxDQUFDQSxRQUFMLEVBQWU7QUFDYk4sTUFBQUEsZ0JBQWdCLENBQUMsS0FBRCxDQUFoQjtBQUNELEtBRkQsTUFFTyxJQUFJTSxRQUFRLENBQUNDLE1BQVQsS0FBb0IsQ0FBeEIsRUFBMkI7QUFDaENQLE1BQUFBLGdCQUFnQixDQUFDLElBQUQsQ0FBaEI7QUFDRDtBQUNGLEdBTkQ7O0FBUUEsc0JBQ0UsNkJBQUMsb0JBQUQ7QUFDRSxJQUFBLFdBQVcsRUFBRUMsV0FEZjtBQUVFLElBQUEsS0FBSyxFQUFFLElBRlQ7QUFHRSxJQUFBLFVBQVUsRUFBRTtBQUFFTyxNQUFBQSxPQUFPLEVBQVBBO0FBQUYsS0FIZDtBQUlFLElBQUEsYUFBYSxFQUFFVCxhQUpqQjtBQUtFLElBQUEsZ0JBQWdCLEVBQUVOLGdCQUxwQjtBQU1FLElBQUEsYUFBYSxFQUFFWSxhQU5qQjtBQU9FLElBQUEsTUFBTSxFQUFFSSxvQkFQVjtBQVFFLElBQUEsWUFBWSxFQUFFLElBUmhCO0FBU0UsSUFBQSxlQUFlLEVBQUUsa0JBVG5CO0FBVUUsSUFBQSxnQkFBZ0IsRUFBRTtBQUFBLGFBQU1MLGlCQUFOO0FBQUEsS0FWcEI7QUFXRSxJQUFBLFFBQVEsRUFBRVAsUUFYWjtBQVlFLElBQUEsT0FBTyxFQUFFQztBQVpYLElBREY7QUFnQkQsQ0E3QkQ7OzRCQStCZVksZUFBTUMsSUFBTixDQUFXZixNQUFYLEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IEdyb3VwTGFiZWwgZnJvbSAnLi9Hcm91cExhYmVsJztcbmltcG9ydCBzZWFyY2hTdHlsZSBmcm9tICcuL3NlYXJjaFN0eWxlJztcbmltcG9ydCAnLi9zdHlsZXMuc2Nzcyc7XG5pbXBvcnQgU2VsZWN0IGZyb20gJ3JlYWN0LXNlbGVjdCc7XG5pbXBvcnQgQ29udHJvbCBmcm9tICcuL0NvbnRyb2wnO1xuXG5jb25zdCBmb3JtYXRHcm91cExhYmVsID0gKGRhdGEpID0+IHtcbiAgcmV0dXJuIDxHcm91cExhYmVsIG5hbWU9e2RhdGEubGFiZWx9IC8+O1xufTtcblxuY29uc3QgU2VhcmNoID0gKHsgb25DaGFuZ2UsIG9wdGlvbnMgfSkgPT4ge1xuICBjb25zdCBbc2hvd0NsZWFySWNvbiwgc2V0U2hvd0NsZWFySWNvbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IHBsYWNlaG9sZGVyID0gYCR7aTE4bi50KCdoZWFkZXIuc2VhcmNoLnBsYWNlaG9sZGVyJyl9YDtcbiAgY29uc3Qgbm9PcHRpb25zTWVzc2FnZSA9IGAke2kxOG4udCgnaGVhZGVyLnNlYXJjaC5lbXB0eScpfWA7XG5cbiAgY29uc3Qgb25JbnB1dENoYW5nZSA9IChuZXdJbnB1dCkgPT4ge1xuICAgIGlmICghbmV3SW5wdXQpIHtcbiAgICAgIHNldFNob3dDbGVhckljb24oZmFsc2UpO1xuICAgIH0gZWxzZSBpZiAobmV3SW5wdXQubGVuZ3RoID09PSAxKSB7XG4gICAgICBzZXRTaG93Q2xlYXJJY29uKHRydWUpO1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxTZWxlY3RcbiAgICAgIHBsYWNlaG9sZGVyPXtwbGFjZWhvbGRlcn1cbiAgICAgIHZhbHVlPXtudWxsfVxuICAgICAgY29tcG9uZW50cz17eyBDb250cm9sIH19XG4gICAgICBzaG93Q2xlYXJJY29uPXtzaG93Q2xlYXJJY29ufVxuICAgICAgZm9ybWF0R3JvdXBMYWJlbD17Zm9ybWF0R3JvdXBMYWJlbH1cbiAgICAgIG9uSW5wdXRDaGFuZ2U9e29uSW5wdXRDaGFuZ2V9XG4gICAgICBzdHlsZXM9e3NlYXJjaFN0eWxlfVxuICAgICAgaXNTZWFyY2hhYmxlPXt0cnVlfVxuICAgICAgY2xhc3NOYW1lUHJlZml4PXsnZGFzaGJvYXJkLXNlbGVjdCd9XG4gICAgICBub09wdGlvbnNNZXNzYWdlPXsoKSA9PiBub09wdGlvbnNNZXNzYWdlfVxuICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgb3B0aW9ucz17b3B0aW9uc31cbiAgICAvPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgUmVhY3QubWVtbyhTZWFyY2gpO1xuIl19
|
|
@@ -1,16 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
5
7
|
Object.defineProperty(exports, "__esModule", {
|
|
6
8
|
value: true
|
|
7
9
|
});
|
|
8
10
|
exports.default = void 0;
|
|
11
|
+
|
|
9
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
13
|
+
|
|
10
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
|
|
11
16
|
var _reactRedux = require("react-redux");
|
|
17
|
+
|
|
12
18
|
var _reactRouterDom = require("react-router-dom");
|
|
19
|
+
|
|
13
20
|
var _Search = _interopRequireDefault(require("./Search"));
|
|
21
|
+
|
|
22
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
|
+
|
|
24
|
+
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; }
|
|
25
|
+
|
|
14
26
|
var fetchData = function fetchData(url, setData) {
|
|
15
27
|
fetch(url).then(function (response) {
|
|
16
28
|
return response.json();
|
|
@@ -18,11 +30,13 @@ var fetchData = function fetchData(url, setData) {
|
|
|
18
30
|
return setData(result);
|
|
19
31
|
});
|
|
20
32
|
};
|
|
33
|
+
|
|
21
34
|
var SearchContainer = function SearchContainer() {
|
|
22
35
|
var _useState = (0, _react.useState)(null),
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
36
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
37
|
+
data = _useState2[0],
|
|
38
|
+
setData = _useState2[1];
|
|
39
|
+
|
|
26
40
|
var history = (0, _reactRouterDom.useHistory)();
|
|
27
41
|
var navContext = (0, _reactRedux.useSelector)(function (state) {
|
|
28
42
|
return state.nav_context_data.navContext;
|
|
@@ -30,13 +44,16 @@ var SearchContainer = function SearchContainer() {
|
|
|
30
44
|
var waterAuthorityId = (0, _reactRedux.useSelector)(function (state) {
|
|
31
45
|
return state.global_data.waterAuthorityId;
|
|
32
46
|
});
|
|
47
|
+
|
|
33
48
|
var handleChange = function handleChange(selected) {
|
|
34
49
|
if (!selected) {
|
|
35
50
|
return;
|
|
36
51
|
}
|
|
52
|
+
|
|
37
53
|
var subRoute = selected.is_area ? 'area' : 'site';
|
|
38
54
|
history.push("/".concat(navContext.name, "/").concat(subRoute, "/").concat(selected.id, "?water_authority_id=").concat(waterAuthorityId, "&locale=").concat(navContext.locale));
|
|
39
55
|
};
|
|
56
|
+
|
|
40
57
|
(0, _react.useEffect)(function () {
|
|
41
58
|
fetchData("/data/search?water_authority_id=".concat(waterAuthorityId), setData);
|
|
42
59
|
}, [waterAuthorityId]);
|
|
@@ -45,6 +62,8 @@ var SearchContainer = function SearchContainer() {
|
|
|
45
62
|
options: data
|
|
46
63
|
}));
|
|
47
64
|
};
|
|
65
|
+
|
|
48
66
|
var _default = /*#__PURE__*/_react.default.memo(SearchContainer);
|
|
67
|
+
|
|
49
68
|
exports.default = _default;
|
|
50
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
69
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hlYWRlci9JbmZvQmFyL1NlYXJjaC9TZWFyY2hDb250YWluZXIudHN4Il0sIm5hbWVzIjpbImZldGNoRGF0YSIsInVybCIsInNldERhdGEiLCJmZXRjaCIsInRoZW4iLCJyZXNwb25zZSIsImpzb24iLCJyZXN1bHQiLCJTZWFyY2hDb250YWluZXIiLCJkYXRhIiwiaGlzdG9yeSIsIm5hdkNvbnRleHQiLCJzdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJ3YXRlckF1dGhvcml0eUlkIiwiZ2xvYmFsX2RhdGEiLCJoYW5kbGVDaGFuZ2UiLCJzZWxlY3RlZCIsInN1YlJvdXRlIiwiaXNfYXJlYSIsInB1c2giLCJuYW1lIiwiaWQiLCJsb2NhbGUiLCJSZWFjdCIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFHQTs7Ozs7O0FBRUEsSUFBTUEsU0FBUyxHQUFHLFNBQVpBLFNBQVksQ0FBQ0MsR0FBRCxFQUFjQyxPQUFkLEVBQW9DO0FBQ3BEQyxFQUFBQSxLQUFLLENBQUNGLEdBQUQsQ0FBTCxDQUNHRyxJQURILENBQ1EsVUFBQ0MsUUFBRDtBQUFBLFdBQWNBLFFBQVEsQ0FBQ0MsSUFBVCxFQUFkO0FBQUEsR0FEUixFQUVHRixJQUZILENBRVEsVUFBQ0csTUFBRDtBQUFBLFdBQVlMLE9BQU8sQ0FBQ0ssTUFBRCxDQUFuQjtBQUFBLEdBRlI7QUFHRCxDQUpEOztBQU1BLElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0IsR0FBTTtBQUM1QixrQkFBd0IscUJBQWMsSUFBZCxDQUF4QjtBQUFBO0FBQUEsTUFBT0MsSUFBUDtBQUFBLE1BQWFQLE9BQWI7O0FBQ0EsTUFBTVEsT0FBTyxHQUFHLGlDQUFoQjtBQUNBLE1BQU1DLFVBQVUsR0FBRyw2QkFDakIsVUFBQ0MsS0FBRDtBQUFBLFdBQTBDQSxLQUFLLENBQUNDLGdCQUFOLENBQXVCRixVQUFqRTtBQUFBLEdBRGlCLENBQW5CO0FBSUEsTUFBTUcsZ0JBQWdCLEdBQUcsNkJBQ3ZCLFVBQUNGLEtBQUQ7QUFBQSxXQUFXQSxLQUFLLENBQUNHLFdBQU4sQ0FBa0JELGdCQUE3QjtBQUFBLEdBRHVCLENBQXpCOztBQUlBLE1BQU1FLFlBQVksR0FBRyxTQUFmQSxZQUFlLENBQUNDLFFBQUQsRUFBbUI7QUFDdEMsUUFBSSxDQUFDQSxRQUFMLEVBQWU7QUFDYjtBQUNEOztBQUVELFFBQU1DLFFBQVEsR0FBR0QsUUFBUSxDQUFDRSxPQUFULEdBQW1CLE1BQW5CLEdBQTRCLE1BQTdDO0FBQ0FULElBQUFBLE9BQU8sQ0FBQ1UsSUFBUixZQUNNVCxVQUFVLENBQUNVLElBRGpCLGNBQ3lCSCxRQUR6QixjQUNxQ0QsUUFBUSxDQUFDSyxFQUQ5QyxpQ0FDdUVSLGdCQUR2RSxxQkFDa0dILFVBQVUsQ0FBQ1ksTUFEN0c7QUFHRCxHQVREOztBQVdBLHdCQUFVLFlBQU07QUFDZHZCLElBQUFBLFNBQVMsMkNBQW9DYyxnQkFBcEMsR0FBd0RaLE9BQXhELENBQVQ7QUFDRCxHQUZELEVBRUcsQ0FBQ1ksZ0JBQUQsQ0FGSDtBQUlBLHNCQUFPLDREQUFHTCxJQUFJLGlCQUFJLDZCQUFDLGVBQUQ7QUFBUSxJQUFBLFFBQVEsRUFBRU8sWUFBbEI7QUFBZ0MsSUFBQSxPQUFPLEVBQUVQO0FBQXpDLElBQVgsQ0FBUDtBQUNELENBM0JEOzs0QkE2QmVlLGVBQU1DLElBQU4sQ0FBV2pCLGVBQVgsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5IH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5cbmltcG9ydCB7IGFwcFJlZHVjZXIgfSBmcm9tICdzcmMvc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IFNlYXJjaCBmcm9tICcuL1NlYXJjaCc7XG5cbmNvbnN0IGZldGNoRGF0YSA9ICh1cmw6IHN0cmluZywgc2V0RGF0YTogRnVuY3Rpb24pID0+IHtcbiAgZmV0Y2godXJsKVxuICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuanNvbigpKVxuICAgIC50aGVuKChyZXN1bHQpID0+IHNldERhdGEocmVzdWx0KSk7XG59O1xuXG5jb25zdCBTZWFyY2hDb250YWluZXIgPSAoKSA9PiB7XG4gIGNvbnN0IFtkYXRhLCBzZXREYXRhXSA9IHVzZVN0YXRlPGFueT4obnVsbCk7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IG5hdkNvbnRleHQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5uYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQsXG4gICk7XG5cbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlJZCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgKTtcblxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAoc2VsZWN0ZWQ6IGFueSkgPT4ge1xuICAgIGlmICghc2VsZWN0ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzdWJSb3V0ZSA9IHNlbGVjdGVkLmlzX2FyZWEgPyAnYXJlYScgOiAnc2l0ZSc7XG4gICAgaGlzdG9yeS5wdXNoKFxuICAgICAgYC8ke25hdkNvbnRleHQubmFtZX0vJHtzdWJSb3V0ZX0vJHtzZWxlY3RlZC5pZH0/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7d2F0ZXJBdXRob3JpdHlJZH0mbG9jYWxlPSR7bmF2Q29udGV4dC5sb2NhbGV9YCxcbiAgICApO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZmV0Y2hEYXRhKGAvZGF0YS9zZWFyY2g/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7d2F0ZXJBdXRob3JpdHlJZH1gLCBzZXREYXRhKTtcbiAgfSwgW3dhdGVyQXV0aG9yaXR5SWRdKTtcblxuICByZXR1cm4gPD57ZGF0YSAmJiA8U2VhcmNoIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9IG9wdGlvbnM9e2RhdGF9IC8+fTwvPjtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFJlYWN0Lm1lbW8oU2VhcmNoQ29udGFpbmVyKTtcbiJdfQ==
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _SearchContainer = _interopRequireDefault(require("./SearchContainer"));
|
|
11
|
+
|
|
9
12
|
var _default = _SearchContainer.default;
|
|
10
13
|
exports.default = _default;
|
|
11
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hlYWRlci9JbmZvQmFyL1NlYXJjaC9pbmRleC50cyJdLCJuYW1lcyI6WyJTZWFyY2giXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOztlQUVlQSx3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTZWFyY2ggZnJvbSAnLi9TZWFyY2hDb250YWluZXInO1xuXG5leHBvcnQgZGVmYXVsdCBTZWFyY2g7XG4iXX0=
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
11
|
+
|
|
9
12
|
var searchStyle = {
|
|
10
13
|
container: function container(css) {
|
|
11
14
|
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, css), {}, {
|
|
@@ -62,4 +65,4 @@ var searchStyle = {
|
|
|
62
65
|
};
|
|
63
66
|
var _default = searchStyle;
|
|
64
67
|
exports.default = _default;
|
|
65
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hlYWRlci9JbmZvQmFyL1NlYXJjaC9zZWFyY2hTdHlsZS50cyJdLCJuYW1lcyI6WyJzZWFyY2hTdHlsZSIsImNvbnRhaW5lciIsImNzcyIsIndpZHRoIiwiY29udHJvbCIsInBhZGRpbmdJbmxpbmVTdGFydCIsInBhZGRpbmdJbmxpbmVFbmQiLCJib3hTaGFkb3ciLCJib3JkZXIiLCJib3hTaXppbmciLCJpbmRpY2F0b3JzQ29udGFpbmVyIiwiZGlzcGxheSIsImdyb3VwSGVhZGluZyIsInRleHRUcmFuc2Zvcm0iLCJtYXJnaW5Cb3R0b20iLCJoZWlnaHQiLCJmb250U2l6ZSIsImZvbnRXZWlnaHQiLCJncm91cCIsInBhZGRpbmciLCJtYXJnaW5Ub3AiLCJtZW51IiwiekluZGV4Iiwib3B0aW9uIiwibGluZUhlaWdodCIsIm1hcmdpbklubGluZVN0YXJ0IiwibWFyZ2luSW5saW5lRW5kIiwiYmFja2dyb3VuZENvbG9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQU1BLFdBQVcsR0FBRztBQUNsQkMsRUFBQUEsU0FBUyxFQUFFLG1CQUFDQyxHQUFEO0FBQUEsdUVBQWVBLEdBQWY7QUFBb0JDLE1BQUFBLEtBQUssRUFBRTtBQUEzQjtBQUFBLEdBRE87QUFFbEJDLEVBQUFBLE9BQU8sRUFBRSxpQkFBQ0YsR0FBRDtBQUFBLHVFQUNKQSxHQURJO0FBRVBHLE1BQUFBLGtCQUFrQixFQUFFLE1BRmI7QUFHUEMsTUFBQUEsZ0JBQWdCLEVBQUUsS0FIWDtBQUlQLGdCQUFVO0FBQ1JDLFFBQUFBLFNBQVMsRUFBRSxNQURIO0FBRVJDLFFBQUFBLE1BQU0sRUFBRSxtQkFGQTtBQUdSQyxRQUFBQSxTQUFTLEVBQUU7QUFISDtBQUpIO0FBQUEsR0FGUztBQVlsQkMsRUFBQUEsbUJBQW1CLEVBQUU7QUFBQSxXQUFPO0FBQUVDLE1BQUFBLE9BQU8sRUFBRTtBQUFYLEtBQVA7QUFBQSxHQVpIO0FBYWxCQyxFQUFBQSxZQUFZLEVBQUUsc0JBQUNWLEdBQUQ7QUFBQSx1RUFDVEEsR0FEUztBQUVaVyxNQUFBQSxhQUFhLEVBQUUsTUFGSDtBQUdaQyxNQUFBQSxZQUFZLEVBQUUsQ0FIRjtBQUlaQyxNQUFBQSxNQUFNLEVBQUUsTUFKSTtBQUtaQyxNQUFBQSxRQUFRLEVBQUUsTUFMRTtBQU1aQyxNQUFBQSxVQUFVLEVBQUU7QUFOQTtBQUFBLEdBYkk7QUFxQmxCQyxFQUFBQSxLQUFLLEVBQUUsZUFBQ2hCLEdBQUQ7QUFBQSx1RUFBZUEsR0FBZjtBQUFvQmlCLE1BQUFBLE9BQU8sRUFBRSxDQUE3QjtBQUFnQ0MsTUFBQUEsU0FBUyxFQUFFO0FBQTNDO0FBQUEsR0FyQlc7QUFzQmxCQyxFQUFBQSxJQUFJLEVBQUUsY0FBQ25CLEdBQUQ7QUFBQSx1RUFBZUEsR0FBZjtBQUFvQm9CLE1BQUFBLE1BQU0sRUFBRTtBQUE1QjtBQUFBLEdBdEJZO0FBdUJsQkMsRUFBQUEsTUFBTSxFQUFFLGdCQUFDckIsR0FBRCxFQUFTO0FBQ2YsdUVBQ0tBLEdBREw7QUFFRWMsTUFBQUEsUUFBUSxFQUFFLE1BRlo7QUFHRVEsTUFBQUEsVUFBVSxFQUFFLE1BSGQ7QUFJRXJCLE1BQUFBLEtBQUssRUFBRSxNQUpUO0FBS0VnQixNQUFBQSxPQUFPLEVBQUUsQ0FMWDtBQU1FTSxNQUFBQSxpQkFBaUIsRUFBRSxNQU5yQjtBQU9FQyxNQUFBQSxlQUFlLEVBQUUsS0FQbkI7QUFRRUMsTUFBQUEsZUFBZSxFQUFFO0FBUm5CO0FBVUQ7QUFsQ2lCLENBQXBCO2VBb0NlM0IsVyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHNlYXJjaFN0eWxlID0ge1xuICBjb250YWluZXI6IChjc3MpID0+ICh7IC4uLmNzcywgd2lkdGg6ICcyOTBweCcgfSksXG4gIGNvbnRyb2w6IChjc3MpID0+ICh7XG4gICAgLi4uY3NzLFxuICAgIHBhZGRpbmdJbmxpbmVTdGFydDogJzEycHgnLFxuICAgIHBhZGRpbmdJbmxpbmVFbmQ6ICc4cHgnLFxuICAgICc6aG92ZXInOiB7XG4gICAgICBib3hTaGFkb3c6ICdub25lJyxcbiAgICAgIGJvcmRlcjogJzFweCBzb2xpZCAjRUMwMDUxJyxcbiAgICAgIGJveFNpemluZzogJ2JvcmRlci1ib3gnLFxuICAgIH0sXG4gIH0pLFxuICBpbmRpY2F0b3JzQ29udGFpbmVyOiAoKSA9PiAoeyBkaXNwbGF5OiAnbm9uZScgfSksXG4gIGdyb3VwSGVhZGluZzogKGNzcykgPT4gKHtcbiAgICAuLi5jc3MsXG4gICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxuICAgIG1hcmdpbkJvdHRvbTogMCxcbiAgICBoZWlnaHQ6ICcyNnB4JyxcbiAgICBmb250U2l6ZTogJzEzcHgnLFxuICAgIGZvbnRXZWlnaHQ6ICdub3JtYWwnLFxuICB9KSxcbiAgZ3JvdXA6IChjc3MpID0+ICh7IC4uLmNzcywgcGFkZGluZzogMCwgbWFyZ2luVG9wOiAnOHB4JyB9KSxcbiAgbWVudTogKGNzcykgPT4gKHsgLi4uY3NzLCB6SW5kZXg6IDMgfSksXG4gIG9wdGlvbjogKGNzcykgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5jc3MsXG4gICAgICBmb250U2l6ZTogJzEzcHgnLFxuICAgICAgbGluZUhlaWdodDogJzI2cHgnLFxuICAgICAgd2lkdGg6ICdhdXRvJyxcbiAgICAgIHBhZGRpbmc6IDAsXG4gICAgICBtYXJnaW5JbmxpbmVTdGFydDogJzQ2cHgnLFxuICAgICAgbWFyZ2luSW5saW5lRW5kOiAnNXB4JyxcbiAgICAgIGJhY2tncm91bmRDb2xvcjogJ3RyYW5zcGFyZW50JyxcbiAgICB9O1xuICB9LFxufTtcbmV4cG9ydCBkZWZhdWx0IHNlYXJjaFN0eWxlO1xuIl19
|
|
@@ -1,98 +1,134 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
5
7
|
Object.defineProperty(exports, "__esModule", {
|
|
6
8
|
value: true
|
|
7
9
|
});
|
|
8
10
|
exports.default = void 0;
|
|
11
|
+
|
|
9
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
13
|
+
|
|
10
14
|
var _freeSolidSvgIcons = require("@fortawesome/free-solid-svg-icons");
|
|
15
|
+
|
|
11
16
|
var _reactFontawesome = require("@fortawesome/react-fontawesome");
|
|
17
|
+
|
|
12
18
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
+
|
|
13
20
|
var _reactBootstrap = require("react-bootstrap");
|
|
21
|
+
|
|
14
22
|
var _reactRedux = require("react-redux");
|
|
23
|
+
|
|
15
24
|
var _reactRouterDom = require("react-router-dom");
|
|
25
|
+
|
|
16
26
|
var _reactSelect = _interopRequireDefault(require("react-select"));
|
|
27
|
+
|
|
17
28
|
var _kando_logo = _interopRequireDefault(require("assets/kando_logo.png"));
|
|
29
|
+
|
|
18
30
|
var _authority = _interopRequireDefault(require("assets/missing/authority.png"));
|
|
31
|
+
|
|
19
32
|
var _user = _interopRequireDefault(require("assets/user.svg"));
|
|
33
|
+
|
|
20
34
|
var _StyledLink = require("components/Links/StyledLink/StyledLink");
|
|
35
|
+
|
|
21
36
|
var _actions = require("store/global/actions");
|
|
37
|
+
|
|
22
38
|
var _ErrorBoundary = _interopRequireDefault(require("utilities/ErrorBoundary"));
|
|
39
|
+
|
|
23
40
|
var _i18n = _interopRequireDefault(require("utilities/i18n"));
|
|
41
|
+
|
|
24
42
|
require("./NavbarStyle.scss");
|
|
43
|
+
|
|
44
|
+
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); }
|
|
45
|
+
|
|
46
|
+
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; }
|
|
47
|
+
|
|
25
48
|
var updatePageTitle = function updatePageTitle(title) {
|
|
26
49
|
return document.title = "Kando - ".concat(title);
|
|
27
50
|
};
|
|
51
|
+
|
|
28
52
|
var defaultProps = {
|
|
29
53
|
selectedLabel: '',
|
|
30
54
|
hasSearch: false
|
|
31
55
|
};
|
|
56
|
+
|
|
32
57
|
function replaceURL(key, value) {
|
|
33
58
|
var params = new URLSearchParams(window.location.search);
|
|
34
59
|
params.set(key, value);
|
|
35
60
|
return window.location.protocol + '//' + window.location.host + window.location.pathname + '?' + params.toString();
|
|
36
61
|
}
|
|
62
|
+
|
|
37
63
|
var KandoNavbar = function KandoNavbar(_ref) {
|
|
38
64
|
var waterAuthorityId = _ref.waterAuthorityId,
|
|
39
|
-
|
|
40
|
-
|
|
65
|
+
selectedLabel = _ref.selectedLabel,
|
|
66
|
+
hasSearch = _ref.hasSearch;
|
|
67
|
+
|
|
41
68
|
var _useState = (0, _react.useState)([]),
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
69
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
70
|
+
waterAuthorities = _useState2[0],
|
|
71
|
+
setWaterAuthorities = _useState2[1];
|
|
72
|
+
|
|
45
73
|
var _useState3 = (0, _react.useState)({
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
74
|
+
photo_url: 'missing',
|
|
75
|
+
label: ''
|
|
76
|
+
}),
|
|
77
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
78
|
+
localWaterAuthority = _useState4[0],
|
|
79
|
+
setLocalWaterAuthority = _useState4[1];
|
|
80
|
+
|
|
52
81
|
var _useState5 = (0, _react.useState)(waterAuthorityId),
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
82
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
83
|
+
waId = _useState6[0],
|
|
84
|
+
setWaId = _useState6[1];
|
|
85
|
+
|
|
56
86
|
var _useState7 = (0, _react.useState)({}),
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
87
|
+
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
88
|
+
menu = _useState8[0],
|
|
89
|
+
setMenu = _useState8[1];
|
|
90
|
+
|
|
60
91
|
var dispatch = (0, _reactRedux.useDispatch)();
|
|
92
|
+
|
|
61
93
|
var useQuery = function useQuery() {
|
|
62
94
|
return new URLSearchParams((0, _reactRouterDom.useLocation)().search);
|
|
63
95
|
};
|
|
96
|
+
|
|
64
97
|
var query = useQuery();
|
|
98
|
+
|
|
65
99
|
var _useState9 = (0, _react.useState)({
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
100
|
+
edit: {
|
|
101
|
+
link: '',
|
|
102
|
+
label: 'main_screen.edit_account'
|
|
103
|
+
},
|
|
104
|
+
feedback: {
|
|
105
|
+
link: '',
|
|
106
|
+
label: 'main_screen.feedback'
|
|
107
|
+
},
|
|
108
|
+
help: {
|
|
109
|
+
link: '',
|
|
110
|
+
label: 'main_screen.help'
|
|
111
|
+
},
|
|
112
|
+
my_profile: {
|
|
113
|
+
link: '',
|
|
114
|
+
label: 'main_screen.my_profile'
|
|
115
|
+
},
|
|
116
|
+
name: undefined,
|
|
117
|
+
sign_out: {
|
|
118
|
+
link: '',
|
|
119
|
+
label: 'main_screen.sign_out',
|
|
120
|
+
method: ''
|
|
121
|
+
}
|
|
122
|
+
}),
|
|
123
|
+
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
124
|
+
customerMenu = _useState10[0],
|
|
125
|
+
setCustomerMenu = _useState10[1];
|
|
126
|
+
|
|
92
127
|
var navContext = (0, _reactRedux.useSelector)(function (state) {
|
|
93
128
|
return state.nav_context_data.navContext;
|
|
94
129
|
});
|
|
95
130
|
var history = (0, _reactRouterDom.useHistory)();
|
|
131
|
+
|
|
96
132
|
var handleChange = function handleChange(selectedOption) {
|
|
97
133
|
setWaId(selectedOption.value);
|
|
98
134
|
dispatch((0, _actions.setWaterAuthority)({
|
|
@@ -101,8 +137,10 @@ var KandoNavbar = function KandoNavbar(_ref) {
|
|
|
101
137
|
}));
|
|
102
138
|
history.push("/".concat(navContext.name, "/index?locale=").concat(navContext.locale, "&water_authority_id=").concat(selectedOption.value));
|
|
103
139
|
};
|
|
140
|
+
|
|
104
141
|
var iterate = function iterate(obj) {
|
|
105
142
|
var items = [];
|
|
143
|
+
|
|
106
144
|
for (var property in obj) {
|
|
107
145
|
if (obj[property].expandable) {
|
|
108
146
|
items.push( /*#__PURE__*/_react.default.createElement(_reactBootstrap.NavDropdown, {
|
|
@@ -126,8 +164,10 @@ var KandoNavbar = function KandoNavbar(_ref) {
|
|
|
126
164
|
}
|
|
127
165
|
}
|
|
128
166
|
}
|
|
167
|
+
|
|
129
168
|
return items;
|
|
130
169
|
};
|
|
170
|
+
|
|
131
171
|
var renderClientsPhoto = function renderClientsPhoto() {
|
|
132
172
|
if (localWaterAuthority !== undefined) {
|
|
133
173
|
var url = localWaterAuthority.photo_url;
|
|
@@ -143,6 +183,7 @@ var KandoNavbar = function KandoNavbar(_ref) {
|
|
|
143
183
|
return;
|
|
144
184
|
}
|
|
145
185
|
};
|
|
186
|
+
|
|
146
187
|
var buildSwitchClient = function buildSwitchClient() {
|
|
147
188
|
if (waterAuthorities !== undefined && waterAuthorities.length !== 0) {
|
|
148
189
|
if (waterAuthorities.length === 1) {
|
|
@@ -150,6 +191,7 @@ var KandoNavbar = function KandoNavbar(_ref) {
|
|
|
150
191
|
className: 'water-authority-single-label'
|
|
151
192
|
}, localWaterAuthority.label);
|
|
152
193
|
}
|
|
194
|
+
|
|
153
195
|
return /*#__PURE__*/_react.default.createElement(_reactBootstrap.NavDropdown, {
|
|
154
196
|
title: localWaterAuthority !== null ? localWaterAuthority.label : '',
|
|
155
197
|
id: "basic-nav-dropdown"
|
|
@@ -170,16 +212,17 @@ var KandoNavbar = function KandoNavbar(_ref) {
|
|
|
170
212
|
}),
|
|
171
213
|
getOptionLabel: function getOptionLabel(localWaterAuthority) {
|
|
172
214
|
return localWaterAuthority.label;
|
|
173
|
-
}
|
|
174
|
-
// @ts-ignore
|
|
215
|
+
} // @ts-ignore
|
|
175
216
|
,
|
|
176
217
|
onChange: function onChange(e) {
|
|
177
218
|
return handleChange(e);
|
|
178
219
|
}
|
|
179
220
|
})));
|
|
180
221
|
}
|
|
222
|
+
|
|
181
223
|
return;
|
|
182
224
|
};
|
|
225
|
+
|
|
183
226
|
var buildCustomerMenu = function buildCustomerMenu(contextName) {
|
|
184
227
|
if (customerMenu !== undefined) {
|
|
185
228
|
// @ts-ignore
|
|
@@ -221,8 +264,10 @@ var KandoNavbar = function KandoNavbar(_ref) {
|
|
|
221
264
|
"data-method": customerMenu.sign_out.method
|
|
222
265
|
}, _i18n.default.t(customerMenu.sign_out.label)));
|
|
223
266
|
}
|
|
267
|
+
|
|
224
268
|
return;
|
|
225
269
|
};
|
|
270
|
+
|
|
226
271
|
(0, _react.useEffect)(function () {
|
|
227
272
|
var locale = query.get('locale') || 'en';
|
|
228
273
|
fetch("/data/menu_data.json?water_authority_id=".concat(waId, "&locale=").concat(locale)).then(function (response) {
|
|
@@ -235,6 +280,7 @@ var KandoNavbar = function KandoNavbar(_ref) {
|
|
|
235
280
|
name: json.water_authority.label
|
|
236
281
|
}));
|
|
237
282
|
setLocalWaterAuthority(json.water_authority); // add to Store
|
|
283
|
+
|
|
238
284
|
updatePageTitle(json.water_authority.label);
|
|
239
285
|
setCustomerMenu(json.customer_menu);
|
|
240
286
|
});
|
|
@@ -269,7 +315,8 @@ var KandoNavbar = function KandoNavbar(_ref) {
|
|
|
269
315
|
icon: _freeSolidSvgIcons.faTint
|
|
270
316
|
}), buildSwitchClient()))))));
|
|
271
317
|
};
|
|
318
|
+
|
|
272
319
|
KandoNavbar.defaultProps = defaultProps;
|
|
273
320
|
var _default = KandoNavbar;
|
|
274
321
|
exports.default = _default;
|
|
275
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdEJvb3RzdHJhcCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX3JlYWN0U2VsZWN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9rYW5kb19sb2dvIiwiX2F1dGhvcml0eSIsIl91c2VyIiwiX1N0eWxlZExpbmsiLCJfYWN0aW9ucyIsIl9FcnJvckJvdW5kYXJ5IiwiX2kxOG4iLCJ1cGRhdGVQYWdlVGl0bGUiLCJ0aXRsZSIsImRvY3VtZW50IiwiY29uY2F0IiwiZGVmYXVsdFByb3BzIiwic2VsZWN0ZWRMYWJlbCIsImhhc1NlYXJjaCIsInJlcGxhY2VVUkwiLCJrZXkiLCJ2YWx1ZSIsInBhcmFtcyIsIlVSTFNlYXJjaFBhcmFtcyIsIndpbmRvdyIsImxvY2F0aW9uIiwic2VhcmNoIiwic2V0IiwicHJvdG9jb2wiLCJob3N0IiwicGF0aG5hbWUiLCJ0b1N0cmluZyIsIkthbmRvTmF2YmFyIiwiX3JlZiIsIndhdGVyQXV0aG9yaXR5SWQiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJkZWZhdWx0Iiwid2F0ZXJBdXRob3JpdGllcyIsInNldFdhdGVyQXV0aG9yaXRpZXMiLCJfdXNlU3RhdGUzIiwicGhvdG9fdXJsIiwibGFiZWwiLCJfdXNlU3RhdGU0IiwibG9jYWxXYXRlckF1dGhvcml0eSIsInNldExvY2FsV2F0ZXJBdXRob3JpdHkiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsIndhSWQiLCJzZXRXYUlkIiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJtZW51Iiwic2V0TWVudSIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJ1c2VRdWVyeSIsInVzZUxvY2F0aW9uIiwicXVlcnkiLCJfdXNlU3RhdGU5IiwiZWRpdCIsImxpbmsiLCJmZWVkYmFjayIsImhlbHAiLCJteV9wcm9maWxlIiwibmFtZSIsInVuZGVmaW5lZCIsInNpZ25fb3V0IiwibWV0aG9kIiwiX3VzZVN0YXRlMTAiLCJjdXN0b21lck1lbnUiLCJzZXRDdXN0b21lck1lbnUiLCJuYXZDb250ZXh0IiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJoaXN0b3J5IiwidXNlSGlzdG9yeSIsImhhbmRsZUNoYW5nZSIsInNlbGVjdGVkT3B0aW9uIiwic2V0V2F0ZXJBdXRob3JpdHkiLCJpZCIsInB1c2giLCJsb2NhbGUiLCJpdGVyYXRlIiwib2JqIiwiaXRlbXMiLCJwcm9wZXJ0eSIsImV4cGFuZGFibGUiLCJjcmVhdGVFbGVtZW50IiwiTmF2RHJvcGRvd24iLCJpMThuIiwidCIsImV4cGFuc2lvbiIsImNsYXNzIiwiTGluayIsImNsYXNzTmFtZSIsInRvIiwiSXRlbSIsImhyZWYiLCJyZW5kZXJDbGllbnRzUGhvdG8iLCJ1cmwiLCJhbHQiLCJzcmMiLCJzdGFydHNXaXRoIiwiV2F0ZXJBdXRob3JpdHlNaXNzaW5nSWNvbiIsInN0eWxlIiwiaGVpZ2h0Iiwid2lkdGgiLCJidWlsZFN3aXRjaENsaWVudCIsImxlbmd0aCIsIkl0ZW1UZXh0IiwiY2xhc3NOYW1lUHJlZml4IiwiaXNTZWFyY2hhYmxlIiwib3B0aW9ucyIsIm1hcCIsImdldE9wdGlvbkxhYmVsIiwib25DaGFuZ2UiLCJlIiwiYnVpbGRDdXN0b21lck1lbnUiLCJjb250ZXh0TmFtZSIsImFsaWduUmlnaHQiLCJBdmF0YXIiLCJEaXZpZGVyIiwidXNlRWZmZWN0IiwiZ2V0IiwiZmV0Y2giLCJ0aGVuIiwicmVzcG9uc2UiLCJqc29uIiwid2F0ZXJfYXV0aG9yaXRpZXMiLCJ3YXRlcl9hdXRob3JpdHkiLCJjdXN0b21lcl9tZW51IiwiY2xlYW51cCIsIkZyYWdtZW50IiwiTmF2YmFyIiwiZXhwYW5kIiwiVG9nZ2xlIiwiQnJhbmQiLCJLYW5kb0xvZ28iLCJDb2xsYXBzZSIsIk5hdiIsImNvbG9yIiwiaXRlbSIsIkZvbnRBd2Vzb21lSWNvbiIsImljb24iLCJmYVRpbnQiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9IZWFkZXIvS2FuZG9OYXZiYXIvS2FuZG9OYXZiYXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZhVGludCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBOYXYsIE5hdmJhciwgTmF2RHJvcGRvd24gfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlTG9jYXRpb24gfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCBTZWxlY3QgZnJvbSAncmVhY3Qtc2VsZWN0JztcbmltcG9ydCBLYW5kb0xvZ28gZnJvbSAnc3JjL2Fzc2V0cy9rYW5kb19sb2dvLnBuZyc7XG5pbXBvcnQgV2F0ZXJBdXRob3JpdHlNaXNzaW5nSWNvbiBmcm9tICdzcmMvYXNzZXRzL21pc3NpbmcvYXV0aG9yaXR5LnBuZyc7XG5pbXBvcnQgQXZhdGFyIGZyb20gJ3NyYy9hc3NldHMvdXNlci5zdmcnO1xuaW1wb3J0IHsgTGluayB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0xpbmtzL1N0eWxlZExpbmsvU3R5bGVkTGluayc7XG5pbXBvcnQgeyBzZXRXYXRlckF1dGhvcml0eSB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnc3JjL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJ3NyYy91dGlsaXRpZXMvRXJyb3JCb3VuZGFyeSc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0ICcuL05hdmJhclN0eWxlLnNjc3MnO1xuXG5jb25zdCB1cGRhdGVQYWdlVGl0bGUgPSAodGl0bGU6IHN0cmluZykgPT5cbiAgKGRvY3VtZW50LnRpdGxlID0gYEthbmRvIC0gJHt0aXRsZX1gKTtcblxudHlwZSBJUHJvcHMgPSB7XG4gIHdhdGVyQXV0aG9yaXR5SWQ6IG51bWJlcjtcbiAgc2VsZWN0ZWRMYWJlbD86IHN0cmluZztcbiAgaGFzU2VhcmNoPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IGRlZmF1bHRQcm9wcyA9IHtcbiAgc2VsZWN0ZWRMYWJlbDogJycsXG4gIGhhc1NlYXJjaDogZmFsc2UsXG59O1xuXG5mdW5jdGlvbiByZXBsYWNlVVJMKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gIGxldCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpO1xuICBwYXJhbXMuc2V0KGtleSwgdmFsdWUpO1xuICByZXR1cm4gKFxuICAgIHdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCArXG4gICAgJy8vJyArXG4gICAgd2luZG93LmxvY2F0aW9uLmhvc3QgK1xuICAgIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSArXG4gICAgJz8nICtcbiAgICBwYXJhbXMudG9TdHJpbmcoKVxuICApO1xufVxuXG5jb25zdCBLYW5kb05hdmJhciA9ICh7XG4gIHdhdGVyQXV0aG9yaXR5SWQsXG4gIHNlbGVjdGVkTGFiZWwsXG4gIGhhc1NlYXJjaCxcbn06IElQcm9wcykgPT4ge1xuICBjb25zdCBbd2F0ZXJBdXRob3JpdGllcywgc2V0V2F0ZXJBdXRob3JpdGllc10gPSB1c2VTdGF0ZShbXSk7XG4gIGNvbnN0IFtsb2NhbFdhdGVyQXV0aG9yaXR5LCBzZXRMb2NhbFdhdGVyQXV0aG9yaXR5XSA9IHVzZVN0YXRlKHtcbiAgICBwaG90b191cmw6ICdtaXNzaW5nJyxcbiAgICBsYWJlbDogJycsXG4gIH0pO1xuICBjb25zdCBbd2FJZCwgc2V0V2FJZF0gPSB1c2VTdGF0ZSh3YXRlckF1dGhvcml0eUlkKTtcbiAgY29uc3QgW21lbnUsIHNldE1lbnVdID0gdXNlU3RhdGUoe30pO1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG5cbiAgY29uc3QgdXNlUXVlcnkgPSAoKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBVUkxTZWFyY2hQYXJhbXModXNlTG9jYXRpb24oKS5zZWFyY2gpO1xuICB9O1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5KCk7XG5cbiAgY29uc3QgW2N1c3RvbWVyTWVudSwgc2V0Q3VzdG9tZXJNZW51XSA9IHVzZVN0YXRlKHtcbiAgICBlZGl0OiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4uZWRpdF9hY2NvdW50JyxcbiAgICB9LFxuICAgIGZlZWRiYWNrOiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4uZmVlZGJhY2snLFxuICAgIH0sXG4gICAgaGVscDoge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLmhlbHAnLFxuICAgIH0sXG4gICAgbXlfcHJvZmlsZToge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLm15X3Byb2ZpbGUnLFxuICAgIH0sXG4gICAgbmFtZTogdW5kZWZpbmVkLFxuICAgIHNpZ25fb3V0OiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4uc2lnbl9vdXQnLFxuICAgICAgbWV0aG9kOiAnJyxcbiAgICB9LFxuICB9KTtcbiAgY29uc3QgbmF2Q29udGV4dCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLm5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dCxcbiAgKTtcblxuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChzZWxlY3RlZE9wdGlvbjogYW55KSA9PiB7XG4gICAgc2V0V2FJZChzZWxlY3RlZE9wdGlvbi52YWx1ZSk7XG4gICAgZGlzcGF0Y2goc2V0V2F0ZXJBdXRob3JpdHkoeyBpZDogc2VsZWN0ZWRPcHRpb24udmFsdWUsIG5hbWU6ICcnIH0pKTtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgLyR7bmF2Q29udGV4dC5uYW1lfS9pbmRleD9sb2NhbGU9JHtuYXZDb250ZXh0LmxvY2FsZX0md2F0ZXJfYXV0aG9yaXR5X2lkPSR7c2VsZWN0ZWRPcHRpb24udmFsdWV9YCxcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGl0ZXJhdGUgPSAob2JqOiBhbnkpID0+IHtcbiAgICBsZXQgaXRlbXM6IGFueVtdID0gW107XG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBvYmopIHtcbiAgICAgIGlmIChvYmpbcHJvcGVydHldLmV4cGFuZGFibGUpIHtcbiAgICAgICAgaXRlbXMucHVzaChcbiAgICAgICAgICA8TmF2RHJvcGRvd25cbiAgICAgICAgICAgIGtleT17b2JqW3Byb3BlcnR5XS5sYWJlbH1cbiAgICAgICAgICAgIHRpdGxlPXtpMThuLnQob2JqW3Byb3BlcnR5XS5sYWJlbCl9XG4gICAgICAgICAgICBpZD1cImJhc2ljLW5hdi1kcm9wZG93blwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge2l0ZXJhdGUob2JqW3Byb3BlcnR5XS5leHBhbnNpb24pfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24+LFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKG9ialtwcm9wZXJ0eV0uY2xhc3MgPT09ICdqcy1pcy1yZWFjdCcpIHtcbiAgICAgICAgICBpdGVtcy5wdXNoKFxuICAgICAgICAgICAgPExpbmtcbiAgICAgICAgICAgICAga2V5PXtvYmpbcHJvcGVydHldLmxpbmt9XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cImRyb3Bkb3duLWl0ZW1cIlxuICAgICAgICAgICAgICB0bz17b2JqW3Byb3BlcnR5XS5saW5rfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KG9ialtwcm9wZXJ0eV0ubGFiZWwpfVxuICAgICAgICAgICAgPC9MaW5rPixcbiAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGl0ZW1zLnB1c2goXG4gICAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVxuICAgICAgICAgICAgICBrZXk9e29ialtwcm9wZXJ0eV0ubGlua31cbiAgICAgICAgICAgICAgaHJlZj17b2JqW3Byb3BlcnR5XS5saW5rfVxuICAgICAgICAgICAgICBpZD1cImJhc2ljLW5hdmJhci1uYXZcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KG9ialtwcm9wZXJ0eV0ubGFiZWwpfVxuICAgICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPixcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGl0ZW1zO1xuICB9O1xuXG4gIGNvbnN0IHJlbmRlckNsaWVudHNQaG90byA9ICgpID0+IHtcbiAgICBpZiAobG9jYWxXYXRlckF1dGhvcml0eSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBsZXQgdXJsID0gbG9jYWxXYXRlckF1dGhvcml0eS5waG90b191cmwhIGFzIHN0cmluZztcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxpbWdcbiAgICAgICAgICBhbHQ9XCJtaXNzaW5nXCJcbiAgICAgICAgICBzcmM9e3VybC5zdGFydHNXaXRoKCdtaXNzaW5nJykgPyBXYXRlckF1dGhvcml0eU1pc3NpbmdJY29uIDogdXJsfVxuICAgICAgICAgIHN0eWxlPXt7IGhlaWdodDogJzQwcHgnLCB3aWR0aDogJ2F1dG8nIH19XG4gICAgICAgIC8+XG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGJ1aWxkU3dpdGNoQ2xpZW50ID0gKCkgPT4ge1xuICAgIGlmICh3YXRlckF1dGhvcml0aWVzICE9PSB1bmRlZmluZWQgJiYgd2F0ZXJBdXRob3JpdGllcy5sZW5ndGggIT09IDApIHtcbiAgICAgIGlmICh3YXRlckF1dGhvcml0aWVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxwIGNsYXNzTmFtZT17J3dhdGVyLWF1dGhvcml0eS1zaW5nbGUtbGFiZWwnfT5cbiAgICAgICAgICAgIHtsb2NhbFdhdGVyQXV0aG9yaXR5LmxhYmVsfVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPE5hdkRyb3Bkb3duXG4gICAgICAgICAgdGl0bGU9e2xvY2FsV2F0ZXJBdXRob3JpdHkgIT09IG51bGwgPyBsb2NhbFdhdGVyQXV0aG9yaXR5LmxhYmVsIDogJyd9XG4gICAgICAgICAgaWQ9XCJiYXNpYy1uYXYtZHJvcGRvd25cIlxuICAgICAgICA+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1UZXh0IHN0eWxlPXt7IHdpZHRoOiAnMzAwcHgnIH19PlxuICAgICAgICAgICAgPFNlbGVjdFxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJiYXNpYy1zaW5nbGVcIlxuICAgICAgICAgICAgICBjbGFzc05hbWVQcmVmaXg9XCJzZWxlY3RcIlxuICAgICAgICAgICAgICBpc1NlYXJjaGFibGU9e3RydWV9XG4gICAgICAgICAgICAgIG5hbWU9XCJjb2xvclwiXG4gICAgICAgICAgICAgIG9wdGlvbnM9e3dhdGVyQXV0aG9yaXRpZXMubWFwKChsb2NhbFdhdGVyQXV0aG9yaXR5OiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgdmFsdWU6IGxvY2FsV2F0ZXJBdXRob3JpdHkuaWQsXG4gICAgICAgICAgICAgICAgICBsYWJlbDogbG9jYWxXYXRlckF1dGhvcml0eS5uYW1lLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICBnZXRPcHRpb25MYWJlbD17KGxvY2FsV2F0ZXJBdXRob3JpdHk6IGFueSkgPT5cbiAgICAgICAgICAgICAgICBsb2NhbFdhdGVyQXV0aG9yaXR5LmxhYmVsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICBvbkNoYW5nZT17KGU6IE9iamVjdCkgPT4gaGFuZGxlQ2hhbmdlKGUpfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW1UZXh0PlxuICAgICAgICA8L05hdkRyb3Bkb3duPlxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH07XG5cbiAgY29uc3QgYnVpbGRDdXN0b21lck1lbnUgPSAoY29udGV4dE5hbWU6IHN0cmluZykgPT4ge1xuICAgIGlmIChjdXN0b21lck1lbnUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPE5hdkRyb3Bkb3duXG4gICAgICAgICAgYWxpZ25SaWdodFxuICAgICAgICAgIGNsYXNzTmFtZT17J2N1c3RvbWVyLW1lbnUgb3JkZXItc20tMyd9XG4gICAgICAgICAgaWQ9XCJiYXNpYy1uYXYtZHJvcGRvd25cIlxuICAgICAgICAgIHRpdGxlPXtcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnY3VzdG9tZXItbWVudV9fY29udGVudCd9PlxuICAgICAgICAgICAgICA8aW1nIHNyYz17QXZhdGFyfSBhbHQ9XCJhdmF0YXJcIj48L2ltZz5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnZ3JlZXRpbmcnfT5cbiAgICAgICAgICAgICAgICB7YCR7aTE4bi50KCdtYWluX3NjcmVlbi5oZWxsbycpfSAke1xuICAgICAgICAgICAgICAgICAgY3VzdG9tZXJNZW51Lm5hbWUgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgICAgICA/IGkxOG4udCgnbWFpbl9zY3JlZW4udGhlcmUnKVxuICAgICAgICAgICAgICAgICAgICA6ICcsICcgKyBjdXN0b21lck1lbnUubmFtZVxuICAgICAgICAgICAgICAgIH1gfVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgID5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtjdXN0b21lck1lbnUubXlfcHJvZmlsZS5saW5rfT5cbiAgICAgICAgICAgIHtpMThuLnQoJ21haW5fc2NyZWVuLm15X3Byb2ZpbGUnKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgIGhyZWY9e2N1c3RvbWVyTWVudS5lZGl0Lmxpbmt9XG4gICAgICAgICAgICBrZXk9e2N1c3RvbWVyTWVudS5lZGl0Lmxpbmt9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udCgnbWFpbl9zY3JlZW4uZWRpdF9hY2NvdW50Jyl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICBocmVmPXtjdXN0b21lck1lbnUuZmVlZGJhY2subGlua31cbiAgICAgICAgICAgIGtleT17Y3VzdG9tZXJNZW51LmZlZWRiYWNrLmxpbmt9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udCgnbWFpbl9zY3JlZW4uZmVlZGJhY2snKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgIGhyZWY9e2N1c3RvbWVyTWVudS5oZWxwLmxpbmt9XG4gICAgICAgICAgICBrZXk9e2N1c3RvbWVyTWVudS5oZWxwLmxpbmt9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udCgnbWFpbl9zY3JlZW4uaGVscCcpfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uRGl2aWRlciAvPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdlbicpfT5cbiAgICAgICAgICAgIHsnRW5nbGlzaCd9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdlbl91aycpfT5cbiAgICAgICAgICAgIHsnRW5nbGlzaCAoVUspJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17cmVwbGFjZVVSTCgnbG9jYWxlJywgJ2hlJyl9PlxuICAgICAgICAgICAgeyfXoteR16jXmdeqJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17cmVwbGFjZVVSTCgnbG9jYWxlJywgJ2ZyJyl9PlxuICAgICAgICAgICAgeydGcmFuw6dhaXMnfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtyZXBsYWNlVVJMKCdsb2NhbGUnLCAnaXQnKX0+XG4gICAgICAgICAgICB7J0l0YWxpYW5vJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkRpdmlkZXIgLz5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVxuICAgICAgICAgICAgaHJlZj17Y3VzdG9tZXJNZW51LnNpZ25fb3V0Lmxpbmt9XG4gICAgICAgICAgICBkYXRhLW1ldGhvZD17Y3VzdG9tZXJNZW51LnNpZ25fb3V0Lm1ldGhvZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7aTE4bi50KGN1c3RvbWVyTWVudS5zaWduX291dC5sYWJlbCl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICA8L05hdkRyb3Bkb3duPlxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBsZXQgbG9jYWxlID0gcXVlcnkuZ2V0KCdsb2NhbGUnKSB8fCAnZW4nO1xuICAgIGZldGNoKGAvZGF0YS9tZW51X2RhdGEuanNvbj93YXRlcl9hdXRob3JpdHlfaWQ9JHt3YUlkfSZsb2NhbGU9JHtsb2NhbGV9YClcbiAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuanNvbigpKVxuICAgICAgLnRoZW4oKGpzb24pID0+IHtcbiAgICAgICAgc2V0V2F0ZXJBdXRob3JpdGllcyhqc29uLndhdGVyX2F1dGhvcml0aWVzKTtcbiAgICAgICAgc2V0TWVudShqc29uLm1lbnUpO1xuICAgICAgICBkaXNwYXRjaChcbiAgICAgICAgICBzZXRXYXRlckF1dGhvcml0eSh7XG4gICAgICAgICAgICBpZDoganNvbi53YXRlcl9hdXRob3JpdHkudmFsdWUsXG4gICAgICAgICAgICBuYW1lOiBqc29uLndhdGVyX2F1dGhvcml0eS5sYWJlbCxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgICAgc2V0TG9jYWxXYXRlckF1dGhvcml0eShqc29uLndhdGVyX2F1dGhvcml0eSk7IC8vIGFkZCB0byBTdG9yZVxuICAgICAgICB1cGRhdGVQYWdlVGl0bGUoanNvbi53YXRlcl9hdXRob3JpdHkubGFiZWwpO1xuICAgICAgICBzZXRDdXN0b21lck1lbnUoanNvbi5jdXN0b21lcl9tZW51KTtcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICBzZXRXYXRlckF1dGhvcml0aWVzKFtdKTtcbiAgICAgIHNldE1lbnUoe30pO1xuICAgIH07XG4gIH0sIFt3YUlkXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICA8RXJyb3JCb3VuZGFyeT5cbiAgICAgICAgPE5hdmJhciBleHBhbmQ9XCJzbVwiIGNsYXNzTmFtZT17J2p1c3RpZnktY29udGVudC1iZXR3ZWVuJ30+XG4gICAgICAgICAgPE5hdmJhci5Ub2dnbGUgYXJpYS1jb250cm9scz1cImJhc2ljLW5hdmJhci1uYXZcIiAvPlxuICAgICAgICAgIDxOYXZiYXIuQnJhbmQgY2xhc3NOYW1lPXsnbG9nbyd9PlxuICAgICAgICAgICAgPGltZyBzcmM9e0thbmRvTG9nb30gYWx0PVwia2FuZG8tbG9nb1wiPjwvaW1nPlxuICAgICAgICAgIDwvTmF2YmFyLkJyYW5kPlxuICAgICAgICAgIDxOYXZiYXIuQnJhbmQgY2xhc3NOYW1lPXsnY2xpZW50LWxvZ28nfT5cbiAgICAgICAgICAgIHtyZW5kZXJDbGllbnRzUGhvdG8oKX1cbiAgICAgICAgICA8L05hdmJhci5CcmFuZD5cbiAgICAgICAgICB7YnVpbGRDdXN0b21lck1lbnUobmF2Q29udGV4dC5uYW1lKX1cbiAgICAgICAgICA8TmF2YmFyLkNvbGxhcHNlIGlkPVwiYmFzaWMtbmF2YmFyLW5hdlwiPlxuICAgICAgICAgICAgPE5hdiBzdHlsZT17eyBjb2xvcjogJ2JsdWUnIH19PlxuICAgICAgICAgICAgICB7aXRlcmF0ZShtZW51KS5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnc3dpdGNoLWNsaWVudC1jb250YWluZXInfT5cbiAgICAgICAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhVGludH0gLz5cbiAgICAgICAgICAgICAgICB7YnVpbGRTd2l0Y2hDbGllbnQoKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L05hdj5cbiAgICAgICAgICA8L05hdmJhci5Db2xsYXBzZT5cbiAgICAgICAgICB7fVxuICAgICAgICA8L05hdmJhcj5cbiAgICAgIDwvRXJyb3JCb3VuZGFyeT5cbiAgICA8L1JlYWN0LkZyYWdtZW50PlxuICApO1xufTtcbkthbmRvTmF2YmFyLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcblxuZXhwb3J0IGRlZmF1bHQgS2FuZG9OYXZiYXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLElBQUFBLGtCQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxpQkFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsTUFBQSxHQUFBQyx1QkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksZUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sZUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sWUFBQSxHQUFBQyxzQkFBQSxDQUFBUixPQUFBO0FBQ0EsSUFBQVMsV0FBQSxHQUFBRCxzQkFBQSxDQUFBUixPQUFBO0FBQ0EsSUFBQVUsVUFBQSxHQUFBRixzQkFBQSxDQUFBUixPQUFBO0FBQXlFLElBQUFXLEtBQUEsR0FBQUgsc0JBQUEsQ0FBQVIsT0FBQTtBQUV6RSxJQUFBWSxXQUFBLEdBQUFaLE9BQUE7QUFDQSxJQUFBYSxRQUFBLEdBQUFiLE9BQUE7QUFFQSxJQUFBYyxjQUFBLEdBQUFOLHNCQUFBLENBQUFSLE9BQUE7QUFDQSxJQUFBZSxLQUFBLEdBQUFQLHNCQUFBLENBQUFSLE9BQUE7QUFDQUEsT0FBQTtBQUVBLElBQU1nQixlQUFlLEdBQUcsU0FBbEJBLGVBQWVBLENBQUlDLEtBQWE7RUFBQSxPQUNuQ0MsUUFBUSxDQUFDRCxLQUFLLGNBQUFFLE1BQUEsQ0FBY0YsS0FBSyxDQUFFO0FBQUEsQ0FBQztBQVF2QyxJQUFNRyxZQUFZLEdB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
|
|
322
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hlYWRlci9LYW5kb05hdmJhci9LYW5kb05hdmJhci50c3giXSwibmFtZXMiOlsidXBkYXRlUGFnZVRpdGxlIiwidGl0bGUiLCJkb2N1bWVudCIsImRlZmF1bHRQcm9wcyIsInNlbGVjdGVkTGFiZWwiLCJoYXNTZWFyY2giLCJyZXBsYWNlVVJMIiwia2V5IiwidmFsdWUiLCJwYXJhbXMiLCJVUkxTZWFyY2hQYXJhbXMiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInNlYXJjaCIsInNldCIsInByb3RvY29sIiwiaG9zdCIsInBhdGhuYW1lIiwidG9TdHJpbmciLCJLYW5kb05hdmJhciIsIndhdGVyQXV0aG9yaXR5SWQiLCJ3YXRlckF1dGhvcml0aWVzIiwic2V0V2F0ZXJBdXRob3JpdGllcyIsInBob3RvX3VybCIsImxhYmVsIiwibG9jYWxXYXRlckF1dGhvcml0eSIsInNldExvY2FsV2F0ZXJBdXRob3JpdHkiLCJ3YUlkIiwic2V0V2FJZCIsIm1lbnUiLCJzZXRNZW51IiwiZGlzcGF0Y2giLCJ1c2VRdWVyeSIsInF1ZXJ5IiwiZWRpdCIsImxpbmsiLCJmZWVkYmFjayIsImhlbHAiLCJteV9wcm9maWxlIiwibmFtZSIsInVuZGVmaW5lZCIsInNpZ25fb3V0IiwibWV0aG9kIiwiY3VzdG9tZXJNZW51Iiwic2V0Q3VzdG9tZXJNZW51IiwibmF2Q29udGV4dCIsInN0YXRlIiwibmF2X2NvbnRleHRfZGF0YSIsImhpc3RvcnkiLCJoYW5kbGVDaGFuZ2UiLCJzZWxlY3RlZE9wdGlvbiIsImlkIiwicHVzaCIsImxvY2FsZSIsIml0ZXJhdGUiLCJvYmoiLCJpdGVtcyIsInByb3BlcnR5IiwiZXhwYW5kYWJsZSIsImkxOG4iLCJ0IiwiZXhwYW5zaW9uIiwiY2xhc3MiLCJyZW5kZXJDbGllbnRzUGhvdG8iLCJ1cmwiLCJzdGFydHNXaXRoIiwiV2F0ZXJBdXRob3JpdHlNaXNzaW5nSWNvbiIsImhlaWdodCIsIndpZHRoIiwiYnVpbGRTd2l0Y2hDbGllbnQiLCJsZW5ndGgiLCJtYXAiLCJlIiwiYnVpbGRDdXN0b21lck1lbnUiLCJjb250ZXh0TmFtZSIsIkF2YXRhciIsImdldCIsImZldGNoIiwidGhlbiIsInJlc3BvbnNlIiwianNvbiIsIndhdGVyX2F1dGhvcml0aWVzIiwid2F0ZXJfYXV0aG9yaXR5IiwiY3VzdG9tZXJfbWVudSIsImNsZWFudXAiLCJLYW5kb0xvZ28iLCJjb2xvciIsIml0ZW0iLCJmYVRpbnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQUVBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOzs7Ozs7QUFFQSxJQUFNQSxlQUFlLEdBQUcsU0FBbEJBLGVBQWtCLENBQUNDLEtBQUQ7QUFBQSxTQUNyQkMsUUFBUSxDQUFDRCxLQUFULHFCQUE0QkEsS0FBNUIsQ0FEcUI7QUFBQSxDQUF4Qjs7QUFTQSxJQUFNRSxZQUFZLEdBQUc7QUFDbkJDLEVBQUFBLGFBQWEsRUFBRSxFQURJO0FBRW5CQyxFQUFBQSxTQUFTLEVBQUU7QUFGUSxDQUFyQjs7QUFLQSxTQUFTQyxVQUFULENBQW9CQyxHQUFwQixFQUFpQ0MsS0FBakMsRUFBZ0Q7QUFDOUMsTUFBSUMsTUFBTSxHQUFHLElBQUlDLGVBQUosQ0FBb0JDLE1BQU0sQ0FBQ0MsUUFBUCxDQUFnQkMsTUFBcEMsQ0FBYjtBQUNBSixFQUFBQSxNQUFNLENBQUNLLEdBQVAsQ0FBV1AsR0FBWCxFQUFnQkMsS0FBaEI7QUFDQSxTQUNFRyxNQUFNLENBQUNDLFFBQVAsQ0FBZ0JHLFFBQWhCLEdBQ0EsSUFEQSxHQUVBSixNQUFNLENBQUNDLFFBQVAsQ0FBZ0JJLElBRmhCLEdBR0FMLE1BQU0sQ0FBQ0MsUUFBUCxDQUFnQkssUUFIaEIsR0FJQSxHQUpBLEdBS0FSLE1BQU0sQ0FBQ1MsUUFBUCxFQU5GO0FBUUQ7O0FBRUQsSUFBTUMsV0FBVyxHQUFHLFNBQWRBLFdBQWMsT0FJTjtBQUFBLE1BSFpDLGdCQUdZLFFBSFpBLGdCQUdZO0FBQUEsTUFGWmhCLGFBRVksUUFGWkEsYUFFWTtBQUFBLE1BRFpDLFNBQ1ksUUFEWkEsU0FDWTs7QUFDWixrQkFBZ0QscUJBQVMsRUFBVCxDQUFoRDtBQUFBO0FBQUEsTUFBT2dCLGdCQUFQO0FBQUEsTUFBeUJDLG1CQUF6Qjs7QUFDQSxtQkFBc0QscUJBQVM7QUFDN0RDLElBQUFBLFNBQVMsRUFBRSxTQURrRDtBQUU3REMsSUFBQUEsS0FBSyxFQUFFO0FBRnNELEdBQVQsQ0FBdEQ7QUFBQTtBQUFBLE1BQU9DLG1CQUFQO0FBQUEsTUFBNEJDLHNCQUE1Qjs7QUFJQSxtQkFBd0IscUJBQVNOLGdCQUFULENBQXhCO0FBQUE7QUFBQSxNQUFPTyxJQUFQO0FBQUEsTUFBYUMsT0FBYjs7QUFDQSxtQkFBd0IscUJBQVMsRUFBVCxDQUF4QjtBQUFBO0FBQUEsTUFBT0MsSUFBUDtBQUFBLE1BQWFDLE9BQWI7O0FBQ0EsTUFBTUMsUUFBUSxHQUFHLDhCQUFqQjs7QUFFQSxNQUFNQyxRQUFRLEdBQUcsU0FBWEEsUUFBVyxHQUFNO0FBQ3JCLFdBQU8sSUFBSXRCLGVBQUosQ0FBb0IsbUNBQWNHLE1BQWxDLENBQVA7QUFDRCxHQUZEOztBQUdBLE1BQU1vQixLQUFLLEdBQUdELFFBQVEsRUFBdEI7O0FBRUEsbUJBQXdDLHFCQUFTO0FBQy9DRSxJQUFBQSxJQUFJLEVBQUU7QUFDSkMsTUFBQUEsSUFBSSxFQUFFLEVBREY7QUFFSlgsTUFBQUEsS0FBSyxFQUFFO0FBRkgsS0FEeUM7QUFLL0NZLElBQUFBLFFBQVEsRUFBRTtBQUNSRCxNQUFBQSxJQUFJLEVBQUUsRUFERTtBQUVSWCxNQUFBQSxLQUFLLEVBQUU7QUFGQyxLQUxxQztBQVMvQ2EsSUFBQUEsSUFBSSxFQUFFO0FBQ0pGLE1BQUFBLElBQUksRUFBRSxFQURGO0FBRUpYLE1BQUFBLEtBQUssRUFBRTtBQUZILEtBVHlDO0FBYS9DYyxJQUFBQSxVQUFVLEVBQUU7QUFDVkgsTUFBQUEsSUFBSSxFQUFFLEVBREk7QUFFVlgsTUFBQUEsS0FBSyxFQUFFO0FBRkcsS0FibUM7QUFpQi9DZSxJQUFBQSxJQUFJLEVBQUVDLFNBakJ5QztBQWtCL0NDLElBQUFBLFFBQVEsRUFBRTtBQUNSTixNQUFBQSxJQUFJLEVBQUUsRUFERTtBQUVSWCxNQUFBQSxLQUFLLEVBQUUsc0JBRkM7QUFHUmtCLE1BQUFBLE1BQU0sRUFBRTtBQUhBO0FBbEJxQyxHQUFULENBQXhDO0FBQUE7QUFBQSxNQUFPQyxZQUFQO0FBQUEsTUFBcUJDLGVBQXJCOztBQXdCQSxNQUFNQyxVQUFVLEdBQUcsNkJBQ2pCLFVBQUNDLEtBQUQ7QUFBQSxXQUEwQ0EsS0FBSyxDQUFDQyxnQkFBTixDQUF1QkYsVUFBakU7QUFBQSxHQURpQixDQUFuQjtBQUlBLE1BQU1HLE9BQU8sR0FBRyxpQ0FBaEI7O0FBRUEsTUFBTUMsWUFBWSxHQUFHLFNBQWZBLFlBQWUsQ0FBQ0MsY0FBRCxFQUF5QjtBQUM1Q3RCLElBQUFBLE9BQU8sQ0FBQ3NCLGNBQWMsQ0FBQzFDLEtBQWhCLENBQVA7QUFDQXVCLElBQUFBLFFBQVEsQ0FBQyxnQ0FBa0I7QUFBRW9CLE1BQUFBLEVBQUUsRUFBRUQsY0FBYyxDQUFDMUMsS0FBckI7QUFBNEIrQixNQUFBQSxJQUFJLEVBQUU7QUFBbEMsS0FBbEIsQ0FBRCxDQUFSO0FBQ0FTLElBQUFBLE9BQU8sQ0FBQ0ksSUFBUixZQUNNUCxVQUFVLENBQUNOLElBRGpCLDJCQUNzQ00sVUFBVSxDQUFDUSxNQURqRCxpQ0FDOEVILGNBQWMsQ0FBQzFDLEtBRDdGO0FBR0QsR0FORDs7QUFRQSxNQUFNOEMsT0FBTyxHQUFHLFNBQVZBLE9BQVUsQ0FBQ0MsR0FBRCxFQUFjO0FBQzVCLFFBQUlDLEtBQVksR0FBRyxFQUFuQjs7QUFDQSxTQUFLLElBQU1DLFFBQVgsSUFBdUJGLEdBQXZCLEVBQTRCO0FBQzFCLFVBQUlBLEdBQUcsQ0FBQ0UsUUFBRCxDQUFILENBQWNDLFVBQWxCLEVBQThCO0FBQzVCRixRQUFBQSxLQUFLLENBQUNKLElBQU4sZUFDRSw2QkFBQywyQkFBRDtBQUNFLFVBQUEsR0FBRyxFQUFFRyxHQUFHLENBQUNFLFFBQUQsQ0FBSCxDQUFjakMsS0FEckI7QUFFRSxVQUFBLEtBQUssRUFBRW1DLGNBQUtDLENBQUwsQ0FBT0wsR0FBRyxDQUFDRSxRQUFELENBQUgsQ0FBY2pDLEtBQXJCLENBRlQ7QUFHRSxVQUFBLEVBQUUsRUFBQztBQUhMLFdBS0c4QixPQUFPLENBQUNDLEdBQUcsQ0FBQ0UsUUFBRCxDQUFILENBQWNJLFNBQWYsQ0FMVixDQURGO0FBU0QsT0FWRCxNQVVPO0FBQ0wsWUFBSU4sR0FBRyxDQUFDRSxRQUFELENBQUgsQ0FBY0ssS0FBZCxLQUF3QixhQUE1QixFQUEyQztBQUN6Q04sVUFBQUEsS0FBSyxDQUFDSixJQUFOLGVBQ0UsNkJBQUMsZ0JBQUQ7QUFDRSxZQUFBLEdBQUcsRUFBRUcsR0FBRyxDQUFDRSxRQUFELENBQUgsQ0FBY3RCLElBRHJCO0FBRUUsWUFBQSxTQUFTLEVBQUMsZUFGWjtBQUdFLFlBQUEsRUFBRSxFQUFFb0IsR0FBRyxDQUFDRSxRQUFELENBQUgsQ0FBY3RCO0FBSHBCLGFBS0d3QixjQUFLQyxDQUFMLENBQU9MLEdBQUcsQ0FBQ0UsUUFBRCxDQUFILENBQWNqQyxLQUFyQixDQUxILENBREY7QUFTRCxTQVZELE1BVU87QUFDTGdDLFVBQUFBLEtBQUssQ0FBQ0osSUFBTixlQUNFLDZCQUFDLDJCQUFELENBQWEsSUFBYjtBQUNFLFlBQUEsR0FBRyxFQUFFRyxHQUFHLENBQUNFLFFBQUQsQ0FBSCxDQUFjdEIsSUFEckI7QUFFRSxZQUFBLElBQUksRUFBRW9CLEdBQUcsQ0FBQ0UsUUFBRCxDQUFILENBQWN0QixJQUZ0QjtBQUdFLFlBQUEsRUFBRSxFQUFDO0FBSEwsYUFLR3dCLGNBQUtDLENBQUwsQ0FBT0wsR0FBRyxDQUFDRSxRQUFELENBQUgsQ0FBY2pDLEtBQXJCLENBTEgsQ0FERjtBQVNEO0FBQ0Y7QUFDRjs7QUFFRCxXQUFPZ0MsS0FBUDtBQUNELEdBdkNEOztBQXlDQSxNQUFNTyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQXFCLEdBQU07QUFDL0IsUUFBSXRDLG1CQUFtQixLQUFLZSxTQUE1QixFQUF1QztBQUNyQyxVQUFJd0IsR0FBRyxHQUFHdkMsbUJBQW1CLENBQUNGLFNBQTlCO0FBQ0EsMEJBQ0U7QUFDRSxRQUFBLEdBQUcsRUFBQyxTQUROO0FBRUUsUUFBQSxHQUFHLEVBQUV5QyxHQUFHLENBQUNDLFVBQUosQ0FBZSxTQUFmLElBQTRCQyxrQkFBNUIsR0FBd0RGLEdBRi9EO0FBR0UsUUFBQSxLQUFLLEVBQUU7QUFBRUcsVUFBQUEsTUFBTSxFQUFFLE1BQVY7QUFBa0JDLFVBQUFBLEtBQUssRUFBRTtBQUF6QjtBQUhULFFBREY7QUFPRCxLQVRELE1BU087QUFDTDtBQUNEO0FBQ0YsR0FiRDs7QUFlQSxNQUFNQyxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQW9CLEdBQU07QUFDOUIsUUFBSWhELGdCQUFnQixLQUFLbUIsU0FBckIsSUFBa0NuQixnQkFBZ0IsQ0FBQ2lELE1BQWpCLEtBQTRCLENBQWxFLEVBQXFFO0FBQ25FLFVBQUlqRCxnQkFBZ0IsQ0FBQ2lELE1BQWpCLEtBQTRCLENBQWhDLEVBQW1DO0FBQ2pDLDRCQUNFO0FBQUcsVUFBQSxTQUFTLEVBQUU7QUFBZCxXQUNHN0MsbUJBQW1CLENBQUNELEtBRHZCLENBREY7QUFLRDs7QUFFRCwwQkFDRSw2QkFBQywyQkFBRDtBQUNFLFFBQUEsS0FBSyxFQUFFQyxtQkFBbUIsS0FBSyxJQUF4QixHQUErQkEsbUJBQW1CLENBQUNELEtBQW5ELEdBQTJELEVBRHBFO0FBRUUsUUFBQSxFQUFFLEVBQUM7QUFGTCxzQkFJRSw2QkFBQywyQkFBRCxDQUFhLFFBQWI7QUFBc0IsUUFBQSxLQUFLLEVBQUU7QUFBRTRDLFVBQUFBLEtBQUssRUFBRTtBQUFUO0FBQTdCLHNCQUNFLDZCQUFDLG9CQUFEO0FBQ0UsUUFBQSxTQUFTLEVBQUMsY0FEWjtBQUVFLFFBQUEsZUFBZSxFQUFDLFFBRmxCO0FBR0UsUUFBQSxZQUFZLEVBQUUsSUFIaEI7QUFJRSxRQUFBLElBQUksRUFBQyxPQUpQO0FBS0UsUUFBQSxPQUFPLEVBQUUvQyxnQkFBZ0IsQ0FBQ2tELEdBQWpCLENBQXFCLFVBQUM5QyxtQkFBRCxFQUE4QjtBQUMxRCxpQkFBTztBQUNMakIsWUFBQUEsS0FBSyxFQUFFaUIsbUJBQW1CLENBQUMwQixFQUR0QjtBQUVMM0IsWUFBQUEsS0FBSyxFQUFFQyxtQkFBbUIsQ0FBQ2M7QUFGdEIsV0FBUDtBQUlELFNBTFEsQ0FMWDtBQVdFLFFBQUEsY0FBYyxFQUFFLHdCQUFDZCxtQkFBRDtBQUFBLGlCQUNkQSxtQkFBbUIsQ0FBQ0QsS0FETjtBQUFBLFNBWGxCLENBY0U7QUFkRjtBQWVFLFFBQUEsUUFBUSxFQUFFLGtCQUFDZ0QsQ0FBRDtBQUFBLGlCQUFldkIsWUFBWSxDQUFDdUIsQ0FBRCxDQUEzQjtBQUFBO0FBZlosUUFERixDQUpGLENBREY7QUEwQkQ7O0FBRUQ7QUFDRCxHQXZDRDs7QUF5Q0EsTUFBTUMsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFvQixDQUFDQyxXQUFELEVBQXlCO0FBQ2pELFFBQUkvQixZQUFZLEtBQUtILFNBQXJCLEVBQWdDO0FBQzlCO0FBQ0EsMEJBQ0UsNkJBQUMsMkJBQUQ7QUFDRSxRQUFBLFVBQVUsTUFEWjtBQUVFLFFBQUEsU0FBUyxFQUFFLDBCQUZiO0FBR0UsUUFBQSxFQUFFLEVBQUMsb0JBSEw7QUFJRSxRQUFBLEtBQUssZUFDSDtBQUFLLFVBQUEsU0FBUyxFQUFFO0FBQWhCLHdCQUNFO0FBQUssVUFBQSxHQUFHLEVBQUVtQyxhQUFWO0FBQWtCLFVBQUEsR0FBRyxFQUFDO0FBQXRCLFVBREYsZUFFRTtBQUFNLFVBQUEsU0FBUyxFQUFFO0FBQWpCLHFCQUNNaEIsY0FBS0MsQ0FBTCxDQUFPLG1CQUFQLENBRE4sY0FFSWpCLFlBQVksQ0FBQ0osSUFBYixLQUFzQkMsU0FBdEIsR0FDSW1CLGNBQUtDLENBQUwsQ0FBTyxtQkFBUCxDQURKLEdBRUksT0FBT2pCLFlBQVksQ0FBQ0osSUFKNUIsRUFGRjtBQUxKLHNCQWlCRSw2QkFBQywyQkFBRCxDQUFhLElBQWI7QUFBa0IsUUFBQSxJQUFJLEVBQUVJLFlBQVksQ0FBQ0wsVUFBYixDQUF3Qkg7QUFBaEQsU0FDR3dCLGNBQUtDLENBQUwsQ0FBTyx3QkFBUCxDQURILENBakJGLGVBb0JFLDZCQUFDLDJCQUFELENBQWEsSUFBYjtBQUNFLFFBQUEsSUFBSSxFQUFFakIsWUFBWSxDQUFDVCxJQUFiLENBQWtCQyxJQUQxQjtBQUVFLFFBQUEsR0FBRyxFQUFFUSxZQUFZLENBQUNULElBQWIsQ0FBa0JDO0FBRnpCLFNBSUd3QixjQUFLQyxDQUFMLENBQU8sMEJBQVAsQ0FKSCxDQXBCRixlQTBCRSw2QkFBQywyQkFBRCxDQUFhLElBQWI7QUFDRSxRQUFBLElBQUksRUFBRWpCLFlBQVksQ0FBQ1AsUUFBYixDQUFzQkQsSUFEOUI7QUFFRSxRQUFBLEdBQUcsRUFBRVEsWUFBWSxDQUFDUCxRQUFiLENBQXNCRDtBQUY3QixTQUlHd0IsY0FBS0MsQ0FBTCxDQUFPLHNCQUFQLENBSkgsQ0ExQkYsZUFnQ0UsNkJBQUMsMkJBQUQsQ0FBYSxJQUFiO0FBQ0UsUUFBQSxJQUFJLEVBQUVqQixZQUFZLENBQUNOLElBQWIsQ0FBa0JGLElBRDFCO0FBRUUsUUFBQSxHQUFHLEVBQUVRLFlBQVksQ0FBQ04sSUFBYixDQUFrQkY7QUFGekIsU0FJR3dCLGNBQUtDLENBQUwsQ0FBTyxrQkFBUCxDQUpILENBaENGLGVBc0NFLDZCQUFDLDJCQUFELENBQWEsT0FBYixPQXRDRixlQXVDRSw2QkFBQywyQkFBRCxDQUFhLElBQWI7QUFBa0IsUUFBQSxJQUFJLEVBQUV0RCxVQUFVLENBQUMsUUFBRCxFQUFXLElBQVg7QUFBbEMsU0FDRyxTQURILENBdkNGLGVBMENFLDZCQUFDLDJCQUFELENBQWEsSUFBYjtBQUFrQixRQUFBLElBQUksRUFBRUEsVUFBVSxDQUFDLFFBQUQsRUFBVyxPQUFYO0FBQWxDLFNBQ0csY0FESCxDQTFDRixlQTZDRSw2QkFBQywyQkFBRCxDQUFhLElBQWI7QUFBa0IsUUFBQSxJQUFJLEVBQUVBLFVBQVUsQ0FBQyxRQUFELEVBQVcsSUFBWDtBQUFsQyxTQUNHLE9BREgsQ0E3Q0YsZUFnREUsNkJBQUMsMkJBQUQsQ0FBYSxJQUFiO0FBQWtCLFFBQUEsSUFBSSxFQUFFQSxVQUFVLENBQUMsUUFBRCxFQUFXLElBQVg7QUFBbEMsU0FDRyxVQURILENBaERGLGVBbURFLDZCQUFDLDJCQUFELENBQWEsSUFBYjtBQUFrQixRQUFBLElBQUksRUFBRUEsVUFBVSxDQUFDLFFBQUQsRUFBVyxJQUFYO0FBQWxDLFNBQ0csVUFESCxDQW5ERixlQXNERSw2QkFBQywyQkFBRCxDQUFhLE9BQWIsT0F0REYsZUF1REUsNkJBQUMsMkJBQUQsQ0FBYSxJQUFiO0FBQ0UsUUFBQSxJQUFJLEVBQUVxQyxZQUFZLENBQUNGLFFBQWIsQ0FBc0JOLElBRDlCO0FBRUUsdUJBQWFRLFlBQVksQ0FBQ0YsUUFBYixDQUFzQkM7QUFGckMsU0FJR2lCLGNBQUtDLENBQUwsQ0FBT2pCLFlBQVksQ0FBQ0YsUUFBYixDQUFzQmpCLEtBQTdCLENBSkgsQ0F2REYsQ0FERjtBQWdFRDs7QUFFRDtBQUNELEdBdEVEOztBQXdFQSx3QkFBVSxZQUFNO0FBQ2QsUUFBSTZCLE1BQU0sR0FBR3BCLEtBQUssQ0FBQzJDLEdBQU4sQ0FBVSxRQUFWLEtBQXVCLElBQXBDO0FBQ0FDLElBQUFBLEtBQUssbURBQTRDbEQsSUFBNUMscUJBQTJEMEIsTUFBM0QsRUFBTCxDQUNHeUIsSUFESCxDQUNRLFVBQUNDLFFBQUQ7QUFBQSxhQUFjQSxRQUFRLENBQUNDLElBQVQsRUFBZDtBQUFBLEtBRFIsRUFFR0YsSUFGSCxDQUVRLFVBQUNFLElBQUQsRUFBVTtBQUNkMUQsTUFBQUEsbUJBQW1CLENBQUMwRCxJQUFJLENBQUNDLGlCQUFOLENBQW5CO0FBQ0FuRCxNQUFBQSxPQUFPLENBQUNrRCxJQUFJLENBQUNuRCxJQUFOLENBQVA7QUFDQUUsTUFBQUEsUUFBUSxDQUNOLGdDQUFrQjtBQUNoQm9CLFFBQUFBLEVBQUUsRUFBRTZCLElBQUksQ0FBQ0UsZUFBTCxDQUFxQjFFLEtBRFQ7QUFFaEIrQixRQUFBQSxJQUFJLEVBQUV5QyxJQUFJLENBQUNFLGVBQUwsQ0FBcUIxRDtBQUZYLE9BQWxCLENBRE0sQ0FBUjtBQU1BRSxNQUFBQSxzQkFBc0IsQ0FBQ3NELElBQUksQ0FBQ0UsZUFBTixDQUF0QixDQVRjLENBU2dDOztBQUM5Q2xGLE1BQUFBLGVBQWUsQ0FBQ2dGLElBQUksQ0FBQ0UsZUFBTCxDQUFxQjFELEtBQXRCLENBQWY7QUFDQW9CLE1BQUFBLGVBQWUsQ0FBQ29DLElBQUksQ0FBQ0csYUFBTixDQUFmO0FBQ0QsS0FkSDtBQWdCQSxXQUFPLFNBQVNDLE9BQVQsR0FBbUI7QUFDeEI5RCxNQUFBQSxtQkFBbUIsQ0FBQyxFQUFELENBQW5CO0FBQ0FRLE1BQUFBLE9BQU8sQ0FBQyxFQUFELENBQVA7QUFDRCxLQUhEO0FBSUQsR0F0QkQsRUFzQkcsQ0FBQ0gsSUFBRCxDQXRCSDtBQXdCQSxzQkFDRSw2QkFBQyxjQUFELENBQU8sUUFBUCxxQkFDRSw2QkFBQyxzQkFBRCxxQkFDRSw2QkFBQyxzQkFBRDtBQUFRLElBQUEsTUFBTSxFQUFDLElBQWY7QUFBb0IsSUFBQSxTQUFTLEVBQUU7QUFBL0Isa0JBQ0UsNkJBQUMsc0JBQUQsQ0FBUSxNQUFSO0FBQWUscUJBQWM7QUFBN0IsSUFERixlQUVFLDZCQUFDLHNCQUFELENBQVEsS0FBUjtBQUFjLElBQUEsU0FBUyxFQUFFO0FBQXpCLGtCQUNFO0FBQUssSUFBQSxHQUFHLEVBQUUwRCxtQkFBVjtBQUFxQixJQUFBLEdBQUcsRUFBQztBQUF6QixJQURGLENBRkYsZUFLRSw2QkFBQyxzQkFBRCxDQUFRLEtBQVI7QUFBYyxJQUFBLFNBQVMsRUFBRTtBQUF6QixLQUNHdEIsa0JBQWtCLEVBRHJCLENBTEYsRUFRR1UsaUJBQWlCLENBQUM1QixVQUFVLENBQUNOLElBQVosQ0FScEIsZUFTRSw2QkFBQyxzQkFBRCxDQUFRLFFBQVI7QUFBaUIsSUFBQSxFQUFFLEVBQUM7QUFBcEIsa0JBQ0UsNkJBQUMsbUJBQUQ7QUFBSyxJQUFBLEtBQUssRUFBRTtBQUFFK0MsTUFBQUEsS0FBSyxFQUFFO0FBQVQ7QUFBWixLQUNHaEMsT0FBTyxDQUFDekIsSUFBRCxDQUFQLENBQWMwQyxHQUFkLENBQWtCLFVBQUNnQixJQUFELEVBQVU7QUFDM0IsV0FBT0EsSUFBUDtBQUNELEdBRkEsQ0FESCxlQUlFO0FBQUssSUFBQSxTQUFTLEVBQUU7QUFBaEIsa0JBQ0UsNkJBQUMsaUNBQUQ7QUFBaUIsSUFBQSxJQUFJLEVBQUVDO0FBQXZCLElBREYsRUFFR25CLGlCQUFpQixFQUZwQixDQUpGLENBREYsQ0FURixDQURGLENBREYsQ0FERjtBQTRCRCxDQXRSRDs7QUF1UkFsRCxXQUFXLENBQUNoQixZQUFaLEdBQTJCQSxZQUEzQjtlQUVlZ0IsVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZhVGludCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBOYXYsIE5hdmJhciwgTmF2RHJvcGRvd24gfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlTG9jYXRpb24gfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCBTZWxlY3QgZnJvbSAncmVhY3Qtc2VsZWN0JztcbmltcG9ydCBLYW5kb0xvZ28gZnJvbSAnc3JjL2Fzc2V0cy9rYW5kb19sb2dvLnBuZyc7XG5pbXBvcnQgV2F0ZXJBdXRob3JpdHlNaXNzaW5nSWNvbiBmcm9tICdzcmMvYXNzZXRzL21pc3NpbmcvYXV0aG9yaXR5LnBuZyc7XG5pbXBvcnQgQXZhdGFyIGZyb20gJ3NyYy9hc3NldHMvdXNlci5zdmcnO1xuaW1wb3J0IHsgTGluayB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0xpbmtzL1N0eWxlZExpbmsvU3R5bGVkTGluayc7XG5pbXBvcnQgeyBzZXRXYXRlckF1dGhvcml0eSB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnc3JjL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJ3NyYy91dGlsaXRpZXMvRXJyb3JCb3VuZGFyeSc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0ICcuL05hdmJhclN0eWxlLnNjc3MnO1xuXG5jb25zdCB1cGRhdGVQYWdlVGl0bGUgPSAodGl0bGU6IHN0cmluZykgPT5cbiAgKGRvY3VtZW50LnRpdGxlID0gYEthbmRvIC0gJHt0aXRsZX1gKTtcblxudHlwZSBJUHJvcHMgPSB7XG4gIHdhdGVyQXV0aG9yaXR5SWQ6IG51bWJlcjtcbiAgc2VsZWN0ZWRMYWJlbD86IHN0cmluZztcbiAgaGFzU2VhcmNoPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IGRlZmF1bHRQcm9wcyA9IHtcbiAgc2VsZWN0ZWRMYWJlbDogJycsXG4gIGhhc1NlYXJjaDogZmFsc2UsXG59O1xuXG5mdW5jdGlvbiByZXBsYWNlVVJMKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gIGxldCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpO1xuICBwYXJhbXMuc2V0KGtleSwgdmFsdWUpO1xuICByZXR1cm4gKFxuICAgIHdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCArXG4gICAgJy8vJyArXG4gICAgd2luZG93LmxvY2F0aW9uLmhvc3QgK1xuICAgIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSArXG4gICAgJz8nICtcbiAgICBwYXJhbXMudG9TdHJpbmcoKVxuICApO1xufVxuXG5jb25zdCBLYW5kb05hdmJhciA9ICh7XG4gIHdhdGVyQXV0aG9yaXR5SWQsXG4gIHNlbGVjdGVkTGFiZWwsXG4gIGhhc1NlYXJjaCxcbn06IElQcm9wcykgPT4ge1xuICBjb25zdCBbd2F0ZXJBdXRob3JpdGllcywgc2V0V2F0ZXJBdXRob3JpdGllc10gPSB1c2VTdGF0ZShbXSk7XG4gIGNvbnN0IFtsb2NhbFdhdGVyQXV0aG9yaXR5LCBzZXRMb2NhbFdhdGVyQXV0aG9yaXR5XSA9IHVzZVN0YXRlKHtcbiAgICBwaG90b191cmw6ICdtaXNzaW5nJyxcbiAgICBsYWJlbDogJycsXG4gIH0pO1xuICBjb25zdCBbd2FJZCwgc2V0V2FJZF0gPSB1c2VTdGF0ZSh3YXRlckF1dGhvcml0eUlkKTtcbiAgY29uc3QgW21lbnUsIHNldE1lbnVdID0gdXNlU3RhdGUoe30pO1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG5cbiAgY29uc3QgdXNlUXVlcnkgPSAoKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBVUkxTZWFyY2hQYXJhbXModXNlTG9jYXRpb24oKS5zZWFyY2gpO1xuICB9O1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5KCk7XG5cbiAgY29uc3QgW2N1c3RvbWVyTWVudSwgc2V0Q3VzdG9tZXJNZW51XSA9IHVzZVN0YXRlKHtcbiAgICBlZGl0OiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4uZWRpdF9hY2NvdW50JyxcbiAgICB9LFxuICAgIGZlZWRiYWNrOiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4uZmVlZGJhY2snLFxuICAgIH0sXG4gICAgaGVscDoge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLmhlbHAnLFxuICAgIH0sXG4gICAgbXlfcHJvZmlsZToge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLm15X3Byb2ZpbGUnLFxuICAgIH0sXG4gICAgbmFtZTogdW5kZWZpbmVkLFxuICAgIHNpZ25fb3V0OiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4uc2lnbl9vdXQnLFxuICAgICAgbWV0aG9kOiAnJyxcbiAgICB9LFxuICB9KTtcbiAgY29uc3QgbmF2Q29udGV4dCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLm5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dCxcbiAgKTtcblxuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChzZWxlY3RlZE9wdGlvbjogYW55KSA9PiB7XG4gICAgc2V0V2FJZChzZWxlY3RlZE9wdGlvbi52YWx1ZSk7XG4gICAgZGlzcGF0Y2goc2V0V2F0ZXJBdXRob3JpdHkoeyBpZDogc2VsZWN0ZWRPcHRpb24udmFsdWUsIG5hbWU6ICcnIH0pKTtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgLyR7bmF2Q29udGV4dC5uYW1lfS9pbmRleD9sb2NhbGU9JHtuYXZDb250ZXh0LmxvY2FsZX0md2F0ZXJfYXV0aG9yaXR5X2lkPSR7c2VsZWN0ZWRPcHRpb24udmFsdWV9YCxcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGl0ZXJhdGUgPSAob2JqOiBhbnkpID0+IHtcbiAgICBsZXQgaXRlbXM6IGFueVtdID0gW107XG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBvYmopIHtcbiAgICAgIGlmIChvYmpbcHJvcGVydHldLmV4cGFuZGFibGUpIHtcbiAgICAgICAgaXRlbXMucHVzaChcbiAgICAgICAgICA8TmF2RHJvcGRvd25cbiAgICAgICAgICAgIGtleT17b2JqW3Byb3BlcnR5XS5sYWJlbH1cbiAgICAgICAgICAgIHRpdGxlPXtpMThuLnQob2JqW3Byb3BlcnR5XS5sYWJlbCl9XG4gICAgICAgICAgICBpZD1cImJhc2ljLW5hdi1kcm9wZG93blwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge2l0ZXJhdGUob2JqW3Byb3BlcnR5XS5leHBhbnNpb24pfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24+LFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKG9ialtwcm9wZXJ0eV0uY2xhc3MgPT09ICdqcy1pcy1yZWFjdCcpIHtcbiAgICAgICAgICBpdGVtcy5wdXNoKFxuICAgICAgICAgICAgPExpbmtcbiAgICAgICAgICAgICAga2V5PXtvYmpbcHJvcGVydHldLmxpbmt9XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cImRyb3Bkb3duLWl0ZW1cIlxuICAgICAgICAgICAgICB0bz17b2JqW3Byb3BlcnR5XS5saW5rfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KG9ialtwcm9wZXJ0eV0ubGFiZWwpfVxuICAgICAgICAgICAgPC9MaW5rPixcbiAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGl0ZW1zLnB1c2goXG4gICAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVxuICAgICAgICAgICAgICBrZXk9e29ialtwcm9wZXJ0eV0ubGlua31cbiAgICAgICAgICAgICAgaHJlZj17b2JqW3Byb3BlcnR5XS5saW5rfVxuICAgICAgICAgICAgICBpZD1cImJhc2ljLW5hdmJhci1uYXZcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KG9ialtwcm9wZXJ0eV0ubGFiZWwpfVxuICAgICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPixcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGl0ZW1zO1xuICB9O1xuXG4gIGNvbnN0IHJlbmRlckNsaWVudHNQaG90byA9ICgpID0+IHtcbiAgICBpZiAobG9jYWxXYXRlckF1dGhvcml0eSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBsZXQgdXJsID0gbG9jYWxXYXRlckF1dGhvcml0eS5waG90b191cmwhIGFzIHN0cmluZztcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxpbWdcbiAgICAgICAgICBhbHQ9XCJtaXNzaW5nXCJcbiAgICAgICAgICBzcmM9e3VybC5zdGFydHNXaXRoKCdtaXNzaW5nJykgPyBXYXRlckF1dGhvcml0eU1pc3NpbmdJY29uIDogdXJsfVxuICAgICAgICAgIHN0eWxlPXt7IGhlaWdodDogJzQwcHgnLCB3aWR0aDogJ2F1dG8nIH19XG4gICAgICAgIC8+XG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGJ1aWxkU3dpdGNoQ2xpZW50ID0gKCkgPT4ge1xuICAgIGlmICh3YXRlckF1dGhvcml0aWVzICE9PSB1bmRlZmluZWQgJiYgd2F0ZXJBdXRob3JpdGllcy5sZW5ndGggIT09IDApIHtcbiAgICAgIGlmICh3YXRlckF1dGhvcml0aWVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxwIGNsYXNzTmFtZT17J3dhdGVyLWF1dGhvcml0eS1zaW5nbGUtbGFiZWwnfT5cbiAgICAgICAgICAgIHtsb2NhbFdhdGVyQXV0aG9yaXR5LmxhYmVsfVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPE5hdkRyb3Bkb3duXG4gICAgICAgICAgdGl0bGU9e2xvY2FsV2F0ZXJBdXRob3JpdHkgIT09IG51bGwgPyBsb2NhbFdhdGVyQXV0aG9yaXR5LmxhYmVsIDogJyd9XG4gICAgICAgICAgaWQ9XCJiYXNpYy1uYXYtZHJvcGRvd25cIlxuICAgICAgICA+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1UZXh0IHN0eWxlPXt7IHdpZHRoOiAnMzAwcHgnIH19PlxuICAgICAgICAgICAgPFNlbGVjdFxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJiYXNpYy1zaW5nbGVcIlxuICAgICAgICAgICAgICBjbGFzc05hbWVQcmVmaXg9XCJzZWxlY3RcIlxuICAgICAgICAgICAgICBpc1NlYXJjaGFibGU9e3RydWV9XG4gICAgICAgICAgICAgIG5hbWU9XCJjb2xvclwiXG4gICAgICAgICAgICAgIG9wdGlvbnM9e3dhdGVyQXV0aG9yaXRpZXMubWFwKChsb2NhbFdhdGVyQXV0aG9yaXR5OiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgdmFsdWU6IGxvY2FsV2F0ZXJBdXRob3JpdHkuaWQsXG4gICAgICAgICAgICAgICAgICBsYWJlbDogbG9jYWxXYXRlckF1dGhvcml0eS5uYW1lLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICBnZXRPcHRpb25MYWJlbD17KGxvY2FsV2F0ZXJBdXRob3JpdHk6IGFueSkgPT5cbiAgICAgICAgICAgICAgICBsb2NhbFdhdGVyQXV0aG9yaXR5LmxhYmVsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICBvbkNoYW5nZT17KGU6IE9iamVjdCkgPT4gaGFuZGxlQ2hhbmdlKGUpfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW1UZXh0PlxuICAgICAgICA8L05hdkRyb3Bkb3duPlxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH07XG5cbiAgY29uc3QgYnVpbGRDdXN0b21lck1lbnUgPSAoY29udGV4dE5hbWU6IHN0cmluZykgPT4ge1xuICAgIGlmIChjdXN0b21lck1lbnUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPE5hdkRyb3Bkb3duXG4gICAgICAgICAgYWxpZ25SaWdodFxuICAgICAgICAgIGNsYXNzTmFtZT17J2N1c3RvbWVyLW1lbnUgb3JkZXItc20tMyd9XG4gICAgICAgICAgaWQ9XCJiYXNpYy1uYXYtZHJvcGRvd25cIlxuICAgICAgICAgIHRpdGxlPXtcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnY3VzdG9tZXItbWVudV9fY29udGVudCd9PlxuICAgICAgICAgICAgICA8aW1nIHNyYz17QXZhdGFyfSBhbHQ9XCJhdmF0YXJcIj48L2ltZz5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnZ3JlZXRpbmcnfT5cbiAgICAgICAgICAgICAgICB7YCR7aTE4bi50KCdtYWluX3NjcmVlbi5oZWxsbycpfSAke1xuICAgICAgICAgICAgICAgICAgY3VzdG9tZXJNZW51Lm5hbWUgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgICAgICA/IGkxOG4udCgnbWFpbl9zY3JlZW4udGhlcmUnKVxuICAgICAgICAgICAgICAgICAgICA6ICcsICcgKyBjdXN0b21lck1lbnUubmFtZVxuICAgICAgICAgICAgICAgIH1gfVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgID5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtjdXN0b21lck1lbnUubXlfcHJvZmlsZS5saW5rfT5cbiAgICAgICAgICAgIHtpMThuLnQoJ21haW5fc2NyZWVuLm15X3Byb2ZpbGUnKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgIGhyZWY9e2N1c3RvbWVyTWVudS5lZGl0Lmxpbmt9XG4gICAgICAgICAgICBrZXk9e2N1c3RvbWVyTWVudS5lZGl0Lmxpbmt9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udCgnbWFpbl9zY3JlZW4uZWRpdF9hY2NvdW50Jyl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICBocmVmPXtjdXN0b21lck1lbnUuZmVlZGJhY2subGlua31cbiAgICAgICAgICAgIGtleT17Y3VzdG9tZXJNZW51LmZlZWRiYWNrLmxpbmt9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udCgnbWFpbl9zY3JlZW4uZmVlZGJhY2snKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgIGhyZWY9e2N1c3RvbWVyTWVudS5oZWxwLmxpbmt9XG4gICAgICAgICAgICBrZXk9e2N1c3RvbWVyTWVudS5oZWxwLmxpbmt9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udCgnbWFpbl9zY3JlZW4uaGVscCcpfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uRGl2aWRlciAvPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdlbicpfT5cbiAgICAgICAgICAgIHsnRW5nbGlzaCd9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdlbl91aycpfT5cbiAgICAgICAgICAgIHsnRW5nbGlzaCAoVUspJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17cmVwbGFjZVVSTCgnbG9jYWxlJywgJ2hlJyl9PlxuICAgICAgICAgICAgeyfXoteR16jXmdeqJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17cmVwbGFjZVVSTCgnbG9jYWxlJywgJ2ZyJyl9PlxuICAgICAgICAgICAgeydGcmFuw6dhaXMnfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtyZXBsYWNlVVJMKCdsb2NhbGUnLCAnaXQnKX0+XG4gICAgICAgICAgICB7J0l0YWxpYW5vJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkRpdmlkZXIgLz5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVxuICAgICAgICAgICAgaHJlZj17Y3VzdG9tZXJNZW51LnNpZ25fb3V0Lmxpbmt9XG4gICAgICAgICAgICBkYXRhLW1ldGhvZD17Y3VzdG9tZXJNZW51LnNpZ25fb3V0Lm1ldGhvZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7aTE4bi50KGN1c3RvbWVyTWVudS5zaWduX291dC5sYWJlbCl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICA8L05hdkRyb3Bkb3duPlxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBsZXQgbG9jYWxlID0gcXVlcnkuZ2V0KCdsb2NhbGUnKSB8fCAnZW4nO1xuICAgIGZldGNoKGAvZGF0YS9tZW51X2RhdGEuanNvbj93YXRlcl9hdXRob3JpdHlfaWQ9JHt3YUlkfSZsb2NhbGU9JHtsb2NhbGV9YClcbiAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuanNvbigpKVxuICAgICAgLnRoZW4oKGpzb24pID0+IHtcbiAgICAgICAgc2V0V2F0ZXJBdXRob3JpdGllcyhqc29uLndhdGVyX2F1dGhvcml0aWVzKTtcbiAgICAgICAgc2V0TWVudShqc29uLm1lbnUpO1xuICAgICAgICBkaXNwYXRjaChcbiAgICAgICAgICBzZXRXYXRlckF1dGhvcml0eSh7XG4gICAgICAgICAgICBpZDoganNvbi53YXRlcl9hdXRob3JpdHkudmFsdWUsXG4gICAgICAgICAgICBuYW1lOiBqc29uLndhdGVyX2F1dGhvcml0eS5sYWJlbCxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgICAgc2V0TG9jYWxXYXRlckF1dGhvcml0eShqc29uLndhdGVyX2F1dGhvcml0eSk7IC8vIGFkZCB0byBTdG9yZVxuICAgICAgICB1cGRhdGVQYWdlVGl0bGUoanNvbi53YXRlcl9hdXRob3JpdHkubGFiZWwpO1xuICAgICAgICBzZXRDdXN0b21lck1lbnUoanNvbi5jdXN0b21lcl9tZW51KTtcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICBzZXRXYXRlckF1dGhvcml0aWVzKFtdKTtcbiAgICAgIHNldE1lbnUoe30pO1xuICAgIH07XG4gIH0sIFt3YUlkXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICA8RXJyb3JCb3VuZGFyeT5cbiAgICAgICAgPE5hdmJhciBleHBhbmQ9XCJzbVwiIGNsYXNzTmFtZT17J2p1c3RpZnktY29udGVudC1iZXR3ZWVuJ30+XG4gICAgICAgICAgPE5hdmJhci5Ub2dnbGUgYXJpYS1jb250cm9scz1cImJhc2ljLW5hdmJhci1uYXZcIiAvPlxuICAgICAgICAgIDxOYXZiYXIuQnJhbmQgY2xhc3NOYW1lPXsnbG9nbyd9PlxuICAgICAgICAgICAgPGltZyBzcmM9e0thbmRvTG9nb30gYWx0PVwia2FuZG8tbG9nb1wiPjwvaW1nPlxuICAgICAgICAgIDwvTmF2YmFyLkJyYW5kPlxuICAgICAgICAgIDxOYXZiYXIuQnJhbmQgY2xhc3NOYW1lPXsnY2xpZW50LWxvZ28nfT5cbiAgICAgICAgICAgIHtyZW5kZXJDbGllbnRzUGhvdG8oKX1cbiAgICAgICAgICA8L05hdmJhci5CcmFuZD5cbiAgICAgICAgICB7YnVpbGRDdXN0b21lck1lbnUobmF2Q29udGV4dC5uYW1lKX1cbiAgICAgICAgICA8TmF2YmFyLkNvbGxhcHNlIGlkPVwiYmFzaWMtbmF2YmFyLW5hdlwiPlxuICAgICAgICAgICAgPE5hdiBzdHlsZT17eyBjb2xvcjogJ2JsdWUnIH19PlxuICAgICAgICAgICAgICB7aXRlcmF0ZShtZW51KS5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnc3dpdGNoLWNsaWVudC1jb250YWluZXInfT5cbiAgICAgICAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhVGludH0gLz5cbiAgICAgICAgICAgICAgICB7YnVpbGRTd2l0Y2hDbGllbnQoKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L05hdj5cbiAgICAgICAgICA8L05hdmJhci5Db2xsYXBzZT5cbiAgICAgICAgICB7fVxuICAgICAgICA8L05hdmJhcj5cbiAgICAgIDwvRXJyb3JCb3VuZGFyeT5cbiAgICA8L1JlYWN0LkZyYWdtZW50PlxuICApO1xufTtcbkthbmRvTmF2YmFyLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcblxuZXhwb3J0IGRlZmF1bHQgS2FuZG9OYXZiYXI7XG4iXX0=
|