@openui5/sap.ui.mdc 1.102.2 → 1.104.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 (256) hide show
  1. package/.reuse/dep5 +17 -0
  2. package/LICENSES/LicenseRef-tzdata-PublicDomain.txt +5 -0
  3. package/THIRDPARTY.txt +35 -2
  4. package/package.json +4 -4
  5. package/src/sap/ui/mdc/.library +1 -1
  6. package/src/sap/ui/mdc/ActionToolbar.js +1 -1
  7. package/src/sap/ui/mdc/AggregationBaseDelegate.js +11 -0
  8. package/src/sap/ui/mdc/Chart.js +141 -57
  9. package/src/sap/ui/mdc/ChartDelegate.js +97 -92
  10. package/src/sap/ui/mdc/Control.js +1 -1
  11. package/src/sap/ui/mdc/Element.js +1 -1
  12. package/src/sap/ui/mdc/Field.js +2 -2
  13. package/src/sap/ui/mdc/FilterBar.js +1 -1
  14. package/src/sap/ui/mdc/FilterField.js +2 -2
  15. package/src/sap/ui/mdc/Link.js +77 -12
  16. package/src/sap/ui/mdc/LinkDelegate.js +81 -76
  17. package/src/sap/ui/mdc/MultiValueField.js +1 -1
  18. package/src/sap/ui/mdc/Table.js +7 -1
  19. package/src/sap/ui/mdc/ValueHelp.js +1 -19
  20. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +2 -1
  21. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer.js +1 -2
  22. package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +1 -2
  23. package/src/sap/ui/mdc/chart/ChartToolbar.js +43 -5
  24. package/src/sap/ui/mdc/chart/DrillBreadcrumbs.js +6 -2
  25. package/src/sap/ui/mdc/chart/Item.js +6 -11
  26. package/src/sap/ui/mdc/chart/PropertyHelper.js +7 -8
  27. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +2 -3
  28. package/src/sap/ui/mdc/condition/Condition.js +1 -1
  29. package/src/sap/ui/mdc/condition/ConditionConverter.js +16 -131
  30. package/src/sap/ui/mdc/condition/ConditionModel.js +50 -21
  31. package/src/sap/ui/mdc/condition/FilterConverter.js +1 -1
  32. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +3 -3
  33. package/src/sap/ui/mdc/condition/Operator.js +1 -1
  34. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +1 -1
  35. package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
  36. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +18 -4
  37. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbarAction.designtime.js +53 -0
  38. package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +3 -0
  39. package/src/sap/ui/mdc/designtime/field/Field.designtime.js +9 -4
  40. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +3 -1
  41. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  42. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  43. package/src/sap/ui/mdc/field/ConditionType.js +135 -39
  44. package/src/sap/ui/mdc/field/ConditionsType.js +71 -10
  45. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -2
  46. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  47. package/src/sap/ui/mdc/field/DefineConditionPanel.js +93 -81
  48. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +1 -1
  49. package/src/sap/ui/mdc/field/FieldBase.js +94 -74
  50. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +20 -1
  51. package/src/sap/ui/mdc/field/FieldHelpBase.js +1 -39
  52. package/src/sap/ui/mdc/field/FieldInfoBase.js +23 -21
  53. package/src/sap/ui/mdc/field/FieldInput.js +2 -2
  54. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  55. package/src/sap/ui/mdc/field/FieldMultiInput.js +2 -2
  56. package/src/sap/ui/mdc/field/FieldValueHelp.js +1 -1
  57. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -19
  58. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +1 -1
  59. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +1 -1
  60. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +1 -1
  61. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +1 -1
  62. package/src/sap/ui/mdc/field/InParameter.js +1 -4
  63. package/src/sap/ui/mdc/field/ListFieldHelp.js +1 -1
  64. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  65. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  66. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  67. package/src/sap/ui/mdc/field/TokenDisplay.js +2 -2
  68. package/src/sap/ui/mdc/field/TokenizerDisplay.js +2 -2
  69. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -5
  70. package/src/sap/ui/mdc/field/content/DateTimeContent.js +1 -1
  71. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +4 -4
  72. package/src/sap/ui/mdc/filterbar/IFilterContainer.js +1 -1
  73. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +1 -1
  74. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +1 -1
  75. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +1 -1
  76. package/src/sap/ui/mdc/flexibility/ActionToolbar.flexibility.js +80 -4
  77. package/src/sap/ui/mdc/flexibility/AggregateFlex.js +19 -38
  78. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  79. package/src/sap/ui/mdc/flexibility/ChartTypeFlex.js +23 -41
  80. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +43 -58
  81. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  82. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  83. package/src/sap/ui/mdc/flexibility/GroupFlex.js +25 -55
  84. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +38 -57
  85. package/src/sap/ui/mdc/flexibility/SortFlex.js +23 -52
  86. package/src/sap/ui/mdc/flexibility/Table.flexibility.js +3 -3
  87. package/src/sap/ui/mdc/flexibility/Util.js +82 -0
  88. package/src/sap/ui/mdc/flexibility/xConfigFlex.js +137 -0
  89. package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +3 -1
  90. package/src/sap/ui/mdc/library.js +4 -15
  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 +9 -1
  99. package/src/sap/ui/mdc/link/Panel.js +26 -11
  100. package/src/sap/ui/mdc/link/PanelItem.js +10 -1
  101. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  102. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  103. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  104. package/src/sap/ui/mdc/messagebundle.properties +16 -2
  105. package/src/sap/ui/mdc/messagebundle_ar.properties +12 -2
  106. package/src/sap/ui/mdc/messagebundle_bg.properties +12 -2
  107. package/src/sap/ui/mdc/messagebundle_ca.properties +12 -2
  108. package/src/sap/ui/mdc/messagebundle_cs.properties +15 -5
  109. package/src/sap/ui/mdc/messagebundle_cy.properties +12 -2
  110. package/src/sap/ui/mdc/messagebundle_da.properties +12 -2
  111. package/src/sap/ui/mdc/messagebundle_de.properties +12 -2
  112. package/src/sap/ui/mdc/messagebundle_el.properties +24 -14
  113. package/src/sap/ui/mdc/messagebundle_en.properties +12 -2
  114. package/src/sap/ui/mdc/messagebundle_en_GB.properties +12 -2
  115. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +12 -2
  116. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +12 -2
  117. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +12 -2
  118. package/src/sap/ui/mdc/messagebundle_es.properties +18 -8
  119. package/src/sap/ui/mdc/messagebundle_es_MX.properties +12 -2
  120. package/src/sap/ui/mdc/messagebundle_et.properties +12 -2
  121. package/src/sap/ui/mdc/messagebundle_fi.properties +12 -2
  122. package/src/sap/ui/mdc/messagebundle_fr.properties +14 -4
  123. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +12 -2
  124. package/src/sap/ui/mdc/messagebundle_hi.properties +12 -2
  125. package/src/sap/ui/mdc/messagebundle_hr.properties +15 -5
  126. package/src/sap/ui/mdc/messagebundle_hu.properties +13 -3
  127. package/src/sap/ui/mdc/messagebundle_id.properties +12 -2
  128. package/src/sap/ui/mdc/messagebundle_it.properties +57 -47
  129. package/src/sap/ui/mdc/messagebundle_iw.properties +12 -2
  130. package/src/sap/ui/mdc/messagebundle_ja.properties +12 -2
  131. package/src/sap/ui/mdc/messagebundle_kk.properties +12 -2
  132. package/src/sap/ui/mdc/messagebundle_ko.properties +14 -4
  133. package/src/sap/ui/mdc/messagebundle_lt.properties +12 -2
  134. package/src/sap/ui/mdc/messagebundle_lv.properties +12 -2
  135. package/src/sap/ui/mdc/messagebundle_ms.properties +12 -2
  136. package/src/sap/ui/mdc/messagebundle_nl.properties +26 -16
  137. package/src/sap/ui/mdc/messagebundle_no.properties +12 -2
  138. package/src/sap/ui/mdc/messagebundle_pl.properties +12 -2
  139. package/src/sap/ui/mdc/messagebundle_pt.properties +16 -6
  140. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +12 -2
  141. package/src/sap/ui/mdc/messagebundle_ro.properties +12 -2
  142. package/src/sap/ui/mdc/messagebundle_ru.properties +12 -2
  143. package/src/sap/ui/mdc/messagebundle_sh.properties +13 -3
  144. package/src/sap/ui/mdc/messagebundle_sk.properties +12 -2
  145. package/src/sap/ui/mdc/messagebundle_sl.properties +12 -2
  146. package/src/sap/ui/mdc/messagebundle_sv.properties +12 -2
  147. package/src/sap/ui/mdc/messagebundle_th.properties +17 -7
  148. package/src/sap/ui/mdc/messagebundle_tr.properties +12 -2
  149. package/src/sap/ui/mdc/messagebundle_uk.properties +12 -2
  150. package/src/sap/ui/mdc/messagebundle_vi.properties +12 -2
  151. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +12 -2
  152. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +13 -3
  153. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  154. package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -1
  155. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -1
  156. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  157. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +1 -1
  158. package/src/sap/ui/mdc/odata/TypeUtil.js +24 -2
  159. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelper.js +5 -5
  160. package/src/sap/ui/mdc/odata/v4/FieldBaseDelegate.js +6 -0
  161. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +15 -28
  162. package/src/sap/ui/mdc/odata/v4/TypeUtil.js +6 -6
  163. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +0 -33
  164. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegate.js +360 -152
  165. package/src/sap/ui/mdc/p13n/Engine.js +1 -1
  166. package/src/sap/ui/mdc/p13n/PersistenceProvider.js +1 -0
  167. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  168. package/src/sap/ui/mdc/p13n/StateUtil.js +1 -1
  169. package/src/sap/ui/mdc/p13n/UIManager.js +1 -1
  170. package/src/sap/ui/mdc/p13n/modules/DefaultProviderRegistry.js +1 -1
  171. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +133 -0
  172. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +1 -7
  173. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +31 -6
  174. package/src/sap/ui/mdc/p13n/panels/FilterPanel.js +7 -32
  175. package/src/sap/ui/mdc/p13n/panels/LinkSelectionPanel.js +12 -4
  176. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +1 -1
  177. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +1 -1
  178. package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +24 -28
  179. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  180. package/src/sap/ui/mdc/table/PropertyHelper.js +30 -32
  181. package/src/sap/ui/mdc/table/ResponsiveTableType.js +2 -1
  182. package/src/sap/ui/mdc/table/RowActionItem.js +1 -1
  183. package/src/sap/ui/mdc/table/RowSettings.js +1 -1
  184. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +2 -7
  185. package/src/sap/ui/mdc/table/menu/Item.js +3 -3
  186. package/src/sap/ui/mdc/table/menu/QuickActionContainer.js +34 -0
  187. package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +5 -0
  188. package/src/sap/ui/mdc/util/FilterUtil.js +2 -2
  189. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  190. package/src/sap/ui/mdc/util/PropertyHelper.js +49 -51
  191. package/src/sap/ui/mdc/util/TypeUtil.js +105 -17
  192. package/src/sap/ui/mdc/valuehelp/Dialog.js +97 -30
  193. package/src/sap/ui/mdc/valuehelp/Popover.js +48 -7
  194. package/src/sap/ui/mdc/valuehelp/base/Container.js +37 -28
  195. package/src/sap/ui/mdc/valuehelp/base/Content.js +39 -21
  196. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +5 -5
  197. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +41 -34
  198. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +1 -1
  199. package/src/sap/ui/mdc/valuehelp/content/Bool.js +4 -4
  200. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +11 -3
  201. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +1 -1
  202. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +25 -3
  203. package/src/sap/ui/mdc/valuehelp/content/MTable.js +3 -3
  204. package/test/sap/ui/mdc/testutils/opa/JSDocGeneration.md +18 -0
  205. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +4 -1
  206. package/test/sap/ui/mdc/testutils/opa/Util.js +42 -0
  207. package/test/sap/ui/mdc/testutils/opa/Utils.js +22 -0
  208. package/test/sap/ui/mdc/testutils/opa/chart/ActionsBase.js +1 -1
  209. package/test/sap/ui/mdc/testutils/opa/chart/JSDoc.md +413 -0
  210. package/test/sap/ui/mdc/testutils/opa/chart/TestObjects.js +320 -264
  211. package/test/sap/ui/mdc/testutils/opa/field/Actions.js +50 -0
  212. package/test/sap/ui/mdc/testutils/opa/field/Assertions.js +40 -0
  213. package/test/sap/ui/mdc/testutils/opa/field/JSDoc.md +37 -0
  214. package/test/sap/ui/mdc/testutils/opa/field/TestObjects.js +52 -0
  215. package/test/sap/ui/mdc/testutils/opa/field/waitForField.js +36 -0
  216. package/test/sap/ui/mdc/testutils/opa/field/waitForFieldValueHelpButton.js +42 -0
  217. package/test/sap/ui/mdc/testutils/opa/filterbar/Actions.js +31 -7
  218. package/test/sap/ui/mdc/testutils/opa/filterbar/Assertions.js +53 -7
  219. package/test/sap/ui/mdc/testutils/opa/filterbar/JSDoc.md +188 -0
  220. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +79 -13
  221. package/test/sap/ui/mdc/testutils/opa/filterbar/waitForAdaptFiltersButton.js +47 -0
  222. package/test/sap/ui/mdc/testutils/opa/filterbar/waitForFilterBar.js +28 -0
  223. package/test/sap/ui/mdc/testutils/opa/filterfield/Actions.js +70 -0
  224. package/test/sap/ui/mdc/testutils/opa/filterfield/Assertions.js +87 -0
  225. package/test/sap/ui/mdc/testutils/opa/filterfield/JSDoc.md +63 -0
  226. package/test/sap/ui/mdc/testutils/opa/filterfield/TestObjects.js +71 -0
  227. package/test/sap/ui/mdc/testutils/opa/filterfield/waitForFilterField.js +36 -0
  228. package/test/sap/ui/mdc/testutils/opa/filterfield/waitForFilterFieldValueHelpButton.js +42 -0
  229. package/test/sap/ui/mdc/testutils/opa/link/JSDoc.md +136 -0
  230. package/test/sap/ui/mdc/testutils/opa/link/TestObjects.js +108 -91
  231. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +34 -82
  232. package/test/sap/ui/mdc/testutils/opa/table/Actions.js +190 -6
  233. package/test/sap/ui/mdc/testutils/opa/table/Assertions.js +210 -0
  234. package/test/sap/ui/mdc/testutils/opa/table/JSDoc.md +205 -0
  235. package/test/sap/ui/mdc/testutils/opa/table/TestObjects.js +138 -9
  236. package/test/sap/ui/mdc/testutils/opa/table/Util.js +20 -0
  237. package/test/sap/ui/mdc/testutils/opa/table/waitForColumnHeader.js +44 -0
  238. package/test/sap/ui/mdc/testutils/opa/table/waitForListItemInDialogWithLabel.js +55 -0
  239. package/test/sap/ui/mdc/testutils/opa/table/waitForP13nButtonWithParentAndIcon.js +42 -0
  240. package/test/sap/ui/mdc/testutils/opa/table/waitForTable.js +26 -0
  241. package/test/sap/ui/mdc/testutils/opa/valueHelp/JSDoc.md +35 -0
  242. package/test/sap/ui/mdc/testutils/opa/valueHelp/TestObjects.js +7 -0
  243. package/test/sap/ui/mdc/testutils/opa/variant/Actions.js +124 -0
  244. package/test/sap/ui/mdc/testutils/opa/variant/Assertions.js +48 -0
  245. package/test/sap/ui/mdc/testutils/opa/variant/JSDoc.md +84 -0
  246. package/test/sap/ui/mdc/testutils/opa/variant/TestObjects.js +95 -0
  247. package/test/sap/ui/mdc/testutils/opa/variant/waitForVariantManager.js +43 -0
  248. package/test/sap/ui/mdc/testutils/opa/variant/waitForVariantManagerButton.js +45 -0
  249. package/test/sap/ui/mdc/testutils/opa/variant/waitForVariantManagerItem.js +54 -0
  250. package/test/sap/ui/mdc/testutils/opa/variant/waitForVariantManagerOverlay.js +44 -0
  251. package/ui5.yaml +4 -1
  252. package/src/sap/ui/mdc/flexibility/AggregationConfigFlex.js +0 -139
  253. package/src/sap/ui/mdc/odata/json/FilterBarDelegate.js +0 -155
  254. package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +0 -750
  255. package/test/sap/ui/mdc/testutils/opa/chart/ChartNew.js +0 -24
  256. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +0 -288
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @param {int[]|function} [oConfiguration.defaultValues] Array of values for the defaults of <code>RangeOperators</code> parameter. This can be a function, which returns the array of values. If not used the default for the values is 1.
34
34
  * @constructor
