@kando-env/kando-ui 1.2.228-alpha.3 → 1.2.228-alpha.32

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 (569) hide show
  1. package/lib/Router.js +38 -106
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +14 -46
  3. package/lib/Widgets/EventsRow/EventsRow.js +17 -46
  4. package/lib/Widgets/Map/GraphUtils.js +2 -5
  5. package/lib/Widgets/Map/Map.js +59 -88
  6. package/lib/Widgets/Map/MapUtils.js +6 -57
  7. package/lib/Widgets/Map/areas/AreaPolygon.js +9 -31
  8. package/lib/Widgets/Map/areas/AreaPolygons.js +10 -25
  9. package/lib/Widgets/Map/edges/Edge.js +11 -34
  10. package/lib/Widgets/Map/edges/Edges.js +13 -24
  11. package/lib/Widgets/Map/edges/arrows/Arrows.js +9 -24
  12. package/lib/Widgets/Map/events/Event.js +9 -27
  13. package/lib/Widgets/Map/events/EventIndicator.js +21 -46
  14. package/lib/Widgets/Map/events/EventPath.js +7 -24
  15. package/lib/Widgets/Map/events/EventUtils.js +5 -55
  16. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +7 -23
  17. package/lib/Widgets/Map/events/PointOfEvent.js +7 -38
  18. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +5 -17
  19. package/lib/Widgets/Map/events/Snail.js +9 -23
  20. package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +17 -58
  21. package/lib/Widgets/Map/map/FloatingGraph.js +4 -20
  22. package/lib/Widgets/Map/map/GraphDateButton.js +4 -10
  23. package/lib/Widgets/Map/matchGraph/MatchGraph.js +5 -11
  24. package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +5 -11
  25. package/lib/Widgets/Map/points/PointIcon.js +7 -23
  26. package/lib/Widgets/Map/points/PointMarker.js +15 -25
  27. package/lib/Widgets/Map/points/PointMarkers.js +18 -26
  28. package/lib/Widgets/Map/points/PointUtils.js +12 -95
  29. package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +17 -53
  30. package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +6 -23
  31. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +3 -17
  32. package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +2 -6
  33. package/lib/Widgets/MostPolluting/Areas/Areas.js +21 -57
  34. package/lib/Widgets/MostPolluting/Areas/areas.mock.js +1 -1
  35. package/lib/Widgets/MostPolluting/Areas/areasResponse.interface.js +1 -1
  36. package/lib/Widgets/MostPolluting/Areas/styles.js +2 -8
  37. package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +4 -12
  38. package/lib/Widgets/MostPolluting/Factories/Factories.js +32 -68
  39. package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +5 -22
  40. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +2 -11
  41. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +5 -18
  42. package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +4 -8
  43. package/lib/Widgets/MostPolluting/Factories/factories.mock.js +1 -1
  44. package/lib/Widgets/MostPolluting/Factories/factoriesResponse.interface.js +1 -1
  45. package/lib/Widgets/MostPolluting/Factories/styles.js +2 -8
  46. package/lib/Widgets/MostPolluting/MostPolluting.js +6 -21
  47. package/lib/Widgets/MostPolluting/MostPolluting.stories.js +14 -18
  48. package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +3 -10
  49. package/lib/Widgets/MostPolluting/ShowMore/styles.js +2 -6
  50. package/lib/Widgets/MostPolluting/assets/index.js +18 -29
  51. package/lib/Widgets/MostPolluting/components/ChangePercent.js +2 -17
  52. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +16 -27
  53. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +5 -27
  54. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +26 -34
  55. package/lib/Widgets/MostPolluting/components/PotentialImpact.js +5 -21
  56. package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +30 -44
  57. package/lib/Widgets/MostPolluting/models.js +1 -1
  58. package/lib/Widgets/MostPolluting/styles.js +2 -8
  59. package/lib/Widgets/PotentialImpactSummary/Back/Back.js +3 -10
  60. package/lib/Widgets/PotentialImpactSummary/Icon.js +2 -12
  61. package/lib/Widgets/PotentialImpactSummary/index.js +9 -31
  62. package/lib/Widgets/PotentialImpactSummary/index.test.js +18 -37
  63. package/lib/Widgets/PotentialImpactSummary/styles.js +3 -16
  64. package/lib/Widgets/PotentialImpactSummary/useCasesResponse.interface.js +1 -1
  65. package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +5 -11
  66. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +8 -22
  67. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +20 -30
  68. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +16 -25
  69. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +9 -25
  70. package/lib/Widgets/QualitySummary/QualitySummary.js +9 -25
  71. package/lib/Widgets/QualitySummary/qualitySummary.mock.js +2 -2
  72. package/lib/Widgets/QualitySummary/qualitySummaryResponse.interface.js +1 -1
  73. package/lib/Widgets/QualitySummary/styles.js +3 -16
  74. package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +11 -24
  75. package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +11 -38
  76. package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +10 -19
  77. package/lib/Widgets/UtilityInformation/UtilityInformation.js +26 -51
  78. package/lib/Widgets/UtilityInformation/UtilityInformationResponse.interface.js +1 -1
  79. package/lib/Widgets/UtilityInformation/styles.js +4 -26
  80. package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +2 -2
  81. package/lib/assets/icons/index.js +5 -8
  82. package/lib/assets/icons/kandoStepper/index.js +9 -14
  83. package/lib/components/ApplyButton/ApplyButton.js +6 -12
  84. package/lib/components/ApplyButton/index.js +2 -5
  85. package/lib/components/Backdrop/Backdrop.js +3 -9
  86. package/lib/components/ContentLoader/ContentLoader.js +8 -13
  87. package/lib/components/ContentLoader/index.js +1 -2
  88. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +8 -15
  89. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +3 -9
  90. package/lib/components/CustomInputs/DoubleTabs/styles.js +3 -11
  91. package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +7 -22
  92. package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +2 -6
  93. package/lib/components/CustomInputs/Search/Search.js +15 -42
  94. package/lib/components/CustomInputs/Search/index.js +2 -5
  95. package/lib/components/CustomInputs/Select/Select.js +15 -35
  96. package/lib/components/CustomInputs/Select/Select.stories.js +3 -9
  97. package/lib/components/DamageType/DamageType.js +39 -80
  98. package/lib/components/DamageType/index.js +2 -5
  99. package/lib/components/DataLoaderError/DataLoaderError.js +5 -11
  100. package/lib/components/DischargeHeatmap/DischargeHeatmap.js +7 -17
  101. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +18 -38
  102. package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +14 -41
  103. package/lib/components/DischargeHeatmap/HighchartsOptions.js +7 -11
  104. package/lib/components/DischargeHeatmap/index.js +2 -5
  105. package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -4
  106. package/lib/components/DischargeHeatmap/popupText.js +2 -17
  107. package/lib/components/DischargeHeatmap/titles.js +2 -9
  108. package/lib/components/DischargeHeatmap/types.js +1 -1
  109. package/lib/components/ErrorBoundary.js +4 -16
  110. package/lib/components/Events/Events.js +7 -34
  111. package/lib/components/Events/index.js +2 -5
  112. package/lib/components/Graph/Graph.js +35 -80
  113. package/lib/components/Graph/index.js +2 -5
  114. package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +2 -8
  115. package/lib/components/Header/Breadcrumbs/index.js +2 -5
  116. package/lib/components/Header/DoubleTabs/DoubleTabs.js +16 -34
  117. package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +3 -9
  118. package/lib/components/Header/DoubleTabs/styles.js +3 -11
  119. package/lib/components/Header/Header.js +2 -8
  120. package/lib/components/Header/Header.stories.js +3 -9
  121. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +2 -12
  122. package/lib/components/Header/InfoBar/InfoBar.js +6 -34
  123. package/lib/components/Header/InfoBar/Search/Control.js +3 -14
  124. package/lib/components/Header/InfoBar/Search/GroupLabel.js +2 -13
  125. package/lib/components/Header/InfoBar/Search/Search.js +7 -30
  126. package/lib/components/Header/InfoBar/Search/SearchContainer.js +6 -25
  127. package/lib/components/Header/InfoBar/Search/index.js +2 -5
  128. package/lib/components/Header/InfoBar/Search/searchStyle.js +2 -5
  129. package/lib/components/Header/KandoNavbar/KandoNavbar.js +48 -95
  130. package/lib/components/Header/KandoNavbar/index.js +2 -5
  131. package/lib/components/Header/Slideshow/Slideshow.js +33 -71
  132. package/lib/components/Header/Slideshow/index.js +2 -5
  133. package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +2 -8
  134. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +3 -16
  135. package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +2 -16
  136. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +8 -25
  137. package/lib/components/Header/Toolbar/Toolbar.js +49 -89
  138. package/lib/components/InfoBar/InfoBar.js +10 -27
  139. package/lib/components/InfoBar/InfoBar.stories.js +3 -9
  140. package/lib/components/KandoModal/KandoModal.js +21 -46
  141. package/lib/components/KandoModal/index.js +2 -5
  142. package/lib/components/Link.js +3 -12
  143. package/lib/components/Links/CustomRedirect/CustomRedirect.js +4 -13
  144. package/lib/components/Links/StyledLink/StyledLink.js +7 -17
  145. package/lib/components/Links/StyledNavLink/StyledNavLink.js +5 -15
  146. package/lib/components/LiveEvents/CarouselSlide.js +6 -12
  147. package/lib/components/LiveEvents/LiveEvents.js +2 -11
  148. package/lib/components/LiveEvents/index.js +2 -5
  149. package/lib/components/LoaderByPercent/LoaderByPercent.js +14 -24
  150. package/lib/components/Map/Map.js +14 -30
  151. package/lib/components/Map/index.js +2 -5
  152. package/lib/components/Modal/Modal.js +4 -11
  153. package/lib/components/NarrowHeader.js +2 -13
  154. package/lib/components/PointInfo/PointInfo.js +11 -23
  155. package/lib/components/PointInfo/index.js +2 -5
  156. package/lib/components/PopupModal/PopupModal.js +7 -18
  157. package/lib/components/PopupModal/PopupModal.stories.js +3 -12
  158. package/lib/components/Sector/Sector.js +5 -14
  159. package/lib/components/Sector/Sector.test.js +4 -9
  160. package/lib/components/Sector/index.js +2 -5
  161. package/lib/components/Sector/sectorIcons.js +2 -28
  162. package/lib/components/SevereEvent/Eta/Eta.js +16 -43
  163. package/lib/components/SevereEvent/Eta/styles.js +2 -6
  164. package/lib/components/SevereEvent/SevereEvent.js +17 -40
  165. package/lib/components/Spinner/Spinner.js +6 -11
  166. package/lib/components/Spinner/Spinner.stories.js +3 -9
  167. package/lib/components/Spinner/index.js +2 -5
  168. package/lib/components/Spinner/styles.js +2 -10
  169. package/lib/components/Tabs/Tabs.js +7 -29
  170. package/lib/components/Tabs/Tabs.stories.js +3 -9
  171. package/lib/components/Tabs/assets/index.js +1 -6
  172. package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +4 -16
  173. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +14 -47
  174. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +14 -40
  175. package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +2 -5
  176. package/lib/components/TimeRangeSelector/TimeRangeHelper.js +10 -30
  177. package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +5 -10
  178. package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +2 -5
  179. package/lib/components/TimeRangeSelector/TimeRangeList.js +6 -17
  180. package/lib/components/TimeRangeSelector/TimeRangeOptions.js +13 -28
  181. package/lib/components/TimeRangeSelector/TimeRangeSelector.js +13 -40
  182. package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +3 -11
  183. package/lib/components/TimeRangeSelector/constants.js +2 -2
  184. package/lib/components/TimeRangeSelector/index.js +2 -5
  185. package/lib/components/Toggle/Toggle.js +9 -25
  186. package/lib/components/Toggle/index.js +2 -5
  187. package/lib/components/TrendGraph/TrendGraph.js +19 -54
  188. package/lib/components/TrendGraph/index.js +2 -5
  189. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +12 -39
  190. package/lib/components/TrendGraphNVL/index.js +2 -5
  191. package/lib/development-environment/index.js +2 -14
  192. package/lib/development-environment/mock/browser.js +2 -9
  193. package/lib/development-environment/mock/get.js +1 -5
  194. package/lib/development-environment/mock/handlers.js +1 -26
  195. package/lib/development-environment/mock/mockBus.js +2 -7
  196. package/lib/development-environment/mock/mockObjects/area-trends-graph.js +1 -1
  197. package/lib/development-environment/mock/mockObjects/areaInformation.js +1 -1
  198. package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +1 -1
  199. package/lib/development-environment/mock/mockObjects/areaSitesData.js +1 -1
  200. package/lib/development-environment/mock/mockObjects/areasJson.js +1 -1
  201. package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +1 -1
  202. package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +1 -1
  203. package/lib/development-environment/mock/mockObjects/data-menuData.js +1 -1
  204. package/lib/development-environment/mock/mockObjects/data-search.js +1 -1
  205. package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +1 -1
  206. package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +1 -1
  207. package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +1 -1
  208. package/lib/development-environment/mock/mockObjects/eventsJson.js +1 -1
  209. package/lib/development-environment/mock/mockObjects/metascore.js +1 -1
  210. package/lib/development-environment/mock/mockObjects/permissionsJson.js +1 -1
  211. package/lib/development-environment/mock/mockObjects/pointsJson.js +1 -1
  212. package/lib/development-environment/mock/mockObjects/site-info.js +1 -1
  213. package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +1 -1
  214. package/lib/development-environment/togly/ToglyDashboard.js +6 -26
  215. package/lib/development-environment/togly/ToglyItem.js +7 -29
  216. package/lib/development-environment/togly/flags.js +1 -1
  217. package/lib/development-environment/togly/init.js +2 -7
  218. package/lib/development-environment/togly/macro.js +7 -9
  219. package/lib/development-environment/togly/useDoubleKeyDown.js +1 -8
  220. package/lib/development-environment/togly/useLocalStorage.js +13 -20
  221. package/lib/hooks/useApi.js +38 -59
  222. package/lib/hooks/useApiWithDashboardQuery.js +11 -31
  223. package/lib/hooks/useClickOutside.js +1 -5
  224. package/lib/hooks/useInitializeHeaders.js +2 -8
  225. package/lib/hooks/useKandoFetch.js +14 -28
  226. package/lib/hooks/useMap.js +11 -38
  227. package/lib/hooks/useNavContext.js +14 -23
  228. package/lib/hooks/useQueryURL.js +1 -4
  229. package/lib/hooks/useRemoveExistingLayers.js +2 -7
  230. package/lib/hooks/useUpdateEventBodyTail.js +1 -10
  231. package/lib/hooks/useUserTimeZone.js +1 -9
  232. package/lib/hooks/useUserTimeZone.test.js +3 -13
  233. package/lib/hooks/useWindowSize.js +15 -20
  234. package/lib/index.js +14 -30
  235. package/lib/macros/getVersion.js +2 -3
  236. package/lib/models/IAction.js +1 -1
  237. package/lib/models/IAppState.js +1 -1
  238. package/lib/pages/AreaPage/AreaPage.js +31 -64
  239. package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +7 -20
  240. package/lib/pages/AreaPage/Dashboard/Dashboard.js +4 -27
  241. package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +13 -39
  242. package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +7 -9
  243. package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +30 -68
  244. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +2 -11
  245. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +4 -16
  246. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +4 -8
  247. package/lib/pages/AreaPage/Dashboard/Sites/SitesResponse.interface.js +1 -1
  248. package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +1 -1
  249. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +3 -11
  250. package/lib/pages/AssessmentPage/AssessmentPage.js +7 -34
  251. package/lib/pages/CannyWidget/Feedback.js +12 -29
  252. package/lib/pages/CovidPage/CovidPage.js +3 -18
  253. package/lib/pages/CovidPage/components/Body.js +11 -37
  254. package/lib/pages/CovidPage/components/Map.js +22 -42
  255. package/lib/pages/CovidPage/components/Sidebar.js +6 -22
  256. package/lib/pages/CovidPage/components/Summary.js +10 -33
  257. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +12 -39
  258. package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +2 -5
  259. package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +15 -45
  260. package/lib/pages/CovidPage/components/TrendPopupContent/index.js +2 -5
  261. package/lib/pages/CovidPage/components/areas/Area.js +8 -37
  262. package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +6 -49
  263. package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +7 -22
  264. package/lib/pages/CovidPage/components/areas/AreasList.js +16 -37
  265. package/lib/pages/CovidPage/components/areas/Sort.js +7 -23
  266. package/lib/pages/CovidPage/components/nvlStatusHelper.js +2 -11
  267. package/lib/pages/EventsPage/Body/Body.js +4 -23
  268. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +13 -32
  269. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +12 -32
  270. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +5 -12
  271. package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +4 -12
  272. package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +6 -11
  273. package/lib/pages/EventsPage/DragAndDropArea/index.js +2 -5
  274. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +9 -37
  275. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +3 -22
  276. package/lib/pages/EventsPage/EventsPage.js +3 -17
  277. package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +12 -37
  278. package/lib/pages/EventsPage/events/MoreInfo.js +3 -23
  279. package/lib/pages/EventsPage/events/Sidebar.js +7 -22
  280. package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +7 -33
  281. package/lib/pages/EventsPage/events/event_info/EventDetails.js +9 -33
  282. package/lib/pages/EventsPage/events/event_info/EventInfo.js +14 -45
  283. package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +3 -15
  284. package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +12 -44
  285. package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +2 -13
  286. package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +10 -34
  287. package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +2 -9
  288. package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/LineChartYear/LineChartYear.js +9 -31
  289. package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/MockHistoryInformation.js +3 -11
  290. package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +7 -25
  291. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsLineChart.js +6 -27
  292. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +6 -26
  293. package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +8 -37
  294. package/lib/pages/EventsPage/events/event_info/samplings/Sampling.js +4 -16
  295. package/lib/pages/EventsPage/events/event_info/samplings/Samplings.js +3 -11
  296. package/lib/pages/EventsPage/events/event_info/sources/Source.js +9 -32
  297. package/lib/pages/EventsPage/events/event_info/sources/Sources.js +6 -24
  298. package/lib/pages/EventsPage/events/events_list/EventItem.js +5 -28
  299. package/lib/pages/EventsPage/events/events_list/EventUtils.js +3 -14
  300. package/lib/pages/EventsPage/events/events_list/EventsList.js +41 -107
  301. package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +13 -36
  302. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +33 -100
  303. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +12 -59
  304. package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +7 -21
  305. package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +17 -42
  306. package/lib/pages/EventsPage/events/events_list/Sort.js +6 -27
  307. package/lib/pages/ImportFileWizard/FileUploadRespones.js +5 -20
  308. package/lib/pages/ImportFileWizard/ImportButtomButtons.js +4 -10
  309. package/lib/pages/ImportFileWizard/ImportFile.js +12 -33
  310. package/lib/pages/ImportFileWizard/ResponseBody.js +4 -13
  311. package/lib/pages/ImportFileWizard/ValidationForm.js +8 -28
  312. package/lib/pages/ImportFileWizard/ValidationResponse.js +9 -35
  313. package/lib/pages/ImportFileWizard/importFileUtils.js +5 -6
  314. package/lib/pages/ImportFileWizard/index.js +2 -5
  315. package/lib/pages/ImportGisPage/ImportGisContainer.js +9 -31
  316. package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +11 -28
  317. package/lib/pages/ImportGisPage/importGisUtils.js +6 -18
  318. package/lib/pages/ImportGisProcess/index.js +5 -19
  319. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +7 -23
  320. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +4 -11
  321. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +2 -9
  322. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +27 -62
  323. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +3 -9
  324. package/lib/pages/NotificationsPage/Notification/Notification.js +9 -17
  325. package/lib/pages/NotificationsPage/Notifications.interface.js +1 -1
  326. package/lib/pages/NotificationsPage/Notifications.mock.js +1 -1
  327. package/lib/pages/NotificationsPage/Notifications.stories.js +3 -11
  328. package/lib/pages/NotificationsPage/NotificationsPage.js +14 -40
  329. package/lib/pages/NotificationsPage/assets/index.js +15 -24
  330. package/lib/pages/NotificationsPageV2/NotificationsPage.js +37 -87
  331. package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +5 -25
  332. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +17 -44
  333. package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +20 -53
  334. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +5 -48
  335. package/lib/pages/NotificationsPageV2/notificationUtils.js +3 -30
  336. package/lib/pages/OldSitePage/IDashboardData.js +1 -1
  337. package/lib/pages/OldSitePage/OldSitePage.js +65 -132
  338. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +4 -17
  339. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +3 -9
  340. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +5 -10
  341. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +6 -13
  342. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +3 -13
  343. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +9 -27
  344. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +7 -21
  345. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +5 -11
  346. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +3 -13
  347. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +11 -28
  348. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +5 -13
  349. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +30 -63
  350. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +2 -2
  351. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +13 -11
  352. package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +5 -22
  353. package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +4 -19
  354. package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +9 -17
  355. package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +3 -18
  356. package/lib/pages/OldSitePage/SamplingParameters/models.js +1 -1
  357. package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +3 -11
  358. package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +3 -8
  359. package/lib/pages/ProfilePage/Container.js +2 -6
  360. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +18 -47
  361. package/lib/pages/ProfilePage/ProfilePage.js +41 -92
  362. package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +11 -36
  363. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +8 -18
  364. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +5 -18
  365. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +69 -111
  366. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +6 -25
  367. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +8 -16
  368. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +9 -30
  369. package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +7 -26
  370. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +10 -22
  371. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +2 -14
  372. package/lib/pages/SamplingsPage/DesktopActions/index.js +2 -5
  373. package/lib/pages/SamplingsPage/NavigationDropdown.js +4 -22
  374. package/lib/pages/SamplingsPage/NewSamplingAction.js +29 -79
  375. package/lib/pages/SamplingsPage/SamplingMobileModal.js +13 -66
  376. package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +6 -20
  377. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +3 -14
  378. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +24 -60
  379. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +6 -24
  380. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +2 -15
  381. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +113 -192
  382. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +13 -46
  383. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +16 -51
  384. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +17 -53
  385. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +7 -25
  386. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +3 -9
  387. package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +2 -12
  388. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +9 -40
  389. package/lib/pages/SamplingsPage/SamplingsMobileList.js +12 -38
  390. package/lib/pages/SamplingsPage/SamplingsPage.js +16 -43
  391. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +16 -52
  392. package/lib/pages/SamplingsPage/index.js +1 -3
  393. package/lib/pages/SamplingsPage/samplingsPageUtils.js +8 -31
  394. package/lib/pages/SitePage/DischargePattern/DischargePattern.js +3 -11
  395. package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +3 -9
  396. package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +4 -18
  397. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +7 -12
  398. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +16 -24
  399. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +8 -17
  400. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +19 -28
  401. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +3 -13
  402. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +11 -30
  403. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +7 -21
  404. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +5 -11
  405. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +3 -13
  406. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +11 -28
  407. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +5 -13
  408. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +34 -72
  409. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +2 -2
  410. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +13 -11
  411. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +6 -23
  412. package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +4 -19
  413. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +18 -39
  414. package/lib/pages/SitePage/SamplingParameters/dataParser.js +15 -31
  415. package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +3 -7
  416. package/lib/pages/SitePage/SamplingParameters/models.js +1 -1
  417. package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +3 -11
  418. package/lib/pages/SitePage/SamplingParameters/styles/styles.js +3 -9
  419. package/lib/pages/SitePage/SiteInformation/ContributorItem.js +6 -13
  420. package/lib/pages/SitePage/SiteInformation/EmptyState.js +2 -11
  421. package/lib/pages/SitePage/SiteInformation/PollutionContributor.js +6 -16
  422. package/lib/pages/SitePage/SiteInformation/SiteInformation.js +19 -52
  423. package/lib/pages/SitePage/SiteInformation/style.js +3 -9
  424. package/lib/pages/SitePage/SitePage.js +36 -79
  425. package/lib/pages/UploadLabResult/index.js +2 -9
  426. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +12 -42
  427. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +3 -10
  428. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +3 -17
  429. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +3 -9
  430. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +11 -39
  431. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +2 -6
  432. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +2 -8
  433. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +2 -11
  434. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +8 -17
  435. package/lib/pages/UtilityDashboardPage/MostSevereEvents/models.js +1 -1
  436. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +2 -11
  437. package/lib/pages/UtilityDashboardPage/TopBar/styles.js +2 -6
  438. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +5 -29
  439. package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +14 -20
  440. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +7 -20
  441. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +7 -24
  442. package/lib/pages/WbeDashboard/ExpandableComponent.js +3 -15
  443. package/lib/pages/WbeDashboard/GraphWrapper.js +7 -30
  444. package/lib/pages/WbeDashboard/IndividualTinyGraph.js +8 -23
  445. package/lib/pages/WbeDashboard/SearchInput.js +6 -26
  446. package/lib/pages/WbeDashboard/SummaryGraph.js +34 -69
  447. package/lib/pages/WbeDashboard/SummaryGraphModal.js +2 -14
  448. package/lib/pages/WbeDashboard/Tabs.js +4 -10
  449. package/lib/pages/WbeDashboard/WbeDashboardPage.js +27 -116
  450. package/lib/pages/WbeDashboard/WbeSummaryBar.js +10 -46
  451. package/lib/providers/Slideshow/SlideshowContext.js +3 -5
  452. package/lib/providers/Slideshow/SlideshowProvider.js +18 -35
  453. package/lib/providers/Slideshow/SlideshowRunner.js +7 -17
  454. package/lib/providers/UrlHistory/UrlHistoryContext.js +4 -8
  455. package/lib/providers/UrlHistory/UrlHistoryProvider.js +2 -16
  456. package/lib/providers/UrlHistory/index.js +6 -9
  457. package/lib/providers/UrlHistory/useLastVisited.js +1 -7
  458. package/lib/react-app-env.d.js +1 -1
  459. package/lib/store/ImportGis/action.js +1 -1
  460. package/lib/store/ImportGis/actionTypes.js +5 -6
  461. package/lib/store/ImportGis/actionsCreator.js +7 -17
  462. package/lib/store/ImportGis/models/gisImports.js +1 -1
  463. package/lib/store/ImportGis/reducer.js +3 -19
  464. package/lib/store/WBE/actionTypes.js +1 -1
  465. package/lib/store/WBE/actions.js +1 -3
  466. package/lib/store/WBE/models/IAreaWBE.js +1 -1
  467. package/lib/store/WBE/models/IWBE.js +1 -1
  468. package/lib/store/WBE/models/IWBEState.js +1 -1
  469. package/lib/store/WBE/reducer.js +3 -10
  470. package/lib/store/areas/actionTypes.js +2 -2
  471. package/lib/store/areas/actions.js +3 -12
  472. package/lib/store/areas/models/IArea.js +1 -1
  473. package/lib/store/areas/models/IAreasState.js +1 -1
  474. package/lib/store/areas/reducer.js +1 -9
  475. package/lib/store/context/actionTypes.js +2 -2
  476. package/lib/store/context/actions.js +2 -6
  477. package/lib/store/context/contextMiddlewares.js +1 -9
  478. package/lib/store/context/models/INavContext.js +1 -1
  479. package/lib/store/context/models/INavContextState.js +1 -1
  480. package/lib/store/context/reducer.js +3 -10
  481. package/lib/store/dashboard/dashboardSlice.js +1 -3
  482. package/lib/store/dashboard/periodType.js +1 -1
  483. package/lib/store/edges/actionTypes.js +2 -2
  484. package/lib/store/edges/actions.js +3 -9
  485. package/lib/store/edges/models/IEdge.js +1 -1
  486. package/lib/store/edges/models/IEdgesState.js +1 -1
  487. package/lib/store/edges/reducer.js +3 -17
  488. package/lib/store/events/actionTypes.js +2 -2
  489. package/lib/store/events/actions.js +10 -28
  490. package/lib/store/events/models/IEvent.js +1 -1
  491. package/lib/store/events/models/IEventsState.js +1 -1
  492. package/lib/store/events/models/ISource.js +1 -1
  493. package/lib/store/events/reducer.js +4 -42
  494. package/lib/store/filters/IFilter.js +1 -1
  495. package/lib/store/filters/IFilterItem.js +1 -1
  496. package/lib/store/global/actionTypes.js +2 -2
  497. package/lib/store/global/actions.js +8 -20
  498. package/lib/store/global/models/IGlobalState.js +1 -1
  499. package/lib/store/global/reducer.js +3 -19
  500. package/lib/store/permissions/permissionsSlice.js +1 -6
  501. package/lib/store/points/actionTypes.js +2 -2
  502. package/lib/store/points/actions.js +1 -5
  503. package/lib/store/points/models/IGroup.js +1 -1
  504. package/lib/store/points/models/IPoint.js +1 -1
  505. package/lib/store/points/models/IPointsState.js +1 -1
  506. package/lib/store/points/reducer.js +1 -7
  507. package/lib/store/rootActionTypes.js +1 -1
  508. package/lib/store/rootActions.js +1 -3
  509. package/lib/store/rootReducer.js +5 -24
  510. package/lib/store/rootStore.js +5 -13
  511. package/lib/store/samplings/action.js +1 -1
  512. package/lib/store/samplings/actionTypes.js +5 -6
  513. package/lib/store/samplings/actionsCreator.js +2 -5
  514. package/lib/store/samplings/models/Samplings.js +1 -1
  515. package/lib/store/samplings/reducer.js +2 -10
  516. package/lib/styles/StylesLayout.js +2 -8
  517. package/lib/styles/theme/theme.js +2 -4
  518. package/lib/test/mocks/browser.js +4 -8
  519. package/lib/test/test-utils.js +12 -22
  520. package/lib/ui-kit/Button/Button.js +16 -24
  521. package/lib/ui-kit/Button/Button.test.js +8 -30
  522. package/lib/ui-kit/Button/ButtonUtils.js +1 -1
  523. package/lib/ui-kit/Checkbox/Checkbox.js +8 -22
  524. package/lib/ui-kit/DropDown/DropDown.js +6 -17
  525. package/lib/ui-kit/DropDown/DropDown.test.js +7 -13
  526. package/lib/ui-kit/DropDown/DropDownItem.js +6 -14
  527. package/lib/ui-kit/DropDown/DropdownToggle.js +3 -14
  528. package/lib/ui-kit/IconAction/IconAction.js +4 -10
  529. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +19 -54
  530. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +17 -28
  531. package/lib/ui-kit/KandoList/KandoList.js +6 -19
  532. package/lib/ui-kit/KandoList/kandoListUtils.js +1 -1
  533. package/lib/ui-kit/KandoTable/KandoTable.js +23 -39
  534. package/lib/ui-kit/KandoTable/KandoTable.test.js +2 -17
  535. package/lib/ui-kit/KandoTable/kandoTableUtils.js +1 -1
  536. package/lib/ui-kit/Layout/Layout.js +2 -9
  537. package/lib/ui-kit/MobileInput/MobileInput.js +19 -34
  538. package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +9 -15
  539. package/lib/ui-kit/ModalConfirmation/index.js +1 -3
  540. package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +6 -11
  541. package/lib/ui-kit/SamplingStatus/SamplingStatus.js +4 -12
  542. package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +4 -11
  543. package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +6 -15
  544. package/lib/ui-kit/Tooltip/Tooltip.js +4 -9
  545. package/lib/ui-kit/index.js +1 -15
  546. package/lib/ui-kit/kandoStepper/KandoStepper.js +3 -8
  547. package/lib/utilities/ActionUtility.js +1 -2
  548. package/lib/utilities/Alert.js +3 -11
  549. package/lib/utilities/Analytics.js +2 -13
  550. package/lib/utilities/Array.js +2 -6
  551. package/lib/utilities/Enum.js +22 -39
  552. package/lib/utilities/ErrorBoundary.js +4 -19
  553. package/lib/utilities/File.js +43 -66
  554. package/lib/utilities/GetDir.js +5 -9
  555. package/lib/utilities/KandoDate.js +2 -8
  556. package/lib/utilities/KandoModal.js +9 -26
  557. package/lib/utilities/LocalStorage.js +2 -13
  558. package/lib/utilities/ThousandsToK.js +1 -3
  559. package/lib/utilities/TimeFormat.js +8 -23
  560. package/lib/utilities/Truncate.js +9 -31
  561. package/lib/utilities/edgesMath.js +9 -28
  562. package/lib/utilities/i18n.js +2 -15
  563. package/lib/utilities/kql.js +3 -10
  564. package/lib/utilities/map/icons.js +2 -19
  565. package/lib/utilities/scoreToColor.js +1 -8
  566. package/lib/utilities/time.js +3 -10
  567. package/lib/utilities/uploadToS3.js +2 -10
  568. package/lib/utilities/urls.js +5 -13
  569. package/package.json +4 -2
