ngx-tethys 22.0.2 → 22.0.3

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 (181) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/button/styles/button-group.scss +25 -18
  3. package/button/styles/button.scss +3 -1
  4. package/button/styles/mixin.scss +7 -2
  5. package/button/styles/theme.scss +3 -1
  6. package/cascader/styles/cascader.scss +5 -0
  7. package/date-picker/styles/index.scss +5 -0
  8. package/date-picker/styles/picker.scss +5 -0
  9. package/fesm2022/ngx-tethys-action.mjs +13 -4
  10. package/fesm2022/ngx-tethys-action.mjs.map +1 -1
  11. package/fesm2022/ngx-tethys-alert.mjs +2 -2
  12. package/fesm2022/ngx-tethys-alert.mjs.map +1 -1
  13. package/fesm2022/ngx-tethys-arrow-switcher.mjs +17 -6
  14. package/fesm2022/ngx-tethys-arrow-switcher.mjs.map +1 -1
  15. package/fesm2022/ngx-tethys-autocomplete.mjs +11 -3
  16. package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
  17. package/fesm2022/ngx-tethys-badge.mjs +17 -5
  18. package/fesm2022/ngx-tethys-badge.mjs.map +1 -1
  19. package/fesm2022/ngx-tethys-breadcrumb.mjs +1 -1
  20. package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
  21. package/fesm2022/ngx-tethys-button.mjs +39 -21
  22. package/fesm2022/ngx-tethys-button.mjs.map +1 -1
  23. package/fesm2022/ngx-tethys-card.mjs +1 -3
  24. package/fesm2022/ngx-tethys-card.mjs.map +1 -1
  25. package/fesm2022/ngx-tethys-cascader.mjs +36 -28
  26. package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
  27. package/fesm2022/ngx-tethys-collapse.mjs +2 -2
  28. package/fesm2022/ngx-tethys-collapse.mjs.map +1 -1
  29. package/fesm2022/ngx-tethys-color-picker.mjs +1 -1
  30. package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
  31. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  32. package/fesm2022/ngx-tethys-date-picker.mjs +30 -18
  33. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  34. package/fesm2022/ngx-tethys-date-range.mjs +2 -2
  35. package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
  36. package/fesm2022/ngx-tethys-dialog.mjs +193 -195
  37. package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
  38. package/fesm2022/ngx-tethys-divider.mjs +18 -7
  39. package/fesm2022/ngx-tethys-divider.mjs.map +1 -1
  40. package/fesm2022/ngx-tethys-dropdown.mjs +16 -5
  41. package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
  42. package/fesm2022/ngx-tethys-form.mjs +447 -101
  43. package/fesm2022/ngx-tethys-form.mjs.map +1 -1
  44. package/fesm2022/ngx-tethys-image.mjs +1 -1
  45. package/fesm2022/ngx-tethys-image.mjs.map +1 -1
  46. package/fesm2022/ngx-tethys-input-number.mjs +10 -4
  47. package/fesm2022/ngx-tethys-input-number.mjs.map +1 -1
  48. package/fesm2022/ngx-tethys-input.mjs +54 -13
  49. package/fesm2022/ngx-tethys-input.mjs.map +1 -1
  50. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  51. package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
  52. package/fesm2022/ngx-tethys-menu.mjs +36 -6
  53. package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
  54. package/fesm2022/ngx-tethys-message.mjs.map +1 -1
  55. package/fesm2022/ngx-tethys-native-table.mjs +26 -11
  56. package/fesm2022/ngx-tethys-native-table.mjs.map +1 -1
  57. package/fesm2022/ngx-tethys-nav.mjs +4 -2
  58. package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
  59. package/fesm2022/ngx-tethys-notify.mjs +1 -1
  60. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  61. package/fesm2022/ngx-tethys-pagination.mjs +1 -1
  62. package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
  63. package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
  64. package/fesm2022/ngx-tethys-progress.mjs +81 -55
  65. package/fesm2022/ngx-tethys-progress.mjs.map +1 -1
  66. package/fesm2022/ngx-tethys-property-operation.mjs +32 -24
  67. package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
  68. package/fesm2022/ngx-tethys-property.mjs.map +1 -1
  69. package/fesm2022/ngx-tethys-radio.mjs +1 -0
  70. package/fesm2022/ngx-tethys-radio.mjs.map +1 -1
  71. package/fesm2022/ngx-tethys-segment.mjs +0 -1
  72. package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
  73. package/fesm2022/ngx-tethys-select.mjs +27 -9
  74. package/fesm2022/ngx-tethys-select.mjs.map +1 -1
  75. package/fesm2022/ngx-tethys-shared.mjs +16 -7
  76. package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
  77. package/fesm2022/ngx-tethys-slide.mjs +1 -1
  78. package/fesm2022/ngx-tethys-slide.mjs.map +1 -1
  79. package/fesm2022/ngx-tethys-slider.mjs +38 -13
  80. package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
  81. package/fesm2022/ngx-tethys-space.mjs.map +1 -1
  82. package/fesm2022/ngx-tethys-statistic.mjs +20 -10
  83. package/fesm2022/ngx-tethys-statistic.mjs.map +1 -1
  84. package/fesm2022/ngx-tethys-stepper.mjs +1 -1
  85. package/fesm2022/ngx-tethys-stepper.mjs.map +1 -1
  86. package/fesm2022/ngx-tethys-strength.mjs +9 -1
  87. package/fesm2022/ngx-tethys-strength.mjs.map +1 -1
  88. package/fesm2022/ngx-tethys-switch.mjs +20 -11
  89. package/fesm2022/ngx-tethys-switch.mjs.map +1 -1
  90. package/fesm2022/ngx-tethys-table.mjs +28 -17
  91. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  92. package/fesm2022/ngx-tethys-tabs.mjs +2 -2
  93. package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
  94. package/fesm2022/ngx-tethys-time-picker.mjs +10 -4
  95. package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
  96. package/fesm2022/ngx-tethys-timeline.mjs +2 -8
  97. package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
  98. package/fesm2022/ngx-tethys-tree-select.mjs +11 -6
  99. package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
  100. package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
  101. package/fesm2022/ngx-tethys-typography.mjs +0 -1
  102. package/fesm2022/ngx-tethys-typography.mjs.map +1 -1
  103. package/fesm2022/ngx-tethys.mjs +1 -1
  104. package/fesm2022/ngx-tethys.mjs.map +1 -1
  105. package/form/styles/forms.scss +1 -0
  106. package/form/styles/mixin.scss +37 -0
  107. package/form/styles/theme.scss +1 -0
  108. package/input/styles/input.scss +28 -19
  109. package/input-number/styles/input-number.scss +22 -3
  110. package/menu/examples/variant/variant.component.scss +21 -0
  111. package/package.json +1 -1
  112. package/schematics/ng-update/update-22/badge-dot-hollow-migration.spec.js +4 -4
  113. package/schematics/ng-update/update-22/button-appearance-migration.js +2 -0
  114. package/schematics/ng-update/update-22/button-appearance-migration.spec.js +0 -4
  115. package/schematics/ng-update/update-22/button-group-appearance-migration.d.ts +6 -0
  116. package/schematics/ng-update/update-22/button-group-appearance-migration.js +157 -0
  117. package/schematics/ng-update/update-22/button-group-appearance-migration.spec.d.ts +1 -0
  118. package/schematics/ng-update/update-22/button-group-appearance-migration.spec.js +56 -0
  119. package/schematics/ng-update/update-22/class-name-migration.spec.js +135 -0
  120. package/schematics/ng-update/update-22/divider-deeper-migration.js +12 -5
  121. package/schematics/ng-update/update-22/divider-deeper-migration.spec.js +9 -1
  122. package/schematics/ng-update/update-22/index.js +9 -1
  123. package/schematics/ng-update/update-22/index.spec.js +581 -3
  124. package/schematics/ng-update/update-22/input-search-appearance-migration.d.ts +6 -0
  125. package/schematics/ng-update/update-22/input-search-appearance-migration.js +94 -0
  126. package/schematics/ng-update/update-22/input-search-appearance-migration.spec.d.ts +1 -0
  127. package/schematics/ng-update/update-22/input-search-appearance-migration.spec.js +41 -0
  128. package/schematics/ng-update/update-22/menu-theme-migration.d.ts +14 -0
  129. package/schematics/ng-update/update-22/menu-theme-migration.js +108 -0
  130. package/schematics/ng-update/update-22/menu-theme-migration.spec.d.ts +1 -0
  131. package/schematics/ng-update/update-22/menu-theme-migration.spec.js +42 -0
  132. package/schematics/ng-update/update-22/select-borderless-migration.d.ts +6 -0
  133. package/schematics/ng-update/update-22/select-borderless-migration.js +111 -0
  134. package/schematics/ng-update/update-22/select-borderless-migration.spec.d.ts +1 -0
  135. package/schematics/ng-update/update-22/select-borderless-migration.spec.js +49 -0
  136. package/schematics/ng-update/update-22/update-data.js +102 -1
  137. package/schematics/version.d.ts +1 -1
  138. package/schematics/version.js +1 -1
  139. package/select/styles/custom-select.scss +5 -0
  140. package/select/styles/theme.scss +10 -0
  141. package/shared/select/select-control/select-control.scss +4 -3
  142. package/time-picker/styles/time-picker.scss +11 -2
  143. package/types/ngx-tethys-action.d.ts +14 -5
  144. package/types/ngx-tethys-alert.d.ts +2 -2
  145. package/types/ngx-tethys-arrow-switcher.d.ts +16 -5
  146. package/types/ngx-tethys-autocomplete.d.ts +8 -2
  147. package/types/ngx-tethys-badge.d.ts +14 -4
  148. package/types/ngx-tethys-button.d.ts +28 -9
  149. package/types/ngx-tethys-card.d.ts +3 -6
  150. package/types/ngx-tethys-cascader.d.ts +9 -3
  151. package/types/ngx-tethys-collapse.d.ts +3 -3
  152. package/types/ngx-tethys-core.d.ts +2 -1
  153. package/types/ngx-tethys-date-picker.d.ts +15 -3
  154. package/types/ngx-tethys-dialog.d.ts +1 -3
  155. package/types/ngx-tethys-divider.d.ts +20 -9
  156. package/types/ngx-tethys-dropdown.d.ts +16 -5
  157. package/types/ngx-tethys-form.d.ts +198 -55
  158. package/types/ngx-tethys-input-number.d.ts +8 -2
  159. package/types/ngx-tethys-input.d.ts +39 -8
  160. package/types/ngx-tethys-menu.d.ts +16 -4
  161. package/types/ngx-tethys-native-table.d.ts +21 -6
  162. package/types/ngx-tethys-nav.d.ts +2 -0
  163. package/types/ngx-tethys-progress.d.ts +42 -18
  164. package/types/ngx-tethys-property-operation.d.ts +6 -0
  165. package/types/ngx-tethys-segment.d.ts +0 -1
  166. package/types/ngx-tethys-select.d.ts +23 -5
  167. package/types/ngx-tethys-shared.d.ts +12 -3
  168. package/types/ngx-tethys-slider.d.ts +22 -8
  169. package/types/ngx-tethys-space.d.ts +3 -1
  170. package/types/ngx-tethys-statistic.d.ts +23 -9
  171. package/types/ngx-tethys-stepper.d.ts +1 -1
  172. package/types/ngx-tethys-strength.d.ts +5 -0
  173. package/types/ngx-tethys-switch.d.ts +15 -4
  174. package/types/ngx-tethys-table.d.ts +24 -8
  175. package/types/ngx-tethys-tabs.d.ts +3 -3
  176. package/types/ngx-tethys-time-picker.d.ts +8 -2
  177. package/types/ngx-tethys-timeline.d.ts +13 -14
  178. package/types/ngx-tethys-tree-select.d.ts +8 -3
  179. package/types/ngx-tethys-typography.d.ts +0 -1
  180. /package/action/examples/{type/type.component.scss → color/color.component.scss} +0 -0
  181. /package/badge/examples/{type/type.component.scss → color/color.component.scss} +0 -0
