@centreon/ui 24.4.13 → 24.4.14

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 (544) hide show
  1. package/.storybook/main.js +82 -0
  2. package/.storybook/preview.tsx +21 -0
  3. package/README.md +14 -44
  4. package/jest.config.js +20 -0
  5. package/package.json +34 -104
  6. package/{test/setupTests.js → setupTests.js} +1 -1
  7. package/src/ActionsList/index.stories.tsx +0 -74
  8. package/src/ActionsList/index.tsx +21 -58
  9. package/src/Button/Icon/index.tsx +3 -12
  10. package/src/Button/Save/StartIcon.tsx +3 -3
  11. package/src/Button/Save/index.stories.tsx +5 -10
  12. package/src/Button/Save/index.tsx +1 -1
  13. package/src/Dialog/Confirm/index.tsx +4 -17
  14. package/src/Dialog/Duplicate/index.test.tsx +1 -1
  15. package/src/Dialog/index.tsx +2 -14
  16. package/src/FallbackPage/FallbackPage.tsx +2 -2
  17. package/src/FileDropZone/index.tsx +2 -4
  18. package/src/Form/CollapsibleGroup.tsx +5 -15
  19. package/src/Form/FormButtons.tsx +4 -2
  20. package/src/Form/Inputs/Autocomplete.tsx +1 -1
  21. package/src/Form/Inputs/ConnectedAutocomplete.tsx +1 -3
  22. package/src/Form/Inputs/Grid.tsx +2 -4
  23. package/src/Form/Inputs/Radio.tsx +5 -16
  24. package/src/Form/Inputs/Switch.tsx +1 -1
  25. package/src/Form/Inputs/Text.tsx +7 -18
  26. package/src/Form/Inputs/index.tsx +16 -34
  27. package/src/Form/Inputs/models.ts +4 -28
  28. package/src/Form/{Form.stories.tsx → index.stories.tsx} +3 -2
  29. package/src/Form/{Form.tsx → index.tsx} +16 -38
  30. package/src/Form/storiesData.tsx +3 -50
  31. package/src/Home.stories.mdx +84 -1
  32. package/src/Image/Image.tsx +1 -11
  33. package/src/Image/index.stories.tsx +2 -2
  34. package/src/Image/index.test.tsx +3 -3
  35. package/src/InputField/Search/PersistentTooltip.tsx +6 -10
  36. package/src/InputField/Select/Autocomplete/Connected/Multi/index.test.tsx +22 -4
  37. package/src/InputField/Select/Autocomplete/Connected/index.stories.tsx +3 -0
  38. package/src/InputField/Select/Autocomplete/Connected/index.test.tsx +7 -4
  39. package/src/InputField/Select/Autocomplete/Connected/index.tsx +12 -44
  40. package/src/InputField/Select/Autocomplete/Draggable/SortableList.tsx +1 -1
  41. package/src/InputField/Select/Autocomplete/Draggable/SortableListContent.tsx +1 -1
  42. package/src/InputField/Select/Autocomplete/Draggable/index.stories.tsx +2 -0
  43. package/src/InputField/Select/Autocomplete/Draggable/index.tsx +1 -1
  44. package/src/InputField/Select/Autocomplete/Multi/index.tsx +15 -32
  45. package/src/InputField/Select/Autocomplete/index.stories.tsx +10 -1
  46. package/src/InputField/Select/Autocomplete/index.tsx +2 -5
  47. package/src/InputField/Select/IconPopover/index.tsx +2 -2
  48. package/src/InputField/Select/index.tsx +2 -3
  49. package/src/InputField/Text/index.tsx +9 -19
  50. package/src/Listing/ActionBar/index.tsx +8 -15
  51. package/src/Listing/Cell/DataCell.tsx +68 -43
  52. package/src/Listing/Cell/index.tsx +8 -88
  53. package/src/Listing/Header/{_internals/PredefinedSelectionList.tsx → PredefinedSelectionList.tsx} +1 -1
  54. package/src/Listing/Header/{Cell/ListingHeaderCell.tsx → SortableCell/Content.tsx} +83 -18
  55. package/src/Listing/Header/SortableCell/DraggableIcon.tsx +41 -0
  56. package/src/Listing/Header/{ListingHeader.tsx → index.tsx} +106 -29
  57. package/src/Listing/{Row/Row.tsx → Row.tsx} +11 -12
  58. package/src/Listing/Skeleton.tsx +11 -0
  59. package/src/Listing/index.stories.tsx +40 -155
  60. package/src/Listing/index.test.tsx +1 -1
  61. package/src/Listing/index.tsx +263 -217
  62. package/src/Listing/models.ts +0 -1
  63. package/src/Listing/tableAtoms.ts +10 -15
  64. package/src/Listing/useStyleTable.ts +9 -9
  65. package/src/ListingPage/index.stories.tsx +8 -21
  66. package/src/ListingPage/index.tsx +38 -20
  67. package/src/Logo/CentreonLogo.tsx +2 -2
  68. package/src/Module/LicensedModule/LicenseCheck/index.stories.tsx +2 -0
  69. package/src/Panel/Memoized.tsx +1 -1
  70. package/src/Panel/Section/index.test.tsx +1 -1
  71. package/src/Panel/Section/index.tsx +1 -1
  72. package/src/Panel/index.tsx +6 -10
  73. package/src/PopoverMenu/index.tsx +4 -18
  74. package/src/RichTextEditor/ContentEditable.tsx +24 -70
  75. package/src/RichTextEditor/RichTextEditor.tsx +47 -172
  76. package/src/RichTextEditor/index.stories.tsx +0 -14
  77. package/src/RichTextEditor/plugins/AutoLinkPlugin/index.tsx +5 -53
  78. package/src/RichTextEditor/plugins/FloatingLinkEditorPlugin.tsx +16 -54
  79. package/src/RichTextEditor/plugins/ToolbarPlugin/FormatButtons.tsx +92 -31
  80. package/src/RichTextEditor/plugins/ToolbarPlugin/UndoRedoButtons.tsx +3 -13
  81. package/src/RichTextEditor/plugins/ToolbarPlugin/index.tsx +10 -35
  82. package/src/RichTextEditor/translatedLabels.ts +0 -3
  83. package/src/Snackbar/index.tsx +4 -14
  84. package/src/Snackbar/useSnackbar.tsx +1 -5
  85. package/src/SortableItems/SortableItem.tsx +2 -3
  86. package/src/SortableItems/index.tsx +7 -2
  87. package/src/ThemeProvider/index.tsx +10 -42
  88. package/src/ThemeProvider/palettes.ts +201 -422
  89. package/src/Typography/{Typography.stories.tsx → index.stories.tsx} +5 -5
  90. package/src/WallpaperPage/index.stories.tsx +1 -1
  91. package/src/Wizard/ActionsBar.test.tsx +1 -1
  92. package/src/Wizard/WizardContent.tsx +3 -2
  93. package/src/Wizard/index.stories.tsx +18 -5
  94. package/src/Wizard/index.test.tsx +1 -1
  95. package/src/Wizard/index.tsx +5 -20
  96. package/src/Wizard/models.ts +0 -7
  97. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-loading-with-no-data-1-snap.png +0 -0
  98. package/src/api/QueryProvider.tsx +1 -1
  99. package/src/api/TestQueryProvider.tsx +1 -2
  100. package/src/api/buildListingEndpoint/getSearchQueryParameterValue.ts +26 -35
  101. package/src/api/buildListingEndpoint/index.test.ts +2 -2
  102. package/src/api/buildListingEndpoint/index.ts +1 -1
  103. package/src/api/buildListingEndpoint/models.ts +2 -2
  104. package/src/api/customFetch.ts +3 -22
  105. package/src/api/useFetchQuery/index.ts +37 -56
  106. package/src/api/useMutationQuery/index.ts +22 -70
  107. package/src/api/useRequest/index.ts +6 -9
  108. package/src/index.ts +21 -31
  109. package/src/queryParameters/url/index.ts +1 -5
  110. package/src/storyshots.test.js +52 -0
  111. package/{test → src}/testRenderer.tsx +1 -1
  112. package/src/utils/getNormalizedId.ts +3 -1
  113. package/src/utils/useCopyToClipboard.ts +3 -2
  114. package/src/utils/useDebounce.ts +5 -8
  115. package/src/utils/useDeepCallback.ts +3 -1
  116. package/src/utils/useDeepMemo.ts +3 -1
  117. package/src/utils/useIntersectionObserver.ts +5 -5
  118. package/src/utils/useKeyObserver.tsx +3 -1
  119. package/src/utils/useLocaleDateTimeFormat/index.test.tsx +1 -1
  120. package/src/utils/useLocaleDateTimeFormat/index.ts +2 -4
  121. package/src/utils/useLocaleDateTimeFormat/localeFallback.test.tsx +1 -1
  122. package/src/utils/useMemoComponent.ts +1 -1
  123. package/testRunner.js +36 -0
  124. package/tsconfig.json +29 -0
  125. package/types/declarations.d.ts +9 -0
  126. package/public/README.md +0 -39
  127. package/public/mockServiceWorker.js +0 -303
  128. package/src/@assets/README.md +0 -5
  129. package/src/@assets/brand/centreon-logo-one-line-dark.svg +0 -1
  130. package/src/@assets/brand/centreon-logo-one-line-light.svg +0 -1
  131. package/src/@assets/icons/downtime.icon.svg +0 -1
  132. package/src/@types/aria-attributes.d.ts +0 -10
  133. package/src/@types/data-attributes.d.ts +0 -3
  134. package/src/@types/globals.d.ts +0 -9
  135. package/src/@types/vite-env.d.ts +0 -2
  136. package/src/ActionsList/ActionsList.styles.ts +0 -116
  137. package/src/ActionsList/models.ts +0 -8
  138. package/src/Checkbox/Checkbox.tsx +0 -109
  139. package/src/Checkbox/CheckboxGroup/index.stories.tsx +0 -41
  140. package/src/Checkbox/CheckboxGroup/index.tsx +0 -75
  141. package/src/Checkbox/index.stories.tsx +0 -39
  142. package/src/Checkbox/index.tsx +0 -2
  143. package/src/Dashboard/Dashboard.styles.ts +0 -108
  144. package/src/Dashboard/DashboardLayout.stories.tsx +0 -104
  145. package/src/Dashboard/Grid.tsx +0 -70
  146. package/src/Dashboard/Item.tsx +0 -100
  147. package/src/Dashboard/Layout.tsx +0 -79
  148. package/src/Dashboard/index.tsx +0 -9
  149. package/src/Dashboard/utils.ts +0 -28
  150. package/src/Form/Form.cypress.spec.tsx +0 -133
  151. package/src/Form/Form.styles.ts +0 -11
  152. package/src/Form/Inputs/Checkbox.tsx +0 -57
  153. package/src/Form/Inputs/CheckboxGroup.tsx +0 -73
  154. package/src/Form/Inputs/List/Content.tsx +0 -62
  155. package/src/Form/Inputs/List/List.styles.ts +0 -29
  156. package/src/Form/Inputs/List/List.tsx +0 -58
  157. package/src/Form/Inputs/List/useList.ts +0 -81
  158. package/src/Form/index.ts +0 -1
  159. package/src/Graph/Gauge/AnimatedPie.tsx +0 -102
  160. package/src/Graph/Gauge/Gauge.stories.tsx +0 -159
  161. package/src/Graph/Gauge/Gauge.tsx +0 -41
  162. package/src/Graph/Gauge/PieData.tsx +0 -63
  163. package/src/Graph/Gauge/ResponsiveGauge.tsx +0 -148
  164. package/src/Graph/Gauge/Thresholds.tsx +0 -117
  165. package/src/Graph/Gauge/index.ts +0 -1
  166. package/src/Graph/Gauge/models.ts +0 -20
  167. package/src/Graph/HeatMap/HeatMap.stories.tsx +0 -105
  168. package/src/Graph/HeatMap/HeatMap.styles.tsx +0 -29
  169. package/src/Graph/HeatMap/HeatMap.tsx +0 -12
  170. package/src/Graph/HeatMap/HeatMapData.json +0 -137
  171. package/src/Graph/HeatMap/ResponsiveHeatMap.tsx +0 -98
  172. package/src/Graph/HeatMap/index.ts +0 -1
  173. package/src/Graph/HeatMap/model.ts +0 -33
  174. package/src/Graph/LineChart/BasicComponents/Axes/UnitLabel.tsx +0 -20
  175. package/src/Graph/LineChart/BasicComponents/Axes/index.tsx +0 -88
  176. package/src/Graph/LineChart/BasicComponents/Axes/models.ts +0 -26
  177. package/src/Graph/LineChart/BasicComponents/Axes/useAxisY.ts +0 -100
  178. package/src/Graph/LineChart/BasicComponents/Grids/index.tsx +0 -20
  179. package/src/Graph/LineChart/BasicComponents/Lines/RegularLines/index.tsx +0 -99
  180. package/src/Graph/LineChart/BasicComponents/Lines/RegularLines/useRegularLines.ts +0 -15
  181. package/src/Graph/LineChart/BasicComponents/Lines/StackedLines/index.tsx +0 -81
  182. package/src/Graph/LineChart/BasicComponents/Lines/StackedLines/useStackedLines.ts +0 -39
  183. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/BasicThreshold.tsx +0 -53
  184. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/Circle.tsx +0 -43
  185. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/ThresholdWithPatternLines.tsx +0 -78
  186. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/ThresholdWithVariation.tsx +0 -63
  187. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/helpers/index.ts +0 -69
  188. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/index.tsx +0 -143
  189. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/models.ts +0 -105
  190. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/useCoordinateCircle.ts +0 -46
  191. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/useScaleThreshold.ts +0 -171
  192. package/src/Graph/LineChart/BasicComponents/Lines/index.tsx +0 -189
  193. package/src/Graph/LineChart/BasicComponents/Lines/models.ts +0 -45
  194. package/src/Graph/LineChart/BasicComponents/LoadingProgress.tsx +0 -46
  195. package/src/Graph/LineChart/BasicComponents/ThresholdLine.tsx +0 -64
  196. package/src/Graph/LineChart/BasicComponents/Thresholds.tsx +0 -77
  197. package/src/Graph/LineChart/BasicComponents/useFilterLines.ts +0 -60
  198. package/src/Graph/LineChart/Header/index.tsx +0 -65
  199. package/src/Graph/LineChart/Icons/Downtime.tsx +0 -9
  200. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/GuidingLines.tsx +0 -45
  201. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/RegularAnchorPoint.tsx +0 -66
  202. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/StackedAnchorPoint.tsx +0 -76
  203. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/TooltipAnchorPoint.tsx +0 -96
  204. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/index.tsx +0 -20
  205. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/models.ts +0 -62
  206. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/useTickGraph.ts +0 -94
  207. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/useTooltipAnchorPoint.ts +0 -107
  208. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/Area.tsx +0 -114
  209. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/Line.tsx +0 -103
  210. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/index.tsx +0 -80
  211. package/src/Graph/LineChart/InteractiveComponents/Annotations/Area/Downtime.tsx +0 -27
  212. package/src/Graph/LineChart/InteractiveComponents/Annotations/EventAnnotations.tsx +0 -61
  213. package/src/Graph/LineChart/InteractiveComponents/Annotations/Line/Acknowledgement.tsx +0 -27
  214. package/src/Graph/LineChart/InteractiveComponents/Annotations/Line/Comments.tsx +0 -25
  215. package/src/Graph/LineChart/InteractiveComponents/Annotations/annotationsAtoms.ts +0 -183
  216. package/src/Graph/LineChart/InteractiveComponents/Annotations/index.tsx +0 -49
  217. package/src/Graph/LineChart/InteractiveComponents/Annotations/models.ts +0 -25
  218. package/src/Graph/LineChart/InteractiveComponents/Annotations/useAnnotation.ts +0 -56
  219. package/src/Graph/LineChart/InteractiveComponents/Bar.tsx +0 -21
  220. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/TimeShiftIcon.tsx +0 -62
  221. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/TimeShiftZone.tsx +0 -74
  222. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/index.tsx +0 -85
  223. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/models.ts +0 -12
  224. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/useTimeShiftZones.ts +0 -72
  225. package/src/Graph/LineChart/InteractiveComponents/Tooltip/index.tsx +0 -59
  226. package/src/Graph/LineChart/InteractiveComponents/Tooltip/models.ts +0 -9
  227. package/src/Graph/LineChart/InteractiveComponents/Tooltip/useGraphTooltip.ts +0 -67
  228. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/index.tsx +0 -38
  229. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/models.ts +0 -9
  230. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/useZoomPreview.ts +0 -107
  231. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/zoomPreviewAtoms.ts +0 -3
  232. package/src/Graph/LineChart/InteractiveComponents/index.tsx +0 -168
  233. package/src/Graph/LineChart/InteractiveComponents/interactionWithGraphAtoms.ts +0 -52
  234. package/src/Graph/LineChart/Legend/InteractiveValue.tsx +0 -22
  235. package/src/Graph/LineChart/Legend/Legend.styles.ts +0 -117
  236. package/src/Graph/LineChart/Legend/LegendContent.tsx +0 -33
  237. package/src/Graph/LineChart/Legend/LegendHeader.tsx +0 -93
  238. package/src/Graph/LineChart/Legend/index.tsx +0 -201
  239. package/src/Graph/LineChart/Legend/models.ts +0 -16
  240. package/src/Graph/LineChart/Legend/useInteractiveValues.ts +0 -99
  241. package/src/Graph/LineChart/Legend/useLegend.ts +0 -104
  242. package/src/Graph/LineChart/LineChart.styles.ts +0 -45
  243. package/src/Graph/LineChart/LineChart.tsx +0 -317
  244. package/src/Graph/LineChart/LoadingSkeleton.tsx +0 -44
  245. package/src/Graph/LineChart/common/index.ts +0 -35
  246. package/src/Graph/LineChart/graphAtoms.ts +0 -3
  247. package/src/Graph/LineChart/helpers/doc.ts +0 -563
  248. package/src/Graph/LineChart/helpers/index.ts +0 -63
  249. package/src/Graph/LineChart/index.stories.tsx +0 -480
  250. package/src/Graph/LineChart/index.tsx +0 -115
  251. package/src/Graph/LineChart/mockedData/annotationData.json +0 -326
  252. package/src/Graph/LineChart/mockedData/exclusionPeriodFirstPeriod.json +0 -588
  253. package/src/Graph/LineChart/mockedData/exclusionPeriodSecondPeriod.json +0 -588
  254. package/src/Graph/LineChart/mockedData/exclusionPeriodThirdPeriod.json +0 -581
  255. package/src/Graph/LineChart/mockedData/lastDay.json +0 -1326
  256. package/src/Graph/LineChart/mockedData/lastDayAreaStack.json +0 -3106
  257. package/src/Graph/LineChart/mockedData/lastDayForward.json +0 -1338
  258. package/src/Graph/LineChart/mockedData/lastDayThreshold.json +0 -2352
  259. package/src/Graph/LineChart/mockedData/lastMonth.json +0 -1674
  260. package/src/Graph/LineChart/mockedData/lastWeek.json +0 -2202
  261. package/src/Graph/LineChart/mockedData/zoomPreview.json +0 -742
  262. package/src/Graph/LineChart/models.ts +0 -146
  263. package/src/Graph/LineChart/translatedLabels.ts +0 -9
  264. package/src/Graph/LineChart/useLineChartData.ts +0 -49
  265. package/src/Graph/LineChart/useLineChartIntersection.ts +0 -36
  266. package/src/Graph/SingleBar/ResponsiveSingleBar.tsx +0 -197
  267. package/src/Graph/SingleBar/SingleBar.stories.tsx +0 -204
  268. package/src/Graph/SingleBar/SingleBar.tsx +0 -25
  269. package/src/Graph/SingleBar/ThresholdLine.tsx +0 -103
  270. package/src/Graph/SingleBar/Thresholds.tsx +0 -50
  271. package/src/Graph/SingleBar/index.ts +0 -1
  272. package/src/Graph/SingleBar/models.ts +0 -10
  273. package/src/Graph/Text/Text.stories.tsx +0 -123
  274. package/src/Graph/Text/Text.styles.ts +0 -17
  275. package/src/Graph/Text/Text.tsx +0 -91
  276. package/src/Graph/Text/index.ts +0 -1
  277. package/src/Graph/common/margins.ts +0 -1
  278. package/src/Graph/common/models.ts +0 -19
  279. package/src/Graph/common/timeSeries/index.test.ts +0 -624
  280. package/src/Graph/common/timeSeries/index.ts +0 -626
  281. package/src/Graph/common/timeSeries/models.ts +0 -129
  282. package/src/Graph/common/utils.ts +0 -75
  283. package/src/Graph/index.ts +0 -5
  284. package/src/InputField/Select/Autocomplete/Connected/Multi/MultiConnectedAutocompleteField.cypress.spec.tsx +0 -127
  285. package/src/InputField/Select/Autocomplete/Connected/Multi/utils/index.ts +0 -22
  286. package/src/Listing/Cell/DataCell.styles.ts +0 -24
  287. package/src/Listing/EmptyResult/EmptyResult.tsx +0 -13
  288. package/src/Listing/Header/Cell/ListingHeaderCell.styles.ts +0 -71
  289. package/src/Listing/Header/Cell/SelectActionListingHeaderCell.styles.ts +0 -26
  290. package/src/Listing/Header/Cell/SelectActionListingHeaderCell.tsx +0 -70
  291. package/src/Listing/Header/ListingHeader.styles.ts +0 -16
  292. package/src/Listing/Header/_internals/DraggableIconButton.tsx +0 -35
  293. package/src/Listing/Header/index.ts +0 -1
  294. package/src/Listing/Listing.cypress.spec.tsx +0 -122
  295. package/src/Listing/Listing.styles.ts +0 -80
  296. package/src/Listing/ListingDocs.mdx +0 -61
  297. package/src/Listing/Row/EmptyRow.styles.ts +0 -14
  298. package/src/Listing/Row/EmptyRow.tsx +0 -30
  299. package/src/Listing/Row/SkeletonLoaderRows.tsx +0 -23
  300. package/src/ParentSize/ParentSize.tsx +0 -24
  301. package/src/ParentSize/index.ts +0 -1
  302. package/src/RichTextEditor/RichTextEditor.cypress.spec.tsx +0 -408
  303. package/src/RichTextEditor/plugins/ToolbarPlugin/AlignPicker.tsx +0 -116
  304. package/src/RichTextEditor/plugins/ToolbarPlugin/BlockButtons.tsx +0 -155
  305. package/src/RichTextEditor/plugins/ToolbarPlugin/LinkButton.tsx +0 -106
  306. package/src/RichTextEditor/plugins/ToolbarPlugin/ListButton.tsx +0 -155
  307. package/src/RichTextEditor/plugins/ToolbarPlugin/MacrosButton.tsx +0 -75
  308. package/src/RichTextEditor/plugins/ToolbarPlugin/ToolbarPlugin.styles.ts +0 -32
  309. package/src/TimePeriods/CustomTimePeriod/CompactCustomTimePeriod.styles.ts +0 -51
  310. package/src/TimePeriods/CustomTimePeriod/CompactCustomTimePeriod.tsx +0 -95
  311. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/ErrorText.tsx +0 -14
  312. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/PickersStartEndDate.tsx +0 -171
  313. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/index.tsx +0 -76
  314. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/models.ts +0 -59
  315. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/usePickersStartEndDate.ts +0 -82
  316. package/src/TimePeriods/CustomTimePeriod/SimpleCustomTimePeriod.tsx +0 -28
  317. package/src/TimePeriods/CustomTimePeriod/index.tsx +0 -66
  318. package/src/TimePeriods/DateTimePickerInput.tsx +0 -77
  319. package/src/TimePeriods/ResolutionTimePeriod.cypress.spec.tsx +0 -65
  320. package/src/TimePeriods/SelectedTimePeriod.tsx +0 -102
  321. package/src/TimePeriods/TimePeriods.cypress.spec.tsx +0 -486
  322. package/src/TimePeriods/TimePeriods.styles.ts +0 -22
  323. package/src/TimePeriods/helpers/index.ts +0 -26
  324. package/src/TimePeriods/index.stories.tsx +0 -121
  325. package/src/TimePeriods/index.tsx +0 -79
  326. package/src/TimePeriods/mockedData.ts +0 -12
  327. package/src/TimePeriods/models.ts +0 -97
  328. package/src/TimePeriods/timePeriodsAtoms.ts +0 -102
  329. package/src/TimePeriods/translatedLabels.ts +0 -9
  330. package/src/TimePeriods/useSortTimePeriods.ts +0 -31
  331. package/src/TimePeriods/useTimePeriod.ts +0 -49
  332. package/src/Typography/EllipsisTypography.tsx +0 -18
  333. package/src/Typography/FluidTypography/index.stories.tsx +0 -63
  334. package/src/Typography/FluidTypography/index.tsx +0 -51
  335. package/src/Typography/FluidTypography/useFluidResizeObserver.ts +0 -56
  336. package/src/Typography/Subtitle.tsx +0 -55
  337. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-normal-1-snap.png +0 -0
  338. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-with-item-header-1-snap.png +0 -0
  339. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-with-many-panels-1-snap.png +0 -0
  340. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-basic-1-snap.png +0 -0
  341. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-20-px-height-1-snap.png +0 -0
  342. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-200-px-width-1-snap.png +0 -0
  343. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-heading-5-variant-1-snap.png +0 -0
  344. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-long-text-1-snap.png +0 -0
  345. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-as-empty-state-1-snap.png +0 -0
  346. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-with-editable-and-sortable-columns-1-snap.png +0 -0
  347. package/src/api/useGraphQuery/index.ts +0 -166
  348. package/src/api/useGraphQuery/models.ts +0 -15
  349. package/src/base/tokens/README.md +0 -3
  350. package/src/base/tokens/source/$metadata.json +0 -5
  351. package/src/base/tokens/source/base.json +0 -142
  352. package/src/base/tokens/themes/base.tokens.d.ts +0 -38
  353. package/src/base/tokens/themes/base.tokens.json +0 -695
  354. package/src/base/tokens/themes/base.tokens.ts +0 -38
  355. package/src/base/tokens/themes/ui-dark.tokens.d.ts +0 -38
  356. package/src/base/tokens/themes/ui-dark.tokens.json +0 -695
  357. package/src/base/tokens/themes/ui-dark.tokens.ts +0 -38
  358. package/src/base/tokens/themes/ui-light.tokens.d.ts +0 -38
  359. package/src/base/tokens/themes/ui-light.tokens.json +0 -695
  360. package/src/base/tokens/themes/ui-light.tokens.ts +0 -38
  361. package/src/components/Avatar/Avatar.stories.tsx +0 -23
  362. package/src/components/Avatar/Avatar.styles.ts +0 -11
  363. package/src/components/Avatar/Avatar.tsx +0 -32
  364. package/src/components/Avatar/index.ts +0 -1
  365. package/src/components/Button/Button.stories.tsx +0 -34
  366. package/src/components/Button/Button.styles.ts +0 -44
  367. package/src/components/Button/Button.tsx +0 -78
  368. package/src/components/Button/Icon/IconButton.stories.tsx +0 -18
  369. package/src/components/Button/Icon/IconButton.styles.ts +0 -14
  370. package/src/components/Button/Icon/IconButton.tsx +0 -62
  371. package/src/components/Button/Icon/index.tsx +0 -1
  372. package/src/components/Button/index.ts +0 -2
  373. package/src/components/CollapsibleItem/CollapsibleItem.stories.tsx +0 -25
  374. package/src/components/CollapsibleItem/CollapsibleItem.tsx +0 -47
  375. package/src/components/CollapsibleItem/index.ts +0 -1
  376. package/src/components/CollapsibleItem/useCollapsibleItemStyles.ts +0 -15
  377. package/src/components/DataTable/DataListing.tsx +0 -6
  378. package/src/components/DataTable/DataTable.cypress.spec.tsx +0 -193
  379. package/src/components/DataTable/DataTable.stories.tsx +0 -91
  380. package/src/components/DataTable/DataTable.styles.ts +0 -30
  381. package/src/components/DataTable/DataTable.tsx +0 -35
  382. package/src/components/DataTable/EmptyState/DataTableEmptyState.stories.tsx +0 -21
  383. package/src/components/DataTable/EmptyState/DataTableEmptyState.styles.ts +0 -26
  384. package/src/components/DataTable/EmptyState/DataTableEmptyState.tsx +0 -53
  385. package/src/components/DataTable/Item/DataTableItem.stories.tsx +0 -25
  386. package/src/components/DataTable/Item/DataTableItem.styles.ts +0 -38
  387. package/src/components/DataTable/Item/DataTableItem.tsx +0 -123
  388. package/src/components/DataTable/Item/DataTableItemSkeleton.tsx +0 -13
  389. package/src/components/DataTable/index.ts +0 -12
  390. package/src/components/Form/AccessRights/AccessRights.resource.ts +0 -45
  391. package/src/components/Form/AccessRights/AccessRightsForm.stories.tsx +0 -59
  392. package/src/components/Form/AccessRights/AccessRightsForm.styles.ts +0 -21
  393. package/src/components/Form/AccessRights/AccessRightsForm.tsx +0 -67
  394. package/src/components/Form/AccessRights/AccessRightsFormActions.tsx +0 -80
  395. package/src/components/Form/AccessRights/Input/AddAction.tsx +0 -31
  396. package/src/components/Form/AccessRights/Input/ContactAccessRightInput.stories.tsx +0 -54
  397. package/src/components/Form/AccessRights/Input/ContactAccessRightInput.tsx +0 -72
  398. package/src/components/Form/AccessRights/Input/ContactAccessRightsInput.styles.ts +0 -22
  399. package/src/components/Form/AccessRights/Input/ContactInputField.tsx +0 -105
  400. package/src/components/Form/AccessRights/Input/RoleInputField.tsx +0 -29
  401. package/src/components/Form/AccessRights/List/ContactAccessRightsList.stories.tsx +0 -97
  402. package/src/components/Form/AccessRights/List/ContactAccessRightsList.styles.ts +0 -71
  403. package/src/components/Form/AccessRights/List/ContactAccessRightsList.tsx +0 -51
  404. package/src/components/Form/AccessRights/List/ContactAccessRightsListItem.stories.tsx +0 -116
  405. package/src/components/Form/AccessRights/List/ContactAccessRightsListItem.tsx +0 -118
  406. package/src/components/Form/AccessRights/List/ContactAccessRightsListItemSkeleton.tsx +0 -26
  407. package/src/components/Form/AccessRights/List/ContactAccessRightsListSkeleton.tsx +0 -28
  408. package/src/components/Form/AccessRights/Stats/AccessRightsStats.styles.ts +0 -18
  409. package/src/components/Form/AccessRights/Stats/AccessRightsStats.tsx +0 -41
  410. package/src/components/Form/AccessRights/__fixtures__/contactAccessRight.mock.ts +0 -54
  411. package/src/components/Form/AccessRights/common/GroupLabel.styles.ts +0 -18
  412. package/src/components/Form/AccessRights/common/GroupLabel.tsx +0 -15
  413. package/src/components/Form/AccessRights/common/Input.styles.ts +0 -48
  414. package/src/components/Form/AccessRights/common/RoleInputSelect.styles.ts +0 -11
  415. package/src/components/Form/AccessRights/common/RoleInputSelect.tsx +0 -57
  416. package/src/components/Form/AccessRights/index.ts +0 -3
  417. package/src/components/Form/AccessRights/useAccessRightsForm.test.tsx +0 -531
  418. package/src/components/Form/AccessRights/useAccessRightsForm.tsx +0 -282
  419. package/src/components/Form/AccessRights/useAccessRightsForm.utils.ts +0 -41
  420. package/src/components/Form/Dashboard/Dashboard.resource.ts +0 -9
  421. package/src/components/Form/Dashboard/DashboardForm.stories.ts +0 -39
  422. package/src/components/Form/Dashboard/DashboardForm.styles.ts +0 -21
  423. package/src/components/Form/Dashboard/DashboardForm.tsx +0 -137
  424. package/src/components/Form/Dashboard/GlobalRefreshFieldOption.tsx +0 -59
  425. package/src/components/Form/Dashboard/index.ts +0 -2
  426. package/src/components/Form/Dashboard/translatedLabels.ts +0 -9
  427. package/src/components/Form/Form.models.ts +0 -1
  428. package/src/components/Form/Form.resource.ts +0 -1
  429. package/src/components/Form/Form.styles.ts +0 -17
  430. package/src/components/Form/FormActions.tsx +0 -57
  431. package/src/components/Form/index.ts +0 -3
  432. package/src/components/Header/PageHeader/PageHeader.stories.tsx +0 -97
  433. package/src/components/Header/PageHeader/PageHeader.styles.ts +0 -126
  434. package/src/components/Header/PageHeader/PageHeader.tsx +0 -15
  435. package/src/components/Header/PageHeader/PageHeaderActions.tsx +0 -17
  436. package/src/components/Header/PageHeader/PageHeaderMain.tsx +0 -15
  437. package/src/components/Header/PageHeader/PageHeaderMenu.tsx +0 -15
  438. package/src/components/Header/PageHeader/PageHeaderMessage.tsx +0 -32
  439. package/src/components/Header/PageHeader/PageHeaderTitle.tsx +0 -47
  440. package/src/components/Header/PageHeader/index.ts +0 -14
  441. package/src/components/Header/index.ts +0 -1
  442. package/src/components/Icon/Icon.styles.ts +0 -0
  443. package/src/components/Icon/Icon.tsx +0 -2
  444. package/src/components/Icon/index.ts +0 -0
  445. package/src/components/Inputs/Switch/Switch.stories.tsx +0 -22
  446. package/src/components/Inputs/Switch/Switch.styles.ts +0 -13
  447. package/src/components/Inputs/Switch/Switch.tsx +0 -18
  448. package/src/components/Inputs/index.ts +0 -1
  449. package/src/components/ItemComposition/Item.tsx +0 -41
  450. package/src/components/ItemComposition/ItemComposition.stories.tsx +0 -78
  451. package/src/components/ItemComposition/ItemComposition.styles.ts +0 -29
  452. package/src/components/ItemComposition/ItemComposition.tsx +0 -47
  453. package/src/components/ItemComposition/index.ts +0 -6
  454. package/src/components/Layout/AreaIndicator.styles.ts +0 -33
  455. package/src/components/Layout/AreaIndicator.tsx +0 -35
  456. package/src/components/Layout/PageLayout/PageLayout.stories.tsx +0 -81
  457. package/src/components/Layout/PageLayout/PageLayout.styles.ts +0 -41
  458. package/src/components/Layout/PageLayout/PageLayout.tsx +0 -21
  459. package/src/components/Layout/PageLayout/PageLayoutActions.tsx +0 -25
  460. package/src/components/Layout/PageLayout/PageLayoutBody.tsx +0 -25
  461. package/src/components/Layout/PageLayout/PageLayoutHeader.tsx +0 -19
  462. package/src/components/Layout/PageLayout/PageQuickAccess.tsx +0 -76
  463. package/src/components/Layout/PageLayout/index.ts +0 -12
  464. package/src/components/Layout/PageLayout.cypress.spec.tsx +0 -66
  465. package/src/components/Layout/index.ts +0 -1
  466. package/src/components/List/Item/Avatar.tsx +0 -21
  467. package/src/components/List/Item/AvatarSkeleton.tsx +0 -17
  468. package/src/components/List/Item/ListItem.stories.tsx +0 -41
  469. package/src/components/List/Item/ListItem.styles.ts +0 -57
  470. package/src/components/List/Item/ListItem.tsx +0 -32
  471. package/src/components/List/Item/Text.tsx +0 -25
  472. package/src/components/List/Item/TextSkeleton.tsx +0 -22
  473. package/src/components/List/Item/index.ts +0 -14
  474. package/src/components/List/List.stories.tsx +0 -70
  475. package/src/components/List/List.styles.ts +0 -8
  476. package/src/components/List/List.tsx +0 -19
  477. package/src/components/List/index.ts +0 -6
  478. package/src/components/Menu/Button/MenuButton.stories.tsx +0 -16
  479. package/src/components/Menu/Button/MenuButton.styles.ts +0 -27
  480. package/src/components/Menu/Button/MenuButton.tsx +0 -67
  481. package/src/components/Menu/Button/index.ts +0 -1
  482. package/src/components/Menu/Menu.stories.tsx +0 -71
  483. package/src/components/Menu/Menu.styles.ts +0 -68
  484. package/src/components/Menu/Menu.tsx +0 -25
  485. package/src/components/Menu/MenuDivider.tsx +0 -13
  486. package/src/components/Menu/MenuItem.tsx +0 -38
  487. package/src/components/Menu/MenuItems.tsx +0 -36
  488. package/src/components/Menu/index.ts +0 -12
  489. package/src/components/Menu/useMenu.tsx +0 -79
  490. package/src/components/Modal/Modal.stories.tsx +0 -142
  491. package/src/components/Modal/Modal.styles.ts +0 -91
  492. package/src/components/Modal/Modal.tsx +0 -79
  493. package/src/components/Modal/ModalActions.tsx +0 -64
  494. package/src/components/Modal/ModalBody.tsx +0 -15
  495. package/src/components/Modal/ModalHeader.tsx +0 -21
  496. package/src/components/Modal/index.ts +0 -12
  497. package/src/components/README.md +0 -3
  498. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.stories.tsx +0 -62
  499. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.styles.tsx +0 -22
  500. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.tsx +0 -68
  501. package/src/components/Tooltip/ConfirmationTooltip/TooltipContent.tsx +0 -31
  502. package/src/components/Tooltip/ConfirmationTooltip/index.ts +0 -1
  503. package/src/components/Tooltip/ConfirmationTooltip/models.ts +0 -18
  504. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.stories.tsx +0 -70
  505. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.styles.ts +0 -5
  506. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.tsx +0 -115
  507. package/src/components/Tooltip/TextOverflowTooltip/index.tsx +0 -1
  508. package/src/components/Tooltip/Tooltip.stories.tsx +0 -41
  509. package/src/components/Tooltip/Tooltip.tsx +0 -57
  510. package/src/components/Tooltip/index.ts +0 -2
  511. package/src/components/index.ts +0 -13
  512. package/src/styles/tokens/themes/_ui-dark.tokens.json +0 -695
  513. package/src/styles/tokens/themes/_ui-light.tokens.json +0 -695
  514. package/src/utils/centreonBaseURL.ts +0 -4
  515. package/src/utils/docsURL.ts +0 -31
  516. package/src/utils/index.ts +0 -22
  517. package/src/utils/panelSize.ts +0 -15
  518. package/src/utils/sanitizedHTML.ts +0 -18
  519. package/src/utils/translatedLabel.ts +0 -2
  520. package/src/utils/useInfiniteScrollListing.ts +0 -121
  521. package/src/utils/useLicenseExpirationWarning.test.tsx +0 -148
  522. package/src/utils/useLicenseExpirationWarning.ts +0 -52
  523. package/src/utils/usePluralizedTranslation.ts +0 -21
  524. package/src/utils/useRefreshInterval.ts +0 -39
  525. package/src/utils/useResizeObserver.ts +0 -6
  526. package/src/utils/useThresholds.ts +0 -0
  527. /package/{public/brand → assets}/centreon-logo-one-line-dark.svg +0 -0
  528. /package/{public/brand → assets}/centreon-logo-one-line-light.svg +0 -0
  529. /package/{src/@assets/images → assets}/not-authorized-template-background-dark.svg +0 -0
  530. /package/{src/@assets/images → assets}/not-authorized-template-background-light.svg +0 -0
  531. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.ttf +0 -0
  532. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.woff +0 -0
  533. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.woff2 +0 -0
  534. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.ttf +0 -0
  535. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.woff +0 -0
  536. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.woff2 +0 -0
  537. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.ttf +0 -0
  538. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.woff +0 -0
  539. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.woff2 +0 -0
  540. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.ttf +0 -0
  541. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.woff +0 -0
  542. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.woff2 +0 -0
  543. /package/src/Listing/Header/{_internals/Label.tsx → Label.tsx} +0 -0
  544. /package/src/Typography/{story.utils.tsx → index.tsx} +0 -0
