@openui5/sap.ui.mdc 1.97.1 → 1.100.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 (296) hide show
  1. package/.reuse/dep5 +25 -30
  2. package/THIRDPARTY.txt +15 -22
  3. package/package.json +4 -4
  4. package/src/sap/ui/mdc/.library +1 -1
  5. package/src/sap/ui/mdc/ActionToolbar.js +6 -3
  6. package/src/sap/ui/mdc/AggregationBaseDelegate.js +2 -2
  7. package/src/sap/ui/mdc/BaseDelegate.js +1 -1
  8. package/src/sap/ui/mdc/Chart.js +1128 -1806
  9. package/src/sap/ui/mdc/ChartDelegate.js +454 -250
  10. package/src/sap/ui/mdc/ChartRenderer.js +73 -77
  11. package/src/sap/ui/mdc/Control.js +11 -6
  12. package/src/sap/ui/mdc/Element.js +10 -6
  13. package/src/sap/ui/mdc/Field.js +19 -4
  14. package/src/sap/ui/mdc/FilterBar.js +3 -2
  15. package/src/sap/ui/mdc/FilterBarDelegate.js +26 -0
  16. package/src/sap/ui/mdc/FilterField.js +50 -9
  17. package/src/sap/ui/mdc/Link.js +25 -6
  18. package/src/sap/ui/mdc/LinkDelegate.js +3 -3
  19. package/src/sap/ui/mdc/MultiValueField.js +30 -6
  20. package/src/sap/ui/mdc/Table.js +151 -102
  21. package/src/sap/ui/mdc/TableDelegate.js +68 -13
  22. package/src/sap/ui/mdc/ValueHelp.js +26 -11
  23. package/src/sap/ui/mdc/ValueHelpDelegate.js +2 -1
  24. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +2 -2
  25. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer.js +1 -1
  26. package/src/sap/ui/mdc/{chartNew/ChartSelectionDetailsNew.js → chart/ChartSelectionDetails.js} +8 -8
  27. package/src/sap/ui/mdc/{chartNew/ChartToolbarNew.js → chart/ChartToolbar.js} +60 -17
  28. package/src/sap/ui/mdc/chart/ChartTypeButton.js +55 -54
  29. package/src/sap/ui/mdc/{chartNew/DrillBreadcrumbsNew.js → chart/DrillBreadcrumbs.js} +10 -10
  30. package/src/sap/ui/mdc/chart/DrillStackHandler.js +43 -254
  31. package/src/sap/ui/mdc/chart/Item.js +62 -92
  32. package/src/sap/ui/mdc/{chartNew/PropertyHelperNew.js → chart/PropertyHelper.js} +3 -3
  33. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +17 -21
  34. package/src/sap/ui/mdc/condition/Condition.js +1 -1
  35. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  36. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  37. package/src/sap/ui/mdc/condition/FilterConverter.js +4 -2
  38. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +388 -67
  39. package/src/sap/ui/mdc/condition/Operator.js +4 -2
  40. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +78 -24
  41. package/src/sap/ui/mdc/condition/RangeOperator.js +5 -5
  42. package/src/sap/ui/mdc/designtime/Util.js +63 -0
  43. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +23 -30
  44. package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +83 -5
  45. package/src/sap/ui/mdc/designtime/field/Field.designtime.js +81 -5
  46. package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +3 -0
  47. package/src/sap/ui/mdc/designtime/link/PanelItem.designtime.js +3 -1
  48. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +35 -8
  49. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  50. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  51. package/src/sap/ui/mdc/field/ConditionType.js +17 -6
  52. package/src/sap/ui/mdc/field/ConditionsType.js +2 -1
  53. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
  54. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  55. package/src/sap/ui/mdc/field/DefineConditionPanel.js +88 -29
  56. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +77 -20
  57. package/src/sap/ui/mdc/field/FieldBase.js +93 -16
  58. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +1 -1
  59. package/src/sap/ui/mdc/field/FieldBaseRenderer.js +0 -3
  60. package/src/sap/ui/mdc/field/FieldHelpBase.js +2 -2
  61. package/src/sap/ui/mdc/field/FieldInfoBase.js +24 -10
  62. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  63. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  64. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  65. package/src/sap/ui/mdc/field/FieldValueHelp.js +5 -2
  66. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  67. package/src/sap/ui/mdc/field/FieldValueHelpDelegate.js +1 -1
  68. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +5 -4
  69. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +6 -4
  70. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +6 -3
  71. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +7 -7
  72. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  73. package/src/sap/ui/mdc/field/ListFieldHelp.js +10 -2
  74. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  75. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  76. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  77. package/src/sap/ui/mdc/field/TokenDisplay.js +70 -0
  78. package/src/sap/ui/mdc/field/TokenDisplayRenderer.js +24 -0
  79. package/src/sap/ui/mdc/field/TokenizerDisplay.js +80 -0
  80. package/src/sap/ui/mdc/field/TokenizerDisplayRenderer.js +69 -0
  81. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
  82. package/src/sap/ui/mdc/field/content/ContentFactory.js +10 -6
  83. package/src/sap/ui/mdc/field/content/DateContent.js +27 -19
  84. package/src/sap/ui/mdc/field/content/DateTimeContent.js +0 -6
  85. package/src/sap/ui/mdc/field/content/DefaultContent.js +35 -13
  86. package/src/sap/ui/mdc/field/content/LinkContent.js +1 -1
  87. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +285 -208
  88. package/src/sap/ui/mdc/filterbar/FilterBarBaseRenderer.js +1 -1
  89. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +27 -2
  90. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +132 -56
  91. package/src/sap/ui/mdc/filterbar/p13n/FilterColumnLayout.js +2 -2
  92. package/src/sap/ui/mdc/filterbar/p13n/GroupContainer.js +7 -3
  93. package/src/sap/ui/mdc/filterbar/p13n/TableContainer.js +52 -14
  94. package/src/sap/ui/mdc/filterbar/vh/CollectiveSearchSelect.js +3 -1
  95. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +43 -19
  96. package/src/sap/ui/mdc/filterbar/vh/FilterContainer.js +1 -1
  97. package/src/sap/ui/mdc/flexibility/AggregateFlex.js +2 -2
  98. package/src/sap/ui/mdc/flexibility/AggregationConfigFlex.js +48 -31
  99. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +6 -4
  100. package/src/sap/ui/mdc/flexibility/ChartItemFlex.js +36 -0
  101. package/src/sap/ui/mdc/flexibility/ColumnFlex.js +1 -1
  102. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +47 -10
  103. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +4 -3
  104. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  105. package/src/sap/ui/mdc/flexibility/GroupFlex.js +1 -1
  106. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +0 -1
  107. package/src/sap/ui/mdc/flexibility/Panel.flexibility.js +9 -3
  108. package/src/sap/ui/mdc/flexibility/PropertyInfoFlex.js +27 -0
  109. package/src/sap/ui/mdc/flexibility/SortFlex.js +2 -2
  110. package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +6 -6
  111. package/src/sap/ui/mdc/library.js +54 -44
  112. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  113. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  114. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  115. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  116. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  117. package/src/sap/ui/mdc/link/Factory.js +2 -2
  118. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  119. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  120. package/src/sap/ui/mdc/link/Log.js +1 -1
  121. package/src/sap/ui/mdc/link/Panel.js +140 -177
  122. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  123. package/src/sap/ui/mdc/link/PanelListItem.js +1 -1
  124. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  125. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  126. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  127. package/src/sap/ui/mdc/messagebundle.properties +57 -2
  128. package/src/sap/ui/mdc/messagebundle_ar.properties +39 -4
  129. package/src/sap/ui/mdc/messagebundle_bg.properties +54 -19
  130. package/src/sap/ui/mdc/messagebundle_ca.properties +37 -2
  131. package/src/sap/ui/mdc/messagebundle_cs.properties +52 -17
  132. package/src/sap/ui/mdc/messagebundle_cy.properties +37 -2
  133. package/src/sap/ui/mdc/messagebundle_da.properties +44 -9
  134. package/src/sap/ui/mdc/messagebundle_de.properties +37 -2
  135. package/src/sap/ui/mdc/messagebundle_el.properties +38 -3
  136. package/src/sap/ui/mdc/messagebundle_en.properties +37 -2
  137. package/src/sap/ui/mdc/messagebundle_en_GB.properties +37 -2
  138. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +37 -2
  139. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +61 -4
  140. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +37 -2
  141. package/src/sap/ui/mdc/messagebundle_es.properties +37 -2
  142. package/src/sap/ui/mdc/messagebundle_es_MX.properties +51 -16
  143. package/src/sap/ui/mdc/messagebundle_et.properties +37 -2
  144. package/src/sap/ui/mdc/messagebundle_fi.properties +43 -8
  145. package/src/sap/ui/mdc/messagebundle_fr.properties +38 -3
  146. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +37 -2
  147. package/src/sap/ui/mdc/messagebundle_hi.properties +38 -3
  148. package/src/sap/ui/mdc/messagebundle_hr.properties +37 -2
  149. package/src/sap/ui/mdc/messagebundle_hu.properties +37 -2
  150. package/src/sap/ui/mdc/messagebundle_id.properties +37 -2
  151. package/src/sap/ui/mdc/messagebundle_it.properties +53 -18
  152. package/src/sap/ui/mdc/messagebundle_iw.properties +38 -3
  153. package/src/sap/ui/mdc/messagebundle_ja.properties +37 -2
  154. package/src/sap/ui/mdc/messagebundle_kk.properties +37 -2
  155. package/src/sap/ui/mdc/messagebundle_ko.properties +41 -6
  156. package/src/sap/ui/mdc/messagebundle_lt.properties +37 -2
  157. package/src/sap/ui/mdc/messagebundle_lv.properties +41 -6
  158. package/src/sap/ui/mdc/messagebundle_ms.properties +37 -2
  159. package/src/sap/ui/mdc/messagebundle_nl.properties +42 -7
  160. package/src/sap/ui/mdc/messagebundle_no.properties +45 -10
  161. package/src/sap/ui/mdc/messagebundle_pl.properties +38 -3
  162. package/src/sap/ui/mdc/messagebundle_pt.properties +44 -9
  163. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +37 -2
  164. package/src/sap/ui/mdc/messagebundle_ro.properties +37 -2
  165. package/src/sap/ui/mdc/messagebundle_ru.properties +37 -2
  166. package/src/sap/ui/mdc/messagebundle_sh.properties +37 -2
  167. package/src/sap/ui/mdc/messagebundle_sk.properties +37 -2
  168. package/src/sap/ui/mdc/messagebundle_sl.properties +37 -2
  169. package/src/sap/ui/mdc/messagebundle_sv.properties +39 -4
  170. package/src/sap/ui/mdc/messagebundle_th.properties +40 -5
  171. package/src/sap/ui/mdc/messagebundle_tr.properties +37 -2
  172. package/src/sap/ui/mdc/messagebundle_uk.properties +41 -6
  173. package/src/sap/ui/mdc/messagebundle_vi.properties +37 -2
  174. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +37 -2
  175. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +37 -2
  176. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +30 -15
  177. package/src/sap/ui/mdc/mixin/DelegateMixin.js +2 -142
  178. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +14 -17
  179. package/src/sap/ui/mdc/mixin/PromiseMixin.js +2 -3
  180. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +348 -0
  181. package/src/sap/ui/mdc/odata/TypeUtil.js +2 -2
  182. package/src/sap/ui/mdc/odata/v4/ChartDelegate.js +29 -483
  183. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelper.js +106 -0
  184. package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +116 -20
  185. package/src/sap/ui/mdc/odata/v4/ODataMetaModelUtil.js +2 -2
  186. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +117 -123
  187. package/src/sap/ui/mdc/odata/v4/TypeUtil.js +3 -5
  188. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +1 -1
  189. package/src/sap/ui/mdc/odata/v4/util/DelegateUtil.js +1 -1
  190. package/src/sap/ui/mdc/odata/v4/vizChart/{ChartDelegateNew.js → ChartDelegate.js} +459 -351
  191. package/src/sap/ui/mdc/p13n/AdaptationProvider.js +1 -1
  192. package/src/sap/ui/mdc/p13n/Engine.js +51 -30
  193. package/src/sap/ui/mdc/p13n/FlexUtil.js +6 -118
  194. package/src/sap/ui/mdc/p13n/P13nBuilder.js +7 -7
  195. package/src/sap/ui/mdc/p13n/PropertyHelper.js +2 -2
  196. package/src/sap/ui/mdc/p13n/StateUtil.js +24 -6
  197. package/src/sap/ui/mdc/p13n/UIManager.js +20 -19
  198. package/src/sap/ui/mdc/p13n/modification/FlexModificationHandler.js +4 -1
  199. package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +19 -12
  200. package/src/sap/ui/mdc/p13n/modules/DefaultProviderRegistry.js +1 -1
  201. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +6 -6
  202. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +49 -27
  203. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +1094 -49
  204. package/src/sap/ui/mdc/p13n/panels/FilterPanel.js +136 -0
  205. package/src/sap/ui/mdc/p13n/panels/GroupView.js +53 -28
  206. package/src/sap/ui/mdc/p13n/panels/LinkSelectionPanel.js +108 -0
  207. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +4 -7
  208. package/src/sap/ui/mdc/p13n/subcontroller/AdaptFiltersController.js +7 -7
  209. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +156 -11
  210. package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +15 -26
  211. package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +6 -5
  212. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +22 -11
  213. package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +174 -0
  214. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +12 -19
  215. package/src/sap/ui/mdc/table/Column.js +12 -12
  216. package/src/sap/ui/mdc/table/CreationRow.js +11 -11
  217. package/src/sap/ui/mdc/table/GridTableType.js +80 -33
  218. package/src/sap/ui/mdc/table/PropertyHelper.js +63 -19
  219. package/src/sap/ui/mdc/table/ResponsiveTableType.js +94 -23
  220. package/src/sap/ui/mdc/table/RowActionItem.js +119 -0
  221. package/src/sap/ui/mdc/table/RowSettings.js +45 -4
  222. package/src/sap/ui/mdc/table/TableTypeBase.js +2 -2
  223. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +2 -2
  224. package/src/sap/ui/mdc/themes/base/Chart.less +2 -0
  225. package/src/sap/ui/mdc/themes/base/FieldBase.less +0 -5
  226. package/src/sap/ui/mdc/themes/base/TokenDisplay.less +89 -0
  227. package/src/sap/ui/mdc/themes/base/TokenizerDisplay.less +90 -0
  228. package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +16 -4
  229. package/src/sap/ui/mdc/themes/base/library.source.less +2 -0
  230. package/src/sap/ui/mdc/util/Common.js +1 -1
  231. package/src/sap/ui/mdc/util/DateUtil.js +33 -8
  232. package/src/sap/ui/mdc/util/FilterUtil.js +2 -2
  233. package/src/sap/ui/mdc/util/FormatUtil.js +3 -3
  234. package/src/sap/ui/mdc/util/IdentifierUtil.js +6 -6
  235. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  236. package/src/sap/ui/mdc/util/PropertyHelper.js +243 -87
  237. package/src/sap/ui/mdc/util/TypeUtil.js +6 -5
  238. package/src/sap/ui/mdc/valuehelp/Dialog.js +11 -8
  239. package/src/sap/ui/mdc/valuehelp/Popover.js +6 -3
  240. package/src/sap/ui/mdc/valuehelp/base/Container.js +2 -1
  241. package/src/sap/ui/mdc/valuehelp/base/Content.js +2 -1
  242. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +2 -1
  243. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +5 -4
  244. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +2 -1
  245. package/src/sap/ui/mdc/valuehelp/content/Bool.js +2 -1
  246. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +4 -2
  247. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +23 -14
  248. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +46 -17
  249. package/src/sap/ui/mdc/valuehelp/content/MTable.js +48 -27
  250. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +3 -1
  251. package/test/sap/ui/mdc/testutils/opa/actions/OpenContextMenu.js +3 -3
  252. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ActionsBase.js +3 -3
  253. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ActionsViz.js +0 -0
  254. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/AssertionsBase.js +1 -1
  255. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/AssertionsViz.js +0 -0
  256. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ChartNew.js +0 -0
  257. package/test/sap/ui/mdc/testutils/opa/chart/TestObjects.js +291 -0
  258. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +7 -7
  259. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +8 -9
  260. package/test/sap/ui/mdc/testutils/opa/filterbar/Util.js +12 -11
  261. package/test/sap/ui/mdc/testutils/opa/link/Actions.js +85 -0
  262. package/test/sap/ui/mdc/testutils/opa/link/Assertions.js +79 -0
  263. package/test/sap/ui/mdc/testutils/opa/link/TestObjects.js +112 -0
  264. package/test/sap/ui/mdc/testutils/opa/link/waitForLink.js +50 -0
  265. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +264 -139
  266. package/test/sap/ui/mdc/testutils/opa/p13n/Util.js +27 -26
  267. package/test/sap/ui/mdc/testutils/opa/valueHelp/Actions.js +54 -0
  268. package/test/sap/ui/mdc/testutils/opa/valueHelp/Assertions.js +5 -0
  269. package/test/sap/ui/mdc/testutils/opa/valueHelp/TestObjects.js +40 -0
  270. package/test/sap/ui/mdc/testutils/opa/valueHelp/Util.js +28 -0
  271. package/src/sap/ui/mdc/ChartDelegateNew.js +0 -395
  272. package/src/sap/ui/mdc/ChartNew.js +0 -1114
  273. package/src/sap/ui/mdc/ChartNewRenderer.js +0 -91
  274. package/src/sap/ui/mdc/chart/DimensionItem.js +0 -281
  275. package/src/sap/ui/mdc/chart/MeasureItem.js +0 -318
  276. package/src/sap/ui/mdc/chart/MetadataDelegate.js +0 -31
  277. package/src/sap/ui/mdc/chart/SelectionHandler.js +0 -127
  278. package/src/sap/ui/mdc/chart/ToolbarHandler.js +0 -328
  279. package/src/sap/ui/mdc/chartNew/ChartTypeButtonNew.js +0 -295
  280. package/src/sap/ui/mdc/chartNew/DrillStackHandlerNew.js +0 -212
  281. package/src/sap/ui/mdc/chartNew/ItemNew.js +0 -72
  282. package/src/sap/ui/mdc/chartNew/SelectionDetailsActionsNew.js +0 -34
  283. package/src/sap/ui/mdc/designtime/chart/ChartNew.designtime.js +0 -91
  284. package/src/sap/ui/mdc/filterbar/vh/GenericFilterBarDelegate.js +0 -150
  285. package/src/sap/ui/mdc/link/SelectionDialog.control.xml +0 -66
  286. package/src/sap/ui/mdc/link/SelectionDialog.js +0 -213
  287. package/src/sap/ui/mdc/link/SelectionDialogItem.js +0 -86
  288. package/src/sap/ui/mdc/odata/v4/ChartDelegateNew.js +0 -35
  289. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelperNew.js +0 -39
  290. package/src/sap/ui/mdc/p13n/panels/BasePanel.js +0 -721
  291. package/src/sap/ui/mdc/p13n/panels/ChartItemPanelNew.js +0 -1179
  292. package/src/sap/ui/mdc/p13n/panels/ListView.js +0 -404
  293. package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +0 -92
  294. package/src/sap/ui/mdc/p13n/panels/SortPanel.js +0 -150
  295. package/src/sap/ui/mdc/ui/Container.js +0 -240
  296. package/src/sap/ui/mdc/ui/ContainerItem.js +0 -79
