@alfresco/adf-process-services-cloud 7.1.0-15297936594 → 8.0.0
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/bundles/assets/adf-process-services-cloud/i18n/de.json +2 -2
- package/fesm2022/adf-process-services-cloud.mjs +829 -720
- package/fesm2022/adf-process-services-cloud.mjs.map +1 -1
- package/lib/app/components/app-list-cloud/app-list-cloud.component.scss +3 -3
- package/lib/common/date-range-filter/date-range-filter.service.d.ts +1 -1
- package/lib/flex.scss +81 -0
- package/lib/form/components/form-cloud.component.d.ts +4 -4
- package/lib/form/components/form-cloud.component.scss +16 -4
- package/lib/form/components/widgets/data-table/data-table-adapter.widget.d.ts +1 -2
- package/lib/form/components/widgets/data-table/data-table.widget.d.ts +1 -0
- package/lib/form/components/widgets/data-table/data-table.widget.scss +8 -0
- package/lib/form/components/widgets/data-table/helpers/data-table-path-parser.helper.d.ts +2 -1
- package/lib/form/components/widgets/date/date-cloud.widget.scss +10 -4
- package/lib/form/components/widgets/display-external-property/display-external-property.widget.scss +1 -1
- package/lib/form/components/widgets/display-rich-text/display-rich-text.widget.scss +0 -2
- package/lib/form/components/widgets/dropdown/dropdown-cloud.widget.d.ts +2 -0
- package/lib/form/components/widgets/dropdown/dropdown-cloud.widget.scss +2 -2
- package/lib/form/components/widgets/radio-buttons/radio-buttons-cloud.widget.scss +1 -2
- package/lib/group/components/group-cloud.component.d.ts +3 -1
- package/lib/group/components/group-cloud.component.scss +5 -5
- package/lib/mat-selectors.scss +9 -0
- package/lib/models/constant-values.type.d.ts +19 -0
- package/lib/models/process-definition-cloud.model.d.ts +2 -0
- package/lib/models/task-cloud.model.d.ts +2 -0
- package/lib/people/components/people-cloud.component.d.ts +3 -1
- package/lib/people/components/people-cloud.component.scss +6 -6
- package/lib/process/process-filters/components/edit-process-filter/edit-process-filter-cloud.component.scss +7 -7
- package/lib/process/process-filters/models/process-filter-cloud.model.d.ts +1 -0
- package/lib/process/process-header/components/process-header-cloud.component.scss +1 -1
- package/lib/process/start-process/components/start-process-cloud.component.d.ts +4 -2
- package/lib/process-services-cloud.module.d.ts +12 -0
- package/lib/providers.d.ts +36 -0
- package/lib/screen/components/screen-cloud/screen-cloud.component.d.ts +10 -1
- package/lib/screen/models/screen-cloud.model.d.ts +7 -3
- package/lib/services/web-socket.service.d.ts +2 -5
- package/lib/task/models/task-details-cloud.model.d.ts +1 -0
- package/lib/task/task-filters/components/base-task-filters-cloud.component.d.ts +1 -1
- package/lib/task/task-filters/components/edit-task-filters/base-edit-task-filter-cloud.component.d.ts +1 -1
- package/lib/task/task-filters/components/edit-task-filters/edit-service-task-filter/edit-service-task-filter-cloud.component.scss +7 -7
- package/lib/task/task-filters/components/edit-task-filters/edit-task-filter/edit-task-filter-cloud.component.scss +7 -7
- package/lib/task/task-filters/components/task-assignment-filter/task-assignment-filter.component.scss +4 -4
- package/lib/task/task-form/components/task-form-cloud/task-form-cloud.component.scss +3 -3
- package/lib/task/task-form/components/user-task-cloud/user-task-cloud.component.d.ts +11 -3
- package/lib/task/task-header/components/task-header-cloud.component.scss +2 -2
- package/lib/task/task-list/components/base-task-list-cloud.component.d.ts +1 -1
- package/package.json +5 -8
- package/public-api.d.ts +1 -0
- package/esm2022/adf-process-services-cloud.mjs +0 -5
- package/esm2022/lib/app/app-list-cloud.module.mjs +0 -20
- package/esm2022/lib/app/components/app-details-cloud/app-details-cloud.component.mjs +0 -67
- package/esm2022/lib/app/components/app-list-cloud/app-list-cloud.component.mjs +0 -126
- package/esm2022/lib/app/models/application-instance.model.mjs +0 -24
- package/esm2022/lib/app/public-api.mjs +0 -22
- package/esm2022/lib/app/services/apps-process-cloud.service.mjs +0 -97
- package/esm2022/lib/common/date-range-filter/date-range-filter.component.mjs +0 -164
- package/esm2022/lib/common/date-range-filter/date-range-filter.service.mjs +0 -97
- package/esm2022/lib/common/index.mjs +0 -18
- package/esm2022/lib/common/interface/environment.interface.mjs +0 -18
- package/esm2022/lib/common/interface/index.mjs +0 -18
- package/esm2022/lib/common/interface/public-api.mjs +0 -18
- package/esm2022/lib/common/public-api.mjs +0 -19
- package/esm2022/lib/form/components/cloud-form-rendering.service.mjs +0 -57
- package/esm2022/lib/form/components/form-cloud-custom-outcomes.component.mjs +0 -31
- package/esm2022/lib/form/components/form-cloud.component.mjs +0 -394
- package/esm2022/lib/form/components/form-definition-selector-cloud.component.mjs +0 -54
- package/esm2022/lib/form/components/spinner/form-spinner.component.mjs +0 -36
- package/esm2022/lib/form/components/widgets/attach-file/attach-file-cloud-widget.component.mjs +0 -250
- package/esm2022/lib/form/components/widgets/attach-file/file-properties-table/file-properties-table-cloud.component.mjs +0 -137
- package/esm2022/lib/form/components/widgets/data-table/data-table-adapter.widget.mjs +0 -111
- package/esm2022/lib/form/components/widgets/data-table/data-table.widget.mjs +0 -119
- package/esm2022/lib/form/components/widgets/data-table/helpers/data-table-path-parser.helper.mjs +0 -122
- package/esm2022/lib/form/components/widgets/date/date-cloud.widget.mjs +0 -189
- package/esm2022/lib/form/components/widgets/display-external-property/display-external-property.widget.mjs +0 -86
- package/esm2022/lib/form/components/widgets/display-rich-text/display-rich-text.widget.mjs +0 -80
- package/esm2022/lib/form/components/widgets/dropdown/dropdown-cloud.widget.mjs +0 -451
- package/esm2022/lib/form/components/widgets/dropdown/validators.mjs +0 -29
- package/esm2022/lib/form/components/widgets/file-viewer/file-viewer.widget.mjs +0 -47
- package/esm2022/lib/form/components/widgets/group/group-cloud.widget.mjs +0 -83
- package/esm2022/lib/form/components/widgets/people/people-cloud.widget.mjs +0 -91
- package/esm2022/lib/form/components/widgets/properties-viewer/properties-viewer-wrapper/properties-viewer-wrapper.component.mjs +0 -81
- package/esm2022/lib/form/components/widgets/properties-viewer/properties-viewer.widget.mjs +0 -54
- package/esm2022/lib/form/components/widgets/radio-buttons/radio-buttons-cloud.schema.mjs +0 -86
- package/esm2022/lib/form/components/widgets/radio-buttons/radio-buttons-cloud.widget.mjs +0 -117
- package/esm2022/lib/form/components/widgets/upload/upload-cloud.widget.mjs +0 -188
- package/esm2022/lib/form/form-cloud.module.mjs +0 -103
- package/esm2022/lib/form/models/form-cloud-representation.model.mjs +0 -48
- package/esm2022/lib/form/models/task-variable-cloud.model.mjs +0 -28
- package/esm2022/lib/form/public-api.mjs +0 -44
- package/esm2022/lib/form/services/content-cloud-node-selector.service.mjs +0 -120
- package/esm2022/lib/form/services/display-mode.service.mjs +0 -146
- package/esm2022/lib/form/services/form-cloud.service.interface.mjs +0 -18
- package/esm2022/lib/form/services/form-cloud.service.mjs +0 -201
- package/esm2022/lib/form/services/form-definition-selector-cloud.service.interface.mjs +0 -18
- package/esm2022/lib/form/services/form-definition-selector-cloud.service.mjs +0 -51
- package/esm2022/lib/form/services/form-utils.service.mjs +0 -37
- package/esm2022/lib/form/services/process-cloud-content.service.mjs +0 -71
- package/esm2022/lib/form/services/spinner/form-cloud-spinner.service.mjs +0 -50
- package/esm2022/lib/group/components/group-cloud.component.mjs +0 -422
- package/esm2022/lib/group/group-cloud.module.mjs +0 -33
- package/esm2022/lib/group/models/identity-group.model.mjs +0 -18
- package/esm2022/lib/group/public-api.mjs +0 -21
- package/esm2022/lib/group/services/identity-group.service.mjs +0 -89
- package/esm2022/lib/models/application-version.model.mjs +0 -21
- package/esm2022/lib/models/data-column-custom-data.mjs +0 -18
- package/esm2022/lib/models/date-cloud-filter.model.mjs +0 -31
- package/esm2022/lib/models/date-format-cloud.model.mjs +0 -18
- package/esm2022/lib/models/engine-event-cloud.model.mjs +0 -18
- package/esm2022/lib/models/filter-cloud-model.mjs +0 -128
- package/esm2022/lib/models/process-definition-cloud.model.mjs +0 -31
- package/esm2022/lib/models/process-instance-variable.model.mjs +0 -18
- package/esm2022/lib/models/process-variable-filter.model.mjs +0 -18
- package/esm2022/lib/models/task-cloud.model.mjs +0 -23
- package/esm2022/lib/models/task-list-sorting.model.mjs +0 -40
- package/esm2022/lib/models/variable-definition.mjs +0 -18
- package/esm2022/lib/people/components/people-cloud.component.mjs +0 -497
- package/esm2022/lib/people/models/identity-user.model.mjs +0 -18
- package/esm2022/lib/people/people-cloud.module.mjs +0 -33
- package/esm2022/lib/people/public-api.mjs +0 -21
- package/esm2022/lib/people/services/identity-user.service.mjs +0 -119
- package/esm2022/lib/process/process-cloud.module.mjs +0 -40
- package/esm2022/lib/process/process-filters/components/edit-process-filter/edit-process-filter-cloud.component.mjs +0 -802
- package/esm2022/lib/process/process-filters/components/process-filter-dialog/process-filter-dialog-cloud.component.mjs +0 -59
- package/esm2022/lib/process/process-filters/components/process-filters/process-filters-cloud.component.mjs +0 -290
- package/esm2022/lib/process/process-filters/models/process-filter-cloud.model.mjs +0 -169
- package/esm2022/lib/process/process-filters/process-filters-cloud.module.mjs +0 -44
- package/esm2022/lib/process/process-filters/public-api.mjs +0 -23
- package/esm2022/lib/process/process-filters/services/process-filter-cloud.service.mjs +0 -405
- package/esm2022/lib/process/process-header/components/process-header-cloud.component.mjs +0 -137
- package/esm2022/lib/process/process-header/process-header-cloud.module.mjs +0 -33
- package/esm2022/lib/process/process-header/public-api.mjs +0 -19
- package/esm2022/lib/process/process-list/components/process-list-cloud.component.mjs +0 -583
- package/esm2022/lib/process/process-list/datatable/process-list-datatable-adapter.mjs +0 -31
- package/esm2022/lib/process/process-list/models/perocess-instance-cloud-view.model.mjs +0 -18
- package/esm2022/lib/process/process-list/models/process-cloud-preferences.mjs +0 -24
- package/esm2022/lib/process/process-list/models/process-cloud-preset.model.mjs +0 -37
- package/esm2022/lib/process/process-list/models/process-cloud-query-request.model.mjs +0 -107
- package/esm2022/lib/process/process-list/models/process-list-sorting.model.mjs +0 -40
- package/esm2022/lib/process/process-list/process-list-cloud.module.mjs +0 -45
- package/esm2022/lib/process/process-list/public-api.mjs +0 -25
- package/esm2022/lib/process/process-list/services/process-list-cloud.service.mjs +0 -253
- package/esm2022/lib/process/process-list/services/process-task-list-cloud.service.mjs +0 -109
- package/esm2022/lib/process/public-api.mjs +0 -23
- package/esm2022/lib/process/services/process-cloud.service.mjs +0 -105
- package/esm2022/lib/process/start-process/components/start-process-cloud.component.mjs +0 -444
- package/esm2022/lib/process/start-process/models/process-instance-cloud.model.mjs +0 -18
- package/esm2022/lib/process/start-process/models/process-payload-cloud.model.mjs +0 -26
- package/esm2022/lib/process/start-process/models/process-with-form-payload-cloud.model.mjs +0 -26
- package/esm2022/lib/process/start-process/public-api.mjs +0 -21
- package/esm2022/lib/process/start-process/services/start-process-cloud.service.mjs +0 -125
- package/esm2022/lib/process-services-cloud.module.mjs +0 -91
- package/esm2022/lib/rich-text-editor/editorjs-config.mjs +0 -101
- package/esm2022/lib/rich-text-editor/index.mjs +0 -18
- package/esm2022/lib/rich-text-editor/public-api.mjs +0 -19
- package/esm2022/lib/rich-text-editor/rich-text-editor.component.mjs +0 -80
- package/esm2022/lib/rich-text-editor/rich-text-editor.module.mjs +0 -33
- package/esm2022/lib/screen/components/screen-cloud/screen-cloud.component.mjs +0 -154
- package/esm2022/lib/screen/models/screen-cloud.model.mjs +0 -18
- package/esm2022/lib/screen/public-api.mjs +0 -18
- package/esm2022/lib/services/base-cloud.service.mjs +0 -83
- package/esm2022/lib/services/cloud-token.service.mjs +0 -23
- package/esm2022/lib/services/form-fields.interfaces.mjs +0 -55
- package/esm2022/lib/services/local-preference-cloud.service.mjs +0 -115
- package/esm2022/lib/services/notification-cloud.service.mjs +0 -45
- package/esm2022/lib/services/preference-cloud.interface.mjs +0 -18
- package/esm2022/lib/services/public-api.mjs +0 -28
- package/esm2022/lib/services/screen-rendering.service.mjs +0 -30
- package/esm2022/lib/services/task-list-cloud.service.interface.mjs +0 -18
- package/esm2022/lib/services/user-preference-cloud.service.mjs +0 -105
- package/esm2022/lib/services/variable-mapper.sevice.mjs +0 -77
- package/esm2022/lib/services/web-socket.service.mjs +0 -182
- package/esm2022/lib/task/models/start-task-cloud-request.model.mjs +0 -32
- package/esm2022/lib/task/models/task-details-cloud.model.mjs +0 -26
- package/esm2022/lib/task/models/task.model.mjs +0 -23
- package/esm2022/lib/task/public-api.mjs +0 -26
- package/esm2022/lib/task/services/task-cloud.service.mjs +0 -272
- package/esm2022/lib/task/task-cloud.module.mjs +0 -45
- package/esm2022/lib/task/task-filters/components/base-task-filters-cloud.component.mjs +0 -59
- package/esm2022/lib/task/task-filters/components/edit-task-filters/base-edit-task-filter-cloud.component.mjs +0 -467
- package/esm2022/lib/task/task-filters/components/edit-task-filters/edit-service-task-filter/edit-service-task-filter-cloud.component.mjs +0 -206
- package/esm2022/lib/task/task-filters/components/edit-task-filters/edit-task-filter/edit-task-filter-cloud.component.mjs +0 -320
- package/esm2022/lib/task/task-filters/components/service-task-filters/service-task-filters-cloud.component.mjs +0 -147
- package/esm2022/lib/task/task-filters/components/task-assignment-filter/task-assignment-filter.component.mjs +0 -143
- package/esm2022/lib/task/task-filters/components/task-filter-dialog/task-filter-dialog-cloud.component.mjs +0 -73
- package/esm2022/lib/task/task-filters/components/task-filters/task-filters-cloud.component.mjs +0 -256
- package/esm2022/lib/task/task-filters/models/filter-cloud.model.mjs +0 -207
- package/esm2022/lib/task/task-filters/public-api.mjs +0 -27
- package/esm2022/lib/task/task-filters/services/service-task-filter-cloud.service.mjs +0 -283
- package/esm2022/lib/task/task-filters/services/task-filter-cloud.service.mjs +0 -392
- package/esm2022/lib/task/task-filters/task-filters-cloud.module.mjs +0 -56
- package/esm2022/lib/task/task-form/components/task-form-cloud/task-form-cloud.component.mjs +0 -199
- package/esm2022/lib/task/task-form/components/user-task-cloud/complete-task/complete-task.directive.mjs +0 -89
- package/esm2022/lib/task/task-form/components/user-task-cloud/user-task-cloud.component.mjs +0 -259
- package/esm2022/lib/task/task-form/components/user-task-cloud-buttons/claim-task/claim-task-cloud.directive.mjs +0 -101
- package/esm2022/lib/task/task-form/components/user-task-cloud-buttons/unclaim-task/unclaim-task-cloud.directive.mjs +0 -87
- package/esm2022/lib/task/task-form/components/user-task-cloud-buttons/user-task-cloud-buttons.component.mjs +0 -79
- package/esm2022/lib/task/task-form/public-api.mjs +0 -21
- package/esm2022/lib/task/task-form/task-form.module.mjs +0 -36
- package/esm2022/lib/task/task-header/components/task-header-cloud.component.mjs +0 -280
- package/esm2022/lib/task/task-header/public-api.mjs +0 -19
- package/esm2022/lib/task/task-header/task-header-cloud.module.mjs +0 -33
- package/esm2022/lib/task/task-list/components/base-task-list-cloud.component.mjs +0 -331
- package/esm2022/lib/task/task-list/components/service-task-list/service-task-list-cloud.component.mjs +0 -116
- package/esm2022/lib/task/task-list/components/task-list/datatable/task-list-datatable-adapter.mjs +0 -31
- package/esm2022/lib/task/task-list/components/task-list/task-list-cloud.component.mjs +0 -390
- package/esm2022/lib/task/task-list/models/service-task-cloud.model.mjs +0 -18
- package/esm2022/lib/task/task-list/models/task-cloud-view.model.mjs +0 -18
- package/esm2022/lib/task/task-list/public-api.mjs +0 -23
- package/esm2022/lib/task/task-list/services/service-task-list-cloud.service.mjs +0 -115
- package/esm2022/lib/task/task-list/services/task-list-cloud.service.mjs +0 -178
- package/esm2022/lib/task/task-list/task-list-cloud.module.mjs +0 -57
- package/esm2022/lib/types.mjs +0 -18
- package/esm2022/public-api.mjs +0 -40
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
import { ObjectDataTableAdapter, ObjectDataColumn, ObjectDataRow } from '@alfresco/adf-core';
|
|
18
|
-
import { DataTablePathParserHelper } from './helpers/data-table-path-parser.helper';
|
|
19
|
-
export class WidgetDataTableAdapter {
|
|
20
|
-
get selectedRow() {
|
|
21
|
-
return this.adapter.selectedRow;
|
|
22
|
-
}
|
|
23
|
-
get rowsChanged() {
|
|
24
|
-
return this.adapter.rowsChanged;
|
|
25
|
-
}
|
|
26
|
-
constructor(data, schema) {
|
|
27
|
-
this.columnKeys = [];
|
|
28
|
-
this.helper = new DataTablePathParserHelper();
|
|
29
|
-
this.adapter = new ObjectDataTableAdapter(data, schema);
|
|
30
|
-
this.createColumns(schema);
|
|
31
|
-
this.createRows(data);
|
|
32
|
-
}
|
|
33
|
-
createColumns(schema) {
|
|
34
|
-
if (schema?.length) {
|
|
35
|
-
this.adapter.setColumns(this.buildColumnsFromSchema(schema));
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
buildColumnsFromSchema(schema) {
|
|
39
|
-
return schema.map((dataColumn) => {
|
|
40
|
-
this.columnKeys.push(dataColumn.key);
|
|
41
|
-
return new ObjectDataColumn(dataColumn);
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
createRows(data) {
|
|
45
|
-
if (data?.length) {
|
|
46
|
-
this.adapter.setRows(data.map((item) => this.buildDataRowFromItem(item)));
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
buildDataRowFromItem(item) {
|
|
50
|
-
const rowData = {};
|
|
51
|
-
this.columnKeys.forEach((path, i) => {
|
|
52
|
-
const rowValue = this.extractPropertyValue(this.helper.splitPathIntoProperties(path), item);
|
|
53
|
-
if (rowValue) {
|
|
54
|
-
rowData[this.columnKeys[i]] = rowValue;
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
return new ObjectDataRow(rowData);
|
|
58
|
-
}
|
|
59
|
-
extractPropertyValue(properties, item) {
|
|
60
|
-
return properties.reduce((acc, property) => {
|
|
61
|
-
if (!acc) {
|
|
62
|
-
return undefined;
|
|
63
|
-
}
|
|
64
|
-
const propertyIndexReferences = this.helper.getIndexReferencesFromProperty(property);
|
|
65
|
-
const isPropertyWithSingleIndexReference = propertyIndexReferences.length === 1;
|
|
66
|
-
const purePropertyName = this.helper.extractPurePropertyName(property);
|
|
67
|
-
return isPropertyWithSingleIndexReference ? acc[purePropertyName]?.[propertyIndexReferences[0]] : acc[purePropertyName];
|
|
68
|
-
}, item);
|
|
69
|
-
}
|
|
70
|
-
getColumns() {
|
|
71
|
-
return this.adapter.getColumns();
|
|
72
|
-
}
|
|
73
|
-
getRows() {
|
|
74
|
-
if (this.isDataSourceValid()) {
|
|
75
|
-
return this.adapter.getRows();
|
|
76
|
-
}
|
|
77
|
-
return [];
|
|
78
|
-
}
|
|
79
|
-
setRows(rows) {
|
|
80
|
-
this.adapter.setRows(rows);
|
|
81
|
-
}
|
|
82
|
-
setColumns(columns) {
|
|
83
|
-
this.adapter.setColumns(columns);
|
|
84
|
-
}
|
|
85
|
-
getValue(row, col, resolverFn) {
|
|
86
|
-
return this.adapter.getValue(row, col, resolverFn);
|
|
87
|
-
}
|
|
88
|
-
getColumnType(row, col) {
|
|
89
|
-
return this.adapter.getColumnType(row, col);
|
|
90
|
-
}
|
|
91
|
-
getSorting() {
|
|
92
|
-
return this.adapter.getSorting();
|
|
93
|
-
}
|
|
94
|
-
setSorting(sorting) {
|
|
95
|
-
this.adapter.setSorting(sorting);
|
|
96
|
-
}
|
|
97
|
-
sort(key, direction) {
|
|
98
|
-
this.adapter.sort(key, direction);
|
|
99
|
-
}
|
|
100
|
-
isDataSourceValid() {
|
|
101
|
-
return this.hasAllColumnsLinkedToData() && this.allMandatoryColumnPropertiesHaveValues();
|
|
102
|
-
}
|
|
103
|
-
allMandatoryColumnPropertiesHaveValues() {
|
|
104
|
-
return this.adapter.getColumns().every((column) => !!column.key);
|
|
105
|
-
}
|
|
106
|
-
hasAllColumnsLinkedToData() {
|
|
107
|
-
const availableColumnKeys = this.adapter.getColumns().map((column) => column.key);
|
|
108
|
-
return availableColumnKeys.every((columnKey) => this.adapter.getRows().some((row) => Object.keys(row.obj).includes(columnKey)));
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS1hZGFwdGVyLndpZGdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9wcm9jZXNzLXNlcnZpY2VzLWNsb3VkL3NyYy9saWIvZm9ybS9jb21wb25lbnRzL3dpZGdldHMvZGF0YS10YWJsZS9kYXRhLXRhYmxlLWFkYXB0ZXIud2lkZ2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxzQkFBc0IsRUFBdUIsZ0JBQWdCLEVBQUUsYUFBYSxFQUFpQyxNQUFNLG9CQUFvQixDQUFDO0FBQ2pKLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBR3BGLE1BQU0sT0FBTyxzQkFBc0I7SUFLL0IsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztJQUNwQyxDQUFDO0lBRUQsWUFBWSxJQUFXLEVBQUUsTUFBb0I7UUFYckMsZUFBVSxHQUFhLEVBQUUsQ0FBQztRQUMxQixXQUFNLEdBQUcsSUFBSSx5QkFBeUIsRUFBRSxDQUFDO1FBVzdDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFeEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFTyxhQUFhLENBQUMsTUFBb0I7UUFDdEMsSUFBSSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxD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QUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwSSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IE9iamVjdERhdGFUYWJsZUFkYXB0ZXIsIERhdGFDb2x1bW4sIERhdGFSb3csIE9iamVjdERhdGFDb2x1bW4sIE9iamVjdERhdGFSb3csIERhdGFUYWJsZUFkYXB0ZXIsIERhdGFTb3J0aW5nIH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IERhdGFUYWJsZVBhdGhQYXJzZXJIZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMvZGF0YS10YWJsZS1wYXRoLXBhcnNlci5oZWxwZXInO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY2xhc3MgV2lkZ2V0RGF0YVRhYmxlQWRhcHRlciBpbXBsZW1lbnRzIERhdGFUYWJsZUFkYXB0ZXIge1xuICAgIHByaXZhdGUgYWRhcHRlcjogT2JqZWN0RGF0YVRhYmxlQWRhcHRlcjtcbiAgICBwcml2YXRlIGNvbHVtbktleXM6IHN0cmluZ1tdID0gW107XG4gICAgcHJpdmF0ZSBoZWxwZXIgPSBuZXcgRGF0YVRhYmxlUGF0aFBhcnNlckhlbHBlcigpO1xuXG4gICAgZ2V0IHNlbGVjdGVkUm93KCk6IERhdGFSb3cge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGFwdGVyLnNlbGVjdGVkUm93O1xuICAgIH1cblxuICAgIGdldCByb3dzQ2hhbmdlZCgpOiBTdWJqZWN0PEFycmF5PERhdGFSb3c+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFkYXB0ZXIucm93c0NoYW5nZWQ7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoZGF0YTogYW55W10sIHNjaGVtYTogRGF0YUNvbHVtbltdKSB7XG4gICAgICAgIHRoaXMuYWRhcHRlciA9IG5ldyBPYmplY3REYXRhVGFibGVBZGFwdGVyKGRhdGEsIHNjaGVtYSk7XG5cbiAgICAgICAgdGhpcy5jcmVhdGVDb2x1bW5zKHNjaGVtYSk7XG4gICAgICAgIHRoaXMuY3JlYXRlUm93cyhkYXRhKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUNvbHVtbnMoc2NoZW1hOiBEYXRhQ29sdW1uW10pOiB2b2lkIHtcbiAgICAgICAgaWYgKHNjaGVtYT8ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmFkYXB0ZXIuc2V0Q29sdW1ucyh0aGlzLmJ1aWxkQ29sdW1uc0Zyb21TY2hlbWEoc2NoZW1hKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGJ1aWxkQ29sdW1uc0Zyb21TY2hlbWEoc2NoZW1hOiBEYXRhQ29sdW1uW10pOiBPYmplY3REYXRhQ29sdW1uW10ge1xuICAgICAgICByZXR1cm4gc2NoZW1hLm1hcCgoZGF0YUNvbHVtbikgPT4ge1xuICAgICAgICAgICAgdGhpcy5jb2x1bW5LZXlzLnB1c2goZGF0YUNvbHVtbi5rZXkpO1xuXG4gICAgICAgICAgICByZXR1cm4gbmV3IE9iamVjdERhdGFDb2x1bW4oZGF0YUNvbHVtbik7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlUm93cyhkYXRhOiBhbnlbXSk6IHZvaWQge1xuICAgICAgICBpZiAoZGF0YT8ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmFkYXB0ZXIuc2V0Um93cyhkYXRhLm1hcCgoaXRlbSkgPT4gdGhpcy5idWlsZERhdGFSb3dGcm9tSXRlbShpdGVtKSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBidWlsZERhdGFSb3dGcm9tSXRlbShpdGVtOiBhbnkpOiBPYmplY3REYXRhUm93IHtcbiAgICAgICAgY29uc3Qgcm93RGF0YSA9IHt9O1xuICAgICAgICB0aGlzLmNvbHVtbktleXMuZm9yRWFjaCgocGF0aCwgaSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgcm93VmFsdWUgPSB0aGlzLmV4dHJhY3RQcm9wZXJ0eVZhbHVlKHRoaXMuaGVscGVyLnNwbGl0UGF0aEludG9Qcm9wZXJ0aWVzKHBhdGgpLCBpdGVtKTtcblxuICAgICAgICAgICAgaWYgKHJvd1ZhbHVlKSB7XG4gICAgICAgICAgICAgICAgcm93RGF0YVt0aGlzLmNvbHVtbktleXNbaV1dID0gcm93VmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBuZXcgT2JqZWN0RGF0YVJvdyhyb3dEYXRhKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGV4dHJhY3RQcm9wZXJ0eVZhbHVlKHByb3BlcnRpZXM6IHN0cmluZ1tdLCBpdGVtOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gcHJvcGVydGllcy5yZWR1Y2UoKGFjYywgcHJvcGVydHkpID0+IHtcbiAgICAgICAgICAgIGlmICghYWNjKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgcHJvcGVydHlJbmRleFJlZmVyZW5jZXMgPSB0aGlzLmhlbHBlci5nZXRJbmRleFJlZmVyZW5jZXNGcm9tUHJvcGVydHkocHJvcGVydHkpO1xuICAgICAgICAgICAgY29uc3QgaXNQcm9wZXJ0eVdpdGhTaW5nbGVJbmRleFJlZmVyZW5jZSA9IHByb3BlcnR5SW5kZXhSZWZlcmVuY2VzLmxlbmd0aCA9PT0gMTtcblxuICAgICAgICAgICAgY29uc3QgcHVyZVByb3BlcnR5TmFtZSA9IHRoaXMuaGVscGVyLmV4dHJhY3RQdXJlUHJvcGVydHlOYW1lKHByb3BlcnR5KTtcblxuICAgICAgICAgICAgcmV0dXJuIGlzUHJvcGVydHlXaXRoU2luZ2xlSW5kZXhSZWZlcmVuY2UgPyBhY2NbcHVyZVByb3BlcnR5TmFtZV0/Lltwcm9wZXJ0eUluZGV4UmVmZXJlbmNlc1swXV0gOiBhY2NbcHVyZVByb3BlcnR5TmFtZV07XG4gICAgICAgIH0sIGl0ZW0pO1xuICAgIH1cblxuICAgIGdldENvbHVtbnMoKTogQXJyYXk8RGF0YUNvbHVtbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGFwdGVyLmdldENvbHVtbnMoKTtcbiAgICB9XG5cbiAgICBnZXRSb3dzKCk6IERhdGFSb3dbXSB7XG4gICAgICAgIGlmICh0aGlzLmlzRGF0YVNvdXJjZVZhbGlkKCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFkYXB0ZXIuZ2V0Um93cygpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIHNldFJvd3Mocm93czogQXJyYXk8RGF0YVJvdz4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hZGFwdGVyLnNldFJvd3Mocm93cyk7XG4gICAgfVxuXG4gICAgc2V0Q29sdW1ucyhjb2x1bW5zOiBBcnJheTxEYXRhQ29sdW1uPik6IHZvaWQge1xuICAgICAgICB0aGlzLmFkYXB0ZXIuc2V0Q29sdW1ucyhjb2x1bW5zKTtcbiAgICB9XG5cbiAgICBnZXRWYWx1ZShyb3c6IERhdGFSb3csIGNvbDogRGF0YUNvbHVtbiwgcmVzb2x2ZXJGbj86IChfcm93OiBEYXRhUm93LCBfY29sOiBEYXRhQ29sdW1uKSA9PiBhbnkpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGFwdGVyLmdldFZhbHVlKHJvdywgY29sLCByZXNvbHZlckZuKTtcbiAgICB9XG5cbiAgICBnZXRDb2x1bW5UeXBlKHJvdzogRGF0YVJvdywgY29sOiBEYXRhQ29sdW1uKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWRhcHRlci5nZXRDb2x1bW5UeXBlKHJvdywgY29sKTtcbiAgICB9XG5cbiAgICBnZXRTb3J0aW5nKCk6IERhdGFTb3J0aW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWRhcHRlci5nZXRTb3J0aW5nKCk7XG4gICAgfVxuXG4gICAgc2V0U29ydGluZyhzb3J0aW5nOiBEYXRhU29ydGluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmFkYXB0ZXIuc2V0U29ydGluZyhzb3J0aW5nKTtcbiAgICB9XG5cbiAgICBzb3J0KGtleT86IHN0cmluZywgZGlyZWN0aW9uPzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWRhcHRlci5zb3J0KGtleSwgZGlyZWN0aW9uKTtcbiAgICB9XG5cbiAgICBpc0RhdGFTb3VyY2VWYWxpZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzQWxsQ29sdW1uc0xpbmtlZFRvRGF0YSgpICYmIHRoaXMuYWxsTWFuZGF0b3J5Q29sdW1uUHJvcGVydGllc0hhdmVWYWx1ZXMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFsbE1hbmRhdG9yeUNvbHVtblByb3BlcnRpZXNIYXZlVmFsdWVzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hZGFwdGVyLmdldENvbHVtbnMoKS5ldmVyeSgoY29sdW1uKSA9PiAhIWNvbHVtbi5rZXkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaGFzQWxsQ29sdW1uc0xpbmtlZFRvRGF0YSgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgYXZhaWxhYmxlQ29sdW1uS2V5czogc3RyaW5nW10gPSB0aGlzLmFkYXB0ZXIuZ2V0Q29sdW1ucygpLm1hcCgoY29sdW1uKSA9PiBjb2x1bW4ua2V5KTtcblxuICAgICAgICByZXR1cm4gYXZhaWxhYmxlQ29sdW1uS2V5cy5ldmVyeSgoY29sdW1uS2V5KSA9PiB0aGlzLmFkYXB0ZXIuZ2V0Um93cygpLnNvbWUoKHJvdykgPT4gT2JqZWN0LmtleXMocm93Lm9iaikuaW5jbHVkZXMoY29sdW1uS2V5KSkpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
/* eslint-disable @angular-eslint/component-selector */
|
|
18
|
-
import { Component, ViewEncapsulation } from '@angular/core';
|
|
19
|
-
import { WidgetComponent, FormService, FormBaseModule, DataTableComponent } from '@alfresco/adf-core';
|
|
20
|
-
import { CommonModule } from '@angular/common';
|
|
21
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
22
|
-
import { FormCloudService } from '../../../services/form-cloud.service';
|
|
23
|
-
import { WidgetDataTableAdapter } from './data-table-adapter.widget';
|
|
24
|
-
import { DataTablePathParserHelper } from './helpers/data-table-path-parser.helper';
|
|
25
|
-
import * as i0 from "@angular/core";
|
|
26
|
-
import * as i1 from "@alfresco/adf-core";
|
|
27
|
-
import * as i2 from "../../../services/form-cloud.service";
|
|
28
|
-
import * as i3 from "@angular/common";
|
|
29
|
-
import * as i4 from "@ngx-translate/core";
|
|
30
|
-
export class DataTableWidgetComponent extends WidgetComponent {
|
|
31
|
-
constructor(formService, formCloudService) {
|
|
32
|
-
super(formService);
|
|
33
|
-
this.formService = formService;
|
|
34
|
-
this.formCloudService = formCloudService;
|
|
35
|
-
this.dataTableLoadFailed = false;
|
|
36
|
-
this.previewState = false;
|
|
37
|
-
this.defaultResponseProperty = 'data';
|
|
38
|
-
this.pathParserHelper = new DataTablePathParserHelper();
|
|
39
|
-
}
|
|
40
|
-
ngOnInit() {
|
|
41
|
-
this.init();
|
|
42
|
-
this.formService.onFormVariableChanged.subscribe(({ field }) => {
|
|
43
|
-
if (field.id === this.field.id) {
|
|
44
|
-
this.init();
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
init() {
|
|
49
|
-
this.setPreviewState();
|
|
50
|
-
this.getTableData();
|
|
51
|
-
this.initDataTable();
|
|
52
|
-
}
|
|
53
|
-
getTableData() {
|
|
54
|
-
this.variableName = this.field?.variableConfig?.variableName;
|
|
55
|
-
this.columnsSchema = this.field?.schemaDefinition;
|
|
56
|
-
this.getRowsData();
|
|
57
|
-
}
|
|
58
|
-
initDataTable() {
|
|
59
|
-
this.dataTableLoadFailed = false;
|
|
60
|
-
if (this.rowsData?.length) {
|
|
61
|
-
this.dataSource = new WidgetDataTableAdapter(this.rowsData, this.columnsSchema);
|
|
62
|
-
if (this.dataSource.isDataSourceValid()) {
|
|
63
|
-
this.field.updateForm();
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
this.handleError('Data source has corrupted model or structure');
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
this.handleError('Data source not found or it is not an array/object');
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
getRowsData() {
|
|
74
|
-
const optionsPath = this.field?.variableConfig?.optionsPath ?? this.defaultResponseProperty;
|
|
75
|
-
const fieldValue = this.field?.value;
|
|
76
|
-
const rowsData = fieldValue || this.getDataFromVariable();
|
|
77
|
-
if (rowsData) {
|
|
78
|
-
const dataFromPath = this.pathParserHelper.retrieveDataFromPath(rowsData, optionsPath);
|
|
79
|
-
this.rowsData = (dataFromPath?.length ? dataFromPath : rowsData);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
getDataFromVariable() {
|
|
83
|
-
const processVariables = this.field?.form?.processVariables;
|
|
84
|
-
const formVariables = this.field?.form?.variables;
|
|
85
|
-
const processVariableDropdownOptions = this.getVariableValueByName(processVariables, this.variableName);
|
|
86
|
-
const formVariableDropdownOptions = this.getVariableValueByName(formVariables, this.variableName);
|
|
87
|
-
return processVariableDropdownOptions ?? formVariableDropdownOptions;
|
|
88
|
-
}
|
|
89
|
-
getVariableValueByName(variables, variableName) {
|
|
90
|
-
return variables?.find((variable) => variable?.name === `variables.${variableName}` || variable?.name === variableName)
|
|
91
|
-
?.value;
|
|
92
|
-
}
|
|
93
|
-
setPreviewState() {
|
|
94
|
-
this.previewState = this.formCloudService.getPreviewState();
|
|
95
|
-
}
|
|
96
|
-
handleError(error) {
|
|
97
|
-
if (!this.previewState) {
|
|
98
|
-
this.dataTableLoadFailed = true;
|
|
99
|
-
this.widgetError.emit(error);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: DataTableWidgetComponent, deps: [{ token: i1.FormService }, { token: i2.FormCloudService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
103
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: DataTableWidgetComponent, isStandalone: true, selector: "data-table", host: { listeners: { "click": "event($event)", "blur": "event($event)", "change": "event($event)", "focus": "event($event)", "focusin": "event($event)", "focusout": "event($event)", "input": "event($event)", "invalid": "event($event)", "select": "event($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"adf-data-table-widget-container\">\n <div class=\"adf-data-table-widget-label\">\n <label\n class=\"adf-label\"\n [class.adf-left-label]=\"field.leftLabels\"\n [attr.for]=\"field.id\">\n {{field.name | translate }}\n </label>\n </div>\n\n <ng-container *ngIf=\"!previewState; else previewTemplate\">\n <adf-datatable data-automation-id=\"adf-data-table-widget\" [data]=\"dataSource\" />\n\n <error-widget *ngIf=\"dataTableLoadFailed\"\n class=\"adf-data-table-widget-failed-message\"\n required=\"{{ 'FORM.FIELD.DATA_TABLE_LOAD_FAILED' | translate }}\" />\n </ng-container>\n\n <ng-template #previewTemplate>\n <adf-datatable data-automation-id=\"adf-data-table-widget-preview\" />\n </ng-template>\n</div>\n", styles: [".adf-data-table-widget-failed-message{margin:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FormBaseModule }, { kind: "component", type: i1.ErrorWidgetComponent, selector: "error-widget", inputs: ["error", "required"] }, { kind: "component", type: DataTableComponent, selector: "adf-datatable", inputs: ["data", "rows", "sorting", "columns", "selectionMode", "multiselect", "mainTableAction", "actions", "showMainDatatableActions", "showProvidedActions", "actionsPosition", "actionsVisibleOnHover", "fallbackThumbnail", "contextMenu", "rowStyle", "rowStyleClass", "showHeader", "stickyHeader", "loading", "noPermission", "rowMenuCacheEnabled", "resolverFn", "allowFiltering", "isResizingEnabled", "blurOnResize", "displayCheckboxesOnHover", "enableDragRows"], outputs: ["rowClick", "rowDblClick", "showRowContextMenu", "showRowActionsMenu", "executeRowAction", "columnOrderChanged", "columnsWidthChanged", "selectedItemsCountChanged", "dragDropped"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
104
|
-
}
|
|
105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: DataTableWidgetComponent, decorators: [{
|
|
106
|
-
type: Component,
|
|
107
|
-
args: [{ standalone: true, imports: [CommonModule, TranslateModule, FormBaseModule, DataTableComponent], selector: 'data-table', host: {
|
|
108
|
-
'(click)': 'event($event)',
|
|
109
|
-
'(blur)': 'event($event)',
|
|
110
|
-
'(change)': 'event($event)',
|
|
111
|
-
'(focus)': 'event($event)',
|
|
112
|
-
'(focusin)': 'event($event)',
|
|
113
|
-
'(focusout)': 'event($event)',
|
|
114
|
-
'(input)': 'event($event)',
|
|
115
|
-
'(invalid)': 'event($event)',
|
|
116
|
-
'(select)': 'event($event)'
|
|
117
|
-
}, encapsulation: ViewEncapsulation.None, template: "<div class=\"adf-data-table-widget-container\">\n <div class=\"adf-data-table-widget-label\">\n <label\n class=\"adf-label\"\n [class.adf-left-label]=\"field.leftLabels\"\n [attr.for]=\"field.id\">\n {{field.name | translate }}\n </label>\n </div>\n\n <ng-container *ngIf=\"!previewState; else previewTemplate\">\n <adf-datatable data-automation-id=\"adf-data-table-widget\" [data]=\"dataSource\" />\n\n <error-widget *ngIf=\"dataTableLoadFailed\"\n class=\"adf-data-table-widget-failed-message\"\n required=\"{{ 'FORM.FIELD.DATA_TABLE_LOAD_FAILED' | translate }}\" />\n </ng-container>\n\n <ng-template #previewTemplate>\n <adf-datatable data-automation-id=\"adf-data-table-widget-preview\" />\n </ng-template>\n</div>\n", styles: [".adf-data-table-widget-failed-message{margin:10px}\n"] }]
|
|
118
|
-
}], ctorParameters: () => [{ type: i1.FormService }, { type: i2.FormCloudService }] });
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS53aWRnZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy1jbG91ZC9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RhdGEtdGFibGUvZGF0YS10YWJsZS53aWRnZXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy1jbG91ZC9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RhdGEtdGFibGUvZGF0YS10YWJsZS53aWRnZXQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLFNBQVMsRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQXVCLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0gsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUV4RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7O0FBcUJwRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsZUFBZTtJQVd6RCxZQUFtQixXQUF3QixFQUFVLGdCQUFrQztRQUNuRixLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFESixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFUdkYsd0JBQW1CLEdBQUcsS0FB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LGVBQWU7cUJBQzlCLGlCQUNjLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3IgKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXaWRnZXRDb21wb25lbnQsIEZvcm1TZXJ2aWNlLCBGb3JtQmFzZU1vZHVsZSwgRGF0YVJvdywgRGF0YUNvbHVtbiwgRGF0YVRhYmxlQ29tcG9uZW50IH0gZnJvbSAnQGFsZnJlc2NvL2FkZi1jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEZvcm1DbG91ZFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3JtLWNsb3VkLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGFza1ZhcmlhYmxlQ2xvdWQgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvdGFzay12YXJpYWJsZS1jbG91ZC5tb2RlbCc7XG5pbXBvcnQgeyBXaWRnZXREYXRhVGFibGVBZGFwdGVyIH0gZnJvbSAnLi9kYXRhLXRhYmxlLWFkYXB0ZXIud2lkZ2V0JztcbmltcG9ydCB7IERhdGFUYWJsZVBhdGhQYXJzZXJIZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMvZGF0YS10YWJsZS1wYXRoLXBhcnNlci5oZWxwZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgRm9ybUJhc2VNb2R1bGUsIERhdGFUYWJsZUNvbXBvbmVudF0sXG4gICAgc2VsZWN0b3I6ICdkYXRhLXRhYmxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGF0YS10YWJsZS53aWRnZXQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZGF0YS10YWJsZS53aWRnZXQuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhjbGljayknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoYmx1ciknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoY2hhbmdlKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1cyknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNpbiknOiAnZXZlbnQoJGV2ZW50KScsXG4gICAgICAgICcoZm9jdXNvdXQpJzogJ2V2ZW50KCRldmVudCknLFxuICAgICAgICAnKGlucHV0KSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhpbnZhbGlkKSc6ICdldmVudCgkZXZlbnQpJyxcbiAgICAgICAgJyhzZWxlY3QpJzogJ2V2ZW50KCRldmVudCknXG4gICAgfSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIERhdGFUYWJsZVdpZGdldENvbXBvbmVudCBleHRlbmRzIFdpZGdldENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgZGF0YVNvdXJjZTogV2lkZ2V0RGF0YVRhYmxlQWRhcHRlcjtcbiAgICBkYXRhVGFibGVMb2FkRmFpbGVkID0gZmFsc2U7XG4gICAgcHJldmlld1N0YXRlID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIHJvd3NEYXRhOiBEYXRhUm93W107XG4gICAgcHJpdmF0ZSBjb2x1bW5zU2NoZW1hOiBEYXRhQ29sdW1uW107XG4gICAgcHJpdmF0ZSB2YXJpYWJsZU5hbWU6IHN0cmluZztcbiAgICBwcml2YXRlIGRlZmF1bHRSZXNwb25zZVByb3BlcnR5ID0gJ2RhdGEnO1xuICAgIHByaXZhdGUgcGF0aFBhcnNlckhlbHBlciA9IG5ldyBEYXRhVGFibGVQYXRoUGFyc2VySGVscGVyKCk7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZm9ybVNlcnZpY2U6IEZvcm1TZXJ2aWNlLCBwcml2YXRlIGZvcm1DbG91ZFNlcnZpY2U6IEZvcm1DbG91ZFNlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoZm9ybVNlcnZpY2UpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmluaXQoKTtcblxuICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLm9uRm9ybVZhcmlhYmxlQ2hhbmdlZC5zdWJzY3JpYmUoKHsgZmllbGQgfSkgPT4ge1xuICAgICAgICAgICAgaWYgKGZpZWxkLmlkID09PSB0aGlzLmZpZWxkLmlkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRQcmV2aWV3U3RhdGUoKTtcbiAgICAgICAgdGhpcy5nZXRUYWJsZURhdGEoKTtcbiAgICAgICAgdGhpcy5pbml0RGF0YVRhYmxlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRUYWJsZURhdGEoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFyaWFibGVOYW1lID0gdGhpcy5maWVsZD8udmFyaWFibGVDb25maWc/LnZhcmlhYmxlTmFtZTtcbiAgICAgICAgdGhpcy5jb2x1bW5zU2NoZW1hID0gdGhpcy5maWVsZD8uc2NoZW1hRGVmaW5pdGlvbjtcblxuICAgICAgICB0aGlzLmdldFJvd3NEYXRhKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0RGF0YVRhYmxlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGFUYWJsZUxvYWRGYWlsZWQgPSBmYWxzZTtcblxuICAgICAgICBpZiAodGhpcy5yb3dzRGF0YT8ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGFTb3VyY2UgPSBuZXcgV2lkZ2V0RGF0YVRhYmxlQWRhcHRlcih0aGlzLnJvd3NEYXRhLCB0aGlzLmNvbHVtbnNTY2hlbWEpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5kYXRhU291cmNlLmlzRGF0YVNvdXJjZVZhbGlkKCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpZWxkLnVwZGF0ZUZvcm0oKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcignRGF0YSBzb3VyY2UgaGFzIGNvcnJ1cHRlZCBtb2RlbCBvciBzdHJ1Y3R1cmUnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoJ0RhdGEgc291cmNlIG5vdCBmb3VuZCBvciBpdCBpcyBub3QgYW4gYXJyYXkvb2JqZWN0Jyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFJvd3NEYXRhKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBvcHRpb25zUGF0aCA9IHRoaXMuZmllbGQ/LnZhcmlhYmxlQ29uZmlnPy5vcHRpb25zUGF0aCA/PyB0aGlzLmRlZmF1bHRSZXNwb25zZVByb3BlcnR5O1xuICAgICAgICBjb25zdCBmaWVsZFZhbHVlID0gdGhpcy5maWVsZD8udmFsdWU7XG4gICAgICAgIGNvbnN0IHJvd3NEYXRhID0gZmllbGRWYWx1ZSB8fCB0aGlzLmdldERhdGFGcm9tVmFyaWFibGUoKTtcblxuICAgICAgICBpZiAocm93c0RhdGEpIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGFGcm9tUGF0aCA9IHRoaXMucGF0aFBhcnNlckhlbHBlci5yZXRyaWV2ZURhdGFGcm9tUGF0aChyb3dzRGF0YSwgb3B0aW9uc1BhdGgpO1xuICAgICAgICAgICAgdGhpcy5yb3dzRGF0YSA9IChkYXRhRnJvbVBhdGg/Lmxlbmd0aCA/IGRhdGFGcm9tUGF0aCA6IHJvd3NEYXRhKSBhcyBEYXRhUm93W107XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERhdGFGcm9tVmFyaWFibGUoKTogYW55IHtcbiAgICAgICAgY29uc3QgcHJvY2Vzc1ZhcmlhYmxlcyA9IHRoaXMuZmllbGQ/LmZvcm0/LnByb2Nlc3NWYXJpYWJsZXM7XG4gICAgICAgIGNvbnN0IGZvcm1WYXJpYWJsZXMgPSB0aGlzLmZpZWxkPy5mb3JtPy52YXJpYWJsZXM7XG5cbiAgICAgICAgY29uc3QgcHJvY2Vzc1ZhcmlhYmxlRHJvcGRvd25PcHRpb25zID0gdGhpcy5nZXRWYXJpYWJsZVZhbHVlQnlOYW1lKHByb2Nlc3NWYXJpYWJsZXMsIHRoaXMudmFyaWFibGVOYW1lKTtcbiAgICAgICAgY29uc3QgZm9ybVZhcmlhYmxlRHJvcGRvd25PcHRpb25zID0gdGhpcy5nZXRWYXJpYWJsZVZhbHVlQnlOYW1lKGZvcm1WYXJpYWJsZXMsIHRoaXMudmFyaWFibGVOYW1lKTtcblxuICAgICAgICByZXR1cm4gcHJvY2Vzc1ZhcmlhYmxlRHJvcGRvd25PcHRpb25zID8/IGZvcm1WYXJpYWJsZURyb3Bkb3duT3B0aW9ucztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFZhcmlhYmxlVmFsdWVCeU5hbWUodmFyaWFibGVzOiBUYXNrVmFyaWFibGVDbG91ZFtdLCB2YXJpYWJsZU5hbWU6IHN0cmluZyk6IGFueSB7XG4gICAgICAgIHJldHVybiB2YXJpYWJsZXM/LmZpbmQoKHZhcmlhYmxlOiBUYXNrVmFyaWFibGVDbG91ZCkgPT4gdmFyaWFibGU/Lm5hbWUgPT09IGB2YXJpYWJsZXMuJHt2YXJpYWJsZU5hbWV9YCB8fCB2YXJpYWJsZT8ubmFtZSA9PT0gdmFyaWFibGVOYW1lKVxuICAgICAgICAgICAgPy52YWx1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFByZXZpZXdTdGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wcmV2aWV3U3RhdGUgPSB0aGlzLmZvcm1DbG91ZFNlcnZpY2UuZ2V0UHJldmlld1N0YXRlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVFcnJvcihlcnJvcjogYW55KSB7XG4gICAgICAgIGlmICghdGhpcy5wcmV2aWV3U3RhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0YVRhYmxlTG9hZEZhaWxlZCA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLndpZGdldEVycm9yLmVtaXQoZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImFkZi1kYXRhLXRhYmxlLXdpZGdldC1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYWRmLWRhdGEtdGFibGUtd2lkZ2V0LWxhYmVsXCI+XG4gICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgY2xhc3M9XCJhZGYtbGFiZWxcIlxuICAgICAgICAgICAgW2NsYXNzLmFkZi1sZWZ0LWxhYmVsXT1cImZpZWxkLmxlZnRMYWJlbHNcIlxuICAgICAgICAgICAgW2F0dHIuZm9yXT1cImZpZWxkLmlkXCI+XG4gICAgICAgICAgICAgICAge3tmaWVsZC5uYW1lIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvbGFiZWw+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXByZXZpZXdTdGF0ZTsgZWxzZSBwcmV2aWV3VGVtcGxhdGVcIj5cbiAgICAgICAgPGFkZi1kYXRhdGFibGUgZGF0YS1hdXRvbWF0aW9uLWlkPVwiYWRmLWRhdGEtdGFibGUtd2lkZ2V0XCIgW2RhdGFdPVwiZGF0YVNvdXJjZVwiIC8+XG5cbiAgICAgICAgPGVycm9yLXdpZGdldCAqbmdJZj1cImRhdGFUYWJsZUxvYWRGYWlsZWRcIlxuICAgICAgICAgICAgY2xhc3M9XCJhZGYtZGF0YS10YWJsZS13aWRnZXQtZmFpbGVkLW1lc3NhZ2VcIlxuICAgICAgICAgICAgcmVxdWlyZWQ9XCJ7eyAnRk9STS5GSUVMRC5EQVRBX1RBQkxFX0xPQURfRkFJTEVEJyB8IHRyYW5zbGF0ZSB9fVwiIC8+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctdGVtcGxhdGUgI3ByZXZpZXdUZW1wbGF0ZT5cbiAgICAgICAgPGFkZi1kYXRhdGFibGUgZGF0YS1hdXRvbWF0aW9uLWlkPVwiYWRmLWRhdGEtdGFibGUtd2lkZ2V0LXByZXZpZXdcIiAvPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
|
package/esm2022/lib/form/components/widgets/data-table/helpers/data-table-path-parser.helper.mjs
DELETED
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
export class DataTablePathParserHelper {
|
|
18
|
-
constructor() {
|
|
19
|
-
this.removeSquareBracketsRegEx = /^\[(.*)\]$/;
|
|
20
|
-
this.indexReferencesRegEx = /(\[\d+\])+$/;
|
|
21
|
-
}
|
|
22
|
-
retrieveDataFromPath(data, path) {
|
|
23
|
-
if (!path) {
|
|
24
|
-
return [];
|
|
25
|
-
}
|
|
26
|
-
const properties = this.splitPathIntoProperties(path);
|
|
27
|
-
const currentProperty = properties.shift();
|
|
28
|
-
const propertyIndexReferences = this.getIndexReferencesFromProperty(currentProperty);
|
|
29
|
-
const purePropertyName = this.extractPurePropertyName(currentProperty);
|
|
30
|
-
const isPropertyWithMultipleIndexReferences = propertyIndexReferences.length > 1;
|
|
31
|
-
if (isPropertyWithMultipleIndexReferences || !this.isPropertyExistsInData(data, purePropertyName)) {
|
|
32
|
-
return [];
|
|
33
|
-
}
|
|
34
|
-
const isPropertyWithSingleIndexReference = propertyIndexReferences.length === 1;
|
|
35
|
-
const nestedData = isPropertyWithSingleIndexReference ? data[purePropertyName]?.[propertyIndexReferences[0]] : data[purePropertyName];
|
|
36
|
-
if (nestedData && properties.length === 0) {
|
|
37
|
-
if (this.isDataArrayOrObject(nestedData)) {
|
|
38
|
-
return Array.isArray(nestedData) ? nestedData : [nestedData];
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return this.retrieveDataFromPath(nestedData, properties.join('.'));
|
|
42
|
-
}
|
|
43
|
-
splitPathIntoProperties(path) {
|
|
44
|
-
const properties = [];
|
|
45
|
-
const separator = '.';
|
|
46
|
-
const openBracket = '[';
|
|
47
|
-
const closeBracket = ']';
|
|
48
|
-
let currentPropertyBuffer = '';
|
|
49
|
-
let bracketCount = 0;
|
|
50
|
-
const isPropertySeparatorOutsideBrackets = () => bracketCount === 0;
|
|
51
|
-
if (!path) {
|
|
52
|
-
return properties;
|
|
53
|
-
}
|
|
54
|
-
for (const char of path) {
|
|
55
|
-
switch (char) {
|
|
56
|
-
case separator:
|
|
57
|
-
if (isPropertySeparatorOutsideBrackets()) {
|
|
58
|
-
properties.push(currentPropertyBuffer);
|
|
59
|
-
currentPropertyBuffer = '';
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
currentPropertyBuffer += char;
|
|
63
|
-
}
|
|
64
|
-
break;
|
|
65
|
-
case openBracket:
|
|
66
|
-
bracketCount++;
|
|
67
|
-
currentPropertyBuffer += char;
|
|
68
|
-
break;
|
|
69
|
-
case closeBracket:
|
|
70
|
-
bracketCount--;
|
|
71
|
-
currentPropertyBuffer += char;
|
|
72
|
-
break;
|
|
73
|
-
default:
|
|
74
|
-
currentPropertyBuffer += char;
|
|
75
|
-
break;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
if (currentPropertyBuffer) {
|
|
79
|
-
properties.push(currentPropertyBuffer);
|
|
80
|
-
}
|
|
81
|
-
return properties;
|
|
82
|
-
}
|
|
83
|
-
getIndexReferencesFromProperty(property) {
|
|
84
|
-
const match = this.indexReferencesRegEx.exec(property);
|
|
85
|
-
if (!match) {
|
|
86
|
-
return [];
|
|
87
|
-
}
|
|
88
|
-
const indexReferencesString = match[0];
|
|
89
|
-
const numbersFromBrackets = indexReferencesString.slice(1, -1).split('][').map(Number);
|
|
90
|
-
return numbersFromBrackets;
|
|
91
|
-
}
|
|
92
|
-
extractPurePropertyName(property) {
|
|
93
|
-
const propertyIndexReferences = this.getIndexReferencesFromProperty(property);
|
|
94
|
-
const numberOfIndexReferences = propertyIndexReferences.length;
|
|
95
|
-
if (property == null) {
|
|
96
|
-
return '';
|
|
97
|
-
}
|
|
98
|
-
else if (numberOfIndexReferences !== 0) {
|
|
99
|
-
return this.removeSquareBracketsAndIndexReferencesFromProperty(property);
|
|
100
|
-
}
|
|
101
|
-
else {
|
|
102
|
-
return this.removeSquareBracketsFromProperty(property);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
removeSquareBracketsAndIndexReferencesFromProperty(property) {
|
|
106
|
-
const propertyWithoutIndexReferences = property?.replace(this.indexReferencesRegEx, '');
|
|
107
|
-
return this.removeSquareBracketsFromProperty(propertyWithoutIndexReferences);
|
|
108
|
-
}
|
|
109
|
-
removeSquareBracketsFromProperty(property) {
|
|
110
|
-
return property?.replace(this.removeSquareBracketsRegEx, '$1');
|
|
111
|
-
}
|
|
112
|
-
isPropertyExistsInData(data, property) {
|
|
113
|
-
return Object.prototype.hasOwnProperty.call(data, property);
|
|
114
|
-
}
|
|
115
|
-
isDataArrayOrObject(data) {
|
|
116
|
-
if (data == null) {
|
|
117
|
-
return false;
|
|
118
|
-
}
|
|
119
|
-
return Array.isArray(data) || typeof data === 'object';
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS1wYXRoLXBhcnNlci5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvcHJvY2Vzcy1zZXJ2aWNlcy1jbG91ZC9zcmMvbGliL2Zvcm0vY29tcG9uZW50cy93aWRnZXRzL2RhdGEtdGFibGUvaGVscGVycy9kYXRhLXRhYmxlLXBhdGgtcGFyc2VyLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxNQUFNLE9BQU8seUJBQXlCO0lBQXRDO1FBQ3FCLDhCQUF5QixHQUFHLFlBQVksQ0FBQztRQUN6Qyx5QkFBb0IsR0FBRyxhQUFhLENBQUM7SUF1SDFELENBQUM7SUFySEcsb0JBQW9CLENBQUMsSUFBUyxFQUFFLElBQVk7UUFDeEMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1IsT0FBTyxFQUFFLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RELE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQyxNQUFNLHVCQUF1QixHQUFHLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNyRixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN2RSxNQUFNLHFDQUFxQyxHQUFHLHVCQUF1QixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFFakYsSUFBSSxxQ0FBcUMsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1lBQ2hHLE9BQU8sRUFBRSxDQUFDO1FBQ2QsQ0FBQztRQUVELE1BQU0sa0NBQWtDLEdBQUcsdUJBQXVCLENBQUMsTUFBTSxLQUFLLENB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IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuZXhwb3J0IGNsYXNzIERhdGFUYWJsZVBhdGhQYXJzZXJIZWxwZXIge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVtb3ZlU3F1YXJlQnJhY2tldHNSZWdFeCA9IC9eXFxbKC4qKVxcXSQvO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5kZXhSZWZlcmVuY2VzUmVnRXggPSAvKFxcW1xcZCtcXF0pKyQvO1xuXG4gICAgcmV0cmlldmVEYXRhRnJvbVBhdGgoZGF0YTogYW55LCBwYXRoOiBzdHJpbmcpOiBhbnlbXSB7XG4gICAgICAgIGlmICghcGF0aCkge1xuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IHRoaXMuc3BsaXRQYXRoSW50b1Byb3BlcnRpZXMocGF0aCk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRQcm9wZXJ0eSA9IHByb3BlcnRpZXMuc2hpZnQoKTtcbiAgICAgICAgY29uc3QgcHJvcGVydHlJbmRleFJlZmVyZW5jZXMgPSB0aGlzLmdldEluZGV4UmVmZXJlbmNlc0Zyb21Qcm9wZXJ0eShjdXJyZW50UHJvcGVydHkpO1xuICAgICAgICBjb25zdCBwdXJlUHJvcGVydHlOYW1lID0gdGhpcy5leHRyYWN0UHVyZVByb3BlcnR5TmFtZShjdXJyZW50UHJvcGVydHkpO1xuICAgICAgICBjb25zdCBpc1Byb3BlcnR5V2l0aE11bHRpcGxlSW5kZXhSZWZlcmVuY2VzID0gcHJvcGVydHlJbmRleFJlZmVyZW5jZXMubGVuZ3RoID4gMTtcblxuICAgICAgICBpZiAoaXNQcm9wZXJ0eVdpdGhNdWx0aXBsZUluZGV4UmVmZXJlbmNlcyB8fCAhdGhpcy5pc1Byb3BlcnR5RXhpc3RzSW5EYXRhKGRhdGEsIHB1cmVQcm9wZXJ0eU5hbWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpc1Byb3BlcnR5V2l0aFNpbmdsZUluZGV4UmVmZXJlbmNlID0gcHJvcGVydHlJbmRleFJlZmVyZW5jZXMubGVuZ3RoID09PSAxO1xuICAgICAgICBjb25zdCBuZXN0ZWREYXRhID0gaXNQcm9wZXJ0eVdpdGhTaW5nbGVJbmRleFJlZmVyZW5jZSA/IGRhdGFbcHVyZVByb3BlcnR5TmFtZV0/Lltwcm9wZXJ0eUluZGV4UmVmZXJlbmNlc1swXV0gOiBkYXRhW3B1cmVQcm9wZXJ0eU5hbWVdO1xuXG4gICAgICAgIGlmIChuZXN0ZWREYXRhICYmIHByb3BlcnRpZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0RhdGFBcnJheU9yT2JqZWN0KG5lc3RlZERhdGEpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkobmVzdGVkRGF0YSkgPyBuZXN0ZWREYXRhIDogW25lc3RlZERhdGFdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucmV0cmlldmVEYXRhRnJvbVBhdGgobmVzdGVkRGF0YSwgcHJvcGVydGllcy5qb2luKCcuJykpO1xuICAgIH1cblxuICAgIHNwbGl0UGF0aEludG9Qcm9wZXJ0aWVzKHBhdGg6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICAgICAgY29uc3QgcHJvcGVydGllczogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0gJy4nO1xuICAgICAgICBjb25zdCBvcGVuQnJhY2tldCA9ICdbJztcbiAgICAgICAgY29uc3QgY2xvc2VCcmFja2V0ID0gJ10nO1xuXG4gICAgICAgIGxldCBjdXJyZW50UHJvcGVydHlCdWZmZXIgPSAnJztcbiAgICAgICAgbGV0IGJyYWNrZXRDb3VudCA9IDA7XG4gICAgICAgIGNvbnN0IGlzUHJvcGVydHlTZXBhcmF0b3JPdXRzaWRlQnJhY2tldHMgPSAoKSA9PiBicmFja2V0Q291bnQgPT09IDA7XG5cbiAgICAgICAgaWYgKCFwYXRoKSB7XG4gICAgICAgICAgICByZXR1cm4gcHJvcGVydGllcztcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoY29uc3QgY2hhciBvZiBwYXRoKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGNoYXIpIHtcbiAgICAgICAgICAgICAgICBjYXNlIHNlcGFyYXRvcjpcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzUHJvcGVydHlTZXBhcmF0b3JPdXRzaWRlQnJhY2tldHMoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJvcGVydGllcy5wdXNoKGN1cnJlbnRQcm9wZXJ0eUJ1ZmZlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50UHJvcGVydHlCdWZmZXIgPSAnJztcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRQcm9wZXJ0eUJ1ZmZlciArPSBjaGFyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2Ugb3BlbkJyYWNrZXQ6XG4gICAgICAgICAgICAgICAgICAgIGJyYWNrZXRDb3VudCsrO1xuICAgICAgICAgICAgICAgICAgICBjdXJyZW50UHJvcGVydHlCdWZmZXIgKz0gY2hhcjtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBjbG9zZUJyYWNrZXQ6XG4gICAgICAgICAgICAgICAgICAgIGJyYWNrZXRDb3VudC0tO1xuICAgICAgICAgICAgICAgICAgICBjdXJyZW50UHJvcGVydHlCdWZmZXIgKz0gY2hhcjtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudFByb3BlcnR5QnVmZmVyICs9IGNoYXI7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGN1cnJlbnRQcm9wZXJ0eUJ1ZmZlcikge1xuICAgICAgICAgICAgcHJvcGVydGllcy5wdXNoKGN1cnJlbnRQcm9wZXJ0eUJ1ZmZlcik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcHJvcGVydGllcztcbiAgICB9XG5cbiAgICBnZXRJbmRleFJlZmVyZW5jZXNGcm9tUHJvcGVydHkocHJvcGVydHk6IHN0cmluZyk6IG51bWJlcltdIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSB0aGlzLmluZGV4UmVmZXJlbmNlc1JlZ0V4LmV4ZWMocHJvcGVydHkpO1xuICAgICAgICBpZiAoIW1hdGNoKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpbmRleFJlZmVyZW5jZXNTdHJpbmcgPSBtYXRjaFswXTtcbiAgICAgICAgY29uc3QgbnVtYmVyc0Zyb21CcmFja2V0cyA9IGluZGV4UmVmZXJlbmNlc1N0cmluZy5zbGljZSgxLCAtMSkuc3BsaXQoJ11bJykubWFwKE51bWJlcik7XG5cbiAgICAgICAgcmV0dXJuIG51bWJlcnNGcm9tQnJhY2tldHM7XG4gICAgfVxuXG4gICAgZXh0cmFjdFB1cmVQcm9wZXJ0eU5hbWUocHJvcGVydHk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHByb3BlcnR5SW5kZXhSZWZlcmVuY2VzID0gdGhpcy5nZXRJbmRleFJlZmVyZW5jZXNGcm9tUHJvcGVydHkocHJvcGVydHkpO1xuICAgICAgICBjb25zdCBudW1iZXJPZkluZGV4UmVmZXJlbmNlcyA9IHByb3BlcnR5SW5kZXhSZWZlcmVuY2VzLmxlbmd0aDtcblxuICAgICAgICBpZiAocHJvcGVydHkgPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICB9IGVsc2UgaWYgKG51bWJlck9mSW5kZXhSZWZlcmVuY2VzICE9PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5yZW1vdmVTcXVhcmVCcmFja2V0c0FuZEluZGV4UmVmZXJlbmNlc0Zyb21Qcm9wZXJ0eShwcm9wZXJ0eSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5yZW1vdmVTcXVhcmVCcmFja2V0c0Zyb21Qcm9wZXJ0eShwcm9wZXJ0eSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbW92ZVNxdWFyZUJyYWNrZXRzQW5kSW5kZXhSZWZlcmVuY2VzRnJvbVByb3BlcnR5KHByb3BlcnR5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBwcm9wZXJ0eVdpdGhvdXRJbmRleFJlZmVyZW5jZXMgPSBwcm9wZXJ0eT8ucmVwbGFjZSh0aGlzLmluZGV4UmVmZXJlbmNlc1JlZ0V4LCAnJyk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucmVtb3ZlU3F1YXJlQnJhY2tldHNGcm9tUHJvcGVydHkocHJvcGVydHlXaXRob3V0SW5kZXhSZWZlcmVuY2VzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbW92ZVNxdWFyZUJyYWNrZXRzRnJvbVByb3BlcnR5KHByb3BlcnR5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gcHJvcGVydHk/LnJlcGxhY2UodGhpcy5yZW1vdmVTcXVhcmVCcmFja2V0c1JlZ0V4LCAnJDEnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGlzUHJvcGVydHlFeGlzdHNJbkRhdGEoZGF0YTogYW55LCBwcm9wZXJ0eTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZGF0YSwgcHJvcGVydHkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaXNEYXRhQXJyYXlPck9iamVjdChkYXRhOiBhbnkpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKGRhdGEgPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KGRhdGEpIHx8IHR5cGVvZiBkYXRhID09PSAnb2JqZWN0JztcbiAgICB9XG59XG4iXX0=
|