@angular/cdk 19.1.0-next.2 → 19.1.0-next.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/a11y/index.d.ts +4 -3
- package/dialog/index.d.ts +1 -0
- package/drag-drop/index.d.ts +34 -3
- package/fesm2022/a11y.mjs +82 -81
- package/fesm2022/a11y.mjs.map +1 -1
- package/fesm2022/accordion.mjs +10 -10
- package/fesm2022/bidi.mjs +10 -10
- package/fesm2022/cdk.mjs +1 -1
- package/fesm2022/cdk.mjs.map +1 -1
- package/fesm2022/clipboard.mjs +10 -10
- package/fesm2022/collections.mjs +3 -3
- package/fesm2022/dialog.mjs +16 -15
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/drag-drop.mjs +153 -114
- package/fesm2022/drag-drop.mjs.map +1 -1
- package/fesm2022/layout.mjs +10 -10
- package/fesm2022/listbox.mjs +23 -29
- package/fesm2022/listbox.mjs.map +1 -1
- package/fesm2022/menu.mjs +131 -114
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/observers/private.mjs +8 -8
- package/fesm2022/observers/private.mjs.map +1 -1
- package/fesm2022/observers.mjs +13 -13
- package/fesm2022/overlay.mjs +89 -106
- package/fesm2022/overlay.mjs.map +1 -1
- package/fesm2022/platform.mjs +30 -9
- package/fesm2022/platform.mjs.map +1 -1
- package/fesm2022/portal.mjs +16 -16
- package/fesm2022/private.mjs +6 -6
- package/fesm2022/scrolling.mjs +64 -86
- package/fesm2022/scrolling.mjs.map +1 -1
- package/fesm2022/stepper.mjs +22 -22
- package/fesm2022/table.mjs +76 -76
- package/fesm2022/testing/testbed.mjs +83 -40
- package/fesm2022/testing/testbed.mjs.map +1 -1
- package/fesm2022/text-field.mjs +42 -52
- package/fesm2022/text-field.mjs.map +1 -1
- package/fesm2022/tree.mjs +25 -25
- package/listbox/index.d.ts +1 -5
- package/menu/index.d.ts +18 -19
- package/observers/private/index.d.ts +1 -0
- package/overlay/index.d.ts +12 -6
- package/package.json +1 -1
- package/platform/index.d.ts +10 -0
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-add/index.mjs +1 -1
- package/scrolling/index.d.ts +7 -14
- package/text-field/index.d.ts +4 -4
package/fesm2022/menu.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive, InjectionToken, Optional, SkipSelf, Inject, inject, Injectable, Injector, ViewContainerRef, EventEmitter, NgZone, ElementRef, ChangeDetectorRef, booleanAttribute, Input, Output, signal, computed, ContentChildren, NgModule } from '@angular/core';
|
|
2
|
+
import { Directive, InjectionToken, Optional, SkipSelf, Inject, inject, Injectable, Injector, ViewContainerRef, EventEmitter, NgZone, RendererFactory2, ElementRef, ChangeDetectorRef, Renderer2, booleanAttribute, Input, Output, signal, computed, ContentChildren, NgModule } from '@angular/core';
|
|
3
3
|
import { Overlay, OverlayConfig, STANDARD_DROPDOWN_BELOW_POSITIONS, STANDARD_DROPDOWN_ADJACENT_POSITIONS, OverlayModule } from '@angular/cdk/overlay';
|
|
4
4
|
import { ENTER, SPACE, UP_ARROW, hasModifierKey, DOWN_ARROW, LEFT_ARROW, RIGHT_ARROW, TAB, ESCAPE } from '@angular/cdk/keycodes';
|
|
5
|
-
import { startWith, debounceTime, distinctUntilChanged,
|
|
5
|
+
import { startWith, debounceTime, distinctUntilChanged, takeUntil, mergeMap, mapTo, mergeAll, switchMap, skipWhile, skip } from 'rxjs/operators';
|
|
6
6
|
import { UniqueSelectionDispatcher } from '@angular/cdk/collections';
|
|
7
7
|
import { _IdGenerator, InputModalityDetector, FocusKeyManager } from '@angular/cdk/a11y';
|
|
8
|
-
import { Subject, merge,
|
|
8
|
+
import { Subject, merge, partition } from 'rxjs';
|
|
9
9
|
import { TemplatePortal } from '@angular/cdk/portal';
|
|
10
10
|
import { Directionality } from '@angular/cdk/bidi';
|
|
11
11
|
import { _getEventTarget } from '@angular/cdk/platform';
|
|
@@ -14,10 +14,10 @@ import { _getEventTarget } from '@angular/cdk/platform';
|
|
|
14
14
|
* A grouping container for `CdkMenuItemRadio` instances, similar to a `role="radiogroup"` element.
|
|
15
15
|
*/
|
|
16
16
|
class CdkMenuGroup {
|
|
17
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
18
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.
|
|
17
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
18
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: CdkMenuGroup, isStandalone: true, selector: "[cdkMenuGroup]", host: { attributes: { "role": "group" }, classAttribute: "cdk-menu-group" }, providers: [{ provide: UniqueSelectionDispatcher, useClass: UniqueSelectionDispatcher }], exportAs: ["cdkMenuGroup"], ngImport: i0 });
|
|
19
19
|
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuGroup, decorators: [{
|
|
21
21
|
type: Directive,
|
|
22
22
|
args: [{
|
|
23
23
|
selector: '[cdkMenuGroup]',
|
|
@@ -174,10 +174,10 @@ class MenuStack {
|
|
|
174
174
|
setHasFocus(hasFocus) {
|
|
175
175
|
this._hasFocus.next(hasFocus);
|
|
176
176
|
}
|
|
177
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
178
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
177
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MenuStack, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
178
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MenuStack });
|
|
179
179
|
}
|
|
180
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
180
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MenuStack, decorators: [{
|
|
181
181
|
type: Injectable
|
|
182
182
|
}] });
|
|
183
183
|
|
|
@@ -286,10 +286,10 @@ class CdkMenuTriggerBase {
|
|
|
286
286
|
});
|
|
287
287
|
return this._childMenuInjector;
|
|
288
288
|
}
|
|
289
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
290
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.
|
|
289
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuTriggerBase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
290
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: CdkMenuTriggerBase, isStandalone: true, host: { properties: { "attr.aria-controls": "childMenu?.id", "attr.data-cdk-menu-stack-id": "menuStack.id" } }, ngImport: i0 });
|
|
291
291
|
}
|
|
292
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
292
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuTriggerBase, decorators: [{
|
|
293
293
|
type: Directive,
|
|
294
294
|
args: [{
|
|
295
295
|
host: {
|
|
@@ -362,8 +362,9 @@ function isWithinSubmenu(submenuPoints, m, b) {
|
|
|
362
362
|
* to submenu.
|
|
363
363
|
*/
|
|
364
364
|
class TargetMenuAim {
|
|
365
|
-
/** The Angular zone. */
|
|
366
365
|
_ngZone = inject(NgZone);
|
|
366
|
+
_renderer = inject(RendererFactory2).createRenderer(null, null);
|
|
367
|
+
_cleanupMousemove;
|
|
367
368
|
/** The last NUM_POINTS mouse move events. */
|
|
368
369
|
_points = [];
|
|
369
370
|
/** Reference to the root menu in which we are tracking mouse moves. */
|
|
@@ -375,6 +376,7 @@ class TargetMenuAim {
|
|
|
375
376
|
/** Emits when this service is destroyed. */
|
|
376
377
|
_destroyed = new Subject();
|
|
377
378
|
ngOnDestroy() {
|
|
379
|
+
this._cleanupMousemove?.();
|
|
378
380
|
this._destroyed.next();
|
|
379
381
|
this._destroyed.complete();
|
|
380
382
|
}
|
|
@@ -475,21 +477,24 @@ class TargetMenuAim {
|
|
|
475
477
|
}
|
|
476
478
|
/** Subscribe to the root menus mouse move events and update the tracked mouse points. */
|
|
477
479
|
_subscribeToMouseMoves() {
|
|
478
|
-
this.
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
this._points.
|
|
480
|
+
this._cleanupMousemove?.();
|
|
481
|
+
this._cleanupMousemove = this._ngZone.runOutsideAngular(() => {
|
|
482
|
+
let eventIndex = 0;
|
|
483
|
+
return this._renderer.listen(this._menu.nativeElement, 'mousemove', (event) => {
|
|
484
|
+
if (eventIndex % MOUSE_MOVE_SAMPLE_FREQUENCY === 0) {
|
|
485
|
+
this._points.push({ x: event.clientX, y: event.clientY });
|
|
486
|
+
if (this._points.length > NUM_POINTS) {
|
|
487
|
+
this._points.shift();
|
|
488
|
+
}
|
|
485
489
|
}
|
|
490
|
+
eventIndex++;
|
|
486
491
|
});
|
|
487
492
|
});
|
|
488
493
|
}
|
|
489
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
490
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
494
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: TargetMenuAim, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
495
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: TargetMenuAim });
|
|
491
496
|
}
|
|
492
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
497
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: TargetMenuAim, decorators: [{
|
|
493
498
|
type: Injectable
|
|
494
499
|
}] });
|
|
495
500
|
/**
|
|
@@ -497,10 +502,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.2",
|
|
|
497
502
|
* element with either the `cdkMenu` or `cdkMenuBar` directive and child menu items.
|
|
498
503
|
*/
|
|
499
504
|
class CdkTargetMenuAim {
|
|
500
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
501
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.
|
|
505
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkTargetMenuAim, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
506
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: CdkTargetMenuAim, isStandalone: true, selector: "[cdkTargetMenuAim]", providers: [{ provide: MENU_AIM, useClass: TargetMenuAim }], exportAs: ["cdkTargetMenuAim"], ngImport: i0 });
|
|
502
507
|
}
|
|
503
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
508
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkTargetMenuAim, decorators: [{
|
|
504
509
|
type: Directive,
|
|
505
510
|
args: [{
|
|
506
511
|
selector: '[cdkTargetMenuAim]',
|
|
@@ -543,6 +548,8 @@ class CdkMenuTrigger extends CdkMenuTriggerBase {
|
|
|
543
548
|
_changeDetectorRef = inject(ChangeDetectorRef);
|
|
544
549
|
_inputModalityDetector = inject(InputModalityDetector);
|
|
545
550
|
_directionality = inject(Directionality, { optional: true });
|
|
551
|
+
_renderer = inject(Renderer2);
|
|
552
|
+
_cleanupMouseenter;
|
|
546
553
|
/** The parent menu this trigger belongs to. */
|
|
547
554
|
_parentMenu = inject(CDK_MENU, { optional: true });
|
|
548
555
|
/** The menu aim service used by this menu. */
|
|
@@ -585,6 +592,10 @@ class CdkMenuTrigger extends CdkMenuTriggerBase {
|
|
|
585
592
|
getMenu() {
|
|
586
593
|
return this.childMenu;
|
|
587
594
|
}
|
|
595
|
+
ngOnDestroy() {
|
|
596
|
+
this._cleanupMouseenter();
|
|
597
|
+
super.ngOnDestroy();
|
|
598
|
+
}
|
|
588
599
|
/**
|
|
589
600
|
* Handles keyboard events for the menu item.
|
|
590
601
|
* @param event The keyboard event to handle
|
|
@@ -651,26 +662,24 @@ class CdkMenuTrigger extends CdkMenuTriggerBase {
|
|
|
651
662
|
* into.
|
|
652
663
|
*/
|
|
653
664
|
_subscribeToMouseEnter() {
|
|
654
|
-
this._ngZone.runOutsideAngular(() => {
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
return (
|
|
665
|
+
this._cleanupMouseenter = this._ngZone.runOutsideAngular(() => {
|
|
666
|
+
return this._renderer.listen(this._elementRef.nativeElement, 'mouseenter', () => {
|
|
667
|
+
if (
|
|
658
668
|
// Skip fake `mouseenter` events dispatched by touch devices.
|
|
659
669
|
this._inputModalityDetector.mostRecentModality !== 'touch' &&
|
|
660
670
|
!this.menuStack.isEmpty() &&
|
|
661
|
-
!this.isOpen())
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
this.
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
toggleMenus();
|
|
671
|
+
!this.isOpen()) {
|
|
672
|
+
// Closes any sibling menu items and opens the menu associated with this trigger.
|
|
673
|
+
const toggleMenus = () => this._ngZone.run(() => {
|
|
674
|
+
this._closeSiblingTriggers();
|
|
675
|
+
this.open();
|
|
676
|
+
});
|
|
677
|
+
if (this._menuAim) {
|
|
678
|
+
this._menuAim.toggle(toggleMenus);
|
|
679
|
+
}
|
|
680
|
+
else {
|
|
681
|
+
toggleMenus();
|
|
682
|
+
}
|
|
674
683
|
}
|
|
675
684
|
});
|
|
676
685
|
});
|
|
@@ -787,13 +796,13 @@ class CdkMenuTrigger extends CdkMenuTriggerBase {
|
|
|
787
796
|
element.setAttribute('type', 'button');
|
|
788
797
|
}
|
|
789
798
|
}
|
|
790
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
791
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.
|
|
799
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
800
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: CdkMenuTrigger, isStandalone: true, selector: "[cdkMenuTriggerFor]", inputs: { menuTemplateRef: ["cdkMenuTriggerFor", "menuTemplateRef"], menuPosition: ["cdkMenuPosition", "menuPosition"], menuData: ["cdkMenuTriggerData", "menuData"] }, outputs: { opened: "cdkMenuOpened", closed: "cdkMenuClosed" }, host: { listeners: { "focusin": "_setHasFocus(true)", "focusout": "_setHasFocus(false)", "keydown": "_toggleOnKeydown($event)", "click": "_handleClick()" }, properties: { "attr.aria-haspopup": "menuTemplateRef ? \"menu\" : null", "attr.aria-expanded": "menuTemplateRef == null ? null : isOpen()" }, classAttribute: "cdk-menu-trigger" }, providers: [
|
|
792
801
|
{ provide: MENU_TRIGGER, useExisting: CdkMenuTrigger },
|
|
793
802
|
PARENT_OR_NEW_MENU_STACK_PROVIDER,
|
|
794
803
|
], exportAs: ["cdkMenuTriggerFor"], usesInheritance: true, ngImport: i0 });
|
|
795
804
|
}
|
|
796
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
805
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuTrigger, decorators: [{
|
|
797
806
|
type: Directive,
|
|
798
807
|
args: [{
|
|
799
808
|
selector: '[cdkMenuTriggerFor]',
|
|
@@ -830,6 +839,8 @@ class CdkMenuItem {
|
|
|
830
839
|
_elementRef = inject(ElementRef);
|
|
831
840
|
_ngZone = inject(NgZone);
|
|
832
841
|
_inputModalityDetector = inject(InputModalityDetector);
|
|
842
|
+
_renderer = inject(Renderer2);
|
|
843
|
+
_cleanupMouseEnter;
|
|
833
844
|
/** The menu aim service used by this menu. */
|
|
834
845
|
_menuAim = inject(MENU_AIM, { optional: true });
|
|
835
846
|
/** The stack of menus this menu belongs to. */
|
|
@@ -871,6 +882,7 @@ class CdkMenuItem {
|
|
|
871
882
|
}
|
|
872
883
|
}
|
|
873
884
|
ngOnDestroy() {
|
|
885
|
+
this._cleanupMouseEnter?.();
|
|
874
886
|
this.destroyed.next();
|
|
875
887
|
this.destroyed.complete();
|
|
876
888
|
}
|
|
@@ -1012,20 +1024,17 @@ class CdkMenuItem {
|
|
|
1012
1024
|
_setupMouseEnter() {
|
|
1013
1025
|
if (!this._isStandaloneItem()) {
|
|
1014
1026
|
const closeOpenSiblings = () => this._ngZone.run(() => this._menuStack.closeSubMenuOf(this._parentMenu));
|
|
1015
|
-
this._ngZone.runOutsideAngular(() =>
|
|
1016
|
-
.pipe(filter(() => {
|
|
1017
|
-
return (
|
|
1027
|
+
this._cleanupMouseEnter = this._ngZone.runOutsideAngular(() => this._renderer.listen(this._elementRef.nativeElement, 'mouseenter', () => {
|
|
1018
1028
|
// Skip fake `mouseenter` events dispatched by touch devices.
|
|
1019
|
-
this._inputModalityDetector.mostRecentModality !== 'touch' &&
|
|
1029
|
+
if (this._inputModalityDetector.mostRecentModality !== 'touch' &&
|
|
1020
1030
|
!this._menuStack.isEmpty() &&
|
|
1021
|
-
!this.hasMenu)
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
closeOpenSiblings();
|
|
1031
|
+
!this.hasMenu) {
|
|
1032
|
+
if (this._menuAim) {
|
|
1033
|
+
this._menuAim.toggle(closeOpenSiblings);
|
|
1034
|
+
}
|
|
1035
|
+
else {
|
|
1036
|
+
closeOpenSiblings();
|
|
1037
|
+
}
|
|
1029
1038
|
}
|
|
1030
1039
|
}));
|
|
1031
1040
|
}
|
|
@@ -1045,10 +1054,10 @@ class CdkMenuItem {
|
|
|
1045
1054
|
element.setAttribute('type', 'button');
|
|
1046
1055
|
}
|
|
1047
1056
|
}
|
|
1048
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1049
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.1.0-next.
|
|
1057
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuItem, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
1058
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.1.0-next.3", type: CdkMenuItem, isStandalone: true, selector: "[cdkMenuItem]", inputs: { disabled: ["cdkMenuItemDisabled", "disabled", booleanAttribute], typeaheadLabel: ["cdkMenuitemTypeaheadLabel", "typeaheadLabel"] }, outputs: { triggered: "cdkMenuItemTriggered" }, host: { attributes: { "role": "menuitem" }, listeners: { "blur": "_resetTabIndex()", "focus": "_setTabIndex()", "click": "trigger()", "keydown": "_onKeydown($event)" }, properties: { "tabindex": "_tabindex", "attr.aria-disabled": "disabled || null" }, classAttribute: "cdk-menu-item" }, exportAs: ["cdkMenuItem"], ngImport: i0 });
|
|
1050
1059
|
}
|
|
1051
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1060
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuItem, decorators: [{
|
|
1052
1061
|
type: Directive,
|
|
1053
1062
|
args: [{
|
|
1054
1063
|
selector: '[cdkMenuItem]',
|
|
@@ -1080,21 +1089,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.2",
|
|
|
1080
1089
|
* observables which emit when the users mouse enters and leaves a tracked element.
|
|
1081
1090
|
*/
|
|
1082
1091
|
class PointerFocusTracker {
|
|
1092
|
+
_renderer;
|
|
1083
1093
|
_items;
|
|
1094
|
+
_eventCleanups;
|
|
1095
|
+
_itemsSubscription;
|
|
1084
1096
|
/** Emits when an element is moused into. */
|
|
1085
|
-
entered =
|
|
1097
|
+
entered = new Subject();
|
|
1086
1098
|
/** Emits when an element is moused out. */
|
|
1087
|
-
exited =
|
|
1099
|
+
exited = new Subject();
|
|
1088
1100
|
/** The element currently under mouse focus. */
|
|
1089
1101
|
activeElement;
|
|
1090
1102
|
/** The element previously under mouse focus. */
|
|
1091
1103
|
previousElement;
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
constructor(
|
|
1095
|
-
/** The list of items being tracked. */
|
|
1096
|
-
_items) {
|
|
1104
|
+
constructor(_renderer, _items) {
|
|
1105
|
+
this._renderer = _renderer;
|
|
1097
1106
|
this._items = _items;
|
|
1107
|
+
this._bindEvents();
|
|
1098
1108
|
this.entered.subscribe(element => (this.activeElement = element));
|
|
1099
1109
|
this.exited.subscribe(() => {
|
|
1100
1110
|
this.previousElement = this.activeElement;
|
|
@@ -1103,22 +1113,29 @@ class PointerFocusTracker {
|
|
|
1103
1113
|
}
|
|
1104
1114
|
/** Stop the managers listeners. */
|
|
1105
1115
|
destroy() {
|
|
1106
|
-
this.
|
|
1107
|
-
this.
|
|
1108
|
-
}
|
|
1109
|
-
/**
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1116
|
+
this._cleanupEvents();
|
|
1117
|
+
this._itemsSubscription?.unsubscribe();
|
|
1118
|
+
}
|
|
1119
|
+
/** Binds the enter/exit events on all the items. */
|
|
1120
|
+
_bindEvents() {
|
|
1121
|
+
// TODO(crisbeto): this can probably be simplified by binding a single event on a parent node.
|
|
1122
|
+
this._itemsSubscription = this._items.changes.pipe(startWith(this._items)).subscribe(() => {
|
|
1123
|
+
this._cleanupEvents();
|
|
1124
|
+
this._eventCleanups = [];
|
|
1125
|
+
this._items.forEach(item => {
|
|
1126
|
+
const element = item._elementRef.nativeElement;
|
|
1127
|
+
this._eventCleanups.push(this._renderer.listen(element, 'mouseenter', () => {
|
|
1128
|
+
this.entered.next(item);
|
|
1129
|
+
}), this._renderer.listen(element, 'mouseout', () => {
|
|
1130
|
+
this.exited.next(item);
|
|
1131
|
+
}));
|
|
1132
|
+
});
|
|
1133
|
+
});
|
|
1115
1134
|
}
|
|
1116
|
-
/**
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
_getItemPointerExits() {
|
|
1121
|
-
return defer(() => this._items.changes.pipe(startWith(this._items), mergeMap((list) => list.map(element => fromEvent(element._elementRef.nativeElement, 'mouseout').pipe(mapTo(element), takeUntil(this._items.changes)))), mergeAll()));
|
|
1135
|
+
/** Cleans up the currently-bound events. */
|
|
1136
|
+
_cleanupEvents() {
|
|
1137
|
+
this._eventCleanups?.forEach(cleanup => cleanup());
|
|
1138
|
+
this._eventCleanups = undefined;
|
|
1122
1139
|
}
|
|
1123
1140
|
}
|
|
1124
1141
|
|
|
@@ -1127,10 +1144,10 @@ class PointerFocusTracker {
|
|
|
1127
1144
|
* This class can be extended to create custom menu types.
|
|
1128
1145
|
*/
|
|
1129
1146
|
class CdkMenuBase extends CdkMenuGroup {
|
|
1147
|
+
ngZone = inject(NgZone);
|
|
1148
|
+
_renderer = inject(Renderer2);
|
|
1130
1149
|
/** The menu's native DOM host element. */
|
|
1131
1150
|
nativeElement = inject(ElementRef).nativeElement;
|
|
1132
|
-
/** The Angular zone. */
|
|
1133
|
-
ngZone = inject(NgZone);
|
|
1134
1151
|
/** The stack of menus this menu belongs to. */
|
|
1135
1152
|
menuStack = inject(MENU_STACK);
|
|
1136
1153
|
/** The menu aim service used by this menu. */
|
|
@@ -1268,15 +1285,15 @@ class CdkMenuBase extends CdkMenuGroup {
|
|
|
1268
1285
|
_setUpPointerTracker() {
|
|
1269
1286
|
if (this.menuAim) {
|
|
1270
1287
|
this.ngZone.runOutsideAngular(() => {
|
|
1271
|
-
this.pointerTracker = new PointerFocusTracker(this.items);
|
|
1288
|
+
this.pointerTracker = new PointerFocusTracker(this._renderer, this.items);
|
|
1272
1289
|
});
|
|
1273
1290
|
this.menuAim.initialize(this, this.pointerTracker);
|
|
1274
1291
|
}
|
|
1275
1292
|
}
|
|
1276
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1277
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.
|
|
1293
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuBase, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
1294
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: CdkMenuBase, isStandalone: true, inputs: { id: "id" }, host: { attributes: { "role": "menu" }, listeners: { "focus": "focusFirstItem()", "focusin": "menuStack.setHasFocus(true)", "focusout": "menuStack.setHasFocus(false)" }, properties: { "tabindex": "_getTabIndex()", "id": "id", "attr.aria-orientation": "orientation", "attr.data-cdk-menu-stack-id": "menuStack.id" } }, queries: [{ propertyName: "items", predicate: CdkMenuItem, descendants: true }], usesInheritance: true, ngImport: i0 });
|
|
1278
1295
|
}
|
|
1279
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1296
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuBase, decorators: [{
|
|
1280
1297
|
type: Directive,
|
|
1281
1298
|
args: [{
|
|
1282
1299
|
host: {
|
|
@@ -1388,14 +1405,14 @@ class CdkMenu extends CdkMenuBase {
|
|
|
1388
1405
|
.pipe(takeUntil(this.destroyed))
|
|
1389
1406
|
.subscribe(event => this._toggleMenuFocus(event));
|
|
1390
1407
|
}
|
|
1391
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1392
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.
|
|
1408
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenu, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
1409
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: CdkMenu, isStandalone: true, selector: "[cdkMenu]", outputs: { closed: "closed" }, host: { attributes: { "role": "menu" }, listeners: { "keydown": "_handleKeyEvent($event)" }, properties: { "class.cdk-menu-inline": "isInline" }, classAttribute: "cdk-menu" }, providers: [
|
|
1393
1410
|
{ provide: CdkMenuGroup, useExisting: CdkMenu },
|
|
1394
1411
|
{ provide: CDK_MENU, useExisting: CdkMenu },
|
|
1395
1412
|
PARENT_OR_NEW_INLINE_MENU_STACK_PROVIDER('vertical'),
|
|
1396
1413
|
], exportAs: ["cdkMenu"], usesInheritance: true, ngImport: i0 });
|
|
1397
1414
|
}
|
|
1398
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1415
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenu, decorators: [{
|
|
1399
1416
|
type: Directive,
|
|
1400
1417
|
args: [{
|
|
1401
1418
|
selector: '[cdkMenu]',
|
|
@@ -1506,14 +1523,14 @@ class CdkMenuBar extends CdkMenuBase {
|
|
|
1506
1523
|
.pipe(takeUntil(this.destroyed))
|
|
1507
1524
|
.subscribe(event => this._toggleOpenMenu(event));
|
|
1508
1525
|
}
|
|
1509
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1510
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.
|
|
1526
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuBar, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
1527
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: CdkMenuBar, isStandalone: true, selector: "[cdkMenuBar]", host: { attributes: { "role": "menubar" }, listeners: { "keydown": "_handleKeyEvent($event)" }, classAttribute: "cdk-menu-bar" }, providers: [
|
|
1511
1528
|
{ provide: CdkMenuGroup, useExisting: CdkMenuBar },
|
|
1512
1529
|
{ provide: CDK_MENU, useExisting: CdkMenuBar },
|
|
1513
1530
|
{ provide: MENU_STACK, useFactory: () => MenuStack.inline('horizontal') },
|
|
1514
1531
|
], exportAs: ["cdkMenuBar"], usesInheritance: true, ngImport: i0 });
|
|
1515
1532
|
}
|
|
1516
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1533
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuBar, decorators: [{
|
|
1517
1534
|
type: Directive,
|
|
1518
1535
|
args: [{
|
|
1519
1536
|
selector: '[cdkMenuBar]',
|
|
@@ -1537,10 +1554,10 @@ class CdkMenuItemSelectable extends CdkMenuItem {
|
|
|
1537
1554
|
checked = false;
|
|
1538
1555
|
/** Whether the item should close the menu if triggered by the spacebar. */
|
|
1539
1556
|
closeOnSpacebarTrigger = false;
|
|
1540
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1541
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.1.0-next.
|
|
1557
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuItemSelectable, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
1558
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.1.0-next.3", type: CdkMenuItemSelectable, isStandalone: true, inputs: { checked: ["cdkMenuItemChecked", "checked", booleanAttribute] }, host: { properties: { "attr.aria-checked": "!!checked", "attr.aria-disabled": "disabled || null" } }, usesInheritance: true, ngImport: i0 });
|
|
1542
1559
|
}
|
|
1543
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1560
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuItemSelectable, decorators: [{
|
|
1544
1561
|
type: Directive,
|
|
1545
1562
|
args: [{
|
|
1546
1563
|
host: {
|
|
@@ -1590,13 +1607,13 @@ class CdkMenuItemRadio extends CdkMenuItemSelectable {
|
|
|
1590
1607
|
this.checked = this._id === id;
|
|
1591
1608
|
});
|
|
1592
1609
|
}
|
|
1593
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1594
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.
|
|
1610
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuItemRadio, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
1611
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: CdkMenuItemRadio, isStandalone: true, selector: "[cdkMenuItemRadio]", host: { attributes: { "role": "menuitemradio" }, properties: { "class.cdk-menu-item-radio": "true" } }, providers: [
|
|
1595
1612
|
{ provide: CdkMenuItemSelectable, useExisting: CdkMenuItemRadio },
|
|
1596
1613
|
{ provide: CdkMenuItem, useExisting: CdkMenuItemSelectable },
|
|
1597
1614
|
], exportAs: ["cdkMenuItemRadio"], usesInheritance: true, ngImport: i0 });
|
|
1598
1615
|
}
|
|
1599
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1616
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuItemRadio, decorators: [{
|
|
1600
1617
|
type: Directive,
|
|
1601
1618
|
args: [{
|
|
1602
1619
|
selector: '[cdkMenuItemRadio]',
|
|
@@ -1628,13 +1645,13 @@ class CdkMenuItemCheckbox extends CdkMenuItemSelectable {
|
|
|
1628
1645
|
this.checked = !this.checked;
|
|
1629
1646
|
}
|
|
1630
1647
|
}
|
|
1631
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1632
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.
|
|
1648
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuItemCheckbox, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
1649
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: CdkMenuItemCheckbox, isStandalone: true, selector: "[cdkMenuItemCheckbox]", host: { attributes: { "role": "menuitemcheckbox" }, properties: { "class.cdk-menu-item-checkbox": "true" } }, providers: [
|
|
1633
1650
|
{ provide: CdkMenuItemSelectable, useExisting: CdkMenuItemCheckbox },
|
|
1634
1651
|
{ provide: CdkMenuItem, useExisting: CdkMenuItemSelectable },
|
|
1635
1652
|
], exportAs: ["cdkMenuItemCheckbox"], usesInheritance: true, ngImport: i0 });
|
|
1636
1653
|
}
|
|
1637
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1654
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuItemCheckbox, decorators: [{
|
|
1638
1655
|
type: Directive,
|
|
1639
1656
|
args: [{
|
|
1640
1657
|
selector: '[cdkMenuItemCheckbox]',
|
|
@@ -1672,10 +1689,10 @@ class ContextMenuTracker {
|
|
|
1672
1689
|
ContextMenuTracker._openContextMenuTrigger = trigger;
|
|
1673
1690
|
}
|
|
1674
1691
|
}
|
|
1675
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1676
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1692
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: ContextMenuTracker, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1693
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: ContextMenuTracker, providedIn: 'root' });
|
|
1677
1694
|
}
|
|
1678
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1695
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: ContextMenuTracker, decorators: [{
|
|
1679
1696
|
type: Injectable,
|
|
1680
1697
|
args: [{ providedIn: 'root' }]
|
|
1681
1698
|
}] });
|
|
@@ -1825,13 +1842,13 @@ class CdkContextMenuTrigger extends CdkMenuTriggerBase {
|
|
|
1825
1842
|
this._subscribeToOutsideClicks(userEvent);
|
|
1826
1843
|
}
|
|
1827
1844
|
}
|
|
1828
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1829
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.1.0-next.
|
|
1845
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkContextMenuTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
1846
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.1.0-next.3", type: CdkContextMenuTrigger, isStandalone: true, selector: "[cdkContextMenuTriggerFor]", inputs: { menuTemplateRef: ["cdkContextMenuTriggerFor", "menuTemplateRef"], menuPosition: ["cdkContextMenuPosition", "menuPosition"], menuData: ["cdkContextMenuTriggerData", "menuData"], disabled: ["cdkContextMenuDisabled", "disabled", booleanAttribute] }, outputs: { opened: "cdkContextMenuOpened", closed: "cdkContextMenuClosed" }, host: { listeners: { "contextmenu": "_openOnContextMenu($event)" }, properties: { "attr.data-cdk-menu-stack-id": "null" } }, providers: [
|
|
1830
1847
|
{ provide: MENU_TRIGGER, useExisting: CdkContextMenuTrigger },
|
|
1831
1848
|
{ provide: MENU_STACK, useClass: MenuStack },
|
|
1832
1849
|
], exportAs: ["cdkContextMenuTriggerFor"], usesInheritance: true, ngImport: i0 });
|
|
1833
1850
|
}
|
|
1834
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1851
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkContextMenuTrigger, decorators: [{
|
|
1835
1852
|
type: Directive,
|
|
1836
1853
|
args: [{
|
|
1837
1854
|
selector: '[cdkContextMenuTriggerFor]',
|
|
@@ -1869,8 +1886,8 @@ const MENU_DIRECTIVES = [
|
|
|
1869
1886
|
];
|
|
1870
1887
|
/** Module that declares components and directives for the CDK menu. */
|
|
1871
1888
|
class CdkMenuModule {
|
|
1872
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1873
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.0-next.
|
|
1889
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1890
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuModule, imports: [OverlayModule, CdkMenuBar,
|
|
1874
1891
|
CdkMenu,
|
|
1875
1892
|
CdkMenuItem,
|
|
1876
1893
|
CdkMenuItemRadio,
|
|
@@ -1887,9 +1904,9 @@ class CdkMenuModule {
|
|
|
1887
1904
|
CdkMenuGroup,
|
|
1888
1905
|
CdkContextMenuTrigger,
|
|
1889
1906
|
CdkTargetMenuAim] });
|
|
1890
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1907
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuModule, imports: [OverlayModule] });
|
|
1891
1908
|
}
|
|
1892
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.
|
|
1909
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: CdkMenuModule, decorators: [{
|
|
1893
1910
|
type: NgModule,
|
|
1894
1911
|
args: [{
|
|
1895
1912
|
imports: [OverlayModule, ...MENU_DIRECTIVES],
|