@ng-nest/ui 20.1.0 → 20.1.2

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 (121) hide show
  1. package/alert/index.d.ts +21 -2
  2. package/auto-complete/index.d.ts +3 -3
  3. package/avatar/index.d.ts +64 -2
  4. package/bubble/index.d.ts +190 -0
  5. package/calendar/index.d.ts +2 -1
  6. package/cascade/index.d.ts +3 -3
  7. package/color-picker/index.d.ts +3 -3
  8. package/core/index.d.ts +21 -4
  9. package/date-picker/index.d.ts +4 -4
  10. package/dropdown/index.d.ts +4 -4
  11. package/fesm2022/ng-nest-ui-affix.mjs +11 -13
  12. package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
  13. package/fesm2022/ng-nest-ui-alert.mjs +28 -15
  14. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  15. package/fesm2022/ng-nest-ui-anchor.mjs +18 -22
  16. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  17. package/fesm2022/ng-nest-ui-api.mjs +7 -7
  18. package/fesm2022/ng-nest-ui-auto-complete.mjs +13 -13
  19. package/fesm2022/ng-nest-ui-avatar.mjs +28 -16
  20. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  21. package/fesm2022/ng-nest-ui-back-top.mjs +10 -10
  22. package/fesm2022/ng-nest-ui-badge.mjs +10 -10
  23. package/fesm2022/ng-nest-ui-base-form.mjs +7 -7
  24. package/fesm2022/ng-nest-ui-bubble.mjs +374 -0
  25. package/fesm2022/ng-nest-ui-bubble.mjs.map +1 -0
  26. package/fesm2022/ng-nest-ui-button.mjs +16 -16
  27. package/fesm2022/ng-nest-ui-calendar.mjs +10 -10
  28. package/fesm2022/ng-nest-ui-card.mjs +10 -10
  29. package/fesm2022/ng-nest-ui-carousel.mjs +16 -16
  30. package/fesm2022/ng-nest-ui-cascade.mjs +13 -13
  31. package/fesm2022/ng-nest-ui-checkbox.mjs +11 -11
  32. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  33. package/fesm2022/ng-nest-ui-collapse.mjs +16 -16
  34. package/fesm2022/ng-nest-ui-color-picker.mjs +16 -16
  35. package/fesm2022/ng-nest-ui-color.mjs +10 -10
  36. package/fesm2022/ng-nest-ui-comment.mjs +16 -16
  37. package/fesm2022/ng-nest-ui-container.mjs +31 -31
  38. package/fesm2022/ng-nest-ui-core.mjs +21 -18
  39. package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
  40. package/fesm2022/ng-nest-ui-crumb.mjs +10 -10
  41. package/fesm2022/ng-nest-ui-date-picker.mjs +49 -49
  42. package/fesm2022/ng-nest-ui-description.mjs +16 -16
  43. package/fesm2022/ng-nest-ui-dialog.mjs +40 -40
  44. package/fesm2022/ng-nest-ui-doc.mjs +7 -7
  45. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  46. package/fesm2022/ng-nest-ui-drawer.mjs +31 -31
  47. package/fesm2022/ng-nest-ui-dropdown.mjs +13 -13
  48. package/fesm2022/ng-nest-ui-empty.mjs +10 -10
  49. package/fesm2022/ng-nest-ui-examples.mjs +7 -7
  50. package/fesm2022/ng-nest-ui-find.mjs +10 -10
  51. package/fesm2022/ng-nest-ui-form.mjs +16 -16
  52. package/fesm2022/ng-nest-ui-highlight.mjs +13 -13
  53. package/fesm2022/ng-nest-ui-i18n.mjs +13 -13
  54. package/fesm2022/ng-nest-ui-icon.mjs +13 -13
  55. package/fesm2022/ng-nest-ui-image.mjs +19 -19
  56. package/fesm2022/ng-nest-ui-inner.mjs +10 -10
  57. package/fesm2022/ng-nest-ui-input-number.mjs +10 -10
  58. package/fesm2022/ng-nest-ui-input.mjs +18 -18
  59. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  60. package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
  61. package/fesm2022/ng-nest-ui-layout.mjs +16 -16
  62. package/fesm2022/ng-nest-ui-link.mjs +10 -10
  63. package/fesm2022/ng-nest-ui-list.mjs +19 -19
  64. package/fesm2022/ng-nest-ui-loading.mjs +16 -11
  65. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  66. package/fesm2022/ng-nest-ui-menu.mjs +16 -16
  67. package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
  68. package/fesm2022/ng-nest-ui-message.mjs +10 -10
  69. package/fesm2022/ng-nest-ui-notification.mjs +10 -10
  70. package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
  71. package/fesm2022/ng-nest-ui-page-header.mjs +10 -10
  72. package/fesm2022/ng-nest-ui-pagination.mjs +10 -10
  73. package/fesm2022/ng-nest-ui-pattern.mjs +7 -7
  74. package/fesm2022/ng-nest-ui-popconfirm.mjs +10 -10
  75. package/fesm2022/ng-nest-ui-popover.mjs +13 -13
  76. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  77. package/fesm2022/ng-nest-ui-progress.mjs +10 -10
  78. package/fesm2022/ng-nest-ui-radio.mjs +10 -10
  79. package/fesm2022/ng-nest-ui-rate.mjs +10 -10
  80. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  81. package/fesm2022/ng-nest-ui-result.mjs +10 -10
  82. package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
  83. package/fesm2022/ng-nest-ui-scrollable.mjs +7 -7
  84. package/fesm2022/ng-nest-ui-select.mjs +13 -13
  85. package/fesm2022/ng-nest-ui-sender.mjs +189 -0
  86. package/fesm2022/ng-nest-ui-sender.mjs.map +1 -0
  87. package/fesm2022/ng-nest-ui-skeleton.mjs +10 -10
  88. package/fesm2022/ng-nest-ui-slider-select.mjs +10 -10
  89. package/fesm2022/ng-nest-ui-slider.mjs +10 -10
  90. package/fesm2022/ng-nest-ui-statistic.mjs +16 -16
  91. package/fesm2022/ng-nest-ui-steps.mjs +10 -10
  92. package/fesm2022/ng-nest-ui-switch.mjs +10 -10
  93. package/fesm2022/ng-nest-ui-table-view.mjs +58 -58
  94. package/fesm2022/ng-nest-ui-table.mjs +34 -34
  95. package/fesm2022/ng-nest-ui-tabs.mjs +25 -25
  96. package/fesm2022/ng-nest-ui-tag.mjs +10 -10
  97. package/fesm2022/ng-nest-ui-text-retract.mjs +10 -10
  98. package/fesm2022/ng-nest-ui-textarea.mjs +11 -11
  99. package/fesm2022/ng-nest-ui-theme.mjs +10 -10
  100. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  101. package/fesm2022/ng-nest-ui-time-picker.mjs +16 -16
  102. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  103. package/fesm2022/ng-nest-ui-timeline.mjs +10 -10
  104. package/fesm2022/ng-nest-ui-tooltip.mjs +13 -13
  105. package/fesm2022/ng-nest-ui-transfer.mjs +10 -10
  106. package/fesm2022/ng-nest-ui-tree-file.mjs +10 -10
  107. package/fesm2022/ng-nest-ui-tree-select.mjs +13 -13
  108. package/fesm2022/ng-nest-ui-tree.mjs +19 -19
  109. package/fesm2022/ng-nest-ui-typography.mjs +10 -10
  110. package/fesm2022/ng-nest-ui-upload.mjs +13 -13
  111. package/fesm2022/ng-nest-ui.mjs +2 -0
  112. package/fesm2022/ng-nest-ui.mjs.map +1 -1
  113. package/index.d.ts +2 -0
  114. package/loading/index.d.ts +6 -1
  115. package/message-box/index.d.ts +5 -4
  116. package/package.json +21 -13
  117. package/select/index.d.ts +3 -3
  118. package/sender/index.d.ts +169 -0
  119. package/steps/index.d.ts +2 -1
  120. package/time-picker/index.d.ts +3 -3
  121. package/tree-select/index.d.ts +3 -3
