@jss-rule-engine/core
Version:
Rule engine for Sitecore JSS
33 lines (25 loc) • 1.19 kB
text/typescript
import { RuleData, RuleEngineContext } from "../types/ruleEngine";
var monthsList = [
"{3C14D331-85BB-464D-B255-2603B6451923}", //Jan
'{5F6CD10B-494F-423D-9925-79A51C40DDEE}', //Feb
'{3F770C25-87E2-4C93-B75D-5BE1C3EE812F}', //Mar
'{24A6641F-A9EE-42FE-A3E7-D9D81EC1A803}', //Apr
'{53173ABB-B8AB-404B-BB30-AB625A8236CE}', //May
'{877C9B7B-5CBA-4E95-9E45-195181B85266}', //Jun
'{E6D8E875-3131-4D32-8F67-A3CD32D7AF86}', //Jul
'{A9EEBAE5-D9C5-4F14-8212-67AEFA550608}', //Aug
'{64116941-23DE-4D84-B00E-8D2919FD1821}', //Sep
'{5807CD23-1EE7-4A59-AB3C-6C0D7783FDF7}', //Oct
'{E8C4C101-EB3A-4B83-8508-B0B5190F4FFC}', //Nov
'{E8C4C101-EB3A-4B83-8508-B0B5190F4FFC}' //Dec
]
export default async function(rule:RuleData, ruleContext: RuleEngineContext) {
var monthId = rule.attributes?.get('Month');
if (!ruleContext.dateTime?.now) {
throw new Error("Rule engine context date provider missing.");
}
var currentDayOfMonthIndex = ruleContext.dateTime?.now.getMonth()
var currentMonthId = monthsList[currentDayOfMonthIndex]
var result = monthId == currentMonthId;
return result;
}