@ui5/webcomponents 2.22.0-rc.2 → 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 (260) hide show
  1. package/CHANGELOG.md +41 -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/ColorPalette.d.ts +8 -8
  14. package/dist/ColorPalette.js +7 -5
  15. package/dist/ColorPalette.js.map +1 -1
  16. package/dist/ColorPaletteItem.d.ts +8 -0
  17. package/dist/ColorPaletteItem.js +31 -0
  18. package/dist/ColorPaletteItem.js.map +1 -1
  19. package/dist/ColorPaletteItemTemplate.js +1 -1
  20. package/dist/ColorPaletteItemTemplate.js.map +1 -1
  21. package/dist/ColorPalettePopover.js +1 -1
  22. package/dist/ColorPalettePopover.js.map +1 -1
  23. package/dist/ComboBox.js +1 -1
  24. package/dist/ComboBox.js.map +1 -1
  25. package/dist/ComboBoxPopoverTemplate.js +2 -1
  26. package/dist/ComboBoxPopoverTemplate.js.map +1 -1
  27. package/dist/DateRangePicker.d.ts +12 -1
  28. package/dist/DateRangePicker.js +31 -1
  29. package/dist/DateRangePicker.js.map +1 -1
  30. package/dist/Input.js +8 -6
  31. package/dist/Input.js.map +1 -1
  32. package/dist/MultiComboBox.js +1 -1
  33. package/dist/MultiComboBox.js.map +1 -1
  34. package/dist/MultiInputTemplate.js +1 -1
  35. package/dist/MultiInputTemplate.js.map +1 -1
  36. package/dist/RangeSlider.d.ts +19 -1
  37. package/dist/RangeSlider.js +112 -29
  38. package/dist/RangeSlider.js.map +1 -1
  39. package/dist/RangeSliderTemplate.d.ts +0 -3
  40. package/dist/RangeSliderTemplate.js +22 -17
  41. package/dist/RangeSliderTemplate.js.map +1 -1
  42. package/dist/SegmentedButton.js +6 -4
  43. package/dist/SegmentedButton.js.map +1 -1
  44. package/dist/SegmentedButtonItem.d.ts +7 -0
  45. package/dist/SegmentedButtonItem.js +24 -1
  46. package/dist/SegmentedButtonItem.js.map +1 -1
  47. package/dist/Slider.d.ts +1 -2
  48. package/dist/Slider.js +12 -7
  49. package/dist/Slider.js.map +1 -1
  50. package/dist/SliderBase.d.ts +0 -1
  51. package/dist/SliderBase.js +18 -15
  52. package/dist/SliderBase.js.map +1 -1
  53. package/dist/SliderHandle.d.ts +42 -9
  54. package/dist/SliderHandle.js +49 -9
  55. package/dist/SliderHandle.js.map +1 -1
  56. package/dist/SliderHandleTemplate.js +7 -1
  57. package/dist/SliderHandleTemplate.js.map +1 -1
  58. package/dist/SliderScale.d.ts +53 -0
  59. package/dist/SliderScale.js +67 -0
  60. package/dist/SliderScale.js.map +1 -1
  61. package/dist/SliderScaleTemplate.js +5 -1
  62. package/dist/SliderScaleTemplate.js.map +1 -1
  63. package/dist/SliderTemplate.js +1 -1
  64. package/dist/SliderTemplate.js.map +1 -1
  65. package/dist/Table.d.ts +1 -0
  66. package/dist/Table.js +16 -3
  67. package/dist/Table.js.map +1 -1
  68. package/dist/TableCell.d.ts +2 -2
  69. package/dist/TableCell.js +2 -2
  70. package/dist/TableCell.js.map +1 -1
  71. package/dist/TableHeaderRowTemplate.js +5 -2
  72. package/dist/TableHeaderRowTemplate.js.map +1 -1
  73. package/dist/TableNavigation.js +3 -0
  74. package/dist/TableNavigation.js.map +1 -1
  75. package/dist/TableRow.d.ts +0 -2
  76. package/dist/TableRow.js +0 -9
  77. package/dist/TableRow.js.map +1 -1
  78. package/dist/TableRowBase.d.ts +6 -1
  79. package/dist/TableRowBase.js +37 -2
  80. package/dist/TableRowBase.js.map +1 -1
  81. package/dist/TableRowTemplate.js +4 -2
  82. package/dist/TableRowTemplate.js.map +1 -1
  83. package/dist/TextArea.d.ts +10 -0
  84. package/dist/TextArea.js +37 -0
  85. package/dist/TextArea.js.map +1 -1
  86. package/dist/Tokenizer.d.ts +6 -0
  87. package/dist/Tokenizer.js +4 -1
  88. package/dist/Tokenizer.js.map +1 -1
  89. package/dist/Toolbar.d.ts +9 -0
  90. package/dist/Toolbar.js +4 -1
  91. package/dist/Toolbar.js.map +1 -1
  92. package/dist/css/themes/CardHeader.css +1 -1
  93. package/dist/css/themes/RangeSlider.css +1 -1
  94. package/dist/css/themes/Select.css +1 -1
  95. package/dist/css/themes/Slider.css +1 -1
  96. package/dist/css/themes/SliderBase.css +1 -1
  97. package/dist/css/themes/SliderHandle.css +1 -1
  98. package/dist/css/themes/SliderScale.css +1 -1
  99. package/dist/css/themes/SliderTooltip.css +1 -1
  100. package/dist/css/themes/TableRow.css +1 -1
  101. package/dist/css/themes/TableRowBase.css +1 -1
  102. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  103. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  104. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  105. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  106. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  107. package/dist/css/themes/sap_horizon_auto/parameters-bundle.css +36 -93
  108. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  109. package/dist/css/themes/sap_horizon_hc_auto/parameters-bundle.css +37 -94
  110. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  111. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  112. package/dist/custom-elements-internal.json +109 -111
  113. package/dist/custom-elements.json +73 -102
  114. package/dist/features/InputComposition.d.ts +1 -1
  115. package/dist/features/InputComposition.js.map +1 -1
  116. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  117. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  118. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  119. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  120. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  121. package/dist/generated/assets/themes/sap_horizon_auto/parameters-bundle.css.json +1 -1
  122. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  123. package/dist/generated/assets/themes/sap_horizon_hc_auto/parameters-bundle.css.json +1 -1
  124. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  125. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  126. package/dist/generated/i18n/i18n-defaults.d.ts +3 -1
  127. package/dist/generated/i18n/i18n-defaults.js +3 -1
  128. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  129. package/dist/generated/themes/CardHeader.css.d.ts +1 -1
  130. package/dist/generated/themes/CardHeader.css.js +1 -1
  131. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  132. package/dist/generated/themes/RangeSlider.css.d.ts +1 -1
  133. package/dist/generated/themes/RangeSlider.css.js +1 -1
  134. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  135. package/dist/generated/themes/Select.css.d.ts +1 -1
  136. package/dist/generated/themes/Select.css.js +1 -1
  137. package/dist/generated/themes/Select.css.js.map +1 -1
  138. package/dist/generated/themes/Slider.css.d.ts +1 -1
  139. package/dist/generated/themes/Slider.css.js +1 -1
  140. package/dist/generated/themes/Slider.css.js.map +1 -1
  141. package/dist/generated/themes/SliderBase.css.d.ts +1 -1
  142. package/dist/generated/themes/SliderBase.css.js +1 -1
  143. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  144. package/dist/generated/themes/SliderHandle.css.d.ts +1 -1
  145. package/dist/generated/themes/SliderHandle.css.js +1 -1
  146. package/dist/generated/themes/SliderHandle.css.js.map +1 -1
  147. package/dist/generated/themes/SliderScale.css.d.ts +1 -1
  148. package/dist/generated/themes/SliderScale.css.js +1 -1
  149. package/dist/generated/themes/SliderScale.css.js.map +1 -1
  150. package/dist/generated/themes/SliderTooltip.css.d.ts +1 -1
  151. package/dist/generated/themes/SliderTooltip.css.js +1 -1
  152. package/dist/generated/themes/SliderTooltip.css.js.map +1 -1
  153. package/dist/generated/themes/TableRow.css.d.ts +1 -1
  154. package/dist/generated/themes/TableRow.css.js +1 -1
  155. package/dist/generated/themes/TableRow.css.js.map +1 -1
  156. package/dist/generated/themes/TableRowBase.css.d.ts +1 -1
  157. package/dist/generated/themes/TableRowBase.css.js +1 -1
  158. package/dist/generated/themes/TableRowBase.css.js.map +1 -1
  159. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  160. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  161. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  162. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  163. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  164. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  165. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  166. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  167. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  168. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  169. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  170. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  171. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  172. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  173. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  174. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.d.ts +1 -1
  175. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.js +36 -93
  176. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.js.map +1 -1
  177. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  178. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  179. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  180. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.d.ts +1 -1
  181. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.js +37 -94
  182. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.js.map +1 -1
  183. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  184. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  185. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  186. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  187. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  188. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  189. package/dist/vscode.html-custom-data.json +15 -31
  190. package/dist/web-types.json +52 -67
  191. package/package.json +9 -9
  192. package/src/AvatarBadgeTemplate.tsx +1 -2
  193. package/src/CalendarHeaderTemplate.tsx +4 -0
  194. package/src/ColorPaletteItemTemplate.tsx +1 -0
  195. package/src/ComboBoxPopoverTemplate.tsx +8 -1
  196. package/src/MultiInputTemplate.tsx +1 -0
  197. package/src/RangeSliderTemplate.tsx +146 -113
  198. package/src/SliderHandleTemplate.tsx +7 -1
  199. package/src/SliderScaleTemplate.tsx +26 -1
  200. package/src/SliderTemplate.tsx +0 -1
  201. package/src/TableHeaderRowTemplate.tsx +23 -1
  202. package/src/TableRowTemplate.tsx +13 -1
  203. package/src/i18n/messagebundle.properties +8 -2
  204. package/src/themes/CardHeader.css +0 -1
  205. package/src/themes/RangeSlider.css +20 -68
  206. package/src/themes/Select.css +25 -0
  207. package/src/themes/Slider.css +3 -6
  208. package/src/themes/SliderBase.css +1 -269
  209. package/src/themes/SliderHandle.css +4 -3
  210. package/src/themes/SliderScale.css +45 -6
  211. package/src/themes/SliderTooltip.css +2 -2
  212. package/src/themes/TableRow.css +28 -39
  213. package/src/themes/TableRowBase.css +79 -20
  214. package/src/themes/base/SliderBase-parameters.css +1 -101
  215. package/src/themes/base/SliderHandle-parameters.css +22 -1
  216. package/src/themes/base/SliderScale-parameters.css +23 -3
  217. package/src/themes/base/SliderTooltip-parameters.css +3 -0
  218. package/src/themes/sap_fiori_3/Slider-parameters.css +4 -4
  219. package/src/themes/sap_fiori_3/SliderBase-parameters.css +0 -30
  220. package/src/themes/sap_fiori_3/SliderHandle-parameters.css +18 -1
  221. package/src/themes/sap_fiori_3/SliderScale-parameters.css +2 -8
  222. package/src/themes/sap_fiori_3/SliderTooltip-parameters.css +5 -0
  223. package/src/themes/sap_fiori_3_dark/Slider-parameters.css +4 -4
  224. package/src/themes/sap_fiori_3_dark/SliderBase-parameters.css +1 -26
  225. package/src/themes/sap_fiori_3_dark/SliderHandle-parameters.css +1 -5
  226. package/src/themes/sap_fiori_3_dark/SliderScale-parameters.css +1 -13
  227. package/src/themes/sap_fiori_3_dark/SliderTooltip-parameters.css +5 -0
  228. package/src/themes/sap_fiori_3_hcb/Slider-parameters.css +4 -4
  229. package/src/themes/sap_fiori_3_hcb/SliderBase-parameters.css +1 -39
  230. package/src/themes/sap_fiori_3_hcb/SliderHandle-parameters.css +1 -5
  231. package/src/themes/sap_fiori_3_hcb/SliderScale-parameters.css +4 -6
  232. package/src/themes/sap_fiori_3_hcb/SliderTooltip-parameters.css +5 -0
  233. package/src/themes/sap_fiori_3_hcw/Slider-parameters.css +4 -4
  234. package/src/themes/sap_fiori_3_hcw/SliderBase-parameters.css +1 -37
  235. package/src/themes/sap_fiori_3_hcw/SliderHandle-parameters.css +1 -5
  236. package/src/themes/sap_fiori_3_hcw/SliderScale-parameters.css +1 -14
  237. package/src/themes/sap_fiori_3_hcw/SliderTooltip-parameters.css +5 -0
  238. package/src/themes/sap_horizon/Slider-parameters.css +4 -4
  239. package/src/themes/sap_horizon/SliderBase-parameters.css +0 -49
  240. package/src/themes/sap_horizon/SliderHandle-parameters.css +2 -1
  241. package/src/themes/sap_horizon/SliderScale-parameters.css +4 -5
  242. package/src/themes/sap_horizon_dark/Slider-parameters.css +4 -4
  243. package/src/themes/sap_horizon_dark/SliderBase-parameters.css +1 -50
  244. package/src/themes/sap_horizon_dark/SliderHandle-parameters.css +1 -5
  245. package/src/themes/sap_horizon_dark/SliderScale-parameters.css +1 -10
  246. package/src/themes/sap_horizon_dark/SliderTooltip-parameters.css +1 -0
  247. package/src/themes/sap_horizon_hcb/Slider-parameters.css +4 -4
  248. package/src/themes/sap_horizon_hcb/SliderBase-parameters.css +1 -71
  249. package/src/themes/sap_horizon_hcb/SliderHandle-parameters.css +4 -3
  250. package/src/themes/sap_horizon_hcb/SliderScale-parameters.css +3 -2
  251. package/src/themes/sap_horizon_hcb/SliderTooltip-parameters.css +1 -0
  252. package/src/themes/sap_horizon_hcw/Slider-parameters.css +4 -4
  253. package/src/themes/sap_horizon_hcw/SliderBase-parameters.css +1 -72
  254. package/src/themes/sap_horizon_hcw/SliderHandle-parameters.css +1 -5
  255. package/src/themes/sap_horizon_hcw/SliderScale-parameters.css +1 -10
  256. package/src/themes/sap_horizon_hcw/SliderTooltip-parameters.css +1 -0
  257. package/dist/SliderBaseTemplate.d.ts +0 -10
  258. package/dist/SliderBaseTemplate.js +0 -19
  259. package/dist/SliderBaseTemplate.js.map +0 -1
  260. package/src/SliderBaseTemplate.tsx +0 -65
@@ -20,7 +20,7 @@ export default function MultiInputTemplate() {
20
20
  }
21
21
  function preContent() {
22
22
  return (_jsxs(_Fragment, { children: [_jsx("span", { id: "hiddenText-nMore", class: "ui5-hidden-text", children: this._tokensCountText }), this.showValueHelpIcon &&
23
- _jsx("span", { id: "hiddenText-value-help", class: "ui5-hidden-text", children: this._valueHelpText }), _jsx(Tokenizer, { class: "ui5-multi-input-tokenizer", opener: this.morePopoverOpener, popoverMinWidth: this._inputWidth, hidePopoverArrow: true, expanded: this.tokenizerExpanded, onKeyDown: this._onTokenizerKeydown, onTokenDelete: this.tokenDelete, onFocusOut: this._tokenizerFocusOut, onShowMoreItemsPress: this._showMoreItemsPress, children: this.tokens.map(token => _jsx("slot", { name: token._individualSlot })) })] }));
23
+ _jsx("span", { id: "hiddenText-value-help", class: "ui5-hidden-text", children: this._valueHelpText }), _jsx(Tokenizer, { class: "ui5-multi-input-tokenizer", opener: this.morePopoverOpener, popoverMinWidth: this._inputWidth, popoverTitle: this._headerTitleText, hidePopoverArrow: true, expanded: this.tokenizerExpanded, onKeyDown: this._onTokenizerKeydown, onTokenDelete: this.tokenDelete, onFocusOut: this._tokenizerFocusOut, onShowMoreItemsPress: this._showMoreItemsPress, children: this.tokens.map(token => _jsx("slot", { name: token._individualSlot })) })] }));
24
24
  }
