@openui5/sap.ui.mdc 1.130.0 → 1.131.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.
Files changed (162) hide show
  1. package/THIRDPARTY.txt +1 -1
  2. package/package.json +4 -4
  3. package/src/sap/ui/mdc/.library +1 -1
  4. package/src/sap/ui/mdc/ActionToolbar.js +1 -1
  5. package/src/sap/ui/mdc/Chart.js +62 -25
  6. package/src/sap/ui/mdc/ChartDelegate.js +17 -14
  7. package/src/sap/ui/mdc/Control.js +1 -1
  8. package/src/sap/ui/mdc/DefaultTypeMap.js +1 -1
  9. package/src/sap/ui/mdc/Element.js +1 -1
  10. package/src/sap/ui/mdc/Field.js +43 -15
  11. package/src/sap/ui/mdc/FilterBar.js +1 -1
  12. package/src/sap/ui/mdc/FilterField.js +2 -2
  13. package/src/sap/ui/mdc/Link.js +1 -1
  14. package/src/sap/ui/mdc/LinkDelegate.js +1 -1
  15. package/src/sap/ui/mdc/MultiValueField.js +3 -4
  16. package/src/sap/ui/mdc/Table.js +183 -36
  17. package/src/sap/ui/mdc/TableDelegate.js +40 -18
  18. package/src/sap/ui/mdc/ValueHelp.js +1 -1
  19. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +1 -2
  20. package/src/sap/ui/mdc/chart/ChartImplementationContainer.js +1 -1
  21. package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +1 -1
  22. package/src/sap/ui/mdc/chart/PropertyHelper.js +1 -1
  23. package/src/sap/ui/mdc/chart/ToolbarControlFactory.js +1 -1
  24. package/src/sap/ui/mdc/condition/Condition.js +1 -1
  25. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  26. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  27. package/src/sap/ui/mdc/condition/FilterConverter.js +1 -1
  28. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +361 -54
  29. package/src/sap/ui/mdc/condition/Operator.js +1 -1
  30. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +1 -1
  31. package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
  32. package/src/sap/ui/mdc/enums/ActionToolbarActionAlignment.js +0 -1
  33. package/src/sap/ui/mdc/enums/OperatorName.js +127 -1
  34. package/src/sap/ui/mdc/field/ConditionType.js +1 -1
  35. package/src/sap/ui/mdc/field/ConditionTypeMixin.js +1 -1
  36. package/src/sap/ui/mdc/field/ConditionsType.js +1 -1
  37. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  38. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +1 -1
  39. package/src/sap/ui/mdc/field/FieldBase.js +1 -1
  40. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +2 -2
  41. package/src/sap/ui/mdc/field/FieldInfoBase.js +1 -1
  42. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  43. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  44. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  45. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  46. package/src/sap/ui/mdc/field/MultiValueFieldDelegate.js +0 -1
  47. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -2
  48. package/src/sap/ui/mdc/field/TokenDisplay.js +1 -1
  49. package/src/sap/ui/mdc/field/TokenizerDisplay.js +1 -1
  50. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +1 -1
  51. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +1 -1
  52. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +1 -1
  53. package/src/sap/ui/mdc/filterbar/vh/CollectiveSearchSelect.js +4 -1
  54. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +5 -2
  55. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  56. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  57. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  58. package/src/sap/ui/mdc/flexibility/actiontoolbar/CombineAction.js +1 -2
  59. package/src/sap/ui/mdc/flexibility/actiontoolbar/SplitAction.js +1 -2
  60. package/src/sap/ui/mdc/library.js +2 -2
  61. package/src/sap/ui/mdc/link/Factory.js +1 -1
  62. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  63. package/src/sap/ui/mdc/link/Panel.js +1 -1
  64. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  65. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  66. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  67. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  68. package/src/sap/ui/mdc/messagebundle.properties +12 -148
  69. package/src/sap/ui/mdc/messagebundle_ar.properties +6 -96
  70. package/src/sap/ui/mdc/messagebundle_bg.properties +6 -96
  71. package/src/sap/ui/mdc/messagebundle_ca.properties +6 -96
  72. package/src/sap/ui/mdc/messagebundle_cnr.properties +6 -96
  73. package/src/sap/ui/mdc/messagebundle_cs.properties +6 -96
  74. package/src/sap/ui/mdc/messagebundle_cy.properties +6 -96
  75. package/src/sap/ui/mdc/messagebundle_da.properties +6 -96
  76. package/src/sap/ui/mdc/messagebundle_de.properties +6 -96
  77. package/src/sap/ui/mdc/messagebundle_el.properties +6 -96
  78. package/src/sap/ui/mdc/messagebundle_en.properties +6 -96
  79. package/src/sap/ui/mdc/messagebundle_en_GB.properties +6 -96
  80. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +6 -98
  81. package/src/sap/ui/mdc/messagebundle_es.properties +7 -97
  82. package/src/sap/ui/mdc/messagebundle_es_MX.properties +6 -96
  83. package/src/sap/ui/mdc/messagebundle_et.properties +6 -96
  84. package/src/sap/ui/mdc/messagebundle_fi.properties +6 -96
  85. package/src/sap/ui/mdc/messagebundle_fr.properties +6 -96
  86. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +6 -96
  87. package/src/sap/ui/mdc/messagebundle_hi.properties +6 -96
  88. package/src/sap/ui/mdc/messagebundle_hr.properties +6 -96
  89. package/src/sap/ui/mdc/messagebundle_hu.properties +6 -96
  90. package/src/sap/ui/mdc/messagebundle_id.properties +6 -96
  91. package/src/sap/ui/mdc/messagebundle_it.properties +6 -96
  92. package/src/sap/ui/mdc/messagebundle_iw.properties +6 -96
  93. package/src/sap/ui/mdc/messagebundle_ja.properties +6 -96
  94. package/src/sap/ui/mdc/messagebundle_kk.properties +6 -96
  95. package/src/sap/ui/mdc/messagebundle_ko.properties +6 -96
  96. package/src/sap/ui/mdc/messagebundle_lt.properties +6 -96
  97. package/src/sap/ui/mdc/messagebundle_lv.properties +6 -96
  98. package/src/sap/ui/mdc/messagebundle_mk.properties +6 -96
  99. package/src/sap/ui/mdc/messagebundle_ms.properties +6 -96
  100. package/src/sap/ui/mdc/messagebundle_nl.properties +7 -97
  101. package/src/sap/ui/mdc/messagebundle_no.properties +6 -96
  102. package/src/sap/ui/mdc/messagebundle_pl.properties +9 -99
  103. package/src/sap/ui/mdc/messagebundle_pt.properties +6 -96
  104. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +6 -96
  105. package/src/sap/ui/mdc/messagebundle_ro.properties +6 -96
  106. package/src/sap/ui/mdc/messagebundle_ru.properties +13 -103
  107. package/src/sap/ui/mdc/messagebundle_sh.properties +6 -96
  108. package/src/sap/ui/mdc/messagebundle_sk.properties +6 -96
  109. package/src/sap/ui/mdc/messagebundle_sl.properties +6 -96
  110. package/src/sap/ui/mdc/messagebundle_sr.properties +6 -96
  111. package/src/sap/ui/mdc/messagebundle_sv.properties +6 -96
  112. package/src/sap/ui/mdc/messagebundle_th.properties +6 -96
  113. package/src/sap/ui/mdc/messagebundle_tr.properties +6 -96
  114. package/src/sap/ui/mdc/messagebundle_uk.properties +6 -96
  115. package/src/sap/ui/mdc/messagebundle_vi.properties +6 -96
  116. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +6 -96
  117. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +6 -96
  118. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  119. package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -1
  120. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -1
  121. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  122. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +1 -1
  123. package/src/sap/ui/mdc/odata/TypeMap.js +1 -1
  124. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +239 -197
  125. package/src/sap/ui/mdc/odata/v4/TypeMap.js +1 -1
  126. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegate.js +19 -19
  127. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  128. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +12 -19
  129. package/src/sap/ui/mdc/table/Column.js +3 -0
  130. package/src/sap/ui/mdc/table/ColumnSettings.js +1 -1
  131. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  132. package/src/sap/ui/mdc/table/DragDropConfig.js +1 -1
  133. package/src/sap/ui/mdc/table/GridTableType.js +3 -1
  134. package/src/sap/ui/mdc/table/PropertyHelper.js +14 -1
  135. package/src/sap/ui/mdc/table/ResponsiveColumnSettings.js +1 -1
  136. package/src/sap/ui/mdc/table/RowActionItem.js +1 -1
  137. package/src/sap/ui/mdc/table/RowSettings.js +3 -2
  138. package/src/sap/ui/mdc/table/TableSettings.js +26 -3
  139. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +32 -41
  140. package/src/sap/ui/mdc/table/utils/Personalization.js +1 -1
  141. package/src/sap/ui/mdc/ushell/SemanticObjectMapping.js +1 -1
  142. package/src/sap/ui/mdc/ushell/SemanticObjectMappingItem.js +1 -1
  143. package/src/sap/ui/mdc/ushell/SemanticObjectUnavailableAction.js +1 -1
  144. package/src/sap/ui/mdc/util/InfoBar.js +2 -1
  145. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  146. package/src/sap/ui/mdc/util/PropertyHelper.js +1 -1
  147. package/src/sap/ui/mdc/valuehelp/CollectiveSearchSelect.js +2 -10
  148. package/src/sap/ui/mdc/valuehelp/Dialog.js +1 -1
  149. package/src/sap/ui/mdc/valuehelp/FilterBar.js +1 -1
  150. package/src/sap/ui/mdc/valuehelp/Popover.js +1 -1
  151. package/src/sap/ui/mdc/valuehelp/base/Container.js +1 -1
  152. package/src/sap/ui/mdc/valuehelp/base/Content.js +1 -1
  153. package/src/sap/ui/mdc/valuehelp/base/DefineConditionPanel.js +30 -32
  154. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +1 -1
  155. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +1 -1
  156. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +1 -1
  157. package/src/sap/ui/mdc/valuehelp/content/Bool.js +1 -1
  158. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +1 -1
  159. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +6 -1
  160. package/src/sap/ui/mdc/valuehelp/content/FixedListItem.js +1 -1
  161. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +1 -1
  162. package/src/sap/ui/mdc/valuehelp/content/MTable.js +17 -4
