mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Merge pull request #11802 from svenklemm/variable-interpolation
dont shadow format passed in as function parameter in replace function in templatesrv
This commit is contained in:
commit
6eba9c2438
@ -136,6 +136,11 @@ describe('templateSrv', function() {
|
||||
var target = _templateSrv.replace('this=${test:pipe}', {});
|
||||
expect(target).toBe('this=value1|value2');
|
||||
});
|
||||
|
||||
it('should replace ${test:pipe} with piped value and $test with globbed value', function() {
|
||||
var target = _templateSrv.replace('${test:pipe},$test', {}, 'glob');
|
||||
expect(target).toBe('value1|value2,{value1,value2}');
|
||||
});
|
||||
});
|
||||
|
||||
describe('variable with all option', function() {
|
||||
@ -164,6 +169,11 @@ describe('templateSrv', function() {
|
||||
var target = _templateSrv.replace('this.${test:glob}.filters', {});
|
||||
expect(target).toBe('this.{value1,value2}.filters');
|
||||
});
|
||||
|
||||
it('should replace ${test:pipe} with piped value and $test with globbed value', function() {
|
||||
var target = _templateSrv.replace('${test:pipe},$test', {}, 'glob');
|
||||
expect(target).toBe('value1|value2,{value1,value2}');
|
||||
});
|
||||
});
|
||||
|
||||
describe('variable with all option and custom value', function() {
|
||||
|
@ -179,16 +179,16 @@ export class TemplateSrv {
|
||||
return target;
|
||||
}
|
||||
|
||||
var variable, systemValue, value;
|
||||
var variable, systemValue, value, fmt;
|
||||
this.regex.lastIndex = 0;
|
||||
|
||||
return target.replace(this.regex, (match, var1, var2, fmt2, var3, fmt3) => {
|
||||
variable = this.index[var1 || var2 || var3];
|
||||
format = fmt2 || fmt3 || format;
|
||||
fmt = fmt2 || fmt3 || format;
|
||||
if (scopedVars) {
|
||||
value = scopedVars[var1 || var2 || var3];
|
||||
if (value) {
|
||||
return this.formatValue(value.value, format, variable);
|
||||
return this.formatValue(value.value, fmt, variable);
|
||||
}
|
||||
}
|
||||
|
||||
@ -198,7 +198,7 @@ export class TemplateSrv {
|
||||
|
||||
systemValue = this.grafanaVariables[variable.current.value];
|
||||
if (systemValue) {
|
||||
return this.formatValue(systemValue, format, variable);
|
||||
return this.formatValue(systemValue, fmt, variable);
|
||||
}
|
||||
|
||||
value = variable.current.value;
|
||||
@ -210,7 +210,7 @@ export class TemplateSrv {
|
||||
}
|
||||
}
|
||||
|
||||
var res = this.formatValue(value, format, variable);
|
||||
var res = this.formatValue(value, fmt, variable);
|
||||
return res;
|
||||
});
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user