25
25
  function postContent() {
26
26
  return (_jsx(_Fragment, { children: this.showValueHelpIcon &&
@@ -1 +1 @@
1
- {"version":3,"file":"MultiInputTemplate.js","sourceRoot":"","sources":["../src/MultiInputTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import Icon from \"./Icon.js\";\nimport multiSelectAll from \"@ui5/webcomponents-icons/dist/multiselect-all.js\";\nimport InputTemplate from \"./InputTemplate.js\";\nimport type MultiInput from \"./MultiInput.js\";\nimport type { MultiInputTokenDeleteEventDetail } from \"./MultiInput.js\";\nimport Tokenizer from \"./Tokenizer.js\";\nimport ToggleButton from \"./ToggleButton.js\";\nimport List from \"./List.js\";\nimport ListItemStandard from \"./ListItemStandard.js\";\nimport ListAccessibleRole from \"./types/ListAccessibleRole.js\";\nimport valueHelp from \"@ui5/webcomponents-icons/dist/value-help.js\";\n\nexport default function MultiInputTemplate(this: MultiInput) {\n\treturn [\n\t\tInputTemplate.call(this, {\n\t\t\tpreContent,\n\t\t\tpostContent,\n\t\t\tsuggestionsList: multiInputSuggestionsList,\n\t\t\tmobileHeader: multiInputMobileHeader,\n\t\t}),\n\t];\n}\n\nfunction preContent(this: MultiInput) {\n\treturn (\n\t\t<>\n\t\t\t<span id=\"hiddenText-nMore\" class=\"ui5-hidden-text\">{this._tokensCountText}</span>\n\n\t\t\t{this.showValueHelpIcon &&\n\t\t\t\t<span id=\"hiddenText-value-help\" class=\"ui5-hidden-text\">{this._valueHelpText}</span>\n\t\t\t}\n\t\t\t<Tokenizer\n\t\t\t\tclass=\"ui5-multi-input-tokenizer\"\n\t\t\t\topener={this.morePopoverOpener}\n\t\t\t\tpopoverMinWidth={this._inputWidth}\n\t\t\t\thidePopoverArrow={true}\n\t\t\t\texpanded={this.tokenizerExpanded}\n\t\t\t\tonKeyDown={this._onTokenizerKeydown}\n\t\t\t\tonTokenDelete={this.tokenDelete}\n\t\t\t\tonFocusOut={this._tokenizerFocusOut}\n\t\t\t\tonShowMoreItemsPress={this._showMoreItemsPress}\n\t\t\t>\n\t\t\t\t{ this.tokens.map(token => <slot name={token._individualSlot}></slot>)}\n\t\t\t</Tokenizer>\n\t\t</>\n\t);\n}\n\nfunction postContent(this: MultiInput) {\n\treturn (\n\t\t<>\n\t\t\t{this.showValueHelpIcon &&\n\t\t\t\t<Icon\n\t\t\t\t\tclass=\"inputIcon\"\n\t\t\t\t\tname={valueHelp}\n\t\t\t\t\taccessibleName={this.valueHelpLabel}\n\t\t\t\t\tonMouseUp={this.valueHelpMouseUp}\n\t\t\t\t\tonMouseDown={this.valueHelpMouseDown}\n\t\t\t\t\tonClick={this.valueHelpPress}\n\t\t\t\t/>\n\t\t\t}\n\t\t</>\n\t);\n}\n\nfunction multiInputSuggestionsList(this: MultiInput) {\n\tif (this._effectiveShowTokensInSuggestions) {\n\t\treturn (\n\t\t\t<List\n\t\t\t\tclass=\"ui5-tokenizer-list\"\n\t\t\t\taccessibleRole={ListAccessibleRole.ListBox}\n\t\t\t\tseparators={this.suggestionSeparators}\n\t\t\t\tselectionMode=\"Delete\"\n\t\t\t\tonMouseDown={this.onItemMouseDown}\n\t\t\t\tonItemClick={this._handleSuggestionItemPress}\n\t\t\t\tonSelectionChange={this._handleSelectionChange}\n\t\t\t\tonItemDelete={(e: any) => {\n\t\t\t\t\tconst listItem = e.detail.item;\n\t\t\t\t\tconst tokenId = listItem.getAttribute(\"data-ui5-token-ref-id\");\n\t\t\t\t\tconst token = this.tokens.find((t: any) => t._id === tokenId);\n\n\t\t\t\t\tif (token) {\n\t\t\t\t\t\tthis.tokenDelete({ detail: { tokens: [token] } } as CustomEvent<MultiInputTokenDeleteEventDetail>);\n\t\t\t\t\t}\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this.tokens?.map((token: any, index: number) => (\n\t\t\t\t\t<ListItemStandard\n\t\t\t\t\t\tkey={index}\n\t\t\t\t\t\tclass=\"ui5-suggestion-token-item\"\n\t\t\t\t\t\tdata-ui5-token-ref-id={token._id}\n\t\t\t\t\t\twrappingType=\"Normal\"\n\t\t\t\t\t\ttext={token.text}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t</List>\n\t\t);\n\t}\n\n\treturn (\n\t\t<List\n\t\t\taccessibleRole={ListAccessibleRole.ListBox}\n\t\t\tseparators={this.suggestionSeparators}\n\t\t\tselectionMode=\"Single\"\n\t\t\tonMouseDown={this.onItemMouseDown}\n\t\t\tonItemClick={this._handleSuggestionItemPress}\n\t\t\tonSelectionChange={this._handleSelectionChange}\n\t\t>\n\t\t\t<slot></slot>\n\t\t</List>\n\t);\n}\n\nfunction multiInputMobileHeader(this: MultiInput) {\n\treturn (\n\t\t<ToggleButton\n\t\t\tclass=\"ui5-multi-input-mobile-dialog-button\"\n\t\t\tdesign=\"Transparent\"\n\t\t\ticon={multiSelectAll}\n\t\t\taccessibleName={this._filterButtonAccessibleName}\n\t\t\tdisabled={!this.tokens?.length}\n\t\t\tpressed={this._effectiveShowTokensInSuggestions}\n\t\t\tonClick={() => {\n\t\t\t\tthis._userToggledShowTokens = true;\n\t\t\t\tthis._showTokensInSuggestions = !this._effectiveShowTokensInSuggestions;\n\t\t\t}}\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"file":"MultiInputTemplate.js","sourceRoot":"","sources":["../src/MultiInputTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import Icon from \"./Icon.js\";\nimport multiSelectAll from \"@ui5/webcomponents-icons/dist/multiselect-all.js\";\nimport InputTemplate from \"./InputTemplate.js\";\nimport type MultiInput from \"./MultiInput.js\";\nimport type { MultiInputTokenDeleteEventDetail } from \"./MultiInput.js\";\nimport Tokenizer from \"./Tokenizer.js\";\nimport ToggleButton from \"./ToggleButton.js\";\nimport List from \"./List.js\";\nimport ListItemStandard from \"./ListItemStandard.js\";\nimport ListAccessibleRole from \"./types/ListAccessibleRole.js\";\nimport valueHelp from \"@ui5/webcomponents-icons/dist/value-help.js\";\n\nexport default function MultiInputTemplate(this: MultiInput) {\n\treturn [\n\t\tInputTemplate.call(this, {\n\t\t\tpreContent,\n\t\t\tpostContent,\n\t\t\tsuggestionsList: multiInputSuggestionsList,\n\t\t\tmobileHeader: multiInputMobileHeader,\n\t\t}),\n\t];\n}\n\nfunction preContent(this: MultiInput) {\n\treturn (\n\t\t<>\n\t\t\t<span id=\"hiddenText-nMore\" class=\"ui5-hidden-text\">{this._tokensCountText}</span>\n\n\t\t\t{this.showValueHelpIcon &&\n\t\t\t\t<span id=\"hiddenText-value-help\" class=\"ui5-hidden-text\">{this._valueHelpText}</span>\n\t\t\t}\n\t\t\t<Tokenizer\n\t\t\t\tclass=\"ui5-multi-input-tokenizer\"\n\t\t\t\topener={this.morePopoverOpener}\n\t\t\t\tpopoverMinWidth={this._inputWidth}\n\t\t\t\tpopoverTitle={this._headerTitleText}\n\t\t\t\thidePopoverArrow={true}\n\t\t\t\texpanded={this.tokenizerExpanded}\n\t\t\t\tonKeyDown={this._onTokenizerKeydown}\n\t\t\t\tonTokenDelete={this.tokenDelete}\n\t\t\t\tonFocusOut={this._tokenizerFocusOut}\n\t\t\t\tonShowMoreItemsPress={this._showMoreItemsPress}\n\t\t\t>\n\t\t\t\t{ this.tokens.map(token => <slot name={token._individualSlot}></slot>)}\n\t\t\t</Tokenizer>\n\t\t</>\n\t);\n}\n\nfunction postContent(this: MultiInput) {\n\treturn (\n\t\t<>\n\t\t\t{this.showValueHelpIcon &&\n\t\t\t\t<Icon\n\t\t\t\t\tclass=\"inputIcon\"\n\t\t\t\t\tname={valueHelp}\n\t\t\t\t\taccessibleName={this.valueHelpLabel}\n\t\t\t\t\tonMouseUp={this.valueHelpMouseUp}\n\t\t\t\t\tonMouseDown={this.valueHelpMouseDown}\n\t\t\t\t\tonClick={this.valueHelpPress}\n\t\t\t\t/>\n\t\t\t}\n\t\t</>\n\t);\n}\n\nfunction multiInputSuggestionsList(this: MultiInput) {\n\tif (this._effectiveShowTokensInSuggestions) {\n\t\treturn (\n\t\t\t<List\n\t\t\t\tclass=\"ui5-tokenizer-list\"\n\t\t\t\taccessibleRole={ListAccessibleRole.ListBox}\n\t\t\t\tseparators={this.suggestionSeparators}\n\t\t\t\tselectionMode=\"Delete\"\n\t\t\t\tonMouseDown={this.onItemMouseDown}\n\t\t\t\tonItemClick={this._handleSuggestionItemPress}\n\t\t\t\tonSelectionChange={this._handleSelectionChange}\n\t\t\t\tonItemDelete={(e: any) => {\n\t\t\t\t\tconst listItem = e.detail.item;\n\t\t\t\t\tconst tokenId = listItem.getAttribute(\"data-ui5-token-ref-id\");\n\t\t\t\t\tconst token = this.tokens.find((t: any) => t._id === tokenId);\n\n\t\t\t\t\tif (token) {\n\t\t\t\t\t\tthis.tokenDelete({ detail: { tokens: [token] } } as CustomEvent<MultiInputTokenDeleteEventDetail>);\n\t\t\t\t\t}\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this.tokens?.map((token: any, index: number) => (\n\t\t\t\t\t<ListItemStandard\n\t\t\t\t\t\tkey={index}\n\t\t\t\t\t\tclass=\"ui5-suggestion-token-item\"\n\t\t\t\t\t\tdata-ui5-token-ref-id={token._id}\n\t\t\t\t\t\twrappingType=\"Normal\"\n\t\t\t\t\t\ttext={token.text}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t</List>\n\t\t);\n\t}\n\n\treturn (\n\t\t<List\n\t\t\taccessibleRole={ListAccessibleRole.ListBox}\n\t\t\tseparators={this.suggestionSeparators}\n\t\t\tselectionMode=\"Single\"\n\t\t\tonMouseDown={this.onItemMouseDown}\n\t\t\tonItemClick={this._handleSuggestionItemPress}\n\t\t\tonSelectionChange={this._handleSelectionChange}\n\t\t>\n\t\t\t<slot></slot>\n\t\t</List>\n\t);\n}\n\nfunction multiInputMobileHeader(this: MultiInput) {\n\treturn (\n\t\t<ToggleButton\n\t\t\tclass=\"ui5-multi-input-mobile-dialog-button\"\n\t\t\tdesign=\"Transparent\"\n\t\t\ticon={multiSelectAll}\n\t\t\taccessibleName={this._filterButtonAccessibleName}\n\t\t\tdisabled={!this.tokens?.length}\n\t\t\tpressed={this._effectiveShowTokensInSuggestions}\n\t\t\tonClick={() => {\n\t\t\t\tthis._userToggledShowTokens = true;\n\t\t\t\tthis._showTokensInSuggestions = !this._effectiveShowTokensInSuggestions;\n\t\t\t}}\n\t\t/>\n\t);\n}\n"]}
@@ -85,6 +85,7 @@ declare class RangeSlider extends SliderBase implements IFormInputElement {
85
85
  tooltipStartValueState: `${ValueState}`;
86
86
  tooltipEndValueState: `${ValueState}`;
87
87
  rangePressed: boolean;
88
+ _progressFocused: boolean;
88
89
  _isStartValueValid: boolean;
89
90
  _isEndValueValid: boolean;
90
91
  _startValue: number;
@@ -105,9 +106,17 @@ declare class RangeSlider extends SliderBase implements IFormInputElement {
105
106
  _lastValidStartValue: string;
106
107
  _lastValidEndValue: string;
107
108
  _areInputValuesSwapped: boolean;
109
+ _onDocumentClickBound: (e: MouseEvent) => void;
108
110
  static i18nBundle: I18nBundle;
109
111
  get formFormattedValue(): FormData;
110
112
  constructor();
113
+ onEnterDOM(): void;
114
+ onExitDOM(): void;
115
+ /**
116
+ * Handles document-level clicks to clear progress focus when clicking outside.
117
+ * @private
118
+ */
119
+ _onDocumentClick(e: MouseEvent): void;
111
120
  get _ariaDisabled(): true | undefined;
112
121
  get _ariaLabelledByText(): string;
113
122
  get _ariaHandlesText(): AriaHandlesText;
@@ -306,9 +315,18 @@ declare class RangeSlider extends SliderBase implements IFormInputElement {
306
315
  get tickmarksObject(): boolean[];
307
316
  get _startHandle(): HTMLElement;
308
317
  get _endHandle(): HTMLElement;
309
- get _progressBar(): HTMLElement;
318
+ get _progressBar(): HTMLElement | null;
310
319
  get _ariaLabelledByStartHandleText(): string;
311
320
  get _ariaLabelledByEndHandleText(): string;
321
+ /**
322
+ * @private
323
+ */
324
+ get _ariaLabelStartHandle(): string;
325
+ /**
326
+ * @private
327
+ */
328
+ get _ariaLabelEndHandle(): string;
329
+ _getAriaLabelHandle(handleDescription: string): string;
312
330
  get _ariaLabelledByInputText(): string;
313
331
  get _ariaDescribedByInputText(): string;
314
332
  get styles(): {
@@ -10,6 +10,7 @@ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
10
10
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
11
11
  import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
12
12
  import { isEscape, isEnter, isHome, isEnd, isF2, } from "@ui5/webcomponents-base/dist/Keys.js";
13
+ import { getAssociatedLabelForTexts } from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
13
14
  import SliderBase from "./SliderBase.js";
14
15
  import RangeSliderTemplate from "./RangeSliderTemplate.js";
15
16
  // Texts
@@ -80,7 +81,7 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
80
81
  */
81
82
  set startValue(value) {
82
83
  this._startValue = value;
83
- this.tooltipStartValue = value.toString();
84
+ this.tooltipStartValue = value?.toString() ?? "";
84
85
  }
85
86
  get startValue() {
86
87
  return this._startValue;
@@ -94,7 +95,7 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
94
95
  */
95
96
  set endValue(value) {
96
97
  this._endValue = value;
97
- this.tooltipEndValue = value.toString();
98
+ this.tooltipEndValue = value?.toString() ?? "";
98
99
  }
99
100
  get endValue() {
100
101
  return this._endValue;
@@ -115,6 +116,7 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
115
116
  this.tooltipStartValueState = "None";
116
117
  this.tooltipEndValueState = "None";
117
118
  this.rangePressed = false;
119
+ this._progressFocused = false;
118
120
  this._isStartValueValid = false;
119
121
  this._isEndValueValid = false;
120
122
  this._startValue = 0;
@@ -127,6 +129,25 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
127
129
  this._stateStorage.endValue = undefined;
128
130
  this._lastValidStartValue = this.min.toString();
129
131
  this._lastValidEndValue = this.max.toString();
132
+ this._onDocumentClickBound = this._onDocumentClick.bind(this);
133
+ }
134
+ onEnterDOM() {
135
+ document.addEventListener("mousedown", this._onDocumentClickBound, true);
136
+ }
137
+ onExitDOM() {
138
+ document.removeEventListener("mousedown", this._onDocumentClickBound, true);
139
+ }
140
+ /**
141
+ * Handles document-level clicks to clear progress focus when clicking outside.
142
+ * @private
143
+ */
144
+ _onDocumentClick(e) {
145
+ const clickedInside = e.composedPath().includes(this);
146
+ if (!clickedInside) {
147
+ if (this._tooltipsOpen) {
148
+ this._tooltipsOpen = false;
149
+ }
150
+ }
130
151
  }
131
152
  get _ariaDisabled() {
132
153
  return this.disabled || undefined;
@@ -240,6 +261,7 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
240
261
  this._setAffectedValue(undefined);
241
262
  this._startValueInitial = undefined;
242
263
  this._endValueInitial = undefined;
264
+ this._progressFocused = false;
243
265
  if (this.showTooltip && !e.relatedTarget?.hasAttribute("ui5-slider-tooltip")) {
244
266
  this._tooltipsOpen = false;
245
267
  }
@@ -265,7 +287,9 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
265
287
  this._startValueAtBeginningOfAction = this.startValue;
266
288
  this._endValueAtBeginningOfAction = this.endValue;
267
289
  if (isEscape(e)) {
268
- this.update(undefined, this._startValueInitial, this._endValueInitial);
290
+ if (this._startValueInitial !== undefined && this._endValueInitial !== undefined) {
291
+ this.update(undefined, this._startValueInitial, this._endValueInitial);
292
+ }
269
293
  return;
270
294
  }
271
295
  // Set the target of the interaction based on the focused inner element
@@ -288,14 +312,15 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
288
312
  }
289
313
  // Update a single value if one of the handles is focused or the range if not already at min or max
290
314
  const ctor = this.constructor;
315
+ const stepPrecision = ctor._getDecimalPrecisionOfNumber(this._effectiveStep);
291
316
  if (affectedValue && !this._isPressInCurrentRange) {
292
317
  const propValue = this[affectedValue];
293
- const newValue = ctor.clipValue(newValueOffset + propValue, min, max);
318
+ const newValue = Number(ctor.clipValue(newValueOffset + propValue, min, max).toFixed(stepPrecision));
294
319
  this.update(affectedValue, newValue, undefined);
295
320
  }
296
321
  else if ((newValueOffset < 0 && this.startValue > min) || (newValueOffset > 0 && this.endValue < max)) {
297
- const newStartValue = ctor.clipValue(newValueOffset + this.startValue, min, max);
298
- const newEndValue = ctor.clipValue(newValueOffset + this.endValue, min, max);
322
+ const newStartValue = Number(ctor.clipValue(newValueOffset + this.startValue, min, max).toFixed(stepPrecision));
323
+ const newEndValue = Number(ctor.clipValue(newValueOffset + this.endValue, min, max).toFixed(stepPrecision));
299
324
  this.update(affectedValue, newStartValue, newEndValue);
300
325
  }
301
326
  this.tooltipStartValue = this.startValue.toString();
@@ -313,7 +338,9 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
313
338
  if (this.shadowRoot.activeElement === this._endHandle) {
314
339
  this._setAffectedValue("endValue");
315
340
  }
316
- if (this.shadowRoot.activeElement === this._progressBar) {
341
+ // Progress bar is inside SliderScale's shadow DOM, so check the nested activeElement
342
+ const sliderScale = this.shadowRoot.querySelector("[ui5-slider-scale]");
343
+ if (sliderScale?.shadowRoot?.activeElement === this._progressBar) {
317
344
  this._setAffectedValue(undefined);
318
345
  }
319
346
  this._setIsPressInCurrentRange(!this._valueAffected);
@@ -326,8 +353,9 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
326
353
  _homeEndForSelectedRange(e, affectedValue, min, max) {
327
354
  const newValueOffset = this._handleActionKeyPressBase(e, affectedValue);
328
355
  const ctor = this.constructor;
329
- const newStartValue = ctor.clipValue(newValueOffset + this.startValue, min, max);
330
- const newEndValue = ctor.clipValue(newValueOffset + this.endValue, min, max);
356
+ const stepPrecision = ctor._getDecimalPrecisionOfNumber(this._effectiveStep);
357
+ const newStartValue = Number(ctor.clipValue(newValueOffset + this.startValue, min, max).toFixed(stepPrecision));
358
+ const newEndValue = Number(ctor.clipValue(newValueOffset + this.endValue, min, max).toFixed(stepPrecision));
331
359
  this.update(undefined, newStartValue, newEndValue);
332
360
  }
333
361
  /**
@@ -370,12 +398,27 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
370
398
  if (this.disabled || this._effectiveStep === 0 || e.target.hasAttribute("ui5-slider-tooltip")) {
371
399
  return;
372
400
  }
373
- // Calculate the new value from the press position of the event
401
+ // Pre-calculate whether the press is in the current range before handleDownBase
402
+ // This is needed so focusInnerElement() knows where to focus
403
+ const ctor = this.constructor;
404
+ const pageX = ctor.getPageXValueFromEvent(e);
405
+ const tempValue = ctor.getValueFromInteraction(e, this._effectiveStep, this._effectiveMin, this._effectiveMax, this.getBoundingClientRect(), this.directionStart);
406
+ const isInRange = tempValue >= this.startValue && tempValue <= this.endValue;
407
+ const startHandle = this._startHandle;
408
+ const endHandle = this._endHandle;
409
+ const inStartHandle = startHandle && pageX >= startHandle.getBoundingClientRect().left && pageX <= startHandle.getBoundingClientRect().right;
410
+ const inEndHandle = endHandle && pageX >= endHandle.getBoundingClientRect().left && pageX <= endHandle.getBoundingClientRect().right;
374
411
  const newValue = this.handleDownBase(e);
375
- // Determine the rest of the needed details from the start of the interaction.
412
+ if (isInRange && !inStartHandle && !inEndHandle) {
413
+ this._setIsPressInCurrentRange(true);
414
+ this._progressFocused = true;
415
+ this.rangePressed = true;
416
+ }
417
+ else {
418
+ this._progressFocused = false;
419
+ this.rangePressed = false;
420
+ }
376
421
  this._saveInteractionStartData(e, newValue);
377
- this.rangePressed = this._isPressInCurrentRange;
378
- // Do not yet update the RangeSlider if press is in range or over a handle.
379
422
  if (this._isPressInCurrentRange || this._handeIsPressed) {
380
423
  this._handeIsPressed = false;
381
424
  return;
@@ -393,7 +436,7 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
393
436
  * @private
394
437
  */
395
438
  _saveInteractionStartData(e, newValue) {
396
- const progressBarDom = this.shadowRoot.querySelector(".ui5-slider-progress").getBoundingClientRect();
439
+ const progressBarDom = this._progressBar?.getBoundingClientRect();
397
440
  // Save the state of the value properties on the start of the interaction
398
441
  this._startValueAtBeginningOfAction = this.startValue;
399
442
  this._endValueAtBeginningOfAction = this.endValue;
@@ -403,7 +446,9 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
403
446
  // Which element of the Range Slider is pressed and which value property to be modified on further interaction
404
447
  this._pressTargetAndAffectedValue(this._initialPageXPosition, newValue);
405
448
  // Use the progress bar to save the initial coordinates of the start-handle when the interaction begins.
406
- this._initialStartHandlePageX = this.directionStart === "left" ? progressBarDom.left : progressBarDom.right;
449
+ if (progressBarDom) {
450
+ this._initialStartHandlePageX = this.directionStart === "left" ? progressBarDom.left : progressBarDom.right;
451
+ }
407
452
  }
408
453
  /**
409
454
  * Called when the user moves the slider
@@ -474,8 +519,8 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
474
519
  * @private
475
520
  */
476
521
  _pressTargetAndAffectedValue(clientX, value) {
477
- const startHandle = this.shadowRoot.querySelector(".ui5-slider-handle--start");
478
- const endHandle = this.shadowRoot.querySelector(".ui5-slider-handle--end");
522
+ const startHandle = this._startHandle;
523
+ const endHandle = this._endHandle;
479
524
  // Check if the press point is in the bounds of any of the Range Slider handles
480
525
  const handleStartDomRect = startHandle.getBoundingClientRect();
481
526
  const handleEndDomRect = endHandle.getBoundingClientRect();
@@ -548,14 +593,14 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
548
593
  const isReversed = this._areValuesReversed();
549
594
  const affectedValue = this._valueAffected;
550
595
  if (this._isPressInCurrentRange || !affectedValue) {
551
- this._progressBar.focus();
596
+ this._progressBar?.focus();
552
597
  }
553
598
  if ((affectedValue === "startValue" && !isReversed) || (affectedValue === "endValue" && isReversed)) {
554
- this._startHandle.focus();
599
+ this._startHandle?.focus();
555
600
  this.bringToFrontTooltip("start");
556
601
  }
557
602
  if ((affectedValue === "endValue" && !isReversed) || (affectedValue === "startValue" && isReversed)) {
558
- this._endHandle.focus();
603
+ this._endHandle?.focus();
559
604
  this.bringToFrontTooltip("end");
560
605
  }
561
606
  }
@@ -583,7 +628,10 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
583
628
  // And the opposite - if the start handle reaches the beginning of the slider keep the initially selected range.
584
629
  const ctor = this.constructor;
585
630
  startValue = ctor.clipValue(startValue, min, max - selectedRange);
586
- return [startValue, startValue + selectedRange];
631
+ const stepPrecision = ctor._getDecimalPrecisionOfNumber(this._effectiveStep);
632
+ const endValue = Number((startValue + selectedRange).toFixed(stepPrecision));
633
+ startValue = Number(startValue.toFixed(stepPrecision));
634
+ return [startValue, endValue];
587
635
  }
588
636
  /**
589
637
  * Computes the new value based on the difference of the current cursor location from the
@@ -670,6 +718,11 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
670
718
  tooltip.followRef?.focus();
671
719
  }
672
720
  _onTooltipChange(e) {
721
+ // Skip if this is a focusout change event triggered by the swap focus change
722
+ if (this._areInputValuesSwapped) {
723
+ this._areInputValuesSwapped = false;
724
+ return;
725
+ }
673
726
  const tooltip = e.target;
674
727
  const isStart = tooltip.hasAttribute("data-sap-ui-start-value");
675
728
  const inputValue = parseFloat(e.detail.value);
@@ -687,10 +740,12 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
687
740
  }
688
741
  const clampedValue = Math.min(this.max, Math.max(this.min, inputValue));
689
742
  if (isStart) {
743
+ this.tooltipStartValueState = ValueState.None;
690
744
  this.startValue = clampedValue;
691
745
  this._lastValidStartValue = clampedValue.toString();
692
746
  }
693
747
  else {
748
+ this.tooltipEndValueState = ValueState.None;
694
749
  this.endValue = clampedValue;
695
750
  this._lastValidEndValue = clampedValue.toString();
696
751
  }
@@ -729,10 +784,11 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
729
784
  }
730
785
  }
731
786
  _onTooltipOpen() {
732
- const ctor = this.constructor;
733
- const stepPrecision = ctor._getDecimalPrecisionOfNumber(this._effectiveStep);
734
- this.tooltipStartValue = this.startValue.toFixed(stepPrecision);
735
- this.tooltipEndValue = this.endValue.toFixed(stepPrecision);
787
+ if (!this.startValue || !this.endValue) {
788
+ return;
789
+ }
790
+ this.tooltipStartValue = this.startValue.toString();
791
+ this.tooltipEndValue = this.endValue.toString();
736
792
  }
737
793
  _onTooltipInput(e) {
738
794
  const tooltip = e.target;
@@ -817,13 +873,14 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
817
873
  return arr;
818
874
  }
819
875
  get _startHandle() {
820
- return this.shadowRoot.querySelector(".ui5-slider-handle--start");
876
+ return this.shadowRoot.querySelector("[ui5-slider-handle][handle-type='Start']");
821
877
  }
822
878
  get _endHandle() {
823
- return this.shadowRoot.querySelector(".ui5-slider-handle--end");
879
+ return this.shadowRoot.querySelector("[ui5-slider-handle][handle-type='End']");
824
880
  }
825
881
  get _progressBar() {
826
- return this.shadowRoot.querySelector(".ui5-slider-progress");
882
+ const sliderScale = this.shadowRoot.querySelector("[ui5-slider-scale]");
883
+ return sliderScale?.shadowRoot?.querySelector(".ui5-slider-progress") ?? null;
827
884
  }
828
885
  get _ariaLabelledByStartHandleText() {
829
886
  return this.accessibleName ? ["ui5-slider-accName", "ui5-slider-startHandleDesc"].join(" ").trim() : "ui5-slider-startHandleDesc";
@@ -831,6 +888,29 @@ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
831
888
  get _ariaLabelledByEndHandleText() {
832
889
  return this.accessibleName ? ["ui5-slider-accName", "ui5-slider-endHandleDesc"].join(" ").trim() : "ui5-slider-endHandleDesc";
833
890
  }
891
+ /**
892
+ * @private
893
+ */
894
+ get _ariaLabelStartHandle() {
895
+ return this._getAriaLabelHandle(this._ariaHandlesText.startHandleText || "");
896
+ }
897
+ /**
898
+ * @private
899
+ */
900
+ get _ariaLabelEndHandle() {
901
+ return this._getAriaLabelHandle(this._ariaHandlesText.endHandleText || "");
902
+ }
903
+ _getAriaLabelHandle(handleDescription) {
904
+ const associatedLabelText = getAssociatedLabelForTexts(this);
905
+ const hasAccessibleName = !!this.accessibleName;
906
+ let labelText = hasAccessibleName
907
+ ? `${this.accessibleName} ${handleDescription}`
908
+ : handleDescription;
909
+ if (!hasAccessibleName && associatedLabelText) {
910
+ labelText = `${associatedLabelText} ${labelText}`;
911
+ }
912
+ return labelText;
913
+ }
834
914
  get _ariaLabelledByInputText() {
835
915
  return RangeSlider_1.i18nBundle.getText(SLIDER_TOOLTIP_INPUT_LABEL);
836
916
  }
@@ -874,6 +954,9 @@ __decorate([
874
954
  __decorate([
875
955
  property({ type: Boolean })
876
956
  ], RangeSlider.prototype, "rangePressed", void 0);
957
+ __decorate([
958
+ property({ type: Boolean })
959
+ ], RangeSlider.prototype, "_progressFocused", void 0);
877
960
  __decorate([
878
961
  property({ type: Boolean })
879
962
  ], RangeSlider.prototype, "_isStartValueValid", void 0);
@@ -889,7 +972,7 @@ RangeSlider = RangeSlider_1 = __decorate([
889
972
  languageAware: true,
890
973
  formAssociated: true,
891
974
  template: RangeSliderTemplate,
892
- styles: [SliderBase.styles, rangeSliderStyles],
975
+ styles: [rangeSliderStyles],
893
976
  })
894
977
  ], RangeSlider);
895
978
  RangeSlider.define();