node-cron-expression
Version:
Declarative functional crontab expression builder
73 lines • 3.55 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.every = exports.everyMonth = exports.everyHour = exports.everyMinute = void 0;
const expression_1 = require("./expression");
/**
* Every single minute or every X minute after current date time
*
* ```
* everyMinute(3); // *\/3 * * * *
* ```
*/
exports.everyMinute = (minute) => {
return new expression_1.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 * * *
* ```
*/
exports.everyHour = (hour) => {
return new expression_1.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 * * *
* ```
*/
exports.everyMonth = (month) => {
return new expression_1.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 *
* ```
*/
exports.every = (input) => {
return {
minutes: () => new expression_1.MinuteExpression({
minute: `*/${input}`,
}),
hours: () => new expression_1.HourExpression({
minute: '0',
hour: `*/${input}`,
}),
months: () => new expression_1.MonthExpression({
minute: '0',
hour: '0',
dayOfTheMonth: '1',
month: `*/${input}`,
}),
};
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2V2ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUlzQjtBQUV0Qjs7Ozs7O0dBTUc7QUFDVSxRQUFBLFdBQVcsR0FBRyxDQUFDLE1BQWUsRUFBRSxFQUFFO0lBQzdDLE9BQU8sSUFBSSw2QkFBZ0IsQ0FBQztRQUMxQixNQUFNLEVBQUUsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztLQUN2RCxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRjs7Ozs7OztHQU9HO0FBQ1UsUUFBQSxTQUFTLEdBQUcsQ0FBQyxJQUFXLEVBQUUsRUFBRTtJQUN2QyxPQUFPLElBQUksMkJBQWMsQ0FBQztRQUN4QixNQUFNLEVBQUUsR0FBRztRQUNYLElBQUksRUFBRSxJQUFJLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTO0tBQ2pELENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGOzs7Ozs7O0dBT0c7QUFDVSxRQUFBLFVBQVUsR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO0lBQzFDLE9BQU8sSUFBSSw0QkFBZSxDQUFDO1FBQ3pCLE1BQU0sRUFBRSxHQUFHO1FBQ1gsSUFBSSxFQUFFLEdBQUc7UUFDVCxhQUFhLEVBQUUsR0FBRztRQUNsQixLQUFLLEVBQUUsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSztLQUNoRCxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNVLFFBQUEsS0FBSyxHQUFHLENBQUMsS0FBYSxFQUFFLEVBQUU7SUFDckMsT0FBTztRQUNMLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FDWixJQUFJLDZCQUFnQixDQUFDO1lBQ25CLE1BQU0sRUFBRSxLQUFLLEtBQUssRUFBRTtTQUNyQixDQUFDO1FBQ0osS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUNWLElBQUksMkJBQWMsQ0FBQztZQUNqQixNQUFNLEVBQUUsR0FBRztZQUNYLElBQUksRUFBRSxLQUFLLEtBQUssRUFBRTtTQUNuQixDQUFDO1FBQ0osTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUNYLElBQUksNEJBQWUsQ0FBQztZQUNsQixNQUFNLEVBQUUsR0FBRztZQUNYLElBQUksRUFBRSxHQUFHO1lBQ1QsYUFBYSxFQUFFLEdBQUc7WUFDbEIsS0FBSyxFQUFFLEtBQUssS0FBSyxFQUFFO1NBQ3BCLENBQUM7S0FDTCxDQUFDO0FBQ0osQ0FBQyxDQUFDIn0=