@centreon/ui 23.10.122 → 24.4.0

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 (360) hide show
  1. package/package.json +64 -45
  2. package/public/mockServiceWorker.js +2 -2
  3. package/src/ActionsList/ActionsList.styles.ts +40 -71
  4. package/src/Button/Icon/index.stories.tsx +1 -1
  5. package/src/Button/Icon/index.tsx +2 -2
  6. package/src/Button/Save/StartIcon.tsx +3 -3
  7. package/src/Button/Save/index.tsx +9 -5
  8. package/src/Checkbox/Checkbox.tsx +2 -2
  9. package/src/Checkbox/CheckboxGroup/index.tsx +2 -2
  10. package/src/Checkbox/fonts/roboto-bold-webfont.ttf +0 -0
  11. package/src/Checkbox/fonts/roboto-bold-webfont.woff +0 -0
  12. package/src/Checkbox/fonts/roboto-bold-webfont.woff2 +0 -0
  13. package/src/Checkbox/fonts/roboto-light-webfont.ttf +0 -0
  14. package/src/Checkbox/fonts/roboto-light-webfont.woff +0 -0
  15. package/src/Checkbox/fonts/roboto-light-webfont.woff2 +0 -0
  16. package/src/Checkbox/fonts/roboto-medium-webfont.ttf +0 -0
  17. package/src/Checkbox/fonts/roboto-medium-webfont.woff +0 -0
  18. package/src/Checkbox/fonts/roboto-medium-webfont.woff2 +0 -0
  19. package/src/Checkbox/fonts/roboto-regular-webfont.ttf +0 -0
  20. package/src/Checkbox/fonts/roboto-regular-webfont.woff +0 -0
  21. package/src/Checkbox/fonts/roboto-regular-webfont.woff2 +0 -0
  22. package/src/Dashboard/Dashboard.styles.ts +6 -5
  23. package/src/Dashboard/Item.tsx +1 -1
  24. package/src/Dashboard/Layout.tsx +2 -2
  25. package/src/Dashboard/utils.ts +1 -1
  26. package/src/Dialog/Confirm/index.tsx +10 -2
  27. package/src/Dialog/UnsavedChanges/index.tsx +21 -20
  28. package/src/Dialog/UnsavedChanges/translatedLabels.ts +4 -6
  29. package/src/Dialog/index.tsx +9 -2
  30. package/src/FallbackPage/FallbackPage.tsx +3 -3
  31. package/src/FileDropZone/index.tsx +3 -1
  32. package/src/Form/Form.cypress.spec.tsx +133 -0
  33. package/src/Form/Inputs/Grid.tsx +8 -4
  34. package/src/Form/Inputs/List/Content.tsx +62 -0
  35. package/src/Form/Inputs/List/List.styles.ts +29 -0
  36. package/src/Form/Inputs/List/List.tsx +58 -0
  37. package/src/Form/Inputs/List/useList.ts +81 -0
  38. package/src/Form/Inputs/Text.tsx +3 -1
  39. package/src/Form/Inputs/index.tsx +3 -1
  40. package/src/Form/Inputs/models.ts +23 -13
  41. package/src/Graph/BarStack/BarStack.cypress.spec.tsx +217 -0
  42. package/src/Graph/BarStack/BarStack.stories.tsx +125 -0
  43. package/src/Graph/BarStack/BarStack.styles.ts +66 -0
  44. package/src/Graph/BarStack/BarStack.tsx +14 -0
  45. package/src/Graph/BarStack/Graph.tsx +176 -0
  46. package/src/Graph/BarStack/GraphAndLegend.tsx +119 -0
  47. package/src/Graph/BarStack/ResponsiveBarStack.tsx +114 -0
  48. package/src/Graph/BarStack/constants.ts +5 -0
  49. package/src/Graph/BarStack/index.ts +1 -0
  50. package/src/Graph/BarStack/models.ts +19 -0
  51. package/src/Graph/BarStack/useGraphAndLegend.ts +86 -0
  52. package/src/Graph/BarStack/useResponsiveBarStack.ts +106 -0
  53. package/src/Graph/Gauge/Gauge.cypress.spec.tsx +102 -0
  54. package/src/Graph/Gauge/Gauge.tsx +1 -1
  55. package/src/Graph/HeatMap/HeatMap.cypress.spec.tsx +145 -0
  56. package/src/Graph/HeatMap/HeatMap.stories.tsx +0 -25
  57. package/src/Graph/HeatMap/HeatMap.styles.tsx +1 -0
  58. package/src/Graph/HeatMap/ResponsiveHeatMap.tsx +39 -12
  59. package/src/Graph/HeatMap/model.ts +6 -1
  60. package/src/Graph/Legend/Legend.styles.ts +10 -0
  61. package/src/Graph/Legend/Legend.tsx +26 -0
  62. package/src/Graph/Legend/index.ts +1 -0
  63. package/src/Graph/Legend/models.ts +11 -0
  64. package/src/Graph/LineChart/BasicComponents/Lines/RegularLines/index.tsx +2 -1
  65. package/src/Graph/LineChart/BasicComponents/Lines/StackedLines/index.tsx +3 -4
  66. package/src/Graph/LineChart/BasicComponents/Lines/Threshold/Circle.tsx +2 -2
  67. package/src/Graph/LineChart/BasicComponents/ThresholdLine.tsx +3 -1
  68. package/src/Graph/LineChart/BasicComponents/Thresholds.tsx +2 -2
  69. package/src/Graph/LineChart/BasicComponents/useFilterLines.ts +3 -5
  70. package/src/Graph/LineChart/Header/index.tsx +3 -31
  71. package/src/Graph/LineChart/Icons/Downtime.tsx +3 -3
  72. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/GuidingLines.tsx +2 -2
  73. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/useTickGraph.ts +9 -11
  74. package/src/Graph/LineChart/InteractiveComponents/Annotations/EventAnnotations.tsx +1 -1
  75. package/src/Graph/LineChart/InteractiveComponents/GraphValueTooltip/GraphValueTooltip.tsx +68 -0
  76. package/src/Graph/LineChart/InteractiveComponents/GraphValueTooltip/useGraphValueTooltip.ts +27 -0
  77. package/src/Graph/LineChart/InteractiveComponents/GraphValueTooltip/useGraphValueTooltipStyles.ts +31 -0
  78. package/src/Graph/LineChart/InteractiveComponents/ZoomPreview/index.tsx +2 -1
  79. package/src/Graph/LineChart/InteractiveComponents/index.tsx +132 -17
  80. package/src/Graph/LineChart/InteractiveComponents/interactionWithGraphAtoms.ts +7 -27
  81. package/src/Graph/LineChart/Legend/Legend.styles.ts +85 -32
  82. package/src/Graph/LineChart/Legend/LegendContent.tsx +12 -6
  83. package/src/Graph/LineChart/Legend/LegendHeader.tsx +66 -27
  84. package/src/Graph/LineChart/Legend/index.tsx +43 -46
  85. package/src/Graph/LineChart/Legend/models.ts +5 -0
  86. package/src/Graph/LineChart/Legend/useLegend.ts +12 -13
  87. package/src/Graph/LineChart/LineChart.cypress.spec.tsx +144 -0
  88. package/src/Graph/LineChart/LineChart.styles.ts +8 -0
  89. package/src/Graph/LineChart/LineChart.tsx +125 -123
  90. package/src/Graph/LineChart/LoadingSkeleton.tsx +2 -2
  91. package/src/Graph/LineChart/helpers/doc.ts +16 -13
  92. package/src/Graph/LineChart/helpers/index.ts +1 -1
  93. package/src/Graph/LineChart/index.stories.tsx +17 -2
  94. package/src/Graph/LineChart/index.tsx +6 -7
  95. package/src/Graph/LineChart/mockedData/curvesWithSameColor.json +252 -0
  96. package/src/Graph/LineChart/mockedData/lastDayWithIncompleteValues.json +1320 -0
  97. package/src/Graph/LineChart/mockedData/lastDayWithNullValues.json +1314 -0
  98. package/src/Graph/LineChart/models.ts +12 -1
  99. package/src/Graph/LineChart/useLineChartData.ts +68 -18
  100. package/src/Graph/PieChart/PieChart.cypress.spec.tsx +154 -0
  101. package/src/Graph/PieChart/PieChart.stories.tsx +194 -0
  102. package/src/Graph/PieChart/PieChart.styles.ts +39 -0
  103. package/src/Graph/PieChart/PieChart.tsx +14 -0
  104. package/src/Graph/PieChart/ResponsivePie.tsx +245 -0
  105. package/src/Graph/PieChart/index.ts +1 -0
  106. package/src/Graph/PieChart/models.ts +20 -0
  107. package/src/Graph/PieChart/useResponsivePie.ts +81 -0
  108. package/src/Graph/SingleBar/SingleBar.cypress.spec.tsx +121 -0
  109. package/src/Graph/SingleBar/Thresholds.tsx +2 -2
  110. package/src/Graph/Text/Text.cypress.spec.tsx +101 -0
  111. package/src/Graph/Text/Text.stories.tsx +60 -4
  112. package/src/Graph/Text/Text.styles.ts +12 -1
  113. package/src/Graph/Text/Text.tsx +17 -12
  114. package/src/Graph/Tree/DescendantNodes.tsx +88 -0
  115. package/src/Graph/Tree/Links.tsx +64 -0
  116. package/src/Graph/Tree/StandaloneTree.tsx +32 -0
  117. package/src/Graph/Tree/Tree.cypress.spec.tsx +171 -0
  118. package/src/Graph/Tree/Tree.stories.tsx +144 -0
  119. package/src/Graph/Tree/Tree.tsx +116 -0
  120. package/src/Graph/Tree/constants.ts +2 -0
  121. package/src/Graph/Tree/index.ts +4 -0
  122. package/src/Graph/Tree/models.ts +52 -0
  123. package/src/Graph/Tree/stories/contents.tsx +164 -0
  124. package/src/Graph/Tree/stories/datas.ts +305 -0
  125. package/src/Graph/Tree/utils.ts +49 -0
  126. package/src/Graph/common/testUtils.ts +71 -0
  127. package/src/Graph/common/timeSeries/index.ts +53 -15
  128. package/src/Graph/common/utils.ts +69 -1
  129. package/src/Graph/index.ts +4 -0
  130. package/src/Icon/BaseIcon.tsx +32 -0
  131. package/src/Icon/DowntimeIcon.tsx +14 -0
  132. package/src/InputField/Number/Number.cypress.spec.tsx +85 -0
  133. package/src/InputField/Number/Number.stories.tsx +66 -0
  134. package/src/InputField/Number/Number.tsx +74 -0
  135. package/src/InputField/Search/index.tsx +2 -2
  136. package/src/InputField/Select/Autocomplete/Connected/Multi/index.test.tsx +22 -1
  137. package/src/InputField/Select/Autocomplete/Connected/index.test.tsx +3 -2
  138. package/src/InputField/Select/Autocomplete/Connected/index.tsx +35 -17
  139. package/src/InputField/Select/Autocomplete/Draggable/SortableList.tsx +1 -1
  140. package/src/InputField/Select/Autocomplete/Draggable/SortableListContent.tsx +1 -1
  141. package/src/InputField/Select/Autocomplete/Draggable/index.tsx +1 -1
  142. package/src/InputField/Select/Autocomplete/Multi/index.stories.tsx +19 -0
  143. package/src/InputField/Select/Autocomplete/Multi/index.tsx +12 -7
  144. package/src/InputField/Select/Autocomplete/index.tsx +129 -116
  145. package/src/InputField/Select/IconPopover/index.tsx +3 -3
  146. package/src/InputField/Select/index.tsx +15 -2
  147. package/src/InputField/Text/index.tsx +53 -46
  148. package/src/Listing/ActionBar/index.tsx +11 -10
  149. package/src/Listing/Cell/DataCell.styles.ts +3 -0
  150. package/src/Listing/Cell/DataCell.tsx +23 -5
  151. package/src/Listing/Header/ListingHeader.tsx +1 -1
  152. package/src/Listing/Listing.cypress.spec.tsx +218 -33
  153. package/src/Listing/Listing.styles.ts +4 -7
  154. package/src/Listing/Row/Row.tsx +7 -3
  155. package/src/Listing/index.stories.tsx +39 -5
  156. package/src/Listing/index.test.tsx +1 -1
  157. package/src/Listing/index.tsx +207 -149
  158. package/src/Listing/models.ts +1 -0
  159. package/src/Listing/useStyleTable.ts +1 -0
  160. package/src/Module/LicensedModule/LicenseCheck/index.tsx +24 -9
  161. package/src/Module/LicensedModule/index.tsx +7 -1
  162. package/src/Module/Module.cypress.spec.tsx +129 -0
  163. package/src/Module/index.tsx +2 -4
  164. package/src/Panel/index.tsx +1 -1
  165. package/src/PopoverMenu/index.tsx +9 -8
  166. package/src/RichTextEditor/ContentEditable.tsx +195 -195
  167. package/src/RichTextEditor/RichTextEditor.tsx +12 -1
  168. package/src/SortableItems/index.tsx +2 -7
  169. package/src/StoryBookThemeProvider/index.tsx +35 -36
  170. package/src/ThemeProvider/index.tsx +39 -12
  171. package/src/ThemeProvider/palettes.ts +15 -12
  172. package/src/TimePeriods/CustomTimePeriod/CompactCustomTimePeriod.styles.ts +6 -7
  173. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/PickersStartEndDate.tsx +10 -6
  174. package/src/TimePeriods/CustomTimePeriod/PopoverCustomTimePeriod/models.ts +0 -2
  175. package/src/TimePeriods/DateTimePickerInput.tsx +59 -19
  176. package/src/TimePeriods/ResolutionTimePeriod.cypress.spec.tsx +12 -9
  177. package/src/TimePeriods/TimePeriods.cypress.spec.tsx +9 -33
  178. package/src/TimePeriods/helpers/index.ts +1 -1
  179. package/src/TimePeriods/index.stories.tsx +12 -4
  180. package/src/TimePeriods/index.tsx +2 -2
  181. package/src/TopCounterElements/TopCounterLayout.tsx +3 -0
  182. package/src/TopCounterElements/useCloseOnLegacyPage.tsx +42 -0
  183. package/src/Typography/FluidTypography/FluidTypography.cypress.spec.tsx +27 -0
  184. package/src/Typography/FluidTypography/index.stories.tsx +2 -2
  185. package/src/Typography/FluidTypography/index.tsx +21 -28
  186. package/src/Typography/Subtitle.tsx +55 -0
  187. package/src/api/QueryProvider.tsx +1 -1
  188. package/src/api/TestQueryProvider.tsx +1 -1
  189. package/src/api/buildListingEndpoint/getSearchQueryParameterValue.ts +7 -1
  190. package/src/api/buildListingEndpoint/models.ts +3 -1
  191. package/src/api/customFetch.ts +12 -3
  192. package/src/api/index.ts +3 -3
  193. package/src/api/useFetchQuery/index.ts +49 -28
  194. package/src/api/useGraphQuery/index.ts +26 -5
  195. package/src/api/useGraphQuery/models.ts +5 -0
  196. package/src/api/useMutationQuery/index.test.ts +4 -4
  197. package/src/api/useMutationQuery/index.ts +65 -20
  198. package/src/components/Button/Icon/IconButton.tsx +6 -2
  199. package/src/components/CollapsibleItem/CollapsibleItem.cypress.spec.tsx +76 -0
  200. package/src/components/CollapsibleItem/CollapsibleItem.stories.tsx +26 -0
  201. package/src/components/CollapsibleItem/CollapsibleItem.tsx +43 -14
  202. package/src/components/CollapsibleItem/useCollapsibleItemStyles.ts +24 -1
  203. package/src/components/DataTable/DataListing.tsx +6 -0
  204. package/src/components/DataTable/DataTable.cypress.spec.tsx +174 -0
  205. package/src/components/DataTable/DataTable.stories.tsx +40 -0
  206. package/src/components/DataTable/DataTable.styles.ts +3 -0
  207. package/src/components/DataTable/DataTable.tsx +3 -3
  208. package/src/components/DataTable/Item/DataTableItem.styles.ts +7 -2
  209. package/src/components/DataTable/Item/DataTableItem.tsx +4 -60
  210. package/src/components/DataTable/index.ts +3 -1
  211. package/src/components/Form/AccessRights/AccessRights.cypress.spec.tsx +373 -0
  212. package/src/components/Form/AccessRights/AccessRights.stories.tsx +119 -0
  213. package/src/components/Form/AccessRights/AccessRights.styles.ts +10 -0
  214. package/src/components/Form/AccessRights/AccessRights.tsx +60 -0
  215. package/src/components/Form/AccessRights/Actions/Actions.styles.ts +14 -0
  216. package/src/components/Form/AccessRights/Actions/Actions.tsx +81 -0
  217. package/src/components/Form/AccessRights/Actions/useActions.ts +79 -0
  218. package/src/components/Form/AccessRights/List/Item.tsx +90 -0
  219. package/src/components/Form/AccessRights/List/List.styles.tsx +45 -0
  220. package/src/components/Form/AccessRights/List/List.tsx +52 -0
  221. package/src/components/Form/AccessRights/List/ListItemSkeleton.tsx +18 -0
  222. package/src/components/Form/AccessRights/List/ListSkeleton.tsx +22 -0
  223. package/src/components/Form/AccessRights/List/RemoveAccessRight.tsx +38 -0
  224. package/src/components/Form/AccessRights/List/StateChip.tsx +28 -0
  225. package/src/components/Form/AccessRights/List/useItem.ts +64 -0
  226. package/src/components/Form/AccessRights/Provider.tsx +15 -0
  227. package/src/components/Form/AccessRights/ShareInput/ContactSwitch.tsx +50 -0
  228. package/src/components/Form/AccessRights/ShareInput/ShareInput.styles.ts +17 -0
  229. package/src/components/Form/AccessRights/ShareInput/ShareInput.tsx +78 -0
  230. package/src/components/Form/AccessRights/ShareInput/useShareInput.tsx +113 -0
  231. package/src/components/Form/AccessRights/Stats/Stats.tsx +36 -0
  232. package/src/components/Form/AccessRights/atoms.ts +97 -0
  233. package/src/components/Form/AccessRights/common/RoleSelectField.styles.tsx +7 -0
  234. package/src/components/Form/AccessRights/common/RoleSelectField.tsx +45 -0
  235. package/src/components/Form/AccessRights/models.ts +55 -0
  236. package/src/components/Form/AccessRights/storiesData.ts +222 -0
  237. package/src/components/Form/AccessRights/useAccessRightsInitValues.ts +51 -0
  238. package/src/components/Form/Dashboard/DashboardDuplicationForm.tsx +85 -0
  239. package/src/components/Form/Dashboard/DashboardForm.tsx +15 -12
  240. package/src/components/Form/Dashboard/index.ts +1 -0
  241. package/src/components/Form/FormActions.tsx +7 -2
  242. package/src/components/Form/index.ts +2 -1
  243. package/src/components/ItemComposition/Item.tsx +1 -1
  244. package/src/components/ItemComposition/ItemComposition.cypress.spec.tsx +113 -0
  245. package/src/components/ItemComposition/ItemComposition.stories.tsx +14 -0
  246. package/src/components/ItemComposition/ItemComposition.styles.ts +36 -3
  247. package/src/components/ItemComposition/ItemComposition.tsx +41 -17
  248. package/src/components/Layout/PageLayout/PageLayout.tsx +1 -1
  249. package/src/components/Layout/PageLayout/PageLayoutActions.tsx +1 -0
  250. package/src/components/Layout/PageLayout/PageLayoutBody.tsx +1 -0
  251. package/src/components/Layout/PageLayout/PageLayoutHeader.tsx +5 -1
  252. package/src/components/Layout/PageLayout/PageQuickAccess.tsx +76 -0
  253. package/src/components/Layout/PageLayout/index.ts +3 -1
  254. package/src/components/Layout/PageLayout.cypress.spec.tsx +66 -0
  255. package/src/components/List/Item/ListItem.styles.ts +6 -0
  256. package/src/components/List/Item/ListItem.tsx +6 -4
  257. package/src/components/List/Item/Text.tsx +5 -3
  258. package/src/components/Modal/ConfirmationModal/ConfirmationModal.cypress.spec.tsx +168 -0
  259. package/src/components/Modal/ConfirmationModal/ConfirmationModal.stories.tsx +62 -0
  260. package/src/components/Modal/ConfirmationModal/ConfirmationModal.tsx +87 -0
  261. package/src/components/Modal/Modal.styles.ts +10 -2
  262. package/src/components/Modal/ModalActions.tsx +4 -2
  263. package/src/components/Modal/index.ts +2 -0
  264. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.stories.tsx +3 -3
  265. package/src/components/Tooltip/ConfirmationTooltip/ConfirmationTooltip.tsx +1 -1
  266. package/src/components/Tooltip/ConfirmationTooltip/models.ts +1 -1
  267. package/src/components/Zoom/Minimap.tsx +127 -0
  268. package/src/components/Zoom/Zoom.cypress.spec.tsx +246 -0
  269. package/src/components/Zoom/Zoom.stories.tsx +115 -0
  270. package/src/components/Zoom/Zoom.styles.tsx +68 -0
  271. package/src/components/Zoom/Zoom.tsx +61 -0
  272. package/src/components/Zoom/ZoomContent.tsx +167 -0
  273. package/src/components/Zoom/constants.ts +2 -0
  274. package/src/components/Zoom/localPoint.ts +51 -0
  275. package/src/components/Zoom/models.ts +25 -0
  276. package/src/components/Zoom/useMinimap.ts +156 -0
  277. package/src/components/Zoom/useZoom.ts +70 -0
  278. package/src/components/Zoom/utils.ts +55 -0
  279. package/src/components/index.ts +1 -0
  280. package/src/fonts/roboto-bold-webfont.ttf +0 -0
  281. package/src/fonts/roboto-bold-webfont.woff +0 -0
  282. package/src/fonts/roboto-bold-webfont.woff2 +0 -0
  283. package/src/fonts/roboto-light-webfont.ttf +0 -0
  284. package/src/fonts/roboto-light-webfont.woff +0 -0
  285. package/src/fonts/roboto-light-webfont.woff2 +0 -0
  286. package/src/fonts/roboto-medium-webfont.ttf +0 -0
  287. package/src/fonts/roboto-medium-webfont.woff +0 -0
  288. package/src/fonts/roboto-medium-webfont.woff2 +0 -0
  289. package/src/fonts/roboto-regular-webfont.ttf +0 -0
  290. package/src/fonts/roboto-regular-webfont.woff +0 -0
  291. package/src/fonts/roboto-regular-webfont.woff2 +0 -0
  292. package/src/index.ts +6 -0
  293. package/src/queryParameters/url/index.ts +5 -1
  294. package/src/utils/index.ts +25 -22
  295. package/src/utils/useFullscreen/Fullscreen.cypress.spec.tsx +133 -0
  296. package/src/utils/useFullscreen/atoms.ts +3 -0
  297. package/src/utils/useFullscreen/index.ts +2 -0
  298. package/src/utils/useFullscreen/translatedLabels.ts +1 -0
  299. package/src/utils/useFullscreen/useFullscreen.ts +73 -0
  300. package/src/utils/useFullscreen/useFullscreenListener.ts +62 -0
  301. package/src/utils/useInfiniteScrollListing.ts +31 -8
  302. package/src/utils/{useLicenseExpirationWarning.cypress.spec.tsx → useLicenseExpirationWarning.test.tsx} +48 -37
  303. package/src/utils/useLicenseExpirationWarning.ts +18 -18
  304. package/src/utils/useLocale/index.ts +10 -0
  305. package/src/utils/useLocale/useLocale.cypress.spec.tsx +40 -0
  306. package/src/utils/useLocaleDateTimeFormat/index.ts +8 -2
  307. package/src/utils/usePluralizedTranslation.ts +21 -0
  308. package/src/@assets/icons/downtime.icon.svg +0 -1
  309. package/src/Graph/LineChart/BasicComponents/LoadingProgress.tsx +0 -46
  310. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/TooltipAnchorPoint.tsx +0 -96
  311. package/src/Graph/LineChart/InteractiveComponents/AnchorPoint/useTooltipAnchorPoint.ts +0 -107
  312. package/src/Graph/LineChart/Legend/InteractiveValue.tsx +0 -22
  313. package/src/Graph/LineChart/Legend/Marker.tsx +0 -43
  314. package/src/Graph/LineChart/Legend/useInteractiveValues.ts +0 -99
  315. package/src/Typography/FluidTypography/useFluidResizeObserver.ts +0 -56
  316. package/src/components/Form/AccessRights/AccessRights.resource.ts +0 -45
  317. package/src/components/Form/AccessRights/AccessRightsForm.stories.tsx +0 -59
  318. package/src/components/Form/AccessRights/AccessRightsForm.styles.ts +0 -21
  319. package/src/components/Form/AccessRights/AccessRightsForm.tsx +0 -67
  320. package/src/components/Form/AccessRights/AccessRightsFormActions.tsx +0 -80
  321. package/src/components/Form/AccessRights/Input/AddAction.tsx +0 -31
  322. package/src/components/Form/AccessRights/Input/ContactAccessRightInput.stories.tsx +0 -54
  323. package/src/components/Form/AccessRights/Input/ContactAccessRightInput.tsx +0 -72
  324. package/src/components/Form/AccessRights/Input/ContactAccessRightsInput.styles.ts +0 -22
  325. package/src/components/Form/AccessRights/Input/ContactInputField.tsx +0 -105
  326. package/src/components/Form/AccessRights/Input/RoleInputField.tsx +0 -29
  327. package/src/components/Form/AccessRights/List/ContactAccessRightsList.stories.tsx +0 -97
  328. package/src/components/Form/AccessRights/List/ContactAccessRightsList.styles.ts +0 -71
  329. package/src/components/Form/AccessRights/List/ContactAccessRightsList.tsx +0 -51
  330. package/src/components/Form/AccessRights/List/ContactAccessRightsListItem.stories.tsx +0 -116
  331. package/src/components/Form/AccessRights/List/ContactAccessRightsListItem.tsx +0 -118
  332. package/src/components/Form/AccessRights/List/ContactAccessRightsListItemSkeleton.tsx +0 -26
  333. package/src/components/Form/AccessRights/List/ContactAccessRightsListSkeleton.tsx +0 -28
  334. package/src/components/Form/AccessRights/Stats/AccessRightsStats.styles.ts +0 -18
  335. package/src/components/Form/AccessRights/Stats/AccessRightsStats.tsx +0 -41
  336. package/src/components/Form/AccessRights/__fixtures__/contactAccessRight.mock.ts +0 -52
  337. package/src/components/Form/AccessRights/common/GroupLabel.styles.ts +0 -18
  338. package/src/components/Form/AccessRights/common/GroupLabel.tsx +0 -15
  339. package/src/components/Form/AccessRights/common/Input.styles.ts +0 -48
  340. package/src/components/Form/AccessRights/common/RoleInputSelect.styles.ts +0 -11
  341. package/src/components/Form/AccessRights/common/RoleInputSelect.tsx +0 -57
  342. package/src/components/Form/AccessRights/index.ts +0 -3
  343. package/src/components/Form/AccessRights/useAccessRightsForm.test.tsx +0 -531
  344. package/src/components/Form/AccessRights/useAccessRightsForm.tsx +0 -282
  345. package/src/components/Form/AccessRights/useAccessRightsForm.utils.ts +0 -41
  346. package/src/screens/dashboard/DashboardsDetail.stories.tsx +0 -108
  347. package/src/screens/dashboard/DashboardsOverview.stories.tsx +0 -281
  348. package/src/utils/useDateTimePickerAdapter.ts +0 -309
  349. /package/{public → src/Button}/fonts/roboto-bold-webfont.ttf +0 -0
  350. /package/{public → src/Button}/fonts/roboto-bold-webfont.woff +0 -0
  351. /package/{public → src/Button}/fonts/roboto-bold-webfont.woff2 +0 -0
  352. /package/{public → src/Button}/fonts/roboto-light-webfont.ttf +0 -0
  353. /package/{public → src/Button}/fonts/roboto-light-webfont.woff +0 -0
  354. /package/{public → src/Button}/fonts/roboto-light-webfont.woff2 +0 -0
  355. /package/{public → src/Button}/fonts/roboto-medium-webfont.ttf +0 -0
  356. /package/{public → src/Button}/fonts/roboto-medium-webfont.woff +0 -0
  357. /package/{public → src/Button}/fonts/roboto-medium-webfont.woff2 +0 -0
  358. /package/{public → src/Button}/fonts/roboto-regular-webfont.ttf +0 -0
  359. /package/{public → src/Button}/fonts/roboto-regular-webfont.woff +0 -0
  360. /package/{public → src/Button}/fonts/roboto-regular-webfont.woff2 +0 -0
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "@centreon/ui",
3
- "version": "23.10.122",
3
+ "version": "24.4.0",
4
4
  "description": "Centreon UI Components",
