@centreon/ui 24.8.6 → 24.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (356) hide show
  1. package/package.json +4 -3
  2. package/src/@types/globals.d.ts +4 -4
  3. package/src/ActionsList/ActionsList.styles.ts +1 -1
  4. package/src/ActionsList/index.stories.tsx +1 -1
  5. package/src/ActionsList/index.tsx +6 -6
  6. package/src/Button/Icon/index.stories.tsx +1 -1
  7. package/src/Button/Icon/index.tsx +1 -1
  8. package/src/Button/Save/StartIcon.tsx +1 -1
  9. package/src/Checkbox/Checkbox.tsx +2 -2
  10. package/src/Colors/index.stories.tsx +0 -2
  11. package/src/Colors/index.tsx +7 -3
  12. package/src/ContentWithCircularProgress/index.stories.tsx +1 -1
  13. package/src/Dashboard/Dashboard.styles.ts +111 -111
  14. package/src/Dashboard/Grid.tsx +2 -2
  15. package/src/Dashboard/Item.tsx +3 -3
  16. package/src/Dashboard/Layout.tsx +3 -3
  17. package/src/Dashboard/index.tsx +9 -9
  18. package/src/Dialog/Duplicate/index.test.tsx +1 -1
  19. package/src/Dialog/Duplicate/index.tsx +5 -2
  20. package/src/Dialog/UnsavedChanges/index.tsx +2 -2
  21. package/src/Dialog/index.stories.tsx +1 -1
  22. package/src/Dialog/index.tsx +5 -5
  23. package/src/FallbackPage/FallbackPage.tsx +4 -4
  24. package/src/FileDropZone/index.stories.tsx +1 -1
  25. package/src/FileDropZone/index.tsx +5 -5
  26. package/src/FileDropZone/useDropzone.test.ts +1 -1
  27. package/src/FileDropZone/useDropzone.ts +1 -1
  28. package/src/Form/CollapsibleGroup.tsx +6 -6
  29. package/src/Form/Form.cypress.spec.tsx +1 -1
  30. package/src/Form/Form.stories.tsx +3 -3
  31. package/src/Form/Form.tsx +5 -4
  32. package/src/Form/FormButtons.tsx +2 -2
  33. package/src/Form/Inputs/Autocomplete.tsx +3 -3
  34. package/src/Form/Inputs/Checkbox.tsx +1 -1
  35. package/src/Form/Inputs/CheckboxGroup.tsx +2 -2
  36. package/src/Form/Inputs/ConnectedAutocomplete.tsx +1 -1
  37. package/src/Form/Inputs/FieldsTable/FieldsTable.tsx +15 -15
  38. package/src/Form/Inputs/FieldsTable/Row.tsx +2 -2
  39. package/src/Form/Inputs/List/Content.tsx +1 -1
  40. package/src/Form/Inputs/List/List.tsx +3 -3
  41. package/src/Form/Inputs/PasswordEndAdornment.tsx +1 -1
  42. package/src/Form/Inputs/Radio.tsx +3 -3
  43. package/src/Form/Inputs/Switch.tsx +1 -1
  44. package/src/Form/Inputs/Text.tsx +4 -4
  45. package/src/Form/Inputs/index.tsx +81 -72
  46. package/src/Form/Inputs/models.ts +14 -14
  47. package/src/Form/storiesData.tsx +26 -30
  48. package/src/Form/storiesData.tsx-E +481 -0
  49. package/src/Graph/BarChart/BarChart.stories.tsx +1 -1
  50. package/src/Graph/BarChart/BarChart.tsx +3 -3
  51. package/src/Graph/BarChart/BarGroup.tsx +6 -4
  52. package/src/Graph/BarChart/BarStack.tsx +4 -4
  53. package/src/Graph/BarChart/ResponsiveBarChart.tsx +10 -10
  54. package/src/Graph/BarChart/Tooltip/BarChartTooltip.tsx +5 -5
  55. package/src/Graph/BarChart/useBarStack.ts +2 -2
  56. package/src/Graph/BarStack/BarStack.cypress.spec.tsx +1 -1
  57. package/src/Graph/BarStack/BarStack.stories.tsx +1 -1
  58. package/src/Graph/BarStack/ResponsiveBarStack.tsx +10 -6
  59. package/src/Graph/BarStack/useResponsiveBarStack.ts +4 -4
  60. package/src/Graph/Chart/BasicComponents/Lines/RegularLines/index.tsx +1 -1
  61. package/src/Graph/Chart/BasicComponents/Lines/RegularLines/useRegularLines.ts +1 -1
  62. package/src/Graph/Chart/BasicComponents/Lines/StackedLines/index.tsx +4 -4
  63. package/src/Graph/Chart/BasicComponents/Lines/Threshold/ThresholdWithPatternLines.tsx +1 -1
  64. package/src/Graph/Chart/BasicComponents/Lines/Threshold/index.tsx +1 -1
  65. package/src/Graph/Chart/BasicComponents/Lines/Threshold/models.ts +1 -1
  66. package/src/Graph/Chart/BasicComponents/Lines/Threshold/useScaleThreshold.ts +2 -2
  67. package/src/Graph/Chart/BasicComponents/Lines/index.tsx +7 -7
  68. package/src/Graph/Chart/BasicComponents/Lines/models.ts +1 -1
  69. package/src/Graph/Chart/Chart.cypress.spec.tsx +4 -4
  70. package/src/Graph/Chart/Chart.stories.tsx +6 -6
  71. package/src/Graph/Chart/Chart.tsx +11 -11
  72. package/src/Graph/Chart/InteractiveComponents/AnchorPoint/RegularAnchorPoint.tsx +1 -1
  73. package/src/Graph/Chart/InteractiveComponents/AnchorPoint/useTickGraph.ts +1 -1
  74. package/src/Graph/Chart/InteractiveComponents/Annotations/Annotation/Area.tsx +1 -1
  75. package/src/Graph/Chart/InteractiveComponents/Annotations/Annotation/Line.tsx +1 -1
  76. package/src/Graph/Chart/InteractiveComponents/Annotations/Annotation/index.tsx +3 -3
  77. package/src/Graph/Chart/InteractiveComponents/Annotations/Area/Downtime.tsx +1 -1
  78. package/src/Graph/Chart/InteractiveComponents/Annotations/EventAnnotations.tsx +3 -3
  79. package/src/Graph/Chart/InteractiveComponents/Annotations/Line/Comments.tsx +1 -1
  80. package/src/Graph/Chart/InteractiveComponents/Annotations/annotationsAtoms.ts +4 -4
  81. package/src/Graph/Chart/InteractiveComponents/Bar.tsx +1 -1
  82. package/src/Graph/Chart/InteractiveComponents/GraphValueTooltip/GraphValueTooltip.tsx +1 -1
  83. package/src/Graph/Chart/InteractiveComponents/GraphValueTooltip/GraphValueTooltipContent.tsx +1 -1
  84. package/src/Graph/Chart/InteractiveComponents/GraphValueTooltip/useGraphValueTooltip.ts +3 -3
  85. package/src/Graph/Chart/InteractiveComponents/TimeShiftZones/index.tsx +1 -1
  86. package/src/Graph/Chart/InteractiveComponents/TimeShiftZones/models.ts +2 -2
  87. package/src/Graph/Chart/InteractiveComponents/Tooltip/useGraphTooltip.ts +1 -1
  88. package/src/Graph/Chart/InteractiveComponents/index.tsx +7 -7
  89. package/src/Graph/Chart/Legend/LegendHeader.tsx +2 -2
  90. package/src/Graph/Chart/Legend/index.tsx +3 -3
  91. package/src/Graph/Chart/common/index.ts +5 -5
  92. package/src/Graph/Chart/helpers/index.ts +5 -5
  93. package/src/Graph/Chart/index.tsx +2 -2
  94. package/src/Graph/Chart/models.ts +4 -4
  95. package/src/Graph/Gauge/AnimatedPie.tsx +1 -1
  96. package/src/Graph/Gauge/Gauge.cypress.spec.tsx +2 -2
  97. package/src/Graph/Gauge/PieData.tsx +1 -1
  98. package/src/Graph/Gauge/ResponsiveGauge.tsx +5 -5
  99. package/src/Graph/Gauge/models.ts +3 -3
  100. package/src/Graph/HeatMap/HeatMap.cypress.spec.tsx +3 -3
  101. package/src/Graph/HeatMap/HeatMapData.json +1 -1
  102. package/src/Graph/HeatMap/ResponsiveHeatMap.tsx +1 -1
  103. package/src/Graph/PieChart/PieChart.stories.tsx +1 -1
  104. package/src/Graph/PieChart/ResponsivePie.tsx +7 -3
  105. package/src/Graph/SingleBar/ResponsiveSingleBar.tsx +8 -8
  106. package/src/Graph/SingleBar/SingleBar.cypress.spec.tsx +1 -1
  107. package/src/Graph/SingleBar/SingleBar.tsx +1 -1
  108. package/src/Graph/Text/Text.cypress.spec.tsx +2 -2
  109. package/src/Graph/Tree/DescendantNodes.tsx +1 -1
  110. package/src/Graph/Tree/Links.tsx +5 -5
  111. package/src/Graph/Tree/StandaloneTree.tsx +1 -1
  112. package/src/Graph/Tree/Tree.cypress.spec.tsx +2 -2
  113. package/src/Graph/Tree/Tree.stories.tsx +2 -2
  114. package/src/Graph/Tree/Tree.tsx +3 -3
  115. package/src/Graph/Tree/stories/contents.tsx +2 -2
  116. package/src/Graph/common/Axes/index.tsx +1 -1
  117. package/src/Graph/common/Axes/models.ts +1 -1
  118. package/src/Graph/common/Axes/useAxisY.ts +1 -1
  119. package/src/Graph/common/BaseChart/BaseChart.tsx +1 -1
  120. package/src/Graph/common/BaseChart/Header/index.tsx +1 -1
  121. package/src/Graph/common/Thresholds/Thresholds.tsx +2 -2
  122. package/src/Graph/common/timeSeries/index.test.ts +57 -45
  123. package/src/Graph/common/timeSeries/index.test.ts-E +622 -0
  124. package/src/Graph/common/timeSeries/index.ts +30 -30
  125. package/src/Graph/common/utils.ts +2 -2
  126. package/src/Graph/mockedData/annotationData.json +318 -320
  127. package/src/Graph/mockedData/curvesWithSameColor.json +1 -1
  128. package/src/Graph/mockedData/exclusionPeriodFirstPeriod.json +366 -586
  129. package/src/Graph/mockedData/exclusionPeriodSecondPeriod.json +370 -586
  130. package/src/Graph/mockedData/exclusionPeriodThirdPeriod.json +365 -579
  131. package/src/Graph/mockedData/lastDay.json +1290 -1324
  132. package/src/Graph/mockedData/lastDayAreaStack.json +3048 -3104
  133. package/src/Graph/mockedData/lastDayForward.json +1303 -1336
  134. package/src/Graph/mockedData/lastDayThreshold.json +2318 -2350
  135. package/src/Graph/mockedData/lastDayWithIncompleteValues.json +7 -41
  136. package/src/Graph/mockedData/lastDayWithLotOfUnits.json +1618 -1665
  137. package/src/Graph/mockedData/lastDayWithNullValues.json +7 -41
  138. package/src/Graph/mockedData/lastMonth.json +1639 -1672
  139. package/src/Graph/mockedData/lastWeek.json +2167 -2200
  140. package/src/Graph/mockedData/pingService.json +4 -12
  141. package/src/Graph/mockedData/pingServiceLinesBars.json +242 -250
  142. package/src/Graph/mockedData/pingServiceLinesBarsMixed.json +242 -250
  143. package/src/Graph/mockedData/pingServiceLinesBarsStacked.json +242 -250
  144. package/src/Graph/mockedData/pingServiceMixedStacked.json +4 -12
  145. package/src/Graph/mockedData/pingServiceStacked.json +4 -12
  146. package/src/Graph/mockedData/zoomPreview.json +370 -740
  147. package/src/Icon/IconAttach/index.tsx +1 -6
  148. package/src/Image/Image.tsx +75 -75
  149. package/src/Image/atoms.ts +3 -3
  150. package/src/Image/index.stories.tsx +1 -1
  151. package/src/Image/index.test.tsx +53 -53
  152. package/src/Image/models.ts +3 -3
  153. package/src/Image/useLoadImage.ts +49 -49
  154. package/src/InputField/Number/Number.tsx +2 -2
  155. package/src/InputField/Search/PersistentTooltip.tsx +2 -2
  156. package/src/InputField/Search/RegexpHelpTooltip.tsx +1 -1
  157. package/src/InputField/Search/index.stories.tsx +1 -1
  158. package/src/InputField/Select/Autocomplete/Connected/Multi/index.test.tsx +1 -1
  159. package/src/InputField/Select/Autocomplete/Connected/Multi/index.tsx +1 -1
  160. package/src/InputField/Select/Autocomplete/Connected/index.stories.tsx +4 -4
  161. package/src/InputField/Select/Autocomplete/Connected/index.test.tsx +6 -6
  162. package/src/InputField/Select/Autocomplete/Connected/index.tsx +12 -12
  163. package/src/InputField/Select/Autocomplete/Draggable/MultiConnected.tsx +1 -1
  164. package/src/InputField/Select/Autocomplete/Draggable/SortableList.tsx +1 -1
  165. package/src/InputField/Select/Autocomplete/Draggable/SortableListContent.tsx +5 -6
  166. package/src/InputField/Select/Autocomplete/Draggable/index.stories.tsx +6 -6
  167. package/src/InputField/Select/Autocomplete/Draggable/index.tsx +15 -16
  168. package/src/InputField/Select/Autocomplete/Multi/index.tsx +1 -1
  169. package/src/InputField/Select/Autocomplete/Popover/index.tsx +1 -1
  170. package/src/InputField/Select/Autocomplete/index.stories.tsx +2 -3
  171. package/src/InputField/Select/Autocomplete/index.tsx +10 -11
  172. package/src/InputField/Select/IconPopover/index.tsx +3 -3
  173. package/src/InputField/Select/Option.tsx +1 -1
  174. package/src/InputField/Select/index.tsx +6 -6
  175. package/src/InputField/Text/index.stories.tsx +3 -4
  176. package/src/InputField/Text/index.tsx +3 -3
  177. package/src/InputField/Text/useAutoSize.ts +62 -62
  178. package/src/LicenseMessage/index.tsx +1 -1
  179. package/src/Listing/ActionBar/ColumnMultiSelect.tsx +4 -4
  180. package/src/Listing/ActionBar/PaginationActions.tsx +1 -1
  181. package/src/Listing/ActionBar/index.tsx +6 -6
  182. package/src/Listing/Cell/DataCell.tsx +2 -2
  183. package/src/Listing/Cell/EllipsisTypography.tsx +0 -2
  184. package/src/Listing/Cell/index.tsx +7 -8
  185. package/src/Listing/Checkbox.tsx +1 -1
  186. package/src/Listing/EmptyResult/EmptyResult.tsx +0 -2
  187. package/src/Listing/Header/Cell/ListingHeaderCell.styles.ts +1 -1
  188. package/src/Listing/Header/Cell/ListingHeaderCell.tsx +1 -3
  189. package/src/Listing/Header/Cell/SelectActionListingHeaderCell.tsx +3 -5
  190. package/src/Listing/Header/ListingHeader.tsx +6 -7
  191. package/src/Listing/Header/_internals/DraggableIconButton.tsx +1 -3
  192. package/src/Listing/Header/_internals/Label.tsx +2 -3
  193. package/src/Listing/Listing.cypress.spec.tsx +307 -307
  194. package/src/Listing/Row/Row.tsx +4 -5
  195. package/src/Listing/Row/SkeletonLoaderRows.tsx +7 -9
  196. package/src/Listing/index.stories.tsx +1 -1
  197. package/src/Listing/index.tsx +32 -27
  198. package/src/Listing/useResizeObserver.ts +1 -1
  199. package/src/ListingPage/Filter.tsx +15 -18
  200. package/src/ListingPage/index.tsx +2 -2
  201. package/src/Logo/CentreonLogo.tsx +2 -2
  202. package/src/MenuSkeleton/index.tsx +1 -1
  203. package/src/Module/LicensedModule/LicenseCheck/index.tsx +1 -1
  204. package/src/Module/index.tsx +3 -3
  205. package/src/MultiSelectEntries/index.tsx +1 -1
  206. package/src/MultiSelectEntries/useHover.ts +1 -1
  207. package/src/Panel/Section/ExpandableSection.tsx +6 -6
  208. package/src/Panel/Section/index.test.tsx +1 -1
  209. package/src/Panel/Section/index.tsx +1 -1
  210. package/src/Panel/index.tsx +15 -13
  211. package/src/RichTextEditor/ContentEditable.tsx +195 -195
  212. package/src/RichTextEditor/RichTextEditor.tsx +244 -244
  213. package/src/RichTextEditor/index.ts +2 -2
  214. package/src/RichTextEditor/initialEditorState.json +113 -113
  215. package/src/RichTextEditor/plugins/AutoLinkPlugin/index.tsx +4 -4
  216. package/src/RichTextEditor/plugins/FloatingLinkEditorPlugin.tsx +10 -10
  217. package/src/RichTextEditor/plugins/ToolbarPlugin/AlignPicker.tsx +4 -4
  218. package/src/RichTextEditor/plugins/ToolbarPlugin/BlockButtons.tsx +7 -7
  219. package/src/RichTextEditor/plugins/ToolbarPlugin/FormatButtons.tsx +124 -124
  220. package/src/RichTextEditor/plugins/ToolbarPlugin/LinkButton.tsx +5 -5
  221. package/src/RichTextEditor/plugins/ToolbarPlugin/ListButton.tsx +2 -2
  222. package/src/RichTextEditor/plugins/ToolbarPlugin/MacrosButton.tsx +4 -4
  223. package/src/RichTextEditor/plugins/ToolbarPlugin/UndoRedoButtons.tsx +97 -97
  224. package/src/RichTextEditor/plugins/ToolbarPlugin/index.tsx +62 -62
  225. package/src/RichTextEditor/translatedLabels.ts +8 -8
  226. package/src/Snackbar/SnackbarProvider.tsx +3 -4
  227. package/src/Snackbar/Transition.tsx +5 -6
  228. package/src/Snackbar/index.tsx +7 -8
  229. package/src/SortableItems/Item.tsx +3 -3
  230. package/src/SortableItems/SortableItem.tsx +1 -1
  231. package/src/SortableItems/index.stories.tsx +5 -6
  232. package/src/SortableItems/index.tsx +18 -19
  233. package/src/StatusChip/index.tsx +1 -1
  234. package/src/StoryBookThemeProvider/index.tsx +35 -36
  235. package/src/ThemeProvider/index.tsx +8 -10
  236. package/src/ThemeProvider/palettes.ts +42 -27
  237. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/PickersStartEndDate.tsx +1 -1
  238. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/index.tsx +1 -1
  239. package/src/TimePeriods/SelectedTimePeriod.tsx +1 -1
  240. package/src/TimePeriods/TimePeriods.cypress.spec.tsx +3 -3
  241. package/src/TimePeriods/TimePeriods.tsx +1 -1
  242. package/src/TimePeriods/helpers/index.ts +1 -1
  243. package/src/TimePeriods/index.stories.tsx +1 -1
  244. package/src/TimePeriods/index.tsx +1 -1
  245. package/src/TimePeriods/models.ts +2 -2
  246. package/src/TimePeriods/timePeriodsAtoms.ts +1 -1
  247. package/src/TimePeriods/useTimePeriod.ts +4 -4
  248. package/src/TopCounterElements/ResourceSubMenu.tsx +1 -4
  249. package/src/TopCounterElements/StatusCounter.tsx +2 -2
  250. package/src/Typography/FluidTypography/index.tsx +46 -46
  251. package/src/Typography/Subtitle.tsx +2 -2
  252. package/src/Typography/story.utils.tsx +6 -6
  253. package/src/WallpaperPage/index.tsx +1 -1
  254. package/src/Wizard/ActionsBar.test.tsx +1 -1
  255. package/src/Wizard/ActionsBar.tsx +1 -1
  256. package/src/Wizard/StepIcon.tsx +1 -1
  257. package/src/Wizard/Stepper.tsx +2 -2
  258. package/src/Wizard/WizardContent.tsx +1 -1
  259. package/src/Wizard/index.stories.tsx +2 -2
  260. package/src/Wizard/index.test.tsx +3 -3
  261. package/src/Wizard/index.tsx +2 -2
  262. package/src/Wizard/models.ts +1 -1
  263. package/src/api/TestQueryProvider.tsx +24 -24
  264. package/src/api/buildListingDecoder.ts +1 -1
  265. package/src/api/buildListingEndpoint/getSearchQueryParameterValue.ts +11 -11
  266. package/src/api/buildListingEndpoint/index.ts +1 -1
  267. package/src/api/useFetchQuery/index.test.ts +1 -1
  268. package/src/api/useFetchQuery/index.ts +8 -8
  269. package/src/api/useGraphQuery/index.ts +1 -1
  270. package/src/api/useMutationQuery/index.test.ts +1 -1
  271. package/src/api/useMutationQuery/index.ts +4 -4
  272. package/src/api/useRequest/index.test.ts +1 -1
  273. package/src/api/useRequest/index.ts +3 -3
  274. package/src/base/tokens/source/$metadata.json +2 -4
  275. package/src/base/tokens/source/base.json +1 -1
  276. package/src/base/tokens/themes/base.tokens.json +34 -166
  277. package/src/base/tokens/themes/ui-dark.tokens.json +34 -166
  278. package/src/base/tokens/themes/ui-light.tokens.json +34 -166
  279. package/src/components/Button/Icon/IconButton.tsx +1 -1
  280. package/src/components/CollapsibleItem/CollapsibleItem.tsx +2 -2
  281. package/src/components/DataTable/DataListing.tsx +1 -1
  282. package/src/components/DataTable/DataTable.cypress.spec.tsx +1 -1
  283. package/src/components/DataTable/DataTable.stories.tsx +4 -1
  284. package/src/components/DataTable/EmptyState/DataTableEmptyState.tsx +1 -1
  285. package/src/components/DataTable/index.ts +2 -2
  286. package/src/components/Form/AccessRights/AccessRights.cypress.spec.tsx +11 -11
  287. package/src/components/Form/AccessRights/Actions/Actions.tsx +1 -1
  288. package/src/components/Form/AccessRights/List/Item.tsx +5 -5
  289. package/src/components/Form/AccessRights/List/List.tsx +4 -4
  290. package/src/components/Form/AccessRights/ShareInput/ContactSwitch.tsx +2 -2
  291. package/src/components/Form/AccessRights/ShareInput/ShareInput.styles.ts +1 -1
  292. package/src/components/Form/AccessRights/ShareInput/ShareInput.tsx +3 -3
  293. package/src/components/Form/AccessRights/ShareInput/useShareInput.tsx +2 -2
  294. package/src/components/Form/AccessRights/Stats/Stats.tsx +2 -2
  295. package/src/components/Form/AccessRights/atoms.ts +1 -1
  296. package/src/components/Form/AccessRights/storiesData.ts +1 -1
  297. package/src/components/Form/AccessRights/useAccessRightsChange.ts +1 -1
  298. package/src/components/Form/Dashboard/DashboardDuplicationForm.tsx +3 -3
  299. package/src/components/Form/Dashboard/DashboardForm.tsx +5 -5
  300. package/src/components/Form/Dashboard/GlobalRefreshFieldOption.tsx +4 -4
  301. package/src/components/Header/PageHeader/PageHeader.tsx +1 -1
  302. package/src/components/Header/PageHeader/PageHeaderActions.tsx +1 -1
  303. package/src/components/Header/PageHeader/PageHeaderMain.tsx +1 -1
  304. package/src/components/Header/PageHeader/PageHeaderMenu.tsx +1 -1
  305. package/src/components/Header/PageHeader/PageHeaderTitle.tsx +1 -1
  306. package/src/components/Header/PageHeader/index.ts +2 -2
  307. package/src/components/Inputs/Switch/Switch.tsx +1 -1
  308. package/src/components/ItemComposition/ItemComposition.stories.tsx +6 -4
  309. package/src/components/ItemComposition/index.ts +1 -1
  310. package/src/components/Layout/PageLayout/PageLayout.stories.tsx +1 -1
  311. package/src/components/Layout/PageLayout/PageQuickAccess.tsx +12 -13
  312. package/src/components/Layout/PageLayout/index.ts +2 -2
  313. package/src/components/List/Item/ListItem.tsx +3 -3
  314. package/src/components/List/Item/index.ts +2 -2
  315. package/src/components/List/List.stories.tsx +16 -14
  316. package/src/components/List/List.tsx +2 -2
  317. package/src/components/List/index.ts +1 -1
  318. package/src/components/Menu/Button/MenuButton.tsx +1 -1
  319. package/src/components/Menu/index.ts +2 -2
  320. package/src/components/Menu/useMenu.tsx +3 -3
  321. package/src/components/Modal/ConfirmationModal/ConfirmationModal.cypress.spec.tsx +1 -1
  322. package/src/components/Modal/ConfirmationModal/ConfirmationModal.stories.tsx +1 -1
  323. package/src/components/Modal/ConfirmationModal/ConfirmationModal.tsx +1 -1
  324. package/src/components/Modal/Modal.tsx +1 -1
  325. package/src/components/Modal/ModalBody.tsx +1 -1
  326. package/src/components/Modal/ModalHeader.tsx +1 -1
  327. package/src/components/Modal/index.ts +2 -2
  328. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.tsx +2 -2
  329. package/src/components/Tooltip/ConfirmationTooltip/TooltipContent.tsx +1 -1
  330. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.tsx +1 -1
  331. package/src/components/Zoom/Minimap.tsx +1 -1
  332. package/src/components/Zoom/Zoom.stories.tsx +1 -1
  333. package/src/components/Zoom/ZoomContent.tsx +3 -3
  334. package/src/components/Zoom/localPoint.ts +4 -4
  335. package/src/components/Zoom/useMinimap.ts +1 -1
  336. package/src/queryParameters/index.ts +1 -1
  337. package/src/styles/tokens/themes/_ui-dark.tokens.json +34 -166
  338. package/src/styles/tokens/themes/_ui-light.tokens.json +34 -166
  339. package/src/utils/index.ts +29 -29
  340. package/src/utils/resourcesStatusURL.ts +2 -2
  341. package/src/utils/sanitizedHTML.ts +1 -1
  342. package/src/utils/useCopyToClipboard.ts +1 -1
  343. package/src/utils/useDebounce.ts +1 -1
  344. package/src/utils/useFullscreen/useFullscreen.ts +2 -2
  345. package/src/utils/useInfiniteScrollListing.ts +129 -129
  346. package/src/utils/useIntersectionObserver.ts +1 -1
  347. package/src/utils/useKeyObserver.tsx +1 -1
  348. package/src/utils/useLicenseExpirationWarning.test.tsx +1 -1
  349. package/src/utils/useLicenseExpirationWarning.ts +1 -1
  350. package/src/utils/useLocaleDateTimeFormat/index.test.tsx +3 -3
  351. package/src/utils/useLocaleDateTimeFormat/index.ts +1 -1
  352. package/src/utils/useLocaleDateTimeFormat/localeFallback.test.tsx +4 -4
  353. package/src/utils/useLocaleTimezoneDate/LocaleTimezoneDate.cypress.spec.tsx +2 -2
  354. package/src/utils/useMemoComponent.ts +1 -1
  355. package/src/utils/usePluralizedTranslation.ts +2 -2
  356. package/src/utils/useViewportIntersection.ts +1 -1
