@sapui5/sap.fe.core 1.99.0 → 1.100.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +4 -2
- package/src/sap/fe/core/.library +1 -1
- package/src/sap/fe/core/AnnotationHelper.js +1 -69
- package/src/sap/fe/core/AnnotationHelper.ts +0 -70
- package/src/sap/fe/core/AppComponent.js +388 -399
- package/src/sap/fe/core/AppComponent.ts +403 -0
- package/src/sap/fe/core/AppStateHandler.js +127 -158
- package/src/sap/fe/core/BaseController.js +82 -58
- package/src/sap/fe/core/BaseController.ts +68 -0
- package/src/sap/fe/core/CommonUtils.js +111 -20
- package/src/sap/fe/core/CommonUtils.ts +131 -32
- package/src/sap/fe/core/ExtensionAPI.js +278 -274
- package/src/sap/fe/core/ExtensionAPI.ts +250 -0
- package/src/sap/fe/core/PageController.js +157 -29
- package/src/sap/fe/core/PageController.ts +60 -32
- package/src/sap/fe/core/RouterProxy.js +694 -756
- package/src/sap/fe/core/RouterProxy.ts +11 -9
- package/src/sap/fe/core/Synchronization.js +21 -31
- package/src/sap/fe/core/TemplateComponent.js +1 -1
- package/src/sap/fe/core/TemplateComponent.ts +10 -3
- package/src/sap/fe/core/TemplateModel.js +20 -38
- package/src/sap/fe/core/TemplateModel.ts +1 -1
- package/src/sap/fe/core/TransactionHelper.js +1354 -1370
- package/src/sap/fe/core/TransactionHelper.ts +33 -22
- package/src/sap/fe/core/actions/collaboration/ActivitySync.js +392 -0
- package/src/sap/fe/core/actions/collaboration/ActivitySync.ts +355 -0
- package/src/sap/fe/core/actions/collaboration/CollaborationCommon.js +136 -0
- package/src/sap/fe/core/actions/collaboration/CollaborationCommon.ts +119 -0
- package/src/sap/fe/core/actions/collaboration/Manage.js +262 -0
- package/src/sap/fe/core/actions/collaboration/Manage.ts +244 -0
- package/src/sap/fe/core/actions/collaboration/ManageDialog.fragment.xml +103 -0
- package/src/sap/fe/core/actions/collaboration/UserDetails.fragment.xml +13 -0
- package/src/sap/fe/core/actions/draft.js +30 -68
- package/src/sap/fe/core/actions/draft.ts +44 -71
- package/src/sap/fe/core/actions/messageHandling.js +55 -36
- package/src/sap/fe/core/actions/messageHandling.ts +66 -46
- package/src/sap/fe/core/actions/operations.js +34 -15
- package/src/sap/fe/core/actions/operations.ts +48 -18
- package/src/sap/fe/core/actions/sticky.js +17 -4
- package/src/sap/fe/core/actions/sticky.ts +21 -4
- package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.js +69 -66
- package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.ts +65 -0
- package/src/sap/fe/core/controllerextensions/EditFlow.js +1593 -1669
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +1672 -0
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +79 -54
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +61 -0
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +718 -779
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +783 -0
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +796 -816
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +803 -0
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +1004 -1005
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +978 -0
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +487 -521
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +2 -2
- package/src/sap/fe/core/controllerextensions/MassEdit.js +141 -169
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +156 -0
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +233 -244
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +225 -0
- package/src/sap/fe/core/controllerextensions/PageReady.js +301 -336
- package/src/sap/fe/core/controllerextensions/PageReady.ts +12 -10
- package/src/sap/fe/core/controllerextensions/Paginator.js +188 -175
- package/src/sap/fe/core/controllerextensions/Paginator.ts +163 -0
- package/src/sap/fe/core/controllerextensions/Placeholder.js +157 -149
- package/src/sap/fe/core/controllerextensions/Placeholder.ts +151 -0
- package/src/sap/fe/core/controllerextensions/Routing.js +144 -125
- package/src/sap/fe/core/controllerextensions/Routing.ts +132 -0
- package/src/sap/fe/core/controllerextensions/RoutingListener.js +7 -6
- package/src/sap/fe/core/controllerextensions/RoutingListener.ts +3 -0
- package/src/sap/fe/core/controllerextensions/Share.js +230 -268
- package/src/sap/fe/core/controllerextensions/Share.ts +231 -0
- package/src/sap/fe/core/controllerextensions/SideEffects.js +592 -633
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +8 -7
- package/src/sap/fe/core/controllerextensions/ViewState.js +788 -806
- package/src/sap/fe/core/controllerextensions/ViewState.ts +805 -0
- package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -2
- package/src/sap/fe/core/controls/ActionPartial.fragment.xml +2 -2
- package/src/sap/fe/core/controls/CommandExecution.js +67 -66
- package/src/sap/fe/core/controls/CommandExecution.ts +72 -0
- package/src/sap/fe/core/controls/ConditionalWrapper.js +90 -75
- package/src/sap/fe/core/controls/ConditionalWrapper.ts +83 -0
- package/src/sap/fe/core/controls/CustomQuickViewPage.js +130 -125
- package/src/sap/fe/core/controls/CustomQuickViewPage.ts +126 -0
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +103 -112
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +101 -0
- package/src/sap/fe/core/controls/FieldWrapper.js +122 -135
- package/src/sap/fe/core/controls/FieldWrapper.ts +115 -0
- package/src/sap/fe/core/controls/FilterBar.js +162 -159
- package/src/sap/fe/core/controls/FilterBar.ts +143 -0
- package/src/sap/fe/core/controls/FormElementWrapper.js +45 -39
- package/src/sap/fe/core/controls/FormElementWrapper.ts +40 -0
- package/src/sap/fe/core/controls/MultiValueParameterDelegate.js +37 -42
- package/src/sap/fe/core/controls/MultiValueParameterDelegate.ts +31 -0
- package/src/sap/fe/core/controls/filterbar/FilterContainer.js +126 -116
- package/src/sap/fe/core/controls/filterbar/FilterContainer.ts +98 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +241 -255
- package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +245 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +150 -141
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +125 -0
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +335 -322
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +337 -0
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +74 -74
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +70 -0
- package/src/sap/fe/core/converters/ConverterContext.js +348 -379
- package/src/sap/fe/core/converters/ConverterContext.ts +19 -16
- package/src/sap/fe/core/converters/ManifestSettings.js +12 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +12 -1
- package/src/sap/fe/core/converters/ManifestWrapper.js +354 -378
- package/src/sap/fe/core/converters/ManifestWrapper.ts +10 -0
- package/src/sap/fe/core/converters/MetaModelConverter.js +6 -4
- package/src/sap/fe/core/converters/MetaModelConverter.ts +5 -2
- package/src/sap/fe/core/converters/TemplateConverter.js +1 -1
- package/src/sap/fe/core/converters/TemplateConverter.ts +2 -1
- package/src/sap/fe/core/converters/annotations/DataField.js +26 -12
- package/src/sap/fe/core/converters/annotations/DataField.ts +37 -13
- package/src/sap/fe/core/converters/controls/Common/Form.js +2 -2
- package/src/sap/fe/core/converters/controls/Common/Form.ts +4 -2
- package/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/KPI.ts +3 -2
- package/src/sap/fe/core/converters/controls/Common/Table.js +130 -23
- package/src/sap/fe/core/converters/controls/Common/Table.ts +134 -29
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +118 -53
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +156 -93
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +161 -207
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +148 -206
- package/src/sap/fe/core/converters/helpers/Aggregation.js +115 -133
- package/src/sap/fe/core/converters/helpers/BindingHelper.js +20 -6
- package/src/sap/fe/core/converters/helpers/BindingHelper.ts +16 -4
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +12 -1
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +11 -0
- package/src/sap/fe/core/converters/helpers/Key.js +42 -57
- package/src/sap/fe/core/converters/helpers/Key.ts +1 -1
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +25 -4
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +20 -3
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +10 -4
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +15 -4
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +7 -5
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +5 -1
- package/src/sap/fe/core/designtime/AppComponent.designtime.js +92 -98
- package/src/sap/fe/core/designtime/AppComponent.designtime.ts +91 -0
- package/src/sap/fe/core/formatters/CollaborationFormatter.js +104 -0
- package/src/sap/fe/core/formatters/CollaborationFormatter.ts +60 -0
- package/src/sap/fe/core/formatters/TableFormatter.js +53 -2
- package/src/sap/fe/core/formatters/TableFormatter.ts +51 -0
- package/src/sap/fe/core/fpm/Component.js +50 -54
- package/src/sap/fe/core/fpm/Component.ts +48 -0
- package/src/sap/fe/core/helpers/AppStartupHelper.js +323 -309
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +363 -337
- package/src/sap/fe/core/helpers/BindingExpression.js +7 -7
- package/src/sap/fe/core/helpers/BindingExpression.ts +7 -7
- package/src/sap/fe/core/helpers/ClassSupport.js +186 -62
- package/src/sap/fe/core/helpers/ClassSupport.ts +168 -52
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +5 -4
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +1 -5
- package/src/sap/fe/core/helpers/FPMHelper.js +1 -1
- package/src/sap/fe/core/helpers/FPMHelper.ts +1 -1
- package/src/sap/fe/core/helpers/MassEditHelper.js +601 -684
- package/src/sap/fe/core/helpers/MassEditHelper.ts +699 -0
- package/src/sap/fe/core/helpers/ModelHelper.js +25 -1
- package/src/sap/fe/core/helpers/ModelHelper.ts +23 -0
- package/src/sap/fe/core/helpers/SemanticDateOperators.js +5 -1
- package/src/sap/fe/core/helpers/SemanticDateOperators.ts +4 -0
- package/src/sap/fe/core/library.js +426 -451
- package/src/sap/fe/core/library.support.js +22 -33
- package/src/sap/fe/core/library.support.ts +23 -0
- package/src/sap/fe/core/library.ts +420 -0
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +5 -3
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +4 -1
- package/src/sap/fe/core/messagebundle.properties +22 -5
- package/src/sap/fe/core/messagebundle_ar.properties +27 -7
- package/src/sap/fe/core/messagebundle_bg.properties +27 -7
- package/src/sap/fe/core/messagebundle_ca.properties +27 -7
- package/src/sap/fe/core/messagebundle_cs.properties +27 -7
- package/src/sap/fe/core/messagebundle_cy.properties +27 -7
- package/src/sap/fe/core/messagebundle_da.properties +27 -7
- package/src/sap/fe/core/messagebundle_de.properties +27 -7
- package/src/sap/fe/core/messagebundle_el.properties +27 -7
- package/src/sap/fe/core/messagebundle_en.properties +27 -7
- package/src/sap/fe/core/messagebundle_en_GB.properties +27 -7
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +27 -7
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +27 -7
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +27 -7
- package/src/sap/fe/core/messagebundle_es.properties +27 -7
- package/src/sap/fe/core/messagebundle_es_MX.properties +27 -7
- package/src/sap/fe/core/messagebundle_et.properties +27 -7
- package/src/sap/fe/core/messagebundle_fi.properties +28 -8
- package/src/sap/fe/core/messagebundle_fr.properties +28 -8
- package/src/sap/fe/core/messagebundle_fr_CA.properties +29 -9
- package/src/sap/fe/core/messagebundle_hi.properties +27 -7
- package/src/sap/fe/core/messagebundle_hr.properties +27 -7
- package/src/sap/fe/core/messagebundle_hu.properties +27 -7
- package/src/sap/fe/core/messagebundle_id.properties +27 -7
- package/src/sap/fe/core/messagebundle_it.properties +27 -7
- package/src/sap/fe/core/messagebundle_iw.properties +27 -7
- package/src/sap/fe/core/messagebundle_ja.properties +26 -6
- package/src/sap/fe/core/messagebundle_kk.properties +27 -7
- package/src/sap/fe/core/messagebundle_ko.properties +27 -7
- package/src/sap/fe/core/messagebundle_lt.properties +27 -7
- package/src/sap/fe/core/messagebundle_lv.properties +28 -8
- package/src/sap/fe/core/messagebundle_ms.properties +27 -7
- package/src/sap/fe/core/messagebundle_nl.properties +27 -7
- package/src/sap/fe/core/messagebundle_no.properties +27 -7
- package/src/sap/fe/core/messagebundle_pl.properties +27 -7
- package/src/sap/fe/core/messagebundle_pt.properties +28 -8
- package/src/sap/fe/core/messagebundle_pt_PT.properties +27 -7
- package/src/sap/fe/core/messagebundle_ro.properties +27 -7
- package/src/sap/fe/core/messagebundle_ru.properties +27 -7
- package/src/sap/fe/core/messagebundle_sh.properties +27 -7
- package/src/sap/fe/core/messagebundle_sk.properties +27 -7
- package/src/sap/fe/core/messagebundle_sl.properties +27 -7
- package/src/sap/fe/core/messagebundle_sv.properties +27 -7
- package/src/sap/fe/core/messagebundle_th.properties +26 -6
- package/src/sap/fe/core/messagebundle_tr.properties +30 -10
- package/src/sap/fe/core/messagebundle_uk.properties +27 -7
- package/src/sap/fe/core/messagebundle_vi.properties +27 -7
- package/src/sap/fe/core/messagebundle_zh_CN.properties +27 -7
- package/src/sap/fe/core/messagebundle_zh_TW.properties +27 -7
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +45 -71
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +154 -192
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +4 -4
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +66 -92
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/NavigationServiceFactory.js +284 -339
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +10 -13
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js +67 -102
- package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +5 -2
- package/src/sap/fe/core/services/RoutingServiceFactory.js +754 -814
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +13 -13
- package/src/sap/fe/core/services/ShellServicesFactory.js +649 -736
- package/src/sap/fe/core/services/ShellServicesFactory.ts +7 -4
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +567 -592
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +22 -3
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +354 -386
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +21 -14
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +1 -1
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +1 -1
- package/src/sap/fe/core/support/CommonHelper.js +1 -1
- package/src/sap/fe/core/support/CommonHelper.ts +1 -1
- package/src/sap/fe/core/support/Diagnostics.js +36 -48
- package/src/sap/fe/core/templating/DataModelPathHelper.js +93 -85
- package/src/sap/fe/core/templating/DataModelPathHelper.ts +104 -95
- package/src/sap/fe/core/templating/FilterHelper.js +25 -32
- package/src/sap/fe/core/templating/FilterHelper.ts +36 -35
- package/src/sap/fe/core/templating/PropertyHelper.js +2 -2
- package/src/sap/fe/core/templating/PropertyHelper.ts +1 -1
- package/src/sap/fe/core/templating/UIFormatters.js +32 -26
- package/src/sap/fe/core/templating/UIFormatters.ts +37 -24
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
addTypeInformation,
|
|
5
5
|
and,
|
|
6
6
|
annotationExpression,
|
|
7
|
+
bindingExpression,
|
|
7
8
|
BindingExpression,
|
|
8
9
|
BindingExpressionExpression,
|
|
9
10
|
compileBinding,
|
|
@@ -18,7 +19,7 @@ import {
|
|
|
18
19
|
not,
|
|
19
20
|
or
|
|
20
21
|
} from "sap/fe/core/helpers/BindingExpression";
|
|
21
|
-
import { UI } from "sap/fe/core/converters/helpers/BindingHelper";
|
|
22
|
+
import { singletonPathVisitor, UI } from "sap/fe/core/converters/helpers/BindingHelper";
|
|
22
23
|
import {
|
|
23
24
|
getAssociatedUnitProperty,
|
|
24
25
|
getAssociatedCurrencyProperty,
|
|
@@ -33,9 +34,9 @@ import { NavigationProperty, Property } from "@sap-ux/annotation-converter";
|
|
|
33
34
|
import { PathAnnotationExpression } from "@sap-ux/vocabularies-types/types/Edm";
|
|
34
35
|
import {
|
|
35
36
|
DataModelObjectPath,
|
|
36
|
-
getTargetEntitySetPath,
|
|
37
37
|
isPathUpdatable,
|
|
38
|
-
getPathRelativeLocation
|
|
38
|
+
getPathRelativeLocation,
|
|
39
|
+
getTargetObjectPath
|
|
39
40
|
} from "sap/fe/core/templating/DataModelPathHelper";
|
|
40
41
|
import {
|
|
41
42
|
isReadOnlyExpression,
|
|
@@ -96,7 +97,7 @@ export type configType = {
|
|
|
96
97
|
export const getEditableExpression = function(
|
|
97
98
|
oPropertyPath: PropertyOrPath<Property>,
|
|
98
99
|
oDataFieldConverted: any = null,
|
|
99
|
-
oDataModelObjectPath
|
|
100
|
+
oDataModelObjectPath: DataModelObjectPath,
|
|
100
101
|
bAsObject: boolean = false
|
|
101
102
|
): BindingExpression<boolean> | ExpressionOrPrimitive<boolean> {
|
|
102
103
|
if (!oPropertyPath || typeof oPropertyPath === "string") {
|
|
@@ -118,7 +119,11 @@ export const getEditableExpression = function(
|
|
|
118
119
|
// Else, to be editable you need
|
|
119
120
|
// immutable and key while in the creation row
|
|
120
121
|
// ui/isEditable
|
|
121
|
-
const isPathUpdatableExpression = isPathUpdatable(oDataModelObjectPath,
|
|
122
|
+
const isPathUpdatableExpression = isPathUpdatable(oDataModelObjectPath, {
|
|
123
|
+
propertyPath: oPropertyPath,
|
|
124
|
+
pathVisitor: (path: string, navigationPaths: string[]) =>
|
|
125
|
+
singletonPathVisitor(path, oDataModelObjectPath.convertedTypes, navigationPaths)
|
|
126
|
+
});
|
|
122
127
|
const editableExpression = ifElse(
|
|
123
128
|
or(
|
|
124
129
|
not(isPathUpdatableExpression),
|
|
@@ -136,6 +141,18 @@ export const getEditableExpression = function(
|
|
|
136
141
|
return compileBinding(and(editableExpression, dataFieldEditableExpression));
|
|
137
142
|
};
|
|
138
143
|
|
|
144
|
+
export const getCollaborationExpression = function(dataModelObjectPath: DataModelObjectPath, formatter: any): BindingExpression<any> {
|
|
145
|
+
const objectPath = getTargetObjectPath(dataModelObjectPath);
|
|
146
|
+
const activityExpression = bindingExpression("/collaboration/activities" + objectPath, "internal");
|
|
147
|
+
const keys = dataModelObjectPath?.targetEntityType?.keys;
|
|
148
|
+
const keysExpressions: BindingExpressionExpression<any>[] = [];
|
|
149
|
+
keys?.forEach(function(key) {
|
|
150
|
+
const keyExpression = bindingExpression(key.name) as BindingExpressionExpression<any>;
|
|
151
|
+
keysExpressions.push(keyExpression);
|
|
152
|
+
});
|
|
153
|
+
return formatResult([activityExpression, ...keysExpressions], formatter);
|
|
154
|
+
};
|
|
155
|
+
|
|
139
156
|
/**
|
|
140
157
|
* Create the expression to generate an "enabled" boolean value.
|
|
141
158
|
*
|
|
@@ -169,6 +186,7 @@ export const getEnabledExpression = function(
|
|
|
169
186
|
|
|
170
187
|
/**
|
|
171
188
|
* Create the expression to generate an "editMode" enum value.
|
|
189
|
+
*
|
|
172
190
|
* @param {PropertyPath} oPropertyPath The input property
|
|
173
191
|
* @param {DataModelObjectPath} oDataModelObjectPath The list of data model objects that are involved to reach that property
|
|
174
192
|
* @param {boolean} bMeasureReadOnly Whether we should set UoM / currency field mode to read only
|
|
@@ -267,13 +285,17 @@ export const getFieldDisplay = function(
|
|
|
267
285
|
: compileBinding(ifElse(equal(oComputedEditMode, "Editable"), "Value", sTargetDisplayMode));
|
|
268
286
|
};
|
|
269
287
|
|
|
270
|
-
export const formatWithTypeInformation = function(
|
|
288
|
+
export const formatWithTypeInformation = function(
|
|
289
|
+
oProperty: Property,
|
|
290
|
+
propertyBindingExpression: Expression<string>,
|
|
291
|
+
ignoreConstraints?: boolean
|
|
292
|
+
): Expression<string> {
|
|
271
293
|
const outExpression: BindingExpressionExpression<any> = propertyBindingExpression as BindingExpressionExpression<any>;
|
|
272
294
|
if (oProperty._type === "Property") {
|
|
273
295
|
const oTargetMapping = EDM_TYPE_MAPPING[(oProperty as Property).type];
|
|
274
296
|
if (oTargetMapping) {
|
|
275
297
|
outExpression.type = oTargetMapping.type;
|
|
276
|
-
if (oTargetMapping.constraints) {
|
|
298
|
+
if (oTargetMapping.constraints && !ignoreConstraints) {
|
|
277
299
|
outExpression.constraints = {};
|
|
278
300
|
if (oTargetMapping.constraints.$Scale && oProperty.scale !== undefined) {
|
|
279
301
|
outExpression.constraints.scale = oProperty.scale;
|
|
@@ -387,7 +409,8 @@ export const getTypeConfig = function(oProperty: Property | DataFieldAbstractTyp
|
|
|
387
409
|
|
|
388
410
|
export const getBindingWithUnitOrCurrency = function(
|
|
389
411
|
oPropertyDataModelPath: DataModelObjectPath,
|
|
390
|
-
propertyBindingExpression: Expression<string
|
|
412
|
+
propertyBindingExpression: Expression<string>,
|
|
413
|
+
ignoreUnitConstraint?: boolean
|
|
391
414
|
): Expression<string> {
|
|
392
415
|
const oPropertyDefinition = oPropertyDataModelPath.targetObject as Property;
|
|
393
416
|
let unit = oPropertyDefinition.annotations?.Measures?.Unit;
|
|
@@ -402,8 +425,13 @@ export const getBindingWithUnitOrCurrency = function(
|
|
|
402
425
|
const complexType = unit ? "sap.ui.model.odata.type.Unit" : "sap.ui.model.odata.type.Currency";
|
|
403
426
|
unit = unit ? unit : oPropertyDefinition.annotations?.Measures?.ISOCurrency;
|
|
404
427
|
const unitBindingExpression = (unit as any).$target
|
|
405
|
-
? formatWithTypeInformation(
|
|
428
|
+
? formatWithTypeInformation(
|
|
429
|
+
(unit as any).$target,
|
|
430
|
+
annotationExpression(unit, relativeLocation) as Expression<string>,
|
|
431
|
+
ignoreUnitConstraint
|
|
432
|
+
)
|
|
406
433
|
: (annotationExpression(unit, relativeLocation) as Expression<string>);
|
|
434
|
+
|
|
407
435
|
return addTypeInformation([propertyBindingExpression, unitBindingExpression], complexType);
|
|
408
436
|
};
|
|
409
437
|
|
|
@@ -458,21 +486,6 @@ export const getExpressionBinding = function(expression: Expression<any>): Bindi
|
|
|
458
486
|
return compileBinding(expression);
|
|
459
487
|
};
|
|
460
488
|
|
|
461
|
-
/**
|
|
462
|
-
* Retrieve the target entityset for a context path if it exists.
|
|
463
|
-
*
|
|
464
|
-
* @param oContext
|
|
465
|
-
* @returns {string}
|
|
466
|
-
*/
|
|
467
|
-
export const getTargetEntitySet = function(oContext: Context): string | null {
|
|
468
|
-
if (oContext) {
|
|
469
|
-
const oDataModelPath = getInvolvedDataModelObjects(oContext);
|
|
470
|
-
return getTargetEntitySetPath(oDataModelPath);
|
|
471
|
-
}
|
|
472
|
-
|
|
473
|
-
return null;
|
|
474
|
-
};
|
|
475
|
-
|
|
476
489
|
export const isCollectionField = function(oDataModelPath: DataModelObjectPath): boolean {
|
|
477
490
|
if (oDataModelPath.navigationProperties?.length) {
|
|
478
491
|
const hasOneToManyNavigation =
|