@sapui5/sap.fe.core 1.100.0 → 1.102.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 -4
- package/src/sap/fe/core/.library +2 -3
- package/src/sap/fe/core/AppComponent.js +23 -30
- package/src/sap/fe/core/AppComponent.ts +35 -40
- package/src/sap/fe/core/AppStateHandler.js +8 -8
- package/src/sap/fe/core/AppStateHandler.ts +11 -11
- package/src/sap/fe/core/BaseController.js +9 -9
- package/src/sap/fe/core/BaseController.ts +3 -4
- package/src/sap/fe/core/CommonUtils.js +122 -101
- package/src/sap/fe/core/CommonUtils.ts +239 -193
- package/src/sap/fe/core/ExtensionAPI.js +12 -13
- package/src/sap/fe/core/ExtensionAPI.ts +21 -31
- package/src/sap/fe/core/PageController.js +19 -13
- package/src/sap/fe/core/PageController.ts +40 -34
- package/src/sap/fe/core/TemplateComponent.js +198 -123
- package/src/sap/fe/core/TemplateComponent.ts +109 -121
- package/src/sap/fe/core/TemplateModel.js +7 -9
- package/src/sap/fe/core/TemplateModel.ts +3 -3
- package/src/sap/fe/core/buildingBlocks/AttributeModel.js +60 -0
- package/src/sap/fe/core/buildingBlocks/AttributeModel.ts +37 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +165 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +178 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +935 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +837 -0
- package/src/sap/fe/core/buildingBlocks/TraceInfo.js +436 -0
- package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +431 -0
- 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 +660 -288
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +513 -331
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +11 -11
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +6 -7
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +43 -25
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +132 -103
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +16 -16
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +64 -55
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +166 -99
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +187 -149
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +14 -14
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +12 -11
- package/src/sap/fe/core/controllerextensions/MassEdit.js +13 -12
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +22 -22
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +14 -26
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +20 -30
- package/src/sap/fe/core/controllerextensions/PageReady.js +25 -23
- package/src/sap/fe/core/controllerextensions/PageReady.ts +49 -47
- package/src/sap/fe/core/controllerextensions/Paginator.js +24 -15
- package/src/sap/fe/core/controllerextensions/Paginator.ts +35 -20
- package/src/sap/fe/core/controllerextensions/Placeholder.js +10 -10
- package/src/sap/fe/core/controllerextensions/Placeholder.ts +12 -14
- package/src/sap/fe/core/controllerextensions/Routing.js +11 -11
- package/src/sap/fe/core/controllerextensions/Routing.ts +12 -13
- package/src/sap/fe/core/controllerextensions/Share.js +34 -16
- package/src/sap/fe/core/controllerextensions/Share.ts +50 -32
- package/src/sap/fe/core/controllerextensions/SideEffects.js +15 -15
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +64 -65
- package/src/sap/fe/core/controllerextensions/ViewState.js +27 -31
- package/src/sap/fe/core/controllerextensions/ViewState.ts +103 -102
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +105 -0
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.ts +98 -0
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +360 -0
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/ActivitySync.ts +90 -132
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +146 -0
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/CollaborationCommon.ts +18 -8
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +264 -0
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/Manage.ts +35 -33
- package/src/sap/fe/core/controllerextensions/collaboration/ManageDialog.fragment.xml +100 -0
- package/src/sap/fe/core/{actions → controllerextensions}/collaboration/UserDetails.fragment.xml +5 -7
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +1584 -0
- package/src/sap/fe/core/{TransactionHelper.ts → controllerextensions/editFlow/TransactionHelper.ts} +190 -159
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js +780 -0
- package/src/sap/fe/core/{actions → controllerextensions/editFlow}/draft.ts +329 -76
- package/src/sap/fe/core/controllerextensions/editFlow/operations.js +1149 -0
- package/src/sap/fe/core/{actions → controllerextensions/editFlow}/operations.ts +169 -97
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +190 -0
- package/src/sap/fe/core/{actions → controllerextensions/editFlow}/sticky.ts +76 -12
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +592 -0
- package/src/sap/fe/core/{actions → controllerextensions/messageHandler}/messageHandling.ts +83 -60
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +940 -0
- package/src/sap/fe/core/{RouterProxy.ts → controllerextensions/routing/RouterProxy.ts} +52 -36
- package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +21 -18
- package/src/sap/fe/core/controls/Any.js +28 -0
- package/src/sap/fe/core/controls/Any.ts +30 -0
- package/src/sap/fe/core/controls/CommandExecution.js +50 -16
- package/src/sap/fe/core/controls/CommandExecution.ts +31 -22
- package/src/sap/fe/core/controls/ConditionalWrapper.js +136 -65
- package/src/sap/fe/core/controls/ConditionalWrapper.ts +49 -58
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +371 -0
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +282 -0
- package/src/sap/fe/core/controls/CustomQuickViewPage.js +74 -36
- package/src/sap/fe/core/controls/CustomQuickViewPage.ts +23 -32
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossDraft.fragment.xml +52 -5
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +127 -67
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +127 -67
- package/src/sap/fe/core/controls/FieldWrapper.js +171 -87
- package/src/sap/fe/core/controls/FieldWrapper.ts +69 -80
- package/src/sap/fe/core/controls/FileWrapper.js +360 -0
- package/src/sap/fe/core/controls/FileWrapper.ts +202 -0
- package/src/sap/fe/core/controls/FilterBar.js +154 -119
- package/src/sap/fe/core/controls/FilterBar.ts +128 -123
- package/src/sap/fe/core/controls/FormElementWrapper.js +102 -37
- package/src/sap/fe/core/controls/FormElementWrapper.ts +43 -35
- package/src/sap/fe/core/controls/MassEditSelect.js +33 -0
- package/src/sap/fe/core/controls/MassEditSelect.ts +45 -0
- package/src/sap/fe/core/controls/filterbar/FilterContainer.js +111 -89
- package/src/sap/fe/core/controls/filterbar/FilterContainer.ts +86 -82
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +242 -193
- package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +211 -204
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +152 -116
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +105 -105
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +2 -2
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +23 -28
- package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +41 -81
- package/src/sap/fe/core/controls/massEdit/MassEditField.fragment.xml +107 -0
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +550 -35
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +604 -35
- package/src/sap/fe/core/converters/ManifestSettings.js +3 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +9 -2
- package/src/sap/fe/core/converters/MetaModelConverter.js +11 -40
- package/src/sap/fe/core/converters/MetaModelConverter.ts +56 -84
- package/src/sap/fe/core/converters/annotations/DataField.js +20 -5
- package/src/sap/fe/core/converters/annotations/DataField.ts +27 -6
- package/src/sap/fe/core/converters/controls/Common/Action.js +14 -21
- package/src/sap/fe/core/converters/controls/Common/Action.ts +23 -28
- package/src/sap/fe/core/converters/controls/Common/Chart.js +17 -10
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +20 -14
- package/src/sap/fe/core/converters/controls/Common/Form.js +16 -18
- package/src/sap/fe/core/converters/controls/Common/Form.ts +20 -20
- package/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/KPI.ts +2 -3
- package/src/sap/fe/core/converters/controls/Common/Table.js +389 -173
- package/src/sap/fe/core/converters/controls/Common/Table.ts +440 -244
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +26 -16
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +27 -19
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +78 -47
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +146 -107
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +6 -6
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +20 -18
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +30 -25
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +39 -34
- package/src/sap/fe/core/converters/helpers/Aggregation.js +10 -2
- package/src/sap/fe/core/converters/helpers/Aggregation.ts +18 -13
- package/src/sap/fe/core/converters/helpers/BindingHelper.js +3 -2
- package/src/sap/fe/core/converters/helpers/BindingHelper.ts +6 -5
- package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +1 -1
- package/src/sap/fe/core/converters/objectPage/FormMenuActions.ts +0 -4
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +27 -24
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +49 -40
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +33 -22
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +77 -62
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +28 -28
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +38 -45
- package/src/sap/fe/core/designtime/AppComponent.designtime.js +3 -3
- package/src/sap/fe/core/designtime/AppComponent.designtime.ts +8 -6
- package/src/sap/fe/core/formatters/KPIFormatter.js +3 -12
- package/src/sap/fe/core/formatters/KPIFormatter.ts +3 -2
- package/src/sap/fe/core/formatters/TableFormatter.js +74 -13
- package/src/sap/fe/core/formatters/TableFormatter.ts +71 -16
- package/src/sap/fe/core/formatters/ValueFormatter.js +4 -4
- package/src/sap/fe/core/formatters/ValueFormatter.ts +4 -7
- package/src/sap/fe/core/fpm/Component.js +46 -17
- package/src/sap/fe/core/fpm/Component.ts +11 -16
- package/src/sap/fe/core/helpers/AppStartupHelper.js +4 -4
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +3 -3
- package/src/sap/fe/core/helpers/BindingExpression.js +10 -7
- package/src/sap/fe/core/helpers/BindingExpression.ts +37 -35
- package/src/sap/fe/core/helpers/ClassSupport.js +273 -256
- package/src/sap/fe/core/helpers/ClassSupport.ts +315 -237
- package/src/sap/fe/core/helpers/FPMHelper.js +3 -2
- package/src/sap/fe/core/helpers/FPMHelper.ts +9 -8
- package/src/sap/fe/core/helpers/MassEditHelper.js +522 -147
- package/src/sap/fe/core/helpers/MassEditHelper.ts +563 -236
- package/src/sap/fe/core/helpers/ModelHelper.js +29 -1
- package/src/sap/fe/core/helpers/ModelHelper.ts +39 -26
- package/src/sap/fe/core/helpers/PasteHelper.js +4 -4
- package/src/sap/fe/core/helpers/PasteHelper.ts +4 -3
- package/src/sap/fe/core/helpers/SemanticDateOperators.js +3 -3
- package/src/sap/fe/core/helpers/SemanticDateOperators.ts +3 -1
- package/src/sap/fe/core/helpers/SemanticKeyHelper.js +1 -1
- package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +1 -1
- package/src/sap/fe/core/helpers/StableIdHelper.js +5 -7
- package/src/sap/fe/core/helpers/StableIdHelper.ts +8 -8
- 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 +35 -5
- package/src/sap/fe/core/jsx-runtime/jsx.ts +22 -8
- package/src/sap/fe/core/library.js +13 -5
- package/src/sap/fe/core/library.ts +26 -17
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +1 -1
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +0 -3
- package/src/sap/fe/core/messagebundle.properties +135 -180
- package/src/sap/fe/core/messagebundle_ar.properties +31 -64
- package/src/sap/fe/core/messagebundle_bg.properties +31 -64
- package/src/sap/fe/core/messagebundle_ca.properties +31 -64
- package/src/sap/fe/core/messagebundle_cs.properties +31 -64
- package/src/sap/fe/core/messagebundle_cy.properties +32 -65
- package/src/sap/fe/core/messagebundle_da.properties +31 -64
- package/src/sap/fe/core/messagebundle_de.properties +29 -62
- package/src/sap/fe/core/messagebundle_el.properties +32 -65
- package/src/sap/fe/core/messagebundle_en.properties +32 -65
- package/src/sap/fe/core/messagebundle_en_GB.properties +29 -62
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +41 -74
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +32 -65
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +20 -6
- package/src/sap/fe/core/messagebundle_es.properties +31 -64
- package/src/sap/fe/core/messagebundle_es_MX.properties +31 -64
- package/src/sap/fe/core/messagebundle_et.properties +31 -64
- package/src/sap/fe/core/messagebundle_fi.properties +29 -62
- package/src/sap/fe/core/messagebundle_fr.properties +36 -69
- package/src/sap/fe/core/messagebundle_fr_CA.properties +33 -66
- package/src/sap/fe/core/messagebundle_hi.properties +29 -62
- package/src/sap/fe/core/messagebundle_hr.properties +32 -65
- package/src/sap/fe/core/messagebundle_hu.properties +30 -63
- package/src/sap/fe/core/messagebundle_id.properties +32 -65
- package/src/sap/fe/core/messagebundle_it.properties +31 -64
- package/src/sap/fe/core/messagebundle_iw.properties +31 -64
- package/src/sap/fe/core/messagebundle_ja.properties +29 -62
- package/src/sap/fe/core/messagebundle_kk.properties +31 -64
- package/src/sap/fe/core/messagebundle_ko.properties +31 -64
- package/src/sap/fe/core/messagebundle_lt.properties +31 -64
- package/src/sap/fe/core/messagebundle_lv.properties +32 -65
- package/src/sap/fe/core/messagebundle_ms.properties +31 -64
- package/src/sap/fe/core/messagebundle_nl.properties +31 -64
- package/src/sap/fe/core/messagebundle_no.properties +31 -64
- package/src/sap/fe/core/messagebundle_pl.properties +34 -67
- package/src/sap/fe/core/messagebundle_pt.properties +32 -65
- package/src/sap/fe/core/messagebundle_pt_PT.properties +31 -64
- package/src/sap/fe/core/messagebundle_ro.properties +33 -66
- package/src/sap/fe/core/messagebundle_ru.properties +33 -66
- package/src/sap/fe/core/messagebundle_sh.properties +31 -64
- package/src/sap/fe/core/messagebundle_sk.properties +31 -64
- package/src/sap/fe/core/messagebundle_sl.properties +29 -62
- package/src/sap/fe/core/messagebundle_sv.properties +30 -63
- package/src/sap/fe/core/messagebundle_th.properties +31 -64
- package/src/sap/fe/core/messagebundle_tr.properties +31 -64
- package/src/sap/fe/core/messagebundle_uk.properties +32 -65
- package/src/sap/fe/core/messagebundle_vi.properties +31 -64
- package/src/sap/fe/core/messagebundle_zh_CN.properties +32 -65
- package/src/sap/fe/core/messagebundle_zh_TW.properties +34 -67
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +4 -4
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +5 -5
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +1 -2
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +11 -8
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +15 -13
- package/src/sap/fe/core/services/NavigationServiceFactory.js +5 -5
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +9 -5
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js +4 -4
- package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/RoutingServiceFactory.js +105 -66
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +59 -49
- package/src/sap/fe/core/services/ShellServicesFactory.js +104 -29
- package/src/sap/fe/core/services/ShellServicesFactory.ts +64 -30
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +4 -4
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +11 -10
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +38 -51
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +43 -5
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +6 -3
- package/src/sap/fe/core/support/CommonHelper.js +1 -1
- package/src/sap/fe/core/support/CommonHelper.ts +0 -3
- package/src/sap/fe/core/templating/DataModelPathHelper.js +2 -9
- package/src/sap/fe/core/templating/DataModelPathHelper.ts +32 -38
- package/src/sap/fe/core/templating/DisplayModeFormatter.js +23 -3
- package/src/sap/fe/core/templating/DisplayModeFormatter.ts +27 -6
- package/src/sap/fe/core/templating/EntitySetHelper.js +1 -9
- package/src/sap/fe/core/templating/EntitySetHelper.ts +11 -13
- package/src/sap/fe/core/templating/FilterHelper.js +4 -4
- package/src/sap/fe/core/templating/FilterHelper.ts +6 -5
- package/src/sap/fe/core/templating/PropertyHelper.js +70 -33
- package/src/sap/fe/core/templating/PropertyHelper.ts +49 -27
- package/src/sap/fe/core/templating/UIFormatters.js +133 -22
- package/src/sap/fe/core/templating/UIFormatters.ts +144 -50
- 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 +26 -8
- package/src/sap/fe/core/type/Email.ts +8 -7
- package/src/sap/fe/core/AnnotationHelper.js +0 -312
- package/src/sap/fe/core/AnnotationHelper.ts +0 -315
- package/src/sap/fe/core/RouterProxy.js +0 -926
- package/src/sap/fe/core/TransactionHelper.js +0 -1562
- package/src/sap/fe/core/actions/collaboration/ActivitySync.js +0 -392
- package/src/sap/fe/core/actions/collaboration/CollaborationCommon.js +0 -136
- package/src/sap/fe/core/actions/collaboration/Manage.js +0 -262
- package/src/sap/fe/core/actions/collaboration/ManageDialog.fragment.xml +0 -103
- package/src/sap/fe/core/actions/draft.js +0 -523
- package/src/sap/fe/core/actions/messageHandling.js +0 -567
- 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/controllerextensions/ControllerExtensionMetadata.js +0 -78
- package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.ts +0 -65
- package/src/sap/fe/core/formatters/CriticalityFormatter.js +0 -77
- package/src/sap/fe/core/formatters/CriticalityFormatter.ts +0 -58
|
@@ -1,22 +1,23 @@
|
|
|
1
|
-
import
|
|
2
|
-
import MessageItem from "sap/m/MessageItem";
|
|
3
|
-
import MessageView from "sap/m/MessageView";
|
|
1
|
+
import Bar from "sap/m/Bar";
|
|
4
2
|
import Button from "sap/m/Button";
|
|
5
3
|
import Dialog from "sap/m/Dialog";
|
|
4
|
+
import FormattedText from "sap/m/FormattedText";
|
|
5
|
+
import MessageBox from "sap/m/MessageBox";
|
|
6
|
+
import MessageItem from "sap/m/MessageItem";
|
|
7
|
+
import MessageToast from "sap/m/MessageToast";
|
|
8
|
+
import MessageView from "sap/m/MessageView";
|
|
6
9
|
import Text from "sap/m/Text";
|
|
10
|
+
import ManagedObject from "sap/ui/base/ManagedObject";
|
|
11
|
+
import Core from "sap/ui/core/Core";
|
|
12
|
+
import DateFormat from "sap/ui/core/format/DateFormat";
|
|
13
|
+
import IconPool from "sap/ui/core/IconPool";
|
|
7
14
|
import CoreLib from "sap/ui/core/library";
|
|
15
|
+
import Message from "sap/ui/core/message/Message";
|
|
16
|
+
import Control from "sap/ui/mdc/Control";
|
|
8
17
|
import Filter from "sap/ui/model/Filter";
|
|
9
18
|
import FilterOperator from "sap/ui/model/FilterOperator";
|
|
10
|
-
import Message from "sap/ui/core/message/Message";
|
|
11
|
-
import IconPool from "sap/ui/core/IconPool";
|
|
12
19
|
import JSONModel from "sap/ui/model/json/JSONModel";
|
|
13
|
-
import
|
|
14
|
-
import ResourceBundle from "sap/base/i18n/ResourceBundle";
|
|
15
|
-
import Control from "sap/ui/mdc/Control";
|
|
16
|
-
import ManagedObject from "sap/ui/base/ManagedObject";
|
|
17
|
-
import Bar from "sap/m/Bar";
|
|
18
|
-
import MessageBox from "sap/m/MessageBox";
|
|
19
|
-
import FormattedText from "sap/m/FormattedText";
|
|
20
|
+
import { CoreEx } from "types/extension_types";
|
|
20
21
|
|
|
21
22
|
const MessageType = CoreLib.MessageType;
|
|
22
23
|
let aMessageList: any[] = [];
|
|
@@ -33,7 +34,8 @@ export type messageHandlingType = {
|
|
|
33
34
|
aCustomMessages?: any[],
|
|
34
35
|
oContext?: any,
|
|
35
36
|
bHasEtagMessage?: boolean,
|
|
36
|
-
bShowBoundTransition?: boolean
|
|
37
|
+
bShowBoundTransition?: boolean,
|
|
38
|
+
errorTargetsInAPM?: boolean
|
|
37
39
|
) => Promise<any>;
|
|
38
40
|
removeUnboundTransitionMessages: () => void;
|
|
39
41
|
removeBoundTransitionMessages: () => void;
|
|
@@ -90,7 +92,7 @@ function fnFormatTechnicalDetails() {
|
|
|
90
92
|
}
|
|
91
93
|
|
|
92
94
|
let sHTML = "Object.keys(" + "${technicalDetails}" + ').length > 0 ? "<h2>Technical Details</h2>" : "" ';
|
|
93
|
-
getPaths().forEach(function(oProperty: { groupName: string; property: string }) {
|
|
95
|
+
getPaths().forEach(function (oProperty: { groupName: string; property: string }) {
|
|
94
96
|
sHTML = sHTML + insertGroupName(oProperty) + "" + insertDetail(oProperty) + " + ";
|
|
95
97
|
});
|
|
96
98
|
return sHTML;
|
|
@@ -135,7 +137,7 @@ function fnModifyETagMessagesOnly(oMessageManager: any, oResourceBundle: any) {
|
|
|
135
137
|
const aMessages = oMessageManager.getMessageModel().getObject("/");
|
|
136
138
|
let bMessagesModified = false;
|
|
137
139
|
let sEtagMessage = "";
|
|
138
|
-
aMessages.forEach(function(oMessage: any, i: any) {
|
|
140
|
+
aMessages.forEach(function (oMessage: any, i: any) {
|
|
139
141
|
const oTechnicalDetails = oMessage.getTechnicalDetails();
|
|
140
142
|
if (oTechnicalDetails && oTechnicalDetails.httpStatus === 412) {
|
|
141
143
|
sEtagMessage = sEtagMessage || oResourceBundle.getText("C_APP_COMPONENT_SAPFE_ETAG_TECHNICAL_ISSUES");
|
|
@@ -153,12 +155,16 @@ function dialogCloseHandler() {
|
|
|
153
155
|
oDialog.close();
|
|
154
156
|
oBackButton.setVisible(false);
|
|
155
157
|
aMessageList = [];
|
|
158
|
+
const oMessageDialogModel: any = oMessageView.getModel();
|
|
159
|
+
if (oMessageDialogModel) {
|
|
160
|
+
oMessageDialogModel.setData({});
|
|
161
|
+
}
|
|
156
162
|
removeUnboundTransitionMessages();
|
|
157
163
|
}
|
|
158
164
|
function getRetryAfterMessage(oMessage: any, bMessageDialog?: any) {
|
|
159
165
|
const dNow = new Date();
|
|
160
166
|
const oTechnicalDetails = oMessage.getTechnicalDetails();
|
|
161
|
-
const oResourceBundle =
|
|
167
|
+
const oResourceBundle = (Core as CoreEx).getLibraryResourceBundle("sap.fe.core");
|
|
162
168
|
let sRetryAfterMessage;
|
|
163
169
|
if (oTechnicalDetails && oTechnicalDetails.httpStatus === 503 && oTechnicalDetails.retryAfter) {
|
|
164
170
|
const dRetryAfter = oTechnicalDetails.retryAfter;
|
|
@@ -230,7 +236,7 @@ function prepareMessageViewForDialog(oMessageDialogModel: JSONModel, bStrictHand
|
|
|
230
236
|
oMessageView ||
|
|
231
237
|
new MessageView({
|
|
232
238
|
showDetailsPageHeader: false,
|
|
233
|
-
itemSelect: function() {
|
|
239
|
+
itemSelect: function () {
|
|
234
240
|
oBackButton.setVisible(true);
|
|
235
241
|
},
|
|
236
242
|
items: {
|
|
@@ -243,7 +249,7 @@ function prepareMessageViewForDialog(oMessageDialogModel: JSONModel, bStrictHand
|
|
|
243
249
|
new Button({
|
|
244
250
|
icon: IconPool.getIconURI("nav-back"),
|
|
245
251
|
visible: false,
|
|
246
|
-
press: function(this: Button) {
|
|
252
|
+
press: function (this: Button) {
|
|
247
253
|
oMessageView.navigateBack();
|
|
248
254
|
this.setVisible(false);
|
|
249
255
|
}
|
|
@@ -261,27 +267,28 @@ function showUnboundMessages(
|
|
|
261
267
|
aCustomMessages?: any[],
|
|
262
268
|
oContext?: any,
|
|
263
269
|
bHasEtagMessage?: boolean,
|
|
264
|
-
bShowBoundTransition?: boolean
|
|
270
|
+
bShowBoundTransition?: boolean,
|
|
271
|
+
errorTargetsInAPM?: boolean
|
|
265
272
|
) {
|
|
266
273
|
let aUnboundMessages = this.getMessages();
|
|
267
|
-
const oMessageManager =
|
|
274
|
+
const oMessageManager = Core.getMessageManager();
|
|
268
275
|
let sHighestPriority;
|
|
269
276
|
let sHighestPriorityText;
|
|
270
277
|
const aFilters = [
|
|
271
278
|
new Filter({ path: "code", operator: FilterOperator.NE, value1: null }),
|
|
272
279
|
new Filter({ path: "persistent", operator: FilterOperator.NE, value1: false })
|
|
273
280
|
];
|
|
274
|
-
let showMessageDialog = false,
|
|
275
|
-
showMessageBox = false;
|
|
281
|
+
let showMessageDialog: boolean | undefined = false,
|
|
282
|
+
showMessageBox: boolean | undefined = false;
|
|
276
283
|
|
|
277
284
|
if (bShowBoundTransition) {
|
|
278
285
|
aUnboundMessages = aUnboundMessages.concat(getMessages(true, true));
|
|
279
286
|
// we only want to show bound transition messages not bound state messages hence add a filter for the same
|
|
280
287
|
aFilters.push(new Filter({ path: "persistent", operator: FilterOperator.EQ, value1: true }));
|
|
281
|
-
const fnCheckControlIdInDialog = function(aControlIds: any) {
|
|
288
|
+
const fnCheckControlIdInDialog = function (aControlIds: any) {
|
|
282
289
|
let index = Infinity,
|
|
283
|
-
oControl =
|
|
284
|
-
const errorFieldControl =
|
|
290
|
+
oControl = Core.byId(aControlIds[0]) as ManagedObject;
|
|
291
|
+
const errorFieldControl = Core.byId(aControlIds[0]) as Control;
|
|
285
292
|
while (oControl) {
|
|
286
293
|
const fieldRankinDialog =
|
|
287
294
|
oControl instanceof Dialog
|
|
@@ -312,7 +319,7 @@ function showUnboundMessages(
|
|
|
312
319
|
aFilters.push(new Filter({ path: "target", operator: FilterOperator.EQ, value1: "" }));
|
|
313
320
|
}
|
|
314
321
|
if (aCustomMessages && aCustomMessages.length) {
|
|
315
|
-
aCustomMessages.forEach(function(oMessage: any) {
|
|
322
|
+
aCustomMessages.forEach(function (oMessage: any) {
|
|
316
323
|
const messageCode = oMessage.code ? oMessage.code : "";
|
|
317
324
|
oMessageManager.addMessages(
|
|
318
325
|
new Message({
|
|
@@ -326,56 +333,68 @@ function showUnboundMessages(
|
|
|
326
333
|
//The target and persistent properties of the message are hardcoded as "" and true because the function deals with only unbound messages.
|
|
327
334
|
});
|
|
328
335
|
}
|
|
329
|
-
const oMessageDialogModel = new JSONModel();
|
|
330
|
-
if (
|
|
331
|
-
|
|
336
|
+
const oMessageDialogModel = (oMessageView && (oMessageView.getModel() as JSONModel)) || new JSONModel();
|
|
337
|
+
if (
|
|
338
|
+
aUnboundMessages.length === 1 &&
|
|
339
|
+
(aUnboundMessages[0].getCode() === "503" ||
|
|
340
|
+
(aUnboundMessages[0].getTarget() !== undefined && aUnboundMessages[0].getTarget() !== ""))
|
|
341
|
+
) {
|
|
342
|
+
if (aUnboundMessages[0].getCode() !== "503") {
|
|
343
|
+
showMessageBox = !errorTargetsInAPM;
|
|
344
|
+
} else {
|
|
345
|
+
showMessageBox = true;
|
|
346
|
+
}
|
|
332
347
|
} else {
|
|
333
348
|
const oListBinding = oMessageManager.getMessageModel().bindList("/", undefined, undefined, aFilters),
|
|
334
349
|
aCurrentContexts = oListBinding.getCurrentContexts();
|
|
335
350
|
if (aCurrentContexts && aCurrentContexts.length > 0) {
|
|
336
351
|
// Don't show dialog incase there are no errors to show
|
|
337
|
-
showMessageDialog =
|
|
352
|
+
showMessageDialog = !errorTargetsInAPM; // if false, show messages in dialog
|
|
338
353
|
// As fitering has already happened here hence
|
|
339
354
|
// using the message model again for the message dialog view and then filtering on that binding again is unnecessary.
|
|
340
355
|
// So we create new json model to use for the message dialog view.
|
|
341
356
|
const aMessages: any[] = [];
|
|
342
|
-
aCurrentContexts.forEach(function(oContext: any) {
|
|
357
|
+
aCurrentContexts.forEach(function (oContext: any) {
|
|
343
358
|
let oMessage;
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
) {
|
|
348
|
-
aMessageList.push(oContext.getObject().technicalDetails.originalMessage.message);
|
|
349
|
-
oMessage = oContext.getObject();
|
|
350
|
-
aMessages.push(oMessage);
|
|
351
|
-
aMessageDataList = aMessages;
|
|
352
|
-
} else if (!oContext.getObject().technicalDetails) {
|
|
353
|
-
oMessage = oContext.getObject();
|
|
354
|
-
aMessages.push(oMessage);
|
|
355
|
-
aMessageDataList = aMessages;
|
|
356
|
-
}
|
|
359
|
+
oMessage = oContext.getObject();
|
|
360
|
+
aMessages.push(oMessage);
|
|
361
|
+
aMessageDataList = aMessages;
|
|
357
362
|
});
|
|
358
363
|
// if(aMessages.length === 0 && aMessageList.length) {
|
|
359
364
|
// oMessageDialogModel.setData(aMessages);
|
|
360
365
|
// }
|
|
361
|
-
|
|
366
|
+
let existingMessages: any[] = [];
|
|
367
|
+
if (Array.isArray(oMessageDialogModel.getData())) {
|
|
368
|
+
existingMessages = oMessageDialogModel.getData();
|
|
369
|
+
}
|
|
370
|
+
const oUniqueObj: any = {};
|
|
371
|
+
let aModelDataArray: any[] = [];
|
|
372
|
+
aModelDataArray = aMessageDataList.concat(existingMessages).filter(function (obj) {
|
|
373
|
+
// remove entries having duplicate message ids
|
|
374
|
+
return !oUniqueObj[obj.id] && (oUniqueObj[obj.id] = true);
|
|
375
|
+
});
|
|
376
|
+
oMessageDialogModel.setData(aModelDataArray);
|
|
362
377
|
}
|
|
363
378
|
}
|
|
364
379
|
if (aUnboundMessages.length === 0 && !aCustomMessages && !bHasEtagMessage) {
|
|
365
380
|
// Don't show the popup if there are no transient messages
|
|
366
381
|
return Promise.resolve(true);
|
|
367
382
|
} else if (aUnboundMessages.length === 1 && aUnboundMessages[0].getType() === MessageType.Success && !aCustomMessages) {
|
|
368
|
-
return new Promise<void>(resolve => {
|
|
383
|
+
return new Promise<void>((resolve) => {
|
|
369
384
|
MessageToast.show(aUnboundMessages[0].message);
|
|
385
|
+
if (oMessageDialogModel) {
|
|
386
|
+
oMessageDialogModel.setData({});
|
|
387
|
+
}
|
|
370
388
|
oMessageManager.removeMessages(aUnboundMessages);
|
|
371
389
|
resolve();
|
|
372
390
|
});
|
|
373
391
|
} else if (showMessageDialog) {
|
|
374
392
|
aResolveFunctions = aResolveFunctions || [];
|
|
375
|
-
return new Promise(function(resolve: (value: any) => void, reject: (reason?: any) => void) {
|
|
393
|
+
return new Promise(function (resolve: (value: any) => void, reject: (reason?: any) => void) {
|
|
376
394
|
aResolveFunctions.push(resolve);
|
|
377
|
-
(
|
|
378
|
-
.
|
|
395
|
+
(Core as CoreEx)
|
|
396
|
+
.getLibraryResourceBundle("sap.fe.core", true)
|
|
397
|
+
.then(function (oResourceBundle: any) {
|
|
379
398
|
const bStrictHandlingFlow = false;
|
|
380
399
|
const bHasEtagMessage = fnModifyETagMessagesOnly(oMessageManager, oResourceBundle);
|
|
381
400
|
const oMessageObject = prepareMessageViewForDialog(oMessageDialogModel, bStrictHandlingFlow);
|
|
@@ -385,7 +404,7 @@ function showUnboundMessages(
|
|
|
385
404
|
resizable: true,
|
|
386
405
|
content: oMessageObject.oMessageView,
|
|
387
406
|
endButton: new Button({
|
|
388
|
-
press: function() {
|
|
407
|
+
press: function () {
|
|
389
408
|
dialogCloseHandler();
|
|
390
409
|
// also remove bound transition messages if we were showing them
|
|
391
410
|
if (bShowBoundTransition) {
|
|
@@ -405,7 +424,7 @@ function showUnboundMessages(
|
|
|
405
424
|
contentWidth: "37.5em",
|
|
406
425
|
contentHeight: "21.5em",
|
|
407
426
|
verticalScrolling: false,
|
|
408
|
-
afterClose: function() {
|
|
427
|
+
afterClose: function () {
|
|
409
428
|
for (let i = 0; i < aResolveFunctions.length; i++) {
|
|
410
429
|
aResolveFunctions[i].call();
|
|
411
430
|
}
|
|
@@ -414,10 +433,10 @@ function showUnboundMessages(
|
|
|
414
433
|
});
|
|
415
434
|
|
|
416
435
|
if (bHasEtagMessage) {
|
|
417
|
-
sap.ui.require(["sap/m/ButtonType"], function(ButtonType: any) {
|
|
436
|
+
sap.ui.require(["sap/m/ButtonType"], function (ButtonType: any) {
|
|
418
437
|
oDialog.setBeginButton(
|
|
419
438
|
new Button({
|
|
420
|
-
press: function() {
|
|
439
|
+
press: function () {
|
|
421
440
|
dialogCloseHandler();
|
|
422
441
|
if (oContext.hasPendingChanges()) {
|
|
423
442
|
oContext.getBinding().resetChanges();
|
|
@@ -442,7 +461,7 @@ function showUnboundMessages(
|
|
|
442
461
|
.catch(reject);
|
|
443
462
|
});
|
|
444
463
|
} else if (showMessageBox) {
|
|
445
|
-
return new Promise(function(resolve) {
|
|
464
|
+
return new Promise(function (resolve) {
|
|
446
465
|
const oMessage = aUnboundMessages[0];
|
|
447
466
|
if (oMessage.technicalDetails && aMessageList.indexOf(oMessage.technicalDetails.originalMessage.message) === -1) {
|
|
448
467
|
aMessageList.push(oMessage.technicalDetails.originalMessage.message);
|
|
@@ -451,12 +470,16 @@ function showUnboundMessages(
|
|
|
451
470
|
if (retryAfterMessage) {
|
|
452
471
|
formattedTextString = "<h6>" + retryAfterMessage + "</h6><br>";
|
|
453
472
|
}
|
|
454
|
-
|
|
473
|
+
if (oMessage.getCode() !== "503") {
|
|
474
|
+
formattedTextString = formattedTextString + oMessage.additionalText + ": " + oMessage.getMessage() + "</html></body>";
|
|
475
|
+
} else {
|
|
476
|
+
formattedTextString = formattedTextString + oMessage.getMessage() + "</html></body>";
|
|
477
|
+
}
|
|
455
478
|
const formattedText: any = new FormattedText({
|
|
456
479
|
htmlText: formattedTextString
|
|
457
480
|
});
|
|
458
481
|
MessageBox.error(formattedText, {
|
|
459
|
-
onClose: function() {
|
|
482
|
+
onClose: function () {
|
|
460
483
|
aMessageList = [];
|
|
461
484
|
if (bShowBoundTransition) {
|
|
462
485
|
removeBoundTransitionMessages();
|
|
@@ -472,7 +495,7 @@ function showUnboundMessages(
|
|
|
472
495
|
}
|
|
473
496
|
}
|
|
474
497
|
function getTranslatedTextForMessageDialog(sHighestPriority: any) {
|
|
475
|
-
const oResourceBundle =
|
|
498
|
+
const oResourceBundle = (Core as CoreEx).getLibraryResourceBundle("sap.fe.core");
|
|
476
499
|
switch (sHighestPriority) {
|
|
477
500
|
case "Error":
|
|
478
501
|
return oResourceBundle.getText("C_COMMON_SAPFE_ERROR_MESSAGES_PAGE_TITLE_ERROR");
|
|
@@ -494,10 +517,10 @@ function removeBoundTransitionMessages() {
|
|
|
494
517
|
}
|
|
495
518
|
function getMessages(bBoundMessages: boolean = false, bTransitionOnly: boolean = false) {
|
|
496
519
|
let i;
|
|
497
|
-
const oMessageManager = (
|
|
520
|
+
const oMessageManager = (Core as CoreEx as any).getMessageManager(),
|
|
498
521
|
oMessageModel = oMessageManager.getMessageModel(),
|
|
499
522
|
aMessages = oMessageModel.getObject("/"),
|
|
500
|
-
oResourceBundle =
|
|
523
|
+
oResourceBundle = (Core as CoreEx).getLibraryResourceBundle("sap.fe.core"),
|
|
501
524
|
aTransitionMessages = [];
|
|
502
525
|
|
|
503
526
|
for (i = 0; i < aMessages.length; i++) {
|
|
@@ -526,7 +549,7 @@ function removeTransitionMessages(bBoundMessages: any) {
|
|
|
526
549
|
const aMessagesToBeDeleted = getMessages(bBoundMessages, true);
|
|
527
550
|
|
|
528
551
|
if (aMessagesToBeDeleted.length > 0) {
|
|
529
|
-
|
|
552
|
+
Core.getMessageManager().removeMessages(aMessagesToBeDeleted);
|
|
530
553
|
}
|
|
531
554
|
}
|
|
532
555
|
|