@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.
36 lines • 4.31 kB
JavaScript
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "ngx-papaparse";
export class KoalaCsvService {
constructor(papa) {
this.papa = papa;
}
convertJsonToCsv(json, filename = 'export') {
this.downloadCsv(new Blob([
this.papa.unparse(json, {
header: true,
delimiter: ";",
newline: "\r\n"
})
], {
type: 'text/csv;charset=utf-8;'
}), filename);
}
downloadCsv(blob, filename = 'export') {
let link = document.createElement('a');
let url = URL.createObjectURL(blob);
link.setAttribute("href", url);
link.setAttribute("download", filename + '.csv');
link.style.visibility = 'hidden';
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
}
KoalaCsvService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: KoalaCsvService, deps: [{ token: i1.Papa }], target: i0.ɵɵFactoryTarget.Injectable });
KoalaCsvService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: KoalaCsvService, providedIn: "any" });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: KoalaCsvService, decorators: [{
type: Injectable,
args: [{ providedIn: "any" }]
}], ctorParameters: function () { return [{ type: i1.Papa }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEuY3N2LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9zZXJ2aWNlcy9jc3Yva29hbGEuY3N2LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBRzNDLE1BQU0sT0FBTyxlQUFlO0lBRTFCLFlBQW9CLElBQVU7UUFBVixTQUFJLEdBQUosSUFBSSxDQUFNO0lBQzlCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxJQUFjLEVBQUUsV0FBbUIsUUFBUTtRQUNqRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRTtnQkFDdEIsTUFBTSxFQUFFLElBQUk7Z0JBQ1osU0FBUyxFQUFFLEdBQUc7Z0JBQ2QsT0FBTyxFQUFFLE1BQU07YUFDaEIsQ0FBQztTQUFDLEVBQUU7WUFDTCxJQUFJLEVBQUUseUJBQXlCO1NBQ2hDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNoQixDQUFDO0lBRU8sV0FBVyxDQUFDLElBQVUsRUFBRSxXQUFtQixRQUFRO1FBQ3pELElBQUksSUFBSSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkMsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxRQUFRLEdBQUcsTUFBTSxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1FBQ2pDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNiLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7OzRHQXpCVSxlQUFlO2dIQUFmLGVBQWUsY0FESCxLQUFLOzJGQUNqQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLEtBQUssRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhcGEgfSBmcm9tICduZ3gtcGFwYXBhcnNlJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46IFwiYW55XCJ9KVxuZXhwb3J0IGNsYXNzIEtvYWxhQ3N2U2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwYXBhOiBQYXBhKSB7XG4gIH1cblxuICBwdWJsaWMgY29udmVydEpzb25Ub0Nzdihqc29uOiBvYmplY3RbXSwgZmlsZW5hbWU6IHN0cmluZyA9ICdleHBvcnQnKSB7XG4gICAgdGhpcy5kb3dubG9hZENzdihuZXcgQmxvYihbXG4gICAgICB0aGlzLnBhcGEudW5wYXJzZShqc29uLCB7XG4gICAgICAgIGhlYWRlcjogdHJ1ZSxcbiAgICAgICAgZGVsaW1pdGVyOiBcIjtcIixcbiAgICAgICAgbmV3bGluZTogXCJcXHJcXG5cIlxuICAgICAgfSldLCB7XG4gICAgICB0eXBlOiAndGV4dC9jc3Y7Y2hhcnNldD11dGYtODsnXG4gICAgfSksIGZpbGVuYW1lKTtcbiAgfVxuXG4gIHByaXZhdGUgZG93bmxvYWRDc3YoYmxvYjogQmxvYiwgZmlsZW5hbWU6IHN0cmluZyA9ICdleHBvcnQnKSB7XG4gICAgbGV0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgbGV0IHVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XG4gICAgbGluay5zZXRBdHRyaWJ1dGUoXCJocmVmXCIsIHVybCk7XG4gICAgbGluay5zZXRBdHRyaWJ1dGUoXCJkb3dubG9hZFwiLCBmaWxlbmFtZSArICcuY3N2Jyk7XG4gICAgbGluay5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcbiAgICBsaW5rLmNsaWNrKCk7XG4gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcbiAgfVxufVxuIl19