@clr/angular 18.0.0-beta.1 → 18.0.0-beta.11

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 (132) hide show
  1. package/fesm2022/clr-angular-accordion.mjs +1 -1
  2. package/fesm2022/clr-angular-accordion.mjs.map +1 -1
  3. package/fesm2022/clr-angular-button.mjs +6 -6
  4. package/fesm2022/clr-angular-button.mjs.map +1 -1
  5. package/fesm2022/clr-angular-data-datagrid.mjs +45 -35
  6. package/fesm2022/clr-angular-data-datagrid.mjs.map +1 -1
  7. package/fesm2022/clr-angular-data-tree-view.mjs +3 -3
  8. package/fesm2022/clr-angular-data-tree-view.mjs.map +1 -1
  9. package/fesm2022/clr-angular-data.mjs +11 -9116
  10. package/fesm2022/clr-angular-data.mjs.map +1 -1
  11. package/fesm2022/clr-angular-emphasis-alert.mjs +2 -2
  12. package/fesm2022/clr-angular-emphasis-alert.mjs.map +1 -1
  13. package/fesm2022/clr-angular-emphasis.mjs +12 -778
  14. package/fesm2022/clr-angular-emphasis.mjs.map +1 -1
  15. package/fesm2022/clr-angular-forms-checkbox.mjs +13 -44
  16. package/fesm2022/clr-angular-forms-checkbox.mjs.map +1 -1
  17. package/fesm2022/clr-angular-forms-combobox.mjs +420 -90
  18. package/fesm2022/clr-angular-forms-combobox.mjs.map +1 -1
  19. package/fesm2022/clr-angular-forms-common.mjs +62 -57
  20. package/fesm2022/clr-angular-forms-common.mjs.map +1 -1
  21. package/fesm2022/clr-angular-forms-datalist.mjs +2 -14
  22. package/fesm2022/clr-angular-forms-datalist.mjs.map +1 -1
  23. package/fesm2022/clr-angular-forms-datepicker.mjs +20 -28
  24. package/fesm2022/clr-angular-forms-datepicker.mjs.map +1 -1
  25. package/fesm2022/clr-angular-forms-file-input.mjs +78 -62
  26. package/fesm2022/clr-angular-forms-file-input.mjs.map +1 -1
  27. package/fesm2022/clr-angular-forms-input.mjs +4 -18
  28. package/fesm2022/clr-angular-forms-input.mjs.map +1 -1
  29. package/fesm2022/clr-angular-forms-number-input.mjs +2 -14
  30. package/fesm2022/clr-angular-forms-number-input.mjs.map +1 -1
  31. package/fesm2022/clr-angular-forms-password.mjs +2 -14
  32. package/fesm2022/clr-angular-forms-password.mjs.map +1 -1
  33. package/fesm2022/clr-angular-forms-radio.mjs +13 -44
  34. package/fesm2022/clr-angular-forms-radio.mjs.map +1 -1
  35. package/fesm2022/clr-angular-forms-range.mjs +3 -16
  36. package/fesm2022/clr-angular-forms-range.mjs.map +1 -1
  37. package/fesm2022/clr-angular-forms-select.mjs +3 -16
  38. package/fesm2022/clr-angular-forms-select.mjs.map +1 -1
  39. package/fesm2022/clr-angular-forms-textarea.mjs +4 -17
  40. package/fesm2022/clr-angular-forms-textarea.mjs.map +1 -1
  41. package/fesm2022/clr-angular-forms.mjs +68 -8560
  42. package/fesm2022/clr-angular-forms.mjs.map +1 -1
  43. package/fesm2022/clr-angular-icon.mjs +10 -0
  44. package/fesm2022/clr-angular-icon.mjs.map +1 -1
  45. package/fesm2022/clr-angular-layout-nav.mjs +27 -25
  46. package/fesm2022/clr-angular-layout-nav.mjs.map +1 -1
  47. package/fesm2022/clr-angular-layout-tabs.mjs +1 -1
  48. package/fesm2022/clr-angular-layout-tabs.mjs.map +1 -1
  49. package/fesm2022/clr-angular-layout.mjs +15 -2057
  50. package/fesm2022/clr-angular-layout.mjs.map +1 -1
  51. package/fesm2022/clr-angular-modal.mjs +4 -5
  52. package/fesm2022/clr-angular-modal.mjs.map +1 -1
  53. package/fesm2022/clr-angular-popover-common.mjs +151 -85
  54. package/fesm2022/clr-angular-popover-common.mjs.map +1 -1
  55. package/fesm2022/clr-angular-popover-dropdown.mjs +7 -4
  56. package/fesm2022/clr-angular-popover-dropdown.mjs.map +1 -1
  57. package/fesm2022/clr-angular-popover-signpost.mjs +30 -15
  58. package/fesm2022/clr-angular-popover-signpost.mjs.map +1 -1
  59. package/fesm2022/clr-angular-popover-tooltip.mjs +7 -7
  60. package/fesm2022/clr-angular-popover-tooltip.mjs.map +1 -1
  61. package/fesm2022/clr-angular-popover.mjs +12 -2242
  62. package/fesm2022/clr-angular-popover.mjs.map +1 -1
  63. package/fesm2022/clr-angular-stepper.mjs +5 -5
  64. package/fesm2022/clr-angular-stepper.mjs.map +1 -1
  65. package/fesm2022/clr-angular-utils.mjs +20 -485
  66. package/fesm2022/clr-angular-utils.mjs.map +1 -1
  67. package/fesm2022/clr-angular-wizard.mjs +434 -223
  68. package/fesm2022/clr-angular-wizard.mjs.map +1 -1
  69. package/fesm2022/clr-angular.mjs +94 -38740
  70. package/fesm2022/clr-angular.mjs.map +1 -1
  71. package/package.json +10 -5
  72. package/popover/common/README.md +14 -12
  73. package/schematics/collection.json +14 -0
  74. package/schematics/ng-update/index.d.ts +2 -0
  75. package/schematics/ng-update/index.js +69 -0
  76. package/schematics/ng-update/index.js.map +1 -0
  77. package/schematics/ng-update/migrations/css-migration.d.ts +6 -0
  78. package/schematics/ng-update/migrations/css-migration.js +177 -0
  79. package/schematics/ng-update/migrations/css-migration.js.map +1 -0
  80. package/schematics/ng-update/migrations/import-migration.d.ts +4 -0
  81. package/schematics/ng-update/migrations/import-migration.js +187 -0
  82. package/schematics/ng-update/migrations/import-migration.js.map +1 -0
  83. package/schematics/ng-update/migrations/template-migration.d.ts +6 -0
  84. package/schematics/ng-update/migrations/template-migration.js +261 -0
  85. package/schematics/ng-update/migrations/template-migration.js.map +1 -0
  86. package/schematics/ng-update/replacements/css-replacements.d.ts +17 -0
  87. package/schematics/ng-update/replacements/css-replacements.js +74 -0
  88. package/schematics/ng-update/replacements/css-replacements.js.map +1 -0
  89. package/schematics/ng-update/replacements/import-replacements.d.ts +13 -0
  90. package/schematics/ng-update/replacements/import-replacements.js +108 -0
  91. package/schematics/ng-update/replacements/import-replacements.js.map +1 -0
  92. package/schematics/ng-update/replacements/symbol-replacements.d.ts +12 -0
  93. package/schematics/ng-update/replacements/symbol-replacements.js +67 -0
  94. package/schematics/ng-update/replacements/symbol-replacements.js.map +1 -0
  95. package/schematics/ng-update/replacements/template-replacements.d.ts +19 -0
  96. package/schematics/ng-update/replacements/template-replacements.js +57 -0
  97. package/schematics/ng-update/replacements/template-replacements.js.map +1 -0
  98. package/schematics/ng-update/tests/test-helpers.d.ts +6 -0
  99. package/schematics/ng-update/tests/test-helpers.js +34 -0
  100. package/schematics/ng-update/tests/test-helpers.js.map +1 -0
  101. package/schematics/ng-update/utils/file-visitor.d.ts +8 -0
  102. package/schematics/ng-update/utils/file-visitor.js +44 -0
  103. package/schematics/ng-update/utils/file-visitor.js.map +1 -0
  104. package/schematics/ng-update/utils/regexp-utils.d.ts +16 -0
  105. package/schematics/ng-update/utils/regexp-utils.js +34 -0
  106. package/schematics/ng-update/utils/regexp-utils.js.map +1 -0
  107. package/schematics/vitest.config.d.ts +2 -0
  108. package/schematics/vitest.config.js +17 -0
  109. package/schematics/vitest.config.js.map +1 -0
  110. package/types/clr-angular-accordion.d.ts +1 -1
  111. package/types/clr-angular-button.d.ts +1 -1
  112. package/types/clr-angular-data-datagrid.d.ts +23 -33
  113. package/types/clr-angular-data-tree-view.d.ts +10 -1
  114. package/types/clr-angular-data.d.ts +4 -2136
  115. package/types/clr-angular-emphasis.d.ts +4 -220
  116. package/types/clr-angular-forms-combobox.d.ts +64 -11
  117. package/types/clr-angular-forms-common.d.ts +9 -9
  118. package/types/clr-angular-forms-datepicker.d.ts +8 -1
  119. package/types/clr-angular-forms-file-input.d.ts +6 -3
  120. package/types/clr-angular-forms.d.ts +26 -2062
  121. package/types/clr-angular-layout-nav.d.ts +6 -2
  122. package/types/clr-angular-layout-tabs.d.ts +1 -1
  123. package/types/clr-angular-layout.d.ts +6 -463
  124. package/types/clr-angular-popover-common.d.ts +38 -13
  125. package/types/clr-angular-popover-dropdown.d.ts +2 -1
  126. package/types/clr-angular-popover-signpost.d.ts +15 -7
  127. package/types/clr-angular-popover-tooltip.d.ts +1 -1
  128. package/types/clr-angular-popover.d.ts +7 -559
  129. package/types/clr-angular-stepper.d.ts +1 -1
  130. package/types/clr-angular-utils.d.ts +13 -175
  131. package/types/clr-angular-wizard.d.ts +92 -35
  132. package/types/clr-angular.d.ts +22 -10238
