@centreon/ui 26.3.4 → 26.3.6

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 (644) hide show
  1. package/package.json +1 -1
  2. package/src/ActionsList/ActionsList.styles.ts +2 -2
  3. package/src/ActionsList/index.stories.tsx +2 -3
  4. package/src/ActionsList/index.tsx +8 -9
  5. package/src/Button/Icon/index.stories.tsx +5 -5
  6. package/src/Button/Icon/index.tsx +3 -3
  7. package/src/Button/Save/index.stories.tsx +8 -8
  8. package/src/Button/Save/index.tsx +5 -6
  9. package/src/Button/Save/useSave.tsx +10 -8
  10. package/src/Checkbox/Checkbox.tsx +6 -6
  11. package/src/Checkbox/CheckboxGroup/index.stories.tsx +1 -1
  12. package/src/Checkbox/CheckboxGroup/index.tsx +6 -7
  13. package/src/Checkbox/index.stories.tsx +3 -3
  14. package/src/Checkbox/index.tsx +1 -1
  15. package/src/Colors/index.stories.tsx +2 -3
  16. package/src/Colors/index.tsx +6 -6
  17. package/src/ContentWithCircularProgress/index.stories.tsx +5 -5
  18. package/src/ContentWithCircularProgress/index.tsx +2 -3
  19. package/src/Dashboard/Dashboard.styles.ts +39 -39
  20. package/src/Dashboard/DashboardLayout.stories.tsx +3 -4
  21. package/src/Dashboard/Grid.tsx +7 -9
  22. package/src/Dashboard/Item.tsx +15 -15
  23. package/src/Dashboard/Layout.tsx +16 -14
  24. package/src/Dashboard/utils.ts +1 -1
  25. package/src/Dialog/Confirm/index.stories.tsx +1 -1
  26. package/src/Dialog/Confirm/index.tsx +3 -3
  27. package/src/Dialog/Duplicate/index.stories.tsx +3 -3
  28. package/src/Dialog/Duplicate/index.test.tsx +90 -90
  29. package/src/Dialog/Duplicate/index.tsx +7 -8
  30. package/src/Dialog/UnsavedChanges/index.stories.tsx +3 -4
  31. package/src/Dialog/UnsavedChanges/index.tsx +1 -2
  32. package/src/Dialog/UnsavedChanges/translatedLabels.ts +5 -5
  33. package/src/Dialog/UnsavedChanges/useUnsavedChanges.ts +1 -2
  34. package/src/Dialog/index.stories.tsx +4 -5
  35. package/src/Dialog/index.tsx +9 -10
  36. package/src/FallbackPage/FallbackPage.stories.tsx +1 -1
  37. package/src/FallbackPage/FallbackPage.tsx +2 -3
  38. package/src/FileDropZone/index.stories.tsx +8 -9
  39. package/src/FileDropZone/index.tsx +12 -13
  40. package/src/FileDropZone/useDropzone.test.ts +5 -2
  41. package/src/FileDropZone/useDropzone.ts +6 -8
  42. package/src/Form/CollapsibleGroup.tsx +18 -13
  43. package/src/Form/Form.cypress.spec.tsx +12 -13
  44. package/src/Form/Form.stories.tsx +5 -5
  45. package/src/Form/Form.tsx +8 -8
  46. package/src/Form/FormButtons.tsx +5 -7
  47. package/src/Form/Inputs/Autocomplete.tsx +13 -15
  48. package/src/Form/Inputs/Checkbox.tsx +5 -7
  49. package/src/Form/Inputs/CheckboxGroup.tsx +7 -9
  50. package/src/Form/Inputs/ConnectedAutocomplete.tsx +27 -21
  51. package/src/Form/Inputs/Custom.tsx +1 -1
  52. package/src/Form/Inputs/FieldsTable/FieldsTable.tsx +18 -17
  53. package/src/Form/Inputs/FieldsTable/Row.tsx +7 -8
  54. package/src/Form/Inputs/File.tsx +12 -10
  55. package/src/Form/Inputs/Grid.tsx +8 -7
  56. package/src/Form/Inputs/List/Content.tsx +4 -6
  57. package/src/Form/Inputs/List/List.styles.ts +1 -1
  58. package/src/Form/Inputs/List/List.tsx +6 -8
  59. package/src/Form/Inputs/List/useList.ts +5 -6
  60. package/src/Form/Inputs/LoadingSkeleton.tsx +1 -2
  61. package/src/Form/Inputs/PasswordEndAdornment.tsx +3 -3
  62. package/src/Form/Inputs/Radio.tsx +11 -12
  63. package/src/Form/Inputs/Switch.tsx +9 -11
  64. package/src/Form/Inputs/Text.tsx +18 -20
  65. package/src/Form/Inputs/index.tsx +20 -17
  66. package/src/Form/Inputs/models.ts +5 -5
  67. package/src/Form/Section/FormSection.tsx +12 -10
  68. package/src/Form/Section/PanelTabs.tsx +8 -4
  69. package/src/Form/storiesData.tsx +19 -20
  70. package/src/Graph/BarChart/Bar.tsx +126 -0
  71. package/src/Graph/BarChart/BarChart.cypress.spec.tsx +13 -14
  72. package/src/Graph/BarChart/BarChart.stories.tsx +30 -29
  73. package/src/Graph/BarChart/BarChart.tsx +20 -20
  74. package/src/Graph/BarChart/BarGroup.tsx +12 -12
  75. package/src/Graph/BarChart/BarStack.tsx +30 -103
  76. package/src/Graph/BarChart/MemoizedGroup.tsx +10 -9
  77. package/src/Graph/BarChart/ResponsiveBarChart.tsx +110 -116
  78. package/src/Graph/BarChart/Tooltip/BarChartTooltip.tsx +7 -8
  79. package/src/Graph/BarChart/atoms.ts +1 -1
  80. package/src/Graph/BarChart/models.ts +1 -1
  81. package/src/Graph/BarChart/useBarStack.ts +5 -7
  82. package/src/Graph/BarStack/BarStack.cypress.spec.tsx +3 -3
  83. package/src/Graph/BarStack/BarStack.stories.tsx +13 -14
  84. package/src/Graph/BarStack/BarStack.styles.ts +25 -24
  85. package/src/Graph/BarStack/BarStack.tsx +1 -2
  86. package/src/Graph/BarStack/Graph.tsx +42 -24
  87. package/src/Graph/BarStack/GraphAndLegend.tsx +10 -9
  88. package/src/Graph/BarStack/ResponsiveBarStack.tsx +21 -20
  89. package/src/Graph/BarStack/useGraphAndLegend.ts +4 -3
  90. package/src/Graph/BarStack/useResponsiveBarStack.ts +9 -11
  91. package/src/Graph/Chart/BasicComponents/Lines/RegularLines/index.tsx +3 -4
  92. package/src/Graph/Chart/BasicComponents/Lines/RegularLines/useRegularLines.ts +1 -1
  93. package/src/Graph/Chart/BasicComponents/Lines/StackedLines/index.tsx +11 -11
  94. package/src/Graph/Chart/BasicComponents/Lines/StackedLines/useStackedLines.ts +3 -3
  95. package/src/Graph/Chart/BasicComponents/Lines/Threshold/BasicThreshold.tsx +1 -1
  96. package/src/Graph/Chart/BasicComponents/Lines/Threshold/Circle.tsx +1 -1
  97. package/src/Graph/Chart/BasicComponents/Lines/Threshold/ThresholdWithPatternLines.tsx +5 -6
  98. package/src/Graph/Chart/BasicComponents/Lines/Threshold/ThresholdWithVariation.tsx +3 -4
  99. package/src/Graph/Chart/BasicComponents/Lines/Threshold/helpers/index.ts +1 -1
  100. package/src/Graph/Chart/BasicComponents/Lines/Threshold/index.tsx +1 -2
  101. package/src/Graph/Chart/BasicComponents/Lines/Threshold/useCoordinateCircle.ts +3 -4
  102. package/src/Graph/Chart/BasicComponents/Lines/Threshold/useScaleThreshold.ts +6 -7
  103. package/src/Graph/Chart/BasicComponents/Lines/index.tsx +10 -12
  104. package/src/Graph/Chart/BasicComponents/Lines/models.ts +4 -5
  105. package/src/Graph/Chart/Chart.cypress.spec.tsx +33 -36
  106. package/src/Graph/Chart/Chart.stories.tsx +51 -54
  107. package/src/Graph/Chart/Chart.styles.ts +2 -2
  108. package/src/Graph/Chart/Chart.tsx +111 -108
  109. package/src/Graph/Chart/InteractiveComponents/AnchorPoint/GuidingLines.tsx +3 -3
  110. package/src/Graph/Chart/InteractiveComponents/AnchorPoint/RegularAnchorPoint.tsx +7 -9
  111. package/src/Graph/Chart/InteractiveComponents/AnchorPoint/StackedAnchorPoint.tsx +7 -9
  112. package/src/Graph/Chart/InteractiveComponents/AnchorPoint/models.ts +2 -2
  113. package/src/Graph/Chart/InteractiveComponents/AnchorPoint/useTickGraph.ts +20 -18
  114. package/src/Graph/Chart/InteractiveComponents/Annotations/Annotation/Area.tsx +11 -8
  115. package/src/Graph/Chart/InteractiveComponents/Annotations/Annotation/Line.tsx +8 -5
  116. package/src/Graph/Chart/InteractiveComponents/Annotations/Annotation/index.tsx +7 -6
  117. package/src/Graph/Chart/InteractiveComponents/Annotations/Area/Downtime.tsx +4 -4
  118. package/src/Graph/Chart/InteractiveComponents/Annotations/EventAnnotations.tsx +3 -3
  119. package/src/Graph/Chart/InteractiveComponents/Annotations/Line/Acknowledgement.tsx +4 -4
  120. package/src/Graph/Chart/InteractiveComponents/Annotations/Line/Comments.tsx +4 -4
  121. package/src/Graph/Chart/InteractiveComponents/Annotations/annotationsAtoms.ts +7 -7
  122. package/src/Graph/Chart/InteractiveComponents/Annotations/index.tsx +3 -4
  123. package/src/Graph/Chart/InteractiveComponents/Annotations/models.ts +1 -1
  124. package/src/Graph/Chart/InteractiveComponents/Annotations/useAnnotation.ts +12 -8
  125. package/src/Graph/Chart/InteractiveComponents/Bar.tsx +1 -1
  126. package/src/Graph/Chart/InteractiveComponents/GraphValueTooltip/GraphValueTooltip.tsx +3 -4
  127. package/src/Graph/Chart/InteractiveComponents/GraphValueTooltip/GraphValueTooltipContent.tsx +3 -4
  128. package/src/Graph/Chart/InteractiveComponents/GraphValueTooltip/useGraphValueTooltip.ts +3 -3
  129. package/src/Graph/Chart/InteractiveComponents/TimeShiftZones/TimeShiftIcon.tsx +4 -4
  130. package/src/Graph/Chart/InteractiveComponents/TimeShiftZones/TimeShiftZone.tsx +6 -8
  131. package/src/Graph/Chart/InteractiveComponents/TimeShiftZones/index.tsx +6 -8
  132. package/src/Graph/Chart/InteractiveComponents/TimeShiftZones/models.ts +1 -1
  133. package/src/Graph/Chart/InteractiveComponents/TimeShiftZones/useTimeShiftZones.ts +42 -31
  134. package/src/Graph/Chart/InteractiveComponents/Tooltip/index.tsx +13 -12
  135. package/src/Graph/Chart/InteractiveComponents/Tooltip/useGraphTooltip.ts +14 -8
  136. package/src/Graph/Chart/InteractiveComponents/ZoomPreview/index.tsx +6 -7
  137. package/src/Graph/Chart/InteractiveComponents/ZoomPreview/models.ts +3 -3
  138. package/src/Graph/Chart/InteractiveComponents/ZoomPreview/useZoomPreview.ts +8 -8
  139. package/src/Graph/Chart/InteractiveComponents/index.tsx +25 -27
  140. package/src/Graph/Chart/InteractiveComponents/interactionWithGraphAtoms.ts +2 -2
  141. package/src/Graph/Chart/Legend/LegendContent.tsx +2 -2
  142. package/src/Graph/Chart/Legend/LegendHeader.tsx +3 -3
  143. package/src/Graph/Chart/Legend/index.tsx +21 -22
  144. package/src/Graph/Chart/Legend/useLegend.ts +3 -4
  145. package/src/Graph/Chart/LoadingSkeleton.tsx +2 -2
  146. package/src/Graph/Chart/common/index.ts +2 -2
  147. package/src/Graph/Chart/graphAtoms.ts +1 -1
  148. package/src/Graph/Chart/helpers/index.ts +4 -1
  149. package/src/Graph/Chart/index.tsx +36 -35
  150. package/src/Graph/Chart/models.ts +2 -4
  151. package/src/Graph/Chart/useChartData.ts +5 -7
  152. package/src/Graph/Gauge/AnimatedPie.tsx +4 -4
  153. package/src/Graph/Gauge/Gauge.cypress.spec.tsx +1 -2
  154. package/src/Graph/Gauge/Gauge.stories.tsx +1 -2
  155. package/src/Graph/Gauge/Gauge.tsx +5 -5
  156. package/src/Graph/Gauge/PieData.tsx +3 -4
  157. package/src/Graph/Gauge/ResponsiveGauge.tsx +5 -6
  158. package/src/Graph/Gauge/Thresholds.tsx +3 -3
  159. package/src/Graph/Gauge/models.ts +2 -2
  160. package/src/Graph/Gauge/useResizeObserver.ts +4 -4
  161. package/src/Graph/HeatMap/HeatMap.cypress.spec.tsx +3 -4
  162. package/src/Graph/HeatMap/HeatMap.stories.tsx +3 -4
  163. package/src/Graph/HeatMap/HeatMap.tsx +1 -2
  164. package/src/Graph/HeatMap/HeatMapData.json +60 -60
  165. package/src/Graph/HeatMap/ResponsiveHeatMap.tsx +8 -10
  166. package/src/Graph/Legend/Legend.styles.ts +1 -1
  167. package/src/Graph/Legend/Legend.tsx +4 -4
  168. package/src/Graph/PieChart/PieChart.cypress.spec.tsx +1 -1
  169. package/src/Graph/PieChart/PieChart.stories.tsx +4 -4
  170. package/src/Graph/PieChart/PieChart.tsx +1 -2
  171. package/src/Graph/PieChart/ResponsivePie.tsx +43 -41
  172. package/src/Graph/PieChart/useResponsivePie.ts +2 -3
  173. package/src/Graph/SingleBar/ResponsiveSingleBar.tsx +39 -18
  174. package/src/Graph/SingleBar/SingleBar.cypress.spec.tsx +26 -2
  175. package/src/Graph/SingleBar/SingleBar.stories.tsx +51 -3
  176. package/src/Graph/SingleBar/SingleBar.tsx +2 -2
  177. package/src/Graph/SingleBar/ThresholdLine.tsx +46 -37
  178. package/src/Graph/SingleBar/Thresholds.tsx +11 -4
  179. package/src/Graph/SingleBar/models.ts +3 -1
  180. package/src/Graph/Text/Text.cypress.spec.tsx +1 -2
  181. package/src/Graph/Text/Text.stories.tsx +1 -2
  182. package/src/Graph/Text/Text.tsx +7 -8
  183. package/src/Graph/Timeline/ResponsiveTimeline.tsx +34 -31
  184. package/src/Graph/Timeline/Timeline.cypress.spec.tsx +22 -20
  185. package/src/Graph/Timeline/Timeline.stories.tsx +19 -18
  186. package/src/Graph/Timeline/Timeline.tsx +4 -4
  187. package/src/Graph/Timeline/timeline.styles.ts +3 -3
  188. package/src/Graph/Timeline/useTimeline.ts +19 -15
  189. package/src/Graph/Tree/DescendantNodes.tsx +3 -4
  190. package/src/Graph/Tree/Links.tsx +5 -5
  191. package/src/Graph/Tree/StandaloneTree.tsx +2 -2
  192. package/src/Graph/Tree/Tree.cypress.spec.tsx +6 -7
  193. package/src/Graph/Tree/Tree.stories.tsx +8 -11
  194. package/src/Graph/Tree/Tree.tsx +6 -8
  195. package/src/Graph/Tree/index.ts +2 -2
  196. package/src/Graph/Tree/stories/contents.tsx +8 -9
  197. package/src/Graph/Tree/stories/datas.ts +1 -1
  198. package/src/Graph/Tree/utils.ts +1 -1
  199. package/src/Graph/common/Axes/UnitLabel.tsx +1 -2
  200. package/src/Graph/common/Axes/index.tsx +6 -7
  201. package/src/Graph/common/Axes/models.ts +2 -2
  202. package/src/Graph/common/Axes/useAxisY.ts +2 -4
  203. package/src/Graph/common/BaseChart/AdditionalLine.tsx +5 -4
  204. package/src/Graph/common/BaseChart/BaseChart.tsx +15 -11
  205. package/src/Graph/common/BaseChart/ChartSvgWrapper.tsx +7 -6
  206. package/src/Graph/common/BaseChart/Header/index.tsx +4 -4
  207. package/src/Graph/common/BaseChart/Header/useHeaderStyles.ts +2 -2
  208. package/src/Graph/common/BaseChart/useComputeBaseChartDimensions.ts +2 -3
  209. package/src/Graph/common/BaseChart/useComputeYAxisMaxCharacters.ts +12 -11
  210. package/src/Graph/common/Grids/index.tsx +3 -4
  211. package/src/Graph/common/Thresholds/ThresholdLine.tsx +13 -10
  212. package/src/Graph/common/Thresholds/Thresholds.tsx +3 -4
  213. package/src/Graph/common/models.ts +1 -1
  214. package/src/Graph/common/timeSeries/index.test.ts +32 -33
  215. package/src/Graph/common/timeSeries/index.ts +26 -27
  216. package/src/Graph/common/timeSeries/models.ts +2 -2
  217. package/src/Graph/common/useMarginTop.ts +5 -1
  218. package/src/Graph/common/utils.ts +12 -12
  219. package/src/Graph/index.ts +11 -11
  220. package/src/Graph/mockedData/annotationData.json +141 -141
  221. package/src/Graph/mockedData/curvesWithSameColor.json +97 -97
  222. package/src/Graph/mockedData/dataWithMissingPoint.json +34 -34
  223. package/src/Graph/mockedData/exclusionPeriodFirstPeriod.json +210 -210
  224. package/src/Graph/mockedData/exclusionPeriodSecondPeriod.json +210 -210
  225. package/src/Graph/mockedData/exclusionPeriodThirdPeriod.json +210 -210
  226. package/src/Graph/mockedData/lastDay.json +94 -94
  227. package/src/Graph/mockedData/lastDayAreaStack.json +325 -325
  228. package/src/Graph/mockedData/lastDayForward.json +108 -108
  229. package/src/Graph/mockedData/lastDayThreshold.json +210 -210
  230. package/src/Graph/mockedData/lastDayWithIncompleteValues.json +94 -94
  231. package/src/Graph/mockedData/lastDayWithLotOfUnits.json +125 -125
  232. package/src/Graph/mockedData/lastDayWithNullValues.json +94 -94
  233. package/src/Graph/mockedData/lastMonth.json +108 -108
  234. package/src/Graph/mockedData/lastWeek.json +108 -108
  235. package/src/Graph/mockedData/pingService.json +107 -107
  236. package/src/Graph/mockedData/pingServiceLinesBars.json +114 -114
  237. package/src/Graph/mockedData/pingServiceLinesBarsMixed.json +114 -114
  238. package/src/Graph/mockedData/pingServiceLinesBarsStacked.json +114 -114
  239. package/src/Graph/mockedData/pingServiceMixedStacked.json +109 -109
  240. package/src/Graph/mockedData/pingServiceStacked.json +109 -109
  241. package/src/Graph/mockedData/pingServiceWithStackedKeys.json +88 -88
  242. package/src/Graph/mockedData/zoomPreview.json +108 -108
  243. package/src/Icon/AcknowledgementIcon.tsx +2 -2
  244. package/src/Icon/BaseIcon.tsx +3 -3
  245. package/src/Icon/BusinessActivityIcon.tsx +2 -2
  246. package/src/Icon/ContainerIcon.tsx +1 -1
  247. package/src/Icon/DowntimeIcon.tsx +2 -2
  248. package/src/Icon/FlappingIcon.tsx +2 -2
  249. package/src/Icon/HostGroupIcon.tsx +2 -2
  250. package/src/Icon/HostIcon.tsx +2 -2
  251. package/src/Icon/IconAttach/index.stories.tsx +2 -2
  252. package/src/Icon/MetaServiceIcon.tsx +2 -2
  253. package/src/Icon/RegexIcon.tsx +5 -3
  254. package/src/Icon/ServiceGroupIcon.tsx +2 -2
  255. package/src/Icon/ServiceIcon.tsx +2 -2
  256. package/src/Icon/index.ts +6 -6
  257. package/src/Image/Image.tsx +1 -2
  258. package/src/Image/index.stories.tsx +1 -2
  259. package/src/Image/index.test.tsx +45 -45
  260. package/src/Image/useLoadImage.ts +1 -1
  261. package/src/InputField/Number/Number.cypress.spec.tsx +3 -3
  262. package/src/InputField/Number/Number.stories.tsx +8 -6
  263. package/src/InputField/Number/Number.tsx +7 -8
  264. package/src/InputField/Search/PersistentTooltip.tsx +6 -7
  265. package/src/InputField/Search/RegexpHelpTooltip.tsx +2 -3
  266. package/src/InputField/Search/index.stories.tsx +1 -2
  267. package/src/InputField/Search/index.tsx +1 -1
  268. package/src/InputField/Select/Autocomplete/Connected/Multi/MultiConnectedAutocompleteField.cypress.spec.tsx +3 -2
  269. package/src/InputField/Select/Autocomplete/Connected/Multi/Popover.tsx +0 -1
  270. package/src/InputField/Select/Autocomplete/Connected/Multi/index.tsx +1 -1
  271. package/src/InputField/Select/Autocomplete/Connected/Single.tsx +0 -1
  272. package/src/InputField/Select/Autocomplete/Connected/index.stories.tsx +2 -3
  273. package/src/InputField/Select/Autocomplete/Connected/index.test.tsx +107 -107
  274. package/src/InputField/Select/Autocomplete/Connected/index.tsx +43 -36
  275. package/src/InputField/Select/Autocomplete/Draggable/Multi.tsx +0 -1
  276. package/src/InputField/Select/Autocomplete/Draggable/MultiConnected.tsx +0 -1
  277. package/src/InputField/Select/Autocomplete/Draggable/SortableList.tsx +6 -8
  278. package/src/InputField/Select/Autocomplete/Draggable/SortableListContent.tsx +11 -11
  279. package/src/InputField/Select/Autocomplete/Draggable/index.stories.tsx +7 -10
  280. package/src/InputField/Select/Autocomplete/Draggable/index.tsx +19 -20
  281. package/src/InputField/Select/Autocomplete/Multi/Listbox.tsx +7 -6
  282. package/src/InputField/Select/Autocomplete/Multi/Multi.styles.ts +7 -7
  283. package/src/InputField/Select/Autocomplete/Multi/Multi.tsx +16 -16
  284. package/src/InputField/Select/Autocomplete/Multi/Popover.tsx +0 -1
  285. package/src/InputField/Select/Autocomplete/Multi/index.stories.tsx +3 -4
  286. package/src/InputField/Select/Autocomplete/Popover/index.tsx +10 -11
  287. package/src/InputField/Select/Autocomplete/autoComplete.styles.ts +3 -3
  288. package/src/InputField/Select/Autocomplete/index.stories.tsx +5 -4
  289. package/src/InputField/Select/Autocomplete/index.tsx +41 -34
  290. package/src/InputField/Select/IconPopover/index.stories.tsx +1 -1
  291. package/src/InputField/Select/IconPopover/index.tsx +13 -15
  292. package/src/InputField/Select/Option.tsx +4 -5
  293. package/src/InputField/Select/index.stories.tsx +5 -5
  294. package/src/InputField/Select/index.tsx +11 -12
  295. package/src/InputField/Text/index.stories.tsx +6 -6
  296. package/src/InputField/Text/index.tsx +19 -21
  297. package/src/InputField/Text/useAutoSize.ts +10 -4
  298. package/src/LicenseMessage/index.stories.tsx +3 -3
  299. package/src/LicenseMessage/index.tsx +2 -2
  300. package/src/Listing/ActionBar/ColumnMultiSelect.tsx +7 -7
  301. package/src/Listing/ActionBar/Pagination.tsx +2 -3
  302. package/src/Listing/ActionBar/PaginationActions.tsx +7 -7
  303. package/src/Listing/ActionBar/index.tsx +22 -23
  304. package/src/Listing/Cell/DataCell.tsx +13 -16
  305. package/src/Listing/Cell/EllipsisTypography.tsx +1 -1
  306. package/src/Listing/Cell/index.tsx +17 -18
  307. package/src/Listing/Checkbox.tsx +1 -1
  308. package/src/Listing/Header/Cell/ListingHeaderCell.tsx +8 -9
  309. package/src/Listing/Header/Cell/SelectActionListingHeaderCell.tsx +6 -6
  310. package/src/Listing/Header/ListingHeader.tsx +30 -20
  311. package/src/Listing/Header/_internals/DraggableIconButton.tsx +2 -2
  312. package/src/Listing/Header/_internals/Label.tsx +3 -2
  313. package/src/Listing/Header/_internals/PredefinedSelectionList.tsx +1 -1
  314. package/src/Listing/Listing.cypress.spec.tsx +4 -5
  315. package/src/Listing/Row/EmptyRow.tsx +2 -2
  316. package/src/Listing/Row/Row.tsx +11 -11
  317. package/src/Listing/Row/SkeletonLoaderRows.tsx +0 -1
  318. package/src/Listing/index.stories.tsx +11 -13
  319. package/src/Listing/index.tsx +35 -36
  320. package/src/Listing/tableAtoms.ts +3 -3
  321. package/src/Listing/useResizeObserver.ts +2 -3
  322. package/src/Listing/useStyleTable.ts +7 -8
  323. package/src/ListingPage/Filter.tsx +3 -3
  324. package/src/ListingPage/FilterSkeleton.tsx +2 -2
  325. package/src/ListingPage/ListingSkeleton.tsx +2 -2
  326. package/src/ListingPage/index.stories.tsx +9 -12
  327. package/src/ListingPage/index.tsx +2 -4
  328. package/src/LoadingSkeleton/index.stories.tsx +3 -3
  329. package/src/LoadingSkeleton/index.tsx +1 -1
  330. package/src/Logo/CentreonLogo.stories.tsx +1 -1
  331. package/src/Logo/CentreonLogo.tsx +1 -3
  332. package/src/MenuSkeleton/index.stories.tsx +1 -1
  333. package/src/MenuSkeleton/index.tsx +2 -2
  334. package/src/Module/LicensedModule/LicenseCheck/decoder.ts +1 -1
  335. package/src/Module/LicensedModule/LicenseCheck/index.stories.tsx +3 -4
  336. package/src/Module/LicensedModule/LicenseCheck/index.tsx +1 -2
  337. package/src/Module/LicensedModule/index.tsx +2 -3
  338. package/src/Module/Module.cypress.spec.tsx +1 -3
  339. package/src/Module/index.tsx +4 -4
  340. package/src/MultiSelectEntries/index.stories.tsx +6 -6
  341. package/src/MultiSelectEntries/index.tsx +6 -8
  342. package/src/MultiSelectEntries/useHover.ts +4 -4
  343. package/src/PageSkeleton/BaseSkeleton.tsx +3 -4
  344. package/src/PageSkeleton/ContentSkeleton.tsx +3 -4
  345. package/src/PageSkeleton/index.stories.tsx +2 -2
  346. package/src/PageSkeleton/index.tsx +2 -3
  347. package/src/Pagination/Pagination.cypress.spec.tsx +14 -11
  348. package/src/Pagination/Pagination.stories.tsx +9 -8
  349. package/src/Pagination/Pagination.styles.ts +30 -30
  350. package/src/Pagination/Pagination.tsx +15 -14
  351. package/src/Panel/Memoized.tsx +1 -2
  352. package/src/Panel/Section/ExpandableSection.tsx +7 -7
  353. package/src/Panel/Section/index.stories.tsx +3 -3
  354. package/src/Panel/Section/index.test.tsx +50 -50
  355. package/src/Panel/Section/index.tsx +7 -8
  356. package/src/Panel/Tab.tsx +2 -2
  357. package/src/Panel/index.stories.tsx +2 -2
  358. package/src/Panel/index.tsx +29 -26
  359. package/src/ParentSize/ParentSize.tsx +1 -2
  360. package/src/PopoverMenu/index.tsx +8 -9
  361. package/src/Responsive/index.stories.tsx +2 -2
  362. package/src/Responsive/index.tsx +11 -5
  363. package/src/RichTextEditor/ContentEditable.tsx +15 -9
  364. package/src/RichTextEditor/RichTextEditor.cypress.spec.tsx +1 -1
  365. package/src/RichTextEditor/RichTextEditor.tsx +5 -5
  366. package/src/RichTextEditor/index.stories.tsx +4 -5
  367. package/src/RichTextEditor/index.ts +1 -1
  368. package/src/RichTextEditor/initialEditorState.json +3 -3
  369. package/src/RichTextEditor/plugins/AutoLinkPlugin/index.tsx +4 -5
  370. package/src/RichTextEditor/plugins/FloatingLinkEditorPlugin.tsx +13 -14
  371. package/src/RichTextEditor/plugins/ToolbarPlugin/AlignPicker.tsx +8 -10
  372. package/src/RichTextEditor/plugins/ToolbarPlugin/BlockButtons.tsx +4 -6
  373. package/src/RichTextEditor/plugins/ToolbarPlugin/FormatButtons.tsx +9 -11
  374. package/src/RichTextEditor/plugins/ToolbarPlugin/LinkButton.tsx +7 -9
  375. package/src/RichTextEditor/plugins/ToolbarPlugin/ListButton.tsx +3 -5
  376. package/src/RichTextEditor/plugins/ToolbarPlugin/MacrosButton.tsx +3 -4
  377. package/src/RichTextEditor/plugins/ToolbarPlugin/ToolbarPlugin.styles.ts +2 -2
  378. package/src/RichTextEditor/plugins/ToolbarPlugin/UndoRedoButtons.tsx +6 -8
  379. package/src/RichTextEditor/plugins/ToolbarPlugin/index.tsx +1 -0
  380. package/src/RichTextEditor/utils/getSelectedNode.ts +1 -1
  381. package/src/Snackbar/SnackbarProvider.tsx +5 -5
  382. package/src/Snackbar/Transition.tsx +6 -6
  383. package/src/Snackbar/index.stories.tsx +2 -3
  384. package/src/Snackbar/index.tsx +7 -8
  385. package/src/Snackbar/useSnackbar.tsx +3 -5
  386. package/src/SortableItems/Item.tsx +1 -1
  387. package/src/SortableItems/SortableItem.tsx +0 -1
  388. package/src/SortableItems/index.stories.tsx +14 -11
  389. package/src/SortableItems/index.tsx +38 -41
  390. package/src/StatusChip/index.stories.tsx +3 -3
  391. package/src/StatusChip/index.tsx +3 -4
  392. package/src/StoryBookThemeProvider/index.tsx +7 -7
  393. package/src/ThemeProvider/base.css +1 -1
  394. package/src/ThemeProvider/index.tsx +13 -14
  395. package/src/ThemeProvider/palettes.ts +10 -9
  396. package/src/TimePeriods/CustomTimePeriod/CompactCustomTimePeriod.tsx +4 -5
  397. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/ErrorText.tsx +1 -1
  398. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/PickersStartEndDate.tsx +8 -8
  399. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/index.tsx +7 -7
  400. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/models.ts +3 -4
  401. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/usePickersStartEndDate.ts +5 -7
  402. package/src/TimePeriods/CustomTimePeriod/SimpleCustomTimePeriod.tsx +3 -3
  403. package/src/TimePeriods/CustomTimePeriod/index.tsx +2 -4
  404. package/src/TimePeriods/DateTimePickerInput.tsx +8 -9
  405. package/src/TimePeriods/ResolutionTimePeriod.cypress.spec.tsx +8 -8
  406. package/src/TimePeriods/SelectedTimePeriod.tsx +9 -9
  407. package/src/TimePeriods/TimePeriods.cypress.spec.tsx +10 -8
  408. package/src/TimePeriods/TimePeriods.tsx +4 -3
  409. package/src/TimePeriods/helpers/index.ts +4 -4
  410. package/src/TimePeriods/index.stories.tsx +6 -7
  411. package/src/TimePeriods/index.tsx +3 -3
  412. package/src/TimePeriods/models.ts +1 -2
  413. package/src/TimePeriods/timePeriodsAtoms.ts +2 -2
  414. package/src/TimePeriods/useSortTimePeriods.ts +2 -2
  415. package/src/TimePeriods/useTimePeriod.ts +11 -7
  416. package/src/TopCounterElements/ResourceCounters.tsx +3 -4
  417. package/src/TopCounterElements/ResourceSubMenu.tsx +7 -7
  418. package/src/TopCounterElements/StatusCounter.tsx +5 -5
  419. package/src/TopCounterElements/TopCounterLayout.tsx +4 -5
  420. package/src/TopCounterElements/index.tsx +3 -3
  421. package/src/TopCounterElements/useCloseOnLegacyPage.tsx +3 -4
  422. package/src/Typography/EllipsisTypography.tsx +2 -2
  423. package/src/Typography/FluidTypography/index.stories.tsx +3 -3
  424. package/src/Typography/FluidTypography/index.tsx +1 -1
  425. package/src/Typography/Subtitle.tsx +6 -13
  426. package/src/Typography/Typography.stories.tsx +1 -1
  427. package/src/Typography/story.utils.tsx +4 -4
  428. package/src/WallpaperPage/index.stories.tsx +1 -2
  429. package/src/WallpaperPage/index.tsx +2 -3
  430. package/src/Wizard/ActionsBar.test.tsx +109 -109
  431. package/src/Wizard/ActionsBar.tsx +4 -4
  432. package/src/Wizard/StepIcon.tsx +3 -3
  433. package/src/Wizard/Stepper.tsx +5 -5
  434. package/src/Wizard/WizardContent.tsx +3 -5
  435. package/src/Wizard/index.stories.tsx +17 -19
  436. package/src/Wizard/index.test.tsx +116 -158
  437. package/src/Wizard/index.tsx +8 -10
  438. package/src/Wizard/models.ts +2 -2
  439. package/src/api/QueryProvider.tsx +1 -2
  440. package/src/api/TestQueryProvider.tsx +1 -2
  441. package/src/api/buildListingDecoder.ts +1 -1
  442. package/src/api/buildListingEndpoint/getSearchQueryParameterValue.ts +1 -1
  443. package/src/api/buildListingEndpoint/index.ts +17 -4
  444. package/src/api/buildListingEndpoint/models.ts +2 -1
  445. package/src/api/customFetch.ts +1 -1
  446. package/src/api/index.ts +1 -1
  447. package/src/api/useBulkResponse.ts +1 -0
  448. package/src/api/useCancelTokenSource.ts +1 -2
  449. package/src/api/useFetchQuery/index.test.ts +9 -3
  450. package/src/api/useFetchQuery/index.ts +11 -8
  451. package/src/api/useGraphQuery/index.ts +9 -11
  452. package/src/api/useGraphQuery/models.ts +1 -1
  453. package/src/api/useMutationQuery/index.ts +12 -9
  454. package/src/api/useMutationQuery/useMutationQuery.cypress.spec.tsx +11 -11
  455. package/src/api/useMutationQuery/useOptimisticMutation.ts +2 -1
  456. package/src/api/useRequest/index.test.ts +11 -10
  457. package/src/api/useRequest/index.ts +5 -6
  458. package/src/base/tokens/source/base.json +68 -68
  459. package/src/base/tokens/themes/base.tokens.json +331 -331
  460. package/src/base/tokens/themes/ui-dark.tokens.json +331 -331
  461. package/src/base/tokens/themes/ui-light.tokens.json +331 -331
  462. package/src/components/Avatar/Avatar.stories.tsx +1 -1
  463. package/src/components/Avatar/Avatar.tsx +2 -2
  464. package/src/components/Button/Button.stories.tsx +6 -5
  465. package/src/components/Button/Button.tsx +6 -6
  466. package/src/components/Button/Icon/IconButton.stories.tsx +2 -2
  467. package/src/components/Button/Icon/IconButton.tsx +6 -7
  468. package/src/components/CollapsibleItem/CollapsibleItem.cypress.spec.tsx +1 -1
  469. package/src/components/CollapsibleItem/CollapsibleItem.stories.tsx +2 -2
  470. package/src/components/CollapsibleItem/CollapsibleItem.tsx +6 -7
  471. package/src/components/CopyCommand/CopyCommand.cypress.spec.tsx +24 -22
  472. package/src/components/CopyCommand/CopyCommand.stories.tsx +13 -12
  473. package/src/components/CopyCommand/CopyCommand.styles.tsx +47 -45
  474. package/src/components/CopyCommand/CopyCommand.tsx +8 -8
  475. package/src/components/CrudPage/Actions/Actions.styles.ts +16 -16
  476. package/src/components/CrudPage/Actions/Actions.tsx +2 -1
  477. package/src/components/CrudPage/Actions/AddButton.tsx +4 -2
  478. package/src/components/CrudPage/Actions/Filters.tsx +3 -1
  479. package/src/components/CrudPage/Actions/Search.tsx +4 -3
  480. package/src/components/CrudPage/Actions/useSearch.tsx +12 -8
  481. package/src/components/CrudPage/Columns/Actions.tsx +16 -11
  482. package/src/components/CrudPage/CrudPage.cypress.spec.tsx +100 -98
  483. package/src/components/CrudPage/CrudPage.stories.tsx +67 -65
  484. package/src/components/CrudPage/CrudPageRoot.tsx +21 -20
  485. package/src/components/CrudPage/DeleteModal.tsx +8 -6
  486. package/src/components/CrudPage/Form/AddModal.tsx +8 -9
  487. package/src/components/CrudPage/Form/Buttons.tsx +14 -11
  488. package/src/components/CrudPage/Form/UpdateModal.tsx +17 -18
  489. package/src/components/CrudPage/Listing.tsx +14 -13
  490. package/src/components/CrudPage/atoms.ts +2 -1
  491. package/src/components/CrudPage/hooks/useDeleteItem.ts +7 -5
  492. package/src/components/CrudPage/hooks/useGetItem.ts +3 -2
  493. package/src/components/CrudPage/hooks/useGetItems.ts +11 -10
  494. package/src/components/CrudPage/hooks/useListingQueryKey.ts +2 -1
  495. package/src/components/CrudPage/index.tsx +3 -3
  496. package/src/components/CrudPage/models.ts +10 -6
  497. package/src/components/DataTable/DataListing.tsx +2 -2
  498. package/src/components/DataTable/DataTable.cypress.spec.tsx +3 -4
  499. package/src/components/DataTable/DataTable.stories.tsx +5 -6
  500. package/src/components/DataTable/DataTable.styles.ts +5 -5
  501. package/src/components/DataTable/DataTable.tsx +1 -1
  502. package/src/components/DataTable/EmptyState/DataTableEmptyState.stories.tsx +1 -1
  503. package/src/components/DataTable/EmptyState/DataTableEmptyState.styles.ts +1 -1
  504. package/src/components/DataTable/EmptyState/DataTableEmptyState.tsx +4 -6
  505. package/src/components/DataTable/Item/DataTableItem.stories.tsx +1 -1
  506. package/src/components/DataTable/Item/DataTableItem.tsx +7 -2
  507. package/src/components/DataTable/Item/DataTableItemSkeleton.tsx +1 -2
  508. package/src/components/ExpandableContainer/ExpandableContainer.tsx +14 -12
  509. package/src/components/ExpandableContainer/models.ts +3 -2
  510. package/src/components/Form/AccessRights/AccessRights.cypress.spec.tsx +2 -3
  511. package/src/components/Form/AccessRights/AccessRights.stories.tsx +2 -3
  512. package/src/components/Form/AccessRights/AccessRights.tsx +2 -3
  513. package/src/components/Form/AccessRights/Actions/Actions.tsx +5 -6
  514. package/src/components/Form/AccessRights/Actions/useActions.ts +1 -1
  515. package/src/components/Form/AccessRights/List/Item.tsx +5 -6
  516. package/src/components/Form/AccessRights/List/List.tsx +4 -5
  517. package/src/components/Form/AccessRights/List/ListItemSkeleton.tsx +1 -2
  518. package/src/components/Form/AccessRights/List/ListSkeleton.tsx +1 -2
  519. package/src/components/Form/AccessRights/List/RemoveAccessRight.tsx +3 -3
  520. package/src/components/Form/AccessRights/List/StateChip.tsx +1 -2
  521. package/src/components/Form/AccessRights/List/useItem.ts +2 -2
  522. package/src/components/Form/AccessRights/Provider.tsx +2 -3
  523. package/src/components/Form/AccessRights/ShareInput/ContactSwitch.tsx +5 -6
  524. package/src/components/Form/AccessRights/ShareInput/ShareInput.tsx +14 -12
  525. package/src/components/Form/AccessRights/ShareInput/useShareInput.tsx +14 -11
  526. package/src/components/Form/AccessRights/Stats/Stats.tsx +3 -3
  527. package/src/components/Form/AccessRights/atoms.ts +5 -1
  528. package/src/components/Form/AccessRights/common/RoleSelectField.tsx +4 -5
  529. package/src/components/Form/AccessRights/storiesData.ts +3 -4
  530. package/src/components/Form/AccessRights/useAccessRightsChange.ts +2 -4
  531. package/src/components/Form/AccessRights/useAccessRightsInitValues.ts +2 -3
  532. package/src/components/Form/AccessRights/utils.ts +1 -1
  533. package/src/components/Form/Dashboard/DashboardDuplicationForm.tsx +7 -9
  534. package/src/components/Form/Dashboard/DashboardForm.tsx +7 -9
  535. package/src/components/Form/Dashboard/GlobalRefreshFieldOption.tsx +7 -9
  536. package/src/components/Form/Dashboard/index.ts +1 -1
  537. package/src/components/Form/FormActions.tsx +4 -6
  538. package/src/components/Form/index.ts +6 -4
  539. package/src/components/Header/PageHeader/PageHeader.stories.tsx +2 -3
  540. package/src/components/Header/PageHeader/PageHeader.styles.ts +11 -11
  541. package/src/components/Header/PageHeader/PageHeader.tsx +1 -1
  542. package/src/components/Header/PageHeader/PageHeaderActions.tsx +1 -1
  543. package/src/components/Header/PageHeader/PageHeaderMain.tsx +1 -1
  544. package/src/components/Header/PageHeader/PageHeaderMenu.tsx +1 -1
  545. package/src/components/Header/PageHeader/PageHeaderMessage.tsx +2 -2
  546. package/src/components/Header/PageHeader/PageHeaderTitle.tsx +2 -3
  547. package/src/components/Inputs/Switch/Switch.stories.tsx +1 -1
  548. package/src/components/Inputs/Switch/Switch.tsx +1 -1
  549. package/src/components/ItemComposition/Item.tsx +3 -4
  550. package/src/components/ItemComposition/ItemComposition.cypress.spec.tsx +1 -2
  551. package/src/components/ItemComposition/ItemComposition.stories.tsx +4 -4
  552. package/src/components/ItemComposition/ItemComposition.styles.ts +7 -7
  553. package/src/components/ItemComposition/ItemComposition.tsx +5 -7
  554. package/src/components/Layout/AreaIndicator.tsx +2 -2
  555. package/src/components/Layout/PageLayout/PageLayout.stories.tsx +1 -2
  556. package/src/components/Layout/PageLayout/PageLayout.styles.ts +5 -5
  557. package/src/components/Layout/PageLayout/PageLayout.tsx +1 -1
  558. package/src/components/Layout/PageLayout/PageLayoutActions.tsx +1 -1
  559. package/src/components/Layout/PageLayout/PageLayoutBody.tsx +3 -2
  560. package/src/components/Layout/PageLayout/PageLayoutHeader.tsx +1 -1
  561. package/src/components/Layout/PageLayout/PageQuickAccess.tsx +6 -6
  562. package/src/components/Layout/PageLayout.cypress.spec.tsx +1 -3
  563. package/src/components/List/Item/Avatar.tsx +2 -2
  564. package/src/components/List/Item/AvatarSkeleton.tsx +2 -2
  565. package/src/components/List/Item/ListItem.stories.tsx +1 -1
  566. package/src/components/List/Item/ListItem.tsx +8 -3
  567. package/src/components/List/Item/Text.tsx +2 -2
  568. package/src/components/List/Item/TextSkeleton.tsx +2 -2
  569. package/src/components/List/List.stories.tsx +3 -3
  570. package/src/components/List/List.tsx +3 -3
  571. package/src/components/Menu/Button/MenuButton.stories.tsx +1 -1
  572. package/src/components/Menu/Button/MenuButton.tsx +7 -7
  573. package/src/components/Menu/Menu.stories.tsx +2 -3
  574. package/src/components/Menu/Menu.tsx +1 -1
  575. package/src/components/Menu/MenuDivider.tsx +2 -2
  576. package/src/components/Menu/MenuItem.tsx +3 -3
  577. package/src/components/Menu/MenuItems.tsx +5 -5
  578. package/src/components/Menu/useMenu.tsx +2 -3
  579. package/src/components/Modal/ConfirmationModal/ConfirmationModal.cypress.spec.tsx +6 -3
  580. package/src/components/Modal/ConfirmationModal/ConfirmationModal.stories.tsx +2 -3
  581. package/src/components/Modal/ConfirmationModal/ConfirmationModal.tsx +3 -4
  582. package/src/components/Modal/Modal.stories.tsx +2 -2
  583. package/src/components/Modal/Modal.styles.ts +2 -2
  584. package/src/components/Modal/Modal.tsx +10 -11
  585. package/src/components/Modal/ModalActions.tsx +4 -4
  586. package/src/components/Modal/ModalBody.tsx +1 -1
  587. package/src/components/Modal/ModalHeader.tsx +5 -2
  588. package/src/components/Tabs/Tabs.cypress.spec.tsx +1 -2
  589. package/src/components/Tabs/Tabs.stories.tsx +2 -3
  590. package/src/components/Tabs/Tabs.tsx +7 -7
  591. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.stories.tsx +2 -3
  592. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.styles.tsx +2 -2
  593. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.tsx +3 -3
  594. package/src/components/Tooltip/ConfirmationTooltip/TooltipContent.tsx +1 -2
  595. package/src/components/Tooltip/ConfirmationTooltip/models.ts +2 -2
  596. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.stories.tsx +4 -4
  597. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.tsx +6 -7
  598. package/src/components/Tooltip/Tooltip.stories.tsx +2 -2
  599. package/src/components/Tooltip/Tooltip.tsx +5 -5
  600. package/src/components/Tooltip/index.ts +1 -1
  601. package/src/components/Zoom/Minimap.tsx +10 -10
  602. package/src/components/Zoom/Zoom.stories.tsx +6 -6
  603. package/src/components/Zoom/Zoom.styles.tsx +2 -2
  604. package/src/components/Zoom/Zoom.tsx +4 -5
  605. package/src/components/Zoom/ZoomContent.tsx +17 -19
  606. package/src/components/Zoom/localPoint.ts +1 -2
  607. package/src/components/Zoom/models.ts +1 -1
  608. package/src/components/Zoom/useMinimap.ts +13 -15
  609. package/src/components/Zoom/useZoom.ts +3 -4
  610. package/src/components/Zoom/utils.ts +1 -1
  611. package/src/components/index.ts +11 -11
  612. package/src/index.ts +115 -142
  613. package/src/queryParameters/index.ts +1 -1
  614. package/src/queryParameters/url/index.ts +1 -1
  615. package/src/styles/tokens/themes/_ui-dark.tokens.json +331 -331
  616. package/src/styles/tokens/themes/_ui-light.tokens.json +331 -331
  617. package/src/utils/index.ts +18 -18
  618. package/src/utils/resourcesStatusURL.ts +3 -4
  619. package/src/utils/useDebounce.ts +11 -8
  620. package/src/utils/useDeepCallback.ts +2 -1
  621. package/src/utils/useDeepMemo.ts +1 -1
  622. package/src/utils/useFullscreen/Fullscreen.cypress.spec.tsx +3 -3
  623. package/src/utils/useFullscreen/useFullscreen.ts +3 -3
  624. package/src/utils/useFullscreen/useFullscreenListener.ts +31 -30
  625. package/src/utils/useInfiniteScrollListing.ts +9 -10
  626. package/src/utils/useIntersectionObserver.ts +1 -1
  627. package/src/utils/useKeyObserver.tsx +14 -11
  628. package/src/utils/useLicenseExpirationWarning.test.tsx +122 -124
  629. package/src/utils/useLicenseExpirationWarning.ts +3 -5
  630. package/src/utils/useLoadImage.tsx +2 -3
  631. package/src/utils/useLocale/index.ts +1 -0
  632. package/src/utils/useLocale/useLocale.cypress.spec.tsx +4 -2
  633. package/src/utils/useLocaleDateTimeFormat/index.test.tsx +71 -71
  634. package/src/utils/useLocaleDateTimeFormat/index.ts +2 -2
  635. package/src/utils/useLocaleDateTimeFormat/localeFallback.test.tsx +42 -42
  636. package/src/utils/useLocaleTimezoneDate/LocaleTimezoneDate.cypress.spec.tsx +2 -1
  637. package/src/utils/useLocaleTimezoneDate/useLocaleTimezoneDate.ts +3 -4
  638. package/src/utils/useMemoComponent.ts +2 -3
  639. package/src/utils/usePluralizedTranslation.test.ts +2 -2
  640. package/src/utils/usePluralizedTranslation.ts +2 -3
  641. package/src/utils/useRefreshInterval.ts +2 -2
  642. package/src/utils/useThemeMode.ts +2 -2
  643. package/src/utils/useViewportIntersection.ts +8 -2
  644. package/src/InputField/Select/Autocomplete/Connected/Multi/index.test.tsx +0 -64
