@dereekb/date 8.11.1 → 8.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,24 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [8.12.1](https://github.com/dereekb/dbx-components/compare/v8.12.0-dev...v8.12.1) (2022-07-08)
6
+
7
+
8
+
9
+ # [8.12.0](https://github.com/dereekb/dbx-components/compare/v8.11.2-dev...v8.12.0) (2022-07-07)
10
+
11
+
12
+ ### Features
13
+
14
+ * added DateBlock ([b424dc0](https://github.com/dereekb/dbx-components/commit/b424dc09ada622b2c5a85335ce755516eb1fb767))
15
+ * added dbxCalendar ([88750cb](https://github.com/dereekb/dbx-components/commit/88750cb4302b8e67dcaadb4813979a8e73d1d7b7))
16
+
17
+
18
+
19
+ ## [8.11.2](https://github.com/dereekb/dbx-components/compare/v8.11.1-dev...v8.11.2) (2022-07-05)
20
+
21
+
22
+
5
23
  ## [8.11.1](https://github.com/dereekb/dbx-components/compare/v8.11.0-dev...v8.11.1) (2022-07-05)
6
24
 
7
25
 
package/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "@dereekb/date",
3
- "version": "8.11.1",
3
+ "version": "8.12.1",
4
4
  "type": "commonjs",
5
5
  "main": "./src/index.js",
6
6
  "typings": "./src/index.d.ts",
7
7
  "dependencies": {},
8
8
  "peerDependencies": {
9
- "@dereekb/util": "8.11.1",
9
+ "date-fns": "^2.28.0",
10
+ "@dereekb/util": "8.12.1",
10
11
  "make-error": "^1.3.0",
11
12
  "ts-essentials": "^9.1.2",
12
13
  "extra-set": "^2.2.11",
13
14
  "class-transformer": "^0.5.1",
14
- "date-fns": "^2.28.0",
15
15
  "class-validator": "^0.13.2",
16
16
  "date-fns-tz": "^1.3.0",
17
17
  "rxjs": "^7.0.0",
@@ -0,0 +1,119 @@
1
+ import { IndexRange } from '@dereekb/util';
2
+ import { DateRange, DateRangeDayDistanceInput } from './date.range';
3
+ import { DateDurationSpan } from './date.duration';
4
+ /**
5
+ * Index from 0 of which day this block represents.
6
+ */
7
+ export declare type DateBlockIndex = number;
8
+ /**
9
+ * A duration-span block.
10
+ */
11
+ export interface DateBlock {
12
+ i: DateBlockIndex;
13
+ }
14
+ /**
15
+ * An array of DateBlock-like values.
16
+ */
17
+ export declare type DateBlockArray<B extends DateBlock = DateBlock> = B[];
18
+ /**
19
+ * Reference to a DateBlockArray
20
+ */
21
+ export declare type DateBlockArrayRef<B extends DateBlock = DateBlock> = {
22
+ blocks: DateBlockArray<B>;
23
+ };
24
+ /**
25
+ * Is combination of DateRange and DateDurationSpan. The DateRange captures a range of days that a DateBlock takes up, and the DateDurationSpan
26
+ * captures the Dates at which the Job occurs at.
27
+ *
28
+ * NOTES:
29
+ * - start time should be the first second of the day (0 seconds and 0 minutes) for its given timezone. This lets us derive the proper offset.
30
+ * - The startsAt time should be greater than or equal to start
31
+ * - The startsAt time should be on the same date as start
32
+ * - The end time should equal the ending date/time of the final end duration.
33
+ */
34
+ export interface DateBlockTiming extends DateRange, DateDurationSpan {
35
+ }
36
+ /**
37
+ * The DateRange input for dateBlockTiming()
38
+ */
39
+ export declare type DateBlockTimingRangeInput = DateRangeDayDistanceInput | DateRange | number;
40
+ /**
41
+ * Creates a valid DateBlock timing from the DateDurationSpan and range input.
42
+ *
43
+ * The duration is first considered, then the date range is applied to it.
44
+ *
45
+ * If a number is passed as the input range, then the duration's startsAt date will be used.
46
+ * The input range's date takes priority over the duration's startsAt date.
47
+ */
48
+ export declare function dateBlockTiming(durationInput: DateDurationSpan, inputRange: DateBlockTimingRangeInput): DateBlockTiming;
49
+ /**
50
+ *
51
+ * @param timing
52
+ * @returns
53
+ */
54
+ export declare function isValidDateBlockTiming(timing: DateBlockTiming): boolean;
55
+ /**
56
+ * Reference to a DateBlockTiming
57
+ */
58
+ export declare type DateBlockTimingRef = {
59
+ timing: DateBlockTiming;
60
+ };
61
+ /**
62
+ * An object that implements DateBlockTimingRef and DateBlockArrayRef
63
+ */
64
+ export interface DateBlockCollection<B extends DateBlock = DateBlock> extends DateBlockTimingRef, DateBlockArrayRef<B> {
65
+ }
66
+ /**
67
+ * An expanded DateBlock that implements DateDurationSpan and contains the DateBlock values.
68
+ */
69
+ export declare type DateBlockDurationSpan<B extends DateBlock = DateBlock> = DateDurationSpan & B;
70
+ /**
71
+ * Convenience function for calling expandDateBlocks() with the input DateBlockCollection.
72
+ *
73
+ * @param collection
74
+ * @returns
75
+ */
76
+ export declare function expandDateBlockCollection<B extends DateBlock = DateBlock>(collection: DateBlockCollection<B>): DateBlockDurationSpan<B>[];
77
+ /**
78
+ * Convenience function for calling dateBlocksExpansionFactory() then passing the blocks.
79
+ *
80
+ * @param blocks
81
+ * @param timing
82
+ * @returns
83
+ */
84
+ export declare function expandDateBlocks<B extends DateBlock = DateBlock>(timing: DateBlockTiming, blocks: B[]): DateBlockDurationSpan<B>[];
85
+ export declare type DateBlocksExpansionFactoryInput<B extends DateBlock = DateBlock> = DateBlockArrayRef<B> | DateBlockArray<B>;
86
+ /**
87
+ * Used to convert the input DateBlocksExpansionFactoryInput into an array of DateBlockDurationSpan values
88
+ */
89
+ export declare type DateBlocksExpansionFactory = <B extends DateBlock = DateBlock>(input: DateBlocksExpansionFactoryInput<B>) => DateBlockDurationSpan<B>[];
90
+ export interface DateBlocksExpansionFactoryConfig {
91
+ /**
92
+ * Timing to use in the configuration.
93
+ */
94
+ timing: DateBlockTiming;
95
+ /**
96
+ * Range to limit duration span output to.
97
+ *
98
+ * If not provided, uses the input timing's range.
99
+ * If false, the timing's range is ignored too, and only the DateBlockIndex values are considered.
100
+ */
101
+ rangeLimit?: DateBlockTimingRangeInput | false;
102
+ }
103
+ /**
104
+ * Creates a DateBlocksExpansionFactory
105
+ *
106
+ * @param config
107
+ * @returns
108
+ */
109
+ export declare function dateBlocksExpansionFactory(config: DateBlocksExpansionFactoryConfig): DateBlocksExpansionFactory;
110
+ /**
111
+ * Generates a DateBlockIndexRange based on the input timing.
112
+ *
113
+ * An arbitrary limit can also be applied.
114
+ *
115
+ * @param timing
116
+ * @param limit
117
+ * @param fitToTimingRange
118
+ */
119
+ export declare function dateBlockIndexRange(timing: DateBlockTiming, limit?: DateBlockTimingRangeInput, fitToTimingRange?: boolean): IndexRange;
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dateBlockIndexRange = exports.dateBlocksExpansionFactory = exports.expandDateBlocks = exports.expandDateBlockCollection = exports.isValidDateBlockTiming = exports.dateBlockTiming = void 0;
4
+ const util_1 = require("@dereekb/util");
5
+ const date_range_1 = require("./date.range");
6
+ const date_fns_1 = require("date-fns");
7
+ const date_1 = require("./date");
8
+ /**
9
+ * Creates a valid DateBlock timing from the DateDurationSpan and range input.
10
+ *
11
+ * The duration is first considered, then the date range is applied to it.
12
+ *
13
+ * If a number is passed as the input range, then the duration's startsAt date will be used.
14
+ * The input range's date takes priority over the duration's startsAt date.
15
+ */
16
+ function dateBlockTiming(durationInput, inputRange) {
17
+ const { duration } = durationInput;
18
+ if (duration > util_1.MINUTES_IN_DAY) {
19
+ throw new Error('dateBlockTiming() duration cannot be longer than 24 hours.');
20
+ }
21
+ let { startsAt } = durationInput;
22
+ let numberOfBlockedDays;
23
+ let inputDate;
24
+ let range;
25
+ if (typeof inputRange === 'number') {
26
+ numberOfBlockedDays = inputRange;
27
+ range = (0, date_range_1.dateRange)({ type: date_range_1.DateRangeType.DAY, date: startsAt, distance: numberOfBlockedDays });
28
+ }
29
+ else if ((0, date_range_1.isDateRange)(inputRange)) {
30
+ range = inputRange;
31
+ inputDate = inputRange.start;
32
+ numberOfBlockedDays = (0, date_fns_1.differenceInDays)(inputRange.end, inputRange.start);
33
+ }
34
+ else {
35
+ inputDate = inputRange.date;
36
+ numberOfBlockedDays = inputRange.distance;
37
+ range = (0, date_range_1.dateRange)(inputRange, true);
38
+ }
39
+ if (inputDate != null) {
40
+ // input date takes priority, so move the startsAt's date to be on the same date.
41
+ startsAt = (0, date_1.copyHoursAndMinutesFromDate)(range.start, startsAt, true);
42
+ if ((0, date_fns_1.isBefore)(startsAt, range.start)) {
43
+ startsAt = (0, date_fns_1.addDays)(startsAt, 1); // starts 24 hours later
44
+ numberOfBlockedDays = numberOfBlockedDays - 1; // reduce number of applied days by 1
45
+ }
46
+ }
47
+ else {
48
+ startsAt = (0, date_fns_1.setSeconds)(startsAt, 0); // clear seconds from startsAt
49
+ }
50
+ const start = range.start;
51
+ // calculate end to be the ending date/time of the final duration span
52
+ const lastStart = (0, date_fns_1.addDays)(startsAt, numberOfBlockedDays);
53
+ const end = (0, date_fns_1.addMinutes)(lastStart, duration);
54
+ return {
55
+ start,
56
+ end,
57
+ startsAt,
58
+ duration
59
+ };
60
+ }
61
+ exports.dateBlockTiming = dateBlockTiming;
62
+ /**
63
+ *
64
+ * @param timing
65
+ * @returns
66
+ */
67
+ function isValidDateBlockTiming(timing) {
68
+ const { start, end, startsAt, duration } = timing;
69
+ const msDifference = (0, date_fns_1.differenceInMilliseconds)(startsAt, start);
70
+ const hasSeconds = start.getSeconds() !== 0;
71
+ let isValid = false;
72
+ if (duration <= util_1.MINUTES_IN_DAY &&
73
+ !hasSeconds && // start cannot have seconds
74
+ msDifference >= 0 && // startsAt is after secondsDifference
75
+ msDifference < util_1.MS_IN_DAY // startsAt is not more than 24 hours later
76
+ ) {
77
+ const expectedFinalStartTime = (0, date_fns_1.addMinutes)(end, -duration);
78
+ const difference = (0, date_fns_1.differenceInMilliseconds)(startsAt, expectedFinalStartTime) % util_1.MS_IN_DAY;
79
+ isValid = difference === 0;
80
+ }
81
+ return isValid;
82
+ }
83
+ exports.isValidDateBlockTiming = isValidDateBlockTiming;
84
+ /**
85
+ * Convenience function for calling expandDateBlocks() with the input DateBlockCollection.
86
+ *
87
+ * @param collection
88
+ * @returns
89
+ */
90
+ function expandDateBlockCollection(collection) {
91
+ return expandDateBlocks(collection.timing, collection.blocks);
92
+ }
93
+ exports.expandDateBlockCollection = expandDateBlockCollection;
94
+ /**
95
+ * Convenience function for calling dateBlocksExpansionFactory() then passing the blocks.
96
+ *
97
+ * @param blocks
98
+ * @param timing
99
+ * @returns
100
+ */
101
+ function expandDateBlocks(timing, blocks) {
102
+ return dateBlocksExpansionFactory({ timing })(blocks);
103
+ }
104
+ exports.expandDateBlocks = expandDateBlocks;
105
+ /**
106
+ * Creates a DateBlocksExpansionFactory
107
+ *
108
+ * @param config
109
+ * @returns
110
+ */
111
+ function dateBlocksExpansionFactory(config) {
112
+ const { timing, rangeLimit } = config;
113
+ const { startsAt: baseStart, duration } = timing;
114
+ const indexRange = rangeLimit !== false ? dateBlockIndexRange(timing, rangeLimit) : { minIndex: Number.MIN_SAFE_INTEGER, maxIndex: Number.MAX_SAFE_INTEGER };
115
+ const isInRange = (0, util_1.indexRangeCheckFunction)(indexRange);
116
+ return (input) => {
117
+ const blocks = Array.isArray(input) ? input : input.blocks;
118
+ let spans = [];
119
+ blocks.forEach((x) => {
120
+ if (isInRange(x.i)) {
121
+ const startsAt = (0, date_fns_1.addDays)(baseStart, x.i);
122
+ const durationSpan = Object.assign(Object.assign({}, x), { startsAt,
123
+ duration });
124
+ spans.push(durationSpan);
125
+ }
126
+ });
127
+ return spans;
128
+ };
129
+ }
130
+ exports.dateBlocksExpansionFactory = dateBlocksExpansionFactory;
131
+ /**
132
+ * Generates a DateBlockIndexRange based on the input timing.
133
+ *
134
+ * An arbitrary limit can also be applied.
135
+ *
136
+ * @param timing
137
+ * @param limit
138
+ * @param fitToTimingRange
139
+ */
140
+ function dateBlockIndexRange(timing, limit, fitToTimingRange = true) {
141
+ const { start: zeroDate, end: endDate } = timing;
142
+ let minIndex = 0;
143
+ let maxIndex = (0, date_fns_1.differenceInDays)(endDate, zeroDate);
144
+ if (limit) {
145
+ const { start, end } = dateBlockTiming(timing, limit);
146
+ const limitMin = (0, date_fns_1.differenceInDays)(start, zeroDate);
147
+ const limitMax = (0, date_fns_1.differenceInDays)(end, zeroDate);
148
+ if (fitToTimingRange) {
149
+ minIndex = Math.min(limitMin, maxIndex);
150
+ maxIndex = Math.min(limitMax, maxIndex);
151
+ }
152
+ else {
153
+ minIndex = limitMin;
154
+ maxIndex = limitMax;
155
+ }
156
+ }
157
+ return { minIndex, maxIndex };
158
+ }
159
+ exports.dateBlockIndexRange = dateBlockIndexRange;
160
+ //# sourceMappingURL=date.block.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date.block.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.block.ts"],"names":[],"mappings":"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"}
@@ -48,19 +48,24 @@ export declare function utcDayForDate(date: Date): Date;
48
48
  */
49
49
  export declare function takeNextUpcomingTime(date: Date, removeSeconds?: boolean): Date;
50
50
  /**
51
- * Creates a new date and copies the hours/minutes from the previous date.
51
+ * Creates a new date and copies the hours/minutes from the previous date and applies them to a date for today.
52
52
  */
53
- export declare function copyHoursAndMinutesFromDateToToday(date: Date, removeSeconds?: boolean): Date;
53
+ export declare function copyHoursAndMinutesFromDateToToday(fromDate: Date, removeSeconds?: boolean): Date;
54
54
  /**
55
- * Creates a new date and copies the hours/minutes from the input.
55
+ * Creates a new date and copies the hours/minutes from the input date to the target date.
56
+ */
57
+ export declare function copyHoursAndMinutesFromDate(target: Date, fromDate: Date, removeSeconds?: boolean): Date;
58
+ /**
59
+ * Creates a new date and copies the hours/minutes from the input onto the target date, if provided. Defaults to now/today otherwise.
56
60
  *
57
61
  * Also rounds the seconds and milliseconds.
58
62
  */
59
- export declare function copyHoursAndMinutesToToday({ hours, minutes, removeSeconds }: {
63
+ export declare function copyHoursAndMinutesToDate({ hours, minutes, removeSeconds }: {
60
64
  hours: number;
61
65
  minutes?: number;
62
66
  removeSeconds?: boolean;
63
- }): Date;
67
+ }, target?: Maybe<Date>): Date;
68
+ export declare const copyHoursAndMinutesToToday: typeof copyHoursAndMinutesToDate;
64
69
  /**
65
70
  * Removes the seconds and milliseconds from the input date.
66
71
  */
@@ -1,5 +1,9 @@
1
1
  import { Minutes } from '@dereekb/util';
2
2
  import { DateRange, DateRangeState } from './date.range';
3
+ export interface DateDurationSpan {
4
+ startsAt: Date;
5
+ duration: Minutes;
6
+ }
3
7
  export declare class DateDurationSpan {
4
8
  startsAt: Date;
5
9
  duration: Minutes;
@@ -1 +1 @@
1
- {"version":3,"file":"date.duration.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.duration.ts"],"names":[],"mappings":";;;;AACA,yDAAiD;AACjD,uCAAsC;AACtC,6CAAyE;AAEzE,MAAa,gBAAgB;IAQ3B,YAAY,QAA0B;QACpC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACpC,CAAC;CACF;AATC;IAFC,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC;sCACP,IAAI;kDAAC;AAGf;IADC,IAAA,0BAAM,GAAE;;kDACS;AANpB,4CAYC;AAED,SAAgB,uBAAuB,CAAC,IAAsB;IAC5D,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,QAAQ;QACpB,GAAG,EAAE,IAAA,qBAAU,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC;KAC9C,CAAC;AACJ,CAAC;AALD,0DAKC;AAED,SAAgB,0BAA0B,CAAC,IAAsB;IAC/D,OAAO,IAAA,2BAAc,EAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;AACvD,CAAC;AAFD,gEAEC"}
1
+ {"version":3,"file":"date.duration.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.duration.ts"],"names":[],"mappings":";;;;AACA,yDAAiD;AACjD,uCAAsC;AACtC,6CAAyE;AAOzE,MAAa,gBAAgB;IAQ3B,YAAY,QAA0B;QACpC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACpC,CAAC;CACF;AATC;IAFC,IAAA,0BAAM,GAAE;IACR,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC;sCACP,IAAI;kDAAC;AAGf;IADC,IAAA,0BAAM,GAAE;;kDACS;AANpB,4CAYC;AAED,SAAgB,uBAAuB,CAAC,IAAsB;IAC5D,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,QAAQ;QACpB,GAAG,EAAE,IAAA,qBAAU,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC;KAC9C,CAAC;AACJ,CAAC;AALD,0DAKC;AAED,SAAgB,0BAA0B,CAAC,IAAsB;IAC/D,OAAO,IAAA,2BAAc,EAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;AACvD,CAAC;AAFD,gEAEC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.roundDownToMinute = exports.copyHoursAndMinutesToToday = exports.copyHoursAndMinutesFromDateToToday = exports.takeNextUpcomingTime = exports.utcDayForDate = exports.isAfter = exports.latestDate = exports.toJsDate = exports.guessCurrentTimezone = exports.toISODateString = exports.nowISODateString = exports.latestMinute = exports.isMaxFutureDate = exports.maxFutureDate = exports.daysToMinutes = exports.minutesToMs = exports.hoursToMs = exports.msToSeconds = exports.msToMinutes = exports.MAX_FUTURE_DATE = void 0;
3
+ exports.roundDownToMinute = exports.copyHoursAndMinutesToToday = exports.copyHoursAndMinutesToDate = exports.copyHoursAndMinutesFromDate = exports.copyHoursAndMinutesFromDateToToday = exports.takeNextUpcomingTime = exports.utcDayForDate = exports.isAfter = exports.latestDate = exports.toJsDate = exports.guessCurrentTimezone = exports.toISODateString = exports.nowISODateString = exports.latestMinute = exports.isMaxFutureDate = exports.maxFutureDate = exports.daysToMinutes = exports.minutesToMs = exports.hoursToMs = exports.msToSeconds = exports.msToMinutes = exports.MAX_FUTURE_DATE = void 0;
4
4
  const date_fns_1 = require("date-fns");
5
5
  const util_1 = require("@dereekb/util");
6
6
  exports.MAX_FUTURE_DATE = new Date(Date.UTC(9999, 0));
@@ -103,23 +103,30 @@ function takeNextUpcomingTime(date, removeSeconds) {
103
103
  }
104
104
  exports.takeNextUpcomingTime = takeNextUpcomingTime;
105
105
  /**
106
- * Creates a new date and copies the hours/minutes from the previous date.
106
+ * Creates a new date and copies the hours/minutes from the previous date and applies them to a date for today.
107
107
  */
108
- function copyHoursAndMinutesFromDateToToday(date, removeSeconds) {
109
- return copyHoursAndMinutesToToday({
110
- hours: date.getHours(),
111
- minutes: date.getMinutes(),
112
- removeSeconds
113
- });
108
+ function copyHoursAndMinutesFromDateToToday(fromDate, removeSeconds) {
109
+ return copyHoursAndMinutesFromDate(new Date(), fromDate, removeSeconds);
114
110
  }
115
111
  exports.copyHoursAndMinutesFromDateToToday = copyHoursAndMinutesFromDateToToday;
116
112
  /**
117
- * Creates a new date and copies the hours/minutes from the input.
113
+ * Creates a new date and copies the hours/minutes from the input date to the target date.
114
+ */
115
+ function copyHoursAndMinutesFromDate(target, fromDate, removeSeconds) {
116
+ return copyHoursAndMinutesToDate({
117
+ hours: fromDate.getHours(),
118
+ minutes: fromDate.getMinutes(),
119
+ removeSeconds
120
+ }, target);
121
+ }
122
+ exports.copyHoursAndMinutesFromDate = copyHoursAndMinutesFromDate;
123
+ /**
124
+ * Creates a new date and copies the hours/minutes from the input onto the target date, if provided. Defaults to now/today otherwise.
118
125
  *
119
126
  * Also rounds the seconds and milliseconds.
120
127
  */
121
- function copyHoursAndMinutesToToday({ hours, minutes, removeSeconds = true }) {
122
- return (0, date_fns_1.set)(new Date(), Object.assign(Object.assign({ hours }, (minutes != null
128
+ function copyHoursAndMinutesToDate({ hours, minutes, removeSeconds = true }, target) {
129
+ return (0, date_fns_1.set)(target !== null && target !== void 0 ? target : new Date(), Object.assign(Object.assign({ hours }, (minutes != null
123
130
  ? {
124
131
  minutes
125
132
  }
@@ -130,7 +137,8 @@ function copyHoursAndMinutesToToday({ hours, minutes, removeSeconds = true }) {
130
137
  }
131
138
  : undefined)));
132
139
  }
133
- exports.copyHoursAndMinutesToToday = copyHoursAndMinutesToToday;
140
+ exports.copyHoursAndMinutesToDate = copyHoursAndMinutesToDate;
141
+ exports.copyHoursAndMinutesToToday = copyHoursAndMinutesToDate;
134
142
  /**
135
143
  * Removes the seconds and milliseconds from the input date.
136
144
  */
@@ -1 +1 @@
1
- {"version":3,"file":"date.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.ts"],"names":[],"mappings":";;;AAAA,uCAAmJ;AACnJ,wCAA0J;AAE7I,QAAA,eAAe,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAE3D,SAAgB,WAAW,CAAC,YAAoB;IAC9C,OAAO,YAAY,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;AACpC,CAAC;AAFD,kCAEC;AAED,SAAgB,WAAW,CAAC,YAAoB;IAC9C,OAAO,YAAY,GAAG,IAAI,CAAC;AAC7B,CAAC;AAFD,kCAEC;AAED,SAAgB,SAAS,CAAC,QAAgB,CAAC;IACzC,OAAO,KAAK,GAAG,iBAAU,CAAC;AAC5B,CAAC;AAFD,8BAEC;AAED,SAAgB,WAAW,CAAC,UAAkB,CAAC;IAC7C,OAAO,OAAO,GAAG,mBAAY,CAAC;AAChC,CAAC;AAFD,kCAEC;AAED,SAAgB,aAAa,CAAC,OAAe,CAAC;IAC5C,OAAO,IAAI,GAAG,qBAAc,CAAC;AAC/B,CAAC;AAFD,sCAEC;AAED,SAAgB,aAAa;IAC3B,OAAO,uBAAe,CAAC;AACzB,CAAC;AAFD,sCAEC;AAED,SAAgB,eAAe,CAAC,IAAU;IACxC,OAAO,uBAAe,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;AACtD,CAAC;AAFD,0CAEC;AAED,SAAgB,YAAY,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE;IAC5C,OAAO,IAAA,wBAAa,EAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAFD,oCAEC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB;IAC9B,OAAO,eAAe,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;AACrC,CAAC;AAFD,4CAEC;AAED,SAAgB,eAAe,CAAC,KAAuB;IACrD,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE7B,IAAI,CAAC,IAAA,kBAAO,EAAC,IAAI,CAAC,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;KACzC;IAED,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;AAC5B,CAAC;AARD,0CAQC;AAED,SAAgB,oBAAoB;;IAClC,OAAO,MAAA,MAAA,IAAI,CAAC,cAAc,EAAE,0CAAE,eAAe,EAAE,0CAAE,QAAQ,CAAC;AAC5D,CAAC;AAFD,oDAEC;AAED;;;;;GAKG;AACH,SAAgB,QAAQ,CAAC,KAAuB;IAC9C,OAAO,IAAA,iBAAM,EAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAAc,CAAC,CAAC,CAAC,IAAA,mBAAQ,EAAC,KAAe,CAAC,CAAC;AACrE,CAAC;AAFD,4BAEC;AAOD,SAAgB,UAAU,CAAC,KAAoB,EAAE,cAA2B,SAAS;IACnF,MAAM,QAAQ,GAAW,IAAA,wBAAiB,EAAC,KAAK,CAAC,CAAC;IAClD,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,cAAO,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;AAC/D,CAAC;AAHD,gCAGC;AAOD,SAAgB,OAAO,CAAC,CAAc,EAAE,CAAc,EAAE,eAA+B,SAAS;IAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,kBAAW,EAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;AACnD,CAAC;AAFD,0BAEC;AAED,uBAAuB;AACvB;;;;GAIG;AACH,SAAgB,aAAa,CAAC,IAAU;IACtC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AACjF,CAAC;AAFD,sCAEC;AAED;;;;;;GAMG;AACH,SAAgB,oBAAoB,CAAC,IAAU,EAAE,aAAuB;IACtE,IAAI,GAAG,kCAAkC,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAE/D,IAAI,IAAA,iBAAM,EAAC,IAAI,CAAC,EAAE;QAChB,IAAI,GAAG,IAAA,kBAAO,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;KACzB;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AARD,oDAQC;AAED;;GAEG;AACH,SAAgB,kCAAkC,CAAC,QAAc,EAAE,aAAuB;IACxF,OAAO,2BAA2B,CAAC,IAAI,IAAI,EAAE,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;AAC1E,CAAC;AAFD,gFAEC;AAED;;GAEG;AACH,SAAgB,2BAA2B,CAAC,MAAY,EAAE,QAAc,EAAE,aAAuB;IAC/F,OAAO,yBAAyB,CAC9B;QACE,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE;QAC1B,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE;QAC9B,aAAa;KACd,EACD,MAAM,CACP,CAAC;AACJ,CAAC;AATD,kEASC;AAED;;;;GAIG;AACH,SAAgB,yBAAyB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,EAAgE,EAAE,MAAoB;IACpK,OAAO,IAAA,cAAa,EAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,IAAI,EAAE,gCACvC,KAAK,IACF,CAAC,OAAO,IAAI,IAAI;QACjB,CAAC,CAAC;YACE,OAAO;SACR;QACH,CAAC,CAAC,SAAS,CAAC,GAEX,CAAC,aAAa;QACf,CAAC,CAAC;YACE,OAAO,EAAE,CAAC;YACV,YAAY,EAAE,CAAC;SAChB;QACH,CAAC,CAAC,SAAS,CAAC,EACd,CAAC;AACL,CAAC;AAhBD,8DAgBC;AAEY,QAAA,0BAA0B,GAAG,yBAAyB,CAAC;AAEpE;;GAEG;AACH,SAAgB,iBAAiB,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE;IACjD,OAAO,IAAA,cAAa,EAAC,IAAI,EAAE;QACzB,OAAO,EAAE,CAAC;QACV,YAAY,EAAE,CAAC;KAChB,CAAC,CAAC;AACL,CAAC;AALD,8CAKC"}
@@ -5,6 +5,13 @@ export interface DateRange {
5
5
  start: Date;
6
6
  end: Date;
7
7
  }
8
+ /**
9
+ * Returns true if the input is a DateRange.
10
+ *
11
+ * @param input
12
+ * @returns
13
+ */
14
+ export declare function isDateRange(input: unknown): input is DateRange;
8
15
  export declare enum DateRangeType {
9
16
  /**
10
17
  * Includes only the target day.
@@ -90,6 +97,24 @@ export declare class DateRangeParams {
90
97
  distance?: number;
91
98
  constructor(template: DateRangeParams);
92
99
  }
100
+ export interface DateRangeTypedInput {
101
+ type: DateRangeType;
102
+ date?: Date;
103
+ distance?: number;
104
+ }
105
+ /**
106
+ * dateRange() input that infers duration to be a number of days, starting from the input date if applicable.
107
+ */
108
+ export interface DateRangeDayDistanceInput {
109
+ date?: Date;
110
+ distance: number;
111
+ }
112
+ export interface DateRangeDistanceInput extends DateRangeDayDistanceInput {
113
+ type?: DateRangeType;
114
+ }
115
+ export declare type DateRangeInput = (DateRangeTypedInput | DateRangeDistanceInput) & {
116
+ roundToMinute?: boolean;
117
+ };
93
118
  /**
94
119
  * Creates a DateRange from the input DateRangeParams
95
120
  *
@@ -97,7 +122,7 @@ export declare class DateRangeParams {
97
122
  * @param roundToMinute
98
123
  * @returns
99
124
  */
100
- export declare function makeDateRange({ type, date, distance }: DateRangeParams, roundToMinute?: boolean): DateRange;
125
+ export declare function dateRange({ type, date, distance, roundToMinute: inputRoundToMinute }: DateRangeInput, roundToMinute?: boolean): DateRange;
101
126
  /**
102
127
  * Returns the DateRangeState from the input DateRange.
103
128
  *
@@ -105,3 +130,7 @@ export declare function makeDateRange({ type, date, distance }: DateRangeParams,
105
130
  * @returns
106
131
  */
107
132
  export declare function dateRangeState({ start, end }: DateRange): DateRangeState;
133
+ /**
134
+ * @deprecated use dateRange() instead.
135
+ */
136
+ export declare const makeDateRange: typeof dateRange;
@@ -1,10 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dateRangeState = exports.makeDateRange = exports.DateRangeParams = exports.DateRangeState = exports.DateRangeType = void 0;
3
+ exports.makeDateRange = exports.dateRangeState = exports.dateRange = exports.DateRangeParams = exports.DateRangeState = exports.DateRangeType = exports.isDateRange = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const class_transformer_1 = require("class-transformer");
6
6
  const class_validator_1 = require("class-validator");
7
7
  const date_fns_1 = require("date-fns");
8
+ /**
9
+ * Returns true if the input is a DateRange.
10
+ *
11
+ * @param input
12
+ * @returns
13
+ */
14
+ function isDateRange(input) {
15
+ return typeof input === 'object' && (0, date_fns_1.isDate)(input.start) && (0, date_fns_1.isDate)(input.end);
16
+ }
17
+ exports.isDateRange = isDateRange;
8
18
  var DateRangeType;
9
19
  (function (DateRangeType) {
10
20
  /**
@@ -120,7 +130,7 @@ exports.DateRangeParams = DateRangeParams;
120
130
  * @param roundToMinute
121
131
  * @returns
122
132
  */
123
- function makeDateRange({ type, date = new Date(), distance }, roundToMinute = false) {
133
+ function dateRange({ type = DateRangeType.DAY, date = new Date(), distance, roundToMinute: inputRoundToMinute = false }, roundToMinute = inputRoundToMinute) {
124
134
  let start;
125
135
  let end;
126
136
  if (roundToMinute) {
@@ -204,7 +214,7 @@ function makeDateRange({ type, date = new Date(), distance }, roundToMinute = fa
204
214
  end
205
215
  };
206
216
  }
207
- exports.makeDateRange = makeDateRange;
217
+ exports.dateRange = dateRange;
208
218
  /**
209
219
  * Returns the DateRangeState from the input DateRange.
210
220
  *
@@ -223,4 +233,9 @@ function dateRangeState({ start, end }) {
223
233
  }
224
234
  }
225
235
  exports.dateRangeState = dateRangeState;
236
+ // MARK: Compat
237
+ /**
238
+ * @deprecated use dateRange() instead.
239
+ */
240
+ exports.makeDateRange = dateRange;
226
241
  //# sourceMappingURL=date.range.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date.range.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.range.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date.range.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.range.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ export * from './date.block';
1
2
  export * from './date.calendar';
2
3
  export * from './date.duration';
3
4
  export * from './date.format';
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./date.block"), exports);
4
5
  tslib_1.__exportStar(require("./date.calendar"), exports);
5
6
  tslib_1.__exportStar(require("./date.duration"), exports);
6
7
  tslib_1.__exportStar(require("./date.format"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,0DAAgC;AAChC,wDAA8B;AAC9B,yDAA+B;AAC/B,uDAA6B;AAC7B,uDAA6B;AAC7B,sDAA4B;AAC5B,4DAAkC;AAClC,6DAAmC;AACnC,sDAA4B;AAC5B,0DAAgC;AAChC,iDAAuB;AACvB,sDAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/index.ts"],"names":[],"mappings":";;;AAAA,uDAA6B;AAC7B,0DAAgC;AAChC,0DAAgC;AAChC,wDAA8B;AAC9B,yDAA+B;AAC/B,uDAA6B;AAC7B,uDAA6B;AAC7B,sDAA4B;AAC5B,4DAAkC;AAClC,6DAAmC;AACnC,sDAA4B;AAC5B,0DAAgC;AAChC,iDAAuB;AACvB,sDAA4B"}
@@ -18,25 +18,25 @@ function makeDateQueryForDateItemRangeFilter(find) {
18
18
  result.timezone = find.timezone;
19
19
  // Apply the timezone to the date range if provided.
20
20
  const range = find.timezone ? Object.assign(Object.assign({}, find.range), { date: (0, date_fns_tz_1.utcToZonedTime)(find.range.date, find.timezone) }) : find.range;
21
- const dateRange = (0, date_range_1.makeDateRange)(range);
21
+ const dates = (0, date_range_1.dateRange)(range);
22
22
  switch (range.type) {
23
23
  case date_range_1.DateRangeType.DAY:
24
24
  case date_range_1.DateRangeType.WEEK:
25
25
  case date_range_1.DateRangeType.MONTH:
26
- dateRange.end = (0, date_fns_1.addSeconds)(dateRange.end, 1); // Ends on the next day to encompass the full 24 hours, instead of 23:59:59 hours.
26
+ dates.end = (0, date_fns_1.addSeconds)(dates.end, 1); // Ends on the next day to encompass the full 24 hours, instead of 23:59:59 hours.
27
27
  break;
28
28
  }
29
- result.rStart = dateRange.start;
30
- result.rEnd = dateRange.end;
29
+ result.rStart = dates.start;
30
+ result.rEnd = dates.end;
31
31
  // Range returns all values that are running withing that time period.
32
32
  if (find.rangeContained) {
33
33
  // If range contained, must have started and ended within the box entirely.
34
- result.startsGte = dateRange.start;
35
- result.endsLte = dateRange.end;
34
+ result.startsGte = dates.start;
35
+ result.endsLte = dates.end;
36
36
  }
37
37
  else {
38
- result.startsLte = dateRange.end;
39
- result.endsGte = dateRange.start;
38
+ result.startsLte = dates.end;
39
+ result.endsGte = dates.start;
40
40
  }
41
41
  return result;
42
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"query.builder.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/query/query.builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.builder.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/query/query.builder.ts"],"names":[],"mappings":"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"}
@@ -58,14 +58,14 @@ class ModelRecurrenceInfoUtility {
58
58
  date
59
59
  }
60
60
  });
61
- const dateRange = dateRRule.getRecurrenceDateRange();
61
+ const dates = dateRRule.getRecurrenceDateRange();
62
62
  const rruleSetString = date_rrule_parse_1.DateRRuleParseUtility.toRRuleLines(rrule);
63
63
  const recurrenceInfo = {
64
64
  timezone,
65
65
  rrule: rruleSetString,
66
- start: dateRange.start,
67
- end: (_a = dateRange.finalRecurrenceEndsAt) !== null && _a !== void 0 ? _a : dateRange.end,
68
- forever: dateRange.forever
66
+ start: dates.start,
67
+ end: (_a = dates.finalRecurrenceEndsAt) !== null && _a !== void 0 ? _a : dates.end,
68
+ forever: dates.forever
69
69
  };
70
70
  return new ModelRecurrenceInfo(recurrenceInfo);
71
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"date.recurrence.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/rrule/date.recurrence.ts"],"names":[],"mappings":";;;;AAAA,yDAAoD;AAEpD,6CAAmE;AACnE,yDAA2F;AAQ3F;;GAEG;AAEH,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAiC9B,YAAY,QAA6B;QACvC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IAClC,CAAC;CACF,CAAA;AAjCC;IADC,IAAA,0BAAM,GAAE;;qDACiB;AAM1B;IADC,IAAA,0BAAM,GAAE;;kDACS;AAMlB;IADC,IAAA,0BAAM,GAAE;sCACF,IAAI;kDAAC;AAMZ;IADC,IAAA,0BAAM,GAAE;sCACJ,IAAI;gDAAC;AAMV;IADC,IAAA,0BAAM,GAAE;;oDACS;AA/BP,mBAAmB;IAD/B,IAAA,2BAAO,GAAE;6CAkCc,mBAAmB;GAjC9B,mBAAmB,CAwC/B;AAxCY,kDAAmB;AA2DhC;;GAEG;AACH,MAAa,0BAA0B;IACrC;;OAEG;IACH,MAAM,CAAC,+CAA+C,CAAC,MAA4B;;QACjF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;QAEzC,MAAM,SAAS,GAAG,6BAAgB,CAAC,YAAY,CAAC;YAC9C,kBAAkB,EAAE,KAAK;YACzB,OAAO,EAAE;gBACP,IAAI;aACL;SACF,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,SAAS,CAAC,sBAAsB,EAAE,CAAC;QACrD,MAAM,cAAc,GAAe,wCAAqB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAE7E,MAAM,cAAc,GAAG;YACrB,QAAQ;YACR,KAAK,EAAE,cAAc;YACrB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,GAAG,EAAE,MAAA,SAAS,CAAC,qBAAqB,mCAAI,SAAS,CAAC,GAAG;YACrD,OAAO,EAAE,SAAS,CAAC,OAAO;SAC3B,CAAC;QAEF,OAAO,IAAI,mBAAmB,CAAC,cAAc,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,qBAAqB,CAAC,IAAyB,EAAE,IAAkB;QACxE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAEjC,OAAO,6BAAgB,CAAC,YAAY,CAAC;YACnC,UAAU,EAAE,KAAK;YACjB,OAAO,EAAE;gBACP,IAAI;gBACJ,QAAQ;aACT;SACF,CAAC,CAAC;IACL,CAAC;CACF;AAvCD,gEAuCC"}
1
+ {"version":3,"file":"date.recurrence.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/rrule/date.recurrence.ts"],"names":[],"mappings":";;;;AAAA,yDAAoD;AAEpD,6CAAmE;AACnE,yDAA2F;AAQ3F;;GAEG;AAEH,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAiC9B,YAAY,QAA6B;QACvC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IAClC,CAAC;CACF,CAAA;AAjCC;IADC,IAAA,0BAAM,GAAE;;qDACiB;AAM1B;IADC,IAAA,0BAAM,GAAE;;kDACS;AAMlB;IADC,IAAA,0BAAM,GAAE;sCACF,IAAI;kDAAC;AAMZ;IADC,IAAA,0BAAM,GAAE;sCACJ,IAAI;gDAAC;AAMV;IADC,IAAA,0BAAM,GAAE;;oDACS;AA/BP,mBAAmB;IAD/B,IAAA,2BAAO,GAAE;6CAkCc,mBAAmB;GAjC9B,mBAAmB,CAwC/B;AAxCY,kDAAmB;AA2DhC;;GAEG;AACH,MAAa,0BAA0B;IACrC;;OAEG;IACH,MAAM,CAAC,+CAA+C,CAAC,MAA4B;;QACjF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;QAEzC,MAAM,SAAS,GAAG,6BAAgB,CAAC,YAAY,CAAC;YAC9C,kBAAkB,EAAE,KAAK;YACzB,OAAO,EAAE;gBACP,IAAI;aACL;SACF,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,SAAS,CAAC,sBAAsB,EAAE,CAAC;QACjD,MAAM,cAAc,GAAe,wCAAqB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAE7E,MAAM,cAAc,GAAG;YACrB,QAAQ;YACR,KAAK,EAAE,cAAc;YACrB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,EAAE,MAAA,KAAK,CAAC,qBAAqB,mCAAI,KAAK,CAAC,GAAG;YAC7C,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;QAEF,OAAO,IAAI,mBAAmB,CAAC,cAAc,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,qBAAqB,CAAC,IAAyB,EAAE,IAAkB;QACxE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAEjC,OAAO,6BAAgB,CAAC,YAAY,CAAC;YACnC,UAAU,EAAE,KAAK;YACjB,OAAO,EAAE;gBACP,IAAI;gBACJ,QAAQ;aACT;SACF,CAAC,CAAC;IACL,CAAC;CACF;AAvCD,gEAuCC"}
@@ -72,7 +72,7 @@ class DateRRuleInstance {
72
72
  var _a;
73
73
  let between;
74
74
  if (options.range || options.rangeParams) {
75
- between = (_a = options.range) !== null && _a !== void 0 ? _a : (0, date_1.makeDateRange)(options.rangeParams);
75
+ between = (_a = options.range) !== null && _a !== void 0 ? _a : (0, date_1.dateRange)(options.rangeParams);
76
76
  between.start = this.normalInstance.baseDateToTargetDate(between.start);
77
77
  between.end = this.normalInstance.baseDateToTargetDate(between.end);
78
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"date.rrule.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/rrule/date.rrule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date.rrule.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/rrule/date.rrule.ts"],"names":[],"mappings":"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"}