@ng-nest/ui 21.0.11 → 21.0.12

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 (41) hide show
  1. package/fesm2022/ng-nest-ui-auto-complete.mjs +10 -2
  2. package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
  3. package/fesm2022/ng-nest-ui-cascade.mjs +9 -1
  4. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  5. package/fesm2022/ng-nest-ui-color-picker.mjs +9 -1
  6. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  7. package/fesm2022/ng-nest-ui-contextmenu.mjs +441 -0
  8. package/fesm2022/ng-nest-ui-contextmenu.mjs.map +1 -0
  9. package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
  10. package/fesm2022/ng-nest-ui-date-picker.mjs +18 -2
  11. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  12. package/fesm2022/ng-nest-ui-dropdown.mjs +15 -3
  13. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  14. package/fesm2022/ng-nest-ui-select.mjs +49 -14
  15. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  16. package/fesm2022/ng-nest-ui-splitter.mjs +407 -0
  17. package/fesm2022/ng-nest-ui-splitter.mjs.map +1 -0
  18. package/fesm2022/ng-nest-ui-time-picker.mjs +9 -1
  19. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  20. package/fesm2022/ng-nest-ui-tree-select.mjs +11 -3
  21. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  22. package/fesm2022/ng-nest-ui-watermark.mjs +378 -0
  23. package/fesm2022/ng-nest-ui-watermark.mjs.map +1 -0
  24. package/fesm2022/ng-nest-ui.mjs +3 -0
  25. package/fesm2022/ng-nest-ui.mjs.map +1 -1
  26. package/package.json +13 -1
  27. package/types/ng-nest-ui-auto-complete.d.ts +3 -3
  28. package/types/ng-nest-ui-cascade.d.ts +4 -4
  29. package/types/ng-nest-ui-checkbox.d.ts +1 -1
  30. package/types/ng-nest-ui-color-picker.d.ts +4 -4
  31. package/types/ng-nest-ui-contextmenu.d.ts +176 -0
  32. package/types/ng-nest-ui-core.d.ts +29 -1
  33. package/types/ng-nest-ui-date-picker.d.ts +7 -7
  34. package/types/ng-nest-ui-dropdown.d.ts +12 -2
  35. package/types/ng-nest-ui-radio.d.ts +1 -1
  36. package/types/ng-nest-ui-select.d.ts +28 -3
  37. package/types/ng-nest-ui-splitter.d.ts +163 -0
  38. package/types/ng-nest-ui-time-picker.d.ts +3 -3
  39. package/types/ng-nest-ui-tree-select.d.ts +4 -4
  40. package/types/ng-nest-ui-watermark.d.ts +267 -0
  41. package/types/ng-nest-ui.d.ts +3 -0
@@ -1,6 +1,6 @@
1
1
  import { Subject, fromEvent, of } from 'rxjs';
2
2
  import * as i0 from '@angular/core';
3
- import { input, model, Component, signal, inject, DestroyRef, viewChild, output, computed, HostListener, HostBinding, ChangeDetectionStrategy, ViewEncapsulation, Renderer2, ChangeDetectorRef, ViewContainerRef, ElementRef, effect, NgModule } from '@angular/core';
3
+ import { input, model, output, Component, signal, inject, DestroyRef, viewChild, computed, HostListener, HostBinding, ChangeDetectionStrategy, ViewEncapsulation, Renderer2, ChangeDetectorRef, ViewContainerRef, ElementRef, effect, NgModule } from '@angular/core';
4
4
  import { XToDataConvert, XToCssPixelValue, XToBoolean, XToNumber, XIsNull, XIsUndefined, XIsArray, XIsFunction, XIsEmpty, XIsChange, XResize, XSetData, XComputed, XParents, XIsObjectArray, XRemove, XIsString, XIsObservable } from '@ng-nest/ui/core';
5
5
  import { XFormControlFunction, XValueAccessor } from '@ng-nest/ui/base-form';
6
6
  import { XPortalService, XPortalConnectedPosition } from '@ng-nest/ui/portal';
@@ -10,10 +10,10 @@ import { XListComponent } from '@ng-nest/ui/list';
10
10
  import { XI18nService, zh_CN } from '@ng-nest/ui/i18n';
11
11
  import * as i1 from '@angular/forms';
12
12
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
13
+ import { NgTemplateOutlet, DOCUMENT } from '@angular/common';
13
14
  import { toSignal } from '@angular/core/rxjs-interop';
14
15
  import { Overlay } from '@angular/cdk/overlay';
15
16
  import { DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, ENTER, MAC_ENTER, BACKSPACE, ESCAPE, TAB } from '@angular/cdk/keycodes';
16
- import { DOCUMENT } from '@angular/common';
17
17
  import { XTagComponent } from '@ng-nest/ui/tag';
18
18
  import { XOutletDirective } from '@ng-nest/ui/outlet';
19
19
 
@@ -74,7 +74,7 @@ class XSelectProperty extends XFormControlFunction(X_SELECT_CONFIG_NAME) {
74
74
  * @zh_CN 展示方位
75
75
  * @en_US Display position
76
76
  */
77
- this.placement = input(this.config?.placement ?? 'bottom', ...(ngDevMode ? [{ debugName: "placement" }] : []));
77
+ this.placement = input(this.config?.placement ?? 'bottom-start', ...(ngDevMode ? [{ debugName: "placement" }] : []));
78
78
  /**
79
79
  * @zh_CN 多选功能
80
80
  * @en_US Multiple choice
@@ -162,6 +162,11 @@ class XSelectProperty extends XFormControlFunction(X_SELECT_CONFIG_NAME) {
162
162
  * @en_US Allow the use of input values as selector values during search
163
163
  */
164
164
  this.allowInput = input(false, { ...(ngDevMode ? { debugName: "allowInput" } : {}), transform: XToBoolean });
165
+ /**
166
+ * @zh_CN 自定义下拉框中的内容
167
+ * @en_US Custom content in the drop-down box
168
+ */
169
+ this.portalTemp = input(...(ngDevMode ? [undefined, { debugName: "portalTemp" }] : []));
165
170
  /**
166
171
  * @zh_CN 浮动标签
167
172
  * @en_US Float label
@@ -272,14 +277,19 @@ class XSelectProperty extends XFormControlFunction(X_SELECT_CONFIG_NAME) {
272
277
  * @en_US Enter the verification function
273
278
  */
274
279
  this.inputValidator = input(...(ngDevMode ? [undefined, { debugName: "inputValidator" }] : []));
280
+ /**
281
+ * @zh_CN 输入值变化事件
282
+ * @en_US Input value change event
283
+ */
284
+ this.searchChange = output();
275
285
  }
