@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
|
@@ -2,142 +2,147 @@ import MdcFilterBar from "sap/ui/mdc/FilterBar";
|
|
|
2
2
|
import FilterItemLayout from "sap/ui/mdc/filterbar/aligned/FilterItemLayout";
|
|
3
3
|
import VisualFilterContainer from "sap/fe/core/controls/filterbar/VisualFilterContainer";
|
|
4
4
|
import FilterContainer from "sap/fe/core/controls/filterbar/FilterContainer";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
5
|
+
import Core from "sap/ui/core/Core";
|
|
6
|
+
import { association, defineUI5Class, property } from "sap/fe/core/helpers/ClassSupport";
|
|
7
|
+
import SegmentedButton from "sap/m/SegmentedButton";
|
|
8
|
+
@defineUI5Class("sap.fe.core.controls.FilterBar")
|
|
9
|
+
class FilterBar extends MdcFilterBar {
|
|
10
|
+
@property({ type: "string", defaultValue: "compact" })
|
|
11
|
+
initialLayout!: string;
|
|
12
|
+
/**
|
|
13
|
+
* Control which allows for switching between visual and normal filter layouts
|
|
14
|
+
*/
|
|
15
|
+
@association({
|
|
16
|
+
type: "sap.m.SegmentedButton",
|
|
17
|
+
multiple: false
|
|
18
|
+
})
|
|
19
|
+
toggleControl!: SegmentedButton;
|
|
20
|
+
private _oSegmentedButton?: SegmentedButton;
|
|
21
|
+
private _oSecondaryFilterBarLayout: any;
|
|
22
|
+
private _oFilterBarLayout: any;
|
|
23
|
+
private _cLayoutItem: any;
|
|
24
|
+
|
|
25
|
+
setToggleControl(vToggle: string | SegmentedButton) {
|
|
26
|
+
if (typeof vToggle === "string") {
|
|
27
|
+
this._oSegmentedButton = Core.byId(vToggle) as SegmentedButton;
|
|
28
|
+
} else {
|
|
29
|
+
this._oSegmentedButton = vToggle;
|
|
21
30
|
}
|
|
22
|
-
},
|
|
23
|
-
renderer: {
|
|
24
|
-
apiVersion: 2
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
FilterBar.prototype.setToggleControl = function(vToggle: any) {
|
|
28
|
-
if (typeof vToggle === "string") {
|
|
29
|
-
this._oSegmentedButton = sap.ui.getCore().byId(vToggle);
|
|
30
|
-
} else {
|
|
31
|
-
this._oSegmentedButton = vToggle;
|
|
32
|
-
}
|
|
33
31
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
};
|
|
42
|
-
FilterBar.prototype._toggleLayout = function() {
|
|
43
|
-
// Since primary layout is always compact
|
|
44
|
-
// hence set the secondary layout as visual filter only for the first time only
|
|
45
|
-
if (!this._oSecondaryFilterBarLayout) {
|
|
46
|
-
this._oSecondaryFilterBarLayout = new VisualFilterContainer();
|
|
32
|
+
if (this.toggleControl && this._oSegmentedButton) {
|
|
33
|
+
this._oSegmentedButton.detachEvent("select", this._toggleLayout.bind(this));
|
|
34
|
+
}
|
|
35
|
+
if (this._oSegmentedButton) {
|
|
36
|
+
this._oSegmentedButton.attachEvent("select", this._toggleLayout.bind(this));
|
|
37
|
+
}
|
|
38
|
+
this.setAssociation("toggleControl", vToggle, true);
|
|
47
39
|
}
|
|
48
40
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
41
|
+
_toggleLayout() {
|
|
42
|
+
// Since primary layout is always compact
|
|
43
|
+
// hence set the secondary layout as visual filter only for the first time only
|
|
44
|
+
if (!this._oSecondaryFilterBarLayout) {
|
|
45
|
+
this._oSecondaryFilterBarLayout = new VisualFilterContainer();
|
|
46
|
+
}
|
|
55
47
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
const aVisualFilterFields = oCurrentFilterBarLayout.getAllVisualFilterFields && oCurrentFilterBarLayout.getAllVisualFilterFields();
|
|
63
|
-
if (this._oSecondaryFilterBarLayout.isA("sap.fe.core.controls.filterbar.VisualFilterContainer")) {
|
|
64
|
-
this._oSecondaryFilterBarLayout.setAllFilterFields(aSortedFilterFields, aVisualFilterFields);
|
|
65
|
-
}
|
|
66
|
-
// use secondary filter bar layout as new layout
|
|
67
|
-
this._oFilterBarLayout = this._oSecondaryFilterBarLayout;
|
|
48
|
+
// do not show Adapt Filters Button for visual layout
|
|
49
|
+
if (this._oSecondaryFilterBarLayout.isA("sap.fe.core.controls.filterbar.VisualFilterContainer")) {
|
|
50
|
+
this.setShowAdaptFiltersButton(false);
|
|
51
|
+
} else {
|
|
52
|
+
this.setShowAdaptFiltersButton(true);
|
|
53
|
+
}
|
|
68
54
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
55
|
+
// get all filter fields and button of the current layout
|
|
56
|
+
const oCurrentFilterBarLayout = this._oFilterBarLayout;
|
|
57
|
+
const oFilterItems = this.getFilterItems();
|
|
58
|
+
const aFilterFields = oCurrentFilterBarLayout.getAllFilterFields();
|
|
59
|
+
const aSortedFilterFields = this.getSortedFilterFields(oFilterItems, aFilterFields);
|
|
60
|
+
const aButtons = oCurrentFilterBarLayout.getAllButtons();
|
|
61
|
+
const aVisualFilterFields = oCurrentFilterBarLayout.getAllVisualFilterFields && oCurrentFilterBarLayout.getAllVisualFilterFields();
|
|
62
|
+
if (this._oSecondaryFilterBarLayout.isA("sap.fe.core.controls.filterbar.VisualFilterContainer")) {
|
|
63
|
+
this._oSecondaryFilterBarLayout.setAllFilterFields(aSortedFilterFields, aVisualFilterFields);
|
|
64
|
+
}
|
|
65
|
+
// use secondary filter bar layout as new layout
|
|
66
|
+
this._oFilterBarLayout = this._oSecondaryFilterBarLayout;
|
|
79
67
|
|
|
80
|
-
|
|
81
|
-
|
|
68
|
+
// insert all filter fields from current layout to new layout
|
|
69
|
+
aFilterFields.forEach((oFilterField: any, iIndex: any) => {
|
|
70
|
+
oCurrentFilterBarLayout.removeFilterField(oFilterField);
|
|
71
|
+
this._oFilterBarLayout.insertFilterField(oFilterField, iIndex);
|
|
72
|
+
});
|
|
73
|
+
// insert all buttons from the current layout to the new layout
|
|
74
|
+
aButtons.forEach((oButton: any) => {
|
|
75
|
+
oCurrentFilterBarLayout.removeButton(oButton);
|
|
76
|
+
this._oFilterBarLayout.addButton(oButton);
|
|
77
|
+
});
|
|
82
78
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
if (oInnerControl.isA("sap.ui.mdc.FilterField")) {
|
|
96
|
-
sFirstItemVFId = oInnerControl.getId();
|
|
97
|
-
}
|
|
79
|
+
// set the current filter bar layout to the secondary one
|
|
80
|
+
this._oSecondaryFilterBarLayout = oCurrentFilterBarLayout;
|
|
81
|
+
|
|
82
|
+
// update the layout aggregation of the filter bar and rerender the same.
|
|
83
|
+
this.setAggregation("layout", this._oFilterBarLayout, true);
|
|
84
|
+
this._oFilterBarLayout.rerender();
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
getSortedFilterFields(aFilterItems: any, aFilterFields: any) {
|
|
88
|
+
const aFilterIds: any[] = [];
|
|
89
|
+
aFilterItems.forEach(function(oFilterItem: any) {
|
|
90
|
+
aFilterIds.push(oFilterItem.getId());
|
|
98
91
|
});
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
92
|
+
aFilterFields.sort(function(aFirstItem: any, aSecondItem: any) {
|
|
93
|
+
let sFirstItemVFId, sSecondItemVFId;
|
|
94
|
+
aFirstItem.getContent().forEach(function(oInnerControl: any) {
|
|
95
|
+
if (oInnerControl.isA("sap.ui.mdc.FilterField")) {
|
|
96
|
+
sFirstItemVFId = oInnerControl.getId();
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
aSecondItem.getContent().forEach(function(oInnerControl: any) {
|
|
100
|
+
if (oInnerControl.isA("sap.ui.mdc.FilterField")) {
|
|
101
|
+
sSecondItemVFId = oInnerControl.getId();
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
return aFilterIds.indexOf(sFirstItemVFId) - aFilterIds.indexOf(sSecondItemVFId);
|
|
103
105
|
});
|
|
104
|
-
return
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
this._addButtons();
|
|
106
|
+
return aFilterFields;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
_createInnerLayout() {
|
|
110
|
+
this._oFilterBarLayout = new FilterContainer();
|
|
111
|
+
this._cLayoutItem = FilterItemLayout;
|
|
112
|
+
this._oFilterBarLayout.getInner().addStyleClass("sapUiMdcFilterBarBaseAFLayout");
|
|
113
|
+
this._addButtons();
|
|
113
114
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
115
|
+
// TODO: Check with MDC if there is a better way to load visual filter on the basis of control property
|
|
116
|
+
// _createInnerLayout is called on Init by the filter bar base.
|
|
117
|
+
// This mean that we do not have access to the control properties yet
|
|
118
|
+
// and hence we cannot decide on the basis of control properties whether initial layout should be compact or visual
|
|
119
|
+
// As a result we have to do this workaround to always load the compact layout by default
|
|
120
|
+
// And toogle the same in case the initialLayout was supposed to be visual filters.
|
|
121
|
+
const oInnerLayout = this._oFilterBarLayout.getInner();
|
|
122
|
+
const oFilterContainerInnerLayoutEventDelegate = {
|
|
123
|
+
onBeforeRendering: () => {
|
|
124
|
+
if (this.initialLayout === "visual") {
|
|
125
|
+
this._toggleLayout();
|
|
126
|
+
}
|
|
127
|
+
oInnerLayout.removeEventDelegate(oFilterContainerInnerLayoutEventDelegate);
|
|
125
128
|
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
};
|
|
129
|
-
oInnerLayout.addEventDelegate(oFilterContainerInnerLayoutEventDelegate);
|
|
129
|
+
};
|
|
130
|
+
oInnerLayout.addEventDelegate(oFilterContainerInnerLayoutEventDelegate);
|
|
130
131
|
|
|
131
|
-
|
|
132
|
-
};
|
|
133
|
-
FilterBar.prototype.exit = function() {
|
|
134
|
-
(MdcFilterBar.prototype as any).exit.apply(this, []);
|
|
135
|
-
// Sometimes upon external navigation this._SegmentedButton is already destroyed
|
|
136
|
-
// so check if it exists and then only remove stuff
|
|
137
|
-
if (this._oSegmentedButton) {
|
|
138
|
-
this._oSegmentedButton.detachEvent("select", this._toggleLayout);
|
|
139
|
-
delete this._oSegmentedButton;
|
|
132
|
+
this.setAggregation("layout", this._oFilterBarLayout, true);
|
|
140
133
|
}
|
|
141
|
-
};
|
|
142
134
|
|
|
135
|
+
exit() {
|
|
136
|
+
super.exit();
|
|
137
|
+
// Sometimes upon external navigation this._SegmentedButton is already destroyed
|
|
138
|
+
// so check if it exists and then only remove stuff
|
|
139
|
+
if (this._oSegmentedButton) {
|
|
140
|
+
this._oSegmentedButton.detachEvent("select", this._toggleLayout);
|
|
141
|
+
delete this._oSegmentedButton;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
interface FilterBar {
|
|
146
|
+
_addButtons(): any;
|
|
147
|
+
}
|
|
143
148
|
export default FilterBar;
|
|
@@ -2,47 +2,112 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/ui/core/Control"], function (Control) {
|
|
5
|
+
sap.ui.define(["sap/fe/core/helpers/ClassSupport", "sap/ui/core/Control"], function (ClassSupport, Control) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
8
|
+
var _dec, _dec2, _dec3, _dec4, _dec5, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4;
|
|
9
|
+
|
|
10
|
+
var property = ClassSupport.property;
|
|
11
|
+
var implementInterface = ClassSupport.implementInterface;
|
|
12
|
+
var defineUI5Class = ClassSupport.defineUI5Class;
|
|
13
|
+
var aggregation = ClassSupport.aggregation;
|
|
14
|
+
|
|
15
|
+
function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }
|
|
16
|
+
|
|
17
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
18
|
+
|
|
19
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
20
|
+
|
|
21
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
22
|
+
|
|
23
|
+
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
|
|
24
|
+
|
|
25
|
+
function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }
|
|
26
|
+
|
|
27
|
+
var FormElementWrapper = (_dec = defineUI5Class("sap.fe.core.controls.FormElementWrapper"), _dec2 = implementInterface("sap.ui.core.IFormContent"), _dec3 = property({
|
|
28
|
+
type: "sap.ui.core.CSSSize",
|
|
29
|
+
defaultValue: null
|
|
30
|
+
}), _dec4 = property({
|
|
31
|
+
type: "boolean",
|
|
32
|
+
defaultValue: false
|
|
33
|
+
}), _dec5 = aggregation({
|
|
34
|
+
type: "sap.ui.core.Control",
|
|
35
|
+
multiple: false,
|
|
36
|
+
isDefault: true
|
|
37
|
+
}), _dec(_class = (_class2 = /*#__PURE__*/function (_Control) {
|
|
38
|
+
_inheritsLoose(FormElementWrapper, _Control);
|
|
39
|
+
|
|
40
|
+
function FormElementWrapper() {
|
|
41
|
+
var _this;
|
|
42
|
+
|
|
43
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
44
|
+
args[_key] = arguments[_key];
|
|
27
45
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
46
|
+
|
|
47
|
+
_this = _Control.call.apply(_Control, [this].concat(args)) || this;
|
|
48
|
+
|
|
49
|
+
_initializerDefineProperty(_this, "__implements__sap_ui_core_IFormContent", _descriptor, _assertThisInitialized(_this));
|
|
50
|
+
|
|
51
|
+
_initializerDefineProperty(_this, "width", _descriptor2, _assertThisInitialized(_this));
|
|
52
|
+
|
|
53
|
+
_initializerDefineProperty(_this, "formDoNotAdjustWidth", _descriptor3, _assertThisInitialized(_this));
|
|
54
|
+
|
|
55
|
+
_initializerDefineProperty(_this, "content", _descriptor4, _assertThisInitialized(_this));
|
|
56
|
+
|
|
57
|
+
return _this;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
var _proto = FormElementWrapper.prototype;
|
|
61
|
+
|
|
62
|
+
_proto.getAccessibilityInfo = function getAccessibilityInfo() {
|
|
63
|
+
var oContent = this.content;
|
|
31
64
|
return oContent && oContent.getAccessibilityInfo ? oContent.getAccessibilityInfo() : {};
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
FormElementWrapper.render = function render(oRm, oControl) {
|
|
68
|
+
oRm.openStart("div", oControl);
|
|
69
|
+
oRm.style("min-height", "1rem");
|
|
70
|
+
oRm.style("width", oControl.width);
|
|
71
|
+
oRm.openEnd();
|
|
72
|
+
oRm.openStart("div");
|
|
73
|
+
oRm.style("display", "flex");
|
|
74
|
+
oRm.style("box-sizing", "border-box");
|
|
75
|
+
oRm.style("justify-content", "space-between");
|
|
76
|
+
oRm.style("align-items", "center");
|
|
77
|
+
oRm.style("flex-wrap", "wrap");
|
|
78
|
+
oRm.style("align-content", "stretch");
|
|
79
|
+
oRm.style("width", "100%");
|
|
80
|
+
oRm.openEnd();
|
|
81
|
+
oRm.renderControl(oControl.content); // render the child Control
|
|
82
|
+
|
|
83
|
+
oRm.close("div");
|
|
84
|
+
oRm.close("div"); // end of the complete Control
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
return FormElementWrapper;
|
|
88
|
+
}(Control), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "__implements__sap_ui_core_IFormContent", [_dec2], {
|
|
89
|
+
configurable: true,
|
|
90
|
+
enumerable: true,
|
|
91
|
+
writable: true,
|
|
92
|
+
initializer: function () {
|
|
93
|
+
return true;
|
|
44
94
|
}
|
|
45
|
-
})
|
|
95
|
+
}), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, "width", [_dec3], {
|
|
96
|
+
configurable: true,
|
|
97
|
+
enumerable: true,
|
|
98
|
+
writable: true,
|
|
99
|
+
initializer: null
|
|
100
|
+
}), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, "formDoNotAdjustWidth", [_dec4], {
|
|
101
|
+
configurable: true,
|
|
102
|
+
enumerable: true,
|
|
103
|
+
writable: true,
|
|
104
|
+
initializer: null
|
|
105
|
+
}), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, "content", [_dec5], {
|
|
106
|
+
configurable: true,
|
|
107
|
+
enumerable: true,
|
|
108
|
+
writable: true,
|
|
109
|
+
initializer: null
|
|
110
|
+
})), _class2)) || _class);
|
|
46
111
|
return FormElementWrapper;
|
|
47
112
|
}, false);
|
|
48
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
113
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZvcm1FbGVtZW50V3JhcHBlci50cyJdLCJuYW1lcyI6WyJGb3JtRWxlbWVudFdyYXBwZXIiLCJkZWZpbmVVSTVDbGFzcyIsImltcGxlbWVudEludGVyZmFjZSIsInByb3BlcnR5IiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsImFnZ3JlZ2F0aW9uIiwibXVsdGlwbGUiLCJpc0RlZmF1bHQiLCJnZXRBY2Nlc3NpYmlsaXR5SW5mbyIsIm9Db250ZW50IiwiY29udGVudCIsInJlbmRlciIsIm9SbSIsIm9Db250cm9sIiwib3BlblN0YXJ0Iiwic3R5bGUiLCJ3aWR0aCIsIm9wZW5FbmQiLCJyZW5kZXJDb250cm9sIiwiY2xvc2UiLCJDb250cm9sIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUlNQSxrQixXQURMQyxjQUFjLENBQUMseUNBQUQsQyxVQUViQyxrQkFBa0IsQ0FBQywwQkFBRCxDLFVBR2xCQyxRQUFRLENBQUM7QUFDVEMsSUFBQUEsSUFBSSxFQUFFLHFCQURHO0FBRVRDLElBQUFBLFlBQVksRUFBRTtBQUZMLEdBQUQsQyxVQUtSRixRQUFRLENBQUM7QUFDVEMsSUFBQUEsSUFBSSxFQUFFLFNBREc7QUFFVEMsSUFBQUEsWUFBWSxFQUFFO0FBRkwsR0FBRCxDLFVBS1JDLFdBQVcsQ0FBQztBQUFFRixJQUFBQSxJQUFJLEVBQUUscUJBQVI7QUFBK0JHLElBQUFBLFFBQVEsRUFBRSxLQUF6QztBQUFnREMsSUFBQUEsU0FBUyxFQUFFO0FBQTNELEdBQUQsQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztXQUdaQyxvQixHQUFBLGdDQUF1QjtBQUN0QixVQUFNQyxRQUFRLEdBQUcsS0FBS0MsT0FBdEI7QUFDQSxhQUFPRCxRQUFRLElBQUlBLFFBQVEsQ0FBQ0Qsb0JBQXJCLEdBQTRDQyxRQUFRLENBQUNELG9CQUFULEVBQTVDLEdBQThFLEVBQXJGO0FBQ0EsSzs7dUJBQ01HLE0sR0FBUCxnQkFBY0MsR0FBZCxFQUFrQ0MsUUFBbEMsRUFBZ0U7QUFDL0RELE1BQUFBLEdBQUcsQ0FBQ0UsU0FBSixDQUFjLEtBQWQsRUFBcUJELFFBQXJCO0FBQ0FELE1BQUFBLEdBQUcsQ0FBQ0csS0FBSixDQUFVLFlBQVYsRUFBd0IsTUFBeEI7QUFDQUgsTUFBQUEsR0FBRyxDQUFDRyxLQUFKLENBQVUsT0FBVixFQUFtQkYsUUFBUSxDQUFDRyxLQUE1QjtBQUNBSixNQUFBQSxHQUFHLENBQUNLLE9BQUo7QUFFQUwsTUFBQUEsR0FBRyxDQUFDRSxTQUFKLENBQWMsS0FBZDtBQUNBRixNQUFBQSxHQUFHLENBQUNHLEtBQUosQ0FBVSxTQUFWLEVBQXFCLE1BQXJCO0FBQ0FILE1BQUFBLEdBQUcsQ0FBQ0csS0FBSixDQUFVLFlBQVYsRUFBd0IsWUFBeEI7QUFDQUgsTUFBQUEsR0FBRyxDQUFDRyxLQUFKLENBQVUsaUJBQVYsRUFBNkIsZUFBN0I7QUFDQUgsTUFBQUEsR0FBRyxDQUFDRyxLQUFKLENBQVUsYUFBVixFQUF5QixRQUF6QjtBQUNBSCxNQUFBQSxHQUFHLENBQUNHLEtBQUosQ0FBVSxXQUFWLEVBQXVCLE1BQXZCO0FBQ0FILE1BQUFBLEdBQUcsQ0FBQ0csS0FBSixDQUFVLGVBQVYsRUFBMkIsU0FBM0I7QUFDQUgsTUFBQUEsR0FBRyxDQUFDRyxLQUFKLENBQVUsT0FBVixFQUFtQixNQUFuQjtBQUNBSCxNQUFBQSxHQUFHLENBQUNLLE9BQUo7QUFDQUwsTUFBQUEsR0FBRyxDQUFDTSxhQUFKLENBQWtCTCxRQUFRLENBQUNILE9BQTNCLEVBZitELENBZTFCOztBQUNyQ0UsTUFBQUEsR0FBRyxDQUFDTyxLQUFKLENBQVUsS0FBVjtBQUNBUCxNQUFBQSxHQUFHLENBQUNPLEtBQUosQ0FBVSxLQUFWLEVBakIrRCxDQWlCN0M7QUFDbEIsSzs7O0lBdkMrQkMsTzs7Ozs7YUFFa0IsSTs7Ozs7Ozs7Ozs7Ozs7Ozs7O1NBdUNwQ3JCLGtCIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZ2dyZWdhdGlvbiwgZGVmaW5lVUk1Q2xhc3MsIGltcGxlbWVudEludGVyZmFjZSwgcHJvcGVydHkgfSBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9DbGFzc1N1cHBvcnRcIjtcbmltcG9ydCBDb250cm9sIGZyb20gXCJzYXAvdWkvY29yZS9Db250cm9sXCI7XG5pbXBvcnQgeyBDU1NTaXplLCBJRm9ybUNvbnRlbnQgfSBmcm9tIFwic2FwL3VpL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IFJlbmRlck1hbmFnZXIgZnJvbSBcInNhcC91aS9jb3JlL1JlbmRlck1hbmFnZXJcIjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLmNvcmUuY29udHJvbHMuRm9ybUVsZW1lbnRXcmFwcGVyXCIpXG5jbGFzcyBGb3JtRWxlbWVudFdyYXBwZXIgZXh0ZW5kcyBDb250cm9sIGltcGxlbWVudHMgSUZvcm1Db250ZW50IHtcblx0QGltcGxlbWVudEludGVyZmFjZShcInNhcC51aS5jb3JlLklGb3JtQ29udGVudFwiKVxuXHRfX2ltcGxlbWVudHNfX3NhcF91aV9jb3JlX0lGb3JtQ29udGVudDogYm9vbGVhbiA9IHRydWU7XG5cblx0QHByb3BlcnR5KHtcblx0XHR0eXBlOiBcInNhcC51aS5jb3JlLkNTU1NpemVcIixcblx0XHRkZWZhdWx0VmFsdWU6IG51bGxcblx0fSlcblx0d2lkdGghOiBDU1NTaXplO1xuXHRAcHJvcGVydHkoe1xuXHRcdHR5cGU6IFwiYm9vbGVhblwiLFxuXHRcdGRlZmF1bHRWYWx1ZTogZmFsc2Vcblx0fSlcblx0Zm9ybURvTm90QWRqdXN0V2lkdGghOiBib29sZWFuO1xuXHRAYWdncmVnYXRpb24oeyB0eXBlOiBcInNhcC51aS5jb3JlLkNvbnRyb2xcIiwgbXVsdGlwbGU6IGZhbHNlLCBpc0RlZmF1bHQ6IHRydWUgfSlcblx0Y29udGVudCE6IENvbnRyb2w7XG5cblx0Z2V0QWNjZXNzaWJpbGl0eUluZm8oKSB7XG5cdFx0Y29uc3Qgb0NvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7XG5cdFx0cmV0dXJuIG9Db250ZW50ICYmIG9Db250ZW50LmdldEFjY2Vzc2liaWxpdHlJbmZvID8gb0NvbnRlbnQuZ2V0QWNjZXNzaWJpbGl0eUluZm8oKSA6IHt9O1xuXHR9XG5cdHN0YXRpYyByZW5kZXIob1JtOiBSZW5kZXJNYW5hZ2VyLCBvQ29udHJvbDogRm9ybUVsZW1lbnRXcmFwcGVyKSB7XG5cdFx0b1JtLm9wZW5TdGFydChcImRpdlwiLCBvQ29udHJvbCk7XG5cdFx0b1JtLnN0eWxlKFwibWluLWhlaWdodFwiLCBcIjFyZW1cIik7XG5cdFx0b1JtLnN0eWxlKFwid2lkdGhcIiwgb0NvbnRyb2wud2lkdGgpO1xuXHRcdG9SbS5vcGVuRW5kKCk7XG5cblx0XHRvUm0ub3BlblN0YXJ0KFwiZGl2XCIpO1xuXHRcdG9SbS5zdHlsZShcImRpc3BsYXlcIiwgXCJmbGV4XCIpO1xuXHRcdG9SbS5zdHlsZShcImJveC1zaXppbmdcIiwgXCJib3JkZXItYm94XCIpO1xuXHRcdG9SbS5zdHlsZShcImp1c3RpZnktY29udGVudFwiLCBcInNwYWNlLWJldHdlZW5cIik7XG5cdFx0b1JtLnN0eWxlKFwiYWxpZ24taXRlbXNcIiwgXCJjZW50ZXJcIik7XG5cdFx0b1JtLnN0eWxlKFwiZmxleC13cmFwXCIsIFwid3JhcFwiKTtcblx0XHRvUm0uc3R5bGUoXCJhbGlnbi1jb250ZW50XCIsIFwic3RyZXRjaFwiKTtcblx0XHRvUm0uc3R5bGUoXCJ3aWR0aFwiLCBcIjEwMCVcIik7XG5cdFx0b1JtLm9wZW5FbmQoKTtcblx0XHRvUm0ucmVuZGVyQ29udHJvbChvQ29udHJvbC5jb250ZW50KTsgLy8gcmVuZGVyIHRoZSBjaGlsZCBDb250cm9sXG5cdFx0b1JtLmNsb3NlKFwiZGl2XCIpO1xuXHRcdG9SbS5jbG9zZShcImRpdlwiKTsgLy8gZW5kIG9mIHRoZSBjb21wbGV0ZSBDb250cm9sXG5cdH1cbn1cbmV4cG9ydCBkZWZhdWx0IEZvcm1FbGVtZW50V3JhcHBlcjtcbiJdfQ==
|
|
@@ -1,40 +1,48 @@
|
|
|
1
|
+
import { aggregation, defineUI5Class, implementInterface, property } from "sap/fe/core/helpers/ClassSupport";
|
|
1
2
|
import Control from "sap/ui/core/Control";
|
|
3
|
+
import { CSSSize, IFormContent } from "sap/ui/core/library";
|
|
4
|
+
import RenderManager from "sap/ui/core/RenderManager";
|
|
2
5
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
},
|
|
24
|
-
getAccessibilityInfo: function(this: FormElementWrapperType) {
|
|
25
|
-
const oContent = this.getContent();
|
|
6
|
+
@defineUI5Class("sap.fe.core.controls.FormElementWrapper")
|
|
7
|
+
class FormElementWrapper extends Control implements IFormContent {
|
|
8
|
+
@implementInterface("sap.ui.core.IFormContent")
|
|
9
|
+
__implements__sap_ui_core_IFormContent: boolean = true;
|
|
10
|
+
|
|
11
|
+
@property({
|
|
12
|
+
type: "sap.ui.core.CSSSize",
|
|
13
|
+
defaultValue: null
|
|
14
|
+
})
|
|
15
|
+
width!: CSSSize;
|
|
16
|
+
@property({
|
|
17
|
+
type: "boolean",
|
|
18
|
+
defaultValue: false
|
|
19
|
+
})
|
|
20
|
+
formDoNotAdjustWidth!: boolean;
|
|
21
|
+
@aggregation({ type: "sap.ui.core.Control", multiple: false, isDefault: true })
|
|
22
|
+
content!: Control;
|
|
23
|
+
|
|
24
|
+
getAccessibilityInfo() {
|
|
25
|
+
const oContent = this.content;
|
|
26
26
|
return oContent && oContent.getAccessibilityInfo ? oContent.getAccessibilityInfo() : {};
|
|
27
|
-
},
|
|
28
|
-
renderer: {
|
|
29
|
-
apiVersion: 2,
|
|
30
|
-
render: function(oRm: any, oControl: any) {
|
|
31
|
-
oRm.openStart("div", oControl);
|
|
32
|
-
oRm.style("min-height", "1rem");
|
|
33
|
-
oRm.style("width", oControl.getWidth());
|
|
34
|
-
oRm.openEnd();
|
|
35
|
-
oRm.renderControl(oControl.getContent()); // render the child Control
|
|
36
|
-
oRm.close("div"); // end of the complete Control
|
|
37
|
-
}
|
|
38
27
|
}
|
|
39
|
-
|
|
28
|
+
static render(oRm: RenderManager, oControl: FormElementWrapper) {
|
|
29
|
+
oRm.openStart("div", oControl);
|
|
30
|
+
oRm.style("min-height", "1rem");
|
|
31
|
+
oRm.style("width", oControl.width);
|
|
32
|
+
oRm.openEnd();
|
|
33
|
+
|
|
34
|
+
oRm.openStart("div");
|
|
35
|
+
oRm.style("display", "flex");
|
|
36
|
+
oRm.style("box-sizing", "border-box");
|
|
37
|
+
oRm.style("justify-content", "space-between");
|
|
38
|
+
oRm.style("align-items", "center");
|
|
39
|
+
oRm.style("flex-wrap", "wrap");
|
|
40
|
+
oRm.style("align-content", "stretch");
|
|
41
|
+
oRm.style("width", "100%");
|
|
42
|
+
oRm.openEnd();
|
|
43
|
+
oRm.renderControl(oControl.content); // render the child Control
|
|
44
|
+
oRm.close("div");
|
|
45
|
+
oRm.close("div"); // end of the complete Control
|
|
46
|
+
}
|
|
47
|
+
}
|
|
40
48
|
export default FormElementWrapper;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
+
* (c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
|
+
*/
|
|
5
|
+
sap.ui.define(["sap/m/Select", "sap/m/SelectRenderer"], function (Select, SelectRenderer) {
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
var MassEditSelect = Select.extend("sap.fe.core.controls.MassEditSelect", {
|
|
9
|
+
metadata: {
|
|
10
|
+
properties: {
|
|
11
|
+
showValueHelp: {
|
|
12
|
+
type: "boolean"
|
|
13
|
+
},
|
|
14
|
+
valueHelpIconSrc: {
|
|
15
|
+
type: "string"
|
|
16
|
+
},
|
|
17
|
+
selectValue: {
|
|
18
|
+
type: "string"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
events: {
|
|
22
|
+
valueHelpRequest: {}
|
|
23
|
+
},
|
|
24
|
+
interfaces: ["sap.ui.core.IFormContent"]
|
|
25
|
+
},
|
|
26
|
+
renderer: {
|
|
27
|
+
apiVersion: 2,
|
|
28
|
+
render: SelectRenderer.render
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
return MassEditSelect;
|
|
32
|
+
}, false);
|
|
33
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1hc3NFZGl0U2VsZWN0LnRzIl0sIm5hbWVzIjpbIk1hc3NFZGl0U2VsZWN0IiwiU2VsZWN0IiwiZXh0ZW5kIiwibWV0YWRhdGEiLCJwcm9wZXJ0aWVzIiwic2hvd1ZhbHVlSGVscCIsInR5cGUiLCJ2YWx1ZUhlbHBJY29uU3JjIiwic2VsZWN0VmFsdWUiLCJldmVudHMiLCJ2YWx1ZUhlbHBSZXF1ZXN0IiwiaW50ZXJmYWNlcyIsInJlbmRlcmVyIiwiYXBpVmVyc2lvbiIsInJlbmRlciIsIlNlbGVjdFJlbmRlcmVyIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7O0FBa0JBLE1BQU1BLGNBQWMsR0FBR0MsTUFBTSxDQUFDQyxNQUFQLENBQWMscUNBQWQsRUFBcUQ7QUFDM0VDLElBQUFBLFFBQVEsRUFBRTtBQUNUQyxNQUFBQSxVQUFVLEVBQUU7QUFDWEMsUUFBQUEsYUFBYSxFQUFFO0FBQ2RDLFVBQUFBLElBQUksRUFBRTtBQURRLFNBREo7QUFJWEMsUUFBQUEsZ0JBQWdCLEVBQUU7QUFDakJELFVBQUFBLElBQUksRUFBRTtBQURXLFNBSlA7QUFPWEUsUUFBQUEsV0FBVyxFQUFFO0FBQ1pGLFVBQUFBLElBQUksRUFBRTtBQURNO0FBUEYsT0FESDtBQVlURyxNQUFBQSxNQUFNLEVBQUU7QUFDUEMsUUFBQUEsZ0JBQWdCLEVBQUU7QUFEWCxPQVpDO0FBZVRDLE1BQUFBLFVBQVUsRUFBRSxDQUFDLDBCQUFEO0FBZkgsS0FEaUU7QUFrQjNFQyxJQUFBQSxRQUFRLEVBQUU7QUFDVEMsTUFBQUEsVUFBVSxFQUFFLENBREg7QUFFVEMsTUFBQUEsTUFBTSxFQUFFQyxjQUFjLENBQUNEO0FBRmQ7QUFsQmlFLEdBQXJELENBQXZCO1NBd0JlZCxjIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnN0cnVjdG9yIGZvciBhIG5ldyBjdXN0b20gY29tYm9ib3guXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IFtzSWRdIElEIGZvciB0aGUgbmV3IGNvbnRyb2wsIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGlmIG5vIElEIGlzIGdpdmVuXG4gKiBAcGFyYW0ge29iamVjdH0gW21TZXR0aW5nc10gSW5pdGlhbCBzZXR0aW5ncyBmb3IgdGhlIG5ldyBjb250cm9sXG4gKiBAY2xhc3MgUmVwcmVzZW50cyBhIGN1c3RvbSBjb21ib2JveCBvbiB0aGUgVUkuXG4gKiBAZXh0ZW5kcyBzYXAubS5TZWxlY3RcbiAqIEBjbGFzc1xuICogQHByaXZhdGVcbiAqIEBzaW5jZSAxLjk4LjBcbiAqIEBhbGlhcyBjb250cm9sIHNhcC5mZS5jb3JlLmNvbnRyb2xzLk1hc3NFZGl0U2VsZWN0XG4gKi9cblxuaW1wb3J0IFNlbGVjdCBmcm9tIFwic2FwL20vU2VsZWN0XCI7XG5pbXBvcnQgU2VsZWN0UmVuZGVyZXIgZnJvbSBcInNhcC9tL1NlbGVjdFJlbmRlcmVyXCI7XG5cbnR5cGUgTWFzc0VkaXRTZWxlY3RUeXBlID0gU2VsZWN0ICYge1xuXHRzZXRTaG93VmFsdWVIZWxwKHNob3dWYWx1ZUhlbHA6IGJvb2xlYW4pOiB2b2lkO1xufTtcblxuY29uc3QgTWFzc0VkaXRTZWxlY3QgPSBTZWxlY3QuZXh0ZW5kKFwic2FwLmZlLmNvcmUuY29udHJvbHMuTWFzc0VkaXRTZWxlY3RcIiwge1xuXHRtZXRhZGF0YToge1xuXHRcdHByb3BlcnRpZXM6IHtcblx0XHRcdHNob3dWYWx1ZUhlbHA6IHtcblx0XHRcdFx0dHlwZTogXCJib29sZWFuXCJcblx0XHRcdH0sXG5cdFx0XHR2YWx1ZUhlbHBJY29uU3JjOiB7XG5cdFx0XHRcdHR5cGU6IFwic3RyaW5nXCJcblx0XHRcdH0sXG5cdFx0XHRzZWxlY3RWYWx1ZToge1xuXHRcdFx0XHR0eXBlOiBcInN0cmluZ1wiXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRldmVudHM6IHtcblx0XHRcdHZhbHVlSGVscFJlcXVlc3Q6IHt9XG5cdFx0fSxcblx0XHRpbnRlcmZhY2VzOiBbXCJzYXAudWkuY29yZS5JRm9ybUNvbnRlbnRcIl1cblx0fSxcblx0cmVuZGVyZXI6IHtcblx0XHRhcGlWZXJzaW9uOiAyLFxuXHRcdHJlbmRlcjogU2VsZWN0UmVuZGVyZXIucmVuZGVyXG5cdH1cbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBNYXNzRWRpdFNlbGVjdDtcbiJdfQ==
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Constructor for a new custom combobox.
|
|
3
|
+
*
|
|
4
|
+
* @param {string} [sId] ID for the new control, generated automatically if no ID is given
|
|
5
|
+
* @param {object} [mSettings] Initial settings for the new control
|
|
6
|
+
* @class Represents a custom combobox on the UI.
|
|
7
|
+
* @extends sap.m.Select
|
|
8
|
+
* @class
|
|
9
|
+
* @private
|
|
10
|
+
* @since 1.98.0
|
|
11
|
+
* @alias control sap.fe.core.controls.MassEditSelect
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
import Select from "sap/m/Select";
|
|
15
|
+
import SelectRenderer from "sap/m/SelectRenderer";
|
|
16
|
+
|
|
17
|
+
type MassEditSelectType = Select & {
|
|
18
|
+
setShowValueHelp(showValueHelp: boolean): void;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const MassEditSelect = Select.extend("sap.fe.core.controls.MassEditSelect", {
|
|
22
|
+
metadata: {
|
|
23
|
+
properties: {
|
|
24
|
+
showValueHelp: {
|
|
25
|
+
type: "boolean"
|
|
26
|
+
},
|
|
27
|
+
valueHelpIconSrc: {
|
|
28
|
+
type: "string"
|
|
29
|
+
},
|
|
30
|
+
selectValue: {
|
|
31
|
+
type: "string"
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
events: {
|
|
35
|
+
valueHelpRequest: {}
|
|
36
|
+
},
|
|
37
|
+
interfaces: ["sap.ui.core.IFormContent"]
|
|
38
|
+
},
|
|
39
|
+
renderer: {
|
|
40
|
+
apiVersion: 2,
|
|
41
|
+
render: SelectRenderer.render
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
export default MassEditSelect;
|