@@ -1,129 +1,129 @@
1
- import { useEffect, useMemo, useRef, useState } from 'react';
2
-
3
- import { equals, gte, isNil, reduce } from 'ramda';
4
- import { PrimitiveAtom, useAtom } from 'jotai';
5
- import { JsonDecoder } from 'ts.data.json';
6
-
7
- import {
8
- QueryParameter,
9
- buildListingEndpoint,
10
- useFetchQuery,
11
- useIntersectionObserver
12
- } from '@centreon/ui';
13
-
14
- import type { Listing } from '../api/models';
15
- import { Parameters } from '../api/buildListingEndpoint/models';
16
-
17
- interface UseInfiniteScrollListing<T> {
18
- elementRef: (node) => void;
19
- elements: Array<T>;
20
- isLoading: boolean;
21
- total?: number;
22
- }
23
-
24
- interface UseInfiniteScrollListingProps<T> {
25
- customQueryParameters?: Array<QueryParameter>;
26
- decoder?: JsonDecoder.Decoder<Listing<T>>;
27
- enabled?: boolean;
28
- endpoint: string;
29
- limit?: number;
30
- pageAtom: PrimitiveAtom<number>;
31
- parameters?: Parameters;
32
- queryKeyName: string;
33
- suspense?: boolean;
34
- }
35
-
36
- export const useInfiniteScrollListing = <T>({
37
- queryKeyName,
38
- endpoint,
39
- decoder,
40
- pageAtom,
41
- suspense = true,
42
- parameters,
43
- customQueryParameters,
44
- limit = 100,
45
- enabled = true
46
- }: UseInfiniteScrollListingProps<T>): UseInfiniteScrollListing<T> => {
47
- const [maxPage, setMaxPage] = useState(1);
48
-
49
- const elements = useRef<Array<T> | undefined>(undefined);
50
-
51
- const [page, setPage] = useAtom(pageAtom);
52
-
53
- const { data, isLoading, prefetchNextPage, fetchStatus } = useFetchQuery<
54
- Listing<T>
55
- >({
56
- decoder,
57
- getEndpoint: (params) =>
58
- buildListingEndpoint({
59
- baseEndpoint: endpoint,
60
- customQueryParameters,
61
- parameters: { limit, page: params?.page || page, ...parameters }
62
- }),
63
- getQueryKey: () => [
64
- queryKeyName,
65
- page,
66
- JSON.stringify(parameters),
67
- JSON.stringify(customQueryParameters)
68
- ],
69
- isPaginated: true,
70
- queryOptions: {
71
- enabled,
72
- refetchOnMount: false,
73
- refetchOnWindowFocus: false,
74
- suspense: suspense && equals(page, 1)
75
- }
76
- });
77
-
78
- const elementRef = useIntersectionObserver({
79
- action: () => {
80
- setPage((currentPage) => currentPage + 1);
81
- },
82
- loading: !equals(fetchStatus, 'idle'),
83
- maxPage,
84
- page
85
- });
86
-
87
- elements.current = useMemo(() => {
88
- if (isNil(data) || !equals(fetchStatus, 'idle')) {
89
- return elements.current;
90
- }
91
-
92
- return reduce<T, Array<T>>(
93
- (acc, element) => [...acc, element],
94
- equals(page, 1) ? [] : elements.current || [],
95
- data.result
96
- );
97
- }, [page, data, fetchStatus]);
98
-
99
- useEffect(() => {
100
- if (isNil(data)) {
101
- return;
102
- }
103
-
104
- const total = data.meta.total || 1;
105
- const newMaxPage = Math.ceil(total / limit);
106
-
107
- setMaxPage(newMaxPage);
108
-
109
- if (gte(page, newMaxPage)) {
110
- return;
111
- }
112
-
113
- prefetchNextPage({
114
- getPrefetchQueryKey: (newPage) => [`dashboards`, newPage],
115
- page
116
- });
117
- }, [data]);
118
-
119
- useEffect(() => {
120
- return () => setPage(1);
121
- }, []);
122
-
123
- return {
124
- elementRef,
125
- elements: elements.current || [],
126
- isLoading,
127
- total: data?.meta.total
128
- };
129
- };
1
+ import { useEffect, useMemo, useRef, useState } from 'react';
2
+
3
+ import { PrimitiveAtom, useAtom } from 'jotai';
4
+ import { equals, gte, isNil, reduce } from 'ramda';
5
+ import { JsonDecoder } from 'ts.data.json';
6
+
7
+ import {
8
+ QueryParameter,
9
+ buildListingEndpoint,
10
+ useFetchQuery,
11
+ useIntersectionObserver
12
+ } from '@centreon/ui';
13
+
14
+ import { Parameters } from '../api/buildListingEndpoint/models';
15
+ import type { Listing } from '../api/models';
16
+
17
+ interface UseInfiniteScrollListing<T> {
18
+ elementRef: (node) => void;
19
+ elements: Array<T>;
20
+ isLoading: boolean;
21
+ total?: number;
22
+ }
23
+
24
+ interface UseInfiniteScrollListingProps<T> {
25
+ customQueryParameters?: Array<QueryParameter>;
26
+ decoder?: JsonDecoder.Decoder<Listing<T>>;
27
+ enabled?: boolean;
28
+ endpoint: string;
29
+ limit?: number;
30
+ pageAtom: PrimitiveAtom<number>;
31
+ parameters?: Parameters;
32
+ queryKeyName: string;
33
+ suspense?: boolean;
34
+ }
35
+
36
+ export const useInfiniteScrollListing = <T>({
37
+ queryKeyName,
38
+ endpoint,
39
+ decoder,
40
+ pageAtom,
41
+ suspense = true,
42
+ parameters,
43
+ customQueryParameters,
44
+ limit = 100,
45
+ enabled = true
46
+ }: UseInfiniteScrollListingProps<T>): UseInfiniteScrollListing<T> => {
47
+ const [maxPage, setMaxPage] = useState(1);
48
+
49
+ const elements = useRef<Array<T> | undefined>(undefined);
50
+
51
+ const [page, setPage] = useAtom(pageAtom);
52
+
53
+ const { data, isLoading, prefetchNextPage, fetchStatus } = useFetchQuery<
54
+ Listing<T>
55
+ >({
56
+ decoder,
57
+ getEndpoint: (params) =>
58
+ buildListingEndpoint({
59
+ baseEndpoint: endpoint,
60
+ customQueryParameters,
61
+ parameters: { limit, page: params?.page || page, ...parameters }
62
+ }),
63
+ getQueryKey: () => [
64
+ queryKeyName,
65
+ page,
66
+ JSON.stringify(parameters),
67
+ JSON.stringify(customQueryParameters)
68
+ ],
69
+ isPaginated: true,
70
+ queryOptions: {
71
+ enabled,
72
+ refetchOnMount: false,
73
+ refetchOnWindowFocus: false,
74
+ suspense: suspense && equals(page, 1)
75
+ }
76
+ });
77
+
78
+ const elementRef = useIntersectionObserver({
79
+ action: () => {
80
+ setPage((currentPage) => currentPage + 1);
81
+ },
82
+ loading: !equals(fetchStatus, 'idle'),
83
+ maxPage,
84
+ page
85
+ });
86
+
87
+ elements.current = useMemo(() => {
88
+ if (isNil(data) || !equals(fetchStatus, 'idle')) {
89
+ return elements.current;
90
+ }
91
+
92
+ return reduce<T, Array<T>>(
93
+ (acc, element) => [...acc, element],
94
+ equals(page, 1) ? [] : elements.current || [],
95
+ data.result
96
+ );
97
+ }, [page, data, fetchStatus]);
98
+
99
+ useEffect(() => {
100
+ if (isNil(data)) {
101
+ return;
102
+ }
103
+
104
+ const total = data.meta.total || 1;
105
+ const newMaxPage = Math.ceil(total / limit);
106
+
107
+ setMaxPage(newMaxPage);
108
+
109
+ if (gte(page, newMaxPage)) {
110
+ return;
111
+ }
112
+
113
+ prefetchNextPage({
114
+ getPrefetchQueryKey: (newPage) => ['dashboards', newPage],
115
+ page
116
+ });
117
+ }, [data]);
118
+
119
+ useEffect(() => {
120
+ return () => setPage(1);
121
+ }, []);
122
+
123
+ return {
124
+ elementRef,
125
+ elements: elements.current || [],
126
+ isLoading,
127
+ total: data?.meta.total
128
+ };
129
+ };
@@ -1,4 +1,4 @@
1
- import { useRef, useCallback } from 'react';
1
+ import { useCallback, useRef } from 'react';
2
2
 
