@updevs/components 1.0.0-alpha.47 → 1.0.0-alpha.49

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 (95) hide show
  1. package/README.md +1 -13
  2. package/calendar/calendar.component.d.ts +58 -122
  3. package/calendar/models/calendar-date.model.d.ts +10 -0
  4. package/calendar/models/calendar-month.model.d.ts +7 -0
  5. package/calendar/models/calendar-selected.model.d.ts +5 -0
  6. package/calendar/models/calendar-year.model.d.ts +6 -0
  7. package/calendar/models/date-range.model.d.ts +0 -4
  8. package/calendar/models/enums/calendar-view.enum.d.ts +5 -0
  9. package/calendar/models/public-api.d.ts +5 -0
  10. package/calendar/upd-calendar.module.d.ts +6 -11
  11. package/card/public-api.d.ts +1 -0
  12. package/card/types/public-api.d.ts +5 -0
  13. package/dropdown/dropdown.component.d.ts +3 -0
  14. package/esm2022/calendar/calendar.component.mjs +288 -217
  15. package/esm2022/calendar/models/calendar-date.model.mjs +2 -0
  16. package/esm2022/calendar/models/calendar-month.model.mjs +2 -0
  17. package/esm2022/calendar/models/calendar-selected.model.mjs +2 -0
  18. package/esm2022/calendar/models/calendar-year.model.mjs +2 -0
  19. package/esm2022/calendar/models/date-range.model.mjs +1 -1
  20. package/esm2022/calendar/models/enums/calendar-view.enum.mjs +7 -0
  21. package/esm2022/calendar/models/public-api.mjs +6 -1
  22. package/esm2022/calendar/upd-calendar.module.mjs +2 -20
  23. package/esm2022/card/public-api.mjs +2 -1
  24. package/esm2022/card/types/public-api.mjs +6 -0
  25. package/esm2022/dropdown/dropdown.component.mjs +23 -7
  26. package/esm2022/form-controls/date-picker/date-picker.component.mjs +45 -60
  27. package/esm2022/form-controls/input/input.component.mjs +3 -3
  28. package/esm2022/lib/models/row-column-size.mjs +1 -1
  29. package/esm2022/lib/tools/column-size.helper.mjs +2 -2
  30. package/esm2022/popover/popover.directive.mjs +10 -26
  31. package/esm2022/pricing-cards/index.mjs +2 -0
  32. package/esm2022/pricing-cards/models/price-item-feature.model.mjs +2 -0
  33. package/esm2022/pricing-cards/models/price-item-features-group.model.mjs +2 -0
  34. package/esm2022/pricing-cards/models/price-item.model.mjs +2 -0
  35. package/esm2022/pricing-cards/models/public-api.mjs +4 -0
  36. package/esm2022/pricing-cards/pricing-cards.component.mjs +24 -0
  37. package/esm2022/pricing-cards/public-api.mjs +4 -0
  38. package/esm2022/pricing-cards/upd-pricing-cards.module.mjs +36 -0
  39. package/esm2022/pricing-cards/updevs-components-pricing-cards.mjs +5 -0
  40. package/esm2022/table/abstractions/base.column.mjs +30 -44
  41. package/esm2022/table/table.component.mjs +9 -12
  42. package/fesm2022/updevs-components-calendar.mjs +319 -1449
  43. package/fesm2022/updevs-components-calendar.mjs.map +1 -1
  44. package/fesm2022/updevs-components-dropdown.mjs +22 -6
  45. package/fesm2022/updevs-components-dropdown.mjs.map +1 -1
  46. package/fesm2022/updevs-components-form-controls-date-picker.mjs +44 -59
  47. package/fesm2022/updevs-components-form-controls-date-picker.mjs.map +1 -1
  48. package/fesm2022/updevs-components-form-controls-input.mjs +2 -2
  49. package/fesm2022/updevs-components-form-controls-input.mjs.map +1 -1
  50. package/fesm2022/updevs-components-popover.mjs +9 -25
  51. package/fesm2022/updevs-components-popover.mjs.map +1 -1
  52. package/fesm2022/updevs-components-pricing-cards.mjs +64 -0
  53. package/fesm2022/updevs-components-pricing-cards.mjs.map +1 -0
  54. package/fesm2022/updevs-components-table.mjs +38 -55
  55. package/fesm2022/updevs-components-table.mjs.map +1 -1
  56. package/fesm2022/updevs-components.mjs +1 -1
  57. package/fesm2022/updevs-components.mjs.map +1 -1
  58. package/form-controls/date-picker/date-picker.component.d.ts +10 -31
  59. package/lib/models/row-column-size.d.ts +5 -9
  60. package/package.json +36 -30
  61. package/pricing-cards/index.d.ts +1 -0
  62. package/pricing-cards/models/price-item-feature.model.d.ts +5 -0
  63. package/pricing-cards/models/price-item-features-group.model.d.ts +5 -0
  64. package/pricing-cards/models/price-item.model.d.ts +19 -0
  65. package/pricing-cards/models/public-api.d.ts +3 -0
  66. package/pricing-cards/pricing-cards.component.d.ts +11 -0
  67. package/pricing-cards/public-api.d.ts +3 -0
  68. package/pricing-cards/upd-pricing-cards.module.d.ts +11 -0
  69. package/table/abstractions/base.column.d.ts +4 -0
  70. package/calendar/components/calendar-body/calendar-body.component.d.ts +0 -263
  71. package/calendar/components/calendar-header/calendar-header.component.d.ts +0 -57
  72. package/calendar/components/calendar-month-view/calendar-month-view.component.d.ts +0 -151
  73. package/calendar/components/calendar-multi-year-view/calendar-multi-year-view.component.d.ts +0 -10
  74. package/calendar/components/calendar-year-view/calendar-year-view.component.d.ts +0 -9
  75. package/calendar/models/calendar-cell.model.d.ts +0 -16
  76. package/calendar/services/calendar.service.d.ts +0 -15
  77. package/calendar/tools/events-options.d.ts +0 -12
  78. package/calendar/tools/keyboard-tools.d.ts +0 -9
  79. package/calendar/tools/passive-listeners.d.ts +0 -16
  80. package/calendar/types/calendar-cell-class-function.type.d.ts +0 -3
  81. package/calendar/types/calendar-cell-css-classes.type.d.ts +0 -3
  82. package/calendar/types/modifier-key.type.d.ts +0 -1
  83. package/esm2022/calendar/components/calendar-body/calendar-body.component.mjs +0 -515
  84. package/esm2022/calendar/components/calendar-header/calendar-header.component.mjs +0 -144
  85. package/esm2022/calendar/components/calendar-month-view/calendar-month-view.component.mjs +0 -423
  86. package/esm2022/calendar/components/calendar-multi-year-view/calendar-multi-year-view.component.mjs +0 -18
  87. package/esm2022/calendar/components/calendar-year-view/calendar-year-view.component.mjs +0 -17
  88. package/esm2022/calendar/models/calendar-cell.model.mjs +0 -18
  89. package/esm2022/calendar/services/calendar.service.mjs +0 -40
  90. package/esm2022/calendar/tools/events-options.mjs +0 -14
  91. package/esm2022/calendar/tools/keyboard-tools.mjs +0 -14
  92. package/esm2022/calendar/tools/passive-listeners.mjs +0 -29
  93. package/esm2022/calendar/types/calendar-cell-class-function.type.mjs +0 -2
  94. package/esm2022/calendar/types/calendar-cell-css-classes.type.mjs +0 -2
  95. package/esm2022/calendar/types/modifier-key.type.mjs +0 -2
