@sapui5/sap.fe.macros 1.141.2 → 1.142.1
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 +1 -1
- package/src/sap/fe/macros/.library +1 -1
- package/src/sap/fe/macros/Breadcrumbs.js +4 -10
- package/src/sap/fe/macros/Breadcrumbs.tsx +2 -8
- package/src/sap/fe/macros/Chart.js +34 -23
- package/src/sap/fe/macros/Chart.tsx +25 -11
- package/src/sap/fe/macros/CollaborativeDraftHandler.js +48 -31
- package/src/sap/fe/macros/CollaborativeDraftHandler.tsx +51 -26
- package/src/sap/fe/macros/CollectionBindingInfo.js +8 -2
- package/src/sap/fe/macros/CollectionBindingInfo.ts +11 -6
- package/src/sap/fe/macros/CommonHelper.js +14 -24
- package/src/sap/fe/macros/CommonHelper.ts +18 -25
- package/src/sap/fe/macros/Field.js +34 -17
- package/src/sap/fe/macros/Field.ts +64 -32
- package/src/sap/fe/macros/FooterContent.js +7 -3
- package/src/sap/fe/macros/FooterContent.tsx +8 -13
- package/src/sap/fe/macros/KPITag.js +1 -1
- package/src/sap/fe/macros/KPITag.tsx +3 -1
- package/src/sap/fe/macros/MacroAPI.js +3 -2
- package/src/sap/fe/macros/MacroAPI.ts +2 -2
- package/src/sap/fe/macros/MessageButton.js +4 -3
- package/src/sap/fe/macros/MessageButton.tsx +7 -3
- package/src/sap/fe/macros/MicroChart.js +10 -6
- package/src/sap/fe/macros/MicroChart.tsx +8 -2
- package/src/sap/fe/macros/MultiValueField.js +22 -36
- package/src/sap/fe/macros/MultiValueField.tsx +34 -66
- package/src/sap/fe/macros/Page.js +8 -4
- package/src/sap/fe/macros/Page.tsx +13 -4
- package/src/sap/fe/macros/RichTextEditor.js +14 -17
- package/src/sap/fe/macros/RichTextEditor.tsx +12 -16
- package/src/sap/fe/macros/Status.js +35 -8
- package/src/sap/fe/macros/Status.tsx +23 -2
- package/src/sap/fe/macros/ValueHelp.js +5 -2
- package/src/sap/fe/macros/ValueHelp.tsx +5 -0
- package/src/sap/fe/macros/ai/EasyFillDialog.js +2 -1
- package/src/sap/fe/macros/ai/EasyFillDialog.tsx +1 -0
- package/src/sap/fe/macros/ai/EasyFilterBar.js +7 -34
- package/src/sap/fe/macros/ai/EasyFilterBar.tsx +6 -35
- package/src/sap/fe/macros/ai/EasyFilterDataFetcher.js +31 -7
- package/src/sap/fe/macros/ai/EasyFilterDataFetcher.ts +33 -6
- package/src/sap/fe/macros/ai/SummarizationButton.js +6 -4
- package/src/sap/fe/macros/ai/SummarizationButton.tsx +5 -3
- package/src/sap/fe/macros/chart/Action.js +37 -2
- package/src/sap/fe/macros/chart/Action.ts +21 -0
- package/src/sap/fe/macros/chart/ActionGroup.js +25 -2
- package/src/sap/fe/macros/chart/ActionGroup.ts +13 -0
- package/src/sap/fe/macros/chart/ChartDelegate.js +19 -8
- package/src/sap/fe/macros/chart/ChartDelegate.ts +36 -12
- package/src/sap/fe/macros/chart/MdcChartTemplate.js +59 -14
- package/src/sap/fe/macros/chart/MdcChartTemplate.tsx +81 -31
- package/src/sap/fe/macros/chart/OverflowGroup.js +62 -0
- package/src/sap/fe/macros/chart/OverflowGroup.ts +22 -0
- package/src/sap/fe/macros/controls/FilterBar.js +39 -3
- package/src/sap/fe/macros/controls/FilterBar.ts +50 -2
- package/src/sap/fe/macros/controls/RadioButtons.js +18 -5
- package/src/sap/fe/macros/controls/RadioButtons.tsx +10 -1
- package/src/sap/fe/macros/controls/TextLink.js +15 -1
- package/src/sap/fe/macros/controls/TextLink.tsx +19 -0
- package/src/sap/fe/macros/coreUI/CreateDialog.js +2 -2
- package/src/sap/fe/macros/coreUI/CreateDialog.tsx +1 -1
- package/src/sap/fe/macros/coreUI/OperationParameterDialog.js +46 -13
- package/src/sap/fe/macros/coreUI/OperationParameterDialog.tsx +51 -10
- package/src/sap/fe/macros/draftIndicator/DraftIndicator.js +4 -2
- package/src/sap/fe/macros/draftIndicator/DraftIndicator.tsx +3 -1
- package/src/sap/fe/macros/field/FieldFormatOptions.js +3 -3
- package/src/sap/fe/macros/field/FieldFormatOptions.ts +1 -1
- package/src/sap/fe/macros/field/FieldHelper.js +4 -3
- package/src/sap/fe/macros/field/FieldHelper.ts +7 -1
- package/src/sap/fe/macros/field/FieldRuntime.js +38 -8
- package/src/sap/fe/macros/field/FieldRuntime.ts +65 -7
- package/src/sap/fe/macros/field/FieldRuntimeHelper.js +6 -35
- package/src/sap/fe/macros/field/FieldRuntimeHelper.ts +35 -60
- package/src/sap/fe/macros/field/FieldTemplating.js +10 -4
- package/src/sap/fe/macros/field/FieldTemplating.ts +12 -5
- package/src/sap/fe/macros/filter/FilterFieldHelper.js +6 -4
- package/src/sap/fe/macros/filter/FilterFieldHelper.ts +7 -2
- package/src/sap/fe/macros/filter/FilterUtils.js +100 -36
- package/src/sap/fe/macros/filter/FilterUtils.ts +127 -39
- package/src/sap/fe/macros/filterBar/ExtendedSemanticDateOperators.js +2 -2
- package/src/sap/fe/macros/filterBar/ExtendedSemanticDateOperators.ts +1 -1
- package/src/sap/fe/macros/filterBar/FilterBar.block.js +13 -3
- package/src/sap/fe/macros/filterBar/FilterBar.block.tsx +29 -8
- package/src/sap/fe/macros/filterBar/FilterBarAPI.js +10 -7
- package/src/sap/fe/macros/filterBar/FilterBarAPI.ts +31 -16
- package/src/sap/fe/macros/filterBar/FilterBarDelegate.js +4 -3
- package/src/sap/fe/macros/filterBar/FilterBarDelegate.ts +5 -2
- package/src/sap/fe/macros/filterBar/mixin/FilterBarAPIStateHandler.js +4 -3
- package/src/sap/fe/macros/filterBar/mixin/FilterBarAPIStateHandler.ts +3 -2
- package/src/sap/fe/macros/form/Form.block.js +27 -2
- package/src/sap/fe/macros/form/Form.block.ts +31 -11
- package/src/sap/fe/macros/form/FormActionButtons.fragment.xml +13 -3
- package/src/sap/fe/macros/form/FormContainer.block.js +104 -72
- package/src/sap/fe/macros/form/FormContainer.block.ts +114 -72
- package/src/sap/fe/macros/formatters/TableFormatter.js +13 -10
- package/src/sap/fe/macros/formatters/TableFormatter.ts +11 -9
- package/src/sap/fe/macros/formatters/VisualFilterFormatter.js +6 -4
- package/src/sap/fe/macros/formatters/VisualFilterFormatter.ts +5 -5
- package/src/sap/fe/macros/inlineEdit/InlineEdit.js +5 -5
- package/src/sap/fe/macros/inlineEdit/InlineEdit.ts +4 -4
- package/src/sap/fe/macros/insights/InsightsService.js +3 -2
- package/src/sap/fe/macros/insights/InsightsService.ts +2 -1
- package/src/sap/fe/macros/internal/DataPoint.js +7 -8
- package/src/sap/fe/macros/internal/DataPoint.tsx +6 -9
- package/src/sap/fe/macros/internal/field/DisplayStyle.js +8 -6
- package/src/sap/fe/macros/internal/field/DisplayStyle.tsx +7 -8
- package/src/sap/fe/macros/internal/field/EditStyle.js +18 -24
- package/src/sap/fe/macros/internal/field/EditStyle.tsx +24 -44
- package/src/sap/fe/macros/internal/field/FieldBlockStructure.js +2 -2
- package/src/sap/fe/macros/internal/field/FieldBlockStructure.tsx +1 -1
- package/src/sap/fe/macros/internal/field/FieldStructure.js +1 -2
- package/src/sap/fe/macros/internal/field/FieldStructure.tsx +0 -2
- package/src/sap/fe/macros/internal/field/FieldStructureHelper.js +7 -7
- package/src/sap/fe/macros/internal/field/FieldStructureHelper.ts +17 -11
- package/src/sap/fe/macros/internal/helpers/DataPointTemplating.js +6 -2
- package/src/sap/fe/macros/internal/helpers/DataPointTemplating.ts +5 -1
- package/src/sap/fe/macros/internal/valuehelp/AdditionalValueFormatter.js +44 -12
- package/src/sap/fe/macros/internal/valuehelp/AdditionalValueFormatter.ts +42 -11
- package/src/sap/fe/macros/internal/valuehelp/AdditionalValueHelper.js +54 -1
- package/src/sap/fe/macros/internal/valuehelp/AdditionalValueHelper.ts +59 -0
- package/src/sap/fe/macros/internal/valuehelp/TableDelegate.js +4 -4
- package/src/sap/fe/macros/internal/valuehelp/TableDelegate.ts +6 -6
- package/src/sap/fe/macros/internal/valuehelp/ValueListDialogTable.fragment.xml +5 -2
- package/src/sap/fe/macros/library.js +5 -6
- package/src/sap/fe/macros/{library.ts → library.tsx} +3 -1
- package/src/sap/fe/macros/mdc/adapter/StateHelper.js +15 -5
- package/src/sap/fe/macros/mdc/adapter/StateHelper.ts +21 -5
- package/src/sap/fe/macros/messagebundle.properties +13 -5
- package/src/sap/fe/macros/messagebundle_ar.properties +12 -3
- package/src/sap/fe/macros/messagebundle_bg.properties +13 -4
- package/src/sap/fe/macros/messagebundle_ca.properties +12 -3
- package/src/sap/fe/macros/messagebundle_cnr.properties +12 -3
- package/src/sap/fe/macros/messagebundle_cs.properties +11 -2
- package/src/sap/fe/macros/messagebundle_cy.properties +12 -3
- package/src/sap/fe/macros/messagebundle_da.properties +12 -3
- package/src/sap/fe/macros/messagebundle_de.properties +16 -7
- package/src/sap/fe/macros/messagebundle_el.properties +13 -4
- package/src/sap/fe/macros/messagebundle_en.properties +13 -4
- package/src/sap/fe/macros/messagebundle_en_GB.properties +13 -4
- package/src/sap/fe/macros/messagebundle_en_US_saprigi.properties +12 -3
- package/src/sap/fe/macros/messagebundle_es.properties +12 -3
- package/src/sap/fe/macros/messagebundle_es_MX.properties +12 -3
- package/src/sap/fe/macros/messagebundle_et.properties +12 -3
- package/src/sap/fe/macros/messagebundle_fi.properties +12 -3
- package/src/sap/fe/macros/messagebundle_fr.properties +12 -3
- package/src/sap/fe/macros/messagebundle_fr_CA.properties +12 -3
- package/src/sap/fe/macros/messagebundle_hi.properties +12 -3
- package/src/sap/fe/macros/messagebundle_hr.properties +13 -4
- package/src/sap/fe/macros/messagebundle_hu.properties +12 -3
- package/src/sap/fe/macros/messagebundle_id.properties +18 -9
- package/src/sap/fe/macros/messagebundle_it.properties +12 -3
- package/src/sap/fe/macros/messagebundle_iw.properties +12 -3
- package/src/sap/fe/macros/messagebundle_ja.properties +12 -3
- package/src/sap/fe/macros/messagebundle_kk.properties +11 -2
- package/src/sap/fe/macros/messagebundle_ko.properties +13 -4
- package/src/sap/fe/macros/messagebundle_lt.properties +12 -3
- package/src/sap/fe/macros/messagebundle_lv.properties +12 -3
- package/src/sap/fe/macros/messagebundle_mk.properties +12 -3
- package/src/sap/fe/macros/messagebundle_ms.properties +12 -3
- package/src/sap/fe/macros/messagebundle_nl.properties +12 -3
- package/src/sap/fe/macros/messagebundle_no.properties +12 -3
- package/src/sap/fe/macros/messagebundle_pl.properties +12 -3
- package/src/sap/fe/macros/messagebundle_pt.properties +12 -3
- package/src/sap/fe/macros/messagebundle_pt_PT.properties +12 -3
- package/src/sap/fe/macros/messagebundle_ro.properties +13 -4
- package/src/sap/fe/macros/messagebundle_ru.properties +12 -3
- package/src/sap/fe/macros/messagebundle_sh.properties +12 -3
- package/src/sap/fe/macros/messagebundle_sk.properties +12 -3
- package/src/sap/fe/macros/messagebundle_sl.properties +13 -4
- package/src/sap/fe/macros/messagebundle_sr.properties +12 -3
- package/src/sap/fe/macros/messagebundle_sv.properties +12 -3
- package/src/sap/fe/macros/messagebundle_th.properties +11 -2
- package/src/sap/fe/macros/messagebundle_tr.properties +12 -3
- package/src/sap/fe/macros/messagebundle_uk.properties +12 -3
- package/src/sap/fe/macros/messagebundle_vi.properties +13 -4
- package/src/sap/fe/macros/messagebundle_zh_CN.properties +12 -3
- package/src/sap/fe/macros/messagebundle_zh_TW.properties +12 -3
- package/src/sap/fe/macros/messages/MessageButton.js +21 -12
- package/src/sap/fe/macros/messages/MessageButton.ts +21 -11
- package/src/sap/fe/macros/multivaluefield/MultiValueFieldDelegate.js +4 -3
- package/src/sap/fe/macros/multivaluefield/MultiValueFieldDelegate.ts +5 -2
- package/src/sap/fe/macros/quickView/QuickView.js +5 -4
- package/src/sap/fe/macros/quickView/QuickView.tsx +10 -3
- package/src/sap/fe/macros/richtexteditor/ButtonGroup.js +2 -2
- package/src/sap/fe/macros/richtexteditor/ButtonGroup.ts +2 -2
- package/src/sap/fe/macros/table/Action.js +15 -2
- package/src/sap/fe/macros/table/Action.ts +11 -1
- package/src/sap/fe/macros/table/ActionGroup.js +15 -2
- package/src/sap/fe/macros/table/ActionGroup.ts +8 -0
- package/src/sap/fe/macros/table/ActionGroupOverride.js +14 -2
- package/src/sap/fe/macros/table/ActionGroupOverride.ts +7 -0
- package/src/sap/fe/macros/table/ActionOverride.js +14 -2
- package/src/sap/fe/macros/table/ActionOverride.ts +7 -0
- package/src/sap/fe/macros/table/ActionsTemplating.js +21 -6
- package/src/sap/fe/macros/table/ActionsTemplating.tsx +19 -4
- package/src/sap/fe/macros/table/MdcTableTemplate.js +113 -15
- package/src/sap/fe/macros/table/MdcTableTemplate.tsx +162 -14
- package/src/sap/fe/macros/table/OverflowGroups.js +59 -0
- package/src/sap/fe/macros/table/OverflowGroups.ts +27 -0
- package/src/sap/fe/macros/table/Table.block.js +72 -29
- package/src/sap/fe/macros/table/Table.block.tsx +71 -15
- package/src/sap/fe/macros/table/TableAPI.js +213 -154
- package/src/sap/fe/macros/table/TableAPI.ts +116 -60
- package/src/sap/fe/macros/table/TableDefinition.js +19 -2
- package/src/sap/fe/macros/table/TableDefinition.ts +17 -1
- package/src/sap/fe/macros/table/TableEventHandlerProvider.js +8 -5
- package/src/sap/fe/macros/table/TableEventHandlerProvider.ts +14 -12
- package/src/sap/fe/macros/table/TableHelper.js +5 -2
- package/src/sap/fe/macros/table/TableHelper.ts +5 -2
- package/src/sap/fe/macros/table/TableRuntime.js +2 -2
- package/src/sap/fe/macros/table/TableRuntime.ts +4 -6
- package/src/sap/fe/macros/table/TableSizeHelper.js +4 -4
- package/src/sap/fe/macros/table/TableSizeHelper.ts +6 -11
- package/src/sap/fe/macros/table/delegates/TableDelegate.js +69 -28
- package/src/sap/fe/macros/table/delegates/TableDelegate.ts +111 -122
- package/src/sap/fe/macros/table/massEdit/MassEditDialog.js +41 -15
- package/src/sap/fe/macros/table/massEdit/MassEditDialog.tsx +41 -22
- package/src/sap/fe/macros/table/massEdit/MassEditDialogHelper.js +2 -2
- package/src/sap/fe/macros/table/massEdit/MassEditDialogHelper.tsx +1 -1
- package/src/sap/fe/macros/table/massEdit/MassEditField.js +1 -1
- package/src/sap/fe/macros/table/massEdit/MassEditField.tsx +3 -6
- package/src/sap/fe/macros/table/mixin/EmptyRowsHandler.js +6 -5
- package/src/sap/fe/macros/table/mixin/EmptyRowsHandler.ts +10 -4
- package/src/sap/fe/macros/table/mixin/TableAPIStateHandler.js +7 -9
- package/src/sap/fe/macros/table/mixin/TableAPIStateHandler.ts +7 -8
- package/src/sap/fe/macros/table/mixin/TableExport.js +1 -1
- package/src/sap/fe/macros/table/mixin/TableExport.ts +3 -3
- package/src/sap/fe/macros/table/mixin/TableHierarchy.js +6 -6
- package/src/sap/fe/macros/table/mixin/TableHierarchy.ts +5 -5
- package/src/sap/fe/macros/valuehelp/ValueHelpDelegate.js +5 -3
- package/src/sap/fe/macros/valuehelp/ValueHelpDelegate.ts +7 -4
- package/src/sap/fe/macros/visualfilters/InteractiveChartHelper.js +4 -4
- package/src/sap/fe/macros/visualfilters/InteractiveChartHelper.ts +3 -3
- package/src/sap/fe/macros/visualfilters/VisualFilter.js +20 -2
- package/src/sap/fe/macros/visualfilters/VisualFilter.tsx +28 -6
- package/src/sap/fe/macros/visualfilters/VisualFilterRuntime.js +6 -3
- package/src/sap/fe/macros/visualfilters/VisualFilterRuntime.ts +4 -3
- package/src/sap/fe/macros/visualfilters/fragments/InteractiveCharts.js +3 -3
- package/src/sap/fe/macros/visualfilters/fragments/InteractiveCharts.tsx +10 -4
- package/src/sap/fe/macros/visualfilters/fragments/InteractiveDonutChart.fragment.xml +1 -1
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import type { ConvertedMetadata, EntitySet, NavigationProperty } from "@sap-ux/vocabularies-types";
|
|
2
2
|
import type {
|
|
3
3
|
Chart,
|
|
4
|
+
ConnectedFields,
|
|
4
5
|
DataField,
|
|
5
6
|
DataFieldForAction,
|
|
6
7
|
DataFieldForAnnotation,
|
|
8
|
+
DataFieldTypes,
|
|
7
9
|
DataPoint,
|
|
8
10
|
FieldGroup,
|
|
9
11
|
LineItem,
|
|
@@ -47,7 +49,8 @@ import type {
|
|
|
47
49
|
CustomBasedTableColumn
|
|
48
50
|
} from "sap/fe/core/converters/controls/Common/table/Columns";
|
|
49
51
|
import { StandardActionKeys, type StandardAction } from "sap/fe/core/converters/controls/Common/table/StandardActions";
|
|
50
|
-
import {
|
|
52
|
+
import { getConnectedFieldsData } from "sap/fe/core/converters/helpers/DataFieldHelper";
|
|
53
|
+
import { Entity, UI, singletonPathVisitor } from "sap/fe/core/helpers/BindingHelper";
|
|
51
54
|
import ModelHelper from "sap/fe/core/helpers/ModelHelper";
|
|
52
55
|
import { generate } from "sap/fe/core/helpers/StableIdHelper";
|
|
53
56
|
import { isAnnotationOfTerm, isAnnotationOfType, isSingleton } from "sap/fe/core/helpers/TypeGuards";
|
|
@@ -80,6 +83,7 @@ import MenuItem from "sap/m/MenuItem";
|
|
|
80
83
|
import ObjectStatus from "sap/m/ObjectStatus";
|
|
81
84
|
import SegmentedButton from "sap/m/SegmentedButton";
|
|
82
85
|
import SegmentedButtonItem from "sap/m/SegmentedButtonItem";
|
|
86
|
+
import Text from "sap/m/Text";
|
|
83
87
|
import VBox from "sap/m/VBox";
|
|
84
88
|
import { ObjectMarkerVisibility } from "sap/m/library";
|
|
85
89
|
import CellSelector from "sap/m/plugins/CellSelector";
|
|
@@ -87,6 +91,7 @@ import ContextMenuSetting from "sap/m/plugins/ContextMenuSetting";
|
|
|
87
91
|
import CopyProvider from "sap/m/plugins/CopyProvider";
|
|
88
92
|
import DataStateIndicator from "sap/m/plugins/DataStateIndicator";
|
|
89
93
|
import type Control from "sap/ui/core/Control";
|
|
94
|
+
import type CustomData from "sap/ui/core/CustomData";
|
|
90
95
|
import type UI5Element from "sap/ui/core/Element";
|
|
91
96
|
import Library from "sap/ui/core/Lib";
|
|
92
97
|
import type { TitleLevel } from "sap/ui/core/library";
|
|
@@ -180,6 +185,7 @@ function getDataStateIndicator(handlerProvider: TableEventHandlerProvider): Data
|
|
|
180
185
|
return (
|
|
181
186
|
<DataStateIndicator
|
|
182
187
|
filter={handlerProvider.dataStateIndicatorFilter}
|
|
188
|
+
enabled={compileExpression(not(equal(pathInModel("enableTableDataStateIndicator", "pageInternal"), false)))}
|
|
183
189
|
enableFiltering={true}
|
|
184
190
|
dataStateChange={handlerProvider.dataStateChange}
|
|
185
191
|
/>
|
|
@@ -848,7 +854,6 @@ function getActionCommand(
|
|
|
848
854
|
onExecuteAction: parameters.handlerProvider.getDataFieldForActionButtonPressHandler(
|
|
849
855
|
dataField as DataFieldForAction,
|
|
850
856
|
action,
|
|
851
|
-
undefined,
|
|
852
857
|
forContextMenu
|
|
853
858
|
),
|
|
854
859
|
onExecuteIBN: parameters.handlerProvider.getDataFieldForIBNPressHandler(action, false),
|
|
@@ -921,6 +926,7 @@ export function getComputedColumn(
|
|
|
921
926
|
<DraftIndicator
|
|
922
927
|
draftIndicatorType={ObjectMarkerVisibility.IconOnly}
|
|
923
928
|
contextPath={collection.getPath()}
|
|
929
|
+
visible={or(not(Entity.IsActive), Entity.HasDraft)}
|
|
924
930
|
usedInTable={true}
|
|
925
931
|
usedInAnalyticalTable={enableAnalytics}
|
|
926
932
|
/>
|
|
@@ -1133,6 +1139,7 @@ function getCreationTemplate(
|
|
|
1133
1139
|
* @param tableDefinition The table definition
|
|
1134
1140
|
* @param column The column definition
|
|
1135
1141
|
* @param dataFieldContext The data field context
|
|
1142
|
+
* @param dataFieldObjectPath The data field object path
|
|
1136
1143
|
* @param collection The collection context
|
|
1137
1144
|
* @param enableAnalytics Whether analytics are enabled
|
|
1138
1145
|
* @param tableType The type of the table
|
|
@@ -1145,6 +1152,7 @@ function getCreationTemplate(
|
|
|
1145
1152
|
* @param showEmptyIndicator Whether to show the empty indicator
|
|
1146
1153
|
* @param className
|
|
1147
1154
|
* @param handlerProvider The handler provider
|
|
1155
|
+
* @param isConnectedField Indicates if the field is a connected field
|
|
1148
1156
|
* @returns The XML string representing the field.
|
|
1149
1157
|
*/
|
|
1150
1158
|
export function getMacroFieldTemplate(
|
|
@@ -1152,6 +1160,7 @@ export function getMacroFieldTemplate(
|
|
|
1152
1160
|
tableDefinition: TableVisualization,
|
|
1153
1161
|
column: AnnotationTableColumn,
|
|
1154
1162
|
dataFieldContext: Context,
|
|
1163
|
+
dataFieldObjectPath: DataModelObjectPath<DataFieldAbstractTypes>,
|
|
1155
1164
|
collection: Context,
|
|
1156
1165
|
enableAnalytics: boolean | undefined,
|
|
1157
1166
|
tableType: TableType,
|
|
@@ -1163,7 +1172,8 @@ export function getMacroFieldTemplate(
|
|
|
1163
1172
|
ariaLabelledBy: string | undefined,
|
|
1164
1173
|
showEmptyIndicator: boolean | undefined,
|
|
1165
1174
|
className: string | undefined,
|
|
1166
|
-
handlerProvider: TableEventHandlerProvider
|
|
1175
|
+
handlerProvider: TableEventHandlerProvider,
|
|
1176
|
+
isConnectedField = false
|
|
1167
1177
|
): string {
|
|
1168
1178
|
const dataFieldObject = dataFieldContext.getObject();
|
|
1169
1179
|
let columnEditMode: string | undefined;
|
|
@@ -1200,28 +1210,43 @@ export function getMacroFieldTemplate(
|
|
|
1200
1210
|
ignoreNavigationAvailable: enableAnalytics ?? false,
|
|
1201
1211
|
isAnalytics: enableAnalytics,
|
|
1202
1212
|
forInlineCreationRows: creationMode?.name === "InlineCreationRows",
|
|
1203
|
-
isCurrencyOrUnitAligned: true,
|
|
1213
|
+
isCurrencyOrUnitAligned: isConnectedField ? false : true,
|
|
1204
1214
|
compactSemanticKey: isCompactType === undefined ? undefined : `${isCompactType}`,
|
|
1205
1215
|
dateTimeStyle: getDefaultDateTimeStyle(dataFieldContext),
|
|
1206
1216
|
isAnalyticalAggregatedRow: tableDefinition.control.analyticalConfiguration?.aggregationOnLeafLevel,
|
|
1207
1217
|
reactiveAreaMode: reactiveAreaMode
|
|
1208
1218
|
};
|
|
1219
|
+
let customData: CustomData | undefined;
|
|
1220
|
+
|
|
1221
|
+
// In case we display a property with TextOnly text arragement in a non-analytical table, we still load the original property (using custom data)
|
|
1222
|
+
// to make sure intent-based navigation can use the value of the original property an not just its text representation.
|
|
1223
|
+
// For analytical tables, this is done by adding the original property as a context-defining property for the text property in the table converter (getExtensionInfoFromEntityType)
|
|
1224
|
+
if (
|
|
1225
|
+
tableDefinition.enableAnalytics !== true &&
|
|
1226
|
+
(
|
|
1227
|
+
dataFieldObjectPath.targetObject as DataFieldTypes | undefined
|
|
1228
|
+
)?.Value?.$target?.annotations?.Common?.Text?.annotations?.UI?.TextArrangement?.valueOf() === "UI.TextArrangementType/TextOnly"
|
|
1229
|
+
) {
|
|
1230
|
+
customData = createCustomData("extraProperty", `{${(dataFieldObjectPath.targetObject as DataFieldTypes).Value.path}}`);
|
|
1231
|
+
}
|
|
1209
1232
|
return (
|
|
1210
1233
|
<Field
|
|
1211
1234
|
vhIdPrefix={generate([tableId, "TableValueHelp"])}
|
|
1212
1235
|
editMode={columnEditMode}
|
|
1213
1236
|
contextPath={collection.getPath()}
|
|
1214
1237
|
metaPath={dataFieldContext.getPath()}
|
|
1215
|
-
textAlign={textAlign}
|
|
1238
|
+
textAlign={isConnectedField ? "Left" : textAlign}
|
|
1216
1239
|
wrap={tableType === "ResponsiveTable"}
|
|
1217
1240
|
class={className}
|
|
1218
1241
|
liveChange={handlerProvider.fieldLiveChange}
|
|
1219
|
-
ariaLabelledBy={ariaLabelledBy ?
|
|
1242
|
+
ariaLabelledBy={ariaLabelledBy ? ariaLabelledBy.split(" ") : undefined}
|
|
1220
1243
|
navigateAfterAction={column.isNavigable}
|
|
1221
1244
|
showErrorObjectStatus={column.formatOptions?.showErrorObjectStatus as unknown as boolean}
|
|
1245
|
+
disableStrictHandling={column.disableStrictHandling}
|
|
1222
1246
|
>
|
|
1223
1247
|
{{
|
|
1224
|
-
formatOptions: <FieldFormatOptions {...formatOptions}
|
|
1248
|
+
formatOptions: <FieldFormatOptions {...formatOptions} />,
|
|
1249
|
+
customData
|
|
1225
1250
|
}}
|
|
1226
1251
|
</Field>
|
|
1227
1252
|
);
|
|
@@ -1323,9 +1348,9 @@ function getColumnContentTemplate(
|
|
|
1323
1348
|
const dataFieldCollectionContext = dataFieldContext
|
|
1324
1349
|
.getModel()
|
|
1325
1350
|
.createBindingContext(dataFieldContext.getPath() + "/Target/$AnnotationPath/Data");
|
|
1326
|
-
const
|
|
1351
|
+
const fieldGroupCollectionLength = fieldGroup.Data.length - 1;
|
|
1327
1352
|
|
|
1328
|
-
const items = fieldGroup.Data.map((
|
|
1353
|
+
const items = fieldGroup.Data.map((_fieldGroupDataField: DataFieldAbstractTypes, fieldGroupDataFieldIdx: number) => {
|
|
1329
1354
|
const fieldGroupDataFieldContext = dataFieldCollectionContext
|
|
1330
1355
|
.getModel()
|
|
1331
1356
|
.createBindingContext(dataFieldCollectionContext.getPath() + "/" + fieldGroupDataFieldIdx);
|
|
@@ -1356,6 +1381,7 @@ function getColumnContentTemplate(
|
|
|
1356
1381
|
tableDefinition,
|
|
1357
1382
|
column,
|
|
1358
1383
|
fieldGroupDataFieldContext,
|
|
1384
|
+
fieldGroupDataFieldOP,
|
|
1359
1385
|
collection,
|
|
1360
1386
|
enableAnalytics,
|
|
1361
1387
|
tableType,
|
|
@@ -1371,7 +1397,7 @@ function getColumnContentTemplate(
|
|
|
1371
1397
|
true,
|
|
1372
1398
|
TableHelper.getMarginClass(
|
|
1373
1399
|
fieldGroupDataFieldContext.getObject("Target/$AnnotationPath/Visualization/$EnumMember"),
|
|
1374
|
-
fieldGroupDataFieldIdx ===
|
|
1400
|
+
fieldGroupDataFieldIdx === fieldGroupCollectionLength
|
|
1375
1401
|
),
|
|
1376
1402
|
handlerProvider
|
|
1377
1403
|
)
|
|
@@ -1385,6 +1411,7 @@ function getColumnContentTemplate(
|
|
|
1385
1411
|
tableDefinition,
|
|
1386
1412
|
column,
|
|
1387
1413
|
fieldGroupDataFieldContext,
|
|
1414
|
+
fieldGroupDataFieldOP,
|
|
1388
1415
|
collection,
|
|
1389
1416
|
enableAnalytics,
|
|
1390
1417
|
tableType,
|
|
@@ -1397,7 +1424,7 @@ function getColumnContentTemplate(
|
|
|
1397
1424
|
false,
|
|
1398
1425
|
TableHelper.getMarginClass(
|
|
1399
1426
|
fieldGroupDataFieldContext.getObject("Target/$AnnotationPath/Visualization/$EnumMember"),
|
|
1400
|
-
fieldGroupDataFieldIdx ===
|
|
1427
|
+
fieldGroupDataFieldIdx === fieldGroupCollectionLength
|
|
1401
1428
|
),
|
|
1402
1429
|
handlerProvider
|
|
1403
1430
|
);
|
|
@@ -1417,7 +1444,7 @@ function getColumnContentTemplate(
|
|
|
1417
1444
|
<VBox
|
|
1418
1445
|
visible={TableHelper.getVBoxVisibility(
|
|
1419
1446
|
dataFieldCollectionContext.getObject(),
|
|
1420
|
-
column.
|
|
1447
|
+
column.collectionFieldsHiddenExpression,
|
|
1421
1448
|
dataFieldContext.getObject()
|
|
1422
1449
|
)}
|
|
1423
1450
|
>
|
|
@@ -1426,12 +1453,124 @@ function getColumnContentTemplate(
|
|
|
1426
1453
|
}}
|
|
1427
1454
|
</VBox>
|
|
1428
1455
|
);
|
|
1456
|
+
} else if (
|
|
1457
|
+
isAnnotationOfType<DataFieldForAnnotation>(dataField, UIAnnotationTypes.DataFieldForAnnotation) &&
|
|
1458
|
+
isAnnotationOfTerm<ConnectedFields>(dataField.Target.$target, UIAnnotationTerms.ConnectedFields)
|
|
1459
|
+
) {
|
|
1460
|
+
const connectedFields: ConnectedFields = dataField.Target.$target;
|
|
1461
|
+
const connectedFieldsContext = dataFieldContext
|
|
1462
|
+
.getModel()
|
|
1463
|
+
.createBindingContext(dataFieldContext.getPath() + "/Target/$AnnotationPath/Data");
|
|
1464
|
+
const fieldsDelimiter = CommonHelper.getDelimiter(connectedFields.Template as string);
|
|
1465
|
+
const connectedFieldsData = getConnectedFieldsData(connectedFields);
|
|
1466
|
+
const items = connectedFieldsData.map((connectedFieldsElement: DataFieldAbstractTypes, connectedFieldsElementIdx: number) => {
|
|
1467
|
+
const connectedFieldsElementContext = dataFieldContext
|
|
1468
|
+
.getModel()
|
|
1469
|
+
.createBindingContext(`${connectedFieldsContext.getPath()}/${(connectedFieldsElement as DataField)?.Value?.path}`);
|
|
1470
|
+
const connectedFieldsElementOP = getInvolvedDataModelObjects<DataFieldAbstractTypes>(connectedFieldsElementContext);
|
|
1471
|
+
const fieldTemplate = getMacroFieldTemplate(
|
|
1472
|
+
tableId,
|
|
1473
|
+
tableDefinition,
|
|
1474
|
+
column,
|
|
1475
|
+
connectedFieldsElementContext,
|
|
1476
|
+
connectedFieldsElementOP,
|
|
1477
|
+
collection,
|
|
1478
|
+
enableAnalytics,
|
|
1479
|
+
tableType,
|
|
1480
|
+
isTableReadOnly,
|
|
1481
|
+
creationMode,
|
|
1482
|
+
undefined,
|
|
1483
|
+
isCompactType,
|
|
1484
|
+
"Left",
|
|
1485
|
+
`${TableHelper.getColumnStableId(tableId, dataFieldOP)}`,
|
|
1486
|
+
false,
|
|
1487
|
+
undefined,
|
|
1488
|
+
handlerProvider,
|
|
1489
|
+
true
|
|
1490
|
+
);
|
|
1491
|
+
|
|
1492
|
+
if (connectedFieldsElementIdx < connectedFieldsData.length - 1) {
|
|
1493
|
+
if (tableType === "ResponsiveTable") {
|
|
1494
|
+
return [
|
|
1495
|
+
fieldTemplate,
|
|
1496
|
+
/*Use ObjectStatus in ResponsiveTable: its line box matches cell height,
|
|
1497
|
+
so the delimiter is vertically centered in both display & edit modes.*/
|
|
1498
|
+
<ObjectStatus
|
|
1499
|
+
// NBSP on both sides to keep spacing
|
|
1500
|
+
text={`\u00A0${fieldsDelimiter}\u00A0`}
|
|
1501
|
+
state="None"
|
|
1502
|
+
>
|
|
1503
|
+
{{
|
|
1504
|
+
// Prevent the delimiter from being squeezed to zero width on tight layouts.
|
|
1505
|
+
layoutData: <FlexItemData shrinkFactor={0} />
|
|
1506
|
+
}}
|
|
1507
|
+
</ObjectStatus>
|
|
1508
|
+
];
|
|
1509
|
+
}
|
|
1510
|
+
|
|
1511
|
+
// Grid/Tree tables: Text works fine here (keeps baseline behavior in display, centers in edit).
|
|
1512
|
+
return [
|
|
1513
|
+
fieldTemplate,
|
|
1514
|
+
<Text
|
|
1515
|
+
// NBSP on both sides to keep spacing
|
|
1516
|
+
text={`\u00A0${fieldsDelimiter}\u00A0`}
|
|
1517
|
+
//single line
|
|
1518
|
+
wrapping="false"
|
|
1519
|
+
// actually render the NBSPs
|
|
1520
|
+
renderWhitespace="true"
|
|
1521
|
+
>
|
|
1522
|
+
{{
|
|
1523
|
+
// Avoid squeeze-to-dot effect when space is tight.
|
|
1524
|
+
layoutData: <FlexItemData shrinkFactor={0} />
|
|
1525
|
+
}}
|
|
1526
|
+
</Text>
|
|
1527
|
+
];
|
|
1528
|
+
} else {
|
|
1529
|
+
return [fieldTemplate];
|
|
1530
|
+
}
|
|
1531
|
+
});
|
|
1532
|
+
|
|
1533
|
+
/* Inner container alignment:
|
|
1534
|
+
- ResponsiveTable: always center (better visual consistency)
|
|
1535
|
+
- Grid/Tree: baseline in display, center in edit (mix of Text/Input heights)*/
|
|
1536
|
+
const innerHBox = (
|
|
1537
|
+
<HBox
|
|
1538
|
+
wrap="NoWrap"
|
|
1539
|
+
alignItems={
|
|
1540
|
+
tableType === "ResponsiveTable"
|
|
1541
|
+
? "Center"
|
|
1542
|
+
: compileExpression(ifElse(UI.IsEditable, constant("Center"), constant("Baseline")))
|
|
1543
|
+
}
|
|
1544
|
+
>
|
|
1545
|
+
{{
|
|
1546
|
+
items: items
|
|
1547
|
+
}}
|
|
1548
|
+
</HBox>
|
|
1549
|
+
);
|
|
1550
|
+
|
|
1551
|
+
// Outer wrapper: render a real box, take the row height, and center vertically.
|
|
1552
|
+
// This guarantees vertical centering of the whole connected-fields block within the cell.
|
|
1553
|
+
template = (
|
|
1554
|
+
<HBox
|
|
1555
|
+
wrap="NoWrap"
|
|
1556
|
+
renderType="Div"
|
|
1557
|
+
fitContainer={true}
|
|
1558
|
+
alignItems="Center"
|
|
1559
|
+
visible={column.collectionFieldsHiddenExpression}
|
|
1560
|
+
justifyContent={column.horizontalAlign}
|
|
1561
|
+
>
|
|
1562
|
+
{{
|
|
1563
|
+
items: [innerHBox]
|
|
1564
|
+
}}
|
|
1565
|
+
</HBox>
|
|
1566
|
+
);
|
|
1429
1567
|
} else {
|
|
1430
1568
|
template = getMacroFieldTemplate(
|
|
1431
1569
|
tableId,
|
|
1432
1570
|
tableDefinition,
|
|
1433
1571
|
column,
|
|
1434
1572
|
dataFieldContext,
|
|
1573
|
+
dataFieldOP,
|
|
1435
1574
|
collection,
|
|
1436
1575
|
enableAnalytics,
|
|
1437
1576
|
tableType,
|
|
@@ -1499,6 +1638,7 @@ export function getColumnTemplate(
|
|
|
1499
1638
|
const enableAutoColumnWidth = tableProperties.enableAutoColumnWidth ?? tableProperties.tableDefinition.control.enableAutoColumnWidth;
|
|
1500
1639
|
const widthIncludingColumnHeader = tableProperties.tableDefinition.control.widthIncludingColumnHeader;
|
|
1501
1640
|
const tableType = tableProperties.tableDefinition.control.type;
|
|
1641
|
+
const isConnectedField = dataFieldObject.Target?.$AnnotationPath?.includes(UIAnnotationTerms.ConnectedFields);
|
|
1502
1642
|
|
|
1503
1643
|
return (
|
|
1504
1644
|
<Column
|
|
@@ -1538,7 +1678,11 @@ export function getColumnTemplate(
|
|
|
1538
1678
|
header={column.label || column.name}
|
|
1539
1679
|
propertyKey={column.name}
|
|
1540
1680
|
hAlign={column.horizontalAlign || FieldHelper.getColumnAlignment(dataFieldObject, { collection: collection })}
|
|
1541
|
-
headerVisible={
|
|
1681
|
+
headerVisible={
|
|
1682
|
+
isConnectedField
|
|
1683
|
+
? true
|
|
1684
|
+
: TableHelper.setHeaderLabelVisibility(dataFieldObject, dataFieldContext.getObject("Target/$AnnotationPath/Data"))
|
|
1685
|
+
}
|
|
1542
1686
|
tooltip={column.tooltip}
|
|
1543
1687
|
required={tableProperties.readOnly ? undefined : column.required}
|
|
1544
1688
|
>
|
|
@@ -1733,7 +1877,10 @@ export function getMDCTableTemplate(tableProperties: TableBlockProperties, param
|
|
|
1733
1877
|
{ key: "updatablePropertyPath", value: updatablePropertyPath || "" },
|
|
1734
1878
|
{ key: "exportRequestSize", value: tableProperties.tableDefinition.control.exportRequestSize }
|
|
1735
1879
|
];
|
|
1736
|
-
|
|
1880
|
+
let rowPressHandler;
|
|
1881
|
+
if (tableType === "ResponsiveTable") {
|
|
1882
|
+
rowPressHandler = parameters.handlerProvider.rowPress ? parameters.handlerProvider.noop : undefined;
|
|
1883
|
+
}
|
|
1737
1884
|
return (
|
|
1738
1885
|
<MDCTable
|
|
1739
1886
|
core:require={getCoreRequire(tableProperties.tableDefinition)}
|
|
@@ -1746,6 +1893,7 @@ export function getMDCTableTemplate(tableProperties: TableBlockProperties, param
|
|
|
1746
1893
|
busyIndicatorDelay={0}
|
|
1747
1894
|
enableExport={tableProperties.tableDefinition.control.enableExport}
|
|
1748
1895
|
delegate={JSON.parse(delegate)}
|
|
1896
|
+
rowPress={rowPressHandler}
|
|
1749
1897
|
beforeOpenContextMenu={parameters.handlerProvider.beforeOpenContextMenu}
|
|
1750
1898
|
autoBindOnInit={tableProperties.useBasicSearch || !tableProperties.filterBar}
|
|
1751
1899
|
selectionMode={tableProperties.tableDefinition.annotation.selectionMode || "None"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE. All rights reserved
|
|
4
|
+
*/
|
|
5
|
+
sap.ui.define(["sap/fe/base/ClassSupport", "sap/fe/macros/controls/BuildingBlockObjectProperty"], function (ClassSupport, BuildingBlockObjectProperty) {
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2;
|
|
9
|
+
var _exports = {};
|
|
10
|
+
var property = ClassSupport.property;
|
|
11
|
+
var defineUI5Class = ClassSupport.defineUI5Class;
|
|
12
|
+
function _initializerDefineProperty(e, i, r, l) { r && Object.defineProperty(e, i, { enumerable: r.enumerable, configurable: r.configurable, writable: r.writable, value: r.initializer ? r.initializer.call(l) : void 0 }); }
|
|
13
|
+
function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
|
|
14
|
+
function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
|
|
15
|
+
function _applyDecoratedDescriptor(i, e, r, n, l) { var a = {}; return Object.keys(n).forEach(function (i) { a[i] = n[i]; }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = r.slice().reverse().reduce(function (r, n) { return n(i, e, r) || r; }, a), l && void 0 !== a.initializer && (a.value = a.initializer ? a.initializer.call(l) : void 0, a.initializer = void 0), void 0 === a.initializer ? (Object.defineProperty(i, e, a), null) : a; }
|
|
16
|
+
function _initializerWarningHelper(r, e) { throw Error("Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform."); }
|
|
17
|
+
/**
|
|
18
|
+
* Configuration of toolbar separators to be used inside the table toolbar
|
|
19
|
+
* @public
|
|
20
|
+
*/
|
|
21
|
+
let OverflowGroup = (_dec = defineUI5Class("sap.fe.macros.table.OverflowGroup"), _dec2 = property({
|
|
22
|
+
type: "int",
|
|
23
|
+
required: true
|
|
24
|
+
}), _dec3 = property({
|
|
25
|
+
type: "boolean"
|
|
26
|
+
}), _dec(_class = (_class2 = /*#__PURE__*/function (_BuildingBlockObjectP) {
|
|
27
|
+
function OverflowGroup(settings) {
|
|
28
|
+
var _this;
|
|
29
|
+
_this = _BuildingBlockObjectP.call(this, settings) || this;
|
|
30
|
+
/**
|
|
31
|
+
* Defines the group of the toolbar separator in the overflow toolbar.
|
|
32
|
+
* @public
|
|
33
|
+
*/
|
|
34
|
+
_initializerDefineProperty(_this, "overflowGroup", _descriptor, _this);
|
|
35
|
+
/**
|
|
36
|
+
* Defines if a toolbar separator should be displayed.
|
|
37
|
+
* @public
|
|
38
|
+
*/
|
|
39
|
+
_initializerDefineProperty(_this, "showSeparator", _descriptor2, _this);
|
|
40
|
+
return _this;
|
|
41
|
+
}
|
|
42
|
+
_exports = OverflowGroup;
|
|
43
|
+
_inheritsLoose(OverflowGroup, _BuildingBlockObjectP);
|
|
44
|
+
return OverflowGroup;
|
|
45
|
+
}(BuildingBlockObjectProperty), _descriptor = _applyDecoratedDescriptor(_class2.prototype, "overflowGroup", [_dec2], {
|
|
46
|
+
configurable: true,
|
|
47
|
+
enumerable: true,
|
|
48
|
+
writable: true,
|
|
49
|
+
initializer: null
|
|
50
|
+
}), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, "showSeparator", [_dec3], {
|
|
51
|
+
configurable: true,
|
|
52
|
+
enumerable: true,
|
|
53
|
+
writable: true,
|
|
54
|
+
initializer: null
|
|
55
|
+
}), _class2)) || _class);
|
|
56
|
+
_exports = OverflowGroup;
|
|
57
|
+
return _exports;
|
|
58
|
+
}, false);
|
|
59
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPdmVyZmxvd0dyb3VwIiwiX2RlYyIsImRlZmluZVVJNUNsYXNzIiwiX2RlYzIiLCJwcm9wZXJ0eSIsInR5cGUiLCJyZXF1aXJlZCIsIl9kZWMzIiwiX2NsYXNzIiwiX2NsYXNzMiIsIl9CdWlsZGluZ0Jsb2NrT2JqZWN0UCIsInNldHRpbmdzIiwiX3RoaXMiLCJjYWxsIiwiX2luaXRpYWxpemVyRGVmaW5lUHJvcGVydHkiLCJfZGVzY3JpcHRvciIsIl9kZXNjcmlwdG9yMiIsIl9leHBvcnRzIiwiX2luaGVyaXRzTG9vc2UiLCJCdWlsZGluZ0Jsb2NrT2JqZWN0UHJvcGVydHkiLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwicHJvdG90eXBlIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIk92ZXJmbG93R3JvdXBzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCBwcm9wZXJ0eSwgdHlwZSBQcm9wZXJ0aWVzT2YgfSBmcm9tIFwic2FwL2ZlL2Jhc2UvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgQnVpbGRpbmdCbG9ja09iamVjdFByb3BlcnR5IGZyb20gXCJzYXAvZmUvbWFjcm9zL2NvbnRyb2xzL0J1aWxkaW5nQmxvY2tPYmplY3RQcm9wZXJ0eVwiO1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb2YgdG9vbGJhciBzZXBhcmF0b3JzIHRvIGJlIHVzZWQgaW5zaWRlIHRoZSB0YWJsZSB0b29sYmFyXG4gKiBAcHVibGljXG4gKi9cbkBkZWZpbmVVSTVDbGFzcyhcInNhcC5mZS5tYWNyb3MudGFibGUuT3ZlcmZsb3dHcm91cFwiKVxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgT3ZlcmZsb3dHcm91cCBleHRlbmRzIEJ1aWxkaW5nQmxvY2tPYmplY3RQcm9wZXJ0eSB7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIHRoZSBncm91cCBvZiB0aGUgdG9vbGJhciBzZXBhcmF0b3IgaW4gdGhlIG92ZXJmbG93IHRvb2xiYXIuXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBwcm9wZXJ0eSh7IHR5cGU6IFwiaW50XCIsIHJlcXVpcmVkOiB0cnVlIH0pXG5cdG92ZXJmbG93R3JvdXAhOiBudW1iZXI7XG5cblx0LyoqXG5cdCAqIERlZmluZXMgaWYgYSB0b29sYmFyIHNlcGFyYXRvciBzaG91bGQgYmUgZGlzcGxheWVkLlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRAcHJvcGVydHkoeyB0eXBlOiBcImJvb2xlYW5cIiB9KVxuXHRzaG93U2VwYXJhdG9yPzogYm9vbGVhbjtcblxuXHRjb25zdHJ1Y3RvcihzZXR0aW5nczogUHJvcGVydGllc09mPE92ZXJmbG93R3JvdXA+KSB7XG5cdFx0c3VwZXIoc2V0dGluZ3MpO1xuXHR9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7RUFHQTtBQUNBO0FBQ0E7QUFDQTtFQUhBLElBS3FCQSxhQUFhLElBQUFDLElBQUEsR0FEakNDLGNBQWMsQ0FBQyxtQ0FBbUMsQ0FBQyxFQUFBQyxLQUFBLEdBTWxEQyxRQUFRLENBQUM7SUFBRUMsSUFBSSxFQUFFLEtBQUs7SUFBRUMsUUFBUSxFQUFFO0VBQUssQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FPekNILFFBQVEsQ0FBQztJQUFFQyxJQUFJLEVBQUU7RUFBVSxDQUFDLENBQUMsRUFBQUosSUFBQSxDQUFBTyxNQUFBLElBQUFDLE9BQUEsMEJBQUFDLHFCQUFBO0lBRzlCLFNBQUFWLGNBQVlXLFFBQXFDLEVBQUU7TUFBQSxJQUFBQyxLQUFBO01BQ2xEQSxLQUFBLEdBQUFGLHFCQUFBLENBQUFHLElBQUEsT0FBTUYsUUFBUSxDQUFDO01BZmhCO0FBQ0Q7QUFDQTtBQUNBO01BSENHLDBCQUFBLENBQUFGLEtBQUEsbUJBQUFHLFdBQUEsRUFBQUgsS0FBQTtNQU9BO0FBQ0Q7QUFDQTtBQUNBO01BSENFLDBCQUFBLENBQUFGLEtBQUEsbUJBQUFJLFlBQUEsRUFBQUosS0FBQTtNQUFBLE9BQUFBLEtBQUE7SUFTQTtJQUFDSyxRQUFBLEdBQUFqQixhQUFBO0lBQUFrQixjQUFBLENBQUFsQixhQUFBLEVBQUFVLHFCQUFBO0lBQUEsT0FBQVYsYUFBQTtFQUFBLEVBakJ5Q21CLDJCQUEyQixHQUFBSixXQUFBLEdBQUFLLHlCQUFBLENBQUFYLE9BQUEsQ0FBQVksU0FBQSxvQkFBQWxCLEtBQUE7SUFBQW1CLFlBQUE7SUFBQUMsVUFBQTtJQUFBQyxRQUFBO0lBQUFDLFdBQUE7RUFBQSxJQUFBVCxZQUFBLEdBQUFJLHlCQUFBLENBQUFYLE9BQUEsQ0FBQVksU0FBQSxvQkFBQWQsS0FBQTtJQUFBZSxZQUFBO0lBQUFDLFVBQUE7SUFBQUMsUUFBQTtJQUFBQyxXQUFBO0VBQUEsSUFBQWhCLE9BQUEsTUFBQUQsTUFBQTtFQUFBUyxRQUFBLEdBQUFqQixhQUFBO0VBQUEsT0FBQWlCLFFBQUE7QUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { defineUI5Class, property, type PropertiesOf } from "sap/fe/base/ClassSupport";
|
|
2
|
+
import BuildingBlockObjectProperty from "sap/fe/macros/controls/BuildingBlockObjectProperty";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Configuration of toolbar separators to be used inside the table toolbar
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
@defineUI5Class("sap.fe.macros.table.OverflowGroup")
|
|
9
|
+
export default class OverflowGroup extends BuildingBlockObjectProperty {
|
|
10
|
+
/**
|
|
11
|
+
* Defines the group of the toolbar separator in the overflow toolbar.
|
|
12
|
+
* @public
|
|
13
|
+
*/
|
|
14
|
+
@property({ type: "int", required: true })
|
|
15
|
+
overflowGroup!: number;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Defines if a toolbar separator should be displayed.
|
|
19
|
+
* @public
|
|
20
|
+
*/
|
|
21
|
+
@property({ type: "boolean" })
|
|
22
|
+
showSeparator?: boolean;
|
|
23
|
+
|
|
24
|
+
constructor(settings: PropertiesOf<OverflowGroup>) {
|
|
25
|
+
super(settings);
|
|
26
|
+
}
|
|
27
|
+
}
|