@ui5/webcomponents 2.22.0-rc.3 → 2.22.0-rc.4

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 (214) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/AvatarBadge.d.ts +3 -3
  4. package/dist/AvatarBadge.js +10 -10
  5. package/dist/AvatarBadge.js.map +1 -1
  6. package/dist/AvatarBadgeTemplate.js +1 -1
  7. package/dist/AvatarBadgeTemplate.js.map +1 -1
  8. package/dist/Calendar.d.ts +7 -1
  9. package/dist/Calendar.js +40 -3
  10. package/dist/Calendar.js.map +1 -1
  11. package/dist/CalendarHeaderTemplate.js +2 -2
  12. package/dist/CalendarHeaderTemplate.js.map +1 -1
  13. package/dist/ColorPaletteItem.d.ts +0 -1
  14. package/dist/ColorPaletteItem.js +0 -2
  15. package/dist/ColorPaletteItem.js.map +1 -1
  16. package/dist/RangeSlider.d.ts +19 -1
  17. package/dist/RangeSlider.js +112 -29
  18. package/dist/RangeSlider.js.map +1 -1
  19. package/dist/RangeSliderTemplate.d.ts +0 -3
  20. package/dist/RangeSliderTemplate.js +22 -17
  21. package/dist/RangeSliderTemplate.js.map +1 -1
  22. package/dist/SegmentedButtonItem.d.ts +0 -1
  23. package/dist/SegmentedButtonItem.js +0 -2
  24. package/dist/SegmentedButtonItem.js.map +1 -1
  25. package/dist/Slider.d.ts +1 -2
  26. package/dist/Slider.js +12 -7
  27. package/dist/Slider.js.map +1 -1
  28. package/dist/SliderBase.d.ts +0 -1
  29. package/dist/SliderBase.js +18 -15
  30. package/dist/SliderBase.js.map +1 -1
  31. package/dist/SliderHandle.d.ts +42 -9
  32. package/dist/SliderHandle.js +49 -9
  33. package/dist/SliderHandle.js.map +1 -1
  34. package/dist/SliderHandleTemplate.js +7 -1
  35. package/dist/SliderHandleTemplate.js.map +1 -1
  36. package/dist/SliderScale.d.ts +53 -0
  37. package/dist/SliderScale.js +67 -0
  38. package/dist/SliderScale.js.map +1 -1
  39. package/dist/SliderScaleTemplate.js +5 -1
  40. package/dist/SliderScaleTemplate.js.map +1 -1
  41. package/dist/SliderTemplate.js +1 -1
  42. package/dist/SliderTemplate.js.map +1 -1
  43. package/dist/Table.d.ts +1 -0
  44. package/dist/Table.js +16 -3
  45. package/dist/Table.js.map +1 -1
  46. package/dist/TableCell.d.ts +2 -2
  47. package/dist/TableCell.js +2 -2
  48. package/dist/TableCell.js.map +1 -1
  49. package/dist/TableHeaderRowTemplate.js +5 -2
  50. package/dist/TableHeaderRowTemplate.js.map +1 -1
  51. package/dist/TableNavigation.js +3 -0
  52. package/dist/TableNavigation.js.map +1 -1
  53. package/dist/TableRow.d.ts +0 -2
  54. package/dist/TableRow.js +0 -9
  55. package/dist/TableRow.js.map +1 -1
  56. package/dist/TableRowBase.d.ts +6 -1
  57. package/dist/TableRowBase.js +37 -2
  58. package/dist/TableRowBase.js.map +1 -1
  59. package/dist/TableRowTemplate.js +4 -2
  60. package/dist/TableRowTemplate.js.map +1 -1
  61. package/dist/Toolbar.d.ts +9 -0
  62. package/dist/Toolbar.js +4 -1
  63. package/dist/Toolbar.js.map +1 -1
  64. package/dist/css/themes/RangeSlider.css +1 -1
  65. package/dist/css/themes/Slider.css +1 -1
  66. package/dist/css/themes/SliderBase.css +1 -1
  67. package/dist/css/themes/SliderHandle.css +1 -1
  68. package/dist/css/themes/SliderScale.css +1 -1
  69. package/dist/css/themes/SliderTooltip.css +1 -1
  70. package/dist/css/themes/TableRow.css +1 -1
  71. package/dist/css/themes/TableRowBase.css +1 -1
  72. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  73. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  74. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  75. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  76. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  77. package/dist/css/themes/sap_horizon_auto/parameters-bundle.css +36 -93
  78. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  79. package/dist/css/themes/sap_horizon_hc_auto/parameters-bundle.css +37 -94
  80. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  81. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  82. package/dist/custom-elements-internal.json +43 -137
  83. package/dist/custom-elements.json +40 -101
  84. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  85. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  86. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  87. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  88. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  89. package/dist/generated/assets/themes/sap_horizon_auto/parameters-bundle.css.json +1 -1
  90. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  91. package/dist/generated/assets/themes/sap_horizon_hc_auto/parameters-bundle.css.json +1 -1
  92. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  93. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  94. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  95. package/dist/generated/themes/RangeSlider.css.js +1 -1
  96. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  97. package/dist/generated/themes/Slider.css.d.ts +1 -1
  98. package/dist/generated/themes/Slider.css.js +1 -1
  99. package/dist/generated/themes/Slider.css.js.map +1 -1
  100. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  101. package/dist/generated/themes/SliderBase.css.js +1 -1
  102. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  103. package/dist/generated/themes/SliderHandle.css.d.ts +1 -1
  104. package/dist/generated/themes/SliderHandle.css.js +1 -1
  105. package/dist/generated/themes/SliderHandle.css.js.map +1 -1
  106. package/dist/generated/themes/SliderScale.css.d.ts +1 -1
  107. package/dist/generated/themes/SliderScale.css.js +1 -1
  108. package/dist/generated/themes/SliderScale.css.js.map +1 -1
  109. package/dist/generated/themes/SliderTooltip.css.d.ts +1 -1
  110. package/dist/generated/themes/SliderTooltip.css.js +1 -1
  111. package/dist/generated/themes/SliderTooltip.css.js.map +1 -1
  112. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  113. package/dist/generated/themes/TableRow.css.js +1 -1
  114. package/dist/generated/themes/TableRow.css.js.map +1 -1
  115. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  116. package/dist/generated/themes/TableRowBase.css.js +1 -1
  117. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  118. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  119. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  120. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  121. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  122. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  123. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  124. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  125. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  126. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  127. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  128. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  129. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  130. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  131. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  132. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  133. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.d.ts +1 -1
  134. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.js +36 -93
  135. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.js.map +1 -1
  136. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  137. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  138. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  139. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.d.ts +1 -1
  140. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.js +37 -94
  141. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.js.map +1 -1
  142. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  143. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  144. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  145. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  146. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  147. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  148. package/dist/vscode.html-custom-data.json +12 -28
  149. package/dist/web-types.json +25 -60
  150. package/package.json +9 -9
  151. package/src/AvatarBadgeTemplate.tsx +1 -2
  152. package/src/CalendarHeaderTemplate.tsx +4 -0
  153. package/src/RangeSliderTemplate.tsx +146 -113
  154. package/src/SliderHandleTemplate.tsx +7 -1
  155. package/src/SliderScaleTemplate.tsx +26 -1
  156. package/src/SliderTemplate.tsx +0 -1
  157. package/src/TableHeaderRowTemplate.tsx +23 -1
  158. package/src/TableRowTemplate.tsx +13 -1
  159. package/src/i18n/messagebundle.properties +2 -2
  160. package/src/themes/RangeSlider.css +20 -68
  161. package/src/themes/Slider.css +3 -6
  162. package/src/themes/SliderBase.css +1 -269
  163. package/src/themes/SliderHandle.css +4 -3
  164. package/src/themes/SliderScale.css +45 -6
  165. package/src/themes/SliderTooltip.css +2 -2
  166. package/src/themes/TableRow.css +28 -39
  167. package/src/themes/TableRowBase.css +79 -20
  168. package/src/themes/base/SliderBase-parameters.css +1 -101
  169. package/src/themes/base/SliderHandle-parameters.css +22 -1
  170. package/src/themes/base/SliderScale-parameters.css +23 -3
  171. package/src/themes/base/SliderTooltip-parameters.css +3 -0
  172. package/src/themes/sap_fiori_3/Slider-parameters.css +4 -4
  173. package/src/themes/sap_fiori_3/SliderBase-parameters.css +0 -30
  174. package/src/themes/sap_fiori_3/SliderHandle-parameters.css +18 -1
  175. package/src/themes/sap_fiori_3/SliderScale-parameters.css +2 -8
  176. package/src/themes/sap_fiori_3/SliderTooltip-parameters.css +5 -0
  177. package/src/themes/sap_fiori_3_dark/Slider-parameters.css +4 -4
  178. package/src/themes/sap_fiori_3_dark/SliderBase-parameters.css +1 -26
  179. package/src/themes/sap_fiori_3_dark/SliderHandle-parameters.css +1 -5
  180. package/src/themes/sap_fiori_3_dark/SliderScale-parameters.css +1 -13
  181. package/src/themes/sap_fiori_3_dark/SliderTooltip-parameters.css +5 -0
  182. package/src/themes/sap_fiori_3_hcb/Slider-parameters.css +4 -4
  183. package/src/themes/sap_fiori_3_hcb/SliderBase-parameters.css +1 -39
  184. package/src/themes/sap_fiori_3_hcb/SliderHandle-parameters.css +1 -5
  185. package/src/themes/sap_fiori_3_hcb/SliderScale-parameters.css +4 -6
  186. package/src/themes/sap_fiori_3_hcb/SliderTooltip-parameters.css +5 -0
  187. package/src/themes/sap_fiori_3_hcw/Slider-parameters.css +4 -4
  188. package/src/themes/sap_fiori_3_hcw/SliderBase-parameters.css +1 -37
  189. package/src/themes/sap_fiori_3_hcw/SliderHandle-parameters.css +1 -5
  190. package/src/themes/sap_fiori_3_hcw/SliderScale-parameters.css +1 -14
  191. package/src/themes/sap_fiori_3_hcw/SliderTooltip-parameters.css +5 -0
  192. package/src/themes/sap_horizon/Slider-parameters.css +4 -4
  193. package/src/themes/sap_horizon/SliderBase-parameters.css +0 -49
  194. package/src/themes/sap_horizon/SliderHandle-parameters.css +2 -1
  195. package/src/themes/sap_horizon/SliderScale-parameters.css +4 -5
  196. package/src/themes/sap_horizon_dark/Slider-parameters.css +4 -4
  197. package/src/themes/sap_horizon_dark/SliderBase-parameters.css +1 -50
  198. package/src/themes/sap_horizon_dark/SliderHandle-parameters.css +1 -5
  199. package/src/themes/sap_horizon_dark/SliderScale-parameters.css +1 -10
  200. package/src/themes/sap_horizon_dark/SliderTooltip-parameters.css +1 -0
  201. package/src/themes/sap_horizon_hcb/Slider-parameters.css +4 -4
  202. package/src/themes/sap_horizon_hcb/SliderBase-parameters.css +1 -71
  203. package/src/themes/sap_horizon_hcb/SliderHandle-parameters.css +4 -3
  204. package/src/themes/sap_horizon_hcb/SliderScale-parameters.css +3 -2
  205. package/src/themes/sap_horizon_hcb/SliderTooltip-parameters.css +1 -0
  206. package/src/themes/sap_horizon_hcw/Slider-parameters.css +4 -4
  207. package/src/themes/sap_horizon_hcw/SliderBase-parameters.css +1 -72
  208. package/src/themes/sap_horizon_hcw/SliderHandle-parameters.css +1 -5
  209. package/src/themes/sap_horizon_hcw/SliderScale-parameters.css +1 -10
  210. package/src/themes/sap_horizon_hcw/SliderTooltip-parameters.css +1 -0
  211. package/dist/SliderBaseTemplate.d.ts +0 -10
  212. package/dist/SliderBaseTemplate.js +0 -19
  213. package/dist/SliderBaseTemplate.js.map +0 -1
  214. package/src/SliderBaseTemplate.tsx +0 -65