package/lib/Router.js CHANGED
@@ -1,152 +1,94 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.default = void 0;
11
-
12
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
-
9
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/regeneratorRuntime"));
14
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
15
-
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
17
-
18
12
  var _styledComponents = _interopRequireDefault(require("styled-components"));
19
-
20
13
  require("leaflet/dist/leaflet.css");
21
-
22
14
  require("react-toastify/dist/ReactToastify.css");
23
-
24
15
  var _react = _interopRequireWildcard(require("react"));
25
-
26
16
  var _axios = _interopRequireDefault(require("axios"));
27
-
28
17
  var _reactQuery = require("react-query");
29
-
30
18
  var _reactRouterDom = require("react-router-dom");
31
-
32
19
  var _reactToastify = require("react-toastify");
33
-
34
20
  var _reactRedux = require("react-redux");
35
-
36
21
  var _NotificationsPage = _interopRequireDefault(require("pages/NotificationsPageV2/NotificationsPage"));
37
-
38
22
  var _SamplingsPage = _interopRequireDefault(require("pages/SamplingsPage"));
39
-
40
23
  var _StylesLayout = _interopRequireDefault(require("styles/StylesLayout"));
41
-
42
24
  var _UrlHistoryProvider = _interopRequireDefault(require("providers/UrlHistory/UrlHistoryProvider"));
