From 81ef2dfdb94055c25c25b332bd3c41160d177ddb Mon Sep 17 00:00:00 2001 From: Seth Westphal Date: Tue, 18 Oct 2016 16:44:43 -0500 Subject: [PATCH] Fix node-schedule RecurrenceRule. --- node-schedule/node-schedule-tests.ts | 7 +++++ node-schedule/node-schedule.d.ts | 45 +++++++++++++++------------- 2 files changed, 31 insertions(+), 21 deletions(-) diff --git a/node-schedule/node-schedule-tests.ts b/node-schedule/node-schedule-tests.ts index bc8626767d..c2f3a7aaab 100644 --- a/node-schedule/node-schedule-tests.ts +++ b/node-schedule/node-schedule-tests.ts @@ -107,6 +107,13 @@ function testRecurrenceRule() { var rule:nodeSchedule.RecurrenceRule = new nodeSchedule.RecurrenceRule(0, 0, 0, 0, 0, 0, 0); var nextInvocation:Date = rule.nextInvocationDate(new Date()); + + var rule2 = new nodeSchedule.RecurrenceRule(); + rule2.month = "7"; + rule2.date = [1, new nodeSchedule.Range(5, 15, 5), "23"]; + rule2.hour = 5; + rule2.minute = new nodeSchedule.Range(4, 6); + rule2.second = new nodeSchedule.Range(8, 12, 2); } /** diff --git a/node-schedule/node-schedule.d.ts b/node-schedule/node-schedule.d.ts index 1b15f9c34c..f42213e271 100644 --- a/node-schedule/node-schedule.d.ts +++ b/node-schedule/node-schedule.d.ts @@ -142,6 +142,9 @@ declare module 'node-schedule' { contains(value: number): boolean; } + type Recurrence = number | Range | string; + type RecurrenceSegment = Recurrence | Recurrence[]; + /** * Recurrence rules. */ @@ -150,65 +153,65 @@ declare module 'node-schedule' { * Day of the month. * * @public - * @type {number} + * @type {RecurrenceSegment} */ - date: number; + date: RecurrenceSegment; /** * Day of the week. * * @public - * @type {number|Array} + * @type {RecurrenceSegment} */ - dayOfWeek: number | Array; + dayOfWeek: RecurrenceSegment; /** * Hour. * * @public - * @type {number} + * @type {RecurrenceSegment} */ - hour: number; + hour: RecurrenceSegment; /** * Minute. * * @public - * @type {number} + * @type {RecurrenceSegment} */ - minute: number; + minute: RecurrenceSegment; /** * Month. * * @public - * @type {number} + * @type {RecurrenceSegment} */ - month: number; + month: RecurrenceSegment; /** * Second. * * @public - * @type {number} + * @type {RecurrenceSegment} */ - second: number; + second: RecurrenceSegment; /** * Year. * * @public - * @type {number} + * @type {RecurrenceSegment} */ - year: number; + year: RecurrenceSegment; - constructor(year?: number, - month?: number, - date?: number, - dayOfWeek?: number | Array, - hour?: number, - minute?: number, - second?: number); + constructor(year?: RecurrenceSegment, + month?: RecurrenceSegment, + date?: RecurrenceSegment, + dayOfWeek?: RecurrenceSegment, + hour?: RecurrenceSegment, + minute?: RecurrenceSegment, + second?: RecurrenceSegment); nextInvocationDate(base: Date): Date; }