@@ -1,12 +1,11 @@
1
- import { useMemo, useRef } from 'react';
1
+ import { alpha, Box, useTheme } from '@mui/material';
2
2
 
3
3
  import { animated, useSpring } from '@react-spring/web';
4
4
  import { scaleLinear } from '@visx/scale';
5
5
  import { Bar } from '@visx/shape';
6
6
  import { Group, Tooltip } from '@visx/visx';
7
7
  import { clamp, equals, flatten, head, pluck } from 'ramda';
8
-
9
- import { Box, alpha, useTheme } from '@mui/material';
8
+ import { useMemo, useRef } from 'react';
10
9
 
11
10
  import { Tooltip as MuiTooltip } from '../../components/Tooltip';
12
11
  import { margins } from '../common/margins';
@@ -14,13 +13,12 @@ import {
14
13
  formatMetricValueWithUnit,
15
14
  getMetricWithLatestData
16
15
  } from '../common/timeSeries';
17
- import { Metric } from '../common/timeSeries/models';
16
+ import type { Metric } from '../common/timeSeries/models';
18
17
  import { useTooltipStyles } from '../common/useTooltipStyles';
19
18
  import { getColorFromDataAndTresholds } from '../common/utils';
20
-
21
- import { barHeights } from './ThresholdLine';
19
+ import type { SingleBarProps } from './models';
20
+ import { barHeights, lineMargins } from './ThresholdLine';
22
21
  import Thresholds, { groupMargin } from './Thresholds';