package/THIRDPARTY.txt CHANGED
@@ -468,7 +468,7 @@ License: Apache-2.0
468
468
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
469
469
  Contained in: lib/jsdoc/ui5/plugin.js
470
470
 
471
- Component: SAP Theming Base Content, version: 11.18.0
471
+ Component: SAP Theming Base Content, version: 11.22.0
472
472
  Copyright: SAP SE or an SAP affiliate company and Theming Base Content contributors
473
473
  License: Apache-2.0
474
474
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.mdc",
3
- "version": "1.130.0",
3
+ "version": "1.131.0",
4
4
  "description": "OpenUI5 UI Library sap.ui.mdc",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,8 +14,8 @@
14
14
  "url": "https://github.com/SAP/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.m": "1.130.0",
18
- "@openui5/sap.ui.core": "1.130.0",
19
- "@openui5/sap.ui.layout": "1.130.0"
17
+ "@openui5/sap.m": "1.131.0",
18
+ "@openui5/sap.ui.core": "1.131.0",
19
+ "@openui5/sap.ui.layout": "1.131.0"
20
20
  }
21
21
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2009-2024 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.130.0</version>
9
+ <version>1.131.0</version>
10
10
 
11
11
  <documentation>UI5 library: sap.ui.mdc</documentation>
12
12
 
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * The content aggregation of the control must not be used.
34
34
  * @extends sap.m.OverflowToolbar
