@dereekb/dbx-form 9.23.9 → 9.23.10

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,10 +7,10 @@ import { Injectable, SkipSelf, Directive, Injector, Optional, Component, Inject,
7
7
  import { FieldType } from '@ngx-formly/material';
8
8
  import { map, distinctUntilChanged, shareReplay, BehaviorSubject, switchMap, of, startWith, filter, throttleTime, first } from 'rxjs';
9
9
  import { filterMaybe, SubscriptionObject, asObservable } from '@dereekb/rxjs';
10
- import { DateScheduleDayCode, expandDateScheduleDayCodesToDayOfWeekSet, dateTimingRelativeIndexFactory, dateBlockDayOfWeekFactory, isSameDate, isSameDateRange, isSameDateScheduleRange, findMaxDate, isSameDateDay, findMinDate, dateScheduleDateFilter, dateScheduleDayCodes, isDateInDateRangeFunction, isDateWithinDateBlockRangeFunction, dateScheduleEncodedWeek, dateBlockTimingDateFactory, enabledDaysFromDateScheduleDayCodes, dateScheduleDayCodesFromEnabledDays, formatToMonthDayString } from '@dereekb/date';
11
- import { setsAreEquivalent, iterableToArray, toggleInSet, addToSet, isIndexNumberInIndexRangeFunction, range, minAndMaxNumber, randomNumberFactory, getDaysOfWeekNames } from '@dereekb/util';
10
+ import { DateScheduleDayCode, expandDateScheduleDayCodesToDayOfWeekSet, dateTimingRelativeIndexFactory, dateBlockDayOfWeekFactory, findMaxDate, findMinDate, isSameDate, isSameDateRange, isSameDateScheduleRange, isSameDateDay, copyDateScheduleDateFilterConfig, dateScheduleDateFilter, expandDateScheduleDayCodes, isDateInDateRangeFunction, isDateWithinDateBlockRangeFunction, dateScheduleEncodedWeek, dateBlockTimingDateFactory, enabledDaysFromDateScheduleDayCodes, dateScheduleDayCodesFromEnabledDays, formatToMonthDayString } from '@dereekb/date';
11
+ import { setsAreEquivalent, range, iterableToArray, toggleInSet, addToSet, isIndexNumberInIndexRangeFunction, minAndMaxNumber, randomNumberFactory, getDaysOfWeekNames } from '@dereekb/util';
12
12
  import { ComponentStore } from '@ngrx/component-store';
13
- import { startOfDay, startOfYear, addYears } from 'date-fns';
13
+ import { startOfDay } from 'date-fns';
14
14
  import * as i1 from '@dereekb/dbx-web/calendar';
15
15
  import { prepareAndSortCalendarEvents, DbxCalendarStore, DbxCalendarModule } from '@dereekb/dbx-web/calendar';
16
16
  import * as i3 from '@angular/forms';
@@ -36,14 +36,16 @@ import { MatButtonToggleModule } from '@angular/material/button-toggle';
36
36
  import { FlexLayoutModule } from '@angular/flex-layout';
37
37
 
38
38
  function dateScheduleRangeField(config = {}) {
39
- const { key = 'schedule', filter } = config;
39
+ const { key = 'schedule', filter, initialSelectionState, computeSelectionResultRelativeToFilter } = config;
40
40
  const fieldConfig = {
41
41
  ...formlyField({
42
42
  key,
43
43
  type: 'date-schedule-range',
44
44
  ...propsAndConfigForFieldConfig(config, {
45
45
  label: config.label ?? 'Schedule',
46
- filter
46
+ filter,
47
+ computeSelectionResultRelativeToFilter,
48
+ initialSelectionState
47
49
  })
48
50
  })
49
51
  };
@@ -95,11 +97,24 @@ function initialCalendarScheduleSelectionState() {
95
97
  indexDayOfWeek,
96
98
  isEnabledFilterDay: () => true,
97
99
  isEnabledDay: () => false,
98
- minDate: new Date(0),
99
- maxDate: startOfYear(addYears(new Date(), 100)),
100
+ minDate: null,
101
+ maxDate: null,
102
+ computeSelectionResultRelativeToFilter: true,
100
103
  cellContentFactory: defaultCalendarScheduleSelectionCellContentFactory
101
104
  };
102
105
  }
106
+ function calendarScheduleMinDate(x) {
107
+ return findMaxDate([x.filter?.start, x.minDate]);
108
+ }
109
+ function calendarScheduleMaxDate(x) {
110
+ return findMinDate([x.filter?.end, x.maxDate]);
111
+ }
112
+ function calendarScheduleMinAndMaxDate(x) {
113
+ return {
114
+ minDate: calendarScheduleMinDate(x),
115
+ maxDate: calendarScheduleMaxDate(x)
116
+ };
117
+ }
103
118
  class DbxCalendarScheduleSelectionStore extends ComponentStore {
104
119
  constructor() {
105
120
  super(initialCalendarScheduleSelectionState());
@@ -120,18 +135,21 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
120
135
  this.isEnabledFilterDayFunction$ = this.state$.pipe(map((x) => x.isEnabledFilterDay), shareReplay(1));
121
136
  this.isEnabledDayFunction$ = this.state$.pipe(map((x) => x.isEnabledDay), shareReplay(1));
122
137
  this.currentDateRange$ = this.state$.pipe(map(computeCalendarScheduleSelectionRange), distinctUntilChanged((a, b) => isSameDateRange(a, b)), shareReplay(1));
138
+ this.computeSelectionResultRelativeToFilter$ = this.state$.pipe(map((x) => x.computeSelectionResultRelativeToFilter), shareReplay(1));
139
+ this.startBeingUsedFromFilter$ = this.state$.pipe(map((x) => x.computeSelectionResultRelativeToFilter && x.filter?.start != null), shareReplay(1));
123
140
  this.dateRange$ = this.currentDateRange$.pipe(filterMaybe(), shareReplay(1));
124
141
  this.scheduleDays$ = this.state$.pipe(map((x) => x.scheduleDays), distinctUntilChanged(setsAreEquivalent), shareReplay(1));
125
142
  this.currentSelectionValue$ = this.state$.pipe(map((x) => x.currentSelectionValue), shareReplay(1));
126
143
  this.selectionValue$ = this.currentSelectionValue$.pipe(filterMaybe(), shareReplay(1));
127
144
  this.currentDateScheduleRangeValue$ = this.currentSelectionValue$.pipe(map((x) => x?.dateScheduleRange), distinctUntilChanged(isSameDateScheduleRange), shareReplay(1));
128
145
  this.dateScheduleRangeValue$ = this.currentDateScheduleRangeValue$.pipe(filterMaybe(), shareReplay(1));
129
- this.minDate$ = this.state$.pipe(map((x) => findMaxDate([x.filter?.start, x.minDate])), distinctUntilChanged(isSameDateDay), shareReplay(1));
130
- this.maxDate$ = this.state$.pipe(map((x) => findMinDate([x.filter?.end, x.maxDate])), distinctUntilChanged(isSameDateDay), shareReplay(1));
146
+ this.minDate$ = this.state$.pipe(map(calendarScheduleMinDate), distinctUntilChanged(isSameDateDay), shareReplay(1));
147
+ this.maxDate$ = this.state$.pipe(map(calendarScheduleMaxDate), distinctUntilChanged(isSameDateDay), shareReplay(1));
131
148
  this.cellContentFactory$ = this.state$.pipe(map((x) => x.cellContentFactory), distinctUntilChanged(), shareReplay(1));
132
149
  this.isCustomized$ = this.state$.pipe(map((x) => x.selectedIndexes.size > 0), distinctUntilChanged(), shareReplay(1));
133
150
  // MARK: State Changes
134
151
  this.setFilter = this.updater((state, filter) => updateStateWithFilter(state, filter));
152
+ this.setComputeSelectionResultRelativeToFilter = this.updater((state, computeSelectionResultRelativeToFilter) => updateStateWithComputeSelectionResultRelativeToFilter(state, computeSelectionResultRelativeToFilter));
135
153
  this.clearFilter = this.updater((state) => updateStateWithFilter(state, undefined));
136
154
  this.setTimezone = this.updater((state, timezone) => ({ ...state, timezone }));
137
155
  this.setInputRange = this.updater((state, range) => updateStateWithChangedRange(state, range));
@@ -139,6 +157,8 @@ class DbxCalendarScheduleSelectionStore extends ComponentStore {
139
157
  this.addSelectedDates = this.updater((state, add) => updateStateWithChangedDates(state, { add }));
140
158
  this.removeSelectedDates = this.updater((state, remove) => updateStateWithChangedDates(state, { remove }));
141
159
  this.setSelectedDates = this.updater((state, set) => updateStateWithChangedDates(state, { set }));
160
+ this.selectAllDates = this.updater((state, selectAll = 'all') => updateStateWithChangedDates(state, { selectAll }));
161
+ this.setInitialSelectionState = this.updater((state, initialSelectionState) => updateStateWithInitialSelectionState(state, initialSelectionState));
142
162
  this.setScheduleDays = this.updater((state, scheduleDays) => updateStateWithChangedScheduleDays(state, scheduleDays));
143
163
  this.setAllowAllScheduleDays = this.updater((state) => updateStateWithChangedScheduleDays(state, null));
144
164
  this.setDateScheduleRangeValue = this.updater((state, value) => updateStateWithDateScheduleRangeValue(state, value));
@@ -150,12 +170,38 @@ DbxCalendarScheduleSelectionStore.ɵprov = i0.ɵɵngDeclareInjectable({ minVersi
150
170
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxCalendarScheduleSelectionStore, decorators: [{
151
171
  type: Injectable
152
172
  }], ctorParameters: function () { return []; } });
153
- function updateStateWithFilter(state, filter) {
173
+ function updateStateWithInitialSelectionState(state, initialSelectionState) {
174
+ const { selectedIndexes } = state;
175
+ if (selectedIndexes.size === 0 && initialSelectionState === 'all') {
176
+ state = updateStateWithChangedDates(state, { selectAll: initialSelectionState });
177
+ }
178
+ return { ...state, initialSelectionState };
179
+ }
180
+ function updateStateWithComputeSelectionResultRelativeToFilter(currentState, computeSelectionResultRelativeToFilter) {
181
+ let state = { ...currentState, computeSelectionResultRelativeToFilter };
182
+ if (Boolean(currentState.computeSelectionResultRelativeToFilter) !== Boolean(computeSelectionResultRelativeToFilter)) {
183
+ state = updateStateWithChangedDates(state, {}); // recalculate if change occurs as it will affect the output value
184
+ }
185
+ return state;
186
+ }
187
+ function updateStateWithFilter(state, inputFilter) {
154
188
  let isEnabledFilterDay = () => true;
155
- if (filter) {
189
+ let filter = null;
190
+ if (inputFilter) {
191
+ filter = copyDateScheduleDateFilterConfig(inputFilter); // copy filter
156
192
  isEnabledFilterDay = dateScheduleDateFilter(filter);
157
193
  }
158
- return { ...state, filter, isEnabledFilterDay };
194
+ state = { ...state, filter, isEnabledFilterDay };
195
+ // attempt to re-apply the initial selection state once filter is applied
196
+ if (state.initialSelectionState) {
197
+ state = updateStateWithInitialSelectionState(state, state.initialSelectionState);
198
+ }
199
+ // re-calculate the selection given the filter
200
+ const { inputStart, inputEnd } = state;
201
+ if (inputStart && inputEnd) {
202
+ state = updateStateWithChangedRange(state, { inputStart, inputEnd });
203
+ }
204
+ return state;
159
205
  }
160
206
  function updateStateWithDateScheduleRangeValue(state, change) {
161
207
  const isSameValue = isSameDateScheduleRange(state.currentSelectionValue?.dateScheduleRange, change);
@@ -165,7 +211,7 @@ function updateStateWithDateScheduleRangeValue(state, change) {
165
211
  else {
166
212
  if (change != null) {
167
213
  const nextState = { ...state, inputStart: change.start, inputEnd: change.end, selectedIndexes: new Set(change.ex) };
168
- return updateStateWithChangedScheduleDays(finalizeNewCalendarScheduleSelectionState(nextState), dateScheduleDayCodes(change.w));
214
+ return updateStateWithChangedScheduleDays(finalizeNewCalendarScheduleSelectionState(nextState), expandDateScheduleDayCodes(change.w));
169
215
  }
170
216
  else {
171
217
  return noSelectionCalendarScheduleSelectionState(state); // clear selection, retain disabled days
@@ -186,9 +232,24 @@ function updateStateWithChangedScheduleDays(state, change) {
186
232
  }
187
233
  function updateStateWithChangedDates(state, change) {
188
234
  const { indexFactory, allowedDaysOfWeek, indexDayOfWeek } = state;
235
+ const { minDate, maxDate } = calendarScheduleMinAndMaxDate(state);
189
236
  let selectedIndexes;
190
- if (change.set) {
191
- selectedIndexes = new Set(iterableToArray(change.set).map(indexFactory));
237
+ if (change.reset || change.selectAll != null || change.set) {
238
+ let set = change.set ?? [];
239
+ let selectAll = change.reset === true ? state.initialSelectionState : change.selectAll;
240
+ switch (selectAll) {
241
+ case 'all':
242
+ if (minDate != null && maxDate != null) {
243
+ const minIndex = indexFactory(minDate);
244
+ const maxIndex = indexFactory(maxDate);
245
+ set = range(minIndex, maxIndex);
246
+ }
247
+ break;
248
+ case 'none':
249
+ set = [];
250
+ break;
251
+ }
252
+ selectedIndexes = new Set(iterableToArray(set).map(indexFactory));
192
253
  }
193
254
  else {
194
255
  selectedIndexes = new Set(state.selectedIndexes);
@@ -214,22 +275,22 @@ function updateStateWithChangedDates(state, change) {
214
275
  }
215
276
  else {
216
277
  // no selected days
217
- return noSelectionCalendarScheduleSelectionState(state);
278
+ return noSelectionCalendarScheduleSelectionState(nextState);
218
279
  }
219
280
  }
220
281
  function noSelectionCalendarScheduleSelectionState(state) {
221
282
  return finalizeNewCalendarScheduleSelectionState({ ...state, selectedIndexes: new Set(), inputStart: null, inputEnd: null });
222
283
  }
223
284
  function updateStateWithChangedRange(state, change) {
224
- const { inputStart: currentInputStart, inputEnd: currentInputEnd, indexFactory, minDate, maxDate } = state;
225
- const inputStart = startOfDay(change.inputStart);
226
- const inputEnd = startOfDay(change.inputEnd);
285
+ const { inputStart: currentInputStart, inputEnd: currentInputEnd, indexFactory, minDate, maxDate, filter, computeSelectionResultRelativeToFilter } = state;
286
+ let inputStart = startOfDay(change.inputStart);
287
+ let inputEnd = startOfDay(change.inputEnd);
227
288
  const isValidRange = minDate != null || maxDate != null ? isDateInDateRangeFunction({ start: minDate ?? undefined, end: maxDate ?? undefined }) : () => true;
228
289
  if (!isValidRange(inputStart) || !isValidRange(inputEnd) || (isSameDateDay(inputStart, currentInputStart) && isSameDateDay(inputEnd, currentInputEnd))) {
229
290
  return state; // if no change, return the current state.
230
291
  }
231
292
  // retain all indexes that are within the new range
232
- const minIndex = indexFactory(inputStart);
293
+ const minIndex = computeSelectionResultRelativeToFilter && filter?.start ? indexFactory(filter?.start) : indexFactory(inputStart);
233
294
  const maxIndex = indexFactory(inputEnd) + 1;
234
295
  const currentIndexes = Array.from(state.selectedIndexes);
235
296
  const isInCurrentRange = isIndexNumberInIndexRangeFunction({ minIndex, maxIndex });
@@ -262,19 +323,30 @@ function isEnabledDayInCalendarScheduleSelectionState(state) {
262
323
  };
263
324
  }
264
325
  function computeScheduleSelectionValue(state) {
265
- const { scheduleDays, allowedDaysOfWeek, indexDayOfWeek } = state;
326
+ const { indexFactory, scheduleDays, allowedDaysOfWeek, indexDayOfWeek, computeSelectionResultRelativeToFilter, filter } = state;
266
327
  const rangeAndExclusion = computeScheduleSelectionRangeAndExclusion(state);
267
328
  if (rangeAndExclusion == null) {
268
329
  return null;
269
330
  }
270
- const { start, end, excluded, dateBlockRange } = rangeAndExclusion;
271
- const indexOffset = dateBlockRange.i;
272
- const ex = excluded
273
- .filter((x) => {
274
- const isExcludedIndex = allowedDaysOfWeek.has(indexDayOfWeek(x));
275
- return isExcludedIndex;
276
- })
277
- .map((x) => x - indexOffset); // set to the proper offset
331
+ const { start: rangeStart, end, excluded: allExcluded, dateBlockRange } = rangeAndExclusion;
332
+ let filterOffsetExcludedRange = [];
333
+ let indexOffset = dateBlockRange.i;
334
+ let start = rangeStart;
335
+ // If computeSelectionResultRelativeToFilter is true, then we need to offset the values to be relative to that start.
336
+ if (computeSelectionResultRelativeToFilter && filter?.start) {
337
+ start = filter.start;
338
+ const filterStartIndexOffset = indexFactory(rangeStart) - indexFactory(start);
339
+ filterOffsetExcludedRange = range(0, filterStartIndexOffset);
340
+ indexOffset = indexOffset - filterStartIndexOffset;
341
+ }
342
+ const excluded = computeSelectionResultRelativeToFilter
343
+ ? allExcluded.filter((x) => {
344
+ const isExcludedIndex = allowedDaysOfWeek.has(indexDayOfWeek(x)); // ???
345
+ return isExcludedIndex;
346
+ })
347
+ : allExcluded;
348
+ const offsetExcluded = excluded.map((x) => x - indexOffset); // set to the proper offset
349
+ const ex = [...filterOffsetExcludedRange, ...offsetExcluded];
278
350
  const w = dateScheduleEncodedWeek(scheduleDays);
279
351
  const d = []; // "included" blocks are never used/calculated.
280
352
  const dateScheduleRange = {
@@ -290,7 +362,7 @@ function computeScheduleSelectionValue(state) {
290
362
  };
291
363
  }
292
364
  function computeScheduleSelectionRangeAndExclusion(state) {
293
- const { isEnabledDay } = state;
365
+ const { isEnabledDay, isEnabledFilterDay } = state;
294
366
  const dateFactory = dateBlockTimingDateFactory(state);
295
367
  const dateBlockRange = computeCalendarScheduleSelectionDateBlockRange(state);
296
368
  if (dateBlockRange == null) {
@@ -299,7 +371,7 @@ function computeScheduleSelectionRangeAndExclusion(state) {
299
371
  const start = dateFactory(dateBlockRange.i);
300
372
  const end = dateFactory(dateBlockRange.to);
301
373
  const excluded = range(dateBlockRange.i, dateBlockRange.to + 1).filter((x) => {
302
- const isExcludedIndex = !isEnabledDay(x);
374
+ const isExcludedIndex = !isEnabledDay(x) || !isEnabledFilterDay(x);
303
375
  return isExcludedIndex;
304
376
  });
305
377
  const result = {
@@ -313,12 +385,8 @@ function computeScheduleSelectionRangeAndExclusion(state) {
313
385
  function computeCalendarScheduleSelectionRange(state) {
314
386
  const dateFactory = dateBlockTimingDateFactory(state);
315
387
  const dateBlockRange = computeCalendarScheduleSelectionDateBlockRange(state);
316
- if (dateBlockRange != null) {
317
- return { start: dateFactory(dateBlockRange.i), end: dateFactory(dateBlockRange.to) };
318
- }
319
- else {
320
- return undefined;
321
- }
388
+ const dateRange = dateBlockRange != null ? { start: dateFactory(dateBlockRange.i), end: dateFactory(dateBlockRange.to) } : undefined;
389
+ return dateRange;
322
390
  }
323
391
  function computeCalendarScheduleSelectionDateBlockRange(state) {
324
392
  const { indexFactory, inputStart, inputEnd, allowedDaysOfWeek, indexDayOfWeek, isEnabledDay, isEnabledFilterDay } = state;
@@ -846,6 +914,12 @@ class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
846
914
  get filter() {
847
915
  return this.props.filter;
848
916
  }
917
+ get initialSelectionState() {
918
+ return this.props.initialSelectionState;
919
+ }
920
+ get computeSelectionResultRelativeToFilter() {
921
+ return this.props.computeSelectionResultRelativeToFilter;
922
+ }
849
923
  ngOnInit() {
850
924
  this._formControlObs.next(this.formControl);
851
925
  this._syncSub.subscription = this.value$.pipe(distinctUntilChanged(isSameDateScheduleRange)).subscribe((x) => {
@@ -858,6 +932,12 @@ class DbxFormCalendarDateScheduleRangeFieldComponent extends FieldType {
858
932
  if (filter != null) {
859
933
  this._filterSub.subscription = this.dbxCalendarScheduleSelectionStore.setFilter(asObservable(filter));
860
934
  }
935
+ if (this.initialSelectionState !== undefined) {
936
+ this.dbxCalendarScheduleSelectionStore.setInitialSelectionState(this.initialSelectionState);
937
+ }
938
+ if (this.computeSelectionResultRelativeToFilter != null) {
939
+ this.dbxCalendarScheduleSelectionStore.setComputeSelectionResultRelativeToFilter(this.computeSelectionResultRelativeToFilter);
940
+ }
861
941
  }
862
942
  ngOnDestroy() {
863
943
  super.ngOnDestroy();
@@ -1052,5 +1132,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
1052
1132
  * Generated bundle index. Do not edit.
1053
1133
  */
1054
1134
 
1055
- export { CalendarScheduleSelectionDayState, DEFAULT_SCHEDULE_SELECTION_CALENDAR_DATE_POPOVER_KEY, DbxCalendarScheduleSelectionStore, DbxCalendarScheduleSelectionStoreInjectionBlockDirective, DbxCalendarScheduleSelectionStoreProviderBlock, DbxFormCalendarDateScheduleRangeFieldComponent, DbxFormCalendarModule, DbxFormDateScheduleRangeFieldModule, DbxScheduleSelectionCalendarCellComponent, DbxScheduleSelectionCalendarComponent, DbxScheduleSelectionCalendarDateDaysComponent, DbxScheduleSelectionCalendarDateDaysFormComponent, DbxScheduleSelectionCalendarDateDialogButtonComponent, DbxScheduleSelectionCalendarDateDialogComponent, DbxScheduleSelectionCalendarDatePopoverButtonComponent, DbxScheduleSelectionCalendarDatePopoverComponent, DbxScheduleSelectionCalendarDatePopoverContentComponent, DbxScheduleSelectionCalendarDateRangeComponent, computeCalendarScheduleSelectionDateBlockRange, computeCalendarScheduleSelectionRange, computeScheduleSelectionRangeAndExclusion, computeScheduleSelectionValue, dateScheduleRangeField, dbxScheduleSelectionCalendarDateDaysFormDayFields, dbxScheduleSelectionCalendarDateDaysFormFields, defaultCalendarScheduleSelectionCellContentFactory, finalizeNewCalendarScheduleSelectionState, initialCalendarScheduleSelectionState, isEnabledDayInCalendarScheduleSelectionState, noSelectionCalendarScheduleSelectionState, provideCalendarScheduleSelectionStoreIfParentIsUnavailable, updateStateWithChangedDates, updateStateWithChangedRange, updateStateWithChangedScheduleDays, updateStateWithDateScheduleRangeValue, updateStateWithFilter };
1135
+ export { CalendarScheduleSelectionDayState, DEFAULT_SCHEDULE_SELECTION_CALENDAR_DATE_POPOVER_KEY, DbxCalendarScheduleSelectionStore, DbxCalendarScheduleSelectionStoreInjectionBlockDirective, DbxCalendarScheduleSelectionStoreProviderBlock, DbxFormCalendarDateScheduleRangeFieldComponent, DbxFormCalendarModule, DbxFormDateScheduleRangeFieldModule, DbxScheduleSelectionCalendarCellComponent, DbxScheduleSelectionCalendarComponent, DbxScheduleSelectionCalendarDateDaysComponent, DbxScheduleSelectionCalendarDateDaysFormComponent, DbxScheduleSelectionCalendarDateDialogButtonComponent, DbxScheduleSelectionCalendarDateDialogComponent, DbxScheduleSelectionCalendarDatePopoverButtonComponent, DbxScheduleSelectionCalendarDatePopoverComponent, DbxScheduleSelectionCalendarDatePopoverContentComponent, DbxScheduleSelectionCalendarDateRangeComponent, calendarScheduleMaxDate, calendarScheduleMinAndMaxDate, calendarScheduleMinDate, computeCalendarScheduleSelectionDateBlockRange, computeCalendarScheduleSelectionRange, computeScheduleSelectionRangeAndExclusion, computeScheduleSelectionValue, dateScheduleRangeField, dbxScheduleSelectionCalendarDateDaysFormDayFields, dbxScheduleSelectionCalendarDateDaysFormFields, defaultCalendarScheduleSelectionCellContentFactory, finalizeNewCalendarScheduleSelectionState, initialCalendarScheduleSelectionState, isEnabledDayInCalendarScheduleSelectionState, noSelectionCalendarScheduleSelectionState, provideCalendarScheduleSelectionStoreIfParentIsUnavailable, updateStateWithChangedDates, updateStateWithChangedRange, updateStateWithChangedScheduleDays, updateStateWithComputeSelectionResultRelativeToFilter, updateStateWithDateScheduleRangeValue, updateStateWithFilter, updateStateWithInitialSelectionState };
1056
1136
  //# sourceMappingURL=dereekb-dbx-form-calendar.mjs.map