@dereekb/dbx-form 9.24.47 → 9.25.0
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/calendar/lib/calendar.schedule.selection.d.ts +3 -3
- package/calendar/lib/calendar.schedule.selection.store.d.ts +86 -57
- package/calendar/lib/field/schedule/calendar.schedule.field.component.d.ts +20 -18
- package/calendar/lib/field/schedule/calendar.schedule.field.d.ts +3 -3
- package/calendar/lib/field/schedule/calendar.schedule.module.d.ts +4 -4
- package/esm2020/calendar/lib/calendar.module.mjs +1 -1
- package/esm2020/calendar/lib/calendar.schedule.selection.days.component.mjs +6 -6
- package/esm2020/calendar/lib/calendar.schedule.selection.mjs +1 -1
- package/esm2020/calendar/lib/calendar.schedule.selection.store.mjs +100 -66
- package/esm2020/calendar/lib/field/schedule/calendar.schedule.field.component.mjs +10 -13
- package/esm2020/calendar/lib/field/schedule/calendar.schedule.field.mjs +2 -3
- package/esm2020/calendar/lib/field/schedule/calendar.schedule.module.mjs +10 -10
- package/fesm2015/dereekb-dbx-form-calendar.mjs +124 -90
- package/fesm2015/dereekb-dbx-form-calendar.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-form-calendar.mjs +121 -91
- package/fesm2020/dereekb-dbx-form-calendar.mjs.map +1 -1
- package/lib/extension/calendar/_calendar.scss +29 -0
- package/mapbox/package.json +4 -4
- package/package.json +4 -4
|
@@ -5,7 +5,7 @@ import { Injectable, SkipSelf, Directive, Injector, Optional, Component, Inject,
|
|
|
5
5
|
import { FieldType } from '@ngx-formly/material';
|
|
6
6
|
import { switchMap, first, tap, map, distinctUntilChanged, shareReplay, of, combineLatestWith, BehaviorSubject, filter, combineLatest, startWith, throttleTime } from 'rxjs';
|
|
7
7
|
import { filterMaybe, distinctUntilHasDifferentValues, SubscriptionObject, asObservableFromGetter, asObservable } from '@dereekb/rxjs';
|
|
8
|
-
import {
|
|
8
|
+
import { DateCellScheduleDayCode, expandDateCellScheduleDayCodesToDayOfWeekSet, dateCellTimingStartsAtForStartOfDay, dateCellTimingRelativeIndexFactory, dateCellDayOfWeekFactory, findMaxDate, findMinDate, isSameDateRange, isSameDateDay, isSameDate, dateCellTimingDateFactory, expandDateCellScheduleRange, formatToISO8601DayString, isSameDateCellScheduleDateRange, dateCellTimingRelativeIndexArrayFactory, isInfiniteDateRange, copyDateCellScheduleDateFilterConfig, dateCellScheduleDateFilter, dateTimezoneUtcNormal, fullDateCellScheduleRange, expandDateCellScheduleDayCodes, fullWeekDateCellScheduleDayCodes, dateCellScheduleDayCodesAreSetsEquivalent, simplifyDateCellScheduleDayCodes, isDateInDateRangeFunction, isDateWithinDateCellRangeFunction, copyHoursAndMinutesFromDate, dateCellScheduleEncodedWeek, dateCellTimingStartDateFactory, enabledDaysFromDateCellScheduleDayCodes, dateCellScheduleDayCodesFromEnabledDays, formatToMonthDayString, dateRange, DateRangeType } from '@dereekb/date';
|
|
9
9
|
import { isInAllowedDaysOfWeekSet, mapValuesToSet, unique, mergeArrays, iterableToArray, range, toggleInSet, removeFromSet, addToSet, isIndexNumberInIndexRangeFunction, minAndMaxNumber, getDaysOfWeekNames, reduceBooleansWithAnd, mergeObjects, KeyValueTypleValueFilter } from '@dereekb/util';
|
|
10
10
|
import { ComponentStore } from '@ngrx/component-store';
|
|
11
11
|
import { startOfDay, endOfDay, isBefore, endOfWeek } from 'date-fns';
|
|
@@ -38,7 +38,7 @@ import { FlexLayoutModule } from '@angular/flex-layout';
|
|
|
38
38
|
|
|
39
39
|
function dateScheduleRangeField(config = {}) {
|
|
40
40
|
var _a;
|
|
41
|
-
const { key = 'schedule', appearance, hideCustomize, allowTextInput, filter, timezone, initialSelectionState, computeSelectionResultRelativeToFilter, exclusions, defaultScheduleDays, minMaxDateRange, cellContentFactory, dialogContentConfig,
|
|
41
|
+
const { key = 'schedule', appearance, hideCustomize, allowTextInput, filter, timezone, initialSelectionState, computeSelectionResultRelativeToFilter, exclusions, defaultScheduleDays, minMaxDateRange, cellContentFactory, dialogContentConfig, customDetailsConfig } = config;
|
|
42
42
|
const fieldConfig = Object.assign({}, formlyField(Object.assign({ key, type: 'date-schedule-range' }, propsAndConfigForFieldConfig(config, {
|
|
43
43
|
label: (_a = config.label) !== null && _a !== void 0 ? _a : 'Schedule',
|
|
44
44
|
allowTextInput,
|
|
@@ -50,7 +50,6 @@ function dateScheduleRangeField(config = {}) {
|
|
|
50
50
|
filter,
|
|
51
51
|
exclusions,
|
|
52
52
|
dialogContentConfig,
|
|
53
|
-
closeDialogConfig,
|
|
54
53
|
computeSelectionResultRelativeToFilter,
|
|
55
54
|
initialSelectionState,
|
|
56
55
|
cellContentFactory,
|
|
@@ -91,13 +90,15 @@ const defaultCalendarScheduleSelectionCellContentFactory = (day) => {
|
|
|
91
90
|
};
|
|
92
91
|
|
|
93
92
|
function initialCalendarScheduleSelectionState() {
|
|
94
|
-
const defaultScheduleDays = new Set([
|
|
95
|
-
const allowedDaysOfWeek =
|
|
96
|
-
const
|
|
97
|
-
const
|
|
98
|
-
const
|
|
93
|
+
const defaultScheduleDays = new Set([DateCellScheduleDayCode.WEEKDAY, DateCellScheduleDayCode.WEEKEND]);
|
|
94
|
+
const allowedDaysOfWeek = expandDateCellScheduleDayCodesToDayOfWeekSet(defaultScheduleDays);
|
|
95
|
+
const defaultStartsAt = dateCellTimingStartsAtForStartOfDay(); // get midnight of the current timezone
|
|
96
|
+
const { startsAt, timezone: systemTimezone } = defaultStartsAt;
|
|
97
|
+
const indexFactory = dateCellTimingRelativeIndexFactory(defaultStartsAt);
|
|
98
|
+
const indexDayOfWeek = dateCellDayOfWeekFactory(startsAt);
|
|
99
99
|
return {
|
|
100
|
-
start,
|
|
100
|
+
start: startsAt,
|
|
101
|
+
systemTimezone,
|
|
101
102
|
indexFactory,
|
|
102
103
|
toggledIndexes: new Set(),
|
|
103
104
|
defaultScheduleDays,
|
|
@@ -169,19 +170,19 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
|
|
|
169
170
|
this.allowedDaysOfWeek$ = this.state$.pipe(map((x) => x.allowedDaysOfWeek), distinctUntilHasDifferentValues(), shareReplay(1));
|
|
170
171
|
this.isInAllowedDaysOfWeekFunction$ = this.allowedDaysOfWeek$.pipe(map((x) => isInAllowedDaysOfWeekSet(x)), shareReplay(1));
|
|
171
172
|
this.scheduleDays$ = this.state$.pipe(map((x) => x.effectiveScheduleDays), distinctUntilHasDifferentValues(), shareReplay(1));
|
|
172
|
-
this.
|
|
173
|
-
this.
|
|
174
|
-
this.
|
|
173
|
+
this.outputTimezone$ = this.state$.pipe(map((x) => x.outputTimezone), distinctUntilChanged(), shareReplay(1));
|
|
174
|
+
this.effectiveOutputTimezone$ = this.state$.pipe(map((x) => (!calendarScheduleStartBeingUsedFromFilter(x) && x.outputTimezone ? x.outputTimezone : undefined)), distinctUntilChanged(), shareReplay(1));
|
|
175
|
+
this.effectiveOutputTimezoneNormal$ = this.state$.pipe(map((x) => (!calendarScheduleStartBeingUsedFromFilter(x) && x.outputTimezoneNormal ? x.outputTimezoneNormal : undefined)), distinctUntilChanged(), shareReplay(1));
|
|
175
176
|
this.currentSelectionValue$ = this.state$.pipe(map((x) => x.currentSelectionValue), shareReplay(1));
|
|
176
177
|
this.currentSelectionValueStart$ = this.currentSelectionValue$.pipe(map((x) => x === null || x === void 0 ? void 0 : x.dateScheduleRange.start), distinctUntilChanged(isSameDate), shareReplay(1));
|
|
177
|
-
this.
|
|
178
|
-
this.
|
|
179
|
-
this.selectionValueSelectedIndexes$ = this.
|
|
180
|
-
this.selectionValueSelectedDates$ = this.
|
|
178
|
+
this.currentSelectionValueDateCellTimingDateFactory$ = this.currentSelectionValue$.pipe(map((x) => (x ? dateCellTimingDateFactory({ startsAt: x.dateScheduleRange.start, timezone: x.dateScheduleRange.timezone }) : undefined)), shareReplay(1));
|
|
179
|
+
this.currentSelectionValueDateCellDurationSpanExpansion$ = this.currentSelectionValue$.pipe(map((x) => (x ? expandDateCellScheduleRange({ dateCellScheduleRange: x.dateScheduleRange }) : [])), shareReplay(1));
|
|
180
|
+
this.selectionValueSelectedIndexes$ = this.currentSelectionValueDateCellDurationSpanExpansion$.pipe(map((x) => new Set(x.map((y) => y.i))), distinctUntilHasDifferentValues(), shareReplay(1));
|
|
181
|
+
this.selectionValueSelectedDates$ = this.currentSelectionValueDateCellTimingDateFactory$.pipe(switchMap((dateFactory) => {
|
|
181
182
|
return dateFactory ? this.selectionValueSelectedIndexes$.pipe(map((x) => mapValuesToSet(x, (y) => formatToISO8601DayString(dateFactory(y))))) : of(new Set());
|
|
182
183
|
}), shareReplay(1));
|
|
183
184
|
this.selectionValue$ = this.currentSelectionValue$.pipe(filterMaybe(), shareReplay(1));
|
|
184
|
-
this.currentSelectionValueWithTimezone$ = this.currentSelectionValue$.pipe(combineLatestWith(this.
|
|
185
|
+
this.currentSelectionValueWithTimezone$ = this.currentSelectionValue$.pipe(combineLatestWith(this.effectiveOutputTimezoneNormal$), map(([x, timezoneNormal]) => {
|
|
185
186
|
if (x && timezoneNormal) {
|
|
186
187
|
x = {
|
|
187
188
|
dateScheduleRange: Object.assign(Object.assign({}, x.dateScheduleRange), { start: timezoneNormal.targetDateToSystemDate(x.dateScheduleRange.start), end: timezoneNormal.targetDateToSystemDate(x.dateScheduleRange.end) })
|
|
@@ -190,7 +191,7 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
|
|
|
190
191
|
return x;
|
|
191
192
|
}), distinctUntilChanged(), shareReplay(1));
|
|
192
193
|
this.selectionValueWithTimezone$ = this.currentSelectionValueWithTimezone$.pipe(filterMaybe(), shareReplay(1));
|
|
193
|
-
this.
|
|
194
|
+
this.selectionValueWithTimezoneDateCellDurationSpanExpansion$ = this.selectionValueWithTimezone$.pipe(map((x) => expandDateCellScheduleRange({ dateCellScheduleRange: x.dateScheduleRange })), shareReplay(1));
|
|
194
195
|
this.nextToggleSelection$ = this.hasConfiguredMinMaxRange$.pipe(switchMap((hasConfiguredMinMaxRange) => {
|
|
195
196
|
let obs;
|
|
196
197
|
if (hasConfiguredMinMaxRange) {
|
|
@@ -201,8 +202,8 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
|
|
|
201
202
|
}
|
|
202
203
|
return obs;
|
|
203
204
|
}), shareReplay(1));
|
|
204
|
-
this.
|
|
205
|
-
this.
|
|
205
|
+
this.currentDateCellScheduleRangeValue$ = this.currentSelectionValueWithTimezone$.pipe(map((x) => x === null || x === void 0 ? void 0 : x.dateScheduleRange), distinctUntilChanged(isSameDateCellScheduleDateRange), shareReplay(1));
|
|
206
|
+
this.dateCellScheduleRangeValue$ = this.currentDateCellScheduleRangeValue$.pipe(filterMaybe(), shareReplay(1));
|
|
206
207
|
this.cellContentFactory$ = this.state$.pipe(map((x) => x.cellContentFactory), distinctUntilChanged(), shareReplay(1));
|
|
207
208
|
this.isCustomized$ = this.state$.pipe(map((x) => x.toggledIndexes.size > 0), distinctUntilChanged(), shareReplay(1));
|
|
208
209
|
this.isViewReadonly$ = this.state$.pipe(map((x) => x.isViewReadonly), distinctUntilChanged(), shareReplay(1));
|
|
@@ -213,7 +214,7 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
|
|
|
213
214
|
this.setExclusions = this.updater(updateStateWithExclusions);
|
|
214
215
|
this.setComputeSelectionResultRelativeToFilter = this.updater(updateStateWithComputeSelectionResultRelativeToFilter);
|
|
215
216
|
this.clearFilter = this.updater((state) => updateStateWithFilter(state, undefined));
|
|
216
|
-
this.
|
|
217
|
+
this.setOutputTimezone = this.updater(updateStateWithTimezoneValue);
|
|
217
218
|
this.setInputRange = this.updater(updateStateWithChangedRange);
|
|
218
219
|
// NOTE: Selected dates are NOT selected indexes. They are the internal selected dates that are excluded from the selection.
|
|
219
220
|
this.toggleSelectedDates = this.updater((state, toggle) => updateStateWithChangedDates(state, { toggle }));
|
|
@@ -226,8 +227,8 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
|
|
|
226
227
|
this.setInitialSelectionState = this.updater(updateStateWithInitialSelectionState);
|
|
227
228
|
this.setDefaultScheduleDays = this.updater(updateStateWithChangedDefaultScheduleDays);
|
|
228
229
|
this.setScheduleDays = this.updater(updateStateWithChangedScheduleDays);
|
|
229
|
-
this.setAllowAllScheduleDays = this.updater((state) => updateStateWithChangedScheduleDays(state, [
|
|
230
|
-
this.setDateScheduleRangeValue = this.updater((state, value) =>
|
|
230
|
+
this.setAllowAllScheduleDays = this.updater((state) => updateStateWithChangedScheduleDays(state, [DateCellScheduleDayCode.WEEKDAY, DateCellScheduleDayCode.WEEKEND]));
|
|
231
|
+
this.setDateScheduleRangeValue = this.updater((state, value) => updateStateWithDateCellScheduleRangeValue(state, value));
|
|
231
232
|
this.setCellContentFactory = this.updater((state, cellContentFactory) => (Object.assign(Object.assign({}, state), { cellContentFactory })));
|
|
232
233
|
/**
|
|
233
234
|
* Used by the parent view to propogate a readonly state.
|
|
@@ -235,6 +236,31 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
|
|
|
235
236
|
* Should typically not be used by the user directly with the intention of the parent synchronizing to this state.
|
|
236
237
|
*/
|
|
237
238
|
this.setViewReadonlyState = this.updater((state, isViewReadonly) => (Object.assign(Object.assign({}, state), { isViewReadonly })));
|
|
239
|
+
// MARK: Compat
|
|
240
|
+
/**
|
|
241
|
+
* @deprecated use setOutputTimezone instead.
|
|
242
|
+
*/
|
|
243
|
+
this.setTimezone = this.setOutputTimezone;
|
|
244
|
+
/**
|
|
245
|
+
* @deprecated use ouputTimezone$
|
|
246
|
+
*/
|
|
247
|
+
this.currentTimezone$ = this.outputTimezone$;
|
|
248
|
+
/**
|
|
249
|
+
* @deprecated use effectiveOuputTimezone$
|
|
250
|
+
*/
|
|
251
|
+
this.effectiveTimezone$ = this.effectiveOutputTimezone$;
|
|
252
|
+
/**
|
|
253
|
+
* @deprecated use effectiveOuputTimezoneNormal$
|
|
254
|
+
*/
|
|
255
|
+
this.effectiveTimezoneNormal$ = this.effectiveOutputTimezoneNormal$;
|
|
256
|
+
/**
|
|
257
|
+
* @deprecated use currentSelectionValueDateCellDurationSpanExpansion$
|
|
258
|
+
*/
|
|
259
|
+
this.currentSelectionValueDateBlockDurationSpan$ = this.currentSelectionValueDateCellDurationSpanExpansion$;
|
|
260
|
+
/**
|
|
261
|
+
* @deprecated use selectionValueWithTimezoneDateCellDurationSpanExpansion$
|
|
262
|
+
*/
|
|
263
|
+
this.selectionValueWithTimezoneDateBlockDurationSpan$ = this.selectionValueWithTimezoneDateCellDurationSpanExpansion$;
|
|
238
264
|
}
|
|
239
265
|
}
|
|
240
266
|
DbxCalendarScheduleSelectionStore.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -260,7 +286,7 @@ function updateStateWithExclusions(state, inputExclusions) {
|
|
|
260
286
|
let computedExclusions;
|
|
261
287
|
if (inputExclusions) {
|
|
262
288
|
const { indexFactory } = state;
|
|
263
|
-
const indexArrayFactory =
|
|
289
|
+
const indexArrayFactory = dateCellTimingRelativeIndexArrayFactory(indexFactory);
|
|
264
290
|
computedExclusions = indexArrayFactory(inputExclusions);
|
|
265
291
|
}
|
|
266
292
|
state = Object.assign(Object.assign({}, state), { inputExclusions, computedExclusions });
|
|
@@ -280,15 +306,15 @@ function updateStateWithMinMaxDateRange(state, minMaxDateRange) {
|
|
|
280
306
|
return updateStateWithFilter(state, state.filter);
|
|
281
307
|
}
|
|
282
308
|
function updateStateWithFilter(state, inputFilter) {
|
|
283
|
-
var _a;
|
|
284
|
-
const { computedExclusions: exclusions, minMaxDateRange } = state;
|
|
309
|
+
var _a, _b;
|
|
310
|
+
const { computedExclusions: exclusions, minMaxDateRange, systemTimezone } = state;
|
|
285
311
|
let isEnabledFilterDay = () => true;
|
|
286
312
|
let filter = null;
|
|
287
313
|
// create the filter using inputFilter, exclusions, and minMaxDateRange
|
|
288
314
|
if (inputFilter || (exclusions === null || exclusions === void 0 ? void 0 : exclusions.length) || minMaxDateRange) {
|
|
289
315
|
let enabledFilter;
|
|
290
316
|
if (inputFilter) {
|
|
291
|
-
filter =
|
|
317
|
+
filter = copyDateCellScheduleDateFilterConfig(inputFilter); // copy filter
|
|
292
318
|
if (exclusions === null || exclusions === void 0 ? void 0 : exclusions.length) {
|
|
293
319
|
enabledFilter = Object.assign(Object.assign({}, filter), { ex: unique(mergeArrays([filter.ex, exclusions])) });
|
|
294
320
|
}
|
|
@@ -312,15 +338,15 @@ function updateStateWithFilter(state, inputFilter) {
|
|
|
312
338
|
*/
|
|
313
339
|
enabledFilter.start = (_a = inputFilter === null || inputFilter === void 0 ? void 0 : inputFilter.start) !== null && _a !== void 0 ? _a : state.start;
|
|
314
340
|
// create the filter
|
|
315
|
-
isEnabledFilterDay =
|
|
341
|
+
isEnabledFilterDay = dateCellScheduleDateFilter(enabledFilter);
|
|
316
342
|
}
|
|
317
343
|
state = Object.assign(Object.assign({}, state), { filter, isEnabledFilterDay });
|
|
318
344
|
// For the same reason as above, use the filter's start date as the relative start if applicable.
|
|
319
345
|
if (filter && filter.start) {
|
|
320
346
|
const start = filter.start;
|
|
321
347
|
state.start = start;
|
|
322
|
-
state.indexFactory =
|
|
323
|
-
state.indexDayOfWeek =
|
|
348
|
+
state.indexFactory = dateCellTimingRelativeIndexFactory({ startsAt: start, timezone: (_b = filter.timezone) !== null && _b !== void 0 ? _b : systemTimezone });
|
|
349
|
+
state.indexDayOfWeek = dateCellDayOfWeekFactory(start);
|
|
324
350
|
}
|
|
325
351
|
// attempt to re-apply the initial selection state once filter is applied
|
|
326
352
|
if (state.initialSelectionState) {
|
|
@@ -338,35 +364,45 @@ function updateStateWithTimezoneValue(state, timezone) {
|
|
|
338
364
|
const timezoneNormal = timezone ? dateTimezoneUtcNormal({ timezone }) : undefined;
|
|
339
365
|
if (timezoneNormal && currentSelectionValue) {
|
|
340
366
|
// update the selection value to reflect the timezone changes.
|
|
341
|
-
const { dateScheduleRange:
|
|
342
|
-
const start = timezoneNormal.targetDateToSystemDate(
|
|
343
|
-
const end = timezoneNormal.targetDateToSystemDate(
|
|
367
|
+
const { dateScheduleRange: currentDateCellScheduleRange } = currentSelectionValue;
|
|
368
|
+
const start = timezoneNormal.targetDateToSystemDate(currentDateCellScheduleRange.start);
|
|
369
|
+
const end = timezoneNormal.targetDateToSystemDate(currentDateCellScheduleRange.end);
|
|
344
370
|
const newRange = Object.assign(Object.assign({}, currentSelectionValue.dateScheduleRange), { start,
|
|
345
371
|
end });
|
|
346
|
-
return
|
|
372
|
+
return updateStateWithDateCellScheduleRangeValue(Object.assign(Object.assign({}, state), { outputTimezone: timezone, outputTimezoneNormal: timezoneNormal }), newRange);
|
|
347
373
|
}
|
|
348
374
|
else {
|
|
349
|
-
return Object.assign(Object.assign({}, state), { timezone, timezoneNormal }); // no change in value
|
|
375
|
+
return Object.assign(Object.assign({}, state), { outputTimezone: timezone, outputTimezoneNormal: timezoneNormal }); // no change in value
|
|
350
376
|
}
|
|
351
377
|
}
|
|
352
|
-
function
|
|
353
|
-
const { timezoneNormal, currentSelectionValue } = state;
|
|
354
|
-
const
|
|
378
|
+
function updateStateWithDateCellScheduleRangeValue(state, inputChange) {
|
|
379
|
+
const { outputTimezoneNormal: timezoneNormal, currentSelectionValue } = state;
|
|
380
|
+
const currentDateCellScheduleRange = currentSelectionValue === null || currentSelectionValue === void 0 ? void 0 : currentSelectionValue.dateScheduleRange; // current range is always in system time
|
|
381
|
+
let change;
|
|
355
382
|
if (!calendarScheduleStartBeingUsedFromFilter(state) && timezoneNormal) {
|
|
356
383
|
// When using timezones, always return from the start of the day. Inputs are converted to the system time and used as the start of the day.
|
|
357
384
|
// Outputs remain accurate.
|
|
358
|
-
if (
|
|
359
|
-
|
|
385
|
+
if (inputChange) {
|
|
386
|
+
// calculate the schedule range
|
|
387
|
+
const fullChange = fullDateCellScheduleRange({ dateCellScheduleRange: inputChange });
|
|
388
|
+
// convert the start/end to system time
|
|
389
|
+
change = {
|
|
390
|
+
start: startOfDay(timezoneNormal.systemDateToTargetDate(fullChange.start)),
|
|
391
|
+
end: startOfDay(timezoneNormal.systemDateToTargetDate(fullChange.end)),
|
|
392
|
+
w: fullChange.w,
|
|
393
|
+
ex: fullChange.ex,
|
|
394
|
+
timezone: fullChange.timezone
|
|
395
|
+
};
|
|
360
396
|
}
|
|
361
397
|
}
|
|
362
|
-
const isSameValue =
|
|
398
|
+
const isSameValue = isSameDateCellScheduleDateRange(currentDateCellScheduleRange, change);
|
|
363
399
|
if (isSameValue) {
|
|
364
400
|
return state;
|
|
365
401
|
}
|
|
366
402
|
else {
|
|
367
403
|
if (change != null) {
|
|
368
404
|
const nextState = Object.assign(Object.assign({}, state), { inputStart: change.start, inputEnd: change.end, toggledIndexes: new Set(change.ex) });
|
|
369
|
-
return updateStateWithChangedScheduleDays(finalizeNewCalendarScheduleSelectionState(nextState),
|
|
405
|
+
return updateStateWithChangedScheduleDays(finalizeNewCalendarScheduleSelectionState(nextState), expandDateCellScheduleDayCodes(change.w || '89'));
|
|
370
406
|
}
|
|
371
407
|
else {
|
|
372
408
|
return noSelectionCalendarScheduleSelectionState(state); // clear selection, retain disabled days
|
|
@@ -375,8 +411,8 @@ function updateStateWithDateScheduleRangeValue(state, change) {
|
|
|
375
411
|
}
|
|
376
412
|
function updateStateWithChangedDefaultScheduleDays(state, change) {
|
|
377
413
|
const { defaultScheduleDays: currentDefaultScheduleDays } = state;
|
|
378
|
-
const defaultScheduleDays = new Set(change !== null && change !== void 0 ? change :
|
|
379
|
-
if (
|
|
414
|
+
const defaultScheduleDays = new Set(change !== null && change !== void 0 ? change : fullWeekDateCellScheduleDayCodes());
|
|
415
|
+
if (dateCellScheduleDayCodesAreSetsEquivalent(defaultScheduleDays, currentDefaultScheduleDays)) {
|
|
380
416
|
return state; // no change
|
|
381
417
|
}
|
|
382
418
|
else {
|
|
@@ -388,7 +424,7 @@ function updateStateWithChangedScheduleDays(state, change) {
|
|
|
388
424
|
const scheduleDays = new Set(change !== null && change !== void 0 ? change : []);
|
|
389
425
|
let newScheduleDays;
|
|
390
426
|
if (currentScheduleDays != null && change != null) {
|
|
391
|
-
if (
|
|
427
|
+
if (dateCellScheduleDayCodesAreSetsEquivalent(scheduleDays, currentScheduleDays)) {
|
|
392
428
|
newScheduleDays = undefined; //no change
|
|
393
429
|
}
|
|
394
430
|
else {
|
|
@@ -409,12 +445,12 @@ function finalizeUpdateStateWithChangedScheduleDays(previousState, nextState) {
|
|
|
409
445
|
var _a;
|
|
410
446
|
const previousScheduleDays = previousState.effectiveScheduleDays;
|
|
411
447
|
const nextScheduleDays = (_a = nextState.scheduleDays) !== null && _a !== void 0 ? _a : nextState.defaultScheduleDays;
|
|
412
|
-
if (
|
|
448
|
+
if (dateCellScheduleDayCodesAreSetsEquivalent(nextScheduleDays, previousScheduleDays)) {
|
|
413
449
|
return nextState; // the default or input schedule changed but the schedule is still the same, so no need for an update.
|
|
414
450
|
}
|
|
415
451
|
else {
|
|
416
|
-
const effectiveScheduleDays = new Set(
|
|
417
|
-
const allowedDaysOfWeek =
|
|
452
|
+
const effectiveScheduleDays = new Set(simplifyDateCellScheduleDayCodes(nextScheduleDays));
|
|
453
|
+
const allowedDaysOfWeek = expandDateCellScheduleDayCodesToDayOfWeekSet(nextScheduleDays);
|
|
418
454
|
return finalizeNewCalendarScheduleSelectionState(Object.assign(Object.assign({}, nextState), {
|
|
419
455
|
// update the effective schedule days and allowed days of week
|
|
420
456
|
effectiveScheduleDays,
|
|
@@ -533,10 +569,10 @@ function finalizeNewCalendarScheduleSelectionState(nextState) {
|
|
|
533
569
|
return nextState;
|
|
534
570
|
}
|
|
535
571
|
function isEnabledDayInCalendarScheduleSelectionState(state) {
|
|
536
|
-
const { allowedDaysOfWeek, indexFactory, inputStart, inputEnd, indexDayOfWeek } = state;
|
|
572
|
+
const { allowedDaysOfWeek, indexFactory, inputStart, inputEnd, indexDayOfWeek, systemTimezone } = state;
|
|
537
573
|
let isInStartAndEndRange;
|
|
538
574
|
if (inputStart && inputEnd) {
|
|
539
|
-
isInStartAndEndRange =
|
|
575
|
+
isInStartAndEndRange = isDateWithinDateCellRangeFunction({ startsAt: { startsAt: state.start, timezone: systemTimezone }, range: { start: inputStart, end: inputEnd } });
|
|
540
576
|
}
|
|
541
577
|
else {
|
|
542
578
|
isInStartAndEndRange = () => false;
|
|
@@ -552,14 +588,14 @@ function isEnabledDayInCalendarScheduleSelectionState(state) {
|
|
|
552
588
|
};
|
|
553
589
|
}
|
|
554
590
|
function computeScheduleSelectionValue(state) {
|
|
555
|
-
const { indexFactory, allowedDaysOfWeek, effectiveScheduleDays, indexDayOfWeek, computeSelectionResultRelativeToFilter, filter } = state;
|
|
591
|
+
const { indexFactory, allowedDaysOfWeek, effectiveScheduleDays, indexDayOfWeek, computeSelectionResultRelativeToFilter, filter, systemTimezone } = state;
|
|
556
592
|
const rangeAndExclusion = computeScheduleSelectionRangeAndExclusion(state);
|
|
557
593
|
if (rangeAndExclusion == null) {
|
|
558
594
|
return null;
|
|
559
595
|
}
|
|
560
|
-
const { start: rangeStart, end: rangeEnd, excluded: allExcluded,
|
|
596
|
+
const { start: rangeStart, end: rangeEnd, excluded: allExcluded, dateCellRange } = rangeAndExclusion;
|
|
561
597
|
let filterOffsetExcludedRange = [];
|
|
562
|
-
let indexOffset =
|
|
598
|
+
let indexOffset = dateCellRange.i;
|
|
563
599
|
let start = rangeStart;
|
|
564
600
|
let end = rangeEnd;
|
|
565
601
|
// If computeSelectionResultRelativeToFilter is true, then we need to offset the values to be relative to that start.
|
|
@@ -580,13 +616,14 @@ function computeScheduleSelectionValue(state) {
|
|
|
580
616
|
: allExcluded;
|
|
581
617
|
const offsetExcluded = excluded.map((x) => x - indexOffset); // set to the proper offset
|
|
582
618
|
const ex = [...filterOffsetExcludedRange, ...offsetExcluded];
|
|
583
|
-
const w =
|
|
619
|
+
const w = dateCellScheduleEncodedWeek(effectiveScheduleDays);
|
|
584
620
|
const d = []; // "included" blocks are never used/calculated.
|
|
585
621
|
// Always ensure the end is after or equal to the start.
|
|
586
622
|
if (isBefore(end, start)) {
|
|
587
623
|
end = start; // end is start
|
|
588
624
|
}
|
|
589
625
|
const dateScheduleRange = {
|
|
626
|
+
timezone: systemTimezone,
|
|
590
627
|
start,
|
|
591
628
|
end,
|
|
592
629
|
w,
|
|
@@ -599,20 +636,20 @@ function computeScheduleSelectionValue(state) {
|
|
|
599
636
|
};
|
|
600
637
|
}
|
|
601
638
|
function computeScheduleSelectionRangeAndExclusion(state) {
|
|
602
|
-
const { start: currentStart, isEnabledDay, isEnabledFilterDay } = state;
|
|
603
|
-
const dateFactory =
|
|
604
|
-
const
|
|
605
|
-
if (
|
|
639
|
+
const { start: currentStart, isEnabledDay, isEnabledFilterDay, systemTimezone } = state;
|
|
640
|
+
const dateFactory = dateCellTimingStartDateFactory({ startsAt: currentStart, timezone: systemTimezone });
|
|
641
|
+
const dateCellRange = computeCalendarScheduleSelectionDateCellRange(state);
|
|
642
|
+
if (dateCellRange == null) {
|
|
606
643
|
return null; // returns null if no items are selected.
|
|
607
644
|
}
|
|
608
|
-
const start = dateFactory(
|
|
609
|
-
const end = dateFactory(
|
|
610
|
-
const excluded = range(
|
|
645
|
+
const start = dateFactory(dateCellRange.i);
|
|
646
|
+
const end = dateFactory(dateCellRange.to);
|
|
647
|
+
const excluded = range(dateCellRange.i, dateCellRange.to + 1).filter((x) => {
|
|
611
648
|
const isExcludedIndex = !isEnabledDay(x) || !isEnabledFilterDay(x);
|
|
612
649
|
return isExcludedIndex;
|
|
613
650
|
});
|
|
614
651
|
const result = {
|
|
615
|
-
|
|
652
|
+
dateCellRange,
|
|
616
653
|
start,
|
|
617
654
|
end,
|
|
618
655
|
excluded
|
|
@@ -620,12 +657,12 @@ function computeScheduleSelectionRangeAndExclusion(state) {
|
|
|
620
657
|
return result;
|
|
621
658
|
}
|
|
622
659
|
function computeCalendarScheduleSelectionRange(state) {
|
|
623
|
-
const dateFactory =
|
|
624
|
-
const
|
|
625
|
-
const dateRange =
|
|
660
|
+
const dateFactory = dateCellTimingDateFactory({ startsAt: state.start, timezone: state.systemTimezone });
|
|
661
|
+
const dateCellRange = computeCalendarScheduleSelectionDateCellRange(state);
|
|
662
|
+
const dateRange = dateCellRange != null ? { start: dateFactory(dateCellRange.i), end: dateFactory(dateCellRange.to) } : undefined;
|
|
626
663
|
return dateRange;
|
|
627
664
|
}
|
|
628
|
-
function
|
|
665
|
+
function computeCalendarScheduleSelectionDateCellRange(state) {
|
|
629
666
|
const { allowedDaysOfWeek, indexFactory, inputStart, inputEnd, indexDayOfWeek, isEnabledDay, isEnabledFilterDay } = state;
|
|
630
667
|
const enabledExclusionIndexes = Array.from(state.toggledIndexes).filter((i) => allowedDaysOfWeek.has(indexDayOfWeek(i)));
|
|
631
668
|
const minAndMaxSelectedValues = minAndMaxNumber(enabledExclusionIndexes);
|
|
@@ -932,16 +969,16 @@ class DbxScheduleSelectionCalendarDateDaysComponent {
|
|
|
932
969
|
constructor(dbxCalendarStore, dbxCalendarScheduleSelectionStore) {
|
|
933
970
|
this.dbxCalendarStore = dbxCalendarStore;
|
|
934
971
|
this.dbxCalendarScheduleSelectionStore = dbxCalendarScheduleSelectionStore;
|
|
935
|
-
this.template$ = this.dbxCalendarScheduleSelectionStore.scheduleDays$.pipe(map(
|
|
972
|
+
this.template$ = this.dbxCalendarScheduleSelectionStore.scheduleDays$.pipe(map(enabledDaysFromDateCellScheduleDayCodes), shareReplay(1));
|
|
936
973
|
this.isFormModified = (value) => {
|
|
937
|
-
const newSetValue = new Set(
|
|
974
|
+
const newSetValue = new Set(dateCellScheduleDayCodesFromEnabledDays(value));
|
|
938
975
|
return this.dbxCalendarScheduleSelectionStore.scheduleDays$.pipe(map((currentSet) => {
|
|
939
|
-
const result = !
|
|
976
|
+
const result = !dateCellScheduleDayCodesAreSetsEquivalent(newSetValue, currentSet);
|
|
940
977
|
return result;
|
|
941
978
|
}));
|
|
942
979
|
};
|
|
943
980
|
this.updateScheduleDays = (value) => {
|
|
944
|
-
this.dbxCalendarScheduleSelectionStore.setScheduleDays(new Set(
|
|
981
|
+
this.dbxCalendarScheduleSelectionStore.setScheduleDays(new Set(dateCellScheduleDayCodesFromEnabledDays(value)));
|
|
945
982
|
return of(true);
|
|
946
983
|
};
|
|
947
984
|
}
|
|
@@ -1398,7 +1435,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
1398
1435
|
type: Input
|
|
1399
1436
|
}] } });
|
|
1400
1437
|
|
|
1401
|
-
class
|
|
1438
|
+
class DbxFormCalendarDateCellScheduleRangeFieldComponent extends FieldType {
|
|
1402
1439
|
constructor(compact, dbxCalendarScheduleSelectionStore, ngZone) {
|
|
1403
1440
|
super();
|
|
1404
1441
|
this.compact = compact;
|
|
@@ -1463,9 +1500,6 @@ class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
|
|
|
1463
1500
|
get computeSelectionResultRelativeToFilter() {
|
|
1464
1501
|
return this.props.computeSelectionResultRelativeToFilter;
|
|
1465
1502
|
}
|
|
1466
|
-
get closeDialogConfig() {
|
|
1467
|
-
return this.props.closeDialogConfig;
|
|
1468
|
-
}
|
|
1469
1503
|
get dialogContentConfig() {
|
|
1470
1504
|
return this.props.dialogContentConfig;
|
|
1471
1505
|
}
|
|
@@ -1477,10 +1511,10 @@ class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
|
|
|
1477
1511
|
}
|
|
1478
1512
|
ngOnInit() {
|
|
1479
1513
|
this._formControlObs.next(this.formControl);
|
|
1480
|
-
this._syncSub.subscription = this.value$.pipe(distinctUntilChanged(
|
|
1514
|
+
this._syncSub.subscription = this.value$.pipe(distinctUntilChanged(isSameDateCellScheduleDateRange)).subscribe((x) => {
|
|
1481
1515
|
this.dbxCalendarScheduleSelectionStore.setDateScheduleRangeValue(x);
|
|
1482
1516
|
});
|
|
1483
|
-
this._valueSub.subscription = this.dbxCalendarScheduleSelectionStore.
|
|
1517
|
+
this._valueSub.subscription = this.dbxCalendarScheduleSelectionStore.currentDateCellScheduleRangeValue$.subscribe((x) => {
|
|
1484
1518
|
this.formControl.setValue(x);
|
|
1485
1519
|
});
|
|
1486
1520
|
const { timezone, minMaxDateRange, filter, exclusions, defaultScheduleDays } = this;
|
|
@@ -1520,22 +1554,22 @@ class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
|
|
|
1520
1554
|
this._formControlObs.complete();
|
|
1521
1555
|
}
|
|
1522
1556
|
}
|
|
1523
|
-
|
|
1524
|
-
|
|
1557
|
+
DbxFormCalendarDateCellScheduleRangeFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormCalendarDateCellScheduleRangeFieldComponent, deps: [{ token: i1$1.CompactContextStore, optional: true }, { token: DbxCalendarScheduleSelectionStore }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1558
|
+
DbxFormCalendarDateCellScheduleRangeFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxFormCalendarDateCellScheduleRangeFieldComponent, selector: "ng-component", providers: [provideCalendarScheduleSelectionStoreIfParentIsUnavailable()], usesInheritance: true, ngImport: i0, template: `
|
|
1525
1559
|
<div class="dbx-schedule-selection-field">
|
|
1526
1560
|
<dbx-schedule-selection-calendar-date-range [openPickerOnTextClick]="openPickerOnTextClick" [showCustomize]="showCustomize" [required]="required" [disabled]="isReadonlyOrDisabled" [label]="label" [hint]="description">
|
|
1527
|
-
<dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disableCustomize$ | async" [contentConfig]="dialogContentConfig"
|
|
1561
|
+
<dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disableCustomize$ | async" [contentConfig]="dialogContentConfig"></dbx-schedule-selection-calendar-date-dialog-button>
|
|
1528
1562
|
<dbx-injection [config]="customDetailsConfig"></dbx-injection>
|
|
1529
1563
|
</dbx-schedule-selection-calendar-date-range>
|
|
1530
1564
|
</div>
|
|
1531
1565
|
`, isInline: true, dependencies: [{ kind: "component", type: i3$1.DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }, { kind: "component", type: DbxScheduleSelectionCalendarDateRangeComponent, selector: "dbx-schedule-selection-calendar-date-range", inputs: ["openPickerOnTextClick", "label", "hint", "disabled", "showCustomize", "required"] }, { kind: "component", type: DbxScheduleSelectionCalendarDateDialogButtonComponent, selector: "dbx-schedule-selection-calendar-date-dialog-button", inputs: ["buttonText", "disabled", "contentConfig", "closeConfig"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
|
|
1532
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type:
|
|
1566
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormCalendarDateCellScheduleRangeFieldComponent, decorators: [{
|
|
1533
1567
|
type: Component,
|
|
1534
1568
|
args: [{
|
|
1535
1569
|
template: `
|
|
1536
1570
|
<div class="dbx-schedule-selection-field">
|
|
1537
1571
|
<dbx-schedule-selection-calendar-date-range [openPickerOnTextClick]="openPickerOnTextClick" [showCustomize]="showCustomize" [required]="required" [disabled]="isReadonlyOrDisabled" [label]="label" [hint]="description">
|
|
1538
|
-
<dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disableCustomize$ | async" [contentConfig]="dialogContentConfig"
|
|
1572
|
+
<dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disableCustomize$ | async" [contentConfig]="dialogContentConfig"></dbx-schedule-selection-calendar-date-dialog-button>
|
|
1539
1573
|
<dbx-injection [config]="customDetailsConfig"></dbx-injection>
|
|
1540
1574
|
</dbx-schedule-selection-calendar-date-range>
|
|
1541
1575
|
</div>
|
|
@@ -1680,10 +1714,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
1680
1714
|
}]
|
|
1681
1715
|
}] });
|
|
1682
1716
|
|
|
1683
|
-
class
|
|
1717
|
+
class DbxFormDateCellScheduleRangeFieldModule {
|
|
1684
1718
|
}
|
|
1685
|
-
|
|
1686
|
-
|
|
1719
|
+
DbxFormDateCellScheduleRangeFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateCellScheduleRangeFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1720
|
+
DbxFormDateCellScheduleRangeFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateCellScheduleRangeFieldModule, declarations: [DbxFormCalendarDateCellScheduleRangeFieldComponent], imports: [DbxInjectionComponentModule,
|
|
1687
1721
|
CommonModule,
|
|
1688
1722
|
MatIconModule,
|
|
1689
1723
|
DbxFormCalendarModule,
|
|
@@ -1692,7 +1726,7 @@ DbxFormDateScheduleRangeFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersio
|
|
|
1692
1726
|
FormsModule,
|
|
1693
1727
|
ReactiveFormsModule,
|
|
1694
1728
|
MatInputModule, i1$3.FormlyModule] });
|
|
1695
|
-
|
|
1729
|
+
DbxFormDateCellScheduleRangeFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateCellScheduleRangeFieldModule, imports: [DbxInjectionComponentModule,
|
|
1696
1730
|
CommonModule,
|
|
1697
1731
|
MatIconModule,
|
|
1698
1732
|
DbxFormCalendarModule,
|
|
@@ -1702,9 +1736,9 @@ DbxFormDateScheduleRangeFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersio
|
|
|
1702
1736
|
ReactiveFormsModule,
|
|
1703
1737
|
MatInputModule,
|
|
1704
1738
|
FormlyModule.forChild({
|
|
1705
|
-
types: [{ name: 'date-schedule-range', component:
|
|
1739
|
+
types: [{ name: 'date-schedule-range', component: DbxFormCalendarDateCellScheduleRangeFieldComponent }]
|
|
1706
1740
|
})] });
|
|
1707
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type:
|
|
1741
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateCellScheduleRangeFieldModule, decorators: [{
|
|
1708
1742
|
type: NgModule,
|
|
1709
1743
|
args: [{
|
|
1710
1744
|
imports: [
|
|
@@ -1718,10 +1752,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
1718
1752
|
ReactiveFormsModule,
|
|
1719
1753
|
MatInputModule,
|
|
1720
1754
|
FormlyModule.forChild({
|
|
1721
|
-
types: [{ name: 'date-schedule-range', component:
|
|
1755
|
+
types: [{ name: 'date-schedule-range', component: DbxFormCalendarDateCellScheduleRangeFieldComponent }]
|
|
1722
1756
|
})
|
|
1723
1757
|
],
|
|
1724
|
-
declarations: [
|
|
1758
|
+
declarations: [DbxFormCalendarDateCellScheduleRangeFieldComponent]
|
|
1725
1759
|
}]
|
|
1726
1760
|
}] });
|
|
1727
1761
|
|
|
@@ -1731,5 +1765,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
1731
1765
|
* Generated bundle index. Do not edit.
|
|
1732
1766
|
*/
|
|
1733
1767
|
|
|
1734
|
-
export { CalendarScheduleSelectionDayState, DEFAULT_DBX_SCHEDULE_SELECTION_CALENDAR_DATE_POPUP_CLOSE_CONFIG_TOKEN, DEFAULT_DBX_SCHEDULE_SELECTION_CALENDAR_DATE_POPUP_CONTENT_CONFIG_TOKEN, DEFAULT_SCHEDULE_SELECTION_CALENDAR_DATE_POPOVER_KEY, DbxCalendarScheduleSelectionStore, DbxCalendarScheduleSelectionStoreInjectionBlockDirective, DbxCalendarScheduleSelectionStoreProviderBlock,
|
|
1768
|
+
export { CalendarScheduleSelectionDayState, DEFAULT_DBX_SCHEDULE_SELECTION_CALENDAR_DATE_POPUP_CLOSE_CONFIG_TOKEN, DEFAULT_DBX_SCHEDULE_SELECTION_CALENDAR_DATE_POPUP_CONTENT_CONFIG_TOKEN, DEFAULT_SCHEDULE_SELECTION_CALENDAR_DATE_POPOVER_KEY, DbxCalendarScheduleSelectionStore, DbxCalendarScheduleSelectionStoreInjectionBlockDirective, DbxCalendarScheduleSelectionStoreProviderBlock, DbxFormCalendarDateCellScheduleRangeFieldComponent, DbxFormCalendarModule, DbxFormDateCellScheduleRangeFieldModule, DbxScheduleSelectionCalendarCellComponent, DbxScheduleSelectionCalendarComponent, DbxScheduleSelectionCalendarDateDaysComponent, DbxScheduleSelectionCalendarDateDaysFormComponent, DbxScheduleSelectionCalendarDateDialogButtonComponent, DbxScheduleSelectionCalendarDateDialogComponent, DbxScheduleSelectionCalendarDatePopoverButtonComponent, DbxScheduleSelectionCalendarDatePopoverComponent, DbxScheduleSelectionCalendarDatePopoverContentComponent, DbxScheduleSelectionCalendarDateRangeComponent, DbxScheduleSelectionCalendarSelectionToggleButtonComponent, calendarScheduleMaxDate, calendarScheduleMinAndMaxDateRange, calendarScheduleMinDate, calendarScheduleStartBeingUsedFromFilter, computeCalendarScheduleSelectionDateCellRange, computeCalendarScheduleSelectionRange, computeScheduleSelectionRangeAndExclusion, computeScheduleSelectionValue, dateScheduleRangeField, dbxScheduleSelectionCalendarBeforeMonthViewRenderFactory, dbxScheduleSelectionCalendarDateDaysFormDayFields, dbxScheduleSelectionCalendarDateDaysFormFields, defaultCalendarScheduleSelectionCellContentFactory, finalizeNewCalendarScheduleSelectionState, finalizeUpdateStateWithChangedScheduleDays, initialCalendarScheduleSelectionState, isEnabledDayInCalendarScheduleSelectionState, noSelectionCalendarScheduleSelectionState, provideCalendarScheduleSelectionStoreIfParentIsUnavailable, updateStateWithChangedDates, updateStateWithChangedDefaultScheduleDays, updateStateWithChangedRange, updateStateWithChangedScheduleDays, updateStateWithComputeSelectionResultRelativeToFilter, updateStateWithDateCellScheduleRangeValue, updateStateWithExclusions, updateStateWithFilter, updateStateWithInitialSelectionState, updateStateWithMinMaxDateRange, updateStateWithTimezoneValue };
|
|
1735
1769
|
//# sourceMappingURL=dereekb-dbx-form-calendar.mjs.map
|