{"version":3,"sources":["../../../../src/lib/helpers/getTimeParts.ts","../../../../src/lib/models/TimerModel.ts","../../src/index.ts","../../../../src/components/Timer/Timer.tsx","../../../../src/lib/helpers/now.ts","../../../../src/lib/models/TimerState.ts","../../hook/useTimer.ts","../node_modules/react-bootstrap/esm/helpers.js","../node_modules/react-bootstrap/esm/getInitialPopperStyles.js","../node_modules/react-bootstrap/esm/PopoverHeader.js","../node_modules/react-bootstrap/esm/PopoverBody.js","../node_modules/react-bootstrap/esm/Popover.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/rc-util/es/hooks/useEvent.js","../node_modules/rc-util/es/hooks/useLayoutEffect.js","../node_modules/rc-util/es/Dom/canUseDom.js","../node_modules/rc-util/es/hooks/useState.js","../node_modules/rc-util/es/hooks/useMergedState.js","../node_modules/rc-util/es/warning.js","../node_modules/rc-util/es/isEqual.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/rc-slider/es/util.js","../node_modules/rc-util/es/KeyCode.js","../node_modules/rc-slider/es/context.js","../node_modules/rc-slider/es/Handles/Handle.js","../node_modules/rc-slider/es/Handles/index.js","../node_modules/rc-slider/es/Marks/Mark.js","../node_modules/rc-slider/es/Marks/index.js","../node_modules/rc-slider/es/Steps/Dot.js","../node_modules/rc-slider/es/Steps/index.js","../node_modules/rc-slider/es/Tracks/Track.js","../node_modules/rc-slider/es/Tracks/index.js","../node_modules/rc-util/es/ref.js","../node_modules/rc-util/es/utils/set.js","../node_modules/rc-slider/es/hooks/useDrag.js","../node_modules/rc-slider/es/Slider.js","../node_modules/rc-slider/es/hooks/useOffset.js","../node_modules/rc-slider/es/index.js","../node_modules/@restart/hooks/esm/useTimeout.js","../node_modules/@restart/ui/esm/useRootClose.js","../node_modules/@restart/ui/esm/Overlay.js","../node_modules/react-bootstrap/esm/Tooltip.js","../node_modules/react-bootstrap/esm/Overlay.js","../node_modules/react-bootstrap/esm/useOverlayOffset.js","../node_modules/react-bootstrap/esm/OverlayTrigger.js"],"names":["exports","default","time","lastUnit","units","lastUnitIndex","findIndex","unit","dividers","dividersAcc","reduce","obj","index","Math","floor","ms","s","m","h","d","getTimeParts_1","__importDefault","require","now_1","TimerState_1","TimerModel","_a","initialTime","direction","timeToUpdate","checkpoints","onChange","internalTime","innerState","timerId","Object","defineProperty","prototype","getState","getTimeParts","computeTime","setTime","getTime","setLastUnit","isPlaying","pause","resume","setTimeToUpdate","interval","setDirection","setCheckpoints","start","setPlaying","setTimerInterval","callImmediately","isStopped","setPaused","clearInterval","stop","setStopped","reset","_this","window","setInterval","oldTime","updatedTime","map","callback","checkForForward","checkForBackward","currentInternalTime","delta","abs","Timer_1","useTimer_1","useTimer","react_1","TimerModel_1","TimerContext","createContext","formatValue","value","String","TimerValue","createElement","Timer","Consumer","props","Milliseconds","__assign","Seconds","Minutes","Hours","Days","_super","call","timer","setState","bind","state","timeParts","timerState","getTimerState","__extends","getUI","children","renderProps","Array","isArray","isValidElement","isReactComponent","Error","componentDidMount","startImmediately","componentWillUnmount","render","_b","_c","Provider","onStart","onStop","onPause","onReset","onResume","defaultProps","PureComponent","performance","now","Date","INITED","PLAYING","PAUSED","STOPPED","TimerState","onChangeStatus","setInited","isInited","isPaused","_d","_e","_f","_g","_h","_j","useState","timerValues","setTimerValues","useMemo","timerValue","useCallback","controls","useEffect","React","getOverlayDirection","placement","isRTL","bsDirection","getInitialPopperStyles","position","arguments","length","undefined","top","left","opacity","pointerEvents","PopoverHeader","_ref","ref","className","bsPrefix","as","Component","useBootstrapPrefix","_jsx","classNames","displayName","PopoverBody","Popover","style","body","arrowProps","hasDoneInitialMeasure","popper","show","decoratedBsPrefix","useIsRTL","primaryPlacement","split","computedStyle","strategy","_jsxs","role","concat","assign","Header","Body","POPPER_OFFSET","_arrayLikeToArray","r","a","e","n","_iterableToArray","Symbol","iterator","from","_unsupportedIterableToArray","t","toString","slice","constructor","name","test","_toConsumableArray","TypeError","_arrayWithHoles","_nonIterableRest","_slicedToArray","l","i","u","f","o","next","done","push","useEvent","fnRef","current","memoFn","_fnRef$current","_len","args","_key","apply","useInternalLayoutEffect","document","useLayoutEffect","deps","firstMountRef","useLayoutUpdateEffect","firstMount","useSafeState","defaultValue","destroyRef","_React$useState2","setValue","updater","ignoreDestroy","hasValue","warned","preWarningFns","warning","valid","message","note","method","warningOnce","preMessage","fn","resetWarned","noteOnce","isEqual","obj1","obj2","shallow","refSet","Set","deepEqual","b","level","circular","has","add","newLevel","_typeof","keys","every","key","_objectWithoutProperties","objectWithoutPropertiesLoose","getOwnPropertySymbols","includes","propertyIsEnumerable","getOffset","min","max","getDirectionStyle","offset","positionStyle","right","transform","bottom","getIndex","KeyCode","MAC_ENTER","BACKSPACE","TAB","NUM_CENTER","ENTER","SHIFT","CTRL","ALT","PAUSE","CAPS_LOCK","ESC","SPACE","PAGE_UP","PAGE_DOWN","END","HOME","LEFT","UP","RIGHT","DOWN","PRINT_SCREEN","INSERT","DELETE","ZERO","ONE","TWO","THREE","FOUR","FIVE","SIX","SEVEN","EIGHT","NINE","QUESTION_MARK","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","META","WIN_KEY_RIGHT","CONTEXT_MENU","NUM_ZERO","NUM_ONE","NUM_TWO","NUM_THREE","NUM_FOUR","NUM_FIVE","NUM_SIX","NUM_SEVEN","NUM_EIGHT","NUM_NINE","NUM_MULTIPLY","NUM_PLUS","NUM_MINUS","NUM_PERIOD","NUM_DIVISION","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","NUMLOCK","SEMICOLON","DASH","EQUALS","COMMA","PERIOD","SLASH","APOSTROPHE","SINGLE_QUOTE","OPEN_SQUARE_BRACKET","BACKSLASH","CLOSE_SQUARE_BRACKET","WIN_KEY","MAC_FF_META","WIN_IME","isTextModifyingKeyEvent","keyCode","altKey","ctrlKey","metaKey","isCharacterKey","navigator","userAgent","indexOf","SliderContext","step","includedStart","includedEnd","tabIndex","keyboard","styles","_excluded","Handle","_getIndex","prefixCls","valueIndex","onStartMove","dragging","onOffsetChange","onChangeComplete","onFocus","onMouseEnter","restProps","_React$useContext","disabled","range","ariaLabelForHandle","ariaLabelledByForHandle","ariaValueTextFormatterForHandle","handlePrefixCls","onInternalStartMove","divProps","onMouseDown","onTouchStart","onKeyDown","which","preventDefault","onKeyUp","handleNode","_extends","cls","_defineProperty","handle","_objectSpread","Handles","values","handleRender","activeHandleRender","draggingIndex","handlesRef","focus","_handlesRef$current$i","activeIndex","setActiveIndex","handleProps","node","Mark","_onClick","onClick","included","textCls","stopPropagation","Marks","marks","markPrefixCls","label","Dot","activeStyle","dotClassName","active","mergedStyle","Steps","dots","stepDots","dotSet","forEach","mark","dotValue","Track","end","replaceCls","trackPrefixCls","offsetStart","offsetEnd","width","height","track","Tracks","startPoint","trackList","startValue","endValue","list","tracksNode","tracks","isReactElement","isFragment","Number","version","Reflect","ownKeys","getPosition","touches","pageX","pageY","useDrag","containerRef","rawValues","triggerChange","finishChange","offsetValues","draggingValue","setDraggingValue","_React$useState4","setDraggingIndex","_React$useState6","cacheValues","setCacheValues","_React$useState8","originValues","setOriginValues","mouseMoveEventRef","mouseUpEventRef","removeEventListener","flushValues","nextValues","nextValue","some","val","updateCacheValue","offsetPercent","maxStartOffset","maxEndOffset","formatStartValue","cloneCacheValues","offsetDist","cloneValues","returnValues","sourceValues","sort","targetValues","startValues","initialValues","originValue","_getPosition","startX","startY","onMouseMove","event","offSetPercent","_getPosition2","moveX","moveY","offsetX","offsetY","_containerRef$current","getBoundingClientRect","onMouseUp","addEventListener","Slider","_props$prefixCls","_props$disabled","_props$keyboard","autoFocus","onBlur","_props$min","_props$max","_props$step","count","onBeforeChange","onAfterChange","_props$allowCross","allowCross","_props$pushable","pushable","draggableTrack","reverse","vertical","_props$included","trackStyle","handleStyle","railStyle","dotStyle","activeDotStyle","_props$tabIndex","mergedMin","isFinite","mergedMax","mergedStep","mergedPush","markList","markObj","filter","_useOffset","formatRangeValue","formatStepValue","stepValue","round","getDecimal","num","maxDecimal","fixedValue","toFixed","formatNextValue","alignValues","closeValue","closeDist","alignValue","dist","offsetValue","mode","targetDistValue","potentialValues","sign","compareValue","valueDist","potentialValue","offsetChangedValue","changed","needPush","pushNum","_offsetChangedValue","_i","_changed","_offsetChangedValue2","_i2","_changed2","_offsetChangedValue3","_i3","_changed3","_offsetChangedValue4","useOffset","_useOffset2","_useMergedState","defaultStateValue","option","postState","_useState2","innerValue","setInnerValue","mergedValue","postMergedValue","onChangeFn","_useState4","prevValue","setPrevValue","prev","useMergedState","_useMergedState2","valueList","_valueList$","pointCount","_returnValues","rawValuesRef","getTriggerValue","triggerValues","cloneNextValues","finishValue","_useDrag2","onStartDrag","changeToCloseValue","newValue","_document$activeEleme","_document$activeEleme2","activeElement","blur","keyboardValue","setKeyboardValue","mergedDraggableTrack","lastIndexOf","sortedCacheValues","_React$useMemo2","_containerRef$current2","contains","context","percent","clientX","clientY","rail","MAX_DELAY_MS","setChainedTimeout","handleRef","timeoutAtMs","delayMs","setTimeout","useTimeout","isMounted","useMounted","useRef","useWillUnmount","clearTimeout","clear","set","noop","useRootClose","onRootClose","clickTrigger","onClose","useClickOutside","handleKeyUp","useEventCallback","isEscKey","doc","ownerDocument","getRefTarget","currentEvent","defaultView","removeKeyupListener","listen","Overlay","outerRef","flip","containerPadding","popperConfig","transition","Transition","runTransition","rootElement","attachRef","useCallbackRef","arrowElement","attachArrowRef","mergedRef","useMergedRefs","container","useWaitForDOMRef","target","exited","setExited","usePopper","mergeOptionsWithPopperConfig","enableEvents","mountOverlay","onHide","rootClose","rootCloseDisabled","rootCloseEvent","onExit","onExiting","onEnter","onEntering","onEntered","child","attributes","arrow","renderTransition","in","appear","mountOnEnter","unmountOnExit","onExited","ReactDOM","createPortal","Tooltip","TOOLTIP_OFFSET","overlay","Fade","outerShow","outerProps","popperRef","firstRenderedState","setFirstRenderedState","modifiers","customOffset","overlayRef","popoverClass","tooltipClass","options","hasClass","useOverlayOffset","actualTransition","handleFirstUpdate","onFirstUpdate","useIsomorphicEffect","scheduleUpdate","BaseOverlay","overlayProps","_ref2","popperObj","_popperObj$state","aRef","__wrapped","safeFindDOMNode","wrapRefs","updatedPlacement","update","outOfBoundaries","modifiersData","hide","isReferenceHidden","handleMouseOverOut","handler","relatedNative","currentTarget","related","relatedTarget","nativeEvent","PropTypes","oneOf","OverlayTrigger","trigger","propsShow","defaultShow","onToggle","delay","propsDelay","triggerNodeRef","timeout","hoverStateRef","setShow","useUncontrolledProp","normalizeDelay","only","handleShow","handleHide","handleFocus","handleBlur","handleClick","handleMouseOver","handleMouseOut","_len2","_key2","triggers","triggerProps","onMouseOver","onMouseOut","_Fragment","cloneElement"],"mappings":"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","file":"static/js/13.b060b43a.chunk.js","sourcesContent":[null,null,null,null,null,null,null,"import * as React from 'react';\nexport class BsPrefixComponent extends React.Component {}\n\n// Need to use this instead of typeof Component to get proper type checking.\n\nexport function getOverlayDirection(placement, isRTL) {\n let bsDirection = placement;\n if (placement === 'left') {\n bsDirection = isRTL ? 'end' : 'start';\n } else if (placement === 'right') {\n bsDirection = isRTL ? 'start' : 'end';\n }\n return bsDirection;\n}","export default function getInitialPopperStyles(position = 'absolute') {\n return {\n position,\n top: '0',\n left: '0',\n opacity: '0',\n pointerEvents: 'none'\n };\n}","\"use client\";\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst PopoverHeader = /*#__PURE__*/React.forwardRef(({\n className,\n bsPrefix,\n as: Component = 'div',\n ...props\n}, ref) => {\n bsPrefix = useBootstrapPrefix(bsPrefix, 'popover-header');\n return /*#__PURE__*/_jsx(Component, {\n ref: ref,\n className: classNames(className, bsPrefix),\n ...props\n });\n});\nPopoverHeader.displayName = 'PopoverHeader';\nexport default PopoverHeader;","\"use client\";\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst PopoverBody = /*#__PURE__*/React.forwardRef(({\n className,\n bsPrefix,\n as: Component = 'div',\n ...props\n}, ref) => {\n bsPrefix = useBootstrapPrefix(bsPrefix, 'popover-body');\n return /*#__PURE__*/_jsx(Component, {\n ref: ref,\n className: classNames(className, bsPrefix),\n ...props\n });\n});\nPopoverBody.displayName = 'PopoverBody';\nexport default PopoverBody;","\"use client\";\n\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { useBootstrapPrefix, useIsRTL } from './ThemeProvider';\nimport PopoverHeader from './PopoverHeader';\nimport PopoverBody from './PopoverBody';\nimport { getOverlayDirection } from './helpers';\nimport getInitialPopperStyles from './getInitialPopperStyles';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst Popover = /*#__PURE__*/React.forwardRef(({\n bsPrefix,\n placement = 'right',\n className,\n style,\n children,\n body,\n arrowProps,\n hasDoneInitialMeasure,\n popper,\n show,\n ...props\n}, ref) => {\n const decoratedBsPrefix = useBootstrapPrefix(bsPrefix, 'popover');\n const isRTL = useIsRTL();\n const [primaryPlacement] = (placement == null ? void 0 : placement.split('-')) || [];\n const bsDirection = getOverlayDirection(primaryPlacement, isRTL);\n let computedStyle = style;\n if (show && !hasDoneInitialMeasure) {\n computedStyle = {\n ...style,\n ...getInitialPopperStyles(popper == null ? void 0 : popper.strategy)\n };\n }\n return /*#__PURE__*/_jsxs(\"div\", {\n ref: ref,\n role: \"tooltip\",\n style: computedStyle,\n \"x-placement\": primaryPlacement,\n className: classNames(className, decoratedBsPrefix, primaryPlacement && `bs-popover-${bsDirection}`),\n ...props,\n children: [/*#__PURE__*/_jsx(\"div\", {\n className: \"popover-arrow\",\n ...arrowProps\n }), body ? /*#__PURE__*/_jsx(PopoverBody, {\n children: children\n }) : children]\n });\n});\nexport default Object.assign(Popover, {\n Header: PopoverHeader,\n Body: PopoverBody,\n // Default popover offset.\n // https://github.com/twbs/bootstrap/blob/5c32767e0e0dbac2d934bcdee03719a65d3f1187/js/src/popover.js#L28\n POPPER_OFFSET: [0, 8]\n});","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","function _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nexport { _arrayWithHoles as default };","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableRest as default };","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nfunction _slicedToArray(r, e) {\n return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();\n}\nexport { _slicedToArray as default };","function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nexport { _iterableToArrayLimit as default };","import * as React from 'react';\nexport default function useEvent(callback) {\n var fnRef = React.useRef();\n fnRef.current = callback;\n var memoFn = React.useCallback(function () {\n var _fnRef$current;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return (_fnRef$current = fnRef.current) === null || _fnRef$current === void 0 ? void 0 : _fnRef$current.call.apply(_fnRef$current, [fnRef].concat(args));\n }, []);\n return memoFn;\n}","import * as React from 'react';\nimport canUseDom from \"../Dom/canUseDom\";\n\n/**\n * Wrap `React.useLayoutEffect` which will not throw warning message in test env\n */\nvar useInternalLayoutEffect = process.env.NODE_ENV !== 'test' && canUseDom() ? React.useLayoutEffect : React.useEffect;\nvar useLayoutEffect = function useLayoutEffect(callback, deps) {\n var firstMountRef = React.useRef(true);\n useInternalLayoutEffect(function () {\n return callback(firstMountRef.current);\n }, deps);\n\n // We tell react that first mount has passed\n useInternalLayoutEffect(function () {\n firstMountRef.current = false;\n return function () {\n firstMountRef.current = true;\n };\n }, []);\n};\nexport var useLayoutUpdateEffect = function useLayoutUpdateEffect(callback, deps) {\n useLayoutEffect(function (firstMount) {\n if (!firstMount) {\n return callback();\n }\n }, deps);\n};\nexport default useLayoutEffect;","export default function canUseDom() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\n/**\n * Same as React.useState but `setState` accept `ignoreDestroy` param to not to setState after destroyed.\n * We do not make this auto is to avoid real memory leak.\n * Developer should confirm it's safe to ignore themselves.\n */\nexport default function useSafeState(defaultValue) {\n var destroyRef = React.useRef(false);\n var _React$useState = React.useState(defaultValue),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n value = _React$useState2[0],\n setValue = _React$useState2[1];\n React.useEffect(function () {\n destroyRef.current = false;\n return function () {\n destroyRef.current = true;\n };\n }, []);\n function safeSetState(updater, ignoreDestroy) {\n if (ignoreDestroy && destroyRef.current) {\n return;\n }\n setValue(updater);\n }\n return [value, safeSetState];\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport useEvent from \"./useEvent\";\nimport { useLayoutUpdateEffect } from \"./useLayoutEffect\";\nimport useState from \"./useState\";\n/** We only think `undefined` is empty */\nfunction hasValue(value) {\n return value !== undefined;\n}\n\n/**\n * Similar to `useState` but will use props value if provided.\n * Note that internal use rc-util `useState` hook.\n */\nexport default function useMergedState(defaultStateValue, option) {\n var _ref = option || {},\n defaultValue = _ref.defaultValue,\n value = _ref.value,\n onChange = _ref.onChange,\n postState = _ref.postState;\n\n // ======================= Init =======================\n var _useState = useState(function () {\n if (hasValue(value)) {\n return value;\n } else if (hasValue(defaultValue)) {\n return typeof defaultValue === 'function' ? defaultValue() : defaultValue;\n } else {\n return typeof defaultStateValue === 'function' ? defaultStateValue() : defaultStateValue;\n }\n }),\n _useState2 = _slicedToArray(_useState, 2),\n innerValue = _useState2[0],\n setInnerValue = _useState2[1];\n var mergedValue = value !== undefined ? value : innerValue;\n var postMergedValue = postState ? postState(mergedValue) : mergedValue;\n\n // ====================== Change ======================\n var onChangeFn = useEvent(onChange);\n var _useState3 = useState([mergedValue]),\n _useState4 = _slicedToArray(_useState3, 2),\n prevValue = _useState4[0],\n setPrevValue = _useState4[1];\n useLayoutUpdateEffect(function () {\n var prev = prevValue[0];\n if (innerValue !== prev) {\n onChangeFn(innerValue, prev);\n }\n }, [prevValue]);\n\n // Sync value back to `undefined` when it from control to un-control\n useLayoutUpdateEffect(function () {\n if (!hasValue(value)) {\n setInnerValue(value);\n }\n }, [value]);\n\n // ====================== Update ======================\n var triggerChange = useEvent(function (updater, ignoreDestroy) {\n setInnerValue(updater, ignoreDestroy);\n setPrevValue([mergedValue], ignoreDestroy);\n });\n return [postMergedValue, triggerChange];\n}","/* eslint-disable no-console */\nvar warned = {};\nvar preWarningFns = [];\n\n/**\n * Pre warning enable you to parse content before console.error.\n * Modify to null will prevent warning.\n */\nexport var preMessage = function preMessage(fn) {\n preWarningFns.push(fn);\n};\n\n/**\n * Warning if condition not match.\n * @param valid Condition\n * @param message Warning message\n * @example\n * ```js\n * warning(false, 'some error'); // print some error\n * warning(true, 'some error'); // print nothing\n * warning(1 === 2, 'some error'); // print some error\n * ```\n */\nexport function warning(valid, message) {\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n var finalMessage = preWarningFns.reduce(function (msg, preMessageFn) {\n return preMessageFn(msg !== null && msg !== void 0 ? msg : '', 'warning');\n }, message);\n if (finalMessage) {\n console.error(\"Warning: \".concat(finalMessage));\n }\n }\n}\n\n/** @see Similar to {@link warning} */\nexport function note(valid, message) {\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n var finalMessage = preWarningFns.reduce(function (msg, preMessageFn) {\n return preMessageFn(msg !== null && msg !== void 0 ? msg : '', 'note');\n }, message);\n if (finalMessage) {\n console.warn(\"Note: \".concat(finalMessage));\n }\n }\n}\nexport function resetWarned() {\n warned = {};\n}\nexport function call(method, valid, message) {\n if (!valid && !warned[message]) {\n method(false, message);\n warned[message] = true;\n }\n}\n\n/** @see Same as {@link warning}, but only warn once for the same message */\nexport function warningOnce(valid, message) {\n call(warning, valid, message);\n}\n\n/** @see Same as {@link warning}, but only warn once for the same message */\nexport function noteOnce(valid, message) {\n call(note, valid, message);\n}\nwarningOnce.preMessage = preMessage;\nwarningOnce.resetWarned = resetWarned;\nwarningOnce.noteOnce = noteOnce;\nexport default warningOnce;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport warning from \"./warning\";\n\n/**\n * Deeply compares two object literals.\n * @param obj1 object 1\n * @param obj2 object 2\n * @param shallow shallow compare\n * @returns\n */\nfunction isEqual(obj1, obj2) {\n var shallow = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n // https://github.com/mapbox/mapbox-gl-js/pull/5979/files#diff-fde7145050c47cc3a306856efd5f9c3016e86e859de9afbd02c879be5067e58f\n var refSet = new Set();\n function deepEqual(a, b) {\n var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;\n var circular = refSet.has(a);\n warning(!circular, 'Warning: There may be circular references');\n if (circular) {\n return false;\n }\n if (a === b) {\n return true;\n }\n if (shallow && level > 1) {\n return false;\n }\n refSet.add(a);\n var newLevel = level + 1;\n if (Array.isArray(a)) {\n if (!Array.isArray(b) || a.length !== b.length) {\n return false;\n }\n for (var i = 0; i < a.length; i++) {\n if (!deepEqual(a[i], b[i], newLevel)) {\n return false;\n }\n }\n return true;\n }\n if (a && b && _typeof(a) === 'object' && _typeof(b) === 'object') {\n var keys = Object.keys(a);\n if (keys.length !== Object.keys(b).length) {\n return false;\n }\n return keys.every(function (key) {\n return deepEqual(a[key], b[key], newLevel);\n });\n }\n // other\n return false;\n }\n return deepEqual(obj1, obj2);\n}\nexport default isEqual;","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nexport { _objectWithoutProperties as default };","export function getOffset(value, min, max) {\n return (value - min) / (max - min);\n}\nexport function getDirectionStyle(direction, value, min, max) {\n var offset = getOffset(value, min, max);\n var positionStyle = {};\n switch (direction) {\n case 'rtl':\n positionStyle.right = \"\".concat(offset * 100, \"%\");\n positionStyle.transform = 'translateX(50%)';\n break;\n case 'btt':\n positionStyle.bottom = \"\".concat(offset * 100, \"%\");\n positionStyle.transform = 'translateY(50%)';\n break;\n case 'ttb':\n positionStyle.top = \"\".concat(offset * 100, \"%\");\n positionStyle.transform = 'translateY(-50%)';\n break;\n default:\n positionStyle.left = \"\".concat(offset * 100, \"%\");\n positionStyle.transform = 'translateX(-50%)';\n break;\n }\n return positionStyle;\n}\n\n/** Return index value if is list or return value directly */\nexport function getIndex(value, index) {\n return Array.isArray(value) ? value[index] : value;\n}","/**\n * @ignore\n * some key-codes definition and utils from closure-library\n * @author yiminghe@gmail.com\n */\n\nvar KeyCode = {\n /**\n * MAC_ENTER\n */\n MAC_ENTER: 3,\n /**\n * BACKSPACE\n */\n BACKSPACE: 8,\n /**\n * TAB\n */\n TAB: 9,\n /**\n * NUMLOCK on FF/Safari Mac\n */\n NUM_CENTER: 12,\n // NUMLOCK on FF/Safari Mac\n /**\n * ENTER\n */\n ENTER: 13,\n /**\n * SHIFT\n */\n SHIFT: 16,\n /**\n * CTRL\n */\n CTRL: 17,\n /**\n * ALT\n */\n ALT: 18,\n /**\n * PAUSE\n */\n PAUSE: 19,\n /**\n * CAPS_LOCK\n */\n CAPS_LOCK: 20,\n /**\n * ESC\n */\n ESC: 27,\n /**\n * SPACE\n */\n SPACE: 32,\n /**\n * PAGE_UP\n */\n PAGE_UP: 33,\n // also NUM_NORTH_EAST\n /**\n * PAGE_DOWN\n */\n PAGE_DOWN: 34,\n // also NUM_SOUTH_EAST\n /**\n * END\n */\n END: 35,\n // also NUM_SOUTH_WEST\n /**\n * HOME\n */\n HOME: 36,\n // also NUM_NORTH_WEST\n /**\n * LEFT\n */\n LEFT: 37,\n // also NUM_WEST\n /**\n * UP\n */\n UP: 38,\n // also NUM_NORTH\n /**\n * RIGHT\n */\n RIGHT: 39,\n // also NUM_EAST\n /**\n * DOWN\n */\n DOWN: 40,\n // also NUM_SOUTH\n /**\n * PRINT_SCREEN\n */\n PRINT_SCREEN: 44,\n /**\n * INSERT\n */\n INSERT: 45,\n // also NUM_INSERT\n /**\n * DELETE\n */\n DELETE: 46,\n // also NUM_DELETE\n /**\n * ZERO\n */\n ZERO: 48,\n /**\n * ONE\n */\n ONE: 49,\n /**\n * TWO\n */\n TWO: 50,\n /**\n * THREE\n */\n THREE: 51,\n /**\n * FOUR\n */\n FOUR: 52,\n /**\n * FIVE\n */\n FIVE: 53,\n /**\n * SIX\n */\n SIX: 54,\n /**\n * SEVEN\n */\n SEVEN: 55,\n /**\n * EIGHT\n */\n EIGHT: 56,\n /**\n * NINE\n */\n NINE: 57,\n /**\n * QUESTION_MARK\n */\n QUESTION_MARK: 63,\n // needs localization\n /**\n * A\n */\n A: 65,\n /**\n * B\n */\n B: 66,\n /**\n * C\n */\n C: 67,\n /**\n * D\n */\n D: 68,\n /**\n * E\n */\n E: 69,\n /**\n * F\n */\n F: 70,\n /**\n * G\n */\n G: 71,\n /**\n * H\n */\n H: 72,\n /**\n * I\n */\n I: 73,\n /**\n * J\n */\n J: 74,\n /**\n * K\n */\n K: 75,\n /**\n * L\n */\n L: 76,\n /**\n * M\n */\n M: 77,\n /**\n * N\n */\n N: 78,\n /**\n * O\n */\n O: 79,\n /**\n * P\n */\n P: 80,\n /**\n * Q\n */\n Q: 81,\n /**\n * R\n */\n R: 82,\n /**\n * S\n */\n S: 83,\n /**\n * T\n */\n T: 84,\n /**\n * U\n */\n U: 85,\n /**\n * V\n */\n V: 86,\n /**\n * W\n */\n W: 87,\n /**\n * X\n */\n X: 88,\n /**\n * Y\n */\n Y: 89,\n /**\n * Z\n */\n Z: 90,\n /**\n * META\n */\n META: 91,\n // WIN_KEY_LEFT\n /**\n * WIN_KEY_RIGHT\n */\n WIN_KEY_RIGHT: 92,\n /**\n * CONTEXT_MENU\n */\n CONTEXT_MENU: 93,\n /**\n * NUM_ZERO\n */\n NUM_ZERO: 96,\n /**\n * NUM_ONE\n */\n NUM_ONE: 97,\n /**\n * NUM_TWO\n */\n NUM_TWO: 98,\n /**\n * NUM_THREE\n */\n NUM_THREE: 99,\n /**\n * NUM_FOUR\n */\n NUM_FOUR: 100,\n /**\n * NUM_FIVE\n */\n NUM_FIVE: 101,\n /**\n * NUM_SIX\n */\n NUM_SIX: 102,\n /**\n * NUM_SEVEN\n */\n NUM_SEVEN: 103,\n /**\n * NUM_EIGHT\n */\n NUM_EIGHT: 104,\n /**\n * NUM_NINE\n */\n NUM_NINE: 105,\n /**\n * NUM_MULTIPLY\n */\n NUM_MULTIPLY: 106,\n /**\n * NUM_PLUS\n */\n NUM_PLUS: 107,\n /**\n * NUM_MINUS\n */\n NUM_MINUS: 109,\n /**\n * NUM_PERIOD\n */\n NUM_PERIOD: 110,\n /**\n * NUM_DIVISION\n */\n NUM_DIVISION: 111,\n /**\n * F1\n */\n F1: 112,\n /**\n * F2\n */\n F2: 113,\n /**\n * F3\n */\n F3: 114,\n /**\n * F4\n */\n F4: 115,\n /**\n * F5\n */\n F5: 116,\n /**\n * F6\n */\n F6: 117,\n /**\n * F7\n */\n F7: 118,\n /**\n * F8\n */\n F8: 119,\n /**\n * F9\n */\n F9: 120,\n /**\n * F10\n */\n F10: 121,\n /**\n * F11\n */\n F11: 122,\n /**\n * F12\n */\n F12: 123,\n /**\n * NUMLOCK\n */\n NUMLOCK: 144,\n /**\n * SEMICOLON\n */\n SEMICOLON: 186,\n // needs localization\n /**\n * DASH\n */\n DASH: 189,\n // needs localization\n /**\n * EQUALS\n */\n EQUALS: 187,\n // needs localization\n /**\n * COMMA\n */\n COMMA: 188,\n // needs localization\n /**\n * PERIOD\n */\n PERIOD: 190,\n // needs localization\n /**\n * SLASH\n */\n SLASH: 191,\n // needs localization\n /**\n * APOSTROPHE\n */\n APOSTROPHE: 192,\n // needs localization\n /**\n * SINGLE_QUOTE\n */\n SINGLE_QUOTE: 222,\n // needs localization\n /**\n * OPEN_SQUARE_BRACKET\n */\n OPEN_SQUARE_BRACKET: 219,\n // needs localization\n /**\n * BACKSLASH\n */\n BACKSLASH: 220,\n // needs localization\n /**\n * CLOSE_SQUARE_BRACKET\n */\n CLOSE_SQUARE_BRACKET: 221,\n // needs localization\n /**\n * WIN_KEY\n */\n WIN_KEY: 224,\n /**\n * MAC_FF_META\n */\n MAC_FF_META: 224,\n // Firefox (Gecko) fires this for the meta key instead of 91\n /**\n * WIN_IME\n */\n WIN_IME: 229,\n // ======================== Function ========================\n /**\n * whether text and modified key is entered at the same time.\n */\n isTextModifyingKeyEvent: function isTextModifyingKeyEvent(e) {\n var keyCode = e.keyCode;\n if (e.altKey && !e.ctrlKey || e.metaKey ||\n // Function keys don't generate text\n keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12) {\n return false;\n }\n\n // The following keys are quite harmless, even in combination with\n // CTRL, ALT or SHIFT.\n switch (keyCode) {\n case KeyCode.ALT:\n case KeyCode.CAPS_LOCK:\n case KeyCode.CONTEXT_MENU:\n case KeyCode.CTRL:\n case KeyCode.DOWN:\n case KeyCode.END:\n case KeyCode.ESC:\n case KeyCode.HOME:\n case KeyCode.INSERT:\n case KeyCode.LEFT:\n case KeyCode.MAC_FF_META:\n case KeyCode.META:\n case KeyCode.NUMLOCK:\n case KeyCode.NUM_CENTER:\n case KeyCode.PAGE_DOWN:\n case KeyCode.PAGE_UP:\n case KeyCode.PAUSE:\n case KeyCode.PRINT_SCREEN:\n case KeyCode.RIGHT:\n case KeyCode.SHIFT:\n case KeyCode.UP:\n case KeyCode.WIN_KEY:\n case KeyCode.WIN_KEY_RIGHT:\n return false;\n default:\n return true;\n }\n },\n /**\n * whether character is entered.\n */\n isCharacterKey: function isCharacterKey(keyCode) {\n if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) {\n return true;\n }\n if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) {\n return true;\n }\n if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) {\n return true;\n }\n\n // Safari sends zero key code for non-latin characters.\n if (window.navigator.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) {\n return true;\n }\n switch (keyCode) {\n case KeyCode.SPACE:\n case KeyCode.QUESTION_MARK:\n case KeyCode.NUM_PLUS:\n case KeyCode.NUM_MINUS:\n case KeyCode.NUM_PERIOD:\n case KeyCode.NUM_DIVISION:\n case KeyCode.SEMICOLON:\n case KeyCode.DASH:\n case KeyCode.EQUALS:\n case KeyCode.COMMA:\n case KeyCode.PERIOD:\n case KeyCode.SLASH:\n case KeyCode.APOSTROPHE:\n case KeyCode.SINGLE_QUOTE:\n case KeyCode.OPEN_SQUARE_BRACKET:\n case KeyCode.BACKSLASH:\n case KeyCode.CLOSE_SQUARE_BRACKET:\n return true;\n default:\n return false;\n }\n }\n};\nexport default KeyCode;","import * as React from 'react';\nvar SliderContext = /*#__PURE__*/React.createContext({\n min: 0,\n max: 0,\n direction: 'ltr',\n step: 1,\n includedStart: 0,\n includedEnd: 0,\n tabIndex: 0,\n keyboard: true,\n styles: {},\n classNames: {}\n});\nexport default SliderContext;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"value\", \"valueIndex\", \"onStartMove\", \"style\", \"render\", \"dragging\", \"onOffsetChange\", \"onChangeComplete\", \"onFocus\", \"onMouseEnter\"];\nimport cls from 'classnames';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport * as React from 'react';\nimport SliderContext from \"../context\";\nimport { getDirectionStyle, getIndex } from \"../util\";\nvar Handle = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n value = props.value,\n valueIndex = props.valueIndex,\n onStartMove = props.onStartMove,\n style = props.style,\n render = props.render,\n dragging = props.dragging,\n onOffsetChange = props.onOffsetChange,\n onChangeComplete = props.onChangeComplete,\n onFocus = props.onFocus,\n onMouseEnter = props.onMouseEnter,\n restProps = _objectWithoutProperties(props, _excluded);\n var _React$useContext = React.useContext(SliderContext),\n min = _React$useContext.min,\n max = _React$useContext.max,\n direction = _React$useContext.direction,\n disabled = _React$useContext.disabled,\n keyboard = _React$useContext.keyboard,\n range = _React$useContext.range,\n tabIndex = _React$useContext.tabIndex,\n ariaLabelForHandle = _React$useContext.ariaLabelForHandle,\n ariaLabelledByForHandle = _React$useContext.ariaLabelledByForHandle,\n ariaValueTextFormatterForHandle = _React$useContext.ariaValueTextFormatterForHandle,\n styles = _React$useContext.styles,\n classNames = _React$useContext.classNames;\n var handlePrefixCls = \"\".concat(prefixCls, \"-handle\");\n\n // ============================ Events ============================\n var onInternalStartMove = function onInternalStartMove(e) {\n if (!disabled) {\n onStartMove(e, valueIndex);\n }\n };\n var onInternalFocus = function onInternalFocus(e) {\n onFocus === null || onFocus === void 0 || onFocus(e, valueIndex);\n };\n var onInternalMouseEnter = function onInternalMouseEnter(e) {\n onMouseEnter(e, valueIndex);\n };\n\n // =========================== Keyboard ===========================\n var onKeyDown = function onKeyDown(e) {\n if (!disabled && keyboard) {\n var offset = null;\n\n // Change the value\n switch (e.which || e.keyCode) {\n case KeyCode.LEFT:\n offset = direction === 'ltr' || direction === 'btt' ? -1 : 1;\n break;\n case KeyCode.RIGHT:\n offset = direction === 'ltr' || direction === 'btt' ? 1 : -1;\n break;\n\n // Up is plus\n case KeyCode.UP:\n offset = direction !== 'ttb' ? 1 : -1;\n break;\n\n // Down is minus\n case KeyCode.DOWN:\n offset = direction !== 'ttb' ? -1 : 1;\n break;\n case KeyCode.HOME:\n offset = 'min';\n break;\n case KeyCode.END:\n offset = 'max';\n break;\n case KeyCode.PAGE_UP:\n offset = 2;\n break;\n case KeyCode.PAGE_DOWN:\n offset = -2;\n break;\n }\n if (offset !== null) {\n e.preventDefault();\n onOffsetChange(offset, valueIndex);\n }\n }\n };\n var handleKeyUp = function handleKeyUp(e) {\n switch (e.which || e.keyCode) {\n case KeyCode.LEFT:\n case KeyCode.RIGHT:\n case KeyCode.UP:\n case KeyCode.DOWN:\n case KeyCode.HOME:\n case KeyCode.END:\n case KeyCode.PAGE_UP:\n case KeyCode.PAGE_DOWN:\n onChangeComplete === null || onChangeComplete === void 0 || onChangeComplete();\n break;\n }\n };\n\n // ============================ Offset ============================\n var positionStyle = getDirectionStyle(direction, value, min, max);\n\n // ============================ Render ============================\n var divProps = {};\n if (valueIndex !== null) {\n var _getIndex;\n divProps = {\n tabIndex: disabled ? null : getIndex(tabIndex, valueIndex),\n role: 'slider',\n 'aria-valuemin': min,\n 'aria-valuemax': max,\n 'aria-valuenow': value,\n 'aria-disabled': disabled,\n 'aria-label': getIndex(ariaLabelForHandle, valueIndex),\n 'aria-labelledby': getIndex(ariaLabelledByForHandle, valueIndex),\n 'aria-valuetext': (_getIndex = getIndex(ariaValueTextFormatterForHandle, valueIndex)) === null || _getIndex === void 0 ? void 0 : _getIndex(value),\n 'aria-orientation': direction === 'ltr' || direction === 'rtl' ? 'horizontal' : 'vertical',\n onMouseDown: onInternalStartMove,\n onTouchStart: onInternalStartMove,\n onFocus: onInternalFocus,\n onMouseEnter: onInternalMouseEnter,\n onKeyDown: onKeyDown,\n onKeyUp: handleKeyUp\n };\n }\n var handleNode = /*#__PURE__*/React.createElement(\"div\", _extends({\n ref: ref,\n className: cls(handlePrefixCls, _defineProperty(_defineProperty({}, \"\".concat(handlePrefixCls, \"-\").concat(valueIndex + 1), valueIndex !== null && range), \"\".concat(handlePrefixCls, \"-dragging\"), dragging), classNames.handle),\n style: _objectSpread(_objectSpread(_objectSpread({}, positionStyle), style), styles.handle)\n }, divProps, restProps));\n\n // Customize\n if (render) {\n handleNode = render(handleNode, {\n index: valueIndex,\n prefixCls: prefixCls,\n value: value,\n dragging: dragging\n });\n }\n return handleNode;\n});\nif (process.env.NODE_ENV !== 'production') {\n Handle.displayName = 'Handle';\n}\nexport default Handle;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"style\", \"onStartMove\", \"onOffsetChange\", \"values\", \"handleRender\", \"activeHandleRender\", \"draggingIndex\", \"onFocus\"];\nimport * as React from 'react';\nimport { getIndex } from \"../util\";\nimport Handle from \"./Handle\";\nvar Handles = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n style = props.style,\n onStartMove = props.onStartMove,\n onOffsetChange = props.onOffsetChange,\n values = props.values,\n handleRender = props.handleRender,\n activeHandleRender = props.activeHandleRender,\n draggingIndex = props.draggingIndex,\n onFocus = props.onFocus,\n restProps = _objectWithoutProperties(props, _excluded);\n var handlesRef = React.useRef({});\n React.useImperativeHandle(ref, function () {\n return {\n focus: function focus(index) {\n var _handlesRef$current$i;\n (_handlesRef$current$i = handlesRef.current[index]) === null || _handlesRef$current$i === void 0 || _handlesRef$current$i.focus();\n }\n };\n });\n\n // =========================== Active ===========================\n var _React$useState = React.useState(-1),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n activeIndex = _React$useState2[0],\n setActiveIndex = _React$useState2[1];\n var onHandleFocus = function onHandleFocus(e, index) {\n setActiveIndex(index);\n onFocus === null || onFocus === void 0 || onFocus(e);\n };\n var onHandleMouseEnter = function onHandleMouseEnter(e, index) {\n setActiveIndex(index);\n };\n\n // =========================== Render ===========================\n // Handle Props\n var handleProps = _objectSpread({\n prefixCls: prefixCls,\n onStartMove: onStartMove,\n onOffsetChange: onOffsetChange,\n render: handleRender,\n onFocus: onHandleFocus,\n onMouseEnter: onHandleMouseEnter\n }, restProps);\n return /*#__PURE__*/React.createElement(React.Fragment, null, values.map(function (value, index) {\n return /*#__PURE__*/React.createElement(Handle, _extends({\n ref: function ref(node) {\n if (!node) {\n delete handlesRef.current[index];\n } else {\n handlesRef.current[index] = node;\n }\n },\n dragging: draggingIndex === index,\n style: getIndex(style, index),\n key: index,\n value: value,\n valueIndex: index\n }, handleProps));\n }), activeHandleRender && /*#__PURE__*/React.createElement(Handle, _extends({\n key: \"a11y\"\n }, handleProps, {\n value: values[activeIndex],\n valueIndex: null,\n dragging: draggingIndex !== -1,\n render: activeHandleRender,\n style: {\n pointerEvents: 'none'\n },\n tabIndex: null,\n \"aria-hidden\": true\n })));\n});\nif (process.env.NODE_ENV !== 'production') {\n Handles.displayName = 'Handles';\n}\nexport default Handles;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport SliderContext from \"../context\";\nimport { getDirectionStyle } from \"../util\";\nvar Mark = function Mark(props) {\n var prefixCls = props.prefixCls,\n style = props.style,\n children = props.children,\n value = props.value,\n _onClick = props.onClick;\n var _React$useContext = React.useContext(SliderContext),\n min = _React$useContext.min,\n max = _React$useContext.max,\n direction = _React$useContext.direction,\n includedStart = _React$useContext.includedStart,\n includedEnd = _React$useContext.includedEnd,\n included = _React$useContext.included;\n var textCls = \"\".concat(prefixCls, \"-text\");\n\n // ============================ Offset ============================\n var positionStyle = getDirectionStyle(direction, value, min, max);\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(textCls, _defineProperty({}, \"\".concat(textCls, \"-active\"), included && includedStart <= value && value <= includedEnd)),\n style: _objectSpread(_objectSpread({}, positionStyle), style),\n onMouseDown: function onMouseDown(e) {\n e.stopPropagation();\n },\n onClick: function onClick() {\n _onClick(value);\n }\n }, children);\n};\nexport default Mark;","import * as React from 'react';\nimport Mark from \"./Mark\";\nvar Marks = function Marks(props) {\n var prefixCls = props.prefixCls,\n marks = props.marks,\n onClick = props.onClick;\n var markPrefixCls = \"\".concat(prefixCls, \"-mark\");\n\n // Not render mark if empty\n if (!marks.length) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n className: markPrefixCls\n }, marks.map(function (_ref) {\n var value = _ref.value,\n style = _ref.style,\n label = _ref.label;\n return /*#__PURE__*/React.createElement(Mark, {\n key: value,\n prefixCls: markPrefixCls,\n style: style,\n value: value,\n onClick: onClick\n }, label);\n }));\n};\nexport default Marks;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport SliderContext from \"../context\";\nimport { getDirectionStyle } from \"../util\";\nvar Dot = function Dot(props) {\n var prefixCls = props.prefixCls,\n value = props.value,\n style = props.style,\n activeStyle = props.activeStyle;\n var _React$useContext = React.useContext(SliderContext),\n min = _React$useContext.min,\n max = _React$useContext.max,\n direction = _React$useContext.direction,\n included = _React$useContext.included,\n includedStart = _React$useContext.includedStart,\n includedEnd = _React$useContext.includedEnd;\n var dotClassName = \"\".concat(prefixCls, \"-dot\");\n var active = included && includedStart <= value && value <= includedEnd;\n\n // ============================ Offset ============================\n var mergedStyle = _objectSpread(_objectSpread({}, getDirectionStyle(direction, value, min, max)), typeof style === 'function' ? style(value) : style);\n if (active) {\n mergedStyle = _objectSpread(_objectSpread({}, mergedStyle), typeof activeStyle === 'function' ? activeStyle(value) : activeStyle);\n }\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(dotClassName, _defineProperty({}, \"\".concat(dotClassName, \"-active\"), active)),\n style: mergedStyle\n });\n};\nexport default Dot;","import * as React from 'react';\nimport SliderContext from \"../context\";\nimport Dot from \"./Dot\";\nvar Steps = function Steps(props) {\n var prefixCls = props.prefixCls,\n marks = props.marks,\n dots = props.dots,\n style = props.style,\n activeStyle = props.activeStyle;\n var _React$useContext = React.useContext(SliderContext),\n min = _React$useContext.min,\n max = _React$useContext.max,\n step = _React$useContext.step;\n var stepDots = React.useMemo(function () {\n var dotSet = new Set();\n\n // Add marks\n marks.forEach(function (mark) {\n dotSet.add(mark.value);\n });\n\n // Fill dots\n if (dots && step !== null) {\n var current = min;\n while (current <= max) {\n dotSet.add(current);\n current += step;\n }\n }\n return Array.from(dotSet);\n }, [min, max, step, dots, marks]);\n return /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-step\")\n }, stepDots.map(function (dotValue) {\n return /*#__PURE__*/React.createElement(Dot, {\n prefixCls: prefixCls,\n key: dotValue,\n value: dotValue,\n style: style,\n activeStyle: activeStyle\n });\n }));\n};\nexport default Steps;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport cls from 'classnames';\nimport * as React from 'react';\nimport SliderContext from \"../context\";\nimport { getOffset } from \"../util\";\nvar Track = function Track(props) {\n var prefixCls = props.prefixCls,\n style = props.style,\n start = props.start,\n end = props.end,\n index = props.index,\n onStartMove = props.onStartMove,\n replaceCls = props.replaceCls;\n var _React$useContext = React.useContext(SliderContext),\n direction = _React$useContext.direction,\n min = _React$useContext.min,\n max = _React$useContext.max,\n disabled = _React$useContext.disabled,\n range = _React$useContext.range,\n classNames = _React$useContext.classNames;\n var trackPrefixCls = \"\".concat(prefixCls, \"-track\");\n var offsetStart = getOffset(start, min, max);\n var offsetEnd = getOffset(end, min, max);\n\n // ============================ Events ============================\n var onInternalStartMove = function onInternalStartMove(e) {\n if (!disabled && onStartMove) {\n onStartMove(e, -1);\n }\n };\n\n // ============================ Render ============================\n var positionStyle = {};\n switch (direction) {\n case 'rtl':\n positionStyle.right = \"\".concat(offsetStart * 100, \"%\");\n positionStyle.width = \"\".concat(offsetEnd * 100 - offsetStart * 100, \"%\");\n break;\n case 'btt':\n positionStyle.bottom = \"\".concat(offsetStart * 100, \"%\");\n positionStyle.height = \"\".concat(offsetEnd * 100 - offsetStart * 100, \"%\");\n break;\n case 'ttb':\n positionStyle.top = \"\".concat(offsetStart * 100, \"%\");\n positionStyle.height = \"\".concat(offsetEnd * 100 - offsetStart * 100, \"%\");\n break;\n default:\n positionStyle.left = \"\".concat(offsetStart * 100, \"%\");\n positionStyle.width = \"\".concat(offsetEnd * 100 - offsetStart * 100, \"%\");\n }\n var className = replaceCls || cls(trackPrefixCls, _defineProperty(_defineProperty({}, \"\".concat(trackPrefixCls, \"-\").concat(index + 1), index !== null && range), \"\".concat(prefixCls, \"-track-draggable\"), onStartMove), classNames.track);\n return /*#__PURE__*/React.createElement(\"div\", {\n className: className,\n style: _objectSpread(_objectSpread({}, positionStyle), style),\n onMouseDown: onInternalStartMove,\n onTouchStart: onInternalStartMove\n });\n};\nexport default Track;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport cls from 'classnames';\nimport * as React from 'react';\nimport SliderContext from \"../context\";\nimport { getIndex } from \"../util\";\nimport Track from \"./Track\";\nvar Tracks = function Tracks(props) {\n var prefixCls = props.prefixCls,\n style = props.style,\n values = props.values,\n startPoint = props.startPoint,\n onStartMove = props.onStartMove;\n var _React$useContext = React.useContext(SliderContext),\n included = _React$useContext.included,\n range = _React$useContext.range,\n min = _React$useContext.min,\n styles = _React$useContext.styles,\n classNames = _React$useContext.classNames;\n\n // =========================== List ===========================\n var trackList = React.useMemo(function () {\n if (!range) {\n // null value do not have track\n if (values.length === 0) {\n return [];\n }\n var startValue = startPoint !== null && startPoint !== void 0 ? startPoint : min;\n var endValue = values[0];\n return [{\n start: Math.min(startValue, endValue),\n end: Math.max(startValue, endValue)\n }];\n }\n\n // Multiple\n var list = [];\n for (var i = 0; i < values.length - 1; i += 1) {\n list.push({\n start: values[i],\n end: values[i + 1]\n });\n }\n return list;\n }, [values, range, startPoint, min]);\n if (!included) {\n return null;\n }\n\n // ========================== Render ==========================\n var tracksNode = classNames.tracks || styles.tracks ? /*#__PURE__*/React.createElement(Track, {\n index: null,\n prefixCls: prefixCls,\n start: trackList[0].start,\n end: trackList[trackList.length - 1].end,\n replaceCls: cls(classNames.tracks, \"\".concat(prefixCls, \"-tracks\")),\n style: styles.tracks\n }) : null;\n return /*#__PURE__*/React.createElement(React.Fragment, null, tracksNode, trackList.map(function (_ref, index) {\n var start = _ref.start,\n end = _ref.end;\n return /*#__PURE__*/React.createElement(Track, {\n index: index,\n prefixCls: prefixCls,\n style: _objectSpread(_objectSpread({}, getIndex(style, index)), styles.track),\n start: start,\n end: end,\n key: index,\n onStartMove: onStartMove\n });\n }));\n};\nexport default Tracks;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport { isValidElement, version } from 'react';\nimport { ForwardRef, isFragment, isMemo } from 'react-is';\nimport useMemo from \"./hooks/useMemo\";\nexport var fillRef = function fillRef(ref, node) {\n if (typeof ref === 'function') {\n ref(node);\n } else if (_typeof(ref) === 'object' && ref && 'current' in ref) {\n ref.current = node;\n }\n};\n\n/**\n * Merge refs into one ref function to support ref passing.\n */\nexport var composeRef = function composeRef() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n var refList = refs.filter(Boolean);\n if (refList.length <= 1) {\n return refList[0];\n }\n return function (node) {\n refs.forEach(function (ref) {\n fillRef(ref, node);\n });\n };\n};\nexport var useComposeRef = function useComposeRef() {\n for (var _len2 = arguments.length, refs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n refs[_key2] = arguments[_key2];\n }\n return useMemo(function () {\n return composeRef.apply(void 0, refs);\n }, refs, function (prev, next) {\n return prev.length !== next.length || prev.every(function (ref, i) {\n return ref !== next[i];\n });\n });\n};\nexport var supportRef = function supportRef(nodeOrComponent) {\n var _type$prototype, _nodeOrComponent$prot;\n var type = isMemo(nodeOrComponent) ? nodeOrComponent.type.type : nodeOrComponent.type;\n\n // Function component node\n if (typeof type === 'function' && !((_type$prototype = type.prototype) !== null && _type$prototype !== void 0 && _type$prototype.render) && type.$$typeof !== ForwardRef) {\n return false;\n }\n\n // Class component\n if (typeof nodeOrComponent === 'function' && !((_nodeOrComponent$prot = nodeOrComponent.prototype) !== null && _nodeOrComponent$prot !== void 0 && _nodeOrComponent$prot.render) && nodeOrComponent.$$typeof !== ForwardRef) {\n return false;\n }\n return true;\n};\nfunction isReactElement(node) {\n return /*#__PURE__*/isValidElement(node) && !isFragment(node);\n}\nexport var supportNodeRef = function supportNodeRef(node) {\n return isReactElement(node) && supportRef(node);\n};\n\n/**\n * In React 19. `ref` is not a property from node.\n * But a property from `props.ref`.\n * To check if `props.ref` exist or fallback to `ref`.\n */\nexport var getNodeRef = Number(version.split('.')[0]) >= 19 ?\n// >= React 19\nfunction (node) {\n if (isReactElement(node)) {\n return node.props.ref;\n }\n return null;\n} :\n// < React 19\nfunction (node) {\n if (isReactElement(node)) {\n return node.ref;\n }\n return null;\n};","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _toArray from \"@babel/runtime/helpers/esm/toArray\";\nimport get from \"./get\";\nfunction internalSet(entity, paths, value, removeIfUndefined) {\n if (!paths.length) {\n return value;\n }\n var _paths = _toArray(paths),\n path = _paths[0],\n restPath = _paths.slice(1);\n var clone;\n if (!entity && typeof path === 'number') {\n clone = [];\n } else if (Array.isArray(entity)) {\n clone = _toConsumableArray(entity);\n } else {\n clone = _objectSpread({}, entity);\n }\n\n // Delete prop if `removeIfUndefined` and value is undefined\n if (removeIfUndefined && value === undefined && restPath.length === 1) {\n delete clone[path][restPath[0]];\n } else {\n clone[path] = internalSet(clone[path], restPath, value, removeIfUndefined);\n }\n return clone;\n}\nexport default function set(entity, paths, value) {\n var removeIfUndefined = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n // Do nothing if `removeIfUndefined` and parent object not exist\n if (paths.length && removeIfUndefined && value === undefined && !get(entity, paths.slice(0, -1))) {\n return entity;\n }\n return internalSet(entity, paths, value, removeIfUndefined);\n}\nfunction isObject(obj) {\n return _typeof(obj) === 'object' && obj !== null && Object.getPrototypeOf(obj) === Object.prototype;\n}\nfunction createEmpty(source) {\n return Array.isArray(source) ? [] : {};\n}\nvar keys = typeof Reflect === 'undefined' ? Object.keys : Reflect.ownKeys;\n\n/**\n * Merge objects which will create\n */\nexport function merge() {\n for (var _len = arguments.length, sources = new Array(_len), _key = 0; _key < _len; _key++) {\n sources[_key] = arguments[_key];\n }\n var clone = createEmpty(sources[0]);\n sources.forEach(function (src) {\n function internalMerge(path, parentLoopSet) {\n var loopSet = new Set(parentLoopSet);\n var value = get(src, path);\n var isArr = Array.isArray(value);\n if (isArr || isObject(value)) {\n // Only add not loop obj\n if (!loopSet.has(value)) {\n loopSet.add(value);\n var originValue = get(clone, path);\n if (isArr) {\n // Array will always be override\n clone = set(clone, path, []);\n } else if (!originValue || _typeof(originValue) !== 'object') {\n // Init container if not exist\n clone = set(clone, path, createEmpty(value));\n }\n keys(value).forEach(function (key) {\n internalMerge([].concat(_toConsumableArray(path), [key]), loopSet);\n });\n }\n } else {\n clone = set(clone, path, value);\n }\n }\n internalMerge([]);\n });\n return clone;\n}","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useEvent } from 'rc-util';\nimport * as React from 'react';\nfunction getPosition(e) {\n var obj = 'touches' in e ? e.touches[0] : e;\n return {\n pageX: obj.pageX,\n pageY: obj.pageY\n };\n}\nfunction useDrag(containerRef, direction, rawValues, min, max, formatValue, triggerChange, finishChange, offsetValues) {\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n draggingValue = _React$useState2[0],\n setDraggingValue = _React$useState2[1];\n var _React$useState3 = React.useState(-1),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n draggingIndex = _React$useState4[0],\n setDraggingIndex = _React$useState4[1];\n var _React$useState5 = React.useState(rawValues),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n cacheValues = _React$useState6[0],\n setCacheValues = _React$useState6[1];\n var _React$useState7 = React.useState(rawValues),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n originValues = _React$useState8[0],\n setOriginValues = _React$useState8[1];\n var mouseMoveEventRef = React.useRef(null);\n var mouseUpEventRef = React.useRef(null);\n React.useLayoutEffect(function () {\n if (draggingIndex === -1) {\n setCacheValues(rawValues);\n }\n }, [rawValues, draggingIndex]);\n\n // Clean up event\n React.useEffect(function () {\n return function () {\n document.removeEventListener('mousemove', mouseMoveEventRef.current);\n document.removeEventListener('mouseup', mouseUpEventRef.current);\n document.removeEventListener('touchmove', mouseMoveEventRef.current);\n document.removeEventListener('touchend', mouseUpEventRef.current);\n };\n }, []);\n var flushValues = function flushValues(nextValues, nextValue) {\n // Perf: Only update state when value changed\n if (cacheValues.some(function (val, i) {\n return val !== nextValues[i];\n })) {\n if (nextValue !== undefined) {\n setDraggingValue(nextValue);\n }\n setCacheValues(nextValues);\n triggerChange(nextValues);\n }\n };\n var updateCacheValue = useEvent(function (valueIndex, offsetPercent) {\n // Basic point offset\n\n if (valueIndex === -1) {\n // >>>> Dragging on the track\n var startValue = originValues[0];\n var endValue = originValues[originValues.length - 1];\n var maxStartOffset = min - startValue;\n var maxEndOffset = max - endValue;\n\n // Get valid offset\n var offset = offsetPercent * (max - min);\n offset = Math.max(offset, maxStartOffset);\n offset = Math.min(offset, maxEndOffset);\n\n // Use first value to revert back of valid offset (like steps marks)\n var formatStartValue = formatValue(startValue + offset);\n offset = formatStartValue - startValue;\n var cloneCacheValues = originValues.map(function (val) {\n return val + offset;\n });\n flushValues(cloneCacheValues);\n } else {\n // >>>> Dragging on the handle\n var offsetDist = (max - min) * offsetPercent;\n\n // Always start with the valueIndex origin value\n var cloneValues = _toConsumableArray(cacheValues);\n cloneValues[valueIndex] = originValues[valueIndex];\n var next = offsetValues(cloneValues, offsetDist, valueIndex, 'dist');\n flushValues(next.values, next.value);\n }\n });\n var onStartMove = function onStartMove(e, valueIndex, startValues) {\n e.stopPropagation();\n\n // 如果是点击 track 触发的,需要传入变化后的初始值,而不能直接用 rawValues\n var initialValues = startValues || rawValues;\n var originValue = initialValues[valueIndex];\n setDraggingIndex(valueIndex);\n setDraggingValue(originValue);\n setOriginValues(initialValues);\n var _getPosition = getPosition(e),\n startX = _getPosition.pageX,\n startY = _getPosition.pageY;\n\n // Moving\n var onMouseMove = function onMouseMove(event) {\n event.preventDefault();\n var _getPosition2 = getPosition(event),\n moveX = _getPosition2.pageX,\n moveY = _getPosition2.pageY;\n var offsetX = moveX - startX;\n var offsetY = moveY - startY;\n var _containerRef$current = containerRef.current.getBoundingClientRect(),\n width = _containerRef$current.width,\n height = _containerRef$current.height;\n var offSetPercent;\n switch (direction) {\n case 'btt':\n offSetPercent = -offsetY / height;\n break;\n case 'ttb':\n offSetPercent = offsetY / height;\n break;\n case 'rtl':\n offSetPercent = -offsetX / width;\n break;\n default:\n offSetPercent = offsetX / width;\n }\n updateCacheValue(valueIndex, offSetPercent);\n };\n\n // End\n var onMouseUp = function onMouseUp(event) {\n event.preventDefault();\n document.removeEventListener('mouseup', onMouseUp);\n document.removeEventListener('mousemove', onMouseMove);\n document.removeEventListener('touchend', onMouseUp);\n document.removeEventListener('touchmove', onMouseMove);\n mouseMoveEventRef.current = null;\n mouseUpEventRef.current = null;\n setDraggingIndex(-1);\n finishChange();\n };\n document.addEventListener('mouseup', onMouseUp);\n document.addEventListener('mousemove', onMouseMove);\n document.addEventListener('touchend', onMouseUp);\n document.addEventListener('touchmove', onMouseMove);\n mouseMoveEventRef.current = onMouseMove;\n mouseUpEventRef.current = onMouseUp;\n };\n\n // Only return cache value when it mapping with rawValues\n var returnValues = React.useMemo(function () {\n var sourceValues = _toConsumableArray(rawValues).sort(function (a, b) {\n return a - b;\n });\n var targetValues = _toConsumableArray(cacheValues).sort(function (a, b) {\n return a - b;\n });\n return sourceValues.every(function (val, index) {\n return val === targetValues[index];\n }) ? cacheValues : rawValues;\n }, [rawValues, cacheValues]);\n return [draggingIndex, draggingValue, returnValues, onStartMove];\n}\nexport default useDrag;","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 Handles from \"./Handles\";\nimport Marks from \"./Marks\";\nimport Steps from \"./Steps\";\nimport Tracks from \"./Tracks\";\nimport SliderContext from \"./context\";\nimport useDrag from \"./hooks/useDrag\";\nimport useOffset from \"./hooks/useOffset\";\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 _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 activeHandleRender = props.activeHandleRender,\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(null);\n var containerRef = React.useRef(null);\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 return Object.keys(marks || {}).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 var finishValue = getTriggerValue(rawValuesRef.current);\n onAfterChange === null || onAfterChange === void 0 || onAfterChange(finishValue);\n warning(!onAfterChange, '[rc-slider] `onAfterChange` is deprecated. Please use `onChangeComplete` instead.');\n onChangeComplete === null || onChangeComplete === void 0 || onChangeComplete(finishValue);\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 var _document$activeEleme, _document$activeEleme2;\n (_document$activeEleme = document.activeElement) === null || _document$activeEleme === void 0 || (_document$activeEleme2 = _document$activeEleme.blur) === null || _document$activeEleme2 === void 0 || _document$activeEleme2.call(_document$activeEleme);\n handlesRef.current.focus(valueIndex);\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 _containerRef$current2;\n var _document = document,\n activeElement = _document.activeElement;\n if ((_containerRef$current2 = containerRef.current) !== null && _containerRef$current2 !== void 0 && _containerRef$current2.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, _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-disabled\"), disabled), \"\".concat(prefixCls, \"-vertical\"), vertical), \"\".concat(prefixCls, \"-horizontal\"), !vertical), \"\".concat(prefixCls, \"-with-marks\"), markList.length)),\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 : undefined\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 activeHandleRender: activeHandleRender,\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;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\n\n/** Format the value in the range of [min, max] */\n\n/** Format value align with step */\n\n/** Format value align with step & marks */\n\nexport default function useOffset(min, max, step, markList, allowCross, pushable) {\n var formatRangeValue = React.useCallback(function (val) {\n return Math.max(min, Math.min(max, val));\n }, [min, max]);\n var formatStepValue = React.useCallback(function (val) {\n if (step !== null) {\n var stepValue = min + Math.round((formatRangeValue(val) - min) / step) * step;\n\n // Cut number in case to be like 0.30000000000000004\n var getDecimal = function getDecimal(num) {\n return (String(num).split('.')[1] || '').length;\n };\n var maxDecimal = Math.max(getDecimal(step), getDecimal(max), getDecimal(min));\n var fixedValue = Number(stepValue.toFixed(maxDecimal));\n return min <= fixedValue && fixedValue <= max ? fixedValue : null;\n }\n return null;\n }, [step, min, max, formatRangeValue]);\n var formatValue = React.useCallback(function (val) {\n var formatNextValue = formatRangeValue(val);\n\n // List align values\n var alignValues = markList.map(function (mark) {\n return mark.value;\n });\n if (step !== null) {\n alignValues.push(formatStepValue(val));\n }\n\n // min & max\n alignValues.push(min, max);\n\n // Align with marks\n var closeValue = alignValues[0];\n var closeDist = max - min;\n alignValues.forEach(function (alignValue) {\n var dist = Math.abs(formatNextValue - alignValue);\n if (dist <= closeDist) {\n closeValue = alignValue;\n closeDist = dist;\n }\n });\n return closeValue;\n }, [min, max, markList, step, formatRangeValue, formatStepValue]);\n\n // ========================== Offset ==========================\n // Single Value\n var offsetValue = function offsetValue(values, offset, valueIndex) {\n var mode = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'unit';\n if (typeof offset === 'number') {\n var nextValue;\n var originValue = values[valueIndex];\n\n // Only used for `dist` mode\n var targetDistValue = originValue + offset;\n\n // Compare next step value & mark value which is best match\n var potentialValues = [];\n markList.forEach(function (mark) {\n potentialValues.push(mark.value);\n });\n\n // Min & Max\n potentialValues.push(min, max);\n\n // In case origin value is align with mark but not with step\n potentialValues.push(formatStepValue(originValue));\n\n // Put offset step value also\n var sign = offset > 0 ? 1 : -1;\n if (mode === 'unit') {\n potentialValues.push(formatStepValue(originValue + sign * step));\n } else {\n potentialValues.push(formatStepValue(targetDistValue));\n }\n\n // Find close one\n potentialValues = potentialValues.filter(function (val) {\n return val !== null;\n })\n // Remove reverse value\n .filter(function (val) {\n return offset < 0 ? val <= originValue : val >= originValue;\n });\n if (mode === 'unit') {\n // `unit` mode can not contain itself\n potentialValues = potentialValues.filter(function (val) {\n return val !== originValue;\n });\n }\n var compareValue = mode === 'unit' ? originValue : targetDistValue;\n nextValue = potentialValues[0];\n var valueDist = Math.abs(nextValue - compareValue);\n potentialValues.forEach(function (potentialValue) {\n var dist = Math.abs(potentialValue - compareValue);\n if (dist < valueDist) {\n nextValue = potentialValue;\n valueDist = dist;\n }\n });\n\n // Out of range will back to range\n if (nextValue === undefined) {\n return offset < 0 ? min : max;\n }\n\n // `dist` mode\n if (mode === 'dist') {\n return nextValue;\n }\n\n // `unit` mode may need another round\n if (Math.abs(offset) > 1) {\n var cloneValues = _toConsumableArray(values);\n cloneValues[valueIndex] = nextValue;\n return offsetValue(cloneValues, offset - sign, valueIndex, mode);\n }\n return nextValue;\n } else if (offset === 'min') {\n return min;\n } else if (offset === 'max') {\n return max;\n }\n };\n\n /** Same as `offsetValue` but return `changed` mark to tell value changed */\n var offsetChangedValue = function offsetChangedValue(values, offset, valueIndex) {\n var mode = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'unit';\n var originValue = values[valueIndex];\n var nextValue = offsetValue(values, offset, valueIndex, mode);\n return {\n value: nextValue,\n changed: nextValue !== originValue\n };\n };\n var needPush = function needPush(dist) {\n return pushable === null && dist === 0 || typeof pushable === 'number' && dist < pushable;\n };\n\n // Values\n var offsetValues = function offsetValues(values, offset, valueIndex) {\n var mode = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'unit';\n var nextValues = values.map(formatValue);\n var originValue = nextValues[valueIndex];\n var nextValue = offsetValue(nextValues, offset, valueIndex, mode);\n nextValues[valueIndex] = nextValue;\n if (allowCross === false) {\n // >>>>> Allow Cross\n var pushNum = pushable || 0;\n\n // ============ AllowCross ===============\n if (valueIndex > 0 && nextValues[valueIndex - 1] !== originValue) {\n nextValues[valueIndex] = Math.max(nextValues[valueIndex], nextValues[valueIndex - 1] + pushNum);\n }\n if (valueIndex < nextValues.length - 1 && nextValues[valueIndex + 1] !== originValue) {\n nextValues[valueIndex] = Math.min(nextValues[valueIndex], nextValues[valueIndex + 1] - pushNum);\n }\n } else if (typeof pushable === 'number' || pushable === null) {\n // >>>>> Pushable\n // =============== Push ==================\n\n // >>>>>> Basic push\n // End values\n for (var i = valueIndex + 1; i < nextValues.length; i += 1) {\n var changed = true;\n while (needPush(nextValues[i] - nextValues[i - 1]) && changed) {\n var _offsetChangedValue = offsetChangedValue(nextValues, 1, i);\n nextValues[i] = _offsetChangedValue.value;\n changed = _offsetChangedValue.changed;\n }\n }\n\n // Start values\n for (var _i = valueIndex; _i > 0; _i -= 1) {\n var _changed = true;\n while (needPush(nextValues[_i] - nextValues[_i - 1]) && _changed) {\n var _offsetChangedValue2 = offsetChangedValue(nextValues, -1, _i - 1);\n nextValues[_i - 1] = _offsetChangedValue2.value;\n _changed = _offsetChangedValue2.changed;\n }\n }\n\n // >>>>> Revert back to safe push range\n // End to Start\n for (var _i2 = nextValues.length - 1; _i2 > 0; _i2 -= 1) {\n var _changed2 = true;\n while (needPush(nextValues[_i2] - nextValues[_i2 - 1]) && _changed2) {\n var _offsetChangedValue3 = offsetChangedValue(nextValues, -1, _i2 - 1);\n nextValues[_i2 - 1] = _offsetChangedValue3.value;\n _changed2 = _offsetChangedValue3.changed;\n }\n }\n\n // Start to End\n for (var _i3 = 0; _i3 < nextValues.length - 1; _i3 += 1) {\n var _changed3 = true;\n while (needPush(nextValues[_i3 + 1] - nextValues[_i3]) && _changed3) {\n var _offsetChangedValue4 = offsetChangedValue(nextValues, 1, _i3 + 1);\n nextValues[_i3 + 1] = _offsetChangedValue4.value;\n _changed3 = _offsetChangedValue4.changed;\n }\n }\n }\n return {\n value: nextValues[valueIndex],\n values: nextValues\n };\n };\n return [formatValue, offsetValues];\n}","import Slider from \"./Slider\";\nexport default Slider;","import { useMemo, useRef } from 'react';\nimport useMounted from './useMounted';\nimport useWillUnmount from './useWillUnmount';\n\n/*\n * Browsers including Internet Explorer, Chrome, Safari, and Firefox store the\n * delay as a 32-bit signed integer internally. This causes an integer overflow\n * when using delays larger than 2,147,483,647 ms (about 24.8 days),\n * resulting in the timeout being executed immediately.\n *\n * via: https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout\n */\nconst MAX_DELAY_MS = 2 ** 31 - 1;\nfunction setChainedTimeout(handleRef, fn, timeoutAtMs) {\n const delayMs = timeoutAtMs - Date.now();\n handleRef.current = delayMs <= MAX_DELAY_MS ? setTimeout(fn, delayMs) : setTimeout(() => setChainedTimeout(handleRef, fn, timeoutAtMs), MAX_DELAY_MS);\n}\n\n/**\n * Returns a controller object for setting a timeout that is properly cleaned up\n * once the component unmounts. New timeouts cancel and replace existing ones.\n *\n *\n *\n * ```tsx\n * const { set, clear } = useTimeout();\n * const [hello, showHello] = useState(false);\n * //Display hello after 5 seconds\n * set(() => showHello(true), 5000);\n * return (\n *
\n * {hello ?

Hello

: null}\n *
\n * );\n * ```\n */\nexport default function useTimeout() {\n const isMounted = useMounted();\n\n // types are confused between node and web here IDK\n const handleRef = useRef();\n useWillUnmount(() => clearTimeout(handleRef.current));\n return useMemo(() => {\n const clear = () => clearTimeout(handleRef.current);\n function set(fn, delayMs = 0) {\n if (!isMounted()) return;\n clear();\n if (delayMs <= MAX_DELAY_MS) {\n // For simplicity, if the timeout is short, just set a normal timeout.\n handleRef.current = setTimeout(fn, delayMs);\n } else {\n setChainedTimeout(handleRef, fn, Date.now() + delayMs);\n }\n }\n return {\n set,\n clear,\n handleRef\n };\n }, []);\n}","import listen from 'dom-helpers/listen';\nimport ownerDocument from 'dom-helpers/ownerDocument';\nimport { useEffect } from 'react';\nimport useEventCallback from '@restart/hooks/useEventCallback';\nimport useClickOutside, { getRefTarget } from './useClickOutside';\nimport { isEscKey } from './utils';\nconst noop = () => {};\n/**\n * The `useRootClose` hook registers your callback on the document\n * when rendered. Powers the `` component. This is used achieve modal\n * style behavior where your callback is triggered when the user tries to\n * interact with the rest of the document or hits the `esc` key.\n *\n * @param {Ref| HTMLElement} ref The element boundary\n * @param {function} onRootClose\n * @param {object=} options\n * @param {boolean=} options.disabled\n * @param {string=} options.clickTrigger The DOM event name (click, mousedown, etc) to attach listeners on\n */\nfunction useRootClose(ref, onRootClose, {\n disabled,\n clickTrigger\n} = {}) {\n const onClose = onRootClose || noop;\n useClickOutside(ref, onClose, {\n disabled,\n clickTrigger\n });\n const handleKeyUp = useEventCallback(e => {\n if (isEscKey(e)) {\n onClose(e);\n }\n });\n useEffect(() => {\n if (disabled || ref == null) return undefined;\n const doc = ownerDocument(getRefTarget(ref));\n\n // Store the current event to avoid triggering handlers immediately\n // https://github.com/facebook/react/issues/20074\n let currentEvent = (doc.defaultView || window).event;\n const removeKeyupListener = listen(doc, 'keyup', e => {\n // skip if this event is the same as the one running when we added the handlers\n if (e === currentEvent) {\n currentEvent = undefined;\n return;\n }\n handleKeyUp(e);\n });\n return () => {\n removeKeyupListener();\n };\n }, [ref, disabled, handleKeyUp]);\n}\nexport default useRootClose;","import * as React from 'react';\nimport ReactDOM from 'react-dom';\nimport useCallbackRef from '@restart/hooks/useCallbackRef';\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport { useState } from 'react';\nimport usePopper from './usePopper';\nimport useRootClose from './useRootClose';\nimport useWaitForDOMRef from './useWaitForDOMRef';\nimport mergeOptionsWithPopperConfig from './mergeOptionsWithPopperConfig';\nimport { renderTransition } from './ImperativeTransition';\n/**\n * Built on top of `Popper.js`, the overlay component is\n * great for custom tooltip overlays.\n */\nconst Overlay = /*#__PURE__*/React.forwardRef((props, outerRef) => {\n const {\n flip,\n offset,\n placement,\n containerPadding,\n popperConfig = {},\n transition: Transition,\n runTransition\n } = props;\n const [rootElement, attachRef] = useCallbackRef();\n const [arrowElement, attachArrowRef] = useCallbackRef();\n const mergedRef = useMergedRefs(attachRef, outerRef);\n const container = useWaitForDOMRef(props.container);\n const target = useWaitForDOMRef(props.target);\n const [exited, setExited] = useState(!props.show);\n const popper = usePopper(target, rootElement, mergeOptionsWithPopperConfig({\n placement,\n enableEvents: !!props.show,\n containerPadding: containerPadding || 5,\n flip,\n offset,\n arrowElement,\n popperConfig\n }));\n\n // TODO: I think this needs to be in an effect\n if (props.show && exited) {\n setExited(false);\n }\n const handleHidden = (...args) => {\n setExited(true);\n if (props.onExited) {\n props.onExited(...args);\n }\n };\n\n // Don't un-render the overlay while it's transitioning out.\n const mountOverlay = props.show || !exited;\n useRootClose(rootElement, props.onHide, {\n disabled: !props.rootClose || props.rootCloseDisabled,\n clickTrigger: props.rootCloseEvent\n });\n if (!mountOverlay) {\n // Don't bother showing anything if we don't have to.\n return null;\n }\n const {\n onExit,\n onExiting,\n onEnter,\n onEntering,\n onEntered\n } = props;\n let child = props.children(Object.assign({}, popper.attributes.popper, {\n style: popper.styles.popper,\n ref: mergedRef\n }), {\n popper,\n placement,\n show: !!props.show,\n arrowProps: Object.assign({}, popper.attributes.arrow, {\n style: popper.styles.arrow,\n ref: attachArrowRef\n })\n });\n child = renderTransition(Transition, runTransition, {\n in: !!props.show,\n appear: true,\n mountOnEnter: true,\n unmountOnExit: true,\n children: child,\n onExit,\n onExiting,\n onExited: handleHidden,\n onEnter,\n onEntering,\n onEntered\n });\n return container ? /*#__PURE__*/ReactDOM.createPortal(child, container) : null;\n});\nOverlay.displayName = 'Overlay';\nexport default Overlay;","\"use client\";\n\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { useBootstrapPrefix, useIsRTL } from './ThemeProvider';\nimport { getOverlayDirection } from './helpers';\nimport getInitialPopperStyles from './getInitialPopperStyles';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst Tooltip = /*#__PURE__*/React.forwardRef(({\n bsPrefix,\n placement = 'right',\n className,\n style,\n children,\n arrowProps,\n hasDoneInitialMeasure,\n popper,\n show,\n ...props\n}, ref) => {\n bsPrefix = useBootstrapPrefix(bsPrefix, 'tooltip');\n const isRTL = useIsRTL();\n const [primaryPlacement] = (placement == null ? void 0 : placement.split('-')) || [];\n const bsDirection = getOverlayDirection(primaryPlacement, isRTL);\n let computedStyle = style;\n if (show && !hasDoneInitialMeasure) {\n computedStyle = {\n ...style,\n ...getInitialPopperStyles(popper == null ? void 0 : popper.strategy)\n };\n }\n return /*#__PURE__*/_jsxs(\"div\", {\n ref: ref,\n style: computedStyle,\n role: \"tooltip\",\n \"x-placement\": primaryPlacement,\n className: classNames(className, bsPrefix, `bs-tooltip-${bsDirection}`),\n ...props,\n children: [/*#__PURE__*/_jsx(\"div\", {\n className: \"tooltip-arrow\",\n ...arrowProps\n }), /*#__PURE__*/_jsx(\"div\", {\n className: `${bsPrefix}-inner`,\n children: children\n })]\n });\n});\nTooltip.displayName = 'Tooltip';\nexport default Object.assign(Tooltip, {\n // Default tooltip offset.\n // https://github.com/twbs/bootstrap/blob/beca2a6c7f6bc88b6449339fc76edcda832c59e5/js/src/tooltip.js#L65\n TOOLTIP_OFFSET: [0, 6]\n});","\"use client\";\n\nimport * as React from 'react';\nimport { useEffect, useRef, useState } from 'react';\nimport classNames from 'classnames';\nimport BaseOverlay from '@restart/ui/Overlay';\nimport useEventCallback from '@restart/hooks/useEventCallback';\nimport useIsomorphicEffect from '@restart/hooks/useIsomorphicEffect';\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport useOverlayOffset from './useOverlayOffset';\nimport Fade from './Fade';\nimport safeFindDOMNode from './safeFindDOMNode';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction wrapRefs(props, arrowProps) {\n const {\n ref\n } = props;\n const {\n ref: aRef\n } = arrowProps;\n props.ref = ref.__wrapped || (ref.__wrapped = r => ref(safeFindDOMNode(r)));\n arrowProps.ref = aRef.__wrapped || (aRef.__wrapped = r => aRef(safeFindDOMNode(r)));\n}\nconst Overlay = /*#__PURE__*/React.forwardRef(({\n children: overlay,\n transition = Fade,\n popperConfig = {},\n rootClose = false,\n placement = 'top',\n show: outerShow = false,\n ...outerProps\n}, outerRef) => {\n const popperRef = useRef({});\n const [firstRenderedState, setFirstRenderedState] = useState(null);\n const [ref, modifiers] = useOverlayOffset(outerProps.offset);\n const mergedRef = useMergedRefs(outerRef, ref);\n const actualTransition = transition === true ? Fade : transition || undefined;\n const handleFirstUpdate = useEventCallback(state => {\n setFirstRenderedState(state);\n popperConfig == null || popperConfig.onFirstUpdate == null || popperConfig.onFirstUpdate(state);\n });\n useIsomorphicEffect(() => {\n if (firstRenderedState && outerProps.target) {\n // Must wait for target element to resolve before updating popper.\n popperRef.current.scheduleUpdate == null || popperRef.current.scheduleUpdate();\n }\n }, [firstRenderedState, outerProps.target]);\n useEffect(() => {\n if (!outerShow) {\n setFirstRenderedState(null);\n }\n }, [outerShow]);\n return /*#__PURE__*/_jsx(BaseOverlay, {\n ...outerProps,\n ref: mergedRef,\n popperConfig: {\n ...popperConfig,\n modifiers: modifiers.concat(popperConfig.modifiers || []),\n onFirstUpdate: handleFirstUpdate\n },\n transition: actualTransition,\n rootClose: rootClose,\n placement: placement,\n show: outerShow,\n children: (overlayProps, {\n arrowProps,\n popper: popperObj,\n show\n }) => {\n var _popperObj$state;\n wrapRefs(overlayProps, arrowProps);\n // Need to get placement from popper object, handling case when overlay is flipped using 'flip' prop\n const updatedPlacement = popperObj == null ? void 0 : popperObj.placement;\n const popper = Object.assign(popperRef.current, {\n state: popperObj == null ? void 0 : popperObj.state,\n scheduleUpdate: popperObj == null ? void 0 : popperObj.update,\n placement: updatedPlacement,\n outOfBoundaries: (popperObj == null || (_popperObj$state = popperObj.state) == null || (_popperObj$state = _popperObj$state.modifiersData.hide) == null ? void 0 : _popperObj$state.isReferenceHidden) || false,\n strategy: popperConfig.strategy\n });\n const hasDoneInitialMeasure = !!firstRenderedState;\n if (typeof overlay === 'function') return overlay({\n ...overlayProps,\n placement: updatedPlacement,\n show,\n ...(!transition && show && {\n className: 'show'\n }),\n popper,\n arrowProps,\n hasDoneInitialMeasure\n });\n return /*#__PURE__*/React.cloneElement(overlay, {\n ...overlayProps,\n placement: updatedPlacement,\n arrowProps,\n popper,\n hasDoneInitialMeasure,\n className: classNames(overlay.props.className, !transition && show && 'show'),\n style: {\n ...overlay.props.style,\n ...overlayProps.style\n }\n });\n }\n });\n});\nOverlay.displayName = 'Overlay';\nexport default Overlay;","\"use client\";\n\nimport { useMemo, useRef } from 'react';\nimport hasClass from 'dom-helpers/hasClass';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport Popover from './Popover';\nimport Tooltip from './Tooltip';\n\n// This is meant for internal use.\n// This applies a custom offset to the overlay if it's a popover or tooltip.\nexport default function useOverlayOffset(customOffset) {\n const overlayRef = useRef(null);\n const popoverClass = useBootstrapPrefix(undefined, 'popover');\n const tooltipClass = useBootstrapPrefix(undefined, 'tooltip');\n const offset = useMemo(() => ({\n name: 'offset',\n options: {\n offset: () => {\n if (customOffset) {\n return customOffset;\n }\n if (overlayRef.current) {\n if (hasClass(overlayRef.current, popoverClass)) {\n return Popover.POPPER_OFFSET;\n }\n if (hasClass(overlayRef.current, tooltipClass)) {\n return Tooltip.TOOLTIP_OFFSET;\n }\n }\n return [0, 0];\n }\n }\n }), [customOffset, popoverClass, tooltipClass]);\n return [overlayRef, [offset]];\n}","\"use client\";\n\nimport contains from 'dom-helpers/contains';\nimport PropTypes from 'prop-types';\nimport * as React from 'react';\nimport { cloneElement, useCallback, useRef } from 'react';\nimport useTimeout from '@restart/hooks/useTimeout';\nimport warning from 'warning';\nimport { useUncontrolledProp } from 'uncontrollable';\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport Overlay from './Overlay';\nimport safeFindDOMNode from './safeFindDOMNode';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nfunction normalizeDelay(delay) {\n return delay && typeof delay === 'object' ? delay : {\n show: delay,\n hide: delay\n };\n}\n\n// Simple implementation of mouseEnter and mouseLeave.\n// React's built version is broken: https://github.com/facebook/react/issues/4251\n// for cases when the trigger is disabled and mouseOut/Over can cause flicker\n// moving from one child element to another.\nfunction handleMouseOverOut(\n// eslint-disable-next-line @typescript-eslint/no-shadow\nhandler, args, relatedNative) {\n const [e] = args;\n const target = e.currentTarget;\n const related = e.relatedTarget || e.nativeEvent[relatedNative];\n if ((!related || related !== target) && !contains(target, related)) {\n handler(...args);\n }\n}\nconst triggerType = PropTypes.oneOf(['click', 'hover', 'focus']);\nconst OverlayTrigger = ({\n trigger = ['hover', 'focus'],\n overlay,\n children,\n popperConfig = {},\n show: propsShow,\n defaultShow = false,\n onToggle,\n delay: propsDelay,\n placement,\n flip = placement && placement.indexOf('auto') !== -1,\n ...props\n}) => {\n const triggerNodeRef = useRef(null);\n const mergedRef = useMergedRefs(triggerNodeRef, children.ref);\n const timeout = useTimeout();\n const hoverStateRef = useRef('');\n const [show, setShow] = useUncontrolledProp(propsShow, defaultShow, onToggle);\n const delay = normalizeDelay(propsDelay);\n const {\n onFocus,\n onBlur,\n onClick\n } = typeof children !== 'function' ? React.Children.only(children).props : {};\n const attachRef = r => {\n mergedRef(safeFindDOMNode(r));\n };\n const handleShow = useCallback(() => {\n timeout.clear();\n hoverStateRef.current = 'show';\n if (!delay.show) {\n setShow(true);\n return;\n }\n timeout.set(() => {\n if (hoverStateRef.current === 'show') setShow(true);\n }, delay.show);\n }, [delay.show, setShow, timeout]);\n const handleHide = useCallback(() => {\n timeout.clear();\n hoverStateRef.current = 'hide';\n if (!delay.hide) {\n setShow(false);\n return;\n }\n timeout.set(() => {\n if (hoverStateRef.current === 'hide') setShow(false);\n }, delay.hide);\n }, [delay.hide, setShow, timeout]);\n const handleFocus = useCallback((...args) => {\n handleShow();\n onFocus == null || onFocus(...args);\n }, [handleShow, onFocus]);\n const handleBlur = useCallback((...args) => {\n handleHide();\n onBlur == null || onBlur(...args);\n }, [handleHide, onBlur]);\n const handleClick = useCallback((...args) => {\n setShow(!show);\n onClick == null || onClick(...args);\n }, [onClick, setShow, show]);\n const handleMouseOver = useCallback((...args) => {\n handleMouseOverOut(handleShow, args, 'fromElement');\n }, [handleShow]);\n const handleMouseOut = useCallback((...args) => {\n handleMouseOverOut(handleHide, args, 'toElement');\n }, [handleHide]);\n const triggers = trigger == null ? [] : [].concat(trigger);\n const triggerProps = {\n ref: attachRef\n };\n if (triggers.indexOf('click') !== -1) {\n triggerProps.onClick = handleClick;\n }\n if (triggers.indexOf('focus') !== -1) {\n triggerProps.onFocus = handleFocus;\n triggerProps.onBlur = handleBlur;\n }\n if (triggers.indexOf('hover') !== -1) {\n process.env.NODE_ENV !== \"production\" ? warning(triggers.length > 1, '[react-bootstrap] Specifying only the `\"hover\"` trigger limits the visibility of the overlay to just mouse users. Consider also including the `\"focus\"` trigger so that touch and keyboard only users can see the overlay as well.') : void 0;\n triggerProps.onMouseOver = handleMouseOver;\n triggerProps.onMouseOut = handleMouseOut;\n }\n return /*#__PURE__*/_jsxs(_Fragment, {\n children: [typeof children === 'function' ? children(triggerProps) : /*#__PURE__*/cloneElement(children, triggerProps), /*#__PURE__*/_jsx(Overlay, {\n ...props,\n show: show,\n onHide: handleHide,\n flip: flip,\n placement: placement,\n popperConfig: popperConfig,\n target: triggerNodeRef.current,\n children: overlay\n })]\n });\n};\nexport default OverlayTrigger;"],"sourceRoot":""}