UNPKG

@taiga-ui/kit

Version:

Taiga UI Angular main components kit

32 lines 3.96 kB
import { inject, Injectable } from '@angular/core'; import { TuiDialogService } from '@taiga-ui/core/components/dialog'; import { defer, of } from 'rxjs'; import { TUI_CONFIRM_DIALOG } from './confirm.component'; import * as i0 from "@angular/core"; class TuiConfirmService { constructor() { this.dialogs = inject(TuiDialogService); this.component = inject(TUI_CONFIRM_DIALOG); this.dirty = false; } markAsDirty() { this.dirty = true; } markAsPristine() { this.dirty = false; } withConfirm( // TODO: Replace with NoInfer in v5 options) { return defer(() => this.dirty ? this.dialogs.open(this.component, { size: 's', ...options }) : of(true)); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiConfirmService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiConfirmService }); } } export { TuiConfirmService }; i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiConfirmService, decorators: [{ type: Injectable }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvY29uZmlybS9jb25maXJtLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUF3QixnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxLQUFLLEVBQW1CLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUVoRCxPQUFPLEVBQUMsa0JBQWtCLEVBQXNCLE1BQU0scUJBQXFCLENBQUM7O0FBRTVFLE1BQ2EsaUJBQWlCO0lBRDlCO1FBRXFCLFlBQU8sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNuQyxjQUFTLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDaEQsVUFBSyxHQUFHLEtBQUssQ0FBQztLQW9CekI7SUFsQlUsV0FBVztRQUNkLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFFTSxjQUFjO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxXQUFXO0lBQ2QsbUNBQW1DO0lBQ25DLE9BQWlFO1FBRWpFLE9BQU8sS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUNkLElBQUksQ0FBQyxLQUFLO1lBQ04sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFVLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsT0FBTyxFQUFDLENBQUM7WUFDckUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDakIsQ0FBQztJQUNOLENBQUM7K0dBdEJRLGlCQUFpQjttSEFBakIsaUJBQWlCOztTQUFqQixpQkFBaUI7NEZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7aW5qZWN0LCBJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHlwZSBUdWlEaWFsb2dPcHRpb25zLCBUdWlEaWFsb2dTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2RpYWxvZyc7XG5pbXBvcnQge2RlZmVyLCB0eXBlIE9ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUVUlfQ09ORklSTV9ESUFMT0csIHR5cGUgVHVpQ29uZmlybURhdGF9IGZyb20gJy4vY29uZmlybS5jb21wb25lbnQnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVHVpQ29uZmlybVNlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9ncyA9IGluamVjdChUdWlEaWFsb2dTZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbXBvbmVudCA9IGluamVjdChUVUlfQ09ORklSTV9ESUFMT0cpO1xuICAgIHByaXZhdGUgZGlydHkgPSBmYWxzZTtcblxuICAgIHB1YmxpYyBtYXJrQXNEaXJ0eSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXJ0eSA9IHRydWU7XG4gICAgfVxuXG4gICAgcHVibGljIG1hcmtBc1ByaXN0aW5lKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpcnR5ID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhDb25maXJtPFQgPSBUdWlDb25maXJtRGF0YT4oXG4gICAgICAgIC8vIFRPRE86IFJlcGxhY2Ugd2l0aCBOb0luZmVyIGluIHY1XG4gICAgICAgIG9wdGlvbnM6IFBhcnRpYWw8VHVpRGlhbG9nT3B0aW9uczxUIGV4dGVuZHMgaW5mZXIgVSA/IFUgOiBuZXZlcj4+LFxuICAgICk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gZGVmZXIoKCkgPT5cbiAgICAgICAgICAgIHRoaXMuZGlydHlcbiAgICAgICAgICAgICAgICA/IHRoaXMuZGlhbG9ncy5vcGVuPGJvb2xlYW4+KHRoaXMuY29tcG9uZW50LCB7c2l6ZTogJ3MnLCAuLi5vcHRpb25zfSlcbiAgICAgICAgICAgICAgICA6IG9mKHRydWUpLFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==