Skip to content

Instantly share code, notes, and snippets.

@keithstric
Last active July 21, 2021 16:35
Show Gist options
  • Save keithstric/3dc901748a0afa4515af8a00f991a974 to your computer and use it in GitHub Desktop.
Save keithstric/3dc901748a0afa4515af8a00f991a974 to your computer and use it in GitHub Desktop.
import {Injectable} from '@angular/core';
import {ServiceLocator} from '@core/services/service-locator';
import {ConfirmModalComponent} from '@shared/components/confirm-modal/confirm-modal.component';
import { ConfirmModalConfig } from '@shared/components/confirm-modal/confirm-modal.interface';
import {BsModalService, ModalOptions} from 'ngx-bootstrap/modal';
/**
* This service should only contain static methods for showing notifications to the user
*/
@Injectable()
export class NotificationService {
constructor() {}
static showConfirmDialog(modalConfig: ConfirmModalConfig) {
// because this is a static method, cannot inject BsModalService into constructor and use that, need to locate it
const bsModalService = ServiceLocator.injector.get(BsModalService);
const modalConfigImpl: ModalOptions<ConfirmModalConfig> = {
...modalConfig.ngModalOptions,
initialState: modalConfig
};
return bsModalService.show(ConfirmModalComponent, modalConfigImpl);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment