Skip to content

Commit a273032

Browse files
authored
refactor(cdk/menu): convert all directives to standalone (#25904)
Converts all of the `@angular/cdk/menu` directives to `standalone` so that they can be used as host directives.
1 parent 0950eb0 commit a273032

File tree

11 files changed

+23
-16
lines changed

11 files changed

+23
-16
lines changed

src/cdk/menu/context-menu-trigger.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ export type ContextMenuCoordinates = {x: number; y: number};
5757
@Directive({
5858
selector: '[cdkContextMenuTriggerFor]',
5959
exportAs: 'cdkContextMenuTriggerFor',
60+
standalone: true,
6061
host: {
6162
'[attr.data-cdk-menu-stack-id]': 'null',
6263
'(contextmenu)': '_openOnContextMenu($event)',

src/cdk/menu/menu-aim.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -254,6 +254,7 @@ export class TargetMenuAim implements MenuAim, OnDestroy {
254254
@Directive({
255255
selector: '[cdkTargetMenuAim]',
256256
exportAs: 'cdkTargetMenuAim',
257+
standalone: true,
257258
providers: [{provide: MENU_AIM, useClass: TargetMenuAim}],
258259
})
259260
export class CdkTargetMenuAim {}

src/cdk/menu/menu-bar.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import {CdkMenuBase} from './menu-base';
3131
@Directive({
3232
selector: '[cdkMenuBar]',
3333
exportAs: 'cdkMenuBar',
34+
standalone: true,
3435
host: {
3536
'role': 'menubar',
3637
'class': 'cdk-menu-bar',

src/cdk/menu/menu-group.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import {UniqueSelectionDispatcher} from '@angular/cdk/collections';
1515
@Directive({
1616
selector: '[cdkMenuGroup]',
1717
exportAs: 'cdkMenuGroup',
18+
standalone: true,
1819
host: {
1920
'role': 'group',
2021
'class': 'cdk-menu-group',

src/cdk/menu/menu-item-checkbox.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import {CdkMenuItem} from './menu-item';
1717
@Directive({
1818
selector: '[cdkMenuItemCheckbox]',
1919
exportAs: 'cdkMenuItemCheckbox',
20+
standalone: true,
2021
host: {
2122
'role': 'menuitemcheckbox',
2223
'[class.cdk-menu-item-checkbox]': 'true',

src/cdk/menu/menu-item-radio.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ let nextId = 0;
2222
@Directive({
2323
selector: '[cdkMenuItemRadio]',
2424
exportAs: 'cdkMenuItemRadio',
25+
standalone: true,
2526
host: {
2627
'role': 'menuitemradio',
2728
'[class.cdk-menu-item-radio]': 'true',

src/cdk/menu/menu-item.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ import {MENU_AIM, Toggler} from './menu-aim';
3636
@Directive({
3737
selector: '[cdkMenuItem]',
3838
exportAs: 'cdkMenuItem',
39+
standalone: true,
3940
host: {
4041
'role': 'menuitem',
4142
'class': 'cdk-menu-item',

src/cdk/menu/menu-module.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,7 @@ import {CdkMenuTrigger} from './menu-trigger';
1818
import {CdkContextMenuTrigger} from './context-menu-trigger';
1919
import {CdkTargetMenuAim} from './menu-aim';
2020

21-
/** The list of components and directives that should be declared and exported from this module. */
22-
const EXPORTED_DECLARATIONS = [
21+
const MENU_DIRECTIVES = [
2322
CdkMenuBar,
2423
CdkMenu,
2524
CdkMenuItem,
@@ -33,8 +32,7 @@ const EXPORTED_DECLARATIONS = [
3332

3433
/** Module that declares components and directives for the CDK menu. */
3534
@NgModule({
36-
imports: [OverlayModule],
37-
exports: EXPORTED_DECLARATIONS,
38-
declarations: EXPORTED_DECLARATIONS,
35+
imports: [OverlayModule, ...MENU_DIRECTIVES],
36+
exports: MENU_DIRECTIVES,
3937
})
4038
export class CdkMenuModule {}

src/cdk/menu/menu-trigger.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ import {CdkMenuTriggerBase, MENU_TRIGGER} from './menu-trigger-base';
4242
@Directive({
4343
selector: '[cdkMenuTriggerFor]',
4444
exportAs: 'cdkMenuTriggerFor',
45+
standalone: true,
4546
host: {
4647
'class': 'cdk-menu-trigger',
4748
'aria-haspopup': 'menu',

src/cdk/menu/menu.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import {CdkMenuBase} from './menu-base';
2525
@Directive({
2626
selector: '[cdkMenu]',
2727
exportAs: 'cdkMenu',
28+
standalone: true,
2829
host: {
2930
'role': 'menu',
3031
'class': 'cdk-menu',

tools/public_api_guard/cdk/menu.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import { FocusableOption } from '@angular/cdk/a11y';
1414
import { FocusKeyManager } from '@angular/cdk/a11y';
1515
import { FocusOrigin } from '@angular/cdk/a11y';
1616
import * as i0 from '@angular/core';
17-
import * as i10 from '@angular/cdk/overlay';
17+
import * as i1 from '@angular/cdk/overlay';
1818
import { InjectionToken } from '@angular/core';
1919
import { Injector } from '@angular/core';
2020
import { NgZone } from '@angular/core';
@@ -40,7 +40,7 @@ export class CdkContextMenuTrigger extends CdkMenuTriggerBase implements OnDestr
4040
open(coordinates: ContextMenuCoordinates): void;
4141
_openOnContextMenu(event: MouseEvent): void;
4242
// (undocumented)
43-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkContextMenuTrigger, "[cdkContextMenuTriggerFor]", ["cdkContextMenuTriggerFor"], { "menuTemplateRef": "cdkContextMenuTriggerFor"; "menuPosition": "cdkContextMenuPosition"; "menuData": "cdkContextMenuTriggerData"; "disabled": "cdkContextMenuDisabled"; }, { "opened": "cdkContextMenuOpened"; "closed": "cdkContextMenuClosed"; }, never, never, false, never>;
43+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkContextMenuTrigger, "[cdkContextMenuTriggerFor]", ["cdkContextMenuTriggerFor"], { "menuTemplateRef": "cdkContextMenuTriggerFor"; "menuPosition": "cdkContextMenuPosition"; "menuData": "cdkContextMenuTriggerData"; "disabled": "cdkContextMenuDisabled"; }, { "opened": "cdkContextMenuOpened"; "closed": "cdkContextMenuClosed"; }, never, never, true, never>;
4444
// (undocumented)
4545
static ɵfac: i0.ɵɵFactoryDeclaration<CdkContextMenuTrigger, never>;
4646
}
@@ -57,7 +57,7 @@ export class CdkMenu extends CdkMenuBase implements AfterContentInit, OnDestroy
5757
ngOnDestroy(): void;
5858
readonly orientation = "vertical";
5959
// (undocumented)
60-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenu, "[cdkMenu]", ["cdkMenu"], {}, { "closed": "closed"; }, never, never, false, never>;
60+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenu, "[cdkMenu]", ["cdkMenu"], {}, { "closed": "closed"; }, never, never, true, never>;
6161
// (undocumented)
6262
static ɵfac: i0.ɵɵFactoryDeclaration<CdkMenu, never>;
6363
}
@@ -70,7 +70,7 @@ export class CdkMenuBar extends CdkMenuBase implements AfterContentInit {
7070
ngAfterContentInit(): void;
7171
readonly orientation = "horizontal";
7272
// (undocumented)
73-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuBar, "[cdkMenuBar]", ["cdkMenuBar"], {}, {}, never, never, false, never>;
73+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuBar, "[cdkMenuBar]", ["cdkMenuBar"], {}, {}, never, never, true, never>;
7474
// (undocumented)
7575
static ɵfac: i0.ɵɵFactoryDeclaration<CdkMenuBar, never>;
7676
}
@@ -109,7 +109,7 @@ export abstract class CdkMenuBase extends CdkMenuGroup implements Menu, AfterCon
109109
// @public
110110
export class CdkMenuGroup {
111111
// (undocumented)
112-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuGroup, "[cdkMenuGroup]", ["cdkMenuGroup"], {}, {}, never, never, false, never>;
112+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuGroup, "[cdkMenuGroup]", ["cdkMenuGroup"], {}, {}, never, never, true, never>;
113113
// (undocumented)
114114
static ɵfac: i0.ɵɵFactoryDeclaration<CdkMenuGroup, never>;
115115
}
@@ -142,7 +142,7 @@ export class CdkMenuItem implements FocusableOption, FocusableElement, Toggler,
142142
readonly triggered: EventEmitter<void>;
143143
typeaheadLabel: string | null;
144144
// (undocumented)
145-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuItem, "[cdkMenuItem]", ["cdkMenuItem"], { "disabled": "cdkMenuItemDisabled"; "typeaheadLabel": "cdkMenuitemTypeaheadLabel"; }, { "triggered": "cdkMenuItemTriggered"; }, never, never, false, never>;
145+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuItem, "[cdkMenuItem]", ["cdkMenuItem"], { "disabled": "cdkMenuItemDisabled"; "typeaheadLabel": "cdkMenuitemTypeaheadLabel"; }, { "triggered": "cdkMenuItemTriggered"; }, never, never, true, never>;
146146
// (undocumented)
147147
static ɵfac: i0.ɵɵFactoryDeclaration<CdkMenuItem, never>;
148148
}
@@ -153,7 +153,7 @@ export class CdkMenuItemCheckbox extends CdkMenuItemSelectable {
153153
keepOpen: boolean;
154154
}): void;
155155
// (undocumented)
156-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuItemCheckbox, "[cdkMenuItemCheckbox]", ["cdkMenuItemCheckbox"], {}, {}, never, never, false, never>;
156+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuItemCheckbox, "[cdkMenuItemCheckbox]", ["cdkMenuItemCheckbox"], {}, {}, never, never, true, never>;
157157
// (undocumented)
158158
static ɵfac: i0.ɵɵFactoryDeclaration<CdkMenuItemCheckbox, never>;
159159
}
@@ -167,7 +167,7 @@ export class CdkMenuItemRadio extends CdkMenuItemSelectable implements OnDestroy
167167
keepOpen: boolean;
168168
}): void;
169169
// (undocumented)
170-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuItemRadio, "[cdkMenuItemRadio]", ["cdkMenuItemRadio"], {}, {}, never, never, false, never>;
170+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuItemRadio, "[cdkMenuItemRadio]", ["cdkMenuItemRadio"], {}, {}, never, never, true, never>;
171171
// (undocumented)
172172
static ɵfac: i0.ɵɵFactoryDeclaration<CdkMenuItemRadio, never>;
173173
}
@@ -190,7 +190,7 @@ export class CdkMenuModule {
190190
// (undocumented)
191191
static ɵinj: i0.ɵɵInjectorDeclaration<CdkMenuModule>;
192192
// (undocumented)
193-
static ɵmod: i0.ɵɵNgModuleDeclaration<CdkMenuModule, [typeof i1.CdkMenuBar, typeof i2.CdkMenu, typeof i3.CdkMenuItem, typeof i4.CdkMenuItemRadio, typeof i5.CdkMenuItemCheckbox, typeof i6.CdkMenuTrigger, typeof i7.CdkMenuGroup, typeof i8.CdkContextMenuTrigger, typeof i9.CdkTargetMenuAim], [typeof i10.OverlayModule], [typeof i1.CdkMenuBar, typeof i2.CdkMenu, typeof i3.CdkMenuItem, typeof i4.CdkMenuItemRadio, typeof i5.CdkMenuItemCheckbox, typeof i6.CdkMenuTrigger, typeof i7.CdkMenuGroup, typeof i8.CdkContextMenuTrigger, typeof i9.CdkTargetMenuAim]>;
193+
static ɵmod: i0.ɵɵNgModuleDeclaration<CdkMenuModule, never, [typeof i1.OverlayModule, typeof i2.CdkMenuBar, typeof i3.CdkMenu, typeof i4.CdkMenuItem, typeof i5.CdkMenuItemRadio, typeof i6.CdkMenuItemCheckbox, typeof i7.CdkMenuTrigger, typeof i8.CdkMenuGroup, typeof i9.CdkContextMenuTrigger, typeof i10.CdkTargetMenuAim], [typeof i2.CdkMenuBar, typeof i3.CdkMenu, typeof i4.CdkMenuItem, typeof i5.CdkMenuItemRadio, typeof i6.CdkMenuItemCheckbox, typeof i7.CdkMenuTrigger, typeof i8.CdkMenuGroup, typeof i9.CdkContextMenuTrigger, typeof i10.CdkTargetMenuAim]>;
194194
}
195195

196196
// @public
@@ -203,7 +203,7 @@ export class CdkMenuTrigger extends CdkMenuTriggerBase implements OnDestroy {
203203
toggle(): void;
204204
_toggleOnKeydown(event: KeyboardEvent): void;
205205
// (undocumented)
206-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuTrigger, "[cdkMenuTriggerFor]", ["cdkMenuTriggerFor"], { "menuTemplateRef": "cdkMenuTriggerFor"; "menuPosition": "cdkMenuPosition"; "menuData": "cdkMenuTriggerData"; }, { "opened": "cdkMenuOpened"; "closed": "cdkMenuClosed"; }, never, never, false, never>;
206+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkMenuTrigger, "[cdkMenuTriggerFor]", ["cdkMenuTriggerFor"], { "menuTemplateRef": "cdkMenuTriggerFor"; "menuPosition": "cdkMenuPosition"; "menuData": "cdkMenuTriggerData"; }, { "opened": "cdkMenuOpened"; "closed": "cdkMenuClosed"; }, never, never, true, never>;
207207
// (undocumented)
208208
static ɵfac: i0.ɵɵFactoryDeclaration<CdkMenuTrigger, never>;
209209
}
@@ -237,7 +237,7 @@ export abstract class CdkMenuTriggerBase implements OnDestroy {
237237
// @public
238238
export class CdkTargetMenuAim {
239239
// (undocumented)
240-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkTargetMenuAim, "[cdkTargetMenuAim]", ["cdkTargetMenuAim"], {}, {}, never, never, false, never>;
240+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkTargetMenuAim, "[cdkTargetMenuAim]", ["cdkTargetMenuAim"], {}, {}, never, never, true, never>;
241241
// (undocumented)
242242
static ɵfac: i0.ɵɵFactoryDeclaration<CdkTargetMenuAim, never>;
243243
}

0 commit comments

Comments
 (0)