ngx-wapp-components 1.34.36 → 1.34.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/file/w-file-generator/w-file-generator.component.mjs +78 -0
- package/esm2020/lib/misc/w-filter-panel/w-filter-panel.component.mjs +3 -2
- package/esm2020/lib/wapp-components.module.mjs +10 -3
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/ngx-wapp-components.mjs +85 -4
- package/fesm2015/ngx-wapp-components.mjs.map +1 -1
- package/fesm2020/ngx-wapp-components.mjs +85 -4
- package/fesm2020/ngx-wapp-components.mjs.map +1 -1
- package/lib/file/w-file-generator/w-file-generator.component.d.ts +26 -0
- package/lib/shared/components/w-address-field/w-address-field.component.d.ts +4 -4
- package/lib/shared/components/w-notifications-event-field/w-notifications-event-field.component.d.ts +1 -1
- package/lib/shared/services/modal.service.d.ts +1 -1
- package/lib/wapp-components.module.d.ts +54 -53
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as XLSX from 'xlsx';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../button/w-button/w-button.component";
|
|
5
|
+
var FileType;
|
|
6
|
+
(function (FileType) {
|
|
7
|
+
FileType["TXT"] = "txt";
|
|
8
|
+
FileType["PDF"] = "pdf";
|
|
9
|
+
FileType["DOCX"] = "docx";
|
|
10
|
+
FileType["XLSX"] = "xlsx";
|
|
11
|
+
})(FileType || (FileType = {}));
|
|
12
|
+
export class WFileGeneratorComponent {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.label = 'Generate File';
|
|
15
|
+
this.icon = "";
|
|
16
|
+
this.fileType = FileType.XLSX;
|
|
17
|
+
this.fileName = 'file';
|
|
18
|
+
this.generating = false;
|
|
19
|
+
}
|
|
20
|
+
ngOnInit() { }
|
|
21
|
+
generateFile() {
|
|
22
|
+
if (this.fileData) {
|
|
23
|
+
this.generating = true;
|
|
24
|
+
switch (this.fileType) {
|
|
25
|
+
case FileType.TXT:
|
|
26
|
+
break;
|
|
27
|
+
case FileType.PDF:
|
|
28
|
+
break;
|
|
29
|
+
case FileType.DOCX:
|
|
30
|
+
break;
|
|
31
|
+
case FileType.XLSX:
|
|
32
|
+
this.generateXLSXFile();
|
|
33
|
+
break;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
generateXLSXFile() {
|
|
38
|
+
if (Array.isArray(this.fileData)) {
|
|
39
|
+
const worksheet = XLSX.utils.json_to_sheet(this.fileData);
|
|
40
|
+
const workbook = {
|
|
41
|
+
Sheets: { 'Datos': worksheet },
|
|
42
|
+
SheetNames: ['Datos']
|
|
43
|
+
};
|
|
44
|
+
XLSX.writeFile(workbook, `${this.getExcelFileName()}`);
|
|
45
|
+
this.generating = false;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
allowFileGeneration() {
|
|
49
|
+
return this.fileData && (Array.isArray(this.fileData) ? this.fileData.length > 0 : true);
|
|
50
|
+
}
|
|
51
|
+
getExcelFileName() {
|
|
52
|
+
return `${this.getDate()}_${this.fileName}.xlsx`;
|
|
53
|
+
}
|
|
54
|
+
getDate() {
|
|
55
|
+
const date = new Date();
|
|
56
|
+
const year = date.getFullYear().toString();
|
|
57
|
+
const month = String(date.getMonth() + 1).padStart(2, '0');
|
|
58
|
+
const day = String(date.getDate()).padStart(2, '0');
|
|
59
|
+
return `${year}${month}${day}`;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
WFileGeneratorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: WFileGeneratorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
63
|
+
WFileGeneratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: WFileGeneratorComponent, selector: "w-file-generator", inputs: { label: "label", icon: "icon", fileType: "fileType", fileData: "fileData", fileName: "fileName" }, ngImport: i0, template: "<w-button [label]=\"label\" [icon]=\"icon\" (onClick)=\"generateFile()\" [loading]=\"generating\" [disabled]=\"!allowFileGeneration()\"></w-button>", styles: [""], dependencies: [{ kind: "component", type: i1.WButtonComponent, selector: "w-button", inputs: ["type", "label", "size", "icon", "iconPos", "tooltipPosition", "tooltip", "disabled", "loading", "buttonClass"], outputs: ["onClick"] }] });
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: WFileGeneratorComponent, decorators: [{
|
|
65
|
+
type: Component,
|
|
66
|
+
args: [{ selector: 'w-file-generator', template: "<w-button [label]=\"label\" [icon]=\"icon\" (onClick)=\"generateFile()\" [loading]=\"generating\" [disabled]=\"!allowFileGeneration()\"></w-button>" }]
|
|
67
|
+
}], ctorParameters: function () { return []; }, propDecorators: { label: [{
|
|
68
|
+
type: Input
|
|
69
|
+
}], icon: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], fileType: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], fileData: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}], fileName: [{
|
|
76
|
+
type: Input
|
|
77
|
+
}] } });
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidy1maWxlLWdlbmVyYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93YXBwLWNvbXBvbmVudHMvc3JjL2xpYi9maWxlL3ctZmlsZS1nZW5lcmF0b3Ivdy1maWxlLWdlbmVyYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93YXBwLWNvbXBvbmVudHMvc3JjL2xpYi9maWxlL3ctZmlsZS1nZW5lcmF0b3Ivdy1maWxlLWdlbmVyYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7OztBQUU3QixJQUFLLFFBS0o7QUFMRCxXQUFLLFFBQVE7SUFDWCx1QkFBVyxDQUFBO0lBQ1gsdUJBQVcsQ0FBQTtJQUNYLHlCQUFhLENBQUE7SUFDYix5QkFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUxJLFFBQVEsS0FBUixRQUFRLFFBS1o7QUFRRCxNQUFNLE9BQU8sdUJBQXVCO0lBU2xDO1FBUlMsVUFBSyxHQUFXLGVBQWUsQ0FBQztRQUNoQyxTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ2xCLGFBQVEsR0FBYSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBRW5DLGFBQVEsR0FBVyxNQUFNLENBQUM7UUFFbkMsZUFBVSxHQUFZLEtBQUssQ0FBQztJQUVaLENBQUM7SUFFakIsUUFBUSxLQUFXLENBQUM7SUFFcEIsWUFBWTtRQUNWLElBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNoQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztZQUN2QixRQUFPLElBQUksQ0FBQyxRQUFRLEVBQUM7Z0JBQ25CLEtBQUssUUFBUSxDQUFDLEdBQUc7b0JBQ2YsTUFBTTtnQkFDUixLQUFLLFFBQVEsQ0FBQyxHQUFHO29CQUNmLE1BQU07Z0JBQ1IsS0FBSyxRQUFRLENBQUMsSUFBSTtvQkFDaEIsTUFBTTtnQkFDUixLQUFLLFFBQVEsQ0FBQyxJQUFJO29CQUNoQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztvQkFDeEIsTUFBTTthQUNUO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBRyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBQztZQUM5QixNQUFNLFNBQVMsR0FBbUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzFFLE1BQU0sUUFBUSxHQUFrQjtnQkFDOUIsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRTtnQkFDOUIsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ3RCLENBQUM7WUFDRixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFRCxtQkFBbUI7UUFDakIsT0FBTyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsT0FBTyxDQUFDO0lBQ25ELENBQUM7SUFFRCxPQUFPO1FBQ0wsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN4QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDM0MsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzNELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRXBELE9BQU8sR0FBRyxJQUFJLEdBQUcsS0FBSyxHQUFHLEdBQUcsRUFBRSxDQUFDO0lBQ2pDLENBQUM7O29IQXpEVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixvS0NoQnBDLHFKQUF5STsyRkRnQjVILHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDRSxrQkFBa0I7MEVBTW5CLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBYTFNYIGZyb20gJ3hsc3gnO1xyXG5cclxuZW51bSBGaWxlVHlwZSB7XHJcbiAgVFhUID0gJ3R4dCcsXHJcbiAgUERGID0gJ3BkZicsXHJcbiAgRE9DWCA9ICdkb2N4JyxcclxuICBYTFNYID0gJ3hsc3gnLFxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3ctZmlsZS1nZW5lcmF0b3InLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi93LWZpbGUtZ2VuZXJhdG9yLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi93LWZpbGUtZ2VuZXJhdG9yLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFdGaWxlR2VuZXJhdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJ0dlbmVyYXRlIEZpbGUnOyBcclxuICBASW5wdXQoKSBpY29uOiBzdHJpbmcgPSBcIlwiOyBcclxuICBASW5wdXQoKSBmaWxlVHlwZTogRmlsZVR5cGUgPSBGaWxlVHlwZS5YTFNYO1xyXG4gIEBJbnB1dCgpIGZpbGVEYXRhOiBhbnk7XHJcbiAgQElucHV0KCkgZmlsZU5hbWU6IHN0cmluZyA9ICdmaWxlJztcclxuXHJcbiAgZ2VuZXJhdGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHsgfVxyXG5cclxuICBnZW5lcmF0ZUZpbGUoKTogdm9pZCB7XHJcbiAgICBpZih0aGlzLmZpbGVEYXRhKSB7IFxyXG4gICAgICB0aGlzLmdlbmVyYXRpbmcgPSB0cnVlO1xyXG4gICAgICBzd2l0Y2godGhpcy5maWxlVHlwZSl7XHJcbiAgICAgICAgY2FzZSBGaWxlVHlwZS5UWFQ6XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIEZpbGVUeXBlLlBERjpcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgRmlsZVR5cGUuRE9DWDpcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgRmlsZVR5cGUuWExTWDpcclxuICAgICAgICAgIHRoaXMuZ2VuZXJhdGVYTFNYRmlsZSgpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdlbmVyYXRlWExTWEZpbGUoKTogdm9pZCB7XHJcbiAgICBpZihBcnJheS5pc0FycmF5KHRoaXMuZmlsZURhdGEpKXtcclxuICAgICAgY29uc3Qgd29ya3NoZWV0OiBYTFNYLldvcmtTaGVldCA9IFhMU1gudXRpbHMuanNvbl90b19zaGVldCh0aGlzLmZpbGVEYXRhKTtcclxuICAgICAgY29uc3Qgd29ya2Jvb2s6IFhMU1guV29ya0Jvb2sgPSB7XHJcbiAgICAgICAgU2hlZXRzOiB7ICdEYXRvcyc6IHdvcmtzaGVldCB9LFxyXG4gICAgICAgIFNoZWV0TmFtZXM6IFsnRGF0b3MnXVxyXG4gICAgICB9O1xyXG4gICAgICBYTFNYLndyaXRlRmlsZSh3b3JrYm9vaywgYCR7dGhpcy5nZXRFeGNlbEZpbGVOYW1lKCl9YCk7XHJcbiAgICAgIHRoaXMuZ2VuZXJhdGluZyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYWxsb3dGaWxlR2VuZXJhdGlvbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmZpbGVEYXRhICYmIChBcnJheS5pc0FycmF5KHRoaXMuZmlsZURhdGEpID8gdGhpcy5maWxlRGF0YS5sZW5ndGggPiAwIDogdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBnZXRFeGNlbEZpbGVOYW1lKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7dGhpcy5nZXREYXRlKCl9XyR7dGhpcy5maWxlTmFtZX0ueGxzeGA7XHJcbiAgfVxyXG4gIFxyXG4gIGdldERhdGUoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKS50b1N0cmluZygpO1xyXG4gICAgY29uc3QgbW9udGggPSBTdHJpbmcoZGF0ZS5nZXRNb250aCgpICsgMSkucGFkU3RhcnQoMiwgJzAnKTtcclxuICAgIGNvbnN0IGRheSA9IFN0cmluZyhkYXRlLmdldERhdGUoKSkucGFkU3RhcnQoMiwgJzAnKTtcclxuXHJcbiAgICByZXR1cm4gYCR7eWVhcn0ke21vbnRofSR7ZGF5fWA7XHJcbiAgfVxyXG59XHJcbiIsIjx3LWJ1dHRvbiBbbGFiZWxdPVwibGFiZWxcIiBbaWNvbl09XCJpY29uXCIgKG9uQ2xpY2spPVwiZ2VuZXJhdGVGaWxlKClcIiBbbG9hZGluZ109XCJnZW5lcmF0aW5nXCIgW2Rpc2FibGVkXT1cIiFhbGxvd0ZpbGVHZW5lcmF0aW9uKClcIj48L3ctYnV0dG9uPiJdfQ==
|