StellarUI

<stellar-range>

Properties

Preview

Markup

Copy
<stellar-range
  label="Volume"
  description="Adjust the playback level."
  value="40"
  min="0"
  max="100"
  step="1"
>
</stellar-range>

API

Complete props, events, slots, and implementation notes for the shipped range input.

Props

PropTypeDefaultNotes
toneneutral | primary | secondary | tertiary | errorneutralSets the progress color and thumb contrast.
sizexs | sm | md | lg | xlmdScales the thumb and track height.
markersbooleanfalseDraws built-in step markers derived from min, max, and step.
tooltipbooleanfalseShows a built-in value tooltip while the slider has focus.
disabledbooleanfalseDisables the inner native range input.
labelstring''Fallback text for the label slot above the control.
descriptionstring''Fallback text for the description slot below the control.
referencesstring''Pipe-separated fallback text for the reference slot, for example Low|Medium|High.
valuestring50Current range value mirrored through the host value property.
minstring0Native minimum value.
maxstring100Native maximum value.
stepstring1Native step size.

Events

EventSourceNotes
input / changehostRedispatched from the inner native <input type="range">.
focus / blurnativeUse normal DOM listeners on the custom element.
custom eventsnonestellar-range does not emit custom events.

Slots

SlotNotes
labelOptional content above the control. Overrides the label prop when present.
descriptionOptional helper content below the control. Overrides the description prop when present.
referenceOptional visual references below the slider. Overrides the references prop when slotted content is present.

Notes

  • The public tag is `stellar-range`, backed by a real native `<input type="range">`.
  • The shipped API stays small: `tone`, `size`, `markers`, `tooltip`, `disabled`, `label`, `description`, `references`, `value`, `min`, `max`, and `step`.
  • `stellar-range` uses the same field metadata pattern as the other input controls, so labels and helper text line up without docs-only wrappers.
  • `required`, `aria-invalid`, and `custom-validity` forward to the inner native range input for validation-sensitive flows.
  • The host exposes `setCustomValidity()`, `checkValidity()`, `reportValidity()`, `validity`, `validationMessage`, and `willValidate`, so app code can use native-like validity APIs on the custom element.
  • For Datastar, prefer `data-attr:custom-validity="..."` on the custom element host instead of the Pro-only `data-custom-validity` attribute.
  • Use `data-bind:value` when binding the slider value from Datastar.
  • The component now follows the shape more closely: markers are visual geometry, references are slotted content, and tooltip is a separate built-in feature.
  • Host-level CSS vars like `--range-bg`, `--range-thumb`, and `--range-fill` can override the default track and fill treatment for advanced styling.
  • The visual baseline follows the shipped range thumb sizing and filled-track treatment with direct Stellar token mapping.