import { Portal } from "@angular/cdk/portal"; import { Injectable, signal } from "@angular/core"; @Injectable({ providedIn: "root" }) export class DrawerService { private readonly _portal = signal | undefined>(undefined); /** The portal to display */ portal = this._portal.asReadonly(); open(portal: Portal) { this._portal.set(portal); } close(portal: Portal) { if (portal === this.portal()) { this._portal.set(undefined); } } }