@@ -12,10 +12,10 @@ class XApiComponent {
12
12
  constructor() {
13
13
  this._has = true;
14
14
  }
15
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XApiComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.4", type: XApiComponent, isStandalone: true, selector: "x-api", host: { properties: { "class.x-api": "this._has" } }, ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: [".x-api{margin:0;padding:0}.x-api{display:block}.x-api>.x-api-selector:not(:first-child){margin-top:1rem}.x-api>.x-api-selector>span:first-child{font-size:1.25rem}.x-api>.x-api-selector>span:last-child{margin-left:1rem;padding:.25rem .5rem;color:var(--x-danger);background:var(--x-danger-900);border-radius:var(--x-border-small-radius)}.x-api>.x-api-interface>tr>td:nth-child(1){width:20%;position:relative;white-space:nowrap}.x-api>.x-api-interface>tr>td:nth-child(3){width:22%;color:#f637e3}.x-api>.x-api-interface>tr>td:nth-child(4){color:#fa2c05;width:16%}.x-api>.x-api-type>tr>td:nth-child(1){color:#3b82f6;width:20%}.x-api>.x-api-type>tr>td:nth-child(3){color:#dd4a68;width:35%}.x-api .x-api-name{color:#3b82f6;cursor:pointer;background-color:#3b82f61a;border-radius:var(--x-border-small-radius);padding:.25rem .325rem .25rem 1.5rem;transition:var(--x-animation-duration-base) background-color;will-change:background-color}.x-api .x-api-name:hover{background-color:#3b82f633}.x-api .x-api-signal{background:#3b82f61a;border-radius:var(--x-border-small-radius);color:var(--x-success);margin-right:-1.325rem;height:1.625rem;width:1.375rem;display:inline-flex;align-items:center;justify-content:center}.x-api .x-api-popover{color:#f637e3;cursor:pointer;background-color:#f637e31a;border-radius:var(--x-border-small-radius);padding:.25rem .325rem;transition:var(--x-animation-duration-base) background-color;will-change:background-color}.x-api .x-api-popover:hover{background-color:#f637e333}.x-api table{width:100%;background:var(--x-background);border-collapse:collapse;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-api table tr>th,.x-api table tr>td{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left;padding:.5rem 0}.x-api table tr:last-child>th,.x-api table tr:last-child>td{border-width:0px}.x-api table tr th{white-space:nowrap;color:var(--x-text)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
15
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XApiComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: XApiComponent, isStandalone: true, selector: "x-api", host: { properties: { "class.x-api": "this._has" } }, ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: [".x-api{margin:0;padding:0}.x-api{display:block}.x-api>.x-api-selector:not(:first-child){margin-top:1rem}.x-api>.x-api-selector>span:first-child{font-size:1.25rem}.x-api>.x-api-selector>span:last-child{margin-left:1rem;padding:.25rem .5rem;color:var(--x-danger);background:var(--x-danger-900);border-radius:var(--x-border-small-radius)}.x-api>.x-api-interface>tr>td:nth-child(1){width:20%;position:relative;white-space:nowrap}.x-api>.x-api-interface>tr>td:nth-child(3){width:22%;color:#f637e3}.x-api>.x-api-interface>tr>td:nth-child(4){color:#fa2c05;width:16%}.x-api>.x-api-type>tr>td:nth-child(1){color:#3b82f6;width:20%}.x-api>.x-api-type>tr>td:nth-child(3){color:#dd4a68;width:35%}.x-api .x-api-name{color:#3b82f6;cursor:pointer;background-color:#3b82f61a;border-radius:var(--x-border-small-radius);padding:.25rem .325rem .25rem 1.5rem;transition:var(--x-animation-duration-base) background-color;will-change:background-color}.x-api .x-api-name:hover{background-color:#3b82f633}.x-api .x-api-signal{background:#3b82f61a;border-radius:var(--x-border-small-radius);color:var(--x-success);margin-right:-1.325rem;height:1.625rem;width:1.375rem;display:inline-flex;align-items:center;justify-content:center}.x-api .x-api-popover{color:#f637e3;cursor:pointer;background-color:#f637e31a;border-radius:var(--x-border-small-radius);padding:.25rem .325rem;transition:var(--x-animation-duration-base) background-color;will-change:background-color}.x-api .x-api-popover:hover{background-color:#f637e333}.x-api table{width:100%;background:var(--x-background);border-collapse:collapse;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-api table tr>th,.x-api table tr>td{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left;padding:.5rem 0}.x-api table tr:last-child>th,.x-api table tr:last-child>td{border-width:0px}.x-api table tr th{white-space:nowrap;color:var(--x-text)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
17
17
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XApiComponent, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XApiComponent, decorators: [{
19
19
  type: Component,
20
20
  args: [{ selector: `${XApiPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\r\n", styles: [".x-api{margin:0;padding:0}.x-api{display:block}.x-api>.x-api-selector:not(:first-child){margin-top:1rem}.x-api>.x-api-selector>span:first-child{font-size:1.25rem}.x-api>.x-api-selector>span:last-child{margin-left:1rem;padding:.25rem .5rem;color:var(--x-danger);background:var(--x-danger-900);border-radius:var(--x-border-small-radius)}.x-api>.x-api-interface>tr>td:nth-child(1){width:20%;position:relative;white-space:nowrap}.x-api>.x-api-interface>tr>td:nth-child(3){width:22%;color:#f637e3}.x-api>.x-api-interface>tr>td:nth-child(4){color:#fa2c05;width:16%}.x-api>.x-api-type>tr>td:nth-child(1){color:#3b82f6;width:20%}.x-api>.x-api-type>tr>td:nth-child(3){color:#dd4a68;width:35%}.x-api .x-api-name{color:#3b82f6;cursor:pointer;background-color:#3b82f61a;border-radius:var(--x-border-small-radius);padding:.25rem .325rem .25rem 1.5rem;transition:var(--x-animation-duration-base) background-color;will-change:background-color}.x-api .x-api-name:hover{background-color:#3b82f633}.x-api .x-api-signal{background:#3b82f61a;border-radius:var(--x-border-small-radius);color:var(--x-success);margin-right:-1.325rem;height:1.625rem;width:1.375rem;display:inline-flex;align-items:center;justify-content:center}.x-api .x-api-popover{color:#f637e3;cursor:pointer;background-color:#f637e31a;border-radius:var(--x-border-small-radius);padding:.25rem .325rem;transition:var(--x-animation-duration-base) background-color;will-change:background-color}.x-api .x-api-popover:hover{background-color:#f637e333}.x-api table{width:100%;background:var(--x-background);border-collapse:collapse;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-api table tr>th,.x-api table tr>td{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left;padding:.5rem 0}.x-api table tr:last-child>th,.x-api table tr:last-child>td{border-width:0px}.x-api table tr th{white-space:nowrap;color:var(--x-text)}\n"] }]
21
21
  }], propDecorators: { _has: [{
@@ -24,11 +24,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImpor
24
24
  }] } });
25
25
 
26
26
  class XApiModule {
27
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XApiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
28
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.4", ngImport: i0, type: XApiModule, imports: [XApiComponent], exports: [XApiComponent] }); }
29
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XApiModule }); }
27
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XApiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
28
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.0", ngImport: i0, type: XApiModule, imports: [XApiComponent], exports: [XApiComponent] }); }
29
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XApiModule }); }
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XApiModule, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XApiModule, decorators: [{
32
32
  type: NgModule,
33
33
  args: [{
34
34
  exports: [XApiComponent],
@@ -206,10 +206,10 @@ class XAutoCompleteProperty extends XFormControlFunction(X_AUTOCOMPLETE_CONFIG_N
206
206
  */
207
207
  this.nodeEmit = output();
208
208
  }
209
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAutoCompleteProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
210
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XAutoCompleteProperty, isStandalone: true, selector: "x-auto-complete-property", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", 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 }, 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 }, caseSensitive: { classPropertyName: "caseSensitive", publicName: "caseSensitive", isSignal: true, isRequired: false, transformFunction: null }, onlySelect: { classPropertyName: "onlySelect", publicName: "onlySelect", 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", nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
209
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAutoCompleteProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
210
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.0", type: XAutoCompleteProperty, isStandalone: true, selector: "x-auto-complete-property", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", 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 }, 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 }, caseSensitive: { classPropertyName: "caseSensitive", publicName: "caseSensitive", isSignal: true, isRequired: false, transformFunction: null }, onlySelect: { classPropertyName: "onlySelect", publicName: "onlySelect", 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", nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
211
211
  }
212
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAutoCompleteProperty, decorators: [{
212
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAutoCompleteProperty, decorators: [{
213
213
  type: Component,
214
214
  args: [{ selector: `${XAutoCompletePrefix}-property`, template: '' }]
215
215
  }] });
@@ -279,10 +279,10 @@ class XAutoCompletePortalComponent {
279
279
  onTabOut() {
280
280
  this.closeSubject.next();
281
281
  }
282
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAutoCompletePortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
283
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.2.4", type: XAutoCompletePortalComponent, isStandalone: true, selector: "x-auto-complete-portal", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", 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 }, keywordText: { classPropertyName: "keywordText", publicName: "keywordText", isSignal: true, isRequired: false, transformFunction: null }, caseSensitive: { classPropertyName: "caseSensitive", publicName: "caseSensitive", 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 } }, outputs: { keywordText: "keywordTextChange", animating: "animating", nodeClick: "nodeClick" }, host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.getPlacement" } }, viewQueries: [{ propertyName: "list", first: true, predicate: ["list"], descendants: true, read: XListComponent, isSignal: true }], ngImport: i0, template: "<div\r\n #autoCompletePortal\r\n class=\"x-auto-complete-portal\"\r\n tabindex=\"-1\"\r\n (click)=\"inputCom()?.inputFocus('focus'); 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 (nodeClick)=\"onNodeClick($event)\"\r\n (keyManagerChange)=\"onActive($event)\"\r\n (keyManagerTabOut)=\"onTabOut()\"\r\n [nodeTpl]=\"nodeTpl()\"\r\n [scrollElement]=\"autoCompletePortal\"\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-auto-complete-portal{width:100%}.x-auto-complete-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-auto-complete-portal:focus{outline:none}\n"], dependencies: [{ kind: "component", type: XListComponent, selector: "x-list" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
282
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAutoCompletePortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
283
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.0", type: XAutoCompletePortalComponent, isStandalone: true, selector: "x-auto-complete-portal", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", 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 }, keywordText: { classPropertyName: "keywordText", publicName: "keywordText", isSignal: true, isRequired: false, transformFunction: null }, caseSensitive: { classPropertyName: "caseSensitive", publicName: "caseSensitive", 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 } }, outputs: { keywordText: "keywordTextChange", animating: "animating", nodeClick: "nodeClick" }, host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.getPlacement" } }, viewQueries: [{ propertyName: "list", first: true, predicate: ["list"], descendants: true, read: XListComponent, isSignal: true }], ngImport: i0, template: "<div\r\n #autoCompletePortal\r\n class=\"x-auto-complete-portal\"\r\n tabindex=\"-1\"\r\n (click)=\"inputCom()?.inputFocus('focus'); 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 (nodeClick)=\"onNodeClick($event)\"\r\n (keyManagerChange)=\"onActive($event)\"\r\n (keyManagerTabOut)=\"onTabOut()\"\r\n [nodeTpl]=\"nodeTpl()\"\r\n [scrollElement]=\"autoCompletePortal\"\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-auto-complete-portal{width:100%}.x-auto-complete-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-auto-complete-portal:focus{outline:none}\n"], dependencies: [{ kind: "component", type: XListComponent, selector: "x-list" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
284
284
  }
285
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAutoCompletePortalComponent, decorators: [{
285
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAutoCompletePortalComponent, decorators: [{
286
286
  type: Component,
287
287
  args: [{ selector: `${XAutoCompletePortalPrefix}`, imports: [XListComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XConnectBaseAnimation], template: "<div\r\n #autoCompletePortal\r\n class=\"x-auto-complete-portal\"\r\n tabindex=\"-1\"\r\n (click)=\"inputCom()?.inputFocus('focus'); 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 (nodeClick)=\"onNodeClick($event)\"\r\n (keyManagerChange)=\"onActive($event)\"\r\n (keyManagerTabOut)=\"onTabOut()\"\r\n [nodeTpl]=\"nodeTpl()\"\r\n [scrollElement]=\"autoCompletePortal\"\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-auto-complete-portal{width:100%}.x-auto-complete-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-auto-complete-portal:focus{outline:none}\n"] }]
288
288
  }], propDecorators: { getPlacement: [{
@@ -574,20 +574,20 @@ class XAutoCompleteComponent extends XAutoCompleteProperty {
574
574
  this.inputChange.next(this.value());
575
575
  });
576
576
  }
577
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAutoCompleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
578
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.2.4", type: XAutoCompleteComponent, isStandalone: true, selector: "x-auto-complete", providers: [XValueAccessor(XAutoCompleteComponent)], viewQueries: [{ propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, read: XInputComponent, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #autoComplete class=\"x-auto-complete\">\r\n <div class=\"x-auto-complete-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 [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]=\"readonly()\"\r\n [clearable]=\"false\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl()\"\r\n [valueTplContext]=\"valueTplContextComputed()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\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 [(active)]=\"active\"\r\n (xInput)=\"onInput($event)\"\r\n (xKeydown)=\"onKeydown($event)\"\r\n (xClick)=\"showPortal()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-auto-complete{display:inline-block;width:12rem}.x-auto-complete{margin:0;padding:0}.x-auto-complete{width:100%}.x-auto-complete x-input{width:100%}.x-auto-complete-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-auto-complete-portal:focus{outline:none}\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: XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
577
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAutoCompleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
578
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.0", type: XAutoCompleteComponent, isStandalone: true, selector: "x-auto-complete", providers: [XValueAccessor(XAutoCompleteComponent)], viewQueries: [{ propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, read: XInputComponent, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #autoComplete class=\"x-auto-complete\">\r\n <div class=\"x-auto-complete-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 [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]=\"readonly()\"\r\n [clearable]=\"false\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl()\"\r\n [valueTplContext]=\"valueTplContextComputed()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\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 [(active)]=\"active\"\r\n (xInput)=\"onInput($event)\"\r\n (xKeydown)=\"onKeydown($event)\"\r\n (xClick)=\"showPortal()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-auto-complete{display:inline-block;width:12rem}.x-auto-complete{margin:0;padding:0}.x-auto-complete{width:100%}.x-auto-complete x-input{width:100%}.x-auto-complete-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-auto-complete-portal:focus{outline:none}\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: XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
579
579
  }
580
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAutoCompleteComponent, decorators: [{
580
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAutoCompleteComponent, decorators: [{
581
581
  type: Component,
582
582
  args: [{ selector: `${XAutoCompletePrefix}`, imports: [FormsModule, ReactiveFormsModule, XInputComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XAutoCompleteComponent)], template: "<div #autoComplete class=\"x-auto-complete\">\r\n <div class=\"x-auto-complete-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 [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]=\"readonly()\"\r\n [clearable]=\"false\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl()\"\r\n [valueTplContext]=\"valueTplContextComputed()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\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 [(active)]=\"active\"\r\n (xInput)=\"onInput($event)\"\r\n (xKeydown)=\"onKeydown($event)\"\r\n (xClick)=\"showPortal()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-auto-complete{display:inline-block;width:12rem}.x-auto-complete{margin:0;padding:0}.x-auto-complete{width:100%}.x-auto-complete x-input{width:100%}.x-auto-complete-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-auto-complete-portal:focus{outline:none}\n"] }]
583
583
  }], ctorParameters: () => [] });
584
584
 
585
585
  class XAutoCompleteModule {
586
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAutoCompleteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
587
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.4", ngImport: i0, type: XAutoCompleteModule, imports: [XAutoCompleteComponent], exports: [XAutoCompleteComponent] }); }
588
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAutoCompleteModule, imports: [XAutoCompleteComponent] }); }
586
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAutoCompleteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
587
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.0", ngImport: i0, type: XAutoCompleteModule, imports: [XAutoCompleteComponent], exports: [XAutoCompleteComponent] }); }
588
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAutoCompleteModule, imports: [XAutoCompleteComponent] }); }
589
589
  }
590
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAutoCompleteModule, decorators: [{
590
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAutoCompleteModule, decorators: [{
591
591
  type: NgModule,
592
592
  args: [{
593
593
  exports: [XAutoCompleteComponent],
@@ -121,11 +121,23 @@ class XAvatarProperty extends XPropertyFunction(X_AVATAR_CONFIG_NAME) {
121
121
  *
122
122
  */
123
123
  this.backgroundColor = input(this.config?.backgroundColor ?? '#999999', ...(ngDevMode ? [{ debugName: "backgroundColor" }] : []));
124
+ /**
125
+ * @zh_CN 文字颜色
126
+ * @en_US color
127
+ * @example
128
+ *
129
+ * ```html
130
+ * <x-avatar label="ng-nest" color="#FFFFFF"></x-avatar>
131
+ * <x-avatar label="ng-nest" color="#333333"></x-avatar>
132
+ * ```
133
+ *
134
+ */
135
+ this.color = input(this.config?.color ?? '#FFFFFF', ...(ngDevMode ? [{ debugName: "color" }] : []));
124
136
  }
125
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
126
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XAvatarProperty, isStandalone: true, selector: "x-avatar-property", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: false, transformFunction: null }, src: { classPropertyName: "src", publicName: "src", isSignal: true, isRequired: false, transformFunction: null }, fit: { classPropertyName: "fit", publicName: "fit", isSignal: true, isRequired: false, transformFunction: null }, gap: { classPropertyName: "gap", publicName: "gap", isSignal: true, isRequired: false, transformFunction: null }, backgroundColor: { classPropertyName: "backgroundColor", publicName: "backgroundColor", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
137
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
138
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.0", type: XAvatarProperty, isStandalone: true, selector: "x-avatar-property", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: false, transformFunction: null }, src: { classPropertyName: "src", publicName: "src", isSignal: true, isRequired: false, transformFunction: null }, fit: { classPropertyName: "fit", publicName: "fit", isSignal: true, isRequired: false, transformFunction: null }, gap: { classPropertyName: "gap", publicName: "gap", isSignal: true, isRequired: false, transformFunction: null }, backgroundColor: { classPropertyName: "backgroundColor", publicName: "backgroundColor", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
127
139
  }
128
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarProperty, decorators: [{
140
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarProperty, decorators: [{
129
141
  type: Component,
130
142
  args: [{ selector: `${XAvatarPrefix}-property`, template: '' }]
131
143
  }] });
@@ -139,10 +151,10 @@ const XAvatarGroupPrefix = 'x-avatar-group';
139
151
  * Avatar Group Property
140
152
  */
141
153
  class XAvatarGroupProperty extends XProperty {
142
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarGroupProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
143
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.4", type: XAvatarGroupProperty, isStandalone: true, selector: "x-avatar-group-property", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
154
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarGroupProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
155
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: XAvatarGroupProperty, isStandalone: true, selector: "x-avatar-group-property", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
144
156
  }
145
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarGroupProperty, decorators: [{
157
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarGroupProperty, decorators: [{
146
158
  type: Component,
147
159
  args: [{ selector: `${XAvatarGroupPrefix}-property`, template: '' }]
148
160
  }] });
@@ -239,10 +251,10 @@ class XAvatarComponent extends XAvatarProperty {
239
251
  imgError() {
240
252
  this.isImgError.set(true);
241
253
  }
242
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
243
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.4", type: XAvatarComponent, isStandalone: true, selector: "x-avatar", viewQueries: [{ propertyName: "avatar", first: true, predicate: ["avatar"], descendants: true, isSignal: true }, { propertyName: "labelRef", first: true, predicate: ["labelRef"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<span\r\n #avatar\r\n class=\"x-avatar\"\r\n [class.x-avatar-label]=\"label()\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-avatar-error]=\"isImgError()\"\r\n [ngStyle]=\"styleMap()\"\r\n [style.backgroundColor]=\"backgroundColor()\"\r\n>\r\n @if (src() && !isImgError()) {\r\n <img [src]=\"src()\" [style.object-fit]=\"fit()\" (error)=\"imgError()\" />\r\n }\r\n @if (icon()) {\r\n <x-icon [type]=\"icon()\"></x-icon>\r\n }\r\n @if (isImgError()) {\r\n <x-icon type=\"fto-image\"></x-icon>\r\n }\r\n @if (label()) {\r\n <span #labelRef class=\"x-avatar-text\" [ngStyle]=\"labelStyleMap()\" *xOutlet=\"label(); context: { $label: label() }\">\r\n {{ label() }}\r\n </span>\r\n }\r\n</span>\r\n", styles: ["x-avatar{display:flex}.x-avatar{margin:0;padding:0}.x-avatar{font-size:var(--x-font-size);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;text-align:center;overflow:hidden;color:var(--x-background-100)}.x-avatar>img{display:block;height:100%}.x-avatar-circle{border-radius:50%}.x-avatar-square{border-radius:var(--x-border-radius)}.x-avatar-error>img{height:initial}.x-avatar>span{white-space:nowrap;transition:transform var(--x-animation-duration-base)}.x-avatar-big{height:3.5rem;width:3.5rem;line-height:3.5rem;font-size:2.1rem}.x-avatar-large{height:3rem;width:3rem;line-height:3rem;font-size:1.8rem}.x-avatar-medium{height:2.5rem;width:2.5rem;line-height:2.5rem;font-size:1.5rem}.x-avatar-small{height:2rem;width:2rem;line-height:2rem;font-size:1.2rem}.x-avatar-mini{height:1.5rem;width:1.5rem;line-height:1.5rem;font-size:.9rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
254
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
255
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.0", type: XAvatarComponent, isStandalone: true, selector: "x-avatar", viewQueries: [{ propertyName: "avatar", first: true, predicate: ["avatar"], descendants: true, isSignal: true }, { propertyName: "labelRef", first: true, predicate: ["labelRef"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<span\r\n #avatar\r\n class=\"x-avatar\"\r\n [class.x-avatar-label]=\"label()\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-avatar-error]=\"isImgError()\"\r\n [ngStyle]=\"styleMap()\"\r\n [style.backgroundColor]=\"backgroundColor()\"\r\n>\r\n @if (src() && !isImgError()) {\r\n <img [src]=\"src()\" [style.object-fit]=\"fit()\" (error)=\"imgError()\" />\r\n }\r\n @if (icon()) {\r\n <x-icon [type]=\"icon()\"></x-icon>\r\n }\r\n @if (isImgError()) {\r\n <x-icon type=\"fto-image\"></x-icon>\r\n }\r\n @if (label()) {\r\n <span #labelRef class=\"x-avatar-text\" [ngStyle]=\"labelStyleMap()\" *xOutlet=\"label(); context: { $label: label() }\">\r\n {{ label() }}\r\n </span>\r\n }\r\n</span>\r\n", styles: ["x-avatar{display:flex}.x-avatar{margin:0;padding:0}.x-avatar{font-size:var(--x-font-size);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;text-align:center;overflow:hidden;color:var(--x-background-100)}.x-avatar>img{display:block;height:100%}.x-avatar-circle{border-radius:50%}.x-avatar-square{border-radius:var(--x-border-radius)}.x-avatar-error>img{height:initial}.x-avatar>span{white-space:nowrap;transition:transform var(--x-animation-duration-base)}.x-avatar-big{height:3.5rem;width:3.5rem;line-height:3.5rem;font-size:2.1rem}.x-avatar-large{height:3rem;width:3rem;line-height:3rem;font-size:1.8rem}.x-avatar-medium{height:2.5rem;width:2.5rem;line-height:2.5rem;font-size:1.5rem}.x-avatar-small{height:2rem;width:2rem;line-height:2rem;font-size:1.2rem}.x-avatar-mini{height:1.5rem;width:1.5rem;line-height:1.5rem;font-size:.9rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
244
256
  }
245
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarComponent, decorators: [{
257
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarComponent, decorators: [{
246
258
  type: Component,
247
259
  args: [{ selector: `${XAvatarPrefix}`, imports: [NgClass, NgStyle, XOutletDirective, XIconComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\r\n #avatar\r\n class=\"x-avatar\"\r\n [class.x-avatar-label]=\"label()\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-avatar-error]=\"isImgError()\"\r\n [ngStyle]=\"styleMap()\"\r\n [style.backgroundColor]=\"backgroundColor()\"\r\n>\r\n @if (src() && !isImgError()) {\r\n <img [src]=\"src()\" [style.object-fit]=\"fit()\" (error)=\"imgError()\" />\r\n }\r\n @if (icon()) {\r\n <x-icon [type]=\"icon()\"></x-icon>\r\n }\r\n @if (isImgError()) {\r\n <x-icon type=\"fto-image\"></x-icon>\r\n }\r\n @if (label()) {\r\n <span #labelRef class=\"x-avatar-text\" [ngStyle]=\"labelStyleMap()\" *xOutlet=\"label(); context: { $label: label() }\">\r\n {{ label() }}\r\n </span>\r\n }\r\n</span>\r\n", styles: ["x-avatar{display:flex}.x-avatar{margin:0;padding:0}.x-avatar{font-size:var(--x-font-size);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;text-align:center;overflow:hidden;color:var(--x-background-100)}.x-avatar>img{display:block;height:100%}.x-avatar-circle{border-radius:50%}.x-avatar-square{border-radius:var(--x-border-radius)}.x-avatar-error>img{height:initial}.x-avatar>span{white-space:nowrap;transition:transform var(--x-animation-duration-base)}.x-avatar-big{height:3.5rem;width:3.5rem;line-height:3.5rem;font-size:2.1rem}.x-avatar-large{height:3rem;width:3rem;line-height:3rem;font-size:1.8rem}.x-avatar-medium{height:2.5rem;width:2.5rem;line-height:2.5rem;font-size:1.5rem}.x-avatar-small{height:2rem;width:2rem;line-height:2rem;font-size:1.2rem}.x-avatar-mini{height:1.5rem;width:1.5rem;line-height:1.5rem;font-size:.9rem}\n"] }]
248
260
  }], ctorParameters: () => [] });
@@ -252,10 +264,10 @@ class XAvatarGroupComponent extends XAvatarGroupProperty {
252
264
  super(...arguments);
253
265
  this._has = true;
254
266
  }
255
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
256
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.4", type: XAvatarGroupComponent, isStandalone: true, selector: "x-avatar-group", host: { properties: { "class.x-avatar-group": "this._has" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: ["x-avatar-group{display:flex}.x-avatar-group{margin:0;padding:0}.x-avatar-group>x-avatar{z-index:0}.x-avatar-group>x-avatar:not(:first-child){margin-left:-.5rem}.x-avatar-group>x-avatar .x-avatar{border:var(--x-border-width) var(--x-border-style) var(--x-white)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
267
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
268
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: XAvatarGroupComponent, isStandalone: true, selector: "x-avatar-group", host: { properties: { "class.x-avatar-group": "this._has" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: ["x-avatar-group{display:flex}.x-avatar-group{margin:0;padding:0}.x-avatar-group>x-avatar{z-index:0}.x-avatar-group>x-avatar:not(:first-child){margin-left:-.5rem}.x-avatar-group>x-avatar .x-avatar{border:var(--x-border-width) var(--x-border-style) var(--x-white)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
257
269
  }
258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarGroupComponent, decorators: [{
270
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarGroupComponent, decorators: [{
259
271
  type: Component,
260
272
  args: [{ selector: `${XAvatarGroupPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\r\n", styles: ["x-avatar-group{display:flex}.x-avatar-group{margin:0;padding:0}.x-avatar-group>x-avatar{z-index:0}.x-avatar-group>x-avatar:not(:first-child){margin-left:-.5rem}.x-avatar-group>x-avatar .x-avatar{border:var(--x-border-width) var(--x-border-style) var(--x-white)}\n"] }]
261
273
  }], propDecorators: { _has: [{
@@ -264,11 +276,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImpor
264
276
  }] } });
265
277
 
266
278
  class XAvatarModule {
267
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
268
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.4", ngImport: i0, type: XAvatarModule, imports: [XAvatarComponent, XAvatarGroupComponent], exports: [XAvatarComponent, XAvatarGroupComponent] }); }
269
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarModule, imports: [XAvatarComponent] }); }
279
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
280
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.0", ngImport: i0, type: XAvatarModule, imports: [XAvatarComponent, XAvatarGroupComponent], exports: [XAvatarComponent, XAvatarGroupComponent] }); }
281
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarModule, imports: [XAvatarComponent] }); }
270
282
  }
