@kando-env/kando-ui 1.2.466-alpha.7 → 1.2.466-alpha.9

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 (728) hide show
  1. package/lib/Router.js +81 -40
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +35 -24
  3. package/lib/Widgets/EventsRow/EventsRow.js +39 -26
  4. package/lib/Widgets/Map/GraphUtils.js +6 -4
  5. package/lib/Widgets/Map/Map.js +139 -100
  6. package/lib/Widgets/Map/MapUtils.js +102 -83
  7. package/lib/Widgets/Map/areas/AreaPolygon.js +84 -57
  8. package/lib/Widgets/Map/areas/AreaPolygons.js +25 -23
  9. package/lib/Widgets/Map/areas/AreaUtils.js +46 -46
  10. package/lib/Widgets/Map/areas/Patterns.js +5 -5
  11. package/lib/Widgets/Map/edges/Edge.js +41 -32
  12. package/lib/Widgets/Map/edges/Edges.js +24 -19
  13. package/lib/Widgets/Map/edges/arrows/Arrows.js +45 -24
  14. package/lib/Widgets/Map/events/Event.js +14 -15
  15. package/lib/Widgets/Map/events/EventIndicator.js +63 -66
  16. package/lib/Widgets/Map/events/EventPath.js +34 -33
  17. package/lib/Widgets/Map/events/EventUtils.js +78 -54
  18. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +19 -17
  19. package/lib/Widgets/Map/events/PointOfEvent.js +36 -27
  20. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +39 -29
  21. package/lib/Widgets/Map/events/Snail.js +11 -10
  22. package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +79 -77
  23. package/lib/Widgets/Map/map/FloatingGraph.js +21 -24
  24. package/lib/Widgets/Map/map/GraphDateButton.js +20 -27
  25. package/lib/Widgets/Map/matchGraph/MatchGraph.js +14 -14
  26. package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +16 -17
  27. package/lib/Widgets/Map/points/PointIcon.js +22 -23
  28. package/lib/Widgets/Map/points/PointMarker.js +88 -68
  29. package/lib/Widgets/Map/points/PointMarkers.js +36 -30
  30. package/lib/Widgets/Map/points/PointUtils.js +90 -76
  31. package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +43 -25
  32. package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +11 -11
  33. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +14 -11
  34. package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +6 -4
  35. package/lib/Widgets/MostPolluting/Areas/Areas.js +60 -28
  36. package/lib/Widgets/MostPolluting/Areas/areas.mock.js +4 -3
  37. package/lib/Widgets/MostPolluting/Areas/areasResponse.interface.js +1 -1
  38. package/lib/Widgets/MostPolluting/Areas/styles.js +6 -4
  39. package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +9 -12
  40. package/lib/Widgets/MostPolluting/Factories/Factories.js +65 -33
  41. package/lib/Widgets/MostPolluting/Factories/FactoryBox/CardLayout.js +20 -15
  42. package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +20 -15
  43. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +10 -9
  44. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +11 -13
  45. package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +6 -4
  46. package/lib/Widgets/MostPolluting/Factories/factories.mock.js +3 -2
  47. package/lib/Widgets/MostPolluting/Factories/factoriesResponse.interface.js +1 -1
  48. package/lib/Widgets/MostPolluting/Factories/styles.js +6 -4
  49. package/lib/Widgets/MostPolluting/MostPolluting.js +34 -23
  50. package/lib/Widgets/MostPolluting/MostPolluting.stories.js +32 -20
  51. package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +5 -7
  52. package/lib/Widgets/MostPolluting/ShowMore/styles.js +6 -7
  53. package/lib/Widgets/MostPolluting/assets/index.js +12 -12
  54. package/lib/Widgets/MostPolluting/components/ChangePercent.js +14 -20
  55. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +31 -36
  56. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +54 -49
  57. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +40 -44
  58. package/lib/Widgets/MostPolluting/components/PotentialImpact.js +27 -28
  59. package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +49 -53
  60. package/lib/Widgets/MostPolluting/models.js +1 -1
  61. package/lib/Widgets/MostPolluting/styles.js +6 -4
  62. package/lib/Widgets/PotentialImpactSummary/Back/Back.js +6 -8
  63. package/lib/Widgets/PotentialImpactSummary/Icon.js +39 -30
  64. package/lib/Widgets/PotentialImpactSummary/index.js +28 -20
  65. package/lib/Widgets/PotentialImpactSummary/index.test.js +54 -48
  66. package/lib/Widgets/PotentialImpactSummary/styles.js +13 -8
  67. package/lib/Widgets/PotentialImpactSummary/useCasesResponse.interface.js +1 -1
  68. package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +8 -10
  69. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +18 -23
  70. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +31 -34
  71. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +26 -28
  72. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +38 -35
  73. package/lib/Widgets/QualitySummary/QualitySummary.js +14 -10
  74. package/lib/Widgets/QualitySummary/qualitySummary.mock.js +7 -4
  75. package/lib/Widgets/QualitySummary/qualitySummaryResponse.interface.js +1 -1
  76. package/lib/Widgets/QualitySummary/styles.js +21 -24
  77. package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +14 -12
  78. package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +25 -25
  79. package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +21 -26
  80. package/lib/Widgets/UtilityInformation/UtilityInformation.js +36 -23
  81. package/lib/Widgets/UtilityInformation/UtilityInformationResponse.interface.js +1 -1
  82. package/lib/Widgets/UtilityInformation/styles.js +31 -30
  83. package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +5 -3
  84. package/lib/assets/icons/TopNavbar/index.js +7 -7
  85. package/lib/assets/icons/TrendSvg.js +7 -7
  86. package/lib/assets/icons/index.js +16 -16
  87. package/lib/assets/icons/kandoStepper/index.js +7 -7
  88. package/lib/assets/icons/siteTypes/index.js +2 -2
  89. package/lib/components/ApplyButton/ApplyButton.js +11 -10
  90. package/lib/components/ApplyButton/index.js +4 -3
  91. package/lib/components/Backdrop/Backdrop.js +5 -7
  92. package/lib/components/ContentLoader/ContentLoader.js +10 -12
  93. package/lib/components/ContentLoader/index.js +2 -2
  94. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +12 -12
  95. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +9 -5
  96. package/lib/components/CustomInputs/DoubleTabs/styles.js +16 -21
  97. package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +20 -12
  98. package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +6 -7
  99. package/lib/components/CustomInputs/Search/Search.js +60 -37
  100. package/lib/components/CustomInputs/Search/index.js +4 -3
  101. package/lib/components/CustomInputs/Select/Select.js +55 -38
  102. package/lib/components/CustomInputs/Select/Select.stories.js +10 -6
  103. package/lib/components/DamageType/DamageType.js +60 -35
  104. package/lib/components/DamageType/index.js +4 -3
  105. package/lib/components/DataLoaderError/DataLoaderError.js +7 -9
  106. package/lib/components/DischargeHeatmap/DischargeHeatmap.js +13 -11
  107. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +73 -72
  108. package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +37 -25
  109. package/lib/components/DischargeHeatmap/HighchartsOptions.js +16 -12
  110. package/lib/components/DischargeHeatmap/index.js +4 -3
  111. package/lib/components/DischargeHeatmap/mocks/handlers.js +6 -5
  112. package/lib/components/DischargeHeatmap/popupText.js +12 -11
  113. package/lib/components/DischargeHeatmap/titles.js +6 -4
  114. package/lib/components/DischargeHeatmap/types.js +1 -1
  115. package/lib/components/ErrorBoundary.js +42 -27
  116. package/lib/components/Events/Events.js +48 -29
  117. package/lib/components/Events/index.js +4 -3
  118. package/lib/components/Graph/Graph.js +95 -74
  119. package/lib/components/Graph/index.js +4 -3
  120. package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +24 -19
  121. package/lib/components/Header/Breadcrumbs/index.js +4 -3
  122. package/lib/components/Header/DoubleTabs/DoubleTabs.js +28 -18
  123. package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +9 -5
  124. package/lib/components/Header/DoubleTabs/styles.js +8 -5
  125. package/lib/components/Header/Header.js +3 -3
  126. package/lib/components/Header/Header.stories.js +9 -5
  127. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +36 -24
  128. package/lib/components/Header/InfoBar/InfoBar.js +102 -69
  129. package/lib/components/Header/InfoBar/Search/Control.js +10 -11
  130. package/lib/components/Header/InfoBar/Search/GroupLabel.js +7 -8
  131. package/lib/components/Header/InfoBar/Search/Search.js +24 -17
  132. package/lib/components/Header/InfoBar/Search/SearchContainer.js +35 -21
  133. package/lib/components/Header/InfoBar/Search/index.js +4 -3
  134. package/lib/components/Header/InfoBar/Search/searchStyle.js +49 -36
  135. package/lib/components/Header/InfoBar/TimeFilter.js +17 -13
  136. package/lib/components/Header/InfoBar/types.js +1 -1
  137. package/lib/components/Header/KandoNavbar/KandoNavbar.js +93 -66
  138. package/lib/components/Header/KandoNavbar/index.js +4 -3
  139. package/lib/components/Header/Slideshow/Slideshow.js +91 -67
  140. package/lib/components/Header/Slideshow/index.js +4 -3
  141. package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +5 -7
  142. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +24 -22
  143. package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +17 -17
  144. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +42 -36
  145. package/lib/components/Header/Toolbar/Toolbar.js +76 -58
  146. package/lib/components/InfoBar/InfoBar.js +24 -10
  147. package/lib/components/InfoBar/InfoBar.stories.js +9 -5
  148. package/lib/components/KandoModal/KandoModal.js +62 -26
  149. package/lib/components/KandoModal/index.js +4 -3
  150. package/lib/components/Link.js +8 -9
  151. package/lib/components/Links/CustomRedirect/CustomRedirect.js +7 -10
  152. package/lib/components/Links/StyledLink/StyledLink.js +20 -17
  153. package/lib/components/Links/StyledNavLink/StyledNavLink.js +10 -12
  154. package/lib/components/LiveEvents/CarouselSlide.js +10 -11
  155. package/lib/components/LiveEvents/LiveEvents.js +6 -7
  156. package/lib/components/LiveEvents/index.js +4 -3
  157. package/lib/components/LoaderByPercent/LoaderByPercent.js +30 -37
  158. package/lib/components/Map/Map.js +25 -20
  159. package/lib/components/Map/index.js +4 -3
  160. package/lib/components/Modal/Modal.js +10 -10
  161. package/lib/components/NarrowHeader.js +32 -18
  162. package/lib/components/PointInfo/PointInfo.js +19 -20
  163. package/lib/components/PointInfo/index.js +4 -3
  164. package/lib/components/PopupModal/PopupModal.js +17 -13
  165. package/lib/components/PopupModal/PopupModal.stories.js +24 -17
  166. package/lib/components/SeasonalInsights/SeasonalInsights.js +147 -0
  167. package/lib/components/Sector/Sector.js +40 -34
  168. package/lib/components/Sector/Sector.test.js +24 -24
  169. package/lib/components/Sector/SectorIconsNew.js +19 -26
  170. package/lib/components/Sector/index.js +4 -3
  171. package/lib/components/Sector/sectorIcons.js +5 -4
  172. package/lib/components/SevereEvent/Eta/Eta.js +54 -49
  173. package/lib/components/SevereEvent/Eta/styles.js +8 -11
  174. package/lib/components/SevereEvent/SevereEvent.js +52 -28
  175. package/lib/components/SevereEvent/SevereEvent.scss +24 -0
  176. package/lib/components/SevereEvent/UpstreamBadge.js +60 -0
  177. package/lib/components/Spinner/Spinner.js +8 -8
  178. package/lib/components/Spinner/Spinner.stories.js +11 -6
  179. package/lib/components/Spinner/index.js +4 -3
  180. package/lib/components/Spinner/styles.js +16 -21
  181. package/lib/components/Tabs/Tabs.js +31 -18
  182. package/lib/components/Tabs/Tabs.stories.js +10 -6
  183. package/lib/components/Tabs/assets/index.js +6 -6
  184. package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +18 -13
  185. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +45 -32
  186. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +34 -20
  187. package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +4 -3
  188. package/lib/components/TimeRangeSelector/TimeRangeHelper.js +22 -17
  189. package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +14 -13
  190. package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +4 -3
  191. package/lib/components/TimeRangeSelector/TimeRangeList.js +27 -24
  192. package/lib/components/TimeRangeSelector/TimeRangeOptions.js +27 -17
  193. package/lib/components/TimeRangeSelector/TimeRangeSelector.js +31 -26
  194. package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +10 -6
  195. package/lib/components/TimeRangeSelector/constants.js +5 -3
  196. package/lib/components/TimeRangeSelector/index.js +4 -3
  197. package/lib/components/Toggle/Toggle.js +18 -11
  198. package/lib/components/Toggle/index.js +4 -3
  199. package/lib/components/TopBanner/TopBanner.js +235 -0
  200. package/lib/components/TopBanner/insightsDismissalStorage.js +36 -0
  201. package/lib/components/TrendGraph/TrendGraph.js +42 -24
  202. package/lib/components/TrendGraph/index.js +4 -3
  203. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +33 -26
  204. package/lib/components/TrendGraphNVL/index.js +4 -3
  205. package/lib/development-environment/index.js +13 -9
  206. package/lib/development-environment/mock/browser.js +5 -2
  207. package/lib/development-environment/mock/get.js +10 -8
  208. package/lib/development-environment/mock/handlers.js +3 -2
  209. package/lib/development-environment/mock/mockBus.js +5 -4
  210. package/lib/development-environment/mock/mockObjects/area-trends-graph.js +3 -2
  211. package/lib/development-environment/mock/mockObjects/areaInformation.js +3 -2
  212. package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +3 -2
  213. package/lib/development-environment/mock/mockObjects/areaSitesData.js +3 -2
  214. package/lib/development-environment/mock/mockObjects/areasJson.js +3 -2
  215. package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +3 -2
  216. package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +3 -2
  217. package/lib/development-environment/mock/mockObjects/data-menuData.js +3 -2
  218. package/lib/development-environment/mock/mockObjects/data-search.js +3 -2
  219. package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +3 -2
  220. package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +3 -2
  221. package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +3 -2
  222. package/lib/development-environment/mock/mockObjects/eventsJson.js +3 -2
  223. package/lib/development-environment/mock/mockObjects/metascore.js +3 -2
  224. package/lib/development-environment/mock/mockObjects/permissionsJson.js +3 -2
  225. package/lib/development-environment/mock/mockObjects/pointsJson.js +3 -2
  226. package/lib/development-environment/mock/mockObjects/site-info.js +3 -2
  227. package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +3 -2
  228. package/lib/development-environment/togly/ToglyDashboard.js +23 -13
  229. package/lib/development-environment/togly/ToglyItem.js +31 -24
  230. package/lib/development-environment/togly/flags.js +1 -1
  231. package/lib/development-environment/togly/init.js +4 -4
  232. package/lib/development-environment/togly/macro.js +9 -13
  233. package/lib/development-environment/togly/useDoubleKeyDown.js +9 -7
  234. package/lib/development-environment/togly/useLocalStorage.js +18 -13
  235. package/lib/hooks/useApi.js +56 -20
  236. package/lib/hooks/useApiWithDashboardQuery.js +43 -23
  237. package/lib/hooks/useClickOutside.js +5 -4
  238. package/lib/hooks/useInitializeHeaders.js +6 -6
  239. package/lib/hooks/useKandoFetch.js +31 -17
  240. package/lib/hooks/useMap.js +37 -25
  241. package/lib/hooks/useNavContext.js +26 -22
  242. package/lib/hooks/useQueryURL.js +3 -2
  243. package/lib/hooks/useRemoveExistingLayers.js +8 -7
  244. package/lib/hooks/useUpdateEventBodyTail.js +19 -14
  245. package/lib/hooks/useUserTimeZone.js +31 -34
  246. package/lib/hooks/useUserTimeZone.test.js +23 -19
  247. package/lib/hooks/useWindowSize.js +14 -7
  248. package/lib/i18n/en.json +15 -3
  249. package/lib/i18n/fr.json +4 -0
  250. package/lib/i18n/he.json +12 -1
  251. package/lib/i18n/it.json +4 -0
  252. package/lib/index.js +13 -11
  253. package/lib/macros/getVersion.js +2 -2
  254. package/lib/models/IAction.js +1 -1
  255. package/lib/models/IAppState.js +1 -1
  256. package/lib/pages/AreaPage/AreaPage.js +68 -34
  257. package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +17 -15
  258. package/lib/pages/AreaPage/Dashboard/Dashboard.js +28 -26
  259. package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +23 -14
  260. package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +5 -5
  261. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +8 -8
  262. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +10 -10
  263. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +6 -4
  264. package/lib/pages/AreaPage/Dashboard/Sites/SitesResponse.interface.js +1 -1
  265. package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +3 -2
  266. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +8 -5
  267. package/lib/pages/AssessmentPage/AssessmentPage.js +46 -38
  268. package/lib/pages/CannyWidget/Feedback.js +16 -14
  269. package/lib/pages/CovidPage/CovidPage.js +16 -9
  270. package/lib/pages/CovidPage/components/Body.js +30 -26
  271. package/lib/pages/CovidPage/components/Map.js +40 -28
  272. package/lib/pages/CovidPage/components/Sidebar.js +16 -15
  273. package/lib/pages/CovidPage/components/Summary.js +29 -20
  274. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +33 -26
  275. package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +4 -3
  276. package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +76 -52
  277. package/lib/pages/CovidPage/components/TrendPopupContent/index.js +4 -3
  278. package/lib/pages/CovidPage/components/areas/Area.js +36 -24
  279. package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +46 -45
  280. package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +36 -32
  281. package/lib/pages/CovidPage/components/areas/AreasList.js +42 -29
  282. package/lib/pages/CovidPage/components/areas/Sort.js +17 -12
  283. package/lib/pages/CovidPage/components/nvlStatusHelper.js +11 -11
  284. package/lib/pages/DashboardMap/AreaCard.js +27 -27
  285. package/lib/pages/DashboardMap/AssessmentIcon.js +7 -8
  286. package/lib/pages/DashboardMap/Capacity.js +77 -28
  287. package/lib/pages/DashboardMap/FactoryCard.js +24 -28
  288. package/lib/pages/DashboardMap/HighchartsOptions.js +5 -6
  289. package/lib/pages/DashboardMap/List.js +65 -55
  290. package/lib/pages/DashboardMap/ListContext.js +19 -14
  291. package/lib/pages/DashboardMap/Loader.js +3 -3
  292. package/lib/pages/DashboardMap/SeverityBadge.js +24 -16
  293. package/lib/pages/DashboardMap/WWTPMap.js +71 -57
  294. package/lib/pages/DashboardMap/WaterDischarge.js +9 -9
  295. package/lib/pages/DashboardMap/Widget.js +67 -48
  296. package/lib/pages/DashboardMap/index.js +4 -3
  297. package/lib/pages/DashboardMap/utils.js +60 -41
  298. package/lib/pages/EventsPage/Body/Body.js +12 -15
  299. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +20 -17
  300. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +27 -16
  301. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +9 -10
  302. package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +10 -13
  303. package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +31 -22
  304. package/lib/pages/EventsPage/DragAndDropArea/index.js +4 -3
  305. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +38 -30
  306. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +23 -14
  307. package/lib/pages/EventsPage/EventsPage.js +17 -10
  308. package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +40 -26
  309. package/lib/pages/EventsPage/events/MoreInfo.js +19 -18
  310. package/lib/pages/EventsPage/events/Sidebar.js +11 -14
  311. package/lib/pages/EventsPage/events/event_info/Contaminants/Contaminants.js +10 -9
  312. package/lib/pages/EventsPage/events/event_info/Contaminants/ContaminantsList.js +24 -19
  313. package/lib/pages/EventsPage/events/event_info/Contaminants/index.js +4 -3
  314. package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +38 -31
  315. package/lib/pages/EventsPage/events/event_info/EventDetails.js +33 -35
  316. package/lib/pages/EventsPage/events/event_info/EventInfo.js +60 -50
  317. package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +5 -5
  318. package/lib/pages/EventsPage/events/event_info/EventSection.js +21 -18
  319. package/lib/pages/EventsPage/events/event_info/EventSection.test.js +23 -29
  320. package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +50 -39
  321. package/lib/pages/EventsPage/events/event_info/Header/Header.js +7 -8
  322. package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +35 -30
  323. package/lib/pages/EventsPage/events/event_info/Header/index.js +4 -3
  324. package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +7 -6
  325. package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +39 -30
  326. package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +9 -6
  327. package/lib/pages/EventsPage/events/event_info/PollutionAssessment /PollutionAssessment.js +15 -14
  328. package/lib/pages/EventsPage/events/event_info/PollutionAssessment /PollutionTypesList.js +12 -9
  329. package/lib/pages/EventsPage/events/event_info/PollutionAssessment /index.js +4 -3
  330. package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +24 -23
  331. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResult.js +22 -13
  332. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResultButton.js +6 -7
  333. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/index.js +4 -3
  334. package/lib/pages/EventsPage/events/event_info/SamplingList/SamplingDetails.js +12 -13
  335. package/lib/pages/EventsPage/events/event_info/SamplingList/Samplings.js +28 -22
  336. package/lib/pages/EventsPage/events/event_info/SamplingList/index.js +4 -3
  337. package/lib/pages/EventsPage/events/event_info/SeverityScore/ScoreExplanation.js +10 -13
  338. package/lib/pages/EventsPage/events/event_info/SeverityScore/SeverityScore.js +9 -8
  339. package/lib/pages/EventsPage/events/event_info/SeverityScore/index.js +4 -3
  340. package/lib/pages/EventsPage/events/event_info/SourceDetails/Confidence.js +9 -9
  341. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.js +5 -4
  342. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.test.js +11 -13
  343. package/lib/pages/EventsPage/events/event_info/SourceDetails/IconAndTitles.js +5 -7
  344. package/lib/pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton.js +14 -11
  345. package/lib/pages/EventsPage/events/event_info/SourceDetails/OtherSources.js +6 -7
  346. package/lib/pages/EventsPage/events/event_info/SourceDetails/PotentialSources.js +8 -9
  347. package/lib/pages/EventsPage/events/event_info/SourceDetails/SingleSource.js +8 -9
  348. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceCardBody.js +7 -8
  349. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.js +12 -13
  350. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.test.js +19 -18
  351. package/lib/pages/EventsPage/events/event_info/SourceDetails/WaterDischarge.js +7 -7
  352. package/lib/pages/EventsPage/events/event_info/Timelines/DischargeBox.js +8 -9
  353. package/lib/pages/EventsPage/events/event_info/Timelines/EarlyWarning.js +18 -19
  354. package/lib/pages/EventsPage/events/event_info/Timelines/LiveStatusBadge.js +7 -6
  355. package/lib/pages/EventsPage/events/event_info/Timelines/SeenBox.js +12 -13
  356. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.js +19 -23
  357. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.test.js +11 -12
  358. package/lib/pages/EventsPage/events/event_info/Timelines/Titles.js +7 -8
  359. package/lib/pages/EventsPage/events/event_info/Timelines/index.js +4 -3
  360. package/lib/pages/EventsPage/events/event_info/Timelines/style.js +6 -4
  361. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +40 -25
  362. package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +39 -30
  363. package/lib/pages/EventsPage/events/event_info/samplingsOld/Sampling.js +12 -13
  364. package/lib/pages/EventsPage/events/event_info/samplingsOld/Samplings.js +20 -17
  365. package/lib/pages/EventsPage/events/event_info/sources/Source.js +31 -27
  366. package/lib/pages/EventsPage/events/event_info/sources/Sources.js +27 -22
  367. package/lib/pages/EventsPage/events/event_info/styles.js +15 -21
  368. package/lib/pages/EventsPage/events/events_list/EventItem.js +21 -18
  369. package/lib/pages/EventsPage/events/events_list/EventUtils.js +11 -11
  370. package/lib/pages/EventsPage/events/events_list/EventsList.js +142 -111
  371. package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +58 -41
  372. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +135 -90
  373. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +76 -54
  374. package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +44 -39
  375. package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +41 -32
  376. package/lib/pages/EventsPage/events/events_list/Filter/SingleSelect.js +21 -19
  377. package/lib/pages/EventsPage/events/events_list/Sort.js +39 -28
  378. package/lib/pages/ImportFileWizard/FileUploadRespones.js +22 -14
  379. package/lib/pages/ImportFileWizard/ImportButtomButtons.js +8 -9
  380. package/lib/pages/ImportFileWizard/ImportFile.js +25 -21
  381. package/lib/pages/ImportFileWizard/ResponseBody.js +36 -26
  382. package/lib/pages/ImportFileWizard/ValidationForm.js +23 -23
  383. package/lib/pages/ImportFileWizard/ValidationResponse.js +25 -23
  384. package/lib/pages/ImportFileWizard/importFileUtils.js +5 -4
  385. package/lib/pages/ImportFileWizard/index.js +4 -3
  386. package/lib/pages/ImportGisPage/ImportGisContainer.js +27 -22
  387. package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +44 -38
  388. package/lib/pages/ImportGisPage/importGisUtils.js +52 -43
  389. package/lib/pages/ImportGisProcess/index.js +18 -14
  390. package/lib/pages/ImportSiteProcess/index.js +18 -14
  391. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +13 -7
  392. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +20 -18
  393. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +4 -4
  394. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +60 -28
  395. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +12 -8
  396. package/lib/pages/NotificationsPage/Notification/Notification.js +13 -17
  397. package/lib/pages/NotificationsPage/Notifications.interface.js +1 -1
  398. package/lib/pages/NotificationsPage/Notifications.mock.js +3 -2
  399. package/lib/pages/NotificationsPage/Notifications.stories.js +10 -6
  400. package/lib/pages/NotificationsPage/NotificationsPage.js +38 -19
  401. package/lib/pages/NotificationsPage/assets/index.js +10 -10
  402. package/lib/pages/NotificationsPageV2/NotificationsPage.js +101 -72
  403. package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +65 -95
  404. package/lib/pages/NotificationsPageV2/components/NotificationsForm/EventType.js +15 -13
  405. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSendVia.js +17 -19
  406. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSensors.js +22 -18
  407. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSources.js +22 -18
  408. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationTags.js +23 -19
  409. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +71 -82
  410. package/lib/pages/NotificationsPageV2/components/NotificationsForm/WaterAuthoritySelection.js +23 -19
  411. package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +74 -71
  412. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +94 -80
  413. package/lib/pages/NotificationsPageV2/notificationUtils.js +39 -40
  414. package/lib/pages/OldSitePage/IDashboardData.js +1 -1
  415. package/lib/pages/OldSitePage/OldSitePage.js +132 -56
  416. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +10 -6
  417. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +9 -5
  418. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +7 -9
  419. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +19 -16
  420. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +12 -10
  421. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +19 -12
  422. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +11 -14
  423. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +9 -5
  424. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +16 -18
  425. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +64 -51
  426. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +8 -10
  427. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +54 -29
  428. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +7 -4
  429. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +19 -12
  430. package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +11 -11
  431. package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +12 -10
  432. package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +23 -27
  433. package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +30 -28
  434. package/lib/pages/OldSitePage/SamplingParameters/models.js +1 -1
  435. package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +8 -5
  436. package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +12 -16
  437. package/lib/pages/OperationsPage/LeftPanel.js +55 -35
  438. package/lib/pages/OperationsPage/Map/Map.js +12 -12
  439. package/lib/pages/OperationsPage/Map/useMap.js +64 -52
  440. package/lib/pages/OperationsPage/OperationsContainerPage.js +59 -32
  441. package/lib/pages/OperationsPage/OperationsFilePage.js +12 -10
  442. package/lib/pages/OperationsPage/OperationsUtilityPage.js +6 -5
  443. package/lib/pages/OperationsPage/RightPanel.js +25 -22
  444. package/lib/pages/OperationsPage/index.js +4 -4
  445. package/lib/pages/PollutionRiskAssessment/FactoryDetails.js +60 -27
  446. package/lib/pages/PollutionRiskAssessment/FilterBehaviors.js +25 -19
  447. package/lib/pages/PollutionRiskAssessment/FilterButton.js +10 -11
  448. package/lib/pages/PollutionRiskAssessment/Map.js +42 -38
  449. package/lib/pages/PollutionRiskAssessment/SearchButton.js +10 -11
  450. package/lib/pages/PollutionRiskAssessment/SearchField.js +40 -26
  451. package/lib/pages/PollutionRiskAssessment/TotalSavings.js +16 -16
  452. package/lib/pages/PollutionRiskAssessment/UseCases.js +34 -32
  453. package/lib/pages/PollutionRiskAssessment/index.js +136 -76
  454. package/lib/pages/PollutionRiskAssessment/useMap.js +50 -34
  455. package/lib/pages/PollutionRiskAssessment/utils.js +7 -7
  456. package/lib/pages/ProfilePage/Container.js +4 -3
  457. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +40 -23
  458. package/lib/pages/ProfilePage/ProfilePage.js +205 -106
  459. package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +34 -25
  460. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +20 -20
  461. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +30 -27
  462. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +119 -57
  463. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +23 -18
  464. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +13 -14
  465. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +45 -40
  466. package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +24 -25
  467. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +19 -18
  468. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +18 -15
  469. package/lib/pages/SamplingsPage/DesktopActions/index.js +4 -3
  470. package/lib/pages/SamplingsPage/NavigationDropdown.js +31 -43
  471. package/lib/pages/SamplingsPage/NewSamplingAction.js +102 -75
  472. package/lib/pages/SamplingsPage/SamplingMobileModal.js +98 -124
  473. package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +25 -23
  474. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +25 -36
  475. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +61 -36
  476. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +21 -16
  477. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +9 -10
  478. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +193 -108
  479. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +54 -47
  480. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +39 -42
  481. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +39 -42
  482. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +28 -21
  483. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +6 -4
  484. package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +7 -11
  485. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +53 -51
  486. package/lib/pages/SamplingsPage/SamplingsMobileList.js +31 -22
  487. package/lib/pages/SamplingsPage/SamplingsPage.js +33 -25
  488. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +58 -49
  489. package/lib/pages/SamplingsPage/index.js +3 -2
  490. package/lib/pages/SamplingsPage/samplingsPageUtils.js +83 -52
  491. package/lib/pages/SitePage/DischargePattern/DischargePattern.js +6 -7
  492. package/lib/pages/SitePage/PollutionContributor/PollutionContributor.js +16 -16
  493. package/lib/pages/SitePage/PollutionContributor/PollutionContributorContainer.js +16 -12
  494. package/lib/pages/SitePage/PollutionContributor/contributorUtils.js +16 -16
  495. package/lib/pages/SitePage/PollutionContributor/index.js +4 -3
  496. package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +9 -5
  497. package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +15 -15
  498. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +9 -10
  499. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +24 -27
  500. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +16 -12
  501. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +33 -37
  502. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +12 -10
  503. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +25 -15
  504. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +11 -14
  505. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +9 -5
  506. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +16 -18
  507. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +71 -58
  508. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +8 -10
  509. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +27 -15
  510. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +9 -5
  511. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +19 -12
  512. package/lib/pages/SitePage/SamplingParameters/body/Body.js +9 -10
  513. package/lib/pages/SitePage/SamplingParameters/body/BodyContainer.js +40 -30
  514. package/lib/pages/SitePage/SamplingParameters/body/index.js +4 -3
  515. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +12 -11
  516. package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +12 -10
  517. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +54 -54
  518. package/lib/pages/SitePage/SamplingParameters/dataParser.js +41 -32
  519. package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +9 -11
  520. package/lib/pages/SitePage/SamplingParameters/models.js +1 -1
  521. package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +8 -5
  522. package/lib/pages/SitePage/SamplingParameters/styles/styles.js +12 -16
  523. package/lib/pages/SitePage/SiteInformation/EmptyState.js +10 -13
  524. package/lib/pages/SitePage/SiteInformation/SiteInformation.js +31 -31
  525. package/lib/pages/SitePage/SitePage.js +77 -37
  526. package/lib/pages/UploadLabResult/index.js +16 -15
  527. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +37 -27
  528. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +13 -8
  529. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +15 -11
  530. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +9 -5
  531. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +50 -47
  532. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +8 -11
  533. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +5 -4
  534. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +9 -6
  535. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +10 -11
  536. package/lib/pages/UtilityDashboardPage/MostSevereEvents/models.js +1 -1
  537. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +13 -16
  538. package/lib/pages/UtilityDashboardPage/TopBar/constants.js +8 -8
  539. package/lib/pages/UtilityDashboardPage/TopBar/styles.js +4 -3
  540. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +30 -20
  541. package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +40 -28
  542. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +17 -15
  543. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +14 -7
  544. package/lib/pages/UtilityDashboardPage/VirtualAreaDashboardPage.js +31 -26
  545. package/lib/pages/WbeDashboard/ExpandableComponent.js +9 -9
  546. package/lib/pages/WbeDashboard/GraphWrapper.js +35 -28
  547. package/lib/pages/WbeDashboard/IndividualTinyGraph.js +19 -16
  548. package/lib/pages/WbeDashboard/SearchInput.js +21 -15
  549. package/lib/pages/WbeDashboard/SummaryGraph.js +77 -50
  550. package/lib/pages/WbeDashboard/SummaryGraphModal.js +18 -20
  551. package/lib/pages/WbeDashboard/Tabs.js +11 -11
  552. package/lib/pages/WbeDashboard/WbeDashboardPage.js +210 -147
  553. package/lib/pages/WbeDashboard/WbeSummaryBar.js +48 -39
  554. package/lib/pages/WwtpPage/DashboardCard.js +21 -25
  555. package/lib/pages/WwtpPage/DischargePatternCard.js +25 -14
  556. package/lib/pages/WwtpPage/InletsCard/InletsBar.js +11 -11
  557. package/lib/pages/WwtpPage/InletsCard/InletsCard.js +22 -22
  558. package/lib/pages/WwtpPage/InletsCard/index.js +4 -3
  559. package/lib/pages/WwtpPage/Map.js +6 -6
  560. package/lib/pages/WwtpPage/OrganicCard.js +5 -4
  561. package/lib/pages/WwtpPage/PotentialSaving/ImpactCard.js +5 -4
  562. package/lib/pages/WwtpPage/PotentialSaving/PotentialItem.js +7 -8
  563. package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +11 -11
  564. package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +17 -20
  565. package/lib/pages/WwtpPage/PotentialSaving/index.js +4 -3
  566. package/lib/pages/WwtpPage/PotentialSaving/types.js +1 -1
  567. package/lib/pages/WwtpPage/PredictionCard.js +5 -4
  568. package/lib/pages/WwtpPage/TrendCard.js +22 -20
  569. package/lib/pages/WwtpPage/UpgradeBox.js +5 -4
  570. package/lib/pages/WwtpPage/WwtpPage.js +8 -9
  571. package/lib/pages/WwtpPage/WwtpPageContainer.js +19 -23
  572. package/lib/pages/WwtpPage/index.js +4 -3
  573. package/lib/providers/Slideshow/SlideshowContext.js +10 -11
  574. package/lib/providers/Slideshow/SlideshowProvider.js +40 -22
  575. package/lib/providers/Slideshow/SlideshowRunner.js +21 -18
  576. package/lib/providers/UrlHistory/UrlHistoryContext.js +6 -7
  577. package/lib/providers/UrlHistory/UrlHistoryProvider.js +13 -12
  578. package/lib/providers/UrlHistory/index.js +4 -4
  579. package/lib/providers/UrlHistory/useLastVisited.js +6 -5
  580. package/lib/react-app-env.d.js +1 -1
  581. package/lib/store/ImportGis/action.js +1 -1
  582. package/lib/store/ImportGis/actionTypes.js +5 -4
  583. package/lib/store/ImportGis/actionsCreator.js +5 -7
  584. package/lib/store/ImportGis/models/gisImports.js +1 -1
  585. package/lib/store/ImportGis/reducer.js +7 -9
  586. package/lib/store/WBE/actionTypes.js +3 -2
  587. package/lib/store/WBE/actions.js +1 -1
  588. package/lib/store/WBE/models/IAreaWBE.js +1 -1
  589. package/lib/store/WBE/models/IWBE.js +1 -1
  590. package/lib/store/WBE/models/IWBEState.js +1 -1
  591. package/lib/store/WBE/reducer.js +8 -10
  592. package/lib/store/WWTPDashboard/WWTPDashboardSlice.js +15 -24
  593. package/lib/store/WWTPDashboard/types.js +1 -1
  594. package/lib/store/areas/actionTypes.js +7 -4
  595. package/lib/store/areas/actions.js +13 -7
  596. package/lib/store/areas/models/IArea.js +1 -1
  597. package/lib/store/areas/models/IAreasState.js +1 -1
  598. package/lib/store/areas/reducer.js +6 -8
  599. package/lib/store/context/actionTypes.js +5 -3
  600. package/lib/store/context/actions.js +3 -3
  601. package/lib/store/context/contextMiddlewares.js +18 -15
  602. package/lib/store/context/models/INavContext.js +1 -1
  603. package/lib/store/context/models/INavContextState.js +1 -1
  604. package/lib/store/context/reducer.js +8 -10
  605. package/lib/store/dashboard/dashboardSlice.js +11 -18
  606. package/lib/store/dashboard/periodType.js +1 -1
  607. package/lib/store/edges/actionTypes.js +9 -5
  608. package/lib/store/edges/actions.js +8 -4
  609. package/lib/store/edges/models/IEdge.js +1 -1
  610. package/lib/store/edges/models/IEdgesState.js +1 -1
  611. package/lib/store/edges/reducer.js +17 -13
  612. package/lib/store/events/actionTypes.js +33 -17
  613. package/lib/store/events/actions.js +7 -3
  614. package/lib/store/events/models/IEvent.js +1 -1
  615. package/lib/store/events/models/IEventsState.js +1 -1
  616. package/lib/store/events/models/ISource.js +1 -1
  617. package/lib/store/events/reducer.js +39 -28
  618. package/lib/store/filters/IFilter.js +1 -1
  619. package/lib/store/filters/IFilterItem.js +1 -1
  620. package/lib/store/global/actionTypes.js +21 -11
  621. package/lib/store/global/actions.js +6 -8
  622. package/lib/store/global/models/IGlobalState.js +1 -1
  623. package/lib/store/global/reducer.js +7 -9
  624. package/lib/store/permissions/permissionsSlice.js +9 -12
  625. package/lib/store/points/actionTypes.js +5 -3
  626. package/lib/store/points/actions.js +10 -6
  627. package/lib/store/points/models/IGeoPoint.js +1 -1
  628. package/lib/store/points/models/IGroup.js +1 -1
  629. package/lib/store/points/models/IIssue.js +1 -1
  630. package/lib/store/points/models/IPoint.js +1 -1
  631. package/lib/store/points/models/IPointsState.js +1 -1
  632. package/lib/store/points/reducer.js +5 -7
  633. package/lib/store/rootActionTypes.js +3 -2
  634. package/lib/store/rootActions.js +1 -1
  635. package/lib/store/rootReducer.js +10 -12
  636. package/lib/store/rootStore.js +6 -6
  637. package/lib/store/samplings/action.js +1 -1
  638. package/lib/store/samplings/actionTypes.js +5 -4
  639. package/lib/store/samplings/actionsCreator.js +1 -1
  640. package/lib/store/samplings/models/Samplings.js +1 -1
  641. package/lib/store/samplings/reducer.js +10 -10
  642. package/lib/styles/StylesLayout.js +6 -7
  643. package/lib/styles/theme/theme.js +26 -23
  644. package/lib/test/mocks/browser.js +5 -2
  645. package/lib/test/test-utils.js +9 -12
  646. package/lib/ui-kit/Alert/KandoAlert.js +6 -8
  647. package/lib/ui-kit/Button/Button.js +83 -129
  648. package/lib/ui-kit/Button/Button.test.js +33 -27
  649. package/lib/ui-kit/Button/ButtonUtils.js +1 -1
  650. package/lib/ui-kit/Checkbox/Checkbox.js +27 -34
  651. package/lib/ui-kit/ContentCard/ContentCard.js +20 -16
  652. package/lib/ui-kit/Dashboard/Dashboard.js +28 -29
  653. package/lib/ui-kit/Dashboard/index.js +4 -3
  654. package/lib/ui-kit/DropDown/DropDown.js +22 -23
  655. package/lib/ui-kit/DropDown/DropDown.test.js +13 -13
  656. package/lib/ui-kit/DropDown/DropDownItem.js +25 -26
  657. package/lib/ui-kit/DropDown/DropdownToggle.js +10 -13
  658. package/lib/ui-kit/EmptyState/EmptyState.js +6 -7
  659. package/lib/ui-kit/HierarchyGraph/AutoFitTree.js +81 -69
  660. package/lib/ui-kit/HierarchyGraph/HierarchyGraph.js +167 -89
  661. package/lib/ui-kit/HierarchyGraph/LeafSign.js +7 -7
  662. package/lib/ui-kit/HierarchyGraph/MicroStackedBar.js +19 -17
  663. package/lib/ui-kit/HierarchyGraph/NodeIcon.js +8 -9
  664. package/lib/ui-kit/HierarchyGraph/NodeLayout.js +25 -22
  665. package/lib/ui-kit/HierarchyGraph/PollutionContributorNode.js +10 -11
  666. package/lib/ui-kit/HierarchyGraph/ScoreNode.js +9 -10
  667. package/lib/ui-kit/HierarchyGraph/index.js +4 -3
  668. package/lib/ui-kit/HierarchyGraph/utils.js +67 -57
  669. package/lib/ui-kit/IconAction/IconAction.js +8 -9
  670. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +64 -47
  671. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +49 -58
  672. package/lib/ui-kit/InletsPie/InletsPie.js +16 -17
  673. package/lib/ui-kit/InletsPie/index.js +4 -3
  674. package/lib/ui-kit/InletsPie/options.js +9 -7
  675. package/lib/ui-kit/KandoBottomSheet/KandoBottomSheet.js +38 -29
  676. package/lib/ui-kit/KandoFilter/KandoFilter.js +11 -10
  677. package/lib/ui-kit/KandoList/KandoList.js +12 -13
  678. package/lib/ui-kit/KandoList/kandoListUtils.js +1 -1
  679. package/lib/ui-kit/KandoTable/KandoTable.js +41 -48
  680. package/lib/ui-kit/KandoTable/KandoTable.test.js +27 -21
  681. package/lib/ui-kit/KandoTable/kandoTableUtils.js +1 -1
  682. package/lib/ui-kit/Layout/Layout.js +7 -8
  683. package/lib/ui-kit/MobileInput/MobileInput.js +50 -56
  684. package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +17 -14
  685. package/lib/ui-kit/ModalConfirmation/index.js +3 -2
  686. package/lib/ui-kit/OrganicEvents/GaugeChart.js +8 -9
  687. package/lib/ui-kit/OrganicEvents/OrganicEvents.js +9 -8
  688. package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +22 -26
  689. package/lib/ui-kit/OrganicEvents/TextInfo.js +13 -17
  690. package/lib/ui-kit/OrganicEvents/index.js +4 -3
  691. package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +11 -12
  692. package/lib/ui-kit/SamplingStatus/SamplingStatus.js +21 -17
  693. package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +4 -3
  694. package/lib/ui-kit/ScoreGauge/ScoreGauge.js +24 -21
  695. package/lib/ui-kit/ScoreGauge/constant.js +4 -3
  696. package/lib/ui-kit/ScoreGauge/index.js +4 -3
  697. package/lib/ui-kit/TimeLineChart/TrendChart.js +28 -25
  698. package/lib/ui-kit/TimeLineChart/index.js +4 -3
  699. package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +11 -10
  700. package/lib/ui-kit/Tooltip/Tooltip.js +9 -15
  701. package/lib/ui-kit/index.js +8 -8
  702. package/lib/ui-kit/kandoStepper/KandoStepper.js +14 -13
  703. package/lib/ui-kit/siteName/SiteName.js +11 -13
  704. package/lib/utilities/ActionUtility.js +7 -7
  705. package/lib/utilities/Alert.js +20 -23
  706. package/lib/utilities/Analytics.js +19 -19
  707. package/lib/utilities/Array.js +5 -4
  708. package/lib/utilities/Enum.js +51 -15
  709. package/lib/utilities/ErrorBoundary.js +42 -27
  710. package/lib/utilities/File.js +73 -45
  711. package/lib/utilities/GetDir.js +10 -10
  712. package/lib/utilities/KandoDate.js +15 -7
  713. package/lib/utilities/KandoModal.js +28 -16
  714. package/lib/utilities/LocalStorage.js +7 -5
  715. package/lib/utilities/ThousandsToK.js +2 -2
  716. package/lib/utilities/TimeFormat.js +23 -22
  717. package/lib/utilities/Truncate.js +27 -17
  718. package/lib/utilities/edgesMath.js +16 -15
  719. package/lib/utilities/i18n.js +6 -5
  720. package/lib/utilities/kql.js +12 -10
  721. package/lib/utilities/map/icons.js +18 -18
  722. package/lib/utilities/polylinedecorator.js +113 -88
  723. package/lib/utilities/scoreToData.js +26 -20
  724. package/lib/utilities/scoreToData.test.js +5 -5
  725. package/lib/utilities/time.js +10 -9
  726. package/lib/utilities/uploadToS3.js +12 -12
  727. package/lib/utilities/urls.js +16 -19
  728. package/package.json +9 -12
