UNPKG

node-cron-expression

Version:

Declarative functional crontab expression builder

57 lines 3.02 kB
import { DayOfTheMonthExpression, DayOfTheWeekExpression } from './expression'; /** * In specific day of the month * * ``` * onDayOfTheMonth(3); // * * 3 * * * onDayOfTheMonth([3,5]); // * * 3,5 * * * ``` * */ export const onDayOfTheMonth = (dayOfTheMonth) => { return new DayOfTheMonthExpression({ minute: '0', hour: '0', dayOfTheMonth: `${Array.isArray(dayOfTheMonth) ? dayOfTheMonth.join(',') : dayOfTheMonth}`, }); }; const map = { Monday: 1, Tuesday: 2, Wednesday: 3, Thursday: 4, Friday: 5, Saturday: 6, Sunday: 0, }; /** * In specific day of the week * * ``` * onDayOfTheWeek(3); // 0 0 * * 3 * onDayOfTheWeek([3,5]); // 0 0 * * 3,5 * * onDayOfTheWeek('Monday'); // 0 0 * * 1 * onDayOfTheWeek(['Sunday', 'Thursday']); // 0 0 * * 0,4 * ``` */ export const onDayOfTheWeek = (dayOfTheWeek) => { const arrayInput = Array.isArray(dayOfTheWeek) ? dayOfTheWeek : [dayOfTheWeek]; if (typeof arrayInput[0] === 'string') { return new DayOfTheWeekExpression({ minute: '0', hour: '0', dayOfTheWeek: arrayInput .map((day) => map[day]) .join(','), }); } return new DayOfTheWeekExpression({ minute: '0', hour: '0', dayOfTheWeek: arrayInput.join(','), }); }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL29uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUvRTs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUM3QixhQUE4QyxFQUM5QyxFQUFFO0lBQ0YsT0FBTyxJQUFJLHVCQUF1QixDQUFDO1FBQ2pDLE1BQU0sRUFBRSxHQUFHO1FBQ1gsSUFBSSxFQUFFLEdBQUc7UUFDVCxhQUFhLEVBQUUsR0FDYixLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUMzRCxFQUFFO0tBQ0gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxHQUFHLEdBQUc7SUFDVixNQUFNLEVBQUUsQ0FBQztJQUNULE9BQU8sRUFBRSxDQUFDO0lBQ1YsU0FBUyxFQUFFLENBQUM7SUFDWixRQUFRLEVBQUUsQ0FBQztJQUNYLE1BQU0sRUFBRSxDQUFDO0lBQ1QsUUFBUSxFQUFFLENBQUM7SUFDWCxNQUFNLEVBQUUsQ0FBQztDQUNWLENBQUM7QUFFRjs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQzVCLFlBSXlCLEVBQ3pCLEVBQUU7SUFDRixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQztRQUM1QyxDQUFDLENBQUMsWUFBWTtRQUNkLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBRW5CLElBQUksT0FBTyxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxFQUFFO1FBQ3JDLE9BQU8sSUFBSSxzQkFBc0IsQ0FBQztZQUNoQyxNQUFNLEVBQUUsR0FBRztZQUNYLElBQUksRUFBRSxHQUFHO1lBQ1QsWUFBWSxFQUFHLFVBQW9DO2lCQUNoRCxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztpQkFDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUNiLENBQUMsQ0FBQztLQUNKO0lBRUQsT0FBTyxJQUFJLHNCQUFzQixDQUFDO1FBQ2hDLE1BQU0sRUFBRSxHQUFHO1FBQ1gsSUFBSSxFQUFFLEdBQUc7UUFDVCxZQUFZLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7S0FDbkMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDIn0=