5
5
  "scripts": {
6
+ "update:deps": "pnpx npm-check-updates -i --format group",
6
7
  "eslint": "eslint ./src --ext .js,.jsx,.ts,.tsx --max-warnings 0",
7
8
  "eslint:fix": "pnpm eslint --fix",
8
9
  "storybook": "storybook dev -p 9001 -c .storybook",
@@ -12,6 +13,7 @@
12
13
  "test:ci": "jest --silent --reporter=jest-junit",
13
14
  "cypress:ui": "cypress open --component --browser=chrome",
14
15
  "cypress:cli:updateSnapshot": "pnpm cypress:cli --env updateSnapshots=true",
16
+ "cypress:run:coverage": "cypress run --component --browser=chrome --env codeCoverageTasksRegistered=true",
15
17
  "cypress:cli": "cypress run --component --browser=chrome",
16
18
  "tokens:transform": "TS_NODE_PROJECT=tsconfig.node.json ts-node style-dictionary.transform.ts"
17
19
  },
@@ -27,6 +29,7 @@
27
29
  "author": {
28
30
  "name": "centreon@centreon.com"
29
31
  },
32
+ "baseCodeCoveragePercentage": 60,
30
33
  "license": "GPL-2.0",
31
34
  "bugs": {
32
35
  "url": "https://github.com/centreon/centreon/issues"
@@ -46,85 +49,98 @@
46
49
  "test/*"
47
50
  ],
