@kando-env/kando-ui 1.2.351 → 1.2.352

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (576) hide show
  1. package/lib/Router.js +36 -73
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +23 -33
  3. package/lib/Widgets/EventsRow/EventsRow.js +25 -37
  4. package/lib/Widgets/Map/GraphUtils.js +3 -3
  5. package/lib/Widgets/Map/Map.js +66 -83
  6. package/lib/Widgets/Map/MapUtils.js +40 -39
  7. package/lib/Widgets/Map/areas/AreaPolygon.js +52 -76
  8. package/lib/Widgets/Map/areas/AreaPolygons.js +23 -24
  9. package/lib/Widgets/Map/areas/AreaUtils.js +46 -46
  10. package/lib/Widgets/Map/areas/Patterns.js +4 -4
  11. package/lib/Widgets/Map/edges/Edge.js +24 -31
  12. package/lib/Widgets/Map/edges/Edges.js +19 -23
  13. package/lib/Widgets/Map/edges/arrows/Arrows.js +23 -44
  14. package/lib/Widgets/Map/events/Event.js +17 -17
  15. package/lib/Widgets/Map/events/EventIndicator.js +57 -52
  16. package/lib/Widgets/Map/events/EventPath.js +24 -22
  17. package/lib/Widgets/Map/events/EventUtils.js +55 -78
  18. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +17 -18
  19. package/lib/Widgets/Map/events/PointOfEvent.js +29 -34
  20. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +30 -37
  21. package/lib/Widgets/Map/events/Snail.js +19 -20
  22. package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +93 -86
  23. package/lib/Widgets/Map/map/FloatingGraph.js +22 -18
  24. package/lib/Widgets/Map/map/GraphDateButton.js +25 -17
  25. package/lib/Widgets/Map/matchGraph/MatchGraph.js +13 -12
  26. package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +16 -15
  27. package/lib/Widgets/Map/points/PointIcon.js +15 -13
  28. package/lib/Widgets/Map/points/PointMarker.js +71 -87
  29. package/lib/Widgets/Map/points/PointMarkers.js +45 -66
  30. package/lib/Widgets/Map/points/PointUtils.js +69 -75
  31. package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +28 -45
  32. package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +11 -10
  33. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +10 -11
  34. package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +3 -3
  35. package/lib/Widgets/MostPolluting/Areas/Areas.js +28 -57
  36. package/lib/Widgets/MostPolluting/Areas/areas.mock.js +3 -3
  37. package/lib/Widgets/MostPolluting/Areas/styles.js +3 -3
  38. package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +11 -8
  39. package/lib/Widgets/MostPolluting/Factories/Factories.js +33 -64
  40. package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +14 -17
  41. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +7 -7
  42. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +12 -10
  43. package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +3 -3
  44. package/lib/Widgets/MostPolluting/Factories/factories.mock.js +2 -2
  45. package/lib/Widgets/MostPolluting/Factories/styles.js +3 -3
  46. package/lib/Widgets/MostPolluting/MostPolluting.js +21 -27
  47. package/lib/Widgets/MostPolluting/MostPolluting.stories.js +18 -22
  48. package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +6 -4
  49. package/lib/Widgets/MostPolluting/ShowMore/styles.js +6 -4
  50. package/lib/Widgets/MostPolluting/assets/index.js +10 -10
  51. package/lib/Widgets/MostPolluting/components/ChangePercent.js +19 -13
  52. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +35 -30
  53. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +34 -31
  54. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +39 -35
  55. package/lib/Widgets/MostPolluting/components/PotentialImpact.js +27 -26
  56. package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +51 -47
  57. package/lib/Widgets/MostPolluting/styles.js +3 -3
  58. package/lib/Widgets/PotentialImpactSummary/Back/Back.js +7 -5
  59. package/lib/Widgets/PotentialImpactSummary/Icon.js +8 -6
  60. package/lib/Widgets/PotentialImpactSummary/index.js +19 -27
  61. package/lib/Widgets/PotentialImpactSummary/index.test.js +47 -52
  62. package/lib/Widgets/PotentialImpactSummary/styles.js +7 -7
  63. package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +9 -7
  64. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +22 -17
  65. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +35 -32
  66. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +26 -24
  67. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +35 -37
  68. package/lib/Widgets/QualitySummary/QualitySummary.js +9 -13
  69. package/lib/Widgets/QualitySummary/qualitySummary.mock.js +4 -4
  70. package/lib/Widgets/QualitySummary/styles.js +23 -15
  71. package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +12 -13
  72. package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +25 -24
  73. package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +29 -24
  74. package/lib/Widgets/UtilityInformation/UtilityInformation.js +23 -40
  75. package/lib/Widgets/UtilityInformation/styles.js +31 -22
  76. package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +3 -3
  77. package/lib/assets/icons/TopNavbar/index.js +6 -6
  78. package/lib/assets/icons/TrendSvg.js +6 -6
  79. package/lib/assets/icons/index.js +15 -15
  80. package/lib/assets/icons/kandoStepper/index.js +5 -5
  81. package/lib/assets/icons/siteTypes/index.js +1 -1
  82. package/lib/components/ApplyButton/ApplyButton.js +8 -8
  83. package/lib/components/Backdrop/Backdrop.js +6 -4
  84. package/lib/components/ContentLoader/ContentLoader.js +11 -9
  85. package/lib/components/ContentLoader/index.js +1 -1
  86. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +10 -9
  87. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +3 -5
  88. package/lib/components/CustomInputs/DoubleTabs/styles.js +20 -12
  89. package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +12 -19
  90. package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +6 -4
  91. package/lib/components/CustomInputs/Search/Search.js +39 -60
  92. package/lib/components/CustomInputs/Select/Select.js +42 -55
  93. package/lib/components/CustomInputs/Select/Select.stories.js +4 -6
  94. package/lib/components/DamageType/DamageType.js +34 -56
  95. package/lib/components/DataLoaderError/DataLoaderError.js +8 -6
  96. package/lib/components/DischargeHeatmap/DischargeHeatmap.js +9 -10
  97. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +70 -71
  98. package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +27 -37
  99. package/lib/components/DischargeHeatmap/HighchartsOptions.js +10 -12
  100. package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -3
  101. package/lib/components/DischargeHeatmap/popupText.js +9 -9
  102. package/lib/components/DischargeHeatmap/titles.js +3 -3
  103. package/lib/components/ErrorBoundary.js +27 -41
  104. package/lib/components/Events/Events.js +28 -45
  105. package/lib/components/Graph/Graph.js +67 -86
  106. package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +17 -21
  107. package/lib/components/Header/DoubleTabs/DoubleTabs.js +18 -26
  108. package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +3 -5
  109. package/lib/components/Header/DoubleTabs/styles.js +4 -4
  110. package/lib/components/Header/Header.js +2 -2
  111. package/lib/components/Header/Header.stories.js +3 -5
  112. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +82 -197
  113. package/lib/components/Header/InfoBar/InfoBar.js +66 -95
  114. package/lib/components/Header/InfoBar/Search/Control.js +9 -9
  115. package/lib/components/Header/InfoBar/Search/GroupLabel.js +6 -4
  116. package/lib/components/Header/InfoBar/Search/Search.js +14 -19
  117. package/lib/components/Header/InfoBar/Search/SearchContainer.js +15 -27
  118. package/lib/components/Header/InfoBar/Search/searchStyle.js +41 -49
  119. package/lib/components/Header/InfoBar/TimeFilter.js +11 -14
  120. package/lib/components/Header/KandoNavbar/KandoNavbar.js +62 -87
  121. package/lib/components/Header/Slideshow/Slideshow.js +67 -89
  122. package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +6 -4
  123. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +21 -23
  124. package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +13 -13
  125. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +35 -41
  126. package/lib/components/Header/Toolbar/Toolbar.js +55 -74
  127. package/lib/components/InfoBar/InfoBar.js +10 -23
  128. package/lib/components/InfoBar/InfoBar.stories.js +3 -5
  129. package/lib/components/KandoModal/KandoModal.js +23 -37
  130. package/lib/components/Link.js +8 -7
  131. package/lib/components/Links/CustomRedirect/CustomRedirect.js +9 -8
  132. package/lib/components/Links/StyledLink/StyledLink.js +12 -12
  133. package/lib/components/Links/StyledNavLink/StyledNavLink.js +11 -10
  134. package/lib/components/LiveEvents/CarouselSlide.js +9 -7
  135. package/lib/components/LiveEvents/LiveEvents.js +5 -3
  136. package/lib/components/LoaderByPercent/LoaderByPercent.js +36 -28
  137. package/lib/components/Map/Map.js +19 -22
  138. package/lib/components/Modal/Modal.js +9 -9
  139. package/lib/components/NarrowHeader.js +17 -31
  140. package/lib/components/PointInfo/PointInfo.js +18 -16
  141. package/lib/components/PopupModal/PopupModal.js +12 -16
  142. package/lib/components/PopupModal/PopupModal.stories.js +15 -19
  143. package/lib/components/Sector/Sector.js +8 -6
  144. package/lib/components/Sector/Sector.test.js +19 -20
  145. package/lib/components/Sector/sectorIcons.js +2 -2
  146. package/lib/components/SevereEvent/Eta/Eta.js +48 -51
  147. package/lib/components/SevereEvent/Eta/styles.js +10 -6
  148. package/lib/components/SevereEvent/SevereEvent.js +27 -34
  149. package/lib/components/Spinner/Spinner.js +7 -7
  150. package/lib/components/Spinner/Spinner.stories.js +4 -6
  151. package/lib/components/Spinner/styles.js +20 -12
  152. package/lib/components/Tabs/Tabs.js +18 -27
  153. package/lib/components/Tabs/Tabs.stories.js +4 -6
  154. package/lib/components/Tabs/assets/index.js +5 -5
  155. package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +12 -15
  156. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +34 -45
  157. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +19 -31
  158. package/lib/components/TimeRangeSelector/TimeRangeHelper.js +16 -21
  159. package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +11 -11
  160. package/lib/components/TimeRangeSelector/TimeRangeList.js +23 -24
  161. package/lib/components/TimeRangeSelector/TimeRangeOptions.js +16 -24
  162. package/lib/components/TimeRangeSelector/TimeRangeSelector.js +28 -29
  163. package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +4 -6
  164. package/lib/components/TimeRangeSelector/constants.js +3 -3
  165. package/lib/components/Toggle/Toggle.js +10 -15
  166. package/lib/components/TrendGraph/TrendGraph.js +22 -38
  167. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +24 -30
  168. package/lib/development-environment/index.js +8 -12
  169. package/lib/development-environment/mock/browser.js +2 -4
  170. package/lib/development-environment/mock/get.js +8 -10
  171. package/lib/development-environment/mock/handlers.js +2 -2
  172. package/lib/development-environment/mock/mockBus.js +4 -4
  173. package/lib/development-environment/mock/mockObjects/area-trends-graph.js +2 -2
  174. package/lib/development-environment/mock/mockObjects/areaInformation.js +2 -2
  175. package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +2 -2
  176. package/lib/development-environment/mock/mockObjects/areaSitesData.js +2 -2
  177. package/lib/development-environment/mock/mockObjects/areasJson.js +2 -2
  178. package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +2 -2
  179. package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +2 -2
  180. package/lib/development-environment/mock/mockObjects/data-menuData.js +2 -2
  181. package/lib/development-environment/mock/mockObjects/data-search.js +2 -2
  182. package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +2 -2
  183. package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +2 -2
  184. package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +2 -2
  185. package/lib/development-environment/mock/mockObjects/eventsJson.js +2 -2
  186. package/lib/development-environment/mock/mockObjects/metascore.js +2 -2
  187. package/lib/development-environment/mock/mockObjects/permissionsJson.js +2 -2
  188. package/lib/development-environment/mock/mockObjects/pointsJson.js +2 -2
  189. package/lib/development-environment/mock/mockObjects/site-info.js +2 -2
  190. package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +2 -2
  191. package/lib/development-environment/togly/ToglyDashboard.js +13 -22
  192. package/lib/development-environment/togly/ToglyItem.js +25 -28
  193. package/lib/development-environment/togly/init.js +2 -2
  194. package/lib/development-environment/togly/macro.js +13 -9
  195. package/lib/development-environment/togly/useDoubleKeyDown.js +7 -9
  196. package/lib/development-environment/togly/useLocalStorage.js +13 -18
  197. package/lib/hooks/useApi.js +19 -55
  198. package/lib/hooks/useApiWithDashboardQuery.js +30 -49
  199. package/lib/hooks/useClickOutside.js +3 -3
  200. package/lib/hooks/useInitializeHeaders.js +5 -5
  201. package/lib/hooks/useKandoFetch.js +15 -28
  202. package/lib/hooks/useMap.js +22 -34
  203. package/lib/hooks/useNavContext.js +22 -26
  204. package/lib/hooks/useRemoveExistingLayers.js +6 -6
  205. package/lib/hooks/useUpdateEventBodyTail.js +13 -17
  206. package/lib/hooks/useUserTimeZone.js +33 -30
  207. package/lib/hooks/useUserTimeZone.test.js +19 -22
  208. package/lib/hooks/useWindowSize.js +7 -14
  209. package/lib/index.js +11 -12
  210. package/lib/macros/getVersion.js +2 -2
  211. package/lib/pages/AreaPage/AreaPage.js +34 -67
  212. package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +15 -16
  213. package/lib/pages/AreaPage/Dashboard/Dashboard.js +23 -24
  214. package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +17 -25
  215. package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +4 -4
  216. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +7 -7
  217. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +9 -9
  218. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +3 -3
  219. package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +2 -2
  220. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +4 -4
  221. package/lib/pages/AssessmentPage/AssessmentPage.js +37 -43
  222. package/lib/pages/CannyWidget/Feedback.js +13 -13
  223. package/lib/pages/CovidPage/CovidPage.js +8 -13
  224. package/lib/pages/CovidPage/components/Body.js +25 -27
  225. package/lib/pages/CovidPage/components/Map.js +27 -37
  226. package/lib/pages/CovidPage/components/Sidebar.js +14 -13
  227. package/lib/pages/CovidPage/components/Summary.js +19 -26
  228. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +24 -30
  229. package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +51 -73
  230. package/lib/pages/CovidPage/components/areas/Area.js +24 -35
  231. package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +44 -43
  232. package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +32 -35
  233. package/lib/pages/CovidPage/components/areas/AreasList.js +29 -41
  234. package/lib/pages/CovidPage/components/areas/Sort.js +11 -14
  235. package/lib/pages/CovidPage/components/nvlStatusHelper.js +11 -11
  236. package/lib/pages/DashboardMap/AreaCard.js +26 -26
  237. package/lib/pages/DashboardMap/AssessmentIcon.js +7 -6
  238. package/lib/pages/DashboardMap/Capacity.js +34 -85
  239. package/lib/pages/DashboardMap/FactoryCard.js +28 -24
  240. package/lib/pages/DashboardMap/HighchartsOptions.js +5 -4
  241. package/lib/pages/DashboardMap/List.js +68 -94
  242. package/lib/pages/DashboardMap/ListContext.js +15 -19
  243. package/lib/pages/DashboardMap/Loader.js +2 -2
  244. package/lib/pages/DashboardMap/SeverityBadge.js +10 -18
  245. package/lib/pages/DashboardMap/WWTPMap.js +49 -59
  246. package/lib/pages/DashboardMap/WaterDischarge.js +8 -8
  247. package/lib/pages/DashboardMap/Widget.js +53 -70
  248. package/lib/pages/DashboardMap/utils.js +41 -50
  249. package/lib/pages/EventsPage/Body/Body.js +20 -15
  250. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +17 -19
  251. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +27 -35
  252. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +8 -6
  253. package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +11 -7
  254. package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +21 -30
  255. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +52 -63
  256. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +17 -23
  257. package/lib/pages/EventsPage/EventsPage.js +7 -10
  258. package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +25 -37
  259. package/lib/pages/EventsPage/events/MoreInfo.js +17 -16
  260. package/lib/pages/EventsPage/events/Sidebar.js +21 -16
  261. package/lib/pages/EventsPage/events/event_info/Contaminants/Contaminants.js +7 -7
  262. package/lib/pages/EventsPage/events/event_info/Contaminants/ContaminantsList.js +17 -20
  263. package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +30 -35
  264. package/lib/pages/EventsPage/events/event_info/EventDetails.js +32 -29
  265. package/lib/pages/EventsPage/events/event_info/EventInfo.js +41 -40
  266. package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +4 -4
  267. package/lib/pages/EventsPage/events/event_info/EventSection.js +16 -18
  268. package/lib/pages/EventsPage/events/event_info/EventSection.test.js +43 -38
  269. package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +38 -46
  270. package/lib/pages/EventsPage/events/event_info/Header/Header.js +6 -4
  271. package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +28 -31
  272. package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +4 -4
  273. package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +29 -36
  274. package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +4 -6
  275. package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +22 -21
  276. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResult.js +12 -19
  277. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResultButton.js +5 -3
  278. package/lib/pages/EventsPage/events/event_info/SamplingList/SamplingDetails.js +11 -9
  279. package/lib/pages/EventsPage/events/event_info/SamplingList/Samplings.js +21 -25
  280. package/lib/pages/EventsPage/events/event_info/SeverityScore/ScoreExplanation.js +11 -7
  281. package/lib/pages/EventsPage/events/event_info/SeverityScore/SeverityScore.js +6 -6
  282. package/lib/pages/EventsPage/events/event_info/SourceDetails/Confidence.js +5 -3
  283. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.js +2 -2
  284. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.test.js +12 -10
  285. package/lib/pages/EventsPage/events/event_info/SourceDetails/IconAndTitles.js +6 -4
  286. package/lib/pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton.js +10 -12
  287. package/lib/pages/EventsPage/events/event_info/SourceDetails/OtherSources.js +5 -3
  288. package/lib/pages/EventsPage/events/event_info/SourceDetails/PotentialSources.js +7 -5
  289. package/lib/pages/EventsPage/events/event_info/SourceDetails/SingleSource.js +7 -5
  290. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceCardBody.js +6 -4
  291. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.js +11 -9
  292. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.test.js +15 -15
  293. package/lib/pages/EventsPage/events/event_info/SourceDetails/WaterDischarge.js +6 -6
  294. package/lib/pages/EventsPage/events/event_info/Timelines/DischargeBox.js +7 -5
  295. package/lib/pages/EventsPage/events/event_info/Timelines/EarlyWarning.js +17 -15
  296. package/lib/pages/EventsPage/events/event_info/Timelines/LiveStatusBadge.js +4 -4
  297. package/lib/pages/EventsPage/events/event_info/Timelines/SeenBox.js +10 -8
  298. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.js +16 -11
  299. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.test.js +9 -8
  300. package/lib/pages/EventsPage/events/event_info/Timelines/Titles.js +2 -2
  301. package/lib/pages/EventsPage/events/event_info/Timelines/style.js +3 -3
  302. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +24 -37
  303. package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +29 -36
  304. package/lib/pages/EventsPage/events/event_info/samplingsOld/Sampling.js +11 -9
  305. package/lib/pages/EventsPage/events/event_info/samplingsOld/Samplings.js +15 -17
  306. package/lib/pages/EventsPage/events/event_info/sources/Source.js +25 -28
  307. package/lib/pages/EventsPage/events/event_info/sources/Sources.js +21 -24
  308. package/lib/pages/EventsPage/events/event_info/styles.js +20 -12
  309. package/lib/pages/EventsPage/events/events_list/EventItem.js +17 -18
  310. package/lib/pages/EventsPage/events/events_list/EventUtils.js +10 -10
  311. package/lib/pages/EventsPage/events/events_list/EventsList.js +113 -134
  312. package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +38 -53
  313. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +72 -108
  314. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +52 -69
  315. package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +38 -41
  316. package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +29 -36
  317. package/lib/pages/EventsPage/events/events_list/Sort.js +13 -16
  318. package/lib/pages/ImportFileWizard/FileUploadRespones.js +12 -19
  319. package/lib/pages/ImportFileWizard/ImportButtomButtons.js +6 -4
  320. package/lib/pages/ImportFileWizard/ImportFile.js +20 -22
  321. package/lib/pages/ImportFileWizard/ResponseBody.js +24 -33
  322. package/lib/pages/ImportFileWizard/ValidationForm.js +21 -20
  323. package/lib/pages/ImportFileWizard/ValidationResponse.js +21 -21
  324. package/lib/pages/ImportFileWizard/importFileUtils.js +1 -1
  325. package/lib/pages/ImportGisPage/ImportGisContainer.js +21 -24
  326. package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +21 -23
  327. package/lib/pages/ImportGisPage/importGisUtils.js +12 -20
  328. package/lib/pages/ImportGisProcess/index.js +12 -15
  329. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +7 -12
  330. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +17 -19
  331. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +3 -3
  332. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +28 -57
  333. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +6 -8
  334. package/lib/pages/NotificationsPage/Notification/Notification.js +16 -12
  335. package/lib/pages/NotificationsPage/Notifications.mock.js +2 -2
  336. package/lib/pages/NotificationsPage/Notifications.stories.js +4 -6
  337. package/lib/pages/NotificationsPage/NotificationsPage.js +18 -36
  338. package/lib/pages/NotificationsPage/assets/index.js +9 -9
  339. package/lib/pages/NotificationsPageV2/NotificationsPage.js +70 -93
  340. package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +93 -62
  341. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +126 -137
  342. package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +71 -71
  343. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +90 -87
  344. package/lib/pages/NotificationsPageV2/notificationUtils.js +39 -33
  345. package/lib/pages/OldSitePage/OldSitePage.js +56 -131
  346. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +5 -5
  347. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +3 -5
  348. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +8 -6
  349. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +18 -20
  350. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +9 -7
  351. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +12 -18
  352. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +16 -12
  353. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +3 -5
  354. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +17 -11
  355. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +51 -63
  356. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +9 -7
  357. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +29 -53
  358. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +4 -4
  359. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +10 -12
  360. package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +11 -10
  361. package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +10 -11
  362. package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +26 -22
  363. package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +26 -28
  364. package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +4 -4
  365. package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +15 -9
  366. package/lib/pages/ProfilePage/Container.js +2 -2
  367. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +23 -39
  368. package/lib/pages/ProfilePage/ProfilePage.js +111 -199
  369. package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +25 -33
  370. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +18 -15
  371. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +23 -25
  372. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +56 -116
  373. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +17 -20
  374. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +12 -10
  375. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +38 -40
  376. package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +25 -26
  377. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +16 -16
  378. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +13 -15
  379. package/lib/pages/SamplingsPage/NavigationDropdown.js +42 -29
  380. package/lib/pages/SamplingsPage/NewSamplingAction.js +73 -97
  381. package/lib/pages/SamplingsPage/SamplingMobileModal.js +123 -97
  382. package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +21 -22
  383. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +34 -22
  384. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +33 -56
  385. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +15 -18
  386. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +8 -6
  387. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +107 -191
  388. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +47 -53
  389. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +42 -38
  390. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +42 -38
  391. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +19 -20
  392. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +3 -3
  393. package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +10 -6
  394. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +51 -52
  395. package/lib/pages/SamplingsPage/SamplingsMobileList.js +21 -28
  396. package/lib/pages/SamplingsPage/SamplingsPage.js +25 -31
  397. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +49 -57
  398. package/lib/pages/SamplingsPage/samplingsPageUtils.js +67 -75
  399. package/lib/pages/SitePage/DischargePattern/DischargePattern.js +6 -4
  400. package/lib/pages/SitePage/PollutionContributor/PollutionContributor.js +14 -13
  401. package/lib/pages/SitePage/PollutionContributor/PollutionContributorContainer.js +10 -13
  402. package/lib/pages/SitePage/PollutionContributor/contributorUtils.js +16 -16
  403. package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +3 -5
  404. package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +14 -10
  405. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +9 -8
  406. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +26 -23
  407. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +14 -17
  408. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +36 -32
  409. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +9 -7
  410. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +15 -24
  411. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +16 -12
  412. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +3 -5
  413. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +17 -11
  414. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +58 -70
  415. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +9 -7
  416. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +15 -26
  417. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +5 -5
  418. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +10 -12
  419. package/lib/pages/SitePage/SamplingParameters/body/Body.js +8 -8
  420. package/lib/pages/SitePage/SamplingParameters/body/BodyContainer.js +29 -37
  421. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +11 -11
  422. package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +10 -11
  423. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +53 -53
  424. package/lib/pages/SitePage/SamplingParameters/dataParser.js +29 -38
  425. package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +11 -9
  426. package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +4 -4
  427. package/lib/pages/SitePage/SamplingParameters/styles/styles.js +15 -9
  428. package/lib/pages/SitePage/SiteInformation/EmptyState.js +11 -7
  429. package/lib/pages/SitePage/SiteInformation/SiteInformation.js +31 -31
  430. package/lib/pages/SitePage/SitePage.js +34 -73
  431. package/lib/pages/UploadLabResult/index.js +13 -13
  432. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +26 -35
  433. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +6 -8
  434. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +9 -8
  435. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +3 -5
  436. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +46 -47
  437. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +10 -6
  438. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +2 -2
  439. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +4 -6
  440. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +10 -9
  441. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +15 -12
  442. package/lib/pages/UtilityDashboardPage/TopBar/constants.js +7 -7
  443. package/lib/pages/UtilityDashboardPage/TopBar/styles.js +2 -2
  444. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +16 -24
  445. package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +26 -30
  446. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +15 -16
  447. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +7 -13
  448. package/lib/pages/UtilityDashboardPage/VirtualAreaDashboardPage.js +26 -30
  449. package/lib/pages/WbeDashboard/ExpandableComponent.js +9 -8
  450. package/lib/pages/WbeDashboard/GraphWrapper.js +28 -34
  451. package/lib/pages/WbeDashboard/IndividualTinyGraph.js +17 -19
  452. package/lib/pages/WbeDashboard/SearchInput.js +15 -20
  453. package/lib/pages/WbeDashboard/SummaryGraph.js +50 -76
  454. package/lib/pages/WbeDashboard/SummaryGraphModal.js +19 -17
  455. package/lib/pages/WbeDashboard/Tabs.js +10 -10
  456. package/lib/pages/WbeDashboard/WbeDashboardPage.js +144 -206
  457. package/lib/pages/WbeDashboard/WbeSummaryBar.js +39 -47
  458. package/lib/pages/WwtpPage/DashboardCard.js +23 -20
  459. package/lib/pages/WwtpPage/DischargePatternCard.js +14 -23
  460. package/lib/pages/WwtpPage/InletsCard/InletsBar.js +25 -21
  461. package/lib/pages/WwtpPage/InletsCard/InletsCard.js +19 -18
  462. package/lib/pages/WwtpPage/Map.js +5 -3
  463. package/lib/pages/WwtpPage/OrganicCard.js +2 -2
  464. package/lib/pages/WwtpPage/PotentialSaving/ImpactCard.js +2 -2
  465. package/lib/pages/WwtpPage/PotentialSaving/PotentialItem.js +6 -4
  466. package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +9 -8
  467. package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +18 -14
  468. package/lib/pages/WwtpPage/PredictionCard.js +2 -2
  469. package/lib/pages/WwtpPage/TrendCard.js +18 -19
  470. package/lib/pages/WwtpPage/UpgradeBox.js +2 -2
  471. package/lib/pages/WwtpPage/WwtpPage.js +7 -7
  472. package/lib/pages/WwtpPage/WwtpPageContainer.js +21 -16
  473. package/lib/providers/Slideshow/SlideshowContext.js +11 -9
  474. package/lib/providers/Slideshow/SlideshowProvider.js +22 -38
  475. package/lib/providers/Slideshow/SlideshowRunner.js +17 -19
  476. package/lib/providers/UrlHistory/UrlHistoryContext.js +6 -4
  477. package/lib/providers/UrlHistory/UrlHistoryProvider.js +12 -11
  478. package/lib/providers/UrlHistory/index.js +2 -2
  479. package/lib/providers/UrlHistory/useLastVisited.js +4 -4
  480. package/lib/store/ImportGis/actionTypes.js +1 -1
  481. package/lib/store/ImportGis/actionsCreator.js +7 -5
  482. package/lib/store/ImportGis/reducer.js +40 -29
  483. package/lib/store/WBE/actionTypes.js +2 -2
  484. package/lib/store/WBE/reducer.js +13 -9
  485. package/lib/store/WWTPDashboard/WWTPDashboardSlice.js +24 -14
  486. package/lib/store/areas/actionTypes.js +4 -4
  487. package/lib/store/areas/actions.js +7 -13
  488. package/lib/store/areas/reducer.js +8 -6
  489. package/lib/store/context/actionTypes.js +3 -3
  490. package/lib/store/context/actions.js +3 -3
  491. package/lib/store/context/contextMiddlewares.js +14 -16
  492. package/lib/store/context/reducer.js +13 -9
  493. package/lib/store/dashboard/dashboardSlice.js +18 -10
  494. package/lib/store/edges/actionTypes.js +5 -5
  495. package/lib/store/edges/actions.js +4 -8
  496. package/lib/store/edges/reducer.js +13 -17
  497. package/lib/store/events/actionTypes.js +17 -17
  498. package/lib/store/events/actions.js +3 -7
  499. package/lib/store/events/reducer.js +42 -49
  500. package/lib/store/global/actionTypes.js +11 -11
  501. package/lib/store/global/actions.js +8 -6
  502. package/lib/store/global/reducer.js +11 -10
  503. package/lib/store/permissions/permissionsSlice.js +12 -8
  504. package/lib/store/points/actionTypes.js +3 -3
  505. package/lib/store/points/actions.js +3 -7
  506. package/lib/store/points/reducer.js +7 -5
  507. package/lib/store/rootActionTypes.js +2 -2
  508. package/lib/store/rootReducer.js +17 -12
  509. package/lib/store/rootStore.js +5 -5
  510. package/lib/store/samplings/actionTypes.js +1 -1
  511. package/lib/store/samplings/reducer.js +16 -14
  512. package/lib/styles/StylesLayout.js +5 -3
  513. package/lib/styles/theme/theme.js +26 -27
  514. package/lib/test/mocks/browser.js +2 -4
  515. package/lib/test/test-utils.js +17 -15
  516. package/lib/ui-kit/Button/Button.js +127 -79
  517. package/lib/ui-kit/Button/Button.test.js +24 -29
  518. package/lib/ui-kit/Checkbox/Checkbox.js +30 -20
  519. package/lib/ui-kit/ContentCard/ContentCard.js +14 -17
  520. package/lib/ui-kit/Dashboard/Dashboard.js +22 -19
  521. package/lib/ui-kit/DropDown/DropDown.js +22 -23
  522. package/lib/ui-kit/DropDown/DropDown.test.js +12 -12
  523. package/lib/ui-kit/DropDown/DropDownItem.js +24 -21
  524. package/lib/ui-kit/DropDown/DropdownToggle.js +12 -8
  525. package/lib/ui-kit/EmptyState/EmptyState.js +5 -3
  526. package/lib/ui-kit/IconAction/IconAction.js +7 -5
  527. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +46 -62
  528. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +57 -48
  529. package/lib/ui-kit/InletsPie/InletsPie.js +15 -13
  530. package/lib/ui-kit/InletsPie/options.js +6 -6
  531. package/lib/ui-kit/KandoList/KandoList.js +14 -12
  532. package/lib/ui-kit/KandoTable/KandoTable.js +48 -40
  533. package/lib/ui-kit/KandoTable/KandoTable.test.js +16 -22
  534. package/lib/ui-kit/Layout/Layout.js +6 -4
  535. package/lib/ui-kit/MobileInput/MobileInput.js +55 -49
  536. package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +13 -16
  537. package/lib/ui-kit/OrganicEvents/GaugeChart.js +7 -5
  538. package/lib/ui-kit/OrganicEvents/OrganicEvents.js +6 -6
  539. package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +27 -20
  540. package/lib/ui-kit/OrganicEvents/TextInfo.js +15 -10
  541. package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +10 -8
  542. package/lib/ui-kit/SamplingStatus/SamplingStatus.js +14 -17
  543. package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +3 -3
  544. package/lib/ui-kit/ScoreGauge/ScoreGauge.js +19 -19
  545. package/lib/ui-kit/ScoreGauge/constant.js +3 -3
  546. package/lib/ui-kit/TimeLineChart/TrendChart.js +54 -42
  547. package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +8 -7
  548. package/lib/ui-kit/Tooltip/Tooltip.js +14 -8
  549. package/lib/ui-kit/index.js +8 -8
  550. package/lib/ui-kit/kandoStepper/KandoStepper.js +11 -11
  551. package/lib/ui-kit/siteName/SiteName.js +11 -8
  552. package/lib/utilities/ActionUtility.js +7 -7
  553. package/lib/utilities/Alert.js +21 -17
  554. package/lib/utilities/Analytics.js +11 -11
  555. package/lib/utilities/Array.js +4 -5
  556. package/lib/utilities/Enum.js +15 -51
  557. package/lib/utilities/ErrorBoundary.js +27 -41
  558. package/lib/utilities/File.js +40 -69
  559. package/lib/utilities/GetDir.js +8 -7
  560. package/lib/utilities/KandoDate.js +7 -15
  561. package/lib/utilities/KandoModal.js +16 -26
  562. package/lib/utilities/LocalStorage.js +5 -7
  563. package/lib/utilities/ThousandsToK.js +2 -2
  564. package/lib/utilities/TimeFormat.js +21 -20
  565. package/lib/utilities/Truncate.js +16 -24
  566. package/lib/utilities/edgesMath.js +14 -15
  567. package/lib/utilities/i18n.js +3 -3
  568. package/lib/utilities/kql.js +10 -12
  569. package/lib/utilities/map/icons.js +3 -3
  570. package/lib/utilities/polylinedecorator.js +87 -112
  571. package/lib/utilities/scoreToData.js +10 -10
  572. package/lib/utilities/scoreToData.test.js +5 -5
  573. package/lib/utilities/time.js +8 -8
  574. package/lib/utilities/uploadToS3.js +11 -11
  575. package/lib/utilities/urls.js +16 -14
  576. package/package.json +1 -1
