UNPKG

@pepperi/ngx-lib

Version:

Pepperi Angular Components and Services

84 lines 13.6 kB
import { Injectable } from '@angular/core'; import { FieldLayout, ObjectSingleData, ObjectsDataRow, UIControl, ObjectsData, UIControlField, ObjectsDataRowCell } from '../model/api.model'; import { Guid } from '../model/utilities.model'; import * as i0 from "@angular/core"; export class DataConvertorService { constructor() { } convertFormData(formData) { const objectsData = new ObjectSingleData(); const rowData = new ObjectsDataRow(); const uiRow = formData.Fields; const uiControl = new UIControl(); uiControl.ControlFields = []; uiRow.forEach(field => uiControl.ControlFields.push(this.setUIControlField(field))); rowData.Fields = []; rowData.Type = 0; rowData.UID = Guid.newGuid(); formData.Fields.forEach(field => rowData.Fields.push(this.setDataField(field))); objectsData.Data = rowData; objectsData.UIControl = uiControl; return objectsData; } convertListData(tableData) { const objectsData = new ObjectsData(); const rows = new Array(); const uiRow = tableData[0].Fields; const uiControl = new UIControl(); uiControl.ControlFields = []; uiRow.forEach(field => uiControl.ControlFields.push(this.setUIControlField(field))); tableData.forEach(row => { const rowData = new ObjectsDataRow(); rowData.Fields = []; rowData.Type = 0; rowData.UID = Guid.newGuid(); row.Fields.forEach(field => rowData.Fields.push(this.setDataField(field))); rows.push(rowData); }); objectsData.Rows = rows; objectsData.UIControl = uiControl; return objectsData; } setUIControlField(field) { const controlField = new UIControlField(); controlField.ApiName = field.ApiName; controlField.FieldType = field.FieldType; // { X: 1, Width: 1, XAlignment: field.XAlignment, Y: 1, Height: 1, YAlignment: 1 }; controlField.Layout = new FieldLayout(1, 1, field.XAlignment, 1, 1, 1); controlField.Title = field.Title; controlField.ReadOnly = false; controlField.ColumnWidth = field.ColumnWidth; controlField.ColumnWidthType = field.ColumnWidthType || 1; return controlField; } setDataField(field) { const dataField = new ObjectsDataRowCell(); dataField.AdditionalValue = field.AdditionalValue; dataField.ApiName = field.ApiName; dataField.Enabled = true; dataField.FieldType = field.FieldType; dataField.FormattedValue = field.FormattedValue || field.Value.toString(); dataField.GroupFields = null; dataField.NotificationInfo = ''; dataField.OptionalValues = field.OptionalValues; dataField.ReferenceObjectSubType = ''; dataField.TextColor = ''; dataField.Value = field.Value.toString(); dataField.Visible = true; dataField.Type = '0'; return dataField; } setFieldLayout(x, width, xAlignment, y, height, yAlignment, lineNumber) { const layout = new FieldLayout(x, width, xAlignment, y, height, yAlignment, lineNumber); return layout; } } DataConvertorService.ɵfac = function DataConvertorService_Factory(t) { return new (t || DataConvertorService)(); }; DataConvertorService.ɵprov = i0.ɵɵdefineInjectable({ token: DataConvertorService, factory: DataConvertorService.ɵfac, providedIn: 'root' }); /*@__PURE__*/ (function () { i0.ɵsetClassMetadata(DataConvertorService, [{ type: Injectable, args: [{ providedIn: 'root' }] }], function () { return []; }, null); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb252ZXJ0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvc3JjL2NvcmUvY29tbW9uL3NlcnZpY2VzL2RhdGEtY29udmVydG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFrQixnQkFBZ0IsRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUM3RSxXQUFXLEVBQW9CLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFLaEQsTUFBTSxPQUFPLG9CQUFvQjtJQUM3QjtJQUNBLENBQUM7SUFFRCxlQUFlLENBQUMsUUFBd0I7UUFDcEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO1FBQzNDLE1BQU0sT0FBTyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7UUFDckMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUM5QixNQUFNLFNBQVMsR0FBRyxJQUFJLFNBQVMsRUFBRSxDQUFDO1FBQ2xDLFNBQVMsQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1FBQzdCLEtBQUssQ0FBQyxPQUFPLENBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUUsQ0FBQyxDQUFDO1FBQ3ZGLE9BQU8sQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2pCLE9BQU8sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzdCLFFBQVEs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QUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFDdEMsU0FBUyxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYyxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDMUUsU0FBUyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFDN0IsU0FBUyxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUNoQyxTQUFTLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUM7UUFDaEQsU0FBUyxDQUFDLHNCQUFzQixHQUFHLEVBQUUsQ0FBQztRQUN0QyxTQUFTLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUN6QixTQUFTLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDekMsU0FBUyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDekIsU0FBUyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7UUFDckIsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztJQUVELGNBQWMsQ0FBQyxDQUFTLEVBQUUsS0FBYSxFQUFFLFVBQWtCLEVBQzVDLENBQVMsRUFBRSxNQUFjLEVBQUUsVUFBa0IsRUFBRSxVQUFrQjtRQUM1RSxNQUFNLE1BQU0sR0FBRyxJQUFJLFdBQVcsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN4RixPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDOzt3RkFoRlEsb0JBQW9COzREQUFwQixvQkFBb0IsV0FBcEIsb0JBQW9CLG1CQUZqQixNQUFNO2tEQUVULG9CQUFvQjtjQUhoQyxVQUFVO2VBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGaWVsZExheW91dCwgUGVwcGVyaVJvd0RhdGEsIE9iamVjdFNpbmdsZURhdGEsIE9iamVjdHNEYXRhUm93LCBVSUNvbnRyb2wsXHJcbiAgICBPYmplY3RzRGF0YSwgUGVwcGVyaUZpZWxkRGF0YSwgVUlDb250cm9sRmllbGQsIE9iamVjdHNEYXRhUm93Q2VsbCB9IGZyb20gJy4uL21vZGVsL2FwaS5tb2RlbCc7XHJcbmltcG9ydCB7IEd1aWQgfSBmcm9tICcuLi9tb2RlbC91dGlsaXRpZXMubW9kZWwnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRhQ29udmVydG9yU2VydmljZSB7XHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIH1cclxuXHJcbiAgICBjb252ZXJ0Rm9ybURhdGEoZm9ybURhdGE6IFBlcHBlcmlSb3dEYXRhKTogT2JqZWN0U2luZ2xlRGF0YSB7XHJcbiAgICAgICAgY29uc3Qgb2JqZWN0c0RhdGEgPSBuZXcgT2JqZWN0U2luZ2xlRGF0YSgpO1xyXG4gICAgICAgIGNvbnN0IHJvd0RhdGEgPSBuZXcgT2JqZWN0c0RhdGFSb3coKTtcclxuICAgICAgICBjb25zdCB1aVJvdyA9IGZvcm1EYXRhLkZpZWxkcztcclxuICAgICAgICBjb25zdCB1aUNvbnRyb2wgPSBuZXcgVUlDb250cm9sKCk7XHJcbiAgICAgICAgdWlDb250cm9sLkNvbnRyb2xGaWVsZHMgPSBbXTtcclxuICAgICAgICB1aVJvdy5mb3JFYWNoKCBmaWVsZCA9PiB1aUNvbnRyb2wuQ29udHJvbEZpZWxkcy5wdXNoKCB0aGlzLnNldFVJQ29udHJvbEZpZWxkKGZpZWxkKSApKTtcclxuICAgICAgICByb3dEYXRhLkZpZWxkcyA9IFtdO1xyXG4gICAgICAgIHJvd0RhdGEuVHlwZSA9IDA7XHJcbiAgICAgICAgcm93RGF0YS5VSUQgPSBHdWlkLm5ld0d1aWQoKTtcclxuICAgICAgICBmb3JtRGF0YS5GaWVsZHMuZm9yRWFjaChmaWVsZCA9PiByb3dEYXRhLkZpZWxkcy5wdXNoKHRoaXMuc2V0RGF0YUZpZWxkKGZpZWxkKSkpO1xyXG4gICAgICAgIG9iamVjdHNEYXRhLkRhdGEgPSByb3dEYXRhO1xyXG4gICAgICAgIG9iamVjdHNEYXRhLlVJQ29udHJvbCA9IHVpQ29udHJvbDtcclxuXHJcbiAgICAgICAgcmV0dXJuIG9iamVjdHNEYXRhO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnZlcnRMaXN0RGF0YSh0YWJsZURhdGE6IFBlcHBlcmlSb3dEYXRhW10pOiBPYmplY3RzRGF0YSB7XHJcbiAgICAgICAgY29uc3Qgb2JqZWN0c0RhdGEgPSBuZXcgT2JqZWN0c0RhdGEoKTtcclxuICAgICAgICBjb25zdCByb3dzID0gbmV3IEFycmF5PE9iamVjdHNEYXRhUm93PigpO1xyXG4gICAgICAgIGNvbnN0IHVpUm93ID0gdGFibGVEYXRhWzBdLkZpZWxkcztcclxuICAgICAgICBjb25zdCB1aUNvbnRyb2wgPSBuZXcgVUlDb250cm9sKCk7XHJcblxyXG4gICAgICAgIHVpQ29udHJvbC5Db250cm9sRmllbGRzID0gW107XHJcbiAgICAgICAgdWlSb3cuZm9yRWFjaCggZmllbGQgPT4gdWlDb250cm9sLkNvbnRyb2xGaWVsZHMucHVzaCh0aGlzLnNldFVJQ29udHJvbEZpZWxkKGZpZWxkKSkpO1xyXG5cclxuICAgICAgICB0YWJsZURhdGEuZm9yRWFjaCggcm93ID0+IHtcclxuICAgICAgICAgICAgY29uc3Qgcm93RGF0YSA9IG5ldyBPYmplY3RzRGF0YVJvdygpO1xyXG4gICAgICAgICAgICByb3dEYXRhLkZpZWxkcyA9IFtdO1xyXG4gICAgICAgICAgICByb3dEYXRhLlR5cGUgPSAwO1xyXG4gICAgICAgICAgICByb3dEYXRhLlVJRCA9IEd1aWQubmV3R3VpZCgpO1xyXG4gICAgICAgICAgICByb3cuRmllbGRzLmZvckVhY2goZmllbGQgPT4gcm93RGF0YS5GaWVsZHMucHVzaCh0aGlzLnNldERhdGFGaWVsZChmaWVsZCkpKTtcclxuICAgICAgICAgICAgcm93cy5wdXNoKHJvd0RhdGEpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBvYmplY3RzRGF0YS5Sb3dzID0gcm93cztcclxuICAgICAgICBvYmplY3RzRGF0YS5VSUNvbnRyb2wgPSB1aUNvbnRyb2w7XHJcblxyXG4gICAgICAgIHJldHVybiBvYmplY3RzRGF0YTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRVSUNvbnRyb2xGaWVsZChmaWVsZDogUGVwcGVyaUZpZWxkRGF0YSk6IFVJQ29udHJvbEZpZWxkIHtcclxuICAgICAgICBjb25zdCBjb250cm9sRmllbGQgPSBuZXcgVUlDb250cm9sRmllbGQoKTtcclxuICAgICAgICBjb250cm9sRmllbGQuQXBpTmFtZSA9IGZpZWxkLkFwaU5hbWU7XHJcbiAgICAgICAgY29udHJvbEZpZWxkLkZpZWxkVHlwZSA9IGZpZWxkLkZpZWxkVHlwZTtcclxuICAgICAgICAvLyB7IFg6IDEsIFdpZHRoOiAxLCBYQWxpZ25tZW50OiBmaWVsZC5YQWxpZ25tZW50LCBZOiAxLCBIZWlnaHQ6IDEsIFlBbGlnbm1lbnQ6IDEgfTtcclxuICAgICAgICBjb250cm9sRmllbGQuTGF5b3V0ID0gbmV3IEZpZWxkTGF5b3V0KDEsIDEsIGZpZWxkLlhBbGlnbm1lbnQsIDEsIDEsIDEpO1xyXG4gICAgICAgIGNvbnRyb2xGaWVsZC5UaXRsZSA9ICBmaWVsZC5UaXRsZTtcclxuICAgICAgICBjb250cm9sRmllbGQuUmVhZE9ubHkgPSAgZmFsc2U7XHJcbiAgICAgICAgY29udHJvbEZpZWxkLkNvbHVtbldpZHRoID0gZmllbGQuQ29sdW1uV2lkdGg7XHJcbiAgICAgICAgY29udHJvbEZpZWxkLkNvbHVtbldpZHRoVHlwZSA9IGZpZWxkLkNvbHVtbldpZHRoVHlwZSB8fCAxO1xyXG4gICAgICAgIHJldHVybiBjb250cm9sRmllbGQ7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0RGF0YUZpZWxkKGZpZWxkOiBQZXBwZXJpRmllbGREYXRhKTogT2JqZWN0c0RhdGFSb3dDZWxsIHtcclxuICAgICAgICBjb25zdCBkYXRhRmllbGQgPSBuZXcgT2JqZWN0c0RhdGFSb3dDZWxsKCk7XHJcbiAgICAgICAgZGF0YUZpZWxkLkFkZGl0aW9uYWxWYWx1ZSA9IGZpZWxkLkFkZGl0aW9uYWxWYWx1ZTtcclxuICAgICAgICBkYXRhRmllbGQuQXBpTmFtZSA9IGZpZWxkLkFwaU5hbWU7XHJcbiAgICAgICAgZGF0YUZpZWxkLkVuYWJsZWQgPSB0cnVlO1xyXG4gICAgICAgIGRhdGFGaWVsZC5GaWVsZFR5cGUgPSBmaWVsZC5GaWVsZFR5cGU7XHJcbiAgICAgICAgZGF0YUZpZWxkLkZvcm1hdHRlZFZhbHVlID0gZmllbGQuRm9ybWF0dGVkVmFsdWUgfHwgZmllbGQuVmFsdWUudG9TdHJpbmcoKTtcclxuICAgICAgICBkYXRhRmllbGQuR3JvdXBGaWVsZHMgPSBudWxsO1xyXG4gICAgICAgIGRhdGFGaWVsZC5Ob3RpZmljYXRpb25JbmZvID0gJyc7XHJcbiAgICAgICAgZGF0YUZpZWxkLk9wdGlvbmFsVmFsdWVzID0gZmllbGQuT3B0aW9uYWxWYWx1ZXM7XHJcbiAgICAgICAgZGF0YUZpZWxkLlJlZmVyZW5jZU9iamVjdFN1YlR5cGUgPSAnJztcclxuICAgICAgICBkYXRhRmllbGQuVGV4dENvbG9yID0gJyc7XHJcbiAgICAgICAgZGF0YUZpZWxkLlZhbHVlID0gZmllbGQuVmFsdWUudG9TdHJpbmcoKTtcclxuICAgICAgICBkYXRhRmllbGQuVmlzaWJsZSA9IHRydWU7XHJcbiAgICAgICAgZGF0YUZpZWxkLlR5cGUgPSAnMCc7XHJcbiAgICAgICAgcmV0dXJuIGRhdGFGaWVsZDtcclxuICAgIH1cclxuXHJcbiAgICBzZXRGaWVsZExheW91dCh4OiBudW1iZXIsIHdpZHRoOiBudW1iZXIsIHhBbGlnbm1lbnQ6IG51bWJlcixcclxuICAgICAgICAgICAgICAgICAgIHk6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIHlBbGlnbm1lbnQ6IG51bWJlciwgbGluZU51bWJlcjogbnVtYmVyKTogRmllbGRMYXlvdXQge1xyXG4gICAgICAgIGNvbnN0IGxheW91dCA9IG5ldyBGaWVsZExheW91dCh4LCB3aWR0aCwgeEFsaWdubWVudCwgeSwgaGVpZ2h0LCB5QWxpZ25tZW50LCBsaW5lTnVtYmVyKTtcclxuICAgICAgICByZXR1cm4gbGF5b3V0O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==