@openui5/sap.ui.mdc 1.98.0 → 1.101.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 (267) hide show
  1. package/THIRDPARTY.txt +6 -6
  2. package/package.json +4 -4
  3. package/src/sap/ui/mdc/.library +1 -1
  4. package/src/sap/ui/mdc/ActionToolbar.js +6 -3
  5. package/src/sap/ui/mdc/AggregationBaseDelegate.js +1 -1
  6. package/src/sap/ui/mdc/Chart.js +186 -102
  7. package/src/sap/ui/mdc/ChartDelegate.js +85 -30
  8. package/src/sap/ui/mdc/ChartRenderer.js +1 -1
  9. package/src/sap/ui/mdc/Control.js +11 -6
  10. package/src/sap/ui/mdc/Element.js +10 -6
  11. package/src/sap/ui/mdc/Field.js +19 -4
  12. package/src/sap/ui/mdc/FilterBar.js +1 -1
  13. package/src/sap/ui/mdc/FilterBarDelegate.js +26 -0
  14. package/src/sap/ui/mdc/FilterField.js +41 -3
  15. package/src/sap/ui/mdc/Link.js +22 -4
  16. package/src/sap/ui/mdc/LinkDelegate.js +9 -7
  17. package/src/sap/ui/mdc/MultiValueField.js +30 -6
  18. package/src/sap/ui/mdc/Table.js +332 -316
  19. package/src/sap/ui/mdc/TableDelegate.js +146 -31
  20. package/src/sap/ui/mdc/ValueHelp.js +136 -624
  21. package/src/sap/ui/mdc/ValueHelpDelegate.js +154 -7
  22. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +2 -2
  23. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer.js +1 -1
  24. package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +1 -1
  25. package/src/sap/ui/mdc/chart/ChartToolbar.js +56 -11
  26. package/src/sap/ui/mdc/chart/ChartTypeButton.js +24 -10
  27. package/src/sap/ui/mdc/chart/DrillBreadcrumbs.js +9 -7
  28. package/src/sap/ui/mdc/chart/DrillStackHandler.js +6 -6
  29. package/src/sap/ui/mdc/chart/PropertyHelper.js +1 -1
  30. package/src/sap/ui/mdc/condition/Condition.js +14 -9
  31. package/src/sap/ui/mdc/condition/ConditionConverter.js +58 -6
  32. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  33. package/src/sap/ui/mdc/condition/FilterConverter.js +4 -2
  34. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +393 -68
  35. package/src/sap/ui/mdc/condition/Operator.js +14 -2
  36. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +78 -24
  37. package/src/sap/ui/mdc/condition/RangeOperator.js +5 -5
  38. package/src/sap/ui/mdc/designtime/Util.js +63 -0
  39. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +23 -30
  40. package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +6 -0
  41. package/src/sap/ui/mdc/designtime/filterbar/FilterBar.designtime.js +3 -1
  42. package/src/sap/ui/mdc/designtime/link/PanelItem.designtime.js +3 -1
  43. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +36 -9
  44. package/src/sap/ui/mdc/enum/PropagationReason.js +43 -0
  45. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  46. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  47. package/src/sap/ui/mdc/field/ConditionType.js +44 -13
  48. package/src/sap/ui/mdc/field/ConditionsType.js +3 -1
  49. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
  50. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  51. package/src/sap/ui/mdc/field/DefineConditionPanel.js +31 -9
  52. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +76 -19
  53. package/src/sap/ui/mdc/field/FieldBase.js +69 -14
  54. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +41 -19
  55. package/src/sap/ui/mdc/field/FieldHelpBase.js +2 -2
  56. package/src/sap/ui/mdc/field/FieldInfoBase.js +24 -10
  57. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  58. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  59. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  60. package/src/sap/ui/mdc/field/FieldValueHelp.js +9 -4
  61. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  62. package/src/sap/ui/mdc/field/FieldValueHelpDelegate.js +1 -1
  63. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +5 -4
  64. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +6 -4
  65. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +6 -3
  66. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +7 -7
  67. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  68. package/src/sap/ui/mdc/field/ListFieldHelp.js +1 -1
  69. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  70. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  71. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  72. package/src/sap/ui/mdc/field/TokenDisplay.js +70 -0
  73. package/src/sap/ui/mdc/field/TokenDisplayRenderer.js +24 -0
  74. package/src/sap/ui/mdc/field/TokenizerDisplay.js +80 -0
  75. package/src/sap/ui/mdc/field/TokenizerDisplayRenderer.js +69 -0
  76. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
  77. package/src/sap/ui/mdc/field/content/ContentFactory.js +10 -6
  78. package/src/sap/ui/mdc/field/content/DateContent.js +27 -19
  79. package/src/sap/ui/mdc/field/content/DateTimeContent.js +0 -6
  80. package/src/sap/ui/mdc/field/content/DefaultContent.js +35 -13
  81. package/src/sap/ui/mdc/field/content/LinkContent.js +1 -1
  82. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +137 -216
  83. package/src/sap/ui/mdc/filterbar/FilterBarBaseRenderer.js +1 -1
  84. package/src/sap/ui/mdc/filterbar/IFilterContainer.js +5 -0
  85. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +27 -2
  86. package/src/sap/ui/mdc/filterbar/aligned/FilterContainer.js +1 -0
  87. package/src/sap/ui/mdc/filterbar/aligned/FilterItemLayout.js +1 -0
  88. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +144 -64
  89. package/src/sap/ui/mdc/filterbar/p13n/FilterColumnLayout.js +2 -2
  90. package/src/sap/ui/mdc/filterbar/p13n/GroupContainer.js +7 -3
  91. package/src/sap/ui/mdc/filterbar/p13n/TableContainer.js +52 -14
  92. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +73 -23
  93. package/src/sap/ui/mdc/filterbar/vh/FilterContainer.js +1 -1
  94. package/src/sap/ui/mdc/flexibility/AggregationConfigFlex.js +48 -31
  95. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +7 -42
  96. package/src/sap/ui/mdc/flexibility/ChartItemFlex.js +36 -0
  97. package/src/sap/ui/mdc/flexibility/ChartTypeFlex.js +54 -0
  98. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +49 -12
  99. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  100. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  101. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +0 -1
  102. package/src/sap/ui/mdc/flexibility/PropertyInfoFlex.js +2 -85
  103. package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +5 -5
  104. package/src/sap/ui/mdc/library.js +41 -30
  105. package/src/sap/ui/mdc/link/ContactDetails.js +107 -23
  106. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  107. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  108. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  109. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  110. package/src/sap/ui/mdc/link/ContactDetailsRenderer.js +26 -0
  111. package/src/sap/ui/mdc/link/Factory.js +1 -1
  112. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  113. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  114. package/src/sap/ui/mdc/link/Log.js +1 -1
  115. package/src/sap/ui/mdc/link/Panel.js +205 -29
  116. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  117. package/src/sap/ui/mdc/link/PanelRenderer.js +26 -0
  118. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  119. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  120. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  121. package/src/sap/ui/mdc/messagebundle.properties +59 -6
  122. package/src/sap/ui/mdc/messagebundle_ar.properties +40 -6
  123. package/src/sap/ui/mdc/messagebundle_bg.properties +58 -24
  124. package/src/sap/ui/mdc/messagebundle_ca.properties +40 -6
  125. package/src/sap/ui/mdc/messagebundle_cs.properties +40 -6
  126. package/src/sap/ui/mdc/messagebundle_cy.properties +40 -6
  127. package/src/sap/ui/mdc/messagebundle_da.properties +40 -6
  128. package/src/sap/ui/mdc/messagebundle_de.properties +40 -6
  129. package/src/sap/ui/mdc/messagebundle_el.properties +39 -5
  130. package/src/sap/ui/mdc/messagebundle_en.properties +40 -6
  131. package/src/sap/ui/mdc/messagebundle_en_GB.properties +40 -6
  132. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +40 -6
  133. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +68 -9
  134. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +41 -7
  135. package/src/sap/ui/mdc/messagebundle_es.properties +40 -6
  136. package/src/sap/ui/mdc/messagebundle_es_MX.properties +41 -7
  137. package/src/sap/ui/mdc/messagebundle_et.properties +40 -6
  138. package/src/sap/ui/mdc/messagebundle_fi.properties +40 -6
  139. package/src/sap/ui/mdc/messagebundle_fr.properties +41 -7
  140. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +40 -6
  141. package/src/sap/ui/mdc/messagebundle_hi.properties +40 -6
  142. package/src/sap/ui/mdc/messagebundle_hr.properties +40 -6
  143. package/src/sap/ui/mdc/messagebundle_hu.properties +40 -6
  144. package/src/sap/ui/mdc/messagebundle_id.properties +40 -6
  145. package/src/sap/ui/mdc/messagebundle_it.properties +41 -7
  146. package/src/sap/ui/mdc/messagebundle_iw.properties +39 -5
  147. package/src/sap/ui/mdc/messagebundle_ja.properties +41 -7
  148. package/src/sap/ui/mdc/messagebundle_kk.properties +40 -6
  149. package/src/sap/ui/mdc/messagebundle_ko.properties +39 -5
  150. package/src/sap/ui/mdc/messagebundle_lt.properties +40 -6
  151. package/src/sap/ui/mdc/messagebundle_lv.properties +44 -10
  152. package/src/sap/ui/mdc/messagebundle_ms.properties +40 -6
  153. package/src/sap/ui/mdc/messagebundle_nl.properties +40 -6
  154. package/src/sap/ui/mdc/messagebundle_no.properties +40 -6
  155. package/src/sap/ui/mdc/messagebundle_pl.properties +40 -6
  156. package/src/sap/ui/mdc/messagebundle_pt.properties +41 -7
  157. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +40 -6
  158. package/src/sap/ui/mdc/messagebundle_ro.properties +40 -6
  159. package/src/sap/ui/mdc/messagebundle_ru.properties +40 -6
  160. package/src/sap/ui/mdc/messagebundle_sh.properties +43 -9
  161. package/src/sap/ui/mdc/messagebundle_sk.properties +40 -6
  162. package/src/sap/ui/mdc/messagebundle_sl.properties +41 -7
  163. package/src/sap/ui/mdc/messagebundle_sv.properties +41 -7
  164. package/src/sap/ui/mdc/messagebundle_th.properties +43 -9
  165. package/src/sap/ui/mdc/messagebundle_tr.properties +41 -7
  166. package/src/sap/ui/mdc/messagebundle_uk.properties +43 -9
  167. package/src/sap/ui/mdc/messagebundle_vi.properties +40 -6
  168. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +40 -6
  169. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +40 -6
  170. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +24 -15
  171. package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -141
  172. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -9
  173. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  174. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +354 -0
  175. package/src/sap/ui/mdc/odata/TypeUtil.js +1 -1
  176. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelper.js +70 -3
  177. package/src/sap/ui/mdc/odata/v4/FieldBaseDelegate.js +8 -6
  178. package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +116 -20
  179. package/src/sap/ui/mdc/odata/v4/ODataMetaModelUtil.js +2 -2
  180. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +32 -69
  181. package/src/sap/ui/mdc/odata/v4/TypeUtil.js +2 -4
  182. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +65 -5
  183. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegate.js +412 -326
  184. package/src/sap/ui/mdc/p13n/AdaptationProvider.js +1 -1
  185. package/src/sap/ui/mdc/p13n/Engine.js +169 -66
  186. package/src/sap/ui/mdc/p13n/FlexUtil.js +26 -19
  187. package/src/sap/ui/mdc/p13n/P13nBuilder.js +6 -6
  188. package/src/sap/ui/mdc/p13n/PropertyHelper.js +2 -2
  189. package/src/sap/ui/mdc/p13n/StateUtil.js +34 -51
  190. package/src/sap/ui/mdc/p13n/UIManager.js +21 -14
  191. package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +0 -174
  192. package/src/sap/ui/mdc/p13n/modules/DefaultProviderRegistry.js +2 -2
  193. package/src/sap/ui/mdc/p13n/modules/xConfigAPI.js +219 -0
  194. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +6 -6
  195. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +49 -27
  196. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +76 -16
  197. package/src/sap/ui/mdc/p13n/panels/FilterPanel.js +136 -0
  198. package/src/sap/ui/mdc/p13n/panels/GroupView.js +53 -28
  199. package/src/sap/ui/mdc/p13n/panels/LinkSelectionPanel.js +54 -18
  200. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +4 -7
  201. package/src/sap/ui/mdc/p13n/subcontroller/AdaptFiltersController.js +1 -2
  202. package/src/sap/ui/mdc/p13n/subcontroller/AggregateController.js +2 -2
  203. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +30 -2
  204. package/src/sap/ui/mdc/p13n/subcontroller/ChartTypeController.js +46 -0
  205. package/src/sap/ui/mdc/p13n/subcontroller/ColumnWidthController.js +37 -6
  206. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +40 -12
  207. package/src/sap/ui/mdc/p13n/subcontroller/GroupController.js +9 -2
  208. package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +1 -0
  209. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +4 -4
  210. package/src/sap/ui/mdc/table/Column.js +271 -132
  211. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  212. package/src/sap/ui/mdc/table/GridTableType.js +75 -27
  213. package/src/sap/ui/mdc/table/PropertyHelper.js +71 -95
  214. package/src/sap/ui/mdc/table/ResponsiveTableType.js +121 -40
  215. package/src/sap/ui/mdc/table/RowActionItem.js +119 -0
  216. package/src/sap/ui/mdc/table/RowSettings.js +42 -1
  217. package/src/sap/ui/mdc/table/TableSettings.js +10 -22
  218. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +2 -2
  219. package/src/sap/ui/mdc/table/menu/Item.js +78 -0
  220. package/src/sap/ui/mdc/table/menu/ItemContainer.js +60 -0
  221. package/src/sap/ui/mdc/table/menu/QuickActionContainer.js +151 -0
  222. package/src/sap/ui/mdc/themes/base/Chart.less +6 -0
  223. package/src/sap/ui/mdc/themes/base/TokenDisplay.less +89 -0
  224. package/src/sap/ui/mdc/themes/base/TokenizerDisplay.less +90 -0
  225. package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +4 -3
  226. package/src/sap/ui/mdc/themes/base/library.source.less +2 -0
  227. package/src/sap/ui/mdc/ui/Container.js +0 -240
  228. package/src/sap/ui/mdc/util/DateUtil.js +32 -7
  229. package/src/sap/ui/mdc/util/FilterUtil.js +2 -2
  230. package/src/sap/ui/mdc/util/FormatUtil.js +2 -2
  231. package/src/sap/ui/mdc/util/IdentifierUtil.js +7 -7
  232. package/src/sap/ui/mdc/util/PromiseCache.js +6 -2
  233. package/src/sap/ui/mdc/util/PropertyHelper.js +205 -76
  234. package/src/sap/ui/mdc/util/TypeUtil.js +1 -1
  235. package/src/sap/ui/mdc/valuehelp/Dialog.js +234 -44
  236. package/src/sap/ui/mdc/valuehelp/Popover.js +7 -4
  237. package/src/sap/ui/mdc/valuehelp/base/Container.js +63 -48
  238. package/src/sap/ui/mdc/valuehelp/base/Content.js +35 -16
  239. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +1 -1
  240. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +161 -284
  241. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +4 -4
  242. package/src/sap/ui/mdc/valuehelp/content/Bool.js +4 -4
  243. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +4 -4
  244. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +16 -13
  245. package/src/sap/ui/mdc/valuehelp/content/ListCollection.js +205 -0
  246. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +67 -66
  247. package/src/sap/ui/mdc/valuehelp/content/MTable.js +94 -185
  248. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +2 -1
  249. package/test/sap/ui/mdc/testutils/opa/chart/TestObjects.js +6 -5
  250. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +4 -5
  251. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +8 -9
  252. package/test/sap/ui/mdc/testutils/opa/link/TestObjects.js +8 -8
  253. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +43 -27
  254. package/test/sap/ui/mdc/testutils/opa/valueHelp/Actions.js +54 -0
  255. package/test/sap/ui/mdc/testutils/opa/valueHelp/Assertions.js +5 -0
  256. package/test/sap/ui/mdc/testutils/opa/valueHelp/TestObjects.js +40 -0
  257. package/test/sap/ui/mdc/testutils/opa/valueHelp/Util.js +28 -0
  258. package/src/sap/ui/mdc/filterbar/vh/GenericFilterBarDelegate.js +0 -150
  259. package/src/sap/ui/mdc/link/ContactDetails.control.xml +0 -29
  260. package/src/sap/ui/mdc/link/Panel.control.xml +0 -36
  261. package/src/sap/ui/mdc/link/PanelListItem.control.xml +0 -24
  262. package/src/sap/ui/mdc/link/PanelListItem.js +0 -101
  263. package/src/sap/ui/mdc/p13n/panels/BasePanel.js +0 -721
  264. package/src/sap/ui/mdc/p13n/panels/ListView.js +0 -408
  265. package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +0 -92
  266. package/src/sap/ui/mdc/p13n/panels/SortPanel.js +0 -150
  267. package/src/sap/ui/mdc/ui/ContainerItem.js +0 -79
