cascader.component.d.ts 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. /**
  2. * Use of this source code is governed by an MIT-style license that can be
  3. * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
  4. */
  5. import { Direction, Directionality } from '@angular/cdk/bidi';
  6. import { CdkConnectedOverlay, ConnectedOverlayPositionChange, ConnectionPositionPair } from '@angular/cdk/overlay';
  7. import { ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
  8. import { ControlValueAccessor } from '@angular/forms';
  9. import { Observable } from 'rxjs';
  10. import { NzConfigKey } from 'ng-zorro-antd/core/config';
  11. import { NzFormStatusService } from 'ng-zorro-antd/core/form';
  12. import { NzNoAnimationDirective } from 'ng-zorro-antd/core/no-animation';
  13. import { NzDestroyService } from 'ng-zorro-antd/core/services';
  14. import { NzTreeBase, NzTreeNode } from 'ng-zorro-antd/core/tree';
  15. import { NgClassInterface, NgStyleInterface, NzSafeAny, NzSizeLDSType, NzStatus, NzValidateStatus } from 'ng-zorro-antd/core/types';
  16. import { NzCascaderI18nInterface, NzI18nService } from 'ng-zorro-antd/i18n';
  17. import { NzSelectSearchComponent } from 'ng-zorro-antd/select';
  18. import { NzCascaderOptionComponent } from './cascader-option.component';
  19. import { NzCascaderTreeService } from './cascader-tree.service';
  20. import { NzCascaderService } from './cascader.service';
  21. import { NzCascaderComponentAsSource, NzCascaderExpandTrigger, NzCascaderOption, NzCascaderPlacement, NzCascaderSize, NzCascaderTriggerType, NzShowSearchOptions } from './typings';
  22. import * as i0 from "@angular/core";
  23. import * as i1 from "ng-zorro-antd/space";
  24. export declare class NzCascaderComponent extends NzTreeBase implements NzCascaderComponentAsSource, OnInit, OnDestroy, OnChanges, ControlValueAccessor {
  25. private ngZone;
  26. private cdr;
  27. private i18nService;
  28. private destroy$;
  29. private elementRef;
  30. private renderer;
  31. private directionality;
  32. readonly _nzModuleName: NzConfigKey;
  33. selectContainer: ElementRef;
  34. set input(inputComponent: NzSelectSearchComponent | undefined);
  35. get input(): ElementRef<HTMLInputElement> | undefined;
  36. /** Used to store the native `<input type="search" />` element since it might be set asynchronously. */
  37. private input$;
  38. menu: ElementRef;
  39. overlay: CdkConnectedOverlay;
  40. cascaderItems: QueryList<NzCascaderOptionComponent>;
  41. nzOptionRender: TemplateRef<{
  42. $implicit: NzCascaderOption;
  43. index: number;
  44. }> | null;
  45. nzShowInput: boolean;
  46. nzShowArrow: boolean;
  47. nzAllowClear: boolean;
  48. nzAutoFocus: boolean;
  49. nzChangeOnSelect: boolean;
  50. nzDisabled: boolean;
  51. nzColumnClassName?: string;
  52. nzExpandTrigger: NzCascaderExpandTrigger;
  53. nzValueProperty: string;
  54. nzLabelProperty: string;
  55. nzLabelRender: TemplateRef<typeof this.labelRenderContext> | null;
  56. nzNotFoundContent?: string | TemplateRef<void>;
  57. nzSize: NzCascaderSize;
  58. nzBackdrop: boolean;
  59. nzShowSearch: boolean | NzShowSearchOptions;
  60. nzPlaceHolder: string;
  61. nzMenuClassName?: string;
  62. nzMenuStyle: NgStyleInterface | null;
  63. /**
  64. * Duration in milliseconds before opening the menu when the mouse enters the trigger.
  65. * @default 150
  66. */
  67. nzMouseLeaveDelay: number;
  68. /**
  69. * Duration in milliseconds before closing the menu when the mouse leaves the trigger.
  70. * @default 150
  71. */
  72. nzMouseEnterDelay: number;
  73. nzStatus: NzStatus;
  74. nzMultiple: boolean;
  75. nzMaxTagCount: number;
  76. nzPlacement: NzCascaderPlacement;
  77. nzTriggerAction: NzCascaderTriggerType | NzCascaderTriggerType[];
  78. nzChangeOn?: (option: NzCascaderOption, level: number) => boolean;
  79. nzLoadData?: (node: NzCascaderOption, index: number) => PromiseLike<NzSafeAny> | Observable<NzSafeAny>;
  80. nzDisplayWith: (nodes: NzCascaderOption[]) => string | undefined;
  81. nzSuffixIcon: string | TemplateRef<void>;
  82. nzExpandIcon: string | TemplateRef<void>;
  83. get nzOptions(): NzCascaderOption[] | null;
  84. set nzOptions(options: NzCascaderOption[] | null);
  85. get treeService(): NzCascaderTreeService;
  86. readonly nzVisibleChange: EventEmitter<boolean>;
  87. readonly nzSelectionChange: EventEmitter<NzCascaderOption[]>;
  88. readonly nzRemoved: EventEmitter<NzCascaderOption>;
  89. readonly nzClear: EventEmitter<void>;
  90. prefixCls: string;
  91. statusCls: NgClassInterface;
  92. status: NzValidateStatus;
  93. hasFeedback: boolean;
  94. /**
  95. * If the dropdown should show the empty content.
  96. * `true` if there's no options.
  97. */
  98. shouldShowEmpty: boolean;
  99. el: HTMLElement;
  100. menuVisible: boolean;
  101. isLoading: boolean;
  102. labelRenderText?: string;
  103. labelRenderContext: {};
  104. onChange: Function;
  105. onTouched: Function;
  106. positions: ConnectionPositionPair[];
  107. /**
  108. * Dropdown width in pixel.
  109. */
  110. dropdownWidthStyle?: string;
  111. dropdownHeightStyle: 'auto' | '';
  112. dropdownPosition: NzCascaderPlacement;
  113. isFocused: boolean;
  114. locale: NzCascaderI18nInterface;
  115. dir: Direction;
  116. isComposing: boolean;
  117. protected get overlayOrigin(): ElementRef;
  118. protected finalSize: import("@angular/core").Signal<NzSizeLDSType>;
  119. private size;
  120. private compactSize;
  121. private inputString;
  122. private isOpening;
  123. private delayMenuTimer?;
  124. private delaySelectTimer?;
  125. private isNzDisableFirstChange;
  126. selectedNodes: NzTreeNode[];
  127. get inSearchingMode(): boolean;
  128. set inputValue(inputValue: string);
  129. get inputValue(): string;
  130. private get hasInput();
  131. private get hasValue();
  132. get showLabelRender(): boolean;
  133. get showPlaceholder(): boolean;
  134. get clearIconVisible(): boolean;
  135. get isLabelRenderTemplate(): boolean;
  136. noAnimation: NzNoAnimationDirective | null;
  137. nzFormStatusService: NzFormStatusService | null;
  138. private nzFormNoStatusService;
  139. private nzConfigService;
  140. cascaderService: NzCascaderService;
  141. constructor(treeService: NzCascaderTreeService, ngZone: NgZone, cdr: ChangeDetectorRef, i18nService: NzI18nService, destroy$: NzDestroyService, elementRef: ElementRef, renderer: Renderer2, directionality: Directionality);
  142. ngOnInit(): void;
  143. ngOnChanges(changes: SimpleChanges): void;
  144. ngOnDestroy(): void;
  145. registerOnChange(fn: () => {}): void;
  146. registerOnTouched(fn: () => {}): void;
  147. writeValue(value: NzSafeAny): void;
  148. private setupSelectionChangeListener;
  149. delaySetMenuVisible(visible: boolean, delay?: number, setOpening?: boolean): void;
  150. setMenuVisible(visible: boolean): void;
  151. private clearDelayMenuTimer;
  152. clearSelection(event?: Event): void;
  153. clearSelectedNodes(): void;
  154. emitValue(values: NzSafeAny[] | null): void;
  155. focus(): void;
  156. blur(): void;
  157. handleInputBlur(): void;
  158. handleInputFocus(): void;
  159. isComposingChange(isComposing: boolean): void;
  160. onTriggerClick(): void;
  161. onTriggerMouseEnter(): void;
  162. onTriggerMouseLeave(event: MouseEvent): void;
  163. onOptionMouseEnter(node: NzTreeNode, columnIndex: number, event: Event): void;
  164. onOptionMouseLeave(node: NzTreeNode, _columnIndex: number, event: Event): void;
  165. /**
  166. * Get ancestor options of a node
  167. */
  168. protected getAncestorOptionList(node: NzTreeNode | null): NzCascaderOption[];
  169. updateSelectedNodes(init?: boolean, updateValue?: boolean): void;
  170. onOptionClick(node: NzTreeNode, columnIndex: number, event: Event): void;
  171. onOptionCheck(node: NzTreeNode, columnIndex: number, performActivate?: boolean): void;
  172. removeSelected(node: NzTreeNode, emitEvent?: boolean): void;
  173. onClickOutside(event: MouseEvent): void;
  174. onPositionChange(position: ConnectedOverlayPositionChange): void;
  175. private isActionTrigger;
  176. private onEnter;
  177. private moveUpOrDown;
  178. private moveLeft;
  179. private moveRight;
  180. private clearDelaySelectTimer;
  181. private delaySetOptionActivated;
  182. private toggleSearchingMode;
  183. isOptionActivated(node: NzTreeNode, index: number): boolean;
  184. setDisabledState(isDisabled: boolean): void;
  185. closeMenu(): void;
  186. /**
  187. * Reposition the cascader panel. When a menu opens, the cascader expands
  188. * and may exceed the boundary of browser's window.
  189. */
  190. private reposition;
  191. /**
  192. * When a cascader options is changed, a child needs to know that it should re-render.
  193. */
  194. private checkChildren;
  195. private setDisplayLabel;
  196. private setDropdownStyles;
  197. private setStatusStyles;
  198. private setLocale;
  199. private scrollToActivatedOptions;
  200. private setupChangeListener;
  201. private setupFocusListener;
  202. private setupKeydownListener;
  203. static ɵfac: i0.ɵɵFactoryDeclaration<NzCascaderComponent, never>;
  204. static ɵcmp: i0.ɵɵComponentDeclaration<NzCascaderComponent, "nz-cascader, [nz-cascader]", ["nzCascader"], { "nzOptionRender": { "alias": "nzOptionRender"; "required": false; }; "nzShowInput": { "alias": "nzShowInput"; "required": false; }; "nzShowArrow": { "alias": "nzShowArrow"; "required": false; }; "nzAllowClear": { "alias": "nzAllowClear"; "required": false; }; "nzAutoFocus": { "alias": "nzAutoFocus"; "required": false; }; "nzChangeOnSelect": { "alias": "nzChangeOnSelect"; "required": false; }; "nzDisabled": { "alias": "nzDisabled"; "required": false; }; "nzColumnClassName": { "alias": "nzColumnClassName"; "required": false; }; "nzExpandTrigger": { "alias": "nzExpandTrigger"; "required": false; }; "nzValueProperty": { "alias": "nzValueProperty"; "required": false; }; "nzLabelProperty": { "alias": "nzLabelProperty"; "required": false; }; "nzLabelRender": { "alias": "nzLabelRender"; "required": false; }; "nzNotFoundContent": { "alias": "nzNotFoundContent"; "required": false; }; "nzSize": { "alias": "nzSize"; "required": false; }; "nzBackdrop": { "alias": "nzBackdrop"; "required": false; }; "nzShowSearch": { "alias": "nzShowSearch"; "required": false; }; "nzPlaceHolder": { "alias": "nzPlaceHolder"; "required": false; }; "nzMenuClassName": { "alias": "nzMenuClassName"; "required": false; }; "nzMenuStyle": { "alias": "nzMenuStyle"; "required": false; }; "nzMouseLeaveDelay": { "alias": "nzMouseLeaveDelay"; "required": false; }; "nzMouseEnterDelay": { "alias": "nzMouseEnterDelay"; "required": false; }; "nzStatus": { "alias": "nzStatus"; "required": false; }; "nzMultiple": { "alias": "nzMultiple"; "required": false; }; "nzMaxTagCount": { "alias": "nzMaxTagCount"; "required": false; }; "nzPlacement": { "alias": "nzPlacement"; "required": false; }; "nzTriggerAction": { "alias": "nzTriggerAction"; "required": false; }; "nzChangeOn": { "alias": "nzChangeOn"; "required": false; }; "nzLoadData": { "alias": "nzLoadData"; "required": false; }; "nzDisplayWith": { "alias": "nzDisplayWith"; "required": false; }; "nzSuffixIcon": { "alias": "nzSuffixIcon"; "required": false; }; "nzExpandIcon": { "alias": "nzExpandIcon"; "required": false; }; "nzOptions": { "alias": "nzOptions"; "required": false; }; }, { "nzVisibleChange": "nzVisibleChange"; "nzSelectionChange": "nzSelectionChange"; "nzRemoved": "nzRemoved"; "nzClear": "nzClear"; }, never, ["*"], true, [{ directive: typeof i1.NzSpaceCompactItemDirective; inputs: {}; outputs: {}; }]>;
  205. static ngAcceptInputType_nzShowInput: unknown;
  206. static ngAcceptInputType_nzShowArrow: unknown;
  207. static ngAcceptInputType_nzAllowClear: unknown;
  208. static ngAcceptInputType_nzAutoFocus: unknown;
  209. static ngAcceptInputType_nzChangeOnSelect: unknown;
  210. static ngAcceptInputType_nzDisabled: unknown;
  211. static ngAcceptInputType_nzMouseLeaveDelay: unknown;
  212. static ngAcceptInputType_nzMouseEnterDelay: unknown;
  213. static ngAcceptInputType_nzMultiple: unknown;
  214. }