@@ -1,57 +1,49 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.default = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
9
- var searchStyle = {
10
- container: function container(css) {
11
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, css), {}, {
12
- width: '290px'
13
- });
14
- },
15
- control: function control(css) {
16
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, css), {}, {
17
- paddingInlineStart: '8px',
18
- paddingInlineEnd: '8px',
19
- backgroundColor: '#F9F7F8',
20
- border: 'none',
21
- borderRadius: '8px',
22
- ':hover': {
23
- boxShadow: 'none',
24
- boxSizing: 'border-box'
25
- }
26
- });
27
- },
28
- indicatorsContainer: function indicatorsContainer() {
7
+ const searchStyle = {
8
+ container: css => ({
9
+ ...css,
10
+ width: '290px'
11
+ }),
12
+ control: css => ({
13
+ ...css,
14
+ paddingInlineStart: '8px',
15
+ paddingInlineEnd: '8px',
16
+ backgroundColor: '#F9F7F8',
17
+ border: 'none',
18
+ borderRadius: '8px',
19
+ ':hover': {
20
+ boxShadow: 'none',
21
+ boxSizing: 'border-box'
22
+ }
23
+ }),
24
+ indicatorsContainer: () => ({
25
+ display: 'none'
26
+ }),
27
+ groupHeading: css => ({
28
+ ...css,
29
+ textTransform: 'none',
30
+ marginBottom: 0,
31
+ height: '26px',
32
+ fontSize: '13px',
33
+ fontWeight: 'normal'
34
+ }),
35
+ group: css => ({
36
+ ...css,
37
+ padding: 0,
38
+ marginTop: '8px'
39
+ }),
40
+ menu: css => ({
41
+ ...css,
42
+ zIndex: 3
43
+ }),
44
+ option: css => {
29
45
  return {
30
- display: 'none'
31
- };
32
- },
33
- groupHeading: function groupHeading(css) {
34
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, css), {}, {
35
- textTransform: 'none',
36
- marginBottom: 0,
37
- height: '26px',
38
- fontSize: '13px',
39
- fontWeight: 'normal'
40
- });
41
- },
42
- group: function group(css) {
43
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, css), {}, {
44
- padding: 0,
45
- marginTop: '8px'
46
- });
47
- },
48
- menu: function menu(css) {
49
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, css), {}, {
50
- zIndex: 3
51
- });
52
- },
53
- option: function option(css) {
54
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, css), {}, {
46
+ ...css,
55
47
  fontSize: '13px',
56
48
  lineHeight: '26px',
57
49
  width: 'auto',
@@ -59,9 +51,9 @@ var searchStyle = {
59
51
  marginInlineStart: '46px',
60
52
  marginInlineEnd: '5px',
61
53
  backgroundColor: 'transparent'
62
- });
54
+ };
63
55
  }
