@sapui5/sap.fe.core 1.102.3 → 1.105.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 +6 -6
- package/src/sap/fe/core/.library +1 -1
- package/src/sap/fe/core/ActionRuntime.js +120 -0
- package/src/sap/fe/core/ActionRuntime.ts +108 -0
- package/src/sap/fe/core/AppComponent.js +81 -35
- package/src/sap/fe/core/AppComponent.ts +68 -44
- package/src/sap/fe/core/AppStateHandler.js +82 -70
- package/src/sap/fe/core/AppStateHandler.ts +32 -37
- package/src/sap/fe/core/BaseController.js +12 -10
- package/src/sap/fe/core/BaseController.ts +15 -13
- package/src/sap/fe/core/CommonUtils.js +291 -218
- package/src/sap/fe/core/CommonUtils.ts +315 -251
- package/src/sap/fe/core/ExtensionAPI.js +25 -28
- package/src/sap/fe/core/ExtensionAPI.ts +36 -38
- package/src/sap/fe/core/PageController.js +5 -5
- package/src/sap/fe/core/PageController.ts +4 -5
- package/src/sap/fe/core/TemplateComponent.js +21 -10
- package/src/sap/fe/core/TemplateComponent.ts +9 -6
- package/src/sap/fe/core/TemplateModel.js +2 -2
- package/src/sap/fe/core/TemplateModel.ts +1 -1
- package/src/sap/fe/core/buildingBlocks/AttributeModel.js +11 -3
- package/src/sap/fe/core/buildingBlocks/AttributeModel.ts +8 -2
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +197 -43
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +164 -24
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFormatter.js +14 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFormatter.ts +5 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +609 -230
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +275 -128
- package/src/sap/fe/core/buildingBlocks/TraceInfo.js +30 -30
- package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +32 -29
- package/src/sap/fe/core/controllerextensions/BusyLocker.js +1 -1
- package/src/sap/fe/core/controllerextensions/EditFlow.js +761 -700
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +478 -514
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +10 -10
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +10 -10
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +104 -75
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +71 -79
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +68 -68
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +76 -76
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +162 -102
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +177 -121
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +67 -69
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +106 -123
- package/src/sap/fe/core/controllerextensions/MassEdit.js +10 -10
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +20 -27
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +21 -13
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +21 -14
- package/src/sap/fe/core/controllerextensions/PageReady.js +98 -26
- package/src/sap/fe/core/controllerextensions/PageReady.ts +98 -34
- package/src/sap/fe/core/controllerextensions/Paginator.js +31 -32
- package/src/sap/fe/core/controllerextensions/Paginator.ts +33 -34
- package/src/sap/fe/core/controllerextensions/Placeholder.js +5 -7
- package/src/sap/fe/core/controllerextensions/Placeholder.ts +12 -14
- package/src/sap/fe/core/controllerextensions/Routing.js +11 -12
- package/src/sap/fe/core/controllerextensions/Routing.ts +12 -13
- package/src/sap/fe/core/controllerextensions/RoutingListener.js +1 -1
- package/src/sap/fe/core/controllerextensions/Share.js +171 -140
- package/src/sap/fe/core/controllerextensions/Share.ts +117 -118
- package/src/sap/fe/core/controllerextensions/SideEffects.js +47 -51
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +56 -60
- package/src/sap/fe/core/controllerextensions/ViewState.js +201 -132
- package/src/sap/fe/core/controllerextensions/ViewState.ts +141 -148
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +5 -5
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.ts +8 -7
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +13 -12
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.ts +17 -20
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +13 -12
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.ts +15 -15
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +57 -18
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.ts +60 -28
- package/src/sap/fe/core/controllerextensions/collaboration/ManageDialog.fragment.xml +29 -21
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +1424 -940
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +799 -836
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js +410 -377
- package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +275 -358
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +309 -0
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.ts +320 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations.js +752 -579
- package/src/sap/fe/core/controllerextensions/editFlow/operations.ts +631 -599
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +92 -74
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +49 -52
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +78 -41
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.ts +110 -84
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +69 -81
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.ts +64 -73
- package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +18 -2
- package/src/sap/fe/core/controls/ActionParameterDialogFieldValueHelp.fragment.xml +35 -0
- package/src/sap/fe/core/controls/ActionParameterDialogValueHelp.fragment.xml +25 -24
- 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 +12 -26
- package/src/sap/fe/core/controls/CommandExecution.ts +11 -25
- package/src/sap/fe/core/controls/ConditionalWrapper.js +3 -3
- package/src/sap/fe/core/controls/ConditionalWrapper.ts +3 -3
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +26 -26
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +25 -24
- package/src/sap/fe/core/controls/CustomQuickViewPage.js +3 -3
- package/src/sap/fe/core/controls/CustomQuickViewPage.ts +2 -2
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +3 -3
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +5 -5
- package/src/sap/fe/core/controls/FieldWrapper.js +3 -3
- package/src/sap/fe/core/controls/FieldWrapper.ts +3 -3
- package/src/sap/fe/core/controls/FileWrapper.js +9 -4
- package/src/sap/fe/core/controls/FileWrapper.ts +16 -12
- package/src/sap/fe/core/controls/FilterBar.js +7 -3
- package/src/sap/fe/core/controls/FilterBar.ts +13 -9
- package/src/sap/fe/core/controls/FormElementWrapper.js +2 -2
- package/src/sap/fe/core/controls/FormElementWrapper.ts +2 -2
- package/src/sap/fe/core/controls/MassEditSelect.js +1 -1
- package/src/sap/fe/core/controls/MassEditSelect.ts +0 -4
- package/src/sap/fe/core/controls/MultiValueParameterDelegate.js +1 -1
- package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +44 -19
- package/src/sap/fe/core/controls/filterbar/FilterContainer.js +2 -2
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +17 -13
- package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +20 -22
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +4 -4
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +8 -8
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +49 -49
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +54 -54
- package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +8 -2
- package/src/sap/fe/core/controls/massEdit/MassEditField.fragment.xml +22 -35
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +89 -88
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +107 -106
- package/src/sap/fe/core/converters/ConverterContext.js +48 -34
- package/src/sap/fe/core/converters/ConverterContext.ts +81 -67
- package/src/sap/fe/core/converters/ManifestSettings.js +1 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +18 -15
- 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 +74 -40
- package/src/sap/fe/core/converters/MetaModelConverter.ts +176 -140
- 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 +58 -35
- package/src/sap/fe/core/converters/annotations/DataField.ts +102 -76
- package/src/sap/fe/core/converters/common/AnnotationConverter.js +1956 -1494
- package/src/sap/fe/core/converters/controls/Common/Action.js +78 -51
- package/src/sap/fe/core/converters/controls/Common/Action.ts +87 -52
- package/src/sap/fe/core/converters/controls/Common/Chart.js +22 -16
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +42 -43
- 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 +65 -29
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +93 -62
- package/src/sap/fe/core/converters/controls/Common/Form.js +31 -31
- package/src/sap/fe/core/converters/controls/Common/Form.ts +46 -57
- package/src/sap/fe/core/converters/controls/Common/KPI.js +11 -11
- package/src/sap/fe/core/converters/controls/Common/KPI.ts +49 -52
- package/src/sap/fe/core/converters/controls/Common/Table.js +251 -264
- package/src/sap/fe/core/converters/controls/Common/Table.ts +344 -370
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +119 -119
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +147 -144
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +89 -59
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +118 -71
- 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 +131 -95
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +123 -87
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +98 -87
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +121 -117
- package/src/sap/fe/core/converters/helpers/Aggregation.js +2 -4
- package/src/sap/fe/core/converters/helpers/Aggregation.ts +12 -15
- package/src/sap/fe/core/converters/helpers/BindingHelper.js +31 -31
- package/src/sap/fe/core/converters/helpers/BindingHelper.ts +30 -29
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +8 -6
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +18 -10
- package/src/sap/fe/core/converters/helpers/DataFieldHelper.js +136 -0
- package/src/sap/fe/core/converters/helpers/DataFieldHelper.ts +139 -0
- package/src/sap/fe/core/converters/helpers/ID.js +48 -46
- package/src/sap/fe/core/converters/helpers/ID.ts +26 -25
- package/src/sap/fe/core/converters/helpers/IssueManager.js +1 -1
- 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 -5
- 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 +53 -75
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +59 -90
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +58 -57
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +93 -86
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +58 -44
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +87 -80
- package/src/sap/fe/core/designtime/AppComponent.designtime.js +4 -4
- package/src/sap/fe/core/designtime/AppComponent.designtime.ts +4 -4
- 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 +96 -0
- package/src/sap/fe/core/formatters/StandardFormatter.ts +70 -0
- package/src/sap/fe/core/formatters/TableFormatter.js +11 -11
- package/src/sap/fe/core/formatters/TableFormatter.ts +12 -12
- package/src/sap/fe/core/formatters/TableFormatterTypes.js +1 -1
- 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 +33 -7
- package/src/sap/fe/core/fpm/Component.ts +14 -0
- package/src/sap/fe/core/helpers/AnnotationEnum.js +1 -1
- package/src/sap/fe/core/helpers/AppStartupHelper.js +19 -18
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +41 -43
- package/src/sap/fe/core/helpers/BindingToolkit.js +1836 -0
- package/src/sap/fe/core/helpers/{BindingExpression.ts → BindingToolkit.ts} +397 -270
- package/src/sap/fe/core/helpers/ClassSupport.js +49 -12
- package/src/sap/fe/core/helpers/ClassSupport.ts +37 -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 +1 -1
- package/src/sap/fe/core/helpers/FPMHelper.ts +2 -2
- 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/KeepAliveRefreshTypes.js +1 -1
- package/src/sap/fe/core/helpers/MassEditHelper.js +306 -280
- package/src/sap/fe/core/helpers/MassEditHelper.ts +380 -360
- package/src/sap/fe/core/helpers/MessageStrip.js +81 -0
- package/src/sap/fe/core/helpers/MessageStrip.ts +79 -0
- package/src/sap/fe/core/helpers/ModelHelper.js +25 -25
- package/src/sap/fe/core/helpers/ModelHelper.ts +34 -32
- 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 +12 -12
- package/src/sap/fe/core/helpers/StableIdHelper.ts +12 -12
- package/src/sap/fe/core/helpers/Synchronization.js +1 -1
- package/src/sap/fe/core/helpers/ToES6Promise.js +32 -0
- package/src/sap/fe/core/helpers/ToES6Promise.ts +19 -0
- package/src/sap/fe/core/jsx-runtime/Fragment.js +16 -0
- package/src/sap/fe/core/jsx-runtime/Fragment.ts +3 -0
- package/src/sap/fe/core/jsx-runtime/ViewLoader.js +109 -0
- package/src/sap/fe/core/jsx-runtime/ViewLoader.tsx +47 -0
- package/src/sap/fe/core/jsx-runtime/jsx-control.js +110 -0
- package/src/sap/fe/core/jsx-runtime/jsx-control.ts +92 -0
- package/src/sap/fe/core/jsx-runtime/jsx-xml.js +105 -0
- package/src/sap/fe/core/jsx-runtime/jsx-xml.ts +89 -0
- package/src/sap/fe/core/jsx-runtime/jsx.js +12 -90
- package/src/sap/fe/core/jsx-runtime/jsx.ts +24 -85
- package/src/sap/fe/core/jsx-runtime/jsxs.js +1 -1
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.js +179 -0
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.tsx +150 -0
- package/src/sap/fe/core/library.js +42 -3
- package/src/sap/fe/core/library.support.js +1 -1
- package/src/sap/fe/core/library.ts +38 -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 +39 -67
- package/src/sap/fe/core/messagebundle_ar.properties +27 -44
- package/src/sap/fe/core/messagebundle_bg.properties +27 -44
- package/src/sap/fe/core/messagebundle_ca.properties +27 -44
- package/src/sap/fe/core/messagebundle_cs.properties +27 -44
- package/src/sap/fe/core/messagebundle_cy.properties +26 -43
- package/src/sap/fe/core/messagebundle_da.properties +27 -44
- package/src/sap/fe/core/messagebundle_de.properties +25 -42
- package/src/sap/fe/core/messagebundle_el.properties +28 -45
- package/src/sap/fe/core/messagebundle_en.properties +27 -44
- package/src/sap/fe/core/messagebundle_en_GB.properties +27 -44
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +25 -42
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +26 -40
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +25 -42
- package/src/sap/fe/core/messagebundle_es.properties +27 -44
- package/src/sap/fe/core/messagebundle_es_MX.properties +27 -44
- package/src/sap/fe/core/messagebundle_et.properties +27 -44
- package/src/sap/fe/core/messagebundle_fi.properties +27 -44
- package/src/sap/fe/core/messagebundle_fr.properties +26 -43
- package/src/sap/fe/core/messagebundle_fr_CA.properties +25 -42
- package/src/sap/fe/core/messagebundle_hi.properties +27 -44
- package/src/sap/fe/core/messagebundle_hr.properties +27 -44
- package/src/sap/fe/core/messagebundle_hu.properties +27 -44
- package/src/sap/fe/core/messagebundle_id.properties +27 -44
- package/src/sap/fe/core/messagebundle_it.properties +43 -60
- package/src/sap/fe/core/messagebundle_iw.properties +27 -44
- package/src/sap/fe/core/messagebundle_ja.properties +27 -44
- package/src/sap/fe/core/messagebundle_kk.properties +27 -44
- package/src/sap/fe/core/messagebundle_ko.properties +30 -47
- package/src/sap/fe/core/messagebundle_lt.properties +27 -44
- package/src/sap/fe/core/messagebundle_lv.properties +27 -44
- package/src/sap/fe/core/messagebundle_ms.properties +27 -44
- package/src/sap/fe/core/messagebundle_nl.properties +29 -46
- package/src/sap/fe/core/messagebundle_no.properties +27 -44
- package/src/sap/fe/core/messagebundle_pl.properties +28 -45
- package/src/sap/fe/core/messagebundle_pt.properties +28 -45
- package/src/sap/fe/core/messagebundle_pt_PT.properties +27 -44
- package/src/sap/fe/core/messagebundle_ro.properties +27 -44
- package/src/sap/fe/core/messagebundle_ru.properties +27 -44
- package/src/sap/fe/core/messagebundle_sh.properties +27 -44
- package/src/sap/fe/core/messagebundle_sk.properties +27 -44
- package/src/sap/fe/core/messagebundle_sl.properties +27 -44
- package/src/sap/fe/core/messagebundle_sv.properties +27 -44
- package/src/sap/fe/core/messagebundle_th.properties +25 -42
- package/src/sap/fe/core/messagebundle_tr.properties +27 -44
- package/src/sap/fe/core/messagebundle_uk.properties +27 -44
- package/src/sap/fe/core/messagebundle_vi.properties +27 -44
- package/src/sap/fe/core/messagebundle_zh_CN.properties +27 -44
- package/src/sap/fe/core/messagebundle_zh_TW.properties +27 -44
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +3 -3
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +5 -5
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +103 -75
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +72 -73
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +2 -2
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +3 -2
- package/src/sap/fe/core/services/NavigationServiceFactory.js +62 -50
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +63 -52
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js +3 -3
- package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +4 -4
- package/src/sap/fe/core/services/RoutingServiceFactory.js +56 -56
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +67 -65
- package/src/sap/fe/core/services/ShellServicesFactory.js +93 -77
- package/src/sap/fe/core/services/ShellServicesFactory.ts +95 -82
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +64 -64
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +102 -92
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +232 -200
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +145 -142
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +2 -2
- package/src/sap/fe/core/support/AnnotationIssue.support.js +1 -1
- package/src/sap/fe/core/support/CollectionFacetMissingID.support.js +1 -1
- package/src/sap/fe/core/support/CollectionFacetUnsupportedLevel.support.js +1 -1
- 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/support/InvalidAnnotationColumnKey.support.js +1 -1
- package/src/sap/fe/core/templating/CommonFormatters.js +85 -0
- package/src/sap/fe/core/templating/CommonFormatters.ts +90 -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 +23 -15
- package/src/sap/fe/core/templating/DataModelPathHelper.ts +47 -34
- package/src/sap/fe/core/templating/DisplayModeFormatter.js +1 -1
- package/src/sap/fe/core/templating/DisplayModeFormatter.ts +2 -3
- package/src/sap/fe/core/templating/EntitySetHelper.js +7 -7
- package/src/sap/fe/core/templating/EntitySetHelper.ts +6 -8
- 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 +18 -17
- package/src/sap/fe/core/templating/FilterHelper.ts +18 -18
- 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 +25 -25
- package/src/sap/fe/core/templating/PropertyHelper.ts +25 -26
- package/src/sap/fe/core/templating/UIFormatters.js +152 -95
- package/src/sap/fe/core/templating/UIFormatters.ts +202 -128
- package/src/sap/fe/core/type/DateTimeWithTimezone.js +2 -2
- package/src/sap/fe/core/type/Email.js +3 -3
- package/src/sap/fe/core/type/Email.ts +2 -2
- package/src/sap/fe/core/helpers/BindingExpression.js +0 -1732
|
@@ -11,24 +11,24 @@
|
|
|
11
11
|
import Log from "sap/base/Log";
|
|
12
12
|
import ModelHelper from "sap/fe/core/helpers/ModelHelper";
|
|
13
13
|
import ValueListHelper from "sap/fe/macros/internal/valuehelp/ValueListHelper";
|
|
14
|
-
import ComboBox from "sap/m/ComboBox";
|
|
15
|
-
import Select from "sap/m/Select";
|
|
16
|
-
import Control from "sap/ui/core/Control";
|
|
14
|
+
import type ComboBox from "sap/m/ComboBox";
|
|
15
|
+
import type Select from "sap/m/Select";
|
|
16
|
+
import type Control from "sap/ui/core/Control";
|
|
17
17
|
import Core from "sap/ui/core/Core";
|
|
18
|
-
import Field from "sap/ui/mdc/Field";
|
|
19
|
-
import InParameter from "sap/ui/mdc/field/InParameter";
|
|
20
|
-
import OutParameter from "sap/ui/mdc/field/OutParameter";
|
|
21
|
-
import JSONModel from "sap/ui/model/json/JSONModel";
|
|
22
|
-
import Context from "sap/ui/model/odata/v4/Context";
|
|
18
|
+
import type Field from "sap/ui/mdc/Field";
|
|
19
|
+
import type InParameter from "sap/ui/mdc/field/InParameter";
|
|
20
|
+
import type OutParameter from "sap/ui/mdc/field/OutParameter";
|
|
21
|
+
import type JSONModel from "sap/ui/model/json/JSONModel";
|
|
22
|
+
import type Context from "sap/ui/model/odata/v4/Context";
|
|
23
23
|
|
|
24
24
|
const MassEditHandlers: any = {
|
|
25
25
|
/**
|
|
26
26
|
* Called for property change in the transient context.
|
|
27
27
|
*
|
|
28
28
|
* @function
|
|
29
|
-
* @param
|
|
30
|
-
* @param
|
|
31
|
-
* @param
|
|
29
|
+
* @param newValue New value of the property.
|
|
30
|
+
* @param dataProperty Final context returned after the paginator action
|
|
31
|
+
* @param mdcFieldId Final context returned after the paginator action
|
|
32
32
|
*/
|
|
33
33
|
contextPropertyChange: function (newValue: any, dataProperty: string, mdcFieldId: string) {
|
|
34
34
|
// Called for
|
|
@@ -39,7 +39,7 @@ const MassEditHandlers: any = {
|
|
|
39
39
|
const transCtx = source && (source.getBindingContext() as Context);
|
|
40
40
|
const fieldInfoModel = source && (source.getModel("fieldsInfo") as JSONModel);
|
|
41
41
|
const values =
|
|
42
|
-
fieldInfoModel.getProperty(
|
|
42
|
+
fieldInfoModel.getProperty(`/values/${dataProperty}`) || fieldInfoModel.getProperty(`/unitData/${dataProperty}`) || [];
|
|
43
43
|
|
|
44
44
|
if (transCtx && (values.inputType === "InputWithValueHelp" || values.inputType === "InputWithUnit") && !values.valueListInfo) {
|
|
45
45
|
MassEditHandlers._setValueListInfo(transCtx, source, fieldInfoModel, dataProperty);
|
|
@@ -59,8 +59,8 @@ const MassEditHandlers: any = {
|
|
|
59
59
|
* This is not called on change of the dropdown as we are using a custom MassEditSelect control and not general Select.
|
|
60
60
|
*
|
|
61
61
|
* @function
|
|
62
|
-
* @param
|
|
63
|
-
* @param
|
|
62
|
+
* @param event Event object for change.
|
|
63
|
+
* @param propertyName Property path.
|
|
64
64
|
*/
|
|
65
65
|
handleMDCFieldChange: function (event: any, propertyName: string) {
|
|
66
66
|
// Called for
|
|
@@ -76,7 +76,7 @@ const MassEditHandlers: any = {
|
|
|
76
76
|
changePromise
|
|
77
77
|
.then(MassEditHandlers._updateSelectKeyForMDCFieldChange.bind(MassEditHandlers, source, propertyName))
|
|
78
78
|
.catch((err: any) => {
|
|
79
|
-
Log.warning(
|
|
79
|
+
Log.warning(`VHD selection couldn't be populated in the mass edit field.${err}`);
|
|
80
80
|
});
|
|
81
81
|
},
|
|
82
82
|
|
|
@@ -84,14 +84,14 @@ const MassEditHandlers: any = {
|
|
|
84
84
|
* Called for selection change through the drop down.
|
|
85
85
|
*
|
|
86
86
|
* @function
|
|
87
|
-
* @param
|
|
87
|
+
* @param event Event object for change.
|
|
88
88
|
*/
|
|
89
89
|
handleSelectionChange: function (event: any) {
|
|
90
90
|
// Called for Manual selection from dropdown(comboBox or select)
|
|
91
91
|
// 1. VHD select.
|
|
92
92
|
// 2. Any value change in the control.
|
|
93
93
|
|
|
94
|
-
const source =
|
|
94
|
+
const source = event && event.getSource();
|
|
95
95
|
const key = source.getSelectedKey() as string;
|
|
96
96
|
const params = source && key && key.split("/");
|
|
97
97
|
let propertyName;
|
|
@@ -125,15 +125,15 @@ const MassEditHandlers: any = {
|
|
|
125
125
|
* Update selections to results and the suggests in drop downs.
|
|
126
126
|
*
|
|
127
127
|
* @function
|
|
128
|
-
* @param
|
|
129
|
-
* @param
|
|
130
|
-
* @param
|
|
128
|
+
* @param source MDC field that was changed.
|
|
129
|
+
* @param propertyName Property path.
|
|
130
|
+
* @param value New value.
|
|
131
131
|
*/
|
|
132
132
|
_updateSelectKeyForMDCFieldChange: function (source: any, propertyName: string, value: any): void {
|
|
133
133
|
const transCtx = source && source.getBindingContext();
|
|
134
134
|
const fieldInfoModel = source && (source.getModel("fieldsInfo") as JSONModel);
|
|
135
135
|
const values =
|
|
136
|
-
fieldInfoModel.getProperty(
|
|
136
|
+
fieldInfoModel.getProperty(`/values/${propertyName}`) || fieldInfoModel.getProperty(`/unitData/${propertyName}`) || [];
|
|
137
137
|
|
|
138
138
|
if (transCtx && (values.inputType === "InputWithValueHelp" || values.inputType === "InputWithUnit") && !values.valueListInfo) {
|
|
139
139
|
MassEditHandlers._setValueListInfo(transCtx, source, fieldInfoModel, propertyName);
|
|
@@ -150,10 +150,10 @@ const MassEditHandlers: any = {
|
|
|
150
150
|
* Update suggests for all drop downs with InParameter as the propertyName.
|
|
151
151
|
*
|
|
152
152
|
* @function
|
|
153
|
-
* @param
|
|
154
|
-
* @param
|
|
155
|
-
* @param
|
|
156
|
-
* @param
|
|
153
|
+
* @param fieldInfoModel Runtime model with parameters store information.
|
|
154
|
+
* @param propertyName Property path.
|
|
155
|
+
* @param resetValues Should the values be reset to original state.
|
|
156
|
+
* @param keepExistingSelection Should the existing selection before update remain.
|
|
157
157
|
*/
|
|
158
158
|
_updateSuggestionForFieldsWithInParameters: function (
|
|
159
159
|
fieldInfoModel: JSONModel,
|
|
@@ -192,12 +192,12 @@ const MassEditHandlers: any = {
|
|
|
192
192
|
* Update suggests for a drop down with InParameter as the srcPropertyName.
|
|
193
193
|
*
|
|
194
194
|
* @function
|
|
195
|
-
* @param
|
|
196
|
-
* @param
|
|
197
|
-
* @param
|
|
198
|
-
* @param
|
|
199
|
-
* @param
|
|
200
|
-
* @param
|
|
195
|
+
* @param fieldInfoModel Runtime model with parameters store information.
|
|
196
|
+
* @param pathPrefix Path in the runtime model.
|
|
197
|
+
* @param srcPropertyName The InParameter Property path.
|
|
198
|
+
* @param resetValues Should the values be reset to original state.
|
|
199
|
+
* @param keepExistingSelection Should the existing selection before update remain.
|
|
200
|
+
* @param propertyName Property path that needs update of suggestions.
|
|
201
201
|
*/
|
|
202
202
|
_updateInParameterSuggetions: function (
|
|
203
203
|
fieldInfoModel: JSONModel,
|
|
@@ -207,7 +207,7 @@ const MassEditHandlers: any = {
|
|
|
207
207
|
keepExistingSelection: boolean,
|
|
208
208
|
propertyName: string
|
|
209
209
|
) {
|
|
210
|
-
const valueListInfo = fieldInfoModel.getProperty(pathPrefix + propertyName
|
|
210
|
+
const valueListInfo = fieldInfoModel.getProperty(`${pathPrefix + propertyName}/valueListInfo`);
|
|
211
211
|
if (valueListInfo && srcPropertyName != propertyName) {
|
|
212
212
|
const inParameters = valueListInfo.inParameters;
|
|
213
213
|
if (inParameters && inParameters.length > 0 && inParameters.includes(srcPropertyName)) {
|
|
@@ -220,10 +220,10 @@ const MassEditHandlers: any = {
|
|
|
220
220
|
* Update suggests for all OutParameter's drop downs of the propertyName.
|
|
221
221
|
*
|
|
222
222
|
* @function
|
|
223
|
-
* @param
|
|
224
|
-
* @param
|
|
225
|
-
* @param
|
|
226
|
-
* @param
|
|
223
|
+
* @param fieldInfoModel Runtime model with parameters store information.
|
|
224
|
+
* @param propertyName Property path.
|
|
225
|
+
* @param resetValues Should the values be reset to original state.
|
|
226
|
+
* @param keepExistingSelection Should the existing selection before update remain.
|
|
227
227
|
*/
|
|
228
228
|
_updateSuggestionForFieldsWithOutParameters: function (
|
|
229
229
|
fieldInfoModel: JSONModel,
|
|
@@ -232,17 +232,19 @@ const MassEditHandlers: any = {
|
|
|
232
232
|
keepExistingSelection: boolean
|
|
233
233
|
): void {
|
|
234
234
|
const valueListInfo =
|
|
235
|
-
fieldInfoModel.getProperty(
|
|
236
|
-
fieldInfoModel.getProperty(
|
|
235
|
+
fieldInfoModel.getProperty(`/values/${propertyName}/valueListInfo`) ||
|
|
236
|
+
fieldInfoModel.getProperty(`/unitData/${propertyName}/valueListInfo`);
|
|
237
237
|
|
|
238
238
|
if (valueListInfo && valueListInfo.outParameters) {
|
|
239
239
|
const outParameters = valueListInfo.outParameters;
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
240
|
+
if (outParameters.length && outParameters.length > 0) {
|
|
241
|
+
MassEditHandlers._updateOutParameterSuggetions(outParameters, fieldInfoModel, resetValues, keepExistingSelection);
|
|
242
|
+
const pathPrefix =
|
|
243
|
+
(fieldInfoModel.getProperty(`/values/${propertyName}`) && `/values/${propertyName}`) ||
|
|
244
|
+
(fieldInfoModel.getProperty(`/unitData/${propertyName}`) && `/unitData/${propertyName}`);
|
|
245
|
+
if (pathPrefix) {
|
|
246
|
+
MassEditHandlers._updateFieldPathSuggestions(fieldInfoModel, pathPrefix, false, true);
|
|
247
|
+
}
|
|
246
248
|
}
|
|
247
249
|
}
|
|
248
250
|
},
|
|
@@ -251,10 +253,10 @@ const MassEditHandlers: any = {
|
|
|
251
253
|
* Update suggests for a drop down with InParameter as the srcPropertyName.
|
|
252
254
|
*
|
|
253
255
|
* @function
|
|
254
|
-
* @param
|
|
255
|
-
* @param
|
|
256
|
-
* @param
|
|
257
|
-
* @param
|
|
256
|
+
* @param outParameters String arrary of OutParameter property paths.
|
|
257
|
+
* @param fieldInfoModel Runtime model with parameters store information.
|
|
258
|
+
* @param resetValues Should the values be reset to original state.
|
|
259
|
+
* @param keepExistingSelection Should the existing selection before update remain.
|
|
258
260
|
*/
|
|
259
261
|
_updateOutParameterSuggetions: function (
|
|
260
262
|
outParameters: string[],
|
|
@@ -269,11 +271,11 @@ const MassEditHandlers: any = {
|
|
|
269
271
|
|
|
270
272
|
outParameters.forEach((outParameter: string) => {
|
|
271
273
|
if (fieldPaths.includes(outParameter)) {
|
|
272
|
-
MassEditHandlers._updateFieldPathSuggestions(fieldInfoModel,
|
|
274
|
+
MassEditHandlers._updateFieldPathSuggestions(fieldInfoModel, `/values/${outParameter}`, resetValues, keepExistingSelection);
|
|
273
275
|
} else if (unitFieldPaths.includes(outParameter)) {
|
|
274
276
|
MassEditHandlers._updateFieldPathSuggestions(
|
|
275
277
|
fieldInfoModel,
|
|
276
|
-
|
|
278
|
+
`/unitData/${outParameter}`,
|
|
277
279
|
resetValues,
|
|
278
280
|
keepExistingSelection
|
|
279
281
|
);
|
|
@@ -285,10 +287,10 @@ const MassEditHandlers: any = {
|
|
|
285
287
|
* Update suggests for a drop down of a field.
|
|
286
288
|
*
|
|
287
289
|
* @function
|
|
288
|
-
* @param
|
|
289
|
-
* @param
|
|
290
|
-
* @param
|
|
291
|
-
* @param
|
|
290
|
+
* @param fieldInfoModel Runtime model with parameters store information.
|
|
291
|
+
* @param fieldPathAbsolute Complete runtime property path.
|
|
292
|
+
* @param resetValues Should the values be reset to original state.
|
|
293
|
+
* @param keepExistingSelection Should the existing selection before update remain.
|
|
292
294
|
*/
|
|
293
295
|
_updateFieldPathSuggestions: function (
|
|
294
296
|
fieldInfoModel: JSONModel,
|
|
@@ -298,7 +300,7 @@ const MassEditHandlers: any = {
|
|
|
298
300
|
) {
|
|
299
301
|
const options = fieldInfoModel.getProperty(fieldPathAbsolute);
|
|
300
302
|
const defaultOptions = options.defaultOptions;
|
|
301
|
-
const selectedKey = fieldInfoModel.getProperty(fieldPathAbsolute
|
|
303
|
+
const selectedKey = fieldInfoModel.getProperty(`${fieldPathAbsolute}/selectedKey`);
|
|
302
304
|
const existingSelection = keepExistingSelection && options.find((option: any) => option.key === selectedKey);
|
|
303
305
|
if (resetValues) {
|
|
304
306
|
const selectOptions = options.selectOptions;
|
|
@@ -314,7 +316,7 @@ const MassEditHandlers: any = {
|
|
|
314
316
|
|
|
315
317
|
if (existingSelection && !options.includes(existingSelection)) {
|
|
316
318
|
options.push(existingSelection);
|
|
317
|
-
fieldInfoModel.setProperty(fieldPathAbsolute
|
|
319
|
+
fieldInfoModel.setProperty(`${fieldPathAbsolute}/selectedKey`, selectedKey);
|
|
318
320
|
}
|
|
319
321
|
},
|
|
320
322
|
|
|
@@ -322,15 +324,15 @@ const MassEditHandlers: any = {
|
|
|
322
324
|
* Update In and Out Parameters in the MED.
|
|
323
325
|
*
|
|
324
326
|
* @function
|
|
325
|
-
* @param
|
|
326
|
-
* @param
|
|
327
|
-
* @param
|
|
328
|
-
* @param
|
|
327
|
+
* @param transCtx The transient context of the MED.
|
|
328
|
+
* @param source MDC field.
|
|
329
|
+
* @param fieldInfoModel Runtime model with parameters store information.
|
|
330
|
+
* @param propertyName Property path.
|
|
329
331
|
*/
|
|
330
332
|
_setValueListInfo: function (transCtx: Context, source: Field, fieldInfoModel: JSONModel, propertyName: string): void {
|
|
331
333
|
const propPath =
|
|
332
|
-
(fieldInfoModel.getProperty(
|
|
333
|
-
(fieldInfoModel.getProperty(
|
|
334
|
+
(fieldInfoModel.getProperty(`/values/${propertyName}`) && "/values/") ||
|
|
335
|
+
(fieldInfoModel.getProperty(`/unitData/${propertyName}`) && "/unitData/");
|
|
334
336
|
|
|
335
337
|
if (fieldInfoModel.getProperty(`${propPath}${propertyName}/valueListInfo`)) {
|
|
336
338
|
return;
|
|
@@ -356,15 +358,15 @@ const MassEditHandlers: any = {
|
|
|
356
358
|
* Request and update In and Out Parameters in the MED.
|
|
357
359
|
*
|
|
358
360
|
* @function
|
|
359
|
-
* @param
|
|
360
|
-
* @param
|
|
361
|
-
* @param
|
|
362
|
-
* @param
|
|
361
|
+
* @param transCtx The transient context of the MED.
|
|
362
|
+
* @param source MDC field.
|
|
363
|
+
* @param fieldInfoModel Runtime model with parameters store information.
|
|
364
|
+
* @param propertyName Property path.
|
|
363
365
|
*/
|
|
364
366
|
_requestValueList: function (transCtx: Context, source: Field, fieldInfoModel: JSONModel, propertyName: string): void {
|
|
365
367
|
const metaPath = ModelHelper.getMetaPathForContext(transCtx);
|
|
366
|
-
const propertyPath = (metaPath && metaPath
|
|
367
|
-
const dependents =
|
|
368
|
+
const propertyPath = (metaPath && `${metaPath}/${propertyName}`) as string;
|
|
369
|
+
const dependents = source?.getDependents();
|
|
368
370
|
const fieldHelp = source?.getFieldHelp();
|
|
369
371
|
const fieldValueHelp = dependents?.find((dependent: any) => dependent.getId() === fieldHelp);
|
|
370
372
|
if (!fieldValueHelp?.getBindingContext()) {
|
|
@@ -377,8 +379,8 @@ const MassEditHandlers: any = {
|
|
|
377
379
|
valueListInfo
|
|
378
380
|
.then((vLinfo: any) => {
|
|
379
381
|
const propPath =
|
|
380
|
-
(fieldInfoModel.getProperty(
|
|
381
|
-
(fieldInfoModel.getProperty(
|
|
382
|
+
(fieldInfoModel.getProperty(`/values/${propertyName}`) && "/values/") ||
|
|
383
|
+
(fieldInfoModel.getProperty(`/unitData/${propertyName}`) && "/unitData/");
|
|
382
384
|
const info: any = {
|
|
383
385
|
inParameters: vLinfo.inParameters.map((inParam: any) => inParam.getFieldPath()),
|
|
384
386
|
outParameters: vLinfo.outParameters.map((outParam: any) => outParam.getFieldPath())
|
|
@@ -397,24 +399,23 @@ const MassEditHandlers: any = {
|
|
|
397
399
|
* Get field help control from MDC field.
|
|
398
400
|
*
|
|
399
401
|
* @function
|
|
400
|
-
* @param
|
|
401
|
-
* @param
|
|
402
|
+
* @param transCtx The transient context of the MED.
|
|
403
|
+
* @param source MDC field.
|
|
402
404
|
* @returns Field Help control.
|
|
403
405
|
*/
|
|
404
|
-
_getValueHelp: function (transCtx: Context, source:
|
|
406
|
+
_getValueHelp: function (transCtx: Context, source: Field): any {
|
|
405
407
|
const dependents = source?.getDependents();
|
|
406
408
|
const fieldHelp = source?.getFieldHelp();
|
|
407
|
-
|
|
408
|
-
return fieldValueHelp;
|
|
409
|
+
return dependents?.find((dependent: any) => dependent.getId() === fieldHelp);
|
|
409
410
|
},
|
|
410
411
|
|
|
411
412
|
/**
|
|
412
413
|
* Colled on drop down selection of VHD option.
|
|
413
414
|
*
|
|
414
415
|
* @function
|
|
415
|
-
* @param
|
|
416
|
-
* @param
|
|
417
|
-
* @param
|
|
416
|
+
* @param source Custom Mass Edit Select control.
|
|
417
|
+
* @param propertyName Property path.
|
|
418
|
+
* @param selectKey Previous key before the VHD was selected.
|
|
418
419
|
*/
|
|
419
420
|
_onVHSelect: function (source: any, propertyName: string, selectKey: string): void {
|
|
420
421
|
// Called for
|
|
@@ -422,8 +423,8 @@ const MassEditHandlers: any = {
|
|
|
422
423
|
|
|
423
424
|
const fieldInfoModel = source && source.getModel("fieldsInfo");
|
|
424
425
|
const propPath =
|
|
425
|
-
(fieldInfoModel.getProperty(
|
|
426
|
-
(fieldInfoModel.getProperty(
|
|
426
|
+
(fieldInfoModel.getProperty(`/values/${propertyName}`) && "/values/") ||
|
|
427
|
+
(fieldInfoModel.getProperty(`/unitData/${propertyName}`) && "/unitData/");
|
|
427
428
|
const transCtx = source.getBindingContext();
|
|
428
429
|
const fieldValueHelp = MassEditHandlers._getValueHelp(transCtx, source.getParent());
|
|
429
430
|
if (!fieldValueHelp?.getBindingContext()) {
|
|
@@ -431,14 +432,14 @@ const MassEditHandlers: any = {
|
|
|
431
432
|
}
|
|
432
433
|
source.fireValueHelpRequest();
|
|
433
434
|
|
|
434
|
-
fieldInfoModel.setProperty(propPath + propertyName
|
|
435
|
+
fieldInfoModel.setProperty(`${propPath + propertyName}/selectedKey`, selectKey);
|
|
435
436
|
},
|
|
436
437
|
|
|
437
438
|
/**
|
|
438
439
|
* Gets Property name from selection key.
|
|
439
440
|
*
|
|
440
441
|
* @function
|
|
441
|
-
* @param
|
|
442
|
+
* @param key Selection key.
|
|
442
443
|
* @returns Property name.
|
|
443
444
|
*/
|
|
444
445
|
_getPropertyNameFromKey: function (key: string) {
|
|
@@ -455,10 +456,10 @@ const MassEditHandlers: any = {
|
|
|
455
456
|
* Update selection to Custom Mass Edit Select from MDC field.
|
|
456
457
|
*
|
|
457
458
|
* @function
|
|
458
|
-
* @param
|
|
459
|
-
* @param
|
|
460
|
-
* @param
|
|
461
|
-
* @param
|
|
459
|
+
* @param source MDC field.
|
|
460
|
+
* @param propertyName Property path.
|
|
461
|
+
* @param value Value to update.
|
|
462
|
+
* @param fullText Full text to use.
|
|
462
463
|
*/
|
|
463
464
|
_updateSelectKey: function (source: Field, propertyName: string, value: any, fullText?: any): void {
|
|
464
465
|
// Called for
|
|
@@ -466,22 +467,22 @@ const MassEditHandlers: any = {
|
|
|
466
467
|
// 2. Out Parameters.
|
|
467
468
|
// 3. Transient context property change.
|
|
468
469
|
|
|
469
|
-
const
|
|
470
|
-
if (!
|
|
470
|
+
const comboBox = source.getContent() as ComboBox;
|
|
471
|
+
if (!comboBox || !propertyName) {
|
|
471
472
|
return;
|
|
472
473
|
}
|
|
473
|
-
let key: string =
|
|
474
|
+
let key: string = comboBox.getSelectedKey();
|
|
474
475
|
if ((key.startsWith("Default/") || key.startsWith("ClearFieldValue/")) && !value) {
|
|
475
476
|
return;
|
|
476
477
|
}
|
|
477
478
|
|
|
478
479
|
const formattedText = MassEditHandlers._valueExists(fullText) ? fullText : value;
|
|
479
|
-
const fieldInfoModel = source && (
|
|
480
|
+
const fieldInfoModel = source && (source.getModel("fieldsInfo") as JSONModel);
|
|
480
481
|
const values =
|
|
481
|
-
fieldInfoModel.getProperty(
|
|
482
|
+
fieldInfoModel.getProperty(`/values/${propertyName}`) || fieldInfoModel.getProperty(`/unitData/${propertyName}`) || [];
|
|
482
483
|
const propPath =
|
|
483
|
-
(fieldInfoModel.getProperty(
|
|
484
|
-
(fieldInfoModel.getProperty(
|
|
484
|
+
(fieldInfoModel.getProperty(`/values/${propertyName}`) && "/values/") ||
|
|
485
|
+
(fieldInfoModel.getProperty(`/unitData/${propertyName}`) && "/unitData/");
|
|
485
486
|
|
|
486
487
|
const relatedField = values.find((fieldData: any) => fieldData?.textInfo?.value === value || fieldData.text === value);
|
|
487
488
|
|
|
@@ -498,12 +499,12 @@ const MassEditHandlers: any = {
|
|
|
498
499
|
relatedField.textInfo.description = source.getAdditionalValue();
|
|
499
500
|
}
|
|
500
501
|
if (relatedField.key === key) {
|
|
501
|
-
fieldInfoModel.setProperty(propPath + propertyName
|
|
502
|
+
fieldInfoModel.setProperty(`${propPath + propertyName}/selectedKey`, key);
|
|
502
503
|
return;
|
|
503
504
|
}
|
|
504
505
|
key = relatedField.key;
|
|
505
506
|
} else if ([undefined, null, ""].indexOf(value) === -1) {
|
|
506
|
-
key = propertyName
|
|
507
|
+
key = `${propertyName}/${value}`;
|
|
507
508
|
const selectionInfo = {
|
|
508
509
|
text: formattedText,
|
|
509
510
|
key,
|
|
@@ -521,19 +522,19 @@ const MassEditHandlers: any = {
|
|
|
521
522
|
values.selectOptions.push(selectionInfo);
|
|
522
523
|
fieldInfoModel.setProperty(propPath + propertyName, values);
|
|
523
524
|
} else {
|
|
524
|
-
key =
|
|
525
|
+
key = `Default/${propertyName}`;
|
|
525
526
|
}
|
|
526
527
|
|
|
527
|
-
fieldInfoModel.setProperty(propPath + propertyName
|
|
528
|
-
MassEditHandlers._updateResults(
|
|
528
|
+
fieldInfoModel.setProperty(`${propPath + propertyName}/selectedKey`, key);
|
|
529
|
+
MassEditHandlers._updateResults(comboBox);
|
|
529
530
|
},
|
|
530
531
|
|
|
531
532
|
/**
|
|
532
533
|
* Get Value from Drop down.
|
|
533
534
|
*
|
|
534
535
|
* @function
|
|
535
|
-
* @param
|
|
536
|
-
* @returns
|
|
536
|
+
* @param source Drop down control.
|
|
537
|
+
* @returns Value of selection.
|
|
537
538
|
*/
|
|
538
539
|
_getValue: function (source: Control) {
|
|
539
540
|
return source.getMetadata().getName() === "sap.fe.core.controls.MassEditSelect"
|
|
@@ -563,9 +564,9 @@ const MassEditHandlers: any = {
|
|
|
563
564
|
* Updates selections to runtime model.
|
|
564
565
|
*
|
|
565
566
|
* @function
|
|
566
|
-
* @param
|
|
567
|
-
* @param
|
|
568
|
-
* @param
|
|
567
|
+
* @param oSource Drop down control.
|
|
568
|
+
* @param aParams Parts of key in runtime model.
|
|
569
|
+
* @param updateTransCtx Should transient context be updated with the value.
|
|
569
570
|
*/
|
|
570
571
|
_updateResults: function (oSource: any, aParams: Array<string> = [], updateTransCtx: boolean) {
|
|
571
572
|
// Called for
|
|
@@ -578,7 +579,7 @@ const MassEditHandlers: any = {
|
|
|
578
579
|
aParams = aParams.length > 0 ? aParams : oSource && oSource.getSelectedKey() && oSource.getSelectedKey().split("/");
|
|
579
580
|
|
|
580
581
|
let oDataObject;
|
|
581
|
-
const sPropertyName = oSource.
|
|
582
|
+
const sPropertyName = oSource.data("fieldPath");
|
|
582
583
|
|
|
583
584
|
if (aParams[0] === "Default") {
|
|
584
585
|
oDataObject = {
|
|
@@ -601,7 +602,7 @@ const MassEditHandlers: any = {
|
|
|
601
602
|
} else {
|
|
602
603
|
const propertyName = aParams.slice(0, -1).join("/");
|
|
603
604
|
const propertyValues =
|
|
604
|
-
fieldsInfoModel.getProperty(
|
|
605
|
+
fieldsInfoModel.getProperty(`/values/${propertyName}`) || fieldsInfoModel.getProperty(`/unitData/${propertyName}`) || [];
|
|
605
606
|
|
|
606
607
|
const relatedField = (propertyValues || []).find(function (oFieldData: any) {
|
|
607
608
|
return oFieldData?.textInfo?.value === value || oFieldData.text === value;
|
|
@@ -625,7 +626,7 @@ const MassEditHandlers: any = {
|
|
|
625
626
|
} else {
|
|
626
627
|
oFieldsInfoData.results.push(oDataObject);
|
|
627
628
|
}
|
|
628
|
-
if (updateTransCtx) {
|
|
629
|
+
if (updateTransCtx && !oDataObject.keyValue.includes("/")) {
|
|
629
630
|
const transCtx = oSource.getBindingContext();
|
|
630
631
|
if (aParams[0] === "Default" || aParams[0] === "ClearFieldValue") {
|
|
631
632
|
transCtx.setProperty(oDataObject.keyValue, null);
|