import { Injector, Injectable, EnvironmentInjector, inject } from '@angular/core'; import { ModalOptions, modalController } from '@ionic/core'; import { OverlayBaseController } from '../util/overlay'; import { AngularDelegate } from './angular-delegate'; @Injectable() export class ModalController extends OverlayBaseController { private angularDelegate = inject(AngularDelegate); private injector = inject(Injector); private environmentInjector = inject(EnvironmentInjector); constructor() { super(modalController); } create(opts: ModalOptions): Promise { return super.create({ ...opts, delegate: this.angularDelegate.create(this.environmentInjector, this.injector, 'modal'), }); } }