UNPKG

ngx-mat-dynamic-table

Version:
35 lines 3.9 kB
import { Component, Input } from '@angular/core'; import { XlsxExportService } from './service/xlsx-export.service'; import { MatSnackBar } from '@angular/material/snack-bar'; export class XlsxTableExportComponent { constructor(xlsxExportService, matSnackBar) { this.xlsxExportService = xlsxExportService; this.matSnackBar = matSnackBar; } ngOnInit() { } eportToExcell() { if (!this.data || !this.headers) { this.matSnackBar.open('Provide data and headers.', 'Ok', { duration: 4000 }); return; } this.xlsxExportService.exportExcel(this.data, this.headers, this.fileName ? this.fileName : 'Export'); } } XlsxTableExportComponent.decorators = [ { type: Component, args: [{ selector: 'ngx-mat-xlsx-table-export', template: "<button mat-stroked-button color=\"primary\" (click)=\"eportToExcell()\"><mat-icon>import_export</mat-icon> Export</button>", styles: [""] },] } ]; XlsxTableExportComponent.ctorParameters = () => [ { type: XlsxExportService }, { type: MatSnackBar } ]; XlsxTableExportComponent.propDecorators = { data: [{ type: Input }], fileName: [{ type: Input }], headers: [{ type: Input }] }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGxzeC10YWJsZS1leHBvcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uL3Byb2plY3RzL25neC1tYXQtZHluYW1pYy10YWJsZS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy94bHN4LXRhYmxlLWV4cG9ydC94bHN4LXRhYmxlLWV4cG9ydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBTzFELE1BQU0sT0FBTyx3QkFBd0I7SUFNbkMsWUFBb0IsaUJBQW9DLEVBQzlDLFdBQXdCO1FBRGQsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUM5QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtJQUFJLENBQUM7SUFFdkMsUUFBUTtJQUNSLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLDJCQUEyQixFQUFFLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzdFLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hHLENBQUM7OztZQXZCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMsdUlBQWlEOzthQUVsRDs7O1lBUFEsaUJBQWlCO1lBQ2pCLFdBQVc7OzttQkFTakIsS0FBSzt1QkFDTCxLQUFLO3NCQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFhsc3hFeHBvcnRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlL3hsc3gtZXhwb3J0LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWF0U25hY2tCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtbWF0LXhsc3gtdGFibGUtZXhwb3J0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3hsc3gtdGFibGUtZXhwb3J0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4veGxzeC10YWJsZS1leHBvcnQuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIFhsc3hUYWJsZUV4cG9ydENvbXBvbmVudDxUPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgZGF0YTogVFtdO1xuICBASW5wdXQoKSBmaWxlTmFtZTogc3RyaW5nO1xuICBASW5wdXQoKSBoZWFkZXJzOiBzdHJpbmdbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHhsc3hFeHBvcnRTZXJ2aWNlOiBYbHN4RXhwb3J0U2VydmljZSxcbiAgICBwcml2YXRlIG1hdFNuYWNrQmFyOiBNYXRTbmFja0JhcikgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBlcG9ydFRvRXhjZWxsKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5kYXRhIHx8ICF0aGlzLmhlYWRlcnMpIHtcbiAgICAgIHRoaXMubWF0U25hY2tCYXIub3BlbignUHJvdmlkZSBkYXRhIGFuZCBoZWFkZXJzLicsICdPaycsIHsgZHVyYXRpb246IDQwMDAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMueGxzeEV4cG9ydFNlcnZpY2UuZXhwb3J0RXhjZWwodGhpcy5kYXRhLCB0aGlzLmhlYWRlcnMsIHRoaXMuZmlsZU5hbWUgPyB0aGlzLmZpbGVOYW1lIDogJ0V4cG9ydCcpO1xuICB9XG5cbn1cbiJdfQ==