@openui5/sap.ui.mdc 1.97.1 → 1.100.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 (296) hide show
  1. package/.reuse/dep5 +25 -30
  2. package/THIRDPARTY.txt +15 -22
  3. package/package.json +4 -4
  4. package/src/sap/ui/mdc/.library +1 -1
  5. package/src/sap/ui/mdc/ActionToolbar.js +6 -3
  6. package/src/sap/ui/mdc/AggregationBaseDelegate.js +2 -2
  7. package/src/sap/ui/mdc/BaseDelegate.js +1 -1
  8. package/src/sap/ui/mdc/Chart.js +1128 -1806
  9. package/src/sap/ui/mdc/ChartDelegate.js +454 -250
  10. package/src/sap/ui/mdc/ChartRenderer.js +73 -77
  11. package/src/sap/ui/mdc/Control.js +11 -6
  12. package/src/sap/ui/mdc/Element.js +10 -6
  13. package/src/sap/ui/mdc/Field.js +19 -4
  14. package/src/sap/ui/mdc/FilterBar.js +3 -2
  15. package/src/sap/ui/mdc/FilterBarDelegate.js +26 -0
  16. package/src/sap/ui/mdc/FilterField.js +50 -9
  17. package/src/sap/ui/mdc/Link.js +25 -6
  18. package/src/sap/ui/mdc/LinkDelegate.js +3 -3
  19. package/src/sap/ui/mdc/MultiValueField.js +30 -6
  20. package/src/sap/ui/mdc/Table.js +151 -102
  21. package/src/sap/ui/mdc/TableDelegate.js +68 -13
  22. package/src/sap/ui/mdc/ValueHelp.js +26 -11
  23. package/src/sap/ui/mdc/ValueHelpDelegate.js +2 -1
  24. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +2 -2
  25. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer.js +1 -1
  26. package/src/sap/ui/mdc/{chartNew/ChartSelectionDetailsNew.js → chart/ChartSelectionDetails.js} +8 -8
  27. package/src/sap/ui/mdc/{chartNew/ChartToolbarNew.js → chart/ChartToolbar.js} +60 -17
  28. package/src/sap/ui/mdc/chart/ChartTypeButton.js +55 -54
  29. package/src/sap/ui/mdc/{chartNew/DrillBreadcrumbsNew.js → chart/DrillBreadcrumbs.js} +10 -10
  30. package/src/sap/ui/mdc/chart/DrillStackHandler.js +43 -254
  31. package/src/sap/ui/mdc/chart/Item.js +62 -92
  32. package/src/sap/ui/mdc/{chartNew/PropertyHelperNew.js → chart/PropertyHelper.js} +3 -3
  33. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +17 -21
  34. package/src/sap/ui/mdc/condition/Condition.js +1 -1
  35. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  36. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  37. package/src/sap/ui/mdc/condition/FilterConverter.js +4 -2
  38. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +388 -67
  39. package/src/sap/ui/mdc/condition/Operator.js +4 -2
  40. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +78 -24
  41. package/src/sap/ui/mdc/condition/RangeOperator.js +5 -5
  42. package/src/sap/ui/mdc/designtime/Util.js +63 -0
  43. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +23 -30
  44. package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +83 -5
  45. package/src/sap/ui/mdc/designtime/field/Field.designtime.js +81 -5
  46. package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +3 -0
  47. package/src/sap/ui/mdc/designtime/link/PanelItem.designtime.js +3 -1
  48. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +35 -8
  49. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  50. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  51. package/src/sap/ui/mdc/field/ConditionType.js +17 -6
  52. package/src/sap/ui/mdc/field/ConditionsType.js +2 -1
  53. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
  54. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  55. package/src/sap/ui/mdc/field/DefineConditionPanel.js +88 -29
  56. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +77 -20
  57. package/src/sap/ui/mdc/field/FieldBase.js +93 -16
  58. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +1 -1
  59. package/src/sap/ui/mdc/field/FieldBaseRenderer.js +0 -3
  60. package/src/sap/ui/mdc/field/FieldHelpBase.js +2 -2
  61. package/src/sap/ui/mdc/field/FieldInfoBase.js +24 -10
  62. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  63. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  64. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  65. package/src/sap/ui/mdc/field/FieldValueHelp.js +5 -2
  66. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  67. package/src/sap/ui/mdc/field/FieldValueHelpDelegate.js +1 -1
  68. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +5 -4
  69. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +6 -4
  70. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +6 -3
  71. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +7 -7
  72. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  73. package/src/sap/ui/mdc/field/ListFieldHelp.js +10 -2
  74. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  75. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  76. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  77. package/src/sap/ui/mdc/field/TokenDisplay.js +70 -0
  78. package/src/sap/ui/mdc/field/TokenDisplayRenderer.js +24 -0
  79. package/src/sap/ui/mdc/field/TokenizerDisplay.js +80 -0
  80. package/src/sap/ui/mdc/field/TokenizerDisplayRenderer.js +69 -0
  81. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
  82. package/src/sap/ui/mdc/field/content/ContentFactory.js +10 -6
  83. package/src/sap/ui/mdc/field/content/DateContent.js +27 -19
  84. package/src/sap/ui/mdc/field/content/DateTimeContent.js +0 -6
  85. package/src/sap/ui/mdc/field/content/DefaultContent.js +35 -13
  86. package/src/sap/ui/mdc/field/content/LinkContent.js +1 -1
  87. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +285 -208
  88. package/src/sap/ui/mdc/filterbar/FilterBarBaseRenderer.js +1 -1
  89. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +27 -2
  90. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +132 -56
  91. package/src/sap/ui/mdc/filterbar/p13n/FilterColumnLayout.js +2 -2
  92. package/src/sap/ui/mdc/filterbar/p13n/GroupContainer.js +7 -3
  93. package/src/sap/ui/mdc/filterbar/p13n/TableContainer.js +52 -14
  94. package/src/sap/ui/mdc/filterbar/vh/CollectiveSearchSelect.js +3 -1
  95. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +43 -19
  96. package/src/sap/ui/mdc/filterbar/vh/FilterContainer.js +1 -1
  97. package/src/sap/ui/mdc/flexibility/AggregateFlex.js +2 -2
  98. package/src/sap/ui/mdc/flexibility/AggregationConfigFlex.js +48 -31
  99. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +6 -4
  100. package/src/sap/ui/mdc/flexibility/ChartItemFlex.js +36 -0
  101. package/src/sap/ui/mdc/flexibility/ColumnFlex.js +1 -1
  102. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +47 -10
  103. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +4 -3
  104. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  105. package/src/sap/ui/mdc/flexibility/GroupFlex.js +1 -1
  106. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +0 -1
  107. package/src/sap/ui/mdc/flexibility/Panel.flexibility.js +9 -3
  108. package/src/sap/ui/mdc/flexibility/PropertyInfoFlex.js +27 -0
  109. package/src/sap/ui/mdc/flexibility/SortFlex.js +2 -2
  110. package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +6 -6
  111. package/src/sap/ui/mdc/library.js +54 -44
  112. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  113. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  114. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  115. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  116. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  117. package/src/sap/ui/mdc/link/Factory.js +2 -2
  118. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  119. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  120. package/src/sap/ui/mdc/link/Log.js +1 -1
  121. package/src/sap/ui/mdc/link/Panel.js +140 -177
  122. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  123. package/src/sap/ui/mdc/link/PanelListItem.js +1 -1
  124. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  125. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  126. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  127. package/src/sap/ui/mdc/messagebundle.properties +57 -2
  128. package/src/sap/ui/mdc/messagebundle_ar.properties +39 -4
  129. package/src/sap/ui/mdc/messagebundle_bg.properties +54 -19
  130. package/src/sap/ui/mdc/messagebundle_ca.properties +37 -2
  131. package/src/sap/ui/mdc/messagebundle_cs.properties +52 -17
  132. package/src/sap/ui/mdc/messagebundle_cy.properties +37 -2
  133. package/src/sap/ui/mdc/messagebundle_da.properties +44 -9
  134. package/src/sap/ui/mdc/messagebundle_de.properties +37 -2
  135. package/src/sap/ui/mdc/messagebundle_el.properties +38 -3
  136. package/src/sap/ui/mdc/messagebundle_en.properties +37 -2
  137. package/src/sap/ui/mdc/messagebundle_en_GB.properties +37 -2
  138. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +37 -2
  139. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +61 -4
  140. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +37 -2
  141. package/src/sap/ui/mdc/messagebundle_es.properties +37 -2
  142. package/src/sap/ui/mdc/messagebundle_es_MX.properties +51 -16
  143. package/src/sap/ui/mdc/messagebundle_et.properties +37 -2
  144. package/src/sap/ui/mdc/messagebundle_fi.properties +43 -8
  145. package/src/sap/ui/mdc/messagebundle_fr.properties +38 -3
  146. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +37 -2
  147. package/src/sap/ui/mdc/messagebundle_hi.properties +38 -3
  148. package/src/sap/ui/mdc/messagebundle_hr.properties +37 -2
  149. package/src/sap/ui/mdc/messagebundle_hu.properties +37 -2
  150. package/src/sap/ui/mdc/messagebundle_id.properties +37 -2
  151. package/src/sap/ui/mdc/messagebundle_it.properties +53 -18
  152. package/src/sap/ui/mdc/messagebundle_iw.properties +38 -3
  153. package/src/sap/ui/mdc/messagebundle_ja.properties +37 -2
  154. package/src/sap/ui/mdc/messagebundle_kk.properties +37 -2
  155. package/src/sap/ui/mdc/messagebundle_ko.properties +41 -6
  156. package/src/sap/ui/mdc/messagebundle_lt.properties +37 -2
  157. package/src/sap/ui/mdc/messagebundle_lv.properties +41 -6
  158. package/src/sap/ui/mdc/messagebundle_ms.properties +37 -2
  159. package/src/sap/ui/mdc/messagebundle_nl.properties +42 -7
  160. package/src/sap/ui/mdc/messagebundle_no.properties +45 -10
  161. package/src/sap/ui/mdc/messagebundle_pl.properties +38 -3
  162. package/src/sap/ui/mdc/messagebundle_pt.properties +44 -9
  163. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +37 -2
  164. package/src/sap/ui/mdc/messagebundle_ro.properties +37 -2
  165. package/src/sap/ui/mdc/messagebundle_ru.properties +37 -2
  166. package/src/sap/ui/mdc/messagebundle_sh.properties +37 -2
  167. package/src/sap/ui/mdc/messagebundle_sk.properties +37 -2
  168. package/src/sap/ui/mdc/messagebundle_sl.properties +37 -2
  169. package/src/sap/ui/mdc/messagebundle_sv.properties +39 -4
  170. package/src/sap/ui/mdc/messagebundle_th.properties +40 -5
  171. package/src/sap/ui/mdc/messagebundle_tr.properties +37 -2
  172. package/src/sap/ui/mdc/messagebundle_uk.properties +41 -6
  173. package/src/sap/ui/mdc/messagebundle_vi.properties +37 -2
  174. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +37 -2
  175. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +37 -2
  176. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +30 -15
  177. package/src/sap/ui/mdc/mixin/DelegateMixin.js +2 -142
  178. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +14 -17
  179. package/src/sap/ui/mdc/mixin/PromiseMixin.js +2 -3
  180. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +348 -0
  181. package/src/sap/ui/mdc/odata/TypeUtil.js +2 -2
  182. package/src/sap/ui/mdc/odata/v4/ChartDelegate.js +29 -483
  183. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelper.js +106 -0
  184. package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +116 -20
  185. package/src/sap/ui/mdc/odata/v4/ODataMetaModelUtil.js +2 -2
  186. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +117 -123
  187. package/src/sap/ui/mdc/odata/v4/TypeUtil.js +3 -5
  188. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +1 -1
  189. package/src/sap/ui/mdc/odata/v4/util/DelegateUtil.js +1 -1
  190. package/src/sap/ui/mdc/odata/v4/vizChart/{ChartDelegateNew.js → ChartDelegate.js} +459 -351
  191. package/src/sap/ui/mdc/p13n/AdaptationProvider.js +1 -1
  192. package/src/sap/ui/mdc/p13n/Engine.js +51 -30
  193. package/src/sap/ui/mdc/p13n/FlexUtil.js +6 -118
  194. package/src/sap/ui/mdc/p13n/P13nBuilder.js +7 -7
  195. package/src/sap/ui/mdc/p13n/PropertyHelper.js +2 -2
  196. package/src/sap/ui/mdc/p13n/StateUtil.js +24 -6
  197. package/src/sap/ui/mdc/p13n/UIManager.js +20 -19
  198. package/src/sap/ui/mdc/p13n/modification/FlexModificationHandler.js +4 -1
  199. package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +19 -12
  200. package/src/sap/ui/mdc/p13n/modules/DefaultProviderRegistry.js +1 -1
  201. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +6 -6
  202. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +49 -27
  203. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +1094 -49
  204. package/src/sap/ui/mdc/p13n/panels/FilterPanel.js +136 -0
  205. package/src/sap/ui/mdc/p13n/panels/GroupView.js +53 -28
  206. package/src/sap/ui/mdc/p13n/panels/LinkSelectionPanel.js +108 -0
  207. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +4 -7
  208. package/src/sap/ui/mdc/p13n/subcontroller/AdaptFiltersController.js +7 -7
  209. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +156 -11
  210. package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +15 -26
  211. package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +6 -5
  212. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +22 -11
  213. package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +174 -0
  214. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +12 -19
  215. package/src/sap/ui/mdc/table/Column.js +12 -12
  216. package/src/sap/ui/mdc/table/CreationRow.js +11 -11
  217. package/src/sap/ui/mdc/table/GridTableType.js +80 -33
  218. package/src/sap/ui/mdc/table/PropertyHelper.js +63 -19
  219. package/src/sap/ui/mdc/table/ResponsiveTableType.js +94 -23
  220. package/src/sap/ui/mdc/table/RowActionItem.js +119 -0
  221. package/src/sap/ui/mdc/table/RowSettings.js +45 -4
  222. package/src/sap/ui/mdc/table/TableTypeBase.js +2 -2
  223. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +2 -2
  224. package/src/sap/ui/mdc/themes/base/Chart.less +2 -0
  225. package/src/sap/ui/mdc/themes/base/FieldBase.less +0 -5
  226. package/src/sap/ui/mdc/themes/base/TokenDisplay.less +89 -0
  227. package/src/sap/ui/mdc/themes/base/TokenizerDisplay.less +90 -0
  228. package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +16 -4
  229. package/src/sap/ui/mdc/themes/base/library.source.less +2 -0
  230. package/src/sap/ui/mdc/util/Common.js +1 -1
  231. package/src/sap/ui/mdc/util/DateUtil.js +33 -8
  232. package/src/sap/ui/mdc/util/FilterUtil.js +2 -2
  233. package/src/sap/ui/mdc/util/FormatUtil.js +3 -3
  234. package/src/sap/ui/mdc/util/IdentifierUtil.js +6 -6
  235. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  236. package/src/sap/ui/mdc/util/PropertyHelper.js +243 -87
  237. package/src/sap/ui/mdc/util/TypeUtil.js +6 -5
  238. package/src/sap/ui/mdc/valuehelp/Dialog.js +11 -8
  239. package/src/sap/ui/mdc/valuehelp/Popover.js +6 -3
  240. package/src/sap/ui/mdc/valuehelp/base/Container.js +2 -1
  241. package/src/sap/ui/mdc/valuehelp/base/Content.js +2 -1
  242. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +2 -1
  243. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +5 -4
  244. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +2 -1
  245. package/src/sap/ui/mdc/valuehelp/content/Bool.js +2 -1
  246. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +4 -2
  247. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +23 -14
  248. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +46 -17
  249. package/src/sap/ui/mdc/valuehelp/content/MTable.js +48 -27
  250. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +3 -1
  251. package/test/sap/ui/mdc/testutils/opa/actions/OpenContextMenu.js +3 -3
  252. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ActionsBase.js +3 -3
  253. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ActionsViz.js +0 -0
  254. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/AssertionsBase.js +1 -1
  255. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/AssertionsViz.js +0 -0
  256. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ChartNew.js +0 -0
  257. package/test/sap/ui/mdc/testutils/opa/chart/TestObjects.js +291 -0
  258. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +7 -7
  259. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +8 -9
  260. package/test/sap/ui/mdc/testutils/opa/filterbar/Util.js +12 -11
  261. package/test/sap/ui/mdc/testutils/opa/link/Actions.js +85 -0
  262. package/test/sap/ui/mdc/testutils/opa/link/Assertions.js +79 -0
  263. package/test/sap/ui/mdc/testutils/opa/link/TestObjects.js +112 -0
  264. package/test/sap/ui/mdc/testutils/opa/link/waitForLink.js +50 -0
  265. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +264 -139
  266. package/test/sap/ui/mdc/testutils/opa/p13n/Util.js +27 -26
  267. package/test/sap/ui/mdc/testutils/opa/valueHelp/Actions.js +54 -0
  268. package/test/sap/ui/mdc/testutils/opa/valueHelp/Assertions.js +5 -0
  269. package/test/sap/ui/mdc/testutils/opa/valueHelp/TestObjects.js +40 -0
  270. package/test/sap/ui/mdc/testutils/opa/valueHelp/Util.js +28 -0
  271. package/src/sap/ui/mdc/ChartDelegateNew.js +0 -395
  272. package/src/sap/ui/mdc/ChartNew.js +0 -1114
  273. package/src/sap/ui/mdc/ChartNewRenderer.js +0 -91
  274. package/src/sap/ui/mdc/chart/DimensionItem.js +0 -281
  275. package/src/sap/ui/mdc/chart/MeasureItem.js +0 -318
  276. package/src/sap/ui/mdc/chart/MetadataDelegate.js +0 -31
  277. package/src/sap/ui/mdc/chart/SelectionHandler.js +0 -127
  278. package/src/sap/ui/mdc/chart/ToolbarHandler.js +0 -328
  279. package/src/sap/ui/mdc/chartNew/ChartTypeButtonNew.js +0 -295
  280. package/src/sap/ui/mdc/chartNew/DrillStackHandlerNew.js +0 -212
  281. package/src/sap/ui/mdc/chartNew/ItemNew.js +0 -72
  282. package/src/sap/ui/mdc/chartNew/SelectionDetailsActionsNew.js +0 -34
  283. package/src/sap/ui/mdc/designtime/chart/ChartNew.designtime.js +0 -91
  284. package/src/sap/ui/mdc/filterbar/vh/GenericFilterBarDelegate.js +0 -150
  285. package/src/sap/ui/mdc/link/SelectionDialog.control.xml +0 -66
  286. package/src/sap/ui/mdc/link/SelectionDialog.js +0 -213
  287. package/src/sap/ui/mdc/link/SelectionDialogItem.js +0 -86
  288. package/src/sap/ui/mdc/odata/v4/ChartDelegateNew.js +0 -35
  289. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelperNew.js +0 -39
  290. package/src/sap/ui/mdc/p13n/panels/BasePanel.js +0 -721
  291. package/src/sap/ui/mdc/p13n/panels/ChartItemPanelNew.js +0 -1179
  292. package/src/sap/ui/mdc/p13n/panels/ListView.js +0 -404
  293. package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +0 -92
  294. package/src/sap/ui/mdc/p13n/panels/SortPanel.js +0 -150
  295. package/src/sap/ui/mdc/ui/Container.js +0 -240
  296. package/src/sap/ui/mdc/ui/ContainerItem.js +0 -79
