@alauda/ui 6.2.0 → 6.2.1-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/alauda-ui.d.ts +3 -3
  2. package/alauda-ui.metadata.json +1 -1
  3. package/bundles/alauda-ui.umd.js +138 -29
  4. package/bundles/alauda-ui.umd.js.map +1 -1
  5. package/bundles/alauda-ui.umd.min.js +1 -1
  6. package/bundles/alauda-ui.umd.min.js.map +1 -1
  7. package/button/button.component.d.ts +1 -0
  8. package/checkbox/checkbox.component.d.ts +1 -1
  9. package/dropdown/dropdown.directive.d.ts +1 -0
  10. package/esm2015/accordion/accordion-item/accordion-item.component.ngfactory.js +2 -2
  11. package/esm2015/alauda-ui.js +4 -4
  12. package/esm2015/alauda-ui.ngsummary.json +1 -1
  13. package/esm2015/autocomplete/autocomplete.module.js +3 -1
  14. package/esm2015/autocomplete/autocomplete.module.ngfactory.js +1 -1
  15. package/esm2015/autocomplete/suggestion/suggestion.component.ngfactory.js +9 -8
  16. package/esm2015/back-top/back-top.component.ngfactory.js +2 -2
  17. package/esm2015/breadcrumb/breadcrumb-item.component.ngfactory.js +2 -2
  18. package/esm2015/button/button.component.js +7 -2
  19. package/esm2015/button/button.component.ngfactory.js +3 -3
  20. package/esm2015/button/button.component.ngsummary.json +1 -1
  21. package/esm2015/checkbox/checkbox-group/checkbox-group.component.ngfactory.js +1 -1
  22. package/esm2015/checkbox/checkbox-group/checkbox-group.component.ngsummary.json +1 -1
  23. package/esm2015/checkbox/checkbox.component.js +7 -6
  24. package/esm2015/checkbox/checkbox.component.ngfactory.js +3 -3
  25. package/esm2015/checkbox/checkbox.component.ngsummary.json +1 -1
  26. package/esm2015/color-picker/color-picker.component.ngfactory.js +1 -1
  27. package/esm2015/color-picker/color-picker.component.ngsummary.json +1 -1
  28. package/esm2015/date-picker/calendar/date-picker-panel/component.ngfactory.js +6 -6
  29. package/esm2015/date-picker/calendar/date-picker-panel/component.ngsummary.json +1 -1
  30. package/esm2015/date-picker/calendar/footer/component.ngfactory.js +5 -5
  31. package/esm2015/date-picker/calendar/header/component.ngfactory.js +9 -9
  32. package/esm2015/date-picker/calendar/panel/picker-panel.ngfactory.js +3 -3
  33. package/esm2015/date-picker/calendar/range-picker-panel/component.ngfactory.js +5 -5
  34. package/esm2015/date-picker/calendar/range-picker-panel/component.ngsummary.json +1 -1
  35. package/esm2015/date-picker/date-picker/date-picker.component.ngfactory.js +4 -4
  36. package/esm2015/date-picker/date-picker/date-picker.component.ngsummary.json +1 -1
  37. package/esm2015/date-picker/range-picker/range-picker.component.ngfactory.js +4 -4
  38. package/esm2015/date-picker/range-picker/range-picker.component.ngsummary.json +1 -1
  39. package/esm2015/date-picker/trigger/trigger.component.ngfactory.js +9 -9
  40. package/esm2015/dialog/confirm-dialog/confirm-dialog.component.ngfactory.js +5 -5
  41. package/esm2015/dialog/dialog-content/dialog-header.component.ngfactory.js +2 -2
  42. package/esm2015/dialog/dialog.component.js +2 -2
  43. package/esm2015/dialog/dialog.component.ngfactory.js +2 -2
  44. package/esm2015/drawer/component/drawer.component.ngfactory.js +2 -2
  45. package/esm2015/dropdown/dropdown-button/dropdown-button.component.js +2 -2
  46. package/esm2015/dropdown/dropdown-button/dropdown-button.component.ngfactory.js +3 -3
  47. package/esm2015/dropdown/dropdown.directive.js +8 -2
  48. package/esm2015/dropdown/dropdown.directive.ngsummary.json +1 -1
  49. package/esm2015/dropdown/submenu/submenu.component.ngfactory.js +2 -2
  50. package/esm2015/form/common-form.js +12 -4
  51. package/esm2015/form/common-form.ngsummary.json +1 -1
  52. package/esm2015/icon/icon.component.js +4 -4
  53. package/esm2015/icon/icon.component.ngfactory.js +4 -4
  54. package/esm2015/icon/icon.component.ngsummary.json +1 -1
  55. package/esm2015/icon/icon.module.ngfactory.js +1 -1
  56. package/esm2015/inline-alert/inline-alert.component.ngfactory.js +4 -4
  57. package/esm2015/input/input.component.js +9 -2
  58. package/esm2015/input/input.component.ngfactory.js +1 -1
  59. package/esm2015/input/input.component.ngsummary.json +1 -1
  60. package/esm2015/input/number-input/number-input.component.ngfactory.js +6 -6
  61. package/esm2015/input/number-input/number-input.component.ngsummary.json +1 -1
  62. package/esm2015/input/search/search.component.ngfactory.js +6 -6
  63. package/esm2015/input/tags-input/tags-input.component.js +5 -4
  64. package/esm2015/input/tags-input/tags-input.component.ngfactory.js +1 -1
  65. package/esm2015/input/tags-input/tags-input.component.ngsummary.json +1 -1
  66. package/esm2015/message/message.component.ngfactory.js +2 -2
  67. package/esm2015/notification/notification.component.ngfactory.js +3 -3
  68. package/esm2015/paginator/paginator.component.js +1 -1
  69. package/esm2015/paginator/paginator.component.ngfactory.js +18 -18
  70. package/esm2015/paginator/paginator.component.scss.ngstyle.js +1 -1
  71. package/esm2015/public-api.ngsummary.json +1 -1
  72. package/esm2015/radio/base-radio.js +6 -2
  73. package/esm2015/radio/base-radio.ngsummary.json +1 -1
  74. package/esm2015/radio/radio-button/radio-button.component.ngfactory.js +3 -3
  75. package/esm2015/radio/radio-button/radio-button.component.ngsummary.json +1 -1
  76. package/esm2015/radio/radio-group/radio-group.component.ngfactory.js +1 -1
  77. package/esm2015/radio/radio-group/radio-group.component.ngsummary.json +1 -1
  78. package/esm2015/radio/radio.component.ngfactory.js +1 -1
  79. package/esm2015/radio/radio.component.ngsummary.json +1 -1
  80. package/esm2015/select/multi-select/multi-select.component.js +6 -5
  81. package/esm2015/select/multi-select/multi-select.component.ngfactory.js +7 -7
  82. package/esm2015/select/multi-select/multi-select.component.ngsummary.json +1 -1
  83. package/esm2015/select/option/option.component.js +6 -2
  84. package/esm2015/select/option/option.component.ngfactory.js +3 -3
  85. package/esm2015/select/option/option.component.ngsummary.json +1 -1
  86. package/esm2015/select/select.component.js +2 -2
  87. package/esm2015/select/select.component.ngfactory.js +7 -7
  88. package/esm2015/select/select.component.ngsummary.json +1 -1
  89. package/esm2015/steps/steps.component.ngfactory.js +3 -3
  90. package/esm2015/switch/switch.component.ngfactory.js +1 -1
  91. package/esm2015/switch/switch.component.ngsummary.json +1 -1
  92. package/esm2015/table/table-cell.component.ngfactory.js +2 -2
  93. package/esm2015/tabs/tab-group.component.ngfactory.js +3 -3
  94. package/esm2015/tabs/tab-header.component.ngfactory.js +3 -3
  95. package/esm2015/tag/tag.component.ngfactory.js +3 -3
  96. package/esm2015/theme/public-api.js +2 -2
  97. package/esm2015/theme/public-api.ngsummary.json +1 -1
  98. package/esm2015/theme/theme-picker.pipe.js +36 -0
  99. package/esm2015/theme/{theme.pipe.ngsummary.json → theme-picker.pipe.ngsummary.json} +1 -1
  100. package/esm2015/theme/theme.module.js +2 -2
  101. package/esm2015/theme/theme.module.ngfactory.js +1 -1
  102. package/esm2015/theme/theme.module.ngsummary.json +1 -1
  103. package/esm2015/theme/theme.types.js +1 -1
  104. package/esm2015/time-picker/component.ngfactory.js +8 -8
  105. package/esm2015/time-picker/component.ngsummary.json +1 -1
  106. package/esm2015/time-picker/panel/panel.component.js +5 -4
  107. package/esm2015/time-picker/panel/panel.component.ngfactory.js +5 -5
  108. package/esm2015/time-picker/panel/panel.component.ngsummary.json +1 -1
  109. package/esm2015/tree-select/tree-node/tree-node.component.ngfactory.js +4 -4
  110. package/esm2015/tree-select/tree-select.component.ngfactory.js +5 -5
  111. package/esm2015/tree-select/tree-select.component.ngsummary.json +1 -1
  112. package/esm2015/utils/e2e-attribute-binding.directive.js +34 -0
  113. package/esm2015/utils/e2e-attribute-binding.directive.ngsummary.json +1 -0
  114. package/esm2015/utils/fn.js +10 -1
  115. package/esm2015/utils/fn.ngsummary.json +1 -1
  116. package/esm2015/utils/index.js +2 -1
  117. package/esm2015/utils/index.ngsummary.json +1 -1
  118. package/fesm2015/alauda-ui.js +109 -28
  119. package/fesm2015/alauda-ui.js.map +1 -1
  120. package/form/common-form.d.ts +4 -2
  121. package/input/input.component.d.ts +1 -0
  122. package/input/tags-input/tags-input.component.d.ts +1 -1
  123. package/package.json +1 -1
  124. package/radio/base-radio.d.ts +1 -0
  125. package/select/multi-select/multi-select.component.d.ts +1 -1
  126. package/select/option/option.component.d.ts +1 -0
  127. package/theme/public-api.d.ts +1 -1
  128. package/theme/{theme.pipe.d.ts → theme-picker.pipe.d.ts} +0 -0
  129. package/theme/theme.types.d.ts +1 -1
  130. package/time-picker/panel/panel.component.d.ts +1 -1
  131. package/utils/e2e-attribute-binding.directive.d.ts +7 -0
  132. package/utils/fn.d.ts +1 -0
  133. package/utils/index.d.ts +1 -0
  134. package/esm2015/theme/theme.pipe.js +0 -33
