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:
Hugo Häggmark 2021-06-22 08:53:41 +02:00 committed by GitHub
parent 91cf062d0b
commit ffc18ebbcf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 4 deletions

View File

@ -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;
}

View File

@ -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();

View File

@ -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.");