@@ -0,0 +1,119 @@
1
+ /*!
2
+ * OpenUI5
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+
7
+ sap.ui.define([
8
+ 'sap/ui/core/Element',
9
+ '../library',
10
+ 'sap/ui/core/IconPool',
11
+ 'sap/ui/core/Core'
12
+ ], function(Element, library, IconPool, Core) {
13
+ "use strict";
14
+
15
+ var RowAction = library.RowAction;
16
+
17
+ /**
18
+ * Constructor for new RowActionItem.
19
+ *
20
+ * @param {string} [sId] Optional ID for the new object; generated automatically if no non-empty ID is given
21
+ * @param {object} [mSettings] initial settings for the new control
22
+ *
23
+ * @class
24
+ * The <code>RowActionItem</code> control represents a action for a row.
25
+ * This control can only be used in the context of <code>sap.ui.mdc.Table</code> control to define row actions.
26
+ * @extends sap.ui.core.Element
27
+ * @version 1.101.0
28
+ *
29
+ * @constructor
30
+ * @experimental
31
+ * @private
32
+ * @ui5-restricted sap.fe
33
+ * MDC_PUBLIC_CANDIDATE
34
+ * @alias sap.ui.mdc.table.RowActionItem
35
+ */
36
+
37
+ var RowActionItem = Element.extend("sap.ui.mdc.table.RowActionItem", {
38
+ metadata: {
39
+ library: "sap.ui.mdc",
40
+ properties: {
41
+ /**
42
+ * Type of the row action item.
43
+ *
44
+ * As of version 1.98, only sap.ui.mdc.RowAction.Navigation is available.
45
+ * Setting the type ensures default values for the properties <code>icon</code> and <code>text</code>.
46
+ * If an icon or text is set explicitly this setting is used.
47
+ */
48
+ type: {type: "sap.ui.mdc.RowAction"},
49
+ /**
50
+ * Text for the row action item.
51
+ *
52
+ * Custom text cannot be set when using <code>sap.m.Table</code>.
53
+ */
54
+ text: {type: "string"},
55
+ /**
56
+ * Icon for the row action item.
57
+ *
58
+ * A custom icon cannot be set when using <code>sap.m.Table</code>
59
+ */
60
+ icon: {type: "sap.ui.core.URI"},
61
+ /**
62
+ * Whether the item should be visible on the screen.
63
+ */
64
+ visible: {type: "boolean", defaultValue: true}
65
+ },
66
+ events: {
67
+ /**
68
+ * Fired when the row action item is pressed.
69
+ *
70
+ * <code>sap.ui.table.Table</code>: The press event is fired when a row action item is pressed.
71
+ *
72
+ * <code>sap.m.Table</code>: The press event is fired when a row with a row action item is pressed.
73
+ * The <code>sap.ui.mdc.Table</code>'s <code>rowPress</code> event is fired as well, when pressing a row with a row action item.
74
+ *
75
+ * @private
76
+ */
77
+ press: {
78
+ parameters: {
79
+ /**
80
+ * The binding context of the pressed row action
81
+ */
82
+ bindingContext: {
83
+ type: "sap.ui.model.Context"
84
+ }
85
+ }
86
+ }
87
+ }
88
+ }
89
+ });
90
+
91
+ var mThemeParameters = {
92
+ navigationIcon: "navigation-right-arrow"
93
+ };
94
+
95
+ RowActionItem.prototype._getText = function () {
96
+ var sText;
97
+ if (this.getText()) {
98
+ sText = this.getText();
99
+ } else {
100
+ var oResourceBundle = Core.getLibraryResourceBundle("sap.ui.mdc");
101
+ if (this.getType() === RowAction.Navigation) {
102
+ sText = oResourceBundle.getText("table.ROW_ACTION_ITEM_NAVIGATE");
103
+ }
104
+ }
105
+ return sText;
106
+ };
107
+
108
+ RowActionItem.prototype._getIcon = function () {
109
+ var oIcon;
110
+ if (this.getIcon()) {
111
+ oIcon = this.getIcon();
112
+ } else if (this.getType() === RowAction.Navigation) {
113
+ oIcon = IconPool.getIconURI(mThemeParameters["navigationIcon"]);
114
+ }
115
+ return oIcon;
116
+ };
117
+
118
+ return RowActionItem;
119
+ });
@@ -12,6 +12,8 @@ sap.ui.define([
12
12
  /**
13
13
  * Constructor for new RowSettings.
14
14
  *
15
+ * Caution: Only use bindings which are bound against the rows, as working functionalities cannot be ensured for other binding types.
16
+ *
15
17
  * @param {string} [sId] Optional ID for the new object; generated automatically if no non-empty ID is given
16
18
  * @param {object} [mSettings] Initial settings for the new control
17
19
  *
@@ -19,7 +21,7 @@ sap.ui.define([
19
21
  * The <code>RowSettings</code> control is used to configure a row.
20
22
  * This control can only be used in the context of the <code>sap.ui.mdc.Table</code> control to define row settings.
21
23
  * @extends sap.ui.core.Element
22
- * @version 1.98.0
24
+ * @version 1.101.0
23
25
  *
24
26
  * @constructor
25
27
  * @experimental
@@ -60,6 +62,14 @@ sap.ui.define([
60
62
  * If set to <code>true</code>, a navigation indicator is displayed at the end of the row.
61
63
  */
62
64
  navigated : {type : "boolean", group : "Appearance", defaultValue : false}
65
+ },
66
+ aggregations: {
67
+ /**
68
+ * The available actions for a row.
69
+ *
70
+ * rowActions cannot be bound with a factory. Additionally, {@link sap.m.Table} only works with row actions of type navigation.
71
+ */
72
+ rowActions: {type: "sap.ui.mdc.table.RowActionItem", multiple: true}
63
73
  }
64
74
  }
65
75
  });
@@ -89,5 +99,36 @@ sap.ui.define([
89
99
  return mSettings;
90
100
  };
91
101
 
102
+ RowSettings.prototype.getAllActions = function () {
103
+ var mSettings = {},
104
+ thisCloned = this.clone();
105
+
106
+ if (this.isBound("rowActions")) {
107
+ // Set bindingInfo for items aggregation to bindingInfo of rowActions
108
+ mSettings.items = thisCloned.getBindingInfo("rowActions");
109
+ var oTemplate = mSettings.items.template;
110
+ // Create temporary metdata information for later processing
111
+ mSettings.templateInfo = {
112
+ type: oTemplate.isBound("type") ? oTemplate.getBindingInfo("type") : oTemplate.getType(),
113
+ text: oTemplate.isBound("text") ? oTemplate.getBindingInfo("text") : oTemplate.getText(),
114
+ icon: oTemplate.isBound("icon") ? oTemplate.getBindingInfo("icon") : oTemplate.getIcon(),
115
+ visible: oTemplate.isBound("visible") ? oTemplate.getBindingInfo("visible") : oTemplate.getVisible()
116
+ };
117
+ } else {
118
+ mSettings.items = this.getRowActions();
119
+ }
120
+ return mSettings;
121
+ };
122
+
123
+ RowSettings.prototype.getRowActionCount = function () {
124
+ var iCount = 0;
125
+ if (this.isBound("rowActions")) {
126
+ iCount = 1;
127
+ } else {
128
+ iCount = this.getRowActions().length;
129
+ }
130
+ return iCount;
131
+ };
132
+
92
133
  return RowSettings;
93
134
  });
