@openui5/sap.m 1.119.0 → 1.120.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 (462) hide show
  1. package/THIRDPARTY.txt +6 -6
  2. package/package.json +4 -4
  3. package/src/sap/m/.library +8 -1
  4. package/src/sap/m/AccButton.js +1 -1
  5. package/src/sap/m/ActionListItem.js +1 -1
  6. package/src/sap/m/ActionSelect.js +1 -1
  7. package/src/sap/m/ActionSheet.js +1 -1
  8. package/src/sap/m/ActionTile.js +1 -1
  9. package/src/sap/m/ActionTileContent.js +1 -1
  10. package/src/sap/m/AdditionalTextButton.js +1 -1
  11. package/src/sap/m/App.js +1 -1
  12. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  13. package/src/sap/m/Avatar.js +10 -6
  14. package/src/sap/m/AvatarRenderer.js +10 -3
  15. package/src/sap/m/Bar.js +1 -1
  16. package/src/sap/m/Breadcrumbs.js +1 -1
  17. package/src/sap/m/BusyDialog.js +1 -1
  18. package/src/sap/m/BusyIndicator.js +1 -1
  19. package/src/sap/m/Button.js +1 -1
  20. package/src/sap/m/Carousel.js +1 -1
  21. package/src/sap/m/CarouselLayout.js +1 -1
  22. package/src/sap/m/CheckBox.js +1 -1
  23. package/src/sap/m/ColorPalette.js +1 -1
  24. package/src/sap/m/ColorPalettePopover.js +1 -1
  25. package/src/sap/m/Column.js +1 -1
  26. package/src/sap/m/ColumnHeaderPopover.js +7 -8
  27. package/src/sap/m/ColumnListItem.js +1 -1
  28. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  29. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  30. package/src/sap/m/ColumnPopoverItem.js +1 -1
  31. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  32. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  33. package/src/sap/m/ComboBox.js +1 -1
  34. package/src/sap/m/ComboBoxBase.js +20 -3
  35. package/src/sap/m/ComboBoxTextField.js +1 -1
  36. package/src/sap/m/CustomListItem.js +1 -1
  37. package/src/sap/m/CustomTile.js +1 -1
  38. package/src/sap/m/CustomTreeItem.js +1 -1
  39. package/src/sap/m/DatePicker.js +1 -1
  40. package/src/sap/m/DateRangeSelection.js +22 -12
  41. package/src/sap/m/DateTimeField.js +1 -1
  42. package/src/sap/m/DateTimeInput.js +1 -1
  43. package/src/sap/m/DateTimePicker.js +1 -1
  44. package/src/sap/m/Dialog.js +1 -1
  45. package/src/sap/m/DisplayListItem.js +1 -1
  46. package/src/sap/m/DraftIndicator.js +1 -1
  47. package/src/sap/m/DynamicDate.js +1 -1
  48. package/src/sap/m/DynamicDateOption.js +1 -1
  49. package/src/sap/m/DynamicDateRange.js +10 -2
  50. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  51. package/src/sap/m/ExpandableText.js +1 -1
  52. package/src/sap/m/FacetFilter.js +2 -1
  53. package/src/sap/m/FacetFilterItem.js +1 -1
  54. package/src/sap/m/FacetFilterList.js +1 -1
  55. package/src/sap/m/FeedContent.js +1 -1
  56. package/src/sap/m/FeedInput.js +5 -4
  57. package/src/sap/m/FeedInputRenderer.js +3 -3
  58. package/src/sap/m/FeedListItem.js +6 -4
  59. package/src/sap/m/FeedListItemAction.js +1 -1
  60. package/src/sap/m/Fiori20Adapter.js +2 -2
  61. package/src/sap/m/FlexBox.js +1 -1
  62. package/src/sap/m/FlexItemData.js +1 -1
  63. package/src/sap/m/FormattedText.js +1 -1
  64. package/src/sap/m/GenericTag.js +1 -1
  65. package/src/sap/m/GenericTile.js +58 -23
  66. package/src/sap/m/GenericTileRenderer.js +11 -0
  67. package/src/sap/m/GroupHeaderListItem.js +1 -1
  68. package/src/sap/m/GrowingEnablement.js +2 -3
  69. package/src/sap/m/GrowingList.js +1 -1
  70. package/src/sap/m/HBox.js +1 -1
  71. package/src/sap/m/HeaderContainer.js +6 -4
  72. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  73. package/src/sap/m/IconTabBar.js +1 -1
  74. package/src/sap/m/IconTabBarSelectList.js +1 -1
  75. package/src/sap/m/IconTabFilter.js +1 -1
  76. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  77. package/src/sap/m/IconTabHeader.js +1 -1
  78. package/src/sap/m/IconTabSeparator.js +1 -1
  79. package/src/sap/m/IllustratedMessage.js +1 -1
  80. package/src/sap/m/Illustration.js +1 -1
  81. package/src/sap/m/Image.js +1 -1
  82. package/src/sap/m/ImageContent.js +1 -1
  83. package/src/sap/m/Input.js +79 -14
  84. package/src/sap/m/InputBase.js +3 -1
  85. package/src/sap/m/InputListItem.js +1 -1
  86. package/src/sap/m/InputRenderer.js +7 -3
  87. package/src/sap/m/Label.js +1 -1
  88. package/src/sap/m/LightBox.js +1 -1
  89. package/src/sap/m/LightBoxItem.js +1 -1
  90. package/src/sap/m/Link.js +1 -1
  91. package/src/sap/m/LinkTileContent.js +143 -0
  92. package/src/sap/m/List.js +1 -1
  93. package/src/sap/m/ListBase.js +32 -14
  94. package/src/sap/m/ListItemBase.js +1 -1
  95. package/src/sap/m/MaskEnabler.js +1 -1
  96. package/src/sap/m/MaskInput.js +1 -1
  97. package/src/sap/m/MaskInputRule.js +1 -1
  98. package/src/sap/m/Menu.js +1 -1
  99. package/src/sap/m/MenuButton.js +3 -3
  100. package/src/sap/m/MenuItem.js +1 -1
  101. package/src/sap/m/MenuListItem.js +1 -1
  102. package/src/sap/m/MessageItem.js +1 -1
  103. package/src/sap/m/MessageListItem.js +1 -1
  104. package/src/sap/m/MessagePage.js +1 -1
  105. package/src/sap/m/MessagePopover.js +2 -3
  106. package/src/sap/m/MessagePopoverItem.js +1 -1
  107. package/src/sap/m/MessageStrip.js +1 -1
  108. package/src/sap/m/MessageToast.js +5 -19
  109. package/src/sap/m/MessageView.js +1 -1
  110. package/src/sap/m/MessageViewRenderer.js +2 -3
  111. package/src/sap/m/MultiComboBox.js +1 -1
  112. package/src/sap/m/MultiEditField.js +1 -1
  113. package/src/sap/m/MultiInput.js +4 -2
  114. package/src/sap/m/NavContainer.js +4 -3
  115. package/src/sap/m/NewsContent.js +1 -1
  116. package/src/sap/m/NotificationList.js +1 -1
  117. package/src/sap/m/NotificationListBase.js +1 -1
  118. package/src/sap/m/NotificationListGroup.js +1 -1
  119. package/src/sap/m/NotificationListItem.js +1 -1
  120. package/src/sap/m/NumericContent.js +9 -10
  121. package/src/sap/m/NumericContentRenderer.js +5 -4
  122. package/src/sap/m/NumericInput.js +1 -1
  123. package/src/sap/m/ObjectAttribute.js +1 -1
  124. package/src/sap/m/ObjectHeader.js +1 -1
  125. package/src/sap/m/ObjectIdentifier.js +1 -1
  126. package/src/sap/m/ObjectListItem.js +1 -1
  127. package/src/sap/m/ObjectMarker.js +1 -1
  128. package/src/sap/m/ObjectNumber.js +1 -1
  129. package/src/sap/m/ObjectStatus.js +4 -6
  130. package/src/sap/m/ObjectStatusRenderer.js +3 -1
  131. package/src/sap/m/OverflowToolbar.js +1 -1
  132. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  133. package/src/sap/m/OverflowToolbarButton.js +1 -1
  134. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  135. package/src/sap/m/OverflowToolbarMenuButton.js +1 -1
  136. package/src/sap/m/OverflowToolbarRenderer.js +8 -1
  137. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  138. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  139. package/src/sap/m/P13nColumnsItem.js +2 -1
  140. package/src/sap/m/P13nColumnsPanel.js +1 -1
  141. package/src/sap/m/P13nConditionPanel.js +1 -1
  142. package/src/sap/m/P13nDialog.js +1 -1
  143. package/src/sap/m/P13nDimMeasureItem.js +2 -1
  144. package/src/sap/m/P13nDimMeasurePanel.js +2 -1
  145. package/src/sap/m/P13nFilterItem.js +1 -1
  146. package/src/sap/m/P13nFilterPanel.js +1 -1
  147. package/src/sap/m/P13nGroupItem.js +2 -1
  148. package/src/sap/m/P13nGroupPanel.js +1 -1
  149. package/src/sap/m/P13nItem.js +1 -1
  150. package/src/sap/m/P13nPanel.js +1 -1
  151. package/src/sap/m/P13nSelectionItem.js +1 -1
  152. package/src/sap/m/P13nSelectionPanel.js +1 -1
  153. package/src/sap/m/P13nSortItem.js +2 -1
  154. package/src/sap/m/P13nSortPanel.js +1 -1
  155. package/src/sap/m/PDFViewer.js +20 -8
  156. package/src/sap/m/PDFViewerRenderManager.js +18 -18
  157. package/src/sap/m/PDFViewerRenderer.js +1 -1
  158. package/src/sap/m/Page.js +1 -1
  159. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  160. package/src/sap/m/PagingButton.js +1 -1
  161. package/src/sap/m/Panel.js +1 -1
  162. package/src/sap/m/PlanningCalendar.js +37 -12
  163. package/src/sap/m/PlanningCalendarHeader.js +1 -1
  164. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  165. package/src/sap/m/PlanningCalendarRow.js +1 -1
  166. package/src/sap/m/PlanningCalendarView.js +1 -1
  167. package/src/sap/m/Popover.js +5 -4
  168. package/src/sap/m/ProgressIndicator.js +1 -1
  169. package/src/sap/m/PullToRefresh.js +1 -1
  170. package/src/sap/m/QuickView.js +1 -1
  171. package/src/sap/m/QuickViewBase.js +1 -1
  172. package/src/sap/m/QuickViewCard.js +1 -1
  173. package/src/sap/m/QuickViewGroup.js +1 -1
  174. package/src/sap/m/QuickViewGroupElement.js +1 -1
  175. package/src/sap/m/QuickViewPage.js +1 -1
  176. package/src/sap/m/RadioButton.js +3 -3
  177. package/src/sap/m/RadioButtonGroup.js +1 -1
  178. package/src/sap/m/RangeSlider.js +1 -1
  179. package/src/sap/m/RangeSliderRenderer.js +15 -8
  180. package/src/sap/m/RatingIndicator.js +4 -3
  181. package/src/sap/m/ResponsivePopover.js +13 -7
  182. package/src/sap/m/ResponsiveScale.js +1 -1
  183. package/src/sap/m/ScrollBar.js +1 -1
  184. package/src/sap/m/ScrollContainer.js +1 -1
  185. package/src/sap/m/SearchField.js +1 -1
  186. package/src/sap/m/SegmentedButton.js +1 -1
  187. package/src/sap/m/SegmentedButtonItem.js +1 -1
  188. package/src/sap/m/Select.js +1 -1
  189. package/src/sap/m/SelectDialog.js +5 -7
  190. package/src/sap/m/SelectDialogBase.js +1 -1
  191. package/src/sap/m/SelectList.js +1 -1
  192. package/src/sap/m/SelectionDetails.js +1 -1
  193. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  194. package/src/sap/m/SelectionDetailsItem.js +1 -1
  195. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  196. package/src/sap/m/Shell.js +1 -1
  197. package/src/sap/m/SimpleFixFlex.js +1 -1
  198. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  199. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  200. package/src/sap/m/SinglePlanningCalendarGrid.js +2 -2
  201. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +3 -2
  202. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  203. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  204. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  205. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  206. package/src/sap/m/SlideTile.js +7 -9
  207. package/src/sap/m/Slider.js +1 -1
  208. package/src/sap/m/SliderTooltip.js +1 -1
  209. package/src/sap/m/SliderTooltipBase.js +1 -1
  210. package/src/sap/m/SliderTooltipContainer.js +1 -1
  211. package/src/sap/m/SplitApp.js +1 -1
  212. package/src/sap/m/SplitButton.js +1 -1
  213. package/src/sap/m/SplitContainer.js +4 -2
  214. package/src/sap/m/StandardDynamicDateOption.js +1 -1
  215. package/src/sap/m/StandardListItem.js +1 -1
  216. package/src/sap/m/StandardTile.js +1 -1
  217. package/src/sap/m/StandardTreeItem.js +1 -1
  218. package/src/sap/m/StepInput.js +1 -1
  219. package/src/sap/m/SuggestionItem.js +1 -1
  220. package/src/sap/m/SuggestionsPopover.js +5 -5
  221. package/src/sap/m/Switch.js +1 -1
  222. package/src/sap/m/TabContainer.js +10 -4
  223. package/src/sap/m/TabContainerItem.js +1 -1
  224. package/src/sap/m/TabStrip.js +2 -2
  225. package/src/sap/m/TabStripItem.js +1 -1
  226. package/src/sap/m/Table.js +35 -4
  227. package/src/sap/m/TablePersoController.js +1 -1
  228. package/src/sap/m/TablePersoDialog.js +1 -1
  229. package/src/sap/m/TablePersoProvider.js +1 -1
  230. package/src/sap/m/TableSelectDialog.js +5 -7
  231. package/src/sap/m/Text.js +1 -1
  232. package/src/sap/m/TextArea.js +1 -1
  233. package/src/sap/m/Tile.js +1 -1
  234. package/src/sap/m/TileContainer.js +1 -1
  235. package/src/sap/m/TileContent.js +4 -4
  236. package/src/sap/m/TimePicker.js +1 -1
  237. package/src/sap/m/TimePickerClock.js +1 -1
  238. package/src/sap/m/TimePickerClocks.js +1 -1
  239. package/src/sap/m/TimePickerInputs.js +1 -1
  240. package/src/sap/m/TimePickerInternals.js +1 -1
  241. package/src/sap/m/TimePickerSlider.js +1 -1
  242. package/src/sap/m/TimePickerSliders.js +1 -1
  243. package/src/sap/m/Title.js +1 -1
  244. package/src/sap/m/TitlePropagationSupport.js +1 -1
  245. package/src/sap/m/ToggleButton.js +1 -1
  246. package/src/sap/m/Token.js +1 -1
  247. package/src/sap/m/Tokenizer.js +1 -1
  248. package/src/sap/m/Toolbar.js +1 -1
  249. package/src/sap/m/ToolbarLayoutData.js +1 -1
  250. package/src/sap/m/ToolbarRenderer.js +8 -0
  251. package/src/sap/m/ToolbarSeparator.js +1 -1
  252. package/src/sap/m/ToolbarSpacer.js +1 -1
  253. package/src/sap/m/Tree.js +17 -1
  254. package/src/sap/m/TreeItemBase.js +1 -1
  255. package/src/sap/m/UploadCollection.js +1 -1
  256. package/src/sap/m/UploadCollectionItem.js +1 -1
  257. package/src/sap/m/UploadCollectionParameter.js +1 -1
  258. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  259. package/src/sap/m/VBox.js +1 -1
  260. package/src/sap/m/ValueStateHeader.js +9 -4
  261. package/src/sap/m/VariantItem.js +99 -27
  262. package/src/sap/m/VariantManagement.js +196 -90
  263. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  264. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  265. package/src/sap/m/ViewSettingsDialog.js +44 -44
  266. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  267. package/src/sap/m/ViewSettingsItem.js +1 -1
  268. package/src/sap/m/VisibleItem.js +1 -1
  269. package/src/sap/m/WheelSlider.js +1 -1
  270. package/src/sap/m/WheelSliderContainer.js +1 -1
  271. package/src/sap/m/Wizard.js +6 -6
  272. package/src/sap/m/WizardProgressNavigator.js +1 -1
  273. package/src/sap/m/WizardStep.js +1 -1
  274. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  275. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  276. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  277. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  278. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  279. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  280. package/src/sap/m/designtime/IconTabFilter.designtime.js +1 -1
  281. package/src/sap/m/designtime/VariantManagement.designtime.js +0 -6
  282. package/src/sap/m/designtime/messagebundle_mk.properties +182 -0
  283. package/src/sap/m/designtime/messagebundle_sh.properties +3 -3
  284. package/src/sap/m/flexibility/EngineFlex.js +5 -0
  285. package/src/sap/m/inputUtils/highlightItemsWithContains.js +82 -0
  286. package/src/sap/m/library.js +76 -136
  287. package/src/sap/m/messagebundle.properties +37 -6
  288. package/src/sap/m/messagebundle_ar.properties +46 -2
  289. package/src/sap/m/messagebundle_bg.properties +49 -5
  290. package/src/sap/m/messagebundle_ca.properties +47 -3
  291. package/src/sap/m/messagebundle_cs.properties +46 -2
  292. package/src/sap/m/messagebundle_cy.properties +46 -2
  293. package/src/sap/m/messagebundle_da.properties +46 -2
  294. package/src/sap/m/messagebundle_de.properties +46 -2
  295. package/src/sap/m/messagebundle_el.properties +48 -4
  296. package/src/sap/m/messagebundle_en.properties +23 -6
  297. package/src/sap/m/messagebundle_en_GB.properties +46 -2
  298. package/src/sap/m/messagebundle_es.properties +46 -2
  299. package/src/sap/m/messagebundle_es_MX.properties +46 -2
  300. package/src/sap/m/messagebundle_et.properties +44 -0
  301. package/src/sap/m/messagebundle_fi.properties +46 -2
  302. package/src/sap/m/messagebundle_fr.properties +46 -2
  303. package/src/sap/m/messagebundle_fr_CA.properties +46 -2
  304. package/src/sap/m/messagebundle_hi.properties +48 -4
  305. package/src/sap/m/messagebundle_hr.properties +46 -2
  306. package/src/sap/m/messagebundle_hu.properties +51 -7
  307. package/src/sap/m/messagebundle_id.properties +48 -4
  308. package/src/sap/m/messagebundle_it.properties +44 -0
  309. package/src/sap/m/messagebundle_iw.properties +46 -2
  310. package/src/sap/m/messagebundle_ja.properties +44 -0
  311. package/src/sap/m/messagebundle_kk.properties +60 -16
  312. package/src/sap/m/messagebundle_ko.properties +44 -0
  313. package/src/sap/m/messagebundle_lt.properties +46 -2
  314. package/src/sap/m/messagebundle_lv.properties +57 -13
  315. package/src/sap/m/messagebundle_mk.properties +1869 -0
  316. package/src/sap/m/messagebundle_ms.properties +46 -2
  317. package/src/sap/m/messagebundle_nl.properties +44 -0
  318. package/src/sap/m/messagebundle_no.properties +47 -3
  319. package/src/sap/m/messagebundle_pl.properties +46 -2
  320. package/src/sap/m/messagebundle_pt.properties +44 -0
  321. package/src/sap/m/messagebundle_pt_PT.properties +44 -0
  322. package/src/sap/m/messagebundle_ro.properties +46 -2
  323. package/src/sap/m/messagebundle_ru.properties +48 -4
  324. package/src/sap/m/messagebundle_sh.properties +149 -105
  325. package/src/sap/m/messagebundle_sk.properties +46 -2
  326. package/src/sap/m/messagebundle_sl.properties +62 -18
  327. package/src/sap/m/messagebundle_sv.properties +50 -6
  328. package/src/sap/m/messagebundle_th.properties +44 -0
  329. package/src/sap/m/messagebundle_tr.properties +49 -5
  330. package/src/sap/m/messagebundle_uk.properties +59 -15
  331. package/src/sap/m/messagebundle_vi.properties +46 -2
  332. package/src/sap/m/messagebundle_zh_CN.properties +44 -0
  333. package/src/sap/m/messagebundle_zh_TW.properties +46 -2
  334. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  335. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  336. package/src/sap/m/p13n/BasePanel.js +13 -3
  337. package/src/sap/m/p13n/Container.js +1 -1
  338. package/src/sap/m/p13n/Engine.js +1 -1
  339. package/src/sap/m/p13n/FlexUtil.js +0 -41
  340. package/src/sap/m/p13n/GroupController.js +1 -1
  341. package/src/sap/m/p13n/GroupPanel.js +1 -1
  342. package/src/sap/m/p13n/Popup.js +16 -1
  343. package/src/sap/m/p13n/QueryPanel.js +1 -1
  344. package/src/sap/m/p13n/SelectionController.js +457 -423
  345. package/src/sap/m/p13n/SelectionPanel.js +1 -1
  346. package/src/sap/m/p13n/SortController.js +1 -1
  347. package/src/sap/m/p13n/SortPanel.js +4 -3
  348. package/src/sap/m/p13n/handler/xConfigHandler.js +18 -5
  349. package/src/sap/m/p13n/modules/DefaultProviderRegistry.js +1 -1
  350. package/src/sap/m/p13n/modules/StateHandlerRegistry.js +1 -1
  351. package/src/sap/m/p13n/modules/UIManager.js +1 -1
  352. package/src/sap/m/p13n/modules/xConfigAPI.js +1 -1
  353. package/src/sap/m/plugins/CellSelector.js +172 -153
  354. package/src/sap/m/plugins/ColumnResizer.js +9 -2
  355. package/src/sap/m/plugins/CopyProvider.js +21 -10
  356. package/src/sap/m/plugins/DataStateIndicator.js +1 -1
  357. package/src/sap/m/plugins/PasteProvider.js +1 -1
  358. package/src/sap/m/plugins/PluginBase.js +1 -1
  359. package/src/sap/m/routing/Target.js +3 -3
  360. package/src/sap/m/routing/Targets.js +3 -3
  361. package/src/sap/m/semantic/AddAction.js +1 -1
  362. package/src/sap/m/semantic/CancelAction.js +1 -1
  363. package/src/sap/m/semantic/DeleteAction.js +1 -1
  364. package/src/sap/m/semantic/DetailPage.js +1 -1
  365. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  366. package/src/sap/m/semantic/EditAction.js +1 -1
  367. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  368. package/src/sap/m/semantic/FilterAction.js +1 -1
  369. package/src/sap/m/semantic/FilterSelect.js +1 -1
  370. package/src/sap/m/semantic/FlagAction.js +1 -1
  371. package/src/sap/m/semantic/ForwardAction.js +1 -1
  372. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  373. package/src/sap/m/semantic/GroupAction.js +1 -1
  374. package/src/sap/m/semantic/GroupSelect.js +1 -1
  375. package/src/sap/m/semantic/MainAction.js +1 -1
  376. package/src/sap/m/semantic/MasterPage.js +1 -1
  377. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  378. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  379. package/src/sap/m/semantic/NegativeAction.js +1 -1
  380. package/src/sap/m/semantic/OpenInAction.js +1 -1
  381. package/src/sap/m/semantic/PositiveAction.js +1 -1
  382. package/src/sap/m/semantic/PrintAction.js +1 -1
  383. package/src/sap/m/semantic/SaveAction.js +1 -1
  384. package/src/sap/m/semantic/Segment.js +1 -1
  385. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  386. package/src/sap/m/semantic/SemanticButton.js +1 -1
  387. package/src/sap/m/semantic/SemanticConfiguration.js +1 -1
  388. package/src/sap/m/semantic/SemanticControl.js +1 -1
  389. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  390. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  391. package/src/sap/m/semantic/SemanticPage.js +1 -1
  392. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  393. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  394. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  395. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  396. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  397. package/src/sap/m/semantic/ShareMenu.js +1 -1
  398. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  399. package/src/sap/m/semantic/SortAction.js +1 -1
  400. package/src/sap/m/semantic/SortSelect.js +1 -1
  401. package/src/sap/m/table/ColumnWidthController.js +177 -0
  402. package/src/sap/m/table/Util.js +1 -1
  403. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  404. package/src/sap/m/table/columnmenu/Entry.js +1 -1
  405. package/src/sap/m/table/columnmenu/Item.js +1 -1
  406. package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
  407. package/src/sap/m/table/columnmenu/Menu.js +17 -13
  408. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  409. package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
  410. package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
  411. package/src/sap/m/table/columnmenu/QuickGroup.js +5 -1
  412. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -1
  413. package/src/sap/m/table/columnmenu/QuickSort.js +1 -1
  414. package/src/sap/m/table/columnmenu/QuickSortItem.js +2 -2
  415. package/src/sap/m/table/columnmenu/QuickTotal.js +5 -1
  416. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -1
  417. package/src/sap/m/themes/base/Avatar.less +0 -1
  418. package/src/sap/m/themes/base/BarBase.less +1 -1
  419. package/src/sap/m/themes/base/BusyIndicator.less +0 -10
  420. package/src/sap/m/themes/base/ExpandableText.less +6 -0
  421. package/src/sap/m/themes/base/GenericTile.less +36 -0
  422. package/src/sap/m/themes/base/LinkTileContent.less +17 -0
  423. package/src/sap/m/themes/base/MenuButton.less +1 -1
  424. package/src/sap/m/themes/base/NotificationListBase.less +3 -3
  425. package/src/sap/m/themes/base/ObjectStatus.less +241 -1
  426. package/src/sap/m/themes/base/RadioButton.less +1 -1
  427. package/src/sap/m/themes/base/SearchField.less +2 -1
  428. package/src/sap/m/themes/base/SplitButton.less +0 -1
  429. package/src/sap/m/themes/base/Text.less +4 -1
  430. package/src/sap/m/themes/base/Toolbar.less +7 -14
  431. package/src/sap/m/themes/base/ValueStateHeader.less +4 -0
  432. package/src/sap/m/themes/base/library.source.less +1 -0
  433. package/src/sap/m/upload/ActionsPlaceholder.js +49 -0
  434. package/src/sap/m/upload/Column.js +58 -0
  435. package/src/sap/m/upload/FilePreviewDialog.js +22 -3
  436. package/src/sap/m/upload/FilterPanel.js +280 -0
  437. package/src/sap/m/upload/UploadSet.js +11 -6
  438. package/src/sap/m/upload/UploadSetItem.js +6 -5
  439. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
  440. package/src/sap/m/upload/UploadSetwithTable.js +487 -93
  441. package/src/sap/m/upload/UploadSetwithTableItem.js +26 -11
  442. package/src/sap/m/upload/Uploader.js +3 -0
  443. package/src/sap/m/upload/UploaderTableItem.js +4 -1
  444. package/src/sap/m/upload/p13n/PersManager.js +251 -0
  445. package/src/sap/m/upload/p13n/flexibility/UploadSetwithTable.flexibility.js +32 -0
  446. package/src/sap/m/upload/p13n/handlers/BaseConfigHandler.js +44 -0
  447. package/src/sap/m/upload/p13n/handlers/ChangeHandler.js +98 -0
  448. package/src/sap/m/upload/p13n/handlers/ColumnConfigHandler.js +57 -0
  449. package/src/sap/m/upload/p13n/handlers/ColumnsStateChangeHandler.js +43 -0
  450. package/src/sap/m/upload/p13n/handlers/FilterConfigHandler.js +71 -0
  451. package/src/sap/m/upload/p13n/handlers/FilterStateChangeHandler.js +65 -0
  452. package/src/sap/m/upload/p13n/handlers/GroupConfigHandler.js +57 -0
  453. package/src/sap/m/upload/p13n/handlers/GroupStateChangeHandler.js +46 -0
  454. package/src/sap/m/upload/p13n/handlers/SortConfigHandler.js +57 -0
  455. package/src/sap/m/upload/p13n/handlers/SortStateChangeHandler.js +48 -0
  456. package/src/sap/m/upload/p13n/mediator/BaseMediator.js +183 -0
  457. package/src/sap/m/upload/p13n/mediator/ColumnsMediator.js +210 -0
  458. package/src/sap/m/upload/p13n/mediator/FilterMediator.js +196 -0
  459. package/src/sap/m/upload/p13n/mediator/GroupMediator.js +192 -0
  460. package/src/sap/m/upload/p13n/mediator/SortMediator.js +200 -0
  461. package/src/sap/m/upload/p13n/modules/CustomDataConfig.js +100 -0
  462. package/src/sap/m/upload/p13n/modules/PersPopupManager.js +76 -0
