UNPKG

ang-json2excel-btn

Version:

Angular library component to export JSON data to Excel file

66 lines 5.73 kB
import { Component, Input } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "./ang-json2excel-btn.service"; export class AngJson2excelBtn { // Getters and Setters get btnText() { return this._btnText; } set btnText(value) { this._btnText = value; } get fileName() { return this._fileName; } set fileName(value) { this._fileName = value; } get json() { return this._json; } set json(value) { this._json = value; } constructor(angJson2excelBtnService) { this.angJson2excelBtnService = angJson2excelBtnService; this._btnText = 'Export to Excel'; this._fileName = 'export'; this._json = null; } json2ExcelInit() { if (this._json.length) { this.angJson2excelBtnService.exportToExcel(this._json, this._fileName); } else { console.error('No data to export'); } } ngOnInit() { } } AngJson2excelBtn.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AngJson2excelBtn, deps: [{ token: i1.AngJson2excelBtnService }], target: i0.ɵɵFactoryTarget.Component }); AngJson2excelBtn.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: AngJson2excelBtn, selector: "ang-json2excel-btn", inputs: { btnText: "btnText", fileName: "fileName", json: "json" }, ngImport: i0, template: ` <button (click)="json2ExcelInit()" class="ang-json2excel-btn" > {{ _btnText }} </button> `, isInline: true, styles: [""] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AngJson2excelBtn, decorators: [{ type: Component, args: [{ selector: 'ang-json2excel-btn', template: ` <button (click)="json2ExcelInit()" class="ang-json2excel-btn" > {{ _btnText }} </button> ` }] }], ctorParameters: function () { return [{ type: i1.AngJson2excelBtnService }]; }, propDecorators: { btnText: [{ type: Input }], fileName: [{ type: Input }], json: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5nLWpzb24yZXhjZWwtYnRuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZy1qc29uMmV4Y2VsLWJ0bi9zcmMvbGliL2FuZy1qc29uMmV4Y2VsLWJ0bi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQWtCakQsTUFBTSxPQUFPLGdCQUFnQjtJQU0zQixzQkFBc0I7SUFDdEIsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxJQUNJLE9BQU8sQ0FBQyxLQUFhO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQ0ksUUFBUSxDQUFDLEtBQWE7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDekIsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFDSSxJQUFJLENBQUMsS0FBVTtRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBR0QsWUFBb0IsdUJBQWdEO1FBQWhELDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUE3QnBFLGFBQVEsR0FBVyxpQkFBaUIsQ0FBQztRQUNyQyxjQUFTLEdBQVcsUUFBUSxDQUFDO1FBQzdCLFVBQUssR0FBUSxJQUFJLENBQUM7SUEyQnFELENBQUM7SUFFeEUsY0FBYztRQUNaLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDckIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUN4RTthQUFNO1lBQ0wsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUNELFFBQVEsS0FBVSxDQUFDOzs2R0F2Q1IsZ0JBQWdCO2lHQUFoQixnQkFBZ0IsOEhBZGpCOzs7Ozs7O0dBT1Q7MkZBT1UsZ0JBQWdCO2tCQWhCNUIsU0FBUzsrQkFDRSxvQkFBb0IsWUFDcEI7Ozs7Ozs7R0FPVDs4R0FrQkcsT0FBTztzQkFEVixLQUFLO2dCQVFGLFFBQVE7c0JBRFgsS0FBSztnQkFRRixJQUFJO3NCQURQLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQW5nSnNvbjJleGNlbEJ0blNlcnZpY2UgfSBmcm9tICcuL2FuZy1qc29uMmV4Y2VsLWJ0bi5zZXJ2aWNlJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FuZy1qc29uMmV4Y2VsLWJ0bicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGJ1dHRvblxuICAgICAgKGNsaWNrKT1cImpzb24yRXhjZWxJbml0KClcIlxuICAgICAgY2xhc3M9XCJhbmctanNvbjJleGNlbC1idG5cIlxuICAgID5cbiAgICAgIHt7IF9idG5UZXh0IH19XG4gICAgPC9idXR0b24+XG4gIGAsXG4gIC8vIGdldCBzdHlsZXMgZnJvbSBfYnRuQ2xhc3NcbiAgc3R5bGVzOiBbXG4gICAgYFxuICAgIGAsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFuZ0pzb24yZXhjZWxCdG4ge1xuICBfYnRuVGV4dDogc3RyaW5nID0gJ0V4cG9ydCB0byBFeGNlbCc7XG4gIF9maWxlTmFtZTogc3RyaW5nID0gJ2V4cG9ydCc7XG4gIF9qc29uOiBhbnkgPSBudWxsO1xuXG5cbiAgLy8gR2V0dGVycyBhbmQgU2V0dGVyc1xuICBnZXQgYnRuVGV4dCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9idG5UZXh0O1xuICB9XG4gIEBJbnB1dCgpXG4gIHNldCBidG5UZXh0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9idG5UZXh0ID0gdmFsdWU7XG4gIH1cbiAgZ2V0IGZpbGVOYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpbGVOYW1lO1xuICB9XG4gIEBJbnB1dCgpXG4gIHNldCBmaWxlTmFtZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fZmlsZU5hbWUgPSB2YWx1ZTtcbiAgfVxuICBnZXQganNvbigpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl9qc29uO1xuICB9XG4gIEBJbnB1dCgpXG4gIHNldCBqc29uKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLl9qc29uID0gdmFsdWU7XG4gIH1cblxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYW5nSnNvbjJleGNlbEJ0blNlcnZpY2U6IEFuZ0pzb24yZXhjZWxCdG5TZXJ2aWNlKSB7fVxuXG4gIGpzb24yRXhjZWxJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9qc29uLmxlbmd0aCkge1xuICAgICAgdGhpcy5hbmdKc29uMmV4Y2VsQnRuU2VydmljZS5leHBvcnRUb0V4Y2VsKHRoaXMuX2pzb24sIHRoaXMuX2ZpbGVOYW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcignTm8gZGF0YSB0byBleHBvcnQnKTtcbiAgICB9XG4gIH1cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxufVxuXG4iXX0=