@@ -118,7 +118,7 @@ sap.ui.define([
118
118
  },
119
119
 
120
120
  showUIColumns: function(oControl, oSource) {
121
- oControl.getEngine().uimanager.show(oControl, oControl.getP13nMode(), oSource);
121
+ oControl.getEngine().uimanager.show(oControl, oControl.getActiveP13nModes(), oSource);
122
122
  },
123
123
 
124
124
  showUIFilter: function(oControl, oSource) {
@@ -130,31 +130,19 @@ sap.ui.define([
130
130
  *
131
131
  * @param {object} oControl The control for which the sorting is used
132
132
  * @param {string} sProperty The property for which the sorting is used
133
- * @param {boolean} bDescending Whether to sort in descending or ascending order
133
+ * @param {sap.ui.core.SortOrder} sSortOrder Whether to sort in descending or ascending order
134
134
  * @param {boolean} [bRemoveAllExisting=true] Set to remove the previous sorters
135
135
  */
136
- createSort: function(oControl, sProperty, bDescending, bRemoveAllExisting) {
137
-
138
- var oSorter = {
139
- selected: true,
140
- name: sProperty,
141
- descending: bDescending,
142
- sorted: true
143
- };
144
-
145
- //check to revert sorting in case the sorter and its type already exists
146
- oControl.getCurrentState().sorters.forEach(function(oProp) {
147
- if (oProp.name == sProperty && oProp.descending === bDescending) {
148
- oSorter.sorted = false;
149
- }
150
- });
151
-
152
- var aItems = [oSorter];
153
-
136
+ createSort: function(oControl, sProperty, sSortOrder, bRemoveAllExisting) {
154
137
  oControl.getEngine().createChanges({
155
138
  control: oControl,
156
139
  key: "Sort",
157
- state: aItems,
140
+ state: [{
141
+ selected: true,
142
+ name: sProperty,
143
+ descending: sSortOrder === CoreLibrary.SortOrder.Descending,
144
+ sorted: sSortOrder !== CoreLibrary.SortOrder.None
145
+ }],
158
146
  applyAbsolute: bRemoveAllExisting
159
147
  });
160
148
 
@@ -176,7 +164,7 @@ sap.ui.define([
176
164
  control: oControl,
177
165
  key: "Group",
178
166
  state: aGroup,
179
- applyAbsolute: false
167
+ applyAbsolute: oControl._bMobileTable
180
168
  });
181
169
  },
182
170
 
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  *
17
17
  * @param {object[]} aProperties
18
18
  * The properties to process in this helper
19
- * @param {object<string, object>} [mExtensions]
19
+ * @param {Object<string, object>} [mExtensions]
20
20
  * Key-value map, where the key is the name of the property and the value is the extension containing mode-specific information.
21
21
  * The extension of a property is stored in a reserved <code>extension</code> attribute and its attributes must be specified with
22
22
  * <code>mExtensionAttributeMetadata</code>.
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @extends sap.ui.mdc.table.PropertyHelper
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.98.0
30
+ * @version 1.101.0
31
31
  *
32
32
  * @private
33
33
  * @experimental
@@ -0,0 +1,78 @@
1
+ /*!
2
+ * OpenUI5
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+ sap.ui.define([
7
+ "sap/ui/core/Core",
8
+ "sap/m/table/columnmenu/Item"
9
+ ], function(
10
+ Core,
11
+ ItemBase
12
+ ) {
13
+ "use strict";
14
+
15
+ var Item = ItemBase.extend("sap.ui.mdc.table.menu.Item", {
16
+ metadata: {
17
+ library: "sap.ui.mdc",
18
+ properties: {
19
+ key: {type: "string"}
20
+ }
21
+ }
22
+ });
23
+
24
+ Item.prototype.initializeContent = function() {
25
+ var oTable = this.getTable();
26
+ var oEngine = oTable.getEngine();
27
+ var sKey = this.getKey();
28
+ var oController = oEngine.getController(oTable, sKey);
29
+
30
+ return oTable.getEngine().uimanager.create(oTable, [sKey]).then(function(oDialog) {
31
+ var oContent = oDialog.removeContent(0);
32
+ oDialog.destroy();
33
+
34
+ this.setContent(oContent);
35
+ this.setLabel(oController.getUISettings().title);
36
+
37
+ oController.update(oTable.getPropertyHelper());
38
+ oEngine.validateP13n(oTable, sKey, this.getContent());
39
+
40
+ this.changeButtonSettings({
41
+ reset: {visible: oController.getResetEnabled()}
42
+ });
43
+ }.bind(this));
44
+ };
45
+
46
+ Item.prototype.onPress = function() {
47
+ var oTable = this.getTable();
48
+ oTable.getEngine().getController(oTable, this.getKey()).update(oTable.getPropertyHelper());
49
+ };
50
+
51
+ Item.prototype.onConfirm = function() {
52
+ var oTable = this.getTable();
53
+ oTable.getEngine().handleP13n(oTable, [this.getKey()]);
54
+ };
55
+
56
+ Item.prototype.onReset = function() {
57
+ var oTable = this.getTable();
58
+
59
+ oTable.getEngine().reset(oTable, [this.getKey()]).then(function() {
60
+ oTable._oQuickActionContainer.initializeQuickActions();
61
+ oTable._oColumnHeaderMenu._oPopover.invalidate();
62
+ });
63
+ };
64
+
65
+ Item.prototype.destroyContent = function() {
66
+ // The AdaptationFilterBar must not be destroyed! A new one cannot be created.
67
+ if (this.getKey() !== "Filter") {
68
+ return this;
69
+ }
70
+ return this.destroyAggregation("content");
71
+ };
72
+
73
+ Item.prototype.getTable = function() {
74
+ return this.getParent().getTable();
75
+ };
76
+
77
+ return Item;
78
+ });
@@ -0,0 +1,60 @@
1
+ /*!
2
+ * OpenUI5
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+ sap.ui.define([
7
+ "sap/m/table/columnmenu/ItemContainer",
8
+ "sap/ui/mdc/table/menu/Item",
9
+ "sap/ui/core/Core"
10
+ ], function(
11
+ ItemContainerBase,
12
+ Item,
13
+ Core
14
+ ) {
15
+ "use strict";
16
+
17
+ var ItemContainer = ItemContainerBase.extend("sap.ui.mdc.table.menu.ItemContainer", {
18
+ metadata: {
19
+ library: "sap.ui.mdc",
20
+ associations: {
21
+ table: {type: "sap.ui.mdc.Table"}
22
+ }
23
+ }
24
+ });
25
+
26
+ ItemContainer.prototype.initializeItems = function() {
27
+ var oTable = this.getTable();
28
+ this.removeAllItems();
29
+
30
+ if (oTable.isSortingEnabled()) {
31
+ this.addItem(new Item({key: "Sort", icon: "sap-icon://sort"}));
32
+ }
33
+
34
+ if (oTable.isFilteringEnabled()) {
35
+ this.addItem(new Item({key: "Filter", icon: "sap-icon://filter"}));
36
+ }
37
+
38
+ if (oTable.isGroupingEnabled()) {
39
+ this.addItem(new Item({key: "Group", icon: "sap-icon://group-2"}));
40
+ }
41
+
42
+ if (oTable.getActiveP13nModes().includes("Column")) {
43
+ this.addItem(new Item({key: "Column", icon: "sap-icon://table-column"}));
44
+ }
45
+
46
+ return Promise.all(this.getItems().map(function(oItem) {
47
+ return oItem.initializeContent();
48
+ }));
49
+ };
50
+
51
+ ItemContainer.prototype.hasItems = function() {
52
+ return this.getEffectiveItems().length > 0;
53
+ };
54
+
55
+ ItemContainer.prototype.getTable = function() {
56
+ return Core.byId(this.getAssociation("table"));
57
+ };
58
+
59
+ return ItemContainer;
60
+ });
@@ -0,0 +1,151 @@
1
+ /*!
2
+ * OpenUI5
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+ sap.ui.define([
7
+ "../TableSettings",
8
+ "../ResponsiveTableType",
9
+ "sap/m/table/columnmenu/QuickActionContainer",
10
+ "sap/m/table/columnmenu/QuickAction",
11
+ "sap/m/table/columnmenu/QuickSort",
12
+ "sap/m/table/columnmenu/QuickSortItem",
13
+ "sap/m/table/columnmenu/QuickGroup",
14
+ "sap/m/table/columnmenu/QuickGroupItem",
15
+ "sap/m/table/columnmenu/QuickTotal",
16
+ "sap/m/table/columnmenu/QuickTotalItem",
17
+ "sap/m/Button",
18
+ "sap/ui/core/Core",
19
+ "sap/ui/core/library"
20
+ ], function(
21
+ TableSettings,
22
+ ResponsiveTableType,
23
+ QuickActionContainerBase,
24
+ QuickAction,
25
+ QuickSort,
26
+ QuickSortItem,
27
+ QuickGroup,
28
+ QuickGroupItem,
29
+ QuickTotal,
30
+ QuickTotalItem,
31
+ Button,
32
+ Core,
33
+ CoreLibrary
34
+ ) {
35
+ "use strict";
36
+
37
+ var QuickActionContainer = QuickActionContainerBase.extend("sap.ui.mdc.table.menu.QuickActionContainer", {
38
+ metadata: {
39
+ library: "sap.ui.mdc",
40
+ associations: {
41
+ table: {type: "sap.ui.mdc.Table"},
42
+ column: {type: "sap.ui.mdc.table.Column"}
43
+ }
44
+ }
45
+ });
46
+
47
+ QuickActionContainer.prototype.initializeQuickActions = function() {
48
+ var oTable = this.getTable();
49
+ var oColumn = this.getColumn();
50
+ var oPropertyHelper = oTable.getPropertyHelper();
51
+ var pCreateContent = Promise.resolve();
52
+
53
+ this.destroyQuickActions(); // TODO: More efficient update would be good
54
+
55
+ if (oTable.isSortingEnabled()) {
56
+ var aSortableProperties = oPropertyHelper.getProperty(oColumn.getDataProperty()).getSortableProperties();
57
+ var aSortedProperties = oTable._getSortedProperties();
58
+
59
+ if (aSortableProperties.length > 0) {
60
+ this.addQuickAction(new QuickSort({
61
+ items: aSortableProperties.map(function(oProperty) {
62
+ var sSortOrder = CoreLibrary.SortOrder.None;
63
+ var mSortCondition = aSortedProperties.find(function(oSortedProperty) {
64
+ return oSortedProperty.name === oProperty.name;
65
+ });
66
+
67
+ if (mSortCondition) {
68
+ sSortOrder = mSortCondition.descending ? CoreLibrary.SortOrder.Descending : CoreLibrary.SortOrder.Ascending;
69
+ }
70
+ return new QuickSortItem({
71
+ key: oProperty.name,
72
+ label: oProperty.label,
73
+ sortOrder: sSortOrder
74
+ });
75
+ }),
76
+ change: function(oEvent) {
77
+ var oItem = oEvent.getParameter("item");
78
+ TableSettings.createSort(oTable, oItem.getKey(), oItem.getSortOrder(), false);
79
+ }
80
+ }));
81
+ }
82
+ }
83
+
84
+ if (oTable.isGroupingEnabled()) {
85
+ var aGroupableProperties = oPropertyHelper.getProperty(oColumn.getDataProperty()).getGroupableProperties();
86
+ var aGroupedProperties = oTable._getGroupedProperties();
87
+
88
+ if (aGroupableProperties.length > 0) {
89
+ this.addQuickAction(new QuickGroup({
90
+ items: aGroupableProperties.map(function(oProperty) {
91
+ var bGrouped = aGroupedProperties.some(function(oGroupedProperty) {
92
+ return oGroupedProperty.name === oProperty.name;
93
+ });
94
+
95
+ return new QuickGroupItem({
96
+ key: oProperty.name,
97
+ label: oProperty.label,
98
+ grouped: bGrouped
99
+ });
100
+ }),
101
+ change: function(oEvent) {
102
+ var oItem = oEvent.getParameter("item");
103
+ TableSettings.createGroup(oTable, oItem.getKey());
104
+ }
105
+ }));
106
+ }
107
+ }
108
+
109
+ if (oTable.isAggregationEnabled()) {
110
+ var aAggregatableProperties = oPropertyHelper.getProperty(oColumn.getDataProperty()).getAggregatableProperties();
111
+ var oAggregatedProperty = oTable._getAggregatedProperties();
112
+
113
+ if (aAggregatableProperties.length > 0) {
114
+ this.addQuickAction(new QuickTotal({
115
+ items: aAggregatableProperties.map(function(oProperty) {
116
+ return new QuickTotalItem({
117
+ key: oProperty.name,
118
+ label: oProperty.label,
119
+ totaled: oAggregatedProperty.hasOwnProperty(oProperty.name)
120
+ });
121
+ }),
122
+ change: function(oEvent) {
123
+ var oItem = oEvent.getParameter("item");
124
+ TableSettings.createAggregation(oTable, oItem.getKey());
125
+ }
126
+ }));
127
+ }
128
+ }
129
+
130
+ var bResizeButton = window.matchMedia("(hover:none)").matches && oTable._bMobileTable && oTable.getEnableColumnResize();
131
+ if (bResizeButton) {
132
+ var oColumnResize = ResponsiveTableType.startColumnResize(oTable._oTable, oTable._oTable.getColumns()[oTable.indexOfColumn(oColumn)], this.getMenu());
133
+ this.addQuickAction(oColumnResize);
134
+ }
135
+ return pCreateContent;
136
+ };
137
+
138
+ QuickActionContainer.prototype.hasQuickActions = function() {
139
+ return this.getEffectiveQuickActions().length > 0;
140
+ };
141
+
142
+ QuickActionContainer.prototype.getTable = function() {
143
+ return Core.byId(this.getAssociation("table"));
144
+ };
145
+
146
+ QuickActionContainer.prototype.getColumn = function() {
147
+ return Core.byId(this.getAssociation("column"));
148
+ };
149
+
150
+ return QuickActionContainer;
151
+ });
@@ -1,3 +1,9 @@
1
1
  .sapUiMDCChart {
2
2
  background: @sapUiChartBackgroundColor;
3
+ border-radius: @sapUiElementBorderCornerRadius;
4
+ padding-bottom: 1rem;
5
+ }
6
+
7
+ .sapUiMDCChart .sapUiMDCChartBreadcrumbs {
8
+ margin-left: 1rem;
3
9
  }
@@ -0,0 +1,89 @@
1
+ @mdctoken-large-line-height: 1.375rem;
2
+ @mdctoken-small-line-height: 1rem;
3
+
4
+ // hide Token border and background
5
+ .sapUiMdcTokenizerDisplay .sapMToken {
6
+ border: 0px; // hide the border of a token
7
+ background-color: transparent; // remove background of Token
8
+ padding-left: 0px; // remove the left padding
9
+ }
10
+
11
+ .sapUiMdcTokenizerDisplay.sapMTokenizer.sapMTokenizerReadonly .sapMToken {
12
+ padding-left: 0px; // remove left padding of a token. The right padding will be used to show the delimiters
13
+
14
+ // right margin and padding of the token (space for the delimiter)
15
+ padding-right: 0.375rem;
16
+ margin-right: 0.375rem;
17
+ margin-top: 0px;
18
+ margin-bottom: 0px;
19
+
20
+ color: @sapUiBaseText;
21
+ height: @mdctoken-small-line-height;
22
+ }
23
+
24
+ .sapUiFormEdit .sapUiMdcTokenizerDisplay.sapMTokenizer.sapMTokenizerReadonly .sapMToken {
25
+ height: @mdctoken-large-line-height;
26
+ }
27
+
28
+ .sapUiSizeCozy .sapUiMdcTokenizerDisplay.sapMTokenizer.sapMTokenizerReadonly .sapMToken {
29
+ // right margin and padding of the token (space for the delimiter)
30
+ padding-right: 0.5rem;
31
+ margin-right: 0.5rem;
32
+ }
33
+
34
+ // delimiters between tokens
35
+ .sapUiMdcTokenizerDisplay .sapMToken::after {
36
+ content: attr(delimiter);
37
+ color: @sapUiBaseText;
38
+ font-family: @sapUiFontFamily;
39
+ font-size: @sapMFontMediumSize;
40
+ font-weight: normal;
41
+ vertical-align: middle;
42
+ margin-left: 0.25rem; // space between tokens. the left margin of the delimiter and the right side of the token
43
+ position: absolute;
44
+ line-height: @mdctoken-small-line-height;
45
+ }
46
+
47
+ .sapUiSizeCozy .sapUiMdcTokenizerDisplay .sapMToken::after {
48
+ margin-left: 0.4rem; // space between tokens. the left side margin of the token
49
+ }
50
+
51
+ .sapUiFormEdit .sapUiMdcTokenizerDisplay .sapMToken::after {
52
+ line-height: @mdctoken-large-line-height;
53
+ }
54
+
55
+ // no delimiter after the last token
56
+ .sapUiMdcTokenizerDisplay .sapMToken:last-child:after {
57
+ content: none;
58
+ }
59
+
60
+
61
+
62
+ // make the token focus invisible
63
+ html.sap-desktop .sapUiMdcTokenizerDisplay .sapMToken:focus {
64
+ outline: 0px;
65
+ }
66
+
67
+ // make the token hover invisible
68
+ html.sap-desktop .sapUiMdcTokenizerDisplay .sapMToken:hover {
69
+ background: transparent;
70
+ border: 0px;
71
+ }
72
+
73
+ .sapUiSizeCompact .sapUiMdcTokenizerDisplay.sapMTokenizer .sapMToken {
74
+ font-size: @sapMFontMediumSize;
75
+ }
76
+
77
+
78
+
79
+ .sapUiMdcTokenizerDisplay .sapMTokenText {
80
+ // enable selection of scrollcontainer
81
+ -webkit-user-select: text;
82
+ user-select: text;
83
+
84
+ line-height: @mdctoken-small-line-height;
85
+ }
86
+
87
+ .sapUiFormEdit .sapUiMdcTokenizerDisplay .sapMTokenText {
88
+ line-height: @mdctoken-large-line-height;
89
+ }