@centreon/ui 23.10.113 → 23.10.115

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 (525) 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 -101
  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 +2 -11
  10. package/src/Button/Save/StartIcon.tsx +3 -3
  11. package/src/Button/Save/index.stories.tsx +5 -10
  12. package/src/Button/Save/index.tsx +1 -1
  13. package/src/Dialog/Confirm/index.tsx +4 -17
  14. package/src/Dialog/Duplicate/index.test.tsx +1 -1
  15. package/src/Dialog/index.tsx +2 -14
  16. package/src/FallbackPage/FallbackPage.tsx +2 -2
  17. package/src/FileDropZone/index.tsx +2 -4
  18. package/src/Form/CollapsibleGroup.tsx +5 -15
  19. package/src/Form/FormButtons.tsx +4 -2
  20. package/src/Form/Inputs/Autocomplete.tsx +1 -1
  21. package/src/Form/Inputs/ConnectedAutocomplete.tsx +1 -3
  22. package/src/Form/Inputs/Grid.tsx +2 -4
  23. package/src/Form/Inputs/Radio.tsx +5 -16
  24. package/src/Form/Inputs/Switch.tsx +1 -1
  25. package/src/Form/Inputs/Text.tsx +7 -18
  26. package/src/Form/Inputs/index.tsx +16 -32
  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/Select/Autocomplete/Connected/Multi/index.test.tsx +22 -3
  37. package/src/InputField/Select/Autocomplete/Connected/index.stories.tsx +3 -0
  38. package/src/InputField/Select/Autocomplete/Connected/index.test.tsx +7 -3
  39. package/src/InputField/Select/Autocomplete/Connected/index.tsx +12 -41
  40. package/src/InputField/Select/Autocomplete/Draggable/SortableList.tsx +1 -1
  41. package/src/InputField/Select/Autocomplete/Draggable/SortableListContent.tsx +1 -1
  42. package/src/InputField/Select/Autocomplete/Draggable/index.stories.tsx +2 -0
  43. package/src/InputField/Select/Autocomplete/Draggable/index.tsx +1 -1
  44. package/src/InputField/Select/Autocomplete/Multi/index.tsx +15 -32
  45. package/src/InputField/Select/Autocomplete/index.stories.tsx +10 -1
  46. package/src/InputField/Select/Autocomplete/index.tsx +2 -5
  47. package/src/InputField/Select/IconPopover/index.tsx +2 -2
  48. package/src/InputField/Select/index.tsx +2 -3
  49. package/src/InputField/Text/index.tsx +9 -14
  50. package/src/Listing/ActionBar/index.tsx +8 -15
  51. package/src/Listing/Cell/DataCell.tsx +68 -43
  52. package/src/Listing/Cell/index.tsx +8 -88
  53. package/src/Listing/Header/{_internals/PredefinedSelectionList.tsx → PredefinedSelectionList.tsx} +1 -1
  54. package/src/Listing/Header/{Cell/ListingHeaderCell.tsx → SortableCell/Content.tsx} +83 -18
  55. package/src/Listing/Header/SortableCell/DraggableIcon.tsx +41 -0
  56. package/src/Listing/Header/{ListingHeader.tsx → index.tsx} +106 -29
  57. package/src/Listing/{Row/Row.tsx → Row.tsx} +11 -12
  58. package/src/Listing/Skeleton.tsx +11 -0
  59. package/src/Listing/index.stories.tsx +40 -144
  60. package/src/Listing/index.test.tsx +1 -1
  61. package/src/Listing/index.tsx +263 -218
  62. package/src/Listing/models.ts +0 -1
  63. package/src/Listing/tableAtoms.ts +10 -15
  64. package/src/Listing/useStyleTable.ts +9 -9
  65. package/src/ListingPage/index.stories.tsx +8 -21
  66. package/src/ListingPage/index.tsx +38 -20
  67. package/src/Logo/CentreonLogo.tsx +2 -2
  68. package/src/Module/LicensedModule/LicenseCheck/index.stories.tsx +2 -0
  69. package/src/Panel/Memoized.tsx +1 -1
  70. package/src/Panel/Section/index.test.tsx +1 -1
  71. package/src/Panel/Section/index.tsx +1 -1
  72. package/src/Panel/index.tsx +6 -10
  73. package/src/PopoverMenu/index.tsx +4 -18
  74. package/src/RichTextEditor/ContentEditable.tsx +24 -70
  75. package/src/RichTextEditor/RichTextEditor.tsx +47 -165
  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 +10 -3
  80. package/src/RichTextEditor/plugins/ToolbarPlugin/UndoRedoButtons.tsx +3 -7
  81. package/src/RichTextEditor/plugins/ToolbarPlugin/index.tsx +9 -39
  82. package/src/Snackbar/index.tsx +4 -14
  83. package/src/Snackbar/useSnackbar.tsx +1 -5
  84. package/src/SortableItems/SortableItem.tsx +2 -3
  85. package/src/SortableItems/index.tsx +7 -2
  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/QueryProvider.tsx +1 -1
  98. package/src/api/TestQueryProvider.tsx +1 -2
  99. package/src/api/buildListingEndpoint/getSearchQueryParameterValue.ts +26 -35
  100. package/src/api/buildListingEndpoint/index.test.ts +2 -2
  101. package/src/api/buildListingEndpoint/index.ts +1 -1
  102. package/src/api/buildListingEndpoint/models.ts +1 -0
  103. package/src/api/customFetch.ts +0 -10
  104. package/src/api/useFetchQuery/index.ts +34 -42
  105. package/src/api/useMutationQuery/index.ts +22 -65
  106. package/src/api/useRequest/index.ts +6 -9
  107. package/src/index.ts +21 -29
  108. package/src/queryParameters/url/index.ts +1 -5
  109. package/src/storyshots.test.js +52 -0
  110. package/{test → src}/testRenderer.tsx +1 -1
  111. package/src/utils/getNormalizedId.ts +3 -1
  112. package/src/utils/useCopyToClipboard.ts +3 -2
  113. package/src/utils/useDebounce.ts +5 -8
  114. package/src/utils/useDeepCallback.ts +3 -1
  115. package/src/utils/useDeepMemo.ts +3 -1
  116. package/src/utils/useIntersectionObserver.ts +5 -5
  117. package/src/utils/useKeyObserver.tsx +3 -1
  118. package/src/utils/useLocaleDateTimeFormat/index.test.tsx +1 -1
  119. package/src/utils/useLocaleDateTimeFormat/index.ts +2 -1
  120. package/src/utils/useLocaleDateTimeFormat/localeFallback.test.tsx +1 -1
  121. package/src/utils/useMemoComponent.ts +1 -1
  122. package/testRunner.js +36 -0
  123. package/tsconfig.json +29 -0
  124. package/types/declarations.d.ts +9 -0
  125. package/public/README.md +0 -39
  126. package/public/mockServiceWorker.js +0 -303
  127. package/src/@assets/README.md +0 -5
  128. package/src/@assets/brand/centreon-logo-one-line-dark.svg +0 -1
  129. package/src/@assets/brand/centreon-logo-one-line-light.svg +0 -1
  130. package/src/@assets/icons/downtime.icon.svg +0 -1
  131. package/src/@types/aria-attributes.d.ts +0 -10
  132. package/src/@types/data-attributes.d.ts +0 -3
  133. package/src/@types/globals.d.ts +0 -9
  134. package/src/@types/vite-env.d.ts +0 -2
  135. package/src/ActionsList/ActionsList.styles.ts +0 -116
  136. package/src/ActionsList/models.ts +0 -8
  137. package/src/Checkbox/Checkbox.tsx +0 -109
  138. package/src/Checkbox/CheckboxGroup/index.stories.tsx +0 -41
  139. package/src/Checkbox/CheckboxGroup/index.tsx +0 -75
  140. package/src/Checkbox/index.stories.tsx +0 -39
  141. package/src/Checkbox/index.tsx +0 -2
  142. package/src/Dashboard/Dashboard.styles.ts +0 -108
  143. package/src/Dashboard/DashboardLayout.stories.tsx +0 -104
  144. package/src/Dashboard/Grid.tsx +0 -70
  145. package/src/Dashboard/Item.tsx +0 -100
  146. package/src/Dashboard/Layout.tsx +0 -79
  147. package/src/Dashboard/index.tsx +0 -9
  148. package/src/Dashboard/utils.ts +0 -28
  149. package/src/Form/Form.styles.ts +0 -11
  150. package/src/Form/Inputs/Checkbox.tsx +0 -57
  151. package/src/Form/Inputs/CheckboxGroup.tsx +0 -73
  152. package/src/Form/index.ts +0 -1
  153. package/src/Graph/Gauge/AnimatedPie.tsx +0 -102
  154. package/src/Graph/Gauge/Gauge.stories.tsx +0 -160
  155. package/src/Graph/Gauge/Gauge.tsx +0 -41
  156. package/src/Graph/Gauge/PieData.tsx +0 -63
  157. package/src/Graph/Gauge/ResponsiveGauge.tsx +0 -148
  158. package/src/Graph/Gauge/Thresholds.tsx +0 -117
  159. package/src/Graph/Gauge/index.ts +0 -1
  160. package/src/Graph/Gauge/models.ts +0 -20
  161. package/src/Graph/LineChart/BasicComponents/Axes/UnitLabel.tsx +0 -20
  162. package/src/Graph/LineChart/BasicComponents/Axes/index.tsx +0 -88
  163. package/src/Graph/LineChart/BasicComponents/Axes/models.ts +0 -26
  164. package/src/Graph/LineChart/BasicComponents/Axes/useAxisY.ts +0 -100
  165. package/src/Graph/LineChart/BasicComponents/Grids/index.tsx +0 -20
  166. package/src/Graph/LineChart/BasicComponents/Lines/RegularLines/index.tsx +0 -99
  167. package/src/Graph/LineChart/BasicComponents/Lines/RegularLines/useRegularLines.ts +0 -15
  168. package/src/Graph/LineChart/BasicComponents/Lines/StackedLines/index.tsx +0 -81
  169. package/src/Graph/LineChart/BasicComponents/Lines/StackedLines/useStackedLines.ts +0 -39
  170. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/BasicThreshold.tsx +0 -53
  171. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/Circle.tsx +0 -43
  172. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/ThresholdWithPatternLines.tsx +0 -78
  173. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/ThresholdWithVariation.tsx +0 -63
  174. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/helpers/index.ts +0 -69
  175. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/index.tsx +0 -143
  176. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/models.ts +0 -105
  177. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/useCoordinateCircle.ts +0 -46
  178. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/useScaleThreshold.ts +0 -171
  179. package/src/Graph/LineChart/BasicComponents/Lines/index.tsx +0 -189
  180. package/src/Graph/LineChart/BasicComponents/Lines/models.ts +0 -45
  181. package/src/Graph/LineChart/BasicComponents/LoadingProgress.tsx +0 -46
  182. package/src/Graph/LineChart/BasicComponents/ThresholdLine.tsx +0 -64
  183. package/src/Graph/LineChart/BasicComponents/Thresholds.tsx +0 -77
  184. package/src/Graph/LineChart/BasicComponents/useFilterLines.ts +0 -62
  185. package/src/Graph/LineChart/Header/index.tsx +0 -65
  186. package/src/Graph/LineChart/Icons/Downtime.tsx +0 -9
  187. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/GuidingLines.tsx +0 -45
  188. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/RegularAnchorPoint.tsx +0 -66
  189. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/StackedAnchorPoint.tsx +0 -76
  190. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/TooltipAnchorPoint.tsx +0 -96
  191. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/index.tsx +0 -20
  192. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/models.ts +0 -62
  193. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/useTickGraph.ts +0 -94
  194. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/useTooltipAnchorPoint.ts +0 -107
  195. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/Area.tsx +0 -114
  196. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/Line.tsx +0 -103
  197. package/src/Graph/LineChart/InteractiveComponents/Annotations/Annotation/index.tsx +0 -80
  198. package/src/Graph/LineChart/InteractiveComponents/Annotations/Area/Downtime.tsx +0 -27
  199. package/src/Graph/LineChart/InteractiveComponents/Annotations/EventAnnotations.tsx +0 -61
  200. package/src/Graph/LineChart/InteractiveComponents/Annotations/Line/Acknowledgement.tsx +0 -27
  201. package/src/Graph/LineChart/InteractiveComponents/Annotations/Line/Comments.tsx +0 -25
  202. package/src/Graph/LineChart/InteractiveComponents/Annotations/annotationsAtoms.ts +0 -183
  203. package/src/Graph/LineChart/InteractiveComponents/Annotations/index.tsx +0 -49
  204. package/src/Graph/LineChart/InteractiveComponents/Annotations/models.ts +0 -25
  205. package/src/Graph/LineChart/InteractiveComponents/Annotations/useAnnotation.ts +0 -56
  206. package/src/Graph/LineChart/InteractiveComponents/Bar.tsx +0 -21
  207. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/TimeShiftIcon.tsx +0 -62
  208. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/TimeShiftZone.tsx +0 -74
  209. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/index.tsx +0 -85
  210. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/models.ts +0 -12
  211. package/src/Graph/LineChart/InteractiveComponents/TimeShiftZones/useTimeShiftZones.ts +0 -72
  212. package/src/Graph/LineChart/InteractiveComponents/Tooltip/index.tsx +0 -59
  213. package/src/Graph/LineChart/InteractiveComponents/Tooltip/models.ts +0 -9
  214. package/src/Graph/LineChart/InteractiveComponents/Tooltip/useGraphTooltip.ts +0 -67
  215. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/index.tsx +0 -38
  216. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/models.ts +0 -9
  217. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/useZoomPreview.ts +0 -107
  218. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/zoomPreviewAtoms.ts +0 -3
  219. package/src/Graph/LineChart/InteractiveComponents/index.tsx +0 -168
  220. package/src/Graph/LineChart/InteractiveComponents/interactionWithGraphAtoms.ts +0 -52
  221. package/src/Graph/LineChart/Legend/InteractiveValue.tsx +0 -22
  222. package/src/Graph/LineChart/Legend/Legend.styles.ts +0 -71
  223. package/src/Graph/LineChart/Legend/LegendContent.tsx +0 -27
  224. package/src/Graph/LineChart/Legend/LegendHeader.tsx +0 -45
  225. package/src/Graph/LineChart/Legend/Marker.tsx +0 -43
  226. package/src/Graph/LineChart/Legend/index.tsx +0 -173
  227. package/src/Graph/LineChart/Legend/models.ts +0 -11
  228. package/src/Graph/LineChart/Legend/useInteractiveValues.ts +0 -99
  229. package/src/Graph/LineChart/Legend/useLegend.ts +0 -105
  230. package/src/Graph/LineChart/LineChart.styles.ts +0 -45
  231. package/src/Graph/LineChart/LineChart.tsx +0 -303
  232. package/src/Graph/LineChart/LoadingSkeleton.tsx +0 -44
  233. package/src/Graph/LineChart/common/index.ts +0 -35
  234. package/src/Graph/LineChart/graphAtoms.ts +0 -3
  235. package/src/Graph/LineChart/helpers/doc.ts +0 -563
  236. package/src/Graph/LineChart/helpers/index.ts +0 -63
  237. package/src/Graph/LineChart/index.stories.tsx +0 -477
  238. package/src/Graph/LineChart/index.tsx +0 -115
  239. package/src/Graph/LineChart/mockedData/annotationData.json +0 -326
  240. package/src/Graph/LineChart/mockedData/exclusionPeriodFirstPeriod.json +0 -588
  241. package/src/Graph/LineChart/mockedData/exclusionPeriodSecondPeriod.json +0 -588
  242. package/src/Graph/LineChart/mockedData/exclusionPeriodThirdPeriod.json +0 -581
  243. package/src/Graph/LineChart/mockedData/lastDay.json +0 -1326
  244. package/src/Graph/LineChart/mockedData/lastDayAreaStack.json +0 -3106
  245. package/src/Graph/LineChart/mockedData/lastDayForward.json +0 -1338
  246. package/src/Graph/LineChart/mockedData/lastDayThreshold.json +0 -2352
  247. package/src/Graph/LineChart/mockedData/lastMonth.json +0 -1674
  248. package/src/Graph/LineChart/mockedData/lastWeek.json +0 -2202
  249. package/src/Graph/LineChart/mockedData/zoomPreview.json +0 -742
  250. package/src/Graph/LineChart/models.ts +0 -146
  251. package/src/Graph/LineChart/translatedLabels.ts +0 -9
  252. package/src/Graph/LineChart/useLineChartData.ts +0 -49
  253. package/src/Graph/LineChart/useLineChartIntersection.ts +0 -36
  254. package/src/Graph/SingleBar/ResponsiveSingleBar.tsx +0 -197
  255. package/src/Graph/SingleBar/SingleBar.stories.tsx +0 -204
  256. package/src/Graph/SingleBar/SingleBar.tsx +0 -25
  257. package/src/Graph/SingleBar/ThresholdLine.tsx +0 -103
  258. package/src/Graph/SingleBar/Thresholds.tsx +0 -50
  259. package/src/Graph/SingleBar/index.ts +0 -1
  260. package/src/Graph/SingleBar/models.ts +0 -10
  261. package/src/Graph/Text/Text.stories.tsx +0 -123
  262. package/src/Graph/Text/Text.styles.ts +0 -17
  263. package/src/Graph/Text/Text.tsx +0 -91
  264. package/src/Graph/Text/index.ts +0 -1
  265. package/src/Graph/common/margins.ts +0 -1
  266. package/src/Graph/common/models.ts +0 -19
  267. package/src/Graph/common/timeSeries/index.test.ts +0 -624
  268. package/src/Graph/common/timeSeries/index.ts +0 -626
  269. package/src/Graph/common/timeSeries/models.ts +0 -129
  270. package/src/Graph/common/utils.ts +0 -75
  271. package/src/Graph/index.ts +0 -4
  272. package/src/InputField/Select/Autocomplete/Connected/Multi/MultiConnectedAutocompleteField.cypress.spec.tsx +0 -127
  273. package/src/InputField/Select/Autocomplete/Connected/Multi/utils/index.ts +0 -22
  274. package/src/Listing/Cell/DataCell.styles.ts +0 -24
  275. package/src/Listing/EmptyResult/EmptyResult.tsx +0 -13
  276. package/src/Listing/Header/Cell/ListingHeaderCell.styles.ts +0 -71
  277. package/src/Listing/Header/Cell/SelectActionListingHeaderCell.styles.ts +0 -26
  278. package/src/Listing/Header/Cell/SelectActionListingHeaderCell.tsx +0 -70
  279. package/src/Listing/Header/ListingHeader.styles.ts +0 -16
  280. package/src/Listing/Header/_internals/DraggableIconButton.tsx +0 -35
  281. package/src/Listing/Header/index.ts +0 -1
  282. package/src/Listing/Listing.cypress.spec.tsx +0 -122
  283. package/src/Listing/Listing.styles.ts +0 -81
  284. package/src/Listing/ListingDocs.mdx +0 -61
  285. package/src/Listing/Row/EmptyRow.styles.ts +0 -14
  286. package/src/Listing/Row/EmptyRow.tsx +0 -30
  287. package/src/Listing/Row/SkeletonLoaderRows.tsx +0 -23
  288. package/src/ParentSize/ParentSize.tsx +0 -24
  289. package/src/ParentSize/index.ts +0 -1
  290. package/src/RichTextEditor/RichTextEditor.cypress.spec.tsx +0 -360
  291. package/src/RichTextEditor/plugins/ToolbarPlugin/AlignPicker.tsx +0 -115
  292. package/src/RichTextEditor/plugins/ToolbarPlugin/BlockButtons.tsx +0 -197
  293. package/src/RichTextEditor/plugins/ToolbarPlugin/MacrosButton.tsx +0 -91
  294. package/src/RichTextEditor/plugins/ToolbarPlugin/ToolbarPlugin.styles.ts +0 -22
  295. package/src/TimePeriods/CustomTimePeriod/CompactCustomTimePeriod.styles.ts +0 -51
  296. package/src/TimePeriods/CustomTimePeriod/CompactCustomTimePeriod.tsx +0 -95
  297. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/ErrorText.tsx +0 -14
  298. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/PickersStartEndDate.tsx +0 -171
  299. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/index.tsx +0 -76
  300. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/models.ts +0 -59
  301. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/usePickersStartEndDate.ts +0 -82
  302. package/src/TimePeriods/CustomTimePeriod/SimpleCustomTimePeriod.tsx +0 -28
  303. package/src/TimePeriods/CustomTimePeriod/index.tsx +0 -66
  304. package/src/TimePeriods/DateTimePickerInput.tsx +0 -77
  305. package/src/TimePeriods/ResolutionTimePeriod.cypress.spec.tsx +0 -65
  306. package/src/TimePeriods/SelectedTimePeriod.tsx +0 -102
  307. package/src/TimePeriods/TimePeriods.cypress.spec.tsx +0 -486
  308. package/src/TimePeriods/TimePeriods.styles.ts +0 -22
  309. package/src/TimePeriods/helpers/index.ts +0 -26
  310. package/src/TimePeriods/index.stories.tsx +0 -113
  311. package/src/TimePeriods/index.tsx +0 -79
  312. package/src/TimePeriods/mockedData.ts +0 -12
  313. package/src/TimePeriods/models.ts +0 -97
  314. package/src/TimePeriods/timePeriodsAtoms.ts +0 -102
  315. package/src/TimePeriods/translatedLabels.ts +0 -9
  316. package/src/TimePeriods/useSortTimePeriods.ts +0 -31
  317. package/src/TimePeriods/useTimePeriod.ts +0 -49
  318. package/src/Typography/FluidTypography/index.stories.tsx +0 -63
  319. package/src/Typography/FluidTypography/index.tsx +0 -51
  320. package/src/Typography/FluidTypography/useFluidResizeObserver.ts +0 -56
  321. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-normal-1-snap.png +0 -0
  322. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-with-item-header-1-snap.png +0 -0
  323. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-dashboard-with-many-panels-1-snap.png +0 -0
  324. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-basic-1-snap.png +0 -0
  325. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-20-px-height-1-snap.png +0 -0
  326. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-200-px-width-1-snap.png +0 -0
  327. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-heading-5-variant-1-snap.png +0 -0
  328. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-fluid-typography-with-long-text-1-snap.png +0 -0
  329. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-as-empty-state-1-snap.png +0 -0
  330. package/src/__image_snapshots__/storyshots-test-js-image-story-shots-listing-with-editable-and-sortable-columns-1-snap.png +0 -0
  331. package/src/api/useGraphQuery/index.ts +0 -166
  332. package/src/api/useGraphQuery/models.ts +0 -15
  333. package/src/base/tokens/README.md +0 -3
  334. package/src/base/tokens/source/$metadata.json +0 -5
  335. package/src/base/tokens/source/base.json +0 -142
  336. package/src/base/tokens/themes/base.tokens.d.ts +0 -38
  337. package/src/base/tokens/themes/base.tokens.json +0 -695
  338. package/src/base/tokens/themes/base.tokens.ts +0 -38
  339. package/src/base/tokens/themes/ui-dark.tokens.d.ts +0 -38
  340. package/src/base/tokens/themes/ui-dark.tokens.json +0 -695
  341. package/src/base/tokens/themes/ui-dark.tokens.ts +0 -38
  342. package/src/base/tokens/themes/ui-light.tokens.d.ts +0 -38
  343. package/src/base/tokens/themes/ui-light.tokens.json +0 -695
  344. package/src/base/tokens/themes/ui-light.tokens.ts +0 -38
  345. package/src/components/Avatar/Avatar.stories.tsx +0 -23
  346. package/src/components/Avatar/Avatar.styles.ts +0 -11
  347. package/src/components/Avatar/Avatar.tsx +0 -32
  348. package/src/components/Avatar/index.ts +0 -1
  349. package/src/components/Button/Button.stories.tsx +0 -34
  350. package/src/components/Button/Button.styles.ts +0 -44
  351. package/src/components/Button/Button.tsx +0 -78
  352. package/src/components/Button/Icon/IconButton.stories.tsx +0 -18
  353. package/src/components/Button/Icon/IconButton.styles.ts +0 -14
  354. package/src/components/Button/Icon/IconButton.tsx +0 -58
  355. package/src/components/Button/Icon/index.tsx +0 -1
  356. package/src/components/Button/index.ts +0 -2
  357. package/src/components/CollapsibleItem/CollapsibleItem.stories.tsx +0 -25
  358. package/src/components/CollapsibleItem/CollapsibleItem.tsx +0 -47
  359. package/src/components/CollapsibleItem/index.ts +0 -1
  360. package/src/components/CollapsibleItem/useCollapsibleItemStyles.ts +0 -15
  361. package/src/components/DataTable/DataTable.stories.tsx +0 -51
  362. package/src/components/DataTable/DataTable.styles.ts +0 -27
  363. package/src/components/DataTable/DataTable.tsx +0 -35
  364. package/src/components/DataTable/EmptyState/DataTableEmptyState.stories.tsx +0 -21
  365. package/src/components/DataTable/EmptyState/DataTableEmptyState.styles.ts +0 -26
  366. package/src/components/DataTable/EmptyState/DataTableEmptyState.tsx +0 -53
  367. package/src/components/DataTable/Item/DataTableItem.stories.tsx +0 -25
  368. package/src/components/DataTable/Item/DataTableItem.styles.ts +0 -33
  369. package/src/components/DataTable/Item/DataTableItem.tsx +0 -123
  370. package/src/components/DataTable/Item/DataTableItemSkeleton.tsx +0 -13
  371. package/src/components/DataTable/index.ts +0 -10
  372. package/src/components/Form/AccessRights/AccessRights.resource.ts +0 -45
  373. package/src/components/Form/AccessRights/AccessRightsForm.stories.tsx +0 -59
  374. package/src/components/Form/AccessRights/AccessRightsForm.styles.ts +0 -21
  375. package/src/components/Form/AccessRights/AccessRightsForm.tsx +0 -67
  376. package/src/components/Form/AccessRights/AccessRightsFormActions.tsx +0 -80
  377. package/src/components/Form/AccessRights/Input/AddAction.tsx +0 -31
  378. package/src/components/Form/AccessRights/Input/ContactAccessRightInput.stories.tsx +0 -54
  379. package/src/components/Form/AccessRights/Input/ContactAccessRightInput.tsx +0 -72
  380. package/src/components/Form/AccessRights/Input/ContactAccessRightsInput.styles.ts +0 -22
  381. package/src/components/Form/AccessRights/Input/ContactInputField.tsx +0 -105
  382. package/src/components/Form/AccessRights/Input/RoleInputField.tsx +0 -29
  383. package/src/components/Form/AccessRights/List/ContactAccessRightsList.stories.tsx +0 -97
  384. package/src/components/Form/AccessRights/List/ContactAccessRightsList.styles.ts +0 -71
  385. package/src/components/Form/AccessRights/List/ContactAccessRightsList.tsx +0 -51
  386. package/src/components/Form/AccessRights/List/ContactAccessRightsListItem.stories.tsx +0 -116
  387. package/src/components/Form/AccessRights/List/ContactAccessRightsListItem.tsx +0 -118
  388. package/src/components/Form/AccessRights/List/ContactAccessRightsListItemSkeleton.tsx +0 -26
  389. package/src/components/Form/AccessRights/List/ContactAccessRightsListSkeleton.tsx +0 -28
  390. package/src/components/Form/AccessRights/Stats/AccessRightsStats.styles.ts +0 -18
  391. package/src/components/Form/AccessRights/Stats/AccessRightsStats.tsx +0 -41
  392. package/src/components/Form/AccessRights/__fixtures__/contactAccessRight.mock.ts +0 -52
  393. package/src/components/Form/AccessRights/common/GroupLabel.styles.ts +0 -18
  394. package/src/components/Form/AccessRights/common/GroupLabel.tsx +0 -15
  395. package/src/components/Form/AccessRights/common/Input.styles.ts +0 -48
  396. package/src/components/Form/AccessRights/common/RoleInputSelect.styles.ts +0 -11
  397. package/src/components/Form/AccessRights/common/RoleInputSelect.tsx +0 -57
  398. package/src/components/Form/AccessRights/index.ts +0 -3
  399. package/src/components/Form/AccessRights/useAccessRightsForm.test.tsx +0 -531
  400. package/src/components/Form/AccessRights/useAccessRightsForm.tsx +0 -282
  401. package/src/components/Form/AccessRights/useAccessRightsForm.utils.ts +0 -41
  402. package/src/components/Form/Dashboard/Dashboard.resource.ts +0 -9
  403. package/src/components/Form/Dashboard/DashboardForm.stories.ts +0 -39
  404. package/src/components/Form/Dashboard/DashboardForm.styles.ts +0 -21
  405. package/src/components/Form/Dashboard/DashboardForm.tsx +0 -137
  406. package/src/components/Form/Dashboard/GlobalRefreshFieldOption.tsx +0 -59
  407. package/src/components/Form/Dashboard/index.ts +0 -2
  408. package/src/components/Form/Dashboard/translatedLabels.ts +0 -9
  409. package/src/components/Form/Form.models.ts +0 -1
  410. package/src/components/Form/Form.resource.ts +0 -1
  411. package/src/components/Form/Form.styles.ts +0 -17
  412. package/src/components/Form/FormActions.tsx +0 -57
  413. package/src/components/Form/index.ts +0 -3
  414. package/src/components/Header/PageHeader/PageHeader.stories.tsx +0 -97
  415. package/src/components/Header/PageHeader/PageHeader.styles.ts +0 -126
  416. package/src/components/Header/PageHeader/PageHeader.tsx +0 -15
  417. package/src/components/Header/PageHeader/PageHeaderActions.tsx +0 -17
  418. package/src/components/Header/PageHeader/PageHeaderMain.tsx +0 -15
  419. package/src/components/Header/PageHeader/PageHeaderMenu.tsx +0 -15
  420. package/src/components/Header/PageHeader/PageHeaderMessage.tsx +0 -32
  421. package/src/components/Header/PageHeader/PageHeaderTitle.tsx +0 -47
  422. package/src/components/Header/PageHeader/index.ts +0 -14
  423. package/src/components/Header/index.ts +0 -1
  424. package/src/components/Icon/Icon.styles.ts +0 -0
  425. package/src/components/Icon/Icon.tsx +0 -2
  426. package/src/components/Icon/index.ts +0 -0
  427. package/src/components/Inputs/Switch/Switch.stories.tsx +0 -22
  428. package/src/components/Inputs/Switch/Switch.styles.ts +0 -13
  429. package/src/components/Inputs/Switch/Switch.tsx +0 -18
  430. package/src/components/Inputs/index.ts +0 -1
  431. package/src/components/ItemComposition/Item.tsx +0 -41
  432. package/src/components/ItemComposition/ItemComposition.stories.tsx +0 -78
  433. package/src/components/ItemComposition/ItemComposition.styles.ts +0 -29
  434. package/src/components/ItemComposition/ItemComposition.tsx +0 -47
  435. package/src/components/ItemComposition/index.ts +0 -6
  436. package/src/components/Layout/AreaIndicator.styles.ts +0 -33
  437. package/src/components/Layout/AreaIndicator.tsx +0 -35
  438. package/src/components/Layout/PageLayout/PageLayout.stories.tsx +0 -81
  439. package/src/components/Layout/PageLayout/PageLayout.styles.ts +0 -41
  440. package/src/components/Layout/PageLayout/PageLayout.tsx +0 -21
  441. package/src/components/Layout/PageLayout/PageLayoutActions.tsx +0 -24
  442. package/src/components/Layout/PageLayout/PageLayoutBody.tsx +0 -24
  443. package/src/components/Layout/PageLayout/PageLayoutHeader.tsx +0 -15
  444. package/src/components/Layout/PageLayout/index.ts +0 -10
  445. package/src/components/Layout/index.ts +0 -1
  446. package/src/components/List/Item/Avatar.tsx +0 -21
  447. package/src/components/List/Item/AvatarSkeleton.tsx +0 -17
  448. package/src/components/List/Item/ListItem.stories.tsx +0 -41
  449. package/src/components/List/Item/ListItem.styles.ts +0 -57
  450. package/src/components/List/Item/ListItem.tsx +0 -32
  451. package/src/components/List/Item/Text.tsx +0 -25
  452. package/src/components/List/Item/TextSkeleton.tsx +0 -22
  453. package/src/components/List/Item/index.ts +0 -14
  454. package/src/components/List/List.stories.tsx +0 -70
  455. package/src/components/List/List.styles.ts +0 -8
  456. package/src/components/List/List.tsx +0 -19
  457. package/src/components/List/index.ts +0 -6
  458. package/src/components/Menu/Button/MenuButton.stories.tsx +0 -16
  459. package/src/components/Menu/Button/MenuButton.styles.ts +0 -27
  460. package/src/components/Menu/Button/MenuButton.tsx +0 -65
  461. package/src/components/Menu/Button/index.ts +0 -1
  462. package/src/components/Menu/Menu.stories.tsx +0 -71
  463. package/src/components/Menu/Menu.styles.ts +0 -68
  464. package/src/components/Menu/Menu.tsx +0 -25
  465. package/src/components/Menu/MenuDivider.tsx +0 -13
  466. package/src/components/Menu/MenuItem.tsx +0 -36
  467. package/src/components/Menu/MenuItems.tsx +0 -35
  468. package/src/components/Menu/index.ts +0 -12
  469. package/src/components/Menu/useMenu.tsx +0 -79
  470. package/src/components/Modal/Modal.stories.tsx +0 -142
  471. package/src/components/Modal/Modal.styles.ts +0 -88
  472. package/src/components/Modal/Modal.tsx +0 -79
  473. package/src/components/Modal/ModalActions.tsx +0 -62
  474. package/src/components/Modal/ModalBody.tsx +0 -15
  475. package/src/components/Modal/ModalHeader.tsx +0 -21
  476. package/src/components/Modal/index.ts +0 -12
  477. package/src/components/README.md +0 -3
  478. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.stories.tsx +0 -62
  479. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.styles.tsx +0 -22
  480. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.tsx +0 -68
  481. package/src/components/Tooltip/ConfirmationTooltip/TooltipContent.tsx +0 -31
  482. package/src/components/Tooltip/ConfirmationTooltip/index.ts +0 -1
  483. package/src/components/Tooltip/ConfirmationTooltip/models.ts +0 -18
  484. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.stories.tsx +0 -70
  485. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.styles.ts +0 -5
  486. package/src/components/Tooltip/TextOverflowTooltip/TextOverflowTooltip.tsx +0 -115
  487. package/src/components/Tooltip/TextOverflowTooltip/index.tsx +0 -1
  488. package/src/components/Tooltip/Tooltip.stories.tsx +0 -41
  489. package/src/components/Tooltip/Tooltip.tsx +0 -57
  490. package/src/components/Tooltip/index.ts +0 -2
  491. package/src/components/index.ts +0 -13
  492. package/src/screens/dashboard/DashboardsDetail.stories.tsx +0 -108
  493. package/src/screens/dashboard/DashboardsOverview.stories.tsx +0 -281
  494. package/src/styles/tokens/themes/_ui-dark.tokens.json +0 -695
  495. package/src/styles/tokens/themes/_ui-light.tokens.json +0 -695
  496. package/src/utils/centreonBaseURL.ts +0 -4
  497. package/src/utils/docsURL.ts +0 -31
  498. package/src/utils/index.ts +0 -21
  499. package/src/utils/panelSize.ts +0 -15
  500. package/src/utils/sanitizedHTML.ts +0 -18
  501. package/src/utils/translatedLabel.ts +0 -2
  502. package/src/utils/useInfiniteScrollListing.ts +0 -106
  503. package/src/utils/useLicenseExpirationWarning.test.tsx +0 -148
  504. package/src/utils/useLicenseExpirationWarning.ts +0 -52
  505. package/src/utils/useRefreshInterval.ts +0 -39
  506. package/src/utils/useResizeObserver.ts +0 -6
  507. package/src/utils/useThresholds.ts +0 -0
  508. /package/{public/brand → assets}/centreon-logo-one-line-dark.svg +0 -0
  509. /package/{public/brand → assets}/centreon-logo-one-line-light.svg +0 -0
  510. /package/{src/@assets/images → assets}/not-authorized-template-background-dark.svg +0 -0
  511. /package/{src/@assets/images → assets}/not-authorized-template-background-light.svg +0 -0
  512. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.ttf +0 -0
  513. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.woff +0 -0
  514. /package/{public/fonts → fonts/fonts-generated}/roboto-bold-webfont.woff2 +0 -0
  515. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.ttf +0 -0
  516. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.woff +0 -0
  517. /package/{public/fonts → fonts/fonts-generated}/roboto-light-webfont.woff2 +0 -0
  518. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.ttf +0 -0
  519. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.woff +0 -0
  520. /package/{public/fonts → fonts/fonts-generated}/roboto-medium-webfont.woff2 +0 -0
  521. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.ttf +0 -0
  522. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.woff +0 -0
  523. /package/{public/fonts → fonts/fonts-generated}/roboto-regular-webfont.woff2 +0 -0
  524. /package/src/Listing/Header/{_internals/Label.tsx → Label.tsx} +0 -0
  525. /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;
