@centreon/ui 24.4.15 → 24.4.17

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 (545) 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/Content.tsx +9 -26
  11. package/src/Button/Save/StartIcon.tsx +3 -3
  12. package/src/Button/Save/index.stories.tsx +5 -10
  13. package/src/Button/Save/index.tsx +4 -11
  14. package/src/Dialog/Confirm/index.tsx +4 -17
  15. package/src/Dialog/Duplicate/index.test.tsx +1 -1
  16. package/src/Dialog/index.tsx +2 -14
  17. package/src/FallbackPage/FallbackPage.tsx +2 -2
  18. package/src/FileDropZone/index.tsx +2 -4
  19. package/src/Form/CollapsibleGroup.tsx +5 -15
  20. package/src/Form/FormButtons.tsx +4 -2
  21. package/src/Form/Inputs/Autocomplete.tsx +1 -1
  22. package/src/Form/Inputs/ConnectedAutocomplete.tsx +1 -3
  23. package/src/Form/Inputs/Grid.tsx +2 -4
  24. package/src/Form/Inputs/Radio.tsx +5 -16
  25. package/src/Form/Inputs/Switch.tsx +1 -1
  26. package/src/Form/Inputs/Text.tsx +7 -18
  27. package/src/Form/Inputs/index.tsx +16 -34
  28. package/src/Form/Inputs/models.ts +4 -28
  29. package/src/Form/{Form.stories.tsx → index.stories.tsx} +3 -2
  30. package/src/Form/{Form.tsx → index.tsx} +16 -38
  31. package/src/Form/storiesData.tsx +3 -50
  32. package/src/Home.stories.mdx +84 -1
  33. package/src/Image/Image.tsx +1 -11
  34. package/src/Image/index.stories.tsx +2 -2
  35. package/src/Image/index.test.tsx +3 -3
  36. package/src/InputField/Search/PersistentTooltip.tsx +6 -10
  37. package/src/InputField/Select/Autocomplete/Connected/Multi/index.test.tsx +22 -4
  38. package/src/InputField/Select/Autocomplete/Connected/index.stories.tsx +3 -0
  39. package/src/InputField/Select/Autocomplete/Connected/index.test.tsx +7 -4
  40. package/src/InputField/Select/Autocomplete/Connected/index.tsx +12 -44
  41. package/src/InputField/Select/Autocomplete/Draggable/SortableList.tsx +1 -1
  42. package/src/InputField/Select/Autocomplete/Draggable/SortableListContent.tsx +1 -1
  43. package/src/InputField/Select/Autocomplete/Draggable/index.stories.tsx +2 -0
  44. package/src/InputField/Select/Autocomplete/Draggable/index.tsx +1 -1
  45. package/src/InputField/Select/Autocomplete/Multi/index.tsx +15 -32
  46. package/src/InputField/Select/Autocomplete/index.stories.tsx +10 -1
  47. package/src/InputField/Select/Autocomplete/index.tsx +2 -5
  48. package/src/InputField/Select/IconPopover/index.tsx +2 -2
  49. package/src/InputField/Select/index.tsx +2 -3
  50. package/src/InputField/Text/index.tsx +9 -19
  51. package/src/Listing/ActionBar/index.tsx +8 -15
  52. package/src/Listing/Cell/DataCell.tsx +68 -43
  53. package/src/Listing/Cell/index.tsx +8 -88
  54. package/src/Listing/Header/{_internals/PredefinedSelectionList.tsx → PredefinedSelectionList.tsx} +1 -1
  55. package/src/Listing/Header/{Cell/ListingHeaderCell.tsx → SortableCell/Content.tsx} +83 -18
  56. package/src/Listing/Header/SortableCell/DraggableIcon.tsx +41 -0
  57. package/src/Listing/Header/{ListingHeader.tsx → index.tsx} +106 -29
  58. package/src/Listing/{Row/Row.tsx → Row.tsx} +11 -12
  59. package/src/Listing/Skeleton.tsx +11 -0
  60. package/src/Listing/index.stories.tsx +40 -155
  61. package/src/Listing/index.test.tsx +1 -1
  62. package/src/Listing/index.tsx +263 -217
  63. package/src/Listing/models.ts +0 -1
  64. package/src/Listing/tableAtoms.ts +10 -15
  65. package/src/Listing/useStyleTable.ts +9 -9
  66. package/src/ListingPage/index.stories.tsx +8 -21
  67. package/src/ListingPage/index.tsx +38 -20
  68. package/src/Logo/CentreonLogo.tsx +2 -2
  69. package/src/Module/LicensedModule/LicenseCheck/index.stories.tsx +2 -0
  70. package/src/Panel/Memoized.tsx +1 -1
  71. package/src/Panel/Section/index.test.tsx +1 -1
  72. package/src/Panel/Section/index.tsx +1 -1
  73. package/src/Panel/index.tsx +6 -10
  74. package/src/PopoverMenu/index.tsx +4 -18
  75. package/src/RichTextEditor/ContentEditable.tsx +24 -70
  76. package/src/RichTextEditor/RichTextEditor.tsx +47 -172
  77. package/src/RichTextEditor/index.stories.tsx +0 -14
  78. package/src/RichTextEditor/plugins/AutoLinkPlugin/index.tsx +5 -53
  79. package/src/RichTextEditor/plugins/FloatingLinkEditorPlugin.tsx +16 -54
  80. package/src/RichTextEditor/plugins/ToolbarPlugin/FormatButtons.tsx +92 -31
  81. package/src/RichTextEditor/plugins/ToolbarPlugin/UndoRedoButtons.tsx +3 -13
  82. package/src/RichTextEditor/plugins/ToolbarPlugin/index.tsx +10 -35
  83. package/src/RichTextEditor/translatedLabels.ts +0 -3
  84. package/src/Snackbar/index.tsx +4 -14
  85. package/src/Snackbar/useSnackbar.tsx +1 -5
  86. package/src/SortableItems/SortableItem.tsx +2 -3
  87. package/src/SortableItems/index.tsx +7 -2
  88. package/src/ThemeProvider/index.tsx +10 -42
  89. package/src/ThemeProvider/palettes.ts +201 -422
  90. package/src/Typography/{Typography.stories.tsx → index.stories.tsx} +5 -5
  91. package/src/WallpaperPage/index.stories.tsx +1 -1
  92. package/src/Wizard/ActionsBar.test.tsx +1 -1
  93. package/src/Wizard/WizardContent.tsx +3 -2
  94. package/src/Wizard/index.stories.tsx +18 -5
  95. package/src/Wizard/index.test.tsx +1 -1
  96. package/src/Wizard/index.tsx +5 -20
  97. package/src/Wizard/models.ts +0 -7
  98. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-loading-with-no-data-1-snap.png +0 -0
  99. package/src/api/QueryProvider.tsx +1 -1
  100. package/src/api/TestQueryProvider.tsx +1 -2
  101. package/src/api/buildListingEndpoint/getSearchQueryParameterValue.ts +26 -35
  102. package/src/api/buildListingEndpoint/index.test.ts +2 -2
  103. package/src/api/buildListingEndpoint/index.ts +1 -1
  104. package/src/api/buildListingEndpoint/models.ts +2 -2
  105. package/src/api/customFetch.ts +3 -22
  106. package/src/api/useFetchQuery/index.ts +37 -56
  107. package/src/api/useMutationQuery/index.ts +22 -70
  108. package/src/api/useRequest/index.ts +6 -9
  109. package/src/index.ts +21 -31
  110. package/src/queryParameters/url/index.ts +1 -5
  111. package/src/storyshots.test.js +52 -0
  112. package/{test → src}/testRenderer.tsx +1 -1
  113. package/src/utils/getNormalizedId.ts +3 -1
  114. package/src/utils/useCopyToClipboard.ts +3 -2
  115. package/src/utils/useDebounce.ts +5 -8
  116. package/src/utils/useDeepCallback.ts +3 -1
  117. package/src/utils/useDeepMemo.ts +3 -1
  118. package/src/utils/useIntersectionObserver.ts +5 -5
  119. package/src/utils/useKeyObserver.tsx +3 -1
  120. package/src/utils/useLocaleDateTimeFormat/index.test.tsx +1 -1
  121. package/src/utils/useLocaleDateTimeFormat/index.ts +2 -4
  122. package/src/utils/useLocaleDateTimeFormat/localeFallback.test.tsx +1 -1
  123. package/src/utils/useMemoComponent.ts +1 -1
  124. package/testRunner.js +36 -0
  125. package/tsconfig.json +29 -0
  126. package/types/declarations.d.ts +9 -0
  127. package/public/README.md +0 -39
  128. package/public/mockServiceWorker.js +0 -303
  129. package/src/@assets/README.md +0 -5
  130. package/src/@assets/brand/centreon-logo-one-line-dark.svg +0 -1
  131. package/src/@assets/brand/centreon-logo-one-line-light.svg +0 -1
  132. package/src/@assets/icons/downtime.icon.svg +0 -1
  133. package/src/@types/aria-attributes.d.ts +0 -10
  134. package/src/@types/data-attributes.d.ts +0 -3
  135. package/src/@types/globals.d.ts +0 -9
  136. package/src/@types/vite-env.d.ts +0 -2
  137. package/src/ActionsList/ActionsList.styles.ts +0 -116
  138. package/src/ActionsList/models.ts +0 -8
  139. package/src/Checkbox/Checkbox.tsx +0 -109
  140. package/src/Checkbox/CheckboxGroup/index.stories.tsx +0 -41
  141. package/src/Checkbox/CheckboxGroup/index.tsx +0 -75
  142. package/src/Checkbox/index.stories.tsx +0 -39
  143. package/src/Checkbox/index.tsx +0 -2
  144. package/src/Dashboard/Dashboard.styles.ts +0 -108
  145. package/src/Dashboard/DashboardLayout.stories.tsx +0 -104
  146. package/src/Dashboard/Grid.tsx +0 -70
  147. package/src/Dashboard/Item.tsx +0 -100
  148. package/src/Dashboard/Layout.tsx +0 -79
  149. package/src/Dashboard/index.tsx +0 -9
  150. package/src/Dashboard/utils.ts +0 -28
  151. package/src/Form/Form.cypress.spec.tsx +0 -133
  152. package/src/Form/Form.styles.ts +0 -11
  153. package/src/Form/Inputs/Checkbox.tsx +0 -57
  154. package/src/Form/Inputs/CheckboxGroup.tsx +0 -73
  155. package/src/Form/Inputs/List/Content.tsx +0 -62
  156. package/src/Form/Inputs/List/List.styles.ts +0 -29
  157. package/src/Form/Inputs/List/List.tsx +0 -58
  158. package/src/Form/Inputs/List/useList.ts +0 -81
  159. package/src/Form/index.ts +0 -1
  160. package/src/Graph/Gauge/AnimatedPie.tsx +0 -102
  161. package/src/Graph/Gauge/Gauge.stories.tsx +0 -159
  162. package/src/Graph/Gauge/Gauge.tsx +0 -41
  163. package/src/Graph/Gauge/PieData.tsx +0 -63
  164. package/src/Graph/Gauge/ResponsiveGauge.tsx +0 -148
  165. package/src/Graph/Gauge/Thresholds.tsx +0 -117
  166. package/src/Graph/Gauge/index.ts +0 -1
  167. package/src/Graph/Gauge/models.ts +0 -20
  168. package/src/Graph/HeatMap/HeatMap.stories.tsx +0 -105
  169. package/src/Graph/HeatMap/HeatMap.styles.tsx +0 -29
  170. package/src/Graph/HeatMap/HeatMap.tsx +0 -12
  171. package/src/Graph/HeatMap/HeatMapData.json +0 -137
  172. package/src/Graph/HeatMap/ResponsiveHeatMap.tsx +0 -98
  173. package/src/Graph/HeatMap/index.ts +0 -1
  174. package/src/Graph/HeatMap/model.ts +0 -33
  175. package/src/Graph/LineChart/BasicComponents/Axes/UnitLabel.tsx +0 -20
  176. package/src/Graph/LineChart/BasicComponents/Axes/index.tsx +0 -88
  177. package/src/Graph/LineChart/BasicComponents/Axes/models.ts +0 -26
  178. package/src/Graph/LineChart/BasicComponents/Axes/useAxisY.ts +0 -100
  179. package/src/Graph/LineChart/BasicComponents/Grids/index.tsx +0 -20
  180. package/src/Graph/LineChart/BasicComponents/Lines/RegularLines/index.tsx +0 -99
  181. package/src/Graph/LineChart/BasicComponents/Lines/RegularLines/useRegularLines.ts +0 -15
  182. package/src/Graph/LineChart/BasicComponents/Lines/StackedLines/index.tsx +0 -81
  183. package/src/Graph/LineChart/BasicComponents/Lines/StackedLines/useStackedLines.ts +0 -39
  184. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/BasicThreshold.tsx +0 -53
  185. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/Circle.tsx +0 -43
  186. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/ThresholdWithPatternLines.tsx +0 -78
  187. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/ThresholdWithVariation.tsx +0 -63
  188. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/helpers/index.ts +0 -69
  189. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/index.tsx +0 -143
  190. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/models.ts +0 -105
  191. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/useCoordinateCircle.ts +0 -46
  192. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/useScaleThreshold.ts +0 -171
  193. package/src/Graph/LineChart/BasicComponents/Lines/index.tsx +0 -189
  194. package/src/Graph/LineChart/BasicComponents/Lines/models.ts +0 -45
  195. package/src/Graph/LineChart/BasicComponents/LoadingProgress.tsx +0 -46
  196. package/src/Graph/LineChart/BasicComponents/ThresholdLine.tsx +0 -64
  197. package/src/Graph/LineChart/BasicComponents/Thresholds.tsx +0 -77
  198. package/src/Graph/LineChart/BasicComponents/useFilterLines.ts +0 -60
  199. package/src/Graph/LineChart/Header/index.tsx +0 -65
  200. package/src/Graph/LineChart/Icons/Downtime.tsx +0 -9
  201. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/GuidingLines.tsx +0 -45
  202. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/RegularAnchorPoint.tsx +0 -66
  203. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/StackedAnchorPoint.tsx +0 -76
  204. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/TooltipAnchorPoint.tsx +0 -96
  205. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/index.tsx +0 -20
  206. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/models.ts +0 -62
  207. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/useTickGraph.ts +0 -94
  208. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/useTooltipAnchorPoint.ts +0 -107
  209. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/Area.tsx +0 -114
  210. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/Line.tsx +0 -103
  211. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/index.tsx +0 -80
  212. package/src/Graph/LineChart/InteractiveComponents/Annotations/Area/Downtime.tsx +0 -27
  213. package/src/Graph/LineChart/InteractiveComponents/Annotations/EventAnnotations.tsx +0 -61
  214. package/src/Graph/LineChart/InteractiveComponents/Annotations/Line/Acknowledgement.tsx +0 -27
  215. package/src/Graph/LineChart/InteractiveComponents/Annotations/Line/Comments.tsx +0 -25
  216. package/src/Graph/LineChart/InteractiveComponents/Annotations/annotationsAtoms.ts +0 -183
  217. package/src/Graph/LineChart/InteractiveComponents/Annotations/index.tsx +0 -49
  218. package/src/Graph/LineChart/InteractiveComponents/Annotations/models.ts +0 -25
  219. package/src/Graph/LineChart/InteractiveComponents/Annotations/useAnnotation.ts +0 -56
  220. package/src/Graph/LineChart/InteractiveComponents/Bar.tsx +0 -21
  221. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/TimeShiftIcon.tsx +0 -62
  222. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/TimeShiftZone.tsx +0 -74
  223. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/index.tsx +0 -85
  224. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/models.ts +0 -12
  225. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/useTimeShiftZones.ts +0 -72
  226. package/src/Graph/LineChart/InteractiveComponents/Tooltip/index.tsx +0 -59
  227. package/src/Graph/LineChart/InteractiveComponents/Tooltip/models.ts +0 -9
  228. package/src/Graph/LineChart/InteractiveComponents/Tooltip/useGraphTooltip.ts +0 -67
  229. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/index.tsx +0 -38
  230. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/models.ts +0 -9
  231. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/useZoomPreview.ts +0 -107
  232. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/zoomPreviewAtoms.ts +0 -3
  233. package/src/Graph/LineChart/InteractiveComponents/index.tsx +0 -168
  234. package/src/Graph/LineChart/InteractiveComponents/interactionWithGraphAtoms.ts +0 -52
  235. package/src/Graph/LineChart/Legend/InteractiveValue.tsx +0 -22
  236. package/src/Graph/LineChart/Legend/Legend.styles.ts +0 -117
  237. package/src/Graph/LineChart/Legend/LegendContent.tsx +0 -33
  238. package/src/Graph/LineChart/Legend/LegendHeader.tsx +0 -93
  239. package/src/Graph/LineChart/Legend/index.tsx +0 -201
  240. package/src/Graph/LineChart/Legend/models.ts +0 -16
  241. package/src/Graph/LineChart/Legend/useInteractiveValues.ts +0 -99
  242. package/src/Graph/LineChart/Legend/useLegend.ts +0 -104
  243. package/src/Graph/LineChart/LineChart.styles.ts +0 -45
  244. package/src/Graph/LineChart/LineChart.tsx +0 -317
  245. package/src/Graph/LineChart/LoadingSkeleton.tsx +0 -44
  246. package/src/Graph/LineChart/common/index.ts +0 -35
  247. package/src/Graph/LineChart/graphAtoms.ts +0 -3
  248. package/src/Graph/LineChart/helpers/doc.ts +0 -563
  249. package/src/Graph/LineChart/helpers/index.ts +0 -63
  250. package/src/Graph/LineChart/index.stories.tsx +0 -480
  251. package/src/Graph/LineChart/index.tsx +0 -115
  252. package/src/Graph/LineChart/mockedData/annotationData.json +0 -326
  253. package/src/Graph/LineChart/mockedData/exclusionPeriodFirstPeriod.json +0 -588
  254. package/src/Graph/LineChart/mockedData/exclusionPeriodSecondPeriod.json +0 -588
  255. package/src/Graph/LineChart/mockedData/exclusionPeriodThirdPeriod.json +0 -581
  256. package/src/Graph/LineChart/mockedData/lastDay.json +0 -1326
  257. package/src/Graph/LineChart/mockedData/lastDayAreaStack.json +0 -3106
  258. package/src/Graph/LineChart/mockedData/lastDayForward.json +0 -1338
  259. package/src/Graph/LineChart/mockedData/lastDayThreshold.json +0 -2352
  260. package/src/Graph/LineChart/mockedData/lastMonth.json +0 -1674
  261. package/src/Graph/LineChart/mockedData/lastWeek.json +0 -2202
  262. package/src/Graph/LineChart/mockedData/zoomPreview.json +0 -742
  263. package/src/Graph/LineChart/models.ts +0 -146
  264. package/src/Graph/LineChart/translatedLabels.ts +0 -9
  265. package/src/Graph/LineChart/useLineChartData.ts +0 -49
  266. package/src/Graph/LineChart/useLineChartIntersection.ts +0 -36
  267. package/src/Graph/SingleBar/ResponsiveSingleBar.tsx +0 -197
  268. package/src/Graph/SingleBar/SingleBar.stories.tsx +0 -204
  269. package/src/Graph/SingleBar/SingleBar.tsx +0 -25
  270. package/src/Graph/SingleBar/ThresholdLine.tsx +0 -103
  271. package/src/Graph/SingleBar/Thresholds.tsx +0 -50
  272. package/src/Graph/SingleBar/index.ts +0 -1
  273. package/src/Graph/SingleBar/models.ts +0 -10
  274. package/src/Graph/Text/Text.stories.tsx +0 -123
  275. package/src/Graph/Text/Text.styles.ts +0 -17
  276. package/src/Graph/Text/Text.tsx +0 -91
  277. package/src/Graph/Text/index.ts +0 -1
  278. package/src/Graph/common/margins.ts +0 -1
  279. package/src/Graph/common/models.ts +0 -19
  280. package/src/Graph/common/timeSeries/index.test.ts +0 -624
  281. package/src/Graph/common/timeSeries/index.ts +0 -626
  282. package/src/Graph/common/timeSeries/models.ts +0 -129
  283. package/src/Graph/common/utils.ts +0 -75
  284. package/src/Graph/index.ts +0 -5
  285. package/src/InputField/Select/Autocomplete/Connected/Multi/MultiConnectedAutocompleteField.cypress.spec.tsx +0 -127
  286. package/src/InputField/Select/Autocomplete/Connected/Multi/utils/index.ts +0 -22
  287. package/src/Listing/Cell/DataCell.styles.ts +0 -24
  288. package/src/Listing/EmptyResult/EmptyResult.tsx +0 -13
  289. package/src/Listing/Header/Cell/ListingHeaderCell.styles.ts +0 -71
  290. package/src/Listing/Header/Cell/SelectActionListingHeaderCell.styles.ts +0 -26
  291. package/src/Listing/Header/Cell/SelectActionListingHeaderCell.tsx +0 -70
  292. package/src/Listing/Header/ListingHeader.styles.ts +0 -16
  293. package/src/Listing/Header/_internals/DraggableIconButton.tsx +0 -35
  294. package/src/Listing/Header/index.ts +0 -1
  295. package/src/Listing/Listing.cypress.spec.tsx +0 -122
  296. package/src/Listing/Listing.styles.ts +0 -80
  297. package/src/Listing/ListingDocs.mdx +0 -61
  298. package/src/Listing/Row/EmptyRow.styles.ts +0 -14
  299. package/src/Listing/Row/EmptyRow.tsx +0 -30
  300. package/src/Listing/Row/SkeletonLoaderRows.tsx +0 -23
  301. package/src/ParentSize/ParentSize.tsx +0 -24
  302. package/src/ParentSize/index.ts +0 -1
  303. package/src/RichTextEditor/RichTextEditor.cypress.spec.tsx +0 -408
  304. package/src/RichTextEditor/plugins/ToolbarPlugin/AlignPicker.tsx +0 -116
  305. package/src/RichTextEditor/plugins/ToolbarPlugin/BlockButtons.tsx +0 -155
  306. package/src/RichTextEditor/plugins/ToolbarPlugin/LinkButton.tsx +0 -106
  307. package/src/RichTextEditor/plugins/ToolbarPlugin/ListButton.tsx +0 -155
  308. package/src/RichTextEditor/plugins/ToolbarPlugin/MacrosButton.tsx +0 -75
  309. package/src/RichTextEditor/plugins/ToolbarPlugin/ToolbarPlugin.styles.ts +0 -32
  310. package/src/TimePeriods/CustomTimePeriod/CompactCustomTimePeriod.styles.ts +0 -51
  311. package/src/TimePeriods/CustomTimePeriod/CompactCustomTimePeriod.tsx +0 -95
  312. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/ErrorText.tsx +0 -14
  313. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/PickersStartEndDate.tsx +0 -171
  314. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/index.tsx +0 -76
  315. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/models.ts +0 -59
  316. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/usePickersStartEndDate.ts +0 -82
  317. package/src/TimePeriods/CustomTimePeriod/SimpleCustomTimePeriod.tsx +0 -28
  318. package/src/TimePeriods/CustomTimePeriod/index.tsx +0 -66
  319. package/src/TimePeriods/DateTimePickerInput.tsx +0 -77
  320. package/src/TimePeriods/ResolutionTimePeriod.cypress.spec.tsx +0 -65
  321. package/src/TimePeriods/SelectedTimePeriod.tsx +0 -102
  322. package/src/TimePeriods/TimePeriods.cypress.spec.tsx +0 -486
  323. package/src/TimePeriods/TimePeriods.styles.ts +0 -22
  324. package/src/TimePeriods/helpers/index.ts +0 -26
  325. package/src/TimePeriods/index.stories.tsx +0 -121
  326. package/src/TimePeriods/index.tsx +0 -79
  327. package/src/TimePeriods/mockedData.ts +0 -12
  328. package/src/TimePeriods/models.ts +0 -97
  329. package/src/TimePeriods/timePeriodsAtoms.ts +0 -102
  330. package/src/TimePeriods/translatedLabels.ts +0 -9
  331. package/src/TimePeriods/useSortTimePeriods.ts +0 -31
  332. package/src/TimePeriods/useTimePeriod.ts +0 -49
  333. package/src/Typography/EllipsisTypography.tsx +0 -18
  334. package/src/Typography/FluidTypography/index.stories.tsx +0 -63
  335. package/src/Typography/FluidTypography/index.tsx +0 -51
  336. package/src/Typography/FluidTypography/useFluidResizeObserver.ts +0 -56
  337. package/src/Typography/Subtitle.tsx +0 -55
  338. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-normal-1-snap.png +0 -0
  339. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-with-item-header-1-snap.png +0 -0
  340. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-with-many-panels-1-snap.png +0 -0
  341. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-basic-1-snap.png +0 -0
  342. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-20-px-height-1-snap.png +0 -0
  343. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-200-px-width-1-snap.png +0 -0
  344. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-heading-5-variant-1-snap.png +0 -0
  345. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-long-text-1-snap.png +0 -0
  346. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-as-empty-state-1-snap.png +0 -0
  347. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-with-editable-and-sortable-columns-1-snap.png +0 -0
  348. package/src/api/useGraphQuery/index.ts +0 -166
  349. package/src/api/useGraphQuery/models.ts +0 -15
  350. package/src/base/tokens/README.md +0 -3
  351. package/src/base/tokens/source/$metadata.json +0 -5
  352. package/src/base/tokens/source/base.json +0 -142
  353. package/src/base/tokens/themes/base.tokens.d.ts +0 -38
  354. package/src/base/tokens/themes/base.tokens.json +0 -695
  355. package/src/base/tokens/themes/base.tokens.ts +0 -38
  356. package/src/base/tokens/themes/ui-dark.tokens.d.ts +0 -38
  357. package/src/base/tokens/themes/ui-dark.tokens.json +0 -695
  358. package/src/base/tokens/themes/ui-dark.tokens.ts +0 -38
  359. package/src/base/tokens/themes/ui-light.tokens.d.ts +0 -38
  360. package/src/base/tokens/themes/ui-light.tokens.json +0 -695
  361. package/src/base/tokens/themes/ui-light.tokens.ts +0 -38
  362. package/src/components/Avatar/Avatar.stories.tsx +0 -23
  363. package/src/components/Avatar/Avatar.styles.ts +0 -11
  364. package/src/components/Avatar/Avatar.tsx +0 -32
  365. package/src/components/Avatar/index.ts +0 -1
  366. package/src/components/Button/Button.stories.tsx +0 -34
  367. package/src/components/Button/Button.styles.ts +0 -44
  368. package/src/components/Button/Button.tsx +0 -78
  369. package/src/components/Button/Icon/IconButton.stories.tsx +0 -18
  370. package/src/components/Button/Icon/IconButton.styles.ts +0 -14
  371. package/src/components/Button/Icon/IconButton.tsx +0 -62
  372. package/src/components/Button/Icon/index.tsx +0 -1
  373. package/src/components/Button/index.ts +0 -2
  374. package/src/components/CollapsibleItem/CollapsibleItem.stories.tsx +0 -25
  375. package/src/components/CollapsibleItem/CollapsibleItem.tsx +0 -47
  376. package/src/components/CollapsibleItem/index.ts +0 -1
  377. package/src/components/CollapsibleItem/useCollapsibleItemStyles.ts +0 -15
  378. package/src/components/DataTable/DataListing.tsx +0 -6
  379. package/src/components/DataTable/DataTable.cypress.spec.tsx +0 -193
  380. package/src/components/DataTable/DataTable.stories.tsx +0 -91
  381. package/src/components/DataTable/DataTable.styles.ts +0 -30
  382. package/src/components/DataTable/DataTable.tsx +0 -35
  383. package/src/components/DataTable/EmptyState/DataTableEmptyState.stories.tsx +0 -21
  384. package/src/components/DataTable/EmptyState/DataTableEmptyState.styles.ts +0 -26
  385. package/src/components/DataTable/EmptyState/DataTableEmptyState.tsx +0 -53
  386. package/src/components/DataTable/Item/DataTableItem.stories.tsx +0 -25
  387. package/src/components/DataTable/Item/DataTableItem.styles.ts +0 -38
  388. package/src/components/DataTable/Item/DataTableItem.tsx +0 -123
  389. package/src/components/DataTable/Item/DataTableItemSkeleton.tsx +0 -13
  390. package/src/components/DataTable/index.ts +0 -12
  391. package/src/components/Form/AccessRights/AccessRights.resource.ts +0 -45
  392. package/src/components/Form/AccessRights/AccessRightsForm.stories.tsx +0 -59
  393. package/src/components/Form/AccessRights/AccessRightsForm.styles.ts +0 -21
  394. package/src/components/Form/AccessRights/AccessRightsForm.tsx +0 -67
  395. package/src/components/Form/AccessRights/AccessRightsFormActions.tsx +0 -80
  396. package/src/components/Form/AccessRights/Input/AddAction.tsx +0 -31
  397. package/src/components/Form/AccessRights/Input/ContactAccessRightInput.stories.tsx +0 -54
  398. package/src/components/Form/AccessRights/Input/ContactAccessRightInput.tsx +0 -72
  399. package/src/components/Form/AccessRights/Input/ContactAccessRightsInput.styles.ts +0 -22
  400. package/src/components/Form/AccessRights/Input/ContactInputField.tsx +0 -105
  401. package/src/components/Form/AccessRights/Input/RoleInputField.tsx +0 -29
  402. package/src/components/Form/AccessRights/List/ContactAccessRightsList.stories.tsx +0 -97
  403. package/src/components/Form/AccessRights/List/ContactAccessRightsList.styles.ts +0 -71
  404. package/src/components/Form/AccessRights/List/ContactAccessRightsList.tsx +0 -51
  405. package/src/components/Form/AccessRights/List/ContactAccessRightsListItem.stories.tsx +0 -116
  406. package/src/components/Form/AccessRights/List/ContactAccessRightsListItem.tsx +0 -118
  407. package/src/components/Form/AccessRights/List/ContactAccessRightsListItemSkeleton.tsx +0 -26
  408. package/src/components/Form/AccessRights/List/ContactAccessRightsListSkeleton.tsx +0 -28
  409. package/src/components/Form/AccessRights/Stats/AccessRightsStats.styles.ts +0 -18
  410. package/src/components/Form/AccessRights/Stats/AccessRightsStats.tsx +0 -41
  411. package/src/components/Form/AccessRights/__fixtures__/contactAccessRight.mock.ts +0 -54
  412. package/src/components/Form/AccessRights/common/GroupLabel.styles.ts +0 -18
  413. package/src/components/Form/AccessRights/common/GroupLabel.tsx +0 -15
  414. package/src/components/Form/AccessRights/common/Input.styles.ts +0 -48
  415. package/src/components/Form/AccessRights/common/RoleInputSelect.styles.ts +0 -11
  416. package/src/components/Form/AccessRights/common/RoleInputSelect.tsx +0 -57
  417. package/src/components/Form/AccessRights/index.ts +0 -3
  418. package/src/components/Form/AccessRights/useAccessRightsForm.test.tsx +0 -531
  419. package/src/components/Form/AccessRights/useAccessRightsForm.tsx +0 -282
  420. package/src/components/Form/AccessRights/useAccessRightsForm.utils.ts +0 -41
  421. package/src/components/Form/Dashboard/Dashboard.resource.ts +0 -9
  422. package/src/components/Form/Dashboard/DashboardForm.stories.ts +0 -39
  423. package/src/components/Form/Dashboard/DashboardForm.styles.ts +0 -21
  424. package/src/components/Form/Dashboard/DashboardForm.tsx +0 -137
  425. package/src/components/Form/Dashboard/GlobalRefreshFieldOption.tsx +0 -59
  426. package/src/components/Form/Dashboard/index.ts +0 -2
  427. package/src/components/Form/Dashboard/translatedLabels.ts +0 -9
  428. package/src/components/Form/Form.models.ts +0 -1
  429. package/src/components/Form/Form.resource.ts +0 -1
  430. package/src/components/Form/Form.styles.ts +0 -17
  431. package/src/components/Form/FormActions.tsx +0 -57
  432. package/src/components/Form/index.ts +0 -3
  433. package/src/components/Header/PageHeader/PageHeader.stories.tsx +0 -97
  434. package/src/components/Header/PageHeader/PageHeader.styles.ts +0 -126
  435. package/src/components/Header/PageHeader/PageHeader.tsx +0 -15
  436. package/src/components/Header/PageHeader/PageHeaderActions.tsx +0 -17
  437. package/src/components/Header/PageHeader/PageHeaderMain.tsx +0 -15
  438. package/src/components/Header/PageHeader/PageHeaderMenu.tsx +0 -15
  439. package/src/components/Header/PageHeader/PageHeaderMessage.tsx +0 -32
  440. package/src/components/Header/PageHeader/PageHeaderTitle.tsx +0 -47
  441. package/src/components/Header/PageHeader/index.ts +0 -14
  442. package/src/components/Header/index.ts +0 -1
  443. package/src/components/Icon/Icon.styles.ts +0 -0
  444. package/src/components/Icon/Icon.tsx +0 -2
  445. package/src/components/Icon/index.ts +0 -0
  446. package/src/components/Inputs/Switch/Switch.stories.tsx +0 -22
  447. package/src/components/Inputs/Switch/Switch.styles.ts +0 -13
  448. package/src/components/Inputs/Switch/Switch.tsx +0 -18
  449. package/src/components/Inputs/index.ts +0 -1
  450. package/src/components/ItemComposition/Item.tsx +0 -41
  451. package/src/components/ItemComposition/ItemComposition.stories.tsx +0 -78
  452. package/src/components/ItemComposition/ItemComposition.styles.ts +0 -29
  453. package/src/components/ItemComposition/ItemComposition.tsx +0 -47
  454. package/src/components/ItemComposition/index.ts +0 -6
  455. package/src/components/Layout/AreaIndicator.styles.ts +0 -33
  456. package/src/components/Layout/AreaIndicator.tsx +0 -35
  457. package/src/components/Layout/PageLayout/PageLayout.stories.tsx +0 -81
  458. package/src/components/Layout/PageLayout/PageLayout.styles.ts +0 -41
  459. package/src/components/Layout/PageLayout/PageLayout.tsx +0 -21
  460. package/src/components/Layout/PageLayout/PageLayoutActions.tsx +0 -25
  461. package/src/components/Layout/PageLayout/PageLayoutBody.tsx +0 -25
  462. package/src/components/Layout/PageLayout/PageLayoutHeader.tsx +0 -19
  463. package/src/components/Layout/PageLayout/PageQuickAccess.tsx +0 -76
  464. package/src/components/Layout/PageLayout/index.ts +0 -12
  465. package/src/components/Layout/PageLayout.cypress.spec.tsx +0 -66
  466. package/src/components/Layout/index.ts +0 -1
  467. package/src/components/List/Item/Avatar.tsx +0 -21
  468. package/src/components/List/Item/AvatarSkeleton.tsx +0 -17
  469. package/src/components/List/Item/ListItem.stories.tsx +0 -41
  470. package/src/components/List/Item/ListItem.styles.ts +0 -57
  471. package/src/components/List/Item/ListItem.tsx +0 -32
  472. package/src/components/List/Item/Text.tsx +0 -25
  473. package/src/components/List/Item/TextSkeleton.tsx +0 -22
  474. package/src/components/List/Item/index.ts +0 -14
  475. package/src/components/List/List.stories.tsx +0 -70
  476. package/src/components/List/List.styles.ts +0 -8
  477. package/src/components/List/List.tsx +0 -19
  478. package/src/components/List/index.ts +0 -6
  479. package/src/components/Menu/Button/MenuButton.stories.tsx +0 -16
  480. package/src/components/Menu/Button/MenuButton.styles.ts +0 -27
  481. package/src/components/Menu/Button/MenuButton.tsx +0 -67
  482. package/src/components/Menu/Button/index.ts +0 -1
  483. package/src/components/Menu/Menu.stories.tsx +0 -71
  484. package/src/components/Menu/Menu.styles.ts +0 -68
  485. package/src/components/Menu/Menu.tsx +0 -25
  486. package/src/components/Menu/MenuDivider.tsx +0 -13
  487. package/src/components/Menu/MenuItem.tsx +0 -38
  488. package/src/components/Menu/MenuItems.tsx +0 -36
  489. package/src/components/Menu/index.ts +0 -12
  490. package/src/components/Menu/useMenu.tsx +0 -79
  491. package/src/components/Modal/Modal.stories.tsx +0 -142
  492. package/src/components/Modal/Modal.styles.ts +0 -91
  493. package/src/components/Modal/Modal.tsx +0 -79
  494. package/src/components/Modal/ModalActions.tsx +0 -64
  495. package/src/components/Modal/ModalBody.tsx +0 -15
  496. package/src/components/Modal/ModalHeader.tsx +0 -21
  497. package/src/components/Modal/index.ts +0 -12
  498. package/src/components/README.md +0 -3
  499. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.stories.tsx +0 -62
  500. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.styles.tsx +0 -22
  501. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.tsx +0 -68
  502. package/src/components/Tooltip/ConfirmationTooltip/TooltipContent.tsx +0 -31
  503. package/src/components/Tooltip/ConfirmationTooltip/index.ts +0 -1
  504. package/src/components/Tooltip/ConfirmationTooltip/models.ts +0 -18
  505. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.stories.tsx +0 -70
  506. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.styles.ts +0 -5
  507. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.tsx +0 -115
  508. package/src/components/Tooltip/TextOverflowTooltip/index.tsx +0 -1
  509. package/src/components/Tooltip/Tooltip.stories.tsx +0 -41
  510. package/src/components/Tooltip/Tooltip.tsx +0 -57
  511. package/src/components/Tooltip/index.ts +0 -2
  512. package/src/components/index.ts +0 -13
  513. package/src/styles/tokens/themes/_ui-dark.tokens.json +0 -695
  514. package/src/styles/tokens/themes/_ui-light.tokens.json +0 -695
  515. package/src/utils/centreonBaseURL.ts +0 -4
  516. package/src/utils/docsURL.ts +0 -31
  517. package/src/utils/index.ts +0 -22
  518. package/src/utils/panelSize.ts +0 -15
  519. package/src/utils/sanitizedHTML.ts +0 -18
  520. package/src/utils/translatedLabel.ts +0 -2
  521. package/src/utils/useInfiniteScrollListing.ts +0 -121
  522. package/src/utils/useLicenseExpirationWarning.test.tsx +0 -148
  523. package/src/utils/useLicenseExpirationWarning.ts +0 -52
  524. package/src/utils/usePluralizedTranslation.ts +0 -21
  525. package/src/utils/useRefreshInterval.ts +0 -39
  526. package/src/utils/useResizeObserver.ts +0 -6
  527. package/src/utils/useThresholds.ts +0 -0
  528. /package/{public/brand → assets}/centreon-logo-one-line-dark.svg +0 -0
  529. /package/{public/brand → assets}/centreon-logo-one-line-light.svg +0 -0
  530. /package/{src/@assets/images → assets}/not-authorized-template-background-dark.svg +0 -0
  531. /package/{src/@assets/images → assets}/not-authorized-template-background-light.svg +0 -0
  532. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.ttf +0 -0
  533. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.woff +0 -0
  534. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.woff2 +0 -0
  535. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.ttf +0 -0
  536. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.woff +0 -0
  537. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.woff2 +0 -0
  538. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.ttf +0 -0
  539. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.woff +0 -0
  540. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.woff2 +0 -0
  541. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.ttf +0 -0
  542. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.woff +0 -0
  543. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.woff2 +0 -0
  544. /package/src/Listing/Header/{_internals/Label.tsx → Label.tsx} +0 -0
  545. /package/src/Typography/{story.utils.tsx → index.tsx} +0 -0
