Skip to content

Commit 52c2505

Browse files
committed
refactor(cdk/overlay): switch directives to standalone (#26328)
Converts the overlay directives to standalone so that they can be used as host directives. Fixes #26326. (cherry picked from commit 7ab4b1e)
1 parent 41cfc6e commit 52c2505

File tree

3 files changed

+9
-8
lines changed

3 files changed

+9
-8
lines changed

src/cdk/overlay/overlay-directives.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ export const CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY = new InjectionToken<() => Sc
7878
@Directive({
7979
selector: '[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]',
8080
exportAs: 'cdkOverlayOrigin',
81+
standalone: true,
8182
})
8283
export class CdkOverlayOrigin {
8384
constructor(
@@ -93,6 +94,7 @@ export class CdkOverlayOrigin {
9394
@Directive({
9495
selector: '[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]',
9596
exportAs: 'cdkConnectedOverlay',
97+
standalone: true,
9698
})
9799
export class CdkConnectedOverlay implements OnDestroy, OnChanges {
98100
private _overlayRef: OverlayRef;

src/cdk/overlay/overlay-module.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,8 @@ import {
1818
} from './overlay-directives';
1919

2020
@NgModule({
21-
imports: [BidiModule, PortalModule, ScrollingModule],
21+
imports: [BidiModule, PortalModule, ScrollingModule, CdkConnectedOverlay, CdkOverlayOrigin],
2222
exports: [CdkConnectedOverlay, CdkOverlayOrigin, ScrollingModule],
23-
declarations: [CdkConnectedOverlay, CdkOverlayOrigin],
2423
providers: [Overlay, CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER],
2524
})
2625
export class OverlayModule {}

tools/public_api_guard/cdk/overlay.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ import { ElementRef } from '@angular/core';
1616
import { EmbeddedViewRef } from '@angular/core';
1717
import { EventEmitter } from '@angular/core';
1818
import * as i0 from '@angular/core';
19-
import * as i2 from '@angular/cdk/bidi';
20-
import * as i3 from '@angular/cdk/portal';
21-
import * as i4 from '@angular/cdk/scrolling';
19+
import * as i1 from '@angular/cdk/bidi';
20+
import * as i2 from '@angular/cdk/portal';
21+
import * as i3 from '@angular/cdk/scrolling';
2222
import { InjectionToken } from '@angular/core';
2323
import { Injector } from '@angular/core';
2424
import { Location as Location_2 } from '@angular/common';
@@ -89,7 +89,7 @@ export class CdkConnectedOverlay implements OnDestroy, OnChanges {
8989
viewportMargin: number;
9090
width: number | string;
9191
// (undocumented)
92-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkConnectedOverlay, "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", ["cdkConnectedOverlay"], { "origin": "cdkConnectedOverlayOrigin"; "positions": "cdkConnectedOverlayPositions"; "positionStrategy": "cdkConnectedOverlayPositionStrategy"; "offsetX": "cdkConnectedOverlayOffsetX"; "offsetY": "cdkConnectedOverlayOffsetY"; "width": "cdkConnectedOverlayWidth"; "height": "cdkConnectedOverlayHeight"; "minWidth": "cdkConnectedOverlayMinWidth"; "minHeight": "cdkConnectedOverlayMinHeight"; "backdropClass": "cdkConnectedOverlayBackdropClass"; "panelClass": "cdkConnectedOverlayPanelClass"; "viewportMargin": "cdkConnectedOverlayViewportMargin"; "scrollStrategy": "cdkConnectedOverlayScrollStrategy"; "open": "cdkConnectedOverlayOpen"; "disableClose": "cdkConnectedOverlayDisableClose"; "transformOriginSelector": "cdkConnectedOverlayTransformOriginOn"; "hasBackdrop": "cdkConnectedOverlayHasBackdrop"; "lockPosition": "cdkConnectedOverlayLockPosition"; "flexibleDimensions": "cdkConnectedOverlayFlexibleDimensions"; "growAfterOpen": "cdkConnectedOverlayGrowAfterOpen"; "push": "cdkConnectedOverlayPush"; }, { "backdropClick": "backdropClick"; "positionChange": "positionChange"; "attach": "attach"; "detach": "detach"; "overlayKeydown": "overlayKeydown"; "overlayOutsideClick": "overlayOutsideClick"; }, never, never, false, never>;
92+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkConnectedOverlay, "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", ["cdkConnectedOverlay"], { "origin": "cdkConnectedOverlayOrigin"; "positions": "cdkConnectedOverlayPositions"; "positionStrategy": "cdkConnectedOverlayPositionStrategy"; "offsetX": "cdkConnectedOverlayOffsetX"; "offsetY": "cdkConnectedOverlayOffsetY"; "width": "cdkConnectedOverlayWidth"; "height": "cdkConnectedOverlayHeight"; "minWidth": "cdkConnectedOverlayMinWidth"; "minHeight": "cdkConnectedOverlayMinHeight"; "backdropClass": "cdkConnectedOverlayBackdropClass"; "panelClass": "cdkConnectedOverlayPanelClass"; "viewportMargin": "cdkConnectedOverlayViewportMargin"; "scrollStrategy": "cdkConnectedOverlayScrollStrategy"; "open": "cdkConnectedOverlayOpen"; "disableClose": "cdkConnectedOverlayDisableClose"; "transformOriginSelector": "cdkConnectedOverlayTransformOriginOn"; "hasBackdrop": "cdkConnectedOverlayHasBackdrop"; "lockPosition": "cdkConnectedOverlayLockPosition"; "flexibleDimensions": "cdkConnectedOverlayFlexibleDimensions"; "growAfterOpen": "cdkConnectedOverlayGrowAfterOpen"; "push": "cdkConnectedOverlayPush"; }, { "backdropClick": "backdropClick"; "positionChange": "positionChange"; "attach": "attach"; "detach": "detach"; "overlayKeydown": "overlayKeydown"; "overlayOutsideClick": "overlayOutsideClick"; }, never, never, true, never>;
9393
// (undocumented)
9494
static ɵfac: i0.ɵɵFactoryDeclaration<CdkConnectedOverlay, [null, null, null, null, { optional: true; }]>;
9595
}
@@ -100,7 +100,7 @@ export class CdkOverlayOrigin {
100100
elementRef: ElementRef);
101101
elementRef: ElementRef;
102102
// (undocumented)
103-
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkOverlayOrigin, "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", ["cdkOverlayOrigin"], {}, {}, never, never, false, never>;
103+
static ɵdir: i0.ɵɵDirectiveDeclaration<CdkOverlayOrigin, "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", ["cdkOverlayOrigin"], {}, {}, never, never, true, never>;
104104
// (undocumented)
105105
static ɵfac: i0.ɵɵFactoryDeclaration<CdkOverlayOrigin, never>;
106106
}
@@ -324,7 +324,7 @@ export class OverlayModule {
324324
// (undocumented)
325325
static ɵinj: i0.ɵɵInjectorDeclaration<OverlayModule>;
326326
// (undocumented)
327-
static ɵmod: i0.ɵɵNgModuleDeclaration<OverlayModule, [typeof i1.CdkConnectedOverlay, typeof i1.CdkOverlayOrigin], [typeof i2.BidiModule, typeof i3.PortalModule, typeof i4.ScrollingModule], [typeof i1.CdkConnectedOverlay, typeof i1.CdkOverlayOrigin, typeof i4.ScrollingModule]>;
327+
static ɵmod: i0.ɵɵNgModuleDeclaration<OverlayModule, never, [typeof i1.BidiModule, typeof i2.PortalModule, typeof i3.ScrollingModule, typeof i4.CdkConnectedOverlay, typeof i4.CdkOverlayOrigin], [typeof i4.CdkConnectedOverlay, typeof i4.CdkOverlayOrigin, typeof i3.ScrollingModule]>;
328328
}
329329

330330
// @public

0 commit comments

Comments
 (0)