@openui5/sap.ui.mdc 1.103.1 → 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 (225) 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 +1 -1
  8. package/src/sap/ui/mdc/Chart.js +31 -3
  9. package/src/sap/ui/mdc/Control.js +1 -1
  10. package/src/sap/ui/mdc/Element.js +1 -1
  11. package/src/sap/ui/mdc/Field.js +2 -2
  12. package/src/sap/ui/mdc/FilterBar.js +1 -1
  13. package/src/sap/ui/mdc/FilterField.js +2 -2
  14. package/src/sap/ui/mdc/Link.js +74 -12
  15. package/src/sap/ui/mdc/LinkDelegate.js +81 -76
  16. package/src/sap/ui/mdc/MultiValueField.js +1 -1
  17. package/src/sap/ui/mdc/Table.js +7 -1
  18. package/src/sap/ui/mdc/TableDelegate.js +25 -9
  19. package/src/sap/ui/mdc/ValueHelp.js +1 -1
  20. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +1 -1
  21. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer.js +1 -2
  22. package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +1 -1
  23. package/src/sap/ui/mdc/chart/ChartToolbar.js +10 -4
  24. package/src/sap/ui/mdc/chart/PropertyHelper.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 +1 -1
  30. package/src/sap/ui/mdc/condition/Operator.js +1 -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/designtime/actiontoolbar/ActionToolbar.designtime.js +13 -2
  34. package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +3 -0
  35. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +3 -1
  36. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  37. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  38. package/src/sap/ui/mdc/field/ConditionType.js +1 -1
  39. package/src/sap/ui/mdc/field/ConditionsType.js +1 -1
  40. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
  41. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  42. package/src/sap/ui/mdc/field/DefineConditionPanel.js +1 -1
  43. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +1 -1
  44. package/src/sap/ui/mdc/field/FieldBase.js +4 -5
  45. package/src/sap/ui/mdc/field/FieldHelpBase.js +1 -1
  46. package/src/sap/ui/mdc/field/FieldInfoBase.js +23 -21
  47. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  48. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  49. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  50. package/src/sap/ui/mdc/field/FieldValueHelp.js +1 -1
  51. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  52. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +1 -1
  53. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +1 -1
  54. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +1 -1
  55. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +1 -1
  56. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  57. package/src/sap/ui/mdc/field/ListFieldHelp.js +1 -1
  58. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  59. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  60. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  61. package/src/sap/ui/mdc/field/TokenDisplay.js +1 -1
  62. package/src/sap/ui/mdc/field/TokenizerDisplay.js +1 -1
  63. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
  64. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +1 -1
  65. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +1 -1
  66. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +1 -1
  67. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +1 -1
  68. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  69. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  70. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  71. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +19 -17
  72. package/src/sap/ui/mdc/library.js +2 -2
  73. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  74. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  75. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  76. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  77. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  78. package/src/sap/ui/mdc/link/Factory.js +1 -1
  79. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  80. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  81. package/src/sap/ui/mdc/link/Panel.js +3 -2
  82. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  83. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  84. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  85. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  86. package/src/sap/ui/mdc/messagebundle.properties +7 -3
  87. package/src/sap/ui/mdc/messagebundle_ar.properties +4 -2
  88. package/src/sap/ui/mdc/messagebundle_bg.properties +4 -2
  89. package/src/sap/ui/mdc/messagebundle_ca.properties +4 -2
  90. package/src/sap/ui/mdc/messagebundle_cs.properties +7 -5
  91. package/src/sap/ui/mdc/messagebundle_cy.properties +4 -2
  92. package/src/sap/ui/mdc/messagebundle_da.properties +4 -2
  93. package/src/sap/ui/mdc/messagebundle_de.properties +4 -2
  94. package/src/sap/ui/mdc/messagebundle_el.properties +5 -3
  95. package/src/sap/ui/mdc/messagebundle_en.properties +4 -2
  96. package/src/sap/ui/mdc/messagebundle_en_GB.properties +4 -2
  97. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +4 -2
  98. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +4 -2
  99. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +4 -2
  100. package/src/sap/ui/mdc/messagebundle_es.properties +4 -2
  101. package/src/sap/ui/mdc/messagebundle_es_MX.properties +4 -2
  102. package/src/sap/ui/mdc/messagebundle_et.properties +4 -2
  103. package/src/sap/ui/mdc/messagebundle_fi.properties +4 -2
  104. package/src/sap/ui/mdc/messagebundle_fr.properties +7 -5
  105. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +4 -2
  106. package/src/sap/ui/mdc/messagebundle_hi.properties +4 -2
  107. package/src/sap/ui/mdc/messagebundle_hr.properties +7 -5
  108. package/src/sap/ui/mdc/messagebundle_hu.properties +5 -3
  109. package/src/sap/ui/mdc/messagebundle_id.properties +4 -2
  110. package/src/sap/ui/mdc/messagebundle_it.properties +48 -46
  111. package/src/sap/ui/mdc/messagebundle_iw.properties +5 -3
  112. package/src/sap/ui/mdc/messagebundle_ja.properties +4 -2
  113. package/src/sap/ui/mdc/messagebundle_kk.properties +4 -2
  114. package/src/sap/ui/mdc/messagebundle_ko.properties +4 -2
  115. package/src/sap/ui/mdc/messagebundle_lt.properties +4 -2
  116. package/src/sap/ui/mdc/messagebundle_lv.properties +4 -2
  117. package/src/sap/ui/mdc/messagebundle_ms.properties +4 -2
  118. package/src/sap/ui/mdc/messagebundle_nl.properties +4 -2
  119. package/src/sap/ui/mdc/messagebundle_no.properties +4 -2
  120. package/src/sap/ui/mdc/messagebundle_pl.properties +4 -2
  121. package/src/sap/ui/mdc/messagebundle_pt.properties +4 -2
  122. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +4 -2
  123. package/src/sap/ui/mdc/messagebundle_ro.properties +4 -2
  124. package/src/sap/ui/mdc/messagebundle_ru.properties +4 -2
  125. package/src/sap/ui/mdc/messagebundle_sh.properties +4 -2
  126. package/src/sap/ui/mdc/messagebundle_sk.properties +4 -2
  127. package/src/sap/ui/mdc/messagebundle_sl.properties +4 -2
  128. package/src/sap/ui/mdc/messagebundle_sv.properties +4 -2
  129. package/src/sap/ui/mdc/messagebundle_th.properties +9 -7
  130. package/src/sap/ui/mdc/messagebundle_tr.properties +4 -2
  131. package/src/sap/ui/mdc/messagebundle_uk.properties +4 -2
  132. package/src/sap/ui/mdc/messagebundle_vi.properties +4 -2
  133. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +4 -2
  134. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +4 -2
  135. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  136. package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -1
  137. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -1
  138. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  139. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +1 -1
  140. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelper.js +1 -1
  141. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +61 -37
  142. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegate.js +1 -1
  143. package/src/sap/ui/mdc/p13n/Engine.js +1 -1
  144. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  145. package/src/sap/ui/mdc/p13n/StateUtil.js +1 -1
  146. package/src/sap/ui/mdc/p13n/UIManager.js +1 -1
  147. package/src/sap/ui/mdc/p13n/modules/DefaultProviderRegistry.js +1 -1
  148. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +1 -7
  149. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +31 -6
  150. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +1 -1
  151. package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +2 -1
  152. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  153. package/src/sap/ui/mdc/table/PropertyHelper.js +30 -32
  154. package/src/sap/ui/mdc/table/ResponsiveTableType.js +2 -1
  155. package/src/sap/ui/mdc/table/RowActionItem.js +1 -1
  156. package/src/sap/ui/mdc/table/RowSettings.js +1 -1
  157. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +2 -7
  158. package/src/sap/ui/mdc/table/menu/Item.js +3 -3
  159. package/src/sap/ui/mdc/table/menu/QuickActionContainer.js +34 -0
  160. package/src/sap/ui/mdc/themes/base/InfoPanel.less +0 -1
  161. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  162. package/src/sap/ui/mdc/util/PropertyHelper.js +49 -51
  163. package/src/sap/ui/mdc/valuehelp/Dialog.js +3 -1
  164. package/src/sap/ui/mdc/valuehelp/Popover.js +34 -6
  165. package/src/sap/ui/mdc/valuehelp/base/Container.js +1 -1
  166. package/src/sap/ui/mdc/valuehelp/base/Content.js +1 -1
  167. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +1 -1
  168. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +1 -1
  169. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +1 -1
  170. package/src/sap/ui/mdc/valuehelp/content/Bool.js +1 -1
  171. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +1 -1
  172. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +1 -1
  173. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +25 -3
  174. package/src/sap/ui/mdc/valuehelp/content/MTable.js +2 -2
  175. package/test/sap/ui/mdc/testutils/opa/JSDocGeneration.md +18 -0
  176. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +4 -1
  177. package/test/sap/ui/mdc/testutils/opa/Util.js +42 -0
  178. package/test/sap/ui/mdc/testutils/opa/Utils.js +22 -0
  179. package/test/sap/ui/mdc/testutils/opa/chart/ActionsBase.js +1 -1
  180. package/test/sap/ui/mdc/testutils/opa/chart/JSDoc.md +413 -0
  181. package/test/sap/ui/mdc/testutils/opa/chart/TestObjects.js +320 -264
  182. package/test/sap/ui/mdc/testutils/opa/field/Actions.js +50 -0
  183. package/test/sap/ui/mdc/testutils/opa/field/Assertions.js +40 -0
  184. package/test/sap/ui/mdc/testutils/opa/field/JSDoc.md +37 -0
  185. package/test/sap/ui/mdc/testutils/opa/field/TestObjects.js +52 -0
  186. package/test/sap/ui/mdc/testutils/opa/field/waitForField.js +36 -0
  187. package/test/sap/ui/mdc/testutils/opa/field/waitForFieldValueHelpButton.js +42 -0
  188. package/test/sap/ui/mdc/testutils/opa/filterbar/Actions.js +31 -7
  189. package/test/sap/ui/mdc/testutils/opa/filterbar/Assertions.js +53 -7
  190. package/test/sap/ui/mdc/testutils/opa/filterbar/JSDoc.md +188 -0
  191. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +79 -13
  192. package/test/sap/ui/mdc/testutils/opa/filterbar/waitForAdaptFiltersButton.js +47 -0
  193. package/test/sap/ui/mdc/testutils/opa/filterbar/waitForFilterBar.js +28 -0
  194. package/test/sap/ui/mdc/testutils/opa/filterfield/Actions.js +70 -0
  195. package/test/sap/ui/mdc/testutils/opa/filterfield/Assertions.js +87 -0
  196. package/test/sap/ui/mdc/testutils/opa/filterfield/JSDoc.md +63 -0
  197. package/test/sap/ui/mdc/testutils/opa/filterfield/TestObjects.js +71 -0
  198. package/test/sap/ui/mdc/testutils/opa/filterfield/waitForFilterField.js +36 -0
  199. package/test/sap/ui/mdc/testutils/opa/filterfield/waitForFilterFieldValueHelpButton.js +42 -0
  200. package/test/sap/ui/mdc/testutils/opa/link/JSDoc.md +136 -0
  201. package/test/sap/ui/mdc/testutils/opa/link/TestObjects.js +108 -91
  202. package/test/sap/ui/mdc/testutils/opa/table/Actions.js +190 -6
  203. package/test/sap/ui/mdc/testutils/opa/table/Assertions.js +210 -0
  204. package/test/sap/ui/mdc/testutils/opa/table/JSDoc.md +205 -0
  205. package/test/sap/ui/mdc/testutils/opa/table/TestObjects.js +138 -9
  206. package/test/sap/ui/mdc/testutils/opa/table/Util.js +20 -0
  207. package/test/sap/ui/mdc/testutils/opa/table/waitForColumnHeader.js +44 -0
  208. package/test/sap/ui/mdc/testutils/opa/table/waitForListItemInDialogWithLabel.js +55 -0
  209. package/test/sap/ui/mdc/testutils/opa/table/waitForP13nButtonWithParentAndIcon.js +42 -0
  210. package/test/sap/ui/mdc/testutils/opa/table/waitForTable.js +26 -0
  211. package/test/sap/ui/mdc/testutils/opa/valueHelp/JSDoc.md +35 -0
  212. package/test/sap/ui/mdc/testutils/opa/valueHelp/TestObjects.js +7 -0
  213. package/test/sap/ui/mdc/testutils/opa/variant/Actions.js +124 -0
  214. package/test/sap/ui/mdc/testutils/opa/variant/Assertions.js +48 -0
  215. package/test/sap/ui/mdc/testutils/opa/variant/JSDoc.md +84 -0
  216. package/test/sap/ui/mdc/testutils/opa/variant/TestObjects.js +95 -0
  217. package/test/sap/ui/mdc/testutils/opa/variant/waitForVariantManager.js +43 -0
  218. package/test/sap/ui/mdc/testutils/opa/variant/waitForVariantManagerButton.js +45 -0
  219. package/test/sap/ui/mdc/testutils/opa/variant/waitForVariantManagerItem.js +54 -0
  220. package/test/sap/ui/mdc/testutils/opa/variant/waitForVariantManagerOverlay.js +44 -0
  221. package/ui5.yaml +4 -1
  222. package/src/sap/ui/mdc/odata/json/FilterBarDelegate.js +0 -155
  223. package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +0 -750
  224. package/test/sap/ui/mdc/testutils/opa/chart/ChartNew.js +0 -24
  225. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +0 -288