276
286
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XSelectProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
277
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.1", type: XSelectProperty, isStandalone: true, selector: "x-select-property", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, autoWidth: { classPropertyName: "autoWidth", publicName: "autoWidth", isSignal: true, isRequired: false, transformFunction: null }, autoMinWidth: { classPropertyName: "autoMinWidth", publicName: "autoMinWidth", isSignal: true, isRequired: false, transformFunction: null }, autoMaxWidth: { classPropertyName: "autoMaxWidth", publicName: "autoMaxWidth", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, async: { classPropertyName: "async", publicName: "async", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, selectAll: { classPropertyName: "selectAll", publicName: "selectAll", isSignal: true, isRequired: false, transformFunction: null }, selectAllText: { classPropertyName: "selectAllText", publicName: "selectAllText", isSignal: true, isRequired: false, transformFunction: null }, nodeTpl: { classPropertyName: "nodeTpl", publicName: "nodeTpl", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, inputStyle: { classPropertyName: "inputStyle", publicName: "inputStyle", isSignal: true, isRequired: false, transformFunction: null }, portalMaxHeight: { classPropertyName: "portalMaxHeight", publicName: "portalMaxHeight", isSignal: true, isRequired: false, transformFunction: null }, portalHeight: { classPropertyName: "portalHeight", publicName: "portalHeight", isSignal: true, isRequired: false, transformFunction: null }, portalWidth: { classPropertyName: "portalWidth", publicName: "portalWidth", isSignal: true, isRequired: false, transformFunction: null }, portalClass: { classPropertyName: "portalClass", publicName: "portalClass", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "search", isSignal: true, isRequired: false, transformFunction: null }, caseSensitive: { classPropertyName: "caseSensitive", publicName: "caseSensitive", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null }, maxTagCount: { classPropertyName: "maxTagCount", publicName: "maxTagCount", isSignal: true, isRequired: false, transformFunction: null }, maxTagContent: { classPropertyName: "maxTagContent", publicName: "maxTagContent", isSignal: true, isRequired: false, transformFunction: null }, virtualScroll: { classPropertyName: "virtualScroll", publicName: "virtualScroll", isSignal: true, isRequired: false, transformFunction: null }, allowInput: { classPropertyName: "allowInput", publicName: "allowInput", isSignal: true, isRequired: false, transformFunction: null }, floatLabel: { classPropertyName: "floatLabel", publicName: "floatLabel", isSignal: true, isRequired: false, transformFunction: null }, floatFixed: { classPropertyName: "floatFixed", publicName: "floatFixed", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
287
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.1", type: XSelectProperty, isStandalone: true, selector: "x-select-property", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, autoWidth: { classPropertyName: "autoWidth", publicName: "autoWidth", isSignal: true, isRequired: false, transformFunction: null }, autoMinWidth: { classPropertyName: "autoMinWidth", publicName: "autoMinWidth", isSignal: true, isRequired: false, transformFunction: null }, autoMaxWidth: { classPropertyName: "autoMaxWidth", publicName: "autoMaxWidth", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, async: { classPropertyName: "async", publicName: "async", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, selectAll: { classPropertyName: "selectAll", publicName: "selectAll", isSignal: true, isRequired: false, transformFunction: null }, selectAllText: { classPropertyName: "selectAllText", publicName: "selectAllText", isSignal: true, isRequired: false, transformFunction: null }, nodeTpl: { classPropertyName: "nodeTpl", publicName: "nodeTpl", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, inputStyle: { classPropertyName: "inputStyle", publicName: "inputStyle", isSignal: true, isRequired: false, transformFunction: null }, portalMaxHeight: { classPropertyName: "portalMaxHeight", publicName: "portalMaxHeight", isSignal: true, isRequired: false, transformFunction: null }, portalHeight: { classPropertyName: "portalHeight", publicName: "portalHeight", isSignal: true, isRequired: false, transformFunction: null }, portalWidth: { classPropertyName: "portalWidth", publicName: "portalWidth", isSignal: true, isRequired: false, transformFunction: null }, portalClass: { classPropertyName: "portalClass", publicName: "portalClass", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "search", isSignal: true, isRequired: false, transformFunction: null }, caseSensitive: { classPropertyName: "caseSensitive", publicName: "caseSensitive", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null }, maxTagCount: { classPropertyName: "maxTagCount", publicName: "maxTagCount", isSignal: true, isRequired: false, transformFunction: null }, maxTagContent: { classPropertyName: "maxTagContent", publicName: "maxTagContent", isSignal: true, isRequired: false, transformFunction: null }, virtualScroll: { classPropertyName: "virtualScroll", publicName: "virtualScroll", isSignal: true, isRequired: false, transformFunction: null }, allowInput: { classPropertyName: "allowInput", publicName: "allowInput", isSignal: true, isRequired: false, transformFunction: null }, portalTemp: { classPropertyName: "portalTemp", publicName: "portalTemp", isSignal: true, isRequired: false, transformFunction: null }, floatLabel: { classPropertyName: "floatLabel", publicName: "floatLabel", isSignal: true, isRequired: false, transformFunction: null }, floatFixed: { classPropertyName: "floatFixed", publicName: "floatFixed", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange", searchChange: "searchChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
278
288
  }
279
289
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XSelectProperty, decorators: [{
280
290
  type: Component,
281
291
  args: [{ selector: `${XSelectPrefix}-property`, template: '' }]
282
- }], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], width: [{ type: i0.Input, args: [{ isSignal: true, alias: "width", required: false }] }], autoWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoWidth", required: false }] }], autoMinWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoMinWidth", required: false }] }], autoMaxWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoMaxWidth", required: false }] }], clearable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearable", required: false }] }], async: [{ type: i0.Input, args: [{ isSignal: true, alias: "async", required: false }] }], placement: [{ type: i0.Input, args: [{ isSignal: true, alias: "placement", required: false }] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], selectAll: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAll", required: false }] }], selectAllText: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAllText", required: false }] }], nodeTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "nodeTpl", required: false }] }], bordered: [{ type: i0.Input, args: [{ isSignal: true, alias: "bordered", required: false }] }], inputStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputStyle", required: false }] }], portalMaxHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalMaxHeight", required: false }] }], portalHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalHeight", required: false }] }], portalWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalWidth", required: false }] }], portalClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalClass", required: false }] }], search: [{ type: i0.Input, args: [{ isSignal: true, alias: "search", required: false }] }], caseSensitive: [{ type: i0.Input, args: [{ isSignal: true, alias: "caseSensitive", required: false }] }], debounceTime: [{ type: i0.Input, args: [{ isSignal: true, alias: "debounceTime", required: false }] }], maxTagCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxTagCount", required: false }] }], maxTagContent: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxTagContent", required: false }] }], virtualScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScroll", required: false }] }], allowInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "allowInput", required: false }] }], floatLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "floatLabel", required: false }] }], floatFixed: [{ type: i0.Input, args: [{ isSignal: true, alias: "floatFixed", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], pointer: [{ type: i0.Input, args: [{ isSignal: true, alias: "pointer", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], labelWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelWidth", required: false }] }], labelAlign: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelAlign", required: false }] }], justify: [{ type: i0.Input, args: [{ isSignal: true, alias: "justify", required: false }] }], align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }], direction: [{ type: i0.Input, args: [{ isSignal: true, alias: "direction", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], valueTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "valueTpl", required: false }] }], valueTplContext: [{ type: i0.Input, args: [{ isSignal: true, alias: "valueTplContext", required: false }] }], before: [{ type: i0.Input, args: [{ isSignal: true, alias: "before", required: false }] }], after: [{ type: i0.Input, args: [{ isSignal: true, alias: "after", required: false }] }], pattern: [{ type: i0.Input, args: [{ isSignal: true, alias: "pattern", required: false }] }], message: [{ type: i0.Input, args: [{ isSignal: true, alias: "message", required: false }] }], active: [{ type: i0.Input, args: [{ isSignal: true, alias: "active", required: false }] }, { type: i0.Output, args: ["activeChange"] }], inputValidator: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputValidator", required: false }] }] } });
292
+ }], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], width: [{ type: i0.Input, args: [{ isSignal: true, alias: "width", required: false }] }], autoWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoWidth", required: false }] }], autoMinWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoMinWidth", required: false }] }], autoMaxWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoMaxWidth", required: false }] }], clearable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearable", required: false }] }], async: [{ type: i0.Input, args: [{ isSignal: true, alias: "async", required: false }] }], placement: [{ type: i0.Input, args: [{ isSignal: true, alias: "placement", required: false }] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], selectAll: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAll", required: false }] }], selectAllText: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAllText", required: false }] }], nodeTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "nodeTpl", required: false }] }], bordered: [{ type: i0.Input, args: [{ isSignal: true, alias: "bordered", required: false }] }], inputStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputStyle", required: false }] }], portalMaxHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalMaxHeight", required: false }] }], portalHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalHeight", required: false }] }], portalWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalWidth", required: false }] }], portalClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalClass", required: false }] }], search: [{ type: i0.Input, args: [{ isSignal: true, alias: "search", required: false }] }], caseSensitive: [{ type: i0.Input, args: [{ isSignal: true, alias: "caseSensitive", required: false }] }], debounceTime: [{ type: i0.Input, args: [{ isSignal: true, alias: "debounceTime", required: false }] }], maxTagCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxTagCount", required: false }] }], maxTagContent: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxTagContent", required: false }] }], virtualScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScroll", required: false }] }], allowInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "allowInput", required: false }] }], portalTemp: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalTemp", required: false }] }], floatLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "floatLabel", required: false }] }], floatFixed: [{ type: i0.Input, args: [{ isSignal: true, alias: "floatFixed", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], pointer: [{ type: i0.Input, args: [{ isSignal: true, alias: "pointer", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], labelWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelWidth", required: false }] }], labelAlign: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelAlign", required: false }] }], justify: [{ type: i0.Input, args: [{ isSignal: true, alias: "justify", required: false }] }], align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }], direction: [{ type: i0.Input, args: [{ isSignal: true, alias: "direction", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], valueTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "valueTpl", required: false }] }], valueTplContext: [{ type: i0.Input, args: [{ isSignal: true, alias: "valueTplContext", required: false }] }], before: [{ type: i0.Input, args: [{ isSignal: true, alias: "before", required: false }] }], after: [{ type: i0.Input, args: [{ isSignal: true, alias: "after", required: false }] }], pattern: [{ type: i0.Input, args: [{ isSignal: true, alias: "pattern", required: false }] }], message: [{ type: i0.Input, args: [{ isSignal: true, alias: "message", required: false }] }], active: [{ type: i0.Input, args: [{ isSignal: true, alias: "active", required: false }] }, { type: i0.Output, args: ["activeChange"] }], inputValidator: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputValidator", required: false }] }], searchChange: [{ type: i0.Output, args: ["searchChange"] }] } });
283
293
  /**
284
294
  * Select Portal
285
295
  * @selector x-select-portal
@@ -295,7 +305,7 @@ class XSelectPortalComponent {
295
305
  this.unSubject = new Subject();
296
306
  this.destroyRef = inject(DestroyRef);
297
307
  this.i18n = inject(XI18nService);
298
- this.list = viewChild.required('list');
308
+ this.list = viewChild('list', ...(ngDevMode ? [{ debugName: "list" }] : []));
299
309
  this.value = model(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
300
310
  this.data = input(...(ngDevMode ? [undefined, { debugName: "data" }] : []));
301
311
  this.placement = input('bottom', ...(ngDevMode ? [{ debugName: "placement" }] : []));
@@ -313,6 +323,14 @@ class XSelectPortalComponent {
313
323
  this.keywordText = input('', ...(ngDevMode ? [{ debugName: "keywordText" }] : []));
314
324
  this.size = input(...(ngDevMode ? [undefined, { debugName: "size" }] : []));
315
325
  this.showPortal = signal(false, ...(ngDevMode ? [{ debugName: "showPortal" }] : []));
326
+ this.portalTemp = input(...(ngDevMode ? [undefined, { debugName: "portalTemp" }] : []));
327
+ this.portalTempContext = computed(() => ({
328
+ $implicit: this.data(),
329
+ $data: this.data(),
330
+ $value: this.value(),
331
+ $close: () => this.closeSubject.next(),
332
+ $nodeClick: (node) => this.onNodeClick(node)
333
+ }), ...(ngDevMode ? [{ debugName: "portalTempContext" }] : []));
316
334
  this.animating = output();
317
335
  this.nodeClick = output();
318
336
  this.active = signal(-1, ...(ngDevMode ? [{ debugName: "active" }] : []));
@@ -331,10 +349,16 @@ class XSelectPortalComponent {
331
349
  }
332
350
  ngOnInit() {
333
351
  this.closeSubject.pipe(takeUntil(this.unSubject)).subscribe(() => {
334
- this.data() && this.data().length > 0 && this.list().setUnActive(this.active());
352
+ const list = this.list();
353
+ if (list) {
354
+ this.data() && this.data().length > 0 && list.setUnActive(this.active());
355
+ }
335
356
  });
336
357
  this.keydownSubject.pipe(takeUntil(this.unSubject)).subscribe((x) => {
337
- this.data() && this.data().length > 0 && this.list().keydown(x);
358
+ const list = this.list();
359
+ if (list) {
360
+ this.data() && this.data().length > 0 && list.keydown(x);
361
+ }
338
362
  });
339
363
  this.destroyRef.onDestroy(() => {
340
364
  this.destroy.set(true);
@@ -343,7 +367,7 @@ class XSelectPortalComponent {
343
367
  });
344
368
  }
345
369
  ngAfterViewInit() {
346
- this.list().keyManager.setFirstItemActive();
370
+ this.list()?.keyManager.setFirstItemActive();
347
371
  }
348
372
  stopPropagation(event) {
349
373
  event.stopPropagation();
@@ -366,11 +390,11 @@ class XSelectPortalComponent {
366
390
  this.closeSubject.next();
367
391
  }
368
392
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XSelectPortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
369
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.1.1", type: XSelectPortalComponent, isStandalone: true, selector: "x-select-portal", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, nodeTpl: { classPropertyName: "nodeTpl", publicName: "nodeTpl", isSignal: true, isRequired: false, transformFunction: null }, inputCom: { classPropertyName: "inputCom", publicName: "inputCom", isSignal: true, isRequired: false, transformFunction: null }, portalMaxHeight: { classPropertyName: "portalMaxHeight", publicName: "portalMaxHeight", isSignal: true, isRequired: false, transformFunction: null }, portalHeight: { classPropertyName: "portalHeight", publicName: "portalHeight", isSignal: true, isRequired: false, transformFunction: null }, objectArray: { classPropertyName: "objectArray", publicName: "objectArray", isSignal: true, isRequired: false, transformFunction: null }, selectAll: { classPropertyName: "selectAll", publicName: "selectAll", isSignal: true, isRequired: false, transformFunction: null }, selectAllText: { classPropertyName: "selectAllText", publicName: "selectAllText", isSignal: true, isRequired: false, transformFunction: null }, caseSensitive: { classPropertyName: "caseSensitive", publicName: "caseSensitive", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "search", isSignal: true, isRequired: false, transformFunction: null }, virtualScroll: { classPropertyName: "virtualScroll", publicName: "virtualScroll", isSignal: true, isRequired: false, transformFunction: null }, keywordText: { classPropertyName: "keywordText", publicName: "keywordText", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", animating: "animating", nodeClick: "nodeClick" }, host: { listeners: { "animationend": "done()", "animationstart": "start()" }, properties: { "animate.enter": "this.animateEnter", "animate.leave": "this.animateLeave" } }, viewQueries: [{ propertyName: "list", first: true, predicate: ["list"], descendants: true, isSignal: true }], ngImport: i0, template: "<div\r\n #selectPortal\r\n class=\"x-select-portal\"\r\n [class.x-select-portal-virtualScroll]=\"virtualScroll()\"\r\n (click)=\"inputCom()?.inputFocus(); stopPropagation($event)\"\r\n [style.maxHeight]=\"portalHeight() ? portalHeight() : portalMaxHeight()\"\r\n [style.height]=\"portalHeight()\"\r\n>\r\n <x-list\r\n #list\r\n [data]=\"data()!\"\r\n [(ngModel)]=\"value\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n (keyManagerChange)=\"onActive($event)\"\r\n (keyManagerTabOut)=\"onTabOut()\"\r\n (onSelectAll)=\"onSelectAll($event)\"\r\n checked\r\n [objectArray]=\"objectArray()\"\r\n [multiple]=\"multiple()\"\r\n [selectAll]=\"selectAll()\"\r\n [selectAllText]=\"getSelectAllText()!\"\r\n [nodeTpl]=\"nodeTpl()\"\r\n [scrollElement]=\"selectPortal\"\r\n [virtualScroll]=\"virtualScroll()\"\r\n [size]=\"size()!\"\r\n [heightAdaption]=\"selectPortal\"\r\n [keywordText]=\"keywordText()\"\r\n [caseSensitive]=\"caseSensitive()\"\r\n [inPortal]=\"true\"\r\n ></x-list>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-select-portal{width:100%}.x-select-portal{color:var(--x-text);width:100%;border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);position:relative;display:flex;background-color:var(--x-background-100);overflow:hidden auto;max-height:calc(calc(var(--x-font-size) + .875rem) * 6 + var(--x-border-width) * 7)}.x-select-portal-virtualScroll{overflow-y:hidden}.x-select-portal-virtualScroll .x-list-portal{padding:0}.x-select-portal-virtualScroll .x-list-portal .cdk-virtual-scroll-content-wrapper{padding:.125rem .25rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XListComponent, selector: "x-list" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
393
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: XSelectPortalComponent, isStandalone: true, selector: "x-select-portal", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, nodeTpl: { classPropertyName: "nodeTpl", publicName: "nodeTpl", isSignal: true, isRequired: false, transformFunction: null }, inputCom: { classPropertyName: "inputCom", publicName: "inputCom", isSignal: true, isRequired: false, transformFunction: null }, portalMaxHeight: { classPropertyName: "portalMaxHeight", publicName: "portalMaxHeight", isSignal: true, isRequired: false, transformFunction: null }, portalHeight: { classPropertyName: "portalHeight", publicName: "portalHeight", isSignal: true, isRequired: false, transformFunction: null }, objectArray: { classPropertyName: "objectArray", publicName: "objectArray", isSignal: true, isRequired: false, transformFunction: null }, selectAll: { classPropertyName: "selectAll", publicName: "selectAll", isSignal: true, isRequired: false, transformFunction: null }, selectAllText: { classPropertyName: "selectAllText", publicName: "selectAllText", isSignal: true, isRequired: false, transformFunction: null }, caseSensitive: { classPropertyName: "caseSensitive", publicName: "caseSensitive", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "search", isSignal: true, isRequired: false, transformFunction: null }, virtualScroll: { classPropertyName: "virtualScroll", publicName: "virtualScroll", isSignal: true, isRequired: false, transformFunction: null }, keywordText: { classPropertyName: "keywordText", publicName: "keywordText", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, portalTemp: { classPropertyName: "portalTemp", publicName: "portalTemp", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", animating: "animating", nodeClick: "nodeClick" }, host: { listeners: { "animationend": "done()", "animationstart": "start()" }, properties: { "animate.enter": "this.animateEnter", "animate.leave": "this.animateLeave" } }, viewQueries: [{ propertyName: "list", first: true, predicate: ["list"], descendants: true, isSignal: true }], ngImport: i0, template: "<div\n #selectPortal\n class=\"x-select-portal\"\n [class.x-select-portal-virtualScroll]=\"virtualScroll()\"\n (click)=\"inputCom()?.inputFocus(); stopPropagation($event)\"\n [style.maxHeight]=\"portalHeight() ? portalHeight() : portalMaxHeight()\"\n [style.height]=\"portalHeight()\"\n>\n @if (portalTemp(); as portalTpl) {\n <ng-template\n [ngTemplateOutlet]=\"portalTpl\"\n [ngTemplateOutletContext]=\"portalTempContext()\"\n ></ng-template>\n } @else {\n <x-list\n #list\n [data]=\"data()!\"\n [(ngModel)]=\"value\"\n (nodeClick)=\"onNodeClick($event)\"\n (keyManagerChange)=\"onActive($event)\"\n (keyManagerTabOut)=\"onTabOut()\"\n (onSelectAll)=\"onSelectAll($event)\"\n checked\n [objectArray]=\"objectArray()\"\n [multiple]=\"multiple()\"\n [selectAll]=\"selectAll()\"\n [selectAllText]=\"getSelectAllText()!\"\n [nodeTpl]=\"nodeTpl()\"\n [scrollElement]=\"selectPortal\"\n [virtualScroll]=\"virtualScroll()\"\n [size]=\"size()!\"\n [heightAdaption]=\"selectPortal\"\n [keywordText]=\"keywordText()\"\n [caseSensitive]=\"caseSensitive()\"\n [inPortal]=\"true\"\n ></x-list>\n }\n</div>\n", styles: ["@charset \"UTF-8\";x-select-portal{width:100%}.x-select-portal{color:var(--x-text);width:100%;border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);position:relative;display:flex;background-color:var(--x-background-100);overflow:hidden auto;max-height:calc(calc(var(--x-font-size) + .875rem) * 6 + var(--x-border-width) * 7)}.x-select-portal-virtualScroll{overflow-y:hidden}.x-select-portal-virtualScroll .x-list-portal{padding:0}.x-select-portal-virtualScroll .x-list-portal .cdk-virtual-scroll-content-wrapper{padding:.125rem .25rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XListComponent, selector: "x-list" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
370
394
  }
371
395
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XSelectPortalComponent, decorators: [{
372
396
  type: Component,
373
- args: [{ selector: `${XSelectPortalPrefix}`, imports: [FormsModule, XListComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n #selectPortal\r\n class=\"x-select-portal\"\r\n [class.x-select-portal-virtualScroll]=\"virtualScroll()\"\r\n (click)=\"inputCom()?.inputFocus(); stopPropagation($event)\"\r\n [style.maxHeight]=\"portalHeight() ? portalHeight() : portalMaxHeight()\"\r\n [style.height]=\"portalHeight()\"\r\n>\r\n <x-list\r\n #list\r\n [data]=\"data()!\"\r\n [(ngModel)]=\"value\"\r\n (nodeClick)=\"onNodeClick($event)\"\r\n (keyManagerChange)=\"onActive($event)\"\r\n (keyManagerTabOut)=\"onTabOut()\"\r\n (onSelectAll)=\"onSelectAll($event)\"\r\n checked\r\n [objectArray]=\"objectArray()\"\r\n [multiple]=\"multiple()\"\r\n [selectAll]=\"selectAll()\"\r\n [selectAllText]=\"getSelectAllText()!\"\r\n [nodeTpl]=\"nodeTpl()\"\r\n [scrollElement]=\"selectPortal\"\r\n [virtualScroll]=\"virtualScroll()\"\r\n [size]=\"size()!\"\r\n [heightAdaption]=\"selectPortal\"\r\n [keywordText]=\"keywordText()\"\r\n [caseSensitive]=\"caseSensitive()\"\r\n [inPortal]=\"true\"\r\n ></x-list>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-select-portal{width:100%}.x-select-portal{color:var(--x-text);width:100%;border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);position:relative;display:flex;background-color:var(--x-background-100);overflow:hidden auto;max-height:calc(calc(var(--x-font-size) + .875rem) * 6 + var(--x-border-width) * 7)}.x-select-portal-virtualScroll{overflow-y:hidden}.x-select-portal-virtualScroll .x-list-portal{padding:0}.x-select-portal-virtualScroll .x-list-portal .cdk-virtual-scroll-content-wrapper{padding:.125rem .25rem}\n"] }]
397
+ args: [{ selector: `${XSelectPortalPrefix}`, imports: [FormsModule, XListComponent, NgTemplateOutlet], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n #selectPortal\n class=\"x-select-portal\"\n [class.x-select-portal-virtualScroll]=\"virtualScroll()\"\n (click)=\"inputCom()?.inputFocus(); stopPropagation($event)\"\n [style.maxHeight]=\"portalHeight() ? portalHeight() : portalMaxHeight()\"\n [style.height]=\"portalHeight()\"\n>\n @if (portalTemp(); as portalTpl) {\n <ng-template\n [ngTemplateOutlet]=\"portalTpl\"\n [ngTemplateOutletContext]=\"portalTempContext()\"\n ></ng-template>\n } @else {\n <x-list\n #list\n [data]=\"data()!\"\n [(ngModel)]=\"value\"\n (nodeClick)=\"onNodeClick($event)\"\n (keyManagerChange)=\"onActive($event)\"\n (keyManagerTabOut)=\"onTabOut()\"\n (onSelectAll)=\"onSelectAll($event)\"\n checked\n [objectArray]=\"objectArray()\"\n [multiple]=\"multiple()\"\n [selectAll]=\"selectAll()\"\n [selectAllText]=\"getSelectAllText()!\"\n [nodeTpl]=\"nodeTpl()\"\n [scrollElement]=\"selectPortal\"\n [virtualScroll]=\"virtualScroll()\"\n [size]=\"size()!\"\n [heightAdaption]=\"selectPortal\"\n [keywordText]=\"keywordText()\"\n [caseSensitive]=\"caseSensitive()\"\n [inPortal]=\"true\"\n ></x-list>\n }\n</div>\n", styles: ["@charset \"UTF-8\";x-select-portal{width:100%}.x-select-portal{color:var(--x-text);width:100%;border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);position:relative;display:flex;background-color:var(--x-background-100);overflow:hidden auto;max-height:calc(calc(var(--x-font-size) + .875rem) * 6 + var(--x-border-width) * 7)}.x-select-portal-virtualScroll{overflow-y:hidden}.x-select-portal-virtualScroll .x-list-portal{padding:0}.x-select-portal-virtualScroll .x-list-portal .cdk-virtual-scroll-content-wrapper{padding:.125rem .25rem}\n"] }]
374
398
  }], propDecorators: { animateEnter: [{
375
399
  type: HostBinding,
376
400
  args: ['animate.enter']
@@ -383,7 +407,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
383
407
  }], start: [{
384
408
  type: HostListener,
385
409
  args: ['animationstart']
386
- }], list: [{ type: i0.ViewChild, args: ['list', { isSignal: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], placement: [{ type: i0.Input, args: [{ isSignal: true, alias: "placement", required: false }] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], nodeTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "nodeTpl", required: false }] }], inputCom: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputCom", required: false }] }], portalMaxHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalMaxHeight", required: false }] }], portalHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalHeight", required: false }] }], objectArray: [{ type: i0.Input, args: [{ isSignal: true, alias: "objectArray", required: false }] }], selectAll: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAll", required: false }] }], selectAllText: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAllText", required: false }] }], caseSensitive: [{ type: i0.Input, args: [{ isSignal: true, alias: "caseSensitive", required: false }] }], search: [{ type: i0.Input, args: [{ isSignal: true, alias: "search", required: false }] }], virtualScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScroll", required: false }] }], keywordText: [{ type: i0.Input, args: [{ isSignal: true, alias: "keywordText", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], animating: [{ type: i0.Output, args: ["animating"] }], nodeClick: [{ type: i0.Output, args: ["nodeClick"] }] } });
410
+ }], list: [{ type: i0.ViewChild, args: ['list', { isSignal: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], placement: [{ type: i0.Input, args: [{ isSignal: true, alias: "placement", required: false }] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], nodeTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "nodeTpl", required: false }] }], inputCom: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputCom", required: false }] }], portalMaxHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalMaxHeight", required: false }] }], portalHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalHeight", required: false }] }], objectArray: [{ type: i0.Input, args: [{ isSignal: true, alias: "objectArray", required: false }] }], selectAll: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAll", required: false }] }], selectAllText: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAllText", required: false }] }], caseSensitive: [{ type: i0.Input, args: [{ isSignal: true, alias: "caseSensitive", required: false }] }], search: [{ type: i0.Input, args: [{ isSignal: true, alias: "search", required: false }] }], virtualScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScroll", required: false }] }], keywordText: [{ type: i0.Input, args: [{ isSignal: true, alias: "keywordText", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], portalTemp: [{ type: i0.Input, args: [{ isSignal: true, alias: "portalTemp", required: false }] }], animating: [{ type: i0.Output, args: ["animating"] }], nodeClick: [{ type: i0.Output, args: ["nodeClick"] }] } });
387
411
 
388
412
  class XSelectComponent extends XSelectProperty {
389
413
  writeValue(value) {
@@ -421,7 +445,7 @@ class XSelectComponent extends XSelectProperty {
421
445
  this.getReadonly = computed(() => this.readonly() || !this.search() || !this.allowInput(), ...(ngDevMode ? [{ debugName: "getReadonly" }] : []));
422
446
  this.getMaxTagContent = computed(() => this.maxTagContent() || this.locale().maxTagContent, ...(ngDevMode ? [{ debugName: "getMaxTagContent" }] : []));
423
447
  this.noPortalWidthPlacements = ['bottom', 'top'];
424
- this.hasPortalWidthPlacements = ['bottom-start', 'bottom-end', 'top-start', 'top-end'];
448
+ this.hasPortalWidthPlacements = ['bottom-start', 'bottom-end', 'bottom', 'top-start', 'top-end', 'top'];
425
449
  this.enter = signal(false, ...(ngDevMode ? [{ debugName: "enter" }] : []));
426
450
  this.showClearable = signal(false, ...(ngDevMode ? [{ debugName: "showClearable" }] : []));
427
451
  this.displayValue = signal('', ...(ngDevMode ? [{ debugName: "displayValue" }] : []));
@@ -510,6 +534,7 @@ class XSelectComponent extends XSelectProperty {
510
534
  effect(() => this.portalComponent()?.setInput('virtualScroll', this.virtualScroll()));
511
535
  effect(() => this.portalComponent()?.setInput('size', this.size()));
512
536
  effect(() => this.portalComponent()?.setInput('keywordText', this.keywordText()));
537
+ effect(() => this.portalComponent()?.setInput('portalTemp', this.portalTemp()));
513
538
  }
514
539
  ngOnInit() {
515
540
  this.setSubject();
@@ -1072,6 +1097,12 @@ class XSelectComponent extends XSelectProperty {
1072
1097
  $event.preventDefault();
1073
1098
  }
1074
1099
  }
1100
+ portalClose() {
1101
+ this.closeSubject.next();
1102
+ }
1103
+ portalNodeClick(node, value) {
1104
+ this.nodeClick(node, value);
1105
+ }
1075
1106
  onFocus(_event) {
1076
1107
  if (this.search() && this.multiple() && this.multipleInput()) {
1077
1108
  this.multipleInput().inputFocus();
@@ -1082,7 +1113,11 @@ class XSelectComponent extends XSelectProperty {
1082
1113
  }
1083
1114
  onInput(_event) {
1084
1115
  this.formControlValidator();
1085
- setTimeout(() => this.inputChange.next(this.multiple() ? this.multipleSearchValue() : this.displayValue()));
1116
+ setTimeout(() => {
1117
+ const value = this.multiple() ? this.multipleSearchValue() : this.displayValue();
1118
+ this.searchChange.emit(value);
1119
+ this.inputChange.next(value);
1120
+ });
1086
1121
  }
1087
1122
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: XSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1088
1123
  /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: XSelectComponent, isStandalone: true, selector: "x-select", host: { properties: { "style.width": "this.getWidth" } }, providers: [XValueAccessor(XSelectComponent)], viewQueries: [{ propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, isSignal: true }, { propertyName: "select", first: true, predicate: ["select"], descendants: true, isSignal: true }, { propertyName: "multipleValueTpl", first: true, predicate: ["multipleValueTpl"], descendants: true, isSignal: true }, { propertyName: "multipleInput", first: true, predicate: ["multipleInput"], descendants: true, isSignal: true }, { propertyName: "searchInput", first: true, predicate: ["searchInput"], descendants: true, isSignal: true }, { propertyName: "valueTemplate", first: true, predicate: ["valueTemplate"], descendants: true, isSignal: true }, { propertyName: "searchTemplate", first: true, predicate: ["searchTemplate"], descendants: true, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #select\r\n class=\"x-select\"\r\n [class.x-select-multiple]=\"multiple()\"\r\n [class.x-select-search-single]=\"search() && !multiple()\"\r\n>\r\n <div class=\"x-select-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [width]=\"width()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()!\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [iconSpin]=\"iconSpin()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"getReadonly()\"\r\n [clearable]=\"showClearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTplComputed()\"\r\n [valueTplContext]=\"valueTplContextComputed()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [inputStyle]=\"inputStyle()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [variant]=\"variant()\"\r\n [floatLabel]=\"floatLabel()\"\r\n [floatFixed]=\"floatFixed()\"\r\n [autoWidth]=\"autoWidth()\"\r\n [autoMinWidth]=\"autoMinWidth()!\"\r\n [autoMaxWidth]=\"autoMaxWidth()!\"\r\n [autoWidthValue]=\"displayValue()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xKeydown)=\"onKeydown($event)\"\r\n (xInput)=\"onInput($event)\"\r\n (xFocus)=\"onFocus($event)\"\r\n (xClick)=\"showPortal(true)\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n (xComposition)=\"composition.set($event)\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n\r\n<ng-template #valueTemplate>\r\n <span [attr.title]=\"displayValue()\">{{ displayValue() }}</span>\r\n</ng-template>\r\n\r\n<ng-template #searchTemplate>\r\n <x-input\r\n #searchInput\r\n [bordered]=\"false\"\r\n [size]=\"size()\"\r\n [(ngModel)]=\"displayValue\"\r\n [clearable]=\"false\"\r\n (xInput)=\"onInput($event)\"\r\n (xKeydown)=\"onKeydown($event)\"\r\n ></x-input>\r\n</ng-template>\r\n\r\n<ng-template #multipleValueTpl>\r\n @for (node of displayNodes(); track node.id; let i = $index) {\r\n <x-tag\r\n [bordered]=\"false\"\r\n [closable]=\"!disabledComputed()\"\r\n [type]=\"'info'\"\r\n (close)=\"closeNode($event, node, i)\"\r\n [size]=\"size()\"\r\n >{{ node.label }}</x-tag\r\n >\r\n }\r\n @if (showDisplayMore()) {\r\n <x-tag [@.disabled]=\"true\" [bordered]=\"false\" [type]=\"'info'\" [size]=\"size()\">\r\n <ng-container *xOutlet=\"getMaxTagContent(); context: { $surplus: selectedSurplus(), $total: selectedTotal() }\">{{\r\n displayMore()\r\n }}</ng-container>\r\n </x-tag>\r\n }\r\n\r\n @if (search()) {\r\n <x-input\r\n #multipleInput\r\n [bordered]=\"false\"\r\n [size]=\"size()\"\r\n [ngModel]=\"multipleSearchValue()\"\r\n (ngModelChange)=\"multipleSearchValue.set($event)\"\r\n (xInput)=\"onInput($event)\"\r\n (xKeydown)=\"onKeydown($event)\"\r\n ></x-input>\r\n }\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";x-select{display:inline-block;width:12rem}.x-select{margin:0;padding:0}.x-select{width:100%}.x-select x-input{width:100%}.x-select-multiple .x-input-value-template-value,.x-select-search-single .x-input-value-template-value{display:flex;align-items:center;margin-bottom:.125rem;flex-wrap:wrap;width:initial;height:initial!important;left:.125rem!important}.x-select-multiple .x-input-value-template-value>x-tag,.x-select-search-single .x-input-value-template-value>x-tag{display:inline-flex;margin-left:.0625rem;margin-top:.125rem}.x-select-multiple .x-input-value-template-value>x-tag .x-tag-big,.x-select-search-single .x-input-value-template-value>x-tag .x-tag-big{height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-select-multiple .x-input-value-template-value>x-tag .x-tag-big>.x-icon,.x-select-search-single .x-input-value-template-value>x-tag .x-tag-big>.x-icon{right:calc(-var(--x-padding-large)/2)}.x-select-multiple .x-input-value-template-value>x-tag .x-tag-large,.x-select-search-single .x-input-value-template-value>x-tag .x-tag-large{height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-select-multiple .x-input-value-template-value>x-tag .x-tag-large>.x-icon,.x-select-search-single .x-input-value-template-value>x-tag .x-tag-large>.x-icon{right:calc(-var(--x-padding-medium)/2)}.x-select-multiple .x-input-value-template-value>x-tag .x-tag-medium,.x-select-search-single .x-input-value-template-value>x-tag .x-tag-medium{height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-select-multiple .x-input-value-template-value>x-tag .x-tag-medium>.x-icon,.x-select-search-single .x-input-value-template-value>x-tag .x-tag-medium>.x-icon{right:calc(-var(--x-padding-small)/2)}.x-select-multiple .x-input-value-template-value>x-tag .x-tag-small,.x-select-search-single .x-input-value-template-value>x-tag .x-tag-small{height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-select-multiple .x-input-value-template-value>x-tag .x-tag-small>.x-icon,.x-select-search-single .x-input-value-template-value>x-tag .x-tag-small>.x-icon{right:calc(-var(--x-padding-mini)/2)}.x-select-multiple .x-input-value-template-value>x-tag .x-tag-mini,.x-select-search-single .x-input-value-template-value>x-tag .x-tag-mini{height:1.125rem;line-height:1.125rem;padding:0 .125rem}.x-select-multiple .x-input-value-template-value>x-tag .x-tag-mini>.x-icon,.x-select-search-single .x-input-value-template-value>x-tag .x-tag-mini>.x-icon{right:-.0625rem}.x-select-multiple .x-input-value-template-value>x-input,.x-select-search-single .x-input-value-template-value>x-input{margin-top:.125rem;width:5rem}.x-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>input,.x-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-search-single .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>input,.x-select-search-single .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-max-length,.x-select-search-single .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-large);line-height:var(--x-height-large)}.x-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-row-after:not(.x-input-row-after-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-select-multiple .x-input-value-template-value>x-input .x-input-big>label,.x-select-search-single .x-input-value-template-value>x-input .x-input-big>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>input,.x-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-search-single .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>input,.x-select-search-single .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-max-length,.x-select-search-single .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-row-after:not(.x-input-row-after-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-select-multiple .x-input-value-template-value>x-input .x-input-large>label,.x-select-search-single .x-input-value-template-value>x-input .x-input-large>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>input,.x-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-search-single .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>input,.x-select-search-single .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-max-length,.x-select-search-single .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-small);line-height:var(--x-height-small)}.x-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-row-after:not(.x-input-row-after-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-select-multiple .x-input-value-template-value>x-input .x-input-medium>label,.x-select-search-single .x-input-value-template-value>x-input .x-input-medium>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>input,.x-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-search-single .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>input,.x-select-search-single .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-max-length,.x-select-search-single .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-row-after:not(.x-input-row-after-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-select-multiple .x-input-value-template-value>x-input .x-input-small>label,.x-select-search-single .x-input-value-template-value>x-input .x-input-small>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>input,.x-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-search-single .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>input,.x-select-search-single .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-value-template-value{height:1.125rem;line-height:1.125rem;padding:0 .125rem}.x-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-max-length,.x-select-search-single .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-max-length{height:1.125rem;line-height:1.125rem}.x-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-row-after:not(.x-input-row-after-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-select-search-single .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:1.125rem;line-height:1.125rem;padding:0 .125rem}.x-select-multiple .x-input-value-template-value>x-input .x-input-mini>label,.x-select-search-single .x-input-value-template-value>x-input .x-input-mini>label{height:1.125rem;line-height:1.125rem}.x-select-multiple .x-input-value-template-value>x-input .x-input-row>.x-input-input>input,.x-select-search-single .x-input-value-template-value>x-input .x-input-row>.x-input-input>input{background-color:transparent}.x-select-multiple .x-input-mini.x-input-float-label-in>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-multiple .x-input-small.x-input-float-label-in>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-multiple .x-input-medium.x-input-float-label-in>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-multiple .x-input-large.x-input-float-label-in>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-multiple .x-input-big.x-input-float-label-in>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-search-single .x-input-mini.x-input-float-label-in>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-search-single .x-input-small.x-input-float-label-in>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-search-single .x-input-medium.x-input-float-label-in>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-search-single .x-input-large.x-input-float-label-in>.x-input-row>.x-input-input>.x-input-value-template-value,.x-select-search-single .x-input-big.x-input-float-label-in>.x-input-row>.x-input-input>.x-input-value-template-value{padding-bottom:.125rem}.x-select-search-single .x-input-value-template-value{left:.75rem!important}.x-select-search-single .x-input-value-template-value>x-input{width:100%}.x-select-search-single .x-input-value-template-value>x-input .x-input-row>.x-input-input>input{padding:0!important}.x-select-portal{color:var(--x-text);width:100%;border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);position:relative;display:flex;background-color:var(--x-background-100);overflow:hidden auto;max-height:calc(calc(var(--x-font-size) + .875rem) * 6 + var(--x-border-width) * 7)}.x-select-portal-virtualScroll{overflow-y:hidden}.x-select-portal-virtualScroll .x-list-portal{padding:0}.x-select-portal-virtualScroll .x-list-portal .cdk-virtual-scroll-content-wrapper{padding:.125rem .25rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XTagComponent, selector: "x-tag" }, { kind: "component", type: XInputComponent, selector: "x-input" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }