@openui5/sap.ui.mdc 1.93.3 → 1.96.2

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 (237) hide show
  1. package/.reuse/dep5 +6 -11
  2. package/THIRDPARTY.txt +10 -16
  3. package/package.json +4 -4
  4. package/src/sap/ui/mdc/.library +1 -1
  5. package/src/sap/ui/mdc/ActionToolbar.js +236 -334
  6. package/src/sap/ui/mdc/AggregationBaseDelegate.js +2 -1
  7. package/src/sap/ui/mdc/Chart.js +150 -22
  8. package/src/sap/ui/mdc/ChartDelegateNew.js +15 -0
  9. package/src/sap/ui/mdc/ChartNew.js +107 -66
  10. package/src/sap/ui/mdc/Control.js +4 -3
  11. package/src/sap/ui/mdc/Element.js +5 -4
  12. package/src/sap/ui/mdc/Field.js +2 -2
  13. package/src/sap/ui/mdc/FilterBar.js +1 -10
  14. package/src/sap/ui/mdc/FilterField.js +28 -4
  15. package/src/sap/ui/mdc/Link.js +2 -2
  16. package/src/sap/ui/mdc/MultiValueField.js +1 -1
  17. package/src/sap/ui/mdc/Table.js +172 -79
  18. package/src/sap/ui/mdc/TableDelegate.js +20 -3
  19. package/src/sap/ui/mdc/ValueHelp.js +1474 -0
  20. package/src/sap/ui/mdc/ValueHelpDelegate.js +147 -0
  21. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +49 -104
  22. package/src/sap/ui/mdc/chart/DimensionItem.js +3 -3
  23. package/src/sap/ui/mdc/chart/Item.js +2 -3
  24. package/src/sap/ui/mdc/chart/MeasureItem.js +2 -2
  25. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +21 -2
  26. package/src/sap/ui/mdc/chart/ToolbarHandler.js +237 -225
  27. package/src/sap/ui/mdc/chartNew/ChartSelectionDetailsNew.js +1 -1
  28. package/src/sap/ui/mdc/chartNew/ChartToolbarNew.js +14 -10
  29. package/src/sap/ui/mdc/chartNew/ChartTypeButtonNew.js +1 -1
  30. package/src/sap/ui/mdc/chartNew/DrillStackHandlerNew.js +12 -10
  31. package/src/sap/ui/mdc/chartNew/ItemNew.js +0 -1
  32. package/src/sap/ui/mdc/chartNew/PropertyHelperNew.js +1 -1
  33. package/src/sap/ui/mdc/condition/Condition.js +2 -2
  34. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  35. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  36. package/src/sap/ui/mdc/condition/FilterConverter.js +1 -1
  37. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +13 -7
  38. package/src/sap/ui/mdc/condition/Operator.js +4 -4
  39. package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
  40. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +43 -0
  41. package/src/sap/ui/mdc/designtime/chart/ChartNew.designtime.js +91 -0
  42. package/src/sap/ui/mdc/designtime/filterbar/FilterBar.designtime.js +20 -0
  43. package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +31 -0
  44. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +5 -0
  45. package/src/sap/ui/mdc/enum/ContentMode.js +25 -4
  46. package/src/sap/ui/mdc/enum/SelectType.js +43 -0
  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 +19 -4
  50. package/src/sap/ui/mdc/field/ConditionsType.js +5 -4
  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 +38 -14
  54. package/src/sap/ui/mdc/field/FieldBase.js +92 -41
  55. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +9 -2
  56. package/src/sap/ui/mdc/field/FieldHelpBase.js +64 -4
  57. package/src/sap/ui/mdc/field/FieldInfoBase.js +9 -1
  58. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  59. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  60. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  61. package/src/sap/ui/mdc/field/FieldValueHelp.js +7 -1
  62. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  63. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +1 -1
  64. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +1 -1
  65. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +2 -2
  66. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +1 -1
  67. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  68. package/src/sap/ui/mdc/field/ListFieldHelp.js +3 -3
  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/ValueHelpPanel.js +1 -1
  73. package/src/sap/ui/mdc/field/content/BooleanContent.js +15 -3
  74. package/src/sap/ui/mdc/field/content/ContentFactory.js +16 -8
  75. package/src/sap/ui/mdc/field/content/DefaultContent.js +64 -23
  76. package/src/sap/ui/mdc/field/content/LinkContent.js +6 -0
  77. package/src/sap/ui/mdc/field/content/SearchContent.js +21 -3
  78. package/src/sap/ui/mdc/field/content/UnitContent.js +2 -2
  79. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +105 -44
  80. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +52 -0
  81. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +10 -51
  82. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +1 -1
  83. package/src/sap/ui/mdc/flexibility/ActionToolbar.flexibility.js +22 -0
  84. package/src/sap/ui/mdc/flexibility/ActionToolbarAction.flexibility.js +19 -0
  85. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  86. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +57 -46
  87. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  88. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  89. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +203 -197
  90. package/src/sap/ui/mdc/library.js +588 -8
  91. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  92. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  93. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  94. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  95. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  96. package/src/sap/ui/mdc/link/Factory.js +1 -1
  97. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  98. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  99. package/src/sap/ui/mdc/link/Panel.js +1 -1
  100. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  101. package/src/sap/ui/mdc/link/PanelListItem.js +1 -1
  102. package/src/sap/ui/mdc/link/SelectionDialog.js +2 -2
  103. package/src/sap/ui/mdc/link/SelectionDialogItem.js +1 -1
  104. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  105. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  106. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  107. package/src/sap/ui/mdc/messagebundle.properties +31 -5
  108. package/src/sap/ui/mdc/messagebundle_ar.properties +19 -4
  109. package/src/sap/ui/mdc/messagebundle_bg.properties +18 -3
  110. package/src/sap/ui/mdc/messagebundle_ca.properties +18 -3
  111. package/src/sap/ui/mdc/messagebundle_cs.properties +31 -16
  112. package/src/sap/ui/mdc/messagebundle_cy.properties +18 -3
  113. package/src/sap/ui/mdc/messagebundle_da.properties +18 -3
  114. package/src/sap/ui/mdc/messagebundle_de.properties +20 -5
  115. package/src/sap/ui/mdc/messagebundle_el.properties +19 -4
  116. package/src/sap/ui/mdc/messagebundle_en.properties +17 -2
  117. package/src/sap/ui/mdc/messagebundle_en_GB.properties +18 -3
  118. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +11 -3
  119. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +19 -3
  120. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +11 -2
  121. package/src/sap/ui/mdc/messagebundle_es.properties +43 -28
  122. package/src/sap/ui/mdc/messagebundle_es_MX.properties +18 -3
  123. package/src/sap/ui/mdc/messagebundle_et.properties +18 -3
  124. package/src/sap/ui/mdc/messagebundle_fi.properties +19 -4
  125. package/src/sap/ui/mdc/messagebundle_fr.properties +32 -17
  126. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +18 -3
  127. package/src/sap/ui/mdc/messagebundle_hi.properties +18 -3
  128. package/src/sap/ui/mdc/messagebundle_hr.properties +18 -3
  129. package/src/sap/ui/mdc/messagebundle_hu.properties +19 -4
  130. package/src/sap/ui/mdc/messagebundle_id.properties +19 -4
  131. package/src/sap/ui/mdc/messagebundle_it.properties +41 -26
  132. package/src/sap/ui/mdc/messagebundle_iw.properties +18 -3
  133. package/src/sap/ui/mdc/messagebundle_ja.properties +28 -13
  134. package/src/sap/ui/mdc/messagebundle_kk.properties +18 -3
  135. package/src/sap/ui/mdc/messagebundle_ko.properties +18 -3
  136. package/src/sap/ui/mdc/messagebundle_lt.properties +18 -3
  137. package/src/sap/ui/mdc/messagebundle_lv.properties +18 -3
  138. package/src/sap/ui/mdc/messagebundle_ms.properties +18 -3
  139. package/src/sap/ui/mdc/messagebundle_nl.properties +19 -4
  140. package/src/sap/ui/mdc/messagebundle_no.properties +25 -10
  141. package/src/sap/ui/mdc/messagebundle_pl.properties +22 -7
  142. package/src/sap/ui/mdc/messagebundle_pt.properties +19 -4
  143. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +18 -3
  144. package/src/sap/ui/mdc/messagebundle_ro.properties +21 -6
  145. package/src/sap/ui/mdc/messagebundle_ru.properties +18 -3
  146. package/src/sap/ui/mdc/messagebundle_sh.properties +18 -3
  147. package/src/sap/ui/mdc/messagebundle_sk.properties +19 -4
  148. package/src/sap/ui/mdc/messagebundle_sl.properties +18 -3
  149. package/src/sap/ui/mdc/messagebundle_sv.properties +19 -4
  150. package/src/sap/ui/mdc/messagebundle_th.properties +24 -9
  151. package/src/sap/ui/mdc/messagebundle_tr.properties +18 -3
  152. package/src/sap/ui/mdc/messagebundle_uk.properties +18 -3
  153. package/src/sap/ui/mdc/messagebundle_vi.properties +18 -3
  154. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +18 -3
  155. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +18 -3
  156. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  157. package/src/sap/ui/mdc/mixin/DelegateMixin.js +2 -2
  158. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +3 -3
  159. package/src/sap/ui/mdc/mixin/PromiseMixin.js +94 -0
  160. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelperNew.js +1 -1
  161. package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +6 -6
  162. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +37 -10
  163. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +94 -0
  164. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegateNew.js +492 -203
  165. package/src/sap/ui/mdc/p13n/DefaultProviderRegistry.js +1 -1
  166. package/src/sap/ui/mdc/p13n/Engine.js +3 -2
  167. package/src/sap/ui/mdc/p13n/P13nBuilder.js +6 -60
  168. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  169. package/src/sap/ui/mdc/p13n/UIManager.js +1 -1
  170. package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +22 -24
  171. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +59 -0
  172. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +1 -2
  173. package/src/sap/ui/mdc/p13n/panels/BasePanel.js +17 -8
  174. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +1 -2
  175. package/src/sap/ui/mdc/p13n/panels/ChartItemPanelNew.js +1171 -0
  176. package/src/sap/ui/mdc/p13n/panels/GroupPanel.js +1 -1
  177. package/src/sap/ui/mdc/p13n/panels/GroupView.js +7 -11
  178. package/src/sap/ui/mdc/p13n/panels/ListView.js +5 -3
  179. package/src/sap/ui/mdc/p13n/panels/QueryPanel.js +16 -9
  180. package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +0 -1
  181. package/src/sap/ui/mdc/p13n/panels/SortPanel.js +0 -1
  182. package/src/sap/ui/mdc/p13n/panels/SortQueryPanel.js +1 -1
  183. package/src/sap/ui/mdc/p13n/panels/Wrapper.js +1 -1
  184. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +89 -0
  185. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +9 -6
  186. package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +33 -4
  187. package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +9 -15
  188. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +12 -0
  189. package/src/sap/ui/mdc/p13n/subcontroller/GroupController.js +5 -12
  190. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +19 -21
  191. package/src/sap/ui/mdc/table/Column.js +35 -9
  192. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  193. package/src/sap/ui/mdc/table/GridTableType.js +0 -1
  194. package/src/sap/ui/mdc/table/PropertyHelper.js +108 -5
  195. package/src/sap/ui/mdc/table/ResponsiveTableType.js +19 -3
  196. package/src/sap/ui/mdc/table/RowSettings.js +1 -1
  197. package/src/sap/ui/mdc/table/TableTypeBase.js +0 -1
  198. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +1 -1
  199. package/src/sap/ui/mdc/themes/base/FilterBar.less +2 -2
  200. package/src/sap/ui/mdc/themes/base/GroupView.less +2 -2
  201. package/src/sap/ui/mdc/themes/base/ListView.less +2 -2
  202. package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +56 -21
  203. package/src/sap/ui/mdc/ui/Container.js +2 -2
  204. package/src/sap/ui/mdc/ui/ContainerItem.js +2 -2
  205. package/src/sap/ui/mdc/util/Common.js +26 -0
  206. package/src/sap/ui/mdc/util/FilterUtil.js +12 -1
  207. package/src/sap/ui/mdc/util/IdentifierUtil.js +4 -0
  208. package/src/sap/ui/mdc/util/PromiseCache.js +266 -0
  209. package/src/sap/ui/mdc/util/PropertyHelper.js +22 -1
  210. package/src/sap/ui/mdc/valuehelp/Dialog.js +498 -0
  211. package/src/sap/ui/mdc/valuehelp/Popover.js +362 -0
  212. package/src/sap/ui/mdc/valuehelp/base/Container.js +642 -0
  213. package/src/sap/ui/mdc/valuehelp/base/Content.js +628 -0
  214. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +139 -0
  215. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +557 -0
  216. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +133 -0
  217. package/src/sap/ui/mdc/valuehelp/content/Bool.js +318 -0
  218. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +276 -0
  219. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +532 -0
  220. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +638 -0
  221. package/src/sap/ui/mdc/valuehelp/content/MTable.js +916 -0
  222. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +3 -2
  223. package/test/sap/ui/mdc/testutils/opa/actions/OpenContextMenu.js +48 -0
  224. package/test/sap/ui/mdc/testutils/opa/chartNew/ActionsBase.js +310 -0
  225. package/test/sap/ui/mdc/testutils/opa/chartNew/ActionsViz.js +39 -0
  226. package/test/sap/ui/mdc/testutils/opa/chartNew/AssertionsBase.js +118 -0
  227. package/test/sap/ui/mdc/testutils/opa/chartNew/AssertionsViz.js +137 -0
  228. package/test/sap/ui/mdc/testutils/opa/chartNew/ChartNew.js +24 -0
  229. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +289 -0
  230. package/test/sap/ui/mdc/testutils/opa/filterbar/Actions.js +250 -0
  231. package/test/sap/ui/mdc/testutils/opa/filterbar/Assertions.js +91 -0
  232. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +137 -0
  233. package/test/sap/ui/mdc/testutils/opa/filterbar/Util.js +25 -0
  234. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +401 -93
  235. package/test/sap/ui/mdc/testutils/opa/p13n/Util.js +4 -1
  236. package/test/sap/ui/mdc/testutils/opa/p13n/{waitForP13nButtonWithParentAndIcon.js → waitForP13nButtonWithMatchers.js} +5 -18
  237. package/test/sap/ui/mdc/testutils/opa/table/TestObjects.js +0 -1
@@ -0,0 +1,147 @@
1
+ /*
2
+ * ! OpenUI5
3
+ * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+
7
+ // ---------------------------------------------------------------------------------------
8
+ // Helper class used to execute model specific logic in ValueHelp
9
+ // ---------------------------------------------------------------------------------------
10
+
11
+ sap.ui.define([
12
+ "sap/ui/mdc/BaseDelegate",
13
+ "sap/ui/model/FilterType"
14
+ ], function(
15
+ BaseDelegate,
16
+ FilterType
17
+ ) {
18
+ "use strict";
19
+
20
+ /**
21
+ * @class Delegate class for {@link sap.ui.mdc.ValueHelp ValueHelp}.<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
+ * @author SAP SE
25
+ * @private
26
+ * @ui5-restricted sap.ui.mdc.ValueHelp
27
+ * @experimental As of version 1.95
28
+ * @since 1.95.0
29
+ * @alias sap.ui.mdc.ValueHelpDelegate
30
+ */
31
+ var ValueHelpDelegate = Object.assign({}, BaseDelegate);
32
+
33
+ /**
34
+ * Requests the content of the value help.
35
+ *
36
+ * This function is called when the value help is opened or a key or description is requested.
37
+ *
38
+ * So, depending on the value help content used, all content controls and data need to be assigned.
39
+ * Once they are assigned and the data is set, the returned <code>Promise</code> needs to be resolved.
40
+ * Only then does the value help continue opening or reading data.
41
+ *
42
+ * @param {object} oPayload Payload for delegate
43
+ * @param {sap.ui.mdc.valuehelp.base.Container} oContainer Container instance
44
+ * @returns {Promise} Promise that is resolved if all content is available
45
+ * @private
46
+ * @ui5-restricted sap.fe
47
+ * @MDC_PUBLIC_CANDIDATE
48
+ */
49
+ ValueHelpDelegate.retrieveContent = function (oPayload, oContainer) {
50
+ return Promise.resolve();
51
+ };
52
+
53
+ /**
54
+ * Checks if a <code>ListBinding</code> supports $Search.
55
+ *
56
+ * @param {object} oPayload Payload for delegate
57
+ * @param {sap.ui.model.ListBinding} oListBinding ListBinding
58
+ * @returns {boolean} true if $search is supported
59
+ * @private
60
+ * @ui5-restricted sap.ui.mdc.ValueHelp
61
+ */
62
+ ValueHelpDelegate.isSearchSupported = function(oPayload, oListBinding) {
63
+ return false;
64
+ };
65
+
66
+ /**
67
+ * Executes a search in a <code>ListBinding</code>.
68
+ *
69
+ * @param {object} oPayload Payload for delegate
70
+ * @param {sap.ui.model.ListBinding} oListBinding ListBinding
71
+ * @param {string} sSearch Search string
72
+ * @returns {Promise} Promise that is resolved if search is executed
73
+ * @private
74
+ * @ui5-restricted sap.ui.mdc.ValueHelp
75
+ */
76
+ ValueHelpDelegate.executeSearch = function(oPayload, oListBinding, sSearch) {
77
+ return Promise.resolve();
78
+ };
79
+
80
+ /**
81
+ * Executes a filter in a <code>ListBinding</code>.
82
+ *
83
+ * @param {object} oPayload Payload for delegate
84
+ * @param {sap.ui.model.ListBinding} oListBinding List binding
85
+ * @param {sap.ui.model.Filter} oFilter Filter
86
+ * @param {int} iRequestedItems Number of requested items
87
+ * @returns {Promise<sap.ui.model.ListBinding>} Promise that is resolved if search is executed
88
+ * @private
89
+ * @ui5-restricted sap.ui.mdc.ValueHelp
90
+ */
91
+ ValueHelpDelegate.executeFilter = function(oPayload, oListBinding, oFilter, iRequestedItems) {
92
+
93
+ if (oListBinding.isA("sap.ui.model.json.JSONListBinding")) { // TODO: find way unique for all ListBindings
94
+ oListBinding.filter(oFilter, FilterType.Application);
95
+ return Promise.resolve(oListBinding);
96
+ } else { // oData V2
97
+ var fnResolve;
98
+ var fnCallback = function() {
99
+ fnResolve(oListBinding);
100
+ };
101
+ oListBinding.attachEventOnce("dataReceived", fnCallback);
102
+ oListBinding.initialize();
103
+ oListBinding.filter(oFilter, FilterType.Application);
104
+ oListBinding.getContexts(0, iRequestedItems); // trigger request. not all entries needed, we only need to know if there is one, none or more
105
+ return new Promise(function(fResolve, fReject) {
106
+ fnResolve = fResolve;
107
+ });
108
+ }
109
+
110
+ };
111
+
112
+ /**
113
+ * Checks if at least one <code>PropertyBinding</code> is waiting for an update.
114
+ * As long as the value has not been set for <code>PropertyBinding</code>,
115
+ * <code>ValueHelp</code> needs to wait.
116
+ *
117
+ * This check is used when selecting the description for a key if in parameters are used.
118
+ * The description can only be determined if the values of the in parameters are known.
119
+ *
120
+ * @param {object} oPayload Payload for delegate
121
+ * @param {sap.ui.model.PropertyBinding[]} aBindings <code>PropertyBinding</code> array to check
122
+ * @returns {null|Promise} <code>Promise</code> that is resolved once every <code>PropertyBinding</code> has been updated
123
+ * @private
124
+ * @ui5-restricted sap.ui.mdc.ValueHelp
125
+ */
126
+ ValueHelpDelegate.checkBindingsPending = function(oPayload, aBindings) {
127
+ return null;
128
+ };
129
+
130
+ /**
131
+ * Checks if the <code>ListBinding</code> is waiting for an update.
132
+ * As long as the context has not been set for <code>ListBinding</code>,
133
+ * <code>FieldValueHelp</code> needs to wait.
134
+ *
135
+ * @param {object} oPayload Payload for delegate
136
+ * @param {sap.ui.model.ListBinding} oListBinding <code>ListBinding</code> to check
137
+ * @param {object} oListBindingInfo <code>ListBindingInfo</code> to check
138
+ * @returns {boolean|Promise<boolean>} <code>Promise</code> that is resolved once <code>ListBinding</code> has been updated
139
+ * @private
140
+ * @ui5-restricted sap.ui.mdc.ValueHelp
141
+ */
142
+ ValueHelpDelegate.checkListBindingPending = function(oPayload, oListBinding, oListBindingInfo) {
143
+ return false;
144
+ };
145
+
146
+ return ValueHelpDelegate;
147
+ });
@@ -5,13 +5,31 @@
5
5
  */
