In collection templating syntax, do not tolerate whitespace after dollar sign. So while `{{ $param }}` is valid `{{ $ param }}` will be ignored.
13 lines
448 B
TypeScript
13 lines
448 B
TypeScript
import { RegexParser, IPrimitiveExpression } from '../Parser/RegexParser';
|
|
|
|
export class ParameterSubstitutionParser extends RegexParser {
|
|
protected readonly regex = /{{\s*\$([^}| ]+)\s*}}/g;
|
|
protected buildExpression(match: RegExpMatchArray): IPrimitiveExpression {
|
|
const parameterName = match[1];
|
|
return {
|
|
parameters: [ parameterName ],
|
|
evaluator: (args) => args[parameterName],
|
|
};
|
|
}
|
|
}
|