@@ -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.22.0-rc.3",
4
+ "version": "2.22.0-rc.4",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -173,11 +173,6 @@
173
173
  "description": "### Overview\n\nThe `ui5-avatar-badge` component is used to display a badge on top of `ui5-avatar` component.\nThe badge can display an icon and supports different states for visual affordance.\n\n### Usage\n\nThe badge should be used as a child element of `ui5-avatar` in the `badge` slot.\n\n```html\n<ui5-avatar>\n <ui5-avatar-badge icon=\"edit\" slot=\"badge\"></ui5-avatar-badge>\n</ui5-avatar>\n```\n\n### Keyboard Handling\n\nThe badge does not receive keyboard focus.\n\n### ES6 Module Import\n`import \"@ui5/webcomponents/dist/AvatarBadge.js\";`\n---\n",
174
174
  "doc-url": "",
175
175
  "attributes": [
176
- {
177
- "name": "accessible-name",
178
- "description": "Defines the custom text alternative of the badge icon.\n\n**Note:** If not provided, the badge uses the icon accessible name.\nIf no icon accessible name is available, a generic fallback text is used.",
179
- "value": { "type": "string | undefined", "default": "undefined" }
180
- },
181
176
  {
182
177
  "name": "icon",
183
178
  "description": "Defines the icon name to be displayed inside the badge.\n\n**Note:** You should import the desired icon first, then use its name as \"icon\".\n\n`import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`",
@@ -190,16 +185,16 @@
190
185
  "type": "\"None\" | \"Positive\" | \"Critical\" | \"Negative\" | \"Information\"",
191
186
  "default": "\"None\""
192
187
  }
188
+ },
189
+ {
190
+ "name": "tooltip",
191
+ "description": "Defines the tooltip text of the badge icon.\n\n**Note:** If not provided, the badge uses the icon accessible name.\nIf no icon accessible name is available, a generic fallback text is used.",
192
+ "value": { "type": "string | undefined", "default": "undefined" }
193
193
  }
