You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by jl...@apache.org on 2026/08/18 16:37:50 UTC
(superset) branch master updated: fix(dashboard): mute the Group By display control loading spinner (#42879)
This is an automated email from the ASF dual-hosted git repository.
sadpandajoe pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/superset.git
The following commit(s) were added to refs/heads/master by this push:
new 60e1802c523 fix(dashboard): mute the Group By display control loading spinner (#42879)
60e1802c523 is described below
commit 60e1802c52338544b385162d0b15f0468e142330
Author: Joe Li <jo...@preset.io>
AuthorDate: Tue Aug 18 09:37:43 2026 -0700
fix(dashboard): mute the Group By display control loading spinner (#42879)
Co-authored-by: Claude Fable 5 <no...@anthropic.com>
Co-authored-by: Evan Rusackas <ev...@preset.io>
---
.../FilterControls/GroupByFilterCard.test.tsx | 38 +++++++++++++++++++++-
.../FilterBar/FilterControls/GroupByFilterCard.tsx | 2 +-
2 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/GroupByFilterCard.test.tsx b/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/GroupByFilterCard.test.tsx
index ba128d56dc0..3a155f7fece 100644
--- a/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/GroupByFilterCard.test.tsx
+++ b/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/GroupByFilterCard.test.tsx
@@ -16,8 +16,20 @@
* specific language governing permissions and limitations
* under the License.
*/
+import {
+ ChartCustomizationType,
+ type ChartCustomization,
+} from '@superset-ui/core';
import { LabeledValue } from '@superset-ui/core/components';
-import { createLabelSortComparator } from './GroupByFilterCard';
+import { render, screen } from 'spec/helpers/testing-library';
+import GroupByFilterCard, {
+ createLabelSortComparator,
+} from './GroupByFilterCard';
+
+jest.mock('src/utils/cachedSupersetGet', () => ({
+ // Never resolves, pinning the card in its column-loading state.
+ cachedSupersetGet: jest.fn(() => new Promise(() => {})),
+}));
const apple: LabeledValue = { value: 'a', label: 'Apple' };
const banana: LabeledValue = { value: 'b', label: 'Banana' };
@@ -39,3 +51,27 @@ test('preserves source order when sortAscending is unset', () => {
expect(compare(apple, banana)).toBe(0);
expect(compare(banana, apple)).toBe(0);
});
+
+const groupByCustomization: ChartCustomization = {
+ id: 'groupby-1',
+ name: 'Group By',
+ filterType: 'filter_groupby',
+ type: ChartCustomizationType.ChartCustomization,
+ targets: [{ datasetId: 1 }],
+ scope: { rootPath: [], excluded: [] },
+ controlValues: {},
+ defaultDataMask: {},
+};
+
+test('renders the column-loading spinner small and muted', async () => {
+ render(<GroupByFilterCard customizationItem={groupByCustomization} />, {
+ useRedux: true,
+ initialState: {
+ dataMask: {},
+ nativeFilters: { filters: {} },
+ },
+ });
+ const spinner = await screen.findByTestId('loading-indicator');
+ expect(spinner).toHaveClass('inline');
+ expect(spinner).toHaveStyle({ opacity: 0.25, width: '40px' });
+});
diff --git a/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/GroupByFilterCard.tsx b/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/GroupByFilterCard.tsx
index d214be3d786..7363dfcab68 100644
--- a/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/GroupByFilterCard.tsx
+++ b/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterControls/GroupByFilterCard.tsx
@@ -645,7 +645,7 @@ const GroupByFilterCard: FC<GroupByFilterCardProps> = ({
{loading && (
<div style={{ textAlign: 'center', marginTop: 8 }}>
- <Loading position="inline" />
+ <Loading position="inline" size="s" muted />
</div>
)}
</div>