@@ -1,4 +1,4 @@
1
- import { TemplateRef, ɵɵdefineInjectable, Injectable, Pipe, ChangeDetectorRef, NgModule, Optional, Inject, SkipSelf, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Directive, EventEmitter, Output, ElementRef, ViewContainerRef, HostBinding, ViewChild, ContentChild, Host, isDevMode, Renderer2, NgZone, HostListener, InjectionToken, Injector, ContentChildren, forwardRef, ɵɵinject, ApplicationRef, ComponentFactoryResolver, ViewChildren, Type } from '@angular/core';
1
+ import { TemplateRef, Directive, ElementRef, ɵɵdefineInjectable, Injectable, Pipe, ChangeDetectorRef, NgModule, Optional, Inject, SkipSelf, Component, ViewEncapsulation, ChangeDetectionStrategy, HostBinding, Input, EventEmitter, Output, ViewContainerRef, ViewChild, ContentChild, Host, isDevMode, Renderer2, NgZone, HostListener, InjectionToken, Injector, ContentChildren, forwardRef, ɵɵinject, ApplicationRef, ComponentFactoryResolver, ViewChildren, Type } from '@angular/core';
2
2
  import { Observable, ReplaySubject, Subject, merge, fromEvent, BehaviorSubject, combineLatest, of, Subscription, EMPTY, animationFrameScheduler } from 'rxjs';
3
3
  import { startWith, map, publishReplay, refCount, distinctUntilChanged, takeUntil, switchMap, throttleTime, debounceTime, first, tap, take, pluck, observeOn, repeat, takeWhile, endWith, filter } from 'rxjs/operators';
4
4
  import { CdkCellDef, CdkCell, CdkColumnDef, CdkHeaderCellDef, CdkHeaderCell, CdkHeaderRowDef, CdkHeaderRow, CDK_ROW_TEMPLATE, CdkRowDef, CdkRow, CdkTable, CDK_TABLE_TEMPLATE, CDK_TABLE, _COALESCED_STYLE_SCHEDULER, _CoalescedStyleScheduler, CdkTableModule } from '@angular/cdk/table';
