@kando-env/kando-ui 1.2.354-alpha.9 → 1.2.355-alpha.0

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 (672) hide show
  1. package/lib/Router.js +76 -37
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +37 -26
  3. package/lib/Widgets/EventsRow/EventsRow.js +41 -28
  4. package/lib/Widgets/Map/GraphUtils.js +6 -4
  5. package/lib/Widgets/Map/Map.js +89 -69
  6. package/lib/Widgets/Map/MapUtils.js +42 -42
  7. package/lib/Widgets/Map/areas/AreaPolygon.js +79 -54
  8. package/lib/Widgets/Map/areas/AreaPolygons.js +25 -23
  9. package/lib/Widgets/Map/areas/AreaUtils.js +47 -48
  10. package/lib/Widgets/Map/areas/Patterns.js +5 -5
  11. package/lib/Widgets/Map/edges/Edge.js +34 -28
  12. package/lib/Widgets/Map/edges/Edges.js +26 -20
  13. package/lib/Widgets/Map/edges/arrows/Arrows.js +45 -24
  14. package/lib/Widgets/Map/events/Event.js +18 -17
  15. package/lib/Widgets/Map/events/EventIndicator.js +55 -58
  16. package/lib/Widgets/Map/events/EventPath.js +25 -25
  17. package/lib/Widgets/Map/events/EventUtils.js +81 -60
  18. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +19 -17
  19. package/lib/Widgets/Map/events/PointOfEvent.js +38 -32
  20. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +37 -29
  21. package/lib/Widgets/Map/events/Snail.js +21 -19
  22. package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +90 -94
  23. package/lib/Widgets/Map/map/FloatingGraph.js +21 -24
  24. package/lib/Widgets/Map/map/GraphDateButton.js +20 -27
  25. package/lib/Widgets/Map/matchGraph/MatchGraph.js +14 -14
  26. package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +16 -17
  27. package/lib/Widgets/Map/points/PointIcon.js +18 -24
  28. package/lib/Widgets/Map/points/PointMarker.js +89 -71
  29. package/lib/Widgets/Map/points/PointMarkers.js +67 -45
  30. package/lib/Widgets/Map/points/PointUtils.js +88 -146
  31. package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +48 -30
  32. package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +11 -11
  33. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +13 -11
  34. package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +6 -4
  35. package/lib/Widgets/MostPolluting/Areas/Areas.js +61 -31
  36. package/lib/Widgets/MostPolluting/Areas/areas.mock.js +4 -3
  37. package/lib/Widgets/MostPolluting/Areas/areasResponse.interface.js +1 -1
  38. package/lib/Widgets/MostPolluting/Areas/styles.js +6 -4
  39. package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +9 -12
  40. package/lib/Widgets/MostPolluting/Factories/Factories.js +71 -39
  41. package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +19 -16
  42. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +9 -9
  43. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +11 -13
  44. package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +6 -4
  45. package/lib/Widgets/MostPolluting/Factories/factories.mock.js +3 -2
  46. package/lib/Widgets/MostPolluting/Factories/factoriesResponse.interface.js +1 -1
  47. package/lib/Widgets/MostPolluting/Factories/styles.js +6 -4
  48. package/lib/Widgets/MostPolluting/MostPolluting.js +28 -21
  49. package/lib/Widgets/MostPolluting/MostPolluting.stories.js +32 -20
  50. package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +5 -7
  51. package/lib/Widgets/MostPolluting/ShowMore/styles.js +6 -7
  52. package/lib/Widgets/MostPolluting/assets/index.js +12 -12
  53. package/lib/Widgets/MostPolluting/components/ChangePercent.js +14 -20
  54. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +31 -36
  55. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +36 -36
  56. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +36 -40
  57. package/lib/Widgets/MostPolluting/components/PotentialImpact.js +28 -29
  58. package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +52 -56
  59. package/lib/Widgets/MostPolluting/models.js +1 -1
  60. package/lib/Widgets/MostPolluting/styles.js +6 -4
  61. package/lib/Widgets/PotentialImpactSummary/Back/Back.js +6 -8
  62. package/lib/Widgets/PotentialImpactSummary/Icon.js +7 -10
  63. package/lib/Widgets/PotentialImpactSummary/index.js +28 -20
  64. package/lib/Widgets/PotentialImpactSummary/index.test.js +54 -48
  65. package/lib/Widgets/PotentialImpactSummary/styles.js +13 -8
  66. package/lib/Widgets/PotentialImpactSummary/useCasesResponse.interface.js +1 -1
  67. package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +8 -10
  68. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +18 -23
  69. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +33 -36
  70. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +25 -27
  71. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +38 -35
  72. package/lib/Widgets/QualitySummary/QualitySummary.js +14 -10
  73. package/lib/Widgets/QualitySummary/qualitySummary.mock.js +7 -4
  74. package/lib/Widgets/QualitySummary/qualitySummaryResponse.interface.js +1 -1
  75. package/lib/Widgets/QualitySummary/styles.js +21 -24
  76. package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +14 -12
  77. package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +27 -27
  78. package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +26 -30
  79. package/lib/Widgets/UtilityInformation/UtilityInformation.js +43 -25
  80. package/lib/Widgets/UtilityInformation/UtilityInformationResponse.interface.js +1 -1
  81. package/lib/Widgets/UtilityInformation/styles.js +31 -30
  82. package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +5 -3
  83. package/lib/assets/icons/TopNavbar/index.js +7 -7
  84. package/lib/assets/icons/TrendSvg.js +7 -7
  85. package/lib/assets/icons/index.js +16 -16
  86. package/lib/assets/icons/kandoStepper/index.js +6 -6
  87. package/lib/assets/icons/siteTypes/index.js +2 -2
  88. package/lib/components/ApplyButton/ApplyButton.js +12 -11
  89. package/lib/components/ApplyButton/index.js +4 -3
  90. package/lib/components/Backdrop/Backdrop.js +5 -7
  91. package/lib/components/ContentLoader/ContentLoader.js +10 -12
  92. package/lib/components/ContentLoader/index.js +2 -2
  93. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +15 -15
  94. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +9 -5
  95. package/lib/components/CustomInputs/DoubleTabs/styles.js +16 -21
  96. package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +21 -13
  97. package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +6 -7
  98. package/lib/components/CustomInputs/Search/Search.js +66 -43
  99. package/lib/components/CustomInputs/Search/index.js +4 -3
  100. package/lib/components/CustomInputs/Select/Select.js +59 -45
  101. package/lib/components/CustomInputs/Select/Select.stories.js +10 -6
  102. package/lib/components/DamageType/DamageType.js +61 -36
  103. package/lib/components/DamageType/index.js +4 -3
  104. package/lib/components/DataLoaderError/DataLoaderError.js +7 -9
  105. package/lib/components/DischargeHeatmap/DischargeHeatmap.js +13 -11
  106. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +73 -72
  107. package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +40 -28
  108. package/lib/components/DischargeHeatmap/HighchartsOptions.js +16 -12
  109. package/lib/components/DischargeHeatmap/index.js +4 -3
  110. package/lib/components/DischargeHeatmap/mocks/handlers.js +4 -3
  111. package/lib/components/DischargeHeatmap/popupText.js +13 -12
  112. package/lib/components/DischargeHeatmap/titles.js +6 -4
  113. package/lib/components/DischargeHeatmap/types.js +1 -1
  114. package/lib/components/ErrorBoundary.js +42 -27
  115. package/lib/components/Events/Events.js +61 -42
  116. package/lib/components/Events/index.js +4 -3
  117. package/lib/components/Graph/Graph.js +94 -73
  118. package/lib/components/Graph/index.js +4 -3
  119. package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +24 -19
  120. package/lib/components/Header/Breadcrumbs/index.js +4 -3
  121. package/lib/components/Header/DoubleTabs/DoubleTabs.js +35 -25
  122. package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +9 -5
  123. package/lib/components/Header/DoubleTabs/styles.js +8 -5
  124. package/lib/components/Header/Header.js +3 -3
  125. package/lib/components/Header/Header.stories.js +9 -5
  126. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +198 -83
  127. package/lib/components/Header/InfoBar/InfoBar.js +105 -75
  128. package/lib/components/Header/InfoBar/Search/Control.js +12 -11
  129. package/lib/components/Header/InfoBar/Search/GroupLabel.js +8 -9
  130. package/lib/components/Header/InfoBar/Search/Search.js +22 -15
  131. package/lib/components/Header/InfoBar/Search/SearchContainer.js +32 -18
  132. package/lib/components/Header/InfoBar/Search/index.js +4 -3
  133. package/lib/components/Header/InfoBar/Search/searchStyle.js +51 -42
  134. package/lib/components/Header/InfoBar/TimeFilter.js +17 -13
  135. package/lib/components/Header/InfoBar/types.js +1 -1
  136. package/lib/components/Header/KandoNavbar/KandoNavbar.js +95 -68
  137. package/lib/components/Header/KandoNavbar/index.js +4 -3
  138. package/lib/components/Header/Slideshow/Slideshow.js +92 -68
  139. package/lib/components/Header/Slideshow/index.js +4 -3
  140. package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +5 -7
  141. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +24 -22
  142. package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +22 -22
  143. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +44 -38
  144. package/lib/components/Header/Toolbar/Toolbar.js +76 -56
  145. package/lib/components/InfoBar/InfoBar.js +24 -10
  146. package/lib/components/InfoBar/InfoBar.stories.js +9 -5
  147. package/lib/components/KandoModal/KandoModal.js +44 -28
  148. package/lib/components/KandoModal/index.js +4 -3
  149. package/lib/components/Link.js +8 -9
  150. package/lib/components/Links/CustomRedirect/CustomRedirect.js +9 -10
  151. package/lib/components/Links/StyledLink/StyledLink.js +14 -13
  152. package/lib/components/Links/StyledNavLink/StyledNavLink.js +12 -12
  153. package/lib/components/LiveEvents/CarouselSlide.js +10 -11
  154. package/lib/components/LiveEvents/LiveEvents.js +6 -7
  155. package/lib/components/LiveEvents/index.js +4 -3
  156. package/lib/components/LoaderByPercent/LoaderByPercent.js +31 -38
  157. package/lib/components/Map/Map.js +26 -21
  158. package/lib/components/Map/index.js +4 -3
  159. package/lib/components/Modal/Modal.js +10 -10
  160. package/lib/components/NarrowHeader.js +32 -18
  161. package/lib/components/PointInfo/PointInfo.js +20 -21
  162. package/lib/components/PointInfo/index.js +4 -3
  163. package/lib/components/PopupModal/PopupModal.js +17 -13
  164. package/lib/components/PopupModal/PopupModal.stories.js +24 -17
  165. package/lib/components/Sector/Sector.js +9 -10
  166. package/lib/components/Sector/Sector.test.js +25 -24
  167. package/lib/components/Sector/index.js +4 -3
  168. package/lib/components/Sector/sectorIcons.js +5 -4
  169. package/lib/components/SevereEvent/Eta/Eta.js +55 -50
  170. package/lib/components/SevereEvent/Eta/styles.js +8 -11
  171. package/lib/components/SevereEvent/SevereEvent.js +38 -30
  172. package/lib/components/Spinner/Spinner.js +9 -9
  173. package/lib/components/Spinner/Spinner.stories.js +11 -6
  174. package/lib/components/Spinner/index.js +4 -3
  175. package/lib/components/Spinner/styles.js +18 -23
  176. package/lib/components/Tabs/Tabs.js +31 -18
  177. package/lib/components/Tabs/Tabs.stories.js +10 -6
  178. package/lib/components/Tabs/assets/index.js +6 -6
  179. package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +18 -13
  180. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +54 -41
  181. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +34 -20
  182. package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +4 -3
  183. package/lib/components/TimeRangeSelector/TimeRangeHelper.js +26 -21
  184. package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +16 -15
  185. package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +4 -3
  186. package/lib/components/TimeRangeSelector/TimeRangeList.js +27 -24
  187. package/lib/components/TimeRangeSelector/TimeRangeOptions.js +28 -18
  188. package/lib/components/TimeRangeSelector/TimeRangeSelector.js +35 -32
  189. package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +10 -6
  190. package/lib/components/TimeRangeSelector/constants.js +5 -3
  191. package/lib/components/TimeRangeSelector/index.js +4 -3
  192. package/lib/components/Toggle/Toggle.js +20 -13
  193. package/lib/components/Toggle/index.js +4 -3
  194. package/lib/components/TrendGraph/TrendGraph.js +43 -25
  195. package/lib/components/TrendGraph/index.js +4 -3
  196. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +36 -29
  197. package/lib/components/TrendGraphNVL/index.js +4 -3
  198. package/lib/development-environment/index.js +13 -9
  199. package/lib/development-environment/mock/browser.js +5 -2
  200. package/lib/development-environment/mock/get.js +10 -8
  201. package/lib/development-environment/mock/handlers.js +3 -2
  202. package/lib/development-environment/mock/mockBus.js +5 -4
  203. package/lib/development-environment/mock/mockObjects/area-trends-graph.js +3 -2
  204. package/lib/development-environment/mock/mockObjects/areaInformation.js +3 -2
  205. package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +3 -2
  206. package/lib/development-environment/mock/mockObjects/areaSitesData.js +3 -2
  207. package/lib/development-environment/mock/mockObjects/areasJson.js +3 -2
  208. package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +3 -2
  209. package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +3 -2
  210. package/lib/development-environment/mock/mockObjects/data-menuData.js +3 -2
  211. package/lib/development-environment/mock/mockObjects/data-search.js +3 -2
  212. package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +3 -2
  213. package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +3 -2
  214. package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +3 -2
  215. package/lib/development-environment/mock/mockObjects/eventsJson.js +3 -2
  216. package/lib/development-environment/mock/mockObjects/metascore.js +3 -2
  217. package/lib/development-environment/mock/mockObjects/permissionsJson.js +3 -2
  218. package/lib/development-environment/mock/mockObjects/pointsJson.js +3 -2
  219. package/lib/development-environment/mock/mockObjects/site-info.js +3 -2
  220. package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +3 -2
  221. package/lib/development-environment/togly/ToglyDashboard.js +23 -13
  222. package/lib/development-environment/togly/ToglyItem.js +31 -24
  223. package/lib/development-environment/togly/flags.js +1 -1
  224. package/lib/development-environment/togly/init.js +4 -4
  225. package/lib/development-environment/togly/macro.js +10 -14
  226. package/lib/development-environment/togly/useDoubleKeyDown.js +9 -7
  227. package/lib/development-environment/togly/useLocalStorage.js +18 -13
  228. package/lib/hooks/useApi.js +56 -20
  229. package/lib/hooks/useApiWithDashboardQuery.js +49 -30
  230. package/lib/hooks/useClickOutside.js +5 -4
  231. package/lib/hooks/useInitializeHeaders.js +6 -6
  232. package/lib/hooks/useKandoFetch.js +32 -18
  233. package/lib/hooks/useMap.js +37 -25
  234. package/lib/hooks/useNavContext.js +26 -22
  235. package/lib/hooks/useQueryURL.js +3 -2
  236. package/lib/hooks/useRemoveExistingLayers.js +8 -7
  237. package/lib/hooks/useUpdateEventBodyTail.js +19 -14
  238. package/lib/hooks/useUserTimeZone.js +31 -34
  239. package/lib/hooks/useUserTimeZone.test.js +23 -19
  240. package/lib/hooks/useWindowSize.js +14 -7
  241. package/lib/index.js +13 -11
  242. package/lib/macros/getVersion.js +3 -3
  243. package/lib/models/IAction.js +1 -1
  244. package/lib/models/IAppState.js +1 -1
  245. package/lib/pages/AreaPage/AreaPage.js +68 -34
  246. package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +16 -14
  247. package/lib/pages/AreaPage/Dashboard/Dashboard.js +30 -28
  248. package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +26 -17
  249. package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +5 -5
  250. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +9 -9
  251. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +12 -12
  252. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +6 -4
  253. package/lib/pages/AreaPage/Dashboard/Sites/SitesResponse.interface.js +1 -1
  254. package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +3 -2
  255. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +8 -5
  256. package/lib/pages/AssessmentPage/AssessmentPage.js +49 -41
  257. package/lib/pages/CannyWidget/Feedback.js +16 -14
  258. package/lib/pages/CovidPage/CovidPage.js +16 -9
  259. package/lib/pages/CovidPage/components/Body.js +30 -26
  260. package/lib/pages/CovidPage/components/Map.js +42 -30
  261. package/lib/pages/CovidPage/components/Sidebar.js +18 -17
  262. package/lib/pages/CovidPage/components/Summary.js +30 -21
  263. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +36 -29
  264. package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +4 -3
  265. package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +76 -52
  266. package/lib/pages/CovidPage/components/TrendPopupContent/index.js +4 -3
  267. package/lib/pages/CovidPage/components/areas/Area.js +41 -29
  268. package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +49 -56
  269. package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +36 -32
  270. package/lib/pages/CovidPage/components/areas/AreasList.js +47 -34
  271. package/lib/pages/CovidPage/components/areas/Sort.js +17 -12
  272. package/lib/pages/CovidPage/components/nvlStatusHelper.js +11 -11
  273. package/lib/pages/DashboardMap/AreaCard.js +29 -29
  274. package/lib/pages/DashboardMap/AssessmentIcon.js +8 -9
  275. package/lib/pages/DashboardMap/Capacity.js +85 -34
  276. package/lib/pages/DashboardMap/FactoryCard.js +28 -33
  277. package/lib/pages/DashboardMap/HighchartsOptions.js +5 -6
  278. package/lib/pages/DashboardMap/List.js +98 -69
  279. package/lib/pages/DashboardMap/ListContext.js +19 -14
  280. package/lib/pages/DashboardMap/Loader.js +3 -3
  281. package/lib/pages/DashboardMap/SeverityBadge.js +19 -11
  282. package/lib/pages/DashboardMap/WWTPMap.js +64 -50
  283. package/lib/pages/DashboardMap/WaterDischarge.js +9 -9
  284. package/lib/pages/DashboardMap/Widget.js +72 -54
  285. package/lib/pages/DashboardMap/index.js +4 -3
  286. package/lib/pages/DashboardMap/utils.js +54 -44
  287. package/lib/pages/EventsPage/Body/Body.js +18 -21
  288. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +20 -17
  289. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +36 -27
  290. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +9 -10
  291. package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +10 -13
  292. package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +31 -22
  293. package/lib/pages/EventsPage/DragAndDropArea/index.js +4 -3
  294. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +64 -52
  295. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +31 -19
  296. package/lib/pages/EventsPage/EventsPage.js +13 -8
  297. package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +42 -28
  298. package/lib/pages/EventsPage/events/MoreInfo.js +19 -18
  299. package/lib/pages/EventsPage/events/Sidebar.js +19 -22
  300. package/lib/pages/EventsPage/events/event_info/Contaminants/Contaminants.js +10 -9
  301. package/lib/pages/EventsPage/events/event_info/Contaminants/ContaminantsList.js +24 -19
  302. package/lib/pages/EventsPage/events/event_info/Contaminants/index.js +4 -3
  303. package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +38 -31
  304. package/lib/pages/EventsPage/events/event_info/EventDetails.js +40 -42
  305. package/lib/pages/EventsPage/events/event_info/EventInfo.js +45 -44
  306. package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +5 -5
  307. package/lib/pages/EventsPage/events/event_info/EventSection.js +22 -19
  308. package/lib/pages/EventsPage/events/event_info/EventSection.test.js +39 -44
  309. package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +51 -40
  310. package/lib/pages/EventsPage/events/event_info/Header/Header.js +7 -8
  311. package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +36 -31
  312. package/lib/pages/EventsPage/events/event_info/Header/index.js +4 -3
  313. package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +9 -8
  314. package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +39 -30
  315. package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +9 -6
  316. package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +24 -23
  317. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResult.js +22 -13
  318. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResultButton.js +6 -7
  319. package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/index.js +4 -3
  320. package/lib/pages/EventsPage/events/event_info/SamplingList/SamplingDetails.js +12 -13
  321. package/lib/pages/EventsPage/events/event_info/SamplingList/Samplings.js +29 -23
  322. package/lib/pages/EventsPage/events/event_info/SamplingList/index.js +4 -3
  323. package/lib/pages/EventsPage/events/event_info/SeverityScore/ScoreExplanation.js +11 -14
  324. package/lib/pages/EventsPage/events/event_info/SeverityScore/SeverityScore.js +10 -9
  325. package/lib/pages/EventsPage/events/event_info/SeverityScore/index.js +4 -3
  326. package/lib/pages/EventsPage/events/event_info/SourceDetails/Confidence.js +5 -7
  327. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.js +5 -4
  328. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.test.js +11 -13
  329. package/lib/pages/EventsPage/events/event_info/SourceDetails/IconAndTitles.js +9 -11
  330. package/lib/pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton.js +14 -11
  331. package/lib/pages/EventsPage/events/event_info/SourceDetails/OtherSources.js +6 -7
  332. package/lib/pages/EventsPage/events/event_info/SourceDetails/PotentialSources.js +8 -9
  333. package/lib/pages/EventsPage/events/event_info/SourceDetails/SingleSource.js +8 -9
  334. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceCardBody.js +7 -8
  335. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.js +12 -13
  336. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.test.js +19 -18
  337. package/lib/pages/EventsPage/events/event_info/SourceDetails/WaterDischarge.js +7 -7
  338. package/lib/pages/EventsPage/events/event_info/Timelines/DischargeBox.js +8 -9
  339. package/lib/pages/EventsPage/events/event_info/Timelines/EarlyWarning.js +18 -19
  340. package/lib/pages/EventsPage/events/event_info/Timelines/LiveStatusBadge.js +7 -6
  341. package/lib/pages/EventsPage/events/event_info/Timelines/SeenBox.js +11 -12
  342. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.js +14 -18
  343. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.test.js +11 -12
  344. package/lib/pages/EventsPage/events/event_info/Timelines/Titles.js +5 -4
  345. package/lib/pages/EventsPage/events/event_info/Timelines/index.js +4 -3
  346. package/lib/pages/EventsPage/events/event_info/Timelines/style.js +6 -4
  347. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +41 -26
  348. package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +39 -30
  349. package/lib/pages/EventsPage/events/event_info/samplingsOld/Sampling.js +12 -13
  350. package/lib/pages/EventsPage/events/event_info/samplingsOld/Samplings.js +20 -17
  351. package/lib/pages/EventsPage/events/event_info/sources/Source.js +33 -29
  352. package/lib/pages/EventsPage/events/event_info/sources/Sources.js +29 -24
  353. package/lib/pages/EventsPage/events/event_info/styles.js +15 -21
  354. package/lib/pages/EventsPage/events/events_list/EventItem.js +22 -19
  355. package/lib/pages/EventsPage/events/events_list/EventUtils.js +11 -11
  356. package/lib/pages/EventsPage/events/events_list/EventsList.js +150 -126
  357. package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +58 -41
  358. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +118 -80
  359. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +81 -62
  360. package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +44 -39
  361. package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +39 -30
  362. package/lib/pages/EventsPage/events/events_list/Sort.js +19 -14
  363. package/lib/pages/ImportFileWizard/FileUploadRespones.js +23 -15
  364. package/lib/pages/ImportFileWizard/ImportButtomButtons.js +8 -9
  365. package/lib/pages/ImportFileWizard/ImportFile.js +25 -21
  366. package/lib/pages/ImportFileWizard/ResponseBody.js +36 -26
  367. package/lib/pages/ImportFileWizard/ValidationForm.js +25 -25
  368. package/lib/pages/ImportFileWizard/ValidationResponse.js +25 -23
  369. package/lib/pages/ImportFileWizard/importFileUtils.js +5 -4
  370. package/lib/pages/ImportFileWizard/index.js +4 -3
  371. package/lib/pages/ImportGisPage/ImportGisContainer.js +27 -22
  372. package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +26 -23
  373. package/lib/pages/ImportGisPage/importGisUtils.js +25 -16
  374. package/lib/pages/ImportGisProcess/index.js +18 -14
  375. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +13 -7
  376. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +20 -18
  377. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +4 -4
  378. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +66 -34
  379. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +12 -8
  380. package/lib/pages/NotificationsPage/Notification/Notification.js +13 -17
  381. package/lib/pages/NotificationsPage/Notifications.interface.js +1 -1
  382. package/lib/pages/NotificationsPage/Notifications.mock.js +3 -2
  383. package/lib/pages/NotificationsPage/Notifications.stories.js +10 -6
  384. package/lib/pages/NotificationsPage/NotificationsPage.js +38 -19
  385. package/lib/pages/NotificationsPage/assets/index.js +10 -10
  386. package/lib/pages/NotificationsPageV2/NotificationsPage.js +97 -71
  387. package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +66 -96
  388. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +144 -131
  389. package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +76 -74
  390. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +88 -91
  391. package/lib/pages/NotificationsPageV2/notificationUtils.js +54 -55
  392. package/lib/pages/OldSitePage/IDashboardData.js +1 -1
  393. package/lib/pages/OldSitePage/OldSitePage.js +133 -57
  394. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +10 -6
  395. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +9 -5
  396. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +7 -9
  397. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +21 -19
  398. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +12 -10
  399. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +19 -12
  400. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +13 -17
  401. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +9 -5
  402. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +17 -19
  403. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +64 -51
  404. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +8 -10
  405. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +54 -29
  406. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +7 -4
  407. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +19 -12
  408. package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +11 -11
  409. package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +12 -10
  410. package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +29 -33
  411. package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +31 -29
  412. package/lib/pages/OldSitePage/SamplingParameters/models.js +1 -1
  413. package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +8 -5
  414. package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +15 -19
  415. package/lib/pages/ProfilePage/Container.js +4 -3
  416. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +45 -28
  417. package/lib/pages/ProfilePage/ProfilePage.js +207 -118
  418. package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +34 -25
  419. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +21 -21
  420. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +35 -32
  421. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +120 -58
  422. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +23 -18
  423. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +13 -14
  424. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +46 -41
  425. package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +29 -27
  426. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +19 -18
  427. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +18 -15
  428. package/lib/pages/SamplingsPage/DesktopActions/index.js +4 -3
  429. package/lib/pages/SamplingsPage/NavigationDropdown.js +34 -46
  430. package/lib/pages/SamplingsPage/NewSamplingAction.js +105 -78
  431. package/lib/pages/SamplingsPage/SamplingMobileModal.js +102 -130
  432. package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +25 -23
  433. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +25 -36
  434. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +64 -39
  435. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +21 -16
  436. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +10 -11
  437. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +195 -110
  438. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +56 -49
  439. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +44 -47
  440. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +46 -49
  441. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +26 -19
  442. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +6 -4
  443. package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +7 -11
  444. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +55 -58
  445. package/lib/pages/SamplingsPage/SamplingsMobileList.js +31 -22
  446. package/lib/pages/SamplingsPage/SamplingsPage.js +35 -27
  447. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +59 -50
  448. package/lib/pages/SamplingsPage/index.js +3 -2
  449. package/lib/pages/SamplingsPage/samplingsPageUtils.js +93 -69
  450. package/lib/pages/SitePage/DischargePattern/DischargePattern.js +6 -7
  451. package/lib/pages/SitePage/PollutionContributor/PollutionContributor.js +16 -16
  452. package/lib/pages/SitePage/PollutionContributor/PollutionContributorContainer.js +16 -12
  453. package/lib/pages/SitePage/PollutionContributor/contributorUtils.js +16 -16
  454. package/lib/pages/SitePage/PollutionContributor/index.js +4 -3
  455. package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +9 -5
  456. package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +15 -15
  457. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +9 -10
  458. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +24 -27
  459. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +18 -15
  460. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +33 -37
  461. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +12 -10
  462. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +25 -15
  463. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +13 -17
  464. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +9 -5
  465. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +17 -19
  466. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +71 -58
  467. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +8 -10
  468. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +27 -15
  469. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +9 -5
  470. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +19 -12
  471. package/lib/pages/SitePage/SamplingParameters/body/Body.js +12 -11
  472. package/lib/pages/SitePage/SamplingParameters/body/BodyContainer.js +40 -30
  473. package/lib/pages/SitePage/SamplingParameters/body/index.js +4 -3
  474. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +12 -11
  475. package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +12 -10
  476. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +60 -61
  477. package/lib/pages/SitePage/SamplingParameters/dataParser.js +41 -32
  478. package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +9 -11
  479. package/lib/pages/SitePage/SamplingParameters/models.js +1 -1
  480. package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +8 -5
  481. package/lib/pages/SitePage/SamplingParameters/styles/styles.js +15 -19
  482. package/lib/pages/SitePage/SiteInformation/EmptyState.js +10 -13
  483. package/lib/pages/SitePage/SiteInformation/SiteInformation.js +32 -31
  484. package/lib/pages/SitePage/SitePage.js +80 -40
  485. package/lib/pages/UploadLabResult/index.js +16 -15
  486. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +37 -27
  487. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +13 -8
  488. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +15 -11
  489. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +9 -5
  490. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +51 -48
  491. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +8 -11
  492. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +7 -6
  493. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +9 -6
  494. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +13 -14
  495. package/lib/pages/UtilityDashboardPage/MostSevereEvents/models.js +1 -1
  496. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +13 -16
  497. package/lib/pages/UtilityDashboardPage/TopBar/constants.js +9 -8
  498. package/lib/pages/UtilityDashboardPage/TopBar/styles.js +4 -3
  499. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +27 -17
  500. package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +40 -28
  501. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +16 -14
  502. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +14 -7
  503. package/lib/pages/UtilityDashboardPage/VirtualAreaDashboardPage.js +32 -27
  504. package/lib/pages/WbeDashboard/ExpandableComponent.js +9 -9
  505. package/lib/pages/WbeDashboard/GraphWrapper.js +37 -30
  506. package/lib/pages/WbeDashboard/IndividualTinyGraph.js +19 -16
  507. package/lib/pages/WbeDashboard/SearchInput.js +21 -15
  508. package/lib/pages/WbeDashboard/SummaryGraph.js +77 -50
  509. package/lib/pages/WbeDashboard/SummaryGraphModal.js +18 -20
  510. package/lib/pages/WbeDashboard/Tabs.js +12 -12
  511. package/lib/pages/WbeDashboard/WbeDashboardPage.js +216 -150
  512. package/lib/pages/WbeDashboard/WbeSummaryBar.js +49 -40
  513. package/lib/pages/WwtpPage/DashboardCard.js +26 -28
  514. package/lib/pages/WwtpPage/DischargePatternCard.js +25 -14
  515. package/lib/pages/WwtpPage/InletsCard/InletsBar.js +25 -28
  516. package/lib/pages/WwtpPage/InletsCard/InletsCard.js +22 -22
  517. package/lib/pages/WwtpPage/InletsCard/index.js +4 -3
  518. package/lib/pages/WwtpPage/Map.js +6 -7
  519. package/lib/pages/WwtpPage/OrganicCard.js +5 -4
  520. package/lib/pages/WwtpPage/PotentialSaving/ImpactCard.js +5 -4
  521. package/lib/pages/WwtpPage/PotentialSaving/PotentialItem.js +9 -10
  522. package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +11 -11
  523. package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +17 -20
  524. package/lib/pages/WwtpPage/PotentialSaving/index.js +4 -3
  525. package/lib/pages/WwtpPage/PotentialSaving/types.js +1 -1
  526. package/lib/pages/WwtpPage/PredictionCard.js +5 -4
  527. package/lib/pages/WwtpPage/TrendCard.js +22 -20
  528. package/lib/pages/WwtpPage/UpgradeBox.js +6 -5
  529. package/lib/pages/WwtpPage/WwtpPage.js +11 -10
  530. package/lib/pages/WwtpPage/WwtpPageContainer.js +19 -23
  531. package/lib/pages/WwtpPage/index.js +4 -3
  532. package/lib/providers/Slideshow/SlideshowContext.js +10 -11
  533. package/lib/providers/Slideshow/SlideshowProvider.js +40 -22
  534. package/lib/providers/Slideshow/SlideshowRunner.js +21 -18
  535. package/lib/providers/UrlHistory/UrlHistoryContext.js +6 -7
  536. package/lib/providers/UrlHistory/UrlHistoryProvider.js +13 -12
  537. package/lib/providers/UrlHistory/index.js +4 -4
  538. package/lib/providers/UrlHistory/useLastVisited.js +7 -6
  539. package/lib/react-app-env.d.js +1 -1
  540. package/lib/store/ImportGis/action.js +1 -1
  541. package/lib/store/ImportGis/actionTypes.js +5 -4
  542. package/lib/store/ImportGis/actionsCreator.js +5 -7
  543. package/lib/store/ImportGis/models/gisImports.js +1 -1
  544. package/lib/store/ImportGis/reducer.js +30 -41
  545. package/lib/store/WBE/actionTypes.js +3 -2
  546. package/lib/store/WBE/actions.js +1 -1
  547. package/lib/store/WBE/models/IAreaWBE.js +1 -1
  548. package/lib/store/WBE/models/IWBE.js +1 -1
  549. package/lib/store/WBE/models/IWBEState.js +1 -1
  550. package/lib/store/WBE/reducer.js +10 -14
  551. package/lib/store/WWTPDashboard/WWTPDashboardSlice.js +15 -24
  552. package/lib/store/WWTPDashboard/types.js +1 -1
  553. package/lib/store/areas/actionTypes.js +7 -4
  554. package/lib/store/areas/actions.js +13 -7
  555. package/lib/store/areas/models/IArea.js +1 -1
  556. package/lib/store/areas/models/IAreasState.js +1 -1
  557. package/lib/store/areas/reducer.js +6 -8
  558. package/lib/store/context/actionTypes.js +5 -3
  559. package/lib/store/context/actions.js +3 -3
  560. package/lib/store/context/contextMiddlewares.js +18 -15
  561. package/lib/store/context/models/INavContext.js +1 -1
  562. package/lib/store/context/models/INavContextState.js +1 -1
  563. package/lib/store/context/reducer.js +10 -14
  564. package/lib/store/dashboard/dashboardSlice.js +11 -18
  565. package/lib/store/dashboard/periodType.js +1 -1
  566. package/lib/store/edges/actionTypes.js +9 -5
  567. package/lib/store/edges/actions.js +8 -4
  568. package/lib/store/edges/models/IEdge.js +1 -1
  569. package/lib/store/edges/models/IEdgesState.js +1 -1
  570. package/lib/store/edges/reducer.js +17 -13
  571. package/lib/store/events/actionTypes.js +33 -17
  572. package/lib/store/events/actions.js +7 -3
  573. package/lib/store/events/models/IEvent.js +1 -1
  574. package/lib/store/events/models/IEventsState.js +1 -1
  575. package/lib/store/events/models/ISource.js +1 -1
  576. package/lib/store/events/reducer.js +49 -42
  577. package/lib/store/filters/IFilter.js +1 -1
  578. package/lib/store/filters/IFilterItem.js +1 -1
  579. package/lib/store/global/actionTypes.js +21 -11
  580. package/lib/store/global/actions.js +6 -8
  581. package/lib/store/global/models/IGlobalState.js +1 -1
  582. package/lib/store/global/reducer.js +10 -11
  583. package/lib/store/permissions/permissionsSlice.js +9 -12
  584. package/lib/store/points/actionTypes.js +5 -3
  585. package/lib/store/points/actions.js +7 -3
  586. package/lib/store/points/models/IGroup.js +1 -1
  587. package/lib/store/points/models/IPoint.js +1 -1
  588. package/lib/store/points/models/IPointsState.js +1 -1
  589. package/lib/store/points/reducer.js +5 -7
  590. package/lib/store/rootActionTypes.js +3 -2
  591. package/lib/store/rootActions.js +1 -1
  592. package/lib/store/rootReducer.js +13 -17
  593. package/lib/store/rootStore.js +6 -6
  594. package/lib/store/samplings/action.js +1 -1
  595. package/lib/store/samplings/actionTypes.js +5 -4
  596. package/lib/store/samplings/actionsCreator.js +1 -1
  597. package/lib/store/samplings/models/Samplings.js +1 -1
  598. package/lib/store/samplings/reducer.js +14 -16
  599. package/lib/styles/StylesLayout.js +6 -7
  600. package/lib/styles/theme/theme.js +30 -26
  601. package/lib/test/mocks/browser.js +5 -2
  602. package/lib/test/test-utils.js +16 -18
  603. package/lib/ui-kit/Button/Button.js +84 -130
  604. package/lib/ui-kit/Button/Button.test.js +33 -27
  605. package/lib/ui-kit/Button/ButtonUtils.js +1 -1
  606. package/lib/ui-kit/Checkbox/Checkbox.js +24 -32
  607. package/lib/ui-kit/ContentCard/ContentCard.js +21 -17
  608. package/lib/ui-kit/Dashboard/Dashboard.js +25 -26
  609. package/lib/ui-kit/Dashboard/index.js +4 -3
  610. package/lib/ui-kit/DropDown/DropDown.js +25 -24
  611. package/lib/ui-kit/DropDown/DropDown.test.js +13 -13
  612. package/lib/ui-kit/DropDown/DropDownItem.js +25 -26
  613. package/lib/ui-kit/DropDown/DropdownToggle.js +10 -13
  614. package/lib/ui-kit/EmptyState/EmptyState.js +7 -8
  615. package/lib/ui-kit/IconAction/IconAction.js +8 -9
  616. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +66 -49
  617. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +53 -70
  618. package/lib/ui-kit/InletsPie/InletsPie.js +16 -17
  619. package/lib/ui-kit/InletsPie/index.js +4 -3
  620. package/lib/ui-kit/InletsPie/options.js +9 -7
  621. package/lib/ui-kit/KandoList/KandoList.js +12 -13
  622. package/lib/ui-kit/KandoList/kandoListUtils.js +1 -1
  623. package/lib/ui-kit/KandoTable/KandoTable.js +41 -48
  624. package/lib/ui-kit/KandoTable/KandoTable.test.js +27 -21
  625. package/lib/ui-kit/KandoTable/kandoTableUtils.js +1 -1
  626. package/lib/ui-kit/Layout/Layout.js +7 -8
  627. package/lib/ui-kit/MobileInput/MobileInput.js +51 -61
  628. package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +17 -14
  629. package/lib/ui-kit/ModalConfirmation/index.js +3 -2
  630. package/lib/ui-kit/OrganicEvents/GaugeChart.js +9 -10
  631. package/lib/ui-kit/OrganicEvents/OrganicEvents.js +9 -8
  632. package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +23 -29
  633. package/lib/ui-kit/OrganicEvents/TextInfo.js +13 -17
  634. package/lib/ui-kit/OrganicEvents/index.js +4 -3
  635. package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +11 -12
  636. package/lib/ui-kit/SamplingStatus/SamplingStatus.js +21 -17
  637. package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +4 -3
  638. package/lib/ui-kit/ScoreGauge/ScoreGauge.js +25 -22
  639. package/lib/ui-kit/ScoreGauge/constant.js +4 -3
  640. package/lib/ui-kit/ScoreGauge/index.js +4 -3
  641. package/lib/ui-kit/TimeLineChart/TrendChart.js +45 -56
  642. package/lib/ui-kit/TimeLineChart/index.js +4 -3
  643. package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +11 -10
  644. package/lib/ui-kit/Tooltip/Tooltip.js +9 -15
  645. package/lib/ui-kit/index.js +8 -8
  646. package/lib/ui-kit/kandoStepper/KandoStepper.js +15 -14
  647. package/lib/ui-kit/siteName/SiteName.js +11 -13
  648. package/lib/utilities/ActionUtility.js +7 -7
  649. package/lib/utilities/Alert.js +20 -23
  650. package/lib/utilities/Analytics.js +12 -12
  651. package/lib/utilities/Array.js +5 -4
  652. package/lib/utilities/Enum.js +51 -15
  653. package/lib/utilities/ErrorBoundary.js +42 -27
  654. package/lib/utilities/File.js +70 -41
  655. package/lib/utilities/GetDir.js +10 -10
  656. package/lib/utilities/KandoDate.js +15 -7
  657. package/lib/utilities/KandoModal.js +28 -16
  658. package/lib/utilities/LocalStorage.js +10 -8
  659. package/lib/utilities/ThousandsToK.js +3 -3
  660. package/lib/utilities/TimeFormat.js +23 -22
  661. package/lib/utilities/Truncate.js +28 -18
  662. package/lib/utilities/edgesMath.js +16 -15
  663. package/lib/utilities/i18n.js +6 -5
  664. package/lib/utilities/kql.js +14 -12
  665. package/lib/utilities/map/icons.js +4 -4
  666. package/lib/utilities/polylinedecorator.js +113 -88
  667. package/lib/utilities/scoreToData.js +16 -16
  668. package/lib/utilities/scoreToData.test.js +5 -5
  669. package/lib/utilities/time.js +10 -9
  670. package/lib/utilities/uploadToS3.js +12 -12
  671. package/lib/utilities/urls.js +61 -62
  672. package/package.json +1 -1
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.graphDatesButtons = exports.dndGraphInitOptions = void 0;
8
8
  var _i18n = _interopRequireDefault(require("../../utilities/i18n"));
9
- const dndGraphInitOptions = exports.dndGraphInitOptions = {
9
+ var dndGraphInitOptions = {
10
10
  scrollbar: {
11
11
  enabled: true,
12
12
  barBackgroundColor: '#DBDEE3',
@@ -85,7 +85,8 @@ const dndGraphInitOptions = exports.dndGraphInitOptions = {
85
85
  }
86
86
  }
87
87
  };
88
- const graphDatesButtons = exports.graphDatesButtons = [{
88
+ exports.dndGraphInitOptions = dndGraphInitOptions;
89
+ var graphDatesButtons = [{
89
90
  title: '1 Day',
90
91
  time: 24
91
92
  }, {
@@ -98,4 +99,5 @@ const graphDatesButtons = exports.graphDatesButtons = [{
98
99
  title: '1 Quarter',
99
100
  time: 2880
100
101
  }];
101
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaTE4biIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiZG5kR3JhcGhJbml0T3B0aW9ucyIsImV4cG9ydHMiLCJzY3JvbGxiYXIiLCJlbmFibGVkIiwiYmFyQmFja2dyb3VuZENvbG9yIiwiYmFyQm9yZGVyUmFkaXVzIiwiYmFyQm9yZGVyV2lkdGgiLCJidXR0b25CYWNrZ3JvdW5kQ29sb3IiLCJidXR0b25Cb3JkZXJXaWR0aCIsImJ1dHRvbkFycm93Q29sb3IiLCJidXR0b25Cb3JkZXJSYWRpdXMiLCJyaWZsZUNvbG9yIiwidHJhY2tCYWNrZ3JvdW5kQ29sb3IiLCJ0cmFja0JvcmRlcldpZHRoIiwidHJhY2tCb3JkZXJDb2xvciIsInRyYWNrQm9yZGVyUmFkaXVzIiwiY2hhcnQiLCJzcGFjaW5nQm90dG9tIiwic3BhY2luZ0xlZnQiLCJzcGFjaW5nUmlnaHQiLCJzcGFjaW5nVG9wIiwiYmFja2dyb3VuZENvbG9yIiwiaGVpZ2h0Iiwiem9vbVR5cGUiLCJyYW5nZVNlbGVjdG9yIiwiYWxsQnV0dG9uc0VuYWJsZWQiLCJpbnB1dEVuYWJsZWQiLCJidXR0b25zIiwidHlwZSIsImNvdW50IiwidGV4dCIsImkxOG4iLCJ0IiwiYnV0dG9uVGhlbWUiLCJ3aWR0aCIsImZpbGwiLCJzdHJva2UiLCJwYWRkaW5nIiwiciIsInN0eWxlIiwiZm9udFNpemUiLCJzdGF0ZXMiLCJob3ZlciIsImNvbG9yIiwiZm9udFdlaWdodCIsInNlbGVjdCIsImdyYXBoRGF0ZXNCdXR0b25zIiwidGl0bGUiLCJ0aW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL0dyYXBoVXRpbHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBJRXZlbnRzU3RhdGUgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnRzU3RhdGUnO1xuaW1wb3J0IHsgSUdsb2JhbFN0YXRlIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9tb2RlbHMvSUdsb2JhbFN0YXRlJztcbmltcG9ydCBIaWdoY2hhcnRzIGZyb20gJ2hpZ2hjaGFydHMvaGlnaHN0b2NrJztcbmltcG9ydCBpMThuIGZyb20gJy4uLy4uL3V0aWxpdGllcy9pMThuJztcblxuZXhwb3J0IGludGVyZmFjZSBHcmFwaFR5cGUge1xuICBncmFwaERhdGE6IHtcbiAgICBnbG9iYWxfZGF0YTogSUdsb2JhbFN0YXRlO1xuICAgIGV2ZW50c19kYXRhOiBJRXZlbnRzU3RhdGU7XG4gICAgZ3JhcGhEYXRlOiBudW1iZXI7XG4gIH07XG4gIGdyYXBoRWxlbWVudDogUmVhY3QuUmVhY3RFbGVtZW50O1xufVxuZXhwb3J0IGludGVyZmFjZSBHcmFwaHNDb2x1bW5UeXBlIHtcbiAgaWQ6IHN0cmluZztcbiAgZ3JhcGhzOiBHcmFwaFR5cGVbXSB8IFtdO1xufVxuZXhwb3J0IGNvbnN0IGRuZEdyYXBoSW5pdE9wdGlvbnM6IEhpZ2hjaGFydHMuT3B0aW9ucyA9IHtcbiAgc2Nyb2xsYmFyOiB7XG4gICAgZW5hYmxlZDogdHJ1ZSxcbiAgICBiYXJCYWNrZ3JvdW5kQ29sb3I6ICcjREJERUUzJyxcbiAgICBiYXJCb3JkZXJSYWRpdXM6IDcsXG4gICAgYmFyQm9yZGVyV2lkdGg6IDAsXG4gICAgYnV0dG9uQmFja2dyb3VuZENvbG9yOiAnI0RCREVFMycsXG4gICAgYnV0dG9uQm9yZGVyV2lkdGg6IDAsXG4gICAgYnV0dG9uQXJyb3dDb2xvcjogJyNmNjAwNGYnLFxuICAgIGJ1dHRvbkJvcmRlclJhZGl1czogNyxcbiAgICByaWZsZUNvbG9yOiAnI2Y2MDA0ZicsXG4gICAgdHJhY2tCYWNrZ3JvdW5kQ29sb3I6ICcjZmZmZicsXG4gICAgdHJhY2tCb3JkZXJXaWR0aDogMixcbiAgICB0cmFja0JvcmRlckNvbG9yOiAnI0RCREVFMycsXG4gICAgdHJhY2tCb3JkZXJSYWRpdXM6IDcsXG4gIH0sXG4gIGNoYXJ0OiB7XG4gICAgc3BhY2luZ0JvdHRvbTogMCxcbiAgICBzcGFjaW5nTGVmdDogMCxcbiAgICBzcGFjaW5nUmlnaHQ6IDAsXG4gICAgc3BhY2luZ1RvcDogMCxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICdyZ2JhKDAsMCwwLDApJyxcbiAgICBoZWlnaHQ6IDIzMCxcbiAgICB6b29tVHlwZTogJ3gnLFxuICB9LFxuXG4gIHJhbmdlU2VsZWN0b3I6IHtcbiAgICBlbmFibGVkOiB0cnVlLFxuICAgIGFsbEJ1dHRvbnNFbmFibGVkOiB0cnVlLFxuICAgIGlucHV0RW5hYmxlZDogZmFsc2UsXG4gICAgYnV0dG9uczogW1xuICAgICAge1xuICAgICAgICB0eXBlOiAnZGF5JyxcbiAgICAgICAgY291bnQ6IDEsXG4gICAgICAgIHRleHQ6IGkxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZsb2F0aW5nX2dyYXBoLnRpbWVfc2VsZWN0aW9uLm9uZV9kYXknKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdkYXknLFxuICAgICAgICBjb3VudDogMixcbiAgICAgICAgdGV4dDogaTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmxvYXRpbmdfZ3JhcGgudGltZV9zZWxlY3Rpb24udHdvX2RheXMnKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICd3ZWVrJyxcbiAgICAgICAgY291bnQ6IDEsXG4gICAgICAgIHRleHQ6IGkxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZsb2F0aW5nX2dyYXBoLnRpbWVfc2VsZWN0aW9uLm9uZV93ZWVrJyksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB0eXBlOiAnbW9udGgnLFxuICAgICAgICBjb3VudDogMSxcbiAgICAgICAgdGV4dDogaTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmxvYXRpbmdfZ3JhcGgudGltZV9zZWxlY3Rpb24ub25lX21vbnRoJyksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB0eXBlOiAnbW9udGgnLFxuICAgICAgICBjb3VudDogMyxcbiAgICAgICAgdGV4dDogaTE4bi50KFxuICAgICAgICAgICdldmVudHNfb3ZlcnZpZXcuZmxvYXRpbmdfZ3JhcGgudGltZV9zZWxlY3Rpb24ub25lX3F1YXJ0ZXInLFxuICAgICAgICApLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGJ1dHRvblRoZW1lOiB7XG4gICAgICB3aWR0aDogNjAsXG4gICAgICBmaWxsOiAnbm9uZScsXG4gICAgICBzdHJva2U6ICdub25lJyxcbiAgICAgICdzdHJva2Utd2lkdGgnOiAwLFxuICAgICAgcGFkZGluZzogNSxcbiAgICAgIHI6IDgsXG4gICAgICBzdHlsZToge1xuICAgICAgICBmb250U2l6ZTogJzE0cHgnLFxuICAgICAgfSxcbiAgICAgIHN0YXRlczoge1xuICAgICAgICBob3Zlcjoge1xuICAgICAgICAgIGZpbGw6ICcjRTMxQjYyJyxcbiAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgICAgICBmb250V2VpZ2h0OiAnNDAwJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBzZWxlY3Q6IHtcbiAgICAgICAgICBmaWxsOiAnI0UzMUI2MicsXG4gICAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgICAgZm9udFdlaWdodDogJzQwMCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSxcbn07XG5leHBvcnQgY29uc3QgZ3JhcGhEYXRlc0J1dHRvbnMgPSBbXG4gIHtcbiAgICB0aXRsZTogJzEgRGF5JyxcbiAgICB0aW1lOiAyNCxcbiAgfSxcbiAge1xuICAgIHRpdGxlOiAnMSBXZWVrJyxcbiAgICB0aW1lOiAxNjgsXG4gIH0sXG4gIHtcbiAgICB0aXRsZTogJzEgTW9udGgnLFxuICAgIHRpbWU6IDcyMCxcbiAgfSxcbiAge1xuICAgIHRpdGxlOiAnMSBRdWFydGVyJyxcbiAgICB0aW1lOiAyODgwLFxuICB9LFxuXTtcbiJdLCJtYXBwaW5n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
102
+ exports.graphDatesButtons = graphDatesButtons;
103
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaTE4biIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiZG5kR3JhcGhJbml0T3B0aW9ucyIsInNjcm9sbGJhciIsImVuYWJsZWQiLCJiYXJCYWNrZ3JvdW5kQ29sb3IiLCJiYXJCb3JkZXJSYWRpdXMiLCJiYXJCb3JkZXJXaWR0aCIsImJ1dHRvbkJhY2tncm91bmRDb2xvciIsImJ1dHRvbkJvcmRlcldpZHRoIiwiYnV0dG9uQXJyb3dDb2xvciIsImJ1dHRvbkJvcmRlclJhZGl1cyIsInJpZmxlQ29sb3IiLCJ0cmFja0JhY2tncm91bmRDb2xvciIsInRyYWNrQm9yZGVyV2lkdGgiLCJ0cmFja0JvcmRlckNvbG9yIiwidHJhY2tCb3JkZXJSYWRpdXMiLCJjaGFydCIsInNwYWNpbmdCb3R0b20iLCJzcGFjaW5nTGVmdCIsInNwYWNpbmdSaWdodCIsInNwYWNpbmdUb3AiLCJiYWNrZ3JvdW5kQ29sb3IiLCJoZWlnaHQiLCJ6b29tVHlwZSIsInJhbmdlU2VsZWN0b3IiLCJhbGxCdXR0b25zRW5hYmxlZCIsImlucHV0RW5hYmxlZCIsImJ1dHRvbnMiLCJ0eXBlIiwiY291bnQiLCJ0ZXh0IiwiaTE4biIsInQiLCJidXR0b25UaGVtZSIsIndpZHRoIiwiZmlsbCIsInN0cm9rZSIsInBhZGRpbmciLCJyIiwic3R5bGUiLCJmb250U2l6ZSIsInN0YXRlcyIsImhvdmVyIiwiY29sb3IiLCJmb250V2VpZ2h0Iiwic2VsZWN0IiwiZXhwb3J0cyIsImdyYXBoRGF0ZXNCdXR0b25zIiwidGl0bGUiLCJ0aW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL0dyYXBoVXRpbHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBJRXZlbnRzU3RhdGUgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnRzU3RhdGUnO1xuaW1wb3J0IHsgSUdsb2JhbFN0YXRlIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9tb2RlbHMvSUdsb2JhbFN0YXRlJztcbmltcG9ydCBIaWdoY2hhcnRzIGZyb20gJ2hpZ2hjaGFydHMvaGlnaHN0b2NrJztcbmltcG9ydCBpMThuIGZyb20gJy4uLy4uL3V0aWxpdGllcy9pMThuJztcblxuZXhwb3J0IGludGVyZmFjZSBHcmFwaFR5cGUge1xuICBncmFwaERhdGE6IHtcbiAgICBnbG9iYWxfZGF0YTogSUdsb2JhbFN0YXRlO1xuICAgIGV2ZW50c19kYXRhOiBJRXZlbnRzU3RhdGU7XG4gICAgZ3JhcGhEYXRlOiBudW1iZXI7XG4gIH07XG4gIGdyYXBoRWxlbWVudDogUmVhY3QuUmVhY3RFbGVtZW50O1xufVxuZXhwb3J0IGludGVyZmFjZSBHcmFwaHNDb2x1bW5UeXBlIHtcbiAgaWQ6IHN0cmluZztcbiAgZ3JhcGhzOiBHcmFwaFR5cGVbXSB8IFtdO1xufVxuZXhwb3J0IGNvbnN0IGRuZEdyYXBoSW5pdE9wdGlvbnM6IEhpZ2hjaGFydHMuT3B0aW9ucyA9IHtcbiAgc2Nyb2xsYmFyOiB7XG4gICAgZW5hYmxlZDogdHJ1ZSxcbiAgICBiYXJCYWNrZ3JvdW5kQ29sb3I6ICcjREJERUUzJyxcbiAgICBiYXJCb3JkZXJSYWRpdXM6IDcsXG4gICAgYmFyQm9yZGVyV2lkdGg6IDAsXG4gICAgYnV0dG9uQmFja2dyb3VuZENvbG9yOiAnI0RCREVFMycsXG4gICAgYnV0dG9uQm9yZGVyV2lkdGg6IDAsXG4gICAgYnV0dG9uQXJyb3dDb2xvcjogJyNmNjAwNGYnLFxuICAgIGJ1dHRvbkJvcmRlclJhZGl1czogNyxcbiAgICByaWZsZUNvbG9yOiAnI2Y2MDA0ZicsXG4gICAgdHJhY2tCYWNrZ3JvdW5kQ29sb3I6ICcjZmZmZicsXG4gICAgdHJhY2tCb3JkZXJXaWR0aDogMixcbiAgICB0cmFja0JvcmRlckNvbG9yOiAnI0RCREVFMycsXG4gICAgdHJhY2tCb3JkZXJSYWRpdXM6IDcsXG4gIH0sXG4gIGNoYXJ0OiB7XG4gICAgc3BhY2luZ0JvdHRvbTogMCxcbiAgICBzcGFjaW5nTGVmdDogMCxcbiAgICBzcGFjaW5nUmlnaHQ6IDAsXG4gICAgc3BhY2luZ1RvcDogMCxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICdyZ2JhKDAsMCwwLDApJyxcbiAgICBoZWlnaHQ6IDIzMCxcbiAgICB6b29tVHlwZTogJ3gnLFxuICB9LFxuXG4gIHJhbmdlU2VsZWN0b3I6IHtcbiAgICBlbmFibGVkOiB0cnVlLFxuICAgIGFsbEJ1dHRvbnNFbmFibGVkOiB0cnVlLFxuICAgIGlucHV0RW5hYmxlZDogZmFsc2UsXG4gICAgYnV0dG9uczogW1xuICAgICAge1xuICAgICAgICB0eXBlOiAnZGF5JyxcbiAgICAgICAgY291bnQ6IDEsXG4gICAgICAgIHRleHQ6IGkxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZsb2F0aW5nX2dyYXBoLnRpbWVfc2VsZWN0aW9uLm9uZV9kYXknKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICdkYXknLFxuICAgICAgICBjb3VudDogMixcbiAgICAgICAgdGV4dDogaTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmxvYXRpbmdfZ3JhcGgudGltZV9zZWxlY3Rpb24udHdvX2RheXMnKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHR5cGU6ICd3ZWVrJyxcbiAgICAgICAgY291bnQ6IDEsXG4gICAgICAgIHRleHQ6IGkxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZsb2F0aW5nX2dyYXBoLnRpbWVfc2VsZWN0aW9uLm9uZV93ZWVrJyksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB0eXBlOiAnbW9udGgnLFxuICAgICAgICBjb3VudDogMSxcbiAgICAgICAgdGV4dDogaTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmxvYXRpbmdfZ3JhcGgudGltZV9zZWxlY3Rpb24ub25lX21vbnRoJyksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB0eXBlOiAnbW9udGgnLFxuICAgICAgICBjb3VudDogMyxcbiAgICAgICAgdGV4dDogaTE4bi50KFxuICAgICAgICAgICdldmVudHNfb3ZlcnZpZXcuZmxvYXRpbmdfZ3JhcGgudGltZV9zZWxlY3Rpb24ub25lX3F1YXJ0ZXInLFxuICAgICAgICApLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGJ1dHRvblRoZW1lOiB7XG4gICAgICB3aWR0aDogNjAsXG4gICAgICBmaWxsOiAnbm9uZScsXG4gICAgICBzdHJva2U6ICdub25lJyxcbiAgICAgICdzdHJva2Utd2lkdGgnOiAwLFxuICAgICAgcGFkZGluZzogNSxcbiAgICAgIHI6IDgsXG4gICAgICBzdHlsZToge1xuICAgICAgICBmb250U2l6ZTogJzE0cHgnLFxuICAgICAgfSxcbiAgICAgIHN0YXRlczoge1xuICAgICAgICBob3Zlcjoge1xuICAgICAgICAgIGZpbGw6ICcjRTMxQjYyJyxcbiAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgICAgICBmb250V2VpZ2h0OiAnNDAwJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBzZWxlY3Q6IHtcbiAgICAgICAgICBmaWxsOiAnI0UzMUI2MicsXG4gICAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgICAgZm9udFdlaWdodDogJzQwMCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSxcbn07XG5leHBvcnQgY29uc3QgZ3JhcGhEYXRlc0J1dHRvbnMgPSBbXG4gIHtcbiAgICB0aXRsZTogJzEgRGF5JyxcbiAgICB0aW1lOiAyNCxcbiAgfSxcbiAge1xuICAgIHRpdGxlOiAnMSBXZWVrJyxcbiAgICB0aW1lOiAxNjgsXG4gIH0sXG4gIHtcbiAgICB0aXRsZTogJzEgTW9udGgnLFxuICAgIHRpbWU6IDcyMCxcbiAgfSxcbiAge1xuICAgIHRpdGxlOiAnMSBRdWFydGVyJyxcbiAgICB0aW1lOiAyODgwLFxuICB9LFxuXTtcbiJdLCJtYXBwaW5n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
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.Map = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
9
10
  var L = _interopRequireWildcard(require("leaflet"));
10
11
  require("leaflet.markercluster");
11
12
  require("leaflet.pattern");
@@ -22,66 +23,83 @@ var _MapUtils = require("./MapUtils");
22
23
  var _theme = require("../../styles/theme/theme");
23
24
  var _i18n = _interopRequireDefault(require("../../utilities/i18n"));
24
25
  var _ListContext = require("pages/DashboardMap/ListContext");
26
+ 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); }
27
+ 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
28
  // @ts-ignore
26
29
 
27
30
  // import { storeMap } from 'src/store/global/actions';
28
31
 
29
32
  require('leaflet.markercluster');
30
- const Map = _ref => {
31
- let {
32
- areas,
33
- edges,
34
- points,
35
- global_data,
36
- areaToCenterBy,
37
- focusedEvent,
38
- hoveredEvent,
39
- hideEdges = false,
40
- mapBoxStyle = _theme.leafletMap.mapDefault,
41
- children,
42
- includeUnmonitoredPoints = true,
43
- includeUnmonitoredDescendantsForEdges = false,
44
- forEventsView = false,
45
- style = {},
46
- forWWTPDashboard = false
47
- } = _ref;
48
- const {
49
- map
50
- } = global_data;
51
- const mapRef = (0, _react.useRef)(null);
52
- const dispatch = (0, _reactRedux.useDispatch)();
53
- const [mapZoomLevel, setMapZoomLevel] = (0, _react.useState)(2);
54
- const {
55
- selectedItem
56
- } = (0, _ListContext.useSelectedItem)();
57
- const eventsData = (0, _reactRedux.useSelector)(state => state.events_data);
58
- const hoveredEventPresent = (0, _react.useMemo)(() => {
33
+ var Map = function Map(_ref) {
34
+ var areas = _ref.areas,
35
+ edges = _ref.edges,
36
+ points = _ref.points,
37
+ global_data = _ref.global_data,
38
+ areaToCenterBy = _ref.areaToCenterBy,
39
+ focusedEvent = _ref.focusedEvent,
40
+ hoveredEvent = _ref.hoveredEvent,
41
+ _ref$hideEdges = _ref.hideEdges,
42
+ hideEdges = _ref$hideEdges === void 0 ? false : _ref$hideEdges,
43
+ _ref$mapBoxStyle = _ref.mapBoxStyle,
44
+ mapBoxStyle = _ref$mapBoxStyle === void 0 ? _theme.leafletMap.mapDefault : _ref$mapBoxStyle,
45
+ children = _ref.children,
46
+ _ref$includeUnmonitor = _ref.includeUnmonitoredPoints,
47
+ includeUnmonitoredPoints = _ref$includeUnmonitor === void 0 ? true : _ref$includeUnmonitor,
48
+ _ref$includeUnmonitor2 = _ref.includeUnmonitoredDescendantsForEdges,
49
+ includeUnmonitoredDescendantsForEdges = _ref$includeUnmonitor2 === void 0 ? false : _ref$includeUnmonitor2,
50
+ _ref$forEventsView = _ref.forEventsView,
51
+ forEventsView = _ref$forEventsView === void 0 ? false : _ref$forEventsView,
52
+ _ref$style = _ref.style,
53
+ style = _ref$style === void 0 ? {} : _ref$style,
54
+ _ref$forWWTPDashboard = _ref.forWWTPDashboard,
55
+ forWWTPDashboard = _ref$forWWTPDashboard === void 0 ? false : _ref$forWWTPDashboard;
56
+ var map = global_data.map;
57
+ var mapRef = (0, _react.useRef)(null);
58
+ var dispatch = (0, _reactRedux.useDispatch)();
59
+ var _useState = (0, _react.useState)(2),
60
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
61
+ mapZoomLevel = _useState2[0],
62
+ setMapZoomLevel = _useState2[1];
63
+ var _useSelectedItem = (0, _ListContext.useSelectedItem)(),
64
+ selectedItem = _useSelectedItem.selectedItem;
65
+ var eventsData = (0, _reactRedux.useSelector)(function (state) {
66
+ return state.events_data;
67
+ });
68
+ var hoveredEventPresent = (0, _react.useMemo)(function () {
59
69
  return hoveredEvent !== null && hoveredEvent !== undefined;
60
70
  }, [hoveredEvent]);
61
- const focusedEventPresent = (0, _react.useMemo)(() => {
71
+ var focusedEventPresent = (0, _react.useMemo)(function () {
62
72
  return focusedEvent !== null && focusedEvent !== undefined;
63
73
  }, [focusedEvent]);
64
- const [factoriesClusterGroup] = (0, _react.useState)(window.customLeaflet.markerClusterGroup({
65
- spiderfyOnMaxZoom: false,
66
- showCoverageOnHover: false,
67
- zoomToBoundsOnClick: true,
68
- animate: true,
69
- disableClusteringAtZoom: 15,
70
- removeOutsideVisibleBounds: false,
71
- chunkedLoading: true,
72
- iconCreateFunction: function (cluster) {
73
- return new L.DivIcon({
74
- html: `<div><span>${cluster._childCount}</span></div><div class='marker-cluster-name'>${_i18n.default.t('industries')}</div>`,
75
- className: 'marker-cluster',
76
- iconSize: new L.Point(40, 40)
77
- });
78
- }
79
- }));
80
- const [wwtpsLayerGroup] = (0, _react.useState)(L.layerGroup());
81
- const [collectorsLayerGroup] = (0, _react.useState)(L.layerGroup());
74
+ var _useState3 = (0, _react.useState)(window.customLeaflet.markerClusterGroup({
75
+ spiderfyOnMaxZoom: false,
76
+ showCoverageOnHover: false,
77
+ zoomToBoundsOnClick: true,
78
+ animate: true,
79
+ disableClusteringAtZoom: 15,
80
+ removeOutsideVisibleBounds: false,
81
+ chunkedLoading: true,
82
+ iconCreateFunction: function iconCreateFunction(cluster) {
83
+ return new L.DivIcon({
84
+ html: "<div><span>".concat(cluster._childCount, "</span></div><div class='marker-cluster-name'>").concat(_i18n.default.t('industries'), "</div>"),
85
+ className: 'marker-cluster',
86
+ iconSize: new L.Point(40, 40)
87
+ });
88
+ }
89
+ })),
90
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 1),
91
+ factoriesClusterGroup = _useState4[0];
92
+ var _useState5 = (0, _react.useState)(L.layerGroup()),
93
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 1),
94
+ wwtpsLayerGroup = _useState6[0];
95
+ var _useState7 = (0, _react.useState)(L.layerGroup()),
96
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 1),
97
+ collectorsLayerGroup = _useState8[0];
82
98
  //const [factoriesLayerGroup] = useState(L.layerGroup());
83
- const [areasLayerGroup] = (0, _react.useState)(new L.FeatureGroup());
84
- const memoizedPoints = (0, _react.useMemo)(() => {
99
+ var _useState9 = (0, _react.useState)(new L.FeatureGroup()),
100
+ _useState10 = (0, _slicedToArray2.default)(_useState9, 1),
101
+ areasLayerGroup = _useState10[0];
102
+ var memoizedPoints = (0, _react.useMemo)(function () {
85
103
  return mapRef.current !== null && points && /*#__PURE__*/_react.default.createElement(_PointMarkers.PointMarkers, {
86
104
  map: mapRef.current,
87
105
  points: points,
@@ -98,8 +116,8 @@ const Map = _ref => {
98
116
  // mapRef.current !== null && iconZoomControl(mapRef.current);
99
117
  // }, [mapRef.current, points, focusedEventPresent]);
100
118
 
101
- const zoomRulesForEventsView = () => {
102
- const payload = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Edges.default, {
119
+ var zoomRulesForEventsView = function zoomRulesForEventsView() {
120
+ var payload = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Edges.default, {
103
121
  edges: edges,
104
122
  map: mapRef.current,
105
123
  L: L,
@@ -109,8 +127,8 @@ const Map = _ref => {
109
127
  }), memoizedPoints);
110
128
  return payload;
111
129
  };
112
- const zoomRulesForDashaboardMaps = () => {
113
- let payload = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, memoizedPoints);
130
+ var zoomRulesForDashaboardMaps = function zoomRulesForDashaboardMaps() {
131
+ var payload = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, memoizedPoints);
114
132
  switch (_MapUtils.zoomLevels[mapZoomLevel]) {
115
133
  case 'Small':
116
134
  case 'Medium':
@@ -123,13 +141,14 @@ const Map = _ref => {
123
141
  // payload = <>{memoizedPoints}</>;
124
142
  // break;
125
143
  }
144
+
126
145
  return payload;
127
146
  };
128
- const memoizedZoomControl = (0, _react.useMemo)(() => {
129
- const payload = forEventsView ? zoomRulesForEventsView() : zoomRulesForDashaboardMaps();
147
+ var memoizedZoomControl = (0, _react.useMemo)(function () {
148
+ var payload = forEventsView ? zoomRulesForEventsView() : zoomRulesForDashaboardMaps();
130
149
  return payload;
131
150
  }, [mapZoomLevel, eventsData.isFetching, focusedEvent, hoveredEvent, points, mapRef.current]);
132
- const memoizedEvent = (0, _react.useMemo)(() => {
151
+ var memoizedEvent = (0, _react.useMemo)(function () {
133
152
  if (focusedEventPresent) {
134
153
  focusedEvent.focused = focusedEventPresent;
135
154
  focusedEvent.hovered = !focusedEventPresent;
@@ -147,14 +166,14 @@ const Map = _ref => {
147
166
  includeNetwork: !hoveredEventPresent
148
167
  });
149
168
  }, [focusedEvent, hoveredEvent, global_data.eventFilterParam]);
150
- (0, _react.useEffect)(() => {
169
+ (0, _react.useEffect)(function () {
151
170
  return function cleanup() {
152
171
  var _mapRef$current;
153
172
  collectorsLayerGroup.clearLayers();
154
173
  (_mapRef$current = mapRef.current) === null || _mapRef$current === void 0 ? void 0 : _mapRef$current.removeLayer(collectorsLayerGroup);
155
174
  };
156
175
  }, [focusedEvent, hoveredEvent, global_data.eventFilterParam]);
157
- (0, _react.useEffect)(() => {
176
+ (0, _react.useEffect)(function () {
158
177
  (0, _MapUtils.initializeMap)(mapZoomLevel, mapBoxStyle, _theme.leafletMap.satellite, mapRef, dispatch, _MapUtils.isValidArea, areaToCenterBy, setMapZoomLevel, forWWTPDashboard);
159
178
  return function cleanup() {
160
179
  // factoriesClusterGroup.clearLayers();
@@ -170,22 +189,23 @@ const Map = _ref => {
170
189
  // dispatch(storeMap(undefined));
171
190
  };
172
191
  }, [global_data.waterAuthorityId]);
173
- (0, _react.useEffect)(() => {
192
+ (0, _react.useEffect)(function () {
174
193
  if (!mapRef.current) {
175
194
  (0, _MapUtils.initializeMap)(mapZoomLevel, mapBoxStyle, _theme.leafletMap.satellite, mapRef, dispatch, _MapUtils.isValidArea, areaToCenterBy, setMapZoomLevel, forWWTPDashboard);
176
195
  } else {
177
- //add a comment to see if code changes in dev
178
196
  setMapZoomLevel(mapRef.current.getZoom());
179
197
  if (!areaToCenterBy) {
180
- areaToCenterBy = areas.map(area => area.shape_data);
198
+ areaToCenterBy = areas.map(function (area) {
199
+ return area.shape_data;
200
+ }).flat();
181
201
  }
182
202
  (0, _MapUtils.areaFocusLogic)(mapRef, _MapUtils.isValidArea, areaToCenterBy);
183
203
  }
184
204
  }, [mapRef.current, areaToCenterBy]);
185
- (0, _react.useEffect)(() => {
205
+ (0, _react.useEffect)(function () {
186
206
  var _mapRef$current2;
187
- let clicked = false;
188
- (_mapRef$current2 = mapRef.current) === null || _mapRef$current2 === void 0 ? void 0 : _mapRef$current2.eachLayer(layer => {
207
+ var clicked = false;
208
+ (_mapRef$current2 = mapRef.current) === null || _mapRef$current2 === void 0 ? void 0 : _mapRef$current2.eachLayer(function (layer) {
189
209
  if (clicked) return;
190
210
  if ((layer === null || layer === void 0 ? void 0 : layer.kando_object_id) === selectedItem && layer.isPopupOpen() === false) {
191
211
  if (layer instanceof L.Marker) {
@@ -201,7 +221,7 @@ const Map = _ref => {
201
221
  className: "kd-map-container",
202
222
  style: style
203
223
  }, /*#__PURE__*/_react.default.createElement("div", {
204
- className: ` map-container ${global_data.sidenavExpanded ? '' : 'map-container--sidenav-collapsed'}`
224
+ className: " map-container ".concat(global_data.sidenavExpanded ? '' : 'map-container--sidenav-collapsed')
205
225
  }, /*#__PURE__*/_react.default.createElement(_ErrorBoundary.default, null, /*#__PURE__*/_react.default.createElement("div", {
206
226
  id: "map"
207
227
  }), (0, _MapUtils.shouldLoadMapObjects)(global_data, mapRef, edges, points) && /*#__PURE__*/_react.default.createElement(_AreaPolygons.AreaPolygons, {
@@ -216,4 +236,4 @@ const Map = _ref => {
216
236
  }), (0, _MapUtils.shoudLoadDependentMapObjects)(edges, areas, global_data, mapRef, points) && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, memoizedEvent, memoizedZoomControl, children))));
217
237
  };
218
238
  exports.Map = Map;
219
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0UmVkdXgiLCJfRXJyb3JCb3VuZGFyeSIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfQXJlYVBvbHlnb25zIiwiX0VkZ2VzIiwiX1BvaW50TWFya2VycyIsIl9FdmVudCIsIl9NYXBVdGlscyIsIl90aGVtZSIsIl9pMThuIiwiX0xpc3RDb250ZXh0IiwiTWFwIiwiX3JlZiIsImFyZWFzIiwiZWRnZXMiLCJwb2ludHMiLCJnbG9iYWxfZGF0YSIsImFyZWFUb0NlbnRlckJ5IiwiZm9jdXNlZEV2ZW50IiwiaG92ZXJlZEV2ZW50IiwiaGlkZUVkZ2VzIiwibWFwQm94U3R5bGUiLCJsZWFmbGV0TWFwIiwibWFwRGVmYXVsdCIsImNoaWxkcmVuIiwiaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzIiwiaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcyIsImZvckV2ZW50c1ZpZXciLCJzdHlsZSIsImZvcldXVFBEYXNoYm9hcmQiLCJtYXAiLCJtYXBSZWYiLCJ1c2VSZWYiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwibWFwWm9vbUxldmVsIiwic2V0TWFwWm9vbUxldmVsIiwidXNlU3RhdGUiLCJzZWxlY3RlZEl0ZW0iLCJ1c2VTZWxlY3RlZEl0ZW0iLCJldmVudHNEYXRhIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiaG92ZXJlZEV2ZW50UHJlc2VudCIsInVzZU1lbW8iLCJ1bmRlZmluZWQiLCJmb2N1c2VkRXZlbnRQcmVzZW50IiwiZmFjdG9yaWVzQ2x1c3Rlckdyb3VwIiwid2luZG93IiwiY3VzdG9tTGVhZmxldCIsIm1hcmtlckNsdXN0ZXJHcm91cCIsInNwaWRlcmZ5T25NYXhab29tIiwic2hvd0NvdmVyYWdlT25Ib3ZlciIsInpvb21Ub0JvdW5kc09uQ2xpY2siLCJhbmltYXRlIiwiZGlzYWJsZUNsdXN0ZXJpbmdBdFpvb20iLCJyZW1vdmVPdXRzaWRlVmlzaWJsZUJvdW5kcyIsImNodW5rZWRMb2FkaW5nIiwiaWNvbkNyZWF0ZUZ1bmN0aW9uIiwiY2x1c3RlciIsIkRpdkljb24iLCJodG1sIiwiX2NoaWxkQ291bnQiLCJpMThuIiwidCIsImNsYXNzTmFtZSIsImljb25TaXplIiwiUG9pbnQiLCJ3d3Rwc0xheWVyR3JvdXAiLCJsYXllckdyb3VwIiwiY29sbGVjdG9yc0xheWVyR3JvdXAiLCJhcmVhc0xheWVyR3JvdXAiLCJGZWF0dXJlR3JvdXAiLCJtZW1vaXplZFBvaW50cyIsImN1cnJlbnQiLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsIlBvaW50TWFya2VycyIsInJlcmVuZGVyIiwiem9vbUxldmVscyIsImZhY3Rvcmllc0dyb3VwIiwid3d0cHNHcm91cCIsImNvbGxlY3RvcnNHcm91cCIsInpvb21SdWxlc0ZvckV2ZW50c1ZpZXciLCJwYXlsb2FkIiwiRnJhZ21lbnQiLCJhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHMiLCJ6b29tUnVsZXNGb3JEYXNoYWJvYXJkTWFwcyIsIm1lbW9pemVkWm9vbUNvbnRyb2wiLCJpc0ZldGNoaW5nIiwibWVtb2l6ZWRFdmVudCIsImZvY3VzZWQiLCJob3ZlcmVkIiwiRXZlbnQiLCJldmVudCIsImluY2x1ZGVOZXR3b3JrIiwiZXZlbnRGaWx0ZXJQYXJhbSIsInVzZUVmZmVjdCIsImNsZWFudXAiLCJfbWFwUmVmJGN1cnJlbnQiLCJjbGVhckxheWVycyIsInJlbW92ZUxheWVyIiwiaW5pdGlhbGl6ZU1hcCIsInNhdGVsbGl0ZSIsImlzVmFsaWRBcmVhIiwicmVtb3ZlIiwid2F0ZXJBdXRob3JpdHlJZCIsImdldFpvb20iLCJhcmVhIiwic2hhcGVfZGF0YSIsImFyZWFGb2N1c0xvZ2ljIiwiX21hcFJlZiRjdXJyZW50MiIsImNsaWNrZWQiLCJlYWNoTGF5ZXIiLCJsYXllciIsImthbmRvX29iamVjdF9pZCIsImlzUG9wdXBPcGVuIiwiTWFya2VyIiwiZmlyZSIsIlBvbHlnb24iLCJzaWRlbmF2RXhwYW5kZWQiLCJpZCIsInNob3VsZExvYWRNYXBPYmplY3RzIiwiQXJlYVBvbHlnb25zIiwibWFwWm9vbSIsImZlYXR1cmVHcm91cCIsInNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL01hcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0ICogYXMgTCBmcm9tICdsZWFmbGV0JztcbmltcG9ydCAnbGVhZmxldC5tYXJrZXJjbHVzdGVyJztcbmltcG9ydCAnbGVhZmxldC5wYXR0ZXJuJztcbmltcG9ydCBSZWFjdCwge1xuICBDU1NQcm9wZXJ0aWVzLFxuICB1c2VFZmZlY3QsXG4gIHVzZU1lbW8sXG4gIHVzZVJlZixcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IElBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgeyBJRWRnZSB9IGZyb20gJ3NyYy9zdG9yZS9lZGdlcy9tb2RlbHMvSUVkZ2UnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50Jztcbi8vIGltcG9ydCB7IHN0b3JlTWFwIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCB7IElHbG9iYWxTdGF0ZSB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvbW9kZWxzL0lHbG9iYWxTdGF0ZSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IEVycm9yQm91bmRhcnkgZnJvbSAnc3JjL3V0aWxpdGllcy9FcnJvckJvdW5kYXJ5JztcbmltcG9ydCB7IEFyZWFQb2x5Z29ucyB9IGZyb20gJy4vYXJlYXMvQXJlYVBvbHlnb25zJztcbmltcG9ydCBFZGdlcyBmcm9tICcuL2VkZ2VzL0VkZ2VzJztcbmltcG9ydCAnLi9NYXAuc2Nzcyc7XG5pbXBvcnQgJy4vcG9pbnRzL1BvaW50SWNvbi5zY3NzJztcbmltcG9ydCB7IFBvaW50TWFya2VycyB9IGZyb20gJy4vcG9pbnRzL1BvaW50TWFya2Vycyc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgRXZlbnQgfSBmcm9tICcuL2V2ZW50cy9FdmVudCc7XG5pbXBvcnQge1xuICBhcmVhRm9jdXNMb2dpYyxcbiAgaW5pdGlhbGl6ZU1hcCxcbiAgaXNWYWxpZEFyZWEsXG4gIHNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMsXG4gIHNob3VsZExvYWRNYXBPYmplY3RzLFxuICB6b29tTGV2ZWxzLFxufSBmcm9tICcuL01hcFV0aWxzJztcbmltcG9ydCB7IGxlYWZsZXRNYXAgfSBmcm9tICcuLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IGkxOG4gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgdXNlU2VsZWN0ZWRJdGVtIH0gZnJvbSAnc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC9MaXN0Q29udGV4dCc7XG5yZXF1aXJlKCdsZWFmbGV0Lm1hcmtlcmNsdXN0ZXInKTtcblxuaW50ZXJmYWNlIE1hcFByb3BzIHtcbiAgYXJlYXM6IElBcmVhW107XG4gIGVkZ2VzPzogSUVkZ2VbXTtcbiAgcG9pbnRzPzogSVBvaW50W107XG4gIGdsb2JhbF9kYXRhOiBJR2xvYmFsU3RhdGU7XG4gIGFyZWFUb0NlbnRlckJ5PzogYW55O1xuICBmb2N1c2VkRXZlbnQ/OiBJRXZlbnQgfCBudWxsO1xuICBob3ZlcmVkRXZlbnQ/OiBJRXZlbnQgfCBudWxsO1xuICBoaWRlRWRnZXM/OiBib29sZWFuO1xuICBtYXBCb3hTdHlsZT86IHN0cmluZztcbiAgY2hpbGRyZW4/OiBhbnk7XG4gIHN0eWxlPzogQ1NTUHJvcGVydGllcztcbiAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPzogYm9vbGVhbjtcbiAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcz86IGJvb2xlYW47XG4gIGZvckV2ZW50c1ZpZXc6IGJvb2xlYW47XG4gIGZvcldXVFBEYXNoYm9hcmQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgTWFwOiBSZWFjdC5GQzxNYXBQcm9wcz4gPSAoe1xuICBhcmVhcyxcbiAgZWRnZXMsXG4gIHBvaW50cyxcbiAgZ2xvYmFsX2RhdGEsXG4gIGFyZWFUb0NlbnRlckJ5LFxuICBmb2N1c2VkRXZlbnQsXG4gIGhvdmVyZWRFdmVudCxcbiAgaGlkZUVkZ2VzID0gZmFsc2UsXG4gIG1hcEJveFN0eWxlID0gbGVhZmxldE1hcC5tYXBEZWZhdWx0LFxuICBjaGlsZHJlbixcbiAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzID0gdHJ1ZSxcbiAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcyA9IGZhbHNlLFxuICBmb3JFdmVudHNWaWV3ID0gZmFsc2UsXG4gIHN0eWxlID0ge30sXG4gIGZvcldXVFBEYXNoYm9hcmQgPSBmYWxzZSxcbn0pID0+IHtcbiAgY29uc3QgeyBtYXAgfSA9IGdsb2JhbF9kYXRhO1xuICBjb25zdCBtYXBSZWYgPSB1c2VSZWY8TC5NYXAgfCBudWxsPihudWxsKTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBbbWFwWm9vbUxldmVsLCBzZXRNYXBab29tTGV2ZWxdID0gdXNlU3RhdGUoMik7XG4gIGNvbnN0IHsgc2VsZWN0ZWRJdGVtIH0gPSB1c2VTZWxlY3RlZEl0ZW0oKTtcbiAgY29uc3QgZXZlbnRzRGF0YSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLmV2ZW50c19kYXRhLFxuICApO1xuICBjb25zdCBob3ZlcmVkRXZlbnRQcmVzZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIGhvdmVyZWRFdmVudCAhPT0gbnVsbCAmJiBob3ZlcmVkRXZlbnQgIT09IHVuZGVmaW5lZDtcbiAgfSwgW2hvdmVyZWRFdmVudF0pO1xuXG4gIGNvbnN0IGZvY3VzZWRFdmVudFByZXNlbnQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gZm9jdXNlZEV2ZW50ICE9PSBudWxsICYmIGZvY3VzZWRFdmVudCAhPT0gdW5kZWZpbmVkO1xuICB9LCBbZm9jdXNlZEV2ZW50XSk7XG5cbiAgY29uc3QgW2ZhY3Rvcmllc0NsdXN0ZXJHcm91cF0gPSB1c2VTdGF0ZShcbiAgICB3aW5kb3cuY3VzdG9tTGVhZmxldC5tYXJrZXJDbHVzdGVyR3JvdXAoe1xuICAgICAgc3BpZGVyZnlPbk1heFpvb206IGZhbHNlLFxuICAgICAgc2hvd0NvdmVyYWdlT25Ib3ZlcjogZmFsc2UsXG4gICAgICB6b29tVG9Cb3VuZHNPbkNsaWNrOiB0cnVlLFxuICAgICAgYW5pbWF0ZTogdHJ1ZSxcbiAgICAgIGRpc2FibGVDbHVzdGVyaW5nQXRab29tOiAxNSxcbiAgICAgIHJlbW92ZU91dHNpZGVWaXNpYmxlQm91bmRzOiBmYWxzZSxcbiAgICAgIGNodW5rZWRMb2FkaW5nOiB0cnVlLFxuICAgICAgaWNvbkNyZWF0ZUZ1bmN0aW9uOiBmdW5jdGlvbiAoY2x1c3Rlcikge1xuICAgICAgICByZXR1cm4gbmV3IEwuRGl2SWNvbih7XG4gICAgICAgICAgaHRtbDogYDxkaXY+PHNwYW4+JHtcbiAgICAgICAgICAgIGNsdXN0ZXIuX2NoaWxkQ291bnRcbiAgICAgICAgICB9PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9J21hcmtlci1jbHVzdGVyLW5hbWUnPiR7aTE4bi50KFxuICAgICAgICAgICAgJ2luZHVzdHJpZXMnLFxuICAgICAgICAgICl9PC9kaXY+YCxcbiAgICAgICAgICBjbGFzc05hbWU6ICdtYXJrZXItY2x1c3RlcicsXG4gICAgICAgICAgaWNvblNpemU6IG5ldyBMLlBvaW50KDQwLCA0MCksXG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICB9KSxcbiAgKTtcblxuICBjb25zdCBbd3d0cHNMYXllckdyb3VwXSA9IHVzZVN0YXRlKEwubGF5ZXJHcm91cCgpKTtcbiAgY29uc3QgW2NvbGxlY3RvcnNMYXllckdyb3VwXSA9IHVzZVN0YXRlKEwubGF5ZXJHcm91cCgpKTtcbiAgLy9jb25zdCBbZmFjdG9yaWVzTGF5ZXJHcm91cF0gPSB1c2VTdGF0ZShMLmxheWVyR3JvdXAoKSk7XG4gIGNvbnN0IFthcmVhc0xheWVyR3JvdXBdID0gdXNlU3RhdGUobmV3IEwuRmVhdHVyZUdyb3VwKCkpO1xuXG4gIGNvbnN0IG1lbW9pemVkUG9pbnRzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmXG4gICAgICBwb2ludHMgJiYgKFxuICAgICAgICA8UG9pbnRNYXJrZXJzXG4gICAgICAgICAgbWFwPXttYXBSZWYuY3VycmVudH1cbiAgICAgICAgICBwb2ludHM9e3BvaW50c31cbiAgICAgICAgICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM9e2luY2x1ZGVVbm1vbml0b3JlZFBvaW50c31cbiAgICAgICAgICByZXJlbmRlcj17em9vbUxldmVsc1ttYXBab29tTGV2ZWxdfVxuICAgICAgICAgIGZhY3Rvcmllc0dyb3VwPXtmYWN0b3JpZXNDbHVzdGVyR3JvdXB9XG4gICAgICAgICAgd3d0cHNHcm91cD17d3d0cHNMYXllckdyb3VwfVxuICAgICAgICAgIGNvbGxlY3RvcnNHcm91cD17Y29sbGVjdG9yc0xheWVyR3JvdXB9XG4gICAgICAgICAgZm9yRXZlbnRzVmlldz17ZmFsc2V9XG4gICAgICAgIC8+XG4gICAgICApXG4gICAgKTtcbiAgfSwgW21hcFJlZi5jdXJyZW50LCBwb2ludHMsIGZvY3VzZWRFdmVudFByZXNlbnQsIG1hcFpvb21MZXZlbF0pO1xuXG4gIC8vIGNvbnN0IGFjdGl2YXRlWm9vbUNvbnRyb2xGb3JJY29ucyA9IHVzZU1lbW8oKCkgPT4ge1xuICAvLyAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmIGljb25ab29tQ29udHJvbChtYXBSZWYuY3VycmVudCk7XG4gIC8vIH0sIFttYXBSZWYuY3VycmVudCwgcG9pbnRzLCBmb2N1c2VkRXZlbnRQcmVzZW50XSk7XG5cbiAgY29uc3Qgem9vbVJ1bGVzRm9yRXZlbnRzVmlldyA9ICgpID0+IHtcbiAgICBjb25zdCBwYXlsb2FkID0gKFxuICAgICAgPD5cbiAgICAgICAgPEVkZ2VzXG4gICAgICAgICAgZWRnZXM9e2VkZ2VzIX1cbiAgICAgICAgICBtYXA9e21hcFJlZi5jdXJyZW50fVxuICAgICAgICAgIEw9e0x9XG4gICAgICAgICAgcG9pbnRzPXtwb2ludHMhfVxuICAgICAgICAgIGhpZGVFZGdlcz17aGlkZUVkZ2VzfVxuICAgICAgICAgIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cz17aW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlc31cbiAgICAgICAgLz5cbiAgICAgICAge21lbW9pemVkUG9pbnRzfVxuICAgICAgPC8+XG4gICAgKTtcblxuICAgIHJldHVybiBwYXlsb2FkO1xuICB9O1xuXG4gIGNvbnN0IHpvb21SdWxlc0ZvckRhc2hhYm9hcmRNYXBzID0gKCkgPT4ge1xuICAgIGxldCBwYXlsb2FkID0gPD57bWVtb2l6ZWRQb2ludHN9PC8+O1xuICAgIHN3aXRjaCAoem9vbUxldmVsc1ttYXBab29tTGV2ZWxdKSB7XG4gICAgICBjYXNlICdTbWFsbCc6XG4gICAgICBjYXNlICdNZWRpdW0nOlxuICAgICAgICBwYXlsb2FkID0gem9vbVJ1bGVzRm9yRXZlbnRzVmlldygpO1xuICAgICAgICBicmVhaztcbiAgICAgIC8vIGNhc2UgJ01MYXJnZSc6XG4gICAgICAvLyBjYXNlICdMYXJnZSc6XG4gICAgICAvLyBjYXNlICdYTGFyZ2UnOlxuICAgICAgLy8gZGVmYXVsdDpcbiAgICAgIC8vICAgcGF5bG9hZCA9IDw+e21lbW9pemVkUG9pbnRzfTwvPjtcbiAgICAgIC8vICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBheWxvYWQ7XG4gIH07XG5cbiAgY29uc3QgbWVtb2l6ZWRab29tQ29udHJvbCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IHBheWxvYWQgPSBmb3JFdmVudHNWaWV3XG4gICAgICA/IHpvb21SdWxlc0ZvckV2ZW50c1ZpZXcoKVxuICAgICAgOiB6b29tUnVsZXNGb3JEYXNoYWJvYXJkTWFwcygpO1xuXG4gICAgcmV0dXJuIHBheWxvYWQ7XG4gIH0sIFtcbiAgICBtYXBab29tTGV2ZWwsXG4gICAgZXZlbnRzRGF0YS5pc0ZldGNoaW5nLFxuICAgIGZvY3VzZWRFdmVudCxcbiAgICBob3ZlcmVkRXZlbnQsXG4gICAgcG9pbnRzLFxuICAgIG1hcFJlZi5jdXJyZW50LFxuICBdKTtcblxuICBjb25zdCBtZW1vaXplZEV2ZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGZvY3VzZWRFdmVudFByZXNlbnQpIHtcbiAgICAgIGZvY3VzZWRFdmVudCEuZm9jdXNlZCA9IGZvY3VzZWRFdmVudFByZXNlbnQ7XG4gICAgICBmb2N1c2VkRXZlbnQhLmhvdmVyZWQgPSAhZm9jdXNlZEV2ZW50UHJlc2VudDtcbiAgICB9XG5cbiAgICBpZiAoaG92ZXJlZEV2ZW50UHJlc2VudCkge1xuICAgICAgaG92ZXJlZEV2ZW50IS5ob3ZlcmVkID0gaG92ZXJlZEV2ZW50UHJlc2VudDtcbiAgICAgIGhvdmVyZWRFdmVudCEuZm9jdXNlZCA9ICFob3ZlcmVkRXZlbnRQcmVzZW50O1xuICAgIH1cblxuICAgIGlmICghaG92ZXJlZEV2ZW50UHJlc2VudCAmJiAhZm9jdXNlZEV2ZW50UHJlc2VudCkgcmV0dXJuIDw+PC8+O1xuICAgIHJldHVybiAoXG4gICAgICA8RXZlbnRcbiAgICAgICAgZXZlbnQ9e2ZvY3VzZWRFdmVudCEgfHwgaG92ZXJlZEV2ZW50IX1cbiAgICAgICAgbWFwPXttYXB9XG4gICAgICAgIGVkZ2VzPXtlZGdlcyF9XG4gICAgICAgIHBvaW50cz17cG9pbnRzIX1cbiAgICAgICAgaW5jbHVkZU5ldHdvcms9eyFob3ZlcmVkRXZlbnRQcmVzZW50fVxuICAgICAgLz5cbiAgICApO1xuICB9LCBbZm9jdXNlZEV2ZW50LCBob3ZlcmVkRXZlbnQsIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW1dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiBmdW5jdGlvbiBjbGVhbnVwKCkge1xuICAgICAgY29sbGVjdG9yc0xheWVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIG1hcFJlZi5jdXJyZW50Py5yZW1vdmVMYXllcihjb2xsZWN0b3JzTGF5ZXJHcm91cCk7XG4gICAgfTtcbiAgfSwgW2ZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50LCBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpbml0aWFsaXplTWFwKFxuICAgICAgbWFwWm9vbUxldmVsLFxuICAgICAgbWFwQm94U3R5bGUsXG4gICAgICBsZWFmbGV0TWFwLnNhdGVsbGl0ZSxcbiAgICAgIG1hcFJlZixcbiAgICAgIGRpc3BhdGNoLFxuICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICBhcmVhVG9DZW50ZXJCeSxcbiAgICAgIHNldE1hcFpvb21MZXZlbCxcbiAgICAgIGZvcldXVFBEYXNoYm9hcmQsXG4gICAgKTtcblxuICAgIHJldHVybiBmdW5jdGlvbiBjbGVhbnVwKCkge1xuICAgICAgLy8gZmFjdG9yaWVzQ2x1c3Rlckdyb3VwLmNsZWFyTGF5ZXJzKCk7XG4gICAgICAvLyB3d3Rwc0xheWVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIC8vIGNvbGxlY3RvcnNMYXllckdyb3VwLmNsZWFyTGF5ZXJzKCk7XG4gICAgICAvLyBhcmVhc0xheWVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIC8vIG1hcFJlZi5jdXJyZW50Py5yZW1vdmVMYXllcihmYWN0b3JpZXNDbHVzdGVyR3JvdXApO1xuICAgICAgLy8gbWFwUmVmLmN1cnJlbnQ/LnJlbW92ZUxheWVyKHd3dHBzTGF5ZXJHcm91cCk7XG4gICAgICAvLyBtYXBSZWYuY3VycmVudD8ucmVtb3ZlTGF5ZXIoY29sbGVjdG9yc0xheWVyR3JvdXApO1xuICAgICAgLy8gbWFwUmVmLmN1cnJlbnQ/LnJlbW92ZUxheWVyKGFyZWFzTGF5ZXJHcm91cCk7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBtYXBSZWYuY3VycmVudC5yZW1vdmUoKTtcbiAgICAgIC8vIGRpc3BhdGNoKHN0b3JlTWFwKHVuZGVmaW5lZCkpO1xuICAgIH07XG4gIH0sIFtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIW1hcFJlZi5jdXJyZW50KSB7XG4gICAgICBpbml0aWFsaXplTWFwKFxuICAgICAgICBtYXBab29tTGV2ZWwsXG4gICAgICAgIG1hcEJveFN0eWxlLFxuICAgICAgICBsZWFmbGV0TWFwLnNhdGVsbGl0ZSxcbiAgICAgICAgbWFwUmVmLFxuICAgICAgICBkaXNwYXRjaCxcbiAgICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICAgIGFyZWFUb0NlbnRlckJ5LFxuICAgICAgICBzZXRNYXBab29tTGV2ZWwsXG4gICAgICAgIGZvcldXVFBEYXNoYm9hcmQsXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICAvL2FkZCBhIGNvbW1lbnQgdG8gc2VlIGlmIGNvZGUgY2hhbmdlcyBpbiBkZXZcbiAgICAgIHNldE1hcFpvb21MZXZlbChtYXBSZWYuY3VycmVudC5nZXRab29tKCkpO1xuICAgICAgaWYgKCFhcmVhVG9DZW50ZXJCeSkge1xuICAgICAgICBhcmVhVG9DZW50ZXJCeSA9IGFyZWFzLm1hcCgoYXJlYSkgPT4gYXJlYS5zaGFwZV9kYXRhKTtcbiAgICAgIH1cblxuICAgICAgYXJlYUZvY3VzTG9naWMobWFwUmVmLCBpc1ZhbGlkQXJlYSwgYXJlYVRvQ2VudGVyQnkpO1xuICAgIH1cbiAgfSwgW21hcFJlZi5jdXJyZW50LCBhcmVhVG9DZW50ZXJCeV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgbGV0IGNsaWNrZWQgPSBmYWxzZTtcblxuICAgIG1hcFJlZi5jdXJyZW50Py5lYWNoTGF5ZXIoKGxheWVyKSA9PiB7XG4gICAgICBpZiAoY2xpY2tlZCkgcmV0dXJuO1xuXG4gICAgICBpZiAoXG4gICAgICAgIGxheWVyPy5rYW5kb19vYmplY3RfaWQgPT09IHNlbGVjdGVkSXRlbSAmJlxuICAgICAgICBsYXllci5pc1BvcHVwT3BlbigpID09PSBmYWxzZVxuICAgICAgKSB7XG4gICAgICAgIGlmIChsYXllciBpbnN0YW5jZW9mIEwuTWFya2VyKSB7XG4gICAgICAgICAgbGF5ZXIuZmlyZSgnY2xpY2snKTtcbiAgICAgICAgfSBlbHNlIGlmIChsYXllciBpbnN0YW5jZW9mIEwuUG9seWdvbikge1xuICAgICAgICAgIGxheWVyLmZpcmUoJ2NsaWNrLWV2ZW50Jyk7XG4gICAgICAgIH1cbiAgICAgICAgY2xpY2tlZCA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH0sIFtzZWxlY3RlZEl0ZW1dKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwia2QtbWFwLWNvbnRhaW5lclwiIHN0eWxlPXtzdHlsZX0+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17YCBtYXAtY29udGFpbmVyICR7XG4gICAgICAgICAgZ2xvYmFsX2RhdGEuc2lkZW5hdkV4cGFuZGVkID8gJycgOiAnbWFwLWNvbnRhaW5lci0tc2lkZW5hdi1jb2xsYXBzZWQnXG4gICAgICAgIH1gfVxuICAgICAgPlxuICAgICAgICA8RXJyb3JCb3VuZGFyeT5cbiAgICAgICAgICA8ZGl2IGlkPVwibWFwXCI+PC9kaXY+XG4gICAgICAgICAge3Nob3VsZExvYWRNYXBPYmplY3RzKGdsb2JhbF9kYXRhLCBtYXBSZWYsIGVkZ2VzLCBwb2ludHMpICYmIChcbiAgICAgICAgICAgIDxBcmVhUG9seWdvbnNcbiAgICAgICAgICAgICAgYXJlYXM9e2FyZWFzfVxuICAgICAgICAgICAgICBtYXA9e21hcFJlZi5jdXJyZW50fVxuICAgICAgICAgICAgICBMPXtMfVxuICAgICAgICAgICAgICBhcmVhVG9DZW50ZXJCeT17YXJlYVRvQ2VudGVyQnl9XG4gICAgICAgICAgICAgIG1hcFpvb209e21hcFpvb21MZXZlbH1cbiAgICAgICAgICAgICAgcmVyZW5kZXI9e3pvb21MZXZlbHNbbWFwWm9vbUxldmVsXX1cbiAgICAgICAgICAgICAgZ2xvYmFsX2RhdGE9e2dsb2JhbF9kYXRhfVxuICAgICAgICAgICAgICBmZWF0dXJlR3JvdXA9e2FyZWFzTGF5ZXJHcm91cH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgICB7c2hvdWRMb2FkRGVwZW5kZW50TWFwT2JqZWN0cyhcbiAgICAgICAgICAgIGVkZ2VzLFxuICAgICAgICAgICAgYXJlYXMsXG4gICAgICAgICAgICBnbG9iYWxfZGF0YSxcbiAgICAgICAgICAgIG1hcFJlZixcbiAgICAgICAgICAgIHBvaW50cyxcbiAgICAgICAgICApICYmIChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIHttZW1vaXplZEV2ZW50fVxuICAgICAgICAgICAgICB7bWVtb2l6ZWRab29tQ29udHJvbH1cbiAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9FcnJvckJvdW5kYXJ5PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUNBLElBQUFBLENBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBQSxPQUFBO0FBQ0FBLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFGLHVCQUFBLENBQUFDLE9BQUE7QUFPQSxJQUFBRSxXQUFBLEdBQUFGLE9BQUE7QUFPQSxJ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
239
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0UmVkdXgiLCJfRXJyb3JCb3VuZGFyeSIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfQXJlYVBvbHlnb25zIiwiX0VkZ2VzIiwiX1BvaW50TWFya2VycyIsIl9FdmVudCIsIl9NYXBVdGlscyIsIl90aGVtZSIsIl9pMThuIiwiX0xpc3RDb250ZXh0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJNYXAiLCJfcmVmIiwiYXJlYXMiLCJlZGdlcyIsInBvaW50cyIsImdsb2JhbF9kYXRhIiwiYXJlYVRvQ2VudGVyQnkiLCJmb2N1c2VkRXZlbnQiLCJob3ZlcmVkRXZlbnQiLCJfcmVmJGhpZGVFZGdlcyIsImhpZGVFZGdlcyIsIl9yZWYkbWFwQm94U3R5bGUiLCJtYXBCb3hTdHlsZSIsImxlYWZsZXRNYXAiLCJtYXBEZWZhdWx0IiwiY2hpbGRyZW4iLCJfcmVmJGluY2x1ZGVVbm1vbml0b3IiLCJpbmNsdWRlVW5tb25pdG9yZWRQb2ludHMiLCJfcmVmJGluY2x1ZGVVbm1vbml0b3IyIiwiaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcyIsIl9yZWYkZm9yRXZlbnRzVmlldyIsImZvckV2ZW50c1ZpZXciLCJfcmVmJHN0eWxlIiwic3R5bGUiLCJfcmVmJGZvcldXVFBEYXNoYm9hcmQiLCJmb3JXV1RQRGFzaGJvYXJkIiwibWFwIiwibWFwUmVmIiwidXNlUmVmIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsIm1hcFpvb21MZXZlbCIsInNldE1hcFpvb21MZXZlbCIsIl91c2VTZWxlY3RlZEl0ZW0iLCJ1c2VTZWxlY3RlZEl0ZW0iLCJzZWxlY3RlZEl0ZW0iLCJldmVudHNEYXRhIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiaG92ZXJlZEV2ZW50UHJlc2VudCIsInVzZU1lbW8iLCJ1bmRlZmluZWQiLCJmb2N1c2VkRXZlbnRQcmVzZW50IiwiX3VzZVN0YXRlMyIsIndpbmRvdyIsImN1c3RvbUxlYWZsZXQiLCJtYXJrZXJDbHVzdGVyR3JvdXAiLCJzcGlkZXJmeU9uTWF4Wm9vbSIsInNob3dDb3ZlcmFnZU9uSG92ZXIiLCJ6b29tVG9Cb3VuZHNPbkNsaWNrIiwiYW5pbWF0ZSIsImRpc2FibGVDbHVzdGVyaW5nQXRab29tIiwicmVtb3ZlT3V0c2lkZVZpc2libGVCb3VuZHMiLCJjaHVua2VkTG9hZGluZyIsImljb25DcmVhdGVGdW5jdGlvbiIsImNsdXN0ZXIiLCJEaXZJY29uIiwiaHRtbCIsImNvbmNhdCIsIl9jaGlsZENvdW50IiwiaTE4biIsInQiLCJjbGFzc05hbWUiLCJpY29uU2l6ZSIsIlBvaW50IiwiX3VzZVN0YXRlNCIsImZhY3Rvcmllc0NsdXN0ZXJHcm91cCIsIl91c2VTdGF0ZTUiLCJsYXllckdyb3VwIiwiX3VzZVN0YXRlNiIsInd3dHBzTGF5ZXJHcm91cCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiY29sbGVjdG9yc0xheWVyR3JvdXAiLCJfdXNlU3RhdGU5IiwiRmVhdHVyZUdyb3VwIiwiX3VzZVN0YXRlMTAiLCJhcmVhc0xheWVyR3JvdXAiLCJtZW1vaXplZFBvaW50cyIsImN1cnJlbnQiLCJjcmVhdGVFbGVtZW50IiwiUG9pbnRNYXJrZXJzIiwicmVyZW5kZXIiLCJ6b29tTGV2ZWxzIiwiZmFjdG9yaWVzR3JvdXAiLCJ3d3Rwc0dyb3VwIiwiY29sbGVjdG9yc0dyb3VwIiwiem9vbVJ1bGVzRm9yRXZlbnRzVmlldyIsInBheWxvYWQiLCJGcmFnbWVudCIsImFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cyIsInpvb21SdWxlc0ZvckRhc2hhYm9hcmRNYXBzIiwibWVtb2l6ZWRab29tQ29udHJvbCIsImlzRmV0Y2hpbmciLCJtZW1vaXplZEV2ZW50IiwiZm9jdXNlZCIsImhvdmVyZWQiLCJFdmVudCIsImV2ZW50IiwiaW5jbHVkZU5ldHdvcmsiLCJldmVudEZpbHRlclBhcmFtIiwidXNlRWZmZWN0IiwiY2xlYW51cCIsIl9tYXBSZWYkY3VycmVudCIsImNsZWFyTGF5ZXJzIiwicmVtb3ZlTGF5ZXIiLCJpbml0aWFsaXplTWFwIiwic2F0ZWxsaXRlIiwiaXNWYWxpZEFyZWEiLCJyZW1vdmUiLCJ3YXRlckF1dGhvcml0eUlkIiwiZ2V0Wm9vbSIsImFyZWEiLCJzaGFwZV9kYXRhIiwiZmxhdCIsImFyZWFGb2N1c0xvZ2ljIiwiX21hcFJlZiRjdXJyZW50MiIsImNsaWNrZWQiLCJlYWNoTGF5ZXIiLCJsYXllciIsImthbmRvX29iamVjdF9pZCIsImlzUG9wdXBPcGVuIiwiTWFya2VyIiwiZmlyZSIsIlBvbHlnb24iLCJzaWRlbmF2RXhwYW5kZWQiLCJpZCIsInNob3VsZExvYWRNYXBPYmplY3RzIiwiQXJlYVBvbHlnb25zIiwibWFwWm9vbSIsImZlYXR1cmVHcm91cCIsInNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL01hcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0ICogYXMgTCBmcm9tICdsZWFmbGV0JztcbmltcG9ydCAnbGVhZmxldC5tYXJrZXJjbHVzdGVyJztcbmltcG9ydCAnbGVhZmxldC5wYXR0ZXJuJztcbmltcG9ydCBSZWFjdCwge1xuICBDU1NQcm9wZXJ0aWVzLFxuICB1c2VFZmZlY3QsXG4gIHVzZU1lbW8sXG4gIHVzZVJlZixcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IElBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgeyBJRWRnZSB9IGZyb20gJ3NyYy9zdG9yZS9lZGdlcy9tb2RlbHMvSUVkZ2UnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50Jztcbi8vIGltcG9ydCB7IHN0b3JlTWFwIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCB7IElHbG9iYWxTdGF0ZSB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvbW9kZWxzL0lHbG9iYWxTdGF0ZSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IEVycm9yQm91bmRhcnkgZnJvbSAnc3JjL3V0aWxpdGllcy9FcnJvckJvdW5kYXJ5JztcbmltcG9ydCB7IEFyZWFQb2x5Z29ucyB9IGZyb20gJy4vYXJlYXMvQXJlYVBvbHlnb25zJztcbmltcG9ydCBFZGdlcyBmcm9tICcuL2VkZ2VzL0VkZ2VzJztcbmltcG9ydCAnLi9NYXAuc2Nzcyc7XG5pbXBvcnQgJy4vcG9pbnRzL1BvaW50SWNvbi5zY3NzJztcbmltcG9ydCB7IFBvaW50TWFya2VycyB9IGZyb20gJy4vcG9pbnRzL1BvaW50TWFya2Vycyc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgRXZlbnQgfSBmcm9tICcuL2V2ZW50cy9FdmVudCc7XG5pbXBvcnQge1xuICBhcmVhRm9jdXNMb2dpYyxcbiAgaW5pdGlhbGl6ZU1hcCxcbiAgaXNWYWxpZEFyZWEsXG4gIHNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMsXG4gIHNob3VsZExvYWRNYXBPYmplY3RzLFxuICB6b29tTGV2ZWxzLFxufSBmcm9tICcuL01hcFV0aWxzJztcbmltcG9ydCB7IGxlYWZsZXRNYXAgfSBmcm9tICcuLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IGkxOG4gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgdXNlU2VsZWN0ZWRJdGVtIH0gZnJvbSAnc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC9MaXN0Q29udGV4dCc7XG5yZXF1aXJlKCdsZWFmbGV0Lm1hcmtlcmNsdXN0ZXInKTtcblxuaW50ZXJmYWNlIE1hcFByb3BzIHtcbiAgYXJlYXM6IElBcmVhW107XG4gIGVkZ2VzPzogSUVkZ2VbXTtcbiAgcG9pbnRzPzogSVBvaW50W107XG4gIGdsb2JhbF9kYXRhOiBJR2xvYmFsU3RhdGU7XG4gIGFyZWFUb0NlbnRlckJ5PzogYW55O1xuICBmb2N1c2VkRXZlbnQ/OiBJRXZlbnQgfCBudWxsO1xuICBob3ZlcmVkRXZlbnQ/OiBJRXZlbnQgfCBudWxsO1xuICBoaWRlRWRnZXM/OiBib29sZWFuO1xuICBtYXBCb3hTdHlsZT86IHN0cmluZztcbiAgY2hpbGRyZW4/OiBhbnk7XG4gIHN0eWxlPzogQ1NTUHJvcGVydGllcztcbiAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPzogYm9vbGVhbjtcbiAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcz86IGJvb2xlYW47XG4gIGZvckV2ZW50c1ZpZXc6IGJvb2xlYW47XG4gIGZvcldXVFBEYXNoYm9hcmQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgTWFwOiBSZWFjdC5GQzxNYXBQcm9wcz4gPSAoe1xuICBhcmVhcyxcbiAgZWRnZXMsXG4gIHBvaW50cyxcbiAgZ2xvYmFsX2RhdGEsXG4gIGFyZWFUb0NlbnRlckJ5LFxuICBmb2N1c2VkRXZlbnQsXG4gIGhvdmVyZWRFdmVudCxcbiAgaGlkZUVkZ2VzID0gZmFsc2UsXG4gIG1hcEJveFN0eWxlID0gbGVhZmxldE1hcC5tYXBEZWZhdWx0LFxuICBjaGlsZHJlbixcbiAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzID0gdHJ1ZSxcbiAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcyA9IGZhbHNlLFxuICBmb3JFdmVudHNWaWV3ID0gZmFsc2UsXG4gIHN0eWxlID0ge30sXG4gIGZvcldXVFBEYXNoYm9hcmQgPSBmYWxzZSxcbn0pID0+IHtcbiAgY29uc3QgeyBtYXAgfSA9IGdsb2JhbF9kYXRhO1xuICBjb25zdCBtYXBSZWYgPSB1c2VSZWY8TC5NYXAgfCBudWxsPihudWxsKTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBbbWFwWm9vbUxldmVsLCBzZXRNYXBab29tTGV2ZWxdID0gdXNlU3RhdGUoMik7XG4gIGNvbnN0IHsgc2VsZWN0ZWRJdGVtIH0gPSB1c2VTZWxlY3RlZEl0ZW0oKTtcbiAgY29uc3QgZXZlbnRzRGF0YSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLmV2ZW50c19kYXRhLFxuICApO1xuICBjb25zdCBob3ZlcmVkRXZlbnRQcmVzZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIGhvdmVyZWRFdmVudCAhPT0gbnVsbCAmJiBob3ZlcmVkRXZlbnQgIT09IHVuZGVmaW5lZDtcbiAgfSwgW2hvdmVyZWRFdmVudF0pO1xuXG4gIGNvbnN0IGZvY3VzZWRFdmVudFByZXNlbnQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gZm9jdXNlZEV2ZW50ICE9PSBudWxsICYmIGZvY3VzZWRFdmVudCAhPT0gdW5kZWZpbmVkO1xuICB9LCBbZm9jdXNlZEV2ZW50XSk7XG5cbiAgY29uc3QgW2ZhY3Rvcmllc0NsdXN0ZXJHcm91cF0gPSB1c2VTdGF0ZShcbiAgICB3aW5kb3cuY3VzdG9tTGVhZmxldC5tYXJrZXJDbHVzdGVyR3JvdXAoe1xuICAgICAgc3BpZGVyZnlPbk1heFpvb206IGZhbHNlLFxuICAgICAgc2hvd0NvdmVyYWdlT25Ib3ZlcjogZmFsc2UsXG4gICAgICB6b29tVG9Cb3VuZHNPbkNsaWNrOiB0cnVlLFxuICAgICAgYW5pbWF0ZTogdHJ1ZSxcbiAgICAgIGRpc2FibGVDbHVzdGVyaW5nQXRab29tOiAxNSxcbiAgICAgIHJlbW92ZU91dHNpZGVWaXNpYmxlQm91bmRzOiBmYWxzZSxcbiAgICAgIGNodW5rZWRMb2FkaW5nOiB0cnVlLFxuICAgICAgaWNvbkNyZWF0ZUZ1bmN0aW9uOiBmdW5jdGlvbiAoY2x1c3Rlcikge1xuICAgICAgICByZXR1cm4gbmV3IEwuRGl2SWNvbih7XG4gICAgICAgICAgaHRtbDogYDxkaXY+PHNwYW4+JHtcbiAgICAgICAgICAgIGNsdXN0ZXIuX2NoaWxkQ291bnRcbiAgICAgICAgICB9PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9J21hcmtlci1jbHVzdGVyLW5hbWUnPiR7aTE4bi50KFxuICAgICAgICAgICAgJ2luZHVzdHJpZXMnLFxuICAgICAgICAgICl9PC9kaXY+YCxcbiAgICAgICAgICBjbGFzc05hbWU6ICdtYXJrZXItY2x1c3RlcicsXG4gICAgICAgICAgaWNvblNpemU6IG5ldyBMLlBvaW50KDQwLCA0MCksXG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICB9KSxcbiAgKTtcblxuICBjb25zdCBbd3d0cHNMYXllckdyb3VwXSA9IHVzZVN0YXRlKEwubGF5ZXJHcm91cCgpKTtcbiAgY29uc3QgW2NvbGxlY3RvcnNMYXllckdyb3VwXSA9IHVzZVN0YXRlKEwubGF5ZXJHcm91cCgpKTtcbiAgLy9jb25zdCBbZmFjdG9yaWVzTGF5ZXJHcm91cF0gPSB1c2VTdGF0ZShMLmxheWVyR3JvdXAoKSk7XG4gIGNvbnN0IFthcmVhc0xheWVyR3JvdXBdID0gdXNlU3RhdGUobmV3IEwuRmVhdHVyZUdyb3VwKCkpO1xuXG4gIGNvbnN0IG1lbW9pemVkUG9pbnRzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmXG4gICAgICBwb2ludHMgJiYgKFxuICAgICAgICA8UG9pbnRNYXJrZXJzXG4gICAgICAgICAgbWFwPXttYXBSZWYuY3VycmVudH1cbiAgICAgICAgICBwb2ludHM9e3BvaW50c31cbiAgICAgICAgICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM9e2luY2x1ZGVVbm1vbml0b3JlZFBvaW50c31cbiAgICAgICAgICByZXJlbmRlcj17em9vbUxldmVsc1ttYXBab29tTGV2ZWxdfVxuICAgICAgICAgIGZhY3Rvcmllc0dyb3VwPXtmYWN0b3JpZXNDbHVzdGVyR3JvdXB9XG4gICAgICAgICAgd3d0cHNHcm91cD17d3d0cHNMYXllckdyb3VwfVxuICAgICAgICAgIGNvbGxlY3RvcnNHcm91cD17Y29sbGVjdG9yc0xheWVyR3JvdXB9XG4gICAgICAgICAgZm9yRXZlbnRzVmlldz17ZmFsc2V9XG4gICAgICAgIC8+XG4gICAgICApXG4gICAgKTtcbiAgfSwgW21hcFJlZi5jdXJyZW50LCBwb2ludHMsIGZvY3VzZWRFdmVudFByZXNlbnQsIG1hcFpvb21MZXZlbF0pO1xuXG4gIC8vIGNvbnN0IGFjdGl2YXRlWm9vbUNvbnRyb2xGb3JJY29ucyA9IHVzZU1lbW8oKCkgPT4ge1xuICAvLyAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmIGljb25ab29tQ29udHJvbChtYXBSZWYuY3VycmVudCk7XG4gIC8vIH0sIFttYXBSZWYuY3VycmVudCwgcG9pbnRzLCBmb2N1c2VkRXZlbnRQcmVzZW50XSk7XG5cbiAgY29uc3Qgem9vbVJ1bGVzRm9yRXZlbnRzVmlldyA9ICgpID0+IHtcbiAgICBjb25zdCBwYXlsb2FkID0gKFxuICAgICAgPD5cbiAgICAgICAgPEVkZ2VzXG4gICAgICAgICAgZWRnZXM9e2VkZ2VzIX1cbiAgICAgICAgICBtYXA9e21hcFJlZi5jdXJyZW50fVxuICAgICAgICAgIEw9e0x9XG4gICAgICAgICAgcG9pbnRzPXtwb2ludHMhfVxuICAgICAgICAgIGhpZGVFZGdlcz17aGlkZUVkZ2VzfVxuICAgICAgICAgIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cz17aW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlc31cbiAgICAgICAgLz5cbiAgICAgICAge21lbW9pemVkUG9pbnRzfVxuICAgICAgPC8+XG4gICAgKTtcblxuICAgIHJldHVybiBwYXlsb2FkO1xuICB9O1xuXG4gIGNvbnN0IHpvb21SdWxlc0ZvckRhc2hhYm9hcmRNYXBzID0gKCkgPT4ge1xuICAgIGxldCBwYXlsb2FkID0gPD57bWVtb2l6ZWRQb2ludHN9PC8+O1xuICAgIHN3aXRjaCAoem9vbUxldmVsc1ttYXBab29tTGV2ZWxdKSB7XG4gICAgICBjYXNlICdTbWFsbCc6XG4gICAgICBjYXNlICdNZWRpdW0nOlxuICAgICAgICBwYXlsb2FkID0gem9vbVJ1bGVzRm9yRXZlbnRzVmlldygpO1xuICAgICAgICBicmVhaztcbiAgICAgIC8vIGNhc2UgJ01MYXJnZSc6XG4gICAgICAvLyBjYXNlICdMYXJnZSc6XG4gICAgICAvLyBjYXNlICdYTGFyZ2UnOlxuICAgICAgLy8gZGVmYXVsdDpcbiAgICAgIC8vICAgcGF5bG9hZCA9IDw+e21lbW9pemVkUG9pbnRzfTwvPjtcbiAgICAgIC8vICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBheWxvYWQ7XG4gIH07XG5cbiAgY29uc3QgbWVtb2l6ZWRab29tQ29udHJvbCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IHBheWxvYWQgPSBmb3JFdmVudHNWaWV3XG4gICAgICA/IHpvb21SdWxlc0ZvckV2ZW50c1ZpZXcoKVxuICAgICAgOiB6b29tUnVsZXNGb3JEYXNoYWJvYXJkTWFwcygpO1xuXG4gICAgcmV0dXJuIHBheWxvYWQ7XG4gIH0sIFtcbiAgICBtYXBab29tTGV2ZWwsXG4gICAgZXZlbnRzRGF0YS5pc0ZldGNoaW5nLFxuICAgIGZvY3VzZWRFdmVudCxcbiAgICBob3ZlcmVkRXZlbnQsXG4gICAgcG9pbnRzLFxuICAgIG1hcFJlZi5jdXJyZW50LFxuICBdKTtcblxuICBjb25zdCBtZW1vaXplZEV2ZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGZvY3VzZWRFdmVudFByZXNlbnQpIHtcbiAgICAgIGZvY3VzZWRFdmVudCEuZm9jdXNlZCA9IGZvY3VzZWRFdmVudFByZXNlbnQ7XG4gICAgICBmb2N1c2VkRXZlbnQhLmhvdmVyZWQgPSAhZm9jdXNlZEV2ZW50UHJlc2VudDtcbiAgICB9XG5cbiAgICBpZiAoaG92ZXJlZEV2ZW50UHJlc2VudCkge1xuICAgICAgaG92ZXJlZEV2ZW50IS5ob3ZlcmVkID0gaG92ZXJlZEV2ZW50UHJlc2VudDtcbiAgICAgIGhvdmVyZWRFdmVudCEuZm9jdXNlZCA9ICFob3ZlcmVkRXZlbnRQcmVzZW50O1xuICAgIH1cblxuICAgIGlmICghaG92ZXJlZEV2ZW50UHJlc2VudCAmJiAhZm9jdXNlZEV2ZW50UHJlc2VudCkgcmV0dXJuIDw+PC8+O1xuICAgIHJldHVybiAoXG4gICAgICA8RXZlbnRcbiAgICAgICAgZXZlbnQ9e2ZvY3VzZWRFdmVudCEgfHwgaG92ZXJlZEV2ZW50IX1cbiAgICAgICAgbWFwPXttYXB9XG4gICAgICAgIGVkZ2VzPXtlZGdlcyF9XG4gICAgICAgIHBvaW50cz17cG9pbnRzIX1cbiAgICAgICAgaW5jbHVkZU5ldHdvcms9eyFob3ZlcmVkRXZlbnRQcmVzZW50fVxuICAgICAgLz5cbiAgICApO1xuICB9LCBbZm9jdXNlZEV2ZW50LCBob3ZlcmVkRXZlbnQsIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW1dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiBmdW5jdGlvbiBjbGVhbnVwKCkge1xuICAgICAgY29sbGVjdG9yc0xheWVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIG1hcFJlZi5jdXJyZW50Py5yZW1vdmVMYXllcihjb2xsZWN0b3JzTGF5ZXJHcm91cCk7XG4gICAgfTtcbiAgfSwgW2ZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50LCBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpbml0aWFsaXplTWFwKFxuICAgICAgbWFwWm9vbUxldmVsLFxuICAgICAgbWFwQm94U3R5bGUsXG4gICAgICBsZWFmbGV0TWFwLnNhdGVsbGl0ZSxcbiAgICAgIG1hcFJlZixcbiAgICAgIGRpc3BhdGNoLFxuICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICBhcmVhVG9DZW50ZXJCeSxcbiAgICAgIHNldE1hcFpvb21MZXZlbCxcbiAgICAgIGZvcldXVFBEYXNoYm9hcmQsXG4gICAgKTtcblxuICAgIHJldHVybiBmdW5jdGlvbiBjbGVhbnVwKCkge1xuICAgICAgLy8gZmFjdG9yaWVzQ2x1c3Rlckdyb3VwLmNsZWFyTGF5ZXJzKCk7XG4gICAgICAvLyB3d3Rwc0xheWVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIC8vIGNvbGxlY3RvcnNMYXllckdyb3VwLmNsZWFyTGF5ZXJzKCk7XG4gICAgICAvLyBhcmVhc0xheWVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIC8vIG1hcFJlZi5jdXJyZW50Py5yZW1vdmVMYXllcihmYWN0b3JpZXNDbHVzdGVyR3JvdXApO1xuICAgICAgLy8gbWFwUmVmLmN1cnJlbnQ/LnJlbW92ZUxheWVyKHd3dHBzTGF5ZXJHcm91cCk7XG4gICAgICAvLyBtYXBSZWYuY3VycmVudD8ucmVtb3ZlTGF5ZXIoY29sbGVjdG9yc0xheWVyR3JvdXApO1xuICAgICAgLy8gbWFwUmVmLmN1cnJlbnQ/LnJlbW92ZUxheWVyKGFyZWFzTGF5ZXJHcm91cCk7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBtYXBSZWYuY3VycmVudC5yZW1vdmUoKTtcbiAgICAgIC8vIGRpc3BhdGNoKHN0b3JlTWFwKHVuZGVmaW5lZCkpO1xuICAgIH07XG4gIH0sIFtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIW1hcFJlZi5jdXJyZW50KSB7XG4gICAgICBpbml0aWFsaXplTWFwKFxuICAgICAgICBtYXBab29tTGV2ZWwsXG4gICAgICAgIG1hcEJveFN0eWxlLFxuICAgICAgICBsZWFmbGV0TWFwLnNhdGVsbGl0ZSxcbiAgICAgICAgbWFwUmVmLFxuICAgICAgICBkaXNwYXRjaCxcbiAgICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICAgIGFyZWFUb0NlbnRlckJ5LFxuICAgICAgICBzZXRNYXBab29tTGV2ZWwsXG4gICAgICAgIGZvcldXVFBEYXNoYm9hcmQsXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBzZXRNYXBab29tTGV2ZWwobWFwUmVmLmN1cnJlbnQuZ2V0Wm9vbSgpKTtcbiAgICAgIGlmICghYXJlYVRvQ2VudGVyQnkpIHtcbiAgICAgICAgYXJlYVRvQ2VudGVyQnkgPSBhcmVhcy5tYXAoKGFyZWEpID0+IGFyZWEuc2hhcGVfZGF0YSkuZmxhdCgpO1xuICAgICAgfVxuXG4gICAgICBhcmVhRm9jdXNMb2dpYyhtYXBSZWYsIGlzVmFsaWRBcmVhLCBhcmVhVG9DZW50ZXJCeSk7XG4gICAgfVxuICB9LCBbbWFwUmVmLmN1cnJlbnQsIGFyZWFUb0NlbnRlckJ5XSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBsZXQgY2xpY2tlZCA9IGZhbHNlO1xuXG4gICAgbWFwUmVmLmN1cnJlbnQ/LmVhY2hMYXllcigobGF5ZXIpID0+IHtcbiAgICAgIGlmIChjbGlja2VkKSByZXR1cm47XG5cbiAgICAgIGlmIChcbiAgICAgICAgbGF5ZXI/LmthbmRvX29iamVjdF9pZCA9PT0gc2VsZWN0ZWRJdGVtICYmXG4gICAgICAgIGxheWVyLmlzUG9wdXBPcGVuKCkgPT09IGZhbHNlXG4gICAgICApIHtcbiAgICAgICAgaWYgKGxheWVyIGluc3RhbmNlb2YgTC5NYXJrZXIpIHtcbiAgICAgICAgICBsYXllci5maXJlKCdjbGljaycpO1xuICAgICAgICB9IGVsc2UgaWYgKGxheWVyIGluc3RhbmNlb2YgTC5Qb2x5Z29uKSB7XG4gICAgICAgICAgbGF5ZXIuZmlyZSgnY2xpY2stZXZlbnQnKTtcbiAgICAgICAgfVxuICAgICAgICBjbGlja2VkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSwgW3NlbGVjdGVkSXRlbV0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJrZC1tYXAtY29udGFpbmVyXCIgc3R5bGU9e3N0eWxlfT5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXtgIG1hcC1jb250YWluZXIgJHtcbiAgICAgICAgICBnbG9iYWxfZGF0YS5zaWRlbmF2RXhwYW5kZWQgPyAnJyA6ICdtYXAtY29udGFpbmVyLS1zaWRlbmF2LWNvbGxhcHNlZCdcbiAgICAgICAgfWB9XG4gICAgICA+XG4gICAgICAgIDxFcnJvckJvdW5kYXJ5PlxuICAgICAgICAgIDxkaXYgaWQ9XCJtYXBcIj48L2Rpdj5cbiAgICAgICAgICB7c2hvdWxkTG9hZE1hcE9iamVjdHMoZ2xvYmFsX2RhdGEsIG1hcFJlZiwgZWRnZXMsIHBvaW50cykgJiYgKFxuICAgICAgICAgICAgPEFyZWFQb2x5Z29uc1xuICAgICAgICAgICAgICBhcmVhcz17YXJlYXN9XG4gICAgICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgICAgIEw9e0x9XG4gICAgICAgICAgICAgIGFyZWFUb0NlbnRlckJ5PXthcmVhVG9DZW50ZXJCeX1cbiAgICAgICAgICAgICAgbWFwWm9vbT17bWFwWm9vbUxldmVsfVxuICAgICAgICAgICAgICByZXJlbmRlcj17em9vbUxldmVsc1ttYXBab29tTGV2ZWxdfVxuICAgICAgICAgICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICAgICAgICAgIGZlYXR1cmVHcm91cD17YXJlYXNMYXllckdyb3VwfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIHtzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzKFxuICAgICAgICAgICAgZWRnZXMsXG4gICAgICAgICAgICBhcmVhcyxcbiAgICAgICAgICAgIGdsb2JhbF9kYXRhLFxuICAgICAgICAgICAgbWFwUmVmLFxuICAgICAgICAgICAgcG9pbnRzLFxuICAgICAgICAgICkgJiYgKFxuICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAge21lbW9pemVkRXZlbnR9XG4gICAgICAgICAgICAgIHttZW1vaXplZFpvb21Db250cm9sfVxuICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApfVxuICAgICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBLElBQUFBLENBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBQSxPQUFBO0FBQ0FBLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFGLHVCQUFBLENBQUFDLE9BQUE7QUFPQSxJQUFBRSxXQUFBLEdBQUFGLE9BQUE7QUFPQSxJQUFBRyxjQUFBLEdBQUFDLHNCQUFBLENBQUFKLE9BQUE7QUFDQSxJQUFBSyxhQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxNQUFBLEdBQUFGLHNCQUFBLENBQUFKLE9BQUE7QUFDQUEsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQU8sYUFBQSxHQUFBUCxPQUFBO0FBRUEsSUFBQVEsTUFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsU0FBQSxHQUFBVCxPQUFBO0FBUUEsSUFBQVUsTUFBQSxHQUFBVixPQUFBO0FBQ0EsSUFBQVcsS0FBQSxHQUFBUCxzQkFBQSxDQUFBSixPQUFBO0FBQ0EsSUFBQVksWUFBQSxHQUFBWixPQUFBO0FBQXFFLFNBQUFhLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlC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