43
-
44
25
  var _useQueryURL = _interopRequireDefault(require("hooks/useQueryURL"));
45
-
46
26
  var _permissionsSlice = require("store/permissions/permissionsSlice");
47
-
48
27
  var _SamplingProperties = require("pages/SamplingsPage/SamplingProperties/SamplingProperties");
49
-
50
28
  var _ImportGisContainer = _interopRequireDefault(require("./pages/ImportGisPage/ImportGisContainer"));
51
-
52
29
  var _ImportGisProcess = _interopRequireDefault(require("./pages/ImportGisProcess"));
53
-
54
30
  var _EventsPage = _interopRequireDefault(require("./pages/EventsPage/EventsPage"));
55
-
56
31
  var _Feedback = _interopRequireDefault(require("./pages/CannyWidget/Feedback"));
57
-
58
32
  var _AreaPage = require("./pages/AreaPage/AreaPage");
59
-
60
33
  var _ProfilePage = require("./pages/ProfilePage/ProfilePage");
61
-
62
34
  var _SitePage = require("./pages/SitePage/SitePage");
63
-
64
35
  var _UtilityDashboardPage = require("./pages/UtilityDashboardPage/UtilityDashboardPage");
65
-
66
36
  var _WbeDashboardPage = require("./pages/WbeDashboard/WbeDashboardPage");
67
-
68
37
  var _actions = require("./store/global/actions");
69
-
70
38
  var _actions2 = require("./store/context/actions");
71
-
72
39
  var _GetDir = _interopRequireDefault(require("./utilities/GetDir"));
73
-
74
40
  var _i18n = _interopRequireDefault(require("./utilities/i18n"));
75
-
76
41
  require("./macros/getVersion");
77
-
78
42
  require("./styles.scss");
79
-
80
43
  var _Spinner = require("./components/Spinner/Spinner");
81
-
82
44
  var _Toolbar = require("./components/Header/Toolbar/Toolbar");
83
-
84
45
  var _UploadLabResult = _interopRequireDefault(require("./pages/UploadLabResult"));
85
-
86
46
  var _SlideshowRunner = _interopRequireDefault(require("./providers/Slideshow/SlideshowRunner"));
87
-
88
47
  var _SlideshowProvider = _interopRequireDefault(require("./providers/Slideshow/SlideshowProvider"));
89
-
90
48
  var _AssessmentPage = _interopRequireDefault(require("./pages/AssessmentPage/AssessmentPage"));
91
-
92
- 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); }
93
-
94
- 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; }
95
-
96
49
  var queryClient = new _reactQuery.QueryClient();
97
-
98
50
  var Router = function Router() {
99
51
  var queryUrl = (0, _useQueryURL.default)();
100
52
  var dispatch = (0, _reactRedux.useDispatch)();
101
-
102
53
  var _useState = (0, _react.useState)(),
103
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
104
- localePrefix = _useState2[0],
105
- setLocalePrefix = _useState2[1];
106
-
54
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
55
+ localePrefix = _useState2[0],
56
+ setLocalePrefix = _useState2[1];
107
57
  var query = (0, _useQueryURL.default)();
108
58
  var waterAuthorityIdFromUrl = parseInt(query.get('water_authority_id') || '0');
109
59
  (0, _react.useEffect)(function () {
110
60
  var FetchPermissions = /*#__PURE__*/function () {
111
- var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
61
+ var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
112
62
  var _res$data;
113
-
114
63
  var res;
115
- return _regenerator.default.wrap(function _callee$(_context) {
116
- while (1) {
117
- switch (_context.prev = _context.next) {
118
- case 0:
119
- _context.next = 2;
120
- return _axios.default.get('/permissions', {
121
- params: {
122
- water_authority_id: waterAuthorityIdFromUrl
123
- }
124
- });
125
-
126
- case 2:
127
- res = _context.sent;
128
-
129
- if (res === null || res === void 0 ? void 0 : (_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.data) {
130
- dispatch((0, _actions.setWaterAuthority)({
131
- id: waterAuthorityIdFromUrl,
132
- name: res.data.data.water_authority_name
133
- }));
134
- dispatch(_permissionsSlice.PermissionsSlice.actions.setDashboardPermission(res.data.data));
64
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
65
+ while (1) switch (_context.prev = _context.next) {
66
+ case 0:
67
+ _context.next = 2;
68
+ return _axios.default.get('/permissions', {
69
+ params: {
70
+ water_authority_id: waterAuthorityIdFromUrl
135
71
  }
136
-
137
- case 4:
138
- case "end":
139
- return _context.stop();
140
- }
72
+ });
73
+ case 2:
74
+ res = _context.sent;
75
+ if (res !== null && res !== void 0 && (_res$data = res.data) !== null && _res$data !== void 0 && _res$data.data) {
76
+ dispatch((0, _actions.setWaterAuthority)({
77
+ id: waterAuthorityIdFromUrl,
78
+ name: res.data.data.water_authority_name
79
+ }));
80
+ dispatch(_permissionsSlice.PermissionsSlice.actions.setDashboardPermission(res.data.data));
81
+ }
82
+ case 4:
83
+ case "end":
84
+ return _context.stop();
141
85
  }
142
86
  }, _callee);
143
87
  }));
144
-
145
88
  return function FetchPermissions() {
146
89
  return _ref.apply(this, arguments);
147
90
  };
148
91
  }();
149
-
150
92
  if (waterAuthorityIdFromUrl) {
151
93
  FetchPermissions();
152
94
  }
@@ -157,33 +99,26 @@ var Router = function Router() {
157
99
  }));
158
100
  }, [dispatch, localePrefix]);
159
101
  (0, _react.useEffect)(function () {
160
- (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
102
+ (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2() {
161
103
  var prefix;
162
- return _regenerator.default.wrap(function _callee2$(_context2) {
163
- while (1) {
164
- switch (_context2.prev = _context2.next) {
165
- case 0:
166
- prefix = queryUrl.has('locale') ? queryUrl.get('locale') : 'en';
167
-
168
- _i18n.default.changeLanguage(prefix);
169
-
170
- setLocalePrefix(prefix);
171
-
172
- case 3:
173
- case "end":
174
- return _context2.stop();
175
- }
104
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
105
+ while (1) switch (_context2.prev = _context2.next) {
106
+ case 0:
107
+ prefix = queryUrl.has('locale') ? queryUrl.get('locale') : 'en';
108
+ _i18n.default.changeLanguage(prefix);
109
+ setLocalePrefix(prefix);
110
+ case 3:
111
+ case "end":
112
+ return _context2.stop();
176
113
  }
177
114
  }, _callee2);
178
115
  }))();
179
116
  }, [queryUrl]);
180
-
181
117
  if (!localePrefix) {
182
118
  return /*#__PURE__*/_react.default.createElement(AppLoader, null, /*#__PURE__*/_react.default.createElement(AppSpinner, {
183
119
  length: "80px"
184
120
  }));
185
121
  }
186
-
187
122
  return /*#__PURE__*/_react.default.createElement(_reactQuery.QueryClientProvider, {
188
123
  client: queryClient
189
124
  }, /*#__PURE__*/_react.default.createElement(_UrlHistoryProvider.default, null, /*#__PURE__*/_react.default.createElement(_SlideshowProvider.default, null, /*#__PURE__*/_react.default.createElement(_StylesLayout.default, null, /*#__PURE__*/_react.default.createElement(_GetDir.default, {
@@ -253,17 +188,14 @@ var Router = function Router() {
253
188
  exact: true
254
189
  })))))));
255
190
  };
256
-
257
191
  var _default = Router;
258
192
  exports.default = _default;
259
-
260
193
  var AppLoader = _styledComponents.default.div.withConfig({
261
194
  displayName: "Router__AppLoader",
262
195
  componentId: "sc-6ilswc-0"
263
196
  })(["height:100vh;width:100vw;"]);
264
-
265
197
  var AppSpinner = (0, _styledComponents.default)(_Spinner.Spinner).withConfig({
266
198
  displayName: "Router__AppSpinner",
267
199
  componentId: "sc-6ilswc-1"
268
200
  })(["height:100vh;"]);