@@ -14,7 +14,7 @@ import { tableStyleAtom, tableStyleDerivedAtom } from './tableAtoms';
14
14
  interface TableStyle {
15
15
  checkable?: boolean;
16
16
  currentVisibleColumns?: Array<Column>;
17
- listingVariant?: ListingVariant;
17
+ viewMode?: ListingVariant;
18
18
  }
19
19
 
20
20
  interface TableStyleState {
@@ -27,30 +27,30 @@ const isCompactMode = equals<ListingVariant | undefined>(
27
27
  );
28
28
 
29
29
  interface GetTextStyleProps {
30
- listingVariant?: ListingVariant;
31
30
  theme: Theme;
31
+ viewMode?: ListingVariant;
32
32
  }
33
33
 
34
34
  export const getTextStyleByViewMode = ({
35
- listingVariant,
35
+ viewMode,
36
36
  theme
37
37
  }: GetTextStyleProps): CSSObject =>
38
38
  pick(
39
39
  ['color', 'fontSize', 'lineHeight'],
40
- theme.typography[isCompactMode(listingVariant) ? 'body2' : 'body1']
40
+ theme.typography[isCompactMode(viewMode) ? 'body2' : 'body1']
41
41
  );
42
42
 
43
43
  const useStyleTable = ({
44
44
  checkable,
45
45
  currentVisibleColumns,
46
- listingVariant
46
+ viewMode
47
47
  }: TableStyle): TableStyleState => {
48
48
  const dataStyle = useAtomValue(tableStyleAtom);
49
49
 
50
50
  const updateStyleTable = useSetAtom(tableStyleDerivedAtom);
51
51
 
52
52
  const getGridTemplateColumn = (): string => {
53
- const checkbox = checkable ? 'fit-content(1rem) ' : ''; // SelectAction (checkbox) cell adjusts to content
53
+ const checkbox = checkable ? '50px ' : '';
54
54
 
55
55
  const columnTemplate = currentVisibleColumns
56
56
  ?.map(({ width, shortLabel }) => {
@@ -69,10 +69,10 @@ const useStyleTable = ({
69
69
  };
70
70
 
71
71
  useEffect(() => {
72
- if (listingVariant) {
73
- updateStyleTable({ listingVariant });
72
+ if (viewMode) {
73
+ updateStyleTable({ viewMode });
74
74
  }
75
- }, [listingVariant]);
75
+ }, [viewMode]);
76
76
 
77
77
  return {
78
78
  dataStyle,
@@ -14,7 +14,7 @@ import Panel from '../Panel';
14
14
 
15
15
  import Filter from './Filter';
16
16
 
17
- import ListingPage, { ListingPageProps } from '.';
17
+ import ListingPage from '.';
18
18
 
19
19
  export default { title: 'Listing Page' };
20
20
 
@@ -59,9 +59,6 @@ const useStyles = makeStyles()((theme) => ({
59
59
  gridGap: theme.spacing(2),
60
60
  gridTemplateColumns: 'auto auto 1fr'
61
61
  },
62
- page: {
63
- height: '100vh'
64
- },
65
62
  title: {
66
63
  alignItems: 'center',
67
64
  gridArea: 'title',
@@ -254,18 +251,8 @@ const DetailsPanelWithTabs = (): JSX.Element => (
254
251
  />
255
252
  );
256
253
 
257
- const Template = (args: ListingPageProps): JSX.Element => {
258
- const { classes } = useStyles();
259
-
260
- return (
261
- <div className={classes.page}>
262
- <ListingPage {...args} />
263
- </div>
264
- );
265
- };
266
-
267
254
  export const normal = (): JSX.Element => (
268
- <Template
255
+ <ListingPage
269
256
  filter={<FilterWithContent />}
270
257
  listing={listing}
271
258
  panelOpen={false}
@@ -273,7 +260,7 @@ export const normal = (): JSX.Element => (
273
260
  );
274
261
 
275
262
  export const withOpenPanel = (): JSX.Element => (
276
- <Template
263
+ <ListingPage
277
264
  panelOpen
278
265
  filter={<FilterWithContent />}
279
266
  listing={listing}
@@ -282,7 +269,7 @@ export const withOpenPanel = (): JSX.Element => (
282
269
  );
283
270
 
284
271
  export const withOpenPanelAndTabs = (): JSX.Element => (
285
- <Template
272
+ <ListingPage
286
273
  panelOpen
287
274
  filter={<FilterWithContent />}
288
275
  listing={listing}
@@ -291,7 +278,7 @@ export const withOpenPanelAndTabs = (): JSX.Element => (
291
278
  );
292
279
 
293
280
  export const withFilterDetailsAndOpenPanel = (): JSX.Element => (
294
- <Template
281
+ <ListingPage
295
282
  panelOpen
296
283
  filter={<FilterWithContent />}
297
284
  listing={listing}
@@ -303,7 +290,7 @@ export const withFixedPanel = (): JSX.Element => {
303
290
  const [open, setOpen] = useState(true);
304
291
 
305
292
  return (
306
- <Template
293
+ <ListingPage
307
294
  panelFixed
308
295
  filter={<FilterWithOpenButton onOpen={(): void => setOpen(true)} />}
309
296
  listing={listing}
@@ -317,7 +304,7 @@ export const withResponsivePaginationTable = (): JSX.Element => {
317
304
  const [open, setOpen] = useState(true);
318
305
 
319
306
  return (
320
- <Template
307
+ <ListingPage
321
308
  filter={<FilterWithOpenButton onOpen={(): void => setOpen(true)} />}
322
309
  listing={
323
310
  <Listing
@@ -339,7 +326,7 @@ export const withResponsivePaginationTable = (): JSX.Element => {
339
326
  };
340
327
 
341
328
  export const withALongContent = (): JSX.Element => (
342
- <Template
329
+ <ListingPage
343
330
  filter={<FilterWithContent />}
344
331
  listing={
345
332
  <div>
@@ -1,12 +1,11 @@
1
- import { Suspense, useRef } from 'react';
1
+ import { Suspense, useEffect, useRef, useState } from 'react';
2
2
 
3
3
  import { makeStyles } from 'tss-react/mui';
4
4
 
5
5
  import { Box } from '@mui/material';
6
6
 
7
- import { useMemoComponent } from '../utils';
7
+ import useMemoComponent from '../utils/useMemoComponent';
8
8
  import WithPanel from '../Panel/WithPanel';
9
- import { ParentSize } from '..';
10
9
 
11
10
  import FilterSkeleton from './FilterSkeleton';
12
11
  import ListingSkeleton from './ListingSkeleton';
@@ -31,7 +30,7 @@ const useStyles = makeStyles()((theme) => {
31
30
  };
32
31
  });
33
32
 
34
- export interface ListingPageProps {
33
+ interface Props {
35
34
  filter: JSX.Element;
36
35
  fullHeight?: boolean;
37
36
  listing: JSX.Element;
@@ -53,10 +52,32 @@ const ListingPage = ({
53
52
  listingScrollOffset = 16,
54
53
  fullHeight = false,
55
54
  memoListingProps = []
56
- }: ListingPageProps): JSX.Element => {
55
+ }: Props): JSX.Element => {
57
56
  const { classes, cx } = useStyles();
57
+ const [listingHeight, setListingHeight] = useState(0);
58
+ const listingRef = useRef<HTMLDivElement | null>(null);
58
59
  const filtersRef = useRef<HTMLDivElement | null>(null);
59
60
 
61
+ const resize = (): void => {
62
+ setListingHeight(window.innerHeight);
63
+ };
64
+
65
+ useEffect(() => {
66
+ window.addEventListener('resize', resize);
67
+
68
+ setListingHeight(window.innerHeight);
69
+
70
+ return () => {
71
+ window.removeEventListener('resize', resize);
72
+ };
73
+ }, []);
74
+
75
+ const listingContainerHeight =
76
+ listingHeight -
77
+ (filtersRef.current?.getBoundingClientRect().height || 0) -
78
+ (filtersRef.current?.getBoundingClientRect().top || 0) -
79
+ listingScrollOffset;
80
+
60
81
  const memoListingComponent = useMemoComponent({
61
82
  Component: listing,
62
83
  memoProps: [...memoListingProps]
@@ -69,21 +90,18 @@ const ListingPage = ({
69
90
  </div>
70
91
 
71
92
  <WithPanel fixed={panelFixed} open={panelOpen} panel={panel}>
72
- <ParentSize>
73
- {({ height }) => (
74
- <Box
75
- className={classes.listing}
76
- sx={{
77
- height: `calc(${height}px - ${listingScrollOffset}px)`,
78
- ...(fullHeight && { height: '100%' })
79
- }}
80
- >
81
- <Suspense fallback={<ListingSkeleton />}>
82
- {memoListingComponent}
83
- </Suspense>
84
- </Box>
85
- )}
86
- </ParentSize>
93
+ <Box
94
+ className={classes.listing}
95
+ ref={listingRef}
96
+ sx={{
97
+ ...(fullHeight && { height: '100%' }),
98
+ maxHeight: listingContainerHeight
99
+ }}
100
+ >
101
+ <Suspense fallback={<ListingSkeleton />}>
102
+ {memoListingComponent}
103
+ </Suspense>
104
+ </Box>
87
105
  </WithPanel>
88
106
  </div>
89
107
  );
@@ -6,8 +6,8 @@ import { makeStyles } from 'tss-react/mui';
6
6
  import { Image, ImageVariant } from '..';
7
7
  import LoadingSkeleton from '../LoadingSkeleton';
8
8
  import { useThemeMode } from '../utils/useThemeMode';
9
- import CentreonLogoLight from '../@assets/brand/centreon-logo-one-line-light.svg';
10
- import CentreonLogoDark from '../@assets/brand/centreon-logo-one-line-dark.svg';
9
+ import CentreonLogoLight from '../../assets/centreon-logo-one-line-light.svg';
10
+ import CentreonLogoDark from '../../assets/centreon-logo-one-line-dark.svg';
11
11
 
12
12
  import { labelCentreonLogo } from './translatedLabels';
13
13
 
@@ -1,4 +1,5 @@
1
1
  import { ComponentMeta, ComponentStory } from '@storybook/react';
2
+ import withMock from 'storybook-addon-mock';
2
3
  import { makeStyles } from 'tss-react/mui';
3
4
 
4
5
  import { Alert, Container } from '@mui/material';
@@ -19,6 +20,7 @@ export default {
19
20
  moduleName: { control: 'text' }
20
21
  },
21
22
  component: LicenseCheck,
23
+ decorators: [withMock],
22
24
  title: 'LicenseCheck'
23
25
  } as ComponentMeta<typeof LicenseCheck>;
24
26
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { forwardRef } from 'react';
4
4
 
5
- import { useMemoComponent } from '../utils';
5
+ import useMemoComponent from '../utils/useMemoComponent';
6
6
 
7
7
  import Panel, { Props } from '.';
8
8
 
@@ -1,4 +1,4 @@
1
- import { render, fireEvent } from '../../../test/testRenderer';
1
+ import { render, fireEvent } from '../../testRenderer';
2
2
 
3
3
  import SectionPanel from '.';
4
4
 
@@ -6,7 +6,7 @@ import ForwardIcon from '@mui/icons-material/ArrowForwardIos';
6
6
 
7
7
  import Panel from '..';
8
8
  import ContentWithCircularLoading from '../../ContentWithCircularProgress';
9
- import { useMemoComponent } from '../../utils';
9
+ import useMemoComponent from '../../utils/useMemoComponent';
10
10
 
11
11
  import ExpandableSection from './ExpandableSection';
12
12
 
@@ -33,7 +33,7 @@ const useStyles = makeStyles<StylesProps>()(
33
33
  height: '100%'
34
34
  },
35
35
  container: {
36
- backgroundColor: theme.palette.background.panel,
36
+ backgroundColor: theme.palette.background.default,
37
37
  borderTopRightRadius: 0,
38
38
  display: 'grid',
39
39
  gridTemplate: 'auto auto 1fr / 1fr',
@@ -85,8 +85,7 @@ export interface Tab {
85
85
  }
86
86
 
87
87
  export interface Props {
88
- className?: string;
89
- header?: React.ReactElement;
88
+ header: React.ReactElement;
90
89
  headerBackgroundColor?: string;
91
90
  labelClose?: string;
92
91
  minWidth?: number;
@@ -112,12 +111,11 @@ const Panel = React.forwardRef(
112
111
  width = 550,
113
112
  minWidth = 550,
114
113
  headerBackgroundColor,
115
- onResize,
116
- className
114
+ onResize
117
115
  }: Props,
118
116
  ref
119
117
  ): JSX.Element => {
120
- const { classes, cx } = useStyles({
118
+ const { classes } = useStyles({
121
119
  hasTabs: !isEmpty(tabs),
122
120
  headerBackgroundColor,
123
121
  width
@@ -181,7 +179,7 @@ const Panel = React.forwardRef(
181
179
  exit: 50
182
180
  }}
183
181
  >
184
- <Paper className={cx(classes.container, className)} elevation={2}>
182
+ <Paper className={classes.container} elevation={2}>
185
183
  {!isNil(onResize) && (
186
184
  <div className={classes.dragger} role="none" onMouseDown={resize} />
187
185
  )}
@@ -226,9 +224,7 @@ const Panel = React.forwardRef(
226
224
  className={classes.contentContainer}
227
225
  ref={ref as React.RefObject<HTMLDivElement>}
228
226
  >
229
- <div className={classes.content} id="panel-content">
230
- {selectedTab}
231
- </div>
227
+ <div className={classes.content}>{selectedTab}</div>
232
228
  </div>
233
229
  </div>
234
230
  </Paper>
@@ -1,4 +1,4 @@
1
- import { Dispatch, SetStateAction, useEffect, useState } from 'react';
1
+ import { useState, useEffect } from 'react';
2
2
 
3
3
  import { makeStyles } from 'tss-react/mui';
4
4
 
@@ -9,7 +9,6 @@ import {
9
9
  PopperPlacementType,
10
10
  useTheme
11
11
  } from '@mui/material';
12
- import { PopperProps } from '@mui/material/Popper';
13
12
 
14
13
  import { IconButton } from '..';
15
14
 
@@ -20,22 +19,15 @@ const useStyles = makeStyles()(() => ({
20
19
  }
21
20
  }));
22
21
 
23
- interface PopoverData {
24
- anchorEl: HTMLElement | undefined;
25
- setAnchorEl: Dispatch<SetStateAction<HTMLElement | undefined>>;
26
- }
27
-
28
22
  interface Props {
29
23
  canOpen?: boolean;
30
24
  children: (props?) => JSX.Element;
31
25
  className?: string;
32
26
  dataTestId?: string;
33
- getPopoverData?: (data: PopoverData) => void;
34
27
  icon: JSX.Element;
35
28
  onClose?: () => void;
36
29
  onOpen?: () => void;
37
30
  popperPlacement?: PopperPlacementType;
38
- popperProps?: Partial<PopperProps>;
39
31
  title?: string;
40
32
  }
41
33
 
@@ -48,21 +40,20 @@ const PopoverMenu = ({
48
40
  onClose,
49
41
  canOpen = true,
50
42
  className,
51
- dataTestId,
52
- getPopoverData,
53
- popperProps
43
+ dataTestId
54
44
  }: Props): JSX.Element => {
55
45
  const theme = useTheme();
56
46
  const { classes, cx } = useStyles();
57
47
  const [anchorEl, setAnchorEl] = useState<HTMLElement | undefined>();
48
+
58
49
  const isOpen = Boolean(anchorEl);
59
50
 
60
51
  const close = (reason?): void => {
61
52
  const isClosedByInputClick = reason?.type === 'mousedown';
53
+
62
54
  if (isClosedByInputClick) {
63
55
  return;
64
56
  }
65
-
66
57
  onClose?.();
67
58
  setAnchorEl(undefined);
68
59
  };
@@ -84,10 +75,6 @@ const PopoverMenu = ({
84
75
  }
85
76
  }, [canOpen]);
86
77
 
87
- useEffect(() => {
88
- getPopoverData?.({ anchorEl, setAnchorEl });
89
- }, [anchorEl]);
90
-
91
78
  return (
92
79
  <>
93
80
  <IconButton
@@ -110,7 +97,6 @@ const PopoverMenu = ({
110
97
  style={{ zIndex: theme.zIndex.tooltip }}
111
98
  onResize={(): undefined => undefined}
112
99
  onResizeCapture={(): undefined => undefined}
113
- {...popperProps}
114
100
  >
115
101
  <Paper>{children({ close })}</Paper>
116
102
  </Popper>
@@ -9,17 +9,17 @@ import { Typography } from '@mui/material';
9
9
 
10
10
  interface StyleProps {
11
11
  editable: boolean;
12
- error?: string;
13
12
  minInputHeight: number;
14
13
  }
15
14
 
16
15
  const useStyles = makeStyles<StyleProps>()(
17
- (theme, { minInputHeight, editable, error }) => ({
16
+ (theme, { minInputHeight, editable }) => ({
18
17
  container: {
18
+ '& p': {
19
+ margin: 0
20
+ },
19
21
  backgroundColor: theme.palette.background.paper,
20
- border: error
21
- ? `1px solid ${theme.palette.error.main}`
22
- : '1px solid transparent',
22
+ border: '1px solid transparent',
23
23
  borderRadius: theme.shape.borderRadius,
24
24
  padding: theme.spacing(0.5, 1)
25
25
  },
@@ -31,45 +31,27 @@ const useStyles = makeStyles<StyleProps>()(
31
31
  outline: '0px solid transparent'
32
32
  },
33
33
  inputFocused: {
34
- border: error
35
- ? `1px solid ${theme.palette.error.main}`
36
- : `1px solid ${theme.palette.primary.main}`
37
- },
38
- notEditable: {
39
- backgroundColor: 'transparent'
34
+ border: `1px solid ${theme.palette.primary.main}`
40
35
  },
41
36
  placeholder: {
42
37
  color: theme.palette.grey[500],
43
38
  pointerEvents: 'none'
44
- },
45
- root: {
46
- '& p,h1,h2,h3,h4,h5,h6,span': {
47
- margin: 0
48
- }
49
39
  }
50
40
  })
51
41
  );
52
42
 
53
43
  interface Props {
54
- className?: string;
55
- disabled?: boolean;
56
44
  editable: boolean;
57
45
  editorState?: string;
58
- error?: string;
59
46
  hasInitialTextContent?: boolean;
60
47
  initialEditorState?: string;
61
- initialize?: (editor) => void;
62
48
  inputClassname?: string;
63
49
  minInputHeight: number;
64
50
  namespace: string;
65
- onBlur?: (e: string) => void;
66
51
  placeholder: string;
67
52
  resetEditorToInitialStateCondition?: () => boolean;
68
53
  }
69
54
 
70
- const defaultState =
71
- '{"root":{"children":[{"children":[],"direction":null,"format":"","indent":0,"type":"paragraph","version":1}],"direction":null,"format":"","indent":0,"type":"root","version":1}}';
72
-
73
55
  const ContentEditable = ({
74
56
  minInputHeight,
75
57
  inputClassname,
@@ -79,17 +61,13 @@ const ContentEditable = ({
79
61
  editorState,
80
62
  namespace,
81
63
  resetEditorToInitialStateCondition,
82
- initialEditorState,
83
- error,
84
- onBlur,
85
- className,
86
- disabled,
87
- initialize
64
+ initialEditorState
88
65
  }: Props): JSX.Element => {
89
- const { classes, cx } = useStyles({ editable, error, minInputHeight });
66
+ const { classes, cx } = useStyles({ editable, minInputHeight });
90
67
  const { t } = useTranslation();
91
68
 
92
69
  const [editor] = useLexicalComposerContext();
70
+ const [isEditable, setEditable] = useState(false);
93
71
  const [isFocused, setFocused] = useState(false);
94
72
  const [root, setRoot] = useState('');
95
73
 
@@ -101,13 +79,17 @@ const ContentEditable = ({
101
79
  );
102
80
 
103
81
  useLayoutEffect(() => {
104
- if (!editable) {
105
- const newEditorState = editor.parseEditorState(
106
- editorState || defaultState
107
- );
82
+ setEditable(editor.isEditable());
83
+
84
+ if (editorState && !editable) {
85
+ const newEditorState = editor.parseEditorState(editorState);
108
86
 
109
87
  editor.setEditorState(newEditorState);
110
88
  }
89
+
90
+ return editor.registerEditableListener((currentIsEditable) => {
91
+ setEditable(currentIsEditable);
92
+ });
111
93
  }, [editor, editorState]);
112
94
 
113
95
  useEffect(() => {
@@ -126,49 +108,21 @@ const ContentEditable = ({
126
108
  const shouldResetEditorToInitialState =
127
109
  resetEditorToInitialStateCondition?.();
128
110
 
129
- if (!shouldResetEditorToInitialState) {
111
+ if (!shouldResetEditorToInitialState || isNil(initialEditorState)) {
130
112
  return;
131
113
  }
132
114
 
133
- const newEditorState = editor.parseEditorState(
134
- initialEditorState || defaultState
135
- );
115
+ const newEditorState = editor.parseEditorState(initialEditorState);
136
116
 
137
117
  editor.setEditorState(newEditorState);
138
118
  }, [editorState]);
139
119
 
140
- const isTextEmpty =
141
- isEmpty(root) &&
142
- !editor.getEditorState().toJSON().root.children?.[0]?.children?.length;
143
-
144
- const handleBlur = (event: React.FocusEvent<HTMLInputElement>): void => {
145
- setFocused(false);
146
- onBlur?.(event);
147
- };
148
-
149
- const isEditable = editor.isEditable();
150
-
151
- useEffect(() => {
152
- if (isNil(disabled)) {
153
- return;
154
- }
155
-
156
- editor.setEditable(!disabled);
157
- }, [disabled]);
158
-
159
- useEffect(() => {
160
- initialize?.(editor);
161
- }, []);
120
+ const isTextEmpty = isEmpty(root);
162
121
 
163
122
  return (
164
123
  <div
165
- className={cx(
166
- classes.root,
167
- editable && classes.container,
168
- !isEditable && !disabled && classes.notEditable,
169
- className,
170
- isFocused && classes.inputFocused
171
- )}
124
+ className={cx(classes.container, isFocused && classes.inputFocused)}
125
+ id={namespace}
172
126
  >
173
127
  {editable && isTextEmpty && (
174
128
  <Typography className={classes.placeholder}>
@@ -178,14 +132,14 @@ const ContentEditable = ({
178
132
  <div
179
133
  aria-label={namespace}
180
134
  className={cx(
181
- editable && isTextEmpty && classes.emptyInput,
135
+ isTextEmpty && classes.emptyInput,
182
136
  classes.input,
183
137
  inputClassname
184
138
  )}
185
139
  contentEditable={isEditable}
186
140
  data-testid={namespace}
187
141
  ref={ref}
188
- onBlur={handleBlur}
142
+ onBlur={(): void => setFocused(false)}
189
143
  onFocus={(): void => setFocused(true)}
190
144
  />
191
145
  </div>