{"_id":"react-native-pan-controller","_rev":"3-4e7610ab0081728e3b0650b75a0bf3b8","name":"react-native-pan-controller","description":"A react native component to help with common use cases for scrolling/panning/etc","dist-tags":{"latest":"0.0.1"},"versions":{"0.0.1":{"name":"react-native-pan-controller","version":"0.0.1","description":"A react native component to help with common use cases for scrolling/panning/etc","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/lelandrichardson/react-native-pan-controller.git"},"keywords":["react","react","native","react","component","panning","scrolling","touch","animation"],"author":{"name":"Leland Richardson"},"license":"MIT","bugs":{"url":"https://github.com/lelandrichardson/react-native-pan-controller/issues"},"homepage":"https://github.com/lelandrichardson/react-native-pan-controller#readme","peerDependencies":{"react-native":">=0.8.0 || 0.8.0-rc || 0.8.0-rc.2 || 0.9.0-rc || 0.9.0-rc.2"},"gitHead":"122633b3607498853159bb3534a8916784afcbcf","_id":"react-native-pan-controller@0.0.1","_shasum":"7cf99a9cd8f6f2d5e670403bb0a6503570b5a7c4","_from":".","_npmVersion":"3.3.6","_nodeVersion":"5.0.0","_npmUser":{"name":"intelligibabble","email":"leland.m.richardson@gmail.com"},"dist":{"shasum":"7cf99a9cd8f6f2d5e670403bb0a6503570b5a7c4","tarball":"https://registry.npmjs.org/react-native-pan-controller/-/react-native-pan-controller-0.0.1.tgz","integrity":"sha512-GS5AClNIxssKhdRp1pIMq+tPSWVIwwlEHgF1ucQXXjXN3gaqRnCO8k4WGsMVxVKIRkKWqPJJ4iCrY1Pdn0/gNA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDSHSw6YEG3rtxt1rqSPJXyd+p+K0tDecdHvA/abMoTiAIhAN/4jP3s85VqTihNEcm/Tulp0gldj6cwQ2jmcpniwU8S"}]},"maintainers":[{"name":"intelligibabble","email":"leland.m.richardson@gmail.com"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/react-native-pan-controller-0.0.1.tgz_1454904915608_0.7429476943798363"}}},"readme":"# react-native-pan-controller\n\n## Motivation\n\nThe `PanResponder` class in React Native is incredibly useful, and can handle a\nbroad range of interactions/animatinos. Unfortunately, there are a lot of very\ncommon interactions/animations that require a lot of the same boilerplate\nin order to get them working properly, and that code is not necessarily straight\nforward.\n\nThe `<PanController />` component is intended to much more easily handle a lot of\nthese common scenarios.  See below for usage.\n\n\n## Installation\n\n```bash\n$ npm install --save react-native-pan-controller\n```\n\n\n\n\n## API (props)\n\n### Behavior Config\n\n| Prop | Default | Type | Description |\n| :------------ |:---------------:| :---------------:| :-----|\n| panX | `new Animated.Value(0)` | `Animated` | ... |\n| panY | `new Animated.Value(0)` | `Animated` | ... |\n| horizontal | `false` | `Boolean` | ... |\n| vertical | `false` | `Boolean` | ... |\n| lockDirection | `true` | `Boolean` | ... |\n| overshootX | `\"spring\"` | `\"spring\"|\"clamp\"` | ... |\n| overshootY | `\"spring\"` | `\"spring\"|\"clamp\"` | ... |\n| xMode | `\"decay\"` | `\"decay\"|\"snap\"|\"spring-origin\"` | ... |\n| yMode | `\"decay\"` | `\"decay\"|\"snap\"|\"spring-origin\"` | ... |\n| xBounds | `[-Infinity, Infinity]` | `Array<Number>` | ... |\n| yBounds | `[-Infinity, Infinity]` | `Array<Number>` | ... |\n| snapSpacingX | `null` | `Number` | ... |\n| snapSpacingY | `null` | `Number` | ... |\n\n### Animation Config\n\n| Prop | Default | Type | Description |\n| :------------ |:---------------:| :---------------:| :-----|\n| overshootSpringConfig | `{ friction: 7, tension: 40 }` | `Object` | ... |\n| momentumDecayConfig | `{ deceleration: 0.993 }` | `Object` | ... |\n| overshootSpringConfig | `{ friction: 7, tension: 40 }` | `Object` | ... |\n| directionLockDistance | `10` | `Number` | ... |\n| overshootReductionFactor | `3` | `Number` | ... |\n\n### Events\n\n| Prop | Parameters | Description |\n| :------------ | :---------------:| :-----|\n| onOvershoot | NO | ... |\n| onDirectionChange | NO | ... |\n| onReleaseX | NO | ... |\n| onReleaseY | NO | ... |\n| onRelease | NO | ... |\n\n\n\n\n\n## Examples\n\nThere is an example project where you can run and inspect all of the below\nexamples if you want.  In order to do so, you must first do the following:\n\n```bash\n$ cd examples\n$ npm install\n```\n\n### ScrollView\n\n### CoverFlow\n\n![](http://i.giphy.com/xTiTnh9zUTwf3oiHRK.gif)\n\n### PageScroller\n\n### PullToRefresh\n\n![](http://i.giphy.com/xTiTnduykRpC513w4M.gif)\n\n### Chat Heads\n\n### Window Shade\n\n\n\n\n## Contributing\n\nPR's welcome.  Additionally, if you have an interaction that you think might be\nable to be handled by the `PanController`, but you're not quite sure how to\nimplement it, give me an example of the interaction and I'll try to get it working\nand add an example.\n\nIf it is not easily implemented using the `PanController`, but seems like a\nstrong use-case, I may extend the implementation to handle it more easily.\n\n\n\n\n\n## License\n\nMIT License.\n","maintainers":[{"name":"intelligibabble","email":"leland.m.richardson@gmail.com"}],"time":{"modified":"2022-06-26T06:49:30.288Z","created":"2016-02-08T04:15:16.658Z","0.0.1":"2016-02-08T04:15:16.658Z"},"homepage":"https://github.com/lelandrichardson/react-native-pan-controller#readme","keywords":["react","react","native","react","component","panning","scrolling","touch","animation"],"repository":{"type":"git","url":"git+https://github.com/lelandrichardson/react-native-pan-controller.git"},"author":{"name":"Leland Richardson"},"bugs":{"url":"https://github.com/lelandrichardson/react-native-pan-controller/issues"},"license":"MIT","readmeFilename":"README.md"}