@koalarx/ui
Version:
Koala UI is a Design System developed in Angular whose objective is to facilitate and make your development faster and simpler, making this framework your greatest ally.
49 lines • 8.76 kB
JavaScript
import { Component, Input } from '@angular/core';
import { BehaviorSubject } from 'rxjs';
import { KoalaLanguageHelper } from "@koalarx/ui/core";
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
import * as i2 from "@angular/material/button";
import * as i3 from "@angular/material/icon";
import * as i4 from "@angular/material/progress-spinner";
export class BtnSubmitComponent {
constructor() {
this.color = 'primary';
this.btnLabel = KoalaLanguageHelper.getBtnLabel();
this.btnSubmitDisabled = false;
this.disabled = new BehaviorSubject(false);
}
ngOnInit() {
if (!this.btnLabel) {
this.btnLabel = KoalaLanguageHelper.getBtnLabel();
}
}
ngOnChanges(changes) {
if (changes.btnSubmitDisabled) {
this.disabled.next(changes.btnSubmitDisabled.currentValue);
}
}
}
BtnSubmitComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: BtnSubmitComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
BtnSubmitComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: BtnSubmitComponent, selector: "koala-submit", inputs: { fg: "fg", color: "color", btnLabel: "btnLabel", btnSubmitDisabled: "btnSubmitDisabled", loader: "loader", iconButton: "iconButton", icon: "icon", iconColor: "iconColor" }, usesOnChanges: true, ngImport: i0, template: "<button\n\t*ngIf=\"!iconButton else btnIcon\"\n\t[color]=\"color\"\n\t[disabled]=\"(disabled | async) || fg.invalid || fg.pending\"\n\tmat-raised-button\n\ttype=\"submit\">\n <span>{{btnLabel}}</span>\n <mat-spinner *ngIf=\"loader | async\" diameter=\"20\"></mat-spinner>\n</button>\n<ng-template #btnIcon>\n <button\n\t [color]=\"color\"\n\t [disabled]=\"(disabled | async) || fg.invalid || fg.pending\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t type=\"submit\">\n <mat-spinner *ngIf=\"loader | async\" [color]=\"color\" diameter=\"20\"></mat-spinner>\n <mat-icon *ngIf=\"!(loader | async)\">{{icon}}</mat-icon>\n </button>\n</ng-template>\n", styles: [".mat-spinner{display:inline-block;margin-left:8px}.koala-button{padding:2px 8px}.koala-icon-button mat-spinner{position:relative;display:inline-flex;margin:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: BtnSubmitComponent, decorators: [{
type: Component,
args: [{ selector: 'koala-submit', template: "<button\n\t*ngIf=\"!iconButton else btnIcon\"\n\t[color]=\"color\"\n\t[disabled]=\"(disabled | async) || fg.invalid || fg.pending\"\n\tmat-raised-button\n\ttype=\"submit\">\n <span>{{btnLabel}}</span>\n <mat-spinner *ngIf=\"loader | async\" diameter=\"20\"></mat-spinner>\n</button>\n<ng-template #btnIcon>\n <button\n\t [color]=\"color\"\n\t [disabled]=\"(disabled | async) || fg.invalid || fg.pending\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t type=\"submit\">\n <mat-spinner *ngIf=\"loader | async\" [color]=\"color\" diameter=\"20\"></mat-spinner>\n <mat-icon *ngIf=\"!(loader | async)\">{{icon}}</mat-icon>\n </button>\n</ng-template>\n", styles: [".mat-spinner{display:inline-block;margin-left:8px}.koala-button{padding:2px 8px}.koala-icon-button mat-spinner{position:relative;display:inline-flex;margin:0}\n"] }]
}], propDecorators: { fg: [{
type: Input
}], color: [{
type: Input
}], btnLabel: [{
type: Input
}], btnSubmitDisabled: [{
type: Input
}], loader: [{
type: Input
}], iconButton: [{
type: Input
}], icon: [{
type: Input
}], iconColor: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRuLXN1Ym1pdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtL3NyYy9saWIvYnRuLXN1Ym1pdC9idG4tc3VibWl0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Zvcm0vc3JjL2xpYi9idG4tc3VibWl0L2J0bi1zdWJtaXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW9DLE1BQU0sZUFBZSxDQUFDO0FBR25GLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7OztBQU92RCxNQUFNLE9BQU8sa0JBQWtCO0lBTC9CO1FBT1csVUFBSyxHQUFpQixTQUFTLENBQUM7UUFDaEMsYUFBUSxHQUFXLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JELHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUs1QixhQUFRLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7S0FhdkQ7SUFYQyxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNuRDtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsaUJBQWlCLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQzVEO0lBQ0gsQ0FBQzs7K0dBckJVLGtCQUFrQjttR0FBbEIsa0JBQWtCLCtQQ1gvQixpcUJBb0JBOzJGRFRhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxjQUFjOzhCQUtmLEVBQUU7c0JBQVYsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRoZW1lUGFsZXR0ZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBLb2FsYUxhbmd1YWdlSGVscGVyIH0gZnJvbSBcIkBrb2FsYXJ4L3VpL2NvcmVcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna29hbGEtc3VibWl0JyxcbiAgdGVtcGxhdGVVcmw6ICdidG4tc3VibWl0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2J0bi1zdWJtaXQuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEJ0blN1Ym1pdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgZmc6IFVudHlwZWRGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIGNvbG9yOiBUaGVtZVBhbGV0dGUgPSAncHJpbWFyeSc7XG4gIEBJbnB1dCgpIGJ0bkxhYmVsOiBzdHJpbmcgPSBLb2FsYUxhbmd1YWdlSGVscGVyLmdldEJ0bkxhYmVsKCk7XG4gIEBJbnB1dCgpIGJ0blN1Ym1pdERpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIGxvYWRlcjogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+O1xuICBASW5wdXQoKSBpY29uQnV0dG9uOiBib29sZWFuO1xuICBASW5wdXQoKSBpY29uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGljb25Db2xvcjogJ2JsdWUnIHwgJ3JlZCcgfCAneWVsbG93JyB8ICdibGFjaycgfCAnZ3JlZW4nO1xuICBwdWJsaWMgZGlzYWJsZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuYnRuTGFiZWwpIHtcbiAgICAgIHRoaXMuYnRuTGFiZWwgPSBLb2FsYUxhbmd1YWdlSGVscGVyLmdldEJ0bkxhYmVsKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLmJ0blN1Ym1pdERpc2FibGVkKSB7XG4gICAgICB0aGlzLmRpc2FibGVkLm5leHQoY2hhbmdlcy5idG5TdWJtaXREaXNhYmxlZC5jdXJyZW50VmFsdWUpO1xuICAgIH1cbiAgfVxufVxuIiwiPGJ1dHRvblxuXHQqbmdJZj1cIiFpY29uQnV0dG9uIGVsc2UgYnRuSWNvblwiXG5cdFtjb2xvcl09XCJjb2xvclwiXG5cdFtkaXNhYmxlZF09XCIoZGlzYWJsZWQgfCBhc3luYykgfHwgZmcuaW52YWxpZCB8fCBmZy5wZW5kaW5nXCJcblx0bWF0LXJhaXNlZC1idXR0b25cblx0dHlwZT1cInN1Ym1pdFwiPlxuICA8c3Bhbj57e2J0bkxhYmVsfX08L3NwYW4+XG4gIDxtYXQtc3Bpbm5lciAqbmdJZj1cImxvYWRlciB8IGFzeW5jXCIgZGlhbWV0ZXI9XCIyMFwiPjwvbWF0LXNwaW5uZXI+XG48L2J1dHRvbj5cbjxuZy10ZW1wbGF0ZSAjYnRuSWNvbj5cbiAgPGJ1dHRvblxuXHQgIFtjb2xvcl09XCJjb2xvclwiXG5cdCAgW2Rpc2FibGVkXT1cIihkaXNhYmxlZCB8IGFzeW5jKSB8fCBmZy5pbnZhbGlkIHx8IGZnLnBlbmRpbmdcIlxuXHQgIGNsYXNzPVwia29hbGEtaWNvbi1idXR0b25cIlxuXHQgIG1hdC1pY29uLWJ1dHRvblxuXHQgIHR5cGU9XCJzdWJtaXRcIj5cbiAgICA8bWF0LXNwaW5uZXIgKm5nSWY9XCJsb2FkZXIgfCBhc3luY1wiIFtjb2xvcl09XCJjb2xvclwiIGRpYW1ldGVyPVwiMjBcIj48L21hdC1zcGlubmVyPlxuICAgIDxtYXQtaWNvbiAqbmdJZj1cIiEobG9hZGVyIHwgYXN5bmMpXCI+e3tpY29ufX08L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=