@kando-env/kando-ui 1.2.351 → 1.2.352

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (576) hide show
  1. package/lib/Router.js +36 -73
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +23 -33
  3. package/lib/Widgets/EventsRow/EventsRow.js +25 -37
  4. package/lib/Widgets/Map/GraphUtils.js +3 -3
  5. package/lib/Widgets/Map/Map.js +66 -83
  6. package/lib/Widgets/Map/MapUtils.js +40 -39
  7. package/lib/Widgets/Map/areas/AreaPolygon.js +52 -76
  8. package/lib/Widgets/Map/areas/AreaPolygons.js +23 -24
  9. package/lib/Widgets/Map/areas/AreaUtils.js +46 -46
  10. package/lib/Widgets/Map/areas/Patterns.js +4 -4
  11. package/lib/Widgets/Map/edges/Edge.js +24 -31
  12. package/lib/Widgets/Map/edges/Edges.js +19 -23
  13. package/lib/Widgets/Map/edges/arrows/Arrows.js +23 -44
  14. package/lib/Widgets/Map/events/Event.js +17 -17
  15. package/lib/Widgets/Map/events/EventIndicator.js +57 -52
  16. package/lib/Widgets/Map/events/EventPath.js +24 -22
  17. package/lib/Widgets/Map/events/EventUtils.js +55 -78
  18. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +17 -18
  19. package/lib/Widgets/Map/events/PointOfEvent.js +29 -34
  20. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +30 -37
  21. package/lib/Widgets/Map/events/Snail.js +19 -20
  22. package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +93 -86
  23. package/lib/Widgets/Map/map/FloatingGraph.js +22 -18
  24. package/lib/Widgets/Map/map/GraphDateButton.js +25 -17
  25. package/lib/Widgets/Map/matchGraph/MatchGraph.js +13 -12
  26. package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +16 -15
  27. package/lib/Widgets/Map/points/PointIcon.js +15 -13
  28. package/lib/Widgets/Map/points/PointMarker.js +71 -87
  29. package/lib/Widgets/Map/points/PointMarkers.js +45 -66
  30. package/lib/Widgets/Map/points/PointUtils.js +69 -75
  31. package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +28 -45
  32. package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +11 -10
  33. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +10 -11
  34. package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +3 -3
  35. package/lib/Widgets/MostPolluting/Areas/Areas.js +28 -57
  36. package/lib/Widgets/MostPolluting/Areas/areas.mock.js +3 -3
  37. package/lib/Widgets/MostPolluting/Areas/styles.js +3 -3
  38. package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +11 -8
  39. package/lib/Widgets/MostPolluting/Factories/Factories.js +33 -64
  40. package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +14 -17
  41. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +7 -7
  42. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +12 -10
  43. package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +3 -3
  44. package/lib/Widgets/MostPolluting/Factories/factories.mock.js +2 -2
  45. package/lib/Widgets/MostPolluting/Factories/styles.js +3 -3
  46. package/lib/Widgets/MostPolluting/MostPolluting.js +21 -27
  47. package/lib/Widgets/MostPolluting/MostPolluting.stories.js +18 -22
  48. package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +6 -4
  49. package/lib/Widgets/MostPolluting/ShowMore/styles.js +6 -4
  50. package/lib/Widgets/MostPolluting/assets/index.js +10 -10
  51. package/lib/Widgets/MostPolluting/components/ChangePercent.js +19 -13
  52. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +35 -30
  53. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +34 -31
  54. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +39 -35
  55. package/lib/Widgets/MostPolluting/components/PotentialImpact.js +27 -26
  56. package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +51 -47
  57. package/lib/Widgets/MostPolluting/styles.js +3 -3
  58. package/lib/Widgets/PotentialImpactSummary/Back/Back.js +7 -5
  59. package/lib/Widgets/PotentialImpactSummary/Icon.js +8 -6
  60. package/lib/Widgets/PotentialImpactSummary/index.js +19 -27
  61. package/lib/Widgets/PotentialImpactSummary/index.test.js +47 -52
  62. package/lib/Widgets/PotentialImpactSummary/styles.js +7 -7
  63. package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +9 -7
  64. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +22 -17
  65. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +35 -32
  66. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +26 -24
  67. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +35 -37
  68. package/lib/Widgets/QualitySummary/QualitySummary.js +9 -13
  69. package/lib/Widgets/QualitySummary/qualitySummary.mock.js +4 -4
  70. package/lib/Widgets/QualitySummary/styles.js +23 -15
  71. package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +12 -13
  72. package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +25 -24
  73. package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +29 -24
  74. package/lib/Widgets/UtilityInformation/UtilityInformation.js +23 -40
  75. package/lib/Widgets/UtilityInformation/styles.js +31 -22
  76. package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +3 -3
  77. package/lib/assets/icons/TopNavbar/index.js +6 -6
  78. package/lib/assets/icons/TrendSvg.js +6 -6
  79. package/lib/assets/icons/index.js +15 -15
  80. package/lib/assets/icons/kandoStepper/index.js +5 -5
  81. package/lib/assets/icons/siteTypes/index.js +1 -1
  82. package/lib/components/ApplyButton/ApplyButton.js +8 -8
  83. package/lib/components/Backdrop/Backdrop.js +6 -4
  84. package/lib/components/ContentLoader/ContentLoader.js +11 -9
  85. package/lib/components/ContentLoader/index.js +1 -1
  86. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +10 -9
  87. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +3 -5
  88. package/lib/components/CustomInputs/DoubleTabs/styles.js +20 -12
  89. package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +12 -19
  90. package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +6 -4
  91. package/lib/components/CustomInputs/Search/Search.js +39 -60
  92. package/lib/components/CustomInputs/Select/Select.js +42 -55
  93. package/lib/components/CustomInputs/Select/Select.stories.js +4 -6
  94. package/lib/components/DamageType/DamageType.js +34 -56
  95. package/lib/components/DataLoaderError/DataLoaderError.js +8 -6
  96. package/lib/components/DischargeHeatmap/DischargeHeatmap.js +9 -10
  97. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +70 -71
  98. package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +27 -37
  99. package/lib/components/DischargeHeatmap/HighchartsOptions.js +10 -12
  100. package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -3
  101. package/lib/components/DischargeHeatmap/popupText.js +9 -9
  102. package/lib/components/DischargeHeatmap/titles.js +3 -3
  103. package/lib/components/ErrorBoundary.js +27 -41
  104. package/lib/components/Events/Events.js +28 -45
  105. package/lib/components/Graph/Graph.js +67 -86
  106. package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +17 -21
  107. package/lib/components/Header/DoubleTabs/DoubleTabs.js +18 -26
  108. package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +3 -5
  109. package/lib/components/Header/DoubleTabs/styles.js +4 -4
  110. package/lib/components/Header/Header.js +2 -2
  111. package/lib/components/Header/Header.stories.js +3 -5
  112. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +82 -197
  113. package/lib/components/Header/InfoBar/InfoBar.js +66 -95
  114. package/lib/components/Header/InfoBar/Search/Control.js +9 -9
  115. package/lib/components/Header/InfoBar/Search/GroupLabel.js +6 -4
  116. package/lib/components/Header/InfoBar/Search/Search.js +14 -19
  117. package/lib/components/Header/InfoBar/Search/SearchContainer.js +15 -27
  118. package/lib/components/Header/InfoBar/Search/searchStyle.js +41 -49
  119. package/lib/components/Header/InfoBar/TimeFilter.js +11 -14
  120. package/lib/components/Header/KandoNavbar/KandoNavbar.js +62 -87
  121. package/lib/components/Header/Slideshow/Slideshow.js +67 -89
  122. package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +6 -4
  123. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +21 -23
  124. package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +13 -13
  125. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +35 -41
  126. package/lib/components/Header/Toolbar/Toolbar.js +55 -74
  127. package/lib/components/InfoBar/InfoBar.js +10 -23
  128. package/lib/components/InfoBar/InfoBar.stories.js +3 -5
  129. package/lib/components/KandoModal/KandoModal.js +23 -37
  130. package/lib/components/Link.js +8 -7
  131. package/lib/components/Links/CustomRedirect/CustomRedirect.js +9 -8
  132. package/lib/components/Links/StyledLink/StyledLink.js +12 -12
  133. package/lib/components/Links/StyledNavLink/StyledNavLink.js +11 -10
  134. package/lib/components/LiveEvents/CarouselSlide.js +9 -7
  135. package/lib/components/LiveEvents/LiveEvents.js +5 -3
  136. package/lib/components/LoaderByPercent/LoaderByPercent.js +36 -28
  137. package/lib/components/Map/Map.js +19 -22
  138. package/lib/components/Modal/Modal.js +9 -9
  139. package/lib/components/NarrowHeader.js +17 -31
  140. package/lib/components/PointInfo/PointInfo.js +18 -16
  141. package/lib/components/PopupModal/PopupModal.js +12 -16
  142. package/lib/components/PopupModal/PopupModal.stories.js +15 -19
  143. package/lib/components/Sector/Sector.js +8 -6
  144. package/lib/components/Sector/Sector.test.js +19 -20
  145. package/lib/components/Sector/sectorIcons.js +2 -2
  146. package/lib/components/SevereEvent/Eta/Eta.js +48 -51
  147. package/lib/components/SevereEvent/Eta/styles.js +10 -6
  148. package/lib/components/SevereEvent/SevereEvent.js +27 -34
  149. package/lib/components/Spinner/Spinner.js +7 -7
  150. package/lib/components/Spinner/Spinner.stories.js +4 -6
  151. package/lib/components/Spinner/styles.js +20 -12
  152. package/lib/components/Tabs/Tabs.js +18 -27
  153. package/lib/components/Tabs/Tabs.stories.js +4 -6
  154. package/lib/components/Tabs/assets/index.js +5 -5
  155. package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +12 -15
  156. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +34 -45
  157. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +19 -31
  158. package/lib/components/TimeRangeSelector/TimeRangeHelper.js +16 -21
  159. package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +11 -11
  160. package/lib/components/TimeRangeSelector/TimeRangeList.js +23 -24
  161. package/lib/components/TimeRangeSelector/TimeRangeOptions.js +16 -24
  162. package/lib/components/TimeRangeSelector/TimeRangeSelector.js +28 -29
  163. package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +4 -6
  164. package/lib/components/TimeRangeSelector/constants.js +3 -3
  165. package/lib/components/Toggle/Toggle.js +10 -15
  166. package/lib/components/TrendGraph/TrendGraph.js +22 -38
  167. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +24 -30
  168. package/lib/development-environment/index.js +8 -12
  169. package/lib/development-environment/mock/browser.js +2 -4
  170. package/lib/development-environment/mock/get.js +8 -10
  171. package/lib/development-environment/mock/handlers.js +2 -2
  172. package/lib/development-environment/mock/mockBus.js +4 -4
  173. package/lib/development-environment/mock/mockObjects/area-trends-graph.js +2 -2
  174. package/lib/development-environment/mock/mockObjects/areaInformation.js +2 -2
  175. package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +2 -2
  176. package/lib/development-environment/mock/mockObjects/areaSitesData.js +2 -2
  177. package/lib/development-environment/mock/mockObjects/areasJson.js +2 -2
  178. package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +2 -2
  179. package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +2 -2
  180. package/lib/development-environment/mock/mockObjects/data-menuData.js +2 -2
  181. package/lib/development-environment/mock/mockObjects/data-search.js +2 -2
  182. package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +2 -2
  183. package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +2 -2
  184. package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +2 -2
  185. package/lib/development-environment/mock/mockObjects/eventsJson.js +2 -2
  186. package/lib/development-environment/mock/mockObjects/metascore.js +2 -2
  187. package/lib/development-environment/mock/mockObjects/permissionsJson.js +2 -2
  188. package/lib/development-environment/mock/mockObjects/pointsJson.js +2 -2
  189. package/lib/development-environment/mock/mockObjects/site-info.js +2 -2
  190. package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +2 -2
  191. package/lib/development-environment/togly/ToglyDashboard.js +13 -22
  192. package/lib/development-environment/togly/ToglyItem.js +25 -28
  193. package/lib/development-environment/togly/init.js +2 -2
  194. package/lib/development-environment/togly/macro.js +13 -9
  195. package/lib/development-environment/togly/useDoubleKeyDown.js +7 -9
  196. package/lib/development-environment/togly/useLocalStorage.js +13 -18
  197. package/lib/hooks/useApi.js +19 -55
  198. package/lib/hooks/useApiWithDashboardQuery.js +30 -49
  199. package/lib/hooks/useClickOutside.js +3 -3
  200. package/lib/hooks/useInitializeHeaders.js +5 -5
  201. package/lib/hooks/useKandoFetch.js +15 -28
  202. package/lib/hooks/useMap.js +22 -34
  203. package/lib/hooks/useNavContext.js +22 -26
  204. package/lib/hooks/useRemoveExistingLayers.js +6 -6
  205. package/lib/hooks/useUpdateEventBodyTail.js +13 -17
  206. package/lib/hooks/useUserTimeZone.js +33 -30
  207. package/lib/hooks/useUserTimeZone.test.js +19 -22
  208. package/lib/hooks/useWindowSize.js +7 -14
  209. package/lib/index.js +11 -12
  210. package/lib/macros/getVersion.js +2 -2
  211. package/lib/pages/AreaPage/AreaPage.js +34 -67
  212. package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +15 -16
  213. package/lib/pages/AreaPage/Dashboard/Dashboard.js +23 -24
  214. package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +17 -25
  215. package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +4 -4
  216. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +7 -7
  217. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +9 -9
  218. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +3 -3
  219. package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +2 -2
  220. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +4 -4
  221. package/lib/pages/AssessmentPage/AssessmentPage.js +37 -43
  222. package/lib/pages/CannyWidget/Feedback.js +13 -13
  223. package/lib/pages/CovidPage/CovidPage.js +8 -13
  224. package/lib/pages/CovidPage/components/Body.js +25 -27
  225. package/lib/pages/CovidPage/components/Map.js +27 -37
  226. package/lib/pages/CovidPage/components/Sidebar.js +14 -13
  227. package/lib/pages/CovidPage/components/Summary.js +19 -26
  228. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +24 -30
  229. package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +51 -73
  230. package/lib/pages/CovidPage/components/areas/Area.js +24 -35
  231. package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +44 -43
  232. package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +32 -35
  233. package/lib/pages/CovidPage/components/areas/AreasList.js +29 -41
  234. package/lib/pages/CovidPage/components/areas/Sort.js +11 -14
  235. package/lib/pages/CovidPage/components/nvlStatusHelper.js +11 -11
  236. package/lib/pages/DashboardMap/AreaCard.js +26 -26
  237. package/lib/pages/DashboardMap/AssessmentIcon.js +7 -6
  238. package/lib/pages/DashboardMap/Capacity.js +34 -85
  239. package/lib/pages/DashboardMap/FactoryCard.js +28 -24
  240. package/lib/pages/DashboardMap/HighchartsOptions.js +5 -4
  241. package/lib/pages/DashboardMap/List.js +68 -94
  242. package/lib/pages/DashboardMap/ListContext.js +15 -19
  243. package/lib/pages/DashboardMap/Loader.js +2 -2
  244. package/lib/pages/DashboardMap/SeverityBadge.js +10 -18
  245. package/lib/pages/DashboardMap/WWTPMap.js +49 -59
  246. package/lib/pages/DashboardMap/WaterDischarge.js +8 -8
  247. package/lib/pages/DashboardMap/Widget.js +53 -70
  248. package/lib/pages/DashboardMap/utils.js +41 -50
  249. package/lib/pages/EventsPage/Body/Body.js +20 -15
  250. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +17 -19
  251. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +27 -35
  252. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +8 -6
  253. package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +11 -7
  254. package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +21 -30
  255. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +52 -63
  256. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +17 -23
  257. package/lib/pages/EventsPage/EventsPage.js +7 -10
  258. package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +25 -37
  259. package/lib/pages/EventsPage/events/MoreInfo.js +17 -16
  260. package/lib/pages/EventsPage/events/Sidebar.js +21 -16
  261. package/lib/pages/EventsPage/events/event_info/Contaminants/Contaminants.js +7 -7
  262. package/lib/pages/EventsPage/events/event_info/Contaminants/ContaminantsList.js +17 -20
  263. package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +30 -35
  264. package/lib/pages/EventsPage/events/event_info/EventDetails.js +32 -29
  265. package/lib/pages/EventsPage/events/event_info/EventInfo.js +41 -40
  266. package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +4 -4
  267. package/lib/pages/EventsPage/events/event_info/EventSection.js +16 -18
  268. package/lib/pages/EventsPage/events/event_info/EventSection.test.js +43 -38
  269. package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +38 -46
  270. package/lib/pages/EventsPage/events/event_info/Header/Header.js +6 -4
  271. package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +28 -31
  272. package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +4 -4
  273. package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +29 -36
  274. package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +4 -6
  275. package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +22 -21
  276. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResult.js +12 -19
  277. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResultButton.js +5 -3
  278. package/lib/pages/EventsPage/events/event_info/SamplingList/SamplingDetails.js +11 -9
  279. package/lib/pages/EventsPage/events/event_info/SamplingList/Samplings.js +21 -25
  280. package/lib/pages/EventsPage/events/event_info/SeverityScore/ScoreExplanation.js +11 -7
  281. package/lib/pages/EventsPage/events/event_info/SeverityScore/SeverityScore.js +6 -6
  282. package/lib/pages/EventsPage/events/event_info/SourceDetails/Confidence.js +5 -3
  283. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.js +2 -2
  284. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.test.js +12 -10
  285. package/lib/pages/EventsPage/events/event_info/SourceDetails/IconAndTitles.js +6 -4
  286. package/lib/pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton.js +10 -12
  287. package/lib/pages/EventsPage/events/event_info/SourceDetails/OtherSources.js +5 -3
  288. package/lib/pages/EventsPage/events/event_info/SourceDetails/PotentialSources.js +7 -5
  289. package/lib/pages/EventsPage/events/event_info/SourceDetails/SingleSource.js +7 -5
  290. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceCardBody.js +6 -4
  291. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.js +11 -9
  292. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.test.js +15 -15
  293. package/lib/pages/EventsPage/events/event_info/SourceDetails/WaterDischarge.js +6 -6
  294. package/lib/pages/EventsPage/events/event_info/Timelines/DischargeBox.js +7 -5
  295. package/lib/pages/EventsPage/events/event_info/Timelines/EarlyWarning.js +17 -15
  296. package/lib/pages/EventsPage/events/event_info/Timelines/LiveStatusBadge.js +4 -4
  297. package/lib/pages/EventsPage/events/event_info/Timelines/SeenBox.js +10 -8
  298. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.js +16 -11
  299. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.test.js +9 -8
  300. package/lib/pages/EventsPage/events/event_info/Timelines/Titles.js +2 -2
  301. package/lib/pages/EventsPage/events/event_info/Timelines/style.js +3 -3
  302. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +24 -37
  303. package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +29 -36
  304. package/lib/pages/EventsPage/events/event_info/samplingsOld/Sampling.js +11 -9
  305. package/lib/pages/EventsPage/events/event_info/samplingsOld/Samplings.js +15 -17
  306. package/lib/pages/EventsPage/events/event_info/sources/Source.js +25 -28
  307. package/lib/pages/EventsPage/events/event_info/sources/Sources.js +21 -24
  308. package/lib/pages/EventsPage/events/event_info/styles.js +20 -12
  309. package/lib/pages/EventsPage/events/events_list/EventItem.js +17 -18
  310. package/lib/pages/EventsPage/events/events_list/EventUtils.js +10 -10
  311. package/lib/pages/EventsPage/events/events_list/EventsList.js +113 -134
  312. package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +38 -53
  313. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +72 -108
  314. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +52 -69
  315. package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +38 -41
  316. package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +29 -36
  317. package/lib/pages/EventsPage/events/events_list/Sort.js +13 -16
  318. package/lib/pages/ImportFileWizard/FileUploadRespones.js +12 -19
  319. package/lib/pages/ImportFileWizard/ImportButtomButtons.js +6 -4
  320. package/lib/pages/ImportFileWizard/ImportFile.js +20 -22
  321. package/lib/pages/ImportFileWizard/ResponseBody.js +24 -33
  322. package/lib/pages/ImportFileWizard/ValidationForm.js +21 -20
  323. package/lib/pages/ImportFileWizard/ValidationResponse.js +21 -21
  324. package/lib/pages/ImportFileWizard/importFileUtils.js +1 -1
  325. package/lib/pages/ImportGisPage/ImportGisContainer.js +21 -24
  326. package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +21 -23
  327. package/lib/pages/ImportGisPage/importGisUtils.js +12 -20
  328. package/lib/pages/ImportGisProcess/index.js +12 -15
  329. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +7 -12
  330. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +17 -19
  331. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +3 -3
  332. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +28 -57
  333. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +6 -8
  334. package/lib/pages/NotificationsPage/Notification/Notification.js +16 -12
  335. package/lib/pages/NotificationsPage/Notifications.mock.js +2 -2
  336. package/lib/pages/NotificationsPage/Notifications.stories.js +4 -6
  337. package/lib/pages/NotificationsPage/NotificationsPage.js +18 -36
  338. package/lib/pages/NotificationsPage/assets/index.js +9 -9
  339. package/lib/pages/NotificationsPageV2/NotificationsPage.js +70 -93
  340. package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +93 -62
  341. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +126 -137
  342. package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +71 -71
  343. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +90 -87
  344. package/lib/pages/NotificationsPageV2/notificationUtils.js +39 -33
  345. package/lib/pages/OldSitePage/OldSitePage.js +56 -131
  346. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +5 -5
  347. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +3 -5
  348. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +8 -6
  349. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +18 -20
  350. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +9 -7
  351. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +12 -18
  352. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +16 -12
  353. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +3 -5
  354. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +17 -11
  355. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +51 -63
  356. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +9 -7
  357. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +29 -53
  358. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +4 -4
  359. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +10 -12
  360. package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +11 -10
  361. package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +10 -11
  362. package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +26 -22
  363. package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +26 -28
  364. package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +4 -4
  365. package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +15 -9
  366. package/lib/pages/ProfilePage/Container.js +2 -2
  367. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +23 -39
  368. package/lib/pages/ProfilePage/ProfilePage.js +111 -199
  369. package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +25 -33
  370. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +18 -15
  371. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +23 -25
  372. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +56 -116
  373. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +17 -20
  374. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +12 -10
  375. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +38 -40
  376. package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +25 -26
  377. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +16 -16
  378. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +13 -15
  379. package/lib/pages/SamplingsPage/NavigationDropdown.js +42 -29
  380. package/lib/pages/SamplingsPage/NewSamplingAction.js +73 -97
  381. package/lib/pages/SamplingsPage/SamplingMobileModal.js +123 -97
  382. package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +21 -22
  383. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +34 -22
  384. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +33 -56
  385. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +15 -18
  386. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +8 -6
  387. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +107 -191
  388. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +47 -53
  389. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +42 -38
  390. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +42 -38
  391. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +19 -20
  392. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +3 -3
  393. package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +10 -6
  394. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +51 -52
  395. package/lib/pages/SamplingsPage/SamplingsMobileList.js +21 -28
  396. package/lib/pages/SamplingsPage/SamplingsPage.js +25 -31
  397. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +49 -57
  398. package/lib/pages/SamplingsPage/samplingsPageUtils.js +67 -75
  399. package/lib/pages/SitePage/DischargePattern/DischargePattern.js +6 -4
  400. package/lib/pages/SitePage/PollutionContributor/PollutionContributor.js +14 -13
  401. package/lib/pages/SitePage/PollutionContributor/PollutionContributorContainer.js +10 -13
  402. package/lib/pages/SitePage/PollutionContributor/contributorUtils.js +16 -16
  403. package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +3 -5
  404. package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +14 -10
  405. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +9 -8
  406. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +26 -23
  407. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +14 -17
  408. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +36 -32
  409. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +9 -7
  410. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +15 -24
  411. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +16 -12
  412. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +3 -5
  413. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +17 -11
  414. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +58 -70
  415. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +9 -7
  416. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +15 -26
  417. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +5 -5
  418. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +10 -12
  419. package/lib/pages/SitePage/SamplingParameters/body/Body.js +8 -8
  420. package/lib/pages/SitePage/SamplingParameters/body/BodyContainer.js +29 -37
  421. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +11 -11
  422. package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +10 -11
  423. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +53 -53
  424. package/lib/pages/SitePage/SamplingParameters/dataParser.js +29 -38
  425. package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +11 -9
  426. package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +4 -4
  427. package/lib/pages/SitePage/SamplingParameters/styles/styles.js +15 -9
  428. package/lib/pages/SitePage/SiteInformation/EmptyState.js +11 -7
  429. package/lib/pages/SitePage/SiteInformation/SiteInformation.js +31 -31
  430. package/lib/pages/SitePage/SitePage.js +34 -73
  431. package/lib/pages/UploadLabResult/index.js +13 -13
  432. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +26 -35
  433. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +6 -8
  434. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +9 -8
  435. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +3 -5
  436. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +46 -47
  437. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +10 -6
  438. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +2 -2
  439. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +4 -6
  440. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +10 -9
  441. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +15 -12
  442. package/lib/pages/UtilityDashboardPage/TopBar/constants.js +7 -7
  443. package/lib/pages/UtilityDashboardPage/TopBar/styles.js +2 -2
  444. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +16 -24
  445. package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +26 -30
  446. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +15 -16
  447. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +7 -13
  448. package/lib/pages/UtilityDashboardPage/VirtualAreaDashboardPage.js +26 -30
  449. package/lib/pages/WbeDashboard/ExpandableComponent.js +9 -8
  450. package/lib/pages/WbeDashboard/GraphWrapper.js +28 -34
  451. package/lib/pages/WbeDashboard/IndividualTinyGraph.js +17 -19
  452. package/lib/pages/WbeDashboard/SearchInput.js +15 -20
  453. package/lib/pages/WbeDashboard/SummaryGraph.js +50 -76
  454. package/lib/pages/WbeDashboard/SummaryGraphModal.js +19 -17
  455. package/lib/pages/WbeDashboard/Tabs.js +10 -10
  456. package/lib/pages/WbeDashboard/WbeDashboardPage.js +144 -206
  457. package/lib/pages/WbeDashboard/WbeSummaryBar.js +39 -47
  458. package/lib/pages/WwtpPage/DashboardCard.js +23 -20
  459. package/lib/pages/WwtpPage/DischargePatternCard.js +14 -23
  460. package/lib/pages/WwtpPage/InletsCard/InletsBar.js +25 -21
  461. package/lib/pages/WwtpPage/InletsCard/InletsCard.js +19 -18
  462. package/lib/pages/WwtpPage/Map.js +5 -3
  463. package/lib/pages/WwtpPage/OrganicCard.js +2 -2
  464. package/lib/pages/WwtpPage/PotentialSaving/ImpactCard.js +2 -2
  465. package/lib/pages/WwtpPage/PotentialSaving/PotentialItem.js +6 -4
  466. package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +9 -8
  467. package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +18 -14
  468. package/lib/pages/WwtpPage/PredictionCard.js +2 -2
  469. package/lib/pages/WwtpPage/TrendCard.js +18 -19
  470. package/lib/pages/WwtpPage/UpgradeBox.js +2 -2
  471. package/lib/pages/WwtpPage/WwtpPage.js +7 -7
  472. package/lib/pages/WwtpPage/WwtpPageContainer.js +21 -16
  473. package/lib/providers/Slideshow/SlideshowContext.js +11 -9
  474. package/lib/providers/Slideshow/SlideshowProvider.js +22 -38
  475. package/lib/providers/Slideshow/SlideshowRunner.js +17 -19
  476. package/lib/providers/UrlHistory/UrlHistoryContext.js +6 -4
  477. package/lib/providers/UrlHistory/UrlHistoryProvider.js +12 -11
  478. package/lib/providers/UrlHistory/index.js +2 -2
  479. package/lib/providers/UrlHistory/useLastVisited.js +4 -4
  480. package/lib/store/ImportGis/actionTypes.js +1 -1
  481. package/lib/store/ImportGis/actionsCreator.js +7 -5
  482. package/lib/store/ImportGis/reducer.js +40 -29
  483. package/lib/store/WBE/actionTypes.js +2 -2
  484. package/lib/store/WBE/reducer.js +13 -9
  485. package/lib/store/WWTPDashboard/WWTPDashboardSlice.js +24 -14
  486. package/lib/store/areas/actionTypes.js +4 -4
  487. package/lib/store/areas/actions.js +7 -13
  488. package/lib/store/areas/reducer.js +8 -6
  489. package/lib/store/context/actionTypes.js +3 -3
  490. package/lib/store/context/actions.js +3 -3
  491. package/lib/store/context/contextMiddlewares.js +14 -16
  492. package/lib/store/context/reducer.js +13 -9
  493. package/lib/store/dashboard/dashboardSlice.js +18 -10
  494. package/lib/store/edges/actionTypes.js +5 -5
  495. package/lib/store/edges/actions.js +4 -8
  496. package/lib/store/edges/reducer.js +13 -17
  497. package/lib/store/events/actionTypes.js +17 -17
  498. package/lib/store/events/actions.js +3 -7
  499. package/lib/store/events/reducer.js +42 -49
  500. package/lib/store/global/actionTypes.js +11 -11
  501. package/lib/store/global/actions.js +8 -6
  502. package/lib/store/global/reducer.js +11 -10
  503. package/lib/store/permissions/permissionsSlice.js +12 -8
  504. package/lib/store/points/actionTypes.js +3 -3
  505. package/lib/store/points/actions.js +3 -7
  506. package/lib/store/points/reducer.js +7 -5
  507. package/lib/store/rootActionTypes.js +2 -2
  508. package/lib/store/rootReducer.js +17 -12
  509. package/lib/store/rootStore.js +5 -5
  510. package/lib/store/samplings/actionTypes.js +1 -1
  511. package/lib/store/samplings/reducer.js +16 -14
  512. package/lib/styles/StylesLayout.js +5 -3
  513. package/lib/styles/theme/theme.js +26 -27
  514. package/lib/test/mocks/browser.js +2 -4
  515. package/lib/test/test-utils.js +17 -15
  516. package/lib/ui-kit/Button/Button.js +127 -79
  517. package/lib/ui-kit/Button/Button.test.js +24 -29
  518. package/lib/ui-kit/Checkbox/Checkbox.js +30 -20
  519. package/lib/ui-kit/ContentCard/ContentCard.js +14 -17
  520. package/lib/ui-kit/Dashboard/Dashboard.js +22 -19
  521. package/lib/ui-kit/DropDown/DropDown.js +22 -23
  522. package/lib/ui-kit/DropDown/DropDown.test.js +12 -12
  523. package/lib/ui-kit/DropDown/DropDownItem.js +24 -21
  524. package/lib/ui-kit/DropDown/DropdownToggle.js +12 -8
  525. package/lib/ui-kit/EmptyState/EmptyState.js +5 -3
  526. package/lib/ui-kit/IconAction/IconAction.js +7 -5
  527. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +46 -62
  528. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +57 -48
  529. package/lib/ui-kit/InletsPie/InletsPie.js +15 -13
  530. package/lib/ui-kit/InletsPie/options.js +6 -6
  531. package/lib/ui-kit/KandoList/KandoList.js +14 -12
  532. package/lib/ui-kit/KandoTable/KandoTable.js +48 -40
  533. package/lib/ui-kit/KandoTable/KandoTable.test.js +16 -22
  534. package/lib/ui-kit/Layout/Layout.js +6 -4
  535. package/lib/ui-kit/MobileInput/MobileInput.js +55 -49
  536. package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +13 -16
  537. package/lib/ui-kit/OrganicEvents/GaugeChart.js +7 -5
  538. package/lib/ui-kit/OrganicEvents/OrganicEvents.js +6 -6
  539. package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +27 -20
  540. package/lib/ui-kit/OrganicEvents/TextInfo.js +15 -10
  541. package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +10 -8
  542. package/lib/ui-kit/SamplingStatus/SamplingStatus.js +14 -17
  543. package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +3 -3
  544. package/lib/ui-kit/ScoreGauge/ScoreGauge.js +19 -19
  545. package/lib/ui-kit/ScoreGauge/constant.js +3 -3
  546. package/lib/ui-kit/TimeLineChart/TrendChart.js +54 -42
  547. package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +8 -7
  548. package/lib/ui-kit/Tooltip/Tooltip.js +14 -8
  549. package/lib/ui-kit/index.js +8 -8
  550. package/lib/ui-kit/kandoStepper/KandoStepper.js +11 -11
  551. package/lib/ui-kit/siteName/SiteName.js +11 -8
  552. package/lib/utilities/ActionUtility.js +7 -7
  553. package/lib/utilities/Alert.js +21 -17
  554. package/lib/utilities/Analytics.js +11 -11
  555. package/lib/utilities/Array.js +4 -5
  556. package/lib/utilities/Enum.js +15 -51
  557. package/lib/utilities/ErrorBoundary.js +27 -41
  558. package/lib/utilities/File.js +40 -69
  559. package/lib/utilities/GetDir.js +8 -7
  560. package/lib/utilities/KandoDate.js +7 -15
  561. package/lib/utilities/KandoModal.js +16 -26
  562. package/lib/utilities/LocalStorage.js +5 -7
  563. package/lib/utilities/ThousandsToK.js +2 -2
  564. package/lib/utilities/TimeFormat.js +21 -20
  565. package/lib/utilities/Truncate.js +16 -24
  566. package/lib/utilities/edgesMath.js +14 -15
  567. package/lib/utilities/i18n.js +3 -3
  568. package/lib/utilities/kql.js +10 -12
  569. package/lib/utilities/map/icons.js +3 -3
  570. package/lib/utilities/polylinedecorator.js +87 -112
  571. package/lib/utilities/scoreToData.js +10 -10
  572. package/lib/utilities/scoreToData.test.js +5 -5
  573. package/lib/utilities/time.js +8 -8
  574. package/lib/utilities/uploadToS3.js +11 -11
  575. package/lib/utilities/urls.js +16 -14
  576. package/package.json +1 -1
