UNPKG

node-cron-expression

Version:

Declarative functional crontab expression builder

70 lines 3.48 kB
import { HourExpression, MinuteExpression, MonthExpression, } from './expression'; /** * Every single minute or every X minute after current date time * * ``` * everyMinute(3); // *\/3 * * * * * ``` */ export const everyMinute = (minute) => { return new MinuteExpression({ minute: minute !== undefined ? `${minute}` : undefined, }); }; /** * Every single hour or every X hours after current date time. Defaults * to the first minute of that hour. * * ``` * everyHour(3); // 0 *\/3 * * * * ``` */ export const everyHour = (hour) => { return new HourExpression({ minute: '0', hour: hour !== undefined ? `${hour}` : undefined, }); }; /** * Every single month or every X months after current date time. Defaults * to the first minute, first hour and first day of the month. * * ``` * everyHour(3); // 0 *\/3 * * * * ``` */ export const everyMonth = (month) => { return new MonthExpression({ minute: '0', hour: '0', dayOfTheMonth: '1', month: month !== undefined ? `${month}` : month, }); }; /** * Every X time point * * ``` * every(3).minutes(); // *\/3 * * * * every(3).hours(); // 0 *\/3 * * * * every(3).months(); // 0 0 1 *\/3 * * ``` */ export const every = (input) => { return { minutes: () => new MinuteExpression({ minute: `*/${input}`, }), hours: () => new HourExpression({ minute: '0', hour: `*/${input}`, }), months: () => new MonthExpression({ minute: '0', hour: '0', dayOfTheMonth: '1', month: `*/${input}`, }), }; }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2V2ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLGVBQWUsR0FDaEIsTUFBTSxjQUFjLENBQUM7QUFFdEI7Ozs7OztHQU1HO0FBQ0gsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQUMsTUFBZSxFQUFFLEVBQUU7SUFDN0MsT0FBTyxJQUFJLGdCQUFnQixDQUFDO1FBQzFCLE1BQU0sRUFBRSxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTO0tBQ3ZELENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFXLEVBQUUsRUFBRTtJQUN2QyxPQUFPLElBQUksY0FBYyxDQUFDO1FBQ3hCLE1BQU0sRUFBRSxHQUFHO1FBQ1gsSUFBSSxFQUFFLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVM7S0FDakQsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7R0FPRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO0lBQzFDLE9BQU8sSUFBSSxlQUFlLENBQUM7UUFDekIsTUFBTSxFQUFFLEdBQUc7UUFDWCxJQUFJLEVBQUUsR0FBRztRQUNULGFBQWEsRUFBRSxHQUFHO1FBQ2xCLEtBQUssRUFBRSxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLO0tBQ2hELENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsS0FBYSxFQUFFLEVBQUU7SUFDckMsT0FBTztRQUNMLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FDWixJQUFJLGdCQUFnQixDQUFDO1lBQ25CLE1BQU0sRUFBRSxLQUFLLEtBQUssRUFBRTtTQUNyQixDQUFDO1FBQ0osS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUNWLElBQUksY0FBYyxDQUFDO1lBQ2pCLE1BQU0sRUFBRSxHQUFHO1lBQ1gsSUFBSSxFQUFFLEtBQUssS0FBSyxFQUFFO1NBQ25CLENBQUM7UUFDSixNQUFNLEVBQUUsR0FBRyxFQUFFLENBQ1gsSUFBSSxlQUFlLENBQUM7WUFDbEIsTUFBTSxFQUFFLEdBQUc7WUFDWCxJQUFJLEVBQUUsR0FBRztZQUNULGFBQWEsRUFBRSxHQUFHO1lBQ2xCLEtBQUssRUFBRSxLQUFLLEtBQUssRUFBRTtTQUNwQixDQUFDO0tBQ0wsQ0FBQztBQUNKLENBQUMsQ0FBQyJ9