(s: string, extraVars?: {
[varName:string]: string | number,
})
| 27 | // replace ${xxx} format with corresponding variable |
| 28 | // extraVars: datav preserved variables, such as __curentValue__ |
| 29 | export const replaceWithVariables = (s: string, extraVars?: { |
| 30 | [varName:string]: string | number, |
| 31 | }) => { |
| 32 | const vars = $variables.get() |
| 33 | const formats = parseVariableFormat(s); |
| 34 | for (const f of formats) { |
| 35 | const extrav = extraVars && extraVars[f] |
| 36 | if (extrav) { |
| 37 | s = s.replaceAll(`\${${f}}`, extrav.toString()); |
| 38 | } else { |
| 39 | const v = vars.find(v => v.name ==f) |
| 40 | if (v) { |
| 41 | s = s.replaceAll(`\${${f}}`, v.selected); |
| 42 | } |
| 43 | } |
| 44 | |
| 45 | } |
| 46 | |
| 47 | return s |
| 48 | } |
| 49 | |
| 50 | |
| 51 | export const replaceQueryWithVariables = (q: PanelQuery, datasource: DatasourceType,interval: string) => { |
no test coverage detected