64
56
  };
65
57
  var _default = searchStyle;
66
58
  exports.default = _default;
67
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzZWFyY2hTdHlsZSIsImNvbnRhaW5lciIsImNzcyIsIl9vYmplY3RTcHJlYWQyIiwiZGVmYXVsdCIsIndpZHRoIiwiY29udHJvbCIsInBhZGRpbmdJbmxpbmVTdGFydCIsInBhZGRpbmdJbmxpbmVFbmQiLCJiYWNrZ3JvdW5kQ29sb3IiLCJib3JkZXIiLCJib3JkZXJSYWRpdXMiLCJib3hTaGFkb3ciLCJib3hTaXppbmciLCJpbmRpY2F0b3JzQ29udGFpbmVyIiwiZGlzcGxheSIsImdyb3VwSGVhZGluZyIsInRleHRUcmFuc2Zvcm0iLCJtYXJnaW5Cb3R0b20iLCJoZWlnaHQiLCJmb250U2l6ZSIsImZvbnRXZWlnaHQiLCJncm91cCIsInBhZGRpbmciLCJtYXJnaW5Ub3AiLCJtZW51IiwiekluZGV4Iiwib3B0aW9uIiwibGluZUhlaWdodCIsIm1hcmdpbklubGluZVN0YXJ0IiwibWFyZ2luSW5saW5lRW5kIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSGVhZGVyL0luZm9CYXIvU2VhcmNoL3NlYXJjaFN0eWxlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHNlYXJjaFN0eWxlID0ge1xuICBjb250YWluZXI6IChjc3MpID0+ICh7IC4uLmNzcywgd2lkdGg6ICcyOTBweCcgfSksXG4gIGNvbnRyb2w6IChjc3MpID0+ICh7XG4gICAgLi4uY3NzLFxuICAgIHBhZGRpbmdJbmxpbmVTdGFydDogJzhweCcsXG4gICAgcGFkZGluZ0lubGluZUVuZDogJzhweCcsXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0Y5RjdGOCcsXG4gICAgYm9yZGVyOiAnbm9uZScsXG4gICAgYm9yZGVyUmFkaXVzOiAnOHB4JyxcbiAgICAnOmhvdmVyJzoge1xuICAgICAgYm94U2hhZG93OiAnbm9uZScsXG4gICAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcbiAgICB9LFxuICB9KSxcbiAgaW5kaWNhdG9yc0NvbnRhaW5lcjogKCkgPT4gKHsgZGlzcGxheTogJ25vbmUnIH0pLFxuICBncm91cEhlYWRpbmc6IChjc3MpID0+ICh7XG4gICAgLi4uY3NzLFxuICAgIHRleHRUcmFuc2Zvcm06ICdub25lJyxcbiAgICBtYXJnaW5Cb3R0b206IDAsXG4gICAgaGVpZ2h0OiAnMjZweCcsXG4gICAgZm9udFNpemU6ICcxM3B4JyxcbiAgICBmb250V2VpZ2h0OiAnbm9ybWFsJyxcbiAgfSksXG4gIGdyb3VwOiAoY3NzKSA9PiAoeyAuLi5jc3MsIHBhZGRpbmc6IDAsIG1hcmdpblRvcDogJzhweCcgfSksXG4gIG1lbnU6IChjc3MpID0+ICh7IC4uLmNzcywgekluZGV4OiAzIH0pLFxuICBvcHRpb246IChjc3MpID0+IHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uY3NzLFxuICAgICAgZm9udFNpemU6ICcxM3B4JyxcbiAgICAgIGxpbmVIZWlnaHQ6ICcyNnB4JyxcbiAgICAgIHdpZHRoOiAnYXV0bycsXG4gICAgICBwYWRkaW5nOiAwLFxuICAgICAgbWFyZ2luSW5saW5lU3RhcnQ6ICc0NnB4JyxcbiAgICAgIG1hcmdpbklubGluZUVuZDogJzVweCcsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6ICd0cmFuc3BhcmVudCcsXG4gICAgfTtcbiAgfSxcbn07XG5leHBvcnQgZGVmYXVsdCBzZWFyY2hTdHlsZTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFNQSxXQUFXLEdBQUc7RUFDbEJDLFNBQVMsRUFBRSxTQUFBQSxVQUFDQyxHQUFHO0lBQUEsV0FBQUMsY0FBQSxDQUFBQyxPQUFBLE1BQUFELGNBQUEsQ0FBQUMsT0FBQSxNQUFXRixHQUFHO01BQUVHLEtBQUssRUFBRTtJQUFPO0VBQUEsQ0FBRztFQUNoREMsT0FBTyxFQUFFLFNBQUFBLFFBQUNKLEdBQUc7SUFBQSxXQUFBQyxjQUFBLENBQUFDLE9BQUEsTUFBQUQsY0FBQSxDQUFBQyxPQUFBLE1BQ1JGLEdBQUc7TUFDTkssa0JBQWtCLEVBQUUsS0FBSztNQUN6QkMsZ0JBQWdCLEVBQUUsS0FBSztNQUN2QkMsZUFBZSxFQUFFLFNBQVM7TUFDMUJDLE1BQU0sRUFBRSxNQUFNO01BQ2RDLFlBQVksRUFBRSxLQUFLO01BQ25CLFFBQVEsRUFBRTtRQUNSQyxTQUFTLEVBQUUsTUFBTTtRQUNqQkMsU0FBUyxFQUFFO01BQ2I7SUFBQztFQUFBLENBQ0Q7RUFDRkMsbUJBQW1CLEVBQUUsU0FBQUEsb0JBQUE7SUFBQSxPQUFPO01BQUVDLE9BQU8sRUFBRTtJQUFPLENBQUM7RUFBQSxDQUFDO0VBQ2hEQyxZQUFZLEVBQUUsU0FBQUEsYUFBQ2QsR0FBRztJQUFBLFdBQUFDLGNBQUEsQ0FBQUMsT0FBQSxNQUFBRCxjQUFBLENBQUFDLE9BQUEsTUFDYkYsR0FBRztNQUNOZSxhQUFhLEVBQUUsTUFBTTtNQUNyQkMsWUFBWSxFQUFFLENBQUM7TUFDZkMsTUFBTSxFQUFFLE1BQU07TUFDZEMsUUFBUSxFQUFFLE1BQU07TUFDaEJDLFVBQVUsRUFBRTtJQUFRO0VBQUEsQ0FDcEI7RUFDRkMsS0FBSyxFQUFFLFNBQUFBLE1BQUNwQixHQUFHO0lBQUEsV0FBQUMsY0FBQSxDQUFBQyxPQUFBLE1BQUFELGNBQUEsQ0FBQUMsT0FBQSxNQUFXRixHQUFHO01BQUVxQixPQUFPLEVBQUUsQ0FBQztNQUFFQyxTQUFTLEVBQUU7SUFBSztFQUFBLENBQUc7RUFDMURDLElBQUksRUFBRSxTQUFBQSxLQUFDdkIsR0FBRztJQUFBLFdBQUFDLGNBQUEsQ0FBQUMsT0FBQSxNQUFBRCxjQUFBLENBQUFDLE9BQUEsTUFBV0YsR0FBRztNQUFFd0IsTUFBTSxFQUFFO0lBQUM7RUFBQSxDQUFHO0VBQ3RDQyxNQUFNLEVBQUUsU0FBQUEsT0FBQ3pCLEdBQUcsRUFBSztJQUNmLFdBQUFDLGNBQUEsQ0FBQUMsT0FBQSxNQUFBRCxjQUFBLENBQUFDLE9BQUEsTUFDS0YsR0FBRztNQUNOa0IsUUFBUSxFQUFFLE1BQU07TUFDaEJRLFVBQVUsRUFBRSxNQUFNO01BQ2xCdkIsS0FBSyxFQUFFLE1BQU07TUFDYmtCLE9BQU8sRUFBRSxDQUFDO01BQ1ZNLGlCQUFpQixFQUFFLE1BQU07TUFDekJDLGVBQWUsRUFBRSxLQUFLO01BQ3RCckIsZUFBZSxFQUFFO0lBQWE7RUFFbEM7QUFDRixDQUFDO0FBQUMsSUFBQXNCLFFBQUEsR0FDYS9CLFdBQVc7QUFBQWdDLE9BQUEsQ0FBQTVCLE9BQUEsR0FBQTJCLFFBQUEifQ==
59
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzZWFyY2hTdHlsZSIsImNvbnRhaW5lciIsImNzcyIsIndpZHRoIiwiY29udHJvbCIsInBhZGRpbmdJbmxpbmVTdGFydCIsInBhZGRpbmdJbmxpbmVFbmQiLCJiYWNrZ3JvdW5kQ29sb3IiLCJib3JkZXIiLCJib3JkZXJSYWRpdXMiLCJib3hTaGFkb3ciLCJib3hTaXppbmciLCJpbmRpY2F0b3JzQ29udGFpbmVyIiwiZGlzcGxheSIsImdyb3VwSGVhZGluZyIsInRleHRUcmFuc2Zvcm0iLCJtYXJnaW5Cb3R0b20iLCJoZWlnaHQiLCJmb250U2l6ZSIsImZvbnRXZWlnaHQiLCJncm91cCIsInBhZGRpbmciLCJtYXJnaW5Ub3AiLCJtZW51IiwiekluZGV4Iiwib3B0aW9uIiwibGluZUhlaWdodCIsIm1hcmdpbklubGluZVN0YXJ0IiwibWFyZ2luSW5saW5lRW5kIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwiZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hlYWRlci9JbmZvQmFyL1NlYXJjaC9zZWFyY2hTdHlsZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBzZWFyY2hTdHlsZSA9IHtcbiAgY29udGFpbmVyOiAoY3NzKSA9PiAoeyAuLi5jc3MsIHdpZHRoOiAnMjkwcHgnIH0pLFxuICBjb250cm9sOiAoY3NzKSA9PiAoe1xuICAgIC4uLmNzcyxcbiAgICBwYWRkaW5nSW5saW5lU3RhcnQ6ICc4cHgnLFxuICAgIHBhZGRpbmdJbmxpbmVFbmQ6ICc4cHgnLFxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGOUY3RjgnLFxuICAgIGJvcmRlcjogJ25vbmUnLFxuICAgIGJvcmRlclJhZGl1czogJzhweCcsXG4gICAgJzpob3Zlcic6IHtcbiAgICAgIGJveFNoYWRvdzogJ25vbmUnLFxuICAgICAgYm94U2l6aW5nOiAnYm9yZGVyLWJveCcsXG4gICAgfSxcbiAgfSksXG4gIGluZGljYXRvcnNDb250YWluZXI6ICgpID0+ICh7IGRpc3BsYXk6ICdub25lJyB9KSxcbiAgZ3JvdXBIZWFkaW5nOiAoY3NzKSA9PiAoe1xuICAgIC4uLmNzcyxcbiAgICB0ZXh0VHJhbnNmb3JtOiAnbm9uZScsXG4gICAgbWFyZ2luQm90dG9tOiAwLFxuICAgIGhlaWdodDogJzI2cHgnLFxuICAgIGZvbnRTaXplOiAnMTNweCcsXG4gICAgZm9udFdlaWdodDogJ25vcm1hbCcsXG4gIH0pLFxuICBncm91cDogKGNzcykgPT4gKHsgLi4uY3NzLCBwYWRkaW5nOiAwLCBtYXJnaW5Ub3A6ICc4cHgnIH0pLFxuICBtZW51OiAoY3NzKSA9PiAoeyAuLi5jc3MsIHpJbmRleDogMyB9KSxcbiAgb3B0aW9uOiAoY3NzKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmNzcyxcbiAgICAgIGZvbnRTaXplOiAnMTNweCcsXG4gICAgICBsaW5lSGVpZ2h0OiAnMjZweCcsXG4gICAgICB3aWR0aDogJ2F1dG8nLFxuICAgICAgcGFkZGluZzogMCxcbiAgICAgIG1hcmdpbklubGluZVN0YXJ0OiAnNDZweCcsXG4gICAgICBtYXJnaW5JbmxpbmVFbmQ6ICc1cHgnLFxuICAgICAgYmFja2dyb3VuZENvbG9yOiAndHJhbnNwYXJlbnQnLFxuICAgIH07XG4gIH0sXG59O1xuZXhwb3J0IGRlZmF1bHQgc2VhcmNoU3R5bGU7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE1BQU1BLFdBQVcsR0FBRztFQUNsQkMsU0FBUyxFQUFHQyxHQUFHLEtBQU07SUFBRSxHQUFHQSxHQUFHO0lBQUVDLEtBQUssRUFBRTtFQUFRLENBQUMsQ0FBQztFQUNoREMsT0FBTyxFQUFHRixHQUFHLEtBQU07SUFDakIsR0FBR0EsR0FBRztJQUNORyxrQkFBa0IsRUFBRSxLQUFLO0lBQ3pCQyxnQkFBZ0IsRUFBRSxLQUFLO0lBQ3ZCQyxlQUFlLEVBQUUsU0FBUztJQUMxQkMsTUFBTSxFQUFFLE1BQU07SUFDZEMsWUFBWSxFQUFFLEtBQUs7SUFDbkIsUUFBUSxFQUFFO01BQ1JDLFNBQVMsRUFBRSxNQUFNO01BQ2pCQyxTQUFTLEVBQUU7SUFDYjtFQUNGLENBQUMsQ0FBQztFQUNGQyxtQkFBbUIsRUFBRUEsQ0FBQSxNQUFPO0lBQUVDLE9BQU8sRUFBRTtFQUFPLENBQUMsQ0FBQztFQUNoREMsWUFBWSxFQUFHWixHQUFHLEtBQU07SUFDdEIsR0FBR0EsR0FBRztJQUNOYSxhQUFhLEVBQUUsTUFBTTtJQUNyQkMsWUFBWSxFQUFFLENBQUM7SUFDZkMsTUFBTSxFQUFFLE1BQU07SUFDZEMsUUFBUSxFQUFFLE1BQU07SUFDaEJDLFVBQVUsRUFBRTtFQUNkLENBQUMsQ0FBQztFQUNGQyxLQUFLLEVBQUdsQixHQUFHLEtBQU07SUFBRSxHQUFHQSxHQUFHO0lBQUVtQixPQUFPLEVBQUUsQ0FBQztJQUFFQyxTQUFTLEVBQUU7RUFBTSxDQUFDLENBQUM7RUFDMURDLElBQUksRUFBR3JCLEdBQUcsS0FBTTtJQUFFLEdBQUdBLEdBQUc7SUFBRXNCLE1BQU0sRUFBRTtFQUFFLENBQUMsQ0FBQztFQUN0Q0MsTUFBTSxFQUFHdkIsR0FBRyxJQUFLO0lBQ2YsT0FBTztNQUNMLEdBQUdBLEdBQUc7TUFDTmdCLFFBQVEsRUFBRSxNQUFNO01BQ2hCUSxVQUFVLEVBQUUsTUFBTTtNQUNsQnZCLEtBQUssRUFBRSxNQUFNO01BQ2JrQixPQUFPLEVBQUUsQ0FBQztNQUNWTSxpQkFBaUIsRUFBRSxNQUFNO01BQ3pCQyxlQUFlLEVBQUUsS0FBSztNQUN0QnJCLGVBQWUsRUFBRTtJQUNuQixDQUFDO0VBQ0g7QUFDRixDQUFDO0FBQUMsSUFBQXNCLFFBQUEsR0FDYTdCLFdBQVc7QUFBQThCLE9BQUEsQ0FBQUMsT0FBQSxHQUFBRixRQUFBIn0=
@@ -11,17 +11,14 @@ var _Analytics = require("utilities/Analytics");
11
11
  var _dashboardSlice = require("store/dashboard/dashboardSlice");