48
51
  "devDependencies": {
49
- "@cypress/react": "^7.0.2",
50
- "@cypress/webpack-dev-server": "^3.2.3",
51
- "@faker-js/faker": "^8.0.2",
52
- "@mdx-js/react": "^2.1.4",
53
- "@simonsmith/cypress-image-snapshot": "^6.1.0",
52
+ "@cypress/react": "^8.0.0",
53
+ "@cypress/webpack-dev-server": "^3.7.4",
54
+ "@faker-js/faker": "^8.4.1",
55
+ "@mdx-js/react": "^3.1.0",
56
+ "@simonsmith/cypress-image-snapshot": "^9.1.0",
54
57
  "@storybook/addon-a11y": "^7.0.9",
55
58
  "@storybook/addon-docs": "^7.0.9",
56
59
  "@storybook/addon-essentials": "^7.0.9",
57
60
  "@storybook/addon-interactions": "^7.0.9",
58
- "@storybook/addon-styling": "^1.0.6",
61
+ "@storybook/addon-styling": "^1.3.7",
59
62
  "@storybook/blocks": "^7.0.26",
60
63
  "@storybook/builder-vite": "^7.0.9",
61
64
  "@storybook/jest": "^0.1.0",
62
65
  "@storybook/manager-api": "^7.0.9",
63
- "@storybook/mdx2-csf": "^1.0.0",
66
+ "@storybook/mdx2-csf": "^1.1.0",
64
67
  "@storybook/preview-api": "^7.0.9",
65
68
  "@storybook/react": "^7.0.9",
66
69
  "@storybook/react-vite": "^7.0.9",
67
- "@storybook/test-runner": "^0.10.0",
70
+ "@storybook/test-runner": "^0.16.0",
68
71
  "@storybook/testing-library": "^0.1.0",
69
72
  "@storybook/theming": "^7.0.9",
70
73
  "@testing-library/cypress": "^8.0.7",
71
74
  "@testing-library/jest-dom": "^5.16.5",
72
75
  "@testing-library/react": "^13.4.0",
73
76
  "@testing-library/react-hooks": "^8.0.1",
74
- "@types/cypress": "^1.1.3",
75
- "@types/jest": "^27.5.0",
76
- "@types/ramda": "^0.28.12",
77
- "@types/react": "^18.0.26",
78
- "@types/testing-library__jest-dom": "^5.14.6",
79
- "@vitejs/plugin-react": "^4.0.0",
80
- "@vitejs/plugin-react-swc": "^3.3.0",
81
- "axios-mock-adapter": "^1.21.4",
82
- "cypress": "^12.8.0",
77
+ "@types/jest": "^29.5.14",
78
+ "@types/mocha": "^10.0.10",
79
+ "@types/ramda": "^0.29.9",
80
+ "@types/react": "^18.2.65",
81
+ "@types/testing-library__jest-dom": "^6.0.0",
82
+ "@vitejs/plugin-react": "^4.3.4",
83
+ "@vitejs/plugin-react-swc": "^3.8.0",
84
+ "axios-mock-adapter": "^1.22.0",
85
+ "cypress": "^13.7.1",
83
86
  "identity-obj-proxy": "^3.0.0",
84
87
  "jest-transform-stub": "^2.0.0",
85
88
  "mochawesome": "^7.1.3",
89
+ "msw": "1.3.2",
90
+ "msw-storybook-addon": "^1.10.0",
91
+ "playwright": "^1.50.1",
86
92
  "puppeteer": "^13.7.0",
87
93
  "react": "^18.2.0",
88
94
  "react-dom": "^18.2.0",
89
95
  "react-test-renderer": "^18.2.0",
90
96
  "remark-gfm": "^3.0.1",
91
- "sass": "^1.62.1",
92
97
  "speed-measure-vite-plugin": "^0.1.2",
93
- "storybook": "^7.0.9",
94
- "storybook-addon-mock": "^4.0.0",
95
- "storybook-dark-mode": "^3.0.0",
96
- "style-dictionary": "^3.8.0",
97
- "ts-node": "^10.9.1",
98
+ "storybook": "^7.6.8",
99
+ "storybook-addon-mock": "^4.3.0",
100
+ "storybook-dark-mode": "^3.0.3",
101
+ "style-dictionary": "^3.9.2",
102
+ "ts-node": "^10.9.2",
98
103
  "use-resize-observer": "^9.1.0",
99
104
  "vite": "^4.3.5",
105
+ "vite-plugin-istanbul": "^5.0.0",
100
106
  "vite-plugin-svgr": "^3.2.0",
101
- "vite-plugin-turbosnap": "^1.0.2"
107
+ "vite-plugin-turbosnap": "^1.0.3"
102
108
  },
