@openui5/sap.ui.mdc 1.113.0 → 1.115.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 (269) hide show
  1. package/.reuse/dep5 +0 -5
  2. package/README.md +22 -9
  3. package/THIRDPARTY.txt +1 -7
  4. package/package.json +4 -4
  5. package/src/sap/ui/mdc/.library +1 -1
  6. package/src/sap/ui/mdc/ActionToolbar.js +5 -7
  7. package/src/sap/ui/mdc/AggregationBaseDelegate.js +5 -5
  8. package/src/sap/ui/mdc/BaseDelegate.js +49 -14
  9. package/src/sap/ui/mdc/Chart.js +147 -179
  10. package/src/sap/ui/mdc/ChartDelegate.js +404 -514
  11. package/src/sap/ui/mdc/ChartRenderer.js +11 -11
  12. package/src/sap/ui/mdc/Control.js +4 -4
  13. package/src/sap/ui/mdc/DefaultTypeMap.js +84 -0
  14. package/src/sap/ui/mdc/Element.js +4 -4
  15. package/src/sap/ui/mdc/Field.js +98 -96
  16. package/src/sap/ui/mdc/FilterBar.js +33 -56
  17. package/src/sap/ui/mdc/FilterBarDelegate.js +36 -69
  18. package/src/sap/ui/mdc/FilterField.js +93 -47
  19. package/src/sap/ui/mdc/Link.js +83 -82
  20. package/src/sap/ui/mdc/LinkDelegate.js +29 -48
  21. package/src/sap/ui/mdc/MultiValueField.js +34 -30
  22. package/src/sap/ui/mdc/Table.js +182 -193
  23. package/src/sap/ui/mdc/TableDelegate.js +244 -33
  24. package/src/sap/ui/mdc/ValueHelp.js +67 -50
  25. package/src/sap/ui/mdc/ValueHelpDelegate.js +57 -89
  26. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +4 -12
  27. package/src/sap/ui/mdc/chart/ChartImplementationContainer.js +192 -197
  28. package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +10 -20
  29. package/src/sap/ui/mdc/chart/ChartToolbar.js +50 -50
  30. package/src/sap/ui/mdc/chart/ChartTypeButton.js +23 -27
  31. package/src/sap/ui/mdc/chart/DrillBreadcrumbs.js +10 -10
  32. package/src/sap/ui/mdc/chart/DrillStackHandler.js +14 -14
  33. package/src/sap/ui/mdc/chart/Item.js +30 -17
  34. package/src/sap/ui/mdc/chart/PropertyHelper.js +10 -10
  35. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +23 -15
  36. package/src/sap/ui/mdc/condition/Condition.js +11 -23
  37. package/src/sap/ui/mdc/condition/ConditionConverter.js +8 -8
  38. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  39. package/src/sap/ui/mdc/condition/FilterConverter.js +2 -2
  40. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +771 -123
  41. package/src/sap/ui/mdc/condition/Operator.js +52 -50
  42. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +14 -14
  43. package/src/sap/ui/mdc/condition/RangeOperator.js +3 -5
  44. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +2 -2
  45. package/src/sap/ui/mdc/enum/ActionToolbarActionAlignment.js +5 -9
  46. package/src/sap/ui/mdc/enum/BaseType.js +15 -20
  47. package/src/sap/ui/mdc/enum/ConditionValidated.js +5 -9
  48. package/src/sap/ui/mdc/enum/ContentMode.js +1 -0
  49. package/src/sap/ui/mdc/enum/EditMode.js +7 -19
  50. package/src/sap/ui/mdc/enum/FieldDisplay.js +12 -18
  51. package/src/sap/ui/mdc/enum/FilterBarValidationStatus.js +3 -1
  52. package/src/sap/ui/mdc/enum/LinkType.js +40 -0
  53. package/src/sap/ui/mdc/enum/OperatorOverwrite.js +4 -2
  54. package/src/sap/ui/mdc/enum/OperatorValueType.js +47 -0
  55. package/src/sap/ui/mdc/enum/PersistenceMode.js +36 -36
  56. package/src/sap/ui/mdc/enum/ProcessingStrategy.js +3 -1
  57. package/src/sap/ui/mdc/enum/PropagationReason.js +1 -1
  58. package/src/sap/ui/mdc/enum/ReasonMode.js +1 -0
  59. package/src/sap/ui/mdc/enum/SelectType.js +1 -0
  60. package/src/sap/ui/mdc/enums/ActionToolbarActionAlignment.js +31 -0
  61. package/src/sap/ui/mdc/enums/BaseType.js +72 -0
  62. package/src/sap/ui/mdc/enums/ChartItemRoleType.js +61 -0
  63. package/src/sap/ui/mdc/enums/ChartItemType.js +31 -0
  64. package/src/sap/ui/mdc/enums/ChartP13nMode.js +48 -0
  65. package/src/sap/ui/mdc/enums/ChartToolbarActionType.js +49 -0
  66. package/src/sap/ui/mdc/enums/ConditionValidated.js +43 -0
  67. package/src/sap/ui/mdc/enums/ContentMode.js +74 -0
  68. package/src/sap/ui/mdc/enums/FieldDisplay.js +49 -0
  69. package/src/sap/ui/mdc/enums/FieldEditMode.js +55 -0
  70. package/src/sap/ui/mdc/enums/FilterBarP13nMode.js +36 -0
  71. package/src/sap/ui/mdc/enums/FilterBarValidationStatus.js +56 -0
  72. package/src/sap/ui/mdc/enums/LinkType.js +38 -0
  73. package/src/sap/ui/mdc/enums/OperatorOverwrite.js +34 -0
  74. package/src/sap/ui/mdc/enums/OperatorValueType.js +44 -0
  75. package/src/sap/ui/mdc/enums/PersistenceMode.js +44 -0
  76. package/src/sap/ui/mdc/enums/ProcessingStrategy.js +39 -0
  77. package/src/sap/ui/mdc/enums/ReasonMode.js +53 -0
  78. package/src/sap/ui/mdc/enums/TableGrowingMode.js +42 -0
  79. package/src/sap/ui/mdc/enums/TableMultiSelectMode.js +35 -0
  80. package/src/sap/ui/mdc/enums/TableP13nMode.js +54 -0
  81. package/src/sap/ui/mdc/enums/TableRowAction.js +30 -0
  82. package/src/sap/ui/mdc/enums/TableRowCountMode.js +36 -0
  83. package/src/sap/ui/mdc/enums/TableSelectionMode.js +45 -0
  84. package/src/sap/ui/mdc/enums/TableType.js +43 -0
  85. package/src/sap/ui/mdc/enums/ValueHelpPropagationReason.js +41 -0
  86. package/src/sap/ui/mdc/enums/ValueHelpSelectionType.js +46 -0
  87. package/src/sap/ui/mdc/field/ConditionType.js +120 -88
  88. package/src/sap/ui/mdc/field/ConditionsType.js +149 -44
  89. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  90. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +15 -17
  91. package/src/sap/ui/mdc/field/FieldBase.js +512 -323
  92. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +31 -114
  93. package/src/sap/ui/mdc/field/FieldBaseRenderer.js +4 -4
  94. package/src/sap/ui/mdc/field/FieldInfoBase.js +23 -21
  95. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  96. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  97. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  98. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +8 -29
  99. package/src/sap/ui/mdc/field/MultiValueFieldDelegate.js +2 -7
  100. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +2 -6
  101. package/src/sap/ui/mdc/field/TokenDisplay.js +1 -1
  102. package/src/sap/ui/mdc/field/TokenizerDisplay.js +2 -1
  103. package/src/sap/ui/mdc/field/TokenizerDisplayRenderer.js +0 -4
  104. package/src/sap/ui/mdc/field/content/BooleanContent.js +2 -2
  105. package/src/sap/ui/mdc/field/content/ContentFactory.js +47 -35
  106. package/src/sap/ui/mdc/field/content/DateContent.js +49 -43
  107. package/src/sap/ui/mdc/field/content/DateTimeContent.js +2 -2
  108. package/src/sap/ui/mdc/field/content/DefaultContent.js +8 -8
  109. package/src/sap/ui/mdc/field/content/LinkContent.js +10 -6
  110. package/src/sap/ui/mdc/field/content/SearchContent.js +4 -4
  111. package/src/sap/ui/mdc/field/content/TimeContent.js +2 -2
  112. package/src/sap/ui/mdc/field/content/UnitContent.js +19 -11
  113. package/src/sap/ui/mdc/field/splitValue.js +45 -0
  114. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +109 -218
  115. package/src/sap/ui/mdc/filterbar/IFilterContainer.js +22 -19
  116. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +6 -7
  117. package/src/sap/ui/mdc/filterbar/aligned/FilterContainer.js +2 -4
  118. package/src/sap/ui/mdc/filterbar/aligned/FilterItemLayout.js +3 -7
  119. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +52 -41
  120. package/src/sap/ui/mdc/filterbar/p13n/FilterColumnLayout.js +2 -4
  121. package/src/sap/ui/mdc/filterbar/p13n/FilterGroupLayout.js +1 -3
  122. package/src/sap/ui/mdc/filterbar/p13n/TableContainer.js +4 -2
  123. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +14 -21
  124. package/src/sap/ui/mdc/filterbar/vh/FilterBarDelegate.js +1 -1
  125. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  126. package/src/sap/ui/mdc/flexibility/ChartItemFlex.js +2 -38
  127. package/src/sap/ui/mdc/flexibility/ColumnFlex.js +3 -3
  128. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +11 -6
  129. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  130. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +2 -2
  131. package/src/sap/ui/mdc/flexibility/GroupFlex.js +11 -2
  132. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +25 -9
  133. package/src/sap/ui/mdc/flexibility/SortFlex.js +11 -1
  134. package/src/sap/ui/mdc/flexibility/Util.js +2 -2
  135. package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +7 -4
  136. package/src/sap/ui/mdc/library.js +178 -84
  137. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  138. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  139. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  140. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  141. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  142. package/src/sap/ui/mdc/link/Factory.js +1 -1
  143. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  144. package/src/sap/ui/mdc/link/LinkItem.js +26 -5
  145. package/src/sap/ui/mdc/link/Panel.js +1 -1
  146. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  147. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  148. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  149. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  150. package/src/sap/ui/mdc/messagebundle.properties +9 -0
  151. package/src/sap/ui/mdc/messagebundle_ar.properties +7 -1
  152. package/src/sap/ui/mdc/messagebundle_bg.properties +19 -13
  153. package/src/sap/ui/mdc/messagebundle_ca.properties +6 -0
  154. package/src/sap/ui/mdc/messagebundle_cs.properties +6 -0
  155. package/src/sap/ui/mdc/messagebundle_cy.properties +6 -0
  156. package/src/sap/ui/mdc/messagebundle_da.properties +6 -0
  157. package/src/sap/ui/mdc/messagebundle_de.properties +6 -0
  158. package/src/sap/ui/mdc/messagebundle_el.properties +13 -7
  159. package/src/sap/ui/mdc/messagebundle_en.properties +6 -0
  160. package/src/sap/ui/mdc/messagebundle_en_GB.properties +6 -0
  161. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +6 -0
  162. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +6 -0
  163. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +6 -0
  164. package/src/sap/ui/mdc/messagebundle_es.properties +6 -0
  165. package/src/sap/ui/mdc/messagebundle_es_MX.properties +6 -0
  166. package/src/sap/ui/mdc/messagebundle_et.properties +6 -0
  167. package/src/sap/ui/mdc/messagebundle_fi.properties +7 -1
  168. package/src/sap/ui/mdc/messagebundle_fr.properties +6 -0
  169. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +10 -4
  170. package/src/sap/ui/mdc/messagebundle_hi.properties +6 -0
  171. package/src/sap/ui/mdc/messagebundle_hr.properties +15 -9
  172. package/src/sap/ui/mdc/messagebundle_hu.properties +8 -2
  173. package/src/sap/ui/mdc/messagebundle_id.properties +6 -0
  174. package/src/sap/ui/mdc/messagebundle_it.properties +10 -4
  175. package/src/sap/ui/mdc/messagebundle_iw.properties +6 -0
  176. package/src/sap/ui/mdc/messagebundle_ja.properties +14 -8
  177. package/src/sap/ui/mdc/messagebundle_kk.properties +16 -10
  178. package/src/sap/ui/mdc/messagebundle_ko.properties +9 -3
  179. package/src/sap/ui/mdc/messagebundle_lt.properties +6 -0
  180. package/src/sap/ui/mdc/messagebundle_lv.properties +6 -0
  181. package/src/sap/ui/mdc/messagebundle_ms.properties +9 -3
  182. package/src/sap/ui/mdc/messagebundle_nl.properties +7 -1
  183. package/src/sap/ui/mdc/messagebundle_no.properties +6 -0
  184. package/src/sap/ui/mdc/messagebundle_pl.properties +8 -2
  185. package/src/sap/ui/mdc/messagebundle_pt.properties +6 -0
  186. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +6 -0
  187. package/src/sap/ui/mdc/messagebundle_ro.properties +6 -0
  188. package/src/sap/ui/mdc/messagebundle_ru.properties +6 -0
  189. package/src/sap/ui/mdc/messagebundle_sh.properties +6 -0
  190. package/src/sap/ui/mdc/messagebundle_sk.properties +8 -2
  191. package/src/sap/ui/mdc/messagebundle_sl.properties +6 -0
  192. package/src/sap/ui/mdc/messagebundle_sv.properties +6 -0
  193. package/src/sap/ui/mdc/messagebundle_th.properties +19 -13
  194. package/src/sap/ui/mdc/messagebundle_tr.properties +6 -0
  195. package/src/sap/ui/mdc/messagebundle_uk.properties +7 -1
  196. package/src/sap/ui/mdc/messagebundle_vi.properties +6 -0
  197. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +7 -1
  198. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +6 -0
  199. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  200. package/src/sap/ui/mdc/mixin/DelegateMixin.js +33 -14
  201. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +3 -5
  202. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  203. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +1 -1
  204. package/src/sap/ui/mdc/odata/TypeMap.js +155 -0
  205. package/src/sap/ui/mdc/odata/TypeUtil.js +42 -1
  206. package/src/sap/ui/mdc/odata/v4/ChartDelegate.js +17 -11
  207. package/src/sap/ui/mdc/odata/v4/FieldBaseDelegate.js +5 -50
  208. package/src/sap/ui/mdc/odata/v4/ODataMetaModelUtil.js +1 -1
  209. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +156 -44
  210. package/src/sap/ui/mdc/odata/v4/TypeMap.js +70 -0
  211. package/src/sap/ui/mdc/odata/v4/TypeUtil.js +2 -1
  212. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +8 -9
  213. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegate.js +380 -390
  214. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  215. package/src/sap/ui/mdc/p13n/StateUtil.js +6 -19
  216. package/src/sap/ui/mdc/p13n/UIManager.js +1 -1
  217. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +43 -34
  218. package/src/sap/ui/mdc/p13n/panels/FilterPanel.js +3 -4
  219. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +1 -1
  220. package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +4 -6
  221. package/src/sap/ui/mdc/table/Column.js +45 -17
  222. package/src/sap/ui/mdc/table/ColumnSettings.js +2 -5
  223. package/src/sap/ui/mdc/table/CreationRow.js +4 -6
  224. package/src/sap/ui/mdc/table/GridTableType.js +31 -115
  225. package/src/sap/ui/mdc/table/PropertyHelper.js +56 -11
  226. package/src/sap/ui/mdc/table/ResponsiveColumnSettings.js +2 -5
  227. package/src/sap/ui/mdc/table/ResponsiveTableType.js +13 -84
  228. package/src/sap/ui/mdc/table/RowActionItem.js +9 -14
  229. package/src/sap/ui/mdc/table/RowSettings.js +2 -5
  230. package/src/sap/ui/mdc/table/TableSettings.js +23 -19
  231. package/src/sap/ui/mdc/table/TableTypeBase.js +43 -15
  232. package/src/sap/ui/mdc/table/TreeTableType.js +12 -32
  233. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +2 -5
  234. package/src/sap/ui/mdc/table/menu/Item.js +1 -1
  235. package/src/sap/ui/mdc/table/menu/QuickActionContainer.js +3 -3
  236. package/src/sap/ui/mdc/table/utils/Personalization.js +4 -4
  237. package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +6 -6
  238. package/src/sap/ui/mdc/util/DateUtil.js +15 -11
  239. package/src/sap/ui/mdc/util/FilterUtil.js +44 -19
  240. package/src/sap/ui/mdc/util/IdentifierUtil.js +0 -1
  241. package/src/sap/ui/mdc/util/InfoBar.js +1 -2
  242. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  243. package/src/sap/ui/mdc/util/PropertyHelper.js +15 -8
  244. package/src/sap/ui/mdc/util/TypeMap.js +377 -0
  245. package/src/sap/ui/mdc/util/TypeUtil.js +35 -2
  246. package/src/sap/ui/mdc/util/mapVersions.js +225 -0
  247. package/src/sap/ui/mdc/valuehelp/Dialog.js +52 -33
  248. package/src/sap/ui/mdc/valuehelp/Popover.js +33 -35
  249. package/src/sap/ui/mdc/valuehelp/base/Container.js +193 -62
  250. package/src/sap/ui/mdc/valuehelp/base/Content.js +134 -57
  251. package/src/sap/ui/mdc/{field → valuehelp/base}/DefineConditionPanel.js +426 -197
  252. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +2 -2
  253. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +140 -47
  254. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +11 -9
  255. package/src/sap/ui/mdc/valuehelp/content/Bool.js +11 -20
  256. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +26 -32
  257. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +14 -17
  258. package/src/sap/ui/mdc/valuehelp/content/FixedListItem.js +60 -0
  259. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +194 -199
  260. package/src/sap/ui/mdc/valuehelp/content/MTable.js +48 -51
  261. package/test/sap/ui/mdc/testutils/opa/chart/AssertionsViz.js +4 -4
  262. package/test/sap/ui/mdc/testutils/opa/field/Actions.js +1 -1
  263. package/test/sap/ui/mdc/testutils/opa/field/Assertions.js +3 -3
  264. package/test/sap/ui/mdc/testutils/opa/filterfield/Actions.js +4 -2
  265. package/test/sap/ui/mdc/testutils/opa/filterfield/Assertions.js +1 -1
  266. package/test/sap/ui/mdc/testutils/opa/table/Actions.js +41 -70
  267. package/test/sap/ui/mdc/testutils/opa/valueHelp/doWait.js +1 -1
  268. package/src/sap/ui/mdc/designtime/p13n/PersistenceProvider.designtime.js +0 -21
  269. package/src/sap/ui/mdc/util/FormatUtil.js +0 -82