package/.reuse/dep5 CHANGED
@@ -137,6 +137,11 @@ Copyright: jQuery Foundation and other contributors
137
137
  License: MIT
138
138
  Comment: these files belong to: QUnit 2
139
139
 
140
+ Files: src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/qunit-2.18.*
141
+ Copyright: jQuery Foundation and other contributors
142
+ License: MIT
143
+ Comment: these files belong to: QUnit 2.18
144
+
140
145
  Files: src/sap.ui.core/src/sap/ui/thirdparty/jquery-compat.js
141
146
  Copyright: OpenJS Foundation and other contributors
142
147
  License: MIT
@@ -234,6 +239,11 @@ Copyright: 2010-2017, Christian Johansen, christian@cjohansen.no
234
239
  License: BSD-3-Clause
235
240
  Comment: these files belong to: SinonJS
236
241
 
242
+ Files: src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/sinon-14.0.*
243
+ Copyright: 2010-2022, Christian Johansen, christian@cjohansen.no
244
+ License: BSD-3-Clause
245
+ Comment: these files belong to: SinonJS 14
246
+
237
247
  Files: src/sap.ui.core/src/sap/ui/thirdparty/sinon-qunit.js
238
248
  Copyright: 2010-2011, Christian Johansen
239
249
  License: BSD-3-Clause
@@ -339,6 +349,13 @@ Copyright:
339
349
  License: Apache-2.0 and ISC
340
350
  Comment: these files contain content from SAP and node-lru-cache: LRUPersistentCache.js is overall written by SAP, but portions ('Least Recently Used' logic) are taken from the node-lru-cache project (see https://github.com/isaacs/node-lru-cache/blob/v2.7.3/README.md) and modified.
341
351
 
352
+ Files: src/sap.ui.core/test/sap/ui/core/qunit/i18n/helper/_timezones.js
353
+ Copyright:
354
+ 2009-2022 SAP SE or an SAP affiliate company and OpenUI5 contributors
355
+ Arthur David Olson, Paul Eggert and other contributors
356
+ License: Apache-2.0 and LicenseRef-tzdata-PublicDomain
357
+ Comment: these files contain content from SAP and Time Zone Database: _timezones.js is overall written by SAP, but the list of IANA timezone IDs is taken from the Timezone Database
358
+
342
359
 
343
360
  # Library: sap.ui.documentation:
344
361
 
@@ -0,0 +1,5 @@
1
+ Unless specified below, all files in the tz code and data (including
2
+ this LICENSE file) are in the public domain.
3
+
4
+ If the files date.c, newstrftime.3, and strftime.c are present, they
5
+ contain material derived from BSD and use the BSD 3-clause license.
package/THIRDPARTY.txt CHANGED
@@ -76,6 +76,12 @@ License: MIT
76
76
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
77
77
  Contained in: src/sap.ui.core/src/sap/ui/thirdparty/qunit-2.*
78
78
 
79
+ Component: QUnit 2.18, version: 2.18.0
80
+ Copyright: jQuery Foundation and other contributors
81
+ License: MIT
82
+ License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
83
+ Contained in: src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/qunit-2.18.*
84
+
79
85
  Component: jQuery-Migrate, version: 3.3.1
80
86
  Copyright: OpenJS Foundation and other contributors
81
87
  License: MIT
@@ -191,13 +197,19 @@ License: BSD-3-Clause
191
197
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/BSD-3-Clause.txt
192
198
  Contained in: src/sap.ui.core/src/sap/ui/thirdparty/sinon-4.js
193
199
 
200
+ Component: SinonJS 14, version: 14.0.0
201
+ Copyright: 2010-2022, Christian Johansen, christian@cjohansen.no
202
+ License: BSD-3-Clause
203
+ License Text: https://github.com/SAP/openui5/blob/master/LICENSES/BSD-3-Clause.txt
204
+ Contained in: src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/sinon-14.0.*
205
+
194
206
  Component: Sinon-qunit, version: 2.0.0
195
207
  Copyright: 2010-2011, Christian Johansen
196
208
  License: BSD-3-Clause
197
209
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/BSD-3-Clause.txt
198
210
  Contained in: src/sap.ui.core/src/sap/ui/thirdparty/sinon-qunit.js
199
211
 
200
- Component: URI.js, version: 1.19.10
212
+ Component: URI.js, version: 1.19.11
201
213
  Copyright: Rodney Rehm
202
214
  License: MIT
203
215
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
@@ -315,6 +327,12 @@ License: ISC
315
327
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/ISC.txt
316
328
  Contained in: src/sap.ui.core/src/sap/ui/core/cache/LRUPersistentCache.js
317
329
 
330
+ Component: Time Zone Database, version: 2022a
331
+ Copyright: Arthur David Olson, Paul Eggert and other contributors
332
+ License: LicenseRef-tzdata-PublicDomain
333
+ License Text: https://github.com/SAP/openui5/blob/master/LICENSES/LicenseRef-tzdata-PublicDomain.txt
334
+ Contained in: src/sap.ui.core/test/sap/ui/core/qunit/i18n/helper/_timezones.js
335
+
318
336
 
319
337
  Library: sap.ui.documentation:
320
338
 
@@ -450,7 +468,7 @@ License: Apache-2.0
450
468
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
451
469
  Contained in: lib/jsdoc/ui5/plugin.js
452
470
 
453
- Component: SAP Theming Base Content, version: 11.1.39
471
+ Component: SAP Theming Base Content, version: 11.1.40
454
472
  Copyright: SAP SE or an SAP affiliate company and Theming Base Content contributors
455
473
  License: Apache-2.0
456
474
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
@@ -980,6 +998,21 @@ END of license: LicenseRef-JSONinJSPublicDomain
980
998
  =================================
981
999
 
982
1000
 
1001
+ =================================
1002
+ BEGIN of license: LicenseRef-tzdata-PublicDomain
1003
+ =================================
1004
+
1005
+ Unless specified below, all files in the tz code and data (including
1006
+ this LICENSE file) are in the public domain.
1007
+
1008
+ If the files date.c, newstrftime.3, and strftime.c are present, they
1009
+ contain material derived from BSD and use the BSD 3-clause license.
1010
+
1011
+ =================================
1012
+ END of license: LicenseRef-tzdata-PublicDomain
1013
+ =================================
1014
+
1015
+
983
1016
  =================================
984
1017
  BEGIN of license: MIT
985
1018
  =================================
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.mdc",
3
- "version": "1.103.1",
3
+ "version": "1.104.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.103.1",
18
- "@openui5/sap.ui.core": "1.103.1",
19
- "@openui5/sap.ui.layout": "1.103.1"
17
+ "@openui5/sap.m": "1.104.0",
18
+ "@openui5/sap.ui.core": "1.104.0",
19
+ "@openui5/sap.ui.layout": "1.104.0"
20
20
  }
