@openui5/sap.ui.mdc 1.98.0 → 1.101.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 (267) hide show
  1. package/THIRDPARTY.txt +6 -6
  2. package/package.json +4 -4
  3. package/src/sap/ui/mdc/.library +1 -1
  4. package/src/sap/ui/mdc/ActionToolbar.js +6 -3
  5. package/src/sap/ui/mdc/AggregationBaseDelegate.js +1 -1
  6. package/src/sap/ui/mdc/Chart.js +186 -102
  7. package/src/sap/ui/mdc/ChartDelegate.js +85 -30
  8. package/src/sap/ui/mdc/ChartRenderer.js +1 -1
  9. package/src/sap/ui/mdc/Control.js +11 -6
  10. package/src/sap/ui/mdc/Element.js +10 -6
  11. package/src/sap/ui/mdc/Field.js +19 -4
  12. package/src/sap/ui/mdc/FilterBar.js +1 -1
  13. package/src/sap/ui/mdc/FilterBarDelegate.js +26 -0
  14. package/src/sap/ui/mdc/FilterField.js +41 -3
  15. package/src/sap/ui/mdc/Link.js +22 -4
  16. package/src/sap/ui/mdc/LinkDelegate.js +9 -7
  17. package/src/sap/ui/mdc/MultiValueField.js +30 -6
  18. package/src/sap/ui/mdc/Table.js +332 -316
  19. package/src/sap/ui/mdc/TableDelegate.js +146 -31
  20. package/src/sap/ui/mdc/ValueHelp.js +136 -624
  21. package/src/sap/ui/mdc/ValueHelpDelegate.js +154 -7
  22. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +2 -2
  23. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer.js +1 -1
  24. package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +1 -1
  25. package/src/sap/ui/mdc/chart/ChartToolbar.js +56 -11
  26. package/src/sap/ui/mdc/chart/ChartTypeButton.js +24 -10
  27. package/src/sap/ui/mdc/chart/DrillBreadcrumbs.js +9 -7
  28. package/src/sap/ui/mdc/chart/DrillStackHandler.js +6 -6
  29. package/src/sap/ui/mdc/chart/PropertyHelper.js +1 -1
  30. package/src/sap/ui/mdc/condition/Condition.js +14 -9
  31. package/src/sap/ui/mdc/condition/ConditionConverter.js +58 -6
  32. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  33. package/src/sap/ui/mdc/condition/FilterConverter.js +4 -2
  34. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +393 -68
  35. package/src/sap/ui/mdc/condition/Operator.js +14 -2
  36. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +78 -24
  37. package/src/sap/ui/mdc/condition/RangeOperator.js +5 -5
  38. package/src/sap/ui/mdc/designtime/Util.js +63 -0
  39. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +23 -30
  40. package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +6 -0
  41. package/src/sap/ui/mdc/designtime/filterbar/FilterBar.designtime.js +3 -1
  42. package/src/sap/ui/mdc/designtime/link/PanelItem.designtime.js +3 -1
  43. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +36 -9
  44. package/src/sap/ui/mdc/enum/PropagationReason.js +43 -0
  45. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  46. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  47. package/src/sap/ui/mdc/field/ConditionType.js +44 -13
  48. package/src/sap/ui/mdc/field/ConditionsType.js +3 -1
  49. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
  50. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  51. package/src/sap/ui/mdc/field/DefineConditionPanel.js +31 -9
  52. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +76 -19
  53. package/src/sap/ui/mdc/field/FieldBase.js +69 -14
  54. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +41 -19
  55. package/src/sap/ui/mdc/field/FieldHelpBase.js +2 -2
  56. package/src/sap/ui/mdc/field/FieldInfoBase.js +24 -10
  57. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  58. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  59. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  60. package/src/sap/ui/mdc/field/FieldValueHelp.js +9 -4
  61. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  62. package/src/sap/ui/mdc/field/FieldValueHelpDelegate.js +1 -1
  63. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +5 -4
  64. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +6 -4
  65. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +6 -3
  66. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +7 -7
  67. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  68. package/src/sap/ui/mdc/field/ListFieldHelp.js +1 -1
  69. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  70. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  71. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  72. package/src/sap/ui/mdc/field/TokenDisplay.js +70 -0
  73. package/src/sap/ui/mdc/field/TokenDisplayRenderer.js +24 -0
  74. package/src/sap/ui/mdc/field/TokenizerDisplay.js +80 -0
  75. package/src/sap/ui/mdc/field/TokenizerDisplayRenderer.js +69 -0
  76. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
  77. package/src/sap/ui/mdc/field/content/ContentFactory.js +10 -6
  78. package/src/sap/ui/mdc/field/content/DateContent.js +27 -19
  79. package/src/sap/ui/mdc/field/content/DateTimeContent.js +0 -6
  80. package/src/sap/ui/mdc/field/content/DefaultContent.js +35 -13
  81. package/src/sap/ui/mdc/field/content/LinkContent.js +1 -1
  82. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +137 -216
  83. package/src/sap/ui/mdc/filterbar/FilterBarBaseRenderer.js +1 -1
  84. package/src/sap/ui/mdc/filterbar/IFilterContainer.js +5 -0
  85. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +27 -2
  86. package/src/sap/ui/mdc/filterbar/aligned/FilterContainer.js +1 -0
  87. package/src/sap/ui/mdc/filterbar/aligned/FilterItemLayout.js +1 -0
  88. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +144 -64
  89. package/src/sap/ui/mdc/filterbar/p13n/FilterColumnLayout.js +2 -2
  90. package/src/sap/ui/mdc/filterbar/p13n/GroupContainer.js +7 -3
  91. package/src/sap/ui/mdc/filterbar/p13n/TableContainer.js +52 -14
  92. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +73 -23
  93. package/src/sap/ui/mdc/filterbar/vh/FilterContainer.js +1 -1
  94. package/src/sap/ui/mdc/flexibility/AggregationConfigFlex.js +48 -31
  95. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +7 -42
  96. package/src/sap/ui/mdc/flexibility/ChartItemFlex.js +36 -0
  97. package/src/sap/ui/mdc/flexibility/ChartTypeFlex.js +54 -0
  98. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +49 -12
  99. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  100. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  101. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +0 -1
  102. package/src/sap/ui/mdc/flexibility/PropertyInfoFlex.js +2 -85
  103. package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +5 -5
  104. package/src/sap/ui/mdc/library.js +41 -30
  105. package/src/sap/ui/mdc/link/ContactDetails.js +107 -23
  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/ContactDetailsRenderer.js +26 -0
  111. package/src/sap/ui/mdc/link/Factory.js +1 -1
  112. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  113. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  114. package/src/sap/ui/mdc/link/Log.js +1 -1
  115. package/src/sap/ui/mdc/link/Panel.js +205 -29
  116. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  117. package/src/sap/ui/mdc/link/PanelRenderer.js +26 -0
  118. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  119. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  120. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  121. package/src/sap/ui/mdc/messagebundle.properties +59 -6
  122. package/src/sap/ui/mdc/messagebundle_ar.properties +40 -6
  123. package/src/sap/ui/mdc/messagebundle_bg.properties +58 -24
  124. package/src/sap/ui/mdc/messagebundle_ca.properties +40 -6
  125. package/src/sap/ui/mdc/messagebundle_cs.properties +40 -6
  126. package/src/sap/ui/mdc/messagebundle_cy.properties +40 -6
  127. package/src/sap/ui/mdc/messagebundle_da.properties +40 -6
  128. package/src/sap/ui/mdc/messagebundle_de.properties +40 -6
  129. package/src/sap/ui/mdc/messagebundle_el.properties +39 -5
  130. package/src/sap/ui/mdc/messagebundle_en.properties +40 -6
  131. package/src/sap/ui/mdc/messagebundle_en_GB.properties +40 -6
  132. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +40 -6
  133. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +68 -9
  134. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +41 -7
  135. package/src/sap/ui/mdc/messagebundle_es.properties +40 -6
  136. package/src/sap/ui/mdc/messagebundle_es_MX.properties +41 -7
  137. package/src/sap/ui/mdc/messagebundle_et.properties +40 -6
  138. package/src/sap/ui/mdc/messagebundle_fi.properties +40 -6
  139. package/src/sap/ui/mdc/messagebundle_fr.properties +41 -7
  140. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +40 -6
  141. package/src/sap/ui/mdc/messagebundle_hi.properties +40 -6
  142. package/src/sap/ui/mdc/messagebundle_hr.properties +40 -6
  143. package/src/sap/ui/mdc/messagebundle_hu.properties +40 -6
  144. package/src/sap/ui/mdc/messagebundle_id.properties +40 -6
  145. package/src/sap/ui/mdc/messagebundle_it.properties +41 -7
  146. package/src/sap/ui/mdc/messagebundle_iw.properties +39 -5
  147. package/src/sap/ui/mdc/messagebundle_ja.properties +41 -7
  148. package/src/sap/ui/mdc/messagebundle_kk.properties +40 -6
  149. package/src/sap/ui/mdc/messagebundle_ko.properties +39 -5
  150. package/src/sap/ui/mdc/messagebundle_lt.properties +40 -6
  151. package/src/sap/ui/mdc/messagebundle_lv.properties +44 -10
  152. package/src/sap/ui/mdc/messagebundle_ms.properties +40 -6
  153. package/src/sap/ui/mdc/messagebundle_nl.properties +40 -6
  154. package/src/sap/ui/mdc/messagebundle_no.properties +40 -6
  155. package/src/sap/ui/mdc/messagebundle_pl.properties +40 -6
  156. package/src/sap/ui/mdc/messagebundle_pt.properties +41 -7
  157. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +40 -6
  158. package/src/sap/ui/mdc/messagebundle_ro.properties +40 -6
  159. package/src/sap/ui/mdc/messagebundle_ru.properties +40 -6
  160. package/src/sap/ui/mdc/messagebundle_sh.properties +43 -9
  161. package/src/sap/ui/mdc/messagebundle_sk.properties +40 -6
  162. package/src/sap/ui/mdc/messagebundle_sl.properties +41 -7
  163. package/src/sap/ui/mdc/messagebundle_sv.properties +41 -7
  164. package/src/sap/ui/mdc/messagebundle_th.properties +43 -9
  165. package/src/sap/ui/mdc/messagebundle_tr.properties +41 -7
  166. package/src/sap/ui/mdc/messagebundle_uk.properties +43 -9
  167. package/src/sap/ui/mdc/messagebundle_vi.properties +40 -6
  168. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +40 -6
  169. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +40 -6
  170. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +24 -15
  171. package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -141
  172. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -9
  173. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  174. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +354 -0
  175. package/src/sap/ui/mdc/odata/TypeUtil.js +1 -1
  176. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelper.js +70 -3
  177. package/src/sap/ui/mdc/odata/v4/FieldBaseDelegate.js +8 -6
  178. package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +116 -20
  179. package/src/sap/ui/mdc/odata/v4/ODataMetaModelUtil.js +2 -2
  180. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +32 -69
  181. package/src/sap/ui/mdc/odata/v4/TypeUtil.js +2 -4
  182. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +65 -5
  183. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegate.js +412 -326
  184. package/src/sap/ui/mdc/p13n/AdaptationProvider.js +1 -1
  185. package/src/sap/ui/mdc/p13n/Engine.js +169 -66
  186. package/src/sap/ui/mdc/p13n/FlexUtil.js +26 -19
  187. package/src/sap/ui/mdc/p13n/P13nBuilder.js +6 -6
  188. package/src/sap/ui/mdc/p13n/PropertyHelper.js +2 -2
  189. package/src/sap/ui/mdc/p13n/StateUtil.js +34 -51
  190. package/src/sap/ui/mdc/p13n/UIManager.js +21 -14
  191. package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +0 -174
  192. package/src/sap/ui/mdc/p13n/modules/DefaultProviderRegistry.js +2 -2
  193. package/src/sap/ui/mdc/p13n/modules/xConfigAPI.js +219 -0
  194. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +6 -6
  195. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +49 -27
  196. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +76 -16
  197. package/src/sap/ui/mdc/p13n/panels/FilterPanel.js +136 -0
  198. package/src/sap/ui/mdc/p13n/panels/GroupView.js +53 -28
  199. package/src/sap/ui/mdc/p13n/panels/LinkSelectionPanel.js +54 -18
  200. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +4 -7
  201. package/src/sap/ui/mdc/p13n/subcontroller/AdaptFiltersController.js +1 -2
  202. package/src/sap/ui/mdc/p13n/subcontroller/AggregateController.js +2 -2
  203. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +30 -2
  204. package/src/sap/ui/mdc/p13n/subcontroller/ChartTypeController.js +46 -0
  205. package/src/sap/ui/mdc/p13n/subcontroller/ColumnWidthController.js +37 -6
  206. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +40 -12
  207. package/src/sap/ui/mdc/p13n/subcontroller/GroupController.js +9 -2
  208. package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +1 -0
  209. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +4 -4
  210. package/src/sap/ui/mdc/table/Column.js +271 -132
  211. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  212. package/src/sap/ui/mdc/table/GridTableType.js +75 -27
  213. package/src/sap/ui/mdc/table/PropertyHelper.js +71 -95
  214. package/src/sap/ui/mdc/table/ResponsiveTableType.js +121 -40
  215. package/src/sap/ui/mdc/table/RowActionItem.js +119 -0
  216. package/src/sap/ui/mdc/table/RowSettings.js +42 -1
  217. package/src/sap/ui/mdc/table/TableSettings.js +10 -22
  218. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +2 -2
  219. package/src/sap/ui/mdc/table/menu/Item.js +78 -0
  220. package/src/sap/ui/mdc/table/menu/ItemContainer.js +60 -0
  221. package/src/sap/ui/mdc/table/menu/QuickActionContainer.js +151 -0
  222. package/src/sap/ui/mdc/themes/base/Chart.less +6 -0
  223. package/src/sap/ui/mdc/themes/base/TokenDisplay.less +89 -0
  224. package/src/sap/ui/mdc/themes/base/TokenizerDisplay.less +90 -0
  225. package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +4 -3
  226. package/src/sap/ui/mdc/themes/base/library.source.less +2 -0
  227. package/src/sap/ui/mdc/ui/Container.js +0 -240
  228. package/src/sap/ui/mdc/util/DateUtil.js +32 -7
  229. package/src/sap/ui/mdc/util/FilterUtil.js +2 -2
  230. package/src/sap/ui/mdc/util/FormatUtil.js +2 -2
  231. package/src/sap/ui/mdc/util/IdentifierUtil.js +7 -7
  232. package/src/sap/ui/mdc/util/PromiseCache.js +6 -2
  233. package/src/sap/ui/mdc/util/PropertyHelper.js +205 -76
  234. package/src/sap/ui/mdc/util/TypeUtil.js +1 -1
  235. package/src/sap/ui/mdc/valuehelp/Dialog.js +234 -44
  236. package/src/sap/ui/mdc/valuehelp/Popover.js +7 -4
  237. package/src/sap/ui/mdc/valuehelp/base/Container.js +63 -48
  238. package/src/sap/ui/mdc/valuehelp/base/Content.js +35 -16
  239. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +1 -1
  240. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +161 -284
  241. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +4 -4
  242. package/src/sap/ui/mdc/valuehelp/content/Bool.js +4 -4
  243. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +4 -4
  244. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +16 -13
  245. package/src/sap/ui/mdc/valuehelp/content/ListCollection.js +205 -0
  246. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +67 -66
  247. package/src/sap/ui/mdc/valuehelp/content/MTable.js +94 -185
  248. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +2 -1
  249. package/test/sap/ui/mdc/testutils/opa/chart/TestObjects.js +6 -5
  250. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +4 -5
  251. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +8 -9
  252. package/test/sap/ui/mdc/testutils/opa/link/TestObjects.js +8 -8
  253. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +43 -27
  254. package/test/sap/ui/mdc/testutils/opa/valueHelp/Actions.js +54 -0
  255. package/test/sap/ui/mdc/testutils/opa/valueHelp/Assertions.js +5 -0
  256. package/test/sap/ui/mdc/testutils/opa/valueHelp/TestObjects.js +40 -0
  257. package/test/sap/ui/mdc/testutils/opa/valueHelp/Util.js +28 -0
  258. package/src/sap/ui/mdc/filterbar/vh/GenericFilterBarDelegate.js +0 -150
  259. package/src/sap/ui/mdc/link/ContactDetails.control.xml +0 -29
  260. package/src/sap/ui/mdc/link/Panel.control.xml +0 -36
  261. package/src/sap/ui/mdc/link/PanelListItem.control.xml +0 -24
  262. package/src/sap/ui/mdc/link/PanelListItem.js +0 -101
  263. package/src/sap/ui/mdc/p13n/panels/BasePanel.js +0 -721
  264. package/src/sap/ui/mdc/p13n/panels/ListView.js +0 -408
  265. package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +0 -92
  266. package/src/sap/ui/mdc/p13n/panels/SortPanel.js +0 -150
  267. package/src/sap/ui/mdc/ui/ContainerItem.js +0 -79
