@centreon/ui 24.4.59 → 24.4.60

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 (543) 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 +32 -102
  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.stories.tsx +1 -1
  10. package/src/Button/Icon/index.tsx +3 -12
  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 +1 -1
  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 +15 -31
  27. package/src/Form/Inputs/models.ts +4 -20
  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/Search/index.tsx +2 -2
  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 +9 -47
  41. package/src/InputField/Select/Autocomplete/Draggable/index.stories.tsx +2 -0
  42. package/src/InputField/Select/Autocomplete/Multi/index.tsx +15 -32
  43. package/src/InputField/Select/Autocomplete/index.stories.tsx +10 -1
  44. package/src/InputField/Select/Autocomplete/index.tsx +2 -5
  45. package/src/InputField/Select/IconPopover/index.tsx +1 -1
  46. package/src/InputField/Select/index.tsx +1 -2
  47. package/src/InputField/Text/index.tsx +44 -54
  48. package/src/Listing/ActionBar/index.tsx +10 -16
  49. package/src/Listing/Cell/DataCell.tsx +68 -43
  50. package/src/Listing/Cell/index.tsx +8 -88
  51. package/src/Listing/Header/{_internals/PredefinedSelectionList.tsx → PredefinedSelectionList.tsx} +1 -1
  52. package/src/Listing/Header/{Cell/ListingHeaderCell.tsx → SortableCell/Content.tsx} +83 -18
  53. package/src/Listing/Header/SortableCell/DraggableIcon.tsx +41 -0
  54. package/src/Listing/Header/{ListingHeader.tsx → index.tsx} +105 -28
  55. package/src/Listing/{Row/Row.tsx → Row.tsx} +11 -12
  56. package/src/Listing/Skeleton.tsx +11 -0
  57. package/src/Listing/index.stories.tsx +40 -144
  58. package/src/Listing/index.test.tsx +1 -1
  59. package/src/Listing/index.tsx +261 -230
  60. package/src/Listing/models.ts +0 -1
  61. package/src/Listing/tableAtoms.ts +10 -15
  62. package/src/Listing/useStyleTable.ts +9 -9
  63. package/src/ListingPage/index.stories.tsx +8 -21
  64. package/src/ListingPage/index.tsx +38 -20
  65. package/src/Logo/CentreonLogo.tsx +2 -2
  66. package/src/Module/LicensedModule/LicenseCheck/index.stories.tsx +2 -0
  67. package/src/Module/LicensedModule/LicenseCheck/index.tsx +9 -24
  68. package/src/Module/LicensedModule/index.tsx +1 -7
  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 +7 -11
  73. package/src/PopoverMenu/index.tsx +4 -18
  74. package/src/RichTextEditor/ContentEditable.tsx +24 -70
  75. package/src/RichTextEditor/RichTextEditor.tsx +47 -161
  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/ThemeProvider/index.tsx +33 -41
  87. package/src/ThemeProvider/palettes.ts +201 -422
  88. package/src/Typography/{Typography.stories.tsx → index.stories.tsx} +5 -5
  89. package/src/WallpaperPage/index.stories.tsx +1 -1
  90. package/src/Wizard/ActionsBar.test.tsx +1 -1
  91. package/src/Wizard/WizardContent.tsx +3 -2
  92. package/src/Wizard/index.stories.tsx +18 -5
  93. package/src/Wizard/index.test.tsx +1 -1
  94. package/src/Wizard/index.tsx +5 -20
  95. package/src/Wizard/models.ts +0 -7
  96. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-loading-with-no-data-1-snap.png +0 -0
  97. package/src/api/TestQueryProvider.tsx +1 -2
  98. package/src/api/buildListingEndpoint/getSearchQueryParameterValue.ts +26 -35
  99. package/src/api/buildListingEndpoint/index.test.ts +2 -2
  100. package/src/api/buildListingEndpoint/index.ts +1 -1
  101. package/src/api/buildListingEndpoint/models.ts +2 -2
  102. package/src/api/customFetch.ts +3 -22
  103. package/src/api/index.ts +3 -3
  104. package/src/api/useFetchQuery/index.ts +19 -40
  105. package/src/api/useMutationQuery/index.ts +20 -51
  106. package/src/api/useRequest/index.ts +6 -9
  107. package/src/index.ts +21 -32
  108. package/src/storyshots.test.js +52 -0
  109. package/{test → src}/testRenderer.tsx +1 -1
  110. package/src/utils/getNormalizedId.ts +3 -1
  111. package/src/utils/useCopyToClipboard.ts +3 -2
  112. package/src/utils/useDebounce.ts +5 -8
  113. package/src/utils/useDeepCallback.ts +3 -1
  114. package/src/utils/useDeepMemo.ts +3 -1
  115. package/src/utils/useIntersectionObserver.ts +5 -5
  116. package/src/utils/useKeyObserver.tsx +3 -1
  117. package/src/utils/useLocaleDateTimeFormat/index.test.tsx +1 -1
  118. package/src/utils/useLocaleDateTimeFormat/index.ts +2 -4
  119. package/src/utils/useLocaleDateTimeFormat/localeFallback.test.tsx +1 -1
  120. package/src/utils/useMemoComponent.ts +1 -1
  121. package/testRunner.js +36 -0
  122. package/tsconfig.json +29 -0
  123. package/types/declarations.d.ts +9 -0
  124. package/public/README.md +0 -39
  125. package/public/mockServiceWorker.js +0 -303
  126. package/src/@assets/README.md +0 -5
  127. package/src/@assets/brand/centreon-logo-one-line-dark.svg +0 -1
  128. package/src/@assets/brand/centreon-logo-one-line-light.svg +0 -1
  129. package/src/@assets/icons/downtime.icon.svg +0 -1
  130. package/src/@types/aria-attributes.d.ts +0 -10
  131. package/src/@types/data-attributes.d.ts +0 -3
  132. package/src/@types/globals.d.ts +0 -9
  133. package/src/@types/vite-env.d.ts +0 -2
  134. package/src/ActionsList/ActionsList.styles.ts +0 -116
  135. package/src/ActionsList/models.ts +0 -8
  136. package/src/Checkbox/Checkbox.tsx +0 -109
  137. package/src/Checkbox/CheckboxGroup/index.stories.tsx +0 -41
  138. package/src/Checkbox/CheckboxGroup/index.tsx +0 -75
  139. package/src/Checkbox/index.stories.tsx +0 -39
  140. package/src/Checkbox/index.tsx +0 -2
  141. package/src/Dashboard/Dashboard.styles.ts +0 -108
  142. package/src/Dashboard/DashboardLayout.stories.tsx +0 -104
  143. package/src/Dashboard/Grid.tsx +0 -70
  144. package/src/Dashboard/Item.tsx +0 -100
  145. package/src/Dashboard/Layout.tsx +0 -79
  146. package/src/Dashboard/index.tsx +0 -9
  147. package/src/Dashboard/utils.ts +0 -28
  148. package/src/Form/Form.styles.ts +0 -11
  149. package/src/Form/Inputs/Checkbox.tsx +0 -57
  150. package/src/Form/Inputs/CheckboxGroup.tsx +0 -76
  151. package/src/Form/index.ts +0 -1
  152. package/src/Graph/Gauge/AnimatedPie.tsx +0 -102
  153. package/src/Graph/Gauge/Gauge.stories.tsx +0 -159
  154. package/src/Graph/Gauge/Gauge.tsx +0 -41
  155. package/src/Graph/Gauge/PieData.tsx +0 -63
  156. package/src/Graph/Gauge/ResponsiveGauge.tsx +0 -148
  157. package/src/Graph/Gauge/Thresholds.tsx +0 -117
  158. package/src/Graph/Gauge/index.ts +0 -1
  159. package/src/Graph/Gauge/models.ts +0 -20
  160. package/src/Graph/HeatMap/HeatMap.stories.tsx +0 -105
  161. package/src/Graph/HeatMap/HeatMap.styles.tsx +0 -29
  162. package/src/Graph/HeatMap/HeatMap.tsx +0 -12
  163. package/src/Graph/HeatMap/HeatMapData.json +0 -137
  164. package/src/Graph/HeatMap/ResponsiveHeatMap.tsx +0 -98
  165. package/src/Graph/HeatMap/index.ts +0 -1
  166. package/src/Graph/HeatMap/model.ts +0 -33
  167. package/src/Graph/LineChart/BasicComponents/Axes/UnitLabel.tsx +0 -20
  168. package/src/Graph/LineChart/BasicComponents/Axes/index.tsx +0 -88
  169. package/src/Graph/LineChart/BasicComponents/Axes/models.ts +0 -26
  170. package/src/Graph/LineChart/BasicComponents/Axes/useAxisY.ts +0 -100
  171. package/src/Graph/LineChart/BasicComponents/Grids/index.tsx +0 -20
  172. package/src/Graph/LineChart/BasicComponents/Lines/RegularLines/index.tsx +0 -99
  173. package/src/Graph/LineChart/BasicComponents/Lines/RegularLines/useRegularLines.ts +0 -15
  174. package/src/Graph/LineChart/BasicComponents/Lines/StackedLines/index.tsx +0 -81
  175. package/src/Graph/LineChart/BasicComponents/Lines/StackedLines/useStackedLines.ts +0 -39
  176. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/BasicThreshold.tsx +0 -53
  177. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/Circle.tsx +0 -43
  178. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/ThresholdWithPatternLines.tsx +0 -78
  179. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/ThresholdWithVariation.tsx +0 -63
  180. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/helpers/index.ts +0 -69
  181. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/index.tsx +0 -142
  182. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/models.ts +0 -105
  183. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/useCoordinateCircle.ts +0 -46
  184. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/useScaleThreshold.ts +0 -171
  185. package/src/Graph/LineChart/BasicComponents/Lines/index.tsx +0 -189
  186. package/src/Graph/LineChart/BasicComponents/Lines/models.ts +0 -45
  187. package/src/Graph/LineChart/BasicComponents/LoadingProgress.tsx +0 -46
  188. package/src/Graph/LineChart/BasicComponents/ThresholdLine.tsx +0 -64
  189. package/src/Graph/LineChart/BasicComponents/Thresholds.tsx +0 -77
  190. package/src/Graph/LineChart/BasicComponents/useFilterLines.ts +0 -60
  191. package/src/Graph/LineChart/Header/index.tsx +0 -65
  192. package/src/Graph/LineChart/Icons/Downtime.tsx +0 -9
  193. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/GuidingLines.tsx +0 -45
  194. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/RegularAnchorPoint.tsx +0 -66
  195. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/StackedAnchorPoint.tsx +0 -76
  196. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/TooltipAnchorPoint.tsx +0 -96
  197. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/index.tsx +0 -20
  198. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/models.ts +0 -62
  199. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/useTickGraph.ts +0 -94
  200. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/useTooltipAnchorPoint.ts +0 -107
  201. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/Area.tsx +0 -114
  202. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/Line.tsx +0 -103
  203. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/index.tsx +0 -81
  204. package/src/Graph/LineChart/InteractiveComponents/Annotations/Area/Downtime.tsx +0 -27
  205. package/src/Graph/LineChart/InteractiveComponents/Annotations/EventAnnotations.tsx +0 -61
  206. package/src/Graph/LineChart/InteractiveComponents/Annotations/Line/Acknowledgement.tsx +0 -27
  207. package/src/Graph/LineChart/InteractiveComponents/Annotations/Line/Comments.tsx +0 -25
  208. package/src/Graph/LineChart/InteractiveComponents/Annotations/annotationsAtoms.ts +0 -183
  209. package/src/Graph/LineChart/InteractiveComponents/Annotations/index.tsx +0 -49
  210. package/src/Graph/LineChart/InteractiveComponents/Annotations/models.ts +0 -25
  211. package/src/Graph/LineChart/InteractiveComponents/Annotations/useAnnotation.ts +0 -56
  212. package/src/Graph/LineChart/InteractiveComponents/Bar.tsx +0 -21
  213. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/TimeShiftIcon.tsx +0 -62
  214. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/TimeShiftZone.tsx +0 -74
  215. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/index.tsx +0 -85
  216. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/models.ts +0 -12
  217. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/useTimeShiftZones.ts +0 -72
  218. package/src/Graph/LineChart/InteractiveComponents/Tooltip/index.tsx +0 -59
  219. package/src/Graph/LineChart/InteractiveComponents/Tooltip/models.ts +0 -9
  220. package/src/Graph/LineChart/InteractiveComponents/Tooltip/useGraphTooltip.ts +0 -67
  221. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/index.tsx +0 -38
  222. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/models.ts +0 -9
  223. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/useZoomPreview.ts +0 -107
  224. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/zoomPreviewAtoms.ts +0 -3
  225. package/src/Graph/LineChart/InteractiveComponents/index.tsx +0 -168
  226. package/src/Graph/LineChart/InteractiveComponents/interactionWithGraphAtoms.ts +0 -52
  227. package/src/Graph/LineChart/Legend/InteractiveValue.tsx +0 -22
  228. package/src/Graph/LineChart/Legend/Legend.styles.ts +0 -117
  229. package/src/Graph/LineChart/Legend/LegendContent.tsx +0 -33
  230. package/src/Graph/LineChart/Legend/LegendHeader.tsx +0 -93
  231. package/src/Graph/LineChart/Legend/index.tsx +0 -200
  232. package/src/Graph/LineChart/Legend/models.ts +0 -16
  233. package/src/Graph/LineChart/Legend/useInteractiveValues.ts +0 -99
  234. package/src/Graph/LineChart/Legend/useLegend.ts +0 -104
  235. package/src/Graph/LineChart/LineChart.styles.ts +0 -45
  236. package/src/Graph/LineChart/LineChart.tsx +0 -320
  237. package/src/Graph/LineChart/LoadingSkeleton.tsx +0 -44
  238. package/src/Graph/LineChart/common/index.ts +0 -35
  239. package/src/Graph/LineChart/graphAtoms.ts +0 -3
  240. package/src/Graph/LineChart/helpers/doc.ts +0 -560
  241. package/src/Graph/LineChart/helpers/index.ts +0 -63
  242. package/src/Graph/LineChart/index.stories.tsx +0 -478
  243. package/src/Graph/LineChart/index.tsx +0 -118
  244. package/src/Graph/LineChart/mockedData/annotationData.json +0 -326
  245. package/src/Graph/LineChart/mockedData/exclusionPeriodFirstPeriod.json +0 -588
  246. package/src/Graph/LineChart/mockedData/exclusionPeriodSecondPeriod.json +0 -588
  247. package/src/Graph/LineChart/mockedData/exclusionPeriodThirdPeriod.json +0 -581
  248. package/src/Graph/LineChart/mockedData/lastDay.json +0 -1326
  249. package/src/Graph/LineChart/mockedData/lastDayAreaStack.json +0 -3106
  250. package/src/Graph/LineChart/mockedData/lastDayForward.json +0 -1338
  251. package/src/Graph/LineChart/mockedData/lastDayThreshold.json +0 -2352
  252. package/src/Graph/LineChart/mockedData/lastMonth.json +0 -1674
  253. package/src/Graph/LineChart/mockedData/lastWeek.json +0 -2202
  254. package/src/Graph/LineChart/mockedData/zoomPreview.json +0 -742
  255. package/src/Graph/LineChart/models.ts +0 -146
  256. package/src/Graph/LineChart/translatedLabels.ts +0 -9
  257. package/src/Graph/LineChart/useLineChartData.ts +0 -49
  258. package/src/Graph/LineChart/useLineChartIntersection.ts +0 -36
  259. package/src/Graph/SingleBar/ResponsiveSingleBar.tsx +0 -197
  260. package/src/Graph/SingleBar/SingleBar.stories.tsx +0 -204
  261. package/src/Graph/SingleBar/SingleBar.tsx +0 -25
  262. package/src/Graph/SingleBar/ThresholdLine.tsx +0 -103
  263. package/src/Graph/SingleBar/Thresholds.tsx +0 -50
  264. package/src/Graph/SingleBar/index.ts +0 -1
  265. package/src/Graph/SingleBar/models.ts +0 -10
  266. package/src/Graph/Text/Text.stories.tsx +0 -67
  267. package/src/Graph/Text/Text.styles.ts +0 -17
  268. package/src/Graph/Text/Text.tsx +0 -91
  269. package/src/Graph/Text/index.ts +0 -1
  270. package/src/Graph/common/margins.ts +0 -1
  271. package/src/Graph/common/models.ts +0 -19
  272. package/src/Graph/common/timeSeries/index.test.ts +0 -624
  273. package/src/Graph/common/timeSeries/index.ts +0 -626
  274. package/src/Graph/common/timeSeries/models.ts +0 -129
  275. package/src/Graph/common/utils.ts +0 -75
  276. package/src/Graph/index.ts +0 -5
  277. package/src/InputField/Number/Number.cypress.spec.tsx +0 -85
  278. package/src/InputField/Number/Number.stories.tsx +0 -66
  279. package/src/InputField/Number/Number.tsx +0 -74
  280. package/src/InputField/Select/Autocomplete/Connected/Multi/MultiConnectedAutocompleteField.cypress.spec.tsx +0 -127
  281. package/src/InputField/Select/Autocomplete/Connected/Multi/utils/index.ts +0 -22
  282. package/src/Listing/Cell/DataCell.styles.ts +0 -24
  283. package/src/Listing/EmptyResult/EmptyResult.tsx +0 -13
  284. package/src/Listing/Header/Cell/ListingHeaderCell.styles.ts +0 -71
  285. package/src/Listing/Header/Cell/SelectActionListingHeaderCell.styles.ts +0 -26
  286. package/src/Listing/Header/Cell/SelectActionListingHeaderCell.tsx +0 -70
  287. package/src/Listing/Header/ListingHeader.styles.ts +0 -16
  288. package/src/Listing/Header/_internals/DraggableIconButton.tsx +0 -35
  289. package/src/Listing/Header/index.ts +0 -1
  290. package/src/Listing/Listing.cypress.spec.tsx +0 -122
  291. package/src/Listing/Listing.styles.ts +0 -81
  292. package/src/Listing/ListingDocs.mdx +0 -61
  293. package/src/Listing/Row/EmptyRow.styles.ts +0 -14
  294. package/src/Listing/Row/EmptyRow.tsx +0 -30
  295. package/src/Listing/Row/SkeletonLoaderRows.tsx +0 -23
  296. package/src/ParentSize/ParentSize.tsx +0 -24
  297. package/src/ParentSize/index.ts +0 -1
  298. package/src/RichTextEditor/RichTextEditor.cypress.spec.tsx +0 -408
  299. package/src/RichTextEditor/plugins/ToolbarPlugin/AlignPicker.tsx +0 -116
  300. package/src/RichTextEditor/plugins/ToolbarPlugin/BlockButtons.tsx +0 -155
  301. package/src/RichTextEditor/plugins/ToolbarPlugin/LinkButton.tsx +0 -106
  302. package/src/RichTextEditor/plugins/ToolbarPlugin/ListButton.tsx +0 -155
  303. package/src/RichTextEditor/plugins/ToolbarPlugin/MacrosButton.tsx +0 -75
  304. package/src/RichTextEditor/plugins/ToolbarPlugin/ToolbarPlugin.styles.ts +0 -32
  305. package/src/TimePeriods/CustomTimePeriod/CompactCustomTimePeriod.styles.ts +0 -51
  306. package/src/TimePeriods/CustomTimePeriod/CompactCustomTimePeriod.tsx +0 -95
  307. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/ErrorText.tsx +0 -14
  308. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/PickersStartEndDate.tsx +0 -166
  309. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/index.tsx +0 -76
  310. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/models.ts +0 -61
  311. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/usePickersStartEndDate.ts +0 -82
  312. package/src/TimePeriods/CustomTimePeriod/SimpleCustomTimePeriod.tsx +0 -28
  313. package/src/TimePeriods/CustomTimePeriod/index.tsx +0 -66
  314. package/src/TimePeriods/DateTimePickerInput.tsx +0 -49
  315. package/src/TimePeriods/ResolutionTimePeriod.cypress.spec.tsx +0 -65
  316. package/src/TimePeriods/SelectedTimePeriod.tsx +0 -102
  317. package/src/TimePeriods/TimePeriods.cypress.spec.tsx +0 -510
  318. package/src/TimePeriods/TimePeriods.styles.ts +0 -22
  319. package/src/TimePeriods/helpers/index.ts +0 -26
  320. package/src/TimePeriods/index.stories.tsx +0 -113
  321. package/src/TimePeriods/index.tsx +0 -79
  322. package/src/TimePeriods/mockedData.ts +0 -12
  323. package/src/TimePeriods/models.ts +0 -97
  324. package/src/TimePeriods/timePeriodsAtoms.ts +0 -102
  325. package/src/TimePeriods/translatedLabels.ts +0 -9
  326. package/src/TimePeriods/useSortTimePeriods.ts +0 -31
  327. package/src/TimePeriods/useTimePeriod.ts +0 -49
  328. package/src/Typography/EllipsisTypography.tsx +0 -18
  329. package/src/Typography/FluidTypography/index.stories.tsx +0 -63
  330. package/src/Typography/FluidTypography/index.tsx +0 -51
  331. package/src/Typography/FluidTypography/useFluidResizeObserver.ts +0 -56
  332. package/src/Typography/Subtitle.tsx +0 -55
  333. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-normal-1-snap.png +0 -0
  334. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-with-item-header-1-snap.png +0 -0
  335. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-with-many-panels-1-snap.png +0 -0
  336. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-basic-1-snap.png +0 -0
  337. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-20-px-height-1-snap.png +0 -0
  338. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-200-px-width-1-snap.png +0 -0
  339. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-heading-5-variant-1-snap.png +0 -0
  340. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-long-text-1-snap.png +0 -0
  341. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-as-empty-state-1-snap.png +0 -0
  342. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-with-editable-and-sortable-columns-1-snap.png +0 -0
  343. package/src/api/useGraphQuery/index.ts +0 -187
  344. package/src/api/useGraphQuery/models.ts +0 -20
  345. package/src/base/tokens/README.md +0 -3
  346. package/src/base/tokens/source/$metadata.json +0 -5
  347. package/src/base/tokens/source/base.json +0 -142
  348. package/src/base/tokens/themes/base.tokens.d.ts +0 -38
  349. package/src/base/tokens/themes/base.tokens.json +0 -695
  350. package/src/base/tokens/themes/base.tokens.ts +0 -38
  351. package/src/base/tokens/themes/ui-dark.tokens.d.ts +0 -38
  352. package/src/base/tokens/themes/ui-dark.tokens.json +0 -695
  353. package/src/base/tokens/themes/ui-dark.tokens.ts +0 -38
  354. package/src/base/tokens/themes/ui-light.tokens.d.ts +0 -38
  355. package/src/base/tokens/themes/ui-light.tokens.json +0 -695
  356. package/src/base/tokens/themes/ui-light.tokens.ts +0 -38
  357. package/src/components/Avatar/Avatar.stories.tsx +0 -23
  358. package/src/components/Avatar/Avatar.styles.ts +0 -11
  359. package/src/components/Avatar/Avatar.tsx +0 -32
  360. package/src/components/Avatar/index.ts +0 -1
  361. package/src/components/Button/Button.stories.tsx +0 -34
  362. package/src/components/Button/Button.styles.ts +0 -44
  363. package/src/components/Button/Button.tsx +0 -78
  364. package/src/components/Button/Icon/IconButton.stories.tsx +0 -18
  365. package/src/components/Button/Icon/IconButton.styles.ts +0 -14
  366. package/src/components/Button/Icon/IconButton.tsx +0 -58
  367. package/src/components/Button/Icon/index.tsx +0 -1
  368. package/src/components/Button/index.ts +0 -2
  369. package/src/components/CollapsibleItem/CollapsibleItem.cypress.spec.tsx +0 -76
  370. package/src/components/CollapsibleItem/CollapsibleItem.stories.tsx +0 -51
  371. package/src/components/CollapsibleItem/CollapsibleItem.tsx +0 -76
  372. package/src/components/CollapsibleItem/index.ts +0 -1
  373. package/src/components/CollapsibleItem/useCollapsibleItemStyles.ts +0 -38
  374. package/src/components/DataTable/DataTable.stories.tsx +0 -51
  375. package/src/components/DataTable/DataTable.styles.ts +0 -27
  376. package/src/components/DataTable/DataTable.tsx +0 -35
  377. package/src/components/DataTable/EmptyState/DataTableEmptyState.stories.tsx +0 -21
  378. package/src/components/DataTable/EmptyState/DataTableEmptyState.styles.ts +0 -26
  379. package/src/components/DataTable/EmptyState/DataTableEmptyState.tsx +0 -53
  380. package/src/components/DataTable/Item/DataTableItem.stories.tsx +0 -25
  381. package/src/components/DataTable/Item/DataTableItem.styles.ts +0 -33
  382. package/src/components/DataTable/Item/DataTableItem.tsx +0 -123
  383. package/src/components/DataTable/Item/DataTableItemSkeleton.tsx +0 -13
  384. package/src/components/DataTable/index.ts +0 -10
  385. package/src/components/Form/AccessRights/AccessRights.cypress.spec.tsx +0 -373
  386. package/src/components/Form/AccessRights/AccessRights.stories.tsx +0 -119
  387. package/src/components/Form/AccessRights/AccessRights.styles.ts +0 -10
  388. package/src/components/Form/AccessRights/AccessRights.tsx +0 -60
  389. package/src/components/Form/AccessRights/Actions/Actions.styles.ts +0 -14
  390. package/src/components/Form/AccessRights/Actions/Actions.tsx +0 -81
  391. package/src/components/Form/AccessRights/Actions/useActions.ts +0 -79
  392. package/src/components/Form/AccessRights/List/Item.tsx +0 -90
  393. package/src/components/Form/AccessRights/List/List.styles.tsx +0 -45
  394. package/src/components/Form/AccessRights/List/List.tsx +0 -52
  395. package/src/components/Form/AccessRights/List/ListItemSkeleton.tsx +0 -18
  396. package/src/components/Form/AccessRights/List/ListSkeleton.tsx +0 -22
  397. package/src/components/Form/AccessRights/List/RemoveAccessRight.tsx +0 -38
  398. package/src/components/Form/AccessRights/List/StateChip.tsx +0 -28
  399. package/src/components/Form/AccessRights/List/useItem.ts +0 -64
  400. package/src/components/Form/AccessRights/Provider.tsx +0 -15
  401. package/src/components/Form/AccessRights/ShareInput/ContactSwitch.tsx +0 -50
  402. package/src/components/Form/AccessRights/ShareInput/ShareInput.styles.ts +0 -17
  403. package/src/components/Form/AccessRights/ShareInput/ShareInput.tsx +0 -77
  404. package/src/components/Form/AccessRights/ShareInput/useShareInput.tsx +0 -113
  405. package/src/components/Form/AccessRights/Stats/Stats.tsx +0 -36
  406. package/src/components/Form/AccessRights/atoms.ts +0 -97
  407. package/src/components/Form/AccessRights/common/RoleSelectField.styles.tsx +0 -7
  408. package/src/components/Form/AccessRights/common/RoleSelectField.tsx +0 -45
  409. package/src/components/Form/AccessRights/models.ts +0 -55
  410. package/src/components/Form/AccessRights/storiesData.ts +0 -222
  411. package/src/components/Form/AccessRights/useAccessRightsInitValues.ts +0 -51
  412. package/src/components/Form/Dashboard/Dashboard.resource.ts +0 -9
  413. package/src/components/Form/Dashboard/DashboardForm.stories.ts +0 -39
  414. package/src/components/Form/Dashboard/DashboardForm.styles.ts +0 -21
  415. package/src/components/Form/Dashboard/DashboardForm.tsx +0 -134
  416. package/src/components/Form/Dashboard/GlobalRefreshFieldOption.tsx +0 -59
  417. package/src/components/Form/Dashboard/index.ts +0 -2
  418. package/src/components/Form/Dashboard/translatedLabels.ts +0 -9
  419. package/src/components/Form/Form.models.ts +0 -1
  420. package/src/components/Form/Form.resource.ts +0 -1
  421. package/src/components/Form/Form.styles.ts +0 -17
  422. package/src/components/Form/FormActions.tsx +0 -57
  423. package/src/components/Form/index.ts +0 -4
  424. package/src/components/Header/PageHeader/PageHeader.stories.tsx +0 -97
  425. package/src/components/Header/PageHeader/PageHeader.styles.ts +0 -126
  426. package/src/components/Header/PageHeader/PageHeader.tsx +0 -15
  427. package/src/components/Header/PageHeader/PageHeaderActions.tsx +0 -17
  428. package/src/components/Header/PageHeader/PageHeaderMain.tsx +0 -15
  429. package/src/components/Header/PageHeader/PageHeaderMenu.tsx +0 -15
  430. package/src/components/Header/PageHeader/PageHeaderMessage.tsx +0 -32
  431. package/src/components/Header/PageHeader/PageHeaderTitle.tsx +0 -47
  432. package/src/components/Header/PageHeader/index.ts +0 -14
  433. package/src/components/Header/index.ts +0 -1
  434. package/src/components/Icon/Icon.styles.ts +0 -0
  435. package/src/components/Icon/Icon.tsx +0 -2
  436. package/src/components/Icon/index.ts +0 -0
  437. package/src/components/Inputs/Switch/Switch.stories.tsx +0 -22
  438. package/src/components/Inputs/Switch/Switch.styles.ts +0 -13
  439. package/src/components/Inputs/Switch/Switch.tsx +0 -18
  440. package/src/components/Inputs/index.ts +0 -1
  441. package/src/components/ItemComposition/Item.tsx +0 -41
  442. package/src/components/ItemComposition/ItemComposition.cypress.spec.tsx +0 -113
  443. package/src/components/ItemComposition/ItemComposition.stories.tsx +0 -92
  444. package/src/components/ItemComposition/ItemComposition.styles.ts +0 -62
  445. package/src/components/ItemComposition/ItemComposition.tsx +0 -71
  446. package/src/components/ItemComposition/index.ts +0 -6
  447. package/src/components/Layout/AreaIndicator.styles.ts +0 -33
  448. package/src/components/Layout/AreaIndicator.tsx +0 -35
  449. package/src/components/Layout/PageLayout/PageLayout.stories.tsx +0 -81
  450. package/src/components/Layout/PageLayout/PageLayout.styles.ts +0 -41
  451. package/src/components/Layout/PageLayout/PageLayout.tsx +0 -21
  452. package/src/components/Layout/PageLayout/PageLayoutActions.tsx +0 -24
  453. package/src/components/Layout/PageLayout/PageLayoutBody.tsx +0 -24
  454. package/src/components/Layout/PageLayout/PageLayoutHeader.tsx +0 -15
  455. package/src/components/Layout/PageLayout/index.ts +0 -10
  456. package/src/components/Layout/index.ts +0 -1
  457. package/src/components/List/Item/Avatar.tsx +0 -21
  458. package/src/components/List/Item/AvatarSkeleton.tsx +0 -17
  459. package/src/components/List/Item/ListItem.stories.tsx +0 -41
  460. package/src/components/List/Item/ListItem.styles.ts +0 -63
  461. package/src/components/List/Item/ListItem.tsx +0 -34
  462. package/src/components/List/Item/Text.tsx +0 -27
  463. package/src/components/List/Item/TextSkeleton.tsx +0 -22
  464. package/src/components/List/Item/index.ts +0 -14
  465. package/src/components/List/List.stories.tsx +0 -70
  466. package/src/components/List/List.styles.ts +0 -8
  467. package/src/components/List/List.tsx +0 -19
  468. package/src/components/List/index.ts +0 -6
  469. package/src/components/Menu/Button/MenuButton.stories.tsx +0 -16
  470. package/src/components/Menu/Button/MenuButton.styles.ts +0 -27
  471. package/src/components/Menu/Button/MenuButton.tsx +0 -67
  472. package/src/components/Menu/Button/index.ts +0 -1
  473. package/src/components/Menu/Menu.stories.tsx +0 -71
  474. package/src/components/Menu/Menu.styles.ts +0 -68
  475. package/src/components/Menu/Menu.tsx +0 -25
  476. package/src/components/Menu/MenuDivider.tsx +0 -13
  477. package/src/components/Menu/MenuItem.tsx +0 -38
  478. package/src/components/Menu/MenuItems.tsx +0 -36
  479. package/src/components/Menu/index.ts +0 -12
  480. package/src/components/Menu/useMenu.tsx +0 -79
  481. package/src/components/Modal/Modal.stories.tsx +0 -142
  482. package/src/components/Modal/Modal.styles.ts +0 -91
  483. package/src/components/Modal/Modal.tsx +0 -79
  484. package/src/components/Modal/ModalActions.tsx +0 -64
  485. package/src/components/Modal/ModalBody.tsx +0 -15
  486. package/src/components/Modal/ModalHeader.tsx +0 -21
  487. package/src/components/Modal/index.ts +0 -12
  488. package/src/components/README.md +0 -3
  489. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.stories.tsx +0 -62
  490. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.styles.tsx +0 -22
  491. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.tsx +0 -68
  492. package/src/components/Tooltip/ConfirmationTooltip/TooltipContent.tsx +0 -31
  493. package/src/components/Tooltip/ConfirmationTooltip/index.ts +0 -1
  494. package/src/components/Tooltip/ConfirmationTooltip/models.ts +0 -18
  495. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.stories.tsx +0 -70
  496. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.styles.ts +0 -5
  497. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.tsx +0 -115
  498. package/src/components/Tooltip/TextOverflowTooltip/index.tsx +0 -1
  499. package/src/components/Tooltip/Tooltip.stories.tsx +0 -41
  500. package/src/components/Tooltip/Tooltip.tsx +0 -57
  501. package/src/components/Tooltip/index.ts +0 -2
  502. package/src/components/index.ts +0 -13
  503. package/src/screens/dashboard/DashboardsDetail.stories.tsx +0 -108
  504. package/src/screens/dashboard/DashboardsOverview.stories.tsx +0 -281
  505. package/src/styles/tokens/themes/_ui-dark.tokens.json +0 -695
  506. package/src/styles/tokens/themes/_ui-light.tokens.json +0 -695
  507. package/src/utils/centreonBaseURL.ts +0 -4
  508. package/src/utils/docsURL.ts +0 -31
  509. package/src/utils/index.ts +0 -24
  510. package/src/utils/panelSize.ts +0 -15
  511. package/src/utils/sanitizedHTML.ts +0 -18
  512. package/src/utils/translatedLabel.ts +0 -2
  513. package/src/utils/useDateTimePickerAdapter.ts +0 -309
  514. package/src/utils/useFullscreen/Fullscreen.cypress.spec.tsx +0 -132
  515. package/src/utils/useFullscreen/atoms.ts +0 -3
  516. package/src/utils/useFullscreen/index.ts +0 -2
  517. package/src/utils/useFullscreen/translatedLabels.ts +0 -1
  518. package/src/utils/useFullscreen/useFullscreen.ts +0 -73
  519. package/src/utils/useFullscreen/useFullscreenListener.ts +0 -59
  520. package/src/utils/useInfiniteScrollListing.ts +0 -121
  521. package/src/utils/useLicenseExpirationWarning.cypress.spec.tsx +0 -137
  522. package/src/utils/useLicenseExpirationWarning.ts +0 -52
  523. package/src/utils/useRefreshInterval.ts +0 -39
  524. package/src/utils/useResizeObserver.ts +0 -6
  525. package/src/utils/useThresholds.ts +0 -0
  526. /package/{public/brand → assets}/centreon-logo-one-line-dark.svg +0 -0
  527. /package/{public/brand → assets}/centreon-logo-one-line-light.svg +0 -0
  528. /package/{src/@assets/images → assets}/not-authorized-template-background-dark.svg +0 -0
  529. /package/{src/@assets/images → assets}/not-authorized-template-background-light.svg +0 -0
  530. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.ttf +0 -0
  531. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.woff +0 -0
  532. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.woff2 +0 -0
  533. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.ttf +0 -0
  534. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.woff +0 -0
  535. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.woff2 +0 -0
  536. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.ttf +0 -0
  537. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.woff +0 -0
  538. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.woff2 +0 -0
  539. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.ttf +0 -0
  540. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.woff +0 -0
  541. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.woff2 +0 -0
  542. /package/src/Listing/Header/{_internals/Label.tsx → Label.tsx} +0 -0
  543. /package/src/Typography/{story.utils.tsx → index.tsx} +0 -0