@@ -1,75 +1,98 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = void 0;
9
+ var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
9
11
  var _react = _interopRequireWildcard(require("react"));
10
12
  var _reactDataTableComponent = _interopRequireWildcard(require("react-data-table-component"));
11
13
  var _reactRedux = require("react-redux");
12
14
  var _i18n = _interopRequireDefault(require("utilities/i18n"));
13
15
  var _TrendGraphNVL = _interopRequireDefault(require("../TrendGraphNVL"));
14
- var _useKandoFetch = _interopRequireDefault(require("hooks/useKandoFetch"));
16
+ var _useKandoFetch2 = _interopRequireDefault(require("hooks/useKandoFetch"));
15
17
  var _no_results = _interopRequireDefault(require("../../../../assets/no_results.svg"));
16
18
  var _ContentLoader = require("components/ContentLoader");
17
19
  require("./styles.scss");
18
- const TABLE_ROWS_PER_PAGE = 5;
19
- const TrendPopupContent = _ref => {
20
- let {
21
- areaID,
22
- forWbeDashboard = false,
23
- isVirtualArea = false
24
- } = _ref;
25
- const navContext = (0, _reactRedux.useSelector)(state => state.nav_context_data.navContext);
26
- const waterAuthorityId = (0, _reactRedux.useSelector)(state => state.global_data.waterAuthorityId);
27
- const {
28
- data,
29
- isFetching
30
- } = (0, _useKandoFetch.default)("/api_ui/wbe_dashboard/trend_graph/area/".concat(areaID, "?water_authority_id=").concat(waterAuthorityId));
31
- const [rows, setRows] = (0, _react.useState)([]);
32
- const dir = navContext.locale === 'he' ? _reactDataTableComponent.Direction.LTR : _reactDataTableComponent.Direction.RTL;
33
- const parseRows = values => {
34
- let rows = [];
35
- for (const val of values) {
36
- rows.push({
37
- sample_id: val['sample_id'],
38
- display_date: val['display_date'],
39
- mrna_copies: val['mrna_copies'] == null ? '-' : val['mrna_copies'],
40
- status: val['status'],
41
- raw_date: val['raw_date']
42
- });
20
+ 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); }
21
+ 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; }
22
+ var TABLE_ROWS_PER_PAGE = 5;
23
+ var TrendPopupContent = function TrendPopupContent(_ref) {
24
+ var areaID = _ref.areaID,
25
+ _ref$forWbeDashboard = _ref.forWbeDashboard,
26
+ forWbeDashboard = _ref$forWbeDashboard === void 0 ? false : _ref$forWbeDashboard,
27
+ _ref$isVirtualArea = _ref.isVirtualArea,
28
+ isVirtualArea = _ref$isVirtualArea === void 0 ? false : _ref$isVirtualArea;
29
+ var navContext = (0, _reactRedux.useSelector)(function (state) {
30
+ return state.nav_context_data.navContext;
31
+ });
32
+ var waterAuthorityId = (0, _reactRedux.useSelector)(function (state) {
33
+ return state.global_data.waterAuthorityId;
34
+ });
35
+ var _useKandoFetch = (0, _useKandoFetch2.default)("/api_ui/wbe_dashboard/trend_graph/area/".concat(areaID, "?water_authority_id=").concat(waterAuthorityId)),
36
+ data = _useKandoFetch.data,
37
+ isFetching = _useKandoFetch.isFetching;
38
+ var _useState = (0, _react.useState)([]),
39
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
40
+ rows = _useState2[0],
41
+ setRows = _useState2[1];
42
+ var dir = navContext.locale === 'he' ? _reactDataTableComponent.Direction.LTR : _reactDataTableComponent.Direction.RTL;
43
+ var parseRows = function parseRows(values) {
44
+ var rows = [];
45
+ var _iterator = (0, _createForOfIteratorHelper2.default)(values),
46
+ _step;
47
+ try {
48
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
49
+ var val = _step.value;
50
+ rows.push({
51
+ sample_id: val['sample_id'],
52
+ display_date: val['display_date'],
53
+ mrna_copies: val['mrna_copies'] == null ? '-' : val['mrna_copies'],
54
+ status: val['status'],
55
+ raw_date: val['raw_date']
56
+ });
57
+ }
58
+ } catch (err) {
59
+ _iterator.e(err);
60
+ } finally {
61
+ _iterator.f();
43
62
  }
44
63
  return rows;
45
64
  };