@@ -0,0 +1,112 @@
1
+ /*!
2
+ * ${copyright}
3
+ */
4
+ sap.ui.define([
5
+ "sap/ui/test/Opa5",
6
+ "./Actions",
7
+ "./Assertions",
8
+ "../p13n/Actions",
9
+ "./waitForLink"
10
+ ], function(
11
+ Opa5,
12
+ linkActions,
13
+ linkAssertions,
14
+ p13nActions,
15
+ waitForLink
16
+ ) {
17
+ "use strict";
18
+
19
+ Opa5.createPageObjects({
20
+ onTheMDCLink: {
21
+ actions: {
22
+ /**
23
+ * Object to identify a <code>sap.ui.mdc.Link</code>. Should contain at least one of the following properties: <code>text</code> and <code>id</code>.
24
+ * @typedef {object} LinkIdentifier
25
+ * @property {string} id ID of a given <code>sap.m.Link</code> that represents the <code>sap.ui.mdc.Link</code>
26
+ * @property {string} text Text of a given <code>sap.m.Link</code> that represents the <code>sap.ui.mdc.Link</code>
27
+ */
28
+ /**
29
+ * Opa5 test action
30
+ * @param {LinkIdentifier} oLinkIdentifier The object to identify the <code>sap.ui.mdc.Link</code>
31
+ * @param {string[]} aLinks Array containing the texts of the links that are the result of the personalization
32
+ * @returns {Promise} OPA waitFor
33
+ * 1. Opens the personalization dialog of a given <code>sap.ui.mdc.Link</code>.
34
+ * 2. Selects all links given by <code>aLinks</code> and deselects all other links.
35
+ * 3. Closes the personalization dialog.
36
+ */
37
+ iPersonalizeTheLinks: function(oLinkIdentifier, aLinks) {
38
+ return waitForLink.call(this, oLinkIdentifier, {
39
+ success: function(oLink) {
40
+ p13nActions.iPersonalizeLink.call(this, oLink, aLinks);
41
+ }
42
+ });
43
+ },
44
+ /**
45
+ * Opa5 test action
46
+ * @param {LinkIdentifier} oLinkIdentifier The object to identify the <code>sap.ui.mdc.Link</code> that is reset
47
+ * @returns {Promise} OPA waitFor
48
+ * 1. Opens the personalization dialog of a given <code>sap.ui.mdc.Link</code>.
49
+ * 2. Presses the Reset personalization button.
50
+ * 3. Confirms the Reset dialog.
51
+ * 4. Closes the personalization dialog.
52
+ */
53
+ iResetThePersonalization: function(oLinkIdentifier) {
54
+ return waitForLink.call(this, oLinkIdentifier, {
55
+ success: function(oLink) {
56
+ p13nActions.iResetThePersonalization.call(this, oLink);
57
+ }
58
+ });
59
+ },
60
+ /**
61
+ * Opa5 test action
62
+ * @param {LinkIdentifier} oLinkIdentifier The object to identify the <code>sap.ui.mdc.Link</code> that is pressed
63
+ * @returns {Promise} OPA waitFor
64
+ */
65
+ iPressTheLink: function(oLinkIdentifier) {
66
+ return linkActions.iPressTheLink.call(this, oLinkIdentifier);
67
+ },
68
+ /**
69
+ * Opa5 test action
70
+ * @param {LinkIdentifier} oLinkIdentifier The object to identify the <code>sap.ui.mdc.Link</code> that opens the popover
71
+ * @param {string} sLink The text of the link that is to be clicked on the popover
72
+ * @returns {Promise} OPA waitFor
73
+ * 1. Presses a given <code>sap.ui.mdc.Link</code> to open its popover.
74
+ * 2. Presses a link on the opened popover defined by <code>sLink</code>.
75
+ */
76
+ iPressLinkOnPopover: function(oLinkIdentifier, sLink) {
77
+ return linkActions.iPressLinkOnPopover.call(this, oLinkIdentifier, sLink);
78
+ },
79
+ /**
80
+ * Opa5 test action
81
+ * @returns {Promise} OPA waitFor
82
+ * Closes an open popover of the <code>sap.ui.mdc.Link</code>.
83
+ */
84
+ iCloseThePopover: function() {
85
+ return linkActions.iCloseThePopover.call(this);
86
+ }
87
+ },
88
+ assertions: {
89
+ /**
90
+ * Opa5 test action
91
+ * @param {LinkIdentifier} oLinkIdentifier The object to identify the <code>sap.ui.mdc.Link</code> that opens the popover
92
+ * @returns {Promise} OPA waitFor
93
+ * Creates an assumption that there is an open popover for a given <code>sap.ui.mdc.Link</code>.
94
+ */
95
+ iShouldSeeAPopover: function(oLinkIdentifier) {
96
+ return linkAssertions.iShouldSeeAPopover.call(this, oLinkIdentifier);
97
+ },
98
+ /**
99
+ * Opa5 test action
100
+ * @param {LinkIdentifier} oLinkIdentifier The object to identify the <code>sap.ui.mdc.Link</code> that opens the popover
101
+ * @param {string[]} aLinks Array containing the texts of the links that are visible on the popover
102
+ * @returns {Promise} OPA waitFor
103
+ * Creates an assumption that there is an open popover for a given <code>sap.ui.mdc.Link</code> and checks that all given links defined in <code>aLinks</code> are on that popover in a defined order.
104
+ */
105
+ iShouldSeeLinksOnPopover: function(oLinkIdentifier, aLinks) {
106
+ return linkAssertions.iShouldSeeLinksOnPopover.call(this, oLinkIdentifier, aLinks);
107
+ }
108
+ }
109
+ }
110
+ });
111
+
112
+ });
@@ -0,0 +1,50 @@
1
+ /*!
2
+ * ${copyright}
3
+ */
4
+ sap.ui.define([
5
+ "sap/ui/test/Opa5",
6
+ "sap/ui/test/matchers/PropertyStrictEquals"
7
+ ], function(
8
+ Opa5,
9
+ PropertyStrictEquals
10
+ ) {
11
+ "use strict";
12
+
13
+ return function waitForLink(oLinkIdentifier, oSettings) {
14
+ var sText = oLinkIdentifier.text;
15
+ var sId = oLinkIdentifier.id;
16
+ Opa5.assert.ok(sText || sId, "LinkIdentifier correct Text: '" + sText + "' - ID: '" + sId + "'");
17
+ var fnCallSuccess = function(oLink) {
18
+ if (typeof oSettings.success === "function") {
19
+ oSettings.success.call(this, oLink);
20
+ }
21
+ };
22
+
23
+ var oOpaSettings = {
24
+ controlType: "sap.m.Link",
25
+ actions: oSettings.actions
26
+ };
27
+
28
+ if (sText) {
29
+ oOpaSettings.matchers = new PropertyStrictEquals({
30
+ name: "text",
31
+ value: sText
32
+ });
33
+ }
34
+
35
+ if (sId) {
36
+ oOpaSettings.id = sId;
37
+ oOpaSettings.success = function(oLinkControl) {
38
+ Opa5.assert.ok(oLinkControl, "sap.ui.mdc.Link found");
39
+ fnCallSuccess.call(this, oLinkControl);
40
+ };
41
+ } else {
42
+ oOpaSettings.success = function(aLinkControls) {
43
+ Opa5.assert.equal(aLinkControls.length, 1, "sap.ui.mdc.Link found");
44
+ fnCallSuccess.call(this, aLinkControls[0]);
45
+ };
46
+ }
47
+
48
+ return this.waitFor(oOpaSettings);
49
+ };
50
+ });
@@ -16,7 +16,9 @@ sap.ui.define([
16
16
  "./waitForSelectWithSelectedTextOnPanel",
17
17
  "./Util",
18
18
  "sap/base/Log",
19
- "sap/base/util/UriParameters"
19
+ "sap/base/util/UriParameters",
20
+ "sap/ui/core/Core",
21
+ "sap/ui/Device"
20
22
  ], function(
21
23
  Opa5,
22
24
  Matcher,
@@ -31,11 +33,13 @@ sap.ui.define([
31
33
  waitForSelectWithSelectedTextOnPanel,
32
34
  Util,
33
35
  Log,
34
- UriParameters
36
+ UriParameters,
37
+ oCore,
38
+ Device
35
39
  ) {
36
40
  "use strict";
37
41
 
38
- var oMDCBundle = sap.ui.getCore().getLibraryResourceBundle("sap.ui.mdc");
42
+ var oMDCBundle = oCore.getLibraryResourceBundle("sap.ui.mdc");
39
43
 
40
44
  var iOpenThePersonalizationDialog = function(oControl, oSettings) {
41
45
  var sControlId = typeof oControl === "string" ? oControl : oControl.getId();
@@ -46,51 +50,88 @@ sap.ui.define([
46
50
  success: function(oControlInstance) {
47
51
  Opa5.assert.ok(oControlInstance);
48
52
 
49
- aButtonMatchers.push(new Ancestor(oControlInstance));
53
+ if (oControlInstance.isA("sap.m.Link")) {
54
+ // mdc.Link handling
50
55
 
51
- if (oControlInstance.isA("sap.ui.comp.smartchart.SmartChart")) {
52
- aDialogMatchers.push(function(oP13nDialog) {
53
- return oP13nDialog.getParent().getChart() === oControlInstance.getChart().getId();
56
+ new Press().executeOn(oControlInstance);
57
+ this.waitFor({
58
+ controlType: "sap.ui.mdc.link.Panel",
59
+ success: function(aPanels) {
60
+ Opa5.assert.equal(aPanels.length, 1, "mdc.link.Panel found");
61
+ var oPanel = aPanels[0];
62
+
63
+ waitForP13nButtonWithMatchers.call(this, {
64
+ actions: new Press(),
65
+ matchers: [
66
+ new Ancestor(oPanel, false),
67
+ new PropertyStrictEquals({
68
+ name: "text",
69
+ value: oMDCBundle.getText("info.POPOVER_DEFINE_LINKS")
70
+ })
71
+ ],
72
+ success: function() {
73
+ waitForP13nDialog.call(this, {
74
+ matchers: new PropertyStrictEquals({
75
+ name: "title",
76
+ value: oMDCBundle.getText("info.SELECTION_DIALOG_ALIGNEDTITLE")
77
+ }),
78
+ success: function(oP13nDialog) {
79
+ if (oSettings && typeof oSettings.success === "function") {
80
+ oSettings.success.call(this, oP13nDialog);
81
+ }
82
+ }
83
+ });
84
+ }
85
+ });
86
+ }
54
87
  });
55
88
  } else {
56
- aDialogMatchers.push(new Ancestor(oControlInstance, false));
57
- }
89
+ aButtonMatchers.push(new Ancestor(oControlInstance));
58
90
 
59
- if (oControlInstance.isA("sap.ui.mdc.FilterBar")) {
60
- // Add matcher for p13n button text
61
- var oMatcher = new Matcher();
62
- oMatcher.isMatching = function(oButton) {
63
- return oButton.getText().includes(oMDCBundle.getText("filterbar.ADAPT"));
64
- };
65
- aButtonMatchers.push(oMatcher);
66
- aDialogMatchers.push(new Properties({
67
- title: oMDCBundle.getText("filterbar.ADAPT_TITLE")
68
- }));
69
- } else {
70
- // Add matcher for p13n button icon
71
- aButtonMatchers.push(new Properties({
72
- icon: Util.icons.settings
73
- }));
74
- aDialogMatchers.push(new Properties({
75
- title: oMDCBundle.getText("p13nDialog.VIEW_SETTINGS")
76
- }));
77
- }
91
+ if (oControlInstance.isA("sap.ui.comp.smartchart.SmartChart")) {
92
+ aDialogMatchers.push(function(oP13nDialog) {
93
+ return oP13nDialog.getParent().getChart() === oControlInstance.getChart().getId();
94
+ });
95
+ } else {
96
+ aDialogMatchers.push(new Ancestor(oControlInstance, false));
97
+ }
78
98
 
79
- waitForP13nButtonWithMatchers.call(this, {
80
- actions: new Press(),
81
- matchers: aButtonMatchers,
82
- success: function() {
83
- waitForP13nDialog.call(this, {
84
- matchers: aDialogMatchers,
85
- success: function(oP13nDialog) {
86
- if (oSettings && typeof oSettings.success === "function") {
87
- oSettings.success.call(this, oP13nDialog);
99
+ if (oControlInstance.isA("sap.ui.mdc.FilterBar")) {
100
+ // Add matcher for p13n button text
101
+ var oMatcher = new Matcher();
102
+ oMatcher.isMatching = function(oButton) {
103
+ return oButton.getText().includes(oMDCBundle.getText("filterbar.ADAPT"));
104
+ };
105
+ aButtonMatchers.push(oMatcher);
106
+ aDialogMatchers.push(new Properties({
107
+ title: oMDCBundle.getText("filterbar.ADAPT_TITLE")
108
+ }));
109
+ } else {
110
+ // Add matcher for p13n button icon
111
+ aButtonMatchers.push(new Properties({
112
+ icon: Util.icons.settings
113
+ }));
114
+ aDialogMatchers.push(new Properties({
115
+ title: oMDCBundle.getText("p13nDialog.VIEW_SETTINGS")
116
+ }));
117
+ }
118
+
119
+ waitForP13nButtonWithMatchers.call(this, {
120
+ actions: new Press(),
121
+ matchers: aButtonMatchers,
122
+ success: function() {
123
+ waitForP13nDialog.call(this, {
124
+ matchers: aDialogMatchers,
125
+ success: function(oP13nDialog) {
126
+ if (oSettings && typeof oSettings.success === "function") {
127
+ oSettings.success.call(this, oP13nDialog);
128
+ }
88
129
  }
89
- }
90
- });
91
- },
92
- errorMessage: "Control '" + sControlId + "' has no P13n button"
93
- });
130
+ });
131
+ },
132
+ errorMessage: "Control '" + sControlId + "' has no P13n button"
133
+ });
134
+ }
94
135
  },
95
136
  errorMessage: "Control '" + sControlId + "' not found."
96
137
  });
@@ -456,7 +497,7 @@ sap.ui.define([
456
497
 
457
498
  var iPersonalizeListViewItems = function(oP13nDialog, aItems) {
458
499
  this.waitFor({
459
- controlType: oP13nDialog.getContent()[0].getView("columns") && oP13nDialog.getContent()[0].getView("columns").getContent().isA("sap.ui.mdc.p13n.panels.ListView") ? "sap.ui.mdc.p13n.panels.ListView" : "sap.m.p13n.SelectionPanel",
500
+ controlType: oP13nDialog.getContent()[0].getView("columns") && oP13nDialog.getContent()[0].getView("columns").getContent().isA("sap.m.p13n.SelectionPanel") ? "sap.m.p13n.SelectionPanel" : "sap.m.p13n.SelectionPanel",
460
501
  matchers: new Ancestor(oP13nDialog, false),
461
502
  success: function(aListViews) {
462
503
  var oListView = aListViews[0];
@@ -611,21 +652,111 @@ sap.ui.define([
611
652
  });
612
653
  };
613
654
 
614
- return {
655
+ var iPersonalizeOldChartP13n = function(oControl, sChartType, aItems, oP13nDialog) {
656
+ this.waitFor({
657
+ controlType: "sap.m.P13nDimMeasurePanel",
658
+ matchers: new Ancestor(oP13nDialog, false),
659
+ success: function(aP13nDimMeasurePanels) {
660
+ var oP13nDimMeasurePanel = aP13nDimMeasurePanels[0];
661
+ this.waitFor({
662
+ controlType: "sap.m.OverflowToolbar",
663
+ matchers: new Ancestor(oP13nDimMeasurePanel, false),
664
+ success: function(aOverflowToolbars) {
665
+ var oOverflowToolbar = aOverflowToolbars[0];
666
+ this.waitFor({
667
+ controlType: "sap.m.ComboBox",
668
+ matchers: new Ancestor(oOverflowToolbar),
669
+ success: function(aComboBoxes) {
670
+ var oComboBox = aComboBoxes[0];
671
+ iChangeComboBoxSelection.call(this, oComboBox, sChartType, {
672
+ success: function() {
673
+ this.waitFor({
674
+ controlType: "sap.m.ColumnListItem",
675
+ matchers: [
676
+ new Ancestor(oP13nDialog, false)
677
+ ],
678
+ actions: function(oColumnListItem) {
679
+ this.waitFor({
680
+ controlType: "sap.m.Text",
681
+ matchers: new Ancestor(oColumnListItem),
682
+ success: function(aTexts) {
683
+ var oText = aTexts[0];
684
+ var oItem = aItems.find(function(oItem) {
685
+ return oText.getText() === oItem.key;
686
+ });
687
+ var bItemIsPresent = !!oItem;
688
+
689
+ this.waitFor({
690
+ controlType: "sap.m.CheckBox",
691
+ matchers: new Ancestor(oColumnListItem),
692
+ actions: function(oCheckBox) {
693
+ if ((!oCheckBox.getSelected() && bItemIsPresent) ||
694
+ (oCheckBox.getSelected() && !bItemIsPresent)) {
695
+ new Press().executeOn(oCheckBox);
696
+ }
697
+ },
698
+ success: function() {
699
+ if (bItemIsPresent) {
700
+ this.waitFor({
701
+ controlType: "sap.m.Select",
702
+ matchers: new Ancestor(oColumnListItem),
703
+ actions: function(oSelect) {
704
+ iChangeSelectSelection.call(this, oSelect, oItem.role);
705
+ }.bind(this)
706
+ });
707
+ }
708
+ }
709
+ });
710
+ }
711
+ });
712
+ }.bind(this),
713
+ success: function() {
714
+ iPressTheOKButtonOnTheDialog.call(this,oP13nDialog);
715
+ }
716
+ });
717
+ }
718
+ });
719
+ }
720
+ });
721
+ }
722
+ });
723
+ }
724
+ });
725
+ };
726
+
727
+ return {
615
728
  iPressTheOKButtonOnTheDialog: function(oDialog, oSettings) {
616
729
  return iPressTheOKButtonOnTheDialog.call(this, oDialog, oSettings);
617
730
  },
618
731
  iOpenThePersonalizationDialog: function(oControl, oSettings) {
619
732
  return iOpenThePersonalizationDialog.call(this, oControl, oSettings);
620
733
  },
734
+ /**
735
+ * @typedef {object} ChartPersonalizationConfiguration
736
+ * @property {string} key Key of the value that is the result of the personalization
737
+ * @property {string} role Role of the given value
738
+ */
739
+ /**
740
+ * OPA5 test action
741
+ * 1. Opens the personalization dialog of a given chart.
742
+ * 2. Selects a chart type given by <code>sChartType</code>.
743
+ * 3. Executes the given <code>ChartPersonalizationConfiguration</code>.
744
+ * 4. Closes the personalization dialog.
745
+ * @param {sap.ui.core.Control | string} oControl Instance / ID of the <code>SmartChart</code> that is personalized
746
+ * @param {string} sChartType String containing the type of chart that is displayed
747
+ * @param {ChartPersonalizationConfiguration[]} aItems Array containing the chart personalization configuration objects
748
+ * @returns {Promise} OPA waitFor
749
+ */
621
750
  iPersonalizeChart: function(oControl, sChartType, aItems) {
622
751
  return iPersonalize.call(this, oControl, Util.texts.chart, {
623
752
  success: function(oP13nDialog) {
624
753
 
625
- if (UriParameters.fromQuery(window.location.search).get("newChartP13n") === "true") {
626
-
754
+ //oP13nDialog.getContent()[0].getView("item") && oP13nDialog.getContent()[0].getView("item").getContent().isA("sap.m.p13n.SelectionPanel")
755
+ if (oP13nDialog.getContent()[0].getView("dimeasure").getContent().isA("sap.m.P13nDimMeasurePanel")){
756
+ iPersonalizeOldChartP13n.call(this, oControl, sChartType, aItems, oP13nDialog);
757
+ } else {
627
758
  this.waitFor({
628
- controlType: "sap.ui.mdc.p13n.panels.ChartItemPanelNew",
759
+ controlType: "sap.ui.mdc.p13n.panels.ChartItemPanel",
629
760
  matchers: new Ancestor(oP13nDialog, false),
630
761
  success: function(aItemPanels) {
631
762
  //This is done in 3 steps
@@ -768,84 +899,17 @@ sap.ui.define([
768
899
  });
769
900
  }
770
901
  });
771
- } else {
772
- this.waitFor({
773
- controlType: "sap.m.P13nDimMeasurePanel",
774
- matchers: new Ancestor(oP13nDialog, false),
775
- success: function(aP13nDimMeasurePanels) {
776
- var oP13nDimMeasurePanel = aP13nDimMeasurePanels[0];
777
- this.waitFor({
778
- controlType: "sap.m.OverflowToolbar",
779
- matchers: new Ancestor(oP13nDimMeasurePanel, false),
780
- success: function(aOverflowToolbars) {
781
- var oOverflowToolbar = aOverflowToolbars[0];
782
- this.waitFor({
783
- controlType: "sap.m.ComboBox",
784
- matchers: new Ancestor(oOverflowToolbar),
785
- success: function(aComboBoxes) {
786
- var oComboBox = aComboBoxes[0];
787
- iChangeComboBoxSelection.call(this, oComboBox, sChartType, {
788
- success: function() {
789
- this.waitFor({
790
- controlType: "sap.m.ColumnListItem",
791
- matchers: [
792
- new Ancestor(oP13nDialog, false)
793
- ],
794
- actions: function(oColumnListItem) {
795
- this.waitFor({
796
- controlType: "sap.m.Text",
797
- matchers: new Ancestor(oColumnListItem),
798
- success: function(aTexts) {
799
- var oText = aTexts[0];
800
- var oItem = aItems.find(function(oItem) {
801
- return oText.getText() === oItem.key;
802
- });
803
- var bItemIsPresent = !!oItem;
804
-
805
- this.waitFor({
806
- controlType: "sap.m.CheckBox",
807
- matchers: new Ancestor(oColumnListItem),
808
- actions: function(oCheckBox) {
809
- if ((!oCheckBox.getSelected() && bItemIsPresent) ||
810
- (oCheckBox.getSelected() && !bItemIsPresent)) {
811
- new Press().executeOn(oCheckBox);
812
- }
813
- },
814
- success: function() {
815
- if (bItemIsPresent) {
816
- this.waitFor({
817
- controlType: "sap.m.Select",
818
- matchers: new Ancestor(oColumnListItem),
819
- actions: function(oSelect) {
820
- iChangeSelectSelection.call(this, oSelect, oItem.role);
821
- }.bind(this)
822
- });
823
- }
824
- }
825
- });
826
- }
827
- });
828
- }.bind(this),
829
- success: function() {
830
- iPressTheOKButtonOnTheDialog.call(this,oP13nDialog);
831
- }
832
- });
833
- }
834
- });
835
- }
836
- });
837
- }
838
- });
839
- }
840
- });
841
902
  }
842
903
  }
843
904
  });
844
905
  },
845
906
  /**
846
- *
907
+ * OPA5 test action
908
+ * 1. Opens the personalization dialog of a given table.
909
+ * 2. Selects all columns determined by the given labels. Also deselects all other columns that are selected but not included in the given labels.
910
+ * 3. Closes the personalization dialog.
847
911
  * @param {sap.ui.core.Control | string} oControl Instance / ID of the control which is to be personalized
848
- * @param {string[]} aColumns Array containing the keys of the columns that should be result of the personalisation
912
+ * @param {string[]} aColumns Array containing the labels of the columns that are the result of the personalization
849
913
  * @returns {Promise} Opa waitFor
850
914
  */
851
915
  iPersonalizeColumns: function(oControl, aColumns) {
@@ -907,18 +971,68 @@ sap.ui.define([
907
971
  }
908
972
  });
909
973
  },
974
+ /**
975
+ * @param {sap.ui.core.Control | string} oControl Instance / ID of the control which is to be personalized
976
+ * @param {string[]} aLinks an array containing the names of the links that should be result of the personalisation
977
+ * @returns {Promise} Opa waitFor
978
+ */
979
+ iPersonalizeLink: function(oControl, aLinks) {
980
+ return iOpenThePersonalizationDialog.call(this, oControl, {
981
+ success: function(oP13nDialog) {
982
+ this.waitFor({
983
+ controlType: "sap.ui.mdc.p13n.panels.LinkSelectionPanel",
984
+ matchers: new Ancestor(oP13nDialog, false),
985
+ success: function(aLinkSelectionPanels) {
986
+ Opa5.assert.equal(aLinkSelectionPanels.length, 1, "sap.ui.mdc.p13n.panels.LinkSelectionPanel found");
987
+ var oLinkSelectionPanel = aLinkSelectionPanels[0];
988
+ this.waitFor({
989
+ controlType: "sap.m.ColumnListItem",
990
+ matchers: new Ancestor(oLinkSelectionPanel, false),
991
+ actions: function(oColumnListItem) {
992
+ this.waitFor({
993
+ controlType: "sap.m.Link",
994
+ matchers: new Ancestor(oColumnListItem, false),
995
+ success: function(aLinkControls) {
996
+ var oLinkControl = aLinkControls[0];
997
+ this.waitFor({
998
+ controlType: "sap.m.CheckBox",
999
+ matchers: [
1000
+ new Ancestor(oColumnListItem, false)
1001
+ ],
1002
+ actions: function(oCheckBox) {
1003
+ if ((!oCheckBox.getSelected() && aLinks.includes(oLinkControl.getText())) ||
1004
+ (oCheckBox.getSelected() && !aLinks.includes(oLinkControl.getText()))) {
1005
+ new Press().executeOn(oCheckBox);
1006
+ }
1007
+ }
1008
+ });
1009
+ }
1010
+ });
1011
+ }.bind(this),
1012
+ success: function() {
1013
+ iPressTheOKButtonOnTheDialog.call(this, oP13nDialog);
1014
+ }
1015
+ });
1016
+ }
1017
+ });
1018
+ }
1019
+ });
1020
+ },
910
1021
  /**
911
1022
  * @typedef {object} FilterPersonalizationConfiguration
912
- * @property {string} key of the item that should be result of the personalisation
913
- * @property {string} operator operator in which the items should be filtered
914
- * @property {string[]} values filter values for the given operator
915
- * @property {string} inputControl
1023
+ * @property {string} key Key of the value that is the result of the personalization
1024
+ * @property {string} operator Operator defining how the items are filtered
1025
+ * @property {string[]} values Filter values for the given operator
1026
+ * @property {string} inputControl <code>Control</code> that is used as input for the value
916
1027
  */
917
1028
  /**
918
- *
919
- * @param {sap.ui.core.Control | string} oControl Instance / ID of the control which is to be reset
920
- * @param {FilterPersonalizationConfiguration[]} aConfigurations an array containing the group personalization configuration objects
921
- * @returns {Promise} Opa waitFor
1029
+ * OPA5 test action
1030
+ * 1. Opens the personalization dialog of a given chart.
1031
+ * 2. Executes the given <code>FilterPersonalizationConfiguration</code>.
1032
+ * 3. Closes the personalization dialog.
1033
+ * @param {sap.ui.core.Control | string} oControl Instance / ID of the <code>Control</code> that is filtered
1034
+ * @param {FilterPersonalizationConfiguration[]} aConfigurations Array containing the filter personalization configuration objects
1035
+ * @returns {Promise} OPA waitFor
922
1036
  */
923
1037
  iPersonalizeFilter: function(oControl, aConfigurations) {
924
1038
  return iPersonalize.call(this, oControl, Util.texts.filter, {
@@ -965,11 +1079,14 @@ sap.ui.define([
965
1079
  },
966
1080
  /**
967
1081
  * @typedef {object} GroupPersonalizationConfiguration
968
- * @property {string} key of the item that should be result of the personalisation
969
- * @property {boolean} showFieldAsColumn determinating if the "Show Field as Column" checkbox should be checked
1082
+ * @property {string} key of the item that is the result of the personalization
1083
+ * @property {boolean} showFieldAsColumn Determines if the "Show Field as Column" checkbox is to be checked
970
1084
  */
971
1085
  /**
972
- *
1086
+ * Opa5 test action:
1087
+ * 1. Opens the personalization dialog of a given control.
1088
+ * 2. Executes the given <code>GroupPersonalizationConfiguration</code>.
1089
+ * 3. Closes the personalization dialog.
973
1090
  * @param {sap.ui.core.Control | string} oControl Instance / ID of the control which is to be reset
974
1091
  * @param {GroupPersonalizationConfiguration[]} aConfigurations an array containing the group personalization configuration objects
975
1092
  * @returns {Promise} Opa waitFor
@@ -1007,14 +1124,17 @@ sap.ui.define([
1007
1124
  },
1008
1125
  /**
1009
1126
  * @typedef {object} SortPersonalizationConfiguration
1010
- * @property {string} key of the item that should be result of the personalisation
1011
- * @property {boolean} descending determinating if the sort direction is descending
1127
+ * @property {string} key Key of the item that is the result of the personalization
1128
+ * @property {boolean} descending Determines whether the sort direction is descending
1012
1129
  */
1013
1130
  /**
1014
- *
1015
- * @param {sap.ui.core.Control | string} oControl Instance / ID of the control which is to be reset
1016
- * @param {SortPersonalizationConfiguration[]} aConfigurations an array containing the sort personalization configuration objects
1017
- * @returns {Promise} Opa waitFor
1131
+ * OPA5 test action
1132
+ * 1. Opens the personalization dialog of a given chart.
1133
+ * 2. Executes the given <code>SortPersonalizationConfiguration</code>.
1134
+ * 3. Closes the personalization dialog.
1135
+ * @param {sap.ui.core.Control | string} oControl Instance / ID of the <code>Control</code> that is sorted
1136
+ * @param {SortPersonalizationConfiguration[]} aConfigurations Array containing the sort personalization configuration objects
1137
+ * @returns {Promise} OPA waitFor
1018
1138
  */
1019
1139
  iPersonalizeSort: function(oControl, aConfigurations) {
1020
1140
  return iPersonalize.call(this, oControl, Util.texts.sort, {
@@ -1048,8 +1168,13 @@ sap.ui.define([
1048
1168
  });
1049
1169
  },
1050
1170
  /**
1051
- * @param {sap.ui.core.Control | string} oControl Instance / ID of the control which is to be reset
1052
- * @returns {Promise} Opa waitFor
1171
+ * Opa5 test action
1172
+ * 1. Opens the personalization dialog of a given chart.
1173
+ * 2. Presses the reset personalization button.
1174
+ * 3. Confirms the reset dialog.
1175
+ * 4. Closes the personalization dialog.
1176
+ * @param {sap.ui.core.Control | string} oControl Instance / ID of the <code>Control</code> that is reset
1177
+ * @returns {Promise} OPA waitFor
1053
1178
  */
1054
1179
  iResetThePersonalization: function (oControl) {
1055
1180
  return iOpenThePersonalizationDialog.call(this, oControl, {
@@ -1070,5 +1195,5 @@ sap.ui.define([
1070
1195
  }
1071
1196
  });
1072
1197
  }
1073
- };
1198
+ };
1074
1199
  });