ng2-button-loader
Version:
Button with loader for angualr 2
76 lines • 3.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ButtonSaveComponent = void 0;
var tslib_1 = require("tslib");
var core_1 = require("@angular/core");
var url = require('file!./350.gif');
var ng2_logger_1 = require("ng2-logger");
var log = ng2_logger_1.Log.create('button save', ng2_logger_1.Level.__NOTHING);
var button_state_1 = require("./button-state");
var ButtonSaveComponent = /** @class */ (function () {
function ButtonSaveComponent(element) {
this.element = element;
this.disabled = false;
this.withError = false;
this.textSuccess = 'Saved...';
this.textError = 'Error...';
this.type = 'primary';
this.state = button_state_1.ButtonState.NORMAL;
this.buttonState = button_state_1.ButtonState;
this.loaderImgUlr = url;
}
ButtonSaveComponent_1 = ButtonSaveComponent;
ButtonSaveComponent.setState = function (id, state) {
var d = ButtonSaveComponent_1.instances[id];
d.state = state;
if (state === button_state_1.ButtonState.ERROR) {
d.withError = true;
}
if (state === button_state_1.ButtonState.ERROR || state === button_state_1.ButtonState.FINISH) {
setTimeout(function () {
d.state = button_state_1.ButtonState.NORMAL;
}, ButtonSaveComponent_1.timeoutMessages);
}
};
ButtonSaveComponent.prototype.onClick = function () {
if (this.withError)
this.withError = false;
};
ButtonSaveComponent.prototype.ngOnInit = function () {
log.i('success message', this.textSuccess);
log.i('error message', this.textError);
if (!this.id)
throw new Error('No id for compnent button save');
ButtonSaveComponent_1.instances[this.id] = this;
};
var ButtonSaveComponent_1;
ButtonSaveComponent.instances = {};
ButtonSaveComponent.timeoutMessages = 1000;
tslib_1.__decorate([
core_1.Input(),
tslib_1.__metadata("design:type", String)
], ButtonSaveComponent.prototype, "id", void 0);
tslib_1.__decorate([
core_1.Input(),
tslib_1.__metadata("design:type", Boolean)
], ButtonSaveComponent.prototype, "disabled", void 0);
tslib_1.__decorate([
core_1.Input(),
tslib_1.__metadata("design:type", String)
], ButtonSaveComponent.prototype, "textSuccess", void 0);
tslib_1.__decorate([
core_1.Input(),
tslib_1.__metadata("design:type", String)
], ButtonSaveComponent.prototype, "textError", void 0);
ButtonSaveComponent = ButtonSaveComponent_1 = tslib_1.__decorate([
core_1.Component({
selector: 'button-save',
template: require('./button-save.component.html'),
styles: [require('./button-save.component.scss')]
}),
tslib_1.__metadata("design:paramtypes", [core_1.ElementRef])
], ButtonSaveComponent);
return ButtonSaveComponent;
}());
exports.ButtonSaveComponent = ButtonSaveComponent;
//# sourceMappingURL=ng2-button-loader.js.map