@@ -23,6 +23,7 @@ sap.ui.define([
23
23
  "sap/ui/core/dnd/DragDropInfo",
24
24
  "sap/ui/core/Item",
25
25
  "sap/ui/core/format/ListFormat",
26
+ "sap/ui/core/library",
26
27
  "sap/ui/events/KeyCodes",
27
28
  "sap/ui/model/Sorter",
28
29
  "sap/ui/dom/containsOrEquals",
@@ -39,7 +40,10 @@ sap.ui.define([
39
40
  "sap/m/ColumnPopoverSelectListItem",
40
41
  "sap/m/ColumnPopoverActionItem",
41
42
  "sap/ui/mdc/p13n/subcontroller/ColumnWidthController",
42
- "sap/ui/mdc/actiontoolbar/ActionToolbarAction"
43
+ "sap/ui/mdc/actiontoolbar/ActionToolbarAction",
44
+ "sap/ui/mdc/table/RowActionItem",
45
+ "sap/ui/base/ManagedObjectMetadata",
46
+ "sap/ui/mdc/table/RowSettings"
43
47
  ], function(
44
48
  Control,
45
49
  ActionToolbar,
@@ -59,6 +63,7 @@ sap.ui.define([
59
63
  DragDropInfo,
60
64
  Item,
61
65
  ListFormat,
66
+ coreLibrary,
62
67
  KeyCodes,
63
68
  Sorter,
64
69
  containsOrEquals,
@@ -75,7 +80,10 @@ sap.ui.define([
75
80
  ColumnPopoverSelectListItem,
76
81
  ColumnPopoverActionItem,
77
82
  ColumnWidthController,
78
- ActionToolbarAction
83
+ ActionToolbarAction,
84
+ RowActionItem,
85
+ ManagedObjectMetadata,
86
+ RowSettings
79
87
  ) {
80
88
  "use strict";
81
89
 
@@ -85,6 +93,7 @@ sap.ui.define([
85
93
  var ToolbarDesign = MLibrary.ToolbarDesign;
86
94
  var ToolbarStyle = MLibrary.ToolbarStyle;
87
95
  var MultiSelectMode = library.MultiSelectMode;
96
+ var TitleLevel = coreLibrary.TitleLevel;
88
97
  var internalMap = new window.WeakMap();
89
98
  var internal = function(oTable) {
90
99
  if (!internalMap.has(oTable)) {
@@ -108,14 +117,13 @@ sap.ui.define([
108
117
  * Constructor for a new <code>MDCTable</code>.
109
118
  *
110
119
  * @param {string} [sId] Optional ID for the new control; generated automatically if no non-empty ID is given
111
- * <b>Note:</b> this can be omitted, no matter whether <code>mSettings</code> will be given or not.
120
+ * <b>Note:</b> The optional ID can be omitted, no matter whether <code>mSettings</code> is given or not.
112
121
  * @param {object} [mSettings] Object with initial settings for the new control
113
122
  * @class
114
- * <p>
115
- * A metadata-driven table to simplify the usage of existing tables, such as the <code>ResponsiveTable</code> and <code>GridTable</code>
116
- * controls. The metadata needs to be provided via the {@link sap.ui.mdc.TableDelegate TableDelegate} implementation in the form of a
117
- * <code>PropertyInfo</code>.
118
- * </p>
123
+ * A metadata-driven table to simplify the usage of existing tables, such as the <code>ResponsiveTable</code> and <code>GridTable</code>
124
+ * controls. The metadata needs to be provided via the {@link module:sap/ui/mdc/TableDelegate TableDelegate} implementation as
125
+ * {@link sap.ui.mdc.table.PropertyInfo}.
126
+ *
119
127
  * @extends sap.ui.mdc.Control
120
128
  * @author SAP SE
121
129
  * @private
@@ -158,6 +166,7 @@ sap.ui.define([
158
166
  * Actions available for a table row.
159
167
  *
160
168
  * @since 1.60
169
+ * @deprecated as of version 1.98, use row settings instead.
161
170
  */
162
171
  rowAction: {
163
172
  type: "sap.ui.mdc.RowAction[]",
@@ -196,7 +205,7 @@ sap.ui.define([
196
205
  headerLevel: {
197
206
  type: "sap.ui.core.TitleLevel",
198
207
  group: "Appearance",
199
- defaultValue: sap.ui.core.TitleLevel.Auto
208
+ defaultValue: TitleLevel.Auto
200
209
  },
201
210
  /**
202
211
  * Determines whether to bind the table automatically after the initial creation or re-creation of the table.
@@ -264,7 +273,7 @@ sap.ui.define([
264
273
  },
265
274
 
266
275
  /**
267
- * Determines the text shown when the table has no data.
276
+ * Determines the text shown if the table has no data.
268
277
  *
269
278
  * @since 1.63
270
279
  */
@@ -273,10 +282,10 @@ sap.ui.define([
273
282
  },
274
283
 
275
284
  /**
276
- * Sort conditions.
285
+ * Defines the sort conditions.
277
286
  *
278
287
  * <b>Note</b>: This property must not be bound.<br>
279
- * <b>Note:</b> This property is exclusively used for handling flexibility changes.
288
+ * <b>Note:</b> This property is used exclusively for handling SAPUI5 flexibility changes. Do not use it otherwise.
280
289
  *
281
290
  * @since 1.73
282
291
  */
@@ -285,10 +294,10 @@ sap.ui.define([
285
294
  },
286
295
 
287
296
  /**
288
- * Filter conditions.
297
+ * Defines the filter conditions.
289
298
  *
290
299
  * <b>Note</b>: This property must not be bound.<br>
291
- * <b>Note:</b> This property is exclusively used for handling flexibility changes.
300
+ * <b>Note:</b> This property is used exclusively for handling SAPUI5 flexibility changes. Do not use it otherwise.
292
301
  *
293
302
  * @since 1.80.0
294
303
  */
@@ -298,10 +307,10 @@ sap.ui.define([
298
307
  },
299
308
 
300
309
  /**
301
- * Group conditions.
310
+ * Defines the group conditions.
302
311
  *
303
312
  * <b>Note</b>: This property must not be bound.<br>
304
- * <b>Note:</b> This property is exclusively used for handling flexibility changes.
313
+ * <b>Note:</b> This property is used exclusively for handling SAPUI5 flexibility changes. Do not use it otherwise.
305
314
  *
306
315
  * @since 1.87
307
316
  */
@@ -310,10 +319,10 @@ sap.ui.define([
310
319
  },
311
320
 
312
321
  /**
313
- * Aggregate conditions.
322
+ * Defines the aggregate conditions.
314
323
  *
315
324
  * <b>Note</b>: This property must not be bound.<br>
316
- * <b>Note:</b> This property is exclusively used for handling flexibility changes.
325
+ * <b>Note:</b> This property is exclusively used for handling SAPUI5 flexibility changes.
317
326
  *
318
327
  * @since 1.87
319
328
  */
@@ -322,7 +331,7 @@ sap.ui.define([
322
331
  },
323
332
 
324
333
  /**
325
- * Determines whether table data export is enabled.
334
+ * Determines whether the table data export is enabled.
326
335
  *
327
336
  * @since 1.75
328
337
  */
@@ -385,12 +394,14 @@ sap.ui.define([
385
394
  /**
386
395
  * Enables automatic column width calculation based on metadata information if set to <code>true</code>.
387
396
  * The column width calculation takes the type, column label, referenced properties, and many other metadata parameters into account.
388
- * Providing a more precise <code>maxLength</code> value for the <code>String</code> type or <code>precision</code> value for numeric types can help this algorithm to produce better results.
397
+ * Providing a more precise <code>maxLength</code> value for the <code>String</code> type or <code>precision</code> value for numeric
398
+ * types can help this algorithm to produce better results.
389
399
  * The calculated column widths can have a minimum of 3rem and a maximum of 20rem.
390
400
  *
391
- * <b>Note:</b> To customize the automatic column width calculation the <code>visualSettings.widthSettings</code> key of the <code>PropertyInfo</code> can be used.
392
- * To avoid the heuristic column width calculation for a particular column, the <code>visualSettings.widthSettings</code> key of the <code>PropertyInfo</code> must be set to <code>null</code>.
393
- * This feature has no effect if the <code>width</code> property of the column is bound or its value is set.
401
+ * <b>Note:</b> To customize the automatic column width calculation, the <code>visualSettings.widthSettings</code> key of the
402
+ * <code>PropertyInfo</code> can be used. To avoid the heuristic column width calculation for a particular column, the
403
+ * <code>visualSettings.widthSettings</code> key of the <code>PropertyInfo</code> must be set to <code>null</code>. This feature has
404
+ * no effect if the <code>width</code> property of the column is bound or its value is set.
394
405
  *
395
406
  * @since 1.95
396
407
  */
@@ -426,7 +437,7 @@ sap.ui.define([
426
437
 
427
438
  /**
428
439
  * This row can be used for user input to create new data if {@link sap.ui.mdc.TableType TableType} is "<code>Table</code>".
429
- * <b>Note:</b> Once the binding implements support for creating transient records, this aggregation will be removed.
440
+ * <b>Note:</b> Once the binding supports creating transient records, this aggregation will be removed.
430
441
  */
431
442
  creationRow: {
432
443
  type: "sap.ui.mdc.table.CreationRow",
@@ -472,9 +483,9 @@ sap.ui.define([
472
483
  /**
473
484
  * <code>DataStateIndicator</code> plugin that can be used to show binding-related messages.
474
485
  *
475
- * <b>Note:</b> The message filtering is not yet supported for this control therefore
476
- * {@link sap.m.plugins.DataStateIndicator#getEnableFiltering enableFiltering} property of the <code>DataStateIndicator</code> must
477
- * not be set to <code>true</code>.
486
+ * <b>Note:</b> The message filtering is not yet supported for this control. Therefore the
487
+ * {@link sap.m.plugins.DataStateIndicator#getEnableFiltering enableFiltering} property of the <code>DataStateIndicator</code> plugin
488
+ * must not be set to <code>true</code>.
478
489
  *
479
490
  * @since 1.89
480
491
  */
@@ -495,7 +506,7 @@ sap.ui.define([
495
506
  },
496
507
  events: {
497
508
  /**
498
- * Fired when a row in the table is pressed.
509
+ * This event is fired when a row in the table is pressed.
499
510
  */
500
511
  rowPress: {
501
512
  parameters: {
@@ -508,7 +519,7 @@ sap.ui.define([
508
519
  }
509
520
  },
510
521
  /**
511
- * Fired when the selection in the table is changed.
522
+ * This event is fired when the selection in the table is changed.
512
523
  */
513
524
  selectionChange: {
514
525
  parameters: {
@@ -525,7 +536,7 @@ sap.ui.define([
525
536
  type: "boolean"
526
537
  },
527
538
  /**
528
- * Identifies whether selectAll was pressed
539
+ * Identifies whether the Select All checkbox was pressed
529
540
  */
530
541
  selectAll: {
531
542
  type: "boolean"
@@ -533,7 +544,7 @@ sap.ui.define([
533
544
  }
534
545
  },
535
546
  /**
536
- * Fired right before the export is triggered.
547
+ * This event is fired right before the export is triggered.
537
548
  *
538
549
  * For more information about the export settings, see {@link sap.ui.export.Spreadsheet} or
539
550
  * {@link topic:7e12e6b9154a4607be9d6072c72d609c Spreadsheet Export Configuration}.
@@ -560,7 +571,7 @@ sap.ui.define([
560
571
  }
561
572
  },
562
573
  /**
563
- * Fired when the user pastes content from the clipboard to the table.
574
+ * This event is fired when the user pastes content from the clipboard to the table.
564
575
  */
565
576
  paste: {
566
577
  parameters: {
@@ -661,6 +672,7 @@ sap.ui.define([
661
672
  * @inheritDoc
662
673
  */
663
674
  Table.prototype.applySettings = function() {
675
+ this._setPropertyHelperClass(PropertyHelper);
664
676
  Control.prototype.applySettings.apply(this, arguments);
665
677
  this.initControlDelegate();
666
678
  };
@@ -715,7 +727,7 @@ sap.ui.define([
715
727
  Table.prototype._onApplyMessageFilter = function(oEvent) {
716
728
  this._oMessageFilter = oEvent.getParameter("filter");
717
729
  oEvent.preventDefault();
718
- this.rebind();
730
+ this._rebind();
719
731
  };
720
732
 
721
733
  /**
@@ -725,7 +737,7 @@ sap.ui.define([
725
737
  Table.prototype._onClearMessageFilter = function(oEvent) {
726
738
  this._oMessageFilter = null;
727
739
  oEvent.preventDefault();
728
- this.rebind();
740
+ this._rebind();
729
741
  };
730
742
 
731
743
  // ----Type----
@@ -865,18 +877,24 @@ sap.ui.define([
865
877
  // ----End Type----
866
878
 
867
879
  Table.prototype.setRowSettings = function(oRowSettings) {
880
+ if (this._oTableRowAction) {
881
+ if (oRowSettings.getRowActions().length == 0) {
882
+ oRowSettings.addRowAction(this._oTableRowAction);
883
+ }
884
+ }
868
885
  this.setAggregation("rowSettings", oRowSettings, true);
869
886
 
870
887
  if (this._oTable) {
871
888
  // Apply the new setting to the existing table
889
+ this._oRowActions = {};
872
890
  if (this._isOfType(TableType.ResponsiveTable)) {
873
- ResponsiveTableType.updateRowSettings(this._oTemplate, oRowSettings);
891
+ ResponsiveTableType.updateRowSettings(this, oRowSettings, this._onResponsiveRowActionPress);
874
892
  } else {
875
- GridTableType.updateRowSettings(this._oTable, oRowSettings);
893
+ GridTableType.updateRowSettings(this._oTable, oRowSettings, [this._onRowActionPress, this]);
876
894
  }
877
895
 
878
896
  this._bForceRebind = true;
879
- this.checkAndRebind();
897
+ this._rebind();
880
898
  }
881
899
 
882
900
  return this;
@@ -938,14 +956,20 @@ sap.ui.define([
938
956
  return this;
939
957
  };
940
958
 
959
+ // TODO: Temporary solution until apps adapted changes. Remove this, as this is replaced by rowSettings
941
960
  Table.prototype.setRowAction = function(aActions) {
942
- var aOldActions = this.getRowAction();
943
-
944
961
  this.setProperty("rowAction", aActions, true);
945
962
 
946
- if (!deepEqual(aOldActions.sort(), this.getRowAction().sort())) {
947
- this._updateRowAction();
963
+ var oRowSettings = this.getRowSettings() || new RowSettings();
964
+
965
+ oRowSettings.destroyRowActions();
966
+ if (this.getRowAction().indexOf(RowAction.Navigation) > -1) {
967
+ this._oTableRowAction = new RowActionItem({
968
+ type: RowAction.Navigation
969
+ });
970
+ oRowSettings.addRowAction(this._oTableRowAction);
948
971
  }
972
+ this.setRowSettings(oRowSettings);
949
973
 
950
974
  return this;
951
975
  };
@@ -973,21 +997,20 @@ sap.ui.define([
973
997
  };
974
998
 
975
999
  Table.prototype._onModifications = function() {
976
- if (!this._oTable) {
977
- return;
978
- }
979
- var oColumnWidth = this.getCurrentState().xConfig;
980
- var oColumnWidthContent = oColumnWidth.aggregations && oColumnWidth.aggregations.columns;
981
-
982
- this.getColumns().forEach(function(oColumn, iIndex) {
983
- var sWidth = oColumnWidthContent && oColumnWidthContent[oColumn.getDataProperty()] && oColumnWidthContent[oColumn.getDataProperty()].width;
984
- var oInnerColumn = this._oTable.getColumns()[iIndex];
985
- if (!sWidth && oInnerColumn.getWidth() !== oColumn.getWidth()) {
986
- oInnerColumn.setWidth(oColumn.getWidth());
987
- } else if (sWidth && sWidth !== oInnerColumn.getWidth()) {
988
- oInnerColumn.setWidth(sWidth);
989
- }
990
- }, this);
1000
+ var oMDCTable = this;
1001
+ this.initialized().then(function() {
1002
+ var oColumnWidth = oMDCTable.getCurrentState().xConfig;
1003
+ var oColumnWidthContent = oColumnWidth.aggregations && oColumnWidth.aggregations.columns;
1004
+ oMDCTable.getColumns().forEach(function(oColumn, iIndex) {
1005
+ var sWidth = oColumnWidthContent && oColumnWidthContent[oColumn.getDataProperty()] && oColumnWidthContent[oColumn.getDataProperty()].width;
1006
+ var oInnerColumn = oMDCTable._oTable.getColumns()[iIndex];
1007
+ if (!sWidth && oInnerColumn.getWidth() !== oColumn.getWidth()) {
1008
+ oInnerColumn.setWidth(oColumn.getWidth());
1009
+ } else if (sWidth && sWidth !== oInnerColumn.getWidth()) {
1010
+ oInnerColumn.setWidth(sWidth);
1011
+ }
1012
+ });
1013
+ });
991
1014
  };
992
1015
 
993
1016
  Table.prototype.setP13nMode = function(aMode) {
@@ -1286,10 +1309,9 @@ sap.ui.define([
1286
1309
  if (!this._oTable) {
1287
1310
  return;
1288
1311
  }
1289
- var bNavigation = this.getRowAction().indexOf(RowAction.Navigation) > -1;
1290
1312
  var oType = this._bMobileTable ? ResponsiveTableType : GridTableType;
1291
1313
  // For ResponsiveTable itemPress event is registered during creation
1292
- oType.updateRowAction(this, bNavigation, this._bMobileTable ? undefined : this._onRowActionPress);
1314
+ oType.updateRowActions(this, this.getRowSettings(), this._bMobileTable ? this._onResponsiveRowActionPress : this._onRowActionPress);
1293
1315
  };
1294
1316
 
1295
1317
  Table.prototype._initializeContent = function() {
@@ -1362,7 +1384,10 @@ sap.ui.define([
1362
1384
  this._onAfterTableCreated(true); // Resolve any pending promise if table exists
1363
1385
 
1364
1386
  var pTableInit = this.initialized().then(function() {
1365
- this.initPropertyHelper(PropertyHelper);
1387
+ this.initPropertyHelper();
1388
+
1389
+ //Make sure that in case of default xConfig appliance the state is initially read once
1390
+ this._onModifications();
1366
1391
 
1367
1392
  // add this to the micro task execution queue to enable consumers to handle this correctly
1368
1393
  var oCreationRow = this.getCreationRow();
@@ -1371,7 +1396,7 @@ sap.ui.define([
1371
1396
  }
1372
1397
 
1373
1398
  if (this.getAutoBindOnInit()) {
1374
- this.checkAndRebind();
1399
+ this.rebind();
1375
1400
  }
1376
1401
 
1377
1402
  return this.awaitPropertyHelper();
@@ -1493,7 +1518,7 @@ sap.ui.define([
1493
1518
  };
1494
1519
 
1495
1520
  /**
1496
- * Returns the current filter conditions present on the table
1521
+ * Returns the current filter conditions present on the table.
1497
1522
  *
1498
1523
  * @private
1499
1524
  * @ui5-restricted sap.ui.mdc
@@ -1729,13 +1754,28 @@ sap.ui.define([
1729
1754
  var oRowBinding = that._getRowBinding();
1730
1755
  var mExportSettings = {
1731
1756
  workbook: {
1732
- columns: aSheetColumns
1757
+ columns: aSheetColumns,
1758
+ context: {title: that.getHeader()}
1733
1759
  },
1734
1760
  dataSource: oRowBinding,
1735
- fileType: mCustomConfig.selectedFileType == "pdf" ? "PDF" : "XLSX",
1736
- fileName: mCustomConfig ? mCustomConfig.fileName : that.getHeader()
1761
+ fileType: mCustomConfig.selectedFileType,
1762
+ fileName: mCustomConfig ? mCustomConfig.fileName : this.getHeader()
1737
1763
  };
1738
1764
 
1765
+ var mPDFUserSettings = {
1766
+ border: mCustomConfig.border,
1767
+ fontSize: mCustomConfig.fontSize,
1768
+ paperSize: mCustomConfig.selectedPaperSize,
1769
+ doEnableAccessibility: mCustomConfig.doEnableAccessibility,
1770
+ signature: mCustomConfig.signature,
1771
+ signatureReason: mCustomConfig.signatureReason,
1772
+ orientation: mCustomConfig.selectedOrientation
1773
+ };
1774
+
1775
+ if (mExportSettings.fileType === "PDF") {
1776
+ Object.assign(mExportSettings, mPDFUserSettings);
1777
+ }
1778
+
1739
1779
  that._loadExportLibrary().then(function() {
1740
1780
  sap.ui.require(["sap/ui/export/ExportUtils"], function(ExportUtils) {
1741
1781
  var oProcessor = Promise.resolve();
@@ -1745,12 +1785,10 @@ sap.ui.define([
1745
1785
  return oPropertyHelper.hasProperty(sPropertyName) ? oPropertyHelper.getProperty(sPropertyName).label : null;
1746
1786
  }).then(function(oFilterConfig) {
1747
1787
  if (oFilterConfig) {
1748
- mExportSettings.workbook.context = {
1749
- metaSheetName: oFilterConfig.name,
1750
- metainfo: [
1751
- oFilterConfig
1752
- ]
1753
- };
1788
+ var oContext = mExportSettings.workbook.context;
1789
+
1790
+ oContext.metaSheetName = oFilterConfig.name;
1791
+ oContext.metainfo = [oFilterConfig];
1754
1792
  }
1755
1793
  });
1756
1794
  }
@@ -1795,10 +1833,11 @@ sap.ui.define([
1795
1833
 
1796
1834
  this._loadExportLibrary().then(function() {
1797
1835
  sap.ui.require(['sap/ui/export/ExportUtils'], function(ExportUtils) {
1798
- var bEnablePDFExport = new URL(window.location.href).search.indexOf("sap-ui-xx-enablePDFExport=true");
1799
- ExportUtils.getExportSettingsViaDialog(that._cachedExportSettings, that, undefined, bEnablePDFExport).then(function(oUserInput) {
1800
- that._cachedExportSettings = oUserInput;
1801
- that._onExport(oUserInput);
1836
+ that.getControlDelegate().fetchExportCapabilities().then(function(oExportCapabilities) {
1837
+ ExportUtils.getExportSettingsViaDialog(that._cachedExportSettings, oExportCapabilities, that).then(function(oUserInput) {
1838
+ that._cachedExportSettings = oUserInput;
1839
+ that._onExport(oUserInput);
1840
+ });
1802
1841
  });
1803
1842
  });
1804
1843
  });
@@ -2255,8 +2294,10 @@ sap.ui.define([
2255
2294
  oColumn = this._oTable.removeColumn(oMDCColumn.getId() + "-innerColumn");
2256
2295
  this._oTable.insertColumn(oColumn, iIndex);
2257
2296
 
2258
- // update template for ResponsiveTable
2259
2297
  if (this._bMobileTable) {
2298
+ // responsive table requires the column order to be updated.
2299
+ this._setMobileColumnOrder();
2300
+ // update template for ResponisveTable
2260
2301
  this._updateColumnTemplate(oMDCColumn, iIndex);
2261
2302
  }
2262
2303
  }
@@ -2317,6 +2358,25 @@ sap.ui.define([
2317
2358
  }
2318
2359
  };
2319
2360
 
2361
+ /**
2362
+ * Sets the column order for the responsive table. The order is set according to the index of the mdc columns.
2363
+ * Updating the responsive table's column order and invalidating avoid rebinds.
2364
+ * @private
2365
+ */
2366
+ Table.prototype._setMobileColumnOrder = function() {
2367
+ this.getColumns().forEach(function(oMDCColumn) {
2368
+ var oColumn = Core.byId(oMDCColumn.getId() + "-innerColumn");
2369
+ if (!oColumn) {
2370
+ return;
2371
+ }
2372
+ // since we ensure correct index of the mdcColumn control we can set the same order to the inner responsive table columns
2373
+ oColumn.setOrder(this.indexOfColumn(oMDCColumn));
2374
+ }, this);
2375
+
2376
+ // invalidate the inner table to apply the correct order on the UI. See sap.m.Column#setOrder
2377
+ this._oTable.invalidate();
2378
+ };
2379
+
2320
2380
  Table._removeItemCell = function(oItem, iRemoveIndex, iInsertIndex) {
2321
2381
  // remove cell from index
2322
2382
  var oCell = oItem.removeCell(iRemoveIndex);
@@ -2334,6 +2394,7 @@ sap.ui.define([
2334
2394
  this.fireRowPress({
2335
2395
  bindingContext: oEvent.getParameter("listItem").getBindingContext()
2336
2396
  });
2397
+ ResponsiveTableType._onRowActionPress.apply(this, [oEvent]);
2337
2398
  };
2338
2399
 
2339
2400
  Table.prototype._onSelectionChange = function(oEvent) {
@@ -2373,13 +2434,6 @@ sap.ui.define([
2373
2434
  });
2374
2435
  };
2375
2436
 
2376
- Table.prototype._onRowActionPress = function(oEvent) {
2377
- var oRow = oEvent.getParameter("row");
2378
- this.fireRowPress({
2379
- bindingContext: oRow.getBindingContext()
2380
- });
2381
- };
2382
-
2383
2437
  Table.prototype._onRowSelectionChange = function(oEvent) {
2384
2438
  if (!this._bSelectionChangedByAPI) { // TODO Table / Plugin needs to ensure that events are only fired when "relevant" for the app.
2385
2439
  this.fireSelectionChange({
@@ -2395,14 +2449,14 @@ sap.ui.define([
2395
2449
  this._onColumnPress(oEvent.getParameter("column"));
2396
2450
  };
2397
2451
 
2398
- // TODO: maybe selectedContexts should be an association
2399
- // TODO: The API is unstable/unreliable in GridTable scenarios and has to be worked upon
2400
2452
  /**
2401
- * Gets contexts from the table that have been selected by the user.
2453
+ * Gets contexts that have been selected by the user.
2402
2454
  *
2403
- * @returns {Array} Contexts of rows/items selected by the user
2455
+ * @returns {sap.ui.model.Context[]} The selected contexts
2404
2456
  * @private
2405
- * @experimental The API is unstable/unreliable in GridTable scenarios
2457
+ * @ui5-restricted sap.fe
2458
+ * MDC_PUBLIC_CANDIDATE
2459
+ * @experimental The API is subject to change.
2406
2460
  */
2407
2461
  Table.prototype.getSelectedContexts = function() {
2408
2462
  if (this._oTable) {
@@ -2420,9 +2474,11 @@ sap.ui.define([
2420
2474
  };
2421
2475
 
2422
2476
  /**
2423
- * API to get clear selection from the table.
2477
+ * Clears the selection.
2424
2478
  *
2425
2479
  * @private
2480
+ * @ui5-restricted sap.fe
2481
+ * MDC_PUBLIC_CANDIDATE
2426
2482
  */
2427
2483
  Table.prototype.clearSelection = function() {
2428
2484
  if (this._oTable) {
@@ -2438,7 +2494,7 @@ sap.ui.define([
2438
2494
 
2439
2495
  Table.prototype._registerInnerFilter = function(oFilter) {
2440
2496
  oFilter.attachSearch(function() {
2441
- this.rebind();
2497
+ this._rebind();
2442
2498
  }, this);
2443
2499
  };
2444
2500
 
@@ -2467,7 +2523,7 @@ sap.ui.define([
2467
2523
 
2468
2524
  var oBindingInfo = {};
2469
2525
 
2470
- this.getControlDelegate().updateBindingInfo(this, this.getPayload(), oBindingInfo);
2526
+ this.getControlDelegate().updateBindingInfo(this, oBindingInfo);
2471
2527
 
2472
2528
  if (oBindingInfo.path) {
2473
2529
  this._oTable.setShowOverlay(false);
@@ -2604,7 +2660,7 @@ sap.ui.define([
2604
2660
  };
2605
2661
 
2606
2662
  /**
2607
- * Gets the row count of the table
2663
+ * Gets the row count of the table.
2608
2664
  *
2609
2665
  * @private
2610
2666
  * @returns {int} the row count
@@ -2619,8 +2675,7 @@ sap.ui.define([
2619
2675
  var iRowCount;
2620
2676
  if (!bConsiderTotal) {
2621
2677
  iRowCount = oRowBinding.getLength();
2622
- } else {
2623
- if (typeof oRowBinding.getCount === 'function') {
2678
+ } else if (typeof oRowBinding.getCount === 'function') {
2624
2679
  iRowCount = oRowBinding.getCount();
2625
2680
  } else if (oRowBinding.isLengthFinal()) {
2626
2681
  // This branch is only fallback and for TreeBindings (TreeBindings should be excluded when MDCTable will support TreeBinding,
@@ -2628,7 +2683,6 @@ sap.ui.define([
2628
2683
  // ListBindings should in general get a getCount function in nearer future (5341464)
2629
2684
  iRowCount = oRowBinding.getLength();
2630
2685
  }
2631
- }
2632
2686
 
2633
2687
  if (iRowCount < 0 || iRowCount === "0") {
2634
2688
  iRowCount = 0;
@@ -2689,20 +2743,15 @@ sap.ui.define([
2689
2743
  }
2690
2744
  };
2691
2745
 
2692
- // TODO: Delete!
2693
- Table.prototype.rebindTable = function() {
2694
- this.rebind();
2695
- };
2696
-
2697
2746
  /**
2698
2747
  * Rebinds the table rows.
2699
2748
  */
2700
- Table.prototype.rebind = function() {
2749
+ Table.prototype._rebind = function() {
2701
2750
  // Bind the rows/items of the table, only once it is initialized.
2702
2751
  if (this._bFullyInitialized) {
2703
2752
  this.bindRows();
2704
2753
  } else {
2705
- this._fullyInitialized().then(this.rebind.bind(this));
2754
+ this._fullyInitialized().then(this._rebind.bind(this));
2706
2755
  }
2707
2756
  };
2708
2757
 
@@ -2743,7 +2792,7 @@ sap.ui.define([
2743
2792
  };
2744
2793
 
2745
2794
  /**
2746
- * Termination of the <code>MDCTable</code> control
2795
+ * Terminates the <code>MDCTable</code> control.
2747
2796
  * @private
2748
2797
  */
2749
2798
  Table.prototype.exit = function() {