103
109
  "dependencies": {
104
- "@lexical/link": "0.11.3",
105
- "@lexical/list": "^0.11.3",
106
- "@lexical/react": "0.11.3",
107
- "@lexical/rich-text": "^0.11.3",
108
- "@lexical/selection": "0.11.3",
109
- "@lexical/utils": "0.11.3",
110
- "@react-spring/web": "^9.7.3",
110
+ "@lexical/html": "^0.12.6",
111
+ "@lexical/link": "^0.12.6",
112
+ "@lexical/list": "^0.12.6",
113
+ "@lexical/react": "^0.12.6",
114
+ "@lexical/rich-text": "^0.12.6",
115
+ "@lexical/selection": "^0.12.6",
116
+ "@lexical/utils": "^0.12.6",
117
+ "@react-spring/web": "^9.7.5",
118
+ "@visx/clip-path": "^3.12.0",
111
119
  "@visx/curve": "^2.1.0",
112
- "@visx/group": "^3.3.0",
113
- "@visx/pattern": "^3.0.0",
114
- "@visx/scale": "^3.0.0",
115
- "@visx/shape": "^2.12.2",
120
+ "@visx/event": "^3.12.0",
121
+ "@visx/group": "^3.12.0",
122
+ "@visx/hierarchy": "^3.12.0",
123
+ "@visx/legend": "^3.12.0",
124
+ "@visx/pattern": "^3.12.0",
125
+ "@visx/point": "^3.12.0",
126
+ "@visx/scale": "^3.12.0",
127
+ "@visx/shape": "^2.18.0",
128
+ "@visx/text": "^3.12.0",
116
129
  "@visx/threshold": "^2.12.2",
117
130
  "@visx/visx": "2.16.0",
131
+ "@visx/zoom": "^3.12.0",
118
132
  "anylogger": "^1.0.11",
119
- "d3-array": "3.2.0",
120
- "humanize-duration": "^3.27.3",
121
- "lexical": "0.11.3",
122
- "notistack": "^2.0.8",
123
- "react-grid-layout": "^1.3.4",
133
+ "d3-array": "3.2.4",
134
+ "humanize-duration": "^3.32.1",
135
+ "lexical": "^0.12.6",
136
+ "notistack": "^3.0.2",
137
+ "numeral": "^2.0.6",
138
+ "ramda": "0.29.1",
139
+ "react-grid-layout": "^1.5.0",
124
140
  "react-html-parser": "^2.0.2",
125
141
  "react-resizable": "^3.0.5",
126
142
  "react-transition-group": "^4.4.5",
127
- "sanitize-html": "^2.10.0",
143
+ "sanitize-html": "^2.14.0",
128
144
  "ulog": "^2.0.0-beta.19"
129
145
  },
130
146
  "peerDependencies": {
@@ -135,8 +151,8 @@
135
151
  "@mui/icons-material": "5.x",
136
152
  "@mui/material": "5.x",
137
153
  "@mui/styles": "5.x",
138
- "@tanstack/react-query": "4.x",
139
- "axios": "0.x",
154
+ "@tanstack/react-query": "5.x",
155
+ "axios": ">= 1.6.4",
140
156
  "dayjs": "1.x",
141
157
  "formik": "2.x",
142
158
  "jotai": "2.x",
@@ -152,5 +168,8 @@
152
168
  "jest-junit": {
153
169
  "suiteName": "jest tests",
154
170
  "output": "./junit.xml"
171
+ },
172
+ "msw": {
173
+ "workerDirectory": "public"
155
174
  }
156
- }
175
+ }
@@ -2,7 +2,7 @@
2
2
  /* tslint:disable */
3
3
 
4
4
  /**
5
- * Mock Service Worker (1.2.1).
5
+ * Mock Service Worker (1.3.2).
6
6
  * @see https://github.com/mswjs/msw
7
7
  * - Please do NOT modify this file.
8
8
  * - Please do NOT serve this file on production.
@@ -300,4 +300,4 @@ function sleep(timeMs) {
300
300
  async function respondWithMock(response) {
301
301
  await sleep(response.delay)
302
302
  return new Response(response.body, response)
303
- }
303
+ }
@@ -1,7 +1,7 @@
1
1
  import { makeStyles } from 'tss-react/mui';
2
2
  import { equals } from 'ramda';
3
3
 
4
- import { Theme, alpha } from '@mui/material';
4
+ import { Theme } from '@mui/material';
5
5
 
6
6
  interface GetBackgroundAndColorProps {
7
7
  status: string;
@@ -18,96 +18,65 @@ export const useStyles = makeStyles()((theme) => ({
18
18
  '& .MuiListItemText-secondary': {
19
19
  textWrap: 'pretty'
20
20
  },
21
- '&[data-variant="error"]': {
21
+
22
+ '&:hover': {
22
23
  '& .MuiListItemIcon-root': {
23
- color: getColor({ status: 'error', theme })
24
- },
24
+ color: getColor({ status: 'info', theme })
25
+ }
26
+ },
27
+ '&[data-variant="error"]': {
25
28
  '&:hover': {
26
- background: alpha(
27
- theme.palette.error.main,
28
- theme.palette.action.focusOpacity
29
- ),
30
- color: getColor({ status: 'error', theme })
31
- },
32
- color: theme.palette.error.main
29
+ '& .MuiListItemIcon-root': {
30
+ color: getColor({ status: 'error', theme })
31
+ }
32
+ }
33
33
  },
34
34
  '&[data-variant="info"]': {
35
- '& .MuiListItemIcon-root': {
36
- color: getColor({ status: 'info', theme })
37
- },
38
35
  '&:hover': {
39
- background: alpha(
40
- theme.palette.info.main,
41
- theme.palette.action.focusOpacity
42
- ),
43
- color: getColor({ status: 'info', theme })
44
- },
45
- color: theme.palette.info.main
36
+ '& .MuiListItemIcon-root': {
37
+ color: getColor({ status: 'info', theme })
38
+ }
39
+ }
46
40
  },
41
+
47
42
  '&[data-variant="pending"]': {
48
- '& .MuiListItemIcon-root': {
49
- color: getColor({ status: 'pending', theme })
50
- },
51
43
  '&:hover': {
52
- background: alpha(
53
- theme.palette.pending.main,
54
- theme.palette.action.focusOpacity
55
- ),
56
- color: getColor({ status: 'pending', theme })
57
- },
58
- color: theme.palette.pending.main
44
+ '& .MuiListItemIcon-root': {
45
+ color: getColor({ status: 'pending', theme })
46
+ }
47
+ }
59
48
  },
49
+
60
50
  '&[data-variant="primary"]': {
61
- '& .MuiListItemIcon-root': {
62
- color: getColor({ status: 'primary', theme })
63
- },
64
51
  '&:hover': {
65
- background: alpha(
66
- theme.palette.primary.main,
67
- theme.palette.action.focusOpacity
68
- ),
69
- color: getColor({ status: 'primary', theme })
70
- },
71
- color: theme.palette.primary.main
52
+ '& .MuiListItemIcon-root': {
53
+ color: getColor({ status: 'primary', theme })
54
+ }
55
+ }
72
56
  },
57
+
73
58
  '&[data-variant="secondary"]': {
74
- '& .MuiListItemIcon-root': {
75
- color: getColor({ status: 'secondary', theme })
76
- },
77
59
  '&:hover': {
78
- background: alpha(
79
- theme.palette.secondary.main,
80
- theme.palette.action.focusOpacity
81
- ),
82
- color: getColor({ status: 'secondary', theme })
83
- },
84
- color: theme.palette.secondary.main
60
+ '& .MuiListItemIcon-root': {
61
+ color: getColor({ status: 'secondary', theme })
62
+ }
63
+ }
85
64
  },
65
+
86
66
  '&[data-variant="success"]': {
87
- '& .MuiListItemIcon-root': {
88
- color: getColor({ status: 'success', theme })
89
- },
90
67
  '&:hover': {
91
- background: alpha(
92
- theme.palette.success.main,
93
- theme.palette.action.focusOpacity
94
- ),
95
- color: getColor({ status: 'success', theme })
96
- },
97
- color: theme.palette.success.main
68
+ '& .MuiListItemIcon-root': {
69
+ color: getColor({ status: 'success', theme })
70
+ }
71
+ }
98
72
  },
73
+
99
74
  '&[data-variant="warning"]': {
100
- '& .MuiListItemIcon-root': {
101
- color: getColor({ status: 'warning', theme })
102
- },
103
75
  '&:hover': {
104
- background: alpha(
105
- theme.palette.warning.main,
106
- theme.palette.action.focusOpacity
107
- ),
108
- color: getColor({ status: 'warning', theme })
109
- },
110
- color: theme.palette.warning.main
76
+ '& .MuiListItemIcon-root': {
77
+ color: getColor({ status: 'warning', theme })
78
+ }
79
+ }
111
80
  }
112
81
  },
113
82
  list: {
@@ -4,7 +4,7 @@ import { makeStyles } from 'tss-react/mui';
4
4
  import AccessibilityIcon from '@mui/icons-material/Accessibility';
5
5
  import { Theme } from '@mui/material';
6
6
 
7
- import IconButton from '.';
7
+ import { IconButton } from '.';
8
8
 
9
9
  const useStyles = makeStyles()((theme: Theme) => ({
10
10
  root: {
@@ -21,7 +21,7 @@ type Props = {
21
21
  ariaLabel?: string;
22
22
  className?: string;
23
23
  onClick: (event) => void;
24
- title?: string;
24
+ title?: string | JSX.Element;
25
25
  tooltipClassName?: string;
26
26
  tooltipPlacement?:
27
27
  | 'bottom'
@@ -38,7 +38,7 @@ type Props = {
38
38
  | 'top-start';
39
39
  } & IconButtonProps;
40
40
 
41
- const IconButton = ({
41
+ export const IconButton = ({
42
42
  title = '',
43
43
  ariaLabel,
44
44
  className,
@@ -15,9 +15,9 @@ interface Props {
15
15
 
16
16
  const StartIcon = ({ startIconConfig }: Props): JSX.Element | null =>
17
17
  cond<Array<StartIconConfigProps>, JSX.Element | null>([
18
- [pipe(propEq('hasLabel', true), not), always(null)],
19
- [propEq('succeeded', true), always(<CheckIcon />)],
20
- [propEq('loading', true), always(<SaveIcon />)],
18
+ [pipe(propEq(true, 'hasLabel'), not), always(null)],
19
+ [propEq(true, 'succeeded'), always(<CheckIcon />)],
20
+ [propEq(true, 'loading'), always(<SaveIcon />)],
21
21
  [T, always(<SaveIcon />)]
22
22
  ])(startIconConfig);
23
23
 
@@ -1,13 +1,13 @@
1
1
  import { any, isEmpty, isNil, not, or, pipe } from 'ramda';
2
2
  import { makeStyles } from 'tss-react/mui';
3
3
 
4
+ import { LoadingButton, LoadingButtonProps } from '@mui/lab';
4
5
  import { Theme, Tooltip } from '@mui/material';
5
- import { LoadingButton } from '@mui/lab';
6
6
 
7
7
  import { getNormalizedId } from '../../utils';
8
8
 
9
- import StartIcon from './StartIcon';
10
9
  import Content from './Content';
10
+ import StartIcon from './StartIcon';
11
11
 
12
12
  const useStyles = makeStyles()((theme: Theme) => ({
13
13
  loadingButton: {
@@ -15,13 +15,14 @@ const useStyles = makeStyles()((theme: Theme) => ({
15
15
  }
16
16
  }));
17
17
 
18
- interface Props extends Record<string, unknown> {
18
+ interface Props {
19
19
  className?: string;
20
20
  labelLoading?: string;
21
21
  labelSave?: string;
22
22
  labelSucceeded?: string;
23
23
  loading?: boolean;
24
24
  size?: 'small' | 'medium' | 'large';
25
+ startIcon?: boolean;
25
26
  succeeded?: boolean;
26
27
  tooltip?: string;
27
28
  tooltipLabel?: string;
@@ -45,8 +46,9 @@ const SaveButton = ({
45
46
  labelSave = '',
46
47
  size = 'small',
47
48
  className,
49
+ startIcon = true,
48
50
  ...rest
49
- }: Props): JSX.Element => {
51
+ }: Props & LoadingButtonProps): JSX.Element => {
50
52
  const { classes, cx } = useStyles();
51
53
  const hasLabel = hasValue([labelLoading, labelSave, labelSucceeded]);
52
54
 
@@ -73,7 +75,9 @@ const SaveButton = ({
73
75
  loading={loading}
74
76
  loadingPosition={labelLoading ? 'start' : 'center'}
75
77
  size={size}
76
- startIcon={<StartIcon startIconConfig={startIconConfig} />}
78
+ startIcon={
79
+ startIcon && <StartIcon startIconConfig={startIconConfig} />
80
+ }
77
81
  variant="contained"
78
82
  {...rest}
79
83
  >
@@ -2,7 +2,7 @@ import { makeStyles } from 'tss-react/mui';
2
2
  import { T, always, cond, equals } from 'ramda';
3
3
 
4
4
  import { SvgIconComponent } from '@mui/icons-material';
5
- import Typography, { TypographyTypeMap } from '@mui/material/Typography';
5
+ import Typography, { TypographyProps } from '@mui/material/Typography';
6
6
  import { FormControlLabel, Checkbox as MuiCheckbox, Box } from '@mui/material';
7
7
 
8
8
  export type LabelPlacement = 'bottom' | 'top' | 'end' | 'start' | undefined;
@@ -56,7 +56,7 @@ interface Props {
56
56
  disabled?: boolean;
57
57
  label: string;
58
58
  labelPlacement?: LabelPlacement;
59
- labelProps?: TypographyTypeMap['props'];
59
+ labelProps?: TypographyProps;
60
60
  onChange?: (e) => void;
61
61
  }
62
62
 
@@ -2,7 +2,7 @@ import { equals, includes } from 'ramda';
2
2
  import { makeStyles } from 'tss-react/mui';
3
3
 
4
4
  import FormGroup, { FormGroupProps } from '@mui/material/FormGroup';
5
- import { TypographyTypeMap } from '@mui/material/Typography';
5
+ import { TypographyProps } from '@mui/material/Typography';
6
6
 
7
7
  import Checkbox, { LabelPlacement } from '../Checkbox';
8
8
 
@@ -13,7 +13,7 @@ interface Props {
13
13
  disabled?: boolean;
14
14
  formGroupProps?: FormGroupProps;
15
15
  labelPlacement?: LabelPlacement;
16
- labelProps?: TypographyTypeMap['props'];
16
+ labelProps?: TypographyProps;
17
17
  onChange?: (e) => void;
18
18
  options: Array<string>;
19
19
  values: Array<string>;
@@ -76,11 +76,12 @@ export const useDashboardItemStyles = makeStyles<{ hasHeader: boolean }>()(
76
76
  border: 'none',
77
77
  borderRadius: theme.spacing(1),
78
78
  height: '100%',
79
- paddingBottom: theme.spacing(2),
80
79
  width: '100%'
81
80
  },
82
81
  widgetContent: {
83
- height: '100%'
82
+ height: hasHeader
83
+ ? `calc(100% - ${theme.spacing(3.5)} - ${theme.spacing(0.5)})`
84
+ : `calc(100% - ${theme.spacing(3.5)})`
84
85
  },
85
86
  widgetHeader: {
86
87
  '&:hover': {
@@ -92,17 +93,17 @@ export const useDashboardItemStyles = makeStyles<{ hasHeader: boolean }>()(
92
93
  '&[data-canMove="true"]': {
93
94
  cursor: 'move'
94
95
  },
95
- padding: theme.spacing(0.5, 2),
96
+ padding: theme.spacing(0, 1.5),
96
97
  position: 'relative'
97
98
  },
98
99
  widgetHeaderDraggable: {
99
100
  height: '100%',
100
101
  position: 'absolute',
101
- width: '100%'
102
+ width: '95%'
102
103
  },
103
104
  widgetPadding: {
104
105
  overflowX: 'auto',
105
- padding: hasHeader ? theme.spacing(1, 2, 0) : theme.spacing(1, 2)
106
+ padding: theme.spacing(0.5, 1.5, 1.5)
106
107
  }
107
108
  })
108
109
  );
@@ -27,7 +27,7 @@ interface DashboardItemProps {
27
27
  style?: CSSProperties;
28
28
  }
29
29
 
30
- const Item = forwardRef(
30
+ const Item = forwardRef<HTMLDivElement, DashboardItemProps>(
31
31
  (
32
32
  {
33
33
  children,
@@ -23,7 +23,7 @@ interface DashboardLayoutProps<T> {
23
23
  layout: Array<T>;
24
24
  }
25
25
 
26
- const Layout = <T extends Layout>({
26
+ const DashboardLayout = <T extends Layout>({
27
27
  children,
28
28
  changeLayout,
29
29
  displayGrid,
@@ -76,4 +76,4 @@ const Layout = <T extends Layout>({
76
76
  });
77
77
  };
78
78
 
79
- export default Layout;
79
+ export default DashboardLayout;
@@ -1,11 +1,11 @@
1
1
  import { lt } from 'ramda';
2
2
  import { Layout } from 'react-grid-layout';
3
3
 
4
- export const maxColumns = 12;
5
4
  const minColumns = 1;
6
5
  const breakpoint = 768;
7
6
 
8
7
  export const rowHeight = 64;
8
+ export const maxColumns = 12;
9
9
 
10
10
  export const getIsSmallScreenSize = (): boolean =>
11
11
  lt(window.innerWidth, breakpoint);
@@ -1,4 +1,4 @@
1
- import { DialogContentText, Typography } from '@mui/material';
1
+ import { ButtonProps, DialogContentText, Typography } from '@mui/material';
2
2
 
3
3
  import Dialog, { Props as DialogProps } from '..';
4
4
 
@@ -6,15 +6,23 @@ type Props = DialogProps & {
6
6
  children?: JSX.Element;
7
7
  labelMessage?: string | null;
8
8
  labelSecondMessage?: string | null;
9
+ restCancelButtonProps?: ButtonProps;
10
+ restConfirmButtonProps?: ButtonProps;
9
11
  };
10
12
 
11
13
  const Confirm = ({
12
14
  labelMessage,
13
15
  labelSecondMessage,
14
16
  children,
17
+ restCancelButtonProps,
18
+ restConfirmButtonProps,
15
19
  ...rest
16
20
  }: Props): JSX.Element => (
17
- <Dialog {...rest}>
21
+ <Dialog
22
+ restCancelButtonProps={restCancelButtonProps}
23
+ restConfirmButtonProps={restConfirmButtonProps}
24
+ {...rest}
25
+ >
18
26
  <DialogContentText>
19
27
  {labelMessage && <Typography>{labelMessage}</Typography>}
20
28
  {labelSecondMessage && <Typography>{labelSecondMessage}</Typography>}