@kando-env/kando-ui 1.2.235 → 1.2.236

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 (592) hide show
  1. package/lib/Router.js +4 -66
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +11 -41
  3. package/lib/Widgets/EventsRow/EventsRow.js +14 -41
  4. package/lib/Widgets/Map/GraphUtils.js +1 -4
  5. package/lib/Widgets/Map/Map.js +117 -62
  6. package/lib/Widgets/Map/Map.scss +67 -0
  7. package/lib/Widgets/Map/MapUtils.js +28 -67
  8. package/lib/Widgets/Map/areas/AreaPolygon.js +7 -27
  9. package/lib/Widgets/Map/areas/AreaPolygons.js +10 -23
  10. package/lib/Widgets/Map/edges/Edge.js +10 -31
  11. package/lib/Widgets/Map/edges/Edge.scss +7 -2
  12. package/lib/Widgets/Map/edges/Edges.js +24 -18
  13. package/lib/Widgets/Map/edges/arrows/Arrows.js +7 -22
  14. package/lib/Widgets/Map/events/Event.js +7 -23
  15. package/lib/Widgets/Map/events/EventIndicator.js +20 -43
  16. package/lib/Widgets/Map/events/EventPath.js +5 -20
  17. package/lib/Widgets/Map/events/EventUtils.js +26 -69
  18. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +10 -17
  19. package/lib/Widgets/Map/events/PointOfEvent.js +11 -37
  20. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +4 -14
  21. package/lib/Widgets/Map/events/Snail.js +7 -19
  22. package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +15 -54
  23. package/lib/Widgets/Map/map/FloatingGraph.js +3 -19
  24. package/lib/Widgets/Map/map/GraphDateButton.js +3 -9
  25. package/lib/Widgets/Map/matchGraph/MatchGraph.js +5 -11
  26. package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +4 -10
  27. package/lib/Widgets/Map/points/PointIcon.js +44 -0
  28. package/lib/Widgets/Map/points/PointIcon.scss +230 -0
  29. package/lib/Widgets/Map/points/PointMarker.js +22 -35
  30. package/lib/Widgets/Map/points/PointMarkers.js +62 -26
  31. package/lib/Widgets/Map/points/PointUtils.js +85 -106
  32. package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +15 -49
  33. package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +4 -19
  34. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +1 -13
  35. package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +1 -5
  36. package/lib/Widgets/MostPolluting/Areas/Areas.js +19 -53
  37. package/lib/Widgets/MostPolluting/Areas/areas.mock.js +1 -1
  38. package/lib/Widgets/MostPolluting/Areas/areasResponse.interface.js +1 -1
  39. package/lib/Widgets/MostPolluting/Areas/styles.js +1 -7
  40. package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +3 -11
  41. package/lib/Widgets/MostPolluting/Factories/Factories.js +30 -64
  42. package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +4 -21
  43. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +1 -10
  44. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +4 -17
  45. package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +3 -7
  46. package/lib/Widgets/MostPolluting/Factories/factories.mock.js +1 -1
  47. package/lib/Widgets/MostPolluting/Factories/factoriesResponse.interface.js +1 -1
  48. package/lib/Widgets/MostPolluting/Factories/styles.js +1 -7
  49. package/lib/Widgets/MostPolluting/MostPolluting.js +22 -18
  50. package/lib/Widgets/MostPolluting/MostPolluting.stories.js +13 -17
  51. package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +2 -9
  52. package/lib/Widgets/MostPolluting/ShowMore/styles.js +1 -5
  53. package/lib/Widgets/MostPolluting/assets/index.js +17 -28
  54. package/lib/Widgets/MostPolluting/components/ChangePercent.js +1 -16
  55. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +15 -26
  56. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +4 -26
  57. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +25 -33
  58. package/lib/Widgets/MostPolluting/components/PotentialImpact.js +4 -20
  59. package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +29 -43
  60. package/lib/Widgets/MostPolluting/models.js +1 -1
  61. package/lib/Widgets/MostPolluting/styles.js +1 -7
  62. package/lib/Widgets/PotentialImpactSummary/Back/Back.js +2 -9
  63. package/lib/Widgets/PotentialImpactSummary/Icon.js +1 -11
  64. package/lib/Widgets/PotentialImpactSummary/index.js +7 -29
  65. package/lib/Widgets/PotentialImpactSummary/index.test.js +17 -36
  66. package/lib/Widgets/PotentialImpactSummary/styles.js +2 -15
  67. package/lib/Widgets/PotentialImpactSummary/useCasesResponse.interface.js +1 -1
  68. package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +4 -10
  69. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +7 -21
  70. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +19 -29
  71. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +15 -24
  72. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +7 -21
  73. package/lib/Widgets/QualitySummary/QualitySummary.js +8 -24
  74. package/lib/Widgets/QualitySummary/qualitySummary.mock.js +2 -2
  75. package/lib/Widgets/QualitySummary/qualitySummaryResponse.interface.js +1 -1
  76. package/lib/Widgets/QualitySummary/styles.js +2 -15
  77. package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +9 -20
  78. package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +9 -34
  79. package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +9 -18
  80. package/lib/Widgets/UtilityInformation/UtilityInformation.js +22 -45
  81. package/lib/Widgets/UtilityInformation/UtilityInformationResponse.interface.js +1 -1
  82. package/lib/Widgets/UtilityInformation/styles.js +2 -22
  83. package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +2 -2
  84. package/lib/assets/icons/index.js +5 -8
  85. package/lib/assets/icons/kandoStepper/index.js +9 -14
  86. package/lib/assets/icons/pin/pin-matash-white.svg +8 -42
  87. package/lib/assets/icons/plus_v.svg +13 -0
  88. package/lib/assets/icons/water_reuse.svg +27 -0
  89. package/lib/assets/map/pin-matash-clicked.svg +12 -0
  90. package/lib/assets/map/pin-matash-white.svg +8 -28
  91. package/lib/assets/map/pin-plant-clicked.svg +10 -0
  92. package/lib/assets/map/pin-plant-white.svg +6 -28
  93. package/lib/assets/map/pin-suction-clicked.svg +10 -0
  94. package/lib/assets/map/pin-suction.svg +6 -23
  95. package/lib/assets/map/pin-water-clicked.svg +11 -0
  96. package/lib/assets/map/pin-water.svg +7 -17
  97. package/lib/assets/point_icons/WWTP-icon.svg +8 -21
  98. package/lib/assets/point_icons/factory-icon.svg +6 -21
  99. package/lib/assets/point_icons/pump-station-icon.svg +6 -16
  100. package/lib/components/ApplyButton/ApplyButton.js +5 -11
  101. package/lib/components/ApplyButton/index.js +1 -4
  102. package/lib/components/Backdrop/Backdrop.js +2 -8
  103. package/lib/components/ContentLoader/ContentLoader.js +7 -12
  104. package/lib/components/ContentLoader/index.js +1 -2
  105. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +7 -14
  106. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +2 -8
  107. package/lib/components/CustomInputs/DoubleTabs/styles.js +2 -10
  108. package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +5 -18
  109. package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +1 -5
  110. package/lib/components/CustomInputs/Search/Search.js +13 -38
  111. package/lib/components/CustomInputs/Search/index.js +1 -4
  112. package/lib/components/CustomInputs/Select/Select.js +33 -33
  113. package/lib/components/CustomInputs/Select/Select.stories.js +2 -8
  114. package/lib/components/DamageType/DamageType.js +37 -76
  115. package/lib/components/DamageType/index.js +1 -4
  116. package/lib/components/DataLoaderError/DataLoaderError.js +4 -10
  117. package/lib/components/DischargeHeatmap/DischargeHeatmap.js +6 -16
  118. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +17 -37
  119. package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +12 -37
  120. package/lib/components/DischargeHeatmap/HighchartsOptions.js +6 -10
  121. package/lib/components/DischargeHeatmap/index.js +1 -4
  122. package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -4
  123. package/lib/components/DischargeHeatmap/popupText.js +1 -16
  124. package/lib/components/DischargeHeatmap/titles.js +1 -8
  125. package/lib/components/DischargeHeatmap/types.js +1 -1
  126. package/lib/components/ErrorBoundary.js +3 -15
  127. package/lib/components/Events/Events.js +5 -30
  128. package/lib/components/Events/index.js +1 -4
  129. package/lib/components/Graph/Graph.js +31 -74
  130. package/lib/components/Graph/index.js +1 -4
  131. package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +1 -7
  132. package/lib/components/Header/Breadcrumbs/index.js +1 -4
  133. package/lib/components/Header/DoubleTabs/DoubleTabs.js +14 -30
  134. package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +2 -8
  135. package/lib/components/Header/DoubleTabs/styles.js +2 -10
  136. package/lib/components/Header/Header.js +1 -7
  137. package/lib/components/Header/Header.stories.js +2 -8
  138. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +1 -11
  139. package/lib/components/Header/InfoBar/InfoBar.js +10 -30
  140. package/lib/components/Header/InfoBar/Search/Control.js +2 -13
  141. package/lib/components/Header/InfoBar/Search/GroupLabel.js +1 -12
  142. package/lib/components/Header/InfoBar/Search/Search.js +5 -26
  143. package/lib/components/Header/InfoBar/Search/SearchContainer.js +4 -21
  144. package/lib/components/Header/InfoBar/Search/index.js +1 -4
  145. package/lib/components/Header/InfoBar/Search/searchStyle.js +1 -4
  146. package/lib/components/Header/KandoNavbar/KandoNavbar.js +46 -91
  147. package/lib/components/Header/KandoNavbar/index.js +1 -4
  148. package/lib/components/Header/Slideshow/Slideshow.js +31 -67
  149. package/lib/components/Header/Slideshow/index.js +1 -4
  150. package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +1 -7
  151. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +2 -15
  152. package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +1 -15
  153. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +7 -24
  154. package/lib/components/Header/Toolbar/Toolbar.js +46 -84
  155. package/lib/components/InfoBar/InfoBar.js +8 -23
  156. package/lib/components/InfoBar/InfoBar.stories.js +2 -8
  157. package/lib/components/KandoModal/KandoModal.js +19 -42
  158. package/lib/components/KandoModal/index.js +1 -4
  159. package/lib/components/Link.js +2 -11
  160. package/lib/components/Links/CustomRedirect/CustomRedirect.js +3 -12
  161. package/lib/components/Links/StyledLink/StyledLink.js +6 -16
  162. package/lib/components/Links/StyledNavLink/StyledNavLink.js +4 -14
  163. package/lib/components/LiveEvents/CarouselSlide.js +5 -11
  164. package/lib/components/LiveEvents/LiveEvents.js +1 -10
  165. package/lib/components/LiveEvents/index.js +1 -4
  166. package/lib/components/LoaderByPercent/LoaderByPercent.js +13 -23
  167. package/lib/components/Map/Map.js +12 -26
  168. package/lib/components/Map/index.js +1 -4
  169. package/lib/components/Modal/Modal.js +3 -10
  170. package/lib/components/NarrowHeader.js +1 -12
  171. package/lib/components/PointInfo/PointInfo.js +10 -22
  172. package/lib/components/PointInfo/index.js +1 -4
  173. package/lib/components/PopupModal/PopupModal.js +6 -17
  174. package/lib/components/PopupModal/PopupModal.stories.js +2 -11
  175. package/lib/components/Sector/Sector.js +4 -13
  176. package/lib/components/Sector/Sector.test.js +3 -8
  177. package/lib/components/Sector/index.js +1 -4
  178. package/lib/components/Sector/sectorIcons.js +1 -27
  179. package/lib/components/SevereEvent/Eta/Eta.js +20 -40
  180. package/lib/components/SevereEvent/Eta/styles.js +1 -5
  181. package/lib/components/SevereEvent/SevereEvent.js +15 -36
  182. package/lib/components/Spinner/Spinner.js +5 -10
  183. package/lib/components/Spinner/Spinner.stories.js +2 -8
  184. package/lib/components/Spinner/index.js +1 -4
  185. package/lib/components/Spinner/styles.js +1 -9
  186. package/lib/components/Tabs/Tabs.js +4 -24
  187. package/lib/components/Tabs/Tabs.stories.js +2 -8
  188. package/lib/components/Tabs/assets/index.js +1 -6
  189. package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +2 -12
  190. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +12 -43
  191. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +12 -36
  192. package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +1 -4
  193. package/lib/components/TimeRangeSelector/TimeRangeHelper.js +9 -29
  194. package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +4 -9
  195. package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +1 -4
  196. package/lib/components/TimeRangeSelector/TimeRangeList.js +4 -13
  197. package/lib/components/TimeRangeSelector/TimeRangeOptions.js +11 -24
  198. package/lib/components/TimeRangeSelector/TimeRangeSelector.js +11 -36
  199. package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +2 -10
  200. package/lib/components/TimeRangeSelector/constants.js +2 -2
  201. package/lib/components/TimeRangeSelector/index.js +1 -4
  202. package/lib/components/Toggle/Toggle.js +7 -21
  203. package/lib/components/Toggle/index.js +1 -4
  204. package/lib/components/TrendGraph/TrendGraph.js +16 -49
  205. package/lib/components/TrendGraph/index.js +1 -4
  206. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +13 -37
  207. package/lib/components/TrendGraphNVL/index.js +1 -4
  208. package/lib/development-environment/index.js +1 -13
  209. package/lib/development-environment/mock/browser.js +1 -8
  210. package/lib/development-environment/mock/get.js +1 -5
  211. package/lib/development-environment/mock/handlers.js +1 -26
  212. package/lib/development-environment/mock/mockBus.js +2 -7
  213. package/lib/development-environment/mock/mockObjects/area-trends-graph.js +1 -1
  214. package/lib/development-environment/mock/mockObjects/areaInformation.js +1 -1
  215. package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +1 -1
  216. package/lib/development-environment/mock/mockObjects/areaSitesData.js +1 -1
  217. package/lib/development-environment/mock/mockObjects/areasJson.js +1 -1
  218. package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +1 -1
  219. package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +1 -1
  220. package/lib/development-environment/mock/mockObjects/data-menuData.js +1 -1
  221. package/lib/development-environment/mock/mockObjects/data-search.js +1 -1
  222. package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +1 -1
  223. package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +1 -1
  224. package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +1 -1
  225. package/lib/development-environment/mock/mockObjects/eventsJson.js +1 -1
  226. package/lib/development-environment/mock/mockObjects/metascore.js +1 -1
  227. package/lib/development-environment/mock/mockObjects/permissionsJson.js +1 -1
  228. package/lib/development-environment/mock/mockObjects/pointsJson.js +1 -1
  229. package/lib/development-environment/mock/mockObjects/site-info.js +1 -1
  230. package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +1 -1
  231. package/lib/development-environment/togly/ToglyDashboard.js +4 -22
  232. package/lib/development-environment/togly/ToglyItem.js +5 -25
  233. package/lib/development-environment/togly/flags.js +1 -1
  234. package/lib/development-environment/togly/init.js +1 -6
  235. package/lib/development-environment/togly/macro.js +7 -9
  236. package/lib/development-environment/togly/useDoubleKeyDown.js +1 -8
  237. package/lib/development-environment/togly/useLocalStorage.js +12 -19
  238. package/lib/hooks/useApi.js +10 -29
  239. package/lib/hooks/useApiWithDashboardQuery.js +10 -30
  240. package/lib/hooks/useClickOutside.js +1 -5
  241. package/lib/hooks/useInitializeHeaders.js +1 -7
  242. package/lib/hooks/useKandoFetch.js +13 -27
  243. package/lib/hooks/useMap.js +11 -52
  244. package/lib/hooks/useNavContext.js +13 -22
  245. package/lib/hooks/useQueryURL.js +1 -4
  246. package/lib/hooks/useRemoveExistingLayers.js +2 -7
  247. package/lib/hooks/useUpdateEventBodyTail.js +1 -10
  248. package/lib/hooks/useUserTimeZone.js +1 -9
  249. package/lib/hooks/useUserTimeZone.test.js +1 -9
  250. package/lib/hooks/useWindowSize.js +14 -19
  251. package/lib/i18n/en.json +39 -11
  252. package/lib/i18n/en_uk.json +26 -3
  253. package/lib/i18n/fr.json +25 -2
  254. package/lib/i18n/he.json +32 -2
  255. package/lib/i18n/it.json +25 -2
  256. package/lib/index.js +21 -29
  257. package/lib/macros/getVersion.js +2 -3
  258. package/lib/models/IAction.js +1 -1
  259. package/lib/models/IAppState.js +1 -1
  260. package/lib/pages/AreaPage/AreaPage.js +5 -34
  261. package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +6 -17
  262. package/lib/pages/AreaPage/Dashboard/Dashboard.js +2 -23
  263. package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +11 -35
  264. package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +6 -8
  265. package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +46 -65
  266. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +1 -10
  267. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +3 -15
  268. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +3 -7
  269. package/lib/pages/AreaPage/Dashboard/Sites/SitesResponse.interface.js +1 -1
  270. package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +1 -1
  271. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +2 -10
  272. package/lib/pages/AssessmentPage/AssessmentPage.js +5 -30
  273. package/lib/pages/CannyWidget/Feedback.js +10 -25
  274. package/lib/pages/CovidPage/CovidPage.js +1 -14
  275. package/lib/pages/CovidPage/components/Body.js +9 -33
  276. package/lib/pages/CovidPage/components/Map.js +20 -38
  277. package/lib/pages/CovidPage/components/Sidebar.js +4 -18
  278. package/lib/pages/CovidPage/components/Summary.js +8 -29
  279. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +13 -37
  280. package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +1 -4
  281. package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +13 -41
  282. package/lib/pages/CovidPage/components/TrendPopupContent/index.js +1 -4
  283. package/lib/pages/CovidPage/components/areas/Area.js +6 -33
  284. package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +4 -45
  285. package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +5 -18
  286. package/lib/pages/CovidPage/components/areas/AreasList.js +14 -33
  287. package/lib/pages/CovidPage/components/areas/Sort.js +5 -19
  288. package/lib/pages/CovidPage/components/nvlStatusHelper.js +2 -11
  289. package/lib/pages/EventsPage/Body/Body.js +2 -19
  290. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +11 -28
  291. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +11 -31
  292. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +4 -11
  293. package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +3 -11
  294. package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +5 -10
  295. package/lib/pages/EventsPage/DragAndDropArea/index.js +1 -4
  296. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +26 -36
  297. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +5 -24
  298. package/lib/pages/EventsPage/EventsPage.js +1 -13
  299. package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +9 -32
  300. package/lib/pages/EventsPage/events/MoreInfo.js +1 -19
  301. package/lib/pages/EventsPage/events/Sidebar.js +5 -18
  302. package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +5 -29
  303. package/lib/pages/EventsPage/events/event_info/EventDetails.js +8 -32
  304. package/lib/pages/EventsPage/events/event_info/EventInfo.js +14 -42
  305. package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +2 -14
  306. package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +10 -40
  307. package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +1 -12
  308. package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +8 -30
  309. package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +1 -8
  310. package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/LineChartYear/LineChartYear.js +7 -27
  311. package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/MockHistoryInformation.js +2 -10
  312. package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +5 -21
  313. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsLineChart.js +4 -23
  314. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +4 -22
  315. package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +6 -33
  316. package/lib/pages/EventsPage/events/event_info/samplings/Sampling.js +3 -15
  317. package/lib/pages/EventsPage/events/event_info/samplings/Samplings.js +2 -10
  318. package/lib/pages/EventsPage/events/event_info/sources/Source.js +8 -31
  319. package/lib/pages/EventsPage/events/event_info/sources/Sources.js +4 -20
  320. package/lib/pages/EventsPage/events/events_list/EventItem.js +3 -24
  321. package/lib/pages/EventsPage/events/events_list/EventUtils.js +2 -13
  322. package/lib/pages/EventsPage/events/events_list/EventsList.js +54 -111
  323. package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +11 -32
  324. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +35 -96
  325. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +10 -55
  326. package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +5 -17
  327. package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +15 -38
  328. package/lib/pages/EventsPage/events/events_list/Sort.js +4 -23
  329. package/lib/pages/ImportFileWizard/FileUploadRespones.js +4 -19
  330. package/lib/pages/ImportFileWizard/ImportButtomButtons.js +2 -8
  331. package/lib/pages/ImportFileWizard/ImportFile.js +10 -29
  332. package/lib/pages/ImportFileWizard/ResponseBody.js +3 -12
  333. package/lib/pages/ImportFileWizard/ValidationForm.js +7 -27
  334. package/lib/pages/ImportFileWizard/ValidationResponse.js +6 -30
  335. package/lib/pages/ImportFileWizard/importFileUtils.js +1 -2
  336. package/lib/pages/ImportFileWizard/index.js +1 -4
  337. package/lib/pages/ImportGisPage/ImportGisContainer.js +7 -27
  338. package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +10 -27
  339. package/lib/pages/ImportGisPage/importGisUtils.js +1 -13
  340. package/lib/pages/ImportGisProcess/index.js +4 -18
  341. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +5 -19
  342. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +3 -10
  343. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +1 -8
  344. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +25 -58
  345. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +2 -8
  346. package/lib/pages/NotificationsPage/Notification/Notification.js +8 -16
  347. package/lib/pages/NotificationsPage/Notifications.interface.js +1 -1
  348. package/lib/pages/NotificationsPage/Notifications.mock.js +1 -1
  349. package/lib/pages/NotificationsPage/Notifications.stories.js +2 -10
  350. package/lib/pages/NotificationsPage/NotificationsPage.js +11 -35
  351. package/lib/pages/NotificationsPage/assets/index.js +15 -24
  352. package/lib/pages/NotificationsPageV2/NotificationsPage.js +35 -83
  353. package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +4 -24
  354. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +27 -46
  355. package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +18 -49
  356. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +4 -47
  357. package/lib/pages/NotificationsPageV2/notificationUtils.js +2 -30
  358. package/lib/pages/OldSitePage/IDashboardData.js +1 -1
  359. package/lib/pages/OldSitePage/OldSitePage.js +16 -77
  360. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +3 -16
  361. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +2 -8
  362. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +4 -9
  363. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +5 -12
  364. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +2 -12
  365. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +7 -23
  366. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +6 -20
  367. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +4 -10
  368. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +2 -12
  369. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +9 -24
  370. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +4 -12
  371. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +28 -59
  372. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +2 -2
  373. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +12 -10
  374. package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +3 -18
  375. package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +2 -15
  376. package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +8 -16
  377. package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +1 -16
  378. package/lib/pages/OldSitePage/SamplingParameters/models.js +1 -1
  379. package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +2 -10
  380. package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +2 -7
  381. package/lib/pages/ProfilePage/Container.js +2 -6
  382. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +16 -43
  383. package/lib/pages/ProfilePage/ProfilePage.js +172 -115
  384. package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +9 -32
  385. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +7 -17
  386. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +3 -14
  387. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +18 -48
  388. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +4 -21
  389. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +7 -15
  390. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +8 -29
  391. package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +6 -25
  392. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +9 -21
  393. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +1 -13
  394. package/lib/pages/SamplingsPage/DesktopActions/index.js +1 -4
  395. package/lib/pages/SamplingsPage/NavigationDropdown.js +3 -21
  396. package/lib/pages/SamplingsPage/NewSamplingAction.js +38 -84
  397. package/lib/pages/SamplingsPage/SamplingMobileModal.js +12 -65
  398. package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +5 -19
  399. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +2 -13
  400. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +22 -56
  401. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +4 -20
  402. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +1 -14
  403. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +40 -112
  404. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +11 -42
  405. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +14 -47
  406. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +15 -49
  407. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +5 -21
  408. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +2 -8
  409. package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +1 -11
  410. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +7 -36
  411. package/lib/pages/SamplingsPage/SamplingsMobileList.js +10 -34
  412. package/lib/pages/SamplingsPage/SamplingsPage.js +14 -39
  413. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +14 -48
  414. package/lib/pages/SamplingsPage/index.js +1 -3
  415. package/lib/pages/SamplingsPage/samplingsPageUtils.js +7 -30
  416. package/lib/pages/SitePage/DischargePattern/DischargePattern.js +2 -10
  417. package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +2 -8
  418. package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +3 -17
  419. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +6 -11
  420. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +15 -23
  421. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +7 -16
  422. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +18 -27
  423. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +2 -12
  424. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +9 -26
  425. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +6 -20
  426. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +4 -10
  427. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +2 -12
  428. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +9 -24
  429. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +4 -12
  430. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +32 -68
  431. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +2 -2
  432. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +12 -10
  433. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +4 -19
  434. package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +2 -15
  435. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +17 -38
  436. package/lib/pages/SitePage/SamplingParameters/dataParser.js +13 -29
  437. package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +3 -7
  438. package/lib/pages/SitePage/SamplingParameters/models.js +1 -1
  439. package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +2 -10
  440. package/lib/pages/SitePage/SamplingParameters/styles/styles.js +2 -8
  441. package/lib/pages/SitePage/SiteInformation/ContributorItem.js +5 -12
  442. package/lib/pages/SitePage/SiteInformation/EmptyState.js +1 -10
  443. package/lib/pages/SitePage/SiteInformation/PollutionContributor.js +5 -15
  444. package/lib/pages/SitePage/SiteInformation/SiteInformation.js +17 -48
  445. package/lib/pages/SitePage/SiteInformation/style.js +2 -8
  446. package/lib/pages/SitePage/SitePage.js +10 -49
  447. package/lib/pages/UploadLabResult/index.js +1 -8
  448. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +9 -37
  449. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +2 -9
  450. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +2 -16
  451. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +2 -8
  452. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +9 -35
  453. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +1 -5
  454. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +1 -7
  455. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +1 -10
  456. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +7 -16
  457. package/lib/pages/UtilityDashboardPage/MostSevereEvents/models.js +1 -1
  458. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +1 -10
  459. package/lib/pages/UtilityDashboardPage/TopBar/styles.js +1 -5
  460. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +3 -25
  461. package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +13 -19
  462. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +9 -18
  463. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +5 -20
  464. package/lib/pages/WbeDashboard/ExpandableComponent.js +6 -14
  465. package/lib/pages/WbeDashboard/GraphWrapper.js +8 -28
  466. package/lib/pages/WbeDashboard/IndividualTinyGraph.js +6 -19
  467. package/lib/pages/WbeDashboard/SearchInput.js +4 -22
  468. package/lib/pages/WbeDashboard/SummaryGraph.js +56 -76
  469. package/lib/pages/WbeDashboard/SummaryGraphModal.js +1 -13
  470. package/lib/pages/WbeDashboard/Tabs.js +4 -9
  471. package/lib/pages/WbeDashboard/WbeDashboardPage.js +60 -154
  472. package/lib/pages/WbeDashboard/WbeSummaryBar.js +19 -49
  473. package/lib/providers/Slideshow/SlideshowContext.js +3 -5
  474. package/lib/providers/Slideshow/SlideshowProvider.js +16 -31
  475. package/lib/providers/Slideshow/SlideshowRunner.js +7 -17
  476. package/lib/providers/UrlHistory/UrlHistoryContext.js +3 -7
  477. package/lib/providers/UrlHistory/UrlHistoryProvider.js +1 -13
  478. package/lib/providers/UrlHistory/index.js +5 -8
  479. package/lib/providers/UrlHistory/useLastVisited.js +1 -7
  480. package/lib/react-app-env.d.js +1 -1
  481. package/lib/store/ImportGis/action.js +1 -1
  482. package/lib/store/ImportGis/actionTypes.js +1 -2
  483. package/lib/store/ImportGis/actionsCreator.js +7 -17
  484. package/lib/store/ImportGis/models/gisImports.js +1 -1
  485. package/lib/store/ImportGis/reducer.js +1 -17
  486. package/lib/store/WBE/actionTypes.js +1 -1
  487. package/lib/store/WBE/actions.js +1 -3
  488. package/lib/store/WBE/models/IAreaWBE.js +1 -1
  489. package/lib/store/WBE/models/IWBE.js +1 -1
  490. package/lib/store/WBE/models/IWBEState.js +1 -1
  491. package/lib/store/WBE/reducer.js +2 -9
  492. package/lib/store/areas/actionTypes.js +2 -2
  493. package/lib/store/areas/actions.js +2 -11
  494. package/lib/store/areas/models/IArea.js +1 -1
  495. package/lib/store/areas/models/IAreasState.js +1 -1
  496. package/lib/store/areas/reducer.js +1 -9
  497. package/lib/store/context/actionTypes.js +2 -2
  498. package/lib/store/context/actions.js +2 -6
  499. package/lib/store/context/contextMiddlewares.js +1 -9
  500. package/lib/store/context/models/INavContext.js +1 -1
  501. package/lib/store/context/models/INavContextState.js +1 -1
  502. package/lib/store/context/reducer.js +2 -9
  503. package/lib/store/dashboard/dashboardSlice.js +1 -3
  504. package/lib/store/dashboard/periodType.js +1 -1
  505. package/lib/store/edges/actionTypes.js +2 -2
  506. package/lib/store/edges/actions.js +3 -9
  507. package/lib/store/edges/models/IEdge.js +1 -1
  508. package/lib/store/edges/models/IEdgesState.js +1 -1
  509. package/lib/store/edges/reducer.js +2 -16
  510. package/lib/store/events/actionTypes.js +2 -2
  511. package/lib/store/events/actions.js +12 -30
  512. package/lib/store/events/models/IEvent.js +1 -1
  513. package/lib/store/events/models/IEventsState.js +1 -1
  514. package/lib/store/events/models/ISource.js +1 -1
  515. package/lib/store/events/reducer.js +3 -41
  516. package/lib/store/filters/IFilter.js +1 -1
  517. package/lib/store/filters/IFilterItem.js +1 -1
  518. package/lib/store/global/actionTypes.js +2 -2
  519. package/lib/store/global/actions.js +8 -20
  520. package/lib/store/global/models/IGlobalState.js +1 -1
  521. package/lib/store/global/reducer.js +2 -18
  522. package/lib/store/permissions/permissionsSlice.js +3 -6
  523. package/lib/store/points/actionTypes.js +2 -2
  524. package/lib/store/points/actions.js +1 -5
  525. package/lib/store/points/models/IGroup.js +1 -1
  526. package/lib/store/points/models/IPoint.js +1 -1
  527. package/lib/store/points/models/IPointsState.js +1 -1
  528. package/lib/store/points/reducer.js +1 -7
  529. package/lib/store/rootActionTypes.js +1 -1
  530. package/lib/store/rootActions.js +1 -3
  531. package/lib/store/rootReducer.js +4 -23
  532. package/lib/store/rootStore.js +4 -12
  533. package/lib/store/samplings/action.js +1 -1
  534. package/lib/store/samplings/actionTypes.js +1 -2
  535. package/lib/store/samplings/actionsCreator.js +2 -5
  536. package/lib/store/samplings/models/Samplings.js +1 -1
  537. package/lib/store/samplings/reducer.js +1 -9
  538. package/lib/styles/StylesLayout.js +1 -7
  539. package/lib/styles/theme/theme.js +2 -4
  540. package/lib/test/mocks/browser.js +3 -7
  541. package/lib/test/test-utils.js +11 -21
  542. package/lib/ui-kit/Button/Button.js +15 -23
  543. package/lib/ui-kit/Button/Button.test.js +6 -26
  544. package/lib/ui-kit/Button/ButtonUtils.js +1 -1
  545. package/lib/ui-kit/Checkbox/Checkbox.js +7 -21
  546. package/lib/ui-kit/DropDown/DropDown.js +5 -16
  547. package/lib/ui-kit/DropDown/DropDown.test.js +6 -12
  548. package/lib/ui-kit/DropDown/DropDownItem.js +5 -13
  549. package/lib/ui-kit/DropDown/DropdownToggle.js +2 -13
  550. package/lib/ui-kit/IconAction/IconAction.js +3 -9
  551. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +16 -54
  552. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +24 -28
  553. package/lib/ui-kit/KandoList/KandoList.js +5 -16
  554. package/lib/ui-kit/KandoList/kandoListUtils.js +1 -1
  555. package/lib/ui-kit/KandoTable/KandoTable.js +23 -35
  556. package/lib/ui-kit/KandoTable/KandoTable.test.js +1 -16
  557. package/lib/ui-kit/KandoTable/kandoTableUtils.js +1 -1
  558. package/lib/ui-kit/Layout/Layout.js +1 -8
  559. package/lib/ui-kit/MobileInput/MobileInput.js +18 -33
  560. package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +8 -14
  561. package/lib/ui-kit/ModalConfirmation/index.js +1 -3
  562. package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +5 -10
  563. package/lib/ui-kit/SamplingStatus/SamplingStatus.js +3 -11
  564. package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +4 -11
  565. package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +5 -14
  566. package/lib/ui-kit/Tooltip/Tooltip.js +3 -8
  567. package/lib/ui-kit/index.js +1 -15
  568. package/lib/ui-kit/kandoStepper/KandoStepper.js +2 -7
  569. package/lib/utilities/ActionUtility.js +1 -2
  570. package/lib/utilities/Alert.js +2 -10
  571. package/lib/utilities/Analytics.js +2 -12
  572. package/lib/utilities/Array.js +2 -6
  573. package/lib/utilities/Enum.js +12 -16
  574. package/lib/utilities/ErrorBoundary.js +3 -18
  575. package/lib/utilities/File.js +5 -24
  576. package/lib/utilities/GetDir.js +4 -8
  577. package/lib/utilities/KandoDate.js +1 -7
  578. package/lib/utilities/KandoModal.js +7 -22
  579. package/lib/utilities/LocalStorage.js +2 -13
  580. package/lib/utilities/ThousandsToK.js +1 -3
  581. package/lib/utilities/TimeFormat.js +6 -19
  582. package/lib/utilities/Truncate.js +7 -27
  583. package/lib/utilities/edgesMath.js +9 -26
  584. package/lib/utilities/i18n.js +1 -14
  585. package/lib/utilities/kql.js +3 -10
  586. package/lib/utilities/map/icons.js +19 -20
  587. package/lib/utilities/polylinedecorator.js +383 -0
  588. package/lib/utilities/scoreToColor.js +1 -8
  589. package/lib/utilities/time.js +2 -9
  590. package/lib/utilities/uploadToS3.js +1 -9
  591. package/lib/utilities/urls.js +6 -14
  592. package/package.json +9 -4
