@openui5/sap.ui.mdc 1.93.3 → 1.96.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.
Files changed (237) hide show
  1. package/.reuse/dep5 +6 -11
  2. package/THIRDPARTY.txt +10 -16
  3. package/package.json +4 -4
  4. package/src/sap/ui/mdc/.library +1 -1
  5. package/src/sap/ui/mdc/ActionToolbar.js +236 -334
  6. package/src/sap/ui/mdc/AggregationBaseDelegate.js +2 -1
  7. package/src/sap/ui/mdc/Chart.js +150 -22
  8. package/src/sap/ui/mdc/ChartDelegateNew.js +15 -0
  9. package/src/sap/ui/mdc/ChartNew.js +107 -66
  10. package/src/sap/ui/mdc/Control.js +4 -3
  11. package/src/sap/ui/mdc/Element.js +5 -4
  12. package/src/sap/ui/mdc/Field.js +2 -2
  13. package/src/sap/ui/mdc/FilterBar.js +1 -10
  14. package/src/sap/ui/mdc/FilterField.js +28 -4
  15. package/src/sap/ui/mdc/Link.js +2 -2
  16. package/src/sap/ui/mdc/MultiValueField.js +1 -1
  17. package/src/sap/ui/mdc/Table.js +160 -79
  18. package/src/sap/ui/mdc/TableDelegate.js +20 -3
  19. package/src/sap/ui/mdc/ValueHelp.js +1474 -0
  20. package/src/sap/ui/mdc/ValueHelpDelegate.js +147 -0
  21. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +49 -104
  22. package/src/sap/ui/mdc/chart/DimensionItem.js +3 -3
  23. package/src/sap/ui/mdc/chart/Item.js +2 -3
  24. package/src/sap/ui/mdc/chart/MeasureItem.js +2 -2
  25. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +21 -2
  26. package/src/sap/ui/mdc/chart/ToolbarHandler.js +237 -225
  27. package/src/sap/ui/mdc/chartNew/ChartSelectionDetailsNew.js +1 -1
  28. package/src/sap/ui/mdc/chartNew/ChartToolbarNew.js +14 -10
  29. package/src/sap/ui/mdc/chartNew/ChartTypeButtonNew.js +1 -1
  30. package/src/sap/ui/mdc/chartNew/DrillStackHandlerNew.js +12 -10
  31. package/src/sap/ui/mdc/chartNew/ItemNew.js +0 -1
  32. package/src/sap/ui/mdc/chartNew/PropertyHelperNew.js +1 -1
  33. package/src/sap/ui/mdc/condition/Condition.js +2 -2
  34. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  35. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  36. package/src/sap/ui/mdc/condition/FilterConverter.js +1 -1
  37. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +13 -7
  38. package/src/sap/ui/mdc/condition/Operator.js +4 -4
  39. package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
  40. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +43 -0
  41. package/src/sap/ui/mdc/designtime/chart/ChartNew.designtime.js +91 -0
  42. package/src/sap/ui/mdc/designtime/filterbar/FilterBar.designtime.js +20 -0
  43. package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +31 -0
  44. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +5 -0
  45. package/src/sap/ui/mdc/enum/ContentMode.js +25 -4
  46. package/src/sap/ui/mdc/enum/SelectType.js +43 -0
  47. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  48. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  49. package/src/sap/ui/mdc/field/ConditionType.js +19 -4
  50. package/src/sap/ui/mdc/field/ConditionsType.js +5 -4
  51. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
  52. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  53. package/src/sap/ui/mdc/field/DefineConditionPanel.js +38 -14
  54. package/src/sap/ui/mdc/field/FieldBase.js +92 -41
  55. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +9 -2
  56. package/src/sap/ui/mdc/field/FieldHelpBase.js +64 -4
  57. package/src/sap/ui/mdc/field/FieldInfoBase.js +9 -1
  58. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  59. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  60. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  61. package/src/sap/ui/mdc/field/FieldValueHelp.js +7 -1
  62. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  63. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +1 -1
  64. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +1 -1
  65. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +2 -2
  66. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +1 -1
  67. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  68. package/src/sap/ui/mdc/field/ListFieldHelp.js +3 -3
  69. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  70. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  71. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  72. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
  73. package/src/sap/ui/mdc/field/content/BooleanContent.js +15 -3
  74. package/src/sap/ui/mdc/field/content/ContentFactory.js +16 -8
  75. package/src/sap/ui/mdc/field/content/DefaultContent.js +64 -23
  76. package/src/sap/ui/mdc/field/content/LinkContent.js +6 -0
  77. package/src/sap/ui/mdc/field/content/SearchContent.js +21 -3
  78. package/src/sap/ui/mdc/field/content/UnitContent.js +2 -2
  79. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +105 -44
  80. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +52 -0
  81. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +10 -51
  82. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +1 -1
  83. package/src/sap/ui/mdc/flexibility/ActionToolbar.flexibility.js +22 -0
  84. package/src/sap/ui/mdc/flexibility/ActionToolbarAction.flexibility.js +19 -0
  85. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  86. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +57 -46
  87. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  88. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  89. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +203 -197
  90. package/src/sap/ui/mdc/library.js +588 -8
  91. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  92. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  93. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  94. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  95. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  96. package/src/sap/ui/mdc/link/Factory.js +1 -1
  97. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  98. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  99. package/src/sap/ui/mdc/link/Panel.js +1 -1
  100. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  101. package/src/sap/ui/mdc/link/PanelListItem.js +1 -1
  102. package/src/sap/ui/mdc/link/SelectionDialog.js +2 -2
  103. package/src/sap/ui/mdc/link/SelectionDialogItem.js +1 -1
  104. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  105. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  106. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  107. package/src/sap/ui/mdc/messagebundle.properties +31 -5
  108. package/src/sap/ui/mdc/messagebundle_ar.properties +11 -4
  109. package/src/sap/ui/mdc/messagebundle_bg.properties +10 -3
  110. package/src/sap/ui/mdc/messagebundle_ca.properties +10 -3
  111. package/src/sap/ui/mdc/messagebundle_cs.properties +12 -5
  112. package/src/sap/ui/mdc/messagebundle_cy.properties +10 -3
  113. package/src/sap/ui/mdc/messagebundle_da.properties +10 -3
  114. package/src/sap/ui/mdc/messagebundle_de.properties +12 -5
  115. package/src/sap/ui/mdc/messagebundle_el.properties +11 -4
  116. package/src/sap/ui/mdc/messagebundle_en.properties +9 -2
  117. package/src/sap/ui/mdc/messagebundle_en_GB.properties +10 -3
  118. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +11 -3
  119. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +19 -3
  120. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +11 -2
  121. package/src/sap/ui/mdc/messagebundle_es.properties +35 -28
  122. package/src/sap/ui/mdc/messagebundle_es_MX.properties +10 -3
  123. package/src/sap/ui/mdc/messagebundle_et.properties +10 -3
  124. package/src/sap/ui/mdc/messagebundle_fi.properties +11 -4
  125. package/src/sap/ui/mdc/messagebundle_fr.properties +22 -15
  126. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +10 -3
  127. package/src/sap/ui/mdc/messagebundle_hi.properties +10 -3
  128. package/src/sap/ui/mdc/messagebundle_hr.properties +10 -3
  129. package/src/sap/ui/mdc/messagebundle_hu.properties +11 -4
  130. package/src/sap/ui/mdc/messagebundle_id.properties +11 -4
  131. package/src/sap/ui/mdc/messagebundle_it.properties +33 -26
  132. package/src/sap/ui/mdc/messagebundle_iw.properties +10 -3
  133. package/src/sap/ui/mdc/messagebundle_ja.properties +13 -6
  134. package/src/sap/ui/mdc/messagebundle_kk.properties +10 -3
  135. package/src/sap/ui/mdc/messagebundle_ko.properties +10 -3
  136. package/src/sap/ui/mdc/messagebundle_lt.properties +10 -3
  137. package/src/sap/ui/mdc/messagebundle_lv.properties +10 -3
  138. package/src/sap/ui/mdc/messagebundle_ms.properties +10 -3
  139. package/src/sap/ui/mdc/messagebundle_nl.properties +11 -4
  140. package/src/sap/ui/mdc/messagebundle_no.properties +17 -10
  141. package/src/sap/ui/mdc/messagebundle_pl.properties +14 -7
  142. package/src/sap/ui/mdc/messagebundle_pt.properties +11 -4
  143. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +10 -3
  144. package/src/sap/ui/mdc/messagebundle_ro.properties +13 -6
  145. package/src/sap/ui/mdc/messagebundle_ru.properties +10 -3
  146. package/src/sap/ui/mdc/messagebundle_sh.properties +10 -3
  147. package/src/sap/ui/mdc/messagebundle_sk.properties +11 -4
  148. package/src/sap/ui/mdc/messagebundle_sl.properties +10 -3
  149. package/src/sap/ui/mdc/messagebundle_sv.properties +11 -4
  150. package/src/sap/ui/mdc/messagebundle_th.properties +16 -9
  151. package/src/sap/ui/mdc/messagebundle_tr.properties +10 -3
  152. package/src/sap/ui/mdc/messagebundle_uk.properties +10 -3
  153. package/src/sap/ui/mdc/messagebundle_vi.properties +10 -3
  154. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +10 -3
  155. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +10 -3
  156. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  157. package/src/sap/ui/mdc/mixin/DelegateMixin.js +2 -2
  158. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +3 -3
  159. package/src/sap/ui/mdc/mixin/PromiseMixin.js +94 -0
  160. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelperNew.js +1 -1
  161. package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +6 -6
  162. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +37 -10
  163. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +94 -0
  164. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegateNew.js +492 -203
  165. package/src/sap/ui/mdc/p13n/DefaultProviderRegistry.js +1 -1
  166. package/src/sap/ui/mdc/p13n/Engine.js +3 -2
  167. package/src/sap/ui/mdc/p13n/P13nBuilder.js +6 -60
  168. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  169. package/src/sap/ui/mdc/p13n/UIManager.js +1 -1
  170. package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +22 -24
  171. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +59 -0
  172. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +1 -2
  173. package/src/sap/ui/mdc/p13n/panels/BasePanel.js +17 -8
  174. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +1 -2
  175. package/src/sap/ui/mdc/p13n/panels/ChartItemPanelNew.js +1171 -0
  176. package/src/sap/ui/mdc/p13n/panels/GroupPanel.js +1 -1
  177. package/src/sap/ui/mdc/p13n/panels/GroupView.js +7 -11
  178. package/src/sap/ui/mdc/p13n/panels/ListView.js +5 -3
  179. package/src/sap/ui/mdc/p13n/panels/QueryPanel.js +16 -9
  180. package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +0 -1
  181. package/src/sap/ui/mdc/p13n/panels/SortPanel.js +0 -1
  182. package/src/sap/ui/mdc/p13n/panels/SortQueryPanel.js +1 -1
  183. package/src/sap/ui/mdc/p13n/panels/Wrapper.js +1 -1
  184. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +89 -0
  185. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +9 -6
  186. package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +33 -4
  187. package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +9 -15
  188. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +12 -0
  189. package/src/sap/ui/mdc/p13n/subcontroller/GroupController.js +5 -12
  190. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +19 -21
  191. package/src/sap/ui/mdc/table/Column.js +35 -9
  192. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  193. package/src/sap/ui/mdc/table/GridTableType.js +0 -1
  194. package/src/sap/ui/mdc/table/PropertyHelper.js +108 -5
  195. package/src/sap/ui/mdc/table/ResponsiveTableType.js +19 -3
  196. package/src/sap/ui/mdc/table/RowSettings.js +1 -1
  197. package/src/sap/ui/mdc/table/TableTypeBase.js +0 -1
  198. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +1 -1
  199. package/src/sap/ui/mdc/themes/base/FilterBar.less +2 -2
  200. package/src/sap/ui/mdc/themes/base/GroupView.less +2 -2
  201. package/src/sap/ui/mdc/themes/base/ListView.less +2 -2
  202. package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +56 -21
  203. package/src/sap/ui/mdc/ui/Container.js +2 -2
  204. package/src/sap/ui/mdc/ui/ContainerItem.js +2 -2
  205. package/src/sap/ui/mdc/util/Common.js +26 -0
  206. package/src/sap/ui/mdc/util/FilterUtil.js +12 -1
  207. package/src/sap/ui/mdc/util/IdentifierUtil.js +4 -0
  208. package/src/sap/ui/mdc/util/PromiseCache.js +266 -0
  209. package/src/sap/ui/mdc/util/PropertyHelper.js +22 -1
  210. package/src/sap/ui/mdc/valuehelp/Dialog.js +498 -0
  211. package/src/sap/ui/mdc/valuehelp/Popover.js +362 -0
  212. package/src/sap/ui/mdc/valuehelp/base/Container.js +642 -0
  213. package/src/sap/ui/mdc/valuehelp/base/Content.js +628 -0
  214. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +139 -0
  215. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +557 -0
  216. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +133 -0
  217. package/src/sap/ui/mdc/valuehelp/content/Bool.js +318 -0
  218. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +276 -0
  219. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +532 -0
  220. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +638 -0
  221. package/src/sap/ui/mdc/valuehelp/content/MTable.js +916 -0
  222. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +3 -2
  223. package/test/sap/ui/mdc/testutils/opa/actions/OpenContextMenu.js +48 -0
  224. package/test/sap/ui/mdc/testutils/opa/chartNew/ActionsBase.js +310 -0
  225. package/test/sap/ui/mdc/testutils/opa/chartNew/ActionsViz.js +39 -0
  226. package/test/sap/ui/mdc/testutils/opa/chartNew/AssertionsBase.js +118 -0
  227. package/test/sap/ui/mdc/testutils/opa/chartNew/AssertionsViz.js +137 -0
  228. package/test/sap/ui/mdc/testutils/opa/chartNew/ChartNew.js +24 -0
  229. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +289 -0
  230. package/test/sap/ui/mdc/testutils/opa/filterbar/Actions.js +250 -0
  231. package/test/sap/ui/mdc/testutils/opa/filterbar/Assertions.js +91 -0
  232. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +137 -0
  233. package/test/sap/ui/mdc/testutils/opa/filterbar/Util.js +25 -0
  234. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +401 -93
  235. package/test/sap/ui/mdc/testutils/opa/p13n/Util.js +4 -1
  236. package/test/sap/ui/mdc/testutils/opa/p13n/{waitForP13nButtonWithParentAndIcon.js → waitForP13nButtonWithMatchers.js} +5 -18
  237. package/test/sap/ui/mdc/testutils/opa/table/TestObjects.js +0 -1
