@tv2media/command-transpiler
Advanced tools
Comparing version 1.0.1 to 1.0.2
import { Rules } from './rules'; | ||
import { ModifierDomain } from './modifier'; | ||
interface IVariables { | ||
[key: string]: any; | ||
} | ||
export declare class Transpiler { | ||
protected rules: Rules; | ||
constructor(rules?: Rules, modifiers?: ModifierDomain); | ||
transpile(input: string): { | ||
transpile(input: string, variables?: IVariables): { | ||
line: number; | ||
@@ -11,1 +14,2 @@ result: string; | ||
} | ||
export {}; |
@@ -10,7 +10,7 @@ "use strict"; | ||
} | ||
transpile(input) { | ||
transpile(input, variables = {}) { | ||
for (const [line, rule] of this.rules.entries()) { | ||
const result = rule.match(input); | ||
if (result !== null) { | ||
return { line, result: rule.fill(result) }; | ||
return { line, result: rule.fill({ ...variables, ...result }) }; | ||
} | ||
@@ -17,0 +17,0 @@ } |
{ | ||
"name": "@tv2media/command-transpiler", | ||
"version": "1.0.1", | ||
"version": "1.0.2", | ||
"description": "Transpiles commands from one protocol to another.", | ||
@@ -5,0 +5,0 @@ "main": "lib/index.js", |
25100
648