ngx-tethys 20.0.1-0 → 20.0.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 (241) hide show
  1. package/CHANGELOG.md +19 -2
  2. package/action/index.d.ts +3 -3
  3. package/affix/index.d.ts +1 -1
  4. package/alert/index.d.ts +3 -3
  5. package/anchor/index.d.ts +6 -12
  6. package/arrow-switcher/index.d.ts +6 -6
  7. package/autocomplete/index.d.ts +23 -28
  8. package/avatar/index.d.ts +9 -9
  9. package/back-top/index.d.ts +3 -3
  10. package/badge/index.d.ts +6 -6
  11. package/breadcrumb/index.d.ts +7 -7
  12. package/button/index.d.ts +19 -19
  13. package/calendar/index.d.ts +8 -8
  14. package/card/index.d.ts +6 -6
  15. package/carousel/index.d.ts +4 -4
  16. package/cascader/index.d.ts +24 -24
  17. package/collapse/index.d.ts +4 -4
  18. package/color-picker/index.d.ts +16 -16
  19. package/comment/index.d.ts +3 -3
  20. package/copy/index.d.ts +2 -2
  21. package/core/index.d.ts +22 -22
  22. package/date-picker/index.d.ts +111 -111
  23. package/date-range/index.d.ts +5 -5
  24. package/dialog/index.d.ts +18 -18
  25. package/divider/index.d.ts +3 -3
  26. package/drag-drop/index.d.ts +7 -7
  27. package/dropdown/index.d.ts +10 -10
  28. package/empty/index.d.ts +12 -12
  29. package/fesm2022/ngx-tethys-action.mjs +14 -12
  30. package/fesm2022/ngx-tethys-action.mjs.map +1 -1
  31. package/fesm2022/ngx-tethys-affix.mjs +7 -7
  32. package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
  33. package/fesm2022/ngx-tethys-alert.mjs +10 -10
  34. package/fesm2022/ngx-tethys-anchor.mjs +28 -65
  35. package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
  36. package/fesm2022/ngx-tethys-arrow-switcher.mjs +7 -7
  37. package/fesm2022/ngx-tethys-arrow-switcher.mjs.map +1 -1
  38. package/fesm2022/ngx-tethys-autocomplete.mjs +48 -113
  39. package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
  40. package/fesm2022/ngx-tethys-avatar.mjs +23 -22
  41. package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
  42. package/fesm2022/ngx-tethys-back-top.mjs +7 -7
  43. package/fesm2022/ngx-tethys-badge.mjs +7 -7
  44. package/fesm2022/ngx-tethys-badge.mjs.map +1 -1
  45. package/fesm2022/ngx-tethys-breadcrumb.mjs +10 -10
  46. package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
  47. package/fesm2022/ngx-tethys-button.mjs +16 -16
  48. package/fesm2022/ngx-tethys-button.mjs.map +1 -1
  49. package/fesm2022/ngx-tethys-calendar.mjs +16 -16
  50. package/fesm2022/ngx-tethys-calendar.mjs.map +1 -1
  51. package/fesm2022/ngx-tethys-card.mjs +13 -13
  52. package/fesm2022/ngx-tethys-card.mjs.map +1 -1
  53. package/fesm2022/ngx-tethys-carousel.mjs +15 -15
  54. package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
  55. package/fesm2022/ngx-tethys-cascader.mjs +41 -34
  56. package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
  57. package/fesm2022/ngx-tethys-checkbox.mjs +7 -7
  58. package/fesm2022/ngx-tethys-collapse.mjs +10 -10
  59. package/fesm2022/ngx-tethys-color-picker.mjs +65 -57
  60. package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
  61. package/fesm2022/ngx-tethys-comment.mjs +13 -13
  62. package/fesm2022/ngx-tethys-copy.mjs +10 -10
  63. package/fesm2022/ngx-tethys-copy.mjs.map +1 -1
  64. package/fesm2022/ngx-tethys-core.mjs +30 -25
  65. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  66. package/fesm2022/ngx-tethys-date-picker.mjs +184 -174
  67. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  68. package/fesm2022/ngx-tethys-date-range.mjs +16 -16
  69. package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
  70. package/fesm2022/ngx-tethys-dialog.mjs +24 -24
  71. package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
  72. package/fesm2022/ngx-tethys-divider.mjs +7 -7
  73. package/fesm2022/ngx-tethys-divider.mjs.map +1 -1
  74. package/fesm2022/ngx-tethys-dot.mjs +7 -7
  75. package/fesm2022/ngx-tethys-drag-drop.mjs +24 -24
  76. package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
  77. package/fesm2022/ngx-tethys-dropdown.mjs +48 -47
  78. package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
  79. package/fesm2022/ngx-tethys-empty.mjs +13 -13
  80. package/fesm2022/ngx-tethys-empty.mjs.map +1 -1
  81. package/fesm2022/ngx-tethys-flexible-text.mjs +7 -7
  82. package/fesm2022/ngx-tethys-flexible-text.mjs.map +1 -1
  83. package/fesm2022/ngx-tethys-form.mjs +64 -61
  84. package/fesm2022/ngx-tethys-form.mjs.map +1 -1
  85. package/fesm2022/ngx-tethys-fullscreen.mjs +18 -15
  86. package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
  87. package/fesm2022/ngx-tethys-grid.mjs +34 -33
  88. package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
  89. package/fesm2022/ngx-tethys-guider.mjs +25 -24
  90. package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
  91. package/fesm2022/ngx-tethys-i18n.mjs +3 -3
  92. package/fesm2022/ngx-tethys-i18n.mjs.map +1 -1
  93. package/fesm2022/ngx-tethys-icon.mjs +15 -13
  94. package/fesm2022/ngx-tethys-icon.mjs.map +1 -1
  95. package/fesm2022/ngx-tethys-image.mjs +31 -29
  96. package/fesm2022/ngx-tethys-image.mjs.map +1 -1
  97. package/fesm2022/ngx-tethys-input-number.mjs +17 -10
  98. package/fesm2022/ngx-tethys-input-number.mjs.map +1 -1
  99. package/fesm2022/ngx-tethys-input.mjs +28 -27
  100. package/fesm2022/ngx-tethys-input.mjs.map +1 -1
  101. package/fesm2022/ngx-tethys-layout.mjs +63 -63
  102. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  103. package/fesm2022/ngx-tethys-list.mjs +21 -18
  104. package/fesm2022/ngx-tethys-list.mjs.map +1 -1
  105. package/fesm2022/ngx-tethys-loading.mjs +7 -7
  106. package/fesm2022/ngx-tethys-mention.mjs +35 -31
  107. package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
  108. package/fesm2022/ngx-tethys-menu.mjs +26 -26
  109. package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
  110. package/fesm2022/ngx-tethys-message.mjs +24 -24
  111. package/fesm2022/ngx-tethys-message.mjs.map +1 -1
  112. package/fesm2022/ngx-tethys-nav.mjs +27 -27
  113. package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
  114. package/fesm2022/ngx-tethys-notify.mjs +20 -20
  115. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  116. package/fesm2022/ngx-tethys-pagination.mjs +18 -18
  117. package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
  118. package/fesm2022/ngx-tethys-popover.mjs +22 -21
  119. package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
  120. package/fesm2022/ngx-tethys-progress.mjs +17 -17
  121. package/fesm2022/ngx-tethys-progress.mjs.map +1 -1
  122. package/fesm2022/ngx-tethys-property-operation.mjs +11 -11
  123. package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
  124. package/fesm2022/ngx-tethys-property.mjs +12 -11
  125. package/fesm2022/ngx-tethys-property.mjs.map +1 -1
  126. package/fesm2022/ngx-tethys-radio.mjs +17 -17
  127. package/fesm2022/ngx-tethys-radio.mjs.map +1 -1
  128. package/fesm2022/ngx-tethys-rate.mjs +12 -12
  129. package/fesm2022/ngx-tethys-rate.mjs.map +1 -1
  130. package/fesm2022/ngx-tethys-resizable.mjs +21 -18
  131. package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
  132. package/fesm2022/ngx-tethys-result.mjs +11 -11
  133. package/fesm2022/ngx-tethys-result.mjs.map +1 -1
  134. package/fesm2022/ngx-tethys-segment.mjs +19 -16
  135. package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
  136. package/fesm2022/ngx-tethys-select.mjs +517 -433
  137. package/fesm2022/ngx-tethys-select.mjs.map +1 -1
  138. package/fesm2022/ngx-tethys-shared.mjs +284 -258
  139. package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
  140. package/fesm2022/ngx-tethys-skeleton.mjs +32 -32
  141. package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
  142. package/fesm2022/ngx-tethys-slide.mjs +37 -36
  143. package/fesm2022/ngx-tethys-slide.mjs.map +1 -1
  144. package/fesm2022/ngx-tethys-slider.mjs +11 -11
  145. package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
  146. package/fesm2022/ngx-tethys-space.mjs +10 -10
  147. package/fesm2022/ngx-tethys-statistic.mjs +7 -7
  148. package/fesm2022/ngx-tethys-statistic.mjs.map +1 -1
  149. package/fesm2022/ngx-tethys-stepper.mjs +22 -22
  150. package/fesm2022/ngx-tethys-stepper.mjs.map +1 -1
  151. package/fesm2022/ngx-tethys-strength.mjs +7 -7
  152. package/fesm2022/ngx-tethys-strength.mjs.map +1 -1
  153. package/fesm2022/ngx-tethys-switch.mjs +7 -7
  154. package/fesm2022/ngx-tethys-switch.mjs.map +1 -1
  155. package/fesm2022/ngx-tethys-table.mjs +28 -28
  156. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  157. package/fesm2022/ngx-tethys-tabs.mjs +13 -13
  158. package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
  159. package/fesm2022/ngx-tethys-tag.mjs +11 -11
  160. package/fesm2022/ngx-tethys-tag.mjs.map +1 -1
  161. package/fesm2022/ngx-tethys-testing.mjs +1 -1
  162. package/fesm2022/ngx-tethys-testing.mjs.map +1 -1
  163. package/fesm2022/ngx-tethys-time-picker.mjs +22 -22
  164. package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
  165. package/fesm2022/ngx-tethys-timeline.mjs +14 -14
  166. package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
  167. package/fesm2022/ngx-tethys-tooltip.mjs +19 -16
  168. package/fesm2022/ngx-tethys-tooltip.mjs.map +1 -1
  169. package/fesm2022/ngx-tethys-transfer.mjs +15 -15
  170. package/fesm2022/ngx-tethys-transfer.mjs.map +1 -1
  171. package/fesm2022/ngx-tethys-tree-select.mjs +17 -17
  172. package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
  173. package/fesm2022/ngx-tethys-tree.mjs +50 -43
  174. package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
  175. package/fesm2022/ngx-tethys-typography.mjs +16 -16
  176. package/fesm2022/ngx-tethys-typography.mjs.map +1 -1
  177. package/fesm2022/ngx-tethys-upload.mjs +26 -25
  178. package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
  179. package/fesm2022/ngx-tethys-util.mjs +11 -5
  180. package/fesm2022/ngx-tethys-util.mjs.map +1 -1
  181. package/fesm2022/ngx-tethys-vote.mjs +7 -7
  182. package/fesm2022/ngx-tethys-watermark.mjs +18 -15
  183. package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
  184. package/fesm2022/ngx-tethys.mjs +1 -1
  185. package/fesm2022/ngx-tethys.mjs.map +1 -1
  186. package/flexible-text/index.d.ts +5 -5
  187. package/form/index.d.ts +26 -22
  188. package/fullscreen/index.d.ts +4 -4
  189. package/grid/index.d.ts +12 -12
  190. package/guider/index.d.ts +10 -10
  191. package/i18n/index.d.ts +1 -1
  192. package/icon/index.d.ts +3 -3
  193. package/image/index.d.ts +12 -12
  194. package/input/index.d.ts +22 -22
  195. package/input-number/index.d.ts +4 -4
  196. package/layout/index.d.ts +16 -16
  197. package/list/index.d.ts +16 -15
  198. package/mention/index.d.ts +4 -4
  199. package/menu/index.d.ts +7 -7
  200. package/message/index.d.ts +5 -5
  201. package/nav/index.d.ts +12 -12
  202. package/notify/index.d.ts +1 -1
  203. package/package.json +1 -1
  204. package/pagination/index.d.ts +21 -17
  205. package/popover/index.d.ts +8 -8
  206. package/progress/index.d.ts +18 -18
  207. package/property/index.d.ts +6 -6
  208. package/property-operation/index.d.ts +3 -3
  209. package/radio/index.d.ts +6 -6
  210. package/rate/index.d.ts +5 -5
  211. package/resizable/index.d.ts +2 -2
  212. package/result/index.d.ts +8 -8
  213. package/schematics/testing/test-workspace.js +1 -0
  214. package/schematics/version.d.ts +1 -1
  215. package/schematics/version.js +1 -1
  216. package/segment/index.d.ts +9 -9
  217. package/select/index.d.ts +91 -76
  218. package/shared/index.d.ts +152 -81
  219. package/shared/option/styles/option.mixin.scss +0 -10
  220. package/shared/option/styles/select-dropdown.scss +10 -9
  221. package/skeleton/index.d.ts +52 -52
  222. package/slide/index.d.ts +5 -5
  223. package/slider/index.d.ts +6 -6
  224. package/space/index.d.ts +1 -1
  225. package/statistic/index.d.ts +18 -18
  226. package/stepper/index.d.ts +8 -8
  227. package/switch/index.d.ts +2 -2
  228. package/table/index.d.ts +24 -24
  229. package/tabs/index.d.ts +6 -6
  230. package/testing/index.d.ts +1 -1
  231. package/time-picker/index.d.ts +21 -21
  232. package/timeline/index.d.ts +8 -8
  233. package/tooltip/index.d.ts +12 -12
  234. package/transfer/index.d.ts +16 -16
  235. package/tree/index.d.ts +28 -28
  236. package/tree-select/index.d.ts +13 -13
  237. package/typography/index.d.ts +3 -3
  238. package/upload/index.d.ts +4 -4
  239. package/util/index.d.ts +17 -7
  240. package/vote/index.d.ts +2 -2
  241. package/watermark/index.d.ts +2 -2