194
194
  ],
195
195
  "events": [],
196
196
  "js": {
197
197
  "properties": [
198
- {
199
- "name": "accessible-name",
200
- "description": "Defines the custom text alternative of the badge icon.\n\n**Note:** If not provided, the badge uses the icon accessible name.\nIf no icon accessible name is available, a generic fallback text is used.",
201
- "value": { "type": "string | undefined" }
202
- },
203
198
  {
204
199
  "name": "icon",
205
200
  "description": "Defines the icon name to be displayed inside the badge.\n\n**Note:** You should import the desired icon first, then use its name as \"icon\".\n\n`import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`",
@@ -211,6 +206,11 @@
211
206
  "value": {
212
207
  "type": "\"None\" | \"Positive\" | \"Critical\" | \"Negative\" | \"Information\""
213
208
  }
209
+ },
210
+ {
211
+ "name": "tooltip",
212
+ "description": "Defines the tooltip text of the badge icon.\n\n**Note:** If not provided, the badge uses the icon accessible name.\nIf no icon accessible name is available, a generic fallback text is used.",
213
+ "value": { "type": "string | undefined" }
214
214
  }
215
215
  ],
216
216
  "events": []
@@ -8878,54 +8878,9 @@
8878
8878
  "name": "ui5-slider-handle",
8879
8879
  "description": "The <code>ui5-slider-handle</code> component represents the handle of the <code>ui5-slider</code> component.\n---\n",
8880
8880
  "doc-url": "",
8881
- "attributes": [
8882
- {
8883
- "name": "active",
8884
- "description": "Defines whether the slider handle is active.\n<br><br>\n<b>Note:</b> An active slider handle is currently being interacted with.",
8885
- "value": { "type": "boolean", "default": "false" }
8886
- },
8887
- {
8888
- "name": "max",
8889
- "description": "Defines the maximum value of the slider handle.\n<br><br>\n<b>Note:</b> The value should be greater than the <code>min</code> property of the parent <code>ui5-slider</code>.",
8890
- "value": { "type": "number", "default": "100" }
8891
- },
8892
- {
8893
- "name": "min",
8894
- "description": "Defines the minimum value of the slider handle.\n<br><br>\n<b>Note:</b> The value should be less than the <code>max</code> property of the parent <code>ui5-slider</code>.",
8895
- "value": { "type": "number", "default": "0" }
8896
- },
8897
- {
8898
- "name": "value",
8899
- "description": "Defines the value of the slider handle.\n<br><br>\n<b>Note:</b> The value should be between the <code>min</code> and <code>max</code> properties of the parent <code>ui5-slider</code>.",
8900
- "value": { "type": "number", "default": "0" }
8901
- }
8902
- ],
8881
+ "attributes": [],
8903
8882
  "events": [],
8904
- "js": {
8905
- "properties": [
8906
- {
8907
- "name": "active",
8908
- "description": "Defines whether the slider handle is active.\n<br><br>\n<b>Note:</b> An active slider handle is currently being interacted with.",
8909
- "value": { "type": "boolean" }
8910
- },
8911
- {
8912
- "name": "max",
8913
- "description": "Defines the maximum value of the slider handle.\n<br><br>\n<b>Note:</b> The value should be greater than the <code>min</code> property of the parent <code>ui5-slider</code>.",
8914
- "value": { "type": "number" }
8915
- },
8916
- {
8917
- "name": "min",
8918
- "description": "Defines the minimum value of the slider handle.\n<br><br>\n<b>Note:</b> The value should be less than the <code>max</code> property of the parent <code>ui5-slider</code>.",
8919
- "value": { "type": "number" }
8920
- },
8921
- {
8922
- "name": "value",
8923
- "description": "Defines the value of the slider handle.\n<br><br>\n<b>Note:</b> The value should be between the <code>min</code> and <code>max</code> properties of the parent <code>ui5-slider</code>.",
8924
- "value": { "type": "number" }
8925
- }
8926
- ],
8927
- "events": []
8928
- }
8883
+ "js": { "properties": [], "events": [] }
8929
8884
  },