271
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XAvatarModule, decorators: [{
283
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAvatarModule, decorators: [{
272
284
  type: NgModule,
273
285
  args: [{
274
286
  exports: [XAvatarComponent, XAvatarGroupComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-avatar.mjs","sources":["../../../../lib/ng-nest/ui/avatar/avatar.property.ts","../../../../lib/ng-nest/ui/avatar/avatar.component.ts","../../../../lib/ng-nest/ui/avatar/avatar.component.html","../../../../lib/ng-nest/ui/avatar/avatar-group.component.ts","../../../../lib/ng-nest/ui/avatar/avatar-group.component.html","../../../../lib/ng-nest/ui/avatar/avatar.module.ts","../../../../lib/ng-nest/ui/avatar/ng-nest-ui-avatar.ts"],"sourcesContent":["import {\r\n XSize,\r\n XTemplate,\r\n XProperty,\r\n XShape,\r\n XFit,\r\n XResponseSize,\r\n XNumber,\r\n XPropertyFunction,\r\n XToCssPixelValue\r\n} from '@ng-nest/ui/core';\r\nimport { Component, input } from '@angular/core';\r\n\r\n/**\r\n * Avatar\r\n * @selector x-avatar\r\n * @decorator component\r\n */\r\nexport const XAvatarPrefix = 'x-avatar';\r\nexport const X_AVATAR_CONFIG_NAME = 'avatar';\r\n\r\n/**\r\n * Avatar Property\r\n */\r\n@Component({ selector: `${XAvatarPrefix}-property`, template: '' })\r\nexport class XAvatarProperty extends XPropertyFunction(X_AVATAR_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 显示字符\r\n * @en_US Display characters\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar label=\"ng-nest\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly label = input<XTemplate>();\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar size=\"big\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar size=\"large\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar size=\"medium\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar size=\"small\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar size=\"mini\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar [size]=\"100\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar [size]=\"{ xs: 20, sm: 60, md: 90, lg: 120, xl: 160 }\" icon=\"fto-user\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly size = input<XAvatarSize>(this.config?.size ?? 'medium');\r\n /**\r\n * @zh_CN 显示图标\r\n * @en_US Show icon\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar icon=\"fto-user\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly icon = input<string>();\r\n /**\r\n * @zh_CN 形状\r\n * @en_US Shape\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar icon=\"fto-user\" shape=\"circle\"></x-avatar>\r\n * <x-avatar icon=\"fto-user\" shape=\"square\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly shape = input<XAvatarShape>(this.config?.shape ?? 'circle');\r\n /**\r\n * @zh_CN 图片地址\r\n * @en_US The map's address\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly src = input<string>();\r\n /**\r\n * @zh_CN 图片适应方式\r\n * @en_US Image adaptation method\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar fit=\"fill\" src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * <x-avatar fit=\"contain\" src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * <x-avatar fit=\"cover\" src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * <x-avatar fit=\"none\" src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * <x-avatar fit=\"scale-down\" src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly fit = input<XAvatarFit>(this.config?.fit ?? 'cover');\r\n /**\r\n * @zh_CN 字符类型的时候左右边距\r\n * @en_US When the character type is the left and right distance\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar label=\"ng-nest\" gap=\"5\"></x-avatar>\r\n * <x-avatar label=\"ng-nest\" gap=\"5px\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly gap = input<string, XNumber>(this.config?.gap ?? '4px', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 背景颜色\r\n * @en_US Background color\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar label=\"ng-nest\" backgroundColor=\"#999999\"></x-avatar>\r\n * <x-avatar label=\"ng-nest\" backgroundColor=\"#888888\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly backgroundColor = input<string>(this.config?.backgroundColor ?? '#999999');\r\n}\r\n\r\n/**\r\n * @zh_CN 头像形状\r\n * @en_US Avatar shape\r\n */\r\nexport type XAvatarShape = XShape;\r\n\r\n/**\r\n * @zh_CN 当展示类型为图片的时候,设置图片如何适应容器框\r\n * @en_US When the display type is picture, set how the picture fits into the container frame\r\n */\r\nexport type XAvatarFit = XFit;\r\n\r\n/**\r\n * @zh_CN 尺寸类型\r\n * @en_US Size type\r\n */\r\nexport type XAvatarSize = number | XSize | XResponseSize;\r\n\r\n/**\r\n * Avatar Group\r\n * @selector x-avatar-group\r\n * @decorator component\r\n */\r\nexport const XAvatarGroupPrefix = 'x-avatar-group';\r\n\r\n/**\r\n * Avatar Group Property\r\n */\r\n@Component({ selector: `${XAvatarGroupPrefix}-property`, template: '' })\r\nexport class XAvatarGroupProperty extends XProperty {}\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ElementRef,\r\n ChangeDetectionStrategy,\r\n OnDestroy,\r\n inject,\r\n signal,\r\n computed,\r\n viewChild,\r\n effect,\r\n AfterViewChecked\r\n} from '@angular/core';\r\nimport { XAvatarPrefix, XAvatarProperty } from './avatar.property';\r\nimport { XIsEmpty, XIsNumber, XIsString, XIsObject, XComputedStyle, XResize, XToCssPx } from '@ng-nest/ui/core';\r\nimport { DOCUMENT, NgClass, NgStyle } from '@angular/common';\r\nimport { debounceTime, map } from 'rxjs';\r\nimport { XIconComponent } from '@ng-nest/ui/icon';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { toSignal } from '@angular/core/rxjs-interop';\r\nimport type { XClassMap, XResizeObserver, XResponseSize } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XAvatarPrefix}`,\r\n imports: [NgClass, NgStyle, XOutletDirective, XIconComponent],\r\n templateUrl: './avatar.component.html',\r\n styleUrls: ['./avatar.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XAvatarComponent extends XAvatarProperty implements OnDestroy, AfterViewChecked {\r\n private document = inject(DOCUMENT);\r\n private avatar = viewChild.required<ElementRef<HTMLElement>>('avatar');\r\n private labelRef = viewChild<ElementRef<HTMLElement>>('labelRef');\r\n private fontSize = computed(() => parseFloat(XComputedStyle(this.document.documentElement, 'font-size')));\r\n private resizeObserver!: XResizeObserver;\r\n private labelWidth = signal(this.labelRef()?.nativeElement.clientWidth);\r\n private documentWidth = toSignal(\r\n XResize(this.document.documentElement).pipe(\r\n debounceTime(30),\r\n map(({ resizeObserver }) => {\r\n this.resizeObserver = resizeObserver;\r\n return this.document.documentElement.clientWidth;\r\n })\r\n ),\r\n {\r\n initialValue: this.document.documentElement.clientWidth\r\n }\r\n );\r\n isImgError = signal(false);\r\n styleMap = computed(() => {\r\n const size = this.size();\r\n const width = this.documentWidth();\r\n if (XIsNumber(size)) {\r\n return {\r\n height: `${size}px`,\r\n width: `${size}px`,\r\n lineHeight: `${size}px`,\r\n fontSize: `${size * 0.6}px`\r\n };\r\n } else if (XIsObject<XResponseSize>(size)) {\r\n const { xs, sm, md, lg, xl } = size;\r\n let nsize = 40;\r\n if (xs && width < 768) {\r\n nsize = xs;\r\n }\r\n if (sm && width >= 768) {\r\n nsize = sm;\r\n }\r\n if (md && width >= 992) {\r\n nsize = md;\r\n }\r\n if (lg && width >= 1200) {\r\n nsize = lg;\r\n }\r\n if (xl && width >= 1920) {\r\n nsize = xl;\r\n }\r\n return {\r\n height: `${nsize}px`,\r\n width: `${nsize}px`,\r\n lineHeight: `${nsize}px`,\r\n fontSize: `${nsize * 0.6}px`\r\n };\r\n } else {\r\n return {};\r\n }\r\n });\r\n classMap = computed(() => {\r\n const classMap: XClassMap = {\r\n [`${XAvatarPrefix}-${this.shape()}`]: !XIsEmpty(this.shape())\r\n };\r\n const size = this.size();\r\n if (XIsString(size)) {\r\n classMap[`${XAvatarPrefix}-${size}`] = !XIsEmpty(size);\r\n } else if (XIsObject<XResponseSize>(size)) {\r\n classMap[`${XAvatarPrefix}-medium`] = true;\r\n }\r\n\r\n return classMap;\r\n });\r\n labelStyleMap = computed(() => {\r\n const label = this.label();\r\n const labelRef = this.labelRef();\r\n const labelWidth = this.labelWidth();\r\n if (!label || !this.avatar() || !labelRef || !labelWidth) return {};\r\n const eleWidth = this.avatar().nativeElement.clientWidth;\r\n let scale = (eleWidth - XToCssPx(this.gap(), this.fontSize()) * 2) / labelWidth;\r\n scale = scale > 1 ? 1 : scale;\r\n return { transform: `scale(${scale})` };\r\n });\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.documentWidth());\r\n }\r\n\r\n ngAfterViewChecked() {\r\n if (this.labelRef()) {\r\n this.labelWidth.set(this.labelRef()?.nativeElement.clientWidth);\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.resizeObserver?.disconnect();\r\n }\r\n\r\n imgError() {\r\n this.isImgError.set(true);\r\n }\r\n}\r\n","<span\r\n #avatar\r\n class=\"x-avatar\"\r\n [class.x-avatar-label]=\"label()\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-avatar-error]=\"isImgError()\"\r\n [ngStyle]=\"styleMap()\"\r\n [style.backgroundColor]=\"backgroundColor()\"\r\n>\r\n @if (src() && !isImgError()) {\r\n <img [src]=\"src()\" [style.object-fit]=\"fit()\" (error)=\"imgError()\" />\r\n }\r\n @if (icon()) {\r\n <x-icon [type]=\"icon()\"></x-icon>\r\n }\r\n @if (isImgError()) {\r\n <x-icon type=\"fto-image\"></x-icon>\r\n }\r\n @if (label()) {\r\n <span #labelRef class=\"x-avatar-text\" [ngStyle]=\"labelStyleMap()\" *xOutlet=\"label(); context: { $label: label() }\">\r\n {{ label() }}\r\n </span>\r\n }\r\n</span>\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, HostBinding } from '@angular/core';\r\nimport { XAvatarGroupPrefix, XAvatarGroupProperty } from './avatar.property';\r\n\r\n@Component({\r\n selector: `${XAvatarGroupPrefix}`,\r\n templateUrl: './avatar-group.component.html',\r\n styleUrls: ['./avatar-group.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XAvatarGroupComponent extends XAvatarGroupProperty {\r\n @HostBinding('class.x-avatar-group') _has = true;\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { XAvatarComponent } from './avatar.component';\r\nimport { XAvatarGroupComponent } from './avatar-group.component';\r\n\r\n@NgModule({\r\n exports: [XAvatarComponent, XAvatarGroupComponent],\r\n imports: [XAvatarComponent, XAvatarGroupComponent]\r\n})\r\nexport class XAvatarModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-avatar.mjs","sources":["../../../../lib/ng-nest/ui/avatar/avatar.property.ts","../../../../lib/ng-nest/ui/avatar/avatar.component.ts","../../../../lib/ng-nest/ui/avatar/avatar.component.html","../../../../lib/ng-nest/ui/avatar/avatar-group.component.ts","../../../../lib/ng-nest/ui/avatar/avatar-group.component.html","../../../../lib/ng-nest/ui/avatar/avatar.module.ts","../../../../lib/ng-nest/ui/avatar/ng-nest-ui-avatar.ts"],"sourcesContent":["import {\r\n XSize,\r\n XTemplate,\r\n XProperty,\r\n XShape,\r\n XFit,\r\n XResponseSize,\r\n XNumber,\r\n XPropertyFunction,\r\n XToCssPixelValue\r\n} from '@ng-nest/ui/core';\r\nimport { Component, input } from '@angular/core';\r\n\r\n/**\r\n * Avatar\r\n * @selector x-avatar\r\n * @decorator component\r\n */\r\nexport const XAvatarPrefix = 'x-avatar';\r\nexport const X_AVATAR_CONFIG_NAME = 'avatar';\r\n\r\n/**\r\n * Avatar Property\r\n */\r\n@Component({ selector: `${XAvatarPrefix}-property`, template: '' })\r\nexport class XAvatarProperty extends XPropertyFunction(X_AVATAR_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 显示字符\r\n * @en_US Display characters\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar label=\"ng-nest\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly label = input<XTemplate>();\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar size=\"big\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar size=\"large\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar size=\"medium\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar size=\"small\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar size=\"mini\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar [size]=\"100\" icon=\"fto-user\"></x-avatar>\r\n * <x-avatar [size]=\"{ xs: 20, sm: 60, md: 90, lg: 120, xl: 160 }\" icon=\"fto-user\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly size = input<XAvatarSize>(this.config?.size ?? 'medium');\r\n /**\r\n * @zh_CN 显示图标\r\n * @en_US Show icon\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar icon=\"fto-user\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly icon = input<string>();\r\n /**\r\n * @zh_CN 形状\r\n * @en_US Shape\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar icon=\"fto-user\" shape=\"circle\"></x-avatar>\r\n * <x-avatar icon=\"fto-user\" shape=\"square\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly shape = input<XAvatarShape>(this.config?.shape ?? 'circle');\r\n /**\r\n * @zh_CN 图片地址\r\n * @en_US The map's address\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly src = input<string>();\r\n /**\r\n * @zh_CN 图片适应方式\r\n * @en_US Image adaptation method\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar fit=\"fill\" src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * <x-avatar fit=\"contain\" src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * <x-avatar fit=\"cover\" src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * <x-avatar fit=\"none\" src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * <x-avatar fit=\"scale-down\" src=\"https://ngnest.com/img/logo/logo-144x144.png\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly fit = input<XAvatarFit>(this.config?.fit ?? 'cover');\r\n /**\r\n * @zh_CN 字符类型的时候左右边距\r\n * @en_US When the character type is the left and right distance\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar label=\"ng-nest\" gap=\"5\"></x-avatar>\r\n * <x-avatar label=\"ng-nest\" gap=\"5px\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly gap = input<string, XNumber>(this.config?.gap ?? '4px', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 背景颜色\r\n * @en_US Background color\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar label=\"ng-nest\" backgroundColor=\"#999999\"></x-avatar>\r\n * <x-avatar label=\"ng-nest\" backgroundColor=\"#888888\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly backgroundColor = input<string>(this.config?.backgroundColor ?? '#999999');\r\n /**\r\n * @zh_CN 文字颜色\r\n * @en_US color\r\n * @example\r\n *\r\n * ```html\r\n * <x-avatar label=\"ng-nest\" color=\"#FFFFFF\"></x-avatar>\r\n * <x-avatar label=\"ng-nest\" color=\"#333333\"></x-avatar>\r\n * ```\r\n *\r\n */\r\n readonly color = input<string>(this.config?.color ?? '#FFFFFF');\r\n}\r\n\r\n/**\r\n * Avatar Option\r\n */\r\nexport interface XAvatarOption {\r\n /**\r\n * @zh_CN 显示字符\r\n * @en_US Display characters\r\n */\r\n label?: XTemplate;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n size?: XAvatarSize;\r\n /**\r\n * @zh_CN 显示图标\r\n * @en_US Show icon\r\n */\r\n icon?: string;\r\n /**\r\n * @zh_CN 形状\r\n * @en_US Shape\r\n */\r\n shape?: XAvatarShape;\r\n /**\r\n * @zh_CN 图片地址\r\n * @en_US The map's address\r\n */\r\n src?: string;\r\n /**\r\n * @zh_CN 图片适应方式\r\n * @en_US Image adaptation method\r\n */\r\n fit?: XAvatarFit;\r\n /**\r\n * @zh_CN 字符类型的时候左右边距\r\n * @en_US When the character type is the left and right distance\r\n */\r\n gap?: string;\r\n /**\r\n * @zh_CN 背景颜色\r\n * @en_US Background color\r\n */\r\n backgroundColor?: string;\r\n /**\r\n * @zh_CN 文字颜色\r\n * @en_US color\r\n */\r\n color?: string;\r\n}\r\n\r\n/**\r\n * @zh_CN 头像形状\r\n * @en_US Avatar shape\r\n */\r\nexport type XAvatarShape = XShape;\r\n\r\n/**\r\n * @zh_CN 当展示类型为图片的时候,设置图片如何适应容器框\r\n * @en_US When the display type is picture, set how the picture fits into the container frame\r\n */\r\nexport type XAvatarFit = XFit;\r\n\r\n/**\r\n * @zh_CN 尺寸类型\r\n * @en_US Size type\r\n */\r\nexport type XAvatarSize = number | XSize | XResponseSize;\r\n\r\n/**\r\n * Avatar Group\r\n * @selector x-avatar-group\r\n * @decorator component\r\n */\r\nexport const XAvatarGroupPrefix = 'x-avatar-group';\r\n\r\n/**\r\n * Avatar Group Property\r\n */\r\n@Component({ selector: `${XAvatarGroupPrefix}-property`, template: '' })\r\nexport class XAvatarGroupProperty extends XProperty {}\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ElementRef,\r\n ChangeDetectionStrategy,\r\n OnDestroy,\r\n inject,\r\n signal,\r\n computed,\r\n viewChild,\r\n effect,\r\n AfterViewChecked\r\n} from '@angular/core';\r\nimport { XAvatarPrefix, XAvatarProperty } from './avatar.property';\r\nimport { XIsEmpty, XIsNumber, XIsString, XIsObject, XComputedStyle, XResize, XToCssPx } from '@ng-nest/ui/core';\r\nimport { DOCUMENT, NgClass, NgStyle } from '@angular/common';\r\nimport { debounceTime, map } from 'rxjs';\r\nimport { XIconComponent } from '@ng-nest/ui/icon';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { toSignal } from '@angular/core/rxjs-interop';\r\nimport type { XClassMap, XResizeObserver, XResponseSize } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XAvatarPrefix}`,\r\n imports: [NgClass, NgStyle, XOutletDirective, XIconComponent],\r\n templateUrl: './avatar.component.html',\r\n styleUrls: ['./avatar.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XAvatarComponent extends XAvatarProperty implements OnDestroy, AfterViewChecked {\r\n private document = inject(DOCUMENT);\r\n private avatar = viewChild.required<ElementRef<HTMLElement>>('avatar');\r\n private labelRef = viewChild<ElementRef<HTMLElement>>('labelRef');\r\n private fontSize = computed(() => parseFloat(XComputedStyle(this.document.documentElement, 'font-size')));\r\n private resizeObserver!: XResizeObserver;\r\n private labelWidth = signal(this.labelRef()?.nativeElement.clientWidth);\r\n private documentWidth = toSignal(\r\n XResize(this.document.documentElement).pipe(\r\n debounceTime(30),\r\n map(({ resizeObserver }) => {\r\n this.resizeObserver = resizeObserver;\r\n return this.document.documentElement.clientWidth;\r\n })\r\n ),\r\n {\r\n initialValue: this.document.documentElement.clientWidth\r\n }\r\n );\r\n isImgError = signal(false);\r\n styleMap = computed(() => {\r\n const size = this.size();\r\n const width = this.documentWidth();\r\n if (XIsNumber(size)) {\r\n return {\r\n height: `${size}px`,\r\n width: `${size}px`,\r\n lineHeight: `${size}px`,\r\n fontSize: `${size * 0.6}px`\r\n };\r\n } else if (XIsObject<XResponseSize>(size)) {\r\n const { xs, sm, md, lg, xl } = size;\r\n let nsize = 40;\r\n if (xs && width < 768) {\r\n nsize = xs;\r\n }\r\n if (sm && width >= 768) {\r\n nsize = sm;\r\n }\r\n if (md && width >= 992) {\r\n nsize = md;\r\n }\r\n if (lg && width >= 1200) {\r\n nsize = lg;\r\n }\r\n if (xl && width >= 1920) {\r\n nsize = xl;\r\n }\r\n return {\r\n height: `${nsize}px`,\r\n width: `${nsize}px`,\r\n lineHeight: `${nsize}px`,\r\n fontSize: `${nsize * 0.6}px`\r\n };\r\n } else {\r\n return {};\r\n }\r\n });\r\n classMap = computed(() => {\r\n const classMap: XClassMap = {\r\n [`${XAvatarPrefix}-${this.shape()}`]: !XIsEmpty(this.shape())\r\n };\r\n const size = this.size();\r\n if (XIsString(size)) {\r\n classMap[`${XAvatarPrefix}-${size}`] = !XIsEmpty(size);\r\n } else if (XIsObject<XResponseSize>(size)) {\r\n classMap[`${XAvatarPrefix}-medium`] = true;\r\n }\r\n\r\n return classMap;\r\n });\r\n labelStyleMap = computed(() => {\r\n const label = this.label();\r\n const labelRef = this.labelRef();\r\n const labelWidth = this.labelWidth();\r\n if (!label || !this.avatar() || !labelRef || !labelWidth) return {};\r\n const eleWidth = this.avatar().nativeElement.clientWidth;\r\n let scale = (eleWidth - XToCssPx(this.gap(), this.fontSize()) * 2) / labelWidth;\r\n scale = scale > 1 ? 1 : scale;\r\n return { transform: `scale(${scale})` };\r\n });\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.documentWidth());\r\n }\r\n\r\n ngAfterViewChecked() {\r\n if (this.labelRef()) {\r\n this.labelWidth.set(this.labelRef()?.nativeElement.clientWidth);\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.resizeObserver?.disconnect();\r\n }\r\n\r\n imgError() {\r\n this.isImgError.set(true);\r\n }\r\n}\r\n","<span\r\n #avatar\r\n class=\"x-avatar\"\r\n [class.x-avatar-label]=\"label()\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-avatar-error]=\"isImgError()\"\r\n [ngStyle]=\"styleMap()\"\r\n [style.backgroundColor]=\"backgroundColor()\"\r\n>\r\n @if (src() && !isImgError()) {\r\n <img [src]=\"src()\" [style.object-fit]=\"fit()\" (error)=\"imgError()\" />\r\n }\r\n @if (icon()) {\r\n <x-icon [type]=\"icon()\"></x-icon>\r\n }\r\n @if (isImgError()) {\r\n <x-icon type=\"fto-image\"></x-icon>\r\n }\r\n @if (label()) {\r\n <span #labelRef class=\"x-avatar-text\" [ngStyle]=\"labelStyleMap()\" *xOutlet=\"label(); context: { $label: label() }\">\r\n {{ label() }}\r\n </span>\r\n }\r\n</span>\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, HostBinding } from '@angular/core';\r\nimport { XAvatarGroupPrefix, XAvatarGroupProperty } from './avatar.property';\r\n\r\n@Component({\r\n selector: `${XAvatarGroupPrefix}`,\r\n templateUrl: './avatar-group.component.html',\r\n styleUrls: ['./avatar-group.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XAvatarGroupComponent extends XAvatarGroupProperty {\r\n @HostBinding('class.x-avatar-group') _has = true;\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { XAvatarComponent } from './avatar.component';\r\nimport { XAvatarGroupComponent } from './avatar-group.component';\r\n\r\n@NgModule({\r\n exports: [XAvatarComponent, XAvatarGroupComponent],\r\n imports: [XAvatarComponent, XAvatarGroupComponent]\r\n})\r\nexport class XAvatarModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -46,10 +46,10 @@ class XBackTopProperty extends XPropertyFunction(X_BACK_TOP_CONFIG_NAME) {
46
46
  */
47
47
  this.target = input(...(ngDevMode ? [undefined, { debugName: "target" }] : []));
48
48
  }
49
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBackTopProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
50
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XBackTopProperty, isStandalone: true, selector: "x-back-top-property", inputs: { right: { classPropertyName: "right", publicName: "right", isSignal: true, isRequired: false, transformFunction: null }, bottom: { classPropertyName: "bottom", publicName: "bottom", isSignal: true, isRequired: false, transformFunction: null }, visibilityHeight: { classPropertyName: "visibilityHeight", publicName: "visibilityHeight", isSignal: true, isRequired: false, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
49
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBackTopProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
50
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.0", type: XBackTopProperty, isStandalone: true, selector: "x-back-top-property", inputs: { right: { classPropertyName: "right", publicName: "right", isSignal: true, isRequired: false, transformFunction: null }, bottom: { classPropertyName: "bottom", publicName: "bottom", isSignal: true, isRequired: false, transformFunction: null }, visibilityHeight: { classPropertyName: "visibilityHeight", publicName: "visibilityHeight", isSignal: true, isRequired: false, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
51
51
  }
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBackTopProperty, decorators: [{
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBackTopProperty, decorators: [{
53
53
  type: Component,
54
54
  args: [{ selector: `${XBackTopPrefix}-property`, template: '' }]
55
55
  }] });
@@ -141,20 +141,20 @@ class XBackTopComponent extends XBackTopProperty {
141
141
  this.scroll().scrollTop = top;
142
142
  }
143
143
  }
144
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBackTopComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
145
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.4", type: XBackTopComponent, isStandalone: true, selector: "x-back-top", viewQueries: [{ propertyName: "backTopTpl", first: true, predicate: ["backTopTpl"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #backTopTpl>\r\n <div class=\"x-back-top\" (click)=\"onBackTop()\">\r\n @if (!template()) {\r\n <x-link icon=\"fto-arrow-up\"> </x-link>\r\n }\r\n @if (template()) {\r\n <ng-container *ngTemplateOutlet=\"template()!\"></ng-container>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: [".x-back-top{margin:0;padding:0}.x-back-top{display:flex;align-items:center;justify-content:center}.x-back-top>x-link .x-link{width:2.5rem;height:2.5rem;border-radius:50%;background-color:var(--x-background-a100);font-size:1.25rem;border:var(--x-border-width) var(--x-border-style) var(--x-border)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
144
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBackTopComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
145
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.0", type: XBackTopComponent, isStandalone: true, selector: "x-back-top", viewQueries: [{ propertyName: "backTopTpl", first: true, predicate: ["backTopTpl"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #backTopTpl>\r\n <div class=\"x-back-top\" (click)=\"onBackTop()\">\r\n @if (!template()) {\r\n <x-link icon=\"fto-arrow-up\"> </x-link>\r\n }\r\n @if (template()) {\r\n <ng-container *ngTemplateOutlet=\"template()!\"></ng-container>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: [".x-back-top{margin:0;padding:0}.x-back-top{display:flex;align-items:center;justify-content:center}.x-back-top>x-link .x-link{width:2.5rem;height:2.5rem;border-radius:50%;background-color:var(--x-background-a100);font-size:1.25rem;border:var(--x-border-width) var(--x-border-style) var(--x-border)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
146
146
  }
147
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBackTopComponent, decorators: [{
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBackTopComponent, decorators: [{
148
148
  type: Component,
149
149
  args: [{ selector: `${XBackTopPrefix}`, imports: [NgTemplateOutlet, XLinkComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #backTopTpl>\r\n <div class=\"x-back-top\" (click)=\"onBackTop()\">\r\n @if (!template()) {\r\n <x-link icon=\"fto-arrow-up\"> </x-link>\r\n }\r\n @if (template()) {\r\n <ng-container *ngTemplateOutlet=\"template()!\"></ng-container>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: [".x-back-top{margin:0;padding:0}.x-back-top{display:flex;align-items:center;justify-content:center}.x-back-top>x-link .x-link{width:2.5rem;height:2.5rem;border-radius:50%;background-color:var(--x-background-a100);font-size:1.25rem;border:var(--x-border-width) var(--x-border-style) var(--x-border)}\n"] }]
150
150
  }], ctorParameters: () => [] });
151
151
 
152
152
  class XBackTopModule {
153
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBackTopModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
154
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.4", ngImport: i0, type: XBackTopModule, imports: [XBackTopComponent], exports: [XBackTopComponent] }); }
155
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBackTopModule, imports: [XBackTopComponent] }); }
153
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBackTopModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
154
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.0", ngImport: i0, type: XBackTopModule, imports: [XBackTopComponent], exports: [XBackTopComponent] }); }
155
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBackTopModule, imports: [XBackTopComponent] }); }
156
156
  }
157
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBackTopModule, decorators: [{
157
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBackTopModule, decorators: [{
158
158
  type: NgModule,
159
159
  args: [{
160
160
  exports: [XBackTopComponent],
@@ -125,10 +125,10 @@ class XBadgeProperty extends XPropertyFunction(X_BADGE_CONFIG_NAME) {
125
125
  */
126
126
  this.standalone = input(false, ...(ngDevMode ? [{ debugName: "standalone", transform: XToBoolean }] : [{ transform: XToBoolean }]));
127
127
  }
128
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBadgeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
129
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XBadgeProperty, isStandalone: true, selector: "x-badge-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, offsetLeft: { classPropertyName: "offsetLeft", publicName: "offsetLeft", isSignal: true, isRequired: false, transformFunction: null }, offsetTop: { classPropertyName: "offsetTop", publicName: "offsetTop", isSignal: true, isRequired: false, transformFunction: null }, dot: { classPropertyName: "dot", publicName: "dot", isSignal: true, isRequired: false, transformFunction: null }, standalone: { classPropertyName: "standalone", publicName: "standalone", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
128
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBadgeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
129
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.0", type: XBadgeProperty, isStandalone: true, selector: "x-badge-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, offsetLeft: { classPropertyName: "offsetLeft", publicName: "offsetLeft", isSignal: true, isRequired: false, transformFunction: null }, offsetTop: { classPropertyName: "offsetTop", publicName: "offsetTop", isSignal: true, isRequired: false, transformFunction: null }, dot: { classPropertyName: "dot", publicName: "dot", isSignal: true, isRequired: false, transformFunction: null }, standalone: { classPropertyName: "standalone", publicName: "standalone", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
130
130
  }
131
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBadgeProperty, decorators: [{
131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBadgeProperty, decorators: [{
132
132
  type: Component,
133
133
  args: [{ selector: `${XBadgePrefix}-property`, template: '' }]
134
134
  }] });
@@ -183,20 +183,20 @@ class XBadgeComponent extends XBadgeProperty {
183
183
  return this.displayNums().map((_x, index) => index);
184
184
  }, ...(ngDevMode ? [{ debugName: "maxNums" }] : []));
185
185
  }
186
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBadgeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
187
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.4", type: XBadgeComponent, isStandalone: true, selector: "x-badge", usesInheritance: true, ngImport: i0, template: "<div\r\n #badge\r\n class=\"x-badge\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-badge-dot]=\"dot()\"\r\n [class.x-badge-standalone]=\"standalone()\"\r\n>\r\n <ng-content></ng-content>\r\n @if (valueNumber() > 0 || dot()) {\r\n @if (standalone()) {\r\n <sup [@x-badge-standalone-animation] [style.marginRight]=\"offsetLeft()\" [style.marginTop]=\"offsetTop()\">\r\n <ng-container *ngTemplateOutlet=\"dotTpl\"></ng-container>\r\n </sup>\r\n } @else {\r\n <sup [@x-badge-animation] [style.marginRight]=\"offsetLeft()\" [style.marginTop]=\"offsetTop()\">\r\n <ng-container *ngTemplateOutlet=\"dotTpl\"></ng-container>\r\n </sup>\r\n }\r\n }\r\n</div>\r\n\r\n<ng-template #dotTpl>\r\n @if (!dot()) {\r\n @for (item of maxNums(); track item) {\r\n <span class=\"x-badge-scroll\" [style.transform]=\"'translateY(-' + translateYNumbers()[$index] + '%)'\">\r\n @for (j of range(); track j) {\r\n <p>{{ j }}</p>\r\n }\r\n </span>\r\n }\r\n }\r\n</ng-template>\r\n", styles: ["x-badge{display:inline-block}.x-badge{margin:0;padding:0}.x-badge{font-size:var(--x-font-size);display:inline-block;box-sizing:border-box;text-align:center;position:relative}.x-badge>sup{position:absolute;top:0;right:0;overflow:hidden;transform:translate(50%,-50%);transform-origin:100% 0%;border-radius:.625rem;color:var(--x-white);display:inline-block;height:1.125rem;line-height:1.125rem;padding:0 .375rem;text-align:center;white-space:nowrap;box-shadow:0 0 0 .0625rem var(--x-white);vertical-align:middle}.x-badge-dot>sup{width:.5rem;height:.5rem;padding:0;right:0;border-radius:50%}.x-badge-standalone>sup{position:initial;transform:initial;transform-origin:initial}.x-badge-scroll{position:relative;height:1.125rem;display:inline-block;transition:transform var(--x-animation-duration-base) ease-in-out}.x-badge-primary>sup{background-color:var(--x-primary)}.x-badge-success>sup{background-color:var(--x-success)}.x-badge-info>sup{background-color:var(--x-info)}.x-badge-warning>sup{background-color:var(--x-warning)}.x-badge-danger>sup{background-color:var(--x-danger)}.x-badge-text>sup{background-color:var(--x-text)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [XBadgeAnimation, XBadgeStandaloneAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
186
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBadgeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
187
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.0", type: XBadgeComponent, isStandalone: true, selector: "x-badge", usesInheritance: true, ngImport: i0, template: "<div\r\n #badge\r\n class=\"x-badge\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-badge-dot]=\"dot()\"\r\n [class.x-badge-standalone]=\"standalone()\"\r\n>\r\n <ng-content></ng-content>\r\n @if (valueNumber() > 0 || dot()) {\r\n @if (standalone()) {\r\n <sup [@x-badge-standalone-animation] [style.marginRight]=\"offsetLeft()\" [style.marginTop]=\"offsetTop()\">\r\n <ng-container *ngTemplateOutlet=\"dotTpl\"></ng-container>\r\n </sup>\r\n } @else {\r\n <sup [@x-badge-animation] [style.marginRight]=\"offsetLeft()\" [style.marginTop]=\"offsetTop()\">\r\n <ng-container *ngTemplateOutlet=\"dotTpl\"></ng-container>\r\n </sup>\r\n }\r\n }\r\n</div>\r\n\r\n<ng-template #dotTpl>\r\n @if (!dot()) {\r\n @for (item of maxNums(); track item) {\r\n <span class=\"x-badge-scroll\" [style.transform]=\"'translateY(-' + translateYNumbers()[$index] + '%)'\">\r\n @for (j of range(); track j) {\r\n <p>{{ j }}</p>\r\n }\r\n </span>\r\n }\r\n }\r\n</ng-template>\r\n", styles: ["x-badge{display:inline-block}.x-badge{margin:0;padding:0}.x-badge{font-size:var(--x-font-size);display:inline-block;box-sizing:border-box;text-align:center;position:relative}.x-badge>sup{position:absolute;top:0;right:0;overflow:hidden;transform:translate(50%,-50%);transform-origin:100% 0%;border-radius:.625rem;color:var(--x-white);display:inline-block;height:1.125rem;line-height:1.125rem;padding:0 .375rem;text-align:center;white-space:nowrap;box-shadow:0 0 0 .0625rem var(--x-white);vertical-align:middle}.x-badge-dot>sup{width:.5rem;height:.5rem;padding:0;right:0;border-radius:50%}.x-badge-standalone>sup{position:initial;transform:initial;transform-origin:initial}.x-badge-scroll{position:relative;height:1.125rem;display:inline-block;transition:transform var(--x-animation-duration-base) ease-in-out}.x-badge-primary>sup{background-color:var(--x-primary)}.x-badge-success>sup{background-color:var(--x-success)}.x-badge-info>sup{background-color:var(--x-info)}.x-badge-warning>sup{background-color:var(--x-warning)}.x-badge-danger>sup{background-color:var(--x-danger)}.x-badge-text>sup{background-color:var(--x-text)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [XBadgeAnimation, XBadgeStandaloneAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
188
188
  }
189
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBadgeComponent, decorators: [{
189
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBadgeComponent, decorators: [{
190
190
  type: Component,
191
191
  args: [{ selector: `${XBadgePrefix}`, imports: [NgClass, NgTemplateOutlet], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XBadgeAnimation, XBadgeStandaloneAnimation], template: "<div\r\n #badge\r\n class=\"x-badge\"\r\n [ngClass]=\"classMap()\"\r\n [class.x-badge-dot]=\"dot()\"\r\n [class.x-badge-standalone]=\"standalone()\"\r\n>\r\n <ng-content></ng-content>\r\n @if (valueNumber() > 0 || dot()) {\r\n @if (standalone()) {\r\n <sup [@x-badge-standalone-animation] [style.marginRight]=\"offsetLeft()\" [style.marginTop]=\"offsetTop()\">\r\n <ng-container *ngTemplateOutlet=\"dotTpl\"></ng-container>\r\n </sup>\r\n } @else {\r\n <sup [@x-badge-animation] [style.marginRight]=\"offsetLeft()\" [style.marginTop]=\"offsetTop()\">\r\n <ng-container *ngTemplateOutlet=\"dotTpl\"></ng-container>\r\n </sup>\r\n }\r\n }\r\n</div>\r\n\r\n<ng-template #dotTpl>\r\n @if (!dot()) {\r\n @for (item of maxNums(); track item) {\r\n <span class=\"x-badge-scroll\" [style.transform]=\"'translateY(-' + translateYNumbers()[$index] + '%)'\">\r\n @for (j of range(); track j) {\r\n <p>{{ j }}</p>\r\n }\r\n </span>\r\n }\r\n }\r\n</ng-template>\r\n", styles: ["x-badge{display:inline-block}.x-badge{margin:0;padding:0}.x-badge{font-size:var(--x-font-size);display:inline-block;box-sizing:border-box;text-align:center;position:relative}.x-badge>sup{position:absolute;top:0;right:0;overflow:hidden;transform:translate(50%,-50%);transform-origin:100% 0%;border-radius:.625rem;color:var(--x-white);display:inline-block;height:1.125rem;line-height:1.125rem;padding:0 .375rem;text-align:center;white-space:nowrap;box-shadow:0 0 0 .0625rem var(--x-white);vertical-align:middle}.x-badge-dot>sup{width:.5rem;height:.5rem;padding:0;right:0;border-radius:50%}.x-badge-standalone>sup{position:initial;transform:initial;transform-origin:initial}.x-badge-scroll{position:relative;height:1.125rem;display:inline-block;transition:transform var(--x-animation-duration-base) ease-in-out}.x-badge-primary>sup{background-color:var(--x-primary)}.x-badge-success>sup{background-color:var(--x-success)}.x-badge-info>sup{background-color:var(--x-info)}.x-badge-warning>sup{background-color:var(--x-warning)}.x-badge-danger>sup{background-color:var(--x-danger)}.x-badge-text>sup{background-color:var(--x-text)}\n"] }]
192
192
  }] });
193
193
 
194
194
  class XBadgeModule {
195
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBadgeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
196
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.4", ngImport: i0, type: XBadgeModule, imports: [XBadgeComponent], exports: [XBadgeComponent] }); }
197
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBadgeModule }); }
195
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBadgeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
196
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.0", ngImport: i0, type: XBadgeModule, imports: [XBadgeComponent], exports: [XBadgeComponent] }); }
197
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBadgeModule }); }
198
198
  }
199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBadgeModule, decorators: [{
199
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBadgeModule, decorators: [{
200
200
  type: NgModule,
201
201
  args: [{
202
202
  exports: [XBadgeComponent],
@@ -116,10 +116,10 @@ class XFormControlProp extends XProperty {
116
116
  */
117
117
  this.inputValidator = input(...(ngDevMode ? [undefined, { debugName: "inputValidator" }] : []));
118
118
  }
119
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XFormControlProp, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
120
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.4", type: XFormControlProp, isStandalone: true, selector: "x-formcontrol-prop", inputs: { validator: { classPropertyName: "validator", publicName: "validator", 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 }, size: { classPropertyName: "size", publicName: "size", 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 }, pointer: { classPropertyName: "pointer", publicName: "pointer", 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 }); }
119
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XFormControlProp, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
120
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.0", type: XFormControlProp, isStandalone: true, selector: "x-formcontrol-prop", inputs: { validator: { classPropertyName: "validator", publicName: "validator", 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 }, size: { classPropertyName: "size", publicName: "size", 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 }, pointer: { classPropertyName: "pointer", publicName: "pointer", 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 }); }
121
121
  }
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XFormControlProp, decorators: [{
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XFormControlProp, decorators: [{
123
123
  type: Component,
124
124
  args: [{ selector: 'x-formcontrol-prop', template: '' }]
125
125
  }] });
@@ -240,11 +240,11 @@ function XFormControlFunction(configName) {
240
240
  }
241
241
 
242
242
  class XBaseFormModule {
243
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBaseFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
244
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.4", ngImport: i0, type: XBaseFormModule }); }
245
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBaseFormModule }); }
243
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBaseFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
244
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.0", ngImport: i0, type: XBaseFormModule }); }
245
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBaseFormModule }); }
246
246
  }
247
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.4", ngImport: i0, type: XBaseFormModule, decorators: [{
247
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XBaseFormModule, decorators: [{
248
248
  type: NgModule,
249
249
  args: [{
250
250
  imports: [],