21
21
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.103.1</version>
9
+ <version>1.104.0</version>
10
10
 
11
11
  <documentation>UI5 library: sap.ui.mdc</documentation>
12
12
 
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
  * @class The column for the metadata driven table, that hold the template to be shown when the rows has data.
32
32
  * @extends sap.m.OverflowToolbar
33
33
  * @author SAP SE
34
- * @version 1.103.1
34
+ * @version 1.104.0
35
35
  * @constructor
36
36
  * @private
37
37
  * @since 1.58
@@ -104,7 +104,7 @@ sap.ui.define(['sap/ui/mdc/BaseDelegate', 'sap/ui/core/library'], function (Base
104
104
  },
105
105
 
106
106
  /**
107
- * Hook that will be executed is called when changes are done applying to controls during the XML flexibility change appliance process.
107
+ * Hook that will be executed when changes are done applying to controls during the XML flexibility change appliance process.
108
108
  *
109
109
  * @param {Object<sap.ui.mdc.Control>} oControl Instance of an MDC control
110
110
  * @param {Object} mPropertyBag Property bag from SAPUI5 flexibility
@@ -25,7 +25,8 @@ sap.ui.define([
25
25
  "sap/ui/base/ManagedObjectObserver",
26
26
  "sap/ui/mdc/chart/DrillBreadcrumbs",
27
27
  "sap/ui/mdc/actiontoolbar/ActionToolbarAction",
28
- "sap/ui/thirdparty/jquery"
28
+ "sap/ui/thirdparty/jquery",
29
+ "sap/ui/core/library"
29
30
  ],
30
31
  function (
31
32
  Core,
@@ -48,11 +49,13 @@ sap.ui.define([
48
49
  ManagedObjectObserver,
49
50
  Breadcrumbs,
50
51
  ActionToolbarAction,
51
- jQuery
52
+ jQuery,
53
+ coreLibrary
52
54
  ) {
53
55
  "use strict";
54
56
 
55
57
  var DrillStackHandler;
58
+ var TitleLevel = coreLibrary.TitleLevel;
56
59
 
57
60
  /**
58
61
  * Constructor for a new Chart.
@@ -62,7 +65,7 @@ sap.ui.define([
62
65
  * @class The Chart control creates a chart based on metadata and the configuration specified.
63
66
  * @extends sap.ui.mdc.Control
64
67
  * @author SAP SE
65
- * @version 1.103.1
68
+ * @version 1.104.0
66
69
  * @constructor
67
70
  * @experimental As of version ...
68
71
  * @private
@@ -242,6 +245,17 @@ sap.ui.define([
242
245
  propertyInfo: {
243
246
  type: "object",
244
247
  defaultValue: []
248
+ },
249
+ /**
250
+ * Semantic level of the header.
251
+ * For more information, see {@link sap.m.Title#setLevel}.
252
+ *
253
+ * @since 1.104
254
+ */
255
+ headerLevel: {
256
+ type: "sap.ui.core.TitleLevel",
257
+ group: "Appearance",
258
+ defaultValue: TitleLevel.Auto
245
259
  }
246
260
  },
