{"mappings":"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","sources":["packages/react-aria-components/src/Slider.tsx"],"sourcesContent":["/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n  AriaSliderProps,\n  AriaSliderThumbProps,\n  useSlider,\n  useSliderThumb\n} from 'react-aria/useSlider';\n\nimport {clamp} from 'react-stately/private/utils/number';\nimport {\n  ClassNameOrFunction,\n  ContextValue,\n  dom,\n  Provider,\n  RenderProps,\n  SlotProps,\n  useContextProps,\n  useRenderProps,\n  useSlot,\n  useSlottedContext\n} from './utils';\nimport {filterDOMProps} from 'react-aria/filterDOMProps';\nimport {forwardRefType, GlobalDOMAttributes, RefObject} from '@react-types/shared';\nimport {HoverEvents, Orientation} from '@react-types/shared';\nimport {LabelContext} from './Label';\nimport {mergeProps} from 'react-aria/mergeProps';\nimport React, {\n  createContext,\n  ForwardedRef,\n  forwardRef,\n  HTMLAttributes,\n  OutputHTMLAttributes,\n  useContext,\n  useRef\n} from 'react';\nimport {SliderState, useSliderState} from 'react-stately/useSliderState';\nimport {useFocusRing} from 'react-aria/useFocusRing';\nimport {useHover} from 'react-aria/useHover';\nimport {useNumberFormatter} from 'react-aria/useNumberFormatter';\nimport {VisuallyHidden} from 'react-aria/VisuallyHidden';\n\nexport interface SliderProps<T = number | number[]>\n  extends\n    Omit<AriaSliderProps<T>, 'label'>,\n    RenderProps<SliderRenderProps>,\n    SlotProps,\n    GlobalDOMAttributes<HTMLDivElement> {\n  /**\n   * The CSS [className](https://developer.mozilla.org/en-US/docs/Web/API/Element/className) for the\n   * element. A function may be provided to compute the class based on component state.\n   *\n   * @default 'react-aria-Slider'\n   */\n  className?: ClassNameOrFunction<SliderRenderProps>;\n  /**\n   * The display format of the value label.\n   */\n  formatOptions?: Intl.NumberFormatOptions;\n}\n\nexport const SliderContext = createContext<ContextValue<SliderProps, HTMLDivElement>>(null);\nexport const SliderStateContext = createContext<SliderState | null>(null);\nexport const SliderTrackContext =\n  createContext<ContextValue<SliderTrackContextValue, HTMLDivElement>>(null);\nexport const SliderFillContext = createContext<ContextValue<SliderFillProps, HTMLDivElement>>(null);\nexport const SliderOutputContext =\n  createContext<ContextValue<SliderOutputContextValue, HTMLOutputElement>>(null);\n\nexport interface SliderRenderProps {\n  /**\n   * The orientation of the slider.\n   *\n   * @selector [data-orientation=\"horizontal | vertical\"]\n   */\n  orientation: Orientation;\n  /**\n   * Whether the slider is disabled.\n   *\n   * @selector [data-disabled]\n   */\n  isDisabled: boolean;\n  /**\n   * State of the slider.\n   */\n  state: SliderState;\n}\n\n/**\n * A slider allows a user to select one or more values within a range.\n */\nexport const Slider = /*#__PURE__*/ (forwardRef as forwardRefType)(function Slider<\n  T extends number | number[]\n>(props: SliderProps<T>, ref: ForwardedRef<HTMLDivElement>) {\n  [props, ref] = useContextProps(props, ref, SliderContext);\n  let trackRef = useRef<HTMLDivElement>(null);\n  let numberFormatter = useNumberFormatter(props.formatOptions);\n  let state = useSliderState({...props, numberFormatter});\n  let [labelRef, label] = useSlot(!props['aria-label'] && !props['aria-labelledby']);\n  let {groupProps, trackProps, labelProps, outputProps} = useSlider(\n    {...props, label},\n    state,\n    trackRef\n  );\n\n  let renderProps = useRenderProps({\n    ...props,\n    values: {\n      orientation: state.orientation,\n      isDisabled: state.isDisabled,\n      state\n    },\n    defaultClassName: 'react-aria-Slider'\n  });\n\n  let DOMProps = filterDOMProps(props, {global: true});\n  delete DOMProps.id;\n\n  return (\n    <Provider\n      values={[\n        [SliderStateContext, state],\n        [SliderTrackContext, {...trackProps, ref: trackRef}],\n        [SliderOutputContext, outputProps],\n        [LabelContext, {...labelProps, ref: labelRef}]\n      ]}>\n      <dom.div\n        {...mergeProps(DOMProps, renderProps, groupProps)}\n        ref={ref}\n        slot={props.slot || undefined}\n        data-orientation={state.orientation}\n        data-disabled={state.isDisabled || undefined}\n      />\n    </Provider>\n  );\n});\n\nexport interface SliderOutputProps\n  extends RenderProps<SliderRenderProps, 'output'>, GlobalDOMAttributes<HTMLOutputElement> {\n  /**\n   * The CSS [className](https://developer.mozilla.org/en-US/docs/Web/API/Element/className) for the\n   * element. A function may be provided to compute the class based on component state.\n   *\n   * @default 'react-aria-SliderOutput'\n   */\n  className?: ClassNameOrFunction<SliderRenderProps>;\n}\ninterface SliderOutputContextValue\n  extends\n    Omit<OutputHTMLAttributes<HTMLOutputElement>, 'children' | 'className' | 'style'>,\n    SliderOutputProps {}\n\n/**\n * A slider output displays the current value of a slider as text.\n */\nexport const SliderOutput = /*#__PURE__*/ (forwardRef as forwardRefType)(function SliderOutput(\n  props: SliderOutputProps,\n  ref: ForwardedRef<HTMLOutputElement>\n) {\n  [props, ref] = useContextProps(props, ref, SliderOutputContext);\n  let {children, style, className, render, ...otherProps} = props;\n  let state = useContext(SliderStateContext)!;\n  let renderProps = useRenderProps({\n    className,\n    style,\n    children,\n    render,\n    defaultChildren: state.getFormattedValue(),\n    defaultClassName: 'react-aria-SliderOutput',\n    values: {\n      orientation: state.orientation,\n      isDisabled: state.isDisabled,\n      state\n    }\n  });\n\n  return (\n    <dom.output\n      {...otherProps}\n      {...renderProps}\n      ref={ref}\n      data-orientation={state.orientation || undefined}\n      data-disabled={state.isDisabled || undefined}\n    />\n  );\n});\n\nexport interface SliderTrackRenderProps extends SliderRenderProps {\n  /**\n   * Whether the slider track is currently hovered with a mouse.\n   *\n   * @selector [data-hovered]\n   */\n  isHovered: boolean;\n}\n\nexport interface SliderTrackProps\n  extends HoverEvents, RenderProps<SliderTrackRenderProps>, GlobalDOMAttributes<HTMLDivElement> {\n  /**\n   * The CSS [className](https://developer.mozilla.org/en-US/docs/Web/API/Element/className) for the\n   * element. A function may be provided to compute the class based on component state.\n   *\n   * @default 'react-aria-SliderTrack'\n   */\n  className?: ClassNameOrFunction<SliderTrackRenderProps>;\n}\ninterface SliderTrackContextValue\n  extends\n    Omit<HTMLAttributes<HTMLDivElement>, 'children' | 'className' | 'style'>,\n    SliderTrackProps {}\n\n/**\n * A slider track is a container for one or more slider thumbs.\n */\nexport const SliderTrack = /*#__PURE__*/ (forwardRef as forwardRefType)(function SliderTrack(\n  props: SliderTrackProps,\n  ref: ForwardedRef<HTMLDivElement>\n) {\n  [props, ref] = useContextProps(props, ref, SliderTrackContext);\n  let state = useContext(SliderStateContext)!;\n  let {onHoverStart, onHoverEnd, onHoverChange, ...otherProps} = props;\n  let {hoverProps, isHovered} = useHover({onHoverStart, onHoverEnd, onHoverChange});\n  let renderProps = useRenderProps({\n    ...props,\n    defaultClassName: 'react-aria-SliderTrack',\n    values: {\n      orientation: state.orientation,\n      isDisabled: state.isDisabled,\n      isHovered,\n      state\n    }\n  });\n\n  return (\n    <dom.div\n      {...mergeProps(otherProps, hoverProps)}\n      {...renderProps}\n      ref={ref}\n      data-hovered={isHovered || undefined}\n      data-orientation={state.orientation || undefined}\n      data-disabled={state.isDisabled || undefined}\n    />\n  );\n});\n\nexport interface SliderThumbRenderProps {\n  /**\n   * State of the slider.\n   */\n  state: SliderState;\n  /**\n   * Whether this thumb is currently being dragged.\n   *\n   * @selector [data-dragging]\n   */\n  isDragging: boolean;\n  /**\n   * Whether the thumb is currently hovered with a mouse.\n   *\n   * @selector [data-hovered]\n   */\n  isHovered: boolean;\n  /**\n   * Whether the thumb is currently focused.\n   *\n   * @selector [data-focused]\n   */\n  isFocused: boolean;\n  /**\n   * Whether the thumb is keyboard focused.\n   *\n   * @selector [data-focus-visible]\n   */\n  isFocusVisible: boolean;\n  /**\n   * Whether the thumb is disabled.\n   *\n   * @selector [data-disabled]\n   */\n  isDisabled: boolean;\n}\n\nexport interface SliderThumbProps\n  extends\n    Omit<AriaSliderThumbProps, 'label' | 'validationState'>,\n    HoverEvents,\n    RenderProps<SliderThumbRenderProps>,\n    GlobalDOMAttributes<HTMLDivElement> {\n  /**\n   * The CSS [className](https://developer.mozilla.org/en-US/docs/Web/API/Element/className) for the\n   * element. A function may be provided to compute the class based on component state.\n   *\n   * @default 'react-aria-SliderThumb'\n   */\n  className?: ClassNameOrFunction<SliderThumbRenderProps>;\n  /**\n   * A ref for the HTML input element.\n   */\n  inputRef?: RefObject<HTMLInputElement | null>;\n}\n\n/**\n * A slider thumb represents an individual value that the user can adjust within a slider track.\n */\nexport const SliderThumb = /*#__PURE__*/ (forwardRef as forwardRefType)(function SliderThumb(\n  props: SliderThumbProps,\n  ref: ForwardedRef<HTMLDivElement>\n) {\n  let {inputRef: userInputRef = null} = props;\n  let state = useContext(SliderStateContext)!;\n  let {ref: trackRef} = useSlottedContext(SliderTrackContext)!;\n  let {index = 0} = props;\n  let defaultInputRef = useRef<HTMLInputElement>(null);\n  let inputRef = userInputRef || defaultInputRef;\n  let [labelRef, label] = useSlot(!props['aria-label'] && !props['aria-labelledby']);\n  let {thumbProps, inputProps, labelProps, isDragging, isFocused, isDisabled} = useSliderThumb(\n    {\n      ...props,\n      index,\n      trackRef: trackRef as RefObject<HTMLDivElement | null>,\n      inputRef,\n      label\n    },\n    state\n  );\n\n  let {focusProps, isFocusVisible} = useFocusRing();\n  let {hoverProps, isHovered} = useHover(props);\n\n  let renderProps = useRenderProps({\n    ...props,\n    defaultClassName: 'react-aria-SliderThumb',\n    values: {\n      state,\n      isHovered,\n      isDragging,\n      isFocused,\n      isFocusVisible,\n      isDisabled\n    }\n  });\n\n  let DOMProps = filterDOMProps(props, {global: true});\n  delete DOMProps.id;\n\n  return (\n    <dom.div\n      {...mergeProps(DOMProps, thumbProps, hoverProps)}\n      {...renderProps}\n      ref={ref}\n      style={{...thumbProps.style, ...renderProps.style}}\n      data-hovered={isHovered || undefined}\n      data-dragging={isDragging || undefined}\n      data-focused={isFocused || undefined}\n      data-focus-visible={isFocusVisible || undefined}\n      data-disabled={isDisabled || undefined}>\n      <VisuallyHidden>\n        <input ref={inputRef} {...mergeProps(inputProps, focusProps)} />\n      </VisuallyHidden>\n      <Provider values={[[LabelContext, {...labelProps, ref: labelRef}]]}>\n        {renderProps.children}\n      </Provider>\n    </dom.div>\n  );\n});\n\nexport interface SliderFillRenderProps extends SliderRenderProps {\n  /**\n   * Whether the slider fill is currently hovered with a mouse.\n   *\n   * @selector [data-hovered]\n   */\n  isHovered: boolean;\n}\n\nexport interface SliderFillProps\n  extends HoverEvents, RenderProps<SliderFillRenderProps>, GlobalDOMAttributes<HTMLDivElement> {\n  /**\n   * The offset from which to start the fill.\n   *\n   * @default 0\n   */\n  offset?: number;\n  /**\n   * The CSS [className](https://developer.mozilla.org/en-US/docs/Web/API/Element/className) for the\n   * element. A function may be provided to compute the class based on component state.\n   *\n   * @default 'react-aria-SliderFill'\n   */\n  className?: ClassNameOrFunction<SliderFillRenderProps>;\n}\n\n/**\n * Displays the selected range.\n */\nexport const SliderFill = /*#__PURE__*/ (forwardRef as forwardRefType)(function SliderFill(\n  props: SliderFillProps,\n  ref: ForwardedRef<HTMLDivElement>\n) {\n  [props, ref] = useContextProps(props, ref, SliderFillContext);\n  let state = useContext(SliderStateContext)!;\n  let {onHoverStart, onHoverEnd, onHoverChange, ...otherProps} = props;\n  let {hoverProps, isHovered} = useHover({onHoverStart, onHoverEnd, onHoverChange});\n\n  let offset =\n    props.offset != null\n      ? clamp(props.offset, state.getThumbMinValue(0), state.getThumbMaxValue(0))\n      : state.getThumbMinValue(0);\n  let start =\n    state.values.length > 1 ? state.getThumbPercent(0) * 100 : state.getValuePercent(offset) * 100;\n  let end = state.values.length > 0 ? state.getThumbPercent(state.values.length - 1) * 100 : 0;\n  let startPercent = Math.min(start, end);\n  let endPercent = Math.max(start, end);\n  let sizePercent = Math.max(0, endPercent - startPercent);\n\n  let renderProps = useRenderProps({\n    ...props,\n    defaultClassName: 'react-aria-SliderFill',\n    defaultStyle:\n      state.orientation === 'vertical'\n        ? {\n            position: 'absolute',\n            bottom: `${startPercent}%`,\n            height: `${sizePercent}%`,\n            width: '100%'\n          }\n        : {\n            position: 'absolute',\n            insetInlineStart: `${startPercent}%`,\n            width: `${sizePercent}%`,\n            height: '100%'\n          },\n    values: {\n      orientation: state.orientation,\n      isDisabled: state.isDisabled,\n      isHovered,\n      state\n    }\n  });\n\n  return (\n    <dom.div\n      {...mergeProps(otherProps, hoverProps)}\n      {...renderProps}\n      ref={ref}\n      data-hovered={isHovered || undefined}\n      data-orientation={state.orientation || undefined}\n      data-disabled={state.isDisabled || undefined}\n    />\n  );\n});\n"],"names":[],"version":3,"file":"Slider.cjs.map"}