@@ -201,16 +201,29 @@ export const threeStepsWithCustomConfirmDialogLabels = (): JSX.Element => (
201
201
  />
202
202
  );
203
203
 
204
+ const FirstStep = ({
205
+ disableNextOnSendingRequests
206
+ }: StepComponentProps): JSX.Element => {
207
+ useEffect(() => {
208
+ disableNextOnSendingRequests([true, false, true]);
209
+ setTimeout(() => {
210
+ disableNextOnSendingRequests([false, false, false]);
211
+ }, 1500);
212
+ }, []);
213
+
214
+ return (
215
+ <Typography align="center" variant="h5">
216
+ Sending request...
217
+ </Typography>
218
+ );
219
+ };
220
+
204
221
  export const twoStepsWithSendingRequest = (): JSX.Element => (
205
222
  <Wizard
206
223
  open
207
224
  steps={[
208
225
  {
209
- Component: (): JSX.Element => (
210
- <Typography align="center" variant="h5">
211
- Sending request...
212
- </Typography>
213
- ),
226
+ Component: FirstStep,
214
227
  skipFormChangeCheck: true,
215
228
  stepName: 'First step'
216
229
  },
@@ -8,7 +8,7 @@ import {
8
8
  waitFor,
9
9
  screen,
10
10
  RenderResult
11
- } from '../../test/testRenderer';
11
+ } from '../testRenderer';
12
12
 
13
13
  import { StepComponentProps } from './models';
14
14
 
@@ -29,7 +29,6 @@ const actionsBarLabelsDefaultValues = {
29
29
  };
30
30
 
31
31
  const Wizard = ({
32
- classNameDialogContent,
33
32
  steps,
34
33
  onSubmit = undefined,
35
34
  initialValues = {},
@@ -38,11 +37,9 @@ const Wizard = ({
38
37
  open,
39
38
  onClose = undefined,
40
39
  confirmDialogLabels = undefined,
41
- actionsBarLabels = actionsBarLabelsDefaultValues,
42
- displayConfirmDialog,
43
- ...rest
40
+ actionsBarLabels = actionsBarLabelsDefaultValues
44
41
  }: WizardProps): JSX.Element => {
45
- const { classes, cx } = useStyles();
42
+ const { classes } = useStyles();
46
43
  const [currentStep, setCurrentStep] = useState(0);
47
44
  const [sendingRequest, setSendingRequest] = useState(false);
48
45
  const [openConfirm, setOpenConfirm] = useState(false);
@@ -81,18 +78,9 @@ const Wizard = ({
81
78
  bag.setSubmitting(false);
82
79
  };
83
80
 
84
- const controlDisplayConfirmationDialog = (): void => {
85
- if (!equals(displayConfirmDialog, false)) {
86
- setOpenConfirm(displayConfirmDialog ?? true);
87
-
88
- return;
89
- }
90
- onClose?.();
91
- };
92
-
93
81
  const handleClose = (_, reason): void => {
94
82
  if (equals(reason, 'backdropClick')) {
95
- controlDisplayConfirmationDialog();
83
+ setOpenConfirm(true);
96
84
 
97
85
  return;
98
86
  }
@@ -101,6 +89,7 @@ const Wizard = ({
101
89
 
102
90
  const handleCloseConfirm = (confirm): void => {
103
91
  setOpenConfirm(false);
92
+
104
93
  if (!confirm) {
105
94
  return;
106
95
  }
@@ -117,11 +106,9 @@ const Wizard = ({
117
106
  classes={{
118
107
  paper: fullHeight ? classes.fullHeight : undefined
119
108
  }}
120
- data-testid="Dialog"
121
109
  maxWidth={width}
122
110
  open={open}
123
111
  onClose={handleClose}
124
- {...rest}
125
112
  >
126
113
  <Stepper currentStep={currentStep} steps={steps} />
127
114
  <Formik
@@ -132,9 +119,7 @@ const Wizard = ({
132
119
  validationSchema={validationSchema}
133
120
  onSubmit={submit}
134
121
  >
135
- <DialogContent
136
- className={cx(classes.dialogContent, classNameDialogContent)}
137
- >
122
+ <DialogContent className={classes.dialogContent}>
138
123
  <WizardContent
139
124
  actionsBarLabels={actionsBarLabels}
140
125
  currentStep={currentStep}
@@ -1,7 +1,5 @@
1
1
  import { FormikValues, FormikErrors, FormikHelpers } from 'formik';
2
2
 
3
- import { DialogProps } from '@mui/material';
4
-
5
3
  export interface StepComponentProps {
6
4
  disableNextOnSendingRequests: (sendingRequests: Array<boolean>) => void;
7
5
  }
@@ -40,14 +38,9 @@ interface ConfirmDialogLabels {
40
38
  labelTitle: string;
41
39
  }
42
40
 
43
- type ValueOf<T> = T[keyof T];
44
-
45
41
  export interface WizardProps {
46
- [key: string]: ValueOf<DialogProps>;
47
42
  actionsBarLabels?: ActionsBarLabels;
48
- classNameDialogContent?: string;
49
43
  confirmDialogLabels?: ConfirmDialogLabels;
50
- displayConfirmDialog?: boolean;
51
44
  fullHeight?: boolean;
52
45
  initialValues?: FormikValues;
53
46
  onClose?: () => void;
@@ -5,8 +5,7 @@ import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
5
5
  const client = new QueryClient({
6
6
  defaultOptions: {
7
7
  queries: {
8
- cacheTime: 0,
9
- retry: false
8
+ cacheTime: 0
10
9
  }
11
10
  }
12
11
  });
@@ -5,10 +5,9 @@ import {
5
5
  prop,
6
6
  head,
7
7
  toPairs,
8
- flatten,
9
- pluck,
10
- uniq,
11
- equals
8
+ pipe,
9
+ map,
10
+ flatten
12
11
  } from 'ramda';
13
12
 
14
13
  import {
@@ -22,7 +21,7 @@ import {
22
21
  GetConditionsSearchQueryParameterValueState
23
22
  } from './models';
24
23
 
25
- export const getFoundFields = ({
24
+ const getFoundFields = ({
26
25
  value,
27
26
  fields
28
27
  }: RegexSearchParameter): Array<SearchMatch> => {
@@ -84,42 +83,32 @@ const getConditionsSearchQueryParameterValue = (
84
83
  return undefined;
85
84
  }
86
85
 
87
- const fields = uniq(pluck('field', conditions));
88
-
89
- const toIndividualOperatorValues = (
90
- listField: string
91
- ): { $or: Array<Record<string, unknown>> } => {
92
- const filteredItems = conditions.filter(({ field }) =>
93
- equals(listField, field)
94
- );
95
-
96
- return {
97
- $or: flatten(
98
- filteredItems.map(({ value, values }) => {
99
- if (!isNil(value)) {
100
- return [
101
- {
102
- [listField]: value
103
- }
104
- ];
105
- }
106
-
107
- return toPairs(values || {}).map(([operator, operatorValue]) => ({
108
- [listField]: {
109
- [operator]: operatorValue
110
- }
111
- }));
112
- })
113
- )
114
- };
86
+ const toIndividualOperatorValues = ({
87
+ field,
88
+ values,
89
+ value
90
+ }: ConditionsSearchParameter): Array<Record<string, unknown>> => {
91
+ if (!isNil(value)) {
92
+ return [
93
+ {
94
+ [field]: value
95
+ }
96
+ ];
97
+ }
98
+
99
+ return toPairs(values || {}).map(([operator, operatorValue]) => ({
100
+ [field]: {
101
+ [operator]: operatorValue
102
+ }
103
+ }));
115
104
  };
116
105
 
117
106
  return {
118
- $and: fields.map(toIndividualOperatorValues)
107
+ $and: pipe(map(toIndividualOperatorValues), flatten)(conditions)
119
108
  };
120
109
  };
121
110
 
122
- export const getSearchQueryParameterValue = (
111
+ const getSearchQueryParameterValue = (
123
112
  search: SearchParameter | undefined
124
113
  ): SearchQueryParameterValue => {
125
114
  if (search === undefined) {
@@ -145,3 +134,5 @@ export const getSearchQueryParameterValue = (
145
134
 
146
135
  return { $and: result };
147
136
  };
137
+
138
+ export default getSearchQueryParameterValue;
@@ -115,7 +115,7 @@ describe(buildListingEndpoint, () => {
115
115
  });
116
116
 
117
117
  expect(decodeURIComponent(endpointWithValues)).toContain(
118
- '&search={"$and":[{"$or":[{"date":{"$gt":"2020-12-01T07:00:00"}},{"date":{"$lt":"2020-12-01T11:00:00"}}]}]}'
118
+ '&search={"$and":[{"date":{"$gt":"2020-12-01T07:00:00"}},{"date":{"$lt":"2020-12-01T11:00:00"}}]}'
119
119
  );
120
120
 
121
121
  const endpointWithValue = buildListingEndpoint({
@@ -134,7 +134,7 @@ describe(buildListingEndpoint, () => {
134
134
  });
135
135
 
136
136
  expect(decodeURIComponent(endpointWithValue)).toContain(
137
- '&search={"$and":[{"$or":[{"is_activated":true}]}]}'
137
+ '&search={"$and":[{"is_activated":true}]}'
138
138
  );
139
139
  });
140
140
  });
@@ -1,7 +1,7 @@
1
1
  import toRawQueryParameters from '../../queryParameters';
2
2
  import { QueryParameter } from '../../queryParameters/models';
3
3
 
4
- import { getSearchQueryParameterValue } from './getSearchQueryParameterValue';
4
+ import getSearchQueryParameterValue from './getSearchQueryParameterValue';
5
5
  import { Parameters, BuildListingEndpointParameters } from './models';
6
6
 
7
7
  const getQueryParameters = ({
@@ -18,6 +18,7 @@ export interface Parameters {
18
18
  search?: SearchParameter;
19
19
  sort?: SortQueryParameterValue;
20
20
  }
21
+
21
22
  export interface SearchParameter {
22
23
  conditions?: Array<ConditionsSearchParameter>;
23
24
  lists?: Array<ListsSearchParameter>;
@@ -52,8 +53,7 @@ export type Operator =
52
53
  | '$lk'
53
54
  | '$nk'
54
55
  | '$in'
55
- | '$ni'
56
- | '$rg';
56
+ | '$ni';
57
57
 
58
58
  export type ConditionValue = {
59
59
  [value in Operator]?: string | Array<string>;
@@ -1,4 +1,4 @@
1
- import { equals, isNil, startsWith } from 'ramda';
1
+ import { equals } from 'ramda';
2
2
  import { JsonDecoder } from 'ts.data.json';
3
3
 
4
4
  import { Method } from './useMutationQuery';
@@ -10,7 +10,6 @@ interface ApiErrorResponse {
10
10
 
11
11
  export interface ResponseError {
12
12
  additionalInformation?;
13
- data?;
14
13
  isError: boolean;
15
14
  message: string;
16
15
  statusCode: number;
@@ -22,7 +21,6 @@ export interface CatchErrorProps {
22
21
  }
23
22
 
24
23
  interface CustomFetchProps<T> {
25
- baseEndpoint?: string;
26
24
  catchError?: (props: CatchErrorProps) => void;
27
25
  decoder?: JsonDecoder.Decoder<T>;
28
26
  defaultFailureMessage?: string;
@@ -43,18 +41,10 @@ export const customFetch = <T>({
43
41
  defaultFailureMessage = 'Something went wrong',
44
42
  isMutation = false,
45
43
  payload,
46
- method = 'GET',
47
- baseEndpoint = './api/latest'
44
+ method = 'GET'
48
45
  }: CustomFetchProps<T>): Promise<T | ResponseError> => {
49
46
  const defaultOptions = { headers, method, signal };
50
47
 
51
- const formattedEndpoint =
52
- !isNil(baseEndpoint) &&
53
- !startsWith(baseEndpoint, endpoint) &&
54
- !startsWith('./api/internal.php', endpoint)
55
- ? `${baseEndpoint}${endpoint}`
56
- : endpoint;
57
-
58
48
  const options = isMutation
59
49
  ? {
60
50
  ...defaultOptions,
@@ -62,7 +52,7 @@ export const customFetch = <T>({
62
52
  }
63
53
  : defaultOptions;
64
54
 
65
- return fetch(formattedEndpoint, options)
55
+ return fetch(endpoint, options)
66
56
  .then((response) => {
67
57
  if (equals(response.status, 204)) {
68
58
  return {
@@ -92,15 +82,6 @@ export const customFetch = <T>({
92
82
  };
93
83
  }
94
84
 
95
- if (equals(response.status, 207)) {
96
- return {
97
- data: data.results,
98
- isError: false,
99
- message: '',
100
- statusCode: response.status
101
- };
102
- }
103
-
104
85
  if (decoder) {
105
86
  return decoder.decodeToPromise(data).catch((error: string) => {
106
87
  catchError({
package/src/api/index.ts CHANGED
@@ -30,7 +30,7 @@ const patchData =
30
30
  <TData, TResult>(cancelToken: CancelToken) =>
31
31
  ({ endpoint, data }: RequestWithData<TData>): Promise<TResult> =>
32
32
  axios
33
- .patch(endpoint, data, {
33
+ .patch(endpoint, JSON.stringify(data), {
34
34
  cancelToken,
35
35
  headers: contentTypeHeaders
36
36
  })
@@ -40,7 +40,7 @@ const postData =
40
40
  <TData, TResult>(cancelToken: CancelToken) =>
41
41
  ({ endpoint, data }: RequestWithData<TData>): Promise<TResult> =>
42
42
  axios
43
- .post(endpoint, data, {
43
+ .post(endpoint, JSON.stringify(data), {
44
44
  cancelToken,
45
45
  headers: contentTypeHeaders
46
46
  })
@@ -50,7 +50,7 @@ const putData =
50
50
  <TData, TResult>(cancelToken: CancelToken) =>
51
51
  ({ endpoint, data }: RequestWithData<TData>): Promise<TResult> =>
52
52
  axios
53
- .put(endpoint, data, {
53
+ .put(endpoint, JSON.stringify(data), {
54
54
  cancelToken,
55
55
  headers: contentTypeHeaders
56
56
  })
@@ -1,4 +1,4 @@
1
- import { useEffect, useMemo, useRef } from 'react';
1
+ import { useEffect } from 'react';
2
2
 
3
3
  import 'ulog';
4
4
  import {
@@ -10,18 +10,15 @@ import {
10
10
  } from '@tanstack/react-query';
11
11
  import { JsonDecoder } from 'ts.data.json';
12
12
  import anylogger from 'anylogger';
13
- import { has, includes, isNil, not, omit } from 'ramda';
13
+ import { has, includes, not, omit } from 'ramda';
14
14
 
15
15
  import { CatchErrorProps, customFetch, ResponseError } from '../customFetch';
16
16
  import useSnackbar from '../../Snackbar/useSnackbar';
17
- import { useDeepCompare } from '../../utils';
18
17
 
19
18
  export interface UseFetchQueryProps<T> {
20
- baseEndpoint?: string;
21
19
  catchError?: (props: CatchErrorProps) => void;
22
20
  decoder?: JsonDecoder.Decoder<T>;
23
21
  defaultFailureMessage?: string;
24
- doNotCancelCallsOnUnmount?: boolean;
25
22
  fetchHeaders?: HeadersInit;
26
23
  getEndpoint: (params?: PrefetchEndpointParams) => string;
27
24
  getQueryKey: () => QueryKey;
@@ -33,13 +30,14 @@ export interface UseFetchQueryProps<T> {
33
30
  >;
34
31
  }
35
32
 
36
- export type UseFetchQueryState<T> = {
33
+ export interface UseFetchQueryState<T>
34
+ extends Omit<QueryObserverBaseResult, 'data'> {
37
35
  data?: T;
38
36
  fetchQuery: () => Promise<T | ResponseError>;
39
37
  prefetchNextPage: ({ page, getPrefetchQueryKey }) => void;
40
38
  prefetchPreviousPage: ({ page, getPrefetchQueryKey }) => void;
41
39
  prefetchQuery: ({ endpointParams, queryKey }) => void;
42
- } & Omit<QueryObserverBaseResult, 'data'>;
40
+ }
43
41
 
44
42
  export interface PrefetchEndpointParams {
45
43
  page: number;
@@ -56,19 +54,14 @@ const useFetchQuery = <T extends object>({
56
54
  fetchHeaders,
57
55
  isPaginated,
58
56
  queryOptions,
59
- httpCodesBypassErrorSnackbar = [],
60
- baseEndpoint,
61
- doNotCancelCallsOnUnmount = false
57
+ httpCodesBypassErrorSnackbar = []
62
58
  }: UseFetchQueryProps<T>): UseFetchQueryState<T> => {
63
- const dataRef = useRef<T | undefined>(undefined);
64
-
65
59
  const { showErrorMessage } = useSnackbar();
66
60
 
67
61
  const queryData = useQuery<T | ResponseError, Error>(
68
62
  getQueryKey(),
69
63
  ({ signal }): Promise<T | ResponseError> =>
70
64
  customFetch<T>({
71
- baseEndpoint,
72
65
  catchError,
73
66
  decoder,
74
67
  defaultFailureMessage,
@@ -98,12 +91,19 @@ const useFetchQuery = <T extends object>({
98
91
  }
99
92
  };
100
93
 
94
+ useEffect(() => {
95
+ return (): void => {
96
+ queryClient.cancelQueries(getQueryKey());
97
+ };
98
+ }, []);
99
+
100
+ manageError();
101
+
101
102
  const prefetchQuery = ({ endpointParams, queryKey }): void => {
102
103
  queryClient.prefetchQuery(
103
104
  queryKey,
104
105
  ({ signal }): Promise<T | ResponseError> =>
105
106
  customFetch<T>({
106
- baseEndpoint,
107
107
  catchError,
108
108
  decoder,
109
109
  defaultFailureMessage,
@@ -145,7 +145,6 @@ const useFetchQuery = <T extends object>({
145
145
  getQueryKey(),
146
146
  ({ signal }): Promise<T | ResponseError> =>
147
147
  customFetch<T>({
148
- baseEndpoint,
149
148
  catchError,
150
149
  decoder,
151
150
  defaultFailureMessage,
@@ -156,35 +155,15 @@ const useFetchQuery = <T extends object>({
156
155
  );
157
156
  };
158
157
 
159
- const data = useMemo(
160
- () =>
161
- not(has('isError', queryData.data)) ? (queryData.data as T) : undefined,
162
- [queryData.data]
163
- );
164
-
165
- if (!isNil(data)) {
166
- dataRef.current = data;
167
- }
158
+ const data = not(has('isError', queryData.data))
159
+ ? (queryData.data as T)
160
+ : undefined;
168
161
 
169
162
  const errorData = queryData.data as ResponseError | undefined;
170
163
 
171
- useEffect(() => {
172
- return (): void => {
173
- if (doNotCancelCallsOnUnmount) {
174
- return;
175
- }
176
-
177
- queryClient.cancelQueries(getQueryKey());
178
- };
179
- }, []);
180
-
181
- useEffect(() => {
182
- manageError();
183
- }, useDeepCompare([queryData.data]));
184
-
185
164
  return {
186
- ...omit(['data', 'error'], queryData),
187
- data: dataRef.current,
165
+ ...omit(['data'], queryData),
166
+ data,
188
167
  error: errorData?.isError ? omit(['isError'], errorData) : null,
189
168
  fetchQuery,
190
169
  prefetchNextPage,
@@ -1,18 +1,11 @@
1
1
  import 'ulog';
2
- import { useEffect } from 'react';
3
-
4
- import {
5
- useMutation,
6
- UseMutationOptions,
7
- UseMutationResult
8
- } from '@tanstack/react-query';
2
+ import { useMutation } from '@tanstack/react-query';
9
3
  import { JsonDecoder } from 'ts.data.json';
10
4
  import anylogger from 'anylogger';
11
5
  import { includes } from 'ramda';
12
6
 
13
7
  import { CatchErrorProps, customFetch, ResponseError } from '../customFetch';
14
8
  import useSnackbar from '../../Snackbar/useSnackbar';
15
- import { useDeepCompare } from '../../utils';
16
9
 
17
10
  export enum Method {
18
11
  DELETE = 'DELETE',
@@ -22,53 +15,43 @@ export enum Method {
22
15
  PUT = 'PUT'
23
16
  }
24
17
 
25
- export type UseMutationQueryProps<T, TMeta> = {
26
- baseEndpoint?: string;
18
+ export interface UseMutationQueryProps<T> {
27
19
  catchError?: (props: CatchErrorProps) => void;
28
20
  decoder?: JsonDecoder.Decoder<T>;
29
21
  defaultFailureMessage?: string;
30
22
  fetchHeaders?: HeadersInit;
31
- getEndpoint: (_meta: TMeta) => string;
23
+ getEndpoint: () => string;
32
24
  httpCodesBypassErrorSnackbar?: Array<number>;
33
25
  method: Method;
34
- } & Omit<UseMutationOptions<T & { _meta?: TMeta }>, 'mutationFn'>;
26
+ }
35
27
 
36
28
  const log = anylogger('API Request');
37
29
 
38
- export type UseMutationQueryState<T> = {
30
+ export interface UseMutationQueryState<T> {
39
31
  isError: boolean;
40
32
  isMutating: boolean;
41
- } & UseMutationResult<T | ResponseError>;
33
+ mutate: (payload) => void;
34
+ mutateAsync: (payload) => Promise<T | ResponseError>;
35
+ }
42
36
 
43
- const useMutationQuery = <T extends object, TMeta>({
37
+ const useMutationQuery = <T extends object>({
44
38
  getEndpoint,
45
39
  catchError,
46
40
  decoder,
47
41
  defaultFailureMessage,
48
42
  fetchHeaders,
49
43
  httpCodesBypassErrorSnackbar = [],
50
- method,
51
- onMutate,
52
- onError,
53
- onSuccess,
54
- baseEndpoint
55
- }: UseMutationQueryProps<T, TMeta>): UseMutationQueryState<T> => {
44
+ method
45
+ }: UseMutationQueryProps<T>): UseMutationQueryState<T> => {
56
46
  const { showErrorMessage } = useSnackbar();
57
47
 
58
- const queryData = useMutation<
59
- T | ResponseError,
60
- ResponseError,
61
- T & { _meta: TMeta }
62
- >(
63
- (_payload: T & { _meta: TMeta }): Promise<T | ResponseError> => {
64
- const { _meta, ...payload } = _payload || {};
65
-
66
- return customFetch<T>({
67
- baseEndpoint,
48
+ const queryData = useMutation<T | ResponseError>(
49
+ (payload): Promise<T | ResponseError> =>
50
+ customFetch<T>({
68
51
  catchError,
69
52
  decoder,
70
53
  defaultFailureMessage,
71
- endpoint: getEndpoint(_meta as TMeta),
54
+ endpoint: getEndpoint(),
72
55
  headers: new Headers({
73
56
  'Content-Type': 'application/x-www-form-urlencoded',
74
57
  ...fetchHeaders
@@ -76,20 +59,7 @@ const useMutationQuery = <T extends object, TMeta>({
76
59
  isMutation: true,
77
60
  method,
78
61
  payload
79
- });
80
- },
81
- {
82
- onError,
83
- onMutate,
84
- onSuccess: (data, variables, context) => {
85
- if (data?.isError) {
86
- onError?.(data, variables, context);
87
-
88
- return;
89
- }
90
- onSuccess?.(data, variables, context);
91
- }
92
- }
62
+ })
93
63
  );
94
64
 
95
65
  const manageError = (): void => {
@@ -107,14 +77,13 @@ const useMutationQuery = <T extends object, TMeta>({
107
77
  }
108
78
  };
109
79
 
110
- useEffect(() => {
111
- manageError();
112
- }, useDeepCompare([queryData.data]));
80
+ manageError();
113
81
 
114
82
  return {
115
- ...queryData,
116
83
  isError: (queryData.data as ResponseError | undefined)?.isError || false,
117
- isMutating: queryData.isLoading
84
+ isMutating: queryData.isLoading,
85
+ mutate: queryData.mutate,
86
+ mutateAsync: queryData.mutateAsync
118
87
  };
119
88
  };
120
89
 
@@ -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> => {