@@ -51,7 +51,7 @@ sap.ui.define([
51
51
  * @extends sap.m.p13n.BasePanel
52
52
  *
53
53
  * @author SAP SE
54
- * @version 1.119.0
54
+ * @version 1.120.0
55
55
  *
56
56
  * @public
57
57
  * @since 1.96
@@ -22,7 +22,7 @@ sap.ui.define([
22
22
  * @extends sap.m.p13n.SelectionController
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.119.0
25
+ * @version 1.120.0
26
26
  * @public
27
27
  * @alias sap.m.p13n.SortController
28
28
  */
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  * @extends sap.m.p13n.QueryPanel
22
22
  *
23
23
  * @author SAP SE
24
- * @version 1.119.0
24
+ * @version 1.120.0
25
25
  *
26
26
  * @public
27
27
  * @since 1.96
@@ -99,8 +99,9 @@ sap.ui.define([
99
99
  icon: "sap-icon://sort-descending"
100
100
  })
101
101
  ],
102
- select: function (oEvt) {
103
- var sSortOrder = oEvt.getParameter("key");
102
+ selectionChange: function (oEvt) {
103
+ var oItem = oEvt.getParameter("item");
104
+ var sSortOrder = oItem.getKey();
104
105
  var oText = oEvt.getSource().getParent().getContent()[2];
105
106
  oText.setText(this._getSortOrderText(sSortOrder === "desc"));
106
107
  var sKey = oEvt.oSource.getParent().getContent()[0].getSelectedItem().getKey();
@@ -56,6 +56,15 @@ sap.ui.define([
56
56
  }
57
57
  }
58
58
 
59
+ function getOperationType(sChangeType) {
60
+ const aChangeTypes = ["add", "remove", "move", "set"];
61
+
62
+ return aChangeTypes.find((sType) => {
63
+ return sChangeType.indexOf(sType) === 0;
64
+ });
65
+
66
+ }
67
+
59
68
  /**
60
69
  * Creates a changehandler specific to the provided aggregation and property name,
61
70
  * to enhance the xConfig object for a given mdc control instance.
@@ -88,15 +97,20 @@ sap.ui.define([
88
97
  })
89
98
  .then(function(oPriorAggregationConfig) {
90
99
 
91
- var sOperation = oChange.getChangeType().indexOf("add") > -1 ? "add" : "remove";
92
- sOperation = oChange.getChangeType().indexOf("move") === 0 ? "move" : sOperation;
100
+ var sOperation = getOperationType(oChange.getChangeType());
93
101
 
94
102
  sAffectedAggregation = oChange.getContent().targetAggregation;
95
103
 
96
104
  var oRevertData = {
97
105
  key: oChange.getContent().key
98
106
  };
99
- oRevertData.value = sOperation !== "add";
107
+
108
+ if (sOperation !== "set") {
109
+ //In case there is a add/remove operation, flag the revert data as the opposite of the current action (add will be removed as revert and vice versa)
110
+ oRevertData.value = sOperation !== "add";
111
+ } else {
112
+ oRevertData.value = null;
113
+ }
100
114
 
101
115
  var aCurrentState;
102
116
  if (sOperation === "move") {
@@ -150,8 +164,7 @@ sap.ui.define([
150
164
  },
151
165
  revertChange: function (oChange, oControl, mPropertyBag) {
152
166
 
153
- var sOperation = oChange.getChangeType().indexOf("add") > -1 ? "remove" : "add";
154
- sOperation = oChange.getChangeType().indexOf("move") === 0 ? "move" : sOperation;
167
+ var sOperation = getOperationType(oChange.getChangeType());
155
168
 
156
169
  sAffectedAggregation = oChange.getContent().targetAggregation;
157
170
 
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @extends sap.ui.base.Object
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.119.0
29
+ * @version 1.120.0
30
30
  *
31
31
  * @private
32
32
  * @since 1.104
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  * @extends sap.ui.base.EventProvider
22
22
  *
23
23
  * @author SAP SE
24
- * @version 1.119.0
24
+ * @version 1.120.0
25
25
  *
26
26
  * @private
27
27
  * @since 1.104
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @extends sap.ui.base.Object
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.119.0
30
+ * @version 1.120.0
31
31
  *
32
32
  * @private
33
33
  *
@@ -212,7 +212,7 @@ sap.ui.define([
212
212
  oConfig.aggregations[sAggregationName][sPropertyInfoKey] = {};
213
213
  }
214
214
 
215
- if (vValue !== null) {
215
+ if (vValue !== null || (vValue && vValue.hasOwnProperty("value") && vValue.value !== null)) {
216
216
 
217
217
  switch (oModificationPayload.operation) {
218
218
  case "move":
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * </ul>
45
45
  *
46
46
  * @extends sap.ui.core.Element
47
- * @version 1.119.0
47
+ * @version 1.120.0
48
48
  * @author SAP SE
49
49
  *
50
50
  * @public
@@ -69,33 +69,135 @@ sap.ui.define([
69
69
  * </ul>
70
70
  * In other cases, it is recommended to set the <code>rangeLimit</code> to at least double the value of the {@link sap.ui.table.Table#getThreshold threshold} property.
71
71
  */
72
- rangeLimit: {type: "int", group: "Behavior", defaultValue: 200}
72
+ rangeLimit: {type: "int", group: "Behavior", defaultValue: 200},
73
+ /**
74
+ * Indicates whether this plugin is active or not.
75
+ */
76
+ enabled: {type: "boolean", defaultValue: true}
73
77
  },
74
78
  events: {}
75
79
  }
76
80
  });
77
81
 
78
- /*
79
- CellSelector Interactions
80
- Keyboard Usage:
81
- - SPACE: Select the currently focused cell. If pressed inside a selection block, removes selection.
82
- - SHIFT + ARROW_KEYS: Adjusts an already existing selection block OR creates a new one, if used outside of selection block.
83
- - SHIFT + SPACE: Transforms current selection block into row selection. Result depends on selection mode applied to table.
84
- - CTRL + SPACE: Extends selection to all cells of the column (up to the range limit).
85
- - CTRL + SHIFT + A: Clears selection
86
- Mouse Usage:
87
- - CTRL + Click: Select cell. If click is on selection block, removes selection block.
88
- - Mousedown + Movement: Selects the cell where mouse was pressed down. If move goes outside, extends selection.
89
- - Borders: Extend/reduce selection either horizontally or vertically.
90
- - Edge: Extend/reduce selection freely.
91
- */
92
-
93
- CellSelector.prototype.isApplicable = function() {
94
- return PluginBase.prototype.isApplicable.apply(this, arguments) && this.getConfig("isApplicable", this.getControl());
82
+ /**
83
+ * Event Delegate that containts events, that need to be executed after control events.
84
+ */
85
+ const EventDelegate = {
86
+ onkeydown: function(oEvent) {
87
+ if (!this._bSelecting) {
88
+ return;
89
+ }
90
+
91
+ if (isKeyCombination(oEvent, KeyCodes.A, true, true)
92
+ || (isKeyCombination(oEvent, KeyCodes.A, false, true) && oEvent.isMarked(this.getConfig("eventClearedAll")))) {
93
+ if (isCell(oEvent.target, this.getConfig("tableCell"))) {
94
+ this.removeSelection();
95
+ oEvent.preventDefault();
96
+ }
97
+ }
98
+ }
99
+ };
100
+
101
+ /**
102
+ * Delegate containing events, that need to be processed before control events.
103
+ */
104
+ const PriorityDelegate = {
105
+ onBeforeRendering: function() {
106
+ this._iRtl = Core.getConfiguration().getRTL() ? -1 : 1;
107
+ if (this._oResizer) {
108
+ // remove resizer, as due to rerendering table element may be gone
109
+ this._oResizer.remove();
110
+ this._oResizer = null;
111
+ }
112
+ },
113
+ onAfterRendering: function() {
114
+ this._deregisterEvents();
115
+ this._registerEvents();
116
+ },
117
+ onsapspace: function (oEvent) {
118
+ if (!this._isSelectableCell(oEvent.target)) {
119
+ return;
120
+ }
121
+ this._startSelection(oEvent, false);
122
+ },
123
+ onsapupmodifiers: function(oEvent) {
124
+ this._onsaparrowmodifiers(oEvent, DIRECTION.ROW, -1, 0);
125
+ },
126
+ onsapdownmodifiers: function(oEvent) {
127
+ this._onsaparrowmodifiers(oEvent, DIRECTION.ROW, 1, 0);
128
+ },
129
+ onsapleftmodifiers: function(oEvent) {
130
+ this._onsaparrowmodifiers(oEvent, DIRECTION.COL, 0, -1);
131
+ },
132
+ onsaprightmodifiers: function(oEvent) {
133
+ this._onsaparrowmodifiers(oEvent, DIRECTION.COL, 0, 1);
134
+ },
135
+ onsapescape: function(oEvent) {
136
+ if (oEvent.isMarked()) {
137
+ return;
138
+ }
139
+
140
+ if (this._bSelecting && isCell(oEvent.target, this.getConfig("tableCell"))) {
141
+ this.removeSelection();
142
+ oEvent.preventDefault();
143
+ oEvent.stopPropagation();
144
+ }
145
+ },
146
+ onkeyup: function(oEvent) {
147
+ if (oEvent.isMarked()) {
148
+ return;
149
+ }
150
+
151
+ var mBounds = this._bSelecting ? this._getNormalizedBounds(this._oSession.mSource, this._oSession.mTarget) : undefined;
152
+ if (isKeyCombination(oEvent, KeyCodes.SPACE, true, false)) {
153
+ if (this._inSelection(oEvent.target)) {
154
+ var oInfo = this.getConfig("getCellInfo", this.getControl(), oEvent.target);
155
+ this.getConfig("selectRows", this.getControl(), mBounds.from.rowIndex, mBounds.to.rowIndex, oInfo.rowIndex) && this.removeSelection();
156
+ oEvent.setMarked();
157
+ }
158
+
159
+ oEvent.preventDefault();
160
+ } else if (this._bSelecting && isKeyCombination(oEvent, KeyCodes.SPACE, false, true)) {
161
+ if (!this._inSelection(oEvent.target)) {
162
+ // If focus is on cell outside of selection, select focused column
163
+ var oInfo = this.getConfig("getCellInfo", this.getControl(), oEvent.target);
164
+ mBounds.from.colIndex = mBounds.to.colIndex = oInfo.colIndex;
165
+ }
166
+ mBounds.from.rowIndex = 0;
167
+ mBounds.to.rowIndex = Infinity;
168
+ this._selectCells(mBounds.from, mBounds.to);
169
+
170
+ oEvent.preventDefault();
171
+ }
172
+ },
173
+ onmousedown: function(oEvent) {
174
+ if (oEvent.isMarked && oEvent.isMarked()) {
175
+ return;
176
+ }
177
+
178
+ if (oEvent.ctrlKey || oEvent.metaKey) {
179
+ this._startSelection(oEvent);
180
+ }
181
+
182
+ this._bMouseDown = true;
183
+ var oSelectableCell = this._getSelectableCell(oEvent.target);
184
+ if (oSelectableCell) {
185
+ this._mClickedCell = this.getConfig("getCellInfo", this.getControl(), oSelectableCell);
186
+ }
187
+ },
188
+ onmouseup: function(oEvent) {
189
+ this._bMouseDown = false;
190
+ this._bBorderDown = false;
191
+ this._mClickedCell = undefined;
192
+ this._bScrolling = false;
193
+ this._clearScroller();
194
+ }
95
195
  };
96
196
 
97
197
  CellSelector.prototype.onActivate = function (oControl) {
98
- oControl.addDelegate(this, true, this);
198
+ oControl.addDelegate(PriorityDelegate, true, this);
199
+ oControl.addDelegate(EventDelegate, false, this);
200
+
99
201
  this._oSession = { cellRefs: [] };
100
202
  this._mTimeouts = {};
101
203
  this._fnControlUpdate = function(oEvent) {
@@ -108,14 +210,16 @@ sap.ui.define([
108
210
  this._fnOnMouseEnter = this._onmouseenter.bind(this);
109
211
  this._fnOnMouseOut = this._onmouseout.bind(this);
110
212
  this._fnOnMouseMove = this._onmousemove.bind(this);
111
- this._fnOnMouseUp = this.onmouseup.bind(this);
213
+ this._fnOnMouseUp = PriorityDelegate.onmouseup.bind(this);
112
214
 
113
215
  // Register Events, as adding dependent does not trigger rerendering
114
216
  this._registerEvents();
115
217
  };
116
218
 
117
219
  CellSelector.prototype.onDeactivate = function (oControl) {
118
- oControl.removeDelegate(this, this);
220
+ oControl.removeDelegate(PriorityDelegate, this);
221
+ oControl.removeDelegate(EventDelegate, this);
222
+
119
223
  if (this._oSession) {
120
224
  this.removeSelection();
121
225
  this._oSession = null;
@@ -136,20 +240,6 @@ sap.ui.define([
136
240
  PluginBase.prototype.exit.call(this);
137
241
  };
138
242
 
139
- CellSelector.prototype.onBeforeRendering = function() {
140
- this._iRtl = Core.getConfiguration().getRTL() ? -1 : 1;
141
- if (this._oResizer) {
142
- // remove resizer, as due to rerendering table element may be gone
143
- this._oResizer.remove();
144
- this._oResizer = null;
145
- }
146
- };
147
-
148
- CellSelector.prototype.onAfterRendering = function() {
149
- this._deregisterEvents();
150
- this._registerEvents();
151
- };
152
-
153
243
  CellSelector.prototype._registerEvents = function() {
154
244
  if (this.getControl()) {
155
245
  this.getControl().attachEvent(this.getConfig("scrollEvent"), this._fnControlUpdate);
@@ -221,28 +311,8 @@ sap.ui.define([
221
311
  return this.getConfig("rowContexts", this.getControl(), mSelectionRange.from.rowIndex, mSelectionRange.to.rowIndex, this.getRangeLimit());
222
312
  };
223
313
 
224
- CellSelector.prototype.onsapspace = function (oEvent) {
225
- this._startSelection(oEvent, false);
226
- };
227
-
228
- CellSelector.prototype.onsapupmodifiers = function(oEvent) {
229
- this._onsaparrowmodifiers(oEvent, DIRECTION.ROW, -1, 0);
230
- };
231
-
232
- CellSelector.prototype.onsapdownmodifiers = function(oEvent) {
233
- this._onsaparrowmodifiers(oEvent, DIRECTION.ROW, 1, 0);
234
- };
235
-
236
- CellSelector.prototype.onsapleftmodifiers = function(oEvent) {
237
- this._onsaparrowmodifiers(oEvent, DIRECTION.COL, 0, -1);
238
- };
239
-
240
- CellSelector.prototype.onsaprightmodifiers = function(oEvent) {
241
- this._onsaparrowmodifiers(oEvent, DIRECTION.COL, 0, 1);
242
- };
243
-
244
314
  CellSelector.prototype._onsaparrowmodifiers = function(oEvent, sDirectionType, iRowDiff, iColDiff) {
245
- if (oEvent.isMarked() || !oEvent.shiftKey) {
315
+ if (!this._shouldBeHandled(oEvent) || !oEvent.shiftKey || !this._isSelectableCell(oEvent.target)) {
246
316
  return;
247
317
  }
248
318
 
@@ -253,6 +323,9 @@ sap.ui.define([
253
323
 
254
324
  var oInfo = this.getConfig("getCellInfo", this.getControl(), oSelectableCell);
255
325
  if (!this._inSelection(oEvent.target) || !this._oSession.mSource || !this._oSession.mTarget) {
326
+ if (this.getConfig("isRowSelected", this.getControl(), oInfo.rowIndex)) {
327
+ return;
328
+ }
256
329
  // If not in selection block, start new selection block
257
330
  this._oSession.mSource = this._oSession.mTarget = oInfo;
258
331
  }
@@ -269,86 +342,11 @@ sap.ui.define([
269
342
  || sDirectionType == DIRECTION.COL && (oInfo.colIndex == mBounds.from.colIndex || oInfo.colIndex == mBounds.to.colIndex)) {
270
343
  this._bSelecting = true;
271
344
  this._selectCells(from, to);
272
-
273
- oEvent.preventDefault();
274
- oEvent.setMarked();
275
- oEvent.setMarked("sapUiTableSkipItemNavigation", true); // Required to prevent item navigation in GridTable for MultiToggle
276
- }
277
- };
278
-
279
- // To be implemented. See internal documentation.
280
- CellSelector.prototype.onsaphomemodifiers = function (oEvent) {};
281
-
282
- // To be implemented. See internal documentation.
283
- CellSelector.prototype.onsapendmodifiers = function (oEvent) {};
284
-
285
- /**
286
- * Handles:
287
- * - CTRL + SHIFT + A
288
- * - CTRL + A
289
- * @param {sap.ui.base.Event} oEvent event instance
290
- */
291
- CellSelector.prototype.onkeydown = function (oEvent) {
292
- if (!this._bSelecting || oEvent.isMarked()) {
293
- return;
294
- }
295
-
296
- if (isKeyCombination(oEvent, KeyCodes.A, true, true) || isKeyCombination(oEvent, KeyCodes.A, false, false)) {
297
- this.removeSelection();
298
- oEvent.preventDefault();
299
- }
300
- };
301
-
302
- /**
303
- * Handles:
304
- * - SPACE + SHIFT
305
- * - SPACE + CTRL/CMD
306
- * @param {sap.ui.base.Event} oEvent event instance
307
- */
308
- CellSelector.prototype.onkeyup = function(oEvent) {
309
- if (oEvent.isMarked()) {
310
- return;
311
- }
312
-
313
- var mBounds = this._bSelecting ? this._getNormalizedBounds(this._oSession.mSource, this._oSession.mTarget) : undefined;
314
- if (isKeyCombination(oEvent, KeyCodes.SPACE, true, false)) {
315
- if (this._inSelection(oEvent.target)) {
316
- var oInfo = this.getConfig("getCellInfo", this.getControl(), oEvent.target);
317
- this.getConfig("selectRows", this.getControl(), mBounds.from.rowIndex, mBounds.to.rowIndex, oInfo.rowIndex) && this.removeSelection();
318
- oEvent.setMarked();
319
- }
320
-
321
- oEvent.preventDefault();
322
- } else if (this._bSelecting && isKeyCombination(oEvent, KeyCodes.SPACE, false, true)) {
323
- if (!this._inSelection(oEvent.target)) {
324
- // If focus is on cell outside of selection, select focused column
325
- var oInfo = this.getConfig("getCellInfo", this.getControl(), oEvent.target);
326
- mBounds.from.colIndex = mBounds.to.colIndex = oInfo.colIndex;
327
- }
328
- mBounds.from.rowIndex = 0;
329
- mBounds.to.rowIndex = Infinity;
330
- this._selectCells(mBounds.from, mBounds.to);
331
-
332
- oEvent.preventDefault();
333
- }
334
- };
335
-
336
- // Mouse Navigation
337
-
338
- CellSelector.prototype.onmousedown = function(oEvent) {
339
- if (oEvent.isMarked && oEvent.isMarked()) {
340
- return;
341
- }
342
-
343
- if (oEvent.ctrlKey || oEvent.metaKey) {
344
- this._startSelection(oEvent);
345
345
  }
346
346
 
347
- this._bMouseDown = true;
348
- var oSelectableCell = this._getSelectableCell(oEvent.target);
349
- if (oSelectableCell) {
350
- this._mClickedCell = this.getConfig("getCellInfo", this.getControl(), oSelectableCell);
351
- }
347
+ oEvent.setMarked();
348
+ oEvent.preventDefault();
349
+ oEvent.stopPropagation();
352
350
  };
353
351
 
354
352
  /**
@@ -469,14 +467,6 @@ sap.ui.define([
469
467
  }
470
468
  };
471
469
 
472
- CellSelector.prototype.onmouseup = function(oEvent) {
473
- this._bMouseDown = false;
474
- this._bBorderDown = false;
475
- this._mClickedCell = undefined;
476
- this._bScrolling = false;
477
- this._clearScroller();
478
- };
479
-
480
470
  CellSelector.prototype._onborderdown = function(oEvent) {
481
471
  this._oSession.border = Object.assign({}, this._oCurrentBorder);
482
472
  this._bBorderDown = true;
@@ -490,7 +480,11 @@ sap.ui.define([
490
480
  * @returns {HTMLELement|null}
491
481
  */
492
482
  CellSelector.prototype._getSelectableCell = function (oDomRef) {
493
- return oDomRef && oDomRef.closest(this.getConfig("selectableCells"));
483
+ return oDomRef?.closest(`.${this.getConfig("selectableCells")}`);
484
+ };
485
+
486
+ CellSelector.prototype._isSelectableCell = function(oDomRef) {
487
+ return oDomRef?.classList.contains(this.getConfig("selectableCells"));
494
488
  };
495
489
 
496
490
  CellSelector.prototype._inSelection = function(oTarget) {
@@ -506,7 +500,7 @@ sap.ui.define([
506
500
  };
507
501
 
508
502
  CellSelector.prototype._startSelection = function(oEvent, bMove) {
509
- if (oEvent.isMarked && oEvent.isMarked()) {
503
+ if (!this._shouldBeHandled(oEvent)) {
510
504
  return;
511
505
  }
512
506
 
@@ -661,13 +655,16 @@ sap.ui.define([
661
655
  oToRef = this.getConfig("getCellRef", this.getControl(), mBounds.to, true);
662
656
  }
663
657
 
658
+ if (!oFromRef || !oToRef) {
659
+ return;
660
+ }
661
+
664
662
  var oFromRect = oFromRef.getBoundingClientRect(),
665
663
  oToRect = oToRef.getBoundingClientRect(),
666
664
  oTableRect = this.getControl().getDomRef().getBoundingClientRect();
667
- var iOffsetLeft = this.getControl().getDomRef().offsetLeft;
668
665
 
669
666
  var mStyleMap = {
670
- x: { 0: oFromRect.left - iOffsetLeft, 1: oToRect.left + oToRect.width - iOffsetLeft },
667
+ x: { 0: oFromRect.left - oTableRect.left, 1: oToRect.left + oToRect.width - oTableRect.left },
671
668
  y: { 0: oFromRect.top - oTableRect.top, 1: oToRect.top + oToRect.height - oTableRect.top }
672
669
  };
673
670
  var mDiffMap = {
@@ -774,6 +771,15 @@ sap.ui.define([
774
771
  };
775
772
  };
776
773
 
774
+ CellSelector.prototype._shouldBeHandled = function(oEvent) {
775
+ // Handle if event is not marked and control is applicable
776
+ return !oEvent.isMarked?.() && this.getConfig("isSupported", this.getControl());
777
+ };
778
+
779
+ function isCell(oTarget, sCell) {
780
+ return oTarget.classList.contains(sCell);
781
+ }
782
+
777
783
  /**
778
784
  * Check if the given key combination applies to the event.
779
785
  * @param {sap.ui.base.Event} oEvent event instance
@@ -788,17 +794,19 @@ sap.ui.define([
788
794
 
789
795
  PluginBase.setConfigs({
790
796
  "sap.ui.table.Table": {
791
- selectableCells: ".sapUiTableDataCell",
797
+ tableCell: "sapUiTableCell",
798
+ selectableCells: "sapUiTableDataCell",
792
799
  scrollArea: "sapUiTableCtrlScr",
793
800
  scrollEvent: "_rowsUpdated",
801
+ eventClearedAll: "sapUiTableClearAll",
794
802
  /**
795
803
  * Checks if the table is compatible with cell selection.
796
804
  * @param {sap.ui.table.Table} oTable table instance
797
805
  * @returns {boolean} compatibility with cell selection
798
806
  */
799
- isApplicable: function(oTable) {
807
+ isSupported: function(oTable) {
800
808
  return !oTable.hasListeners("cellClick") && oTable.getSelectionBehavior() == "RowSelector"
801
- && !oTable.getDragDropConfig().some((oConfig) => oConfig.getSourceAggregation() == "rows");
809
+ && !oTable.getDragDropConfig().some((oConfig) => oConfig.getSourceAggregation?.() == "rows" && oConfig.getEnabled());
802
810
  },
803
811
  /**
804
812
  * Get visible columns of the table.
@@ -830,7 +838,7 @@ sap.ui.define([
830
838
  var oColumn = this.getVisibleColumns(oTable)[mPosition.colIndex];
831
839
  var oCell = oColumn && oRow.getCells()[mPosition.colIndex];
832
840
  if (oCell) {
833
- return oCell.$().closest(this.selectableCells)[0];
841
+ return oCell.$().closest(`.${this.selectableCells}`)[0];
834
842
  }
835
843
  } else if (bRange) {
836
844
  if (aRows[0].getIndex() > mPosition.rowIndex) {
@@ -838,14 +846,14 @@ sap.ui.define([
838
846
  var oColumn = this.getVisibleColumns(oTable)[mPosition.colIndex];
839
847
  var oCell = oColumn && oRow.getCells()[mPosition.colIndex];
840
848
  if (oCell) {
841
- return oCell.$().closest(this.selectableCells)[0];
849
+ return oCell.$().closest(`.${this.selectableCells}`)[0];
842
850
  }
843
851
  } else if (aRows[aRows.length - 1].getIndex() < mPosition.rowIndex) {
844
852
  oRow = aRows[aRows.length - 1];
845
853
  var oColumn = this.getVisibleColumns(oTable)[mPosition.colIndex];
846
854
  var oCell = oColumn && oRow.getCells()[mPosition.colIndex];
847
855
  if (oCell) {
848
- return oCell.$().closest(this.selectableCells)[0];
856
+ return oCell.$().closest(`.${this.selectableCells}`)[0];
849
857
  }
850
858
  }
851
859
  }
@@ -928,6 +936,17 @@ sap.ui.define([
928
936
  });
929
937
  return true;
930
938
  },
939
+ isRowSelected: function(oTable, iRow) {
940
+ var oSelectionOwner = PluginBase.getPlugin(oTable, "sap.ui.table.plugins.SelectionPlugin") || oTable;
941
+ var oRow = oTable.getRows().find(function(oRow) {
942
+ return oRow.getIndex() == iRow;
943
+ });
944
+
945
+ if (oRow) {
946
+ return oSelectionOwner.isSelected ? oSelectionOwner.isSelected(oRow) : oSelectionOwner.isIndexSelected(iRow);
947
+ }
948
+ return false;
949
+ },
931
950
  focusCell: function(oTable, mFocus, bForward) {
932
951
  var oCellRef = this.getCellRef(oTable, mFocus);
933
952
  if (!oCellRef) {
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  *
41
41
  * @extends sap.ui.core.Element
42
42
  * @author SAP SE
43
- * @version 1.119.0
43
+ * @version 1.120.0
44
44
  *
45
45
  * @public
46
46
  * @since 1.91
@@ -246,7 +246,7 @@ sap.ui.define([
246
246
  this.getConfig("additionalColumnWidth", $Cells, $ClonedCells);
247
247
  this._$Container.append($HiddenArea);
248
248
  var iWidth = Math.round($HiddenArea.append($ClonedCells)[0].getBoundingClientRect().width);
249
- var iDistanceX = iWidth - oSession.fCurrentColumnWidth;
249
+ var iDistanceX = bRTL ? oSession.fCurrentColumnWidth - iWidth : iWidth - oSession.fCurrentColumnWidth;
250
250
  $HiddenArea.remove();
251
251
 
252
252
  return iDistanceX;
@@ -360,6 +360,13 @@ sap.ui.define([
360
360
  } else {
361
361
  oSession.iMaxIncrease = window.innerWidth;
362
362
  }
363
+
364
+ if (bRTL) {
365
+ oSession.iMaxDecrease = this._getColumnMinWidth(oSession.oNextColumn) - oSession.fNextColumnWidth;
366
+ if (oSession.iEmptySpace != -1) {
367
+ oSession.iMaxIncrease = oSession.iEmptySpace + oSession.fCurrentColumnWidth - this._getColumnMinWidth(oSession.oCurrentColumn);
368
+ }
369
+ }
363
370
  };
364
371
 
365
372
  /**