{"ast":null,"code":"import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useContext } from '@rc-component/context';\nimport classNames from 'classnames';\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport { getOffset } from \"rc-util/es/Dom/css\";\nimport getScrollBarSize from \"rc-util/es/getScrollBarSize\";\nimport * as React from 'react';\nimport TableContext from \"./context/TableContext\";\nimport { useLayoutState } from \"./hooks/useFrame\";\nimport raf from \"rc-util/es/raf\";\nvar StickyScrollBar = function StickyScrollBar(_ref, ref) {\n  var _scrollBodyRef$curren, _scrollBodyRef$curren2;\n  var scrollBodyRef = _ref.scrollBodyRef,\n    onScroll = _ref.onScroll,\n    offsetScroll = _ref.offsetScroll,\n    container = _ref.container;\n  var prefixCls = useContext(TableContext, 'prefixCls');\n  var bodyScrollWidth = ((_scrollBodyRef$curren = scrollBodyRef.current) === null || _scrollBodyRef$curren === void 0 ? void 0 : _scrollBodyRef$curren.scrollWidth) || 0;\n  var bodyWidth = ((_scrollBodyRef$curren2 = scrollBodyRef.current) === null || _scrollBodyRef$curren2 === void 0 ? void 0 : _scrollBodyRef$curren2.clientWidth) || 0;\n  var scrollBarWidth = bodyScrollWidth && bodyWidth * (bodyWidth / bodyScrollWidth);\n  var scrollBarRef = React.useRef();\n  var _useLayoutState = useLayoutState({\n      scrollLeft: 0,\n      isHiddenScrollBar: false\n    }),\n    _useLayoutState2 = _slicedToArray(_useLayoutState, 2),\n    scrollState = _useLayoutState2[0],\n    setScrollState = _useLayoutState2[1];\n  var refState = React.useRef({\n    delta: 0,\n    x: 0\n  });\n  var _React$useState = React.useState(false),\n    _React$useState2 = _slicedToArray(_React$useState, 2),\n    isActive = _React$useState2[0],\n    setActive = _React$useState2[1];\n  var rafRef = React.useRef(null);\n  React.useEffect(function () {\n    return function () {\n      raf.cancel(rafRef.current);\n    };\n  }, []);\n  var onMouseUp = function onMouseUp() {\n    setActive(false);\n  };\n  var onMouseDown = function onMouseDown(event) {\n    event.persist();\n    refState.current.delta = event.pageX - scrollState.scrollLeft;\n    refState.current.x = 0;\n    setActive(true);\n    event.preventDefault();\n  };\n  var onMouseMove = function onMouseMove(event) {\n    var _window;\n    // https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons\n    var _ref2 = event || ((_window = window) === null || _window === void 0 ? void 0 : _window.event),\n      buttons = _ref2.buttons;\n    if (!isActive || buttons === 0) {\n      // If out body mouse up, we can set isActive false when mouse move\n      if (isActive) {\n        setActive(false);\n      }\n      return;\n    }\n    var left = refState.current.x + event.pageX - refState.current.x - refState.current.delta;\n    if (left <= 0) {\n      left = 0;\n    }\n    if (left + scrollBarWidth >= bodyWidth) {\n      left = bodyWidth - scrollBarWidth;\n    }\n    onScroll({\n      scrollLeft: left / bodyWidth * (bodyScrollWidth + 2)\n    });\n    refState.current.x = event.pageX;\n  };\n  var checkScrollBarVisible = function checkScrollBarVisible() {\n    rafRef.current = raf(function () {\n      if (!scrollBodyRef.current) {\n        return;\n      }\n      var tableOffsetTop = getOffset(scrollBodyRef.current).top;\n      var tableBottomOffset = tableOffsetTop + scrollBodyRef.current.offsetHeight;\n      var currentClientOffset = container === window ? document.documentElement.scrollTop + window.innerHeight : getOffset(container).top + container.clientHeight;\n      if (tableBottomOffset - getScrollBarSize() <= currentClientOffset || tableOffsetTop >= currentClientOffset - offsetScroll) {\n        setScrollState(function (state) {\n          return _objectSpread(_objectSpread({}, state), {}, {\n            isHiddenScrollBar: true\n          });\n        });\n      } else {\n        setScrollState(function (state) {\n          return _objectSpread(_objectSpread({}, state), {}, {\n            isHiddenScrollBar: false\n          });\n        });\n      }\n    });\n  };\n  var setScrollLeft = function setScrollLeft(left) {\n    setScrollState(function (state) {\n      return _objectSpread(_objectSpread({}, state), {}, {\n        scrollLeft: left / bodyScrollWidth * bodyWidth || 0\n      });\n    });\n  };\n  React.useImperativeHandle(ref, function () {\n    return {\n      setScrollLeft: setScrollLeft,\n      checkScrollBarVisible: checkScrollBarVisible\n    };\n  });\n  React.useEffect(function () {\n    var onMouseUpListener = addEventListener(document.body, 'mouseup', onMouseUp, false);\n    var onMouseMoveListener = addEventListener(document.body, 'mousemove', onMouseMove, false);\n    checkScrollBarVisible();\n    return function () {\n      onMouseUpListener.remove();\n      onMouseMoveListener.remove();\n    };\n  }, [scrollBarWidth, isActive]);\n  React.useEffect(function () {\n    var onScrollListener = addEventListener(container, 'scroll', checkScrollBarVisible, false);\n    var onResizeListener = addEventListener(window, 'resize', checkScrollBarVisible, false);\n    return function () {\n      onScrollListener.remove();\n      onResizeListener.remove();\n    };\n  }, [container]);\n  React.useEffect(function () {\n    if (!scrollState.isHiddenScrollBar) {\n      setScrollState(function (state) {\n        var bodyNode = scrollBodyRef.current;\n        if (!bodyNode) {\n          return state;\n        }\n        return _objectSpread(_objectSpread({}, state), {}, {\n          scrollLeft: bodyNode.scrollLeft / bodyNode.scrollWidth * bodyNode.clientWidth\n        });\n      });\n    }\n  }, [scrollState.isHiddenScrollBar]);\n  if (bodyScrollWidth <= bodyWidth || !scrollBarWidth || scrollState.isHiddenScrollBar) {\n    return null;\n  }\n  return /*#__PURE__*/React.createElement(\"div\", {\n    style: {\n      height: getScrollBarSize(),\n      width: bodyWidth,\n      bottom: offsetScroll\n    },\n    className: \"\".concat(prefixCls, \"-sticky-scroll\")\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    onMouseDown: onMouseDown,\n    ref: scrollBarRef,\n    className: classNames(\"\".concat(prefixCls, \"-sticky-scroll-bar\"), _defineProperty({}, \"\".concat(prefixCls, \"-sticky-scroll-bar-active\"), isActive)),\n    style: {\n      width: \"\".concat(scrollBarWidth, \"px\"),\n      transform: \"translate3d(\".concat(scrollState.scrollLeft, \"px, 0, 0)\")\n    }\n  }));\n};\nexport default /*#__PURE__*/React.forwardRef(StickyScrollBar);","map":{"version":3,"names":["_defineProperty","_objectSpread","_slicedToArray","useContext","classNames","addEventListener","getOffset","getScrollBarSize","React","TableContext","useLayoutState","raf","StickyScrollBar","_ref","ref","_scrollBodyRef$curren","_scrollBodyRef$curren2","scrollBodyRef","onScroll","offsetScroll","container","prefixCls","bodyScrollWidth","current","scrollWidth","bodyWidth","clientWidth","scrollBarWidth","scrollBarRef","useRef","_useLayoutState","scrollLeft","isHiddenScrollBar","_useLayoutState2","scrollState","setScrollState","refState","delta","x","_React$useState","useState","_React$useState2","isActive","setActive","rafRef","useEffect","cancel","onMouseUp","onMouseDown","event","persist","pageX","preventDefault","onMouseMove","_window","_ref2","window","buttons","left","checkScrollBarVisible","tableOffsetTop","top","tableBottomOffset","offsetHeight","currentClientOffset","document","documentElement","scrollTop","innerHeight","clientHeight","state","setScrollLeft","useImperativeHandle","onMouseUpListener","body","onMouseMoveListener","remove","onScrollListener","onResizeListener","bodyNode","createElement","style","height","width","bottom","className","concat","transform","forwardRef"],"sources":["/var/www/gavt/react-demo/node_modules/rc-table/es/stickyScrollBar.js"],"sourcesContent":["import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useContext } from '@rc-component/context';\nimport classNames from 'classnames';\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport { getOffset } from \"rc-util/es/Dom/css\";\nimport getScrollBarSize from \"rc-util/es/getScrollBarSize\";\nimport * as React from 'react';\nimport TableContext from \"./context/TableContext\";\nimport { useLayoutState } from \"./hooks/useFrame\";\nimport raf from \"rc-util/es/raf\";\nvar StickyScrollBar = function StickyScrollBar(_ref, ref) {\n  var _scrollBodyRef$curren, _scrollBodyRef$curren2;\n  var scrollBodyRef = _ref.scrollBodyRef,\n    onScroll = _ref.onScroll,\n    offsetScroll = _ref.offsetScroll,\n    container = _ref.container;\n  var prefixCls = useContext(TableContext, 'prefixCls');\n  var bodyScrollWidth = ((_scrollBodyRef$curren = scrollBodyRef.current) === null || _scrollBodyRef$curren === void 0 ? void 0 : _scrollBodyRef$curren.scrollWidth) || 0;\n  var bodyWidth = ((_scrollBodyRef$curren2 = scrollBodyRef.current) === null || _scrollBodyRef$curren2 === void 0 ? void 0 : _scrollBodyRef$curren2.clientWidth) || 0;\n  var scrollBarWidth = bodyScrollWidth && bodyWidth * (bodyWidth / bodyScrollWidth);\n  var scrollBarRef = React.useRef();\n  var _useLayoutState = useLayoutState({\n      scrollLeft: 0,\n      isHiddenScrollBar: false\n    }),\n    _useLayoutState2 = _slicedToArray(_useLayoutState, 2),\n    scrollState = _useLayoutState2[0],\n    setScrollState = _useLayoutState2[1];\n  var refState = React.useRef({\n    delta: 0,\n    x: 0\n  });\n  var _React$useState = React.useState(false),\n    _React$useState2 = _slicedToArray(_React$useState, 2),\n    isActive = _React$useState2[0],\n    setActive = _React$useState2[1];\n  var rafRef = React.useRef(null);\n  React.useEffect(function () {\n    return function () {\n      raf.cancel(rafRef.current);\n    };\n  }, []);\n  var onMouseUp = function onMouseUp() {\n    setActive(false);\n  };\n  var onMouseDown = function onMouseDown(event) {\n    event.persist();\n    refState.current.delta = event.pageX - scrollState.scrollLeft;\n    refState.current.x = 0;\n    setActive(true);\n    event.preventDefault();\n  };\n  var onMouseMove = function onMouseMove(event) {\n    var _window;\n    // https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons\n    var _ref2 = event || ((_window = window) === null || _window === void 0 ? void 0 : _window.event),\n      buttons = _ref2.buttons;\n    if (!isActive || buttons === 0) {\n      // If out body mouse up, we can set isActive false when mouse move\n      if (isActive) {\n        setActive(false);\n      }\n      return;\n    }\n    var left = refState.current.x + event.pageX - refState.current.x - refState.current.delta;\n    if (left <= 0) {\n      left = 0;\n    }\n    if (left + scrollBarWidth >= bodyWidth) {\n      left = bodyWidth - scrollBarWidth;\n    }\n    onScroll({\n      scrollLeft: left / bodyWidth * (bodyScrollWidth + 2)\n    });\n    refState.current.x = event.pageX;\n  };\n  var checkScrollBarVisible = function checkScrollBarVisible() {\n    rafRef.current = raf(function () {\n      if (!scrollBodyRef.current) {\n        return;\n      }\n      var tableOffsetTop = getOffset(scrollBodyRef.current).top;\n      var tableBottomOffset = tableOffsetTop + scrollBodyRef.current.offsetHeight;\n      var currentClientOffset = container === window ? document.documentElement.scrollTop + window.innerHeight : getOffset(container).top + container.clientHeight;\n      if (tableBottomOffset - getScrollBarSize() <= currentClientOffset || tableOffsetTop >= currentClientOffset - offsetScroll) {\n        setScrollState(function (state) {\n          return _objectSpread(_objectSpread({}, state), {}, {\n            isHiddenScrollBar: true\n          });\n        });\n      } else {\n        setScrollState(function (state) {\n          return _objectSpread(_objectSpread({}, state), {}, {\n            isHiddenScrollBar: false\n          });\n        });\n      }\n    });\n  };\n  var setScrollLeft = function setScrollLeft(left) {\n    setScrollState(function (state) {\n      return _objectSpread(_objectSpread({}, state), {}, {\n        scrollLeft: left / bodyScrollWidth * bodyWidth || 0\n      });\n    });\n  };\n  React.useImperativeHandle(ref, function () {\n    return {\n      setScrollLeft: setScrollLeft,\n      checkScrollBarVisible: checkScrollBarVisible\n    };\n  });\n  React.useEffect(function () {\n    var onMouseUpListener = addEventListener(document.body, 'mouseup', onMouseUp, false);\n    var onMouseMoveListener = addEventListener(document.body, 'mousemove', onMouseMove, false);\n    checkScrollBarVisible();\n    return function () {\n      onMouseUpListener.remove();\n      onMouseMoveListener.remove();\n    };\n  }, [scrollBarWidth, isActive]);\n  React.useEffect(function () {\n    var onScrollListener = addEventListener(container, 'scroll', checkScrollBarVisible, false);\n    var onResizeListener = addEventListener(window, 'resize', checkScrollBarVisible, false);\n    return function () {\n      onScrollListener.remove();\n      onResizeListener.remove();\n    };\n  }, [container]);\n  React.useEffect(function () {\n    if (!scrollState.isHiddenScrollBar) {\n      setScrollState(function (state) {\n        var bodyNode = scrollBodyRef.current;\n        if (!bodyNode) {\n          return state;\n        }\n        return _objectSpread(_objectSpread({}, state), {}, {\n          scrollLeft: bodyNode.scrollLeft / bodyNode.scrollWidth * bodyNode.clientWidth\n        });\n      });\n    }\n  }, [scrollState.isHiddenScrollBar]);\n  if (bodyScrollWidth <= bodyWidth || !scrollBarWidth || scrollState.isHiddenScrollBar) {\n    return null;\n  }\n  return /*#__PURE__*/React.createElement(\"div\", {\n    style: {\n      height: getScrollBarSize(),\n      width: bodyWidth,\n      bottom: offsetScroll\n    },\n    className: \"\".concat(prefixCls, \"-sticky-scroll\")\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    onMouseDown: onMouseDown,\n    ref: scrollBarRef,\n    className: classNames(\"\".concat(prefixCls, \"-sticky-scroll-bar\"), _defineProperty({}, \"\".concat(prefixCls, \"-sticky-scroll-bar-active\"), isActive)),\n    style: {\n      width: \"\".concat(scrollBarWidth, \"px\"),\n      transform: \"translate3d(\".concat(scrollState.scrollLeft, \"px, 0, 0)\")\n    }\n  }));\n};\nexport default /*#__PURE__*/React.forwardRef(StickyScrollBar);"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}