You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

angular2-promise-buttons

Package Overview
Dependencies
Maintainers
1
Versions
37
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

angular2-promise-buttons - npm Package Compare versions

Comparing version

to
6.0.0

angular2-promise-buttons.module.ngfactory.d.ts

3

angular2-promise-buttons.d.ts
/**
* Generated bundle index. Do not edit.
*/
/// <amd-module name="angular2-promise-buttons" />
export * from './index';
export { PromiseBtnConfig as ɵb } from './promise-btn-config';
export { userCfg as ɵa } from './user-cfg';
import { ModuleWithProviders } from '@angular/core';
import { PromiseBtnConfig } from './promise-btn-config';
import * as i0 from "@angular/core";
import * as i1 from "./promise-btn.directive";
export declare class Angular2PromiseButtonModule {
static forRoot(config?: PromiseBtnConfig): ModuleWithProviders<Angular2PromiseButtonModule>;
static ɵfac: i0.ɵɵFactoryDeclaration<Angular2PromiseButtonModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<Angular2PromiseButtonModule, [typeof i1.PromiseBtnDirective], never, [typeof i1.PromiseBtnDirective]>;
static ɵinj: i0.ɵɵInjectorDeclaration<Angular2PromiseButtonModule>;
}
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('rxjs')) :
typeof define === 'function' && define.amd ? define('angular2-promise-buttons', ['exports', '@angular/core', 'rxjs'], factory) :
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global['angular2-promise-buttons'] = {}, global.ng.core, global.rxjs));
}(this, (function (exports, core, rxjs) { 'use strict';
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["angular2-promise-buttons"] = {}, global.ng.core, global.rxjs));
})(this, (function (exports, i0, rxjs) { 'use strict';
function _interopNamespace(e) {
if (e && e.__esModule) return e;
var n = Object.create(null);
if (e) {
Object.keys(e).forEach(function (k) {
if (k !== 'default') {
var d = Object.getOwnPropertyDescriptor(e, k);
Object.defineProperty(n, k, d.get ? d : {
enumerable: true,
get: function () { return e[k]; }
});
}
});
}
n["default"] = e;
return Object.freeze(n);
}
var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
var DEFAULT_CFG = {

@@ -15,3 +35,3 @@ spinnerTpl: '<span class="btn-spinner"></span>',

var userCfg = new core.InjectionToken('cfg');
var userCfg = new i0.InjectionToken('cfg');

@@ -224,16 +244,23 @@ var PromiseBtnDirective = /** @class */ (function () {

}());
PromiseBtnDirective.decorators = [
{ type: core.Directive, args: [{
selector: '[promiseBtn]'
},] }
];
PromiseBtnDirective.ctorParameters = function () { return [
{ type: core.ElementRef },
{ type: undefined, decorators: [{ type: core.Inject, args: [userCfg,] }] }
]; };
PromiseBtnDirective.propDecorators = {
isDisabledFromTheOutsideSetter: [{ type: core.Input, args: ['disabled',] }],
promiseBtn: [{ type: core.Input }],
handleCurrentBtnOnly: [{ type: core.HostListener, args: ['click',] }]
};
PromiseBtnDirective.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: PromiseBtnDirective, deps: [{ token: i0__namespace.ElementRef }, { token: userCfg }], target: i0__namespace.ɵɵFactoryTarget.Directive });
PromiseBtnDirective.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: PromiseBtnDirective, selector: "[promiseBtn]", inputs: { isDisabledFromTheOutsideSetter: ["disabled", "isDisabledFromTheOutsideSetter"], promiseBtn: "promiseBtn" }, host: { listeners: { "click": "handleCurrentBtnOnly()" } }, ngImport: i0__namespace });
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: PromiseBtnDirective, decorators: [{
type: i0.Directive,
args: [{
selector: '[promiseBtn]'
}]
}], ctorParameters: function () {
return [{ type: i0__namespace.ElementRef }, { type: undefined, decorators: [{
type: i0.Inject,
args: [userCfg]
}] }];
}, propDecorators: { isDisabledFromTheOutsideSetter: [{
type: i0.Input,
args: ['disabled']
}], promiseBtn: [{
type: i0.Input
}], handleCurrentBtnOnly: [{
type: i0.HostListener,
args: ['click']
}] } });

@@ -253,14 +280,18 @@ var Angular2PromiseButtonModule = /** @class */ (function () {

}());
Angular2PromiseButtonModule.decorators = [
{ type: core.NgModule, args: [{
declarations: [
PromiseBtnDirective,
],
imports: [],
exports: [
PromiseBtnDirective,
],
providers: []
},] }
];
Angular2PromiseButtonModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: Angular2PromiseButtonModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
Angular2PromiseButtonModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: Angular2PromiseButtonModule, declarations: [PromiseBtnDirective], exports: [PromiseBtnDirective] });
Angular2PromiseButtonModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: Angular2PromiseButtonModule, providers: [], imports: [[]] });
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: Angular2PromiseButtonModule, decorators: [{
type: i0.NgModule,
args: [{
declarations: [
PromiseBtnDirective,
],
imports: [],
exports: [
PromiseBtnDirective,
],
providers: []
}]
}] });

