@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
@@ -10,23 +10,28 @@
10
10
 
11
11
  sap.ui.define([
12
12
  "sap/ui/mdc/BaseDelegate",
13
- "sap/ui/model/FilterType"
13
+ "sap/ui/model/FilterType",
14
+ "sap/ui/mdc/enum/ConditionValidated"
14
15
  ], function(
15
16
  BaseDelegate,
16
- FilterType
17
+ FilterType,
18
+ ConditionValidated
17
19
  ) {
18
20
  "use strict";
19
21
 
20
22
  /**
21
- * @class Delegate class for {@link sap.ui.mdc.ValueHelp ValueHelp}.<br>
23
+ * Delegate for {@link sap.ui.mdc.ValueHelp ValueHelp}.<br>
22
24
  * <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
25
  *
26
+ * @namespace
24
27
  * @author SAP SE
25
28
  * @private
26
- * @ui5-restricted sap.ui.mdc.ValueHelp
29
+ * @ui5-restricted sap.fe
30
+ * @MDC_PUBLIC_CANDIDATE
27
31
  * @experimental As of version 1.95
28
32
  * @since 1.95.0
29
- * @alias sap.ui.mdc.ValueHelpDelegate
33
+ * @extends module:sap/ui/mdc/BaseDelegate
34
+ * @alias module:sap/ui/mdc/ValueHelpDelegate
30
35
  */
31
36
  var ValueHelpDelegate = Object.assign({}, BaseDelegate);
32
37
 
@@ -41,12 +46,14 @@ sap.ui.define([
41
46
  *
42
47
  * @param {object} oPayload Payload for delegate
43
48
  * @param {sap.ui.mdc.valuehelp.base.Container} oContainer Container instance
49
+ * @param {string} sContentId id of the content shown after this call to retrieveContent
50
+ *
44
51
  * @returns {Promise} Promise that is resolved if all content is available
45
52
  * @private
46
53
  * @ui5-restricted sap.fe
47
54
  * @MDC_PUBLIC_CANDIDATE
48
55
  */
49
- ValueHelpDelegate.retrieveContent = function (oPayload, oContainer) {
56
+ ValueHelpDelegate.retrieveContent = function (oPayload, oContainer, sContentId) {
50
57
  return Promise.resolve();
51
58
  };
52
59
 
@@ -54,12 +61,13 @@ sap.ui.define([
54
61
  * Checks if a <code>ListBinding</code> supports $Search.
55
62
  *
56
63
  * @param {object} oPayload Payload for delegate
64
+ * @param {sap.ui.mdc.valuehelp.base.Content} oContent Content element
57
65
  * @param {sap.ui.model.ListBinding} oListBinding ListBinding
58
66
  * @returns {boolean} true if $search is supported
59
67
  * @private
60
68
  * @ui5-restricted sap.ui.mdc.ValueHelp
61
69
  */
62
- ValueHelpDelegate.isSearchSupported = function(oPayload, oListBinding) {
70
+ ValueHelpDelegate.isSearchSupported = function(oPayload, oContent, oListBinding) {
63
71
  return false;
64
72
  };
65
73
 
@@ -163,5 +171,144 @@ sap.ui.define([
163
171
  return false;
164
172
  };
165
173
 
174
+ // InOut =====
175
+
176
+ /**
177
+ * Callback invoked everytime a {@link sap.ui.mdc.ValueHelp ValueHelp} fires a select event or the vlaue of the corresponding field changes
178
+ * This callback may be used to update external fields.
179
+ *
180
+ * @param {object} oPayload Payload for delegate
181
+ * @param {sap.ui.mdc.ValueHelp} oValueHelp <code>ValueHelp</code> control instance receiving the <code>controlChange</code>
182
+ * @param {sap.ui.mdc.enum.PropagationReason} sReason Reason why the method was invoked
183
+ * @param {object} oConfig current configuration provided by the calling control
184
+ * @private
185
+ * @ui5-restricted sap.fe
186
+ * @MDC_PUBLIC_CANDIDATE
187
+ * @since 1.101.0
188
+ */
189
+ ValueHelpDelegate.onConditionPropagation = function (oPayload, oValueHelp, sReason, oConfig) {
190
+
191
+ };
192
+
193
+ /**
194
+ * Provides an initial condition configuration everytime a value help content is shown.
195
+ *
196
+ * @param {object} oPayload Payload for delegate
197
+ * @param {sap.ui.mdc.ValueHelp} oContent ValueHelp content requesting conditions configuration
198
+ * @param {sap.ui.core.Control} oControl Instance of the calling control
199
+ * @returns {Promise<object>|object} Returns a map of conditions suitable for a sap.ui.mdc.FilterBar control
200
+ * @private
201
+ * @ui5-restricted sap.fe
202
+ * @MDC_PUBLIC_CANDIDATE
203
+ * @since 1.101.0
204
+ */
205
+ ValueHelpDelegate.getInitialFilterConditions = function (oPayload, oContent, oControl) {
206
+
207
+ var oConditions = {};
208
+ return oConditions;
209
+
210
+ };
211
+
212
+ /**
213
+ * Provides the possibility to customize selections in 'Select from list' scenarios.
214
+ * By default, only condition keys are considered. This may be extended with payload dependent filters.
215
+ *
216
+ * @param {object} oPayload Payload for delegate
217
+ * @param {sap.ui.mdc.valuehelp.base.FilterableListContent} oContent <code>ValueHelp</code> content instance
218
+ * @param {sap.ui.core.Element} oItem Entry of a given list
219
+ * @param {sap.ui.mdc.condition.ConditionObject[]} aConditions current conditions
220
+ * @returns {boolean} True, if item is selected
221
+ * @private
222
+ * @ui5-restricted sap.fe
223
+ * @MDC_PUBLIC_CANDIDATE
224
+ * @since 1.101.0
225
+ */
226
+ ValueHelpDelegate.isFilterableListItemSelected = function (oPayload, oContent, oItem, aConditions) {
227
+ var sModelName = oContent._getListBindingInfo().model;
228
+ var oContext = oItem && oItem.getBindingContext(sModelName);
229
+ var oItemData = oContent._getItemFromContext(oContext);
230
+
231
+ for (var i = 0; i < aConditions.length; i++) {
232
+ var oCondition = aConditions[i];
233
+ if (oCondition.validated === ConditionValidated.Validated && oItemData.key === oCondition.values[0]) { // TODO: check for specific EQ operator
234
+ return true;
235
+ }
236
+ }
237
+
238
+ return false;
239
+ };
240
+
241
+ /**
242
+ * Provides the possibility to customize selection events in 'Select from list' scenarios.
243
+ * This enables an application to reuse conditions in collective search scenarios, instead of always creating new ones.
244
+ *
245
+ * @param {object} oPayload Payload for delegate
246
+ * @param {sap.ui.mdc.valuehelp.base.FilterableListContent} oContent <code>ValueHelp</code> content instance
247
+ * @param {object} oChange Selection event configuration
248
+ * @param {sap.ui.mdc.enum.SelectType} oChange.type Type of the selection change (add, remove)
249
+ * @param {object[]} oChange.conditions Array of changed conditions with structure {@link sap.ui.mdc.condition.ConditionObject ConditionObject}
250
+ * @returns {object} oRestult Selection event configuration object
251
+ * @returns {sap.ui.mdc.enum.SelectType} oRestult.type Type of the selection change (add, remove)
252
+ * @returns {object[]} oRestult.conditions Array of changed conditions with structure {@link sap.ui.mdc.condition.ConditionObject ConditionObject}
253
+ * @private
254
+ * @ui5-restricted sap.fe
255
+ * @MDC_PUBLIC_CANDIDATE
256
+ * @since 1.101.0
257
+ */
258
+ ValueHelpDelegate.modifySelectionBehaviour = function (oPayload, oContent, oChange) {
259
+ return oChange;
260
+ };
261
+
262
+ /**
263
+ * Provides the possibility to convey custom data in conditions.
264
+ * This enables an application to enhance conditions with data relevant for combined key or outparameter scenarios.
265
+ *
266
+ * @param {object} oPayload Payload for delegate
267
+ * @param {sap.ui.mdc.valuehelp.base.FilterableListContent} oContent <code>ValueHelp</code> content instance
268
+ * @param {any[]} aValues key, description pair for the condition which is to be created.
269
+ * @param {sap.ui.model.Context} [oContext] optional additional context
270
+ * @returns {undefined|object} Optionally returns a serializeable object to be stored in the condition payload field.
271
+ * @private
272
+ * @ui5-restricted sap.fe
273
+ * @MDC_PUBLIC_CANDIDATE
274
+ * @since 1.101.0
275
+ */
276
+ ValueHelpDelegate.createConditionPayload = function (oPayload, oContent, aValues, oContext) {
277
+ return undefined;
278
+ };
279
+
280
+ /**
281
+ * Provides type information for listcontent filtering
282
+ *
283
+ * @param {object} oPayload Payload for delegate
284
+ * @param {sap.ui.mdc.valuehelp.base.FilterableListContent} oContent <code>ValueHelp</code> content instance
285
+ * @param {object} oConditions set of conditions to create filters for
286
+ * @returns {object} Returns a type map for property paths
287
+ * @private
288
+ * @ui5-restricted sap.fe
289
+ * @MDC_PUBLIC_CANDIDATE
290
+ * @since 1.101.0
291
+ */
292
+ ValueHelpDelegate.getTypesForConditions = function (oPayload, oContent, oConditions) { // TODO: MDC.Table add UI.Table support
293
+ var oConditionTypes = {};
294
+ var oListBindingInfo = oContent && oContent._getListBindingInfo();
295
+
296
+ if (oListBindingInfo && oListBindingInfo.template) {
297
+ oListBindingInfo.template.mAggregations.cells.forEach(function (oCell) {
298
+ Object.values(oCell.mBindingInfos).forEach(function (oBindingInfo) {
299
+ oBindingInfo.parts.forEach(function (oPartInfo) {
300
+ oConditionTypes[oPartInfo.path] = {type: oPartInfo.type || null};
301
+ });
302
+ });
303
+ }, {});
304
+ }
305
+
306
+ return oConditionTypes;
307
+ };
308
+
309
+ /* ValueHelpDelegate.getCount = function (oPayload, oContent, aConditions, sGroup) {
310
+ return 0;
311
+ }; */
312
+
166
313
  return ValueHelpDelegate;
167
314
  });
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  * @class The action for an {@link sap.ui.mdc.ActionToolbar ActionToolbar}) control
22
22
  * @extends sap.ui.core.Control
23
23
  * @author SAP SE
24
- * @version 1.98.0
24
+ * @version 1.101.0
25
25
  * @constructor
26
26
  * @private
27
27
  * @since 1.58
@@ -93,7 +93,7 @@ sap.ui.define([
93
93
 
94
94
  /**
95
95
  *
96
- * @returns {String} a text defining the label of this <code>ActionToolbarAction</code> defined by the inner action.
96
+ * @returns {string} a text defining the label of this <code>ActionToolbarAction</code> defined by the inner action.
97
97
  */
98
98
  ActionToolbarAction.prototype.getLabel = function() {
99
99
  var oAction = this.getAction();
@@ -19,7 +19,7 @@ sap.ui.define([], function() {
19
19
  * Renders the HTML for the given control, using the provided {@link sap.ui.core.RenderManager}.
20
20
  *
21
21
  * @param {sap.ui.core.RenderManager} rm the RenderManager that can be used for writing to the Render-Output-Buffer
22
- * @param {sap.ui.mdc.Form} oForm an object representation of the control that should be rendered
22
+ * @param {sap.ui.mdc.actiontoolbar.ActionToolbarAction} oActionToolbarAction an object representation of the control that should be rendered
23
23
  */
24
24
  ActionToolbarActionRenderer.render = function(rm, oActionToolbarAction) {
25
25
  var mAriaProps = { role: "form" };
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @class The ChartSelectionDetails control creates a sap.m.SelectionDetails popover based on metadata and the configuration specified.
34
34
  * @extends sap.m.SelectionDetails
35
35
  * @author SAP SE
36
- * @version 1.98.0
36
+ * @version 1.101.0
37
37
  * @constructor
38
38
  * @experimental As of version ...
39
39
  * @private
@@ -15,7 +15,8 @@ sap.ui.define([
15
15
  "sap/ui/mdc/library",
16
16
  "sap/ui/mdc/chart/ChartTypeButton",
17
17
  "sap/ui/mdc/chart/ChartSettings",
18
- "./ChartSelectionDetails"
18
+ "./ChartSelectionDetails",
19
+ "sap/m/ToolbarSeparator"
19
20
  ],
20
21
  function (
21
22
  Core,
@@ -28,22 +29,22 @@ sap.ui.define([
28
29
  MDCLib,
29
30
  ChartTypeButton,
30
31
  ChartSettings,
31
- ChartSelectionDetails
32
+ ChartSelectionDetails,
33
+ ToolbarSeparator
32
34
  ) {
33
35
  "use strict";
34
36
 
35
37
  /**
36
- /**
37
38
  * Constructor for a new ChartToolbar.
38
39
  *
39
40
  * @param {string} [sId] id for the new control, generated automatically if no id is given
40
41
  * @param {object} [mSettings] initial settings for the new control
41
- * @class The ChartToolbar control creates a sap.m.OverflowToolbar based on metadata and the configuration specified.
42
- * @extends sap.m.OverflowToolbar
42
+ * @class The ChartToolbar control is a sap.m.OverflowToolbar based on metadata and the configuration specified.
43
+ * @extends sap.ui.mdc.ActionToolbar
43
44
  * @author SAP SE
44
- * @version 1.98.0
45
+ * @version 1.101.0
45
46
  * @constructor
46
- * @experimental As of version ...
47
+ * @experimental As of version 1.88
47
48
  * @private
48
49
  * @since 1.88
49
50
  * @alias sap.ui.mdc.chart.ChartToolbar
@@ -76,7 +77,8 @@ sap.ui.define([
76
77
  };
77
78
 
78
79
  ChartToolbar.prototype.createToolbarContent = function (oMDCChart) {
79
- this.setEnabled(false);
80
+ //Keep track of chart buttons to enable them later on
81
+ this._chartInternalButtonsToEnable = [];
80
82
 
81
83
  /**add beginning**/
82
84
  var title = new Title(oMDCChart.getId() + "-title", {
@@ -84,6 +86,11 @@ sap.ui.define([
84
86
  });
85
87
  this.addBegin(title);
86
88
 
89
+ /** variant management */
90
+ if (oMDCChart.getVariant()){
91
+ this.addVariantManagement(oMDCChart.getVariant());
92
+ }
93
+
87
94
  /**add end **/
88
95
  this._oChartSelectionDetails = new ChartSelectionDetails(oMDCChart.getId() + "-selectionDetails", {});
89
96
  this._oChartSelectionDetails.attachBeforeOpen(function (oEvent) {
@@ -100,11 +107,13 @@ sap.ui.define([
100
107
  icon: "sap-icon://drill-down",
101
108
  tooltip: MDCRb.getText("chart.CHART_DRILLDOWN_TITLE"),
102
109
  text: MDCRb.getText("chart.CHART_DRILLDOWN_TITLE"),
110
+ enabled: false,
103
111
  press: function (oEvent) {
104
112
  oMDCChart._showDrillDown(this._oDrillDownBtn);
105
113
  }.bind(this)
106
114
  });
107
115
  this.addEnd(this._oDrillDownBtn);
116
+ this._chartInternalButtonsToEnable.push(this._oDrillDownBtn);
108
117
  }
109
118
 
110
119
  if (!oMDCChart.getIgnoreToolbarActions().length || oMDCChart.getIgnoreToolbarActions().indexOf(MDCLib.ChartToolbarActionType.Legend) < 0) {
@@ -113,10 +122,11 @@ sap.ui.define([
113
122
  text: MDCRb.getText("chart.LEGENDBTN_TEXT"),
114
123
  tooltip: MDCRb.getText("chart.LEGENDBTN_TOOLTIP"),
115
124
  icon: "sap-icon://legend",
116
- pressed: "{$mdcChart>/legendVisible}"
117
-
125
+ pressed: "{$mdcChart>/legendVisible}",
126
+ enabled: false
118
127
  });
119
128
  this.addEnd(this._oLegendBtn);
129
+ this._chartInternalButtonsToEnable.push(this._oLegendBtn);
120
130
  }
121
131
 
122
132
  if (!oMDCChart.getIgnoreToolbarActions().length || oMDCChart.getIgnoreToolbarActions().indexOf(MDCLib.ChartToolbarActionType.ZoomInOut)) {
@@ -124,6 +134,7 @@ sap.ui.define([
124
134
  icon: "sap-icon://zoom-in",
125
135
  tooltip: MDCRb.getText("chart.TOOLBAR_ZOOM_IN"),
126
136
  text: MDCRb.getText("chart.TOOLBAR_ZOOM_IN"),
137
+ enabled: false,
127
138
  press: function onZoomOutButtonPressed(oControlEvent) {
128
139
  oMDCChart.zoomIn();
129
140
  this.toggleZoomButtons(oMDCChart);
@@ -134,6 +145,7 @@ sap.ui.define([
134
145
  icon: "sap-icon://zoom-out",
135
146
  tooltip: MDCRb.getText("chart.TOOLBAR_ZOOM_OUT"),
136
147
  text: MDCRb.getText("chart.TOOLBAR_ZOOM_OUT"),
148
+ enabled: false,
137
149
  press: function onZoomOutButtonPressed(oControlEvent) {
138
150
  oMDCChart.zoomOut();
139
151
  this.toggleZoomButtons(oMDCChart);
@@ -141,6 +153,7 @@ sap.ui.define([
141
153
  });
142
154
  this.addEnd(this.oZoomInButton);
143
155
  this.addEnd(this.oZoomOutButton);
156
+ //Enabled via toggleZoomButtons()
144
157
  }
145
158
 
146
159
  if (aP13nMode.indexOf("Sort") > -1 || aP13nMode.indexOf("Item") > -1) {
@@ -148,16 +161,43 @@ sap.ui.define([
148
161
  icon: "sap-icon://action-settings",//TODO the right icon for P13n chart dialog
149
162
  tooltip: MDCRb.getText('chart.PERSONALIZATION_DIALOG_TITLE'),
150
163
  text: MDCRb.getText('chart.PERSONALIZATION_DIALOG_TITLE'),
164
+ enabled: false,
151
165
  press: function (oEvent) {
152
- oMDCChart.getEngine().uimanager.show(oMDCChart, oMDCChart.getP13nMode());
166
+ var aP13nMode = oMDCChart.getP13nMode();
167
+ aP13nMode.pop("Type");
168
+
169
+ //TODO: Move this to p13n functionality?
170
+ if (oMDCChart.isPropertyHelperFinal()){
171
+ oMDCChart.getEngine().uimanager.show(oMDCChart, aP13nMode);
172
+ } else {
173
+ oMDCChart.finalizePropertyHelper().then(function(){
174
+ oMDCChart.getEngine().uimanager.show(oMDCChart, aP13nMode);
175
+ });
176
+ }
153
177
  }
154
178
  });
155
179
  this.addEnd(this._oSettingsBtn);
180
+ this._chartInternalButtonsToEnable.push(this._oSettingsBtn);
156
181
  }
157
182
 
158
183
  if (oMDCChart._getTypeBtnActive()) {
159
184
  this._oChartTypeBtn = new ChartTypeButton(oMDCChart);
185
+ this._oChartTypeBtn.setEnabled(false);
160
186
  this.addEnd(this._oChartTypeBtn);
187
+ this._chartInternalButtonsToEnable.push(this._oChartTypeBtn);
188
+ }
189
+
190
+ };
191
+
192
+ ChartToolbar.prototype.addVariantManagement = function(oVariantManagement) {
193
+
194
+ if (oVariantManagement){
195
+ if (this._oVariantManagement) {
196
+ this.removeBetween(this._oVariantManagement);
197
+ }
198
+
199
+ this._oVariantManagement = oVariantManagement;
200
+ this.addBetween(this._oVariantManagement);
161
201
  }
162
202
 
163
203
  };
@@ -180,6 +220,11 @@ sap.ui.define([
180
220
 
181
221
  if (!this._toolbarInitialUpdated) {
182
222
  this.setEnabled(true);
223
+
224
+ this._chartInternalButtonsToEnable.forEach(function(oBtn){
225
+ oBtn.setEnabled(true);
226
+ });
227
+
183
228
  this._toolbarInitialUpdated = true;
184
229
  }
185
230
 
@@ -4,10 +4,13 @@
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
  sap.ui.define([
7
- "sap/m/OverflowToolbarButton", "sap/m/ButtonRenderer", "sap/ui/base/ManagedObjectObserver", "sap/ui/core/library", "sap/m/PlacementType"
8
- ], function(OverflowToolbarButton, ButtonRenderer, ManagedObjectObserver, CoreLibrary, PlacementType) {
7
+ "sap/m/OverflowToolbarButton", "sap/m/ButtonRenderer", "sap/ui/base/ManagedObjectObserver", "sap/ui/core/library", "sap/m/library"
8
+ ], function(OverflowToolbarButton, ButtonRenderer, ManagedObjectObserver, CoreLibrary, mobileLibrary) {
9
9
  "use strict";
10
10
 
11
+ // shortcut for sap.m.PlacementType
12
+ var PlacementType = mobileLibrary.PlacementType;
13
+
11
14
  var HasPopup = CoreLibrary.aria.HasPopup;
12
15
  var ResponsivePopover, List, Bar, SearchField, StandardListItem, InvisibleText, Device, oRb;
13
16
 
@@ -134,11 +137,14 @@ sap.ui.define([
134
137
  }
135
138
 
136
139
  this.oReadyPromise.then(function() {
137
- this.oPopover = this._createPopover(oButton, oMDCChart);
138
- this.oPopover.attachAfterClose(function(){
139
- this.oPopover.destroy();
140
- }.bind(this));
141
- return this.oPopover.openBy(oButton);
140
+ if (!this.oPopover){
141
+ this.oPopover = this._createPopover(oButton, oMDCChart);
142
+ this.oPopover.attachAfterClose(function(){
143
+ this.oPopover.destroy();
144
+ delete this.oPopover;
145
+ }.bind(this));
146
+ return this.oPopover.openBy(oButton);
147
+ }
142
148
  }.bind(this));
143
149
  };
144
150
 
@@ -176,12 +182,21 @@ sap.ui.define([
176
182
  sap.ui.require([
177
183
  "sap/ui/mdc/p13n/FlexUtil", "sap/ui/mdc/flexibility/Chart.flexibility"
178
184
  ], function(FlexUtil,ChartFlex) {
179
- var aChanges = [];
185
+ //var aChanges = [];
186
+
187
+ oMDCChart.getEngine().createChanges({
188
+ control: oMDCChart,
189
+ key: "Type",
190
+ state: {
191
+ type: oObj.key
192
+ }
193
+ });
194
+ /*
180
195
  aChanges.push(ChartFlex["setChartType"].changeHandler.createChange({
181
196
  control: oMDCChart,
182
197
  chartType: oObj.key
183
198
  }));
184
- FlexUtil.handleChanges(aChanges);
199
+ FlexUtil.handleChanges(aChanges);*/
185
200
  });
186
201
  }
187
202
  }
@@ -291,5 +306,4 @@ sap.ui.define([
291
306
  };
292
307
 
293
308
  return ChartTypeButton;
294
-
295
309
  });
@@ -26,13 +26,15 @@ sap.ui.define([
26
26
 
27
27
  DrillBreadcrumbs.prototype.init = function(){
28
28
  Breadcrumbs.prototype.init.apply(this, arguments);
29
+
30
+ this.addStyleClass("sapUiMDCChartBreadcrumbs");
29
31
  };
30
32
 
31
33
 
32
34
  /**
33
- * Updates the breadcrumps shown on the MDC Chart
35
+ * Updates the breadcrumbs shown on the MDC Chart
34
36
  *
35
- * @param {sap.ui.mdc.Chart} oChart the MDC Chart to update the breadcrumps on
37
+ * @param {sap.ui.mdc.Chart} oMDCChart the MDC Chart to update the breadcrumbs on
36
38
  * @param {*} oDrillableItems the drillable items
37
39
  *
38
40
  * @experimental
@@ -54,7 +56,7 @@ sap.ui.define([
54
56
  oDrillableItems.forEach(function(dim, index, array) {
55
57
 
56
58
  // show breadcrumbs
57
- //If Breadcrumps were set invisible for no drill stack, they need to be set visible again
59
+ //If Breadcrumbs were set invisible for no drill stack, they need to be set visible again
58
60
  this.setVisible(true);
59
61
 
60
62
  // use the last entry of each drill-stack entry to built
@@ -121,11 +123,11 @@ sap.ui.define([
121
123
  };
122
124
 
123
125
  /**
124
- * Creates a breadcrump with given settings
125
- * @param oChart the chart the breadcrump is for
126
- * @param oCrumbSettings settings for the breadcrump
126
+ * Creates a breadcrumb with given settings
127
+ * @param oMDCChart the chart the breadcrumb is for
128
+ * @param oCrumbSettings settings for the breadcrumb
127
129
  *
128
- * @returns the created breadcrump
130
+ * @returns {sap.m.Link} the created breadcrumb
129
131
  *
130
132
  * @experimental
131
133
  * @private
@@ -53,7 +53,7 @@ sap.ui.define([
53
53
 
54
54
  /**
55
55
  * Handles all drill-stack operations on a mdc.Chart instance
56
- * inlcuding drill-downs, drill-ups and updating of depending controls
56
+ * including drill-downs, drill-ups and updating of depending controls
57
57
  * @constructor
58
58
  */
59
59
  var DrillStackHandler = function() {
@@ -62,7 +62,7 @@ sap.ui.define([
62
62
 
63
63
  /**
64
64
  * Creates a drill down popover
65
- * @param oChart
65
+ * @param oMDCChart
66
66
  * @returns the popover object
67
67
  *
68
68
  * @private
@@ -90,7 +90,7 @@ sap.ui.define([
90
90
  control: oMDCChart,
91
91
  key: "Item",
92
92
  state: [{
93
- name: oListItem.data("dim").name,
93
+ name: oListItem.data("dim").dim.name,
94
94
  position: oMDCChart.getItems().length
95
95
  }]
96
96
  });
@@ -135,8 +135,8 @@ sap.ui.define([
135
135
 
136
136
  /**
137
137
  * Shows the drill-down popover on the toolbar button of an mdc.Chart instance
138
- * @param {sap.ui.mdc.Chart} oChart
139
- * @param {sap.m.Button}
138
+ * @param {sap.ui.mdc.Chart} oMDCChart
139
+ * @param {sap.m.Button} oDrillBtn
140
140
  *
141
141
  * @experimental
142
142
  * @private
@@ -181,7 +181,7 @@ sap.ui.define([
181
181
  type: ListType.Active
182
182
  });
183
183
 
184
- oListItem.data("dim", oDimension);
184
+ oListItem.data("dim", {dim: oDimension});
185
185
 
186
186
  /*sTooltip = this._getFieldTooltip(oDimension.name);
187
187
  if (sTooltip) {
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @extends sap.ui.mdc.util.PropertyHelper
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.98.0
28
+ * @version 1.101.0
29
29
  *
30
30
  * @private
31
31
  * @experimental
@@ -23,13 +23,12 @@ sap.ui.define([
23
23
  */
24
24
 
25
25
  /**
26
- *
27
26
  * Utilities to create conditions to be used in {@link sap.ui.mdc.FilterField FilterField},
28
27
  * {@link sap.ui.mdc.FilterBar FilterBar} or {@link sap.ui.mdc.condition.ConditionModel ConditionModel}
29
28
  *
30
29
  * @namespace
31
30
  * @author SAP SE
32
- * @version 1.98.0
31
+ * @version 1.101.0
33
32
  * @since 1.61.0
34
33
  * @alias sap.ui.mdc.condition.Condition
35
34
  *
@@ -53,6 +52,7 @@ sap.ui.define([
53
52
  * @property {object} [outParameters] Out parameters of the condition. For each field path, a value is stored
54
53
  * @property {boolean} [isEmpty] If set, the condition is empty (used as dummy condition in {@link sap.ui.mdc.field.DefineConditionPanel DefineConditionPanel})
55
54
  * @property {sap.ui.mdc.enum.ConditionValidated} validated If set to <code>ConditionValidated.Validated</code>, the condition is validated (by the field help) and not shown in the {@link sap.ui.mdc.field.DefineConditionPanel DefineConditionPanel} control
55
+ * @property {object} [payload] Payload of the condition. Set by application. Data needs to be stringified. (as stored and loaded in variants)
56
56
  * @private
57
57
  * @ui5-restricted sap.fe
58
58
  * @MDC_PUBLIC_CANDIDATE
@@ -66,15 +66,16 @@ sap.ui.define([
66
66
  *
67
67
  * @param {string} sKey Operator for the condition
68
68
  * @param {string} sDescription Description of the operator
69
- * @param {object} oInParameters In parameters of the condition
70
- * @param {object} oOutParameters Out parameters of the condition
69
+ * @param {object} [oInParameters] In parameters of the condition
70
+ * @param {object} [oOutParameters] Out parameters of the condition
71
+ * @param {object} [oPayload] Payload of the condition
71
72
  * @returns {sap.ui.mdc.condition.ConditionObject} The new condition object with the EQ operator along with <code>sKey</code> and <code>sDescription</code> as <code>aValues</code>
72
73
  * @private
73
74
  * @ui5-restricted sap.fe
74
75
  * @MDC_PUBLIC_CANDIDATE
75
76
  *
76
77
  */
77
- createItemCondition: function(sKey, sDescription, oInParameters, oOutParameters) {
78
+ createItemCondition: function(sKey, sDescription, oInParameters, oOutParameters, oPayload) {
78
79
  var sValidated = ConditionValidated.NotValidated;
79
80
  var aValues = [sKey, sDescription];
80
81
  if (sDescription === null || sDescription === undefined) {
@@ -82,7 +83,7 @@ sap.ui.define([
82
83
  } else {
83
84
  sValidated = ConditionValidated.Validated; // if there is a description set it is validated (even if empty string)
84
85
  }
85
- return this.createCondition("EQ", aValues, oInParameters, oOutParameters, sValidated);
86
+ return this.createCondition("EQ", aValues, oInParameters, oOutParameters, sValidated, oPayload);
86
87
  },
87
88
 
88
89
  /**
@@ -90,16 +91,17 @@ sap.ui.define([
90
91
  *
91
92
  * @param {string} sOperator Operator for the condition
92
93
  * @param {any[]} aValues Array of values for the condition
93
- * @param {object} oInParameters In parameters of the condition
94
- * @param {object} oOutParameters Out parameters of the condition
94
+ * @param {object} [oInParameters] In parameters of the condition
95
+ * @param {object} [oOutParameters] Out parameters of the condition
95
96
  * @param {sap.ui.mdc.enum.ConditionValidated} sValidated If set to <code>ConditionValidated.Validated</code>, the condition is validated (by the field help) and not shown in the <code>DefineConditionPanel</code> control
97
+ * @param {object} [oPayload] Payload of the condition
96
98
  * @returns {sap.ui.mdc.condition.ConditionObject} The new condition object with the given operator and values
97
99
  * @private
98
100
  * @ui5-restricted sap.fe
99
101
  * @MDC_PUBLIC_CANDIDATE
100
102
  *
101
103
  */
102
- createCondition: function(sOperator, aValues, oInParameters, oOutParameters, sValidated) {
104
+ createCondition: function(sOperator, aValues, oInParameters, oOutParameters, sValidated, oPayload) {
103
105
  var oCondition = { operator: sOperator, values: aValues, isEmpty: null, validated: sValidated }; // use null as undefined is not recognized by filter
104
106
  if (oInParameters) {
105
107
  oCondition.inParameters = oInParameters;
@@ -107,6 +109,9 @@ sap.ui.define([
107
109
  if (oOutParameters) {
108
110
  oCondition.outParameters = oOutParameters;
109
111
  }
112
+ if (oPayload) {
113
+ oCondition.payload = oPayload;
114
+ }
110
115
  return oCondition;
111
116
  },
112
117