UNPKG

@jss-rule-engine/core

Version:

Rule engine for Sitecore JSS

30 lines (21 loc) 929 B
import { RuleData, RuleEngineContext } from "../types/ruleEngine"; export default async function(rule:RuleData, ruleContext: RuleEngineContext) { ruleContext.ruleEngine?.debugMessage('Running day of month rule', rule) var dayNumberValue = rule.attributes?.get('DayNumber'); var operatorId = rule.attributes?.get('operatorid'); var dayNumber = Number.parseInt(dayNumberValue); var operator = ruleContext.ruleEngine?.operatorDefinitions.get(operatorId); if(!operator) { throw new Error("Operator definition is missing for id " + operatorId); } if(!ruleContext.dateTime?.now) { throw new Error("Rule engine context date provider missing."); } var operatorContext = { parameter1: ruleContext.dateTime?.now.getDate(), parameter2: dayNumber } return await operator(operatorContext, ruleContext); }