@@ -2,7 +2,7 @@ import { useState, useEffect } from 'react';
2
2
 
3
3
  import 'ulog';
4
4
  import axios from 'axios';
5
- import { pathOr, defaultTo, path, includes, or } from 'ramda';
5
+ import { pathOr, defaultTo, path, includes } from 'ramda';
6
6
  import anylogger from 'anylogger';
7
7
  import { JsonDecoder } from 'ts.data.json';
8
8
 
@@ -42,15 +42,12 @@ const useRequest = <TResult>({
42
42
 
43
43
  const showRequestErrorMessage = (error): void => {
44
44
  log.error(error);
45
+ const message = defaultTo(
46
+ pathOr(defaultFailureMessage, ['response', 'data', 'message']),
47
+ getErrorMessage
48
+ )(error);
45
49
 
46
- const message = or(
47
- pathOr(undefined, ['response', 'data', 'message'], error),
48
- pathOr(defaultFailureMessage, ['response', 'data'], error)
49
- );
50
-
51
- const errorMessage = defaultTo(message, getErrorMessage?.(error));
52
-
53
- showErrorMessage(errorMessage as string);
50
+ showErrorMessage(message);
54
51
  };
55
52
 
56
53
  const sendRequest = (params): Promise<TResult> => {
package/src/index.ts CHANGED
@@ -2,8 +2,6 @@ import type { Props as SingleAutocompleteFieldProps } from './InputField/Select/
2
2
 
3
3
  export { default as IconButton } from './Button/Icon';
4
4
 
5
- export { Checkbox, CheckboxGroup } from './Checkbox';
6
-
7
5
  export { default as SingleAutocompleteField } from './InputField/Select/Autocomplete';
8
6
  export type { SingleAutocompleteFieldProps };
9
7
 
@@ -75,10 +73,7 @@ export { default as useCancelTokenSource } from './api/useCancelTokenSource';
75
73
  export { getData, patchData, postData, putData, deleteData } from './api';
76
74
  export { default as useRequest } from './api/useRequest';
77
75
  export { default as buildListingEndpoint } from './api/buildListingEndpoint';
78
- export {
79
- getSearchQueryParameterValue,
80
- getFoundFields
81
- } from './api/buildListingEndpoint/getSearchQueryParameterValue';
76
+ export { default as getSearchQueryParameterValue } from './api/buildListingEndpoint/getSearchQueryParameterValue';
82
77
  export type {
83
78
  Parameters as ListingParameters,
84
79
  BuildListingEndpointParameters,
@@ -87,6 +82,15 @@ export type {
87
82
  } from './api/buildListingEndpoint/models';
88
83
  export { default as buildListingDecoder } from './api/buildListingDecoder';
89
84
 
85
+ export {
86
+ default as useLocaleDateTimeFormat,
87
+ dateTimeFormat,
88
+ dateFormat,
89
+ timeFormat
90
+ } from './utils/useLocaleDateTimeFormat';
91
+
92
+ export { default as useDebounce } from './utils/useDebounce';
93
+ export { default as useIntersectionObserver } from './utils/useIntersectionObserver';
90
94
  export { default as ContentWithCircularLoading } from './ContentWithCircularProgress';
91
95
  export {
92
96
  setUrlQueryParameters,
@@ -98,6 +102,12 @@ export type {
98
102
  ListsSearchParameter
99
103
  } from './api/buildListingEndpoint/models';
100
104
 
105
+ export {
106
+ default as useMemoComponent,
107
+ useDeepCompare
108
+ } from './utils/useMemoComponent';
109
+ export { default as useCopyToClipboard } from './utils/useCopyToClipboard';
110
+
101
111
  export { default as MenuSkeleton } from './MenuSkeleton';
102
112
  export { default as PopoverMenu } from './PopoverMenu';
103
113
 
@@ -116,7 +126,7 @@ export { default as Module } from './Module/index';
116
126
  export { default as LicensedModule } from './Module/LicensedModule';
117
127
  export { default as SnackbarProvider } from './Snackbar/SnackbarProvider';
118
128
  export { default as PersistentTooltip } from './InputField/Search/PersistentTooltip';
119
- export * from './Form';
129
+ export { default as Form, GroupDirection } from './Form';
120
130
  export { InputType } from './Form/Inputs/models';
121
131
  export type {
122
132
  InputProps,
@@ -126,10 +136,6 @@ export type {
126
136
  export { default as Responsive } from './Responsive';
127
137
  export { default as useFetchQuery } from './api/useFetchQuery';
128
138
  export { default as useMutationQuery, Method } from './api/useMutationQuery';
129
- export {
130
- default as useGraphQuery,
131
- resourceTypeQueryParameter
132
- } from './api/useGraphQuery';
133
139
  export { default as QueryProvider } from './api/QueryProvider';
134
140
  export {
135
141
  default as FileDropZone,
@@ -137,33 +143,17 @@ export {
137
143
  } from './FileDropZone';
138
144
  export type { CustomDropZoneContentProps } from './FileDropZone';
139
145
  export { default as TestQueryProvider } from './api/TestQueryProvider';
146
+ export * from './utils/useThemeMode';
147
+ export * from './utils/typedMemo';
140
148
  export * from './FallbackPage/FallbackPage';
141
149
  export * from './Logo/CentreonLogo';
142
150
  export * from './TopCounterElements';
143
151
  export { default as Image, ImageVariant } from './Image/Image';
144
152
  export { default as WallpaperPage } from './WallpaperPage';
145
153
  export { RichTextEditor } from './RichTextEditor';
146
- export {
147
- default as ActionsList,
148
- ActionsListActionDivider
149
- } from './ActionsList';
150
- export type { ActionsListActions } from './ActionsList';
151
- export type { ActionVariants } from './ActionsList/models';
154
+ export { default as ActionsList } from './ActionsList';
155
+ export { getStatusColors, SeverityCode } from './utils/statuses';
152
156
 
153
157
  export type { ResponseError, CatchErrorProps } from './api/customFetch';
154
-
155
- export * from './utils';
156
- export { default as FluidTypography } from './Typography/FluidTypography';
157
- export { default as EllipsisTypography } from './Typography/EllipsisTypography';
158
- export * from './Dashboard';
159
- export * from './Graph';
160
- export type { LineChartData } from './Graph/common/models';
161
- export * from './Graph/common/timeSeries';
162
-
163
- export { default as TimePeriods } from './TimePeriods';
164
- export { default as SimpleCustomTimePeriod } from './TimePeriods/CustomTimePeriod/SimpleCustomTimePeriod';
165
- export { default as DateTimePickerInput } from './TimePeriods/DateTimePickerInput';
166
- export * from './ParentSize';
167
- export { default as Subtitle } from './Typography/Subtitle';
168
158
  export { default as TablePagination } from './Listing/ActionBar/Pagination';
169
159
  export { default as PaginationActions } from './Listing/ActionBar/PaginationActions';
@@ -1,4 +1,4 @@
1
- import { fromPairs, startsWith } from 'ramda';
1
+ import { fromPairs } from 'ramda';
2
2
 
3
3
  import { QueryParameter } from '../models';
4
4
 
@@ -25,10 +25,6 @@ const getUrlQueryParameters = <
25
25
 
26
26
  const entries = [...urlParams.entries()].map<[string, string]>(
27
27
  ([key, value]) => {
28
- if (startsWith('/', value)) {
29
- return [key, value];
30
- }
31
-
32
28
  return [key, JSON.parse(value)];
33
29
  }
34
30
  );
@@ -0,0 +1,52 @@
1
+ import initStoryshots from '@storybook/addon-storyshots';
2
+ import { imageSnapshot } from '@storybook/addon-storyshots-puppeteer';
3
+
4
+ jest.unmock('axios');
5
+
6
+ const getMatchOptions = () => {
7
+ return {
8
+ failureThreshold: 0.2,
9
+ failureThresholdType: 'percent'
10
+ };
11
+ };
12
+
13
+ const beforeScreenshot = async (page) => {
14
+ await page.addStyleTag({
15
+ content: `
16
+ *,
17
+ *::before,
18
+ *::after {
19
+ animation-delay: -1s !important;
20
+ animation-duration: 0s !important;
21
+ animation-iteration-count: 1 !important;
22
+ background-attachment: initial !important;
23
+ scroll-behavior: auto !important;
24
+ transition-duration: 0s !important;
25
+ transition: none !important;
26
+ }`
27
+ });
28
+
29
+ await page.setViewport({
30
+ height: 1000,
31
+ width: 1000
32
+ });
33
+ };
34
+
35
+ const getStoryKindRegex = () => {
36
+ const config = JSON.parse(process.env.TEST_CONFIGURATION);
37
+ if (!config.story) {
38
+ return null;
39
+ }
40
+
41
+ return new RegExp(`^(${config.story || ''})$`, 'g');
42
+ };
43
+
44
+ initStoryshots({
45
+ storyKindRegex: getStoryKindRegex(),
46
+ suite: 'Image StoryShots',
47
+ test: imageSnapshot({
48
+ beforeScreenshot,
49
+ getMatchOptions,
50
+ storybookUrl: `file://${__dirname}/../.out`
51
+ })
52
+ });
@@ -9,7 +9,7 @@ import fetchMock, { MockParams } from 'jest-fetch-mock';
9
9
 
10
10
  import { ThemeMode } from '@centreon/ui-context';
11
11
 
12
- import ThemeProvider from '../src/StoryBookThemeProvider';
12
+ import ThemeProvider from './StoryBookThemeProvider';
13
13
 
14
14
  interface Props {
15
15
  children: ReactElement;
@@ -1,3 +1,5 @@
1
- export const getNormalizedId = (idToNormalized: string): string => {
1
+ const getNormalizedId = (idToNormalized: string): string => {
2
2
  return idToNormalized?.replace(/[^A-Z0-9]+/gi, '');
3
3
  };
4
+
5
+ export default getNormalizedId;
@@ -10,8 +10,7 @@ interface Props {
10
10
  errorMessage: string;
11
11
  successMessage: string;
12
12
  }
13
-
14
- export const useCopyToClipboard = ({
13
+ const useCopyToClipboard = ({
15
14
  successMessage,
16
15
  errorMessage
17
16
  }: Props): Result => {
@@ -54,3 +53,5 @@ export const useCopyToClipboard = ({
54
53
 
55
54
  return { copy };
56
55
  };
56
+
57
+ export default useCopyToClipboard;
@@ -1,4 +1,4 @@
1
- import { useRef, useCallback, useEffect } from 'react';
1
+ import { useRef, useCallback } from 'react';
2
2
 
3
3
  interface Props {
4
4
  functionToDebounce: (...args) => void;
@@ -6,17 +6,12 @@ interface Props {
6
6
  wait: number;
7
7
  }
8
8
 
9
- export const useDebounce = ({
9
+ const useDebounce = ({
10
10
  functionToDebounce,
11
11
  wait,
12
12
  memoProps = []
13
13
  }: Props): ((...args) => void) => {
14
14
  const timeoutRef = useRef<number | null>(null);
15
- const ref = useRef();
16
-
17
- useEffect(() => {
18
- ref.current = functionToDebounce;
19
- }, [functionToDebounce]);
20
15
 
21
16
  return useCallback((...args): void => {
22
17
  if (timeoutRef.current) {
@@ -24,7 +19,9 @@ export const useDebounce = ({
24
19
  }
25
20
 
26
21
  timeoutRef.current = setTimeout(() => {
27
- ref.current?.(...args);
22
+ functionToDebounce(...args);
28
23
  }, wait);
29
24
  }, memoProps);
30
25
  };
26
+
27
+ export default useDebounce;
@@ -7,9 +7,11 @@ interface UseDeepCallback<TParameters, TReturn, TMemoProps> {
7
7
  deps: Array<TMemoProps>;
8
8
  }
9
9
 
10
- export const useDeepCallback = <TParameters, TReturn, TMemoProps>({
10
+ const useDeepCallback = <TParameters, TReturn, TMemoProps>({
11
11
  deps,
12
12
  callback
13
13
  }: UseDeepCallback<TParameters, TReturn, TMemoProps>): ((
14
14
  props: TParameters
15
15
  ) => TReturn) => useCallback((props) => callback(props), useDeepCompare(deps));
16
+
17
+ export default useDeepCallback;
@@ -7,8 +7,10 @@ interface UseDeepMemo<TVariable, TMemoProps> {
7
7
  variable: TVariable;
8
8
  }
9
9
 
10
- export const useDeepMemo = <TVariable, TMemoProps>({
10
+ const useDeepMemo = <TVariable, TMemoProps>({
11
11
  deps,
12
12
  variable
13
13
  }: UseDeepMemo<TVariable, TMemoProps>): TVariable =>
14
14
  useMemo(() => variable, useDeepCompare(deps));
15
+
16
+ export default useDeepMemo;
@@ -2,18 +2,16 @@ import { useRef, useCallback } from 'react';
2
2
 
3
3
  interface HookParam {
4
4
  action: () => void;
5
- intersectionObserverOptions?: IntersectionObserverInit;
6
5
  loading: boolean;
7
6
  maxPage: number;
8
7
  page: number;
9
8
  }
10
9
 
11
- export const useIntersectionObserver = ({
10
+ const useIntersectionObserver = ({
12
11
  maxPage,
13
12
  page,
14
13
  loading,
15
- action,
16
- intersectionObserverOptions
14
+ action
17
15
  }: HookParam): ((node) => void) => {
18
16
  const observer = useRef<IntersectionObserver | null>(null);
19
17
  const lastElementRef = useCallback(
@@ -32,7 +30,7 @@ export const useIntersectionObserver = ({
32
30
  if (entry.isIntersecting && page < maxPage) {
33
31
  action();
34
32
  }
35
- }, intersectionObserverOptions);
33
+ });
36
34
 
37
35
  if (node && observer.current) {
38
36
  observer.current.observe(node);
@@ -43,3 +41,5 @@ export const useIntersectionObserver = ({
43
41
 
44
42
  return lastElementRef;
45
43
  };
44
+
45
+ export default useIntersectionObserver;
@@ -4,7 +4,7 @@ interface UseKeyObserverProps {
4
4
  isShiftKeyDown: boolean;
5
5
  }
6
6
 
7
- export const useKeyObserver = (): UseKeyObserverProps => {
7
+ const useKeyObserver = (): UseKeyObserverProps => {
8
8
  const [isShiftKeyDown, setIsShiftKeyDown] = useState<boolean>(false);
9
9
 
10
10
  const pressShift = (): void => setIsShiftKeyDown(true);
@@ -34,3 +34,5 @@ export const useKeyObserver = (): UseKeyObserverProps => {
34
34
  isShiftKeyDown
35
35
  };
36
36
  };
37
+
38
+ export default useKeyObserver;
@@ -10,7 +10,7 @@ import { Provider, useSetAtom } from 'jotai';
10
10
 
11
11
  import { userAtom, ThemeMode } from '@centreon/ui-context';
12
12
 
13
- import { useLocaleDateTimeFormat } from '.';
13
+ import useLocaleDateTimeFormat from '.';
14
14
 
15
15
  dayjs.extend(timezonePlugin);
16
16
  dayjs.extend(utcPlugin);
@@ -1,7 +1,6 @@
1
1
  import dayjs from 'dayjs';
2
2
  import humanizeDuration from 'humanize-duration';
3
3
  import { useAtomValue } from 'jotai';
4
- import localizedFormat from 'dayjs/plugin/localizedFormat';
5
4
 
6
5
  import { userAtom } from '@centreon/ui-context';
7
6
 
@@ -21,8 +20,6 @@ export interface LocaleDateTimeFormat {
21
20
  toTime: (date: Date | string) => string;
22
21
  }
23
22
 
24
- dayjs.extend(localizedFormat);
25
-
26
23
  const dateFormat = 'L';
27
24
  const timeFormat = 'LT';
28
25
  const dateTimeFormat = `${dateFormat} ${timeFormat}`;
@@ -90,4 +87,5 @@ const useLocaleDateTimeFormat = (): LocaleDateTimeFormat => {
90
87
  };
91
88
  };
92
89
 
93
- export { dateTimeFormat, dateFormat, timeFormat, useLocaleDateTimeFormat };
90
+ export default useLocaleDateTimeFormat;
91
+ export { dateTimeFormat, dateFormat, timeFormat };
@@ -10,7 +10,7 @@ import { render, RenderResult } from '@testing-library/react';
10
10
 
11
11
  import { userAtom, ThemeMode } from '@centreon/ui-context';
12
12
 
13
- import { useLocaleDateTimeFormat } from '.';
13
+ import useLocaleDateTimeFormat from '.';
14
14
 
15
15
  dayjs.extend(timezonePlugin);
16
16
  dayjs.extend(utcPlugin);
@@ -19,7 +19,7 @@ interface MemoComponent {
19
19
  memoProps: Array<unknown>;
20
20
  }
21
21
 
22
- export const useMemoComponent = ({
22
+ const useMemoComponent = ({
23
23
  Component,
24
24
  memoProps
25
25
  }: MemoComponent): JSX.Element =>
package/testRunner.js ADDED
@@ -0,0 +1,36 @@
1
+ /* eslint-disable array-callback-return */
2
+ /* eslint-disable consistent-return */
3
+ const config = {
4
+ story: null
5
+ };
6
+
7
+ const argv = process.argv.slice(0, 2);
8
+
9
+ process.argv.reduce((cmd, arg) => {
10
+ if (cmd) {
11
+ config[cmd] = arg;
12
+
13
+ return;
14
+ }
15
+
16
+ if (arg.startsWith('--')) {
17
+ const sub = arg.substring('--'.length);
18
+ if (Object.keys(config).includes(sub)) {
19
+ if (typeof config[sub] === 'boolean') {
20
+ config[cmd] = true;
21
+
22
+ return;
23
+ }
24
+
25
+ return sub;
26
+ }
27
+ }
28
+
29
+ argv.push(arg);
30
+ });
31
+
32
+ process.argv = argv;
33
+
34
+ process.env.TEST_CONFIGURATION = JSON.stringify(config);
35
+
36
+ require('jest/bin/jest');
package/tsconfig.json ADDED
@@ -0,0 +1,29 @@
1
+ {
2
+ "extends": "../js-config/tsconfig/index.json",
3
+ "compilerOptions": {
4
+ "baseUrl": "./",
5
+ "typeRoots": [
6
+ "./types",
7
+ "./node_modules/@types"
8
+ ],
9
+ "outDir": "./dist",
10
+ "declaration": true,
11
+ "skipLibCheck": true,
12
+ "pretty": true,
13
+ "emitDeclarationOnly": true,
14
+ "types": [],
15
+ "esModuleInterop": true
16
+ },
17
+ "include": [
18
+ "./src",
19
+ "./types"
20
+ ],
21
+ "exclude": [
22
+ "./node_modules",
23
+ "./dist",
24
+ "./src/**/*.test.ts",
25
+ "./src/**/*.test.tsx",
26
+ "./src/**/*.stories.tsx",
27
+ "../../node_modules",
28
+ ]
29
+ }
@@ -0,0 +1,9 @@
1
+ declare module '*.scss' {
2
+ export const content: { [className: string]: string };
3
+ export default content;
4
+ }
5
+
6
+ declare module '*.svg' {
7
+ const content: string;
8
+ export default content;
9
+ }
package/public/README.md DELETED
@@ -1,39 +0,0 @@
1
- > The assets in `public` are served as-is.
2
-
3
-
4
- ---
5
-
6
- ### `public/fonts` → `@centreon/ui/fonts` alias
7
-
8
- The `ThemeProvider` specifies the `@font-face` for MUI.
9
- It imports the fonts using the `@centreon/ui/fonts` alias, but does not bundle them.
10
-
11
-
12
-
13
- #### ⚠️ **note**
14
- When the `@centreon/ui` package is used as non-build dependency, then the `@centreon/ui/fonts` alias need to be added in the webpack config, and configured to handle the asset types.
15
- ```js
16
- // webpack.config.js
17
-
18
- // alias
19
- resolve: {
20
- alias: {
21
- '@centreon/ui/fonts': path.resolve(
22
- './node_modules/@centreon/ui/public/fonts'
23
- )
24
- }
25
- }
26
-
27
- // asset types
28
- module: {
29
- rules: [
30
- {
31
- generator: {
32
- filename: '[name][ext]'
33
- },
34
- test: /\.(woff|woff2|eot|ttf|otf)$/i,
35
- type: 'asset/resource'
36
- }
37
- ]
38
- }
39
- ```