8930
8885
  {
8931
8886
  "name": "ui5-slider-tooltip",
@@ -10169,7 +10124,7 @@
10169
10124
  },
10170
10125
  {
10171
10126
  "name": "merged",
10172
- "description": "Defines whether the cell is visually merged with the cell directly above it.\n\nThis is useful when consecutive cells in a column have the same value and should visually appear as a single merged cell.\nAlthough the cell is visually merged with the previous one, its content must still be provided for accessibility purposes.\n**Note:** This feature is disabled when cells are rendered as popin, and should remain `false` for interactive cell content.",
10127
+ "description": "Defines whether the cell is visually merged with the cell directly above it.\n\nThis is useful if consecutive cells in a column have the same value and should visually appear as a single merged cell.\nAlthough the cell is visually merged with the previous one, its content must still be provided for accessibility purposes.\n**Note:** This feature is disabled when cells are rendered as a popin, and should remain `false` for interactive cell content.",
10173
10128
  "value": { "type": "boolean", "default": "false" }
10174
10129
  }
10175
10130
  ],
@@ -10191,7 +10146,7 @@
10191
10146
  },
10192
10147
  {
10193
10148
  "name": "merged",
10194
- "description": "Defines whether the cell is visually merged with the cell directly above it.\n\nThis is useful when consecutive cells in a column have the same value and should visually appear as a single merged cell.\nAlthough the cell is visually merged with the previous one, its content must still be provided for accessibility purposes.\n**Note:** This feature is disabled when cells are rendered as popin, and should remain `false` for interactive cell content.",
10149
+ "description": "Defines whether the cell is visually merged with the cell directly above it.\n\nThis is useful if consecutive cells in a column have the same value and should visually appear as a single merged cell.\nAlthough the cell is visually merged with the previous one, its content must still be provided for accessibility purposes.\n**Note:** This feature is disabled when cells are rendered as a popin, and should remain `false` for interactive cell content.",
10195
10150
  "value": { "type": "boolean" }
10196
10151
  }
10197
10152
  ],
@@ -12135,6 +12090,11 @@
12135
12090
  "type": "\"Transparent\" | \"Solid\"",
12136
12091
  "default": "\"Solid\""
12137
12092
  }
12093
+ },
12094
+ {
12095
+ "name": "overflow-button-accessible-name",
12096
+ "description": "Defines the accessible ARIA name of the overflow button of the component.\n\n**Note:** When not set, the built-in translation for \"Additional Options\" is used.",
12097
+ "value": { "type": "string | undefined", "default": "undefined" }
12138
12098
  }
12139
12099
  ],
12140
12100
  "slots": [
@@ -12165,6 +12125,11 @@
12165
12125
  "name": "design",
12166
12126
  "description": "Defines the toolbar design.",
12167
12127
  "value": { "type": "\"Transparent\" | \"Solid\"" }
12128
+ },
12129
+ {
12130
+ "name": "overflow-button-accessible-name",
12131
+ "description": "Defines the accessible ARIA name of the overflow button of the component.\n\n**Note:** When not set, the built-in translation for \"Additional Options\" is used.",
12132
+ "value": { "type": "string | undefined" }
12168
12133
  }
