UNPKG

@netgrif/components-core

Version:

Netgrif Application engine frontend core Angular library

96 lines 15 kB
import { Inject, Injectable, Optional } from '@angular/core'; import { GenericSnackBarComponent } from '../components/generic-snack-bar/generic-snack-bar.component'; import { SuccessSnackBarComponent } from '../components/success-snack-bar/success-snack-bar.component'; import { ErrorSnackBarComponent } from '../components/error-snack-bar/error-snack-bar.component'; import { WarningSnackBarComponent } from '../components/warning-snack-bar/warning-snack-bar.component'; import { SnackBarHorizontalPosition, SnackBarVerticalPosition } from '../models/snack-bar-enums'; import { NAE_SNACKBAR_HORIZONTAL_POSITION, NAE_SNACKBAR_VERTICAL_POSITION } from '../models/injection-token-snackbar'; import * as i0 from "@angular/core"; import * as i1 from "@angular/material/snack-bar"; import * as i2 from "../models/snack-bar-enums"; export class SnackBarService { _snackBar; _defaultTimeout = 2.5; _verticalPosition; _horizontalPosition; constructor(_snackBar, naeVerticalPosition, naeHorizontalPosition) { this._snackBar = _snackBar; this._verticalPosition = SnackBarVerticalPosition.BOTTOM; this._horizontalPosition = SnackBarHorizontalPosition.CENTER; if (naeVerticalPosition) { this._verticalPosition = naeVerticalPosition; } if (naeHorizontalPosition) { this._horizontalPosition = naeHorizontalPosition; } } openSuccessSnackBar(message, verticalPosition = this._verticalPosition, horizontalPosition = this._horizontalPosition, durationInSeconds = this._defaultTimeout, config) { return this._snackBar.openFromComponent(SuccessSnackBarComponent, Object.assign({ data: { message, matIconName: 'done', closable: false }, duration: durationInSeconds * 1000, horizontalPosition, verticalPosition }, config)); } openErrorSnackBar(message, verticalPosition = this._verticalPosition, horizontalPosition = this._horizontalPosition, // durationInSeconds = this._defaultTimeout, config) { return this._snackBar.openFromComponent(ErrorSnackBarComponent, Object.assign({ data: { message, matIconName: 'error', closable: true }, // duration: durationInSeconds * 1000, // Error has to be acknowledged to be closed horizontalPosition, verticalPosition }, config)); } openWarningSnackBar(message, verticalPosition = this._verticalPosition, horizontalPosition = this._horizontalPosition, durationInSeconds = this._defaultTimeout, config) { return this._snackBar.openFromComponent(WarningSnackBarComponent, Object.assign({ data: { message, matIconName: 'warning', closable: false }, duration: durationInSeconds * 1000, horizontalPosition, verticalPosition }, config)); } openGenericSnackBar(message, matIconName, verticalPosition = this._verticalPosition, horizontalPosition = this._horizontalPosition, durationInSeconds = this._defaultTimeout, config) { return this._snackBar.openFromComponent(GenericSnackBarComponent, Object.assign({ data: { message, matIconName, closable: true }, duration: durationInSeconds * 1000, horizontalPosition, verticalPosition }, config)); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SnackBarService, deps: [{ token: i1.MatSnackBar }, { token: NAE_SNACKBAR_VERTICAL_POSITION, optional: true }, { token: NAE_SNACKBAR_HORIZONTAL_POSITION, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SnackBarService, providedIn: 'root' }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SnackBarService, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i2.SnackBarVerticalPosition, decorators: [{ type: Optional }, { type: Inject, args: [NAE_SNACKBAR_VERTICAL_POSITION] }] }, { type: i2.SnackBarHorizontalPosition, decorators: [{ type: Optional }, { type: Inject, args: [NAE_SNACKBAR_HORIZONTAL_POSITION] }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hY2stYmFyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3NuYWNrLWJhci9zZXJ2aWNlcy9zbmFjay1iYXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDckcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDckcsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDL0YsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFHckcsT0FBTyxFQUFDLDBCQUEwQixFQUFFLHdCQUF3QixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDL0YsT0FBTyxFQUFDLGdDQUFnQyxFQUFFLDhCQUE4QixFQUFDLE1BQU0sb0NBQW9DLENBQUM7Ozs7QUFLcEgsTUFBTSxPQUFPLGVBQWU7SUFNSjtJQUpaLGVBQWUsR0FBRyxHQUFHLENBQUM7SUFDdEIsaUJBQWlCLENBQTJCO0lBQzVDLG1CQUFtQixDQUE2QjtJQUV4RCxZQUFvQixTQUFzQixFQUNzQixtQkFBNkMsRUFDM0MscUJBQWlEO1FBRi9GLGNBQVMsR0FBVCxTQUFTLENBQWE7UUFHdEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHdCQUF3QixDQUFDLE1BQU0sQ0FBQztRQUN6RCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsMEJBQTBCLENBQUMsTUFBTSxDQUFDO1FBQzdELElBQUksbUJBQW1CLEVBQUU7WUFDckIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDO1NBQ2hEO1FBQ0QsSUFBSSxxQkFBcUIsRUFB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amVjdGFibGUsIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7R2VuZXJpY1NuYWNrQmFyQ29tcG9uZW50fSBmcm9tICcuLi9jb21wb25lbnRzL2dlbmVyaWMtc25hY2stYmFyL2dlbmVyaWMtc25hY2stYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQge1N1Y2Nlc3NTbmFja0JhckNvbXBvbmVudH0gZnJvbSAnLi4vY29tcG9uZW50cy9zdWNjZXNzLXNuYWNrLWJhci9zdWNjZXNzLXNuYWNrLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHtFcnJvclNuYWNrQmFyQ29tcG9uZW50fSBmcm9tICcuLi9jb21wb25lbnRzL2Vycm9yLXNuYWNrLWJhci9lcnJvci1zbmFjay1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7V2FybmluZ1NuYWNrQmFyQ29tcG9uZW50fSBmcm9tICcuLi9jb21wb25lbnRzL3dhcm5pbmctc25hY2stYmFyL3dhcm5pbmctc25hY2stYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQge1NuYWNrQmFySW5qZWN0aW9uRGF0YX0gZnJvbSAnLi4vbW9kZWxzL3NuYWNrLWJhci1pbmplY3Rpb24tZGF0YSc7XG5pbXBvcnQge01hdFNuYWNrQmFyLCBNYXRTbmFja0JhckNvbmZpZywgTWF0U25hY2tCYXJSZWZ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQge1NuYWNrQmFySG9yaXpvbnRhbFBvc2l0aW9uLCBTbmFja0JhclZlcnRpY2FsUG9zaXRpb259IGZyb20gJy4uL21vZGVscy9zbmFjay1iYXItZW51bXMnO1xuaW1wb3J0IHtOQUVfU05BQ0tCQVJfSE9SSVpPTlRBTF9QT1NJVElPTiwgTkFFX1NOQUNLQkFSX1ZFUlRJQ0FMX1BPU0lUSU9OfSBmcm9tICcuLi9tb2RlbHMvaW5qZWN0aW9uLXRva2VuLXNuYWNrYmFyJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTbmFja0JhclNlcnZpY2Uge1xuXG4gICAgcHJpdmF0ZSBfZGVmYXVsdFRpbWVvdXQgPSAyLjU7XG4gICAgcHJpdmF0ZSBfdmVydGljYWxQb3NpdGlvbjogU25hY2tCYXJWZXJ0aWNhbFBvc2l0aW9uO1xuICAgIHByaXZhdGUgX2hvcml6b250YWxQb3NpdGlvbjogU25hY2tCYXJIb3Jpem9udGFsUG9zaXRpb247XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9zbmFja0JhcjogTWF0U25hY2tCYXIsXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChOQUVfU05BQ0tCQVJfVkVSVElDQUxfUE9TSVRJT04pIG5hZVZlcnRpY2FsUG9zaXRpb246IFNuYWNrQmFyVmVydGljYWxQb3NpdGlvbixcbiAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5BRV9TTkFDS0JBUl9IT1JJWk9OVEFMX1BPU0lUSU9OKSBuYWVIb3Jpem9udGFsUG9zaXRpb246IFNuYWNrQmFySG9yaXpvbnRhbFBvc2l0aW9uKSB7XG4gICAgICAgIHRoaXMuX3ZlcnRpY2FsUG9zaXRpb24gPSBTbmFja0JhclZlcnRpY2FsUG9zaXRpb24uQk9UVE9NO1xuICAgICAgICB0aGlzLl9ob3Jpem9udGFsUG9zaXRpb24gPSBTbmFja0Jhckhvcml6b250YWxQb3NpdGlvbi5DRU5URVI7XG4gICAgICAgIGlmIChuYWVWZXJ0aWNhbFBvc2l0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLl92ZXJ0aWNhbFBvc2l0aW9uID0gbmFlVmVydGljYWxQb3NpdGlvbjtcbiAgICAgICAgfVxuICAgICAgICBpZiAobmFlSG9yaXpvbnRhbFBvc2l0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLl9ob3Jpem9udGFsUG9zaXRpb24gPSBuYWVIb3Jpem9udGFsUG9zaXRpb247XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb3BlblN1Y2Nlc3NTbmFja0JhcihtZXNzYWdlOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWxQb3NpdGlvbiA9IHRoaXMuX3ZlcnRpY2FsUG9zaXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaG9yaXpvbnRhbFBvc2l0aW9uID0gdGhpcy5faG9yaXpvbnRhbFBvc2l0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uSW5TZWNvbmRzID0gdGhpcy5fZGVmYXVsdFRpbWVvdXQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlnPzogTWF0U25hY2tCYXJDb25maWc8U25hY2tCYXJJbmplY3Rpb25EYXRhPik6IE1hdFNuYWNrQmFyUmVmPFN1Y2Nlc3NTbmFja0JhckNvbXBvbmVudD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc25hY2tCYXIub3BlbkZyb21Db21wb25lbnQoU3VjY2Vzc1NuYWNrQmFyQ29tcG9uZW50LCBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBtZXNzYWdlLFxuICAgICAgICAgICAgICAgIG1hdEljb25OYW1lOiAnZG9uZScsXG4gICAgICAgICAgICAgICAgY2xvc2FibGU6IGZhbHNlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZHVyYXRpb246IGR1cmF0aW9uSW5TZWNvbmRzICogMTAwMCxcbiAgICAgICAgICAgIGhvcml6b250YWxQb3NpdGlvbixcbiAgICAgICAgICAgIHZlcnRpY2FsUG9zaXRpb25cbiAgICAgICAgfSwgY29uZmlnKSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW5FcnJvclNuYWNrQmFyKG1lc3NhZ2U6IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWxQb3NpdGlvbiA9IHRoaXMuX3ZlcnRpY2FsUG9zaXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhvcml6b250YWxQb3NpdGlvbiA9IHRoaXMuX2hvcml6b250YWxQb3NpdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZHVyYXRpb25JblNlY29uZHMgPSB0aGlzLl9kZWZhdWx0VGltZW91dCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlnPzogTWF0U25hY2tCYXJDb25maWc8U25hY2tCYXJJbmplY3Rpb25EYXRhPik6IE1hdFNuYWNrQmFyUmVmPEVycm9yU25hY2tCYXJDb21wb25lbnQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NuYWNrQmFyLm9wZW5Gcm9tQ29tcG9uZW50KEVycm9yU25hY2tCYXJDb21wb25lbnQsIE9iamVjdC5hc3NpZ24oe1xuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgbWF0SWNvbk5hbWU6ICdlcnJvcicsXG4gICAgICAgICAgICAgICAgY2xvc2FibGU6IHRydWVcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAvLyBkdXJhdGlvbjogZHVyYXRpb25JblNlY29uZHMgKiAxMDAwLCAvLyBFcnJvciBoYXMgdG8gYmUgYWNrbm93bGVkZ2VkIHRvIGJlIGNsb3NlZFxuICAgICAgICAgICAgaG9yaXpvbnRhbFBvc2l0aW9uLFxuICAgICAgICAgICAgdmVydGljYWxQb3NpdGlvblxuICAgICAgICB9LCBjb25maWcpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3Blbldhcm5pbmdTbmFja0JhcihtZXNzYWdlOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWxQb3NpdGlvbiA9IHRoaXMuX3ZlcnRpY2FsUG9zaXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaG9yaXpvbnRhbFBvc2l0aW9uID0gdGhpcy5faG9yaXpvbnRhbFBvc2l0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uSW5TZWNvbmRzID0gdGhpcy5fZGVmYXVsdFRpbWVvdXQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlnPzogTWF0U25hY2tCYXJDb25maWc8U25hY2tCYXJJbmplY3Rpb25EYXRhPik6IE1hdFNuYWNrQmFyUmVmPFdhcm5pbmdTbmFja0JhckNvbXBvbmVudD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc25hY2tCYXIub3BlbkZyb21Db21wb25lbnQoV2FybmluZ1NuYWNrQmFyQ29tcG9uZW50LCBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBtZXNzYWdlLFxuICAgICAgICAgICAgICAgIG1hdEljb25OYW1lOiAnd2FybmluZycsXG4gICAgICAgICAgICAgICAgY2xvc2FibGU6IGZhbHNlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZHVyYXRpb246IGR1cmF0aW9uSW5TZWNvbmRzICogMTAwMCxcbiAgICAgICAgICAgIGhvcml6b250YWxQb3NpdGlvbixcbiAgICAgICAgICAgIHZlcnRpY2FsUG9zaXRpb25cbiAgICAgICAgfSwgY29uZmlnKSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW5HZW5lcmljU25hY2tCYXIobWVzc2FnZTogc3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdEljb25OYW1lOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWxQb3NpdGlvbiA9IHRoaXMuX3ZlcnRpY2FsUG9zaXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaG9yaXpvbnRhbFBvc2l0aW9uID0gdGhpcy5faG9yaXpvbnRhbFBvc2l0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uSW5TZWNvbmRzID0gdGhpcy5fZGVmYXVsdFRpbWVvdXQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlnPzogTWF0U25hY2tCYXJDb25maWc8U25hY2tCYXJJbmplY3Rpb25EYXRhPik6IE1hdFNuYWNrQmFyUmVmPEdlbmVyaWNTbmFja0JhckNvbXBvbmVudD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc25hY2tCYXIub3BlbkZyb21Db21wb25lbnQoR2VuZXJpY1NuYWNrQmFyQ29tcG9uZW50LCBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBtZXNzYWdlLFxuICAgICAgICAgICAgICAgIG1hdEljb25OYW1lLFxuICAgICAgICAgICAgICAgIGNsb3NhYmxlOiB0cnVlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZHVyYXRpb246IGR1cmF0aW9uSW5TZWNvbmRzICogMTAwMCxcbiAgICAgICAgICAgIGhvcml6b250YWxQb3NpdGlvbixcbiAgICAgICAgICAgIHZlcnRpY2FsUG9zaXRpb25cbiAgICAgICAgfSwgY29uZmlnKSk7XG4gICAgfVxufVxuIl19