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

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 +40 -81
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +24 -35
  3. package/lib/Widgets/EventsRow/EventsRow.js +26 -39
  4. package/lib/Widgets/Map/GraphUtils.js +4 -6
  5. package/lib/Widgets/Map/Map.js +100 -139
  6. package/lib/Widgets/Map/MapUtils.js +83 -102
  7. package/lib/Widgets/Map/areas/AreaPolygon.js +57 -84
  8. package/lib/Widgets/Map/areas/AreaPolygons.js +23 -25
  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 +32 -41
  12. package/lib/Widgets/Map/edges/Edges.js +19 -24
  13. package/lib/Widgets/Map/edges/arrows/Arrows.js +24 -45
  14. package/lib/Widgets/Map/events/Event.js +15 -14
  15. package/lib/Widgets/Map/events/EventIndicator.js +66 -63
  16. package/lib/Widgets/Map/events/EventPath.js +33 -34
  17. package/lib/Widgets/Map/events/EventUtils.js +54 -78
  18. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +17 -19
  19. package/lib/Widgets/Map/events/PointOfEvent.js +27 -36
  20. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +29 -39
  21. package/lib/Widgets/Map/events/Snail.js +10 -11
  22. package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +77 -79
  23. package/lib/Widgets/Map/map/FloatingGraph.js +24 -21
  24. package/lib/Widgets/Map/map/GraphDateButton.js +27 -20
  25. package/lib/Widgets/Map/matchGraph/MatchGraph.js +14 -14
  26. package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +17 -16
  27. package/lib/Widgets/Map/points/PointIcon.js +23 -22
  28. package/lib/Widgets/Map/points/PointMarker.js +68 -88
  29. package/lib/Widgets/Map/points/PointMarkers.js +30 -36
  30. package/lib/Widgets/Map/points/PointUtils.js +76 -90
  31. package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +25 -43
  32. package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +11 -11
  33. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +11 -14
  34. package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +4 -6
  35. package/lib/Widgets/MostPolluting/Areas/Areas.js +28 -60
  36. package/lib/Widgets/MostPolluting/Areas/areas.mock.js +3 -4
  37. package/lib/Widgets/MostPolluting/Areas/areasResponse.interface.js +1 -1
  38. package/lib/Widgets/MostPolluting/Areas/styles.js +4 -6
  39. package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +12 -9
  40. package/lib/Widgets/MostPolluting/Factories/Factories.js +33 -65
  41. package/lib/Widgets/MostPolluting/Factories/FactoryBox/CardLayout.js +15 -20
  42. package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +15 -20
  43. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +9 -10
  44. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +13 -11
  45. package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +4 -6
  46. package/lib/Widgets/MostPolluting/Factories/factories.mock.js +2 -3
  47. package/lib/Widgets/MostPolluting/Factories/factoriesResponse.interface.js +1 -1
  48. package/lib/Widgets/MostPolluting/Factories/styles.js +4 -6
  49. package/lib/Widgets/MostPolluting/MostPolluting.js +23 -34
  50. package/lib/Widgets/MostPolluting/MostPolluting.stories.js +20 -32
  51. package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +7 -5
  52. package/lib/Widgets/MostPolluting/ShowMore/styles.js +7 -6
  53. package/lib/Widgets/MostPolluting/assets/index.js +12 -12
  54. package/lib/Widgets/MostPolluting/components/ChangePercent.js +20 -14
  55. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +36 -31
  56. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +49 -54
  57. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +44 -40
  58. package/lib/Widgets/MostPolluting/components/PotentialImpact.js +28 -27
  59. package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +53 -49
  60. package/lib/Widgets/MostPolluting/models.js +1 -1
  61. package/lib/Widgets/MostPolluting/styles.js +4 -6
  62. package/lib/Widgets/PotentialImpactSummary/Back/Back.js +8 -6
  63. package/lib/Widgets/PotentialImpactSummary/Icon.js +30 -39
  64. package/lib/Widgets/PotentialImpactSummary/index.js +20 -28
  65. package/lib/Widgets/PotentialImpactSummary/index.test.js +48 -54
  66. package/lib/Widgets/PotentialImpactSummary/styles.js +8 -13
  67. package/lib/Widgets/PotentialImpactSummary/useCasesResponse.interface.js +1 -1
  68. package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +10 -8
  69. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +23 -18
  70. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +34 -31
  71. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +28 -26
  72. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +35 -38
  73. package/lib/Widgets/QualitySummary/QualitySummary.js +10 -14
  74. package/lib/Widgets/QualitySummary/qualitySummary.mock.js +4 -7
  75. package/lib/Widgets/QualitySummary/qualitySummaryResponse.interface.js +1 -1
  76. package/lib/Widgets/QualitySummary/styles.js +24 -21
  77. package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +12 -14
  78. package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +25 -25
  79. package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +26 -21
  80. package/lib/Widgets/UtilityInformation/UtilityInformation.js +23 -36
  81. package/lib/Widgets/UtilityInformation/UtilityInformationResponse.interface.js +1 -1
  82. package/lib/Widgets/UtilityInformation/styles.js +30 -31
  83. package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +3 -5
  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 +10 -11
  90. package/lib/components/ApplyButton/index.js +3 -4
  91. package/lib/components/Backdrop/Backdrop.js +7 -5
  92. package/lib/components/ContentLoader/ContentLoader.js +12 -10
  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 +5 -9
  96. package/lib/components/CustomInputs/DoubleTabs/styles.js +21 -16
  97. package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +12 -20
  98. package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +7 -6
  99. package/lib/components/CustomInputs/Search/Search.js +37 -60
  100. package/lib/components/CustomInputs/Search/index.js +3 -4
  101. package/lib/components/CustomInputs/Select/Select.js +38 -55
  102. package/lib/components/CustomInputs/Select/Select.stories.js +6 -10
  103. package/lib/components/DamageType/DamageType.js +35 -60
  104. package/lib/components/DamageType/index.js +3 -4
  105. package/lib/components/DataLoaderError/DataLoaderError.js +9 -7
  106. package/lib/components/DischargeHeatmap/DischargeHeatmap.js +11 -13
  107. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +72 -73
  108. package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +25 -37
  109. package/lib/components/DischargeHeatmap/HighchartsOptions.js +12 -16
  110. package/lib/components/DischargeHeatmap/index.js +3 -4
  111. package/lib/components/DischargeHeatmap/mocks/handlers.js +5 -6
  112. package/lib/components/DischargeHeatmap/popupText.js +11 -12
  113. package/lib/components/DischargeHeatmap/titles.js +4 -6
  114. package/lib/components/DischargeHeatmap/types.js +1 -1
  115. package/lib/components/ErrorBoundary.js +27 -42
  116. package/lib/components/Events/Events.js +29 -48
  117. package/lib/components/Events/index.js +3 -4
  118. package/lib/components/Graph/Graph.js +74 -95
  119. package/lib/components/Graph/index.js +3 -4
  120. package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +19 -24
  121. package/lib/components/Header/Breadcrumbs/index.js +3 -4
  122. package/lib/components/Header/DoubleTabs/DoubleTabs.js +18 -28
  123. package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +5 -9
  124. package/lib/components/Header/DoubleTabs/styles.js +5 -8
  125. package/lib/components/Header/Header.js +3 -3
  126. package/lib/components/Header/Header.stories.js +5 -9
  127. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +24 -36
  128. package/lib/components/Header/InfoBar/InfoBar.js +69 -102
  129. package/lib/components/Header/InfoBar/Search/Control.js +11 -10
  130. package/lib/components/Header/InfoBar/Search/GroupLabel.js +8 -7
  131. package/lib/components/Header/InfoBar/Search/Search.js +17 -24
  132. package/lib/components/Header/InfoBar/Search/SearchContainer.js +21 -35
  133. package/lib/components/Header/InfoBar/Search/index.js +3 -4
  134. package/lib/components/Header/InfoBar/Search/searchStyle.js +36 -49
  135. package/lib/components/Header/InfoBar/TimeFilter.js +13 -17
  136. package/lib/components/Header/InfoBar/types.js +1 -1
  137. package/lib/components/Header/KandoNavbar/KandoNavbar.js +66 -93
  138. package/lib/components/Header/KandoNavbar/index.js +3 -4
  139. package/lib/components/Header/Slideshow/Slideshow.js +67 -91
  140. package/lib/components/Header/Slideshow/index.js +3 -4
  141. package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +7 -5
  142. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +22 -24
  143. package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +17 -17
  144. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +36 -42
  145. package/lib/components/Header/Toolbar/Toolbar.js +58 -76
  146. package/lib/components/InfoBar/InfoBar.js +10 -24
  147. package/lib/components/InfoBar/InfoBar.stories.js +5 -9
  148. package/lib/components/KandoModal/KandoModal.js +26 -62
  149. package/lib/components/KandoModal/index.js +3 -4
  150. package/lib/components/Link.js +9 -8
  151. package/lib/components/Links/CustomRedirect/CustomRedirect.js +10 -7
  152. package/lib/components/Links/StyledLink/StyledLink.js +17 -20
  153. package/lib/components/Links/StyledNavLink/StyledNavLink.js +12 -10
  154. package/lib/components/LiveEvents/CarouselSlide.js +11 -10
  155. package/lib/components/LiveEvents/LiveEvents.js +7 -6
  156. package/lib/components/LiveEvents/index.js +3 -4
  157. package/lib/components/LoaderByPercent/LoaderByPercent.js +37 -30
  158. package/lib/components/Map/Map.js +20 -25
  159. package/lib/components/Map/index.js +3 -4
  160. package/lib/components/Modal/Modal.js +10 -10
  161. package/lib/components/NarrowHeader.js +18 -32
  162. package/lib/components/PointInfo/PointInfo.js +20 -19
  163. package/lib/components/PointInfo/index.js +3 -4
  164. package/lib/components/PopupModal/PopupModal.js +13 -17
  165. package/lib/components/PopupModal/PopupModal.stories.js +17 -24
  166. package/lib/components/Sector/Sector.js +34 -40
  167. package/lib/components/Sector/Sector.test.js +24 -24
  168. package/lib/components/Sector/SectorIconsNew.js +26 -19
  169. package/lib/components/Sector/index.js +3 -4
  170. package/lib/components/Sector/sectorIcons.js +4 -5
  171. package/lib/components/SevereEvent/Eta/Eta.js +49 -54
  172. package/lib/components/SevereEvent/Eta/styles.js +11 -8
  173. package/lib/components/SevereEvent/SevereEvent.js +28 -52
  174. package/lib/components/SevereEvent/SevereEvent.scss +0 -24
  175. package/lib/components/Spinner/Spinner.js +8 -8
  176. package/lib/components/Spinner/Spinner.stories.js +6 -11
  177. package/lib/components/Spinner/index.js +3 -4
  178. package/lib/components/Spinner/styles.js +21 -16
  179. package/lib/components/Tabs/Tabs.js +18 -31
  180. package/lib/components/Tabs/Tabs.stories.js +6 -10
  181. package/lib/components/Tabs/assets/index.js +6 -6
  182. package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +13 -18
  183. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +32 -45
  184. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +20 -34
  185. package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +3 -4
  186. package/lib/components/TimeRangeSelector/TimeRangeHelper.js +17 -22
  187. package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +13 -14
  188. package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +3 -4
  189. package/lib/components/TimeRangeSelector/TimeRangeList.js +24 -27
  190. package/lib/components/TimeRangeSelector/TimeRangeOptions.js +17 -27
  191. package/lib/components/TimeRangeSelector/TimeRangeSelector.js +26 -31
  192. package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +6 -10
  193. package/lib/components/TimeRangeSelector/constants.js +3 -5
  194. package/lib/components/TimeRangeSelector/index.js +3 -4
  195. package/lib/components/Toggle/Toggle.js +11 -18
  196. package/lib/components/Toggle/index.js +3 -4
  197. package/lib/components/TrendGraph/TrendGraph.js +24 -42
  198. package/lib/components/TrendGraph/index.js +3 -4
  199. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +26 -33
  200. package/lib/components/TrendGraphNVL/index.js +3 -4
  201. package/lib/development-environment/index.js +9 -13
  202. package/lib/development-environment/mock/browser.js +2 -5
  203. package/lib/development-environment/mock/get.js +8 -10
  204. package/lib/development-environment/mock/handlers.js +2 -3
  205. package/lib/development-environment/mock/mockBus.js +4 -5
  206. package/lib/development-environment/mock/mockObjects/area-trends-graph.js +2 -3
  207. package/lib/development-environment/mock/mockObjects/areaInformation.js +2 -3
  208. package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +2 -3
  209. package/lib/development-environment/mock/mockObjects/areaSitesData.js +2 -3
  210. package/lib/development-environment/mock/mockObjects/areasJson.js +2 -3
  211. package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +2 -3
  212. package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +2 -3
  213. package/lib/development-environment/mock/mockObjects/data-menuData.js +2 -3
  214. package/lib/development-environment/mock/mockObjects/data-search.js +2 -3
  215. package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +2 -3
  216. package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +2 -3
  217. package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +2 -3
  218. package/lib/development-environment/mock/mockObjects/eventsJson.js +2 -3
  219. package/lib/development-environment/mock/mockObjects/metascore.js +2 -3
  220. package/lib/development-environment/mock/mockObjects/permissionsJson.js +2 -3
  221. package/lib/development-environment/mock/mockObjects/pointsJson.js +2 -3
  222. package/lib/development-environment/mock/mockObjects/site-info.js +2 -3
  223. package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +2 -3
  224. package/lib/development-environment/togly/ToglyDashboard.js +13 -23
  225. package/lib/development-environment/togly/ToglyItem.js +24 -31
  226. package/lib/development-environment/togly/flags.js +1 -1
  227. package/lib/development-environment/togly/init.js +4 -4
  228. package/lib/development-environment/togly/macro.js +13 -9
  229. package/lib/development-environment/togly/useDoubleKeyDown.js +7 -9
  230. package/lib/development-environment/togly/useLocalStorage.js +13 -18
  231. package/lib/hooks/useApi.js +20 -56
  232. package/lib/hooks/useApiWithDashboardQuery.js +23 -43
  233. package/lib/hooks/useClickOutside.js +4 -5
  234. package/lib/hooks/useInitializeHeaders.js +6 -6
  235. package/lib/hooks/useKandoFetch.js +17 -31
  236. package/lib/hooks/useMap.js +25 -37
  237. package/lib/hooks/useNavContext.js +22 -26
  238. package/lib/hooks/useQueryURL.js +2 -3
  239. package/lib/hooks/useRemoveExistingLayers.js +7 -8
  240. package/lib/hooks/useUpdateEventBodyTail.js +14 -19
  241. package/lib/hooks/useUserTimeZone.js +34 -31
  242. package/lib/hooks/useUserTimeZone.test.js +19 -23
  243. package/lib/hooks/useWindowSize.js +7 -14
  244. package/lib/i18n/en.json +3 -15
  245. package/lib/i18n/fr.json +0 -4
  246. package/lib/i18n/he.json +1 -12
  247. package/lib/i18n/it.json +0 -4
  248. package/lib/index.js +11 -13
  249. package/lib/macros/getVersion.js +2 -2
  250. package/lib/models/IAction.js +1 -1
  251. package/lib/models/IAppState.js +1 -1
  252. package/lib/pages/AreaPage/AreaPage.js +34 -68
  253. package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +15 -17
  254. package/lib/pages/AreaPage/Dashboard/Dashboard.js +26 -28
  255. package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +14 -23
  256. package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +5 -5
  257. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +8 -8
  258. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +10 -10
  259. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +4 -6
  260. package/lib/pages/AreaPage/Dashboard/Sites/SitesResponse.interface.js +1 -1
  261. package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +2 -3
  262. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +5 -8
  263. package/lib/pages/AssessmentPage/AssessmentPage.js +38 -46
  264. package/lib/pages/CannyWidget/Feedback.js +14 -16
  265. package/lib/pages/CovidPage/CovidPage.js +9 -16
  266. package/lib/pages/CovidPage/components/Body.js +26 -30
  267. package/lib/pages/CovidPage/components/Map.js +28 -40
  268. package/lib/pages/CovidPage/components/Sidebar.js +15 -16
  269. package/lib/pages/CovidPage/components/Summary.js +20 -29
  270. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +26 -33
  271. package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +3 -4
  272. package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +52 -76
  273. package/lib/pages/CovidPage/components/TrendPopupContent/index.js +3 -4
  274. package/lib/pages/CovidPage/components/areas/Area.js +24 -36
  275. package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +45 -46
  276. package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +32 -36
  277. package/lib/pages/CovidPage/components/areas/AreasList.js +29 -42
  278. package/lib/pages/CovidPage/components/areas/Sort.js +12 -17
  279. package/lib/pages/CovidPage/components/nvlStatusHelper.js +11 -11
  280. package/lib/pages/DashboardMap/AreaCard.js +27 -27
  281. package/lib/pages/DashboardMap/AssessmentIcon.js +8 -7
  282. package/lib/pages/DashboardMap/Capacity.js +28 -77
  283. package/lib/pages/DashboardMap/FactoryCard.js +28 -24
  284. package/lib/pages/DashboardMap/HighchartsOptions.js +6 -5
  285. package/lib/pages/DashboardMap/List.js +55 -65
  286. package/lib/pages/DashboardMap/ListContext.js +14 -19
  287. package/lib/pages/DashboardMap/Loader.js +3 -3
  288. package/lib/pages/DashboardMap/SeverityBadge.js +16 -24
  289. package/lib/pages/DashboardMap/WWTPMap.js +57 -71
  290. package/lib/pages/DashboardMap/WaterDischarge.js +9 -9
  291. package/lib/pages/DashboardMap/Widget.js +48 -67
  292. package/lib/pages/DashboardMap/index.js +3 -4
  293. package/lib/pages/DashboardMap/utils.js +41 -60
  294. package/lib/pages/EventsPage/Body/Body.js +15 -12
  295. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +17 -20
  296. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +16 -27
  297. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +10 -9
  298. package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +13 -10
  299. package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +22 -31
  300. package/lib/pages/EventsPage/DragAndDropArea/index.js +3 -4
  301. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +30 -38
  302. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +14 -23
  303. package/lib/pages/EventsPage/EventsPage.js +10 -17
  304. package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +26 -40
  305. package/lib/pages/EventsPage/events/MoreInfo.js +18 -19
  306. package/lib/pages/EventsPage/events/Sidebar.js +14 -11
  307. package/lib/pages/EventsPage/events/event_info/Contaminants/Contaminants.js +9 -10
  308. package/lib/pages/EventsPage/events/event_info/Contaminants/ContaminantsList.js +19 -24
  309. package/lib/pages/EventsPage/events/event_info/Contaminants/index.js +3 -4
  310. package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +31 -38
  311. package/lib/pages/EventsPage/events/event_info/EventDetails.js +35 -33
  312. package/lib/pages/EventsPage/events/event_info/EventInfo.js +50 -60
  313. package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +5 -5
  314. package/lib/pages/EventsPage/events/event_info/EventSection.js +18 -21
  315. package/lib/pages/EventsPage/events/event_info/EventSection.test.js +29 -23
  316. package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +39 -50
  317. package/lib/pages/EventsPage/events/event_info/Header/Header.js +8 -7
  318. package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +30 -35
  319. package/lib/pages/EventsPage/events/event_info/Header/index.js +3 -4
  320. package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +6 -7
  321. package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +30 -39
  322. package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +6 -9
  323. package/lib/pages/EventsPage/events/event_info/PollutionAssessment /PollutionAssessment.js +14 -15
  324. package/lib/pages/EventsPage/events/event_info/PollutionAssessment /PollutionTypesList.js +9 -12
  325. package/lib/pages/EventsPage/events/event_info/PollutionAssessment /index.js +3 -4
  326. package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +23 -24
  327. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResult.js +13 -22
  328. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResultButton.js +7 -6
  329. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/index.js +3 -4
  330. package/lib/pages/EventsPage/events/event_info/SamplingList/SamplingDetails.js +13 -12
  331. package/lib/pages/EventsPage/events/event_info/SamplingList/Samplings.js +22 -28
  332. package/lib/pages/EventsPage/events/event_info/SamplingList/index.js +3 -4
  333. package/lib/pages/EventsPage/events/event_info/SeverityScore/ScoreExplanation.js +13 -10
  334. package/lib/pages/EventsPage/events/event_info/SeverityScore/SeverityScore.js +8 -9
  335. package/lib/pages/EventsPage/events/event_info/SeverityScore/index.js +3 -4
  336. package/lib/pages/EventsPage/events/event_info/SourceDetails/Confidence.js +9 -9
  337. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.js +4 -5
  338. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.test.js +13 -11
  339. package/lib/pages/EventsPage/events/event_info/SourceDetails/IconAndTitles.js +7 -5
  340. package/lib/pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton.js +11 -14
  341. package/lib/pages/EventsPage/events/event_info/SourceDetails/OtherSources.js +7 -6
  342. package/lib/pages/EventsPage/events/event_info/SourceDetails/PotentialSources.js +9 -8
  343. package/lib/pages/EventsPage/events/event_info/SourceDetails/SingleSource.js +9 -8
  344. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceCardBody.js +8 -7
  345. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.js +13 -12
  346. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.test.js +18 -19
  347. package/lib/pages/EventsPage/events/event_info/SourceDetails/WaterDischarge.js +7 -7
  348. package/lib/pages/EventsPage/events/event_info/Timelines/DischargeBox.js +9 -8
  349. package/lib/pages/EventsPage/events/event_info/Timelines/EarlyWarning.js +19 -18
  350. package/lib/pages/EventsPage/events/event_info/Timelines/LiveStatusBadge.js +6 -7
  351. package/lib/pages/EventsPage/events/event_info/Timelines/SeenBox.js +13 -12
  352. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.js +23 -19
  353. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.test.js +12 -11
  354. package/lib/pages/EventsPage/events/event_info/Timelines/Titles.js +8 -7
  355. package/lib/pages/EventsPage/events/event_info/Timelines/index.js +3 -4
  356. package/lib/pages/EventsPage/events/event_info/Timelines/style.js +4 -6
  357. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +25 -40
  358. package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +30 -39
  359. package/lib/pages/EventsPage/events/event_info/samplingsOld/Sampling.js +13 -12
  360. package/lib/pages/EventsPage/events/event_info/samplingsOld/Samplings.js +17 -20
  361. package/lib/pages/EventsPage/events/event_info/sources/Source.js +27 -31
  362. package/lib/pages/EventsPage/events/event_info/sources/Sources.js +22 -27
  363. package/lib/pages/EventsPage/events/event_info/styles.js +21 -15
  364. package/lib/pages/EventsPage/events/events_list/EventItem.js +18 -21
  365. package/lib/pages/EventsPage/events/events_list/EventUtils.js +11 -11
  366. package/lib/pages/EventsPage/events/events_list/EventsList.js +111 -142
  367. package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +41 -58
  368. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +90 -135
  369. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +54 -76
  370. package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +39 -44
  371. package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +32 -41
  372. package/lib/pages/EventsPage/events/events_list/Filter/SingleSelect.js +19 -21
  373. package/lib/pages/EventsPage/events/events_list/Sort.js +28 -39
  374. package/lib/pages/ImportFileWizard/FileUploadRespones.js +14 -22
  375. package/lib/pages/ImportFileWizard/ImportButtomButtons.js +9 -8
  376. package/lib/pages/ImportFileWizard/ImportFile.js +21 -25
  377. package/lib/pages/ImportFileWizard/ResponseBody.js +26 -36
  378. package/lib/pages/ImportFileWizard/ValidationForm.js +23 -23
  379. package/lib/pages/ImportFileWizard/ValidationResponse.js +23 -25
  380. package/lib/pages/ImportFileWizard/importFileUtils.js +4 -5
  381. package/lib/pages/ImportFileWizard/index.js +3 -4
  382. package/lib/pages/ImportGisPage/ImportGisContainer.js +22 -27
  383. package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +38 -44
  384. package/lib/pages/ImportGisPage/importGisUtils.js +43 -52
  385. package/lib/pages/ImportGisProcess/index.js +14 -18
  386. package/lib/pages/ImportSiteProcess/index.js +14 -18
  387. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +7 -13
  388. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +18 -20
  389. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +4 -4
  390. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +28 -60
  391. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +8 -12
  392. package/lib/pages/NotificationsPage/Notification/Notification.js +17 -13
  393. package/lib/pages/NotificationsPage/Notifications.interface.js +1 -1
  394. package/lib/pages/NotificationsPage/Notifications.mock.js +2 -3
  395. package/lib/pages/NotificationsPage/Notifications.stories.js +6 -10
  396. package/lib/pages/NotificationsPage/NotificationsPage.js +19 -38
  397. package/lib/pages/NotificationsPage/assets/index.js +10 -10
  398. package/lib/pages/NotificationsPageV2/NotificationsPage.js +72 -101
  399. package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +95 -65
  400. package/lib/pages/NotificationsPageV2/components/NotificationsForm/EventType.js +13 -15
  401. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSendVia.js +19 -17
  402. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSensors.js +18 -22
  403. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSources.js +18 -22
  404. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationTags.js +19 -23
  405. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +82 -71
  406. package/lib/pages/NotificationsPageV2/components/NotificationsForm/WaterAuthoritySelection.js +19 -23
  407. package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +71 -74
  408. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +80 -94
  409. package/lib/pages/NotificationsPageV2/notificationUtils.js +40 -39
  410. package/lib/pages/OldSitePage/IDashboardData.js +1 -1
  411. package/lib/pages/OldSitePage/OldSitePage.js +56 -132
  412. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +6 -10
  413. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +5 -9
  414. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +9 -7
  415. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +16 -19
  416. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +10 -12
  417. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +12 -19
  418. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +14 -11
  419. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +5 -9
  420. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +18 -16
  421. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +51 -64
  422. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +10 -8
  423. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +29 -54
  424. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +4 -7
  425. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +12 -19
  426. package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +11 -11
  427. package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +10 -12
  428. package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +27 -23
  429. package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +28 -30
  430. package/lib/pages/OldSitePage/SamplingParameters/models.js +1 -1
  431. package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +5 -8
  432. package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +16 -12
  433. package/lib/pages/OperationsPage/LeftPanel.js +35 -55
  434. package/lib/pages/OperationsPage/Map/Map.js +12 -12
  435. package/lib/pages/OperationsPage/Map/useMap.js +52 -64
  436. package/lib/pages/OperationsPage/OperationsContainerPage.js +32 -59
  437. package/lib/pages/OperationsPage/OperationsFilePage.js +10 -12
  438. package/lib/pages/OperationsPage/OperationsUtilityPage.js +5 -6
  439. package/lib/pages/OperationsPage/RightPanel.js +22 -25
  440. package/lib/pages/OperationsPage/index.js +4 -4
  441. package/lib/pages/PollutionRiskAssessment/FactoryDetails.js +27 -60
  442. package/lib/pages/PollutionRiskAssessment/FilterBehaviors.js +19 -25
  443. package/lib/pages/PollutionRiskAssessment/FilterButton.js +11 -10
  444. package/lib/pages/PollutionRiskAssessment/Map.js +38 -42
  445. package/lib/pages/PollutionRiskAssessment/SearchButton.js +11 -10
  446. package/lib/pages/PollutionRiskAssessment/SearchField.js +26 -40
  447. package/lib/pages/PollutionRiskAssessment/TotalSavings.js +16 -16
  448. package/lib/pages/PollutionRiskAssessment/UseCases.js +32 -34
  449. package/lib/pages/PollutionRiskAssessment/index.js +76 -136
  450. package/lib/pages/PollutionRiskAssessment/useMap.js +34 -50
  451. package/lib/pages/PollutionRiskAssessment/utils.js +7 -7
  452. package/lib/pages/ProfilePage/Container.js +3 -4
  453. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +23 -40
  454. package/lib/pages/ProfilePage/ProfilePage.js +106 -205
  455. package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +25 -34
  456. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +20 -20
  457. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +27 -30
  458. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +57 -119
  459. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +18 -23
  460. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +14 -13
  461. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +40 -45
  462. package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +25 -24
  463. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +18 -19
  464. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +15 -18
  465. package/lib/pages/SamplingsPage/DesktopActions/index.js +3 -4
  466. package/lib/pages/SamplingsPage/NavigationDropdown.js +43 -31
  467. package/lib/pages/SamplingsPage/NewSamplingAction.js +75 -102
  468. package/lib/pages/SamplingsPage/SamplingMobileModal.js +124 -98
  469. package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +23 -25
  470. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +36 -25
  471. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +36 -61
  472. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +16 -21
  473. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +10 -9
  474. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +108 -193
  475. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +47 -54
  476. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +42 -39
  477. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +42 -39
  478. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +21 -28
  479. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +4 -6
  480. package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +11 -7
  481. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +51 -53
  482. package/lib/pages/SamplingsPage/SamplingsMobileList.js +22 -31
  483. package/lib/pages/SamplingsPage/SamplingsPage.js +25 -33
  484. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +49 -58
  485. package/lib/pages/SamplingsPage/index.js +2 -3
  486. package/lib/pages/SamplingsPage/samplingsPageUtils.js +52 -83
  487. package/lib/pages/SitePage/DischargePattern/DischargePattern.js +7 -6
  488. package/lib/pages/SitePage/PollutionContributor/PollutionContributor.js +16 -16
  489. package/lib/pages/SitePage/PollutionContributor/PollutionContributorContainer.js +12 -16
  490. package/lib/pages/SitePage/PollutionContributor/contributorUtils.js +16 -16
  491. package/lib/pages/SitePage/PollutionContributor/index.js +3 -4
  492. package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +5 -9
  493. package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +15 -15
  494. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +10 -9
  495. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +27 -24
  496. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +12 -16
  497. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +37 -33
  498. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +10 -12
  499. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +15 -25
  500. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +14 -11
  501. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +5 -9
  502. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +18 -16
  503. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +58 -71
  504. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +10 -8
  505. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +15 -27
  506. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +5 -9
  507. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +12 -19
  508. package/lib/pages/SitePage/SamplingParameters/body/Body.js +10 -9
  509. package/lib/pages/SitePage/SamplingParameters/body/BodyContainer.js +30 -40
  510. package/lib/pages/SitePage/SamplingParameters/body/index.js +3 -4
  511. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +11 -12
  512. package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +10 -12
  513. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +54 -54
  514. package/lib/pages/SitePage/SamplingParameters/dataParser.js +32 -41
  515. package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +11 -9
  516. package/lib/pages/SitePage/SamplingParameters/models.js +1 -1
  517. package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +5 -8
  518. package/lib/pages/SitePage/SamplingParameters/styles/styles.js +16 -12
  519. package/lib/pages/SitePage/SiteInformation/EmptyState.js +13 -10
  520. package/lib/pages/SitePage/SiteInformation/SiteInformation.js +31 -31
  521. package/lib/pages/SitePage/SitePage.js +37 -77
  522. package/lib/pages/UploadLabResult/index.js +15 -16
  523. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +27 -37
  524. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +8 -13
  525. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +11 -15
  526. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +5 -9
  527. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +47 -50
  528. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +11 -8
  529. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +4 -5
  530. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +6 -9
  531. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +11 -10
  532. package/lib/pages/UtilityDashboardPage/MostSevereEvents/models.js +1 -1
  533. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +16 -13
  534. package/lib/pages/UtilityDashboardPage/TopBar/constants.js +8 -8
  535. package/lib/pages/UtilityDashboardPage/TopBar/styles.js +3 -4
  536. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +20 -30
  537. package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +28 -40
  538. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +15 -17
  539. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +7 -14
  540. package/lib/pages/UtilityDashboardPage/VirtualAreaDashboardPage.js +26 -31
  541. package/lib/pages/WbeDashboard/ExpandableComponent.js +9 -9
  542. package/lib/pages/WbeDashboard/GraphWrapper.js +28 -35
  543. package/lib/pages/WbeDashboard/IndividualTinyGraph.js +16 -19
  544. package/lib/pages/WbeDashboard/SearchInput.js +15 -21
  545. package/lib/pages/WbeDashboard/SummaryGraph.js +50 -77
  546. package/lib/pages/WbeDashboard/SummaryGraphModal.js +20 -18
  547. package/lib/pages/WbeDashboard/Tabs.js +11 -11
  548. package/lib/pages/WbeDashboard/WbeDashboardPage.js +147 -210
  549. package/lib/pages/WbeDashboard/WbeSummaryBar.js +39 -48
  550. package/lib/pages/WwtpPage/DashboardCard.js +25 -21
  551. package/lib/pages/WwtpPage/DischargePatternCard.js +14 -25
  552. package/lib/pages/WwtpPage/InletsCard/InletsBar.js +11 -11
  553. package/lib/pages/WwtpPage/InletsCard/InletsCard.js +22 -22
  554. package/lib/pages/WwtpPage/InletsCard/index.js +3 -4
  555. package/lib/pages/WwtpPage/Map.js +6 -6
  556. package/lib/pages/WwtpPage/OrganicCard.js +4 -5
  557. package/lib/pages/WwtpPage/PotentialSaving/ImpactCard.js +4 -5
  558. package/lib/pages/WwtpPage/PotentialSaving/PotentialItem.js +8 -7
  559. package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +11 -11
  560. package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +20 -17
  561. package/lib/pages/WwtpPage/PotentialSaving/index.js +3 -4
  562. package/lib/pages/WwtpPage/PotentialSaving/types.js +1 -1
  563. package/lib/pages/WwtpPage/PredictionCard.js +4 -5
  564. package/lib/pages/WwtpPage/TrendCard.js +20 -22
  565. package/lib/pages/WwtpPage/UpgradeBox.js +4 -5
  566. package/lib/pages/WwtpPage/WwtpPage.js +9 -8
  567. package/lib/pages/WwtpPage/WwtpPageContainer.js +23 -19
  568. package/lib/pages/WwtpPage/index.js +3 -4
  569. package/lib/providers/Slideshow/SlideshowContext.js +11 -10
  570. package/lib/providers/Slideshow/SlideshowProvider.js +22 -40
  571. package/lib/providers/Slideshow/SlideshowRunner.js +18 -21
  572. package/lib/providers/UrlHistory/UrlHistoryContext.js +7 -6
  573. package/lib/providers/UrlHistory/UrlHistoryProvider.js +12 -13
  574. package/lib/providers/UrlHistory/index.js +4 -4
  575. package/lib/providers/UrlHistory/useLastVisited.js +5 -6
  576. package/lib/react-app-env.d.js +1 -1
  577. package/lib/store/ImportGis/action.js +1 -1
  578. package/lib/store/ImportGis/actionTypes.js +4 -5
  579. package/lib/store/ImportGis/actionsCreator.js +7 -5
  580. package/lib/store/ImportGis/models/gisImports.js +1 -1
  581. package/lib/store/ImportGis/reducer.js +9 -7
  582. package/lib/store/WBE/actionTypes.js +2 -3
  583. package/lib/store/WBE/actions.js +1 -1
  584. package/lib/store/WBE/models/IAreaWBE.js +1 -1
  585. package/lib/store/WBE/models/IWBE.js +1 -1
  586. package/lib/store/WBE/models/IWBEState.js +1 -1
  587. package/lib/store/WBE/reducer.js +10 -8
  588. package/lib/store/WWTPDashboard/WWTPDashboardSlice.js +24 -15
  589. package/lib/store/WWTPDashboard/types.js +1 -1
  590. package/lib/store/areas/actionTypes.js +4 -7
  591. package/lib/store/areas/actions.js +7 -13
  592. package/lib/store/areas/models/IArea.js +1 -1
  593. package/lib/store/areas/models/IAreasState.js +1 -1
  594. package/lib/store/areas/reducer.js +8 -6
  595. package/lib/store/context/actionTypes.js +3 -5
  596. package/lib/store/context/actions.js +3 -3
  597. package/lib/store/context/contextMiddlewares.js +15 -18
  598. package/lib/store/context/models/INavContext.js +1 -1
  599. package/lib/store/context/models/INavContextState.js +1 -1
  600. package/lib/store/context/reducer.js +10 -8
  601. package/lib/store/dashboard/dashboardSlice.js +18 -11
  602. package/lib/store/dashboard/periodType.js +1 -1
  603. package/lib/store/edges/actionTypes.js +5 -9
  604. package/lib/store/edges/actions.js +4 -8
  605. package/lib/store/edges/models/IEdge.js +1 -1
  606. package/lib/store/edges/models/IEdgesState.js +1 -1
  607. package/lib/store/edges/reducer.js +13 -17
  608. package/lib/store/events/actionTypes.js +17 -33
  609. package/lib/store/events/actions.js +3 -7
  610. package/lib/store/events/models/IEvent.js +1 -1
  611. package/lib/store/events/models/IEventsState.js +1 -1
  612. package/lib/store/events/models/ISource.js +1 -1
  613. package/lib/store/events/reducer.js +28 -39
  614. package/lib/store/filters/IFilter.js +1 -1
  615. package/lib/store/filters/IFilterItem.js +1 -1
  616. package/lib/store/global/actionTypes.js +11 -21
  617. package/lib/store/global/actions.js +8 -6
  618. package/lib/store/global/models/IGlobalState.js +1 -1
  619. package/lib/store/global/reducer.js +9 -7
  620. package/lib/store/permissions/permissionsSlice.js +12 -9
  621. package/lib/store/points/actionTypes.js +3 -5
  622. package/lib/store/points/actions.js +6 -10
  623. package/lib/store/points/models/IGeoPoint.js +1 -1
  624. package/lib/store/points/models/IGroup.js +1 -1
  625. package/lib/store/points/models/IIssue.js +1 -1
  626. package/lib/store/points/models/IPoint.js +1 -1
  627. package/lib/store/points/models/IPointsState.js +1 -1
  628. package/lib/store/points/reducer.js +7 -5
  629. package/lib/store/rootActionTypes.js +2 -3
  630. package/lib/store/rootActions.js +1 -1
  631. package/lib/store/rootReducer.js +12 -10
  632. package/lib/store/rootStore.js +6 -6
  633. package/lib/store/samplings/action.js +1 -1
  634. package/lib/store/samplings/actionTypes.js +4 -5
  635. package/lib/store/samplings/actionsCreator.js +1 -1
  636. package/lib/store/samplings/models/Samplings.js +1 -1
  637. package/lib/store/samplings/reducer.js +10 -10
  638. package/lib/styles/StylesLayout.js +7 -6
  639. package/lib/styles/theme/theme.js +23 -26
  640. package/lib/test/mocks/browser.js +2 -5
  641. package/lib/test/test-utils.js +12 -9
  642. package/lib/ui-kit/Alert/KandoAlert.js +8 -6
  643. package/lib/ui-kit/Button/Button.js +129 -83
  644. package/lib/ui-kit/Button/Button.test.js +27 -33
  645. package/lib/ui-kit/Button/ButtonUtils.js +1 -1
  646. package/lib/ui-kit/Checkbox/Checkbox.js +34 -27
  647. package/lib/ui-kit/ContentCard/ContentCard.js +16 -20
  648. package/lib/ui-kit/Dashboard/Dashboard.js +29 -28
  649. package/lib/ui-kit/Dashboard/index.js +3 -4
  650. package/lib/ui-kit/DropDown/DropDown.js +23 -22
  651. package/lib/ui-kit/DropDown/DropDown.test.js +13 -13
  652. package/lib/ui-kit/DropDown/DropDownItem.js +26 -25
  653. package/lib/ui-kit/DropDown/DropdownToggle.js +13 -10
  654. package/lib/ui-kit/EmptyState/EmptyState.js +7 -6
  655. package/lib/ui-kit/HierarchyGraph/AutoFitTree.js +69 -81
  656. package/lib/ui-kit/HierarchyGraph/HierarchyGraph.js +89 -167
  657. package/lib/ui-kit/HierarchyGraph/LeafSign.js +7 -7
  658. package/lib/ui-kit/HierarchyGraph/MicroStackedBar.js +17 -19
  659. package/lib/ui-kit/HierarchyGraph/NodeIcon.js +9 -8
  660. package/lib/ui-kit/HierarchyGraph/NodeLayout.js +22 -25
  661. package/lib/ui-kit/HierarchyGraph/PollutionContributorNode.js +11 -10
  662. package/lib/ui-kit/HierarchyGraph/ScoreNode.js +10 -9
  663. package/lib/ui-kit/HierarchyGraph/index.js +3 -4
  664. package/lib/ui-kit/HierarchyGraph/utils.js +57 -67
  665. package/lib/ui-kit/IconAction/IconAction.js +9 -8
  666. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +47 -64
  667. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +58 -49
  668. package/lib/ui-kit/InletsPie/InletsPie.js +17 -16
  669. package/lib/ui-kit/InletsPie/index.js +3 -4
  670. package/lib/ui-kit/InletsPie/options.js +7 -9
  671. package/lib/ui-kit/KandoBottomSheet/KandoBottomSheet.js +29 -38
  672. package/lib/ui-kit/KandoFilter/KandoFilter.js +10 -11
  673. package/lib/ui-kit/KandoList/KandoList.js +13 -12
  674. package/lib/ui-kit/KandoList/kandoListUtils.js +1 -1
  675. package/lib/ui-kit/KandoTable/KandoTable.js +48 -41
  676. package/lib/ui-kit/KandoTable/KandoTable.test.js +21 -27
  677. package/lib/ui-kit/KandoTable/kandoTableUtils.js +1 -1
  678. package/lib/ui-kit/Layout/Layout.js +8 -7
  679. package/lib/ui-kit/MobileInput/MobileInput.js +56 -50
  680. package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +14 -17
  681. package/lib/ui-kit/ModalConfirmation/index.js +2 -3
  682. package/lib/ui-kit/OrganicEvents/GaugeChart.js +9 -8
  683. package/lib/ui-kit/OrganicEvents/OrganicEvents.js +8 -9
  684. package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +26 -22
  685. package/lib/ui-kit/OrganicEvents/TextInfo.js +17 -13
  686. package/lib/ui-kit/OrganicEvents/index.js +3 -4
  687. package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +12 -11
  688. package/lib/ui-kit/SamplingStatus/SamplingStatus.js +17 -21
  689. package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +3 -4
  690. package/lib/ui-kit/ScoreGauge/ScoreGauge.js +21 -24
  691. package/lib/ui-kit/ScoreGauge/constant.js +3 -4
  692. package/lib/ui-kit/ScoreGauge/index.js +3 -4
  693. package/lib/ui-kit/TimeLineChart/TrendChart.js +25 -28
  694. package/lib/ui-kit/TimeLineChart/index.js +3 -4
  695. package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +10 -11
  696. package/lib/ui-kit/Tooltip/Tooltip.js +15 -9
  697. package/lib/ui-kit/index.js +8 -8
  698. package/lib/ui-kit/kandoStepper/KandoStepper.js +13 -14
  699. package/lib/ui-kit/siteName/SiteName.js +13 -11
  700. package/lib/utilities/ActionUtility.js +7 -7
  701. package/lib/utilities/Alert.js +23 -20
  702. package/lib/utilities/Analytics.js +19 -19
  703. package/lib/utilities/Array.js +4 -5
  704. package/lib/utilities/Enum.js +15 -51
  705. package/lib/utilities/ErrorBoundary.js +27 -42
  706. package/lib/utilities/File.js +45 -73
  707. package/lib/utilities/GetDir.js +10 -10
  708. package/lib/utilities/KandoDate.js +7 -15
  709. package/lib/utilities/KandoModal.js +16 -28
  710. package/lib/utilities/LocalStorage.js +5 -7
  711. package/lib/utilities/ThousandsToK.js +2 -2
  712. package/lib/utilities/TimeFormat.js +22 -23
  713. package/lib/utilities/Truncate.js +17 -27
  714. package/lib/utilities/edgesMath.js +15 -16
  715. package/lib/utilities/i18n.js +5 -6
  716. package/lib/utilities/kql.js +10 -12
  717. package/lib/utilities/map/icons.js +18 -18
  718. package/lib/utilities/polylinedecorator.js +88 -113
  719. package/lib/utilities/scoreToData.js +20 -26
  720. package/lib/utilities/scoreToData.test.js +5 -5
  721. package/lib/utilities/time.js +9 -10
  722. package/lib/utilities/uploadToS3.js +12 -12
  723. package/lib/utilities/urls.js +19 -16
  724. package/package.json +12 -9
  725. package/lib/components/SeasonalInsights/SeasonalInsights.js +0 -150
  726. package/lib/components/SevereEvent/UpstreamBadge.js +0 -60
  727. package/lib/components/TopBanner/TopBanner.js +0 -235
  728. package/lib/components/TopBanner/insightsDismissalStorage.js +0 -36
