{"ast":null,"code":"import * as React from 'react';\nimport * as ResponderSystem from \"./ResponderSystem\";\nvar emptyObject = {};\nvar idCounter = 0;\n\nfunction useStable(getInitialValue) {\n  var ref = React.useRef(null);\n\n  if (ref.current == null) {\n    ref.current = getInitialValue();\n  }\n\n  return ref.current;\n}\n\nexport default function useResponderEvents(hostRef, config) {\n  if (config === void 0) {\n    config = emptyObject;\n  }\n\n  var id = useStable(function () {\n    return idCounter++;\n  });\n  var isAttachedRef = React.useRef(false);\n  React.useEffect(function () {\n    ResponderSystem.attachListeners();\n    return function () {\n      ResponderSystem.removeNode(id);\n    };\n  }, [id]);\n  React.useEffect(function () {\n    var _config = config,\n        onMoveShouldSetResponder = _config.onMoveShouldSetResponder,\n        onMoveShouldSetResponderCapture = _config.onMoveShouldSetResponderCapture,\n        onScrollShouldSetResponder = _config.onScrollShouldSetResponder,\n        onScrollShouldSetResponderCapture = _config.onScrollShouldSetResponderCapture,\n        onSelectionChangeShouldSetResponder = _config.onSelectionChangeShouldSetResponder,\n        onSelectionChangeShouldSetResponderCapture = _config.onSelectionChangeShouldSetResponderCapture,\n        onStartShouldSetResponder = _config.onStartShouldSetResponder,\n        onStartShouldSetResponderCapture = _config.onStartShouldSetResponderCapture;\n    var requiresResponderSystem = onMoveShouldSetResponder != null || onMoveShouldSetResponderCapture != null || onScrollShouldSetResponder != null || onScrollShouldSetResponderCapture != null || onSelectionChangeShouldSetResponder != null || onSelectionChangeShouldSetResponderCapture != null || onStartShouldSetResponder != null || onStartShouldSetResponderCapture != null;\n    var node = hostRef.current;\n\n    if (requiresResponderSystem) {\n      ResponderSystem.addNode(id, node, config);\n      isAttachedRef.current = true;\n    } else if (isAttachedRef.current) {\n      ResponderSystem.removeNode(id);\n      isAttachedRef.current = false;\n    }\n  }, [config, hostRef, id]);\n  React.useDebugValue({\n    isResponder: hostRef.current === ResponderSystem.getResponderNode()\n  });\n  React.useDebugValue(config);\n}","map":{"version":3,"sources":["/Users/rohitsingh/Documents/projects/new-nativebase-setup/NativeBase/example/node_modules/react-native-web/dist/modules/useResponderEvents/index.js"],"names":["React","ResponderSystem","emptyObject","idCounter","useStable","getInitialValue","ref","useRef","current","useResponderEvents","hostRef","config","id","isAttachedRef","useEffect","attachListeners","removeNode","_config","onMoveShouldSetResponder","onMoveShouldSetResponderCapture","onScrollShouldSetResponder","onScrollShouldSetResponderCapture","onSelectionChangeShouldSetResponder","onSelectionChangeShouldSetResponderCapture","onStartShouldSetResponder","onStartShouldSetResponderCapture","requiresResponderSystem","node","addNode","useDebugValue","isResponder","getResponderNode"],"mappings":"AAkBA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,OAAO,KAAKC,eAAZ;AACA,IAAIC,WAAW,GAAG,EAAlB;AACA,IAAIC,SAAS,GAAG,CAAhB;;AAEA,SAASC,SAAT,CAAmBC,eAAnB,EAAoC;AAClC,MAAIC,GAAG,GAAGN,KAAK,CAACO,MAAN,CAAa,IAAb,CAAV;;AAEA,MAAID,GAAG,CAACE,OAAJ,IAAe,IAAnB,EAAyB;AACvBF,IAAAA,GAAG,CAACE,OAAJ,GAAcH,eAAe,EAA7B;AACD;;AAED,SAAOC,GAAG,CAACE,OAAX;AACD;;AAED,eAAe,SAASC,kBAAT,CAA4BC,OAA5B,EAAqCC,MAArC,EAA6C;AAC1D,MAAIA,MAAM,KAAK,KAAK,CAApB,EAAuB;AACrBA,IAAAA,MAAM,GAAGT,WAAT;AACD;;AAED,MAAIU,EAAE,GAAGR,SAAS,CAAC,YAAY;AAC7B,WAAOD,SAAS,EAAhB;AACD,GAFiB,CAAlB;AAGA,MAAIU,aAAa,GAAGb,KAAK,CAACO,MAAN,CAAa,KAAb,CAApB;AAIAP,EAAAA,KAAK,CAACc,SAAN,CAAgB,YAAY;AAC1Bb,IAAAA,eAAe,CAACc,eAAhB;AACA,WAAO,YAAY;AACjBd,MAAAA,eAAe,CAACe,UAAhB,CAA2BJ,EAA3B;AACD,KAFD;AAGD,GALD,EAKG,CAACA,EAAD,CALH;AAOAZ,EAAAA,KAAK,CAACc,SAAN,CAAgB,YAAY;AAC1B,QAAIG,OAAO,GAAGN,MAAd;AAAA,QACIO,wBAAwB,GAAGD,OAAO,CAACC,wBADvC;AAAA,QAEIC,+BAA+B,GAAGF,OAAO,CAACE,+BAF9C;AAAA,QAGIC,0BAA0B,GAAGH,OAAO,CAACG,0BAHzC;AAAA,QAIIC,iCAAiC,GAAGJ,OAAO,CAACI,iCAJhD;AAAA,QAKIC,mCAAmC,GAAGL,OAAO,CAACK,mCALlD;AAAA,QAMIC,0CAA0C,GAAGN,OAAO,CAACM,0CANzD;AAAA,QAOIC,yBAAyB,GAAGP,OAAO,CAACO,yBAPxC;AAAA,QAQIC,gCAAgC,GAAGR,OAAO,CAACQ,gCAR/C;AASA,QAAIC,uBAAuB,GAAGR,wBAAwB,IAAI,IAA5B,IAAoCC,+BAA+B,IAAI,IAAvE,IAA+EC,0BAA0B,IAAI,IAA7G,IAAqHC,iCAAiC,IAAI,IAA1J,IAAkKC,mCAAmC,IAAI,IAAzM,IAAiNC,0CAA0C,IAAI,IAA/P,IAAuQC,yBAAyB,IAAI,IAApS,IAA4SC,gCAAgC,IAAI,IAA9W;AACA,QAAIE,IAAI,GAAGjB,OAAO,CAACF,OAAnB;;AAEA,QAAIkB,uBAAJ,EAA6B;AAC3BzB,MAAAA,eAAe,CAAC2B,OAAhB,CAAwBhB,EAAxB,EAA4Be,IAA5B,EAAkChB,MAAlC;AACAE,MAAAA,aAAa,CAACL,OAAd,GAAwB,IAAxB;AACD,KAHD,MAGO,IAAIK,aAAa,CAACL,OAAlB,EAA2B;AAChCP,MAAAA,eAAe,CAACe,UAAhB,CAA2BJ,EAA3B;AACAC,MAAAA,aAAa,CAACL,OAAd,GAAwB,KAAxB;AACD;AACF,GApBD,EAoBG,CAACG,MAAD,EAASD,OAAT,EAAkBE,EAAlB,CApBH;AAqBAZ,EAAAA,KAAK,CAAC6B,aAAN,CAAoB;AAClBC,IAAAA,WAAW,EAAEpB,OAAO,CAACF,OAAR,KAAoBP,eAAe,CAAC8B,gBAAhB;AADf,GAApB;AAGA/B,EAAAA,KAAK,CAAC6B,aAAN,CAAoBlB,MAApB;AACD","sourcesContent":["/**\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 */\n\n/**\n * Hook for integrating the Responder System into React\n *\n *   function SomeComponent({ onStartShouldSetResponder }) {\n *     const ref = useRef(null);\n *     useResponderEvents(ref, { onStartShouldSetResponder });\n *     return <div ref={ref} />\n *   }\n */\nimport * as React from 'react';\nimport * as ResponderSystem from './ResponderSystem';\nvar emptyObject = {};\nvar idCounter = 0;\n\nfunction useStable(getInitialValue) {\n  var ref = React.useRef(null);\n\n  if (ref.current == null) {\n    ref.current = getInitialValue();\n  }\n\n  return ref.current;\n}\n\nexport default function useResponderEvents(hostRef, config) {\n  if (config === void 0) {\n    config = emptyObject;\n  }\n\n  var id = useStable(function () {\n    return idCounter++;\n  });\n  var isAttachedRef = React.useRef(false); // This is a separate effects so it doesn't run when the config changes.\n  // On initial mount, attach global listeners if needed.\n  // On unmount, remove node potentially attached to the Responder System.\n\n  React.useEffect(function () {\n    ResponderSystem.attachListeners();\n    return function () {\n      ResponderSystem.removeNode(id);\n    };\n  }, [id]); // Register and unregister with the Responder System as necessary\n\n  React.useEffect(function () {\n    var _config = config,\n        onMoveShouldSetResponder = _config.onMoveShouldSetResponder,\n        onMoveShouldSetResponderCapture = _config.onMoveShouldSetResponderCapture,\n        onScrollShouldSetResponder = _config.onScrollShouldSetResponder,\n        onScrollShouldSetResponderCapture = _config.onScrollShouldSetResponderCapture,\n        onSelectionChangeShouldSetResponder = _config.onSelectionChangeShouldSetResponder,\n        onSelectionChangeShouldSetResponderCapture = _config.onSelectionChangeShouldSetResponderCapture,\n        onStartShouldSetResponder = _config.onStartShouldSetResponder,\n        onStartShouldSetResponderCapture = _config.onStartShouldSetResponderCapture;\n    var requiresResponderSystem = onMoveShouldSetResponder != null || onMoveShouldSetResponderCapture != null || onScrollShouldSetResponder != null || onScrollShouldSetResponderCapture != null || onSelectionChangeShouldSetResponder != null || onSelectionChangeShouldSetResponderCapture != null || onStartShouldSetResponder != null || onStartShouldSetResponderCapture != null;\n    var node = hostRef.current;\n\n    if (requiresResponderSystem) {\n      ResponderSystem.addNode(id, node, config);\n      isAttachedRef.current = true;\n    } else if (isAttachedRef.current) {\n      ResponderSystem.removeNode(id);\n      isAttachedRef.current = false;\n    }\n  }, [config, hostRef, id]);\n  React.useDebugValue({\n    isResponder: hostRef.current === ResponderSystem.getResponderNode()\n  });\n  React.useDebugValue(config);\n}"]},"metadata":{},"sourceType":"module"}