@skyux/datetime 11.27.0 → 11.29.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.
Files changed (63) hide show
  1. package/documentation.json +2639 -2621
  2. package/esm2022/index.mjs +4 -4
  3. package/esm2022/lib/modules/date-pipe/fuzzy-date.pipe.mjs +2 -2
  4. package/esm2022/lib/modules/date-range-picker/date-range-picker.component.mjs +22 -9
  5. package/esm2022/lib/modules/date-range-picker/date-range.service.mjs +8 -10
  6. package/esm2022/lib/modules/date-range-picker/types/date-range-calculator.mjs +19 -3
  7. package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar-change.mjs +2 -0
  8. package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar-inner.component.mjs +383 -0
  9. package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar-label.pipe.mjs +39 -0
  10. package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar.component.mjs +100 -0
  11. package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar.service.mjs +22 -0
  12. package/esm2022/lib/modules/datepicker/calendar/daypicker-button.component.mjs +23 -0
  13. package/esm2022/lib/modules/datepicker/calendar/daypicker-cell.component.mjs +129 -0
  14. package/esm2022/lib/modules/datepicker/calendar/daypicker-context.mjs +2 -0
  15. package/esm2022/lib/modules/datepicker/calendar/daypicker.component.mjs +221 -0
  16. package/esm2022/lib/modules/datepicker/calendar/monthpicker.component.mjs +80 -0
  17. package/esm2022/lib/modules/datepicker/calendar/yearpicker.component.mjs +87 -0
  18. package/esm2022/lib/modules/datepicker/datepicker-input.directive.mjs +5 -4
  19. package/esm2022/lib/modules/datepicker/datepicker.component.mjs +24 -8
  20. package/esm2022/lib/modules/datepicker/datepicker.module.mjs +31 -67
  21. package/esm2022/lib/modules/datepicker/fuzzy/datepicker-input-fuzzy.directive.mjs +516 -0
  22. package/esm2022/lib/modules/datepicker/fuzzy/fuzzy-date.mjs +2 -0
  23. package/esm2022/lib/modules/datepicker/fuzzy/fuzzy-date.service.mjs +411 -0
  24. package/fesm2022/skyux-datetime.mjs +584 -564
  25. package/fesm2022/skyux-datetime.mjs.map +1 -1
  26. package/index.d.ts +5 -5
  27. package/lib/modules/date-pipe/fuzzy-date.pipe.d.ts +2 -2
  28. package/lib/modules/date-range-picker/date-range-picker.component.d.ts +6 -1
  29. package/lib/modules/date-range-picker/date-range.service.d.ts +0 -1
  30. package/lib/modules/date-range-picker/types/date-range-calculator.d.ts +7 -6
  31. package/lib/modules/datepicker/{datepicker-calendar-change.d.ts → calendar/datepicker-calendar-change.d.ts} +1 -1
  32. package/lib/modules/datepicker/{datepicker-calendar-inner.component.d.ts → calendar/datepicker-calendar-inner.component.d.ts} +6 -6
  33. package/lib/modules/datepicker/{datepicker-calendar.component.d.ts → calendar/datepicker-calendar.component.d.ts} +3 -3
  34. package/lib/modules/datepicker/calendar/datepicker-calendar.service.d.ts +16 -0
  35. package/lib/modules/datepicker/{daypicker-button.component.d.ts → calendar/daypicker-button.component.d.ts} +3 -3
  36. package/lib/modules/datepicker/{daypicker-cell.component.d.ts → calendar/daypicker-cell.component.d.ts} +5 -5
  37. package/lib/modules/datepicker/{datepicker-date.d.ts → calendar/daypicker-context.d.ts} +2 -1
  38. package/lib/modules/datepicker/{daypicker.component.d.ts → calendar/daypicker.component.d.ts} +4 -4
  39. package/lib/modules/datepicker/{monthpicker.component.d.ts → calendar/monthpicker.component.d.ts} +3 -3
  40. package/lib/modules/datepicker/{yearpicker.component.d.ts → calendar/yearpicker.component.d.ts} +3 -3
  41. package/lib/modules/datepicker/datepicker-input.directive.d.ts +1 -1
  42. package/lib/modules/datepicker/datepicker.component.d.ts +8 -3
  43. package/lib/modules/datepicker/datepicker.module.d.ts +11 -22
  44. package/lib/modules/datepicker/{datepicker-input-fuzzy.directive.d.ts → fuzzy/datepicker-input-fuzzy.directive.d.ts} +3 -3
  45. package/package.json +9 -9
  46. package/esm2022/lib/modules/datepicker/datepicker-calendar-change.mjs +0 -2
  47. package/esm2022/lib/modules/datepicker/datepicker-calendar-inner.component.mjs +0 -381
  48. package/esm2022/lib/modules/datepicker/datepicker-calendar-label.pipe.mjs +0 -39
  49. package/esm2022/lib/modules/datepicker/datepicker-calendar.component.mjs +0 -96
  50. package/esm2022/lib/modules/datepicker/datepicker-date.mjs +0 -2
  51. package/esm2022/lib/modules/datepicker/datepicker-input-fuzzy.directive.mjs +0 -515
  52. package/esm2022/lib/modules/datepicker/datepicker.service.mjs +0 -21
  53. package/esm2022/lib/modules/datepicker/daypicker-button.component.mjs +0 -22
  54. package/esm2022/lib/modules/datepicker/daypicker-cell.component.mjs +0 -128
  55. package/esm2022/lib/modules/datepicker/daypicker.component.mjs +0 -220
  56. package/esm2022/lib/modules/datepicker/fuzzy-date.mjs +0 -2
  57. package/esm2022/lib/modules/datepicker/fuzzy-date.service.mjs +0 -411
  58. package/esm2022/lib/modules/datepicker/monthpicker.component.mjs +0 -79
  59. package/esm2022/lib/modules/datepicker/yearpicker.component.mjs +0 -86
  60. package/lib/modules/datepicker/datepicker.service.d.ts +0 -15
  61. /package/lib/modules/datepicker/{datepicker-calendar-label.pipe.d.ts → calendar/datepicker-calendar-label.pipe.d.ts} +0 -0
  62. /package/lib/modules/datepicker/{fuzzy-date.d.ts → fuzzy/fuzzy-date.d.ts} +0 -0
  63. /package/lib/modules/datepicker/{fuzzy-date.service.d.ts → fuzzy/fuzzy-date.service.d.ts} +0 -0
