@openui5/sap.ui.mdc 1.136.2 → 1.138.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 (227) hide show
  1. package/.eslintrc.json +34 -0
  2. package/REUSE.toml +0 -28
  3. package/THIRDPARTY.txt +0 -24
  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/Chart.js +1 -1
  8. package/src/sap/ui/mdc/Control.js +1 -1
  9. package/src/sap/ui/mdc/DefaultTypeMap.js +1 -1
  10. package/src/sap/ui/mdc/Element.js +1 -1
  11. package/src/sap/ui/mdc/Field.js +174 -4
  12. package/src/sap/ui/mdc/FilterBar.js +1 -1
  13. package/src/sap/ui/mdc/FilterField.js +22 -2
  14. package/src/sap/ui/mdc/Link.js +1 -1
  15. package/src/sap/ui/mdc/MultiValueField.js +14 -2
  16. package/src/sap/ui/mdc/Table.js +211 -170
  17. package/src/sap/ui/mdc/TableDelegate.js +17 -12
  18. package/src/sap/ui/mdc/ValueHelp.js +20 -1
  19. package/src/sap/ui/mdc/ValueHelpDelegate.js +6 -30
  20. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +1 -1
  21. package/src/sap/ui/mdc/chart/ChartImplementationContainer.js +1 -1
  22. package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +1 -1
  23. package/src/sap/ui/mdc/chart/PropertyHelper.js +1 -1
  24. package/src/sap/ui/mdc/chart/ToolbarControlFactory.js +1 -1
  25. package/src/sap/ui/mdc/condition/Condition.js +1 -1
  26. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  27. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  28. package/src/sap/ui/mdc/condition/FilterConverter.js +1 -1
  29. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +18 -18
  30. package/src/sap/ui/mdc/condition/Operator.js +3 -1
  31. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +1 -1
  32. package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
  33. package/src/sap/ui/mdc/enums/ContentMode.js +7 -1
  34. package/src/sap/ui/mdc/field/ConditionType.js +6 -3
  35. package/src/sap/ui/mdc/field/ConditionTypeMixin.js +1 -1
  36. package/src/sap/ui/mdc/field/ConditionsType.js +26 -4
  37. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  38. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +6 -3
  39. package/src/sap/ui/mdc/field/FieldBase.js +302 -75
  40. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +5 -2
  41. package/src/sap/ui/mdc/field/FieldInfoBase.js +1 -1
  42. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  43. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  44. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  45. package/src/sap/ui/mdc/field/FieldSelect.js +459 -0
  46. package/src/sap/ui/mdc/field/FieldSelectRenderer.js +66 -0
  47. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  48. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  49. package/src/sap/ui/mdc/field/TokenDisplay.js +1 -1
  50. package/src/sap/ui/mdc/field/TokenizerDisplay.js +1 -1
  51. package/src/sap/ui/mdc/field/content/ContentFactory.js +35 -6
  52. package/src/sap/ui/mdc/field/content/DateContent.js +6 -0
  53. package/src/sap/ui/mdc/field/content/DateTimeContent.js +3 -0
  54. package/src/sap/ui/mdc/field/content/DefaultContent.js +45 -0
  55. package/src/sap/ui/mdc/field/content/LinkContent.js +6 -0
  56. package/src/sap/ui/mdc/field/content/SearchContent.js +6 -0
  57. package/src/sap/ui/mdc/field/content/TimeContent.js +3 -0
  58. package/src/sap/ui/mdc/field/content/UnitContent.js +18 -15
  59. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +1 -1
  60. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +1 -1
  61. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +1 -1
  62. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +1 -1
  63. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  64. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  65. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  66. package/src/sap/ui/mdc/flexibility/Util.js +10 -0
  67. package/src/sap/ui/mdc/flexibility/actiontoolbar/CombineAction.js +1 -1
  68. package/src/sap/ui/mdc/flexibility/actiontoolbar/SplitAction.js +1 -1
  69. package/src/sap/ui/mdc/i18n/interaction.xml +2 -2
  70. package/src/sap/ui/mdc/i18n/interaction_ar.xml +3 -3
  71. package/src/sap/ui/mdc/i18n/interaction_bg.xml +2 -2
  72. package/src/sap/ui/mdc/i18n/interaction_ca.xml +2 -2
  73. package/src/sap/ui/mdc/i18n/interaction_cnr.xml +2 -2
  74. package/src/sap/ui/mdc/i18n/interaction_cs.xml +2 -2
  75. package/src/sap/ui/mdc/i18n/interaction_cy.xml +2 -2
  76. package/src/sap/ui/mdc/i18n/interaction_da.xml +2 -2
  77. package/src/sap/ui/mdc/i18n/interaction_de.xml +2 -2
  78. package/src/sap/ui/mdc/i18n/interaction_en.xml +2 -2
  79. package/src/sap/ui/mdc/i18n/interaction_en_GB.xml +2 -2
  80. package/src/sap/ui/mdc/i18n/interaction_en_US_saprigi.xml +2 -2
  81. package/src/sap/ui/mdc/i18n/interaction_es.xml +2 -2
  82. package/src/sap/ui/mdc/i18n/interaction_es_MX.xml +1 -1
  83. package/src/sap/ui/mdc/i18n/interaction_et.xml +2 -2
  84. package/src/sap/ui/mdc/i18n/interaction_fi.xml +2 -2
  85. package/src/sap/ui/mdc/i18n/interaction_hi.xml +2 -2
  86. package/src/sap/ui/mdc/i18n/interaction_hr.xml +2 -2
  87. package/src/sap/ui/mdc/i18n/interaction_hu.xml +2 -2
  88. package/src/sap/ui/mdc/i18n/interaction_id.xml +2 -2
  89. package/src/sap/ui/mdc/i18n/interaction_it.xml +2 -2
  90. package/src/sap/ui/mdc/i18n/interaction_kk.xml +2 -2
  91. package/src/sap/ui/mdc/i18n/interaction_lt.xml +2 -2
  92. package/src/sap/ui/mdc/i18n/interaction_lv.xml +2 -2
  93. package/src/sap/ui/mdc/i18n/interaction_mk.xml +2 -2
  94. package/src/sap/ui/mdc/i18n/interaction_ms.xml +2 -2
  95. package/src/sap/ui/mdc/i18n/interaction_nl.xml +1 -1
  96. package/src/sap/ui/mdc/i18n/interaction_no.xml +2 -2
  97. package/src/sap/ui/mdc/i18n/interaction_pl.xml +2 -2
  98. package/src/sap/ui/mdc/i18n/interaction_pt.xml +2 -2
  99. package/src/sap/ui/mdc/i18n/interaction_pt_PT.xml +2 -2
  100. package/src/sap/ui/mdc/i18n/interaction_ru.xml +2 -2
  101. package/src/sap/ui/mdc/i18n/interaction_sh.xml +2 -2
  102. package/src/sap/ui/mdc/i18n/interaction_sl.xml +2 -2
  103. package/src/sap/ui/mdc/i18n/interaction_sr.xml +2 -2
  104. package/src/sap/ui/mdc/i18n/interaction_sv.xml +2 -2
  105. package/src/sap/ui/mdc/i18n/interaction_tr.xml +1 -1
  106. package/src/sap/ui/mdc/i18n/interaction_uk.xml +2 -2
  107. package/src/sap/ui/mdc/i18n/interaction_vi.xml +2 -2
  108. package/src/sap/ui/mdc/i18n/interaction_zh_CN.xml +2 -2
  109. package/src/sap/ui/mdc/i18n/interaction_zh_TW.xml +2 -2
  110. package/src/sap/ui/mdc/library.js +13 -7
  111. package/src/sap/ui/mdc/link/Factory.js +1 -1
  112. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  113. package/src/sap/ui/mdc/link/Panel.js +1 -1
  114. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  115. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  116. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  117. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  118. package/src/sap/ui/mdc/messagebundle.properties +3 -0
  119. package/src/sap/ui/mdc/messagebundle_ar.properties +2 -0
  120. package/src/sap/ui/mdc/messagebundle_bg.properties +2 -0
  121. package/src/sap/ui/mdc/messagebundle_ca.properties +2 -0
  122. package/src/sap/ui/mdc/messagebundle_cnr.properties +2 -0
  123. package/src/sap/ui/mdc/messagebundle_cs.properties +2 -0
  124. package/src/sap/ui/mdc/messagebundle_cy.properties +2 -0
  125. package/src/sap/ui/mdc/messagebundle_da.properties +2 -0
  126. package/src/sap/ui/mdc/messagebundle_de.properties +2 -0
  127. package/src/sap/ui/mdc/messagebundle_el.properties +2 -0
  128. package/src/sap/ui/mdc/messagebundle_en.properties +2 -0
  129. package/src/sap/ui/mdc/messagebundle_en_GB.properties +2 -0
  130. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +2 -0
  131. package/src/sap/ui/mdc/messagebundle_es.properties +2 -0
  132. package/src/sap/ui/mdc/messagebundle_es_MX.properties +3 -1
  133. package/src/sap/ui/mdc/messagebundle_et.properties +2 -0
  134. package/src/sap/ui/mdc/messagebundle_fi.properties +2 -0
  135. package/src/sap/ui/mdc/messagebundle_fr.properties +2 -0
  136. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +2 -0
  137. package/src/sap/ui/mdc/messagebundle_hi.properties +2 -0
  138. package/src/sap/ui/mdc/messagebundle_hr.properties +4 -2
  139. package/src/sap/ui/mdc/messagebundle_hu.properties +2 -0
  140. package/src/sap/ui/mdc/messagebundle_id.properties +2 -0
  141. package/src/sap/ui/mdc/messagebundle_it.properties +2 -0
  142. package/src/sap/ui/mdc/messagebundle_iw.properties +2 -0
  143. package/src/sap/ui/mdc/messagebundle_ja.properties +2 -0
  144. package/src/sap/ui/mdc/messagebundle_kk.properties +18 -16
  145. package/src/sap/ui/mdc/messagebundle_ko.properties +2 -0
  146. package/src/sap/ui/mdc/messagebundle_lt.properties +2 -0
  147. package/src/sap/ui/mdc/messagebundle_lv.properties +2 -0
  148. package/src/sap/ui/mdc/messagebundle_mk.properties +2 -0
  149. package/src/sap/ui/mdc/messagebundle_ms.properties +2 -0
  150. package/src/sap/ui/mdc/messagebundle_nl.properties +2 -0
  151. package/src/sap/ui/mdc/messagebundle_no.properties +2 -0
  152. package/src/sap/ui/mdc/messagebundle_pl.properties +2 -0
  153. package/src/sap/ui/mdc/messagebundle_pt.properties +2 -0
  154. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +2 -0
  155. package/src/sap/ui/mdc/messagebundle_ro.properties +2 -0
  156. package/src/sap/ui/mdc/messagebundle_ru.properties +2 -0
  157. package/src/sap/ui/mdc/messagebundle_sh.properties +2 -0
  158. package/src/sap/ui/mdc/messagebundle_sk.properties +2 -0
  159. package/src/sap/ui/mdc/messagebundle_sl.properties +2 -0
  160. package/src/sap/ui/mdc/messagebundle_sr.properties +2 -0
  161. package/src/sap/ui/mdc/messagebundle_sv.properties +2 -0
  162. package/src/sap/ui/mdc/messagebundle_th.properties +2 -0
  163. package/src/sap/ui/mdc/messagebundle_tr.properties +2 -0
  164. package/src/sap/ui/mdc/messagebundle_uk.properties +2 -0
  165. package/src/sap/ui/mdc/messagebundle_vi.properties +2 -0
  166. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +2 -0
  167. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +2 -0
  168. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  169. package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -1
  170. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -1
  171. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  172. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +1 -1
  173. package/src/sap/ui/mdc/odata/TypeMap.js +1 -1
  174. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +12 -39
  175. package/src/sap/ui/mdc/odata/v4/TypeMap.js +1 -1
  176. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  177. package/src/sap/ui/mdc/p13n/subcontroller/ColumnFreezeController.js +1 -1
  178. package/src/sap/ui/mdc/p13n/subcontroller/ShowDetailsController.js +1 -1
  179. package/src/sap/ui/mdc/table/Column.js +14 -13
  180. package/src/sap/ui/mdc/table/ColumnSettings.js +4 -2
  181. package/src/sap/ui/mdc/table/CreationRow.js +7 -3
  182. package/src/sap/ui/mdc/table/DragDropConfig.js +367 -349
  183. package/src/sap/ui/mdc/table/GridTableType.js +70 -42
  184. package/src/sap/ui/mdc/table/{V4AnalyticsPropertyHelper.js → ODataV4PropertyHelper.js} +6 -4
  185. package/src/sap/ui/mdc/table/PropertyHelper.js +10 -13
  186. package/src/sap/ui/mdc/table/ResponsiveColumnSettings.js +4 -2
  187. package/src/sap/ui/mdc/table/ResponsiveTableType.js +27 -11
  188. package/src/sap/ui/mdc/table/RowActionItem.js +9 -8
  189. package/src/sap/ui/mdc/table/RowSettings.js +19 -19
  190. package/src/sap/ui/mdc/table/TableSettings.js +26 -23
  191. package/src/sap/ui/mdc/table/TableTypeBase.js +2 -1
  192. package/src/sap/ui/mdc/table/{menu → menus}/GroupHeaderRowContextMenu.js +2 -2
  193. package/src/sap/ui/mdc/table/{menu → menus}/QuickActionContainer.js +13 -3
  194. package/src/sap/ui/mdc/table/utils/Personalization.js +2 -2
  195. package/src/sap/ui/mdc/themes/base/Chart.less +30 -27
  196. package/src/sap/ui/mdc/ushell/SemanticObjectMapping.js +1 -1
  197. package/src/sap/ui/mdc/ushell/SemanticObjectMappingItem.js +1 -1
  198. package/src/sap/ui/mdc/ushell/SemanticObjectUnavailableAction.js +1 -1
  199. package/src/sap/ui/mdc/util/InfoBar.js +1 -1
  200. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  201. package/src/sap/ui/mdc/util/PropertyHelper.js +39 -26
  202. package/src/sap/ui/mdc/util/PropertyHelperUtil.js +1 -1
  203. package/src/sap/ui/mdc/valuehelp/Dialog.js +1 -1
  204. package/src/sap/ui/mdc/valuehelp/FilterBar.js +1 -1
  205. package/src/sap/ui/mdc/valuehelp/Popover.js +76 -64
  206. package/src/sap/ui/mdc/valuehelp/RequestShowContainerDefault.js +163 -0
  207. package/src/sap/ui/mdc/valuehelp/base/Container.js +34 -4
  208. package/src/sap/ui/mdc/valuehelp/base/Content.js +26 -3
  209. package/src/sap/ui/mdc/valuehelp/base/DefineConditionPanel.js +1 -1
  210. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +1 -1
  211. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +1 -1
  212. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +1 -1
  213. package/src/sap/ui/mdc/valuehelp/content/Bool.js +63 -46
  214. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +1 -1
  215. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +145 -17
  216. package/src/sap/ui/mdc/valuehelp/content/FixedListItem.js +1 -1
  217. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +9 -4
  218. package/src/sap/ui/mdc/valuehelp/content/MTable.js +4 -2
  219. package/test/sap/ui/mdc/testutils/opa/Utils.js +9 -2
  220. package/test/sap/ui/mdc/testutils/opa/field/Actions.js +14 -4
  221. package/test/sap/ui/mdc/testutils/opa/filterbar/Actions.js +302 -95
  222. package/test/sap/ui/mdc/testutils/opa/filterbar/Assertions.js +5 -4
  223. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +27 -0
  224. package/test/sap/ui/mdc/testutils/opa/filterfield/Actions.js +23 -0
  225. package/test/sap/ui/mdc/testutils/opa/filterfield/TestObjects.js +24 -0
  226. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +47 -35
  227. package/test/sap/ui/mdc/testutils/opa/table/TestObjects.js +3 -2