@@ -1,150 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
10
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
11
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
12
- var _i18next = _interopRequireDefault(require("i18next"));
13
- var _react = _interopRequireWildcard(require("react"));
14
- 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); }
15
- 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; }
16
- var SeasonalInsights = function SeasonalInsights(_ref) {
17
- var _data$insight_info2, _data$insight_info3;
18
- var apiEndpoint = _ref.apiEndpoint,
19
- dataProp = _ref.data,
20
- className = _ref.className,
21
- onLoaded = _ref.onLoaded;
22
- var _useState = (0, _react.useState)(dataProp !== null && dataProp !== void 0 ? dataProp : null),
23
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
24
- data = _useState2[0],
25
- setData = _useState2[1];
26
-
27
- // If parent provides data, render it and skip fetching.
28
- (0, _react.useEffect)(function () {
29
- if (typeof dataProp === 'undefined') return;
30
- setData(dataProp !== null && dataProp !== void 0 ? dataProp : null);
31
- }, [dataProp]);
32
- var risk = (0, _react.useMemo)(function () {
33
- var _data$insight_info;
34
- var risks = data === null || data === void 0 ? void 0 : (_data$insight_info = data.insight_info) === null || _data$insight_info === void 0 ? void 0 : _data$insight_info.risks;
35
- if (!risks) return null;
36
- var lang = (data === null || data === void 0 ? void 0 : data.locale) || 'en';
37
- return risks[lang] || null;
38
- }, [data]);
39
- var summary = (risk === null || risk === void 0 ? void 0 : risk.risk_summary) || '';
40
- var detailed = (risk === null || risk === void 0 ? void 0 : risk.detailed_risks) || [];
41
- var start = (data === null || data === void 0 ? void 0 : (_data$insight_info2 = data.insight_info) === null || _data$insight_info2 === void 0 ? void 0 : _data$insight_info2.start_time) || (data === null || data === void 0 ? void 0 : data.start_time);
42
- var end = (data === null || data === void 0 ? void 0 : (_data$insight_info3 = data.insight_info) === null || _data$insight_info3 === void 0 ? void 0 : _data$insight_info3.end_time) || (data === null || data === void 0 ? void 0 : data.end_time);
43
- var isHebrew = (0, _react.useMemo)(function () {
44
- var lang = ((data === null || data === void 0 ? void 0 : data.locale) || _i18next.default.language || 'en').toLowerCase();
45
- return lang.startsWith('he');
46
- }, [data === null || data === void 0 ? void 0 : data.locale]);
47
- (0, _react.useEffect)(function () {
48
- // If parent provides data, do not fetch.
49
- if (typeof dataProp !== 'undefined') return;
50
- if (!apiEndpoint) return;
51
- var controller = new AbortController();
52
- fetch(apiEndpoint, {
53
- signal: controller.signal
54
- }).then( /*#__PURE__*/function () {
55
- var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(res) {
56
- return _regenerator.default.wrap(function _callee$(_context) {
57
- while (1) {
58
- switch (_context.prev = _context.next) {
59
- case 0:
60
- if (res.ok) {
61
- _context.next = 2;
62
- break;
63
- }
64
- throw new Error("Request failed (".concat(res.status, ")"));
65
- case 2:
66
- _context.next = 4;
67
- return res.json();
68
- case 4:
69
- return _context.abrupt("return", _context.sent);
70
- case 5:
71
- case "end":
72
- return _context.stop();
73
- }
74
- }
75
- }, _callee);
76
- }));
77
- return function (_x) {
78
- return _ref2.apply(this, arguments);
79
- };
80
- }()).then(function (payload) {
81
- setData(payload);
82
- if (onLoaded) onLoaded(payload);
83
- }).catch(function (err) {
84
- if ((err === null || err === void 0 ? void 0 : err.name) === 'AbortError') return;
85
- setData(null);
86
- });
87
- return function () {
88
- return controller.abort();
89
- };
90
- }, [apiEndpoint, dataProp, onLoaded]);
91
- return /*#__PURE__*/_react.default.createElement("div", {
92
- className: className,
93
- dir: isHebrew ? 'rtl' : 'ltr',
94
- style: {
95
- padding: 12,
96
- display: 'flex',
97
- flexDirection: 'column',
98
- gap: 12,
99
- textAlign: isHebrew ? 'right' : 'left'
100
- }
101
- }, /*#__PURE__*/_react.default.createElement("div", {
102
- style: {
103
- display: 'flex',
104
- flexDirection: 'column',
105
- gap: 4
106
- }
107
- }, /*#__PURE__*/_react.default.createElement("div", {
108
- style: {
109
- fontWeight: 600
110
- }
111
- }, summary), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", null, start), " - ", /*#__PURE__*/_react.default.createElement("span", null, end))), /*#__PURE__*/_react.default.createElement("div", {
112
- style: {
113
- display: 'flex',
114
- flexDirection: 'column',
115
- gap: 10
116
- }
117
- }, detailed.map(function (r, idx) {
118
- var _r$expected_pollution;
119
- return /*#__PURE__*/_react.default.createElement("div", {
120
- key: idx,
121
- style: {
122
- padding: 12,
123
- border: '1px solid rgba(0,0,0,0.1)',
124
- borderRadius: 8,
125
- background: 'rgba(0,0,0,0.02)'
126
- }
127
- }, /*#__PURE__*/_react.default.createElement("div", {
128
- style: {
129
- fontWeight: 700
130
- }
131
- }, r.siu_name), r.sector_code ? /*#__PURE__*/_react.default.createElement("div", {
132
- style: {
133
- marginTop: 2,
134
- opacity: 0.8,
135
- fontSize: 12
136
- }
137
- }, r.sector) : null, ((_r$expected_pollution = r.expected_pollution_types) === null || _r$expected_pollution === void 0 ? void 0 : _r$expected_pollution.length) ? /*#__PURE__*/_react.default.createElement("div", {
138
- style: {
139
- marginTop: 8
140
- }
141
- }, r.expected_pollution_types.join(', ')) : null, r.seasonal_or_location_factors ? /*#__PURE__*/_react.default.createElement("div", {
142
- style: {
143
- marginTop: 8
144
- }
145
- }, r.seasonal_or_location_factors) : null);
146
- })));
147
- };
148
- var _default = SeasonalInsights;
149
- exports.default = _default;
150
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaTE4bmV4dCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIlNlYXNvbmFsSW5zaWdodHMiLCJfcmVmIiwiX2RhdGEkaW5zaWdodF9pbmZvMiIsIl9kYXRhJGluc2lnaHRfaW5mbzMiLCJhcGlFbmRwb2ludCIsImRhdGFQcm9wIiwiZGF0YSIsImNsYXNzTmFtZSIsIm9uTG9hZGVkIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwic2V0RGF0YSIsInVzZUVmZmVjdCIsInJpc2siLCJ1c2VNZW1vIiwiX2RhdGEkaW5zaWdodF9pbmZvIiwicmlza3MiLCJpbnNpZ2h0X2luZm8iLCJsYW5nIiwibG9jYWxlIiwic3VtbWFyeSIsInJpc2tfc3VtbWFyeSIsImRldGFpbGVkIiwiZGV0YWlsZWRfcmlza3MiLCJzdGFydCIsInN0YXJ0X3RpbWUiLCJlbmQiLCJlbmRfdGltZSIsImlzSGVicmV3IiwiaTE4bmV4dCIsImxhbmd1YWdlIiwidG9Mb3dlckNhc2UiLCJzdGFydHNXaXRoIiwiY29udHJvbGxlciIsIkFib3J0Q29udHJvbGxlciIsImZldGNoIiwic2lnbmFsIiwidGhlbiIsIl9yZWYyIiwiX2FzeW5jVG9HZW5lcmF0b3IyIiwiX3JlZ2VuZXJhdG9yIiwibWFyayIsIl9jYWxsZWUiLCJyZXMiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0Iiwib2siLCJFcnJvciIsImNvbmNhdCIsInN0YXR1cyIsImpzb24iLCJhYnJ1cHQiLCJzZW50Iiwic3RvcCIsIl94IiwiYXBwbHkiLCJhcmd1bWVudHMiLCJwYXlsb2FkIiwiY2F0Y2giLCJlcnIiLCJuYW1lIiwiYWJvcnQiLCJjcmVhdGVFbGVtZW50IiwiZGlyIiwic3R5bGUiLCJwYWRkaW5nIiwiZGlzcGxheSIsImZsZXhEaXJlY3Rpb24iLCJnYXAiLCJ0ZXh0QWxpZ24iLCJmb250V2VpZ2h0IiwibWFwIiwiciIsImlkeCIsIl9yJGV4cGVjdGVkX3BvbGx1dGlvbiIsImJvcmRlciIsImJvcmRlclJhZGl1cyIsImJhY2tncm91bmQiLCJzaXVfbmFtZSIsInNlY3Rvcl9jb2RlIiwibWFyZ2luVG9wIiwib3BhY2l0eSIsImZvbnRTaXplIiwic2VjdG9yIiwiZXhwZWN0ZWRfcG9sbHV0aW9uX3R5cGVzIiwibGVuZ3RoIiwiam9pbiIsInNlYXNvbmFsX29yX2xvY2F0aW9uX2ZhY3RvcnMiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9TZWFzb25hbEluc2lnaHRzL1NlYXNvbmFsSW5zaWdodHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpMThuZXh0IGZyb20gJ2kxOG5leHQnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5cbnR5cGUgRGV0YWlsZWRSaXNrID0ge1xuICBzZWN0b3I/OiBzdHJpbmc7XG4gIHNpdV9uYW1lPzogc3RyaW5nO1xuICBzZWN0b3JfY29kZT86IHN0cmluZztcbiAgZXhwZWN0ZWRfcG9sbHV0aW9uX3R5cGVzPzogc3RyaW5nW107XG4gIHNlYXNvbmFsX29yX2xvY2F0aW9uX2ZhY3RvcnM/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBTZWFzb25hbEluc2lnaHRSZXNwb25zZSA9IHtcbiAgbG9jYWxlOiBzdHJpbmc7XG4gIGlkPzogbnVtYmVyO1xuICBzdGFydF90aW1lPzogc3RyaW5nO1xuICBlbmRfdGltZT86IHN0cmluZztcbiAgaW5zaWdodF9pbmZvPzoge1xuICAgIHJpc2tzPzoge1xuICAgICAgW2xhbmc6IHN0cmluZ106IHtcbiAgICAgICAgcmlza19zdW1tYXJ5Pzogc3RyaW5nO1xuICAgICAgICBkZXRhaWxlZF9yaXNrcz86IERldGFpbGVkUmlza1tdO1xuICAgICAgfTtcbiAgICB9O1xuICAgIHN0YXJ0X3RpbWU/OiBzdHJpbmc7XG4gICAgZW5kX3RpbWU/OiBzdHJpbmc7XG4gICAgb3ZlcmFsbF9jb25maWRlbmNlPzogc3RyaW5nO1xuICAgIHdhdGVyX2F1dGhvcml0eV9pZD86IHN0cmluZyB8IG51bWJlcjtcbiAgfTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2Vhc29uYWxJbnNpZ2h0c1Byb3BzIHtcbiAgLyoqIElmIHByb3ZpZGVkLCB0aGUgY29tcG9uZW50IHdpbGwgZmV0Y2ggdGhlIGluc2lnaHQgcGF5bG9hZCBmcm9tIHRoaXMgZW5kcG9pbnQuICovXG4gIGFwaUVuZHBvaW50Pzogc3RyaW5nO1xuICAvKiogSWYgcHJvdmlkZWQsIHRoZSBjb21wb25lbnQgd2lsbCByZW5kZXIgdXNpbmcgdGhpcyBkYXRhIGFuZCB3aWxsIE5PVCBmZXRjaC4gKi9cbiAgZGF0YT86IFNlYXNvbmFsSW5zaWdodFJlc3BvbnNlIHwgbnVsbDtcbiAgLyoqIE9wdGlvbmFsIG92ZXJyaWRlOiAnaGUnLCAnZW4nLCBldGMuIERlZmF1bHRzIHRvIGF1dG8tZGV0ZWN0IGJhc2VkIG9uIGRvY3VtZW50IGRpcmVjdGlvbiAvIGJyb3dzZXIgbGFuZ3VhZ2UuICovXG4gIGxhbmd1YWdlPzogc3RyaW5nO1xuICAvKiogT3B0aW9uYWwgY2xhc3NOYW1lIGZvciBvdXRlciB3cmFwcGVyICovXG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgLyoqIE9wdGlvbmFsIGNhbGxiYWNrIHRvIHJlY2VpdmUgcmF3IHBheWxvYWQgKG9ubHkgd2hlbiBmZXRjaGluZykuICovXG4gIG9uTG9hZGVkPzogKGRhdGE6IFNlYXNvbmFsSW5zaWdodFJlc3BvbnNlKSA9PiB2b2lkO1xufVxuXG5jb25zdCBTZWFzb25hbEluc2lnaHRzOiBSZWFjdC5GQzxTZWFzb25hbEluc2lnaHRzUHJvcHM+ID0gKHtcbiAgYXBpRW5kcG9pbnQsXG4gIGRhdGE6IGRhdGFQcm9wLFxuICBjbGFzc05hbWUsXG4gIG9uTG9hZGVkLFxufSkgPT4ge1xuICBjb25zdCBbZGF0YSwgc2V0RGF0YV0gPSB1c2VTdGF0ZTxTZWFzb25hbEluc2lnaHRSZXNwb25zZSB8IG51bGw+KFxuICAgIGRhdGFQcm9wID8/IG51bGwsXG4gICk7XG5cbiAgLy8gSWYgcGFyZW50IHByb3ZpZGVzIGRhdGEsIHJlbmRlciBpdCBhbmQgc2tpcCBmZXRjaGluZy5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAodHlwZW9mIGRhdGFQcm9wID09PSAndW5kZWZpbmVkJykgcmV0dXJuO1xuICAgIHNldERhdGEoZGF0YVByb3AgPz8gbnVsbCk7XG4gIH0sIFtkYXRhUHJvcF0pO1xuXG4gIGNvbnN0IHJpc2sgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCByaXNrcyA9IGRhdGE/Lmluc2lnaHRfaW5mbz8ucmlza3M7XG4gICAgaWYgKCFyaXNrcykgcmV0dXJuIG51bGw7XG4gICAgY29uc3QgbGFuZyA9IGRhdGE/LmxvY2FsZSB8fCAnZW4nO1xuICAgIHJldHVybiByaXNrc1tsYW5nXSB8fCBudWxsO1xuICB9LCBbZGF0YV0pO1xuXG4gIGNvbnN0IHN1bW1hcnkgPSByaXNrPy5yaXNrX3N1bW1hcnkgfHwgJyc7XG4gIGNvbnN0IGRldGFpbGVkID0gcmlzaz8uZGV0YWlsZWRfcmlza3MgfHwgW107XG5cbiAgY29uc3Qgc3RhcnQgPSBkYXRhPy5pbnNpZ2h0X2luZm8/LnN0YXJ0X3RpbWUgfHwgZGF0YT8uc3RhcnRfdGltZTtcbiAgY29uc3QgZW5kID0gZGF0YT8uaW5zaWdodF9pbmZvPy5lbmRfdGltZSB8fCBkYXRhPy5lbmRfdGltZTtcblxuICBjb25zdCBpc0hlYnJldyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGxhbmcgPSAoZGF0YT8ubG9jYWxlIHx8IGkxOG5leHQubGFuZ3VhZ2UgfHwgJ2VuJykudG9Mb3dlckNhc2UoKTtcbiAgICByZXR1cm4gbGFuZy5zdGFydHNXaXRoKCdoZScpO1xuICB9LCBbZGF0YT8ubG9jYWxlXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBJZiBwYXJlbnQgcHJvdmlkZXMgZGF0YSwgZG8gbm90IGZldGNoLlxuICAgIGlmICh0eXBlb2YgZGF0YVByb3AgIT09ICd1bmRlZmluZWQnKSByZXR1cm47XG4gICAgaWYgKCFhcGlFbmRwb2ludCkgcmV0dXJuO1xuXG4gICAgY29uc3QgY29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAgIGZldGNoKGFwaUVuZHBvaW50LCB7IHNpZ25hbDogY29udHJvbGxlci5zaWduYWwgfSlcbiAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHtcbiAgICAgICAgaWYgKCFyZXMub2spIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFJlcXVlc3QgZmFpbGVkICgke3Jlcy5zdGF0dXN9KWApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAoYXdhaXQgcmVzLmpzb24oKSkgYXMgU2Vhc29uYWxJbnNpZ2h0UmVzcG9uc2U7XG4gICAgICB9KVxuICAgICAgLnRoZW4oKHBheWxvYWQpID0+IHtcbiAgICAgICAgc2V0RGF0YShwYXlsb2FkKTtcbiAgICAgICAgaWYgKG9uTG9hZGVkKSBvbkxvYWRlZChwYXlsb2FkKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICBpZiAoZXJyPy5uYW1lID09PSAnQWJvcnRFcnJvcicpIHJldHVybjtcbiAgICAgICAgc2V0RGF0YShudWxsKTtcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuICgpID0+IGNvbnRyb2xsZXIuYWJvcnQoKTtcbiAgfSwgW2FwaUVuZHBvaW50LCBkYXRhUHJvcCwgb25Mb2FkZWRdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgICAgZGlyPXtpc0hlYnJldyA/ICdydGwnIDogJ2x0cid9XG4gICAgICBzdHlsZT17e1xuICAgICAgICBwYWRkaW5nOiAxMixcbiAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgICAgZ2FwOiAxMixcbiAgICAgICAgdGV4dEFsaWduOiBpc0hlYnJldyA/ICdyaWdodCcgOiAnbGVmdCcsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJywgZ2FwOiA0IH19PlxuICAgICAgICA8ZGl2IHN0eWxlPXt7IGZvbnRXZWlnaHQ6IDYwMCB9fT57c3VtbWFyeX08L2Rpdj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8c3Bhbj57c3RhcnR9PC9zcGFuPiAtIDxzcGFuPntlbmR9PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsIGdhcDogMTAgfX0+XG4gICAgICAgIHtkZXRhaWxlZC5tYXAoKHIsIGlkeCkgPT4gKFxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGtleT17aWR4fVxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgcGFkZGluZzogMTIsXG4gICAgICAgICAgICAgIGJvcmRlcjogJzFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSknLFxuICAgICAgICAgICAgICBib3JkZXJSYWRpdXM6IDgsXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICdyZ2JhKDAsMCwwLDAuMDIpJyxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBzdHlsZT17eyBmb250V2VpZ2h0OiA3MDAgfX0+e3Iuc2l1X25hbWV9PC9kaXY+XG5cbiAgICAgICAgICAgIHtyLnNlY3Rvcl9jb2RlID8gKFxuICAgICAgICAgICAgICA8ZGl2IHN0eWxlPXt7IG1hcmdpblRvcDogMiwgb3BhY2l0eTogMC44LCBmb250U2l6ZTogMTIgfX0+XG4gICAgICAgICAgICAgICAge3Iuc2VjdG9yfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICkgOiBudWxsfVxuXG4gICAgICAgICAgICB7ci5leHBlY3RlZF9wb2xsdXRpb25fdHlwZXM/Lmxlbmd0aCA/IChcbiAgICAgICAgICAgICAgPGRpdiBzdHlsZT17eyBtYXJnaW5Ub3A6IDggfX0+XG4gICAgICAgICAgICAgICAge3IuZXhwZWN0ZWRfcG9sbHV0aW9uX3R5cGVzLmpvaW4oJywgJyl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSA6IG51bGx9XG5cbiAgICAgICAgICAgIHtyLnNlYXNvbmFsX29yX2xvY2F0aW9uX2ZhY3RvcnMgPyAoXG4gICAgICAgICAgICAgIDxkaXYgc3R5bGU9e3sgbWFyZ2luVG9wOiA4IH19PlxuICAgICAgICAgICAgICAgIHtyLnNlYXNvbmFsX29yX2xvY2F0aW9uX2ZhY3RvcnN9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICkpfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBTZWFzb25hbEluc2lnaHRzO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQUFBLFFBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUYsT0FBQTtBQUE0RCxTQUFBRyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQUYsd0JBQUFNLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFBLENBQUFFLEdBQUEsQ0FBQU4sR0FBQSxTQUFBTyxNQUFBLFdBQUFDLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLEdBQUEsSUFBQVosR0FBQSxRQUFBWSxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFmLEdBQUEsRUFBQVksR0FBQSxTQUFBSSxJQUFBLEdBQUFSLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVgsR0FBQSxFQUFBWSxHQUFBLGNBQUFJLElBQUEsS0FBQUEsSUFBQSxDQUFBVixHQUFBLElBQUFVLElBQUEsQ0FBQUMsR0FBQSxLQUFBUixNQUFBLENBQUFDLGNBQUEsQ0FBQUgsTUFBQSxFQUFBSyxHQUFBLEVBQUFJLElBQUEsWUFBQVQsTUFBQSxDQUFBSyxHQUFBLElBQUFaLEdBQUEsQ0FBQVksR0FBQSxTQUFBTCxNQUFBLENBQUFKLE9BQUEsR0FBQUgsR0FBQSxNQUFBSSxLQUFBLElBQUFBLEtBQUEsQ0FBQWEsR0FBQSxDQUFBakIsR0FBQSxFQUFBTyxNQUFBLFlBQUFBLE1BQUE7QUEwQzVELElBQU1XLGdCQUFpRCxHQUFHLFNBQXBEQSxnQkFBaURBLENBQUFDLElBQUEsRUFLakQ7RUFBQSxJQUFBQyxtQkFBQSxFQUFBQyxtQkFBQTtFQUFBLElBSkpDLFdBQVcsR0FBQUgsSUFBQSxDQUFYRyxXQUFXO0lBQ0xDLFFBQVEsR0FBQUosSUFBQSxDQUFkSyxJQUFJO0lBQ0pDLFNBQVMsR0FBQU4sSUFBQSxDQUFUTSxTQUFTO0lBQ1RDLFFBQVEsR0FBQVAsSUFBQSxDQUFSTyxRQUFRO0VBRVIsSUFBQUMsU0FBQSxHQUF3QixJQUFBQyxlQUFRLEVBQzlCTCxRQUFRLGFBQVJBLFFBQVEsY0FBUkEsUUFBUSxHQUFJLElBQ2QsQ0FBQztJQUFBTSxVQUFBLE9BQUFDLGVBQUEsQ0FBQTNCLE9BQUEsRUFBQXdCLFNBQUE7SUFGTUgsSUFBSSxHQUFBSyxVQUFBO0lBQUVFLE9BQU8sR0FBQUYsVUFBQTs7RUFJcEI7RUFDQSxJQUFBRyxnQkFBUyxFQUFDLFlBQU07SUFDZCxJQUFJLE9BQU9ULFFBQVEsS0FBSyxXQUFXLEVBQUU7SUFDckNRLE9BQU8sQ0FBQ1IsUUFBUSxhQUFSQSxRQUFRLGNBQVJBLFFBQVEsR0FBSSxJQUFJLENBQUM7RUFDM0IsQ0FBQyxFQUFFLENBQUNBLFFBQVEsQ0FBQyxDQUFDO0VBRWQsSUFBTVUsSUFBSSxHQUFHLElBQUFDLGNBQU8sRUFBQyxZQUFNO0lBQUEsSUFBQUMsa0JBQUE7SUFDekIsSUFBTUMsS0FBSyxHQUFHWixJQUFJLGFBQUpBLElBQUksd0JBQUFXLGtCQUFBLEdBQUpYLElBQUksQ0FBRWEsWUFBWSxjQUFBRixrQkFBQSx1QkFBbEJBLGtCQUFBLENBQW9CQyxLQUFLO0lBQ3ZDLElBQUksQ0FBQ0EsS0FBSyxFQUFFLE9BQU8sSUFBSTtJQUN2QixJQUFNRSxJQUFJLEdBQUcsQ0FBQWQsSUFBSSxhQUFKQSxJQUFJLHVCQUFKQSxJQUFJLENBQUVlLE1BQU0sS0FBSSxJQUFJO0lBQ2pDLE9BQU9ILEtBQUssQ0FBQ0UsSUFBSSxDQUFDLElBQUksSUFBSTtFQUM1QixDQUFDLEVBQUUsQ0FBQ2QsSUFBSSxDQUFDLENBQUM7RUFFVixJQUFNZ0IsT0FBTyxHQUFHLENBQUFQLElBQUksYUFBSkEsSUFBSSx1QkFBSkEsSUFBSSxDQUFFUSxZQUFZLEtBQUksRUFBRTtFQUN4QyxJQUFNQyxRQUFRLEdBQUcsQ0FBQVQsSUFBSSxhQUFKQSxJQUFJLHVCQUFKQSxJQUFJLENBQUVVLGNBQWMsS0FBSSxFQUFFO0VBRTNDLElBQU1DLEtBQUssR0FBRyxDQUFBcEIsSUFBSSxhQUFKQSxJQUFJLHdCQUFBSixtQkFBQSxHQUFKSSxJQUFJLENBQUVhLFlBQVksY0FBQWpCLG1CQUFBLHVCQUFsQkEsbUJBQUEsQ0FBb0J5QixVQUFVLE1BQUlyQixJQUFJLGFBQUpBLElBQUksdUJBQUpBLElBQUksQ0FBRXFCLFVBQVU7RUFDaEUsSUFBTUMsR0FBRyxHQUFHLENBQUF0QixJQUFJLGFBQUpBLElBQUksd0JBQUFILG1CQUFBLEdBQUpHLElBQUksQ0FBRWEsWUFBWSxjQUFBaEIsbUJBQUEsdUJBQWxCQSxtQkFBQSxDQUFvQjBCLFFBQVEsTUFBSXZCLElBQUksYUFBSkEsSUFBSSx1QkFBSkEsSUFBSSxDQUFFdUIsUUFBUTtFQUUxRCxJQUFNQyxRQUFRLEdBQUcsSUFBQWQsY0FBTyxFQUFDLFlBQU07SUFDN0IsSUFBTUksSUFBSSxHQUFHLENBQUMsQ0FBQWQsSUFBSSxhQUFKQSxJQUFJLHVCQUFKQSxJQUFJLENBQUVlLE1BQU0sS0FBSVUsZ0JBQU8sQ0FBQ0MsUUFBUSxJQUFJLElBQUksRUFBRUMsV0FBVyxDQUFDLENBQUM7SUFDckUsT0FBT2IsSUFBSSxDQUFDYyxVQUFVLENBQUMsSUFBSSxDQUFDO0VBQzlCLENBQUMsRUFBRSxDQUFDNUIsSUFBSSxhQUFKQSxJQUFJLHVCQUFKQSxJQUFJLENBQUVlLE1BQU0sQ0FBQyxDQUFDO0VBRWxCLElBQUFQLGdCQUFTLEVBQUMsWUFBTTtJQUNkO0lBQ0EsSUFBSSxPQUFPVCxRQUFRLEtBQUssV0FBVyxFQUFFO0lBQ3JDLElBQUksQ0FBQ0QsV0FBVyxFQUFFO0lBRWxCLElBQU0rQixVQUFVLEdBQUcsSUFBSUMsZUFBZSxDQUFDLENBQUM7SUFFeENDLEtBQUssQ0FBQ2pDLFdBQVcsRUFBRTtNQUFFa0MsTUFBTSxFQUFFSCxVQUFVLENBQUNHO0lBQU8sQ0FBQyxDQUFDLENBQzlDQyxJQUFJO01BQUEsSUFBQUMsS0FBQSxPQUFBQyxrQkFBQSxDQUFBeEQsT0FBQSxnQkFBQXlELFlBQUEsQ0FBQXpELE9BQUEsQ0FBQTBELElBQUEsQ0FBQyxTQUFBQyxRQUFPQyxHQUFHO1FBQUEsT0FBQUgsWUFBQSxDQUFBekQsT0FBQSxDQUFBNkQsSUFBQSxVQUFBQyxTQUFBQyxRQUFBO1VBQUE7WUFBQSxRQUFBQSxRQUFBLENBQUFDLElBQUEsR0FBQUQsUUFBQSxDQUFBRSxJQUFBO2NBQUE7Z0JBQUEsSUFDVEwsR0FBRyxDQUFDTSxFQUFFO2tCQUFBSCxRQUFBLENBQUFFLElBQUE7a0JBQUE7Z0JBQUE7Z0JBQUEsTUFDSCxJQUFJRSxLQUFLLG9CQUFBQyxNQUFBLENBQW9CUixHQUFHLENBQUNTLE1BQU0sTUFBRyxDQUFDO2NBQUE7Z0JBQUFOLFFBQUEsQ0FBQUUsSUFBQTtnQkFBQSxPQUVyQ0wsR0FBRyxDQUFDVSxJQUFJLENBQUMsQ0FBQztjQUFBO2dCQUFBLE9BQUFQLFFBQUEsQ0FBQVEsTUFBQSxXQUFBUixRQUFBLENBQUFTLElBQUE7Y0FBQTtjQUFBO2dCQUFBLE9BQUFULFFBQUEsQ0FBQVUsSUFBQTtZQUFBO1VBQUE7UUFBQSxHQUFBZCxPQUFBO01BQUEsQ0FDekI7TUFBQSxpQkFBQWUsRUFBQTtRQUFBLE9BQUFuQixLQUFBLENBQUFvQixLQUFBLE9BQUFDLFNBQUE7TUFBQTtJQUFBLElBQUMsQ0FDRHRCLElBQUksQ0FBQyxVQUFDdUIsT0FBTyxFQUFLO01BQ2pCakQsT0FBTyxDQUFDaUQsT0FBTyxDQUFDO01BQ2hCLElBQUl0RCxRQUFRLEVBQUVBLFFBQVEsQ0FBQ3NELE9BQU8sQ0FBQztJQUNqQyxDQUFDLENBQUMsQ0FDREMsS0FBSyxDQUFDLFVBQUNDLEdBQUcsRUFBSztNQUNkLElBQUksQ0FBQUEsR0FBRyxhQUFIQSxHQUFHLHVCQUFIQSxHQUFHLENBQUVDLElBQUksTUFBSyxZQUFZLEVBQUU7TUFDaENwRCxPQUFPLENBQUMsSUFBSSxDQUFDO0lBQ2YsQ0FBQyxDQUFDO0lBRUosT0FBTztNQUFBLE9BQU1zQixVQUFVLENBQUMrQixLQUFLLENBQUMsQ0FBQztJQUFBO0VBQ2pDLENBQUMsRUFBRSxDQUFDOUQsV0FBVyxFQUFFQyxRQUFRLEVBQUVHLFFBQVEsQ0FBQyxDQUFDO0VBRXJDLG9CQUNFakMsTUFBQSxDQUFBVSxPQUFBLENBQUFrRixhQUFBO0lBQ0U1RCxTQUFTLEVBQUVBLFNBQVU7SUFDckI2RCxHQUFHLEVBQUV0QyxRQUFRLEdBQUcsS0FBSyxHQUFHLEtBQU07SUFDOUJ1QyxLQUFLLEVBQUU7TUFDTEMsT0FBTyxFQUFFLEVBQUU7TUFDWEMsT0FBTyxFQUFFLE1BQU07TUFDZkMsYUFBYSxFQUFFLFFBQVE7TUFDdkJDLEdBQUcsRUFBRSxFQUFFO01BQ1BDLFNBQVMsRUFBRTVDLFFBQVEsR0FBRyxPQUFPLEdBQUc7SUFDbEM7RUFBRSxnQkFFRnZELE1BQUEsQ0FBQVUsT0FBQSxDQUFBa0YsYUFBQTtJQUFLRSxLQUFLLEVBQUU7TUFBRUUsT0FBTyxFQUFFLE1BQU07TUFBRUMsYUFBYSxFQUFFLFFBQVE7TUFBRUMsR0FBRyxFQUFFO0lBQUU7RUFBRSxnQkFDL0RsRyxNQUFBLENBQUFVLE9BQUEsQ0FBQWtGLGFBQUE7SUFBS0UsS0FBSyxFQUFFO01BQUVNLFVBQVUsRUFBRTtJQUFJO0VBQUUsR0FBRXJELE9BQWEsQ0FBQyxlQUNoRC9DLE1BQUEsQ0FBQVUsT0FBQSxDQUFBa0YsYUFBQSwyQkFDRTVGLE1BQUEsQ0FBQVUsT0FBQSxDQUFBa0YsYUFBQSxlQUFPekMsS0FBWSxDQUFDLE9BQUcsZUFBQW5ELE1BQUEsQ0FBQVUsT0FBQSxDQUFBa0YsYUFBQSxlQUFPdkMsR0FBVSxDQUNyQyxDQUNGLENBQUMsZUFFTnJELE1BQUEsQ0FBQVUsT0FBQSxDQUFBa0YsYUFBQTtJQUFLRSxLQUFLLEVBQUU7TUFBRUUsT0FBTyxFQUFFLE1BQU07TUFBRUMsYUFBYSxFQUFFLFFBQVE7TUFBRUMsR0FBRyxFQUFFO0lBQUc7RUFBRSxHQUMvRGpELFFBQVEsQ0FBQ29ELEdBQUcsQ0FBQyxVQUFDQyxDQUFDLEVBQUVDLEdBQUc7SUFBQSxJQUFBQyxxQkFBQTtJQUFBLG9CQUNuQnhHLE1BQUEsQ0FBQVUsT0FBQSxDQUFBa0YsYUFBQTtNQUNFekUsR0FBRyxFQUFFb0YsR0FBSTtNQUNUVCxLQUFLLEVBQUU7UUFDTEMsT0FBTyxFQUFFLEVBQUU7UUFDWFUsTUFBTSxFQUFFLDJCQUEyQjtRQUNuQ0MsWUFBWSxFQUFFLENBQUM7UUFDZkMsVUFBVSxFQUFFO01BQ2Q7SUFBRSxnQkFFRjNHLE1BQUEsQ0FBQVUsT0FBQSxDQUFBa0YsYUFBQTtNQUFLRSxLQUFLLEVBQUU7UUFBRU0sVUFBVSxFQUFFO01BQUk7SUFBRSxHQUFFRSxDQUFDLENBQUNNLFFBQWMsQ0FBQyxFQUVsRE4sQ0FBQyxDQUFDTyxXQUFXLGdCQUNaN0csTUFBQSxDQUFBVSxPQUFBLENBQUFrRixhQUFBO01BQUtFLEtBQUssRUFBRTtRQUFFZ0IsU0FBUyxFQUFFLENBQUM7UUFBRUMsT0FBTyxFQUFFLEdBQUc7UUFBRUMsUUFBUSxFQUFFO01BQUc7SUFBRSxHQUN0RFYsQ0FBQyxDQUFDVyxNQUNBLENBQUMsR0FDSixJQUFJLEVBRVAsRUFBQVQscUJBQUEsR0FBQUYsQ0FBQyxDQUFDWSx3QkFBd0IsY0FBQVYscUJBQUEsdUJBQTFCQSxxQkFBQSxDQUE0QlcsTUFBTSxpQkFDakNuSCxNQUFBLENBQUFVLE9BQUEsQ0FBQWtGLGFBQUE7TUFBS0UsS0FBSyxFQUFFO1FBQUVnQixTQUFTLEVBQUU7TUFBRTtJQUFFLEdBQzFCUixDQUFDLENBQUNZLHdCQUF3QixDQUFDRSxJQUFJLENBQUMsSUFBSSxDQUNsQyxDQUFDLEdBQ0osSUFBSSxFQUVQZCxDQUFDLENBQUNlLDRCQUE0QixnQkFDN0JySCxNQUFBLENBQUFVLE9BQUEsQ0FBQWtGLGFBQUE7TUFBS0UsS0FBSyxFQUFFO1FBQUVnQixTQUFTLEVBQUU7TUFBRTtJQUFFLEdBQzFCUixDQUFDLENBQUNlLDRCQUNBLENBQUMsR0FDSixJQUNELENBQUM7RUFBQSxDQUNQLENBQ0UsQ0FDRixDQUFDO0FBRVYsQ0FBQztBQUFDLElBQUFDLFFBQUEsR0FFYTdGLGdCQUFnQjtBQUFBOEYsT0FBQSxDQUFBN0csT0FBQSxHQUFBNEcsUUFBQSJ9
@@ -1,60 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = exports.UpstreamBadge = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var UpstreamBadge = function UpstreamBadge(_ref) {
10
- var count = _ref.count,
11
- _ref$color = _ref.color,
12
- color = _ref$color === void 0 ? '#E11D48' : _ref$color,
13
- _ref$size = _ref.size,
14
- size = _ref$size === void 0 ? 35 : _ref$size,
15
- _ref$className = _ref.className,
16
- className = _ref$className === void 0 ? 'UpstreamBadge' : _ref$className;
17
- var innerSize = size * 0.82;
18
- return /*#__PURE__*/_react.default.createElement("div", {
19
- className: className,
20
- style: {
21
- width: size,
22
- height: size,
23
- borderRadius: '50%',
24
- backgroundColor: '#FFFFFF',
25
- boxShadow: '0 4px 10px rgba(0,0,0,0.15)',
26
- display: 'flex',
27
- alignItems: 'center',
28
- justifyContent: 'center'
29
- }
30
- }, /*#__PURE__*/_react.default.createElement("div", {
31
- style: {
32
- width: innerSize,
33
- height: innerSize,
34
- borderRadius: '50%',
35
- backgroundColor: '#F8F8F8',
36
- display: 'flex',
37
- flexDirection: 'column',
38
- alignItems: 'center',
39
- justifyContent: 'center',
40
- fontWeight: 700,
41
- lineHeight: 1
42
- }
43
- }, /*#__PURE__*/_react.default.createElement("svg", {
44
- width: innerSize * 0.45,
45
- height: innerSize * 0.5,
46
- viewBox: "0 0 24 24",
47
- fill: color
48
- }, /*#__PURE__*/_react.default.createElement("path", {
49
- d: "M12 2l7 8h-4v12h-6V10H5l7-8z"
50
- })), /*#__PURE__*/_react.default.createElement("div", {
51
- style: {
52
- marginTop: 2,
53
- fontSize: innerSize * 0.45
54
- }
55
- }, count)));
56
- };
57
- exports.UpstreamBadge = UpstreamBadge;
58
- var _default = UpstreamBadge;
59
- exports.default = _default;
60
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIlVwc3RyZWFtQmFkZ2UiLCJfcmVmIiwiY291bnQiLCJfcmVmJGNvbG9yIiwiY29sb3IiLCJfcmVmJHNpemUiLCJzaXplIiwiX3JlZiRjbGFzc05hbWUiLCJjbGFzc05hbWUiLCJpbm5lclNpemUiLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsInN0eWxlIiwid2lkdGgiLCJoZWlnaHQiLCJib3JkZXJSYWRpdXMiLCJiYWNrZ3JvdW5kQ29sb3IiLCJib3hTaGFkb3ciLCJkaXNwbGF5IiwiYWxpZ25JdGVtcyIsImp1c3RpZnlDb250ZW50IiwiZmxleERpcmVjdGlvbiIsImZvbnRXZWlnaHQiLCJsaW5lSGVpZ2h0Iiwidmlld0JveCIsImZpbGwiLCJkIiwibWFyZ2luVG9wIiwiZm9udFNpemUiLCJleHBvcnRzIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9TZXZlcmVFdmVudC9VcHN0cmVhbUJhZGdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG50eXBlIFVwc3RyZWFtQmFkZ2VQcm9wcyA9IHtcbiAgY291bnQ6IG51bWJlcjtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICBjb2xvcj86IHN0cmluZzsgLy8gbWFpbiBjb2xvciAoYXJyb3cgKyBudW1iZXIpXG4gIHNpemU/OiBudW1iZXI7IC8vIGRpYW1ldGVyIGluIHB4XG59O1xuXG5leHBvcnQgY29uc3QgVXBzdHJlYW1CYWRnZTogUmVhY3QuRkM8VXBzdHJlYW1CYWRnZVByb3BzPiA9ICh7XG4gIGNvdW50LFxuICBjb2xvciA9ICcjRTExRDQ4JywgLy8gZGVmYXVsdCByZWRcbiAgc2l6ZSA9IDM1LFxuICBjbGFzc05hbWUgPSAnVXBzdHJlYW1CYWRnZScsXG59KSA9PiB7XG4gIGNvbnN0IGlubmVyU2l6ZSA9IHNpemUgKiAwLjgyO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICBzdHlsZT17e1xuICAgICAgICB3aWR0aDogc2l6ZSxcbiAgICAgICAgaGVpZ2h0OiBzaXplLFxuICAgICAgICBib3JkZXJSYWRpdXM6ICc1MCUnLFxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjRkZGRkZGJyxcbiAgICAgICAgYm94U2hhZG93OiAnMCA0cHggMTBweCByZ2JhKDAsMCwwLDAuMTUpJyxcbiAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgfX1cbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgd2lkdGg6IGlubmVyU2l6ZSxcbiAgICAgICAgICBoZWlnaHQ6IGlubmVyU2l6ZSxcbiAgICAgICAgICBib3JkZXJSYWRpdXM6ICc1MCUnLFxuICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJyNGOEY4RjgnLFxuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgZm9udFdlaWdodDogNzAwLFxuICAgICAgICAgIGxpbmVIZWlnaHQ6IDEsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHsvKiBBcnJvdyAqL31cbiAgICAgICAgPHN2Z1xuICAgICAgICAgIHdpZHRoPXtpbm5lclNpemUgKiAwLjQ1fVxuICAgICAgICAgIGhlaWdodD17aW5uZXJTaXplICogMC41fVxuICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICAgIGZpbGw9e2NvbG9yfVxuICAgICAgICA+XG4gICAgICAgICAgPHBhdGggZD1cIk0xMiAybDcgOGgtNHYxMmgtNlYxMEg1bDctOHpcIiAvPlxuICAgICAgICA8L3N2Zz5cblxuICAgICAgICB7LyogQ291bnQgKi99XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgbWFyZ2luVG9wOiAyLFxuICAgICAgICAgICAgZm9udFNpemU6IGlubmVyU2l6ZSAqIDAuNDUsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIHtjb3VudH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5leHBvcnQgZGVmYXVsdCBVcHN0cmVhbUJhZGdlO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBU08sSUFBTUMsYUFBMkMsR0FBRyxTQUE5Q0EsYUFBMkNBLENBQUFDLElBQUEsRUFLbEQ7RUFBQSxJQUpKQyxLQUFLLEdBQUFELElBQUEsQ0FBTEMsS0FBSztJQUFBQyxVQUFBLEdBQUFGLElBQUEsQ0FDTEcsS0FBSztJQUFMQSxLQUFLLEdBQUFELFVBQUEsY0FBRyxTQUFTLEdBQUFBLFVBQUE7SUFBQUUsU0FBQSxHQUFBSixJQUFBLENBQ2pCSyxJQUFJO0lBQUpBLElBQUksR0FBQUQsU0FBQSxjQUFHLEVBQUUsR0FBQUEsU0FBQTtJQUFBRSxjQUFBLEdBQUFOLElBQUEsQ0FDVE8sU0FBUztJQUFUQSxTQUFTLEdBQUFELGNBQUEsY0FBRyxlQUFlLEdBQUFBLGNBQUE7RUFFM0IsSUFBTUUsU0FBUyxHQUFHSCxJQUFJLEdBQUcsSUFBSTtFQUU3QixvQkFDRVQsTUFBQSxDQUFBYSxPQUFBLENBQUFDLGFBQUE7SUFDRUgsU0FBUyxFQUFFQSxTQUFVO0lBQ3JCSSxLQUFLLEVBQUU7TUFDTEMsS0FBSyxFQUFFUCxJQUFJO01BQ1hRLE1BQU0sRUFBRVIsSUFBSTtNQUNaUyxZQUFZLEVBQUUsS0FBSztNQUNuQkMsZUFBZSxFQUFFLFNBQVM7TUFDMUJDLFNBQVMsRUFBRSw2QkFBNkI7TUFDeENDLE9BQU8sRUFBRSxNQUFNO01BQ2ZDLFVBQVUsRUFBRSxRQUFRO01BQ3BCQyxjQUFjLEVBQUU7SUFDbEI7RUFBRSxnQkFFRnZCLE1BQUEsQ0FBQWEsT0FBQSxDQUFBQyxhQUFBO0lBQ0VDLEtBQUssRUFBRTtNQUNMQyxLQUFLLEVBQUVKLFNBQVM7TUFDaEJLLE1BQU0sRUFBRUwsU0FBUztNQUNqQk0sWUFBWSxFQUFFLEtBQUs7TUFDbkJDLGVBQWUsRUFBRSxTQUFTO01BQzFCRSxPQUFPLEVBQUUsTUFBTTtNQUNmRyxhQUFhLEVBQUUsUUFBUTtNQUN2QkYsVUFBVSxFQUFFLFFBQVE7TUFDcEJDLGNBQWMsRUFBRSxRQUFRO01BQ3hCRSxVQUFVLEVBQUUsR0FBRztNQUNmQyxVQUFVLEVBQUU7SUFDZDtFQUFFLGdCQUdGMUIsTUFBQSxDQUFBYSxPQUFBLENBQUFDLGFBQUE7SUFDRUUsS0FBSyxFQUFFSixTQUFTLEdBQUcsSUFBSztJQUN4QkssTUFBTSxFQUFFTCxTQUFTLEdBQUcsR0FBSTtJQUN4QmUsT0FBTyxFQUFDLFdBQVc7SUFDbkJDLElBQUksRUFBRXJCO0VBQU0sZ0JBRVpQLE1BQUEsQ0FBQWEsT0FBQSxDQUFBQyxhQUFBO0lBQU1lLENBQUMsRUFBQztFQUE4QixDQUFFLENBQ3JDLENBQUMsZUFHTjdCLE1BQUEsQ0FBQWEsT0FBQSxDQUFBQyxhQUFBO0lBQ0VDLEtBQUssRUFBRTtNQUNMZSxTQUFTLEVBQUUsQ0FBQztNQUNaQyxRQUFRLEVBQUVuQixTQUFTLEdBQUc7SUFDeEI7RUFBRSxHQUVEUCxLQUNFLENBQ0YsQ0FDRixDQUFDO0FBRVYsQ0FBQztBQUFDMkIsT0FBQSxDQUFBN0IsYUFBQSxHQUFBQSxhQUFBO0FBQUEsSUFBQThCLFFBQUEsR0FDYTlCLGFBQWE7QUFBQTZCLE9BQUEsQ0FBQW5CLE9BQUEsR0FBQW9CLFFBQUEifQ==
@@ -1,235 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
10
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
11
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
12
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
13
- var _react = _interopRequireWildcard(require("react"));
14
- var _KandoModal = _interopRequireDefault(require("../KandoModal"));
15
- var _SeasonalInsights = _interopRequireDefault(require("../SeasonalInsights/SeasonalInsights"));
16
- var _i18next = _interopRequireDefault(require("i18next"));
17
- var _insightsDismissalStorage = require("./insightsDismissalStorage");
18
- 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); }
19
- 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
- var INSIGHT_TYPE = 'seasonal_insight';
21
- var TopBanner = function TopBanner(_ref) {
22
- var _ref$backgroundColor = _ref.backgroundColor,
23
- backgroundColor = _ref$backgroundColor === void 0 ? 'rgb(217, 234, 255)' : _ref$backgroundColor,
24
- _ref$text = _ref.text,
25
- text = _ref$text === void 0 ? '' : _ref$text,
26
- onVisibilityChange = _ref.onVisibilityChange,
27
- apiEndpoint = _ref.apiEndpoint;
28
- var _useState = (0, _react.useState)(true),
29
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
30
- visible = _useState2[0],
31
- setVisible = _useState2[1];
32
- var _useState3 = (0, _react.useState)(null),
33
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
34
- headerText = _useState4[0],
35
- setHeaderText = _useState4[1];
36
- var _useState5 = (0, _react.useState)(''),
37
- _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
38
- titleText = _useState6[0],
39
- setTitleText = _useState6[1];
40
- var _useState7 = (0, _react.useState)(''),
41
- _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
42
- learnMoreText = _useState8[0],
43
- setLearnMoreText = _useState8[1];
44
- var _useState9 = (0, _react.useState)(false),
45
- _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
46
- showModal = _useState10[0],
47
- setShowModal = _useState10[1];
48
- var _useState11 = (0, _react.useState)(null),
49
- _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
50
- insightData = _useState12[0],
51
- setInsightData = _useState12[1];
52
- var bannerHeight = 30; // px
53
- var dir = _i18next.default.dir();
54
-
55
- // On mount or when insight id changes, check localStorage for dismissal
56
- (0, _react.useEffect)(function () {
57
- // If we have insight data with an id, check if it was dismissed
58
- if ((insightData === null || insightData === void 0 ? void 0 : insightData.id) !== undefined) {
59
- try {
60
- var record = (0, _insightsDismissalStorage.getDismissal)(INSIGHT_TYPE);
61
- var dismissed = (record === null || record === void 0 ? void 0 : record.lastDismissedId) === String(insightData.id);
62
- setVisible(!dismissed);
63
- if (onVisibilityChange) onVisibilityChange(!dismissed);
64
- } catch (_unused) {
65
- setVisible(true);
66
- if (onVisibilityChange) onVisibilityChange(true);
67
- }
68
- } else if (insightData === null) {
69
- // No insight data - hide banner if using API, show if using static text prop
70
- if (apiEndpoint) {
71
- // API endpoint exists but no data returned - hide banner
72
- setVisible(false);
73
- if (onVisibilityChange) onVisibilityChange(false);
74
- } else {
75
- // No API endpoint - show banner if text is provided
76
- setVisible(!!text);
77
- if (onVisibilityChange) onVisibilityChange(!!text);
78
- }
79
- }
80
- }, [insightData === null || insightData === void 0 ? void 0 : insightData.id, insightData, apiEndpoint, text, onVisibilityChange]);
81
-
82
- // Fetch data from API if endpoint is provided, robustly
83
- (0, _react.useEffect)(function () {
84
- if (!apiEndpoint) return;
85
- var controller = new AbortController();
86
- fetch(apiEndpoint, {
87
- signal: controller.signal
88
- }).then( /*#__PURE__*/function () {
89
- var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(res) {
90
- return _regenerator.default.wrap(function _callee$(_context) {
91
- while (1) {
92
- switch (_context.prev = _context.next) {
93
- case 0:
94
- if (!(res.status === 404)) {
95
- _context.next = 2;
96
- break;
97
- }
98
- return _context.abrupt("return", {
99
- error: 'not_found'
100
- });
101
- case 2:
102
- if (res.ok) {
103
- _context.next = 4;
104
- break;
105
- }
106
- throw new Error("Request failed (".concat(res.status, ")"));
107
- case 4:
108
- _context.next = 6;
109
- return res.json();
110
- case 6:
111
- return _context.abrupt("return", _context.sent);
112
- case 7:
113
- case "end":
114
- return _context.stop();
115
- }
116
- }
117
- }, _callee);
118
- }));
119
- return function (_x) {
120
- return _ref2.apply(this, arguments);
121
- };
122
- }()).then(function (data) {
123
- // When the API says not_found, do not show the banner.
124
- if ((data === null || data === void 0 ? void 0 : data.error) === 'not_found') {
125
- setInsightData(null);
126
- setHeaderText(null);
127
- setTitleText('');
128
- setLearnMoreText('');
129
- setVisible(false);
130
- return;
131
- }
132
- setInsightData(data);
133
- setTitleText(String(_i18next.default.t('seasonal_insights.title')));
134
- setLearnMoreText(String(_i18next.default.t('seasonal_insights.learn_more')));
135
- }).catch(function (err) {
136
- // On fetch error, hide the banner (no data to show)
137
- if ((err === null || err === void 0 ? void 0 : err.name) !== 'AbortError') {
138
- setInsightData(null);
139
- setHeaderText(null);
140
- setTitleText('');
141
- setLearnMoreText('');
142
- setVisible(false);
143
- }
144
- });
145
- return function () {
146
- return controller.abort();
147
- };
148
- }, [apiEndpoint, text]);
149
-
150
- // Notify parent on visibility change
151
- (0, _react.useEffect)(function () {
152
- if (onVisibilityChange) onVisibilityChange(visible);
153
- }, [visible]);
154
-
155
- // When dismissed, persist in localStorage
156
- var handleDismiss = function handleDismiss() {
157
- setVisible(false);
158
- if ((insightData === null || insightData === void 0 ? void 0 : insightData.id) === undefined) return;
159
- try {
160
- (0, _insightsDismissalStorage.setDismissal)(INSIGHT_TYPE, String(insightData.id));
161
- } catch (_unused2) {
162
- // ignore storage errors
163
- }
164
- };
165
- var openModal = function openModal() {
166
- setShowModal(true);
167
- };
168
- var closeModal = function closeModal() {
169
- setShowModal(false);
170
- };
171
- var modal = (0, _react.useMemo)(function () {
172
- if (!showModal) return null;
173
- var dir = _i18next.default.dir();
174
- return /*#__PURE__*/_react.default.createElement(_KandoModal.default, {
175
- isOpen: showModal,
176
- onClose: closeModal,
177
- dir: dir
178
- }, /*#__PURE__*/_react.default.createElement(_SeasonalInsights.default, {
179
- data: insightData
180
- }));
181
- }, [showModal]);
182
- var hasContent = apiEndpoint ? titleText && learnMoreText : text || headerText;
183
- if (!visible || !hasContent) {
184
- return null;
185
- }
186
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
187
- style: {
188
- width: '100%',
189
- background: backgroundColor,
190
- padding: '8px',
191
- textAlign: 'center',
192
- position: 'relative',
193
- boxSizing: 'border-box',
194
- minHeight: "".concat(bannerHeight, "px"),
195
- height: "".concat(bannerHeight, "px"),
196
- display: 'flex',
197
- alignItems: 'center',
198
- justifyContent: 'center',
199
- fontSize: '14px',
200
- cursor: 'default'
201
- }
202
- }, /*#__PURE__*/_react.default.createElement("span", null, apiEndpoint ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", {
203
- style: {
204
- filter: 'drop-shadow(0 0 2px rgba(0, 0, 0, 0.3))',
205
- fontSize: '16px',
206
- display: 'inline-block',
207
- marginRight: '4px'
208
- }
209
- }, "\u2728"), titleText, ' ', /*#__PURE__*/_react.default.createElement("span", {
210
- onClick: openModal,
211
- style: {
212
- textDecoration: 'underline',
213
- cursor: 'pointer'
214
- }
215
- }, learnMoreText)) : headerText || text), /*#__PURE__*/_react.default.createElement("button", {
216
- onClick: handleDismiss,
217
- style: (0, _objectSpread2.default)((0, _objectSpread2.default)({
218
- position: 'absolute'
219
- }, dir === 'rtl' ? {
220
- left: 10,
221
- right: 'auto'
222
- } : {
223
- right: 10
224
- }), {}, {
225
- background: 'transparent',
226
- border: 'none',
227
- fontSize: '24px',
228
- cursor: 'pointer'
229
- }),
230
- "aria-label": "Dismiss banner"
231
- }, "\xD7")), modal);
232
- };
233
- var _default = TopBanner;
234
- exports.default = _default;
235
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfS2FuZG9Nb2RhbCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfU2Vhc29uYWxJbnNpZ2h0cyIsIl9pMThuZXh0IiwiX2luc2lnaHRzRGlzbWlzc2FsU3RvcmFnZSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiSU5TSUdIVF9UWVBFIiwiVG9wQmFubmVyIiwiX3JlZiIsIl9yZWYkYmFja2dyb3VuZENvbG9yIiwiYmFja2dyb3VuZENvbG9yIiwiX3JlZiR0ZXh0IiwidGV4dCIsIm9uVmlzaWJpbGl0eUNoYW5nZSIsImFwaUVuZHBvaW50IiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwidmlzaWJsZSIsInNldFZpc2libGUiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImhlYWRlclRleHQiLCJzZXRIZWFkZXJUZXh0IiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJ0aXRsZVRleHQiLCJzZXRUaXRsZVRleHQiLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsImxlYXJuTW9yZVRleHQiLCJzZXRMZWFybk1vcmVUZXh0IiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTEwIiwic2hvd01vZGFsIiwic2V0U2hvd01vZGFsIiwiX3VzZVN0YXRlMTEiLCJfdXNlU3RhdGUxMiIsImluc2lnaHREYXRhIiwic2V0SW5zaWdodERhdGEiLCJiYW5uZXJIZWlnaHQiLCJkaXIiLCJpMThuZXh0IiwidXNlRWZmZWN0IiwiaWQiLCJ1bmRlZmluZWQiLCJyZWNvcmQiLCJnZXREaXNtaXNzYWwiLCJkaXNtaXNzZWQiLCJsYXN0RGlzbWlzc2VkSWQiLCJTdHJpbmciLCJfdW51c2VkIiwiY29udHJvbGxlciIsIkFib3J0Q29udHJvbGxlciIsImZldGNoIiwic2lnbmFsIiwidGhlbiIsIl9yZWYyIiwiX2FzeW5jVG9HZW5lcmF0b3IyIiwiX3JlZ2VuZXJhdG9yIiwibWFyayIsIl9jYWxsZWUiLCJyZXMiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0Iiwic3RhdHVzIiwiYWJydXB0IiwiZXJyb3IiLCJvayIsIkVycm9yIiwiY29uY2F0IiwianNvbiIsInNlbnQiLCJzdG9wIiwiX3giLCJhcHBseSIsImFyZ3VtZW50cyIsImRhdGEiLCJ0IiwiY2F0Y2giLCJlcnIiLCJuYW1lIiwiYWJvcnQiLCJoYW5kbGVEaXNtaXNzIiwic2V0RGlzbWlzc2FsIiwiX3VudXNlZDIiLCJvcGVuTW9kYWwiLCJjbG9zZU1vZGFsIiwibW9kYWwiLCJ1c2VNZW1vIiwiY3JlYXRlRWxlbWVudCIsImlzT3BlbiIsIm9uQ2xvc2UiLCJoYXNDb250ZW50IiwiRnJhZ21lbnQiLCJzdHlsZSIsIndpZHRoIiwiYmFja2dyb3VuZCIsInBhZGRpbmciLCJ0ZXh0QWxpZ24iLCJwb3NpdGlvbiIsImJveFNpemluZyIsIm1pbkhlaWdodCIsImhlaWdodCIsImRpc3BsYXkiLCJhbGlnbkl0ZW1zIiwianVzdGlmeUNvbnRlbnQiLCJmb250U2l6ZSIsImN1cnNvciIsImZpbHRlciIsIm1hcmdpblJpZ2h0Iiwib25DbGljayIsInRleHREZWNvcmF0aW9uIiwiX29iamVjdFNwcmVhZDIiLCJsZWZ0IiwicmlnaHQiLCJib3JkZXIiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9Ub3BCYW5uZXIvVG9wQmFubmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUsIHVzZUVmZmVjdCwgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBLYW5kb01vZGFsIGZyb20gJy4uL0thbmRvTW9kYWwnO1xuaW1wb3J0IFNlYXNvbmFsSW5zaWdodHMsIHtcbiAgU2Vhc29uYWxJbnNpZ2h0UmVzcG9uc2UsXG59IGZyb20gJy4uL1NlYXNvbmFsSW5zaWdodHMvU2Vhc29uYWxJbnNpZ2h0cyc7XG5pbXBvcnQgaTE4bmV4dCBmcm9tICdpMThuZXh0JztcbmltcG9ydCB7XG4gIGdldERpc21pc3NhbCxcbiAgc2V0RGlzbWlzc2FsLFxuICBJbnNpZ2h0VHlwZSxcbn0gZnJvbSAnLi9pbnNpZ2h0c0Rpc21pc3NhbFN0b3JhZ2UnO1xuXG5pbnRlcmZhY2UgVG9wQmFubmVyUHJvcHMge1xuICBiYWNrZ3JvdW5kQ29sb3I/OiBzdHJpbmc7XG4gIHRleHQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIG9uVmlzaWJpbGl0eUNoYW5nZT86ICh2aXNpYmxlOiBib29sZWFuKSA9PiB2b2lkO1xuICBhcGlFbmRwb2ludD86IHN0cmluZzsgLy8gQWRkIHRoaXMgcHJvcCBmb3IgQVBJIGVuZHBvaW50XG59XG5cbmNvbnN0IElOU0lHSFRfVFlQRTogSW5zaWdodFR5cGUgPSAnc2Vhc29uYWxfaW5zaWdodCc7XG5cbmNvbnN0IFRvcEJhbm5lcjogUmVhY3QuRkM8VG9wQmFubmVyUHJvcHM+ID0gKHtcbiAgYmFja2dyb3VuZENvbG9yID0gJ3JnYigyMTcsIDIzNCwgMjU1KScsIC8vICNmNWI3YzUnLFxuICB0ZXh0ID0gJycsXG4gIG9uVmlzaWJpbGl0eUNoYW5nZSxcbiAgYXBpRW5kcG9pbnQsXG59KSA9PiB7XG4gIGNvbnN0IFt2aXNpYmxlLCBzZXRWaXNpYmxlXSA9IHVzZVN0YXRlKHRydWUpO1xuICBjb25zdCBbaGVhZGVyVGV4dCwgc2V0SGVhZGVyVGV4dF0gPSB1c2VTdGF0ZTxSZWFjdC5SZWFjdE5vZGU+KG51bGwpO1xuICBjb25zdCBbdGl0bGVUZXh0LCBzZXRUaXRsZVRleHRdID0gdXNlU3RhdGU8c3RyaW5nPignJyk7XG4gIGNvbnN0IFtsZWFybk1vcmVUZXh0LCBzZXRMZWFybk1vcmVUZXh0XSA9IHVzZVN0YXRlPHN0cmluZz4oJycpO1xuICBjb25zdCBbc2hvd01vZGFsLCBzZXRTaG93TW9kYWxdID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbaW5zaWdodERhdGEsIHNldEluc2lnaHREYXRhXSA9XG4gICAgdXNlU3RhdGU8U2Vhc29uYWxJbnNpZ2h0UmVzcG9uc2UgfCBudWxsPihudWxsKTtcblxuICBjb25zdCBiYW5uZXJIZWlnaHQgPSAzMDsgLy8gcHhcbiAgY29uc3QgZGlyID0gaTE4bmV4dC5kaXIoKTtcblxuICAvLyBPbiBtb3VudCBvciB3aGVuIGluc2lnaHQgaWQgY2hhbmdlcywgY2hlY2sgbG9jYWxTdG9yYWdlIGZvciBkaXNtaXNzYWxcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBJZiB3ZSBoYXZlIGluc2lnaHQgZGF0YSB3aXRoIGFuIGlkLCBjaGVjayBpZiBpdCB3YXMgZGlzbWlzc2VkXG4gICAgaWYgKGluc2lnaHREYXRhPy5pZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZWNvcmQgPSBnZXREaXNtaXNzYWwoSU5TSUdIVF9UWVBFKTtcbiAgICAgICAgY29uc3QgZGlzbWlzc2VkID0gcmVjb3JkPy5sYXN0RGlzbWlzc2VkSWQgPT09IFN0cmluZyhpbnNpZ2h0RGF0YS5pZCk7XG4gICAgICAgIHNldFZpc2libGUoIWRpc21pc3NlZCk7XG4gICAgICAgIGlmIChvblZpc2liaWxpdHlDaGFuZ2UpIG9uVmlzaWJpbGl0eUNoYW5nZSghZGlzbWlzc2VkKTtcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICBzZXRWaXNpYmxlKHRydWUpO1xuICAgICAgICBpZiAob25WaXNpYmlsaXR5Q2hhbmdlKSBvblZpc2liaWxpdHlDaGFuZ2UodHJ1ZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChpbnNpZ2h0RGF0YSA9PT0gbnVsbCkge1xuICAgICAgLy8gTm8gaW5zaWdodCBkYXRhIC0gaGlkZSBiYW5uZXIgaWYgdXNpbmcgQVBJLCBzaG93IGlmIHVzaW5nIHN0YXRpYyB0ZXh0IHByb3BcbiAgICAgIGlmIChhcGlFbmRwb2ludCkge1xuICAgICAgICAvLyBBUEkgZW5kcG9pbnQgZXhpc3RzIGJ1dCBubyBkYXRhIHJldHVybmVkIC0gaGlkZSBiYW5uZXJcbiAgICAgICAgc2V0VmlzaWJsZShmYWxzZSk7XG4gICAgICAgIGlmIChvblZpc2liaWxpdHlDaGFuZ2UpIG9uVmlzaWJpbGl0eUNoYW5nZShmYWxzZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBObyBBUEkgZW5kcG9pbnQgLSBzaG93IGJhbm5lciBpZiB0ZXh0IGlzIHByb3ZpZGVkXG4gICAgICAgIHNldFZpc2libGUoISF0ZXh0KTtcbiAgICAgICAgaWYgKG9uVmlzaWJpbGl0eUNoYW5nZSkgb25WaXNpYmlsaXR5Q2hhbmdlKCEhdGV4dCk7XG4gICAgICB9XG4gICAgfVxuICB9LCBbaW5zaWdodERhdGE/LmlkLCBpbnNpZ2h0RGF0YSwgYXBpRW5kcG9pbnQsIHRleHQsIG9uVmlzaWJpbGl0eUNoYW5nZV0pO1xuXG4gIC8vIEZldGNoIGRhdGEgZnJvbSBBUEkgaWYgZW5kcG9pbnQgaXMgcHJvdmlkZWQsIHJvYnVzdGx5XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFhcGlFbmRwb2ludCkgcmV0dXJuO1xuXG4gICAgY29uc3QgY29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAgIGZldGNoKGFwaUVuZHBvaW50LCB7IHNpZ25hbDogY29udHJvbGxlci5zaWduYWwgfSlcbiAgICAgIC50aGVuKGFzeW5jIChyZXMpID0+IHtcbiAgICAgICAgaWYgKHJlcy5zdGF0dXMgPT09IDQwNCkge1xuICAgICAgICAgIC8vIEFQSSBleHBsaWNpdGx5IHNheXMgdGhlcmUgaXMgbm8gc2Vhc29uYWwgaW5zaWdodC5cbiAgICAgICAgICByZXR1cm4geyBlcnJvcjogJ25vdF9mb3VuZCcgfSBhcyB1bmtub3duIGFzIFNlYXNvbmFsSW5zaWdodFJlc3BvbnNlO1xuICAgICAgICB9XG4gICAgICAgIGlmICghcmVzLm9rKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBSZXF1ZXN0IGZhaWxlZCAoJHtyZXMuc3RhdHVzfSlgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKGF3YWl0IHJlcy5qc29uKCkpIGFzIFNlYXNvbmFsSW5zaWdodFJlc3BvbnNlO1xuICAgICAgfSlcbiAgICAgIC50aGVuKChkYXRhKSA9PiB7XG4gICAgICAgIC8vIFdoZW4gdGhlIEFQSSBzYXlzIG5vdF9mb3VuZCwgZG8gbm90IHNob3cgdGhlIGJhbm5lci5cbiAgICAgICAgaWYgKChkYXRhIGFzIGFueSk/LmVycm9yID09PSAnbm90X2ZvdW5kJykge1xuICAgICAgICAgIHNldEluc2lnaHREYXRhKG51bGwpO1xuICAgICAgICAgIHNldEhlYWRlclRleHQobnVsbCk7XG4gICAgICAgICAgc2V0VGl0bGVUZXh0KCcnKTtcbiAgICAgICAgICBzZXRMZWFybk1vcmVUZXh0KCcnKTtcbiAgICAgICAgICBzZXRWaXNpYmxlKGZhbHNlKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc2V0SW5zaWdodERhdGEoZGF0YSk7XG5cbiAgICAgICAgc2V0VGl0bGVUZXh0KFN0cmluZyhpMThuZXh0LnQoJ3NlYXNvbmFsX2luc2lnaHRzLnRpdGxlJykpKTtcbiAgICAgICAgc2V0TGVhcm5Nb3JlVGV4dChTdHJpbmcoaTE4bmV4dC50KCdzZWFzb25hbF9pbnNpZ2h0cy5sZWFybl9tb3JlJykpKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICAvLyBPbiBmZXRjaCBlcnJvciwgaGlkZSB0aGUgYmFubmVyIChubyBkYXRhIHRvIHNob3cpXG4gICAgICAgIGlmIChlcnI/Lm5hbWUgIT09ICdBYm9ydEVycm9yJykge1xuICAgICAgICAgIHNldEluc2lnaHREYXRhKG51bGwpO1xuICAgICAgICAgIHNldEhlYWRlclRleHQobnVsbCk7XG4gICAgICAgICAgc2V0VGl0bGVUZXh0KCcnKTtcbiAgICAgICAgICBzZXRMZWFybk1vcmVUZXh0KCcnKTtcbiAgICAgICAgICBzZXRWaXNpYmxlKGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICByZXR1cm4gKCkgPT4gY29udHJvbGxlci5hYm9ydCgpO1xuICB9LCBbYXBpRW5kcG9pbnQsIHRleHRdKTtcblxuICAvLyBOb3RpZnkgcGFyZW50IG9uIHZpc2liaWxpdHkgY2hhbmdlXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKG9uVmlzaWJpbGl0eUNoYW5nZSkgb25WaXNpYmlsaXR5Q2hhbmdlKHZpc2libGUpO1xuICB9LCBbdmlzaWJsZV0pO1xuXG4gIC8vIFdoZW4gZGlzbWlzc2VkLCBwZXJzaXN0IGluIGxvY2FsU3RvcmFnZVxuICBjb25zdCBoYW5kbGVEaXNtaXNzID0gKCkgPT4ge1xuICAgIHNldFZpc2libGUoZmFsc2UpO1xuICAgIGlmIChpbnNpZ2h0RGF0YT8uaWQgPT09IHVuZGVmaW5lZCkgcmV0dXJuO1xuXG4gICAgdHJ5IHtcbiAgICAgIHNldERpc21pc3NhbChJTlNJR0hUX1RZUEUsIFN0cmluZyhpbnNpZ2h0RGF0YS5pZCkpO1xuICAgIH0gY2F0Y2gge1xuICAgICAgLy8gaWdub3JlIHN0b3JhZ2UgZXJyb3JzXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IG9wZW5Nb2RhbCA9ICgpID0+IHtcbiAgICBzZXRTaG93TW9kYWwodHJ1ZSk7XG4gIH07XG5cbiAgY29uc3QgY2xvc2VNb2RhbCA9ICgpID0+IHtcbiAgICBzZXRTaG93TW9kYWwoZmFsc2UpO1xuICB9O1xuXG4gIGNvbnN0IG1vZGFsID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKCFzaG93TW9kYWwpIHJldHVybiBudWxsO1xuICAgIGNvbnN0IGRpciA9IGkxOG5leHQuZGlyKCk7XG4gICAgcmV0dXJuIChcbiAgICAgIDxLYW5kb01vZGFsIGlzT3Blbj17c2hvd01vZGFsfSBvbkNsb3NlPXtjbG9zZU1vZGFsfSBkaXI9e2Rpcn0+XG4gICAgICAgIDxTZWFzb25hbEluc2lnaHRzIGRhdGE9e2luc2lnaHREYXRhfSAvPlxuICAgICAgPC9LYW5kb01vZGFsPlxuICAgICk7XG4gIH0sIFtzaG93TW9kYWxdKTtcblxuICBjb25zdCBoYXNDb250ZW50ID0gYXBpRW5kcG9pbnRcbiAgICA/IHRpdGxlVGV4dCAmJiBsZWFybk1vcmVUZXh0XG4gICAgOiB0ZXh0IHx8IGhlYWRlclRleHQ7XG4gIGlmICghdmlzaWJsZSB8fCAhaGFzQ29udGVudCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPGRpdlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgYmFja2dyb3VuZDogYmFja2dyb3VuZENvbG9yLFxuICAgICAgICAgIHBhZGRpbmc6ICc4cHgnLFxuICAgICAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXG4gICAgICAgICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgICAgICAgYm94U2l6aW5nOiAnYm9yZGVyLWJveCcsXG4gICAgICAgICAgbWluSGVpZ2h0OiBgJHtiYW5uZXJIZWlnaHR9cHhgLFxuICAgICAgICAgIGhlaWdodDogYCR7YmFubmVySGVpZ2h0fXB4YCxcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgIGZvbnRTaXplOiAnMTRweCcsXG4gICAgICAgICAgY3Vyc29yOiAnZGVmYXVsdCcsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxzcGFuPlxuICAgICAgICAgIHthcGlFbmRwb2ludCA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIGZpbHRlcjogJ2Ryb3Atc2hhZG93KDAgMCAycHggcmdiYSgwLCAwLCAwLCAwLjMpKScsXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogJzE2cHgnLFxuICAgICAgICAgICAgICAgICAgZGlzcGxheTogJ2lubGluZS1ibG9jaycsXG4gICAgICAgICAgICAgICAgICBtYXJnaW5SaWdodDogJzRweCcsXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIOKcqFxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIHt0aXRsZVRleHR9eycgJ31cbiAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtvcGVuTW9kYWx9XG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uOiAndW5kZXJsaW5lJyxcbiAgICAgICAgICAgICAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7bGVhcm5Nb3JlVGV4dH1cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIGhlYWRlclRleHQgfHwgdGV4dFxuICAgICAgICAgICl9XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZURpc21pc3N9XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgICAgLi4uKGRpciA9PT0gJ3J0bCdcbiAgICAgICAgICAgICAgPyB7IGxlZnQ6IDEwLCByaWdodDogJ2F1dG8nIGFzIGNvbnN0IH1cbiAgICAgICAgICAgICAgOiB7IHJpZ2h0OiAxMCB9KSxcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICd0cmFuc3BhcmVudCcsXG4gICAgICAgICAgICBib3JkZXI6ICdub25lJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAnMjRweCcsXG4gICAgICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICAgICAgICB9fVxuICAgICAgICAgIGFyaWEtbGFiZWw9XCJEaXNtaXNzIGJhbm5lclwiXG4gICAgICAgID5cbiAgICAgICAgICDDl1xuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAge21vZGFsfVxuICAgIDwvPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgVG9wQmFubmVyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxpQkFBQSxHQUFBRCxzQkFBQSxDQUFBRixPQUFBO0FBR0EsSUFBQUksUUFBQSxHQUFBRixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUsseUJBQUEsR0FBQUwsT0FBQTtBQUlvQyxTQUFBTSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQVIsd0JBQUFZLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxh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
@@ -1,36 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getDismissal = getDismissal;
7
- exports.setDismissal = setDismissal;
8
- var STORAGE_PREFIX = 'TopBannerDismissed';
9
- var buildKey = function buildKey(type) {
10
- return "".concat(STORAGE_PREFIX, ":").concat(type);
11
- };
12
- function getDismissal(type) {
13
- try {
14
- var raw = localStorage.getItem(buildKey(type));
15
- if (!raw) return null;
16
- var parsed = JSON.parse(raw);
17
- if (!parsed || typeof parsed.lastDismissedId !== 'string') {
18
- return null;
19
- }
20
- return parsed;
21
- } catch (_unused) {
22
- return null;
23
- }
24
- }
25
- function setDismissal(type, id) {
26
- var record = {
27
- lastDismissedId: id,
28
- dismissedAt: new Date().toISOString()
29
- };
30
- try {
31
- localStorage.setItem(buildKey(type), JSON.stringify(record));
32
- } catch (_unused2) {
33
- // ignore storage errors
34
- }
35
- }
36
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTVE9SQUdFX1BSRUZJWCIsImJ1aWxkS2V5IiwidHlwZSIsImNvbmNhdCIsImdldERpc21pc3NhbCIsInJhdyIsImxvY2FsU3RvcmFnZSIsImdldEl0ZW0iLCJwYXJzZWQiLCJKU09OIiwicGFyc2UiLCJsYXN0RGlzbWlzc2VkSWQiLCJfdW51c2VkIiwic2V0RGlzbWlzc2FsIiwiaWQiLCJyZWNvcmQiLCJkaXNtaXNzZWRBdCIsIkRhdGUiLCJ0b0lTT1N0cmluZyIsInNldEl0ZW0iLCJzdHJpbmdpZnkiLCJfdW51c2VkMiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL1RvcEJhbm5lci9pbnNpZ2h0c0Rpc21pc3NhbFN0b3JhZ2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgSW5zaWdodFR5cGUgPSAnc2Vhc29uYWxfaW5zaWdodCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zaWdodERpc21pc3NhbFJlY29yZCB7XG4gIGxhc3REaXNtaXNzZWRJZDogc3RyaW5nO1xuICBkaXNtaXNzZWRBdD86IHN0cmluZztcbn1cblxuY29uc3QgU1RPUkFHRV9QUkVGSVggPSAnVG9wQmFubmVyRGlzbWlzc2VkJztcblxuY29uc3QgYnVpbGRLZXkgPSAodHlwZTogSW5zaWdodFR5cGUpID0+IGAke1NUT1JBR0VfUFJFRklYfToke3R5cGV9YDtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERpc21pc3NhbCh0eXBlOiBJbnNpZ2h0VHlwZSk6IEluc2lnaHREaXNtaXNzYWxSZWNvcmQgfCBudWxsIHtcbiAgdHJ5IHtcbiAgICBjb25zdCByYXcgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShidWlsZEtleSh0eXBlKSk7XG4gICAgaWYgKCFyYXcpIHJldHVybiBudWxsO1xuXG4gICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShyYXcpIGFzIFBhcnRpYWw8SW5zaWdodERpc21pc3NhbFJlY29yZD47XG4gICAgaWYgKCFwYXJzZWQgfHwgdHlwZW9mIHBhcnNlZC5sYXN0RGlzbWlzc2VkSWQgIT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyc2VkIGFzIEluc2lnaHREaXNtaXNzYWxSZWNvcmQ7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXREaXNtaXNzYWwodHlwZTogSW5zaWdodFR5cGUsIGlkOiBzdHJpbmcpIHtcbiAgY29uc3QgcmVjb3JkOiBJbnNpZ2h0RGlzbWlzc2FsUmVjb3JkID0ge1xuICAgIGxhc3REaXNtaXNzZWRJZDogaWQsXG4gICAgZGlzbWlzc2VkQXQ6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgfTtcblxuICB0cnkge1xuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGJ1aWxkS2V5KHR5cGUpLCBKU09OLnN0cmluZ2lmeShyZWNvcmQpKTtcbiAgfSBjYXRjaCB7XG4gICAgLy8gaWdub3JlIHN0b3JhZ2UgZXJyb3JzXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQU9BLElBQU1BLGNBQWMsR0FBRyxvQkFBb0I7QUFFM0MsSUFBTUMsUUFBUSxHQUFHLFNBQVhBLFFBQVFBLENBQUlDLElBQWlCO0VBQUEsVUFBQUMsTUFBQSxDQUFRSCxjQUFjLE9BQUFHLE1BQUEsQ0FBSUQsSUFBSTtBQUFBLENBQUU7QUFFNUQsU0FBU0UsWUFBWUEsQ0FBQ0YsSUFBaUIsRUFBaUM7RUFDN0UsSUFBSTtJQUNGLElBQU1HLEdBQUcsR0FBR0MsWUFBWSxDQUFDQyxPQUFPLENBQUNOLFFBQVEsQ0FBQ0MsSUFBSSxDQUFDLENBQUM7SUFDaEQsSUFBSSxDQUFDRyxHQUFHLEVBQUUsT0FBTyxJQUFJO0lBRXJCLElBQU1HLE1BQU0sR0FBR0MsSUFBSSxDQUFDQyxLQUFLLENBQUNMLEdBQUcsQ0FBb0M7SUFDakUsSUFBSSxDQUFDRyxNQUFNLElBQUksT0FBT0EsTUFBTSxDQUFDRyxlQUFlLEtBQUssUUFBUSxFQUFFO01BQ3pELE9BQU8sSUFBSTtJQUNiO0lBRUEsT0FBT0gsTUFBTTtFQUNmLENBQUMsQ0FBQyxPQUFBSSxPQUFBLEVBQU07SUFDTixPQUFPLElBQUk7RUFDYjtBQUNGO0FBRU8sU0FBU0MsWUFBWUEsQ0FBQ1gsSUFBaUIsRUFBRVksRUFBVSxFQUFFO0VBQzFELElBQU1DLE1BQThCLEdBQUc7SUFDckNKLGVBQWUsRUFBRUcsRUFBRTtJQUNuQkUsV0FBVyxFQUFFLElBQUlDLElBQUksQ0FBQyxDQUFDLENBQUNDLFdBQVcsQ0FBQztFQUN0QyxDQUFDO0VBRUQsSUFBSTtJQUNGWixZQUFZLENBQUNhLE9BQU8sQ0FBQ2xCLFFBQVEsQ0FBQ0MsSUFBSSxDQUFDLEVBQUVPLElBQUksQ0FBQ1csU0FBUyxDQUFDTCxNQUFNLENBQUMsQ0FBQztFQUM5RCxDQUFDLENBQUMsT0FBQU0sUUFBQSxFQUFNO0lBQ047RUFBQTtBQUVKIn0=