@openui5/sap.ui.mdc 1.96.5 → 1.99.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 (282) hide show
  1. package/.reuse/dep5 +26 -31
  2. package/THIRDPARTY.txt +15 -21
  3. package/package.json +4 -4
  4. package/src/sap/ui/mdc/.library +1 -1
  5. package/src/sap/ui/mdc/ActionToolbar.js +7 -9
  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 +1100 -1796
  9. package/src/sap/ui/mdc/ChartDelegate.js +429 -270
  10. package/src/sap/ui/mdc/ChartRenderer.js +73 -77
  11. package/src/sap/ui/mdc/Control.js +1 -1
  12. package/src/sap/ui/mdc/Element.js +1 -1
  13. package/src/sap/ui/mdc/Field.js +3 -2
  14. package/src/sap/ui/mdc/FilterBar.js +3 -2
  15. package/src/sap/ui/mdc/FilterField.js +25 -8
  16. package/src/sap/ui/mdc/Link.js +23 -4
  17. package/src/sap/ui/mdc/LinkDelegate.js +3 -3
  18. package/src/sap/ui/mdc/MultiValueField.js +21 -6
  19. package/src/sap/ui/mdc/Table.js +204 -161
  20. package/src/sap/ui/mdc/TableDelegate.js +47 -17
  21. package/src/sap/ui/mdc/ValueHelp.js +51 -15
  22. package/src/sap/ui/mdc/ValueHelpDelegate.js +20 -0
  23. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +2 -2
  24. package/src/sap/ui/mdc/{chartNew/ChartSelectionDetailsNew.js → chart/ChartSelectionDetails.js} +8 -8
  25. package/src/sap/ui/mdc/{chartNew/ChartToolbarNew.js → chart/ChartToolbar.js} +49 -13
  26. package/src/sap/ui/mdc/chart/ChartTypeButton.js +55 -54
  27. package/src/sap/ui/mdc/{chartNew/DrillBreadcrumbsNew.js → chart/DrillBreadcrumbs.js} +3 -3
  28. package/src/sap/ui/mdc/chart/DrillStackHandler.js +38 -249
  29. package/src/sap/ui/mdc/chart/Item.js +62 -92
  30. package/src/sap/ui/mdc/{chartNew/PropertyHelperNew.js → chart/PropertyHelper.js} +3 -3
  31. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +17 -21
  32. package/src/sap/ui/mdc/condition/Condition.js +1 -1
  33. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  34. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  35. package/src/sap/ui/mdc/condition/FilterConverter.js +1 -1
  36. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +261 -44
  37. package/src/sap/ui/mdc/condition/Operator.js +9 -9
  38. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +437 -0
  39. package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
  40. package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +80 -5
  41. package/src/sap/ui/mdc/designtime/field/Field.designtime.js +97 -0
  42. package/src/sap/ui/mdc/designtime/field/FieldBase.designtime.js +104 -0
  43. package/src/sap/ui/mdc/designtime/field/FilterField.designtime.js +22 -0
  44. package/src/sap/ui/mdc/designtime/field/MultiValueField.designtime.js +23 -0
  45. package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +3 -0
  46. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +60 -20
  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 +9 -9
  50. package/src/sap/ui/mdc/field/ConditionsType.js +7 -7
  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 +75 -27
  54. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +311 -0
  55. package/src/sap/ui/mdc/field/FieldBase.js +85 -52
  56. package/src/sap/ui/mdc/field/FieldBaseRenderer.js +0 -3
  57. package/src/sap/ui/mdc/field/FieldHelpBase.js +2 -2
  58. package/src/sap/ui/mdc/field/FieldInfoBase.js +23 -10
  59. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  60. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  61. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  62. package/src/sap/ui/mdc/field/FieldValueHelp.js +7 -7
  63. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  64. package/src/sap/ui/mdc/field/FieldValueHelpDelegate.js +20 -0
  65. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +1 -1
  66. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +2 -2
  67. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +7 -3
  68. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +1 -1
  69. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  70. package/src/sap/ui/mdc/field/ListFieldHelp.js +10 -2
  71. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  72. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  73. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  74. package/src/sap/ui/mdc/field/TokenDisplay.js +70 -0
  75. package/src/sap/ui/mdc/field/TokenDisplayRenderer.js +24 -0
  76. package/src/sap/ui/mdc/field/TokenizerDisplay.js +80 -0
  77. package/src/sap/ui/mdc/field/TokenizerDisplayRenderer.js +69 -0
  78. package/src/sap/ui/mdc/field/ValueHelpPanel.js +2 -1
  79. package/src/sap/ui/mdc/field/content/BooleanContent.js +1 -1
  80. package/src/sap/ui/mdc/field/content/ContentFactory.js +28 -26
  81. package/src/sap/ui/mdc/field/content/DateContent.js +128 -2
  82. package/src/sap/ui/mdc/field/content/DateTimeContent.js +9 -1
  83. package/src/sap/ui/mdc/field/content/DefaultContent.js +36 -14
  84. package/src/sap/ui/mdc/field/content/LinkContent.js +1 -1
  85. package/src/sap/ui/mdc/field/content/TimeContent.js +8 -1
  86. package/src/sap/ui/mdc/field/content/UnitContent.js +23 -4
  87. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +359 -142
  88. package/src/sap/ui/mdc/filterbar/FilterBarBaseRenderer.js +1 -1
  89. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +1 -1
  90. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +8 -2
  91. package/src/sap/ui/mdc/filterbar/vh/CollectiveSearchSelect.js +3 -1
  92. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +7 -1
  93. package/src/sap/ui/mdc/filterbar/vh/GenericFilterBarDelegate.js +6 -6
  94. package/src/sap/ui/mdc/flexibility/AggregateFlex.js +2 -2
  95. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +6 -4
  96. package/src/sap/ui/mdc/flexibility/ColumnFlex.js +1 -1
  97. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +4 -3
  98. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  99. package/src/sap/ui/mdc/flexibility/GroupFlex.js +1 -1
  100. package/src/sap/ui/mdc/flexibility/Panel.flexibility.js +9 -3
  101. package/src/sap/ui/mdc/flexibility/PropertyInfoFlex.js +110 -0
  102. package/src/sap/ui/mdc/flexibility/SortFlex.js +2 -2
  103. package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +6 -6
  104. package/src/sap/ui/mdc/library.js +62 -43
  105. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  106. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  107. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  108. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  109. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  110. package/src/sap/ui/mdc/link/Factory.js +2 -2
  111. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  112. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  113. package/src/sap/ui/mdc/link/Log.js +1 -1
  114. package/src/sap/ui/mdc/link/Panel.js +140 -177
  115. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  116. package/src/sap/ui/mdc/link/PanelListItem.js +1 -1
  117. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  118. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  119. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  120. package/src/sap/ui/mdc/messagebundle.properties +68 -5
  121. package/src/sap/ui/mdc/messagebundle_ar.properties +47 -6
  122. package/src/sap/ui/mdc/messagebundle_bg.properties +61 -20
  123. package/src/sap/ui/mdc/messagebundle_ca.properties +45 -4
  124. package/src/sap/ui/mdc/messagebundle_cs.properties +60 -19
  125. package/src/sap/ui/mdc/messagebundle_cy.properties +45 -4
  126. package/src/sap/ui/mdc/messagebundle_da.properties +52 -11
  127. package/src/sap/ui/mdc/messagebundle_de.properties +45 -4
  128. package/src/sap/ui/mdc/messagebundle_el.properties +46 -5
  129. package/src/sap/ui/mdc/messagebundle_en.properties +45 -4
  130. package/src/sap/ui/mdc/messagebundle_en_GB.properties +45 -4
  131. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +51 -2
  132. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +45 -4
  133. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +51 -2
  134. package/src/sap/ui/mdc/messagebundle_es.properties +46 -5
  135. package/src/sap/ui/mdc/messagebundle_es_MX.properties +59 -18
  136. package/src/sap/ui/mdc/messagebundle_et.properties +45 -4
  137. package/src/sap/ui/mdc/messagebundle_fi.properties +51 -10
  138. package/src/sap/ui/mdc/messagebundle_fr.properties +50 -9
  139. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +45 -4
  140. package/src/sap/ui/mdc/messagebundle_hi.properties +46 -5
  141. package/src/sap/ui/mdc/messagebundle_hr.properties +45 -4
  142. package/src/sap/ui/mdc/messagebundle_hu.properties +45 -4
  143. package/src/sap/ui/mdc/messagebundle_id.properties +45 -4
  144. package/src/sap/ui/mdc/messagebundle_it.properties +61 -20
  145. package/src/sap/ui/mdc/messagebundle_iw.properties +46 -5
  146. package/src/sap/ui/mdc/messagebundle_ja.properties +46 -5
  147. package/src/sap/ui/mdc/messagebundle_kk.properties +45 -4
  148. package/src/sap/ui/mdc/messagebundle_ko.properties +46 -5
  149. package/src/sap/ui/mdc/messagebundle_lt.properties +45 -4
  150. package/src/sap/ui/mdc/messagebundle_lv.properties +49 -8
  151. package/src/sap/ui/mdc/messagebundle_ms.properties +45 -4
  152. package/src/sap/ui/mdc/messagebundle_nl.properties +49 -8
  153. package/src/sap/ui/mdc/messagebundle_no.properties +53 -12
  154. package/src/sap/ui/mdc/messagebundle_pl.properties +46 -5
  155. package/src/sap/ui/mdc/messagebundle_pt.properties +52 -11
  156. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +45 -4
  157. package/src/sap/ui/mdc/messagebundle_ro.properties +45 -4
  158. package/src/sap/ui/mdc/messagebundle_ru.properties +45 -4
  159. package/src/sap/ui/mdc/messagebundle_sh.properties +45 -4
  160. package/src/sap/ui/mdc/messagebundle_sk.properties +45 -4
  161. package/src/sap/ui/mdc/messagebundle_sl.properties +45 -4
  162. package/src/sap/ui/mdc/messagebundle_sv.properties +47 -6
  163. package/src/sap/ui/mdc/messagebundle_th.properties +48 -7
  164. package/src/sap/ui/mdc/messagebundle_tr.properties +45 -4
  165. package/src/sap/ui/mdc/messagebundle_uk.properties +49 -8
  166. package/src/sap/ui/mdc/messagebundle_vi.properties +45 -4
  167. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +46 -5
  168. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +45 -4
  169. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +19 -5
  170. package/src/sap/ui/mdc/mixin/DelegateMixin.js +2 -2
  171. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +16 -11
  172. package/src/sap/ui/mdc/mixin/PromiseMixin.js +2 -3
  173. package/src/sap/ui/mdc/odata/TypeUtil.js +1 -1
  174. package/src/sap/ui/mdc/odata/v4/ChartDelegate.js +29 -483
  175. package/src/sap/ui/mdc/odata/v4/{ChartPropertyHelperNew.js → ChartPropertyHelper.js} +5 -5
  176. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +160 -116
  177. package/src/sap/ui/mdc/odata/v4/TypeUtil.js +1 -1
  178. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +1 -1
  179. package/src/sap/ui/mdc/odata/v4/util/DelegateUtil.js +1 -1
  180. package/src/sap/ui/mdc/odata/v4/vizChart/{ChartDelegateNew.js → ChartDelegate.js} +215 -116
  181. package/src/sap/ui/mdc/p13n/Engine.js +61 -20
  182. package/src/sap/ui/mdc/p13n/FlexUtil.js +11 -118
  183. package/src/sap/ui/mdc/p13n/P13nBuilder.js +8 -8
  184. package/src/sap/ui/mdc/p13n/PersistenceProvider.js +21 -10
  185. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  186. package/src/sap/ui/mdc/p13n/StateUtil.js +40 -6
  187. package/src/sap/ui/mdc/p13n/UIManager.js +15 -12
  188. package/src/sap/ui/mdc/p13n/modification/FlexModificationHandler.js +4 -1
  189. package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +9 -6
  190. package/src/sap/ui/mdc/p13n/{DefaultProviderRegistry.js → modules/DefaultProviderRegistry.js} +2 -2
  191. package/src/sap/ui/mdc/p13n/modules/StateHandlerRegistry.js +86 -0
  192. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +19 -3
  193. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +1092 -48
  194. package/src/sap/ui/mdc/p13n/panels/LinkSelectionPanel.js +72 -0
  195. package/src/sap/ui/mdc/p13n/panels/ListView.js +6 -2
  196. package/src/sap/ui/mdc/p13n/subcontroller/AdaptFiltersController.js +6 -5
  197. package/src/sap/ui/mdc/p13n/subcontroller/AggregateController.js +1 -1
  198. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +156 -11
  199. package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +15 -26
  200. package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +6 -5
  201. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +14 -7
  202. package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +173 -0
  203. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +10 -17
  204. package/src/sap/ui/mdc/table/Column.js +35 -10
  205. package/src/sap/ui/mdc/table/CreationRow.js +14 -13
  206. package/src/sap/ui/mdc/table/GridTableType.js +13 -13
  207. package/src/sap/ui/mdc/table/PropertyHelper.js +64 -27
  208. package/src/sap/ui/mdc/table/ResponsiveTableType.js +26 -29
  209. package/src/sap/ui/mdc/table/RowSettings.js +7 -5
  210. package/src/sap/ui/mdc/table/TableTypeBase.js +6 -6
  211. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +15 -71
  212. package/src/sap/ui/mdc/themes/base/Chart.less +3 -0
  213. package/src/sap/ui/mdc/themes/base/FieldBase.less +0 -5
  214. package/src/sap/ui/mdc/themes/base/TokenDisplay.less +89 -0
  215. package/src/sap/ui/mdc/themes/base/TokenizerDisplay.less +90 -0
  216. package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +15 -4
  217. package/src/sap/ui/mdc/themes/base/library.source.less +3 -0
  218. package/src/sap/ui/mdc/ui/Container.js +2 -2
  219. package/src/sap/ui/mdc/ui/ContainerItem.js +2 -2
  220. package/src/sap/ui/mdc/util/Common.js +1 -1
  221. package/src/sap/ui/mdc/util/DateUtil.js +1 -1
  222. package/src/sap/ui/mdc/util/FilterUtil.js +1 -1
  223. package/src/sap/ui/mdc/util/FormatUtil.js +3 -3
  224. package/src/sap/ui/mdc/util/IdentifierUtil.js +6 -6
  225. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  226. package/src/sap/ui/mdc/util/PropertyHelper.js +148 -325
  227. package/src/sap/ui/mdc/util/TypeUtil.js +5 -4
  228. package/src/sap/ui/mdc/valuehelp/Dialog.js +12 -8
  229. package/src/sap/ui/mdc/valuehelp/Popover.js +14 -2
  230. package/src/sap/ui/mdc/valuehelp/base/Container.js +33 -1
  231. package/src/sap/ui/mdc/valuehelp/base/Content.js +36 -5
  232. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +2 -1
  233. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +43 -15
  234. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +2 -1
  235. package/src/sap/ui/mdc/valuehelp/content/Bool.js +2 -1
  236. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +28 -32
  237. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +11 -5
  238. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +50 -10
  239. package/src/sap/ui/mdc/valuehelp/content/MTable.js +57 -26
  240. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +3 -1
  241. package/test/sap/ui/mdc/testutils/opa/actions/OpenContextMenu.js +3 -3
  242. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ActionsBase.js +3 -3
  243. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ActionsViz.js +0 -0
  244. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/AssertionsBase.js +1 -1
  245. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/AssertionsViz.js +0 -0
  246. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ChartNew.js +0 -0
  247. package/test/sap/ui/mdc/testutils/opa/chart/TestObjects.js +289 -0
  248. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +7 -7
  249. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +9 -9
  250. package/test/sap/ui/mdc/testutils/opa/filterbar/Util.js +12 -11
  251. package/test/sap/ui/mdc/testutils/opa/link/Actions.js +85 -0
  252. package/test/sap/ui/mdc/testutils/opa/link/Assertions.js +79 -0
  253. package/test/sap/ui/mdc/testutils/opa/link/TestObjects.js +112 -0
  254. package/test/sap/ui/mdc/testutils/opa/link/waitForLink.js +50 -0
  255. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +362 -233
  256. package/test/sap/ui/mdc/testutils/opa/p13n/Util.js +27 -26
  257. package/test/sap/ui/mdc/testutils/opa/valueHelp/Actions.js +54 -0
  258. package/test/sap/ui/mdc/testutils/opa/valueHelp/Assertions.js +5 -0
  259. package/test/sap/ui/mdc/testutils/opa/valueHelp/TestObjects.js +40 -0
  260. package/test/sap/ui/mdc/testutils/opa/valueHelp/Util.js +28 -0
  261. package/src/sap/ui/mdc/ChartDelegateNew.js +0 -395
  262. package/src/sap/ui/mdc/ChartNew.js +0 -1114
  263. package/src/sap/ui/mdc/ChartNewRenderer.js +0 -91
  264. package/src/sap/ui/mdc/chart/DimensionItem.js +0 -281
  265. package/src/sap/ui/mdc/chart/MeasureItem.js +0 -318
  266. package/src/sap/ui/mdc/chart/MetadataDelegate.js +0 -31
  267. package/src/sap/ui/mdc/chart/SelectionHandler.js +0 -127
  268. package/src/sap/ui/mdc/chart/ToolbarHandler.js +0 -328
  269. package/src/sap/ui/mdc/chartNew/ChartTypeButtonNew.js +0 -295
  270. package/src/sap/ui/mdc/chartNew/DrillStackHandlerNew.js +0 -212
  271. package/src/sap/ui/mdc/chartNew/ItemNew.js +0 -72
  272. package/src/sap/ui/mdc/chartNew/SelectionDetailsActionsNew.js +0 -34
  273. package/src/sap/ui/mdc/designtime/chart/ChartNew.designtime.js +0 -91
  274. package/src/sap/ui/mdc/link/SelectionDialog.control.xml +0 -66
  275. package/src/sap/ui/mdc/link/SelectionDialog.js +0 -213
  276. package/src/sap/ui/mdc/link/SelectionDialogItem.js +0 -86
  277. package/src/sap/ui/mdc/odata/v4/ChartDelegateNew.js +0 -35
  278. package/src/sap/ui/mdc/p13n/panels/ChartItemPanelNew.js +0 -1171
  279. package/src/sap/ui/mdc/p13n/panels/GroupPanel.js +0 -111
  280. package/src/sap/ui/mdc/p13n/panels/QueryPanel.js +0 -322
  281. package/src/sap/ui/mdc/p13n/panels/SortQueryPanel.js +0 -133
  282. package/src/sap/ui/mdc/p13n/panels/Wrapper.js +0 -203
