ropav 0.0.10 → 0.0.11

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 (227) hide show
  1. package/README.md +6 -0
  2. package/dist/accordion.css +115 -111
  3. package/dist/accordion.js +60 -16
  4. package/dist/alert.css +110 -108
  5. package/dist/alert.js +48 -26
  6. package/dist/aspect-ratio.css +17 -15
  7. package/dist/aspect-ratio.js +20 -6
  8. package/dist/avatar.css +98 -96
  9. package/dist/avatar.js +27 -16
  10. package/dist/badge.css +95 -93
  11. package/dist/badge.js +29 -16
  12. package/dist/base.css +672 -671
  13. package/dist/button-group.css +39 -37
  14. package/dist/button-group.js +23 -12
  15. package/dist/button-link.css +160 -158
  16. package/dist/button-link.js +43 -24
  17. package/dist/button.css +160 -158
  18. package/dist/button.js +37 -19
  19. package/dist/card.css +109 -107
  20. package/dist/card.js +42 -17
  21. package/dist/checkbox.css +139 -137
  22. package/dist/checkbox.js +79 -28
  23. package/dist/collapse.css +29 -27
  24. package/dist/collapse.js +44 -10
  25. package/dist/color-input.css +137 -107
  26. package/dist/color-input.js +86 -17
  27. package/dist/color-picker.css +309 -303
  28. package/dist/color-picker.js +147 -54
  29. package/dist/color-picker2.js +9 -1
  30. package/dist/color-swatch.css +48 -46
  31. package/dist/color-swatch.js +15 -11
  32. package/dist/color-swatch2.js +4 -0
  33. package/dist/components/accordion/accordion-item.d.ts +13 -1
  34. package/dist/components/accordion/index.d.ts +2 -1
  35. package/dist/components/accordion/index.js +2 -2
  36. package/dist/components/accordion/types.d.ts +9 -4
  37. package/dist/components/alert/alert.d.ts +2 -2
  38. package/dist/components/alert/index.d.ts +2 -2
  39. package/dist/components/alert/index.js +2 -2
  40. package/dist/components/alert/types.d.ts +4 -1
  41. package/dist/components/aspect-ratio/index.d.ts +2 -1
  42. package/dist/components/aspect-ratio/index.js +2 -2
  43. package/dist/components/aspect-ratio/types.d.ts +4 -1
  44. package/dist/components/avatar/index.d.ts +2 -2
  45. package/dist/components/avatar/index.js +2 -2
  46. package/dist/components/avatar/types.d.ts +4 -1
  47. package/dist/components/badge/index.d.ts +2 -2
  48. package/dist/components/badge/index.js +2 -2
  49. package/dist/components/badge/types.d.ts +4 -1
  50. package/dist/components/button/index.d.ts +2 -1
  51. package/dist/components/button/index.js +2 -2
  52. package/dist/components/button/types.d.ts +4 -1
  53. package/dist/components/button-group/index.d.ts +2 -1
  54. package/dist/components/button-group/index.js +2 -2
  55. package/dist/components/button-group/types.d.ts +4 -1
  56. package/dist/components/button-link/index.d.ts +2 -1
  57. package/dist/components/button-link/index.js +2 -2
  58. package/dist/components/button-link/types.d.ts +4 -1
  59. package/dist/components/card/index.d.ts +2 -1
  60. package/dist/components/card/index.js +2 -2
  61. package/dist/components/card/types.d.ts +5 -1
  62. package/dist/components/checkbox/checkbox.d.ts +4 -1
  63. package/dist/components/checkbox/index.d.ts +2 -1
  64. package/dist/components/checkbox/index.js +2 -2
  65. package/dist/components/checkbox/types.d.ts +6 -1
  66. package/dist/components/checkbox/useCheckbox.d.ts +2 -0
  67. package/dist/components/collapse/collapse.d.ts +2 -2
  68. package/dist/components/collapse/index.d.ts +2 -1
  69. package/dist/components/collapse/index.js +2 -2
  70. package/dist/components/collapse/types.d.ts +9 -2
  71. package/dist/components/color-input/index.d.ts +2 -1
  72. package/dist/components/color-input/index.js +2 -2
  73. package/dist/components/color-input/types.d.ts +4 -1
  74. package/dist/components/color-picker/index.d.ts +2 -2
  75. package/dist/components/color-picker/index.js +2 -2
  76. package/dist/components/color-picker/types.d.ts +13 -1
  77. package/dist/components/color-swatch/index.d.ts +2 -1
  78. package/dist/components/color-swatch/index.js +2 -1
  79. package/dist/components/color-swatch/types.d.ts +4 -1
  80. package/dist/components/dropdown-menu/dropdown-menu-primitives.d.ts +724 -0
  81. package/dist/components/dropdown-menu/dropdown-menu.d.ts +3 -3
  82. package/dist/components/dropdown-menu/index.d.ts +53 -1
  83. package/dist/components/dropdown-menu/index.js +2 -2
  84. package/dist/components/dropdown-menu/types.d.ts +142 -6
  85. package/dist/components/dropdown-menu/useDropdownMenu.d.ts +11 -3
  86. package/dist/components/dropdown-menu/useDropdownMenuDisclosure.d.ts +5 -3
  87. package/dist/components/dropdown-menu/useDropdownMenuDom.d.ts +2 -1
  88. package/dist/components/dropdown-menu/useDropdownMenuInteractions.d.ts +4 -4
  89. package/dist/components/dropdown-menu/useDropdownMenuPortalPosition.d.ts +19 -0
  90. package/dist/components/dropdown-menu/useDropdownMenuRenderItems.d.ts +14 -2
  91. package/dist/components/field/index.d.ts +2 -1
  92. package/dist/components/field/index.js +2 -2
  93. package/dist/components/field/types.d.ts +4 -1
  94. package/dist/components/floating/index.d.ts +1 -0
  95. package/dist/components/floating/index.js +0 -0
  96. package/dist/components/floating/types.d.ts +31 -0
  97. package/dist/components/floating/useFloatingPosition.d.ts +38 -0
  98. package/dist/components/focus-trap/focus-trap.d.ts +31 -0
  99. package/dist/components/focus-trap/index.d.ts +4 -0
  100. package/dist/components/focus-trap/index.js +3 -0
  101. package/dist/components/focus-trap/types.d.ts +41 -0
  102. package/dist/components/focus-trap/useFocusTrap.d.ts +2 -0
  103. package/dist/components/icon-button/index.d.ts +2 -1
  104. package/dist/components/icon-button/index.js +2 -1
  105. package/dist/components/icon-button/types.d.ts +4 -1
  106. package/dist/components/input/index.d.ts +2 -1
  107. package/dist/components/input/index.js +2 -1
  108. package/dist/components/input/types.d.ts +4 -1
  109. package/dist/components/modal/index.d.ts +2 -1
  110. package/dist/components/modal/index.js +2 -2
  111. package/dist/components/modal/types.d.ts +8 -1
  112. package/dist/components/number-input/index.d.ts +2 -1
  113. package/dist/components/number-input/index.js +2 -2
  114. package/dist/components/number-input/types.d.ts +4 -1
  115. package/dist/components/overlay/index.d.ts +2 -1
  116. package/dist/components/overlay/index.js +2 -1
  117. package/dist/components/overlay/types.d.ts +4 -1
  118. package/dist/components/popover/index.d.ts +2 -2
  119. package/dist/components/popover/index.js +2 -2
  120. package/dist/components/popover/popover.d.ts +2 -2
  121. package/dist/components/popover/types.d.ts +20 -11
  122. package/dist/components/popover/usePopover.d.ts +9 -1
  123. package/dist/components/progress/index.d.ts +2 -2
  124. package/dist/components/progress/index.js +2 -2
  125. package/dist/components/progress/types.d.ts +4 -1
  126. package/dist/components/radio/index.d.ts +2 -1
  127. package/dist/components/radio/index.js +2 -2
  128. package/dist/components/radio/radio.d.ts +8 -3
  129. package/dist/components/radio/types.d.ts +20 -3
  130. package/dist/components/radio/useRadio.d.ts +9 -4
  131. package/dist/components/select/index.d.ts +2 -1
  132. package/dist/components/select/index.js +2 -2
  133. package/dist/components/select/types.d.ts +4 -1
  134. package/dist/components/select/useSelect.d.ts +2 -1
  135. package/dist/components/slider/index.d.ts +2 -2
  136. package/dist/components/slider/index.js +2 -2
  137. package/dist/components/slider/range-slider-tooltip.d.ts +3 -0
  138. package/dist/components/slider/range-slider.d.ts +4 -1
  139. package/dist/components/slider/slider.d.ts +4 -1
  140. package/dist/components/slider/sliderCore.d.ts +4 -4
  141. package/dist/components/slider/types.d.ts +12 -2
  142. package/dist/components/slider/useRangeSlider.d.ts +1 -1
  143. package/dist/components/slider/useSlider.d.ts +1 -1
  144. package/dist/components/switch/index.d.ts +2 -1
  145. package/dist/components/switch/index.js +2 -2
  146. package/dist/components/switch/switch.d.ts +4 -1
  147. package/dist/components/switch/types.d.ts +6 -1
  148. package/dist/components/switch/useSwitch.d.ts +2 -0
  149. package/dist/components/tabs/index.d.ts +2 -1
  150. package/dist/components/tabs/index.js +2 -2
  151. package/dist/components/tabs/types.d.ts +13 -4
  152. package/dist/components/teleport-provider/index.d.ts +2 -0
  153. package/dist/components/teleport-provider/index.js +2 -0
  154. package/dist/components/teleport-provider/teleport-provider.d.ts +21 -0
  155. package/dist/components/teleport-provider/types.d.ts +4 -0
  156. package/dist/components/teleport-provider/useTeleportTarget.d.ts +5 -0
  157. package/dist/components/textarea/index.d.ts +2 -1
  158. package/dist/components/textarea/index.js +2 -2
  159. package/dist/components/textarea/textarea.d.ts +4 -1
  160. package/dist/components/textarea/types.d.ts +6 -1
  161. package/dist/components/textarea/useTextarea.d.ts +1 -0
  162. package/dist/components/toast/index.d.ts +2 -2
  163. package/dist/components/toast/index.js +2 -2
  164. package/dist/components/toast/toast.d.ts +2 -2
  165. package/dist/components/toast/types.d.ts +10 -6
  166. package/dist/components/tooltip/index.d.ts +2 -1
  167. package/dist/components/tooltip/index.js +2 -1
  168. package/dist/components/tooltip/tooltip.d.ts +2 -2
  169. package/dist/components/tooltip/types.d.ts +13 -12
  170. package/dist/components/tooltip/useTooltip.d.ts +13 -3
  171. package/dist/dropdown-menu.css +191 -107
  172. package/dist/dropdown-menu.js +1582 -81
  173. package/dist/field.css +41 -39
  174. package/dist/field.js +40 -16
  175. package/dist/focus-trap.js +80 -0
  176. package/dist/icon-button.css +193 -189
  177. package/dist/icon-button.js +23 -18
  178. package/dist/icon-button2.js +8 -0
  179. package/dist/index.d.ts +4 -0
  180. package/dist/index.js +36 -32
  181. package/dist/input.css +122 -120
  182. package/dist/input.js +47 -34
  183. package/dist/input2.js +9 -0
  184. package/dist/legacy-unlayered.css +5461 -0
  185. package/dist/modal.css +129 -127
  186. package/dist/modal.js +160 -200
  187. package/dist/number-input.css +87 -85
  188. package/dist/number-input.js +61 -17
  189. package/dist/overlay.css +26 -24
  190. package/dist/overlay.js +17 -9
  191. package/dist/overlay2.js +4 -0
  192. package/dist/popover.css +140 -107
  193. package/dist/popover.js +288 -193
  194. package/dist/popover2.js +6 -1
  195. package/dist/progress.css +101 -99
  196. package/dist/progress.js +50 -28
  197. package/dist/radio.css +114 -105
  198. package/dist/radio.js +154 -56
  199. package/dist/select.css +244 -242
  200. package/dist/select.js +92 -47
  201. package/dist/slider.css +1109 -1031
  202. package/dist/slider.js +330 -163
  203. package/dist/styles-api.d.ts +22 -0
  204. package/dist/styles-api.js +49 -0
  205. package/dist/switch.css +120 -108
  206. package/dist/switch.js +89 -33
  207. package/dist/tabs.css +286 -278
  208. package/dist/tabs.js +60 -21
  209. package/dist/teleport-provider.js +15 -0
  210. package/dist/textarea.css +132 -130
  211. package/dist/textarea.js +69 -27
  212. package/dist/toast.css +229 -225
  213. package/dist/toast.js +102 -42
  214. package/dist/tooltip.css +137 -107
  215. package/dist/tooltip.js +180 -228
  216. package/dist/tooltip2.js +8 -0
  217. package/dist/useClickOutside.js +1 -1
  218. package/dist/useFloatingPosition.js +1284 -0
  219. package/dist/useFocusTrap.js +130 -0
  220. package/dist/useTeleportTarget.js +29 -0
  221. package/docs/public-styles-api.md +133 -0
  222. package/docs/public-tokens.md +545 -0
  223. package/package.json +29 -5
  224. package/src/styles/_tokens.scss +33 -28
  225. package/src/styles/_utilities.scss +11 -9
  226. package/src/styles/styles-manifest.json +4125 -0
  227. package/dist/rafScheduler.js +0 -34
