zpt
Version:
Zenon Page Templates - JS (ZPT-JS)
63 lines (50 loc) • 1.49 kB
JavaScript
/*
TrNumberExpression class
*/
import { context } from '../../context.js';
import { trHelper } from './trHelper.js';
export const TrNumberExpression = function( stringToApply, expressionToApply, argsExpressionsToApply ) {
var string = stringToApply;
var expression = expressionToApply;
var argsExpressions = argsExpressionsToApply;
var evaluate = function( scope ){
var evaluated = trHelper.evaluate(
scope,
expression,
argsExpressions,
'number',
null
);
return evaluated;
};
var dependsOn = function( depsDataItem, scope ){
return trHelper.dependsOn( depsDataItem, scope, expression, argsExpressions );
};
var toString = function(){
return string;
};
return {
evaluate: evaluate,
dependsOn: dependsOn,
toString: toString
};
};
TrNumberExpression.removePrefix = true;
TrNumberExpression.getPrefix = function() {
return context.getConf().trNumberExpression;
};
TrNumberExpression.getId = TrNumberExpression.getPrefix;
TrNumberExpression.build = function( string ) {
var trData = trHelper.build(
string,
TrNumberExpression.getPrefix(),
1,
2,
false
);
return new TrNumberExpression(
string,
trData.expression,
trData.argsExpressions
);
};