diff --git a/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx b/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx index f9ae493bf3e..80ef7ed8cdd 100644 --- a/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx +++ b/packages/main/src/components/AnalyticalTable/AnalyticalTable.cy.tsx @@ -1438,7 +1438,9 @@ describe('AnalyticalTable', () => { cy.mount(); cy.get('[data-component-name="AnalyticalTableLoadingPlaceholder"]').should('be.visible'); cy.mount(); - cy.get('[data-component-name="AnalyticalTableBusyIndicator"]').should('be.visible'); + cy.get('.ui5-busy-indicator-busy-area', { timeout: 2000 }).should('be.visible'); + cy.mount(); + cy.get('.ui5-busy-indicator-busy-area', { timeout: 2000 }).should('not.exist'); cy.mount(); cy.findByText('No data').should('be.visible'); cy.mount(); diff --git a/packages/main/src/components/AnalyticalTable/AnalyticalTable.stories.tsx b/packages/main/src/components/AnalyticalTable/AnalyticalTable.stories.tsx index 29ac1a002ec..ab760c133ee 100644 --- a/packages/main/src/components/AnalyticalTable/AnalyticalTable.stories.tsx +++ b/packages/main/src/components/AnalyticalTable/AnalyticalTable.stories.tsx @@ -124,7 +124,8 @@ const meta = { selectionMode: AnalyticalTableSelectionMode.SingleSelect, selectionBehavior: AnalyticalTableSelectionBehavior.Row, overscanCountHorizontal: 5, - visibleRowCountMode: AnalyticalTableVisibleRowCountMode.Fixed + visibleRowCountMode: AnalyticalTableVisibleRowCountMode.Fixed, + loadingDelay: 1000 }, argTypes: { data: { control: { disable: true } }, diff --git a/packages/main/src/components/AnalyticalTable/index.tsx b/packages/main/src/components/AnalyticalTable/index.tsx index cb90c286261..edab101b6ca 100644 --- a/packages/main/src/components/AnalyticalTable/index.tsx +++ b/packages/main/src/components/AnalyticalTable/index.tsx @@ -134,6 +134,7 @@ const AnalyticalTable = forwardRef )} {extension &&
{extension}
} - + { * __Note:__ If the data array is not empty and loading is set to `true` a `BusyIndicator` will be displayed on top of the table, otherwise a skeleton placeholder will be shown. */ loading?: boolean; + /** + * Defines the delay in milliseconds, after which the `BusyIndicator` will be visible on the screen. + * + * @default 1000 + */ + loadingDelay?: number; /** * Setting this prop to `true` will show an overlay on top of the AnalyticalTable content preventing users from interacting with it. */