12169
12134
  ],
12170
12135
  "events": []
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ui5/webcomponents",
3
- "version": "2.22.0-rc.3",
3
+ "version": "2.22.0-rc.4",
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.22.0-rc.3",
58
- "@ui5/webcomponents-icons": "2.22.0-rc.3",
59
- "@ui5/webcomponents-icons-business-suite": "2.22.0-rc.3",
60
- "@ui5/webcomponents-icons-tnt": "2.22.0-rc.3",
61
- "@ui5/webcomponents-localization": "2.22.0-rc.3",
62
- "@ui5/webcomponents-theming": "2.22.0-rc.3"
57
+ "@ui5/webcomponents-base": "2.22.0-rc.4",
58
+ "@ui5/webcomponents-icons": "2.22.0-rc.4",
59
+ "@ui5/webcomponents-icons-business-suite": "2.22.0-rc.4",
60
+ "@ui5/webcomponents-icons-tnt": "2.22.0-rc.4",
61
+ "@ui5/webcomponents-localization": "2.22.0-rc.4",
62
+ "@ui5/webcomponents-theming": "2.22.0-rc.4"
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.22.0-rc.3",
67
+ "@ui5/webcomponents-tools": "2.22.0-rc.4",
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": "38fe9415447d8f3d68eb801e4c0fab65295dca7f"
74
+ "gitHead": "c6f2ddc2f8bb1c55b9571d0e8f307755d578669d"
75
75
  }
@@ -8,8 +8,7 @@ export default function AvatarBadgeTemplate(this: AvatarBadge) {
8
8
  <Icon
9
9
  name={this.icon}
10
10
  class="ui5-avatar-badge-icon"
11
- accessibleName={this.effectiveAccessibleName}
12
- showTooltip={true}
11
+ title={this.effectiveTooltip}
13
12
  mode="Image"
14
13
  ></Icon>
15
14
  )}
@@ -56,6 +56,8 @@ function renderPrevButton(this: Calendar, isFirst: boolean, isMultiple: boolean)
56
56
  part="calendar-header-arrow-button"
57
57
  role="button"
58
58
  onMouseDown={this.onPrevButtonClick}
59
+ onKeyDown={this.onPrevButtonKeyDown}
60
+ onKeyUp={this.onPrevButtonKeyUp}
59
61
  tabindex={this._previousButtonDisabled ? -1 : 0}
60
62
  title={this.accInfo.tooltipPrevButton}
61
63
  aria-label={this.accInfo.ariaLabelPrevButton}
