@churchillliving/se-ui-toolkit 6.54.693 → 6.54.699
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/esm2022/lib/components/base/file-upload/file-upload.component.mjs +13 -15
- package/esm2022/lib/components/base/form/form.component.mjs +20 -19
- package/esm2022/lib/components/base/form-util/form-util.component.mjs +8 -7
- package/esm2022/lib/components/shared/controls/display-text-control/display-text-control.component.mjs +30 -0
- package/esm2022/lib/components/shared/controls/textArea-control/textArea-control.component.mjs +3 -2
- package/esm2022/lib/components/shared/notes/notes.component.mjs +3 -2
- package/esm2022/lib/models/form.model.mjs +2 -1
- package/esm2022/lib/models/response.model.mjs +1 -1
- package/esm2022/lib/se-ui-toolkit.module.mjs +12 -14
- package/esm2022/lib/services/form.service.mjs +6 -2
- package/fesm2022/churchillliving-se-ui-toolkit.mjs +73 -42
- package/fesm2022/churchillliving-se-ui-toolkit.mjs.map +1 -1
- package/lib/components/base/file-upload/file-upload.component.d.ts +2 -4
- package/lib/components/shared/controls/display-text-control/display-text-control.component.d.ts +13 -0
- package/lib/models/form.model.d.ts +20 -3
- package/lib/models/response.model.d.ts +1 -0
- package/lib/se-ui-toolkit.module.d.ts +76 -74
- package/lib/services/form.service.d.ts +1 -0
- package/package.json +1 -1
|
@@ -3,25 +3,23 @@ import { ESelectFileType } from '../../../models/form.model';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "../../../services/request.service";
|
|
5
5
|
import * as i2 from "../../../services/alert.service";
|
|
6
|
-
import * as i3 from "
|
|
7
|
-
import * as i4 from "@angular/forms";
|
|
8
|
-
import * as i5 from "primeng/inputtext";
|
|
6
|
+
import * as i3 from "primeng/inputtext";
|
|
9
7
|
export class FileUploadComponent {
|
|
10
8
|
constructor(requestService, alertService) {
|
|
11
9
|
this.requestService = requestService;
|
|
12
10
|
this.alertService = alertService;
|
|
13
11
|
this.allowMultiple = false;
|
|
14
12
|
this.isAzureUpload = true;
|
|
15
|
-
this.
|
|
13
|
+
this.resizeWidth = '';
|
|
16
14
|
this.fileUrl = new EventEmitter();
|
|
17
15
|
this.uploadFileOnReturn = new EventEmitter();
|
|
18
16
|
}
|
|
19
17
|
ngOnInit() { }
|
|
20
|
-
onResizeBlur(files) {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
18
|
+
// onResizeBlur(files) {
|
|
19
|
+
// if (files?.length > 0) {
|
|
20
|
+
// this.uploadFile(files);
|
|
21
|
+
// }
|
|
22
|
+
// }
|
|
25
23
|
uploadFile(files) {
|
|
26
24
|
let excelFileData = [];
|
|
27
25
|
let fileData = new FormData;
|
|
@@ -40,8 +38,8 @@ export class FileUploadComponent {
|
|
|
40
38
|
else if (this.fields && this.fields.pathSystemConfig?.length > 0) {
|
|
41
39
|
fileData.append('azureContainer', this.fields.pathSystemConfig);
|
|
42
40
|
}
|
|
43
|
-
if (this.
|
|
44
|
-
fileData.append('width', this.
|
|
41
|
+
if (this.resizeWidth) {
|
|
42
|
+
fileData.append('width', this.resizeWidth);
|
|
45
43
|
}
|
|
46
44
|
this.requestService.get('/Upload', fileData).subscribe((data) => {
|
|
47
45
|
if (data) {
|
|
@@ -73,11 +71,11 @@ export class FileUploadComponent {
|
|
|
73
71
|
}
|
|
74
72
|
}
|
|
75
73
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileUploadComponent, deps: [{ token: i1.RequestService }, { token: i2.AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
76
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FileUploadComponent, selector: "se-file-upload", inputs: { acceptFileTypes: "acceptFileTypes", allowMultiple: "allowMultiple", fields: "fields", isAzureUpload: "isAzureUpload",
|
|
74
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FileUploadComponent, selector: "se-file-upload", inputs: { acceptFileTypes: "acceptFileTypes", allowMultiple: "allowMultiple", fields: "fields", isAzureUpload: "isAzureUpload", resizeWidth: "resizeWidth" }, outputs: { fileUrl: "fileUrl", uploadFileOnReturn: "uploadFileOnReturn" }, ngImport: i0, template: "<div class=\"field-resizer\">\n<!-- file Upload Component-->\n<input\n pInputText\n #fileInput\n type=\"file\"\n id=\"file\"\n [accept]=\"acceptFileTypes\"\n [multiple]=\"allowMultiple\"\n (change)=\"uploadFile(fileInput.files)\"\n (click)=\"onClickEvent()\"\n/>\n\n<!-- Resize Input (only if allowResize is true) -->\n<!-- <div *ngIf=\"allowResize\" class=\"p-field p-grid\">\n <label for=\"resizeWidth\" class=\"p-col-fixed\" >Width (px):</label>\n <div class=\"p-col\">\n <input\n type=\"number\"\n pInputText\n [(ngModel)]=\"imageWidth\"\n placeholder=\"Image width\"\n (blur)=\"onResizeBlur(fileInput.files)\" \n />\n </div>\n</div> -->\n</div>\n", styles: [".field-resizer{display:flex;align-items:center;gap:5px}.field-resizer .p-field{position:relative;top:-10px}.field-resizer .p-field label{position:relative;top:-9px}\n"], dependencies: [{ kind: "directive", type: i3.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }] }); }
|
|
77
75
|
}
|
|
78
76
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileUploadComponent, decorators: [{
|
|
79
77
|
type: Component,
|
|
80
|
-
args: [{ selector: 'se-file-upload', template: "<div class=\"field-resizer\">\n<!-- file Upload Component-->\n<input\n pInputText\n #fileInput\n type=\"file\"\n id=\"file\"\n [accept]=\"acceptFileTypes\"\n [multiple]=\"allowMultiple\"\n (change)=\"uploadFile(fileInput.files)\"\n (click)=\"onClickEvent()\"\n/>\n\n<!-- Resize Input (only if allowResize is true) -->\n<div *ngIf=\"allowResize\" class=\"p-field p-grid\">\n <label for=\"resizeWidth\" class=\"p-col-fixed\" >Width (px):</label>\n <div class=\"p-col\">\n <input\n type=\"number\"\n pInputText\n [(ngModel)]=\"imageWidth\"\n placeholder=\"Image width\"\n (blur)=\"onResizeBlur(fileInput.files)\" \n />\n </div>\n</div
|
|
78
|
+
args: [{ selector: 'se-file-upload', template: "<div class=\"field-resizer\">\n<!-- file Upload Component-->\n<input\n pInputText\n #fileInput\n type=\"file\"\n id=\"file\"\n [accept]=\"acceptFileTypes\"\n [multiple]=\"allowMultiple\"\n (change)=\"uploadFile(fileInput.files)\"\n (click)=\"onClickEvent()\"\n/>\n\n<!-- Resize Input (only if allowResize is true) -->\n<!-- <div *ngIf=\"allowResize\" class=\"p-field p-grid\">\n <label for=\"resizeWidth\" class=\"p-col-fixed\" >Width (px):</label>\n <div class=\"p-col\">\n <input\n type=\"number\"\n pInputText\n [(ngModel)]=\"imageWidth\"\n placeholder=\"Image width\"\n (blur)=\"onResizeBlur(fileInput.files)\" \n />\n </div>\n</div> -->\n</div>\n", styles: [".field-resizer{display:flex;align-items:center;gap:5px}.field-resizer .p-field{position:relative;top:-10px}.field-resizer .p-field label{position:relative;top:-9px}\n"] }]
|
|
81
79
|
}], ctorParameters: () => [{ type: i1.RequestService }, { type: i2.AlertService }], propDecorators: { acceptFileTypes: [{
|
|
82
80
|
type: Input
|
|
83
81
|
}], allowMultiple: [{
|
|
@@ -86,11 +84,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
86
84
|
type: Input
|
|
87
85
|
}], isAzureUpload: [{
|
|
88
86
|
type: Input
|
|
89
|
-
}],
|
|
87
|
+
}], resizeWidth: [{
|
|
90
88
|
type: Input
|
|
91
89
|
}], fileUrl: [{
|
|
92
90
|
type: Output
|
|
93
91
|
}], uploadFileOnReturn: [{
|
|
94
92
|
type: Output
|
|
95
93
|
}] } });
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2UtdWktdG9vbGtpdC9zcmMvbGliL2NvbXBvbmVudHMvYmFzZS9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLDRCQUE0QixDQUFDOzs7OztBQVF6RSxNQUFNLE9BQU8sbUJBQW1CO0lBUzlCLFlBQ1UsY0FBOEIsRUFDOUIsWUFBMEI7UUFEMUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBVDNCLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBRS9CLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzlCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBQ3hCLFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNoRCx1QkFBa0IsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUtsRSxDQUFDO0lBRUosUUFBUSxLQUFVLENBQUM7SUFHckIsMEJBQTBCO0lBQzFCLDZCQUE2QjtJQUM3Qiw4QkFBOEI7SUFDOUIsTUFBTTtJQUNOLElBQUk7SUFFRixVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLGFBQWEsR0FBVSxFQUFFLENBQUM7UUFDOUIsSUFBSSxRQUFRLEdBQUcsSUFBSSxRQUFRLENBQUM7UUFDNUIsSUFBSSxVQUFVLEdBQVcsS0FBSyxD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QU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3hCLENBQUM7SUFDSCxDQUFDO2tJQTVFVSxtQkFBbUI7c0hBQW5CLG1CQUFtQiwrUkNUaEMsd3JCQTJCQTs7NEZEbEJhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxnQkFBZ0I7OEdBS2pCLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNJLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRVNlbGVjdEZpbGVUeXBlLCBJRm9ybUZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2Zvcm0ubW9kZWwnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYWxlcnQuc2VydmljZSc7XG5pbXBvcnQgeyBSZXF1ZXN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3JlcXVlc3Quc2VydmljZSc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZS1maWxlLXVwbG9hZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBhY2NlcHRGaWxlVHlwZXM6IGFueTtcbiAgQElucHV0KCkgYWxsb3dNdWx0aXBsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBmaWVsZHM6IGFueTtcbiAgQElucHV0KCkgaXNBenVyZVVwbG9hZDogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHJlc2l6ZVdpZHRoOiBzdHJpbmcgPSAnJztcbiAgQE91dHB1dCgpIGZpbGVVcmw6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgdXBsb2FkRmlsZU9uUmV0dXJuOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlcXVlc3RTZXJ2aWNlOiBSZXF1ZXN0U2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cblxuLy8gICBvblJlc2l6ZUJsdXIoZmlsZXMpIHtcbi8vICAgaWYgKGZpbGVzPy5sZW5ndGggPiAwKSB7XG4vLyAgICAgdGhpcy51cGxvYWRGaWxlKGZpbGVzKTtcbi8vICAgfVxuLy8gfVxuXG4gIHVwbG9hZEZpbGUoZmlsZXM6IGFueSkge1xuICAgIGxldCBleGNlbEZpbGVEYXRhOiBhbnlbXSA9IFtdO1xuICAgIGxldCBmaWxlRGF0YSA9IG5ldyBGb3JtRGF0YTsgXG4gICAgbGV0IGNob29zZUZpbGU6Ym9vbGVhbiA9IGZhbHNlO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmIChmaWxlc1tpXSkge1xuICAgICAgICBjaG9vc2VGaWxlID0gdHJ1ZTtcbiAgICAgICAgZmlsZURhdGEuYXBwZW5kKGZpbGVzW2ldLm5hbWUsIGZpbGVzW2ldKTtcbiAgICAgICAgZXhjZWxGaWxlRGF0YS5wdXNoKGZpbGVzW2ldKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZmlsZURhdGEgJiYgY2hvb3NlRmlsZSAmJiB0aGlzLmlzQXp1cmVVcGxvYWQpIHtcbiAgICAgIGlmICh0aGlzLmZpZWxkcyAmJiB0aGlzLmZpZWxkcy51bmlxdWVLZXk/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgZmlsZURhdGEuYXBwZW5kKCd1bmlxdWVLZXknLCB0aGlzLmZpZWxkcz8udW5pcXVlS2V5KTtcbiAgICAgIH1lbHNlIGlmKHRoaXMuZmllbGRzICYmIHRoaXMuZmllbGRzLnBhdGhTeXN0ZW1Db25maWc/Lmxlbmd0aCA+IDApe1xuICAgICAgICBmaWxlRGF0YS5hcHBlbmQoJ2F6dXJlQ29udGFpbmVyJywgdGhpcy5maWVsZHMucGF0aFN5c3RlbUNvbmZpZyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLnJlc2l6ZVdpZHRoKSB7XG4gICAgICAgIGZpbGVEYXRhLmFwcGVuZCgnd2lkdGgnLCB0aGlzLnJlc2l6ZVdpZHRoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMucmVxdWVzdFNlcnZpY2UuZ2V0PGFueVtdLCBhbnk+KCcvVXBsb2FkJywgZmlsZURhdGEpLnN1YnNjcmliZShcbiAgICAgICAgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5zdWNjZXNzKCdGaWxlIFVwbG9hZCBTdWNjZXNzZnVsbHkuJyk7XG4gICAgICAgICAgICBpZiAodGhpcy5maWVsZHM/Lm9uUmV0dXJuKSB7XG4gICAgICAgICAgICAgIHRoaXMuZmllbGRzLm9uUmV0dXJuKGRhdGEucmVzdWx0cyk7XG4gICAgICAgICAgICAgIHRoaXMudXBsb2FkRmlsZU9uUmV0dXJuLmVtaXQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZmlsZVVybC5lbWl0KGRhdGEucmVzdWx0cyk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICAoeyBlcnJvciB9KSA9PiB7XG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYXBpRXJyb3IoZXJyb3IpO1xuICAgICAgICAgIGlmICh0aGlzLmZpZWxkcy5vblJldHVybikge1xuICAgICAgICAgICAgdGhpcy5maWVsZHMub25SZXR1cm4oZXJyb3IpO1xuICAgICAgICAgICAgdGhpcy51cGxvYWRGaWxlT25SZXR1cm4uZW1pdCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICBpZiAodGhpcy5maWVsZHM/Lm9uUmV0dXJuICYmIHRoaXMuYWNjZXB0RmlsZVR5cGVzID09IEVTZWxlY3RGaWxlVHlwZS5FWENFTCkge1xuICAgICAgICB0aGlzLmZpZWxkcy5vblJldHVybihleGNlbEZpbGVEYXRhKTtcbiAgICAgICAgdGhpcy5maWVsZHMudmFsdWUgPSBleGNlbEZpbGVEYXRhO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBvbkNsaWNrRXZlbnQoKSB7XG4gICAgaWYgKHRoaXMuZmllbGRzICYmIHRoaXMuZmllbGRzLm9uQ2xpY2spIHtcbiAgICAgIHRoaXMuZmllbGRzLm9uQ2xpY2soKTtcbiAgICB9XG4gIH0gIFxufVxuIiwiPGRpdiBjbGFzcz1cImZpZWxkLXJlc2l6ZXJcIj5cbjwhLS0gZmlsZSBVcGxvYWQgQ29tcG9uZW50LS0+XG48aW5wdXRcbiAgcElucHV0VGV4dFxuICAjZmlsZUlucHV0XG4gIHR5cGU9XCJmaWxlXCJcbiAgaWQ9XCJmaWxlXCJcbiAgW2FjY2VwdF09XCJhY2NlcHRGaWxlVHlwZXNcIlxuICBbbXVsdGlwbGVdPVwiYWxsb3dNdWx0aXBsZVwiXG4gIChjaGFuZ2UpPVwidXBsb2FkRmlsZShmaWxlSW5wdXQuZmlsZXMpXCJcbiAgKGNsaWNrKT1cIm9uQ2xpY2tFdmVudCgpXCJcbi8+XG5cbjwhLS0gUmVzaXplIElucHV0IChvbmx5IGlmIGFsbG93UmVzaXplIGlzIHRydWUpIC0tPlxuPCEtLSA8ZGl2ICpuZ0lmPVwiYWxsb3dSZXNpemVcIiBjbGFzcz1cInAtZmllbGQgcC1ncmlkXCI+XG4gIDxsYWJlbCBmb3I9XCJyZXNpemVXaWR0aFwiIGNsYXNzPVwicC1jb2wtZml4ZWRcIiA+V2lkdGggKHB4KTo8L2xhYmVsPlxuICA8ZGl2IGNsYXNzPVwicC1jb2xcIj5cbiAgICA8aW5wdXRcbiAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgcElucHV0VGV4dFxuICAgICAgWyhuZ01vZGVsKV09XCJpbWFnZVdpZHRoXCJcbiAgICAgIHBsYWNlaG9sZGVyPVwiSW1hZ2Ugd2lkdGhcIlxuICAgICAgKGJsdXIpPVwib25SZXNpemVCbHVyKGZpbGVJbnB1dC5maWxlcylcIiAgXG4gICAgLz5cbiAgPC9kaXY+XG48L2Rpdj4gLS0+XG48L2Rpdj5cbiJdfQ==
|