247
261
  aggregations: {
@@ -1251,5 +1265,19 @@ sap.ui.define([
1251
1265
  return Control.prototype.addAggregation.apply(this, ["actions", oControl]);
1252
1266
  };
1253
1267
 
1268
+ /**
1269
+ * Specifies the header level for the title of the chart.
1270
+ * @param {sap.ui.core.TitleLevel} sHeaderLevel Header level
1271
+ * @returns {sap.ui.mdc.Chart} Reference to <code>this</code> in order to allow method chaining
1272
+ */
1273
+ Chart.prototype.setHeaderLevel = function(sHeaderLevel) {
1274
+ if (this.getAggregation("_toolbar")) {
1275
+ this.getAggregation("_toolbar")._setHeaderLevel(sHeaderLevel);
1276
+ }
1277
+
1278
+ this.setProperty("headerLevel", sHeaderLevel);
1279
+ return this;
1280
+ };
1281
+
1254
1282
  return Chart;
1255
1283
  });
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  * @extends sap.ui.core.Control
21
21
  * @abstract
22
22
  * @author SAP SE
23
- * @version 1.103.1
23
+ * @version 1.104.0
24
24
  * @alias sap.ui.mdc.Control
25
25
  *
26
26
  * @borrows sap.ui.mdc.mixin.DelegateMixin.awaitControlDelegate as awaitControlDelegate
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  * @extends sap.ui.core.Element
21
21
  * @abstract
22
22
  * @author SAP SE
23
- * @version 1.103.1
23
+ * @version 1.104.0
24
24
  * @alias sap.ui.mdc.Element
25
25
  *
26
26
  * @borrows sap.ui.mdc.mixin.DelegateMixin.awaitControlDelegate as awaitControlDelegate