3
3
  interface HookParam {
4
4
  action: () => void;
@@ -1,4 +1,4 @@
1
- import { useState, useEffect } from 'react';
1
+ import { useEffect, useState } from 'react';
2
2
 
3
3
  interface UseKeyObserverProps {
4
4
  isShiftKeyDown: boolean;
@@ -1,5 +1,5 @@
1
- import dayjs from 'dayjs';
2
1
  import { renderHook } from '@testing-library/react';
2
+ import dayjs from 'dayjs';
3
3
 
4
4
  import {
5
5
  getFetchCall,
@@ -1,7 +1,7 @@
1
1
  import { useEffect } from 'react';
2
2
 
3
3
  import dayjs from 'dayjs';
4
- import { path, pipe, propEq, find, lt, isNil } from 'ramda';
4
+ import { path, find, isNil, lt, pipe, propEq } from 'ramda';
5
5
  import { useTranslation } from 'react-i18next';
6
6
 
7
7
  import { useFetchQuery, useSnackbar } from '..';
@@ -2,13 +2,13 @@ import { useEffect } from 'react';
2
2
 
3
3
  import dayjs from 'dayjs';
4
4
  import 'dayjs/locale/en';
5
+ import { RenderResult, render } from '@testing-library/react';
6
+ import localizedFormatPlugin from 'dayjs/plugin/localizedFormat';
5
7
  import timezonePlugin from 'dayjs/plugin/timezone';
6
8
  import utcPlugin from 'dayjs/plugin/utc';
7
- import localizedFormatPlugin from 'dayjs/plugin/localizedFormat';
8
- import { render, RenderResult } from '@testing-library/react';
9
9
  import { Provider, useSetAtom } from 'jotai';
10
10
 
11
- import { userAtom, ThemeMode } from '@centreon/ui-context';
11
+ import { ThemeMode, userAtom } from '@centreon/ui-context';
12
12
 
13
13
  import { useLocaleDateTimeFormat } from '.';
14
14
 
@@ -1,7 +1,7 @@
1
1
  import dayjs from 'dayjs';
2
+ import localizedFormat from 'dayjs/plugin/localizedFormat';
2
3
  import humanizeDuration from 'humanize-duration';
3
4
  import { useAtomValue } from 'jotai';
4
- import localizedFormat from 'dayjs/plugin/localizedFormat';
5
5
 
6
6
  import { userAtom } from '@centreon/ui-context';
7
7
 
@@ -2,13 +2,13 @@ import { useEffect } from 'react';
2
2
 
3
3
  import dayjs from 'dayjs';
4
4
  import 'dayjs/locale/en';
5
+ import { RenderResult, render } from '@testing-library/react';
6
+ import localizedFormatPlugin from 'dayjs/plugin/localizedFormat';
5
7
  import timezonePlugin from 'dayjs/plugin/timezone';
6
8
  import utcPlugin from 'dayjs/plugin/utc';
7
- import localizedFormatPlugin from 'dayjs/plugin/localizedFormat';
8
- import { useSetAtom, Provider } from 'jotai';
9
- import { render, RenderResult } from '@testing-library/react';
9
+ import { Provider, useSetAtom } from 'jotai';
10
10
 
11
- import { userAtom, ThemeMode } from '@centreon/ui-context';
11
+ import { ThemeMode, userAtom } from '@centreon/ui-context';
12
12
 
13
13
  import { useLocaleDateTimeFormat } from '.';
14
14
 
@@ -1,7 +1,7 @@
1
+ import dayjs from 'dayjs';
1
2
  import localizedFormat from 'dayjs/plugin/localizedFormat';
2
- import utc from 'dayjs/plugin/utc';
3
3
  import timezonePlugin from 'dayjs/plugin/timezone';
4
- import dayjs from 'dayjs';
4
+ import utc from 'dayjs/plugin/utc';
5
5
 
6
6
  import 'dayjs/locale/de';
7
7
  import 'dayjs/locale/fr';
@@ -1,4 +1,4 @@
1
- import { useMemo, useRef, DependencyList, ReactElement } from 'react';
1
+ import { DependencyList, ReactElement, useMemo, useRef } from 'react';
2
2
 
3
3
  import { equals } from 'ramda';
4
4
 
@@ -1,9 +1,9 @@
1
1
  import { useCallback } from 'react';
2
2
 
3
- import { useTranslation } from 'react-i18next';
4
- import pluralize from 'pluralize';
5
3
  import { useAtomValue } from 'jotai';
4
+ import pluralize from 'pluralize';
6
5
  import { equals, includes } from 'ramda';
6
+ import { useTranslation } from 'react-i18next';
7
7
 
8
8
  import { userAtom } from '@centreon/ui-context';
9
9
 
@@ -1,4 +1,4 @@
1
- import { useState, useRef, useEffect, Dispatch, SetStateAction } from 'react';
1
+ import { Dispatch, SetStateAction, useEffect, useRef, useState } from 'react';
2
2
 
3
3
  interface ViewportIntersectionState {
4
4
  isInViewport: boolean;