@@ -162,6 +164,8 @@ function renderNextButton(this: Calendar, isFirst: boolean, isLast: boolean, isM
162
164
  part="calendar-header-arrow-button"
163
165
  role="button"
164
166
  onMouseDown={this.onNextButtonClick}
167
+ onKeyDown={this.onNextButtonKeyDown}
168
+ onKeyUp={this.onNextButtonKeyUp}
165
169
  tabindex={this._nextButtonDisabled ? -1 : 0}
166
170
  title={this.accInfo.tooltipNextButton}
167
171
  aria-label={this.accInfo.ariaLabelNextButton}
@@ -1,128 +1,161 @@
1
- import directionArrows from "@ui5/webcomponents-icons/dist/direction-arrows.js";
2
1
  import type RangeSlider from "./RangeSlider.js";
3
- import Icon from "./Icon.js";
4
- import SliderBaseTemplate from "./SliderBaseTemplate.js";
5
2
  import SliderTooltip from "./SliderTooltip.js";
3
+ import SliderHandle, { SliderHandleType } from "./SliderHandle.js";
4
+ import SliderScale from "./SliderScale.js";
6
5
 
7
- export default function RangeSliderTemplate(this: RangeSlider) {
8
- return SliderBaseTemplate.call(this, {
9
- handlesAriaText,
10
- progressBar,
11
- handles,
12
- });
13
- }
6
+ const _handlePosition = (min: number, max: number, value: number) => {
7
+ const range = max - min;
8
+ const position = ((value - min) / range) * 100;
9
+ return position;
10
+ };
14
11
 
15
- export function handlesAriaText(this: RangeSlider) {
16
- return (<>
17
- <span id="ui5-slider-startHandleDesc" class="ui5-hidden-text">{this._ariaHandlesText.startHandleText}</span>
18
- <span id="ui5-slider-endHandleDesc" class="ui5-hidden-text">{this._ariaHandlesText.endHandleText}</span>
19
- </>);
20
- }
12
+ const startHandle = (slider: RangeSlider) => {
13
+ const position = _handlePosition(slider.min, slider.max, slider.startValue);
21
14
 
22
- export function progressBar(this: RangeSlider) {
23
15
  return (
24
- <div
25
- class="ui5-slider-progress-container"
26
- part="progress-container"
27
- >
28
- <div class="ui5-slider-progress"
29
- part="progress-bar"
30
- style={this.styles.progress}
31
- onFocusIn={this._onfocusin}
32
- onFocusOut={this._onfocusout}
33
- role="slider"
34
- tabIndex={this._tabIndex}
16
+ <>
17
+ <SliderHandle
18
+ value={slider.startValue}
19
+ min={slider.min}
20
+ max={slider.max}
21
+ tabIndex={slider._tabIndex}
22
+ active={slider.rangePressed}
23
+ handleType={SliderHandleType.Start}
35
24
  aria-orientation="horizontal"
36
- aria-valuemin={this.min}
37
- aria-valuemax={this.max}
38
- aria-valuenow={this._ariaValueNow}
39
- aria-valuetext={`From ${this.startValue} to ${this.endValue}`}
40
- aria-label={this._ariaLabel}
41
- aria-disabled={this._ariaDisabled}
42
- ></div>
43
- </div>
44
- );
45
- }
46
-
47
- export function handles(this: RangeSlider) {
48
- return (<>
49
- <div class="ui5-slider-handle-container" style={this.styles.startHandle} part="handle-container">
50
- <div class="ui5-slider-handle ui5-slider-handle--start"
51
25
  part="handle"
52
- onFocusIn={this._onfocusin}
53
- onFocusOut={this._onfocusout}
26
+ exportparts="icon: handle-icon"
54
27
  role="slider"
55
- tabindex={this._tabIndex}
56
- aria-orientation="horizontal"
57
- aria-valuemin={this.min}
58
- aria-valuemax={this.max}
59
- aria-valuenow={this.startValue}
60
- aria-labelledby={this._ariaLabelledByStartHandleText}
61
- aria-disabled={this._ariaDisabled}
62
- aria-describedby={this._ariaDescribedByHandleText}
63
- aria-keyshortcuts={this._ariaKeyshortcuts}
64
- >
65
- <Icon name={directionArrows}
66
- mode="Decorative"
67
- slider-icon
68
- ></Icon>
69
- </div>
28
+ aria-valuemin={slider.min}
29
+ aria-valuemax={slider.max}
30
+ aria-valuenow={slider.startValue}
31
+ aria-label={slider._ariaLabelStartHandle}
32
+ aria-disabled={slider._ariaDisabled}
33
+ aria-describedby={slider._ariaDescribedByHandleText}
34
+ onFocusIn={slider._onfocusin}
35
+ onFocusOut={slider._onfocusout}
36
+ style={{
37
+ "inset-inline-start": `clamp(0%, ${position}%, 100%)`,
38
+ }}
39
+ ></SliderHandle>
70
40
 
71
- <SliderTooltip
72
- open={this._tooltipsOpen}
73
- value={this.tooltipStartValue}
74
- valueState={this.tooltipStartValueState}
75
- min={this.min}
76
- max={this.max}
77
- data-sap-ui-start-value
78
- editable={this.editableTooltip}
79
- followRef={this._startHandle}
80
- onChange={this._onTooltipChange}
81
- onKeyDown={this._onTooltipKeydown}
82
- onFocusChange={this._onTooltipFocusChange}
83
- onOpen={this._onTooltipOpen}
84
- onInput={this._onTooltipInput}
85
- >
86
- </SliderTooltip>
87
- </div>
88
- <div class="ui5-slider-handle-container" style={this.styles.endHandle} part="handle-container">
89
- <div class="ui5-slider-handle ui5-slider-handle--end"
41
+ {startTooltip(slider)}
42
+ </>
43
+ );
44
+ };
45
+
46
+ const endHandle = (slider: RangeSlider) => {
47
+ const position = _handlePosition(slider.min, slider.max, slider.endValue);
48
+
49
+ return (
50
+ <>
51
+ <SliderHandle
52
+ value={slider.endValue}
53
+ min={slider.min}
54
+ max={slider.max}
55
+ tabIndex={slider._tabIndex}
56
+ active={slider.rangePressed}
57
+ handleType={SliderHandleType.End}
58
+ aria-orientation="horizontal"
90
59
  part="handle"
91
- onFocusIn={this._onfocusin}
92
- onFocusOut={this._onfocusout}
60
+ exportparts="icon: handle-icon"
93
61
  role="slider"
94
- tabIndex={this._tabIndex}
95
- aria-orientation="horizontal"
96
- aria-valuemin={this.min}
97
- aria-valuemax={this.max}
98
- aria-valuenow={this.endValue}
99
- aria-labelledby={this._ariaLabelledByEndHandleText}
100
- aria-describedby={this._ariaDescribedByHandleText}
101
- aria-disabled={this._ariaDisabled}
102
- aria-keyshortcuts="F2"
103
- >
104
- <Icon name={directionArrows}
105
- mode="Decorative"
106
- slider-icon
107
- ></Icon>
108
- </div>
62
+ aria-valuemin={slider.min}
63
+ aria-valuemax={slider.max}
64
+ aria-valuenow={slider.endValue}
65
+ aria-label={slider._ariaLabelEndHandle}
66
+ aria-disabled={slider._ariaDisabled}
67
+ aria-describedby={slider._ariaDescribedByHandleText}
68
+ onFocusIn={slider._onfocusin}
69
+ onFocusOut={slider._onfocusout}
70
+ style={{
71
+ "inset-inline-start": `clamp(0%, ${position}%, 100%)`,
72
+ }}
73
+ ></SliderHandle>
74
+
75
+ {endTooltip(slider)}
76
+ </>
77
+ );
78
+ };
109
79
 
110
- <SliderTooltip
111
- open={this._tooltipsOpen}
112
- value={this.tooltipEndValue}
113
- valueState={this.tooltipEndValueState}
114
- min={this.min}
115
- max={this.max}
116
- data-sap-ui-end-value
117
- editable={this.editableTooltip}
118
- followRef={this._endHandle}
119
- onChange={this._onTooltipChange}
120
- onKeyDown={this._onTooltipKeydown}
121
- onFocusChange={this._onTooltipFocusChange}
122
- onOpen={this._onTooltipOpen}
123
- onInput={this._onTooltipInput}
80
+ const startTooltip = (slider: RangeSlider) => (
81
+ <SliderTooltip
82
+ open={slider._tooltipsOpen}
83
+ value={slider.tooltipStartValue}
84
+ valueState={slider.tooltipStartValueState}
85
+ min={slider.min}
86
+ max={slider.max}
87
+ data-sap-ui-start-value
88
+ editable={slider.editableTooltip}
89
+ followRef={slider._startHandle}
90
+ onChange={slider._onTooltipChange}
91
+ onKeyDown={slider._onTooltipKeydown}
92
+ onFocusChange={slider._onTooltipFocusChange}
93
+ onOpen={slider._onTooltipOpen}
94
+ onInput={slider._onTooltipInput}
95
+ >
96
+ </SliderTooltip>
97
+ );
98
+
99
+ const endTooltip = (slider: RangeSlider) => (
100
+ <SliderTooltip
101
+ open={slider._tooltipsOpen}
102
+ value={slider.tooltipEndValue}
103
+ valueState={slider.tooltipEndValueState}
104
+ min={slider.min}
105
+ max={slider.max}
106
+ data-sap-ui-end-value
107
+ editable={slider.editableTooltip}
108
+ followRef={slider._endHandle}
109
+ onChange={slider._onTooltipChange}
110
+ onKeyDown={slider._onTooltipKeydown}
111
+ onFocusChange={slider._onTooltipFocusChange}
112
+ onOpen={slider._onTooltipOpen}
113
+ onInput={slider._onTooltipInput}
114
+ >
115
+ </SliderTooltip>
116
+ );
117
+
118
+ export default function RangeSliderTemplate(this: RangeSlider) {
119
+ return (
120
+ <>
121
+ <div
122
+ class="ui5-slider-evo-root"
123
+ part="root-container"
124
+ onMouseDown={this._onmousedown}
125
+ onTouchStart={this._onmousedown}
126
+ onMouseOver={this._onmouseover}
127
+ onMouseOut={this._onmouseout}
128
+ onKeyDown={this._onkeydown}
129
+ onKeyUp={this._onkeyup}
124
130
  >
125
- </SliderTooltip>
126
- </div>
127
- </>);
131
+ <SliderScale
132
+ startValue={this.startValue}
133
+ endValue={this.endValue}
134
+ min={this.min}
135
+ max={this.max}
136
+ step={this._effectiveStep}
137
+ showTickmarks={this.showTickmarks}
138
+ labelInterval={this.labelInterval}
139
+ progressTabIndex={this._tabIndex}
140
+ progressAriaValueNow={this._ariaValueNow}
141
+ progressAriaValueText={`From ${this.startValue} to ${this.endValue}`}
142
+ progressAriaLabel={this._ariaLabel}
143
+ progressAriaDisabled={this._ariaDisabled}
144
+ progressPressed={this.rangePressed}
145
+ progressFocused={this._progressFocused}
146
+ onFocusIn={this._onfocusin}
147
+ onFocusOut={this._onfocusout}
148
+ part="scale"
149
+ exportparts="inner: scale-inner, progress: progress-bar"
150
+ >
151
+ {startHandle(this)}
152
+ {endHandle(this)}
153
+
154
+ {this.editableTooltip && <>
155
+ <span id="ui5-slider-InputDesc" class="ui5-hidden-text">{this._ariaDescribedByInputText}</span>
156
+ </>}
157
+ </SliderScale>
158
+ </div>
159
+ </>
160
+ );
128
161
  }
@@ -1,10 +1,16 @@
1
1
  import directionArrows from "@ui5/webcomponents-icons/dist/direction-arrows.js";
2
2
  import Icon from "./Icon.js";
3
3
  import type SliderHandle from "./SliderHandle.js";
4
+ import { SliderHandleType } from "./SliderHandle.js";
4
5
 
5
6
  export default function SliderHandleTemplate(this: SliderHandle) {
6
7
  return (
7
- <div class="ui5-slider-handle-container">
8
+ <div class={{
9
+ "ui5-slider-handle-container": true,
10
+ "ui5-slider-handle": true,
11
+ "ui5-slider-handle--start": this.handleType === SliderHandleType.Start,
12
+ "ui5-slider-handle--end": this.handleType === SliderHandleType.End,
13
+ }}>
8
14
  <Icon name={directionArrows}
9
15
  mode="Decorative"
10
16
  part="icon"
@@ -25,7 +25,32 @@ export default function SliderScaleTemplate(this: SliderScale) {
25
25
  ))}
26
26
  </div>
27
27
  )}