@@ -7,7 +7,7 @@ const defaultCacheTime = 5 * 1_000;
7
7
  const client = new QueryClient({
8
8
  defaultOptions: {
9
9
  queries: {
10
- gcTime: defaultCacheTime,
10
+ cacheTime: defaultCacheTime,
11
11
  refetchOnWindowFocus: false,
12
12
  staleTime: defaultCacheTime,
13
13
  suspense: true
@@ -5,8 +5,7 @@ import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
5
5
  const client = new QueryClient({
6
6
  defaultOptions: {
7
7
  queries: {
8
- gcTime: 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>;
@@ -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;
@@ -83,15 +82,6 @@ export const customFetch = <T>({
83
82
  };
84
83
  }
85
84
 
86
- if (equals(response.status, 207)) {
87
- return {
88
- data: data.results,
89
- isError: false,
90
- message: '',
91
- statusCode: response.status
92
- };
93
- }
94
-
95
85
  if (decoder) {
96
86
  return decoder.decodeToPromise(data).catch((error: string) => {
97
87
  catchError({
@@ -1,4 +1,4 @@
1
- import { useEffect, useMemo } from 'react';
1
+ import { useEffect } from 'react';
2
2
 
3
3
  import 'ulog';
4
4
  import {
@@ -14,7 +14,6 @@ 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
19
  catchError?: (props: CatchErrorProps) => void;
@@ -25,22 +24,20 @@ export interface UseFetchQueryProps<T> {
25
24
  getQueryKey: () => QueryKey;
26
25
  httpCodesBypassErrorSnackbar?: Array<number>;
27
26
  isPaginated?: boolean;
28
- queryOptions?: {
29
- suspense?: boolean;
30
- } & Omit<
27
+ queryOptions?: Omit<
31
28
  UseQueryOptions<T | ResponseError, Error, T | ResponseError, QueryKey>,
32
29
  'queryKey' | 'queryFn'
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
- error: Omit<ResponseError, 'isError'> | null;
39
36
  fetchQuery: () => Promise<T | ResponseError>;
40
37
  prefetchNextPage: ({ page, getPrefetchQueryKey }) => void;
41
38
  prefetchPreviousPage: ({ page, getPrefetchQueryKey }) => void;
42
39
  prefetchQuery: ({ endpointParams, queryKey }) => void;
43
- } & Omit<QueryObserverBaseResult, 'data' | 'error'>;
40
+ }
44
41
 
45
42
  export interface PrefetchEndpointParams {
46
43
  page: number;
@@ -61,8 +58,9 @@ const useFetchQuery = <T extends object>({
61
58
  }: UseFetchQueryProps<T>): UseFetchQueryState<T> => {
62
59
  const { showErrorMessage } = useSnackbar();
63
60
 
64
- const queryData = useQuery<T | ResponseError, Error>({
65
- queryFn: ({ signal }): Promise<T | ResponseError> =>
61
+ const queryData = useQuery<T | ResponseError, Error>(
62
+ getQueryKey(),
63
+ ({ signal }): Promise<T | ResponseError> =>
66
64
  customFetch<T>({
67
65
  catchError,
68
66
  decoder,
@@ -71,9 +69,10 @@ const useFetchQuery = <T extends object>({
71
69
  headers: new Headers(fetchHeaders),
72
70
  signal
73
71
  }),
74
- queryKey: getQueryKey(),
75
- ...queryOptions
76
- });
72
+ {
73
+ ...queryOptions
74
+ }
75
+ );
77
76
 
78
77
  const queryClient = useQueryClient();
79
78
 
@@ -92,9 +91,18 @@ const useFetchQuery = <T extends object>({
92
91
  }
93
92
  };
94
93
 
94
+ useEffect(() => {
95
+ return (): void => {
96
+ queryClient.cancelQueries(getQueryKey());
97
+ };
98
+ }, []);
99
+
100
+ manageError();
101
+
95
102
  const prefetchQuery = ({ endpointParams, queryKey }): void => {
96
- queryClient.prefetchQuery({
97
- queryFn: ({ signal }): Promise<T | ResponseError> =>
103
+ queryClient.prefetchQuery(
104
+ queryKey,
105
+ ({ signal }): Promise<T | ResponseError> =>
98
106
  customFetch<T>({
99
107
  catchError,
100
108
  decoder,
@@ -102,9 +110,8 @@ const useFetchQuery = <T extends object>({
102
110
  endpoint: getEndpoint(endpointParams),
103
111
  headers: new Headers(fetchHeaders),
104
112
  signal
105
- }),
106
- queryKey
107
- });
113
+ })
114
+ );
108
115
  };
109
116
 
110
117
  const prefetchNextPage = ({ page, getPrefetchQueryKey }): void => {
@@ -134,8 +141,9 @@ const useFetchQuery = <T extends object>({
134
141
  };
135
142
 
136
143
  const fetchQuery = (): Promise<T | ResponseError> => {
137
- return queryClient.fetchQuery({
138
- queryFn: ({ signal }): Promise<T | ResponseError> =>
144
+ return queryClient.fetchQuery(
145
+ getQueryKey(),
146
+ ({ signal }): Promise<T | ResponseError> =>
139
147
  customFetch<T>({
140
148
  catchError,
141
149
  decoder,
@@ -143,34 +151,18 @@ const useFetchQuery = <T extends object>({
143
151
  endpoint: getEndpoint(),
144
152
  headers: new Headers(fetchHeaders),
145
153
  signal
146
- }),
147
- queryKey: getQueryKey()
148
- });
154
+ })
155
+ );
149
156
  };
150
157
 
151
- const data = useMemo(
152
- () =>
153
- not(has('isError', queryData.data)) ? (queryData.data as T) : undefined,
154
- [queryData.data]
155
- );
158
+ const data = not(has('isError', queryData.data))
159
+ ? (queryData.data as T)
160
+ : undefined;
156
161
 
157
162
  const errorData = queryData.data as ResponseError | undefined;
158
163
 
159
- useEffect(() => {
160
- return (): void => {
161
- queryClient.cancelQueries({ queryKey: getQueryKey() });
162
- };
163
- }, []);
164
-
165
- useEffect(
166
- () => {
167
- manageError();
168
- },
169
- useDeepCompare([queryData.data])
170
- );
171
-
172
164
  return {
173
- ...omit(['data', 'error'], queryData),
165
+ ...omit(['data'], queryData),
174
166
  data,
175
167
  error: errorData?.isError ? omit(['isError'], errorData) : null,
176
168
  fetchQuery,
@@ -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
- import { includes, omit } from 'ramda';
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,71 +15,43 @@ export enum Method {
22
15
  PUT = 'PUT'
23
16
  }
24
17
 
25
- export type UseMutationQueryProps<T, TMeta> = {
18
+ export interface UseMutationQueryProps<T> {
26
19
  catchError?: (props: CatchErrorProps) => void;
27
20
  decoder?: JsonDecoder.Decoder<T>;
28
21
  defaultFailureMessage?: string;
29
22
  fetchHeaders?: HeadersInit;
30
- getEndpoint: (_meta: TMeta) => string;
23
+ getEndpoint: () => string;
31
24
  httpCodesBypassErrorSnackbar?: Array<number>;
32
25
  method: Method;
33
- onError?: (
34
- error: ResponseError,
35
- variables: T & { _meta: TMeta },
36
- context: unknown
37
- ) => unknown;
38
- onMutate?: (variables: T & { _meta: TMeta }) => Promise<unknown> | unknown;
39
- onSuccess?: (
40
- data: ResponseError | T,
41
- variables: T & {
42
- _meta: TMeta;
43
- },
44
- context: unknown
45
- ) => unknown;
46
- } & Omit<
47
- UseMutationOptions<T & { _meta?: TMeta }>,
48
- 'mutationFn' | 'onError' | 'onMutate' | 'onSuccess'
49
- >;
26
+ }
50
27
 
51
28
  const log = anylogger('API Request');
52
29
 
53
- export type UseMutationQueryState<T> = Omit<
54
- UseMutationResult<T | ResponseError>,
55
- 'isError'
56
- > & {
30
+ export interface UseMutationQueryState<T> {
57
31
  isError: boolean;
58
32
  isMutating: boolean;
59
- };
33
+ mutate: (payload) => void;
34
+ mutateAsync: (payload) => Promise<T | ResponseError>;
35
+ }
60
36
 
61
- const useMutationQuery = <T extends object, TMeta>({
37
+ const useMutationQuery = <T extends object>({
62
38
  getEndpoint,
63
39
  catchError,
64
40
  decoder,
65
41
  defaultFailureMessage,
66
42
  fetchHeaders,
67
43
  httpCodesBypassErrorSnackbar = [],
68
- method,
69
- onMutate,
70
- onError,
71
- onSuccess
72
- }: UseMutationQueryProps<T, TMeta>): UseMutationQueryState<T> => {
44
+ method
45
+ }: UseMutationQueryProps<T>): UseMutationQueryState<T> => {
73
46
  const { showErrorMessage } = useSnackbar();
74
47
 
75
- const queryData = useMutation<
76
- T | ResponseError,
77
- ResponseError,
78
- T & { _meta: TMeta }
79
- >({
80
- mutationFn: (
81
- _payload: T & { _meta: TMeta }
82
- ): Promise<T | ResponseError> => {
83
- const { _meta, ...payload } = _payload || {};
84
-
85
- return customFetch<T>({
48
+ const queryData = useMutation<T | ResponseError>(
49
+ (payload): Promise<T | ResponseError> =>
50
+ customFetch<T>({
86
51
  catchError,
87
52
  decoder,
88
53
  defaultFailureMessage,
89
- endpoint: getEndpoint(_meta as TMeta),
54
+ endpoint: getEndpoint(),
90
55
  headers: new Headers({
91
56
  'Content-Type': 'application/x-www-form-urlencoded',
92
57
  ...fetchHeaders
@@ -94,12 +59,8 @@ const useMutationQuery = <T extends object, TMeta>({
94
59
  isMutation: true,
95
60
  method,
96
61
  payload
97
- });
98
- },
99
- onError,
100
- onMutate,
101
- onSuccess
102
- });
62
+ })
63
+ );
103
64
 
104
65
  const manageError = (): void => {
105
66
  const data = queryData.data as ResponseError | undefined;
@@ -116,17 +77,13 @@ const useMutationQuery = <T extends object, TMeta>({
116
77
  }
117
78
  };
118
79
 
119
- useEffect(
120
- () => {
121
- manageError();
122
- },
123
- useDeepCompare([queryData.data])
124
- );
80
+ manageError();
125
81
 
126
82
  return {
127
- ...omit(['isError'], queryData),
128
83
  isError: (queryData.data as ResponseError | undefined)?.isError || false,
129
- isMutating: queryData.isPending
84
+ isMutating: queryData.isLoading,
85
+ mutate: queryData.mutate,
86
+ mutateAsync: queryData.mutateAsync
130
87
  };
131
88
  };
132
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> => {