@mediusinc/mng-commons 5.5.0-rc.4 → 6.0.0-rc.2
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/core/action/action-parameters.model.d.ts +4 -4
- package/core/data-providers/base.data-provider.d.ts +4 -7
- package/core/data-providers/lookup.data-provider.d.ts +2 -2
- package/core/descriptors/model.descriptor.d.ts +1 -7
- package/core/descriptors/tableview.descriptor.d.ts +5 -5
- package/core/helpers/route.d.ts +0 -1
- package/core/helpers/type-helpers.d.ts +8 -0
- package/core/index.d.ts +0 -3
- package/core/models/menu.model.d.ts +0 -4
- package/core/services/commons.service.d.ts +0 -32
- package/core/services/tokens/module-config.token.d.ts +0 -28
- package/esm2022/core/action/action-parameters.model.mjs +1 -1
- package/esm2022/core/data-providers/base.data-provider.mjs +2 -4
- package/esm2022/core/data-providers/lookup.data-provider.mjs +1 -1
- package/esm2022/core/descriptors/model.descriptor.mjs +1 -1
- package/esm2022/core/descriptors/tableview.descriptor.mjs +1 -1
- package/esm2022/core/helpers/type-helpers.mjs +1 -1
- package/esm2022/core/index.mjs +1 -4
- package/esm2022/core/models/menu.model.mjs +1 -1
- package/esm2022/core/services/commons.service.mjs +1 -34
- package/esm2022/core/services/tokens/module-config.token.mjs +1 -1
- package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +5 -86
- package/esm2022/filter/descriptors/filter.descriptor.mjs +7 -29
- package/esm2022/form/api/data-providers/lookup-data-provider.factory.mjs +14 -41
- package/esm2022/form/api/data-providers/lookup.data-provider.mjs +3 -3
- package/esm2022/model/class/data-providers/base-from-class-data-provider.factory.mjs +5 -0
- package/esm2022/model/class/descriptors/model-class.descriptor.mjs +28 -0
- package/esm2022/model/class/descriptors/type-class.descriptor.mjs +6 -0
- package/esm2022/model/class/helpers/model.mjs +53 -0
- package/esm2022/model/class/index.mjs +8 -0
- package/esm2022/model/class/mediusinc-mng-commons-model-class.mjs +5 -0
- package/esm2022/model/data-providers/base-from-type-data-provider.factory.mjs +11 -6
- package/esm2022/model/descriptors/model.descriptor.mjs +11 -54
- package/esm2022/model/descriptors/type.descriptor.mjs +2 -10
- package/esm2022/model/index.mjs +1 -2
- package/esm2022/table/api/class/class-table-attribute-converter.mjs +80 -0
- package/esm2022/table/api/class/class-table-attribute.model.mjs +2 -0
- package/esm2022/table/api/class/class-table-data-provider.factory.mjs +5 -0
- package/esm2022/table/api/class/class-table-descriptor-helpers.mjs +99 -0
- package/esm2022/table/api/class/class-table-descriptor.factory.mjs +21 -0
- package/esm2022/table/api/class/index.mjs +6 -0
- package/esm2022/table/api/class/mediusinc-mng-commons-table-api-class.mjs +5 -0
- package/esm2022/table/api/data-providers/table-data-provider.factory.mjs +14 -41
- package/esm2022/table/api/data-providers/table.data-provider.mjs +3 -9
- package/esm2022/table/api/descriptors/column.descriptor.mjs +8 -3
- package/esm2022/table/api/descriptors/table-descriptor.factory.mjs +10 -77
- package/esm2022/table/api/descriptors/table.descriptor.mjs +3 -3
- package/esm2022/table/api/helpers/column-converter.mjs +25 -0
- package/esm2022/table/api/helpers/table-data-provider-descriptor-convert.mjs +4 -4
- package/esm2022/table/api/index.mjs +2 -4
- package/esm2022/table/api/models/table-columns.model.mjs +1 -1
- package/esm2022/table/components/column-value/column-value.component.mjs +4 -3
- package/esm2022/table/components/filter/filter-active-tag/filter-active-tag.component.mjs +3 -3
- package/esm2022/table/components/filter/filter-form/filter-form.component.mjs +5 -5
- package/esm2022/table/components/table/table.component.mjs +6 -8
- package/esm2022/tableview/action/components/action/action.component.mjs +1 -1
- package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +10 -6
- package/esm2022/tableview/action/helpers/action-execution.mjs +1 -1
- package/esm2022/tableview/action/models/execution/action-context.model.mjs +1 -1
- package/esm2022/tableview/action/models/execution/action-instance.model.mjs +1 -1
- package/esm2022/tableview/action/services/action-executor.service.mjs +11 -11
- package/esm2022/tableview/action/services/data-provider-executor.service.mjs +18 -3
- package/esm2022/tableview/api/action/descriptors/action-confirmation.descriptor.mjs +1 -1
- package/esm2022/tableview/api/action/descriptors/action-descriptor.factory.mjs +13 -104
- package/esm2022/tableview/api/action/descriptors/action-editor-descriptor.factory.mjs +15 -62
- package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +3 -63
- package/esm2022/tableview/api/action/descriptors/action-link-descriptor.factory.mjs +17 -30
- package/esm2022/tableview/api/action/descriptors/action-link.descriptor.mjs +1 -1
- package/esm2022/tableview/api/action/descriptors/action.descriptor.mjs +6 -29
- package/esm2022/tableview/api/action/descriptors/editor-action-descriptor.factory.mjs +21 -0
- package/esm2022/tableview/api/action/descriptors/editor-action-editor-descriptor.factory.mjs +21 -0
- package/esm2022/tableview/api/action/descriptors/table-action-descriptor.factory.mjs +37 -0
- package/esm2022/tableview/api/action/descriptors/table-action-editor-descriptor.factory.mjs +40 -0
- package/esm2022/tableview/api/action/helpers/data-provider-executors.mjs +25 -5
- package/esm2022/tableview/api/action/models/action-descriptor.types.mjs +1 -1
- package/esm2022/tableview/api/action/models/action-error.model.mjs +1 -1
- package/esm2022/tableview/api/action/models/execution/action-context-validation.model.mjs +1 -1
- package/esm2022/tableview/api/action/models/execution/action-context.model.mjs +1 -1
- package/esm2022/tableview/api/action/models/execution/action-instance.model.mjs +1 -1
- package/esm2022/tableview/api/action/models/tableview-action-default-categories.model.mjs +6 -6
- package/esm2022/tableview/api/action/services/data-provider-executor.service.mjs +3 -3
- package/esm2022/tableview/api/class/editor/class-editor-attribute-converter.mjs +85 -0
- package/esm2022/tableview/api/class/editor/class-editor-attribute.model.mjs +2 -0
- package/esm2022/tableview/api/class/editor/class-editor-data-provider.factory.mjs +5 -0
- package/esm2022/tableview/api/class/editor/class-editor-descriptor-helpers.mjs +95 -0
- package/esm2022/tableview/api/class/editor/class-editor-descriptor.factory.mjs +21 -0
- package/esm2022/tableview/api/class/index.mjs +13 -0
- package/esm2022/tableview/api/class/mediusinc-mng-commons-tableview-api-class.mjs +5 -0
- package/esm2022/tableview/api/class/tableview/class-tableview-attribute-converter.mjs +35 -0
- package/esm2022/tableview/api/class/tableview/class-tableview-attribute.model.mjs +2 -0
- package/esm2022/tableview/api/class/tableview/class-tableview-data-provider.factory.mjs +5 -0
- package/esm2022/tableview/api/class/tableview/class-tableview-descriptor-helpers.mjs +111 -0
- package/esm2022/tableview/api/class/tableview/class-tableview-descriptor.factory.mjs +26 -0
- package/esm2022/tableview/api/editor/data-providers/editor-data-provider.factory.mjs +14 -32
- package/esm2022/tableview/api/editor/data-providers/editor.data-provider.mjs +40 -7
- package/esm2022/tableview/api/editor/descriptors/editor-descriptor.factory.mjs +7 -73
- package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +49 -134
- package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +11 -2
- package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +3 -5
- package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +2 -18
- package/esm2022/tableview/api/editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper.mjs +51 -0
- package/esm2022/tableview/api/editor/models/editor-fields.model.mjs +1 -1
- package/esm2022/tableview/api/editor/models/form-editor.event.mjs +1 -1
- package/esm2022/tableview/api/index.mjs +8 -8
- package/esm2022/tableview/api/tableview/data-providers/tableview-data-provider.factory.mjs +13 -51
- package/esm2022/tableview/api/tableview/data-providers/tableview.data-provider.mjs +19 -11
- package/esm2022/tableview/api/tableview/descriptors/tableview-descriptor.factory.mjs +19 -96
- package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +29 -182
- package/esm2022/tableview/api/tableview/helpers/tableview-create.mjs +8 -6
- package/esm2022/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.mjs +4 -4
- package/esm2022/tableview/api/tableview/helpers/tableview-default-actions.mjs +117 -99
- package/esm2022/tableview/api/tableview/helpers/tableview-input-builder.mjs +164 -7
- package/esm2022/tableview/api/tableview/models/tableview-descriptor-fields-manage-helper.type.mjs +2 -0
- package/esm2022/tableview/api/tableview/models/tableview-descriptor-helper.type.mjs +2 -0
- package/esm2022/tableview/api/tableview/models/tableview-input.model.mjs +1 -1
- package/esm2022/tableview/api/tableview/models/tableview-route.model.mjs +1 -1
- package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +6 -6
- package/esm2022/tableview/editor/helpers/editor-field.mjs +3 -3
- package/esm2022/tableview/editor/helpers/editor-formly.mjs +4 -4
- package/esm2022/tableview/editor/helpers/field-create.mjs +21 -0
- package/esm2022/tableview/index.mjs +3 -2
- package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +1 -1
- package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +3 -1
- package/fesm2022/mediusinc-mng-commons-core.mjs +687 -781
- package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-filter.mjs +10 -113
- package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-form-api.mjs +15 -42
- package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-model-class.mjs +97 -0
- package/fesm2022/mediusinc-mng-commons-model-class.mjs.map +1 -0
- package/fesm2022/mediusinc-mng-commons-model.mjs +23 -137
- package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-table-api-class.mjs +204 -0
- package/fesm2022/mediusinc-mng-commons-table-api-class.mjs.map +1 -0
- package/fesm2022/mediusinc-mng-commons-table-api.mjs +55 -319
- package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-table.mjs +14 -15
- package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-tableview-api-class.mjs +367 -0
- package/fesm2022/mediusinc-mng-commons-tableview-api-class.mjs.map +1 -0
- package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +715 -1298
- package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-tableview.mjs +67 -27
- package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
- package/filter/descriptors/filter-lookup.descriptor.d.ts +1 -26
- package/filter/descriptors/filter.descriptor.d.ts +5 -12
- package/form/api/data-providers/lookup-data-provider.factory.d.ts +17 -20
- package/form/api/data-providers/lookup.data-provider.d.ts +3 -3
- package/model/class/README.md +8 -0
- package/model/class/data-providers/base-from-class-data-provider.factory.d.ts +3 -0
- package/model/class/descriptors/model-class.descriptor.d.ts +12 -0
- package/model/class/descriptors/type-class.descriptor.d.ts +3 -0
- package/model/{helpers → class/helpers}/model.d.ts +1 -2
- package/model/class/index.d.ts +4 -0
- package/model/data-providers/base-from-type-data-provider.factory.d.ts +13 -6
- package/model/descriptors/model.descriptor.d.ts +12 -27
- package/model/descriptors/type.descriptor.d.ts +0 -5
- package/model/index.d.ts +0 -1
- package/package.json +25 -7
- package/table/api/class/README.md +10 -0
- package/table/api/{helpers/class-attribute-converter.d.ts → class/class-table-attribute-converter.d.ts} +2 -9
- package/table/api/{models → class}/class-table-attribute.model.d.ts +1 -1
- package/table/api/class/class-table-data-provider.factory.d.ts +4 -0
- package/table/api/{helpers/table-descriptor-helpers.d.ts → class/class-table-descriptor-helpers.d.ts} +2 -4
- package/table/api/class/class-table-descriptor.factory.d.ts +11 -0
- package/table/api/class/index.d.ts +5 -0
- package/table/api/data-providers/table-data-provider.factory.d.ts +17 -20
- package/table/api/data-providers/table.data-provider.d.ts +4 -12
- package/table/api/descriptors/column.descriptor.d.ts +5 -2
- package/table/api/descriptors/table-descriptor.factory.d.ts +3 -39
- package/table/api/descriptors/table.descriptor.d.ts +3 -3
- package/table/api/helpers/column-converter.d.ts +7 -0
- package/table/api/helpers/table-data-provider-descriptor-convert.d.ts +3 -3
- package/table/api/index.d.ts +1 -3
- package/table/api/models/table-columns.model.d.ts +2 -2
- package/table/components/column-value/column-value.component.d.ts +1 -0
- package/table/components/filter/filter-active-tag/filter-active-tag.component.d.ts +1 -1
- package/table/components/filter/filter-form/filter-form.component.d.ts +1 -1
- package/table/components/filter/filter-overlay-with-tag/filter-overlay-with-tag.component.d.ts +1 -1
- package/table/components/table/table.component.d.ts +0 -9
- package/tableview/action/components/action/action.component.d.ts +2 -2
- package/tableview/action/components/editor/action-editor.component.d.ts +1 -1
- package/tableview/action/components/editor/injector-context/action-editor-injector-context.component.d.ts +6 -5
- package/tableview/action/components/localization/data-language-dropdown.component.d.ts +3 -3
- package/tableview/action/components/table/action-table.component.d.ts +3 -3
- package/tableview/action/helpers/action-execution.d.ts +1 -1
- package/tableview/action/models/execution/action-context.model.d.ts +3 -3
- package/tableview/action/models/execution/action-instance.model.d.ts +5 -5
- package/tableview/action/services/action-executor.service.d.ts +7 -7
- package/tableview/action/services/data-provider-executor.service.d.ts +16 -16
- package/tableview/action/services/view-container.service.d.ts +1 -1
- package/tableview/api/action/descriptors/action-confirmation.descriptor.d.ts +1 -1
- package/tableview/api/action/descriptors/action-descriptor.factory.d.ts +20 -31
- package/tableview/api/action/descriptors/action-editor-descriptor.factory.d.ts +18 -25
- package/tableview/api/action/descriptors/action-editor.descriptor.d.ts +22 -40
- package/tableview/api/action/descriptors/action-link-descriptor.factory.d.ts +21 -13
- package/tableview/api/action/descriptors/action-link.descriptor.d.ts +3 -3
- package/tableview/api/action/descriptors/action.descriptor.d.ts +31 -33
- package/tableview/api/action/descriptors/editor-action-descriptor.factory.d.ts +21 -0
- package/tableview/api/action/descriptors/editor-action-editor-descriptor.factory.d.ts +21 -0
- package/tableview/api/action/descriptors/table-action-descriptor.factory.d.ts +36 -0
- package/tableview/api/action/descriptors/table-action-editor-descriptor.factory.d.ts +40 -0
- package/tableview/api/action/helpers/data-provider-executors.d.ts +13 -8
- package/tableview/api/action/models/action-descriptor.types.d.ts +2 -2
- package/tableview/api/action/models/action-error.model.d.ts +1 -1
- package/tableview/api/action/models/execution/action-context-validation.model.d.ts +2 -2
- package/tableview/api/action/models/execution/action-context.model.d.ts +2 -2
- package/tableview/api/action/models/execution/action-instance.model.d.ts +1 -1
- package/tableview/api/action/models/tableview-action-default-categories.model.d.ts +5 -5
- package/tableview/api/action/services/data-provider-executor.service.d.ts +26 -25
- package/tableview/api/class/README.md +13 -0
- package/tableview/api/{editor/helpers/class-attribute-converter.d.ts → class/editor/class-editor-attribute-converter.d.ts} +2 -2
- package/tableview/api/{editor/models/class-tableview-attribute.model.d.ts → class/editor/class-editor-attribute.model.d.ts} +1 -1
- package/tableview/api/class/editor/class-editor-data-provider.factory.d.ts +4 -0
- package/tableview/api/{editor/helpers/editor-descriptor-helpers.d.ts → class/editor/class-editor-descriptor-helpers.d.ts} +2 -5
- package/tableview/api/class/editor/class-editor-descriptor.factory.d.ts +11 -0
- package/tableview/api/class/index.d.ts +10 -0
- package/tableview/api/{tableview/helpers/class-attribute-converter.d.ts → class/tableview/class-tableview-attribute-converter.d.ts} +1 -1
- package/tableview/api/{tableview/models → class/tableview}/class-tableview-attribute.model.d.ts +2 -2
- package/tableview/api/class/tableview/class-tableview-data-provider.factory.d.ts +4 -0
- package/tableview/api/{tableview/helpers/tableview-descriptor-helpers.d.ts → class/tableview/class-tableview-descriptor-helpers.d.ts} +1 -2
- package/tableview/api/class/tableview/class-tableview-descriptor.factory.d.ts +12 -0
- package/tableview/api/editor/data-providers/editor-data-provider.factory.d.ts +17 -16
- package/tableview/api/editor/data-providers/editor.data-provider.d.ts +64 -29
- package/tableview/api/editor/descriptors/editor-descriptor.factory.d.ts +5 -38
- package/tableview/api/editor/descriptors/editor.descriptor.d.ts +48 -112
- package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +8 -1
- package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +2 -3
- package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +3 -11
- package/tableview/api/editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper.d.ts +25 -0
- package/tableview/api/editor/models/editor-fields.model.d.ts +25 -21
- package/tableview/api/editor/models/form-editor.event.d.ts +0 -4
- package/tableview/api/index.d.ts +7 -6
- package/tableview/api/tableview/data-providers/tableview-data-provider.factory.d.ts +20 -25
- package/tableview/api/tableview/data-providers/tableview.data-provider.d.ts +22 -22
- package/tableview/api/tableview/descriptors/tableview-descriptor.factory.d.ts +20 -50
- package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +69 -163
- package/tableview/api/tableview/helpers/tableview-create.d.ts +18 -5
- package/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.d.ts +2 -2
- package/tableview/api/tableview/helpers/tableview-default-actions.d.ts +73 -20
- package/tableview/api/tableview/helpers/tableview-input-builder.d.ts +87 -9
- package/tableview/api/tableview/models/tableview-descriptor-fields-manage-helper.type.d.ts +9 -0
- package/tableview/api/tableview/models/tableview-descriptor-helper.type.d.ts +2 -0
- package/tableview/api/tableview/models/tableview-input.model.d.ts +1 -1
- package/tableview/api/tableview/models/tableview-route.model.d.ts +1 -1
- package/tableview/editor/helpers/field-create.d.ts +9 -0
- package/tableview/index.d.ts +2 -1
- package/tableview/tableview/components/route/tableview-route.component.d.ts +1 -1
- package/tableview/tableview/components/tableview/tableview.component.d.ts +6 -6
- package/version-info.json +5 -5
- package/core/components/pages/error/error.page.component.d.ts +0 -11
- package/core/components/pages/not-found/not-found.page.component.d.ts +0 -11
- package/core/data-providers/base-data-provider.factory.d.ts +0 -13
- package/esm2022/core/components/pages/error/error.page.component.mjs +0 -24
- package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +0 -24
- package/esm2022/core/data-providers/base-data-provider.factory.mjs +0 -28
- package/esm2022/model/helpers/model.mjs +0 -71
- package/esm2022/table/api/helpers/class-attribute-converter.mjs +0 -104
- package/esm2022/table/api/helpers/table-descriptor-helpers.mjs +0 -98
- package/esm2022/table/api/models/class-table-attribute.model.mjs +0 -2
- package/esm2022/tableview/api/editor/helpers/class-attribute-converter.mjs +0 -85
- package/esm2022/tableview/api/editor/helpers/editor-descriptor-helpers.mjs +0 -95
- package/esm2022/tableview/api/editor/models/class-tableview-attribute.model.mjs +0 -2
- package/esm2022/tableview/api/tableview/helpers/class-attribute-converter.mjs +0 -34
- package/esm2022/tableview/api/tableview/helpers/tableview-descriptor-helpers.mjs +0 -110
- package/esm2022/tableview/api/tableview/models/class-tableview-attribute.model.mjs +0 -2
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { TypeRegistry } from '@mediusinc/mng-commons/core';
|
|
2
|
-
export function findClassIdAttribute(classType) {
|
|
3
|
-
if (!classType)
|
|
4
|
-
return null;
|
|
5
|
-
const attrDef = getClassAttributeDef(classType);
|
|
6
|
-
if (!attrDef) {
|
|
7
|
-
return null;
|
|
8
|
-
}
|
|
9
|
-
let idAttribute = findAttributeByTypeAndName(attrDef, ['string', 'number'], 'id', 'uuid', 'code', 'sifra');
|
|
10
|
-
if (!idAttribute) {
|
|
11
|
-
// if no id or code, take the first attribute
|
|
12
|
-
idAttribute = attrDef[0];
|
|
13
|
-
}
|
|
14
|
-
return idAttribute?.name ?? null;
|
|
15
|
-
}
|
|
16
|
-
export function findClassTitleAttribute(classType) {
|
|
17
|
-
if (!classType)
|
|
18
|
-
return null;
|
|
19
|
-
const attrDef = getClassAttributeDef(classType);
|
|
20
|
-
if (!attrDef) {
|
|
21
|
-
return null;
|
|
22
|
-
}
|
|
23
|
-
let titleAttribute = findAttributeByTypeAndName(attrDef, ['string'], 'name', 'ime', 'title', 'naziv');
|
|
24
|
-
if (!titleAttribute) {
|
|
25
|
-
// if no name or title, take the first attribute
|
|
26
|
-
titleAttribute = attrDef[0];
|
|
27
|
-
}
|
|
28
|
-
return titleAttribute?.name ?? null;
|
|
29
|
-
}
|
|
30
|
-
export function getClassAttributeDef(classType) {
|
|
31
|
-
if (!classType)
|
|
32
|
-
return null;
|
|
33
|
-
const attrDefByFn = classType.getAttributeTypeMap?.();
|
|
34
|
-
if (attrDefByFn)
|
|
35
|
-
return attrDefByFn;
|
|
36
|
-
const attrDefByProp = classType.attributeTypeMap;
|
|
37
|
-
if (attrDefByProp)
|
|
38
|
-
return attrDefByProp;
|
|
39
|
-
const attrByObjSer = TypeRegistry.get().findAttributesDefinitionByClassType(classType);
|
|
40
|
-
if (attrByObjSer)
|
|
41
|
-
return attrByObjSer;
|
|
42
|
-
return null;
|
|
43
|
-
}
|
|
44
|
-
function findAttributeByTypeAndName(attributes, types, ...names) {
|
|
45
|
-
for (const name of names) {
|
|
46
|
-
const attribute = attributes.find(a => types.some(t => t === a.type) && a.name === name);
|
|
47
|
-
if (attribute) {
|
|
48
|
-
return attribute;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
return null;
|
|
52
|
-
}
|
|
53
|
-
export function trySetLookupItemsProperties(lookup, idAsTrack = true) {
|
|
54
|
-
if (lookup.dataProvider.classType) {
|
|
55
|
-
if (!lookup.optionsValueProperty && !lookup.optionsTrackProperty) {
|
|
56
|
-
const idProperty = findClassIdAttribute(lookup.dataProvider.classType) ?? undefined;
|
|
57
|
-
if (idProperty && !lookup.optionsValueProperty && !lookup.optionsTrackProperty) {
|
|
58
|
-
if (idAsTrack) {
|
|
59
|
-
lookup.withOptionsTrackPropertyUnsafe(idProperty);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
if (!lookup.optionsLabelProperty) {
|
|
64
|
-
const labelProperty = findClassTitleAttribute(lookup.dataProvider.classType);
|
|
65
|
-
if (labelProperty) {
|
|
66
|
-
lookup.withOptionsLabelPropertyUnsafe(labelProperty);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9tb2RlbC9zcmMvaGVscGVycy9tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtELFlBQVksRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRTFHLE1BQU0sVUFBVSxvQkFBb0IsQ0FBSSxTQUF3QjtJQUM1RCxJQUFJLENBQUMsU0FBUztRQUFFLE9BQU8sSUFBSSxDQUFDO0lBRTVCLE1BQU0sT0FBTyxHQUFHLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2hELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNYLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxJQUFJLFdBQVcsR0FBRywwQkFBMEIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDM0csSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2YsNkNBQTZDO1FBQzdDLFdBQVcsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELE9BQU8sV0FBVyxFQUFFLElBQUksSUFBSSxJQUFJLENBQUM7QUFDckMsQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBSSxTQUF3QjtJQUMvRCxJQUFJLENBQUMsU0FBUztRQUFFLE9BQU8sSUFBSSxDQUFDO0lBRTVCLE1BQU0sT0FBTyxHQUFHLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2hELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNYLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxJQUFJLGNBQWMsR0FBRywwQkFBMEIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN0RyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDbEIsZ0RBQWdEO1FBQ2hELGNBQWMsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELE9BQU8sY0FBYyxFQUFFLElBQUksSUFBSSxJQUFJLENBQUM7QUFDeEMsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBSSxTQUF3QjtJQUM1RCxJQUFJLENBQUMsU0FBUztRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQzVCLE1BQU0sV0FBVyxHQUFJLFNBQWlCLENBQUMsbUJBQW1CLEVBQUUsRUFBMEMsQ0FBQztJQUN2RyxJQUFJLFdBQVc7UUFBRSxPQUFPLFdBQVcsQ0FBQztJQUNwQyxNQUFNLGFBQWEsR0FBSSxTQUFpQixDQUFDLGdCQUF3RCxDQUFDO0lBQ2xHLElBQUksYUFBYTtRQUFFLE9BQU8sYUFBYSxDQUFDO0lBQ3hDLE1BQU0sWUFBWSxHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQ0FBbUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN2RixJQUFJLFlBQVk7UUFBRSxPQUFPLFlBQVksQ0FBQztJQUN0QyxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDO0FBRUQsU0FBUywwQkFBMEIsQ0FBQyxVQUErQixFQUFFLEtBQWUsRUFBRSxHQUFHLEtBQWU7SUFDcEcsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUN2QixNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQztRQUN6RixJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ1osT0FBTyxTQUFTLENBQUM7UUFDckIsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDO0FBRUQsTUFBTSxVQUFVLDJCQUEyQixDQUFRLE1BQStDLEVBQUUsU0FBUyxHQUFHLElBQUk7SUFDaEgsSUFBSSxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUMvRCxNQUFNLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLFNBQVMsQ0FBQztZQUNwRixJQUFJLFVBQVUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO2dCQUM3RSxJQUFJLFNBQVMsRUFBRSxDQUFDO29CQUNaLE1BQU0sQ0FBQyw4QkFBOEIsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDdEQsQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQy9CLE1BQU0sYUFBYSxHQUFHLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDN0UsSUFBSSxhQUFhLEVBQUUsQ0FBQztnQkFDaEIsTUFBTSxDQUFDLDhCQUE4QixDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3pELENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NsYXNzQXR0cmlidXRlRGVmLCBDbGFzc1R5cGUsIElMb29rdXBEZXNjcmlwdG9yLCBUeXBlUmVnaXN0cnl9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kQ2xhc3NJZEF0dHJpYnV0ZTxUPihjbGFzc1R5cGU/OiBDbGFzc1R5cGU8VD4pOiBzdHJpbmcgfCBudWxsIHtcbiAgICBpZiAoIWNsYXNzVHlwZSkgcmV0dXJuIG51bGw7XG5cbiAgICBjb25zdCBhdHRyRGVmID0gZ2V0Q2xhc3NBdHRyaWJ1dGVEZWYoY2xhc3NUeXBlKTtcbiAgICBpZiAoIWF0dHJEZWYpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgbGV0IGlkQXR0cmlidXRlID0gZmluZEF0dHJpYnV0ZUJ5VHlwZUFuZE5hbWUoYXR0ckRlZiwgWydzdHJpbmcnLCAnbnVtYmVyJ10sICdpZCcsICd1dWlkJywgJ2NvZGUnLCAnc2lmcmEnKTtcbiAgICBpZiAoIWlkQXR0cmlidXRlKSB7XG4gICAgICAgIC8vIGlmIG5vIGlkIG9yIGNvZGUsIHRha2UgdGhlIGZpcnN0IGF0dHJpYnV0ZVxuICAgICAgICBpZEF0dHJpYnV0ZSA9IGF0dHJEZWZbMF07XG4gICAgfVxuXG4gICAgcmV0dXJuIGlkQXR0cmlidXRlPy5uYW1lID8/IG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kQ2xhc3NUaXRsZUF0dHJpYnV0ZTxUPihjbGFzc1R5cGU/OiBDbGFzc1R5cGU8VD4pOiBzdHJpbmcgfCBudWxsIHtcbiAgICBpZiAoIWNsYXNzVHlwZSkgcmV0dXJuIG51bGw7XG5cbiAgICBjb25zdCBhdHRyRGVmID0gZ2V0Q2xhc3NBdHRyaWJ1dGVEZWYoY2xhc3NUeXBlKTtcbiAgICBpZiAoIWF0dHJEZWYpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgbGV0IHRpdGxlQXR0cmlidXRlID0gZmluZEF0dHJpYnV0ZUJ5VHlwZUFuZE5hbWUoYXR0ckRlZiwgWydzdHJpbmcnXSwgJ25hbWUnLCAnaW1lJywgJ3RpdGxlJywgJ25heml2Jyk7XG4gICAgaWYgKCF0aXRsZUF0dHJpYnV0ZSkge1xuICAgICAgICAvLyBpZiBubyBuYW1lIG9yIHRpdGxlLCB0YWtlIHRoZSBmaXJzdCBhdHRyaWJ1dGVcbiAgICAgICAgdGl0bGVBdHRyaWJ1dGUgPSBhdHRyRGVmWzBdO1xuICAgIH1cblxuICAgIHJldHVybiB0aXRsZUF0dHJpYnV0ZT8ubmFtZSA/PyBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2xhc3NBdHRyaWJ1dGVEZWY8VD4oY2xhc3NUeXBlPzogQ2xhc3NUeXBlPFQ+KSB7XG4gICAgaWYgKCFjbGFzc1R5cGUpIHJldHVybiBudWxsO1xuICAgIGNvbnN0IGF0dHJEZWZCeUZuID0gKGNsYXNzVHlwZSBhcyBhbnkpLmdldEF0dHJpYnV0ZVR5cGVNYXA/LigpIGFzIEFycmF5PENsYXNzQXR0cmlidXRlRGVmPiB8IHVuZGVmaW5lZDtcbiAgICBpZiAoYXR0ckRlZkJ5Rm4pIHJldHVybiBhdHRyRGVmQnlGbjtcbiAgICBjb25zdCBhdHRyRGVmQnlQcm9wID0gKGNsYXNzVHlwZSBhcyBhbnkpLmF0dHJpYnV0ZVR5cGVNYXAgYXMgQXJyYXk8Q2xhc3NBdHRyaWJ1dGVEZWY+IHwgdW5kZWZpbmVkO1xuICAgIGlmIChhdHRyRGVmQnlQcm9wKSByZXR1cm4gYXR0ckRlZkJ5UHJvcDtcbiAgICBjb25zdCBhdHRyQnlPYmpTZXIgPSBUeXBlUmVnaXN0cnkuZ2V0KCkuZmluZEF0dHJpYnV0ZXNEZWZpbml0aW9uQnlDbGFzc1R5cGUoY2xhc3NUeXBlKTtcbiAgICBpZiAoYXR0ckJ5T2JqU2VyKSByZXR1cm4gYXR0ckJ5T2JqU2VyO1xuICAgIHJldHVybiBudWxsO1xufVxuXG5mdW5jdGlvbiBmaW5kQXR0cmlidXRlQnlUeXBlQW5kTmFtZShhdHRyaWJ1dGVzOiBDbGFzc0F0dHJpYnV0ZURlZltdLCB0eXBlczogc3RyaW5nW10sIC4uLm5hbWVzOiBzdHJpbmdbXSk6IENsYXNzQXR0cmlidXRlRGVmIHwgbnVsbCB7XG4gICAgZm9yIChjb25zdCBuYW1lIG9mIG5hbWVzKSB7XG4gICAgICAgIGNvbnN0IGF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXMuZmluZChhID0+IHR5cGVzLnNvbWUodCA9PiB0ID09PSBhLnR5cGUpICYmIGEubmFtZSA9PT0gbmFtZSk7XG4gICAgICAgIGlmIChhdHRyaWJ1dGUpIHtcbiAgICAgICAgICAgIHJldHVybiBhdHRyaWJ1dGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cnlTZXRMb29rdXBJdGVtc1Byb3BlcnRpZXM8TW9kZWw+KGxvb2t1cDogSUxvb2t1cERlc2NyaXB0b3I8TW9kZWwsIGFueSwgYW55LCBhbnk+LCBpZEFzVHJhY2sgPSB0cnVlKSB7XG4gICAgaWYgKGxvb2t1cC5kYXRhUHJvdmlkZXIuY2xhc3NUeXBlKSB7XG4gICAgICAgIGlmICghbG9va3VwLm9wdGlvbnNWYWx1ZVByb3BlcnR5ICYmICFsb29rdXAub3B0aW9uc1RyYWNrUHJvcGVydHkpIHtcbiAgICAgICAgICAgIGNvbnN0IGlkUHJvcGVydHkgPSBmaW5kQ2xhc3NJZEF0dHJpYnV0ZShsb29rdXAuZGF0YVByb3ZpZGVyLmNsYXNzVHlwZSkgPz8gdW5kZWZpbmVkO1xuICAgICAgICAgICAgaWYgKGlkUHJvcGVydHkgJiYgIWxvb2t1cC5vcHRpb25zVmFsdWVQcm9wZXJ0eSAmJiAhbG9va3VwLm9wdGlvbnNUcmFja1Byb3BlcnR5KSB7XG4gICAgICAgICAgICAgICAgaWYgKGlkQXNUcmFjaykge1xuICAgICAgICAgICAgICAgICAgICBsb29rdXAud2l0aE9wdGlvbnNUcmFja1Byb3BlcnR5VW5zYWZlKGlkUHJvcGVydHkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWxvb2t1cC5vcHRpb25zTGFiZWxQcm9wZXJ0eSkge1xuICAgICAgICAgICAgY29uc3QgbGFiZWxQcm9wZXJ0eSA9IGZpbmRDbGFzc1RpdGxlQXR0cmlidXRlKGxvb2t1cC5kYXRhUHJvdmlkZXIuY2xhc3NUeXBlKTtcbiAgICAgICAgICAgIGlmIChsYWJlbFByb3BlcnR5KSB7XG4gICAgICAgICAgICAgICAgbG9va3VwLndpdGhPcHRpb25zTGFiZWxQcm9wZXJ0eVVuc2FmZShsYWJlbFByb3BlcnR5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { CommonsInternalError, TypeRegistry } from '@mediusinc/mng-commons/core';
|
|
2
|
-
import { ColumnDisplayTypeEnum, ColumnTypeEnum } from '../models/column.model';
|
|
3
|
-
const dateRegex = /\d{4}-[01]\d-[0-3]\d/;
|
|
4
|
-
const dateTimeRegex = /\d{4}-[01]\d-[0-3]\dT([0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z?)|([0-2]\d:[0-5]\d:[0-5]\d\+[0-2]\d:[0-5]\d))/;
|
|
5
|
-
/**
|
|
6
|
-
* converts column to number or date on value based
|
|
7
|
-
* @param column column to be transformed
|
|
8
|
-
* @param value value to check if applicable
|
|
9
|
-
*/
|
|
10
|
-
export function columnToDateNumberOrBoolean(column, value) {
|
|
11
|
-
if (typeof value === 'boolean') {
|
|
12
|
-
return column.asBoolean();
|
|
13
|
-
}
|
|
14
|
-
else if (!isNaN(value) && typeof value === 'number') {
|
|
15
|
-
return column.asNumber();
|
|
16
|
-
}
|
|
17
|
-
else if (dateRegex.test(value)) {
|
|
18
|
-
if (dateTimeRegex.test(value)) {
|
|
19
|
-
return column.asDate('dd. MMM yyyy HH:mm');
|
|
20
|
-
}
|
|
21
|
-
return column.asDate('dd. MMM yyyy');
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
return column;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* converts string type to column type enum, default is string
|
|
29
|
-
* @param attributeType
|
|
30
|
-
*/
|
|
31
|
-
export function getColumnTypeFromClassAttributeDefType(attributeType) {
|
|
32
|
-
const typeRegistry = TypeRegistry.get();
|
|
33
|
-
if (typeRegistry.findEnum(attributeType)) {
|
|
34
|
-
attributeType = 'enum';
|
|
35
|
-
}
|
|
36
|
-
else if (typeRegistry.findType(attributeType)) {
|
|
37
|
-
attributeType = 'class';
|
|
38
|
-
}
|
|
39
|
-
switch (attributeType.toLowerCase()) {
|
|
40
|
-
case 'number':
|
|
41
|
-
case 'currency':
|
|
42
|
-
return ColumnTypeEnum.Number;
|
|
43
|
-
case 'boolean':
|
|
44
|
-
return ColumnTypeEnum.Boolean;
|
|
45
|
-
case 'date':
|
|
46
|
-
return ColumnTypeEnum.Date;
|
|
47
|
-
case 'enum':
|
|
48
|
-
return ColumnTypeEnum.Enum;
|
|
49
|
-
case 'custom':
|
|
50
|
-
return ColumnTypeEnum.Custom;
|
|
51
|
-
case 'class':
|
|
52
|
-
return ColumnTypeEnum.String;
|
|
53
|
-
case 'string':
|
|
54
|
-
default:
|
|
55
|
-
return ColumnTypeEnum.String;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
export function getColumnDisplayTypeFromColumnType(columnType, attributeType) {
|
|
59
|
-
switch (columnType) {
|
|
60
|
-
case ColumnTypeEnum.Number:
|
|
61
|
-
return attributeType === 'currency' ? ColumnDisplayTypeEnum.Currency : ColumnDisplayTypeEnum.Number;
|
|
62
|
-
case ColumnTypeEnum.Boolean:
|
|
63
|
-
return ColumnDisplayTypeEnum.Boolean;
|
|
64
|
-
case ColumnTypeEnum.Date:
|
|
65
|
-
return ColumnDisplayTypeEnum.Date;
|
|
66
|
-
case ColumnTypeEnum.Enum:
|
|
67
|
-
return ColumnDisplayTypeEnum.Enum;
|
|
68
|
-
case ColumnTypeEnum.Custom:
|
|
69
|
-
return ColumnDisplayTypeEnum.Component;
|
|
70
|
-
case ColumnTypeEnum.String:
|
|
71
|
-
default:
|
|
72
|
-
return ColumnDisplayTypeEnum.String;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
export function expandClassAttributeDefWithTableDef(attributes) {
|
|
76
|
-
if (!attributes) {
|
|
77
|
-
throw new CommonsInternalError('Class attribute definition is null, problem with TypeRegistry::findAttributesDefinitionByClassType?', { name: 'TableviewUtilsError' });
|
|
78
|
-
}
|
|
79
|
-
const typeRegistry = TypeRegistry.get();
|
|
80
|
-
const tableClassAttributeDef = [];
|
|
81
|
-
for (const attribute of attributes) {
|
|
82
|
-
const enumType = typeRegistry.findEnum(attribute.type);
|
|
83
|
-
const columnType = enumType ? ColumnTypeEnum.Enum : getColumnTypeFromClassAttributeDefType(attribute.type);
|
|
84
|
-
tableClassAttributeDef.push({
|
|
85
|
-
name: attribute.name,
|
|
86
|
-
baseName: attribute.baseName,
|
|
87
|
-
type: attribute.type,
|
|
88
|
-
subtype: attribute.subtype,
|
|
89
|
-
columnType: enumType ? ColumnTypeEnum.Enum : getColumnTypeFromClassAttributeDefType(attribute.type),
|
|
90
|
-
columnDisplayType: getColumnDisplayTypeFromColumnType(columnType, attribute.type),
|
|
91
|
-
enumType: typeRegistry.findEnum(attribute.type),
|
|
92
|
-
classType: typeRegistry.findType(attribute.type)
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
return tableClassAttributeDef;
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* returns attributes from class type and extends to typed def with column and field enum type
|
|
99
|
-
* @param type class type
|
|
100
|
-
*/
|
|
101
|
-
export function getTableClassAttributeDef(type) {
|
|
102
|
-
return expandClassAttributeDefWithTableDef(TypeRegistry.get().findAttributesDefinitionByClassType(type));
|
|
103
|
-
}
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtYXR0cmlidXRlLWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RhYmxlL2FwaS9zcmMvaGVscGVycy9jbGFzcy1hdHRyaWJ1dGUtY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBK0Isb0JBQW9CLEVBQVksWUFBWSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFJdkgsT0FBTyxFQUFDLHFCQUFxQixFQUFFLGNBQWMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBRTdFLE1BQU0sU0FBUyxHQUFHLHNCQUFzQixDQUFDO0FBQ3pDLE1BQU0sYUFBYSxHQUFHLHdIQUF3SCxDQUFDO0FBRS9JOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsMkJBQTJCLENBQUMsTUFBa0MsRUFBRSxLQUFVO0lBQ3RGLElBQUksT0FBTyxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDN0IsT0FBTyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDOUIsQ0FBQztTQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDcEQsT0FBTyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0IsQ0FBQztTQUFNLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQy9CLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzVCLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDekMsQ0FBQztTQUFNLENBQUM7UUFDSixPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0FBQ0wsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFB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Q0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxzQ0FBc0MsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ25HLGlCQUFpQixFQUFFLGtDQUFrQyxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ2pGLFFBQVEsRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQWE7WUFDM0QsU0FBUyxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBbUI7U0FDckUsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELE9BQU8sc0JBQXNCLENBQUM7QUFDbEMsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSx5QkFBeUIsQ0FBSSxJQUFrQjtJQUMzRCxPQUFPLG1DQUFtQyxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQ0FBbUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQzdHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NsYXNzQXR0cmlidXRlRGVmLCBDbGFzc1R5cGUsIENvbW1vbnNJbnRlcm5hbEVycm9yLCBFbnVtVHlwZSwgVHlwZVJlZ2lzdHJ5fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuXG5pbXBvcnQge0NvbHVtbkRlc2NyaXB0b3J9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2NvbHVtbi5kZXNjcmlwdG9yJztcbmltcG9ydCB7VGFibGVDbGFzc0F0dHJpYnV0ZURlZn0gZnJvbSAnLi4vbW9kZWxzL2NsYXNzLXRhYmxlLWF0dHJpYnV0ZS5tb2RlbCc7XG5pbXBvcnQge0NvbHVtbkRpc3BsYXlUeXBlRW51bSwgQ29sdW1uVHlwZUVudW19IGZyb20gJy4uL21vZGVscy9jb2x1bW4ubW9kZWwnO1xuXG5jb25zdCBkYXRlUmVnZXggPSAvXFxkezR9LVswMV1cXGQtWzAtM11cXGQvO1xuY29uc3QgZGF0ZVRpbWVSZWdleCA9IC9cXGR7NH0tWzAxXVxcZC1bMC0zXVxcZFQoWzAtMl1cXGQ6WzAtNV1cXGQ6WzAtNV1cXGRcXC5cXGQrKFsrLV1bMC0yXVxcZDpbMC01XVxcZHxaPyl8KFswLTJdXFxkOlswLTVdXFxkOlswLTVdXFxkXFwrWzAtMl1cXGQ6WzAtNV1cXGQpKS87XG5cbi8qKlxuICogY29udmVydHMgY29sdW1uIHRvIG51bWJlciBvciBkYXRlIG9uIHZhbHVlIGJhc2VkXG4gKiBAcGFyYW0gY29sdW1uIGNvbHVtbiB0byBiZSB0cmFuc2Zvcm1lZFxuICogQHBhcmFtIHZhbHVlIHZhbHVlIHRvIGNoZWNrIGlmIGFwcGxpY2FibGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbHVtblRvRGF0ZU51bWJlck9yQm9vbGVhbihjb2x1bW46IENvbHVtbkRlc2NyaXB0b3I8YW55LCBhbnk+LCB2YWx1ZTogYW55KTogQ29sdW1uRGVzY3JpcHRvcjxhbnksIGFueT4ge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJykge1xuICAgICAgICByZXR1cm4gY29sdW1uLmFzQm9vbGVhbigpO1xuICAgIH0gZWxzZSBpZiAoIWlzTmFOKHZhbHVlKSAmJiB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldHVybiBjb2x1bW4uYXNOdW1iZXIoKTtcbiAgICB9IGVsc2UgaWYgKGRhdGVSZWdleC50ZXN0KHZhbHVlKSkge1xuICAgICAgICBpZiAoZGF0ZVRpbWVSZWdleC50ZXN0KHZhbHVlKSkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbHVtbi5hc0RhdGUoJ2RkLiBNTU0geXl5eSBISDptbScpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb2x1bW4uYXNEYXRlKCdkZC4gTU1NIHl5eXknKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gY29sdW1uO1xuICAgIH1cbn1cblxuLyoqXG4gKiBjb252ZXJ0cyBzdHJpbmcgdHlwZSB0byBjb2x1bW4gdHlwZSBlbnVtLCBkZWZhdWx0IGlzIHN0cmluZ1xuICogQHBhcmFtIGF0dHJpYnV0ZVR5cGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENvbHVtblR5cGVGcm9tQ2xhc3NBdHRyaWJ1dGVEZWZUeXBlKGF0dHJpYnV0ZVR5cGU6IHN0cmluZyk6IENvbHVtblR5cGVFbnVtIHtcbiAgICBjb25zdCB0eXBlUmVnaXN0cnkgPSBUeXBlUmVnaXN0cnkuZ2V0KCk7XG4gICAgaWYgKHR5cGVSZWdpc3RyeS5maW5kRW51bShhdHRyaWJ1dGVUeXBlKSBhcyBFbnVtVHlwZSkge1xuICAgICAgICBhdHRyaWJ1dGVUeXBlID0gJ2VudW0nO1xuICAgIH0gZWxzZSBpZiAodHlwZVJlZ2lzdHJ5LmZpbmRUeXBlKGF0dHJpYnV0ZVR5cGUpIGFzIENsYXNzVHlwZTxhbnk+KSB7XG4gICAgICAgIGF0dHJpYnV0ZVR5cGUgPSAnY2xhc3MnO1xuICAgIH1cblxuICAgIHN3aXRjaCAoYXR0cmlidXRlVHlwZS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgIGNhc2UgJ251bWJlcic6XG4gICAgICAgIGNhc2UgJ2N1cnJlbmN5JzpcbiAgICAgICAgICAgIHJldHVybiBDb2x1bW5UeXBlRW51bS5OdW1iZXI7XG4gICAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxuICAgICAgICAgICAgcmV0dXJuIENvbHVtblR5cGVFbnVtLkJvb2xlYW47XG4gICAgICAgIGNhc2UgJ2RhdGUnOlxuICAgICAgICAgICAgcmV0dXJuIENvbHVtblR5cGVFbnVtLkRhdGU7XG4gICAgICAgIGNhc2UgJ2VudW0nOlxuICAgICAgICAgICAgcmV0dXJuIENvbHVtblR5cGVFbnVtLkVudW07XG4gICAgICAgIGNhc2UgJ2N1c3RvbSc6XG4gICAgICAgICAgICByZXR1cm4gQ29sdW1uVHlwZUVudW0uQ3VzdG9tO1xuICAgICAgICBjYXNlICdjbGFzcyc6XG4gICAgICAgICAgICByZXR1cm4gQ29sdW1uVHlwZUVudW0uU3RyaW5nO1xuICAgICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIENvbHVtblR5cGVFbnVtLlN0cmluZztcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb2x1bW5EaXNwbGF5VHlwZUZyb21Db2x1bW5UeXBlKGNvbHVtblR5cGU6IENvbHVtblR5cGVFbnVtLCBhdHRyaWJ1dGVUeXBlOiBzdHJpbmcpOiBDb2x1bW5EaXNwbGF5VHlwZUVudW0ge1xuICAgIHN3aXRjaCAoY29sdW1uVHlwZSkge1xuICAgICAgICBjYXNlIENvbHVtblR5cGVFbnVtLk51bWJlcjpcbiAgICAgICAgICAgIHJldHVybiBhdHRyaWJ1dGVUeXBlID09PSAnY3VycmVuY3knID8gQ29sdW1uRGlzcGxheVR5cGVFbnVtLkN1cnJlbmN5IDogQ29sdW1uRGlzcGxheVR5cGVFbnVtLk51bWJlcjtcbiAgICAgICAgY2FzZSBDb2x1bW5UeXBlRW51bS5Cb29sZWFuOlxuICAgICAgICAgICAgcmV0dXJuIENvbHVtbkRpc3BsYXlUeXBlRW51bS5Cb29sZWFuO1xuICAgICAgICBjYXNlIENvbHVtblR5cGVFbnVtLkRhdGU6XG4gICAgICAgICAgICByZXR1cm4gQ29sdW1uRGlzcGxheVR5cGVFbnVtLkRhdGU7XG4gICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uRW51bTpcbiAgICAgICAgICAgIHJldHVybiBDb2x1bW5EaXNwbGF5VHlwZUVudW0uRW51bTtcbiAgICAgICAgY2FzZSBDb2x1bW5UeXBlRW51bS5DdXN0b206XG4gICAgICAgICAgICByZXR1cm4gQ29sdW1uRGlzcGxheVR5cGVFbnVtLkNvbXBvbmVudDtcbiAgICAgICAgY2FzZSBDb2x1bW5UeXBlRW51bS5TdHJpbmc6XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gQ29sdW1uRGlzcGxheVR5cGVFbnVtLlN0cmluZztcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleHBhbmRDbGFzc0F0dHJpYnV0ZURlZldpdGhUYWJsZURlZihhdHRyaWJ1dGVzPzogQXJyYXk8Q2xhc3NBdHRyaWJ1dGVEZWY+IHwgbnVsbCk6IFRhYmxlQ2xhc3NBdHRyaWJ1dGVEZWZbXSB7XG4gICAgaWYgKCFhdHRyaWJ1dGVzKSB7XG4gICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcignQ2xhc3MgYXR0cmlidXRlIGRlZmluaXRpb24gaXMgbnVsbCwgcHJvYmxlbSB3aXRoIFR5cGVSZWdpc3RyeTo6ZmluZEF0dHJpYnV0ZXNEZWZpbml0aW9uQnlDbGFzc1R5cGU/Jywge25hbWU6ICdUYWJsZXZpZXdVdGlsc0Vycm9yJ30pO1xuICAgIH1cblxuICAgIGNvbnN0IHR5cGVSZWdpc3RyeSA9IFR5cGVSZWdpc3RyeS5nZXQoKTtcbiAgICBjb25zdCB0YWJsZUNsYXNzQXR0cmlidXRlRGVmOiBUYWJsZUNsYXNzQXR0cmlidXRlRGVmW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IGF0dHJpYnV0ZSBvZiBhdHRyaWJ1dGVzKSB7XG4gICAgICAgIGNvbnN0IGVudW1UeXBlID0gdHlwZVJlZ2lzdHJ5LmZpbmRFbnVtKGF0dHJpYnV0ZS50eXBlKTtcbiAgICAgICAgY29uc3QgY29sdW1uVHlwZSA9IGVudW1UeXBlID8gQ29sdW1uVHlwZUVudW0uRW51bSA6IGdldENvbHVtblR5cGVGcm9tQ2xhc3NBdHRyaWJ1dGVEZWZUeXBlKGF0dHJpYnV0ZS50eXBlKTtcbiAgICAgICAgdGFibGVDbGFzc0F0dHJpYnV0ZURlZi5wdXNoKHtcbiAgICAgICAgICAgIG5hbWU6IGF0dHJpYnV0ZS5uYW1lLFxuICAgICAgICAgICAgYmFzZU5hbWU6IGF0dHJpYnV0ZS5iYXNlTmFtZSxcbiAgICAgICAgICAgIHR5cGU6IGF0dHJpYnV0ZS50eXBlLFxuICAgICAgICAgICAgc3VidHlwZTogYXR0cmlidXRlLnN1YnR5cGUsXG4gICAgICAgICAgICBjb2x1bW5UeXBlOiBlbnVtVHlwZSA/IENvbHVtblR5cGVFbnVtLkVudW0gOiBnZXRDb2x1bW5UeXBlRnJvbUNsYXNzQXR0cmlidXRlRGVmVHlwZShhdHRyaWJ1dGUudHlwZSksXG4gICAgICAgICAgICBjb2x1bW5EaXNwbGF5VHlwZTogZ2V0Q29sdW1uRGlzcGxheVR5cGVGcm9tQ29sdW1uVHlwZShjb2x1bW5UeXBlLCBhdHRyaWJ1dGUudHlwZSksXG4gICAgICAgICAgICBlbnVtVHlwZTogdHlwZVJlZ2lzdHJ5LmZpbmRFbnVtKGF0dHJpYnV0ZS50eXBlKSBhcyBFbnVtVHlwZSxcbiAgICAgICAgICAgIGNsYXNzVHlwZTogdHlwZVJlZ2lzdHJ5LmZpbmRUeXBlKGF0dHJpYnV0ZS50eXBlKSBhcyBDbGFzc1R5cGU8YW55PlxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGFibGVDbGFzc0F0dHJpYnV0ZURlZjtcbn1cblxuLyoqXG4gKiByZXR1cm5zIGF0dHJpYnV0ZXMgZnJvbSBjbGFzcyB0eXBlIGFuZCBleHRlbmRzIHRvIHR5cGVkIGRlZiB3aXRoIGNvbHVtbiBhbmQgZmllbGQgZW51bSB0eXBlXG4gKiBAcGFyYW0gdHlwZSBjbGFzcyB0eXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRUYWJsZUNsYXNzQXR0cmlidXRlRGVmPFQ+KHR5cGU6IENsYXNzVHlwZTxUPik6IFRhYmxlQ2xhc3NBdHRyaWJ1dGVEZWZbXSB7XG4gICAgcmV0dXJuIGV4cGFuZENsYXNzQXR0cmlidXRlRGVmV2l0aFRhYmxlRGVmKFR5cGVSZWdpc3RyeS5nZXQoKS5maW5kQXR0cmlidXRlc0RlZmluaXRpb25CeUNsYXNzVHlwZSh0eXBlKSk7XG59XG4iXX0=
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { CommonsInternalError, TypeRegistry } from '@mediusinc/mng-commons/core';
|
|
2
|
-
import { enumModelGeneric, findClassTitleAttribute } from '@mediusinc/mng-commons/model';
|
|
3
|
-
import { ColumnTypeEnum } from '../models/column.model';
|
|
4
|
-
import { getTableClassAttributeDef } from './class-attribute-converter';
|
|
5
|
-
/**
|
|
6
|
-
* generates column based on attributes
|
|
7
|
-
* @param desc Table descriptor
|
|
8
|
-
* @param attribute attribute map
|
|
9
|
-
* @param column if provided, replaced by new, otherwise new is created
|
|
10
|
-
* @param args additional parameters
|
|
11
|
-
*/
|
|
12
|
-
export function upsertTableColumnFromAttributeDef(desc, attribute, column, ...args) {
|
|
13
|
-
if (column == null) {
|
|
14
|
-
column = desc.addColumnUnsafe(attribute.name);
|
|
15
|
-
}
|
|
16
|
-
if (attribute.columnType === ColumnTypeEnum.Enum && args.length === 0 && attribute.enumType) {
|
|
17
|
-
args = [enumModelGeneric(attribute.enumType)];
|
|
18
|
-
}
|
|
19
|
-
column = column.asType(attribute.columnType, attribute.columnDisplayType, ...args);
|
|
20
|
-
if (attribute.classType) {
|
|
21
|
-
const titleProperty = findClassTitleAttribute(attribute.classType) ?? undefined;
|
|
22
|
-
if (titleProperty) {
|
|
23
|
-
column.withGetter(value => value?.[titleProperty]);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
desc.addFilterFromColumnDescriptorUnsafe(column, false);
|
|
28
|
-
desc.withSortUnsafe(column.property);
|
|
29
|
-
}
|
|
30
|
-
return column;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* defines modified type of column
|
|
34
|
-
* DO NOT USE with enum (use withCustomEnumType)
|
|
35
|
-
* @param descriptor table descriptor
|
|
36
|
-
* @param property column name
|
|
37
|
-
* @param columnType modified type
|
|
38
|
-
* @param args additional attributes
|
|
39
|
-
* @param columnDisplayType
|
|
40
|
-
*/
|
|
41
|
-
export function modifyTableClassAttributeColumnType(descriptor, property, columnType, columnDisplayType, ...args) {
|
|
42
|
-
return modifyTableClassAttributeColumnTypeUnsafe(descriptor, property, columnType, columnDisplayType, ...args);
|
|
43
|
-
}
|
|
44
|
-
export function modifyTableClassAttributeColumnTypeUnsafe(descriptor, property, columnType, columnDisplayType, ...args) {
|
|
45
|
-
if (!descriptor.model.type) {
|
|
46
|
-
throw new CommonsInternalError(`withColumnModifiedType cannot be executed for property ${property}: Model type is not defined.`);
|
|
47
|
-
}
|
|
48
|
-
const attributeDef = getTableClassAttributeDef(descriptor.model.type).find(attr => attr.name === property);
|
|
49
|
-
if (attributeDef != null) {
|
|
50
|
-
attributeDef.columnType = columnType ?? attributeDef.columnType;
|
|
51
|
-
attributeDef.columnDisplayType = columnDisplayType ?? attributeDef.columnDisplayType;
|
|
52
|
-
return upsertTableColumnFromAttributeDef(descriptor, attributeDef, descriptor.columns.find(col => col.property === attributeDef.name), ...args);
|
|
53
|
-
}
|
|
54
|
-
return null;
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* defines custom enum type for column
|
|
58
|
-
* @param descriptor table descriptor
|
|
59
|
-
* @param property column name
|
|
60
|
-
* @param enumDesc Enum descriptor.
|
|
61
|
-
*/
|
|
62
|
-
export function modifyTableClassAttributeColumnEnum(descriptor, property, enumDesc) {
|
|
63
|
-
return tableDescriptorModifyEnumColumnUnsafe(descriptor, property, enumDesc);
|
|
64
|
-
}
|
|
65
|
-
export function tableDescriptorModifyEnumColumnUnsafe(descriptor, property, enumDesc) {
|
|
66
|
-
if (!descriptor.model.type) {
|
|
67
|
-
throw new CommonsInternalError(`withColumnModifiedEnum cannot be executed for property ${property}: Model type is not defined.`);
|
|
68
|
-
}
|
|
69
|
-
const attributeDef = getTableClassAttributeDef(descriptor.model.type).find(attr => attr.name === property);
|
|
70
|
-
if (attributeDef != null) {
|
|
71
|
-
attributeDef.columnType = ColumnTypeEnum.Enum;
|
|
72
|
-
upsertTableColumnFromAttributeDef(descriptor, attributeDef, descriptor.columns.find(col => col.property === property), enumDesc ?? enumModelGeneric(TypeRegistry.get().findEnum(attributeDef.type)));
|
|
73
|
-
}
|
|
74
|
-
return null;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* modifies column with class and lookup provider
|
|
78
|
-
* @param descriptor table descriptor
|
|
79
|
-
* @param property column name
|
|
80
|
-
* @param lookupProvider lookupProvider for class
|
|
81
|
-
* @param optionsLabelProperty
|
|
82
|
-
* @param filterProperty
|
|
83
|
-
*/
|
|
84
|
-
export function modifyTableColumnFilterLookup(descriptor, property, lookupProvider, optionsLabelProperty, filterProperty) {
|
|
85
|
-
return modifyTableColumnFilterLookupUnsafe(descriptor, property, lookupProvider, optionsLabelProperty, filterProperty);
|
|
86
|
-
}
|
|
87
|
-
export function modifyTableColumnFilterLookupUnsafe(descriptor, property, lookupProvider, optionsLabelProperty, filterProperty) {
|
|
88
|
-
const column = descriptor.columns.find(col => col.property === property);
|
|
89
|
-
if (column) {
|
|
90
|
-
const filter = descriptor.addFilterLookupUnsafe(column.property, lookupProvider, filterProperty);
|
|
91
|
-
if (optionsLabelProperty) {
|
|
92
|
-
filter.withOptionsLabelPropertyUnsafe(optionsLabelProperty);
|
|
93
|
-
}
|
|
94
|
-
return filter;
|
|
95
|
-
}
|
|
96
|
-
return null;
|
|
97
|
-
}
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZGVzY3JpcHRvci1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGUvYXBpL3NyYy9oZWxwZXJzL3RhYmxlLWRlc2NyaXB0b3ItaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsb0JBQW9CLEVBQWlDLFlBQVksRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRTlHLE9BQU8sRUFBaUIsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUt2RyxPQUFPLEVBQXdCLGNBQWMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzdFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRXRFOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxpQ0FBaUMsQ0FDN0MsSUFBK0MsRUFDL0MsU0FBaUMsRUFDakMsTUFBa0QsRUFDbEQsR0FBRyxJQUFXO0lBRWQsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7UUFDakIsTUFBTSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxJQUFJLFNBQVMsQ0FBQyxVQUFVLEtBQUssY0FBYyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDMUYsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLGlCQUFpQixFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDbkYsSUFBSSxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdEIsTUFBTSxhQUFhLEdBQUcs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bEVycm9yLCBFbnVtVHlwZSwgSUxvb2t1cERhdGFQcm92aWRlciwgVHlwZVJlZ2lzdHJ5fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtGaWx0ZXJMb29rdXBEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2ZpbHRlcic7XG5pbXBvcnQge0VudW1EZXNjcmlwdG9yLCBlbnVtTW9kZWxHZW5lcmljLCBmaW5kQ2xhc3NUaXRsZUF0dHJpYnV0ZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9tb2RlbCc7XG5cbmltcG9ydCB7Q29sdW1uRGVzY3JpcHRvcn0gZnJvbSAnLi4vZGVzY3JpcHRvcnMvY29sdW1uLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtUYWJsZURlc2NyaXB0b3JJbnN0fSBmcm9tICcuLi9kZXNjcmlwdG9ycy90YWJsZS5kZXNjcmlwdG9yJztcbmltcG9ydCB7VGFibGVDbGFzc0F0dHJpYnV0ZURlZn0gZnJvbSAnLi4vbW9kZWxzL2NsYXNzLXRhYmxlLWF0dHJpYnV0ZS5tb2RlbCc7XG5pbXBvcnQge0NvbHVtbkRpc3BsYXlUeXBlRW51bSwgQ29sdW1uVHlwZUVudW19IGZyb20gJy4uL21vZGVscy9jb2x1bW4ubW9kZWwnO1xuaW1wb3J0IHtnZXRUYWJsZUNsYXNzQXR0cmlidXRlRGVmfSBmcm9tICcuL2NsYXNzLWF0dHJpYnV0ZS1jb252ZXJ0ZXInO1xuXG4vKipcbiAqIGdlbmVyYXRlcyBjb2x1bW4gYmFzZWQgb24gYXR0cmlidXRlc1xuICogQHBhcmFtIGRlc2MgVGFibGUgZGVzY3JpcHRvclxuICogQHBhcmFtIGF0dHJpYnV0ZSBhdHRyaWJ1dGUgbWFwXG4gKiBAcGFyYW0gY29sdW1uIGlmIHByb3ZpZGVkLCByZXBsYWNlZCBieSBuZXcsIG90aGVyd2lzZSBuZXcgaXMgY3JlYXRlZFxuICogQHBhcmFtIGFyZ3MgYWRkaXRpb25hbCBwYXJhbWV0ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1cHNlcnRUYWJsZUNvbHVtbkZyb21BdHRyaWJ1dGVEZWY8Q29sdW1uTW9kZWwsIFRhYmxlTW9kZWw+KFxuICAgIGRlc2M6IFRhYmxlRGVzY3JpcHRvckluc3Q8VGFibGVNb2RlbCwgYW55LCBhbnk+LFxuICAgIGF0dHJpYnV0ZTogVGFibGVDbGFzc0F0dHJpYnV0ZURlZixcbiAgICBjb2x1bW4/OiBDb2x1bW5EZXNjcmlwdG9yPENvbHVtbk1vZGVsLCBUYWJsZU1vZGVsPixcbiAgICAuLi5hcmdzOiBhbnlbXVxuKTogQ29sdW1uRGVzY3JpcHRvcjxDb2x1bW5Nb2RlbCwgVGFibGVNb2RlbD4ge1xuICAgIGlmIChjb2x1bW4gPT0gbnVsbCkge1xuICAgICAgICBjb2x1bW4gPSBkZXNjLmFkZENvbHVtblVuc2FmZShhdHRyaWJ1dGUubmFtZSk7XG4gICAgfVxuXG4gICAgaWYgKGF0dHJpYnV0ZS5jb2x1bW5UeXBlID09PSBDb2x1bW5UeXBlRW51bS5FbnVtICYmIGFyZ3MubGVuZ3RoID09PSAwICYmIGF0dHJpYnV0ZS5lbnVtVHlwZSkge1xuICAgICAgICBhcmdzID0gW2VudW1Nb2RlbEdlbmVyaWMoYXR0cmlidXRlLmVudW1UeXBlKV07XG4gICAgfVxuXG4gICAgY29sdW1uID0gY29sdW1uLmFzVHlwZShhdHRyaWJ1dGUuY29sdW1uVHlwZSwgYXR0cmlidXRlLmNvbHVtbkRpc3BsYXlUeXBlLCAuLi5hcmdzKTtcbiAgICBpZiAoYXR0cmlidXRlLmNsYXNzVHlwZSkge1xuICAgICAgICBjb25zdCB0aXRsZVByb3BlcnR5ID0gZmluZENsYXNzVGl0bGVBdHRyaWJ1dGUoYXR0cmlidXRlLmNsYXNzVHlwZSkgPz8gdW5kZWZpbmVkO1xuICAgICAgICBpZiAodGl0bGVQcm9wZXJ0eSkge1xuICAgICAgICAgICAgY29sdW1uLndpdGhHZXR0ZXIodmFsdWUgPT4gdmFsdWU/Llt0aXRsZVByb3BlcnR5IGFzIGtleW9mIG9iamVjdF0pO1xuICAgICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgICAgZGVzYy5hZGRGaWx0ZXJGcm9tQ29sdW1uRGVzY3JpcHRvclVuc2FmZShjb2x1bW4sIGZhbHNlKTtcbiAgICAgICAgZGVzYy53aXRoU29ydFVuc2FmZShjb2x1bW4ucHJvcGVydHkpO1xuICAgIH1cblxuICAgIHJldHVybiBjb2x1bW47XG59XG5cbi8qKlxuICogZGVmaW5lcyBtb2RpZmllZCB0eXBlIG9mIGNvbHVtblxuICogRE8gTk9UIFVTRSB3aXRoIGVudW0gKHVzZSB3aXRoQ3VzdG9tRW51bVR5cGUpXG4gKiBAcGFyYW0gZGVzY3JpcHRvciB0YWJsZSBkZXNjcmlwdG9yXG4gKiBAcGFyYW0gcHJvcGVydHkgY29sdW1uIG5hbWVcbiAqIEBwYXJhbSBjb2x1bW5UeXBlIG1vZGlmaWVkIHR5cGVcbiAqIEBwYXJhbSBhcmdzIGFkZGl0aW9uYWwgYXR0cmlidXRlc1xuICogQHBhcmFtIGNvbHVtbkRpc3BsYXlUeXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtb2RpZnlUYWJsZUNsYXNzQXR0cmlidXRlQ29sdW1uVHlwZTxcbiAgICBUYWJsZU1vZGVsLFxuICAgIFByb3BlcnR5IGV4dGVuZHMga2V5b2YgVGFibGVNb2RlbCxcbiAgICBDb2x1bW5Nb2RlbCA9IE5vbk51bGxhYmxlPFRhYmxlTW9kZWxbUHJvcGVydHldPixcbiAgICBDb2x1bW5WYWx1ZSA9IFRhYmxlTW9kZWxbUHJvcGVydHldXG4+KFxuICAgIGRlc2NyaXB0b3I6IFRhYmxlRGVzY3JpcHRvckluc3Q8VGFibGVNb2RlbCwgYW55LCBhbnk+LFxuICAgIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgICBjb2x1bW5UeXBlPzogQ29sdW1uVHlwZUVudW0sXG4gICAgY29sdW1uRGlzcGxheVR5cGU/OiBDb2x1bW5EaXNwbGF5VHlwZUVudW0sXG4gICAgLi4uYXJnczogYW55W11cbik6IENvbHVtbkRlc2NyaXB0b3I8Q29sdW1uTW9kZWwsIFRhYmxlTW9kZWwsIENvbHVtblZhbHVlPiB8IG51bGwge1xuICAgIHJldHVybiBtb2RpZnlUYWJsZUNsYXNzQXR0cmlidXRlQ29sdW1uVHlwZVVuc2FmZTxUYWJsZU1vZGVsLCBDb2x1bW5Nb2RlbCwgQ29sdW1uVmFsdWU+KGRlc2NyaXB0b3IsIHByb3BlcnR5IGFzIHN0cmluZywgY29sdW1uVHlwZSwgY29sdW1uRGlzcGxheVR5cGUsIC4uLmFyZ3MpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbW9kaWZ5VGFibGVDbGFzc0F0dHJpYnV0ZUNvbHVtblR5cGVVbnNhZmU8VGFibGVNb2RlbCwgQ29sdW1uTW9kZWwgPSBhbnksIENvbHVtblZhbHVlID0gQ29sdW1uTW9kZWw+KFxuICAgIGRlc2NyaXB0b3I6IFRhYmxlRGVzY3JpcHRvckluc3Q8VGFibGVNb2RlbCwgYW55LCBhbnk+LFxuICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgY29sdW1uVHlwZT86IENvbHVtblR5cGVFbnVtLFxuICAgIGNvbHVtbkRpc3BsYXlUeXBlPzogQ29sdW1uRGlzcGxheVR5cGVFbnVtLFxuICAgIC4uLmFyZ3M6IGFueVtdXG4pOiBDb2x1bW5EZXNjcmlwdG9yPENvbHVtbk1vZGVsLCBUYWJsZU1vZGVsLCBDb2x1bW5WYWx1ZT4gfCBudWxsIHtcbiAgICBpZiAoIWRlc2NyaXB0b3IubW9kZWwudHlwZSkge1xuICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYHdpdGhDb2x1bW5Nb2RpZmllZFR5cGUgY2Fubm90IGJlIGV4ZWN1dGVkIGZvciBwcm9wZXJ0eSAke3Byb3BlcnR5fTogTW9kZWwgdHlwZSBpcyBub3QgZGVmaW5lZC5gKTtcbiAgICB9XG5cbiAgICBjb25zdCBhdHRyaWJ1dGVEZWYgPSBnZXRUYWJsZUNsYXNzQXR0cmlidXRlRGVmKGRlc2NyaXB0b3IubW9kZWwudHlwZSkuZmluZChhdHRyID0+IGF0dHIubmFtZSA9PT0gcHJvcGVydHkpO1xuXG4gICAgaWYgKGF0dHJpYnV0ZURlZiAhPSBudWxsKSB7XG4gICAgICAgIGF0dHJpYnV0ZURlZi5jb2x1bW5UeXBlID0gY29sdW1uVHlwZSA/PyBhdHRyaWJ1dGVEZWYuY29sdW1uVHlwZTtcbiAgICAgICAgYXR0cmlidXRlRGVmLmNvbHVtbkRpc3BsYXlUeXBlID0gY29sdW1uRGlzcGxheVR5cGUgPz8gYXR0cmlidXRlRGVmLmNvbHVtbkRpc3BsYXlUeXBlO1xuICAgICAgICByZXR1cm4gdXBzZXJ0VGFibGVDb2x1bW5Gcm9tQXR0cmlidXRlRGVmKFxuICAgICAgICAgICAgZGVzY3JpcHRvcixcbiAgICAgICAgICAgIGF0dHJpYnV0ZURlZixcbiAgICAgICAgICAgIGRlc2NyaXB0b3IuY29sdW1ucy5maW5kKGNvbCA9PiBjb2wucHJvcGVydHkgPT09IGF0dHJpYnV0ZURlZi5uYW1lKSxcbiAgICAgICAgICAgIC4uLmFyZ3NcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBkZWZpbmVzIGN1c3RvbSBlbnVtIHR5cGUgZm9yIGNvbHVtblxuICogQHBhcmFtIGRlc2NyaXB0b3IgdGFibGUgZGVzY3JpcHRvclxuICogQHBhcmFtIHByb3BlcnR5IGNvbHVtbiBuYW1lXG4gKiBAcGFyYW0gZW51bURlc2MgRW51bSBkZXNjcmlwdG9yLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbW9kaWZ5VGFibGVDbGFzc0F0dHJpYnV0ZUNvbHVtbkVudW08XG4gICAgVGFibGVNb2RlbCxcbiAgICBQcm9wZXJ0eSBleHRlbmRzIGtleW9mIFRhYmxlTW9kZWwsXG4gICAgRW51bSBleHRlbmRzIE5vbk51bGxhYmxlPFRhYmxlTW9kZWxbUHJvcGVydHldPixcbiAgICBDb2x1bW5Nb2RlbCA9IE5vbk51bGxhYmxlPFRhYmxlTW9kZWxbUHJvcGVydHldPixcbiAgICBDb2x1bW5WYWx1ZSA9IFRhYmxlTW9kZWxbUHJvcGVydHldXG4+KGRlc2NyaXB0b3I6IFRhYmxlRGVzY3JpcHRvckluc3Q8VGFibGVNb2RlbCwgYW55LCBhbnk+LCBwcm9wZXJ0eTogUHJvcGVydHksIGVudW1EZXNjPzogRW51bURlc2NyaXB0b3I8RW51bT4pOiBDb2x1bW5EZXNjcmlwdG9yPENvbHVtbk1vZGVsLCBUYWJsZU1vZGVsLCBDb2x1bW5WYWx1ZT4gfCBudWxsIHtcbiAgICByZXR1cm4gdGFibGVEZXNjcmlwdG9yTW9kaWZ5RW51bUNvbHVtblVuc2FmZTxUYWJsZU1vZGVsLCBFbnVtLCBDb2x1bW5Nb2RlbCwgQ29sdW1uVmFsdWU+KGRlc2NyaXB0b3IsIHByb3BlcnR5IGFzIHN0cmluZywgZW51bURlc2MpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdGFibGVEZXNjcmlwdG9yTW9kaWZ5RW51bUNvbHVtblVuc2FmZTxUYWJsZU1vZGVsLCBFbnVtID0gYW55LCBDb2x1bW5Nb2RlbCA9IGFueSwgQ29sdW1uVmFsdWUgPSBDb2x1bW5Nb2RlbD4oXG4gICAgZGVzY3JpcHRvcjogVGFibGVEZXNjcmlwdG9ySW5zdDxUYWJsZU1vZGVsLCBhbnksIGFueT4sXG4gICAgcHJvcGVydHk6IHN0cmluZyxcbiAgICBlbnVtRGVzYz86IEVudW1EZXNjcmlwdG9yPEVudW0+XG4pOiBDb2x1bW5EZXNjcmlwdG9yPENvbHVtbk1vZGVsLCBUYWJsZU1vZGVsLCBDb2x1bW5WYWx1ZT4gfCBudWxsIHtcbiAgICBpZiAoIWRlc2NyaXB0b3IubW9kZWwudHlwZSkge1xuICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYHdpdGhDb2x1bW5Nb2RpZmllZEVudW0gY2Fubm90IGJlIGV4ZWN1dGVkIGZvciBwcm9wZXJ0eSAke3Byb3BlcnR5fTogTW9kZWwgdHlwZSBpcyBub3QgZGVmaW5lZC5gKTtcbiAgICB9XG5cbiAgICBjb25zdCBhdHRyaWJ1dGVEZWYgPSBnZXRUYWJsZUNsYXNzQXR0cmlidXRlRGVmKGRlc2NyaXB0b3IubW9kZWwudHlwZSkuZmluZChhdHRyID0+IGF0dHIubmFtZSA9PT0gcHJvcGVydHkpO1xuXG4gICAgaWYgKGF0dHJpYnV0ZURlZiAhPSBudWxsKSB7XG4gICAgICAgIGF0dHJpYnV0ZURlZi5jb2x1bW5UeXBlID0gQ29sdW1uVHlwZUVudW0uRW51bTtcbiAgICAgICAgdXBzZXJ0VGFibGVDb2x1bW5Gcm9tQXR0cmlidXRlRGVmKFxuICAgICAgICAgICAgZGVzY3JpcHRvcixcbiAgICAgICAgICAgIGF0dHJpYnV0ZURlZixcbiAgICAgICAgICAgIGRlc2NyaXB0b3IuY29sdW1ucy5maW5kKGNvbCA9PiBjb2wucHJvcGVydHkgPT09IHByb3BlcnR5KSxcbiAgICAgICAgICAgIGVudW1EZXNjID8/IGVudW1Nb2RlbEdlbmVyaWMoVHlwZVJlZ2lzdHJ5LmdldCgpLmZpbmRFbnVtKGF0dHJpYnV0ZURlZi50eXBlKSBhcyBFbnVtVHlwZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBtb2RpZmllcyBjb2x1bW4gd2l0aCBjbGFzcyBhbmQgbG9va3VwIHByb3ZpZGVyXG4gKiBAcGFyYW0gZGVzY3JpcHRvciB0YWJsZSBkZXNjcmlwdG9yXG4gKiBAcGFyYW0gcHJvcGVydHkgY29sdW1uIG5hbWVcbiAqIEBwYXJhbSBsb29rdXBQcm92aWRlciBsb29rdXBQcm92aWRlciBmb3IgY2xhc3NcbiAqIEBwYXJhbSBvcHRpb25zTGFiZWxQcm9wZXJ0eVxuICogQHBhcmFtIGZpbHRlclByb3BlcnR5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtb2RpZnlUYWJsZUNvbHVtbkZpbHRlckxvb2t1cDxUYWJsZU1vZGVsLCBQcm9wZXJ0eSBleHRlbmRzIGtleW9mIFRhYmxlTW9kZWwsIFNlcnZpY2UsIENvbHVtbk1vZGVsID0gTm9uTnVsbGFibGU8VGFibGVNb2RlbFtQcm9wZXJ0eV0+PihcbiAgICBkZXNjcmlwdG9yOiBUYWJsZURlc2NyaXB0b3JJbnN0PFRhYmxlTW9kZWwsIGFueSwgYW55PixcbiAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgbG9va3VwUHJvdmlkZXI/OiBJTG9va3VwRGF0YVByb3ZpZGVyPENvbHVtbk1vZGVsLCBhbnk+LFxuICAgIG9wdGlvbnNMYWJlbFByb3BlcnR5Pzoga2V5b2YgQ29sdW1uTW9kZWwsXG4gICAgZmlsdGVyUHJvcGVydHk/OiBrZXlvZiBDb2x1bW5Nb2RlbFxuKTogRmlsdGVyTG9va3VwRGVzY3JpcHRvcjxDb2x1bW5Nb2RlbCwgVGFibGVNb2RlbCwgU2VydmljZT4gfCBudWxsIHtcbiAgICByZXR1cm4gbW9kaWZ5VGFibGVDb2x1bW5GaWx0ZXJMb29rdXBVbnNhZmU8VGFibGVNb2RlbCwgU2VydmljZSwgQ29sdW1uTW9kZWw+KFxuICAgICAgICBkZXNjcmlwdG9yLFxuICAgICAgICBwcm9wZXJ0eSBhcyBzdHJpbmcsXG4gICAgICAgIGxvb2t1cFByb3ZpZGVyLFxuICAgICAgICBvcHRpb25zTGFiZWxQcm9wZXJ0eSBhcyBzdHJpbmcsXG4gICAgICAgIGZpbHRlclByb3BlcnR5IGFzIHN0cmluZ1xuICAgICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb2RpZnlUYWJsZUNvbHVtbkZpbHRlckxvb2t1cFVuc2FmZTxUYWJsZU1vZGVsLCBTZXJ2aWNlLCBDb2x1bW5Nb2RlbD4oXG4gICAgZGVzY3JpcHRvcjogVGFibGVEZXNjcmlwdG9ySW5zdDxUYWJsZU1vZGVsLCBhbnksIGFueT4sXG4gICAgcHJvcGVydHk6IHN0cmluZyxcbiAgICBsb29rdXBQcm92aWRlcj86IElMb29rdXBEYXRhUHJvdmlkZXI8Q29sdW1uTW9kZWwsIFNlcnZpY2U+LFxuICAgIG9wdGlvbnNMYWJlbFByb3BlcnR5Pzogc3RyaW5nLFxuICAgIGZpbHRlclByb3BlcnR5Pzogc3RyaW5nXG4pOiBGaWx0ZXJMb29rdXBEZXNjcmlwdG9yPENvbHVtbk1vZGVsLCBUYWJsZU1vZGVsLCBTZXJ2aWNlPiB8IG51bGwge1xuICAgIGNvbnN0IGNvbHVtbiA9IGRlc2NyaXB0b3IuY29sdW1ucy5maW5kKGNvbCA9PiBjb2wucHJvcGVydHkgPT09IHByb3BlcnR5KTtcbiAgICBpZiAoY29sdW1uKSB7XG4gICAgICAgIGNvbnN0IGZpbHRlciA9IGRlc2NyaXB0b3IuYWRkRmlsdGVyTG9va3VwVW5zYWZlKGNvbHVtbi5wcm9wZXJ0eSwgbG9va3VwUHJvdmlkZXIsIGZpbHRlclByb3BlcnR5KTtcbiAgICAgICAgaWYgKG9wdGlvbnNMYWJlbFByb3BlcnR5KSB7XG4gICAgICAgICAgICBmaWx0ZXIud2l0aE9wdGlvbnNMYWJlbFByb3BlcnR5VW5zYWZlKG9wdGlvbnNMYWJlbFByb3BlcnR5KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmlsdGVyO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdGFibGUtYXR0cmlidXRlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGFibGUvYXBpL3NyYy9tb2RlbHMvY2xhc3MtdGFibGUtYXR0cmlidXRlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NsYXNzQXR0cmlidXRlRGVmLCBDbGFzc1R5cGUsIEVudW1UeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuXG5pbXBvcnQge0NvbHVtbkRpc3BsYXlUeXBlRW51bSwgQ29sdW1uVHlwZUVudW19IGZyb20gJy4vY29sdW1uLm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUNsYXNzQXR0cmlidXRlRGVmIGV4dGVuZHMgQ2xhc3NBdHRyaWJ1dGVEZWYge1xuICAgIGNvbHVtblR5cGU6IENvbHVtblR5cGVFbnVtO1xuICAgIGNvbHVtbkRpc3BsYXlUeXBlOiBDb2x1bW5EaXNwbGF5VHlwZUVudW07XG4gICAgZW51bVR5cGU/OiBFbnVtVHlwZTtcbiAgICBjbGFzc1R5cGU/OiBDbGFzc1R5cGU8YW55Pjtcbn1cbiJdfQ==
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { CommonsInternalError, TypeRegistry } from '@mediusinc/mng-commons/core';
|
|
2
|
-
import { ColumnDisplayTypeEnum, ColumnTypeEnum } from '@mediusinc/mng-commons/table/api';
|
|
3
|
-
import { FieldInputTypeEnum } from '../models/field.model';
|
|
4
|
-
/**
|
|
5
|
-
* converts string type to type enum, default is text
|
|
6
|
-
* @param attributeType
|
|
7
|
-
*/
|
|
8
|
-
export function getFieldInputTypeFromClassAttributeDefType(attributeType) {
|
|
9
|
-
switch (attributeType) {
|
|
10
|
-
case 'hidden':
|
|
11
|
-
return FieldInputTypeEnum.Hidden;
|
|
12
|
-
case 'label':
|
|
13
|
-
return FieldInputTypeEnum.Label;
|
|
14
|
-
case 'textarea':
|
|
15
|
-
return FieldInputTypeEnum.Textarea;
|
|
16
|
-
case 'number':
|
|
17
|
-
return FieldInputTypeEnum.Number;
|
|
18
|
-
case 'currency':
|
|
19
|
-
return FieldInputTypeEnum.Currency;
|
|
20
|
-
case 'switch':
|
|
21
|
-
case 'boolean':
|
|
22
|
-
return FieldInputTypeEnum.Switch;
|
|
23
|
-
case 'radio':
|
|
24
|
-
return FieldInputTypeEnum.Radio;
|
|
25
|
-
case 'datepicker':
|
|
26
|
-
return FieldInputTypeEnum.Datepicker;
|
|
27
|
-
case 'mask':
|
|
28
|
-
return FieldInputTypeEnum.Mask;
|
|
29
|
-
case 'file':
|
|
30
|
-
return FieldInputTypeEnum.File;
|
|
31
|
-
case 'custom':
|
|
32
|
-
return FieldInputTypeEnum.Custom;
|
|
33
|
-
case 'text':
|
|
34
|
-
default:
|
|
35
|
-
return FieldInputTypeEnum.Text;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* convert column type to equivalent field input type
|
|
40
|
-
* @param type column type
|
|
41
|
-
* @param displayType column display type
|
|
42
|
-
*/
|
|
43
|
-
export function getFieldInputTypeFromColumnType(type, displayType) {
|
|
44
|
-
switch (type) {
|
|
45
|
-
case ColumnTypeEnum.Number:
|
|
46
|
-
return displayType === ColumnDisplayTypeEnum.Currency ? FieldInputTypeEnum.Currency : FieldInputTypeEnum.Number;
|
|
47
|
-
case ColumnTypeEnum.Boolean:
|
|
48
|
-
return FieldInputTypeEnum.Switch;
|
|
49
|
-
case ColumnTypeEnum.Date:
|
|
50
|
-
return FieldInputTypeEnum.Datepicker;
|
|
51
|
-
case ColumnTypeEnum.Custom:
|
|
52
|
-
return FieldInputTypeEnum.Custom;
|
|
53
|
-
case ColumnTypeEnum.String:
|
|
54
|
-
case ColumnTypeEnum.Enum:
|
|
55
|
-
default:
|
|
56
|
-
return FieldInputTypeEnum.Text;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
export function expandClassAttributeDefWithEditorDef(attributes) {
|
|
60
|
-
if (!attributes) {
|
|
61
|
-
throw new CommonsInternalError('Class attribute definition is null, problem with TypeRegistry::findAttributesDefinitionByClassType?', { name: 'TableviewUtilsError' });
|
|
62
|
-
}
|
|
63
|
-
const typeRegistry = TypeRegistry.get();
|
|
64
|
-
const editorClassAttributeDef = [];
|
|
65
|
-
for (const attribute of attributes) {
|
|
66
|
-
editorClassAttributeDef.push({
|
|
67
|
-
name: attribute.name,
|
|
68
|
-
baseName: attribute.baseName,
|
|
69
|
-
type: attribute.type,
|
|
70
|
-
subtype: attribute.subtype,
|
|
71
|
-
fieldType: getFieldInputTypeFromClassAttributeDefType(attribute.type),
|
|
72
|
-
classType: typeRegistry.findType(attribute.type),
|
|
73
|
-
enumType: typeRegistry.findEnum(attribute.type)
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
return editorClassAttributeDef;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* returns attributes from class type and extends to typed def with column and field enum type
|
|
80
|
-
* @param type class type
|
|
81
|
-
*/
|
|
82
|
-
export function getEditorClassAttributeDef(type) {
|
|
83
|
-
return expandClassAttributeDefWithEditorDef(TypeRegistry.get().findAttributesDefinitionByClassType(type));
|
|
84
|
-
}
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtYXR0cmlidXRlLWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9oZWxwZXJzL2NsYXNzLWF0dHJpYnV0ZS1jb252ZXJ0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUErQixvQkFBb0IsRUFBWSxZQUFZLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN2SCxPQUFPLEVBQUMscUJBQXFCLEVBQUUsY0FBYyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFHdkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFekQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLDBDQUEwQyxDQUFDLGFBQXFCO0lBQzVFLFFBQVEsYUFBYSxFQUFFLENBQUM7UUFDcEIsS0FBSyxRQUFRO1lBQ1QsT0FBTyxrQkFBa0IsQ0FBQyxNQUFNLENBQUM7UUFDckMsS0FBSyxPQUFPO1lBQ1IsT0FBTyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7UUFDcEMsS0FBSyxVQUFVO1lBQ1gsT0FBTyxrQkFBa0IsQ0FBQyxRQUFRLENBQUM7UUFDdkMsS0FBSyxRQUFRO1lBQ1QsT0FBTyxrQkFBa0IsQ0FBQyxNQUFNLENBQUM7UUFDckMsS0FBSyxVQUFVO1lBQ1gsT0FBTyxrQkFBa0IsQ0FBQyxRQUFRLENBQUM7UUFDdkMsS0FBSyxRQUFRLENBQUM7UUFDZCxLQUFLLFNBQVM7WUFDVixPQUFPLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztRQUNyQyxLQUFLLE9BQU87WUFDUixPQUFPLGtCQUFrQixDQUFDLEtBQUssQ0FBQztRQUNwQyxLQUFLLFlBQVk7WUFDYixPQUFPLGtCQUFrQixDQUFDLFVBQVUsQ0FBQztRQUN6QyxLQUFLLE1BQU07WUFDUCxPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQztRQUNuQyxLQUFLLE1BQU07WUFDUCxPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQztRQUNuQyxLQUFLLFFBQVE7WUFDVCxPQUFPLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztRQUNyQyxLQUFLLE1BQU0sQ0FBQztRQUNaO1lBQ0ksT0FBTyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7SUFDdkMsQ0FBQztBQUNMLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLCtCQUErQixDQUFDLElBQW9CLEVBQUUsV0FBbUM7SUFDckcsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUNYLEtBQUssY0FBYyxDQUFDLE1BQU07WUFDdEIsT0FBTyxXQUFXLEtBQUsscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztRQUNwSCxLQUFLLGNBQWMsQ0FBQyxPQUFPO1lBQ3ZCLE9BQU8sa0JBQWtCLENBQUMsTUFBTSxDQUFDO1FBQ3JDLEtBQUssY0FBYyxDQUFDLElBQUk7WUFDcEIsT0FBTyxrQkFBa0IsQ0FBQyxVQUFVLENBQUM7UUFDekMsS0FBSyxjQUFjLENBQUMsTUFBTTtZQUN0QixPQUFPLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztRQUNyQyxLQUFLLGNBQWMsQ0FBQyxNQUFNLENBQUM7UUFDM0IsS0FBSyxjQUFjLENBQUMsSUFBSSxDQUFDO1FBQ3pCO1lBQ0ksT0FBTyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7SUFDdkMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsb0NBQW9DLENBQUMsVUFBNEM7SUFDN0YsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2QsTUFBTSxJQUFJLG9CQUFvQixDQUFDLHFHQUFxRyxFQUFFLEVBQUMsSUFBSSxFQUFFLHFCQUFxQixFQUFDLENBQUMsQ0FBQztJQUN6SyxDQUFDO0lBRUQsTUFBTSxZQUFZLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ3hDLE1BQU0sdUJBQXVCLEdBQThCLEVBQUUsQ0FBQztJQUM5RCxLQUFLLE1BQU0sU0FBUyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2pDLHVCQUF1QixDQUFDLElBQUksQ0FBQztZQUN6QixJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUk7WUFDcEIsUUFBUSxFQUFFLFNBQVMsQ0FBQyxRQUFRO1lBQzVCLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSTtZQUNwQixPQUFPLEVBQUUsU0FBUyxDQUFDLE9BQU87WUFDMUIsU0FBUyxFQUFFLDBDQUEwQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDckUsU0FBUyxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBbUI7WUFDbEUsUUFBUSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBYTtTQUM5RCxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsT0FBTyx1QkFBdUIsQ0FBQztBQUNuQyxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLDBCQUEwQixDQUFJLElBQWtCO0lBQzVELE9BQU8sb0NBQW9DLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1DQUFtQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDOUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xhc3NBdHRyaWJ1dGVEZWYsIENsYXNzVHlwZSwgQ29tbW9uc0ludGVybmFsRXJyb3IsIEVudW1UeXBlLCBUeXBlUmVnaXN0cnl9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge0NvbHVtbkRpc3BsYXlUeXBlRW51bSwgQ29sdW1uVHlwZUVudW19IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGUvYXBpJztcblxuaW1wb3J0IHtFZGl0b3JDbGFzc0F0dHJpYnV0ZURlZn0gZnJvbSAnLi4vbW9kZWxzL2NsYXNzLXRhYmxldmlldy1hdHRyaWJ1dGUubW9kZWwnO1xuaW1wb3J0IHtGaWVsZElucHV0VHlwZUVudW19IGZyb20gJy4uL21vZGVscy9maWVsZC5tb2RlbCc7XG5cbi8qKlxuICogY29udmVydHMgc3RyaW5nIHR5cGUgdG8gdHlwZSBlbnVtLCBkZWZhdWx0IGlzIHRleHRcbiAqIEBwYXJhbSBhdHRyaWJ1dGVUeXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWVsZElucHV0VHlwZUZyb21DbGFzc0F0dHJpYnV0ZURlZlR5cGUoYXR0cmlidXRlVHlwZTogc3RyaW5nKTogRmllbGRJbnB1dFR5cGVFbnVtIHtcbiAgICBzd2l0Y2ggKGF0dHJpYnV0ZVR5cGUpIHtcbiAgICAgICAgY2FzZSAnaGlkZGVuJzpcbiAgICAgICAgICAgIHJldHVybiBGaWVsZElucHV0VHlwZUVudW0uSGlkZGVuO1xuICAgICAgICBjYXNlICdsYWJlbCc6XG4gICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLkxhYmVsO1xuICAgICAgICBjYXNlICd0ZXh0YXJlYSc6XG4gICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLlRleHRhcmVhO1xuICAgICAgICBjYXNlICdudW1iZXInOlxuICAgICAgICAgICAgcmV0dXJuIEZpZWxkSW5wdXRUeXBlRW51bS5OdW1iZXI7XG4gICAgICAgIGNhc2UgJ2N1cnJlbmN5JzpcbiAgICAgICAgICAgIHJldHVybiBGaWVsZElucHV0VHlwZUVudW0uQ3VycmVuY3k7XG4gICAgICAgIGNhc2UgJ3N3aXRjaCc6XG4gICAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxuICAgICAgICAgICAgcmV0dXJuIEZpZWxkSW5wdXRUeXBlRW51bS5Td2l0Y2g7XG4gICAgICAgIGNhc2UgJ3JhZGlvJzpcbiAgICAgICAgICAgIHJldHVybiBGaWVsZElucHV0VHlwZUVudW0uUmFkaW87XG4gICAgICAgIGNhc2UgJ2RhdGVwaWNrZXInOlxuICAgICAgICAgICAgcmV0dXJuIEZpZWxkSW5wdXRUeXBlRW51bS5EYXRlcGlja2VyO1xuICAgICAgICBjYXNlICdtYXNrJzpcbiAgICAgICAgICAgIHJldHVybiBGaWVsZElucHV0VHlwZUVudW0uTWFzaztcbiAgICAgICAgY2FzZSAnZmlsZSc6XG4gICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLkZpbGU7XG4gICAgICAgIGNhc2UgJ2N1c3RvbSc6XG4gICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLkN1c3RvbTtcbiAgICAgICAgY2FzZSAndGV4dCc6XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLlRleHQ7XG4gICAgfVxufVxuXG4vKipcbiAqIGNvbnZlcnQgY29sdW1uIHR5cGUgdG8gZXF1aXZhbGVudCBmaWVsZCBpbnB1dCB0eXBlXG4gKiBAcGFyYW0gdHlwZSBjb2x1bW4gdHlwZVxuICogQHBhcmFtIGRpc3BsYXlUeXBlIGNvbHVtbiBkaXNwbGF5IHR5cGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEZpZWxkSW5wdXRUeXBlRnJvbUNvbHVtblR5cGUodHlwZTogQ29sdW1uVHlwZUVudW0sIGRpc3BsYXlUeXBlPzogQ29sdW1uRGlzcGxheVR5cGVFbnVtKTogRmllbGRJbnB1dFR5cGVFbnVtIHtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgY2FzZSBDb2x1bW5UeXBlRW51bS5OdW1iZXI6XG4gICAgICAgICAgICByZXR1cm4gZGlzcGxheVR5cGUgPT09IENvbHVtbkRpc3BsYXlUeXBlRW51bS5DdXJyZW5jeSA/IEZpZWxkSW5wdXRUeXBlRW51bS5DdXJyZW5jeSA6IEZpZWxkSW5wdXRUeXBlRW51bS5OdW1iZXI7XG4gICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uQm9vbGVhbjpcbiAgICAgICAgICAgIHJldHVybiBGaWVsZElucHV0VHlwZUVudW0uU3dpdGNoO1xuICAgICAgICBjYXNlIENvbHVtblR5cGVFbnVtLkRhdGU6XG4gICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLkRhdGVwaWNrZXI7XG4gICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uQ3VzdG9tOlxuICAgICAgICAgICAgcmV0dXJuIEZpZWxkSW5wdXRUeXBlRW51bS5DdXN0b207XG4gICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uU3RyaW5nOlxuICAgICAgICBjYXNlIENvbHVtblR5cGVFbnVtLkVudW06XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLlRleHQ7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZXhwYW5kQ2xhc3NBdHRyaWJ1dGVEZWZXaXRoRWRpdG9yRGVmKGF0dHJpYnV0ZXM/OiBBcnJheTxDbGFzc0F0dHJpYnV0ZURlZj4gfCBudWxsKTogRWRpdG9yQ2xhc3NBdHRyaWJ1dGVEZWZbXSB7XG4gICAgaWYgKCFhdHRyaWJ1dGVzKSB7XG4gICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcignQ2xhc3MgYXR0cmlidXRlIGRlZmluaXRpb24gaXMgbnVsbCwgcHJvYmxlbSB3aXRoIFR5cGVSZWdpc3RyeTo6ZmluZEF0dHJpYnV0ZXNEZWZpbml0aW9uQnlDbGFzc1R5cGU/Jywge25hbWU6ICdUYWJsZXZpZXdVdGlsc0Vycm9yJ30pO1xuICAgIH1cblxuICAgIGNvbnN0IHR5cGVSZWdpc3RyeSA9IFR5cGVSZWdpc3RyeS5nZXQoKTtcbiAgICBjb25zdCBlZGl0b3JDbGFzc0F0dHJpYnV0ZURlZjogRWRpdG9yQ2xhc3NBdHRyaWJ1dGVEZWZbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgYXR0cmlidXRlIG9mIGF0dHJpYnV0ZXMpIHtcbiAgICAgICAgZWRpdG9yQ2xhc3NBdHRyaWJ1dGVEZWYucHVzaCh7XG4gICAgICAgICAgICBuYW1lOiBhdHRyaWJ1dGUubmFtZSxcbiAgICAgICAgICAgIGJhc2VOYW1lOiBhdHRyaWJ1dGUuYmFzZU5hbWUsXG4gICAgICAgICAgICB0eXBlOiBhdHRyaWJ1dGUudHlwZSxcbiAgICAgICAgICAgIHN1YnR5cGU6IGF0dHJpYnV0ZS5zdWJ0eXBlLFxuICAgICAgICAgICAgZmllbGRUeXBlOiBnZXRGaWVsZElucHV0VHlwZUZyb21DbGFzc0F0dHJpYnV0ZURlZlR5cGUoYXR0cmlidXRlLnR5cGUpLFxuICAgICAgICAgICAgY2xhc3NUeXBlOiB0eXBlUmVnaXN0cnkuZmluZFR5cGUoYXR0cmlidXRlLnR5cGUpIGFzIENsYXNzVHlwZTxhbnk+LFxuICAgICAgICAgICAgZW51bVR5cGU6IHR5cGVSZWdpc3RyeS5maW5kRW51bShhdHRyaWJ1dGUudHlwZSkgYXMgRW51bVR5cGVcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVkaXRvckNsYXNzQXR0cmlidXRlRGVmO1xufVxuXG4vKipcbiAqIHJldHVybnMgYXR0cmlidXRlcyBmcm9tIGNsYXNzIHR5cGUgYW5kIGV4dGVuZHMgdG8gdHlwZWQgZGVmIHdpdGggY29sdW1uIGFuZCBmaWVsZCBlbnVtIHR5cGVcbiAqIEBwYXJhbSB0eXBlIGNsYXNzIHR5cGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEVkaXRvckNsYXNzQXR0cmlidXRlRGVmPFQ+KHR5cGU6IENsYXNzVHlwZTxUPik6IEVkaXRvckNsYXNzQXR0cmlidXRlRGVmW10ge1xuICAgIHJldHVybiBleHBhbmRDbGFzc0F0dHJpYnV0ZURlZldpdGhFZGl0b3JEZWYoVHlwZVJlZ2lzdHJ5LmdldCgpLmZpbmRBdHRyaWJ1dGVzRGVmaW5pdGlvbkJ5Q2xhc3NUeXBlKHR5cGUpKTtcbn1cbiJdfQ==
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import { CommonsInternalError, TypeRegistry } from '@mediusinc/mng-commons/core';
|
|
2
|
-
import { enumModelGeneric } from '@mediusinc/mng-commons/model';
|
|
3
|
-
import { getColumnDisplayTypeFromColumnType, getColumnTypeFromClassAttributeDefType } from '@mediusinc/mng-commons/table/api';
|
|
4
|
-
import { FieldInputDescriptor } from '../descriptors/field.descriptor';
|
|
5
|
-
import { FieldInputTypeEnum } from '../models/field.model';
|
|
6
|
-
import { getEditorClassAttributeDef, getFieldInputTypeFromColumnType } from './class-attribute-converter';
|
|
7
|
-
/**
|
|
8
|
-
* Generates field based on attribute definition, used for auto model
|
|
9
|
-
* @param descriptor Editor descriptor instance.
|
|
10
|
-
* @param attribute Attribute definition.
|
|
11
|
-
* @param field Optional, if defined will be replaced, otherwise new will be generated.
|
|
12
|
-
* @param args Optional additional arguments mapped to filed type. Arguments depend on possible arguments on fields.
|
|
13
|
-
* @internal
|
|
14
|
-
*/
|
|
15
|
-
export function upsertEditorFieldFromAttributeDef(descriptor, attribute, field, ...args) {
|
|
16
|
-
if (field == null) {
|
|
17
|
-
field = descriptor.addFieldUnsafe(attribute.name);
|
|
18
|
-
}
|
|
19
|
-
if (field instanceof FieldInputDescriptor) {
|
|
20
|
-
if (attribute.enumType) {
|
|
21
|
-
return field.asRadioFromEnum(enumModelGeneric(attribute.enumType));
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
const tableColumnType = getColumnTypeFromClassAttributeDefType(attribute.type);
|
|
25
|
-
const tableColumnDisplayType = getColumnDisplayTypeFromColumnType(tableColumnType, attribute.type);
|
|
26
|
-
return field.asType(attribute.fieldType ?? getFieldInputTypeFromColumnType(tableColumnType, tableColumnDisplayType), ...args);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
return field;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Modifies selected field by field property. For enums use {withFieldModifiedEnum} instead.
|
|
33
|
-
* @param descriptor Editor descriptor.
|
|
34
|
-
* @param property Model's property name.
|
|
35
|
-
* @param fieldType new field type for selected field
|
|
36
|
-
* @param args additional parameters for field
|
|
37
|
-
*/
|
|
38
|
-
export function modifyEditorClassAttributeFieldType(descriptor, property, fieldType, ...args) {
|
|
39
|
-
return modifyEditorClassAttributeFieldTypeUnsafe(descriptor, property, fieldType, ...args);
|
|
40
|
-
}
|
|
41
|
-
export function modifyEditorClassAttributeFieldTypeUnsafe(descriptor, property, fieldType, ...args) {
|
|
42
|
-
if (!descriptor.model.type) {
|
|
43
|
-
throw new CommonsInternalError(`withFieldModifiedType cannot be executed for property ${property}: Model type is not defined.`);
|
|
44
|
-
}
|
|
45
|
-
const attribute = getEditorClassAttributeDef(descriptor.model.type).find(attribute => attribute.name === property);
|
|
46
|
-
if (attribute) {
|
|
47
|
-
attribute.fieldType = fieldType;
|
|
48
|
-
return upsertEditorFieldFromAttributeDef(descriptor, attribute, descriptor.fields.find(fi => fi.property === property), ...args);
|
|
49
|
-
}
|
|
50
|
-
return null;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Modifies selected field with enum type.
|
|
54
|
-
* @param descriptor Editor descriptor.
|
|
55
|
-
* @param property Model's property name.
|
|
56
|
-
* @param enumModel Enum descriptor.
|
|
57
|
-
* @param values
|
|
58
|
-
*/
|
|
59
|
-
export function modifyEditorClassAttributeFieldEnum(descriptor, property, enumModel, values) {
|
|
60
|
-
return modifyEditorClassAttributeFieldEnumUnsafe(descriptor, property, enumModel, values);
|
|
61
|
-
}
|
|
62
|
-
export function modifyEditorClassAttributeFieldEnumUnsafe(descriptor, property, enumDesc, values) {
|
|
63
|
-
if (!descriptor.model.type) {
|
|
64
|
-
throw new CommonsInternalError(`withFieldModifiedEnum cannot be executed for property ${property}: Model type is not defined.`);
|
|
65
|
-
}
|
|
66
|
-
const attribute = getEditorClassAttributeDef(descriptor.model.type).find(a => a.name === property);
|
|
67
|
-
if (attribute) {
|
|
68
|
-
attribute.fieldType = FieldInputTypeEnum.Radio;
|
|
69
|
-
const field = descriptor.fields.find(f => f.property === property);
|
|
70
|
-
if (field && field instanceof FieldInputDescriptor) {
|
|
71
|
-
field.asRadioFromEnum(enumDesc ?? enumModelGeneric(TypeRegistry.get().findEnum(attribute.type)), values);
|
|
72
|
-
}
|
|
73
|
-
return field ?? null;
|
|
74
|
-
}
|
|
75
|
-
return null;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Modifies selected field with lookup field.
|
|
79
|
-
* @param descriptor Editor descriptor.
|
|
80
|
-
* @param property Model's property name.
|
|
81
|
-
* @param lookupProvider provider to be added to field
|
|
82
|
-
* @param titleProperty
|
|
83
|
-
*/
|
|
84
|
-
export function modifyEditorFieldLookup(descriptor, property, lookupProvider, titleProperty) {
|
|
85
|
-
return modifyEditorFieldLookupUnsafe(descriptor, property, lookupProvider, titleProperty);
|
|
86
|
-
}
|
|
87
|
-
export function modifyEditorFieldLookupUnsafe(descriptor, property, lookupProvider, titleProperty) {
|
|
88
|
-
descriptor.removeFieldUnsafe(property);
|
|
89
|
-
const field = descriptor.addFieldLookupWithProviderUnsafe(property, lookupProvider).asAutocomplete();
|
|
90
|
-
if (titleProperty) {
|
|
91
|
-
field.withOptionsLabelPropertyUnsafe(titleProperty);
|
|
92
|
-
}
|
|
93
|
-
return field;
|
|
94
|
-
}
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWRlc2NyaXB0b3ItaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9oZWxwZXJzL2VkaXRvci1kZXNjcmlwdG9yLWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFpQyxZQUFZLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RyxPQUFPLEVBQWlCLGdCQUFnQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDOUUsT0FBTyxFQUFDLGtDQUFrQyxFQUFFLHNDQUFzQyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFLNUgsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFFckUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFDLDBCQUEwQixFQUFFLCtCQUErQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFeEc7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxpQ0FBaUMsQ0FDN0MsVUFBd0MsRUFDeEMsU0FBa0MsRUFDbEMsS0FBZ0MsRUFDaEMsR0FBRyxJQUFXO0lBRWQsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7UUFDaEIsS0FBSyxHQUFHLFVBQVUsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFJLEtBQUssWUFBWSxvQkFBb0IsRUFBRSxDQUFDO1FBQ3hDLElBQUksU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLE9BQU8sS0FBSyxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN2RSxDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sZUFBZSxHQUFHLHNDQUFzQyxDQUFDLFNBQVMsQ0FBQyxJQUFJ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SUFBSSxDQUFhLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN6SCxDQUFDO1FBQ0QsT0FBTyxLQUFLLElBQUksSUFBSSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLHVCQUF1QixDQU9uQyxVQUFrRCxFQUNsRCxRQUFrQixFQUNsQixjQUF3RCxFQUN4RCxhQUFnQztJQUVoQyxPQUFPLDZCQUE2QixDQUErQyxVQUFVLEVBQUUsUUFBa0IsRUFBRSxjQUFjLEVBQUUsYUFBdUIsQ0FBQyxDQUFDO0FBQ2hLLENBQUM7QUFFRCxNQUFNLFVBQVUsNkJBQTZCLENBQ3pDLFVBQWtELEVBQ2xELFFBQWdCLEVBQ2hCLGNBQXdELEVBQ3hELGFBQXNCO0lBRXRCLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsZ0NBQWdDLENBQWtDLFFBQVEsRUFBRSxjQUFjLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUV0SSxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2hCLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uc0ludGVybmFsRXJyb3IsIEVudW1UeXBlLCBJTG9va3VwRGF0YVByb3ZpZGVyLCBUeXBlUmVnaXN0cnl9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge0VudW1EZXNjcmlwdG9yLCBlbnVtTW9kZWxHZW5lcmljfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcbmltcG9ydCB7Z2V0Q29sdW1uRGlzcGxheVR5cGVGcm9tQ29sdW1uVHlwZSwgZ2V0Q29sdW1uVHlwZUZyb21DbGFzc0F0dHJpYnV0ZURlZlR5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGUvYXBpJztcblxuaW1wb3J0IHtFZGl0b3JEZXNjcmlwdG9ySW5zdH0gZnJvbSAnLi4vZGVzY3JpcHRvcnMvZWRpdG9yLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtBRmllbGREZXNjcmlwdG9yfSBmcm9tICcuLi9kZXNjcmlwdG9ycy9maWVsZC1iYXNlLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtGaWVsZExvb2t1cERlc2NyaXB0b3J9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2ZpZWxkLWxvb2t1cC5kZXNjcmlwdG9yJztcbmltcG9ydCB7RmllbGRJbnB1dERlc2NyaXB0b3J9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2ZpZWxkLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtFZGl0b3JDbGFzc0F0dHJpYnV0ZURlZn0gZnJvbSAnLi4vbW9kZWxzL2NsYXNzLXRhYmxldmlldy1hdHRyaWJ1dGUubW9kZWwnO1xuaW1wb3J0IHtGaWVsZElucHV0VHlwZUVudW19IGZyb20gJy4uL21vZGVscy9maWVsZC5tb2RlbCc7XG5pbXBvcnQge2dldEVkaXRvckNsYXNzQXR0cmlidXRlRGVmLCBnZXRGaWVsZElucHV0VHlwZUZyb21Db2x1bW5UeXBlfSBmcm9tICcuL2NsYXNzLWF0dHJpYnV0ZS1jb252ZXJ0ZXInO1xuXG4vKipcbiAqIEdlbmVyYXRlcyBmaWVsZCBiYXNlZCBvbiBhdHRyaWJ1dGUgZGVmaW5pdGlvbiwgdXNlZCBmb3IgYXV0byBtb2RlbFxuICogQHBhcmFtIGRlc2NyaXB0b3IgRWRpdG9yIGRlc2NyaXB0b3IgaW5zdGFuY2UuXG4gKiBAcGFyYW0gYXR0cmlidXRlIEF0dHJpYnV0ZSBkZWZpbml0aW9uLlxuICogQHBhcmFtIGZpZWxkIE9wdGlvbmFsLCBpZiBkZWZpbmVkIHdpbGwgYmUgcmVwbGFjZWQsIG90aGVyd2lzZSBuZXcgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gKiBAcGFyYW0gYXJncyBPcHRpb25hbCBhZGRpdGlvbmFsIGFyZ3VtZW50cyBtYXBwZWQgdG8gZmlsZWQgdHlwZS4gQXJndW1lbnRzIGRlcGVuZCBvbiBwb3NzaWJsZSBhcmd1bWVudHMgb24gZmllbGRzLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1cHNlcnRFZGl0b3JGaWVsZEZyb21BdHRyaWJ1dGVEZWY8VD4oXG4gICAgZGVzY3JpcHRvcjogRWRpdG9yRGVzY3JpcHRvckluc3Q8VCwgYW55PixcbiAgICBhdHRyaWJ1dGU6IEVkaXRvckNsYXNzQXR0cmlidXRlRGVmLFxuICAgIGZpZWxkPzogQUZpZWxkRGVzY3JpcHRvcjxhbnksIFQ+LFxuICAgIC4uLmFyZ3M6IGFueVtdXG4pOiBBRmllbGREZXNjcmlwdG9yPGFueSwgVD4ge1xuICAgIGlmIChmaWVsZCA9PSBudWxsKSB7XG4gICAgICAgIGZpZWxkID0gZGVzY3JpcHRvci5hZGRGaWVsZFVuc2FmZShhdHRyaWJ1dGUubmFtZSk7XG4gICAgfVxuXG4gICAgaWYgKGZpZWxkIGluc3RhbmNlb2YgRmllbGRJbnB1dERlc2NyaXB0b3IpIHtcbiAgICAgICAgaWYgKGF0dHJpYnV0ZS5lbnVtVHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIGZpZWxkLmFzUmFkaW9Gcm9tRW51bShlbnVtTW9kZWxHZW5lcmljKGF0dHJpYnV0ZS5lbnVtVHlwZSkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgdGFibGVDb2x1bW5UeXBlID0gZ2V0Q29sdW1uVHlwZUZyb21DbGFzc0F0dHJpYnV0ZURlZlR5cGUoYXR0cmlidXRlLnR5cGUpO1xuICAgICAgICAgICAgY29uc3QgdGFibGVDb2x1bW5EaXNwbGF5VHlwZSA9IGdldENvbHVtbkRpc3BsYXlUeXBlRnJvbUNvbHVtblR5cGUodGFibGVDb2x1bW5UeXBlLCBhdHRyaWJ1dGUudHlwZSk7XG4gICAgICAgICAgICByZXR1cm4gZmllbGQuYXNUeXBlKGF0dHJpYnV0ZS5maWVsZFR5cGUgPz8gZ2V0RmllbGRJbnB1dFR5cGVGcm9tQ29sdW1uVHlwZSh0YWJsZUNvbHVtblR5cGUsIHRhYmxlQ29sdW1uRGlzcGxheVR5cGUpLCAuLi5hcmdzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmaWVsZDtcbn1cblxuLyoqXG4gKiBNb2RpZmllcyBzZWxlY3RlZCBmaWVsZCBieSBmaWVsZCBwcm9wZXJ0eS4gRm9yIGVudW1zIHVzZSB7d2l0aEZpZWxkTW9kaWZpZWRFbnVtfSBpbnN0ZWFkLlxuICogQHBhcmFtIGRlc2NyaXB0b3IgRWRpdG9yIGRlc2NyaXB0b3IuXG4gKiBAcGFyYW0gcHJvcGVydHkgTW9kZWwncyBwcm9wZXJ0eSBuYW1lLlxuICogQHBhcmFtIGZpZWxkVHlwZSBuZXcgZmllbGQgdHlwZSBmb3Igc2VsZWN0ZWQgZmllbGRcbiAqIEBwYXJhbSBhcmdzIGFkZGl0aW9uYWwgcGFyYW1ldGVycyBmb3IgZmllbGRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1vZGlmeUVkaXRvckNsYXNzQXR0cmlidXRlRmllbGRUeXBlPFxuICAgIEVkaXRvck1vZGVsLFxuICAgIFByb3BlcnR5IGV4dGVuZHMga2V5b2YgRWRpdG9yTW9kZWwsXG4gICAgRmllbGRNb2RlbCA9IE5vbk51bGxhYmxlPEVkaXRvck1vZGVsW1Byb3BlcnR5XT4sXG4gICAgRmllbGRWYWx1ZSA9IEVkaXRvck1vZGVsW1Byb3BlcnR5XVxuPihcbiAgICBkZXNjcmlwdG9yOiBFZGl0b3JEZXNjcmlwdG9ySW5zdDxFZGl0b3JNb2RlbCwgYW55PixcbiAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgZmllbGRUeXBlOiBGaWVsZElucHV0VHlwZUVudW0sXG4gICAgLi4uYXJnczogYW55W11cbik6IEFGaWVsZERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIEZpZWxkVmFsdWU+IHwgbnVsbCB7XG4gICAgcmV0dXJuIG1vZGlmeUVkaXRvckNsYXNzQXR0cmlidXRlRmllbGRUeXBlVW5zYWZlPEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlPihkZXNjcmlwdG9yLCBwcm9wZXJ0eSBhcyBzdHJpbmcsIGZpZWxkVHlwZSwgLi4uYXJncyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb2RpZnlFZGl0b3JDbGFzc0F0dHJpYnV0ZUZpZWxkVHlwZVVuc2FmZTxFZGl0b3JNb2RlbCwgRmllbGRNb2RlbCA9IGFueSwgRmllbGRWYWx1ZSA9IEZpZWxkTW9kZWw+KFxuICAgIGRlc2NyaXB0b3I6IEVkaXRvckRlc2NyaXB0b3JJbnN0PEVkaXRvck1vZGVsLCBhbnk+LFxuICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgZmllbGRUeXBlOiBGaWVsZElucHV0VHlwZUVudW0sXG4gICAgLi4uYXJnczogYW55W11cbik6IEFGaWVsZERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIEZpZWxkVmFsdWU+IHwgbnVsbCB7XG4gICAgaWYgKCFkZXNjcmlwdG9yLm1vZGVsLnR5cGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKGB3aXRoRmllbGRNb2RpZmllZFR5cGUgY2Fubm90IGJlIGV4ZWN1dGVkIGZvciBwcm9wZXJ0eSAke3Byb3BlcnR5fTogTW9kZWwgdHlwZSBpcyBub3QgZGVmaW5lZC5gKTtcbiAgICB9XG5cbiAgICBjb25zdCBhdHRyaWJ1dGUgPSBnZXRFZGl0b3JDbGFzc0F0dHJpYnV0ZURlZihkZXNjcmlwdG9yLm1vZGVsLnR5cGUpLmZpbmQoYXR0cmlidXRlID0+IGF0dHJpYnV0ZS5uYW1lID09PSBwcm9wZXJ0eSk7XG4gICAgaWYgKGF0dHJpYnV0ZSkge1xuICAgICAgICBhdHRyaWJ1dGUuZmllbGRUeXBlID0gZmllbGRUeXBlO1xuICAgICAgICByZXR1cm4gdXBzZXJ0RWRpdG9yRmllbGRGcm9tQXR0cmlidXRlRGVmKFxuICAgICAgICAgICAgZGVzY3JpcHRvcixcbiAgICAgICAgICAgIGF0dHJpYnV0ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0b3IuZmllbGRzLmZpbmQoZmkgPT4gZmkucHJvcGVydHkgPT09IHByb3BlcnR5KSxcbiAgICAgICAgICAgIC4uLmFyZ3NcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBNb2RpZmllcyBzZWxlY3RlZCBmaWVsZCB3aXRoIGVudW0gdHlwZS5cbiAqIEBwYXJhbSBkZXNjcmlwdG9yIEVkaXRvciBkZXNjcmlwdG9yLlxuICogQHBhcmFtIHByb3BlcnR5IE1vZGVsJ3MgcHJvcGVydHkgbmFtZS5cbiAqIEBwYXJhbSBlbnVtTW9kZWwgRW51bSBkZXNjcmlwdG9yLlxuICogQHBhcmFtIHZhbHVlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gbW9kaWZ5RWRpdG9yQ2xhc3NBdHRyaWJ1dGVGaWVsZEVudW08XG4gICAgRWRpdG9yTW9kZWwsXG4gICAgUHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBFZGl0b3JNb2RlbCxcbiAgICBFbnVtIGV4dGVuZHMgTm9uTnVsbGFibGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPixcbiAgICBGaWVsZE1vZGVsID0gTm9uTnVsbGFibGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPixcbiAgICBGaWVsZFZhbHVlID0gRWRpdG9yTW9kZWxbUHJvcGVydHldXG4+KFxuICAgIGRlc2NyaXB0b3I6IEVkaXRvckRlc2NyaXB0b3JJbnN0PEVkaXRvck1vZGVsLCBhbnk+LFxuICAgIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgICBlbnVtTW9kZWw/OiBFbnVtRGVzY3JpcHRvcjxFbnVtPixcbiAgICB2YWx1ZXM/OiBBcnJheTxFbnVtPlxuKTogQUZpZWxkRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgRmllbGRWYWx1ZT4gfCBudWxsIHtcbiAgICByZXR1cm4gbW9kaWZ5RWRpdG9yQ2xhc3NBdHRyaWJ1dGVGaWVsZEVudW1VbnNhZmU8RWRpdG9yTW9kZWwsIEVudW0sIEZpZWxkTW9kZWwsIEZpZWxkVmFsdWU+KGRlc2NyaXB0b3IsIHByb3BlcnR5IGFzIHN0cmluZywgZW51bU1vZGVsLCB2YWx1ZXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbW9kaWZ5RWRpdG9yQ2xhc3NBdHRyaWJ1dGVGaWVsZEVudW1VbnNhZmU8RWRpdG9yTW9kZWwsIEVudW0gPSBhbnksIEZpZWxkTW9kZWwgPSBhbnksIEZpZWxkVmFsdWUgPSBGaWVsZE1vZGVsPihcbiAgICBkZXNjcmlwdG9yOiBFZGl0b3JEZXNjcmlwdG9ySW5zdDxFZGl0b3JNb2RlbCwgYW55PixcbiAgICBwcm9wZXJ0eTogc3RyaW5nLFxuICAgIGVudW1EZXNjPzogRW51bURlc2NyaXB0b3I8RW51bT4sXG4gICAgdmFsdWVzPzogQXJyYXk8RW51bT5cbik6IEFGaWVsZERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIEZpZWxkVmFsdWU+IHwgbnVsbCB7XG4gICAgaWYgKCFkZXNjcmlwdG9yLm1vZGVsLnR5cGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKGB3aXRoRmllbGRNb2RpZmllZEVudW0gY2Fubm90IGJlIGV4ZWN1dGVkIGZvciBwcm9wZXJ0eSAke3Byb3BlcnR5fTogTW9kZWwgdHlwZSBpcyBub3QgZGVmaW5lZC5gKTtcbiAgICB9XG4gICAgY29uc3QgYXR0cmlidXRlID0gZ2V0RWRpdG9yQ2xhc3NBdHRyaWJ1dGVEZWYoZGVzY3JpcHRvci5tb2RlbC50eXBlKS5maW5kKGEgPT4gYS5uYW1lID09PSBwcm9wZXJ0eSk7XG4gICAgaWYgKGF0dHJpYnV0ZSkge1xuICAgICAgICBhdHRyaWJ1dGUuZmllbGRUeXBlID0gRmllbGRJbnB1dFR5cGVFbnVtLlJhZGlvO1xuICAgICAgICBjb25zdCBmaWVsZCA9IGRlc2NyaXB0b3IuZmllbGRzLmZpbmQoZiA9PiBmLnByb3BlcnR5ID09PSBwcm9wZXJ0eSk7XG4gICAgICAgIGlmIChmaWVsZCAmJiBmaWVsZCBpbnN0YW5jZW9mIEZpZWxkSW5wdXREZXNjcmlwdG9yKSB7XG4gICAgICAgICAgICBmaWVsZC5hc1JhZGlvRnJvbUVudW0oZW51bURlc2MgPz8gZW51bU1vZGVsR2VuZXJpYyhUeXBlUmVnaXN0cnkuZ2V0KCkuZmluZEVudW0oYXR0cmlidXRlLnR5cGUpIGFzIEVudW1UeXBlKSwgdmFsdWVzKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmllbGQgPz8gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBNb2RpZmllcyBzZWxlY3RlZCBmaWVsZCB3aXRoIGxvb2t1cCBmaWVsZC5cbiAqIEBwYXJhbSBkZXNjcmlwdG9yIEVkaXRvciBkZXNjcmlwdG9yLlxuICogQHBhcmFtIHByb3BlcnR5IE1vZGVsJ3MgcHJvcGVydHkgbmFtZS5cbiAqIEBwYXJhbSBsb29rdXBQcm92aWRlciBwcm92aWRlciB0byBiZSBhZGRlZCB0byBmaWVsZFxuICogQHBhcmFtIHRpdGxlUHJvcGVydHlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1vZGlmeUVkaXRvckZpZWxkTG9va3VwPFxuICAgIEVkaXRvck1vZGVsLFxuICAgIFByb3BlcnR5IGV4dGVuZHMga2V5b2YgRWRpdG9yTW9kZWwsXG4gICAgU2VydmljZSxcbiAgICBGaWVsZE1vZGVsID0gTm9uTnVsbGFibGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPixcbiAgICBGaWVsZFZhbHVlID0gRWRpdG9yTW9kZWxbUHJvcGVydHldXG4+KFxuICAgIGRlc2NyaXB0b3I6IEVkaXRvckRlc2NyaXB0b3JJbnN0PEVkaXRvck1vZGVsLCBhbnk+LFxuICAgIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgICBsb29rdXBQcm92aWRlcjogSUxvb2t1cERhdGFQcm92aWRlcjxGaWVsZE1vZGVsLCBTZXJ2aWNlPixcbiAgICB0aXRsZVByb3BlcnR5Pzoga2V5b2YgRmllbGRNb2RlbFxuKTogRmllbGRMb29rdXBEZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsLCBTZXJ2aWNlLCBGaWVsZFZhbHVlPiB7XG4gICAgcmV0dXJuIG1vZGlmeUVkaXRvckZpZWxkTG9va3VwVW5zYWZlPEVkaXRvck1vZGVsLCBTZXJ2aWNlLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlPihkZXNjcmlwdG9yLCBwcm9wZXJ0eSBhcyBzdHJpbmcsIGxvb2t1cFByb3ZpZGVyLCB0aXRsZVByb3BlcnR5IGFzIHN0cmluZyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb2RpZnlFZGl0b3JGaWVsZExvb2t1cFVuc2FmZTxFZGl0b3JNb2RlbCwgU2VydmljZSwgRmllbGRNb2RlbCA9IGFueSwgRmllbGRWYWx1ZSA9IEZpZWxkTW9kZWw+KFxuICAgIGRlc2NyaXB0b3I6IEVkaXRvckRlc2NyaXB0b3JJbnN0PEVkaXRvck1vZGVsLCBhbnk+LFxuICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgbG9va3VwUHJvdmlkZXI6IElMb29rdXBEYXRhUHJvdmlkZXI8RmllbGRNb2RlbCwgU2VydmljZT4sXG4gICAgdGl0bGVQcm9wZXJ0eT86IHN0cmluZ1xuKTogRmllbGRMb29rdXBEZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsLCBTZXJ2aWNlLCBGaWVsZFZhbHVlPiB7XG4gICAgZGVzY3JpcHRvci5yZW1vdmVGaWVsZFVuc2FmZShwcm9wZXJ0eSk7XG4gICAgY29uc3QgZmllbGQgPSBkZXNjcmlwdG9yLmFkZEZpZWxkTG9va3VwV2l0aFByb3ZpZGVyVW5zYWZlPEZpZWxkTW9kZWwsIFNlcnZpY2UsIEZpZWxkVmFsdWU+KHByb3BlcnR5LCBsb29rdXBQcm92aWRlcikuYXNBdXRvY29tcGxldGUoKTtcblxuICAgIGlmICh0aXRsZVByb3BlcnR5KSB7XG4gICAgICAgIGZpZWxkLndpdGhPcHRpb25zTGFiZWxQcm9wZXJ0eVVuc2FmZSh0aXRsZVByb3BlcnR5KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmllbGQ7XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdGFibGV2aWV3LWF0dHJpYnV0ZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9tb2RlbHMvY2xhc3MtdGFibGV2aWV3LWF0dHJpYnV0ZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDbGFzc0F0dHJpYnV0ZURlZiwgQ2xhc3NUeXBlLCBFbnVtVHlwZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcblxuaW1wb3J0IHtGaWVsZElucHV0VHlwZUVudW19IGZyb20gJy4uLy4uL2VkaXRvci9tb2RlbHMvZmllbGQubW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRvckNsYXNzQXR0cmlidXRlRGVmIGV4dGVuZHMgQ2xhc3NBdHRyaWJ1dGVEZWYge1xuICAgIGNsYXNzVHlwZT86IENsYXNzVHlwZTxhbnk+O1xuICAgIGZpZWxkVHlwZT86IEZpZWxkSW5wdXRUeXBlRW51bTtcbiAgICBlbnVtVHlwZT86IEVudW1UeXBlO1xufVxuIl19
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { CommonsInternalError, TypeRegistry } from '@mediusinc/mng-commons/core';
|
|
2
|
-
import { ColumnTypeEnum, getColumnDisplayTypeFromColumnType, getColumnTypeFromClassAttributeDefType } from '@mediusinc/mng-commons/table/api';
|
|
3
|
-
import { getFieldInputTypeFromClassAttributeDefType } from '../../editor/helpers/class-attribute-converter';
|
|
4
|
-
export function expandClassAttributeDefWithTableviewDef(attributes) {
|
|
5
|
-
if (!attributes) {
|
|
6
|
-
throw new CommonsInternalError('Class attribute definition is null, problem with TypeRegistry::findAttributesDefinitionByClassType?', { name: 'TableviewUtilsError' });
|
|
7
|
-
}
|
|
8
|
-
const typeRegistry = TypeRegistry.get();
|
|
9
|
-
const tableClassAttributeDef = [];
|
|
10
|
-
for (const attribute of attributes) {
|
|
11
|
-
const enumType = typeRegistry.findEnum(attribute.type);
|
|
12
|
-
const columnType = enumType ? ColumnTypeEnum.Enum : getColumnTypeFromClassAttributeDefType(attribute.type);
|
|
13
|
-
tableClassAttributeDef.push({
|
|
14
|
-
name: attribute.name,
|
|
15
|
-
baseName: attribute.baseName,
|
|
16
|
-
type: attribute.type,
|
|
17
|
-
subtype: attribute.subtype,
|
|
18
|
-
columnType: enumType ? ColumnTypeEnum.Enum : getColumnTypeFromClassAttributeDefType(attribute.type),
|
|
19
|
-
columnDisplayType: getColumnDisplayTypeFromColumnType(columnType, attribute.type),
|
|
20
|
-
fieldType: getFieldInputTypeFromClassAttributeDefType(attribute.type),
|
|
21
|
-
enumType: typeRegistry.findEnum(attribute.type),
|
|
22
|
-
classType: typeRegistry.findType(attribute.type)
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
return tableClassAttributeDef;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* returns attributes from class type and extends to typed def with column and field enum type
|
|
29
|
-
* @param type class type
|
|
30
|
-
*/
|
|
31
|
-
export function getTableviewClassAttributeDef(type) {
|
|
32
|
-
return expandClassAttributeDefWithTableviewDef(TypeRegistry.get().findAttributesDefinitionByClassType(type));
|
|
33
|
-
}
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtYXR0cmlidXRlLWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL3RhYmxldmlldy9oZWxwZXJzL2NsYXNzLWF0dHJpYnV0ZS1jb252ZXJ0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUErQixvQkFBb0IsRUFBWSxZQUFZLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN2SCxPQUFPLEVBQUMsY0FBYyxFQUFFLGtDQUFrQyxFQUFFLHNDQUFzQyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFFNUksT0FBTyxFQUFDLDBDQUEwQyxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFHMUcsTUFBTSxVQUFVLHVDQUF1QyxDQUFDLFVBQTRDO0lBQ2hHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNkLE1BQU0sSUFBSSxvQkFBb0IsQ0FBQyxxR0FBcUcsRUFBRSxFQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBQyxDQUFDLENBQUM7SUFDekssQ0FBQztJQUVELE1BQU0sWUFBWSxHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN4QyxNQUFNLHNCQUFzQixHQUFpQyxFQUFFLENBQUM7SUFDaEUsS0FBSyxNQUFNLFNBQVMsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUNqQyxNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2RCxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLHNDQUFzQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzRyxzQkFBc0IsQ0FBQyxJQUFJLENBQUM7WUFDeEIsSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJO1lBQ3BCLFFBQVEsRUFBRSxTQUFTLENBQUMsUUFBUTtZQUM1QixJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUk7WUFDcEIsT0FBTyxFQUFFLFNBQVMsQ0FBQyxPQUFPO1lBQzFCLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLHNDQUFzQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDbkcsaUJBQWlCLEVBQUUsa0NBQWtDLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDakYsU0FBUyxFQUFFLDBDQUEwQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDckUsUUFBUSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBYTtZQUMzRCxTQUFTLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFtQjtTQUNyRSxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsT0FBTyxzQkFBc0IsQ0FBQztBQUNsQyxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLDZCQUE2QixDQUFJLElBQWtCO0lBQy9ELE9BQU8sdUNBQXVDLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1DQUFtQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDakgsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xhc3NBdHRyaWJ1dGVEZWYsIENsYXNzVHlwZSwgQ29tbW9uc0ludGVybmFsRXJyb3IsIEVudW1UeXBlLCBUeXBlUmVnaXN0cnl9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge0NvbHVtblR5cGVFbnVtLCBnZXRDb2x1bW5EaXNwbGF5VHlwZUZyb21Db2x1bW5UeXBlLCBnZXRDb2x1bW5UeXBlRnJvbUNsYXNzQXR0cmlidXRlRGVmVHlwZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy90YWJsZS9hcGknO1xuXG5pbXBvcnQge2dldEZpZWxkSW5wdXRUeXBlRnJvbUNsYXNzQXR0cmlidXRlRGVmVHlwZX0gZnJvbSAnLi4vLi4vZWRpdG9yL2hlbHBlcnMvY2xhc3MtYXR0cmlidXRlLWNvbnZlcnRlcic7XG5pbXBvcnQge1RhYmxldmlld0NsYXNzQXR0cmlidXRlRGVmfSBmcm9tICcuLi9tb2RlbHMvY2xhc3MtdGFibGV2aWV3LWF0dHJpYnV0ZS5tb2RlbCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBleHBhbmRDbGFzc0F0dHJpYnV0ZURlZldpdGhUYWJsZXZpZXdEZWYoYXR0cmlidXRlcz86IEFycmF5PENsYXNzQXR0cmlidXRlRGVmPiB8IG51bGwpOiBUYWJsZXZpZXdDbGFzc0F0dHJpYnV0ZURlZltdIHtcbiAgICBpZiAoIWF0dHJpYnV0ZXMpIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKCdDbGFzcyBhdHRyaWJ1dGUgZGVmaW5pdGlvbiBpcyBudWxsLCBwcm9ibGVtIHdpdGggVHlwZVJlZ2lzdHJ5OjpmaW5kQXR0cmlidXRlc0RlZmluaXRpb25CeUNsYXNzVHlwZT8nLCB7bmFtZTogJ1RhYmxldmlld1V0aWxzRXJyb3InfSk7XG4gICAgfVxuXG4gICAgY29uc3QgdHlwZVJlZ2lzdHJ5ID0gVHlwZVJlZ2lzdHJ5LmdldCgpO1xuICAgIGNvbnN0IHRhYmxlQ2xhc3NBdHRyaWJ1dGVEZWY6IFRhYmxldmlld0NsYXNzQXR0cmlidXRlRGVmW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IGF0dHJpYnV0ZSBvZiBhdHRyaWJ1dGVzKSB7XG4gICAgICAgIGNvbnN0IGVudW1UeXBlID0gdHlwZVJlZ2lzdHJ5LmZpbmRFbnVtKGF0dHJpYnV0ZS50eXBlKTtcbiAgICAgICAgY29uc3QgY29sdW1uVHlwZSA9IGVudW1UeXBlID8gQ29sdW1uVHlwZUVudW0uRW51bSA6IGdldENvbHVtblR5cGVGcm9tQ2xhc3NBdHRyaWJ1dGVEZWZUeXBlKGF0dHJpYnV0ZS50eXBlKTtcbiAgICAgICAgdGFibGVDbGFzc0F0dHJpYnV0ZURlZi5wdXNoKHtcbiAgICAgICAgICAgIG5hbWU6IGF0dHJpYnV0ZS5uYW1lLFxuICAgICAgICAgICAgYmFzZU5hbWU6IGF0dHJpYnV0ZS5iYXNlTmFtZSxcbiAgICAgICAgICAgIHR5cGU6IGF0dHJpYnV0ZS50eXBlLFxuICAgICAgICAgICAgc3VidHlwZTogYXR0cmlidXRlLnN1YnR5cGUsXG4gICAgICAgICAgICBjb2x1bW5UeXBlOiBlbnVtVHlwZSA/IENvbHVtblR5cGVFbnVtLkVudW0gOiBnZXRDb2x1bW5UeXBlRnJvbUNsYXNzQXR0cmlidXRlRGVmVHlwZShhdHRyaWJ1dGUudHlwZSksXG4gICAgICAgICAgICBjb2x1bW5EaXNwbGF5VHlwZTogZ2V0Q29sdW1uRGlzcGxheVR5cGVGcm9tQ29sdW1uVHlwZShjb2x1bW5UeXBlLCBhdHRyaWJ1dGUudHlwZSksXG4gICAgICAgICAgICBmaWVsZFR5cGU6IGdldEZpZWxkSW5wdXRUeXBlRnJvbUNsYXNzQXR0cmlidXRlRGVmVHlwZShhdHRyaWJ1dGUudHlwZSksXG4gICAgICAgICAgICBlbnVtVHlwZTogdHlwZVJlZ2lzdHJ5LmZpbmRFbnVtKGF0dHJpYnV0ZS50eXBlKSBhcyBFbnVtVHlwZSxcbiAgICAgICAgICAgIGNsYXNzVHlwZTogdHlwZVJlZ2lzdHJ5LmZpbmRUeXBlKGF0dHJpYnV0ZS50eXBlKSBhcyBDbGFzc1R5cGU8YW55PlxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGFibGVDbGFzc0F0dHJpYnV0ZURlZjtcbn1cblxuLyoqXG4gKiByZXR1cm5zIGF0dHJpYnV0ZXMgZnJvbSBjbGFzcyB0eXBlIGFuZCBleHRlbmRzIHRvIHR5cGVkIGRlZiB3aXRoIGNvbHVtbiBhbmQgZmllbGQgZW51bSB0eXBlXG4gKiBAcGFyYW0gdHlwZSBjbGFzcyB0eXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRUYWJsZXZpZXdDbGFzc0F0dHJpYnV0ZURlZjxUPih0eXBlOiBDbGFzc1R5cGU8VD4pOiBUYWJsZXZpZXdDbGFzc0F0dHJpYnV0ZURlZltdIHtcbiAgICByZXR1cm4gZXhwYW5kQ2xhc3NBdHRyaWJ1dGVEZWZXaXRoVGFibGV2aWV3RGVmKFR5cGVSZWdpc3RyeS5nZXQoKS5maW5kQXR0cmlidXRlc0RlZmluaXRpb25CeUNsYXNzVHlwZSh0eXBlKSk7XG59XG4iXX0=
|