package/index.d.ts CHANGED
@@ -12,18 +12,18 @@ export { SkyDateRangeCalculatorGetValueFunction } from './lib/modules/date-range
12
12
  export { SkyDateRangeCalculatorId } from './lib/modules/date-range-picker/types/date-range-calculator-id';
13
13
  export { SkyDateRangeCalculatorType } from './lib/modules/date-range-picker/types/date-range-calculator-type';
14
14
  export { SkyDateRangeCalculatorValidateFunction } from './lib/modules/date-range-picker/types/date-range-calculator-validate-function';
15
- export { SkyDatepickerCalendarChange } from './lib/modules/datepicker/datepicker-calendar-change';
15
+ export { SkyDatepickerCalendarChange } from './lib/modules/datepicker/calendar/datepicker-calendar-change';
16
16
  export { SkyDatepickerConfigService } from './lib/modules/datepicker/datepicker-config.service';
17
17
  export { SkyDatepickerCustomDate } from './lib/modules/datepicker/datepicker-custom-date';
18
18
  export { SkyDatepickerModule } from './lib/modules/datepicker/datepicker.module';
19
- export { SkyFuzzyDate } from './lib/modules/datepicker/fuzzy-date';
20
- export { SkyFuzzyDateService } from './lib/modules/datepicker/fuzzy-date.service';
19
+ export { SkyFuzzyDate } from './lib/modules/datepicker/fuzzy/fuzzy-date';
20
+ export { SkyFuzzyDateService } from './lib/modules/datepicker/fuzzy/fuzzy-date.service';
21
21
  export { SkyTimepickerTimeFormatType } from './lib/modules/timepicker/timepicker-time-format-type';
22
22
  export { SkyTimepickerTimeOutput } from './lib/modules/timepicker/timepicker-time-output';
23
23
  export { SkyTimepickerModule } from './lib/modules/timepicker/timepicker.module';
24
24
  export { SkyDateRangePickerComponent as λ5 } from './lib/modules/date-range-picker/date-range-picker.component';
25
- export { SkyDatepickerCalendarComponent as λ1 } from './lib/modules/datepicker/datepicker-calendar.component';
26
- export { SkyFuzzyDatepickerInputDirective as λ4 } from './lib/modules/datepicker/datepicker-input-fuzzy.directive';
25
+ export { SkyDatepickerCalendarComponent as λ1 } from './lib/modules/datepicker/calendar/datepicker-calendar.component';
26
+ export { SkyFuzzyDatepickerInputDirective as λ4 } from './lib/modules/datepicker/fuzzy/datepicker-input-fuzzy.directive';
27
27
  export { SkyDatepickerInputDirective as λ3 } from './lib/modules/datepicker/datepicker-input.directive';
28
28
  export { SkyDatepickerComponent as λ2 } from './lib/modules/datepicker/datepicker.component';
29
29
  export { SkyTimepickerComponent as λ6 } from './lib/modules/timepicker/timepicker.component';
@@ -1,6 +1,6 @@
1
1
  import { PipeTransform } from '@angular/core';
2
- import { SkyFuzzyDate } from '../datepicker/fuzzy-date';
3
- import { SkyFuzzyDateService } from '../datepicker/fuzzy-date.service';
2
+ import { SkyFuzzyDate } from '../datepicker/fuzzy/fuzzy-date';
3
+ import { SkyFuzzyDateService } from '../datepicker/fuzzy/fuzzy-date.service';
4
4
  import * as i0 from "@angular/core";
5
5
  /**
6
6
  * Formats date values using two or more date tokens that represent the day, month,
@@ -1,5 +1,6 @@
1
1
  import { AfterViewInit, Signal, TemplateRef } from '@angular/core';
2
2
  import { AbstractControl, ControlValueAccessor, FormControl, ValidationErrors, Validator } from '@angular/forms';
3
+ import { SkyDatepickerComponent } from '../datepicker/datepicker.component';
3
4
  import { SkyDateRangeCalculation } from './types/date-range-calculation';
4
5
  import { SkyDateRangeCalculator } from './types/date-range-calculator';
5
6
  import { SkyDateRangeCalculatorId } from './types/date-range-calculator-id';
@@ -68,6 +69,7 @@ export declare class SkyDateRangePickerComponent implements AfterViewInit, Contr
68
69
  */
69
70
  helpKey: string | undefined;
70
71
  protected calculators: SkyDateRangeCalculator[];
72
+ protected datepickers: Signal<readonly SkyDatepickerComponent[]>;
71
73
  protected hostControl: AbstractControl | null | undefined;
72
74
  protected selectedCalculator: SkyDateRangeCalculator;
73
75
  protected showEndDatePicker: import("@angular/core").WritableSignal<boolean>;
@@ -86,7 +88,6 @@ export declare class SkyDateRangePickerComponent implements AfterViewInit, Contr
86
88
  setDisabledState(isDisabled: boolean): void;
87
89
  validate(control: AbstractControl): ValidationErrors | null;
88
90
  writeValue(value: Partial<SkyDateRangeCalculation> | undefined): void;
89
- protected onBlur(): void;
90
91
  /**
91
92
  * Fires when a user changes the selected calculator ID.
92
93
  */
@@ -95,6 +96,10 @@ export declare class SkyDateRangePickerComponent implements AfterViewInit, Contr
95
96
  * Fires when a user interacts with a date range picker.
96
97
  */
97
98
  protected onDateChange(): void;
99
+ /**
100
+ * Fires when the date range picker loses focus.
101
+ */
102
+ protected onFocusout({ relatedTarget }: FocusEvent): void;
98
103
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyDateRangePickerComponent, never>;
99
104
  static ɵcmp: i0.ɵɵComponentDeclaration<SkyDateRangePickerComponent, "sky-date-range-picker", never, { "calculatorIds": { "alias": "calculatorIds"; "required": false; }; "dateFormat": { "alias": "dateFormat"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "helpPopoverContent": { "alias": "helpPopoverContent"; "required": false; }; "helpPopoverTitle": { "alias": "helpPopoverTitle"; "required": false; }; "hintText": { "alias": "hintText"; "required": false; }; "label": { "alias": "label"; "required": false; }; "labelText": { "alias": "labelText"; "required": false; }; "stacked": { "alias": "stacked"; "required": false; }; "helpKey": { "alias": "helpKey"; "required": false; }; }, {}, never, ["sky-form-error"], true, never>;
100
105
  static ngAcceptInputType_disabled: unknown;
@@ -8,7 +8,6 @@ import * as i0 from "@angular/core";
8
8
  export declare class SkyDateRangeService {
9
9
  #private;
10
10
  get calculators(): SkyDateRangeCalculator[];
11
- constructor();
12
11
  /**
13
12
  * Creates a custom date range calculator.
14
13
  * @param config The calculator config.
@@ -1,4 +1,6 @@
1
1
  import { ValidationErrors } from '@angular/forms';
2
+ import { SkyLibResourcesService } from '@skyux/i18n';
3
+ import { Observable } from 'rxjs';
2
4
  import { SkyDateRange } from './date-range';
3
5
  import { SkyDateRangeCalculation } from './date-range-calculation';
4
6
  import { SkyDateRangeCalculatorConfig } from './date-range-calculator-config';
@@ -16,11 +18,12 @@ export declare class SkyDateRangeCalculator {
16
18
  /**
17
19
  * The text to display in the calculator select menu.
18
20
  */
19
- shortDescription: string;
21
+ get shortDescription$(): Observable<string>;
20
22
  /**
21
- * @internal
23
+ * The text to display in the calculator select menu.
24
+ * @deprecated Subscribe to the `shortDescription$` observable instead.
22
25
  */
23
- readonly _shortDescriptionResourceKey: string | undefined;
26
+ shortDescription: string;
24
27
  /**
25
28
  * The type of calculations available for the date range.
26
29
  */
@@ -29,9 +32,7 @@ export declare class SkyDateRangeCalculator {
29
32
  /**
30
33
  * The calculator ID that specifies calculator objects that represent date ranges.
31
34
  */
32
- calculatorId: SkyDateRangeCalculatorId, config: SkyDateRangeCalculatorConfig & {
33
- _shortDescriptionResourceKey?: string;
34
- });
35
+ calculatorId: SkyDateRangeCalculatorId, config: SkyDateRangeCalculatorConfig, resourcesSvc: SkyLibResourcesService, _shortDescriptionResourceKey?: string);
35
36
  /**
36
37
  * Gets the current value of the calculator.
37
38
  * @param startDateInput The start date.
@@ -1,5 +1,5 @@
1
1
  import { Observable } from 'rxjs';
2
- import { SkyDatepickerCustomDate } from './datepicker-custom-date';
2
+ import { SkyDatepickerCustomDate } from '../datepicker-custom-date';
3
3
  /**
4
4
  * Specifies changes in the datepicker calendar.
5
5
  */
@@ -1,7 +1,7 @@
1
1
  import { EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
2
- import { SkyDateFormatter } from './date-formatter';
3
- import { SkyDatepickerCustomDate } from './datepicker-custom-date';
4
- import { SkyDatepickerDate } from './datepicker-date';
2
+ import { SkyDateFormatter } from '../date-formatter';
3
+ import { SkyDatepickerCustomDate } from '../datepicker-custom-date';
4
+ import { SkyDayPickerContext } from './daypicker-context';
5
5
  import * as i0 from "@angular/core";
6
6
  type DateComparator = (date1: Date, date2: Date) => number | undefined;
7
7
  type KeyboardEventHandler = (key: string, event: KeyboardEvent) => void;
@@ -68,8 +68,8 @@ export declare class SkyDatepickerCalendarInnerComponent implements OnDestroy, O
68
68
  dateFilter(date: Date, format: string): string;
69
69
  isActive(dateObject: any): boolean;
70
70
  onKeydown(event: KeyboardEvent): void;
71
- createDateObject(date: Date, format: string, isSecondary: boolean, id: string): SkyDatepickerDate;
72
- createCalendarRows(dates: SkyDatepickerDate[], size: number): SkyDatepickerDate[][];
71
+ createDateObject(date: Date, format: string, isSecondary: boolean, id: string): SkyDayPickerContext;
72
+ createCalendarRows(dates: SkyDayPickerContext[], size: number): SkyDayPickerContext[][];
73
73
  fixTimeZone(date: Date): Date;
74
74
  selectCalendar(event: Event, date: Date, closePicker?: boolean): void;
75
75
  select(date: Date, isManual?: boolean): void;
@@ -85,6 +85,6 @@ export declare class SkyDatepickerCalendarInnerComponent implements OnDestroy, O
85
85
  */
86
86
  protected isDisabled(date: Date): boolean;
87
87
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyDatepickerCalendarInnerComponent, never>;
88
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyDatepickerCalendarInnerComponent, "sky-datepicker-inner", never, { "customDates": { "alias": "customDates"; "required": false; }; "startingDay": { "alias": "startingDay"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "startAtDate": { "alias": "startAtDate"; "required": false; }; "selectedDate": { "alias": "selectedDate"; "required": false; }; }, { "selectedDateChange": "selectedDateChange"; "calendarModeChange": "calendarModeChange"; }, never, ["*"], false, never>;
88
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyDatepickerCalendarInnerComponent, "sky-datepicker-inner", never, { "customDates": { "alias": "customDates"; "required": false; }; "startingDay": { "alias": "startingDay"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "startAtDate": { "alias": "startAtDate"; "required": false; }; "selectedDate": { "alias": "selectedDate"; "required": false; }; }, { "selectedDateChange": "selectedDateChange"; "calendarModeChange": "calendarModeChange"; }, never, ["*"], true, never>;
89
89
  }
90
90
  export {};
@@ -1,8 +1,8 @@
1
1
  import { EventEmitter } from '@angular/core';
2
+ import { SkyDatepickerConfigService } from '../datepicker-config.service';
3
+ import { SkyDatepickerCustomDate } from '../datepicker-custom-date';
2
4
  import { SkyDatepickerCalendarChange } from './datepicker-calendar-change';
3
5
  import { SkyDatepickerCalendarInnerComponent } from './datepicker-calendar-inner.component';
4
- import { SkyDatepickerConfigService } from './datepicker-config.service';
5
- import { SkyDatepickerCustomDate } from './datepicker-custom-date';
6
6
  import * as i0 from "@angular/core";
7
7
  /**
8
8
  * @internal
@@ -31,5 +31,5 @@ export declare class SkyDatepickerCalendarComponent {
31
31
  onSelectedDateChange(event: Date): void;
32
32
  writeValue(value: Date | undefined): void;
33
33
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyDatepickerCalendarComponent, never>;
34
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyDatepickerCalendarComponent, "sky-datepicker-calendar", never, { "customDates": { "alias": "customDates"; "required": false; }; "isDaypickerWaiting": { "alias": "isDaypickerWaiting"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "startAtDate": { "alias": "startAtDate"; "required": false; }; "selectedDate": { "alias": "selectedDate"; "required": false; }; "startingDay": { "alias": "startingDay"; "required": false; }; }, { "calendarDateRangeChange": "calendarDateRangeChange"; "calendarModeChange": "calendarModeChange"; "selectedDateChange": "selectedDateChange"; }, never, never, false, never>;
34
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyDatepickerCalendarComponent, "sky-datepicker-calendar", never, { "customDates": { "alias": "customDates"; "required": false; }; "isDaypickerWaiting": { "alias": "isDaypickerWaiting"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "startAtDate": { "alias": "startAtDate"; "required": false; }; "selectedDate": { "alias": "selectedDate"; "required": false; }; "startingDay": { "alias": "startingDay"; "required": false; }; }, { "calendarDateRangeChange": "calendarDateRangeChange"; "calendarModeChange": "calendarModeChange"; "selectedDateChange": "selectedDateChange"; }, never, never, true, never>;
35
35
  }
@@ -0,0 +1,16 @@
1
+ import { Subject } from 'rxjs';
2
+ import { SkyDayPickerContext } from './daypicker-context';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Manages the state of the calendar picker.
6
+ * @internal
7
+ */
8
+ export declare class SkyDatepickerCalendarService {
9
+ /**
10
+ * Whether a key date popover is currently displayed.
11
+ * Useful for communicating across all daypicker siblings when a popover is displayed.
12
+ */
13
+ keyDatePopoverStream: Subject<SkyDayPickerContext | undefined>;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyDatepickerCalendarService, never>;
15
+ static ɵprov: i0.ɵɵInjectableDeclaration<SkyDatepickerCalendarService>;
16
+ }
@@ -1,5 +1,5 @@
1
1
  import { SkyDatepickerCalendarInnerComponent } from './datepicker-calendar-inner.component';
2
- import { SkyDatepickerDate } from './datepicker-date';
2
+ import { SkyDayPickerContext } from './daypicker-context';
3
3
  import * as i0 from "@angular/core";
4
4
  /**
5
5
  * @internal
@@ -9,8 +9,8 @@ export declare class SkyDayPickerButtonComponent {
9
9
  /**
10
10
  * The date this picker button will represent on the calendar.
11
11
  */
12
- date: SkyDatepickerDate | undefined;
12
+ date: SkyDayPickerContext | undefined;
13
13
  constructor(datepicker: SkyDatepickerCalendarInnerComponent);
14
14
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyDayPickerButtonComponent, never>;
15
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyDayPickerButtonComponent, "sky-daypicker-button", never, { "date": { "alias": "date"; "required": false; }; }, {}, never, never, false, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyDayPickerButtonComponent, "sky-daypicker-button", never, { "date": { "alias": "date"; "required": false; }; }, {}, never, never, true, never>;
16
16
  }
@@ -2,8 +2,8 @@ import { OnDestroy, OnInit } from '@angular/core';
2
2
  import { SkyPopoverMessage } from '@skyux/popovers';
3
3
  import { Subject } from 'rxjs';
4
4
  import { SkyDatepickerCalendarInnerComponent } from './datepicker-calendar-inner.component';
5
- import { SkyDatepickerDate } from './datepicker-date';
6
- import { SkyDatepickerService } from './datepicker.service';
5
+ import { SkyDatepickerCalendarService } from './datepicker-calendar.service';
6
+ import { SkyDayPickerContext } from './daypicker-context';
7
7
  import * as i0 from "@angular/core";
8
8
  /**
9
9
  * @internal
@@ -17,10 +17,10 @@ export declare class SkyDayPickerCellComponent implements OnInit, OnDestroy {
17
17
  /**
18
18
  * The date this picker cell will represent on the calendar.
19
19
  */
20
- date: SkyDatepickerDate | undefined;
20
+ date: SkyDayPickerContext | undefined;
21
21
  hasTooltip: boolean;
22
22
  popoverController: Subject<SkyPopoverMessage>;
23
- constructor(datepicker: SkyDatepickerCalendarInnerComponent, datepickerService: SkyDatepickerService);
23
+ constructor(datepicker: SkyDatepickerCalendarInnerComponent, datepickerService: SkyDatepickerCalendarService);
24
24
  ngOnInit(): void;
25
25
  ngOnDestroy(): void;
26
26
  onDayMouseenter(): void;
@@ -29,5 +29,5 @@ export declare class SkyDayPickerCellComponent implements OnInit, OnDestroy {
29
29
  onPopoverOpened(): void;
30
30
  getKeyDateLabel(): string;
31
31
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyDayPickerCellComponent, never>;
32
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyDayPickerCellComponent, "sky-daypicker-cell", never, { "activeDateHasChanged": { "alias": "activeDateHasChanged"; "required": false; }; "date": { "alias": "date"; "required": false; }; }, {}, never, never, false, never>;
32
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyDayPickerCellComponent, "sky-daypicker-cell", never, { "activeDateHasChanged": { "alias": "activeDateHasChanged"; "required": false; }; "date": { "alias": "date"; "required": false; }; }, {}, never, never, true, never>;
33
33
  }
@@ -1,7 +1,8 @@
1
1
  /**
2
+ * Information about a specific day in the calendar.
2
3
  * @internal
3
4
  */
4
- export interface SkyDatepickerDate {
5
+ export interface SkyDayPickerContext {
5
6
  date: Date;
6
7
  label: string;
7
8
  selected: boolean;
@@ -1,8 +1,8 @@
1
1
  import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
2
+ import { SkyDatepickerCustomDate } from '../datepicker-custom-date';
2
3
  import { SkyDatepickerCalendarChange } from './datepicker-calendar-change';
3
4
  import { SkyDatepickerCalendarInnerComponent } from './datepicker-calendar-inner.component';
4
- import { SkyDatepickerCustomDate } from './datepicker-custom-date';
5
- import { SkyDatepickerDate } from './datepicker-date';
5
+ import { SkyDayPickerContext } from './daypicker-context';
6
6
  import * as i0 from "@angular/core";
7
7
  /**
8
8
  * @internal
@@ -15,7 +15,7 @@ export declare class SkyDayPickerComponent implements OnDestroy, OnInit {
15
15
  activeDateHasChanged: boolean;
16
16
  labels: any[];
17
17
  title: string;
18
- rows: SkyDatepickerDate[][];
18
+ rows: SkyDayPickerContext[][];
19
19
  weekNumbers: number[];
20
20
  datepicker: SkyDatepickerCalendarInnerComponent;
21
21
  CURRENT_THEME_TEMPLATE: any;
@@ -24,5 +24,5 @@ export declare class SkyDayPickerComponent implements OnDestroy, OnInit {
24
24
  ngOnDestroy(): void;
25
25
  protected getDates(startDate: Date, n: number): Date[];
26
26
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyDayPickerComponent, never>;
27
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyDayPickerComponent, "sky-daypicker", never, { "customDates": { "alias": "customDates"; "required": false; }; "isWaiting": { "alias": "isWaiting"; "required": false; }; }, { "calendarDateRangeChange": "calendarDateRangeChange"; }, never, never, false, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyDayPickerComponent, "sky-daypicker", never, { "customDates": { "alias": "customDates"; "required": false; }; "isWaiting": { "alias": "isWaiting"; "required": false; }; }, { "calendarDateRangeChange": "calendarDateRangeChange"; }, never, never, true, never>;
28
28
  }
@@ -1,6 +1,6 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { SkyDatepickerCalendarInnerComponent } from './datepicker-calendar-inner.component';
3
- import { SkyDatepickerDate } from './datepicker-date';
3
+ import { SkyDayPickerContext } from './daypicker-context';
4
4
  import * as i0 from "@angular/core";
5
5
  /**
6
6
  * @internal
@@ -8,10 +8,10 @@ import * as i0 from "@angular/core";
8
8
  export declare class SkyMonthPickerComponent implements OnInit {
9
9
  #private;
10
10
  datepicker: SkyDatepickerCalendarInnerComponent;
11
- rows: SkyDatepickerDate[][];
11
+ rows: SkyDayPickerContext[][];
12
12
  title: string;
13
13
  constructor(datepicker: SkyDatepickerCalendarInnerComponent);
14
14
  ngOnInit(): void;
15
15
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyMonthPickerComponent, never>;
16
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyMonthPickerComponent, "sky-monthpicker", never, {}, {}, never, never, false, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyMonthPickerComponent, "sky-monthpicker", never, {}, {}, never, never, true, never>;
17
17
  }
@@ -1,6 +1,6 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { SkyDatepickerCalendarInnerComponent } from './datepicker-calendar-inner.component';
3
- import { SkyDatepickerDate } from './datepicker-date';
3
+ import { SkyDayPickerContext } from './daypicker-context';
4
4
  import * as i0 from "@angular/core";
5
5
  /**
6
6
  * @internal
@@ -8,11 +8,11 @@ import * as i0 from "@angular/core";
8
8
  export declare class SkyYearPickerComponent implements OnInit {
9
9
  #private;
10
10
  datepicker: SkyDatepickerCalendarInnerComponent;
11
- rows: SkyDatepickerDate[][];
11
+ rows: SkyDayPickerContext[][];
12
12
  title: string;
13
13
  constructor(datepicker: SkyDatepickerCalendarInnerComponent);
14
14
  ngOnInit(): void;
15
15
  protected getStartingYear(year: number): number;
16
16
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyYearPickerComponent, never>;
17
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyYearPickerComponent, "sky-yearpicker", never, {}, {}, never, never, false, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyYearPickerComponent, "sky-yearpicker", never, {}, {}, never, never, true, never>;
18
18
  }
@@ -88,5 +88,5 @@ export declare class SkyDatepickerInputDirective implements OnInit, OnDestroy, A
88
88
  detectInputValueChange(): void;
89
89
  protected onFocusout(evt: FocusEvent): void;
90
90
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyDatepickerInputDirective, [null, null, null, null, null, { optional: true; }]>;
91
- static ɵdir: i0.ɵɵDirectiveDeclaration<SkyDatepickerInputDirective, "[skyDatepickerInput]", never, { "dateFormat": { "alias": "dateFormat"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "startAtDate": { "alias": "startAtDate"; "required": false; }; "skyDatepickerInput": { "alias": "skyDatepickerInput"; "required": false; }; "skyDatepickerNoValidate": { "alias": "skyDatepickerNoValidate"; "required": false; }; "startingDay": { "alias": "startingDay"; "required": false; }; "strict": { "alias": "strict"; "required": false; }; }, {}, never, never, false, never>;
91
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SkyDatepickerInputDirective, "[skyDatepickerInput]", never, { "dateFormat": { "alias": "dateFormat"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "startAtDate": { "alias": "startAtDate"; "required": false; }; "skyDatepickerInput": { "alias": "skyDatepickerInput"; "required": false; }; "skyDatepickerNoValidate": { "alias": "skyDatepickerNoValidate"; "required": false; }; "startingDay": { "alias": "startingDay"; "required": false; }; "strict": { "alias": "strict"; "required": false; }; }, {}, never, never, true, never>;
92
92
  }
@@ -2,8 +2,8 @@ import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy,
2
2
  import { SkyAffixService, SkyCoreAdapterService, SkyOverlayService, SkyStackingContext } from '@skyux/core';
3
3
  import { SkyInputBoxHostService } from '@skyux/forms';
4
4
  import { SkyThemeService } from '@skyux/theme';
5
- import { SkyDatepickerCalendarChange } from './datepicker-calendar-change';
6
- import { SkyDatepickerCalendarComponent } from './datepicker-calendar.component';
5
+ import { SkyDatepickerCalendarChange } from './calendar/datepicker-calendar-change';
6
+ import { SkyDatepickerCalendarComponent } from './calendar/datepicker-calendar.component';
7
7
  import { SkyDatepickerCustomDate } from './datepicker-custom-date';
8
8
  import * as i0 from "@angular/core";
9
9
  /**
@@ -69,11 +69,16 @@ export declare class SkyDatepickerComponent implements AfterViewInit, OnDestroy,
69
69
  onSelectedDateChange(value: Date): void;
70
70
  onTriggerButtonClick(): void;
71
71
  onCalendarDateRangeChange(event?: SkyDatepickerCalendarChange): void;
72
+ /**
73
+ * Whether the datepicker component contains the provided focus event target.
74
+ * @internal
75
+ */
76
+ containsTarget(target: EventTarget): boolean;
72
77
  /**
73
78
  * Gets the element reference of the picker overlay.
74
79
  * @internal
75
80
  */
76
81
  getPickerRef(): ElementRef | undefined;
77
82
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyDatepickerComponent, [null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }]>;
78
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyDatepickerComponent, "sky-datepicker", never, { "pickerClass": { "alias": "pickerClass"; "required": false; }; }, { "calendarDateRangeChange": "calendarDateRangeChange"; "dateFormatChange": "dateFormatChange"; "openChange": "openChange"; "calendarDateChange": "calendarDateChange"; }, never, ["*"], false, never>;
83
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyDatepickerComponent, "sky-datepicker", never, { "pickerClass": { "alias": "pickerClass"; "required": false; }; }, { "calendarDateRangeChange": "calendarDateRangeChange"; "dateFormatChange": "dateFormatChange"; "openChange": "openChange"; "calendarDateChange": "calendarDateChange"; }, never, ["*"], true, never>;
79
84
  }
@@ -1,27 +1,16 @@
1
1
  import * as i0 from "@angular/core";
2
- import * as i1 from "./datepicker-calendar.component";
3
- import * as i2 from "./datepicker-calendar-inner.component";
4
- import * as i3 from "./daypicker.component";
5
- import * as i4 from "./monthpicker.component";
6
- import * as i5 from "./yearpicker.component";
7
- import * as i6 from "./datepicker.component";
8
- import * as i7 from "./datepicker-input.directive";
9
- import * as i8 from "./datepicker-input-fuzzy.directive";
10
- import * as i9 from "./daypicker-cell.component";
11
- import * as i10 from "./daypicker-button.component";
12
- import * as i11 from "@angular/cdk/a11y";
13
- import * as i12 from "@angular/common";
14
- import * as i13 from "@angular/forms";
15
- import * as i14 from "@skyux/icon";
16
- import * as i15 from "./datepicker-calendar-label.pipe";
17
- import * as i16 from "../shared/sky-datetime-resources.module";
18
- import * as i17 from "@skyux/core";
19
- import * as i18 from "@skyux/theme";
20
- import * as i19 from "@skyux/popovers";
21
- import * as i20 from "@skyux/indicators";
22
- import * as i21 from "@skyux/forms";
2
+ import * as i1 from "./calendar/datepicker-calendar.component";
3
+ import * as i2 from "./calendar/datepicker-calendar-inner.component";
4
+ import * as i3 from "./datepicker.component";
5
+ import * as i4 from "./datepicker-input.directive";
6
+ import * as i5 from "./calendar/daypicker-button.component";
7
+ import * as i6 from "./calendar/daypicker-cell.component";
8
+ import * as i7 from "./calendar/daypicker.component";
9
+ import * as i8 from "./fuzzy/datepicker-input-fuzzy.directive";
10
+ import * as i9 from "./calendar/monthpicker.component";
11
+ import * as i10 from "./calendar/yearpicker.component";
23
12
  export declare class SkyDatepickerModule {
24
13
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyDatepickerModule, never>;
25
- static ɵmod: i0.ɵɵNgModuleDeclaration<SkyDatepickerModule, [typeof i1.SkyDatepickerCalendarComponent, typeof i2.SkyDatepickerCalendarInnerComponent, typeof i3.SkyDayPickerComponent, typeof i4.SkyMonthPickerComponent, typeof i5.SkyYearPickerComponent, typeof i6.SkyDatepickerComponent, typeof i7.SkyDatepickerInputDirective, typeof i8.SkyFuzzyDatepickerInputDirective, typeof i9.SkyDayPickerCellComponent, typeof i10.SkyDayPickerButtonComponent], [typeof i11.A11yModule, typeof i12.CommonModule, typeof i13.FormsModule, typeof i14.SkyIconModule, typeof i15.SkyDatepickerCalendarLabelPipe, typeof i16.SkyDatetimeResourcesModule, typeof i17.SkyAffixModule, typeof i18.SkyThemeModule, typeof i19.SkyPopoverModule, typeof i20.SkyWaitModule, typeof i21.SkyFormErrorModule], [typeof i1.SkyDatepickerCalendarComponent, typeof i6.SkyDatepickerComponent, typeof i7.SkyDatepickerInputDirective, typeof i8.SkyFuzzyDatepickerInputDirective]>;
14
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SkyDatepickerModule, never, [typeof i1.SkyDatepickerCalendarComponent, typeof i2.SkyDatepickerCalendarInnerComponent, typeof i3.SkyDatepickerComponent, typeof i4.SkyDatepickerInputDirective, typeof i5.SkyDayPickerButtonComponent, typeof i6.SkyDayPickerCellComponent, typeof i7.SkyDayPickerComponent, typeof i8.SkyFuzzyDatepickerInputDirective, typeof i9.SkyMonthPickerComponent, typeof i10.SkyYearPickerComponent], [typeof i1.SkyDatepickerCalendarComponent, typeof i3.SkyDatepickerComponent, typeof i4.SkyDatepickerInputDirective, typeof i8.SkyFuzzyDatepickerInputDirective]>;
26
15
  static ɵinj: i0.ɵɵInjectorDeclaration<SkyDatepickerModule>;
27
16
  }
@@ -1,8 +1,8 @@
1
1
  import { AfterContentInit, AfterViewInit, ChangeDetectorRef, ElementRef, OnDestroy, OnInit, Renderer2 } from '@angular/core';
2
2
  import { AbstractControl, ControlValueAccessor, ValidationErrors, Validator } from '@angular/forms';
3
3
  import { SkyAppLocaleProvider } from '@skyux/i18n';
4
- import { SkyDatepickerConfigService } from './datepicker-config.service';
5
- import { SkyDatepickerComponent } from './datepicker.component';
4
+ import { SkyDatepickerConfigService } from '../datepicker-config.service';
5
+ import { SkyDatepickerComponent } from '../datepicker.component';
6
6
  import { SkyFuzzyDate } from './fuzzy-date';
7
7
  import { SkyFuzzyDateService } from './fuzzy-date.service';
8
8
  import * as i0 from "@angular/core";
@@ -93,5 +93,5 @@ export declare class SkyFuzzyDatepickerInputDirective implements OnInit, OnDestr
93
93
  detectInputValueChange(): void;
94
94
  protected onFocusout(evt: FocusEvent): void;
95
95
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyFuzzyDatepickerInputDirective, [null, null, null, null, null, null, { optional: true; }]>;
96
- static ɵdir: i0.ɵɵDirectiveDeclaration<SkyFuzzyDatepickerInputDirective, "[skyFuzzyDatepickerInput]", never, { "dateFormat": { "alias": "dateFormat"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "futureDisabled": { "alias": "futureDisabled"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "startAtDate": { "alias": "startAtDate"; "required": false; }; "skyDatepickerNoValidate": { "alias": "skyDatepickerNoValidate"; "required": false; }; "startingDay": { "alias": "startingDay"; "required": false; }; "yearRequired": { "alias": "yearRequired"; "required": false; }; }, {}, never, never, false, never>;
96
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SkyFuzzyDatepickerInputDirective, "[skyFuzzyDatepickerInput]", never, { "dateFormat": { "alias": "dateFormat"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "futureDisabled": { "alias": "futureDisabled"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "startAtDate": { "alias": "startAtDate"; "required": false; }; "skyDatepickerNoValidate": { "alias": "skyDatepickerNoValidate"; "required": false; }; "startingDay": { "alias": "startingDay"; "required": false; }; "yearRequired": { "alias": "yearRequired"; "required": false; }; }, {}, never, never, true, never>;
97
97
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/datetime",
3
- "version": "11.27.0",
3
+ "version": "11.29.0",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "keywords": [
6
6
  "blackbaud",
@@ -41,14 +41,14 @@
41
41
  "@angular/core": "^18.2.13",
42
42
  "@angular/forms": "^18.2.13",
43
43
  "@angular/platform-browser": "^18.2.13",
44
- "@skyux-sdk/testing": "11.27.0",
45
- "@skyux/core": "11.27.0",
46
- "@skyux/forms": "11.27.0",
47
- "@skyux/i18n": "11.27.0",
48
- "@skyux/icon": "11.27.0",
49
- "@skyux/indicators": "11.27.0",
50
- "@skyux/popovers": "11.27.0",
51
- "@skyux/theme": "11.27.0",
44
+ "@skyux-sdk/testing": "11.29.0",
45
+ "@skyux/core": "11.29.0",
46
+ "@skyux/forms": "11.29.0",
47
+ "@skyux/i18n": "11.29.0",
48
+ "@skyux/icon": "11.29.0",
49
+ "@skyux/indicators": "11.29.0",
50
+ "@skyux/popovers": "11.29.0",
51
+ "@skyux/theme": "11.29.0",
52
52
  "moment": "^2.30.1"
53
53
  },
54
54
  "dependencies": {
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1jYWxlbmRhci1jaGFuZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZGF0ZXRpbWUvc3JjL2xpYi9tb2R1bGVzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1jYWxlbmRhci1jaGFuZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2t5RGF0ZXBpY2tlckN1c3RvbURhdGUgfSBmcm9tICcuL2RhdGVwaWNrZXItY3VzdG9tLWRhdGUnO1xuXG4vKipcbiAqIFNwZWNpZmllcyBjaGFuZ2VzIGluIHRoZSBkYXRlcGlja2VyIGNhbGVuZGFyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNreURhdGVwaWNrZXJDYWxlbmRhckNoYW5nZSB7XG4gIC8qKlxuICAgKiBUaGUgZW5kIGRhdGUuXG4gICAqL1xuICBlbmREYXRlOiBEYXRlO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhcnQgZGF0ZS5cbiAgICovXG4gIHN0YXJ0RGF0ZTogRGF0ZTtcblxuICAvKipcbiAgICogVGhlIG9ic2VydmFibGUgdGhhdCBhbGxvd3MgdGhlIGNvbnN1bWVyIHRvIHB1c2ggY3VzdG9tIGRhdGVzIGJhY2sgdG8gdGhlIGNhbGVuZGFyXG4gICAqIHdoZW4gdGhlIGBTa3lDYWxlbmRhckRhdGVSYW5nZUNoYW5nZUV2ZW50YCBldmVudCBmaXJlcy4gVGhpcyBpcyB1c2VmdWxcbiAgICogZm9yIGRpc3BsYXlpbmcga2V5IGRhdGVzIG9yIGRpc2FibGVkIGRhdGVzIGVhY2ggdGltZSB0aGUgY2FsZW5kYXIgY2hhbmdlcy4gSWYgZGlzYWJsZWQgZGF0ZXNcbiAgICogYXJlIHByb3ZpZGVkLCBTS1kgVVggd2lsbCBwcmV2ZW50IHRoZSB1c2VyIGZyb20gc2VsZWN0aW5nIHRoZSBkYXRlIGZyb20gdGhlIGNhbGVuZGFyLlxuICAgKiBIb3dldmVyLCBjb25zdW1lcnMgd2lsbCBzdGlsbCBuZWVkIHRvIGFkZCBhIGN1c3RvbSB2YWxpZGF0b3IgdG8gcHJldmVudCB1c2VycyBmcm9tIGVudGVyaW5nXG4gICAqIGRpc2FibGVkIGRhdGVzIGluIHRoZSB0ZXh0IGlucHV0LlxuICAgKi9cbiAgY3VzdG9tRGF0ZXM/OiBPYnNlcnZhYmxlPFNreURhdGVwaWNrZXJDdXN0b21EYXRlW10+O1xufVxuIl19