@@ -273,7 +304,6 @@ /**

exports.PromiseBtnDirective = PromiseBtnDirective;
exports.ɵa = userCfg;
Object.defineProperty(exports, '__esModule', { value: true });
})));
}));
//# sourceMappingURL=angular2-promise-buttons.umd.js.map

@@ -5,3 +5,2 @@ /**

export * from './index';
export { userCfg as ɵa } from './user-cfg';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhcjItcHJvbWlzZS1idXR0b25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjItcHJvbWlzZS1idXR0b25zL3NyYy9hbmd1bGFyMi1wcm9taXNlLWJ1dHRvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQztBQUd4QixPQUFPLEVBQUMsT0FBTyxJQUFJLEVBQUUsRUFBQyxNQUFNLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG5cbmV4cG9ydCB7UHJvbWlzZUJ0bkNvbmZpZyBhcyDJtWJ9IGZyb20gJy4vcHJvbWlzZS1idG4tY29uZmlnJztcbmV4cG9ydCB7dXNlckNmZyBhcyDJtWF9IGZyb20gJy4vdXNlci1jZmcnOyJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhcjItcHJvbWlzZS1idXR0b25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjItcHJvbWlzZS1idXR0b25zL3NyYy9hbmd1bGFyMi1wcm9taXNlLWJ1dHRvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
import { NgModule } from '@angular/core';
import { PromiseBtnDirective } from './promise-btn.directive';
import { userCfg } from './user-cfg';
import * as i0 from "@angular/core";
export class Angular2PromiseButtonModule {

@@ -14,14 +15,18 @@ // add forRoot to make it configurable

}
Angular2PromiseButtonModule.decorators = [
{ type: NgModule, args: [{
declarations: [
PromiseBtnDirective,
],
imports: [],
exports: [
PromiseBtnDirective,
],
providers: []
},] }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhcjItcHJvbWlzZS1idXR0b25zLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIyLXByb21pc2UtYnV0dG9ucy9zcmMvYW5ndWxhcjItcHJvbWlzZS1idXR0b25zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXNCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUU1RCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sWUFBWSxDQUFDO0FBWW5DLE1BQU0sT0FBTywyQkFBMkI7SUFDdEMsc0NBQXNDO0lBQ3RDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBeUI7UUFDdEMsK0RBQStEO1FBQy9ELE9BQU87WUFDTCxRQUFRLEVBQUUsMkJBQTJCO1lBQ3JDLFNBQVMsRUFBRSxDQUFDLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFDLENBQUM7U0FDbEQsQ0FBQztJQUNKLENBQUM7OztZQWxCRixRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFO29CQUNaLG1CQUFtQjtpQkFDcEI7Z0JBQ0QsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsT0FBTyxFQUFFO29CQUNQLG1CQUFtQjtpQkFDcEI7Z0JBQ0QsU0FBUyxFQUFFLEVBQUU7YUFDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtQcm9taXNlQnRuRGlyZWN0aXZlfSBmcm9tICcuL3Byb21pc2UtYnRuLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1Byb21pc2VCdG5Db25maWd9IGZyb20gJy4vcHJvbWlzZS1idG4tY29uZmlnJztcbmltcG9ydCB7dXNlckNmZ30gZnJvbSAnLi91c2VyLWNmZyc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFByb21pc2VCdG5EaXJlY3RpdmUsXG4gIF0sXG4gIGltcG9ydHM6IFtdLFxuICBleHBvcnRzOiBbXG4gICAgUHJvbWlzZUJ0bkRpcmVjdGl2ZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyMlByb21pc2VCdXR0b25Nb2R1bGUge1xuICAvLyBhZGQgZm9yUm9vdCB0byBtYWtlIGl0IGNvbmZpZ3VyYWJsZVxuICBzdGF0aWMgZm9yUm9vdChjb25maWc/OiBQcm9taXNlQnRuQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBbmd1bGFyMlByb21pc2VCdXR0b25Nb2R1bGU+IHtcbiAgICAvLyBOT1RFOiB0aGlzIGlzIG5ldmVyIGFsbG93ZWQgdG8gY29udGFpbiBhbnkgY29uZGl0aW9uYWwgbG9naWNcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFuZ3VsYXIyUHJvbWlzZUJ1dHRvbk1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW3twcm92aWRlOiB1c2VyQ2ZnLCB1c2VWYWx1ZTogY29uZmlnfV1cbiAgICB9O1xuICB9XG59XG4iXX0=
Angular2PromiseButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Angular2PromiseButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
Angular2PromiseButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Angular2PromiseButtonModule, declarations: [PromiseBtnDirective], exports: [PromiseBtnDirective] });
Angular2PromiseButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Angular2PromiseButtonModule, providers: [], imports: [[]] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Angular2PromiseButtonModule, decorators: [{
type: NgModule,
args: [{
declarations: [
PromiseBtnDirective,
],
imports: [],
exports: [
PromiseBtnDirective,
],
providers: []
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhcjItcHJvbWlzZS1idXR0b25zLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIyLXByb21pc2UtYnV0dG9ucy9zcmMvYW5ndWxhcjItcHJvbWlzZS1idXR0b25zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXNCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUU1RCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sWUFBWSxDQUFDOztBQVluQyxNQUFNLE9BQU8sMkJBQTJCO0lBQ3RDLHNDQUFzQztJQUN0QyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQXlCO1FBQ3RDLCtEQUErRDtRQUMvRCxPQUFPO1lBQ0wsUUFBUSxFQUFFLDJCQUEyQjtZQUNyQyxTQUFTLEVBQUUsQ0FBQyxFQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBQyxDQUFDO1NBQ2xELENBQUM7SUFDSixDQUFDOzt5SEFSVSwyQkFBMkI7MEhBQTNCLDJCQUEyQixpQkFScEMsbUJBQW1CLGFBSW5CLG1CQUFtQjswSEFJViwyQkFBMkIsYUFGM0IsRUFBRSxZQUpKLEVBQUU7NEZBTUEsMkJBQTJCO2tCQVZ2QyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixtQkFBbUI7cUJBQ3BCO29CQUNELE9BQU8sRUFBRSxFQUFFO29CQUNYLE9BQU8sRUFBRTt3QkFDUCxtQkFBbUI7cUJBQ3BCO29CQUNELFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1Byb21pc2VCdG5EaXJlY3RpdmV9IGZyb20gJy4vcHJvbWlzZS1idG4uZGlyZWN0aXZlJztcbmltcG9ydCB7UHJvbWlzZUJ0bkNvbmZpZ30gZnJvbSAnLi9wcm9taXNlLWJ0bi1jb25maWcnO1xuaW1wb3J0IHt1c2VyQ2ZnfSBmcm9tICcuL3VzZXItY2ZnJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgUHJvbWlzZUJ0bkRpcmVjdGl2ZSxcbiAgXSxcbiAgaW1wb3J0czogW10sXG4gIGV4cG9ydHM6IFtcbiAgICBQcm9taXNlQnRuRGlyZWN0aXZlLFxuICBdLFxuICBwcm92aWRlcnM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIEFuZ3VsYXIyUHJvbWlzZUJ1dHRvbk1vZHVsZSB7XG4gIC8vIGFkZCBmb3JSb290IHRvIG1ha2UgaXQgY29uZmlndXJhYmxlXG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZz86IFByb21pc2VCdG5Db25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEFuZ3VsYXIyUHJvbWlzZUJ1dHRvbk1vZHVsZT4ge1xuICAgIC8vIE5PVEU6IHRoaXMgaXMgbmV2ZXIgYWxsb3dlZCB0byBjb250YWluIGFueSBjb25kaXRpb25hbCBsb2dpY1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogQW5ndWxhcjJQcm9taXNlQnV0dG9uTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbe3Byb3ZpZGU6IHVzZXJDZmcsIHVzZVZhbHVlOiBjb25maWd9XVxuICAgIH07XG4gIH1cbn1cbiJdfQ==

@@ -1,5 +0,6 @@

import { Directive, ElementRef, HostListener, Inject, Input } from '@angular/core';
import { Directive, HostListener, Inject, Input } from '@angular/core';
import { Observable, Subscription } from 'rxjs';
import { DEFAULT_CFG } from './default-promise-btn-config';
import { userCfg } from './user-cfg';
import * as i0 from "@angular/core";
export class PromiseBtnDirective {

@@ -199,16 +200,21 @@ constructor(el, cfg) {

}
PromiseBtnDirective.decorators = [
{ type: Directive, args: [{
selector: '[promiseBtn]'
},] }
];
PromiseBtnDirective.ctorParameters = () => [
{ type: ElementRef },
{ type: undefined, decorators: [{ type: Inject, args: [userCfg,] }] }
];
PromiseBtnDirective.propDecorators = {
isDisabledFromTheOutsideSetter: [{ type: Input, args: ['disabled',] }],
promiseBtn: [{ type: Input }],
handleCurrentBtnOnly: [{ type: HostListener, args: ['click',] }]
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbWlzZS1idG4uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjItcHJvbWlzZS1idXR0b25zL3NyYy9wcm9taXNlLWJ0bi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBQyxVQUFVLEVBQUUsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUV6RCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sWUFBWSxDQUFDO0FBTW5DLE1BQU0sT0FBTyxtQkFBbUI7SUFnQzlCLFlBQVksRUFBYyxFQUNHLEdBQXFCO1FBQ2hELHdCQUF3QjtRQUN4QixJQUFJLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUUvQyxlQUFlO1FBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ2hDLENBQUM7SUF6QkQsNkZBQTZGO0lBQzdGLG1FQUFtRTtJQUNuRSxJQUNJLDhCQUE4QixDQUFDLENBQVU7UUFDM0MsSUFBSSxDQUFDLHdCQUF3QixHQUFHLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsRUFBRTtZQUNMLGlDQUFpQztZQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDakQ7YUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxTQUFTLEVBQUU7WUFDakUsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLENB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QUFFLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBb0IsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7O09BR0c7SUFFSCxvQkFBb0I7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLEVBQUU7WUFDbEMsT0FBTyxJQUFJLENBQUMsQ0FBQywwQkFBMEI7U0FDeEM7UUFFRCwrQkFBK0I7UUFDL0Isc0RBQXNEO1FBQ3RELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ3JCLG9EQUFvRDtZQUNwRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDakIsT0FBTzthQUNSO1lBRUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDOzs7WUFoUEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxjQUFjO2FBQ3pCOzs7WUFSb0MsVUFBVTs0Q0EyQ2hDLE1BQU0sU0FBQyxPQUFPOzs7NkNBakIxQixLQUFLLFNBQUMsVUFBVTt5QkF5QmhCLEtBQUs7bUNBbUxMLFlBQVksU0FBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlckNvbnRlbnRJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5qZWN0LCBJbnB1dCwgT25EZXN0cm95fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7REVGQVVMVF9DRkd9IGZyb20gJy4vZGVmYXVsdC1wcm9taXNlLWJ0bi1jb25maWcnO1xuaW1wb3J0IHtQcm9taXNlQnRuQ29uZmlnfSBmcm9tICcuL3Byb21pc2UtYnRuLWNvbmZpZyc7XG5pbXBvcnQge3VzZXJDZmd9IGZyb20gJy4vdXNlci1jZmcnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbcHJvbWlzZUJ0bl0nXG59KVxuXG5leHBvcnQgY2xhc3MgUHJvbWlzZUJ0bkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIGNmZzogUHJvbWlzZUJ0bkNvbmZpZztcbiAgLy8gdGhlIHRpbWVvdXQgdXNlZCBmb3IgbWluIGR1cmF0aW9uIGRpc3BsYXlcbiAgbWluRHVyYXRpb25UaW1lb3V0OiBudW1iZXI7XG4gIC8vIGJvb2xlYW4gdG8gZGV0ZXJtaW5lIG1pbkR1cmF0aW9uVGltZW91dCBzdGF0ZVxuICBpc01pbkR1cmF0aW9uVGltZW91dERvbmU6IGJvb2xlYW47XG4gIC8vIGJvb2xlYW4gdG8gZGV0ZXJtaW5lIGlmIHByb21pc2Ugd2FzIHJlc29sdmVkXG4gIGlzUHJvbWlzZURvbmU6IGJvb2xlYW47XG4gIC8vIHRoZSBwcm9taXNlIGJ1dHRvbiBidXR0b24gZWxlbWVudFxuICBidG5FbDogSFRNTEVsZW1lbnQ7XG4gIC8vIHRoZSBwcm9taXNlIGl0c2VsZiBvciBhIGZ1bmN0aW9uIGV4cHJlc3Npb25cbiAgLy8gTk9URTogd2UgbmVlZCB0aGUgdHlwZSBhbnkgaGVyZSBhcyB3ZSBtaWdodCBkZWFsIHdpdGggY3VzdG9tIHByb21pc2VzIGxpa2UgYmx1ZWJpcmRcbiAgcHJvbWlzZTogYW55O1xuXG4gIC8vIHRoaXMgaXMgYWRkZWQgdG8gZml4IHRoZSBvdmVycmlkaW5nIG9mIHRoZSBkaXNhYmxlZCBzdGF0ZSBieSB0aGUgbG9hZGluZyBpbmRpY2F0b3IgYnV0dG9uLlxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vam9oYW5uZXNqby9hbmd1bGFyMi1wcm9taXNlLWJ1dHRvbnMvaXNzdWVzLzM0XG4gIEBJbnB1dCgnZGlzYWJsZWQnKVxuICBzZXQgaXNEaXNhYmxlZEZyb21UaGVPdXRzaWRlU2V0dGVyKHY6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmlzRGlzYWJsZWRGcm9tVGhlT3V0c2lkZSA9IHY7XG4gICAgaWYgKHYpIHtcbiAgICAgIC8vIGRpc2FibGVkIG1lYW5zIGFsd2F5cyBkaXNhYmxlZFxuICAgICAgdGhpcy5idG5FbC5zZXRBdHRyaWJ1dGUoJ2Rpc2FibGVkJywgJ2Rpc2FibGVkJyk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmlzUHJvbWlzZURvbmUgfHwgdGhpcy5pc1Byb21pc2VEb25lID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuYnRuRWwucmVtb3ZlQXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICAgIH1cbiAgICAvLyBlbHNlIHRoZSBidXR0b24gaXMgbG9hZGluZywgc28gZG8gbm90IGNoYW5nZSB0aGUgZGlzYWJsZWQgbG9hZGluZyBzdGF0ZS5cbiAgfVxuXG4gIGlzRGlzYWJsZWRGcm9tVGhlT3V0c2lkZTogYm9vbGVhbjtcblxuICBwcml2YXRlIF9mYWtlUHJvbWlzZVJlc29sdmU6ICgpID0+IHZvaWQ7XG5cbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsXG4gICAgICAgICAgICAgIEBJbmplY3QodXNlckNmZykgY2ZnOiBQcm9taXNlQnRuQ29uZmlnKSB7XG4gICAgLy8gcHJvdmlkZSBjb25maWd1cmF0aW9uXG4gICAgdGhpcy5jZmcgPSBPYmplY3QuYXNzaWduKHt9LCBERUZBVUxUX0NGRywgY2ZnKTtcblxuICAgIC8vIHNhdmUgZWxlbWVudFxuICAgIHRoaXMuYnRuRWwgPSBlbC5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHByb21pc2VCdG4ocGFzc2VkVmFsdWU6IGFueSkge1xuICAgIGNvbnN0IGlzT2JzZXJ2YWJsZTogYm9vbGVhbiA9IHBhc3NlZFZhbHVlIGluc3RhbmNlb2YgT2JzZXJ2YWJsZTtcbiAgICBjb25zdCBpc1N1YnNjcmlwdGlvbjogYm9vbGVhbiA9IHBhc3NlZFZhbHVlIGluc3RhbmNlb2YgU3Vic2NyaXB0aW9uO1xuICAgIGNvbnN0IGlzQm9vbGVhbjogYm9vbGVhbiA9IHR5cGVvZiBwYXNzZWRWYWx1ZSA9PT0gJ2Jvb2xlYW4nO1xuICAgIGNvbnN0IGlzUHJvbWlzZTogYm9vbGVhbiA9IHBhc3NlZFZhbHVlIGluc3RhbmNlb2YgUHJvbWlzZSB8fCAoXG4gICAgICBwYXNzZWRWYWx1ZSAhPT0gbnVsbCAmJlxuICAgICAgdHlwZW9mIHBhc3NlZFZhbHVlID09PSAnb2JqZWN0JyAmJlxuICAgICAgdHlwZW9mIHBhc3NlZFZhbHVlLnRoZW4gPT09ICdmdW5jdGlvbicgJiZcbiAgICAgIHR5cGVvZiBwYXNzZWRWYWx1ZS5jYXRjaCA9PT0gJ2Z1bmN0aW9uJ1xuICAgICk7XG5cbiAgICBpZiAoaXNPYnNlcnZhYmxlKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdwcm9taXNlQnRuIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgU3Vic2NyaXB0aW9uLCBpbnN0YW5jZSBvZiBPYnNlcnZhYmxlIGdpdmVuJyk7XG4gICAgfSBlbHNlIGlmIChpc1N1YnNjcmlwdGlvbikge1xuICAgICAgY29uc3Qgc3ViOiBTdWJzY3JpcHRpb24gPSBwYXNzZWRWYWx1ZTtcbiAgICAgIGlmICghc3ViLmNsb3NlZCkge1xuICAgICAgICB0aGlzLnByb21pc2UgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgIHN1Yi5hZGQocmVzb2x2ZSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoaXNQcm9taXNlKSB7XG4gICAgICB0aGlzLnByb21pc2UgPSBwYXNzZWRWYWx1ZTtcbiAgICB9IGVsc2UgaWYgKGlzQm9vbGVhbikge1xuICAgICAgdGhpcy5wcm9taXNlID0gdGhpcy5jcmVhdGVQcm9taXNlRnJvbUJvb2xlYW4ocGFzc2VkVmFsdWUpO1xuICAgIH1cblxuICAgIHRoaXMuY2hlY2tBbmRJbml0UHJvbWlzZUhhbmRsZXIodGhpcy5idG5FbCk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgdGhpcy5wcmVwYXJlQnRuRWwodGhpcy5idG5FbCk7XG4gICAgLy8gdHJpZ2dlciBjaGFuZ2VzIG9uY2UgdG8gaGFuZGxlIGluaXRpYWwgcHJvbWlzZXNcbiAgICB0aGlzLmNoZWNrQW5kSW5pdFByb21pc2VIYW5kbGVyKHRoaXMuYnRuRWwpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy8gY2xlYW51cFxuICAgIGlmICh0aGlzLm1pbkR1cmF0aW9uVGltZW91dCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMubWluRHVyYXRpb25UaW1lb3V0KTtcbiAgICB9XG4gIH1cblxuICBjcmVhdGVQcm9taXNlRnJvbUJvb2xlYW4odmFsOiBib29sZWFuKTogUHJvbWlzZTxhbnk+IHtcbiAgICBpZiAodmFsKSB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgdGhpcy5fZmFrZVByb21pc2VSZXNvbHZlID0gcmVzb2x2ZTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5fZmFrZVByb21pc2VSZXNvbHZlKSB7XG4gICAgICAgIHRoaXMuX2Zha2VQcm9taXNlUmVzb2x2ZSgpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMucHJvbWlzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZXMgYWxsIGh0bWwgYW5kIGV2ZW50IGhhbmRsZXJzXG4gICAqL1xuICBwcmVwYXJlQnRuRWwoYnRuRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgLy8gaGFuZGxlIHByb21pc2VzIHBhc3NlZCB2aWEgcHJvbWlzZUJ0biBhdHRyaWJ1dGVcbiAgICB0aGlzLmFwcGVuZFNwaW5uZXJUcGwoYnRuRWwpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiBhbGwgcmVxdWlyZWQgcGFyYW1ldGVycyBhcmUgdGhlcmUgYW5kIGluaXRzIHRoZSBwcm9taXNlIGhhbmRsZXJcbiAgICovXG4gIGNoZWNrQW5kSW5pdFByb21pc2VIYW5kbGVyKGJ0bkVsOiBIVE1MRWxlbWVudCkge1xuICAgIC8vIGNoZWNrIGlmIGVsZW1lbnQgYW5kIHByb21pc2UgaXMgc2V0XG4gICAgaWYgKGJ0bkVsICYmIHRoaXMucHJvbWlzZSkge1xuICAgICAgdGhpcy5pbml0UHJvbWlzZUhhbmRsZXIoYnRuRWwpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIZWxwZXIgRk4gdG8gYWRkIGNsYXNzXG4gICAqL1xuICBhZGRMb2FkaW5nQ2xhc3MoZWw6IGFueSkge1xuICAgIGlmICh0eXBlb2YgdGhpcy5jZmcuYnRuTG9hZGluZ0NsYXNzID09PSAnc3RyaW5nJykge1xuICAgICAgZWwuY2xhc3NMaXN0LmFkZCh0aGlzLmNmZy5idG5Mb2FkaW5nQ2xhc3MpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIZWxwZXIgRk4gdG8gcmVtb3ZlIGNsYXNzZXNcbiAgICovXG4gIHJlbW92ZUxvYWRpbmdDbGFzcyhlbDogYW55KSB7XG4gICAgaWYgKHR5cGVvZiB0aGlzLmNmZy5idG5Mb2FkaW5nQ2xhc3MgPT09ICdzdHJpbmcnKSB7XG4gICAgICBlbC5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuY2ZnLmJ0bkxvYWRpbmdDbGFzcyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgZXZlcnl0aGluZyB0byBiZSB0cmlnZ2VyZWQgd2hlbiB0aGUgYnV0dG9uIGlzIHNldFxuICAgKiB0byBsb2FkaW5nIHN0YXRlLlxuICAgKi9cbiAgaW5pdExvYWRpbmdTdGF0ZShidG5FbDogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLmFkZExvYWRpbmdDbGFzcyhidG5FbCk7XG4gICAgdGhpcy5kaXNhYmxlQnRuKGJ0bkVsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIGV2ZXJ5dGhpbmcgdG8gYmUgdHJpZ2dlcmVkIHdoZW4gbG9hZGluZyBpcyBmaW5pc2hlZFxuICAgKi9cbiAgY2FuY2VsTG9hZGluZ1N0YXRlSWZQcm9taXNlQW5kTWluRHVyYXRpb25Eb25lKGJ0bkVsOiBIVE1MRWxlbWVudCkge1xuICAgIGlmICgoIXRoaXMuY2ZnLm1pbkR1cmF0aW9uIHx8IHRoaXMuaXNNaW5EdXJhdGlvblRpbWVvdXREb25lKSAmJiB0aGlzLmlzUHJvbWlzZURvbmUpIHtcbiAgICAgIHRoaXMucmVtb3ZlTG9hZGluZ0NsYXNzKGJ0bkVsKTtcbiAgICAgIHRoaXMuZW5hYmxlQnRuKGJ0bkVsKTtcbiAgICB9XG4gIH1cblxuICBkaXNhYmxlQnRuKGJ0bkVsOiBIVE1MRWxlbWVudCkge1xuICAgIGlmICh0aGlzLmNmZy5kaXNhYmxlQnRuKSB7XG4gICAgICBidG5FbC5zZXRBdHRyaWJ1dGUoJ2Rpc2FibGVkJywgJ2Rpc2FibGVkJyk7XG4gICAgfVxuICB9XG5cbiAgZW5hYmxlQnRuKGJ0bkVsOiBIVE1MRWxlbWVudCkge1xuICAgIGlmICh0aGlzLmNmZy5kaXNhYmxlQnRuKSB7XG4gICAgICBpZiAodGhpcy5pc0Rpc2FibGVkRnJvbVRoZU91dHNpZGUpIHtcbiAgICAgICAgYnRuRWwuc2V0QXR0cmlidXRlKCdkaXNhYmxlZCcsICdkaXNhYmxlZCcpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYnRuRWwucmVtb3ZlQXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyBhIHdhdGNoZXIgZm9yIHRoZSBwcm9taXNlLiBBbHNvIHRha2VzXG4gICAqIHRoaXMuY2ZnLm1pbkR1cmF0aW9uIGludG8gYWNjb3VudCBpZiBnaXZlbi5cbiAgICovXG5cbiAgaW5pdFByb21pc2VIYW5kbGVyKGJ0bkVsOiBIVE1MRWxlbWVudCkge1xuICAgIGNvbnN0IHByb21pc2UgPSB0aGlzLnByb21pc2U7XG5cbiAgICAvLyB3YXRjaCBwcm9taXNlIHRvIHJlc29sdmUgb3IgZmFpbFxuICAgIHRoaXMuaXNNaW5EdXJhdGlvblRpbWVvdXREb25lID0gZmFsc2U7XG4gICAgdGhpcy5pc1Byb21pc2VEb25lID0gZmFsc2U7XG5cbiAgICAvLyBjcmVhdGUgdGltZW91dCBpZiBvcHRpb24gaXMgc2V0XG4gICAgaWYgKHRoaXMuY2ZnLm1pbkR1cmF0aW9uKSB7XG4gICAgICB0aGlzLm1pbkR1cmF0aW9uVGltZW91dCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5pc01pbkR1cmF0aW9uVGltZW91dERvbmUgPSB0cnVlO1xuICAgICAgICB0aGlzLmNhbmNlbExvYWRpbmdTdGF0ZUlmUHJvbWlzZUFuZE1pbkR1cmF0aW9uRG9uZShidG5FbCk7XG4gICAgICB9LCB0aGlzLmNmZy5taW5EdXJhdGlvbik7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzb2x2ZUxvYWRpbmdTdGF0ZSA9ICgpID0+IHtcbiAgICAgIHRoaXMuaXNQcm9taXNlRG9uZSA9IHRydWU7XG4gICAgICB0aGlzLmNhbmNlbExvYWRpbmdTdGF0ZUlmUHJvbWlzZUFuZE1pbkR1cmF0aW9uRG9uZShidG5FbCk7XG4gICAgfTtcblxuICAgIGlmICghdGhpcy5jZmcuaGFuZGxlQ3VycmVudEJ0bk9ubHkpIHtcbiAgICAgIHRoaXMuaW5pdExvYWRpbmdTdGF0ZShidG5FbCk7XG4gICAgfVxuICAgIC8vIG5hdGl2ZSBQcm9taXNlIGRvZXNuJ3QgaGF2ZSBmaW5hbGx5XG4gICAgaWYgKHByb21pc2UuZmluYWxseSkge1xuICAgICAgcHJvbWlzZS5maW5hbGx5KHJlc29sdmVMb2FkaW5nU3RhdGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBwcm9taXNlXG4gICAgICAgIC50aGVuKHJlc29sdmVMb2FkaW5nU3RhdGUpXG4gICAgICAgIC5jYXRjaChyZXNvbHZlTG9hZGluZ1N0YXRlKTtcbiAgICB9XG5cbiAgfVxuXG5cbiAgLyoqXG4gICAqICRjb21waWxlIGFuZCBhcHBlbmQgdGhlIHNwaW5uZXIgdGVtcGxhdGUgdG8gdGhlIGJ1dHRvbi5cbiAgICovXG4gIGFwcGVuZFNwaW5uZXJUcGwoYnRuRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgLy8gVE9ETyBhZGQgc29tZSBraW5kIG9mIGNvbXBpbGF0aW9uIGxhdGVyIG9uXG4gICAgYnRuRWwuaW5zZXJ0QWRqYWNlbnRIVE1MKCdiZWZvcmVlbmQnLCB0aGlzLmNmZy5zcGlubmVyVHBsIGFzIHN0cmluZyk7XG4gIH1cblxuICAvKipcbiAgICogTGltaXQgbG9hZGluZyBzdGF0ZSB0byBzaG93IG9ubHkgZm9yIHRoZSBjdXJyZW50bHkgY2xpY2tlZCBidXR0b24uXG4gICAqIEV4ZWN1dGVkIG9ubHkgaWYgdGhpcy5jZmcuaGFuZGxlQ3VycmVudEJ0bk9ubHkgaXMgc2V0XG4gICAqL1xuICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gIGhhbmRsZUN1cnJlbnRCdG5Pbmx5KCkge1xuICAgIGlmICghdGhpcy5jZmcuaGFuZGxlQ3VycmVudEJ0bk9ubHkpIHtcbiAgICAgIHJldHVybiB0cnVlOyAvLyByZXR1cm4gdHJ1ZSBmb3IgdGVzdGluZ1xuICAgIH1cblxuICAgIC8vIENsaWNrIHRyaWdnZXJzIEBJbnB1dCB1cGRhdGVcbiAgICAvLyBXZSBuZWVkIHRvIHVzZSB0aW1lb3V0IHRvIHdhaXQgZm9yIEBJbnB1dCB0byB1cGRhdGVcbiAgICB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAvLyByZXR1cm4gaWYgc29tZXRoaW5nIGVsc2UgdGhhbiBhIHByb21pc2UgaXMgcGFzc2VkXG4gICAgICBpZiAoIXRoaXMucHJvbWlzZSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuaW5pdExvYWRpbmdTdGF0ZSh0aGlzLmJ0bkVsKTtcbiAgICB9LCAwKTtcbiAgfVxufVxuIl19
PromiseBtnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PromiseBtnDirective, deps: [{ token: i0.ElementRef }, { token: userCfg }], target: i0.ɵɵFactoryTarget.Directive });
PromiseBtnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: PromiseBtnDirective, selector: "[promiseBtn]", inputs: { isDisabledFromTheOutsideSetter: ["disabled", "isDisabledFromTheOutsideSetter"], promiseBtn: "promiseBtn" }, host: { listeners: { "click": "handleCurrentBtnOnly()" } }, ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PromiseBtnDirective, decorators: [{
type: Directive,
args: [{
selector: '[promiseBtn]'
}]
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
type: Inject,
args: [userCfg]
}] }]; }, propDecorators: { isDisabledFromTheOutsideSetter: [{
type: Input,
args: ['disabled']
}], promiseBtn: [{
type: Input
}], handleCurrentBtnOnly: [{
type: HostListener,
args: ['click']
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbWlzZS1idG4uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjItcHJvbWlzZS1idXR0b25zL3NyYy9wcm9taXNlLWJ0bi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQixTQUFTLEVBQWMsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFDLFVBQVUsRUFBRSxZQUFZLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBRXpELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxZQUFZLENBQUM7O0FBTW5DLE1BQU0sT0FBTyxtQkFBbUI7SUFnQzlCLFlBQVksRUFBYyxFQUNHLEdBQXFCO1FBQ2hELHdCQUF3QjtRQUN4QixJQUFJLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUUvQyxlQUFlO1FBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ2hDLENBQUM7SUF6QkQsNkZBQTZGO0lBQzdGLG1FQUFtRTtJQUNuRSxJQUNJLDhCQUE4QixDQUFDLENBQVU7UUFDM0MsSUFBSSxDQUFDLHdCQUF3QixHQUFHLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsRUFBRTtZQUNMLGlDQUFpQztZQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDakQ7YUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxTQUFTLEVBQUU7WUFDakUsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDeEM7UUFDRCwyRUFBMkU7SUFDN0UsQ0FBQztJQWVELElBQ0ksVUFBVSxDQUFDLFdBQWdCO1FBQzdCLE1BQU0sWUFBWSxHQUFZLFdBQVcsWUFBWSxVQUFVLENBQUM7UUFDaEUsTUFBTSxjQUFjLEdBQVksV0FBVyxZQUFZLFlBQVksQ0FBQztRQUNwRSxNQUFNLFNBQVMsR0FBWSxPQUFPLFdBQVcsS0FBSyxTQUFTLENBQUM7UUFDNUQsTUFBTSxTQUFTLEdBQVksV0FBVyxZQUFZLE9BQU8sSUFBSSxDQUMzRCxXQUFXLEtBQUssSUFBSTtZQUNwQixPQUFPLFdBQVcsS0FBSyxRQUFRO1lBQy9CLE9BQU8sV0FBVyxDQUFDLElBQUksS0FBSyxVQUFVO1lBQ3RDLE9BQU8sV0FBVyxDQUFDLEtBQUssS0FBSyxVQUFVLENBQ3hDLENBQUM7UUFFRixJQUFJLFlBQVksRUFBRTtZQUNoQixNQUFNLElBQUksU0FBUyxDQUFDLDhFQUE4RSxDQUFDLENBQUM7U0FDckc7YUFBTSxJQUFJLGNBQWMsRUFBRTtZQUN6QixNQUFNLEdBQUcsR0FBaUIsV0FBVyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFO2dCQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtvQkFDckMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDbkIsQ0FBQyxDQUFDLENBQUM7YUFDSjtTQUNGO2FBQU0sSUFBSSxTQUFTLEVBQUU7WUFDcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUM7U0FDNUI7YUFBTSxJQUFJLFNBQVMsRUFBRTtZQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUMzRDtRQUVELElBQUksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixrREFBa0Q7UUFDbEQsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsV0FBVztRQUNULFVBQVU7UUFDVixJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMzQixZQUFZLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDdkM7SUFDSCxDQUFDO0lBRUQsd0JBQXdCLENBQUMsR0FBWTtRQUNuQyxJQUFJLEdBQUcsRUFBRTtZQUNQLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLE9BQU8sQ0FBQztZQUNyQyxDQUFDLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtnQkFDNUIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7YUFDNUI7WUFDRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxZQUFZLENBQUMsS0FBa0I7UUFDN0Isa0RBQWtEO1FBQ2xELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7O09BRUc7SUFDSCwwQkFBMEIsQ0FBQyxLQUFrQjtRQUMzQyxzQ0FBc0M7UUFDdEMsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN6QixJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDaEM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxlQUFlLENBQUMsRUFBTztRQUNyQixJQUFJLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEtBQUssUUFBUSxFQUFFO1lBQ2hELEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDNUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxrQkFBa0IsQ0FBQyxFQUFPO1FBQ3hCLElBQUksT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsS0FBSyxRQUFRLEVBQUU7WUFDaEQsRUFBRSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUMvQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxnQkFBZ0IsQ0FBQyxLQUFrQjtRQUNqQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsNkNBQTZDLENBQUMsS0FBa0I7UUFDOUQsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNsRixJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN2QjtJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsS0FBa0I7UUFDM0IsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRTtZQUN2QixLQUFLLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUM1QztJQUNILENBQUM7SUFFRCxTQUFTLENBQUMsS0FBa0I7UUFDMUIsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtnQkFDakMsS0FBSyxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7YUFDNUM7aUJBQU07Z0JBQ0wsS0FBSyxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUNuQztTQUNGO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUVILGtCQUFrQixDQUFDLEtBQWtCO1FBQ25DLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFN0IsbUNBQW1DO1FBQ25DLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxLQUFLLENBQUM7UUFDdEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7UUFFM0Isa0NBQWtDO1FBQ2xDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUMvQyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDO2dCQUNyQyxJQUFJLENBQUMsNkNBQTZDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDNUQsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDMUI7UUFFRCxNQUFNLG1CQUFtQixHQUFHLEdBQUcsRUFBRTtZQUMvQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztZQUMxQixJQUFJLENBQUMsNkNBQTZDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUQsQ0FBQyxDQUFDO1FBRUYsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLEVBQUU7WUFDbEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlCO1FBQ0Qsc0NBQXNDO1FBQ3RDLElBQUksT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUNuQixPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDdEM7YUFBTTtZQUNMLE9BQU87aUJBQ0osSUFBSSxDQUFDLG1CQUFtQixDQUFDO2lCQUN6QixLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztTQUMvQjtJQUVILENBQUM7SUFHRDs7T0FFRztJQUNILGdCQUFnQixDQUFDLEtBQWtCO1FBQ2pDLDZDQUE2QztRQUM3QyxLQUFLLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBb0IsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7O09BR0c7SUFFSCxvQkFBb0I7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLEVBQUU7WUFDbEMsT0FBTyxJQUFJLENBQUMsQ0FBQywwQkFBMEI7U0FDeEM7UUFFRCwrQkFBK0I7UUFDL0Isc0RBQXNEO1FBQ3RELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ3JCLG9EQUFvRDtZQUNwRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDakIsT0FBTzthQUNSO1lBRUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDOztpSEE1T1UsbUJBQW1CLDRDQWlDVixPQUFPO3FHQWpDaEIsbUJBQW1COzRGQUFuQixtQkFBbUI7a0JBSi9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7aUJBQ3pCOzswQkFtQ2MsTUFBTTsyQkFBQyxPQUFPOzRDQWhCdkIsOEJBQThCO3NCQURqQyxLQUFLO3VCQUFDLFVBQVU7Z0JBMEJiLFVBQVU7c0JBRGIsS0FBSztnQkFvTE4sb0JBQW9CO3NCQURuQixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyQ29udGVudEluaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbmplY3QsIElucHV0LCBPbkRlc3Ryb3l9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtERUZBVUxUX0NGR30gZnJvbSAnLi9kZWZhdWx0LXByb21pc2UtYnRuLWNvbmZpZyc7XG5pbXBvcnQge1Byb21pc2VCdG5Db25maWd9IGZyb20gJy4vcHJvbWlzZS1idG4tY29uZmlnJztcbmltcG9ydCB7dXNlckNmZ30gZnJvbSAnLi91c2VyLWNmZyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1twcm9taXNlQnRuXSdcbn0pXG5cbmV4cG9ydCBjbGFzcyBQcm9taXNlQnRuRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95LCBBZnRlckNvbnRlbnRJbml0IHtcbiAgY2ZnOiBQcm9taXNlQnRuQ29uZmlnO1xuICAvLyB0aGUgdGltZW91dCB1c2VkIGZvciBtaW4gZHVyYXRpb24gZGlzcGxheVxuICBtaW5EdXJhdGlvblRpbWVvdXQ6IG51bWJlcjtcbiAgLy8gYm9vbGVhbiB0byBkZXRlcm1pbmUgbWluRHVyYXRpb25UaW1lb3V0IHN0YXRlXG4gIGlzTWluRHVyYXRpb25UaW1lb3V0RG9uZTogYm9vbGVhbjtcbiAgLy8gYm9vbGVhbiB0byBkZXRlcm1pbmUgaWYgcHJvbWlzZSB3YXMgcmVzb2x2ZWRcbiAgaXNQcm9taXNlRG9uZTogYm9vbGVhbjtcbiAgLy8gdGhlIHByb21pc2UgYnV0dG9uIGJ1dHRvbiBlbGVtZW50XG4gIGJ0bkVsOiBIVE1MRWxlbWVudDtcbiAgLy8gdGhlIHByb21pc2UgaXRzZWxmIG9yIGEgZnVuY3Rpb24gZXhwcmVzc2lvblxuICAvLyBOT1RFOiB3ZSBuZWVkIHRoZSB0eXBlIGFueSBoZXJlIGFzIHdlIG1pZ2h0IGRlYWwgd2l0aCBjdXN0b20gcHJvbWlzZXMgbGlrZSBibHVlYmlyZFxuICBwcm9taXNlOiBhbnk7XG5cbiAgLy8gdGhpcyBpcyBhZGRlZCB0byBmaXggdGhlIG92ZXJyaWRpbmcgb2YgdGhlIGRpc2FibGVkIHN0YXRlIGJ5IHRoZSBsb2FkaW5nIGluZGljYXRvciBidXR0b24uXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9qb2hhbm5lc2pvL2FuZ3VsYXIyLXByb21pc2UtYnV0dG9ucy9pc3N1ZXMvMzRcbiAgQElucHV0KCdkaXNhYmxlZCcpXG4gIHNldCBpc0Rpc2FibGVkRnJvbVRoZU91dHNpZGVTZXR0ZXIodjogYm9vbGVhbikge1xuICAgIHRoaXMuaXNEaXNhYmxlZEZyb21UaGVPdXRzaWRlID0gdjtcbiAgICBpZiAodikge1xuICAgICAgLy8gZGlzYWJsZWQgbWVhbnMgYWx3YXlzIGRpc2FibGVkXG4gICAgICB0aGlzLmJ0bkVsLnNldEF0dHJpYnV0ZSgnZGlzYWJsZWQnLCAnZGlzYWJsZWQnKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNQcm9taXNlRG9uZSB8fCB0aGlzLmlzUHJvbWlzZURvbmUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5idG5FbC5yZW1vdmVBdHRyaWJ1dGUoJ2Rpc2FibGVkJyk7XG4gICAgfVxuICAgIC8vIGVsc2UgdGhlIGJ1dHRvbiBpcyBsb2FkaW5nLCBzbyBkbyBub3QgY2hhbmdlIHRoZSBkaXNhYmxlZCBsb2FkaW5nIHN0YXRlLlxuICB9XG5cbiAgaXNEaXNhYmxlZEZyb21UaGVPdXRzaWRlOiBib29sZWFuO1xuXG4gIHByaXZhdGUgX2Zha2VQcm9taXNlUmVzb2x2ZTogKHZhbHVlOiB2b2lkKSA9PiB2b2lkO1xuXG4gIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmLFxuICAgICAgICAgICAgICBASW5qZWN0KHVzZXJDZmcpIGNmZzogUHJvbWlzZUJ0bkNvbmZpZykge1xuICAgIC8vIHByb3ZpZGUgY29uZmlndXJhdGlvblxuICAgIHRoaXMuY2ZnID0gT2JqZWN0LmFzc2lnbih7fSwgREVGQVVMVF9DRkcsIGNmZyk7XG5cbiAgICAvLyBzYXZlIGVsZW1lbnRcbiAgICB0aGlzLmJ0bkVsID0gZWwubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBwcm9taXNlQnRuKHBhc3NlZFZhbHVlOiBhbnkpIHtcbiAgICBjb25zdCBpc09ic2VydmFibGU6IGJvb2xlYW4gPSBwYXNzZWRWYWx1ZSBpbnN0YW5jZW9mIE9ic2VydmFibGU7XG4gICAgY29uc3QgaXNTdWJzY3JpcHRpb246IGJvb2xlYW4gPSBwYXNzZWRWYWx1ZSBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbjtcbiAgICBjb25zdCBpc0Jvb2xlYW46IGJvb2xlYW4gPSB0eXBlb2YgcGFzc2VkVmFsdWUgPT09ICdib29sZWFuJztcbiAgICBjb25zdCBpc1Byb21pc2U6IGJvb2xlYW4gPSBwYXNzZWRWYWx1ZSBpbnN0YW5jZW9mIFByb21pc2UgfHwgKFxuICAgICAgcGFzc2VkVmFsdWUgIT09IG51bGwgJiZcbiAgICAgIHR5cGVvZiBwYXNzZWRWYWx1ZSA9PT0gJ29iamVjdCcgJiZcbiAgICAgIHR5cGVvZiBwYXNzZWRWYWx1ZS50aGVuID09PSAnZnVuY3Rpb24nICYmXG4gICAgICB0eXBlb2YgcGFzc2VkVmFsdWUuY2F0Y2ggPT09ICdmdW5jdGlvbidcbiAgICApO1xuXG4gICAgaWYgKGlzT2JzZXJ2YWJsZSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigncHJvbWlzZUJ0biBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIFN1YnNjcmlwdGlvbiwgaW5zdGFuY2Ugb2YgT2JzZXJ2YWJsZSBnaXZlbicpO1xuICAgIH0gZWxzZSBpZiAoaXNTdWJzY3JpcHRpb24pIHtcbiAgICAgIGNvbnN0IHN1YjogU3Vic2NyaXB0aW9uID0gcGFzc2VkVmFsdWU7XG4gICAgICBpZiAoIXN1Yi5jbG9zZWQpIHtcbiAgICAgICAgdGhpcy5wcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICBzdWIuYWRkKHJlc29sdmUpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGlzUHJvbWlzZSkge1xuICAgICAgdGhpcy5wcm9taXNlID0gcGFzc2VkVmFsdWU7XG4gICAgfSBlbHNlIGlmIChpc0Jvb2xlYW4pIHtcbiAgICAgIHRoaXMucHJvbWlzZSA9IHRoaXMuY3JlYXRlUHJvbWlzZUZyb21Cb29sZWFuKHBhc3NlZFZhbHVlKTtcbiAgICB9XG5cbiAgICB0aGlzLmNoZWNrQW5kSW5pdFByb21pc2VIYW5kbGVyKHRoaXMuYnRuRWwpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHRoaXMucHJlcGFyZUJ0bkVsKHRoaXMuYnRuRWwpO1xuICAgIC8vIHRyaWdnZXIgY2hhbmdlcyBvbmNlIHRvIGhhbmRsZSBpbml0aWFsIHByb21pc2VzXG4gICAgdGhpcy5jaGVja0FuZEluaXRQcm9taXNlSGFuZGxlcih0aGlzLmJ0bkVsKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIC8vIGNsZWFudXBcbiAgICBpZiAodGhpcy5taW5EdXJhdGlvblRpbWVvdXQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLm1pbkR1cmF0aW9uVGltZW91dCk7XG4gICAgfVxuICB9XG5cbiAgY3JlYXRlUHJvbWlzZUZyb21Cb29sZWFuKHZhbDogYm9vbGVhbik6IFByb21pc2U8YW55PiB7XG4gICAgaWYgKHZhbCkge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgIHRoaXMuX2Zha2VQcm9taXNlUmVzb2x2ZSA9IHJlc29sdmU7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuX2Zha2VQcm9taXNlUmVzb2x2ZSkge1xuICAgICAgICB0aGlzLl9mYWtlUHJvbWlzZVJlc29sdmUoKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLnByb21pc2U7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIGFsbCBodG1sIGFuZCBldmVudCBoYW5kbGVyc1xuICAgKi9cbiAgcHJlcGFyZUJ0bkVsKGJ0bkVsOiBIVE1MRWxlbWVudCkge1xuICAgIC8vIGhhbmRsZSBwcm9taXNlcyBwYXNzZWQgdmlhIHByb21pc2VCdG4gYXR0cmlidXRlXG4gICAgdGhpcy5hcHBlbmRTcGlubmVyVHBsKGJ0bkVsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgYWxsIHJlcXVpcmVkIHBhcmFtZXRlcnMgYXJlIHRoZXJlIGFuZCBpbml0cyB0aGUgcHJvbWlzZSBoYW5kbGVyXG4gICAqL1xuICBjaGVja0FuZEluaXRQcm9taXNlSGFuZGxlcihidG5FbDogSFRNTEVsZW1lbnQpIHtcbiAgICAvLyBjaGVjayBpZiBlbGVtZW50IGFuZCBwcm9taXNlIGlzIHNldFxuICAgIGlmIChidG5FbCAmJiB0aGlzLnByb21pc2UpIHtcbiAgICAgIHRoaXMuaW5pdFByb21pc2VIYW5kbGVyKGJ0bkVsKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSGVscGVyIEZOIHRvIGFkZCBjbGFzc1xuICAgKi9cbiAgYWRkTG9hZGluZ0NsYXNzKGVsOiBhbnkpIHtcbiAgICBpZiAodHlwZW9mIHRoaXMuY2ZnLmJ0bkxvYWRpbmdDbGFzcyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGVsLmNsYXNzTGlzdC5hZGQodGhpcy5jZmcuYnRuTG9hZGluZ0NsYXNzKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSGVscGVyIEZOIHRvIHJlbW92ZSBjbGFzc2VzXG4gICAqL1xuICByZW1vdmVMb2FkaW5nQ2xhc3MoZWw6IGFueSkge1xuICAgIGlmICh0eXBlb2YgdGhpcy5jZmcuYnRuTG9hZGluZ0NsYXNzID09PSAnc3RyaW5nJykge1xuICAgICAgZWwuY2xhc3NMaXN0LnJlbW92ZSh0aGlzLmNmZy5idG5Mb2FkaW5nQ2xhc3MpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIGV2ZXJ5dGhpbmcgdG8gYmUgdHJpZ2dlcmVkIHdoZW4gdGhlIGJ1dHRvbiBpcyBzZXRcbiAgICogdG8gbG9hZGluZyBzdGF0ZS5cbiAgICovXG4gIGluaXRMb2FkaW5nU3RhdGUoYnRuRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy5hZGRMb2FkaW5nQ2xhc3MoYnRuRWwpO1xuICAgIHRoaXMuZGlzYWJsZUJ0bihidG5FbCk7XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlcyBldmVyeXRoaW5nIHRvIGJlIHRyaWdnZXJlZCB3aGVuIGxvYWRpbmcgaXMgZmluaXNoZWRcbiAgICovXG4gIGNhbmNlbExvYWRpbmdTdGF0ZUlmUHJvbWlzZUFuZE1pbkR1cmF0aW9uRG9uZShidG5FbDogSFRNTEVsZW1lbnQpIHtcbiAgICBpZiAoKCF0aGlzLmNmZy5taW5EdXJhdGlvbiB8fCB0aGlzLmlzTWluRHVyYXRpb25UaW1lb3V0RG9uZSkgJiYgdGhpcy5pc1Byb21pc2VEb25lKSB7XG4gICAgICB0aGlzLnJlbW92ZUxvYWRpbmdDbGFzcyhidG5FbCk7XG4gICAgICB0aGlzLmVuYWJsZUJ0bihidG5FbCk7XG4gICAgfVxuICB9XG5cbiAgZGlzYWJsZUJ0bihidG5FbDogSFRNTEVsZW1lbnQpIHtcbiAgICBpZiAodGhpcy5jZmcuZGlzYWJsZUJ0bikge1xuICAgICAgYnRuRWwuc2V0QXR0cmlidXRlKCdkaXNhYmxlZCcsICdkaXNhYmxlZCcpO1xuICAgIH1cbiAgfVxuXG4gIGVuYWJsZUJ0bihidG5FbDogSFRNTEVsZW1lbnQpIHtcbiAgICBpZiAodGhpcy5jZmcuZGlzYWJsZUJ0bikge1xuICAgICAgaWYgKHRoaXMuaXNEaXNhYmxlZEZyb21UaGVPdXRzaWRlKSB7XG4gICAgICAgIGJ0bkVsLnNldEF0dHJpYnV0ZSgnZGlzYWJsZWQnLCAnZGlzYWJsZWQnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJ0bkVsLnJlbW92ZUF0dHJpYnV0ZSgnZGlzYWJsZWQnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZXMgYSB3YXRjaGVyIGZvciB0aGUgcHJvbWlzZS4gQWxzbyB0YWtlc1xuICAgKiB0aGlzLmNmZy5taW5EdXJhdGlvbiBpbnRvIGFjY291bnQgaWYgZ2l2ZW4uXG4gICAqL1xuXG4gIGluaXRQcm9taXNlSGFuZGxlcihidG5FbDogSFRNTEVsZW1lbnQpIHtcbiAgICBjb25zdCBwcm9taXNlID0gdGhpcy5wcm9taXNlO1xuXG4gICAgLy8gd2F0Y2ggcHJvbWlzZSB0byByZXNvbHZlIG9yIGZhaWxcbiAgICB0aGlzLmlzTWluRHVyYXRpb25UaW1lb3V0RG9uZSA9IGZhbHNlO1xuICAgIHRoaXMuaXNQcm9taXNlRG9uZSA9IGZhbHNlO1xuXG4gICAgLy8gY3JlYXRlIHRpbWVvdXQgaWYgb3B0aW9uIGlzIHNldFxuICAgIGlmICh0aGlzLmNmZy5taW5EdXJhdGlvbikge1xuICAgICAgdGhpcy5taW5EdXJhdGlvblRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNNaW5EdXJhdGlvblRpbWVvdXREb25lID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5jYW5jZWxMb2FkaW5nU3RhdGVJZlByb21pc2VBbmRNaW5EdXJhdGlvbkRvbmUoYnRuRWwpO1xuICAgICAgfSwgdGhpcy5jZmcubWluRHVyYXRpb24pO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc29sdmVMb2FkaW5nU3RhdGUgPSAoKSA9PiB7XG4gICAgICB0aGlzLmlzUHJvbWlzZURvbmUgPSB0cnVlO1xuICAgICAgdGhpcy5jYW5jZWxMb2FkaW5nU3RhdGVJZlByb21pc2VBbmRNaW5EdXJhdGlvbkRvbmUoYnRuRWwpO1xuICAgIH07XG5cbiAgICBpZiAoIXRoaXMuY2ZnLmhhbmRsZUN1cnJlbnRCdG5Pbmx5KSB7XG4gICAgICB0aGlzLmluaXRMb2FkaW5nU3RhdGUoYnRuRWwpO1xuICAgIH1cbiAgICAvLyBuYXRpdmUgUHJvbWlzZSBkb2Vzbid0IGhhdmUgZmluYWxseVxuICAgIGlmIChwcm9taXNlLmZpbmFsbHkpIHtcbiAgICAgIHByb21pc2UuZmluYWxseShyZXNvbHZlTG9hZGluZ1N0YXRlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcHJvbWlzZVxuICAgICAgICAudGhlbihyZXNvbHZlTG9hZGluZ1N0YXRlKVxuICAgICAgICAuY2F0Y2gocmVzb2x2ZUxvYWRpbmdTdGF0ZSk7XG4gICAgfVxuXG4gIH1cblxuXG4gIC8qKlxuICAgKiAkY29tcGlsZSBhbmQgYXBwZW5kIHRoZSBzcGlubmVyIHRlbXBsYXRlIHRvIHRoZSBidXR0b24uXG4gICAqL1xuICBhcHBlbmRTcGlubmVyVHBsKGJ0bkVsOiBIVE1MRWxlbWVudCkge1xuICAgIC8vIFRPRE8gYWRkIHNvbWUga2luZCBvZiBjb21waWxhdGlvbiBsYXRlciBvblxuICAgIGJ0bkVsLmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlZW5kJywgdGhpcy5jZmcuc3Bpbm5lclRwbCBhcyBzdHJpbmcpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpbWl0IGxvYWRpbmcgc3RhdGUgdG8gc2hvdyBvbmx5IGZvciB0aGUgY3VycmVudGx5IGNsaWNrZWQgYnV0dG9uLlxuICAgKiBFeGVjdXRlZCBvbmx5IGlmIHRoaXMuY2ZnLmhhbmRsZUN1cnJlbnRCdG5Pbmx5IGlzIHNldFxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBoYW5kbGVDdXJyZW50QnRuT25seSgpIHtcbiAgICBpZiAoIXRoaXMuY2ZnLmhhbmRsZUN1cnJlbnRCdG5Pbmx5KSB7XG4gICAgICByZXR1cm4gdHJ1ZTsgLy8gcmV0dXJuIHRydWUgZm9yIHRlc3RpbmdcbiAgICB9XG5cbiAgICAvLyBDbGljayB0cmlnZ2VycyBASW5wdXQgdXBkYXRlXG4gICAgLy8gV2UgbmVlZCB0byB1c2UgdGltZW91dCB0byB3YWl0IGZvciBASW5wdXQgdG8gdXBkYXRlXG4gICAgd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgLy8gcmV0dXJuIGlmIHNvbWV0aGluZyBlbHNlIHRoYW4gYSBwcm9taXNlIGlzIHBhc3NlZFxuICAgICAgaWYgKCF0aGlzLnByb21pc2UpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmluaXRMb2FkaW5nU3RhdGUodGhpcy5idG5FbCk7XG4gICAgfSwgMCk7XG4gIH1cbn1cbiJdfQ==

@@ -1,2 +0,3 @@

import { InjectionToken, Directive, ElementRef, Inject, Input, HostListener, NgModule } from '@angular/core';
import * as i0 from '@angular/core';
import { InjectionToken, Directive, Inject, Input, HostListener, NgModule } from '@angular/core';
import { Observable, Subscription } from 'rxjs';

@@ -208,16 +209,21 @@

}
PromiseBtnDirective.decorators = [
{ type: Directive, args: [{
selector: '[promiseBtn]'
},] }
];
PromiseBtnDirective.ctorParameters = () => [
{ type: ElementRef },
{ type: undefined, decorators: [{ type: Inject, args: [userCfg,] }] }
];
PromiseBtnDirective.propDecorators = {
isDisabledFromTheOutsideSetter: [{ type: Input, args: ['disabled',] }],
promiseBtn: [{ type: Input }],
handleCurrentBtnOnly: [{ type: HostListener, args: ['click',] }]
};
PromiseBtnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PromiseBtnDirective, deps: [{ token: i0.ElementRef }, { token: userCfg }], target: i0.ɵɵFactoryTarget.Directive });
PromiseBtnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: PromiseBtnDirective, selector: "[promiseBtn]", inputs: { isDisabledFromTheOutsideSetter: ["disabled", "isDisabledFromTheOutsideSetter"], promiseBtn: "promiseBtn" }, host: { listeners: { "click": "handleCurrentBtnOnly()" } }, ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PromiseBtnDirective, decorators: [{
type: Directive,
args: [{
selector: '[promiseBtn]'
}]
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
type: Inject,
args: [userCfg]
}] }]; }, propDecorators: { isDisabledFromTheOutsideSetter: [{
type: Input,
args: ['disabled']
}], promiseBtn: [{
type: Input
}], handleCurrentBtnOnly: [{
type: HostListener,
args: ['click']
}] } });

@@ -234,14 +240,18 @@ class Angular2PromiseButtonModule {

}
Angular2PromiseButtonModule.decorators = [
{ type: NgModule, args: [{
declarations: [
PromiseBtnDirective,
],
imports: [],
exports: [
PromiseBtnDirective,
],
providers: []
},] }
];
Angular2PromiseButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Angular2PromiseButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
Angular2PromiseButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Angular2PromiseButtonModule, declarations: [PromiseBtnDirective], exports: [PromiseBtnDirective] });
Angular2PromiseButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Angular2PromiseButtonModule, providers: [], imports: [[]] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Angular2PromiseButtonModule, decorators: [{
type: NgModule,
args: [{
declarations: [
PromiseBtnDirective,
],
imports: [],
exports: [
PromiseBtnDirective,
],
providers: []
}]
}] });

@@ -252,3 +262,3 @@ /**

export { Angular2PromiseButtonModule, PromiseBtnDirective, userCfg as ɵa };
export { Angular2PromiseButtonModule, PromiseBtnDirective };
//# sourceMappingURL=angular2-promise-buttons.js.map
{
"name": "angular2-promise-buttons",
"version": "5.0.3",
"version": "6.0.0",
"description": "Chilled loading buttons for angular",

@@ -32,4 +32,3 @@ "author": "johannesjo <contact@super-productivity.com> (http://super-productivity.com)",

"typings": "angular2-promise-buttons.d.ts",
"metadata": "angular2-promise-buttons.metadata.json",
"sideEffects": false
}
import { AfterContentInit, ElementRef, OnDestroy } from '@angular/core';
import { PromiseBtnConfig } from './promise-btn-config';
import * as i0 from "@angular/core";
export declare class PromiseBtnDirective implements OnDestroy, AfterContentInit {

@@ -59,2 +60,4 @@ cfg: PromiseBtnConfig;

handleCurrentBtnOnly(): boolean;
static ɵfac: i0.ɵɵFactoryDeclaration<PromiseBtnDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<PromiseBtnDirective, "[promiseBtn]", never, { "isDisabledFromTheOutsideSetter": "disabled"; "promiseBtn": "promiseBtn"; }, {}, never>;
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet