{"ast":null,"code":"import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport cls from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport isEqual from \"rc-util/es/isEqual\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport SliderContext from \"./context\";\nimport Handles from \"./Handles\";\nimport useDrag from \"./hooks/useDrag\";\nimport useOffset from \"./hooks/useOffset\";\nimport Marks from \"./Marks\";\nimport Steps from \"./Steps\";\nimport Tracks from \"./Tracks\";\n\n/**\n * New:\n * - click mark to update range value\n * - handleRender\n * - Fix handle with count not correct\n * - Fix pushable not work in some case\n * - No more FindDOMNode\n * - Move all position related style into inline style\n * - Key: up is plus, down is minus\n * - fix Key with step = null not align with marks\n * - Change range should not trigger onChange\n * - keyboard support pushable\n */\n\nvar Slider = /*#__PURE__*/React.forwardRef(function (props, ref) {\n  var _cls;\n  var _props$prefixCls = props.prefixCls,\n    prefixCls = _props$prefixCls === void 0 ? 'rc-slider' : _props$prefixCls,\n    className = props.className,\n    style = props.style,\n    classNames = props.classNames,\n    styles = props.styles,\n    _props$disabled = props.disabled,\n    disabled = _props$disabled === void 0 ? false : _props$disabled,\n    _props$keyboard = props.keyboard,\n    keyboard = _props$keyboard === void 0 ? true : _props$keyboard,\n    autoFocus = props.autoFocus,\n    onFocus = props.onFocus,\n    onBlur = props.onBlur,\n    _props$min = props.min,\n    min = _props$min === void 0 ? 0 : _props$min,\n    _props$max = props.max,\n    max = _props$max === void 0 ? 100 : _props$max,\n    _props$step = props.step,\n    step = _props$step === void 0 ? 1 : _props$step,\n    value = props.value,\n    defaultValue = props.defaultValue,\n    range = props.range,\n    count = props.count,\n    onChange = props.onChange,\n    onBeforeChange = props.onBeforeChange,\n    onAfterChange = props.onAfterChange,\n    onChangeComplete = props.onChangeComplete,\n    _props$allowCross = props.allowCross,\n    allowCross = _props$allowCross === void 0 ? true : _props$allowCross,\n    _props$pushable = props.pushable,\n    pushable = _props$pushable === void 0 ? false : _props$pushable,\n    draggableTrack = props.draggableTrack,\n    reverse = props.reverse,\n    vertical = props.vertical,\n    _props$included = props.included,\n    included = _props$included === void 0 ? true : _props$included,\n    startPoint = props.startPoint,\n    trackStyle = props.trackStyle,\n    handleStyle = props.handleStyle,\n    railStyle = props.railStyle,\n    dotStyle = props.dotStyle,\n    activeDotStyle = props.activeDotStyle,\n    marks = props.marks,\n    dots = props.dots,\n    handleRender = props.handleRender,\n    _props$tabIndex = props.tabIndex,\n    tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,\n    ariaLabelForHandle = props.ariaLabelForHandle,\n    ariaLabelledByForHandle = props.ariaLabelledByForHandle,\n    ariaValueTextFormatterForHandle = props.ariaValueTextFormatterForHandle;\n  var handlesRef = React.useRef();\n  var containerRef = React.useRef();\n  var direction = React.useMemo(function () {\n    if (vertical) {\n      return reverse ? 'ttb' : 'btt';\n    }\n    return reverse ? 'rtl' : 'ltr';\n  }, [reverse, vertical]);\n\n  // ============================ Range =============================\n  var mergedMin = React.useMemo(function () {\n    return isFinite(min) ? min : 0;\n  }, [min]);\n  var mergedMax = React.useMemo(function () {\n    return isFinite(max) ? max : 100;\n  }, [max]);\n\n  // ============================= Step =============================\n  var mergedStep = React.useMemo(function () {\n    return step !== null && step <= 0 ? 1 : step;\n  }, [step]);\n\n  // ============================= Push =============================\n  var mergedPush = React.useMemo(function () {\n    if (typeof pushable === 'boolean') {\n      return pushable ? mergedStep : false;\n    }\n    return pushable >= 0 ? pushable : false;\n  }, [pushable, mergedStep]);\n\n  // ============================ Marks =============================\n  var markList = React.useMemo(function () {\n    var keys = Object.keys(marks || {});\n    return keys.map(function (key) {\n      var mark = marks[key];\n      var markObj = {\n        value: Number(key)\n      };\n      if (mark && _typeof(mark) === 'object' && ! /*#__PURE__*/React.isValidElement(mark) && ('label' in mark || 'style' in mark)) {\n        markObj.style = mark.style;\n        markObj.label = mark.label;\n      } else {\n        markObj.label = mark;\n      }\n      return markObj;\n    }).filter(function (_ref) {\n      var label = _ref.label;\n      return label || typeof label === 'number';\n    }).sort(function (a, b) {\n      return a.value - b.value;\n    });\n  }, [marks]);\n\n  // ============================ Format ============================\n  var _useOffset = useOffset(mergedMin, mergedMax, mergedStep, markList, allowCross, mergedPush),\n    _useOffset2 = _slicedToArray(_useOffset, 2),\n    formatValue = _useOffset2[0],\n    offsetValues = _useOffset2[1];\n\n  // ============================ Values ============================\n  var _useMergedState = useMergedState(defaultValue, {\n      value: value\n    }),\n    _useMergedState2 = _slicedToArray(_useMergedState, 2),\n    mergedValue = _useMergedState2[0],\n    setValue = _useMergedState2[1];\n  var rawValues = React.useMemo(function () {\n    var valueList = mergedValue === null || mergedValue === undefined ? [] : Array.isArray(mergedValue) ? mergedValue : [mergedValue];\n    var _valueList = _slicedToArray(valueList, 1),\n      _valueList$ = _valueList[0],\n      val0 = _valueList$ === void 0 ? mergedMin : _valueList$;\n    var returnValues = mergedValue === null ? [] : [val0];\n\n    // Format as range\n    if (range) {\n      returnValues = _toConsumableArray(valueList);\n\n      // When count provided or value is `undefined`, we fill values\n      if (count || mergedValue === undefined) {\n        var pointCount = count >= 0 ? count + 1 : 2;\n        returnValues = returnValues.slice(0, pointCount);\n\n        // Fill with count\n        while (returnValues.length < pointCount) {\n          var _returnValues;\n          returnValues.push((_returnValues = returnValues[returnValues.length - 1]) !== null && _returnValues !== void 0 ? _returnValues : mergedMin);\n        }\n      }\n      returnValues.sort(function (a, b) {\n        return a - b;\n      });\n    }\n\n    // Align in range\n    returnValues.forEach(function (val, index) {\n      returnValues[index] = formatValue(val);\n    });\n    return returnValues;\n  }, [mergedValue, range, mergedMin, count, formatValue]);\n\n  // =========================== onChange ===========================\n  var rawValuesRef = React.useRef(rawValues);\n  rawValuesRef.current = rawValues;\n  var getTriggerValue = function getTriggerValue(triggerValues) {\n    return range ? triggerValues : triggerValues[0];\n  };\n  var triggerChange = function triggerChange(nextValues) {\n    // Order first\n    var cloneNextValues = _toConsumableArray(nextValues).sort(function (a, b) {\n      return a - b;\n    });\n\n    // Trigger event if needed\n    if (onChange && !isEqual(cloneNextValues, rawValuesRef.current, true)) {\n      onChange(getTriggerValue(cloneNextValues));\n    }\n\n    // We set this later since it will re-render component immediately\n    setValue(cloneNextValues);\n  };\n  var finishChange = function finishChange() {\n    onAfterChange === null || onAfterChange === void 0 || onAfterChange(getTriggerValue(rawValuesRef.current));\n    warning(!onAfterChange, '[rc-slider] `onAfterChange` is deprecated. Please use `onChangeComplete` instead.');\n    onChangeComplete === null || onChangeComplete === void 0 || onChangeComplete(getTriggerValue(rawValuesRef.current));\n  };\n  var _useDrag = useDrag(containerRef, direction, rawValues, mergedMin, mergedMax, formatValue, triggerChange, finishChange, offsetValues),\n    _useDrag2 = _slicedToArray(_useDrag, 4),\n    draggingIndex = _useDrag2[0],\n    draggingValue = _useDrag2[1],\n    cacheValues = _useDrag2[2],\n    onStartDrag = _useDrag2[3];\n  var changeToCloseValue = function changeToCloseValue(newValue, e) {\n    if (!disabled) {\n      var valueIndex = 0;\n      var valueDist = mergedMax - mergedMin;\n      rawValues.forEach(function (val, index) {\n        var dist = Math.abs(newValue - val);\n        if (dist <= valueDist) {\n          valueDist = dist;\n          valueIndex = index;\n        }\n      });\n\n      // Create new values\n      var cloneNextValues = _toConsumableArray(rawValues);\n      cloneNextValues[valueIndex] = newValue;\n\n      // Fill value to match default 2\n      if (range && !rawValues.length && count === undefined) {\n        cloneNextValues.push(newValue);\n      }\n      onBeforeChange === null || onBeforeChange === void 0 || onBeforeChange(getTriggerValue(cloneNextValues));\n      triggerChange(cloneNextValues);\n      if (e) {\n        onStartDrag(e, valueIndex, cloneNextValues);\n      }\n    }\n  };\n\n  // ============================ Click =============================\n  var onSliderMouseDown = function onSliderMouseDown(e) {\n    e.preventDefault();\n    var _containerRef$current = containerRef.current.getBoundingClientRect(),\n      width = _containerRef$current.width,\n      height = _containerRef$current.height,\n      left = _containerRef$current.left,\n      top = _containerRef$current.top,\n      bottom = _containerRef$current.bottom,\n      right = _containerRef$current.right;\n    var clientX = e.clientX,\n      clientY = e.clientY;\n    var percent;\n    switch (direction) {\n      case 'btt':\n        percent = (bottom - clientY) / height;\n        break;\n      case 'ttb':\n        percent = (clientY - top) / height;\n        break;\n      case 'rtl':\n        percent = (right - clientX) / width;\n        break;\n      default:\n        percent = (clientX - left) / width;\n    }\n    var nextValue = mergedMin + percent * (mergedMax - mergedMin);\n    changeToCloseValue(formatValue(nextValue), e);\n  };\n\n  // =========================== Keyboard ===========================\n  var _React$useState = React.useState(null),\n    _React$useState2 = _slicedToArray(_React$useState, 2),\n    keyboardValue = _React$useState2[0],\n    setKeyboardValue = _React$useState2[1];\n  var onHandleOffsetChange = function onHandleOffsetChange(offset, valueIndex) {\n    if (!disabled) {\n      var next = offsetValues(rawValues, offset, valueIndex);\n      onBeforeChange === null || onBeforeChange === void 0 || onBeforeChange(getTriggerValue(rawValues));\n      triggerChange(next.values);\n      setKeyboardValue(next.value);\n    }\n  };\n  React.useEffect(function () {\n    if (keyboardValue !== null) {\n      var valueIndex = rawValues.indexOf(keyboardValue);\n      if (valueIndex >= 0) {\n        handlesRef.current.focus(valueIndex);\n      }\n    }\n    setKeyboardValue(null);\n  }, [keyboardValue]);\n\n  // ============================= Drag =============================\n  var mergedDraggableTrack = React.useMemo(function () {\n    if (draggableTrack && mergedStep === null) {\n      if (process.env.NODE_ENV !== 'production') {\n        warning(false, '`draggableTrack` is not supported when `step` is `null`.');\n      }\n      return false;\n    }\n    return draggableTrack;\n  }, [draggableTrack, mergedStep]);\n  var onStartMove = function onStartMove(e, valueIndex) {\n    onStartDrag(e, valueIndex);\n    onBeforeChange === null || onBeforeChange === void 0 || onBeforeChange(getTriggerValue(rawValuesRef.current));\n  };\n\n  // Auto focus for updated handle\n  var dragging = draggingIndex !== -1;\n  React.useEffect(function () {\n    if (!dragging) {\n      var valueIndex = rawValues.lastIndexOf(draggingValue);\n      handlesRef.current.focus(valueIndex);\n    }\n  }, [dragging]);\n\n  // =========================== Included ===========================\n  var sortedCacheValues = React.useMemo(function () {\n    return _toConsumableArray(cacheValues).sort(function (a, b) {\n      return a - b;\n    });\n  }, [cacheValues]);\n\n  // Provide a range values with included [min, max]\n  // Used for Track, Mark & Dot\n  var _React$useMemo = React.useMemo(function () {\n      if (!range) {\n        return [mergedMin, sortedCacheValues[0]];\n      }\n      return [sortedCacheValues[0], sortedCacheValues[sortedCacheValues.length - 1]];\n    }, [sortedCacheValues, range, mergedMin]),\n    _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n    includedStart = _React$useMemo2[0],\n    includedEnd = _React$useMemo2[1];\n\n  // ============================= Refs =============================\n  React.useImperativeHandle(ref, function () {\n    return {\n      focus: function focus() {\n        handlesRef.current.focus(0);\n      },\n      blur: function blur() {\n        var _document = document,\n          activeElement = _document.activeElement;\n        if (containerRef.current.contains(activeElement)) {\n          activeElement === null || activeElement === void 0 || activeElement.blur();\n        }\n      }\n    };\n  });\n\n  // ========================== Auto Focus ==========================\n  React.useEffect(function () {\n    if (autoFocus) {\n      handlesRef.current.focus(0);\n    }\n  }, []);\n\n  // =========================== Context ============================\n  var context = React.useMemo(function () {\n    return {\n      min: mergedMin,\n      max: mergedMax,\n      direction: direction,\n      disabled: disabled,\n      keyboard: keyboard,\n      step: mergedStep,\n      included: included,\n      includedStart: includedStart,\n      includedEnd: includedEnd,\n      range: range,\n      tabIndex: tabIndex,\n      ariaLabelForHandle: ariaLabelForHandle,\n      ariaLabelledByForHandle: ariaLabelledByForHandle,\n      ariaValueTextFormatterForHandle: ariaValueTextFormatterForHandle,\n      styles: styles || {},\n      classNames: classNames || {}\n    };\n  }, [mergedMin, mergedMax, direction, disabled, keyboard, mergedStep, included, includedStart, includedEnd, range, tabIndex, ariaLabelForHandle, ariaLabelledByForHandle, ariaValueTextFormatterForHandle, styles, classNames]);\n\n  // ============================ Render ============================\n  return /*#__PURE__*/React.createElement(SliderContext.Provider, {\n    value: context\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    ref: containerRef,\n    className: cls(prefixCls, className, (_cls = {}, _defineProperty(_cls, \"\".concat(prefixCls, \"-disabled\"), disabled), _defineProperty(_cls, \"\".concat(prefixCls, \"-vertical\"), vertical), _defineProperty(_cls, \"\".concat(prefixCls, \"-horizontal\"), !vertical), _defineProperty(_cls, \"\".concat(prefixCls, \"-with-marks\"), markList.length), _cls)),\n    style: style,\n    onMouseDown: onSliderMouseDown\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    className: cls(\"\".concat(prefixCls, \"-rail\"), classNames === null || classNames === void 0 ? void 0 : classNames.rail),\n    style: _objectSpread(_objectSpread({}, railStyle), styles === null || styles === void 0 ? void 0 : styles.rail)\n  }), /*#__PURE__*/React.createElement(Tracks, {\n    prefixCls: prefixCls,\n    style: trackStyle,\n    values: sortedCacheValues,\n    startPoint: startPoint,\n    onStartMove: mergedDraggableTrack ? onStartMove : null\n  }), /*#__PURE__*/React.createElement(Steps, {\n    prefixCls: prefixCls,\n    marks: markList,\n    dots: dots,\n    style: dotStyle,\n    activeStyle: activeDotStyle\n  }), /*#__PURE__*/React.createElement(Handles, {\n    ref: handlesRef,\n    prefixCls: prefixCls,\n    style: handleStyle,\n    values: cacheValues,\n    draggingIndex: draggingIndex,\n    onStartMove: onStartMove,\n    onOffsetChange: onHandleOffsetChange,\n    onFocus: onFocus,\n    onBlur: onBlur,\n    handleRender: handleRender,\n    onChangeComplete: finishChange\n  }), /*#__PURE__*/React.createElement(Marks, {\n    prefixCls: prefixCls,\n    marks: markList,\n    onClick: changeToCloseValue\n  })));\n});\nif (process.env.NODE_ENV !== 'production') {\n  Slider.displayName = 'Slider';\n}\nexport default Slider;","map":{"version":3,"names":["_objectSpread","_defineProperty","_toConsumableArray","_slicedToArray","_typeof","cls","useMergedState","isEqual","warning","React","SliderContext","Handles","useDrag","useOffset","Marks","Steps","Tracks","Slider","forwardRef","props","ref","_cls","_props$prefixCls","prefixCls","className","style","classNames","styles","_props$disabled","disabled","_props$keyboard","keyboard","autoFocus","onFocus","onBlur","_props$min","min","_props$max","max","_props$step","step","value","defaultValue","range","count","onChange","onBeforeChange","onAfterChange","onChangeComplete","_props$allowCross","allowCross","_props$pushable","pushable","draggableTrack","reverse","vertical","_props$included","included","startPoint","trackStyle","handleStyle","railStyle","dotStyle","activeDotStyle","marks","dots","handleRender","_props$tabIndex","tabIndex","ariaLabelForHandle","ariaLabelledByForHandle","ariaValueTextFormatterForHandle","handlesRef","useRef","containerRef","direction","useMemo","mergedMin","isFinite","mergedMax","mergedStep","mergedPush","markList","keys","Object","map","key","mark","markObj","Number","isValidElement","label","filter","_ref","sort","a","b","_useOffset","_useOffset2","formatValue","offsetValues","_useMergedState","_useMergedState2","mergedValue","setValue","rawValues","valueList","undefined","Array","isArray","_valueList","_valueList$","val0","returnValues","pointCount","slice","length","_returnValues","push","forEach","val","index","rawValuesRef","current","getTriggerValue","triggerValues","triggerChange","nextValues","cloneNextValues","finishChange","_useDrag","_useDrag2","draggingIndex","draggingValue","cacheValues","onStartDrag","changeToCloseValue","newValue","e","valueIndex","valueDist","dist","Math","abs","onSliderMouseDown","preventDefault","_containerRef$current","getBoundingClientRect","width","height","left","top","bottom","right","clientX","clientY","percent","nextValue","_React$useState","useState","_React$useState2","keyboardValue","setKeyboardValue","onHandleOffsetChange","offset","next","values","useEffect","indexOf","focus","mergedDraggableTrack","process","env","NODE_ENV","onStartMove","dragging","lastIndexOf","sortedCacheValues","_React$useMemo","_React$useMemo2","includedStart","includedEnd","useImperativeHandle","blur","_document","document","activeElement","contains","context","createElement","Provider","concat","onMouseDown","rail","activeStyle","onOffsetChange","onClick","displayName"],"sources":["/var/www/gavt/react-demo/node_modules/rc-slider/es/Slider.js"],"sourcesContent":["import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport cls from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport isEqual from \"rc-util/es/isEqual\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport SliderContext from \"./context\";\nimport Handles from \"./Handles\";\nimport useDrag from \"./hooks/useDrag\";\nimport useOffset from \"./hooks/useOffset\";\nimport Marks from \"./Marks\";\nimport Steps from \"./Steps\";\nimport Tracks from \"./Tracks\";\n\n/**\n * New:\n * - click mark to update range value\n * - handleRender\n * - Fix handle with count not correct\n * - Fix pushable not work in some case\n * - No more FindDOMNode\n * - Move all position related style into inline style\n * - Key: up is plus, down is minus\n * - fix Key with step = null not align with marks\n * - Change range should not trigger onChange\n * - keyboard support pushable\n */\n\nvar Slider = /*#__PURE__*/React.forwardRef(function (props, ref) {\n  var _cls;\n  var _props$prefixCls = props.prefixCls,\n    prefixCls = _props$prefixCls === void 0 ? 'rc-slider' : _props$prefixCls,\n    className = props.className,\n    style = props.style,\n    classNames = props.classNames,\n    styles = props.styles,\n    _props$disabled = props.disabled,\n    disabled = _props$disabled === void 0 ? false : _props$disabled,\n    _props$keyboard = props.keyboard,\n    keyboard = _props$keyboard === void 0 ? true : _props$keyboard,\n    autoFocus = props.autoFocus,\n    onFocus = props.onFocus,\n    onBlur = props.onBlur,\n    _props$min = props.min,\n    min = _props$min === void 0 ? 0 : _props$min,\n    _props$max = props.max,\n    max = _props$max === void 0 ? 100 : _props$max,\n    _props$step = props.step,\n    step = _props$step === void 0 ? 1 : _props$step,\n    value = props.value,\n    defaultValue = props.defaultValue,\n    range = props.range,\n    count = props.count,\n    onChange = props.onChange,\n    onBeforeChange = props.onBeforeChange,\n    onAfterChange = props.onAfterChange,\n    onChangeComplete = props.onChangeComplete,\n    _props$allowCross = props.allowCross,\n    allowCross = _props$allowCross === void 0 ? true : _props$allowCross,\n    _props$pushable = props.pushable,\n    pushable = _props$pushable === void 0 ? false : _props$pushable,\n    draggableTrack = props.draggableTrack,\n    reverse = props.reverse,\n    vertical = props.vertical,\n    _props$included = props.included,\n    included = _props$included === void 0 ? true : _props$included,\n    startPoint = props.startPoint,\n    trackStyle = props.trackStyle,\n    handleStyle = props.handleStyle,\n    railStyle = props.railStyle,\n    dotStyle = props.dotStyle,\n    activeDotStyle = props.activeDotStyle,\n    marks = props.marks,\n    dots = props.dots,\n    handleRender = props.handleRender,\n    _props$tabIndex = props.tabIndex,\n    tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,\n    ariaLabelForHandle = props.ariaLabelForHandle,\n    ariaLabelledByForHandle = props.ariaLabelledByForHandle,\n    ariaValueTextFormatterForHandle = props.ariaValueTextFormatterForHandle;\n  var handlesRef = React.useRef();\n  var containerRef = React.useRef();\n  var direction = React.useMemo(function () {\n    if (vertical) {\n      return reverse ? 'ttb' : 'btt';\n    }\n    return reverse ? 'rtl' : 'ltr';\n  }, [reverse, vertical]);\n\n  // ============================ Range =============================\n  var mergedMin = React.useMemo(function () {\n    return isFinite(min) ? min : 0;\n  }, [min]);\n  var mergedMax = React.useMemo(function () {\n    return isFinite(max) ? max : 100;\n  }, [max]);\n\n  // ============================= Step =============================\n  var mergedStep = React.useMemo(function () {\n    return step !== null && step <= 0 ? 1 : step;\n  }, [step]);\n\n  // ============================= Push =============================\n  var mergedPush = React.useMemo(function () {\n    if (typeof pushable === 'boolean') {\n      return pushable ? mergedStep : false;\n    }\n    return pushable >= 0 ? pushable : false;\n  }, [pushable, mergedStep]);\n\n  // ============================ Marks =============================\n  var markList = React.useMemo(function () {\n    var keys = Object.keys(marks || {});\n    return keys.map(function (key) {\n      var mark = marks[key];\n      var markObj = {\n        value: Number(key)\n      };\n      if (mark && _typeof(mark) === 'object' && ! /*#__PURE__*/React.isValidElement(mark) && ('label' in mark || 'style' in mark)) {\n        markObj.style = mark.style;\n        markObj.label = mark.label;\n      } else {\n        markObj.label = mark;\n      }\n      return markObj;\n    }).filter(function (_ref) {\n      var label = _ref.label;\n      return label || typeof label === 'number';\n    }).sort(function (a, b) {\n      return a.value - b.value;\n    });\n  }, [marks]);\n\n  // ============================ Format ============================\n  var _useOffset = useOffset(mergedMin, mergedMax, mergedStep, markList, allowCross, mergedPush),\n    _useOffset2 = _slicedToArray(_useOffset, 2),\n    formatValue = _useOffset2[0],\n    offsetValues = _useOffset2[1];\n\n  // ============================ Values ============================\n  var _useMergedState = useMergedState(defaultValue, {\n      value: value\n    }),\n    _useMergedState2 = _slicedToArray(_useMergedState, 2),\n    mergedValue = _useMergedState2[0],\n    setValue = _useMergedState2[1];\n  var rawValues = React.useMemo(function () {\n    var valueList = mergedValue === null || mergedValue === undefined ? [] : Array.isArray(mergedValue) ? mergedValue : [mergedValue];\n    var _valueList = _slicedToArray(valueList, 1),\n      _valueList$ = _valueList[0],\n      val0 = _valueList$ === void 0 ? mergedMin : _valueList$;\n    var returnValues = mergedValue === null ? [] : [val0];\n\n    // Format as range\n    if (range) {\n      returnValues = _toConsumableArray(valueList);\n\n      // When count provided or value is `undefined`, we fill values\n      if (count || mergedValue === undefined) {\n        var pointCount = count >= 0 ? count + 1 : 2;\n        returnValues = returnValues.slice(0, pointCount);\n\n        // Fill with count\n        while (returnValues.length < pointCount) {\n          var _returnValues;\n          returnValues.push((_returnValues = returnValues[returnValues.length - 1]) !== null && _returnValues !== void 0 ? _returnValues : mergedMin);\n        }\n      }\n      returnValues.sort(function (a, b) {\n        return a - b;\n      });\n    }\n\n    // Align in range\n    returnValues.forEach(function (val, index) {\n      returnValues[index] = formatValue(val);\n    });\n    return returnValues;\n  }, [mergedValue, range, mergedMin, count, formatValue]);\n\n  // =========================== onChange ===========================\n  var rawValuesRef = React.useRef(rawValues);\n  rawValuesRef.current = rawValues;\n  var getTriggerValue = function getTriggerValue(triggerValues) {\n    return range ? triggerValues : triggerValues[0];\n  };\n  var triggerChange = function triggerChange(nextValues) {\n    // Order first\n    var cloneNextValues = _toConsumableArray(nextValues).sort(function (a, b) {\n      return a - b;\n    });\n\n    // Trigger event if needed\n    if (onChange && !isEqual(cloneNextValues, rawValuesRef.current, true)) {\n      onChange(getTriggerValue(cloneNextValues));\n    }\n\n    // We set this later since it will re-render component immediately\n    setValue(cloneNextValues);\n  };\n  var finishChange = function finishChange() {\n    onAfterChange === null || onAfterChange === void 0 || onAfterChange(getTriggerValue(rawValuesRef.current));\n    warning(!onAfterChange, '[rc-slider] `onAfterChange` is deprecated. Please use `onChangeComplete` instead.');\n    onChangeComplete === null || onChangeComplete === void 0 || onChangeComplete(getTriggerValue(rawValuesRef.current));\n  };\n  var _useDrag = useDrag(containerRef, direction, rawValues, mergedMin, mergedMax, formatValue, triggerChange, finishChange, offsetValues),\n    _useDrag2 = _slicedToArray(_useDrag, 4),\n    draggingIndex = _useDrag2[0],\n    draggingValue = _useDrag2[1],\n    cacheValues = _useDrag2[2],\n    onStartDrag = _useDrag2[3];\n  var changeToCloseValue = function changeToCloseValue(newValue, e) {\n    if (!disabled) {\n      var valueIndex = 0;\n      var valueDist = mergedMax - mergedMin;\n      rawValues.forEach(function (val, index) {\n        var dist = Math.abs(newValue - val);\n        if (dist <= valueDist) {\n          valueDist = dist;\n          valueIndex = index;\n        }\n      });\n\n      // Create new values\n      var cloneNextValues = _toConsumableArray(rawValues);\n      cloneNextValues[valueIndex] = newValue;\n\n      // Fill value to match default 2\n      if (range && !rawValues.length && count === undefined) {\n        cloneNextValues.push(newValue);\n      }\n      onBeforeChange === null || onBeforeChange === void 0 || onBeforeChange(getTriggerValue(cloneNextValues));\n      triggerChange(cloneNextValues);\n      if (e) {\n        onStartDrag(e, valueIndex, cloneNextValues);\n      }\n    }\n  };\n\n  // ============================ Click =============================\n  var onSliderMouseDown = function onSliderMouseDown(e) {\n    e.preventDefault();\n    var _containerRef$current = containerRef.current.getBoundingClientRect(),\n      width = _containerRef$current.width,\n      height = _containerRef$current.height,\n      left = _containerRef$current.left,\n      top = _containerRef$current.top,\n      bottom = _containerRef$current.bottom,\n      right = _containerRef$current.right;\n    var clientX = e.clientX,\n      clientY = e.clientY;\n    var percent;\n    switch (direction) {\n      case 'btt':\n        percent = (bottom - clientY) / height;\n        break;\n      case 'ttb':\n        percent = (clientY - top) / height;\n        break;\n      case 'rtl':\n        percent = (right - clientX) / width;\n        break;\n      default:\n        percent = (clientX - left) / width;\n    }\n    var nextValue = mergedMin + percent * (mergedMax - mergedMin);\n    changeToCloseValue(formatValue(nextValue), e);\n  };\n\n  // =========================== Keyboard ===========================\n  var _React$useState = React.useState(null),\n    _React$useState2 = _slicedToArray(_React$useState, 2),\n    keyboardValue = _React$useState2[0],\n    setKeyboardValue = _React$useState2[1];\n  var onHandleOffsetChange = function onHandleOffsetChange(offset, valueIndex) {\n    if (!disabled) {\n      var next = offsetValues(rawValues, offset, valueIndex);\n      onBeforeChange === null || onBeforeChange === void 0 || onBeforeChange(getTriggerValue(rawValues));\n      triggerChange(next.values);\n      setKeyboardValue(next.value);\n    }\n  };\n  React.useEffect(function () {\n    if (keyboardValue !== null) {\n      var valueIndex = rawValues.indexOf(keyboardValue);\n      if (valueIndex >= 0) {\n        handlesRef.current.focus(valueIndex);\n      }\n    }\n    setKeyboardValue(null);\n  }, [keyboardValue]);\n\n  // ============================= Drag =============================\n  var mergedDraggableTrack = React.useMemo(function () {\n    if (draggableTrack && mergedStep === null) {\n      if (process.env.NODE_ENV !== 'production') {\n        warning(false, '`draggableTrack` is not supported when `step` is `null`.');\n      }\n      return false;\n    }\n    return draggableTrack;\n  }, [draggableTrack, mergedStep]);\n  var onStartMove = function onStartMove(e, valueIndex) {\n    onStartDrag(e, valueIndex);\n    onBeforeChange === null || onBeforeChange === void 0 || onBeforeChange(getTriggerValue(rawValuesRef.current));\n  };\n\n  // Auto focus for updated handle\n  var dragging = draggingIndex !== -1;\n  React.useEffect(function () {\n    if (!dragging) {\n      var valueIndex = rawValues.lastIndexOf(draggingValue);\n      handlesRef.current.focus(valueIndex);\n    }\n  }, [dragging]);\n\n  // =========================== Included ===========================\n  var sortedCacheValues = React.useMemo(function () {\n    return _toConsumableArray(cacheValues).sort(function (a, b) {\n      return a - b;\n    });\n  }, [cacheValues]);\n\n  // Provide a range values with included [min, max]\n  // Used for Track, Mark & Dot\n  var _React$useMemo = React.useMemo(function () {\n      if (!range) {\n        return [mergedMin, sortedCacheValues[0]];\n      }\n      return [sortedCacheValues[0], sortedCacheValues[sortedCacheValues.length - 1]];\n    }, [sortedCacheValues, range, mergedMin]),\n    _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n    includedStart = _React$useMemo2[0],\n    includedEnd = _React$useMemo2[1];\n\n  // ============================= Refs =============================\n  React.useImperativeHandle(ref, function () {\n    return {\n      focus: function focus() {\n        handlesRef.current.focus(0);\n      },\n      blur: function blur() {\n        var _document = document,\n          activeElement = _document.activeElement;\n        if (containerRef.current.contains(activeElement)) {\n          activeElement === null || activeElement === void 0 || activeElement.blur();\n        }\n      }\n    };\n  });\n\n  // ========================== Auto Focus ==========================\n  React.useEffect(function () {\n    if (autoFocus) {\n      handlesRef.current.focus(0);\n    }\n  }, []);\n\n  // =========================== Context ============================\n  var context = React.useMemo(function () {\n    return {\n      min: mergedMin,\n      max: mergedMax,\n      direction: direction,\n      disabled: disabled,\n      keyboard: keyboard,\n      step: mergedStep,\n      included: included,\n      includedStart: includedStart,\n      includedEnd: includedEnd,\n      range: range,\n      tabIndex: tabIndex,\n      ariaLabelForHandle: ariaLabelForHandle,\n      ariaLabelledByForHandle: ariaLabelledByForHandle,\n      ariaValueTextFormatterForHandle: ariaValueTextFormatterForHandle,\n      styles: styles || {},\n      classNames: classNames || {}\n    };\n  }, [mergedMin, mergedMax, direction, disabled, keyboard, mergedStep, included, includedStart, includedEnd, range, tabIndex, ariaLabelForHandle, ariaLabelledByForHandle, ariaValueTextFormatterForHandle, styles, classNames]);\n\n  // ============================ Render ============================\n  return /*#__PURE__*/React.createElement(SliderContext.Provider, {\n    value: context\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    ref: containerRef,\n    className: cls(prefixCls, className, (_cls = {}, _defineProperty(_cls, \"\".concat(prefixCls, \"-disabled\"), disabled), _defineProperty(_cls, \"\".concat(prefixCls, \"-vertical\"), vertical), _defineProperty(_cls, \"\".concat(prefixCls, \"-horizontal\"), !vertical), _defineProperty(_cls, \"\".concat(prefixCls, \"-with-marks\"), markList.length), _cls)),\n    style: style,\n    onMouseDown: onSliderMouseDown\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    className: cls(\"\".concat(prefixCls, \"-rail\"), classNames === null || classNames === void 0 ? void 0 : classNames.rail),\n    style: _objectSpread(_objectSpread({}, railStyle), styles === null || styles === void 0 ? void 0 : styles.rail)\n  }), /*#__PURE__*/React.createElement(Tracks, {\n    prefixCls: prefixCls,\n    style: trackStyle,\n    values: sortedCacheValues,\n    startPoint: startPoint,\n    onStartMove: mergedDraggableTrack ? onStartMove : null\n  }), /*#__PURE__*/React.createElement(Steps, {\n    prefixCls: prefixCls,\n    marks: markList,\n    dots: dots,\n    style: dotStyle,\n    activeStyle: activeDotStyle\n  }), /*#__PURE__*/React.createElement(Handles, {\n    ref: handlesRef,\n    prefixCls: prefixCls,\n    style: handleStyle,\n    values: cacheValues,\n    draggingIndex: draggingIndex,\n    onStartMove: onStartMove,\n    onOffsetChange: onHandleOffsetChange,\n    onFocus: onFocus,\n    onBlur: onBlur,\n    handleRender: handleRender,\n    onChangeComplete: finishChange\n  }), /*#__PURE__*/React.createElement(Marks, {\n    prefixCls: prefixCls,\n    marks: markList,\n    onClick: changeToCloseValue\n  })));\n});\nif (process.env.NODE_ENV !== 'production') {\n  Slider.displayName = 'Slider';\n}\nexport default Slider;"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}