46
- (0, _react.useEffect)(() => {
65
+ (0, _react.useEffect)(function () {
47
66
  if (!isFetching && (data === null || data === void 0 ? void 0 : data.values.length) > 0) {
48
- let dataRows = parseRows(data.values);
67
+ var dataRows = parseRows(data.values);
49
68
  // @ts-ignore
50
69
  setRows(dataRows);
51
70
  }
52
71
  }, [isFetching]);
53
- const columns = _react.default.useMemo(() => [{
54
- name: _i18n.default.t('components.area.date'),
55
- selector: 'raw_date',
56
- sortable: true,
57
- cell: row => /*#__PURE__*/_react.default.createElement("div", {
58
- "data-tag": "allowRowEvents"
59
- }, row.display_date)
60
- }, {
61
- name: _i18n.default.t('components.area.sample_id'),
62
- selector: 'sample_id',
63
- sortable: true
64
- }, {
65
- name: _i18n.default.t('components.area.mrna_copies'),
66
- selector: 'mrna_copies',
67
- sortable: true
68
- }, {
69
- name: _i18n.default.t('status'),
70
- selector: 'status',
71
- sortable: true
72
- }], []);
72
+ var columns = _react.default.useMemo(function () {
73
+ return [{
74
+ name: _i18n.default.t('components.area.date'),
75
+ selector: 'raw_date',
76
+ sortable: true,
77
+ cell: function cell(row) {
78
+ return /*#__PURE__*/_react.default.createElement("div", {
79
+ "data-tag": "allowRowEvents"
80
+ }, row.display_date);
81
+ }
82
+ }, {
83
+ name: _i18n.default.t('components.area.sample_id'),
84
+ selector: 'sample_id',
85
+ sortable: true
86
+ }, {
87
+ name: _i18n.default.t('components.area.mrna_copies'),
88
+ selector: 'mrna_copies',
89
+ sortable: true
90
+ }, {
91
+ name: _i18n.default.t('status'),
92
+ selector: 'status',
93
+ sortable: true
94
+ }];
95
+ }, []);
73
96
  return /*#__PURE__*/_react.default.createElement("div", {
74
97
  className: "trend-content"
75
98
  }, /*#__PURE__*/_react.default.createElement(_TrendGraphNVL.default, {
@@ -107,5 +130,6 @@ const TrendPopupContent = _ref => {
107
130
  className: "trend-content__no-results-text"
108
131
  }, _i18n.default.t('components.nvl_trend.no_sampling_results'))));
109
132
  };
110
- var _default = exports.default = TrendPopupContent;
111
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3REYXRhVGFibGVDb21wb25lbnQiLCJfcmVhY3RSZWR1eCIsIl9pMThuIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9UcmVuZEdyYXBoTlZMIiwiX3VzZUthbmRvRmV0Y2giLCJfbm9fcmVzdWx0cyIsIl9Db250ZW50TG9hZGVyIiwiVEFCTEVfUk9XU19QRVJfUEFHRSIsIlRyZW5kUG9wdXBDb250ZW50IiwiX3JlZiIsImFyZWFJRCIsImZvcldiZURhc2hib2FyZCIsImlzVmlydHVhbEFyZWEiLCJuYXZDb250ZXh0IiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJ3YXRlckF1dGhvcml0eUlkIiwiZ2xvYmFsX2RhdGEiLCJkYXRhIiwiaXNGZXRjaGluZyIsInVzZUthbmRvRmV0Y2giLCJjb25jYXQiLCJyb3dzIiwic2V0Um93cyIsInVzZVN0YXRlIiwiZGlyIiwibG9jYWxlIiwiRGlyZWN0aW9uIiwiTFRSIiwiUlRMIiwicGFyc2VSb3dzIiwidmFsdWVzIiwidmFsIiwicHVzaCIsInNhbXBsZV9pZCIsImRpc3BsYXlfZGF0ZSIsIm1ybmFfY29waWVzIiwic3RhdHVzIiwicmF3X2RhdGUiLCJ1c2VFZmZlY3QiLCJsZW5ndGgiLCJkYXRhUm93cyIsImNvbHVtbnMiLCJSZWFjdCIsInVzZU1lbW8iLCJuYW1lIiwiaTE4biIsInQiLCJzZWxlY3RvciIsInNvcnRhYmxlIiwiY2VsbCIsInJvdyIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiUm93TG9hZGVyIiwibWFyZ2luIiwiYmdDb2xvciIsImZnQ29sb3IiLCJkZWZhdWx0U29ydEFzYyIsImRlZmF1bHRTb3J0RmllbGRJZCIsInBhZ2luYXRpb24iLCJwYWdpbmF0aW9uUGVyUGFnZSIsImRpcmVjdGlvbiIsInBhZ2luYXRpb25Sb3dzUGVyUGFnZU9wdGlvbnMiLCJwYWdpbmF0aW9uQ29tcG9uZW50T3B0aW9ucyIsInJvd3NQZXJQYWdlVGV4dCIsInJhbmdlU2VwYXJhdG9yVGV4dCIsInNlbGVjdEFsbFJvd3NJdGVtVGV4dCIsInNyYyIsIm5vX2xhYl9yZXN1bHRzIiwiYWx0IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL0NvdmlkUGFnZS9jb21wb25lbnRzL1RyZW5kUG9wdXBDb250ZW50L1RyZW5kUG9wdXBDb250ZW50LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBEYXRhVGFibGUsIHsgRGlyZWN0aW9uIH0gZnJvbSAncmVhY3QtZGF0YS10YWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5cbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgVHJlbmRHcmFwaE5WTCBmcm9tICcuLi9UcmVuZEdyYXBoTlZMJztcbmltcG9ydCB1c2VLYW5kb0ZldGNoIGZyb20gJ3NyYy9ob29rcy91c2VLYW5kb0ZldGNoJztcbmltcG9ydCBub19sYWJfcmVzdWx0cyBmcm9tICcuLi8uLi8uLi8uLi9hc3NldHMvbm9fcmVzdWx0cy5zdmcnO1xuXG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnc3JjL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IFJvd0xvYWRlciB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0NvbnRlbnRMb2FkZXInO1xuaW1wb3J0ICcuL3N0eWxlcy5zY3NzJztcblxuY29uc3QgVEFCTEVfUk9XU19QRVJfUEFHRSA9IDU7XG5cbnR5cGUgSVByb3BzID0ge1xuICBhcmVhSUQ6IG51bWJlcjtcbiAgZm9yV2JlRGFzaGJvYXJkOiBib29sZWFuO1xuICBpc1ZpcnR1YWxBcmVhOiBib29sZWFuO1xufTtcblxuY29uc3QgVHJlbmRQb3B1cENvbnRlbnQ6IFJlYWN0LkZDPElQcm9wcz4gPSAoe1xuICBhcmVhSUQsXG4gIGZvcldiZURhc2hib2FyZCA9IGZhbHNlLFxuICBpc1ZpcnR1YWxBcmVhID0gZmFsc2UsXG59KSA9PiB7XG4gIGNvbnN0IG5hdkNvbnRleHQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5uYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQsXG4gICk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5SWQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PlxuICAgICAgc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgKTtcbiAgY29uc3QgeyBkYXRhLCBpc0ZldGNoaW5nIH0gPSB1c2VLYW5kb0ZldGNoKFxuICAgIGAvYXBpX3VpL3diZV9kYXNoYm9hcmQvdHJlbmRfZ3JhcGgvYXJlYS8ke2FyZWFJRH0/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7d2F0ZXJBdXRob3JpdHlJZH1gLFxuICApO1xuICBjb25zdCBbcm93cywgc2V0Um93c10gPSB1c2VTdGF0ZShbXSk7XG5cbiAgY29uc3QgZGlyOiBEaXJlY3Rpb24gPVxuICAgIG5hdkNvbnRleHQubG9jYWxlID09PSAnaGUnID8gRGlyZWN0aW9uLkxUUiA6IERpcmVjdGlvbi5SVEw7XG5cbiAgY29uc3QgcGFyc2VSb3dzID0gKHZhbHVlczogQXJyYXk8YW55PikgPT4ge1xuICAgIGxldCByb3dzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsIG9mIHZhbHVlcykge1xuICAgICAgcm93cy5wdXNoKHtcbiAgICAgICAgc2FtcGxlX2lkOiB2YWxbJ3NhbXBsZV9pZCddLFxuICAgICAgICBkaXNwbGF5X2RhdGU6IHZhbFsnZGlzcGxheV9kYXRlJ10sXG4gICAgICAgIG1ybmFfY29waWVzOiB2YWxbJ21ybmFfY29waWVzJ10gPT0gbnVsbCA/ICctJyA6IHZhbFsnbXJuYV9jb3BpZXMnXSxcbiAgICAgICAgc3RhdHVzOiB2YWxbJ3N0YXR1cyddLFxuICAgICAgICByYXdfZGF0ZTogdmFsWydyYXdfZGF0ZSddLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiByb3dzO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc0ZldGNoaW5nICYmIGRhdGE/LnZhbHVlcy5sZW5ndGggPiAwKSB7XG4gICAgICBsZXQgZGF0YVJvd3MgPSBwYXJzZVJvd3MoZGF0YS52YWx1ZXMpO1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgc2V0Um93cyhkYXRhUm93cyk7XG4gICAgfVxuICB9LCBbaXNGZXRjaGluZ10pO1xuXG4gIGNvbnN0IGNvbHVtbnMgPSBSZWFjdC51c2VNZW1vKFxuICAgICgpID0+IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLmFyZWEuZGF0ZScpLFxuICAgICAgICBzZWxlY3RvcjogJ3Jhd19kYXRlJyxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgZGlzcGxheV9kYXRlOiBzdHJpbmcgfSkgPT4gKFxuICAgICAgICAgIDxkaXYgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiPntyb3cuZGlzcGxheV9kYXRlfTwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLmFyZWEuc2FtcGxlX2lkJyksXG4gICAgICAgIHNlbGVjdG9yOiAnc2FtcGxlX2lkJyxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMuYXJlYS5tcm5hX2NvcGllcycpLFxuICAgICAgICBzZWxlY3RvcjogJ21ybmFfY29waWVzJyxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ3N0YXR1cycpLFxuICAgICAgICBzZWxlY3RvcjogJ3N0YXR1cycsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgfSxcbiAgICBdLFxuICAgIFtdLFxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJ0cmVuZC1jb250ZW50XCI+XG4gICAgICA8VHJlbmRHcmFwaE5WTFxuICAgICAgICBhcmVhSUQ9e2FyZWFJRH1cbiAgICAgICAgZm9yV2JlRGFzaGJvYXJkPXtmb3JXYmVEYXNoYm9hcmR9XG4gICAgICAgIGlzVmlydHVhbEFyZWE9e2lzVmlydHVhbEFyZWF9XG4gICAgICAvPlxuICAgICAgeyFmb3JXYmVEYXNoYm9hcmQgJiYgKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRhYmxlLXRpdGxlXCI+XG4gICAgICAgICAge2kxOG4udCgnY29tcG9uZW50cy5udmxfdHJlbmQuc2FtcGxpbmdfcmVzdWx0cycpfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG4gICAgICB7aXNGZXRjaGluZyA/IChcbiAgICAgICAgPFJvd0xvYWRlciBtYXJnaW49XCIyNnB4IDAgMFwiIGJnQ29sb3I9XCIjZjJmMmYyXCIgZmdDb2xvcj1cIiNmZmZcIiAvPlxuICAgICAgKSA6IHJvd3M/Lmxlbmd0aCA+IDAgPyAoXG4gICAgICAgICFmb3JXYmVEYXNoYm9hcmQgJiYgKFxuICAgICAgICAgIDxEYXRhVGFibGVcbiAgICAgICAgICAgIGNvbHVtbnM9e2NvbHVtbnN9XG4gICAgICAgICAgICBkYXRhPXtyb3dzfVxuICAgICAgICAgICAgY2xhc3NOYW1lPVwiZGF0YXRhYmxlXCJcbiAgICAgICAgICAgIGRlZmF1bHRTb3J0QXNjPXtmYWxzZX1cbiAgICAgICAgICAgIGRlZmF1bHRTb3J0RmllbGRJZD1cInJhd19kYXRlXCJcbiAgICAgICAgICAgIHBhZ2luYXRpb25cbiAgICAgICAgICAgIHBhZ2luYXRpb25QZXJQYWdlPXtUQUJMRV9ST1dTX1BFUl9QQUdFfVxuICAgICAgICAgICAgZGlyZWN0aW9uPXtkaXJ9XG4gICAgICAgICAgICBwYWdpbmF0aW9uUm93c1BlclBhZ2VPcHRpb25zPXtbNSwgMTUsIDMwLCA1MF19XG4gICAgICAgICAgICBwYWdpbmF0aW9uQ29tcG9uZW50T3B0aW9ucz17e1xuICAgICAgICAgICAgICByb3dzUGVyUGFnZVRleHQ6XG4gICAgICAgICAgICAgICAgaTE4bi50KCdjb21wb25lbnRzLmRhdGFfdGFibGUucm93c19wZXJfcGFnZScpICsgJzonLFxuICAgICAgICAgICAgICByYW5nZVNlcGFyYXRvclRleHQ6IGkxOG4udCgnY29tcG9uZW50cy5kYXRhX3RhYmxlLm9mJyksXG4gICAgICAgICAgICAgIHNlbGVjdEFsbFJvd3NJdGVtVGV4dDogaTE4bi50KCdhbGwnKSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgKVxuICAgICAgKSA6IChcbiAgICAgICAgIWZvcldiZURhc2hib2FyZCAmJiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0cmVuZC1jb250ZW50X19uby1yZXN1bHRzXCI+XG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cInRyZW5kLWNvbnRlbnRfX25vLXJlc3VsdHMtaW1nXCJcbiAgICAgICAgICAgICAgc3JjPXtub19sYWJfcmVzdWx0c31cbiAgICAgICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRyZW5kLWNvbnRlbnRfX25vLXJlc3VsdHMtdGV4dFwiPlxuICAgICAgICAgICAgICB7aTE4bi50KCdjb21wb25lbnRzLm52bF90cmVuZC5ub19zYW1wbGluZ19yZXN1bHRzJyl9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKVxuICAgICAgKX1cbiAgICA8L2Rpdj5c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
133
+ var _default = TrendPopupContent;
134
+ exports.default = _default;
135
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3REYXRhVGFibGVDb21wb25lbnQiLCJfcmVhY3RSZWR1eCIsIl9pMThuIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9UcmVuZEdyYXBoTlZMIiwiX3VzZUthbmRvRmV0Y2gyIiwiX25vX3Jlc3VsdHMiLCJfQ29udGVudExvYWRlciIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiVEFCTEVfUk9XU19QRVJfUEFHRSIsIlRyZW5kUG9wdXBDb250ZW50IiwiX3JlZiIsImFyZWFJRCIsIl9yZWYkZm9yV2JlRGFzaGJvYXJkIiwiZm9yV2JlRGFzaGJvYXJkIiwiX3JlZiRpc1ZpcnR1YWxBcmVhIiwiaXNWaXJ0dWFsQXJlYSIsIm5hdkNvbnRleHQiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwibmF2X2NvbnRleHRfZGF0YSIsIndhdGVyQXV0aG9yaXR5SWQiLCJnbG9iYWxfZGF0YSIsIl91c2VLYW5kb0ZldGNoIiwidXNlS2FuZG9GZXRjaCIsImNvbmNhdCIsImRhdGEiLCJpc0ZldGNoaW5nIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwicm93cyIsInNldFJvd3MiLCJkaXIiLCJsb2NhbGUiLCJEaXJlY3Rpb24iLCJMVFIiLCJSVEwiLCJwYXJzZVJvd3MiLCJ2YWx1ZXMiLCJfaXRlcmF0b3IiLCJfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlcjIiLCJfc3RlcCIsInMiLCJuIiwiZG9uZSIsInZhbCIsInZhbHVlIiwicHVzaCIsInNhbXBsZV9pZCIsImRpc3BsYXlfZGF0ZSIsIm1ybmFfY29waWVzIiwic3RhdHVzIiwicmF3X2RhdGUiLCJlcnIiLCJlIiwiZiIsInVzZUVmZmVjdCIsImxlbmd0aCIsImRhdGFSb3dzIiwiY29sdW1ucyIsIlJlYWN0IiwidXNlTWVtbyIsIm5hbWUiLCJpMThuIiwidCIsInNlbGVjdG9yIiwic29ydGFibGUiLCJjZWxsIiwicm93IiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsIlJvd0xvYWRlciIsIm1hcmdpbiIsImJnQ29sb3IiLCJmZ0NvbG9yIiwiZGVmYXVsdFNvcnRBc2MiLCJkZWZhdWx0U29ydEZpZWxkSWQiLCJwYWdpbmF0aW9uIiwicGFnaW5hdGlvblBlclBhZ2UiLCJkaXJlY3Rpb24iLCJwYWdpbmF0aW9uUm93c1BlclBhZ2VPcHRpb25zIiwicGFnaW5hdGlvbkNvbXBvbmVudE9wdGlvbnMiLCJyb3dzUGVyUGFnZVRleHQiLCJyYW5nZVNlcGFyYXRvclRleHQiLCJzZWxlY3RBbGxSb3dzSXRlbVRleHQiLCJzcmMiLCJub19sYWJfcmVzdWx0cyIsImFsdCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9Db3ZpZFBhZ2UvY29tcG9uZW50cy9UcmVuZFBvcHVwQ29udGVudC9UcmVuZFBvcHVwQ29udGVudC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgRGF0YVRhYmxlLCB7IERpcmVjdGlvbiB9IGZyb20gJ3JlYWN0LWRhdGEtdGFibGUtY29tcG9uZW50JztcbmltcG9ydCB7IHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuXG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IFRyZW5kR3JhcGhOVkwgZnJvbSAnLi4vVHJlbmRHcmFwaE5WTCc7XG5pbXBvcnQgdXNlS2FuZG9GZXRjaCBmcm9tICdzcmMvaG9va3MvdXNlS2FuZG9GZXRjaCc7XG5pbXBvcnQgbm9fbGFiX3Jlc3VsdHMgZnJvbSAnLi4vLi4vLi4vLi4vYXNzZXRzL25vX3Jlc3VsdHMuc3ZnJztcblxuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgeyBSb3dMb2FkZXIgfSBmcm9tICdzcmMvY29tcG9uZW50cy9Db250ZW50TG9hZGVyJztcbmltcG9ydCAnLi9zdHlsZXMuc2Nzcyc7XG5cbmNvbnN0IFRBQkxFX1JPV1NfUEVSX1BBR0UgPSA1O1xuXG50eXBlIElQcm9wcyA9IHtcbiAgYXJlYUlEOiBudW1iZXI7XG4gIGZvcldiZURhc2hib2FyZDogYm9vbGVhbjtcbiAgaXNWaXJ0dWFsQXJlYTogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFRyZW5kUG9wdXBDb250ZW50OiBSZWFjdC5GQzxJUHJvcHM+ID0gKHtcbiAgYXJlYUlELFxuICBmb3JXYmVEYXNoYm9hcmQgPSBmYWxzZSxcbiAgaXNWaXJ0dWFsQXJlYSA9IGZhbHNlLFxufSkgPT4ge1xuICBjb25zdCBuYXZDb250ZXh0ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LFxuICApO1xuICBjb25zdCB3YXRlckF1dGhvcml0eUlkID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT5cbiAgICAgIHN0YXRlLmdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsXG4gICk7XG4gIGNvbnN0IHsgZGF0YSwgaXNGZXRjaGluZyB9ID0gdXNlS2FuZG9GZXRjaChcbiAgICBgL2FwaV91aS93YmVfZGFzaGJvYXJkL3RyZW5kX2dyYXBoL2FyZWEvJHthcmVhSUR9P3dhdGVyX2F1dGhvcml0eV9pZD0ke3dhdGVyQXV0aG9yaXR5SWR9YCxcbiAgKTtcbiAgY29uc3QgW3Jvd3MsIHNldFJvd3NdID0gdXNlU3RhdGUoW10pO1xuXG4gIGNvbnN0IGRpcjogRGlyZWN0aW9uID1cbiAgICBuYXZDb250ZXh0LmxvY2FsZSA9PT0gJ2hlJyA/IERpcmVjdGlvbi5MVFIgOiBEaXJlY3Rpb24uUlRMO1xuXG4gIGNvbnN0IHBhcnNlUm93cyA9ICh2YWx1ZXM6IEFycmF5PGFueT4pID0+IHtcbiAgICBsZXQgcm93czogYW55W10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHZhbCBvZiB2YWx1ZXMpIHtcbiAgICAgIHJvd3MucHVzaCh7XG4gICAgICAgIHNhbXBsZV9pZDogdmFsWydzYW1wbGVfaWQnXSxcbiAgICAgICAgZGlzcGxheV9kYXRlOiB2YWxbJ2Rpc3BsYXlfZGF0ZSddLFxuICAgICAgICBtcm5hX2NvcGllczogdmFsWydtcm5hX2NvcGllcyddID09IG51bGwgPyAnLScgOiB2YWxbJ21ybmFfY29waWVzJ10sXG4gICAgICAgIHN0YXR1czogdmFsWydzdGF0dXMnXSxcbiAgICAgICAgcmF3X2RhdGU6IHZhbFsncmF3X2RhdGUnXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gcm93cztcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghaXNGZXRjaGluZyAmJiBkYXRhPy52YWx1ZXMubGVuZ3RoID4gMCkge1xuICAgICAgbGV0IGRhdGFSb3dzID0gcGFyc2VSb3dzKGRhdGEudmFsdWVzKTtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIHNldFJvd3MoZGF0YVJvd3MpO1xuICAgIH1cbiAgfSwgW2lzRmV0Y2hpbmddKTtcblxuICBjb25zdCBjb2x1bW5zID0gUmVhY3QudXNlTWVtbyhcbiAgICAoKSA9PiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy5hcmVhLmRhdGUnKSxcbiAgICAgICAgc2VsZWN0b3I6ICdyYXdfZGF0ZScsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IGRpc3BsYXlfZGF0ZTogc3RyaW5nIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj57cm93LmRpc3BsYXlfZGF0ZX08L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy5hcmVhLnNhbXBsZV9pZCcpLFxuICAgICAgICBzZWxlY3RvcjogJ3NhbXBsZV9pZCcsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLmFyZWEubXJuYV9jb3BpZXMnKSxcbiAgICAgICAgc2VsZWN0b3I6ICdtcm5hX2NvcGllcycsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdzdGF0dXMnKSxcbiAgICAgICAgc2VsZWN0b3I6ICdzdGF0dXMnLFxuICAgICAgICBzb3J0YWJsZTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBbXSxcbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwidHJlbmQtY29udGVudFwiPlxuICAgICAgPFRyZW5kR3JhcGhOVkxcbiAgICAgICAgYXJlYUlEPXthcmVhSUR9XG4gICAgICAgIGZvcldiZURhc2hib2FyZD17Zm9yV2JlRGFzaGJvYXJkfVxuICAgICAgICBpc1ZpcnR1YWxBcmVhPXtpc1ZpcnR1YWxBcmVhfVxuICAgICAgLz5cbiAgICAgIHshZm9yV2JlRGFzaGJvYXJkICYmIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0YWJsZS10aXRsZVwiPlxuICAgICAgICAgIHtpMThuLnQoJ2NvbXBvbmVudHMubnZsX3RyZW5kLnNhbXBsaW5nX3Jlc3VsdHMnKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuICAgICAge2lzRmV0Y2hpbmcgPyAoXG4gICAgICAgIDxSb3dMb2FkZXIgbWFyZ2luPVwiMjZweCAwIDBcIiBiZ0NvbG9yPVwiI2YyZjJmMlwiIGZnQ29sb3I9XCIjZmZmXCIgLz5cbiAgICAgICkgOiByb3dzPy5sZW5ndGggPiAwID8gKFxuICAgICAgICAhZm9yV2JlRGFzaGJvYXJkICYmIChcbiAgICAgICAgICA8RGF0YVRhYmxlXG4gICAgICAgICAgICBjb2x1bW5zPXtjb2x1bW5zfVxuICAgICAgICAgICAgZGF0YT17cm93c31cbiAgICAgICAgICAgIGNsYXNzTmFtZT1cImRhdGF0YWJsZVwiXG4gICAgICAgICAgICBkZWZhdWx0U29ydEFzYz17ZmFsc2V9XG4gICAgICAgICAgICBkZWZhdWx0U29ydEZpZWxkSWQ9XCJyYXdfZGF0ZVwiXG4gICAgICAgICAgICBwYWdpbmF0aW9uXG4gICAgICAgICAgICBwYWdpbmF0aW9uUGVyUGFnZT17VEFCTEVfUk9XU19QRVJfUEFHRX1cbiAgICAgICAgICAgIGRpcmVjdGlvbj17ZGlyfVxuICAgICAgICAgICAgcGFnaW5hdGlvblJvd3NQZXJQYWdlT3B0aW9ucz17WzUsIDE1LCAzMCwgNTBdfVxuICAgICAgICAgICAgcGFnaW5hdGlvbkNvbXBvbmVudE9wdGlvbnM9e3tcbiAgICAgICAgICAgICAgcm93c1BlclBhZ2VUZXh0OlxuICAgICAgICAgICAgICAgIGkxOG4udCgnY29tcG9uZW50cy5kYXRhX3RhYmxlLnJvd3NfcGVyX3BhZ2UnKSArICc6JyxcbiAgICAgICAgICAgICAgcmFuZ2VTZXBhcmF0b3JUZXh0OiBpMThuLnQoJ2NvbXBvbmVudHMuZGF0YV90YWJsZS5vZicpLFxuICAgICAgICAgICAgICBzZWxlY3RBbGxSb3dzSXRlbVRleHQ6IGkxOG4udCgnYWxsJyksXG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgIClcbiAgICAgICkgOiAoXG4gICAgICAgICFmb3JXYmVEYXNoYm9hcmQgJiYgKFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidHJlbmQtY29udGVudF9fbm8tcmVzdWx0c1wiPlxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ0cmVuZC1jb250ZW50X19uby1yZXN1bHRzLWltZ1wiXG4gICAgICAgICAgICAgIHNyYz17bm9fbGFiX3Jlc3VsdHN9XG4gICAgICAgICAgICAgIGFsdD1cIlwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0cmVuZC1jb250ZW50X19uby1yZXN1bHRzLXRleHRcIj5cbiAgICAgICAgICAgICAge2kxOG4udCgnY29tcG9uZW50cy5udmxfdHJlbmQubm9fc2FtcGxpbmdfcmVzdWx0cycpfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIClcbiAgICAgICl9XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBUcmVuZFBvcHVwQ29udGVudDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLHdCQUFBLEdBQUFGLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxXQUFBLEdBQUFGLE9BQUE7QUFFQSxJQUFBRyxLQUFBLEdBQUFDLHNCQUFBLENBQUFKLE9BQUE7QUFDQSxJQUFBSyxjQUFBLEdBQUFELHNCQUFBLENBQUFKLE9BQUE7QUFDQSxJQUFBTSxlQUFBLEdBQUFGLHNCQUFBLENBQUFKLE9BQUE7QUFBb0QsSUFBQU8sV0FBQSxHQUFBSCxzQkFBQSxDQUFBSixPQUFBO0FBSXBELElBQUFRLGNBQUEsR0FBQVIsT0FBQTtBQUNBQSxPQUFBO0FBQXVCLFNBQUFTLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFE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
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
8
  var _TrendPopupContent = _interopRequireDefault(require("./TrendPopupContent"));
9
- var _default = exports.default = _TrendPopupContent.default;
10
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfVHJlbmRQb3B1cENvbnRlbnQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsImRlZmF1bHQiLCJUcmVuZFBvcHVwQ29udGVudCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9Db3ZpZFBhZ2UvY29tcG9uZW50cy9UcmVuZFBvcHVwQ29udGVudC9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVHJlbmRQb3B1cENvbnRlbnQgZnJvbSAnLi9UcmVuZFBvcHVwQ29udGVudCc7XG5cbmV4cG9ydCBkZWZhdWx0IFRyZW5kUG9wdXBDb250ZW50O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsa0JBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUFvRCxJQUFBQyxRQUFBLEdBQUFDLE9BQUEsQ0FBQUMsT0FBQSxHQUVyQ0MsMEJBQWlCIiwiaWdub3JlTGlzdCI6W119
9
+ var _default = _TrendPopupContent.default;
10
+ exports.default = _default;
11
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfVHJlbmRQb3B1cENvbnRlbnQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9kZWZhdWx0IiwiVHJlbmRQb3B1cENvbnRlbnQiLCJleHBvcnRzIiwiZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9Db3ZpZFBhZ2UvY29tcG9uZW50cy9UcmVuZFBvcHVwQ29udGVudC9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVHJlbmRQb3B1cENvbnRlbnQgZnJvbSAnLi9UcmVuZFBvcHVwQ29udGVudCc7XG5cbmV4cG9ydCBkZWZhdWx0IFRyZW5kUG9wdXBDb250ZW50O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsa0JBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUFvRCxJQUFBQyxRQUFBLEdBRXJDQywwQkFBaUI7QUFBQUMsT0FBQSxDQUFBQyxPQUFBLEdBQUFILFFBQUEifQ==
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.Area = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
9
10
  var _react = _interopRequireWildcard(require("react"));
10
11
  var _reactFontawesome = require("@fortawesome/react-fontawesome");
11
12
  var _freeSolidSvgIcons = require("@fortawesome/free-solid-svg-icons");
@@ -17,28 +18,31 @@ var _TrendPopupContent = _interopRequireDefault(require("../TrendPopupContent"))
17
18
  var _useQueryURL = _interopRequireDefault(require("hooks/useQueryURL"));
18
19
  var _Truncate = _interopRequireDefault(require("utilities/Truncate"));
19
20
  var _nvlStatusHelper = require("../nvlStatusHelper");
21
+ 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); }
22
+ 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; }
20
23
  // TODO: Covid Create interface IArea