@@ -1,7 +1,7 @@
1
1
  import { CdkConnectedOverlay, CdkOverlayOrigin, OverlayModule } from '@angular/cdk/overlay';
2
2
  import { NgTemplateOutlet, NgClass, isPlatformBrowser, NgStyle, CommonModule } from '@angular/common';
3
3
  import * as i0 from '@angular/core';
4
- import { inject, ChangeDetectorRef, input, computed, output, ViewEncapsulation, Component, HostListener, Injectable, Pipe, PLATFORM_ID, ElementRef, NgZone, TemplateRef, numberAttribute, viewChildren, viewChild, effect, forwardRef, Input, ChangeDetectionStrategy, NgModule } from '@angular/core';
4
+ import { inject, ChangeDetectorRef, input, computed, output, ViewEncapsulation, Component, HostListener, Pipe, Injectable, PLATFORM_ID, ElementRef, NgZone, TemplateRef, numberAttribute, viewChildren, viewChild, effect, forwardRef, Input, ChangeDetectionStrategy, NgModule } from '@angular/core';
5
5
  import * as i1 from '@angular/forms';
6
6
  import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
7
7
  import { ThyCheckbox, ThyCheckboxModule } from 'ngx-tethys/checkbox';
@@ -13,16 +13,16 @@ import { ThyStopPropagationDirective, ThySelectControl, ThySelectCommonModule }
13
13
  import { ThyRadio } from 'ngx-tethys/radio';
14
14
  import { coerceBooleanProperty, isEmpty, isArray, wrapIntoObservable, get, isUndefinedOrNull, helpers, set, elementMatchClosest } from 'ngx-tethys/util';
15
15
  import { ThyBreadcrumb, ThyBreadcrumbItem } from 'ngx-tethys/breadcrumb';
16
+ import * as i1$1 from '@angular/cdk/scrolling';
17
+ import { CdkVirtualScrollViewport, ScrollingModule, ScrollDispatcher } from '@angular/cdk/scrolling';
16
18
  import { useHostRenderer } from '@tethys/cdk/dom';
17
19
  import { TabIndexDisabledControlValueAccessorMixin, ThyClickDispatcher, injectPanelEmptyIcon, thyAnimationZoom, EXPANDED_DROPDOWN_POSITIONS, DebounceTimeWrapper } from 'ngx-tethys/core';
18
20
  import { ThyDivider } from 'ngx-tethys/divider';
19
21
  import { injectLocale } from 'ngx-tethys/i18n';
22
+ import { ThyLoading } from 'ngx-tethys/loading';
20
23
  import { Subject, BehaviorSubject, timer, Observable } from 'rxjs';
21
24
  import { map, debounceTime, finalize, takeUntil, take, delay, distinctUntilChanged, filter } from 'rxjs/operators';
22
25
  import { SelectionModel } from '@angular/cdk/collections';
23
- import * as i1$1 from '@angular/cdk/scrolling';
24
- import { CdkVirtualScrollViewport, ScrollingModule, ScrollDispatcher } from '@angular/cdk/scrolling';
25
- import { ThyLoading } from 'ngx-tethys/loading';
26
26
 
27
27
  /**
28
28
  * @internal
@@ -113,6 +113,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
113
113
  args: ['click', ['$event']]
114
114
  }], toggleSelectChange: [{ type: i0.Output, args: ["toggleSelectChange"] }] } });
115
115
 
116
+ /**
117
+ * @private
118
+ */
119
+ class ThyCascaderOptionsPipe {
120
+ transform(options, customOptions) {
121
+ if (!customOptions?.length) {
122
+ return options;
123
+ }
124
+ return [...customOptions, ...options];
125
+ }
126
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: ThyCascaderOptionsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
127
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.4", ngImport: i0, type: ThyCascaderOptionsPipe, isStandalone: true, name: "cascaderOptions" }); }
128
+ }
129
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: ThyCascaderOptionsPipe, decorators: [{
130
+ type: Pipe,
131
+ args: [{
132
+ name: 'cascaderOptions'
133
+ }]
134
+ }] });
135
+
116
136
  const defaultDisplayRender = (label) => label.join(' / ');