@@ -11,9 +11,9 @@
11
11
  // ---------------------------------------------------------------------------------------
12
12
  // ---------------------------------------------------------------------------------------
13
13
  sap.ui.define([
14
- "sap/m/OverflowToolbarButton", "sap/m/library", "sap/m/OverflowToolbarMenuButton", "sap/ui/core/library", "sap/ui/Device", "sap/ui/core/ShortcutHintsMixin", "sap/ui/core/theming/Parameters"
14
+ "sap/m/OverflowToolbarButton", "sap/m/library", "sap/m/OverflowToolbarMenuButton", "sap/m/Menu", "sap/m/MenuItem", "sap/ui/core/library", "sap/ui/Device", "sap/ui/core/ShortcutHintsMixin", "sap/ui/core/theming/Parameters", "sap/ui/performance/trace/FESRHelper"
15
15
 
16
- ], function(OverflowToolbarButton, MLibrary, OverflowToolbarMenuButton, CoreLibrary, Device, ShortcutHintsMixin, ThemeParameters) {
16
+ ], function(OverflowToolbarButton, MLibrary, OverflowToolbarMenuButton, Menu, MenuItem, CoreLibrary, Device, ShortcutHintsMixin, ThemeParameters, FESRHelper) {
17
17
  "use strict";
18
18
 
19
19
  var HasPopup = CoreLibrary.aria.HasPopup;
@@ -44,6 +44,7 @@ sap.ui.define([
44
44
  ariaHasPopup: HasPopup.Dialog
45
45
  });
46
46
 
47
+ FESRHelper.setSemanticStepname(oBtn, "press", "mdc:tbl:p13n");
47
48
 
48
49
  ShortcutHintsMixin.addConfig(oBtn, {
49
50
  addAccessibilityLabel: true,
@@ -57,6 +58,8 @@ sap.ui.define([
57
58
  createPasteButton: function (sIdPrefix) {
58
59
  var oPasteButton = this._createButton(sIdPrefix + "-paste");
59
60
 
61
+ FESRHelper.setSemanticStepname(oPasteButton, "press", "mdc:tbl:paste");
62
+
60
63
  sap.ui.require(["sap/m/plugins/PasteProvider"], function(PasteProvider) {
61
64
  oPasteButton.addDependent(new PasteProvider({
62
65
  pasteFor: sIdPrefix + "-innerTable"
@@ -80,24 +83,23 @@ sap.ui.define([
80
83
  defaultAction: mEventInfo.default
81
84
  });
82
85
 
83
- // sap.m.Menu requires modules from the unified Lib - load it properly with preload
84
- sap.ui.getCore().loadLibrary("sap.ui.unified", {async: true}).then(function() {
85
- sap.ui.require(["sap/m/Menu", "sap/m/MenuItem"], function(Menu, MenuItem) {
86
- var oMenu = new Menu({
87
- items: [
88
- new MenuItem({
89
- text: oRb.getText("table.QUICK_EXPORT"),
90
- press: mEventInfo.default
91
- }),
92
- new MenuItem({
93
- text: oRb.getText("table.EXPORT_WITH_SETTINGS"),
94
- press: mEventInfo.exportAs
95
- })
96
- ]
97
- });
98
- oMenuButton.setMenu(oMenu);
99
- });
86
+ var oMenu = new Menu({
87
+ items: [
88
+ new MenuItem({
89
+ text: oRb.getText("table.QUICK_EXPORT"),
90
+ press: mEventInfo.default
91
+ }),
92
+ new MenuItem({
93
+ text: oRb.getText("table.EXPORT_WITH_SETTINGS"),
94
+ press: mEventInfo.exportAs
95
+ })
96
+ ]
100
97
  });
98
+ oMenuButton.setMenu(oMenu);
99
+
100
+ FESRHelper.setSemanticStepname(oMenuButton, "defaultAction", "OI:QE");
101
+ FESRHelper.setSemanticStepname(oMenu.getItems()[0], "press", "OI:QE");
102
+ FESRHelper.setSemanticStepname(oMenu.getItems()[1], "press", "OI:EXP:SETTINGS");
101
103
 
102
104
  ShortcutHintsMixin.addConfig(oMenuButton._getButtonControl(), {
103
105
  addAccessibilityLabel: true,
@@ -123,6 +125,8 @@ sap.ui.define([
123
125
  tooltip: sText
124
126
  });
125
127
 
128
+ FESRHelper.setSemanticStepname(oButton, "press", "mdc:tbl:" + (bIsExpand ? "expandAll" : "collapseAll"));
129
+
126
130
  return oButton;
127
131
  },
128
132
  _createButton: function(sId, mSettings) {
@@ -5,18 +5,18 @@
5
5
  */
6
6
 
7
7
  sap.ui.define([
8
- "../library",
9
8
  "sap/ui/core/Element",
10
- "sap/ui/core/dnd/DragDropInfo"
9
+ "sap/ui/core/dnd/DragDropInfo",
10
+ "sap/ui/model/base/ManagedObjectModel",
11
+ "sap/ui/mdc/enums/TableP13nMode"
11
12
  ], function(
12
- library,
13
13
  Element,
14
- DragDropInfo
14
+ DragDropInfo,
15
+ ManagedObjectModel,
16
+ TableP13nMode
15
17
  ) {
16
18
  "use strict";
17
19
 
18
- var P13nMode = library.TableP13nMode;
19
-
20
20
  /**
21
21
  * Constructor for a new <code>TableTypeBase</code>.
22
22
  *
@@ -25,11 +25,8 @@ sap.ui.define([
25
25
  * @class The table type info base class for the metadata-driven table. Base class with no implementation.
26
26
  * @extends sap.ui.core.Element
27
27
  * @author SAP SE
28
- * @private
29
- * @ui5-restricted sap.fe
30
- * @MDC_PUBLIC_CANDIDATE
28
+ * @public
31
29
  * @abstract
32
- * @experimental
33
30
  * @since 1.65
34
31
  * @alias sap.ui.mdc.table.TableTypeBase
35
32
  */
@@ -40,8 +37,42 @@ sap.ui.define([
40
37
  }
41
38
  });
42
39
 
40
+ TableTypeBase.prototype.init = function() {
41
+ Element.prototype.init.apply(this, arguments);
42
+ this._oManagedObjectModel = new ManagedObjectModel(this);
43
+ };
44
+
45
+ TableTypeBase.prototype.exit = function() {
46
+ this._disconnectFromTable();
47
+ this._oManagedObjectModel.destroy();
48
+ delete this._oManagedObjectModel;
49
+ Element.prototype.exit.apply(this, arguments);
50
+ };
51
+
52
+ TableTypeBase.prototype.setParent = function() {
53
+ this._disconnectFromTable();
54
+ Element.prototype.setParent.apply(this, arguments);
55
+ this._connectToTable();
56
+ };
57
+
58
+ TableTypeBase.prototype._connectToTable = function() {
59
+ var oTable = this.getTable();
60
+
61
+ if (oTable) {
62
+ oTable.setModel(this._oManagedObjectModel, "$sap.ui.mdc.Table#type");
63
+ }
64
+ };
65
+
66
+ TableTypeBase.prototype._disconnectFromTable = function() {
67
+ var oTable = this.getTable();
68
+
69
+ if (oTable && !oTable.isDestroyStarted()) {
70
+ oTable.setModel(null, "$sap.ui.mdc.Table#type");
71
+ }
72
+ };
73
+
43
74
  TableTypeBase.prototype.getSupportedP13nModes = function() {
44
- return Object.keys(P13nMode);
75
+ return Object.keys(TableP13nMode);
45
76
  };
46
77
 
47
78
  TableTypeBase.prototype.callHook = function(sHookName, oObject, mPropertyBag) {
@@ -89,7 +120,7 @@ sap.ui.define([
89
120
  sourceAggregation: "columns",
90
121
  targetAggregation: "columns",
91
122
  dropPosition: "Between",
92
- enabled: oTable.getActiveP13nModes().includes(P13nMode.Column),
123
+ enabled: oTable.getActiveP13nModes().includes(TableP13nMode.Column),
93
124
  drop: [this._onColumnMove, this]
94
125
  });
95
126
  oDragDropInfo.bIgnoreMetadataCheck = true;
@@ -165,15 +196,12 @@ sap.ui.define([
165
196
  TableTypeBase.prototype.bindRows = function(oBindingInfo) {};
166
197
  TableTypeBase.prototype.isTableBound = function() {};
167
198
  TableTypeBase.prototype.createRowTemplate = function(sId) {};
168
- TableTypeBase.prototype.updateSelectionSettings = function() {};
169
199
  TableTypeBase.prototype.insertFilterInfoBar = function(oFilterInfoBar, sAriaLabelId) {};
170
200
  TableTypeBase.prototype.enableColumnResize = function() {};
171
201
  TableTypeBase.prototype.disableColumnResize = function() {};
172
202
  TableTypeBase.prototype.createColumnResizeMenuItem = function() {};
173
203
  TableTypeBase.prototype.updateRowActions = function() {};
174
204
  TableTypeBase.prototype.updateSortIndicator = function(oColumn, sSortOrder) {};
175
- TableTypeBase.prototype.getSelectedContexts = function() {};
176
- TableTypeBase.prototype.clearSelection = function() {};
177
205
 
178
206
  return TableTypeBase;
179
207
  });
@@ -21,10 +21,7 @@ sap.ui.define([
21
21
  * @class The table type info class for the metadata-driven table.
22
22
  * @extends sap.ui.mdc.table.GridTableType
23
23
  * @author SAP SE
24
- * @private
25
- * @experimental
26
- * @ui5-restricted sap.fe
27
- * @MDC_PUBLIC_CANDIDATE
24
+ * @public
28
25
  * @since 1.109
29
26
  * @alias sap.ui.mdc.table.TreeTableType
30
27
  */
@@ -40,21 +37,18 @@ sap.ui.define([
40
37
  return Promise.resolve();
41
38
  }
42
39
 
43
- return Promise.all([
44
- GridTableType.prototype.loadModules.apply(this, arguments),
45
- this.loadUiTableLibrary().then(function() {
46
- return new Promise(function(resolve, reject) {
47
- sap.ui.require([
48
- "sap/ui/table/TreeTable"
49
- ], function(TreeTable) {
50
- InnerTable = TreeTable;
51
- resolve();
52
- }, function() {
53
- reject("Failed to load some modules");
54
- });
40
+ return GridTableType.prototype.loadModules.apply(this, arguments).then(function() {
41
+ return new Promise(function(resolve, reject) {
42
+ sap.ui.require([
43
+ "sap/ui/table/TreeTable"
44
+ ], function(TreeTable) {
45
+ InnerTable = TreeTable;
46
+ resolve();
47
+ }, function() {
48
+ reject("Failed to load some modules");
55
49
  });
56
- })
57
- ]);
50
+ });
51
+ });
58
52
  };
59
53
 
60
54
  TreeTableType.prototype.createTable = function(sId) {
@@ -71,19 +65,5 @@ sap.ui.define([
71
65
  return oTreeTable;
72
66
  };
73
67
 
74
- TreeTableType.prototype.getTableSettings = function() {
75
- var oTable = this.getTable();
76
- var bSelectionSupported = oTable ? oTable.bDelegateInitialized && oTable.getControlDelegate().getSupportedFeatures(oTable)["selection"] : false;
77
- var mTableSettings = GridTableType.prototype.getTableSettings.apply(this, arguments);
78
-
79
- if (!bSelectionSupported) {
80
- mTableSettings.plugins[0].destroy();
81
- delete mTableSettings.plugins;
82
- mTableSettings.selectionMode = "None";
83
- }
84
-
85
- return mTableSettings;
86
- };
87
-
88
68
  return TreeTableType;
89
69
  });
@@ -62,10 +62,7 @@ sap.ui.define([
62
62
  * @property {string[]} [customAggregate.contextDefiningProperties]
63
63
  * A list of related properties (by name) that are the context-defining properties of the <code>CustomAggregate</code>.
64
64
  *
65
- * @private
66
- * @experimental
67
- * @ui5-restricted sap.fe
68
- * @MDC_PUBLIC_CANDIDATE
65
+ * @public
69
66
  */
70
67
 
71
68
  /**
@@ -80,7 +77,7 @@ sap.ui.define([
80
77
  * @extends sap.ui.mdc.table.PropertyHelper
81
78
  *
82
79
  * @author SAP SE
83
- * @version 1.113.0
80
+ * @version 1.115.0
84
81
  *
85
82
  * @private
86
83
  * @experimental
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
  var oController = oEngine.getController(oTable, sKey);
32
32
 
33
33
  if (sKey === "Filter") {
34
- var aFilterableProperties = oTable.getPropertyHelper().getProperty(oColumn.getDataProperty()).getFilterableProperties();
34
+ var aFilterableProperties = oTable.getPropertyHelper().getProperty(oColumn.getPropertyKey()).getFilterableProperties();
35
35
  var aPropertyNames = aFilterableProperties.map(function(oProperty) {
36
36
  return oProperty.name;
37
37
  });
@@ -53,7 +53,7 @@ sap.ui.define([
53
53
  this.destroyQuickActions(); // TODO: More efficient update would be good
54
54
 
55
55
  if (oTable.isSortingEnabled()) {
56
- var aSortableProperties = oPropertyHelper.getProperty(oColumn.getDataProperty()).getSortableProperties();
56
+ var aSortableProperties = oPropertyHelper.getProperty(oColumn.getPropertyKey()).getSortableProperties();
57
57
  var aSortedProperties = oTable._getSortedProperties();
58
58
 
59
59
  if (aSortableProperties.length > 0) {
@@ -85,7 +85,7 @@ sap.ui.define([
85
85
  }
86
86
 
87
87
  if (oTable.isGroupingEnabled()) {
88
- var aGroupableProperties = oPropertyHelper.getProperty(oColumn.getDataProperty()).getGroupableProperties();
88
+ var aGroupableProperties = oPropertyHelper.getProperty(oColumn.getPropertyKey()).getGroupableProperties();
89
89
  var aGroupedProperties = oTable._getGroupedProperties();
90
90
 
91
91
  if (aGroupableProperties.length > 0) {
@@ -111,7 +111,7 @@ sap.ui.define([
111
111
  }
112
112
 
113
113
  if (oTable.isAggregationEnabled()) {
114
- var aPropertiesThatCanBeTotaled = oPropertyHelper.getProperty(oColumn.getDataProperty()).getAggregatableProperties().filter(function(oProperty) {
114
+ var aPropertiesThatCanBeTotaled = oPropertyHelper.getProperty(oColumn.getPropertyKey()).getAggregatableProperties().filter(function(oProperty) {
115
115
  return oProperty.extension && oProperty.extension.customAggregate;
116
116
  });
117
117
  var mAggregatedProperties = oTable._getAggregatedProperties();
@@ -15,7 +15,7 @@ sap.ui.define([
15
15
  * P13n utilities.
16
16
  *
17
17
  * @author SAP SE
18
- * @version 1.113.0
18
+ * @version 1.115.0
19
19
  * @namespace
20
20
  * @alias sap.ui.mdc.table.utils.Personalization
21
21
  * @private
@@ -154,7 +154,7 @@ sap.ui.define([
154
154
  * @param {sap.ui.mdc.Table} oTable The table for which to create the change.
155
155
  * @param {object} mSettings The change details.
156
156
  * @param {Array} mSettings.conditions The filter conditions that should be applied to the table.
157
- * @param {sap.ui.mdc.enum.ProcessingStrategy|boolean} mSettings.strategy The processing strategy on how to apply the change.
157
+ * @param {sap.ui.mdc.enums.ProcessingStrategy|boolean} mSettings.strategy The processing strategy on how to apply the change.
158
158
  */
159
159
  PersonalizationUtils.createFilterChange = function(oTable, mSettings) {
160
160
  oTable.getEngine().createChanges({
@@ -200,7 +200,7 @@ sap.ui.define([
200
200
  control: oTable,
201
201
  key: "ColumnWidth",
202
202
  state: [{
203
- name: mSettings.column.getDataProperty(),
203
+ name: mSettings.column.getPropertyKey(),
204
204
  width: mSettings.width
205
205
  }],
206
206
  applyAbsolute: false
@@ -226,7 +226,7 @@ sap.ui.define([
226
226
  control: oTable,
227
227
  key: "Column",
228
228
  state: [{
229
- name: mSettings.column.getDataProperty(),
229
+ name: mSettings.column.getPropertyKey(),
230
230
  position: mSettings.index
231
231
  }]
232
232
  });
@@ -39,8 +39,13 @@
39
39
  }
40
40
 
41
41
  // make the toolbar height 3rem and add 2rem padding left/right
42
- .sapMdcValueHelpPanel .sapMTB {
42
+ .sapMdcValueHelpPanel .sapMdcValueHelpPanelFilterbar .sapMTB {
43
+ margin-top: 0.5rem;
43
44
  height: 3rem;
45
+ }
46
+
47
+ .sapMdcValueHelpPanel .sapMdcValueHelpPanelFilterbar .sapMTB,
48
+ .sapMdcValueHelpPanel .sapUiMdcTable .sapMTB {
44
49
  padding-left: 0;
45
50
  padding-right: 1rem;
46
51
  }
@@ -108,7 +113,6 @@
108
113
 
109
114
  // hide the toolbar border and give some more top margin
110
115
  .sapMdcValueHelpPanel .sapMTBStandard {
111
- margin-top: 0.5rem;
112
116
  border-bottom: solid 1px transparent;
113
117
  }
114
118
 
@@ -161,10 +165,6 @@
161
165
  height: 100%;
162
166
  }
163
167
 
164
- .sapMdcValueHelpPanelTableBox .sapUiMdcTable .sapMTBStandard {
165
- margin-top: 0;
166
- }
167
-
168
168
  .sapMdcValueHelpPanel .sapUiFixFlexScrolling .sapMdcValueHelpPanelTableBox {
169
169
  height: 200px !important;
170
170
  }
@@ -6,7 +6,7 @@
6
6
  sap.ui.define([
7
7
  'sap/ui/core/library',
8
8
  'sap/ui/core/date/UI5Date',
9
- 'sap/ui/mdc/enum/BaseType',
9
+ 'sap/ui/mdc/enums/BaseType',
10
10
  'sap/base/util/merge'
11
11
  ],
12
12
  function(
@@ -125,7 +125,7 @@ sap.ui.define([
125
125
  *
126
126
  * @param {any} vDate Date
127
127
  * @param {sap.ui.model.SimpleType} oType Data type
128
- * @param {sap.ui.mdc.enum.BaseType} [sBaseType] Basic type
128
+ * @param {sap.ui.mdc.enums.BaseType} [sBaseType] Basic type
129
129
  * @return {string} Date as ISOString
130
130
  * @private
131
131
  * @ui5-restricted sap.ui.mdc
@@ -135,9 +135,9 @@ sap.ui.define([
135
135
 
136
136
  var oDate = this.typeToDate(vDate, oType, sBaseType);
137
137
 
138
- // if (oType.getFormatOptions().UTC) { // in UTC date we need to bring the local date to UTC
139
- // oDate = UI5Date.getInstance(Date.UTC(oDate.getFullYear(), oDate.getMonth(), oDate.getDate(), oDate.getHours(), oDate.getMinutes(), oDate.getSeconds(), oDate.getMilliseconds()));
140
- // }
138
+ if (oType.getFormatOptions().UTC) { // in UTC date we need to bring the local date to UTC
139
+ oDate = UI5Date.getInstance(Date.UTC(oDate.getFullYear(), oDate.getMonth(), oDate.getDate(), oDate.getHours(), oDate.getMinutes(), oDate.getSeconds(), oDate.getMilliseconds()));
140
+ }
141
141
 
142
142
  return oDate.toISOString();
143
143
 
@@ -148,7 +148,7 @@ sap.ui.define([
148
148
  *
149
149
  * @param {string} sISODate Date
150
150
  * @param {sap.ui.model.SimpleType} oType Data type
151
- * @param {sap.ui.mdc.enum.BaseType} [sBaseType] Basic type
151
+ * @param {sap.ui.mdc.enums.BaseType} [sBaseType] Basic type
152
152
  * @return {any} Date for type
153
153
  * @private
154
154
  * @ui5-restricted sap.ui.mdc
@@ -173,7 +173,7 @@ sap.ui.define([
173
173
  *
174
174
  * @param {Date} oDate the date to convert
175
175
  * @param {sap.ui.model.SimpleType} oType Data type
176
- * @param {sap.ui.mdc.enum.BaseType} [sBaseType] Basic type
176
+ * @param {sap.ui.mdc.enums.BaseType} [sBaseType] Basic type
177
177
  * @returns {any} date in type representation
178
178
  * @private
179
179
  */
@@ -182,6 +182,8 @@ sap.ui.define([
182
182
 
183
183
  if (oType.getModelValue) {
184
184
  vDate = oType.getModelValue(oDate);
185
+ } else if (oType.isA("sap.ui.model.type.DateTime") && oType.getFormatOptions().UTC) { // old DateTime don't support UTC on ModelFormat
186
+ vDate = UI5Date.getInstance(Date.UTC(oDate.getFullYear(), oDate.getMonth(), oDate.getDate(), oDate.getHours(), oDate.getMinutes(), oDate.getSeconds(), oDate.getMilliseconds()));
185
187
  } else { // older types don't support the new getModelValue
186
188
  var oModelFormat = oType.getModelFormat();
187
189
  var oFormatOptions = oType.getFormatOptions();
@@ -199,16 +201,18 @@ sap.ui.define([
199
201
  *
200
202
  * @param {any} vDate date in type representation
201
203
  * @param {sap.ui.model.SimpleType} oType Data type
202
- * @param {sap.ui.mdc.enum.BaseType} [sBaseType] Basic type
204
+ * @param {sap.ui.mdc.enums.BaseType} [sBaseType] Basic type
203
205
  * @returns {Date} JSDate (local)
204
206
  * @private
205
207
  */
206
208
  typeToDate: function(vDate, oType, sBaseType) {
207
209
  var oDate;
208
210
 
209
- if (oType.isA("sap.ui.model.odata.type.DateTime") && oType.getConstraints().displayFormat === "Date") { // TODO: need some type-function to convert
210
- oDate = UI5Date.getInstance(vDate.getUTCFullYear(), vDate.getUTCMonth(), vDate.getUTCDate());
211
- } else {
211
+ if (oType.getDateValue) {
212
+ oDate = oType.getDateValue(vDate);
213
+ } else if (oType.isA("sap.ui.model.type.DateTime") && oType.getFormatOptions().UTC) { // old DateTime don't support UTC on ModelFormat
214
+ oDate = UI5Date.getInstance(vDate.getUTCFullYear(), vDate.getUTCMonth(), vDate.getUTCDate(), vDate.getUTCHours(), vDate.getUTCMinutes(), vDate.getUTCSeconds(), vDate.getUTCMilliseconds());
215
+ } else { // older types don't support the new getDateValue
212
216
  var oModelFormat = oType.getModelFormat();
213
217
  var oFormatOptions = oType.getFormatOptions();
214
218
  var bUTC = sBaseType === BaseType.DateTime ? !!oFormatOptions.UTC : false;
@@ -7,16 +7,30 @@
7
7
  // ------------------------------------------------------------------------------------------
8
8
  // Utility class used mdc table and chart
9
9
  // ------------------------------------------------------------------------------------------
10
- sap.ui.define(['sap/ui/mdc/util/IdentifierUtil', 'sap/ui/mdc/enum/ConditionValidated', "sap/ui/mdc/condition/ConditionConverter", 'sap/ui/mdc/condition/FilterConverter', 'sap/base/Log', 'sap/base/util/merge'],
10
+ sap.ui.define(['sap/ui/mdc/util/IdentifierUtil', 'sap/ui/mdc/enums/ConditionValidated', "sap/ui/mdc/condition/ConditionConverter", 'sap/ui/mdc/condition/FilterConverter', 'sap/base/Log', 'sap/base/util/merge'],
11
11
  function(IdentifierUtil, ConditionValidated, ConditionConverter, FilterConverter, Log, merge) {
12
12
  "use strict";
13
13
 
14
+ // Added support for deprecated TypeUtil
15
+ var _getTypeMap = function (vTypeProvider) {
16
+
17
+ if (vTypeProvider && vTypeProvider.getTypeMap) {
18
+ return vTypeProvider.getTypeMap();
19
+ }
20
+
21
+ if (vTypeProvider && vTypeProvider.getTypeUtil) {
22
+ return vTypeProvider.getTypeUtil();
23
+ }
24
+
25
+ return vTypeProvider;
26
+ };
27
+
14
28
  /**
15
29
  * Utility class used by mdc controls to create the filter statement
16
30
  *
17
31
  * @namespace
18
32
  * @private
19
- * @ui5-restricted sap.ui.mdc, sap.fe
33
+ * @ui5-restricted sap.fe
20
34
  * @since 1.80.0
21
35
  * @alias sap.ui.mdc.util.FilterUtil
22
36
  */
@@ -28,8 +42,7 @@ sap.ui.define(['sap/ui/mdc/util/IdentifierUtil', 'sap/ui/mdc/enum/ConditionValid
28
42
  * @param {array} aPropertiesMetadata - array with all the property metadata
29
43
  * @param {string} sKey - name of the property
30
44
  * @returns {object} PropertyInfo object for a given name, or <code>null</code>
31
- * @private
32
- * @ui5-restricted sap.ui.mdc, sap.fe
45
+ * @public
33
46
  */
34
47
  getPropertyByKey : function(aPropertiesMetadata, sKey) {
35
48
  var oPropertyInfo = null;
@@ -67,9 +80,7 @@ sap.ui.define(['sap/ui/mdc/util/IdentifierUtil', 'sap/ui/mdc/enum/ConditionValid
67
80
  * @returns {array} mResultingConditions.["propertyName"] conditions addressed by the property name
68
81
  * @returns {string} mResultingConditions.["propertyName"].operator operator for a single condition
69
82
  * @returns {array} mResultingConditions.["propertyName"].values values for a single condition
70
- * @private
71
- * @ui5-restricted sap.ui.mdc, sap.fe
72
- * @MDC_PUBLIC_CANDIDATE
83
+ * @public
73
84
  */
74
85
  getConditionsMap : function(oFilterBar, aPropertyNames) {
75
86
  var aPropertyConditions, oPropertyCondition, mResultingConditions = {};
@@ -108,17 +119,33 @@ sap.ui.define(['sap/ui/mdc/util/IdentifierUtil', 'sap/ui/mdc/enum/ConditionValid
108
119
  /**
109
120
  * Creates the filter statements based on the externalize conditions.<br>
110
121
  *
111
- * @param {sap.ui.mdc.Control|sap.ui.mdc.util.TypeUtil} vTypeProvider the MDC control instance or TypeUtil
112
- * @param {map} mConditions - map with externalized conditions
122
+ * @param {sap.ui.mdc.Control|sap.ui.mdc.util.TypeMap} vTypeProvider the MDC control instance or <code>TypeMap</code>
123
+ * @param {map} mConditionsPerKey - map with externalized conditions
113
124
  * @param {array} aPropertiesMetadata - array with all the property metadata
114
125
  * @param {array} aIgnoreProperties - an array of property names which should be not considered for filtering
115
126
  * @returns {object} Object with filters
116
- * @private
117
- * @ui5-restricted sap.ui.mdc
127
+ * @public
118
128
  */
119
- getFilterInfo: function(vTypeProvider, mConditions, aPropertiesMetadata, aIgnoreProperties) {
129
+ getFilterInfo: function(vTypeProvider, mConditionsPerKey, aPropertiesMetadata, aIgnoreProperties) {
120
130
 
121
131
  var oFilterInfo = {};
132
+ var mConditionsPerPath = {};
133
+
134
+ /* In case a Table is used for example, the condition key is not necessarily a valid property path in the model
135
+ * the later creation of filters in the FilterConverter is expecting the map to hold the valid paths to properties in the
136
+ * used model, therefore we need to ensure to properly map the keys to its path to create service understandable filters
137
+ */
138
+ if (aPropertiesMetadata && aPropertiesMetadata.length > 0) {
139
+ Object.keys(mConditionsPerKey).forEach(function(sConditionKey){
140
+ var oAffectedProperty = aPropertiesMetadata.find(function(oProperty){
141
+ return oProperty.name === sConditionKey;
142
+ });
143
+ var sConditionPath = oAffectedProperty && oAffectedProperty.path ? oAffectedProperty.path : sConditionKey;
144
+ mConditionsPerPath[sConditionPath] = mConditionsPerKey[sConditionKey];
145
+ });
146
+ } else {
147
+ mConditionsPerPath = mConditionsPerKey;
148
+ }
122
149
 
123
150
  aIgnoreProperties = aIgnoreProperties ? aIgnoreProperties : [];
124
151
 
@@ -126,7 +153,7 @@ sap.ui.define(['sap/ui/mdc/util/IdentifierUtil', 'sap/ui/mdc/enum/ConditionValid
126
153
  var mFilterTypes = {};
127
154
 
128
155
  if (aPropertiesMetadata && aPropertiesMetadata.length > 0) {
129
- for (sFieldPath in mConditions) {
156
+ for (sFieldPath in mConditionsPerPath) {
130
157
  if (aIgnoreProperties.indexOf(sFieldPath) < 0) {
131
158
 
132
159
  var oProperty = FilterUtil.getPropertyByKey(aPropertiesMetadata, sFieldPath);
@@ -136,9 +163,9 @@ sap.ui.define(['sap/ui/mdc/util/IdentifierUtil', 'sap/ui/mdc/enum/ConditionValid
136
163
  mInternalFilterConditions[sFieldPath] = [];
137
164
 
138
165
  //convert from externalized to model-specific value representation
139
- for (i = 0; i < mConditions[sFieldPath].length; i++) {
140
- oConditionInternal = merge({}, mConditions[sFieldPath][i]);
141
- mInternalFilterConditions[sFieldPath].push(ConditionConverter.toType(oConditionInternal, oProperty.typeConfig.typeInstance, vTypeProvider.getTypeUtil ? vTypeProvider.getTypeUtil() : vTypeProvider));
166
+ for (i = 0; i < mConditionsPerPath[sFieldPath].length; i++) {
167
+ oConditionInternal = merge({}, mConditionsPerPath[sFieldPath][i]);
168
+ mInternalFilterConditions[sFieldPath].push(ConditionConverter.toType(oConditionInternal, oProperty.typeConfig.typeInstance, _getTypeMap(vTypeProvider)));
142
169
  }
143
170
 
144
171
  } else {
@@ -162,9 +189,7 @@ sap.ui.define(['sap/ui/mdc/util/IdentifierUtil', 'sap/ui/mdc/enum/ConditionValid
162
189
  * @param {sap.ui.mdc.FilterBar} oFilterBar Instance of the filter bar
163
190
  * @returns {string[]} Array containing the required field names without a value
164
191
  * If there are no such fields, or all required filters are filled, an empty array is returned.
165
- * @private
166
- * @ui5-restricted sap.ui.mdc, sap.fe
167
- * @MDC_PUBLIC_CANDIDATE
192
+ * @public
168
193
  */
169
194
  getRequiredFieldNamesWithoutValues: function(oFilterBar) {
170
195
  var aReqFiltersWithoutValue = [];
@@ -15,7 +15,6 @@ sap.ui.define(['sap/ui/base/DataType'], function(DataType) {
15
15
  *
16
16
  * @namespace
17
17
  * @private
18
- * @experimental This module is only for internal/experimental use!
19
18
  * @since 1.61.0
20
19
  * @alias sap.ui.mdc.util.IdentifierUtil
21
20
  */
@@ -23,12 +23,11 @@ sap.ui.define([
23
23
  * @class The <code>InfoBar</code> control provides an easy way of displaying filter information inside an <code>sap.ui.mdc.Chart</code> and an <code>sap.ui.mdc.Table</code>.
24
24
  * @extends sap.ui.core.Control
25
25
  * @author SAP SE
26
- * @version 1.113.0
26
+ * @version 1.115.0
27
27
  * @constructor
28
28
  * @experimental As of version 1.111
29
29
  * @private
30
30
  * @ui5-restricted sap.ui.mdc
31
- * @MDC_PUBLIC_CANDIDATE
32
31
  * @since 1.111.0
33
32
  * @alias sap.ui.mdc.util.InfoBar
34
33
  */
@@ -45,7 +45,7 @@ sap.ui.define(
45
45
  * Destroying the cache will cancel all registered promises and delete references. Convenience methods for promise creation, wrapping and replacement are offered.
46
46
  *
47
47
  * @author SAP SE
48
- * @version 1.113.0
48
+ * @version 1.115.0
49
49
  * @alias sap.ui.mdc.util.PromiseCache
50
50
  * @since 1.85.0
51
51
  * @private