@doku-dev/doku-fragment
Version:
A new Angular UI library that moving away from Bootstrap and built from scratch.
54 lines • 5.04 kB
JavaScript
import { Injectable, TemplateRef } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "./toast-element.service";
export class DokuToastService {
constructor(toastElementService) {
this.toastElementService = toastElementService;
}
/**
* Open toast from a text or template ref.
*
* @example
* From text:
* ```ts
* this.dokuToastService.open('Hello World!');
* ```
*
* @example
* From template ref:
* ```html
* <ng-template #customTemplate>Hello World!<ng-template>
* ```
*
* ```ts
* @ViewChild('customTemplate') private template: TemplateRef<unknown>;
*
* showToast() {
* this.dokuToastService.open(this.template);
* }
* ```
*/
open(content, options) {
if (content instanceof TemplateRef) {
const toast = { template: content, ...options };
return this.toastElementService.openToast(toast);
}
const toast = { text: content, ...options };
return this.toastElementService.openToast(toast);
}
/**
* Dismiss all the toasts immediately.
*/
dismissAll() {
this.toastElementService.dismissAll();
}
}
DokuToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DokuToastService, deps: [{ token: i1.DokuToastElementService }], target: i0.ɵɵFactoryTarget.Injectable });
DokuToastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DokuToastService, providedIn: 'root' });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DokuToastService, decorators: [{
type: Injectable,
args: [{
providedIn: 'root',
}]
}], ctorParameters: function () { return [{ type: i1.DokuToastElementService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rva3UtZnJhZ21lbnQvc3JjL2xpYi90b2FzdC90b2FzdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFReEQsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixZQUFvQixtQkFBNEM7UUFBNUMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUF5QjtJQUFHLENBQUM7SUFFcEU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FzQkc7SUFDSCxJQUFJLENBQUMsT0FBc0MsRUFBRSxPQUE4QjtRQUN6RSxJQUFJLE9BQU8sWUFBWSxXQUFXLEVBQUU7WUFDbEMsTUFBTSxLQUFLLEdBQWtCLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxHQUFHLE9BQU8sRUFBRSxDQUFDO1lBQy9ELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNsRDtRQUVELE1BQU0sS0FBSyxHQUFrQixFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQztRQUMzRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsVUFBVTtRQUNSLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QyxDQUFDOzs2R0F6Q1UsZ0JBQWdCO2lIQUFoQixnQkFBZ0IsY0FGZixNQUFNOzJGQUVQLGdCQUFnQjtrQkFINUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9rdVRvYXN0RWxlbWVudFNlcnZpY2UgfSBmcm9tICcuL3RvYXN0LWVsZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBEb2t1VG9hc3RSZWYgfSBmcm9tICcuL3RvYXN0LXJlZic7XG5pbXBvcnQgeyBEb2t1VG9hc3RJdGVtLCBEb2t1VG9hc3RJdGVtT3B0aW9ucyB9IGZyb20gJy4vdG9hc3QuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERva3VUb2FzdFNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRvYXN0RWxlbWVudFNlcnZpY2U6IERva3VUb2FzdEVsZW1lbnRTZXJ2aWNlKSB7fVxuXG4gIC8qKlxuICAgKiBPcGVuIHRvYXN0IGZyb20gYSB0ZXh0IG9yIHRlbXBsYXRlIHJlZi5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogRnJvbSB0ZXh0OlxuICAgKiBgYGB0c1xuICAgKiAgdGhpcy5kb2t1VG9hc3RTZXJ2aWNlLm9wZW4oJ0hlbGxvIFdvcmxkIScpO1xuICAgKiBgYGBcbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogRnJvbSB0ZW1wbGF0ZSByZWY6XG4gICAqIGBgYGh0bWxcbiAgICogPG5nLXRlbXBsYXRlICNjdXN0b21UZW1wbGF0ZT5IZWxsbyBXb3JsZCE8bmctdGVtcGxhdGU+XG4gICAqIGBgYFxuICAgKlxuICAgKiBgYGB0c1xuICAgKiAgQFZpZXdDaGlsZCgnY3VzdG9tVGVtcGxhdGUnKSBwcml2YXRlIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcbiAgICpcbiAgICogIHNob3dUb2FzdCgpIHtcbiAgICogICAgdGhpcy5kb2t1VG9hc3RTZXJ2aWNlLm9wZW4odGhpcy50ZW1wbGF0ZSk7XG4gICAqICB9XG4gICAqIGBgYFxuICAgKi9cbiAgb3Blbihjb250ZW50OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjx1bmtub3duPiwgb3B0aW9ucz86IERva3VUb2FzdEl0ZW1PcHRpb25zKTogRG9rdVRvYXN0UmVmIHtcbiAgICBpZiAoY29udGVudCBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKSB7XG4gICAgICBjb25zdCB0b2FzdDogRG9rdVRvYXN0SXRlbSA9IHsgdGVtcGxhdGU6IGNvbnRlbnQsIC4uLm9wdGlvbnMgfTtcbiAgICAgIHJldHVybiB0aGlzLnRvYXN0RWxlbWVudFNlcnZpY2Uub3BlblRvYXN0KHRvYXN0KTtcbiAgICB9XG5cbiAgICBjb25zdCB0b2FzdDogRG9rdVRvYXN0SXRlbSA9IHsgdGV4dDogY29udGVudCwgLi4ub3B0aW9ucyB9O1xuICAgIHJldHVybiB0aGlzLnRvYXN0RWxlbWVudFNlcnZpY2Uub3BlblRvYXN0KHRvYXN0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEaXNtaXNzIGFsbCB0aGUgdG9hc3RzIGltbWVkaWF0ZWx5LlxuICAgKi9cbiAgZGlzbWlzc0FsbCgpIHtcbiAgICB0aGlzLnRvYXN0RWxlbWVudFNlcnZpY2UuZGlzbWlzc0FsbCgpO1xuICB9XG59XG4iXX0=