28
- <div class="ui5-slider-scale-progress" part="progress" style={this._progressStyle}></div>
28
+ <div
29
+ class={{
30
+ "ui5-slider-scale-progress": true,
31
+ "ui5-slider-progress": true,
32
+ "ui5-slider-progress--focused": this.progressFocused || this.progressPressed,
33
+ }}
34
+ part="progress"
35
+ style={this._progressStyle}
36
+ tabIndex={this.progressTabIndex}
37
+ role="slider"
38
+ aria-orientation="horizontal"
39
+ aria-valuemin={this.min}
40
+ aria-valuemax={this.max}
41
+ aria-valuenow={this.progressAriaValueNow}
42
+ aria-valuetext={this.progressAriaValueText}
43
+ aria-label={this.progressAriaLabel}
44
+ aria-disabled={this.progressAriaDisabled}
45
+ onMouseEnter={this._onProgressMouseEnter}
46
+ onMouseLeave={this._onProgressMouseLeave}
47
+ ></div>
48
+ <div
49
+ class="ui5-slider-scale-progress-hover-area"
50
+ style={this._progressStyle}
51
+ onMouseEnter={this._onProgressMouseEnter}
52
+ onMouseLeave={this._onProgressMouseLeave}
53
+ ></div>
29
54
  <slot></slot>
