mirror of
				https://github.com/grafana/grafana.git
				synced 2025-02-25 18:55:37 -06:00 
			
		
		
		
	Variables: Fix for changing readonly query property (#35992)
* Variables: Fix for changing readonly query property * Docs: adds release * Docs: adds release
This commit is contained in:
		@@ -2,14 +2,23 @@ export type StringSelector = string;
 | 
			
		||||
export type FunctionSelector = (id: string) => string;
 | 
			
		||||
export type CssSelector = () => string;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @alpha
 | 
			
		||||
 */
 | 
			
		||||
export interface Selectors {
 | 
			
		||||
  [key: string]: StringSelector | FunctionSelector | CssSelector | UrlSelector | Selectors;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @alpha
 | 
			
		||||
 */
 | 
			
		||||
export type E2ESelectors<S extends Selectors> = {
 | 
			
		||||
  [P in keyof S]: S[P];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @alpha
 | 
			
		||||
 */
 | 
			
		||||
export interface UrlSelector extends Selectors {
 | 
			
		||||
  url: string | FunctionSelector;
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -293,6 +293,7 @@ describe('QueryRunners', () => {
 | 
			
		||||
        const target = runner.getTarget({ datasource, variable });
 | 
			
		||||
        expect(target).toEqual({ refId: 'A', query: 'A query' });
 | 
			
		||||
      });
 | 
			
		||||
 | 
			
		||||
      describe('and ref id is missing', () => {
 | 
			
		||||
        it('then it should return correct target with dummy ref id', () => {
 | 
			
		||||
          const { runner, datasource, variable } = getDatasourceTestContext();
 | 
			
		||||
 
 | 
			
		||||
@@ -160,10 +160,7 @@ class DatasourceQueryRunner implements QueryRunner {
 | 
			
		||||
 | 
			
		||||
  getTarget({ datasource, variable }: GetTargetArgs) {
 | 
			
		||||
    if (hasDatasourceVariableSupport(datasource)) {
 | 
			
		||||
      if (!variable.query.refId) {
 | 
			
		||||
        variable.query.refId = variableDummyRefId;
 | 
			
		||||
      }
 | 
			
		||||
      return variable.query;
 | 
			
		||||
      return { ...variable.query, refId: variable.query.refId ?? variableDummyRefId };
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    throw new Error("Couldn't create a target with supplied arguments.");
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user