@@ -23,7 +23,6 @@ sap.ui.define([
23
23
  * The control is experimental and the API/behaviour is not finalised and hence this should not be used for productive usage.
24
24
  * @extends sap.ui.mdc.table.TableTypeBase
25
25
  * @author SAP SE
26
- * @constructor The API/behaviour is not finalised and hence this control should not be used for productive usage.
27
26
  * @private
28
27
  * @experimental
29
28
  * @since 1.65
@@ -5,9 +5,13 @@
5
5
  */
6
6
 
7
7
  sap.ui.define([
8
- "../util/PropertyHelper"
8
+ "../util/PropertyHelper",
9
+ "sap/ui/core/Core",
10
+ "sap/m/table/Util"
9
11
  ], function(
10
- PropertyHelperBase
12
+ PropertyHelperBase,
13
+ Core,
14
+ TableUtil
11
15
  ) {
12
16
  "use strict";
13
17
 
@@ -33,7 +37,7 @@ sap.ui.define([
33
37
  * @extends sap.ui.mdc.util.PropertyHelper
34
38
  *
35
39
  * @author SAP SE
36
- * @version 1.93.3
40
+ * @version 1.96.1
37
41
  *
38
42
  * @private
39
43
  * @experimental
@@ -43,7 +47,7 @@ sap.ui.define([
43
47
  */
44
48
  var PropertyHelper = PropertyHelperBase.extend("sap.ui.mdc.table.PropertyHelper", {
45
49
  constructor: function(aProperties, mExtensions, oParent, mExtensionAttributeMetadata) {
46
- var aAllowedAttributes = ["filterable", "sortable", "groupable", "key", "unit", "text", "exportSettings", "propertyInfos"];
50
+ var aAllowedAttributes = ["filterable", "sortable", "groupable", "key", "unit", "text", "exportSettings", "propertyInfos", "visualSettings"];
47
51
  PropertyHelperBase.call(this, aProperties, mExtensions, oParent, aAllowedAttributes, mExtensionAttributeMetadata);
48
52
  }
49
53
  });
@@ -67,7 +71,7 @@ sap.ui.define([
67
71
  PropertyHelper.prototype.prepareProperty = function(oProperty) {
68
72
  PropertyHelperBase.prototype.prepareProperty.apply(this, arguments);
69
73
  oProperty.isAggregatable = function() {
70
- return false;
74
+ return false;
71
75
  };
72
76
  };
73
77
 
@@ -205,5 +209,104 @@ sap.ui.define([
205
209
  return oExportObj;
206
210
  }
207
211
 
212
+ /**
213
+ * Sets the width of the provided column based on the <code>visualSettings</code> of the relevant <code>PropertyInfo</code>.
214
+ *
215
+ * @param {sap.ui.mdc.table.Column} oMDCColumn The MDCColumn instance for which to set the width
216
+ * @public
217
+ * @since 1.95
218
+ */
219
+ PropertyHelper.prototype.setColumnWidth = function(oMDCColumn) {
220
+ var sPropertyName = oMDCColumn.getDataProperty();
221
+ var oProperty = this.getProperty(sPropertyName);
222
+ if (!oProperty) {
223
+ return;
224
+ }
225
+
226
+ var mPropertyInfoVisualSettings = oProperty.getVisualSettings(sPropertyName);
227
+ if (mPropertyInfoVisualSettings && mPropertyInfoVisualSettings.widthCalculation === null) {
228
+ return;
229
+ }
230
+
231
+ var fWidth = this._calcColumnWidth(oProperty) + 1; // add 1rem extra for padding and border
232
+ oMDCColumn._updateColumnWidth(fWidth + "rem");
233
+ };
234
+
235
+ /**
236
+ * Calculates the column width based on the provided <code>PropertyInfo</code>
237
+ *
238
+ * @param {object} oProperty The properties of PropertyInfo of MDCColumn instance for which to set the width for
239
+ * @param {object} [mWidthCalculation] The configuration object for the width calculation
240
+ * @param {int} [mWidthCalculation.minWidth=2] The minimum content width in rem
241
+ * @param {int} [mWidthCalculation.maxWidth=19] The maximum content width in rem
242
+ * @param {int} [mWidthCalculation.defaultWidth=8] The default column content width when type check fails
243
+ * @param {boolean} [mWidthCalculation.includeLabel=true] Whether the label should be taken into account
244
+ * @param {float} [mWidthCalculation.gap=0] The additional content width in rem
245
+ * @param {boolean} [mWidthCalculation.verticalArrangement=false] Whether the referenced properties are arranged vertically
246
+ * @param {string|array[]} [mWidthCalculation.excludeProperties=[]] A list of invisible referenced property names
247
+ * @return {float} [fWidth] Calculated width
248
+ * @since 1.95
249
+ * @private
250
+ */
251
+ PropertyHelper.prototype._calcColumnWidth = function (oProperty, mWidthCalculation) {
252
+ var fWidth = 0;
253
+ var fLabelWidth = 0;
254
+ var mPropertyInfoWidthCalculation = oProperty.getVisualSettings() ? oProperty.getVisualSettings().widthCalculation : {};
255
+
256
+ mWidthCalculation = Object.assign({
257
+ minWidth: 2,
258
+ maxWidth: 19,
259
+ defaultWidth: 8,
260
+ gap: 0,
261
+ includeLabel: true,
262
+ excludeProperties: [],
263
+ verticalArrangement: false
264
+ }, mPropertyInfoWidthCalculation, mWidthCalculation || {});
265
+
266
+ var iMinWidth = Math.max(1, mWidthCalculation.minWidth);
267
+ var iMaxWidth = Math.max(iMinWidth, mWidthCalculation.maxWidth);
268
+
269
+ if (oProperty.isComplex()) {
270
+ var aRelevantReferencedProperties = oProperty.getReferencedProperties().filter(function(oProp) {
271
+ return ![].concat(mWidthCalculation.excludeProperties).includes(oProp.getName());
272
+ });
273
+
274
+ aRelevantReferencedProperties.forEach(function(oReferencedProperty) {
275
+ var fReferencedPropertyWidth = this._calcColumnWidth(oReferencedProperty, {
276
+ includeLabel: false
277
+ });
278
+
279
+ if (mWidthCalculation.verticalArrangement || aRelevantReferencedProperties.length == 1) {
280
+ fWidth = Math.max(fReferencedPropertyWidth, fWidth);
281
+ } else {
282
+ fWidth = fWidth + fReferencedPropertyWidth + 0.5; // add 0.5rem for some extra spacing in h-alignment
283
+ }
284
+ }, this);
285
+ } else {
286
+ var oTypeConfig = oProperty.getTypeConfig();
287
+ var oType = oTypeConfig.typeInstance;
288
+
289
+ if (oType) {
290
+ fWidth = TableUtil.calcTypeWidth(oType, mWidthCalculation);
291
+ }
292
+ if (oProperty.getUnitProperty()) {
293
+ fWidth += 2.5;
294
+ }
295
+ }
296
+
297
+ fWidth += mWidthCalculation.gap;
298
+
299
+ if (mWidthCalculation.includeLabel) {
300
+ var sLabel = oProperty.getLabel() || "";
301
+ fLabelWidth = TableUtil.calcHeaderWidth(sLabel, fWidth, iMaxWidth, iMinWidth);
302
+ }
303
+
304
+ fWidth = Math.max(iMinWidth, fWidth, fLabelWidth);
305
+ fWidth = Math.min(fWidth, iMaxWidth);
306
+ fWidth = Math.round(fWidth * 100) / 100;
307
+
308
+ return fWidth;
309
+ };
310
+
208
311
  return PropertyHelper;
209
312
  });
@@ -12,7 +12,6 @@ sap.ui.define([
12
12
  var InnerTable, InnerColumn, InnerRow;
13
13
  var GrowingMode = library.GrowingMode;
14
14
  var RowAction = library.RowAction;
15
-
16
15
  /**
17
16
  * Constructor for a new ResponsiveTableType.
18
17
  *
@@ -23,7 +22,6 @@ sap.ui.define([
23
22
  * The control is experimental and the API/behaviour is not finalised and hence this should not be used for productive usage.
24
23
  * @extends sap.ui.mdc.table.TableTypeBase
25
24
  * @author SAP SE
26
- * @constructor The API/behaviour is not finalised and hence this control should not be used for productive usage.
27
25
  * @private
28
26
  * @experimental
29
27
  * @since 1.65
@@ -74,6 +72,16 @@ sap.ui.define([
74
72
  detailsButtonSetting: {
75
73
  type: "sap.ui.core.Priority[]",
76
74
  group: "Behavior"
75
+ },
76
+ /**
77
+ * Defines the layout in which the table pop-in rows are rendered.
78
+ *
79
+ * @since 1.96
80
+ */
81
+ popinLayout: {
82
+ type : "sap.m.PopinLayout",
83
+ group : "Appearance",
84
+ defaultValue : "Block"
77
85
  }
78
86
  }
79
87
  }
@@ -91,6 +99,8 @@ sap.ui.define([
91
99
  oTable.setGrowing(vValue !== GrowingMode.None);
92
100
  } else if (sProperty === "showDetailsButton") {
93
101
  this.updateShowDetailsButton(oTable, vValue);
102
+ } else if (sProperty === "popinLayout") {
103
+ oTable.setPopinLayout(vValue);
94
104
  }
95
105
  }
96
106
  };
@@ -204,7 +214,13 @@ sap.ui.define([
204
214
  };
205
215
 
206
216
  ResponsiveTableType.startColumnResize = function(oInnerTable, oColumn) {
207
- ColumnResizer.getPlugin(oInnerTable).startResizing(oColumn.getDomRef());
217
+ var oColumnResizer = ColumnResizer.getPlugin(oInnerTable);
218
+
219
+ if (!oColumnResizer) {
220
+ return;
221
+ }
222
+
223
+ return oColumnResizer.getColumnResizeButton(oColumn);
208
224
  };
209
225
 
210
226
  /**
@@ -19,7 +19,7 @@ sap.ui.define([
19
19
  * The <code>RowSettings</code> control allows you to configure a row.
20
20
  * You can only use this control in the context of the <code>sap.ui.mdc.Table</code> control to define row settings.
21
21
  * @extends sap.ui.core.Element
22
- * @version 1.93.3
22
+ * @version 1.96.1
23
23
  *
24
24
  * @constructor
25
25
  * @private
@@ -19,7 +19,6 @@ sap.ui.define([
19
19
  * The control is experimental and the API/behaviour is not finalised and hence this should not be used for productive usage.
20
20
  * @extends sap.ui.core.Element
21
21
  * @author SAP SE
22
- * @constructor The API/behaviour is not finalised and hence this control should not be used for productive usage.
23
22
  * @private
24
23
  * @abstract
25
24
  * @experimental
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @extends sap.ui.mdc.table.PropertyHelper
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.93.3
30
+ * @version 1.96.1
31
31
  *
32
32
  * @private
33
33
  * @experimental
@@ -19,8 +19,8 @@
19
19
  padding-left: 0.5rem;
20
20
  }
21
21
 
22
- .sapUiMdcFilterBarBase .sapUiMdcFilterBarBaseLabel::after {
23
- content: ":";
22
+ .sapUiMdcFilterBarBase .sapUiMdcFilterBarBaseLabel .sapMLabelColonAndRequired::before {
23
+ content: attr(data-colon);
24
24
  }
25
25
 
26
26
  .sapUiMdcFilterBarBaseAFLayout > .sapUiAFLayoutItem > div,
@@ -17,8 +17,8 @@
17
17
  }
18
18
 
19
19
  //Display ':' for Labels
20
- .sapUiMDCGroupView.sapUiMDCAFLabelMarking .sapMPanelContent .sapMLabel::after {
21
- content: ":";
20
+ .sapUiMDCGroupView.sapUiMDCAFLabelMarking .sapMPanelContent .sapMLabelColonAndRequired::before {
21
+ content: attr(data-colon);
22
22
  }
23
23
 
24
24
  //Custom bar that should look like 'ListView' background (mock columnheader)
@@ -1,6 +1,6 @@
1
1
  //Display ':' for Labels in the 'list' view
2
- .sapUiMDCListView.sapUiMDCAFLabelMarkingList tbody .sapMLabel > span:first-child::after {
3
- content: ":";
2
+ .sapUiMDCListView.sapUiMDCAFLabelMarkingList tbody .sapMLabel > .sapMLabelColonAndRequired::before{
3
+ content: attr(data-colon);
4
4
  }
5
5
 
6
6
  //Display checkbox at the top for items in the ListView
@@ -52,6 +52,11 @@
52
52
  white-space: nowrap;
53
53
  }
54
54
 
55
+ // overrules the tokenizer display setting for empty tokenizer
56
+ .sapMdcTokenizer .sapMTokenizerScrollContainerNoVisibleTokens {
57
+ display: inline-block;
58
+ }
59
+
55
60
  // make the ITB header height 3rem
56
61
  .sapMdcValueHelpPanel .sapMITBHead {
57
62
  margin-top: 0rem;
@@ -83,10 +88,13 @@
83
88
  }
84
89
 
85
90
  // makes the IconTab Header hidden when only one tabs exist
86
- .sapMdcValueHelpPanel .sapMdcNoHeader .sapMITH {
87
- visibility: hidden;
88
- height: 0px;
89
- }
91
+ // .sapMdcValueHelpPanel .sapMdcNoHeader .sapMITH {
92
+ // display: none;
93
+ // }
94
+
95
+ .sapMdcNoHeader > div:first-child {
96
+ display: none;
97
+ }
90
98
 
91
99
  .sapUiMdcDefineConditionPanel .sapUiMdcDefineConditionGrid {
92
100
  margin-bottom: 0.5rem;
@@ -94,8 +102,8 @@
94
102
 
95
103
  // give the Filterbar the required padding and max height
96
104
  .sapMdcValueHelpPanelFilterbar {
97
- margin-left: 2rem;
98
- margin-right: 1rem;
105
+ margin-left: 2rem;
106
+ margin-right: 1rem;
99
107
  }
100
108
 
101
109
  // allign static text
@@ -134,12 +142,12 @@
134
142
  // hide the toolbar border and give some more top margin
135
143
  .sapMdcValueHelpPanel .sapMTBStandard {
136
144
  margin-top: 0.5rem;
137
- border-bottom: solid 1px transparent;
145
+ border-bottom: solid 1px transparent;
138
146
  }
139
147
 
140
148
  // hide the panel bottom border
141
149
  .sapMdcValueHelpPanel .sapMPanelContent:not(.sapMPanelBGTransparent) {
142
- border-bottom: none;
150
+ border-bottom: none;
143
151
  }
144
152
 
145
153
 
@@ -155,29 +163,56 @@
155
163
  font-size: @sapMFontHeader5Size
156
164
  }
157
165
 
158
- // scrollbar for Table if FixFlex is fix
159
- .sapMdcValueHelpPanel .sapUiFixFlexScrolling .sapMdcTablePanel {
160
- height: 200px !important;
161
- }
162
-
163
166
  // make the title shadows transparent
164
- .sapMdcValueHelpTitle.sapMDialog:not(.sapMDialogWithSubHeader) > header:first-of-type .sapMIBar {
165
- box-shadow: inset 0 -0.0625rem transparent;
167
+ .sapMdcValueHelpTitleShadow.sapMDialog:not(.sapMDialogWithSubHeader) > header:first-of-type .sapMIBar {
168
+ box-shadow: inset 0 -0.0625rem transparent;
166
169
  }
167
170
 
168
- .sapMdcValueHelpTitle.sapMBar {
169
- box-shadow: inset 0 -0.0625rem transparent;
171
+ .sapMdcValueHelpTitleShadow.sapMBar {
172
+ box-shadow: inset 0 -0.0625rem transparent;
170
173
  }
171
174
 
172
175
  // remove some borders around the IconTabBar content
173
176
  .sapMdcValueHelpPanel .sapMITBContent {
174
- border-left: none;
175
- border-right: none;
176
- border-bottom: none;
177
+ border-left: none;
178
+ border-right: none;
179
+ border-bottom: none;
177
180
  }
178
181
 
179
182
  // set the 2rem padding also on the OK and Cancel buttons in the footer
180
183
  .sapMdcValueHelpTitle.sapMDialog footer .sapMTB {
181
- padding: 0 2rem;
184
+ padding: 0 2rem;
185
+ }
186
+
187
+
188
+ .sapMdcValueHelpPanelTableBox {
189
+ padding: 0 2rem;
190
+ }
191
+
192
+ .sapMdcValueHelpPanelTableBox > .sapMFlexItem {
193
+ //min-height: 200px !important;
194
+ height: 100%;
195
+ }
196
+
197
+ .sapMdcValueHelpPanelTableBox .sapUiMdcTable .sapMTBStandard {
198
+ margin-top: 0;
199
+ }
200
+
201
+ .sapMdcValueHelpPanel .sapUiFixFlexScrolling .sapMdcValueHelpPanelTableBox {
202
+ height: 200px !important;
203
+ }
204
+
205
+ .sapMdcValueHelpPanelTableBox .sapUiMdcTable .sapMTitleTB {
206
+ font-size: 1rem;
207
+ }
208
+
209
+ .sapMdcValueHelpPopover.sapMdcValueHelpMultiSelect .sapUiMdcDefineConditionPanel {
210
+ margin-left: 1rem;
211
+ margin-top: 1rem;
182
212
  }
183
213
 
214
+ .sapMdcValueHelpPopover.sapMdcValueHelpSingleSelect .sapUiMdcDefineConditionPanel {
215
+ margin-left: 0rem;
216
+ margin-right: 0.75rem;
217
+ margin-top: 1rem;
218
+ }
@@ -22,12 +22,12 @@ sap.ui.define([
22
22
  * @extends sap.ui.core.Control
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.93.3
25
+ * @version 1.96.1
26
26
  *
27
27
  * @constructor
28
28
  * @alias sap.ui.mdc.ui.Container
29
29
  * @author SAP SE
30
- * @version 1.93.3
30
+ * @version 1.96.1
31
31
  * @since 1.85.0
32
32
  *
33
33
  * @private
@@ -20,12 +20,12 @@ sap.ui.define(['sap/ui/core/Element'],
20
20
  * @extends sap.ui.core.Element
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.93.3
23
+ * @version 1.96.1
24
24
  *
25
25
  * @constructor
26
26
  * @alias sap.ui.mdc.ui.ContainerItem
27
27
  * @author SAP SE
28
- * @version 1.93.3
28
+ * @version 1.96.1
29
29
  * @since 1.85.0
30
30
  *
31
31
  * @private
@@ -0,0 +1,26 @@
1
+ /*
2
+ * ! OpenUI5
3
+ * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+
7
+ sap.ui.define([], function() {
8
+ "use strict";
9
+
10
+ var Common = {
11
+ cleanup: function (oTarget, aFields) {
12
+ aFields.forEach(function (sField) {
13
+ var oRemovable = oTarget[sField];
14
+ if (oRemovable) {
15
+ if (oRemovable.destroy && !oRemovable.bIsDestroyed) {
16
+ oRemovable.destroy();
17
+ }
18
+ oTarget[sField] = null;
19
+ }
20
+ });
21
+ }
22
+ };
23
+
24
+ return Common;
25
+
26
+ }, /* bExport= */true);
@@ -33,14 +33,25 @@ sap.ui.define(['sap/ui/mdc/util/IdentifierUtil', 'sap/ui/mdc/enum/ConditionValid
33
33
  */
34
34
  getPropertyByKey : function(aPropertiesMetadata, sKey) {
35
35
  var oPropertyInfo = null;
36
+
36
37
  aPropertiesMetadata.some(function(oProp) {
37
- if (IdentifierUtil.getPropertyKey(oProp) === sKey) {
38
+ if (IdentifierUtil.getPropertyKeyByPath(oProp) === sKey) {
38
39
  oPropertyInfo = oProp;
39
40
  }
40
41
 
41
42
  return oPropertyInfo != null;
42
43
  });
43
44
 
45
+ if (!oPropertyInfo) {
46
+ aPropertiesMetadata.some(function(oProp) {
47
+ if (IdentifierUtil.getPropertyKey(oProp) === sKey) {
48
+ oPropertyInfo = oProp;
49
+ }
50
+
51
+ return oPropertyInfo != null;
52
+ });
53
+ }
54
+
44
55
  return oPropertyInfo;
45
56
  },
46
57
 
@@ -63,6 +63,10 @@ sap.ui.define(['sap/ui/base/DataType'], function(DataType) {
63
63
  return oProperty.name;
64
64
  },
65
65
 
66
+ getPropertyKeyByPath: function(oProperty) {
67
+ return oProperty.path;
68
+ },
69
+
66
70
  /**
67
71
  * Static function that determines the key of the property<br>
68
72
  *