117
137
  /**
118
138
  * @internal
@@ -694,26 +714,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
694
714
  type: Injectable
695
715
  }] });
696
716
 
697
- /**
698
- * @private
699
- */
700
- class ThyCascaderOptionsPipe {
701
- transform(options, customOptions) {
702
- if (!customOptions?.length) {
703
- return options;
704
- }
705
- return [...customOptions, ...options];
706
- }
707
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: ThyCascaderOptionsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
708
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.4", ngImport: i0, type: ThyCascaderOptionsPipe, isStandalone: true, name: "cascaderOptions" }); }
709
- }
710
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: ThyCascaderOptionsPipe, decorators: [{
711
- type: Pipe,
712
- args: [{
713
- name: 'cascaderOptions'
714
- }]
715
- }] });
716
-
717
717
  /**
718
718
  * 级联选择菜单
719
719
  * @name thy-cascader
@@ -773,6 +773,12 @@ class ThyCascader extends TabIndexDisabledControlValueAccessorMixin {
773
773
  * @default md
774
774
  */
775
775
  this.thySize = input('md', { ...(ngDevMode ? { debugName: "thySize" } : /* istanbul ignore next */ {}), transform: value => value ?? 'md' });
776
+ /**
777
+ * 选择框外观。`outline`: 灰色边框、白色底,hover/focus 时蓝色边框;`subtle`: 无边框,hover/focus 时蓝色边框;`ghost`: 无边框,hover/focus 时也无边框
778
+ * @type outline | subtle | ghost
779
+ * @default outline
780
+ */
781
+ this.thyAppearance = input('outline', { ...(ngDevMode ? { debugName: "thyAppearance" } : /* istanbul ignore next */ {}), transform: value => value ?? 'outline' });
776
782
  /**
777
783
  * 数据项
778
784
  * @type ThyCascaderOption[]
@@ -1088,6 +1094,8 @@ class ThyCascader extends TabIndexDisabledControlValueAccessorMixin {
1088
1094
  }
1089
1095
  setDisabledState(isDisabled) {
1090
1096
  this.disabled = isDisabled;
1097
+ this.setClassMap();
1098
+ this.cdr.markForCheck();
1091
1099
  }
1092
1100
  positionChange(position) {
1093
1101
  const newValue = position.connectionPair.originY === 'bottom' ? 'bottom' : 'top';
@@ -1376,7 +1384,7 @@ class ThyCascader extends TabIndexDisabledControlValueAccessorMixin {
1376
1384
  this.destroy$.complete();
1377
1385
  }
1378
1386
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: ThyCascader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1379
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: ThyCascader, isStandalone: true, selector: "thy-cascader,[thy-cascader]", inputs: { thyValueProperty: { classPropertyName: "thyValueProperty", publicName: "thyValueProperty", isSignal: true, isRequired: false, transformFunction: null }, thyLabelProperty: { classPropertyName: "thyLabelProperty", publicName: "thyLabelProperty", isSignal: true, isRequired: false, transformFunction: null }, thyPlaceholder: { classPropertyName: "thyPlaceholder", publicName: "thyPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, thySize: { classPropertyName: "thySize", publicName: "thySize", isSignal: true, isRequired: false, transformFunction: null }, thyOptions: { classPropertyName: "thyOptions", publicName: "thyOptions", isSignal: true, isRequired: false, transformFunction: null }, thyCustomOptions: { classPropertyName: "thyCustomOptions", publicName: "thyCustomOptions", isSignal: true, isRequired: false, transformFunction: null }, thyChangeOn: { classPropertyName: "thyChangeOn", publicName: "thyChangeOn", isSignal: true, isRequired: false, transformFunction: null }, thyChangeOnSelect: { classPropertyName: "thyChangeOnSelect", publicName: "thyChangeOnSelect", isSignal: true, isRequired: false, transformFunction: null }, thyShowInput: { classPropertyName: "thyShowInput", publicName: "thyShowInput", isSignal: true, isRequired: false, transformFunction: null }, thyOptionRender: { classPropertyName: "thyOptionRender", publicName: "thyOptionRender", isSignal: true, isRequired: false, transformFunction: null }, thyLabelRender: { classPropertyName: "thyLabelRender", publicName: "thyLabelRender", isSignal: true, isRequired: false, transformFunction: null }, thyLoadData: { classPropertyName: "thyLoadData", publicName: "thyLoadData", isSignal: true, isRequired: false, transformFunction: null }, thyTriggerAction: { classPropertyName: "thyTriggerAction", publicName: "thyTriggerAction", isSignal: true, isRequired: false, transformFunction: null }, thyExpandTriggerAction: { classPropertyName: "thyExpandTriggerAction", publicName: "thyExpandTriggerAction", isSignal: true, isRequired: false, transformFunction: null }, thyMenuStyle: { classPropertyName: "thyMenuStyle", publicName: "thyMenuStyle", isSignal: true, isRequired: false, transformFunction: null }, thySearchListStyle: { classPropertyName: "thySearchListStyle", publicName: "thySearchListStyle", isSignal: true, isRequired: false, transformFunction: null }, thyMenuClassName: { classPropertyName: "thyMenuClassName", publicName: "thyMenuClassName", isSignal: true, isRequired: false, transformFunction: null }, thyColumnClassName: { classPropertyName: "thyColumnClassName", publicName: "thyColumnClassName", isSignal: true, isRequired: false, transformFunction: null }, thyDisabled: { classPropertyName: "thyDisabled", publicName: "thyDisabled", isSignal: false, isRequired: false, transformFunction: coerceBooleanProperty }, thyEmptyStateText: { classPropertyName: "thyEmptyStateText", publicName: "thyEmptyStateText", isSignal: true, isRequired: false, transformFunction: null }, thyMultiple: { classPropertyName: "thyMultiple", publicName: "thyMultiple", isSignal: true, isRequired: false, transformFunction: null }, thyMaxTagCount: { classPropertyName: "thyMaxTagCount", publicName: "thyMaxTagCount", isSignal: true, isRequired: false, transformFunction: null }, thyIsOnlySelectLeaf: { classPropertyName: "thyIsOnlySelectLeaf", publicName: "thyIsOnlySelectLeaf", isSignal: true, isRequired: false, transformFunction: null }, thyWidth: { classPropertyName: "thyWidth", publicName: "thyWidth", isSignal: true, isRequired: false, transformFunction: null }, thyLoadingDone: { classPropertyName: "thyLoadingDone", publicName: "thyLoadingDone", isSignal: true, isRequired: false, transformFunction: null }, thyAutoExpand: { classPropertyName: "thyAutoExpand", publicName: "thyAutoExpand", isSignal: true, isRequired: false, transformFunction: null }, thyShowSearch: { classPropertyName: "thyShowSearch", publicName: "thyShowSearch", isSignal: true, isRequired: false, transformFunction: null }, thyPreset: { classPropertyName: "thyPreset", publicName: "thyPreset", isSignal: true, isRequired: false, transformFunction: null }, thyHasBackdrop: { classPropertyName: "thyHasBackdrop", publicName: "thyHasBackdrop", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { thyChange: "thyChange", thySelectionChange: "thySelectionChange", thySelect: "thySelect", thyDeselect: "thyDeselect", thyClear: "thyClear", thyExpandStatusChange: "thyExpandStatusChange", thyOnSearch: "thyOnSearch" }, host: { listeners: { "focus": "onFocus($event)", "blur": "onBlur($event)", "click": "toggleClick($event)", "mouseenter": "toggleMouseEnter($event)", "mouseleave": "toggleMouseLeave($event)" }, properties: { "attr.tabindex": "tabIndex" } }, providers: [
1387
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: ThyCascader, isStandalone: true, selector: "thy-cascader,[thy-cascader]", inputs: { thyValueProperty: { classPropertyName: "thyValueProperty", publicName: "thyValueProperty", isSignal: true, isRequired: false, transformFunction: null }, thyLabelProperty: { classPropertyName: "thyLabelProperty", publicName: "thyLabelProperty", isSignal: true, isRequired: false, transformFunction: null }, thyPlaceholder: { classPropertyName: "thyPlaceholder", publicName: "thyPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, thySize: { classPropertyName: "thySize", publicName: "thySize", isSignal: true, isRequired: false, transformFunction: null }, thyAppearance: { classPropertyName: "thyAppearance", publicName: "thyAppearance", isSignal: true, isRequired: false, transformFunction: null }, thyOptions: { classPropertyName: "thyOptions", publicName: "thyOptions", isSignal: true, isRequired: false, transformFunction: null }, thyCustomOptions: { classPropertyName: "thyCustomOptions", publicName: "thyCustomOptions", isSignal: true, isRequired: false, transformFunction: null }, thyChangeOn: { classPropertyName: "thyChangeOn", publicName: "thyChangeOn", isSignal: true, isRequired: false, transformFunction: null }, thyChangeOnSelect: { classPropertyName: "thyChangeOnSelect", publicName: "thyChangeOnSelect", isSignal: true, isRequired: false, transformFunction: null }, thyShowInput: { classPropertyName: "thyShowInput", publicName: "thyShowInput", isSignal: true, isRequired: false, transformFunction: null }, thyOptionRender: { classPropertyName: "thyOptionRender", publicName: "thyOptionRender", isSignal: true, isRequired: false, transformFunction: null }, thyLabelRender: { classPropertyName: "thyLabelRender", publicName: "thyLabelRender", isSignal: true, isRequired: false, transformFunction: null }, thyLoadData: { classPropertyName: "thyLoadData", publicName: "thyLoadData", isSignal: true, isRequired: false, transformFunction: null }, thyTriggerAction: { classPropertyName: "thyTriggerAction", publicName: "thyTriggerAction", isSignal: true, isRequired: false, transformFunction: null }, thyExpandTriggerAction: { classPropertyName: "thyExpandTriggerAction", publicName: "thyExpandTriggerAction", isSignal: true, isRequired: false, transformFunction: null }, thyMenuStyle: { classPropertyName: "thyMenuStyle", publicName: "thyMenuStyle", isSignal: true, isRequired: false, transformFunction: null }, thySearchListStyle: { classPropertyName: "thySearchListStyle", publicName: "thySearchListStyle", isSignal: true, isRequired: false, transformFunction: null }, thyMenuClassName: { classPropertyName: "thyMenuClassName", publicName: "thyMenuClassName", isSignal: true, isRequired: false, transformFunction: null }, thyColumnClassName: { classPropertyName: "thyColumnClassName", publicName: "thyColumnClassName", isSignal: true, isRequired: false, transformFunction: null }, thyDisabled: { classPropertyName: "thyDisabled", publicName: "thyDisabled", isSignal: false, isRequired: false, transformFunction: coerceBooleanProperty }, thyEmptyStateText: { classPropertyName: "thyEmptyStateText", publicName: "thyEmptyStateText", isSignal: true, isRequired: false, transformFunction: null }, thyMultiple: { classPropertyName: "thyMultiple", publicName: "thyMultiple", isSignal: true, isRequired: false, transformFunction: null }, thyMaxTagCount: { classPropertyName: "thyMaxTagCount", publicName: "thyMaxTagCount", isSignal: true, isRequired: false, transformFunction: null }, thyIsOnlySelectLeaf: { classPropertyName: "thyIsOnlySelectLeaf", publicName: "thyIsOnlySelectLeaf", isSignal: true, isRequired: false, transformFunction: null }, thyWidth: { classPropertyName: "thyWidth", publicName: "thyWidth", isSignal: true, isRequired: false, transformFunction: null }, thyLoadingDone: { classPropertyName: "thyLoadingDone", publicName: "thyLoadingDone", isSignal: true, isRequired: false, transformFunction: null }, thyAutoExpand: { classPropertyName: "thyAutoExpand", publicName: "thyAutoExpand", isSignal: true, isRequired: false, transformFunction: null }, thyShowSearch: { classPropertyName: "thyShowSearch", publicName: "thyShowSearch", isSignal: true, isRequired: false, transformFunction: null }, thyPreset: { classPropertyName: "thyPreset", publicName: "thyPreset", isSignal: true, isRequired: false, transformFunction: null }, thyHasBackdrop: { classPropertyName: "thyHasBackdrop", publicName: "thyHasBackdrop", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { thyChange: "thyChange", thySelectionChange: "thySelectionChange", thySelect: "thySelect", thyDeselect: "thyDeselect", thyClear: "thyClear", thyExpandStatusChange: "thyExpandStatusChange", thyOnSearch: "thyOnSearch" }, host: { listeners: { "focus": "onFocus($event)", "blur": "onBlur($event)", "click": "toggleClick($event)", "mouseenter": "toggleMouseEnter($event)", "mouseleave": "toggleMouseLeave($event)" }, properties: { "attr.tabindex": "tabIndex" } }, providers: [
1380
1388
  {
1381
1389
  provide: NG_VALUE_ACCESSOR,
1382
1390
  useExisting: forwardRef(() => ThyCascader),
@@ -1384,7 +1392,7 @@ class ThyCascader extends TabIndexDisabledControlValueAccessorMixin {
1384
1392
  },
1385
1393
  ScrollDispatcher,
1386
1394
  ThyCascaderService
1387
- ], viewQueries: [{ propertyName: "cascaderOptions", predicate: ["cascaderOptions"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "cascaderItems", predicate: ThyCascaderOptionComponent, descendants: true, isSignal: true }, { propertyName: "cascaderOptionContainers", predicate: ["cascaderOptionContainers"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "cdkConnectedOverlay", first: true, predicate: CdkConnectedOverlay, descendants: true, isSignal: true }, { propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true, isSignal: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true, isSignal: true }, { propertyName: "menu", first: true, predicate: ["menu"], descendants: true, isSignal: true }, { propertyName: "virtualScrollViewports", predicate: CdkVirtualScrollViewport, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div cdkOverlayOrigin #origin=\"cdkOverlayOrigin\" #trigger>\n @if (thyShowInput()) {\n <div\n thySelectControl\n [thyShowSearch]=\"thyShowSearch()\"\n [thySize]=\"thySize()\"\n [thyAllowClear]=\"true\"\n [thySelectedOptions]=\"selected\"\n [thyMaxTagCount]=\"thyMaxTagCount()\"\n (thyOnRemove)=\"removeSelectedItem($event)\"\n (thyOnClear)=\"clearSelection($event)\"\n (thyOnBlur)=\"onBlur($event)\"\n (thyOnSearch)=\"searchFilter($event)\"\n [thyDisabled]=\"disabled\"\n [thyIsMultiple]=\"thyMultiple()\"\n [thyPanelOpened]=\"menuVisible\"\n [thyPlaceholder]=\"thyPlaceholder()\"\n [customDisplayTemplate]=\"customDisplayTemplate\"\n [thyPreset]=\"thyPreset()\">\n <ng-template #customDisplayTemplate let-value>\n @if (!isLabelRenderTemplate()) {\n <span [ngClass]=\"labelCls\">{{ value.labelText }}</span>\n } @else {\n <span [ngClass]=\"labelCls\">\n <ng-template [ngTemplateOutlet]=\"thyLabelRender()\" [ngTemplateOutletContext]=\"value.labelRenderContext\"></ng-template>\n </span>\n }\n </ng-template>\n </div>\n }\n</div>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayHasBackdrop]=\"thyHasBackdrop()\"\n cdkConnectedOverlayBackdropClass=\"thy-cascader-backdrop\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"menuMinWidth\"\n cdkConnectedOverlayTransformOriginOn=\".thy-cascader-menus\"\n (backdropClick)=\"closeMenu()\"\n (detach)=\"closeMenu()\"\n (attach)=\"attached()\"\n (positionChange)=\"positionChange($event)\"\n [cdkConnectedOverlayOpen]=\"menuVisible\">\n <div\n [attr.tabindex]=\"-1\"\n #menu\n [ngClass]=\"menuCls\"\n [ngStyle]=\"thyMenuStyle()\"\n (mouseleave)=\"toggleMouseLeave($event)\"\n [animate.enter]=\"animateEnterClass\"\n [class.thy-cascader-loading]=\"!thyLoadingDone()\">\n @if (thyLoadingDone()) {\n @if (!isShowSearchPanel) {\n @if (columns.length > 0) {\n @for (options of columns; track $index; let i = $index; let isFirst = $first) {\n <ul #cascaderOptionContainers [ngClass]=\"menuColumnCls()\" [ngStyle]=\"{ 'width.px': thyWidth() }\">\n @let allOptions = options | cascaderOptions: (isFirst ? thyCascaderService.customOptions : []);\n\n @if (allOptions.length > 0) {\n <cdk-virtual-scroll-viewport [itemSize]=\"36\" class=\"h-100\">\n <ng-container *cdkVirtualFor=\"let option of allOptions; let index = index; trackBy: trackByFn\">\n @if (\n thyCascaderService.customOptions &&\n thyCascaderService.customOptions.length > 0 &&\n isFirst &&\n index < thyCascaderService.customOptions.length\n ) {\n <li\n #cascaderOptions\n thy-cascader-option\n [option]=\"option\"\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [labelProperty]=\"thyLabelProperty()\"\n [active]=\"isActivatedOption(option, 0)\"\n [halfSelected]=\"isHalfSelectedOption(option, 0)\"\n [selected]=\"isSelectedOption(option, 0)\"\n (toggleSelectChange)=\"clickCustomOption(option, 0, $event)\"\n (click)=\"clickCustomOption(option, 0, $event)\"\n (mouseover)=\"mouseoverOption(option, 0, $event)\"></li>\n @if (index === thyCascaderService.customOptions.length - 1) {\n <thy-divider class=\"my-1 mx-4\"></thy-divider>\n }\n } @else {\n <li\n #cascaderOptions\n thy-cascader-option\n [option]=\"option\"\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [labelProperty]=\"thyLabelProperty()\"\n [active]=\"isActivatedOption(option, i)\"\n [halfSelected]=\"isHalfSelectedOption(option, i)\"\n [selected]=\"isSelectedOption(option, i)\"\n [optionRender]=\"thyOptionRender()\"\n (toggleSelectChange)=\"clickOption(option, i, $event)\"\n (click)=\"clickOption(option, i, $event)\"\n (mouseover)=\"mouseoverOption(option, i, $event)\"></li>\n }\n </ng-container>\n </cdk-virtual-scroll-viewport>\n }\n </ul>\n }\n } @else {\n <div class=\"thy-cascader-empty-container\" [ngStyle]=\"{ 'width.px': $safeNavigationMigration(triggerRect?.width) }\">\n <thy-empty\n class=\"thy-select-empty-content\"\n thySize=\"sm\"\n [thyMessage]=\"thyEmptyStateText()\"\n [thyIconName]=\"emptyIcon()\"></thy-empty>\n </div>\n }\n }\n @if (isShowSearchPanel) {\n @if (searchResultList.length) {\n <ul class=\"thy-cascader-search-list py-3\" [ngStyle]=\"thySearchListStyle()\">\n @for (item of searchResultList; track $index) {\n <li\n thy-cascader-search-option\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [option]=\"item\"\n [active]=\"item.selected\"\n [optionRender]=\"thyOptionRender()\"\n (toggleSelectChange)=\"selectSearchResult($event)\"></li>\n }\n </ul>\n } @else {\n <div class=\"thy-cascader-empty-container\" [ngStyle]=\"{ 'width.px': $safeNavigationMigration(triggerRect?.width) }\">\n <thy-empty\n class=\"thy-select-empty-content\"\n thySize=\"sm\"\n [thyMessage]=\"thyEmptyStateText()\"\n [thyIconName]=\"emptyIcon()\"></thy-empty>\n </div>\n }\n }\n } @else {\n <thy-loading [ngStyle]=\"{ 'width.px': thyWidth() }\" [thyDone]=\"thyLoadingDone()\" thySize=\"sm\"></thy-loading>\n }\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: ThySelectControl, selector: "thy-select-control,[thySelectControl]", inputs: ["inputValue", "thyPanelOpened", "thyIsMultiple", "thyShowSearch", "thySelectedOptions", "thyDisabled", "customDisplayTemplate", "thyAllowClear", "thyPlaceholder", "thySize", "thyMaxTagCount", "thyBorderless", "thyPreset"], outputs: ["inputValueChange", "thyOnSearch", "thyOnRemove", "thyOnClear", "thyOnBlur"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ThyCascaderOptionComponent, selector: "[thy-cascader-option]", inputs: ["option", "multiple", "isOnlySelectLeaf", "optionRender", "active", "halfSelected", "selected", "labelProperty"], outputs: ["toggleSelectChange"] }, { kind: "component", type: ThyCascaderSearchOptionComponent, selector: "[thy-cascader-search-option]", inputs: ["option", "multiple", "isOnlySelectLeaf", "active", "optionRender"], outputs: ["toggleSelectChange"] }, { kind: "component", type: ThyEmpty, selector: "thy-empty", inputs: ["thyMessage", "thyIconName", "thySize", "thyMarginTop", "thyTopAuto", "thyContainer", "thyImageUrl", "thyImageLoading", "thyImageFetchPriority", "thyDescription"] }, { kind: "component", type: ThyDivider, selector: "thy-divider", inputs: ["thyVertical", "thyStyle", "thyColor", "thyText", "thyTextDirection"] }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i1$1.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i1$1.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i1$1.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: ThyLoading, selector: "thy-loading", inputs: ["thyDone", "thyTip", "thyIsMask"] }, { kind: "pipe", type: ThyCascaderOptionsPipe, name: "cascaderOptions" }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
1395
+ ], viewQueries: [{ propertyName: "cascaderOptions", predicate: ["cascaderOptions"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "cascaderItems", predicate: ThyCascaderOptionComponent, descendants: true, isSignal: true }, { propertyName: "cascaderOptionContainers", predicate: ["cascaderOptionContainers"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "cdkConnectedOverlay", first: true, predicate: CdkConnectedOverlay, descendants: true, isSignal: true }, { propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true, isSignal: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true, isSignal: true }, { propertyName: "menu", first: true, predicate: ["menu"], descendants: true, isSignal: true }, { propertyName: "virtualScrollViewports", predicate: CdkVirtualScrollViewport, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div cdkOverlayOrigin #origin=\"cdkOverlayOrigin\" #trigger>\n @if (thyShowInput()) {\n <div\n thySelectControl\n [thyShowSearch]=\"thyShowSearch()\"\n [thySize]=\"thySize()\"\n [thyAppearance]=\"thyAppearance()\"\n [thyAllowClear]=\"true\"\n [thySelectedOptions]=\"selected\"\n [thyMaxTagCount]=\"thyMaxTagCount()\"\n (thyOnRemove)=\"removeSelectedItem($event)\"\n (thyOnClear)=\"clearSelection($event)\"\n (thyOnBlur)=\"onBlur($event)\"\n (thyOnSearch)=\"searchFilter($event)\"\n [thyDisabled]=\"disabled\"\n [thyIsMultiple]=\"thyMultiple()\"\n [thyPanelOpened]=\"menuVisible\"\n [thyPlaceholder]=\"thyPlaceholder()\"\n [customDisplayTemplate]=\"customDisplayTemplate\"\n [thyPreset]=\"thyPreset()\">\n <ng-template #customDisplayTemplate let-value>\n @if (!isLabelRenderTemplate()) {\n <span [ngClass]=\"labelCls\">{{ value.labelText }}</span>\n } @else {\n <span [ngClass]=\"labelCls\">\n <ng-template [ngTemplateOutlet]=\"thyLabelRender()\" [ngTemplateOutletContext]=\"value.labelRenderContext\"></ng-template>\n </span>\n }\n </ng-template>\n </div>\n }\n</div>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayHasBackdrop]=\"thyHasBackdrop()\"\n cdkConnectedOverlayBackdropClass=\"thy-cascader-backdrop\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"menuMinWidth\"\n cdkConnectedOverlayTransformOriginOn=\".thy-cascader-menus\"\n (backdropClick)=\"closeMenu()\"\n (detach)=\"closeMenu()\"\n (attach)=\"attached()\"\n (positionChange)=\"positionChange($event)\"\n [cdkConnectedOverlayOpen]=\"menuVisible\">\n <div\n [attr.tabindex]=\"-1\"\n #menu\n [ngClass]=\"menuCls\"\n [ngStyle]=\"thyMenuStyle()\"\n (mouseleave)=\"toggleMouseLeave($event)\"\n [animate.enter]=\"animateEnterClass\"\n [class.thy-cascader-loading]=\"!thyLoadingDone()\">\n @if (thyLoadingDone()) {\n @if (!isShowSearchPanel) {\n @if (columns.length > 0) {\n @for (options of columns; track $index; let i = $index; let isFirst = $first) {\n <ul #cascaderOptionContainers [ngClass]=\"menuColumnCls()\" [ngStyle]=\"{ 'width.px': thyWidth() }\">\n @let allOptions = options | cascaderOptions: (isFirst ? thyCascaderService.customOptions : []);\n\n @if (allOptions.length > 0) {\n <cdk-virtual-scroll-viewport [itemSize]=\"36\" class=\"h-100\">\n <ng-container *cdkVirtualFor=\"let option of allOptions; let index = index; trackBy: trackByFn\">\n @if (\n thyCascaderService.customOptions &&\n thyCascaderService.customOptions.length > 0 &&\n isFirst &&\n index < thyCascaderService.customOptions.length\n ) {\n <li\n #cascaderOptions\n thy-cascader-option\n [option]=\"option\"\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [labelProperty]=\"thyLabelProperty()\"\n [active]=\"isActivatedOption(option, 0)\"\n [halfSelected]=\"isHalfSelectedOption(option, 0)\"\n [selected]=\"isSelectedOption(option, 0)\"\n (toggleSelectChange)=\"clickCustomOption(option, 0, $event)\"\n (click)=\"clickCustomOption(option, 0, $event)\"\n (mouseover)=\"mouseoverOption(option, 0, $event)\"></li>\n @if (index === thyCascaderService.customOptions.length - 1) {\n <thy-divider class=\"my-1 mx-4\"></thy-divider>\n }\n } @else {\n <li\n #cascaderOptions\n thy-cascader-option\n [option]=\"option\"\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [labelProperty]=\"thyLabelProperty()\"\n [active]=\"isActivatedOption(option, i)\"\n [halfSelected]=\"isHalfSelectedOption(option, i)\"\n [selected]=\"isSelectedOption(option, i)\"\n [optionRender]=\"thyOptionRender()\"\n (toggleSelectChange)=\"clickOption(option, i, $event)\"\n (click)=\"clickOption(option, i, $event)\"\n (mouseover)=\"mouseoverOption(option, i, $event)\"></li>\n }\n </ng-container>\n </cdk-virtual-scroll-viewport>\n }\n </ul>\n }\n } @else {\n <div class=\"thy-cascader-empty-container\" [ngStyle]=\"{ 'width.px': $safeNavigationMigration(triggerRect?.width) }\">\n <thy-empty\n class=\"thy-select-empty-content\"\n thySize=\"sm\"\n [thyMessage]=\"thyEmptyStateText()\"\n [thyIconName]=\"emptyIcon()\"></thy-empty>\n </div>\n }\n }\n @if (isShowSearchPanel) {\n @if (searchResultList.length) {\n <ul class=\"thy-cascader-search-list py-3\" [ngStyle]=\"thySearchListStyle()\">\n @for (item of searchResultList; track $index) {\n <li\n thy-cascader-search-option\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [option]=\"item\"\n [active]=\"item.selected\"\n [optionRender]=\"thyOptionRender()\"\n (toggleSelectChange)=\"selectSearchResult($event)\"></li>\n }\n </ul>\n } @else {\n <div class=\"thy-cascader-empty-container\" [ngStyle]=\"{ 'width.px': $safeNavigationMigration(triggerRect?.width) }\">\n <thy-empty\n class=\"thy-select-empty-content\"\n thySize=\"sm\"\n [thyMessage]=\"thyEmptyStateText()\"\n [thyIconName]=\"emptyIcon()\"></thy-empty>\n </div>\n }\n }\n } @else {\n <thy-loading [ngStyle]=\"{ 'width.px': thyWidth() }\" [thyDone]=\"thyLoadingDone()\" thySize=\"sm\"></thy-loading>\n }\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: ThySelectControl, selector: "thy-select-control,[thySelectControl]", inputs: ["inputValue", "thyPanelOpened", "thyIsMultiple", "thyShowSearch", "thySelectedOptions", "thyDisabled", "customDisplayTemplate", "thyAllowClear", "thyPlaceholder", "thySize", "thyAppearance", "thyMaxTagCount", "thyBorderless", "thyPreset"], outputs: ["inputValueChange", "thyOnSearch", "thyOnRemove", "thyOnClear", "thyOnBlur"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ThyCascaderOptionComponent, selector: "[thy-cascader-option]", inputs: ["option", "multiple", "isOnlySelectLeaf", "optionRender", "active", "halfSelected", "selected", "labelProperty"], outputs: ["toggleSelectChange"] }, { kind: "component", type: ThyCascaderSearchOptionComponent, selector: "[thy-cascader-search-option]", inputs: ["option", "multiple", "isOnlySelectLeaf", "active", "optionRender"], outputs: ["toggleSelectChange"] }, { kind: "component", type: ThyEmpty, selector: "thy-empty", inputs: ["thyMessage", "thyIconName", "thySize", "thyMarginTop", "thyTopAuto", "thyContainer", "thyImageUrl", "thyImageLoading", "thyImageFetchPriority", "thyDescription"] }, { kind: "component", type: ThyDivider, selector: "thy-divider", inputs: ["thyVertical", "thyAppearance", "thyStyle", "thyColor", "thyText", "thyTextDirection"] }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i1$1.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i1$1.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i1$1.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: ThyLoading, selector: "thy-loading", inputs: ["thyDone", "thyTip", "thyIsMask"] }, { kind: "pipe", type: ThyCascaderOptionsPipe, name: "cascaderOptions" }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
1388
1396
  }
1389
1397
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: ThyCascader, decorators: [{
1390
1398
  type: Component,
@@ -1414,8 +1422,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
1414
1422
  ScrollingModule,
1415
1423
  ThyCascaderOptionsPipe,
1416
1424
  ThyLoading
1417
- ], template: "<div cdkOverlayOrigin #origin=\"cdkOverlayOrigin\" #trigger>\n @if (thyShowInput()) {\n <div\n thySelectControl\n [thyShowSearch]=\"thyShowSearch()\"\n [thySize]=\"thySize()\"\n [thyAllowClear]=\"true\"\n [thySelectedOptions]=\"selected\"\n [thyMaxTagCount]=\"thyMaxTagCount()\"\n (thyOnRemove)=\"removeSelectedItem($event)\"\n (thyOnClear)=\"clearSelection($event)\"\n (thyOnBlur)=\"onBlur($event)\"\n (thyOnSearch)=\"searchFilter($event)\"\n [thyDisabled]=\"disabled\"\n [thyIsMultiple]=\"thyMultiple()\"\n [thyPanelOpened]=\"menuVisible\"\n [thyPlaceholder]=\"thyPlaceholder()\"\n [customDisplayTemplate]=\"customDisplayTemplate\"\n [thyPreset]=\"thyPreset()\">\n <ng-template #customDisplayTemplate let-value>\n @if (!isLabelRenderTemplate()) {\n <span [ngClass]=\"labelCls\">{{ value.labelText }}</span>\n } @else {\n <span [ngClass]=\"labelCls\">\n <ng-template [ngTemplateOutlet]=\"thyLabelRender()\" [ngTemplateOutletContext]=\"value.labelRenderContext\"></ng-template>\n </span>\n }\n </ng-template>\n </div>\n }\n</div>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayHasBackdrop]=\"thyHasBackdrop()\"\n cdkConnectedOverlayBackdropClass=\"thy-cascader-backdrop\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"menuMinWidth\"\n cdkConnectedOverlayTransformOriginOn=\".thy-cascader-menus\"\n (backdropClick)=\"closeMenu()\"\n (detach)=\"closeMenu()\"\n (attach)=\"attached()\"\n (positionChange)=\"positionChange($event)\"\n [cdkConnectedOverlayOpen]=\"menuVisible\">\n <div\n [attr.tabindex]=\"-1\"\n #menu\n [ngClass]=\"menuCls\"\n [ngStyle]=\"thyMenuStyle()\"\n (mouseleave)=\"toggleMouseLeave($event)\"\n [animate.enter]=\"animateEnterClass\"\n [class.thy-cascader-loading]=\"!thyLoadingDone()\">\n @if (thyLoadingDone()) {\n @if (!isShowSearchPanel) {\n @if (columns.length > 0) {\n @for (options of columns; track $index; let i = $index; let isFirst = $first) {\n <ul #cascaderOptionContainers [ngClass]=\"menuColumnCls()\" [ngStyle]=\"{ 'width.px': thyWidth() }\">\n @let allOptions = options | cascaderOptions: (isFirst ? thyCascaderService.customOptions : []);\n\n @if (allOptions.length > 0) {\n <cdk-virtual-scroll-viewport [itemSize]=\"36\" class=\"h-100\">\n <ng-container *cdkVirtualFor=\"let option of allOptions; let index = index; trackBy: trackByFn\">\n @if (\n thyCascaderService.customOptions &&\n thyCascaderService.customOptions.length > 0 &&\n isFirst &&\n index < thyCascaderService.customOptions.length\n ) {\n <li\n #cascaderOptions\n thy-cascader-option\n [option]=\"option\"\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [labelProperty]=\"thyLabelProperty()\"\n [active]=\"isActivatedOption(option, 0)\"\n [halfSelected]=\"isHalfSelectedOption(option, 0)\"\n [selected]=\"isSelectedOption(option, 0)\"\n (toggleSelectChange)=\"clickCustomOption(option, 0, $event)\"\n (click)=\"clickCustomOption(option, 0, $event)\"\n (mouseover)=\"mouseoverOption(option, 0, $event)\"></li>\n @if (index === thyCascaderService.customOptions.length - 1) {\n <thy-divider class=\"my-1 mx-4\"></thy-divider>\n }\n } @else {\n <li\n #cascaderOptions\n thy-cascader-option\n [option]=\"option\"\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [labelProperty]=\"thyLabelProperty()\"\n [active]=\"isActivatedOption(option, i)\"\n [halfSelected]=\"isHalfSelectedOption(option, i)\"\n [selected]=\"isSelectedOption(option, i)\"\n [optionRender]=\"thyOptionRender()\"\n (toggleSelectChange)=\"clickOption(option, i, $event)\"\n (click)=\"clickOption(option, i, $event)\"\n (mouseover)=\"mouseoverOption(option, i, $event)\"></li>\n }\n </ng-container>\n </cdk-virtual-scroll-viewport>\n }\n </ul>\n }\n } @else {\n <div class=\"thy-cascader-empty-container\" [ngStyle]=\"{ 'width.px': $safeNavigationMigration(triggerRect?.width) }\">\n <thy-empty\n class=\"thy-select-empty-content\"\n thySize=\"sm\"\n [thyMessage]=\"thyEmptyStateText()\"\n [thyIconName]=\"emptyIcon()\"></thy-empty>\n </div>\n }\n }\n @if (isShowSearchPanel) {\n @if (searchResultList.length) {\n <ul class=\"thy-cascader-search-list py-3\" [ngStyle]=\"thySearchListStyle()\">\n @for (item of searchResultList; track $index) {\n <li\n thy-cascader-search-option\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [option]=\"item\"\n [active]=\"item.selected\"\n [optionRender]=\"thyOptionRender()\"\n (toggleSelectChange)=\"selectSearchResult($event)\"></li>\n }\n </ul>\n } @else {\n <div class=\"thy-cascader-empty-container\" [ngStyle]=\"{ 'width.px': $safeNavigationMigration(triggerRect?.width) }\">\n <thy-empty\n class=\"thy-select-empty-content\"\n thySize=\"sm\"\n [thyMessage]=\"thyEmptyStateText()\"\n [thyIconName]=\"emptyIcon()\"></thy-empty>\n </div>\n }\n }\n } @else {\n <thy-loading [ngStyle]=\"{ 'width.px': thyWidth() }\" [thyDone]=\"thyLoadingDone()\" thySize=\"sm\"></thy-loading>\n }\n </div>\n</ng-template>\n" }]
1418
- }], ctorParameters: () => [], propDecorators: { thyValueProperty: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyValueProperty", required: false }] }], thyLabelProperty: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyLabelProperty", required: false }] }], thyPlaceholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyPlaceholder", required: false }] }], thySize: [{ type: i0.Input, args: [{ isSignal: true, alias: "thySize", required: false }] }], thyOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyOptions", required: false }] }], thyCustomOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyCustomOptions", required: false }] }], thyChangeOn: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyChangeOn", required: false }] }], thyChangeOnSelect: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyChangeOnSelect", required: false }] }], thyShowInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyShowInput", required: false }] }], thyOptionRender: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyOptionRender", required: false }] }], thyLabelRender: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyLabelRender", required: false }] }], thyLoadData: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyLoadData", required: false }] }], thyTriggerAction: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyTriggerAction", required: false }] }], thyExpandTriggerAction: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyExpandTriggerAction", required: false }] }], thyMenuStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyMenuStyle", required: false }] }], thySearchListStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "thySearchListStyle", required: false }] }], thyMenuClassName: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyMenuClassName", required: false }] }], thyColumnClassName: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyColumnClassName", required: false }] }], thyDisabled: [{
1425
+ ], template: "<div cdkOverlayOrigin #origin=\"cdkOverlayOrigin\" #trigger>\n @if (thyShowInput()) {\n <div\n thySelectControl\n [thyShowSearch]=\"thyShowSearch()\"\n [thySize]=\"thySize()\"\n [thyAppearance]=\"thyAppearance()\"\n [thyAllowClear]=\"true\"\n [thySelectedOptions]=\"selected\"\n [thyMaxTagCount]=\"thyMaxTagCount()\"\n (thyOnRemove)=\"removeSelectedItem($event)\"\n (thyOnClear)=\"clearSelection($event)\"\n (thyOnBlur)=\"onBlur($event)\"\n (thyOnSearch)=\"searchFilter($event)\"\n [thyDisabled]=\"disabled\"\n [thyIsMultiple]=\"thyMultiple()\"\n [thyPanelOpened]=\"menuVisible\"\n [thyPlaceholder]=\"thyPlaceholder()\"\n [customDisplayTemplate]=\"customDisplayTemplate\"\n [thyPreset]=\"thyPreset()\">\n <ng-template #customDisplayTemplate let-value>\n @if (!isLabelRenderTemplate()) {\n <span [ngClass]=\"labelCls\">{{ value.labelText }}</span>\n } @else {\n <span [ngClass]=\"labelCls\">\n <ng-template [ngTemplateOutlet]=\"thyLabelRender()\" [ngTemplateOutletContext]=\"value.labelRenderContext\"></ng-template>\n </span>\n }\n </ng-template>\n </div>\n }\n</div>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayHasBackdrop]=\"thyHasBackdrop()\"\n cdkConnectedOverlayBackdropClass=\"thy-cascader-backdrop\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"menuMinWidth\"\n cdkConnectedOverlayTransformOriginOn=\".thy-cascader-menus\"\n (backdropClick)=\"closeMenu()\"\n (detach)=\"closeMenu()\"\n (attach)=\"attached()\"\n (positionChange)=\"positionChange($event)\"\n [cdkConnectedOverlayOpen]=\"menuVisible\">\n <div\n [attr.tabindex]=\"-1\"\n #menu\n [ngClass]=\"menuCls\"\n [ngStyle]=\"thyMenuStyle()\"\n (mouseleave)=\"toggleMouseLeave($event)\"\n [animate.enter]=\"animateEnterClass\"\n [class.thy-cascader-loading]=\"!thyLoadingDone()\">\n @if (thyLoadingDone()) {\n @if (!isShowSearchPanel) {\n @if (columns.length > 0) {\n @for (options of columns; track $index; let i = $index; let isFirst = $first) {\n <ul #cascaderOptionContainers [ngClass]=\"menuColumnCls()\" [ngStyle]=\"{ 'width.px': thyWidth() }\">\n @let allOptions = options | cascaderOptions: (isFirst ? thyCascaderService.customOptions : []);\n\n @if (allOptions.length > 0) {\n <cdk-virtual-scroll-viewport [itemSize]=\"36\" class=\"h-100\">\n <ng-container *cdkVirtualFor=\"let option of allOptions; let index = index; trackBy: trackByFn\">\n @if (\n thyCascaderService.customOptions &&\n thyCascaderService.customOptions.length > 0 &&\n isFirst &&\n index < thyCascaderService.customOptions.length\n ) {\n <li\n #cascaderOptions\n thy-cascader-option\n [option]=\"option\"\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [labelProperty]=\"thyLabelProperty()\"\n [active]=\"isActivatedOption(option, 0)\"\n [halfSelected]=\"isHalfSelectedOption(option, 0)\"\n [selected]=\"isSelectedOption(option, 0)\"\n (toggleSelectChange)=\"clickCustomOption(option, 0, $event)\"\n (click)=\"clickCustomOption(option, 0, $event)\"\n (mouseover)=\"mouseoverOption(option, 0, $event)\"></li>\n @if (index === thyCascaderService.customOptions.length - 1) {\n <thy-divider class=\"my-1 mx-4\"></thy-divider>\n }\n } @else {\n <li\n #cascaderOptions\n thy-cascader-option\n [option]=\"option\"\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [labelProperty]=\"thyLabelProperty()\"\n [active]=\"isActivatedOption(option, i)\"\n [halfSelected]=\"isHalfSelectedOption(option, i)\"\n [selected]=\"isSelectedOption(option, i)\"\n [optionRender]=\"thyOptionRender()\"\n (toggleSelectChange)=\"clickOption(option, i, $event)\"\n (click)=\"clickOption(option, i, $event)\"\n (mouseover)=\"mouseoverOption(option, i, $event)\"></li>\n }\n </ng-container>\n </cdk-virtual-scroll-viewport>\n }\n </ul>\n }\n } @else {\n <div class=\"thy-cascader-empty-container\" [ngStyle]=\"{ 'width.px': $safeNavigationMigration(triggerRect?.width) }\">\n <thy-empty\n class=\"thy-select-empty-content\"\n thySize=\"sm\"\n [thyMessage]=\"thyEmptyStateText()\"\n [thyIconName]=\"emptyIcon()\"></thy-empty>\n </div>\n }\n }\n @if (isShowSearchPanel) {\n @if (searchResultList.length) {\n <ul class=\"thy-cascader-search-list py-3\" [ngStyle]=\"thySearchListStyle()\">\n @for (item of searchResultList; track $index) {\n <li\n thy-cascader-search-option\n [multiple]=\"thyMultiple()\"\n [isOnlySelectLeaf]=\"thyIsOnlySelectLeaf()\"\n [option]=\"item\"\n [active]=\"item.selected\"\n [optionRender]=\"thyOptionRender()\"\n (toggleSelectChange)=\"selectSearchResult($event)\"></li>\n }\n </ul>\n } @else {\n <div class=\"thy-cascader-empty-container\" [ngStyle]=\"{ 'width.px': $safeNavigationMigration(triggerRect?.width) }\">\n <thy-empty\n class=\"thy-select-empty-content\"\n thySize=\"sm\"\n [thyMessage]=\"thyEmptyStateText()\"\n [thyIconName]=\"emptyIcon()\"></thy-empty>\n </div>\n }\n }\n } @else {\n <thy-loading [ngStyle]=\"{ 'width.px': thyWidth() }\" [thyDone]=\"thyLoadingDone()\" thySize=\"sm\"></thy-loading>\n }\n </div>\n</ng-template>\n" }]
1426
+ }], ctorParameters: () => [], propDecorators: { thyValueProperty: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyValueProperty", required: false }] }], thyLabelProperty: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyLabelProperty", required: false }] }], thyPlaceholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyPlaceholder", required: false }] }], thySize: [{ type: i0.Input, args: [{ isSignal: true, alias: "thySize", required: false }] }], thyAppearance: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyAppearance", required: false }] }], thyOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyOptions", required: false }] }], thyCustomOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyCustomOptions", required: false }] }], thyChangeOn: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyChangeOn", required: false }] }], thyChangeOnSelect: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyChangeOnSelect", required: false }] }], thyShowInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyShowInput", required: false }] }], thyOptionRender: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyOptionRender", required: false }] }], thyLabelRender: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyLabelRender", required: false }] }], thyLoadData: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyLoadData", required: false }] }], thyTriggerAction: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyTriggerAction", required: false }] }], thyExpandTriggerAction: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyExpandTriggerAction", required: false }] }], thyMenuStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyMenuStyle", required: false }] }], thySearchListStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "thySearchListStyle", required: false }] }], thyMenuClassName: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyMenuClassName", required: false }] }], thyColumnClassName: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyColumnClassName", required: false }] }], thyDisabled: [{
1419
1427
  type: Input,
1420
1428
  args: [{ transform: coerceBooleanProperty }]
1421
1429
  }], thyEmptyStateText: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyEmptyStateText", required: false }] }], thyMultiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyMultiple", required: false }] }], thyMaxTagCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyMaxTagCount", required: false }] }], thyIsOnlySelectLeaf: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyIsOnlySelectLeaf", required: false }] }], thyWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyWidth", required: false }] }], thyLoadingDone: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyLoadingDone", required: false }] }], thyAutoExpand: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyAutoExpand", required: false }] }], thyShowSearch: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyShowSearch", required: false }] }], thyPreset: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyPreset", required: false }] }], thyHasBackdrop: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyHasBackdrop", required: false }] }], thyChange: [{ type: i0.Output, args: ["thyChange"] }], thySelectionChange: [{ type: i0.Output, args: ["thySelectionChange"] }], thySelect: [{ type: i0.Output, args: ["thySelect"] }], thyDeselect: [{ type: i0.Output, args: ["thyDeselect"] }], thyClear: [{ type: i0.Output, args: ["thyClear"] }], thyExpandStatusChange: [{ type: i0.Output, args: ["thyExpandStatusChange"] }], thyOnSearch: [{ type: i0.Output, args: ["thyOnSearch"] }], cascaderOptions: [{ type: i0.ViewChildren, args: ['cascaderOptions', { ...{ read: ElementRef }, isSignal: true }] }], cascaderItems: [{ type: i0.ViewChildren, args: [i0.forwardRef(() => ThyCascaderOptionComponent), { isSignal: true }] }], cascaderOptionContainers: [{ type: i0.ViewChildren, args: ['cascaderOptionContainers', { ...{ read: ElementRef }, isSignal: true }] }], cdkConnectedOverlay: [{ type: i0.ViewChild, args: [i0.forwardRef(() => CdkConnectedOverlay), { isSignal: true }] }], trigger: [{ type: i0.ViewChild, args: ['trigger', { isSignal: true }] }], input: [{ type: i0.ViewChild, args: ['input', { isSignal: true }] }], menu: [{ type: i0.ViewChild, args: ['menu', { isSignal: true }] }], virtualScrollViewports: [{ type: i0.ViewChildren, args: [i0.forwardRef(() => CdkVirtualScrollViewport), { isSignal: true }] }], toggleClick: [{