@dereekb/date 9.17.3 → 9.18.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.
@@ -1 +1 @@
1
- {"version":3,"file":"date.format.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date.format.js","sourceRoot":"","sources":["../../../../../../packages/date/src/lib/date/date.format.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.nowISODateString = exports.removeSeconds = exports.removeMinutesAndSeconds = exports.findMaxDate = exports.findMinDate = exports.reduceDatesFunction = exports.roundDownToHour = exports.roundDownToMinute = exports.copyHoursAndMinutesToToday = exports.copyHoursAndMinutesToDate = exports.copyHoursAndMinutesFromDate = exports.copyHoursAndMinutesFromDateToToday = exports.takeNextUpcomingTime = exports.utcDayForDate = exports.isAfter = exports.latestDate = exports.toJsDate = exports.safeToJsDate = exports.guessCurrentTimezone = exports.toISODateString = exports.latestMinute = exports.isMaxFutureDate = exports.maxFutureDate = exports.daysToMinutes = exports.minutesToMs = exports.hoursToMs = exports.msToSeconds = exports.msToMinutes = exports.isDate = exports.MAX_FUTURE_DATE = void 0;
3
+ exports.nowISODateString = exports.removeSeconds = exports.removeMinutesAndSeconds = exports.findMaxDate = exports.findMinDate = exports.reduceDatesFunction = exports.roundDownToHour = exports.roundDownToMinute = exports.copyHoursAndMinutesToToday = exports.copyHoursAndMinutesToDate = exports.copyHoursAndMinutesFromDate = exports.copyHoursAndMinutesFromDateToToday = exports.takeNextUpcomingTime = exports.utcDayForDate = exports.isSameDateDay = exports.isSameDate = exports.isAfter = exports.latestDate = exports.toJsDate = exports.safeToJsDate = exports.guessCurrentTimezone = exports.toISODateString = exports.latestMinute = exports.isMaxFutureDate = exports.maxFutureDate = exports.daysToMinutes = exports.minutesToMs = exports.hoursToMs = exports.msToSeconds = exports.msToMinutes = exports.isDate = 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));
@@ -82,6 +82,14 @@ function isAfter(a, b, defaultValue = undefined) {
82
82
  return a && b ? (0, date_fns_1.isAfter)(a, b) : defaultValue;
83
83
  }
84
84
  exports.isAfter = isAfter;
85
+ function isSameDate(a, b, defaultValue = null) {
86
+ return a != null && b != null ? (0, date_fns_1.isEqual)(a, b) : defaultValue != null ? defaultValue : a == b;
87
+ }
88
+ exports.isSameDate = isSameDate;
89
+ function isSameDateDay(a, b, defaultValue = null) {
90
+ return a != null && b != null ? (0, date_fns_1.isSameDay)(a, b) : defaultValue != null ? defaultValue : a == b;
91
+ }
92
+ exports.isSameDateDay = isSameDateDay;
85
93
  // MARK: Unix Date/Time
86
94
  /**
87
95
  * Converts the input date to represent the "day" represented in the time.
@@ -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":"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"}
@@ -1,8 +1,29 @@
1
+ import { Maybe } from '@dereekb/util';
1
2
  /**
2
- * Represents a start and end date.
3
+ * Represents a start date.
3
4
  */
