From 7a6ecc327990e2230af92f8ba1ca604807086731 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?An=C3=ADbal=20Svarcas?= Date: Fri, 11 Jul 2025 14:18:53 -0300 Subject: [PATCH] add timeout prop to loading components --- .../src/list/SimpleList/SimpleListLoading.tsx | 4 +++- .../ra-ui-materialui/src/list/datagrid/DatagridLoading.tsx | 4 +++- .../ra-ui-materialui/src/list/datatable/DataTableLoading.tsx | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/ra-ui-materialui/src/list/SimpleList/SimpleListLoading.tsx b/packages/ra-ui-materialui/src/list/SimpleList/SimpleListLoading.tsx index f0f813775e9..0f162ef2f50 100644 --- a/packages/ra-ui-materialui/src/list/SimpleList/SimpleListLoading.tsx +++ b/packages/ra-ui-materialui/src/list/SimpleList/SimpleListLoading.tsx @@ -29,10 +29,11 @@ export const SimpleListLoading = (inProps: SimpleListLoadingProps) => { hasSecondaryText, hasTertiaryText, nbFakeLines = 5, + timeout = 1000, ...rest } = props; - const oneSecondHasPassed = useTimeout(1000); + const oneSecondHasPassed = useTimeout(timeout); return oneSecondHasPassed ? ( @@ -109,6 +110,7 @@ export interface SimpleListLoadingProps extends ListProps { hasSecondaryText?: boolean; hasTertiaryText?: boolean; nbFakeLines?: number; + timeout?: number; } declare module '@mui/material/styles' { diff --git a/packages/ra-ui-materialui/src/list/datagrid/DatagridLoading.tsx b/packages/ra-ui-materialui/src/list/datagrid/DatagridLoading.tsx index bf0404dd4ee..aa84539a424 100644 --- a/packages/ra-ui-materialui/src/list/datagrid/DatagridLoading.tsx +++ b/packages/ra-ui-materialui/src/list/datagrid/DatagridLoading.tsx @@ -26,8 +26,9 @@ const DatagridLoading = ({ nbChildren, nbFakeLines = 5, size, + timeout = 1000, }: DatagridLoadingProps) => { - const oneSecondHasPassed = useTimeout(1000); + const oneSecondHasPassed = useTimeout(timeout); if (!oneSecondHasPassed) return null; return (
@@ -128,6 +129,7 @@ export interface DatagridLoadingProps { nbChildren: number; nbFakeLines?: number; size?: 'small' | 'medium'; + timeout?: number; } export default memo(DatagridLoading); diff --git a/packages/ra-ui-materialui/src/list/datatable/DataTableLoading.tsx b/packages/ra-ui-materialui/src/list/datatable/DataTableLoading.tsx index 58c0d80004a..ee62dbb9bd8 100644 --- a/packages/ra-ui-materialui/src/list/datatable/DataTableLoading.tsx +++ b/packages/ra-ui-materialui/src/list/datatable/DataTableLoading.tsx @@ -26,8 +26,9 @@ export const DataTableLoading = memo(function DataTableLoading({ nbChildren, nbFakeLines = 5, size, + timeout = 1000, }: DataTableLoadingProps) { - const oneSecondHasPassed = useTimeout(1000); + const oneSecondHasPassed = useTimeout(timeout); if (!oneSecondHasPassed) return null; return (
@@ -128,4 +129,5 @@ export interface DataTableLoadingProps { nbChildren: number; nbFakeLines?: number; size?: 'small' | 'medium'; + timeout?: number; }