@@ -1,15 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
- import { QueryList, OnInit, OnDestroy, EventEmitter, ChangeDetectorRef, Renderer2, ElementRef, AfterContentInit, Type } from '@angular/core';
3
2
  import * as i1 from '@clr/angular/emphasis/badge';
3
+ export * from '@clr/angular/emphasis/badge';
4
4
  import * as i2 from '@clr/angular/emphasis/label';
5
+ export * from '@clr/angular/emphasis/label';
5
6
  import * as i3 from '@clr/angular/emphasis/alert';
6
- import { ClrCommonStringsService } from '@clr/angular/utils';
7
- import { Observable } from 'rxjs';
8
- import * as i6 from '@angular/common';
9
- import * as i7 from '@clr/angular/icon';
10
- import * as i8 from '@clr/angular/popover/dropdown';
11
- import * as i9 from '@clr/angular/progress/spinner';
12
- import { Type as Type$1 } from '@clr/angular/emphasis/common';
7
+ export * from '@clr/angular/emphasis/alert';
13
8
 
14
9
  declare class ClrEmphasisModule {
15
10
  static ɵfac: i0.ɵɵFactoryDeclaration<ClrEmphasisModule, never>;
@@ -17,215 +12,4 @@ declare class ClrEmphasisModule {
17
12
  static ɵinj: i0.ɵɵInjectorDeclaration<ClrEmphasisModule>;
18
13
  }
19
14
 
20
- interface AlertInfoObject {
21
- shape: string;
22
- cssClass: string;
23
- title: string;
24
- }
25
-
26
- declare class AlertIconAndTypesService {
27
- private commonStrings;
28
- private defaultIconShape;
29
- private _alertIconShape;
30
- private _alertType;
31
- constructor(commonStrings: ClrCommonStringsService);
32
- get alertType(): string;
33
- set alertType(val: string);
34
- get alertIconShape(): string;
35
- set alertIconShape(val: string);
36
- get alertIconTitle(): string;
37
- iconInfoFromType(type: string): AlertInfoObject;
38
- static ɵfac: i0.ɵɵFactoryDeclaration<AlertIconAndTypesService, never>;
39
- static ɵprov: i0.ɵɵInjectableDeclaration<AlertIconAndTypesService>;
40
- }
41
-
42
- declare class MultiAlertService {
43
- private subscription;
44
- private allAlerts;
45
- private _change;
46
- private _current;
47
- /**
48
- * The Observable that lets other classes subscribe to changes
49
- */
50
- get changes(): Observable<number>;
51
- get current(): number;
52
- set current(index: number);
53
- get activeAlerts(): ClrAlert[];
54
- get currentAlert(): ClrAlert;
55
- set currentAlert(alert: ClrAlert);
56
- get count(): number;
57
- manage(alerts: QueryList<ClrAlert>): void;
58
- next(): void;
59
- previous(): void;
60
- open(): void;
61
- close(isCurrentAlert: boolean): void;
62
- destroy(): void;
63
- static ɵfac: i0.ɵɵFactoryDeclaration<MultiAlertService, never>;
64
- static ɵprov: i0.ɵɵInjectableDeclaration<MultiAlertService>;
65
- }
66
-
67
- declare class ClrAlert implements OnInit, OnDestroy {
68
- private iconService;
69
- private cdr;
70
- private multiAlertService;
71
- private commonStrings;
72
- private renderer;
73
- private hostElement;
74
- isSmall: boolean;
75
- closable: boolean;
76
- isAppLevel: boolean;
77
- clrCloseButtonAriaLabel: string;
78
- _closedChanged: EventEmitter<boolean>;
79
- _closed: boolean;
80
- private _hidden;
81
- private subscriptions;
82
- private _isLightweight;
83
- private _origAlertType;
84
- constructor(iconService: AlertIconAndTypesService, cdr: ChangeDetectorRef, multiAlertService: MultiAlertService, commonStrings: ClrCommonStringsService, renderer: Renderer2, hostElement: ElementRef<HTMLElement>);
85
- get isLightweight(): boolean;
86
- set isLightweight(val: boolean);
87
- get alertType(): string;
88
- set alertType(val: string);
89
- set alertIconShape(value: string);
90
- set closed(value: boolean);
91
- get alertClass(): string;
92
- get hidden(): boolean;
93
- set hidden(value: boolean);
94
- ngOnInit(): void;
95
- ngOnDestroy(): void;
96
- configAlertType(val: string): void;
97
- open(): void;
98
- close(): void;
99
- static ɵfac: i0.ɵɵFactoryDeclaration<ClrAlert, [null, null, { optional: true; }, null, null, null]>;
100
- static ɵcmp: i0.ɵɵComponentDeclaration<ClrAlert, "clr-alert", never, { "isSmall": { "alias": "clrAlertSizeSmall"; "required": false; }; "closable": { "alias": "clrAlertClosable"; "required": false; }; "isAppLevel": { "alias": "clrAlertAppLevel"; "required": false; }; "clrCloseButtonAriaLabel": { "alias": "clrCloseButtonAriaLabel"; "required": false; }; "isLightweight": { "alias": "clrAlertLightweight"; "required": false; }; "alertType": { "alias": "clrAlertType"; "required": false; }; "alertIconShape": { "alias": "clrAlertIcon"; "required": false; }; "closed": { "alias": "clrAlertClosed"; "required": false; }; }, { "_closedChanged": "clrAlertClosedChange"; }, never, ["*"], false, never>;
101
- }
102
-
103
- declare class ClrAlertItem {
104
- iconService: AlertIconAndTypesService;
105
- constructor(iconService: AlertIconAndTypesService);
106
- static ɵfac: i0.ɵɵFactoryDeclaration<ClrAlertItem, never>;
107
- static ɵcmp: i0.ɵɵComponentDeclaration<ClrAlertItem, "clr-alert-item", never, {}, {}, never, ["*"], false, never>;
108
- }
109
-
110
- /**
111
- * @remark
112
- * This directive is used only of selectin alert text.
113
- */
114
- declare class ClrAlertText {
115
- static ɵfac: i0.ɵɵFactoryDeclaration<ClrAlertText, never>;
116
- static ɵdir: i0.ɵɵDirectiveDeclaration<ClrAlertText, ".alert-text", never, {}, {}, never, never, false, never>;
117
- }
118
-
119
- declare class ClrAlerts implements AfterContentInit, OnDestroy {
120
- multiAlertService: MultiAlertService;
121
- currentAlertChange: EventEmitter<ClrAlert>;
122
- currentAlertIndexChange: EventEmitter<number>;
123
- private subscriptions;
124
- constructor(multiAlertService: MultiAlertService);
125
- set allAlerts(value: QueryList<ClrAlert>);
126
- /**
127
- * Input/Output to support two way binding on current alert index
128
- */
129
- set _inputCurrentIndex(index: number);
130
- get currentAlertIndex(): number;
131
- set currentAlertIndex(index: number);
132
- /**
133
- * Input/Output to support two way binding on current alert instance
134
- */
135
- get currentAlert(): ClrAlert;
136
- set currentAlert(alert: ClrAlert);
137
- /**
138
- * Ensure we are only dealing with alerts that have not been closed yet
139
- */
140
- get alerts(): ClrAlert[];
141
- get currentAlertType(): string;
142
- ngAfterContentInit(): void;
143
- ngOnDestroy(): void;
144
- static ɵfac: i0.ɵɵFactoryDeclaration<ClrAlerts, never>;
145
- static ɵcmp: i0.ɵɵComponentDeclaration<ClrAlerts, "clr-alerts", never, { "_inputCurrentIndex": { "alias": "clrCurrentAlertIndex"; "required": false; }; "currentAlert": { "alias": "clrCurrentAlert"; "required": false; }; }, { "currentAlertChange": "clrCurrentAlertChange"; "currentAlertIndexChange": "clrCurrentAlertIndexChange"; }, ["allAlerts"], ["clr-alert"], false, never>;
146
- }
147
-
148
- declare class ClrAlertsPager implements OnInit, OnDestroy {
149
- multiAlertService: MultiAlertService;
150
- commonStrings: ClrCommonStringsService;
151
- currentAlertChange: EventEmitter<ClrAlert>;
152
- currentAlertIndexChange: EventEmitter<number>;
153
- private multiAlertServiceChanges;
154
- constructor(multiAlertService: MultiAlertService, commonStrings: ClrCommonStringsService);
155
- /**
156
- * Input/Output to support two way binding on current alert instance
157
- */
158
- get currentAlert(): ClrAlert;
159
- set currentAlert(alert: ClrAlert);
160
- /**
161
- * Input/Output to support two way binding on current alert index
162
- */
163
- get currentAlertIndex(): number;
164
- set currentAlertIndex(index: number);
165
- protected get previousAlertAriaLabel(): string;
166
- protected get nextAlertAriaLabel(): string;
167
- ngOnInit(): void;
168
- ngOnDestroy(): void;
169
- pageUp(): void;
170
- pageDown(): void;
171
- static ɵfac: i0.ɵɵFactoryDeclaration<ClrAlertsPager, never>;
172
- static ɵcmp: i0.ɵɵComponentDeclaration<ClrAlertsPager, "clr-alerts-pager", never, { "currentAlert": { "alias": "clrCurrentAlert"; "required": false; }; "currentAlertIndex": { "alias": "clrCurrentAlertIndex"; "required": false; }; }, { "currentAlertChange": "clrCurrentAlertChange"; "currentAlertIndexChange": "clrCurrentAlertIndexChange"; }, never, never, false, never>;
173
- }
174
-
175
- declare const CLR_ALERT_DIRECTIVES: Type<any>[];
176
- declare class ClrAlertModule {
177
- constructor();
178
- static ɵfac: i0.ɵɵFactoryDeclaration<ClrAlertModule, never>;
179
- static ɵmod: i0.ɵɵNgModuleDeclaration<ClrAlertModule, [typeof ClrAlert, typeof ClrAlertItem, typeof ClrAlerts, typeof ClrAlertsPager, typeof ClrAlertText], [typeof i6.CommonModule, typeof i7.ClrIcon, typeof i8.ClrDropdownModule, typeof i9.ClrSpinnerModule], [typeof ClrAlert, typeof ClrAlertItem, typeof ClrAlerts, typeof ClrAlertsPager, typeof ClrAlertText]>;
180
- static ɵinj: i0.ɵɵInjectorDeclaration<ClrAlertModule>;
181
- }
182
-
183
- declare const ALERT_TYPES: string[];
184
-
185
- declare enum ClrBadgeColors {
186
- None = "",
187
- Info = "info",
188
- Warning = "warning",
189
- Danger = "danger",
190
- Success = "success",
191
- Gray = "gray",
192
- Blue = "blue",
193
- LightBlue = "light-blue",
194
- Orange = "orange",
195
- Purple = "purple"
196
- }
197
- declare class ClrBadge {
198
- color: ClrBadgeColors | string;
199
- type: Type$1 | string;
200
- get isOutlined(): boolean;
201
- get colorClass(): string;
202
- static ɵfac: i0.ɵɵFactoryDeclaration<ClrBadge, never>;
203
- static ɵcmp: i0.ɵɵComponentDeclaration<ClrBadge, "clr-badge", never, { "color": { "alias": "clrColor"; "required": false; }; "type": { "alias": "clrType"; "required": false; }; }, {}, never, ["*"], true, never>;
204
- }
205
-
206
- declare enum ClrLabelColors {
207
- None = "",
208
- Info = "info",
209
- Warning = "warning",
210
- Danger = "danger",
211
- Success = "success",
212
- Gray = "gray",
213
- Blue = "blue",
214
- LightBlue = "light-blue",
215
- Orange = "orange",
216
- Purple = "purple"
217
- }
218
- declare class ClrLabel {
219
- color: ClrLabelColors | string;
220
- badgeText: string;
221
- textContent: string;
222
- clickable: boolean;
223
- disabled: boolean;
224
- type: Type$1 | string;
225
- get isSolid(): boolean;
226
- get colorClass(): string;
227
- static ɵfac: i0.ɵɵFactoryDeclaration<ClrLabel, never>;
228
- static ɵcmp: i0.ɵɵComponentDeclaration<ClrLabel, "clr-label", never, { "color": { "alias": "clrColor"; "required": false; }; "badgeText": { "alias": "clrBadgeText"; "required": false; }; "textContent": { "alias": "clrText"; "required": false; }; "clickable": { "alias": "clrClickable"; "required": false; }; "disabled": { "alias": "clrDisabled"; "required": false; }; "type": { "alias": "clrType"; "required": false; }; }, {}, never, ["*"], true, never>;
229
- }
230
-
231
- export { ALERT_TYPES, CLR_ALERT_DIRECTIVES, ClrAlert, ClrAlertItem, ClrAlertModule, ClrAlertText, ClrAlerts, ClrAlertsPager, ClrBadge, ClrBadgeColors, ClrEmphasisModule, ClrLabel, ClrLabelColors };
15
+ export { ClrEmphasisModule };
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { AfterContentInit, AfterViewInit, ElementRef, TemplateRef, ChangeDetectorRef, RendererFactory2, Renderer2, EventEmitter, ViewContainerRef, Injector, OnInit, OnDestroy, QueryList, DoCheck, IterableDiffers, TrackByFunction } from '@angular/core';
2
+ import { AfterContentInit, AfterViewInit, ElementRef, TemplateRef, RendererFactory2, Renderer2, EventEmitter, QueryList, ViewContainerRef, Injector, ChangeDetectorRef, NgZone, OnInit, OnDestroy, DoCheck, IterableDiffers, TrackByFunction } from '@angular/core';
3
3
  import * as rxjs from 'rxjs';
4
4
  import { Observable } from 'rxjs';
5
5
  import * as i9 from '@angular/forms';
@@ -24,7 +24,7 @@ declare class ComboboxContainerService {
24
24
 
25
25
  declare class ClrComboboxContainer extends ClrAbstractContainer implements AfterContentInit, AfterViewInit {
26
26
  private containerService;
27
- private el;
27
+ el: ElementRef<HTMLElement>;
28
28
  controlContainer: ElementRef<HTMLElement>;
29
29
  constructor(layoutService: LayoutService, controlClassService: ControlClassService, ngControlService: NgControlService, containerService: ComboboxContainerService, el: ElementRef<HTMLElement>);
30
30
  ngAfterContentInit(): void;
@@ -33,9 +33,12 @@ declare class ClrComboboxContainer extends ClrAbstractContainer implements After
33
33
  static ɵcmp: i0.ɵɵComponentDeclaration<ClrComboboxContainer, "clr-combobox-container", never, {}, {}, never, ["label", "clr-combobox", "clr-control-helper", "clr-control-error", "clr-control-success"], false, never>;
34
34
  }
35
35
 
36
+ type ClrComboboxIdentityFunction<T> = (item: T) => any;
37
+ type ClrComboboxResolverFunction<T> = (input: string) => T;
36
38
  declare abstract class ComboboxModel<T> {
37
39
  model: T | T[];
38
40
  displayField?: string;
41
+ identityFn: ClrComboboxIdentityFunction<T>;
39
42
  abstract containsItem(item: T): boolean;
40
43
  abstract select(item: T): void;
41
44
  abstract unselect(item: T): void;
@@ -59,7 +62,7 @@ declare class ClrOptionSelected<T> {
59
62
  declare class OptionSelectionService<T> {
60
63
  loading: boolean;
61
64
  editable: boolean;
62
- filtering: boolean;
65
+ showSelectAll: boolean;
63
66
  selectionModel: ComboboxModel<T>;
64
67
  inputChanged: Observable<string>;
65
68
  showAllOptions: boolean;
@@ -67,6 +70,7 @@ declare class OptionSelectionService<T> {
67
70
  private _displayField;
68
71
  private _inputChanged;
69
72
  private _selectionChanged;
73
+ private _selectAllRequested;
70
74
  constructor();
71
75
  get displayField(): string;
72
76
  set displayField(value: string);
@@ -74,16 +78,28 @@ declare class OptionSelectionService<T> {
74
78
  set currentInput(input: string);
75
79
  get selectionChanged(): Observable<ComboboxModel<T>>;
76
80
  get multiselectable(): boolean;
81
+ get identityFn(): ClrComboboxIdentityFunction<T>;
82
+ set identityFn(value: ClrComboboxIdentityFunction<T>);
83
+ get selectAllRequested(): Observable<void>;
84
+ requestSelectAll(): void;
85
+ editableResolver: ClrComboboxResolverFunction<T>;
77
86
  select(item: T): void;
78
87
  toggle(item: T): void;
88
+ selectMany(items: T[]): void;
89
+ unselectMany(items: T[]): void;
79
90
  unselect(item: T): void;
91
+ /**
92
+ * Checks whether all given items are currently selected, using identityFn for comparison.
93
+ */
94
+ containsAll(items: T[]): boolean;
80
95
  setSelectionValue(value: T | T[]): void;
81
- parseStringToModel(value: string): T;
96
+ private _identityFn;
97
+ private valuesEqualByIdentity;
82
98
  static ɵfac: i0.ɵɵFactoryDeclaration<OptionSelectionService<any>, never>;
83
99
  static ɵprov: i0.ɵɵInjectableDeclaration<OptionSelectionService<any>>;
84
100
  }
85
101
 
86
- declare class SingleSelectComboboxModel<T> implements ComboboxModel<T> {
102
+ declare class SingleSelectComboboxModel<T> extends ComboboxModel<T> {
87
103
  model: T;
88
104
  containsItem(item: T): boolean;
89
105
  select(item: T): void;
@@ -103,7 +119,6 @@ declare class ComboboxFocusHandler<T> {
103
119
  private popoverService;
104
120
  private selectionService;
105
121
  private platformId;
106
- componentCdRef: ChangeDetectorRef;
107
122
  pseudoFocus: PseudoFocusModel<OptionData<T>>;
108
123
  private renderer;
109
124
  private _trigger;
@@ -120,6 +135,7 @@ declare class ComboboxFocusHandler<T> {
120
135
  focusInput(): void;
121
136
  focusFirstActive(): void;
122
137
  addOptionValues(options: OptionData<T>[]): void;
138
+ focusOption(option: OptionData<T>): void;
123
139
  private handleFocusSubscription;
124
140
  private moveFocusTo;
125
141
  private openAndMoveTo;
@@ -150,6 +166,8 @@ declare class ClrCombobox<T> extends WrappedFormControl<ClrComboboxContainer> im
150
166
  private platformId;
151
167
  private focusHandler;
152
168
  private cdr;
169
+ private zone;
170
+ private container;
153
171
  placeholder: string;
154
172
  clrInputChange: EventEmitter<string>;
155
173
  clrOpenChange: rxjs.Observable<boolean>;
@@ -160,17 +178,31 @@ declare class ClrCombobox<T> extends WrappedFormControl<ClrComboboxContainer> im
160
178
  textbox: ElementRef<HTMLInputElement>;
161
179
  trigger: ElementRef<HTMLButtonElement>;
162
180
  optionSelected: ClrOptionSelected<T>;
181
+ truncationButton: ElementRef;
182
+ wrapper: ElementRef;
183
+ calculationPills: QueryList<ElementRef<HTMLElement>>;
163
184
  focused: boolean;
164
185
  popoverPosition: ClrPopoverPosition;
165
186
  protected index: number;
166
187
  protected popoverType: ClrPopoverType;
188
+ protected containerWidth: any;
189
+ protected selectionExpanded: boolean;
190
+ protected calculatedLimit: number | undefined;
191
+ protected shouldCalculate: boolean;
192
+ protected isTotalSelection: boolean;
193
+ private resizeObserver;
194
+ private containerWidthChange;
167
195
  private options;
168
196
  private _searchText;
169
197
  private onTouchedCallback;
170
198
  private onChangeCallback;
171
- constructor(vcr: ViewContainerRef, injector: Injector, control: NgControl, renderer: Renderer2, el: ElementRef<HTMLElement>, optionSelectionService: OptionSelectionService<T>, commonStrings: ClrCommonStringsService, popoverService: ClrPopoverService, containerService: ComboboxContainerService, platformId: any, focusHandler: ComboboxFocusHandler<T>, cdr: ChangeDetectorRef);
199
+ constructor(vcr: ViewContainerRef, injector: Injector, control: NgControl, renderer: Renderer2, el: ElementRef<HTMLElement>, optionSelectionService: OptionSelectionService<T>, commonStrings: ClrCommonStringsService, popoverService: ClrPopoverService, containerService: ComboboxContainerService, platformId: any, focusHandler: ComboboxFocusHandler<T>, cdr: ChangeDetectorRef, zone: NgZone, container: ClrComboboxContainer);
200
+ get showSelectAll(): boolean;
201
+ set showSelectAll(value: boolean);
172
202
  get editable(): boolean;
173
203
  set editable(value: boolean);
204
+ set editableResolver(value: ClrComboboxResolverFunction<T> | undefined);
205
+ set identityFn(value: ClrComboboxIdentityFunction<T>);
174
206
  get multiSelect(): boolean | string;
175
207
  set multiSelect(value: boolean | string);
176
208
  get id(): string;
@@ -183,9 +215,15 @@ declare class ClrCombobox<T> extends WrappedFormControl<ClrComboboxContainer> im
183
215
  get ariaOwns(): string;
184
216
  get ariaDescribedBySelection(): string;
185
217
  get displayField(): string;
218
+ get showAllText(): string;
219
+ get allSelectedText(): string;
220
+ get showIndividualPills(): boolean;
221
+ get showTruncationToggle(): boolean;
186
222
  private get disabled();
187
223
  ngAfterContentInit(): void;
188
224
  ngAfterViewInit(): void;
225
+ ngOnDestroy(): void;
226
+ clearSelection(): void;
189
227
  onKeyUp(event: KeyboardEvent): void;
190
228
  inputId(): string;
191
229
  loadingStateChange(state: ClrLoadingState): void;
@@ -201,12 +239,18 @@ declare class ClrCombobox<T> extends WrappedFormControl<ClrComboboxContainer> im
201
239
  getActiveDescendant(): string;
202
240
  setDisabledState(): void;
203
241
  onWrapperClick(event: any): void;
242
+ toggleSelectionExpand(): void;
243
+ private initialiseObserver;
244
+ private calculateLimit;
245
+ private applyLimit;
246
+ private updateTotalSelection;
204
247
  private initializeSubscriptions;
205
248
  private updateInputValue;
206
249
  private updateControlValue;
207
250
  private getDisplayNames;
208
- static ɵfac: i0.ɵɵFactoryDeclaration<ClrCombobox<any>, [null, null, { optional: true; self: true; }, null, null, null, null, null, { optional: true; }, null, null, null]>;
209
- static ɵcmp: i0.ɵɵComponentDeclaration<ClrCombobox<any>, "clr-combobox", never, { "placeholder": { "alias": "placeholder"; "required": false; }; "editable": { "alias": "clrEditable"; "required": false; }; "multiSelect": { "alias": "clrMulti"; "required": false; }; }, { "clrInputChange": "clrInputChange"; "clrOpenChange": "clrOpenChange"; "clrSelectionChange": "clrSelectionChange"; }, ["optionSelected", "options"], ["*"], false, [{ directive: typeof i1.ClrPopoverHostDirective; inputs: {}; outputs: {}; }]>;
251
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClrCombobox<any>, [null, null, { optional: true; self: true; }, null, null, null, null, null, { optional: true; }, null, null, null, null, { optional: true; host: true; }]>;
252
+ static ɵcmp: i0.ɵɵComponentDeclaration<ClrCombobox<any>, "clr-combobox", never, { "placeholder": { "alias": "placeholder"; "required": false; }; "showSelectAll": { "alias": "showSelectAll"; "required": false; }; "editable": { "alias": "clrEditable"; "required": false; }; "editableResolver": { "alias": "clrEditableResolverFn"; "required": false; }; "identityFn": { "alias": "clrComboboxIdentityFn"; "required": false; }; "multiSelect": { "alias": "clrMulti"; "required": false; }; }, { "clrInputChange": "clrInputChange"; "clrOpenChange": "clrOpenChange"; "clrSelectionChange": "clrSelectionChange"; }, ["optionSelected", "options"], ["*"], false, [{ directive: typeof i1.ClrPopoverHostDirective; inputs: {}; outputs: {}; }]>;
253
+ static ngAcceptInputType_showSelectAll: unknown;
210
254
  }
211
255
 
212
256
  declare class ClrOption<T> implements OnInit {
@@ -230,6 +274,7 @@ declare class ClrOption<T> implements OnInit {
230
274
  static ɵcmp: i0.ɵɵComponentDeclaration<ClrOption<any>, "clr-option", never, { "optionId": { "alias": "id"; "required": false; }; "value": { "alias": "clrValue"; "required": false; }; }, {}, never, ["*"], false, never>;
231
275
  }
232
276
 
277
+ declare const SELECT_ALL_ID = "select-all-id";
233
278
  declare class ClrOptions<T> implements AfterViewInit, LoadingListener, OnDestroy {
234
279
  optionSelectionService: OptionSelectionService<T>;
235
280
  id: number;
@@ -242,7 +287,9 @@ declare class ClrOptions<T> implements AfterViewInit, LoadingListener, OnDestroy
242
287
  loading: boolean;
243
288
  _items: QueryList<ClrOption<T>>;
244
289
  private subscriptions;
290
+ private _selectAllOption;
245
291
  constructor(optionSelectionService: OptionSelectionService<T>, id: number, el: ElementRef<HTMLElement>, commonStrings: ClrCommonStringsService, focusHandler: ComboboxFocusHandler<T>, popoverService: ClrPopoverService, parentHost: ElementRef<HTMLElement>, document: any);
292
+ set selectAllBtn(value: ElementRef);
246
293
  get items(): QueryList<ClrOption<T>>;
247
294
  set items(items: QueryList<ClrOption<T>>);
248
295
  /**
@@ -251,10 +298,15 @@ declare class ClrOptions<T> implements AfterViewInit, LoadingListener, OnDestroy
251
298
  get emptyOptions(): boolean;
252
299
  get editable(): boolean;
253
300
  get noResultsElementId(): string;
301
+ get showSelectAll(): boolean;
302
+ get allVisibleSelected(): boolean;
303
+ get isSelectAllFocused(): boolean;
304
+ toggleSelectAll(event?: Event): void;
254
305
  ngAfterViewInit(): void;
255
306
  ngOnDestroy(): void;
256
307
  searchText(input: string): string;
257
308
  loadingStateChange(state: ClrLoadingState): void;
309
+ private updateFocusableItems;
258
310
  static ɵfac: i0.ɵɵFactoryDeclaration<ClrOptions<any>, [null, null, null, null, null, null, { optional: true; }, null]>;
259
311
  static ɵcmp: i0.ɵɵComponentDeclaration<ClrOptions<any>, "clr-options", never, { "optionsId": { "alias": "id"; "required": false; }; }, {}, ["items"], ["*"], false, never>;
260
312
  }
@@ -293,8 +345,9 @@ declare class ClrOptionGroup<T> {
293
345
  declare class ClrComboboxModule {
294
346
  constructor();
295
347
  static ɵfac: i0.ɵɵFactoryDeclaration<ClrComboboxModule, never>;
296
- static ɵmod: i0.ɵɵNgModuleDeclaration<ClrComboboxModule, [typeof ClrCombobox, typeof ClrComboboxContainer, typeof ClrOptions, typeof ClrOption, typeof ClrOptionGroup, typeof ClrOptionSelected, typeof ClrOptionItems], [typeof i8.CommonModule, typeof i9.FormsModule, typeof i10.ClrIcon, typeof i11.ClrKeyFocusModule, typeof i12.ClrCommonFormsModule, typeof i11.ClrConditionalModule, typeof i1.ÇlrClrPopoverModuleNext, typeof i14.ClrSpinnerModule], [typeof i12.ClrCommonFormsModule, typeof ClrCombobox, typeof ClrComboboxContainer, typeof ClrOptions, typeof ClrOption, typeof ClrOptionGroup, typeof ClrOptionSelected, typeof i11.ClrConditionalModule, typeof ClrOptionItems]>;
348
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ClrComboboxModule, [typeof ClrCombobox, typeof ClrComboboxContainer, typeof ClrOptions, typeof ClrOption, typeof ClrOptionGroup, typeof ClrOptionSelected, typeof ClrOptionItems], [typeof i8.CommonModule, typeof i9.FormsModule, typeof i10.ClrIcon, typeof i11.ClrKeyFocusModule, typeof i12.ClrCommonFormsModule, typeof i11.ClrConditionalModule, typeof i1.ClrPopoverModuleNext, typeof i14.ClrSpinnerModule], [typeof i12.ClrCommonFormsModule, typeof ClrCombobox, typeof ClrComboboxContainer, typeof ClrOptions, typeof ClrOption, typeof ClrOptionGroup, typeof ClrOptionSelected, typeof i11.ClrConditionalModule, typeof ClrOptionItems]>;
297
349
  static ɵinj: i0.ɵɵInjectorDeclaration<ClrComboboxModule>;
298
350
  }
299
351
 
300
- export { ClrCombobox, ClrComboboxContainer, ClrComboboxModule, ClrOption, ClrOptionGroup, ClrOptionItems, ClrOptionSelected, ClrOptions };
352
+ export { ClrCombobox, ClrComboboxContainer, ClrComboboxModule, ClrOption, ClrOptionGroup, ClrOptionItems, ClrOptionSelected, ClrOptions, SELECT_ALL_ID };
353
+ export type { ClrComboboxIdentityFunction, ClrComboboxResolverFunction };
@@ -63,6 +63,15 @@ declare class ClrControlHelper extends ClrAbstractControl {
63
63
  static ɵcmp: i0.ɵɵComponentDeclaration<ClrControlHelper, "clr-control-helper", never, {}, {}, never, ["*"], false, never>;
64
64
  }
65
65
 
66
+ declare class ClrControlSuccess extends ClrAbstractControl {
67
+ protected controlIdService: ControlIdService;
68
+ protected containerIdService: ContainerIdService;
69
+ controlIdSuffix: string;
70
+ constructor(controlIdService: ControlIdService, containerIdService: ContainerIdService);
71
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClrControlSuccess, [{ optional: true; }, { optional: true; }]>;
72
+ static ɵcmp: i0.ɵɵComponentDeclaration<ClrControlSuccess, "clr-control-success", never, {}, {}, never, ["*"], false, never>;
73
+ }
74
+
66
75
  declare enum ClrFormLayout {
67
76
  VERTICAL = "vertical",
68
77
  HORIZONTAL = "horizontal",
@@ -143,15 +152,6 @@ declare class ControlClassService {
143
152
  static ɵprov: i0.ɵɵInjectableDeclaration<ControlClassService>;
144
153
  }
145
154
 
146
- declare class ClrControlSuccess extends ClrAbstractControl {
147
- protected controlIdService: ControlIdService;
148
- protected containerIdService: ContainerIdService;
149
- controlIdSuffix: string;
150
- constructor(controlIdService: ControlIdService, containerIdService: ContainerIdService);
151
- static ɵfac: i0.ɵɵFactoryDeclaration<ClrControlSuccess, [{ optional: true; }, { optional: true; }]>;
152
- static ɵcmp: i0.ɵɵComponentDeclaration<ClrControlSuccess, "clr-control-success", never, {}, {}, never, ["*"], false, never>;
153
- }
154
-
155
155
  declare abstract class ClrAbstractContainer implements OnDestroy {
156
156
  protected layoutService: LayoutService;
157
157
  protected controlClassService: ControlClassService;
@@ -121,6 +121,13 @@ interface DateRangeOption {
121
121
  }
122
122
 
123
123
  declare class DateIOService {
124
+ /**
125
+ * This is the default range. It approximates the beginning of time to the end of time.
126
+ * The disabled dates are the dates that are not allowed to be selected.
127
+ * The min date is the earliest date that can be selected.
128
+ * The max date is the latest date that can be selected.
129
+ * Unless a minDate or maxDate is set with the native HTML5 api the range is all dates
130
+ */
124
131
  disabledDates: DateRange;
125
132
  cldrLocaleDateFormat: string;
126
133
  minDateChange: Subject<DayModel>;
@@ -944,7 +951,7 @@ declare const CLR_DATEPICKER_DIRECTIVES: Type<any>[];
944
951
  declare class ClrDatepickerModule {
945
952
  constructor();
946
953
  static ɵfac: i0.ɵɵFactoryDeclaration<ClrDatepickerModule, never>;
947
- static ɵmod: i0.ɵɵNgModuleDeclaration<ClrDatepickerModule, [typeof ClrDateInput, typeof ClrDay, typeof ClrDateContainer, typeof ClrDateInputValidator, typeof ClrStartDateInput, typeof ClrEndDateInput, typeof ClrStartDateInputValidator, typeof ClrEndDateInputValidator, typeof ClrDatepickerViewManager, typeof ClrMonthpicker, typeof ClrYearpicker, typeof ClrDaypicker, typeof ClrCalendar, typeof ClrDatepickerActions], [typeof i13.CommonModule, typeof i14.CdkTrapFocusModule, typeof i14.ClrHostWrappingModule, typeof i14.ClrConditionalModule, typeof i1.ÇlrClrPopoverModuleNext, typeof i16.ClrIcon, typeof i17.ClrCommonFormsModule, typeof i18.ClrVerticalNavModule], [typeof ClrDateInput, typeof ClrDay, typeof ClrDateContainer, typeof ClrDateInputValidator, typeof ClrStartDateInput, typeof ClrEndDateInput, typeof ClrStartDateInputValidator, typeof ClrEndDateInputValidator, typeof ClrDatepickerViewManager, typeof ClrMonthpicker, typeof ClrYearpicker, typeof ClrDaypicker, typeof ClrCalendar, typeof ClrDatepickerActions]>;
954
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ClrDatepickerModule, [typeof ClrDateInput, typeof ClrDay, typeof ClrDateContainer, typeof ClrDateInputValidator, typeof ClrStartDateInput, typeof ClrEndDateInput, typeof ClrStartDateInputValidator, typeof ClrEndDateInputValidator, typeof ClrDatepickerViewManager, typeof ClrMonthpicker, typeof ClrYearpicker, typeof ClrDaypicker, typeof ClrCalendar, typeof ClrDatepickerActions], [typeof i13.CommonModule, typeof i14.CdkTrapFocusModule, typeof i14.ClrHostWrappingModule, typeof i14.ClrConditionalModule, typeof i1.ClrPopoverModuleNext, typeof i16.ClrIcon, typeof i17.ClrCommonFormsModule, typeof i18.ClrVerticalNavModule], [typeof ClrDateInput, typeof ClrDay, typeof ClrDateContainer, typeof ClrDateInputValidator, typeof ClrStartDateInput, typeof ClrEndDateInput, typeof ClrStartDateInputValidator, typeof ClrEndDateInputValidator, typeof ClrDatepickerViewManager, typeof ClrMonthpicker, typeof ClrYearpicker, typeof ClrDaypicker, typeof ClrCalendar, typeof ClrDatepickerActions]>;
948
955
  static ɵinj: i0.ɵɵInjectorDeclaration<ClrDatepickerModule>;
949
956
  }
950
957
 
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { TemplateRef, ElementRef, Injector, Renderer2, ViewContainerRef, InjectionToken } from '@angular/core';
2
+ import { TemplateRef, Injector, ElementRef, Renderer2, ViewContainerRef, InjectionToken } from '@angular/core';
3
3
  import { NgControl, Validator, AbstractControl, ValidationErrors, ControlValueAccessor } from '@angular/forms';
4
4
  import * as i10 from '@clr/angular/forms/common';
5
5
  import { ClrAbstractContainer, WrappedFormControl } from '@clr/angular/forms/common';
@@ -79,6 +79,8 @@ declare class ClrFileMessagesTemplate {
79
79
 
80
80
  declare class ClrFileList {
81
81
  protected readonly fileMessagesTemplate: ClrFileMessagesTemplate;
82
+ protected injectorCache: Map<File, Injector>;
83
+ private contextCache;
82
84
  private readonly injector;
83
85
  private readonly commonStrings;
84
86
  private readonly ngControlService;
@@ -88,7 +90,8 @@ declare class ClrFileList {
88
90
  protected getClearFileLabel(filename: string): string;
89
91
  protected clearFile(fileToRemove: File): void;
90
92
  protected createFileMessagesTemplateContext(file: File): ClrFileMessagesTemplateContext;
91
- protected createFileMessagesTemplateInjector(fileMessagesTemplateContext: ClrFileMessagesTemplateContext): i0.DestroyableInjector;
93
+ private createFileMessagesTemplateInjector;
94
+ private errorsEqual;
92
95
  static ɵfac: i0.ɵɵFactoryDeclaration<ClrFileList, never>;
93
96
  static ɵcmp: i0.ɵɵComponentDeclaration<ClrFileList, "clr-file-list", never, {}, {}, ["fileMessagesTemplate"], never, false, never>;
94
97
  }
@@ -128,7 +131,6 @@ declare class ClrFileInput extends WrappedFormControl<ClrFileInputContainer> {
128
131
  private readonly commonStrings;
129
132
  selection: ClrFileInputSelection;
130
133
  constructor(injector: Injector, renderer: Renderer2, viewContainerRef: ViewContainerRef, elementRef: ElementRef<HTMLInputElement>, control: NgControl, commonStrings: ClrCommonStringsService);
131
- protected get disabled(): boolean;
132
134
  private handleChange;
133
135
  private updateSelection;
134
136
  static ɵfac: i0.ɵɵFactoryDeclaration<ClrFileInput, [null, null, null, null, { optional: true; self: true; }, null]>;
@@ -153,6 +155,7 @@ declare class ClrFileInputValueAccessor implements ControlValueAccessor {
153
155
  writeValue(value: FileList): void;
154
156
  registerOnChange(fn: (value: FileList) => void): void;
155
157
  registerOnTouched(fn: () => void): void;
158
+ setDisabledState(isDisabled: boolean): void;
156
159
  private handleChange;
157
160
  private onChange;
158
161
  private onTouched;