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.
*/