package/shared/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { Type, TemplateRef, ViewContainerRef, OnInit, OnDestroy, ElementRef, AfterContentInit, QueryList, ChangeDetectorRef, AfterViewInit, Signal, InputSignal, InjectionToken, WritableSignal } from '@angular/core';
2
+ import { Type, TemplateRef, ViewContainerRef, OnInit, OnDestroy, ElementRef, AfterContentInit, QueryList, ChangeDetectorRef, AfterViewInit, Signal, InputSignal, InjectionToken } from '@angular/core';
3
3
  import { CdkDrag } from '@angular/cdk/drag-drop';
4
4
  import * as i2 from '@angular/forms';
5
5
  import { ControlValueAccessor } from '@angular/forms';
@@ -13,7 +13,7 @@ import { ThyTagSize } from 'ngx-tethys/tag';
13
13
  import { ThySharedLocale } from 'ngx-tethys/i18n';
14
14
  import * as ngx_tethys_shared from 'ngx-tethys/shared';
15
15
  import { Highlightable } from '@angular/cdk/a11y';
16
- import { Subject, Observable } from 'rxjs';
16
+ import { SafeAny } from 'ngx-tethys/types';
17
17
 
18
18
  /**
19
19
  * 视图 Outlet 组件,取代 NgComponentOutlet 和 NgTemplateOutlet
@@ -28,12 +28,12 @@ declare class ThyViewOutletDirective {
28
28
  /**
29
29
  * 组件或者模板 TemplateRef
30
30
  */