269
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9Sb3V0ZXIudHN4Il0sIm5hbWVzIjpbInF1ZXJ5Q2xpZW50IiwiUXVlcnlDbGllbnQiLCJSb3V0ZXIiLCJxdWVyeVVybCIsImRpc3BhdGNoIiwibG9jYWxlUHJlZml4Iiwic2V0TG9jYWxlUHJlZml4IiwicXVlcnkiLCJ3YXRlckF1dGhvcml0eUlkRnJvbVVybCIsInBhcnNlSW50IiwiZ2V0IiwiRmV0Y2hQZXJtaXNzaW9ucyIsImF4aW9zIiwicGFyYW1zIiwid2F0ZXJfYXV0aG9yaXR5X2lkIiwicmVzIiwiZGF0YSIsImlkIiwibmFtZSIsIndhdGVyX2F1dGhvcml0eV9uYW1lIiwiUGVybWlzc2lvbnNTbGljZSIsImFjdGlvbnMiLCJzZXREYXNoYm9hcmRQZXJtaXNzaW9uIiwibG9jYWxlIiwicHJlZml4IiwiaGFzIiwiaTE4biIsImNoYW5nZUxhbmd1YWdlIiwiVXRpbGl0eURhc2hib2FyZFBhZ2UiLCJBcmVhUGFnZSIsIlNpdGVQYWdlIiwiUHJvZmlsZVBhZ2UiLCJGZWVkYmFjayIsIkV2ZW50c1BhZ2UiLCJJbXBvcnRQbGFubmluZ3MiLCJVcGxvYWRMYWJSZXN1bHQiLCJJbXBvcnRHaXNQcm9jZXNzIiwiV2JlRGFzaGJvYXJkUGFnZSIsIlNhbXBsaW5nc1BhZ2UiLCJTYW1wbGluZ1Byb3BlcnRpZXMiLCJOb3RpZmljYXRpb25zUGFnZSIsIkFzc2Vzc21lbnRQYWdlIiwiU2xpZGVzaG93UnVubmVyIiwiQXBwTG9hZGVyIiwic3R5bGVkIiwiZGl2IiwiQXBwU3Bpbm5lciIsIlNwaW5uZXIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFFQTs7QUFD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O0FBRUUsSUFBQSxTQUFTLEVBQUVDLHlCQUZiO0FBR0UsSUFBQSxLQUFLO0FBSFAsSUF0Q0YsZUE0Q0UsNkJBQUMscUJBQUQ7QUFDRSxJQUFBLElBQUksRUFBQyxzQkFEUDtBQUVFLElBQUEsU0FBUyxFQUFFQyxrQ0FGYjtBQUdFLElBQUEsS0FBSztBQUhQLElBNUNGLGVBa0RFLDZCQUFDLHFCQUFEO0FBQ0UsSUFBQSxJQUFJLEVBQUMsdUJBRFA7QUFFRSxJQUFBLFNBQVMsRUFBRUMsc0JBRmI7QUFHRSxJQUFBLEtBQUs7QUFIUCxJQWxERixlQXdERSw2QkFBQyxxQkFBRDtBQUNFLElBQUEsSUFBSSxFQUFDLGdDQURQO0FBRUUsSUFBQSxTQUFTLEVBQUVDLHNDQUZiO0FBR0UsSUFBQSxLQUFLO0FBSFAsSUF4REYsZUE4REUsNkJBQUMscUJBQUQ7QUFDRSxJQUFBLElBQUksRUFBQyxzQkFEUDtBQUVFLElBQUEsU0FBUyxFQUFFQywwQkFGYjtBQUdFLElBQUEsS0FBSztBQUhQLElBOURGLGVBb0VFLDZCQUFDLHFCQUFEO0FBQU8sSUFBQSxJQUFJLEVBQUMsWUFBWjtBQUF5QixJQUFBLFNBQVMsRUFBRUMsdUJBQXBDO0FBQW9ELElBQUEsS0FBSztBQUF6RCxJQXBFRixlQXNFRSw2QkFBQyxxQkFBRDtBQUNFLElBQUEsSUFBSSxFQUFDLGtCQURQO0FBRUUsSUFBQSxTQUFTLEVBQUVDLHdCQUZiO0FBR0UsSUFBQSxLQUFLO0FBSFAsSUF0RUYsQ0FIRixDQURGLENBREYsQ0FERixDQURGLENBREY7QUEwRkQsQ0FuSkQ7O2VBcUpleEMsTTs7O0FBRWYsSUFBTXlDLFNBQVMsR0FBR0MsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEsaUNBQWY7O0FBS0EsSUFBTUMsVUFBVSxHQUFHLCtCQUFPQyxnQkFBUCxDQUFIO0FBQUE7QUFBQTtBQUFBLHFCQUFoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnbGVhZmxldC9kaXN0L2xlYWZsZXQuY3NzJztcbmltcG9ydCAncmVhY3QtdG9hc3RpZnkvZGlzdC9SZWFjdFRvYXN0aWZ5LmNzcyc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IFF1ZXJ5Q2xpZW50LCBRdWVyeUNsaWVudFByb3ZpZGVyIH0gZnJvbSAncmVhY3QtcXVlcnknO1xuaW1wb3J0IHsgUm91dGUsIFN3aXRjaCB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgVG9hc3RDb250YWluZXIgfSBmcm9tICdyZWFjdC10b2FzdGlmeSc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcblxuaW1wb3J0IE5vdGlmaWNhdGlvbnNQYWdlIGZyb20gJ3NyYy9wYWdlcy9Ob3RpZmljYXRpb25zUGFnZVYyL05vdGlmaWNhdGlvbnNQYWdlJztcbmltcG9ydCBTYW1wbGluZ3NQYWdlIGZyb20gJ3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlJztcbmltcG9ydCBTdHlsZXNMYXlvdXQgZnJvbSAnc3JjL3N0eWxlcy9TdHlsZXNMYXlvdXQnO1xuaW1wb3J0IFVybEhpc3RvcnlQcm92aWRlciBmcm9tICdzcmMvcHJvdmlkZXJzL1VybEhpc3RvcnkvVXJsSGlzdG9yeVByb3ZpZGVyJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICdzcmMvaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IHsgUGVybWlzc2lvbnNTbGljZSB9IGZyb20gJ3NyYy9zdG9yZS9wZXJtaXNzaW9ucy9wZXJtaXNzaW9uc1NsaWNlJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllcyB9IGZyb20gJ3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXMnO1xuXG5pbXBvcnQgSW1wb3J0UGxhbm5pbmdzIGZyb20gJy4vcGFnZXMvSW1wb3J0R2lzUGFnZS9JbXBvcnRHaXNDb250YWluZXInO1xuaW1wb3J0IEltcG9ydEdpc1Byb2Nlc3MgZnJvbSAnLi9wYWdlcy9JbXBvcnRHaXNQcm9jZXNzJztcbmltcG9ydCBFdmVudHNQYWdlIGZyb20gJy4vcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNQYWdlJztcbmltcG9ydCBGZWVkYmFjayBmcm9tICcuL3BhZ2VzL0Nhbm55V2lkZ2V0L0ZlZWRiYWNrJztcbmltcG9ydCB7IEFyZWFQYWdlIH0gZnJvbSAnLi9wYWdlcy9BcmVhUGFnZS9BcmVhUGFnZSc7XG5pbXBvcnQgeyBQcm9maWxlUGFnZSB9IGZyb20gJy4vcGFnZXMvUHJvZmlsZVBhZ2UvUHJvZmlsZVBhZ2UnO1xuaW1wb3J0IHsgU2l0ZVBhZ2UgfSBmcm9tICcuL3BhZ2VzL1NpdGVQYWdlL1NpdGVQYWdlJztcbmltcG9ydCB7IFV0aWxpdHlEYXNoYm9hcmRQYWdlIH0gZnJvbSAnLi9wYWdlcy9VdGlsaXR5RGFzaGJvYXJkUGFnZS9VdGlsaXR5RGFzaGJvYXJkUGFnZSc7XG5pbXBvcnQgeyBXYmVEYXNoYm9hcmRQYWdlIH0gZnJvbSAnLi9wYWdlcy9XYmVEYXNoYm9hcmQvV2JlRGFzaGJvYXJkUGFnZSc7XG5cbmltcG9ydCB7IHNldFdhdGVyQXV0aG9yaXR5IH0gZnJvbSAnLi9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyB1cGRhdGVMYW5ndWFnZSB9IGZyb20gJy4vc3RvcmUvY29udGV4dC9hY3Rpb25zJztcblxuaW1wb3J0IEdldERpciBmcm9tICcuL3V0aWxpdGllcy9HZXREaXInO1xuaW1wb3J0IGkxOG4gZnJvbSAnLi91dGlsaXRpZXMvaTE4bic7XG5cbmltcG9ydCAnLi9tYWNyb3MvZ2V0VmVyc2lvbic7XG5pbXBvcnQgJy4vc3R5bGVzLnNjc3MnO1xuaW1wb3J0IHsgU3Bpbm5lciB9IGZyb20gJy4vY29tcG9uZW50cy9TcGlubmVyL1NwaW5uZXInO1xuaW1wb3J0IHsgVG9vbGJhciB9IGZyb20gJy4vY29tcG9uZW50cy9IZWFkZXIvVG9vbGJhci9Ub29sYmFyJztcbmltcG9ydCBVcGxvYWRMYWJSZXN1bHQgZnJvbSAnLi9wYWdlcy9VcGxvYWRMYWJSZXN1bHQnO1xuaW1wb3J0IFNsaWRlc2hvd1J1bm5lciBmcm9tICcuL3Byb3ZpZGVycy9TbGlkZXNob3cvU2xpZGVzaG93UnVubmVyJztcbmltcG9ydCBTbGlkZXNob3dQcm92aWRlciBmcm9tICcuL3Byb3ZpZGVycy9TbGlkZXNob3cvU2xpZGVzaG93UHJvdmlkZXInO1xuaW1wb3J0IEFzc2Vzc21lbnRQYWdlIGZyb20gJy4vcGFnZXMvQXNzZXNzbWVudFBhZ2UvQXNzZXNzbWVudFBhZ2UnO1xuXG5jb25zdCBxdWVyeUNsaWVudCA9IG5ldyBRdWVyeUNsaWVudCgpO1xuXG5jb25zdCBSb3V0ZXIgPSAoKSA9PiB7XG4gIGNvbnN0IHF1ZXJ5VXJsID0gdXNlUXVlcnlVUkwoKTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBbbG9jYWxlUHJlZml4LCBzZXRMb2NhbGVQcmVmaXhdID0gdXNlU3RhdGU8c3RyaW5nPigpO1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5VVJMKCk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5SWRGcm9tVXJsID0gcGFyc2VJbnQoXG4gICAgcXVlcnkuZ2V0KCd3YXRlcl9hdXRob3JpdHlfaWQnKSB8fCAnMCcsXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBGZXRjaFBlcm1pc3Npb25zID0gYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcmVzID0gYXdhaXQgYXhpb3MuZ2V0KCcvcGVybWlzc2lvbnMnLCB7XG4gICAgICAgIHBhcmFtczogeyB3YXRlcl9hdXRob3JpdHlfaWQ6IHdhdGVyQXV0aG9yaXR5SWRGcm9tVXJsIH0sXG4gICAgICB9KTtcblxuICAgICAgaWYgKHJlcz8uZGF0YT8uZGF0YSkge1xuICAgICAgICBkaXNwYXRjaChcbiAgICAgICAgICBzZXRXYXRlckF1dGhvcml0eSh7XG4gICAgICAgICAgICBpZDogd2F0ZXJBdXRob3JpdHlJZEZyb21VcmwsXG4gICAgICAgICAgICBuYW1lOiByZXMuZGF0YS5kYXRhLndhdGVyX2F1dGhvcml0eV9uYW1lLFxuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuXG4gICAgICAgIGRpc3BhdGNoKFxuICAgICAgICAgIFBlcm1pc3Npb25zU2xpY2UuYWN0aW9ucy5zZXREYXNoYm9hcmRQZXJtaXNzaW9uKHJlcy5kYXRhLmRhdGEpLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAod2F0ZXJBdXRob3JpdHlJZEZyb21VcmwpIHtcbiAgICAgIEZldGNoUGVybWlzc2lvbnMoKTtcbiAgICB9XG4gIH0sIFt3YXRlckF1dGhvcml0eUlkRnJvbVVybF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZGlzcGF0Y2godXBkYXRlTGFuZ3VhZ2UoeyBsb2NhbGU6IGxvY2FsZVByZWZpeCB9KSk7XG4gIH0sIFtkaXNwYXRjaCwgbG9jYWxlUHJlZml4XSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcHJlZml4ID0gcXVlcnlVcmwuaGFzKCdsb2NhbGUnKVxuICAgICAgICA/IChxdWVyeVVybC5nZXQoJ2xvY2FsZScpIGFzIHN0cmluZylcbiAgICAgICAgOiAnZW4nO1xuXG4gICAgICBpMThuLmNoYW5nZUxhbmd1YWdlKHByZWZpeCk7XG4gICAgICBzZXRMb2NhbGVQcmVmaXgocHJlZml4KTtcbiAgICB9KSgpO1xuICB9LCBbcXVlcnlVcmxdKTtcblxuICBpZiAoIWxvY2FsZVByZWZpeCkge1xuICAgIHJldHVybiAoXG4gICAgICA8QXBwTG9hZGVyPlxuICAgICAgICA8QXBwU3Bpbm5lciBsZW5ndGg9XCI4MHB4XCIgLz5cbiAgICAgIDwvQXBwTG9hZGVyPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxRdWVyeUNsaWVudFByb3ZpZGVyIGNsaWVudD17cXVlcnlDbGllbnR9PlxuICAgICAgPFVybEhpc3RvcnlQcm92aWRlcj5cbiAgICAgICAgPFNsaWRlc2hvd1Byb3ZpZGVyPlxuICAgICAgICAgIDxTdHlsZXNMYXlvdXQ+XG4gICAgICAgICAgICA8R2V0RGlyIGxvY2FsZT17bG9jYWxlUHJlZml4fSBjbGFzc05hbWU9e2xvY2FsZVByZWZpeH0+XG4gICAgICAgICAgICAgIDxUb29sYmFyIGhhc1NlYXJjaD17dHJ1ZX0gLz5cbiAgICAgICAgICAgICAgPFRvYXN0Q29udGFpbmVyIC8+XG4gICAgICAgICAgICAgIDxTd2l0Y2g+XG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL2Rhc2hib2FyZF92Mi9pbmRleFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1V0aWxpdHlEYXNoYm9hcmRQYWdlfVxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvZGFzaGJvYXJkX3YyL2FyZWEvOmFyZWFJRFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0FyZWFQYWdlfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL2Rhc2hib2FyZF92Mi9zaXRlLzpzaXRlSURcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtTaXRlUGFnZX1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZSBwYXRoPVwiL3Byb2ZpbGVzL2luZGV4XCIgY29tcG9uZW50PXtQcm9maWxlUGFnZX0gZXhhY3QgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZSBwYXRoPVwiL2ZlZWRiYWNrXCI+XG4gICAgICAgICAgICAgICAgICA8Um91dGUgcGF0aD1cIipcIiBjb21wb25lbnQ9e0ZlZWRiYWNrfSAvPlxuICAgICAgICAgICAgICAgIDwvUm91dGU+XG5cbiAgICAgICAgICAgICAgICA8Um91dGUgcGF0aD1cIi9ldmVudHNfdmlldy9pbmRleFwiIGNvbXBvbmVudD17RXZlbnRzUGFnZX0gZXhhY3QgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9pbXBvcnRfcGxhbm5pbmdzL2luZGV4XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17SW1wb3J0UGxhbm5pbmdzfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL3NhbXBsaW5ncy1saXN0L3VwbG9hZF9sYWJfcmVzdWx0XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17VXBsb2FkTGFiUmVzdWx0fVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL2ltcG9ydF9naXNfcHJvY2Vzcy9pbmRleFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ltcG9ydEdpc1Byb2Nlc3N9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvd2JlX2Rhc2hib2FyZC9pbmRleFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1diZURhc2hib2FyZFBhZ2V9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvc2FtcGxpbmdzLWxpc3QvaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtTYW1wbGluZ3NQYWdlfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL3NhbXBsaW5nLXByb3BlcnRpZXMvOnNhbXBsZUlkXCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17U2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL25vdGlmaWNhdGlvbnMvaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtOb3RpZmljYXRpb25zUGFnZX1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZSBwYXRoPVwiL21hcC9pbmRleFwiIGNvbXBvbmVudD17QXNzZXNzbWVudFBhZ2V9IGV4YWN0IC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvc3RhcnQvc2xpZGVzaG93XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17U2xpZGVzaG93UnVubmVyfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L1N3aXRjaD5cbiAgICAgICAgICAgIDwvR2V0RGlyPlxuICAgICAgICAgIDwvU3R5bGVzTGF5b3V0PlxuICAgICAgICA8L1NsaWRlc2hvd1Byb3ZpZGVyPlxuICAgICAgPC9VcmxIaXN0b3J5UHJvdmlkZXI+XG4gICAgPC9RdWVyeUNsaWVudFByb3ZpZGVyPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgUm91dGVyO1xuXG5jb25zdCBBcHBMb2FkZXIgPSBzdHlsZWQuZGl2YFxuICBoZWlnaHQ6IDEwMHZoO1xuICB3aWR0aDogMTAwdnc7XG5gO1xuXG5jb25zdCBBcHBTcGlubmVyID0gc3R5bGVkKFNwaW5uZXIpYFxuICBoZWlnaHQ6IDEwMHZoO1xuYDtcbiJdfQ==
201
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfYXhpb3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JlYWN0UXVlcnkiLCJfcmVhY3RSb3V0ZXJEb20iLCJfcmVhY3RUb2FzdGlmeSIsIl9yZWFjdFJlZHV4IiwiX05vdGlmaWNhdGlvbnNQYWdlIiwiX1NhbXBsaW5nc1BhZ2UiLCJfU3R5bGVzTGF5b3V0IiwiX1VybEhpc3RvcnlQcm92aWRlciIsIl91c2VRdWVyeVVSTCIsIl9wZXJtaXNzaW9uc1NsaWNlIiwiX1NhbXBsaW5nUHJvcGVydGllcyIsIl9JbXBvcnRHaXNDb250YWluZXIiLCJfSW1wb3J0R2lzUHJvY2VzcyIsIl9FdmVudHNQYWdlIiwiX0ZlZWRiYWNrIiwiX0FyZWFQYWdlIiwiX1Byb2ZpbGVQYWdlIiwiX1NpdGVQYWdlIiwiX1V0aWxpdHlEYXNoYm9hcmRQYWdlIiwiX1diZURhc2hib2FyZFBhZ2UiLCJfYWN0aW9ucyIsIl9hY3Rpb25zMiIsIl9HZXREaXIiLCJfaTE4biIsIl9TcGlubmVyIiwiX1Rvb2xiYXIiLCJfVXBsb2FkTGFiUmVzdWx0IiwiX1NsaWRlc2hvd1J1bm5lciIsIl9TbGlkZXNob3dQcm92aWRlciIsIl9Bc3Nlc3NtZW50UGFnZSIsInF1ZXJ5Q2xpZW50IiwiUXVlcnlDbGllbnQiLCJSb3V0ZXIiLCJxdWVyeVVybCIsInVzZVF1ZXJ5VVJMIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImRlZmF1bHQiLCJsb2NhbGVQcmVmaXgiLCJzZXRMb2NhbGVQcmVmaXgiLCJxdWVyeSIsIndhdGVyQXV0aG9yaXR5SWRGcm9tVXJsIiwicGFyc2VJbnQiLCJnZXQiLCJ1c2VFZmZlY3QiLCJGZXRjaFBlcm1pc3Npb25zIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvclJ1bnRpbWUyIiwibWFyayIsIl9jYWxsZWUiLCJfcmVzJGRhdGEiLCJyZXMiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiYXhpb3MiLCJwYXJhbXMiLCJ3YXRlcl9hdXRob3JpdHlfaWQiLCJzZW50IiwiZGF0YSIsInNldFdhdGVyQXV0aG9yaXR5IiwiaWQiLCJuYW1lIiwid2F0ZXJfYXV0aG9yaXR5X25hbWUiLCJQZXJtaXNzaW9uc1NsaWNlIiwiYWN0aW9ucyIsInNldERhc2hib2FyZFBlcm1pc3Npb24iLCJzdG9wIiwiYXBwbHkiLCJhcmd1bWVudHMiLCJ1cGRhdGVMYW5ndWFnZSIsImxvY2FsZSIsIl9jYWxsZWUyIiwicHJlZml4IiwiX2NhbGxlZTIkIiwiX2NvbnRleHQyIiwiaGFzIiwiaTE4biIsImNoYW5nZUxhbmd1YWdlIiwiY3JlYXRlRWxlbWVudCIsIkFwcExvYWRlciIsIkFwcFNwaW5uZXIiLCJsZW5ndGgiLCJRdWVyeUNsaWVudFByb3ZpZGVyIiwiY2xpZW50IiwiY2xhc3NOYW1lIiwiVG9vbGJhciIsImhhc1NlYXJjaCIsIlRvYXN0Q29udGFpbmVyIiwiU3dpdGNoIiwiUm91dGUiLCJwYXRoIiwiY29tcG9uZW50IiwiVXRpbGl0eURhc2hib2FyZFBhZ2UiLCJBcmVhUGFnZSIsImV4YWN0IiwiU2l0ZVBhZ2UiLCJQcm9maWxlUGFnZSIsIkZlZWRiYWNrIiwiRXZlbnRzUGFnZSIsIkltcG9ydFBsYW5uaW5ncyIsIlVwbG9hZExhYlJlc3VsdCIsIkltcG9ydEdpc1Byb2Nlc3MiLCJXYmVEYXNoYm9hcmRQYWdlIiwiU2FtcGxpbmdzUGFnZSIsIlNhbXBsaW5nUHJvcGVydGllcyIsIk5vdGlmaWNhdGlvbnNQYWdlIiwiQXNzZXNzbWVudFBhZ2UiLCJTbGlkZXNob3dSdW5uZXIiLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIlNwaW5uZXIiXSwic291cmNlcyI6WyIuLi9zcmMvUm91dGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ2xlYWZsZXQvZGlzdC9sZWFmbGV0LmNzcyc7XG5pbXBvcnQgJ3JlYWN0LXRvYXN0aWZ5L2Rpc3QvUmVhY3RUb2FzdGlmeS5jc3MnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyBRdWVyeUNsaWVudCwgUXVlcnlDbGllbnRQcm92aWRlciB9IGZyb20gJ3JlYWN0LXF1ZXJ5JztcbmltcG9ydCB7IFJvdXRlLCBTd2l0Y2ggfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCB7IFRvYXN0Q29udGFpbmVyIH0gZnJvbSAncmVhY3QtdG9hc3RpZnknO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2ggfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5cbmltcG9ydCBOb3RpZmljYXRpb25zUGFnZSBmcm9tICdzcmMvcGFnZXMvTm90aWZpY2F0aW9uc1BhZ2VWMi9Ob3RpZmljYXRpb25zUGFnZSc7XG5pbXBvcnQgU2FtcGxpbmdzUGFnZSBmcm9tICdzcmMvcGFnZXMvU2FtcGxpbmdzUGFnZSc7XG5pbXBvcnQgU3R5bGVzTGF5b3V0IGZyb20gJ3NyYy9zdHlsZXMvU3R5bGVzTGF5b3V0JztcbmltcG9ydCBVcmxIaXN0b3J5UHJvdmlkZXIgZnJvbSAnc3JjL3Byb3ZpZGVycy9VcmxIaXN0b3J5L1VybEhpc3RvcnlQcm92aWRlcic7XG5pbXBvcnQgdXNlUXVlcnlVUkwgZnJvbSAnc3JjL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IFBlcm1pc3Npb25zU2xpY2UgfSBmcm9tICdzcmMvc3RvcmUvcGVybWlzc2lvbnMvcGVybWlzc2lvbnNTbGljZSc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXMgfSBmcm9tICdzcmMvcGFnZXMvU2FtcGxpbmdzUGFnZS9TYW1wbGluZ1Byb3BlcnRpZXMvU2FtcGxpbmdQcm9wZXJ0aWVzJztcblxuaW1wb3J0IEltcG9ydFBsYW5uaW5ncyBmcm9tICcuL3BhZ2VzL0ltcG9ydEdpc1BhZ2UvSW1wb3J0R2lzQ29udGFpbmVyJztcbmltcG9ydCBJbXBvcnRHaXNQcm9jZXNzIGZyb20gJy4vcGFnZXMvSW1wb3J0R2lzUHJvY2Vzcyc7XG5pbXBvcnQgRXZlbnRzUGFnZSBmcm9tICcuL3BhZ2VzL0V2ZW50c1BhZ2UvRXZlbnRzUGFnZSc7XG5pbXBvcnQgRmVlZGJhY2sgZnJvbSAnLi9wYWdlcy9DYW5ueVdpZGdldC9GZWVkYmFjayc7XG5pbXBvcnQgeyBBcmVhUGFnZSB9IGZyb20gJy4vcGFnZXMvQXJlYVBhZ2UvQXJlYVBhZ2UnO1xuaW1wb3J0IHsgUHJvZmlsZVBhZ2UgfSBmcm9tICcuL3BhZ2VzL1Byb2ZpbGVQYWdlL1Byb2ZpbGVQYWdlJztcbmltcG9ydCB7IFNpdGVQYWdlIH0gZnJvbSAnLi9wYWdlcy9TaXRlUGFnZS9TaXRlUGFnZSc7XG5pbXBvcnQgeyBVdGlsaXR5RGFzaGJvYXJkUGFnZSB9IGZyb20gJy4vcGFnZXMvVXRpbGl0eURhc2hib2FyZFBhZ2UvVXRpbGl0eURhc2hib2FyZFBhZ2UnO1xuaW1wb3J0IHsgV2JlRGFzaGJvYXJkUGFnZSB9IGZyb20gJy4vcGFnZXMvV2JlRGFzaGJvYXJkL1diZURhc2hib2FyZFBhZ2UnO1xuXG5pbXBvcnQgeyBzZXRXYXRlckF1dGhvcml0eSB9IGZyb20gJy4vc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IHsgdXBkYXRlTGFuZ3VhZ2UgfSBmcm9tICcuL3N0b3JlL2NvbnRleHQvYWN0aW9ucyc7XG5cbmltcG9ydCBHZXREaXIgZnJvbSAnLi91dGlsaXRpZXMvR2V0RGlyJztcbmltcG9ydCBpMThuIGZyb20gJy4vdXRpbGl0aWVzL2kxOG4nO1xuXG5pbXBvcnQgJy4vbWFjcm9zL2dldFZlcnNpb24nO1xuaW1wb3J0ICcuL3N0eWxlcy5zY3NzJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuL2NvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyJztcbmltcG9ydCB7IFRvb2xiYXIgfSBmcm9tICcuL2NvbXBvbmVudHMvSGVhZGVyL1Rvb2xiYXIvVG9vbGJhcic7XG5pbXBvcnQgVXBsb2FkTGFiUmVzdWx0IGZyb20gJy4vcGFnZXMvVXBsb2FkTGFiUmVzdWx0JztcbmltcG9ydCBTbGlkZXNob3dSdW5uZXIgZnJvbSAnLi9wcm92aWRlcnMvU2xpZGVzaG93L1NsaWRlc2hvd1J1bm5lcic7XG5pbXBvcnQgU2xpZGVzaG93UHJvdmlkZXIgZnJvbSAnLi9wcm92aWRlcnMvU2xpZGVzaG93L1NsaWRlc2hvd1Byb3ZpZGVyJztcbmltcG9ydCBBc3Nlc3NtZW50UGFnZSBmcm9tICcuL3BhZ2VzL0Fzc2Vzc21lbnRQYWdlL0Fzc2Vzc21lbnRQYWdlJztcblxuY29uc3QgcXVlcnlDbGllbnQgPSBuZXcgUXVlcnlDbGllbnQoKTtcblxuY29uc3QgUm91dGVyID0gKCkgPT4ge1xuICBjb25zdCBxdWVyeVVybCA9IHVzZVF1ZXJ5VVJMKCk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgW2xvY2FsZVByZWZpeCwgc2V0TG9jYWxlUHJlZml4XSA9IHVzZVN0YXRlPHN0cmluZz4oKTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCB3YXRlckF1dGhvcml0eUlkRnJvbVVybCA9IHBhcnNlSW50KFxuICAgIHF1ZXJ5LmdldCgnd2F0ZXJfYXV0aG9yaXR5X2lkJykgfHwgJzAnLFxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgRmV0Y2hQZXJtaXNzaW9ucyA9IGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGF4aW9zLmdldCgnL3Blcm1pc3Npb25zJywge1xuICAgICAgICBwYXJhbXM6IHsgd2F0ZXJfYXV0aG9yaXR5X2lkOiB3YXRlckF1dGhvcml0eUlkRnJvbVVybCB9LFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChyZXM/LmRhdGE/LmRhdGEpIHtcbiAgICAgICAgZGlzcGF0Y2goXG4gICAgICAgICAgc2V0V2F0ZXJBdXRob3JpdHkoe1xuICAgICAgICAgICAgaWQ6IHdhdGVyQXV0aG9yaXR5SWRGcm9tVXJsLFxuICAgICAgICAgICAgbmFtZTogcmVzLmRhdGEuZGF0YS53YXRlcl9hdXRob3JpdHlfbmFtZSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcblxuICAgICAgICBkaXNwYXRjaChcbiAgICAgICAgICBQZXJtaXNzaW9uc1NsaWNlLmFjdGlvbnMuc2V0RGFzaGJvYXJkUGVybWlzc2lvbihyZXMuZGF0YS5kYXRhKSxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgaWYgKHdhdGVyQXV0aG9yaXR5SWRGcm9tVXJsKSB7XG4gICAgICBGZXRjaFBlcm1pc3Npb25zKCk7XG4gICAgfVxuICB9LCBbd2F0ZXJBdXRob3JpdHlJZEZyb21VcmxdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGRpc3BhdGNoKHVwZGF0ZUxhbmd1YWdlKHsgbG9jYWxlOiBsb2NhbGVQcmVmaXggfSkpO1xuICB9LCBbZGlzcGF0Y2gsIGxvY2FsZVByZWZpeF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgKGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHByZWZpeCA9IHF1ZXJ5VXJsLmhhcygnbG9jYWxlJylcbiAgICAgICAgPyAocXVlcnlVcmwuZ2V0KCdsb2NhbGUnKSBhcyBzdHJpbmcpXG4gICAgICAgIDogJ2VuJztcblxuICAgICAgaTE4bi5jaGFuZ2VMYW5ndWFnZShwcmVmaXgpO1xuICAgICAgc2V0TG9jYWxlUHJlZml4KHByZWZpeCk7XG4gICAgfSkoKTtcbiAgfSwgW3F1ZXJ5VXJsXSk7XG5cbiAgaWYgKCFsb2NhbGVQcmVmaXgpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPEFwcExvYWRlcj5cbiAgICAgICAgPEFwcFNwaW5uZXIgbGVuZ3RoPVwiODBweFwiIC8+XG4gICAgICA8L0FwcExvYWRlcj5cbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8UXVlcnlDbGllbnRQcm92aWRlciBjbGllbnQ9e3F1ZXJ5Q2xpZW50fT5cbiAgICAgIDxVcmxIaXN0b3J5UHJvdmlkZXI+XG4gICAgICAgIDxTbGlkZXNob3dQcm92aWRlcj5cbiAgICAgICAgICA8U3R5bGVzTGF5b3V0PlxuICAgICAgICAgICAgPEdldERpciBsb2NhbGU9e2xvY2FsZVByZWZpeH0gY2xhc3NOYW1lPXtsb2NhbGVQcmVmaXh9PlxuICAgICAgICAgICAgICA8VG9vbGJhciBoYXNTZWFyY2g9e3RydWV9IC8+XG4gICAgICAgICAgICAgIDxUb2FzdENvbnRhaW5lciAvPlxuICAgICAgICAgICAgICA8U3dpdGNoPlxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9kYXNoYm9hcmRfdjIvaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtVdGlsaXR5RGFzaGJvYXJkUGFnZX1cbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL2Rhc2hib2FyZF92Mi9hcmVhLzphcmVhSURcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtBcmVhUGFnZX1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9kYXNoYm9hcmRfdjIvc2l0ZS86c2l0ZUlEXCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17U2l0ZVBhZ2V9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGUgcGF0aD1cIi9wcm9maWxlcy9pbmRleFwiIGNvbXBvbmVudD17UHJvZmlsZVBhZ2V9IGV4YWN0IC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGUgcGF0aD1cIi9mZWVkYmFja1wiPlxuICAgICAgICAgICAgICAgICAgPFJvdXRlIHBhdGg9XCIqXCIgY29tcG9uZW50PXtGZWVkYmFja30gLz5cbiAgICAgICAgICAgICAgICA8L1JvdXRlPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlIHBhdGg9XCIvZXZlbnRzX3ZpZXcvaW5kZXhcIiBjb21wb25lbnQ9e0V2ZW50c1BhZ2V9IGV4YWN0IC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvaW1wb3J0X3BsYW5uaW5ncy9pbmRleFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ltcG9ydFBsYW5uaW5nc31cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9zYW1wbGluZ3MtbGlzdC91cGxvYWRfbGFiX3Jlc3VsdFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1VwbG9hZExhYlJlc3VsdH1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9pbXBvcnRfZ2lzX3Byb2Nlc3MvaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtJbXBvcnRHaXNQcm9jZXNzfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL3diZV9kYXNoYm9hcmQvaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtXYmVEYXNoYm9hcmRQYWdlfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL3NhbXBsaW5ncy1saXN0L2luZGV4XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17U2FtcGxpbmdzUGFnZX1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9zYW1wbGluZy1wcm9wZXJ0aWVzLzpzYW1wbGVJZFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9ub3RpZmljYXRpb25zL2luZGV4XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17Tm90aWZpY2F0aW9uc1BhZ2V9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGUgcGF0aD1cIi9tYXAvaW5kZXhcIiBjb21wb25lbnQ9e0Fzc2Vzc21lbnRQYWdlfSBleGFjdCAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL3N0YXJ0L3NsaWRlc2hvd1wiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1NsaWRlc2hvd1J1bm5lcn1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9Td2l0Y2g+XG4gICAgICAgICAgICA8L0dldERpcj5cbiAgICAgICAgICA8L1N0eWxlc0xheW91dD5cbiAgICAgICAgPC9TbGlkZXNob3dQcm92aWRlcj5cbiAgICAgIDwvVXJsSGlzdG9yeVByb3ZpZGVyPlxuICAgIDwvUXVlcnlDbGllbnRQcm92aWRlcj5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFJvdXRlcjtcblxuY29uc3QgQXBwTG9hZGVyID0gc3R5bGVkLmRpdmBcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgd2lkdGg6IDEwMHZ3O1xuYDtcblxuY29uc3QgQXBwU3Bpbm5lciA9IHN0eWxlZChTcGlubmVyKWBcbiAgaGVpZ2h0OiAxMDB2aDtcbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBQSxPQUFBO0FBQ0FBLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFDLHVCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxNQUFBLEdBQUFDLHNCQUFBLENBQUFKLE9BQUE7QUFFQSxJQUFBSyxXQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxlQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxjQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxXQUFBLEdBQUFSLE9BQUE7QUFFQSxJQUFBUyxrQkFBQSxHQUFBTCxzQkFBQSxDQUFBSixPQUFBO0FBQ0EsSUFBQVUsY0FBQSxHQUFBTixzQkFBQSxDQUFBSixPQUFBO0FBQ0EsSUFBQVcsYUFBQSxHQUFBUCxzQkFBQSxDQUFBSixPQUFBO0FBQ0EsSUFBQVksbUJBQUEsR0FBQVIsc0JBQUEsQ0FBQUosT0FBQTtBQUNBLElBQUFhLFlBQUEsR0FBQVQsc0JBQUEsQ0FBQUosT0FBQTtBQUNBLElBQUFjLGlCQUFBLEdBQUFkLE9BQUE7QUFDQSxJQUFBZSxtQkFBQSxHQUFBZixPQUFBO0FBRUEsSUFBQWdCLG1CQUFBLEdBQUFaLHNCQUFBLENBQUFKLE9BQUE7QUFDQSxJQUFBaUIsaUJBQUEsR0FBQWIsc0JBQUEsQ0FBQUosT0FBQTtBQUNBLElBQUFrQixXQUFBLEdBQUFkLHNCQUFBLENBQUFKLE9BQUE7QUFDQSxJQUFBbUIsU0FBQSxHQUFBZixzQkFBQSxDQUFBSixPQUFBO0FBQ0EsSUFBQW9CLFNBQUEsR0FBQXBC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
@@ -1,65 +1,41 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.EventsCarousel = void 0;
11
-
12
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
13
-
14
10
  var _styledComponents = _interopRequireDefault(require("styled-components"));