35
35
  * @author SAP SE
36
- * @version 1.102.2
36
+ * @version 1.104.0
37
37
  * @private
38
38
  * @ui5-restricted sap.fe
39
39
  * @MDC_PUBLIC_CANDIDATE
@@ -5,8 +5,9 @@
5
5
  */
6
6
  sap.ui.define([
7
7
  "sap/ui/mdc/ActionToolbar",
8
+ "sap/ui/mdc/p13n/Engine",
8
9
  "../Util"
9
- ], function (ActionToolbar, Util) {
10
+ ], function (ActionToolbar, Engine, Util) {
10
11
  "use strict";
11
12
 
12
13
  var oResourceBundle = sap.ui.getCore().getLibraryResourceBundle("sap.ui.mdc");
@@ -14,13 +15,24 @@ sap.ui.define([
14
15
  var oDesignTime = {
15
16
  description: "{description}",
16
17
  name: "{name}",
17
- aggregations: {},
18
+ aggregations: {
19
+ between: {
20
+ propagateMetadata: function(oElement) {
21
+ if (oElement.isA("sap.ui.fl.variants.VariantManagement")) {
22
+ return null;
23
+ }
24
+ return {
25
+ actions: "not-adaptable" // other controls within the conten aggregation will not be adaptable for RTA and Visual Editor
26
+ };
27
+ }
28
+ }
29
+ },
18
30
  properties: {},
19
31
  actions: {
20
32
  settings: {
21
33
  name: oResourceBundle.getText("actiontoolbar.RTA_SETTINGS_NAME"),
22
34
  handler: function (oControl, mPropertyBag) {
23
- return sap.ui.mdc.p13n.Engine.getInstance().getRTASettingsActionHandler(oControl, mPropertyBag, "actionsKey").then(function(aChanges){
35
+ return Engine.getInstance().getRTASettingsActionHandler(oControl, mPropertyBag, "actionsKey").then(function(aChanges){
24
36
  return aChanges;
25
37
  });
26
38
  },
@@ -28,7 +40,9 @@ sap.ui.define([
28
40
  }
29
41
  }
30
42
  },
31
- aAllowedAggregations = [],
43
+ aAllowedAggregations = [
44
+ "actions", "between"
45
+ ],
32
46
  aAllProperties = [];
33
47
 
34
48
  return Util.getDesignTime(ActionToolbar, aAllProperties, aAllowedAggregations, oDesignTime);
@@ -0,0 +1,53 @@
1
+ /*
2
+ * ! OpenUI5
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+ sap.ui.define([
7
+ "sap/ui/mdc/actiontoolbar/ActionToolbarAction",
8
+ "../Util"
9
+ ], function (ActionToolbarAction, Util) {
10
+ "use strict";
11
+
12
+ var oDesignTime = {
13
+ description: "{description}",
14
+ name: "{name}",
15
+ aggregations: {
16
+ action: {
17
+ propagateMetadata: function(oInnerControl) {
18
+ return {
19
+ actions: {
20
+ rename: { // mandatory
21
+ changeType: "rename", // mandatory
22
+ domRef: function (oControl){ // mandatory
23
+ return oControl.$();
24
+ },
25
+ getTextMutators: function (oControl) { // optional
26
+ return {
27
+ getText: function () {
28
+ return oControl.getDomRef().textContent;
29
+ },
30
+ setText: function (sNewText) {
31
+ oControl.getDomRef().textContent = sNewText;
32
+ }
33
+ };
34
+ }
35
+ },
36
+ remove: null,
37
+ reveal: null
38
+ }
39
+ };
40
+ }
41
+ }
42
+ },
43
+ properties: {},
44
+ actions: {}
45
+ },
46
+ aAllowedAggregations = [
47
+ "action"
48
+ ],
49
+ aAllProperties = [];
50
+
51
+ return Util.getDesignTime(ActionToolbarAction, aAllProperties, aAllowedAggregations, oDesignTime);
52
+
53
+ });
@@ -82,6 +82,9 @@ sap.ui.define([
82
82
  },
83
83
  propertyInfo: {
84
84
  ignore: true
85
+ },
86
+ headerLevel : {
87
+ ignore: false
85
88
  }
86
89
  },
87
90
  aggregations: {
@@ -4,10 +4,15 @@
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
7
- sap.ui.define(['sap/ui/fl/Utils', 'sap/ui/fl/apply/api/FlexRuntimeInfoAPI'], function(Utils, FlexRuntimeInfoAPI) {
7
+ sap.ui.define([
8
+ 'sap/ui/fl/Utils',
9
+ 'sap/ui/fl/apply/api/FlexRuntimeInfoAPI',
10
+ 'sap/ui/mdc/p13n/Engine',
11
+ 'sap/ui/core/Core'
12
+ ], function(Utils, FlexRuntimeInfoAPI, Engine, oCore) {
8
13
  "use strict";
9
14
 
10
- var oResourceBundle = sap.ui.getCore().getLibraryResourceBundle("sap.ui.mdc");
15
+ var oResourceBundle = oCore.getLibraryResourceBundle("sap.ui.mdc");
11
16
 
12
17
  return {
13
18
  properties: {
@@ -24,7 +29,7 @@ sap.ui.define(['sap/ui/fl/Utils', 'sap/ui/fl/apply/api/FlexRuntimeInfoAPI'], fun
24
29
  return [];
25
30
  }
26
31
  var oFieldInfo = oField.getFieldInfo();
27
- var oControl = typeof oFieldInfo.getSourceControl() === "string" ? sap.ui.getCore().byId(oFieldInfo.getSourceControl()) : oFieldInfo.getSourceControl();
32
+ var oControl = typeof oFieldInfo.getSourceControl() === "string" ? oCore.byId(oFieldInfo.getSourceControl()) : oFieldInfo.getSourceControl();
28
33
  if (!oControl) {
29
34
  oControl = oField;
30
35
  }
@@ -54,7 +59,7 @@ sap.ui.define(['sap/ui/fl/Utils', 'sap/ui/fl/apply/api/FlexRuntimeInfoAPI'], fun
54
59
  return FlexRuntimeInfoAPI.waitForChanges({
55
60
  element: oPanel
56
61
  }).then(function() {
57
- var oEngine = sap.ui.mdc.p13n.Engine.getInstance();
62
+ var oEngine = Engine.getInstance();
58
63
  mPropertyBag.fnAfterClose = function() {
59
64
  oPanel.destroy();
60
65
  };
@@ -28,7 +28,9 @@ sap.ui.define([
28
28
  aggregations: {
29
29
  _content: {
30
30
  propagateMetadata: function(oElement) {
31
- if (oElement.isA("sap.ui.mdc.ActionToolbar")) {
31
+ if (oElement.isA("sap.ui.mdc.ActionToolbar")
32
+ || (oElement.getParent() && oElement.getParent().isA("sap.ui.mdc.actiontoolbar.ActionToolbarAction"))
33
+ || oElement.isA("sap.ui.fl.variants.VariantManagement")) {
32
34
  return {
33
35
  actions: {
34
36
  settings: {}
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @param {object} [mSettings] Initial settings for the new control
36
36
  * @class A field help used in the <code>FieldHelp</code> association in <code>FieldBase</code> controls that shows a list for Boolean values.
37
37
  * @extends sap.ui.mdc.field.FieldHelpBase
38
- * @version 1.102.2
38
+ * @version 1.104.0
39
39
  * @constructor
40
40
  * @private
41
41
  * @ui5-restricted sap.ui.mdc.field.FieldBase
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @param {object} [mSettings] Initial settings for the new control
36
36
  * @class A field help used in the <code>FieldHelp</code> association in <code>FieldBase</code> controls to show a popover of conditions.
37
37
  * @extends sap.ui.mdc.field.FieldHelpBase
38
- * @version 1.102.2
38
+ * @version 1.104.0
39
39
  * @constructor
40
40
  * @private
41
41
  * @ui5-restricted sap.ui.mdc.field.FieldBase, sap.fe
@@ -39,6 +39,9 @@ sap.ui.define([
39
39
  ) {
40
40
  "use strict";
41
41
 
42
+ var sTargetTypeRaw = "sap.ui.mdc.raw";
43
+ var sTargetTypeRawComposite = "sap.ui.mdc.raw:";
44
+
42
45
  /**
43
46
  * Constructor for a Condition type.
44
47
  *
@@ -48,7 +51,7 @@ sap.ui.define([
48
51
  * @extends sap.ui.model.SimpleType
49
52
  *
50
53
  * @author SAP SE
51
- * @version 1.102.2
54
+ * @version 1.104.0
52
55
  *
53
56
  * @since 1.62.0
54
57
  * @private
@@ -56,7 +59,7 @@ sap.ui.define([
56
59
  * @MDC_PUBLIC_CANDIDATE
57
60
  *
58
61
  * @param {object} [oFormatOptions] Formatting options
59
- * @param {sap.ui.model.Type} [oFormatOptions.valueType] Type of the value of the condition (used for formatting and parsing)
62
+ * @param {sap.ui.model.Type} [oFormatOptions.valueType] Type of the value of the condition (used for formatting, parsing and validating)
60
63
  * @param {string[]} [oFormatOptions.operators] Possible operators to be used in the condition
61
64
  * @param {sap.ui.mdc.enum.FieldDisplay} [oFormatOptions.display] DisplayFormat used to visualize a value
62
65
  * @param {string} [oFormatOptions.fieldHelpID] ID of the field help to determine the key and description // TODO: async request????
@@ -104,7 +107,28 @@ sap.ui.define([
104
107
 
105
108
  };
106
109
 
107
- ConditionType.prototype.formatValue = function(oCondition, sInternalType) {
110
+ /**
111
+ * Formats the given condition to an output value of the given target type.
112
+ * This values are formatted using the given data type. Depending of the operator
113
+ * and the configuration (set in <code>FormatOptions</code>) a description will be determined via given value help or delegate.
114
+ *
115
+ * @param {sap.ui.mdc.condition.ConditionObject} oCondition
116
+ * The condition to be formatted
117
+ * @param {string} sTargetType
118
+ * The target type; see {@link topic:ac56d92162ed47ff858fdf1ce26c18c4 Allowed Property Types}
119
+ * In addition to the standard target types <code>sap.ui.mdc.raw</code> can be used. In this case the value is not formatted and just
120
+ * forwarded to the target. If the value is an array representing data for a <code>CompositeType</code> the index of the needed raw value can be added to the
121
+ * name (For example if a unit should be forwarded as raw value <code>sap.ui.mdc.raw:1</code> can be used).
122
+ * @return {any|Promise}
123
+ * The formatted output value or a <code>Promise</code> resolving with the formatted value
124
+ * @throws {sap.ui.model.FormatException}
125
+ * If formatting to the target type is not possible
126
+ *
127
+ * @private
128
+ * @ui5-restricted sap.ui.mdc.field.FieldBase, sap.fe
129
+ * @MDC_PUBLIC_CANDIDATE
130
+ */
131
+ ConditionType.prototype.formatValue = function(oCondition, sTargetType) {
108
132
 
109
133
  if (oCondition == undefined || oCondition == null || this._bDestroyed) { // if destroyed do nothing
110
134
  return null;
@@ -115,8 +139,8 @@ sap.ui.define([
115
139
  throw new FormatException("No valid condition provided");
116
140
  }
117
141
 
118
- if (!sInternalType) {
119
- sInternalType = "string";
142
+ if (!sTargetType) {
143
+ sTargetType = "string";
120
144
  }
121
145
 
122
146
  var oType = _getValueType.call(this);
@@ -125,7 +149,7 @@ sap.ui.define([
125
149
 
126
150
  _attachCurrentValueAtType.call(this, oCondition, oType); // use original condition
127
151
 
128
- switch (this.getPrimitiveType(sInternalType)) {
152
+ switch (this.getPrimitiveType(sTargetType)) {
129
153
  case "string":
130
154
  case "any":
131
155
  var sDisplay = _getDisplay.call(this);
@@ -146,7 +170,7 @@ sap.ui.define([
146
170
  var vKey = bIsUnit ? oCondition.values[0][1] : oCondition.values[0];
147
171
 
148
172
  return SyncPromise.resolve().then(function() {
149
- return _getDescription.call(this, vKey, oCondition, oBindingContext, oConditionModel, sConditionModelName);
173
+ return _getDescription.call(this, vKey, oCondition, oType, oBindingContext, oConditionModel, sConditionModelName);
150
174
  }.bind(this)).then(function(vDescription) { // if description needs to be requested -> return if it is resolved
151
175
  if (vDescription) {
152
176
  oCondition = merge({}, oCondition); // do not manipulate original object
@@ -181,12 +205,20 @@ sap.ui.define([
181
205
 
182
206
  return _returnResult.call(this, oCondition, undefined, iCallCount, true, oType);
183
207
  default:
184
- // operators can only be formatted to string. But other controls (like Slider) might just use the value
185
- if (oType && oCondition.values.length >= 1) {
186
- return oType.formatValue(oCondition.values[0], sInternalType);
208
+ var iIndex = _getIndexOfRawValue(sTargetType);
209
+ if (iIndex >= 0) {
210
+ if (_isCompositeType.call(this, oType)) {
211
+ //used for compositeTypes if just one value needs to be transfered without any formatting (e.g. for Timezone)
212
+ return oCondition.values.length >= 1 ? oCondition.values[0][iIndex] : null;
213
+ }
214
+ } else if (sTargetType === sTargetTypeRaw) {
215
+ return oCondition.values.length >= 1 ? oCondition.values[0] : null; // TODO: how to handle operators <> EQ
216
+ } else if (oType && oCondition.values.length >= 1) {
217
+ // operators can only be formatted to string. But other controls (like Slider) might just use the value
218
+ return oType.formatValue(oCondition.values[0], sTargetType);
187
219
  }
188
220
 
189
- throw new FormatException("Don't know how to format Condition to " + sInternalType);
221
+ throw new FormatException("Don't know how to format Condition to " + sTargetType);
190
222
  }
191
223
 
192
224
  };
@@ -256,22 +288,47 @@ sap.ui.define([
256
288
 
257
289
  }
258
290
 
259
- ConditionType.prototype.parseValue = function(vValue, sInternalType) {
291
+ /**
292
+ * Parses an external value of the given source type to a condition that holds the value in model
293
+ * representation.
294
+ * These values are parsed using the given data type. Depending of the operator
295
+ * and the configuration (set in <code>FormatOptions</code>) a value will be determined via given value help or delegate.
296
+ *
297
+ * @param {any} vValue
298
+ * The value to be parsed
299
+ * @param {string} sSourceType
300
+ * The type of the given value; see
301
+ * {@link topic:ac56d92162ed47ff858fdf1ce26c18c4 Allowed Property Types}
302
+ * In addition to the standard source types <code>sap.ui.mdc.raw</code> can be used. In this case the value is not parsed and just
303
+ * used in the condition. If the value of the condition is an array representing data for a <code>CompositeType</code> the index of the needed raw value can be added to the
304
+ * name (For example if a unit should be forwarded as raw value <code>sap.ui.mdc.raw:1</code> can be used).
305
+ * @return {null|sap.ui.mdc.condition.ConditionObject|Promise<null|sap.ui.mdc.condition.ConditionObject>}
306
+ * The condition or a <code>Promise</code> resolving with the condition.
307
+ * If there is no value <code>null</code> is returned.
308
+ * @throws {sap.ui.model.ParseException}
309
+ * If parsing to the model type is not possible; the message of the exception is language
310
+ * dependent as it may be displayed on the UI
311
+ *
312
+ * @private
313
+ * @ui5-restricted sap.ui.mdc.field.FieldBase, sap.fe
314
+ * @MDC_PUBLIC_CANDIDATE
315
+ */
316
+ ConditionType.prototype.parseValue = function(vValue, sSourceType) {
260
317
 
261
318
  if (this._bDestroyed) { // if destroyed do nothing
262
319
  return null;
263
320
  }
264
321
 
265
- if (!sInternalType) {
266
- sInternalType = "string";
267
- } else if (sInternalType === "any" && typeof vValue === "string") {
268
- sInternalType = "string";
322
+ if (!sSourceType) {
323
+ sSourceType = "string";
324
+ } else if (sSourceType === "any" && typeof vValue === "string") {
325
+ sSourceType = "string";
269
326
  }
270
327
 
271
328
  var oNavigateCondition = this.oFormatOptions.navigateCondition;
272
329
  if (oNavigateCondition) {
273
330
  // condition already known from navigation. Just check if it is really the same as the input.
274
- var vOutput = this.formatValue(oNavigateCondition, sInternalType);
331
+ var vOutput = this.formatValue(oNavigateCondition, sSourceType);
275
332
  if (vOutput === vValue) {
276
333
  return merge({}, oNavigateCondition); // use copy
277
334
  }
@@ -293,7 +350,7 @@ sap.ui.define([
293
350
 
294
351
  _initCurrentValueAtType.call(this, oType);
295
352
 
296
- switch (this.getPrimitiveType(sInternalType)) {
353
+ switch (this.getPrimitiveType(sSourceType)) {
297
354
  case "string":
298
355
  var oOperator;
299
356
  var bCheckForDefault = false;
@@ -396,10 +453,22 @@ sap.ui.define([
396
453
  }
397
454
  }
398
455
  if (sDefaultOperator) {
399
- return Condition.createCondition(sDefaultOperator, [oType.parseValue(vValue, sInternalType)], undefined, undefined, ConditionValidated.NotValidated);
456
+ var iIndex = _getIndexOfRawValue(sSourceType);
457
+ if (iIndex >= 0) {
458
+ if (_isCompositeType.call(this, oType)) {
459
+ //used for compositeTypes if just one value needs to be transfered without any parsing (Timezone)
460
+ var aValue = merge([], oType._aCurrentValue);
461
+ aValue[iIndex] = vValue;
462
+ return Condition.createCondition(sDefaultOperator, [aValue], undefined, undefined, ConditionValidated.NotValidated);
463
+ }
464
+ } else if (sSourceType === sTargetTypeRaw) {
465
+ return Condition.createCondition(sDefaultOperator, [vValue], undefined, undefined, ConditionValidated.NotValidated);
466
+ } else {
467
+ return Condition.createCondition(sDefaultOperator, [oType.parseValue(vValue, sSourceType)], undefined, undefined, ConditionValidated.NotValidated);
468
+ }
400
469
  }
401
470
  }
402
- throw new ParseException("Don't know how to parse Condition from " + sInternalType);
471
+ throw new ParseException("Don't know how to parse Condition from " + sSourceType);
403
472
  }
404
473
 
405
474
  };
@@ -557,7 +626,7 @@ sap.ui.define([
557
626
  }
558
627
 
559
628
  return SyncPromise.resolve().then(function() {
560
- return _getItemForValue.call(this, vCheckValue, vCheckParsedValue, oBindingContext, bCheckKeyFirst, bCheckKey, bCheckDescription, oConditionModel, sConditionModelName);
629
+ return _getItemForValue.call(this, vCheckValue, vCheckParsedValue, oType, oBindingContext, bCheckKeyFirst, bCheckKey, bCheckDescription, oConditionModel, sConditionModelName);
561
630
  }.bind(this)).then(function(oResult) {
562
631
  return fnGetResult.call(this, oResult, fnSuccess);
563
632
  }.bind(this)).catch(function(oException) {
@@ -617,6 +686,21 @@ sap.ui.define([
617
686
 
618
687
  }
619
688
 
689
+ /**
690
+ * Validates a given condition. The values of the condition are validated using the given data type.
691
+ *
692
+ * @param {sap.ui.mdc.condition.ConditionObject} oCondition
693
+ * The condition to be validated
694
+ * @returns {void|Promise}
695
+ * <code>undefined</code> or a <code>Promise</code> resolving with an undefined value
696
+ * @throws {sap.ui.model.ValidateException}
697
+ * If at least one of the values of the condition is not valid for the given data type; the message of the exception is
698
+ * language dependent as it may be displayed on the UI
699
+ *
700
+ * @private
701
+ * @ui5-restricted sap.ui.mdc.field.FieldBase, sap.fe
702
+ * @MDC_PUBLIC_CANDIDATE
703
+ */
620
704
  ConditionType.prototype.validateValue = function(oCondition) {
621
705
 
622
706
  var oType = _getValueType.call(this);
@@ -886,7 +970,7 @@ sap.ui.define([
886
970
 
887
971
  }
888
972
 
889
- function _getItemForValue(vValue, vParsedValue, oBindingContext, bCheckKeyFirst, bCheckKey, bCheckDescription, oConditionModel, sConditionModelName) {
973
+ function _getItemForValue(vValue, vParsedValue, oType, oBindingContext, bCheckKeyFirst, bCheckKey, bCheckDescription, oConditionModel, sConditionModelName) {
890
974
 
891
975
  var oFieldHelp = _getFieldHelp.call(this);
892
976
  var oDelegate = this.oFormatOptions.delegate;
@@ -895,6 +979,7 @@ sap.ui.define([
895
979
  var oConfig = {
896
980
  value: vValue,
897
981
  parsedValue: vParsedValue,
982
+ dataType: oType,
898
983
  inParameters: undefined, // TODO: needed?
899
984
  outParameters: undefined, // TODO: needed?
900
985
  bindingContext: oBindingContext,
@@ -917,31 +1002,32 @@ sap.ui.define([
917
1002
 
918
1003
  }
919
1004
 
920
- function _getDescription(vKey, oCondition, oBindingContext, oConditionModel, sConditionModelName) {
1005
+ function _getDescription(vKey, oCondition, oType, oBindingContext, oConditionModel, sConditionModelName) {
921
1006
 
922
1007
  var oFieldHelp = _getFieldHelp.call(this);
923
1008
  var oDelegate = this.oFormatOptions.delegate;
924
1009
  var oPayload = this.oFormatOptions.payload;
925
1010
  var oControl = this.oFormatOptions.control;
926
1011
  if (oDelegate) {
927
- return oDelegate.getDescription(oPayload, oFieldHelp, vKey, oCondition.inParameters, oCondition.outParameters, oBindingContext, oConditionModel, sConditionModelName, oCondition.payload, oControl);
1012
+ return oDelegate.getDescription(oPayload, oFieldHelp, vKey, oCondition.inParameters, oCondition.outParameters, oBindingContext, oConditionModel, sConditionModelName, oCondition.payload, oControl, oType);
928
1013
  } else if (oFieldHelp) {
929
1014
  if (oFieldHelp.isA("sap.ui.mdc.ValueHelp")) {
930
- var oConfig = {
931
- value: vKey,
932
- parsedValue: vKey,
933
- context: {inParameters: oCondition.inParameters, outParameters: oCondition.outParameters, payload: oCondition.payload},
934
- bindingContext: oBindingContext,
935
- conditionModel: oConditionModel,
936
- conditionModelName: sConditionModelName,
937
- checkKey: true,
938
- checkDescription: false,
939
- caseSensitive: true, // case sensitive as used to get description for known key
940
- exception: FormatException,
941
- control: oControl
942
- };
943
- return oFieldHelp.getItemForValue(oConfig);
944
- } else {
1015
+ var oConfig = {
1016
+ value: vKey,
1017
+ parsedValue: vKey,
1018
+ dataType: oType,
1019
+ context: {inParameters: oCondition.inParameters, outParameters: oCondition.outParameters, payload: oCondition.payload},
1020
+ bindingContext: oBindingContext,
1021
+ conditionModel: oConditionModel,
1022
+ conditionModelName: sConditionModelName,
1023
+ checkKey: true,
1024
+ checkDescription: false,
1025
+ caseSensitive: true, // case sensitive as used to get description for known key
1026
+ exception: FormatException,
1027
+ control: oControl
1028
+ };
1029
+ return oFieldHelp.getItemForValue(oConfig);
1030
+ } else {
945
1031
  return oFieldHelp.getTextForKey(vKey, oCondition.inParameters, oCondition.outParameters, oBindingContext, oConditionModel, sConditionModelName);
946
1032
  }
947
1033
  }
@@ -974,6 +1060,16 @@ sap.ui.define([
974
1060
 
975
1061
  }
976
1062
 
1063
+ function _getIndexOfRawValue(sType) {
1064
+
1065
+ var iIndex = -1;
1066
+ if (sType.startsWith(sTargetTypeRawComposite)) {
1067
+ iIndex = parseInt(sType[sTargetTypeRawComposite.length]);
1068
+ }
1069
+ return iIndex;
1070
+
1071
+ }
1072
+
977
1073
  return ConditionType;
978
1074
 
979
1075
  });
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @extends sap.ui.model.SimpleType
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.102.2
39
+ * @version 1.104.0
40
40
  *
41
41
  * @since 1.62.0
42
42
  * @private
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * @MDC_PUBLIC_CANDIDATE
45
45
  *
46
46
  * @param {object} [oFormatOptions] Formatting options
47
- * @param {sap.ui.model.Type} [oFormatOptions.valueType] Type of the value of the condition (used for formatting and parsing)
47
+ * @param {sap.ui.model.Type} [oFormatOptions.valueType] Type of the value of the condition (used for formatting, parsing and validating)
48
48
  * @param {string[]} [oFormatOptions.operators] Possible operators to be used in the condition
49
49
  * @param {sap.ui.mdc.enum.FieldDisplay} [oFormatOptions.display] DisplayFormat used to visualize a value
50
50
  * @param {string} [oFormatOptions.fieldHelpID] ID of the field help to determine the key and description // TODO: async request????
@@ -128,7 +128,28 @@ sap.ui.define([
128
128
 
129
129
  };
130
130
 
131
- ConditionsType.prototype.formatValue = function(aConditions, sInternalType) {
131
+ /**
132
+ * Formats the given conditions to an output value of the given target type.
133
+ * This values are formatted using the given data type. Depending of the operator
134
+ * and the configuration (set in <code>FormatOptions</code>) a description will be determined via given value help or delegate.
135
+ *
136
+ * @param {sap.ui.mdc.condition.ConditionObject[]} aConditions
137
+ * The conditions to be formatted
138
+ * @param {string} sTargetType
139
+ * The target type; see {@link topic:ac56d92162ed47ff858fdf1ce26c18c4 Allowed Property Types}
140
+ * In addition to the standard target types <code>sap.ui.mdc.raw</code> can be used. In this case the value is not formatted and just
141
+ * forwarded to the target. If the value is an array representing data for a <code>CompositeType</code> the index of the needed raw value can be added to the
142
+ * name (For example if a unit should be forwarded as raw value <code>sap.ui.mdc.raw:1</code> can be used).
143
+ * @return {any|Promise}
144
+ * The formatted output value or a <code>Promise</code> resolving with the formatted value
145
+ * @throws {sap.ui.model.FormatException}
146
+ * If formatting to the target type is not possible
147
+ *
148
+ * @private
149
+ * @ui5-restricted sap.ui.mdc.field.FieldBase, sap.fe
150
+ * @MDC_PUBLIC_CANDIDATE
151
+ */
152
+ ConditionsType.prototype.formatValue = function(aConditions, sTargetType) {
132
153
 
133
154
  if (aConditions == undefined || aConditions == null || this._bDestroyed) { // if destroyed do nothing
134
155
  return null;
@@ -140,23 +161,23 @@ sap.ui.define([
140
161
 
141
162
  var vValue;
142
163
 
143
- if (!sInternalType || sInternalType === "string" || sInternalType === "any") {
164
+ if (!sTargetType || sTargetType === "string" || sTargetType === "any") {
144
165
  vValue = ""; // if string requested use string
145
- } else if (sInternalType === "float" || sInternalType === "int") {
166
+ } else if (sTargetType === "float" || sTargetType === "int") {
146
167
  vValue = 0; // if number requested use number
147
168
  }
148
169
 
149
170
  var iMaxConditions = _getMaxConditions.call(this);
150
171
 
151
172
  var aSyncPromises = [];
152
- var fnCreateSyncPromise = function (oCondition, sInternalType) { // as function should not be declared inside a loop
173
+ var fnCreateSyncPromise = function (oCondition, sTargetType) { // as function should not be declared inside a loop
153
174
  return SyncPromise.resolve().then(function() {
154
- return this._oConditionType.formatValue(oCondition, sInternalType);
175
+ return this._oConditionType.formatValue(oCondition, sTargetType);
155
176
  }.bind(this));
156
177
  };
157
178
 
158
179
  for (var i = 0; i < aConditions.length; i++) {
159
- aSyncPromises.push(fnCreateSyncPromise.call(this, aConditions[i], sInternalType));
180
+ aSyncPromises.push(fnCreateSyncPromise.call(this, aConditions[i], sTargetType));
160
181
 
161
182
  if (iMaxConditions > 0 && i >= iMaxConditions - 1) {
162
183
  break;
@@ -183,7 +204,32 @@ sap.ui.define([
183
204
 
184
205
  }
185
206
 
186
- ConditionsType.prototype.parseValue = function(sValue, sInternalType) {
207
+ /**
208
+ * Parses an external value of the given source type to an array of conditions that holds the value in model
209
+ * representation.
210
+ * These values are parsed using the given data type. Depending of the operator
211
+ * and the configuration (set in <code>FormatOptions</code>) a value will be determined via given value help or delegate.
212
+ *
213
+ * @param {any} vValue
214
+ * The value to be parsed
215
+ * @param {string} sSourceType
216
+ * The type of the given value; see
217
+ * {@link topic:ac56d92162ed47ff858fdf1ce26c18c4 Allowed Property Types}
218
+ * In addition to the standard source types <code>sap.ui.mdc.raw</code> can be used. In this case the value is not parsed and just
219
+ * used in the condition. If the value of the condition is an array representing data for a <code>CompositeType</code> the index of the needed raw value can be added to the
220
+ * name (For example if a unit should be forwarded as raw value <code>sap.ui.mdc.raw:1</code> can be used).
221
+ * @return {null|sap.ui.mdc.condition.ConditionObject[]|Promise<null|sap.ui.mdc.condition.ConditionObject[]>}
222
+ * The array of conditions or a <code>Promise</code> resolving with the array of conditions.
223
+ * If there is no value <code>null</code> is returned.
224
+ * @throws {sap.ui.model.ParseException}
225
+ * If parsing to the model type is not possible; the message of the exception is language
226
+ * dependent as it may be displayed on the UI
227
+ *
228
+ * @private
229
+ * @ui5-restricted sap.ui.mdc.field.FieldBase, sap.fe
230
+ * @MDC_PUBLIC_CANDIDATE
231
+ */
232
+ ConditionsType.prototype.parseValue = function(vValue, sSourceType) {
187
233
 
188
234
  if (this._bDestroyed) { // if destroyed do nothing
189
235
  return null;
@@ -195,7 +241,7 @@ sap.ui.define([
195
241
  }
196
242
 
197
243
  var oCondition = SyncPromise.resolve().then(function() {
198
- return this._oConditionType.parseValue(sValue, sInternalType);
244
+ return this._oConditionType.parseValue(vValue, sSourceType);
199
245
  }.bind(this)).then(function(oCondition) {
200
246
  return _parseConditionToConditions.call(this, oCondition);
201
247
  }.bind(this)).unwrap();
@@ -253,6 +299,21 @@ sap.ui.define([
253
299
 
254
300
  }
255
301
 
302
+ /**
303
+ * Validates a given array of conditions. The values of the conditions are validated using the given data type.
304
+ *
305
+ * @param {sap.ui.mdc.condition.ConditionObject[]} aConditions
306
+ * The conditions to be validated
307
+ * @returns {void|Promise}
308
+ * <code>undefined</code> or a <code>Promise</code> resolving with an undefined value
309
+ * @throws {sap.ui.model.ValidateException}
310
+ * If at least one of the values of the conditions is not valid for the given data type; the message of the exception is
311
+ * language dependent as it may be displayed on the UI
312
+ *
313
+ * @private
314
+ * @ui5-restricted sap.ui.mdc.field.FieldBase, sap.fe
315
+ * @MDC_PUBLIC_CANDIDATE
316
+ */
256
317
  ConditionsType.prototype.validateValue = function(aConditions) {
257
318
 
258
319
  if (aConditions === undefined || aConditions === null || this._bDestroyed) { // if destroyed do nothing
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  * @param {object} [mSettings] Initial settings for the new control
17
17
  * @class A field help used in the <code>FieldHelp</code> association in <code>FieldBase</code> controls that allows you to add custom content.
18
18
  * @extends sap.ui.mdc.field.FieldHelpBase
19
- * @version 1.102.2
19
+ * @version 1.104.0
20
20
  * @constructor
21
21
  * @private
22
22
  * @ui5-restricted sap.fe
@@ -81,7 +81,6 @@ sap.ui.define([
81
81
  * @private
82
82
  * @ui5-restricted sap.fe
83
83
  * @MDC_PUBLIC_CANDIDATE
84
- * @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
85
84
  */
86
85
  CustomFieldHelp.prototype.fireSelectEvent = function(aConditions) {
87
86