@ui5/webcomponents 2.20.1 → 2.21.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/CHANGELOG.md +51 -2
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/Button.d.ts +7 -0
  4. package/dist/Button.js +12 -2
  5. package/dist/Button.js.map +1 -1
  6. package/dist/Carousel.d.ts +14 -13
  7. package/dist/Carousel.js +93 -177
  8. package/dist/Carousel.js.map +1 -1
  9. package/dist/CarouselTemplate.js +2 -2
  10. package/dist/CarouselTemplate.js.map +1 -1
  11. package/dist/ColorPaletteTemplate.js +1 -1
  12. package/dist/ColorPaletteTemplate.js.map +1 -1
  13. package/dist/ComboBox.d.ts +1 -0
  14. package/dist/ComboBox.js +4 -1
  15. package/dist/ComboBox.js.map +1 -1
  16. package/dist/ComboBoxTemplate.js +1 -1
  17. package/dist/ComboBoxTemplate.js.map +1 -1
  18. package/dist/DatePicker.js +2 -2
  19. package/dist/DatePicker.js.map +1 -1
  20. package/dist/DayPickerTemplate.js +1 -1
  21. package/dist/DayPickerTemplate.js.map +1 -1
  22. package/dist/Dialog.d.ts +0 -3
  23. package/dist/Dialog.js +3 -1
  24. package/dist/Dialog.js.map +1 -1
  25. package/dist/Icon.d.ts +1 -1
  26. package/dist/Icon.js +12 -4
  27. package/dist/Icon.js.map +1 -1
  28. package/dist/IconTemplate.js +1 -1
  29. package/dist/IconTemplate.js.map +1 -1
  30. package/dist/Input.d.ts +2 -1
  31. package/dist/Input.js +38 -16
  32. package/dist/Input.js.map +1 -1
  33. package/dist/Menu.js +6 -1
  34. package/dist/Menu.js.map +1 -1
  35. package/dist/MenuItem.d.ts +8 -0
  36. package/dist/MenuItem.js +29 -1
  37. package/dist/MenuItem.js.map +1 -1
  38. package/dist/MenuItemTemplate.js +2 -2
  39. package/dist/MenuItemTemplate.js.map +1 -1
  40. package/dist/MultiComboBox.js +5 -0
  41. package/dist/MultiComboBox.js.map +1 -1
  42. package/dist/MultiInput.js +6 -7
  43. package/dist/MultiInput.js.map +1 -1
  44. package/dist/Popover.d.ts +17 -0
  45. package/dist/Popover.js +38 -0
  46. package/dist/Popover.js.map +1 -1
  47. package/dist/StepInput.d.ts +5 -0
  48. package/dist/StepInput.js +26 -5
  49. package/dist/StepInput.js.map +1 -1
  50. package/dist/Switch.d.ts +21 -5
  51. package/dist/Switch.js +49 -13
  52. package/dist/Switch.js.map +1 -1
  53. package/dist/SwitchTemplate.js +2 -2
  54. package/dist/SwitchTemplate.js.map +1 -1
  55. package/dist/TimePicker.d.ts +55 -3
  56. package/dist/TimePicker.js +160 -26
  57. package/dist/TimePicker.js.map +1 -1
  58. package/dist/TimePickerTemplate.js +1 -1
  59. package/dist/TimePickerTemplate.js.map +1 -1
  60. package/dist/TimeSelectionClocks.js +8 -0
  61. package/dist/TimeSelectionClocks.js.map +1 -1
  62. package/dist/Token.js +2 -2
  63. package/dist/Token.js.map +1 -1
  64. package/dist/Tokenizer.js +2 -1
  65. package/dist/Tokenizer.js.map +1 -1
  66. package/dist/ToolbarItemBase.d.ts +8 -0
  67. package/dist/ToolbarItemBase.js +12 -0
  68. package/dist/ToolbarItemBase.js.map +1 -1
  69. package/dist/ToolbarSpacer.d.ts +1 -0
  70. package/dist/ToolbarSpacer.js +3 -0
  71. package/dist/ToolbarSpacer.js.map +1 -1
  72. package/dist/ToolbarTemplate.js +1 -2
  73. package/dist/ToolbarTemplate.js.map +1 -1
  74. package/dist/css/themes/Breadcrumbs.css +1 -1
  75. package/dist/css/themes/CalendarHeader.css +1 -1
  76. package/dist/css/themes/ColorPaletteItem.css +1 -1
  77. package/dist/css/themes/DatePickerPopover.css +1 -1
  78. package/dist/css/themes/DayPicker.css +1 -1
  79. package/dist/css/themes/MenuItem.css +1 -1
  80. package/dist/css/themes/MonthPicker.css +1 -1
  81. package/dist/css/themes/MultiComboBox.css +1 -1
  82. package/dist/css/themes/MultiInput.css +1 -1
  83. package/dist/css/themes/PopupsCommon.css +1 -1
  84. package/dist/css/themes/Switch.css +1 -1
  85. package/dist/css/themes/Toolbar.css +1 -1
  86. package/dist/css/themes/YearPicker.css +1 -1
  87. package/dist/css/themes/YearRangePicker.css +1 -1
  88. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  89. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  90. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  91. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  92. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  93. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  94. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  95. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  96. package/dist/custom-elements-internal.json +91 -8
  97. package/dist/custom-elements.json +87 -8
  98. package/dist/features/InputSuggestions.js +2 -1
  99. package/dist/features/InputSuggestions.js.map +1 -1
  100. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  101. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  102. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  103. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  104. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  105. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  106. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  107. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  108. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  109. package/dist/generated/i18n/i18n-defaults.d.ts +7 -2
  110. package/dist/generated/i18n/i18n-defaults.js +7 -2
  111. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  112. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  113. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  114. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  115. package/dist/generated/themes/CalendarHeader.css.d.ts +1 -1
  116. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  117. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  118. package/dist/generated/themes/ColorPaletteItem.css.d.ts +1 -1
  119. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  120. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  121. package/dist/generated/themes/DatePickerPopover.css.d.ts +1 -1
  122. package/dist/generated/themes/DatePickerPopover.css.js +1 -1
  123. package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
  124. package/dist/generated/themes/DayPicker.css.d.ts +1 -1
  125. package/dist/generated/themes/DayPicker.css.js +1 -1
  126. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  127. package/dist/generated/themes/MenuItem.css.d.ts +1 -1
  128. package/dist/generated/themes/MenuItem.css.js +1 -1
  129. package/dist/generated/themes/MenuItem.css.js.map +1 -1
  130. package/dist/generated/themes/MonthPicker.css.d.ts +1 -1
  131. package/dist/generated/themes/MonthPicker.css.js +1 -1
  132. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  133. package/dist/generated/themes/MultiComboBox.css.d.ts +1 -1
  134. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  135. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  136. package/dist/generated/themes/MultiInput.css.d.ts +1 -1
  137. package/dist/generated/themes/MultiInput.css.js +1 -1
  138. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  139. package/dist/generated/themes/PopupsCommon.css.d.ts +1 -1
  140. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  141. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  142. package/dist/generated/themes/Switch.css.d.ts +1 -1
  143. package/dist/generated/themes/Switch.css.js +1 -1
  144. package/dist/generated/themes/Switch.css.js.map +1 -1
  145. package/dist/generated/themes/Toolbar.css.d.ts +1 -1
  146. package/dist/generated/themes/Toolbar.css.js +1 -1
  147. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  148. package/dist/generated/themes/YearPicker.css.d.ts +1 -1
  149. package/dist/generated/themes/YearPicker.css.js +1 -1
  150. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  151. package/dist/generated/themes/YearRangePicker.css.d.ts +1 -1
  152. package/dist/generated/themes/YearRangePicker.css.js +1 -1
  153. package/dist/generated/themes/YearRangePicker.css.js.map +1 -1
  154. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  155. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  156. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  157. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  158. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  159. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  160. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  161. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  162. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  163. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  164. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  165. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  166. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  167. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  168. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  169. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  170. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  171. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  172. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  173. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  174. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  175. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  176. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  177. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  178. package/dist/vscode.html-custom-data.json +19 -4
  179. package/dist/web-types.json +40 -10
  180. package/package.json +9 -9
  181. package/src/CarouselTemplate.tsx +3 -3
  182. package/src/ColorPaletteTemplate.tsx +2 -2
  183. package/src/ComboBoxTemplate.tsx +1 -0
  184. package/src/DayPickerTemplate.tsx +1 -1
  185. package/src/IconTemplate.tsx +1 -0
  186. package/src/MenuItemTemplate.tsx +11 -1
  187. package/src/SwitchTemplate.tsx +4 -2
  188. package/src/TimePickerTemplate.tsx +1 -1
  189. package/src/ToolbarTemplate.tsx +1 -2
  190. package/src/i18n/messagebundle.properties +17 -2
  191. package/src/i18n/messagebundle_en_US_saprigi.properties +2 -0
  192. package/src/themes/Breadcrumbs.css +6 -2
  193. package/src/themes/CalendarHeader.css +1 -1
  194. package/src/themes/ColorPaletteItem.css +14 -0
  195. package/src/themes/DatePickerPopover.css +5 -0
  196. package/src/themes/DayPicker.css +1 -1
  197. package/src/themes/MenuItem.css +5 -0
  198. package/src/themes/MonthPicker.css +2 -2
  199. package/src/themes/MultiComboBox.css +1 -1
  200. package/src/themes/MultiInput.css +1 -1
  201. package/src/themes/PopupsCommon.css +7 -0
  202. package/src/themes/Switch.css +48 -2
  203. package/src/themes/Toolbar.css +0 -6
  204. package/src/themes/YearPicker.css +2 -2
  205. package/src/themes/YearRangePicker.css +2 -2
  206. package/src/themes/base/Bar-parameters.css +1 -0
  207. package/src/themes/base/Breadcrumbs-parameters.css +4 -0
  208. package/src/themes/base/Input-parameters.css +3 -1
  209. package/src/themes/base/Switch-parameters.css +4 -0
  210. package/src/themes/base/sizes-parameters.css +3 -0
  211. package/src/themes/sap_fiori_3/parameters-bundle.css +2 -1
  212. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +2 -1
  213. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +3 -1
  214. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +3 -1
  215. package/src/themes/sap_horizon/Breadcrumbs-parameters.css +5 -1
  216. package/src/themes/sap_horizon/CalendarHeader-parameters.css +3 -3
  217. package/src/themes/sap_horizon/DayPicker-parameters.css +3 -3
  218. package/src/themes/sap_horizon_dark/Breadcrumbs-parameters.css +5 -1
  219. package/src/themes/sap_horizon_dark/CalendarHeader-parameters.css +2 -2
  220. package/src/themes/sap_horizon_hcb/Breadcrumbs-parameters.css +6 -0
  221. package/src/themes/sap_horizon_hcb/Switch-parameters.css +4 -0
  222. package/src/themes/sap_horizon_hcb/parameters-bundle.css +2 -1
  223. package/src/themes/sap_horizon_hcw/Breadcrumbs-parameters.css +6 -0
  224. package/src/themes/sap_horizon_hcw/Switch-parameters.css +4 -0
  225. package/src/themes/sap_horizon_hcw/parameters-bundle.css +2 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",
3
3
  "name": "@ui5/webcomponents",
4
- "version": "2.20.1",
4
+ "version": "2.21.0-rc.1",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -3589,7 +3589,7 @@
3589
3589
  },
3590
3590
  {
3591
3591
  "name": "ui5-dialog",
3592
- "description": "### Overview\nThe `ui5-dialog` component is used to temporarily display some information in a\nsize-limited window in front of the regular app screen.\nIt is used to prompt the user for an action or a confirmation.\nThe `ui5-dialog` interrupts the current app processing as it is the only focused UI element and\nthe main screen is dimmed/blocked.\nThe dialog combines concepts known from other technologies where the windows have\nnames such as dialog box, dialog window, pop-up, pop-up window, alert box, or message box.\n\nThe `ui5-dialog` is modal, which means that a user action is required before it is possible to return to the parent window.\nTo open multiple dialogs, each dialog element should be separate in the markup. This will ensure the correct modal behavior. Avoid nesting dialogs within each other.\nThe content of the `ui5-dialog` is fully customizable.\n\n### Structure\nA `ui5-dialog` consists of a header, content, and a footer for action buttons.\nThe `ui5-dialog` is usually displayed at the center of the screen.\nIts position can be changed by the user. To enable this, you need to set the property `draggable` accordingly.\n\n\n### Responsive Behavior\nThe `stretch` property can be used to stretch the `ui5-dialog` to full screen. For better usability, it's recommended to stretch the dialog to full screen on phone devices.\n\n**Note:** When a `ui5-bar` is used in the header or in the footer, you should remove the default dialog's paddings.\n\nFor more information see the sample \"Bar in Header/Footer\".\n\n### Keyboard Handling\n\n#### Basic Navigation\nWhen the `ui5-dialog` has the `draggable` property set to `true` and the header is focused, the user can move the dialog\nwith the following keyboard shortcuts:\n\n- [Up] or [Down] arrow keys - Move the dialog up/down.\n- [Left] or [Right] arrow keys - Move the dialog left/right.\n\n#### Resizing\nWhen the `ui5-dialog` has the `resizable` property set to `true` and the header is focused, the user can change the size of the dialog\nwith the following keyboard shortcuts:\n\n- [Shift] + [Up] or [Down] - Decrease/Increase the height of the dialog.\n- [Shift] + [Left] or [Right] - Decrease/Increase the width of the dialog.\n\n### ES6 Module Import\n\n`import \"@ui5/webcomponents/dist/Dialog\";`\n---\n\n\n### **Events:**\n - **before-close** - Fired before the component is closed. This event can be cancelled, which will prevent the popup from closing.\n- **before-open** - Fired before the component is opened. This event can be cancelled, which will prevent the popup from opening.\n- **close** - Fired after the component is closed.\n- **open** - Fired after the component is opened.\n\n### **Methods:**\n - **applyFocus(): _Promise<void>_** - Focuses the element denoted by `initialFocus`, if provided,\nor the first focusable element otherwise.\n\n### **Slots:**\n - **default** - Defines the content of the Popup.\n- **footer** - Defines the footer HTML Element.\n\n**Note:** When a `ui5-bar` is used in the footer, you should remove the default dialog's paddings.\n- **header** - Defines the header HTML Element.\n\n**Note:** When a `ui5-bar` is used in the header, you should remove the default dialog's paddings.\n\n**Note:** If `header` slot is provided, the labelling of the dialog is a responsibility of the application developer.\n`accessibleName` should be used.\n\n### **CSS Parts:**\n - **content** - Used to style the content of the component\n- **footer** - Used to style the footer of the component\n- **header** - Used to style the header of the component",
3592
+ "description": "### Overview\nThe `ui5-dialog` component is used to temporarily display some information in a\nsize-limited window in front of the regular app screen.\nIt is used to prompt the user for an action or a confirmation.\nThe `ui5-dialog` interrupts the current app processing as it is the only focused UI element and\nthe main screen is dimmed/blocked.\nThe dialog combines concepts known from other technologies where the windows have\nnames such as dialog box, dialog window, pop-up, pop-up window, alert box, or message box.\n\nThe `ui5-dialog` is modal, which means that a user action is required before it is possible to return to the parent window.\nTo open multiple dialogs, each dialog element should be separate in the markup. This will ensure the correct modal behavior. Avoid nesting dialogs within each other.\nThe content of the `ui5-dialog` is fully customizable.\n\n### Structure\nA `ui5-dialog` consists of a header, content, and a footer for action buttons.\nThe `ui5-dialog` is usually displayed at the center of the screen.\nIts position can be changed by the user. To enable this, you need to set the property `draggable` accordingly.\n\n\n### Responsive Behavior\nThe `stretch` property can be used to stretch the `ui5-dialog` to full screen. For better usability, it's recommended to stretch the dialog to full screen on phone devices.\n\n**Note:** When a `ui5-bar` is used in the header or in the footer, you should remove the default dialog's paddings.\n\nFor more information see the sample \"Bar in Header/Footer\".\n\n### Keyboard Handling\n\n#### Basic Navigation\nWhen the `ui5-dialog` has the `draggable` property set to `true` and the header is focused, the user can move the dialog\nwith the following keyboard shortcuts:\n\n- [Up] or [Down] arrow keys - Move the dialog up/down.\n- [Left] or [Right] arrow keys - Move the dialog left/right.\n\n#### Resizing\nWhen the `ui5-dialog` has the `resizable` property set to `true` and the header is focused, the user can change the size of the dialog\nwith the following keyboard shortcuts:\n\n- [Shift] + [Up] or [Down] - Decrease/Increase the height of the dialog.\n- [Shift] + [Left] or [Right] - Decrease/Increase the width of the dialog.\n\n### ES6 Module Import\n\n`import \"@ui5/webcomponents/dist/Dialog\";`\n---\n\n\n### **Events:**\n - **before-close** - Fired before the component is closed. This event can be cancelled, which will prevent the popup from closing.\n- **before-open** - Fired before the component is opened. This event can be cancelled, which will prevent the popup from opening.\n- **close** - Fired after the component is closed.\n- **open** - Fired after the component is opened.\n\n### **Methods:**\n - **applyFocus(): _Promise<void>_** - Focuses the element denoted by `initialFocus`, if provided,\nor the first focusable element otherwise.\n\n### **Slots:**\n - **default** - Defines the content of the Popup.\n- **footer** - Defines the footer HTML Element.\n- **header** - Defines the header HTML Element.\n\n**Note:** If `header` slot is provided, the labelling of the dialog is a responsibility of the application developer.\n`accessibleName` should be used.\n\n### **CSS Parts:**\n - **content** - Used to style the content of the component\n- **footer** - Used to style the footer of the component\n- **header** - Used to style the header of the component",
3593
3593
  "doc-url": "",
3594
3594
  "attributes": [
3595
3595
  {
@@ -3676,11 +3676,11 @@
3676
3676
  },
3677
3677
  {
3678
3678
  "name": "footer",
3679
- "description": "Defines the footer HTML Element.\n\n**Note:** When a `ui5-bar` is used in the footer, you should remove the default dialog's paddings."
3679
+ "description": "Defines the footer HTML Element."
3680
3680
  },
3681
3681
  {
3682
3682
  "name": "header",
3683
- "description": "Defines the header HTML Element.\n\n**Note:** When a `ui5-bar` is used in the header, you should remove the default dialog's paddings.\n\n**Note:** If `header` slot is provided, the labelling of the dialog is a responsibility of the application developer.\n`accessibleName` should be used."
3683
+ "description": "Defines the header HTML Element.\n\n**Note:** If `header` slot is provided, the labelling of the dialog is a responsibility of the application developer.\n`accessibleName` should be used."
3684
3684
  }
3685
3685
  ],
3686
3686
  "events": [
@@ -4386,7 +4386,7 @@
4386
4386
  },
4387
4387
  {
4388
4388
  "name": "ui5-icon",
4389
- "description": "### Overview\n\nThe `ui5-icon` component represents an SVG icon.\nThere are two main scenarios how the `ui5-icon` component is used:\nas a purely decorative element,\nor as an interactive element that can be focused and clicked.\n\n### Usage\n\n1. **Get familiar with the icons collections.**\n\nBefore displaying an icon, you need to explore the icons collections to find and import the desired icon.\n\nCurrently there are 3 icons collection, available as 3 npm packages:\n\n- [@ui5/webcomponents-icons](https://www.npmjs.com/package/@ui5/webcomponents-icons) represents the \"SAP-icons\" collection and includes the following\n[icons](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons).\n- [@ui5/webcomponents-icons-tnt](https://www.npmjs.com/package/@ui5/webcomponents-icons-tnt) represents the \"tnt\" collection and includes the following\n[icons](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons-TNT).\n- [@ui5/webcomponents-icons-business-suite](https://www.npmjs.com/package/@ui5/webcomponents-icons-business-suite) represents the \"business-suite\" collection and includes the following\n[icons](https://ui5.sap.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/BusinessSuiteInAppSymbols).\n\n2. **After exploring the icons collections, add one or more of the packages as dependencies to your project.**\n\n`npm i @ui5/webcomponents-icons`\n`npm i @ui5/webcomponents-icons-tnt`\n`npm i @ui5/webcomponents-icons-business-suite`\n\n3. **Then, import the desired icon**.\n\n`import \"@ui5/\\{package_name\\}/dist/\\{icon_name\\}.js\";`\n\n**For Example**:\n\nFor the standard \"SAP-icons\" icon collection, import an icon from the `@ui5/webcomponents-icons` package:\n\n`import \"@ui5/webcomponents-icons/dist/employee.js\";`\n\nFor the \"tnt\" (SAP Fiori Tools) icon collection, import an icon from the `@ui5/webcomponents-icons-tnt` package:\n\n`import \"@ui5/webcomponents-icons-tnt/dist/antenna.js\";`\n\nFor the \"business-suite\" (SAP Business Suite) icon collection, import an icon from the `@ui5/webcomponents-icons-business-suite` package:\n\n`import \"@ui5/webcomponents-icons-business-suite/dist/ab-testing.js\";`\n\n4. **Display the icon using the `ui5-icon` web component.**\nSet the icon collection (\"SAP-icons\", \"tnt\" or \"business-suite\" - \"SAP-icons\" is the default icon collection and can be skipped)\nand the icon name to the `name` property.\n\n`<ui5-icon name=\"employee\"></ui5-icon>`\n`<ui5-icon name=\"tnt/antenna\"></ui5-icon>`\n`<ui5-icon name=\"business-suite/ab-testing\"></ui5-icon>`\n\n### Keyboard Handling\n\n- [Space] / [Enter] or [Return] - Fires the `click` event if the `mode` property is set to `Interactive`.\n- [Shift] - If [Space] / [Enter] or [Return] is pressed, pressing [Shift] releases the ui5-icon without triggering the click event.\n\n### ES6 Module Import\n\n`import \"@ui5/webcomponents/dist/Icon.js\";`\n---\n\n\n### **Events:**\n - **click** - Fired on mouseup, `SPACE` and `ENTER`.\n- on mouse click, the icon fires native `click` event\n- on `SPACE` and `ENTER`, the icon fires custom `click` event\n\n### **CSS Parts:**\n - **root** - Used to style the outermost wrapper of the `ui5-icon`.",
4389
+ "description": "### Overview\n\nThe `ui5-icon` component represents an SVG icon.\nThere are two main scenarios how the `ui5-icon` component is used:\nas a purely decorative element,\nor as an interactive element that can be focused and clicked.\n\n### Usage\n\n1. **Get familiar with the icons collections.**\n\nBefore displaying an icon, you need to explore the icons collections to find and import the desired icon.\n\nCurrently there are 3 icons collection, available as 3 npm packages:\n\n- [@ui5/webcomponents-icons](https://www.npmjs.com/package/@ui5/webcomponents-icons) represents the \"SAP-icons\" collection and includes the following\n[icons](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons).\n- [@ui5/webcomponents-icons-tnt](https://www.npmjs.com/package/@ui5/webcomponents-icons-tnt) represents the \"tnt\" collection and includes the following\n[icons](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons-TNT).\n- [@ui5/webcomponents-icons-business-suite](https://www.npmjs.com/package/@ui5/webcomponents-icons-business-suite) represents the \"business-suite\" collection and includes the following\n[icons](https://ui5.sap.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/BusinessSuiteInAppSymbols).\n\n2. **After exploring the icons collections, add one or more of the packages as dependencies to your project.**\n\n`npm i @ui5/webcomponents-icons`\n`npm i @ui5/webcomponents-icons-tnt`\n`npm i @ui5/webcomponents-icons-business-suite`\n\n3. **Then, import the desired icon**.\n\n`import \"@ui5/\\{package_name\\}/dist/\\{icon_name\\}.js\";`\n\n**For Example**:\n\nFor the standard \"SAP-icons\" icon collection, import an icon from the `@ui5/webcomponents-icons` package:\n\n`import \"@ui5/webcomponents-icons/dist/employee.js\";`\n\nFor the \"tnt\" (SAP Fiori Tools) icon collection, import an icon from the `@ui5/webcomponents-icons-tnt` package:\n\n`import \"@ui5/webcomponents-icons-tnt/dist/antenna.js\";`\n\nFor the \"business-suite\" (SAP Business Suite) icon collection, import an icon from the `@ui5/webcomponents-icons-business-suite` package:\n\n`import \"@ui5/webcomponents-icons-business-suite/dist/ab-testing.js\";`\n\n4. **Display the icon using the `ui5-icon` web component.**\nSet the icon collection (\"SAP-icons\", \"tnt\" or \"business-suite\" - \"SAP-icons\" is the default icon collection and can be skipped)\nand the icon name to the `name` property.\n\n`<ui5-icon name=\"employee\"></ui5-icon>`\n`<ui5-icon name=\"tnt/antenna\"></ui5-icon>`\n`<ui5-icon name=\"business-suite/ab-testing\"></ui5-icon>`\n\n### Keyboard Handling\n\n- [Space] / [Enter] or [Return] - Fires the `click` event if the `mode` property is set to `Interactive`.\n\n### ES6 Module Import\n\n`import \"@ui5/webcomponents/dist/Icon.js\";`\n---\n\n\n### **Events:**\n - **click** - Fired when the component is activated by mouse/touch, keyboard (Enter or Space),\nor screen reader virtual cursor activation.\n\n**Note:** The event will not be fired if the `mode` property is set to `Decorative` or `Image`.\n\n### **CSS Parts:**\n - **root** - Used to style the outermost wrapper of the `ui5-icon`.",
4390
4390
  "doc-url": "",
4391
4391
  "attributes": [
4392
4392
  {
@@ -4424,7 +4424,7 @@
4424
4424
  "events": [
4425
4425
  {
4426
4426
  "name": "click",
4427
- "description": "Fired on mouseup, `SPACE` and `ENTER`.\n- on mouse click, the icon fires native `click` event\n- on `SPACE` and `ENTER`, the icon fires custom `click` event"
4427
+ "description": "Fired when the component is activated by mouse/touch, keyboard (Enter or Space),\nor screen reader virtual cursor activation.\n\n**Note:** The event will not be fired if the `mode` property is set to `Decorative` or `Image`."
4428
4428
  }
4429
4429
  ],
4430
4430
  "js": {
@@ -4462,7 +4462,7 @@
4462
4462
  "events": [
4463
4463
  {
4464
4464
  "name": "click",
4465
- "description": "Fired on mouseup, `SPACE` and `ENTER`.\n- on mouse click, the icon fires native `click` event\n- on `SPACE` and `ENTER`, the icon fires custom `click` event"
4465
+ "description": "Fired when the component is activated by mouse/touch, keyboard (Enter or Space),\nor screen reader virtual cursor activation.\n\n**Note:** The event will not be fired if the `mode` property is set to `Decorative` or `Image`."
4466
4466
  }
4467
4467
  ]
4468
4468
  }
@@ -9563,7 +9563,7 @@
9563
9563
  },
9564
9564
  {
9565
9565
  "name": "checked",
9566
- "description": "Defines if the component is checked.\n\n**Note:** The property can be changed with user interaction,\neither by cliking the component, or by pressing the `Enter` or `Space` key.",
9566
+ "description": "Defines if the component is checked.\n\n**Note:** The property can be changed with user interaction,\neither by clicking the component, or by pressing the `Enter` or `Space` key.",
9567
9567
  "value": { "type": "boolean", "default": "false" }
9568
9568
  },
9569
9569
  {
@@ -9584,6 +9584,11 @@
9584
9584
  "description": "Determines the name by which the component will be identified upon submission in an HTML form.\n\n**Note:** This property is only applicable within the context of an HTML Form element.",
9585
9585
  "value": { "type": "string | undefined", "default": "undefined" }
9586
9586
  },
9587
+ {
9588
+ "name": "readonly",
9589
+ "description": "Defines whether the component is in readonly state.\n\n**Note:** A readonly switch cannot be toggled by user interaction,\nbut can still be focused and its value read programmatically.",
9590
+ "value": { "type": "boolean", "default": "false" }
9591
+ },
9587
9592
  {
9588
9593
  "name": "required",
9589
9594
  "description": "Defines whether the component is required.",
@@ -9630,7 +9635,7 @@
9630
9635
  },
9631
9636
  {
9632
9637
  "name": "checked",
9633
- "description": "Defines if the component is checked.\n\n**Note:** The property can be changed with user interaction,\neither by cliking the component, or by pressing the `Enter` or `Space` key.",
9638
+ "description": "Defines if the component is checked.\n\n**Note:** The property can be changed with user interaction,\neither by clicking the component, or by pressing the `Enter` or `Space` key.",
9634
9639
  "value": { "type": "boolean" }
9635
9640
  },
9636
9641
  {
@@ -9648,6 +9653,11 @@
9648
9653
  "description": "Determines the name by which the component will be identified upon submission in an HTML form.\n\n**Note:** This property is only applicable within the context of an HTML Form element.",
9649
9654
  "value": { "type": "string | undefined" }
9650
9655
  },
9656
+ {
9657
+ "name": "readonly",
9658
+ "description": "Defines whether the component is in readonly state.\n\n**Note:** A readonly switch cannot be toggled by user interaction,\nbut can still be focused and its value read programmatically.",
9659
+ "value": { "type": "boolean" }
9660
+ },
9651
9661
  {
9652
9662
  "name": "required",
9653
9663
  "description": "Defines whether the component is required.",
@@ -11058,7 +11068,7 @@
11058
11068
  },
11059
11069
  {
11060
11070
  "name": "ui5-time-picker",
11061
- "description": "### Overview\nThe `ui5-time-picker` component provides an input field with assigned clocks which are opened on user action.\nThe `ui5-time-picker` allows users to select a localized time using touch, mouse, or keyboard input.\nIt consists of two parts: the time input field and the clocks.\n\n### Usage\nThe user can enter a time by:\n\n- Using the clocks that are displayed in a popup\n- Typing it in directly in the input field\n\nWhen the user makes an entry and chooses the enter key, the clocks show the corresponding time (hours, minutes and seconds separately).\nWhen the user directly triggers the clocks display, the actual time is displayed.\nFor the `ui5-time-picker`\n\n### Formatting\n\nIf a time is entered by typing it into\nthe input field, it must fit to the used time format.\n\nSupported format options are pattern-based on Unicode LDML Date Format notation.\nFor more information, see [UTS #35: Unicode Locale Data Markup Language](https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table).\n\nFor example, if the `format-pattern` is \"HH:mm:ss\",\na valid value string is \"11:42:35\" and the same is displayed in the input.\n\n### Keyboard handling\n[F4], [Alt]+[Up], [Alt]+[Down] Open/Close picker dialog and move focus to it.\n\nWhen closed:\n\n- [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n- [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n- [Shift]+[Page Up] - Increments minutes by 1.\n- [Shift]+[Page Down] - Decrements minutes by 1.\n- [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n- [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n-\n\nWhen opened:\n\n- [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n- [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n- [Shift]+[Page Up] - Increments minutes by 1.\n- [Shift]+[Page Down] - Decrements minutes by 1.\n- [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n- [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n- [A] or [P] - Selects AM or PM respectively.\n- [0]-[9] - Allows direct time selecting (hours/minutes/seconds).\n- [:] - Allows switching between hours/minutes/seconds clocks. If the last clock is displayed and [:] is pressed, the first clock is beind displayed.\n\n### ES6 Module Import\n\n`import \"@ui5/webcomponents/dist/TimePicker.js\";`\n---\n\n\n### **Events:**\n - **change** - Fired when the input operation has finished by clicking the \"OK\" button or\nwhen the text in the input field has changed and the focus leaves the input field.\n- **close** - Fired after the value-help dialog of the component is closed.\n- **input** - Fired when the value of the `ui5-time-picker` is changed at each key stroke.\n- **open** - Fired after the value-help dialog of the component is opened.\n\n### **Methods:**\n - **formatValue(date: _Date_): _string_** - Formats a Java Script date object into a string representing a locale date and time\naccording to the `formatPattern` property of the TimePicker instance\n- **isValid(value: _string | undefined_): _boolean_** - Checks if a value is valid against the current `formatPattern` value.\n\n**Note:** an empty string is considered as valid value.\n\n### **Slots:**\n - **valueStateMessage** - Defines the value state message that will be displayed as pop up under the `ui5-time-picker`.\n\n**Note:** If not specified, a default text (in the respective language) will be displayed.\n\n**Note:** The `valueStateMessage` would be displayed,\nwhen the `ui5-time-picker` is in `Information`, `Critical` or `Negative` value state.\n\n### **CSS Parts:**\n - **input** - Used to style the input element. This part is forwarded to the underlying ui5-input element.",
11071
+ "description": "### Overview\nThe `ui5-time-picker` component provides an input field with assigned clocks which are opened on user action.\nThe `ui5-time-picker` allows users to select a localized time using touch, mouse, or keyboard input.\nIt consists of two parts: the time input field and the clocks.\n\n### Usage\nThe user can enter a time by:\n\n- Using the clocks that are displayed in a popup\n- Typing it in directly in the input field\n\nWhen the user makes an entry and chooses the enter key, the clocks show the corresponding time (hours, minutes and seconds separately).\nWhen the user directly triggers the clocks display, the actual time is displayed.\nFor the `ui5-time-picker`\n\n### Formatting\n\nIf a time is entered by typing it into\nthe input field, it must fit to the used time format.\n\nSupported format options are pattern-based on Unicode LDML Date Format notation.\nFor more information, see [UTS #35: Unicode Locale Data Markup Language](https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table).\n\nFor example, if the valueFormat is \"HH:mm:ss\", the displayFormat is \"hh:mm: ss a\", and the used locale is English, a valid value string is \"11:42:35\", which leads to an output of \"11:42:35 AM\".\nIf no placeholder is set to the TimePicker, the used displayFormat is displayed as a placeholder. If another placeholder is needed, it must be set.\n\n### Keyboard handling\n[F4], [Alt]+[Up], [Alt]+[Down] Open/Close picker dialog and move focus to it.\n\nWhen closed:\n\n- [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n- [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n- [Shift]+[Page Up] - Increments minutes by 1.\n- [Shift]+[Page Down] - Decrements minutes by 1.\n- [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n- [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n-\n\nWhen opened:\n\n- [Page Up] - Increments hours by 1. If 12 am is reached, increment hours to 1 pm and vice versa.\n- [Page Down] - Decrements the corresponding field by 1. If 1 pm is reached, decrement hours to 12 am and vice versa.\n- [Shift]+[Page Up] - Increments minutes by 1.\n- [Shift]+[Page Down] - Decrements minutes by 1.\n- [Shift]+[Ctrl]+[Page Up] - Increments seconds by 1.\n- [Shift]+[Ctrl]+[Page Down] - Decrements seconds by 1.\n- [A] or [P] - Selects AM or PM respectively.\n- [0]-[9] - Allows direct time selecting (hours/minutes/seconds).\n- [:] - Allows switching between hours/minutes/seconds clocks. If the last clock is displayed and [:] is pressed, the first clock is beind displayed.\n\n### ES6 Module Import\n\n`import \"@ui5/webcomponents/dist/TimePicker.js\";`\n---\n\n\n### **Events:**\n - **change** - Fired when the input operation has finished by clicking the \"OK\" button or\nwhen the text in the input field has changed and the focus leaves the input field.\n- **close** - Fired after the value-help dialog of the component is closed.\n- **input** - Fired when the value of the `ui5-time-picker` is changed at each key stroke.\n- **open** - Fired after the value-help dialog of the component is opened.\n\n### **Methods:**\n - **formatValue(date: _Date_): _string_** - Formats a Java Script date object into a string representing a locale date and time\naccording to the `formatPattern` property of the TimePicker instance\n- **isValid(value: _string | undefined_): _boolean_** - Checks if a value is valid against the current `formatPattern` value.\n\n**Note:** an empty string is considered as valid value.\n- **isValidValue(value: _string | undefined_): _boolean_** - Checks if a value is valid against the current `valueFormat` value.\n\n**Note:** an empty string is considered as valid value.\n\n### **Slots:**\n - **valueStateMessage** - Defines the value state message that will be displayed as pop up under the `ui5-time-picker`.\n\n**Note:** If not specified, a default text (in the respective language) will be displayed.\n\n**Note:** The `valueStateMessage` would be displayed,\nwhen the `ui5-time-picker` is in `Information`, `Critical` or `Negative` value state.\n\n### **CSS Parts:**\n - **input** - Used to style the input element. This part is forwarded to the underlying ui5-input element.",
11062
11072
  "doc-url": "",
11063
11073
  "attributes": [
11064
11074
  {
@@ -11091,6 +11101,11 @@
11091
11101
  "description": "Defines the disabled state of the comonent.",
11092
11102
  "value": { "type": "boolean", "default": "false" }
11093
11103
  },
11104
+ {
11105
+ "name": "display-format",
11106
+ "description": "Determines the format, displayed in the input field.",
11107
+ "value": { "type": "string | undefined", "default": "undefined" }
11108
+ },
11094
11109
  {
11095
11110
  "name": "format-pattern",
11096
11111
  "description": "Determines the format, displayed in the input field.\n\nExample:\nHH:mm:ss -> 11:42:35\nhh:mm:ss a -> 2:23:15 PM\nmm:ss -> 12:04 (only minutes and seconds)",
@@ -11126,6 +11141,11 @@
11126
11141
  "description": "Defines a formatted time value.",
11127
11142
  "value": { "type": "string", "default": "\"\"" }
11128
11143
  },
11144
+ {
11145
+ "name": "value-format",
11146
+ "description": "Determines the format, used for the value attribute.",
11147
+ "value": { "type": "string | undefined", "default": "undefined" }
11148
+ },
11129
11149
  {
11130
11150
  "name": "value-state",
11131
11151
  "description": "Defines the value state of the component.",
@@ -11191,6 +11211,11 @@
11191
11211
  "description": "Defines the disabled state of the comonent.",
11192
11212
  "value": { "type": "boolean" }
11193
11213
  },
11214
+ {
11215
+ "name": "display-format",
11216
+ "description": "Determines the format, displayed in the input field.",
11217
+ "value": { "type": "string | undefined" }
11218
+ },
11194
11219
  {
11195
11220
  "name": "format-pattern",
11196
11221
  "description": "Determines the format, displayed in the input field.\n\nExample:\nHH:mm:ss -> 11:42:35\nhh:mm:ss a -> 2:23:15 PM\nmm:ss -> 12:04 (only minutes and seconds)",
@@ -11226,6 +11251,11 @@
11226
11251
  "description": "Defines a formatted time value.",
11227
11252
  "value": { "type": "string" }
11228
11253
  },
11254
+ {
11255
+ "name": "value-format",
11256
+ "description": "Determines the format, used for the value attribute.",
11257
+ "value": { "type": "string | undefined" }
11258
+ },
11229
11259
  {
11230
11260
  "name": "value-state",
11231
11261
  "description": "Defines the value state of the component.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ui5/webcomponents",
3
- "version": "2.20.1",
3
+ "version": "2.21.0-rc.1",
4
4
  "description": "UI5 Web Components: webcomponents.main",
5
5
  "ui5": {
6
6
  "webComponentsPackage": true
@@ -54,22 +54,22 @@
54
54
  "directory": "packages/main"
55
55
  },
56
56
  "dependencies": {
57
- "@ui5/webcomponents-base": "2.20.1",
58
- "@ui5/webcomponents-icons": "2.20.1",
59
- "@ui5/webcomponents-icons-business-suite": "2.20.1",
60
- "@ui5/webcomponents-icons-tnt": "2.20.1",
61
- "@ui5/webcomponents-localization": "2.20.1",
62
- "@ui5/webcomponents-theming": "2.20.1"
57
+ "@ui5/webcomponents-base": "2.21.0-rc.1",
58
+ "@ui5/webcomponents-icons": "2.21.0-rc.1",
59
+ "@ui5/webcomponents-icons-business-suite": "2.21.0-rc.1",
60
+ "@ui5/webcomponents-icons-tnt": "2.21.0-rc.1",
61
+ "@ui5/webcomponents-localization": "2.21.0-rc.1",
62
+ "@ui5/webcomponents-theming": "2.21.0-rc.1"
63
63
  },
64
64
  "devDependencies": {
65
65
  "@custom-elements-manifest/analyzer": "^0.10.10",
66
66
  "@ui5/cypress-internal": "0.1.0",
67
- "@ui5/webcomponents-tools": "2.20.1",
67
+ "@ui5/webcomponents-tools": "2.21.0-rc.1",
68
68
  "cypress": "15.9.0",
69
69
  "jsdom": "^26.0.0",
70
70
  "lit": "^2.0.0",
71
71
  "vite": "5.4.21",
72
72
  "vitest": "^3.0.2"
73
73
  },
74
- "gitHead": "e99d0cc3b83e5320263a207f7ae3fcd159982e9f"
74
+ "gitHead": "ca81ad3bb0594ea51472c46d517d34d7e0a719b8"
75
75
  }
@@ -21,7 +21,7 @@ export default function CarouselTemplate(this: Carousel) {
21
21
  onMouseDown={this._onmousedown}
22
22
  >
23
23
  <div class={this.classes.viewport} part="content">
24
- <div role="list" aria-label={this._ariaListLabel} class={this.classes.content} style={{ transform: `translate3d(${this._isRTL ? "" : "-"}${this._currentSlideIndex * (this._itemWidth || 0)}px, 0, 0` }}>
24
+ <div role="list" aria-label={this._ariaListLabel} class={this.classes.content} style={{ transform: `translate3d(${this._isRTL ? "" : "-"}${this._currentPageIndex * (this._itemWidth || 0)}px, 0, 0` }}>
25
25
  {this.items.map((itemInfo, i) =>
26
26
  <div
27
27
  data-sap-focus-ref={this._focusedItemIndex === i ? true : undefined}
@@ -67,7 +67,7 @@ function arrowBack(this: Carousel) {
67
67
  return <Icon name={slimArrowLeft}
68
68
  tabindex={-1}
69
69
  data-ui5-arrow-back
70
- title={this.previousPageText }
70
+ title={this.previousPageText}
71
71
  mode="Decorative"
72
72
  class={{
73
73
  "ui5-carousel-navigation-button": true,
@@ -106,5 +106,5 @@ function navIndicator(this: Carousel) {
106
106
  <div
107
107
  dir="auto"
108
108
  class="ui5-carousel-navigation-text"
109
- >{this._currentSlideIndex + 1}&nbsp;{this.ofText}&nbsp;{this.pagesCount}</div>;
109
+ >{this._currentPageIndex + 1}&nbsp;{this.ofText}&nbsp;{this.pagesCount}</div>;
110
110
  }
@@ -59,8 +59,8 @@ export default function ColorPaletteTemplate(this: ColorPalette) {
59
59
  <div class="ui5-cp-recent-colors-wrapper">
60
60
  <div class="ui5-cp-separator"></div>
61
61
  <div class="ui5-cp-recent-colors-container" onKeyDown={this._onRecentColorsContainerKeyDown}>
62
- {this.recentColors.map(color =>
63
- <ColorPaletteItem value={color}/>
62
+ {this.recentColors.map((color, index) =>
63
+ <ColorPaletteItem value={color} index={index + 1}/>
64
64
  )}
65
65
  </div>
66
66
  </div>
@@ -62,6 +62,7 @@ export default function ComboBoxTemplate(this: ComboBox) {
62
62
  "inputIcon--pressed": this._iconPressed,
63
63
  }}
64
64
  accessibleName={this._iconAccessibleNameText}
65
+ onMouseDown={this._arrowMouseDown}
65
66
  onClick={this._arrowClick}
66
67
  />
67
68
  }
@@ -24,7 +24,7 @@ export default function DayPickerTemplate(this: DayPicker) {
24
24
  aria-label={day.ultraShortName ? day.name : undefined}
25
25
  class={day.classes}
26
26
  >
27
- {day.ultraShortName ? day.ultraShortName : <span aria-hidden="true" class="ui5-hidden-text">{day.name}</span>}
27
+ {day.ultraShortName ? day.ultraShortName : <span class="ui5-hidden-text">{day.name}</span>}
28
28
  </div>
29
29
  )}
30
30
  </div>
@@ -16,6 +16,7 @@ export default function IconTemplate(this: Icon) {
16
16
  xmlns="http://www.w3.org/2000/svg"
17
17
  onKeyDown={this._onkeydown}
18
18
  onKeyUp={this._onkeyup}
19
+ onClick={this._onclick}
19
20
  >
20
21
  { this.hasIconTooltip &&
21
22
  <title id={`${this._id}-tooltip`} > {this.effectiveAccessibleName} </title>
@@ -59,7 +59,15 @@ function rightContent(this: MenuItem) {
59
59
  </div>
60
60
  );
61
61
  case this.hasEndContent:
62
- return <slot name="endContent" onKeyDown={this._endContentKeyDown}></slot>;
62
+ return (
63
+ <div
64
+ class="ui5-menu-item-end-content"
65
+ role="group"
66
+ aria-label={this.endContentAccessibleName}
67
+ >
68
+ <slot name="endContent" onKeyDown={this._endContentKeyDown}></slot>
69
+ </div>
70
+ );
63
71
  case !!this.additionalText:
64
72
  return (
65
73
  <span
@@ -123,6 +131,7 @@ function listItemPostContent(this: MenuItem) {
123
131
  <div
124
132
  id={`${this._id}-menu-main`}
125
133
  class={this.loading ? "menu-busy-indicator-main" : ""}
134
+ aria-busy={this.loading}
126
135
  >
127
136
  {
128
137
  this.items.length ? (
@@ -150,6 +159,7 @@ function listItemPostContent(this: MenuItem) {
150
159
  />
151
160
  }
152
161
  </div >
162
+
153
163
  {
154
164
  this.isPhone && (
155
165
  <div slot="footer" class="ui5-menu-dialog-footer">
@@ -20,10 +20,12 @@ export default function SwitchTemplate(this: Switch) {
20
20
  aria-label={this.ariaLabelText}
21
21
  aria-checked={this.checked}
22
22
  aria-disabled={this.effectiveAriaDisabled}
23
+ aria-readonly={this.effectiveAriaReadonly}
23
24
  aria-required={this.required}
24
25
  onClick={this._onclick}
25
26
  onKeyUp={this._onkeyup}
26
27
  onKeyDown={this._onkeydown}
28
+ onFocusIn={this._onfocusin}
27
29
  tabindex={this.effectiveTabIndex}
28
30
  title={this.tooltip}
29
31
  >
@@ -52,8 +54,8 @@ export default function SwitchTemplate(this: Switch) {
52
54
  </>
53
55
  :
54
56
  <>
55
- <span class="ui5-switch-text ui5-switch-text--on" part="text-on">{this._textOn}</span>
56
- <span class="ui5-switch-text ui5-switch-text--off" part="text-off">{this._textOff}</span>
57
+ <span class="ui5-switch-text ui5-switch-text--on" part="text-on" aria-hidden={this._textAriaHidden}>{this._textOn}</span>
58
+ <span class="ui5-switch-text ui5-switch-text--off" part="text-off" aria-hidden={this._textAriaHidden}>{this._textOff}</span>
57
59
  </>
58
60
  }
59
61
  </>
@@ -13,7 +13,7 @@ export default function TimePickerTemplate(this: TimePicker) {
13
13
  id={`${this._id}-inner`}
14
14
  class="ui5-time-picker-input"
15
15
  part="input"
16
- value={this.value}
16
+ value={this.displayValue}
17
17
  placeholder={this._placeholder}
18
18
  disabled={this.disabled}
19
19
  readonly={this.readonly}
@@ -17,9 +17,8 @@ export default function ToolbarTemplate(this: Toolbar) {
17
17
  return (
18
18
  <div class={{
19
19
  "ui5-tb-item": !item.hasFlexibleWidth,
20
- "ui5-tb-spacer": item.hasFlexibleWidth,
21
20
  "ui5-tb-self-overflow": item.hasOverflow,
22
- }} id={item._individualSlot}>
21
+ }} id={item._individualSlot} style={item.isSpacer ? item.styles : undefined}>
23
22
  <slot name={item._individualSlot}></slot>
24
23
  </div>
25
24
  );
@@ -226,6 +226,9 @@ DATEPICKER_OPEN_ICON_TITLE_OPENED=Close Picker
226
226
  #XACT: Aria information for the Date Picker
227
227
  DATEPICKER_DATE_DESCRIPTION=Date Input
228
228
 
229
+ #XFLD: DatePicker dialog header title on mobile
230
+ DATEPICKER_MOBILE_HEADER_TITLE=Enter date
231
+
229
232
  DATEPICKER_VALUE_MISSING=Fill in the date value in the format: {0}.
230
233
 
231
234
  DATEPICKER_PATTERN_MISSMATCH=This format is not supported. Fill in the date and time range values in the format: {0}.
@@ -257,7 +260,7 @@ DATERANGE_OVERFLOW=Fill in a value that is lower than the set max. value of {0}.
257
260
  DATERANGE_UNDERFLOW=Fill in a value that is higher than the set min. value of {0}.
258
261
 
259
262
  #XACT: Aria information for the Date Picker popover
260
- DATEPICKER_POPOVER_ACCESSIBLE_NAME=Choose Date for {0}
263
+ DATEPICKER_POPOVER_ACCESSIBLE_NAME=Enter date for {0}
261
264
 
262
265
  #XTXT: Date Picker placeholder prefix
263
266
  DATETIME_COMPONENTS_PLACEHOLDER_PREFIX=e.g.
@@ -617,7 +620,7 @@ DATETIME_PICKER_TIME_BUTTON=Time
617
620
  TOKEN_ARIA_DELETABLE=Deletable
618
621
 
619
622
  #XACT: ARIA announcement for token removal
620
- TOKEN_ARIA_REMOVE=Remove
623
+ TOKEN_ARIA_DELETE=Delete
621
624
 
622
625
  #XACT: ARIA announcement for token label
623
626
  TOKEN_ARIA_LABEL=Token
@@ -808,6 +811,12 @@ MENU_ITEM_GROUP_SINGLE_ACCESSIBLE_NAME=Contains Selectable Items
808
811
  #XACT: ARIA information for the Menu Item Group with itemSelectionMode "MultiSelect"
809
812
  MENU_ITEM_GROUP_MULTI_ACCESSIBLE_NAME=Contains Multi-Selectable Items
810
813
 
814
+ #XACT: ARIA information for the Menu Item end content slot
815
+ MENU_ITEM_END_CONTENT_ACCESSIBLE_NAME=Additional Actions
816
+
817
+ #XACT: ARIA information for the Menu Item loading state
818
+ MENU_ITEM_LOADING=Loading
819
+
811
820
  #XACT: ARIA announcement for roldesecription attribute of Dialog header
812
821
  DIALOG_HEADER_ARIA_ROLE_DESCRIPTION=Interactive Header
813
822
 
@@ -1008,6 +1017,12 @@ DYNAMIC_DATE_RANGE_NEXT_COMBINED_TEXT=Next X {0} (included)
1008
1017
  #XFLD: Suffix text for included date range options.
1009
1018
  DYNAMIC_DATE_RANGE_INCLUDED_TEXT=(included)
1010
1019
 
1020
+ #XACT: Default text for switch "on" state, used to detect duplicate screen reader announcements
1021
+ SWITCH_ON=On
1022
+
1023
+ #XACT: Default text for switch "off" state, used to detect duplicate screen reader announcements
1024
+ SWITCH_OFF=Off
1025
+
1011
1026
  #XACT: ARIA announcement for icon type image
1012
1027
  ICON_ARIA_TYPE_IMAGE=Image
1013
1028
 
@@ -244,6 +244,8 @@ LINK_SUBTLE=‌​​‌‍‍​‌​‌‍‍​​‌​‌‍‍
244
244
 
245
245
  LINK_EMPHASIZED=‌​‌‌‍‍​​‌‍‌‍‌​‌‌​​‌‌‍‌‌​‍‌‌‍​‍​‌​‌‍​‍‍‌‌‌Emphasized
246
246
 
247
+ LIST_ROLE_DESCRIPTION=‍‍‌‍‍‌‍​‌‍‍‍‌‌‍​​​​​​‍‍‌‍‍‍​‍‍‍‍‍‌‌‍​‍​‍List with interactive items. To move to the content, press F2.
248
+
247
249
  LIST_ITEM_ACTIVE=‌​‌‌‍‌‍‌‍‌‍‌‌‌‌‌‍​‍​​​​‍​‌‌​​​‌‌‍‌‌‍‍​​‌‍Is Active
248
250
 
249
251
  LIST_ITEM_POSITION=‌‌‍‍​‌‌​​​​‍‌‌‍​‌‌​‍‌​‍‍‌​‍‍​‌​​‌‌​‌‍‍​‍List item ​​​{0}‌‌‌ of ​​​{1}‌‌‌
@@ -29,6 +29,10 @@
29
29
  align-self: center;
30
30
  }
31
31
 
32
+ .ui5-breadcrumbs-current-location [ui5-label] {
33
+ color: var(--_ui5_breadcrumbs_current_location_color);
34
+ }
35
+
32
36
  .ui5-breadcrumbs-current-location,
33
37
  .ui5-breadcrumbs-link-wrapper:last-child {
34
38
  min-width: 1%;
@@ -96,7 +100,7 @@
96
100
  content: "/"; /* default separator is "Slash" */
97
101
  padding: 0 .25rem;
98
102
  cursor: auto;
99
- color: var(--sapContent_LabelColor);
103
+ color: var(--_ui5_breadcrumbs_separator_color);
100
104
  display: inline-block;
101
105
  font-family: var(--sapFontFamily);
102
106
  font-size: var(--sapFontSize);
@@ -121,4 +125,4 @@
121
125
 
122
126
  :host([separators="DoubleGreaterThan"]) .ui5-breadcrumbs-separator::after {
123
127
  content: ">>";
124
- }
128
+ }
@@ -70,7 +70,7 @@
70
70
  }
71
71
 
72
72
  .ui5-calheader-arrowbtn:not(:active) .ui5-calheader-btn-sectext {
73
- color: var(--sapNeutralElementColor);
73
+ color: var(--sapContent_LabelColor);
74
74
  font-size: var(--sapFontSmallSize);
75
75
  }
76
76
 
@@ -123,6 +123,20 @@
123
123
  pointer-events: none;
124
124
  }
125
125
 
126
+ /* White outline for selected state on mobile */
127
+ :host([selected]:not([_disabled])[on-phone]) .ui5-cp-item::after {
128
+ content: "";
129
+ box-sizing: border-box;
130
+ position: absolute;
131
+ top: calc(-1 * var(--_ui5_color_palette_item_height) + 0.375rem);
132
+ left: 0;
133
+ right: 0;
134
+ bottom: calc(-100%);
135
+ border: var(--_ui5_color-palette-item-after-not-focus-color);
136
+ border-radius: 0.1875rem;
137
+ pointer-events: none;
138
+ }
139
+
126
140
  :host(:not([_disabled]):not([on-phone]):not([selected]):not(:hover)) .ui5-cp-item:focus:not(:hover)::after {
127
141
  border: var(--_ui5_color-palette-item-after-focus-not-selected-border);
128
142
  }
@@ -37,3 +37,8 @@
37
37
  .ui5-dt-picker-action {
38
38
  margin: 0.25rem;
39
39
  }
40
+
41
+ [ui5-responsive-popover]::part(header) {
42
+ font-family: var(--_ui5_button_fontFamily);
43
+ text-align: left;
44
+ }
@@ -422,7 +422,7 @@
422
422
  }
423
423
 
424
424
  .ui5-dp-item--withsecondtype .ui5-dp-daytext {
425
- font-size: 0.75rem;
425
+ font-size: var(--_ui5_dp_item_withsecondtype_font_size);
426
426
  }
427
427
 
428
428
  .ui5-dp-item.ui5-dp-item--withsecondtype .ui5-dp-specialday,
@@ -126,6 +126,11 @@
126
126
  padding-top: 0.25rem;
127
127
  }
128
128
 
129
+ .ui5-menu-item-end-content {
130
+ display: inline-flex;
131
+ align-items: center;
132
+ }
133
+
129
134
  .ui5-menu-busy-indicator {
130
135
  position: absolute;
131
136
  width: 100%;
@@ -48,8 +48,8 @@
48
48
  }
49
49
 
50
50
  .ui5-dp-monthsectext {
51
- font-size: 0.75rem;
52
- color: var(--sapNeutralElementColor);
51
+ font-size: var(--sapFontSmallSize);
52
+ color: var(--sapTextColor);
53
53
  }
54
54
 
55
55
  .ui5-mp-item.ui5-mp-item--selected,
@@ -8,7 +8,7 @@
8
8
  }
9
9
 
10
10
  :host([tokenizer-available]) {
11
- min-width: calc(var(--_ui5_input_min_width) + (var(--_ui5-input-icons-count)*var(--_ui5_input_icon_width)) + var(--_ui5_input_tokenizer_min_width));
11
+ min-width: calc(var(--_ui5_input_min_width_tokenizer_available) + (var(--_ui5-input-icons-count)*var(--_ui5_input_icon_width)) + var(--_ui5_input_tokenizer_min_width));
12
12
  }
13
13
 
14
14
  :host(:not([hidden])) {
@@ -5,7 +5,7 @@
5
5
  }
6
6
 
7
7
  :host([tokenizer-available]) {
8
- min-width: calc(var(--_ui5_input_min_width) + (var(--_ui5-input-icons-count)*var(--_ui5_input_icon_width)) + var(--_ui5_input_tokenizer_min_width));
8
+ min-width: calc(var(--_ui5_input_min_width_tokenizer_available) + (var(--_ui5-input-icons-count)*var(--_ui5_input_icon_width)) + var(--_ui5_input_tokenizer_min_width));
9
9
  }
10
10
 
11
11
  .ui5-multi-input-tokenizer {
@@ -142,4 +142,11 @@
142
142
 
143
143
  ::slotted([slot="footer"][ui5-toolbar]) {
144
144
  border: 0;
145
+ }
146
+
147
+ ::slotted([slot="footer"][ui5-bar][design="Footer"]),
148
+ ::slotted([slot="header"][ui5-bar][design="Header"]) {
149
+ --_ui5_bar-start-container-padding-start: 0;
150
+ --_ui5_bar-mid-container-padding-start-end: 0;
151
+ --_ui5_bar-end-container-padding-end: 0;
145
152
  }