diff --git a/public/app/features/dashboard-scene/settings/variables/utils.test.ts b/public/app/features/dashboard-scene/settings/variables/utils.test.ts index 74c19faacd9..2bc591aa0d4 100644 --- a/public/app/features/dashboard-scene/settings/variables/utils.test.ts +++ b/public/app/features/dashboard-scene/settings/variables/utils.test.ts @@ -11,7 +11,7 @@ import { TextBoxVariable, SceneVariableSet, } from '@grafana/scenes'; -import { DataQuery, DataSourceJsonData, VariableType } from '@grafana/schema'; +import { DataQuery, DataSourceJsonData, VariableHide, VariableType } from '@grafana/schema'; import { SHARED_DASHBOARD_QUERY } from 'app/plugins/datasource/dashboard'; import { DASHBOARD_DATASOURCE_PLUGIN_ID } from 'app/plugins/datasource/dashboard/types'; @@ -226,7 +226,6 @@ describe('getVariableScene', () => { it.each([ ['custom', CustomVariable], ['query', QueryVariable], - ['constant', ConstantVariable], ['interval', IntervalVariable], ['datasource', DataSourceVariable], ['adhoc', AdHocFiltersVariable], @@ -237,6 +236,15 @@ describe('getVariableScene', () => { const sceneVariable = getVariableScene(type as EditableVariableType, initialState); expect(sceneVariable).toBeInstanceOf(instanceType); expect(sceneVariable.state.name).toBe(initialState.name); + expect(sceneVariable.state.hide).toBe(undefined); + }); + + it('should return the scene variable instance for the constant editable variable type', () => { + const initialState = { name: 'MyVariable' }; + const sceneVariable = getVariableScene('constant' as EditableVariableType, initialState); + expect(sceneVariable).toBeInstanceOf(ConstantVariable); + expect(sceneVariable.state.name).toBe(initialState.name); + expect(sceneVariable.state.hide).toBe(VariableHide.hideVariable); }); }); diff --git a/public/app/features/dashboard-scene/settings/variables/utils.ts b/public/app/features/dashboard-scene/settings/variables/utils.ts index 221387b87d1..c7f5fb69588 100644 --- a/public/app/features/dashboard-scene/settings/variables/utils.ts +++ b/public/app/features/dashboard-scene/settings/variables/utils.ts @@ -17,7 +17,7 @@ import { AdHocFiltersVariable, SceneVariableState, } from '@grafana/scenes'; -import { VariableType } from '@grafana/schema'; +import { VariableHide, VariableType } from '@grafana/schema'; import { getIntervalsQueryFromNewIntervalModel } from '../../utils/utils'; @@ -127,7 +127,7 @@ export function getVariableScene(type: EditableVariableType, initialState: Commo case 'query': return new QueryVariable(initialState); case 'constant': - return new ConstantVariable(initialState); + return new ConstantVariable({ ...initialState, hide: VariableHide.hideVariable }); case 'interval': return new IntervalVariable(initialState); case 'datasource':