15
-
16
11
  var _dayjs = _interopRequireDefault(require("dayjs"));
17
-
18
12
  var _utc = _interopRequireDefault(require("dayjs/plugin/utc"));
19
-
20
13
  var _react = _interopRequireWildcard(require("react"));
21
-
22
14
  var _reactBootstrap = require("react-bootstrap");
23
-
24
15
  var _DataLoaderError = require("components/DataLoaderError/DataLoaderError");
25
-
26
16
  var _StyledLink = require("components/Links/StyledLink/StyledLink");
27
-
28
17
  var _Spinner = require("components/Spinner/Spinner");
29
-
30
18
  var _useApiWithDashboardQuery = require("hooks/useApiWithDashboardQuery");
31
-
32
19
  var _NoEvents = _interopRequireDefault(require("pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents"));
33
-
34
20
  var _OptionalLinkedSevereEvent = _interopRequireDefault(require("pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent"));
35
-
36
21
  var _UtilityDashboard = require("pages/UtilityDashboardPage/UtilityDashboard");
37
-
38
22
  var _EventUtils = require("../../pages/EventsPage/events/events_list/EventUtils");
39
-
40
- 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); }
41
-
42
- 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; }
43
-
44
23
  var EventsCarousel = function EventsCarousel(_ref) {
45
24
  var endpoint = _ref.endpoint,
46
- _ref$eventParams = _ref.eventParams,
47
- eventParams = _ref$eventParams === void 0 ? {} : _ref$eventParams;
48
-
25
+ _ref$eventParams = _ref.eventParams,
26
+ eventParams = _ref$eventParams === void 0 ? {} : _ref$eventParams;
49
27
  var _useState = (0, _react.useState)([]),
50
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
51
- eventsArr = _useState2[0],
52
- setEventsArr = _useState2[1]; // eslint-disable-next-line
53
-
54
-
28
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
29
+ eventsArr = _useState2[0],
30
+ setEventsArr = _useState2[1];
31
+ // eslint-disable-next-line
55
32
  var _useApiWithDashboardQ = (0, _useApiWithDashboardQuery.useApiWithDashboardQuery)(endpoint, eventParams),
56
- _useApiWithDashboardQ2 = (0, _slicedToArray2.default)(_useApiWithDashboardQ, 3),
57
- response = _useApiWithDashboardQ2[0],
58
- isLoading = _useApiWithDashboardQ2[1],
59
- error = _useApiWithDashboardQ2[2];
60
-
33
+ _useApiWithDashboardQ2 = (0, _slicedToArray2.default)(_useApiWithDashboardQ, 3),
34
+ response = _useApiWithDashboardQ2[0],
35
+ isLoading = _useApiWithDashboardQ2[1],
36
+ error = _useApiWithDashboardQ2[2];
61
37
  (0, _react.useEffect)(function () {
62
- if ((response === null || response === void 0 ? void 0 : response.data) && !error) {
38
+ if (response !== null && response !== void 0 && response.data && !error) {
63
39
  if (Array.isArray(response.data.events)) {
64
40
  var arr = response.data.events.sort(function (a, b) {
65
41
  return -Date.parse(a.first_seen_time) + Date.parse(b.first_seen_time);
@@ -68,14 +44,11 @@ var EventsCarousel = function EventsCarousel(_ref) {
68
44
  }
69
45
  }
70
46
  }, [response]);
71
-
72
47
  var parseEventData = function parseEventData(event) {
73
48
  var lastseen = (0, _EventUtils.lastSeenObservation)(event);
74
49
  var firstseen = (0, _EventUtils.firstSeenObservation)(event);
75
50
  var diff = lastseen.last_seen_time - firstseen.start_time;
76
-
77
51
  _dayjs.default.extend(_utc.default);
78
-
79
52
  var mappedEvent = {
80
53
  lastseen: lastseen,
81
54
  firstseen: firstseen,
@@ -84,7 +57,6 @@ var EventsCarousel = function EventsCarousel(_ref) {
84
57
  };
85
58
  return mappedEvent;
86
59
  };
87
-
88
60
  if (isLoading && !error) {
89
61
  return /*#__PURE__*/_react.default.createElement(Container, null, /*#__PURE__*/_react.default.createElement(_DataLoaderError.DataLoaderError, {
90
62
  isLoading: isLoading,
@@ -92,7 +64,6 @@ var EventsCarousel = function EventsCarousel(_ref) {
92
64
  error: error
93
65
  }, /*#__PURE__*/_react.default.createElement(_UtilityDashboard.SpinnerHolder, null, /*#__PURE__*/_react.default.createElement(_Spinner.Spinner, null))));
94
66
  }
95
-
96
67
  return /*#__PURE__*/_react.default.createElement(Container, null, response && eventsArr.length === 0 ? /*#__PURE__*/_react.default.createElement(NoEventsComponent, null) : /*#__PURE__*/_react.default.createElement(_reactBootstrap.Carousel, {
97
68
  className: "events-carousel",
98
69
  indicators: true,
@@ -117,16 +88,13 @@ var EventsCarousel = function EventsCarousel(_ref) {
117
88
  })));
118
89
  })));
119
90
  };
120
-
121
91
  exports.EventsCarousel = EventsCarousel;
122
-
123
92
  var Container = _styledComponents.default.div.withConfig({
124
93
  displayName: "EventsCarousel__Container",
125
94
  componentId: "sc-1mw9de8-0"
126
95
  })(["height:calc(100% - 38px);width:100%;position:relative;.events-carousel{position:absolute;top:0;left:0;right:0;bottom:0;.carousel-control{&-next,&-prev{height:20px;}[dir='rtl'] &{&-next{left:0;right:unset;&-icon{transform:rotate(180deg);right:unset;left:5px;}}&-prev{right:0;left:unset;&-icon{transform:rotate(180deg);left:unset;right:5px;}}}}.carousel-control-next-icon,.carousel-control-prev-icon{position:absolute;right:5px;top:13px;width:15px;height:15px;}.carousel-control-prev-icon{right:unset;left:5px;}.carousel-indicators{position:absolute;bottom:0;li{width:7px;height:7px;background-color:#e4e4e4;border-radius:50%;&.active{background-color:#f6004f;}}}.severe-event .top{display:flex;justify-content:center;.source{display:none;}}}"]);
127
-
128
96
  var NoEventsComponent = (0, _styledComponents.default)(_NoEvents.default).withConfig({
129
97
  displayName: "EventsCarousel__NoEventsComponent",
130
98
  componentId: "sc-1mw9de8-1"
131
99
  })(["min-height:unset;height:100%;"]);
132
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9XaWRnZXRzL0V2ZW50c0Nhcm91c2VsL0V2ZW50c0Nhcm91c2VsLnRzeCJdLCJuYW1lcyI6WyJFdmVudHNDYXJvdXNlbCIsImVuZHBvaW50IiwiZXZlbnRQYXJhbXMiLCJldmVudHNBcnIiLCJzZXRFdmVudHNBcnIiLCJyZXNwb25zZSIsImlzTG9hZGluZyIsImVycm9yIiwiZGF0YSIsIkFycmF5IiwiaXNBcnJheSIsImV2ZW50cyIsImFyciIsInNvcnQiLCJhIiwiYiIsIkRhdGUiLCJwYXJzZSIsImZpcnN0X3NlZW5fdGltZSIsInNsaWNlIiwicGFyc2VFdmVudERhdGEiLCJldmVudCIsImxhc3RzZWVuIiwiZmlyc3RzZWVuIiwiZGlmZiIsImxhc3Rfc2Vlbl90aW1lIiwic3RhcnRfdGltZSIsImRheWpzIiwiZXh0ZW5kIiwidXRjIiwibWFwcGVkRXZlbnQiLCJ0b3RhbCIsImZvcm1hdCIsImxlbmd0aCIsIm1hcCIsImluZGV4IiwiaWQiLCJ2YWx1ZXNGcm9tS1FMIiwiQ29udGFpbmVyIiwic3R5bGVkIiwiZGl2IiwiTm9FdmVudHNDb21wb25lbnQiLCJOb0V2ZW50cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBR0E7Ozs7OztBQVdPLElBQU1BLGNBQTZDLEdBQUcsU0FBaERBLGNBQWdELE9BR3ZEO0FBQUEsTUFGSkMsUUFFSSxRQUZKQSxRQUVJO0FBQUEsOEJBREpDLFdBQ0k7QUFBQSxNQURKQSxXQUNJLGlDQURVLEVBQ1Y7O0FBQ0osa0JBQWtDLHFCQUFtQixFQUFuQixDQUFsQztBQUFBO0FBQUEsTUFBT0MsU0FBUDtBQUFBLE1BQWtCQyxZQUFsQixpQkFESSxDQUVKOzs7QUFDQSw4QkFDRSx3REFBMENILFFBQTFDLEVBQW9EQyxXQUFwRCxDQURGO0FBQUE7QUFBQSxNQUFPRyxRQUFQO0FBQUEsTUFB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S0FGVDtBQUdFLE1BQUEsS0FBSyxFQUFFYixJQUFJLENBQUN1QixLQUhkO0FBSUUsTUFBQSxTQUFTLEVBQUV2QixJQUFJLENBQUNlLFNBSmxCO0FBS0UsTUFBQSxRQUFRLEVBQUVmLElBQUksQ0FBQ2MsUUFMakI7QUFNRSxNQUFBLEdBQUcsRUFBQyxFQU5OO0FBT0UsTUFBQSxhQUFhLEVBQUVwQixXQUFXLENBQUNtQztBQVA3QixNQUxGLENBREYsQ0FERjtBQW1CRCxHQXJCQSxDQU5ILENBSkosQ0FERjtBQXFDRCxDQTFGTTs7OztBQTRGUCxJQUFNQyxTQUFTLEdBQUdDLDBCQUFPQyxHQUFWO0FBQUE7QUFBQTtBQUFBLDR1QkFBZjs7QUE2RUEsSUFBTUMsaUJBQWlCLEdBQUcsK0JBQU9DLGlCQUFQLENBQUg7QUFBQTtBQUFBO0FBQUEscUNBQXZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcbmltcG9ydCB1dGMgZnJvbSAnZGF5anMvcGx1Z2luL3V0Yyc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IENhcm91c2VsIH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCB7IERhdGFMb2FkZXJFcnJvciB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0RhdGFMb2FkZXJFcnJvci9EYXRhTG9hZGVyRXJyb3InO1xuaW1wb3J0IHsgU3R5bGVkTGluayB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0xpbmtzL1N0eWxlZExpbmsvU3R5bGVkTGluayc7XG5pbXBvcnQgeyBTcGlubmVyIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyJztcbmltcG9ydCB7IHVzZUFwaVdpdGhEYXNoYm9hcmRRdWVyeSB9IGZyb20gJ3NyYy9ob29rcy91c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnknO1xuaW1wb3J0IE5vRXZlbnRzIGZyb20gJ3NyYy9wYWdlcy9VdGlsaXR5RGFzaGJvYXJkUGFnZS9Nb3N0U2V2ZXJlRXZlbnRzL05vRXZlbnRzL05vRXZlbnRzJztcbmltcG9ydCBPcHRpb25hbExpbmtlZFNldmVyZUV2ZW50IGZyb20gJ3NyYy9wYWdlcy9VdGlsaXR5RGFzaGJvYXJkUGFnZS9Nb3N0U2V2ZXJlRXZlbnRzL1NldmVyZUV2ZW50L09wdGlvbmFsTGlua2VkU2V2ZXJlRXZlbnQnO1xuaW1wb3J0IHsgU3Bpbm5lckhvbGRlciB9IGZyb20gJ3NyYy9wYWdlcy9VdGlsaXR5RGFzaGJvYXJkUGFnZS9VdGlsaXR5RGFzaGJvYXJkJztcbmltcG9ydCB7IElFdmVudCwgSUV2ZW50c1Jlc3BvbnNlIH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHtcbiAgZmlyc3RTZWVuT2JzZXJ2YXRpb24sXG4gIGxhc3RTZWVuT2JzZXJ2YXRpb24sXG59IGZyb20gJy4uLy4uL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0V2ZW50VXRpbHMnO1xuXG5pbnRlcmZhY2UgRXZlbnRzQ2Fyb3VzZWxQcm9wcyB7XG4gIGVuZHBvaW50OiBzdHJpbmc7XG4gIGV2ZW50UGFyYW1zPzoge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZztcbiAgfTtcbn1cbmV4cG9ydCBjb25zdCBFdmVudHNDYXJvdXNlbDogUmVhY3QuRkM8RXZlbnRzQ2Fyb3VzZWxQcm9wcz4gPSAoe1xuICBlbmRwb2ludCxcbiAgZXZlbnRQYXJhbXMgPSB7fSxcbn0pID0+IHtcbiAgY29uc3QgW2V2ZW50c0Fyciwgc2V0RXZlbnRzQXJyXSA9IHVzZVN0YXRlPElFdmVudFtdPihbXSk7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBjb25zdCBbcmVzcG9uc2UsIGlzTG9hZGluZywgZXJyb3JdID1cbiAgICB1c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnk8SUV2ZW50c1Jlc3BvbnNlPihlbmRwb2ludCwgZXZlbnRQYXJhbXMpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHJlc3BvbnNlPy5kYXRhICYmICFlcnJvcikge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVzcG9uc2UuZGF0YS5ldmVudHMpKSB7XG4gICAgICAgIGNvbnN0IGFyciA9IHJlc3BvbnNlLmRhdGEuZXZlbnRzXG5cbiAgICAgICAgICAuc29ydChcbiAgICAgICAgICAgIChhLCBiKSA9PlxuICAgICAgICAgICAgICAtRGF0ZS5wYXJzZShhLmZpcnN0X3NlZW5fdGltZSkgKyBEYXRlLnBhcnNlKGIuZmlyc3Rfc2Vlbl90aW1lKSxcbiAgICAgICAgICApXG4gICAgICAgICAgLnNsaWNlKDAsIDQpO1xuICAgICAgICBzZXRFdmVudHNBcnIoYXJyKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtyZXNwb25zZV0pO1xuXG4gIGNvbnN0IHBhcnNlRXZlbnREYXRhID0gKGV2ZW50OiBJRXZlbnQpID0+IHtcbiAgICBjb25zdCBsYXN0c2VlbiA9IGxhc3RTZWVuT2JzZXJ2YXRpb24oZXZlbnQpO1xuXG4gICAgY29uc3QgZmlyc3RzZWVuID0gZmlyc3RTZWVuT2JzZXJ2YXRpb24oZXZlbnQpO1xuXG4gICAgY29uc3QgZGlmZiA9IGxhc3RzZWVuLmxhc3Rfc2Vlbl90aW1lIC0gZmlyc3RzZWVuLnN0YXJ0X3RpbWU7XG4gICAgZGF5anMuZXh0ZW5kKHV0Yyk7XG5cbiAgICBjb25zdCBtYXBwZWRFdmVudDogYW55ID0ge1xuICAgICAgbGFzdHNlZW4sXG4gICAgICBmaXJzdHNlZW4sXG4gICAgICAvL0B0cy1pZ25vcmVcbiAgICAgIHRvdGFsOiBkYXlqcy51dGMoZGlmZiAqIDEwMDApLmZvcm1hdCgnSEg6bW06c3MnKSxcbiAgICB9O1xuICAgIHJldHVybiBtYXBwZWRFdmVudDtcbiAgfTtcblxuICBpZiAoaXNMb2FkaW5nICYmICFlcnJvcikge1xuICAgIHJldHVybiAoXG4gICAgICA8Q29udGFpbmVyPlxuICAgICAgICA8RGF0YUxvYWRlckVycm9yIGlzTG9hZGluZz17aXNMb2FkaW5nfSBkYXRhPXtldmVudHNBcnJ9IGVycm9yPXtlcnJvcn0+XG4gICAgICAgICAgPFNwaW5uZXJIb2xkZXI+XG4gICAgICAgICAgICA8U3Bpbm5lciAvPlxuICAgICAgICAgIDwvU3Bpbm5lckhvbGRlcj5cbiAgICAgICAgPC9EYXRhTG9hZGVyRXJyb3I+XG4gICAgICA8L0NvbnRhaW5lcj5cbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8Q29udGFpbmVyPlxuICAgICAge3Jlc3BvbnNlICYmIGV2ZW50c0Fyci5sZW5ndGggPT09IDAgPyAoXG4gICAgICAgIDxOb0V2ZW50c0NvbXBvbmVudCAvPlxuICAgICAgKSA6IChcbiAgICAgICAgPENhcm91c2VsXG4gICAgICAgICAgY2xhc3NOYW1lPVwiZXZlbnRzLWNhcm91c2VsXCJcbiAgICAgICAgICBpbmRpY2F0b3JzPXt0cnVlfVxuICAgICAgICAgIGludGVydmFsPXtudWxsfVxuICAgICAgICAgIGNvbnRyb2xzPXtldmVudHNBcnIubGVuZ3RoID4gMX1cbiAgICAgICAgPlxuICAgICAgICAgIHtldmVudHNBcnIubWFwKChldmVudCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBwYXJzZUV2ZW50RGF0YShldmVudCk7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICA8Q2Fyb3VzZWwuSXRlbSBrZXk9e2V2ZW50LmlkfT5cbiAgICAgICAgICAgICAgICA8U3R5bGVkTGlua1xuICAgICAgICAgICAgICAgICAgdG89e2AvZXZlbnRzX3ZpZXcvaW5kZXhgfVxuICAgICAgICAgICAgICAgICAgbmV3UGFyYW1zPXtgJmV2ZW50SWQ9JHtldmVudC5pZH0mdmFsdWVzRnJvbUtRTD0ke2V2ZW50UGFyYW1zLnZhbHVlc0Zyb21LUUx9YH1cbiAgICAgICAgICAgICAgICAgIGtleT17aW5kZXh9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPE9wdGlvbmFsTGlua2VkU2V2ZXJlRXZlbnRcbiAgICAgICAgICAgICAgICAgICAga2V5PXtpbmRleH1cbiAgICAgICAgICAgICAgICAgICAgZXZlbnQ9e2V2ZW50fVxuICAgICAgICAgICAgICAgICAgICB0b3RhbD17ZGF0YS50b3RhbH1cbiAgICAgICAgICAgICAgICAgICAgZmlyc3RzZWVuPXtkYXRhLmZpcnN0c2Vlbn1cbiAgICAgICAgICAgICAgICAgICAgbGFzdHNlZW49e2RhdGEubGFzdHNlZW59XG4gICAgICAgICAgICAgICAgICAgIG1zZz1cIlwiXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlc0Zyb21LUUw9e2V2ZW50UGFyYW1zLnZhbHVlc0Zyb21LUUx9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvU3R5bGVkTGluaz5cbiAgICAgICAgICAgICAgPC9DYXJvdXNlbC5JdGVtPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KX1cbiAgICAgICAgPC9DYXJvdXNlbD5cbiAgICAgICl9XG4gICAgPC9Db250YWluZXI+XG4gICk7XG59O1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDM4cHgpO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAuZXZlbnRzLWNhcm91c2VsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgLmNhcm91c2VsLWNvbnRyb2wge1xuICAgICAgJi1uZXh0LFxuICAgICAgJi1wcmV2IHtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgfVxuXG4gICAgICBbZGlyPSdydGwnXSAmIHtcbiAgICAgICAgJi1uZXh0IHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAmLWljb24ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1wcmV2IHtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcblxuICAgICAgICAgICYtaWNvbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24sXG4gICAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICB0b3A6IDEzcHg7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICB9XG5cbiAgICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgbGVmdDogNXB4O1xuICAgIH1cblxuICAgIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDdweDtcbiAgICAgICAgaGVpZ2h0OiA3cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNjAwNGY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2V2ZXJlLWV2ZW50IC50b3Age1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgLnNvdXJjZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBOb0V2ZW50c0NvbXBvbmVudCA9IHN0eWxlZChOb0V2ZW50cylgXG4gIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICBoZWlnaHQ6IDEwMCU7XG5gO1xuIl19
100
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGF5anMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl91dGMiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdEJvb3RzdHJhcCIsIl9EYXRhTG9hZGVyRXJyb3IiLCJfU3R5bGVkTGluayIsIl9TcGlubmVyIiwiX3VzZUFwaVdpdGhEYXNoYm9hcmRRdWVyeSIsIl9Ob0V2ZW50cyIsIl9PcHRpb25hbExpbmtlZFNldmVyZUV2ZW50IiwiX1V0aWxpdHlEYXNoYm9hcmQiLCJfRXZlbnRVdGlscyIsIkV2ZW50c0Nhcm91c2VsIiwiX3JlZiIsImVuZHBvaW50IiwiX3JlZiRldmVudFBhcmFtcyIsImV2ZW50UGFyYW1zIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwiZGVmYXVsdCIsImV2ZW50c0FyciIsInNldEV2ZW50c0FyciIsIl91c2VBcGlXaXRoRGFzaGJvYXJkUSIsInVzZUFwaVdpdGhEYXNoYm9hcmRRdWVyeSIsIl91c2VBcGlXaXRoRGFzaGJvYXJkUTIiLCJyZXNwb25zZSIsImlzTG9hZGluZyIsImVycm9yIiwidXNlRWZmZWN0IiwiZGF0YSIsIkFycmF5IiwiaXNBcnJheSIsImV2ZW50cyIsImFyciIsInNvcnQiLCJhIiwiYiIsIkRhdGUiLCJwYXJzZSIsImZpcnN0X3NlZW5fdGltZSIsInNsaWNlIiwicGFyc2VFdmVudERhdGEiLCJldmVudCIsImxhc3RzZWVuIiwibGFzdFNlZW5PYnNlcnZhdGlvbiIsImZpcnN0c2VlbiIsImZpcnN0U2Vlbk9ic2VydmF0aW9uIiwiZGlmZiIsImxhc3Rfc2Vlbl90aW1lIiwic3RhcnRfdGltZSIsImRheWpzIiwiZXh0ZW5kIiwidXRjIiwibWFwcGVkRXZlbnQiLCJ0b3RhbCIsImZvcm1hdCIsImNyZWF0ZUVsZW1lbnQiLCJDb250YWluZXIiLCJEYXRhTG9hZGVyRXJyb3IiLCJTcGlubmVySG9sZGVyIiwiU3Bpbm5lciIsImxlbmd0aCIsIk5vRXZlbnRzQ29tcG9uZW50IiwiQ2Fyb3VzZWwiLCJjbGFzc05hbWUiLCJpbmRpY2F0b3JzIiwiaW50ZXJ2YWwiLCJjb250cm9scyIsIm1hcCIsImluZGV4IiwiSXRlbSIsImtleSIsImlkIiwiU3R5bGVkTGluayIsInRvIiwibmV3UGFyYW1zIiwiY29uY2F0IiwidmFsdWVzRnJvbUtRTCIsIm1zZyIsImV4cG9ydHMiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIk5vRXZlbnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1dpZGdldHMvRXZlbnRzQ2Fyb3VzZWwvRXZlbnRzQ2Fyb3VzZWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5pbXBvcnQgdXRjIGZyb20gJ2RheWpzL3BsdWdpbi91dGMnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBDYXJvdXNlbCB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBEYXRhTG9hZGVyRXJyb3IgfSBmcm9tICdzcmMvY29tcG9uZW50cy9EYXRhTG9hZGVyRXJyb3IvRGF0YUxvYWRlckVycm9yJztcbmltcG9ydCB7IFN0eWxlZExpbmsgfSBmcm9tICdzcmMvY29tcG9uZW50cy9MaW5rcy9TdHlsZWRMaW5rL1N0eWxlZExpbmsnO1xuaW1wb3J0IHsgU3Bpbm5lciB9IGZyb20gJ3NyYy9jb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lcic7XG5pbXBvcnQgeyB1c2VBcGlXaXRoRGFzaGJvYXJkUXVlcnkgfSBmcm9tICdzcmMvaG9va3MvdXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5JztcbmltcG9ydCBOb0V2ZW50cyBmcm9tICdzcmMvcGFnZXMvVXRpbGl0eURhc2hib2FyZFBhZ2UvTW9zdFNldmVyZUV2ZW50cy9Ob0V2ZW50cy9Ob0V2ZW50cyc7XG5pbXBvcnQgT3B0aW9uYWxMaW5rZWRTZXZlcmVFdmVudCBmcm9tICdzcmMvcGFnZXMvVXRpbGl0eURhc2hib2FyZFBhZ2UvTW9zdFNldmVyZUV2ZW50cy9TZXZlcmVFdmVudC9PcHRpb25hbExpbmtlZFNldmVyZUV2ZW50JztcbmltcG9ydCB7IFNwaW5uZXJIb2xkZXIgfSBmcm9tICdzcmMvcGFnZXMvVXRpbGl0eURhc2hib2FyZFBhZ2UvVXRpbGl0eURhc2hib2FyZCc7XG5pbXBvcnQgeyBJRXZlbnQsIElFdmVudHNSZXNwb25zZSB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7XG4gIGZpcnN0U2Vlbk9ic2VydmF0aW9uLFxuICBsYXN0U2Vlbk9ic2VydmF0aW9uLFxufSBmcm9tICcuLi8uLi9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9FdmVudFV0aWxzJztcblxuaW50ZXJmYWNlIEV2ZW50c0Nhcm91c2VsUHJvcHMge1xuICBlbmRwb2ludDogc3RyaW5nO1xuICBldmVudFBhcmFtcz86IHtcbiAgICBba2V5OiBzdHJpbmddOiBzdHJpbmc7XG4gIH07XG59XG5leHBvcnQgY29uc3QgRXZlbnRzQ2Fyb3VzZWw6IFJlYWN0LkZDPEV2ZW50c0Nhcm91c2VsUHJvcHM+ID0gKHtcbiAgZW5kcG9pbnQsXG4gIGV2ZW50UGFyYW1zID0ge30sXG59KSA9PiB7XG4gIGNvbnN0IFtldmVudHNBcnIsIHNldEV2ZW50c0Fycl0gPSB1c2VTdGF0ZTxJRXZlbnRbXT4oW10pO1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY29uc3QgW3Jlc3BvbnNlLCBpc0xvYWRpbmcsIGVycm9yXSA9XG4gICAgdXNlQXBpV2l0aERhc2hib2FyZFF1ZXJ5PElFdmVudHNSZXNwb25zZT4oZW5kcG9pbnQsIGV2ZW50UGFyYW1zKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChyZXNwb25zZT8uZGF0YSAmJiAhZXJyb3IpIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJlc3BvbnNlLmRhdGEuZXZlbnRzKSkge1xuICAgICAgICBjb25zdCBhcnIgPSByZXNwb25zZS5kYXRhLmV2ZW50c1xuXG4gICAgICAgICAgLnNvcnQoXG4gICAgICAgICAgICAoYSwgYikgPT5cbiAgICAgICAgICAgICAgLURhdGUucGFyc2UoYS5maXJzdF9zZWVuX3RpbWUpICsgRGF0ZS5wYXJzZShiLmZpcnN0X3NlZW5fdGltZSksXG4gICAgICAgICAgKVxuICAgICAgICAgIC5zbGljZSgwLCA0KTtcbiAgICAgICAgc2V0RXZlbnRzQXJyKGFycik7XG4gICAgICB9XG4gICAgfVxuICB9LCBbcmVzcG9uc2VdKTtcblxuICBjb25zdCBwYXJzZUV2ZW50RGF0YSA9IChldmVudDogSUV2ZW50KSA9PiB7XG4gICAgY29uc3QgbGFzdHNlZW4gPSBsYXN0U2Vlbk9ic2VydmF0aW9uKGV2ZW50KTtcblxuICAgIGNvbnN0IGZpcnN0c2VlbiA9IGZpcnN0U2Vlbk9ic2VydmF0aW9uKGV2ZW50KTtcblxuICAgIGNvbnN0IGRpZmYgPSBsYXN0c2Vlbi5sYXN0X3NlZW5fdGltZSAtIGZpcnN0c2Vlbi5zdGFydF90aW1lO1xuICAgIGRheWpzLmV4dGVuZCh1dGMpO1xuXG4gICAgY29uc3QgbWFwcGVkRXZlbnQ6IGFueSA9IHtcbiAgICAgIGxhc3RzZWVuLFxuICAgICAgZmlyc3RzZWVuLFxuICAgICAgLy9AdHMtaWdub3JlXG4gICAgICB0b3RhbDogZGF5anMudXRjKGRpZmYgKiAxMDAwKS5mb3JtYXQoJ0hIOm1tOnNzJyksXG4gICAgfTtcbiAgICByZXR1cm4gbWFwcGVkRXZlbnQ7XG4gIH07XG5cbiAgaWYgKGlzTG9hZGluZyAmJiAhZXJyb3IpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPENvbnRhaW5lcj5cbiAgICAgICAgPERhdGFMb2FkZXJFcnJvciBpc0xvYWRpbmc9e2lzTG9hZGluZ30gZGF0YT17ZXZlbnRzQXJyfSBlcnJvcj17ZXJyb3J9PlxuICAgICAgICAgIDxTcGlubmVySG9sZGVyPlxuICAgICAgICAgICAgPFNwaW5uZXIgLz5cbiAgICAgICAgICA8L1NwaW5uZXJIb2xkZXI+XG4gICAgICAgIDwvRGF0YUxvYWRlckVycm9yPlxuICAgICAgPC9Db250YWluZXI+XG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPENvbnRhaW5lcj5cbiAgICAgIHtyZXNwb25zZSAmJiBldmVudHNBcnIubGVuZ3RoID09PSAwID8gKFxuICAgICAgICA8Tm9FdmVudHNDb21wb25lbnQgLz5cbiAgICAgICkgOiAoXG4gICAgICAgIDxDYXJvdXNlbFxuICAgICAgICAgIGNsYXNzTmFtZT1cImV2ZW50cy1jYXJvdXNlbFwiXG4gICAgICAgICAgaW5kaWNhdG9ycz17dHJ1ZX1cbiAgICAgICAgICBpbnRlcnZhbD17bnVsbH1cbiAgICAgICAgICBjb250cm9scz17ZXZlbnRzQXJyLmxlbmd0aCA+IDF9XG4gICAgICAgID5cbiAgICAgICAgICB7ZXZlbnRzQXJyLm1hcCgoZXZlbnQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBkYXRhID0gcGFyc2VFdmVudERhdGEoZXZlbnQpO1xuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPENhcm91c2VsLkl0ZW0ga2V5PXtldmVudC5pZH0+XG4gICAgICAgICAgICAgICAgPFN0eWxlZExpbmtcbiAgICAgICAgICAgICAgICAgIHRvPXtgL2V2ZW50c192aWV3L2luZGV4YH1cbiAgICAgICAgICAgICAgICAgIG5ld1BhcmFtcz17YCZldmVudElkPSR7ZXZlbnQuaWR9JnZhbHVlc0Zyb21LUUw9JHtldmVudFBhcmFtcy52YWx1ZXNGcm9tS1FMfWB9XG4gICAgICAgICAgICAgICAgICBrZXk9e2luZGV4fVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxPcHRpb25hbExpbmtlZFNldmVyZUV2ZW50XG4gICAgICAgICAgICAgICAgICAgIGtleT17aW5kZXh9XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50PXtldmVudH1cbiAgICAgICAgICAgICAgICAgICAgdG90YWw9e2RhdGEudG90YWx9XG4gICAgICAgICAgICAgICAgICAgIGZpcnN0c2Vlbj17ZGF0YS5maXJzdHNlZW59XG4gICAgICAgICAgICAgICAgICAgIGxhc3RzZWVuPXtkYXRhLmxhc3RzZWVufVxuICAgICAgICAgICAgICAgICAgICBtc2c9XCJcIlxuICAgICAgICAgICAgICAgICAgICB2YWx1ZXNGcm9tS1FMPXtldmVudFBhcmFtcy52YWx1ZXNGcm9tS1FMfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L1N0eWxlZExpbms+XG4gICAgICAgICAgICAgIDwvQ2Fyb3VzZWwuSXRlbT5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSl9XG4gICAgICAgIDwvQ2Fyb3VzZWw+XG4gICAgICApfVxuICAgIDwvQ29udGFpbmVyPlxuICApO1xufTtcblxuY29uc3QgQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzOHB4KTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLmV2ZW50cy1jYXJvdXNlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcblxuICAgIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAgICYtbmV4dCxcbiAgICAgICYtcHJldiB7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIH1cblxuICAgICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICAgICYtbmV4dCB7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtcHJldiB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgbGVmdDogdW5zZXQ7XG5cbiAgICAgICAgICAmLWljb24ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLFxuICAgIC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogNXB4O1xuICAgICAgdG9wOiAxM3B4O1xuICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgfVxuXG4gICAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgIGxlZnQ6IDVweDtcbiAgICB9XG5cbiAgICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsaSB7XG4gICAgICAgIHdpZHRoOiA3cHg7XG4gICAgICAgIGhlaWdodDogN3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjYwMDRmO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNldmVyZS1ldmVudCAudG9wIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIC5zb3VyY2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgTm9FdmVudHNDb21wb25lbnQgPSBzdHlsZWQoTm9FdmVudHMpYFxuICBtaW4taGVpZ2h0OiB1bnNldDtcbiAgaGVpZ2h0OiAxMDAlO1xuYDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLElBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLGVBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLGdCQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxXQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxRQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSx5QkFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsU0FBQSxHQUFBVixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVUsMEJBQUEsR0FBQVgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFXLGlCQUFBLEdBQUFYLE9BQUE7QUFHQSxJQUFBWSxXQUFBLEdBQUFaLE9BQUE7QUFXTyxJQUFNYSxjQUE2QyxHQUFHLFNBQWhEQSxjQUE2Q0EsQ0FBQUMsSUFBQSxFQUdwRDtFQUFBLElBRkpDLFFBQVEsR0FBQUQsSUFBQSxDQUFSQyxRQUFRO0lBQUFDLGdCQUFBLEdBQUFGLElBQUEsQ0FDUkcsV0FBVztJQUFYQSxXQUFXLEdBQUFELGdCQUFBLGNBQUcsQ0FBQyxDQUFDLEdBQUFBLGdCQUFBO0VBRWhCLElBQUFFLFNBQUEsR0FBa0MsSUFBQUMsZUFBUSxFQUFXLEVBQUUsQ0FBQztJQUFBQyxVQUFBLE9BQUFDLGVBQUEsQ0FBQUMsT0FBQSxFQUFBSixTQUFBO0lBQWpESyxTQUFTLEdBQUFILFVBQUE7SUFBRUksWUFBWSxHQUFBSixV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