@dereekb/dbx-form 9.24.46 → 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.
@@ -7,7 +7,7 @@ import { Injectable, SkipSelf, Directive, Injector, Optional, Component, Inject,
7
7
  import { FieldType } from '@ngx-formly/material';
8
8
  import { switchMap, first, tap, map, distinctUntilChanged, shareReplay, of, combineLatestWith, BehaviorSubject, filter, combineLatest, startWith, throttleTime } from 'rxjs';
9
9
  import { filterMaybe, distinctUntilHasDifferentValues, SubscriptionObject, asObservableFromGetter, asObservable } from '@dereekb/rxjs';
10
- import { DateScheduleDayCode, expandDateScheduleDayCodesToDayOfWeekSet, dateBlockTimingRelativeIndexFactory, dateBlockDayOfWeekFactory, findMaxDate, findMinDate, isSameDateRange, isSameDateDay, isSameDate, dateBlockTimingDateFactory, expandDateScheduleRange, formatToISO8601DayString, isSameDateScheduleRange, dateBlockTimingRelativeIndexArrayFactory, isInfiniteDateRange, copyDateScheduleDateFilterConfig, dateScheduleDateFilter, dateTimezoneUtcNormal, expandDateScheduleDayCodes, fullWeekDayScheduleDayCodes, dateScheduleDayCodesAreSetsEquivalent, simplifyDateScheduleDayCodes, isDateInDateRangeFunction, isDateWithinDateBlockRangeFunction, copyHoursAndMinutesFromDate, dateScheduleEncodedWeek, dateBlockTimingStartDateFactory, enabledDaysFromDateScheduleDayCodes, dateScheduleDayCodesFromEnabledDays, formatToMonthDayString, dateRange, DateRangeType } from '@dereekb/date';
10
+ 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';
11
11
  import { isInAllowedDaysOfWeekSet, mapValuesToSet, unique, mergeArrays, iterableToArray, range, toggleInSet, removeFromSet, addToSet, isIndexNumberInIndexRangeFunction, minAndMaxNumber, getDaysOfWeekNames, reduceBooleansWithAnd, mergeObjects, KeyValueTypleValueFilter } from '@dereekb/util';
12
12
  import { ComponentStore } from '@ngrx/component-store';
13
13
  import { startOfDay, endOfDay, isBefore, endOfWeek } from 'date-fns';
@@ -37,7 +37,7 @@ import { MatButtonToggleModule } from '@angular/material/button-toggle';
37
37
  import { FlexLayoutModule } from '@angular/flex-layout';
38
38
 
39
39
  function dateScheduleRangeField(config = {}) {
40
- const { key = 'schedule', appearance, hideCustomize, allowTextInput, filter, timezone, initialSelectionState, computeSelectionResultRelativeToFilter, exclusions, defaultScheduleDays, minMaxDateRange, cellContentFactory, dialogContentConfig, closeDialogConfig, customDetailsConfig } = config;
40
+ const { key = 'schedule', appearance, hideCustomize, allowTextInput, filter, timezone, initialSelectionState, computeSelectionResultRelativeToFilter, exclusions, defaultScheduleDays, minMaxDateRange, cellContentFactory, dialogContentConfig, customDetailsConfig } = config;
41
41
  const fieldConfig = {
42
42
  ...formlyField({
43
43
  key,
@@ -53,7 +53,6 @@ function dateScheduleRangeField(config = {}) {
53
53
  filter,
54
54
  exclusions,
55
55
  dialogContentConfig,
56
- closeDialogConfig,
57
56
  computeSelectionResultRelativeToFilter,
58
57
  initialSelectionState,
59
58
  cellContentFactory,
@@ -95,13 +94,15 @@ const defaultCalendarScheduleSelectionCellContentFactory = (day) => {
95
94
  };
96
95
 
97
96
  function initialCalendarScheduleSelectionState() {
98
- const defaultScheduleDays = new Set([DateScheduleDayCode.WEEKDAY, DateScheduleDayCode.WEEKEND]);
99
- const allowedDaysOfWeek = expandDateScheduleDayCodesToDayOfWeekSet(defaultScheduleDays);
100
- const start = startOfDay(new Date());
101
- const indexFactory = dateBlockTimingRelativeIndexFactory({ start });
102
- const indexDayOfWeek = dateBlockDayOfWeekFactory(start);
97
+ const defaultScheduleDays = new Set([DateCellScheduleDayCode.WEEKDAY, DateCellScheduleDayCode.WEEKEND]);
98
+ const allowedDaysOfWeek = expandDateCellScheduleDayCodesToDayOfWeekSet(defaultScheduleDays);
99
+ const defaultStartsAt = dateCellTimingStartsAtForStartOfDay(); // get midnight of the current timezone
100
+ const { startsAt, timezone: systemTimezone } = defaultStartsAt;
101
+ const indexFactory = dateCellTimingRelativeIndexFactory(defaultStartsAt);
102
+ const indexDayOfWeek = dateCellDayOfWeekFactory(startsAt);
103
103
  return {
104
- start,
104
+ start: startsAt,
105
+ systemTimezone,
105
106
  indexFactory,
106
107
  toggledIndexes: new Set(),
107
108
  defaultScheduleDays,
@@ -170,19 +171,19 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
170
171
  this.allowedDaysOfWeek$ = this.state$.pipe(map((x) => x.allowedDaysOfWeek), distinctUntilHasDifferentValues(), shareReplay(1));
171
172
  this.isInAllowedDaysOfWeekFunction$ = this.allowedDaysOfWeek$.pipe(map((x) => isInAllowedDaysOfWeekSet(x)), shareReplay(1));
172
173
  this.scheduleDays$ = this.state$.pipe(map((x) => x.effectiveScheduleDays), distinctUntilHasDifferentValues(), shareReplay(1));
173
- this.currentTimezone$ = this.state$.pipe(map((x) => x.timezone), distinctUntilChanged(), shareReplay(1));
174
- this.effectiveTimezone$ = this.state$.pipe(map((x) => (!calendarScheduleStartBeingUsedFromFilter(x) && x.timezone ? x.timezone : undefined)), distinctUntilChanged(), shareReplay(1));
175
- this.effectiveTimezoneNormal$ = this.state$.pipe(map((x) => (!calendarScheduleStartBeingUsedFromFilter(x) && x.timezoneNormal ? x.timezoneNormal : undefined)), distinctUntilChanged(), shareReplay(1));
174
+ this.outputTimezone$ = this.state$.pipe(map((x) => x.outputTimezone), distinctUntilChanged(), shareReplay(1));
175
+ this.effectiveOutputTimezone$ = this.state$.pipe(map((x) => (!calendarScheduleStartBeingUsedFromFilter(x) && x.outputTimezone ? x.outputTimezone : undefined)), distinctUntilChanged(), shareReplay(1));
176
+ this.effectiveOutputTimezoneNormal$ = this.state$.pipe(map((x) => (!calendarScheduleStartBeingUsedFromFilter(x) && x.outputTimezoneNormal ? x.outputTimezoneNormal : undefined)), distinctUntilChanged(), shareReplay(1));
176
177
  this.currentSelectionValue$ = this.state$.pipe(map((x) => x.currentSelectionValue), shareReplay(1));
177
178
  this.currentSelectionValueStart$ = this.currentSelectionValue$.pipe(map((x) => x?.dateScheduleRange.start), distinctUntilChanged(isSameDate), shareReplay(1));
178
- this.currentSelectionValueDateBlockTimingDateFactory$ = this.currentSelectionValueStart$.pipe(map((start) => (start ? dateBlockTimingDateFactory({ start }) : undefined)), shareReplay(1));
179
- this.currentSelectionValueDateBlockDurationSpan$ = this.currentSelectionValue$.pipe(map((x) => (x ? expandDateScheduleRange({ ...x, duration: 1 }) : [])), shareReplay(1));
180
- this.selectionValueSelectedIndexes$ = this.currentSelectionValueDateBlockDurationSpan$.pipe(map((x) => new Set(x.map((y) => y.i))), distinctUntilHasDifferentValues(), shareReplay(1));
181
- this.selectionValueSelectedDates$ = this.currentSelectionValueDateBlockTimingDateFactory$.pipe(switchMap((dateFactory) => {
179
+ this.currentSelectionValueDateCellTimingDateFactory$ = this.currentSelectionValue$.pipe(map((x) => (x ? dateCellTimingDateFactory({ startsAt: x.dateScheduleRange.start, timezone: x.dateScheduleRange.timezone }) : undefined)), shareReplay(1));
180
+ this.currentSelectionValueDateCellDurationSpanExpansion$ = this.currentSelectionValue$.pipe(map((x) => (x ? expandDateCellScheduleRange({ dateCellScheduleRange: x.dateScheduleRange }) : [])), shareReplay(1));
181
+ this.selectionValueSelectedIndexes$ = this.currentSelectionValueDateCellDurationSpanExpansion$.pipe(map((x) => new Set(x.map((y) => y.i))), distinctUntilHasDifferentValues(), shareReplay(1));
182
+ this.selectionValueSelectedDates$ = this.currentSelectionValueDateCellTimingDateFactory$.pipe(switchMap((dateFactory) => {
182
183
  return dateFactory ? this.selectionValueSelectedIndexes$.pipe(map((x) => mapValuesToSet(x, (y) => formatToISO8601DayString(dateFactory(y))))) : of(new Set());
183
184
  }), shareReplay(1));
184
185
  this.selectionValue$ = this.currentSelectionValue$.pipe(filterMaybe(), shareReplay(1));
185
- this.currentSelectionValueWithTimezone$ = this.currentSelectionValue$.pipe(combineLatestWith(this.effectiveTimezoneNormal$), map(([x, timezoneNormal]) => {
186
+ this.currentSelectionValueWithTimezone$ = this.currentSelectionValue$.pipe(combineLatestWith(this.effectiveOutputTimezoneNormal$), map(([x, timezoneNormal]) => {
186
187
  if (x && timezoneNormal) {
187
188
  x = {
188
189
  dateScheduleRange: {
@@ -195,7 +196,7 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
195
196
  return x;
196
197
  }), distinctUntilChanged(), shareReplay(1));
197
198
  this.selectionValueWithTimezone$ = this.currentSelectionValueWithTimezone$.pipe(filterMaybe(), shareReplay(1));
198
- this.selectionValueWithTimezoneDateBlockDurationSpan$ = this.selectionValueWithTimezone$.pipe(map((x) => expandDateScheduleRange({ ...x, duration: 1 })), shareReplay(1));
199
+ this.selectionValueWithTimezoneDateCellDurationSpanExpansion$ = this.selectionValueWithTimezone$.pipe(map((x) => expandDateCellScheduleRange({ dateCellScheduleRange: x.dateScheduleRange })), shareReplay(1));
199
200
  this.nextToggleSelection$ = this.hasConfiguredMinMaxRange$.pipe(switchMap((hasConfiguredMinMaxRange) => {
200
201
  let obs;
201
202
  if (hasConfiguredMinMaxRange) {
@@ -206,8 +207,8 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
206
207
  }
207
208
  return obs;
208
209
  }), shareReplay(1));
209
- this.currentDateScheduleRangeValue$ = this.currentSelectionValueWithTimezone$.pipe(map((x) => x?.dateScheduleRange), distinctUntilChanged(isSameDateScheduleRange), shareReplay(1));
210
- this.dateScheduleRangeValue$ = this.currentDateScheduleRangeValue$.pipe(filterMaybe(), shareReplay(1));
210
+ this.currentDateCellScheduleRangeValue$ = this.currentSelectionValueWithTimezone$.pipe(map((x) => x?.dateScheduleRange), distinctUntilChanged(isSameDateCellScheduleDateRange), shareReplay(1));
211
+ this.dateCellScheduleRangeValue$ = this.currentDateCellScheduleRangeValue$.pipe(filterMaybe(), shareReplay(1));
211
212
  this.cellContentFactory$ = this.state$.pipe(map((x) => x.cellContentFactory), distinctUntilChanged(), shareReplay(1));
212
213
  this.isCustomized$ = this.state$.pipe(map((x) => x.toggledIndexes.size > 0), distinctUntilChanged(), shareReplay(1));
213
214
  this.isViewReadonly$ = this.state$.pipe(map((x) => x.isViewReadonly), distinctUntilChanged(), shareReplay(1));
@@ -218,7 +219,7 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
218
219
  this.setExclusions = this.updater(updateStateWithExclusions);
219
220
  this.setComputeSelectionResultRelativeToFilter = this.updater(updateStateWithComputeSelectionResultRelativeToFilter);
220
221
  this.clearFilter = this.updater((state) => updateStateWithFilter(state, undefined));
221
- this.setTimezone = this.updater(updateStateWithTimezoneValue);
222
+ this.setOutputTimezone = this.updater(updateStateWithTimezoneValue);
222
223
  this.setInputRange = this.updater(updateStateWithChangedRange);
223
224
  // NOTE: Selected dates are NOT selected indexes. They are the internal selected dates that are excluded from the selection.
224
225
  this.toggleSelectedDates = this.updater((state, toggle) => updateStateWithChangedDates(state, { toggle }));
@@ -231,8 +232,8 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
231
232
  this.setInitialSelectionState = this.updater(updateStateWithInitialSelectionState);
232
233
  this.setDefaultScheduleDays = this.updater(updateStateWithChangedDefaultScheduleDays);
233
234
  this.setScheduleDays = this.updater(updateStateWithChangedScheduleDays);
234
- this.setAllowAllScheduleDays = this.updater((state) => updateStateWithChangedScheduleDays(state, [DateScheduleDayCode.WEEKDAY, DateScheduleDayCode.WEEKEND]));
235
- this.setDateScheduleRangeValue = this.updater((state, value) => updateStateWithDateScheduleRangeValue(state, value));
235
+ this.setAllowAllScheduleDays = this.updater((state) => updateStateWithChangedScheduleDays(state, [DateCellScheduleDayCode.WEEKDAY, DateCellScheduleDayCode.WEEKEND]));
236
+ this.setDateScheduleRangeValue = this.updater((state, value) => updateStateWithDateCellScheduleRangeValue(state, value));
236
237
  this.setCellContentFactory = this.updater((state, cellContentFactory) => ({ ...state, cellContentFactory }));
237
238
  /**
238
239
  * Used by the parent view to propogate a readonly state.
@@ -240,6 +241,31 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
240
241
  * Should typically not be used by the user directly with the intention of the parent synchronizing to this state.
241
242
  */
242
243
  this.setViewReadonlyState = this.updater((state, isViewReadonly) => ({ ...state, isViewReadonly }));
244
+ // MARK: Compat
245
+ /**
246
+ * @deprecated use setOutputTimezone instead.
247
+ */
248
+ this.setTimezone = this.setOutputTimezone;
249
+ /**
250
+ * @deprecated use ouputTimezone$
251
+ */
252
+ this.currentTimezone$ = this.outputTimezone$;
253
+ /**
254
+ * @deprecated use effectiveOuputTimezone$
255
+ */
256
+ this.effectiveTimezone$ = this.effectiveOutputTimezone$;
257
+ /**
258
+ * @deprecated use effectiveOuputTimezoneNormal$
259
+ */
260
+ this.effectiveTimezoneNormal$ = this.effectiveOutputTimezoneNormal$;
261
+ /**
262
+ * @deprecated use currentSelectionValueDateCellDurationSpanExpansion$
263
+ */
264
+ this.currentSelectionValueDateBlockDurationSpan$ = this.currentSelectionValueDateCellDurationSpanExpansion$;
265
+ /**
266
+ * @deprecated use selectionValueWithTimezoneDateCellDurationSpanExpansion$
267
+ */
268
+ this.selectionValueWithTimezoneDateBlockDurationSpan$ = this.selectionValueWithTimezoneDateCellDurationSpanExpansion$;
243
269
  }
244
270
  }
245
271
  DbxCalendarScheduleSelectionStore.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
@@ -265,7 +291,7 @@ function updateStateWithExclusions(state, inputExclusions) {
265
291
  let computedExclusions;
266
292
  if (inputExclusions) {
267
293
  const { indexFactory } = state;
268
- const indexArrayFactory = dateBlockTimingRelativeIndexArrayFactory(indexFactory);
294
+ const indexArrayFactory = dateCellTimingRelativeIndexArrayFactory(indexFactory);
269
295
  computedExclusions = indexArrayFactory(inputExclusions);
270
296
  }
271
297
  state = { ...state, inputExclusions, computedExclusions };
@@ -285,14 +311,14 @@ function updateStateWithMinMaxDateRange(state, minMaxDateRange) {
285
311
  return updateStateWithFilter(state, state.filter);
286
312
  }
287
313
  function updateStateWithFilter(state, inputFilter) {
288
- const { computedExclusions: exclusions, minMaxDateRange } = state;
314
+ const { computedExclusions: exclusions, minMaxDateRange, systemTimezone } = state;
289
315
  let isEnabledFilterDay = () => true;
290
316
  let filter = null;
291
317
  // create the filter using inputFilter, exclusions, and minMaxDateRange
292
318
  if (inputFilter || exclusions?.length || minMaxDateRange) {
293
319
  let enabledFilter;
294
320
  if (inputFilter) {
295
- filter = copyDateScheduleDateFilterConfig(inputFilter); // copy filter
321
+ filter = copyDateCellScheduleDateFilterConfig(inputFilter); // copy filter
296
322
  if (exclusions?.length) {
297
323
  enabledFilter = {
298
324
  ...filter,
@@ -319,15 +345,15 @@ function updateStateWithFilter(state, inputFilter) {
319
345
  */
320
346
  enabledFilter.start = inputFilter?.start ?? state.start;
321
347
  // create the filter
322
- isEnabledFilterDay = dateScheduleDateFilter(enabledFilter);
348
+ isEnabledFilterDay = dateCellScheduleDateFilter(enabledFilter);
323
349
  }
324
350
  state = { ...state, filter, isEnabledFilterDay };
325
351
  // For the same reason as above, use the filter's start date as the relative start if applicable.
326
352
  if (filter && filter.start) {
327
353
  const start = filter.start;
328
354
  state.start = start;
329
- state.indexFactory = dateBlockTimingRelativeIndexFactory({ start });
330
- state.indexDayOfWeek = dateBlockDayOfWeekFactory(start);
355
+ state.indexFactory = dateCellTimingRelativeIndexFactory({ startsAt: start, timezone: filter.timezone ?? systemTimezone });
356
+ state.indexDayOfWeek = dateCellDayOfWeekFactory(start);
331
357
  }
332
358
  // attempt to re-apply the initial selection state once filter is applied
333
359
  if (state.initialSelectionState) {
@@ -345,42 +371,48 @@ function updateStateWithTimezoneValue(state, timezone) {
345
371
  const timezoneNormal = timezone ? dateTimezoneUtcNormal({ timezone }) : undefined;
346
372
  if (timezoneNormal && currentSelectionValue) {
347
373
  // update the selection value to reflect the timezone changes.
348
- const { dateScheduleRange: currentDateScheduleRange } = currentSelectionValue;
349
- const start = timezoneNormal.targetDateToSystemDate(currentDateScheduleRange.start);
350
- const end = timezoneNormal.targetDateToSystemDate(currentDateScheduleRange.end);
374
+ const { dateScheduleRange: currentDateCellScheduleRange } = currentSelectionValue;
375
+ const start = timezoneNormal.targetDateToSystemDate(currentDateCellScheduleRange.start);
376
+ const end = timezoneNormal.targetDateToSystemDate(currentDateCellScheduleRange.end);
351
377
  const newRange = {
352
378
  ...currentSelectionValue.dateScheduleRange,
353
379
  start,
354
380
  end
355
381
  };
356
- return updateStateWithDateScheduleRangeValue({ ...state, timezone, timezoneNormal }, newRange);
382
+ return updateStateWithDateCellScheduleRangeValue({ ...state, outputTimezone: timezone, outputTimezoneNormal: timezoneNormal }, newRange);
357
383
  }
358
384
  else {
359
- return { ...state, timezone, timezoneNormal }; // no change in value
385
+ return { ...state, outputTimezone: timezone, outputTimezoneNormal: timezoneNormal }; // no change in value
360
386
  }
361
387
  }
362
- function updateStateWithDateScheduleRangeValue(state, change) {
363
- const { timezoneNormal, currentSelectionValue } = state;
364
- const currentDateScheduleRange = currentSelectionValue?.dateScheduleRange; // current range is always in system time
388
+ function updateStateWithDateCellScheduleRangeValue(state, inputChange) {
389
+ const { outputTimezoneNormal: timezoneNormal, currentSelectionValue } = state;
390
+ const currentDateCellScheduleRange = currentSelectionValue?.dateScheduleRange; // current range is always in system time
391
+ let change;
365
392
  if (!calendarScheduleStartBeingUsedFromFilter(state) && timezoneNormal) {
366
393
  // 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.
367
394
  // Outputs remain accurate.
368
- if (change) {
395
+ if (inputChange) {
396
+ // calculate the schedule range
397
+ const fullChange = fullDateCellScheduleRange({ dateCellScheduleRange: inputChange });
398
+ // convert the start/end to system time
369
399
  change = {
370
- ...change,
371
- start: startOfDay(timezoneNormal.systemDateToTargetDate(change.start)),
372
- end: startOfDay(timezoneNormal.systemDateToTargetDate(change.end))
400
+ start: startOfDay(timezoneNormal.systemDateToTargetDate(fullChange.start)),
401
+ end: startOfDay(timezoneNormal.systemDateToTargetDate(fullChange.end)),
402
+ w: fullChange.w,
403
+ ex: fullChange.ex,
404
+ timezone: fullChange.timezone
373
405
  };
374
406
  }
375
407
  }
376
- const isSameValue = isSameDateScheduleRange(currentDateScheduleRange, change);
408
+ const isSameValue = isSameDateCellScheduleDateRange(currentDateCellScheduleRange, change);
377
409
  if (isSameValue) {
378
410
  return state;
379
411
  }
380
412
  else {
381
413
  if (change != null) {
382
414
  const nextState = { ...state, inputStart: change.start, inputEnd: change.end, toggledIndexes: new Set(change.ex) };
383
- return updateStateWithChangedScheduleDays(finalizeNewCalendarScheduleSelectionState(nextState), expandDateScheduleDayCodes(change.w || '89'));
415
+ return updateStateWithChangedScheduleDays(finalizeNewCalendarScheduleSelectionState(nextState), expandDateCellScheduleDayCodes(change.w || '89'));
384
416
  }
385
417
  else {
386
418
  return noSelectionCalendarScheduleSelectionState(state); // clear selection, retain disabled days
@@ -389,8 +421,8 @@ function updateStateWithDateScheduleRangeValue(state, change) {
389
421
  }
390
422
  function updateStateWithChangedDefaultScheduleDays(state, change) {
391
423
  const { defaultScheduleDays: currentDefaultScheduleDays } = state;
392
- const defaultScheduleDays = new Set(change ?? fullWeekDayScheduleDayCodes());
393
- if (dateScheduleDayCodesAreSetsEquivalent(defaultScheduleDays, currentDefaultScheduleDays)) {
424
+ const defaultScheduleDays = new Set(change ?? fullWeekDateCellScheduleDayCodes());
425
+ if (dateCellScheduleDayCodesAreSetsEquivalent(defaultScheduleDays, currentDefaultScheduleDays)) {
394
426
  return state; // no change
395
427
  }
396
428
  else {
@@ -402,7 +434,7 @@ function updateStateWithChangedScheduleDays(state, change) {
402
434
  const scheduleDays = new Set(change ?? []);
403
435
  let newScheduleDays;
404
436
  if (currentScheduleDays != null && change != null) {
405
- if (dateScheduleDayCodesAreSetsEquivalent(scheduleDays, currentScheduleDays)) {
437
+ if (dateCellScheduleDayCodesAreSetsEquivalent(scheduleDays, currentScheduleDays)) {
406
438
  newScheduleDays = undefined; //no change
407
439
  }
408
440
  else {
@@ -422,12 +454,12 @@ function updateStateWithChangedScheduleDays(state, change) {
422
454
  function finalizeUpdateStateWithChangedScheduleDays(previousState, nextState) {
423
455
  const previousScheduleDays = previousState.effectiveScheduleDays;
424
456
  const nextScheduleDays = nextState.scheduleDays ?? nextState.defaultScheduleDays;
425
- if (dateScheduleDayCodesAreSetsEquivalent(nextScheduleDays, previousScheduleDays)) {
457
+ if (dateCellScheduleDayCodesAreSetsEquivalent(nextScheduleDays, previousScheduleDays)) {
426
458
  return nextState; // the default or input schedule changed but the schedule is still the same, so no need for an update.
427
459
  }
428
460
  else {
429
- const effectiveScheduleDays = new Set(simplifyDateScheduleDayCodes(nextScheduleDays));
430
- const allowedDaysOfWeek = expandDateScheduleDayCodesToDayOfWeekSet(nextScheduleDays);
461
+ const effectiveScheduleDays = new Set(simplifyDateCellScheduleDayCodes(nextScheduleDays));
462
+ const allowedDaysOfWeek = expandDateCellScheduleDayCodesToDayOfWeekSet(nextScheduleDays);
431
463
  return finalizeNewCalendarScheduleSelectionState({
432
464
  ...nextState,
433
465
  // update the effective schedule days and allowed days of week
@@ -547,10 +579,10 @@ function finalizeNewCalendarScheduleSelectionState(nextState) {
547
579
  return nextState;
548
580
  }
549
581
  function isEnabledDayInCalendarScheduleSelectionState(state) {
550
- const { allowedDaysOfWeek, indexFactory, inputStart, inputEnd, indexDayOfWeek } = state;
582
+ const { allowedDaysOfWeek, indexFactory, inputStart, inputEnd, indexDayOfWeek, systemTimezone } = state;
551
583
  let isInStartAndEndRange;
552
584
  if (inputStart && inputEnd) {
553
- isInStartAndEndRange = isDateWithinDateBlockRangeFunction({ start: state.start, range: { start: inputStart, end: inputEnd } });
585
+ isInStartAndEndRange = isDateWithinDateCellRangeFunction({ startsAt: { startsAt: state.start, timezone: systemTimezone }, range: { start: inputStart, end: inputEnd } });
554
586
  }
555
587
  else {
556
588
  isInStartAndEndRange = () => false;
@@ -566,14 +598,14 @@ function isEnabledDayInCalendarScheduleSelectionState(state) {
566
598
  };
567
599
  }
568
600
  function computeScheduleSelectionValue(state) {
569
- const { indexFactory, allowedDaysOfWeek, effectiveScheduleDays, indexDayOfWeek, computeSelectionResultRelativeToFilter, filter } = state;
601
+ const { indexFactory, allowedDaysOfWeek, effectiveScheduleDays, indexDayOfWeek, computeSelectionResultRelativeToFilter, filter, systemTimezone } = state;
570
602
  const rangeAndExclusion = computeScheduleSelectionRangeAndExclusion(state);
571
603
  if (rangeAndExclusion == null) {
572
604
  return null;
573
605
  }
574
- const { start: rangeStart, end: rangeEnd, excluded: allExcluded, dateBlockRange } = rangeAndExclusion;
606
+ const { start: rangeStart, end: rangeEnd, excluded: allExcluded, dateCellRange } = rangeAndExclusion;
575
607
  let filterOffsetExcludedRange = [];
576
- let indexOffset = dateBlockRange.i;
608
+ let indexOffset = dateCellRange.i;
577
609
  let start = rangeStart;
578
610
  let end = rangeEnd;
579
611
  // If computeSelectionResultRelativeToFilter is true, then we need to offset the values to be relative to that start.
@@ -594,13 +626,14 @@ function computeScheduleSelectionValue(state) {
594
626
  : allExcluded;
595
627
  const offsetExcluded = excluded.map((x) => x - indexOffset); // set to the proper offset
596
628
  const ex = [...filterOffsetExcludedRange, ...offsetExcluded];
597
- const w = dateScheduleEncodedWeek(effectiveScheduleDays);
629
+ const w = dateCellScheduleEncodedWeek(effectiveScheduleDays);
598
630
  const d = []; // "included" blocks are never used/calculated.
599
631
  // Always ensure the end is after or equal to the start.
600
632
  if (isBefore(end, start)) {
601
633
  end = start; // end is start
602
634
  }
603
635
  const dateScheduleRange = {
636
+ timezone: systemTimezone,
604
637
  start,
605
638
  end,
606
639
  w,
@@ -613,20 +646,20 @@ function computeScheduleSelectionValue(state) {
613
646
  };
614
647
  }
615
648
  function computeScheduleSelectionRangeAndExclusion(state) {
616
- const { start: currentStart, isEnabledDay, isEnabledFilterDay } = state;
617
- const dateFactory = dateBlockTimingStartDateFactory({ start: currentStart }, { assertTimingMatchesTimezone: false, useSystemTimezone: true });
618
- const dateBlockRange = computeCalendarScheduleSelectionDateBlockRange(state);
619
- if (dateBlockRange == null) {
649
+ const { start: currentStart, isEnabledDay, isEnabledFilterDay, systemTimezone } = state;
650
+ const dateFactory = dateCellTimingStartDateFactory({ startsAt: currentStart, timezone: systemTimezone });
651
+ const dateCellRange = computeCalendarScheduleSelectionDateCellRange(state);
652
+ if (dateCellRange == null) {
620
653
  return null; // returns null if no items are selected.
621
654
  }
622
- const start = dateFactory(dateBlockRange.i);
623
- const end = dateFactory(dateBlockRange.to);
624
- const excluded = range(dateBlockRange.i, dateBlockRange.to + 1).filter((x) => {
655
+ const start = dateFactory(dateCellRange.i);
656
+ const end = dateFactory(dateCellRange.to);
657
+ const excluded = range(dateCellRange.i, dateCellRange.to + 1).filter((x) => {
625
658
  const isExcludedIndex = !isEnabledDay(x) || !isEnabledFilterDay(x);
626
659
  return isExcludedIndex;
627
660
  });
628
661
  const result = {
629
- dateBlockRange,
662
+ dateCellRange,
630
663
  start,
631
664
  end,
632
665
  excluded
@@ -634,12 +667,12 @@ function computeScheduleSelectionRangeAndExclusion(state) {
634
667
  return result;
635
668
  }
636
669
  function computeCalendarScheduleSelectionRange(state) {
637
- const dateFactory = dateBlockTimingDateFactory(state);
638
- const dateBlockRange = computeCalendarScheduleSelectionDateBlockRange(state);
639
- const dateRange = dateBlockRange != null ? { start: dateFactory(dateBlockRange.i), end: dateFactory(dateBlockRange.to) } : undefined;
670
+ const dateFactory = dateCellTimingDateFactory({ startsAt: state.start, timezone: state.systemTimezone });
671
+ const dateCellRange = computeCalendarScheduleSelectionDateCellRange(state);
672
+ const dateRange = dateCellRange != null ? { start: dateFactory(dateCellRange.i), end: dateFactory(dateCellRange.to) } : undefined;
640
673
  return dateRange;
641
674
  }
642
- function computeCalendarScheduleSelectionDateBlockRange(state) {
675
+ function computeCalendarScheduleSelectionDateCellRange(state) {
643
676
  const { allowedDaysOfWeek, indexFactory, inputStart, inputEnd, indexDayOfWeek, isEnabledDay, isEnabledFilterDay } = state;
644
677
  const enabledExclusionIndexes = Array.from(state.toggledIndexes).filter((i) => allowedDaysOfWeek.has(indexDayOfWeek(i)));
645
678
  const minAndMaxSelectedValues = minAndMaxNumber(enabledExclusionIndexes);
@@ -940,16 +973,16 @@ class DbxScheduleSelectionCalendarDateDaysComponent {
940
973
  constructor(dbxCalendarStore, dbxCalendarScheduleSelectionStore) {
941
974
  this.dbxCalendarStore = dbxCalendarStore;
942
975
  this.dbxCalendarScheduleSelectionStore = dbxCalendarScheduleSelectionStore;
943
- this.template$ = this.dbxCalendarScheduleSelectionStore.scheduleDays$.pipe(map(enabledDaysFromDateScheduleDayCodes), shareReplay(1));
976
+ this.template$ = this.dbxCalendarScheduleSelectionStore.scheduleDays$.pipe(map(enabledDaysFromDateCellScheduleDayCodes), shareReplay(1));
944
977
  this.isFormModified = (value) => {
945
- const newSetValue = new Set(dateScheduleDayCodesFromEnabledDays(value));
978
+ const newSetValue = new Set(dateCellScheduleDayCodesFromEnabledDays(value));
946
979
  return this.dbxCalendarScheduleSelectionStore.scheduleDays$.pipe(map((currentSet) => {
947
- const result = !dateScheduleDayCodesAreSetsEquivalent(newSetValue, currentSet);
980
+ const result = !dateCellScheduleDayCodesAreSetsEquivalent(newSetValue, currentSet);
948
981
  return result;
949
982
  }));
950
983
  };
951
984
  this.updateScheduleDays = (value) => {
952
- this.dbxCalendarScheduleSelectionStore.setScheduleDays(new Set(dateScheduleDayCodesFromEnabledDays(value)));
985
+ this.dbxCalendarScheduleSelectionStore.setScheduleDays(new Set(dateCellScheduleDayCodesFromEnabledDays(value)));
953
986
  return of(true);
954
987
  };
955
988
  }
@@ -1413,7 +1446,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
1413
1446
  type: Input
1414
1447
  }] } });
1415
1448
 
1416
- class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
1449
+ class DbxFormCalendarDateCellScheduleRangeFieldComponent extends FieldType {
1417
1450
  constructor(compact, dbxCalendarScheduleSelectionStore, ngZone) {
1418
1451
  super();
1419
1452
  this.compact = compact;
@@ -1476,9 +1509,6 @@ class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
1476
1509
  get computeSelectionResultRelativeToFilter() {
1477
1510
  return this.props.computeSelectionResultRelativeToFilter;
1478
1511
  }
1479
- get closeDialogConfig() {
1480
- return this.props.closeDialogConfig;
1481
- }
1482
1512
  get dialogContentConfig() {
1483
1513
  return this.props.dialogContentConfig;
1484
1514
  }
@@ -1490,10 +1520,10 @@ class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
1490
1520
  }
1491
1521
  ngOnInit() {
1492
1522
  this._formControlObs.next(this.formControl);
1493
- this._syncSub.subscription = this.value$.pipe(distinctUntilChanged(isSameDateScheduleRange)).subscribe((x) => {
1523
+ this._syncSub.subscription = this.value$.pipe(distinctUntilChanged(isSameDateCellScheduleDateRange)).subscribe((x) => {
1494
1524
  this.dbxCalendarScheduleSelectionStore.setDateScheduleRangeValue(x);
1495
1525
  });
1496
- this._valueSub.subscription = this.dbxCalendarScheduleSelectionStore.currentDateScheduleRangeValue$.subscribe((x) => {
1526
+ this._valueSub.subscription = this.dbxCalendarScheduleSelectionStore.currentDateCellScheduleRangeValue$.subscribe((x) => {
1497
1527
  this.formControl.setValue(x);
1498
1528
  });
1499
1529
  const { timezone, minMaxDateRange, filter, exclusions, defaultScheduleDays } = this;
@@ -1533,22 +1563,22 @@ class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
1533
1563
  this._formControlObs.complete();
1534
1564
  }
1535
1565
  }
1536
- DbxFormCalendarDateScheduleRangeFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormCalendarDateScheduleRangeFieldComponent, deps: [{ token: i1$1.CompactContextStore, optional: true }, { token: DbxCalendarScheduleSelectionStore }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1537
- DbxFormCalendarDateScheduleRangeFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxFormCalendarDateScheduleRangeFieldComponent, selector: "ng-component", providers: [provideCalendarScheduleSelectionStoreIfParentIsUnavailable()], usesInheritance: true, ngImport: i0, template: `
1566
+ 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 });
1567
+ DbxFormCalendarDateCellScheduleRangeFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxFormCalendarDateCellScheduleRangeFieldComponent, selector: "ng-component", providers: [provideCalendarScheduleSelectionStoreIfParentIsUnavailable()], usesInheritance: true, ngImport: i0, template: `
1538
1568
  <div class="dbx-schedule-selection-field">
1539
1569
  <dbx-schedule-selection-calendar-date-range [openPickerOnTextClick]="openPickerOnTextClick" [showCustomize]="showCustomize" [required]="required" [disabled]="isReadonlyOrDisabled" [label]="label" [hint]="description">
1540
- <dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disableCustomize$ | async" [contentConfig]="dialogContentConfig" [closeConfig]="closeDialogConfig"></dbx-schedule-selection-calendar-date-dialog-button>
1570
+ <dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disableCustomize$ | async" [contentConfig]="dialogContentConfig"></dbx-schedule-selection-calendar-date-dialog-button>
1541
1571
  <dbx-injection [config]="customDetailsConfig"></dbx-injection>
1542
1572
  </dbx-schedule-selection-calendar-date-range>
1543
1573
  </div>
1544
1574
  `, 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" }] });
1545
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormCalendarDateScheduleRangeFieldComponent, decorators: [{
1575
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormCalendarDateCellScheduleRangeFieldComponent, decorators: [{
1546
1576
  type: Component,
1547
1577
  args: [{
1548
1578
  template: `
1549
1579
  <div class="dbx-schedule-selection-field">
1550
1580
  <dbx-schedule-selection-calendar-date-range [openPickerOnTextClick]="openPickerOnTextClick" [showCustomize]="showCustomize" [required]="required" [disabled]="isReadonlyOrDisabled" [label]="label" [hint]="description">
1551
- <dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disableCustomize$ | async" [contentConfig]="dialogContentConfig" [closeConfig]="closeDialogConfig"></dbx-schedule-selection-calendar-date-dialog-button>
1581
+ <dbx-schedule-selection-calendar-date-dialog-button customizeButton [disabled]="disableCustomize$ | async" [contentConfig]="dialogContentConfig"></dbx-schedule-selection-calendar-date-dialog-button>
1552
1582
  <dbx-injection [config]="customDetailsConfig"></dbx-injection>
1553
1583
  </dbx-schedule-selection-calendar-date-range>
1554
1584
  </div>
@@ -1687,10 +1717,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
1687
1717
  }]
1688
1718
  }] });
1689
1719
 
1690
- class DbxFormDateScheduleRangeFieldModule {
1720
+ class DbxFormDateCellScheduleRangeFieldModule {
1691
1721
  }
1692
- DbxFormDateScheduleRangeFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1693
- DbxFormDateScheduleRangeFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, declarations: [DbxFormCalendarDateScheduleRangeFieldComponent], imports: [DbxInjectionComponentModule,
1722
+ DbxFormDateCellScheduleRangeFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateCellScheduleRangeFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1723
+ DbxFormDateCellScheduleRangeFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateCellScheduleRangeFieldModule, declarations: [DbxFormCalendarDateCellScheduleRangeFieldComponent], imports: [DbxInjectionComponentModule,
1694
1724
  CommonModule,
1695
1725
  MatIconModule,
1696
1726
  DbxFormCalendarModule,
@@ -1699,7 +1729,7 @@ DbxFormDateScheduleRangeFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersio
1699
1729
  FormsModule,
1700
1730
  ReactiveFormsModule,
1701
1731
  MatInputModule, i1$3.FormlyModule] });
1702
- DbxFormDateScheduleRangeFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, imports: [DbxInjectionComponentModule,
1732
+ DbxFormDateCellScheduleRangeFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateCellScheduleRangeFieldModule, imports: [DbxInjectionComponentModule,
1703
1733
  CommonModule,
1704
1734
  MatIconModule,
1705
1735
  DbxFormCalendarModule,
@@ -1709,9 +1739,9 @@ DbxFormDateScheduleRangeFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersio
1709
1739
  ReactiveFormsModule,
1710
1740
  MatInputModule,
1711
1741
  FormlyModule.forChild({
1712
- types: [{ name: 'date-schedule-range', component: DbxFormCalendarDateScheduleRangeFieldComponent }]
1742
+ types: [{ name: 'date-schedule-range', component: DbxFormCalendarDateCellScheduleRangeFieldComponent }]
1713
1743
  })] });
1714
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateScheduleRangeFieldModule, decorators: [{
1744
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFormDateCellScheduleRangeFieldModule, decorators: [{
1715
1745
  type: NgModule,
1716
1746
  args: [{
1717
1747
  imports: [
@@ -1725,10 +1755,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
1725
1755
  ReactiveFormsModule,
1726
1756
  MatInputModule,
1727
1757
  FormlyModule.forChild({
1728
- types: [{ name: 'date-schedule-range', component: DbxFormCalendarDateScheduleRangeFieldComponent }]
1758
+ types: [{ name: 'date-schedule-range', component: DbxFormCalendarDateCellScheduleRangeFieldComponent }]
1729
1759
  })
1730
1760
  ],
1731
- declarations: [DbxFormCalendarDateScheduleRangeFieldComponent]
1761
+ declarations: [DbxFormCalendarDateCellScheduleRangeFieldComponent]
1732
1762
  }]
1733
1763
  }] });
1734
1764
 
@@ -1738,5 +1768,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
1738
1768
  * Generated bundle index. Do not edit.
1739
1769
  */
1740
1770
 
1741
- 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, DbxFormCalendarDateScheduleRangeFieldComponent, DbxFormCalendarModule, DbxFormDateScheduleRangeFieldModule, DbxScheduleSelectionCalendarCellComponent, DbxScheduleSelectionCalendarComponent, DbxScheduleSelectionCalendarDateDaysComponent, DbxScheduleSelectionCalendarDateDaysFormComponent, DbxScheduleSelectionCalendarDateDialogButtonComponent, DbxScheduleSelectionCalendarDateDialogComponent, DbxScheduleSelectionCalendarDatePopoverButtonComponent, DbxScheduleSelectionCalendarDatePopoverComponent, DbxScheduleSelectionCalendarDatePopoverContentComponent, DbxScheduleSelectionCalendarDateRangeComponent, DbxScheduleSelectionCalendarSelectionToggleButtonComponent, calendarScheduleMaxDate, calendarScheduleMinAndMaxDateRange, calendarScheduleMinDate, calendarScheduleStartBeingUsedFromFilter, computeCalendarScheduleSelectionDateBlockRange, computeCalendarScheduleSelectionRange, computeScheduleSelectionRangeAndExclusion, computeScheduleSelectionValue, dateScheduleRangeField, dbxScheduleSelectionCalendarBeforeMonthViewRenderFactory, dbxScheduleSelectionCalendarDateDaysFormDayFields, dbxScheduleSelectionCalendarDateDaysFormFields, defaultCalendarScheduleSelectionCellContentFactory, finalizeNewCalendarScheduleSelectionState, finalizeUpdateStateWithChangedScheduleDays, initialCalendarScheduleSelectionState, isEnabledDayInCalendarScheduleSelectionState, noSelectionCalendarScheduleSelectionState, provideCalendarScheduleSelectionStoreIfParentIsUnavailable, updateStateWithChangedDates, updateStateWithChangedDefaultScheduleDays, updateStateWithChangedRange, updateStateWithChangedScheduleDays, updateStateWithComputeSelectionResultRelativeToFilter, updateStateWithDateScheduleRangeValue, updateStateWithExclusions, updateStateWithFilter, updateStateWithInitialSelectionState, updateStateWithMinMaxDateRange, updateStateWithTimezoneValue };
1771
+ 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 };
1742
1772
  //# sourceMappingURL=dereekb-dbx-form-calendar.mjs.map