Add PopupBoxesModule into your AppModule class. app.module.ts would look like this:
Take Note : For Toastr Animations working perfectly please import BrowserAnimationsModule into app.module.ts file.
import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { PopupBoxesModule } from 'ng6-popup-boxes';
@NgModule({
declarations: [AppComponent],
imports: [BrowserModule, BrowserAnimationsModule, PopupBoxesModule.forRoot()],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule {}
Inject 'PopupManager' class in your component class.
import { Component } from '@angular/core';
import { PopupManager } from './ng6-popup-boxes';
import { LoadingComponent } from './loading/loading.component';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss']
})
export class AppComponent {
constructor(public popupManager: PopupManager) {}
showAlertBox() {
this.popupManager.open(
'Alert Box',
"Let's go up in here, and start having some fun The very fact that you're aware of suffering is enough reason to be overjoyed that you're alive and can experience it. It's a super day, so why not make a beautiful sky? ",
{
width: '300px',
popupClass: 'my-popup-box',
animate: 'slide-from-top',
showOverlay: true,
position: 'top',
callback: (result: any) => {
if (result) {
this.customDialog('You clicked Ok');
} else {
this.customDialog('You clicked Cancel');
}
}
}
);
}
customDialog(message: any) {
this.popupManager.open('Custom Dialog', message, {
width: '300px',
position: 'bottom',
animate: 'scale',
actionButtons: [
{
text: 'Done',
buttonClasses: 'btn-ok'
}
]
});
}
showConfirmBox() {
this.popupManager.open('Delete Confirmation', 'Do you really want to this item?', {
width: '300px',
closeOnOverlay: false,
animate: 'scale',
actionButtons: [
{
text: 'Yes',
buttonClasses: 'btn-ok',
onAction: () => {
return true;
}
},
{
text: 'No',
buttonClasses: 'btn-cancel',
onAction: () => {
return false;
}
}
],
callback: (result: any) => {
if (result) {
this.showLoadingBox();
}
}
});
}
showLoadingBox() {
let popup = this.popupManager.open('', '', {
width: '250px',
injectComponent: LoadingComponent,
showTitle: false,
showMessage: false,
showCloseBtn: false,
closeOnOverlay: false,
animate: 'slide-from-bottom',
actionButtons: [],
callback: (result: any) => {
if (result) {
this.deleteSuccessBox();
}
}
});
setTimeout(() => {
popup.close(true);
}, 2000);
}
deleteSuccessBox() {
this.popupManager.open('Success', 'Record has been deleted successfully !', {
width: '300px',
animate: 'slide-from-top',
position: 'top',
actionButtons: [
{
text: 'Done',
buttonClasses: 'btn-ok'
}
]
});
}
}