@ardium-ui/ui 5.0.0-alpha.37 → 5.0.0-alpha.39

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 (80) hide show
  1. package/fesm2022/ardium-ui-ui.mjs +3033 -1625
  2. package/fesm2022/ardium-ui-ui.mjs.map +1 -1
  3. package/lib/_internal/utils/date.utils.d.ts +16 -0
  4. package/lib/calendar/abstract-calendar.d.ts +127 -0
  5. package/lib/calendar/calendar.component.d.ts +8 -97
  6. package/lib/calendar/calendar.defaults.d.ts +12 -1
  7. package/lib/calendar/calendar.internal-directives.d.ts +24 -8
  8. package/lib/calendar/calendar.internal-types.d.ts +1 -0
  9. package/lib/calendar/calendar.module.d.ts +4 -9
  10. package/lib/calendar/calendar.types.d.ts +19 -5
  11. package/lib/calendar/index.d.ts +3 -0
  12. package/lib/calendar/range-calendar.component.d.ts +16 -0
  13. package/lib/calendar/range-calendar.directives.d.ts +51 -0
  14. package/lib/calendar/range-calendar.module.d.ts +10 -0
  15. package/lib/calendar/views/calendar-views.module.d.ts +13 -0
  16. package/lib/calendar/views/days-view/days-view.component.d.ts +20 -2
  17. package/lib/calendar/views/days-view/days-view.helpers.d.ts +2 -2
  18. package/lib/calendar/views/months-view/months-view.component.d.ts +15 -3
  19. package/lib/calendar/views/years-view/years-view.component.d.ts +15 -3
  20. package/lib/inputs/date-input/abstract-date-input.d.ts +112 -0
  21. package/lib/inputs/date-input/date-input.component.d.ts +19 -82
  22. package/lib/inputs/date-input/date-input.defaults.d.ts +21 -3
  23. package/lib/inputs/date-input/{date-input.directive.d.ts → date-input.directives.d.ts} +2 -2
  24. package/lib/inputs/date-input/date-input.module.d.ts +5 -4
  25. package/lib/inputs/date-input/date-input.serializers.d.ts +4 -2
  26. package/lib/inputs/date-input/date-input.types.d.ts +5 -4
  27. package/lib/inputs/date-input/date-range-input.component.d.ts +29 -0
  28. package/lib/inputs/date-input/date-range-input.directives.d.ts +82 -0
  29. package/lib/inputs/date-input/date-range-input.module.d.ts +17 -0
  30. package/lib/inputs/date-input/index.d.ts +7 -1
  31. package/lib/inputs/date-input/multipage-date-range-input.component.d.ts +44 -0
  32. package/lib/inputs/date-input/multipage-date-range-input.directives.d.ts +82 -0
  33. package/lib/inputs/date-input/multipage-date-range-input.module.d.ts +17 -0
  34. package/package.json +1 -1
  35. package/prebuilt-themes/default/buttons/button.css +4 -4
  36. package/prebuilt-themes/default/buttons/fab.css +4 -4
  37. package/prebuilt-themes/default/buttons/icon-button.css +4 -4
  38. package/prebuilt-themes/default/calendar.css +134 -54
  39. package/prebuilt-themes/default/calendar.css.map +1 -1
  40. package/prebuilt-themes/default/checkbox-list.css +4 -4
  41. package/prebuilt-themes/default/checkbox.css +4 -4
  42. package/prebuilt-themes/default/chips.css +8 -8
  43. package/prebuilt-themes/default/inputs/autocomplete-input.css +71 -24
  44. package/prebuilt-themes/default/inputs/autocomplete-input.css.map +1 -1
  45. package/prebuilt-themes/default/inputs/color-input.css +4 -43
  46. package/prebuilt-themes/default/inputs/color-input.css.map +1 -1
  47. package/prebuilt-themes/default/inputs/date-input.css +78 -20
  48. package/prebuilt-themes/default/inputs/date-input.css.map +1 -1
  49. package/prebuilt-themes/default/inputs/file-input.css +111 -61
  50. package/prebuilt-themes/default/inputs/file-input.css.map +1 -1
  51. package/prebuilt-themes/default/inputs/hex-input.css +44 -17
  52. package/prebuilt-themes/default/inputs/hex-input.css.map +1 -1
  53. package/prebuilt-themes/default/inputs/input.css +38 -13
  54. package/prebuilt-themes/default/inputs/input.css.map +1 -1
  55. package/prebuilt-themes/default/inputs/number-input.css +28 -21
  56. package/prebuilt-themes/default/inputs/number-input.css.map +1 -1
  57. package/prebuilt-themes/default/inputs/password-input.css +66 -21
  58. package/prebuilt-themes/default/inputs/password-input.css.map +1 -1
  59. package/prebuilt-themes/default/inputs/search-bar.css +40 -15
  60. package/prebuilt-themes/default/inputs/search-bar.css.map +1 -1
  61. package/prebuilt-themes/default/radio.css +4 -4
  62. package/prebuilt-themes/default/segment.css +4 -4
  63. package/prebuilt-themes/default/select.css +4 -4
  64. package/prebuilt-themes/default/slide-toggle.css +4 -4
  65. package/prebuilt-themes/default/slider.css +4 -4
  66. package/prebuilt-themes/default/stars.css +4 -4
  67. package/prebuilt-themes/default/statebox.css +4 -4
  68. package/prebuilt-themes/default/tabber.css +4 -4
  69. package/themes/default/_mixins.scss +4 -4
  70. package/themes/default/calendar.scss +146 -55
  71. package/themes/default/inputs/_shared.scss +29 -8
  72. package/themes/default/inputs/autocomplete-input.scss +68 -14
  73. package/themes/default/inputs/color-input.scss +1 -1
  74. package/themes/default/inputs/date-input.scss +54 -5
  75. package/themes/default/inputs/file-input.scss +83 -23
  76. package/themes/default/inputs/hex-input.scss +42 -7
  77. package/themes/default/inputs/input.scss +37 -3
  78. package/themes/default/inputs/number-input.scss +30 -14
  79. package/themes/default/inputs/password-input.scss +70 -15
  80. package/themes/default/inputs/search-bar.scss +39 -5
@@ -1,5 +1,5 @@
1
1
  import { AfterViewInit, ElementRef, TemplateRef } from '@angular/core';