package/.eslintrc.json CHANGED
@@ -31,6 +31,40 @@
31
31
  "files": [
32
32
  "src/**/*.js"
33
33
  ]
34
+ },
35
+ {
36
+ "files": [
37
+ "src/sap/ui/mdc/Table.js",
38
+ "src/sap/ui/mdc/TableDelegate.js",
39
+ "src/sap/ui/mdc/odata/v4/TableDelegate.js",
40
+ "src/sap/ui/mdc/table/**/*.js",
41
+ "test/sap/ui/mdc/qunit/table/**/*.js"
42
+ ],
43
+ "rules": {
44
+ "one-var": ["error", {"const": "never", "let": "never"}],
45
+ "one-var-declaration-per-line": ["error", "always"],
46
+ "space-before-function-paren": ["error", {
47
+ "anonymous": "never",
48
+ "named": "never",
49
+ "asyncArrow": "always"
50
+ }],
51
+ "space-before-blocks": "error",
52
+ "space-in-parens": "error",
53
+ "block-spacing": "error",
54
+ "key-spacing": "error",
55
+ "comma-spacing": "error",
56
+ "comma-style": "error",
57
+ "array-bracket-spacing": "error",
58
+ "no-multi-spaces": "error",
59
+ "no-multiple-empty-lines": ["error", {"max": 1}],
60
+ "no-whitespace-before-property": "error",
61
+ "object-curly-newline": ["error", {"consistent": true}],
62
+ "object-curly-spacing": "error",
63
+ "eqeqeq": ["error", "always", {"null": "ignore"}],
64
+ "max-depth": ["error", 4],
65
+ "max-len": ["error", 150],
66
+ "complexity": ["error", { "max": 12 }]
67
+ }
34
68
  }