@@ -46,12 +46,12 @@ sap.ui.define([
46
46
  * @implements sap.ui.core.IFormContent
47
47
  *
48
48
  * @author SAP SE
49
- * @version 1.103.1
49
+ * @version 1.104.0
50
50
  *
51
51
  * @constructor
52
52
  * @alias sap.ui.mdc.Field
53
53
  * @author SAP SE
54
- * @version 1.103.1
54
+ * @version 1.104.0
55
55
  * @since 1.54.0
56
56
  * @experimental As of version 1.54
57
57
  *
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  * The metadata information is provided via the {@link sap.ui.mdc.FilterBarDelegate FilterBarDelegate} implementation. This implementation has to be provided by the application.
22
22
  * @extends sap.ui.mdc.filterbar.FilterBarBase
23
23
  * @author SAP SE
24
- * @version 1.103.1
24
+ * @version 1.104.0
25
25
  * @constructor
26
26
  * @experimental As of version 1.61
27
27
  * @private
@@ -33,12 +33,12 @@ sap.ui.define([
33
33
  * @extends sap.ui.mdc.field.FieldBase
34
34
  *
35
35
  * @author SAP SE
36
- * @version 1.103.1
36
+ * @version 1.104.0
37
37
  *
38
38
  * @constructor
39
39
  * @alias sap.ui.mdc.FilterField
40
40
  * @author SAP SE
41
- * @version 1.103.1
41
+ * @version 1.104.0
42
42
  * @since 1.48.0
43
43
  *
44
44
  * @experimental As of version 1.48
@@ -40,12 +40,12 @@ sap.ui.define([
40
40
  * @class
41
41
  * A <code>Link</code> control can be used to handle navigation scenarios with one or more targets through direct navigation or by opening a <code>Panel</code>.<br>
42
42
  * It can also be used to display additional content, such as <code>ContactDetails</code> on the <code>Panel</code>.
43
- * <b>Note:</b> Navigation targets are determined by the implementation of a {@link sap.ui.mdc.LinkDelegate}.
43
+ * <b>Note:</b> Navigation targets are determined by the implementation of a {@link module:sap/ui/mdc/LinkDelegate LinkDelegate}.
44
44
  *
45
45
  * @extends sap.ui.mdc.field.FieldInfoBase
46
46
  *
47
47
  * @author SAP SE
48
- * @version 1.103.1
48
+ * @version 1.104.0
49
49
  *
50
50
  * @constructor
51
51
  * @alias sap.ui.mdc.Link
@@ -106,13 +106,25 @@ sap.ui.define([
106
106
  oModel.setSizeLimit(1000);
107
107
  this.setModel(oModel, "$sapuimdcLink");
108
108
  this.attachEvent("modelContextChange", this.fireDataUpdate, this);
109
+ this._oLinkType = null;
109
110
  this._bLinkItemsFetched = false;
110
111
  this._aLinkItems = [];
111
- this._oLinkType = null;
112
112
 
113
113
  FieldInfoBase.prototype.init.apply(this, arguments);
114
114
  };
115
115
 
116
+ Link.prototype.exit = function() {
117
+ this._aLinkItems = undefined;
118
+ this._bLinkItemsFetched = undefined;
119
+ this._oLinkType = undefined;
120
+ this._oUseDelegateItemsPromise = undefined;
121
+
122
+ this._aAdditionalContent = undefined;
123
+ this._oUseDelegateAdditionalContentPromise = undefined;
124
+
125
+ FieldInfoBase.prototype.exit.apply(this, arguments);
126
+ };
127
+
116
128
  // ----------------------- Implementation of 'FieldInfoBase' interface --------------------------------------------
117
129
 
118
130
  /**
@@ -224,7 +236,18 @@ sap.ui.define([
224
236
 
225
237
  var oPanelAdditionalContent = !aAdditionalContent.length && !aMLinkItems.length ? this._getNoContent() : aAdditionalContent;
226
238
 
227
- var oPanel = new Panel(this._createPanelId(Utils, FlexRuntimeInfoAPI), {
239
+ var sPanelId = this._createPanelId(Utils, FlexRuntimeInfoAPI);
240
+ var oExistingPanel = sap.ui.getCore().byId(sPanelId);
241
+ if (oExistingPanel) {
242
+ SapBaseLog.warning("Duplicate ID '" + sPanelId + "'. The instance of sap.ui.mdc.link.Panel should be destroyed first in order to avoid duplicate creation of sap.ui.mdc.link.Panel with stable ID.");
243
+ // close Popover if existing
244
+ if (oExistingPanel.getParent() && oExistingPanel.getParent().close) {
245
+ oExistingPanel.getParent().close();
246
+ }
247
+ oExistingPanel.destroy();
248
+ }
249
+
250
+ var oPanel = new Panel(sPanelId, {
228
251
  enablePersonalization: this.getEnablePersonalization(), // brake the binding chain
229
252
  items: aMBaselineLinkItems.map(function(oMLinkItem) {
230
253
  return new PanelItem(oMLinkItem.key, {
@@ -251,11 +274,13 @@ sap.ui.define([
251
274
  beforeNavigationCallback: this._beforeNavigationCallback.bind(this),
252
275
  metadataHelperPath: "sap/ui/mdc/Link"
253
276
  });
254
-
255
277
  oPanel.setModel(new JSONModel({
256
278
  metadata: jQuery.extend(true, [], this._getInternalModel().getProperty("/linkItems")),
257
279
  baseline: jQuery.extend(true, [], this._getInternalModel().getProperty("/baselineLinkItems"))
258
280
  }), "$sapuimdcLink");
281
+ // reset _aAdditionalContent as the additionalContent gets forwarded to the Panel and will be destroyed when the Popover is closed
282
+ this._setAdditionalContent(undefined);
283
+
259
284
  return resolve(oPanel);
260
285
  }.bind(this));
261
286
  }.bind(this));
@@ -339,7 +364,7 @@ sap.ui.define([
339
364
  if (this.getParent()) {
340
365
  oField = this.getParent();
341
366
  }
342
- var oControl = typeof this.getSourceControl() === "string" ? sap.ui.getCore().byId(this.getSourceControl()) : this.getSourceControl();
367
+ var oControl = this._getSourceControl();
343
368
  if (!oControl) {
344
369
  //SapBaseLog.error("Invalid source control: " + this.getSourceControl() + ". The mandatory 'sourceControl' association should be defined due to personalization reasons, parent: " + oField + " used instead.");
345
370
  this.setSourceControl(oField);
@@ -442,18 +467,45 @@ sap.ui.define([
442
467
  * @MDC_PUBLIC_CANDIDATE
443
468
  */
444
469
  Link.prototype.retrieveAdditionalContent = function() {
470
+ if (this._aAdditionalContent) {
471
+ return Promise.resolve(this._aAdditionalContent);
472
+ } else {
473
+ this._oUseDelegateAdditionalContentPromise = this._useDelegateAdditionalContent();
474
+ return this._oUseDelegateAdditionalContentPromise.then(function() {
475
+ return Promise.resolve(this._aAdditionalContent);
476
+ }.bind(this));
477
+ }
478
+ };
479
+
480
+ /**
481
+ * Determines the <code>AdditionalContent</code> objects depending on the given <code>LinkDelegate</code>.
482
+ * @private
483
+ * @returns {Promise} Resolves once the <code>AdditionalContent</code> objects have been retrieved by the delegate. This also sets this._aAdditionalContent.
484
+ */
485
+ Link.prototype._useDelegateAdditionalContent = function() {
445
486
  if (this.awaitControlDelegate()) {
446
487
  return this.awaitControlDelegate().then(function() {
447
488
  var oPayload = Object.assign({}, this.getPayload());
448
- return this.getControlDelegate().fetchAdditionalContent(oPayload, this).then(function(aAdditionalContent) {
449
- return aAdditionalContent;
450
- });
489
+ return new Promise(function(resolve) {
490
+ this.getControlDelegate().fetchAdditionalContent(oPayload, this).then(function(aAdditionalContent) {
491
+ this._setAdditionalContent(aAdditionalContent === null ? [] : aAdditionalContent);
492
+ resolve();
493
+ }.bind(this));
494
+ }.bind(this));
451
495
  }.bind(this));
452
496
  }
453
497
  SapBaseLog.error("mdc.Link retrieveAdditionalContent: control delegate is not set - could not load AdditionalContent from delegate.");
454
498
  return Promise.resolve([]);
455
499
  };
456
500
 
501
+ /**
502
+ * @private
503
+ * @param {sap.ui.core.Control[]} aAdditionalContent The given <code>AdditionalContent</code> objects
504
+ */
505
+ Link.prototype._setAdditionalContent = function(aAdditionalContent) {
506
+ this._aAdditionalContent = aAdditionalContent;
507
+ };
508
+
457
509
  /**
458
510
  * @returns {Promise} Returns a {@link sap.ui.mdc.LinkDelegate.LinkType}, once resolved
459
511
  * @protected
@@ -496,8 +548,8 @@ sap.ui.define([
496
548
  if (this._bLinkItemsFetched) {
497
549
  return Promise.resolve(this._aLinkItems);
498
550
  } else {
499
- this.oUseDelegateItemsPromise = this._useDelegateItems();
500
- return this.oUseDelegateItemsPromise.then(function() {
551
+ this._oUseDelegateItemsPromise = this._useDelegateItems();
552
+ return this._oUseDelegateItemsPromise.then(function() {
501
553
  return Promise.resolve(this._aLinkItems);
502
554
  }.bind(this));
503
555
  }
@@ -539,6 +591,7 @@ sap.ui.define([
539
591
  aLinkItemsMissingParent.forEach(function(oLinkItem) {
540
592
  this.addDependent(oLinkItem);
541
593
  }.bind(this));
594
+
542
595
  this._aLinkItems = aLinkItems;
543
596
  };
544
597
 
@@ -565,7 +618,7 @@ sap.ui.define([
565
618
  * @returns {Object} The binding context of the SourceControl / link
566
619
  */
567
620
  Link.prototype._getControlBindingContext = function() {
568
- var oControl = typeof this.getSourceControl() === "string" ? sap.ui.getCore().byId(this.getSourceControl()) : this.getSourceControl();
621
+ var oControl = this._getSourceControl();
569
622
  return oControl && oControl.getBindingContext() || this.getBindingContext();
570
623
  };
571
624
 
@@ -577,5 +630,14 @@ sap.ui.define([
577
630
  return this.getModel("$sapuimdcLink");
578
631
  };
579
632
 
633
+ /**
634
+ * Returns the object which is defined in the association "sourceControl"
635
+ * @private
636
+ * @returns {sap.ui.core.Control} Associated sourceControl
637
+ */
638
+ Link.prototype._getSourceControl = function() {
639
+ return typeof this.getSourceControl() === "string" ? sap.ui.getCore().byId(this.getSourceControl()) : this.getSourceControl();
640
+ };
641
+
580
642
  return Link;
581
643
  });
@@ -19,81 +19,86 @@ sap.ui.define(['sap/ui/mdc/BaseDelegate'], function(BaseDelegate) {
19
19
  * @ui5-restricted sap.ui.mdc, sap.fe
20
20
  * @MDC_PUBLIC_CANDIDATE
21
21
  */
22
- var LinkDelegate = Object.assign({}, BaseDelegate, {
23
- /**
24
- * Retrieves and returns the relevant {@link sap.ui.mdc.link.LinkItem} for the <code>Link</code> control.
25
- * @protected
26
- * @ui5-restricted sap.ui.mdc
27
- * @param {Object} oPayload Payload of the <code>Link</code> control given by the application
28
- * @param {Object} oBindingContext Binding context of the <code>Link</code> control
29
- * @param {Object} oInfoLog InfoLog of the <code>Link</code> control
30
- * @returns {Promise} Once resolved, <code>null</code> or an array of {@link sap.ui.mdc.link.LinkItem} is returned
31
- * If <code>null</code> is returned, the link won't cache <code>LinkItem</code>.
32
- */
33
- fetchLinkItems: function(oPayload, oBindingContext, oInfoLog) {
34
- return Promise.resolve(null);
35
- },
36
- /**
37
- * @typedef {object} sap.ui.mdc.LinkDelegate.LinkType
38
- * @property {number} type 0 (Text) | 1 (Direct Link) | 2 (Popup)
39
- * If <code>oLinkType.type</code> is 0, the link is rendered as a text.
40
- * If <code>oLinkType.type</code> is 1, the link is rendered as a link. When pressed the link triggers a direct navigation instead.
41
- * If <code>oLinkType.type</code> is 2, the link is rendered as a link and opens a popover (default).
42
- * @property {sap.ui.mdc.link.LinkItem} directLink Instance of {@link sap.ui.mdc.link.LinkItem} which is used for direct navigation
43
- */
44
- /**
45
- * Calculates and returns the type of link that is displayed.
46
- * @protected
47
- * @ui5-restricted sap.ui.mdc
48
- * @param {Object} oPayload Payload of the <code>Link</code> given by the application
49
- * @returns {Promise} Once resolved, an object containing an initial {@link sap.ui.mdc.LinkDelegate.LinkType} and an optional <code>Promise</code> are returned
50
- * The optional <code>Promise</code> also returns a {@link sap.ui.mdc.LinkDelegate.LinkType} object.
51
- * Once the optional <code>Promise</code> has been resolved, the returned {@link sap.ui.mdc.LinkDelegate.LinkType} overwrites the <code>initialType</code>.
52
- */
53
- fetchLinkType: function(oPayload, oLink) {
54
- return Promise.resolve({
55
- initialType: {
56
- type: 2,
57
- directLink: undefined
58
- },
59
- runtimeType: null
60
- });
61
- },
62
- /**
63
- * Retrieves and returns the relevant <code>additionalContent</code> for the <code>Link</code> control as an array.
64
- * @protected
65
- * @ui5-restricted sap.ui.mdc
66
- * @param {Object} oPayload Payload of the <code>Link</code> control given by the application
67
- * @param {Object} oLink Instance of the <code>Link</code> control
68
- * @returns {Promise} Once resolved, an array of {@link sap.ui.core.Control} is returned
69
- */
70
- fetchAdditionalContent: function(oPayload, oLink) {
71
- return Promise.resolve([]);
72
- },
73
- /**
74
- * Enables the modification of the {@link sap.ui.mdc.link.LinkItem} instances before the popover opens. This enables additional parameters
75
- * to be added to the link.
76
- * @protected
77
- * @ui5-restricted sap.ui.mdc
78
- * @param {Object} oPayload Payload of the <code>Link</code> control given by the application
79
- * @param {Object} oBindingContext Binding context of the <code>Link</code> control
80
- * @param {sap.ui.mdc.link.LinkItem} aLinkItems The {@link sap.ui.mdc.link.LinkItem} instances of the link that can be modified
81
- * @returns {Promise} Once resolved, an array of link items is returned
82
- */
83
- modifyLinkItems: function(oPayload, oBindingContext, aLinkItems) {
84
- return Promise.resolve(aLinkItems);
85
- },
86
- /**
87
- * Allows for interception before the actual navigation takes place.
88
- * @protected
89
- * @ui5-restricted sap.ui.mdc
90
- * @param {Object} oPayload Payload of the <code>Link</code> control given by the application
91
- * @param {Object} oEvent The <code>pressLink</code> event which is fired by the <code>Link</code> control
92
- * @returns {Promise} Once resolved, it returns a Boolean value which determines whether the navigation takes place
93
- */
94
- beforeNavigationCallback: function(oPayload, oEvent) {
95
- return Promise.resolve(true);
96
- }
97
- });
22
+ var LinkDelegate = Object.assign({}, BaseDelegate);
23
+
24
+ /**
25
+ * Retrieves and returns the relevant {@link sap.ui.mdc.link.LinkItem} for the <code>Link</code> control.
26
+ * @protected
27
+ * @ui5-restricted sap.ui.mdc
28
+ * @param {Object} oPayload Payload of the <code>Link</code> control given by the application
29
+ * @param {Object} oBindingContext Binding context of the <code>Link</code> control
30
+ * @param {Object} oInfoLog InfoLog of the <code>Link</code> control
31
+ * @returns {Promise} Once resolved, <code>null</code> or an array of {@link sap.ui.mdc.link.LinkItem} is returned
32
+ * If <code>null</code> is returned, the link won't cache <code>LinkItem</code>.
33
+ */
34
+ LinkDelegate.fetchLinkItems = function(oPayload, oBindingContext, oInfoLog) {
35
+ return Promise.resolve(null);
36
+ };
37
+
38
+ /**
39
+ * @typedef {object} sap.ui.mdc.LinkDelegate.LinkType
40
+ * @property {number} type 0 (Text) | 1 (Direct Link) | 2 (Popup)
41
+ * If <code>oLinkType.type</code> is 0, the link is rendered as a text.
42
+ * If <code>oLinkType.type</code> is 1, the link is rendered as a link. When pressed the link triggers a direct navigation instead.
43
+ * If <code>oLinkType.type</code> is 2, the link is rendered as a link and opens a popover (default).
44
+ * @property {sap.ui.mdc.link.LinkItem} directLink Instance of {@link sap.ui.mdc.link.LinkItem} which is used for direct navigation
45
+ */
46
+ /**
47
+ * Calculates and returns the type of link that is displayed.
48
+ * @protected
49
+ * @ui5-restricted sap.ui.mdc
50
+ * @param {Object} oPayload Payload of the <code>Link</code> given by the application
51
+ * @returns {Promise} Once resolved, an object containing an initial {@link sap.ui.mdc.LinkDelegate.LinkType} and an optional <code>Promise</code> are returned
52
+ * The optional <code>Promise</code> also returns a {@link sap.ui.mdc.LinkDelegate.LinkType} object.
53
+ * Once the optional <code>Promise</code> has been resolved, the returned {@link sap.ui.mdc.LinkDelegate.LinkType} overwrites the <code>initialType</code>.
54
+ */
55
+ LinkDelegate.fetchLinkType = function(oPayload, oLink) {
56
+ return Promise.resolve({
57
+ initialType: {
58
+ type: 2,
59
+ directLink: undefined
60
+ },
61
+ runtimeType: null
62
+ });
63
+ };
64
+
65
+ /**
66
+ * Retrieves and returns the relevant <code>additionalContent</code> for the <code>Link</code> control as an array.
67
+ * @protected
68
+ * @ui5-restricted sap.ui.mdc
69
+ * @param {Object} oPayload Payload of the <code>Link</code> control given by the application
70
+ * @param {Object} oLink Instance of the <code>Link</code> control
71
+ * @returns {Promise} Once resolved, an array of {@link sap.ui.core.Control} is returned
72
+ */
73
+ LinkDelegate.fetchAdditionalContent = function(oPayload, oLink) {
74
+ return Promise.resolve([]);
75
+ };
76
+
77
+ /**
78
+ * Enables the modification of the {@link sap.ui.mdc.link.LinkItem} instances before the popover opens. This enables additional parameters
79
+ * to be added to the link.
80
+ * @protected
81
+ * @ui5-restricted sap.ui.mdc
82
+ * @param {Object} oPayload Payload of the <code>Link</code> control given by the application
83
+ * @param {Object} oBindingContext Binding context of the <code>Link</code> control
84
+ * @param {sap.ui.mdc.link.LinkItem} aLinkItems The {@link sap.ui.mdc.link.LinkItem} instances of the link that can be modified
85
+ * @returns {Promise} Once resolved, an array of link items is returned
86
+ */
87
+ LinkDelegate.modifyLinkItems = function(oPayload, oBindingContext, aLinkItems) {
88
+ return Promise.resolve(aLinkItems);
89
+ };
90
+
91
+ /**
92
+ * Allows for interception before the actual navigation takes place.
93
+ * @protected
94
+ * @ui5-restricted sap.ui.mdc
95
+ * @param {Object} oPayload Payload of the <code>Link</code> control given by the application
96
+ * @param {Object} oEvent The <code>pressLink</code> event which is fired by the <code>Link</code> control
97
+ * @returns {Promise} Once resolved, it returns a Boolean value which determines whether the navigation takes place
98
+ */
99
+ LinkDelegate.beforeNavigationCallback = function(oPayload, oEvent) {
100
+ return Promise.resolve(true);
101
+ };
102
+
98
103
  return LinkDelegate;
99
104
  });