2
- import { CalendarMonthContext, CalendarMonthsViewHeaderContext } from '../../calendar.types';
2
+ import { ArdMultiCalendarLocation, CalendarMonthContext, CalendarMonthsViewHeaderContext } from '../../calendar.types';
3
3
  import { ComponentColor } from './../../../types/colors.types';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class MonthsViewComponent implements AfterViewInit {
@@ -14,8 +14,12 @@ export declare class MonthsViewComponent implements AfterViewInit {
14
14
  readonly activeYear: import("@angular/core").InputSignal<number>;
15
15
  readonly activeMonth: import("@angular/core").InputSignal<number>;
16
16
  readonly selectedDate: import("@angular/core").InputSignal<Date | null>;
17
+ readonly selectedDateEnd: import("@angular/core").InputSignal<Date | null>;
18
+ readonly rangeSelectionMode: import("@angular/core").InputSignal<boolean>;
19
+ readonly UTC: import("@angular/core").InputSignal<boolean>;
17
20
  readonly min: import("@angular/core").InputSignal<Date | null>;
18
21
  readonly max: import("@angular/core").InputSignal<Date | null>;
22
+ readonly multiCalendarLocation: import("@angular/core").InputSignal<ArdMultiCalendarLocation>;
19
23
  readonly monthsArray: import("@angular/core").Signal<import("../../calendar.internal-types").CalendarArrayItem[]>;
20
24
  readonly currentAriaLabel: import("@angular/core").Signal<string>;
21
25
  readonly triggerOpenYearsView: import("@angular/core").OutputEmitterRef<void>;
@@ -32,6 +36,7 @@ export declare class MonthsViewComponent implements AfterViewInit {
32
36
  readonly triggerHighlightSameMonthPreviousPage: import("@angular/core").OutputEmitterRef<boolean>;
33
37
  readonly triggerHighlightSameMonthNextPage: import("@angular/core").OutputEmitterRef<boolean>;
34
38
  readonly highlightedMonth: import("@angular/core").InputSignal<number | null>;
39
+ readonly highlightedMonthDate: import("@angular/core").Signal<Date | null>;
35
40
  onCalendarMonthMouseover(month: number): void;
36
41
  onCalendarMonthClick(month: number): void;
37
42
  onMonthGridFocus(): void;
@@ -50,12 +55,19 @@ export declare class MonthsViewComponent implements AfterViewInit {
50
55
  private _onPageDownPress;
51
56
  private _onPageUpPress;
52
57
  isMonthToday(month: number): boolean;
53
- isMonthSelected(month: number | Date): boolean;
58
+ isMonthSelected(month: number | Date | null): boolean;
59
+ isMonthSelectedStart(month: number | Date | null): boolean;
60
+ isMonthSelectedEnd(month: number | Date | null): boolean;
61
+ isMonthBetweenSelectedRange(month: number | Date | null): boolean;
62
+ isMonthBetweenSelectedHighlighted(month: number | Date | null): boolean;
63
+ private _isMonthBetweenDates;
54
64
  isYearOutOfRange(year: number): number;
55
65
  readonly monthsViewHeaderTemplate: import("@angular/core").InputSignal<TemplateRef<CalendarMonthsViewHeaderContext> | undefined>;
56
66
  readonly monthTemplate: import("@angular/core").InputSignal<TemplateRef<CalendarMonthContext> | undefined>;
67
+ readonly monthsViewHeaderDateFormat: import("@angular/core").InputSignal<string>;
68
+ readonly monthDateFormat: import("@angular/core").InputSignal<string>;
57
69
  readonly monthsViewHeaderContext: import("@angular/core").Signal<CalendarMonthsViewHeaderContext>;
58
70
  readonly monthContext: import("@angular/core").Signal<(month: number) => CalendarMonthContext>;
59
71
  static ɵfac: i0.ɵɵFactoryDeclaration<MonthsViewComponent, never>;
60
- static ɵcmp: i0.ɵɵComponentDeclaration<MonthsViewComponent, "ard-months-view", never, { "tabIndex": { "alias": "tabIndex"; "required": true; "isSignal": true; }; "readOnly": { "alias": "readOnly"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": true; "isSignal": true; }; "autoFocus": { "alias": "autoFocus"; "required": true; "isSignal": true; }; "_isUsingKeyboard": { "alias": "_isUsingKeyboard"; "required": true; "isSignal": true; }; "color": { "alias": "color"; "required": true; "isSignal": true; }; "activeYear": { "alias": "activeYear"; "required": true; "isSignal": true; }; "activeMonth": { "alias": "activeMonth"; "required": true; "isSignal": true; }; "selectedDate": { "alias": "selectedDate"; "required": true; "isSignal": true; }; "min": { "alias": "min"; "required": true; "isSignal": true; }; "max": { "alias": "max"; "required": true; "isSignal": true; }; "highlightedMonth": { "alias": "highlightedMonth"; "required": true; "isSignal": true; }; "monthsViewHeaderTemplate": { "alias": "monthsViewHeaderTemplate"; "required": true; "isSignal": true; }; "monthTemplate": { "alias": "monthTemplate"; "required": true; "isSignal": true; }; }, { "triggerOpenYearsView": "triggerOpenYearsView"; "triggerOpenDaysView": "triggerOpenDaysView"; "focusEvent": "focus"; "blurEvent": "blur"; "triggerSelectMonth": "triggerSelectMonth"; "triggeChangeYear": "triggeChangeYear"; "triggerHighlightMonth": "triggerHighlightMonth"; "triggerHighlightNextMonth": "triggerHighlightNextMonth"; "triggerHighlightPreviousMonth": "triggerHighlightPreviousMonth"; "triggerHighlightFirstMonth": "triggerHighlightFirstMonth"; "triggerHighlightLastMonth": "triggerHighlightLastMonth"; "triggerHighlightSameMonthPreviousPage": "triggerHighlightSameMonthPreviousPage"; "triggerHighlightSameMonthNextPage": "triggerHighlightSameMonthNextPage"; }, never, never, false, never>;
72
+ static ɵcmp: i0.ɵɵComponentDeclaration<MonthsViewComponent, "ard-months-view", never, { "tabIndex": { "alias": "tabIndex"; "required": true; "isSignal": true; }; "readOnly": { "alias": "readOnly"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": true; "isSignal": true; }; "autoFocus": { "alias": "autoFocus"; "required": true; "isSignal": true; }; "_isUsingKeyboard": { "alias": "_isUsingKeyboard"; "required": true; "isSignal": true; }; "color": { "alias": "color"; "required": true; "isSignal": true; }; "activeYear": { "alias": "activeYear"; "required": true; "isSignal": true; }; "activeMonth": { "alias": "activeMonth"; "required": true; "isSignal": true; }; "selectedDate": { "alias": "selectedDate"; "required": true; "isSignal": true; }; "selectedDateEnd": { "alias": "selectedDateEnd"; "required": true; "isSignal": true; }; "rangeSelectionMode": { "alias": "rangeSelectionMode"; "required": true; "isSignal": true; }; "UTC": { "alias": "UTC"; "required": true; "isSignal": true; }; "min": { "alias": "min"; "required": true; "isSignal": true; }; "max": { "alias": "max"; "required": true; "isSignal": true; }; "multiCalendarLocation": { "alias": "multiCalendarLocation"; "required": true; "isSignal": true; }; "highlightedMonth": { "alias": "highlightedMonth"; "required": true; "isSignal": true; }; "monthsViewHeaderTemplate": { "alias": "monthsViewHeaderTemplate"; "required": true; "isSignal": true; }; "monthTemplate": { "alias": "monthTemplate"; "required": true; "isSignal": true; }; "monthsViewHeaderDateFormat": { "alias": "monthsViewHeaderDateFormat"; "required": true; "isSignal": true; }; "monthDateFormat": { "alias": "monthDateFormat"; "required": true; "isSignal": true; }; }, { "triggerOpenYearsView": "triggerOpenYearsView"; "triggerOpenDaysView": "triggerOpenDaysView"; "focusEvent": "focus"; "blurEvent": "blur"; "triggerSelectMonth": "triggerSelectMonth"; "triggeChangeYear": "triggeChangeYear"; "triggerHighlightMonth": "triggerHighlightMonth"; "triggerHighlightNextMonth": "triggerHighlightNextMonth"; "triggerHighlightPreviousMonth": "triggerHighlightPreviousMonth"; "triggerHighlightFirstMonth": "triggerHighlightFirstMonth"; "triggerHighlightLastMonth": "triggerHighlightLastMonth"; "triggerHighlightSameMonthPreviousPage": "triggerHighlightSameMonthPreviousPage"; "triggerHighlightSameMonthNextPage": "triggerHighlightSameMonthNextPage"; }, never, never, false, never>;
61
73
  }
@@ -1,5 +1,5 @@
1
1
  import { AfterViewInit, ElementRef, TemplateRef } from '@angular/core';
2
- import { CalendarYearContext, CalendarYearsViewHeaderContext } from '../../calendar.types';
2
+ import { ArdMultiCalendarLocation, CalendarYearContext, CalendarYearsViewHeaderContext } from '../../calendar.types';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class YearsViewComponent implements AfterViewInit {
5
5
  readonly tabIndex: import("@angular/core").InputSignal<number>;
@@ -10,8 +10,12 @@ export declare class YearsViewComponent implements AfterViewInit {
10
10
  onMouseMove(): void;
11
11
  ngAfterViewInit(): void;
12
12
  readonly selectedDate: import("@angular/core").InputSignal<Date | null>;
13
+ readonly selectedDateEnd: import("@angular/core").InputSignal<Date | null>;
14
+ readonly rangeSelectionMode: import("@angular/core").InputSignal<boolean>;
15
+ readonly UTC: import("@angular/core").InputSignal<boolean>;
13
16
  readonly min: import("@angular/core").InputSignal<Date | null>;
14
17
  readonly max: import("@angular/core").InputSignal<Date | null>;
18
+ readonly multiCalendarLocation: import("@angular/core").InputSignal<ArdMultiCalendarLocation>;
15
19
  readonly currentYearRangeStart: import("@angular/core").InputSignal<number>;
16
20
  readonly yearsArray: import("@angular/core").Signal<import("../../calendar.internal-types").CalendarArrayItem[]>;
17
21
  readonly currentAriaLabel: import("@angular/core").Signal<string>;
@@ -29,13 +33,19 @@ export declare class YearsViewComponent implements AfterViewInit {
29
33
  readonly triggerHighlightSameYearPreviousPage: import("@angular/core").OutputEmitterRef<boolean>;
30
34
  readonly triggerHighlightSameYearNextPage: import("@angular/core").OutputEmitterRef<boolean>;
31
35
  readonly highlightedYear: import("@angular/core").InputSignal<number | null>;
36
+ readonly highlightedYearDate: import("@angular/core").Signal<Date | null>;
32
37
  onCalendarYearMouseover(year: number): void;
33
38
  onCalendarYearClick(year: number): void;
34
39
  onYearGridFocus(): void;
35
40
  onYearGridBlur(): void;
36
41
  onYearGridClick(): void;
37
42
  isYearToday(year: number): boolean;
38
- isYearSelected(year: number | Date): boolean;
43
+ isYearSelected(year: number | Date | null): boolean;
44
+ isYearSelectedStart(year: number | Date | null): boolean;
45
+ isYearSelectedEnd(year: number | Date | null): boolean;
46
+ isYearBetweenSelectedRange(year: number | Date | null): boolean;
47
+ isYearBetweenSelectedHighlighted(year: number | Date | null): boolean;
48
+ private _isYearBetweenDates;
39
49
  isYearOutOfRange(year: number): number;
40
50
  readonly focusableElement: import("@angular/core").Signal<ElementRef<HTMLElement>>;
41
51
  focus(): void;
@@ -51,8 +61,10 @@ export declare class YearsViewComponent implements AfterViewInit {
51
61
  private _onPageDownPress;
52
62
  readonly yearsViewHeaderTemplate: import("@angular/core").InputSignal<TemplateRef<CalendarYearsViewHeaderContext> | undefined>;
53
63
  readonly yearTemplate: import("@angular/core").InputSignal<TemplateRef<CalendarYearContext> | undefined>;
64
+ readonly yearsViewHeaderDateFormat: import("@angular/core").InputSignal<string>;
65
+ readonly yearDateFormat: import("@angular/core").InputSignal<string>;
54
66
  readonly yearsViewHeaderContext: import("@angular/core").Signal<CalendarYearsViewHeaderContext>;
55
67
  readonly yearContext: import("@angular/core").Signal<(year: number) => CalendarYearContext>;
56
68
  static ɵfac: i0.ɵɵFactoryDeclaration<YearsViewComponent, never>;
57
- static ɵcmp: i0.ɵɵComponentDeclaration<YearsViewComponent, "ard-years-view", never, { "tabIndex": { "alias": "tabIndex"; "required": true; "isSignal": true; }; "readOnly": { "alias": "readOnly"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": true; "isSignal": true; }; "autoFocus": { "alias": "autoFocus"; "required": true; "isSignal": true; }; "_isUsingKeyboard": { "alias": "_isUsingKeyboard"; "required": true; "isSignal": true; }; "selectedDate": { "alias": "selectedDate"; "required": true; "isSignal": true; }; "min": { "alias": "min"; "required": true; "isSignal": true; }; "max": { "alias": "max"; "required": true; "isSignal": true; }; "currentYearRangeStart": { "alias": "currentYearRangeStart"; "required": true; "isSignal": true; }; "highlightedYear": { "alias": "highlightedYear"; "required": true; "isSignal": true; }; "yearsViewHeaderTemplate": { "alias": "yearsViewHeaderTemplate"; "required": true; "isSignal": true; }; "yearTemplate": { "alias": "yearTemplate"; "required": true; "isSignal": true; }; }, { "triggerOpenMonthsView": "triggerOpenMonthsView"; "triggerOpenDaysView": "triggerOpenDaysView"; "focusEvent": "focus"; "blurEvent": "blur"; "triggerSelectYear": "triggerSelectYear"; "triggerChangeYearsViewPage": "triggerChangeYearsViewPage"; "triggerHighlightYear": "triggerHighlightYear"; "triggerHighlightNextYear": "triggerHighlightNextYear"; "triggerHighlightPreviousYear": "triggerHighlightPreviousYear"; "triggerHighlightFirstYear": "triggerHighlightFirstYear"; "triggerHighlightLastYear": "triggerHighlightLastYear"; "triggerHighlightSameYearPreviousPage": "triggerHighlightSameYearPreviousPage"; "triggerHighlightSameYearNextPage": "triggerHighlightSameYearNextPage"; }, never, never, false, never>;
69
+ static ɵcmp: i0.ɵɵComponentDeclaration<YearsViewComponent, "ard-years-view", never, { "tabIndex": { "alias": "tabIndex"; "required": true; "isSignal": true; }; "readOnly": { "alias": "readOnly"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": true; "isSignal": true; }; "autoFocus": { "alias": "autoFocus"; "required": true; "isSignal": true; }; "_isUsingKeyboard": { "alias": "_isUsingKeyboard"; "required": true; "isSignal": true; }; "selectedDate": { "alias": "selectedDate"; "required": true; "isSignal": true; }; "selectedDateEnd": { "alias": "selectedDateEnd"; "required": true; "isSignal": true; }; "rangeSelectionMode": { "alias": "rangeSelectionMode"; "required": true; "isSignal": true; }; "UTC": { "alias": "UTC"; "required": true; "isSignal": true; }; "min": { "alias": "min"; "required": true; "isSignal": true; }; "max": { "alias": "max"; "required": true; "isSignal": true; }; "multiCalendarLocation": { "alias": "multiCalendarLocation"; "required": true; "isSignal": true; }; "currentYearRangeStart": { "alias": "currentYearRangeStart"; "required": true; "isSignal": true; }; "highlightedYear": { "alias": "highlightedYear"; "required": true; "isSignal": true; }; "yearsViewHeaderTemplate": { "alias": "yearsViewHeaderTemplate"; "required": true; "isSignal": true; }; "yearTemplate": { "alias": "yearTemplate"; "required": true; "isSignal": true; }; "yearsViewHeaderDateFormat": { "alias": "yearsViewHeaderDateFormat"; "required": true; "isSignal": true; }; "yearDateFormat": { "alias": "yearDateFormat"; "required": true; "isSignal": true; }; }, { "triggerOpenMonthsView": "triggerOpenMonthsView"; "triggerOpenDaysView": "triggerOpenDaysView"; "focusEvent": "focus"; "blurEvent": "blur"; "triggerSelectYear": "triggerSelectYear"; "triggerChangeYearsViewPage": "triggerChangeYearsViewPage"; "triggerHighlightYear": "triggerHighlightYear"; "triggerHighlightNextYear": "triggerHighlightNextYear"; "triggerHighlightPreviousYear": "triggerHighlightPreviousYear"; "triggerHighlightFirstYear": "triggerHighlightFirstYear"; "triggerHighlightLastYear": "triggerHighlightLastYear"; "triggerHighlightSameYearPreviousPage": "triggerHighlightSameYearPreviousPage"; "triggerHighlightSameYearNextPage": "triggerHighlightSameYearNextPage"; }, never, never, false, never>;
58
70
  }
@@ -0,0 +1,112 @@
1
+ import { ElementRef, InputSignal, OnDestroy, Signal, SimpleChanges, TemplateRef } from '@angular/core';
2
+ import { ControlValueAccessor } from '@angular/forms';
3
+ import { BooleanLike, NumberLike } from '@ardium-ui/devkit';
4
+ import { _FormFieldComponentBase } from '../../_internal/form-field-component';
5
+ import { ArdCalendarDaysViewHeaderTemplateDirective, ArdCalendarDayTemplateDirective, ArdCalendarFilterFn, ArdCalendarFloatingMonthTemplateDirective, ArdCalendarMonthsViewHeaderTemplateDirective, ArdCalendarMonthTemplateDirective, ArdCalendarView, ArdCalendarWeekdayTemplateDirective, ArdCalendarYearsViewHeaderTemplateDirective, ArdCalendarYearTemplateDirective } from '../../calendar';
6
+ import { ArdiumDropdownPanelComponent, DropdownPanelAppearance, DropdownPanelVariant } from '../../dropdown-panel';
7
+ import { ComponentColor } from '../../types/colors.types';
8
+ import { FormElementAppearance, FormElementVariant } from '../../types/theming.types';
9
+ import { Nullable } from '../../types/utility.types';
10
+ import { ArdDateInputDefaults } from './date-input.defaults';
11
+ import { ArdDateInputAcceptButtonsTemplateDirective, ArdDateInputCalendarIconTemplateDirective, ArdDateInputPrefixTemplateDirective, ArdDateInputSuffixTemplateDirective, ArdDateInputValueTemplateDirective } from './date-input.directives';
12
+ import { ArdDateInputAcceptButtonsContext, ArdDateInputSerializeFn, ArdDateInputValueContext } from './date-input.types';
13
+ import * as i0 from "@angular/core";
14
+ export declare abstract class _AbstractDateInput<T> extends _FormFieldComponentBase implements OnDestroy, ControlValueAccessor {
15
+ abstract readonly componentId: string;
16
+ abstract readonly componentName: string;
17
+ abstract readonly isRangeSelector: boolean;
18
+ protected readonly _DEFAULTS: ArdDateInputDefaults;
19
+ constructor(defaults: ArdDateInputDefaults);
20
+ private readonly elementRef;
21
+ private readonly overlay;
22
+ private readonly viewContainerRef;
23
+ private readonly scrollStrategyOpts;
24
+ readonly placeholder: InputSignal<string>;
25
+ readonly calendarDisabled: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
26
+ readonly calendarHidden: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
27
+ abstract readonly serializeFn: InputSignal<ArdDateInputSerializeFn<T>>;
28
+ readonly value: import("@angular/core").ModelSignal<T | null>;
29
+ abstract writeValue(value: T | null): void;
30
+ protected _emitChange(): void;
31
+ protected _onTouched(): void;
32
+ readonly isOpen: import("@angular/core").WritableSignal<boolean>;
33
+ readonly isOpenChange: import("@angular/core").OutputEmitterRef<boolean>;
34
+ readonly openEvent: import("@angular/core").OutputEmitterRef<void>;
35
+ readonly closeEvent: import("@angular/core").OutputEmitterRef<void>;
36
+ abstract readonly shouldDisplayPlaceholder: Signal<boolean>;
37
+ abstract readonly shouldDisplayValue: Signal<boolean>;
38
+ abstract readonly shouldDisplayDateInput: Signal<boolean>;
39
+ readonly appearance: InputSignal<FormElementAppearance>;
40
+ readonly variant: InputSignal<FormElementVariant>;
41
+ readonly color: InputSignal<ComponentColor>;
42
+ readonly compact: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
43
+ readonly ngClasses: Signal<string>;
44
+ readonly dropdownAppearance: InputSignal<Nullable<DropdownPanelAppearance>>;
45
+ readonly dropdownAppearanceOrDefault: Signal<DropdownPanelAppearance>;
46
+ readonly dropdownVariant: InputSignal<Nullable<DropdownPanelVariant>>;
47
+ readonly dropdownVariantOrDefault: Signal<DropdownPanelVariant>;
48
+ readonly activeView: import("@angular/core").ModelSignal<ArdCalendarView>;
49
+ readonly startView: InputSignal<Nullable<ArdCalendarView>>;
50
+ readonly activeYear: import("@angular/core").ModelSignal<number>;
51
+ readonly activeMonth: import("@angular/core").ModelSignal<number>;
52
+ readonly firstWeekday: import("@angular/core").InputSignalWithTransform<number, NumberLike>;
53
+ readonly multipleYearPageChangeModifier: import("@angular/core").InputSignalWithTransform<number, NumberLike>;
54
+ readonly min: import("@angular/core").InputSignalWithTransform<Date | null, any>;
55
+ readonly max: import("@angular/core").InputSignalWithTransform<Date | null, any>;
56
+ readonly UTC: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
57
+ readonly _UTCAfterInit: import("@angular/core").WritableSignal<boolean>;
58
+ readonly filter: InputSignal<ArdCalendarFilterFn | null>;
59
+ readonly hideFloatingMonth: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
60
+ ngOnChanges(changes: SimpleChanges): void;
61
+ readonly yearSelect: import("@angular/core").OutputEmitterRef<number>;
62
+ readonly monthSelect: import("@angular/core").OutputEmitterRef<number>;
63
+ readonly useAcceptButtonToSelect: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
64
+ private _valueToAccept;
65
+ onCalendarSelectedChange(value: T | null): void;
66
+ private _acceptSelectedDate;
67
+ private _cancelCalendarSelection;
68
+ protected abstract _isFullValue(value: T | null): boolean;
69
+ onAcceptButtonClick(): void;
70
+ onCancelButtonClick(): void;
71
+ readonly dropdownHost: Signal<ElementRef<HTMLElement>>;
72
+ readonly dropdownTemplate: Signal<TemplateRef<any>>;
73
+ readonly dropdownPanel: Signal<ArdiumDropdownPanelComponent>;
74
+ private dropdownOverlay?;
75
+ private _createOverlay;
76
+ private _destroyOverlay;
77
+ onGeneralClick(event: MouseEvent): void;
78
+ onOutsideClick(event: MouseEvent): void;
79
+ onCalendarButtonClick(event: MouseEvent): void;
80
+ toggle(): void;
81
+ open(): void;
82
+ close(): void;
83
+ readonly valueTemplate: Signal<ArdDateInputValueTemplateDirective | undefined>;
84
+ readonly calendarIconTemplate: Signal<ArdDateInputCalendarIconTemplateDirective | undefined>;
85
+ readonly acceptButtonsTemplate: Signal<ArdDateInputAcceptButtonsTemplateDirective | undefined>;
86
+ readonly prefixTemplate: Signal<ArdDateInputPrefixTemplateDirective | undefined>;
87
+ readonly suffixTemplate: Signal<ArdDateInputSuffixTemplateDirective | undefined>;
88
+ abstract readonly calendarYearsViewHeaderTemplate: Signal<ArdCalendarYearsViewHeaderTemplateDirective | undefined>;
89
+ abstract readonly calendarMonthsViewHeaderTemplate: Signal<ArdCalendarMonthsViewHeaderTemplateDirective | undefined>;
90
+ abstract readonly calendarDaysViewHeaderTemplate: Signal<ArdCalendarDaysViewHeaderTemplateDirective | undefined>;
91
+ abstract readonly calendarWeekdayTemplate: Signal<ArdCalendarWeekdayTemplateDirective | undefined>;
92
+ abstract readonly calendarFloatingMonthTemplate: Signal<ArdCalendarFloatingMonthTemplateDirective | undefined>;
93
+ abstract readonly calendarYearTemplate: Signal<ArdCalendarYearTemplateDirective | undefined>;
94
+ abstract readonly calendarMonthTemplate: Signal<ArdCalendarMonthTemplateDirective | undefined>;
95
+ abstract readonly calendarDayTemplate: Signal<ArdCalendarDayTemplateDirective | undefined>;
96
+ readonly calendarDaysViewHeaderDateFormat: InputSignal<string>;
97
+ readonly calendarYearsViewHeaderDateFormat: InputSignal<string>;
98
+ readonly calendarMonthsViewHeaderDateFormat: InputSignal<string>;
99
+ readonly calendarWeekdayDateFormat: InputSignal<string>;
100
+ readonly calendarWeekdayTitleDateFormat: InputSignal<string>;
101
+ readonly calendarFloatingMonthDateFormat: InputSignal<string>;
102
+ readonly calendarFloatingMonthTitleDateFormat: InputSignal<string>;
103
+ readonly calendarYearDateFormat: InputSignal<string>;
104
+ readonly calendarMonthDateFormat: InputSignal<string>;
105
+ readonly calendarDayDateFormat: InputSignal<string>;
106
+ readonly acceptButtonText: InputSignal<string>;
107
+ readonly cancelButtonText: InputSignal<string>;
108
+ readonly valueContext: Signal<ArdDateInputValueContext<T>>;
109
+ readonly acceptButtonsContext: Signal<ArdDateInputAcceptButtonsContext>;
110
+ static ɵfac: i0.ɵɵFactoryDeclaration<_AbstractDateInput<any>, never>;
111
+ static ɵdir: i0.ɵɵDirectiveDeclaration<_AbstractDateInput<any>, never, never, { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "calendarDisabled": { "alias": "calendarDisabled"; "required": false; "isSignal": true; }; "calendarHidden": { "alias": "calendarHidden"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "compact": { "alias": "compact"; "required": false; "isSignal": true; }; "dropdownAppearance": { "alias": "dropdownAppearance"; "required": false; "isSignal": true; }; "dropdownVariant": { "alias": "dropdownVariant"; "required": false; "isSignal": true; }; "activeView": { "alias": "activeView"; "required": false; "isSignal": true; }; "startView": { "alias": "startView"; "required": false; "isSignal": true; }; "activeYear": { "alias": "activeYear"; "required": false; "isSignal": true; }; "activeMonth": { "alias": "activeMonth"; "required": false; "isSignal": true; }; "firstWeekday": { "alias": "firstWeekday"; "required": false; "isSignal": true; }; "multipleYearPageChangeModifier": { "alias": "multipleYearPageChangeModifier"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "UTC": { "alias": "UTC"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "hideFloatingMonth": { "alias": "hideFloatingMonth"; "required": false; "isSignal": true; }; "useAcceptButtonToSelect": { "alias": "useAcceptButtonToSelect"; "required": false; "isSignal": true; }; "calendarDaysViewHeaderDateFormat": { "alias": "calendarDaysViewHeaderDateFormat"; "required": false; "isSignal": true; }; "calendarYearsViewHeaderDateFormat": { "alias": "calendarYearsViewHeaderDateFormat"; "required": false; "isSignal": true; }; "calendarMonthsViewHeaderDateFormat": { "alias": "calendarMonthsViewHeaderDateFormat"; "required": false; "isSignal": true; }; "calendarWeekdayDateFormat": { "alias": "calendarWeekdayDateFormat"; "required": false; "isSignal": true; }; "calendarWeekdayTitleDateFormat": { "alias": "calendarWeekdayTitleDateFormat"; "required": false; "isSignal": true; }; "calendarFloatingMonthDateFormat": { "alias": "calendarFloatingMonthDateFormat"; "required": false; "isSignal": true; }; "calendarFloatingMonthTitleDateFormat": { "alias": "calendarFloatingMonthTitleDateFormat"; "required": false; "isSignal": true; }; "calendarYearDateFormat": { "alias": "calendarYearDateFormat"; "required": false; "isSignal": true; }; "calendarMonthDateFormat": { "alias": "calendarMonthDateFormat"; "required": false; "isSignal": true; }; "calendarDayDateFormat": { "alias": "calendarDayDateFormat"; "required": false; "isSignal": true; }; "acceptButtonText": { "alias": "acceptButtonText"; "required": false; "isSignal": true; }; "cancelButtonText": { "alias": "cancelButtonText"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "isOpenChange": "isOpenChange"; "openEvent": "open"; "closeEvent": "close"; "activeView": "activeViewChange"; "activeYear": "activeYearChange"; "activeMonth": "activeMonthChange"; "yearSelect": "yearSelect"; "monthSelect": "monthSelect"; }, ["valueTemplate", "calendarIconTemplate", "acceptButtonsTemplate", "prefixTemplate", "suffixTemplate"], never, true, never>;
112
+ }
@@ -1,100 +1,39 @@
1
- import { AfterViewInit, ElementRef, OnDestroy, SimpleChanges, TemplateRef } from '@angular/core';
2
- import { ControlValueAccessor } from '@angular/forms';
3
- import { BooleanLike, NumberLike } from '@ardium-ui/devkit';
4
- import { _FormFieldComponentBase } from '../../_internal/form-field-component';
5
- import { ArdCalendarFilterFn, ArdCalendarView } from '../../calendar/calendar.types';
6
- import { ArdiumDropdownPanelComponent, DropdownPanelAppearance, DropdownPanelVariant } from '../../dropdown-panel';
7
- import { ComponentColor } from '../../types/colors.types';
8
- import { FormElementAppearance, FormElementVariant } from '../../types/theming.types';
9
- import { Nullable } from '../../types/utility.types';
1
+ import { AfterViewInit, ElementRef } from '@angular/core';
2
+ import { BooleanLike } from '@ardium-ui/devkit';
3
+ import { _AbstractDateInput } from './abstract-date-input';
10
4
  import { ArdDateInputDefaults } from './date-input.defaults';
11
- import { ArdDateInputAcceptButtonsTemplateDirective, ArdDateInputCalendarIconTemplateDirective, ArdDateInputDaysViewHeaderTemplateDirective, ArdDateInputDayTemplateDirective, ArdDateInputFloatingMonthTemplateDirective, ArdDateInputMonthsViewHeaderTemplateDirective, ArdDateInputMonthTemplateDirective, ArdDateInputPrefixTemplateDirective, ArdDateInputSuffixTemplateDirective, ArdDateInputValueTemplateDirective, ArdDateInputWeekdayTemplateDirective, ArdDateInputYearsViewHeaderTemplateDirective, ArdDateInputYearTemplateDirective } from './date-input.directive';
12
- import { ArdDateInputAcceptButtonsContext, ArdDateInputDeserializeFn, ArdDateInputMinMaxStrategy, ArdDateInputSerializeFn, ArdDateInputValueContext } from './date-input.types';
5
+ import { ArdDateInputDaysViewHeaderTemplateDirective, ArdDateInputDayTemplateDirective, ArdDateInputFloatingMonthTemplateDirective, ArdDateInputMonthsViewHeaderTemplateDirective, ArdDateInputMonthTemplateDirective, ArdDateInputWeekdayTemplateDirective, ArdDateInputYearsViewHeaderTemplateDirective, ArdDateInputYearTemplateDirective } from './date-input.directives';
6
+ import { ArdDateInputDeserializeFn, ArdDateInputMinMaxStrategy, ArdDateInputSerializeFn } from './date-input.types';
13
7
  import * as i0 from "@angular/core";
14
- export declare class ArdiumDateInputComponent extends _FormFieldComponentBase implements OnDestroy, ControlValueAccessor, AfterViewInit {
8
+ export declare class ArdiumDateInputComponent extends _AbstractDateInput<Date> implements AfterViewInit {
9
+ readonly componentId = "008";
10
+ readonly componentName = "date-input";
11
+ readonly isRangeSelector = false;
15
12
  protected readonly _DEFAULTS: ArdDateInputDefaults;
16
13
  constructor(defaults: ArdDateInputDefaults);
17
- private readonly elementRef;
18
- private readonly overlay;
19
- private readonly viewContainerRef;
20
- private readonly scrollStrategyOpts;
21
- readonly inputAttrs: import("@angular/core").InputSignal<Record<string, any>>;
22
- readonly placeholder: import("@angular/core").InputSignal<string>;
23
- readonly inputReadOnly: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
24
- readonly calendarDisabled: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
25
- readonly calendarHidden: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
26
- readonly serializeFn: import("@angular/core").InputSignal<ArdDateInputSerializeFn>;
27
- readonly deserializeFn: import("@angular/core").InputSignal<ArdDateInputDeserializeFn>;
28
- readonly value: import("@angular/core").ModelSignal<Date | null>;
29
14
  readonly dateInputValue: import("@angular/core").ModelSignal<string>;
30
- private readonly _wasDateInputChanged;
31
15
  writeValue(v: Date | null): void;
32
- protected _emitChange(): void;
33
- private _onTouched;
34
- readonly isOpen: import("@angular/core").ModelSignal<boolean>;
35
- readonly openEvent: import("@angular/core").OutputEmitterRef<void>;
36
- readonly closeEvent: import("@angular/core").OutputEmitterRef<void>;
16
+ protected _isFullValue(): boolean;
37
17
  readonly dateInput: import("@angular/core").Signal<ElementRef<HTMLInputElement>>;
18
+ readonly inputAttrs: import("@angular/core").InputSignal<Record<string, any>>;
19
+ readonly inputReadOnly: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
38
20
  readonly minMaxStrategy: import("@angular/core").InputSignal<ArdDateInputMinMaxStrategy>;
39
- private readonly _isDateInputFocused;
40
- onDateInputInput(event: Event): void;
21
+ readonly serializeFn: import("@angular/core").InputSignal<ArdDateInputSerializeFn<Date>>;
22
+ readonly deserializeFn: import("@angular/core").InputSignal<ArdDateInputDeserializeFn<Date>>;
23
+ readonly isDateInputFocused: import("@angular/core").WritableSignal<boolean>;
24
+ private readonly _wasDateInputChanged;
41
25
  onDateInputFocus(event: FocusEvent): void;
42
26
  onDateInputBlur(event: FocusEvent): void;
43
27
  onDateInputEnter(event: KeyboardEvent): void;
44
28
  private _processDateInputText;
45
29
  private _setDateInputAttributes;
30
+ onDateInputInput(event: Event): void;
31
+ private _serializeValueIntoDateInput;
46
32
  readonly shouldDisplayPlaceholder: import("@angular/core").Signal<boolean>;
47
33
  readonly shouldDisplayValue: import("@angular/core").Signal<boolean>;
48
34
  readonly shouldDisplayDateInput: import("@angular/core").Signal<boolean>;
49
- readonly appearance: import("@angular/core").InputSignal<FormElementAppearance>;
50
- readonly variant: import("@angular/core").InputSignal<FormElementVariant>;
51
- readonly color: import("@angular/core").InputSignal<ComponentColor>;
52
- readonly compact: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
53
- readonly ngClasses: import("@angular/core").Signal<string>;
54
- readonly dropdownAppearance: import("@angular/core").InputSignal<Nullable<DropdownPanelAppearance>>;
55
- readonly dropdownAppearanceOrDefault: import("@angular/core").Signal<DropdownPanelAppearance>;
56
- readonly dropdownVariant: import("@angular/core").InputSignal<Nullable<DropdownPanelVariant>>;
57
- readonly dropdownVariantOrDefault: import("@angular/core").Signal<DropdownPanelVariant>;
58
- readonly activeView: import("@angular/core").ModelSignal<ArdCalendarView>;
59
- readonly startView: import("@angular/core").InputSignal<Nullable<ArdCalendarView>>;
60
- readonly activeYear: import("@angular/core").ModelSignal<number>;
61
- readonly activeMonth: import("@angular/core").ModelSignal<number>;
62
- readonly firstWeekday: import("@angular/core").InputSignalWithTransform<number, NumberLike>;
63
- readonly multipleYearPageChangeModifier: import("@angular/core").InputSignalWithTransform<number, NumberLike>;
64
- readonly min: import("@angular/core").InputSignalWithTransform<Date | null, any>;
65
- readonly max: import("@angular/core").InputSignalWithTransform<Date | null, any>;
66
- readonly UTC: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
67
- readonly _UTCAfterInit: import("@angular/core").WritableSignal<boolean>;
68
- readonly filter: import("@angular/core").InputSignal<ArdCalendarFilterFn | null>;
69
- ngOnChanges(changes: SimpleChanges): void;
70
- readonly yearSelect: import("@angular/core").OutputEmitterRef<number>;
71
- readonly monthSelect: import("@angular/core").OutputEmitterRef<number>;
72
- readonly useAcceptButtonToSelect: import("@angular/core").InputSignalWithTransform<boolean, BooleanLike>;
73
- private _valueToAccept;
74
- onCalendarSelectedChange(event: Date | null): void;
75
- private _acceptSelectedDate;
76
- private _serializeValueIntoDateInput;
77
- private _cancelCalendarSelection;
78
- onAcceptButtonClick(): void;
79
- onCancelButtonClick(): void;
80
- readonly dropdownHost: import("@angular/core").Signal<ElementRef<HTMLElement>>;
81
- readonly dropdownTemplate: import("@angular/core").Signal<TemplateRef<any>>;
82
- readonly dropdownPanel: import("@angular/core").Signal<ArdiumDropdownPanelComponent>;
83
- private dropdownOverlay?;
84
- private _createOverlay;
85
- private _destroyOverlay;
86
35
  ngAfterViewInit(): void;
87
36
  onGeneralClick(event: MouseEvent): void;
88
- onOutsideClick(event: MouseEvent): void;
89
- onCalendarButtonClick(event: MouseEvent): void;
90
- toggle(): void;
91
- open(): void;
92
- close(): void;
93
- readonly valueTemplate: import("@angular/core").Signal<ArdDateInputValueTemplateDirective | undefined>;
94
- readonly calendarIconTemplate: import("@angular/core").Signal<ArdDateInputCalendarIconTemplateDirective | undefined>;
95
- readonly acceptButtonsTemplate: import("@angular/core").Signal<ArdDateInputAcceptButtonsTemplateDirective | undefined>;
96
- readonly prefixTemplate: import("@angular/core").Signal<ArdDateInputPrefixTemplateDirective | undefined>;
97
- readonly suffixTemplate: import("@angular/core").Signal<ArdDateInputSuffixTemplateDirective | undefined>;
98
37
  readonly calendarDaysViewHeaderTemplate: import("@angular/core").Signal<ArdDateInputDaysViewHeaderTemplateDirective | undefined>;
99
38
  readonly calendarYearsViewHeaderTemplate: import("@angular/core").Signal<ArdDateInputYearsViewHeaderTemplateDirective | undefined>;
100
39
  readonly calendarMonthsViewHeaderTemplate: import("@angular/core").Signal<ArdDateInputMonthsViewHeaderTemplateDirective | undefined>;
@@ -103,8 +42,6 @@ export declare class ArdiumDateInputComponent extends _FormFieldComponentBase im
103
42
  readonly calendarYearTemplate: import("@angular/core").Signal<ArdDateInputYearTemplateDirective | undefined>;
104
43
  readonly calendarMonthTemplate: import("@angular/core").Signal<ArdDateInputMonthTemplateDirective | undefined>;
105
44
  readonly calendarDayTemplate: import("@angular/core").Signal<ArdDateInputDayTemplateDirective | undefined>;
106
- readonly valueContext: import("@angular/core").Signal<ArdDateInputValueContext>;
107
- readonly acceptButtonsContext: import("@angular/core").Signal<ArdDateInputAcceptButtonsContext>;
108
45
  static ɵfac: i0.ɵɵFactoryDeclaration<ArdiumDateInputComponent, never>;
109
- static ɵcmp: i0.ɵɵComponentDeclaration<ArdiumDateInputComponent, "ard-date-input", never, { "inputAttrs": { "alias": "inputAttrs"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "inputReadOnly": { "alias": "inputReadOnly"; "required": false; "isSignal": true; }; "calendarDisabled": { "alias": "calendarDisabled"; "required": false; "isSignal": true; }; "calendarHidden": { "alias": "calendarHidden"; "required": false; "isSignal": true; }; "serializeFn": { "alias": "serializeFn"; "required": false; "isSignal": true; }; "deserializeFn": { "alias": "deserializeFn"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "dateInputValue": { "alias": "dateInputValue"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "minMaxStrategy": { "alias": "minMaxStrategy"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "compact": { "alias": "compact"; "required": false; "isSignal": true; }; "dropdownAppearance": { "alias": "dropdownAppearance"; "required": false; "isSignal": true; }; "dropdownVariant": { "alias": "dropdownVariant"; "required": false; "isSignal": true; }; "activeView": { "alias": "activeView"; "required": false; "isSignal": true; }; "startView": { "alias": "startView"; "required": false; "isSignal": true; }; "activeYear": { "alias": "activeYear"; "required": false; "isSignal": true; }; "activeMonth": { "alias": "activeMonth"; "required": false; "isSignal": true; }; "firstWeekday": { "alias": "firstWeekday"; "required": false; "isSignal": true; }; "multipleYearPageChangeModifier": { "alias": "multipleYearPageChangeModifier"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "UTC": { "alias": "UTC"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "useAcceptButtonToSelect": { "alias": "useAcceptButtonToSelect"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "dateInputValue": "dateInputValueChange"; "isOpen": "isOpenChange"; "openEvent": "open"; "closeEvent": "close"; "activeView": "activeViewChange"; "activeYear": "activeYearChange"; "activeMonth": "activeMonthChange"; "yearSelect": "yearSelect"; "monthSelect": "monthSelect"; }, ["valueTemplate", "calendarIconTemplate", "acceptButtonsTemplate", "prefixTemplate", "suffixTemplate", "calendarDaysViewHeaderTemplate", "calendarYearsViewHeaderTemplate", "calendarMonthsViewHeaderTemplate", "calendarWeekdayTemplate", "calendarFloatingMonthTemplate", "calendarYearTemplate", "calendarMonthTemplate", "calendarDayTemplate"], never, false, never>;
46
+ static ɵcmp: i0.ɵɵComponentDeclaration<ArdiumDateInputComponent, "ard-date-input", never, { "dateInputValue": { "alias": "dateInputValue"; "required": false; "isSignal": true; }; "inputAttrs": { "alias": "inputAttrs"; "required": false; "isSignal": true; }; "inputReadOnly": { "alias": "inputReadOnly"; "required": false; "isSignal": true; }; "minMaxStrategy": { "alias": "minMaxStrategy"; "required": false; "isSignal": true; }; "serializeFn": { "alias": "serializeFn"; "required": false; "isSignal": true; }; "deserializeFn": { "alias": "deserializeFn"; "required": false; "isSignal": true; }; }, { "dateInputValue": "dateInputValueChange"; }, ["calendarDaysViewHeaderTemplate", "calendarYearsViewHeaderTemplate", "calendarMonthsViewHeaderTemplate", "calendarWeekdayTemplate", "calendarFloatingMonthTemplate", "calendarYearTemplate", "calendarMonthTemplate", "calendarDayTemplate"], never, false, never>;
110
47
  }
@@ -1,6 +1,6 @@
1
1
  import { InjectionToken, Provider } from '@angular/core';
2
2
  import { _FormFieldComponentDefaults } from '../../_internal/form-field-component';
3
- import { ArdCalendarFilterFn, ArdCalendarView } from '../../calendar/calendar.types';
3
+ import { ArdCalendarFilterFn, ArdCalendarView, DateRange } from '../../calendar/calendar.types';
4
4
  import { DropdownPanelAppearance, DropdownPanelVariant } from '../../dropdown-panel';
5
5
  import { ComponentColor } from '../../types/colors.types';
6
6
  import { FormElementAppearance, FormElementVariant } from '../../types/theming.types';
@@ -9,8 +9,9 @@ import { ArdDateInputDeserializeFn, ArdDateInputMinMaxStrategy, ArdDateInputSeri
9
9
  export interface ArdDateInputDefaults extends _FormFieldComponentDefaults {
10
10
  inputAttrs: Record<string, any>;
11
11
  placeholder: string;
12
- serializeFn: ArdDateInputSerializeFn;
13
- deserializeFn: ArdDateInputDeserializeFn;
12
+ serializeFn: ArdDateInputSerializeFn<Date>;
13
+ rangeSerializeFn: ArdDateInputSerializeFn<DateRange>;
14
+ deserializeFn: ArdDateInputDeserializeFn<Date>;
14
15
  appearance: FormElementAppearance;
15
16
  variant: FormElementVariant;
16
17
  color: ComponentColor;
@@ -19,15 +20,32 @@ export interface ArdDateInputDefaults extends _FormFieldComponentDefaults {
19
20
  dropdownVariant: DropdownPanelVariant;
20
21
  minMaxStrategy: ArdDateInputMinMaxStrategy;
21
22
  startView: Nullable<ArdCalendarView>;
23
+ inputReadOnly: boolean;
24
+ calendarDisabled: boolean;
25
+ calendarHidden: boolean;
22
26
  activeView: ArdCalendarView;
23
27
  activeYear: number;
24
28
  activeMonth: number;
25
29
  firstWeekday: number;
26
30
  multipleYearPageChangeModifier: number;
31
+ numberOfCalendars: number;
27
32
  min: Date | null;
28
33
  max: Date | null;
29
34
  filter: ArdCalendarFilterFn | null;
30
35
  UTC: boolean;
36
+ hideFloatingMonth: boolean;
37
+ calendarDaysViewHeaderDateFormat: string;
38
+ calendarYearsViewHeaderDateFormat: string;
39
+ calendarMonthsViewHeaderDateFormat: string;
40
+ calendarWeekdayDateFormat: string;
41
+ calendarWeekdayTitleDateFormat: string;
42
+ calendarFloatingMonthDateFormat: string;
43
+ calendarFloatingMonthTitleDateFormat: string;
44
+ calendarYearDateFormat: string;
45
+ calendarMonthDateFormat: string;
46
+ calendarDayDateFormat: string;
47
+ acceptButtonText: string;
48
+ cancelButtonText: string;
31
49
  }
32
50
  export declare const ARD_DATE_INPUT_DEFAULTS: InjectionToken<ArdDateInputDefaults>;
33
51
  export declare function provideDateInputDefaults(config: Partial<ArdDateInputDefaults>): Provider;
@@ -15,8 +15,8 @@ export declare class ArdDateInputSuffixTemplateDirective {
15
15
  static ɵdir: i0.ɵɵDirectiveDeclaration<ArdDateInputSuffixTemplateDirective, "ard-date-input > ng-template[ard-suffix-tmp]", never, {}, {}, never, never, false, never>;
16
16
  }
17
17
  export declare class ArdDateInputValueTemplateDirective {
18
- template: TemplateRef<ArdDateInputValueContext>;
19
- constructor(template: TemplateRef<ArdDateInputValueContext>);
18
+ template: TemplateRef<ArdDateInputValueContext<Date>>;
19
+ constructor(template: TemplateRef<ArdDateInputValueContext<Date>>);
20
20
  static ɵfac: i0.ɵɵFactoryDeclaration<ArdDateInputValueTemplateDirective, never>;
21
21
  static ɵdir: i0.ɵɵDirectiveDeclaration<ArdDateInputValueTemplateDirective, "ard-date-input > ng-template[ard-value-tmp]", never, {}, {}, never, never, false, never>;
22
22
  }
@@ -1,16 +1,17 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./date-input.component";
3
- import * as i2 from "./date-input.directive";
3
+ import * as i2 from "./date-input.directives";
4
4
  import * as i3 from "@angular/common";
5
5
  import * as i4 from "../../form-field-frame/form-field-frame.module";
6
6
  import * as i5 from "../../dropdown-panel/dropdown-panel.module";
7
7
  import * as i6 from "@ardium-ui/devkit";
8
8
  import * as i7 from "../../calendar/calendar.module";
9
9
  import * as i8 from "../../buttons/icon-button/icon-button.module";
10
- import * as i9 from "../../icon/icon.module";
11
- import * as i10 from "../../calendar/calendar.internal-directives";
10
+ import * as i9 from "../../buttons/button/button.module";
11
+ import * as i10 from "../../icon/icon.module";
12
+ import * as i11 from "../../calendar/calendar.internal-directives";
12
13
  export declare class ArdiumDateInputModule {
13
14
  static ɵfac: i0.ɵɵFactoryDeclaration<ArdiumDateInputModule, never>;
14
- static ɵmod: i0.ɵɵNgModuleDeclaration<ArdiumDateInputModule, [typeof i1.ArdiumDateInputComponent, typeof i2.ArdDateInputPrefixTemplateDirective, typeof i2.ArdDateInputSuffixTemplateDirective, typeof i2.ArdDateInputValueTemplateDirective, typeof i2.ArdDateInputCalendarIconTemplateDirective, typeof i2.ArdDateInputAcceptButtonsTemplateDirective, typeof i2.ArdDateInputDaysViewHeaderTemplateDirective, typeof i2.ArdDateInputDayTemplateDirective, typeof i2.ArdDateInputFloatingMonthTemplateDirective, typeof i2.ArdDateInputMonthsViewHeaderTemplateDirective, typeof i2.ArdDateInputMonthTemplateDirective, typeof i2.ArdDateInputWeekdayTemplateDirective, typeof i2.ArdDateInputYearsViewHeaderTemplateDirective, typeof i2.ArdDateInputYearTemplateDirective], [typeof i3.CommonModule, typeof i4.ArdiumFormFieldFrameModule, typeof i5.ArdiumDropdownPanelModule, typeof i6.ArdiumClickOutsideModule, typeof i7.ArdiumCalendarModule, typeof i8.ArdiumIconButtonModule, typeof i9.ArdiumIconModule, typeof i10._CalendarTemplateRepositoryDirective], [typeof i1.ArdiumDateInputComponent, typeof i2.ArdDateInputPrefixTemplateDirective, typeof i2.ArdDateInputSuffixTemplateDirective, typeof i2.ArdDateInputValueTemplateDirective, typeof i2.ArdDateInputCalendarIconTemplateDirective, typeof i2.ArdDateInputAcceptButtonsTemplateDirective, typeof i2.ArdDateInputDaysViewHeaderTemplateDirective, typeof i2.ArdDateInputDayTemplateDirective, typeof i2.ArdDateInputFloatingMonthTemplateDirective, typeof i2.ArdDateInputMonthsViewHeaderTemplateDirective, typeof i2.ArdDateInputMonthTemplateDirective, typeof i2.ArdDateInputWeekdayTemplateDirective, typeof i2.ArdDateInputYearsViewHeaderTemplateDirective, typeof i2.ArdDateInputYearTemplateDirective]>;
15
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ArdiumDateInputModule, [typeof i1.ArdiumDateInputComponent, typeof i2.ArdDateInputPrefixTemplateDirective, typeof i2.ArdDateInputSuffixTemplateDirective, typeof i2.ArdDateInputValueTemplateDirective, typeof i2.ArdDateInputCalendarIconTemplateDirective, typeof i2.ArdDateInputAcceptButtonsTemplateDirective, typeof i2.ArdDateInputDaysViewHeaderTemplateDirective, typeof i2.ArdDateInputDayTemplateDirective, typeof i2.ArdDateInputFloatingMonthTemplateDirective, typeof i2.ArdDateInputMonthsViewHeaderTemplateDirective, typeof i2.ArdDateInputMonthTemplateDirective, typeof i2.ArdDateInputWeekdayTemplateDirective, typeof i2.ArdDateInputYearsViewHeaderTemplateDirective, typeof i2.ArdDateInputYearTemplateDirective], [typeof i3.CommonModule, typeof i4.ArdiumFormFieldFrameModule, typeof i5.ArdiumDropdownPanelModule, typeof i6.ArdiumClickOutsideModule, typeof i7.ArdiumCalendarModule, typeof i8.ArdiumIconButtonModule, typeof i9.ArdiumButtonModule, typeof i10.ArdiumIconModule, typeof i11._CalendarTemplateRepositoryDirective], [typeof i1.ArdiumDateInputComponent, typeof i2.ArdDateInputPrefixTemplateDirective, typeof i2.ArdDateInputSuffixTemplateDirective, typeof i2.ArdDateInputValueTemplateDirective, typeof i2.ArdDateInputCalendarIconTemplateDirective, typeof i2.ArdDateInputAcceptButtonsTemplateDirective, typeof i2.ArdDateInputDaysViewHeaderTemplateDirective, typeof i2.ArdDateInputDayTemplateDirective, typeof i2.ArdDateInputFloatingMonthTemplateDirective, typeof i2.ArdDateInputMonthsViewHeaderTemplateDirective, typeof i2.ArdDateInputMonthTemplateDirective, typeof i2.ArdDateInputWeekdayTemplateDirective, typeof i2.ArdDateInputYearsViewHeaderTemplateDirective, typeof i2.ArdDateInputYearTemplateDirective]>;
15
16
  static ɵinj: i0.ɵɵInjectorDeclaration<ArdiumDateInputModule>;
16
17
  }
@@ -1,3 +1,5 @@
1
+ import { DateRange } from '../../calendar';
1
2
  import { ArdDateInputDeserializeFn, ArdDateInputSerializeFn } from './date-input.types';
2
- export declare const DEFAULT_DATE_INPUT_SERIALIZE_FN: ArdDateInputSerializeFn;
3
- export declare const DEFAULT_DATE_INPUT_DESERIALIZE_FN: ArdDateInputDeserializeFn;
3
+ export declare const DEFAULT_DATE_INPUT_SERIALIZE_FN: ArdDateInputSerializeFn<Date>;
4
+ export declare const DEFAULT_DATE_RANGE_INPUT_SERIALIZE_FN: ArdDateInputSerializeFn<DateRange>;
5
+ export declare const DEFAULT_DATE_INPUT_DESERIALIZE_FN: ArdDateInputDeserializeFn<Date>;
@@ -1,7 +1,8 @@
1
- export type ArdDateInputSerializeFn = (date: Date | null) => string;
2
- export type ArdDateInputDeserializeFn = (date: string, prevValue: Date | null) => Date | null;
3
- export interface ArdDateInputValueContext {
4
- $implicit: Date | null;
1
+ export type ArdDateInputSerializeFn<T> = (date: T | null) => string;
2
+ export type ArdDateInputDeserializeFn<T> = (date: string, prevValue: T | null) => T | null;
3
+ export interface ArdDateInputValueContext<T> {
4
+ $implicit: string;
5
+ rawValue: T | null;
5
6
  }
6
7
  export interface ArdDateInputAcceptButtonsContext {
7
8
  $implicit: () => void;
@@ -0,0 +1,29 @@
1
+ import { DateRange } from '../../calendar';
2
+ import { _AbstractDateInput } from './abstract-date-input';
3
+ import { ArdDateInputDefaults } from './date-input.defaults';
4
+ import { ArdDateInputSerializeFn } from './date-input.types';
5
+ import { ArdDateRangeInputDaysViewHeaderTemplateDirective, ArdDateRangeInputDayTemplateDirective, ArdDateRangeInputFloatingMonthTemplateDirective, ArdDateRangeInputMonthsViewHeaderTemplateDirective, ArdDateRangeInputMonthTemplateDirective, ArdDateRangeInputWeekdayTemplateDirective, ArdDateRangeInputYearsViewHeaderTemplateDirective, ArdDateRangeInputYearTemplateDirective } from './date-range-input.directives';
6
+ import * as i0 from "@angular/core";
7
+ export declare class ArdiumDateRangeInputComponent extends _AbstractDateInput<DateRange> {
8
+ readonly componentId = "009";
9
+ readonly componentName = "date-range-input";
10
+ readonly isRangeSelector = true;
11
+ protected readonly _DEFAULTS: ArdDateInputDefaults;
12
+ constructor(defaults: ArdDateInputDefaults);
13
+ readonly serializeFn: import("@angular/core").InputSignal<ArdDateInputSerializeFn<DateRange>>;
14
+ writeValue(v: any): void;
15
+ protected _isFullValue(value: DateRange | null): boolean;
16
+ readonly shouldDisplayPlaceholder: import("@angular/core").Signal<boolean>;
17
+ readonly shouldDisplayValue: import("@angular/core").Signal<boolean>;
18
+ readonly shouldDisplayDateInput: import("@angular/core").Signal<boolean>;
19
+ readonly calendarDaysViewHeaderTemplate: import("@angular/core").Signal<ArdDateRangeInputDaysViewHeaderTemplateDirective | undefined>;
20
+ readonly calendarYearsViewHeaderTemplate: import("@angular/core").Signal<ArdDateRangeInputYearsViewHeaderTemplateDirective | undefined>;
21
+ readonly calendarMonthsViewHeaderTemplate: import("@angular/core").Signal<ArdDateRangeInputMonthsViewHeaderTemplateDirective | undefined>;
22
+ readonly calendarWeekdayTemplate: import("@angular/core").Signal<ArdDateRangeInputWeekdayTemplateDirective | undefined>;
23
+ readonly calendarFloatingMonthTemplate: import("@angular/core").Signal<ArdDateRangeInputFloatingMonthTemplateDirective | undefined>;
24
+ readonly calendarYearTemplate: import("@angular/core").Signal<ArdDateRangeInputYearTemplateDirective | undefined>;
25
+ readonly calendarMonthTemplate: import("@angular/core").Signal<ArdDateRangeInputMonthTemplateDirective | undefined>;
26
+ readonly calendarDayTemplate: import("@angular/core").Signal<ArdDateRangeInputDayTemplateDirective | undefined>;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<ArdiumDateRangeInputComponent, never>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<ArdiumDateRangeInputComponent, "ard-date-range-input", never, { "serializeFn": { "alias": "serializeFn"; "required": false; "isSignal": true; }; }, {}, ["calendarDaysViewHeaderTemplate", "calendarYearsViewHeaderTemplate", "calendarMonthsViewHeaderTemplate", "calendarWeekdayTemplate", "calendarFloatingMonthTemplate", "calendarYearTemplate", "calendarMonthTemplate", "calendarDayTemplate"], never, false, never>;
29
+ }