35
69
  ]
36
70
  }
package/REUSE.toml CHANGED
@@ -238,27 +238,6 @@ SPDX-FileCopyrightText = [
238
238
  SPDX-License-Identifier = "Apache-2.0 and MIT"
239
239
  SPDX-FileComment = "these files contain content from SAP and JUnit Reporter for QUnit: qunit-junit.js is overall written by SAP, but contains a modified copy of JUnit Reporter for QUnit (qunit-reporter-junit)"
240
240
 
241
- [[annotations]]
242
- path = "src/sap.ui.core/src/sap/ui/thirdparty/iscroll.js"
243
- precedence = "aggregate"
244
- SPDX-FileCopyrightText = "2012 Matteo Spinelli"
245
- SPDX-License-Identifier = "MIT"
246
- SPDX-FileComment = "these files belong to: cubiq.org - iScroll"
247
-
248
- [[annotations]]
249
- path = "src/sap.ui.core/src/sap/ui/thirdparty/iscroll-lite.js"
250
- precedence = "aggregate"
251
- SPDX-FileCopyrightText = "2011 Matteo Spinelli"
252
- SPDX-License-Identifier = "MIT"
253
- SPDX-FileComment = "these files belong to: cubiq.org - iScroll Lite"
254
-
255
- [[annotations]]
256
- path = "src/sap.ui.core/src/sap/ui/thirdparty/swipe-view.js"
257
- precedence = "aggregate"
258
- SPDX-FileCopyrightText = "2012 Matteo Spinelli"
259
- SPDX-License-Identifier = "MIT"
260
- SPDX-FileComment = "these files belong to: cubiq.org - swipeview"
261
-
262
241
  [[annotations]]
263
242
  path = "src/sap.ui.core/src/sap/ui/thirdparty/zyngascroll.js"
264
243
  precedence = "aggregate"
@@ -308,13 +287,6 @@ SPDX-FileCopyrightText = "1991-2024 Unicode, Inc."
308
287
  SPDX-License-Identifier = "LicenseRef-Unicode-3.0"
309
288
  SPDX-FileComment = "these files belong to: Unicode Common Locale Data Repository"
310
289
 
311
- [[annotations]]
312
- path = "src/sap.ui.core/src/sap/ui/thirdparty/mobiscroll/**"
313
- precedence = "aggregate"
314
- SPDX-FileCopyrightText = "2010-2013, Acid Media"
315
- SPDX-License-Identifier = "MIT"
316
- SPDX-FileComment = "these files belong to: MobiScroll"
317
-
318
290
  [[annotations]]
319
291
  path = [
320
292
  "src/sap.ui.core/src/sap/ui/thirdparty/sinon.js",
package/THIRDPARTY.txt CHANGED
@@ -133,24 +133,6 @@ License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
133
133
  Contained in: src/sap.ui.core/src/sap/ui/thirdparty/qunit-reporter-junit.js
134
134
  src/sap.ui.core/src/sap/ui/qunit/qunit-junit.js
135
135
 
136
- Component: cubiq.org - iScroll, version: 4.2.5
137
- Copyright: 2012 Matteo Spinelli
138
- License: MIT
139
- License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
140
- Contained in: src/sap.ui.core/src/sap/ui/thirdparty/iscroll.js
141
-
142
- Component: cubiq.org - iScroll Lite, version: 4.1.6
143
- Copyright: 2011 Matteo Spinelli
144
- License: MIT
145
- License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
146
- Contained in: src/sap.ui.core/src/sap/ui/thirdparty/iscroll-lite.js
147
-
148
- Component: cubiq.org - swipeview, version: 1.0
149
- Copyright: 2012 Matteo Spinelli
150
- License: MIT
151
- License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
152
- Contained in: src/sap.ui.core/src/sap/ui/thirdparty/swipe-view.js
153
-
154
136
  Component: Zynga Scroller, version: 1.2.1-0-g5d43806
155
137
  Copyright: 2011 Zynga Inc.
156
138
  License: MIT
@@ -193,12 +175,6 @@ License: LicenseRef-Unicode-3.0
193
175
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/LicenseRef-Unicode-3.0.txt
194
176
  Contained in: src/sap.ui.core/src/sap/ui/core/cldr/**
195
177
 
196
- Component: MobiScroll, version: 2.9.0
197
- Copyright: 2010-2013, Acid Media
198
- License: MIT
199
- License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
200
- Contained in: src/sap.ui.core/src/sap/ui/thirdparty/mobiscroll/**
201
-
202
178
  Component: SinonJS, version: 1.14.1
203
179
  Copyright: 2010-2014, Christian Johansen, christian@cjohansen.no
204
180
  License: BSD-3-Clause
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.mdc",
3
- "version": "1.136.2",
3
+ "version": "1.138.0",
4
4
  "description": "OpenUI5 UI Library sap.ui.mdc",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,8 +14,8 @@
14
14
  "url": "https://github.com/SAP/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.m": "1.136.2",
18
- "@openui5/sap.ui.core": "1.136.2",
19
- "@openui5/sap.ui.layout": "1.136.2"
17
+ "@openui5/sap.m": "1.138.0",
18
+ "@openui5/sap.ui.core": "1.138.0",
19
+ "@openui5/sap.ui.layout": "1.138.0"
20
20
  }
21
21
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2025 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.136.2</version>
9
+ <version>1.138.0</version>
10
10
 
11
11
  <documentation>UI5 library: sap.ui.mdc</documentation>
12
12
 
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * The content aggregation of the control must not be used.
34
34
  * @extends sap.m.OverflowToolbar
35
35
  * @author SAP SE
36
- * @version 1.136.2
36
+ * @version 1.138.0
37
37
  * @constructor
38
38
  * @since 1.58
39
39
  * @private
@@ -79,7 +79,7 @@ sap.ui.define([
79
79
  * @extends sap.ui.mdc.Control
80
80
  * @borrows sap.ui.mdc.mixin.FilterIntegrationMixin.rebind as #rebind
81
81
  * @author SAP SE
82
- * @version 1.136.2
82
+ * @version 1.138.0
83
83
  * @constructor
84
84
  *
85
85
  * @public
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.ui.core.Control
24
24
  * @abstract
25
25
  * @author SAP SE
26
- * @version 1.136.2
26
+ * @version 1.138.0
27
27
  * @alias sap.ui.mdc.Control
28
28
  *
29
29
  * @borrows sap.ui.mdc.mixin.DelegateMixin.awaitControlDelegate as #awaitControlDelegate
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * </ul>
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.136.2
32
+ * @version 1.138.0
33
33
  * @public
34
34
  * @since 1.114.0
35
35
  * @namespace
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.ui.core.Element
24
24
  * @abstract
25
25
  * @author SAP SE
26
- * @version 1.136.2
26
+ * @version 1.138.0
27
27
  * @alias sap.ui.mdc.Element
28
28
  *
29
29
  * @borrows sap.ui.mdc.mixin.DelegateMixin.awaitControlDelegate as #awaitControlDelegate
@@ -10,10 +10,14 @@ sap.ui.define([
10
10
  'sap/ui/mdc/enums/BaseType',
11
11
  'sap/ui/mdc/enums/OperatorName',
12
12
  'sap/ui/mdc/condition/Condition',
13
+ 'sap/base/Log',
13
14
  'sap/base/util/deepEqual',
14
15
  'sap/base/util/merge',
15
16
  'sap/ui/model/BindingMode',
16
- 'sap/ui/model/Context'
17
+ 'sap/ui/model/Context',
18
+ 'sap/ui/core/library',
19
+ 'sap/ui/core/Element',
20
+ 'sap/ui/core/LabelEnablement'
17
21
  ], (
18
22
  FieldBase,
19
23
  FieldBaseRenderer,
@@ -21,13 +25,19 @@ sap.ui.define([
21
25
  BaseType,
22
26
  OperatorName,
23
27
  Condition,
28
+ Log,
24
29
  deepEqual,
25
30
  merge,
26
31
  BindingMode,
27
- Context
32
+ Context,
33
+ coreLibrary,
34
+ Element,
35
+ LabelEnablement
28
36
  ) => {
29
37
  "use strict";
30
38
 
39
+ const { ValueState } = coreLibrary;
40
+
31
41
  /**
32
42
  * Constructor for a new <code>Field</code>.
33
43
  *
@@ -54,13 +64,13 @@ sap.ui.define([
54
64
  * @implements sap.ui.core.IFormContent, sap.ui.core.ISemanticFormContent, sap.m.IOverflowToolbarContent
55
65
  *
56
66
  * @author SAP SE
57
- * @version 1.136.2
67
+ * @version 1.138.0
58
68
  *
59
69
  * @constructor
60
70
  * @alias sap.ui.mdc.Field
61
71
  * @see {@link topic:1dd2aa91115d43409452a271d11be95b sap.ui.mdc}
62
72
  * @see {@link topic:5260b9ca249f465ab33769b9edb442aa Field Building Block (OData V4)}
63
- * @version 1.136.2
73
+ * @version 1.138.0
64
74
  * @since 1.54.0
65
75
  * @public
66
76
  */
@@ -696,6 +706,166 @@ sap.ui.define([
696
706
 
697
707
  };
698
708
 
709
+ // fire events on "value" property as this is the main-propery
710
+ Field.prototype.getBindingEventParameter = function (oEvent) {
711
+
712
+ const oBinding = this.getBinding("value");
713
+
714
+ if (!oBinding) {
715
+ return null; // only fire event if there is a Binding
716
+ }
717
+
718
+ const oParameter = FieldBase.prototype.getBindingEventParameter.apply(this, arguments);
719
+
720
+ if (oParameter) {
721
+ oParameter.property = "value";
722
+ oParameter.type = oBinding.getType();
723
+ }
724
+
725
+ return oParameter;
726
+
727
+ };
728
+
729
+ const HANDLEDBYMIXIN = Symbol("sap.ui.core.message.MessageMixin");
730
+ Field.prototype.refreshDataState = function (sName, oDataState) {
731
+
732
+ // TODO: make logic of MessageMixIn reusable
733
+
734
+ // as bindings vor other properties (e.g. valueState) can exist that uses CompositeBindings or Formatters with same binding path as value-binding
735
+ // do it for all properties
736
+ if (oDataState.getChanges().messages && this.getBinding(sName) && this.getBinding(sName).isA("sap.ui.model.PropertyBinding")) {
737
+ const aMessages = oDataState.getMessages();
738
+ const aLabels = LabelEnablement.getReferencingLabels(this);
739
+ const sLabelId = aLabels[0];
740
+ let bForceUpdate = false;
741
+
742
+ aMessages.forEach((oMessage) => {
743
+ if (aLabels && aLabels.length > 0) {
744
+ // we simply take the first label text and ignore all others
745
+ const oLabel = Element.getElementById(sLabelId);
746
+ if (oLabel.getMetadata().isInstanceOf("sap.ui.core.Label") && oLabel.getText) {
747
+ let sAdditionalText = oMessage.getAdditionalText() || '';
748
+ const sLabel = oLabel.getText();
749
+ if (!sAdditionalText.split(',').includes(sLabel)) {
750
+ if (oMessage[HANDLEDBYMIXIN]) {
751
+ sAdditionalText = sAdditionalText ? `${sAdditionalText}, ${sLabel}` : sLabel;
752
+ } else {
753
+ sAdditionalText = sLabel;
754
+ oMessage[HANDLEDBYMIXIN] = true;
755
+ }
756
+ oMessage.setAdditionalText(sAdditionalText);
757
+ bForceUpdate = true;
758
+ }
759
+ } else {
760
+ Log.warning(
761
+ "sap.ui.core.message.Message: Can't create labelText." +
762
+ "Label with id " + sLabelId + " is no valid sap.ui.core.Label.",
763
+ this
764
+ );
765
+ }
766
+ }
767
+
768
+ // map message to inner control, if needed
769
+ const oBinding = this.getBinding("value"); // only check value binding
770
+ let sControlId = this.getId();
771
+ if (oBinding.isA("sap.ui.model.CompositeBinding") && this.getContentFactory().isMeasure()) {
772
+ const aContent = this.getCurrentContent();
773
+ if (aContent.length > 0) {
774
+ if (oMessage.getMessageProcessor().isA("sap.ui.model.Model")) {
775
+ // use control the binding-part belongs to
776
+ const aBindings = oBinding.getBindings();
777
+ const aTargets = oMessage.getTargets();
778
+ for (let j = 0; j < aTargets.length; j++) {
779
+ for (let i = 0; i < aBindings.length; i++) {
780
+ if (aTargets[j] === aBindings[i].getResolvedPath()) {
781
+ sControlId = aContent[i].getId();
782
+ break;
783
+ }
784
+ }
785
+ }
786
+ } else if (oMessage.getMessageProcessor().isA("sap.ui.core.message.ControlMessageProcessor")){
787
+ // check if message exists on one content-control
788
+ for (let i = 0; i < aContent.length; i++) {
789
+ const sId = aContent[i].getId();
790
+ const oValueState = this.getValueStateForContent(sId);
791
+ if (oValueState?.valueState === oMessage.getType() && oValueState?.valueStateText === oMessage.getMessage()) {
792
+ sControlId = sId;
793
+ break;
794
+ }
795
+ }
796
+ }
797
+ }
798
+ }
799
+
800
+ if (!oMessage.getControlIds().includes(sControlId)){
801
+ oMessage.addControlId(sControlId);
802
+ bForceUpdate = true;
803
+ }
804
+ });
805
+
806
+ const Messaging = sap.ui.require("sap/ui/core/Messaging");
807
+ if (Messaging) {
808
+ // Update the model to apply the changes
809
+ const oMessageModel = Messaging.getMessageModel();
810
+ oMessageModel.checkUpdate(bForceUpdate, true);
811
+ }
812
+ // propagate messages
813
+ const aContent = this.getCurrentContent();
814
+ const aContentSet = [];
815
+ if (aMessages && aMessages.length > 0) {
816
+ // set message to inner control, if needed
817
+ for (let i = 0; i < aMessages.length; i++) {
818
+ const oMessage = aMessages[i];
819
+ // check if the message type is a valid sap.ui.core.ValueState
820
+ if (ValueState[oMessage.getType()]) {
821
+ const aControlIds = oMessage.getControlIds();
822
+
823
+ for (let j = 0; j < aControlIds.length; j++) {
824
+ const sControlId = aControlIds[j];
825
+ if (aContentSet.indexOf(sControlId) < 0 && aContent.find((oContent) => oContent.getId() === sControlId)) {
826
+ // message for content -> store
827
+ this.setValueStateForContent(sControlId, oMessage.getType(), oMessage.getMessage());
828
+ aContentSet.push(sControlId); // to only set the first valid message
829
+ }
830
+ }
831
+ if (i == 0) { // set first message on Field itself
832
+ this.setValueState(oMessage.getType());
833
+ this.setValueStateText(oMessage.getMessage());
834
+ }
835
+ }
836
+ }
837
+ } else {
838
+ this.setValueState(ValueState.None);
839
+ this.setValueStateText('');
840
+ this.resetInvalidInput(false); // remove errors if valueState removed
841
+ }
842
+
843
+ this._oManagedObjectModel?.checkUpdate(true, true, (oBinding) => { // as ValueState or ValueStateText might be unchanged trigger binding update for inner controls (needed in unit case)
844
+ const sPath = oBinding.getPath();
845
+ return ["/valueState", "/valueStateText"].indexOf(sPath) >= 0;
846
+ }); // async. to reduce updates
847
+ }
848
+ };
849
+
850
+ Field.prototype.isEmptyAllowed = function () {
851
+
852
+ let bAllowed = FieldBase.prototype.isEmptyAllowed.call(this, arguments);
853
+
854
+ if (bAllowed) {
855
+ const oType = this.getContentFactory().retrieveDataType();
856
+ try {
857
+ const vResult = oType.parseValue("", "string");
858
+ oType.validateValue(vResult);
859
+ } catch (oError) {
860
+ // if type is not nullable, empty is invalid
861
+ bAllowed = false;
862
+ }
863
+ }
864
+
865
+ return bAllowed;
866
+
867
+ };
868
+
699
869
  /**
700
870
  * Sets a new value for property {@link #getConditions conditions}.
701
871
  *
@@ -42,7 +42,7 @@ sap.ui.define([
42
42
  * The metadata information is provided via the {@link module:sap/ui/mdc/FilterBarDelegate FilterBarDelegate} implementation. This implementation has to be provided by the application.
43
43
  * @extends sap.ui.mdc.filterbar.FilterBarBase
44
44
  * @author SAP SE
45
- * @version 1.136.2
45
+ * @version 1.138.0
46
46
  * @constructor
47
47
  * @public
48
48
  * @since 1.61.0
@@ -53,13 +53,13 @@ sap.ui.define([
53
53
  * @implements sap.ui.core.IFormContent, sap.ui.core.ISemanticFormContent, sap.m.IOverflowToolbarContent
54
54
  *
55
55
  * @author SAP SE
56
- * @version 1.136.2
56
+ * @version 1.138.0
57
57
  *
58
58
  * @constructor
59
59
  * @alias sap.ui.mdc.FilterField
60
60
  * @see {@link topic:1dd2aa91115d43409452a271d11be95b sap.ui.mdc}
61
61
  * @see {@link topic:2df783760a8e4540ad19ce5ec3ed91c8 FilterField Building Block (OData V4)}
62
- * @version 1.136.2
62
+ * @version 1.138.0
63
63
  * @since 1.48.0
64
64
  * @public
65
65
  */
@@ -525,6 +525,26 @@ sap.ui.define([
525
525
  };
526
526
  };
527
527
 
528
+ // fire on "conditions" property as here is the value-binding
529
+ FilterField.prototype.getBindingEventParameter = function (oEvent) {
530
+
531
+ const oBinding = this.getBinding("conditions");
532
+
533
+ if (!oBinding) {
534
+ return null; // only fire event if there is a Binding
535
+ }
536
+
537
+ const oParameter = FieldBase.prototype.getBindingEventParameter.apply(this, arguments);
538
+
539
+ if (oParameter) {
540
+ oParameter.property = "conditions";
541
+ // oParameter.type = oBinding.getType();
542
+ }
543
+
544
+ return oParameter;
545
+
546
+ };
547
+
528
548
  return FilterField;
529
549
 
530
550
  });
@@ -71,7 +71,7 @@ sap.ui.define([
71
71
  * @extends sap.ui.mdc.field.FieldInfoBase
72
72
  *
73
73
  * @author SAP SE
74
- * @version 1.136.2
74
+ * @version 1.138.0
75
75
  *
76
76
  * @constructor
77
77
  * @alias sap.ui.mdc.Link
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * @constructor
45
45
  * @alias sap.ui.mdc.MultiValueField
46
46
  * @author SAP SE
47
- * @version 1.136.2
47
+ * @version 1.138.0
48
48
  * @since 1.93.0
49
49
  *
50
50
  * @public
@@ -324,7 +324,15 @@ sap.ui.define([
324
324
 
325
325
  for (const oItem of aItems) {
326
326
  const oCurrentCondition = aCurrentConditions[iIndex];
327
- const oCondition = oDelegate.createCondition(this, this, [_getInternalValue(oItem, "key"), _getInternalValue(oItem, "description")], oCurrentCondition);
327
+ const vKey = _getInternalValue(oItem, "key");
328
+ const vDescription = _getInternalValue(oItem, "description");
329
+ let oCondition;
330
+ if (vKey === undefined && vDescription === undefined) {
331
+ // item exist but binding for key and description pending or has no values right now -> just create dummy condition for index.
332
+ oCondition = Condition.createCondition(OperatorName.EQ, [vKey, vDescription], undefined, undefined, ConditionValidated.NotValidated, undefined);
333
+ } else {
334
+ oCondition = oDelegate.createCondition(this, this, [vKey, vDescription], oCurrentCondition);
335
+ }
328
336
  aConditions.push(oCondition);
329
337
  if (!oCurrentCondition || !Condition.compareConditions(oCurrentCondition, oCondition)) { // We do a full comparison here as FilterOperatorUtils.compareConditions may ignore text changes
330
338
  bChanged = true;
@@ -386,6 +394,10 @@ sap.ui.define([
386
394
 
387
395
  };
388
396
 
397
+ Field.prototype.getBindingEventParameter = function (oEvent) {
398
+ return null; // fire event on inner control until messaging on aggregations has been clarified
399
+ };
400
+
389
401
  /**
390
402
  * Sets a new value for property {@link #getConditions conditions}.
391
403
  *