package/dist/slider.js CHANGED
@@ -1,10 +1,11 @@
1
1
  import './slider.css';
2
2
  import { t as bem } from "./bem.js";
3
+ import { n as useStylesApi, t as presence } from "./styles-api.js";
3
4
  import { n as getComponentColorValue, t as componentColors } from "./componentColors.js";
4
5
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
5
6
  import { t as useControlState } from "./useControlState.js";
6
7
  import { i as useDelayedOpen, n as resolveTooltipColorStyleWithContrast, r as resolveTooltipOffsetStyle, t as tooltip_default } from "./tooltip.js";
7
- import { applyVShow, child, computed, createComponent, createFor, createIf, createInvoker, createSlot, createTemplateRefSetter, defineVaporComponent, delegateEvents, next, on, onBeforeUnmount, onMounted, ref, renderEffect, setAttr, setClass, setClassName, setInsertionState, setProp, setStyle, setText, setValue, template, toDisplayString, toRef, txt, unref, useId, useSlots, watch } from "vue";
8
+ import { applyVShow, child, computed, createComponent, createFor, createIf, createInvoker, createSlot, createTemplateRefSetter, defineVaporComponent, delegateEvents, next, on, onBeforeUnmount, onMounted, ref, renderEffect, setClass, setDynamicProps, setInsertionState, setProp, setStyle, setText, template, toDisplayString, toRef, txt, unref, useId, useSlots, watch } from "vue";
8
9
  //#region src/components/slider/sliderCore.ts
9
10
  function normalizeSliderBounds(min, max) {
10
11
  const safeMin = Number.isFinite(min) ? min : 0;
@@ -104,9 +105,9 @@ function getSliderTrackStyle(props, valuePercent) {
104
105
  };
105
106
  setSliderStyleValue(style, "--_rp-slider-color", getSliderColorValue(props.color));
106
107
  applySliderThumbStyle(style, props.thumbStyle, {
107
- size: "--_rp-slider-thumb-size",
108
+ size: "--rp-slider-thumb-size",
108
109
  border: "--_rp-slider-thumb-border-style",
109
- padding: "--_rp-slider-thumb-padding",
110
+ padding: "--rp-slider-thumb-padding",
110
111
  borderColor: "--_rp-slider-thumb-border"
111
112
  });
112
113
  return style;
@@ -255,20 +256,20 @@ function useSlider(props, emitUpdate) {
255
256
  }
256
257
  //#endregion
257
258
  //#region src/components/slider/slider.vue?vue&type=script&setup=true&vapor=true&lang.ts
258
- var t0$2 = template("<span data-v-b852f835 class=rp-slider__label>");
259
- var t1$2 = template("<span data-v-b852f835 class=rp-slider__value aria-hidden=true>");
260
- var t2$2 = template("<span data-v-b852f835 class=rp-slider__header>");
261
- var t3$2 = template("<span data-v-b852f835 class=rp-slider__mark-label> ");
262
- var t4$2 = template("<span data-v-b852f835><span data-v-b852f835 class=rp-slider__mark-dot></span>");
263
- var t5$1 = template("<span data-v-b852f835 class=rp-slider__marks aria-hidden=true>");
264
- var t6$1 = template("<span data-v-b852f835 class=rp-slider__thumb aria-hidden=true><span data-v-b852f835 class=rp-slider__thumb-content>");
265
- var t7$1 = template("<span data-v-b852f835 class=rp-slider__tooltip-anchor aria-hidden=true>", 2);
266
- var t8$1 = template("<label data-v-b852f835><span data-v-b852f835 class=rp-slider__track><span data-v-b852f835 class=rp-slider__bar aria-hidden=true></span><input data-v-b852f835 class=rp-slider__native type=range>", 1);
267
- delegateEvents("input", "pointerdown", "focusin", "focusout", "keydown");
259
+ var t0$2 = template("<span data-v-cf8192a8>");
260
+ var t1$2 = template("<span data-v-cf8192a8 class=rp-slider__header>");
261
+ var t2$2 = template("<span data-v-cf8192a8> ");
262
+ var t3$2 = template("<span data-v-cf8192a8><span data-v-cf8192a8 class=rp-slider__mark-dot></span>");
263
+ var t4$2 = template("<span data-v-cf8192a8 class=rp-slider__marks aria-hidden=true>");
264
+ var t5$1 = template("<span data-v-cf8192a8><span data-v-cf8192a8 class=rp-slider__thumb-content>");
265
+ var t6$1 = template("<span data-v-cf8192a8 class=rp-slider__tooltip-anchor aria-hidden=true>", 2);
266
+ var t7$1 = template("<label data-v-cf8192a8><span data-v-cf8192a8><span data-v-cf8192a8></span><input data-v-cf8192a8>", 1);
267
+ delegateEvents("pointerdown", "focusin", "focusout", "keydown");
268
268
  //#endregion
269
269
  //#region src/components/slider/slider.vue
270
270
  var slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
271
271
  name: "RpSlider",
272
+ inheritAttrs: false,
272
273
  __name: "slider",
273
274
  props: {
274
275
  id: {},
@@ -298,36 +299,72 @@ var slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
298
299
  ariaLabel: {},
299
300
  ariaValueText: {},
300
301
  describedby: {},
301
- labelledby: {}
302
+ labelledby: {},
303
+ inputAttrs: {},
304
+ classNames: {},
305
+ styles: {}
302
306
  },
303
307
  emits: ["update:modelValue"],
304
- setup(__props, { emit: __emit, slots: $slots }) {
308
+ setup(__props, { expose: __expose, emit: __emit, slots: $slots }) {
305
309
  const props = __props;
306
310
  const emit = __emit;
311
+ const inputRef = ref(null);
312
+ const slots = useSlots();
307
313
  const { control, nativeMin, nativeMax, nativeStep, rootClass, normalizedValue, valuePercent, formattedValue, ariaValueText, markItems, trackStyle, tooltipVisible, tooltipOpen, tooltipPlacement, tooltipId, tooltipColor, tooltipOffset, tooltipOpenDelay, tooltipArrow, tooltipContent, onInput, onTooltipPointerDown, onTooltipMouseEnter, onTooltipMouseLeave, onTooltipFocusIn, onTooltipFocusOut, onTooltipKeydown } = useSlider(props, (value) => {
308
314
  emit("update:modelValue", value);
309
315
  });
310
- const n31 = t8$1();
311
- const n30 = child(n31, 1);
312
- const n11 = next(child(n30), 1);
313
- renderEffect(() => {
314
- setClass(n31, [unref(rootClass), { "rp-slider--custom-thumb": $slots.thumb }]);
315
- setAttr(n31, "data-disabled", unref(control).disabled || void 0);
316
- setStyle(n31, unref(trackStyle));
316
+ const { getPartAttrs, getRootAttrs } = useStylesApi(props, "root");
317
+ const rootAttrs = computed(() => getRootAttrs({
318
+ class: [rootClass.value, { "rp-slider--custom-thumb": Boolean(slots.thumb) }],
319
+ style: trackStyle.value,
320
+ "data-disabled": presence(control.disabled),
321
+ "data-orientation": props.orientation
322
+ }));
323
+ const tooltipClassNames = computed(() => ({ root: ["rp-slider__tooltip", props.classNames?.tooltip] }));
324
+ const tooltipStyles = computed(() => ({ root: props.styles?.tooltip }));
325
+ const nativeInputAttrs = computed(() => {
326
+ const { class: compatibilityClass, style: compatibilityStyle, onInput: compatibilityOnInput, ...attrs } = props.inputAttrs ?? {};
327
+ return {
328
+ ...attrs,
329
+ ...getPartAttrs("input", {
330
+ class: "rp-slider__native",
331
+ compatibilityClass,
332
+ compatibilityStyle
333
+ }),
334
+ onInput(event) {
335
+ onInput(event);
336
+ compatibilityOnInput?.(event);
337
+ }
338
+ };
339
+ });
340
+ function focus(options) {
341
+ inputRef.value?.focus(options);
342
+ }
343
+ __expose({
344
+ nativeElement: inputRef,
345
+ focus
317
346
  });
318
- setInsertionState(n31, 0, 0);
347
+ const _setTemplateRef = createTemplateRefSetter();
348
+ const n32 = t7$1();
349
+ const n31 = child(n32, 1);
350
+ const n11 = child(n31);
351
+ const n12 = next(n11, 1);
352
+ renderEffect(() => setDynamicProps(n32, [rootAttrs.value]));
353
+ setInsertionState(n32, 0, 0);
319
354
  createIf(() => $slots.default || $slots.value, () => {
320
- const n10 = t2$2();
355
+ const n10 = t1$2();
321
356
  setInsertionState(n10, null, 0);
322
357
  createIf(() => $slots.default, () => {
323
358
  const n5 = t0$2();
359
+ renderEffect(() => setDynamicProps(n5, [unref(getPartAttrs)("label", { class: "rp-slider__label" })]));
324
360
  setInsertionState(n5, null, 0);
325
361
  createSlot("default", null, null, 1);
326
362
  return n5;
327
363
  });
328
364
  setInsertionState(n10, null, 1);
329
365
  createIf(() => $slots.value, () => {
330
- const n9 = t1$2();
366
+ const n9 = t0$2();
367
+ renderEffect(() => setDynamicProps(n9, [unref(getPartAttrs)("value", { class: "rp-slider__value" }), { "aria-hidden": "true" }]));
331
368
  setInsertionState(n9, null, 0);
332
369
  createSlot("value", {
333
370
  value: () => unref(normalizedValue),
@@ -338,61 +375,76 @@ var slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
338
375
  });
339
376
  return n10;
340
377
  });
341
- n11.$evtinput = createInvoker((e) => unref(onInput)(e));
378
+ _setTemplateRef(n12, inputRef, null, "inputRef");
342
379
  renderEffect(() => {
380
+ const _getPartAttrs = unref(getPartAttrs);
343
381
  const _control = unref(control);
344
- setProp(n11, "id", _control.id);
345
- setProp(n11, "name", __props.name);
346
- setValue(n11, unref(normalizedValue));
347
- setProp(n11, "min", unref(nativeMin));
348
- setProp(n11, "max", unref(nativeMax));
349
- setProp(n11, "step", unref(nativeStep));
350
- setProp(n11, "orient", __props.orientation === "vertical" ? "vertical" : void 0);
351
- setProp(n11, "disabled", _control.disabled || void 0);
352
- setAttr(n11, "aria-label", __props.ariaLabel || void 0);
353
- setAttr(n11, "aria-labelledby", _control.ariaLabelledby);
354
- setAttr(n11, "aria-describedby", _control.ariaDescribedby);
355
- setAttr(n11, "aria-orientation", __props.orientation === "vertical" ? "vertical" : void 0);
356
- setAttr(n11, "aria-valuetext", unref(ariaValueText));
382
+ setDynamicProps(n31, [_getPartAttrs("track", { class: "rp-slider__track" })]);
383
+ setDynamicProps(n11, [_getPartAttrs("range", { class: "rp-slider__bar" }), { "aria-hidden": "true" }]);
384
+ setDynamicProps(n12, [nativeInputAttrs.value, {
385
+ id: _control.id,
386
+ name: __props.name,
387
+ type: "range",
388
+ value: unref(normalizedValue),
389
+ min: unref(nativeMin),
390
+ max: unref(nativeMax),
391
+ step: unref(nativeStep),
392
+ orient: __props.orientation === "vertical" ? "vertical" : void 0,
393
+ disabled: _control.disabled || void 0,
394
+ "aria-label": __props.ariaLabel || void 0,
395
+ "aria-labelledby": _control.ariaLabelledby,
396
+ "aria-describedby": _control.ariaDescribedby,
397
+ "aria-orientation": __props.orientation === "vertical" ? "vertical" : void 0,
398
+ "aria-valuetext": unref(ariaValueText),
399
+ "data-disabled": unref(presence)(_control.disabled)
400
+ }]);
357
401
  });
358
- setInsertionState(n30, null, 2);
402
+ setInsertionState(n31, null, 2);
359
403
  createIf(() => unref(markItems).length, () => {
360
- const n20 = t5$1();
361
- setInsertionState(n20, null, 0);
404
+ const n21 = t4$2();
405
+ setInsertionState(n21, null, 0);
362
406
  createFor(() => unref(markItems), (_for_item0) => {
363
- const n19 = t4$2();
407
+ const n20 = t3$2();
364
408
  renderEffect(() => {
365
409
  const _mark = _for_item0.value;
366
- setClassName(n19, _mark.filled ? 1 : 0, " rp-slider__mark--filled", "rp-slider__mark");
367
- setStyle(n19, _mark.style);
410
+ setDynamicProps(n20, [unref(getPartAttrs)("mark", {
411
+ class: ["rp-slider__mark", { "rp-slider__mark--filled": _mark.filled }],
412
+ style: _mark.style
413
+ }), { "data-filled": unref(presence)(_mark.filled) }]);
368
414
  });
369
- setInsertionState(n19, null, 1);
415
+ setInsertionState(n20, null, 1);
370
416
  createIf(() => _for_item0.value.hasLabel, () => {
371
- const n18 = t3$2();
372
- const x18 = txt(n18);
373
- renderEffect(() => setText(x18, toDisplayString(_for_item0.value.label)));
374
- return n18;
417
+ const n19 = t2$2();
418
+ const x19 = txt(n19);
419
+ renderEffect(() => {
420
+ setDynamicProps(n19, [unref(getPartAttrs)("markLabel", { class: "rp-slider__mark-label" })]);
421
+ setText(x19, toDisplayString(_for_item0.value.label));
422
+ });
423
+ return n19;
375
424
  });
376
- return n19;
425
+ return n20;
377
426
  }, (mark) => mark.key, 9);
378
- return n20;
427
+ return n21;
379
428
  });
380
- setInsertionState(n30, null, 3);
429
+ setInsertionState(n31, null, 3);
381
430
  createIf(() => $slots.thumb, () => {
382
- const n25 = t6$1();
383
- setInsertionState(child(n25), null, 0);
431
+ const n26 = t5$1();
432
+ const n25 = child(n26);
433
+ renderEffect(() => setDynamicProps(n26, [unref(getPartAttrs)("thumb", { class: "rp-slider__thumb" }), { "aria-hidden": "true" }]));
434
+ setInsertionState(n25, null, 0);
384
435
  createSlot("thumb", {
385
436
  value: () => unref(normalizedValue),
386
437
  formattedValue: () => unref(formattedValue),
387
438
  percent: () => unref(valuePercent)
388
439
  }, null, 1);
389
- return n25;
440
+ return n26;
390
441
  });
391
- setInsertionState(n30, null, 4);
442
+ setInsertionState(n31, null, 4);
392
443
  createIf(() => unref(tooltipVisible), () => {
393
444
  return createComponent(tooltip_default, {
394
445
  id: () => unref(tooltipId),
395
- class: "rp-slider__tooltip",
446
+ "class-names": () => tooltipClassNames.value,
447
+ styles: () => tooltipStyles.value,
396
448
  content: () => unref(tooltipContent),
397
449
  placement: () => unref(tooltipPlacement),
398
450
  color: () => unref(tooltipColor),
@@ -402,18 +454,18 @@ var slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
402
454
  arrow: () => unref(tooltipArrow),
403
455
  decorative: ""
404
456
  }, () => {
405
- return t7$1();
457
+ return t6$1();
406
458
  });
407
459
  });
408
- n30.$evtpointerdown = createInvoker((e) => unref(onTooltipPointerDown)(e));
409
- on(n30, "mouseenter", (e) => unref(onTooltipMouseEnter)(e));
410
- on(n30, "mouseleave", (e) => unref(onTooltipMouseLeave)(e));
411
- n30.$evtfocusin = createInvoker((e) => unref(onTooltipFocusIn)(e));
412
- n30.$evtfocusout = createInvoker((e) => unref(onTooltipFocusOut)(e));
413
- n30.$evtkeydown = createInvoker((e) => unref(onTooltipKeydown)(e));
414
- return n31;
460
+ n31.$evtpointerdown = createInvoker((e) => unref(onTooltipPointerDown)(e));
461
+ on(n31, "mouseenter", (e) => unref(onTooltipMouseEnter)(e));
462
+ on(n31, "mouseleave", (e) => unref(onTooltipMouseLeave)(e));
463
+ n31.$evtfocusin = createInvoker((e) => unref(onTooltipFocusIn)(e));
464
+ n31.$evtfocusout = createInvoker((e) => unref(onTooltipFocusOut)(e));
465
+ n31.$evtkeydown = createInvoker((e) => unref(onTooltipKeydown)(e));
466
+ return n32;
415
467
  }
416
- }), [["__scopeId", "data-v-b852f835"]]);
468
+ }), [["__scopeId", "data-v-cf8192a8"]]);
417
469
  //#endregion
418
470
  //#region src/components/slider/useRangeSliderTooltipCollision.ts
419
471
  var TOOLTIP_COLLISION_GAP = 4;
@@ -605,11 +657,11 @@ function useRangeSliderTooltipCollision({ enabled, lower, orientation, placement
605
657
  }
606
658
  //#endregion
607
659
  //#region src/components/slider/range-slider-tooltip.vue?vue&type=script&setup=true&vapor=true&lang.ts
608
- var t0$1 = template("<span data-v-d17966e5 class=rp-range-slider__tooltip-merged-value> </span>");
609
- var t1$1 = template("<span data-v-d17966e5 class=rp-range-slider__tooltip-merged-value> ");
610
- var t2$1 = template("<span data-v-d17966e5 class=rp-range-slider__tooltip-merged-separator>–</span>", 2);
660
+ var t0$1 = template("<span data-v-ce70c540 class=rp-range-slider__tooltip-merged-value> </span>");
661
+ var t1$1 = template("<span data-v-ce70c540 class=rp-range-slider__tooltip-merged-value> ");
662
+ var t2$1 = template("<span data-v-ce70c540 class=rp-range-slider__tooltip-merged-separator>–</span>", 2);
611
663
  var t3$1 = template(" ");
612
- var t4$1 = template("<span data-v-d17966e5 aria-hidden=true><span data-v-d17966e5><span data-v-d17966e5 class=rp-range-slider__tooltip-anchor></span><span data-v-d17966e5 class=rp-tooltip__content aria-hidden=true> </span></span><span data-v-d17966e5><span data-v-d17966e5 class=rp-range-slider__tooltip-anchor></span><span data-v-d17966e5 class=rp-tooltip__content aria-hidden=true> </span></span><span data-v-d17966e5><span data-v-d17966e5 class=rp-range-slider__tooltip-anchor></span><span data-v-d17966e5 class=rp-tooltip__content aria-hidden=true>", 1);
664
+ var t4$1 = template("<span data-v-ce70c540 aria-hidden=true><span data-v-ce70c540 data-thumb=lower><span data-v-ce70c540 class=rp-range-slider__tooltip-anchor></span><span data-v-ce70c540 class=rp-tooltip__content aria-hidden=true> </span></span><span data-v-ce70c540 data-thumb=upper><span data-v-ce70c540 class=rp-range-slider__tooltip-anchor></span><span data-v-ce70c540 class=rp-tooltip__content aria-hidden=true> </span></span><span data-v-ce70c540 data-thumb=merged><span data-v-ce70c540 class=rp-range-slider__tooltip-anchor></span><span data-v-ce70c540 class=rp-tooltip__content aria-hidden=true>", 1);
613
665
  //#endregion
614
666
  //#region src/components/slider/range-slider-tooltip.vue
615
667
  var range_slider_tooltip_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
@@ -629,7 +681,21 @@ var range_slider_tooltip_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
629
681
  open: { type: Boolean },
630
682
  orientation: {},
631
683
  placement: {},
632
- valuePercent: {}
684
+ valuePercent: {},
685
+ tooltipClass: { type: [
686
+ Boolean,
687
+ null,
688
+ String,
689
+ Object,
690
+ Array
691
+ ] },
692
+ tooltipStyle: { type: [
693
+ Boolean,
694
+ null,
695
+ String,
696
+ Object,
697
+ Array
698
+ ] }
633
699
  },
634
700
  emits: ["update:overlapping"],
635
701
  setup(__props, { emit: __emit }) {
@@ -685,7 +751,7 @@ var range_slider_tooltip_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
685
751
  applyVShow(n2, () => __props.open);
686
752
  _setTemplateRef(n2, upperContentRef, null, "upperContentRef");
687
753
  renderEffect(() => {
688
- const _tooltipRootClass = tooltipRootClass.value;
754
+ const _tooltipStyle = __props.tooltipStyle;
689
755
  const _resolvedIds = resolvedIds.value;
690
756
  const _contentStyle = contentStyle.value;
691
757
  const _content = __props.content;
@@ -699,26 +765,32 @@ var range_slider_tooltip_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
699
765
  ]);
700
766
  setStyle(n16, layerStyle.value);
701
767
  setClass(n1, [
702
- _tooltipRootClass,
768
+ tooltipRootClass.value,
703
769
  "rp-range-slider__tooltip",
704
- "rp-range-slider__tooltip--lower"
770
+ "rp-range-slider__tooltip--lower",
771
+ __props.tooltipClass
705
772
  ]);
773
+ setStyle(n1, _tooltipStyle);
706
774
  setProp(n0, "id", _resolvedIds[0]);
707
775
  setStyle(n0, _contentStyle);
708
776
  setText(x0, toDisplayString(_content[0]));
709
777
  setClass(n3, [
710
- _tooltipRootClass,
778
+ tooltipRootClass.value,
711
779
  "rp-range-slider__tooltip",
712
- "rp-range-slider__tooltip--upper"
780
+ "rp-range-slider__tooltip--upper",
781
+ __props.tooltipClass
713
782
  ]);
783
+ setStyle(n3, _tooltipStyle);
714
784
  setProp(n2, "id", _resolvedIds[1]);
715
785
  setStyle(n2, _contentStyle);
716
786
  setText(x2, toDisplayString(_content[1]));
717
787
  setClass(n15, [
718
- _tooltipRootClass,
788
+ tooltipRootClass.value,
719
789
  "rp-range-slider__tooltip",
720
- "rp-range-slider__tooltip--merged"
790
+ "rp-range-slider__tooltip--merged",
791
+ __props.tooltipClass
721
792
  ]);
793
+ setStyle(n15, _tooltipStyle);
722
794
  setProp(n14, "id", resolvedMergedId.value);
723
795
  setStyle(n14, _contentStyle);
724
796
  });
@@ -759,7 +831,7 @@ var range_slider_tooltip_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
759
831
  _setTemplateRef(n16, tooltipLayerRef, null, "tooltipLayerRef");
760
832
  return n16;
761
833
  }
762
- }), [["__scopeId", "data-v-d17966e5"]]);
834
+ }), [["__scopeId", "data-v-ce70c540"]]);
763
835
  //#endregion
764
836
  //#region src/components/slider/useRangeSliderPointer.ts
765
837
  function useRangeSliderPointer(options) {
@@ -1049,9 +1121,9 @@ function getRangeSliderTrackStyle(props, valuePercent) {
1049
1121
  };
1050
1122
  setSliderStyleValue(style, "--_rp-range-slider-color", getComponentColorValue(props.color));
1051
1123
  applySliderThumbStyle(style, props.thumbStyle, {
1052
- size: "--_rp-range-slider-thumb-size",
1124
+ size: "--rp-slider-thumb-size",
1053
1125
  border: "--_rp-range-slider-thumb-border-style",
1054
- padding: "--_rp-range-slider-thumb-padding",
1126
+ padding: "--rp-slider-thumb-padding",
1055
1127
  borderColor: "--_rp-range-slider-thumb-border"
1056
1128
  });
1057
1129
  return style;
@@ -1307,20 +1379,20 @@ function useRangeSlider(props, emitUpdate) {
1307
1379
  }
1308
1380
  //#endregion
1309
1381
  //#region src/components/slider/range-slider.vue?vue&type=script&setup=true&vapor=true&lang.ts
1310
- var t0 = template("<span data-v-8dd81f55 class=rp-range-slider__label>");
1311
- var t1 = template("<span data-v-8dd81f55 class=rp-range-slider__value aria-hidden=true>");
1312
- var t2 = template("<span data-v-8dd81f55 class=rp-range-slider__header>");
1313
- var t3 = template("<input data-v-8dd81f55 type=range>");
1314
- var t4 = template("<span data-v-8dd81f55 class=rp-range-slider__mark-label> ");
1315
- var t5 = template("<span data-v-8dd81f55><span data-v-8dd81f55 class=rp-range-slider__mark-dot></span>");
1316
- var t6 = template("<span data-v-8dd81f55 class=rp-range-slider__marks aria-hidden=true>");
1317
- var t7 = template("<span data-v-8dd81f55><span data-v-8dd81f55 class=rp-range-slider__thumb-content>");
1318
- var t8 = template("<div data-v-8dd81f55 role=group><span data-v-8dd81f55 class=rp-range-slider__track><span data-v-8dd81f55 class=rp-range-slider__bar aria-hidden=true></span><!><span data-v-8dd81f55 class=rp-range-slider__thumbs aria-hidden=true>", 1);
1319
- delegateEvents("input", "keydown", "pointerdown");
1382
+ var t0 = template("<span data-v-c82ae6e8>");
1383
+ var t1 = template("<span data-v-c82ae6e8 class=rp-range-slider__header>");
1384
+ var t2 = template("<input data-v-c82ae6e8>");
1385
+ var t3 = template("<span data-v-c82ae6e8> ");
1386
+ var t4 = template("<span data-v-c82ae6e8><span data-v-c82ae6e8 class=rp-range-slider__mark-dot></span>");
1387
+ var t5 = template("<span data-v-c82ae6e8 class=rp-range-slider__marks aria-hidden=true>");
1388
+ var t6 = template("<span data-v-c82ae6e8><span data-v-c82ae6e8 class=rp-range-slider__thumb-content>");
1389
+ var t7 = template("<div data-v-c82ae6e8><span data-v-c82ae6e8><span data-v-c82ae6e8></span><!><span data-v-c82ae6e8 class=rp-range-slider__thumbs aria-hidden=true>", 1);
1390
+ delegateEvents("pointerdown");
1320
1391
  //#endregion
1321
1392
  //#region src/components/slider/range-slider.vue
1322
1393
  var range_slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
1323
1394
  name: "RpRangeSlider",
1395
+ inheritAttrs: false,
1324
1396
  __name: "range-slider",
1325
1397
  props: {
1326
1398
  modelValue: {},
@@ -1328,6 +1400,7 @@ var range_slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
1328
1400
  name: {},
1329
1401
  ariaLabel: { default: () => ["Minimum", "Maximum"] },
1330
1402
  ariaValueText: {},
1403
+ inputAttrs: {},
1331
1404
  id: {},
1332
1405
  min: { default: 0 },
1333
1406
  max: { default: 100 },
@@ -1351,54 +1424,107 @@ var range_slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
1351
1424
  default: void 0
1352
1425
  },
1353
1426
  describedby: {},
1354
- labelledby: {}
1427
+ labelledby: {},
1428
+ classNames: {},
1429
+ styles: {}
1355
1430
  },
1356
1431
  emits: ["update:modelValue"],
1357
- setup(__props, { emit: __emit, slots: $slots }) {
1432
+ setup(__props, { expose: __expose, emit: __emit, slots: $slots }) {
1358
1433
  const props = __props;
1359
1434
  const emit = __emit;
1360
1435
  const slots = useSlots();
1361
1436
  const generatedId = useId();
1362
1437
  const tooltipsOverlapping = ref(false);
1363
1438
  const rangeSliderThumbs = ["lower", "upper"];
1439
+ const lowerInputRef = ref(null);
1440
+ const upperInputRef = ref(null);
1364
1441
  const labelId = computed(() => `${props.id ?? generatedId}-label`);
1365
1442
  const { control, nativeMin, nativeMax, nativeStep, nativeNames, nativeIds, rootClass, normalizedValue, valuePercent, formattedValue, ariaLabels, ariaValueText, markItems, trackStyle, activeThumb, tooltipVisible, tooltipOpen, tooltipPlacement, tooltipIds, mergedTooltipId, tooltipColor, tooltipOffset, tooltipArrow, tooltipContent, mergedTooltipContent, onInput, onTrackPointerDown, onTooltipFocus, onTooltipBlur, onTooltipTrackMouseEnter, onTooltipTrackMouseLeave, onTooltipKeydown } = useRangeSlider(props, (value) => {
1366
1443
  emit("update:modelValue", value);
1367
1444
  });
1445
+ const { getPartAttrs, getRootAttrs } = useStylesApi(props, "root");
1446
+ const rootAttrs = computed(() => getRootAttrs({
1447
+ class: [rootClass.value, {
1448
+ "rp-range-slider--custom-thumb": Boolean(slots.thumb),
1449
+ "rp-range-slider--tooltips-overlapping": tooltipsOverlapping.value
1450
+ }],
1451
+ style: trackStyle.value,
1452
+ role: "group",
1453
+ "data-active-thumb": activeThumb.value || void 0,
1454
+ "data-disabled": presence(control.disabled),
1455
+ "data-orientation": props.orientation,
1456
+ "aria-labelledby": groupLabelledby.value,
1457
+ "aria-describedby": control.ariaDescribedby
1458
+ }));
1459
+ const inputAttrsByThumb = computed(() => {
1460
+ if (Array.isArray(props.inputAttrs)) return props.inputAttrs;
1461
+ return [props.inputAttrs, props.inputAttrs];
1462
+ });
1463
+ const nativeInputAttrs = computed(() => rangeSliderThumbs.map((thumb, index) => {
1464
+ const { class: compatibilityClass, style: compatibilityStyle, onInput: compatibilityOnInput, onFocus: compatibilityOnFocus, onBlur: compatibilityOnBlur, onKeydown: compatibilityOnKeydown, ...attrs } = inputAttrsByThumb.value[index] ?? {};
1465
+ return Object.assign({}, attrs, {
1466
+ ...getPartAttrs("input", {
1467
+ class: ["rp-range-slider__native", `rp-range-slider__native--${thumb}`],
1468
+ compatibilityClass,
1469
+ compatibilityStyle
1470
+ }),
1471
+ onInput(event) {
1472
+ onInput(thumb, event);
1473
+ compatibilityOnInput?.(event);
1474
+ },
1475
+ onFocus(event) {
1476
+ onTooltipFocus(thumb);
1477
+ compatibilityOnFocus?.(event);
1478
+ },
1479
+ onBlur(event) {
1480
+ onTooltipBlur(thumb);
1481
+ compatibilityOnBlur?.(event);
1482
+ },
1483
+ onKeydown(event) {
1484
+ onTooltipKeydown(thumb, event);
1485
+ compatibilityOnKeydown?.(event);
1486
+ }
1487
+ });
1488
+ }));
1489
+ const nativeElements = computed(() => [lowerInputRef.value, upperInputRef.value]);
1490
+ function setInputRef(index, element) {
1491
+ const input = element instanceof HTMLInputElement ? element : null;
1492
+ if (index === 0) lowerInputRef.value = input;
1493
+ else upperInputRef.value = input;
1494
+ }
1495
+ function focus(options) {
1496
+ lowerInputRef.value?.focus(options);
1497
+ }
1368
1498
  const groupLabelledby = computed(() => {
1369
1499
  const values = [control.ariaLabelledby, slots.default ? labelId.value : void 0].flatMap((value) => value?.split(/\s+/) ?? []).filter(Boolean);
1370
1500
  return values.length ? Array.from(new Set(values)).join(" ") : void 0;
1371
1501
  });
1372
- const n34 = t8();
1373
- const n33 = child(n34, 1);
1374
- const n32 = next(child(n33), 1);
1375
- const n31 = next(n32, 3);
1376
- renderEffect(() => {
1377
- const _control = unref(control);
1378
- setClass(n34, [unref(rootClass), {
1379
- "rp-range-slider--custom-thumb": $slots.thumb,
1380
- "rp-range-slider--tooltips-overlapping": tooltipsOverlapping.value
1381
- }]);
1382
- setAttr(n34, "data-active-thumb", unref(activeThumb));
1383
- setAttr(n34, "data-disabled", _control.disabled || void 0);
1384
- setStyle(n34, unref(trackStyle));
1385
- setAttr(n34, "aria-labelledby", groupLabelledby.value);
1386
- setAttr(n34, "aria-describedby", _control.ariaDescribedby);
1502
+ __expose({
1503
+ nativeElements,
1504
+ focus
1387
1505
  });
1388
- setInsertionState(n34, 0, 0);
1506
+ const _setTemplateRef = createTemplateRefSetter();
1507
+ const n35 = t7();
1508
+ const n34 = child(n35, 1);
1509
+ const n11 = child(n34);
1510
+ const n33 = next(n11, 1);
1511
+ const n32 = next(n33, 3);
1512
+ renderEffect(() => setDynamicProps(n35, [rootAttrs.value]));
1513
+ setInsertionState(n35, 0, 0);
1389
1514
  createIf(() => $slots.default || $slots.value, () => {
1390
- const n10 = t2();
1515
+ const n10 = t1();
1391
1516
  setInsertionState(n10, null, 0);
1392
1517
  createIf(() => $slots.default, () => {
1393
1518
  const n5 = t0();
1394
- renderEffect(() => setProp(n5, "id", labelId.value));
1519
+ renderEffect(() => setDynamicProps(n5, [{ id: labelId.value }, unref(getPartAttrs)("label", { class: "rp-range-slider__label" })]));
1395
1520
  setInsertionState(n5, null, 0);
1396
1521
  createSlot("default", null, null, 1);
1397
1522
  return n5;
1398
1523
  });
1399
1524
  setInsertionState(n10, null, 1);
1400
1525
  createIf(() => $slots.value, () => {
1401
- const n9 = t1();
1526
+ const n9 = t0();
1527
+ renderEffect(() => setDynamicProps(n9, [unref(getPartAttrs)("value", { class: "rp-range-slider__value" }), { "aria-hidden": "true" }]));
1402
1528
  setInsertionState(n9, null, 0);
1403
1529
  createSlot("value", {
1404
1530
  value: () => unref(normalizedValue),
@@ -1409,61 +1535,77 @@ var range_slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
1409
1535
  });
1410
1536
  return n10;
1411
1537
  });
1412
- setInsertionState(n33, n32, 1);
1538
+ renderEffect(() => {
1539
+ const _getPartAttrs = unref(getPartAttrs);
1540
+ setDynamicProps(n34, [_getPartAttrs("track", { class: "rp-range-slider__track" })]);
1541
+ setDynamicProps(n11, [_getPartAttrs("range", { class: "rp-range-slider__bar" }), { "aria-hidden": "true" }]);
1542
+ });
1543
+ setInsertionState(n34, n33, 1);
1413
1544
  createFor(() => rangeSliderThumbs, (_for_item0, _for_key0) => {
1414
- const n13 = t3();
1415
- n13.$evtinput = createInvoker(($event) => unref(onInput)(_for_item0.value, $event));
1416
- on(n13, "focus", () => unref(onTooltipFocus)(_for_item0.value));
1417
- on(n13, "blur", () => unref(onTooltipBlur)(_for_item0.value));
1418
- n13.$evtkeydown = createInvoker(($event) => unref(onTooltipKeydown)(_for_item0.value, $event));
1419
- let _index, _control;
1545
+ const n14 = t2();
1420
1546
  renderEffect(() => {
1421
- _index = _for_key0.value;
1422
- _control = unref(control);
1423
- setProp(n13, "id", unref(nativeIds)[_index]);
1424
- setProp(n13, "name", unref(nativeNames)[_index]);
1425
- setValue(n13, unref(normalizedValue)[_index]);
1426
- setProp(n13, "min", unref(nativeMin)[_index]);
1427
- setProp(n13, "max", unref(nativeMax)[_index]);
1428
- setProp(n13, "step", unref(nativeStep));
1429
- setProp(n13, "orient", __props.orientation === "vertical" ? "vertical" : void 0);
1430
- setProp(n13, "disabled", _control.disabled || void 0);
1431
- setAttr(n13, "aria-label", unref(ariaLabels)[_index]);
1432
- setAttr(n13, "aria-describedby", _control.ariaDescribedby);
1433
- setAttr(n13, "aria-orientation", __props.orientation === "vertical" ? "vertical" : void 0);
1434
- setAttr(n13, "aria-valuetext", unref(ariaValueText)[_index]);
1547
+ const _index = _for_key0.value;
1548
+ const _control = unref(control);
1549
+ setDynamicProps(n14, [nativeInputAttrs.value[_index], {
1550
+ id: unref(nativeIds)[_index],
1551
+ name: unref(nativeNames)[_index],
1552
+ type: "range",
1553
+ value: unref(normalizedValue)[_index],
1554
+ min: unref(nativeMin)[_index],
1555
+ max: unref(nativeMax)[_index],
1556
+ step: unref(nativeStep),
1557
+ orient: __props.orientation === "vertical" ? "vertical" : void 0,
1558
+ disabled: _control.disabled || void 0,
1559
+ "aria-label": unref(ariaLabels)[_index],
1560
+ "aria-describedby": _control.ariaDescribedby,
1561
+ "aria-orientation": __props.orientation === "vertical" ? "vertical" : void 0,
1562
+ "aria-valuetext": unref(ariaValueText)[_index],
1563
+ "data-thumb": _for_item0.value,
1564
+ "data-disabled": unref(presence)(_control.disabled)
1565
+ }]);
1566
+ _setTemplateRef(n14, (element) => setInputRef(_index, element), true);
1435
1567
  });
1436
- setClass(n13, ["rp-range-slider__native", `rp-range-slider__native--${_for_item0.value}`]);
1437
- return n13;
1568
+ return n14;
1438
1569
  }, (thumb, index) => thumb, 8);
1439
- setInsertionState(n33, n32, 2);
1570
+ setInsertionState(n34, n33, 2);
1440
1571
  createIf(() => unref(markItems).length, () => {
1441
- const n22 = t6();
1442
- setInsertionState(n22, null, 0);
1572
+ const n23 = t5();
1573
+ setInsertionState(n23, null, 0);
1443
1574
  createFor(() => unref(markItems), (_for_item0) => {
1444
- const n21 = t5();
1575
+ const n22 = t4();
1445
1576
  renderEffect(() => {
1446
1577
  const _mark = _for_item0.value;
1447
- setClassName(n21, _mark.filled ? 1 : 0, " rp-range-slider__mark--filled", "rp-range-slider__mark");
1448
- setStyle(n21, _mark.style);
1578
+ setDynamicProps(n22, [unref(getPartAttrs)("mark", {
1579
+ class: ["rp-range-slider__mark", { "rp-range-slider__mark--filled": _mark.filled }],
1580
+ style: _mark.style
1581
+ }), { "data-filled": unref(presence)(_mark.filled) }]);
1449
1582
  });
1450
- setInsertionState(n21, null, 1);
1583
+ setInsertionState(n22, null, 1);
1451
1584
  createIf(() => _for_item0.value.hasLabel, () => {
1452
- const n20 = t4();
1453
- const x20 = txt(n20);
1454
- renderEffect(() => setText(x20, toDisplayString(_for_item0.value.label)));
1455
- return n20;
1585
+ const n21 = t3();
1586
+ const x21 = txt(n21);
1587
+ renderEffect(() => {
1588
+ setDynamicProps(n21, [unref(getPartAttrs)("markLabel", { class: "rp-range-slider__mark-label" })]);
1589
+ setText(x21, toDisplayString(_for_item0.value.label));
1590
+ });
1591
+ return n21;
1456
1592
  });
1457
- return n21;
1593
+ return n22;
1458
1594
  }, (mark) => mark.key, 9);
1459
- return n22;
1595
+ return n23;
1460
1596
  });
1461
- setInsertionState(n31, null, 0);
1597
+ setInsertionState(n32, null, 0);
1462
1598
  createFor(() => rangeSliderThumbs, (_for_item0, _for_key0) => {
1463
- const n27 = t7();
1464
- const n26 = child(n27);
1465
- renderEffect(() => setAttr(n27, "data-range-slider-thumb", _for_item0.value));
1466
- setInsertionState(n26, null, 0);
1599
+ const n28 = t6();
1600
+ const n27 = child(n28);
1601
+ renderEffect(() => {
1602
+ const _thumb = _for_item0.value;
1603
+ setDynamicProps(n28, [unref(getPartAttrs)("thumb", { class: ["rp-range-slider__thumb", `rp-range-slider__thumb--${_thumb}`] }), {
1604
+ "data-range-slider-thumb": _thumb,
1605
+ "data-thumb": _thumb
1606
+ }]);
1607
+ });
1608
+ setInsertionState(n27, null, 0);
1467
1609
  createSlot("thumb", {
1468
1610
  thumb: () => _for_item0.value,
1469
1611
  index: () => _for_key0.value,
@@ -1471,10 +1613,9 @@ var range_slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
1471
1613
  formattedValue: () => unref(formattedValue)[_for_key0.value],
1472
1614
  percent: () => unref(valuePercent)[_for_key0.value]
1473
1615
  }, null, 1);
1474
- setClass(n27, ["rp-range-slider__thumb", `rp-range-slider__thumb--${_for_item0.value}`]);
1475
- return n27;
1616
+ return n28;
1476
1617
  }, (thumb, index) => thumb, 8);
1477
- setInsertionState(n31, null, 1);
1618
+ setInsertionState(n32, null, 1);
1478
1619
  createIf(() => unref(tooltipVisible), () => {
1479
1620
  const _on_update_overlapping = ($event) => tooltipsOverlapping.value = $event;
1480
1621
  return createComponent(range_slider_tooltip_default, {
@@ -1489,17 +1630,43 @@ var range_slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
1489
1630
  orientation: () => __props.orientation,
1490
1631
  placement: () => unref(tooltipPlacement),
1491
1632
  "value-percent": () => unref(valuePercent),
1633
+ "tooltip-class": () => __props.classNames?.tooltip,
1634
+ "tooltip-style": () => __props.styles?.tooltip,
1492
1635
  "onUpdate:overlapping": () => _on_update_overlapping
1493
1636
  });
1494
1637
  });
1495
- n33.$evtpointerdown = createInvoker((e) => unref(onTrackPointerDown)(e));
1496
- on(n33, "mouseenter", (e) => unref(onTooltipTrackMouseEnter)(e));
1497
- on(n33, "mouseleave", (e) => unref(onTooltipTrackMouseLeave)(e));
1498
- return n34;
1638
+ n34.$evtpointerdown = createInvoker((e) => unref(onTrackPointerDown)(e));
1639
+ on(n34, "mouseenter", (e) => unref(onTooltipTrackMouseEnter)(e));
1640
+ on(n34, "mouseleave", (e) => unref(onTooltipTrackMouseLeave)(e));
1641
+ return n35;
1499
1642
  }
1500
- }), [["__scopeId", "data-v-8dd81f55"]]);
1643
+ }), [["__scopeId", "data-v-c82ae6e8"]]);
1501
1644
  //#endregion
