{"version":3,"file":"ng-zorro-antd-menu.mjs","sources":["../../components/menu/menu.service.ts","../../components/menu/menu.token.ts","../../components/menu/submenu.service.ts","../../components/menu/menu-item.component.ts","../../components/menu/submenu-inline-child.component.ts","../../components/menu/submenu-non-inline-child.component.ts","../../components/menu/submenu-title.component.ts","../../components/menu/submenu.component.ts","../../components/menu/menu.directive.ts","../../components/menu/menu-group.component.ts","../../components/menu/menu-divider.directive.ts","../../components/menu/menu.module.ts","../../components/menu/menu.types.ts","../../components/menu/public-api.ts","../../components/menu/ng-zorro-antd-menu.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Subject } from 'rxjs';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzMenuModeType, NzMenuThemeType } from './menu.types';\n\n@Injectable()\nexport class MenuService {\n /** all descendant menu click **/\n descendantMenuItemClick$ = new Subject();\n /** child menu item click **/\n childMenuItemClick$ = new Subject();\n theme$ = new BehaviorSubject('light');\n mode$ = new BehaviorSubject('vertical');\n inlineIndent$ = new BehaviorSubject(24);\n isChildSubMenuOpen$ = new BehaviorSubject(false);\n\n onDescendantMenuItemClick(menu: NzSafeAny): void {\n this.descendantMenuItemClick$.next(menu);\n }\n\n onChildMenuItemClick(menu: NzSafeAny): void {\n this.childMenuItemClick$.next(menu);\n }\n\n setMode(mode: NzMenuModeType): void {\n this.mode$.next(mode);\n }\n\n setTheme(theme: NzMenuThemeType): void {\n this.theme$.next(theme);\n }\n\n setInlineIndent(indent: number): void {\n this.inlineIndent$.next(indent);\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { InjectionToken } from '@angular/core';\n\nimport { MenuService } from './menu.service';\n\nexport const NzIsMenuInsideDropDownToken = new InjectionToken(\n typeof ngDevMode !== 'undefined' && ngDevMode ? 'nz-is-in-dropdown-menu' : ''\n);\nexport const NzMenuServiceLocalToken = new InjectionToken(\n typeof ngDevMode !== 'undefined' && ngDevMode ? 'nz-menu-service-local' : ''\n);\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Injectable, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, Observable, Subject, combineLatest, merge } from 'rxjs';\nimport { auditTime, distinctUntilChanged, filter, map, mergeMap } from 'rxjs/operators';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { MenuService } from './menu.service';\nimport { NzIsMenuInsideDropDownToken } from './menu.token';\nimport { NzMenuModeType } from './menu.types';\n\n@Injectable()\nexport class NzSubmenuService {\n public readonly nzMenuService = inject(MenuService);\n private readonly nzHostSubmenuService = inject(NzSubmenuService, { optional: true, skipSelf: true });\n\n mode$: Observable = this.nzMenuService.mode$.pipe(\n map(mode => {\n if (mode === 'inline') {\n return 'inline';\n /** if inside another submenu, set the mode to vertical **/\n } else if (mode === 'vertical' || this.nzHostSubmenuService) {\n return 'vertical';\n } else {\n return 'horizontal';\n }\n })\n );\n level = 1;\n isMenuInsideDropDown = inject(NzIsMenuInsideDropDownToken);\n isCurrentSubMenuOpen$ = new BehaviorSubject(false);\n private isChildSubMenuOpen$ = new BehaviorSubject(false);\n /** submenu title & overlay mouse enter status **/\n private isMouseEnterTitleOrOverlay$ = new Subject();\n private childMenuItemClick$ = new Subject();\n /**\n * menu item inside submenu clicked\n */\n onChildMenuItemClick(menu: NzSafeAny): void {\n this.childMenuItemClick$.next(menu);\n }\n setOpenStateWithoutDebounce(value: boolean): void {\n this.isCurrentSubMenuOpen$.next(value);\n }\n setMouseEnterTitleOrOverlayState(value: boolean): void {\n this.isMouseEnterTitleOrOverlay$.next(value);\n }\n\n constructor() {\n if (this.nzHostSubmenuService) {\n this.level = this.nzHostSubmenuService.level + 1;\n }\n\n /** close if menu item clicked **/\n const isClosedByMenuItemClick = this.childMenuItemClick$.pipe(\n mergeMap(() => this.mode$),\n filter(mode => mode !== 'inline' || this.isMenuInsideDropDown),\n map(() => false)\n );\n const isCurrentSubmenuOpen$ = merge(this.isMouseEnterTitleOrOverlay$, isClosedByMenuItemClick);\n /** combine the child submenu status with current submenu status to calculate host submenu open **/\n const isSubMenuOpenWithDebounce$ = combineLatest([this.isChildSubMenuOpen$, isCurrentSubmenuOpen$]).pipe(\n map(([isChildSubMenuOpen, isCurrentSubmenuOpen]) => isChildSubMenuOpen || isCurrentSubmenuOpen),\n auditTime(150)\n );\n isSubMenuOpenWithDebounce$.pipe(distinctUntilChanged(), takeUntilDestroyed()).subscribe(data => {\n this.setOpenStateWithoutDebounce(data);\n if (this.nzHostSubmenuService) {\n /** set parent submenu's child submenu open status **/\n this.nzHostSubmenuService.isChildSubMenuOpen$.next(data);\n } else {\n this.nzMenuService.isChildSubMenuOpen$.next(data);\n }\n });\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n OnChanges,\n OnInit,\n QueryList,\n SimpleChanges,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n DestroyRef,\n ChangeDetectorRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { NavigationEnd, Router, RouterLink } from '@angular/router';\nimport { Subject, combineLatest } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { numberAttributeWithZeroFallback } from 'ng-zorro-antd/core/util';\n\nimport { MenuService } from './menu.service';\nimport { NzIsMenuInsideDropDownToken } from './menu.token';\nimport { NzSubmenuService } from './submenu.service';\n\n@Component({\n selector: '[nz-menu-item]',\n exportAs: 'nzMenuItem',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n template: `\n \n \n \n `,\n host: {\n '[class.ant-dropdown-menu-item]': `isMenuInsideDropDown`,\n '[class.ant-dropdown-menu-item-selected]': `isMenuInsideDropDown && nzSelected`,\n '[class.ant-dropdown-menu-item-danger]': `isMenuInsideDropDown && nzDanger`,\n '[class.ant-dropdown-menu-item-disabled]': `isMenuInsideDropDown && nzDisabled`,\n '[class.ant-menu-item]': `!isMenuInsideDropDown`,\n '[class.ant-menu-item-selected]': `!isMenuInsideDropDown && nzSelected`,\n '[class.ant-menu-item-danger]': `!isMenuInsideDropDown && nzDanger`,\n '[class.ant-menu-item-disabled]': `!isMenuInsideDropDown && nzDisabled`,\n '[style.paddingLeft.px]': `dir === 'rtl' ? null : nzPaddingLeft || inlinePaddingLeft`,\n '[style.paddingRight.px]': `dir === 'rtl' ? nzPaddingLeft || inlinePaddingLeft : null`,\n '(click)': 'clickMenuItem($event)'\n }\n})\nexport class NzMenuItemComponent implements OnInit, OnChanges, AfterContentInit {\n private readonly nzMenuService = inject(MenuService);\n private readonly destroyRef = inject(DestroyRef);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly nzSubmenuService = inject(NzSubmenuService, { optional: true });\n private readonly directionality = inject(Directionality);\n private readonly routerLink = inject(RouterLink, { optional: true });\n private readonly router = inject(Router, { optional: true });\n protected readonly isMenuInsideDropDown = inject(NzIsMenuInsideDropDownToken);\n\n level = this.nzSubmenuService ? this.nzSubmenuService.level + 1 : 1;\n selected$ = new Subject();\n inlinePaddingLeft: number | null = null;\n dir: Direction = 'ltr';\n @Input({ transform: numberAttributeWithZeroFallback }) nzPaddingLeft?: number;\n @Input({ transform: booleanAttribute }) nzDisabled = false;\n @Input({ transform: booleanAttribute }) nzSelected = false;\n @Input({ transform: booleanAttribute }) nzDanger = false;\n @Input({ transform: booleanAttribute }) nzMatchRouterExact = false;\n @Input({ transform: booleanAttribute }) nzMatchRouter = false;\n @ContentChildren(RouterLink, { descendants: true }) listOfRouterLink!: QueryList;\n\n /** clear all item selected status except this */\n clickMenuItem(e: MouseEvent): void {\n if (this.nzDisabled) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n this.nzMenuService.onDescendantMenuItemClick(this);\n if (this.nzSubmenuService) {\n /** menu item inside the submenu **/\n this.nzSubmenuService.onChildMenuItemClick(this);\n } else {\n /** menu item inside the root menu **/\n this.nzMenuService.onChildMenuItemClick(this);\n }\n }\n\n setSelectedState(value: boolean): void {\n this.nzSelected = value;\n this.selected$.next(value);\n }\n\n private updateRouterActive(): void {\n if (!this.listOfRouterLink || !this.router || !this.router.navigated || !this.nzMatchRouter) {\n return;\n }\n Promise.resolve().then(() => {\n const hasActiveLinks = this.hasActiveLinks();\n if (this.nzSelected !== hasActiveLinks) {\n this.nzSelected = hasActiveLinks;\n this.setSelectedState(this.nzSelected);\n this.cdr.markForCheck();\n }\n });\n }\n\n private hasActiveLinks(): boolean {\n const isActiveCheckFn = this.isLinkActive(this.router!);\n return (this.routerLink && isActiveCheckFn(this.routerLink)) || this.listOfRouterLink.some(isActiveCheckFn);\n }\n\n private isLinkActive(router: Router): (link: RouterLink) => boolean {\n return (link: RouterLink) =>\n router.isActive(link.urlTree || '', {\n paths: this.nzMatchRouterExact ? 'exact' : 'subset',\n queryParams: this.nzMatchRouterExact ? 'exact' : 'subset',\n fragment: 'ignored',\n matrixParams: 'ignored'\n });\n }\n\n constructor() {\n this.router?.events\n .pipe(\n takeUntilDestroyed(),\n filter(e => e instanceof NavigationEnd)\n )\n .subscribe(() => this.updateRouterActive());\n }\n\n ngOnInit(): void {\n /** store origin padding in padding */\n combineLatest([this.nzMenuService.mode$, this.nzMenuService.inlineIndent$])\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(([mode, inlineIndent]) => {\n this.inlinePaddingLeft = mode === 'inline' ? this.level * inlineIndent : null;\n });\n\n this.dir = this.directionality.value;\n this.directionality.change?.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(direction => {\n this.dir = direction;\n });\n }\n\n ngAfterContentInit(): void {\n this.listOfRouterLink.changes.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => this.updateRouterActive());\n this.updateRouterActive();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const { nzSelected } = changes;\n if (nzSelected) {\n this.setSelectedState(this.nzSelected);\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n ElementRef,\n inject,\n Input,\n OnChanges,\n OnInit,\n Renderer2,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { collapseMotion } from 'ng-zorro-antd/core/animation';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzMenuModeType } from './menu.types';\n\n@Component({\n selector: '[nz-submenu-inline-child]',\n animations: [collapseMotion],\n exportAs: 'nzSubmenuInlineChild',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: ``,\n host: {\n class: 'ant-menu ant-menu-inline ant-menu-sub',\n '[class.ant-menu-rtl]': `dir === 'rtl'`,\n '[@collapseMotion]': 'expandState'\n },\n imports: [NgTemplateOutlet]\n})\nexport class NzSubmenuInlineChildComponent implements OnInit, OnChanges {\n private readonly elementRef = inject(ElementRef);\n private readonly renderer = inject(Renderer2);\n private readonly directionality = inject(Directionality);\n private readonly destroyRef = inject(DestroyRef);\n\n @Input() templateOutlet: TemplateRef | null = null;\n @Input() menuClass: string = '';\n @Input() mode: NzMenuModeType = 'vertical';\n @Input() nzOpen = false;\n listOfCacheClassName: string[] = [];\n expandState = 'collapsed';\n dir: Direction = 'ltr';\n\n calcMotionState(): void {\n this.expandState = this.nzOpen ? 'expanded' : 'collapsed';\n }\n\n ngOnInit(): void {\n this.calcMotionState();\n\n this.dir = this.directionality.value;\n this.directionality.change?.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(direction => {\n this.dir = direction;\n });\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const { mode, nzOpen, menuClass } = changes;\n if (mode || nzOpen) {\n this.calcMotionState();\n }\n if (menuClass) {\n if (this.listOfCacheClassName.length) {\n this.listOfCacheClassName.forEach(className => {\n if (className) {\n this.renderer.removeClass(this.elementRef.nativeElement, className);\n }\n });\n }\n if (this.menuClass) {\n this.listOfCacheClassName = this.menuClass.split(' ');\n this.listOfCacheClassName.forEach(className => {\n if (className) {\n this.renderer.addClass(this.elementRef.nativeElement, className);\n }\n });\n }\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n EventEmitter,\n inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { slideMotion, zoomBigMotion } from 'ng-zorro-antd/core/animation';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzMenuModeType, NzMenuThemeType, NzSubmenuTrigger } from './menu.types';\n\n@Component({\n selector: '[nz-submenu-none-inline-child]',\n exportAs: 'nzSubmenuNoneInlineChild',\n encapsulation: ViewEncapsulation.None,\n animations: [zoomBigMotion, slideMotion],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n \n \n \n `,\n host: {\n class: 'ant-menu-submenu ant-menu-submenu-popup',\n '[class.ant-menu-light]': \"theme === 'light'\",\n '[class.ant-menu-dark]': \"theme === 'dark'\",\n '[class.ant-menu-submenu-placement-bottom]': \"mode === 'horizontal'\",\n '[class.ant-menu-submenu-placement-right]': \"mode === 'vertical' && position === 'right'\",\n '[class.ant-menu-submenu-placement-left]': \"mode === 'vertical' && position === 'left'\",\n '[class.ant-menu-submenu-rtl]': 'dir ===\"rtl\"',\n '[@slideMotion]': 'expandState',\n '[@zoomBigMotion]': 'expandState',\n '(mouseenter)': 'setMouseState(true)',\n '(mouseleave)': 'setMouseState(false)'\n },\n imports: [NgTemplateOutlet]\n})\nexport class NzSubmenuNoneInlineChildComponent implements OnInit, OnChanges {\n private readonly directionality = inject(Directionality);\n private readonly destroyRef = inject(DestroyRef);\n\n @Input() menuClass: string = '';\n @Input() theme: NzMenuThemeType = 'light';\n @Input() templateOutlet: TemplateRef | null = null;\n @Input() isMenuInsideDropDown = false;\n @Input() mode: NzMenuModeType = 'vertical';\n @Input() nzTriggerSubMenuAction: NzSubmenuTrigger = 'hover';\n @Input() position = 'right';\n @Input() nzDisabled = false;\n @Input() nzOpen = false;\n @Output() readonly subMenuMouseState = new EventEmitter();\n\n expandState = 'collapsed';\n dir: Direction = 'ltr';\n\n setMouseState(state: boolean): void {\n if (!this.nzDisabled && this.nzTriggerSubMenuAction === 'hover') {\n this.subMenuMouseState.next(state);\n }\n }\n\n calcMotionState(): void {\n if (this.nzOpen) {\n if (this.mode === 'horizontal') {\n this.expandState = 'bottom';\n } else if (this.mode === 'vertical') {\n this.expandState = 'active';\n }\n } else {\n this.expandState = 'collapsed';\n }\n }\n\n ngOnInit(): void {\n this.calcMotionState();\n\n this.dir = this.directionality.value;\n this.directionality.change?.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(direction => {\n this.dir = direction;\n });\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const { mode, nzOpen } = changes;\n if (mode || nzOpen) {\n this.calcMotionState();\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n EventEmitter,\n inject,\n Input,\n OnInit,\n Output,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { NzMenuModeType, NzSubmenuTrigger } from './menu.types';\n\n@Component({\n selector: '[nz-submenu-title]',\n exportAs: 'nzSubmenuTitle',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (nzIcon) {\n \n }\n \n {{ nzTitle }}\n \n \n @if (isMenuInsideDropDown) {\n \n @switch (dir) {\n @case ('rtl') {\n \n }\n @default {\n \n }\n }\n \n } @else {\n \n }\n `,\n host: {\n '[class.ant-dropdown-menu-submenu-title]': 'isMenuInsideDropDown',\n '[class.ant-menu-submenu-title]': '!isMenuInsideDropDown',\n '[style.paddingLeft.px]': `dir === 'rtl' ? null : paddingLeft `,\n '[style.paddingRight.px]': `dir === 'rtl' ? paddingLeft : null`,\n '(click)': 'clickTitle()',\n '(mouseenter)': 'setMouseState(true)',\n '(mouseleave)': 'setMouseState(false)'\n },\n imports: [NzIconModule, NzOutletModule]\n})\nexport class NzSubMenuTitleComponent implements OnInit {\n private readonly destroyRef = inject(DestroyRef);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly directionality = inject(Directionality);\n\n @Input() nzIcon: string | null = null;\n @Input() nzTitle: string | TemplateRef | null = null;\n @Input() isMenuInsideDropDown = false;\n @Input() nzDisabled = false;\n @Input() paddingLeft: number | null = null;\n @Input() mode: NzMenuModeType = 'vertical';\n @Input() nzTriggerSubMenuAction: NzSubmenuTrigger = 'hover';\n @Output() readonly toggleSubMenu = new EventEmitter();\n @Output() readonly subMenuMouseState = new EventEmitter();\n\n dir: Direction = 'ltr';\n\n ngOnInit(): void {\n this.dir = this.directionality.value;\n this.directionality.change?.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(direction => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n }\n\n setMouseState(state: boolean): void {\n if (!this.nzDisabled && this.nzTriggerSubMenuAction === 'hover') {\n this.subMenuMouseState.next(state);\n }\n }\n\n clickTitle(): void {\n if ((this.mode === 'inline' || this.nzTriggerSubMenuAction === 'click') && !this.nzDisabled) {\n this.subMenuMouseState.next(true);\n this.toggleSubMenu.emit();\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport { CdkOverlayOrigin, ConnectedOverlayPositionChange, OverlayModule } from '@angular/cdk/overlay';\nimport { Platform } from '@angular/cdk/platform';\nimport {\n AfterContentInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n ElementRef,\n EventEmitter,\n forwardRef,\n inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n QueryList,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { combineLatest, merge } from 'rxjs';\nimport { map, startWith, switchMap } from 'rxjs/operators';\n\nimport { NzNoAnimationDirective } from 'ng-zorro-antd/core/no-animation';\nimport { getPlacementName, POSITION_MAP, POSITION_TYPE_HORIZONTAL } from 'ng-zorro-antd/core/overlay';\n\nimport { NzMenuItemComponent } from './menu-item.component';\nimport { MenuService } from './menu.service';\nimport { NzIsMenuInsideDropDownToken } from './menu.token';\nimport { NzMenuModeType, NzMenuThemeType, NzSubmenuTrigger } from './menu.types';\nimport { NzSubmenuInlineChildComponent } from './submenu-inline-child.component';\nimport { NzSubmenuNoneInlineChildComponent } from './submenu-non-inline-child.component';\nimport { NzSubMenuTitleComponent } from './submenu-title.component';\nimport { NzSubmenuService } from './submenu.service';\n\nconst listOfVerticalPositions = [\n POSITION_MAP.rightTop,\n POSITION_MAP.right,\n POSITION_MAP.rightBottom,\n POSITION_MAP.leftTop,\n POSITION_MAP.left,\n POSITION_MAP.leftBottom\n];\nconst listOfHorizontalPositions = [\n POSITION_MAP.bottomLeft,\n POSITION_MAP.bottomRight,\n POSITION_MAP.topRight,\n POSITION_MAP.topLeft\n];\n\n@Component({\n selector: '[nz-submenu]',\n exportAs: 'nzSubmenu',\n providers: [NzSubmenuService],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n \n @if (!nzTitle) {\n \n }\n \n @if (mode === 'inline') {\n \n } @else {\n \n \n \n }\n\n \n \n \n `,\n host: {\n '[class.ant-dropdown-menu-submenu]': `isMenuInsideDropDown`,\n '[class.ant-dropdown-menu-submenu-disabled]': `isMenuInsideDropDown && nzDisabled`,\n '[class.ant-dropdown-menu-submenu-open]': `isMenuInsideDropDown && nzOpen`,\n '[class.ant-dropdown-menu-submenu-selected]': `isMenuInsideDropDown && isSelected`,\n '[class.ant-dropdown-menu-submenu-vertical]': `isMenuInsideDropDown && mode === 'vertical'`,\n '[class.ant-dropdown-menu-submenu-horizontal]': `isMenuInsideDropDown && mode === 'horizontal'`,\n '[class.ant-dropdown-menu-submenu-inline]': `isMenuInsideDropDown && mode === 'inline'`,\n '[class.ant-dropdown-menu-submenu-active]': `isMenuInsideDropDown && isActive`,\n '[class.ant-menu-submenu]': `!isMenuInsideDropDown`,\n '[class.ant-menu-submenu-disabled]': `!isMenuInsideDropDown && nzDisabled`,\n '[class.ant-menu-submenu-open]': `!isMenuInsideDropDown && nzOpen`,\n '[class.ant-menu-submenu-selected]': `!isMenuInsideDropDown && isSelected`,\n '[class.ant-menu-submenu-vertical]': `!isMenuInsideDropDown && mode === 'vertical'`,\n '[class.ant-menu-submenu-horizontal]': `!isMenuInsideDropDown && mode === 'horizontal'`,\n '[class.ant-menu-submenu-inline]': `!isMenuInsideDropDown && mode === 'inline'`,\n '[class.ant-menu-submenu-active]': `!isMenuInsideDropDown && isActive`,\n '[class.ant-menu-submenu-rtl]': `dir === 'rtl'`\n },\n imports: [\n NzSubMenuTitleComponent,\n NzSubmenuInlineChildComponent,\n NzNoAnimationDirective,\n NzSubmenuNoneInlineChildComponent,\n OverlayModule\n ]\n})\nexport class NzSubMenuComponent implements OnInit, AfterContentInit, OnChanges {\n public readonly nzSubmenuService = inject(NzSubmenuService);\n protected readonly isMenuInsideDropDown = inject(NzIsMenuInsideDropDownToken);\n protected readonly noAnimation = inject(NzNoAnimationDirective, { optional: true, host: true });\n private readonly directionality = inject(Directionality);\n private readonly destroyRef = inject(DestroyRef);\n private readonly nzMenuService = inject(MenuService);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly platform = inject(Platform);\n\n @Input() nzMenuClassName: string = '';\n @Input() nzPaddingLeft: number | null = null;\n @Input() nzTitle: string | TemplateRef | null = null;\n @Input() nzIcon: string | null = null;\n @Input() nzTriggerSubMenuAction: NzSubmenuTrigger = 'hover';\n @Input({ transform: booleanAttribute }) nzOpen = false;\n @Input({ transform: booleanAttribute }) nzDisabled = false;\n @Input() nzPlacement: POSITION_TYPE_HORIZONTAL = 'bottomLeft';\n @Output() readonly nzOpenChange = new EventEmitter();\n @ViewChild(CdkOverlayOrigin, { static: true, read: ElementRef }) cdkOverlayOrigin: ElementRef | null = null;\n // fix errors about circular dependency\n // Can't construct a query for the property ... since the query selector wasn't defined\n @ContentChildren(forwardRef(() => NzSubMenuComponent), { descendants: true })\n listOfNzSubMenuComponent: QueryList | null = null;\n @ContentChildren(NzMenuItemComponent, { descendants: true })\n listOfNzMenuItemDirective: QueryList | null = null;\n\n private level = this.nzSubmenuService.level;\n position = 'right';\n triggerWidth: number | null = null;\n theme: NzMenuThemeType = 'light';\n mode: NzMenuModeType = 'vertical';\n inlinePaddingLeft: number | null = null;\n overlayPositions = listOfVerticalPositions;\n isSelected = false;\n isActive = false;\n dir: Direction = 'ltr';\n\n /** set the submenu host open status directly **/\n setOpenStateWithoutDebounce(open: boolean): void {\n this.nzSubmenuService.setOpenStateWithoutDebounce(open);\n }\n\n toggleSubMenu(): void {\n this.setOpenStateWithoutDebounce(!this.nzOpen);\n }\n\n setMouseEnterState(value: boolean): void {\n this.isActive = value;\n if (this.mode !== 'inline') {\n this.nzSubmenuService.setMouseEnterTitleOrOverlayState(value);\n }\n }\n\n setTriggerWidth(): void {\n if (\n this.mode === 'horizontal' &&\n this.platform.isBrowser &&\n this.cdkOverlayOrigin &&\n this.nzPlacement === 'bottomLeft'\n ) {\n /** TODO: fast dom */\n this.triggerWidth = this.cdkOverlayOrigin!.nativeElement.getBoundingClientRect().width;\n }\n }\n\n onPositionChange(position: ConnectedOverlayPositionChange): void {\n const placement = getPlacementName(position);\n if (placement === 'rightTop' || placement === 'rightBottom' || placement === 'right') {\n this.position = 'right';\n } else if (placement === 'leftTop' || placement === 'leftBottom' || placement === 'left') {\n this.position = 'left';\n }\n }\n\n ngOnInit(): void {\n /** submenu theme update **/\n this.nzMenuService.theme$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(theme => {\n this.theme = theme;\n this.cdr.markForCheck();\n });\n\n /** submenu mode update **/\n this.nzSubmenuService.mode$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(mode => {\n this.mode = mode;\n if (mode === 'horizontal') {\n this.overlayPositions = [POSITION_MAP[this.nzPlacement], ...listOfHorizontalPositions];\n } else if (mode === 'vertical') {\n this.overlayPositions = listOfVerticalPositions;\n }\n this.cdr.markForCheck();\n });\n\n /** inlineIndent update **/\n combineLatest([this.nzSubmenuService.mode$, this.nzMenuService.inlineIndent$])\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(([mode, inlineIndent]) => {\n this.inlinePaddingLeft = mode === 'inline' ? this.level * inlineIndent : null;\n this.cdr.markForCheck();\n });\n\n /** current submenu open status **/\n this.nzSubmenuService.isCurrentSubMenuOpen$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(open => {\n this.isActive = open;\n if (open !== this.nzOpen) {\n this.setTriggerWidth();\n this.nzOpen = open;\n this.nzOpenChange.emit(this.nzOpen);\n this.cdr.markForCheck();\n }\n });\n\n this.dir = this.directionality.value;\n this.directionality.change?.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(direction => {\n this.dir = direction;\n this.cdr.markForCheck();\n });\n }\n\n ngAfterContentInit(): void {\n this.setTriggerWidth();\n const listOfNzMenuItemDirective = this.listOfNzMenuItemDirective;\n const changes = listOfNzMenuItemDirective!.changes;\n const mergedObservable = merge(changes, ...listOfNzMenuItemDirective!.map(menu => menu.selected$));\n changes\n .pipe(\n startWith(listOfNzMenuItemDirective),\n switchMap(() => mergedObservable),\n startWith(true),\n map(() => listOfNzMenuItemDirective!.some(e => e.nzSelected)),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe(selected => {\n this.isSelected = selected;\n this.cdr.markForCheck();\n });\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const { nzOpen } = changes;\n if (nzOpen) {\n this.nzSubmenuService.setOpenStateWithoutDebounce(this.nzOpen);\n this.setTriggerWidth();\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport {\n AfterContentInit,\n ChangeDetectorRef,\n ContentChildren,\n Directive,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n QueryList,\n SimpleChanges,\n booleanAttribute,\n inject,\n DestroyRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, combineLatest } from 'rxjs';\n\nimport { NzMenuItemComponent } from './menu-item.component';\nimport { MenuService } from './menu.service';\nimport { NzIsMenuInsideDropDownToken, NzMenuServiceLocalToken } from './menu.token';\nimport { NzMenuModeType, NzMenuThemeType } from './menu.types';\nimport { NzSubMenuComponent } from './submenu.component';\n\nexport function MenuServiceFactory(): MenuService {\n const serviceInsideDropDown = inject(MenuService, { skipSelf: true, optional: true });\n const serviceOutsideDropDown = inject(NzMenuServiceLocalToken);\n return serviceInsideDropDown ?? serviceOutsideDropDown;\n}\n\nexport function MenuDropDownTokenFactory(): boolean {\n const isMenuInsideDropDownToken = inject(NzIsMenuInsideDropDownToken, { skipSelf: true, optional: true });\n return isMenuInsideDropDownToken ?? false;\n}\n\n@Directive({\n selector: '[nz-menu]',\n exportAs: 'nzMenu',\n providers: [\n {\n provide: NzMenuServiceLocalToken,\n useClass: MenuService\n },\n /** use the top level service **/\n {\n provide: MenuService,\n useFactory: MenuServiceFactory\n },\n /** check if menu inside dropdown-menu component **/\n {\n provide: NzIsMenuInsideDropDownToken,\n useFactory: MenuDropDownTokenFactory\n }\n ],\n host: {\n '[class.ant-dropdown-menu]': `isMenuInsideDropDown`,\n '[class.ant-dropdown-menu-root]': `isMenuInsideDropDown`,\n '[class.ant-dropdown-menu-light]': `isMenuInsideDropDown && nzTheme === 'light'`,\n '[class.ant-dropdown-menu-dark]': `isMenuInsideDropDown && nzTheme === 'dark'`,\n '[class.ant-dropdown-menu-vertical]': `isMenuInsideDropDown && actualMode === 'vertical'`,\n '[class.ant-dropdown-menu-horizontal]': `isMenuInsideDropDown && actualMode === 'horizontal'`,\n '[class.ant-dropdown-menu-inline]': `isMenuInsideDropDown && actualMode === 'inline'`,\n '[class.ant-dropdown-menu-inline-collapsed]': `isMenuInsideDropDown && nzInlineCollapsed`,\n '[class.ant-menu]': `!isMenuInsideDropDown`,\n '[class.ant-menu-root]': `!isMenuInsideDropDown`,\n '[class.ant-menu-light]': `!isMenuInsideDropDown && nzTheme === 'light'`,\n '[class.ant-menu-dark]': `!isMenuInsideDropDown && nzTheme === 'dark'`,\n '[class.ant-menu-vertical]': `!isMenuInsideDropDown && actualMode === 'vertical'`,\n '[class.ant-menu-horizontal]': `!isMenuInsideDropDown && actualMode === 'horizontal'`,\n '[class.ant-menu-inline]': `!isMenuInsideDropDown && actualMode === 'inline'`,\n '[class.ant-menu-inline-collapsed]': `!isMenuInsideDropDown && nzInlineCollapsed`,\n '[class.ant-menu-rtl]': `dir === 'rtl'`\n }\n})\nexport class NzMenuDirective implements AfterContentInit, OnInit, OnChanges {\n private readonly nzMenuService = inject(MenuService);\n private readonly destroyRef = inject(DestroyRef);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly directionality = inject(Directionality);\n\n @ContentChildren(NzMenuItemComponent, { descendants: true })\n listOfNzMenuItemDirective!: QueryList;\n isMenuInsideDropDown = inject(NzIsMenuInsideDropDownToken);\n @ContentChildren(NzSubMenuComponent, { descendants: true }) listOfNzSubMenuComponent!: QueryList;\n @Input() nzInlineIndent = 24;\n @Input() nzTheme: NzMenuThemeType = 'light';\n @Input() nzMode: NzMenuModeType = 'vertical';\n @Input({ transform: booleanAttribute }) nzInlineCollapsed = false;\n @Input({ transform: booleanAttribute }) nzSelectable = !this.isMenuInsideDropDown;\n @Output() readonly nzClick = new EventEmitter();\n actualMode: NzMenuModeType = 'vertical';\n dir: Direction = 'ltr';\n private inlineCollapsed$ = new BehaviorSubject(this.nzInlineCollapsed);\n private mode$ = new BehaviorSubject(this.nzMode);\n private listOfOpenedNzSubMenuComponent: NzSubMenuComponent[] = [];\n\n setInlineCollapsed(inlineCollapsed: boolean): void {\n this.nzInlineCollapsed = inlineCollapsed;\n this.inlineCollapsed$.next(inlineCollapsed);\n }\n\n updateInlineCollapse(): void {\n if (this.listOfNzMenuItemDirective) {\n if (this.nzInlineCollapsed) {\n this.listOfOpenedNzSubMenuComponent = this.listOfNzSubMenuComponent.filter(submenu => submenu.nzOpen);\n this.listOfNzSubMenuComponent.forEach(submenu => submenu.setOpenStateWithoutDebounce(false));\n } else {\n this.listOfOpenedNzSubMenuComponent.forEach(submenu => submenu.setOpenStateWithoutDebounce(true));\n this.listOfOpenedNzSubMenuComponent = [];\n }\n }\n }\n\n ngOnInit(): void {\n combineLatest([this.inlineCollapsed$, this.mode$])\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(([inlineCollapsed, mode]) => {\n this.actualMode = inlineCollapsed ? 'vertical' : mode;\n this.nzMenuService.setMode(this.actualMode);\n this.cdr.markForCheck();\n });\n this.nzMenuService.descendantMenuItemClick$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(menu => {\n this.nzClick.emit(menu);\n if (this.nzSelectable && !menu.nzMatchRouter) {\n this.listOfNzMenuItemDirective.forEach(item => item.setSelectedState(item === menu));\n }\n });\n\n this.dir = this.directionality.value;\n this.directionality.change?.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(direction => {\n this.dir = direction;\n this.nzMenuService.setMode(this.actualMode);\n this.cdr.markForCheck();\n });\n }\n\n ngAfterContentInit(): void {\n this.inlineCollapsed$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.updateInlineCollapse();\n this.cdr.markForCheck();\n });\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const { nzInlineCollapsed, nzInlineIndent, nzTheme, nzMode } = changes;\n if (nzInlineCollapsed) {\n this.inlineCollapsed$.next(this.nzInlineCollapsed);\n }\n if (nzInlineIndent) {\n this.nzMenuService.setInlineIndent(this.nzInlineIndent);\n }\n if (nzTheme) {\n this.nzMenuService.setTheme(this.nzTheme);\n }\n if (nzMode) {\n this.mode$.next(this.nzMode);\n if (!nzMode.isFirstChange() && this.listOfNzSubMenuComponent) {\n this.listOfNzSubMenuComponent.forEach(submenu => submenu.setOpenStateWithoutDebounce(false));\n }\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n Input,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\n\nimport { NzIsMenuInsideDropDownToken } from './menu.token';\n\nexport function MenuGroupFactory(): boolean {\n const isMenuInsideDropDownToken = inject(NzIsMenuInsideDropDownToken, { optional: true, skipSelf: true });\n return isMenuInsideDropDownToken ?? false;\n}\n@Component({\n selector: '[nz-menu-group]',\n exportAs: 'nzMenuGroup',\n providers: [\n /** check if menu inside dropdown-menu component **/\n {\n provide: NzIsMenuInsideDropDownToken,\n useFactory: MenuGroupFactory\n }\n ],\n template: `\n \n {{ nzTitle }}\n @if (!nzTitle) {\n \n }\n \n \n `,\n imports: [NzOutletModule],\n host: {\n '[class.ant-menu-item-group]': '!isMenuInsideDropDown',\n '[class.ant-dropdown-menu-item-group]': 'isMenuInsideDropDown'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class NzMenuGroupComponent implements AfterViewInit {\n private readonly renderer = inject(Renderer2);\n protected readonly isMenuInsideDropDown = inject(NzIsMenuInsideDropDownToken);\n\n @Input() nzTitle?: string | TemplateRef;\n @ViewChild('titleElement') titleElement?: ElementRef;\n\n ngAfterViewInit(): void {\n const ulElement = this.titleElement!.nativeElement.nextElementSibling;\n if (ulElement) {\n /** add classname to ul **/\n const className = this.isMenuInsideDropDown ? 'ant-dropdown-menu-item-group-list' : 'ant-menu-item-group-list';\n this.renderer.addClass(ulElement, className);\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive } from '@angular/core';\n\n@Directive({\n selector: '[nz-menu-divider]',\n exportAs: 'nzMenuDivider',\n host: {\n class: 'ant-dropdown-menu-item-divider'\n }\n})\nexport class NzMenuDividerDirective {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { NzMenuDividerDirective } from './menu-divider.directive';\nimport { NzMenuGroupComponent } from './menu-group.component';\nimport { NzMenuItemComponent } from './menu-item.component';\nimport { NzMenuDirective } from './menu.directive';\nimport { NzSubmenuInlineChildComponent } from './submenu-inline-child.component';\nimport { NzSubmenuNoneInlineChildComponent } from './submenu-non-inline-child.component';\nimport { NzSubMenuTitleComponent } from './submenu-title.component';\nimport { NzSubMenuComponent } from './submenu.component';\n\n@NgModule({\n imports: [\n NzMenuDirective,\n NzMenuItemComponent,\n NzSubMenuComponent,\n NzMenuDividerDirective,\n NzMenuGroupComponent,\n NzSubMenuTitleComponent,\n NzSubmenuInlineChildComponent,\n NzSubmenuNoneInlineChildComponent\n ],\n exports: [NzMenuDirective, NzMenuItemComponent, NzSubMenuComponent, NzMenuDividerDirective, NzMenuGroupComponent]\n})\nexport class NzMenuModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport type NzMenuModeType = 'vertical' | 'horizontal' | 'inline';\nexport type NzMenuThemeType = 'light' | 'dark';\nexport type NzSubmenuTrigger = 'hover' | 'click';\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './menu.directive';\nexport * from './menu-group.component';\nexport * from './menu-divider.directive';\nexport * from './menu-item.component';\nexport * from './submenu.component';\nexport * from './submenu-title.component';\nexport * from './submenu-inline-child.component';\nexport * from './submenu-non-inline-child.component';\nexport * from './menu.module';\nexport * from './submenu.service';\nexport * from './menu.types';\nexport * from './menu.service';\nexport * from './menu.token';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}