@@ -21,16 +21,16 @@ var _zoomIn = _interopRequireDefault(require("assets/icons/zoom-in.svg"));
21
21
  var _WWTPDashboardSlice = require("store/WWTPDashboard/WWTPDashboardSlice");
22
22
  var _reactRedux = require("react-redux");
23
23
  var _reactRouterDom = require("react-router-dom");
24
- var focusMap = function focusMap(object, map) {
25
- var latlngs = [];
24
+ const focusMap = (object, map) => {
25
+ let latlngs = [];
26
26
  if (object.shape_data !== undefined) {
27
- object.shape_data.forEach(function (latlng) {
27
+ object.shape_data.forEach(latlng => {
28
28
  latlngs.push(latlng);
29
29
  });
30
30
  } else {
31
31
  if (object.sub_areas !== undefined && object.sub_areas.length > 0) {
32
- object.sub_areas.forEach(function (sub_area) {
33
- sub_area.shape_data.forEach(function (latlng) {
32
+ object.sub_areas.forEach(sub_area => {
33
+ sub_area.shape_data.forEach(latlng => {
34
34
  latlngs.push(latlng);
35
35
  });
36
36
  });
@@ -40,38 +40,42 @@ var focusMap = function focusMap(object, map) {
40
40
  }
41
41
  map.fitBounds(latlngs);
42
42
  };
43
- var FactoryCard = function FactoryCard(props) {
44
- var object = props.object,
45
- _onClick = props.onClick,
46
- selected = props.selected,
47
- itemRef = props.itemRef;
48
- var dispatch = (0, _reactRedux.useDispatch)();
49
- var history = (0, _reactRouterDom.useHistory)();
50
- var clickHandler = function clickHandler(args) {
51
- var object = args.object,
52
- mapRef = args.mapRef;
43
+ const FactoryCard = props => {
44
+ const {
45
+ object,
46
+ onClick,
47
+ selected,
48
+ itemRef
49
+ } = props;
50
+ const dispatch = (0, _reactRedux.useDispatch)();
51
+ const history = (0, _reactRouterDom.useHistory)();
52
+ const clickHandler = args => {
53
+ const {
54
+ object,
55
+ mapRef
56
+ } = args;
53
57
  focusMap(object, mapRef);
54
58
  (0, _utils.sendAnalyticsEvent)('Map view - Factory clicked', 'left panel', {
55
59
  point_id: object.id,
56
60
  point_name: object.name
57
61
  });
58
62
  };
59
- var getScore = function getScore(object) {
63
+ const getScore = object => {
60
64
  return (object === null || object === void 0 ? void 0 : object.score) ? object === null || object === void 0 ? void 0 : object.score : 0;
61
65
  };
62
- var zoomIn = function zoomIn(e) {
66
+ const zoomIn = e => {
63
67
  e.stopPropagation();
64
68
  dispatch((0, _WWTPDashboardSlice.setFocusedArea)(object));
65
69
  (0, _utils.updateHistory)(object, history);
66
70
  };
67
- var zoomInButton = object.has_device === true && /*#__PURE__*/_react.default.createElement("img", {
71
+ const zoomInButton = object.has_device === true && /*#__PURE__*/_react.default.createElement("img", {
68
72
  src: _zoomIn.default,
69
73
  alt: "",
70
74
  onClick: zoomIn
71
75
  });
72
76
  return /*#__PURE__*/_react.default.createElement(_utils.CardContainer, {
73
- onClick: function onClick() {
74
- _onClick(object);
77
+ onClick: () => {
78
+ onClick(object);
75
79
  clickHandler(props);
76
80
  },
77
81
  ref: itemRef
@@ -118,16 +122,16 @@ var FactoryCard = function FactoryCard(props) {
118
122
  }))))));
119
123
  };
120
124
  exports.FactoryCard = FactoryCard;
121
- var Content = _styledComponents.default.div.withConfig({
125
+ const Content = _styledComponents.default.div.withConfig({
122
126
  displayName: "FactoryCard__Content",
123
127
  componentId: "sc-1nxijdb-0"
124
128
  })([""]);
125
- var PointName = _styledComponents.default.span.withConfig({
129
+ const PointName = _styledComponents.default.span.withConfig({
126
130
  displayName: "FactoryCard__PointName",
127
131
  componentId: "sc-1nxijdb-1"
128
132
  })(["font-weight:600;"]);
129
- var Delimiter = _styledComponents.default.div.withConfig({
133
+ const Delimiter = _styledComponents.default.div.withConfig({
130
134
  displayName: "FactoryCard__Delimiter",
131
135
  componentId: "sc-1nxijdb-2"
132
136
  })(["height:1px;background-color:#e6e6e6;margin:10px -10px 10px 0;"]);
133
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl90aGVtZSIsIl9zY29yZVRvRGF0YSIsIl9yZWFjdEJvb3RzdHJhcCIsIl91dGlscyIsIl9zZWN0b3JJY29ucyIsIl9TZXZlcml0eUJhZGdlIiwiX01pc3NpbmciLCJfbG9kYXNoIiwiX1dhdGVyRGlzY2hhcmdlIiwiX0Fzc2Vzc21lbnRJY29uIiwiX3pvb21JbiIsIl9XV1RQRGFzaGJvYXJkU2xpY2UiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdFJvdXRlckRvbSIsImZvY3VzTWFwIiwib2JqZWN0IiwibWFwIiwibGF0bG5ncyIsInNoYXBlX2RhdGEiLCJ1bmRlZmluZWQiLCJmb3JFYWNoIiwibGF0bG5nIiwicHVzaCIsInN1Yl9hcmVhcyIsImxlbmd0aCIsInN1Yl9hcmVhIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJmaXRCb3VuZHMiLCJGYWN0b3J5Q2FyZCIsInByb3BzIiwib25DbGljayIsInNlbGVjdGVkIiwiaXRlbVJlZiIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJoaXN0b3J5IiwidXNlSGlzdG9yeSIsImNsaWNrSGFuZGxlciIsImFyZ3MiLCJtYXBSZWYiLCJzZW5kQW5hbHl0aWNzRXZlbnQiLCJwb2ludF9pZCIsImlkIiwicG9pbnRfbmFtZSIsIm5hbWUiLCJnZXRTY29yZSIsInNjb3JlIiwiem9vbUluIiwiZSIsInN0b3BQcm9wYWdhdGlvbiIsInNldEZvY3VzZWRBcmVhIiwidXBkYXRlSGlzdG9yeSIsInpvb21JbkJ1dHRvbiIsImhhc19kZXZpY2UiLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsInNyYyIsInpvb21pbiIsImFsdCIsIkNhcmRDb250YWluZXIiLCJyZWYiLCJDYXJkIiwiY2xhc3NOYW1lIiwiY29uY2F0Iiwic3R5bGUiLCJib3JkZXIiLCJib3JkZXJSYWRpdXMiLCJiYWNrZ3JvdW5kQ29sb3IiLCJ0aGVtZSIsIldXVFBNYXAiLCJjYXJkIiwiYmciLCJib3JkZXJMZWZ0Iiwic2NvcmVUb0NvbG9yIiwiQ29udGVudCIsIlJvdyIsIkNvbCIsIkFzc2Vzc21lbnRJY29uIiwiaXNBc3Nlc3NtZW50IiwiT3ZlcmxheVRyaWdnZXIiLCJvdmVybGF5IiwiVG9vbHRpcCIsInBsYWNlbWVudCIsImdyb3VwIiwic2VjdG9yX25hbWUiLCJ3aWR0aCIsImhlaWdodCIsInBhZGRpbmdMZWZ0IiwibWlzc2luZ0ljb24iLCJpY29uc0tleVZhbHVlIiwic2VjdG9yX2ljb25fbmFtZSIsImNhbWVsQ2FzZSIsIlBvaW50TmFtZSIsIkRlbGltaXRlciIsIldhdGVyRGlzY2hhcmdlIiwic291cmNlIiwiU2V2ZXJpdHlCYWRnZSIsImV4cG9ydHMiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsInNwYW4iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvRGFzaGJvYXJkTWFwL0ZhY3RvcnlDYXJkLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICcuLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgc2NvcmVUb0NvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL3Njb3JlVG9EYXRhJztcbmltcG9ydCB7IENhcmQsIENvbCwgUm93IH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHsgQ2FyZENvbnRhaW5lciwgc2VuZEFuYWx5dGljc0V2ZW50LCB1cGRhdGVIaXN0b3J5IH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgaWNvbnNLZXlWYWx1ZSBmcm9tICdzcmMvY29tcG9uZW50cy9TZWN0b3Ivc2VjdG9ySWNvbnMnO1xuaW1wb3J0IHsgU2V2ZXJpdHlCYWRnZSB9IGZyb20gJy4vU2V2ZXJpdHlCYWRnZSc7XG5pbXBvcnQgbWlzc2luZ0ljb24gZnJvbSAnc3JjL2NvbXBvbmVudHMvU2VjdG9yL3N2Z3MvTWlzc2luZy5zdmcnO1xuaW1wb3J0IHsgY2FtZWxDYXNlIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IFdhdGVyRGlzY2hhcmdlIH0gZnJvbSAnLi9XYXRlckRpc2NoYXJnZSc7XG5pbXBvcnQgeyBPdmVybGF5VHJpZ2dlciwgVG9vbHRpcCB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBBc3Nlc3NtZW50SWNvbiB9IGZyb20gJy4vQXNzZXNzbWVudEljb24nO1xuaW1wb3J0IHpvb21pbiBmcm9tICdzcmMvYXNzZXRzL2ljb25zL3pvb20taW4uc3ZnJztcbmltcG9ydCB7IHNldEZvY3VzZWRBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL1dXVFBEYXNoYm9hcmQvV1dUUERhc2hib2FyZFNsaWNlJztcbmltcG9ydCB7IHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgb2JqZWN0OiBhbnk7XG4gIG1hcFJlZjogYW55O1xuICBvbkNsaWNrOiBhbnk7XG4gIHNlbGVjdGVkOiBib29sZWFuO1xuICBpdGVtUmVmPzogUmVhY3QuUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50Pjtcbn07XG5cbmNvbnN0IGZvY3VzTWFwID0gKG9iamVjdCwgbWFwKSA9PiB7XG4gIGxldCBsYXRsbmdzID0gW107XG5cbiAgaWYgKG9iamVjdC5zaGFwZV9kYXRhICE9PSB1bmRlZmluZWQpIHtcbiAgICBvYmplY3Quc2hhcGVfZGF0YS5mb3JFYWNoKChsYXRsbmcpID0+IHtcbiAgICAgIGxhdGxuZ3MucHVzaChsYXRsbmcpO1xuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIGlmIChvYmplY3Quc3ViX2FyZWFzICE9PSB1bmRlZmluZWQgJiYgb2JqZWN0LnN1Yl9hcmVhcy5sZW5ndGggPiAwKSB7XG4gICAgICBvYmplY3Quc3ViX2FyZWFzLmZvckVhY2goKHN1Yl9hcmVhKSA9PiB7XG4gICAgICAgIHN1Yl9hcmVhLnNoYXBlX2RhdGEuZm9yRWFjaCgobGF0bG5nKSA9PiB7XG4gICAgICAgICAgbGF0bG5ncy5wdXNoKGxhdGxuZyk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxhdGxuZ3MucHVzaChbb2JqZWN0LmxhdGl0dWRlLCBvYmplY3QubG9uZ2l0dWRlXSk7XG4gICAgfVxuICB9XG4gIG1hcC5maXRCb3VuZHMobGF0bG5ncyk7XG59O1xuXG5leHBvcnQgY29uc3QgRmFjdG9yeUNhcmQ6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBvYmplY3QsIG9uQ2xpY2ssIHNlbGVjdGVkLCBpdGVtUmVmIH0gPSBwcm9wcztcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuXG4gIGNvbnN0IGNsaWNrSGFuZGxlciA9IChhcmdzOiBJUHJvcHMpID0+IHtcbiAgICBjb25zdCB7IG9iamVjdCwgbWFwUmVmIH0gPSBhcmdzO1xuICAgIGZvY3VzTWFwKG9iamVjdCwgbWFwUmVmKTtcbiAgICBzZW5kQW5hbHl0aWNzRXZlbnQoJ01hcCB2aWV3IC0gRmFjdG9yeSBjbGlja2VkJywgJ2xlZnQgcGFuZWwnLCB7XG4gICAgICBwb2ludF9pZDogb2JqZWN0LmlkLFxuICAgICAgcG9pbnRfbmFtZTogb2JqZWN0Lm5hbWUsXG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgZ2V0U2NvcmUgPSAob2JqZWN0KSA9PiB7XG4gICAgcmV0dXJuIG9iamVjdD8uc2NvcmUgPyBvYmplY3Q/LnNjb3JlIDogMDtcbiAgfTtcblxuICBjb25zdCB6b29tSW4gPSAoZSkgPT4ge1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgZGlzcGF0Y2goc2V0Rm9jdXNlZEFyZWEob2JqZWN0KSk7XG4gICAgdXBkYXRlSGlzdG9yeShvYmplY3QsIGhpc3RvcnkpO1xuICB9O1xuXG4gIGNvbnN0IHpvb21JbkJ1dHRvbiA9IG9iamVjdC5oYXNfZGV2aWNlID09PSB0cnVlICYmIChcbiAgICA8aW1nIHNyYz17em9vbWlufSBhbHQ9XCJcIiBvbkNsaWNrPXt6b29tSW59IC8+XG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8Q2FyZENvbnRhaW5lclxuICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICBvbkNsaWNrKG9iamVjdCk7XG4gICAgICAgIGNsaWNrSGFuZGxlcihwcm9wcyk7XG4gICAgICB9fVxuICAgICAgcmVmPXtpdGVtUmVmfVxuICAgID5cbiAgICAgIDxDYXJkXG4gICAgICAgIGNsYXNzTmFtZT17YG0tMyBwLTMgbGlzdEl0ZW1DYXJkIFxuICAgICAgICAgICR7c2VsZWN0ZWQgPyAnYWN0aXZlQ2FyZCcgOiAnbm9uZUFjdGl2ZUNhcmQnfWB9XG4gICAgICAgIGlkPXtvYmplY3QuaWR9XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgYm9yZGVyOiAnMXB4IHNvbGlkIHJnYmEoMCwwLDAsMCknLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogJy4zZW0nLFxuICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUuV1dUUE1hcC5jYXJkLmJnLFxuICAgICAgICAgIGJvcmRlckxlZnQ6IGAzcHggc29saWQgJHtzY29yZVRvQ29sb3IoZ2V0U2NvcmUob2JqZWN0KSl9YCxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPENvbnRlbnQgY2xhc3NOYW1lPVwicHgtMlwiPlxuICAgICAgICAgIDxSb3cgY2xhc3NOYW1lPVwiYWxpZ24taXRlbXMtc3RhcnQganVzdGlmeS1jb250ZW50LWJldHdlZW4gcGItMVwiPlxuICAgICAgICAgICAgPENvbD5cbiAgICAgICAgICAgICAgPEFzc2Vzc21lbnRJY29uIGlzQXNzZXNzbWVudD17IW9iamVjdC5oYXNfZGV2aWNlfSAvPlxuICAgICAgICAgICAgICA8T3ZlcmxheVRyaWdnZXJcbiAgICAgICAgICAgICAgICBvdmVybGF5PXtcbiAgICAgICAgICAgICAgICAgIDxUb29sdGlwIGlkPVwic2VjdG9yLW5hbWUtdG9vbHRpcFwiIHBsYWNlbWVudD1cImF1dG9cIj5cbiAgICAgICAgICAgICAgICAgICAge29iamVjdC5ncm91cC5zZWN0b3JfbmFtZX1cbiAgICAgICAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogJzM2cHgnLFxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICczNnB4JyxcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZ0xlZnQ6ICcxMHB4JyxcbiAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICBhbHQ9e21pc3NpbmdJY29ufVxuICAgICAgICAgICAgICAgICAgc3JjPXtcbiAgICAgICAgICAgICAgICAgICAgaWNvbnNLZXlWYWx1ZVtvYmplY3QuZ3JvdXAuc2VjdG9yX2ljb25fbmFtZV0gfHxcbiAgICAgICAgICAgICAgICAgICAgaWNvbnNLZXlWYWx1ZVtjYW1lbENhc2Uob2JqZWN0Lmdyb3VwLnNlY3Rvcl9pY29uX25hbWUpXSB8fFxuICAgICAgICAgICAgICAgICAgICBtaXNzaW5nSWNvblxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvT3ZlcmxheVRyaWdnZXI+XG4gICAgICAgICAgICAgIDxQb2ludE5hbWUgY2xhc3NOYW1lPVwicHgtMlwiPntvYmplY3QubmFtZX08L1BvaW50TmFtZT5cbiAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAge3pvb21JbkJ1dHRvbn1cbiAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICA8RGVsaW1pdGVyIC8+XG4gICAgICAgICAgPFJvdyBjbGFzc05hbWU9XCJhbGlnbi1pdGVtcy1zdGFydCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicGItMSBwdC0xIHB4LTFcIj5cbiAgICAgICAgICAgICAgPFdhdGVyRGlzY2hhcmdlIHNvdXJjZT17b2JqZWN0Lmdyb3VwfSAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8Q29sIGNsYXNzTmFtZT1cInB4LTEgZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmRcIj5cbiAgICAgICAgICAgICAgPFNldmVyaXR5QmFkZ2UgcHJvcHM9e29iamVjdH0gLz5cbiAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgIDwvUm93PlxuICAgICAgICA8L0NvbnRlbnQ+XG4gICAgICA8L0NhcmQ+XG4gICAgPC9DYXJkQ29udGFpbmVyPlxuICApO1xufTtcblxuY29uc3QgQ29udGVudCA9IHN0eWxlZC5kaXZgYDtcblxuY29uc3QgUG9pbnROYW1lID0gc3R5bGVkLnNwYW5gXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5gO1xuXG5jb25zdCBEZWxpbWl0ZXIgPSBzdHlsZWQuZGl2YFxuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgbWFyZ2luOiAxMHB4IC0xMHB4IDEwcHggMDtcbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsWUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsZUFBQSxHQUFBSCxPQUFBO0FBRUEsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssWUFBQSxHQUFBTixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU0sY0FBQSxHQUFBTixPQUFBO0FBQWdELElBQUFPLFFBQUEsR0FBQVIsc0JBQUEsQ0FBQUMsT0FBQTtBQUVo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
137
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl90aGVtZSIsIl9zY29yZVRvRGF0YSIsIl9yZWFjdEJvb3RzdHJhcCIsIl91dGlscyIsIl9zZWN0b3JJY29ucyIsIl9TZXZlcml0eUJhZGdlIiwiX01pc3NpbmciLCJfbG9kYXNoIiwiX1dhdGVyRGlzY2hhcmdlIiwiX0Fzc2Vzc21lbnRJY29uIiwiX3pvb21JbiIsIl9XV1RQRGFzaGJvYXJkU2xpY2UiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdFJvdXRlckRvbSIsImZvY3VzTWFwIiwib2JqZWN0IiwibWFwIiwibGF0bG5ncyIsInNoYXBlX2RhdGEiLCJ1bmRlZmluZWQiLCJmb3JFYWNoIiwibGF0bG5nIiwicHVzaCIsInN1Yl9hcmVhcyIsImxlbmd0aCIsInN1Yl9hcmVhIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJmaXRCb3VuZHMiLCJGYWN0b3J5Q2FyZCIsInByb3BzIiwib25DbGljayIsInNlbGVjdGVkIiwiaXRlbVJlZiIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJoaXN0b3J5IiwidXNlSGlzdG9yeSIsImNsaWNrSGFuZGxlciIsImFyZ3MiLCJtYXBSZWYiLCJzZW5kQW5hbHl0aWNzRXZlbnQiLCJwb2ludF9pZCIsImlkIiwicG9pbnRfbmFtZSIsIm5hbWUiLCJnZXRTY29yZSIsInNjb3JlIiwiem9vbUluIiwiZSIsInN0b3BQcm9wYWdhdGlvbiIsInNldEZvY3VzZWRBcmVhIiwidXBkYXRlSGlzdG9yeSIsInpvb21JbkJ1dHRvbiIsImhhc19kZXZpY2UiLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsInNyYyIsInpvb21pbiIsImFsdCIsIkNhcmRDb250YWluZXIiLCJyZWYiLCJDYXJkIiwiY2xhc3NOYW1lIiwiY29uY2F0Iiwic3R5bGUiLCJib3JkZXIiLCJib3JkZXJSYWRpdXMiLCJiYWNrZ3JvdW5kQ29sb3IiLCJ0aGVtZSIsIldXVFBNYXAiLCJjYXJkIiwiYmciLCJib3JkZXJMZWZ0Iiwic2NvcmVUb0NvbG9yIiwiQ29udGVudCIsIlJvdyIsIkNvbCIsIkFzc2Vzc21lbnRJY29uIiwiaXNBc3Nlc3NtZW50IiwiT3ZlcmxheVRyaWdnZXIiLCJvdmVybGF5IiwiVG9vbHRpcCIsInBsYWNlbWVudCIsImdyb3VwIiwic2VjdG9yX25hbWUiLCJ3aWR0aCIsImhlaWdodCIsInBhZGRpbmdMZWZ0IiwibWlzc2luZ0ljb24iLCJpY29uc0tleVZhbHVlIiwic2VjdG9yX2ljb25fbmFtZSIsImNhbWVsQ2FzZSIsIlBvaW50TmFtZSIsIkRlbGltaXRlciIsIldhdGVyRGlzY2hhcmdlIiwic291cmNlIiwiU2V2ZXJpdHlCYWRnZSIsImV4cG9ydHMiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsInNwYW4iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvRGFzaGJvYXJkTWFwL0ZhY3RvcnlDYXJkLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICcuLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgc2NvcmVUb0NvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL3Njb3JlVG9EYXRhJztcbmltcG9ydCB7IENhcmQsIENvbCwgUm93IH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHsgQ2FyZENvbnRhaW5lciwgc2VuZEFuYWx5dGljc0V2ZW50LCB1cGRhdGVIaXN0b3J5IH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgaWNvbnNLZXlWYWx1ZSBmcm9tICdzcmMvY29tcG9uZW50cy9TZWN0b3Ivc2VjdG9ySWNvbnMnO1xuaW1wb3J0IHsgU2V2ZXJpdHlCYWRnZSB9IGZyb20gJy4vU2V2ZXJpdHlCYWRnZSc7XG5pbXBvcnQgbWlzc2luZ0ljb24gZnJvbSAnc3JjL2NvbXBvbmVudHMvU2VjdG9yL3N2Z3MvTWlzc2luZy5zdmcnO1xuaW1wb3J0IHsgY2FtZWxDYXNlIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IFdhdGVyRGlzY2hhcmdlIH0gZnJvbSAnLi9XYXRlckRpc2NoYXJnZSc7XG5pbXBvcnQgeyBPdmVybGF5VHJpZ2dlciwgVG9vbHRpcCB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBBc3Nlc3NtZW50SWNvbiB9IGZyb20gJy4vQXNzZXNzbWVudEljb24nO1xuaW1wb3J0IHpvb21pbiBmcm9tICdzcmMvYXNzZXRzL2ljb25zL3pvb20taW4uc3ZnJztcbmltcG9ydCB7IHNldEZvY3VzZWRBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL1dXVFBEYXNoYm9hcmQvV1dUUERhc2hib2FyZFNsaWNlJztcbmltcG9ydCB7IHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgb2JqZWN0OiBhbnk7XG4gIG1hcFJlZjogYW55O1xuICBvbkNsaWNrOiBhbnk7XG4gIHNlbGVjdGVkOiBib29sZWFuO1xuICBpdGVtUmVmPzogUmVhY3QuUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50Pjtcbn07XG5cbmNvbnN0IGZvY3VzTWFwID0gKG9iamVjdCwgbWFwKSA9PiB7XG4gIGxldCBsYXRsbmdzID0gW107XG5cbiAgaWYgKG9iamVjdC5zaGFwZV9kYXRhICE9PSB1bmRlZmluZWQpIHtcbiAgICBvYmplY3Quc2hhcGVfZGF0YS5mb3JFYWNoKChsYXRsbmcpID0+IHtcbiAgICAgIGxhdGxuZ3MucHVzaChsYXRsbmcpO1xuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIGlmIChvYmplY3Quc3ViX2FyZWFzICE9PSB1bmRlZmluZWQgJiYgb2JqZWN0LnN1Yl9hcmVhcy5sZW5ndGggPiAwKSB7XG4gICAgICBvYmplY3Quc3ViX2FyZWFzLmZvckVhY2goKHN1Yl9hcmVhKSA9PiB7XG4gICAgICAgIHN1Yl9hcmVhLnNoYXBlX2RhdGEuZm9yRWFjaCgobGF0bG5nKSA9PiB7XG4gICAgICAgICAgbGF0bG5ncy5wdXNoKGxhdGxuZyk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxhdGxuZ3MucHVzaChbb2JqZWN0LmxhdGl0dWRlLCBvYmplY3QubG9uZ2l0dWRlXSk7XG4gICAgfVxuICB9XG4gIG1hcC5maXRCb3VuZHMobGF0bG5ncyk7XG59O1xuXG5leHBvcnQgY29uc3QgRmFjdG9yeUNhcmQ6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBvYmplY3QsIG9uQ2xpY2ssIHNlbGVjdGVkLCBpdGVtUmVmIH0gPSBwcm9wcztcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuXG4gIGNvbnN0IGNsaWNrSGFuZGxlciA9IChhcmdzOiBJUHJvcHMpID0+IHtcbiAgICBjb25zdCB7IG9iamVjdCwgbWFwUmVmIH0gPSBhcmdzO1xuICAgIGZvY3VzTWFwKG9iamVjdCwgbWFwUmVmKTtcbiAgICBzZW5kQW5hbHl0aWNzRXZlbnQoJ01hcCB2aWV3IC0gRmFjdG9yeSBjbGlja2VkJywgJ2xlZnQgcGFuZWwnLCB7XG4gICAgICBwb2ludF9pZDogb2JqZWN0LmlkLFxuICAgICAgcG9pbnRfbmFtZTogb2JqZWN0Lm5hbWUsXG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgZ2V0U2NvcmUgPSAob2JqZWN0KSA9PiB7XG4gICAgcmV0dXJuIG9iamVjdD8uc2NvcmUgPyBvYmplY3Q/LnNjb3JlIDogMDtcbiAgfTtcblxuICBjb25zdCB6b29tSW4gPSAoZSkgPT4ge1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgZGlzcGF0Y2goc2V0Rm9jdXNlZEFyZWEob2JqZWN0KSk7XG4gICAgdXBkYXRlSGlzdG9yeShvYmplY3QsIGhpc3RvcnkpO1xuICB9O1xuXG4gIGNvbnN0IHpvb21JbkJ1dHRvbiA9IG9iamVjdC5oYXNfZGV2aWNlID09PSB0cnVlICYmIChcbiAgICA8aW1nIHNyYz17em9vbWlufSBhbHQ9XCJcIiBvbkNsaWNrPXt6b29tSW59IC8+XG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8Q2FyZENvbnRhaW5lclxuICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICBvbkNsaWNrKG9iamVjdCk7XG4gICAgICAgIGNsaWNrSGFuZGxlcihwcm9wcyk7XG4gICAgICB9fVxuICAgICAgcmVmPXtpdGVtUmVmfVxuICAgID5cbiAgICAgIDxDYXJkXG4gICAgICAgIGNsYXNzTmFtZT17YG0tMyBwLTMgbGlzdEl0ZW1DYXJkIFxuICAgICAgICAgICR7c2VsZWN0ZWQgPyAnYWN0aXZlQ2FyZCcgOiAnbm9uZUFjdGl2ZUNhcmQnfWB9XG4gICAgICAgIGlkPXtvYmplY3QuaWR9XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgYm9yZGVyOiAnMXB4IHNvbGlkIHJnYmEoMCwwLDAsMCknLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogJy4zZW0nLFxuICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUuV1dUUE1hcC5jYXJkLmJnLFxuICAgICAgICAgIGJvcmRlckxlZnQ6IGAzcHggc29saWQgJHtzY29yZVRvQ29sb3IoZ2V0U2NvcmUob2JqZWN0KSl9YCxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPENvbnRlbnQgY2xhc3NOYW1lPVwicHgtMlwiPlxuICAgICAgICAgIDxSb3cgY2xhc3NOYW1lPVwiYWxpZ24taXRlbXMtc3RhcnQganVzdGlmeS1jb250ZW50LWJldHdlZW4gcGItMVwiPlxuICAgICAgICAgICAgPENvbD5cbiAgICAgICAgICAgICAgPEFzc2Vzc21lbnRJY29uIGlzQXNzZXNzbWVudD17IW9iamVjdC5oYXNfZGV2aWNlfSAvPlxuICAgICAgICAgICAgICA8T3ZlcmxheVRyaWdnZXJcbiAgICAgICAgICAgICAgICBvdmVybGF5PXtcbiAgICAgICAgICAgICAgICAgIDxUb29sdGlwIGlkPVwic2VjdG9yLW5hbWUtdG9vbHRpcFwiIHBsYWNlbWVudD1cImF1dG9cIj5cbiAgICAgICAgICAgICAgICAgICAge29iamVjdC5ncm91cC5zZWN0b3JfbmFtZX1cbiAgICAgICAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogJzM2cHgnLFxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICczNnB4JyxcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZ0xlZnQ6ICcxMHB4JyxcbiAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICBhbHQ9e21pc3NpbmdJY29ufVxuICAgICAgICAgICAgICAgICAgc3JjPXtcbiAgICAgICAgICAgICAgICAgICAgaWNvbnNLZXlWYWx1ZVtvYmplY3QuZ3JvdXAuc2VjdG9yX2ljb25fbmFtZV0gfHxcbiAgICAgICAgICAgICAgICAgICAgaWNvbnNLZXlWYWx1ZVtjYW1lbENhc2Uob2JqZWN0Lmdyb3VwLnNlY3Rvcl9pY29uX25hbWUpXSB8fFxuICAgICAgICAgICAgICAgICAgICBtaXNzaW5nSWNvblxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvT3ZlcmxheVRyaWdnZXI+XG4gICAgICAgICAgICAgIDxQb2ludE5hbWUgY2xhc3NOYW1lPVwicHgtMlwiPntvYmplY3QubmFtZX08L1BvaW50TmFtZT5cbiAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAge3pvb21JbkJ1dHRvbn1cbiAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICA8RGVsaW1pdGVyIC8+XG4gICAgICAgICAgPFJvdyBjbGFzc05hbWU9XCJhbGlnbi1pdGVtcy1zdGFydCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicGItMSBwdC0xIHB4LTFcIj5cbiAgICAgICAgICAgICAgPFdhdGVyRGlzY2hhcmdlIHNvdXJjZT17b2JqZWN0Lmdyb3VwfSAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8Q29sIGNsYXNzTmFtZT1cInB4LTEgZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmRcIj5cbiAgICAgICAgICAgICAgPFNldmVyaXR5QmFkZ2UgcHJvcHM9e29iamVjdH0gLz5cbiAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgIDwvUm93PlxuICAgICAgICA8L0NvbnRlbnQ+XG4gICAgICA8L0NhcmQ+XG4gICAgPC9DYXJkQ29udGFpbmVyPlxuICApO1xufTtcblxuY29uc3QgQ29udGVudCA9IHN0eWxlZC5kaXZgYDtcblxuY29uc3QgUG9pbnROYW1lID0gc3R5bGVkLnNwYW5gXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5gO1xuXG5jb25zdCBEZWxpbWl0ZXIgPSBzdHlsZWQuZGl2YFxuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgbWFyZ2luOiAxMHB4IC0xMHB4IDEwcHggMDtcbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsWUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsZUFBQSxHQUFBSCxPQUFBO0FBRUEsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssWUFBQSxHQUFBTixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU0sY0FBQSxHQUFBTixPQUFBO0FBQWdELElBQUFPLFFBQUEsR0FBQVIsc0JBQUEsQ0FBQUMsT0FBQTtBQUVo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
@@ -6,9 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.options = void 0;
8
8
  var _highcharts = _interopRequireDefault(require("highcharts"));
9
- var options = function options(_ref) {
10
- var _ref$data = _ref.data,
11
- data = _ref$data === void 0 ? [] : _ref$data;
9
+ const options = _ref => {
10
+ let {
11
+ data = []
12
+ } = _ref;
12
13
  return {
13
14
  chart: {
14
15
  type: 'gauge',
@@ -94,4 +95,4 @@ var options = function options(_ref) {
94
95
  };
95
96
  };
96
97
  exports.options = options;
97
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaGlnaGNoYXJ0cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwib3B0aW9ucyIsIl9yZWYiLCJfcmVmJGRhdGEiLCJkYXRhIiwiY2hhcnQiLCJ0eXBlIiwicGxvdEJhY2tncm91bmRDb2xvciIsInBsb3RCYWNrZ3JvdW5kSW1hZ2UiLCJwbG90Qm9yZGVyV2lkdGgiLCJwbG90U2hhZG93IiwiaGVpZ2h0Iiwid2lkdGgiLCJ0aXRsZSIsInRleHQiLCJwYW5lIiwic3RhcnRBbmdsZSIsImVuZEFuZ2xlIiwiY2VudGVyIiwic2l6ZSIsInlBeGlzIiwibWluIiwibWF4IiwidGlja1BpeGVsSW50ZXJ2YWwiLCJ0aWNrUG9zaXRpb24iLCJ0aWNrQ29sb3IiLCJIaWdoY2hhcnRzIiwiZGVmYXVsdE9wdGlvbnMiLCJiYWNrZ3JvdW5kQ29sb3IiLCJ0aWNrTGVuZ3RoIiwidGlja1dpZHRoIiwibWlub3JUaWNrSW50ZXJ2YWwiLCJsYWJlbHMiLCJkaXN0YW5jZSIsInN0eWxlIiwiZm9udFNpemUiLCJsaW5lV2lkdGgiLCJwbG90QmFuZHMiLCJmcm9tIiwidG8iLCJjb2xvciIsInRoaWNrbmVzcyIsInNlcmllcyIsIm5hbWUiLCJ0b29sdGlwIiwidmFsdWVTdWZmaXgiLCJkYXRhTGFiZWxzIiwiZm9ybWF0IiwiYm9yZGVyV2lkdGgiLCJkaWFsIiwicmFkaXVzIiwiYmFzZVdpZHRoIiwiYmFzZUxlbmd0aCIsInJlYXJMZW5ndGgiLCJwaXZvdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvRGFzaGJvYXJkTWFwL0hpZ2hjaGFydHNPcHRpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBIaWdoY2hhcnRzIGZyb20gJ2hpZ2hjaGFydHMnO1xuXG5leHBvcnQgY29uc3Qgb3B0aW9ucyA9ICh7IGRhdGEgPSBbXSB9KTogSGlnaGNoYXJ0cy5PcHRpb25zID0+IHtcbiAgcmV0dXJuIHtcbiAgICBjaGFydDoge1xuICAgICAgdHlwZTogJ2dhdWdlJyxcbiAgICAgIHBsb3RCYWNrZ3JvdW5kQ29sb3I6IG51bGwsXG4gICAgICBwbG90QmFja2dyb3VuZEltYWdlOiBudWxsLFxuICAgICAgcGxvdEJvcmRlcldpZHRoOiAwLFxuICAgICAgcGxvdFNoYWRvdzogZmFsc2UsXG4gICAgICBoZWlnaHQ6ICcyMDBweCcsXG4gICAgICB3aWR0aDogJzIwMHB4JyxcbiAgICB9LFxuXG4gICAgdGl0bGU6IHtcbiAgICAgIHRleHQ6ICdTcGVlZG9tZXRlcicsXG4gICAgfSxcblxuICAgIHBhbmU6IHtcbiAgICAgIHN0YXJ0QW5nbGU6IC05MCxcbiAgICAgIGVuZEFuZ2xlOiA4OS45LFxuICAgICAgY2VudGVyOiBbJzUwJScsICc3NSUnXSxcbiAgICAgIHNpemU6ICc4MCUnLFxuICAgIH0sXG5cbiAgICAvLyB0aGUgdmFsdWUgYXhpc1xuICAgIHlBeGlzOiB7XG4gICAgICBtaW46IDAsXG4gICAgICBtYXg6IDIwMCxcbiAgICAgIHRpY2tQaXhlbEludGVydmFsOiA3MixcbiAgICAgIHRpY2tQb3NpdGlvbjogJ2luc2lkZScsXG4gICAgICB0aWNrQ29sb3I6IEhpZ2hjaGFydHMuZGVmYXVsdE9wdGlvbnMuY2hhcnQuYmFja2dyb3VuZENvbG9yIHx8ICcjRkZGRkZGJyxcbiAgICAgIHRpY2tMZW5ndGg6IDIwLFxuICAgICAgdGlja1dpZHRoOiAyLFxuICAgICAgbWlub3JUaWNrSW50ZXJ2YWw6IG51bGwsXG4gICAgICBsYWJlbHM6IHtcbiAgICAgICAgZGlzdGFuY2U6IDIwLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgIGZvbnRTaXplOiAnMTRweCcsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgbGluZVdpZHRoOiAwLFxuICAgICAgcGxvdEJhbmRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tOiAwLFxuICAgICAgICAgIHRvOiAxMjAsXG4gICAgICAgICAgY29sb3I6ICcjNTVCRjNCJywgLy8gZ3JlZW5cbiAgICAgICAgICB0aGlja25lc3M6IDIwLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgZnJvbTogMTIwLFxuICAgICAgICAgIHRvOiAxNjAsXG4gICAgICAgICAgY29sb3I6ICcjRERERjBEJywgLy8geWVsbG93XG4gICAgICAgICAgdGhpY2tuZXNzOiAyMCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGZyb206IDE2MCxcbiAgICAgICAgICB0bzogMjAwLFxuICAgICAgICAgIGNvbG9yOiAnI0RGNTM1MycsIC8vIHJlZFxuICAgICAgICAgIHRoaWNrbmVzczogMjAsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG5cbiAgICBzZXJpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ1NwZWVkJyxcbiAgICAgICAgZGF0YTogWzgwXSxcbiAgICAgICAgdG9vbHRpcDoge1xuICAgICAgICAgIHZhbHVlU3VmZml4OiAnIGttL2gnLFxuICAgICAgICB9LFxuICAgICAgICBkYXRhTGFiZWxzOiB7XG4gICAgICAgICAgZm9ybWF0OiAne3l9IGttL2gnLFxuICAgICAgICAgIGJvcmRlcldpZHRoOiAwLFxuICAgICAgICAgIGNvbG9yOlxuICAgICAgICAgICAgKEhpZ2hjaGFydHMuZGVmYXVsdE9wdGlvbnMudGl0bGUgJiZcbiAgICAgICAgICAgICAgSGlnaGNoYXJ0cy5kZWZhdWx0T3B0aW9ucy50aXRsZS5zdHlsZSAmJlxuICAgICAgICAgICAgICBIaWdoY2hhcnRzLmRlZmF1bHRPcHRpb25zLnRpdGxlLnN0eWxlLmNvbG9yKSB8fFxuICAgICAgICAgICAgJyMzMzMzMzMnLFxuICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBmb250U2l6ZTogJzE2cHgnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRpYWw6IHtcbiAgICAgICAgICByYWRpdXM6ICc4MCUnLFxuICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJ2dyYXknLFxuICAgICAgICAgIGJhc2VXaWR0aDogMTIsXG4gICAgICAgICAgYmFzZUxlbmd0aDogJzAlJyxcbiAgICAgICAgICByZWFyTGVuZ3RoOiAnMCUnLFxuICAgICAgICB9LFxuICAgICAgICBwaXZvdDoge1xuICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJ2dyYXknLFxuICAgICAgICAgIHJhZGl1czogNixcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxXQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFFTyxJQUFNQyxPQUFPLEdBQUcsU0FBVkEsT0FBT0EsQ0FBQUMsSUFBQSxFQUEwQztFQUFBLElBQUFDLFNBQUEsR0FBQUQsSUFBQSxDQUFwQ0UsSUFBSTtJQUFKQSxJQUFJLEdBQUFELFNBQUEsY0FBRyxFQUFFLEdBQUFBLFNBQUE7RUFDakMsT0FBTztJQUNMRSxLQUFLLEVBQUU7TUFDTEMsSUFBSSxFQUFFLE9BQU87TUFDYkMsbUJBQW1CLEVBQUUsSUFBSTtNQUN6QkMsbUJBQW1CLEVBQUUsSUFBSTtNQUN6QkMsZUFBZSxFQUFFLENBQUM7TUFDbEJDLFVBQVUsRUFBRSxLQUFLO01BQ2pCQyxNQUFNLEVBQUUsT0FBTztNQUNmQyxLQUFLLEVBQUU7SUFDVCxDQUFDO0lBRURDLEtBQUssRUFBRTtNQUNMQyxJQUFJLEVBQUU7SUFDUixDQUFDO0lBRURDLElBQUksRUFBRTtNQUNKQyxVQUFVLEVBQUUsQ0FBQyxFQUFFO01BQ2ZDLFFBQVEsRUFBRSxJQUFJO01BQ2RDLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUM7TUFDdEJDLElBQUksRUFBRTtJQUNSLENBQUM7SUFFRDtJQUNBQyxLQUFLLEVBQUU7TUFDTEMsR0FBRyxFQUFFLENBQUM7TUFDTkMsR0FBRyxFQUFFLEdBQUc7TUFDUkMsaUJBQWlCLEVBQUUsRUFBRTtNQUNyQkMsWUFBWSxFQUFFLFFBQVE7TUFDdEJDLFNBQVMsRUFBRUMsbUJBQVUsQ0FBQ0MsY0FBYyxDQUFDdEIsS0FBSyxDQUFDdUIsZUFBZSxJQUFJLFNBQVM7TUFDdkVDLFVBQVUsRUFBRSxFQUFFO01BQ2RDLFNBQVMsRUFBRSxDQUFDO01BQ1pDLGlCQUFpQixFQUFFLElBQUk7TUFDdkJDLE1BQU0sRUFBRTtRQUNOQyxRQUFRLEVBQUUsRUFBRTtRQUNaQyxLQUFLLEVBQUU7VUFDTEMsUUFBUSxFQUFFO1FBQ1o7TUFDRixDQUFDO01BQ0RDLFNBQVMsRUFBRSxDQUFDO01BQ1pDLFNBQVMsRUFBRSxDQUNUO1FBQ0VDLElBQUksRUFBRSxDQUFDO1FBQ1BDLEVBQUUsRUFBRSxHQUFHO1FBQ1BDLEtBQUssRUFBRSxTQUFTO1FBQUU7UUFDbEJDLFNBQVMsRUFBRTtNQUNiLENBQUMsRUFDRDtRQUNFSCxJQUFJLEVBQUUsR0FBRztRQUNUQyxFQUFFLEVBQUUsR0FBRztRQUNQQyxLQUFLLEVBQUUsU0FBUztRQUFFO1FBQ2xCQyxTQUFTLEVBQUU7TUFDYixDQUFDLEVBQ0Q7UUFDRUgsSUFBSSxFQUFFLEdBQUc7UUFDVEMsRUFBRSxFQUFFLEdBQUc7UUFDUEMsS0FBSyxFQUFFLFNBQVM7UUFBRTtRQUNsQkMsU0FBUyxFQUFFO01BQ2IsQ0FBQztJQUVMLENBQUM7SUFFREMsTUFBTSxFQUFFLENBQ047TUFDRUMsSUFBSSxFQUFFLE9BQU87TUFDYnZDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztNQUNWd0MsT0FBTyxFQUFFO1FBQ1BDLFdBQVcsRUFBRTtNQUNmLENBQUM7TUFDREMsVUFBVSxFQUFFO1FBQ1ZDLE1BQU0sRUFBRSxVQUFVO1FBQ2xCQyxXQUFXLEVBQUUsQ0FBQztRQUNkUixLQUFLLEVBQ0ZkLG1CQUFVLENBQUNDLGNBQWMsQ0FBQ2QsS0FBSyxJQUM5QmEsbUJBQVUsQ0FBQ0MsY0FBYyxDQUFDZCxLQUFLLENBQUNxQixLQUFLLElBQ3JDUixtQkFBVSxDQUFDQyxjQUFjLENBQUNkLEtBQUssQ0FBQ3FCLEtBQUssQ0FBQ00sS0FBSyxJQUM3QyxTQUFTO1FBQ1hOLEtBQUssRUFBRTtVQUNMQyxRQUFRLEVBQUU7UUFDWjtNQUNGLENBQUM7TUFDRGMsSUFBSSxFQUFFO1FBQ0pDLE1BQU0sRUFBRSxLQUFLO1FBQ2J0QixlQUFlLEVBQUUsTUFBTTtRQUN2QnVCLFNBQVMsRUFBRSxFQUFFO1FBQ2JDLFVBQVUsRUFBRSxJQUFJO1FBQ2hCQyxVQUFVLEVBQUU7TUFDZCxDQUFDO01BQ0RDLEtBQUssRUFBRTtRQUNMMUIsZUFBZSxFQUFFLE1BQU07UUFDdkJzQixNQUFNLEVBQUU7TUFDVjtJQUNGLENBQUM7RUFFTCxDQUFDO0FBQ0gsQ0FBQztBQUFDSyxPQUFBLENBQUF0RCxPQUFBLEdBQUFBLE9BQUEifQ==
98
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaGlnaGNoYXJ0cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwib3B0aW9ucyIsIl9yZWYiLCJkYXRhIiwiY2hhcnQiLCJ0eXBlIiwicGxvdEJhY2tncm91bmRDb2xvciIsInBsb3RCYWNrZ3JvdW5kSW1hZ2UiLCJwbG90Qm9yZGVyV2lkdGgiLCJwbG90U2hhZG93IiwiaGVpZ2h0Iiwid2lkdGgiLCJ0aXRsZSIsInRleHQiLCJwYW5lIiwic3RhcnRBbmdsZSIsImVuZEFuZ2xlIiwiY2VudGVyIiwic2l6ZSIsInlBeGlzIiwibWluIiwibWF4IiwidGlja1BpeGVsSW50ZXJ2YWwiLCJ0aWNrUG9zaXRpb24iLCJ0aWNrQ29sb3IiLCJIaWdoY2hhcnRzIiwiZGVmYXVsdE9wdGlvbnMiLCJiYWNrZ3JvdW5kQ29sb3IiLCJ0aWNrTGVuZ3RoIiwidGlja1dpZHRoIiwibWlub3JUaWNrSW50ZXJ2YWwiLCJsYWJlbHMiLCJkaXN0YW5jZSIsInN0eWxlIiwiZm9udFNpemUiLCJsaW5lV2lkdGgiLCJwbG90QmFuZHMiLCJmcm9tIiwidG8iLCJjb2xvciIsInRoaWNrbmVzcyIsInNlcmllcyIsIm5hbWUiLCJ0b29sdGlwIiwidmFsdWVTdWZmaXgiLCJkYXRhTGFiZWxzIiwiZm9ybWF0IiwiYm9yZGVyV2lkdGgiLCJkaWFsIiwicmFkaXVzIiwiYmFzZVdpZHRoIiwiYmFzZUxlbmd0aCIsInJlYXJMZW5ndGgiLCJwaXZvdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvRGFzaGJvYXJkTWFwL0hpZ2hjaGFydHNPcHRpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBIaWdoY2hhcnRzIGZyb20gJ2hpZ2hjaGFydHMnO1xuXG5leHBvcnQgY29uc3Qgb3B0aW9ucyA9ICh7IGRhdGEgPSBbXSB9KTogSGlnaGNoYXJ0cy5PcHRpb25zID0+IHtcbiAgcmV0dXJuIHtcbiAgICBjaGFydDoge1xuICAgICAgdHlwZTogJ2dhdWdlJyxcbiAgICAgIHBsb3RCYWNrZ3JvdW5kQ29sb3I6IG51bGwsXG4gICAgICBwbG90QmFja2dyb3VuZEltYWdlOiBudWxsLFxuICAgICAgcGxvdEJvcmRlcldpZHRoOiAwLFxuICAgICAgcGxvdFNoYWRvdzogZmFsc2UsXG4gICAgICBoZWlnaHQ6ICcyMDBweCcsXG4gICAgICB3aWR0aDogJzIwMHB4JyxcbiAgICB9LFxuXG4gICAgdGl0bGU6IHtcbiAgICAgIHRleHQ6ICdTcGVlZG9tZXRlcicsXG4gICAgfSxcblxuICAgIHBhbmU6IHtcbiAgICAgIHN0YXJ0QW5nbGU6IC05MCxcbiAgICAgIGVuZEFuZ2xlOiA4OS45LFxuICAgICAgY2VudGVyOiBbJzUwJScsICc3NSUnXSxcbiAgICAgIHNpemU6ICc4MCUnLFxuICAgIH0sXG5cbiAgICAvLyB0aGUgdmFsdWUgYXhpc1xuICAgIHlBeGlzOiB7XG4gICAgICBtaW46IDAsXG4gICAgICBtYXg6IDIwMCxcbiAgICAgIHRpY2tQaXhlbEludGVydmFsOiA3MixcbiAgICAgIHRpY2tQb3NpdGlvbjogJ2luc2lkZScsXG4gICAgICB0aWNrQ29sb3I6IEhpZ2hjaGFydHMuZGVmYXVsdE9wdGlvbnMuY2hhcnQuYmFja2dyb3VuZENvbG9yIHx8ICcjRkZGRkZGJyxcbiAgICAgIHRpY2tMZW5ndGg6IDIwLFxuICAgICAgdGlja1dpZHRoOiAyLFxuICAgICAgbWlub3JUaWNrSW50ZXJ2YWw6IG51bGwsXG4gICAgICBsYWJlbHM6IHtcbiAgICAgICAgZGlzdGFuY2U6IDIwLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgIGZvbnRTaXplOiAnMTRweCcsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgbGluZVdpZHRoOiAwLFxuICAgICAgcGxvdEJhbmRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tOiAwLFxuICAgICAgICAgIHRvOiAxMjAsXG4gICAgICAgICAgY29sb3I6ICcjNTVCRjNCJywgLy8gZ3JlZW5cbiAgICAgICAgICB0aGlja25lc3M6IDIwLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgZnJvbTogMTIwLFxuICAgICAgICAgIHRvOiAxNjAsXG4gICAgICAgICAgY29sb3I6ICcjRERERjBEJywgLy8geWVsbG93XG4gICAgICAgICAgdGhpY2tuZXNzOiAyMCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGZyb206IDE2MCxcbiAgICAgICAgICB0bzogMjAwLFxuICAgICAgICAgIGNvbG9yOiAnI0RGNTM1MycsIC8vIHJlZFxuICAgICAgICAgIHRoaWNrbmVzczogMjAsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG5cbiAgICBzZXJpZXM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ1NwZWVkJyxcbiAgICAgICAgZGF0YTogWzgwXSxcbiAgICAgICAgdG9vbHRpcDoge1xuICAgICAgICAgIHZhbHVlU3VmZml4OiAnIGttL2gnLFxuICAgICAgICB9LFxuICAgICAgICBkYXRhTGFiZWxzOiB7XG4gICAgICAgICAgZm9ybWF0OiAne3l9IGttL2gnLFxuICAgICAgICAgIGJvcmRlcldpZHRoOiAwLFxuICAgICAgICAgIGNvbG9yOlxuICAgICAgICAgICAgKEhpZ2hjaGFydHMuZGVmYXVsdE9wdGlvbnMudGl0bGUgJiZcbiAgICAgICAgICAgICAgSGlnaGNoYXJ0cy5kZWZhdWx0T3B0aW9ucy50aXRsZS5zdHlsZSAmJlxuICAgICAgICAgICAgICBIaWdoY2hhcnRzLmRlZmF1bHRPcHRpb25zLnRpdGxlLnN0eWxlLmNvbG9yKSB8fFxuICAgICAgICAgICAgJyMzMzMzMzMnLFxuICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICBmb250U2l6ZTogJzE2cHgnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGRpYWw6IHtcbiAgICAgICAgICByYWRpdXM6ICc4MCUnLFxuICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJ2dyYXknLFxuICAgICAgICAgIGJhc2VXaWR0aDogMTIsXG4gICAgICAgICAgYmFzZUxlbmd0aDogJzAlJyxcbiAgICAgICAgICByZWFyTGVuZ3RoOiAnMCUnLFxuICAgICAgICB9LFxuICAgICAgICBwaXZvdDoge1xuICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJ2dyYXknLFxuICAgICAgICAgIHJhZGl1czogNixcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxXQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFFTyxNQUFNQyxPQUFPLEdBQUdDLElBQUEsSUFBdUM7RUFBQSxJQUF0QztJQUFFQyxJQUFJLEdBQUc7RUFBRyxDQUFDLEdBQUFELElBQUE7RUFDbkMsT0FBTztJQUNMRSxLQUFLLEVBQUU7TUFDTEMsSUFBSSxFQUFFLE9BQU87TUFDYkMsbUJBQW1CLEVBQUUsSUFBSTtNQUN6QkMsbUJBQW1CLEVBQUUsSUFBSTtNQUN6QkMsZUFBZSxFQUFFLENBQUM7TUFDbEJDLFVBQVUsRUFBRSxLQUFLO01BQ2pCQyxNQUFNLEVBQUUsT0FBTztNQUNmQyxLQUFLLEVBQUU7SUFDVCxDQUFDO0lBRURDLEtBQUssRUFBRTtNQUNMQyxJQUFJLEVBQUU7SUFDUixDQUFDO0lBRURDLElBQUksRUFBRTtNQUNKQyxVQUFVLEVBQUUsQ0FBQyxFQUFFO01BQ2ZDLFFBQVEsRUFBRSxJQUFJO01BQ2RDLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUM7TUFDdEJDLElBQUksRUFBRTtJQUNSLENBQUM7SUFFRDtJQUNBQyxLQUFLLEVBQUU7TUFDTEMsR0FBRyxFQUFFLENBQUM7TUFDTkMsR0FBRyxFQUFFLEdBQUc7TUFDUkMsaUJBQWlCLEVBQUUsRUFBRTtNQUNyQkMsWUFBWSxFQUFFLFFBQVE7TUFDdEJDLFNBQVMsRUFBRUMsbUJBQVUsQ0FBQ0MsY0FBYyxDQUFDdEIsS0FBSyxDQUFDdUIsZUFBZSxJQUFJLFNBQVM7TUFDdkVDLFVBQVUsRUFBRSxFQUFFO01BQ2RDLFNBQVMsRUFBRSxDQUFDO01BQ1pDLGlCQUFpQixFQUFFLElBQUk7TUFDdkJDLE1BQU0sRUFBRTtRQUNOQyxRQUFRLEVBQUUsRUFBRTtRQUNaQyxLQUFLLEVBQUU7VUFDTEMsUUFBUSxFQUFFO1FBQ1o7TUFDRixDQUFDO01BQ0RDLFNBQVMsRUFBRSxDQUFDO01BQ1pDLFNBQVMsRUFBRSxDQUNUO1FBQ0VDLElBQUksRUFBRSxDQUFDO1FBQ1BDLEVBQUUsRUFBRSxHQUFHO1FBQ1BDLEtBQUssRUFBRSxTQUFTO1FBQUU7UUFDbEJDLFNBQVMsRUFBRTtNQUNiLENBQUMsRUFDRDtRQUNFSCxJQUFJLEVBQUUsR0FBRztRQUNUQyxFQUFFLEVBQUUsR0FBRztRQUNQQyxLQUFLLEVBQUUsU0FBUztRQUFFO1FBQ2xCQyxTQUFTLEVBQUU7TUFDYixDQUFDLEVBQ0Q7UUFDRUgsSUFBSSxFQUFFLEdBQUc7UUFDVEMsRUFBRSxFQUFFLEdBQUc7UUFDUEMsS0FBSyxFQUFFLFNBQVM7UUFBRTtRQUNsQkMsU0FBUyxFQUFFO01BQ2IsQ0FBQztJQUVMLENBQUM7SUFFREMsTUFBTSxFQUFFLENBQ047TUFDRUMsSUFBSSxFQUFFLE9BQU87TUFDYnZDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztNQUNWd0MsT0FBTyxFQUFFO1FBQ1BDLFdBQVcsRUFBRTtNQUNmLENBQUM7TUFDREMsVUFBVSxFQUFFO1FBQ1ZDLE1BQU0sRUFBRSxVQUFVO1FBQ2xCQyxXQUFXLEVBQUUsQ0FBQztRQUNkUixLQUFLLEVBQ0ZkLG1CQUFVLENBQUNDLGNBQWMsQ0FBQ2QsS0FBSyxJQUM5QmEsbUJBQVUsQ0FBQ0MsY0FBYyxDQUFDZCxLQUFLLENBQUNxQixLQUFLLElBQ3JDUixtQkFBVSxDQUFDQyxjQUFjLENBQUNkLEtBQUssQ0FBQ3FCLEtBQUssQ0FBQ00sS0FBSyxJQUM3QyxTQUFTO1FBQ1hOLEtBQUssRUFBRTtVQUNMQyxRQUFRLEVBQUU7UUFDWjtNQUNGLENBQUM7TUFDRGMsSUFBSSxFQUFFO1FBQ0pDLE1BQU0sRUFBRSxLQUFLO1FBQ2J0QixlQUFlLEVBQUUsTUFBTTtRQUN2QnVCLFNBQVMsRUFBRSxFQUFFO1FBQ2JDLFVBQVUsRUFBRSxJQUFJO1FBQ2hCQyxVQUFVLEVBQUU7TUFDZCxDQUFDO01BQ0RDLEtBQUssRUFBRTtRQUNMMUIsZUFBZSxFQUFFLE1BQU07UUFDdkJzQixNQUFNLEVBQUU7TUFDVjtJQUNGLENBQUM7RUFFTCxDQUFDO0FBQ0gsQ0FBQztBQUFDSyxPQUFBLENBQUFyRCxPQUFBLEdBQUFBLE9BQUEifQ==
@@ -1,14 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof3 = require("@babel/runtime/helpers/typeof");
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.List = void 0;
9
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/typeof"));
10
- var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
11
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
12
8
  var _styledComponents = _interopRequireDefault(require("styled-components"));
13
9
  var _react = _interopRequireWildcard(require("react"));
14
10
  var _theme = require("styles/theme/theme");
@@ -24,38 +20,42 @@ var _DischargePattern = require("../SitePage/DischargePattern/DischargePattern")
24
20
  var _QualitySummary = require("Widgets/QualitySummary/QualitySummary");
25
21
  var _LineChart = require("pages/AreaPage/Dashboard/LineChart/LineChart");
26
22
  var _WWTPDashboardSlice = require("store/WWTPDashboard/WWTPDashboardSlice");
27
- 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); }
28
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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; }
29
- var List = function List(props) {
23
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
+ const List = props => {
30
26
  var _WWTPInfo$point, _WWTPInfo$point2;
31
- var ReduxState = (0, _reactRedux.useSelector)(function (state) {
32
- return state;
33
- });
34
- var areas_data = ReduxState.areas_data;
35
- var dispatch = (0, _reactRedux.useDispatch)();
36
- var _useSelectedItem = (0, _ListContext.useSelectedItem)(),
37
- selectedItem = _useSelectedItem.selectedItem,
38
- handleSelectItem = _useSelectedItem.handleSelectItem;
39
- var WWTPInfo = props.WWTPInfo;
40
- var _useSelector = (0, _reactRedux.useSelector)(function (state) {
41
- return state.wwtp_dashboard;
42
- }),
43
- focusedArea = _useSelector.focusedArea,
44
- map = _useSelector.map;
45
- var selectedRef = (0, _react.useRef)(null);
46
- var siteID = (_WWTPInfo$point = WWTPInfo.point) === null || _WWTPInfo$point === void 0 ? void 0 : _WWTPInfo$point.id;
47
- var handleItemClick = function handleItemClick(item) {
27
+ const ReduxState = (0, _reactRedux.useSelector)(state => state);
28
+ const {
29
+ areas_data
30
+ } = ReduxState;
31
+ const dispatch = (0, _reactRedux.useDispatch)();
32
+ const {
33
+ selectedItem,
34
+ handleSelectItem
35
+ } = (0, _ListContext.useSelectedItem)();
36
+ const {
37
+ WWTPInfo
38
+ } = props;
39
+ const {
40
+ focusedArea,
41
+ map
42
+ } = (0, _reactRedux.useSelector)(state => state.wwtp_dashboard);
43
+ const selectedRef = (0, _react.useRef)(null);
44
+ const siteID = (_WWTPInfo$point = WWTPInfo.point) === null || _WWTPInfo$point === void 0 ? void 0 : _WWTPInfo$point.id;
45
+ const handleItemClick = item => {
48
46
  handleSelectItem(item);
49
47
  };
50
- var noDataMessage = _i18n.default.t('wwtpPage.no_data_for_site');
51
- var listDetails = (0, _react.useMemo)(function () {
48
+ const noDataMessage = _i18n.default.t('wwtpPage.no_data_for_site');
49
+ let listDetails = (0, _react.useMemo)(() => {
52
50
  var _focusedArea$sub_area, _focusedArea$sub_area2;
53
51
  if (!siteID && !focusedArea) {
54
52
  return;
55
53
  }
56
- var is_no_areas = focusedArea && (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.forWWTPMap) === true && siteID !== undefined && ((_focusedArea$sub_area = focusedArea.sub_areas) === null || _focusedArea$sub_area === void 0 ? void 0 : _focusedArea$sub_area.length) === 0;
54
+ const is_no_areas = focusedArea && (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.forWWTPMap) === true && siteID !== undefined && ((_focusedArea$sub_area = focusedArea.sub_areas) === null || _focusedArea$sub_area === void 0 ? void 0 : _focusedArea$sub_area.length) === 0;
57
55
  if (is_no_areas) {
58
- if ((focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.clicked) === undefined || (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.has_device) === false || !siteID) {
56
+ if (
57
+ // focusedArea?.clicked === undefined ||
58
+ (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.has_device) === false || !siteID) {
59
59
  return /*#__PURE__*/_react.default.createElement(ListContainer, null, /*#__PURE__*/_react.default.createElement(ErrorMessage, null, noDataMessage));
60
60
  } else {
61
61
  return /*#__PURE__*/_react.default.createElement(ListContainer, null, /*#__PURE__*/_react.default.createElement(SummaryComponent, {
@@ -70,87 +70,61 @@ var List = function List(props) {
70
70
  }
71
71
  }
72
72
  if (focusedArea && (focusedArea === null || focusedArea === void 0 ? void 0 : (_focusedArea$sub_area2 = focusedArea.sub_areas) === null || _focusedArea$sub_area2 === void 0 ? void 0 : _focusedArea$sub_area2.length) > 0) {
73
- return focusedArea.sub_areas && (0, _utils.sortAreas)(focusedArea.sub_areas).filter(Boolean).map(function (area) {
74
- return /*#__PURE__*/_react.default.createElement(_AreaCard.AreaCard, {
75
- key: area.area_id,
76
- object: area,
77
- mapRef: map,
78
- onClick: function onClick() {
79
- return handleItemClick(area.area_id);
80
- },
81
- selected: selectedItem === area.area_id,
82
- itemRef: selectedItem === area.area_id ? selectedRef : null
83
- });
84
- });
73
+ return focusedArea.sub_areas && (0, _utils.sortAreas)(focusedArea.sub_areas).filter(Boolean).map(area => /*#__PURE__*/_react.default.createElement(_AreaCard.AreaCard, {
74
+ key: area.area_id,
75
+ object: area,
76
+ mapRef: map,
77
+ onClick: () => handleItemClick(area.area_id),
78
+ selected: selectedItem === area.area_id,
79
+ itemRef: selectedItem === area.area_id ? selectedRef : null
80
+ }));
85
81
  } else {
86
82
  if (focusedArea === null || focusedArea === void 0 ? void 0 : focusedArea.factories) {
87
- return focusedArea.factories.filter(Boolean).map(function (factory) {
88
- return /*#__PURE__*/_react.default.createElement(_FactoryCard.FactoryCard, {
89
- key: factory.id,
90
- object: factory,
91
- mapRef: map,
92
- onClick: function onClick() {
93
- return handleItemClick(factory.id);
94
- },
95
- selected: selectedItem === factory.id,
96
- itemRef: selectedItem === factory.id ? selectedRef : null
97
- });
98
- });
83
+ return focusedArea.factories.filter(Boolean).map(factory => /*#__PURE__*/_react.default.createElement(_FactoryCard.FactoryCard, {
84
+ key: factory.id,
85
+ object: factory,
86
+ mapRef: map,
87
+ onClick: () => handleItemClick(factory.id),
88
+ selected: selectedItem === factory.id,
89
+ itemRef: selectedItem === factory.id ? selectedRef : null
90
+ }));
99
91
  }
100
92
  }
101
93
  }, [selectedItem, siteID, focusedArea]);
102
94
 
103
95
  // Update the list only if the score of at least one of the sub-areas has changed
104
- (0, _react.useEffect)(function () {
96
+ (0, _react.useEffect)(() => {
105
97
  if (focusedArea && focusedArea.sub_areas && focusedArea.sub_areas.length > 0 && areas_data && focusedArea.sub_areas.length === areas_data.newAreas.length) {
106
- var isSubAreasEqual = compareArraysByIdAndScore(areas_data.newAreas, focusedArea.sub_areas);
98
+ const isSubAreasEqual = compareArraysByIdAndScore(areas_data.newAreas, focusedArea.sub_areas);
107
99
  if (isSubAreasEqual) return;
108
- var focusedAreaWithUpdatedSubAreas = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, focusedArea), {}, {
100
+ const focusedAreaWithUpdatedSubAreas = {
101
+ ...focusedArea,
109
102
  sub_areas: areas_data.newAreas
110
- });
103
+ };
111
104
  dispatch((0, _WWTPDashboardSlice.setFocusedArea)(focusedAreaWithUpdatedSubAreas));
112
105
  }
113
106
  }, [areas_data]);
114
107
  function compareArraysByIdAndScore(arr1, arr2) {
115
108
  // Iterate over each object in the first array
116
- var _iterator = (0, _createForOfIteratorHelper2.default)(arr1),
117
- _step;
118
- try {
119
- var _loop = function _loop() {
120
- var item1 = _step.value;
121
- // Find the object with the same id in the second array
122
- var matchingItem = arr2.find(function (item2) {
123
- return item2.area_id === item1.area_id;
124
- });
109
+ for (let item1 of arr1) {
110
+ // Find the object with the same id in the second array
111
+ let matchingItem = arr2.find(item2 => item2.area_id === item1.area_id);
125
112
 
126
- // If no matching item is found in the second array, return false
127
- if (!matchingItem) {
128
- return {
129
- v: false
130
- };
131
- }
132
-
133
- // If the scores don't match, return false
134
- if (item1.area_score !== matchingItem.area_score) {
135
- return {
136
- v: false
137
- };
138
- }
139
- };
140
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
141
- var _ret = _loop();
142
- if ((0, _typeof2.default)(_ret) === "object") return _ret.v;
113
+ // If no matching item is found in the second array, return false
114
+ if (!matchingItem) {
115
+ return false;
143
116
  }
144
117
 
145
- // If all items matched and had the same score, return true
146
- } catch (err) {
147
- _iterator.e(err);
148
- } finally {
149
- _iterator.f();
118
+ // If the scores don't match, return false
119
+ if (item1.area_score !== matchingItem.area_score) {
120
+ return false;
121
+ }
150
122
  }
123
+
124
+ // If all items matched and had the same score, return true
151
125
  return true;
152
126
  }
153
- (0, _react.useEffect)(function () {
127
+ (0, _react.useEffect)(() => {
154
128
  var _selectedRef$current;
155
129
  (_selectedRef$current = selectedRef.current) === null || _selectedRef$current === void 0 ? void 0 : _selectedRef$current.scrollIntoView({
156
130
  behavior: 'smooth',
@@ -178,24 +152,24 @@ var List = function List(props) {
178
152
  }, listDetails));
179
153
  };
180
154
  exports.List = List;
181
- var WWTPDetails = _styledComponents.default.div.withConfig({
155
+ const WWTPDetails = _styledComponents.default.div.withConfig({
182
156
  displayName: "List__WWTPDetails",
183
157
  componentId: "sc-1f5wz2c-0"
184
158
  })(["width:100%;height:calc(100vh - 134px);background:", ";"], _theme.theme.WWTPMap.bg);
185
- var SummaryComponent = (0, _styledComponents.default)(_QualitySummary.QualitySummary).withConfig({
159
+ const SummaryComponent = (0, _styledComponents.default)(_QualitySummary.QualitySummary).withConfig({
186
160
  displayName: "List__SummaryComponent",
187
161
  componentId: "sc-1f5wz2c-1"
188
162
  })(["grid-area:summary;summary-component{background-color:blue;}"]);
189
- var LineChartComponent = (0, _styledComponents.default)(_LineChart.LineChart).withConfig({
163
+ const LineChartComponent = (0, _styledComponents.default)(_LineChart.LineChart).withConfig({
190
164
  displayName: "List__LineChartComponent",
191
165
  componentId: "sc-1f5wz2c-2"
192
166
  })(["grid-area:graph;"]);
193
- var ListContainer = _styledComponents.default.div.withConfig({
167
+ const ListContainer = _styledComponents.default.div.withConfig({
194
168
  displayName: "List__ListContainer",
195
169
  componentId: "sc-1f5wz2c-3"
196
170
  })(["display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:20px;gap:30px;"]);
197
- var ErrorMessage = _styledComponents.default.div.withConfig({
171
+ const ErrorMessage = _styledComponents.default.div.withConfig({
198
172
  displayName: "List__ErrorMessage",
199
173
  componentId: "sc-1f5wz2c-4"
200
174
  })(["display:flex;height:100%;font-size:20px;justify-content:center;box-shadow:-0.9px -0.5px 5px 0 rgba(0,0,0,0.06);border:solid 1px #ebebeb;padding:20px;"]);
201
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdGhlbWUiLCJfcmVhY3RSZWR1eCIsIl91dGlscyIsIl9BcmVhQ2FyZCIsIl9GYWN0b3J5Q2FyZCIsIl9PcmdhbmljQ2FyZCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUG90ZW50aWFsU2F2aW5nIiwiX0xpc3RDb250ZXh0IiwiX2kxOG4iLCJfRGlzY2hhcmdlUGF0dGVybiIsIl9RdWFsaXR5U3VtbWFyeSIsIl9MaW5lQ2hhcnQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YzIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiTGlzdCIsInByb3BzIiwiX1dXVFBJbmZvJHBvaW50IiwiX1dXVFBJbmZvJHBvaW50MiIsIlJlZHV4U3RhdGUiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiYXJlYXNfZGF0YSIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJfdXNlU2VsZWN0ZWRJdGVtIiwidXNlU2VsZWN0ZWRJdGVtIiwic2VsZWN0ZWRJdGVtIiwiaGFuZGxlU2VsZWN0SXRlbSIsIldXVFBJbmZvIiwiX3VzZVNlbGVjdG9yIiwid3d0cF9kYXNoYm9hcmQiLCJmb2N1c2VkQXJlYSIsIm1hcCIsInNlbGVjdGVkUmVmIiwidXNlUmVmIiwic2l0ZUlEIiwicG9pbnQiLCJpZCIsImhhbmRsZUl0ZW1DbGljayIsIml0ZW0iLCJub0RhdGFNZXNzYWdlIiwiaTE4biIsInQiLCJsaXN0RGV0YWlscyIsInVzZU1lbW8iLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEiLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEyIiwiaXNfbm9fYXJlYXMiLCJmb3JXV1RQTWFwIiwidW5kZWZpbmVkIiwic3ViX2FyZWFzIiwibGVuZ3RoIiwiY2xpY2tlZCIsImhhc19kZXZpY2UiLCJjcmVhdGVFbGVtZW50IiwiTGlzdENvbnRhaW5lciIsIkVycm9yTWVzc2FnZSIsIlN1bW1hcnlDb21wb25lbnQiLCJlbmRwb2ludCIsImNvbmNhdCIsImNsYXNzTmFtZSIsIkxpbmVDaGFydENvbXBvbmVudCIsInRpdGxlIiwiRGlzY2hhcmdlUGF0dGVybiIsIk51bWJlciIsInNvcnRBcmVhcyIsImZpbHRlciIsIkJvb2xlYW4iLCJhcmVhIiwiQXJlYUNhcmQiLCJhcmVhX2lkIiwib2JqZWN0IiwibWFwUmVmIiwib25DbGljayIsInNlbGVjdGVkIiwiaXRlbVJlZiIsImZhY3RvcmllcyIsImZhY3RvcnkiLCJGYWN0b3J5Q2FyZCIsInVzZUVmZmVjdCIsIm5ld0FyZWFzIiwiaXNTdWJBcmVhc0VxdWFsIiwiY29tcGFyZUFycmF5c0J5SWRBbmRTY29yZSIsImZvY3VzZWRBcmVhV2l0aFVwZGF0ZWRTdWJBcmVhcyIsIl9vYmplY3RTcHJlYWQyIiwic2V0Rm9jdXNlZEFyZWEiLCJhcnIxIiwiYXJyMiIsIl9pdGVyYXRvciIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyMiIsIl9zdGVwIiwiX2xvb3AiLCJpdGVtMSIsInZhbHVlIiwibWF0Y2hpbmdJdGVtIiwiZmluZCIsIml0ZW0yIiwidiIsImFyZWFfc2NvcmUiLCJzIiwibiIsImRvbmUiLCJfcmV0IiwiX3R5cGVvZjIiLCJlcnIiLCJlIiwiZiIsIl9zZWxlY3RlZFJlZiRjdXJyZW50IiwiY3VycmVudCIsInNjcm9sbEludG9WaWV3IiwiYmVoYXZpb3IiLCJibG9jayIsImlubGluZSIsImdyb3VwIiwidHlwZSIsIldXVFBEZXRhaWxzIiwic3R5bGUiLCJvdmVyZmxvdyIsIm5hbWUiLCJhcmVhX25hbWUiLCJleHBvcnRzIiwic3R5bGVkIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJ0aGVtZSIsIldXVFBNYXAiLCJiZyIsIlF1YWxpdHlTdW1tYXJ5IiwiTGluZUNoYXJ0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC9MaXN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQXJlYSB9IGZyb20gJy4uLy4uL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnc3JjL3N0eWxlcy90aGVtZS90aGVtZSc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgc29ydEFyZWFzIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBBcmVhQ2FyZCB9IGZyb20gJy4vQXJlYUNhcmQnO1xuaW1wb3J0IHsgRmFjdG9yeUNhcmQgfSBmcm9tICcuL0ZhY3RvcnlDYXJkJztcbmltcG9ydCBPcmdhbmljQ2FyZCBmcm9tICcuLi9Xd3RwUGFnZS9PcmdhbmljQ2FyZCc7XG5pbXBvcnQgSW1wYWN0Q2FyZCBmcm9tICcuLi9Xd3RwUGFnZS9Qb3RlbnRpYWxTYXZpbmcnO1xuaW1wb3J0IHsgdXNlU2VsZWN0ZWRJdGVtIH0gZnJvbSAnLi9MaXN0Q29udGV4dCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgRGlzY2hhcmdlUGF0dGVybiB9IGZyb20gJy4uL1NpdGVQYWdlL0Rpc2NoYXJnZVBhdHRlcm4vRGlzY2hhcmdlUGF0dGVybic7XG5pbXBvcnQgeyBRdWFsaXR5U3VtbWFyeSB9IGZyb20gJ3NyYy9XaWRnZXRzL1F1YWxpdHlTdW1tYXJ5L1F1YWxpdHlTdW1tYXJ5JztcbmltcG9ydCB7IExpbmVDaGFydCB9IGZyb20gJ3NyYy9wYWdlcy9BcmVhUGFnZS9EYXNoYm9hcmQvTGluZUNoYXJ0L0xpbmVDaGFydCc7XG5pbXBvcnQgeyBzZXRGb2N1c2VkQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9XV1RQRGFzaGJvYXJkL1dXVFBEYXNoYm9hcmRTbGljZSc7XG5cbnR5cGUgSVByb3BzID0ge1xuICBnbG9iYWxfZGF0YTogYW55O1xuICBXV1RQSW5mbzogYW55O1xuICBkaXNwYXRjaDogYW55O1xufTtcblxuZXhwb3J0IGNvbnN0IExpc3Q6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEgfSA9IFJlZHV4U3RhdGU7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgeyBzZWxlY3RlZEl0ZW0sIGhhbmRsZVNlbGVjdEl0ZW0gfSA9IHVzZVNlbGVjdGVkSXRlbSgpO1xuICBjb25zdCB7IFdXVFBJbmZvIH0gPSBwcm9wcztcbiAgY29uc3QgeyBmb2N1c2VkQXJlYSwgbWFwIH0gPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS53d3RwX2Rhc2hib2FyZCxcbiAgKTtcbiAgY29uc3Qgc2VsZWN0ZWRSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHNpdGVJRCA9IFdXVFBJbmZvLnBvaW50Py5pZDtcblxuICBjb25zdCBoYW5kbGVJdGVtQ2xpY2sgPSAoaXRlbSkgPT4ge1xuICAgIGhhbmRsZVNlbGVjdEl0ZW0oaXRlbSk7XG4gIH07XG5cbiAgY29uc3Qgbm9EYXRhTWVzc2FnZSA9IGkxOG4udCgnd3d0cFBhZ2Uubm9fZGF0YV9mb3Jfc2l0ZScpO1xuXG4gIGxldCBsaXN0RGV0YWlscyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghc2l0ZUlEICYmICFmb2N1c2VkQXJlYSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGlzX25vX2FyZWFzID1cbiAgICAgIGZvY3VzZWRBcmVhICYmXG4gICAgICBmb2N1c2VkQXJlYT8uZm9yV1dUUE1hcCA9PT0gdHJ1ZSAmJlxuICAgICAgc2l0ZUlEICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcz8ubGVuZ3RoID09PSAwO1xuXG4gICAgaWYgKGlzX25vX2FyZWFzKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGZvY3VzZWRBcmVhPy5jbGlja2VkID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgZm9jdXNlZEFyZWE/Lmhhc19kZXZpY2UgPT09IGZhbHNlIHx8XG4gICAgICAgICFzaXRlSURcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxMaXN0Q29udGFpbmVyPlxuICAgICAgICAgICAgPEVycm9yTWVzc2FnZT57bm9EYXRhTWVzc2FnZX08L0Vycm9yTWVzc2FnZT5cbiAgICAgICAgICA8L0xpc3RDb250YWluZXI+XG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxMaXN0Q29udGFpbmVyPlxuICAgICAgICAgICAgPFN1bW1hcnlDb21wb25lbnRcbiAgICAgICAgICAgICAgZW5kcG9pbnQ9e2AvZGF0YS9ldmVudHMtY29tcG9uZW50LWRhdGEvJHtzaXRlSUR9YH1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwic3VtbWFyeS1jb21wb25lbnRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxMaW5lQ2hhcnRDb21wb25lbnRcbiAgICAgICAgICAgICAgdGl0bGU9e2kxOG4udCgnYXJlYV9kYXNoYm9hcmQudHJlbmQnKX1cbiAgICAgICAgICAgICAgZW5kcG9pbnQ9e2AvcG9pbnRzLyR7c2l0ZUlEfS90cmVuZC1ncmFwaGB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPERpc2NoYXJnZVBhdHRlcm4gc2l0ZUlEPXtOdW1iZXIoc2l0ZUlEKX0gLz5cbiAgICAgICAgICA8L0xpc3RDb250YWluZXI+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGZvY3VzZWRBcmVhICYmIGZvY3VzZWRBcmVhPy5zdWJfYXJlYXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcyAmJlxuICAgICAgICBzb3J0QXJlYXMoZm9jdXNlZEFyZWEuc3ViX2FyZWFzKVxuICAgICAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgICAgICAubWFwKChhcmVhOiBJQXJlYSkgPT4gKFxuICAgICAgICAgICAgPEFyZWFDYXJkXG4gICAgICAgICAgICAgIGtleT17YXJlYS5hcmVhX2lkfVxuICAgICAgICAgICAgICBvYmplY3Q9e2FyZWF9XG4gICAgICAgICAgICAgIG1hcFJlZj17bWFwfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVJdGVtQ2xpY2soYXJlYS5hcmVhX2lkKX1cbiAgICAgICAgICAgICAgc2VsZWN0ZWQ9e3NlbGVjdGVkSXRlbSA9PT0gYXJlYS5hcmVhX2lkfVxuICAgICAgICAgICAgICBpdGVtUmVmPXtzZWxlY3RlZEl0ZW0gPT09IGFyZWEuYXJlYV9pZCA/IHNlbGVjdGVkUmVmIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChmb2N1c2VkQXJlYT8uZmFjdG9yaWVzKSB7XG4gICAgICAgIHJldHVybiBmb2N1c2VkQXJlYS5mYWN0b3JpZXNcbiAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgLm1hcCgoZmFjdG9yeSkgPT4gKFxuICAgICAgICAgICAgPEZhY3RvcnlDYXJkXG4gICAgICAgICAgICAgIGtleT17ZmFjdG9yeS5pZH1cbiAgICAgICAgICAgICAgb2JqZWN0PXtmYWN0b3J5fVxuICAgICAgICAgICAgICBtYXBSZWY9e21hcH1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlSXRlbUNsaWNrKGZhY3RvcnkuaWQpfVxuICAgICAgICAgICAgICBzZWxlY3RlZD17c2VsZWN0ZWRJdGVtID09PSBmYWN0b3J5LmlkfVxuICAgICAgICAgICAgICBpdGVtUmVmPXtzZWxlY3RlZEl0ZW0gPT09IGZhY3RvcnkuaWQgPyBzZWxlY3RlZFJlZiA6IG51bGx9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW3NlbGVjdGVkSXRlbSwgc2l0ZUlELCBmb2N1c2VkQXJlYV0pO1xuXG4gIC8vIFVwZGF0ZSB0aGUgbGlzdCBvbmx5IGlmIHRoZSBzY29yZSBvZiBhdCBsZWFzdCBvbmUgb2YgdGhlIHN1Yi1hcmVhcyBoYXMgY2hhbmdlZFxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGZvY3VzZWRBcmVhICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMgJiZcbiAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcy5sZW5ndGggPiAwICYmXG4gICAgICBhcmVhc19kYXRhICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMubGVuZ3RoID09PSBhcmVhc19kYXRhLm5ld0FyZWFzLmxlbmd0aFxuICAgICkge1xuICAgICAgY29uc3QgaXNTdWJBcmVhc0VxdWFsID0gY29tcGFyZUFycmF5c0J5SWRBbmRTY29yZShcbiAgICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcyxcbiAgICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzLFxuICAgICAgKTtcbiAgICAgIGlmIChpc1N1YkFyZWFzRXF1YWwpIHJldHVybjtcblxuICAgICAgY29uc3QgZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzID0ge1xuICAgICAgICAuLi5mb2N1c2VkQXJlYSxcbiAgICAgICAgc3ViX2FyZWFzOiBhcmVhc19kYXRhLm5ld0FyZWFzLFxuICAgICAgfTtcbiAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRBcmVhKGZvY3VzZWRBcmVhV2l0aFVwZGF0ZWRTdWJBcmVhcykpO1xuICAgIH1cbiAgfSwgW2FyZWFzX2RhdGFdKTtcblxuICBmdW5jdGlvbiBjb21wYXJlQXJyYXlzQnlJZEFuZFNjb3JlKGFycjEsIGFycjIpIHtcbiAgICAvLyBJdGVyYXRlIG92ZXIgZWFjaCBvYmplY3QgaW4gdGhlIGZpcnN0IGFycmF5XG4gICAgZm9yIChsZXQgaXRlbTEgb2YgYXJyMSkge1xuICAgICAgLy8gRmluZCB0aGUgb2JqZWN0IHdpdGggdGhlIHNhbWUgaWQgaW4gdGhlIHNlY29uZCBhcnJheVxuICAgICAgbGV0IG1hdGNoaW5nSXRlbSA9IGFycjIuZmluZCgoaXRlbTIpID0+IGl0ZW0yLmFyZWFfaWQgPT09IGl0ZW0xLmFyZWFfaWQpO1xuXG4gICAgICAvLyBJZiBubyBtYXRjaGluZyBpdGVtIGlzIGZvdW5kIGluIHRoZSBzZWNvbmQgYXJyYXksIHJldHVybiBmYWxzZVxuICAgICAgaWYgKCFtYXRjaGluZ0l0ZW0pIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICAvLyBJZiB0aGUgc2NvcmVzIGRvbid0IG1hdGNoLCByZXR1cm4gZmFsc2VcbiAgICAgIGlmIChpdGVtMS5hcmVhX3Njb3JlICE9PSBtYXRjaGluZ0l0ZW0uYXJlYV9zY29yZSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgYWxsIGl0ZW1zIG1hdGNoZWQgYW5kIGhhZCB0aGUgc2FtZSBzY29yZSwgcmV0dXJuIHRydWVcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2VsZWN0ZWRSZWYuY3VycmVudD8uc2Nyb2xsSW50b1ZpZXcoe1xuICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgYmxvY2s6ICdjZW50ZXInLFxuICAgICAgaW5saW5lOiAnY2VudGVyJyxcbiAgICB9KTtcbiAgfSwgW3NlbGVjdGVkSXRlbV0pO1xuXG4gIGlmIChcbiAgICBmb2N1c2VkQXJlYT8uZ3JvdXAgJiZcbiAgICBmb2N1c2VkQXJlYS5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnICYmXG4gICAgZm9jdXNlZEFyZWE/LmNsaWNrZWQgPT09IHVuZGVmaW5lZFxuICApXG4gICAgcmV0dXJuIChcbiAgICAgIDxXV1RQRGV0YWlscyBjbGFzc05hbWU9XCJwLTNcIiBzdHlsZT17eyBvdmVyZmxvdzogJ3Njcm9sbCcgfX0+XG4gICAgICAgIDxoMz57V1dUUEluZm8ucG9pbnQ/Lm5hbWV9PC9oMz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoLWF1dG8gbXktNCd9PlxuICAgICAgICAgIDxPcmdhbmljQ2FyZCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoLWF1dG8gbXQtMid9PlxuICAgICAgICAgIDxJbXBhY3RDYXJkIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9XV1RQRGV0YWlscz5cbiAgICApO1xuXG4gIHJldHVybiAoXG4gICAgPFdXVFBEZXRhaWxzIGNsYXNzTmFtZT1cInAtM1wiIHN0eWxlPXt7IG92ZXJmbG93OiAnc2Nyb2xsJyB9fT5cbiAgICAgIDxoMz57Zm9jdXNlZEFyZWE/LmFyZWFfbmFtZSB8fCBmb2N1c2VkQXJlYT8ubmFtZX08L2gzPlxuICAgICAgPHVsIGNsYXNzTmFtZT17J214LW4zJ30+e2xpc3REZXRhaWxzfTwvdWw+XG4gICAgPC9XV1RQRGV0YWlscz5cbiAgKTtcbn07XG5cbmNvbnN0IFdXVFBEZXRhaWxzID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDEzNHB4KTtcbiAgYmFja2dyb3VuZDogJHt0aGVtZS5XV1RQTWFwLmJnfTtcbmA7XG5cbmNvbnN0IFN1bW1hcnlDb21wb25lbnQgPSBzdHlsZWQoUXVhbGl0eVN1bW1hcnkpYFxuICBncmlkLWFyZWE6IHN1bW1hcnk7XG5cbiAgc3VtbWFyeS1jb21wb25lbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7XG4gIH1cbmA7XG5cbmNvbnN0IExpbmVDaGFydENvbXBvbmVudCA9IHN0eWxlZChMaW5lQ2hhcnQpYFxuICBncmlkLWFyZWE6IGdyYXBoO1xuYDtcblxuY29uc3QgTGlzdENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAyMHB4O1xuICBnYXA6IDMwcHg7XG5gO1xuXG5jb25zdCBFcnJvck1lc3NhZ2UgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJveC1zaGFkb3c6IC0wLjlweCAtMC41cHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjA2KTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ViZWJlYjtcbiAgcGFkZGluZzogMjBweDtcbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUNBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFdBQUEsR0FBQUYsT0FBQTtBQUVBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQUNB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
175
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdGhlbWUiLCJfcmVhY3RSZWR1eCIsIl91dGlscyIsIl9BcmVhQ2FyZCIsIl9GYWN0b3J5Q2FyZCIsIl9PcmdhbmljQ2FyZCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUG90ZW50aWFsU2F2aW5nIiwiX0xpc3RDb250ZXh0IiwiX2kxOG4iLCJfRGlzY2hhcmdlUGF0dGVybiIsIl9RdWFsaXR5U3VtbWFyeSIsIl9MaW5lQ2hhcnQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkxpc3QiLCJwcm9wcyIsIl9XV1RQSW5mbyRwb2ludCIsIl9XV1RQSW5mbyRwb2ludDIiLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImFyZWFzX2RhdGEiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwic2VsZWN0ZWRJdGVtIiwiaGFuZGxlU2VsZWN0SXRlbSIsInVzZVNlbGVjdGVkSXRlbSIsIldXVFBJbmZvIiwiZm9jdXNlZEFyZWEiLCJtYXAiLCJ3d3RwX2Rhc2hib2FyZCIsInNlbGVjdGVkUmVmIiwidXNlUmVmIiwic2l0ZUlEIiwicG9pbnQiLCJpZCIsImhhbmRsZUl0ZW1DbGljayIsIml0ZW0iLCJub0RhdGFNZXNzYWdlIiwiaTE4biIsInQiLCJsaXN0RGV0YWlscyIsInVzZU1lbW8iLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEiLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEyIiwiaXNfbm9fYXJlYXMiLCJmb3JXV1RQTWFwIiwidW5kZWZpbmVkIiwic3ViX2FyZWFzIiwibGVuZ3RoIiwiaGFzX2RldmljZSIsImNyZWF0ZUVsZW1lbnQiLCJMaXN0Q29udGFpbmVyIiwiRXJyb3JNZXNzYWdlIiwiU3VtbWFyeUNvbXBvbmVudCIsImVuZHBvaW50IiwiY29uY2F0IiwiY2xhc3NOYW1lIiwiTGluZUNoYXJ0Q29tcG9uZW50IiwidGl0bGUiLCJEaXNjaGFyZ2VQYXR0ZXJuIiwiTnVtYmVyIiwic29ydEFyZWFzIiwiZmlsdGVyIiwiQm9vbGVhbiIsImFyZWEiLCJBcmVhQ2FyZCIsImFyZWFfaWQiLCJvYmplY3QiLCJtYXBSZWYiLCJvbkNsaWNrIiwic2VsZWN0ZWQiLCJpdGVtUmVmIiwiZmFjdG9yaWVzIiwiZmFjdG9yeSIsIkZhY3RvcnlDYXJkIiwidXNlRWZmZWN0IiwibmV3QXJlYXMiLCJpc1N1YkFyZWFzRXF1YWwiLCJjb21wYXJlQXJyYXlzQnlJZEFuZFNjb3JlIiwiZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzIiwic2V0Rm9jdXNlZEFyZWEiLCJhcnIxIiwiYXJyMiIsIml0ZW0xIiwibWF0Y2hpbmdJdGVtIiwiZmluZCIsIml0ZW0yIiwiYXJlYV9zY29yZSIsIl9zZWxlY3RlZFJlZiRjdXJyZW50IiwiY3VycmVudCIsInNjcm9sbEludG9WaWV3IiwiYmVoYXZpb3IiLCJibG9jayIsImlubGluZSIsImdyb3VwIiwidHlwZSIsImNsaWNrZWQiLCJXV1RQRGV0YWlscyIsInN0eWxlIiwib3ZlcmZsb3ciLCJuYW1lIiwiYXJlYV9uYW1lIiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwidGhlbWUiLCJXV1RQTWFwIiwiYmciLCJRdWFsaXR5U3VtbWFyeSIsIkxpbmVDaGFydCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvTGlzdC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUFyZWEgfSBmcm9tICcuLi8uLi9zdG9yZS9hcmVhcy9tb2RlbHMvSUFyZWEnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyB0aGVtZSB9IGZyb20gJ3NyYy9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJy4uLy4uL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IHNvcnRBcmVhcyB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgQXJlYUNhcmQgfSBmcm9tICcuL0FyZWFDYXJkJztcbmltcG9ydCB7IEZhY3RvcnlDYXJkIH0gZnJvbSAnLi9GYWN0b3J5Q2FyZCc7XG5pbXBvcnQgT3JnYW5pY0NhcmQgZnJvbSAnLi4vV3d0cFBhZ2UvT3JnYW5pY0NhcmQnO1xuaW1wb3J0IEltcGFjdENhcmQgZnJvbSAnLi4vV3d0cFBhZ2UvUG90ZW50aWFsU2F2aW5nJztcbmltcG9ydCB7IHVzZVNlbGVjdGVkSXRlbSB9IGZyb20gJy4vTGlzdENvbnRleHQnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IERpc2NoYXJnZVBhdHRlcm4gfSBmcm9tICcuLi9TaXRlUGFnZS9EaXNjaGFyZ2VQYXR0ZXJuL0Rpc2NoYXJnZVBhdHRlcm4nO1xuaW1wb3J0IHsgUXVhbGl0eVN1bW1hcnkgfSBmcm9tICdzcmMvV2lkZ2V0cy9RdWFsaXR5U3VtbWFyeS9RdWFsaXR5U3VtbWFyeSc7XG5pbXBvcnQgeyBMaW5lQ2hhcnQgfSBmcm9tICdzcmMvcGFnZXMvQXJlYVBhZ2UvRGFzaGJvYXJkL0xpbmVDaGFydC9MaW5lQ2hhcnQnO1xuaW1wb3J0IHsgc2V0Rm9jdXNlZEFyZWEgfSBmcm9tICdzcmMvc3RvcmUvV1dUUERhc2hib2FyZC9XV1RQRGFzaGJvYXJkU2xpY2UnO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgZ2xvYmFsX2RhdGE6IGFueTtcbiAgV1dUUEluZm86IGFueTtcbiAgZGlzcGF0Y2g6IGFueTtcbn07XG5cbmV4cG9ydCBjb25zdCBMaXN0OiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IFJlZHV4U3RhdGUgPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlKTtcbiAgY29uc3QgeyBhcmVhc19kYXRhIH0gPSBSZWR1eFN0YXRlO1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHsgc2VsZWN0ZWRJdGVtLCBoYW5kbGVTZWxlY3RJdGVtIH0gPSB1c2VTZWxlY3RlZEl0ZW0oKTtcbiAgY29uc3QgeyBXV1RQSW5mbyB9ID0gcHJvcHM7XG4gIGNvbnN0IHsgZm9jdXNlZEFyZWEsIG1hcCB9ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUud3d0cF9kYXNoYm9hcmQsXG4gICk7XG4gIGNvbnN0IHNlbGVjdGVkUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBzaXRlSUQgPSBXV1RQSW5mby5wb2ludD8uaWQ7XG5cbiAgY29uc3QgaGFuZGxlSXRlbUNsaWNrID0gKGl0ZW0pID0+IHtcbiAgICBoYW5kbGVTZWxlY3RJdGVtKGl0ZW0pO1xuICB9O1xuXG4gIGNvbnN0IG5vRGF0YU1lc3NhZ2UgPSBpMThuLnQoJ3d3dHBQYWdlLm5vX2RhdGFfZm9yX3NpdGUnKTtcblxuICBsZXQgbGlzdERldGFpbHMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIXNpdGVJRCAmJiAhZm9jdXNlZEFyZWEpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpc19ub19hcmVhcyA9XG4gICAgICBmb2N1c2VkQXJlYSAmJlxuICAgICAgZm9jdXNlZEFyZWE/LmZvcldXVFBNYXAgPT09IHRydWUgJiZcbiAgICAgIHNpdGVJRCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXM/Lmxlbmd0aCA9PT0gMDtcblxuICAgIGlmIChpc19ub19hcmVhcykge1xuICAgICAgaWYgKFxuICAgICAgICAvLyBmb2N1c2VkQXJlYT8uY2xpY2tlZCA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgIGZvY3VzZWRBcmVhPy5oYXNfZGV2aWNlID09PSBmYWxzZSB8fFxuICAgICAgICAhc2l0ZUlEXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8TGlzdENvbnRhaW5lcj5cbiAgICAgICAgICAgIDxFcnJvck1lc3NhZ2U+e25vRGF0YU1lc3NhZ2V9PC9FcnJvck1lc3NhZ2U+XG4gICAgICAgICAgPC9MaXN0Q29udGFpbmVyPlxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8TGlzdENvbnRhaW5lcj5cbiAgICAgICAgICAgIDxTdW1tYXJ5Q29tcG9uZW50XG4gICAgICAgICAgICAgIGVuZHBvaW50PXtgL2RhdGEvZXZlbnRzLWNvbXBvbmVudC1kYXRhLyR7c2l0ZUlEfWB9XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cInN1bW1hcnktY29tcG9uZW50XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8TGluZUNoYXJ0Q29tcG9uZW50XG4gICAgICAgICAgICAgIHRpdGxlPXtpMThuLnQoJ2FyZWFfZGFzaGJvYXJkLnRyZW5kJyl9XG4gICAgICAgICAgICAgIGVuZHBvaW50PXtgL3BvaW50cy8ke3NpdGVJRH0vdHJlbmQtZ3JhcGhgfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxEaXNjaGFyZ2VQYXR0ZXJuIHNpdGVJRD17TnVtYmVyKHNpdGVJRCl9IC8+XG4gICAgICAgICAgPC9MaXN0Q29udGFpbmVyPlxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChmb2N1c2VkQXJlYSAmJiBmb2N1c2VkQXJlYT8uc3ViX2FyZWFzPy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMgJiZcbiAgICAgICAgc29ydEFyZWFzKGZvY3VzZWRBcmVhLnN1Yl9hcmVhcylcbiAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgLm1hcCgoYXJlYTogSUFyZWEpID0+IChcbiAgICAgICAgICAgIDxBcmVhQ2FyZFxuICAgICAgICAgICAgICBrZXk9e2FyZWEuYXJlYV9pZH1cbiAgICAgICAgICAgICAgb2JqZWN0PXthcmVhfVxuICAgICAgICAgICAgICBtYXBSZWY9e21hcH1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlSXRlbUNsaWNrKGFyZWEuYXJlYV9pZCl9XG4gICAgICAgICAgICAgIHNlbGVjdGVkPXtzZWxlY3RlZEl0ZW0gPT09IGFyZWEuYXJlYV9pZH1cbiAgICAgICAgICAgICAgaXRlbVJlZj17c2VsZWN0ZWRJdGVtID09PSBhcmVhLmFyZWFfaWQgPyBzZWxlY3RlZFJlZiA6IG51bGx9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkpXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoZm9jdXNlZEFyZWE/LmZhY3Rvcmllcykge1xuICAgICAgICByZXR1cm4gZm9jdXNlZEFyZWEuZmFjdG9yaWVzXG4gICAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAgIC5tYXAoKGZhY3RvcnkpID0+IChcbiAgICAgICAgICAgIDxGYWN0b3J5Q2FyZFxuICAgICAgICAgICAgICBrZXk9e2ZhY3RvcnkuaWR9XG4gICAgICAgICAgICAgIG9iamVjdD17ZmFjdG9yeX1cbiAgICAgICAgICAgICAgbWFwUmVmPXttYXB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUl0ZW1DbGljayhmYWN0b3J5LmlkKX1cbiAgICAgICAgICAgICAgc2VsZWN0ZWQ9e3NlbGVjdGVkSXRlbSA9PT0gZmFjdG9yeS5pZH1cbiAgICAgICAgICAgICAgaXRlbVJlZj17c2VsZWN0ZWRJdGVtID09PSBmYWN0b3J5LmlkID8gc2VsZWN0ZWRSZWYgOiBudWxsfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtzZWxlY3RlZEl0ZW0sIHNpdGVJRCwgZm9jdXNlZEFyZWFdKTtcblxuICAvLyBVcGRhdGUgdGhlIGxpc3Qgb25seSBpZiB0aGUgc2NvcmUgb2YgYXQgbGVhc3Qgb25lIG9mIHRoZSBzdWItYXJlYXMgaGFzIGNoYW5nZWRcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoXG4gICAgICBmb2N1c2VkQXJlYSAmJlxuICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMubGVuZ3RoID4gMCAmJlxuICAgICAgYXJlYXNfZGF0YSAmJlxuICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzLmxlbmd0aCA9PT0gYXJlYXNfZGF0YS5uZXdBcmVhcy5sZW5ndGhcbiAgICApIHtcbiAgICAgIGNvbnN0IGlzU3ViQXJlYXNFcXVhbCA9IGNvbXBhcmVBcnJheXNCeUlkQW5kU2NvcmUoXG4gICAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMsXG4gICAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcyxcbiAgICAgICk7XG4gICAgICBpZiAoaXNTdWJBcmVhc0VxdWFsKSByZXR1cm47XG5cbiAgICAgIGNvbnN0IGZvY3VzZWRBcmVhV2l0aFVwZGF0ZWRTdWJBcmVhcyA9IHtcbiAgICAgICAgLi4uZm9jdXNlZEFyZWEsXG4gICAgICAgIHN1Yl9hcmVhczogYXJlYXNfZGF0YS5uZXdBcmVhcyxcbiAgICAgIH07XG4gICAgICBkaXNwYXRjaChzZXRGb2N1c2VkQXJlYShmb2N1c2VkQXJlYVdpdGhVcGRhdGVkU3ViQXJlYXMpKTtcbiAgICB9XG4gIH0sIFthcmVhc19kYXRhXSk7XG5cbiAgZnVuY3Rpb24gY29tcGFyZUFycmF5c0J5SWRBbmRTY29yZShhcnIxLCBhcnIyKSB7XG4gICAgLy8gSXRlcmF0ZSBvdmVyIGVhY2ggb2JqZWN0IGluIHRoZSBmaXJzdCBhcnJheVxuICAgIGZvciAobGV0IGl0ZW0xIG9mIGFycjEpIHtcbiAgICAgIC8vIEZpbmQgdGhlIG9iamVjdCB3aXRoIHRoZSBzYW1lIGlkIGluIHRoZSBzZWNvbmQgYXJyYXlcbiAgICAgIGxldCBtYXRjaGluZ0l0ZW0gPSBhcnIyLmZpbmQoKGl0ZW0yKSA9PiBpdGVtMi5hcmVhX2lkID09PSBpdGVtMS5hcmVhX2lkKTtcblxuICAgICAgLy8gSWYgbm8gbWF0Y2hpbmcgaXRlbSBpcyBmb3VuZCBpbiB0aGUgc2Vjb25kIGFycmF5LCByZXR1cm4gZmFsc2VcbiAgICAgIGlmICghbWF0Y2hpbmdJdGVtKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgLy8gSWYgdGhlIHNjb3JlcyBkb24ndCBtYXRjaCwgcmV0dXJuIGZhbHNlXG4gICAgICBpZiAoaXRlbTEuYXJlYV9zY29yZSAhPT0gbWF0Y2hpbmdJdGVtLmFyZWFfc2NvcmUpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElmIGFsbCBpdGVtcyBtYXRjaGVkIGFuZCBoYWQgdGhlIHNhbWUgc2NvcmUsIHJldHVybiB0cnVlXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNlbGVjdGVkUmVmLmN1cnJlbnQ/LnNjcm9sbEludG9WaWV3KHtcbiAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICAgIGJsb2NrOiAnY2VudGVyJyxcbiAgICAgIGlubGluZTogJ2NlbnRlcicsXG4gICAgfSk7XG4gIH0sIFtzZWxlY3RlZEl0ZW1dKTtcblxuICBpZiAoXG4gICAgZm9jdXNlZEFyZWE/Lmdyb3VwICYmXG4gICAgZm9jdXNlZEFyZWEuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6V2FzdGV3YXRlclRyZWF0bWVudFBsYW50JyAmJlxuICAgIGZvY3VzZWRBcmVhPy5jbGlja2VkID09PSB1bmRlZmluZWRcbiAgKVxuICAgIHJldHVybiAoXG4gICAgICA8V1dUUERldGFpbHMgY2xhc3NOYW1lPVwicC0zXCIgc3R5bGU9e3sgb3ZlcmZsb3c6ICdzY3JvbGwnIH19PlxuICAgICAgICA8aDM+e1dXVFBJbmZvLnBvaW50Py5uYW1lfTwvaDM+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnaC1hdXRvIG15LTQnfT5cbiAgICAgICAgICA8T3JnYW5pY0NhcmQgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnaC1hdXRvIG10LTInfT5cbiAgICAgICAgICA8SW1wYWN0Q2FyZCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvV1dUUERldGFpbHM+XG4gICAgKTtcblxuICByZXR1cm4gKFxuICAgIDxXV1RQRGV0YWlscyBjbGFzc05hbWU9XCJwLTNcIiBzdHlsZT17eyBvdmVyZmxvdzogJ3Njcm9sbCcgfX0+XG4gICAgICA8aDM+e2ZvY3VzZWRBcmVhPy5hcmVhX25hbWUgfHwgZm9jdXNlZEFyZWE/Lm5hbWV9PC9oMz5cbiAgICAgIDx1bCBjbGFzc05hbWU9eydteC1uMyd9PntsaXN0RGV0YWlsc308L3VsPlxuICAgIDwvV1dUUERldGFpbHM+XG4gICk7XG59O1xuXG5jb25zdCBXV1RQRGV0YWlscyA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMzRweCk7XG4gIGJhY2tncm91bmQ6ICR7dGhlbWUuV1dUUE1hcC5iZ307XG5gO1xuXG5jb25zdCBTdW1tYXJ5Q29tcG9uZW50ID0gc3R5bGVkKFF1YWxpdHlTdW1tYXJ5KWBcbiAgZ3JpZC1hcmVhOiBzdW1tYXJ5O1xuXG4gIHN1bW1hcnktY29tcG9uZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlO1xuICB9XG5gO1xuXG5jb25zdCBMaW5lQ2hhcnRDb21wb25lbnQgPSBzdHlsZWQoTGluZUNoYXJ0KWBcbiAgZ3JpZC1hcmVhOiBncmFwaDtcbmA7XG5cbmNvbnN0IExpc3RDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMjBweDtcbiAgZ2FwOiAzMHB4O1xuYDtcblxuY29uc3QgRXJyb3JNZXNzYWdlID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3gtc2hhZG93OiAtMC45cHggLTAuNXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4wNik7XG4gIGJvcmRlcjogc29saWQgMXB4ICNlYmViZWI7XG4gIHBhZGRpbmc6IDIwcHg7XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUNBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFdBQUEsR0FBQUYsT0FBQTtBQUVBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFlBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQVAsT0FBQTtBQUNBLElBQUFRLGdCQUFBLEdBQUFELHNCQUFBLENBQUFQLE9BQUE7QUFDQSxJQUFBUyxZQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxLQUFBLEdBQUFILHNCQUFBLENBQUFQLE9BQUE7QUFDQSxJQUFBVyxp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