UNPKG

node-cron-expression

Version:

Declarative functional crontab expression builder

84 lines 4.49 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DayOfTheWeekExpression = exports.MonthExpression = exports.DayOfTheMonthExpression = exports.HourExpression = exports.MinuteExpression = exports.Expression = void 0; /** * Create an expression with default values. Every value defaults to `*`. * * ``` * const expression = new Expression({hour: '1'}); // * 1 * * * * ``` */ class Expression { constructor(params) { this.minute = (params && params.minute) || '*'; this.hour = (params && params.hour) || '*'; this.dayOfTheMonth = (params && params.dayOfTheMonth) || '*'; this.month = (params && params.month) || '*'; this.dayOfTheWeek = (params && params.dayOfTheWeek) || '*'; } setMinute(minute) { this.minute = minute; } setHour(hour) { this.hour = hour; } setDayOfTheMonth(dayOfTheMonth) { this.dayOfTheMonth = dayOfTheMonth; } setMonth(month) { this.month = month; } setDayOfTheWeek(dayOfTheWeek) { this.dayOfTheWeek = dayOfTheWeek; } getMinute() { return this.minute; } getHour() { return this.hour; } getDayOfTheMonth() { return this.dayOfTheMonth; } getMonth() { return this.month; } getDayOfTheWeek() { return this.dayOfTheWeek; } toString() { return `${this.minute} ${this.hour} ${this.dayOfTheMonth} ${this.month} ${this.dayOfTheWeek}`; } } exports.Expression = Expression; /** * Alias of Expression to infer the return type */ class MinuteExpression extends Expression { } exports.MinuteExpression = MinuteExpression; /** * Alias of Expression to infer the return type */ class HourExpression extends Expression { } exports.HourExpression = HourExpression; /** * Alias of Expression to infer the return type */ class DayOfTheMonthExpression extends Expression { } exports.DayOfTheMonthExpression = DayOfTheMonthExpression; /** * Alias of Expression to infer the return type */ class MonthExpression extends Expression { } exports.MonthExpression = MonthExpression; /** * Alias of Expression to infer the return type */ class DayOfTheWeekExpression extends Expression { } exports.DayOfTheWeekExpression = DayOfTheWeekExpression; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwcmVzc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvZXhwcmVzc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7Ozs7O0dBTUc7QUFDSCxNQUFhLFVBQVU7SUFPckIsWUFBWSxNQU1YO1FBQ0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxDQUFDO1FBQy9DLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQztRQUMzQyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxHQUFHLENBQUM7UUFDN0QsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDO1FBQzdDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLEdBQUcsQ0FBQztJQUM3RCxDQUFDO0lBRU0sU0FBUyxDQUFDLE1BQWM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUNNLE9BQU8sQ0FBQyxJQUFZO1FBQ3pCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFDTSxnQkFBZ0IsQ0FBQyxhQUFxQjtRQUMzQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztJQUNyQyxDQUFDO0lBQ00sUUFBUSxDQUFDLEtBQWE7UUFDM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUNNLGVBQWUsQ0FBQyxZQUFvQjtRQUN6QyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztJQUNuQyxDQUFDO0lBRU0sU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ00sT0FBTztRQUNaLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBQ00sZ0JBQWdCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBQ00sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ00sZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDaEcsQ0FBQztDQUNGO0FBeERELGdDQXdEQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxnQkFBaUIsU0FBUSxVQUFVO0NBQUc7QUFBbkQsNENBQW1EO0FBRW5EOztHQUVHO0FBQ0gsTUFBYSxjQUFlLFNBQVEsVUFBVTtDQUFHO0FBQWpELHdDQUFpRDtBQUVqRDs7R0FFRztBQUNILE1BQWEsdUJBQXdCLFNBQVEsVUFBVTtDQUFHO0FBQTFELDBEQUEwRDtBQUUxRDs7R0FFRztBQUNILE1BQWEsZUFBZ0IsU0FBUSxVQUFVO0NBQUc7QUFBbEQsMENBQWtEO0FBRWxEOztHQUVHO0FBQ0gsTUFBYSxzQkFBdUIsU0FBUSxVQUFVO0NBQUc7QUFBekQsd0RBQXlEIn0=