@@ -103,6 +103,15 @@ function isUndefined(val) {
103
103
  const last = (values) => values === null || values === void 0 ? void 0 : values[values.length - 1];
104
104
  const isTemplateRef = (label) => label instanceof TemplateRef;
105
105
  const handlePixel = (value) => Number.isNaN(+value) ? value : value + 'px';
106
+ const simplifyStringToTestId = (input) => {
107
+ if (!input)
108
+ return '';
109
+ return input
110
+ .replaceAll('\r', '')
111
+ .replaceAll('\n', '')
112
+ .replaceAll('\\s', '')
113
+ .replaceAll(' ', '');
114
+ };
106
115
 
107
116
  const observeResizeOn = (target, options) => new Observable(observer => {
108
117
  const resizeObserver = new ResizeObserver(entries => {
@@ -147,6 +156,38 @@ function watchContentExist(queryList) {
147
156
  return queryList.changes.pipe(startWith(queryList), map((list) => !!list.length), publishReplay(1), refCount());
148
157
  }
149
158
 
159
+ const simplifyString = (str) => str
160
+ .replaceAll('\r', '')
161
+ .replaceAll('\n', '')
162
+ .replaceAll('\\s', '')
163
+ .replaceAll(' ', '');
164
+ const ɵ0 = simplifyString;
165
+ class E2eAttributeBindingDirective {
166
+ constructor(el) {
167
+ this.el = el;
168
+ }
169
+ ngAfterViewInit() {
170
+ this.setId();
171
+ }
172
+ setId() {
173
+ const currentAttr = simplifyString(this.el.nativeElement.getAttribute('data-test') ||
174
+ simplifyString(this.el.nativeElement.nodeName +
175
+ '/' +
176
+ this.el.nativeElement.textContent));
177
+ if (currentAttr !== this.el.nativeElement.getAttribute('data-test')) {
178
+ this.el.nativeElement.dataset.test = currentAttr;
179
+ }
180
+ }
181
+ }
182
+ E2eAttributeBindingDirective.decorators = [
183
+ { type: Directive, args: [{
184
+ selector: '[click]',
185
+ },] }
186
+ ];
187
+ E2eAttributeBindingDirective.ctorParameters = () => [
188
+ { type: ElementRef }
189
+ ];
190
+
150
191
  class ThemeService {
151
192
  constructor() {
152
193
  this.currentAppTheme$$ = new ReplaySubject(1);
@@ -209,6 +250,9 @@ class ThemePickerPipe {
209
250
  if (v instanceof Function) {
210
251
  return v(this.currentTheme);
211
252
  }
253
+ if (Array.isArray(v)) {
254
+ return v[this.currentTheme === 'light' ? 0 : 1];
255
+ }
212
256
  return v[this.currentTheme];
213
257
  }
214
258
  ngOnDestroy() {
@@ -338,7 +382,7 @@ class IconComponent {
338
382
  IconComponent.decorators = [
339
383
  { type: Component, args: [{
340
384
  selector: 'aui-icon',
341
- template: "<svg\n *ngIf=\"icon === 'spinner'; else icons\"\n [attr.class]=\"getClass('aui-icon-spinner')\"\n [style.fill]=\"color\"\n [style.width]=\"getWidth()\"\n [style.height]=\"getHeight()\"\n viewBox=\"0 0 200 200\"\n>\n <defs>\n <linearGradient\n [attr.id]=\"'right-' + id\"\n gradientUnits=\"userSpaceOnUse\"\n x1=\"150\"\n y1=\"20\"\n x2=\"150\"\n y2=\"180\"\n >\n <stop offset=\"0\" style=\"stop-color: #000\" />\n <stop offset=\"1\" style=\"stop-color: #808080\" />\n </linearGradient>\n <linearGradient\n [attr.id]=\"'left-' + id\"\n gradientUnits=\"userSpaceOnUse\"\n x1=\"50\"\n y1=\"0\"\n x2=\"50\"\n y2=\"180\"\n >\n <stop offset=\"0\" style=\"stop-color: #fff\" />\n <stop offset=\"1\" style=\"stop-color: #808080\" />\n </linearGradient>\n <mask [attr.id]=\"'mask-' + id\">\n <g>\n <path\n [attr.fill]=\"'url(#right-' + id + ')'\"\n d=\"M100,0v20c44.1,0,80,35.9,80,80c0,44.1-35.9,80-80,80v20c55.2,0,100-44.8,100-100S155.2,0,100,0z\"\n />\n <path\n [attr.fill]=\"'url(#left-' + id + ')'\"\n d=\"M20,100c0-44.1,35.9-80,80-80V0C44.8,0,0,44.8,0,100s44.8,100,100,100v-20C55.9,180,20,144.1,20,100z\"\n />\n </g>\n </mask>\n </defs>\n <rect\n x=\"0\"\n y=\"0\"\n width=\"200\"\n height=\"200\"\n [attr.mask]=\"'url(#mask-' + id + ')'\"\n />\n</svg>\n\n<ng-template #icons>\n <svg\n *ngIf=\"\n getIconId(\n icon ? icon : ({ light: light, dark: dark } | auiThemePicker)\n ) as iconId\n \"\n [attr.class]=\"getClass(iconId)\"\n [style.fill]=\"color\"\n [style.width]=\"getWidth()\"\n [style.height]=\"getHeight()\"\n >\n <use [attr.xlink:href]=\"link + '#' + iconId\"></use>\n </svg>\n</ng-template>\n",
385
+ template: "<svg\n *ngIf=\"icon === 'spinner'; else icons\"\n [attr.class]=\"getClass('aui-icon-spinner')\"\n [style.fill]=\"color\"\n [style.width]=\"getWidth()\"\n [style.height]=\"getHeight()\"\n viewBox=\"0 0 200 200\"\n>\n <defs>\n <linearGradient\n [attr.id]=\"'right-' + id\"\n gradientUnits=\"userSpaceOnUse\"\n x1=\"150\"\n y1=\"20\"\n x2=\"150\"\n y2=\"180\"\n >\n <stop offset=\"0\" style=\"stop-color: #000\" />\n <stop offset=\"1\" style=\"stop-color: #808080\" />\n </linearGradient>\n <linearGradient\n [attr.id]=\"'left-' + id\"\n gradientUnits=\"userSpaceOnUse\"\n x1=\"50\"\n y1=\"0\"\n x2=\"50\"\n y2=\"180\"\n >\n <stop offset=\"0\" style=\"stop-color: #fff\" />\n <stop offset=\"1\" style=\"stop-color: #808080\" />\n </linearGradient>\n <mask [attr.id]=\"'mask-' + id\">\n <g>\n <path\n [attr.fill]=\"'url(#right-' + id + ')'\"\n d=\"M100,0v20c44.1,0,80,35.9,80,80c0,44.1-35.9,80-80,80v20c55.2,0,100-44.8,100-100S155.2,0,100,0z\"\n />\n <path\n [attr.fill]=\"'url(#left-' + id + ')'\"\n d=\"M20,100c0-44.1,35.9-80,80-80V0C44.8,0,0,44.8,0,100s44.8,100,100,100v-20C55.9,180,20,144.1,20,100z\"\n />\n </g>\n </mask>\n </defs>\n <rect\n x=\"0\"\n y=\"0\"\n width=\"200\"\n height=\"200\"\n [attr.mask]=\"'url(#mask-' + id + ')'\"\n />\n</svg>\n\n<ng-template #icons>\n <svg\n *ngIf=\"getIconId(icon ? icon : ([light, dark] | auiThemePicker)) as iconId\"\n [attr.class]=\"getClass(iconId)\"\n [style.fill]=\"color\"\n [style.width]=\"getWidth()\"\n [style.height]=\"getHeight()\"\n >\n <use [attr.xlink:href]=\"link + '#' + iconId\"></use>\n </svg>\n</ng-template>\n",
342
386
  encapsulation: ViewEncapsulation.None,
343
387
  changeDetection: ChangeDetectionStrategy.OnPush,
344
388
  preserveWhitespaces: false,
@@ -349,7 +393,7 @@ IconComponent.ctorParameters = () => [
349
393
  { type: IconRegisterService }
350
394
  ];
351
395
  IconComponent.propDecorators = {
352
- icon: [{ type: Input }],
396
+ icon: [{ type: HostBinding, args: ['attr.data-test',] }, { type: Input }],
353
397
  light: [{ type: Input }],
354
398
  dark: [{ type: Input }],
355
399
  link: [{ type: Input }],
@@ -1083,6 +1127,9 @@ class ButtonComponent {
1083
1127
  this.renderer.addClass(this.el.nativeElement, prefix + this.size);
1084
1128
  this.focusMonitor.monitor(this.el.nativeElement, false);
1085
1129
  }
1130
+ get testId() {
1131
+ return ('AUI-BUTTON/' + simplifyStringToTestId(this.el.nativeElement.textContent));
1132
+ }
1086
1133
  get type() {
1087
1134
  return this._type;
1088
1135
  }
@@ -1178,6 +1225,7 @@ ButtonComponent.ctorParameters = () => [
1178
1225
  { type: FocusMonitor }
1179
1226
  ];
1180
1227
  ButtonComponent.propDecorators = {
1228
+ testId: [{ type: HostBinding, args: ['attr.data-test',] }],
1181
1229
  type: [{ type: Input, args: ['aui-button',] }],
1182
1230
  size: [{ type: Input }],
1183
1231
  plain: [{ type: Input }],
@@ -2154,7 +2202,7 @@ class DialogComponent {
2154
2202
  DialogComponent.decorators = [
2155
2203
  { type: Component, args: [{
2156
2204
  selector: 'aui-dialog',
2157
- template: "<div [ngClass]=\"rootClass\" [ngStyle]=\"customStyle\">\n <ng-template cdkPortalOutlet></ng-template>\n</div>\n",
2205
+ template: "<div [ngClass]=\"rootClass\" [ngStyle]=\"customStyle\" data-test=\"AUI-DIALOG\">\n <ng-template cdkPortalOutlet></ng-template>\n</div>\n",
2158
2206
  encapsulation: ViewEncapsulation.None,
2159
2207
  // tslint:disable-next-line:validate-decorators
2160
2208
  changeDetection: ChangeDetectionStrategy.Default,
@@ -2674,8 +2722,9 @@ FormModule.decorators = [
2674
2722
  */
2675
2723
  // tslint:disable-next-line:directive-class-suffix
2676
2724
  class CommonFormControl {
2677
- constructor(cdr) {
2725
+ constructor(cdr, elementRef) {
2678
2726
  this.cdr = cdr;
2727
+ this.elementRef = elementRef;
2679
2728
  this.valueChange = new EventEmitter();
2680
2729
  this.value$$ = new ReplaySubject(1);
2681
2730
  this._disabled = false;
@@ -2690,6 +2739,11 @@ class CommonFormControl {
2690
2739
  set disabled(val) {
2691
2740
  this._disabled = coerceAttrBoolean(val);
2692
2741
  }
2742
+ get testId() {
2743
+ return ('AUI-FORM-CONTROL/' +
2744
+ (this.elementRef.nativeElement.getAttribute('formControlName') ||
2745
+ this.elementRef.nativeElement.getAttribute('name')));
2746
+ }
2693
2747
  get readonly() {
2694
2748
  return this.disabled;
2695
2749
  }
@@ -2740,10 +2794,12 @@ CommonFormControl.decorators = [
2740
2794
  { type: Directive }
2741
2795
  ];
2742
2796
  CommonFormControl.ctorParameters = () => [
2743
- { type: ChangeDetectorRef }
2797
+ { type: ChangeDetectorRef },
2798
+ { type: ElementRef }
2744
2799
  ];
2745
2800
  CommonFormControl.propDecorators = {
2746
2801
  disabled: [{ type: Input }],
2802
+ testId: [{ type: HostBinding, args: ['attr.data-test',] }],
2747
2803
  readonly: [{ type: Input }],
2748
2804
  propValue: [{ type: Input, args: ['value',] }],
2749
2805
  valueChange: [{ type: Output }]
@@ -2849,6 +2905,9 @@ class BaseRadio {
2849
2905
  this._value = val;
2850
2906
  this.value$$.next(val);
2851
2907
  }
2908
+ get _testId() {
2909
+ return 'AUI-RADIO/' + this.value;
2910
+ }
2852
2911
  ngOnInit() {
2853
2912
  this.radioGroup.name$.pipe(takeUntil(this.destroy$$)).subscribe(name => {
2854
2913
  this.name = name;
@@ -2889,6 +2948,7 @@ BaseRadio.ctorParameters = () => [
2889
2948
  BaseRadio.propDecorators = {
2890
2949
  disabled: [{ type: Input }],
2891
2950
  value: [{ type: Input }],
2951
+ _testId: [{ type: HostBinding, args: ['attr.data-test',] }],
2892
2952
  elRef: [{ type: ViewChild, args: ['elRef', { static: true },] }]
2893
2953
  };
2894
2954
 
@@ -3080,8 +3140,8 @@ CheckboxGroupComponent.propDecorators = {
3080
3140
 
3081
3141
  let uniqueId$2 = 0;
3082
3142
  class CheckboxComponent extends CommonFormControl {
3083
- constructor(cdr, checkboxGroup, focusMonitor) {
3084
- super(cdr);
3143
+ constructor(cdr, checkboxGroup, focusMonitor, elementRef) {
3144
+ super(cdr, elementRef);
3085
3145
  this.focusMonitor = focusMonitor;
3086
3146
  this.id = `aui-checkbox-${uniqueId$2++}`;
3087
3147
  this.name = '';
@@ -3166,12 +3226,13 @@ CheckboxComponent.decorators = [
3166
3226
  CheckboxComponent.ctorParameters = () => [
3167
3227
  { type: ChangeDetectorRef },
3168
3228
  { type: CheckboxGroupComponent, decorators: [{ type: Optional }, { type: Inject, args: [forwardRef(() => CheckboxGroupComponent),] }] },
3169
- { type: FocusMonitor }
3229
+ { type: FocusMonitor },
3230
+ { type: ElementRef }
3170
3231
  ];
3171
3232
  CheckboxComponent.propDecorators = {
3172
3233
  name: [{ type: Input }],
3173
3234
  type: [{ type: Input }],
3174
- label: [{ type: Input }],
3235
+ label: [{ type: HostBinding, args: ['attr.data-test',] }, { type: Input }],
3175
3236
  indeterminate: [{ type: Input }],
3176
3237
  elRef: [{ type: ViewChild, args: ['elRef', { static: true },] }]
3177
3238
  };
@@ -3201,6 +3262,12 @@ class InputComponent {
3201
3262
  this.renderer.addClass(this.elementRef.nativeElement, 'aui-input');
3202
3263
  this.renderer.addClass(this.elementRef.nativeElement, 'aui-input--' + this.size);
3203
3264
  }
3265
+ get testId() {
3266
+ return ('AUI-INPUT/' +
3267
+ (this.elementRef.nativeElement.getAttribute('formcontrolname') ||
3268
+ this.elementRef.nativeElement.getAttribute('name') ||
3269
+ ''));
3270
+ }
3204
3271
  get size() {
3205
3272
  return this._size;
3206
3273
  }
@@ -3247,6 +3314,7 @@ InputComponent.ctorParameters = () => [
3247
3314
  { type: Renderer2 }
3248
3315
  ];
3249
3316
  InputComponent.propDecorators = {
3317
+ testId: [{ type: HostBinding, args: ['attr.data-test',] }],
3250
3318
  size: [{ type: Input }],
3251
3319
  disabled: [{ type: Input }]
3252
3320
  };
@@ -3422,8 +3490,8 @@ function createWithMaxRowCount(component) {
3422
3490
 
3423
3491
  const INPUT_ERROR_KEY = 'input_data_error';
3424
3492
  class TagsInputComponent extends CommonFormControl {
3425
- constructor(cdr, fb, renderer, injector) {
3426
- super(cdr);
3493
+ constructor(cdr, fb, renderer, injector, elementRef) {
3494
+ super(cdr, elementRef);
3427
3495
  this.fb = fb;
3428
3496
  this.renderer = renderer;
3429
3497
  this.injector = injector;
@@ -3646,7 +3714,8 @@ TagsInputComponent.ctorParameters = () => [
3646
3714
  { type: ChangeDetectorRef },
3647
3715
  { type: FormBuilder },
3648
3716
  { type: Renderer2 },
3649
- { type: Injector }
3717
+ { type: Injector },
3718
+ { type: ElementRef }
3650
3719
  ];
3651
3720
  TagsInputComponent.propDecorators = {
3652
3721
  placeholder: [{ type: Input }],
@@ -4179,6 +4248,10 @@ class DropdownDirective extends BaseTooltip {
4179
4248
  this.position = 'bottom end';
4180
4249
  this.trigger = TooltipTrigger.Click;
4181
4250
  }
4251
+ get testId() {
4252
+ return ('AUI-DROPDOWN/' +
4253
+ simplifyStringToTestId(this.elRef.nativeElement.textContent));
4254
+ }
4182
4255
  get menu() {
4183
4256
  return this._menu;
4184
4257
  }
@@ -4230,6 +4303,7 @@ DropdownDirective.ctorParameters = () => [
4230
4303
  { type: NgZone }
4231
4304
  ];
4232
4305
  DropdownDirective.propDecorators = {
4306
+ testId: [{ type: HostBinding, args: ['attr.data-test',] }],
4233
4307
  menu: [{ type: Input, args: ['auiDropdown',] }],
4234
4308
  lazyContentContext: [{ type: Input, args: ['auiDropdownContext',] }],
4235
4309
  hideOnClick: [{ type: Input, args: ['auiDropdownHideOnClick',] }],
@@ -4382,7 +4456,7 @@ class DropdownButtonComponent {
4382
4456
  DropdownButtonComponent.decorators = [
4383
4457
  { type: Component, args: [{
4384
4458
  selector: 'aui-dropdown-button',
4385
- template: "<div [class]=\"bem.block(size)\">\n <button\n type=\"button\"\n class=\"aui-dropdown-button__content\"\n [aui-button]=\"type\"\n [plain]=\"plain\"\n [size]=\"size\"\n [loading]=\"loading\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick.emit($event)\"\n >\n <ng-content></ng-content>\n </button>\n <button\n type=\"button\"\n class=\"aui-dropdown-button__trigger\"\n [aui-button]=\"type\"\n [plain]=\"plain\"\n [size]=\"size\"\n [auiDropdown]=\"menu\"\n [disabled]=\"disableTrigger\"\n >\n <aui-icon icon=\"angle_down\"></aui-icon>\n </button>\n</div>\n",
4459
+ template: "<div [class]=\"bem.block(size)\">\n <button\n type=\"button\"\n class=\"aui-dropdown-button__content\"\n [aui-button]=\"type\"\n [plain]=\"plain\"\n [size]=\"size\"\n [loading]=\"loading\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick.emit($event)\"\n data-test=\"DROPDOWN-BUTTON/\"\n >\n <ng-content></ng-content>\n </button>\n <button\n type=\"button\"\n class=\"aui-dropdown-button__trigger\"\n [aui-button]=\"type\"\n [plain]=\"plain\"\n [size]=\"size\"\n [auiDropdown]=\"menu\"\n [disabled]=\"disableTrigger\"\n >\n <aui-icon icon=\"angle_down\"></aui-icon>\n </button>\n</div>\n",
4386
4460
  changeDetection: ChangeDetectionStrategy.OnPush,
4387
4461
  encapsulation: ViewEncapsulation.None,
4388
4462
  preserveWhitespaces: false,
@@ -4546,6 +4620,9 @@ class OptionComponent {
4546
4620
  this._label = val;
4547
4621
  this.label$$.next(val);
4548
4622
  }
4623
+ get testId() {
4624
+ return 'AUI-OPTION/' + (this.label || this.value);
4625
+ }
4549
4626
  get labelContext() {
4550
4627
  return this._labelContext;
4551
4628
  }
@@ -4600,6 +4677,7 @@ OptionComponent.ctorParameters = () => [
4600
4677
  ];
4601
4678
  OptionComponent.propDecorators = {
4602
4679
  label: [{ type: Input }],
4680
+ testId: [{ type: HostBinding, args: ['attr.data-test',] }],
4603
4681
  labelContext: [{ type: Input }],
4604
4682
  value: [{ type: Input }],
4605
4683
  disabled: [{ type: Input }],
@@ -4916,8 +4994,8 @@ var SelectAllStatus;
4916
4994
  })(SelectAllStatus || (SelectAllStatus = {}));
4917
4995
 
4918
4996
  class MultiSelectComponent extends BaseSelect {
4919
- constructor(cdr, renderer) {
4920
- super(cdr);
4997
+ constructor(cdr, renderer, elementRef) {
4998
+ super(cdr, elementRef);
4921
4999
  this.renderer = renderer;
4922
5000
  this.bem = buildBem('aui-multi-select');
4923
5001
  this.bemSelectAll = buildBem('aui-option');
@@ -5149,7 +5227,7 @@ class MultiSelectComponent extends BaseSelect {
5149
5227
  MultiSelectComponent.decorators = [
5150
5228
  { type: Component, args: [{
5151
5229
  selector: 'aui-multi-select',
5152
- template: "<div\n [class]=\"rootClass\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n [auiTooltipDisabled]=\"disabled\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipShow)=\"onShowOptions()\"\n (auiTooltipHide)=\"onHideOptions()\"\n (mousedown)=\"$event.preventDefault()\"\n [style.max-height]=\"maxHeight\"\n>\n <div class=\"aui-multi-select__suffix\">\n <span class=\"aui-multi-select__icon-container\">\n <aui-icon\n class=\"aui-multi-select__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-multi-select__clear\"\n icon=\"close_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n </div>\n <span\n [hidden]=\"selectedValues.length || inputRef.value.length\"\n [class]=\"bem.element('placeholder')\"\n >\n {{ placeholder }}\n </span>\n <aui-tag\n *ngFor=\"let option of selectedOptions$ | async; trackBy: trackByValue\"\n type=\"info\"\n [round]=\"true\"\n [border]=\"true\"\n [size]=\"tagSize\"\n [closeable]=\"!disabled\"\n (close)=\"removeValue(option.value)\"\n [ngClass]=\"tagClassFn && tagClassFn(option.label, option.value)\"\n >\n <ng-container\n *ngIf=\"isTemplateRef(option.label); else label\"\n [ngTemplateOutlet]=\"option.label\"\n [ngTemplateOutletContext]=\"option.labelContext\"\n ></ng-container>\n <ng-template #label>\n {{ option.label }}\n </ng-template>\n </aui-tag>\n <input\n #inputRef\n autocomplete=\"off\"\n [readonly]=\"inputReadonly\"\n [class]=\"inputClass\"\n (focus)=\"onInputFocus()\"\n (blur)=\"onInputBlur()\"\n (keydown)=\"onKeyDown($event)\"\n (input)=\"onInput($event)\"\n />\n <span #inputValueMirror [class]=\"bem.element('mirror')\">\n {{ inputValue }}\n </span>\n</div>\n\n<ng-template #templateRef>\n <div\n class=\"aui-option-container\"\n [style.minWidth]=\"containerWidth\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div #optionListRef class=\"aui-option-container__content\">\n <ng-container\n *ngIf=\"\n allowSelectAll &&\n (hasEnabledOptions$ | async) &&\n ((hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString))\n \"\n >\n <div\n class=\"aui-option\"\n [class]=\"bemSelectAll.block(size$ | async)\"\n [class.isDisabled]=\"disabled\"\n [class.isSelected]=\"!!(selectAllStatus$ | async)\"\n [class.isMulti]=\"true\"\n (click)=\"onSelectAllClick()\"\n >\n <i class=\"aui-option__pointer\">\n <aui-icon\n [icon]=\"\n (selectAllStatus$ | async) === 'checked'\n ? 'check_s'\n : 'square_s'\n \"\n [hidden]=\"!(selectAllStatus$ | async)\"\n ></aui-icon>\n </i>\n {{ 'select_all' | auiI18n }}\n </div>\n <hr class=\"divider\" />\n </ng-container>\n <aui-option\n #inputtingOption\n *ngIf=\"allowCreate && filterString && !(hasMatchedOption$ | async)\"\n [value]=\"filterString\"\n >\n {{ filterString }}\n </aui-option>\n <ng-container *ngIf=\"allowCreate\">\n <aui-option\n *ngFor=\"let option of customCreatedOptions$ | async\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n >\n {{ option.label }}\n </aui-option>\n </ng-container>\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"\n !(\n (hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString)\n )\n \"\n class=\"aui-option-container__placeholder\"\n >\n <ng-content select=\"aui-option-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n",
5230
+ template: "<div\n [class]=\"rootClass\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n [auiTooltipDisabled]=\"disabled\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipShow)=\"onShowOptions()\"\n (auiTooltipHide)=\"onHideOptions()\"\n (mousedown)=\"$event.preventDefault()\"\n [style.max-height]=\"maxHeight\"\n>\n <div class=\"aui-multi-select__suffix\">\n <span class=\"aui-multi-select__icon-container\">\n <aui-icon\n class=\"aui-multi-select__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-multi-select__clear\"\n icon=\"close_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n </div>\n <span\n [hidden]=\"selectedValues.length || inputRef.value.length\"\n [class]=\"bem.element('placeholder')\"\n >\n {{ placeholder }}\n </span>\n <aui-tag\n *ngFor=\"let option of selectedOptions$ | async; trackBy: trackByValue\"\n type=\"info\"\n [round]=\"true\"\n [border]=\"true\"\n [size]=\"tagSize\"\n [closeable]=\"!disabled\"\n (close)=\"removeValue(option.value)\"\n [ngClass]=\"tagClassFn && tagClassFn(option.label, option.value)\"\n >\n <ng-container\n *ngIf=\"isTemplateRef(option.label); else label\"\n [ngTemplateOutlet]=\"option.label\"\n [ngTemplateOutletContext]=\"option.labelContext\"\n ></ng-container>\n <ng-template #label>\n {{ option.label }}\n </ng-template>\n </aui-tag>\n <input\n #inputRef\n autocomplete=\"off\"\n [readonly]=\"inputReadonly\"\n [class]=\"inputClass\"\n (focus)=\"onInputFocus()\"\n (blur)=\"onInputBlur()\"\n (keydown)=\"onKeyDown($event)\"\n (input)=\"onInput($event)\"\n />\n <span #inputValueMirror [class]=\"bem.element('mirror')\">\n {{ inputValue }}\n </span>\n</div>\n\n<ng-template #templateRef>\n <div\n class=\"aui-option-container\"\n [style.minWidth]=\"containerWidth\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div #optionListRef class=\"aui-option-container__content\">\n <ng-container\n *ngIf=\"\n allowSelectAll &&\n (hasEnabledOptions$ | async) &&\n ((hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString))\n \"\n >\n <div\n class=\"aui-option\"\n [class]=\"bemSelectAll.block(size$ | async)\"\n [class.isDisabled]=\"disabled\"\n [class.isSelected]=\"!!(selectAllStatus$ | async)\"\n [class.isMulti]=\"true\"\n (click)=\"onSelectAllClick()\"\n >\n <i class=\"aui-option__pointer\">\n <aui-icon\n [icon]=\"\n (selectAllStatus$ | async) === 'checked'\n ? 'check_s'\n : 'square_s'\n \"\n [hidden]=\"!(selectAllStatus$ | async)\"\n ></aui-icon>\n </i>\n {{ 'select_all' | auiI18n }}\n </div>\n <hr class=\"divider\" />\n </ng-container>\n <aui-option\n #inputtingOption\n *ngIf=\"allowCreate && filterString && !(hasMatchedOption$ | async)\"\n [value]=\"filterString\"\n >\n {{ filterString }}\n </aui-option>\n <ng-container *ngIf=\"allowCreate\">\n <aui-option\n *ngFor=\"let option of customCreatedOptions$ | async\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n [attr.data-test]=\"'aui-option/' + option.label\"\n >AUI-FORM-CONTROL/\n {{ option.label }}\n </aui-option>\n </ng-container>\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"\n !(\n (hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString)\n )\n \"\n class=\"aui-option-container__placeholder\"\n >\n <ng-content select=\"aui-option-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n",
5153
5231
  changeDetection: ChangeDetectionStrategy.OnPush,
5154
5232
  encapsulation: ViewEncapsulation.None,
5155
5233
  preserveWhitespaces: false,
@@ -5169,7 +5247,8 @@ MultiSelectComponent.decorators = [
5169
5247
  ];
5170
5248
  MultiSelectComponent.ctorParameters = () => [
5171
5249
  { type: ChangeDetectorRef },
5172
- { type: Renderer2 }
5250
+ { type: Renderer2 },
5251
+ { type: ElementRef }
5173
5252
  ];
5174
5253
  MultiSelectComponent.propDecorators = {
5175
5254
  tagClassFn: [{ type: Input }],
@@ -5281,7 +5360,7 @@ class SelectComponent extends BaseSelect {
5281
5360
  SelectComponent.decorators = [
5282
5361
  { type: Component, args: [{
5283
5362
  selector: 'aui-select',
5284
- template: "<div\n [class]=\"rootClass\"\n [class.isDisabled]=\"disabled\"\n [class.isClearable]=\"isClearable(hasSelected$ | async)\"\n [class.isFilterable]=\"filterable\"\n [class.isOpened]=\"opened\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n [auiTooltipDisabled]=\"disabled\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipShow)=\"onShowOptions()\"\n (auiTooltipHide)=\"onHideOptions()\"\n>\n <aui-input-group>\n <input\n #inputRef\n class=\"aui-select__input\"\n autocomplete=\"off\"\n aui-input\n [disabled]=\"disabled\"\n [size]=\"size\"\n [readonly]=\"inputReadonly\"\n [placeholder]=\"!(hasSelected$ | async) ? placeholder : ''\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n (blur)=\"closeOption()\"\n />\n <span auiInputSuffix class=\"aui-select__icon-container\">\n <aui-icon\n class=\"aui-select__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-select__clear\"\n icon=\"close_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n <div\n *ngIf=\"(selectedOption$ | async) && !filterString\"\n class=\"aui-select__label-container aui-input aui-input--{{ size }}\"\n [attr.disabled]=\"disabled ? true : null\"\n >\n <div class=\"aui-select__label\">\n <ng-container *ngIf=\"(selectedOption$ | async).label as optionLabel\">\n <ng-container\n *ngIf=\"isTemplateRef(optionLabel); else label\"\n [ngTemplateOutlet]=\"optionLabel\"\n [ngTemplateOutletContext]=\"(selectedOption$ | async).labelContext\"\n ></ng-container>\n <ng-template #label>{{ optionLabel }}</ng-template>\n </ng-container>\n </div>\n </div>\n </aui-input-group>\n</div>\n\n<ng-template #templateRef>\n <div\n [class]=\"containerClass\"\n [style.minWidth]=\"containerWidth\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div #optionListRef class=\"aui-option-container__content\">\n <aui-option\n #inputtingOption\n *ngIf=\"allowCreate && filterString && !(hasMatchedOption$ | async)\"\n [value]=\"filterString\"\n >\n {{ filterString }}\n </aui-option>\n <ng-container *ngIf=\"allowCreate\">\n <aui-option\n *ngFor=\"let option of customCreatedOptions$ | async\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n >\n {{ option.label }}\n </aui-option>\n </ng-container>\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"\n !(\n (hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString)\n )\n \"\n class=\"aui-option-container__placeholder\"\n >\n <ng-content select=\"aui-option-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n",
5363
+ template: "<div\n [class]=\"rootClass\"\n [class.isDisabled]=\"disabled\"\n [class.isClearable]=\"isClearable(hasSelected$ | async)\"\n [class.isFilterable]=\"filterable\"\n [class.isOpened]=\"opened\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n [auiTooltipDisabled]=\"disabled\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipShow)=\"onShowOptions()\"\n (auiTooltipHide)=\"onHideOptions()\"\n>\n <aui-input-group>\n <input\n #inputRef\n class=\"aui-select__input\"\n autocomplete=\"off\"\n aui-input\n [disabled]=\"disabled\"\n [size]=\"size\"\n [readonly]=\"inputReadonly\"\n [placeholder]=\"!(hasSelected$ | async) ? placeholder : ''\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n (blur)=\"closeOption()\"\n />\n <span auiInputSuffix class=\"aui-select__icon-container\">\n <aui-icon\n class=\"aui-select__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-select__clear\"\n icon=\"close_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n <div\n *ngIf=\"(selectedOption$ | async) && !filterString\"\n class=\"aui-select__label-container aui-input aui-input--{{ size }}\"\n [attr.disabled]=\"disabled ? true : null\"\n >\n <div class=\"aui-select__label\">\n <ng-container *ngIf=\"(selectedOption$ | async).label as optionLabel\">\n <ng-container\n *ngIf=\"isTemplateRef(optionLabel); else label\"\n [ngTemplateOutlet]=\"optionLabel\"\n [ngTemplateOutletContext]=\"(selectedOption$ | async).labelContext\"\n ></ng-container>\n <ng-template #label>{{ optionLabel }}</ng-template>\n </ng-container>\n </div>\n </div>\n </aui-input-group>\n</div>\n\n<ng-template #templateRef>\n <div\n [class]=\"containerClass\"\n [style.minWidth]=\"containerWidth\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div #optionListRef class=\"aui-option-container__content\">\n <aui-option\n #inputtingOption\n *ngIf=\"allowCreate && filterString && !(hasMatchedOption$ | async)\"\n [value]=\"filterString\"\n >\n {{ filterString }}\n </aui-option>\n <ng-container *ngIf=\"allowCreate\">\n <aui-option\n *ngFor=\"let option of customCreatedOptions$ | async\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n [attr.data-test]=\"'aui-option/' + option.label\"\n >\n {{ option.label }}\n </aui-option>\n </ng-container>\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"\n !(\n (hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString)\n )\n \"\n class=\"aui-option-container__placeholder\"\n >\n <ng-content select=\"aui-option-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n",
5285
5364
  changeDetection: ChangeDetectionStrategy.OnPush,
5286
5365
  encapsulation: ViewEncapsulation.None,
5287
5366
  preserveWhitespaces: false,
@@ -5532,7 +5611,7 @@ PaginatorComponent.decorators = [
5532
5611
  changeDetection: ChangeDetectionStrategy.OnPush,
5533
5612
  encapsulation: ViewEncapsulation.None,
5534
5613
  preserveWhitespaces: false,
5535
- styles: [".aui-paginator{display:inline-flex;align-items:center;color:rgb(var(--aui-color-n-1))}.aui-paginator .aui-button{width:var(--aui-line-height-xl);height:var(--aui-line-height-xl);border:unset;background-color:transparent}.aui-paginator .aui-button .aui-button__content{padding:unset}.aui-paginator__fast-navigator[hidden]{display:none}.aui-paginator__fast-navigator .aui-icon{margin:0}.aui-paginator__fast-navigator:hover aui-icon:first-child,.aui-paginator__fast-navigator aui-icon:last-child{display:none}.aui-paginator__fast-navigator:hover aui-icon:last-child{display:inline}.aui-paginator__sizes{display:inline-flex;align-items:center}.aui-paginator__sizes .aui-select{width:80px;margin-right:var(--aui-spacing-s)}.aui-paginator__jumper .aui-input{width:80px}.aui-paginator__jumper span+input{margin-left:var(--aui-spacing-m)}.aui-paginator__jumper input+span{margin-left:var(--aui-spacing-s)}.aui-paginator__total{font-size:var(--aui-font-size-m)}.aui-paginator__navigator.aui-button{background-color:rgb(var(--aui-color-n-8))}.aui-paginator__navigator.aui-button aui-icon{font-size:var(--aui-font-size-l)}.aui-paginator__navigator.aui-button:hover{background-color:rgb(var(--aui-color-p-6))}.aui-paginator__pager{border:1px solid rgb(var(--aui-color-n-7));padding:3px;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-main-bg))}.aui-paginator__layout{display:inline-block}.aui-paginator__layout+.aui-paginator__layout{margin-left:var(--aui-spacing-l)}"]
5614
+ styles: [".aui-paginator{display:inline-flex;align-items:center;color:rgb(var(--aui-color-n-1))}.aui-paginator .aui-button{width:var(--aui-line-height-xl);height:var(--aui-line-height-xl);border:unset}.aui-paginator .aui-button--default{background-color:transparent}.aui-paginator .aui-button .aui-button__content{padding:unset}.aui-paginator__fast-navigator[hidden]{display:none}.aui-paginator__fast-navigator .aui-icon{margin:0}.aui-paginator__fast-navigator:hover aui-icon:first-child,.aui-paginator__fast-navigator aui-icon:last-child{display:none}.aui-paginator__fast-navigator:hover aui-icon:last-child{display:inline}.aui-paginator__sizes{display:inline-flex;align-items:center}.aui-paginator__sizes .aui-select{width:80px;margin-right:var(--aui-spacing-s)}.aui-paginator__jumper .aui-input{width:80px}.aui-paginator__jumper span+input{margin-left:var(--aui-spacing-m)}.aui-paginator__jumper input+span{margin-left:var(--aui-spacing-s)}.aui-paginator__total{font-size:var(--aui-font-size-m)}.aui-paginator__navigator.aui-button{background-color:rgb(var(--aui-color-n-8))}.aui-paginator__navigator.aui-button aui-icon{font-size:var(--aui-font-size-l)}.aui-paginator__navigator.aui-button:hover{background-color:rgb(var(--aui-color-p-6))}.aui-paginator__pager{border:1px solid rgb(var(--aui-color-n-7));padding:3px;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-main-bg))}.aui-paginator__layout{display:inline-block}.aui-paginator__layout+.aui-paginator__layout{margin-left:var(--aui-spacing-l)}"]
5536
5615
  },] }
5537
5616
  ];
5538
5617
  PaginatorComponent.ctorParameters = () => [
@@ -7896,6 +7975,7 @@ AutocompleteModule.decorators = [
7896
7975
  AutocompletePlaceholderComponent,
7897
7976
  SuggestionGroupComponent,
7898
7977
  SuggestionGroupTitleDirective,
7978
+ E2eAttributeBindingDirective,
7899
7979
  ],
7900
7980
  exports: [
7901
7981
  AutoCompleteDirective,
@@ -8469,7 +8549,7 @@ FixedSizeTableVirtualScrollDirective.propDecorators = {
8469
8549
  table: [{ type: ContentChild, args: [TableComponent, { static: false },] }]
8470
8550
  };
8471
8551
 
8472
- const ɵ0 = _fixedSizeVirtualScrollStrategyFactory;
8552
+ const ɵ0$1 = _fixedSizeVirtualScrollStrategyFactory;
8473
8553
  class FixedSizeVirtualScrollDirective extends CdkFixedSizeVirtualScroll {
8474
8554
  }
8475
8555
  FixedSizeVirtualScrollDirective.decorators = [
@@ -8479,7 +8559,7 @@ FixedSizeVirtualScrollDirective.decorators = [
8479
8559
  providers: [
8480
8560
  {
8481
8561
  provide: VIRTUAL_SCROLL_STRATEGY,
8482
- useFactory: ɵ0,
8562
+ useFactory: ɵ0$1,
8483
8563
  deps: [forwardRef(() => FixedSizeVirtualScrollDirective)],
8484
8564
  },
8485
8565
  ],
@@ -9237,8 +9317,8 @@ TimePickerComponent.propDecorators = {
9237
9317
  tooltipRef: [{ type: ViewChild, args: ['tooltipRef',] }]
9238
9318
  };
9239
9319
 
9240
- const ɵ0$1 = (_, index) => index;
9241
- const HOUR_ITEMS = Array.from({ length: 24 }).map(ɵ0$1);
9320
+ const ɵ0$2 = (_, index) => index;
9321
+ const HOUR_ITEMS = Array.from({ length: 24 }).map(ɵ0$2);
9242
9322
  const ɵ1 = (_, index) => index;
9243
9323
  const MINUTE_ITEMS = Array.from({ length: 60 }).map(ɵ1);
9244
9324
  const ɵ2 = (_, index) => index;
@@ -9248,8 +9328,8 @@ const CONTROL_ITEM_HEIGHT = 28;
9248
9328
  const TIME_PICKER_COLUMN_WIDTH = 80;
9249
9329
  const bem$3 = buildBem('aui-time-picker-panel');
9250
9330
  class TimePickerPanelComponent extends CommonFormControl {
9251
- constructor(cdr) {
9252
- super(cdr);
9331
+ constructor(cdr, elementRef) {
9332
+ super(cdr, elementRef);
9253
9333
  this.cdr = cdr;
9254
9334
  this.hourStep = 1;
9255
9335
  this.minuteStep = 1;
@@ -9431,7 +9511,8 @@ TimePickerPanelComponent.decorators = [
9431
9511
  },] }
9432
9512
  ];
9433
9513
  TimePickerPanelComponent.ctorParameters = () => [
9434
- { type: ChangeDetectorRef }
9514
+ { type: ChangeDetectorRef },
9515
+ { type: ElementRef }
9435
9516
  ];
9436
9517
  TimePickerPanelComponent.propDecorators = {
9437
9518
  format: [{ type: Input }],
@@ -10725,5 +10806,5 @@ StepsModule.decorators = [
10725
10806
  * Generated bundle index. Do not edit.
10726
10807
  */
10727
10808
 
10728
- export { AccordionComponent, AccordionItemComponent, AccordionItemContentDirective, AccordionItemHeaderDirective, AccordionModule, AnchorComponent, AnchorDirective, AnchorDirectiveChild, AnchorLabelDirective, AnchorModule, AnchorTreeComponent, AuiSelectValidators, AutoCompleteDirective, AutocompleteComponent, AutocompleteModule, AutocompletePlaceholderComponent, BackTopComponent, BackTopModule, BaseTooltip, Bem, BreadcrumbComponent, BreadcrumbItemComponent, BreadcrumbModule, ButtonComponent, ButtonGroupComponent, ButtonModule, ButtonType, CONTROL_ITEM_HEIGHT, CalendarFooterComponent, CalendarHeaderComponent, CardComponent, CardFooterDirective, CardHeaderDirective, CardModule, CheckTagComponent, CheckboxComponent, CheckboxGroupComponent, CheckboxModule, ColorPickerComponent, ColorPickerModule, CommonForm, CommonFormControl, ComponentSize, ConfirmDialogConfig, ConfirmType, CustomAutoCompleteDirective, DATA, DATE, DATE_NAV_RANGES, DATE_TYPES, DAY, DAY_PANEL_COLUMN_COUNT, DAY_PANEL_ROW_COUNT, DIALOG_DATA, DISPLAY_DELAY, DateNavRange, DatePickerModule, DatePickerPanelComponent, DatePickerTriggerComponent, DatePickerType, DateRangePickerPanelComponent, DialogCloseDirective, DialogConfig, DialogContentComponent, DialogFooterComponent, DialogHeaderComponent, DialogModule, DialogRef, DialogService, DialogSize, DrawerComponent, DrawerContentDirective, DrawerFooterDirective, DrawerHeaderDirective, DrawerModule, DrawerRef, DrawerService, DrawerSize, DropdownActiveDirective, DropdownButtonComponent, DropdownDirective, DropdownModule, FixedSizeTableVirtualScrollDirective, FixedSizeTableVirtualScrollStrategy, FixedSizeVirtualScrollDirective, FormDirective, FormItemAddonDirective, FormItemComponent, FormItemControlDirective, FormItemErrorDirective, FormItemHintDirective, FormItemLabelDirective, FormItemWidth, FormModule, HIDDEN_DELAY, HOUR, HOUR_ITEMS, I18NInterfaceToken, I18nModule, I18nPipe, I18nService, ICON_REGISTER_PROVIDER_FACTORY, ICON_REGISTER_SERVICE_PROVIDER, INPUT_ERROR_KEY, IconComponent, IconModule, IconRegisterService, IncludesDirective, InlineAlertComponent, InlineAlertModule, InlineAlertTitleDirective, InlineAlertType, InputComponent, InputGroupComponent, InputModule, LabelPosition, MESSAGE_CONFIG, MESSAGE_DEFAULT_CONFIG, MINUTE, MINUTE_ITEMS, MONTH, MONTH_PANEL_COLUMN_COUNT, MONTH_PANEL_ROW_COUNT, MenuComponent, MenuContentDirective, MenuGroupComponent, MenuItemComponent, MenuItemType, MessageConfig, MessageModule, MessageService, MessageType, MultiSelectComponent, NOTIFICATION_CONFIG, NOTIFICATION_DEFAULT_CONFIG, NotificationComponent, NotificationModule, NotificationService, NumberInputComponent, OptionComponent, OptionContentDirective, OptionGroupComponent, OptionGroupTitleDirective, OptionPlaceholderComponent, PAGINATOR_INTL_PROVIDER, PAGINATOR_INTL_PROVIDER_FACTORY, PageEvent, PaginatorComponent, PaginatorIntl, PaginatorModule, PickerPanelComponent, RadioButtonComponent, RadioComponent, RadioGroupComponent, RadioModule, RadioSize, RangePickerComponent, SECOND, SECOND_ITEMS, ScrollingModule, SearchComponent, SectionComponent, SectionTitleDirective, SelectAllStatus, SelectComponent, SelectModule, Side, SortDirective, SortHeaderComponent, SortModule, StatusBarComponent, StatusBarModule, StatusBarSize, StatusType, StepState, StepsComponent, StepsModule, SubmenuComponent, SuggestionComponent, SuggestionGroupComponent, SuggestionGroupTitleDirective, SwitchComponent, SwitchModule, TOOLTIP_COPY_INTL_INTL_PROVIDER, TOOLTIP_COPY_INTL_PROVIDER_FACTORY, TabBodyComponent, TabBodyPortalDirective, TabChangeEvent, TabComponent, TabContentDirective, TabContextService, TabGroupComponent, TabHeaderActiveIndicatorComponent, TabHeaderAddonDirective, TabHeaderComponent, TabLabelDirective, TabLabelWrapperDirective, TabSize, TabTitleDirective, TabType, TableCellDefDirective, TableCellDirective, TableColumnDefDirective, TableComponent, TableHeaderCellDefDirective, TableHeaderCellDirective, TableHeaderRowComponent, TableHeaderRowDefDirective, TableModule, TableOfContentsModule, TableRowComponent, TableRowDefDirective, TableScrollShadowDirective, TableScrollWrapperDirective, TabsModule, TagComponent, TagModule, TagType, TagsInputComponent, ThemeModule, ThemePickerPipe, ThemeService, TimePickerComponent, TimePickerControlType, TimePickerModule, TimePickerPanelComponent, TocContainerDirective, TocContentDirective, TocLinkDirective, TooltipActiveDirective, TooltipComponent, TooltipCopyIntl, TooltipDirective, TooltipModule, TooltipTrigger, TooltipType, TreeNodeComponent, TreeNodePlaceholderComponent, TreeSelectComponent, TreeSelectModule, VirtualScrollViewportComponent, YEAR, YEAR_PANEL_COLUMN_COUNT, YEAR_PANEL_ROW_COUNT, _isNumberValue, _tableVirtualScrollDirectiveStrategyFactory, buildBem, coerceAttrBoolean, coerceNumber, coerceString, en, getAnchorTreeItems, getSortDuplicateSortableIdError, getSortHeaderMissingIdError, getSortHeaderNotContainedWithinSortError, getSortInvalidDirectionError, handlePixel, isTemplateRef, isTimePickerModel, isUndefined, last, observeMutationOn, observeResizeOn, scrollIntoView, sleep, watchContentExist, zh, ɵ0, ɵ1, ɵ2, TablePlaceholderDefDirective as ɵa, TablePlaceholderOutlet as ɵb, TableExpandButtonCellComponent as ɵc, TableExpandPanelCellComponent as ɵd, TooltipCopyDirective as ɵe, DialogComponent as ɵf, ConfirmDialogComponent as ɵg, BaseRadio as ɵh, InputAddonBeforeDirective as ɵi, InputAddonAfterDirective as ɵj, InputPrefixDirective as ɵk, InputSuffixDirective as ɵl, SharedModule as ɵm, ClickOutsideDirective as ɵn, AutosizeDirective as ɵo, BaseSelect as ɵp, MenuGroupTitleDirective as ɵq, MessageWrapperComponent as ɵr, MessageComponent as ɵs, MessageAnimations as ɵt, BaseMessage as ɵu, NotificationWrapperComponent as ɵv, VirtualForOfDirective as ɵw, _isNumberValue as ɵx, DatePickerComponent as ɵy };
10809
+ export { AccordionComponent, AccordionItemComponent, AccordionItemContentDirective, AccordionItemHeaderDirective, AccordionModule, AnchorComponent, AnchorDirective, AnchorDirectiveChild, AnchorLabelDirective, AnchorModule, AnchorTreeComponent, AuiSelectValidators, AutoCompleteDirective, AutocompleteComponent, AutocompleteModule, AutocompletePlaceholderComponent, BackTopComponent, BackTopModule, BaseTooltip, Bem, BreadcrumbComponent, BreadcrumbItemComponent, BreadcrumbModule, ButtonComponent, ButtonGroupComponent, ButtonModule, ButtonType, CONTROL_ITEM_HEIGHT, CalendarFooterComponent, CalendarHeaderComponent, CardComponent, CardFooterDirective, CardHeaderDirective, CardModule, CheckTagComponent, CheckboxComponent, CheckboxGroupComponent, CheckboxModule, ColorPickerComponent, ColorPickerModule, CommonForm, CommonFormControl, ComponentSize, ConfirmDialogConfig, ConfirmType, CustomAutoCompleteDirective, DATA, DATE, DATE_NAV_RANGES, DATE_TYPES, DAY, DAY_PANEL_COLUMN_COUNT, DAY_PANEL_ROW_COUNT, DIALOG_DATA, DISPLAY_DELAY, DateNavRange, DatePickerModule, DatePickerPanelComponent, DatePickerTriggerComponent, DatePickerType, DateRangePickerPanelComponent, DialogCloseDirective, DialogConfig, DialogContentComponent, DialogFooterComponent, DialogHeaderComponent, DialogModule, DialogRef, DialogService, DialogSize, DrawerComponent, DrawerContentDirective, DrawerFooterDirective, DrawerHeaderDirective, DrawerModule, DrawerRef, DrawerService, DrawerSize, DropdownActiveDirective, DropdownButtonComponent, DropdownDirective, DropdownModule, E2eAttributeBindingDirective, FixedSizeTableVirtualScrollDirective, FixedSizeTableVirtualScrollStrategy, FixedSizeVirtualScrollDirective, FormDirective, FormItemAddonDirective, FormItemComponent, FormItemControlDirective, FormItemErrorDirective, FormItemHintDirective, FormItemLabelDirective, FormItemWidth, FormModule, HIDDEN_DELAY, HOUR, HOUR_ITEMS, I18NInterfaceToken, I18nModule, I18nPipe, I18nService, ICON_REGISTER_PROVIDER_FACTORY, ICON_REGISTER_SERVICE_PROVIDER, INPUT_ERROR_KEY, IconComponent, IconModule, IconRegisterService, IncludesDirective, InlineAlertComponent, InlineAlertModule, InlineAlertTitleDirective, InlineAlertType, InputComponent, InputGroupComponent, InputModule, LabelPosition, MESSAGE_CONFIG, MESSAGE_DEFAULT_CONFIG, MINUTE, MINUTE_ITEMS, MONTH, MONTH_PANEL_COLUMN_COUNT, MONTH_PANEL_ROW_COUNT, MenuComponent, MenuContentDirective, MenuGroupComponent, MenuItemComponent, MenuItemType, MessageConfig, MessageModule, MessageService, MessageType, MultiSelectComponent, NOTIFICATION_CONFIG, NOTIFICATION_DEFAULT_CONFIG, NotificationComponent, NotificationModule, NotificationService, NumberInputComponent, OptionComponent, OptionContentDirective, OptionGroupComponent, OptionGroupTitleDirective, OptionPlaceholderComponent, PAGINATOR_INTL_PROVIDER, PAGINATOR_INTL_PROVIDER_FACTORY, PageEvent, PaginatorComponent, PaginatorIntl, PaginatorModule, PickerPanelComponent, RadioButtonComponent, RadioComponent, RadioGroupComponent, RadioModule, RadioSize, RangePickerComponent, SECOND, SECOND_ITEMS, ScrollingModule, SearchComponent, SectionComponent, SectionTitleDirective, SelectAllStatus, SelectComponent, SelectModule, Side, SortDirective, SortHeaderComponent, SortModule, StatusBarComponent, StatusBarModule, StatusBarSize, StatusType, StepState, StepsComponent, StepsModule, SubmenuComponent, SuggestionComponent, SuggestionGroupComponent, SuggestionGroupTitleDirective, SwitchComponent, SwitchModule, TOOLTIP_COPY_INTL_INTL_PROVIDER, TOOLTIP_COPY_INTL_PROVIDER_FACTORY, TabBodyComponent, TabBodyPortalDirective, TabChangeEvent, TabComponent, TabContentDirective, TabContextService, TabGroupComponent, TabHeaderActiveIndicatorComponent, TabHeaderAddonDirective, TabHeaderComponent, TabLabelDirective, TabLabelWrapperDirective, TabSize, TabTitleDirective, TabType, TableCellDefDirective, TableCellDirective, TableColumnDefDirective, TableComponent, TableHeaderCellDefDirective, TableHeaderCellDirective, TableHeaderRowComponent, TableHeaderRowDefDirective, TableModule, TableOfContentsModule, TableRowComponent, TableRowDefDirective, TableScrollShadowDirective, TableScrollWrapperDirective, TabsModule, TagComponent, TagModule, TagType, TagsInputComponent, ThemeModule, ThemePickerPipe, ThemeService, TimePickerComponent, TimePickerControlType, TimePickerModule, TimePickerPanelComponent, TocContainerDirective, TocContentDirective, TocLinkDirective, TooltipActiveDirective, TooltipComponent, TooltipCopyIntl, TooltipDirective, TooltipModule, TooltipTrigger, TooltipType, TreeNodeComponent, TreeNodePlaceholderComponent, TreeSelectComponent, TreeSelectModule, VirtualScrollViewportComponent, YEAR, YEAR_PANEL_COLUMN_COUNT, YEAR_PANEL_ROW_COUNT, _isNumberValue, _tableVirtualScrollDirectiveStrategyFactory, buildBem, coerceAttrBoolean, coerceNumber, coerceString, en, getAnchorTreeItems, getSortDuplicateSortableIdError, getSortHeaderMissingIdError, getSortHeaderNotContainedWithinSortError, getSortInvalidDirectionError, handlePixel, isTemplateRef, isTimePickerModel, isUndefined, last, observeMutationOn, observeResizeOn, scrollIntoView, simplifyStringToTestId, sleep, watchContentExist, zh, ɵ0, ɵ1, ɵ2, TablePlaceholderDefDirective as ɵa, TablePlaceholderOutlet as ɵb, TableExpandButtonCellComponent as ɵc, TableExpandPanelCellComponent as ɵd, TooltipCopyDirective as ɵe, DialogComponent as ɵf, ConfirmDialogComponent as ɵg, BaseRadio as ɵh, InputAddonBeforeDirective as ɵi, InputAddonAfterDirective as ɵj, InputPrefixDirective as ɵk, InputSuffixDirective as ɵl, SharedModule as ɵm, ClickOutsideDirective as ɵn, AutosizeDirective as ɵo, BaseSelect as ɵp, MenuGroupTitleDirective as ɵq, MessageWrapperComponent as ɵr, MessageComponent as ɵs, MessageAnimations as ɵt, BaseMessage as ɵu, NotificationWrapperComponent as ɵv, E2eAttributeBindingDirective as ɵw, VirtualForOfDirective as ɵx, _isNumberValue as ɵy, DatePickerComponent as ɵz };
10729
10810
  //# sourceMappingURL=alauda-ui.js.map