31
- readonly thyViewOutlet: _angular_core.InputSignal<Type<any> | TemplateRef<any>>;
31
+ readonly thyViewOutlet: _angular_core.InputSignal<Type<any> | TemplateRef<any> | null>;
32
32
  /**
33
33
  * 组件和模板上下文传递数据
34
34
  */
35
35
  readonly thyViewOutletContext: _angular_core.InputSignal<any>;
36
- private keyValueDiffer;
36
+ private keyValueDiffer?;
37
37
  private readonly isViewOutletChanged;
38
38
  constructor();
39
39
  private updateContext;
@@ -48,7 +48,7 @@ declare class ThyTranscludeDirective {
48
48
  viewRef: ViewContainerRef;
49
49
  protected _viewRef: ViewContainerRef;
50
50
  protected _ngTransclude: TemplateRef<any>;
51
- readonly thyTransclude: _angular_core.InputSignal<TemplateRef<any>>;
51
+ readonly thyTransclude: _angular_core.InputSignal<TemplateRef<any> | undefined>;
52
52
  constructor();
53
53
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThyTranscludeDirective, never>;
54
54
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ThyTranscludeDirective, "[thyTransclude]", never, { "thyTransclude": { "alias": "thyTransclude"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
@@ -202,7 +202,7 @@ declare class ThyScrollDirective implements OnInit, OnDestroy {
202
202
  * @private
203
203
  */
204
204
  declare class ThyDragDropDirective implements AfterContentInit, OnDestroy {
205
- draggables: QueryList<CdkDrag>;
205
+ draggables?: QueryList<CdkDrag>;
206
206
  private ngUnsubscribe$;
207
207
  constructor();
208
208
  ngAfterContentInit(): void;
@@ -241,8 +241,8 @@ type ThyListLayout = 'list' | 'grid';
241
241
  */
242
242
  declare class ThyFormCheckBaseComponent extends TabIndexDisabledControlValueAccessorMixin implements ControlValueAccessor {
243
243
  protected thyTranslate: ThyTranslate;
244
- protected changeDetectorRef?: ChangeDetectorRef;
245
- _innerValue: boolean;
244
+ protected changeDetectorRef?: ChangeDetectorRef | undefined;
245
+ _innerValue: boolean | null;
246
246
  _disabled: boolean;
247
247
  private onTouchedCallback;
248
248
  private onChangeCallback;
@@ -256,11 +256,11 @@ declare class ThyFormCheckBaseComponent extends TabIndexDisabledControlValueAcce
256
256
  /**
257
257
  * Label 展示文本
258
258
  */
259
- readonly thyLabelText: _angular_core.InputSignal<string>;
259
+ readonly thyLabelText: _angular_core.InputSignal<string | undefined>;
260
260
  /**
261
261
  * Label 文本多语言 key
262
262
  */
263
- readonly thyLabelTextTranslateKey: _angular_core.InputSignal<string>;
263
+ readonly thyLabelTextTranslateKey: _angular_core.InputSignal<string | undefined>;
264
264
  _labelText: _angular_core.Signal<any>;
265
265
  _isNoText: _angular_core.Signal<boolean>;
266
266
  disabled: boolean;
@@ -273,7 +273,7 @@ declare class ThyFormCheckBaseComponent extends TabIndexDisabledControlValueAcce
273
273
  writeValue(obj: boolean): void;
274
274
  registerOnChange(fn: any): void;
275
275
  registerOnTouched(fn: any): void;
276
- setDisabledState?(isDisabled: boolean): void;
276
+ setDisabledState(isDisabled: boolean): void;
277
277
  updateValue(value: boolean): void;
278
278
  constructor();
279
279
  change(): void;
@@ -308,13 +308,13 @@ declare class ThySelectControl implements OnInit, AfterViewInit {
308
308
  readonly thyPanelOpened: _angular_core.InputSignalWithTransform<boolean, unknown>;
309
309
  readonly thyIsMultiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
310
310
  readonly thyShowSearch: _angular_core.InputSignalWithTransform<boolean, unknown>;
311
- readonly thySelectedOptions: _angular_core.InputSignal<SelectOptionBase | SelectOptionBase[]>;
311
+ readonly thySelectedOptions: _angular_core.InputSignal<SelectOptionBase | SelectOptionBase[] | undefined>;
312
312
  protected readonly previousSelectedOptions: _angular_core.WritableSignal<unknown>;
313
313
  readonly thyDisabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
314
- readonly customDisplayTemplate: _angular_core.InputSignal<TemplateRef<any>>;
314
+ readonly customDisplayTemplate: _angular_core.InputSignal<TemplateRef<any> | undefined>;
315
315
  readonly thyAllowClear: _angular_core.InputSignalWithTransform<boolean, unknown>;
316
316
  readonly thyPlaceholder: _angular_core.InputSignal<string>;
317
- readonly thySize: _angular_core.InputSignal<SelectControlSize>;
317
+ readonly thySize: _angular_core.InputSignal<SelectControlSize | undefined>;
318
318
  readonly tagSize: Signal<ThyTagSize>;
319
319
  readonly thyMaxTagCount: _angular_core.InputSignalWithTransform<number | "auto", number | "auto">;
320
320
  readonly thyBorderless: _angular_core.InputSignalWithTransform<boolean, unknown>;
@@ -326,14 +326,14 @@ declare class ThySelectControl implements OnInit, AfterViewInit {
326
326
  }>;
327
327
  readonly thyOnClear: _angular_core.OutputEmitterRef<Event>;
328
328
  readonly thyOnBlur: _angular_core.OutputEmitterRef<Event>;
329
- readonly inputElement: Signal<ElementRef<any>>;
329
+ readonly inputElement: Signal<ElementRef<any> | undefined>;
330
330
  locale: Signal<ThySharedLocale>;
331
331
  isSelectedValue: Signal<boolean>;
332
- readonly tagsContainer: Signal<ElementRef<any>>;
332
+ readonly tagsContainer: Signal<ElementRef<any> | undefined>;
333
333
  visibleTagCount: _angular_core.WritableSignal<number>;
334
334
  showClearIcon: Signal<boolean>;
335
- selectedTags: Signal<SelectOptionBase[]>;
336
- collapsedSelectedTags: Signal<SelectOptionBase[]>;
335
+ selectedTags: Signal<(SelectOptionBase | undefined)[]>;
336
+ collapsedSelectedTags: Signal<(SelectOptionBase | undefined)[]>;
337
337
  selectedValueStyle: Signal<{
338
338
  display: string;
339
339
  }>;
@@ -364,9 +364,6 @@ declare class ThySelectCommonModule {
364
364
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<ThySelectCommonModule>;
365
365
  }
366
366
 
367
- interface IThyOptionParentComponent {
368
- isMultiple: boolean;
369
- }
370
367
  interface IThyOptionGroupComponent {
371
368
  hidden: boolean;
372
369
  }
@@ -383,10 +380,6 @@ interface IThyListOptionParentComponent {
383
380
  scrollIntoView(option: IThyOptionComponent): void;
384
381
  isSelected(option: IThyOptionComponent): boolean;
385
382
  }
386
- /**
387
- * Injection token used to provide the parent component to options.
388
- */
389
- declare const THY_OPTION_PARENT_COMPONENT: InjectionToken<IThyOptionParentComponent>;
390
383
  /**
391
384
  * Injection token used to provide the parent component to options.
392
385
  */
@@ -401,9 +394,9 @@ declare class ThyListOption implements IThyOptionComponent, Highlightable {
401
394
  parentSelectionList: ngx_tethys_shared.IThyListOptionParentComponent;
402
395
  role: string;
403
396
  tabIndex: number;
404
- readonly isMultiple: _angular_core.Signal<unknown>;
405
- readonly isListOption: _angular_core.Signal<boolean>;
406
- readonly isGridOption: _angular_core.Signal<boolean>;
397
+ readonly isMultiple: _angular_core.Signal<{}>;
398
+ readonly isListOption: _angular_core.Signal<boolean | undefined>;
399
+ readonly isGridOption: _angular_core.Signal<boolean | undefined>;
407
400
  readonly id: _angular_core.InputSignal<string>;
408
401
  readonly thyValue: _angular_core.InputSignal<any>;
409
402
  readonly thyDisabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
@@ -436,81 +429,159 @@ declare class ThyOptionSelectionChangeEvent {
436
429
  isUserInput: boolean;
437
430
  constructor(option: ThyOption, isUserInput?: boolean);
438
431
  }
439
- declare class ThyOptionVisibleChangeEvent {
440
- option: ThyOption;
432
+ /**
433
+ * 选项组件
434
+ * @name thy-option
435
+ */
436
+ declare class ThyOption {
437
+ /**
438
+ * 选项的值,具有唯一性
439
+ */
440
+ readonly thyValue: _angular_core.InputSignal<any>;
441
+ /**
442
+ * 选项的原始值
443
+ */
444
+ readonly thyRawValue: _angular_core.InputSignal<any>;
445
+ /**
446
+ * 选项的文本
447
+ */
448
+ readonly thyLabelText: _angular_core.InputSignal<string | undefined>;
449
+ /**
450
+ * 是否显示自定义模板
451
+ */
452
+ readonly thyShowOptionCustom: _angular_core.InputSignal<boolean | undefined>;
453
+ /**
454
+ * 搜索关键字
455
+ */
456
+ readonly thySearchKey: _angular_core.InputSignal<string | undefined>;
457
+ /**
458
+ * 是否禁用
459
+ */
460
+ readonly thyDisabled: _angular_core.InputSignal<boolean | undefined>;
461
+ /**
462
+ * 是否选中,会跟随 ThyOptionSelectionChangeEvent 抛出去
463
+ */
464
+ readonly selected: _angular_core.WritableSignal<boolean>;
465
+ /**
466
+ * 选项被选中时的回调
467
+ */
468
+ readonly selectionChange: _angular_core.OutputEmitterRef<ThyOptionSelectionChangeEvent>;
469
+ /**
470
+ * 模板
471
+ */
472
+ readonly template: _angular_core.Signal<TemplateRef<any> | undefined>;
473
+ private readonly optionGroupComponent;
474
+ get groupLabel(): string;
475
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThyOption, never>;
476
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ThyOption, "thy-option", never, { "thyValue": { "alias": "thyValue"; "required": false; "isSignal": true; }; "thyRawValue": { "alias": "thyRawValue"; "required": false; "isSignal": true; }; "thyLabelText": { "alias": "thyLabelText"; "required": false; "isSignal": true; }; "thyShowOptionCustom": { "alias": "thyShowOptionCustom"; "required": false; "isSignal": true; }; "thySearchKey": { "alias": "thySearchKey"; "required": false; "isSignal": true; }; "thyDisabled": { "alias": "thyDisabled"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; }, never, ["*"], true, never>;
441
477
  }
478
+
442
479
  /**
480
+ * 选项渲染组件
443
481
  * @private
444
- * @order 20
482
+ * @name thy-option-render
445
483
  */
446
- declare class ThyOption extends SelectOptionBase implements OnDestroy, Highlightable {
484
+ declare class ThyOptionRender implements Highlightable {
447
485
  element: ElementRef<HTMLElement>;
448
- parent: ngx_tethys_shared.IThyOptionParentComponent;
449
- private cdr;
450
- thyValue: any;
451
- thyRawValue: any;
452
- thyLabelText: string;
453
- readonly thyShowOptionCustom: _angular_core.InputSignal<boolean>;
454
- readonly thySearchKey: _angular_core.InputSignal<string>;
455
- readonly template: _angular_core.Signal<TemplateRef<any>>;
486
+ private hostRenderer;
487
+ /**
488
+ * 选项的值,具有唯一性
489
+ */
490
+ readonly thyValue: _angular_core.InputSignal<any>;
491
+ /**
492
+ * 选项的原始值
493
+ */
494
+ readonly thyRawValue: _angular_core.InputSignal<any>;
495
+ /**
496
+ * 选项的文本
497
+ */
498
+ readonly thyLabelText: _angular_core.InputSignal<string | undefined>;
499
+ /**
500
+ * 搜索关键字
501
+ */
502
+ readonly thySearchKey: _angular_core.InputSignal<string | undefined>;
503
+ /**
504
+ * 是否禁用
505
+ */
456
506
  readonly thyDisabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
457
- readonly hidden: WritableSignal<boolean>;
458
- get disabled(): boolean;
459
- get tabIndex(): string;
460
- readonly selected: WritableSignal<boolean>;
461
- readonly selectionChange: _angular_core.OutputEmitterRef<ThyOptionSelectionChangeEvent>;
462
- readonly visibleChange: _angular_core.OutputEmitterRef<ThyOptionVisibleChangeEvent>;
507
+ /**
508
+ * 是否显示自定义模板
509
+ */
510
+ readonly thyShowOptionCustom: _angular_core.InputSignalWithTransform<boolean, unknown>;
511
+ /**
512
+ * 模板
513
+ */
514
+ readonly thyTemplate: _angular_core.InputSignal<TemplateRef<any> | undefined>;
515
+ /**
516
+ * 模板上下文
517
+ */
518
+ readonly thyTemplateContext: _angular_core.InputSignal<any>;
519
+ /**
520
+ * 被选中时,是否显示勾选图标
521
+ */
522
+ readonly thyShowCheckedIcon: _angular_core.InputSignalWithTransform<boolean, unknown>;
523
+ /**
524
+ * Select 组件选中的值
525
+ */
526
+ readonly thySelectedValuesMap: _angular_core.InputSignal<Map<any, boolean>>;
527
+ /**
528
+ * 当前高亮选项的值
529
+ */
530
+ readonly thyActivatedValue: _angular_core.InputSignal<any>;
531
+ /**
532
+ * 点击选项时的回调
533
+ */
534
+ readonly optionClick: _angular_core.OutputEmitterRef<{
535
+ value: SafeAny;
536
+ isUserInput?: boolean;
537
+ }>;
538
+ /**
539
+ * 鼠标悬浮时的回调
540
+ */
541
+ readonly optionHover: _angular_core.OutputEmitterRef<any>;
542
+ /**
543
+ * 是否被选中
544
+ */
545
+ readonly selected: _angular_core.Signal<boolean>;
546
+ /**
547
+ * 是否高亮
548
+ */
549
+ readonly activated: _angular_core.Signal<boolean>;
550
+ readonly tabIndex: _angular_core.Signal<"0" | "-1">;
463
551
  constructor();
464
- getHostElement(): HTMLElement;
465
- onClick(event: Event): void;
552
+ mouseEnter(): void;
466
553
  handleKeydown(event: KeyboardEvent): void;
467
554
  selectViaInteraction(): void;
468
- select(event?: Event): void;
555
+ select(): void;
469
556
  deselect(): void;
470
- hideOption(): void;
471
- showOption(): void;
472
- matchSearchText(searchText: string): boolean;
473
557
  setActiveStyles(): void;
474
558
  setInactiveStyles(): void;
475
- getLabel(): string;
476
- private emitSelectionChangeEvent;
477
- ngOnDestroy(): void;
478
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThyOption, never>;
479
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ThyOption, "thy-option", never, { "thyValue": { "alias": "thyValue"; "required": false; }; "thyRawValue": { "alias": "thyRawValue"; "required": false; }; "thyLabelText": { "alias": "thyLabelText"; "required": false; }; "thyShowOptionCustom": { "alias": "thyShowOptionCustom"; "required": false; "isSignal": true; }; "thySearchKey": { "alias": "thySearchKey"; "required": false; "isSignal": true; }; "thyDisabled": { "alias": "thyDisabled"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; "visibleChange": "visibleChange"; }, never, ["*"], true, never>;
559
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThyOptionRender, never>;
560
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ThyOptionRender, "thy-option-render", never, { "thyValue": { "alias": "thyValue"; "required": false; "isSignal": true; }; "thyRawValue": { "alias": "thyRawValue"; "required": false; "isSignal": true; }; "thyLabelText": { "alias": "thyLabelText"; "required": false; "isSignal": true; }; "thySearchKey": { "alias": "thySearchKey"; "required": false; "isSignal": true; }; "thyDisabled": { "alias": "thyDisabled"; "required": false; "isSignal": true; }; "thyShowOptionCustom": { "alias": "thyShowOptionCustom"; "required": false; "isSignal": true; }; "thyTemplate": { "alias": "thyTemplate"; "required": false; "isSignal": true; }; "thyTemplateContext": { "alias": "thyTemplateContext"; "required": false; "isSignal": true; }; "thyShowCheckedIcon": { "alias": "thyShowCheckedIcon"; "required": false; "isSignal": true; }; "thySelectedValuesMap": { "alias": "thySelectedValuesMap"; "required": false; "isSignal": true; }; "thyActivatedValue": { "alias": "thyActivatedValue"; "required": false; "isSignal": true; }; }, { "optionClick": "optionClick"; "optionHover": "optionHover"; }, never, never, true, never>;
480
561
  }
481
562
 
482
- /**
483
- * @private
484
- */
485
- declare class ThySelectOptionGroup implements OnDestroy, AfterContentInit {
486
- private _ngZone;
487
- private cdr;
563
+ declare class ThySelectOptionGroup {
564
+ readonly thyGroupLabel: _angular_core.InputSignal<string | undefined>;
488
565
  readonly thyDisabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
489
- readonly hidden: WritableSignal<boolean>;
490
- readonly thyGroupLabel: _angular_core.InputSignal<string>;
491
- options: QueryList<ThyOption>;
492
- _destroy$: Subject<void>;
493
- optionVisibleChanges: Observable<ThyOptionVisibleChangeEvent>;
494
- ngAfterContentInit(): void;
495
- _resetOptions(): void;
496
- ngOnDestroy(): void;
497
566
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThySelectOptionGroup, never>;
498
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ThySelectOptionGroup, "thy-option-group", never, { "thyDisabled": { "alias": "thyDisabled"; "required": false; "isSignal": true; }; "thyGroupLabel": { "alias": "thyGroupLabel"; "required": false; "isSignal": true; }; }, {}, ["options"], ["*"], true, never>;
567
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ThySelectOptionGroup, "thy-option-group", never, { "thyGroupLabel": { "alias": "thyGroupLabel"; "required": false; "isSignal": true; }; "thyDisabled": { "alias": "thyDisabled"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
499
568
  }
500
569
 
501
- declare class ThyOptionsContainer implements OnInit {
502
- readonly optionsTemplate: _angular_core.Signal<TemplateRef<any>>;
503
- constructor();
504
- ngOnInit(): void;
505
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThyOptionsContainer, never>;
506
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ThyOptionsContainer, "thy-options-container", never, {}, {}, never, ["*"], true, never>;
570
+ /**
571
+ * @private
572
+ */
573
+ declare class ThyOptionGroupRender {
574
+ readonly thyGroupLabel: _angular_core.InputSignal<string | undefined>;
575
+ readonly thyDisabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
576
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThyOptionGroupRender, never>;
577
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ThyOptionGroupRender, "thy-option-group-render", never, { "thyGroupLabel": { "alias": "thyGroupLabel"; "required": false; "isSignal": true; }; "thyDisabled": { "alias": "thyDisabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
507
578
  }
508
579
 
509
580
  declare class ThyOptionModule {
510
581
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ThyOptionModule, never>;
511
- static ɵmod: _angular_core.ɵɵNgModuleDeclaration<ThyOptionModule, never, [typeof i1$1.CommonModule, typeof i3.ThyIconModule, typeof ThyListOption, typeof ThyOptionGroup, typeof ThyOption, typeof ThySelectOptionGroup, typeof ThyOptionsContainer], [typeof ThyListOption, typeof ThyOptionGroup, typeof ThyOption, typeof ThySelectOptionGroup, typeof ThyOptionsContainer]>;
582
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<ThyOptionModule, never, [typeof i1$1.CommonModule, typeof i3.ThyIconModule, typeof ThyListOption, typeof ThyOptionGroup, typeof ThyOption, typeof ThyOptionRender, typeof ThySelectOptionGroup, typeof ThyOptionGroupRender], [typeof ThyListOption, typeof ThyOptionGroup, typeof ThyOption, typeof ThyOptionRender, typeof ThySelectOptionGroup, typeof ThyOptionGroupRender]>;
512
583
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<ThyOptionModule>;
513
584
  }
514
585
 
515
- export { SelectOptionBase, THY_LIST_OPTION_PARENT_COMPONENT, THY_OPTION_PARENT_COMPONENT, ThyAutofocusDirective, ThyContextMenuDirective, ThyCtrlEnterDirective, ThyDragDropDirective, ThyEnterDirective, ThyFormCheckBaseComponent, ThyListOption, ThyOption, ThyOptionGroup, ThyOptionModule, ThyOptionSelectionChangeEvent, ThyOptionVisibleChangeEvent, ThyOptionsContainer, ThyScrollDirective, ThySelectCommonModule, ThySelectControl, ThySelectOptionGroup, ThySharedModule, ThyShowDirective, ThyStopPropagationDirective, ThyStringOrTemplateOutletDirective, ThyTranscludeDirective, ThyViewOutletDirective };
516
- export type { IThyListOptionParentComponent, IThyOptionComponent, IThyOptionGroupComponent, IThyOptionParentComponent, SelectControlSize, ThyListLayout };
586
+ export { SelectOptionBase, THY_LIST_OPTION_PARENT_COMPONENT, ThyAutofocusDirective, ThyContextMenuDirective, ThyCtrlEnterDirective, ThyDragDropDirective, ThyEnterDirective, ThyFormCheckBaseComponent, ThyListOption, ThyOption, ThyOptionGroup, ThyOptionGroupRender, ThyOptionModule, ThyOptionRender, ThyOptionSelectionChangeEvent, ThyScrollDirective, ThySelectCommonModule, ThySelectControl, ThySelectOptionGroup, ThySharedModule, ThyShowDirective, ThyStopPropagationDirective, ThyStringOrTemplateOutletDirective, ThyTranscludeDirective, ThyViewOutletDirective };
587
+ export type { IThyListOptionParentComponent, IThyOptionComponent, IThyOptionGroupComponent, SelectControlSize, ThyListLayout };
@@ -57,16 +57,6 @@
57
57
  background: rgba(variables.$primary, 0.1);
58
58
  color: variables.$primary;
59
59
 
60
- // &.hover,
61
- // &:hover {
62
- // background: $hover-bg-color;
63
- // color: $body-color;
64
-
65
- // .prefix-icon {
66
- // color: $gray-300;
67
- // }
68
- // }
69
-
70
60
  .prefix-icon {
71
61
  color: variables.$primary;
72
62
  }
@@ -6,29 +6,30 @@ $optionsSize: 'sm', 'default', 'md', 'lg';
6
6
 
7
7
  .thy-select-dropdown-options {
8
8
  @include select.thy-select-options-container();
9
+ &-with-virtual-scroll {
10
+ overflow-y: hidden;
11
+ .cdk-virtual-scroll-content-wrapper {
12
+ width: 100%;
13
+ }
14
+ }
9
15
 
10
16
  .loading-more {
11
17
  min-height: auto;
12
18
  text-align: center;
13
19
  }
14
20
 
15
- .thy-option-item-group {
21
+ .thy-option-group-render {
16
22
  @include option.thy-option-common-layout();
17
23
  }
18
24
 
19
25
  .thy-option-item {
20
26
  @include option.thy-option();
21
- &.hidden {
22
- display: none;
23
- }
24
27
  }
25
28
 
26
- .thy-option-item-group {
29
+ .thy-option-group-render {
27
30
  flex-direction: column;
28
-
29
- &.thy-select-option-group-hidden {
30
- display: none;
31
- }
31
+ height: 40px;
32
+ padding: 5px 0;
32
33
 
33
34
  .group-name {
34
35
  width: 100%;