@@ -163,8 +163,8 @@ sap.ui.define(["sap/ui/mdc/util/TypeUtil"], function(TypeUtil) {
163
163
 
164
164
  /**
165
165
  * Checks whether the thresholds are dynamic or constant.
166
- * @param {object} the threshold skeleton
167
- * @param {object} the UI.DataPoint.CriticalityCalculation annotation
166
+ * @param {object} oThresholds the threshold skeleton
167
+ * @param {object} oCriticalityCalculation the UI.DataPoint.CriticalityCalculation annotation
168
168
  * @returns {boolean} <code>true</code> if the threshold should be supplied as ConstantThresholds, <code>false</code> if the threshold should
169
169
  * be supplied as DynamicThresholds
170
170
  * @private
@@ -6,6 +6,7 @@
6
6
 
7
7
  sap.ui.define([
8
8
  "../../TableDelegate",
9
+ "../../table/V4AnalyticsPropertyHelper",
9
10
  "../../util/loadModules",
10
11
  "../../library",
11
12
  "sap/m/ColumnPopoverSelectListItem",
@@ -17,6 +18,7 @@ sap.ui.define([
17
18
  "sap/ui/base/ManagedObjectObserver"
18
19
  ], function(
19
20
  TableDelegate,
21
+ V4AnalyticsPropertyHelper,
20
22
  loadModules,
21
23
  library,
22
24
  ColumnPopoverSelectListItem,
@@ -32,6 +34,7 @@ sap.ui.define([
32
34
  /*global Set */
33
35
 
34
36
  var TableType = library.TableType;
37
+ var P13nMode = library.TableP13nMode;
35
38
  var TableMap = new window.WeakMap(); // To store table-related information for easy access in the delegate.
36
39
 
37
40
  /**
@@ -51,37 +54,14 @@ sap.ui.define([
51
54
  var Delegate = Object.assign({}, TableDelegate);
52
55
 
53
56
  /**
54
- * Fetches the model-specific <code>PropertyHelper</code> class or instance.
57
+ * Gets the model-specific <code>PropertyHelper</code> class to create an instance of.
55
58
  *
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>
75
- * @param {Promise<object<string, object>|null>} mExtensions The property extensions
76
- * @returns {Promise<sap.ui.mdc.table.V4AnalyticsPropertyHelper>} A <code>Promise</code> that resolves with the <code>PropertyHelper</code> class
77
- * or instance
59
+ * @returns {sap.ui.mdc.table.V4AnalyticsPropertyHelper} The <code>PropertyHelper</code> class.
78
60
  * @private
79
61
  * @ui5-restricted sap.ui.mdc
80
62
  */
81
- Delegate.fetchPropertyHelper = function(oTable, aProperties, mExtensions) {
82
- return loadModules("sap/ui/mdc/table/V4AnalyticsPropertyHelper").then(function(aResult) {
83
- return aResult[0];
84
- });
63
+ Delegate.getPropertyHelperClass = function() {
64
+ return V4AnalyticsPropertyHelper;
85
65
  };
86
66
 
87
67
  /**
@@ -94,7 +74,7 @@ sap.ui.define([
94
74
  *
95
75
  * @param {sap.ui.mdc.Table} oTable Instance of the table
96
76
  * @param {object[]} aProperties <code>PropertyInfo</code>
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
77
+ * @returns {Promise<Object<string, object>|null>} Key-value map, where the key is the name of the property, and the value is the extension
98
78
  * @protected
99
79
  */
100
80
  Delegate.fetchPropertyExtensions = function(oTable, aProperties) {
@@ -121,24 +101,13 @@ sap.ui.define([
121
101
  *
122
102
  * @param {sap.ui.mdc.Table} oTable Instance of the table
123
103
  * @param {object[]} aProperties <code>PropertyInfo</code>
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
104
+ * @returns {Promise<Object<string, object>|null>} Key-value map, where the key is the name of the property, and the value is the extension
125
105
  * @protected
126
106
  */
127
107
  Delegate.fetchPropertyExtensionsForBinding = function(oTable, aProperties) {
128
108
  return this.fetchPropertyExtensions(oTable, aProperties);
129
109
  };
130
110
 
131
- /**
132
- * Formats the title text of a group header row of the table.
133
- *
134
- * @param {sap.ui.mdc.Table} oTable Instance of the table
135
- * @param {sap.ui.model.Context} oContext Binding context
136
- * @param {string} sProperty The name of the grouped property
137
- * @returns {string | undefined} The group header title. If <code>undefined</code> is returned, the default group header title is set.
138
- * @private
139
- */
140
- Delegate.formatGroupHeader = function(oTable, oContext, sProperty) {};
141
-
142
111
  Delegate.preInit = function(oTable) {
143
112
  if (!TableMap.has(oTable)) {
144
113
  TableMap.set(oTable, {});
@@ -226,7 +195,7 @@ sap.ui.define([
226
195
  * <code>model</code>... must be provided in the {@link #updateBindingInfo updateBindingInfo} method always,
227
196
  * and those keys must not be changed conditionally.
228
197
  *
229
- * @param {sap.ui.mdc.Table} oMDCTable Instance of the table
198
+ * @param {sap.ui.mdc.Table} oTable Instance of the table
230
199
  * @param {sap.ui.base.ManagedObject.AggregationBindingInfo} oBindingInfo The binding info object to be used to bind the table to the model.
231
200
  * @param {sap.ui.model.ListBinding} [oBinding] The binding instance of the table
232
201
  * @protected
@@ -234,7 +203,7 @@ sap.ui.define([
234
203
  */
235
204
  Delegate.updateBinding = function(oTable, oBindingInfo, oBinding) {
236
205
  if (!oBinding || oBinding.getPath() != oBindingInfo.path) {
237
- this.rebindTable(oTable, oBindingInfo);
206
+ this.rebind(oTable, oBindingInfo);
238
207
  return;
239
208
  }
240
209
 
@@ -252,7 +221,7 @@ sap.ui.define([
252
221
  oBinding.filter(oBindingInfo.filters, "Application");
253
222
  oBinding.sort(oBindingInfo.sorter);
254
223
  } catch (e) {
255
- this.rebindTable(oTable, oBindingInfo);
224
+ this.rebind(oTable, oBindingInfo);
256
225
  if (oRootBinding == oBinding) {
257
226
  // If we resume before the rebind, you get an extra request therefore we must
258
227
  // resume after rebind, but only if the list binding was not the root binding.
@@ -271,7 +240,7 @@ sap.ui.define([
271
240
  */
272
241
  Delegate.rebind = function (oTable, oBindingInfo) {
273
242
  setAggregation(oTable, oBindingInfo);
274
- TableDelegate.rebindTable(oTable, oBindingInfo);
243
+ TableDelegate.rebind(oTable, oBindingInfo);
275
244
  };
276
245
 
277
246
  Delegate.addColumnMenuItems = function(oTable, oMDCColumn) {
@@ -283,7 +252,7 @@ sap.ui.define([
283
252
  return [];
284
253
  }
285
254
 
286
- if (oTable.isGroupingEnabled() && supportsGrouping(oTable)) {
255
+ if (oTable.isGroupingEnabled()) {
287
256
  var aGroupProperties = oProperty.getGroupableProperties();
288
257
 
289
258
  if (aGroupProperties.length > 0) {
@@ -291,7 +260,7 @@ sap.ui.define([
291
260
  }
292
261
  }
293
262
 
294
- if (oTable.isAggregationEnabled() && supportsAggregation(oTable)) {
263
+ if (oTable.isAggregationEnabled()) {
295
264
  var aAggregateProperties = oProperty.getAggregatableProperties();
296
265
 
297
266
  if (aAggregateProperties.length > 0) {
@@ -318,6 +287,21 @@ sap.ui.define([
318
287
  return aItems;
319
288
  };
320
289
 
290
+ Delegate.getSupportedP13nModes = function(oTable) {
291
+ var aSupportedModes = TableDelegate.getSupportedP13nModes(oTable);
292
+
293
+ if (oTable._getStringType() === TableType.Table) {
294
+ if (!aSupportedModes.includes(P13nMode.Group)) {
295
+ aSupportedModes.push(P13nMode.Group);
296
+ }
297
+ if (!aSupportedModes.includes(P13nMode.Aggregate)) {
298
+ aSupportedModes.push(P13nMode.Aggregate);
299
+ }
300
+ }
301
+
302
+ return aSupportedModes;
303
+ };
304
+
321
305
  function createGroupPopoverItem(aGroupProperties, oMDCColumn) {
322
306
  var aGroupChildren = aGroupProperties.map(function(oGroupProperty) {
323
307
  return new Item({
@@ -603,26 +587,6 @@ sap.ui.define([
603
587
  }
604
588
  }
605
589
 
606
- /**
607
- * Checks whether the inner table supports grouping.
608
- *
609
- * @param {sap.ui.mdc.Table} oTable Instance of the table
610
- * @returns {boolean} Whether the inner table supports grouping
611
- */
612
- function supportsGrouping(oTable) {
613
- return oTable._isOfType(TableType.Table);
614
- }
615
-
616
- /**
617
- * Checks whether the inner table supports aggregation.
618
- *
619
- * @param {sap.ui.mdc.Table} oTable Instance of the table
620
- * @returns {boolean} Whether the inner table supports aggregation
621
- */
622
- function supportsAggregation(oTable) {
623
- return oTable._isOfType(TableType.Table);
624
- }
625
-
626
590
  /**
627
591
  * Checks whether aggregation features of the model are used.
628
592
  *
@@ -707,10 +671,9 @@ sap.ui.define([
707
671
  return oDelegate.fetchPropertyExtensionsForBinding(oTable, aProperties);
708
672
  }).then(function(mExtensionsForBinding) {
709
673
  mExtensions = mExtensionsForBinding;
710
- return oDelegate.fetchPropertyHelper(oTable, aProperties, mExtensions);
674
+ return oDelegate.getPropertyHelperClass();
711
675
  }).then(function(PropertyHelper) {
712
- var bIsPropertyHelperInstance = PropertyHelper.constructor === PropertyHelper;
713
- mTableMap.oPropertyHelperForBinding = bIsPropertyHelperInstance ? PropertyHelper : new PropertyHelper(aProperties, mExtensions, oTable);
676
+ mTableMap.oPropertyHelperForBinding = new PropertyHelper(aProperties, mExtensions, oTable);
714
677
  return mTableMap.oPropertyHelperForBinding;
715
678
  });
716
679
  }
@@ -4,7 +4,7 @@
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
7
- sap.ui.define(['sap/ui/mdc/odata/TypeUtil', 'sap/ui/mdc/enum/BaseType'], function(ODataTypeUtil, BaseType) {
7
+ sap.ui.define(['sap/ui/mdc/odata/TypeUtil', 'sap/ui/mdc/enum/BaseType', 'sap/base/util/merge'], function(ODataTypeUtil, BaseType, merge) {
8
8
  "use strict";
9
9
 
10
10
  /**
@@ -62,9 +62,7 @@ sap.ui.define(['sap/ui/mdc/odata/TypeUtil', 'sap/ui/mdc/enum/BaseType'], functio
62
62
  switch (sDataType) {
63
63
  case "sap.ui.model.odata.type.DateTimeOffset":
64
64
  case "Edm.DateTimeOffset":
65
- if (!constraints) {
66
- constraints = {};
67
- }
65
+ constraints = merge({}, constraints);
68
66
  constraints.V4 = true;
69
67
  break;
70
68
 
@@ -6,16 +6,34 @@
6
6
 
7
7
  sap.ui.define([
8
8
  "../../ValueHelpDelegate",
9
- "sap/ui/model/FilterType"
9
+ "sap/ui/model/FilterType",
10
+ 'sap/ui/mdc/odata/v4/TypeUtil',
11
+ 'sap/ui/mdc/condition/ConditionConverter'
10
12
  ], function(
11
13
  ValueHelpDelegate,
12
- FilterType
14
+ FilterType,
15
+ TypeUtil,
16
+ ConditionConverter
13
17
  ) {
14
18
  "use strict";
15
19
 
16
- var ODataV4ValueHelpDelegate = Object.assign({}, ValueHelpDelegate);
17
-
18
- ODataV4ValueHelpDelegate.isSearchSupported = function(oPayload, oListBinding) {
20
+ /**
21
+ * Delegate for {@link sap.ui.mdc.ValueHelp ValueHelp} used in oData v4 environment.<br>
22
+ * <b>Note:</b> The class is experimental and the API/behavior is not finalized and hence this should not be used for productive usage.
23
+ *
24
+ * @namespace
25
+ * @author SAP SE
26
+ * @private
27
+ * @ui5-restricted sap.fe
28
+ * @MDC_PUBLIC_CANDIDATE
29
+ * @experimental As of version 1.95
30
+ * @since 1.95.0
31
+ * @extends module:sap/ui/mdc/ValueHelpDelegate
32
+ * @alias module:sap/ui/mdc/odata/v4/ValueHelpDelegate
33
+ */
34
+ var ODataV4ValueHelpDelegate = Object.assign({}, ValueHelpDelegate);
35
+
36
+ ODataV4ValueHelpDelegate.isSearchSupported = function(oPayload, oContent, oListBinding) {
19
37
  return !!oListBinding.changeParameters;
20
38
  };
21
39
 
@@ -90,5 +108,47 @@ sap.ui.define([
90
108
 
91
109
  };
92
110
 
111
+ ODataV4ValueHelpDelegate.getInitialFilterConditions = function (oPayload, oContent, oControl) {
112
+ var oConditions = {};
113
+ return oConditions;
114
+ };
115
+
116
+ ODataV4ValueHelpDelegate.getTypeUtil = function (oPayload) {
117
+ return TypeUtil;
118
+ };
119
+
120
+ function _convertCondition(oOptions, bExternalize) {
121
+ var oTypeUtil = ODataV4ValueHelpDelegate.getTypeUtil();
122
+ var oTypeConfig = oTypeUtil.getTypeConfig(oOptions.type, oOptions.formatOptions, oOptions.constraints);
123
+ var fnConvert = bExternalize ? ConditionConverter.toString : ConditionConverter.toType;
124
+ return fnConvert(oOptions.condition, oTypeConfig, ODataV4ValueHelpDelegate.getTypeUtil());
125
+ }
126
+
127
+ /**
128
+ * @param {object} oPayload Delegate payload
129
+ * @param {object} oOptions Options for conversion
130
+ * @param {object} oOptions.condition Condition to be converted
131
+ * @param {object} oOptions.type Data type for this condition
132
+ * @param {object} oOptions.formatOptions formatOptions for given type
133
+ * @param {object} oOptions.constraints constraints for given type
134
+ * @returns {object<sap.ui.mdc.condition.ConditionObject>} returns a stringified condition object
135
+ */
136
+ ODataV4ValueHelpDelegate.externalizeCondition = function (oPayload, oOptions) {
137
+ return _convertCondition(oOptions, true);
138
+ };
139
+
140
+ /**
141
+ * @param {object} oPayload Delegate payload
142
+ * @param {object} oOptions Options for conversion
143
+ * @param {object} oOptions.condition Condition to be converted
144
+ * @param {object} oOptions.type Data type for this condition
145
+ * @param {object} oOptions.formatOptions formatOptions for given type
146
+ * @param {object} oOptions.constraints constraints for given type
147
+ * @returns {object<sap.ui.mdc.condition.ConditionObject>} returns a type based condition object
148
+ */
149
+ ODataV4ValueHelpDelegate.internalizeCondition = function (oPayload, oOptions) {
150
+ return _convertCondition(oOptions, false);
151
+ };
152
+
93
153
  return ODataV4ValueHelpDelegate;
94
154
  });