From 8ce0b23273ff6e67119bfe85c86a264266555105 Mon Sep 17 00:00:00 2001 From: Jose Berardo Date: Mon, 10 Oct 2016 00:02:13 +1100 Subject: [PATCH 1/3] Fix iterators and Add RRuleSet --- rrule/rrule.d.ts | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/rrule/rrule.d.ts b/rrule/rrule.d.ts index 247defc92b..42ff45e2be 100644 --- a/rrule/rrule.d.ts +++ b/rrule/rrule.d.ts @@ -39,7 +39,7 @@ declare namespace RRule { equals(other: Weekday): boolean; toString(): string; - + getJsWeekday(): number; } @@ -72,7 +72,7 @@ declare class RRule { * to stop the iteration. * @return Array containing all recurrences. */ - all(iterator?: (date: Date) => void): Date[]; + all(iterator?: (date: Date, index?: number) => void): Date[]; /** * Returns all the occurrences of the rrule between after and before. @@ -81,7 +81,7 @@ declare class RRule { * list, if they are found in the recurrence set. * @return Array */ - between(a: Date, b: Date, iterator?: (date: Date) => void): Date[]; + between(a: Date, b: Date, inc?: boolean, iterator?: (date: Date, index: number) => void): Date[]; /** * Returns the last recurrence before the given datetime instance. @@ -129,7 +129,7 @@ declare namespace RRule { MINUTELY = 5, SECONDLY = 6 } - + const YEARLY: Frequency; const MONTHLY: Frequency; const WEEKLY: Frequency; @@ -158,4 +158,27 @@ declare namespace RRule { function fromString(value: string): RRule; + class RRuleSet extends RRule { + /** + * + * @param {Boolean?} noCache + * The same stratagy as RRule on cache, default to false + * @constructor + */ + constructor(noCache?: boolean); + rrule(rrule: RRule): undefined; + rdate(date: Date): undefined; + exrule(rrule: RRule): undefined; + exdate(date: Date): RRuleSet; + valueOf(): string[]; + /** + * to generate recurrence field sush as: + * ["RRULE:FREQ=YEARLY;COUNT=2;BYDAY=TU;DTSTART=19970902T010000Z","RRULE:FREQ=YEARLY;COUNT=1;BYDAY=TH;DTSTART=19970902T010000Z"] + */ + toString(): string; + /** + * Create a new RRuleSet Object completely base on current instance + */ + clone(): RRuleSet; + } } From 6479f21283239ab8a1ba347a599d9839ba133aa2 Mon Sep 17 00:00:00 2001 From: Jose Berardo Date: Mon, 10 Oct 2016 00:28:00 +1100 Subject: [PATCH 2/3] undefined to void --- rrule/rrule.d.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rrule/rrule.d.ts b/rrule/rrule.d.ts index 42ff45e2be..b640607e9e 100644 --- a/rrule/rrule.d.ts +++ b/rrule/rrule.d.ts @@ -166,9 +166,9 @@ declare namespace RRule { * @constructor */ constructor(noCache?: boolean); - rrule(rrule: RRule): undefined; - rdate(date: Date): undefined; - exrule(rrule: RRule): undefined; + rrule(rrule: RRule): void; + rdate(date: Date): void; + exrule(rrule: RRule): void; exdate(date: Date): RRuleSet; valueOf(): string[]; /** From 2f1f1d54c571a59decdf9e1d29bf0a7692bb78c9 Mon Sep 17 00:00:00 2001 From: Jose Berardo Date: Mon, 10 Oct 2016 00:32:05 +1100 Subject: [PATCH 3/3] oops one more void --- rrule/rrule.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rrule/rrule.d.ts b/rrule/rrule.d.ts index b640607e9e..061d07f71b 100644 --- a/rrule/rrule.d.ts +++ b/rrule/rrule.d.ts @@ -169,7 +169,7 @@ declare namespace RRule { rrule(rrule: RRule): void; rdate(date: Date): void; exrule(rrule: RRule): void; - exdate(date: Date): RRuleSet; + exdate(date: Date): void; valueOf(): string[]; /** * to generate recurrence field sush as: