repoweaver
Version:
A GitHub App that skillfully weaves multiple templates together to create and update repositories with intelligent merge strategies
1 lines • 64.6 kB
JSON
{"ast":null,"code":"'use client';\n\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nfunction _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"contentContainerStyle\", \"horizontal\", \"onContentSizeChange\", \"refreshControl\", \"stickyHeaderIndices\", \"pagingEnabled\", \"forwardedRef\", \"keyboardDismissMode\", \"onScroll\", \"centerContent\"];\nimport Dimensions from \"../Dimensions\";\nimport dismissKeyboard from \"../../modules/dismissKeyboard\";\nimport invariant from 'fbjs/lib/invariant';\nimport mergeRefs from \"../../modules/mergeRefs\";\nimport Platform from \"../Platform\";\nimport ScrollViewBase from \"./ScrollViewBase\";\nimport StyleSheet from \"../StyleSheet\";\nimport TextInputState from \"../../modules/TextInputState\";\nimport UIManager from \"../UIManager\";\nimport View from \"../View\";\nimport React from 'react';\nimport warning from 'fbjs/lib/warning';\nvar emptyObject = {};\nvar IS_ANIMATING_TOUCH_START_THRESHOLD_MS = 16;\nvar ScrollView = function (_React$Component) {\n function ScrollView() {\n var _this;\n _classCallCheck(this, ScrollView);\n _this = _callSuper(this, ScrollView, arguments);\n _this._scrollNodeRef = null;\n _this._innerViewRef = null;\n _this.isTouching = false;\n _this.lastMomentumScrollBeginTime = 0;\n _this.lastMomentumScrollEndTime = 0;\n _this.observedScrollSinceBecomingResponder = false;\n _this.becameResponderWhileAnimating = false;\n _this.scrollResponderHandleScrollShouldSetResponder = function () {\n return _this.isTouching;\n };\n _this.scrollResponderHandleStartShouldSetResponderCapture = function (e) {\n return _this.scrollResponderIsAnimating();\n };\n _this.scrollResponderHandleTerminationRequest = function () {\n return !_this.observedScrollSinceBecomingResponder;\n };\n _this.scrollResponderHandleTouchEnd = function (e) {\n var nativeEvent = e.nativeEvent;\n _this.isTouching = nativeEvent.touches.length !== 0;\n _this.props.onTouchEnd && _this.props.onTouchEnd(e);\n };\n _this.scrollResponderHandleResponderRelease = function (e) {\n _this.props.onResponderRelease && _this.props.onResponderRelease(e);\n var currentlyFocusedTextInput = TextInputState.currentlyFocusedField();\n if (!_this.props.keyboardShouldPersistTaps && currentlyFocusedTextInput != null && e.target !== currentlyFocusedTextInput && !_this.observedScrollSinceBecomingResponder && !_this.becameResponderWhileAnimating) {\n _this.props.onScrollResponderKeyboardDismissed && _this.props.onScrollResponderKeyboardDismissed(e);\n TextInputState.blurTextInput(currentlyFocusedTextInput);\n }\n };\n _this.scrollResponderHandleScroll = function (e) {\n _this.observedScrollSinceBecomingResponder = true;\n _this.props.onScroll && _this.props.onScroll(e);\n };\n _this.scrollResponderHandleResponderGrant = function (e) {\n _this.observedScrollSinceBecomingResponder = false;\n _this.props.onResponderGrant && _this.props.onResponderGrant(e);\n _this.becameResponderWhileAnimating = _this.scrollResponderIsAnimating();\n };\n _this.scrollResponderHandleScrollBeginDrag = function (e) {\n _this.props.onScrollBeginDrag && _this.props.onScrollBeginDrag(e);\n };\n _this.scrollResponderHandleScrollEndDrag = function (e) {\n _this.props.onScrollEndDrag && _this.props.onScrollEndDrag(e);\n };\n _this.scrollResponderHandleMomentumScrollBegin = function (e) {\n _this.lastMomentumScrollBeginTime = Date.now();\n _this.props.onMomentumScrollBegin && _this.props.onMomentumScrollBegin(e);\n };\n _this.scrollResponderHandleMomentumScrollEnd = function (e) {\n _this.lastMomentumScrollEndTime = Date.now();\n _this.props.onMomentumScrollEnd && _this.props.onMomentumScrollEnd(e);\n };\n _this.scrollResponderHandleTouchStart = function (e) {\n _this.isTouching = true;\n _this.props.onTouchStart && _this.props.onTouchStart(e);\n };\n _this.scrollResponderHandleTouchMove = function (e) {\n _this.props.onTouchMove && _this.props.onTouchMove(e);\n };\n _this.scrollResponderIsAnimating = function () {\n var now = Date.now();\n var timeSinceLastMomentumScrollEnd = now - _this.lastMomentumScrollEndTime;\n var isAnimating = timeSinceLastMomentumScrollEnd < IS_ANIMATING_TOUCH_START_THRESHOLD_MS || _this.lastMomentumScrollEndTime < _this.lastMomentumScrollBeginTime;\n return isAnimating;\n };\n _this.scrollResponderScrollTo = function (x, y, animated) {\n if (typeof x === 'number') {\n console.warn('`scrollResponderScrollTo(x, y, animated)` is deprecated. Use `scrollResponderScrollTo({x: 5, y: 5, animated: true})` instead.');\n } else {\n var _ref = x || emptyObject;\n x = _ref.x;\n y = _ref.y;\n animated = _ref.animated;\n }\n var node = _this.getScrollableNode();\n var left = x || 0;\n var top = y || 0;\n if (node != null) {\n if (typeof node.scroll === 'function') {\n node.scroll({\n top: top,\n left: left,\n behavior: !animated ? 'auto' : 'smooth'\n });\n } else {\n node.scrollLeft = left;\n node.scrollTop = top;\n }\n }\n };\n _this.scrollResponderZoomTo = function (rect, animated) {\n if (Platform.OS !== 'ios') {\n invariant('zoomToRect is not implemented');\n }\n };\n _this.scrollResponderScrollNativeHandleToKeyboard = function (nodeHandle, additionalOffset, preventNegativeScrollOffset) {\n _this.additionalScrollOffset = additionalOffset || 0;\n _this.preventNegativeScrollOffset = !!preventNegativeScrollOffset;\n UIManager.measureLayout(nodeHandle, _this.getInnerViewNode(), _this.scrollResponderTextInputFocusError, _this.scrollResponderInputMeasureAndScrollToKeyboard);\n };\n _this.scrollResponderInputMeasureAndScrollToKeyboard = function (left, top, width, height) {\n var keyboardScreenY = Dimensions.get('window').height;\n if (_this.keyboardWillOpenTo) {\n keyboardScreenY = _this.keyboardWillOpenTo.endCoordinates.screenY;\n }\n var scrollOffsetY = top - keyboardScreenY + height + _this.additionalScrollOffset;\n if (_this.preventNegativeScrollOffset) {\n scrollOffsetY = Math.max(0, scrollOffsetY);\n }\n _this.scrollResponderScrollTo({\n x: 0,\n y: scrollOffsetY,\n animated: true\n });\n _this.additionalOffset = 0;\n _this.preventNegativeScrollOffset = false;\n };\n _this.scrollResponderKeyboardWillShow = function (e) {\n _this.keyboardWillOpenTo = e;\n _this.props.onKeyboardWillShow && _this.props.onKeyboardWillShow(e);\n };\n _this.scrollResponderKeyboardWillHide = function (e) {\n _this.keyboardWillOpenTo = null;\n _this.props.onKeyboardWillHide && _this.props.onKeyboardWillHide(e);\n };\n _this.scrollResponderKeyboardDidShow = function (e) {\n if (e) {\n _this.keyboardWillOpenTo = e;\n }\n _this.props.onKeyboardDidShow && _this.props.onKeyboardDidShow(e);\n };\n _this.scrollResponderKeyboardDidHide = function (e) {\n _this.keyboardWillOpenTo = null;\n _this.props.onKeyboardDidHide && _this.props.onKeyboardDidHide(e);\n };\n _this.flashScrollIndicators = function () {\n _this.scrollResponderFlashScrollIndicators();\n };\n _this.getScrollResponder = function () {\n return _this;\n };\n _this.getScrollableNode = function () {\n return _this._scrollNodeRef;\n };\n _this.getInnerViewRef = function () {\n return _this._innerViewRef;\n };\n _this.getInnerViewNode = function () {\n return _this._innerViewRef;\n };\n _this.getNativeScrollRef = function () {\n return _this._scrollNodeRef;\n };\n _this.scrollTo = function (y, x, animated) {\n if (typeof y === 'number') {\n console.warn('`scrollTo(y, x, animated)` is deprecated. Use `scrollTo({x: 5, y: 5, animated: true})` instead.');\n } else {\n var _ref2 = y || emptyObject;\n x = _ref2.x;\n y = _ref2.y;\n animated = _ref2.animated;\n }\n _this.scrollResponderScrollTo({\n x: x || 0,\n y: y || 0,\n animated: animated !== false\n });\n };\n _this.scrollToEnd = function (options) {\n var animated = (options && options.animated) !== false;\n var horizontal = _this.props.horizontal;\n var scrollResponderNode = _this.getScrollableNode();\n var x = horizontal ? scrollResponderNode.scrollWidth : 0;\n var y = horizontal ? 0 : scrollResponderNode.scrollHeight;\n _this.scrollResponderScrollTo({\n x: x,\n y: y,\n animated: animated\n });\n };\n _this._handleContentOnLayout = function (e) {\n var _e$nativeEvent$layout = e.nativeEvent.layout,\n width = _e$nativeEvent$layout.width,\n height = _e$nativeEvent$layout.height;\n _this.props.onContentSizeChange(width, height);\n };\n _this._handleScroll = function (e) {\n if (process.env.NODE_ENV !== 'production') {\n if (_this.props.onScroll && _this.props.scrollEventThrottle == null) {\n console.log('You specified `onScroll` on a <ScrollView> but not ' + '`scrollEventThrottle`. You will only receive one event. ' + 'Using `16` you get all the events but be aware that it may ' + \"cause frame drops, use a bigger number if you don't need as \" + 'much precision.');\n }\n }\n if (_this.props.keyboardDismissMode === 'on-drag') {\n dismissKeyboard();\n }\n _this.scrollResponderHandleScroll(e);\n };\n _this._setInnerViewRef = function (node) {\n _this._innerViewRef = node;\n };\n _this._setScrollNodeRef = function (node) {\n _this._scrollNodeRef = node;\n if (node != null) {\n node.getScrollResponder = _this.getScrollResponder;\n node.getInnerViewNode = _this.getInnerViewNode;\n node.getInnerViewRef = _this.getInnerViewRef;\n node.getNativeScrollRef = _this.getNativeScrollRef;\n node.getScrollableNode = _this.getScrollableNode;\n node.scrollTo = _this.scrollTo;\n node.scrollToEnd = _this.scrollToEnd;\n node.flashScrollIndicators = _this.flashScrollIndicators;\n node.scrollResponderZoomTo = _this.scrollResponderZoomTo;\n node.scrollResponderScrollNativeHandleToKeyboard = _this.scrollResponderScrollNativeHandleToKeyboard;\n }\n var ref = mergeRefs(_this.props.forwardedRef);\n ref(node);\n };\n return _this;\n }\n _inherits(ScrollView, _React$Component);\n return _createClass(ScrollView, [{\n key: \"scrollResponderHandleStartShouldSetResponder\",\n value: function scrollResponderHandleStartShouldSetResponder() {\n return false;\n }\n }, {\n key: \"scrollResponderHandleResponderReject\",\n value: function scrollResponderHandleResponderReject() {\n warning(false, \"ScrollView doesn't take rejection well - scrolls anyway\");\n }\n }, {\n key: \"scrollResponderFlashScrollIndicators\",\n value: function scrollResponderFlashScrollIndicators() {}\n }, {\n key: \"scrollResponderTextInputFocusError\",\n value: function scrollResponderTextInputFocusError(e) {\n console.error('Error measuring text field: ', e);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n contentContainerStyle = _this$props.contentContainerStyle,\n horizontal = _this$props.horizontal,\n onContentSizeChange = _this$props.onContentSizeChange,\n refreshControl = _this$props.refreshControl,\n stickyHeaderIndices = _this$props.stickyHeaderIndices,\n pagingEnabled = _this$props.pagingEnabled,\n forwardedRef = _this$props.forwardedRef,\n keyboardDismissMode = _this$props.keyboardDismissMode,\n onScroll = _this$props.onScroll,\n centerContent = _this$props.centerContent,\n other = _objectWithoutPropertiesLoose(_this$props, _excluded);\n if (process.env.NODE_ENV !== 'production' && this.props.style) {\n var style = StyleSheet.flatten(this.props.style);\n var childLayoutProps = ['alignItems', 'justifyContent'].filter(function (prop) {\n return style && style[prop] !== undefined;\n });\n invariant(childLayoutProps.length === 0, \"ScrollView child layout (\" + JSON.stringify(childLayoutProps) + \") \" + 'must be applied through the contentContainerStyle prop.');\n }\n var contentSizeChangeProps = {};\n if (onContentSizeChange) {\n contentSizeChangeProps = {\n onLayout: this._handleContentOnLayout\n };\n }\n var hasStickyHeaderIndices = !horizontal && Array.isArray(stickyHeaderIndices);\n var children = hasStickyHeaderIndices || pagingEnabled ? React.Children.map(this.props.children, function (child, i) {\n var isSticky = hasStickyHeaderIndices && stickyHeaderIndices.indexOf(i) > -1;\n if (child != null && (isSticky || pagingEnabled)) {\n return React.createElement(View, {\n style: [isSticky && styles.stickyHeader, pagingEnabled && styles.pagingEnabledChild]\n }, child);\n } else {\n return child;\n }\n }) : this.props.children;\n var contentContainer = React.createElement(View, _extends({}, contentSizeChangeProps, {\n children: children,\n collapsable: false,\n ref: this._setInnerViewRef,\n style: [horizontal && styles.contentContainerHorizontal, centerContent && styles.contentContainerCenterContent, contentContainerStyle]\n }));\n var baseStyle = horizontal ? styles.baseHorizontal : styles.baseVertical;\n var pagingEnabledStyle = horizontal ? styles.pagingEnabledHorizontal : styles.pagingEnabledVertical;\n var props = _objectSpread(_objectSpread({}, other), {}, {\n style: [baseStyle, pagingEnabled && pagingEnabledStyle, this.props.style],\n onTouchStart: this.scrollResponderHandleTouchStart,\n onTouchMove: this.scrollResponderHandleTouchMove,\n onTouchEnd: this.scrollResponderHandleTouchEnd,\n onScrollBeginDrag: this.scrollResponderHandleScrollBeginDrag,\n onScrollEndDrag: this.scrollResponderHandleScrollEndDrag,\n onMomentumScrollBegin: this.scrollResponderHandleMomentumScrollBegin,\n onMomentumScrollEnd: this.scrollResponderHandleMomentumScrollEnd,\n onStartShouldSetResponder: this.scrollResponderHandleStartShouldSetResponder,\n onStartShouldSetResponderCapture: this.scrollResponderHandleStartShouldSetResponderCapture,\n onScrollShouldSetResponder: this.scrollResponderHandleScrollShouldSetResponder,\n onScroll: this._handleScroll,\n onResponderGrant: this.scrollResponderHandleResponderGrant,\n onResponderTerminationRequest: this.scrollResponderHandleTerminationRequest,\n onResponderTerminate: this.scrollResponderHandleTerminate,\n onResponderRelease: this.scrollResponderHandleResponderRelease,\n onResponderReject: this.scrollResponderHandleResponderReject\n });\n var ScrollViewClass = ScrollViewBase;\n invariant(ScrollViewClass !== undefined, 'ScrollViewClass must not be undefined');\n var scrollView = React.createElement(ScrollViewClass, _extends({}, props, {\n ref: this._setScrollNodeRef\n }), contentContainer);\n if (refreshControl) {\n return React.cloneElement(refreshControl, {\n style: props.style\n }, scrollView);\n }\n return scrollView;\n }\n }]);\n}(React.Component);\nvar commonStyle = {\n flexGrow: 1,\n flexShrink: 1,\n transform: 'translateZ(0)',\n WebkitOverflowScrolling: 'touch'\n};\nvar styles = StyleSheet.create({\n baseVertical: _objectSpread(_objectSpread({}, commonStyle), {}, {\n flexDirection: 'column',\n overflowX: 'hidden',\n overflowY: 'auto'\n }),\n baseHorizontal: _objectSpread(_objectSpread({}, commonStyle), {}, {\n flexDirection: 'row',\n overflowX: 'auto',\n overflowY: 'hidden'\n }),\n contentContainerHorizontal: {\n flexDirection: 'row'\n },\n contentContainerCenterContent: {\n justifyContent: 'center',\n flexGrow: 1\n },\n stickyHeader: {\n position: 'sticky',\n top: 0,\n zIndex: 10\n },\n pagingEnabledHorizontal: {\n scrollSnapType: 'x mandatory'\n },\n pagingEnabledVertical: {\n scrollSnapType: 'y mandatory'\n },\n pagingEnabledChild: {\n scrollSnapAlign: 'start'\n }\n});\nvar ForwardedScrollView = React.forwardRef(function (props, forwardedRef) {\n return React.createElement(ScrollView, _extends({}, props, {\n forwardedRef: forwardedRef\n }));\n});\nForwardedScrollView.displayName = 'ScrollView';\nexport default ForwardedScrollView;","map":{"version":3,"names":["_classCallCheck","_createClass","_possibleConstructorReturn","_getPrototypeOf","_inherits","_callSuper","t","o","e","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","_objectSpread","_extends","_objectWithoutPropertiesLoose","_excluded","Dimensions","dismissKeyboard","invariant","mergeRefs","Platform","ScrollViewBase","StyleSheet","TextInputState","UIManager","View","React","warning","emptyObject","IS_ANIMATING_TOUCH_START_THRESHOLD_MS","ScrollView","_React$Component","_this","arguments","_scrollNodeRef","_innerViewRef","isTouching","lastMomentumScrollBeginTime","lastMomentumScrollEndTime","observedScrollSinceBecomingResponder","becameResponderWhileAnimating","scrollResponderHandleScrollShouldSetResponder","scrollResponderHandleStartShouldSetResponderCapture","scrollResponderIsAnimating","scrollResponderHandleTerminationRequest","scrollResponderHandleTouchEnd","nativeEvent","touches","length","props","onTouchEnd","scrollResponderHandleResponderRelease","onResponderRelease","currentlyFocusedTextInput","currentlyFocusedField","keyboardShouldPersistTaps","target","onScrollResponderKeyboardDismissed","blurTextInput","scrollResponderHandleScroll","onScroll","scrollResponderHandleResponderGrant","onResponderGrant","scrollResponderHandleScrollBeginDrag","onScrollBeginDrag","scrollResponderHandleScrollEndDrag","onScrollEndDrag","scrollResponderHandleMomentumScrollBegin","Date","now","onMomentumScrollBegin","scrollResponderHandleMomentumScrollEnd","onMomentumScrollEnd","scrollResponderHandleTouchStart","onTouchStart","scrollResponderHandleTouchMove","onTouchMove","timeSinceLastMomentumScrollEnd","isAnimating","scrollResponderScrollTo","x","y","animated","console","warn","_ref","node","getScrollableNode","left","top","scroll","behavior","scrollLeft","scrollTop","scrollResponderZoomTo","rect","OS","scrollResponderScrollNativeHandleToKeyboard","nodeHandle","additionalOffset","preventNegativeScrollOffset","additionalScrollOffset","measureLayout","getInnerViewNode","scrollResponderTextInputFocusError","scrollResponderInputMeasureAndScrollToKeyboard","width","height","keyboardScreenY","get","keyboardWillOpenTo","endCoordinates","screenY","scrollOffsetY","Math","max","scrollResponderKeyboardWillShow","onKeyboardWillShow","scrollResponderKeyboardWillHide","onKeyboardWillHide","scrollResponderKeyboardDidShow","onKeyboardDidShow","scrollResponderKeyboardDidHide","onKeyboardDidHide","flashScrollIndicators","scrollResponderFlashScrollIndicators","getScrollResponder","getInnerViewRef","getNativeScrollRef","scrollTo","_ref2","scrollToEnd","options","horizontal","scrollResponderNode","scrollWidth","scrollHeight","_handleContentOnLayout","_e$nativeEvent$layout","layout","onContentSizeChange","_handleScroll","process","env","NODE_ENV","scrollEventThrottle","log","keyboardDismissMode","_setInnerViewRef","_setScrollNodeRef","ref","forwardedRef","key","value","scrollResponderHandleStartShouldSetResponder","scrollResponderHandleResponderReject","error","render","_this$props","contentContainerStyle","refreshControl","stickyHeaderIndices","pagingEnabled","centerContent","other","style","flatten","childLayoutProps","filter","prop","undefined","JSON","stringify","contentSizeChangeProps","onLayout","hasStickyHeaderIndices","Array","isArray","children","Children","map","child","i","isSticky","indexOf","createElement","styles","stickyHeader","pagingEnabledChild","contentContainer","collapsable","contentContainerHorizontal","contentContainerCenterContent","baseStyle","baseHorizontal","baseVertical","pagingEnabledStyle","pagingEnabledHorizontal","pagingEnabledVertical","onStartShouldSetResponder","onStartShouldSetResponderCapture","onScrollShouldSetResponder","onResponderTerminationRequest","onResponderTerminate","scrollResponderHandleTerminate","onResponderReject","ScrollViewClass","scrollView","cloneElement","Component","commonStyle","flexGrow","flexShrink","transform","WebkitOverflowScrolling","create","flexDirection","overflowX","overflowY","justifyContent","position","zIndex","scrollSnapType","scrollSnapAlign","ForwardedScrollView","forwardRef","displayName"],"sources":["/Users/pmouli/Documents/GitHub.nosync/boots-strapper/mobile/node_modules/react-native-web/dist/exports/ScrollView/index.js"],"sourcesContent":["/**\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\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 */\n\n'use client';\n\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"contentContainerStyle\", \"horizontal\", \"onContentSizeChange\", \"refreshControl\", \"stickyHeaderIndices\", \"pagingEnabled\", \"forwardedRef\", \"keyboardDismissMode\", \"onScroll\", \"centerContent\"];\nimport Dimensions from '../Dimensions';\nimport dismissKeyboard from '../../modules/dismissKeyboard';\nimport invariant from 'fbjs/lib/invariant';\nimport mergeRefs from '../../modules/mergeRefs';\nimport Platform from '../Platform';\nimport ScrollViewBase from './ScrollViewBase';\nimport StyleSheet from '../StyleSheet';\nimport TextInputState from '../../modules/TextInputState';\nimport UIManager from '../UIManager';\nimport View from '../View';\nimport React from 'react';\nimport warning from 'fbjs/lib/warning';\nvar emptyObject = {};\nvar IS_ANIMATING_TOUCH_START_THRESHOLD_MS = 16;\nclass ScrollView extends React.Component {\n constructor() {\n super(...arguments);\n this._scrollNodeRef = null;\n this._innerViewRef = null;\n this.isTouching = false;\n this.lastMomentumScrollBeginTime = 0;\n this.lastMomentumScrollEndTime = 0;\n this.observedScrollSinceBecomingResponder = false;\n this.becameResponderWhileAnimating = false;\n this.scrollResponderHandleScrollShouldSetResponder = () => {\n return this.isTouching;\n };\n this.scrollResponderHandleStartShouldSetResponderCapture = e => {\n // First see if we want to eat taps while the keyboard is up\n // var currentlyFocusedTextInput = TextInputState.currentlyFocusedField();\n // if (!this.props.keyboardShouldPersistTaps &&\n // currentlyFocusedTextInput != null &&\n // e.target !== currentlyFocusedTextInput) {\n // return true;\n // }\n return this.scrollResponderIsAnimating();\n };\n this.scrollResponderHandleTerminationRequest = () => {\n return !this.observedScrollSinceBecomingResponder;\n };\n this.scrollResponderHandleTouchEnd = e => {\n var nativeEvent = e.nativeEvent;\n this.isTouching = nativeEvent.touches.length !== 0;\n this.props.onTouchEnd && this.props.onTouchEnd(e);\n };\n this.scrollResponderHandleResponderRelease = e => {\n this.props.onResponderRelease && this.props.onResponderRelease(e);\n\n // By default scroll views will unfocus a textField\n // if another touch occurs outside of it\n var currentlyFocusedTextInput = TextInputState.currentlyFocusedField();\n if (!this.props.keyboardShouldPersistTaps && currentlyFocusedTextInput != null && e.target !== currentlyFocusedTextInput && !this.observedScrollSinceBecomingResponder && !this.becameResponderWhileAnimating) {\n this.props.onScrollResponderKeyboardDismissed && this.props.onScrollResponderKeyboardDismissed(e);\n TextInputState.blurTextInput(currentlyFocusedTextInput);\n }\n };\n this.scrollResponderHandleScroll = e => {\n this.observedScrollSinceBecomingResponder = true;\n this.props.onScroll && this.props.onScroll(e);\n };\n this.scrollResponderHandleResponderGrant = e => {\n this.observedScrollSinceBecomingResponder = false;\n this.props.onResponderGrant && this.props.onResponderGrant(e);\n this.becameResponderWhileAnimating = this.scrollResponderIsAnimating();\n };\n this.scrollResponderHandleScrollBeginDrag = e => {\n this.props.onScrollBeginDrag && this.props.onScrollBeginDrag(e);\n };\n this.scrollResponderHandleScrollEndDrag = e => {\n this.props.onScrollEndDrag && this.props.onScrollEndDrag(e);\n };\n this.scrollResponderHandleMomentumScrollBegin = e => {\n this.lastMomentumScrollBeginTime = Date.now();\n this.props.onMomentumScrollBegin && this.props.onMomentumScrollBegin(e);\n };\n this.scrollResponderHandleMomentumScrollEnd = e => {\n this.lastMomentumScrollEndTime = Date.now();\n this.props.onMomentumScrollEnd && this.props.onMomentumScrollEnd(e);\n };\n this.scrollResponderHandleTouchStart = e => {\n this.isTouching = true;\n this.props.onTouchStart && this.props.onTouchStart(e);\n };\n this.scrollResponderHandleTouchMove = e => {\n this.props.onTouchMove && this.props.onTouchMove(e);\n };\n this.scrollResponderIsAnimating = () => {\n var now = Date.now();\n var timeSinceLastMomentumScrollEnd = now - this.lastMomentumScrollEndTime;\n var isAnimating = timeSinceLastMomentumScrollEnd < IS_ANIMATING_TOUCH_START_THRESHOLD_MS || this.lastMomentumScrollEndTime < this.lastMomentumScrollBeginTime;\n return isAnimating;\n };\n this.scrollResponderScrollTo = (x, y, animated) => {\n if (typeof x === 'number') {\n console.warn('`scrollResponderScrollTo(x, y, animated)` is deprecated. Use `scrollResponderScrollTo({x: 5, y: 5, animated: true})` instead.');\n } else {\n var _ref = x || emptyObject;\n x = _ref.x;\n y = _ref.y;\n animated = _ref.animated;\n }\n var node = this.getScrollableNode();\n var left = x || 0;\n var top = y || 0;\n if (node != null) {\n if (typeof node.scroll === 'function') {\n node.scroll({\n top,\n left,\n behavior: !animated ? 'auto' : 'smooth'\n });\n } else {\n node.scrollLeft = left;\n node.scrollTop = top;\n }\n }\n };\n this.scrollResponderZoomTo = (rect, animated) => {\n if (Platform.OS !== 'ios') {\n invariant('zoomToRect is not implemented');\n }\n };\n this.scrollResponderScrollNativeHandleToKeyboard = (nodeHandle, additionalOffset, preventNegativeScrollOffset) => {\n this.additionalScrollOffset = additionalOffset || 0;\n this.preventNegativeScrollOffset = !!preventNegativeScrollOffset;\n UIManager.measureLayout(nodeHandle, this.getInnerViewNode(), this.scrollResponderTextInputFocusError, this.scrollResponderInputMeasureAndScrollToKeyboard);\n };\n this.scrollResponderInputMeasureAndScrollToKeyboard = (left, top, width, height) => {\n var keyboardScreenY = Dimensions.get('window').height;\n if (this.keyboardWillOpenTo) {\n keyboardScreenY = this.keyboardWillOpenTo.endCoordinates.screenY;\n }\n var scrollOffsetY = top - keyboardScreenY + height + this.additionalScrollOffset;\n\n // By default, this can scroll with negative offset, pulling the content\n // down so that the target component's bottom meets the keyboard's top.\n // If requested otherwise, cap the offset at 0 minimum to avoid content\n // shifting down.\n if (this.preventNegativeScrollOffset) {\n scrollOffsetY = Math.max(0, scrollOffsetY);\n }\n this.scrollResponderScrollTo({\n x: 0,\n y: scrollOffsetY,\n animated: true\n });\n this.additionalOffset = 0;\n this.preventNegativeScrollOffset = false;\n };\n this.scrollResponderKeyboardWillShow = e => {\n this.keyboardWillOpenTo = e;\n this.props.onKeyboardWillShow && this.props.onKeyboardWillShow(e);\n };\n this.scrollResponderKeyboardWillHide = e => {\n this.keyboardWillOpenTo = null;\n this.props.onKeyboardWillHide && this.props.onKeyboardWillHide(e);\n };\n this.scrollResponderKeyboardDidShow = e => {\n // TODO(7693961): The event for DidShow is not available on iOS yet.\n // Use the one from WillShow and do not assign.\n if (e) {\n this.keyboardWillOpenTo = e;\n }\n this.props.onKeyboardDidShow && this.props.onKeyboardDidShow(e);\n };\n this.scrollResponderKeyboardDidHide = e => {\n this.keyboardWillOpenTo = null;\n this.props.onKeyboardDidHide && this.props.onKeyboardDidHide(e);\n };\n this.flashScrollIndicators = () => {\n this.scrollResponderFlashScrollIndicators();\n };\n this.getScrollResponder = () => {\n return this;\n };\n this.getScrollableNode = () => {\n return this._scrollNodeRef;\n };\n this.getInnerViewRef = () => {\n return this._innerViewRef;\n };\n this.getInnerViewNode = () => {\n return this._innerViewRef;\n };\n this.getNativeScrollRef = () => {\n return this._scrollNodeRef;\n };\n this.scrollTo = (y, x, animated) => {\n if (typeof y === 'number') {\n console.warn('`scrollTo(y, x, animated)` is deprecated. Use `scrollTo({x: 5, y: 5, animated: true})` instead.');\n } else {\n var _ref2 = y || emptyObject;\n x = _ref2.x;\n y = _ref2.y;\n animated = _ref2.animated;\n }\n this.scrollResponderScrollTo({\n x: x || 0,\n y: y || 0,\n animated: animated !== false\n });\n };\n this.scrollToEnd = options => {\n // Default to true\n var animated = (options && options.animated) !== false;\n var horizontal = this.props.horizontal;\n var scrollResponderNode = this.getScrollableNode();\n var x = horizontal ? scrollResponderNode.scrollWidth : 0;\n var y = horizontal ? 0 : scrollResponderNode.scrollHeight;\n this.scrollResponderScrollTo({\n x,\n y,\n animated\n });\n };\n this._handleContentOnLayout = e => {\n var _e$nativeEvent$layout = e.nativeEvent.layout,\n width = _e$nativeEvent$layout.width,\n height = _e$nativeEvent$layout.height;\n this.props.onContentSizeChange(width, height);\n };\n this._handleScroll = e => {\n if (process.env.NODE_ENV !== 'production') {\n if (this.props.onScroll && this.props.scrollEventThrottle == null) {\n console.log('You specified `onScroll` on a <ScrollView> but not ' + '`scrollEventThrottle`. You will only receive one event. ' + 'Using `16` you get all the events but be aware that it may ' + \"cause frame drops, use a bigger number if you don't need as \" + 'much precision.');\n }\n }\n if (this.props.keyboardDismissMode === 'on-drag') {\n dismissKeyboard();\n }\n this.scrollResponderHandleScroll(e);\n };\n this._setInnerViewRef = node => {\n this._innerViewRef = node;\n };\n this._setScrollNodeRef = node => {\n this._scrollNodeRef = node;\n // ScrollView needs to add more methods to the hostNode in addition to those\n // added by `usePlatformMethods`. This is temporarily until an API like\n // `ScrollView.scrollTo(hostNode, { x, y })` is added to React Native.\n if (node != null) {\n node.getScrollResponder = this.getScrollResponder;\n node.getInnerViewNode = this.getInnerViewNode;\n node.getInnerViewRef = this.getInnerViewRef;\n node.getNativeScrollRef = this.getNativeScrollRef;\n node.getScrollableNode = this.getScrollableNode;\n node.scrollTo = this.scrollTo;\n node.scrollToEnd = this.scrollToEnd;\n node.flashScrollIndicators = this.flashScrollIndicators;\n node.scrollResponderZoomTo = this.scrollResponderZoomTo;\n node.scrollResponderScrollNativeHandleToKeyboard = this.scrollResponderScrollNativeHandleToKeyboard;\n }\n var ref = mergeRefs(this.props.forwardedRef);\n ref(node);\n };\n }\n /**\n * ------------------------------------------------------\n * START SCROLLRESPONDER\n * ------------------------------------------------------\n */\n // Reset to false every time becomes responder. This is used to:\n // - Determine if the scroll view has been scrolled and therefore should\n // refuse to give up its responder lock.\n // - Determine if releasing should dismiss the keyboard when we are in\n // tap-to-dismiss mode (!this.props.keyboardShouldPersistTaps).\n /**\n * Invoke this from an `onScroll` event.\n */\n /**\n * Merely touch starting is not sufficient for a scroll view to become the\n * responder. Being the \"responder\" means that the very next touch move/end\n * event will result in an action/movement.\n *\n * Invoke this from an `onStartShouldSetResponder` event.\n *\n * `onStartShouldSetResponder` is used when the next move/end will trigger\n * some UI movement/action, but when you want to yield priority to views\n * nested inside of the view.\n *\n * There may be some cases where scroll views actually should return `true`\n * from `onStartShouldSetResponder`: Any time we are detecting a standard tap\n * that gives priority to nested views.\n *\n * - If a single tap on the scroll view triggers an action such as\n * recentering a map style view yet wants to give priority to interaction\n * views inside (such as dropped pins or labels), then we would return true\n * from this method when there is a single touch.\n *\n * - Similar to the previous case, if a two finger \"tap\" should trigger a\n * zoom, we would check the `touches` count, and if `>= 2`, we would return\n * true.\n *\n */\n scrollResponderHandleStartShouldSetResponder() {\n return false;\n }\n\n /**\n * There are times when the scroll view wants to become the responder\n * (meaning respond to the next immediate `touchStart/touchEnd`), in a way\n * that *doesn't* give priority to nested views (hence the capture phase):\n *\n * - Currently animating.\n * - Tapping anywhere that is not the focused input, while the keyboard is\n * up (which should dismiss the keyboard).\n *\n * Invoke this from an `onStartShouldSetResponderCapture` event.\n */\n\n /**\n * Invoke this from an `onResponderReject` event.\n *\n * Some other element is not yielding its role as responder. Normally, we'd\n * just disable the `UIScrollView`, but a touch has already began on it, the\n * `UIScrollView` will not accept being disabled after that. The easiest\n * solution for now is to accept the limitation of disallowing this\n * altogether. To improve this, find a way to disable the `UIScrollView` after\n * a touch has already started.\n */\n scrollResponderHandleResponderReject() {\n warning(false, \"ScrollView doesn't take rejection well - scrolls anyway\");\n }\n\n /**\n * We will allow the scroll view to give up its lock iff it acquired the lock\n * during an animation. This is a very useful default that happens to satisfy\n * many common user experiences.\n *\n * - Stop a scroll on the left edge, then turn that into an outer view's\n * backswipe.\n * - Stop a scroll mid-bounce at the top, continue pulling to have the outer\n * view dismiss.\n * - However, without catching the scroll view mid-bounce (while it is\n * motionless), if you drag far enough for the scroll view to become\n * responder (and therefore drag the scroll view a bit), any backswipe\n * navigation of a swipe gesture higher in the view hierarchy, should be\n * rejected.\n */\n\n /**\n * Invoke this from an `onTouchEnd` event.\n *\n * @param {SyntheticEvent} e Event.\n */\n\n /**\n * Invoke this from an `onResponderRelease` event.\n */\n\n /**\n * Invoke this from an `onResponderGrant` event.\n */\n\n /**\n * Unfortunately, `onScrollBeginDrag` also fires when *stopping* the scroll\n * animation, and there's not an easy way to distinguish a drag vs. stopping\n * momentum.\n *\n * Invoke this from an `onScrollBeginDrag` event.\n */\n\n /**\n * Invoke this from an `onScrollEndDrag` event.\n */\n\n /**\n * Invoke this from an `onMomentumScrollBegin` event.\n */\n\n /**\n * Invoke this from an `onMomentumScrollEnd` event.\n */\n\n /**\n * Invoke this from an `onTouchStart` event.\n *\n * Since we know that the `SimpleEventPlugin` occurs later in the plugin\n * order, after `ResponderEventPlugin`, we can detect that we were *not*\n * permitted to be the responder (presumably because a contained view became\n * responder). The `onResponderReject` won't fire in that case - it only\n * fires when a *current* responder rejects our request.\n *\n * @param {SyntheticEvent} e Touch Start event.\n */\n\n /**\n * Invoke this from an `onTouchMove` event.\n *\n * Since we know that the `SimpleEventPlugin` occurs later in the plugin\n * order, after `ResponderEventPlugin`, we can detect that we were *not*\n * permitted to be the responder (presumably because a contained view became\n * responder). The `onResponderReject` won't fire in that case - it only\n * fires when a *current* responder rejects our request.\n *\n * @param {SyntheticEvent} e Touch Start event.\n */\n\n /**\n * A helper function for this class that lets us quickly determine if the\n * view is currently animating. This is particularly useful to know when\n * a touch has just started or ended.\n */\n\n /**\n * A helper function to scroll to a specific point in the scrollview.\n * This is currently used to help focus on child textviews, but can also\n * be used to quickly scroll to any element we want to focus. Syntax:\n *\n * scrollResponderScrollTo(options: {x: number = 0; y: number = 0; animated: boolean = true})\n *\n * Note: The weird argument signature is due to the fact that, for historical reasons,\n * the function also accepts separate arguments as as alternative to the options object.\n * This is deprecated due to ambiguity (y before x), and SHOULD NOT BE USED.\n */\n\n /**\n * A helper function to zoom to a specific rect in the scrollview. The argument has the shape\n * {x: number; y: number; width: number; height: number; animated: boolean = true}\n *\n * @platform ios\n */\n\n /**\n * Displays the scroll indicators momentarily.\n */\n scrollResponderFlashScrollIndicators() {}\n\n /**\n * This method should be used as the callback to onFocus in a TextInputs'\n * parent view. Note that any module using this mixin needs to return\n * the parent view's ref in getScrollViewRef() in order to use this method.\n * @param {any} nodeHandle The TextInput node handle\n * @param {number} additionalOffset The scroll view's top \"contentInset\".\n * Default is 0.\n * @param {bool} preventNegativeScrolling Whether to allow pulling the content\n * down to make it meet the keyboard's top. Default is false.\n */\n\n /**\n * The calculations performed here assume the scroll view takes up the entire\n * screen - even if has some content inset. We then measure the offsets of the\n * keyboard, and compensate both for the scroll view's \"contentInset\".\n *\n * @param {number} left Position of input w.r.t. table view.\n * @param {number} top Position of input w.r.t. table view.\n * @param {number} width Width of the text input.\n * @param {number} height Height of the text input.\n */\n\n scrollResponderTextInputFocusError(e) {\n console.error('Error measuring text field: ', e);\n }\n\n /**\n * Warning, this may be called several times for a single keyboard opening.\n * It's best to store the information in this method and then take any action\n * at a later point (either in `keyboardDidShow` or other).\n *\n * Here's the order that events occur in:\n * - focus\n * - willShow {startCoordinates, endCoordinates} several times\n * - didShow several times\n * - blur\n * - willHide {startCoordinates, endCoordinates} several times\n * - didHide several times\n *\n * The `ScrollResponder` providesModule callbacks for each of these events.\n * Even though any user could have easily listened to keyboard events\n * themselves, using these `props` callbacks ensures that ordering of events\n * is consistent - and not dependent on the order that the keyboard events are\n * subscribed to. This matters when telling the scroll view to scroll to where\n * the keyboard is headed - the scroll responder better have been notified of\n * the keyboard destination before being instructed to scroll to where the\n * keyboard will be. Stick to the `ScrollResponder` callbacks, and everything\n * will work.\n *\n * WARNING: These callbacks will fire even if a keyboard is displayed in a\n * different navigation pane. Filter out the events to determine if they are\n * relevant to you. (For example, only if you receive these callbacks after\n * you had explicitly focused a node etc).\n */\n\n /**\n * ------------------------------------------------------\n * END SCROLLRESPONDER\n * ------------------------------------------------------\n */\n\n /**\n * Returns a reference to the underlying scroll responder, which supports\n * operations like `scrollTo`. All ScrollView-like components should\n * implement this method so that they can be composed while providing access\n * to the underlying scroll responder's methods.\n */\n\n /**\n * Scrolls to a given x, y offset, either immediately or with a smooth animation.\n * Syntax:\n *\n * scrollTo(options: {x: number = 0; y: number = 0; animated: boolean = true})\n *\n * Note: The weird argument signature is due to the fact that, for historical reasons,\n * the function also accepts separate arguments as as alternative to the options object.\n * This is deprecated due to ambiguity (y before x), and SHOULD NOT BE USED.\n */\n\n /**\n * If this is a vertical ScrollView scrolls to the bottom.\n * If this is a horizontal ScrollView scrolls to the right.\n *\n * Use `scrollToEnd({ animated: true })` for smooth animated scrolling,\n * `scrollToEnd({ animated: false })` for immediate scrolling.\n * If no options are passed, `animated` defaults to true.\n */\n\n render() {\n var _this$props = this.props,\n contentContainerStyle = _this$props.contentContainerStyle,\n horizontal = _this$props.horizontal,\n onContentSizeChange = _this$props.onContentSizeChange,\n refreshControl = _this$props.refreshControl,\n stickyHeaderIndices = _this$props.stickyHeaderIndices,\n pagingEnabled = _this$props.pagingEnabled,\n forwardedRef = _this$props.forwardedRef,\n keyboardDismissMode = _this$props.keyboardDismissMode,\n onScroll = _this$props.onScroll,\n centerContent = _this$props.centerContent,\n other = _objectWithoutPropertiesLoose(_this$props, _excluded);\n if (process.env.NODE_ENV !== 'production' && this.props.style) {\n var style = StyleSheet.flatten(this.props.style);\n var childLayoutProps = ['alignItems', 'justifyContent'].filter(prop => style && style[prop] !== undefined);\n invariant(childLayoutProps.length === 0, \"ScrollView child layout (\" + JSON.stringify(childLayoutProps) + \") \" + 'must be applied through the contentContainerStyle prop.');\n }\n var contentSizeChangeProps = {};\n if (onContentSizeChange) {\n contentSizeChangeProps = {\n onLayout: this._handleContentOnLayout\n };\n }\n var hasStickyHeaderIndices = !horizontal && Array.isArray(stickyHeaderIndices);\n var children = hasStickyHeaderIndices || pagingEnabled ? React.Children.map(this.props.children, (child, i) => {\n var isSticky = hasStickyHeaderIndices && stickyHeaderIndices.indexOf(i) > -1;\n if (child != null && (isSticky || pagingEnabled)) {\n return /*#__PURE__*/React.createElement(View, {\n style: [isSticky && styles.stickyHeader, pagingEnabled && styles.pagingEnabledChild]\n }, child);\n } else {\n return child;\n }\n }) : this.props.children;\n var contentContainer = /*#__PURE__*/React.createElement(View, _extends({}, contentSizeChangeProps, {\n children: children,\n collapsable: false,\n ref: this._setInnerViewRef,\n style: [horizontal && styles.contentContainerHorizontal, centerContent && styles.contentContainerCenterContent, contentContainerStyle]\n }));\n var baseStyle = horizontal ? styles.baseHorizontal : styles.baseVertical;\n var pagingEnabledStyle = horizontal ? styles.pagingEnabledHorizontal : styles.pagingEnabledVertical;\n var props = _objectSpread(_objectSpread({}, other), {}, {\n style: [baseStyle, pagingEnabled && pagingEnabledStyle, this.props.style],\n onTouchStart: this.scrollResponderHandleTouchStart,\n onTouchMove: this.scrollResponderHandleTouchMove,\n onTouchEnd: this.scrollResponderHandleTouchEnd,\n onScrollBeginDrag: this.scrollResponderHandleScrollBeginDrag,\n onScrollEndDrag: this.scrollResponderHandleScrollEndDrag,\n onMomentumScrollBegin: this.scrollResponderHandleMomentumScrollBegin,\n onMomentumScrollEnd: this.scrollResponderHandleMomentumScrollEnd,\n onStartShouldSetResponder: this.scrollResponderHandleStartShouldSetResponder,\n onStartShouldSetResponderCapture: this.scrollResponderHandleStartShouldSetResponderCapture,\n onScrollShouldSetResponder: this.scrollResponderHandleScrollShouldSetResponder,\n onScroll: this._handleScroll,\n onResponderGrant: this.scrollResponderHandleResponderGrant,\n onResponderTerminationRequest: this.scrollResponderHandleTerminationRequest,\n onResponderTerminate: this.scrollResponderHandleTerminate,\n onResponderRelease: this.scrollResponderHandleResponderRelease,\n onResponderReject: this.scrollResponderHandleResponderReject\n });\n var ScrollViewClass = ScrollViewBase;\n invariant(ScrollViewClass !== undefined, 'ScrollViewClass must not be undefined');\n var scrollView = /*#__PURE__*/React.createElement(ScrollViewClass, _extends({}, props, {\n ref: this._setScrollNodeRef\n }), contentContainer);\n if (refreshControl) {\n return /*#__PURE__*/React.cloneElement(refreshControl, {\n style: props.style\n }, scrollView);\n }\n return scrollView;\n }\n}\nvar commonStyle = {\n flexGrow: 1,\n flexShrink: 1,\n // Enable hardware compositing in modern browsers.\n // Creates a new layer with its own backing surface that can significantly\n // improve scroll performance.\n transform: 'translateZ(0)',\n // iOS native scrolling\n WebkitOverflowScrolling: 'touch'\n};\nvar styles = StyleSheet.create({\n baseVertical: _objectSpread(_objectSpread({}, commonStyle), {}, {\n flexDirection: 'column',\n overflowX: 'hidden',\n overflowY: 'auto'\n }),\n baseHorizontal: _objectSpread(_objectSpread({}, commonStyle), {}, {\n flexDirection: 'row',\n overflowX: 'auto',\n overflowY: 'hidden'\n }),\n contentContainerHorizontal: {\n flexDirection: 'row'\n },\n contentContainerCenterContent: {\n justifyContent: 'center',\n flexGrow: 1\n },\n stickyHeader: {\n position: 'sticky',\n top: 0,\n zIndex: 10\n },\n pagingEnabledHorizontal: {\n scrollSnapType: 'x mandatory'\n },\n pagingEnabledVertical: {\n scrollSnapType: 'y mandatory'\n },\n pagingEnabledChild: {\n scrollSnapAlign: 'start'\n }\n});\nvar ForwardedScrollView = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n return /*#__PURE__*/React.createElement(ScrollView, _extends({}, props, {\n forwardedRef: forwardedRef\n }));\n});\nForwardedScrollView.displayName = 'ScrollView';\nexport default ForwardedScrollView;"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}