UNPKG

@visual-framework/vf-button

Version:

vf-button component

63 lines 6.94 kB
import { Component, Input } from '@angular/core'; import * as i0 from "@angular/core"; export class VfButtonAngularComponent { constructor() { /* Initialize values based on input values for button*/ this.theme = ''; this.text = ''; this.style = []; this.override_class = ''; this.html = ''; this.content = ''; this.class = 'vf-button '; } ngOnInit() { //Initialize something } ngOnChanges() { this.setValues(); } /* Set values as per input and updated changes */ setValues() { /* Set values ass per the input */ this.content = this.html !== '' ? this.html : this.text; this.class += this.theme !== '' ? 'vf-button--' + this.theme + ' ' : ''; /* Update class value if styles are received in input */ if (this.style.length > 0) { this.style.forEach(style => { this.class += 'vf-button--' + style + ' '; }); } /* Update class value if size is received in input */ if (this.size !== undefined) { this.class += 'vf-button--' + this.size + ' '; } /* Update class value if override style received in input */ this.class += this.override_class !== '' ? '| ' + this.override_class : ''; } } VfButtonAngularComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: VfButtonAngularComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); VfButtonAngularComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: VfButtonAngularComponent, selector: "vf-button", inputs: { theme: "theme", id: "id", text: "text", style: "style", size: "size", override_class: "override_class", html: "html" }, usesOnChanges: true, ngImport: i0, template: ` <button [attr.id] = "id !== undefined ? id : null" [class]="class" [innerHTML]="content"></button> `, isInline: true }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: VfButtonAngularComponent, decorators: [{ type: Component, args: [{ selector: 'vf-button', template: ` <button [attr.id] = "id !== undefined ? id : null" [class]="class" [innerHTML]="content"></button> ` }] }], propDecorators: { theme: [{ type: Input }], id: [{ type: Input }], text: [{ type: Input }], style: [{ type: Input }], size: [{ type: Input }], override_class: [{ type: Input }], html: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmYtYnV0dG9uLmFuZ3VsYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdmYtYnV0dG9uLmFuZ3VsYXIvc3JjL2xpYi92Zi1idXR0b24uYW5ndWxhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7O0FBU3pELE1BQU0sT0FBTyx3QkFBd0I7SUFQckM7UUFRRSx3REFBd0Q7UUFDL0MsVUFBSyxHQUFJLEVBQUUsQ0FBQztRQUVaLFNBQUksR0FBRyxFQUFFLENBQUM7UUFDVixVQUFLLEdBQWdELEVBQUUsQ0FBQztRQUV4RCxtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUNwQixTQUFJLEdBQUcsRUFBRSxDQUFDO1FBRW5CLFlBQU8sR0FBSSxFQUFFLENBQUM7UUFDZCxVQUFLLEdBQUcsWUFBWSxDQUFDO0tBNkJ0QjtJQTNCQyxRQUFRO1FBQ04sc0JBQXNCO0lBQ3hCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxpREFBaUQ7SUFDakQsU0FBUztRQUVQLGtDQUFrQztRQUNsQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ3hELElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3pFLHdEQUF3RDtRQUN4RCxJQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDekIsSUFBSSxDQUFDLEtBQUssSUFBSSxhQUFhLEdBQUcsS0FBSyxHQUFJLEdBQUcsQ0FBQztZQUM3QyxDQUFDLENBQUMsQ0FBQztTQUNKO1FBQ0QscURBQXFEO1FBQ3JELElBQUcsSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDMUIsSUFBSSxDQUFDLEtBQUssSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBSSxHQUFHLENBQUM7U0FDaEQ7UUFDRCw0REFBNEQ7UUFDNUQsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM3RSxDQUFDOztzSEF2Q1Usd0JBQXdCOzBHQUF4Qix3QkFBd0Isd01BTHpCOztHQUVUOzRGQUdVLHdCQUF3QjtrQkFQcEMsU0FBUzsrQkFDRSxXQUFXLFlBQ1g7O0dBRVQ7OEJBS1EsS0FBSztzQkFBYixLQUFLO2dCQUNHLEVBQUU7c0JBQVYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2Zi1idXR0b24nLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxidXR0b24gW2F0dHIuaWRdID0gXCJpZCAhPT0gdW5kZWZpbmVkID8gaWQgOiBudWxsXCIgW2NsYXNzXT1cImNsYXNzXCIgW2lubmVySFRNTF09XCJjb250ZW50XCI+PC9idXR0b24+XG4gIGAsXG4gIHN0eWxlczogW11cbn0pXG5leHBvcnQgY2xhc3MgVmZCdXR0b25Bbmd1bGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyogIEluaXRpYWxpemUgdmFsdWVzIGJhc2VkIG9uIGlucHV0IHZhbHVlcyBmb3IgYnV0dG9uKi9cbiAgQElucHV0KCkgdGhlbWUgID0gJyc7XG4gIEBJbnB1dCgpIGlkOiAgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSB0ZXh0ID0gJyc7XG4gIEBJbnB1dCgpIHN0eWxlOiBBcnJheTwncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICd0ZXJ0aWFyeSc+ID0gW107XG4gIEBJbnB1dCgpIHNpemU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgb3ZlcnJpZGVfY2xhc3MgPSAnJztcbiAgQElucHV0KCkgaHRtbCA9ICcnO1xuXG4gIGNvbnRlbnQgPSAgJyc7XG4gIGNsYXNzID0gJ3ZmLWJ1dHRvbiAnO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vSW5pdGlhbGl6ZSBzb21ldGhpbmdcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuc2V0VmFsdWVzKCk7XG4gIH1cblxuICAvKiBTZXQgdmFsdWVzIGFzIHBlciBpbnB1dCBhbmQgdXBkYXRlZCBjaGFuZ2VzICovXG4gIHNldFZhbHVlcygpOiB2b2lkIHtcblxuICAgIC8qIFNldCB2YWx1ZXMgYXNzIHBlciB0aGUgaW5wdXQgKi9cbiAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLmh0bWwgIT09ICcnID8gdGhpcy5odG1sIDogdGhpcy50ZXh0O1xuICAgIHRoaXMuY2xhc3MgKz0gdGhpcy50aGVtZSAhPT0gJycgPyAndmYtYnV0dG9uLS0nICsgdGhpcy50aGVtZSArICAnICcgOiAnJztcbiAgICAvKiBVcGRhdGUgY2xhc3MgdmFsdWUgaWYgc3R5bGVzIGFyZSByZWNlaXZlZCBpbiBpbnB1dCAqL1xuICAgIGlmKHRoaXMuc3R5bGUubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5zdHlsZS5mb3JFYWNoKHN0eWxlID0+IHtcbiAgICAgICAgdGhpcy5jbGFzcyArPSAndmYtYnV0dG9uLS0nICsgc3R5bGUgKyAgJyAnO1xuICAgICAgfSk7XG4gICAgfVxuICAgIC8qIFVwZGF0ZSBjbGFzcyB2YWx1ZSBpZiBzaXplIGlzIHJlY2VpdmVkIGluIGlucHV0ICovXG4gICAgaWYodGhpcy5zaXplICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuY2xhc3MgKz0gJ3ZmLWJ1dHRvbi0tJyArIHRoaXMuc2l6ZSArICAnICc7XG4gICAgfVxuICAgIC8qIFVwZGF0ZSBjbGFzcyB2YWx1ZSBpZiBvdmVycmlkZSBzdHlsZSByZWNlaXZlZCBpbiBpbnB1dCAqL1xuICAgIHRoaXMuY2xhc3MgKz0gdGhpcy5vdmVycmlkZV9jbGFzcyAhPT0gJycgPyAnfCAnICsgdGhpcy5vdmVycmlkZV9jbGFzcyA6ICcnO1xuICB9XG59XG4iXX0=