23
- import { SingleBarProps } from './models';
24
22
 
25
23
  interface Props extends SingleBarProps {
26
24
  height: number;
@@ -36,7 +34,9 @@ const ResponsiveSingleBar = ({
36
34
  baseColor,
37
35
  size = 'medium',
38
36
  showLabels = true,
39
- max
37
+ max,
38
+ direction = 'column',
39
+ textWidth
40
40
  }: Props): JSX.Element => {
41
41
  const { classes } = useTooltipStyles();
42
42
  const theme = useTheme();
@@ -70,7 +70,7 @@ const ResponsiveSingleBar = ({
70
70
  theme,
71
71
  thresholds
72
72
  }),
73
- [latestMetricData, thresholds, theme]
73
+ [latestMetricData, thresholds, theme, baseColor]
74
74
  );
75
75
 
76
76
  const isSmall = equals(size, 'small');
@@ -79,16 +79,26 @@ const ResponsiveSingleBar = ({
79
79
 
80
80
  const textHeight = isSmall ? 46 : 27;
81
81
 
82
+ const textY = useMemo(() => {
83
+ if (direction === 'row' && isSmall) {
84
+ return 2;
85
+ }
86
+ if (direction === 'row' && !isSmall) {
87
+ return 22;
88
+ }
89
+ return isSmall ? 10 : 25;
90
+ }, [direction, isSmall]);
91
+
82
92
  const text = showLabels && (
83
93
  <text
84
- dominantBaseline="middle"
94
+ dominantBaseline={direction === 'row' ? 'hanging' : 'middle'}
85
95
  style={{
86
96
  fill: barColor,
87
97
  ...textStyle
88
98
  }}
89
- textAnchor="middle"
90
- x="50%"
91
- y={isSmall ? 10 : 25}
99
+ textAnchor={direction === 'row' ? 'start' : 'middle'}
100
+ x={direction === 'row' ? 0 : '50%'}
101
+ y={textY}
92
102
  >
93
103
  {formatMetricValueWithUnit({
94
104
  base: 1000,
@@ -99,13 +109,18 @@ const ResponsiveSingleBar = ({
99
109
  </text>
100
110
  );
101
111
 
112
+ const widthMargin = useMemo(
113
+ () => (direction === 'row' && textWidth) || 0,
114
+ [direction, textWidth]
115
+ );
116
+
102
117
  const xScale = useMemo(
103
118
  () =>
104
119
  scaleLinear<number>({
105
120
  domain: [0, adaptedMaxValue],
106
- range: [0, width - 10 || 0]
121
+ range: [0, width - widthMargin - 10 || 0]
107
122
  }),
108
- [width, adaptedMaxValue]
123
+ [width, adaptedMaxValue, widthMargin]
109
124
  );
110
125
 
111
126
  const metricBarWidth = useMemo(
@@ -119,7 +134,10 @@ const ResponsiveSingleBar = ({
119
134
 
120
135
  const springStyle = useSpring({ width: metricBarWidth });
121
136
 
122
- const barY = groupMargin + (isSmall ? 0 : 2 * margins.top);
137
+ const barY =
138
+ direction === 'row'
139
+ ? lineMargins[size] / 2
140
+ : groupMargin + (isSmall ? 0 : 2 * margins.top);
123
141
 
124
142
  const realBarHeight = !isSmall
125
143
  ? clamp(
@@ -153,6 +171,7 @@ const ResponsiveSingleBar = ({
153
171
  placement="top"
154
172
  >
155
173
  <svg height={height} ref={svgRef} width={width}>
174
+ <title>single bar</title>
156
175
  <Group.Group>
157
176
  {text}
158
177
  <animated.rect
@@ -161,7 +180,7 @@ const ResponsiveSingleBar = ({
161
180
  height={realBarHeight}
162
181
  rx={4}
163
182
  style={springStyle}
164
- x={5}
183
+ x={direction === 'row' ? textWidth : 5}
165
184
  y={barY}
166
185
  />
167
186
  <Bar
@@ -171,16 +190,18 @@ const ResponsiveSingleBar = ({
171
190
  ry={4}
172
191
  stroke={alpha(theme.palette.text.primary, 0.3)}
173
192
  width={maxBarWidth}
174
- x={5}
193
+ x={direction === 'row' ? textWidth : 5}
175
194
  y={barY}
176
195
  />
177
196
  {thresholds.enabled && (
178
197
  <Thresholds
179
198
  barHeight={realBarHeight}
199
+ direction={direction}
180
200
  hideTooltip={hideTooltip}
181
201
  isSmall={isSmall}
182
202
  showTooltip={showTooltip}
183
203
  size={size}
204
+ textWidth={textWidth}
184
205
  thresholds={thresholds}
185
206
  xScale={xScale}
186
207
  />
@@ -5,9 +5,8 @@ import {
5
5
  warningThresholds
6
6
  } from '../common/testUtils';
7
7
  import dataLastWeek from '../mockedData/lastWeek.json';
8
-
8
+ import type { SingleBarProps } from './models';
9
9
  import SingleBar from './SingleBar';
10
- import { SingleBarProps } from './models';
11
10
 
12
11
  const initialize = (
13
12
  args: Omit<SingleBarProps, 'data' | 'labels' | 'baseColor'>
@@ -118,4 +117,29 @@ describe('Single bar', () => {
118
117
 
119
118
  cy.makeSnapshot();
120
119
  });
120
+
121
+ it('displays the value on the left of the bar when the corresponding prop is set', () => {
122
+ initialize({
123
+ direction: 'row',
124
+ textWidth: 100,
125
+ thresholds: successThresholds
126
+ });
127
+
128
+ cy.contains('0.41 s').should('be.visible');
129
+
130
+ cy.makeSnapshot();
131
+ });
132
+
133
+ it('displays the value on the left of the bar when the corresponding prop is set and the size is mall', () => {
134
+ initialize({
135
+ direction: 'row',
136
+ size: 'small',
137
+ textWidth: 70,
138
+ thresholds: criticalThresholds
139
+ });
140
+
141
+ cy.contains('0.41 s').should('be.visible');
142
+
143
+ cy.makeSnapshot();
144
+ });
121
145
  });
@@ -1,7 +1,6 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
2
 
3
3
  import dataLastWeek from '../mockedData/lastWeek.json';
4
-
5
4
  import { SingleBar } from '.';
6
5
 
7
6
  const meta: Meta<typeof SingleBar> = {
@@ -12,7 +11,7 @@ export default meta;
12
11
  type Story = StoryObj<typeof SingleBar>;
13
12
 
14
13
  const Template = (props): JSX.Element => (
15
- <div style={{ height: '500px', width: '500px' }}>
14
+ <div style={{ height: '500px', width: '200px' }}>
16
15
  <SingleBar {...props} />
17
16
  </div>
18
17
  );
@@ -230,3 +229,52 @@ export const smallDisplay: Story = {
230
229
  },
231
230
  render: SmallTemplate
232
231
  };
232
+
233
+ export const RowDirection: Story = {
234
+ args: {
235
+ data: dataLastWeek,
236
+ direction: 'row',
237
+ textWidth: 100,
238
+ thresholds: {
239
+ critical: [
240
+ {
241
+ label: 'Critical',
242
+ value: 0.6
243
+ }
244
+ ],
245
+ enabled: true,
246
+ warning: [
247
+ {
248
+ label: 'Warning',
249
+ value: 0.5
250
+ }
251
+ ]
252
+ }
253
+ },
254
+ render: Template
255
+ };
256
+
257
+ export const RowDirectionSmall: Story = {
258
+ args: {
259
+ data: dataLastWeek,
260
+ direction: 'row',
261
+ size: 'small',
262
+ textWidth: 70,
263
+ thresholds: {
264
+ critical: [
265
+ {
266
+ label: 'Critical',
267
+ value: 0.6
268
+ }
269
+ ],
270
+ enabled: true,
271
+ warning: [
272
+ {
273
+ label: 'Warning',
274
+ value: 0.5
275
+ }
276
+ ]
277
+ }
278
+ },
279
+ render: Template
280
+ };
@@ -1,8 +1,8 @@
1
1
  import { Skeleton } from '@mui/material';
2
- import { ParentSize } from '../..';
3
2
 
3
+ import { ParentSize } from '../..';
4
+ import type { SingleBarProps } from './models';
4
5
  import ResponsiveSingleBar from './ResponsiveSingleBar';
5
- import { SingleBarProps } from './models';
6
6
 
7
7
  const SingleBar = ({ data, ...props }: SingleBarProps): JSX.Element | null => {
8
8
  if (!data) {
@@ -1,9 +1,10 @@
1
- import { equals } from 'ramda';
2
-
3
1
  import { useTheme } from '@mui/material';
4
2
 
5
- import { margins } from '../common/margins';
3
+ import { equals } from 'ramda';
4
+ import { useMemo } from 'react';
6
5
 
6
+ import { margins } from '../common/margins';
7
+ import { SingleBarProps } from './models';
7
8
  import { groupMargin } from './Thresholds';
8
9
 
9
10
  export const barHeights = {
@@ -12,12 +13,12 @@ export const barHeights = {
12
13
  };
13
14
  export const margin = 40;
14
15
 
15
- const lineMargins = {
16
+ export const lineMargins = {
16
17
  medium: 10,
17
18
  small: 5
18
19
  };
19
20
 
20
- interface Props {
21
+ interface Props extends Pick<SingleBarProps, 'direction'> {
21
22
  barHeight: number;
22
23
  hideTooltip: () => void;
23
24
  isSmall: boolean;
@@ -27,6 +28,7 @@ interface Props {
27
28
  thresholdType: string;
28
29
  value: number;
29
30
  xScale: (value: number) => number;
31
+ textWidth?: number;
30
32
  }
31
33
 
32
34
  export const ThresholdLine = ({
@@ -38,11 +40,13 @@ export const ThresholdLine = ({
38
40
  hideTooltip,
39
41
  size,
40
42
  barHeight,
41
- isSmall
43
+ isSmall,
44
+ direction,
45
+ textWidth
42
46
  }: Props): JSX.Element => {
43
47
  const theme = useTheme();
44
48
 
45
- const scaledValue = xScale(value) || 0;
49
+ const scaledValue = xScale(value) + (textWidth || 0) || 0;
46
50
 
47
51
  const lineMargin = lineMargins[size];
48
52
 
@@ -55,45 +59,50 @@ export const ThresholdLine = ({
55
59
  ? theme.palette.warning.main
56
60
  : theme.palette.error.main;
57
61
 
62
+ const lineY1 = useMemo(() => {
63
+ if (direction === 'row') {
64
+ return 0;
65
+ }
66
+ return isSmall
67
+ ? groupMargin - lineMargin
68
+ : groupMargin + lineMargin + margins.top;
69
+ }, [direction, isSmall, groupMargin, lineMargin, margins]);
70
+
71
+ const lineY2 = useMemo(() => {
72
+ if (direction === 'row') {
73
+ return barHeight + lineMargin;
74
+ }
75
+ return isSmall
76
+ ? barHeight + groupMargin - lineMargin + margins.top - 6
77
+ : barHeight + groupMargin + lineMargin + 2 * margins.top;
78
+ }, [direction, isSmall, groupMargin, lineMargin, margins]);
79
+
58
80
  return (
59
81
  <>
60
82
  <line
61
83
  data-testid={`${thresholdType}-line-${value}`}
62
84
  stroke={lineColor}
63
- strokeDasharray="6, 6"
85
+ strokeDasharray="6, 5"
64
86
  strokeWidth={2}
65
87
  x1={scaledValue}
66
88
  x2={scaledValue + 1}
67
- y1={
68
- isSmall
69
- ? groupMargin - lineMargin
70
- : groupMargin + lineMargin + margins.top
71
- }
72
- y2={
73
- isSmall
74
- ? barHeight + groupMargin - lineMargin + margins.top - 6
75
- : barHeight + groupMargin + lineMargin + 2 * margins.top
76
- }
77
- />
78
- <line
79
- data-testid={`${thresholdType}-line-${value}-tooltip`}
80
- stroke="transparent"
81
- strokeWidth={5}
82
- x1={scaledValue}
83
- x2={scaledValue + 1}
84
- y1={
85
- isSmall
86
- ? groupMargin - lineMargin
87
- : groupMargin + lineMargin + margins.top
88
- }
89
- y2={
90
- isSmall
91
- ? barHeight + groupMargin - lineMargin + margins.top - 6
92
- : barHeight + groupMargin + lineMargin + 2 * margins.top
93
- }
94
- onMouseEnter={onMouseEnter}
95
- onMouseLeave={hideTooltip}
89
+ y1={lineY1}
90
+ y2={lineY2}
96
91
  />
92
+ {
93
+ // biome-ignore lint/a11y/noStaticElementInteractions: need it
94
+ <line
95
+ data-testid={`${thresholdType}-line-${value}-tooltip`}
96
+ onMouseEnter={onMouseEnter}
97
+ onMouseLeave={hideTooltip}
98
+ stroke="transparent"
99
+ strokeWidth={5}
100
+ x1={scaledValue}
101
+ x2={scaledValue + 1}
102
+ y1={lineY1}
103
+ y2={lineY2}
104
+ />
105
+ }
97
106
  </>
98
107
  );
99
108
  };
@@ -1,10 +1,10 @@
1
- import { Thresholds as ThresholdsModel } from '../common/models';
2
-
1
+ import type { Thresholds as ThresholdsModel } from '../common/models';
2
+ import { SingleBarProps } from './models';
3
3
  import { ThresholdLine } from './ThresholdLine';
4
4
 
5
5
  export const groupMargin = 25;
6
6
 
7
- interface Props {
7
+ interface Props extends Pick<SingleBarProps, 'direction'> {
8
8
  barHeight: number;
9
9
  hideTooltip: () => void;
10
10
  isSmall: boolean;
@@ -12,6 +12,7 @@ interface Props {
12
12
  size: 'small' | 'medium';
13
13
  thresholds: ThresholdsModel;
14
14
  xScale: (value: number) => number;
15
+ textWidth?: number;
15
16
  }
16
17
 
17
18
  const Thresholds = ({
@@ -21,18 +22,22 @@ const Thresholds = ({
21
22
  hideTooltip,
22
23
  size,
23
24
  barHeight,
24
- isSmall
25
+ isSmall,
26
+ direction,
27
+ textWidth
25
28
  }: Props): JSX.Element => (
26
29
  <>
27
30
  {thresholds.warning.map(({ value, label }) => (
28
31
  <ThresholdLine
29
32
  barHeight={barHeight}
33
+ direction={direction}
30
34
  hideTooltip={hideTooltip}
31
35
  isSmall={isSmall}
32
36
  key={`warning-${value.toString()}`}
33
37
  label={label}
34
38
  showTooltip={showTooltip}
35
39
  size={size}
40
+ textWidth={textWidth}
36
41
  thresholdType="warning"
37
42
  value={value}
38
43
  xScale={xScale}
@@ -41,12 +46,14 @@ const Thresholds = ({
41
46
  {thresholds.critical.map(({ value, label }) => (
42
47
  <ThresholdLine
43
48
  barHeight={barHeight}
49
+ direction={direction}
44
50
  hideTooltip={hideTooltip}
45
51
  isSmall={isSmall}
46
52
  key={`critical-${value.toString()}`}
47
53
  label={label}
48
54
  showTooltip={showTooltip}
49
55
  size={size}
56
+ textWidth={textWidth}
50
57
  thresholdType="critical"
51
58
  value={value}
52
59
  xScale={xScale}
@@ -1,4 +1,4 @@
1
- import { LineChartData, Thresholds } from '../common/models';
1
+ import type { LineChartData, Thresholds } from '../common/models';
2
2
 
3
3
  export interface SingleBarProps {
4
4
  baseColor?: string;
@@ -8,4 +8,6 @@ export interface SingleBarProps {
8
8
  size?: 'medium' | 'small';
9
9
  thresholds: Thresholds;
10
10
  max?: number;
11
+ direction?: 'column' | 'row';
12
+ textWidth?: number; // Applied only when the direction is row
11
13
  }
@@ -5,8 +5,7 @@ import {
5
5
  warningThresholds
6
6
  } from '../common/testUtils';
7
7
  import dataLastWeek from '../mockedData/lastWeek.json';
8
-
9
- import { Props, Text } from './Text';
8
+ import { type Props, Text } from './Text';
10
9
 
11
10
  const initialize = (
12
11
  args: Omit<Props, 'data' | 'labels' | 'baseColor'>
@@ -1,7 +1,6 @@
1
- import { Meta, StoryObj } from '@storybook/react';
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
2
 
3
3
  import dataLastWeek from '../mockedData/lastWeek.json';
4
-
5
4
  import { Text } from '.';
6
5
 
7
6
  const meta: Meta<typeof Text> = {
@@ -1,17 +1,16 @@
1
- import { isNil } from 'ramda';
2
-
3
1
  import { useTheme } from '@mui/material';
4
2
 
3
+ import { isNil } from 'ramda';
4
+ import type { ReactElement } from 'react';
5
+ import useResizeObserver from 'use-resize-observer';
6
+
5
7
  import FluidTypography from '../../Typography/FluidTypography';
6
- import { LineChartData, Thresholds } from '../common/models';
8
+ import type { LineChartData, Thresholds } from '../common/models';
7
9
  import {
8
10
  formatMetricValueWithUnit,
9
11
  getMetricWithLatestData
10
12
  } from '../common/timeSeries';
11
13
  import { getColorFromDataAndTresholds } from '../common/utils';
12
-
13
- import { type ReactElement } from 'react';
14
- import useResizeObserver from 'use-resize-observer';
15
14
  import { useTextStyles } from './Text.styles';
16
15
 
17
16
  export interface Props {
@@ -93,18 +92,18 @@ export const Text = ({
93
92
  <FluidTypography
94
93
  containerClassName={cx(classes.thresholdLabel, classes.warning)}
95
94
  max="30px"
95
+ min={minThresholds}
96
96
  pref={prefThresholds}
97
97
  text={`${warningLabel}${warningThresholdLabels.join(' - ')}`}
98
98
  variant="h5"
99
- min={minThresholds}
100
99
  />
101
100
  <FluidTypography
102
101
  containerClassName={cx(classes.thresholdLabel, classes.critical)}
103
102
  max="30px"
103
+ min={minThresholds}
104
104
  pref={prefThresholds}
105
105
  text={`${criticalLabel}${criticalThresholdLabels.join(' - ')}`}
106
106
  variant="h5"
107
- min={minThresholds}
108
107
  />
109
108
  </div>
110
109
  )}
@@ -1,23 +1,22 @@
1
+ import { Typography, useTheme } from '@mui/material';
2
+
1
3
  import {
2
4
  dateTimeFormat,
3
5
  getXAxisTickFormat,
4
6
  useLocaleDateTimeFormat
5
7
  } from '@centreon/ui';
6
-
7
- import { Typography, useTheme } from '@mui/material';
8
-
9
- import dayjs from 'dayjs';
10
- import timezonePlugin from 'dayjs/plugin/timezone';
11
- import utc from 'dayjs/plugin/utc';
12
-
13
8
  import { userAtom } from '@centreon/ui-context';
14
- import { Axis } from '@visx/visx';
15
9
 
16
10
  import { scaleTime } from '@visx/scale';
17
11
  import { BarRounded } from '@visx/shape';
12
+ import { Axis } from '@visx/visx';
13
+ import dayjs from 'dayjs';
14
+ import timezonePlugin from 'dayjs/plugin/timezone';
15
+ import utc from 'dayjs/plugin/utc';
18
16
  import { useAtomValue } from 'jotai';
19
17
  import { equals } from 'ramda';
20
18
  import { useCallback } from 'react';
19
+
21
20
  import { Tooltip } from '../../components';
22
21
  import { margins } from '../common/margins';
23
22
  import type { TimelineProps } from './models';
@@ -49,9 +48,9 @@ const Timeline = ({
49
48
  const theme = useTheme();
50
49
 
51
50
  const xScale = scaleTime({
51
+ clamp: true,
52
52
  domain: [new Date(startDate), new Date(endDate)],
53
- range: [margins.left, width - margins.right],
54
- clamp: true
53
+ range: [margins.left, width - margins.right]
55
54
  });
56
55
 
57
56
  const numTicks = Math.min(Math.ceil(width / 82), 12);
@@ -64,7 +63,7 @@ const Timeline = ({
64
63
  date: dayjs(start).tz(timezone).toDate(),
65
64
  formatString: dateTimeFormat
66
65
  }),
67
- [dateTimeFormat, timezone]
66
+ [timezone, format]
68
67
  );
69
68
 
70
69
  const getFormattedEnd = useCallback(
@@ -73,34 +72,35 @@ const Timeline = ({
73
72
  date: dayjs(end).tz(timezone).toDate(),
74
73
  formatString: dateTimeFormat
75
74
  }),
76
- [dateTimeFormat, timezone]
75
+ [timezone, format]
77
76
  );
78
77
 
79
78
  return (
80
- <svg width={width} height={height + axisPadding}>
79
+ <svg height={height + axisPadding} width={width}>
80
+ <title>timeline</title>
81
81
  {data.map(({ start, end, color }, idx) => (
82
82
  <Tooltip
83
- hasCaret
84
83
  classes={{
85
84
  tooltip: cx(classes.tooltip, tooltipClassName)
86
85
  }}
87
86
  followCursor={false}
87
+ hasCaret
88
88
  key={`rect-${start}--${end}`}
89
89
  label={
90
90
  TooltipContent ? (
91
91
  <TooltipContent
92
- start={getFormattedStart(start)}
93
- end={getFormattedEnd(end)}
94
92
  color={color}
95
93
  duration={getTimeDifference({
96
- start: dayjs(start),
97
- end: dayjs(end)
94
+ end: dayjs(end),
95
+ start: dayjs(start)
98
96
  })}
97
+ end={getFormattedEnd(end)}
98
+ start={getFormattedStart(start)}
99
99
  />
100
100
  ) : (
101
101
  <div style={{ color }}>
102
102
  <Typography variant="body2">
103
- {getTimeDifference({ start: dayjs(start), end: dayjs(end) })}
103
+ {getTimeDifference({ end: dayjs(end), start: dayjs(start) })}
104
104
  </Typography>
105
105
  <Typography variant="body2">{`${format({ date: start, formatString: 'L LT' })} - ${format({ date: end, formatString: 'L LT' })}`}</Typography>
106
106
  </div>
@@ -110,39 +110,42 @@ const Timeline = ({
110
110
  >
111
111
  <g>
112
112
  <BarRounded
113
- x={xScale(dayjs(start).tz(timezone))}
114
- y={0}
115
- width={
116
- xScale(dayjs(end).tz(timezone)) -
117
- xScale(dayjs(start).tz(timezone))
118
- }
119
- height={height - margins.bottom}
120
113
  fill={color}
114
+ height={height - margins.bottom}
121
115
  left={equals(idx, 0)}
122
116
  radius={4}
123
117
  right={equals(idx, data.length - 1)}
118
+ width={
119
+ xScale(dayjs(end).tz(timezone)) -
120
+ xScale(dayjs(start).tz(timezone))
121
+ }
122
+ x={xScale(dayjs(start).tz(timezone))}
123
+ y={0}
124
124
  />
125
125
  </g>
126
126
  </Tooltip>
127
127
  ))}
128
128
 
129
129
  <Axis.AxisBottom
130
- top={height - margins.bottom + axisPadding}
131
- scale={xScale}
132
130
  numTicks={numTicks}
131
+ scale={xScale}
132
+ stroke={theme.palette.text.primary}
133
133
  tickFormat={(value) =>
134
134
  format({
135
135
  date: new Date(value),
136
- formatString: getXAxisTickFormat({ end: endDate, start: startDate })
136
+ formatString: getXAxisTickFormat({
137
+ end: endDate,
138
+ start: startDate
139
+ })
137
140
  })
138
141
  }
139
- stroke={theme.palette.text.primary}
140
- tickStroke={theme.palette.text.primary}
141
142
  tickLabelProps={() => ({
142
143
  fill: theme.palette.text.primary,
143
144
  fontSize: theme.typography.caption.fontSize,
144
145
  textAnchor: 'middle'
145
146
  })}
147
+ tickStroke={theme.palette.text.primary}
148
+ top={height - margins.bottom + axisPadding}
146
149
  />
147
150
  </svg>
148
151
  );