21
24
 
22
25
  /***
23
26
  * If focus_main_area is given in the URL, then trend popup for that area will be opened.
24
27
  * */
25
- const Area = props => {
26
- const {
27
- area,
28
- isSubAreasDisplayed,
29
- zoomedArea
30
- } = props;
31
- const [expanded, setExpanded] = (0, _react.useState)(false);
32
- const dispatch = (0, _reactRedux.useDispatch)();
33
- const popupAreaID = parseInt((0, _useQueryURL.default)().get('focus_main_area') || '');
34
- const displayNVLChange = () => {
28
+ var Area = function Area(props) {
29
+ var area = props.area,
30
+ isSubAreasDisplayed = props.isSubAreasDisplayed,
31
+ zoomedArea = props.zoomedArea;
32
+ var _useState = (0, _react.useState)(false),
33
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
34
+ expanded = _useState2[0],
35
+ setExpanded = _useState2[1];
36
+ var dispatch = (0, _reactRedux.useDispatch)();
37
+ var popupAreaID = parseInt((0, _useQueryURL.default)().get('focus_main_area') || '');
38
+ var displayNVLChange = function displayNVLChange() {
35
39
  if (Math.sign(area.NVL_diff_ratio) === 1) {
36
40
  return "+".concat(area.NVL_diff_ratio, "%");
37
41
  } else {
38
42
  return "".concat(area.NVL_diff_ratio, "%");
39
43
  }
40
44
  };
41
- const displaySubAreas = () => {
45
+ var displaySubAreas = function displaySubAreas() {
42
46
  if (area.sub_areas !== undefined && area.sub_areas.length !== 0) {
43
47
  dispatch((0, _actions.updateWBE)({
44
48
  focusedArea: area,
@@ -46,8 +50,8 @@ const Area = props => {
46
50
  }));
47
51
  }
48
52
  };
49
- const handleAreaClick = mobile => {
50
- const setZoomedArea = zoomedArea => {
53
+ var handleAreaClick = function handleAreaClick(mobile) {
54
+ var setZoomedArea = function setZoomedArea(zoomedArea) {
51
55
  if (area.shape_data !== undefined && area.shape_data.length !== 0) {
52
56
  if (mobile && zoomedArea !== null) {
53
57
  dispatch((0, _actions.updateWBE)({
@@ -63,30 +67,34 @@ const Area = props => {
63
67
  };
64
68
  if (zoomedArea !== null) {
65
69
  setZoomedArea(null);
66
- setTimeout(() => {
70
+ setTimeout(function () {
67
71
  setZoomedArea(area);
68
72
  }, 300);
69
73
  } else {
70
74
  setZoomedArea(area);
71
75
  }
72
76
  };
73
- const displaySamplingHistory = () => {
77
+ var displaySamplingHistory = function displaySamplingHistory() {
74
78
  // eslint-disable-next-line no-console
75
79
  console.log('sampling history');
76
80
  };
77
- const renderArea = mobile => {
81
+ var renderArea = function renderArea(mobile) {
78
82
  return /*#__PURE__*/_react.default.createElement("div", {
79
83
  className: "area ".concat(area.sampling_taken === null ? 'area--no_sampling' : '', " ").concat(expanded ? 'area--expanded' : '', " ").concat(mobile ? 'area--mobile' : 'area--desktop')
80
84
  }, /*#__PURE__*/_react.default.createElement("div", {
81
85
  className: 'area-container'
82
86
  }, /*#__PURE__*/_react.default.createElement("div", {
83
87
  className: "area__header area__header--".concat((0, _nvlStatusHelper.verbalizeNVL)(area.NVL)),
84
- onClick: () => setExpanded(!expanded)
88
+ onClick: function onClick() {
89
+ return setExpanded(!expanded);
90
+ }
85
91
  }, /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement(_Truncate.default, {
86
92
  characters: 0
87
93
  }, area.name)), area.sampling_taken !== null && /*#__PURE__*/_react.default.createElement("span", null, area.NVL, " (", displayNVLChange(), ")")), /*#__PURE__*/_react.default.createElement("div", {
88
94
  className: 'area__details',
89
- onClick: () => handleAreaClick(mobile)
95
+ onClick: function onClick() {
96
+ return handleAreaClick(mobile);
97
+ }
90
98
  }, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", {
91
99
  className: 'area__detail'
92
100
  }, _i18n.default.t('covid_view.area_details.NVL_change'), ":", ' ', /*#__PURE__*/_react.default.createElement("b", null, displayNVLChange())), /*#__PURE__*/_react.default.createElement("span", {
@@ -102,13 +110,17 @@ const Area = props => {
102
110
  }), " ", area.population)))), isSubAreasDisplayed ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null) : /*#__PURE__*/_react.default.createElement("div", {
103
111
  className: 'area__actions'
104
112
  }, /*#__PURE__*/_react.default.createElement("a", {
105
- onClick: () => displaySubAreas()
113
+ onClick: function onClick() {
114
+ return displaySubAreas();
115
+ }
106
116
  }, /*#__PURE__*/_react.default.createElement(_reactFontawesome.FontAwesomeIcon, {
107
117
  icon: _freeSolidSvgIcons.faLevelDownAlt
108
118
  }), /*#__PURE__*/_react.default.createElement("span", null, " ", _i18n.default.t('covid_view.sub_areas'))), /*#__PURE__*/_react.default.createElement("div", {
109
119
  className: "divider"
110
120
  }), /*#__PURE__*/_react.default.createElement("a", {
111
- onClick: () => displaySamplingHistory()
121
+ onClick: function onClick() {
122
+ return displaySamplingHistory();
123
+ }
112
124
  }, /*#__PURE__*/_react.default.createElement(_reactFontawesome.FontAwesomeIcon, {
113
125
  icon: _freeSolidSvgIcons.faHistory
114
126
  }), /*#__PURE__*/_react.default.createElement(_KandoModal.default, {
@@ -124,8 +136,8 @@ const Area = props => {
124
136
  includeSamplingInfo: true
125
137
  })))));
126
138
  };
127
- (0, _react.useEffect)(() => {}, [zoomedArea]);
139
+ (0, _react.useEffect)(function () {}, [zoomedArea]);
128
140
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderArea(true), renderArea(false));
129
141
  };
130
142
  exports.Area = Area;
131
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RGb250YXdlc29tZSIsIl9mcmVlU29saWRTdmdJY29ucyIsIl9yZWFjdFJlZHV4IiwiX2kxOG4iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2FjdGlvbnMiLCJfS2FuZG9Nb2RhbCIsIl9UcmVuZFBvcHVwQ29udGVudCIsIl91c2VRdWVyeVVSTCIsIl9UcnVuY2F0ZSIsIl9udmxTdGF0dXNIZWxwZXIiLCJBcmVhIiwicHJvcHMiLCJhcmVhIiwiaXNTdWJBcmVhc0Rpc3BsYXllZCIsInpvb21lZEFyZWEiLCJleHBhbmRlZCIsInNldEV4cGFuZGVkIiwidXNlU3RhdGUiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwicG9wdXBBcmVhSUQiLCJwYXJzZUludCIsInVzZVF1ZXJ5VVJMIiwiZ2V0IiwiZGlzcGxheU5WTENoYW5nZSIsIk1hdGgiLCJzaWduIiwiTlZMX2RpZmZfcmF0aW8iLCJjb25jYXQiLCJkaXNwbGF5U3ViQXJlYXMiLCJzdWJfYXJlYXMiLCJ1bmRlZmluZWQiLCJsZW5ndGgiLCJ1cGRhdGVXQkUiLCJmb2N1c2VkQXJlYSIsImhhbmRsZUFyZWFDbGljayIsIm1vYmlsZSIsInNldFpvb21lZEFyZWEiLCJzaGFwZV9kYXRhIiwic2lkZW5hdkV4cGFuZGVkIiwic2V0VGltZW91dCIsImRpc3BsYXlTYW1wbGluZ0hpc3RvcnkiLCJjb25zb2xlIiwibG9nIiwicmVuZGVyQXJlYSIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwic2FtcGxpbmdfdGFrZW4iLCJ2ZXJiYWxpemVOVkwiLCJOVkwiLCJvbkNsaWNrIiwiY2hhcmFjdGVycyIsIm5hbWUiLCJGcmFnbWVudCIsImkxOG4iLCJ0IiwibGFzdF91cGRhdGVkIiwiRGF0ZSIsInRvTG9jYWxlRGF0ZVN0cmluZyIsInN0YXR1cyIsIkZvbnRBd2Vzb21lSWNvbiIsImljb24iLCJmYVVzZXJzIiwicG9wdWxhdGlvbiIsImZhTGV2ZWxEb3duQWx0IiwiZmFIaXN0b3J5IiwiYnV0dG9uTGFiZWwiLCJvcGVuZXJDbGFzcyIsInR5cGUiLCJpc09wZW4iLCJpZCIsImNoYW5nZUhpc3RvcnkiLCJwb3B1cF9hcmVhX2lkIiwiYXJlYUlEIiwiaW5jbHVkZVNhbXBsaW5nSW5mbyIsInVzZUVmZmVjdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvcGFnZXMvQ292aWRQYWdlL2NvbXBvbmVudHMvYXJlYXMvQXJlYS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG4vLyBUT0RPOiBDb3ZpZCBDcmVhdGUgaW50ZXJmYWNlIElBcmVhXG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgZmFVc2VycyB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBmYUhpc3RvcnkgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgZmFMZXZlbERvd25BbHQgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2ggfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5cbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBJQXJlYVdCRSB9IGZyb20gJ3NyYy9zdG9yZS9XQkUvbW9kZWxzL0lBcmVhV0JFJztcbmltcG9ydCB7IHVwZGF0ZVdCRSB9IGZyb20gJ3NyYy9zdG9yZS9XQkUvYWN0aW9ucyc7XG5pbXBvcnQgS2FuZG9Nb2RhbCBmcm9tICdzcmMvY29tcG9uZW50cy9LYW5kb01vZGFsJztcbmltcG9ydCBUcmVuZFBvcHVwQ29udGVudCBmcm9tICcuLi9UcmVuZFBvcHVwQ29udGVudCc7XG5pbXBvcnQgdXNlUXVlcnlVUkwgZnJvbSAnc3JjL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCBUcnVuY2F0ZSBmcm9tICdzcmMvdXRpbGl0aWVzL1RydW5jYXRlJztcbmltcG9ydCB7IHZlcmJhbGl6ZU5WTCB9IGZyb20gJy4uL252bFN0YXR1c0hlbHBlcic7XG5cbnR5cGUgUHJvcHMgPSB7XG4gIGFyZWE6IElBcmVhV0JFO1xuICB6b29tZWRBcmVhOiBJQXJlYVdCRSB8IG51bGw7XG4gIGlzU3ViQXJlYXNEaXNwbGF5ZWQ6IGJvb2xlYW47XG59O1xuXG4vKioqXG4gKiBJZiBmb2N1c19tYWluX2FyZWEgaXMgZ2l2ZW4gaW4gdGhlIFVSTCwgdGhlbiB0cmVuZCBwb3B1cCBmb3IgdGhhdCBhcmVhIHdpbGwgYmUgb3BlbmVkLlxuICogKi9cbmV4cG9ydCBjb25zdCBBcmVhOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBhcmVhLCBpc1N1YkFyZWFzRGlzcGxheWVkLCB6b29tZWRBcmVhIH0gPSBwcm9wcztcbiAgY29uc3QgW2V4cGFuZGVkLCBzZXRFeHBhbmRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgcG9wdXBBcmVhSUQgPSBwYXJzZUludCh1c2VRdWVyeVVSTCgpLmdldCgnZm9jdXNfbWFpbl9hcmVhJykgfHwgJycpO1xuXG4gIGNvbnN0IGRpc3BsYXlOVkxDaGFuZ2UgPSAoKSA9PiB7XG4gICAgaWYgKE1hdGguc2lnbihhcmVhLk5WTF9kaWZmX3JhdGlvKSA9PT0gMSkge1xuICAgICAgcmV0dXJuIGArJHthcmVhLk5WTF9kaWZmX3JhdGlvfSVgO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gYCR7YXJlYS5OVkxfZGlmZl9yYXRpb30lYDtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZGlzcGxheVN1YkFyZWFzID0gKCkgPT4ge1xuICAgIGlmIChhcmVhLnN1Yl9hcmVhcyAhPT0gdW5kZWZpbmVkICYmIGFyZWEuc3ViX2FyZWFzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgZGlzcGF0Y2godXBkYXRlV0JFKHsgZm9jdXNlZEFyZWE6IGFyZWEsIHpvb21lZEFyZWE6IG51bGwgfSkpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVBcmVhQ2xpY2sgPSAobW9iaWxlOiBib29sZWFuKSA9PiB7XG4gICAgY29uc3Qgc2V0Wm9vbWVkQXJlYSA9ICh6b29tZWRBcmVhOiBJQXJlYVdCRSB8IG51bGwpID0+IHtcbiAgICAgIGlmIChhcmVhLnNoYXBlX2RhdGEgIT09IHVuZGVmaW5lZCAmJiBhcmVhLnNoYXBlX2RhdGEubGVuZ3RoICE9PSAwKSB7XG4gICAgICAgIGlmIChtb2JpbGUgJiYgem9vbWVkQXJlYSAhPT0gbnVsbCkge1xuICAgICAgICAgIGRpc3BhdGNoKFxuICAgICAgICAgICAgdXBkYXRlV0JFKHtcbiAgICAgICAgICAgICAgem9vbWVkQXJlYTogem9vbWVkQXJlYSxcbiAgICAgICAgICAgICAgc2lkZW5hdkV4cGFuZGVkOiBmYWxzZSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZGlzcGF0Y2godXBkYXRlV0JFKHsgem9vbWVkQXJlYTogem9vbWVkQXJlYSB9KSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgaWYgKHpvb21lZEFyZWEgIT09IG51bGwpIHtcbiAgICAgIHNldFpvb21lZEFyZWEobnVsbCk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgc2V0Wm9vbWVkQXJlYShhcmVhKTtcbiAgICAgIH0sIDMwMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFpvb21lZEFyZWEoYXJlYSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGRpc3BsYXlTYW1wbGluZ0hpc3RvcnkgPSAoKSA9PiB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICBjb25zb2xlLmxvZygnc2FtcGxpbmcgaGlzdG9yeScpO1xuICB9O1xuXG4gIGNvbnN0IHJlbmRlckFyZWEgPSAobW9iaWxlOiBib29sZWFuKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXtgYXJlYSAke1xuICAgICAgICAgIGFyZWEuc2FtcGxpbmdfdGFrZW4gPT09IG51bGwgPyAnYXJlYS0tbm9fc2FtcGxpbmcnIDogJydcbiAgICAgICAgfSAke2V4cGFuZGVkID8gJ2FyZWEtLWV4cGFuZGVkJyA6ICcnfSAke1xuICAgICAgICAgIG1vYmlsZSA/ICdhcmVhLS1tb2JpbGUnIDogJ2FyZWEtLWRlc2t0b3AnXG4gICAgICAgIH1gfVxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2FyZWEtY29udGFpbmVyJ30+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3NOYW1lPXtgYXJlYV9faGVhZGVyIGFyZWFfX2hlYWRlci0tJHt2ZXJiYWxpemVOVkwoYXJlYS5OVkwpfWB9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzZXRFeHBhbmRlZCghZXhwYW5kZWQpfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICA8VHJ1bmNhdGUgY2hhcmFjdGVycz17MH0+e2FyZWEubmFtZX08L1RydW5jYXRlPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAge2FyZWEuc2FtcGxpbmdfdGFrZW4gIT09IG51bGwgJiYgKFxuICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICB7YXJlYS5OVkx9ICh7ZGlzcGxheU5WTENoYW5nZSgpfSlcbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzc05hbWU9eydhcmVhX19kZXRhaWxzJ31cbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUFyZWFDbGljayhtb2JpbGUpfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxSZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnYXJlYV9fZGV0YWlsJ30+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnY292aWRfdmlldy5hcmVhX2RldGFpbHMuTlZMX2NoYW5nZScpfTp7JyAnfVxuICAgICAgICAgICAgICAgIDxiPntkaXNwbGF5TlZMQ2hhbmdlKCl9PC9iPlxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17J2FyZWFfX2RldGFpbCd9PlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2NvdmlkX3ZpZXcuYXJlYV9kZXRhaWxzLmxhc3RfdXBkYXRlZCcpfTp7JyAnfVxuICAgICAgICAgICAgICAgIDxiPlxuICAgICAgICAgICAgICAgICAge2FyZWEubGFzdF91cGRhdGVkID09PSBudWxsXG4gICAgICAgICAgICAgICAgICAgID8gbnVsbFxuICAgICAgICAgICAgICAgICAgICA6IG5ldyBEYXRlKGFyZWEubGFzdF91cGRhdGVkKS50b0xvY2FsZURhdGVTdHJpbmcoKX1cbiAgICAgICAgICAgICAgICA8L2I+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnYXJlYV9fZGV0YWlsJ30+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnY292aWRfdmlldy5hcmVhX2RldGFpbHMuc2FtcGxpbmdfdGFrZW4nKX06eycgJ31cbiAgICAgICAgICAgICAgICA8Yj5cbiAgICAgICAgICAgICAgICAgIHthcmVhLnNhbXBsaW5nX3Rha2VuID09PSBudWxsXG4gICAgICAgICAgICAgICAgICAgID8gbnVsbFxuICAgICAgICAgICAgICAgICAgICA6IG5ldyBEYXRlKGFyZWEuc2FtcGxpbmdfdGFrZW4pLnRvTG9jYWxlRGF0ZVN0cmluZygpfVxuICAgICAgICAgICAgICAgIDwvYj5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eydhcmVhX19kZXRhaWwnfT5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdjb3ZpZF92aWV3LmFyZWFfZGV0YWlscy5zdGF0dXMnKX06eycgJ31cbiAgICAgICAgICAgICAgICA8Yj57aTE4bi50KGBjb3ZpZF92aWV3LmFyZWFfc3RhdHVzZXMuJHthcmVhLnN0YXR1c31gKX08L2I+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnYXJlYV9fZGV0YWlsJ30+XG4gICAgICAgICAgICAgICAgPEZvbnRBd2Vzb21lSWNvbiBpY29uPXtmYVVzZXJzfSAvPiB7YXJlYS5wb3B1bGF0aW9ufVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAge2lzU3ViQXJlYXNEaXNwbGF5ZWQgPyAoXG4gICAgICAgICAgPFJlYWN0LkZyYWdtZW50IC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydhcmVhX19hY3Rpb25zJ30+XG4gICAgICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBkaXNwbGF5U3ViQXJlYXMoKX0+XG4gICAgICAgICAgICAgIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFMZXZlbERvd25BbHR9IC8+XG4gICAgICAgICAgICAgIDxzcGFuPiB7aTE4bi50KCdjb3ZpZF92aWV3LnN1Yl9hcmVhcycpfTwvc3Bhbj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGl2aWRlclwiIC8+XG4gICAgICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBkaXNwbGF5U2FtcGxpbmdIaXN0b3J5KCl9PlxuICAgICAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhSGlzdG9yeX0gLz5cbiAgICAgICAgICAgICAgPEthbmRvTW9kYWxcbiAgICAgICAgICAgICAgICBidXR0b25MYWJlbD17aTE4bi50KCdjb3ZpZF92aWV3Lk5WTF90cmVuZCcpfVxuICAgICAgICAgICAgICAgIG9wZW5lckNsYXNzPVwiaW5saW5lXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiYmlnXCJcbiAgICAgICAgICAgICAgICBpc09wZW49e3BvcHVwQXJlYUlEID09PSBhcmVhLmlkfVxuICAgICAgICAgICAgICAgIGNoYW5nZUhpc3Rvcnk9e3sgcG9wdXBfYXJlYV9pZDogYXJlYS5pZCB9fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPFRyZW5kUG9wdXBDb250ZW50XG4gICAgICAgICAgICAgICAgICBhcmVhSUQ9e2FyZWEuaWR9XG4gICAgICAgICAgICAgICAgICBpbmNsdWRlU2FtcGxpbmdJbmZvPXt0cnVlfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvS2FuZG9Nb2RhbD5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHt9LCBbem9vbWVkQXJlYV0pO1xuXG4gIHJldHVybiAoXG4gICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAge3JlbmRlckFyZWEodHJ1ZSl9XG4gICAgICB7cmVuZGVyQXJlYShmYWxzZSl9XG4gICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgKTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsaUJBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLGtCQUFBLEdBQUFGLE9BQUE7QUFHQSxJQUFBRyxXQUFBLEdBQUFILE9BQUE7QUFFQSxJ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
143
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RGb250YXdlc29tZSIsIl9mcmVlU29saWRTdmdJY29ucyIsIl9yZWFjdFJlZHV4IiwiX2kxOG4iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2FjdGlvbnMiLCJfS2FuZG9Nb2RhbCIsIl9UcmVuZFBvcHVwQ29udGVudCIsIl91c2VRdWVyeVVSTCIsIl9UcnVuY2F0ZSIsIl9udmxTdGF0dXNIZWxwZXIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkFyZWEiLCJwcm9wcyIsImFyZWEiLCJpc1N1YkFyZWFzRGlzcGxheWVkIiwiem9vbWVkQXJlYSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImV4cGFuZGVkIiwic2V0RXhwYW5kZWQiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwicG9wdXBBcmVhSUQiLCJwYXJzZUludCIsInVzZVF1ZXJ5VVJMIiwiZGlzcGxheU5WTENoYW5nZSIsIk1hdGgiLCJzaWduIiwiTlZMX2RpZmZfcmF0aW8iLCJjb25jYXQiLCJkaXNwbGF5U3ViQXJlYXMiLCJzdWJfYXJlYXMiLCJ1bmRlZmluZWQiLCJsZW5ndGgiLCJ1cGRhdGVXQkUiLCJmb2N1c2VkQXJlYSIsImhhbmRsZUFyZWFDbGljayIsIm1vYmlsZSIsInNldFpvb21lZEFyZWEiLCJzaGFwZV9kYXRhIiwic2lkZW5hdkV4cGFuZGVkIiwic2V0VGltZW91dCIsImRpc3BsYXlTYW1wbGluZ0hpc3RvcnkiLCJjb25zb2xlIiwibG9nIiwicmVuZGVyQXJlYSIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJzYW1wbGluZ190YWtlbiIsInZlcmJhbGl6ZU5WTCIsIk5WTCIsIm9uQ2xpY2siLCJjaGFyYWN0ZXJzIiwibmFtZSIsIkZyYWdtZW50IiwiaTE4biIsInQiLCJsYXN0X3VwZGF0ZWQiLCJEYXRlIiwidG9Mb2NhbGVEYXRlU3RyaW5nIiwic3RhdHVzIiwiRm9udEF3ZXNvbWVJY29uIiwiaWNvbiIsImZhVXNlcnMiLCJwb3B1bGF0aW9uIiwiZmFMZXZlbERvd25BbHQiLCJmYUhpc3RvcnkiLCJidXR0b25MYWJlbCIsIm9wZW5lckNsYXNzIiwidHlwZSIsImlzT3BlbiIsImlkIiwiY2hhbmdlSGlzdG9yeSIsInBvcHVwX2FyZWFfaWQiLCJhcmVhSUQiLCJpbmNsdWRlU2FtcGxpbmdJbmZvIiwidXNlRWZmZWN0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9Db3ZpZFBhZ2UvY29tcG9uZW50cy9hcmVhcy9BcmVhLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0Jztcbi8vIFRPRE86IENvdmlkIENyZWF0ZSBpbnRlcmZhY2UgSUFyZWFcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9yZWFjdC1mb250YXdlc29tZSc7XG5pbXBvcnQgeyBmYVVzZXJzIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcbmltcG9ydCB7IGZhSGlzdG9yeSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBmYUxldmVsRG93bkFsdCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcblxuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IElBcmVhV0JFIH0gZnJvbSAnc3JjL3N0b3JlL1dCRS9tb2RlbHMvSUFyZWFXQkUnO1xuaW1wb3J0IHsgdXBkYXRlV0JFIH0gZnJvbSAnc3JjL3N0b3JlL1dCRS9hY3Rpb25zJztcbmltcG9ydCBLYW5kb01vZGFsIGZyb20gJ3NyYy9jb21wb25lbnRzL0thbmRvTW9kYWwnO1xuaW1wb3J0IFRyZW5kUG9wdXBDb250ZW50IGZyb20gJy4uL1RyZW5kUG9wdXBDb250ZW50JztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICdzcmMvaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IFRydW5jYXRlIGZyb20gJ3NyYy91dGlsaXRpZXMvVHJ1bmNhdGUnO1xuaW1wb3J0IHsgdmVyYmFsaXplTlZMIH0gZnJvbSAnLi4vbnZsU3RhdHVzSGVscGVyJztcblxudHlwZSBQcm9wcyA9IHtcbiAgYXJlYTogSUFyZWFXQkU7XG4gIHpvb21lZEFyZWE6IElBcmVhV0JFIHwgbnVsbDtcbiAgaXNTdWJBcmVhc0Rpc3BsYXllZDogYm9vbGVhbjtcbn07XG5cbi8qKipcbiAqIElmIGZvY3VzX21haW5fYXJlYSBpcyBnaXZlbiBpbiB0aGUgVVJMLCB0aGVuIHRyZW5kIHBvcHVwIGZvciB0aGF0IGFyZWEgd2lsbCBiZSBvcGVuZWQuXG4gKiAqL1xuZXhwb3J0IGNvbnN0IEFyZWE6IFJlYWN0LkZDPFByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7IGFyZWEsIGlzU3ViQXJlYXNEaXNwbGF5ZWQsIHpvb21lZEFyZWEgfSA9IHByb3BzO1xuICBjb25zdCBbZXhwYW5kZWQsIHNldEV4cGFuZGVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBwb3B1cEFyZWFJRCA9IHBhcnNlSW50KHVzZVF1ZXJ5VVJMKCkuZ2V0KCdmb2N1c19tYWluX2FyZWEnKSB8fCAnJyk7XG5cbiAgY29uc3QgZGlzcGxheU5WTENoYW5nZSA9ICgpID0+IHtcbiAgICBpZiAoTWF0aC5zaWduKGFyZWEuTlZMX2RpZmZfcmF0aW8pID09PSAxKSB7XG4gICAgICByZXR1cm4gYCske2FyZWEuTlZMX2RpZmZfcmF0aW99JWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBgJHthcmVhLk5WTF9kaWZmX3JhdGlvfSVgO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBkaXNwbGF5U3ViQXJlYXMgPSAoKSA9PiB7XG4gICAgaWYgKGFyZWEuc3ViX2FyZWFzICE9PSB1bmRlZmluZWQgJiYgYXJlYS5zdWJfYXJlYXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICBkaXNwYXRjaCh1cGRhdGVXQkUoeyBmb2N1c2VkQXJlYTogYXJlYSwgem9vbWVkQXJlYTogbnVsbCB9KSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUFyZWFDbGljayA9IChtb2JpbGU6IGJvb2xlYW4pID0+IHtcbiAgICBjb25zdCBzZXRab29tZWRBcmVhID0gKHpvb21lZEFyZWE6IElBcmVhV0JFIHwgbnVsbCkgPT4ge1xuICAgICAgaWYgKGFyZWEuc2hhcGVfZGF0YSAhPT0gdW5kZWZpbmVkICYmIGFyZWEuc2hhcGVfZGF0YS5sZW5ndGggIT09IDApIHtcbiAgICAgICAgaWYgKG1vYmlsZSAmJiB6b29tZWRBcmVhICE9PSBudWxsKSB7XG4gICAgICAgICAgZGlzcGF0Y2goXG4gICAgICAgICAgICB1cGRhdGVXQkUoe1xuICAgICAgICAgICAgICB6b29tZWRBcmVhOiB6b29tZWRBcmVhLFxuICAgICAgICAgICAgICBzaWRlbmF2RXhwYW5kZWQ6IGZhbHNlLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBkaXNwYXRjaCh1cGRhdGVXQkUoeyB6b29tZWRBcmVhOiB6b29tZWRBcmVhIH0pKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAoem9vbWVkQXJlYSAhPT0gbnVsbCkge1xuICAgICAgc2V0Wm9vbWVkQXJlYShudWxsKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBzZXRab29tZWRBcmVhKGFyZWEpO1xuICAgICAgfSwgMzAwKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc2V0Wm9vbWVkQXJlYShhcmVhKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZGlzcGxheVNhbXBsaW5nSGlzdG9yeSA9ICgpID0+IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgIGNvbnNvbGUubG9nKCdzYW1wbGluZyBoaXN0b3J5Jyk7XG4gIH07XG5cbiAgY29uc3QgcmVuZGVyQXJlYSA9IChtb2JpbGU6IGJvb2xlYW4pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e2BhcmVhICR7XG4gICAgICAgICAgYXJlYS5zYW1wbGluZ190YWtlbiA9PT0gbnVsbCA/ICdhcmVhLS1ub19zYW1wbGluZycgOiAnJ1xuICAgICAgICB9ICR7ZXhwYW5kZWQgPyAnYXJlYS0tZXhwYW5kZWQnIDogJyd9ICR7XG4gICAgICAgICAgbW9iaWxlID8gJ2FyZWEtLW1vYmlsZScgOiAnYXJlYS0tZGVza3RvcCdcbiAgICAgICAgfWB9XG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnYXJlYS1jb250YWluZXInfT5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzc05hbWU9e2BhcmVhX19oZWFkZXIgYXJlYV9faGVhZGVyLS0ke3ZlcmJhbGl6ZU5WTChhcmVhLk5WTCl9YH1cbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNldEV4cGFuZGVkKCFleHBhbmRlZCl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgIDxUcnVuY2F0ZSBjaGFyYWN0ZXJzPXswfT57YXJlYS5uYW1lfTwvVHJ1bmNhdGU+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICB7YXJlYS5zYW1wbGluZ190YWtlbiAhPT0gbnVsbCAmJiAoXG4gICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgIHthcmVhLk5WTH0gKHtkaXNwbGF5TlZMQ2hhbmdlKCl9KVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzTmFtZT17J2FyZWFfX2RldGFpbHMnfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlQXJlYUNsaWNrKG1vYmlsZSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eydhcmVhX19kZXRhaWwnfT5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdjb3ZpZF92aWV3LmFyZWFfZGV0YWlscy5OVkxfY2hhbmdlJyl9OnsnICd9XG4gICAgICAgICAgICAgICAgPGI+e2Rpc3BsYXlOVkxDaGFuZ2UoKX08L2I+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnYXJlYV9fZGV0YWlsJ30+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnY292aWRfdmlldy5hcmVhX2RldGFpbHMubGFzdF91cGRhdGVkJyl9OnsnICd9XG4gICAgICAgICAgICAgICAgPGI+XG4gICAgICAgICAgICAgICAgICB7YXJlYS5sYXN0X3VwZGF0ZWQgPT09IG51bGxcbiAgICAgICAgICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICAgICAgICAgIDogbmV3IERhdGUoYXJlYS5sYXN0X3VwZGF0ZWQpLnRvTG9jYWxlRGF0ZVN0cmluZygpfVxuICAgICAgICAgICAgICAgIDwvYj5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eydhcmVhX19kZXRhaWwnfT5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdjb3ZpZF92aWV3LmFyZWFfZGV0YWlscy5zYW1wbGluZ190YWtlbicpfTp7JyAnfVxuICAgICAgICAgICAgICAgIDxiPlxuICAgICAgICAgICAgICAgICAge2FyZWEuc2FtcGxpbmdfdGFrZW4gPT09IG51bGxcbiAgICAgICAgICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICAgICAgICAgIDogbmV3IERhdGUoYXJlYS5zYW1wbGluZ190YWtlbikudG9Mb2NhbGVEYXRlU3RyaW5nKCl9XG4gICAgICAgICAgICAgICAgPC9iPlxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17J2FyZWFfX2RldGFpbCd9PlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2NvdmlkX3ZpZXcuYXJlYV9kZXRhaWxzLnN0YXR1cycpfTp7JyAnfVxuICAgICAgICAgICAgICAgIDxiPntpMThuLnQoYGNvdmlkX3ZpZXcuYXJlYV9zdGF0dXNlcy4ke2FyZWEuc3RhdHVzfWApfTwvYj5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eydhcmVhX19kZXRhaWwnfT5cbiAgICAgICAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhVXNlcnN9IC8+IHthcmVhLnBvcHVsYXRpb259XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvUmVhY3QuRnJhZ21lbnQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB7aXNTdWJBcmVhc0Rpc3BsYXllZCA/IChcbiAgICAgICAgICA8UmVhY3QuRnJhZ21lbnQgLz5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2FyZWFfX2FjdGlvbnMnfT5cbiAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IGRpc3BsYXlTdWJBcmVhcygpfT5cbiAgICAgICAgICAgICAgPEZvbnRBd2Vzb21lSWNvbiBpY29uPXtmYUxldmVsRG93bkFsdH0gLz5cbiAgICAgICAgICAgICAgPHNwYW4+IHtpMThuLnQoJ2NvdmlkX3ZpZXcuc3ViX2FyZWFzJyl9PC9zcGFuPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkaXZpZGVyXCIgLz5cbiAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IGRpc3BsYXlTYW1wbGluZ0hpc3RvcnkoKX0+XG4gICAgICAgICAgICAgIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFIaXN0b3J5fSAvPlxuICAgICAgICAgICAgICA8S2FuZG9Nb2RhbFxuICAgICAgICAgICAgICAgIGJ1dHRvbkxhYmVsPXtpMThuLnQoJ2NvdmlkX3ZpZXcuTlZMX3RyZW5kJyl9XG4gICAgICAgICAgICAgICAgb3BlbmVyQ2xhc3M9XCJpbmxpbmVcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJiaWdcIlxuICAgICAgICAgICAgICAgIGlzT3Blbj17cG9wdXBBcmVhSUQgPT09IGFyZWEuaWR9XG4gICAgICAgICAgICAgICAgY2hhbmdlSGlzdG9yeT17eyBwb3B1cF9hcmVhX2lkOiBhcmVhLmlkIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8VHJlbmRQb3B1cENvbnRlbnRcbiAgICAgICAgICAgICAgICAgIGFyZWFJRD17YXJlYS5pZH1cbiAgICAgICAgICAgICAgICAgIGluY2x1ZGVTYW1wbGluZ0luZm89e3RydWV9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9LYW5kb01vZGFsPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge30sIFt6b29tZWRBcmVhXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICB7cmVuZGVyQXJlYSh0cnVlKX1cbiAgICAgIHtyZW5kZXJBcmVhKGZhbHNlKX1cbiAgICA8L1JlYWN0LkZyYWdtZW50PlxuICApO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsaUJBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLGtCQUFBLEdBQUFGLE9BQUE7QUFHQSxJQUFBRyxXQUFBLEdBQUFILE9BQUE7QUFFQSxJQUFBSSxLQUFBLEdBQUFDLHNCQUFBLENBQUFMLE9BQUE7QUFFQSxJQUFBTSxRQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxXQUFBLEdBQUFGLHNCQUFBLENBQUFMLE9BQUE7QUFDQSxJQUFBUSxrQkFBQSxHQUFBSCxzQkFBQSxDQUFBTCxPQUFBO0FBQ0EsSUFBQVMsWUFBQSxHQUFBSixzQkFBQSxDQUFBTCxPQUFBO0FBQ0EsSUFBQVUsU0FBQSxHQUFBTCxzQkFBQSxDQUFBTCxPQUFBO0FBQ0EsSUFBQVcsZ0JBQUEsR0FBQVgsT0FBQTtBQUFrRCxTQUFBWSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQWQsd0JBQUFrQixHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFB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