package/README.md CHANGED
@@ -1,13 +1 @@
1
- # UpDevs Components Library for Angular
2
-
3
- # Tabler Upgrade
4
-
5
- After every Tabler update, perform the following operations:
6
-
7
- - Replace all "tblr" to "upd"
8
-
9
- # Library References
10
-
11
- LOCAL: "@updevs/icons": "file:../icons", "@updevs/sdk": "file:../sdk",
12
-
13
- PUBLISHED: "@updevs/icons": "^1.0.4", "@updevs/sdk": "^1.0.0-alpha.15",
1
+ # UpDevs Components Library for Angular v18
@@ -1,127 +1,63 @@
1
- import { AfterContentInit, AfterViewChecked, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
1
+ import { OnInit } from '@angular/core';
2
2
  import { OptionalType } from '@updevs/sdk/types';
3
- import { DateRangeModel } from './models/date-range.model';
4
- import { CalendarViewType } from './types/calendar-view.type';
5
- import { CalendarUserEventModel } from './models/calendar-user-event.model';
6
- import { CalendarCellClassFunctionType } from './types/calendar-cell-class-function.type';
7
- import { CalendarMonthViewComponent } from './components/calendar-month-view/calendar-month-view.component';
8
- import { CalendarYearViewComponent } from './components/calendar-year-view/calendar-year-view.component';
9
- import { CalendarMultiYearViewComponent } from './components/calendar-multi-year-view/calendar-multi-year-view.component';
3
+ import { CalendarViewEnum } from './models/enums/calendar-view.enum';
4
+ import { CalendarDateModel } from './models/calendar-date.model';
5
+ import { CalendarMonthModel } from './models/calendar-month.model';
6
+ import { CalendarYearModel } from './models/calendar-year.model';
7
+ import { CalendarSelectedModel } from './models/calendar-selected.model';
10
8
  import * as i0 from "@angular/core";
11
- export declare class CalendarComponent implements AfterContentInit, AfterViewChecked, OnChanges {
12
- /** Reference to the current month view component. */
13
- monthView?: CalendarMonthViewComponent;
14
- /** Reference to the current year view component. */
15
- yearView?: CalendarYearViewComponent;
16
- /** Reference to the current multi-year view component. */
17
- multiYearView?: CalendarMultiYearViewComponent;
18
- /** A date representing the period (month or year) to start the calendar in. */
19
- get startAt(): OptionalType<Date>;
20
- set startAt(value: OptionalType<Date>);
21
- /**
22
- * Whether the calendar should be started in month or year view.
23
- */
24
- startView: CalendarViewType;
25
- /**
26
- * The currently selected date.
27
- */
28
- get selected(): DateRangeModel | OptionalType<Date>;
29
- set selected(value: DateRangeModel | OptionalType<Date>);
30
- /**
31
- * The minimum selectable date.
32
- */
33
- get minDate(): OptionalType<Date>;
34
- set minDate(value: OptionalType<Date>);
35
- /**
36
- * The maximum selectable date.
37
- */
38
- get maxDate(): OptionalType<Date>;
39
- set maxDate(value: OptionalType<Date>);
40
- /**
41
- * Function used to filter which dates are selectable.
42
- */
43
- dateFilter?: (date: Date) => boolean;
44
- /** Function that can be used to add custom CSS classes to dates. */
45
- dateClass?: CalendarCellClassFunctionType;
46
- /** Start of the comparison range. */
47
- comparisonStart?: Date;
48
- /** End of the comparison range. */
49
- comparisonEnd?: Date;
50
- /** ARIA Accessible name of the `<input matStartDate/>` */
51
- startDateAccessibleName?: string;
52
- /** ARIA Accessible name of the `<input matEndDate/>` */
53
- endDateAccessibleName?: string;
54
- /** Whether the user is currently selecting a range of dates. */
55
- isRange: boolean;
56
- /** Emits when the currently selected date changes. */
57
- readonly selectedChange: EventEmitter<OptionalType<Date>>;
58
- /**
59
- * Emits the year chosen in multiyear view.
60
- * This doesn't imply a change on the selected date.
61
- */
62
- readonly yearSelected: EventEmitter<Date>;
63
- /**
64
- * Emits the month chosen in year view.
65
- * This doesn't imply a change on the selected date.
66
- */
67
- readonly monthSelected: EventEmitter<Date>;
68
- /**
69
- * Emits when the current view changes.
70
- */
71
- readonly viewChanged: EventEmitter<CalendarViewType>;
72
- /** Emits when any date is selected. */
73
- readonly userSelection: EventEmitter<CalendarUserEventModel<OptionalType<Date>>>;
74
- /** Emits a new date range value when the user completes a drag drop operation. */
75
- readonly userDragDrop: EventEmitter<CalendarUserEventModel<DateRangeModel>>;
76
- /**
77
- * The current active date. This determines which time period is shown and which date is
78
- * highlighted when using keyboard navigation.
79
- */
80
- get activeDate(): Date;
81
- set activeDate(value: Date);
82
- /** Whether the calendar is in month view. */
83
- get currentView(): CalendarViewType;
84
- set currentView(value: CalendarViewType);
85
- /** Origin of active drag, or null when dragging is not active. */
86
- protected _activeDrag?: CalendarUserEventModel<Date>;
87
- private _clampedActiveDate;
88
- private _startAt?;
89
- private _selected?;
90
- private _minDate?;
91
- private _maxDate?;
92
- /**
93
- * Used for scheduling that focus should be moved to the active cell on the next tick.
94
- * We need to schedule it, rather than do it immediately, because we have to wait
95
- * for Angular to re-evaluate the view children.
96
- */
97
- private _moveFocusOnNextTick;
98
- private _currentView;
9
+ export declare class CalendarComponent implements OnInit {
10
+ readonly selectedDate: import("@angular/core").InputSignal<OptionalType<Date>>;
11
+ readonly selectedStartDate: import("@angular/core").InputSignal<OptionalType<Date>>;
12
+ readonly selectedEndDate: import("@angular/core").InputSignal<OptionalType<Date>>;
13
+ readonly minDate: import("@angular/core").InputSignal<OptionalType<Date>>;
14
+ readonly maxDate: import("@angular/core").InputSignal<OptionalType<Date>>;
15
+ readonly disabledDatesFilter: import("@angular/core").InputSignal<OptionalType<(date: Date) => boolean>>;
16
+ readonly isRange: import("@angular/core").InputSignal<boolean>;
17
+ readonly shouldRemoveExternalBorder: import("@angular/core").InputSignal<boolean>;
18
+ readonly selected: import("@angular/core").OutputEmitterRef<OptionalType<CalendarSelectedModel>>;
19
+ readonly monthChanged: import("@angular/core").OutputEmitterRef<Date>;
20
+ CalendarViewEnum: typeof CalendarViewEnum;
21
+ readonly currentView: import("@angular/core").WritableSignal<CalendarViewEnum>;
22
+ readonly currentDate: import("@angular/core").WritableSignal<Date>;
23
+ readonly yearRange: import("@angular/core").WritableSignal<{
24
+ start: number;
25
+ end: number;
26
+ }>;
27
+ readonly currentYear: import("@angular/core").Signal<number>;
28
+ readonly currentMonth: import("@angular/core").Signal<number>;
29
+ readonly currentMonthName: import("@angular/core").Signal<string>;
30
+ readonly calendarDays: import("@angular/core").Signal<CalendarDateModel[]>;
31
+ readonly calendarMonths: import("@angular/core").Signal<CalendarMonthModel[]>;
32
+ readonly calendarYears: import("@angular/core").Signal<CalendarYearModel[]>;
33
+ readonly weekDayNames: import("@angular/core").Signal<string[]>;
34
+ private readonly internalSelectedDate;
35
+ private readonly internalSelectedStartDate;
36
+ private readonly internalSelectedEndDate;
99
37
  private readonly dateService;
100
- private readonly _changeDetectorRef;
101
- ngAfterContentInit(): void;
102
- ngAfterViewChecked(): void;
103
- ngOnChanges(changes: SimpleChanges): void;
104
- /** Focuses the active date. */
105
- focusActiveCell(): void;
106
- /** Updates today's date after an update of the active date */
107
- updateTodaysDate(): void;
108
- /** Handles date selection in the month view. */
109
- _dateSelected(event: CalendarUserEventModel<OptionalType<Date>>): void;
110
- /** Handles year selection in the multiyear view. */
111
- _yearSelectedInMultiYearView(normalizedYear: Date): void;
112
- /** Handles month selection in the year view. */
113
- _monthSelectedInYearView(normalizedMonth: Date): void;
114
- /** Handles year/month selection in the multi-year/year views. */
115
- _goToDateInView(date: Date, view: CalendarViewType): void;
116
- /** Called when the user starts dragging to change a date range. */
117
- _dragStarted(event: CalendarUserEventModel<Date>): void;
118
- /**
119
- * Called when a drag completes. It may end in cancelation or in the selection
120
- * of a new range.
121
- */
122
- _dragEnded(event: CalendarUserEventModel<OptionalType<DateRangeModel>>): void;
123
- /** Returns the component instance that corresponds to the current calendar view. */
124
- private _getCurrentViewComponent;
38
+ private rangeSelectionState;
39
+ ngOnInit(): void;
40
+ onHeaderClick(): void;
41
+ onPreviousClick(): void;
42
+ onNextClick(): void;
43
+ onDateClick(dateModel: CalendarDateModel): void;
44
+ onMonthClick(monthModel: CalendarMonthModel): void;
45
+ onYearClick(yearModel: CalendarYearModel): void;
46
+ clearSelection(): void;
47
+ private syncInternalState;
48
+ private handleRangeSelection;
49
+ private generateCalendarDays;
50
+ private generateCalendarMonths;
51
+ private generateCalendarYears;
52
+ private isDateSelected;
53
+ private isDateInRange;
54
+ private isDateRangeStart;
55
+ private isDateRangeEnd;
56
+ private isDateDisabled;
57
+ private isMonthDisabled;
58
+ private isYearDisabled;
59
+ private updateYearRange;
60
+ private moveYearRange;
125
61
  static ɵfac: i0.ɵɵFactoryDeclaration<CalendarComponent, never>;
126
- static ɵcmp: i0.ɵɵComponentDeclaration<CalendarComponent, "upd-calendar", never, { "startAt": { "alias": "startAt"; "required": false; }; "startView": { "alias": "startView"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "dateFilter": { "alias": "dateFilter"; "required": false; }; "dateClass": { "alias": "dateClass"; "required": false; }; "comparisonStart": { "alias": "comparisonStart"; "required": false; }; "comparisonEnd": { "alias": "comparisonEnd"; "required": false; }; "startDateAccessibleName": { "alias": "startDateAccessibleName"; "required": false; }; "endDateAccessibleName": { "alias": "endDateAccessibleName"; "required": false; }; "isRange": { "alias": "isRange"; "required": false; }; }, { "selectedChange": "selectedChange"; "yearSelected": "yearSelected"; "monthSelected": "monthSelected"; "viewChanged": "viewChanged"; "userSelection": "userSelection"; "userDragDrop": "userDragDrop"; }, never, never, false, never>;
62
+ static ɵcmp: i0.ɵɵComponentDeclaration<CalendarComponent, "upd-calendar", never, { "selectedDate": { "alias": "selectedDate"; "required": false; "isSignal": true; }; "selectedStartDate": { "alias": "selectedStartDate"; "required": false; "isSignal": true; }; "selectedEndDate": { "alias": "selectedEndDate"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; "disabledDatesFilter": { "alias": "disabledDatesFilter"; "required": false; "isSignal": true; }; "isRange": { "alias": "isRange"; "required": false; "isSignal": true; }; "shouldRemoveExternalBorder": { "alias": "shouldRemoveExternalBorder"; "required": false; "isSignal": true; }; }, { "selected": "selected"; "monthChanged": "monthChanged"; }, never, never, false, never>;
127
63
  }
@@ -0,0 +1,10 @@
1
+ export interface CalendarDateModel {
2
+ date: Date;
3
+ isCurrentMonth: boolean;
4
+ isToday: boolean;
5
+ isSelected: boolean;
6
+ isDisabled: boolean;
7
+ isInRange?: boolean;
8
+ isRangeStart?: boolean;
9
+ isRangeEnd?: boolean;
10
+ }
@@ -0,0 +1,7 @@
1
+ export interface CalendarMonthModel {
2
+ monthIndex: number;
3
+ name: string;
4
+ isCurrentMonth: boolean;
5
+ isSelected: boolean;
6
+ isDisabled: boolean;
7
+ }
@@ -0,0 +1,5 @@
1
+ export interface CalendarSelectedModel {
2
+ selectedDate?: Date;
3
+ startDate?: Date;
4
+ endDate?: Date;
5
+ }
@@ -0,0 +1,6 @@
1
+ export interface CalendarYearModel {
2
+ year: number;
3
+ isCurrentYear: boolean;
4
+ isSelected: boolean;
5
+ isDisabled: boolean;
6
+ }
@@ -10,10 +10,6 @@ export declare class DateRangeModel {
10
10
  * The end date of the range.
11
11
  */
12
12
  readonly end?: Date | undefined;
13
- /**
14
- * Ensures that objects with a `start` and `end` property can't be assigned to a variable that
15
- * expects a `DateRange`
16
- */ private disableStructuralEquivalency;
17
13
  constructor(
18
14
  /**
19
15
  * The start date of the range.
@@ -0,0 +1,5 @@
1
+ export declare enum CalendarViewEnum {
2
+ Days = "days",
3
+ Months = "months",
4
+ Years = "years"
5
+ }
@@ -1,2 +1,7 @@
1
1
  export * from './calendar-user-event.model';
2
2
  export * from './date-range.model';
3
+ export * from './enums/calendar-view.enum';
4
+ export * from './calendar-date.model';
5
+ export * from './calendar-month.model';
6
+ export * from './calendar-year.model';
7
+ export * from './calendar-selected.model';
@@ -1,18 +1,13 @@
1
1
  import { TranslocoService } from '@jsverse/transloco';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "./components/calendar-header/calendar-header.component";
4
- import * as i2 from "./components/calendar-multi-year-view/calendar-multi-year-view.component";
5
- import * as i3 from "./components/calendar-year-view/calendar-year-view.component";
6
- import * as i4 from "./components/calendar-month-view/calendar-month-view.component";
7
- import * as i5 from "./components/calendar-body/calendar-body.component";
8
- import * as i6 from "./calendar.component";
9
- import * as i7 from "@angular/common";
10
- import * as i8 from "@updevs/components/button";
11
- import * as i9 from "@jsverse/transloco";
12
- import * as i10 from "@updevs/icons";
3
+ import * as i1 from "./calendar.component";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "@updevs/components/button";
6
+ import * as i4 from "@jsverse/transloco";
7
+ import * as i5 from "@updevs/icons";
13
8
  export declare class UpdCalendarModule {
14
9
  constructor(translocoService: TranslocoService);
15
10
  static ɵfac: i0.ɵɵFactoryDeclaration<UpdCalendarModule, never>;
16
- static ɵmod: i0.ɵɵNgModuleDeclaration<UpdCalendarModule, [typeof i1.CalendarHeaderComponent, typeof i2.CalendarMultiYearViewComponent, typeof i3.CalendarYearViewComponent, typeof i4.CalendarMonthViewComponent, typeof i5.CalendarBodyComponent, typeof i6.CalendarComponent], [typeof i7.CommonModule, typeof i8.UpdButtonModule, typeof i9.TranslocoDirective, typeof i10.UpdIconsModule], [typeof i6.CalendarComponent]>;
11
+ static ɵmod: i0.ɵɵNgModuleDeclaration<UpdCalendarModule, [typeof i1.CalendarComponent], [typeof i2.CommonModule, typeof i3.UpdButtonModule, typeof i4.TranslocoDirective, typeof i5.UpdIconsModule], [typeof i1.CalendarComponent]>;
17
12
  static ɵinj: i0.ɵɵInjectorDeclaration<UpdCalendarModule>;
18
13
  }
@@ -1,3 +1,4 @@
1
1
  export * from './directives/public-api';
2
+ export * from './types/public-api';
2
3
  export * from './upd-card.module';
3
4
  export * from './card.component';
@@ -0,0 +1,5 @@
1
+ export * from './card-state.type';
2
+ export * from './card-style.type';
3
+ export * from './hover-effect.type';
4
+ export * from './ribbon-style.type';
5
+ export * from './status-position.type';
@@ -52,6 +52,7 @@ export declare class DropdownComponent extends BaseComponent implements OnInit,
52
52
  get overflowClass(): string;
53
53
  private baseWrapperClasses;
54
54
  private _isOpen;
55
+ private dropdownOutsideClickSub?;
55
56
  private readonly dropdownElement;
56
57
  private readonly ngZone;
57
58
  private readonly elementRef;
@@ -64,6 +65,8 @@ export declare class DropdownComponent extends BaseComponent implements OnInit,
64
65
  onSelect(item: DropdownItem): void;
65
66
  onCheckboxChange(item: DropdownItem, isChecked: boolean): void;
66
67
  adaptAction(btn: ButtonModel, item: DropdownItem): ButtonModel;
68
+ trackByItemId(index: number, item: DropdownItem): any;
69
+ getButtonClasses(item: DropdownItem): string;
67
70
  private closeOnOutsideClick;
68
71
  private updateStyle;
69
72
  private updateWrapperClasses;