{"ast":null,"code":"function _extends() {\n  _extends = Object.assign || function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n\n    return target;\n  };\n\n  return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n  if (source == null) return {};\n  var target = {};\n  var sourceKeys = Object.keys(source);\n  var key, i;\n\n  for (i = 0; i < sourceKeys.length; i++) {\n    key = sourceKeys[i];\n    if (excluded.indexOf(key) >= 0) continue;\n    target[key] = source[key];\n  }\n\n  return target;\n}\n\nimport * as React from 'react';\nimport StyleSheet from \"../StyleSheet\";\nimport View from \"../View\";\nimport useMergeRefs from \"../../modules/useMergeRefs\";\n\nfunction normalizeScrollEvent(e) {\n  return {\n    nativeEvent: {\n      contentOffset: {\n        get x() {\n          return e.target.scrollLeft;\n        },\n\n        get y() {\n          return e.target.scrollTop;\n        }\n\n      },\n      contentSize: {\n        get height() {\n          return e.target.scrollHeight;\n        },\n\n        get width() {\n          return e.target.scrollWidth;\n        }\n\n      },\n      layoutMeasurement: {\n        get height() {\n          return e.target.offsetHeight;\n        },\n\n        get width() {\n          return e.target.offsetWidth;\n        }\n\n      }\n    },\n    timeStamp: Date.now()\n  };\n}\n\nfunction shouldEmitScrollEvent(lastTick, eventThrottle) {\n  var timeSinceLastTick = Date.now() - lastTick;\n  return eventThrottle > 0 && timeSinceLastTick >= eventThrottle;\n}\n\nvar ScrollViewBase = React.forwardRef(function (props, forwardedRef) {\n  var onScroll = props.onScroll,\n      onTouchMove = props.onTouchMove,\n      onWheel = props.onWheel,\n      _props$scrollEnabled = props.scrollEnabled,\n      scrollEnabled = _props$scrollEnabled === void 0 ? true : _props$scrollEnabled,\n      _props$scrollEventThr = props.scrollEventThrottle,\n      scrollEventThrottle = _props$scrollEventThr === void 0 ? 0 : _props$scrollEventThr,\n      showsHorizontalScrollIndicator = props.showsHorizontalScrollIndicator,\n      showsVerticalScrollIndicator = props.showsVerticalScrollIndicator,\n      style = props.style,\n      rest = _objectWithoutPropertiesLoose(props, [\"onScroll\", \"onTouchMove\", \"onWheel\", \"scrollEnabled\", \"scrollEventThrottle\", \"showsHorizontalScrollIndicator\", \"showsVerticalScrollIndicator\", \"style\"]);\n\n  var scrollState = React.useRef({\n    isScrolling: false,\n    scrollLastTick: 0\n  });\n  var scrollTimeout = React.useRef(null);\n  var scrollRef = React.useRef(null);\n\n  function createPreventableScrollHandler(handler) {\n    return function (e) {\n      if (scrollEnabled) {\n        if (handler) {\n          handler(e);\n        }\n      }\n    };\n  }\n\n  function handleScroll(e) {\n    e.stopPropagation();\n\n    if (e.target === scrollRef.current) {\n      e.persist();\n\n      if (scrollTimeout.current != null) {\n        clearTimeout(scrollTimeout.current);\n      }\n\n      scrollTimeout.current = setTimeout(function () {\n        handleScrollEnd(e);\n      }, 100);\n\n      if (scrollState.current.isScrolling) {\n        if (shouldEmitScrollEvent(scrollState.current.scrollLastTick, scrollEventThrottle)) {\n          handleScrollTick(e);\n        }\n      } else {\n        handleScrollStart(e);\n      }\n    }\n  }\n\n  function handleScrollStart(e) {\n    scrollState.current.isScrolling = true;\n    handleScrollTick(e);\n  }\n\n  function handleScrollTick(e) {\n    scrollState.current.scrollLastTick = Date.now();\n\n    if (onScroll) {\n      onScroll(normalizeScrollEvent(e));\n    }\n  }\n\n  function handleScrollEnd(e) {\n    scrollState.current.isScrolling = false;\n\n    if (onScroll) {\n      onScroll(normalizeScrollEvent(e));\n    }\n  }\n\n  var hideScrollbar = showsHorizontalScrollIndicator === false || showsVerticalScrollIndicator === false;\n  return React.createElement(View, _extends({}, rest, {\n    onScroll: handleScroll,\n    onTouchMove: createPreventableScrollHandler(onTouchMove),\n    onWheel: createPreventableScrollHandler(onWheel),\n    ref: useMergeRefs(scrollRef, forwardedRef),\n    style: [style, !scrollEnabled && styles.scrollDisabled, hideScrollbar && styles.hideScrollbar]\n  }));\n});\nvar styles = StyleSheet.create({\n  scrollDisabled: {\n    overflowX: 'hidden',\n    overflowY: 'hidden',\n    touchAction: 'none'\n  },\n  hideScrollbar: {\n    scrollbarWidth: 'none'\n  }\n});\nexport default ScrollViewBase;","map":{"version":3,"sources":["/Users/rohitsingh/Documents/projects/new-nativebase-setup/NativeBase/example/node_modules/react-native-web/dist/exports/ScrollView/ScrollViewBase.js"],"names":["_extends","Object","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutPropertiesLoose","excluded","sourceKeys","keys","indexOf","React","StyleSheet","View","useMergeRefs","normalizeScrollEvent","e","nativeEvent","contentOffset","x","scrollLeft","y","scrollTop","contentSize","height","scrollHeight","width","scrollWidth","layoutMeasurement","offsetHeight","offsetWidth","timeStamp","Date","now","shouldEmitScrollEvent","lastTick","eventThrottle","timeSinceLastTick","ScrollViewBase","forwardRef","props","forwardedRef","onScroll","onTouchMove","onWheel","_props$scrollEnabled","scrollEnabled","_props$scrollEventThr","scrollEventThrottle","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","style","rest","scrollState","useRef","isScrolling","scrollLastTick","scrollTimeout","scrollRef","createPreventableScrollHandler","handler","handleScroll","stopPropagation","current","persist","clearTimeout","setTimeout","handleScrollEnd","handleScrollTick","handleScrollStart","hideScrollbar","createElement","ref","styles","scrollDisabled","create","overflowX","overflowY","touchAction","scrollbarWidth"],"mappings":"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","sourcesContent":["function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/**\n * Copyright (c) Nicolas Gallagher.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\nimport * as React from 'react';\nimport StyleSheet from '../StyleSheet';\nimport View from '../View';\nimport useMergeRefs from '../../modules/useMergeRefs';\n\nfunction normalizeScrollEvent(e) {\n  return {\n    nativeEvent: {\n      contentOffset: {\n        get x() {\n          return e.target.scrollLeft;\n        },\n\n        get y() {\n          return e.target.scrollTop;\n        }\n\n      },\n      contentSize: {\n        get height() {\n          return e.target.scrollHeight;\n        },\n\n        get width() {\n          return e.target.scrollWidth;\n        }\n\n      },\n      layoutMeasurement: {\n        get height() {\n          return e.target.offsetHeight;\n        },\n\n        get width() {\n          return e.target.offsetWidth;\n        }\n\n      }\n    },\n    timeStamp: Date.now()\n  };\n}\n\nfunction shouldEmitScrollEvent(lastTick, eventThrottle) {\n  var timeSinceLastTick = Date.now() - lastTick;\n  return eventThrottle > 0 && timeSinceLastTick >= eventThrottle;\n}\n/**\n * Encapsulates the Web-specific scroll throttling and disabling logic\n */\n\n\nvar ScrollViewBase = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) {\n  var onScroll = props.onScroll,\n      onTouchMove = props.onTouchMove,\n      onWheel = props.onWheel,\n      _props$scrollEnabled = props.scrollEnabled,\n      scrollEnabled = _props$scrollEnabled === void 0 ? true : _props$scrollEnabled,\n      _props$scrollEventThr = props.scrollEventThrottle,\n      scrollEventThrottle = _props$scrollEventThr === void 0 ? 0 : _props$scrollEventThr,\n      showsHorizontalScrollIndicator = props.showsHorizontalScrollIndicator,\n      showsVerticalScrollIndicator = props.showsVerticalScrollIndicator,\n      style = props.style,\n      rest = _objectWithoutPropertiesLoose(props, [\"onScroll\", \"onTouchMove\", \"onWheel\", \"scrollEnabled\", \"scrollEventThrottle\", \"showsHorizontalScrollIndicator\", \"showsVerticalScrollIndicator\", \"style\"]);\n\n  var scrollState = React.useRef({\n    isScrolling: false,\n    scrollLastTick: 0\n  });\n  var scrollTimeout = React.useRef(null);\n  var scrollRef = React.useRef(null);\n\n  function createPreventableScrollHandler(handler) {\n    return function (e) {\n      if (scrollEnabled) {\n        if (handler) {\n          handler(e);\n        }\n      }\n    };\n  }\n\n  function handleScroll(e) {\n    e.stopPropagation();\n\n    if (e.target === scrollRef.current) {\n      e.persist(); // A scroll happened, so the scroll resets the scrollend timeout.\n\n      if (scrollTimeout.current != null) {\n        clearTimeout(scrollTimeout.current);\n      }\n\n      scrollTimeout.current = setTimeout(function () {\n        handleScrollEnd(e);\n      }, 100);\n\n      if (scrollState.current.isScrolling) {\n        // Scroll last tick may have changed, check if we need to notify\n        if (shouldEmitScrollEvent(scrollState.current.scrollLastTick, scrollEventThrottle)) {\n          handleScrollTick(e);\n        }\n      } else {\n        // Weren't scrolling, so we must have just started\n        handleScrollStart(e);\n      }\n    }\n  }\n\n  function handleScrollStart(e) {\n    scrollState.current.isScrolling = true;\n    handleScrollTick(e);\n  }\n\n  function handleScrollTick(e) {\n    scrollState.current.scrollLastTick = Date.now();\n\n    if (onScroll) {\n      onScroll(normalizeScrollEvent(e));\n    }\n  }\n\n  function handleScrollEnd(e) {\n    scrollState.current.isScrolling = false;\n\n    if (onScroll) {\n      onScroll(normalizeScrollEvent(e));\n    }\n  }\n\n  var hideScrollbar = showsHorizontalScrollIndicator === false || showsVerticalScrollIndicator === false;\n  return /*#__PURE__*/React.createElement(View, _extends({}, rest, {\n    onScroll: handleScroll,\n    onTouchMove: createPreventableScrollHandler(onTouchMove),\n    onWheel: createPreventableScrollHandler(onWheel),\n    ref: useMergeRefs(scrollRef, forwardedRef),\n    style: [style, !scrollEnabled && styles.scrollDisabled, hideScrollbar && styles.hideScrollbar]\n  }));\n}); // Chrome doesn't support e.preventDefault in this case; touch-action must be\n// used to disable scrolling.\n// https://developers.google.com/web/updates/2017/01/scrolling-intervention\n\nvar styles = StyleSheet.create({\n  scrollDisabled: {\n    overflowX: 'hidden',\n    overflowY: 'hidden',\n    touchAction: 'none'\n  },\n  hideScrollbar: {\n    scrollbarWidth: 'none'\n  }\n});\nexport default ScrollViewBase;"]},"metadata":{},"sourceType":"module"}