ngx-confirm-box
Version:
Library for confirm box - Angular 4/5/6
156 lines (149 loc) • 13.8 kB
JavaScript
import { Injectable, Component, Input, Output, EventEmitter, NgModule, defineInjectable } from '@angular/core';
import { Subject } from 'rxjs';
import { CommonModule } from '@angular/common';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
class NgxConfirmBoxService {
constructor() {
this.confirmChange = new Subject();
}
/**
* @return {?}
*/
show() {
this.confirmChange.next(true);
//this.confirmChange.next({ bgColor: bgColor,confirmHeading: Heading,confirmContent: Content,confirmCanceltext: Canceltext,confirmOkaytext: Okaytext,show:true });
}
/**
* @return {?}
*/
hide() {
this.confirmChange.next(false);
}
/**
* @return {?}
*/
getState() {
return this.confirmChange.asObservable();
}
}
NgxConfirmBoxService.decorators = [
{ type: Injectable, args: [{
providedIn: 'root'
},] },
];
/** @nocollapse */
NgxConfirmBoxService.ctorParameters = () => [];
/** @nocollapse */ NgxConfirmBoxService.ngInjectableDef = defineInjectable({ factory: function NgxConfirmBoxService_Factory() { return new NgxConfirmBoxService(); }, token: NgxConfirmBoxService, providedIn: "root" });
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
class NgxConfirmBoxComponent {
/**
* @param {?} confirmService
*/
constructor(confirmService) {
this.confirmService = confirmService;
this.bgColor = 'rgba(0,0,0,0.5)';
this.confirmContent = 'Are you sure want to delete this?';
this.confirmHeading = 'Confirmation';
this.confirmCanceltext = 'Cancel';
this.confirmOkaytext = 'Okay';
//confirmHeading:string;
this.showHide = false;
this.returnval = false;
this.confirmaray = { bgColor: 'rgba(0,0,0,0.5)', confirmHeading: '', confirmContent: 'Are you sure want to delete this?', confirmCanceltext: 'No', confirmOkaytext: 'Yes', show: this.showHide };
this.confirmEvt = new EventEmitter();
}
/**
* @return {?}
*/
ngOnInit() {
this.subscription = this.confirmService.getState().subscribe(showHide => {
this.showHide = showHide;
});
this.confirmaray.show = this.showHide;
this.confirmaray.bgColor = this.bgColor;
this.confirmaray.confirmHeading = this.confirmHeading;
this.confirmaray.confirmContent = this.confirmContent;
this.confirmaray.confirmCanceltext = this.confirmCanceltext;
this.confirmaray.confirmOkaytext = this.confirmOkaytext;
}
/**
* @return {?}
*/
hideConfirm() {
this.showHide = false;
this.confirmaray.show = false;
this.confirmEvt.emit(false);
}
/**
* @return {?}
*/
returConfirmBox() {
this.confirmaray.show = false;
this.showHide = false;
this.confirmEvt.emit(true);
}
/**
* @return {?}
*/
ngOnDestroy() {
this.subscription.unsubscribe();
}
}
NgxConfirmBoxComponent.decorators = [
{ type: Component, args: [{
selector: 'ngx-confirm-box',
template: `<div class="overlay" [ngStyle]="{'background-color':confirmaray.bgColor}" *ngIf="showHide" >
<div class="confirmbox-container">
<h3 *ngIf="confirmaray.confirmHeading">{{confirmaray.confirmHeading}}</h3>
<p>{{confirmaray.confirmContent}}</p>
<div class="col-md-12 btn-grp col-sm-12">
<button class="cancel-btn btn-default btn btn-sm" (click)="hideConfirm()">{{confirmaray.confirmCanceltext}}</button>
<button class="btn-primary btn btn-sm confirm-btn" (click)="returConfirmBox()">{{confirmaray.confirmOkaytext}}</button></div>
</div>
</div>`,
styles: [`.overlay{position:fixed;width:100%;height:100%;top:0;left:0;right:0;bottom:0;z-index:2}.confirmbox-container{position:absolute;top:40%;left:40%;width:300px;background:#fff;padding:15px;border-radius:6px}.confirmbox-container h3{padding:0 0 10px;margin:5px;border-bottom:1px solid #c5c5c6;font-size:18px}.confirmbox-container p{margin:0;padding:3px;text-align:center}.btn-grp{text-align:center;padding-top:10px}.confirm-btn{margin:0 10px}`]
},] },
];
/** @nocollapse */
NgxConfirmBoxComponent.ctorParameters = () => [
{ type: NgxConfirmBoxService }
];
NgxConfirmBoxComponent.propDecorators = {
bgColor: [{ type: Input }],
confirmContent: [{ type: Input }],
confirmHeading: [{ type: Input }],
confirmCanceltext: [{ type: Input }],
confirmOkaytext: [{ type: Input }],
confirmEvt: [{ type: Output }]
};
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
class NgxConfirmBoxModule {
}
NgxConfirmBoxModule.decorators = [
{ type: NgModule, args: [{
imports: [
CommonModule
],
declarations: [NgxConfirmBoxComponent],
exports: [NgxConfirmBoxComponent]
},] },
];
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
export { NgxConfirmBoxService, NgxConfirmBoxComponent, NgxConfirmBoxModule };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWNvbmZpcm0tYm94LmpzLm1hcCIsInNvdXJjZXMiOlsibmc6Ly9uZ3gtY29uZmlybS1ib3gvbGliL25neC1jb25maXJtLWJveC5zZXJ2aWNlLnRzIiwibmc6Ly9uZ3gtY29uZmlybS1ib3gvbGliL25neC1jb25maXJtLWJveC5jb21wb25lbnQudHMiLCJuZzovL25neC1jb25maXJtLWJveC9saWIvbmd4LWNvbmZpcm0tYm94Lm1vZHVsZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOZ3hDb25maXJtQm94U2VydmljZSB7XG4gIHByaXZhdGUgY29uZmlybUNoYW5nZSA9IG5ldyBTdWJqZWN0PGFueT4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuICAvL3Nob3coYmdDb2xvcjpzdHJpbmc9J3JnYmEoMCwwLDAsMC41KScsSGVhZGluZzpzdHJpbmcsQ29udGVudDpzdHJpbmcsQ2FuY2VsdGV4dDpzdHJpbmcsT2theXRleHQ6c3RyaW5nKSB7XG4gICAgc2hvdygpe1xuICAgICAgdGhpcy5jb25maXJtQ2hhbmdlLm5leHQodHJ1ZSk7XG4gICAgICAvL3RoaXMuY29uZmlybUNoYW5nZS5uZXh0KHsgYmdDb2xvcjogYmdDb2xvcixjb25maXJtSGVhZGluZzogSGVhZGluZyxjb25maXJtQ29udGVudDogQ29udGVudCxjb25maXJtQ2FuY2VsdGV4dDogQ2FuY2VsdGV4dCxjb25maXJtT2theXRleHQ6IE9rYXl0ZXh0LHNob3c6dHJ1ZSB9KTtcbiAgICB9XG5cbiAgaGlkZSgpe1xuICAgIHRoaXMuY29uZmlybUNoYW5nZS5uZXh0KGZhbHNlKTtcbiAgfVxuXG4gIGdldFN0YXRlKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlybUNoYW5nZS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIFxufVxuIiwiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlcixPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnR7IE5neENvbmZpcm1Cb3hTZXJ2aWNlfSBmcm9tICcuL25neC1jb25maXJtLWJveC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmd4LWNvbmZpcm0tYm94JyxcbiAgdGVtcGxhdGU6IGA8ZGl2IGNsYXNzPVwib3ZlcmxheVwiIFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZC1jb2xvcic6Y29uZmlybWFyYXkuYmdDb2xvcn1cIiAqbmdJZj1cInNob3dIaWRlXCIgPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbmZpcm1ib3gtY29udGFpbmVyXCI+XHJcblx0PGgzICpuZ0lmPVwiY29uZmlybWFyYXkuY29uZmlybUhlYWRpbmdcIj57e2NvbmZpcm1hcmF5LmNvbmZpcm1IZWFkaW5nfX08L2gzPlxyXG5cdDxwPnt7Y29uZmlybWFyYXkuY29uZmlybUNvbnRlbnR9fTwvcD5cclxuXHQ8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGJ0bi1ncnAgY29sLXNtLTEyXCI+XHJcblx0PGJ1dHRvbiBjbGFzcz1cImNhbmNlbC1idG4gYnRuLWRlZmF1bHQgYnRuIGJ0bi1zbVwiIChjbGljayk9XCJoaWRlQ29uZmlybSgpXCI+e3tjb25maXJtYXJheS5jb25maXJtQ2FuY2VsdGV4dH19PC9idXR0b24+XHJcblx0PGJ1dHRvbiBjbGFzcz1cImJ0bi1wcmltYXJ5IGJ0biBidG4tc20gY29uZmlybS1idG5cIiAoY2xpY2spPVwicmV0dXJDb25maXJtQm94KClcIj57e2NvbmZpcm1hcmF5LmNvbmZpcm1Pa2F5dGV4dH19PC9idXR0b24+PC9kaXY+XHJcblx0PC9kaXY+XHJcbjwvZGl2PmAsXG4gIHN0eWxlczogW2Aub3ZlcmxheXtwb3NpdGlvbjpmaXhlZDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3otaW5kZXg6Mn0uY29uZmlybWJveC1jb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjQwJTtsZWZ0OjQwJTt3aWR0aDozMDBweDtiYWNrZ3JvdW5kOiNmZmY7cGFkZGluZzoxNXB4O2JvcmRlci1yYWRpdXM6NnB4fS5jb25maXJtYm94LWNvbnRhaW5lciBoM3twYWRkaW5nOjAgMCAxMHB4O21hcmdpbjo1cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2M1YzVjNjtmb250LXNpemU6MThweH0uY29uZmlybWJveC1jb250YWluZXIgcHttYXJnaW46MDtwYWRkaW5nOjNweDt0ZXh0LWFsaWduOmNlbnRlcn0uYnRuLWdycHt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nLXRvcDoxMHB4fS5jb25maXJtLWJ0bnttYXJnaW46MCAxMHB4fWBdXG59KVxuZXhwb3J0IGNsYXNzIE5neENvbmZpcm1Cb3hDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgIEBJbnB1dCgpIGJnQ29sb3IgICAgICAgICAgICA9ICdyZ2JhKDAsMCwwLDAuNSknOyAvL292ZXJsYXkgYmFja2dyb3VuZCBjb2xvclxuICAgQElucHV0KCkgY29uZmlybUNvbnRlbnQgICAgID0gJ0FyZSB5b3Ugc3VyZSB3YW50IHRvIGRlbGV0ZSB0aGlzPyc7IFxuICAgQElucHV0KCkgY29uZmlybUhlYWRpbmcgICAgID0gJ0NvbmZpcm1hdGlvbic7IFxuICAgQElucHV0KCkgY29uZmlybUNhbmNlbHRleHQgID0gJ0NhbmNlbCc7IFxuICAgQElucHV0KCkgY29uZmlybU9rYXl0ZXh0ICAgID0gJ09rYXknOyBcblxuICAvL2NvbmZpcm1IZWFkaW5nOnN0cmluZztcbiAgc2hvd0hpZGUgID0gZmFsc2U7IFxuICByZXR1cm52YWwgPSBmYWxzZTsgXG4gIGNvbmZpcm1hcmF5OmFueSA9IHtiZ0NvbG9yOidyZ2JhKDAsMCwwLDAuNSknLGNvbmZpcm1IZWFkaW5nOicnLGNvbmZpcm1Db250ZW50OidBcmUgeW91IHN1cmUgd2FudCB0byBkZWxldGUgdGhpcz8nLGNvbmZpcm1DYW5jZWx0ZXh0OidObycsY29uZmlybU9rYXl0ZXh0OidZZXMnLHNob3c6dGhpcy5zaG93SGlkZX07XG4gIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maXJtU2VydmljZSA6IE5neENvbmZpcm1Cb3hTZXJ2aWNlKSB7IFxuICAgXG4gIH1cbiAgQE91dHB1dCgpIGNvbmZpcm1FdnQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gXG4gIG5nT25Jbml0KCkge1xuXG4gIHRoaXMuc3Vic2NyaXB0aW9uID10aGlzLmNvbmZpcm1TZXJ2aWNlLmdldFN0YXRlKCkuc3Vic2NyaWJlKCBzaG93SGlkZSA9PiB7XG4gIHRoaXMuc2hvd0hpZGUgPSBzaG93SGlkZSB9KTtcbiAgdGhpcy5jb25maXJtYXJheS5zaG93ICAgID0gdGhpcy5zaG93SGlkZTtcblxuICB0aGlzLmNvbmZpcm1hcmF5LmJnQ29sb3IgICAgICAgICAgID0gdGhpcy5iZ0NvbG9yO1xuICB0aGlzLmNvbmZpcm1hcmF5LmNvbmZpcm1IZWFkaW5nICAgID0gdGhpcy5jb25maXJtSGVhZGluZztcbiAgdGhpcy5jb25maXJtYXJheS5jb25maXJtQ29udGVudCAgICA9IHRoaXMuY29uZmlybUNvbnRlbnQ7XG4gIHRoaXMuY29uZmlybWFyYXkuY29uZmlybUNhbmNlbHRleHQgPSB0aGlzLmNvbmZpcm1DYW5jZWx0ZXh0O1xuICB0aGlzLmNvbmZpcm1hcmF5LmNvbmZpcm1Pa2F5dGV4dCAgID0gdGhpcy5jb25maXJtT2theXRleHQ7XG4gIH1cblxuICBoaWRlQ29uZmlybSgpe1xuICAgXG4gICAgdGhpcy5zaG93SGlkZSAgICAgICAgICAgICAgICAgICAgICAgPSBmYWxzZTtcbiAgICB0aGlzLmNvbmZpcm1hcmF5LnNob3cgICAgICAgICAgICAgICA9IGZhbHNlO1xuICAgIHRoaXMuY29uZmlybUV2dC5lbWl0KGZhbHNlKTsgXG4gIH1cblxuICByZXR1ckNvbmZpcm1Cb3goKXtcbiAgICB0aGlzLmNvbmZpcm1hcmF5LnNob3cgICA9IGZhbHNlO1xuICAgIHRoaXMuc2hvd0hpZGUgICAgICAgICAgID0gZmFsc2U7XG4gICAgdGhpcy5jb25maXJtRXZ0LmVtaXQodHJ1ZSk7ICAgXG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbn1cbiIsImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmd4Q29uZmlybUJveENvbXBvbmVudCB9IGZyb20gJy4vbmd4LWNvbmZpcm0tYm94LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbTmd4Q29uZmlybUJveENvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtOZ3hDb25maXJtQm94Q29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hDb25maXJtQm94TW9kdWxlIHsgfVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7SUFTRTs2QkFGd0IsSUFBSSxPQUFPLEVBQU87S0FFekI7Ozs7SUFFZixJQUFJO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7O0tBRS9COzs7O0lBRUgsSUFBSTtRQUNGLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFD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