30
55
  </div>
31
56
  );
@@ -29,7 +29,6 @@ const handle = (slider: Slider) => {
29
29
  aria-valuenow={slider.value}
30
30
  aria-label={slider._ariaLabel}
31
31
  aria-disabled={slider._ariaDisabled}
32
- aria-keyshortcuts={slider._ariaKeyshortcuts}
33
32
  aria-describedby={slider._ariaDescribedByHandleText}
34
33
  style={{
35
34
  "inset-inline-start": `clamp(0%, ${position}%, 100%)`,
@@ -54,13 +54,35 @@ export default function TableHeaderRowTemplate(this: TableHeaderRow, ariaColInde
54
54
  return [<slot name={cell._individualSlot}></slot>];
55
55
  })}
56
56
 
57
+ { this._renderDummyCell && this._hasPopin &&
58
+ <TableHeaderCell id="dummy-cell" role="none" aria-hidden={true}
59
+ data-excluded-from-navigation="">
60
+ </TableHeaderCell>
61
+ }
62
+
57
63
  { this._rowActionCount > 0 &&
58
64
  <TableHeaderCell id="actions-cell" aria-colindex={ariaColIndex++}>
59
65
  <div id="actions-cell-content">{this._i18nRowActions}</div>
60
66
  </TableHeaderCell>
61
67
  }
62
68
 
63
- { this._popinCells.length > 0 &&
69
+ { this._renderNavigated &&
70
+ <TableHeaderCell id="navigated-cell"
71
+ data-excluded-from-navigation
72
+ aria-hidden={true}
73
+ role="none"
74
+ >
75
+ <div id="navigated"></div>
76
+ </TableHeaderCell>
77
+ }
78
+
79
+ { this._renderDummyCell && !this._hasPopin &&
80
+ <TableHeaderCell id="dummy-cell" role="none" aria-hidden={true}
81
+ data-excluded-from-navigation="nofocus">
82
+ </TableHeaderCell>
83
+ }
84
+
85
+ { this._hasPopin &&
64
86
  <TableHeaderCell id="popin-cell" aria-colindex={ariaColIndex++} data-excluded-from-navigation>
65
87
  <div id="popin-cell-content">{this._i18nRowPopin}</div>
66
88
  </TableHeaderCell>
@@ -47,6 +47,12 @@ export default function TableRowTemplate(this: TableRow, ariaColIndex: number =
47
47
  return [<slot name={cell._individualSlot}></slot>];
48
48
  })}
49
49
 
50
+ { this._renderDummyCell && this._hasPopin &&
51
+ <TableCell id="dummy-cell" role="none" aria-hidden={true} data-border-merged=""
52
+ data-excluded-from-navigation="">
53
+ </TableCell>
54
+ }
55
+
50
56
  { this._rowActionCount > 0 &&
51
57
  <TableCell id="actions-cell"
52
58
  aria-colindex={ariaColIndex++}
@@ -80,7 +86,13 @@ export default function TableRowTemplate(this: TableRow, ariaColIndex: number =
80
86
  </TableCell>
81
87
  }
82
88
 
83
- { this._popinCells.length > 0 &&
89
+ { this._renderDummyCell && !this._hasPopin &&
90
+ <TableCell id="dummy-cell" role="none" aria-hidden={true} data-border-merged=""
91
+ data-excluded-from-navigation="nofocus">
92
+ </TableCell>
93
+ }
94
+
95
+ { this._hasPopin &&
84
96
  <TableCell id="popin-cell"
85
97
  data-ui5-table-popin-cell
86
98
  aria-colindex={ariaColIndex++}
@@ -478,10 +478,10 @@ PANEL_ICON=Expand/Collapse
478
478
  RANGE_SLIDER_ARIA_DESCRIPTION=Range
479
479
 
480
480
  #XACT: ARIA description for range slider start handle
481
- RANGE_SLIDER_START_HANDLE_DESCRIPTION=Left handle
481
+ RANGE_SLIDER_START_HANDLE_DESCRIPTION=Minimum
482
482
 
483
483
  #XACT: ARIA description for range slider end handle
484
- RANGE_SLIDER_END_HANDLE_DESCRIPTION=Right handle
484
+ RANGE_SLIDER_END_HANDLE_DESCRIPTION=Maximum
485
485
 
486
486
  #XBUT: Rating indicator tooltip text
487
487
  RATING_INDICATOR_TOOLTIP_TEXT=Rating