4
- export interface DateRange {
5
+ export interface DateRangeStart {
5
6
  start: Date;
7
+ }
8
+ /**
9
+ * Returns true if the input is a DateRangeStart.
10
+ *
11
+ * @param value
12
+ * @returns
13
+ */
14
+ export declare function isDateRangeStart(value: unknown): value is DateRangeStart;
15
+ /**
16
+ * Sorts the input DateRangeStart values in ascending order by start Date.
17
+ *
18
+ * @param a
19
+ * @param b
20
+ * @returns
21
+ */
22
+ export declare function sortDateRangeStartAscendingCompareFunction<T extends DateRangeStart>(a: T, b: T): number;
23
+ /**
24
+ * Represents a start and end date.
25
+ */
26
+ export interface DateRange extends DateRangeStart {
6
27
  end: Date;
7
28
  }
8
29
  export declare class DateRange {
@@ -17,6 +38,7 @@ export declare class DateRange {
17
38
  * @returns
18
39
  */
19
40
  export declare function isDateRange(input: unknown): input is DateRange;
41
+ export declare function isSameDateRange(a: Maybe<DateRange>, b: Maybe<DateRange>): boolean;
20
42
  export declare enum DateRangeType {
21
43
  /**
22
44
  * Includes only the target day.
@@ -121,21 +143,21 @@ export declare function dateRange({ type, date, distance, roundToMinute: inputRo
121
143
  * @returns
122
144
  */
123
145
  export declare function dateRangeState({ start, end }: DateRange): DateRangeState;
124
- export declare type DateRangeFunctionDateRangeRef<T extends DateRange = DateRange> = {
125
- _dateRange: T;
146
+ export declare type DateRangeFunctionDateRangeRef<T extends Partial<DateRange> = DateRange> = {
147
+ readonly _dateRange: T;
126
148
  };
127
149
  /**
128
- * Returns true if the input date is contained within the configured DateRange.
150
+ * Returns true if the input date is contained within the configured DateRange or DateRangeStart.
129
151
  */
130
- export declare type IsDateInDateRangeFunction<T extends DateRange = DateRange> = ((date: Date) => boolean) & DateRangeFunctionDateRangeRef<T>;
131
- export declare function isDateInDateRange(date: Date, dateRange: DateRange): boolean;
152
+ export declare type IsDateInDateRangeFunction<T extends Partial<DateRange> = DateRange> = ((date: Date) => boolean) & DateRangeFunctionDateRangeRef<T>;
153
+ export declare function isDateInDateRange(date: Date, dateRange: Partial<DateRange>): boolean;
132
154
  /**
133
155
  * Creates an IsDateInDateRangeFunction
134
156
  *
135
157
  * @param dateRange
136
158
  * @returns
137
159
  */
138
- export declare function isDateInDateRangeFunction<T extends DateRange = DateRange>(dateRange: T): IsDateInDateRangeFunction<T>;
160
+ export declare function isDateInDateRangeFunction<T extends Partial<DateRange>>(dateRange: T): IsDateInDateRangeFunction<T>;
139
161
  /**
140
162
  * Returns true if the input DateRange is contained within the configured DateRange.
141
163
  */
@@ -1,10 +1,32 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dateRangeOverlapsDateRangeFunction = exports.dateRangeOverlapsDateRange = exports.isDateRangeInDateRangeFunction = exports.isDateRangeInDateRange = exports.isDateInDateRangeFunction = exports.isDateInDateRange = exports.dateRangeState = exports.dateRange = exports.DateRangeParams = exports.DateRangeState = exports.DateRangeType = exports.isDateRange = exports.DateRange = void 0;
3
+ exports.dateRangeOverlapsDateRangeFunction = exports.dateRangeOverlapsDateRange = exports.isDateRangeInDateRangeFunction = exports.isDateRangeInDateRange = exports.isDateInDateRangeFunction = exports.isDateInDateRange = exports.dateRangeState = exports.dateRange = exports.DateRangeParams = exports.DateRangeState = exports.DateRangeType = exports.isSameDateRange = exports.isDateRange = exports.DateRange = exports.sortDateRangeStartAscendingCompareFunction = exports.isDateRangeStart = 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
+ const date_1 = require("./date");
9
+ /**
10
+ * Returns true if the input is a DateRangeStart.
11
+ *
12
+ * @param value
13
+ * @returns
14
+ */
15
+ function isDateRangeStart(value) {
16
+ return typeof value === 'object' && (0, date_fns_1.isDate)(value.start);
17
+ }
18
+ exports.isDateRangeStart = isDateRangeStart;
19
+ /**
20
+ * Sorts the input DateRangeStart values in ascending order by start Date.
21
+ *
22
+ * @param a
23
+ * @param b
24
+ * @returns
25
+ */
26
+ function sortDateRangeStartAscendingCompareFunction(a, b) {
27
+ return a.start.getTime() - b.start.getTime();
28
+ }
29
+ exports.sortDateRangeStartAscendingCompareFunction = sortDateRangeStartAscendingCompareFunction;
8
30
  class DateRange {
9
31
  constructor(template) {
10
32
  if (template) {
@@ -36,6 +58,10 @@ function isDateRange(input) {
36
58
  return typeof input === 'object' && (0, date_fns_1.isDate)(input.start) && (0, date_fns_1.isDate)(input.end);
37
59
  }
38
60
  exports.isDateRange = isDateRange;
61
+ function isSameDateRange(a, b) {
62
+ return (0, date_1.isSameDate)(a === null || a === void 0 ? void 0 : a.start, b === null || b === void 0 ? void 0 : b.start) && (0, date_1.isSameDate)(a === null || a === void 0 ? void 0 : a.end, b === null || b === void 0 ? void 0 : b.end);
63
+ }
64
+ exports.isSameDateRange = isSameDateRange;
39
65
  var DateRangeType;
40
66
  (function (DateRangeType) {
41
67
  /**
@@ -243,12 +269,35 @@ exports.isDateInDateRange = isDateInDateRange;
243
269
  * @returns
244
270
  */
245
271
  function isDateInDateRangeFunction(dateRange) {
246
- const startTime = dateRange.start.getTime();
247
- const endTime = dateRange.end.getTime();
248
- const fn = ((input) => {
249
- const time = input.getTime();
250
- return time >= startTime && time <= endTime;
251
- });
272
+ let fn;
273
+ if (dateRange.start != null && dateRange.end != null) {
274
+ // Start And End
275
+ const startTime = dateRange.start.getTime();
276
+ const endTime = dateRange.end.getTime();
277
+ fn = ((input) => {
278
+ const time = input.getTime();
279
+ return time >= startTime && time <= endTime;
280
+ });
281
+ }
282
+ else if (dateRange.start != null) {
283
+ // Start Only
284
+ const startTime = dateRange.start.getTime();
285
+ fn = ((input) => {
286
+ const time = input.getTime();
287
+ return time >= startTime;
288
+ });
289
+ }
290
+ else if (dateRange.end != null) {
291
+ // End Only
292
+ const endTime = dateRange.end.getTime();
293
+ fn = ((input) => {
294
+ const time = input.getTime();
295
+ return time <= endTime;
296
+ });
297
+ }
298
+ else {
299
+ fn = ((input) => false);
300
+ }
252
301
  fn._dateRange = dateRange;
253
302
  return fn;
254
303
  }
@@ -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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"}
@@ -0,0 +1,222 @@
1
+ import { StringOrder, Maybe, DayOfWeek, DecisionFunction, IndexRange, EnabledDays } from '@dereekb/util';
2
+ import { DateBlock, DateBlockDurationSpan, DateBlockIndex, DateBlocksExpansionFactory, DateBlockTiming } from './date.block';
3
+ import { DateRange } from './date.range';
4
+ import { YearWeekCodeConfig } from './date.week';
5
+ export declare enum DateScheduleDayCode {
6
+ /**
7
+ * Special no-op/unused code
8
+ */
9
+ NONE = 0,
10
+ SUNDAY = 1,
11
+ MONDAY = 2,
12
+ TUESDAY = 3,
13
+ WEDNESDAY = 4,
14
+ THURSDAY = 5,
15
+ FRIDAY = 6,
16
+ SATURDAY = 7,
17
+ /**
18
+ * All weekdays (Mon-Fri)
19
+ */
20
+ WEEKDAY = 8,
21
+ /**
22
+ * All weekend days (Sat/Sun)
23
+ */
24
+ WEEKEND = 9
25
+ }
26
+ /**
27
+ * Creates an EnabledDays from the input.
28
+ *
29
+ * @param input
30
+ * @returns
31
+ */
32
+ export declare function enabledDaysFromDateScheduleDayCodes(input: Maybe<Iterable<DateScheduleDayCode>>): EnabledDays;
33
+ /**
34
+ * Creates an array of simplified DateScheduleDayCode[] values from the input.
35
+ *
36
+ * @param input
37
+ * @returns
38
+ */
39
+ export declare function dateScheduleDayCodesFromEnabledDays(input: Maybe<EnabledDays>): DateScheduleDayCode[];
40
+ /**
41
+ * Encoded days of the week that the job block schedule should contain.
42
+ */
43
+ export declare type DateScheduleEncodedWeek = '' | StringOrder<`${DateScheduleDayCode}`, ''>;
44
+ export declare const DATE_SCHEDULE_ENCODED_WEEK_REGEX: RegExp;
45
+ /**
46
+ * Returns true if the input is a DateScheduleEncodedWeek.
47
+ *
48
+ * @param input
49
+ * @returns
50
+ */
51
+ export declare function isDateScheduleEncodedWeek(input: string): input is DateScheduleEncodedWeek;
52
+ /**
53
+ * Creates a DateScheduleEncodedWeek from an array of DateScheduleDayCode values.
54
+ *
55
+ * The returned encoded week is simplified.
56
+ *
57
+ * @param codes
58
+ */
59
+ export declare function dateScheduleEncodedWeek(codes: Iterable<DateScheduleDayCode>): DateScheduleEncodedWeek;
60
+ /**
61
+ * Reduces/merges any day codes into more simplified day codes.
62
+ *
63
+ * For instance, if all days of the week are selected, they will be reduced to "8".
64
+ *
65
+ * @param codes
66
+ * @returns
67
+ */
68
+ export declare function simplifyDateScheduleDayCodes(codes: Iterable<DateScheduleDayCode>): DateScheduleDayCode[];
69
+ /**
70
+ * Expands a DateScheduleEncodedWeek to an array of DateScheduleDayCode valeus.
71
+ *
72
+ * @param week
73
+ * @returns
74
+ */
75
+ export declare function expandDateScheduleEncodedWeek(week: DateScheduleEncodedWeek): DateScheduleDayCode[];
76
+ export declare type DateScheduleDayCodesInput = DateScheduleEncodedWeek | DateScheduleDayCode[];
77
+ /**
78
+ * Converts the input DateScheduleDayCodesInput to an array of DateScheduleDayCode values.
79
+ *
80
+ * @param input
81
+ * @returns
82
+ */
83
+ export declare function dateScheduleDayCodes(input: DateScheduleDayCodesInput): DateScheduleDayCode[];
84
+ /**
85
+ * Expands the input DateScheduleDayCodesInput to a Set of DayOfWeek values.
86
+ *
87
+ * @param input
88
+ * @returns
89
+ */
90
+ export declare function expandDateScheduleDayCodesToDayOfWeekSet(input: DateScheduleDayCodesInput): Set<DayOfWeek>;
91
+ /**
92
+ * Used to convert the input dates into a DateScheduleDayCode.
93
+ */
94
+ export declare type DateScheduleDayCodeFactory = (date: Date) => DateScheduleDayCode;
95
+ export declare type DateScheduleDayCodeConfig = Pick<YearWeekCodeConfig, 'timezone'>;
96
+ /**
97
+ * Creates a DateScheduleDayCodeFactory using the optional input config.
98
+ *
99
+ * @param config
100
+ * @returns
101
+ */
102
+ export declare function dateScheduleDayCodeFactory(config?: DateScheduleDayCodeConfig): DateScheduleDayCodeFactory;
103
+ /**
104
+ * Scheduled used to filter to disable DateBlock values for a job.
105
+ */
106
+ export interface DateSchedule {
107
+ /**
108
+ * Days of the week to include.
109
+ */
110
+ w: DateScheduleEncodedWeek;
111
+ /**
112
+ * Specific DateBlockIndex values to include.
113
+ */
114
+ d?: DateBlockIndex[];
115
+ /**
116
+ * Specific DateBlockIndex values to exclude.
117
+ */
118
+ ex?: DateBlockIndex[];
119
+ }
120
+ export declare function isSameDateSchedule(a: Maybe<DateSchedule>, b: Maybe<DateSchedule>): boolean;
121
+ export declare class DateSchedule implements DateSchedule {
122
+ w: DateScheduleEncodedWeek;
123
+ d?: DateBlockIndex[];
124
+ ex?: DateBlockIndex[];
125
+ }
126
+ /**
127
+ * A schedule that occurs during a specific range.
128
+ */
129
+ export interface DateScheduleRange extends DateSchedule, DateRange {
130
+ }
131
+ /**
132
+ * Returns true if both inputs have the same schedule and date range.
133
+ *
134
+ * @param a
135
+ * @param b
136
+ * @returns
137
+ */
138
+ export declare function isSameDateScheduleRange(a: Maybe<DateScheduleRange>, b: Maybe<DateScheduleRange>): boolean;
139
+ /**
140
+ * DateScheduleDateFilter input.
141
+ */
142
+ export declare type DateScheduleDateFilterInput = Date | DateBlockIndex;
143
+ /**
144
+ * Returns true if the date falls within the schedule.
145
+ */
146
+ export declare type DateScheduleDateFilter = DecisionFunction<DateScheduleDateFilterInput>;
147
+ /**
148
+ * dateScheduleDateFilter() configuration.
149
+ */
150
+ export interface DateScheduleDateFilterConfig extends DateSchedule, Partial<DateRange> {
151
+ }
152
+ /**
153
+ * Creates a DateScheduleDateFilter.
154
+ *
155
+ * @param config
156
+ * @returns
157
+ */
158
+ export declare function dateScheduleDateFilter(config: DateScheduleDateFilterConfig): DateScheduleDateFilter;
159
+ export declare type DateScheduleDateBlockTimingFilter<B extends DateBlock = DateBlock> = DecisionFunction<B>;
160
+ /**
161
+ * Configuration for dateScheduleDateBlockTimingFilter()
162
+ */
163
+ export interface DateScheduleDateBlockTimingFilterConfig {
164
+ /**
165
+ * Timing to filter with.
166
+ */
167
+ timing: DateBlockTiming;
168
+ /**
169
+ * Schedule to filter with.
170
+ */
171
+ schedule: DateSchedule;
172
+ /**
173
+ * Wether or not to expand on the inverse of the schedule, returning blocks that are not in the schedule.
174
+ *
175
+ * Other date filtering behaves the same (I.E. onlyBlocksNotYetStarted, etc.)
176
+ */
177
+ invertSchedule?: boolean;
178
+ /**
179
+ * (Optional) date to use when filtering from now.
180
+ */
181
+ now?: Date;
182
+ /**
183
+ * (Optional) filters in blocks that have not yet started.
184
+ */
185
+ onlyBlocksNotYetStarted?: boolean;
186
+ /**
187
+ * (Optional) filters in blocks that have not yet ended.
188
+ */
189
+ onlyBlocksNotYetEnded?: boolean;
190
+ /**
191
+ * (Optional) Maximum number of blocks to return.
192
+ */
193
+ maxDateBlocksToReturn?: number;
194
+ }
195
+ /**
196
+ * Creates a DateScheduleDateBlockTimingFilter.
197
+ *
198
+ * @param param0
199
+ * @returns
200
+ */
201
+ export declare function dateScheduleDateBlockTimingFilter<B extends DateBlock = DateBlock>({ timing, schedule }: DateScheduleDateBlockTimingFilterConfig): DateScheduleDateBlockTimingFilter<B>;
202
+ /**
203
+ * Creates a DateBlocksExpansionFactory using the input DateScheduleDateBlockTimingFilterConfig.
204
+ *
205
+ * @param config
206
+ * @returns
207
+ */
208
+ export declare function expandDateScheduleFactory<B extends DateBlock = DateBlock>(config: DateScheduleDateBlockTimingFilterConfig): DateBlocksExpansionFactory<B>;
209
+ export interface ExpandDateScheduleInput extends DateScheduleDateBlockTimingFilterConfig {
210
+ inputRange?: IndexRange;
211
+ }
212
+ /**
213
+ * Expands the input DateBlockTiming and DateSchedule into an array of DateBlockDurationSpan value that correspond with blocks in the event.
214
+ *
215
+ * Can optionally provide an IndexRange to specify a specific range to filter on. The range will be capped to the range of the timing.
216
+ *
217
+ * @param timing
218
+ * @param schedule
219
+ * @param inputRange
220
+ * @returns
221
+ */
222
+ export declare function expandDateSchedule(input: ExpandDateScheduleInput): DateBlockDurationSpan<DateBlock>[];