12
12
  var _reactRedux = require("react-redux");
13
13
  var _reactRouterDom = require("react-router-dom");
14
- var TimeFilter = function TimeFilter() {
15
- var selectedTimeRange = (0, _reactRedux.useSelector)(function (state) {
16
- return state.dashboard.period;
17
- });
18
- var dispatch = (0, _reactRedux.useDispatch)();
19
- var _useSelector = (0, _reactRedux.useSelector)(function (state) {
20
- return state.global_data;
21
- }),
22
- waterAuthorityName = _useSelector.waterAuthorityName;
23
- var location = (0, _reactRouterDom.useLocation)();
24
- var _onPeriodSelected = function onPeriodSelected(period) {
14
+ const TimeFilter = () => {
15
+ const selectedTimeRange = (0, _reactRedux.useSelector)(state => state.dashboard.period);
16
+ const dispatch = (0, _reactRedux.useDispatch)();
17
+ const {
18
+ waterAuthorityName
19
+ } = (0, _reactRedux.useSelector)(state => state.global_data);
20
+ const location = (0, _reactRouterDom.useLocation)();
21
+ const onPeriodSelected = period => {
25
22
  (0, _Analytics.analyticsTrack)('Dashboard Date Clicked', {
26
23
  selection: period,
27
24
  page_name: location.pathname,
@@ -31,11 +28,11 @@ var TimeFilter = function TimeFilter() {
31
28
  };
32
29
  return /*#__PURE__*/_react.default.createElement(_TimeRangeSelector.default, {
33
30
  selectedValue: selectedTimeRange,
34
- onPeriodSelected: function onPeriodSelected(period) {
35
- _onPeriodSelected(period);
31
+ onPeriodSelected: period => {
32
+ onPeriodSelected(period);
36
33
  }
37
34
  });
38
35
  };
39
36
  var _default = TimeFilter;
40
37
  exports.default = _default;
41
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9UaW1lUmFuZ2VTZWxlY3RvciIsIl9BbmFseXRpY3MiLCJfZGFzaGJvYXJkU2xpY2UiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdFJvdXRlckRvbSIsIlRpbWVGaWx0ZXIiLCJzZWxlY3RlZFRpbWVSYW5nZSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJkYXNoYm9hcmQiLCJwZXJpb2QiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwiX3VzZVNlbGVjdG9yIiwiZ2xvYmFsX2RhdGEiLCJ3YXRlckF1dGhvcml0eU5hbWUiLCJsb2NhdGlvbiIsInVzZUxvY2F0aW9uIiwib25QZXJpb2RTZWxlY3RlZCIsImFuYWx5dGljc1RyYWNrIiwic2VsZWN0aW9uIiwicGFnZV9uYW1lIiwicGF0aG5hbWUiLCJ1dGlsaXR5X25hbWUiLCJkYXNoYm9hcmRTbGljZSIsImFjdGlvbnMiLCJzZXRQZXJpb2QiLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsInNlbGVjdGVkVmFsdWUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9IZWFkZXIvSW5mb0Jhci9UaW1lRmlsdGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgSVBlcmlvZFJhbmdlIH0gZnJvbSAnc3JjL3N0b3JlL2Rhc2hib2FyZC9wZXJpb2RUeXBlJztcbmltcG9ydCBUaW1lUmFuZ2VTZWxlY3RvciBmcm9tICcuLi8uLi9UaW1lUmFuZ2VTZWxlY3Rvcic7XG5pbXBvcnQgeyBhbmFseXRpY3NUcmFjayB9IGZyb20gJ3NyYy91dGlsaXRpZXMvQW5hbHl0aWNzJztcbmltcG9ydCB7IGRhc2hib2FyZFNsaWNlIH0gZnJvbSAnc3JjL3N0b3JlL2Rhc2hib2FyZC9kYXNoYm9hcmRTbGljZSc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VMb2NhdGlvbiB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuXG5jb25zdCBUaW1lRmlsdGVyID0gKCkgPT4ge1xuICBjb25zdCBzZWxlY3RlZFRpbWVSYW5nZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUuZGFzaGJvYXJkLnBlcmlvZCk7XG5cbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gIGNvbnN0IHsgd2F0ZXJBdXRob3JpdHlOYW1lIH0gPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlLmdsb2JhbF9kYXRhKTtcbiAgY29uc3QgbG9jYXRpb24gPSB1c2VMb2NhdGlvbigpO1xuXG4gIGNvbnN0IG9uUGVyaW9kU2VsZWN0ZWQgPSAocGVyaW9kKSA9PiB7XG4gICAgYW5hbHl0aWNzVHJhY2soJ0Rhc2hib2FyZCBEYXRlIENsaWNrZWQnLCB7XG4gICAgICBzZWxlY3Rpb246IHBlcmlvZCxcbiAgICAgIHBhZ2VfbmFtZTogbG9jYXRpb24ucGF0aG5hbWUsXG4gICAgICB1dGlsaXR5X25hbWU6IHdhdGVyQXV0aG9yaXR5TmFtZSxcbiAgICB9KTtcbiAgICBkaXNwYXRjaChkYXNoYm9hcmRTbGljZS5hY3Rpb25zLnNldFBlcmlvZChwZXJpb2QpKTtcbiAgfTtcbiAgcmV0dXJuIChcbiAgICA8VGltZVJhbmdlU2VsZWN0b3JcbiAgICAgIHNlbGVjdGVkVmFsdWU9e3NlbGVjdGVkVGltZVJhbmdlfVxuICAgICAgb25QZXJpb2RTZWxlY3RlZD17KHBlcmlvZDogSVBlcmlvZFJhbmdlKSA9PiB7XG4gICAgICAgIG9uUGVyaW9kU2VsZWN0ZWQocGVyaW9kKTtcbiAgICAgIH19XG4gICAgLz5cbiAgKTtcbn07XG5leHBvcnQgZGVmYXVsdCBUaW1lRmlsdGVyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsa0JBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLFVBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLGVBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLGVBQUEsR0FBQUwsT0FBQTtBQUVBLElBQU1NLFVBQVUsR0FBRyxTQUFiQSxVQUFVQSxDQUFBLEVBQVM7RUFDdkIsSUFBTUMsaUJBQWlCLEdBQUcsSUFBQUMsdUJBQVcsRUFBQyxVQUFDQyxLQUFLO0lBQUEsT0FBS0EsS0FBSyxDQUFDQyxTQUFTLENBQUNDLE1BQU07RUFBQSxFQUFDO0VBRXhFLElBQU1DLFFBQVEsR0FBRyxJQUFBQyx1QkFBVyxFQUFDLENBQUM7RUFFOUIsSUFBQUMsWUFBQSxHQUErQixJQUFBTix1QkFBVyxFQUFDLFVBQUNDLEtBQUs7TUFBQSxPQUFLQSxLQUFLLENBQUNNLFdBQVc7SUFBQSxFQUFDO0lBQWhFQyxrQkFBa0IsR0FBQUYsWUFBQSxDQUFsQkUsa0JBQWtCO0VBQzFCLElBQU1DLFFBQVEsR0FBRyxJQUFBQywyQkFBVyxFQUFDLENBQUM7RUFFOUIsSUFBTUMsaUJBQWdCLEdBQUcsU0FBbkJBLGdCQUFnQkEsQ0FBSVIsTUFBTSxFQUFLO0lBQ25DLElBQUFTLHlCQUFjLEVBQUMsd0JBQXdCLEVBQUU7TUFDdkNDLFNBQVMsRUFBRVYsTUFBTTtNQUNqQlcsU0FBUyxFQUFFTCxRQUFRLENBQUNNLFFBQVE7TUFDNUJDLFlBQVksRUFBRVI7SUFDaEIsQ0FBQyxDQUFDO0lBQ0ZKLFFBQVEsQ0FBQ2EsOEJBQWMsQ0FBQ0MsT0FBTyxDQUFDQyxTQUFTLENBQUNoQixNQUFNLENBQUMsQ0FBQztFQUNwRCxDQUFDO0VBQ0Qsb0JBQ0ViLE1BQUEsQ0FBQThCLE9BQUEsQ0FBQUMsYUFBQSxDQUFDNUIsa0JBQUEsQ0FBQTJCLE9BQWlCO0lBQ2hCRSxhQUFhLEVBQUV2QixpQkFBa0I7SUFDakNZLGdCQUFnQixFQUFFLFNBQUFBLGlCQUFDUixNQUFvQixFQUFLO01BQzFDUSxpQkFBZ0IsQ0FBQ1IsTUFBTSxDQUFDO0lBQzFCO0VBQUUsQ0FDSCxDQUFDO0FBRU4sQ0FBQztBQUFDLElBQUFvQixRQUFBLEdBQ2F6QixVQUFVO0FBQUEwQixPQUFBLENBQUFKLE9BQUEsR0FBQUcsUUFBQSJ9
38
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9UaW1lUmFuZ2VTZWxlY3RvciIsIl9BbmFseXRpY3MiLCJfZGFzaGJvYXJkU2xpY2UiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdFJvdXRlckRvbSIsIlRpbWVGaWx0ZXIiLCJzZWxlY3RlZFRpbWVSYW5nZSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJkYXNoYm9hcmQiLCJwZXJpb2QiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwiZ2xvYmFsX2RhdGEiLCJsb2NhdGlvbiIsInVzZUxvY2F0aW9uIiwib25QZXJpb2RTZWxlY3RlZCIsImFuYWx5dGljc1RyYWNrIiwic2VsZWN0aW9uIiwicGFnZV9uYW1lIiwicGF0aG5hbWUiLCJ1dGlsaXR5X25hbWUiLCJkYXNoYm9hcmRTbGljZSIsImFjdGlvbnMiLCJzZXRQZXJpb2QiLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsInNlbGVjdGVkVmFsdWUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9IZWFkZXIvSW5mb0Jhci9UaW1lRmlsdGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgSVBlcmlvZFJhbmdlIH0gZnJvbSAnc3JjL3N0b3JlL2Rhc2hib2FyZC9wZXJpb2RUeXBlJztcbmltcG9ydCBUaW1lUmFuZ2VTZWxlY3RvciBmcm9tICcuLi8uLi9UaW1lUmFuZ2VTZWxlY3Rvcic7XG5pbXBvcnQgeyBhbmFseXRpY3NUcmFjayB9IGZyb20gJ3NyYy91dGlsaXRpZXMvQW5hbHl0aWNzJztcbmltcG9ydCB7IGRhc2hib2FyZFNsaWNlIH0gZnJvbSAnc3JjL3N0b3JlL2Rhc2hib2FyZC9kYXNoYm9hcmRTbGljZSc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VMb2NhdGlvbiB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuXG5jb25zdCBUaW1lRmlsdGVyID0gKCkgPT4ge1xuICBjb25zdCBzZWxlY3RlZFRpbWVSYW5nZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUuZGFzaGJvYXJkLnBlcmlvZCk7XG5cbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gIGNvbnN0IHsgd2F0ZXJBdXRob3JpdHlOYW1lIH0gPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlLmdsb2JhbF9kYXRhKTtcbiAgY29uc3QgbG9jYXRpb24gPSB1c2VMb2NhdGlvbigpO1xuXG4gIGNvbnN0IG9uUGVyaW9kU2VsZWN0ZWQgPSAocGVyaW9kKSA9PiB7XG4gICAgYW5hbHl0aWNzVHJhY2soJ0Rhc2hib2FyZCBEYXRlIENsaWNrZWQnLCB7XG4gICAgICBzZWxlY3Rpb246IHBlcmlvZCxcbiAgICAgIHBhZ2VfbmFtZTogbG9jYXRpb24ucGF0aG5hbWUsXG4gICAgICB1dGlsaXR5X25hbWU6IHdhdGVyQXV0aG9yaXR5TmFtZSxcbiAgICB9KTtcbiAgICBkaXNwYXRjaChkYXNoYm9hcmRTbGljZS5hY3Rpb25zLnNldFBlcmlvZChwZXJpb2QpKTtcbiAgfTtcbiAgcmV0dXJuIChcbiAgICA8VGltZVJhbmdlU2VsZWN0b3JcbiAgICAgIHNlbGVjdGVkVmFsdWU9e3NlbGVjdGVkVGltZVJhbmdlfVxuICAgICAgb25QZXJpb2RTZWxlY3RlZD17KHBlcmlvZDogSVBlcmlvZFJhbmdlKSA9PiB7XG4gICAgICAgIG9uUGVyaW9kU2VsZWN0ZWQocGVyaW9kKTtcbiAgICAgIH19XG4gICAgLz5cbiAgKTtcbn07XG5leHBvcnQgZGVmYXVsdCBUaW1lRmlsdGVyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsa0JBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLFVBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLGVBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLGVBQUEsR0FBQUwsT0FBQTtBQUVBLE1BQU1NLFVBQVUsR0FBR0EsQ0FBQSxLQUFNO0VBQ3ZCLE1BQU1DLGlCQUFpQixHQUFHLElBQUFDLHVCQUFXLEVBQUVDLEtBQUssSUFBS0EsS0FBSyxDQUFDQyxTQUFTLENBQUNDLE1BQU0sQ0FBQztFQUV4RSxNQUFNQyxRQUFRLEdBQUcsSUFBQUMsdUJBQVcsRUFBQyxDQUFDO0VBRTlCLE1BQU07SUFBRUM7RUFBbUIsQ0FBQyxHQUFHLElBQUFOLHVCQUFXLEVBQUVDLEtBQUssSUFBS0EsS0FBSyxDQUFDTSxXQUFXLENBQUM7RUFDeEUsTUFBTUMsUUFBUSxHQUFHLElBQUFDLDJCQUFXLEVBQUMsQ0FBQztFQUU5QixNQUFNQyxnQkFBZ0IsR0FBSVAsTUFBTSxJQUFLO0lBQ25DLElBQUFRLHlCQUFjLEVBQUMsd0JBQXdCLEVBQUU7TUFDdkNDLFNBQVMsRUFBRVQsTUFBTTtNQUNqQlUsU0FBUyxFQUFFTCxRQUFRLENBQUNNLFFBQVE7TUFDNUJDLFlBQVksRUFBRVQ7SUFDaEIsQ0FBQyxDQUFDO0lBQ0ZGLFFBQVEsQ0FBQ1ksOEJBQWMsQ0FBQ0MsT0FBTyxDQUFDQyxTQUFTLENBQUNmLE1BQU0sQ0FBQyxDQUFDO0VBQ3BELENBQUM7RUFDRCxvQkFDRWIsTUFBQSxDQUFBNkIsT0FBQSxDQUFBQyxhQUFBLENBQUMzQixrQkFBQSxDQUFBMEIsT0FBaUI7SUFDaEJFLGFBQWEsRUFBRXRCLGlCQUFrQjtJQUNqQ1csZ0JBQWdCLEVBQUdQLE1BQW9CLElBQUs7TUFDMUNPLGdCQUFnQixDQUFDUCxNQUFNLENBQUM7SUFDMUI7RUFBRSxDQUNILENBQUM7QUFFTixDQUFDO0FBQUMsSUFBQW1CLFFBQUEsR0FDYXhCLFVBQVU7QUFBQXlCLE9BQUEsQ0FBQUosT0FBQSxHQUFBRyxRQUFBIn0=
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
10
8
  var _freeSolidSvgIcons = require("@fortawesome/free-solid-svg-icons");
11
9
  var _reactFontawesome = require("@fortawesome/react-fontawesome");
12
10
  var _react = _interopRequireWildcard(require("react"));
@@ -22,80 +20,63 @@ var _actions = require("store/global/actions");
22
20
  var _ErrorBoundary = _interopRequireDefault(require("utilities/ErrorBoundary"));
23
21
  var _i18n = _interopRequireDefault(require("utilities/i18n"));
24
22
  require("./NavbarStyle.scss");
25
- 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); }
26
- 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; }
27
- var updatePageTitle = function updatePageTitle(title) {
28
- return document.title = "Kando - ".concat(title);
29
- };
30
- var defaultProps = {
23
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
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
+ const updatePageTitle = title => document.title = "Kando - ".concat(title);
26
+ const defaultProps = {
31
27
  selectedLabel: '',
32
28
  hasSearch: false
33
29
  };
34
30
  function replaceURL(key, value) {
35
- var params = new URLSearchParams(window.location.search);
31
+ let params = new URLSearchParams(window.location.search);
36
32
  params.set(key, value);
37
33
  return window.location.protocol + '//' + window.location.host + window.location.pathname + '?' + params.toString();
38
34
  }
39
- var KandoNavbar = function KandoNavbar(_ref) {
40
- var waterAuthorityId = _ref.waterAuthorityId,
41
- selectedLabel = _ref.selectedLabel,
42
- hasSearch = _ref.hasSearch;
43
- var _useState = (0, _react.useState)([]),
44
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
45
- waterAuthorities = _useState2[0],
46
- setWaterAuthorities = _useState2[1];
47
- var _useState3 = (0, _react.useState)({
48
- photo_url: 'missing',
49
- label: ''
50
- }),
51
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
52
- localWaterAuthority = _useState4[0],
53
- setLocalWaterAuthority = _useState4[1];
54
- var _useState5 = (0, _react.useState)(waterAuthorityId),
55
- _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
56
- waId = _useState6[0],
57
- setWaId = _useState6[1];
58
- var _useState7 = (0, _react.useState)({}),
59
- _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
60
- menu = _useState8[0],
61
- setMenu = _useState8[1];
62
- var dispatch = (0, _reactRedux.useDispatch)();
63
- var useQuery = function useQuery() {
35
+ const KandoNavbar = _ref => {
36
+ let {
37
+ waterAuthorityId,
38
+ selectedLabel,
39
+ hasSearch
40
+ } = _ref;
41
+ const [waterAuthorities, setWaterAuthorities] = (0, _react.useState)([]);
42
+ const [localWaterAuthority, setLocalWaterAuthority] = (0, _react.useState)({
43
+ photo_url: 'missing',
44
+ label: ''
45
+ });
46
+ const [waId, setWaId] = (0, _react.useState)(waterAuthorityId);
47
+ const [menu, setMenu] = (0, _react.useState)({});
48
+ const dispatch = (0, _reactRedux.useDispatch)();
49
+ const useQuery = () => {
64
50
  return new URLSearchParams((0, _reactRouterDom.useLocation)().search);
65
51
  };
66
- var query = useQuery();
67
- var _useState9 = (0, _react.useState)({
68
- edit: {
69
- link: '',
70
- label: 'main_screen.edit_account'
71
- },
72
- feedback: {
73
- link: '',
74
- label: 'main_screen.feedback'
75
- },
76
- help: {
77
- link: '',
78
- label: 'main_screen.help'
79
- },
80
- my_profile: {
81
- link: '',
82
- label: 'main_screen.my_profile'
83
- },
84
- name: undefined,
85
- sign_out: {
86
- link: '',
87
- label: 'main_screen.sign_out',
88
- method: ''
89
- }
90
- }),
91
- _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
92
- customerMenu = _useState10[0],
93
- setCustomerMenu = _useState10[1];
94
- var navContext = (0, _reactRedux.useSelector)(function (state) {
95
- return state.nav_context_data.navContext;
52
+ const query = useQuery();
53
+ const [customerMenu, setCustomerMenu] = (0, _react.useState)({
54
+ edit: {
55
+ link: '',
56
+ label: 'main_screen.edit_account'
57
+ },
58
+ feedback: {
59
+ link: '',
60
+ label: 'main_screen.feedback'
61
+ },
62
+ help: {
63
+ link: '',
64
+ label: 'main_screen.help'
65
+ },
66
+ my_profile: {
67
+ link: '',
68
+ label: 'main_screen.my_profile'
69
+ },
70
+ name: undefined,
71
+ sign_out: {
72
+ link: '',
73
+ label: 'main_screen.sign_out',
74
+ method: ''
75
+ }
96
76
  });
97
- var history = (0, _reactRouterDom.useHistory)();
98
- var handleChange = function handleChange(selectedOption) {
77
+ const navContext = (0, _reactRedux.useSelector)(state => state.nav_context_data.navContext);
78
+ const history = (0, _reactRouterDom.useHistory)();
79
+ const handleChange = selectedOption => {
99
80
  setWaId(selectedOption.value);
100
81
  dispatch((0, _actions.setWaterAuthority)({
101
82
  id: selectedOption.value,
@@ -103,9 +84,9 @@ var KandoNavbar = function KandoNavbar(_ref) {
103
84
  }));
104
85
  history.push("/".concat(navContext.name, "/index?locale=").concat(navContext.locale, "&water_authority_id=").concat(selectedOption.value));
105
86
  };
106
- var iterate = function iterate(obj) {
107
- var items = [];
108
- for (var property in obj) {
87
+ const iterate = obj => {
88
+ let items = [];
89
+ for (const property in obj) {
109
90
  if (obj[property].expandable) {
110
91
  items.push( /*#__PURE__*/_react.default.createElement(_reactBootstrap.NavDropdown, {
111
92
  key: obj[property].label,
@@ -130,9 +111,9 @@ var KandoNavbar = function KandoNavbar(_ref) {
130
111
  }
131
112
  return items;
132
113
  };
133
- var renderClientsPhoto = function renderClientsPhoto() {
114
+ const renderClientsPhoto = () => {
134
115
  if (localWaterAuthority !== undefined) {
135
- var url = localWaterAuthority.photo_url;
116
+ let url = localWaterAuthority.photo_url;
136
117
  return /*#__PURE__*/_react.default.createElement("img", {
137
118
  alt: "missing",
138
119
  src: url.startsWith('missing') ? _authority.default : url,
@@ -145,7 +126,7 @@ var KandoNavbar = function KandoNavbar(_ref) {
145
126
  return;
146
127
  }
147
128
  };
148
- var buildSwitchClient = function buildSwitchClient() {
129
+ const buildSwitchClient = () => {
149
130
  if (waterAuthorities !== undefined && waterAuthorities.length !== 0) {
150
131
  if (waterAuthorities.length === 1) {
151
132
  return /*#__PURE__*/_react.default.createElement("p", {
@@ -164,25 +145,21 @@ var KandoNavbar = function KandoNavbar(_ref) {
164
145
  classNamePrefix: "select",
165
146
  isSearchable: true,
166
147
  name: "color",
167
- options: waterAuthorities.map(function (localWaterAuthority) {
148
+ options: waterAuthorities.map(localWaterAuthority => {
168
149
  return {
169
150
  value: localWaterAuthority.id,
170
151
  label: localWaterAuthority.name
171
152
  };
172
153
  }),
173
- getOptionLabel: function getOptionLabel(localWaterAuthority) {
174
- return localWaterAuthority.label;
175
- }
154
+ getOptionLabel: localWaterAuthority => localWaterAuthority.label
176
155
  // @ts-ignore
177
156
  ,
178
- onChange: function onChange(e) {
179
- return handleChange(e);
180
- }
157
+ onChange: e => handleChange(e)
181
158
  })));
182
159
  }
183
160
  return;
184
161
  };
185
- var buildCustomerMenu = function buildCustomerMenu(contextName) {
162
+ const buildCustomerMenu = contextName => {
186
163
  if (customerMenu !== undefined) {
187
164
  // @ts-ignore
188
165
  return /*#__PURE__*/_react.default.createElement(_reactBootstrap.NavDropdown, {
@@ -225,11 +202,9 @@ var KandoNavbar = function KandoNavbar(_ref) {
225
202
  }
226
203
  return;
227
204
  };
228
- (0, _react.useEffect)(function () {
229
- var locale = query.get('locale') || 'en';
230
- fetch("/data/menu_data.json?water_authority_id=".concat(waId, "&locale=").concat(locale)).then(function (response) {
231
- return response.json();
232
- }).then(function (json) {
205
+ (0, _react.useEffect)(() => {
206
+ let locale = query.get('locale') || 'en';
207
+ fetch("/data/menu_data.json?water_authority_id=".concat(waId, "&locale=").concat(locale)).then(response => response.json()).then(json => {
233
208
  setWaterAuthorities(json.water_authorities);
234
209
  setMenu(json.menu);
235
210
  dispatch((0, _actions.setWaterAuthority)({
@@ -264,7 +239,7 @@ var KandoNavbar = function KandoNavbar(_ref) {
264
239
  style: {
265
240
  color: 'blue'
266
241
  }
267
- }, iterate(menu).map(function (item) {
242
+ }, iterate(menu).map(item => {
268
243
  return item;
269
244
  }), /*#__PURE__*/_react.default.createElement("div", {
270
245
  className: 'switch-client-container'
@@ -275,4 +250,4 @@ var KandoNavbar = function KandoNavbar(_ref) {
275
250
  KandoNavbar.defaultProps = defaultProps;
276
251
  var _default = KandoNavbar;
277
252
  exports.default = _default;
278
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdEJvb3RzdHJhcCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX3JlYWN0U2VsZWN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9rYW5kb19sb2dvIiwiX2F1dGhvcml0eSIsIl91c2VyIiwiX1N0eWxlZExpbmsiLCJfYWN0aW9ucyIsIl9FcnJvckJvdW5kYXJ5IiwiX2kxOG4iLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsInVwZGF0ZVBhZ2VUaXRsZSIsInRpdGxlIiwiZG9jdW1lbnQiLCJjb25jYXQiLCJkZWZhdWx0UHJvcHMiLCJzZWxlY3RlZExhYmVsIiwiaGFzU2VhcmNoIiwicmVwbGFjZVVSTCIsInZhbHVlIiwicGFyYW1zIiwiVVJMU2VhcmNoUGFyYW1zIiwid2luZG93IiwibG9jYXRpb24iLCJzZWFyY2giLCJwcm90b2NvbCIsImhvc3QiLCJwYXRobmFtZSIsInRvU3RyaW5nIiwiS2FuZG9OYXZiYXIiLCJfcmVmIiwid2F0ZXJBdXRob3JpdHlJZCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsIndhdGVyQXV0aG9yaXRpZXMiLCJzZXRXYXRlckF1dGhvcml0aWVzIiwiX3VzZVN0YXRlMyIsInBob3RvX3VybCIsImxhYmVsIiwiX3VzZVN0YXRlNCIsImxvY2FsV2F0ZXJBdXRob3JpdHkiLCJzZXRMb2NhbFdhdGVyQXV0aG9yaXR5IiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJ3YUlkIiwic2V0V2FJZCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwibWVudSIsInNldE1lbnUiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwidXNlUXVlcnkiLCJ1c2VMb2NhdGlvbiIsInF1ZXJ5IiwiX3VzZVN0YXRlOSIsImVkaXQiLCJsaW5rIiwiZmVlZGJhY2siLCJoZWxwIiwibXlfcHJvZmlsZSIsIm5hbWUiLCJ1bmRlZmluZWQiLCJzaWduX291dCIsIm1ldGhvZCIsIl91c2VTdGF0ZTEwIiwiY3VzdG9tZXJNZW51Iiwic2V0Q3VzdG9tZXJNZW51IiwibmF2Q29udGV4dCIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJuYXZfY29udGV4dF9kYXRhIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJoYW5kbGVDaGFuZ2UiLCJzZWxlY3RlZE9wdGlvbiIsInNldFdhdGVyQXV0aG9yaXR5IiwiaWQiLCJwdXNoIiwibG9jYWxlIiwiaXRlcmF0ZSIsIml0ZW1zIiwicHJvcGVydHkiLCJleHBhbmRhYmxlIiwiY3JlYXRlRWxlbWVudCIsIk5hdkRyb3Bkb3duIiwiaTE4biIsInQiLCJleHBhbnNpb24iLCJjbGFzcyIsIkxpbmsiLCJjbGFzc05hbWUiLCJ0byIsIkl0ZW0iLCJocmVmIiwicmVuZGVyQ2xpZW50c1Bob3RvIiwidXJsIiwiYWx0Iiwic3JjIiwic3RhcnRzV2l0aCIsIldhdGVyQXV0aG9yaXR5TWlzc2luZ0ljb24iLCJzdHlsZSIsImhlaWdodCIsIndpZHRoIiwiYnVpbGRTd2l0Y2hDbGllbnQiLCJsZW5ndGgiLCJJdGVtVGV4dCIsImNsYXNzTmFtZVByZWZpeCIsImlzU2VhcmNoYWJsZSIsIm9wdGlvbnMiLCJtYXAiLCJnZXRPcHRpb25MYWJlbCIsIm9uQ2hhbmdlIiwiZSIsImJ1aWxkQ3VzdG9tZXJNZW51IiwiY29udGV4dE5hbWUiLCJhbGlnblJpZ2h0IiwiQXZhdGFyIiwiRGl2aWRlciIsInVzZUVmZmVjdCIsImZldGNoIiwidGhlbiIsInJlc3BvbnNlIiwianNvbiIsIndhdGVyX2F1dGhvcml0aWVzIiwid2F0ZXJfYXV0aG9yaXR5IiwiaXNfY2FwYWNpdHkiLCJjdXN0b21lcl9tZW51IiwiY2xlYW51cCIsIkZyYWdtZW50IiwiTmF2YmFyIiwiZXhwYW5kIiwiVG9nZ2xlIiwiQnJhbmQiLCJLYW5kb0xvZ28iLCJDb2xsYXBzZSIsIk5hdiIsImNvbG9yIiwiaXRlbSIsIkZvbnRBd2Vzb21lSWNvbiIsImljb24iLCJmYVRpbnQiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9IZWFkZXIvS2FuZG9OYXZiYXIvS2FuZG9OYXZiYXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZhVGludCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBOYXYsIE5hdmJhciwgTmF2RHJvcGRvd24gfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlTG9jYXRpb24gfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCBTZWxlY3QgZnJvbSAncmVhY3Qtc2VsZWN0JztcbmltcG9ydCBLYW5kb0xvZ28gZnJvbSAnc3JjL2Fzc2V0cy9rYW5kb19sb2dvLnBuZyc7XG5pbXBvcnQgV2F0ZXJBdXRob3JpdHlNaXNzaW5nSWNvbiBmcm9tICdzcmMvYXNzZXRzL21pc3NpbmcvYXV0aG9yaXR5LnBuZyc7XG5pbXBvcnQgQXZhdGFyIGZyb20gJ3NyYy9hc3NldHMvdXNlci5zdmcnO1xuaW1wb3J0IHsgTGluayB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0xpbmtzL1N0eWxlZExpbmsvU3R5bGVkTGluayc7XG5pbXBvcnQgeyBzZXRXYXRlckF1dGhvcml0eSB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnc3JjL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJ3NyYy91dGlsaXRpZXMvRXJyb3JCb3VuZGFyeSc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0ICcuL05hdmJhclN0eWxlLnNjc3MnO1xuXG5jb25zdCB1cGRhdGVQYWdlVGl0bGUgPSAodGl0bGU6IHN0cmluZykgPT5cbiAgKGRvY3VtZW50LnRpdGxlID0gYEthbmRvIC0gJHt0aXRsZX1gKTtcblxudHlwZSBJUHJvcHMgPSB7XG4gIHdhdGVyQXV0aG9yaXR5SWQ6IG51bWJlcjtcbiAgc2VsZWN0ZWRMYWJlbD86IHN0cmluZztcbiAgaGFzU2VhcmNoPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IGRlZmF1bHRQcm9wcyA9IHtcbiAgc2VsZWN0ZWRMYWJlbDogJycsXG4gIGhhc1NlYXJjaDogZmFsc2UsXG59O1xuXG5mdW5jdGlvbiByZXBsYWNlVVJMKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gIGxldCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpO1xuICBwYXJhbXMuc2V0KGtleSwgdmFsdWUpO1xuICByZXR1cm4gKFxuICAgIHdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCArXG4gICAgJy8vJyArXG4gICAgd2luZG93LmxvY2F0aW9uLmhvc3QgK1xuICAgIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSArXG4gICAgJz8nICtcbiAgICBwYXJhbXMudG9TdHJpbmcoKVxuICApO1xufVxuXG5jb25zdCBLYW5kb05hdmJhciA9ICh7XG4gIHdhdGVyQXV0aG9yaXR5SWQsXG4gIHNlbGVjdGVkTGFiZWwsXG4gIGhhc1NlYXJjaCxcbn06IElQcm9wcykgPT4ge1xuICBjb25zdCBbd2F0ZXJBdXRob3JpdGllcywgc2V0V2F0ZXJBdXRob3JpdGllc10gPSB1c2VTdGF0ZShbXSk7XG4gIGNvbnN0IFtsb2NhbFdhdGVyQXV0aG9yaXR5LCBzZXRMb2NhbFdhdGVyQXV0aG9yaXR5XSA9IHVzZVN0YXRlKHtcbiAgICBwaG90b191cmw6ICdtaXNzaW5nJyxcbiAgICBsYWJlbDogJycsXG4gIH0pO1xuICBjb25zdCBbd2FJZCwgc2V0V2FJZF0gPSB1c2VTdGF0ZSh3YXRlckF1dGhvcml0eUlkKTtcbiAgY29uc3QgW21lbnUsIHNldE1lbnVdID0gdXNlU3RhdGUoe30pO1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG5cbiAgY29uc3QgdXNlUXVlcnkgPSAoKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBVUkxTZWFyY2hQYXJhbXModXNlTG9jYXRpb24oKS5zZWFyY2gpO1xuICB9O1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5KCk7XG5cbiAgY29uc3QgW2N1c3RvbWVyTWVudSwgc2V0Q3VzdG9tZXJNZW51XSA9IHVzZVN0YXRlKHtcbiAgICBlZGl0OiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4uZWRpdF9hY2NvdW50JyxcbiAgICB9LFxuICAgIGZlZWRiYWNrOiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4uZmVlZGJhY2snLFxuICAgIH0sXG4gICAgaGVscDoge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLmhlbHAnLFxuICAgIH0sXG4gICAgbXlfcHJvZmlsZToge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLm15X3Byb2ZpbGUnLFxuICAgIH0sXG4gICAgbmFtZTogdW5kZWZpbmVkLFxuICAgIHNpZ25fb3V0OiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4uc2lnbl9vdXQnLFxuICAgICAgbWV0aG9kOiAnJyxcbiAgICB9LFxuICB9KTtcbiAgY29uc3QgbmF2Q29udGV4dCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLm5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dCxcbiAgKTtcblxuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChzZWxlY3RlZE9wdGlvbjogYW55KSA9PiB7XG4gICAgc2V0V2FJZChzZWxlY3RlZE9wdGlvbi52YWx1ZSk7XG4gICAgZGlzcGF0Y2goc2V0V2F0ZXJBdXRob3JpdHkoeyBpZDogc2VsZWN0ZWRPcHRpb24udmFsdWUsIG5hbWU6ICcnIH0pKTtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgLyR7bmF2Q29udGV4dC5uYW1lfS9pbmRleD9sb2NhbGU9JHtuYXZDb250ZXh0LmxvY2FsZX0md2F0ZXJfYXV0aG9yaXR5X2lkPSR7c2VsZWN0ZWRPcHRpb24udmFsdWV9YCxcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGl0ZXJhdGUgPSAob2JqOiBhbnkpID0+IHtcbiAgICBsZXQgaXRlbXM6IGFueVtdID0gW107XG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBvYmopIHtcbiAgICAgIGlmIChvYmpbcHJvcGVydHldLmV4cGFuZGFibGUpIHtcbiAgICAgICAgaXRlbXMucHVzaChcbiAgICAgICAgICA8TmF2RHJvcGRvd25cbiAgICAgICAgICAgIGtleT17b2JqW3Byb3BlcnR5XS5sYWJlbH1cbiAgICAgICAgICAgIHRpdGxlPXtpMThuLnQob2JqW3Byb3BlcnR5XS5sYWJlbCl9XG4gICAgICAgICAgICBpZD1cImJhc2ljLW5hdi1kcm9wZG93blwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge2l0ZXJhdGUob2JqW3Byb3BlcnR5XS5leHBhbnNpb24pfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24+LFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKG9ialtwcm9wZXJ0eV0uY2xhc3MgPT09ICdqcy1pcy1yZWFjdCcpIHtcbiAgICAgICAgICBpdGVtcy5wdXNoKFxuICAgICAgICAgICAgPExpbmtcbiAgICAgICAgICAgICAga2V5PXtvYmpbcHJvcGVydHldLmxpbmt9XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cImRyb3Bkb3duLWl0ZW1cIlxuICAgICAgICAgICAgICB0bz17b2JqW3Byb3BlcnR5XS5saW5rfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KG9ialtwcm9wZXJ0eV0ubGFiZWwpfVxuICAgICAgICAgICAgPC9MaW5rPixcbiAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGl0ZW1zLnB1c2goXG4gICAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVxuICAgICAgICAgICAgICBrZXk9e29ialtwcm9wZXJ0eV0ubGlua31cbiAgICAgICAgICAgICAgaHJlZj17b2JqW3Byb3BlcnR5XS5saW5rfVxuICAgICAgICAgICAgICBpZD1cImJhc2ljLW5hdmJhci1uYXZcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KG9ialtwcm9wZXJ0eV0ubGFiZWwpfVxuICAgICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPixcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGl0ZW1zO1xuICB9O1xuXG4gIGNvbnN0IHJlbmRlckNsaWVudHNQaG90byA9ICgpID0+IHtcbiAgICBpZiAobG9jYWxXYXRlckF1dGhvcml0eSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBsZXQgdXJsID0gbG9jYWxXYXRlckF1dGhvcml0eS5waG90b191cmwhIGFzIHN0cmluZztcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxpbWdcbiAgICAgICAgICBhbHQ9XCJtaXNzaW5nXCJcbiAgICAgICAgICBzcmM9e3VybC5zdGFydHNXaXRoKCdtaXNzaW5nJykgPyBXYXRlckF1dGhvcml0eU1pc3NpbmdJY29uIDogdXJsfVxuICAgICAgICAgIHN0eWxlPXt7IGhlaWdodDogJzQwcHgnLCB3aWR0aDogJ2F1dG8nIH19XG4gICAgICAgIC8+XG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGJ1aWxkU3dpdGNoQ2xpZW50ID0gKCkgPT4ge1xuICAgIGlmICh3YXRlckF1dGhvcml0aWVzICE9PSB1bmRlZmluZWQgJiYgd2F0ZXJBdXRob3JpdGllcy5sZW5ndGggIT09IDApIHtcbiAgICAgIGlmICh3YXRlckF1dGhvcml0aWVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxwIGNsYXNzTmFtZT17J3dhdGVyLWF1dGhvcml0eS1zaW5nbGUtbGFiZWwnfT5cbiAgICAgICAgICAgIHtsb2NhbFdhdGVyQXV0aG9yaXR5LmxhYmVsfVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPE5hdkRyb3Bkb3duXG4gICAgICAgICAgdGl0bGU9e2xvY2FsV2F0ZXJBdXRob3JpdHkgIT09IG51bGwgPyBsb2NhbFdhdGVyQXV0aG9yaXR5LmxhYmVsIDogJyd9XG4gICAgICAgICAgaWQ9XCJiYXNpYy1uYXYtZHJvcGRvd25cIlxuICAgICAgICA+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1UZXh0IHN0eWxlPXt7IHdpZHRoOiAnMzAwcHgnIH19PlxuICAgICAgICAgICAgPFNlbGVjdFxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJiYXNpYy1zaW5nbGVcIlxuICAgICAgICAgICAgICBjbGFzc05hbWVQcmVmaXg9XCJzZWxlY3RcIlxuICAgICAgICAgICAgICBpc1NlYXJjaGFibGU9e3RydWV9XG4gICAgICAgICAgICAgIG5hbWU9XCJjb2xvclwiXG4gICAgICAgICAgICAgIG9wdGlvbnM9e3dhdGVyQXV0aG9yaXRpZXMubWFwKChsb2NhbFdhdGVyQXV0aG9yaXR5OiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgdmFsdWU6IGxvY2FsV2F0ZXJBdXRob3JpdHkuaWQsXG4gICAgICAgICAgICAgICAgICBsYWJlbDogbG9jYWxXYXRlckF1dGhvcml0eS5uYW1lLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICBnZXRPcHRpb25MYWJlbD17KGxvY2FsV2F0ZXJBdXRob3JpdHk6IGFueSkgPT5cbiAgICAgICAgICAgICAgICBsb2NhbFdhdGVyQXV0aG9yaXR5LmxhYmVsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICBvbkNoYW5nZT17KGU6IE9iamVjdCkgPT4gaGFuZGxlQ2hhbmdlKGUpfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW1UZXh0PlxuICAgICAgICA8L05hdkRyb3Bkb3duPlxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH07XG5cbiAgY29uc3QgYnVpbGRDdXN0b21lck1lbnUgPSAoY29udGV4dE5hbWU6IHN0cmluZykgPT4ge1xuICAgIGlmIChjdXN0b21lck1lbnUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPE5hdkRyb3Bkb3duXG4gICAgICAgICAgYWxpZ25SaWdodFxuICAgICAgICAgIGNsYXNzTmFtZT17J2N1c3RvbWVyLW1lbnUgb3JkZXItc20tMyd9XG4gICAgICAgICAgaWQ9XCJiYXNpYy1uYXYtZHJvcGRvd25cIlxuICAgICAgICAgIHRpdGxlPXtcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnY3VzdG9tZXItbWVudV9fY29udGVudCd9PlxuICAgICAgICAgICAgICA8aW1nIHNyYz17QXZhdGFyfSBhbHQ9XCJhdmF0YXJcIj48L2ltZz5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnZ3JlZXRpbmcnfT5cbiAgICAgICAgICAgICAgICB7YCR7aTE4bi50KCdtYWluX3NjcmVlbi5oZWxsbycpfSAke1xuICAgICAgICAgICAgICAgICAgY3VzdG9tZXJNZW51Lm5hbWUgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgICAgICA/IGkxOG4udCgnbWFpbl9zY3JlZW4udGhlcmUnKVxuICAgICAgICAgICAgICAgICAgICA6ICcsICcgKyBjdXN0b21lck1lbnUubmFtZVxuICAgICAgICAgICAgICAgIH1gfVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgID5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtjdXN0b21lck1lbnUubXlfcHJvZmlsZS5saW5rfT5cbiAgICAgICAgICAgIHtpMThuLnQoJ21haW5fc2NyZWVuLm15X3Byb2ZpbGUnKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgIGhyZWY9e2N1c3RvbWVyTWVudS5lZGl0Lmxpbmt9XG4gICAgICAgICAgICBrZXk9e2N1c3RvbWVyTWVudS5lZGl0Lmxpbmt9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udCgnbWFpbl9zY3JlZW4uZWRpdF9hY2NvdW50Jyl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICBocmVmPXtjdXN0b21lck1lbnUuZmVlZGJhY2subGlua31cbiAgICAgICAgICAgIGtleT17Y3VzdG9tZXJNZW51LmZlZWRiYWNrLmxpbmt9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udCgnbWFpbl9zY3JlZW4uZmVlZGJhY2snKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgIGhyZWY9e2N1c3RvbWVyTWVudS5oZWxwLmxpbmt9XG4gICAgICAgICAgICBrZXk9e2N1c3RvbWVyTWVudS5oZWxwLmxpbmt9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udCgnbWFpbl9zY3JlZW4uaGVscCcpfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uRGl2aWRlciAvPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdlbicpfT5cbiAgICAgICAgICAgIHsnRW5nbGlzaCd9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdlbl91aycpfT5cbiAgICAgICAgICAgIHsnRW5nbGlzaCAoVUspJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17cmVwbGFjZVVSTCgnbG9jYWxlJywgJ2hlJyl9PlxuICAgICAgICAgICAgeyfXoteR16jXmdeqJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17cmVwbGFjZVVSTCgnbG9jYWxlJywgJ2ZyJyl9PlxuICAgICAgICAgICAgeydGcmFuw6dhaXMnfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtyZXBsYWNlVVJMKCdsb2NhbGUnLCAnaXQnKX0+XG4gICAgICAgICAgICB7J0l0YWxpYW5vJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkRpdmlkZXIgLz5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVxuICAgICAgICAgICAgaHJlZj17Y3VzdG9tZXJNZW51LnNpZ25fb3V0Lmxpbmt9XG4gICAgICAgICAgICBkYXRhLW1ldGhvZD17Y3VzdG9tZXJNZW51LnNpZ25fb3V0Lm1ldGhvZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7aTE4bi50KGN1c3RvbWVyTWVudS5zaWduX291dC5sYWJlbCl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICA8L05hdkRyb3Bkb3duPlxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBsZXQgbG9jYWxlID0gcXVlcnkuZ2V0KCdsb2NhbGUnKSB8fCAnZW4nO1xuICAgIGZldGNoKGAvZGF0YS9tZW51X2RhdGEuanNvbj93YXRlcl9hdXRob3JpdHlfaWQ9JHt3YUlkfSZsb2NhbGU9JHtsb2NhbGV9YClcbiAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuanNvbigpKVxuICAgICAgLnRoZW4oKGpzb24pID0+IHtcbiAgICAgICAgc2V0V2F0ZXJBdXRob3JpdGllcyhqc29uLndhdGVyX2F1dGhvcml0aWVzKTtcbiAgICAgICAgc2V0TWVudShqc29uLm1lbnUpO1xuICAgICAgICBkaXNwYXRjaChcbiAgICAgICAgICBzZXRXYXRlckF1dGhvcml0eSh7XG4gICAgICAgICAgICBpZDoganNvbi53YXRlcl9hdXRob3JpdHkudmFsdWUsXG4gICAgICAgICAgICBuYW1lOiBqc29uLndhdGVyX2F1dGhvcml0eS5sYWJlbCxcbiAgICAgICAgICAgIGlzX2NhcGFjaXR5OiBqc29uLndhdGVyX2F1dGhvcml0eS5pc19jYXBhY2l0eSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgICAgc2V0TG9jYWxXYXRlckF1dGhvcml0eShqc29uLndhdGVyX2F1dGhvcml0eSk7IC8vIGFkZCB0byBTdG9yZVxuICAgICAgICB1cGRhdGVQYWdlVGl0bGUoanNvbi53YXRlcl9hdXRob3JpdHkubGFiZWwpO1xuICAgICAgICBzZXRDdXN0b21lck1lbnUoanNvbi5jdXN0b21lcl9tZW51KTtcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICBzZXRXYXRlckF1dGhvcml0aWVzKFtdKTtcbiAgICAgIHNldE1lbnUoe30pO1xuICAgIH07XG4gIH0sIFt3YUlkXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICA8RXJyb3JCb3VuZGFyeT5cbiAgICAgICAgPE5hdmJhciBleHBhbmQ9XCJzbVwiIGNsYXNzTmFtZT17J2p1c3RpZnktY29udGVudC1iZXR3ZWVuJ30+XG4gICAgICAgICAgPE5hdmJhci5Ub2dnbGUgYXJpYS1jb250cm9scz1cImJhc2ljLW5hdmJhci1uYXZcIiAvPlxuICAgICAgICAgIDxOYXZiYXIuQnJhbmQgY2xhc3NOYW1lPXsnbG9nbyd9PlxuICAgICAgICAgICAgPGltZyBzcmM9e0thbmRvTG9nb30gYWx0PVwia2FuZG8tbG9nb1wiPjwvaW1nPlxuICAgICAgICAgIDwvTmF2YmFyLkJyYW5kPlxuICAgICAgICAgIDxOYXZiYXIuQnJhbmQgY2xhc3NOYW1lPXsnY2xpZW50LWxvZ28nfT5cbiAgICAgICAgICAgIHtyZW5kZXJDbGllbnRzUGhvdG8oKX1cbiAgICAgICAgICA8L05hdmJhci5CcmFuZD5cbiAgICAgICAgICB7YnVpbGRDdXN0b21lck1lbnUobmF2Q29udGV4dC5uYW1lKX1cbiAgICAgICAgICA8TmF2YmFyLkNvbGxhcHNlIGlkPVwiYmFzaWMtbmF2YmFyLW5hdlwiPlxuICAgICAgICAgICAgPE5hdiBzdHlsZT17eyBjb2xvcjogJ2JsdWUnIH19PlxuICAgICAgICAgICAgICB7aXRlcmF0ZShtZW51KS5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnc3dpdGNoLWNsaWVudC1jb250YWluZXInfT5cbiAgICAgICAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhVGludH0gLz5cbiAgICAgICAgICAgICAgICB7YnVpbGRTd2l0Y2hDbGllbnQoKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L05hdj5cbiAgICAgICAgICA8L05hdmJhci5Db2xsYXBzZT5cbiAgICAgICAgICB7fVxuICAgICAgICA8L05hdmJhcj5cbiAgICAgIDwvRXJyb3JCb3VuZGFyeT5cbiAgICA8L1JlYWN0LkZyYWdtZW50PlxuICApO1xufTtcbkthbmRvTmF2YmFyLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcblxuZXhwb3J0IGRlZmF1bHQgS2FuZG9OYXZiYXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLElBQUFBLGtCQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxpQkFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsTUFBQSxHQUFBQyx1QkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksZUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sZUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sWUFBQSxHQUFBQyxzQkFBQSxDQUFBUixPQUFBO0FBQ0EsSUFBQVMsV0FBQSxHQUFBRCxzQkFBQSxDQUFBUixPQUFBO0FBQ0EsSUFBQVUsVUFBQSxHQUFBRixz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
253
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdEJvb3RzdHJhcCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX3JlYWN0U2VsZWN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9rYW5kb19sb2dvIiwiX2F1dGhvcml0eSIsIl91c2VyIiwiX1N0eWxlZExpbmsiLCJfYWN0aW9ucyIsIl9FcnJvckJvdW5kYXJ5IiwiX2kxOG4iLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwidXBkYXRlUGFnZVRpdGxlIiwidGl0bGUiLCJkb2N1bWVudCIsImNvbmNhdCIsImRlZmF1bHRQcm9wcyIsInNlbGVjdGVkTGFiZWwiLCJoYXNTZWFyY2giLCJyZXBsYWNlVVJMIiwidmFsdWUiLCJwYXJhbXMiLCJVUkxTZWFyY2hQYXJhbXMiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInNlYXJjaCIsInByb3RvY29sIiwiaG9zdCIsInBhdGhuYW1lIiwidG9TdHJpbmciLCJLYW5kb05hdmJhciIsIl9yZWYiLCJ3YXRlckF1dGhvcml0eUlkIiwid2F0ZXJBdXRob3JpdGllcyIsInNldFdhdGVyQXV0aG9yaXRpZXMiLCJ1c2VTdGF0ZSIsImxvY2FsV2F0ZXJBdXRob3JpdHkiLCJzZXRMb2NhbFdhdGVyQXV0aG9yaXR5IiwicGhvdG9fdXJsIiwibGFiZWwiLCJ3YUlkIiwic2V0V2FJZCIsIm1lbnUiLCJzZXRNZW51IiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsInVzZVF1ZXJ5IiwidXNlTG9jYXRpb24iLCJxdWVyeSIsImN1c3RvbWVyTWVudSIsInNldEN1c3RvbWVyTWVudSIsImVkaXQiLCJsaW5rIiwiZmVlZGJhY2siLCJoZWxwIiwibXlfcHJvZmlsZSIsIm5hbWUiLCJ1bmRlZmluZWQiLCJzaWduX291dCIsIm1ldGhvZCIsIm5hdkNvbnRleHQiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwibmF2X2NvbnRleHRfZGF0YSIsImhpc3RvcnkiLCJ1c2VIaXN0b3J5IiwiaGFuZGxlQ2hhbmdlIiwic2VsZWN0ZWRPcHRpb24iLCJzZXRXYXRlckF1dGhvcml0eSIsImlkIiwicHVzaCIsImxvY2FsZSIsIml0ZXJhdGUiLCJpdGVtcyIsInByb3BlcnR5IiwiZXhwYW5kYWJsZSIsImNyZWF0ZUVsZW1lbnQiLCJOYXZEcm9wZG93biIsImkxOG4iLCJ0IiwiZXhwYW5zaW9uIiwiY2xhc3MiLCJMaW5rIiwiY2xhc3NOYW1lIiwidG8iLCJJdGVtIiwiaHJlZiIsInJlbmRlckNsaWVudHNQaG90byIsInVybCIsImFsdCIsInNyYyIsInN0YXJ0c1dpdGgiLCJXYXRlckF1dGhvcml0eU1pc3NpbmdJY29uIiwic3R5bGUiLCJoZWlnaHQiLCJ3aWR0aCIsImJ1aWxkU3dpdGNoQ2xpZW50IiwibGVuZ3RoIiwiSXRlbVRleHQiLCJjbGFzc05hbWVQcmVmaXgiLCJpc1NlYXJjaGFibGUiLCJvcHRpb25zIiwibWFwIiwiZ2V0T3B0aW9uTGFiZWwiLCJvbkNoYW5nZSIsImUiLCJidWlsZEN1c3RvbWVyTWVudSIsImNvbnRleHROYW1lIiwiYWxpZ25SaWdodCIsIkF2YXRhciIsIkRpdmlkZXIiLCJ1c2VFZmZlY3QiLCJmZXRjaCIsInRoZW4iLCJyZXNwb25zZSIsImpzb24iLCJ3YXRlcl9hdXRob3JpdGllcyIsIndhdGVyX2F1dGhvcml0eSIsImlzX2NhcGFjaXR5IiwiY3VzdG9tZXJfbWVudSIsImNsZWFudXAiLCJGcmFnbWVudCIsIk5hdmJhciIsImV4cGFuZCIsIlRvZ2dsZSIsIkJyYW5kIiwiS2FuZG9Mb2dvIiwiQ29sbGFwc2UiLCJOYXYiLCJjb2xvciIsIml0ZW0iLCJGb250QXdlc29tZUljb24iLCJpY29uIiwiZmFUaW50IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSGVhZGVyL0thbmRvTmF2YmFyL0thbmRvTmF2YmFyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmYVRpbnQgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgRm9udEF3ZXNvbWVJY29uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3JlYWN0LWZvbnRhd2Vzb21lJztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTmF2LCBOYXZiYXIsIE5hdkRyb3Bkb3duIH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IHVzZUhpc3RvcnksIHVzZUxvY2F0aW9uIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgU2VsZWN0IGZyb20gJ3JlYWN0LXNlbGVjdCc7XG5pbXBvcnQgS2FuZG9Mb2dvIGZyb20gJ3NyYy9hc3NldHMva2FuZG9fbG9nby5wbmcnO1xuaW1wb3J0IFdhdGVyQXV0aG9yaXR5TWlzc2luZ0ljb24gZnJvbSAnc3JjL2Fzc2V0cy9taXNzaW5nL2F1dGhvcml0eS5wbmcnO1xuaW1wb3J0IEF2YXRhciBmcm9tICdzcmMvYXNzZXRzL3VzZXIuc3ZnJztcbmltcG9ydCB7IExpbmsgfSBmcm9tICdzcmMvY29tcG9uZW50cy9MaW5rcy9TdHlsZWRMaW5rL1N0eWxlZExpbmsnO1xuaW1wb3J0IHsgc2V0V2F0ZXJBdXRob3JpdHkgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgRXJyb3JCb3VuZGFyeSBmcm9tICdzcmMvdXRpbGl0aWVzL0Vycm9yQm91bmRhcnknO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCAnLi9OYXZiYXJTdHlsZS5zY3NzJztcblxuY29uc3QgdXBkYXRlUGFnZVRpdGxlID0gKHRpdGxlOiBzdHJpbmcpID0+XG4gIChkb2N1bWVudC50aXRsZSA9IGBLYW5kbyAtICR7dGl0bGV9YCk7XG5cbnR5cGUgSVByb3BzID0ge1xuICB3YXRlckF1dGhvcml0eUlkOiBudW1iZXI7XG4gIHNlbGVjdGVkTGFiZWw/OiBzdHJpbmc7XG4gIGhhc1NlYXJjaD86IGJvb2xlYW47XG59O1xuXG5jb25zdCBkZWZhdWx0UHJvcHMgPSB7XG4gIHNlbGVjdGVkTGFiZWw6ICcnLFxuICBoYXNTZWFyY2g6IGZhbHNlLFxufTtcblxuZnVuY3Rpb24gcmVwbGFjZVVSTChrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZykge1xuICBsZXQgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtcbiAgcGFyYW1zLnNldChrZXksIHZhbHVlKTtcbiAgcmV0dXJuIChcbiAgICB3aW5kb3cubG9jYXRpb24ucHJvdG9jb2wgK1xuICAgICcvLycgK1xuICAgIHdpbmRvdy5sb2NhdGlvbi5ob3N0ICtcbiAgICB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUgK1xuICAgICc/JyArXG4gICAgcGFyYW1zLnRvU3RyaW5nKClcbiAgKTtcbn1cblxuY29uc3QgS2FuZG9OYXZiYXIgPSAoe1xuICB3YXRlckF1dGhvcml0eUlkLFxuICBzZWxlY3RlZExhYmVsLFxuICBoYXNTZWFyY2gsXG59OiBJUHJvcHMpID0+IHtcbiAgY29uc3QgW3dhdGVyQXV0aG9yaXRpZXMsIHNldFdhdGVyQXV0aG9yaXRpZXNdID0gdXNlU3RhdGUoW10pO1xuICBjb25zdCBbbG9jYWxXYXRlckF1dGhvcml0eSwgc2V0TG9jYWxXYXRlckF1dGhvcml0eV0gPSB1c2VTdGF0ZSh7XG4gICAgcGhvdG9fdXJsOiAnbWlzc2luZycsXG4gICAgbGFiZWw6ICcnLFxuICB9KTtcbiAgY29uc3QgW3dhSWQsIHNldFdhSWRdID0gdXNlU3RhdGUod2F0ZXJBdXRob3JpdHlJZCk7XG4gIGNvbnN0IFttZW51LCBzZXRNZW51XSA9IHVzZVN0YXRlKHt9KTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gIGNvbnN0IHVzZVF1ZXJ5ID0gKCkgPT4ge1xuICAgIHJldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKHVzZUxvY2F0aW9uKCkuc2VhcmNoKTtcbiAgfTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeSgpO1xuXG4gIGNvbnN0IFtjdXN0b21lck1lbnUsIHNldEN1c3RvbWVyTWVudV0gPSB1c2VTdGF0ZSh7XG4gICAgZWRpdDoge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLmVkaXRfYWNjb3VudCcsXG4gICAgfSxcbiAgICBmZWVkYmFjazoge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLmZlZWRiYWNrJyxcbiAgICB9LFxuICAgIGhlbHA6IHtcbiAgICAgIGxpbms6ICcnLFxuICAgICAgbGFiZWw6ICdtYWluX3NjcmVlbi5oZWxwJyxcbiAgICB9LFxuICAgIG15X3Byb2ZpbGU6IHtcbiAgICAgIGxpbms6ICcnLFxuICAgICAgbGFiZWw6ICdtYWluX3NjcmVlbi5teV9wcm9maWxlJyxcbiAgICB9LFxuICAgIG5hbWU6IHVuZGVmaW5lZCxcbiAgICBzaWduX291dDoge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLnNpZ25fb3V0JyxcbiAgICAgIG1ldGhvZDogJycsXG4gICAgfSxcbiAgfSk7XG4gIGNvbnN0IG5hdkNvbnRleHQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5uYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQsXG4gICk7XG5cbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcblxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAoc2VsZWN0ZWRPcHRpb246IGFueSkgPT4ge1xuICAgIHNldFdhSWQoc2VsZWN0ZWRPcHRpb24udmFsdWUpO1xuICAgIGRpc3BhdGNoKHNldFdhdGVyQXV0aG9yaXR5KHsgaWQ6IHNlbGVjdGVkT3B0aW9uLnZhbHVlLCBuYW1lOiAnJyB9KSk7XG4gICAgaGlzdG9yeS5wdXNoKFxuICAgICAgYC8ke25hdkNvbnRleHQubmFtZX0vaW5kZXg/bG9jYWxlPSR7bmF2Q29udGV4dC5sb2NhbGV9JndhdGVyX2F1dGhvcml0eV9pZD0ke3NlbGVjdGVkT3B0aW9uLnZhbHVlfWAsXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBpdGVyYXRlID0gKG9iajogYW55KSA9PiB7XG4gICAgbGV0IGl0ZW1zOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgcHJvcGVydHkgaW4gb2JqKSB7XG4gICAgICBpZiAob2JqW3Byb3BlcnR5XS5leHBhbmRhYmxlKSB7XG4gICAgICAgIGl0ZW1zLnB1c2goXG4gICAgICAgICAgPE5hdkRyb3Bkb3duXG4gICAgICAgICAgICBrZXk9e29ialtwcm9wZXJ0eV0ubGFiZWx9XG4gICAgICAgICAgICB0aXRsZT17aTE4bi50KG9ialtwcm9wZXJ0eV0ubGFiZWwpfVxuICAgICAgICAgICAgaWQ9XCJiYXNpYy1uYXYtZHJvcGRvd25cIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpdGVyYXRlKG9ialtwcm9wZXJ0eV0uZXhwYW5zaW9uKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duPixcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChvYmpbcHJvcGVydHldLmNsYXNzID09PSAnanMtaXMtcmVhY3QnKSB7XG4gICAgICAgICAgaXRlbXMucHVzaChcbiAgICAgICAgICAgIDxMaW5rXG4gICAgICAgICAgICAgIGtleT17b2JqW3Byb3BlcnR5XS5saW5rfVxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJkcm9wZG93bi1pdGVtXCJcbiAgICAgICAgICAgICAgdG89e29ialtwcm9wZXJ0eV0ubGlua31cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2kxOG4udChvYmpbcHJvcGVydHldLmxhYmVsKX1cbiAgICAgICAgICAgIDwvTGluaz4sXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpdGVtcy5wdXNoKFxuICAgICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgICAga2V5PXtvYmpbcHJvcGVydHldLmxpbmt9XG4gICAgICAgICAgICAgIGhyZWY9e29ialtwcm9wZXJ0eV0ubGlua31cbiAgICAgICAgICAgICAgaWQ9XCJiYXNpYy1uYXZiYXItbmF2XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2kxOG4udChvYmpbcHJvcGVydHldLmxhYmVsKX1cbiAgICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT4sXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBpdGVtcztcbiAgfTtcblxuICBjb25zdCByZW5kZXJDbGllbnRzUGhvdG8gPSAoKSA9PiB7XG4gICAgaWYgKGxvY2FsV2F0ZXJBdXRob3JpdHkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgbGV0IHVybCA9IGxvY2FsV2F0ZXJBdXRob3JpdHkucGhvdG9fdXJsISBhcyBzdHJpbmc7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8aW1nXG4gICAgICAgICAgYWx0PVwibWlzc2luZ1wiXG4gICAgICAgICAgc3JjPXt1cmwuc3RhcnRzV2l0aCgnbWlzc2luZycpID8gV2F0ZXJBdXRob3JpdHlNaXNzaW5nSWNvbiA6IHVybH1cbiAgICAgICAgICBzdHlsZT17eyBoZWlnaHQ6ICc0MHB4Jywgd2lkdGg6ICdhdXRvJyB9fVxuICAgICAgICAvPlxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBidWlsZFN3aXRjaENsaWVudCA9ICgpID0+IHtcbiAgICBpZiAod2F0ZXJBdXRob3JpdGllcyAhPT0gdW5kZWZpbmVkICYmIHdhdGVyQXV0aG9yaXRpZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICBpZiAod2F0ZXJBdXRob3JpdGllcy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8cCBjbGFzc05hbWU9eyd3YXRlci1hdXRob3JpdHktc2luZ2xlLWxhYmVsJ30+XG4gICAgICAgICAgICB7bG9jYWxXYXRlckF1dGhvcml0eS5sYWJlbH1cbiAgICAgICAgICA8L3A+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxOYXZEcm9wZG93blxuICAgICAgICAgIHRpdGxlPXtsb2NhbFdhdGVyQXV0aG9yaXR5ICE9PSBudWxsID8gbG9jYWxXYXRlckF1dGhvcml0eS5sYWJlbCA6ICcnfVxuICAgICAgICAgIGlkPVwiYmFzaWMtbmF2LWRyb3Bkb3duXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtVGV4dCBzdHlsZT17eyB3aWR0aDogJzMwMHB4JyB9fT5cbiAgICAgICAgICAgIDxTZWxlY3RcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiYmFzaWMtc2luZ2xlXCJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lUHJlZml4PVwic2VsZWN0XCJcbiAgICAgICAgICAgICAgaXNTZWFyY2hhYmxlPXt0cnVlfVxuICAgICAgICAgICAgICBuYW1lPVwiY29sb3JcIlxuICAgICAgICAgICAgICBvcHRpb25zPXt3YXRlckF1dGhvcml0aWVzLm1hcCgobG9jYWxXYXRlckF1dGhvcml0eTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBsb2NhbFdhdGVyQXV0aG9yaXR5LmlkLFxuICAgICAgICAgICAgICAgICAgbGFiZWw6IGxvY2FsV2F0ZXJBdXRob3JpdHkubmFtZSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgZ2V0T3B0aW9uTGFiZWw9eyhsb2NhbFdhdGVyQXV0aG9yaXR5OiBhbnkpID0+XG4gICAgICAgICAgICAgICAgbG9jYWxXYXRlckF1dGhvcml0eS5sYWJlbFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhlOiBPYmplY3QpID0+IGhhbmRsZUNoYW5nZShlKX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtVGV4dD5cbiAgICAgICAgPC9OYXZEcm9wZG93bj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9O1xuXG4gIGNvbnN0IGJ1aWxkQ3VzdG9tZXJNZW51ID0gKGNvbnRleHROYW1lOiBzdHJpbmcpID0+IHtcbiAgICBpZiAoY3VzdG9tZXJNZW51ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxOYXZEcm9wZG93blxuICAgICAgICAgIGFsaWduUmlnaHRcbiAgICAgICAgICBjbGFzc05hbWU9eydjdXN0b21lci1tZW51IG9yZGVyLXNtLTMnfVxuICAgICAgICAgIGlkPVwiYmFzaWMtbmF2LWRyb3Bkb3duXCJcbiAgICAgICAgICB0aXRsZT17XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2N1c3RvbWVyLW1lbnVfX2NvbnRlbnQnfT5cbiAgICAgICAgICAgICAgPGltZyBzcmM9e0F2YXRhcn0gYWx0PVwiYXZhdGFyXCI+PC9pbWc+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17J2dyZWV0aW5nJ30+XG4gICAgICAgICAgICAgICAge2Ake2kxOG4udCgnbWFpbl9zY3JlZW4uaGVsbG8nKX0gJHtcbiAgICAgICAgICAgICAgICAgIGN1c3RvbWVyTWVudS5uYW1lID09PSB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICAgICAgPyBpMThuLnQoJ21haW5fc2NyZWVuLnRoZXJlJylcbiAgICAgICAgICAgICAgICAgICAgOiAnLCAnICsgY3VzdG9tZXJNZW51Lm5hbWVcbiAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICA+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17Y3VzdG9tZXJNZW51Lm15X3Byb2ZpbGUubGlua30+XG4gICAgICAgICAgICB7aTE4bi50KCdtYWluX3NjcmVlbi5teV9wcm9maWxlJyl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICBocmVmPXtjdXN0b21lck1lbnUuZWRpdC5saW5rfVxuICAgICAgICAgICAga2V5PXtjdXN0b21lck1lbnUuZWRpdC5saW5rfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpMThuLnQoJ21haW5fc2NyZWVuLmVkaXRfYWNjb3VudCcpfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVxuICAgICAgICAgICAgaHJlZj17Y3VzdG9tZXJNZW51LmZlZWRiYWNrLmxpbmt9XG4gICAgICAgICAgICBrZXk9e2N1c3RvbWVyTWVudS5mZWVkYmFjay5saW5rfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpMThuLnQoJ21haW5fc2NyZWVuLmZlZWRiYWNrJyl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICBocmVmPXtjdXN0b21lck1lbnUuaGVscC5saW5rfVxuICAgICAgICAgICAga2V5PXtjdXN0b21lck1lbnUuaGVscC5saW5rfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpMThuLnQoJ21haW5fc2NyZWVuLmhlbHAnKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkRpdmlkZXIgLz5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtyZXBsYWNlVVJMKCdsb2NhbGUnLCAnZW4nKX0+XG4gICAgICAgICAgICB7J0VuZ2xpc2gnfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtyZXBsYWNlVVJMKCdsb2NhbGUnLCAnZW5fdWsnKX0+XG4gICAgICAgICAgICB7J0VuZ2xpc2ggKFVLKSd9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdoZScpfT5cbiAgICAgICAgICAgIHsn16LXkdeo15nXqid9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdmcicpfT5cbiAgICAgICAgICAgIHsnRnJhbsOnYWlzJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17cmVwbGFjZVVSTCgnbG9jYWxlJywgJ2l0Jyl9PlxuICAgICAgICAgICAgeydJdGFsaWFubyd9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5EaXZpZGVyIC8+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgIGhyZWY9e2N1c3RvbWVyTWVudS5zaWduX291dC5saW5rfVxuICAgICAgICAgICAgZGF0YS1tZXRob2Q9e2N1c3RvbWVyTWVudS5zaWduX291dC5tZXRob2R9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udChjdXN0b21lck1lbnUuc2lnbl9vdXQubGFiZWwpfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgPC9OYXZEcm9wZG93bj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgbGV0IGxvY2FsZSA9IHF1ZXJ5LmdldCgnbG9jYWxlJykgfHwgJ2VuJztcbiAgICBmZXRjaChgL2RhdGEvbWVudV9kYXRhLmpzb24/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7d2FJZH0mbG9jYWxlPSR7bG9jYWxlfWApXG4gICAgICAudGhlbigocmVzcG9uc2UpID0+IHJlc3BvbnNlLmpzb24oKSlcbiAgICAgIC50aGVuKChqc29uKSA9PiB7XG4gICAgICAgIHNldFdhdGVyQXV0aG9yaXRpZXMoanNvbi53YXRlcl9hdXRob3JpdGllcyk7XG4gICAgICAgIHNldE1lbnUoanNvbi5tZW51KTtcbiAgICAgICAgZGlzcGF0Y2goXG4gICAgICAgICAgc2V0V2F0ZXJBdXRob3JpdHkoe1xuICAgICAgICAgICAgaWQ6IGpzb24ud2F0ZXJfYXV0aG9yaXR5LnZhbHVlLFxuICAgICAgICAgICAgbmFtZToganNvbi53YXRlcl9hdXRob3JpdHkubGFiZWwsXG4gICAgICAgICAgICBpc19jYXBhY2l0eToganNvbi53YXRlcl9hdXRob3JpdHkuaXNfY2FwYWNpdHksXG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICAgIHNldExvY2FsV2F0ZXJBdXRob3JpdHkoanNvbi53YXRlcl9hdXRob3JpdHkpOyAvLyBhZGQgdG8gU3RvcmVcbiAgICAgICAgdXBkYXRlUGFnZVRpdGxlKGpzb24ud2F0ZXJfYXV0aG9yaXR5LmxhYmVsKTtcbiAgICAgICAgc2V0Q3VzdG9tZXJNZW51KGpzb24uY3VzdG9tZXJfbWVudSk7XG4gICAgICB9KTtcblxuICAgIHJldHVybiBmdW5jdGlvbiBjbGVhbnVwKCkge1xuICAgICAgc2V0V2F0ZXJBdXRob3JpdGllcyhbXSk7XG4gICAgICBzZXRNZW51KHt9KTtcbiAgICB9O1xuICB9LCBbd2FJZF0pO1xuXG4gIHJldHVybiAoXG4gICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAgPEVycm9yQm91bmRhcnk+XG4gICAgICAgIDxOYXZiYXIgZXhwYW5kPVwic21cIiBjbGFzc05hbWU9eydqdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbid9PlxuICAgICAgICAgIDxOYXZiYXIuVG9nZ2xlIGFyaWEtY29udHJvbHM9XCJiYXNpYy1uYXZiYXItbmF2XCIgLz5cbiAgICAgICAgICA8TmF2YmFyLkJyYW5kIGNsYXNzTmFtZT17J2xvZ28nfT5cbiAgICAgICAgICAgIDxpbWcgc3JjPXtLYW5kb0xvZ299IGFsdD1cImthbmRvLWxvZ29cIj48L2ltZz5cbiAgICAgICAgICA8L05hdmJhci5CcmFuZD5cbiAgICAgICAgICA8TmF2YmFyLkJyYW5kIGNsYXNzTmFtZT17J2NsaWVudC1sb2dvJ30+XG4gICAgICAgICAgICB7cmVuZGVyQ2xpZW50c1Bob3RvKCl9XG4gICAgICAgICAgPC9OYXZiYXIuQnJhbmQ+XG4gICAgICAgICAge2J1aWxkQ3VzdG9tZXJNZW51KG5hdkNvbnRleHQubmFtZSl9XG4gICAgICAgICAgPE5hdmJhci5Db2xsYXBzZSBpZD1cImJhc2ljLW5hdmJhci1uYXZcIj5cbiAgICAgICAgICAgIDxOYXYgc3R5bGU9e3sgY29sb3I6ICdibHVlJyB9fT5cbiAgICAgICAgICAgICAge2l0ZXJhdGUobWVudSkubWFwKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07XG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J3N3aXRjaC1jbGllbnQtY29udGFpbmVyJ30+XG4gICAgICAgICAgICAgICAgPEZvbnRBd2Vzb21lSWNvbiBpY29uPXtmYVRpbnR9IC8+XG4gICAgICAgICAgICAgICAge2J1aWxkU3dpdGNoQ2xpZW50KCl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9OYXY+XG4gICAgICAgICAgPC9OYXZiYXIuQ29sbGFwc2U+XG4gICAgICAgICAge31cbiAgICAgICAgPC9OYXZiYXI+XG4gICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgKTtcbn07XG5LYW5kb05hdmJhci5kZWZhdWx0UHJvcHMgPSBkZWZhdWx0UHJvcHM7XG5cbmV4cG9ydCBkZWZhdWx0IEthbmRvTmF2YmFyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsa0JBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLGlCQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxNQUFBLEdBQUFDLHVCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxlQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxXQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxlQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxZQUFBLEdBQUFDLHNCQUFBLENBQUFSLE9BQUE7QUFDQSxJQUFBUyxXQUFBLEdBQUFELHNCQUFBLENBQUFSLE9BQUE7QUFDQSxJQUFBVSxVQUFBLEdBQUFGLHNCQUFBLENBQUFSLE9BQUE7QUFBeUUsSUFBQVcsS0FBQSxHQUFBSCxzQkFBQSxDQUFBUixPQUFBO0FBRXpFLElBQUFZLFdBQUEsR0FBQVosT0FBQTtBQUNBLElBQUFhLFFBQUEsR0FBQWIsT0FBQTtBQUVBLElBQUFjLGNBQUEsR0FBQU4sc0JBQUEsQ0FBQVIsT0FBQTtBQUNBLElBQUFl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