6
6
  sap.ui.define([
7
7
  "sap/ui/core/Control",
8
- "sap/m/ToolbarSeparator",
9
- "sap/ui/base/ManagedObjectObserver",
10
8
  "sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer",
11
9
  "sap/ui/mdc/enum/ActionToolbarActionAlignment"
12
- ], function(Control, ToolbarSeparator, ManagedObjectObserver, ActionToolbarActionRenderer, ActionToolbarActionAlignment) {
10
+ ], function(Control, ActionToolbarActionRenderer, ActionToolbarActionAlignment) {
13
11
  "use strict";
14
12
 
13
+ /**
14
+ * Constructor for a new ActionToolbarAction.<br>
15
+ * <b>Note:</b><br>
16
+ * The control is experimental and the API / behavior is not finalized. It should only be used internally in other mdc controls (e.g.
17
+ * chart/table).<br>
18
+ *
19
+ * @param {string} [sId] ID for the new control, generated automatically if no ID is given
20
+ * @param {object} [mSettings] Initial settings for the new control
21
+ * @class The action for an {@link sap.ui.mdc.ActionToolbar ActionToolbar}) control
22
+ * @extends sap.ui.core.Control
23
+ * @author SAP SE
24
+ * @version 1.96.2
25
+ * @constructor
26
+ * @private
27
+ * @since 1.58
28
+ * @experimental As of version 1.58
29
+ * @ui5-restricted sap.ui.mdc
30
+ * @alias sap.ui.mdc.actiontoolbar.ActionToolbarAction
31
+ * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
32
+ */
15
33
  var ActionToolbarAction = Control.extend("sap.ui.mdc.actiontoolbar.ActionToolbarAction", {
16
34
  metadata: {
17
35
  library: "sap.ui.mdc",
@@ -19,6 +37,9 @@ sap.ui.define([
19
37
  "sap.m.IOverflowToolbarContent"
20
38
  ],
21
39
  properties: {
40
+ /**
41
+ * Layout information
42
+ */
22
43
  layoutInformation: {
23
44
  type: "object",
24
45
  defaultValue: {
@@ -30,113 +51,18 @@ sap.ui.define([
30
51
  },
31
52
  defaultAggregation: "action",
32
53
  aggregations: {
54
+ /**
55
+ * Action
56
+ */
33
57
  action: {
34
58
  type: "sap.ui.core.Control",
35
59
  multiple: false
36
60
  }
37
61
  },
38
- associations: {
39
- separators: {
40
- type: "sap.m.ToolbarSeparator",
41
- multiple: true
42
- }
43
- },
44
62
  renderer: ActionToolbarActionRenderer
45
63
  }
46
64
  });
47
65
 
48
- ActionToolbarAction.prototype.init = function() {
49
- this._bSeparatorBeforeIsVisible = false;
50
- this._bSeparatorAfterIsVisible = false;
51
- this._oSeparatorBefore = new ToolbarSeparator({
52
- visible: this._bSeparatorBeforeIsVisible
53
- });
54
- this._oSeparatorAfter = new ToolbarSeparator({
55
- visible: this._bSeparatorAfterIsVisible
56
- });
57
- this.addAssociation("separators", this._oSeparatorBefore);
58
- this.addAssociation("separators", this._oSeparatorAfter);
59
-
60
- this._oObserver = new ManagedObjectObserver(this._observeChanges.bind(this));
61
- this._oObserver.observe(this, {
62
- parent: true,
63
- properties: ["visible"]
64
- });
65
- };
66
-
67
- ActionToolbarAction.prototype.exit = function() {
68
- if (this._oSeparatorBefore) {
69
- this._oSeparatorBefore.destroy();
70
- this._oSeparatorBefore = undefined;
71
- }
72
- if (this._oSeparatorAfter) {
73
- this._oSeparatorAfter.destroy();
74
- this._oSeparatorAfter = undefined;
75
- }
76
- this._bSeparatorBeforeIsVisible = undefined;
77
- this._bSeparatorAfterIsVisible = undefined;
78
- };
79
-
80
- ActionToolbarAction.prototype.updateSeparators = function() {
81
- var sAlignment = this.getLayoutInformation().alignment;
82
- var sAggregationName = this.getLayoutInformation().aggregationName;
83
- var oActionToolbar = this.getParent();
84
- var oActionToolbarAggregation = oActionToolbar.getAggregation(sAggregationName);
85
-
86
- var aControlsInAggregation = oActionToolbarAggregation.filter(function(oControl) {
87
- return !oControl.isA("sap.ui.mdc.actiontoolbar.ActionToolbarAction") && oControl !== this && oControl !== this._oSeparatorBefore && oControl !== this._oSeparatorAfter;
88
- }.bind(this));
89
-
90
- var aControlsInAggregationAfter = aControlsInAggregation.filter(function(oControl) {
91
- return oActionToolbarAggregation.indexOf(oControl) > oActionToolbarAggregation.indexOf(this) && oControl.getVisible();
92
- }.bind(this));
93
-
94
- var aControlsInAggregationBefore = aControlsInAggregation.filter(function(oControl) {
95
- return oActionToolbarAggregation.indexOf(oControl) < oActionToolbarAggregation.indexOf(this) && oControl.getVisible();
96
- }.bind(this));
97
-
98
- var bSeparatorBeforeVisible = sAlignment === ActionToolbarActionAlignment.End &&
99
- !oActionToolbar._aggregationContainsActionSeparatorBefore(sAggregationName) &&
100
- aControlsInAggregationBefore.length > 0;
101
-
102
- var bSeparatorAfterVisible = sAlignment === ActionToolbarActionAlignment.Begin &&
103
- !oActionToolbar._aggregationContainsActionSeparatorAfter(sAggregationName) &&
104
- aControlsInAggregationAfter.length > 0;
105
-
106
- this._oSeparatorBefore.setVisible(this.getAction() && this.getAction().getVisible() && bSeparatorBeforeVisible);
107
- this._oSeparatorAfter.setVisible(this.getAction() && this.getAction().getVisible() && bSeparatorAfterVisible);
108
- };
109
-
110
- ActionToolbarAction.prototype.getSeparatorBefore = function() {
111
- return this._oSeparatorBefore;
112
- };
113
-
114
- ActionToolbarAction.prototype.getSeparatorAfter = function() {
115
- return this._oSeparatorAfter;
116
- };
117
-
118
- ActionToolbarAction.prototype._observeChanges = function(oChanges) {
119
- if (oChanges.type === "parent" && oChanges.mutation === "unset") {
120
- this.destroy();
121
- }
122
-
123
- if (oChanges.name === "property" && oChanges.name === "visible") {
124
- this.updateSeparators();
125
- }
126
- };
127
-
128
- ActionToolbarAction.prototype._onBeforeEnterOverflow = function() {
129
- this._bSeparatorBeforeIsVisible = this._oSeparatorBefore.getVisible();
130
- this._bSeparatorAfterIsVisible = this._oSeparatorAfter.getVisible();
131
- this._oSeparatorBefore.setVisible(false);
132
- this._oSeparatorAfter.setVisible(false);
133
- };
134
-
135
- ActionToolbarAction.prototype._onAfterExitOverflow = function() {
136
- this._oSeparatorBefore.setVisible(this._bSeparatorBeforeIsVisible);
137
- this._oSeparatorAfter.setVisible(this._bSeparatorAfterIsVisible);
138
- };
139
-
140
66
  /**
141
67
  * Sets the behavior of the <code>ActionToolbarAction</code> inside an <code>OverflowToolbar</code> configuration.
142
68
  *
@@ -147,13 +73,32 @@ sap.ui.define([
147
73
  var oConfig = {
148
74
  canOverflow: true
149
75
  };
150
-
151
- oConfig.onBeforeEnterOverflow = this._onBeforeEnterOverflow.bind(this);
152
-
76
+ oConfig.onBeforeEnterOverflow = this._onBeforeEnterOverflow.bind(this);
153
77
  oConfig.onAfterExitOverflow = this._onAfterExitOverflow.bind(this);
154
78
 
155
79
  return oConfig;
156
80
  };
157
81
 
82
+ ActionToolbarAction.prototype._onBeforeEnterOverflow = function() {
83
+ if (this.getParent()) {
84
+ this.getParent()._updateSeparators();
85
+ }
86
+ };
87
+
88
+ ActionToolbarAction.prototype._onAfterExitOverflow = function() {
89
+ if (this.getParent()) {
90
+ this.getParent()._updateSeparators();
91
+ }
92
+ };
93
+
94
+ /**
95
+ *
96
+ * @returns {String} a text defining the label of this <code>ActionToolbarAction</code> defined by the inner action.
97
+ */
98
+ ActionToolbarAction.prototype.getLabel = function() {
99
+ var oAction = this.getAction();
100
+ return oAction && oAction.getText ? oAction.getText() : this.getId();
101
+ };
102
+
158
103
  return ActionToolbarAction;
159
104
  });
@@ -27,14 +27,14 @@ sap.ui.define([
27
27
  * The control is experimental and the API/behaviour is not finalised and hence this should not be used for productive usage.
28
28
  * @extends sap.ui.mdc.chart.Item
29
29
  * @author SAP SE
30
- * @constructor The API/behaviour is not finalised and hence this control should not be used for productive usage.
31
30
  * @private
32
- * @experimental
31
+ * @experimental As of version 1.61
32
+ * @ui5-restricted sap.ui.mdc
33
33
  * @since 1.61
34
34
  * @alias sap.ui.mdc.chart.DimensionItem
35
35
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
36
36
  */
37
- var DimensionItem = Item.extend("sap.ui.mdc.chart.DimensionItem", /** @lends sap.ui.mdc.chart.Item.prototype */
37
+ var DimensionItem = Item.extend("sap.ui.mdc.chart.DimensionItem", /** @lends sap.ui.mdc.chart.DimensionItem.prototype */
38
38
  {
39
39
  metadata: {
40
40
  "abstract": true,
@@ -8,7 +8,6 @@ sap.ui.define([
8
8
  ], function(Element) {
9
9
  "use strict";
10
10
 
11
- // Provides the Item class.
12
11
  /**
13
12
  * Constructor for a new Item.
14
13
  *
@@ -20,10 +19,10 @@ sap.ui.define([
20
19
  * The control is experimental and the API/behaviour is not finalised and hence this should not be used for productive usage.
21
20
  * @extends sap.ui.core.Element
22
21
  * @author SAP SE
23
- * @constructor The API/behaviour is not finalised and hence this control should not be used for productive usage.
24
22
  * @private
25
- * @experimental
23
+ * @ui5-restricted sap.ui.mdc
26
24
  * @since 1.61
25
+ * @experimental As of version 1.61
27
26
  * @alias sap.ui.mdc.chart.Item
28
27
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
29
28
  */
@@ -23,9 +23,9 @@ sap.ui.define([
23
23
  * The control is experimental and the API/behaviour is not finalised and hence this should not be used for productive usage.
24
24
  * @extends sap.ui.mdc.chart.Item
25
25
  * @author SAP SE
26
- * @constructor The API/behaviour is not finalised and hence this control should not be used for productive usage.
27
26
  * @private
28
- * @experimental
27
+ * @experimental As of version 1.61
28
+ * @ui5-restricted sap.ui.mdc
29
29
  * @since 1.61
30
30
  * @alias sap.ui.mdc.chart.MeasureItem
31
31
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
@@ -8,8 +8,27 @@ sap.ui.define([
8
8
  ], function(Element) {
9
9
  "use strict";
10
10
 
11
- // The aggregation to feed details actions for dapaoint selection in the mdc chart
12
- var SelectionDetailsActions = Element.extend("sap.ui.mdc.chart.SelectionDetailsActions", {
11
+ /**
12
+ * The aggregation to feed details actions for dapaoint selection in the mdc chart
13
+ *
14
+ * @param {string} [sId] Optional ID for the new element; generated automatically if no non-empty ID is given
15
+ * Note: this can be omitted, no matter whether <code>mSettings</code> will be given or not!
16
+ * @param {object} [mSettings] Object with initial settings for the new control
17
+ *
18
+ * @class The aggregation to feed details actions for dapaoint selection in the mdc chart
19
+ *
20
+ * @extends sap.ui.mdc.Element
21
+ * @abstract
22
+ * @author SAP SE
23
+ * @version 1.96.2
24
+ * @alias sap.ui.mdc.chart.SelectionDetailsActions
25
+ *
26
+ * @private
27
+ * @since 1.61
28
+ * @experimental As of version 1.61
29
+ * @ui5-restricted sap.ui.mdc
30
+ */
31
+ var SelectionDetailsActions = Element.extend("sap.ui.mdc.chart.SelectionDetailsActions", {
13
32
 
14
33
  metadata: {
15
34
  library: "sap.ui.mdc",