@@ -35,26 +35,46 @@ sap.ui.define([
35
35
  var TableMap = new window.WeakMap(); // To store table-related information for easy access in the delegate.
36
36
 
37
37
  /**
38
- * Delegate class for sap.ui.mdc.Table and ODataV4.
38
+ * Delegate for {@link sap.ui.mdc.Table} and <code>ODataV4</code>.
39
39
  * Enables additional analytical capabilities.
40
- * <b>Note:</b> The class is experimental and the API/behavior is not finalized.
41
40
  *
42
41
  * @author SAP SE
42
+ * @namespace
43
+ * @alias module:sap/ui/mdc/odata/v4/TableDelegate
44
+ * @extends module:sap/ui/mdc/TableDelegate
45
+ * @experimental
43
46
  * @private
44
47
  * @ui5-restricted sap.fe
45
48
  * @MDC_PUBLIC_CANDIDATE
46
49
  * @since 1.85
47
- * @alias sap.ui.mdc.odata.v4.TableDelegate
48
50
  */
49
51
  var Delegate = Object.assign({}, TableDelegate);
50
52
 
51
53
  /**
52
- * Fetches the model-specific property helper class or instance.
54
+ * Fetches the model-specific <code>PropertyHelper</code> class or instance.
53
55
  *
54
- * @param {sap.ui.mdc.Table} oTable Instance of the MDC table
55
- * @param {object[]} aProperties The property infos
56
+ * <b>Note:</b> The <code>PropertyHelper</code> class adds the extension of a property to the reserved attribute "extension". It is not allowed to
57
+ * add an <code>extension</code> attribute in the standard <code>PropertyInfo</code>.
58
+ *
59
+ * @example <caption>Initializing a <code>PropertyHelper</code> with extensions:</caption>
60
+ * new PropertyHelper(
61
+ * [{
62
+ * name: "propA",
63
+ * label: "Property A",
64
+ * extension: {
65
+ * messageType: "Success"
66
+ * }
67
+ * }, {
68
+ * name: "propB",
69
+ * label: "Property B"
70
+ * }]
71
+ * )
72
+ *
73
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
74
+ * @param {object[]} aProperties <code>PropertyInfo</code>
56
75
  * @param {Promise<object<string, object>|null>} mExtensions The property extensions
57
- * @returns {Promise<sap.ui.mdc.table.V4AnalyticsPropertyHelper>} A promise that resolves with the property helper class or instance
76
+ * @returns {Promise<sap.ui.mdc.table.V4AnalyticsPropertyHelper>} A <code>Promise</code> that resolves with the <code>PropertyHelper</code> class
77
+ * or instance
58
78
  * @private
59
79
  * @ui5-restricted sap.ui.mdc
60
80
  */
@@ -66,10 +86,14 @@ sap.ui.define([
66
86
 
67
87
  /**
68
88
  * Fetches the property extensions.
69
- * TODO: document structure of the extension
70
89
  *
71
- * @param {sap.ui.mdc.Table} oTable Instance of the MDC table
72
- * @param {object[]} aProperties The property infos
90
+ * <b>Note:</b> Property extensions add model-specific information. To ensure a clear separation from the standard property information, the
91
+ * extensions need to be passed separately to the constructor, together with their attribute metadata. An extension has to be provided as a
92
+ * key-value pair, where the key is the name of the property and the value is the extension of this property. It is not allowed to provide
93
+ * extensions without the corresponding attribute metadata.
94
+ *
95
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
96
+ * @param {object[]} aProperties <code>PropertyInfo</code>
73
97
  * @returns {Promise<object<string, object>|null>} Key-value map, where the key is the name of the property, and the value is the extension
74
98
  * @protected
75
99
  */
@@ -78,12 +102,12 @@ sap.ui.define([
78
102
  };
79
103
 
80
104
  /**
81
- * Retrieves the relevant metadata that will be used for the table binding, and returns the property info array.
82
- * If not overriden, this method return the same as <code>fetchProperties</code>.
83
- * When overridding, make sure the returned result is consistent with what is returned by <code>fetchProperties</code>.
105
+ * Retrieves the relevant metadata that will be used for the table binding, and returns the <code>PropertyInfo</code> array.
106
+ * If it is not overridden, this method returns the same as <code>fetchProperties</code>.
107
+ * When overriding the method make sure the returned result is consistent with what is returned by <code>fetchProperties</code>.
84
108
  *
85
- * @param {Object} oControl MDC Control instance
86
- * @returns {Promise} Once resolved, an array of property info objects is returned
109
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
110
+ * @returns {Promise} Once resolved, an array of <code>PropertyInfo</code> objects is returned
87
111
  * @protected
88
112
  */
89
113
  Delegate.fetchPropertiesForBinding = function(oTable) {
@@ -92,11 +116,11 @@ sap.ui.define([
92
116
 
93
117
  /**
94
118
  * Fetches the property extensions that will be used for the table binding.
95
- * If not overriden, this method eturn the same as <code>fetchPropertyExtensions</code>.
96
- * When overridding, make sure the returned result is consistent with what is returned by <code>fetchPropertyExtensions</code>.
119
+ * If it is not overridden, this method returns the same as <code>fetchPropertyExtensions</code>.
120
+ * When overriding the method make sure the returned result is consistent with what is returned by <code>fetchPropertyExtensions</code>.
97
121
  *
98
- * @param {sap.ui.mdc.Table} oTable Instance of the MDC table
99
- * @param {object[]} aProperties The property infos
122
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
123
+ * @param {object[]} aProperties <code>PropertyInfo</code>
100
124
  * @returns {Promise<object<string, object>|null>} Key-value map, where the key is the name of the property, and the value is the extension
101
125
  * @protected
102
126
  */
@@ -107,10 +131,11 @@ sap.ui.define([
107
131
  /**
108
132
  * Formats the title text of a group header row of the table.
109
133
  *
110
- * @param {sap.ui.mdc.Table} oTable Instance of the MDC table
134
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
111
135
  * @param {sap.ui.model.Context} oContext Binding context
112
136
  * @param {string} sProperty The name of the grouped property
113
137
  * @returns {string | undefined} The group header title. If <code>undefined</code> is returned, the default group header title is set.
138
+ * @private
114
139
  */
115
140
  Delegate.formatGroupHeader = function(oTable, oContext, sProperty) {};
116
141
 
@@ -121,18 +146,17 @@ sap.ui.define([
121
146
 
122
147
  return configureInnerTable(oTable).then(function() {
123
148
  setAggregation(oTable);
124
- setUpTableObserver(oTable);
125
149
  });
126
150
  };
127
151
 
128
- Delegate.validateState = function(oControl, oState, sKey) {
152
+ Delegate.validateState = function(oTable, oState, sKey) {
129
153
  var oBaseStates = TableDelegate.validateState.apply(this, arguments);
130
154
  var oValidation;
131
155
 
132
156
  var oResourceBundle = sap.ui.getCore().getLibraryResourceBundle("sap.ui.mdc");
133
157
 
134
158
  if (sKey == "Sort" && oState.sorters) {
135
- if (!checkForValidity(oControl, oState.items, oState.sorters)) {
159
+ if (isAnalyticsEnabled(oTable) && !checkForValidity(oTable, oState.items, oState.sorters)) {
136
160
  oValidation = {
137
161
  validation: coreLibrary.MessageType.Information,
138
162
  message: oResourceBundle.getText("table.PERSONALIZATION_DIALOG_SORT_RESTRICTION")
@@ -142,9 +166,10 @@ sap.ui.define([
142
166
  var aAggregateProperties = Object.keys(oState.aggregations);
143
167
  var aAggregateGroupableProperties = [];
144
168
  var oListFormat = ListFormat.getInstance();
145
- aAggregateProperties.forEach(function(oItem) {
146
- if (oControl.getPropertyHelper().isGroupable(oItem)) {
147
- aAggregateGroupableProperties.push(oItem);
169
+ aAggregateProperties.forEach(function(sProperty) {
170
+ var oProperty = oTable.getPropertyHelper().getProperty(sProperty);
171
+ if (oProperty && oProperty.groupable) {
172
+ aAggregateGroupableProperties.push(sProperty);
148
173
  }
149
174
  });
150
175
 
@@ -158,11 +183,11 @@ sap.ui.define([
158
183
  var sMessage;
159
184
  var aAggregateProperties = oState.aggregations && Object.keys(oState.aggregations);
160
185
 
161
- if (!checkForValidity(oControl, oState.items, aAggregateProperties)) {
186
+ if (!checkForValidity(oTable, oState.items, aAggregateProperties)) {
162
187
  sMessage = oResourceBundle.getText("table.PERSONALIZATION_DIALOG_TOTAL_RESTRICTION");
163
188
  }
164
189
 
165
- if (!checkForValidity(oControl, oState.items, oState.sorters)) {
190
+ if (isAnalyticsEnabled(oTable) && !checkForValidity(oTable, oState.items, oState.sorters)) {
166
191
  sMessage = sMessage ? sMessage + "\n" + oResourceBundle.getText("table.PERSONALIZATION_DIALOG_SORT_RESTRICTION")
167
192
  : oResourceBundle.getText("table.PERSONALIZATION_DIALOG_SORT_RESTRICTION");
168
193
  }
@@ -184,14 +209,13 @@ sap.ui.define([
184
209
  * <b>Note:</b> To remove a binding info parameter, the value must be set to <code>undefined</code>. For more information, see
185
210
  * {@link sap.ui.model.odata.v4.ODataListBinding#changeParameters}.
186
211
  *
187
- * @param {sap.ui.mdc.Table} oMDCTable The MDC table instance
188
- * @param {object} oDelegatePayload The delegate payload
212
+ * @param {sap.ui.mdc.Table} oTable Instance of the MDC table
189
213
  * @param {sap.ui.base.ManagedObject.AggregationBindingInfo} oBindingInfo The binding info object to be used to bind the table to the model
190
214
  * @function
191
- * @name sap.ui.mdc.odata.v4.TableDelegate.updateBindingInfo
215
+ * @name module:sap/ui/mdc/odata/v4/TableDelegate.updateBindingInfo
192
216
  * @abstract
193
217
  */
194
- //Delegate.updateBindingInfo = function(oTable, oDelegatePayload, oBindingInfo) { };
218
+ //Delegate.updateBindingInfo = function(oTable, oBindingInfo) { };
195
219
 
196
220
  /**
197
221
  * Updates the row binding of the table if possible, rebinds otherwise.
@@ -202,15 +226,15 @@ sap.ui.define([
202
226
  * <code>model</code>... must be provided in the {@link #updateBindingInfo updateBindingInfo} method always,
203
227
  * and those keys must not be changed conditionally.
204
228
  *
205
- * @param {sap.ui.mdc.Table} oMDCTable The MDC table instance
229
+ * @param {sap.ui.mdc.Table} oMDCTable Instance of the table
206
230
  * @param {sap.ui.base.ManagedObject.AggregationBindingInfo} oBindingInfo The binding info object to be used to bind the table to the model.
207
231
  * @param {sap.ui.model.ListBinding} [oBinding] The binding instance of the table
208
232
  * @protected
209
233
  * @override
210
234
  */
211
235
  Delegate.updateBinding = function(oTable, oBindingInfo, oBinding) {
212
- if (!oBinding || oBinding.hasPendingChanges() || oBinding.getPath() != oBindingInfo.path) {
213
- this.rebindTable(oTable, oBindingInfo);
236
+ if (!oBinding || oBinding.getPath() != oBindingInfo.path) {
237
+ this.rebind(oTable, oBindingInfo);
214
238
  return;
215
239
  }
216
240
 
@@ -228,7 +252,7 @@ sap.ui.define([
228
252
  oBinding.filter(oBindingInfo.filters, "Application");
229
253
  oBinding.sort(oBindingInfo.sorter);
230
254
  } catch (e) {
231
- this.rebindTable(oTable, oBindingInfo);
255
+ this.rebind(oTable, oBindingInfo);
232
256
  if (oRootBinding == oBinding) {
233
257
  // If we resume before the rebind, you get an extra request therefore we must
234
258
  // resume after rebind, but only if the list binding was not the root binding.
@@ -245,23 +269,37 @@ sap.ui.define([
245
269
  * @override
246
270
  * @inheritDoc
247
271
  */
248
- Delegate.rebindTable = function (oTable, oBindingInfo) {
272
+ Delegate.rebind = function (oTable, oBindingInfo) {
249
273
  setAggregation(oTable, oBindingInfo);
250
- TableDelegate.rebindTable(oTable, oBindingInfo);
274
+ TableDelegate.rebind(oTable, oBindingInfo);
251
275
  };
252
276
 
253
277
  Delegate.addColumnMenuItems = function(oTable, oMDCColumn) {
254
- if (!isInnerTableReadyForAnalytics(oTable)) {
278
+ var oPropertyHelper = oTable.getPropertyHelper();
279
+ var oProperty = oPropertyHelper.getProperty(oMDCColumn.getDataProperty());
280
+ var aItems = [];
281
+
282
+ if (!oProperty) {
255
283
  return [];
256
284
  }
257
285
 
258
- var oPropertyHelper = oTable.getPropertyHelper();
259
- var aGroupProperties = oPropertyHelper.getGroupableProperties(oMDCColumn.getDataProperty());
260
- var aAggregateProperties = oPropertyHelper.getAggregatableProperties(oMDCColumn.getDataProperty());
261
- var oPopover = oTable._oPopover;
262
- var oAggregatePopoverItem;
263
- var oGroupPopoverItem;
286
+ if (oTable.isGroupingEnabled() && supportsGrouping(oTable)) {
287
+ var aGroupProperties = oProperty.getGroupableProperties();
288
+
289
+ if (aGroupProperties.length > 0) {
290
+ aItems.push(createGroupPopoverItem(aGroupProperties, oMDCColumn));
291
+ }
292
+ }
293
+
294
+ if (oTable.isAggregationEnabled() && supportsAggregation(oTable)) {
295
+ var aAggregateProperties = oProperty.getAggregatableProperties();
264
296
 
297
+ if (aAggregateProperties.length > 0) {
298
+ aItems.push(createAggregatePopoverItem(aAggregateProperties, oMDCColumn));
299
+ }
300
+ }
301
+
302
+ var oPopover = oTable._oPopover;
265
303
  if (oPopover) {
266
304
  oPopover.getItems().forEach(function(oItem, iIndex, aItems) {
267
305
  var sLabel = oItem.getLabel();
@@ -277,22 +315,14 @@ sap.ui.define([
277
315
  });
278
316
  }
279
317
 
280
- if (oTable.isGroupingEnabled() && aGroupProperties && aGroupProperties.length > 0) {
281
- oGroupPopoverItem = createGroupPopoverItem(aGroupProperties, oMDCColumn);
282
- }
283
-
284
- if (oTable.isAggregationEnabled() && aAggregateProperties && aAggregateProperties.length > 0) {
285
- oAggregatePopoverItem = createAggregatePopoverItem(aAggregateProperties, oMDCColumn);
286
- }
287
-
288
- return [oGroupPopoverItem, oAggregatePopoverItem];
318
+ return aItems;
289
319
  };
290
320
 
291
321
  function createGroupPopoverItem(aGroupProperties, oMDCColumn) {
292
322
  var aGroupChildren = aGroupProperties.map(function(oGroupProperty) {
293
323
  return new Item({
294
- text: oGroupProperty.getLabel(),
295
- key: oGroupProperty.getName()
324
+ text: oGroupProperty.label,
325
+ key: oGroupProperty.name
296
326
  });
297
327
  });
298
328
 
@@ -312,8 +342,8 @@ sap.ui.define([
312
342
  function createAggregatePopoverItem(aAggregateProperties, oMDCColumn) {
313
343
  var aAggregateChildren = aAggregateProperties.map(function(oAggregateProperty) {
314
344
  return new Item({
315
- text: oAggregateProperty.getLabel(),
316
- key: oAggregateProperty.getName()
345
+ text: oAggregateProperty.label,
346
+ key: oAggregateProperty.name
317
347
  });
318
348
  });
319
349
 
@@ -401,30 +431,36 @@ sap.ui.define([
401
431
  /**
402
432
  * Updates the aggregation info if the plugin is enabled.
403
433
  *
404
- * @param {sap.ui.mdc.Table} oTable Instance of the MDC table
434
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
405
435
  * @param {sap.ui.base.ManagedObject.AggregationBindingInfo} [oBindingInfo] The binding info object to be used to bind the table to the model
406
436
  */
407
437
  function setAggregation(oTable, oBindingInfo) {
408
- if (isInnerTableReadyForAnalytics(oTable)) {
409
- var aAggregates = Object.keys(oTable._getAggregatedProperties());
410
- var sSearch = oBindingInfo && oBindingInfo.parameters["$search"] || undefined;
411
- if (sSearch ) {
412
- delete oBindingInfo.parameters["$search"];
413
- }
414
- var aGroupLevels = oTable._getGroupedProperties().map(function (mGroupLevel) {
415
- return mGroupLevel.name;
416
- });
417
- var oAggregationInfo = {
418
- visible: getVisibleProperties(oTable),
419
- groupLevels: aGroupLevels,
420
- grandTotal: aAggregates,
421
- subtotals: aAggregates,
422
- columnState: getColumnState(oTable, aAggregates),
423
- search: sSearch
424
- };
438
+ var oPlugin = TableMap.get(oTable).plugin;
439
+
440
+ if (!oPlugin || oPlugin.isDestroyed()) {
441
+ return;
442
+ }
443
+
444
+ var aGroupLevels = oTable._getGroupedProperties().map(function (mGroupLevel) {
445
+ return mGroupLevel.name;
446
+ });
447
+ var aAggregates = Object.keys(oTable._getAggregatedProperties());
448
+ var sSearch = oBindingInfo ? oBindingInfo.parameters["$search"] : undefined;
425
449
 
426
- TableMap.get(oTable).plugin.setAggregationInfo(oAggregationInfo);
450
+ if (sSearch ) {
451
+ delete oBindingInfo.parameters["$search"];
427
452
  }
453
+
454
+ var oAggregationInfo = {
455
+ visible: getVisibleProperties(oTable),
456
+ groupLevels: aGroupLevels,
457
+ grandTotal: aAggregates,
458
+ subtotals: aAggregates,
459
+ columnState: getColumnState(oTable, aAggregates),
460
+ search: sSearch
461
+ };
462
+
463
+ oPlugin.setAggregationInfo(oAggregationInfo);
428
464
  }
429
465
 
430
466
  function getVisibleProperties(oTable) {
@@ -439,7 +475,7 @@ sap.ui.define([
439
475
  }
440
476
 
441
477
  if (oProperty.isComplex()) {
442
- // Add the names of all related (simple) propertyInfos in the list.
478
+ // Add the names of all related (simple) PropertyInfo in the list.
443
479
  oProperty.getReferencedProperties().forEach(function(oProperty) {
444
480
  oVisiblePropertiesSet.add(oProperty.name);
445
481
  });
@@ -515,10 +551,8 @@ sap.ui.define([
515
551
  var aUnitProperties = [];
516
552
 
517
553
  aProperties.forEach(function(oProperty) {
518
- var oUnitProperty = oProperty ? oProperty.getUnitProperty() : null;
519
-
520
- if (oUnitProperty) {
521
- aUnitProperties.push(oUnitProperty);
554
+ if (oProperty.unitProperty) {
555
+ aUnitProperties.push(oProperty.unitProperty);
522
556
  }
523
557
  });
524
558
 
@@ -554,9 +588,9 @@ sap.ui.define([
554
588
  /**
555
589
  * Compares the message type and returns the message with higher priority.
556
590
  *
557
- * @param {Object} oBaseState message set by the base table delegate.
558
- * @param {Object} oValidationState message set by the odata v4 delegate.
559
- * @return {Object} A message with higher priority.
591
+ * @param {Object} oBaseState Message set by the base <code>TableDelegate</code>
592
+ * @param {Object} oValidationState Message set by the <code>ODataV4Delegate</code>
593
+ * @returns {Object} The message with higher priority
560
594
  * @private
561
595
  */
562
596
  function mergeValidation(oBaseState, oValidationState) {
@@ -570,39 +604,56 @@ sap.ui.define([
570
604
  }
571
605
 
572
606
  /**
573
- * Configures the inner table to support the p13n settings of the MDC table.
607
+ * Checks whether the inner table supports grouping.
574
608
  *
575
- * @param {sap.ui.mdc.Table} oTable Instance of the MDC table
576
- * @return {Promise} A promise that revolves when the inner table is configured
609
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
610
+ * @returns {boolean} Whether the inner table supports grouping
577
611
  */
578
- function configureInnerTable(oTable) {
579
- return oTable._isOfType(TableType.Table) ? configureGridTable(oTable) : configureResponsiveTable(oTable);
612
+ function supportsGrouping(oTable) {
613
+ return oTable._isOfType(TableType.Table);
580
614
  }
581
615
 
582
616
  /**
583
- * Checks whether the inner table supports the "analytical" p13n modes <code>Group</code> and <code>Aggregate</code>.
617
+ * Checks whether the inner table supports aggregation.
584
618
  *
585
- * @param {sap.ui.mdc.Table} oTable Instance of the MDC table
586
- * @return {boolean} Whether the inner table supports the "analytical" p13n modes
619
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
620
+ * @returns {boolean} Whether the inner table supports aggregation
587
621
  */
588
- function isInnerTableReadyForAnalytics(oTable) {
589
- if (oTable._isOfType(TableType.Table)) {
590
- var oPlugin = TableMap.get(oTable).plugin;
591
- return oPlugin != null && !oPlugin.bIsDestroyed;
592
- } else {
593
- return false;
594
- }
622
+ function supportsAggregation(oTable) {
623
+ return oTable._isOfType(TableType.Table);
595
624
  }
596
625
 
597
- function configureGridTable(oTable) {
598
- return isAnalyticsEnabled(oTable) ? enableGridTablePlugin(oTable) : disableGridTablePlugin(oTable);
626
+ /**
627
+ * Checks whether aggregation features of the model are used.
628
+ *
629
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
630
+ * @returns {boolean} Whether aggregation features are used
631
+ * @see sap.ui.model.odata.v4.ODataListBinding#setAggregation
632
+ */
633
+ function isAnalyticsEnabled(oTable) {
634
+ return (oTable.isGroupingEnabled() || oTable.isAggregationEnabled()) && oTable._isOfType(TableType.Table);
635
+ }
636
+
637
+ /**
638
+ * Configures the inner table to support the personalization settings of the table.
639
+ *
640
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
641
+ * @return {Promise} A <code>Promise</code> that resolves when the inner table is configured
642
+ */
643
+ function configureInnerTable(oTable) {
644
+ if (oTable._isOfType(TableType.Table)) {
645
+ return (isAnalyticsEnabled(oTable) ? enableGridTablePlugin(oTable) : disableGridTablePlugin(oTable)).then(function() {
646
+ return setUpTableObserver(oTable);
647
+ });
648
+ }
649
+ return Promise.resolve();
599
650
  }
600
651
 
601
652
  function enableGridTablePlugin(oTable) {
602
653
  var mTableMap = TableMap.get(oTable);
603
654
  var oPlugin = mTableMap.plugin;
604
655
 
605
- if (oPlugin && !oPlugin.bIsDestroyed) {
656
+ if (oPlugin && !oPlugin.isDestroyed()) {
606
657
  oPlugin.activate();
607
658
  return Promise.resolve();
608
659
  }
@@ -640,10 +691,6 @@ sap.ui.define([
640
691
  return Promise.resolve();
641
692
  }
642
693
 
643
- function configureResponsiveTable(oTable) {
644
- return Promise.resolve();
645
- }
646
-
647
694
  function fetchPropertyHelperForBinding(oTable) {
648
695
  var mTableMap = TableMap.get(oTable);
649
696
 
@@ -678,20 +725,17 @@ sap.ui.define([
678
725
  if (mTableMap.oPropertyHelperForBinding) {
679
726
  mTableMap.oPropertyHelperForBinding.destroy();
680
727
  }
728
+
681
729
  } else {
682
730
  configureInnerTable(oTable);
683
731
  }
684
732
  });
685
- }
686
-
687
- mTableMap.observer.observe(oTable, {
688
- properties: ["p13nMode"],
689
- destroy: true
690
- });
691
- }
692
733
 
693
- function isAnalyticsEnabled(oTable) {
694
- return oTable.isGroupingEnabled() || oTable.isAggregationEnabled();
734
+ mTableMap.observer.observe(oTable, {
735
+ properties: ["p13nMode"],
736
+ destroy: true
737
+ });
738
+ }
695
739
  }
696
740
 
697
741
  return Delegate;
@@ -77,4 +77,4 @@ sap.ui.define(['sap/ui/mdc/odata/TypeUtil', 'sap/ui/mdc/enum/BaseType'], functio
77
77
 
78
78
  return ODataV4TypeUtil;
79
79
 
80
- }, /* bExport= */ true);
80
+ });
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  var ODataV4ValueHelpDelegate = Object.assign({}, ValueHelpDelegate);
17
17
 
18
18
  ODataV4ValueHelpDelegate.isSearchSupported = function(oPayload, oListBinding) {
19
- return true; // only on V4
19
+ return !!oListBinding.changeParameters;
20
20
  };
21
21
 
22
22
  var _waitForBindingData = function (oBinding) {
@@ -110,4 +110,4 @@ sap.ui.define(['sap/ui/mdc/util/FilterUtil',
110
110
 
111
111
 
112
112
  return DelegateUtil;
113
- }, /* bExport= */true);
113
+ });