@sapui5/sap.fe.core 1.101.0 → 1.103.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 +5 -5
- package/src/sap/fe/core/.library +1 -1
- package/src/sap/fe/core/AppComponent.js +66 -30
- package/src/sap/fe/core/AppComponent.ts +68 -51
- package/src/sap/fe/core/AppStateHandler.js +13 -13
- package/src/sap/fe/core/AppStateHandler.ts +18 -18
- package/src/sap/fe/core/BaseController.js +11 -9
- package/src/sap/fe/core/BaseController.ts +15 -13
- package/src/sap/fe/core/CommonUtils.js +279 -188
- package/src/sap/fe/core/CommonUtils.ts +306 -215
- package/src/sap/fe/core/ExtensionAPI.js +25 -30
- package/src/sap/fe/core/ExtensionAPI.ts +37 -41
- package/src/sap/fe/core/PageController.js +12 -7
- package/src/sap/fe/core/PageController.ts +10 -5
- package/src/sap/fe/core/TemplateComponent.js +6 -6
- package/src/sap/fe/core/TemplateComponent.ts +11 -11
- package/src/sap/fe/core/TemplateModel.js +2 -2
- package/src/sap/fe/core/TemplateModel.ts +3 -3
- package/src/sap/fe/core/buildingBlocks/AttributeModel.js +1 -1
- package/src/sap/fe/core/buildingBlocks/AttributeModel.ts +1 -1
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +306 -78
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +280 -70
- package/src/sap/fe/core/buildingBlocks/TraceInfo.js +27 -27
- package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +28 -26
- package/src/sap/fe/core/{BusyLocker.js → controllerextensions/BusyLocker.js} +1 -1
- package/src/sap/fe/core/{BusyLocker.ts → controllerextensions/BusyLocker.ts} +7 -7
- package/src/sap/fe/core/controllerextensions/EditFlow.js +351 -229
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +321 -246
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +9 -9
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +10 -10
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +59 -34
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +71 -45
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +72 -72
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +82 -80
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +152 -131
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +171 -152
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +66 -68
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +106 -123
- package/src/sap/fe/core/controllerextensions/MassEdit.js +11 -10
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +31 -37
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +21 -13
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +30 -15
- package/src/sap/fe/core/controllerextensions/PageReady.js +97 -25
- package/src/sap/fe/core/controllerextensions/PageReady.ts +94 -34
- package/src/sap/fe/core/controllerextensions/Paginator.js +19 -11
- package/src/sap/fe/core/controllerextensions/Paginator.ts +22 -14
- package/src/sap/fe/core/controllerextensions/Placeholder.js +4 -6
- package/src/sap/fe/core/controllerextensions/Placeholder.ts +12 -14
- package/src/sap/fe/core/controllerextensions/Routing.js +10 -11
- package/src/sap/fe/core/controllerextensions/Routing.ts +12 -13
- package/src/sap/fe/core/controllerextensions/Share.js +39 -21
- package/src/sap/fe/core/controllerextensions/Share.ts +45 -26
- package/src/sap/fe/core/controllerextensions/SideEffects.js +47 -51
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +58 -62
- package/src/sap/fe/core/controllerextensions/ViewState.js +75 -62
- package/src/sap/fe/core/controllerextensions/ViewState.ts +78 -63
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +105 -0
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.ts +99 -0
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +360 -0
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/ActivitySync.ts +58 -112
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/CollaborationCommon.js +2 -2
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/CollaborationCommon.ts +7 -7
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +262 -0
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/Manage.ts +20 -21
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/ManageDialog.fragment.xml +0 -0
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/UserDetails.fragment.xml +5 -7
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +1631 -0
- package/src/sap/fe/core/{TransactionHelper.ts → controllerextensions/editFlow/TransactionHelper.ts} +270 -211
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js +772 -0
- package/src/sap/fe/core/{actions → controllerextensions/editFlow}/draft.ts +240 -100
- package/src/sap/fe/core/controllerextensions/editFlow/operations.js +1199 -0
- package/src/sap/fe/core/{actions → controllerextensions/editFlow}/operations.ts +364 -229
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +188 -0
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +185 -0
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +626 -0
- package/src/sap/fe/core/{actions → controllerextensions/messageHandler}/messageHandling.ts +112 -69
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +937 -0
- package/src/sap/fe/core/{RouterProxy.ts → controllerextensions/routing/RouterProxy.ts} +72 -73
- package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +21 -18
- package/src/sap/fe/core/controls/Any.js +9 -5
- package/src/sap/fe/core/controls/Any.ts +10 -4
- package/src/sap/fe/core/controls/CommandExecution.js +21 -24
- package/src/sap/fe/core/controls/CommandExecution.ts +19 -24
- package/src/sap/fe/core/controls/ConditionalWrapper.js +2 -2
- package/src/sap/fe/core/controls/ConditionalWrapper.ts +3 -3
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +48 -43
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +51 -46
- package/src/sap/fe/core/controls/CustomQuickViewPage.js +3 -2
- package/src/sap/fe/core/controls/CustomQuickViewPage.ts +3 -2
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossDraft.fragment.xml +11 -3
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +19 -9
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +14 -8
- package/src/sap/fe/core/controls/FieldWrapper.js +2 -2
- package/src/sap/fe/core/controls/FieldWrapper.ts +3 -3
- package/src/sap/fe/core/controls/FileWrapper.js +50 -3
- package/src/sap/fe/core/controls/FileWrapper.ts +45 -12
- package/src/sap/fe/core/controls/FilterBar.js +6 -2
- package/src/sap/fe/core/controls/FilterBar.ts +13 -9
- package/src/sap/fe/core/controls/FormElementWrapper.js +12 -2
- package/src/sap/fe/core/controls/FormElementWrapper.ts +14 -3
- package/src/sap/fe/core/controls/MassEditSelect.js +33 -0
- package/src/sap/fe/core/controls/MassEditSelect.ts +41 -0
- package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +3 -3
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +16 -12
- package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +20 -22
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +3 -3
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +8 -8
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +48 -48
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +71 -76
- package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +36 -65
- package/src/sap/fe/core/controls/massEdit/MassEditField.fragment.xml +107 -0
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +551 -36
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +605 -36
- package/src/sap/fe/core/converters/ConverterContext.js +26 -33
- package/src/sap/fe/core/converters/ConverterContext.ts +51 -60
- package/src/sap/fe/core/converters/ManifestSettings.js +2 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +17 -14
- package/src/sap/fe/core/converters/ManifestWrapper.js +59 -45
- package/src/sap/fe/core/converters/ManifestWrapper.ts +55 -45
- package/src/sap/fe/core/converters/MetaModelConverter.js +56 -67
- package/src/sap/fe/core/converters/MetaModelConverter.ts +183 -193
- package/src/sap/fe/core/converters/TemplateConverter.js +21 -20
- package/src/sap/fe/core/converters/TemplateConverter.ts +27 -24
- package/src/sap/fe/core/converters/annotations/DataField.js +73 -37
- package/src/sap/fe/core/converters/annotations/DataField.ts +121 -77
- package/src/sap/fe/core/converters/common/AnnotationConverter.js +1911 -1495
- package/src/sap/fe/core/converters/controls/Common/Action.js +51 -49
- package/src/sap/fe/core/converters/controls/Common/Action.ts +58 -54
- package/src/sap/fe/core/converters/controls/Common/Chart.js +22 -15
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +29 -27
- package/src/sap/fe/core/converters/controls/Common/Criticality.js +3 -3
- package/src/sap/fe/core/converters/controls/Common/Criticality.ts +4 -4
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +28 -28
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +40 -36
- package/src/sap/fe/core/converters/controls/Common/Form.js +30 -34
- package/src/sap/fe/core/converters/controls/Common/Form.ts +48 -58
- package/src/sap/fe/core/converters/controls/Common/KPI.js +11 -11
- package/src/sap/fe/core/converters/controls/Common/KPI.ts +35 -39
- package/src/sap/fe/core/converters/controls/Common/Table.js +318 -244
- package/src/sap/fe/core/converters/controls/Common/Table.ts +368 -297
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +135 -125
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +162 -148
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +51 -45
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +79 -67
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +28 -26
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +46 -43
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js +9 -9
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.ts +14 -13
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +67 -64
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +69 -66
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +92 -89
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +124 -120
- package/src/sap/fe/core/converters/helpers/Aggregation.js +11 -5
- package/src/sap/fe/core/converters/helpers/Aggregation.ts +25 -23
- package/src/sap/fe/core/converters/helpers/BindingHelper.js +31 -30
- package/src/sap/fe/core/converters/helpers/BindingHelper.ts +31 -29
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +4 -4
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +9 -9
- package/src/sap/fe/core/converters/helpers/ID.js +46 -46
- package/src/sap/fe/core/converters/helpers/ID.ts +25 -25
- package/src/sap/fe/core/converters/helpers/Key.js +7 -7
- package/src/sap/fe/core/converters/helpers/Key.ts +7 -7
- package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.js +1 -1
- package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.ts +4 -4
- package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +6 -6
- package/src/sap/fe/core/converters/objectPage/FormMenuActions.ts +10 -10
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +46 -62
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +54 -82
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +30 -29
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +40 -40
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +56 -55
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +65 -77
- package/src/sap/fe/core/designtime/AppComponent.designtime.js +6 -6
- package/src/sap/fe/core/designtime/AppComponent.designtime.ts +10 -8
- package/src/sap/fe/core/formatters/CollaborationFormatter.js +2 -2
- package/src/sap/fe/core/formatters/CollaborationFormatter.ts +3 -3
- package/src/sap/fe/core/formatters/FPMFormatter.js +5 -5
- package/src/sap/fe/core/formatters/FPMFormatter.ts +10 -10
- package/src/sap/fe/core/formatters/KPIFormatter.js +7 -7
- package/src/sap/fe/core/formatters/KPIFormatter.ts +10 -10
- package/src/sap/fe/core/formatters/StandardFormatter.js +89 -0
- package/src/sap/fe/core/formatters/StandardFormatter.ts +64 -0
- package/src/sap/fe/core/formatters/TableFormatter.js +83 -22
- package/src/sap/fe/core/formatters/TableFormatter.ts +80 -25
- package/src/sap/fe/core/formatters/ValueFormatter.js +8 -8
- package/src/sap/fe/core/formatters/ValueFormatter.ts +9 -9
- package/src/sap/fe/core/fpm/Component.js +2 -2
- package/src/sap/fe/core/fpm/Component.ts +1 -1
- package/src/sap/fe/core/helpers/AppStartupHelper.js +15 -15
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +37 -40
- package/src/sap/fe/core/helpers/BindingToolkit.js +1809 -0
- package/src/sap/fe/core/helpers/{BindingExpression.ts → BindingToolkit.ts} +388 -285
- package/src/sap/fe/core/helpers/ClassSupport.js +20 -11
- package/src/sap/fe/core/helpers/ClassSupport.ts +15 -10
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +2 -2
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +1 -1
- package/src/sap/fe/core/helpers/EditState.js +1 -6
- package/src/sap/fe/core/helpers/EditState.ts +5 -10
- package/src/sap/fe/core/helpers/ExcelFormatHelper.js +2 -2
- package/src/sap/fe/core/helpers/ExcelFormatHelper.ts +4 -4
- package/src/sap/fe/core/helpers/FPMHelper.js +3 -2
- package/src/sap/fe/core/helpers/FPMHelper.ts +10 -9
- package/src/sap/fe/core/helpers/KeepAliveHelper.js +31 -31
- package/src/sap/fe/core/helpers/KeepAliveHelper.ts +52 -56
- package/src/sap/fe/core/helpers/MassEditHelper.js +532 -264
- package/src/sap/fe/core/helpers/MassEditHelper.ts +560 -289
- package/src/sap/fe/core/helpers/ModelHelper.js +25 -25
- package/src/sap/fe/core/helpers/ModelHelper.ts +50 -58
- package/src/sap/fe/core/helpers/PasteHelper.js +3 -10
- package/src/sap/fe/core/helpers/PasteHelper.ts +20 -25
- package/src/sap/fe/core/helpers/SemanticDateOperators.js +1 -1
- package/src/sap/fe/core/helpers/SemanticDateOperators.ts +11 -11
- package/src/sap/fe/core/helpers/SemanticKeyHelper.js +3 -3
- package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +8 -8
- package/src/sap/fe/core/helpers/StableIdHelper.js +16 -12
- package/src/sap/fe/core/helpers/StableIdHelper.ts +20 -16
- package/src/sap/fe/core/{Synchronization.js → helpers/Synchronization.js} +1 -1
- package/src/sap/fe/core/{Synchronization.ts → helpers/Synchronization.ts} +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx.js +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx.ts +8 -8
- package/src/sap/fe/core/library.js +51 -3
- package/src/sap/fe/core/library.ts +47 -0
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +3 -3
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +2 -2
- package/src/sap/fe/core/messagebundle.properties +151 -197
- package/src/sap/fe/core/messagebundle_ar.properties +36 -63
- package/src/sap/fe/core/messagebundle_bg.properties +36 -63
- package/src/sap/fe/core/messagebundle_ca.properties +36 -63
- package/src/sap/fe/core/messagebundle_cs.properties +36 -63
- package/src/sap/fe/core/messagebundle_cy.properties +36 -63
- package/src/sap/fe/core/messagebundle_da.properties +37 -64
- package/src/sap/fe/core/messagebundle_de.properties +36 -63
- package/src/sap/fe/core/messagebundle_el.properties +38 -65
- package/src/sap/fe/core/messagebundle_en.properties +37 -64
- package/src/sap/fe/core/messagebundle_en_GB.properties +37 -64
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +44 -73
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +37 -64
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +52 -81
- package/src/sap/fe/core/messagebundle_es.properties +36 -63
- package/src/sap/fe/core/messagebundle_es_MX.properties +36 -63
- package/src/sap/fe/core/messagebundle_et.properties +36 -63
- package/src/sap/fe/core/messagebundle_fi.properties +36 -63
- package/src/sap/fe/core/messagebundle_fr.properties +39 -66
- package/src/sap/fe/core/messagebundle_fr_CA.properties +36 -63
- package/src/sap/fe/core/messagebundle_hi.properties +36 -63
- package/src/sap/fe/core/messagebundle_hr.properties +36 -63
- package/src/sap/fe/core/messagebundle_hu.properties +35 -62
- package/src/sap/fe/core/messagebundle_id.properties +37 -64
- package/src/sap/fe/core/messagebundle_it.properties +54 -81
- package/src/sap/fe/core/messagebundle_iw.properties +36 -63
- package/src/sap/fe/core/messagebundle_ja.properties +36 -63
- package/src/sap/fe/core/messagebundle_kk.properties +36 -63
- package/src/sap/fe/core/messagebundle_ko.properties +36 -63
- package/src/sap/fe/core/messagebundle_lt.properties +36 -63
- package/src/sap/fe/core/messagebundle_lv.properties +36 -63
- package/src/sap/fe/core/messagebundle_ms.properties +37 -64
- package/src/sap/fe/core/messagebundle_nl.properties +37 -64
- package/src/sap/fe/core/messagebundle_no.properties +36 -63
- package/src/sap/fe/core/messagebundle_pl.properties +37 -64
- package/src/sap/fe/core/messagebundle_pt.properties +37 -64
- package/src/sap/fe/core/messagebundle_pt_PT.properties +36 -63
- package/src/sap/fe/core/messagebundle_ro.properties +36 -63
- package/src/sap/fe/core/messagebundle_ru.properties +36 -63
- package/src/sap/fe/core/messagebundle_sh.properties +36 -63
- package/src/sap/fe/core/messagebundle_sk.properties +36 -63
- package/src/sap/fe/core/messagebundle_sl.properties +38 -65
- package/src/sap/fe/core/messagebundle_sv.properties +36 -63
- package/src/sap/fe/core/messagebundle_th.properties +36 -63
- package/src/sap/fe/core/messagebundle_tr.properties +36 -63
- package/src/sap/fe/core/messagebundle_uk.properties +37 -64
- package/src/sap/fe/core/messagebundle_vi.properties +37 -64
- package/src/sap/fe/core/messagebundle_zh_CN.properties +36 -63
- package/src/sap/fe/core/messagebundle_zh_TW.properties +37 -64
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +2 -2
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +5 -5
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +2 -2
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +14 -14
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +6 -3
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +12 -10
- package/src/sap/fe/core/services/NavigationServiceFactory.js +54 -45
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +61 -49
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js +2 -2
- package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +4 -4
- package/src/sap/fe/core/services/RoutingServiceFactory.js +63 -60
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +76 -73
- package/src/sap/fe/core/services/ShellServicesFactory.js +102 -71
- package/src/sap/fe/core/services/ShellServicesFactory.ts +109 -78
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +61 -61
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +102 -92
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +24 -18
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +53 -50
- package/src/sap/fe/core/support/CommonHelper.js +3 -2
- package/src/sap/fe/core/support/CommonHelper.ts +9 -13
- package/src/sap/fe/core/support/Diagnostics.js +1 -1
- package/src/sap/fe/core/support/Diagnostics.ts +5 -5
- package/src/sap/fe/core/templating/CommonFormatters.js +84 -0
- package/src/sap/fe/core/templating/CommonFormatters.ts +86 -0
- package/src/sap/fe/core/templating/CriticalityFormatters.js +31 -31
- package/src/sap/fe/core/templating/CriticalityFormatters.ts +42 -40
- package/src/sap/fe/core/templating/DataFieldFormatters.js +8 -8
- package/src/sap/fe/core/templating/DataFieldFormatters.ts +13 -10
- package/src/sap/fe/core/templating/DataModelPathHelper.js +16 -15
- package/src/sap/fe/core/templating/DataModelPathHelper.ts +42 -32
- package/src/sap/fe/core/templating/DisplayModeFormatter.js +1 -1
- package/src/sap/fe/core/templating/DisplayModeFormatter.ts +3 -4
- package/src/sap/fe/core/templating/EntitySetHelper.js +7 -15
- package/src/sap/fe/core/templating/EntitySetHelper.ts +14 -18
- package/src/sap/fe/core/templating/FieldControlHelper.js +35 -34
- package/src/sap/fe/core/templating/FieldControlHelper.ts +29 -46
- package/src/sap/fe/core/templating/FilterHelper.js +12 -11
- package/src/sap/fe/core/templating/FilterHelper.ts +17 -16
- package/src/sap/fe/core/templating/FilterTemplating.js +1 -1
- package/src/sap/fe/core/templating/FilterTemplating.ts +3 -3
- package/src/sap/fe/core/templating/PropertyFormatters.js +7 -7
- package/src/sap/fe/core/templating/PropertyFormatters.ts +21 -19
- package/src/sap/fe/core/templating/PropertyHelper.js +79 -56
- package/src/sap/fe/core/templating/PropertyHelper.ts +41 -27
- package/src/sap/fe/core/templating/UIFormatters.js +163 -97
- package/src/sap/fe/core/templating/UIFormatters.ts +210 -129
- package/src/sap/fe/core/type/DateTimeWithTimezone.js +47 -0
- package/src/sap/fe/core/type/DateTimeWithTimezone.ts +23 -0
- package/src/sap/fe/core/type/Email.js +2 -2
- package/src/sap/fe/core/type/Email.ts +2 -2
- package/src/sap/fe/core/AnnotationHelper.js +0 -331
- package/src/sap/fe/core/AnnotationHelper.ts +0 -321
- package/src/sap/fe/core/RouterProxy.js +0 -938
- package/src/sap/fe/core/TransactionHelper.js +0 -1577
- package/src/sap/fe/core/actions/collaboration/ActivitySync.js +0 -406
- package/src/sap/fe/core/actions/collaboration/Manage.js +0 -264
- package/src/sap/fe/core/actions/draft.js +0 -665
- package/src/sap/fe/core/actions/messageHandling.js +0 -579
- package/src/sap/fe/core/actions/nonDraft.js +0 -20
- package/src/sap/fe/core/actions/nonDraft.ts +0 -12
- package/src/sap/fe/core/actions/operations.js +0 -1096
- package/src/sap/fe/core/actions/sticky.js +0 -130
- package/src/sap/fe/core/actions/sticky.ts +0 -119
- package/src/sap/fe/core/formatters/CriticalityFormatter.js +0 -77
- package/src/sap/fe/core/formatters/CriticalityFormatter.ts +0 -58
- package/src/sap/fe/core/helpers/BindingExpression.js +0 -1729
|
@@ -1,20 +1,24 @@
|
|
|
1
|
-
import { Property } from "@sap-ux/
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import type { PrimitiveType, Property } from "@sap-ux/vocabularies-types";
|
|
2
|
+
import type { Contact } from "@sap-ux/vocabularies-types/vocabularies/Communication";
|
|
3
|
+
import { CommunicationAnnotationTypes } from "@sap-ux/vocabularies-types/vocabularies/Communication";
|
|
4
|
+
import type {
|
|
5
5
|
DataField,
|
|
6
6
|
DataFieldAbstractTypes,
|
|
7
7
|
DataFieldForActionAbstractTypes,
|
|
8
8
|
DataFieldForAnnotation,
|
|
9
9
|
DataFieldTypes,
|
|
10
|
-
DataPoint
|
|
11
|
-
|
|
12
|
-
} from "@sap-ux/vocabularies-types";
|
|
13
|
-
import
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
DataPoint
|
|
11
|
+
} from "@sap-ux/vocabularies-types/vocabularies/UI";
|
|
12
|
+
import { UIAnnotationTypes } from "@sap-ux/vocabularies-types/vocabularies/UI";
|
|
13
|
+
import type { TableType } from "sap/fe/core/converters/controls/Common/Table";
|
|
14
|
+
import { getDisplayMode } from "sap/fe/core/templating/DisplayModeFormatter";
|
|
15
|
+
import {
|
|
16
|
+
getAssociatedCurrencyProperty,
|
|
17
|
+
getAssociatedTimezoneProperty,
|
|
18
|
+
getAssociatedUnitProperty,
|
|
19
|
+
isProperty
|
|
20
|
+
} from "sap/fe/core/templating/PropertyHelper";
|
|
21
|
+
import type ConverterContext from "../ConverterContext";
|
|
18
22
|
|
|
19
23
|
export type ComplexPropertyInfo = {
|
|
20
24
|
properties: Record<string, Property>;
|
|
@@ -25,14 +29,16 @@ export type ComplexPropertyInfo = {
|
|
|
25
29
|
visualSettingsToBeExcluded?: string;
|
|
26
30
|
exportUnitName?: string;
|
|
27
31
|
exportUnitString?: string;
|
|
32
|
+
exportTimezoneName?: string;
|
|
33
|
+
exportTimezoneString?: string;
|
|
28
34
|
};
|
|
29
35
|
|
|
30
36
|
/**
|
|
31
37
|
* Identifies if the given dataFieldAbstract that is passed is a "DataFieldForActionAbstract".
|
|
32
38
|
* DataFieldForActionAbstract has an inline action defined.
|
|
33
39
|
*
|
|
34
|
-
* @param
|
|
35
|
-
* @returns
|
|
40
|
+
* @param dataField DataField to be evaluated
|
|
41
|
+
* @returns Validates that dataField is a DataFieldForActionAbstractType
|
|
36
42
|
*/
|
|
37
43
|
export function isDataFieldForActionAbstract(dataField: DataFieldAbstractTypes): dataField is DataFieldForActionAbstractTypes {
|
|
38
44
|
return (dataField as DataFieldForActionAbstractTypes).hasOwnProperty("Action");
|
|
@@ -42,8 +48,8 @@ export function isDataFieldForActionAbstract(dataField: DataFieldAbstractTypes):
|
|
|
42
48
|
* Identifies if the given dataFieldAbstract that is passed is a "DataField".
|
|
43
49
|
* DataField has a value defined.
|
|
44
50
|
*
|
|
45
|
-
* @param
|
|
46
|
-
* @returns
|
|
51
|
+
* @param dataField DataField to be evaluated
|
|
52
|
+
* @returns Validate that dataField is a DataFieldTypes
|
|
47
53
|
*/
|
|
48
54
|
export function isDataFieldTypes(dataField: DataFieldAbstractTypes): dataField is DataFieldTypes {
|
|
49
55
|
return (dataField as DataFieldTypes).hasOwnProperty("Value");
|
|
@@ -52,8 +58,8 @@ export function isDataFieldTypes(dataField: DataFieldAbstractTypes): dataField i
|
|
|
52
58
|
/**
|
|
53
59
|
* Returns whether given DataField has a static hidden annotation.
|
|
54
60
|
*
|
|
55
|
-
* @param
|
|
56
|
-
* @returns
|
|
61
|
+
* @param dataField The DataField to check
|
|
62
|
+
* @returns `true` if DataField or referenced property has a static Hidden annotation, false else
|
|
57
63
|
* @private
|
|
58
64
|
*/
|
|
59
65
|
export function isDataFieldAlwaysHidden(dataField: DataFieldAbstractTypes): boolean {
|
|
@@ -83,7 +89,7 @@ export function getSemanticObjectPath(converterContext: ConverterContext, object
|
|
|
83
89
|
* Returns the navigation path prefix for a property path.
|
|
84
90
|
*
|
|
85
91
|
* @param path The property path For e.g. /EntityType/Navigation/Property
|
|
86
|
-
* @returns
|
|
92
|
+
* @returns The navigation path prefix For e.g. /EntityType/Navigation/
|
|
87
93
|
*/
|
|
88
94
|
function _getNavigationPathPrefix(path: string): string {
|
|
89
95
|
return path.indexOf("/") > -1 ? path.substring(0, path.lastIndexOf("/") + 1) : "";
|
|
@@ -93,14 +99,15 @@ function _getNavigationPathPrefix(path: string): string {
|
|
|
93
99
|
* Collect additional properties for the ALP table use-case.
|
|
94
100
|
*
|
|
95
101
|
* For e.g. If UI.Hidden points to a property, include this property in the additionalProperties of ComplexPropertyInfo object.
|
|
102
|
+
*
|
|
96
103
|
* @param target Property or DataField being processed
|
|
97
104
|
* @param navigationPathPrefix Navigation path prefix, applicable in case of navigation properties.
|
|
98
105
|
* @param tableType Table type.
|
|
99
106
|
* @param relatedProperties The related properties identified so far.
|
|
100
|
-
* @returns
|
|
107
|
+
* @returns The related properties identified.
|
|
101
108
|
*/
|
|
102
109
|
function _collectAdditionalPropertiesForAnalyticalTable(
|
|
103
|
-
target:
|
|
110
|
+
target: PrimitiveType,
|
|
104
111
|
navigationPathPrefix: string,
|
|
105
112
|
tableType: TableType,
|
|
106
113
|
relatedProperties: ComplexPropertyInfo
|
|
@@ -126,11 +133,11 @@ function _collectAdditionalPropertiesForAnalyticalTable(
|
|
|
126
133
|
* @param tableType The table type.
|
|
127
134
|
* @param relatedProperties The related properties identified so far.
|
|
128
135
|
* @param addUnitInTemplate True if the unit/currency property needs to be added in the export template
|
|
129
|
-
* @returns
|
|
136
|
+
* @returns The related properties identified.
|
|
130
137
|
*/
|
|
131
138
|
export function collectRelatedProperties(
|
|
132
139
|
path: string,
|
|
133
|
-
property:
|
|
140
|
+
property: PrimitiveType,
|
|
134
141
|
converterContext: ConverterContext,
|
|
135
142
|
ignoreSelf: boolean,
|
|
136
143
|
tableType: TableType,
|
|
@@ -170,6 +177,7 @@ export function collectRelatedProperties(
|
|
|
170
177
|
let valueIndex: number;
|
|
171
178
|
let targetValue: string;
|
|
172
179
|
let currencyOrUoMIndex: number;
|
|
180
|
+
let timezoneOrUoMIndex: number;
|
|
173
181
|
|
|
174
182
|
if (relatedProperties.exportSettingsTemplate) {
|
|
175
183
|
// FieldGroup use-case. Need to add each Field in new line.
|
|
@@ -181,7 +189,7 @@ export function collectRelatedProperties(
|
|
|
181
189
|
// Check for Text Arrangement.
|
|
182
190
|
const dataModelObjectPath = converterContext.getDataModelObjectPath();
|
|
183
191
|
const textAnnotationPropertyPath = navigationPathPrefix + textAnnotation.path;
|
|
184
|
-
const displayMode = getDisplayMode(property
|
|
192
|
+
const displayMode = getDisplayMode(property, dataModelObjectPath);
|
|
185
193
|
let descriptionIndex: number;
|
|
186
194
|
switch (displayMode) {
|
|
187
195
|
case "Value":
|
|
@@ -208,11 +216,15 @@ export function collectRelatedProperties(
|
|
|
208
216
|
descriptionIndex = _pushUnique(textAnnotationPropertyPath, textAnnotation.$target);
|
|
209
217
|
_appendTemplate(`{${descriptionIndex}} ({${valueIndex}})`);
|
|
210
218
|
break;
|
|
219
|
+
// no default
|
|
211
220
|
}
|
|
212
221
|
} else {
|
|
213
|
-
// Check for field containing Currency Or Unit Properties
|
|
222
|
+
// Check for field containing Currency Or Unit Properties or Timezone
|
|
214
223
|
const currencyOrUoMProperty = getAssociatedCurrencyProperty(property) || getAssociatedUnitProperty(property);
|
|
215
224
|
const currencyOrUnitAnnotation = property?.annotations?.Measures?.ISOCurrency || property?.annotations?.Measures?.Unit;
|
|
225
|
+
const timezoneProperty = getAssociatedTimezoneProperty(property);
|
|
226
|
+
const timezoneAnnotation = property?.annotations?.Common?.Timezone;
|
|
227
|
+
|
|
216
228
|
if (currencyOrUoMProperty && currencyOrUnitAnnotation?.$target) {
|
|
217
229
|
valueIndex = _pushUnique(path, property);
|
|
218
230
|
currencyOrUoMIndex = _pushUnique(currencyOrUoMProperty.name, currencyOrUnitAnnotation.$target);
|
|
@@ -221,8 +233,16 @@ export function collectRelatedProperties(
|
|
|
221
233
|
} else {
|
|
222
234
|
relatedProperties.exportUnitName = currencyOrUoMProperty.name;
|
|
223
235
|
}
|
|
236
|
+
} else if (timezoneProperty && timezoneAnnotation?.$target) {
|
|
237
|
+
valueIndex = _pushUnique(path, property);
|
|
238
|
+
timezoneOrUoMIndex = _pushUnique(timezoneProperty.name, timezoneAnnotation.$target);
|
|
239
|
+
if (addUnitInTemplate) {
|
|
240
|
+
_appendTemplate(`{${valueIndex}} {${timezoneOrUoMIndex}}`);
|
|
241
|
+
} else {
|
|
242
|
+
relatedProperties.exportTimezoneName = timezoneProperty.name;
|
|
243
|
+
}
|
|
224
244
|
} else if (property.Target?.$target?.Visualization) {
|
|
225
|
-
const dataPointProperty:
|
|
245
|
+
const dataPointProperty: PrimitiveType = property.Target.$target.Value.$target;
|
|
226
246
|
valueIndex = _pushUnique(path, dataPointProperty);
|
|
227
247
|
// New fake property created for the Rating/Progress Target Value. It'll be used for the export on split mode.
|
|
228
248
|
_pushUnique(property.Target.value, property.Target.$target);
|
|
@@ -230,7 +250,7 @@ export function collectRelatedProperties(
|
|
|
230
250
|
_appendTemplate(`{${valueIndex}}/${targetValue}`);
|
|
231
251
|
} else if (property.annotations?.UI?.DataFieldDefault?.Target?.$target?.$Type === UIAnnotationTypes.DataPointType) {
|
|
232
252
|
// DataPoint use-case using DataFieldDefault.
|
|
233
|
-
const dataPointDefaultProperty:
|
|
253
|
+
const dataPointDefaultProperty: PrimitiveType = property.annotations.UI.DataFieldDefault;
|
|
234
254
|
valueIndex = _pushUnique(path, property);
|
|
235
255
|
// New fake property created for the Rating/Progress Target Value. It'll be used for the export on split mode.
|
|
236
256
|
_pushUnique(dataPointDefaultProperty.Target.value, property);
|
|
@@ -249,6 +269,8 @@ export function collectRelatedProperties(
|
|
|
249
269
|
_appendTemplate(`{${valueIndex}}`);
|
|
250
270
|
if (currencyOrUnitAnnotation) {
|
|
251
271
|
relatedProperties.exportUnitString = `${currencyOrUnitAnnotation}`; // Hard-coded currency/unit
|
|
272
|
+
} else if (timezoneAnnotation) {
|
|
273
|
+
relatedProperties.exportTimezoneString = `${timezoneAnnotation}`; // Hard-coded timezone
|
|
252
274
|
}
|
|
253
275
|
}
|
|
254
276
|
}
|
|
@@ -269,12 +291,12 @@ export function collectRelatedProperties(
|
|
|
269
291
|
* Collect properties consumed by a DataField.
|
|
270
292
|
* This is for populating the ComplexPropertyInfos of the table delegate.
|
|
271
293
|
*
|
|
272
|
-
* @param
|
|
294
|
+
* @param dataField The DataField for which the properties need to be identified.
|
|
273
295
|
* @param converterContext The converter context.
|
|
274
|
-
* @param
|
|
275
|
-
* @param
|
|
276
|
-
* @param
|
|
277
|
-
* @returns
|
|
296
|
+
* @param tableType The table type.
|
|
297
|
+
* @param relatedProperties The properties identified so far.
|
|
298
|
+
* @param isEmbedded True if the DataField is embedded in another annotation (e.g. FieldGroup).
|
|
299
|
+
* @returns The properties related to the DataField.
|
|
278
300
|
*/
|
|
279
301
|
export function collectRelatedPropertiesRecursively(
|
|
280
302
|
dataField: DataFieldAbstractTypes,
|
|
@@ -283,57 +305,79 @@ export function collectRelatedPropertiesRecursively(
|
|
|
283
305
|
relatedProperties: ComplexPropertyInfo = { properties: {}, additionalProperties: {} },
|
|
284
306
|
isEmbedded: boolean = false
|
|
285
307
|
): ComplexPropertyInfo {
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
308
|
+
switch (dataField?.$Type) {
|
|
309
|
+
case UIAnnotationTypes.DataField:
|
|
310
|
+
case UIAnnotationTypes.DataFieldWithUrl:
|
|
311
|
+
case UIAnnotationTypes.DataFieldWithNavigationPath:
|
|
312
|
+
case UIAnnotationTypes.DataFieldWithIntentBasedNavigation:
|
|
313
|
+
case UIAnnotationTypes.DataFieldWithAction:
|
|
314
|
+
const property = dataField.Value;
|
|
315
|
+
relatedProperties = collectRelatedProperties(
|
|
316
|
+
property.path,
|
|
317
|
+
property.$target,
|
|
318
|
+
converterContext,
|
|
319
|
+
false,
|
|
320
|
+
tableType,
|
|
321
|
+
relatedProperties,
|
|
322
|
+
isEmbedded
|
|
323
|
+
);
|
|
324
|
+
const navigationPathPrefix = _getNavigationPathPrefix(property.path);
|
|
325
|
+
relatedProperties = _collectAdditionalPropertiesForAnalyticalTable(
|
|
326
|
+
dataField,
|
|
327
|
+
navigationPathPrefix,
|
|
328
|
+
tableType,
|
|
329
|
+
relatedProperties
|
|
330
|
+
);
|
|
331
|
+
break;
|
|
332
|
+
|
|
333
|
+
case UIAnnotationTypes.DataFieldForAction:
|
|
334
|
+
case UIAnnotationTypes.DataFieldForIntentBasedNavigation:
|
|
335
|
+
break;
|
|
336
|
+
|
|
337
|
+
case UIAnnotationTypes.DataFieldForAnnotation:
|
|
338
|
+
switch (dataField.Target?.$target?.$Type) {
|
|
339
|
+
case UIAnnotationTypes.FieldGroupType:
|
|
340
|
+
dataField.Target.$target.Data?.forEach((innerDataField: DataFieldAbstractTypes) => {
|
|
341
|
+
relatedProperties = collectRelatedPropertiesRecursively(
|
|
342
|
+
innerDataField,
|
|
343
|
+
converterContext,
|
|
344
|
+
tableType,
|
|
345
|
+
relatedProperties,
|
|
346
|
+
true
|
|
347
|
+
);
|
|
348
|
+
});
|
|
349
|
+
break;
|
|
350
|
+
|
|
351
|
+
case UIAnnotationTypes.DataPointType:
|
|
352
|
+
relatedProperties = collectRelatedProperties(
|
|
353
|
+
dataField.Target.$target.Value.path,
|
|
354
|
+
dataField,
|
|
305
355
|
converterContext,
|
|
356
|
+
false,
|
|
306
357
|
tableType,
|
|
307
358
|
relatedProperties,
|
|
308
|
-
|
|
359
|
+
isEmbedded
|
|
309
360
|
);
|
|
310
|
-
|
|
311
|
-
break;
|
|
361
|
+
break;
|
|
312
362
|
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
363
|
+
case "com.sap.vocabularies.Communication.v1.ContactType":
|
|
364
|
+
relatedProperties = collectRelatedProperties(
|
|
365
|
+
dataField.Target.value,
|
|
366
|
+
dataField,
|
|
367
|
+
converterContext,
|
|
368
|
+
false,
|
|
369
|
+
tableType,
|
|
370
|
+
relatedProperties,
|
|
371
|
+
isEmbedded
|
|
372
|
+
);
|
|
373
|
+
break;
|
|
374
|
+
default:
|
|
375
|
+
break;
|
|
376
|
+
}
|
|
377
|
+
break;
|
|
324
378
|
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
dataField.Target.value,
|
|
328
|
-
dataField,
|
|
329
|
-
converterContext,
|
|
330
|
-
false,
|
|
331
|
-
tableType,
|
|
332
|
-
relatedProperties,
|
|
333
|
-
isEmbedded
|
|
334
|
-
);
|
|
335
|
-
break;
|
|
336
|
-
}
|
|
379
|
+
default:
|
|
380
|
+
break;
|
|
337
381
|
}
|
|
338
382
|
|
|
339
383
|
return relatedProperties;
|