35
35
  * @author SAP SE
36
- * @version 1.130.0
36
+ * @version 1.131.0
37
37
  * @constructor
38
38
  * @since 1.58
39
39
  * @private
@@ -75,7 +75,7 @@ sap.ui.define([
75
75
  * @extends sap.ui.mdc.Control
76
76
  * @borrows sap.ui.mdc.mixin.FilterIntegrationMixin.rebind as #rebind
77
77
  * @author SAP SE
78
- * @version 1.130.0
78
+ * @version 1.131.0
79
79
  * @constructor
80
80
  *
81
81
  * @public
@@ -194,7 +194,7 @@ sap.ui.define([
194
194
 
195
195
  //TODO: Do we really need this? Should be avoided.
196
196
  /**
197
- * Defines the minimum width.
197
+ * Defines the minimum width of the chart.
198
198
  */
199
199
  minWidth: {
200
200
  type: "sap.ui.core.CSSSize",
@@ -205,7 +205,7 @@ sap.ui.define([
205
205
 
206
206
  //TODO: Do we really need this? Should be avoided.
207
207
  /**
208
- * Defines the minimum height.
208
+ * Defines the minimum height of the chart.
209
209
  */
210
210
  minHeight: {
211
211
  type: "sap.ui.core.CSSSize",
@@ -238,7 +238,8 @@ sap.ui.define([
238
238
  },
239
239
 
240
240
  /**
241
- * Controls the visibility of the chart tooltip. If set to <code>true</code>, a call of the <code>delegate.setChartTooltipVisibility</code> will be triggered and can be used to make the <code>Chart</code> tooltip visible.
241
+ * Controls the visibility of the chart tooltip.<br>
242
+ * If set to <code>true</code>, a call of the <code>delegate.setChartTooltipVisibility</code> will be triggered and can be used to make the <code>Chart</code> tooltip visible.
242
243
  *
243
244
  * @since 1.88
244
245
  */
@@ -280,7 +281,8 @@ sap.ui.define([
280
281
  * Specifies the chart metadata.<br>
281
282
  * <b>Note:</b> This property must not be bound.<br>
282
283
  * <b>Note:</b> This property is exclusively used for handling SAPUI5 flexibility changes. Do not use it otherwise.<br>
283
- * <b>Note</b>: Existing properties (set via <code>sap.ui.mdc.Chart#setPropertyInfo</code>) must not be removed and their attributes must not be changed during the {@link module:sap/ui/mdc/ChartDelegate.fetchProperties fetchProperties} callback. Otherwise validation errors might occur whenever personalization-related control features (such as the opening of any personalization dialog) are activated.
284
+ * <b>Note</b>: Existing properties (set via <code>sap.ui.mdc.Chart#setPropertyInfo</code>) must not be removed and their attributes must not be changed during the {@link module:sap/ui/mdc/ChartDelegate.fetchProperties fetchProperties} callback
285
+ * Otherwise validation errors might occur whenever personalization-related control features (such as the opening of any personalization dialog) are activated.
284
286
  *
285
287
  * <b>Note</b>: For more information about the supported inner elements, see {@link sap.ui.mdc.chart.PropertyInfo PropertyInfo}.
286
288
  *
@@ -357,7 +359,7 @@ sap.ui.define([
357
359
  }
358
360
  },
359
361
  /**
360
- * Feeds details actions for data point selection in the mdc chart.<br>
362
+ * Feeds details popover actions for data point selection in the mdc chart.<br>
361
363
  * For more information, see {@link sap.ui.mdc.chart.SelectionDetailsActions SelectionDetailsActions}.
362
364
  */
363
365
  selectionDetailsActions: {
@@ -602,7 +604,12 @@ sap.ui.define([
602
604
  //may only return conditions if the inner FilterBar has already been initialized
603
605
  return this.getInbuiltFilter() ? this.getInbuiltFilter().getConditions() : [];
604
606
  };
605
-
607
+ /**
608
+ * Registers the chart rebind to the filter bar search event.
609
+ *
610
+ * @param {sap.ui.mdc.filterbar.p13n.AdaptionFilterBar} oFilter The FilterBar instance to be attached to.
611
+ * @private
612
+ */
606
613
  Chart.prototype._registerInnerFilter = function(oFilter) {
607
614
  oFilter.attachSearch(function() {
608
615
  this._rebind();
@@ -682,7 +689,10 @@ sap.ui.define([
682
689
 
683
690
  this._createToolbarContent();
684
691
  };
685
-
692
+ /**
693
+ * Creates the content for the chart toolbar.
694
+ * @private
695
+ */
686
696
  Chart.prototype._createToolbarContent = function() {
687
697
  const aP13nMode = this.getP13nMode() || [];
688
698
  const aIgnoreToolbarActions = this.getIgnoreToolbarActions();
@@ -871,7 +881,13 @@ sap.ui.define([
871
881
 
872
882
  this._updateVariantManagementStyle();
873
883
  };
874
-
884
+ /**
885
+ * Creates the SelectionDetails control used in the toolbar.
886
+ *
887
+ * @param {string} sId Id of the MDC chart
888
+ * @returns {sap.m.SelectionDetails} The SelectionDetails instance
889
+ * @private
890
+ */
875
891
  Chart.prototype._createSelectionDetails = function(sId) {
876
892
  const fnActionPress = function(oEvent) {
877
893
  // extract binding information of each item
@@ -901,7 +917,10 @@ sap.ui.define([
901
917
 
902
918
  return oSelectionDetailsBtn;
903
919
  };
904
-
920
+ /**
921
+ * Creates the info toolbar.
922
+ * @private
923
+ */
905
924
  Chart.prototype._initInfoToolbar = function() {
906
925
  this.setAggregation("_infoToolbar", new InfoBar(this.getId() + "--infoToolbar", {
907
926
  infoText: this._getFilterInfoText(),
@@ -941,13 +960,21 @@ sap.ui.define([
941
960
  this.getDomRef().setAttribute("aria-labelledby", this.getAggregation("_infoToolbar").getACCTextId());
942
961
  }
943
962
  };
944
-
963
+ /**
964
+ * Updates the info toolbar instance.
965
+ * @private
966
+ */
945
967
  Chart.prototype._updateInfoToolbar = function() {
946
968
  if (this.getP13nMode().includes("Filter") && this.getAggregation("_infoToolbar")) {
947
969
  this.getAggregation("_infoToolbar").setInfoText(this._getFilterInfoText());
948
970
  }
949
971
  };
950
-
972
+ /**
973
+ * Getter for the filter info text used to update the info toolbar.
974
+ *
975
+ * @returns {string} The info text
976
+ * @private
977
+ */
951
978
  Chart.prototype._getFilterInfoText = function() {
952
979
  if (this.getInbuiltFilter()) {
953
980
  let sText;
@@ -959,7 +986,7 @@ sap.ui.define([
959
986
  if (aFilterNames.length > 1) {
960
987
  sText = MDCRb.getText("chart.MULTIPLE_FILTERS_ACTIVE", [aFilterNames.length, oListFormat.format(aFilterNames)]);
961
988
  } else {
962
- sText = MDCRb.getText("chart.ONE_FILTER_ACTIVE", aFilterNames[0]);
989
+ sText = MDCRb.getText("chart.ONE_FILTER_ACTIVE", [aFilterNames[0]]);
963
990
  }
964
991
  }
965
992
 
@@ -1003,7 +1030,10 @@ sap.ui.define([
1003
1030
  }
1004
1031
  });
1005
1032
  };
1006
-
1033
+ /**
1034
+ * Creates the bread crumbs control to visualize the drill depth of the chart.
1035
+ * @private
1036
+ */
1007
1037
  Chart.prototype._createBreadcrumbs = function() {
1008
1038
  let _oBreadcrumbs = this.getAggregation("_breadcrumbs");
1009
1039
  if (!_oBreadcrumbs && !this._bIsDestroyed) {
@@ -1204,10 +1234,10 @@ sap.ui.define([
1204
1234
  }
1205
1235
  };
1206
1236
 
1207
-
1208
1237
  /**
1209
- * Creates a new instance of ChartToolbar
1238
+ * Creates a new instance of a toolbar or, if already set, returns the existing one.
1210
1239
  *
1240
+ * @returns {sap.m.Toolbar|sap.ui.mdc.ActionToolbar} The toolbar instance
1211
1241
  * @private
1212
1242
  */
1213
1243
  Chart.prototype._getToolbar = function() {
@@ -1236,7 +1266,7 @@ sap.ui.define([
1236
1266
  };
1237
1267
 
1238
1268
  /**
1239
- * Calls the update function on the toolbar, if toolbar exists
1269
+ * Calls the update function on the toolbar, if a toolbar exists
1240
1270
  *
1241
1271
  * @private
1242
1272
  */
@@ -1256,7 +1286,8 @@ sap.ui.define([
1256
1286
  };
1257
1287
 
1258
1288
  /**
1259
- * This checks the enablement of the zoom button in the toolbar.
1289
+ * This checks the enablement of the zoom buttons in the toolbar.
1290
+ * <b>Note:</b> Buttons will be disabled when no zoom state is available or is disabled.
1260
1291
  *
1261
1292
  * @experimental
1262
1293
  * @private
@@ -1292,7 +1323,10 @@ sap.ui.define([
1292
1323
 
1293
1324
  };
1294
1325
 
1295
-
1326
+ /**
1327
+ * Initialises the selection details control by attaching to its selection handler.
1328
+ * @private
1329
+ */
1296
1330
  Chart.prototype._initSelectionDetails = function() {
1297
1331
  const oSelectionDetailsBtn = this._oSelectionDetailsBtn;
1298
1332
  if (oSelectionDetailsBtn && !oSelectionDetailsBtn._oChangeHandler) {
@@ -1343,7 +1377,7 @@ sap.ui.define([
1343
1377
  };
1344
1378
 
1345
1379
  /**
1346
- * Zooms in the inner chart.
1380
+ * Zooms in on the inner chart.
1347
1381
  *
1348
1382
  * @private
1349
1383
  * @ui5-restricted sap.ui.mdc
@@ -1354,7 +1388,7 @@ sap.ui.define([
1354
1388
  };
1355
1389
 
1356
1390
  /**
1357
- * Zooms out the inner chart.
1391
+ * Zooms out on the inner chart.
1358
1392
  *
1359
1393
  * @private
1360
1394
  * @ui5-restricted sap.ui.mdc
@@ -1450,7 +1484,7 @@ sap.ui.define([
1450
1484
  };
1451
1485
 
1452
1486
  /**
1453
- * Gets information about the current chart type.
1487
+ * Getter for information about the current chart type.
1454
1488
  *
1455
1489
  * @returns {object} object containing information about the chart type
1456
1490
  *
@@ -1463,9 +1497,9 @@ sap.ui.define([
1463
1497
  };
1464
1498
 
1465
1499
  /**
1466
- * Gets the available chart types for the current state of the inner chart
1500
+ * Getter for the available chart types of inner chart based on its current state.
1467
1501
  *
1468
- * @returns {array} Array containing the available chart types
1502
+ * @returns {sap.ui.mdc.chart.ChartTypeObject[]} Array containing the currently available chart types
1469
1503
  *
1470
1504
  * @private
1471
1505
  */
@@ -1691,7 +1725,10 @@ sap.ui.define([
1691
1725
 
1692
1726
  return this;
1693
1727
  };
1694
-
1728
+ /**
1729
+ * Returns the variant management control of the MDC Chart.
1730
+ * @returns {sap.ui.fl.variants.VariantManagement} The variant management instance
1731
+ */
1695
1732
  Chart.prototype.getVariant = function() {
1696
1733
  let oVariantManagement;
1697
1734
  const oToolbar = this.getAggregation("_toolbar");
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  const ChartDelegate = Object.assign({}, AggregationBaseDelegate, FilterIntegrationDefault);
26
26
 
27
27
  /**
28
- * Returns filters to be applied when updating the chart's binding based on the
28
+ * Gets the filters to be applied when updating the chart's binding based on the
29
29
  * filter conditions of the chart itself and it's associated {@link sap.ui.mdc.IFilterSource IFilterSource}.
30
30
  *
31
31
  * @param {sap.ui.mdc.Chart} oChart Reference to the chart
@@ -75,7 +75,7 @@ sap.ui.define([
75
75
  ChartDelegate.getZoomState = function(oChart) { };
76
76
 
77
77
  /**
78
- * Returns the filter delegate of the chart that provides basic filter functionality, such as adding filter fields.
78
+ * Gets the filter delegate of the chart that provides basic filter functionality, such as adding filter fields.
79
79
  * <b>Note:</b> The functionality provided in this delegate acts as a subset of a <code>FilterBarDelegate</code> to enable the chart for inbuilt
80
80
  * filtering.
81
81
  *
@@ -183,7 +183,7 @@ sap.ui.define([
183
183
  */
184
184
 
185
185
  /**
186
- * Returns the event handler for <code>SelectionDetails</code> as an object.
186
+ * Gets the event handler for <code>SelectionDetails</code> as an object.
187
187
  *
188
188
  * @param {sap.ui.mdc.Chart} oChart Reference to the chart
189
189
  * @returns {sap.ui.mdc.chart.SelectionDetails} Event handler for SelectionDetails
@@ -252,7 +252,7 @@ sap.ui.define([
252
252
  ChartDelegate.createInitialChartContent = function(oChart) { };
253
253
 
254
254
  /**
255
- * Returns the instance of the inner chart.
255
+ * Gets the instance of the inner chart.
256
256
  *
257
257
  * @param {sap.ui.mdc.Chart} oChart Reference to the MDC chart
258
258
  * @returns {sap.ui.core.Control} Instance of the inner chart
@@ -274,7 +274,7 @@ sap.ui.define([
274
274
  */
275
275
 
276
276
  /**
277
- * Returns the current chart type.
277
+ * Gets the current chart type.
278
278
  *
279
279
  * @param {sap.ui.mdc.Chart} oChart Reference to the MDC chart
280
280
  * @returns {sap.ui.mdc.chart.ChartTypeObject[]} Information about the current chart type
@@ -316,7 +316,7 @@ sap.ui.define([
316
316
  ChartDelegate.getChartTypeLayoutConfig = function() { };
317
317
 
318
318
  /**
319
- * Returns the current drilling stack of the inner chart.<br>
319
+ * Gets the current drilling stack of the inner chart.<br>
320
320
  * The returned objects need at least a <code>label</code> and a <code>name</code> property.<br>
321
321
  * Also, a <code>dimension</code> array containing the dimension drill stack at the current level is required.
322
322
  *
@@ -328,7 +328,7 @@ sap.ui.define([
328
328
  ChartDelegate.getDrillStack = function(oChart) { };
329
329
 
330
330
  /**
331
- * Returns all sorted dimensions of an inner chart.
331
+ * Gets all sorted dimensions of an inner chart.
332
332
  * This is used to determine possible drill-down dimensions in the drill-down popover of the chart.
333
333
  *
334
334
  * @param {sap.ui.mdc.Chart} oChart Reference to the chart
@@ -339,7 +339,7 @@ sap.ui.define([
339
339
  ChartDelegate.getSortedDimensions = function(oChart) { };
340
340
 
341
341
  /**
342
- * Determines which MDC items are drillable and returns them.
342
+ * Gets the drillable items.
343
343
  * This function is used by the breadcrumb navigation.
344
344
  *
345
345
  * @param {sap.ui.mdc.Chart} oChart Reference to the chart
@@ -401,7 +401,7 @@ sap.ui.define([
401
401
  ChartDelegate.rebind = function(oChart, oBindingInfo) { };
402
402
 
403
403
  /**
404
- * Returns the information whether the inner chart is currently bound.
404
+ * Gets the information whether the inner chart is currently bound.
405
405
  *
406
406
  * @param {sap.ui.mdc.Chart} oChart Reference to the chart
407
407
  * @returns {boolean} <code>true</code> if inner chart is bound; <code>false</code> if not
@@ -412,7 +412,7 @@ sap.ui.define([
412
412
 
413
413
 
414
414
  /**
415
- * Returns the binding info for given chart.
415
+ * Gets the binding info for given chart.
416
416
  *
417
417
  * @param {sap.ui.mdc.Chart} oChart Reference to the chart
418
418
  * @returns {sap.ui.base.ManagedObject.AggregationBindingInfo} BindingInfo object
@@ -445,8 +445,9 @@ sap.ui.define([
445
445
  */
446
446
  ChartDelegate.setChartTooltipVisibility = function(oChart, bVisible) { };
447
447
 
448
+ //TODO: Think about a better function name or at least make sure the description is clearly understandable.
448
449
  /**
449
- * This function returns an ID that should be used in the internal chart for the Measure/Dimension.<br>
450
+ * Gets an ID that should be used in the internal chart for the Measure/Dimension.<br>
450
451
  * For standard cases, this is just the ID of the property.<br>
451
452
  * If it is necessary to use another ID internally inside the chart (for example, for duplicate property IDs) this method can be overwritten.<br>
452
453
  * In this case, <code>getPropertyFromNameAndKind</code> needs to be overwritten as well.
@@ -460,8 +461,9 @@ sap.ui.define([
460
461
  */
461
462
  ChartDelegate.getInternalChartNameFromPropertyNameAndKind = function(sName, sKind, oChart) { };
462
463
 
464
+ //TODO: Think about a better function name or at least make sure the description is clearly understandable.
463
465
  /**
464
- * Maps an ID of an internal chart dimension/measure and type of a property to its corresponding property entry.
466
+ * Gets a PropertyInfo object based on an internal chart dimension/measure and type of a property.
465
467
  *
466
468
  * @param {string} sName ID of internal chart measure/dimension
467
469
  * @param {string} sKind Kind of the property
@@ -473,7 +475,7 @@ sap.ui.define([
473
475
  ChartDelegate.getPropertyFromNameAndKind = function(sName, sKind, oChart) { };
474
476
 
475
477
  /**
476
- * Returns the relevant property info based on the metadata used with the chart instance.
478
+ * Gets the relevant PropertyInfos based on the metadata used with the chart instance.
477
479
  *
478
480
  * <b>Note:</b>
479
481
  * The result of this function must be kept stable throughout the lifecycle of your application.
@@ -491,7 +493,7 @@ sap.ui.define([
491
493
  };
492
494
 
493
495
  /**
494
- * Adds/Removes the busy overlay shown above the inner chart.
496
+ * Adds/Removes the busy overlay shown over the inner chart.
495
497
  *
496
498
  * @param {sap.ui.mdc.Chart} oChart Reference to the chart
497
499
  * @param {boolean} bShow Shows overlay if set to <code>true</code>
@@ -502,6 +504,7 @@ sap.ui.define([
502
504
 
503
505
  /**
504
506
  * Determines if a given <code>SelectionDetailsItem</code> is enabled.
507
+ *
505
508
  * @param {sap.ui.mdc.Chart} oChart Reference to the chart
506
509
  * @param {array} mData The data array of the selected item
507
510
  * @param {sap.ui.model.Context | undefined} oContext Binding context of the item in the selection. This is undefined if no binding is used
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.ui.core.Control
24
24
  * @abstract
25
25
  * @author SAP SE
26
- * @version 1.130.0
26
+ * @version 1.131.0
27
27
  * @alias sap.ui.mdc.Control
28
28
  *
29
29
  * @borrows sap.ui.mdc.mixin.DelegateMixin.awaitControlDelegate as #awaitControlDelegate
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * </ul>
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.130.0
32
+ * @version 1.131.0
33
33
  * @public
34
34
  * @since 1.114.0
35
35
  * @namespace
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.ui.core.Element
24
24
  * @abstract
25
25
  * @author SAP SE
26
- * @version 1.130.0
26
+ * @version 1.131.0
27
27
  * @alias sap.ui.mdc.Element
28
28
  *
29
29
  * @borrows sap.ui.mdc.mixin.DelegateMixin.awaitControlDelegate as #awaitControlDelegate
@@ -41,7 +41,7 @@ sap.ui.define([
41
41
  * <ul>
42
42
  * <li>In display mode, usually a {@link sap.m.Text Text} control is rendered.</li>
43
43
  * <li>If <code>multipleLines</code> is set, an {@link sap.m.ExpandableText ExpandableText} control is rendered.</li>
44
- * <li>If <code>fieldInfo</code> is set and it is configured to be triggerable, a {@link sap.m.Link Link} control is rendered.</li>
44
+ * <li>If <code>fieldInfo</code> is set and it is configured to be triggerable, a {@link sap.m.Link Link} control is rendered. The <code>multipleLines</code> property is forwarded to the <code>wrapping</code> property of the {@link sap.m.Link Link} control.</li>
45
45
  * <li>In edit mode, usually an {@link sap.m.Input Input} control is rendered.</li>
46
46
  * <li>If <code>multipleLines</code> is set, a {@link sap.m.TextArea TextArea} control is rendered.</li>
47
47
  * <li>If a date type is used, a {@link sap.m.DatePicker DatePicker} control is rendered.</li>
@@ -54,13 +54,13 @@ sap.ui.define([
54
54
  * @implements sap.ui.core.IFormContent, sap.ui.core.ISemanticFormContent, sap.m.IOverflowToolbarContent
55
55
  *
56
56
  * @author SAP SE
57
- * @version 1.130.0
57
+ * @version 1.131.0
58
58
  *
59
59
  * @constructor
60
60
  * @alias sap.ui.mdc.Field
61
61
  * @see {@link topic:1dd2aa91115d43409452a271d11be95b sap.ui.mdc}
62
62
  * @see {@link topic:5260b9ca249f465ab33769b9edb442aa Field Building Block (OData V4)}
63
- * @version 1.130.0
63
+ * @version 1.131.0
64
64
  * @since 1.54.0
65
65
  * @public
66
66
  */
@@ -110,7 +110,11 @@ sap.ui.define([
110
110
  value: { type: "string" },
111
111
 
112
112
  /**
113
- * Flag that indicates if the entered <code>value</code> is valid
113
+ * Flag that indicates if the entered <code>value</code> is valid.
114
+ *
115
+ * This flag is only set if the user input is parsed and validated synchronously.
116
+ * If there is some asynchronous parsing or validation, for example, via request to a back-end system, the validation result will be returned in the <code>promise</code>
117
+ * parameter.
114
118
  */
115
119
  valid: { type: "boolean" },
116
120
 
@@ -118,6 +122,7 @@ sap.ui.define([
118
122
  * Returns a <code>Promise</code> for the change. The <code>Promise</code> returns the value if it is resolved.
119
123
  * If the <code>change</code> event is synchronous, the <code>Promise</code> has already been already resolved. If it is asynchronous,
120
124
  * it will be resolved after the value has been updated.
125
+ * If the user input is not valid, the <code>Promise</code> will be rejected with the corresponding exception.
121
126
  *
122
127
  * The <code>Field</code> should be set to busy during the parsing to prevent user input.
123
128
  * As there might be a whole group of fields that needs to be busy, this cannot be done automatically.
@@ -168,21 +173,31 @@ sap.ui.define([
168
173
  let oDataType;
169
174
  let aTypes;
170
175
  let i = 0;
176
+ const sTypeName = typeof oBindingInfo.type === "string" ? oBindingInfo.type : oBindingInfo.type?.getMetadata().getName();
177
+ const oFormatOptions = typeof oBindingInfo.type === "string" ? oBindingInfo.formatOptions : oBindingInfo.type?.getFormatOptions();
178
+ const oConstraints = typeof oBindingInfo.type === "string" ? oBindingInfo.constraints : oBindingInfo.type?.getConstraints();
171
179
 
172
180
  if (sName === "value" && !oBindingInfo.formatter) { // not if a formatter is used, as this needs to be executed
173
181
  oBindingInfo.targetType = "raw"; // provide internal value to inner control
174
182
  oDataType = this.getContentFactory().getDataType();
175
183
  if (oBindingInfo.type && (!oDataType ||
176
- oDataType.getMetadata().getName() !== oBindingInfo.type.getMetadata().getName() ||
177
- !deepEqual(oDataType.getFormatOptions(), oBindingInfo.type.getFormatOptions()) ||
178
- !deepEqual(oDataType.getConstraints(), oBindingInfo.type.getConstraints()) ||
184
+ oDataType.getMetadata().getName() !== sTypeName ||
185
+ !deepEqual(oDataType.getFormatOptions(), oFormatOptions) ||
186
+ !deepEqual(oDataType.getConstraints(), oConstraints) ||
179
187
  oDataType._bCreatedByOperator !== oBindingInfo.type._bCreatedByOperator)
180
188
  ) {
181
- this.getContentFactory().setDataType(oBindingInfo.type);
189
+ if (typeof oBindingInfo.type === "string") {
190
+ // reuse hidden properties (like in FilterField)
191
+ this.setDataType(sTypeName);
192
+ this.setDataTypeFormatOptions(oFormatOptions);
193
+ this.setDataTypeConstraints(oConstraints);
194
+ } else {
195
+ this.getContentFactory().setDataType(oBindingInfo.type);
196
+ }
182
197
  this.getContentFactory().setDateOriginalType(undefined);
183
198
  this.getContentFactory().setUnitOriginalType(undefined);
184
199
  this.getContentFactory().setIsMeasure(false);
185
- if (oBindingInfo.type.isA("sap.ui.model.CompositeType") && oBindingInfo.parts) {
200
+ if (oBindingInfo.parts && oBindingInfo.type.isA("sap.ui.model.CompositeType")) {
186
201
  aTypes = [];
187
202
  for (i = 0; i < oBindingInfo.parts.length; i++) {
188
203
  aTypes.push(oBindingInfo.parts[i].type);
@@ -196,13 +211,15 @@ sap.ui.define([
196
211
  oBindingInfo.targetType = "raw"; // provide internal value to inner control
197
212
  oDataType = this.getContentFactory().getAdditionalDataType();
198
213
  if (oBindingInfo.type && (!oDataType ||
199
- oDataType.getMetadata().getName() !== oBindingInfo.type.getMetadata().getName() ||
200
- !deepEqual(oDataType.getFormatOptions(), oBindingInfo.type.getFormatOptions()) ||
201
- !deepEqual(oDataType.getConstraints(), oBindingInfo.type.getConstraints()) ||
214
+ oDataType.getMetadata().getName() !== sTypeName ||
215
+ !deepEqual(oDataType.getFormatOptions(), oFormatOptions) ||
216
+ !deepEqual(oDataType.getConstraints(), oConstraints) ||
202
217
  oDataType._bCreatedByOperator !== oBindingInfo.type._bCreatedByOperator)
203
218
  ) {
204
- this.getContentFactory().setAdditionalDataType(oBindingInfo.type);
205
- if (oBindingInfo.type.isA("sap.ui.model.CompositeType") && oBindingInfo.parts) {
219
+ if (typeof oBindingInfo.type !== "string") {
220
+ this.getContentFactory().setAdditionalDataType(oBindingInfo.type);
221
+ }
222
+ if (oBindingInfo.parts && oBindingInfo.type.isA("sap.ui.model.CompositeType")) {
206
223
  aTypes = [];
207
224
  for (i = 0; i < oBindingInfo.parts.length; i++) {
208
225
  aTypes.push(oBindingInfo.parts[i].type);
@@ -664,7 +681,18 @@ sap.ui.define([
664
681
  Field.prototype.getAdditionalDataTypeConfiguration = function() {
665
682
 
666
683
  const oBinding = this.getBinding("additionalValue");
667
- return oBinding && oBinding.getType();
684
+ if (oBinding) {
685
+ return oBinding.getType();
686
+ } else {
687
+ const oBindingInfo = this.getBindingInfo("additionalValue");
688
+ if (oBindingInfo?.type) {
689
+ if (typeof oBindingInfo.type === "string") {
690
+ return {name: oBindingInfo.type, formatOptions: oBindingInfo.formatOptions, constraints: oBindingInfo.constraints};
691
+ } else {
692
+ return oBindingInfo.type;
693
+ }
694
+ }
695
+ }
668
696
 
669
697
  };
670
698
 
@@ -45,7 +45,7 @@ sap.ui.define([
45
45
  * The metadata information is provided via the {@link module:sap/ui/mdc/FilterBarDelegate FilterBarDelegate} implementation. This implementation has to be provided by the application.
46
46
  * @extends sap.ui.mdc.filterbar.FilterBarBase
47
47
  * @author SAP SE
48
- * @version 1.130.0
48
+ * @version 1.131.0
49
49
  * @constructor
50
50
  * @public
51
51
  * @since 1.61.0
@@ -53,13 +53,13 @@ sap.ui.define([
53
53
  * @implements sap.ui.core.IFormContent, sap.ui.core.ISemanticFormContent, sap.m.IOverflowToolbarContent
54
54
  *
55
55
  * @author SAP SE
56
- * @version 1.130.0
56
+ * @version 1.131.0
57
57
  *
58
58
  * @constructor
59
59
  * @alias sap.ui.mdc.FilterField
60
60
  * @see {@link topic:1dd2aa91115d43409452a271d11be95b sap.ui.mdc}
61
61
  * @see {@link topic:2df783760a8e4540ad19ce5ec3ed91c8 FilterField Building Block (OData V4)}
62
- * @version 1.130.0
62
+ * @version 1.131.0
63
63
  * @since 1.48.0
64
64
  * @public
65
65
  */
@@ -71,7 +71,7 @@ sap.ui.define([
71
71
  * @extends sap.ui.mdc.field.FieldInfoBase
72
72
  *
73
73
  * @author SAP SE
74
- * @version 1.130.0
74
+ * @version 1.131.0
75
75
  *
76
76
  * @constructor
77
77
  * @alias sap.ui.mdc.Link
@@ -125,7 +125,7 @@ sap.ui.define([
125
125
  * @public
126
126
  * @param {sap.ui.mdc.Link} oLink Instance of the <code>Link</code>
127
127
  * @param {sap.ui.mdc.link.Panel} oPanel Instance of the <code>Panel</code>
128
- * @returns {Promise<{string, sap.ui.core.Control}>} Once resolved, an <code>Object</code> containing the title string and an <code>Control</code> which is referenced as arialabelledBy.
128
+ * @returns {Promise<{sTitle: string, oLabelledByControl: sap.ui.core.Control}>} Once resolved, an <code>Object</code> containing the title string and an <code>Control</code> which is referenced as arialabelledBy.
129
129
  */
130
130
  LinkDelegate.fetchPopoverTitle = function(oLink, oPanel) {
131
131
  if (!oLink) {
@@ -44,11 +44,10 @@ sap.ui.define([
44
44
  * @constructor
45
45
  * @alias sap.ui.mdc.MultiValueField
46
46
  * @author SAP SE
47
- * @version 1.130.0
47
+ * @version 1.131.0
48
48
  * @since 1.93.0
49
49
  *
50
50
  * @public
51
- * @experimental As of version 1.93.0
52
51
  */
53
52
  const Field = FieldBase.extend("sap.ui.mdc.MultiValueField", /* @lends sap.ui.mdc.MultiValueField.prototype */ {
54
53
  metadata: {
@@ -422,7 +421,7 @@ sap.ui.define([
422
421
  * See {@link sap.ui.base.ManagedObject#bindProperty ManagedObject.bindProperty} for a detailed description of the possible properties of oBindingInfo
423
422
  *
424
423
  * Do not use the <code>conditions</code> property,
425
- * use the <code>value</code> and <code>additionalValue</code> properties instead.
424
+ * use the <code>items</code> aggregation instead.
426
425
  *
427
426
  * @param {sap.ui.base.ManagedObject.PropertyBindingInfo} oBindingInfo The binding information
428
427
  * @returns {this} Reference to <code>this</code> to allow method chaining
@@ -437,7 +436,7 @@ sap.ui.define([
437
436
  * Unbinds property {@link #getConditions conditions} from model data.
438
437
  *
439
438
  * Do not use the <code>conditions</code> property,
440
- * use the <code>value</code> and <code>additionalValue</code> properties instead.
439
+ * use the <code>items</code> aggregation instead.
441
440
  *
442
441
  * @returns {this} Reference to <code>this</code> to allow method chaining
443
442
  * @public