1502
1645
  //#region src/components/slider/types.ts
1646
+ var sliderParts = [
1647
+ "root",
1648
+ "label",
1649
+ "value",
1650
+ "track",
1651
+ "range",
1652
+ "input",
1653
+ "thumb",
1654
+ "mark",
1655
+ "markLabel",
1656
+ "tooltip"
1657
+ ];
1658
+ var rangeSliderParts = [
1659
+ "root",
1660
+ "label",
1661
+ "value",
1662
+ "track",
1663
+ "range",
1664
+ "input",
1665
+ "thumb",
1666
+ "mark",
1667
+ "markLabel",
1668
+ "tooltip"
1669
+ ];
1503
1670
  var sliderColors = componentColors;
1504
1671
  var sliderSizes = [
1505
1672
  "xs",
@@ -1510,4 +1677,4 @@ var sliderSizes = [
1510
1677
  ];
1511
1678
  var sliderOrientations = ["horizontal", "vertical"];
1512
1679
  //#endregion
1513
- export { slider_default as a, range_slider_default as i, sliderOrientations as n, sliderSizes as r, sliderColors as t };
1680
+ export { sliderSizes as a, sliderParts as i, sliderColors as n, range_slider_default as o, sliderOrientations as r, slider_default as s, rangeSliderParts as t };