@@ -1,47 +1,37 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.default = void 0;
11
-
12
9
  var _react = _interopRequireWildcard(require("react"));
13
-
14
10
  var _reactRedux = require("react-redux");
15
-
16
11
  var _EventsList = _interopRequireDefault(require("./events_list/EventsList"));
17
-
18
12
  var _ErrorBoundary = _interopRequireDefault(require("utilities/ErrorBoundary"));
19
-
20
13
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
-
22
14
  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; }
23
-
24
15
  function mapStateToProps(state) {
25
16
  var global_data = state.global_data,
26
- events_data = state.events_data;
17
+ events_data = state.events_data;
27
18
  return {
28
19
  global_data: global_data,
29
20
  events_data: events_data
30
21
  };
31
22
  }
32
-
33
23
  var Sidebar = function Sidebar(props) {
34
24
  var global_data = props.global_data,
35
- events_data = props.events_data;
25
+ events_data = props.events_data;
36
26
  var focusedEvent = events_data.focusedEvent,
37
- hoveredEvent = events_data.hoveredEvent;
27
+ hoveredEvent = events_data.hoveredEvent;
38
28
  (0, _react.useEffect)(function () {
39
29
  if (global_data.map !== null && events_data.items.length !== 0 && focusedEvent !== null && global_data.map._mapPane !== undefined && !hoveredEvent) {
40
30
  document.getElementsByClassName('event-timerange')[0].classList.toggle('timerange--sidenav-collapsed');
41
31
  }
42
-
43
32
  if (global_data.map !== null && global_data.map !== undefined) {
44
33
  // Timerange control icon moves when the Sidenav collapses
34
+
45
35
  setTimeout(function () {
46
36
  try {
47
37
  global_data.map.invalidateSize(true);
@@ -55,10 +45,7 @@ var Sidebar = function Sidebar(props) {
55
45
  sidenavExpanded: global_data.sidenavExpanded
56
46
  }));
57
47
  };
58
-
59
48
  var connector = (0, _reactRedux.connect)(mapStateToProps);
60
-
61
49
  var _default = connector(Sidebar);
62
-
63
50
  exports.default = _default;
64
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9TaWRlYmFyLnRzeCJdLCJuYW1lcyI6WyJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsImdsb2JhbF9kYXRhIiwiZXZlbnRzX2RhdGEiLCJTaWRlYmFyIiwicHJvcHMiLCJmb2N1c2VkRXZlbnQiLCJob3ZlcmVkRXZlbnQiLCJtYXAiLCJpdGVtcyIsImxlbmd0aCIsIl9tYXBQYW5lIiwidW5kZWZpbmVkIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50c0J5Q2xhc3NOYW1lIiwiY2xhc3NMaXN0IiwidG9nZ2xlIiwic2V0VGltZW91dCIsImludmFsaWRhdGVTaXplIiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwic2lkZW5hdkV4cGFuZGVkIiwiY29ubmVjdG9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUVBOztBQUNBOztBQUNBOzs7Ozs7QUFFQSxTQUFTQSxlQUFULENBQXlCQyxLQUF6QixFQUEyQztBQUN6QyxNQUFRQyxXQUFSLEdBQXFDRCxLQUFyQyxDQUFRQyxXQUFSO0FBQUEsTUFBcUJDLFdBQXJCLEdBQXFDRixLQUFyQyxDQUFxQkUsV0FBckI7QUFFQSxTQUFPO0FBQ0xELElBQUFBLFdBQVcsRUFBWEEsV0FESztBQUVMQyxJQUFBQSxXQUFXLEVBQVhBO0FBRkssR0FBUDtBQUlEOztBQUlELElBQU1DLE9BQXlCLEdBQUcsU0FBNUJBLE9BQTRCLENBQUNDLEtBQUQsRUFBVztBQUMzQyxNQUFRSCxXQUFSLEdBQXFDRyxLQUFyQyxDQUFRSCxXQUFSO0FBQUEsTUFBcUJDLFdBQXJCLEdBQXFDRSxLQUFyQyxDQUFxQkYsV0FBckI7QUFDQSxNQUFRRyxZQUFSLEdBQXVDSCxXQUF2QyxDQUFRRyxZQUFSO0FBQUEsTUFBc0JDLFlBQXRCLEdBQXVDSixXQUF2QyxDQUFzQkksWUFBdEI7QUFFQSx3QkFBVSxZQUFNO0FBQ2QsUUFDRUwsV0FBVyxDQUFDTSxHQUFaLEtBQW9CLElBQXBCLElBQ0FMLFdBQVcsQ0FBQ00sS0FBWixDQUFrQkMsTUFBbEIsS0FBNkIsQ0FEN0IsSUFFQUosWUFBWSxLQUFLLElBRmpCLElBR0FKLFdBQVcsQ0FBQ00sR0FBWixDQUFnQkcsUUFBaEIsS0FBNkJDLFNBSDdCLElBSUEsQ0FBQ0wsWUFMSCxFQU1FO0FBQ0FNLE1BQUFBLFFBQVEsQ0FDTEMsc0JBREgsQ0FDMEIsaUJBRDFCLEVBQzZDLENBRDdDLEVBRUdDLFNBRkgsQ0FFYUMsTUFGYixDQUVvQiw4QkFGcEI7QUFHRDs7QUFFRCxRQUFJZCxXQUFXLENBQUNNLEdBQVosS0FBb0IsSUFBcEIsSUFBNEJOLFdBQVcsQ0FBQ00sR0FBWixLQUFvQkksU0FBcEQsRUFBK0Q7QUFDN0Q7QUFFQUssTUFBQUEsVUFBVSxDQUFDLFlBQU07QUFDZixZQUFJO0FBQ0ZmLFVBQUFBLFdBQVcsQ0FBQ00sR0FBWixDQUFnQlUsY0FBaEIsQ0FBK0IsSUFBL0I7QUFDRCxTQUZELENBRUUsT0FBT0MsR0FBUCxFQUFZO0FBQ1pDLFVBQUFBLE9BQU8sQ0FBQ0MsS0FBUixDQUFjLEtBQWQsRUFBcUJGLEdBQXJCO0FBQ0Q7QUFDRixPQU5TLEVBTVAsR0FOTyxDQUFWO0FBT0Q7QUFDRixHQXhCRCxFQXdCRyxDQUFDakIsV0FBVyxDQUFDb0IsZUFBYixFQUE4QnBCLFdBQVcsQ0FBQ00sR0FBMUMsQ0F4Qkg7QUEwQkEsc0JBQ0UsNkJBQUMsc0JBQUQscUJBQ0UsNkJBQUMsbUJBQUQ7QUFBWSxJQUFBLGVBQWUsRUFBRU4sV0FBVyxDQUFDb0I7QUFBekMsSUFERixDQURGO0FBS0QsQ0FuQ0Q7O0FBcUNBLElBQU1DLFNBQVMsR0FBRyx5QkFBUXZCLGVBQVIsQ0FBbEI7O2VBQ2V1QixTQUFTLENBQUNuQixPQUFELEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgSUFwcFN0YXRlIH0gZnJvbSAnc3JjL21vZGVscy9JQXBwU3RhdGUnO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgRXZlbnRzTGlzdCBmcm9tICcuL2V2ZW50c19saXN0L0V2ZW50c0xpc3QnO1xuaW1wb3J0IEVycm9yQm91bmRhcnkgZnJvbSAnc3JjL3V0aWxpdGllcy9FcnJvckJvdW5kYXJ5JztcblxuZnVuY3Rpb24gbWFwU3RhdGVUb1Byb3BzKHN0YXRlOiBJQXBwU3RhdGUpIHtcbiAgY29uc3QgeyBnbG9iYWxfZGF0YSwgZXZlbnRzX2RhdGEgfSA9IHN0YXRlO1xuXG4gIHJldHVybiB7XG4gICAgZ2xvYmFsX2RhdGEsXG4gICAgZXZlbnRzX2RhdGEsXG4gIH07XG59XG5cbnR5cGUgSVByb3BzID0gQ29ubmVjdGVkUHJvcHM8dHlwZW9mIGNvbm5lY3Rvcj47XG5cbmNvbnN0IFNpZGViYXI6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBnbG9iYWxfZGF0YSwgZXZlbnRzX2RhdGEgfSA9IHByb3BzO1xuICBjb25zdCB7IGZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50IH0gPSBldmVudHNfZGF0YTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGdsb2JhbF9kYXRhLm1hcCAhPT0gbnVsbCAmJlxuICAgICAgZXZlbnRzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwICYmXG4gICAgICBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiZcbiAgICAgIGdsb2JhbF9kYXRhLm1hcC5fbWFwUGFuZSAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAhaG92ZXJlZEV2ZW50XG4gICAgKSB7XG4gICAgICBkb2N1bWVudFxuICAgICAgICAuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnZXZlbnQtdGltZXJhbmdlJylbMF1cbiAgICAgICAgLmNsYXNzTGlzdC50b2dnbGUoJ3RpbWVyYW5nZS0tc2lkZW5hdi1jb2xsYXBzZWQnKTtcbiAgICB9XG5cbiAgICBpZiAoZ2xvYmFsX2RhdGEubWFwICE9PSBudWxsICYmIGdsb2JhbF9kYXRhLm1hcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBUaW1lcmFuZ2UgY29udHJvbCBpY29uIG1vdmVzIHdoZW4gdGhlIFNpZGVuYXYgY29sbGFwc2VzXG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGdsb2JhbF9kYXRhLm1hcC5pbnZhbGlkYXRlU2l6ZSh0cnVlKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignZXJyJywgZXJyKTtcbiAgICAgICAgfVxuICAgICAgfSwgNDAwKTtcbiAgICB9XG4gIH0sIFtnbG9iYWxfZGF0YS5zaWRlbmF2RXhwYW5kZWQsIGdsb2JhbF9kYXRhLm1hcF0pO1xuXG4gIHJldHVybiAoXG4gICAgPEVycm9yQm91bmRhcnk+XG4gICAgICA8RXZlbnRzTGlzdCBzaWRlbmF2RXhwYW5kZWQ9e2dsb2JhbF9kYXRhLnNpZGVuYXZFeHBhbmRlZH0+PC9FdmVudHNMaXN0PlxuICAgIDwvRXJyb3JCb3VuZGFyeT5cbiAgKTtcbn07XG5cbmNvbnN0IGNvbm5lY3RvciA9IGNvbm5lY3QobWFwU3RhdGVUb1Byb3BzKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihTaWRlYmFyKTtcbiJdfQ==
51
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9FdmVudHNMaXN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9FcnJvckJvdW5kYXJ5IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsImdsb2JhbF9kYXRhIiwiZXZlbnRzX2RhdGEiLCJTaWRlYmFyIiwicHJvcHMiLCJmb2N1c2VkRXZlbnQiLCJob3ZlcmVkRXZlbnQiLCJ1c2VFZmZlY3QiLCJtYXAiLCJpdGVtcyIsImxlbmd0aCIsIl9tYXBQYW5lIiwidW5kZWZpbmVkIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50c0J5Q2xhc3NOYW1lIiwiY2xhc3NMaXN0IiwidG9nZ2xlIiwic2V0VGltZW91dCIsImludmFsaWRhdGVTaXplIiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwic2lkZW5hdkV4cGFuZGVkIiwiY3JlYXRlRWxlbWVudCIsImNvbm5lY3RvciIsImNvbm5lY3QiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9ldmVudHMvU2lkZWJhci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IElBcHBTdGF0ZSB9IGZyb20gJ3NyYy9tb2RlbHMvSUFwcFN0YXRlJztcbmltcG9ydCB7IGNvbm5lY3QsIENvbm5lY3RlZFByb3BzIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IEV2ZW50c0xpc3QgZnJvbSAnLi9ldmVudHNfbGlzdC9FdmVudHNMaXN0JztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJ3NyYy91dGlsaXRpZXMvRXJyb3JCb3VuZGFyeSc7XG5cbmZ1bmN0aW9uIG1hcFN0YXRlVG9Qcm9wcyhzdGF0ZTogSUFwcFN0YXRlKSB7XG4gIGNvbnN0IHsgZ2xvYmFsX2RhdGEsIGV2ZW50c19kYXRhIH0gPSBzdGF0ZTtcblxuICByZXR1cm4ge1xuICAgIGdsb2JhbF9kYXRhLFxuICAgIGV2ZW50c19kYXRhLFxuICB9O1xufVxuXG50eXBlIElQcm9wcyA9IENvbm5lY3RlZFByb3BzPHR5cGVvZiBjb25uZWN0b3I+O1xuXG5jb25zdCBTaWRlYmFyOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZ2xvYmFsX2RhdGEsIGV2ZW50c19kYXRhIH0gPSBwcm9wcztcbiAgY29uc3QgeyBmb2N1c2VkRXZlbnQsIGhvdmVyZWRFdmVudCB9ID0gZXZlbnRzX2RhdGE7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoXG4gICAgICBnbG9iYWxfZGF0YS5tYXAgIT09IG51bGwgJiZcbiAgICAgIGV2ZW50c19kYXRhLml0ZW1zLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgZm9jdXNlZEV2ZW50ICE9PSBudWxsICYmXG4gICAgICBnbG9iYWxfZGF0YS5tYXAuX21hcFBhbmUgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgIWhvdmVyZWRFdmVudFxuICAgICkge1xuICAgICAgZG9jdW1lbnRcbiAgICAgICAgLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ2V2ZW50LXRpbWVyYW5nZScpWzBdXG4gICAgICAgIC5jbGFzc0xpc3QudG9nZ2xlKCd0aW1lcmFuZ2UtLXNpZGVuYXYtY29sbGFwc2VkJyk7XG4gICAgfVxuXG4gICAgaWYgKGdsb2JhbF9kYXRhLm1hcCAhPT0gbnVsbCAmJiBnbG9iYWxfZGF0YS5tYXAgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gVGltZXJhbmdlIGNvbnRyb2wgaWNvbiBtb3ZlcyB3aGVuIHRoZSBTaWRlbmF2IGNvbGxhcHNlc1xuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBnbG9iYWxfZGF0YS5tYXAuaW52YWxpZGF0ZVNpemUodHJ1ZSk7XG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ2VycicsIGVycik7XG4gICAgICAgIH1cbiAgICAgIH0sIDQwMCk7XG4gICAgfVxuICB9LCBbZ2xvYmFsX2RhdGEuc2lkZW5hdkV4cGFuZGVkLCBnbG9iYWxfZGF0YS5tYXBdKTtcblxuICByZXR1cm4gKFxuICAgIDxFcnJvckJvdW5kYXJ5PlxuICAgICAgPEV2ZW50c0xpc3Qgc2lkZW5hdkV4cGFuZGVkPXtnbG9iYWxfZGF0YS5zaWRlbmF2RXhwYW5kZWR9PjwvRXZlbnRzTGlzdD5cbiAgICA8L0Vycm9yQm91bmRhcnk+XG4gICk7XG59O1xuXG5jb25zdCBjb25uZWN0b3IgPSBjb25uZWN0KG1hcFN0YXRlVG9Qcm9wcyk7XG5leHBvcnQgZGVmYXVsdCBjb25uZWN0b3IoU2lkZWJhcik7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsV0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsV0FBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksY0FBQSxHQUFBRCxzQkFBQSxDQUFBSCxPQUFBO0FBQXdELFNBQUFLLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFB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
@@ -1,58 +1,42 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.default = void 0;
11
-
12
9
  var _react = _interopRequireWildcard(require("react"));
13
-
14
10
  var _reactRedux = require("react-redux");
15
-
16
11
  var _momentTimezone = _interopRequireDefault(require("moment-timezone"));
17
-
18
12
  var _i18n = _interopRequireDefault(require("utilities/i18n"));
19
-
20
13
  var _TimeFormat = _interopRequireDefault(require("utilities/TimeFormat"));
21
-
22
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); }
23
-
24
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; }
25
-
26
16
  function mapStateToProps(state) {
27
17
  var points_data = state.points_data,
28
- global_data = state.global_data;
18
+ global_data = state.global_data;
29
19
  return {
30
20
  points_data: points_data,
31
21
  global_data: global_data
32
22
  };
33
23
  }
34
-
35
24
  var EarlyWarnings = function EarlyWarnings(props) {
36
25
  var event = props.event,
37
- points_data = props.points_data,
38
- global_data = props.global_data;
39
-
26
+ points_data = props.points_data,
27
+ global_data = props.global_data;
40
28
  var getPointName = function getPointName(point_id) {
41
29
  var _points_data$items$fi;
42
-
43
30
  return ((_points_data$items$fi = points_data.items.filter(function (point) {
44
31
  return point.id === point_id;
45
32
  })[0]) === null || _points_data$items$fi === void 0 ? void 0 : _points_data$items$fi.name) || 'No Name';
46
33
  };
47
-
48
34
  var ETAToTarget = function ETAToTarget(observation, early_warning) {
49
35
  return observation.start_time + early_warning.distance * 60;
50
36
  };
51
-
52
37
  var countDownToTarget = function countDownToTarget(early_warning, observation) {
53
38
  return early_warning.distance * 60 - (global_data.current_time - observation.start_time);
54
39
  };
55
-
56
40
  var getEarlyWarnings = function getEarlyWarnings() {
57
41
  var observations = [];
58
42
  event.observations.filter(function (obs) {
@@ -62,14 +46,12 @@ var EarlyWarnings = function EarlyWarnings(props) {
62
46
  var existingEarlyWarning = observations.find(function (obs) {
63
47
  return obs.earlyWarning.target_point_id === early_warning.target_point_id;
64
48
  });
65
-
66
49
  if (existingEarlyWarning !== undefined) {
67
50
  // Checks if observation exists with same target
51
+
68
52
  observations.splice(observations.indexOf(existingEarlyWarning), 1);
69
53
  }
70
-
71
54
  var arrivedButNotObserved, arrived;
72
-
73
55
  if (global_data.current_time < ETAToTarget(observation, early_warning)) {
74
56
  // Event have not reached the target yet
75
57
  arrived = false;
@@ -83,7 +65,6 @@ var EarlyWarnings = function EarlyWarnings(props) {
83
65
  arrivedButNotObserved = false;
84
66
  arrived = true;
85
67
  }
86
-
87
68
  observations.push({
88
69
  arrivedButNotObserved: arrivedButNotObserved,
89
70
  arrived: arrived,
@@ -94,7 +75,6 @@ var EarlyWarnings = function EarlyWarnings(props) {
94
75
  });
95
76
  return observations;
96
77
  };
97
-
98
78
  var renderEarlyWarnings = function renderEarlyWarnings(observation) {
99
79
  if (!observation.arrived) {
100
80
  if (!observation.arrivedButNotObserved) {
@@ -132,7 +112,6 @@ var EarlyWarnings = function EarlyWarnings(props) {
132
112
  }))));
133
113
  }
134
114
  };
135
-
136
115
  (0, _react.useEffect)(function () {}, [global_data.current_time]);
137
116
  var observations = getEarlyWarnings();
138
117
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("ul", {
@@ -141,10 +120,7 @@ var EarlyWarnings = function EarlyWarnings(props) {
141
120
  return renderEarlyWarnings(observation);
142
121
  })));
143
122
  };
144
-
145
123
  var connector = (0, _reactRedux.connect)(mapStateToProps);
146
-
147
124
  var _default = connector(EarlyWarnings);
148
-
149
125
  exports.default = _default;
150
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudF9pbmZvL0Vhcmx5V2FybmluZ3MudHN4Il0sIm5hbWVzIjpbIm1hcFN0YXRlVG9Qcm9wcyIsInN0YXRlIiwicG9pbnRzX2RhdGEiLCJnbG9iYWxfZGF0YSIsIkVhcmx5V2FybmluZ3MiLCJwcm9wcyIsImV2ZW50IiwiZ2V0UG9pbnROYW1lIiwicG9pbnRfaWQiLCJpdGVtcyIsImZpbHRlciIsInBvaW50IiwiaWQiLCJuYW1lIiwiRVRBVG9UYXJnZXQiLCJvYnNlcnZhdGlvbiIsImVhcmx5X3dhcm5pbmciLCJzdGFydF90aW1lIiwiZGlzdGFuY2UiLCJjb3VudERvd25Ub1RhcmdldCIsImN1cnJlbnRfdGltZSIsImdldEVhcmx5V2FybmluZ3MiLCJvYnNlcnZhdGlvbnMiLCJvYnMiLCJmb3JFYWNoIiwiZWFybHlfd2FybmluZ3MiLCJleGlzdGluZ0Vhcmx5V2FybmluZyIsImZpbmQiLCJlYXJseVdhcm5pbmciLCJ0YXJnZXRfcG9pbnRfaWQiLCJ1bmRlZmluZWQiLCJzcGxpY2UiLCJpbmRleE9mIiwiYXJyaXZlZEJ1dE5vdE9ic2VydmVkIiwiYXJyaXZlZCIsImVuZF90aW1lIiwicHVzaCIsInJlbmRlckVhcmx5V2FybmluZ3MiLCJpMThuIiwidCIsIm1vbWVudCIsInVuaXgiLCJmb3JtYXQiLCJkdXJhdGlvbiIsImh1bWFuaXplIiwidGltZV96b25lIiwibWFwIiwiY29ubmVjdG9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUVBOztBQUVBOztBQUNBOzs7Ozs7QUFFQSxTQUFTQSxlQUFULENBQXlCQyxLQUF6QixFQUEyQztBQUN6QyxNQUFRQyxXQUFSLEdBQXFDRCxLQUFyQyxDQUFRQyxXQUFSO0FBQUEsTUFBcUJDLFdBQXJCLEdBQXFDRixLQUFyQyxDQUFxQkUsV0FBckI7QUFFQSxTQUFPO0FBQ0xELElBQUFBLFdBQVcsRUFBWEEsV0FESztB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RUFFcEJBLFdBQVcsQ0FBQ2EsWUFGUSxDQUR4QjtBQUtFLFFBQUEsU0FBUyxFQUFFYixXQUFXLENBQUNBLFdBQVosQ0FBd0I4QjtBQUxyQyxRQUhKLENBREYsQ0FQRixDQURGO0FBd0JEO0FBQ0YsR0FqR0Q7O0FBbUdBLHdCQUFVLFlBQU0sQ0FBRSxDQUFsQixFQUFvQixDQUFDMUMsV0FBVyxDQUFDaUIsWUFBYixDQUFwQjtBQUVBLE1BQUlFLFlBQVksR0FBR0QsZ0JBQWdCLEVBQW5DO0FBQ0Esc0JBQ0UsNkJBQUMsY0FBRCxDQUFPLFFBQVAscUJBQ0U7QUFBSSxJQUFBLFNBQVMsRUFBRTtBQUFmLEtBQ0dDLFlBQVksS0FBS1EsU0FBakIsSUFDQ1IsWUFBWSxDQUFDd0IsR0FBYixDQUFpQixVQUFDL0IsV0FBRDtBQUFBLFdBQWlCc0IsbUJBQW1CLENBQUN0QixXQUFELENBQXBDO0FBQUEsR0FBakIsQ0FGSixDQURGLENBREY7QUFRRCxDQWxMRDs7QUFvTEEsSUFBTWdDLFNBQVMsR0FBRyx5QkFBUS9DLGVBQVIsQ0FBbEI7O2VBQ2UrQyxTQUFTLENBQUMzQyxhQUFELEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBJQXBwU3RhdGUgfSBmcm9tICdzcmMvbW9kZWxzL0lBcHBTdGF0ZSc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC10aW1lem9uZSc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCBUaW1lRm9ybWF0IGZyb20gJ3NyYy91dGlsaXRpZXMvVGltZUZvcm1hdCc7XG5cbmZ1bmN0aW9uIG1hcFN0YXRlVG9Qcm9wcyhzdGF0ZTogSUFwcFN0YXRlKSB7XG4gIGNvbnN0IHsgcG9pbnRzX2RhdGEsIGdsb2JhbF9kYXRhIH0gPSBzdGF0ZTtcblxuICByZXR1cm4ge1xuICAgIHBvaW50c19kYXRhLFxuICAgIGdsb2JhbF9kYXRhLFxuICB9O1xufVxuXG50eXBlIElQcm9wcyA9IENvbm5lY3RlZFByb3BzPHR5cGVvZiBjb25uZWN0b3I+ICYge1xuICBldmVudDogSUV2ZW50O1xufTtcblxuY29uc3QgRWFybHlXYXJuaW5nczogUmVhY3QuRkM8SVByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7IGV2ZW50LCBwb2ludHNfZGF0YSwgZ2xvYmFsX2RhdGEgfSA9IHByb3BzO1xuXG4gIGNvbnN0IGdldFBvaW50TmFtZSA9IChwb2ludF9pZDogbnVtYmVyKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLmZpbHRlcigocG9pbnQpID0+IHBvaW50LmlkID09PSBwb2ludF9pZClbMF0/Lm5hbWUgfHxcbiAgICAgICdObyBOYW1lJ1xuICAgICk7XG4gIH07XG5cbiAgY29uc3QgRVRBVG9UYXJnZXQgPSAob2JzZXJ2YXRpb246IGFueSwgZWFybHlfd2FybmluZzogYW55KSA9PiB7XG4gICAgcmV0dXJuIG9ic2VydmF0aW9uLnN0YXJ0X3RpbWUgKyBlYXJseV93YXJuaW5nLmRpc3RhbmNlICogNjA7XG4gIH07XG5cbiAgY29uc3QgY291bnREb3duVG9UYXJnZXQgPSAoZWFybHlfd2FybmluZzogYW55LCBvYnNlcnZhdGlvbjogYW55KSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGVhcmx5X3dhcm5pbmcuZGlzdGFuY2UgKiA2MCAtXG4gICAgICAoZ2xvYmFsX2RhdGEuY3VycmVudF90aW1lIC0gb2JzZXJ2YXRpb24uc3RhcnRfdGltZSlcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGdldEVhcmx5V2FybmluZ3MgPSAoKSA9PiB7XG4gICAgbGV0IG9ic2VydmF0aW9uczogYW55W10gPSBbXTtcbiAgICBldmVudC5vYnNlcnZhdGlvbnNcbiAgICAgIC5maWx0ZXIoKG9icykgPT4gZ2xvYmFsX2RhdGEuY3VycmVudF90aW1lID4gb2JzLnN0YXJ0X3RpbWUpXG4gICAgICAuZm9yRWFjaCgob2JzZXJ2YXRpb24pID0+IHtcbiAgICAgICAgb2JzZXJ2YXRpb24uZWFybHlfd2FybmluZ3MuZm9yRWFjaCgoZWFybHlfd2FybmluZzogYW55KSA9PiB7XG4gICAgICAgICAgbGV0IGV4aXN0aW5nRWFybHlXYXJuaW5nID0gb2JzZXJ2YXRpb25zLmZpbmQoXG4gICAgICAgICAgICAob2JzKSA9PlxuICAgICAgICAgICAgICBvYnMuZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZCA9PT1cbiAgICAgICAgICAgICAgZWFybHlfd2FybmluZy50YXJnZXRfcG9pbnRfaWQsXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoZXhpc3RpbmdFYXJseVdhcm5pbmcgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgLy8gQ2hlY2tzIGlmIG9ic2VydmF0aW9uIGV4aXN0cyB3aXRoIHNhbWUgdGFyZ2V0XG5cbiAgICAgICAgICAgIG9ic2VydmF0aW9ucy5zcGxpY2Uob2JzZXJ2YXRpb25zLmluZGV4T2YoZXhpc3RpbmdFYXJseVdhcm5pbmcpLCAxKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsZXQgYXJyaXZlZEJ1dE5vdE9ic2VydmVkLCBhcnJpdmVkO1xuXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgZ2xvYmFsX2RhdGEuY3VycmVudF90aW1lIDwgRVRBVG9UYXJnZXQob2JzZXJ2YXRpb24sIGVhcmx5X3dhcm5pbmcpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICAvLyBFdmVudCBoYXZlIG5vdCByZWFjaGVkIHRoZSB0YXJnZXQgeWV0XG4gICAgICAgICAgICBhcnJpdmVkID0gZmFsc2U7XG4gICAgICAgICAgICBhcnJpdmVkQnV0Tm90T2JzZXJ2ZWQgPSBmYWxzZTtcbiAgICAgICAgICB9IGVsc2UgaWYgKGV2ZW50LmVuZF90aW1lIDwgRVRBVG9UYXJnZXQob2JzZXJ2YXRpb24sIGVhcmx5X3dhcm5pbmcpKSB7XG4gICAgICAgICAgICAvLyBFVEEgcmVhY2hlZCBhZnRlciBldmVudCBlbmRlZFxuICAgICAgICAgICAgYXJyaXZlZEJ1dE5vdE9ic2VydmVkID0gdHJ1ZTtcbiAgICAgICAgICAgIGFycml2ZWQgPSBmYWxzZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gRXZlbnQgcmVhY2hlZCB0byB0YXJnZXRcbiAgICAgICAgICAgIGFycml2ZWRCdXROb3RPYnNlcnZlZCA9IGZhbHNlO1xuICAgICAgICAgICAgYXJyaXZlZCA9IHRydWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgb2JzZXJ2YXRpb25zLnB1c2goe1xuICAgICAgICAgICAgYXJyaXZlZEJ1dE5vdE9ic2VydmVkOiBhcnJpdmVkQnV0Tm90T2JzZXJ2ZWQsXG4gICAgICAgICAgICBhcnJpdmVkOiBhcnJpdmVkLFxuICAgICAgICAgICAgZWFybHlXYXJuaW5nOiBlYXJseV93YXJuaW5nLFxuICAgICAgICAgICAgb2JzZXJ2YXRpb246IG9ic2VydmF0aW9uLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIG9ic2VydmF0aW9ucztcbiAgfTtcblxuICBjb25zdCByZW5kZXJFYXJseVdhcm5pbmdzID0gKG9ic2VydmF0aW9uOiBhbnkpID0+IHtcbiAgICBpZiAoIW9ic2VydmF0aW9uLmFycml2ZWQpIHtcbiAgICAgIGlmICghb2JzZXJ2YXRpb24uYXJyaXZlZEJ1dE5vdE9ic2VydmVkKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPGxpIGtleT17b2JzZXJ2YXRpb24uZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZH0+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8Yj5cbiAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5ldGEnKX17JyAnfVxuICAgICAgICAgICAgICAgIHtnZXRQb2ludE5hbWUob2JzZXJ2YXRpb24uZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZCl9OnsnICd9XG4gICAgICAgICAgICAgIDwvYj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydlYXJseS13YXJuaW5nLWluZm8nfT5cbiAgICAgICAgICAgICAge21vbWVudFxuICAgICAgICAgICAgICAgIC51bml4KFxuICAgICAgICAgICAgICAgICAgRVRBVG9UYXJnZXQoXG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmF0aW9uLm9ic2VydmF0aW9uLFxuICAgICAgICAgICAgICAgICAgICBvYnNlcnZhdGlvbi5lYXJseVdhcm5pbmcsXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuZm9ybWF0KCdoOm1tIGEnKX1cbiAgICAgICAgICAgICAge2dsb2JhbF9kYXRhLmN1cnJlbnRfdGltZSAhPT0gMCAmJiAoXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnZGFuZ2VyJ30+XG4gICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAgKHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy53aXRoaW4nKX17JyAnfVxuICAgICAgICAgICAgICAgICAge21vbWVudFxuICAgICAgICAgICAgICAgICAgICAuZHVyYXRpb24oXG4gICAgICAgICAgICAgICAgICAgICAgY291bnREb3duVG9UYXJnZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZhdGlvbi5lYXJseVdhcm5pbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZhdGlvbi5vYnNlcnZhdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICdzZWNvbmRzJyxcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAuaHVtYW5pemUoKX1cbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17J2Rhbmdlcid9PlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5oaWdoX2NoYW5jZXNfb2ZfcmVhY2hpbmcnKX1cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPGxpIGtleT17b2JzZXJ2YXRpb24uZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZH0+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8Yj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXhwZWN0ZWRfdG9fYXJyaXZlX2J1dF9ub3Rfb2JzZXJ2ZWQnKX17JyAnfVxuICAgICAgICAgICAgICAgIHtnZXRQb2ludE5hbWUob2JzZXJ2YXRpb24uZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZCl9XG4gICAgICAgICAgICAgIDwvYj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydlYXJseS13YXJuaW5nLWluZm8nfT5cbiAgICAgICAgICAgICAge2dsb2JhbF9kYXRhLmN1cnJlbnRfdGltZSAhPT0gMCAmJiAoXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnZGFuZ2VyJ30+XG4gICAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuYXQnKX17JyAnfVxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICA8VGltZUZvcm1hdFxuICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcD17RVRBVG9UYXJnZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZhdGlvbi5vYnNlcnZhdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmF0aW9uLmVhcmx5V2FybmluZyxcbiAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIHRpbWVfem9uZT17b2JzZXJ2YXRpb24ub2JzZXJ2YXRpb24udGltZV96b25lfVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxsaSBrZXk9e29ic2VydmF0aW9uLmVhcmx5V2FybmluZy50YXJnZXRfcG9pbnRfaWR9PlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8Yj5cbiAgICAgICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LnBvbGx1dGlvbl9oYXNfcmVhY2hlZCcpfXsnICd9XG4gICAgICAgICAgICAgIHtnZXRQb2ludE5hbWUob2JzZXJ2YXRpb24uZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZCl9XG4gICAgICAgICAgICA8L2I+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydlYXJseS13YXJuaW5nLWluZm8nfT5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17J2Rhbmdlcid9PlxuICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuYXQnKX17JyAnfVxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgPFRpbWVGb3JtYXRcbiAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcD17RVRBVG9UYXJnZXQoXG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmF0aW9uLm9ic2VydmF0aW9uLFxuICAgICAgICAgICAgICAgICAgICBvYnNlcnZhdGlvbi5lYXJseVdhcm5pbmcsXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgdGltZV96b25lPXtvYnNlcnZhdGlvbi5vYnNlcnZhdGlvbi50aW1lX3pvbmV9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2xpPlxuICAgICAgKTtcbiAgICB9XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHt9LCBbZ2xvYmFsX2RhdGEuY3VycmVudF90aW1lXSk7XG5cbiAgbGV0IG9ic2VydmF0aW9ucyA9IGdldEVhcmx5V2FybmluZ3MoKTtcbiAgcmV0dXJuIChcbiAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICA8dWwgY2xhc3NOYW1lPXsnZWFybHlfd2FybmluZ3MnfT5cbiAgICAgICAge29ic2VydmF0aW9ucyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgb2JzZXJ2YXRpb25zLm1hcCgob2JzZXJ2YXRpb24pID0+IHJlbmRlckVhcmx5V2FybmluZ3Mob2JzZXJ2YXRpb24pKX1cbiAgICAgIDwvdWw+XG4gICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgKTtcbn07XG5cbmNvbnN0IGNvbm5lY3RvciA9IGNvbm5lY3QobWFwU3RhdGVUb1Byb3BzKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihFYXJseVdhcm5pbmdzKTtcbiJdfQ==
126
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9tb21lbnRUaW1lem9uZSIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfaTE4biIsIl9UaW1lRm9ybWF0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsInBvaW50c19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJFYXJseVdhcm5pbmdzIiwicHJvcHMiLCJldmVudCIsImdldFBvaW50TmFtZSIsInBvaW50X2lkIiwiX3BvaW50c19kYXRhJGl0ZW1zJGZpIiwiaXRlbXMiLCJmaWx0ZXIiLCJwb2ludCIsImlkIiwibmFtZSIsIkVUQVRvVGFyZ2V0Iiwib2JzZXJ2YXRpb24iLCJlYXJseV93YXJuaW5nIiwic3RhcnRfdGltZSIsImRpc3RhbmNlIiwiY291bnREb3duVG9UYXJnZXQiLCJjdXJyZW50X3RpbWUiLCJnZXRFYXJseVdhcm5pbmdzIiwib2JzZXJ2YXRpb25zIiwib2JzIiwiZm9yRWFjaCIsImVhcmx5X3dhcm5pbmdzIiwiZXhpc3RpbmdFYXJseVdhcm5pbmciLCJmaW5kIiwiZWFybHlXYXJuaW5nIiwidGFyZ2V0X3BvaW50X2lkIiwidW5kZWZpbmVkIiwic3BsaWNlIiwiaW5kZXhPZiIsImFycml2ZWRCdXROb3RPYnNlcnZlZCIsImFycml2ZWQiLCJlbmRfdGltZSIsInB1c2giLCJyZW5kZXJFYXJseVdhcm5pbmdzIiwiY3JlYXRlRWxlbWVudCIsImkxOG4iLCJ0IiwiY2xhc3NOYW1lIiwibW9tZW50IiwidW5peCIsImZvcm1hdCIsImR1cmF0aW9uIiwiaHVtYW5pemUiLCJ0aW1lc3RhbXAiLCJ0aW1lX3pvbmUiLCJ1c2VFZmZlY3QiLCJGcmFnbWVudCIsIm1hcCIsImNvbm5lY3RvciIsImNvbm5lY3QiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9ldmVudHMvZXZlbnRfaW5mby9FYXJseVdhcm5pbmdzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBJQXBwU3RhdGUgfSBmcm9tICdzcmMvbW9kZWxzL0lBcHBTdGF0ZSc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC10aW1lem9uZSc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCBUaW1lRm9ybWF0IGZyb20gJ3NyYy91dGlsaXRpZXMvVGltZUZvcm1hdCc7XG5cbmZ1bmN0aW9uIG1hcFN0YXRlVG9Qcm9wcyhzdGF0ZTogSUFwcFN0YXRlKSB7XG4gIGNvbnN0IHsgcG9pbnRzX2RhdGEsIGdsb2JhbF9kYXRhIH0gPSBzdGF0ZTtcblxuICByZXR1cm4ge1xuICAgIHBvaW50c19kYXRhLFxuICAgIGdsb2JhbF9kYXRhLFxuICB9O1xufVxuXG50eXBlIElQcm9wcyA9IENvbm5lY3RlZFByb3BzPHR5cGVvZiBjb25uZWN0b3I+ICYge1xuICBldmVudDogSUV2ZW50O1xufTtcblxuY29uc3QgRWFybHlXYXJuaW5nczogUmVhY3QuRkM8SVByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7IGV2ZW50LCBwb2ludHNfZGF0YSwgZ2xvYmFsX2RhdGEgfSA9IHByb3BzO1xuXG4gIGNvbnN0IGdldFBvaW50TmFtZSA9IChwb2ludF9pZDogbnVtYmVyKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLmZpbHRlcigocG9pbnQpID0+IHBvaW50LmlkID09PSBwb2ludF9pZClbMF0/Lm5hbWUgfHxcbiAgICAgICdObyBOYW1lJ1xuICAgICk7XG4gIH07XG5cbiAgY29uc3QgRVRBVG9UYXJnZXQgPSAob2JzZXJ2YXRpb246IGFueSwgZWFybHlfd2FybmluZzogYW55KSA9PiB7XG4gICAgcmV0dXJuIG9ic2VydmF0aW9uLnN0YXJ0X3RpbWUgKyBlYXJseV93YXJuaW5nLmRpc3RhbmNlICogNjA7XG4gIH07XG5cbiAgY29uc3QgY291bnREb3duVG9UYXJnZXQgPSAoZWFybHlfd2FybmluZzogYW55LCBvYnNlcnZhdGlvbjogYW55KSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGVhcmx5X3dhcm5pbmcuZGlzdGFuY2UgKiA2MCAtXG4gICAgICAoZ2xvYmFsX2RhdGEuY3VycmVudF90aW1lIC0gb2JzZXJ2YXRpb24uc3RhcnRfdGltZSlcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGdldEVhcmx5V2FybmluZ3MgPSAoKSA9PiB7XG4gICAgbGV0IG9ic2VydmF0aW9uczogYW55W10gPSBbXTtcbiAgICBldmVudC5vYnNlcnZhdGlvbnNcbiAgICAgIC5maWx0ZXIoKG9icykgPT4gZ2xvYmFsX2RhdGEuY3VycmVudF90aW1lID4gb2JzLnN0YXJ0X3RpbWUpXG4gICAgICAuZm9yRWFjaCgob2JzZXJ2YXRpb24pID0+IHtcbiAgICAgICAgb2JzZXJ2YXRpb24uZWFybHlfd2FybmluZ3MuZm9yRWFjaCgoZWFybHlfd2FybmluZzogYW55KSA9PiB7XG4gICAgICAgICAgbGV0IGV4aXN0aW5nRWFybHlXYXJuaW5nID0gb2JzZXJ2YXRpb25zLmZpbmQoXG4gICAgICAgICAgICAob2JzKSA9PlxuICAgICAgICAgICAgICBvYnMuZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZCA9PT1cbiAgICAgICAgICAgICAgZWFybHlfd2FybmluZy50YXJnZXRfcG9pbnRfaWQsXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoZXhpc3RpbmdFYXJseVdhcm5pbmcgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgLy8gQ2hlY2tzIGlmIG9ic2VydmF0aW9uIGV4aXN0cyB3aXRoIHNhbWUgdGFyZ2V0XG5cbiAgICAgICAgICAgIG9ic2VydmF0aW9ucy5zcGxpY2Uob2JzZXJ2YXRpb25zLmluZGV4T2YoZXhpc3RpbmdFYXJseVdhcm5pbmcpLCAxKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsZXQgYXJyaXZlZEJ1dE5vdE9ic2VydmVkLCBhcnJpdmVkO1xuXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgZ2xvYmFsX2RhdGEuY3VycmVudF90aW1lIDwgRVRBVG9UYXJnZXQob2JzZXJ2YXRpb24sIGVhcmx5X3dhcm5pbmcpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICAvLyBFdmVudCBoYXZlIG5vdCByZWFjaGVkIHRoZSB0YXJnZXQgeWV0XG4gICAgICAgICAgICBhcnJpdmVkID0gZmFsc2U7XG4gICAgICAgICAgICBhcnJpdmVkQnV0Tm90T2JzZXJ2ZWQgPSBmYWxzZTtcbiAgICAgICAgICB9IGVsc2UgaWYgKGV2ZW50LmVuZF90aW1lIDwgRVRBVG9UYXJnZXQob2JzZXJ2YXRpb24sIGVhcmx5X3dhcm5pbmcpKSB7XG4gICAgICAgICAgICAvLyBFVEEgcmVhY2hlZCBhZnRlciBldmVudCBlbmRlZFxuICAgICAgICAgICAgYXJyaXZlZEJ1dE5vdE9ic2VydmVkID0gdHJ1ZTtcbiAgICAgICAgICAgIGFycml2ZWQgPSBmYWxzZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gRXZlbnQgcmVhY2hlZCB0byB0YXJnZXRcbiAgICAgICAgICAgIGFycml2ZWRCdXROb3RPYnNlcnZlZCA9IGZhbHNlO1xuICAgICAgICAgICAgYXJyaXZlZCA9IHRydWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgb2JzZXJ2YXRpb25zLnB1c2goe1xuICAgICAgICAgICAgYXJyaXZlZEJ1dE5vdE9ic2VydmVkOiBhcnJpdmVkQnV0Tm90T2JzZXJ2ZWQsXG4gICAgICAgICAgICBhcnJpdmVkOiBhcnJpdmVkLFxuICAgICAgICAgICAgZWFybHlXYXJuaW5nOiBlYXJseV93YXJuaW5nLFxuICAgICAgICAgICAgb2JzZXJ2YXRpb246IG9ic2VydmF0aW9uLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIG9ic2VydmF0aW9ucztcbiAgfTtcblxuICBjb25zdCByZW5kZXJFYXJseVdhcm5pbmdzID0gKG9ic2VydmF0aW9uOiBhbnkpID0+IHtcbiAgICBpZiAoIW9ic2VydmF0aW9uLmFycml2ZWQpIHtcbiAgICAgIGlmICghb2JzZXJ2YXRpb24uYXJyaXZlZEJ1dE5vdE9ic2VydmVkKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPGxpIGtleT17b2JzZXJ2YXRpb24uZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZH0+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8Yj5cbiAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5ldGEnKX17JyAnfVxuICAgICAgICAgICAgICAgIHtnZXRQb2ludE5hbWUob2JzZXJ2YXRpb24uZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZCl9OnsnICd9XG4gICAgICAgICAgICAgIDwvYj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydlYXJseS13YXJuaW5nLWluZm8nfT5cbiAgICAgICAgICAgICAge21vbWVudFxuICAgICAgICAgICAgICAgIC51bml4KFxuICAgICAgICAgICAgICAgICAgRVRBVG9UYXJnZXQoXG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmF0aW9uLm9ic2VydmF0aW9uLFxuICAgICAgICAgICAgICAgICAgICBvYnNlcnZhdGlvbi5lYXJseVdhcm5pbmcsXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuZm9ybWF0KCdoOm1tIGEnKX1cbiAgICAgICAgICAgICAge2dsb2JhbF9kYXRhLmN1cnJlbnRfdGltZSAhPT0gMCAmJiAoXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnZGFuZ2VyJ30+XG4gICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAgKHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy53aXRoaW4nKX17JyAnfVxuICAgICAgICAgICAgICAgICAge21vbWVudFxuICAgICAgICAgICAgICAgICAgICAuZHVyYXRpb24oXG4gICAgICAgICAgICAgICAgICAgICAgY291bnREb3duVG9UYXJnZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZhdGlvbi5lYXJseVdhcm5pbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZhdGlvbi5vYnNlcnZhdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICdzZWNvbmRzJyxcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAuaHVtYW5pemUoKX1cbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17J2Rhbmdlcid9PlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5oaWdoX2NoYW5jZXNfb2ZfcmVhY2hpbmcnKX1cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPGxpIGtleT17b2JzZXJ2YXRpb24uZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZH0+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8Yj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXhwZWN0ZWRfdG9fYXJyaXZlX2J1dF9ub3Rfb2JzZXJ2ZWQnKX17JyAnfVxuICAgICAgICAgICAgICAgIHtnZXRQb2ludE5hbWUob2JzZXJ2YXRpb24uZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZCl9XG4gICAgICAgICAgICAgIDwvYj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydlYXJseS13YXJuaW5nLWluZm8nfT5cbiAgICAgICAgICAgICAge2dsb2JhbF9kYXRhLmN1cnJlbnRfdGltZSAhPT0gMCAmJiAoXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnZGFuZ2VyJ30+XG4gICAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuYXQnKX17JyAnfVxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICA8VGltZUZvcm1hdFxuICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcD17RVRBVG9UYXJnZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZhdGlvbi5vYnNlcnZhdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmF0aW9uLmVhcmx5V2FybmluZyxcbiAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIHRpbWVfem9uZT17b2JzZXJ2YXRpb24ub2JzZXJ2YXRpb24udGltZV96b25lfVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxsaSBrZXk9e29ic2VydmF0aW9uLmVhcmx5V2FybmluZy50YXJnZXRfcG9pbnRfaWR9PlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8Yj5cbiAgICAgICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LnBvbGx1dGlvbl9oYXNfcmVhY2hlZCcpfXsnICd9XG4gICAgICAgICAgICAgIHtnZXRQb2ludE5hbWUob2JzZXJ2YXRpb24uZWFybHlXYXJuaW5nLnRhcmdldF9wb2ludF9pZCl9XG4gICAgICAgICAgICA8L2I+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydlYXJseS13YXJuaW5nLWluZm8nfT5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17J2Rhbmdlcid9PlxuICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuYXQnKX17JyAnfVxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgPFRpbWVGb3JtYXRcbiAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcD17RVRBVG9UYXJnZXQoXG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmF0aW9uLm9ic2VydmF0aW9uLFxuICAgICAgICAgICAgICAgICAgICBvYnNlcnZhdGlvbi5lYXJseVdhcm5pbmcsXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgdGltZV96b25lPXtvYnNlcnZhdGlvbi5vYnNlcnZhdGlvbi50aW1lX3pvbmV9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2xpPlxuICAgICAgKTtcbiAgICB9XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHt9LCBbZ2xvYmFsX2RhdGEuY3VycmVudF90aW1lXSk7XG5cbiAgbGV0IG9ic2VydmF0aW9ucyA9IGdldEVhcmx5V2FybmluZ3MoKTtcbiAgcmV0dXJuIChcbiAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICA8dWwgY2xhc3NOYW1lPXsnZWFybHlfd2FybmluZ3MnfT5cbiAgICAgICAge29ic2VydmF0aW9ucyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgb2JzZXJ2YXRpb25zLm1hcCgob2JzZXJ2YXRpb24pID0+IHJlbmRlckVhcmx5V2FybmluZ3Mob2JzZXJ2YXRpb24pKX1cbiAgICAgIDwvdWw+XG4gICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgKTtcbn07XG5cbmNvbnN0IGNvbm5lY3RvciA9IGNvbm5lY3QobWFwU3RhdGVUb1Byb3BzKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihFYXJseVdhcm5pbmdzKTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxlQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFFQSxJQUFBSSxLQUFBLEdBQUFELHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSyxXQUFBLEdBQUFGLHNCQUFBLENBQUFILE9BQUE7QUFBa0QsU0FBQU0seUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJB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
@@ -1,39 +1,26 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _react = _interopRequireDefault(require("react"));
11
-
12
9
  var _i18n = _interopRequireDefault(require("utilities/i18n"));
13
-
14
10
  var _TimeFormat = _interopRequireDefault(require("utilities/TimeFormat"));
15
-
16
11
  var _EarlyWarnings = _interopRequireDefault(require("./EarlyWarnings"));
17
-
18
12
  var _Samplings = _interopRequireDefault(require("./samplings/Samplings"));
19
-
20
13
  var _EventUtils = require("../events_list/EventUtils");
21
-
22
14
  var _useQueryURL = _interopRequireDefault(require("hooks/useQueryURL"));
23
-
24
15
  var _reactToastify = require("react-toastify");
25
-
26
16
  var _reactFontawesome = require("@fortawesome/react-fontawesome");
27
-
28
17
  var _freeSolidSvgIcons = require("@fortawesome/free-solid-svg-icons");
29
-
30
18
  /* eslint-disable local-rules/no-hard-coded-jsx-literals */
19
+
31
20
  var EventDetails = function EventDetails(props) {
32
21
  var _event$samplings;
33
-
34
22
  var event = props.event,
35
- points = props.points;
36
-
23
+ points = props.points;
37
24
  var buildDateRange = function buildDateRange(timestamp) {
38
25
  var date = new Date(timestamp).getTime();
39
26
  var dayMs = 86400000;
@@ -46,17 +33,14 @@ var EventDetails = function EventDetails(props) {
46
33
  lateDate: dateLate
47
34
  };
48
35
  };
49
-
50
36
  var joinKQL = function joinKQL(KQL) {
51
37
  KQL += " TimeFilterItem IN ( ".concat(buildDateRange(event.last_seen_time).earlyDate, ":").concat(buildDateRange(event.last_seen_time).lateDate, " )");
52
38
  return KQL;
53
39
  };
54
-
55
40
  var cutKQL = function cutKQL(KQL) {
56
41
  KQL = "TimeFilterItem IN ( ".concat(buildDateRange(event.last_seen_time).earlyDate, ":").concat(buildDateRange(event.last_seen_time).lateDate, " ) ORDER_BY severity");
57
42
  return KQL;
58
43
  };
59
-
60
44
  var buildKQLWithTimeRange = function buildKQLWithTimeRange() {
61
45
  var href = window.location.href;
62
46
  var KQL = query.get('valuesFromKQL');
@@ -64,25 +48,20 @@ var EventDetails = function EventDetails(props) {
64
48
  if (KQL === null) return url.href;
65
49
  var includesALL = KQL.includes('ALL');
66
50
  var timeFilterPresent = KQL.match('(?=TimeFilterItem)(.*?)(?:(\\)))');
67
-
68
51
  if (timeFilterPresent) {
69
52
  var findTimeFilter = timeFilterPresent;
70
-
71
53
  if (findTimeFilter !== null) {
72
54
  KQL = KQL.replace(findTimeFilter[0], ' ');
73
55
  }
74
-
75
56
  KQL = joinKQL(KQL);
76
57
  } else {
77
58
  KQL = includesALL ? cutKQL(KQL) : joinKQL(KQL);
78
59
  }
79
-
80
60
  url.searchParams.set('valuesFromKQL', KQL);
81
61
  return url.href;
82
62
  };
83
-
84
- var query = (0, _useQueryURL.default)(); //eslint-disable-next-line
85
-
63
+ var query = (0, _useQueryURL.default)();
64
+ //eslint-disable-next-line
86
65
  var copyUrl = function copyUrl() {
87
66
  navigator.clipboard.writeText(buildKQLWithTimeRange()).then(function () {
88
67
  _reactToastify.toast.success(_i18n.default.t('copy.success'), {
@@ -98,12 +77,10 @@ var EventDetails = function EventDetails(props) {
98
77
  });
99
78
  });
100
79
  };
101
-
102
80
  var _parseEventData = (0, _EventUtils.parseEventData)(event),
103
- firstseen = _parseEventData.firstseen,
104
- lastseen = _parseEventData.lastseen,
105
- total = _parseEventData.total;
106
-
81
+ firstseen = _parseEventData.firstseen,
82
+ lastseen = _parseEventData.lastseen,
83
+ total = _parseEventData.total;
107
84
  return /*#__PURE__*/_react.default.createElement("div", {
108
85
  className: 'event-details event-info__card'
109
86
  }, /*#__PURE__*/_react.default.createElement("div", {
@@ -162,7 +139,6 @@ var EventDetails = function EventDetails(props) {
162
139
  points: points
163
140
  }))));
164
141
  };
165
-
166
142
  var _default = EventDetails;
167
143
  exports.default = _default;
168
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudF9pbmZvL0V2ZW50RGV0YWlscy50c3giXSwibmFtZXMiOlsiRXZlbnREZXRhaWxzIiwicHJvcHMiLCJldmVudCIsInBvaW50cyIsImJ1aWxkRGF0ZVJhbmdlIiwidGltZXN0YW1wIiwiZGF0ZSIsIkRhdGUiLCJnZXRUaW1lIiwiZGF5TXMiLCJkYXRlTWludXNPbmUiLCJkYXRlUGx1c09uZSIsImRhdGVFYXJseSIsImdldEZ1bGxZZWFyIiwiZ2V0TW9udGgiLCJnZXREYXRlIiwiZGF0ZUxhdGUiLCJlYXJseURhdGUiLCJsYXRlRGF0ZSIsImpvaW5LUUwiLCJLUUwiLCJsYXN0X3NlZW5fdGltZSIsImN1dEtRTCIsImJ1aWxkS1FMV2l0aFRpbWVSYW5nZSIsImhyZWYiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInF1ZXJ5IiwiZ2V0IiwidXJsIiwiVVJMIiwiaW5jbHVkZXNBTEwiLCJpbmNsdWRlcyIsInRpbWVGaWx0ZXJQcmVzZW50IiwibWF0Y2giLCJmaW5kVGltZUZpbHRlciIsInJlcGxhY2UiLCJzZWFyY2hQYXJhbXMiLCJzZXQiLCJjb3B5VXJsIiwibmF2aWdhdG9yIiwiY2xpcGJvYXJkIiwid3JpdGVUZXh0IiwidGhlbiIsInRvYXN0Iiwic3VjY2VzcyIsImkxOG4iLCJ0IiwicG9zaXRpb24iLCJhdXRvQ2xvc2UiLCJoaWRlUHJvZ3Jlc3NCYXIiLCJmaXJzdHNlZW4iLCJsYXN0c2VlbiIsInRvdGFsIiwiZmFDb3B5Iiwic2V2ZXJpdHkiLCJwb2ludF9uYW1lIiwic3RhcnRfdGltZSIsInRpbWVfem9uZSIsInNhbXBsaW5ncyIsImxlbmd0aCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQ0E7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBWkE7QUFtQkEsSUFBTUEsWUFBOEIsR0FBRyxTQUFqQ0EsWUFBaUMsQ0FBQ0Ms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QUFFRSxJQUFBLFNBQVMsRUFBRU4sU0FBUyxDQUFDTztBQUZ2QixJQURGLENBRkYsQ0FMRixDQWhDRixlQStDRTtBQUFLLElBQUEsU0FBUyxFQUFFO0FBQWhCLGtCQUNFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixLQUNHWixjQUFLQyxDQUFMLENBQU8sMkJBQVAsQ0FESCxNQURGLGVBS0UsdURBQ0Usd0NBQUlLLFFBQVEsQ0FBQ0ksVUFBYixDQURGLGVBRUUsd0RBQ0UsNkJBQUMsbUJBQUQ7QUFDRSxJQUFBLFNBQVMsRUFBRUosUUFBUSxDQUFDL0IsY0FEdEI7QUFFRSxJQUFBLFNBQVMsRUFBRStCLFFBQVEsQ0FBQ007QUFGdEIsSUFERixDQUZGLENBTEYsQ0EvQ0YsZUE4REU7QUFBSyxJQUFBLFNBQVMsRUFBRTtBQUFoQixrQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsS0FDR1osY0FBS0MsQ0FBTCxDQUFPLDRCQUFQLENBREgsTUFERixlQUtFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixLQUE2Qk0sS0FBN0IsQ0FMRixDQTlERixFQXFFRyxDQUFBbkQsS0FBSyxTQUFMLElBQUFBLEtBQUssV0FBTCxnQ0FBQUEsS0FBSyxDQUFFeUQsU0FBUCxzRUFBa0JDLE1BQWxCLElBQTJCLENBQTNCLGlCQUNDO0FBQUssSUFBQSxTQUFTLEVBQUU7QUFBaEIsa0JBQ0UsNkJBQUMsa0JBQUQ7QUFBVyxJQUFBLEtBQUssRUFBRTFELEtBQWxCO0FBQXlCLElBQUEsTUFBTSxFQUFFQztBQUFqQyxJQURGLENBdEVKLENBWkYsQ0FERjtBQTBGRCxDQS9LRDs7ZUFpTGVILFkiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBsb2NhbC1ydWxlcy9uby1oYXJkLWNvZGVkLWpzeC1saXRlcmFscyAqL1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBJUG9pbnRzU3RhdGUgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnRzU3RhdGUnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCBUaW1lRm9ybWF0IGZyb20gJ3NyYy91dGlsaXRpZXMvVGltZUZvcm1hdCc7XG5pbXBvcnQgRWFybHlXYXJuaW5ncyBmcm9tICcuL0Vhcmx5V2FybmluZ3MnO1xuaW1wb3J0IFNhbXBsaW5ncyBmcm9tICcuL3NhbXBsaW5ncy9TYW1wbGluZ3MnO1xuaW1wb3J0IHsgcGFyc2VFdmVudERhdGEgfSBmcm9tICcuLi9ldmVudHNfbGlzdC9FdmVudFV0aWxzJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICdzcmMvaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IHsgdG9hc3QgfSBmcm9tICdyZWFjdC10b2FzdGlmeSc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgZmFDb3B5IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIGV2ZW50OiBJRXZlbnQ7XG4gIHBvaW50czogSVBvaW50c1N0YXRlO1xufTtcblxuY29uc3QgRXZlbnREZXRhaWxzOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZXZlbnQsIHBvaW50cyB9ID0gcHJvcHM7XG5cbiAgY29uc3QgYnVpbGREYXRlUmFuZ2UgPSAodGltZXN0YW1wKSA9PiB7XG4gICAgbGV0IGRhdGUgPSBuZXcgRGF0ZSh0aW1lc3RhbXApLmdldFRpbWUoKTtcbiAgICBsZXQgZGF5TXMgPSA4NjQwMDAwMDtcbiAgICBsZXQgZGF0ZU1pbnVzT25lID0gbmV3IERhdGUoZGF0ZSAtIGRheU1zKTtcbiAgICBsZXQgZGF0ZVBsdXNPbmUgPSBuZXcgRGF0ZShkYXRlICsgZGF5TXMpO1xuICAgIGxldCBkYXRlRWFybHkgPSBgJHtkYXRlTWludXNPbmUuZ2V0RnVsbFllYXIoKX0tJHtcbiAgICAgIGRhdGVNaW51c09uZS5nZXRNb250aCgpICsgMVxuICAgIH0tJHtkYXRlTWludXNPbmUuZ2V0RGF0ZSgpfWA7XG4gICAgbGV0IGRhdGVMYXRlID0gYCR7ZGF0ZVBsdXNPbmUuZ2V0RnVsbFllYXIoKX0tJHtcbiAgICAgIGRhdGVQbHVzT25lLmdldE1vbnRoKCkgKyAxXG4gICAgfS0ke2RhdGVQbHVzT25lLmdldERhdGUoKX1gO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGVhcmx5RGF0ZTogZGF0ZUVhcmx5LFxuICAgICAgbGF0ZURhdGU6IGRhdGVMYXRlLFxuICAgIH07XG4gIH07XG5cbiAgY29uc3Qgam9pbktRTCA9IChLUUw6IHN0cmluZykgPT4ge1xuICAgIEtRTCArPSBgIFRpbWVGaWx0ZXJJdGVtIElOICggJHtcbiAgICAgIGJ1aWxkRGF0ZVJhbmdlKGV2ZW50Lmxhc3Rfc2Vlbl90aW1lKS5lYXJseURhdGVcbiAgICB9OiR7YnVpbGREYXRlUmFuZ2UoZXZlbnQubGFzdF9zZWVuX3RpbWUpLmxhdGVEYXRlfSApYDtcblxuICAgIHJldHVybiBLUUw7XG4gIH07XG5cbiAgY29uc3QgY3V0S1FMID0gKEtRTDogc3RyaW5nKSA9PiB7XG4gICAgS1FMID0gYFRpbWVGaWx0ZXJJdGVtIElOICggJHtcbiAgICAgIGJ1aWxkRGF0ZVJhbmdlKGV2ZW50Lmxhc3Rfc2Vlbl90aW1lKS5lYXJseURhdGVcbiAgICB9OiR7YnVpbGREYXRlUmFuZ2UoZXZlbnQubGFzdF9zZWVuX3RpbWUpLmxhdGVEYXRlfSApIE9SREVSX0JZIHNldmVyaXR5YDtcblxuICAgIHJldHVybiBLUUw7XG4gIH07XG5cbiAgY29uc3QgYnVpbGRLUUxXaXRoVGltZVJhbmdlID0gKCkgPT4ge1xuICAgIGNvbnN0IGhyZWYgPSB3aW5kb3cubG9jYXRpb24uaHJlZjtcbiAgICBsZXQgS1FMID0gcXVlcnkuZ2V0KCd2YWx1ZXNGcm9tS1FMJyk7XG4gICAgbGV0IHVybCA9IG5ldyBVUkwoaHJlZik7XG5cbiAgICBpZiAoS1FMID09PSBudWxsKSByZXR1cm4gdXJsLmhyZWY7XG5cbiAgICBsZXQgaW5jbHVkZXNBTEwgPSBLUUwuaW5jbHVkZXMoJ0FMTCcpO1xuICAgIGxldCB0aW1lRmlsdGVyUHJlc2VudCA9IEtRTC5tYXRjaCgnKD89VGltZUZpbHRlckl0ZW0pKC4qPykoPzooXFxcXCkpKScpO1xuXG4gICAgaWYgKHRpbWVGaWx0ZXJQcmVzZW50KSB7XG4gICAgICBsZXQgZmluZFRpbWVGaWx0ZXIgPSB0aW1lRmlsdGVyUHJlc2VudDtcbiAgICAgIGlmIChmaW5kVGltZUZpbHRlciAhPT0gbnVsbCkge1xuICAgICAgICBLUUwgPSBLUUwucmVwbGFjZShmaW5kVGltZUZpbHRlclswXSwgJyAnKTtcbiAgICAgIH1cblxuICAgICAgS1FMID0gam9pbktRTChLUUwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBLUUwgPSBpbmNsdWRlc0FMTCA/IGN1dEtRTChLUUwpIDogam9pbktRTChLUUwpO1xuICAgIH1cblxuICAgIHVybC5zZWFyY2hQYXJhbXMuc2V0KCd2YWx1ZXNGcm9tS1FMJywgS1FMISk7XG4gICAgcmV0dXJuIHVybC5ocmVmO1xuICB9O1xuXG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnlVUkwoKTtcbiAgLy9lc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY29uc3QgY29weVVybCA9ICgpID0+IHtcbiAgICBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChidWlsZEtRTFdpdGhUaW1lUmFuZ2UoKSkudGhlbihcbiAgICAgICgpID0+IHtcbiAgICAgICAgdG9hc3Quc3VjY2VzcyhpMThuLnQoJ2NvcHkuc3VjY2VzcycpLCB7XG4gICAgICAgICAgcG9zaXRpb246ICd0b3AtY2VudGVyJyxcbiAgICAgICAgICBhdXRvQ2xvc2U6IDE1MDAsXG4gICAgICAgICAgaGlkZVByb2dyZXNzQmFyOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRvYXN0LnN1Y2Nlc3MoaTE4bi50KCdjb3B5LmZhaWxlZCcpLCB7XG4gICAgICAgICAgcG9zaXRpb246ICd0b3AtY2VudGVyJyxcbiAgICAgICAgICBhdXRvQ2xvc2U6IDE1MDAsXG4gICAgICAgICAgaGlkZVByb2dyZXNzQmFyOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCB7IGZpcnN0c2VlbiwgbGFzdHNlZW4sIHRvdGFsIH0gPSBwYXJzZUV2ZW50RGF0YShldmVudCk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17J2V2ZW50LWRldGFpbHMgZXZlbnQtaW5mb19fY2FyZCd9PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0b3BcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aXRsZVwiPiB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRfZGV0YWlscycpfTwvZGl2PlxuICAgICAgICA8cFxuICAgICAgICAgIGNsYXNzTmFtZT1cImNvcHktYnV0dG9uXCJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICBjb3B5VXJsKCk7XG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFDb3B5fSAvPlxuICAgICAgICA8L3A+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGVudFwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2V2ZW50LWluZm9fX2RldGFpbCBldmVudC1pbmZvX19ldmVudF9zZXZlcml0eSd9PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94LXRpdGxlXCI+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LnNldmVyaXR5Jyl9OjwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnc2V2ZXJpdGllcyd9PlxuICAgICAgICAgICAgPHBcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgc2V2ZXJpdGllc19fc2V2ZXJpdHkgc2V2ZXJpdGllc19fc2V2ZXJpdHktLTAgc2V2ZXJpdGllc19fc2V2ZXJpdHktLTAke1xuICAgICAgICAgICAgICAgIGV2ZW50LnNldmVyaXR5ID09PSAnMCcgPyAnLS1hY3RpdmUnIDogJydcbiAgICAgICAgICAgICAgfWB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpMThuLnQoYGV2ZW50c19vdmVydmlldy5zZXZlcml0aWVzLjBgKX1cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17YHNldmVyaXRpZXNfX3NldmVyaXR5IHNldmVyaXRpZXNfX3NldmVyaXR5LS0xIHNldmVyaXRpZXNfX3NldmVyaXR5LS0xJHtcbiAgICAgICAgICAgICAgICBldmVudC5zZXZlcml0eSA9PT0gJzEnID8gJy0tYWN0aXZlJyA6ICcnXG4gICAgICAgICAgICAgIH1gfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KGBldmVudHNfb3ZlcnZpZXcuc2V2ZXJpdGllcy4xYCl9XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8cFxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2BzZXZlcml0aWVzX19zZXZlcml0eSBzZXZlcml0aWVzX19zZXZlcml0eS0tMiBzZXZlcml0aWVzX19zZXZlcml0eS0tMiR7XG4gICAgICAgICAgICAgICAgZXZlbnQuc2V2ZXJpdHkgPT09ICcyJyA/ICctLWFjdGl2ZScgOiAnJ1xuICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2kxOG4udChgZXZlbnRzX292ZXJ2aWV3LnNldmVyaXRpZXMuMmApfVxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17J2V2ZW50LWluZm9fX2RldGFpbCBldmVudC1pbmZvX19kZXRhaWxfX2Vhcmx5LXdhcm5pbmdzJ31cbiAgICAgICAgPlxuICAgICAgICAgIDxFYXJseVdhcm5pbmdzIGV2ZW50PXtldmVudH0gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZXZlbnQtaW5mb19fZGV0YWlsIGV2ZW50LWluZm9fX2RldGFpbF9fc2Vlbid9PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94LXRpdGxlXCI+XG4gICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlyc3Rfc2VlbicpfTp7JyAnfVxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxwPntmaXJzdHNlZW4ucG9pbnRfbmFtZX08L3A+XG4gICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgPFRpbWVGb3JtYXRcbiAgICAgICAgICAgICAgICB0aW1lc3RhbXA9e2ZpcnN0c2Vlbi5zdGFydF90aW1lfVxuICAgICAgICAgICAgICAgIHRpbWVfem9uZT17Zmlyc3RzZWVuLnRpbWVfem9uZX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZXZlbnQtaW5mb19fZGV0YWlsIGV2ZW50LWluZm9fX2RldGFpbF9fc2Vlbid9PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94LXRpdGxlXCI+XG4gICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcubGFzdF9zZWVuJyl9OlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxwPntsYXN0c2Vlbi5wb2ludF9uYW1lfTwvcD5cbiAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICA8VGltZUZvcm1hdFxuICAgICAgICAgICAgICAgIHRpbWVzdGFtcD17bGFzdHNlZW4ubGFzdF9zZWVuX3RpbWV9XG4gICAgICAgICAgICAgICAgdGltZV96b25lPXtsYXN0c2Vlbi50aW1lX3pvbmV9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2V2ZW50LWluZm9fX2RldGFpbCBldmVudC1pbmZvX19kZXRhaWxfX3NlZW4nfT5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveC10aXRsZVwiPlxuICAgICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LnRvdGFsX3RpbWUnKX06XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRvdGFsLXRpbWVcIj57dG90YWx9PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB7ZXZlbnQ/LnNhbXBsaW5ncz8ubGVuZ3RoID4gMCAmJiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydldmVudC1pbmZvX19kZXRhaWwnfT5cbiAgICAgICAgICAgIDxTYW1wbGluZ3MgZXZlbnQ9e2V2ZW50fSBwb2ludHM9e3BvaW50c30gLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgRXZlbnREZXRhaWxzO1xuIl19
144
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9pMThuIiwiX1RpbWVGb3JtYXQiLCJfRWFybHlXYXJuaW5ncyIsIl9TYW1wbGluZ3MiLCJfRXZlbnRVdGlscyIsIl91c2VRdWVyeVVSTCIsIl9yZWFjdFRvYXN0aWZ5IiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJFdmVudERldGFpbHMiLCJwcm9wcyIsIl9ldmVudCRzYW1wbGluZ3MiLCJldmVudCIsInBvaW50cyIsImJ1aWxkRGF0ZVJhbmdlIiwidGltZXN0YW1wIiwiZGF0ZSIsIkRhdGUiLCJnZXRUaW1lIiwiZGF5TXMiLCJkYXRlTWludXNPbmUiLCJkYXRlUGx1c09uZSIsImRhdGVFYXJseSIsImNvbmNhdCIsImdldEZ1bGxZZWFyIiwiZ2V0TW9udGgiLCJnZXREYXRlIiwiZGF0ZUxhdGUiLCJlYXJseURhdGUiLCJsYXRlRGF0ZSIsImpvaW5LUUwiLCJLUUwiLCJsYXN0X3NlZW5fdGltZSIsImN1dEtRTCIsImJ1aWxkS1FMV2l0aFRpbWVSYW5nZSIsImhyZWYiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInF1ZXJ5IiwiZ2V0IiwidXJsIiwiVVJMIiwiaW5jbHVkZXNBTEwiLCJpbmNsdWRlcyIsInRpbWVGaWx0ZXJQcmVzZW50IiwibWF0Y2giLCJmaW5kVGltZUZpbHRlciIsInJlcGxhY2UiLCJzZWFyY2hQYXJhbXMiLCJzZXQiLCJ1c2VRdWVyeVVSTCIsImNvcHlVcmwiLCJuYXZpZ2F0b3IiLCJjbGlwYm9hcmQiLCJ3cml0ZVRleHQiLCJ0aGVuIiwidG9hc3QiLCJzdWNjZXNzIiwiaTE4biIsInQiLCJwb3NpdGlvbiIsImF1dG9DbG9zZSIsImhpZGVQcm9ncmVzc0JhciIsIl9wYXJzZUV2ZW50RGF0YSIsInBhcnNlRXZlbnREYXRhIiwiZmlyc3RzZWVuIiwibGFzdHNlZW4iLCJ0b3RhbCIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwib25DbGljayIsIkZvbnRBd2Vzb21lSWNvbiIsImljb24iLCJmYUNvcHkiLCJzZXZlcml0eSIsInBvaW50X25hbWUiLCJzdGFydF90aW1lIiwidGltZV96b25lIiwic2FtcGxpbmdzIiwibGVuZ3RoIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50X2luZm8vRXZlbnREZXRhaWxzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBsb2NhbC1ydWxlcy9uby1oYXJkLWNvZGVkLWpzeC1saXRlcmFscyAqL1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBJUG9pbnRzU3RhdGUgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnRzU3RhdGUnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCBUaW1lRm9ybWF0IGZyb20gJ3NyYy91dGlsaXRpZXMvVGltZUZvcm1hdCc7XG5pbXBvcnQgRWFybHlXYXJuaW5ncyBmcm9tICcuL0Vhcmx5V2FybmluZ3MnO1xuaW1wb3J0IFNhbXBsaW5ncyBmcm9tICcuL3NhbXBsaW5ncy9TYW1wbGluZ3MnO1xuaW1wb3J0IHsgcGFyc2VFdmVudERhdGEgfSBmcm9tICcuLi9ldmVudHNfbGlzdC9FdmVudFV0aWxzJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICdzcmMvaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IHsgdG9hc3QgfSBmcm9tICdyZWFjdC10b2FzdGlmeSc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgZmFDb3B5IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIGV2ZW50OiBJRXZlbnQ7XG4gIHBvaW50czogSVBvaW50c1N0YXRlO1xufTtcblxuY29uc3QgRXZlbnREZXRhaWxzOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZXZlbnQsIHBvaW50cyB9ID0gcHJvcHM7XG5cbiAgY29uc3QgYnVpbGREYXRlUmFuZ2UgPSAodGltZXN0YW1wKSA9PiB7XG4gICAgbGV0IGRhdGUgPSBuZXcgRGF0ZSh0aW1lc3RhbXApLmdldFRpbWUoKTtcbiAgICBsZXQgZGF5TXMgPSA4NjQwMDAwMDtcbiAgICBsZXQgZGF0ZU1pbnVzT25lID0gbmV3IERhdGUoZGF0ZSAtIGRheU1zKTtcbiAgICBsZXQgZGF0ZVBsdXNPbmUgPSBuZXcgRGF0ZShkYXRlICsgZGF5TXMpO1xuICAgIGxldCBkYXRlRWFybHkgPSBgJHtkYXRlTWludXNPbmUuZ2V0RnVsbFllYXIoKX0tJHtcbiAgICAgIGRhdGVNaW51c09uZS5nZXRNb250aCgpICsgMVxuICAgIH0tJHtkYXRlTWludXNPbmUuZ2V0RGF0ZSgpfWA7XG4gICAgbGV0IGRhdGVMYXRlID0gYCR7ZGF0ZVBsdXNPbmUuZ2V0RnVsbFllYXIoKX0tJHtcbiAgICAgIGRhdGVQbHVzT25lLmdldE1vbnRoKCkgKyAxXG4gICAgfS0ke2RhdGVQbHVzT25lLmdldERhdGUoKX1gO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGVhcmx5RGF0ZTogZGF0ZUVhcmx5LFxuICAgICAgbGF0ZURhdGU6IGRhdGVMYXRlLFxuICAgIH07XG4gIH07XG5cbiAgY29uc3Qgam9pbktRTCA9IChLUUw6IHN0cmluZykgPT4ge1xuICAgIEtRTCArPSBgIFRpbWVGaWx0ZXJJdGVtIElOICggJHtcbiAgICAgIGJ1aWxkRGF0ZVJhbmdlKGV2ZW50Lmxhc3Rfc2Vlbl90aW1lKS5lYXJseURhdGVcbiAgICB9OiR7YnVpbGREYXRlUmFuZ2UoZXZlbnQubGFzdF9zZWVuX3RpbWUpLmxhdGVEYXRlfSApYDtcblxuICAgIHJldHVybiBLUUw7XG4gIH07XG5cbiAgY29uc3QgY3V0S1FMID0gKEtRTDogc3RyaW5nKSA9PiB7XG4gICAgS1FMID0gYFRpbWVGaWx0ZXJJdGVtIElOICggJHtcbiAgICAgIGJ1aWxkRGF0ZVJhbmdlKGV2ZW50Lmxhc3Rfc2Vlbl90aW1lKS5lYXJseURhdGVcbiAgICB9OiR7YnVpbGREYXRlUmFuZ2UoZXZlbnQubGFzdF9zZWVuX3RpbWUpLmxhdGVEYXRlfSApIE9SREVSX0JZIHNldmVyaXR5YDtcblxuICAgIHJldHVybiBLUUw7XG4gIH07XG5cbiAgY29uc3QgYnVpbGRLUUxXaXRoVGltZVJhbmdlID0gKCkgPT4ge1xuICAgIGNvbnN0IGhyZWYgPSB3aW5kb3cubG9jYXRpb24uaHJlZjtcbiAgICBsZXQgS1FMID0gcXVlcnkuZ2V0KCd2YWx1ZXNGcm9tS1FMJyk7XG4gICAgbGV0IHVybCA9IG5ldyBVUkwoaHJlZik7XG5cbiAgICBpZiAoS1FMID09PSBudWxsKSByZXR1cm4gdXJsLmhyZWY7XG5cbiAgICBsZXQgaW5jbHVkZXNBTEwgPSBLUUwuaW5jbHVkZXMoJ0FMTCcpO1xuICAgIGxldCB0aW1lRmlsdGVyUHJlc2VudCA9IEtRTC5tYXRjaCgnKD89VGltZUZpbHRlckl0ZW0pKC4qPykoPzooXFxcXCkpKScpO1xuXG4gICAgaWYgKHRpbWVGaWx0ZXJQcmVzZW50KSB7XG4gICAgICBsZXQgZmluZFRpbWVGaWx0ZXIgPSB0aW1lRmlsdGVyUHJlc2VudDtcbiAgICAgIGlmIChmaW5kVGltZUZpbHRlciAhPT0gbnVsbCkge1xuICAgICAgICBLUUwgPSBLUUwucmVwbGFjZShmaW5kVGltZUZpbHRlclswXSwgJyAnKTtcbiAgICAgIH1cblxuICAgICAgS1FMID0gam9pbktRTChLUUwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBLUUwgPSBpbmNsdWRlc0FMTCA/IGN1dEtRTChLUUwpIDogam9pbktRTChLUUwpO1xuICAgIH1cblxuICAgIHVybC5zZWFyY2hQYXJhbXMuc2V0KCd2YWx1ZXNGcm9tS1FMJywgS1FMISk7XG4gICAgcmV0dXJuIHVybC5ocmVmO1xuICB9O1xuXG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnlVUkwoKTtcbiAgLy9lc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY29uc3QgY29weVVybCA9ICgpID0+IHtcbiAgICBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChidWlsZEtRTFdpdGhUaW1lUmFuZ2UoKSkudGhlbihcbiAgICAgICgpID0+IHtcbiAgICAgICAgdG9hc3Quc3VjY2VzcyhpMThuLnQoJ2NvcHkuc3VjY2VzcycpLCB7XG4gICAgICAgICAgcG9zaXRpb246ICd0b3AtY2VudGVyJyxcbiAgICAgICAgICBhdXRvQ2xvc2U6IDE1MDAsXG4gICAgICAgICAgaGlkZVByb2dyZXNzQmFyOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRvYXN0LnN1Y2Nlc3MoaTE4bi50KCdjb3B5LmZhaWxlZCcpLCB7XG4gICAgICAgICAgcG9zaXRpb246ICd0b3AtY2VudGVyJyxcbiAgICAgICAgICBhdXRvQ2xvc2U6IDE1MDAsXG4gICAgICAgICAgaGlkZVByb2dyZXNzQmFyOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCB7IGZpcnN0c2VlbiwgbGFzdHNlZW4sIHRvdGFsIH0gPSBwYXJzZUV2ZW50RGF0YShldmVudCk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17J2V2ZW50LWRldGFpbHMgZXZlbnQtaW5mb19fY2FyZCd9PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0b3BcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aXRsZVwiPiB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRfZGV0YWlscycpfTwvZGl2PlxuICAgICAgICA8cFxuICAgICAgICAgIGNsYXNzTmFtZT1cImNvcHktYnV0dG9uXCJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICBjb3B5VXJsKCk7XG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFDb3B5fSAvPlxuICAgICAgICA8L3A+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGVudFwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2V2ZW50LWluZm9fX2RldGFpbCBldmVudC1pbmZvX19ldmVudF9zZXZlcml0eSd9PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94LXRpdGxlXCI+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LnNldmVyaXR5Jyl9OjwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnc2V2ZXJpdGllcyd9PlxuICAgICAgICAgICAgPHBcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgc2V2ZXJpdGllc19fc2V2ZXJpdHkgc2V2ZXJpdGllc19fc2V2ZXJpdHktLTAgc2V2ZXJpdGllc19fc2V2ZXJpdHktLTAke1xuICAgICAgICAgICAgICAgIGV2ZW50LnNldmVyaXR5ID09PSAnMCcgPyAnLS1hY3RpdmUnIDogJydcbiAgICAgICAgICAgICAgfWB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpMThuLnQoYGV2ZW50c19vdmVydmlldy5zZXZlcml0aWVzLjBgKX1cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17YHNldmVyaXRpZXNfX3NldmVyaXR5IHNldmVyaXRpZXNfX3NldmVyaXR5LS0xIHNldmVyaXRpZXNfX3NldmVyaXR5LS0xJHtcbiAgICAgICAgICAgICAgICBldmVudC5zZXZlcml0eSA9PT0gJzEnID8gJy0tYWN0aXZlJyA6ICcnXG4gICAgICAgICAgICAgIH1gfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KGBldmVudHNfb3ZlcnZpZXcuc2V2ZXJpdGllcy4xYCl9XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8cFxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2BzZXZlcml0aWVzX19zZXZlcml0eSBzZXZlcml0aWVzX19zZXZlcml0eS0tMiBzZXZlcml0aWVzX19zZXZlcml0eS0tMiR7XG4gICAgICAgICAgICAgICAgZXZlbnQuc2V2ZXJpdHkgPT09ICcyJyA/ICctLWFjdGl2ZScgOiAnJ1xuICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2kxOG4udChgZXZlbnRzX292ZXJ2aWV3LnNldmVyaXRpZXMuMmApfVxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17J2V2ZW50LWluZm9fX2RldGFpbCBldmVudC1pbmZvX19kZXRhaWxfX2Vhcmx5LXdhcm5pbmdzJ31cbiAgICAgICAgPlxuICAgICAgICAgIDxFYXJseVdhcm5pbmdzIGV2ZW50PXtldmVudH0gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZXZlbnQtaW5mb19fZGV0YWlsIGV2ZW50LWluZm9fX2RldGFpbF9fc2Vlbid9PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94LXRpdGxlXCI+XG4gICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlyc3Rfc2VlbicpfTp7JyAnfVxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxwPntmaXJzdHNlZW4ucG9pbnRfbmFtZX08L3A+XG4gICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgPFRpbWVGb3JtYXRcbiAgICAgICAgICAgICAgICB0aW1lc3RhbXA9e2ZpcnN0c2Vlbi5zdGFydF90aW1lfVxuICAgICAgICAgICAgICAgIHRpbWVfem9uZT17Zmlyc3RzZWVuLnRpbWVfem9uZX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZXZlbnQtaW5mb19fZGV0YWlsIGV2ZW50LWluZm9fX2RldGFpbF9fc2Vlbid9PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94LXRpdGxlXCI+XG4gICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcubGFzdF9zZWVuJyl9OlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxwPntsYXN0c2Vlbi5wb2ludF9uYW1lfTwvcD5cbiAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICA8VGltZUZvcm1hdFxuICAgICAgICAgICAgICAgIHRpbWVzdGFtcD17bGFzdHNlZW4ubGFzdF9zZWVuX3RpbWV9XG4gICAgICAgICAgICAgICAgdGltZV96b25lPXtsYXN0c2Vlbi50aW1lX3pvbmV9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2V2ZW50LWluZm9fX2RldGFpbCBldmVudC1pbmZvX19kZXRhaWxfX3NlZW4nfT5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveC10aXRsZVwiPlxuICAgICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LnRvdGFsX3RpbWUnKX06XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRvdGFsLXRpbWVcIj57dG90YWx9PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB7ZXZlbnQ/LnNhbXBsaW5ncz8ubGVuZ3RoID4gMCAmJiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydldmVudC1pbmZvX19kZXRhaWwnfT5cbiAgICAgICAgICAgIDxTYW1wbGluZ3MgZXZlbnQ9e2V2ZW50fSBwb2ludHM9e3BvaW50c30gLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgRXZlbnREZXRhaWxzO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQ0EsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBR0EsSUFBQUMsS0FBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsV0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsY0FBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksVUFBQSxHQUFBTCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sWUFBQSxHQUFBUCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU8sY0FBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsaUJBQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLGtCQUFBLEdBQUFULE9BQUE7QUFaQTs7QUFtQkEsSUFBTVUsWUFBOEIsR0FBRyxTQUFqQ0EsWUFBOEJBLENBQUlDLEtBQUssRUFBSztFQUFBLElBQUFDLGdCQUFBO0VBQ2hELElBQVFDLEtBQUssR0FBYUYsS0FBSyxDQUF2QkUsS0FBSztJQUFFQyxNQUFNLEdBQUtILEtBQUssQ0FBaEJHLE1BQU07RUFFckIsSUFBTUMsY0FBYyxHQUFHLFNBQWpCQSxjQUFjQSxDQUFJQyxTQUFTLEVBQUs7SUFDcEMsSUFBSUMsSUFBSSxHQUFHLElBQUlDLElBQUksQ0FBQ0YsU0FBUyxDQUFDLENBQUNHLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLElBQUlDLEtBQUssR0FBRyxRQUFRO0lBQ3BCLElBQUlDLFlBQVksR0FBRyxJQUFJSCxJQUFJLENBQUNELElBQUksR0FBR0csS0FBSyxDQUFDO0lBQ3pDLElB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