ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
269 lines (251 loc) • 15.4 kB
TypeScript
import * as i0 from '@angular/core';
import { OnInit, OnChanges, AfterContentInit, QueryList, SimpleChanges, TemplateRef, EventEmitter, ElementRef, AfterViewInit, InjectionToken } from '@angular/core';
import * as _angular_cdk_bidi from '@angular/cdk/bidi';
import { RouterLink } from '@angular/router';
import { Subject, BehaviorSubject, Observable } from 'rxjs';
import * as _angular_cdk_overlay from '@angular/cdk/overlay';
import { ConnectedOverlayPositionChange } from '@angular/cdk/overlay';
import * as i1 from 'ng-zorro-antd/core/animation';
import { NzNoAnimationDirective } from 'ng-zorro-antd/core/animation';
import { POSITION_TYPE_HORIZONTAL } from 'ng-zorro-antd/core/overlay';
import { NzSafeAny } from 'ng-zorro-antd/core/types';
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
declare class NzMenuItemComponent implements OnInit, OnChanges, AfterContentInit {
private readonly nzMenuService;
private readonly destroyRef;
private readonly cdr;
private readonly nzSubmenuService;
private readonly routerLink;
private readonly router;
protected readonly isMenuInsideDropdown: boolean;
level: number;
selected$: Subject<boolean>;
inlinePaddingLeft: number | null;
nzPaddingLeft?: number;
nzDisabled: boolean;
nzSelected: boolean;
nzDanger: boolean;
nzMatchRouterExact: boolean;
nzMatchRouter: boolean;
listOfRouterLink: QueryList<RouterLink>;
/** clear all item selected status except this */
clickMenuItem(e: MouseEvent): void;
setSelectedState(value: boolean): void;
private updateRouterActive;
private hasActiveLinks;
private isLinkActive;
constructor();
ngOnInit(): void;
ngAfterContentInit(): void;
ngOnChanges(changes: SimpleChanges): void;
static ɵfac: i0.ɵɵFactoryDeclaration<NzMenuItemComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NzMenuItemComponent, "[nz-menu-item]", ["nzMenuItem"], { "nzPaddingLeft": { "alias": "nzPaddingLeft"; "required": false; }; "nzDisabled": { "alias": "nzDisabled"; "required": false; }; "nzSelected": { "alias": "nzSelected"; "required": false; }; "nzDanger": { "alias": "nzDanger"; "required": false; }; "nzMatchRouterExact": { "alias": "nzMatchRouterExact"; "required": false; }; "nzMatchRouter": { "alias": "nzMatchRouter"; "required": false; }; }, {}, ["listOfRouterLink"], ["*"], true, never>;
static ngAcceptInputType_nzPaddingLeft: unknown;
static ngAcceptInputType_nzDisabled: unknown;
static ngAcceptInputType_nzSelected: unknown;
static ngAcceptInputType_nzDanger: unknown;
static ngAcceptInputType_nzMatchRouterExact: unknown;
static ngAcceptInputType_nzMatchRouter: unknown;
}
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
type NzMenuModeType = 'vertical' | 'horizontal' | 'inline';
type NzMenuThemeType = 'light' | 'dark';
type NzSubmenuTrigger = 'hover' | 'click';
declare class MenuService {
/** all descendant menu click **/
descendantMenuItemClick$: Subject<any>;
/** child menu item click **/
childMenuItemClick$: Subject<any>;
theme$: BehaviorSubject<NzMenuThemeType>;
mode$: BehaviorSubject<NzMenuModeType>;
inlineIndent$: BehaviorSubject<number>;
isChildSubMenuOpen$: BehaviorSubject<boolean>;
onDescendantMenuItemClick(menu: NzSafeAny): void;
onChildMenuItemClick(menu: NzSafeAny): void;
setMode(mode: NzMenuModeType): void;
setTheme(theme: NzMenuThemeType): void;
setInlineIndent(indent: number): void;
static ɵfac: i0.ɵɵFactoryDeclaration<MenuService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<MenuService>;
}
declare class NzSubmenuService {
readonly nzMenuService: MenuService;
private readonly isMenuInsideDropdown;
private readonly nzHostSubmenuService;
mode$: Observable<NzMenuModeType>;
level: number;
isCurrentSubMenuOpen$: BehaviorSubject<boolean>;
private isChildSubMenuOpen$;
/** submenu title & overlay mouse enter status **/
private isMouseEnterTitleOrOverlay$;
private childMenuItemClick$;
/**
* menu item inside submenu clicked
*/
onChildMenuItemClick(menu: NzSafeAny): void;
setOpenStateWithoutDebounce(value: boolean): void;
setMouseEnterTitleOrOverlayState(value: boolean): void;
constructor();
static ɵfac: i0.ɵɵFactoryDeclaration<NzSubmenuService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<NzSubmenuService>;
}
declare class NzSubMenuComponent implements OnInit, AfterContentInit, OnChanges {
readonly nzSubmenuService: NzSubmenuService;
protected readonly isMenuInsideDropdown: boolean;
protected readonly noAnimation: NzNoAnimationDirective | null;
protected readonly dir: i0.WritableSignal<_angular_cdk_bidi.Direction>;
private readonly destroyRef;
private readonly nzMenuService;
private readonly cdr;
private readonly platform;
nzMenuClassName: string;
nzPaddingLeft: number | null;
nzTitle: string | TemplateRef<void> | null;
nzIcon: string | null;
nzTriggerSubMenuAction: NzSubmenuTrigger;
nzOpen: boolean;
nzDisabled: boolean;
nzPlacement: POSITION_TYPE_HORIZONTAL;
readonly nzOpenChange: EventEmitter<boolean>;
cdkOverlayOrigin: ElementRef | null;
listOfNzSubMenuComponent: QueryList<NzSubMenuComponent> | null;
listOfNzMenuItemDirective: QueryList<NzMenuItemComponent> | null;
private level;
position: 'left' | 'right';
triggerWidth: number | null;
theme: NzMenuThemeType;
mode: NzMenuModeType;
inlinePaddingLeft: number | null;
overlayPositions: _angular_cdk_overlay.ConnectionPositionPair[];
isSelected: boolean;
isActive: boolean;
/** set the submenu host open status directly **/
setOpenStateWithoutDebounce(open: boolean): void;
toggleSubMenu(): void;
setMouseEnterState(value: boolean): void;
setTriggerWidth(): void;
onPositionChange(position: ConnectedOverlayPositionChange): void;
ngOnInit(): void;
ngAfterContentInit(): void;
ngOnChanges(changes: SimpleChanges): void;
static ɵfac: i0.ɵɵFactoryDeclaration<NzSubMenuComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NzSubMenuComponent, "[nz-submenu]", ["nzSubmenu"], { "nzMenuClassName": { "alias": "nzMenuClassName"; "required": false; }; "nzPaddingLeft": { "alias": "nzPaddingLeft"; "required": false; }; "nzTitle": { "alias": "nzTitle"; "required": false; }; "nzIcon": { "alias": "nzIcon"; "required": false; }; "nzTriggerSubMenuAction": { "alias": "nzTriggerSubMenuAction"; "required": false; }; "nzOpen": { "alias": "nzOpen"; "required": false; }; "nzDisabled": { "alias": "nzDisabled"; "required": false; }; "nzPlacement": { "alias": "nzPlacement"; "required": false; }; }, { "nzOpenChange": "nzOpenChange"; }, ["listOfNzSubMenuComponent", "listOfNzMenuItemDirective"], ["[title]", "*"], true, never>;
static ngAcceptInputType_nzOpen: unknown;
static ngAcceptInputType_nzDisabled: unknown;
}
declare class NzMenuDirective implements AfterContentInit, OnInit, OnChanges {
private readonly nzMenuService;
private readonly destroyRef;
private readonly cdr;
protected readonly dir: i0.WritableSignal<_angular_cdk_bidi.Direction>;
protected readonly isMenuInsideDropdown: boolean;
listOfNzMenuItemDirective: QueryList<NzMenuItemComponent>;
listOfNzSubMenuComponent: QueryList<NzSubMenuComponent>;
nzInlineIndent: number;
nzTheme: NzMenuThemeType;
nzMode: NzMenuModeType;
nzInlineCollapsed: boolean;
nzSelectable: boolean;
readonly nzClick: EventEmitter<NzMenuItemComponent>;
actualMode: NzMenuModeType;
private inlineCollapsed$;
private mode$;
private listOfOpenedNzSubMenuComponent;
setInlineCollapsed(inlineCollapsed: boolean): void;
updateInlineCollapse(): void;
ngOnInit(): void;
ngAfterContentInit(): void;
ngOnChanges(changes: SimpleChanges): void;
static ɵfac: i0.ɵɵFactoryDeclaration<NzMenuDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<NzMenuDirective, "[nz-menu]", ["nzMenu"], { "nzInlineIndent": { "alias": "nzInlineIndent"; "required": false; }; "nzTheme": { "alias": "nzTheme"; "required": false; }; "nzMode": { "alias": "nzMode"; "required": false; }; "nzInlineCollapsed": { "alias": "nzInlineCollapsed"; "required": false; }; "nzSelectable": { "alias": "nzSelectable"; "required": false; }; }, { "nzClick": "nzClick"; }, ["listOfNzMenuItemDirective", "listOfNzSubMenuComponent"], never, true, never>;
static ngAcceptInputType_nzInlineCollapsed: unknown;
static ngAcceptInputType_nzSelectable: unknown;
}
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
declare class NzMenuGroupComponent implements AfterViewInit {
private readonly renderer;
protected readonly isMenuInsideDropdown: boolean;
nzTitle?: string | TemplateRef<void>;
titleElement?: ElementRef;
ngAfterViewInit(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<NzMenuGroupComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NzMenuGroupComponent, "[nz-menu-group]", ["nzMenuGroup"], { "nzTitle": { "alias": "nzTitle"; "required": false; }; }, {}, never, ["[title]", "*"], true, never>;
}
declare class NzMenuDividerDirective {
static ɵfac: i0.ɵɵFactoryDeclaration<NzMenuDividerDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<NzMenuDividerDirective, "[nz-menu-divider]", ["nzMenuDivider"], {}, {}, never, never, true, never>;
}
declare class NzSubMenuTitleComponent {
protected readonly isMenuInsideDropdown: boolean;
protected readonly dir: i0.WritableSignal<_angular_cdk_bidi.Direction>;
nzIcon: string | null;
nzTitle: string | TemplateRef<void> | null;
nzDisabled: boolean;
paddingLeft: number | null;
mode: NzMenuModeType;
nzTriggerSubMenuAction: NzSubmenuTrigger;
readonly toggleSubMenu: EventEmitter<any>;
readonly subMenuMouseState: EventEmitter<boolean>;
protected setMouseState(state: boolean): void;
protected clickTitle(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<NzSubMenuTitleComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NzSubMenuTitleComponent, "[nz-submenu-title]", ["nzSubmenuTitle"], { "nzIcon": { "alias": "nzIcon"; "required": false; }; "nzTitle": { "alias": "nzTitle"; "required": false; }; "nzDisabled": { "alias": "nzDisabled"; "required": false; }; "paddingLeft": { "alias": "paddingLeft"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "nzTriggerSubMenuAction": { "alias": "nzTriggerSubMenuAction"; "required": false; }; }, { "toggleSubMenu": "toggleSubMenu"; "subMenuMouseState": "subMenuMouseState"; }, never, ["*"], true, never>;
}
declare class NzSubmenuInlineChildComponent {
protected readonly dir: i0.WritableSignal<_angular_cdk_bidi.Direction>;
readonly menuClass: i0.InputSignal<string>;
readonly open: i0.InputSignal<boolean>;
readonly leavedClassName: i0.InputSignal<string>;
protected readonly mergedClass: i0.Signal<string[]>;
static ɵfac: i0.ɵɵFactoryDeclaration<NzSubmenuInlineChildComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NzSubmenuInlineChildComponent, "[nz-submenu-inline-child]", ["nzSubmenuInlineChild"], { "menuClass": { "alias": "menuClass"; "required": false; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; "leavedClassName": { "alias": "leavedClassName"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NzAnimationCollapseDirective; inputs: { "open": "open"; "leavedClassName": "leavedClassName"; }; outputs: {}; }]>;
}
declare class NzSubmenuNoneInlineChildComponent {
protected readonly isMenuInsideDropdown: boolean;
protected readonly dir: i0.WritableSignal<_angular_cdk_bidi.Direction>;
readonly menuClass: i0.InputSignal<string>;
readonly theme: i0.InputSignal<NzMenuThemeType>;
readonly mode: i0.InputSignal<"vertical" | "horizontal">;
readonly position: i0.InputSignal<"right" | "left">;
readonly open: i0.InputSignal<boolean>;
readonly nzDisabled: i0.InputSignal<boolean>;
readonly nzTriggerSubMenuAction: i0.InputSignal<NzSubmenuTrigger>;
readonly subMenuMouseState: i0.OutputEmitterRef<boolean>;
protected readonly animationEnter: i0.Signal<string>;
protected readonly animationLeave: i0.Signal<string>;
protected readonly submenuClass: i0.Signal<string[]>;
protected readonly mergedMenuClass: i0.Signal<string[]>;
protected setMouseState(state: boolean): void;
static ɵfac: i0.ɵɵFactoryDeclaration<NzSubmenuNoneInlineChildComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NzSubmenuNoneInlineChildComponent, "[nz-submenu-none-inline-child]", ["nzSubmenuNoneInlineChild"], { "menuClass": { "alias": "menuClass"; "required": false; "isSignal": true; }; "theme": { "alias": "theme"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; "nzDisabled": { "alias": "nzDisabled"; "required": false; "isSignal": true; }; "nzTriggerSubMenuAction": { "alias": "nzTriggerSubMenuAction"; "required": false; "isSignal": true; }; }, { "subMenuMouseState": "subMenuMouseState"; }, never, ["*"], true, never>;
}
declare class NzMenuModule {
static ɵfac: i0.ɵɵFactoryDeclaration<NzMenuModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<NzMenuModule, never, [typeof NzMenuDirective, typeof NzMenuItemComponent, typeof NzSubMenuComponent, typeof NzMenuDividerDirective, typeof NzMenuGroupComponent, typeof NzSubMenuTitleComponent, typeof NzSubmenuInlineChildComponent, typeof NzSubmenuNoneInlineChildComponent], [typeof NzMenuDirective, typeof NzMenuItemComponent, typeof NzSubMenuComponent, typeof NzMenuDividerDirective, typeof NzMenuGroupComponent]>;
static ɵinj: i0.ɵɵInjectorDeclaration<NzMenuModule>;
}
/**
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
/**
* A flag to mark if the menu is inside a dropdown.
* @note Internally used only, please do not use it.
*/
declare const NzIsMenuInsideDropdownToken: InjectionToken<boolean>;
/**
* A token to hold the local {@link MenuService} instance. This is used for nested menu.
* @note Internally used only, please do not use it.
*/
declare const NzMenuServiceLocalToken: InjectionToken<MenuService>;
export { MenuService, NzIsMenuInsideDropdownToken, NzMenuDirective, NzMenuDividerDirective, NzMenuGroupComponent, NzMenuItemComponent, NzMenuModule, NzMenuServiceLocalToken, NzSubMenuComponent, NzSubMenuTitleComponent, NzSubmenuInlineChildComponent, NzSubmenuNoneInlineChildComponent, NzSubmenuService };
export type { NzMenuModeType, NzMenuThemeType, NzSubmenuTrigger };