├── .gitignore ├── .npmignore ├── .storybook ├── addons.js ├── config.js └── webpack.config.js ├── Readme.md ├── babel.config.js ├── demo.gif ├── jest.config.js ├── package.json ├── rollup.config.js ├── src ├── index.test.ts ├── index.tsx ├── use-measure.ts └── use-previous.ts ├── stories ├── Filter-example.tsx ├── Images-example.tsx ├── Scrolling-example.tsx ├── images.css └── intro.stories.tsx ├── tsconfig.json └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | node_modules 3 | build 4 | dist 5 | .rpt2_cache 6 | .DS_Store 7 | .env 8 | .env.local 9 | .env.development.local 10 | .env.test.local 11 | .env.production.local 12 | npm-debug.log* 13 | yarn-debug.log* 14 | yarn-error.log* 15 | umd 16 | esm 17 | cjs -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bmcmahen/react-page-controller/99769431969b3bdb86b2b5aecbf8202eb5ba17ff/.npmignore -------------------------------------------------------------------------------- /.storybook/addons.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bmcmahen/react-page-controller/99769431969b3bdb86b2b5aecbf8202eb5ba17ff/.storybook/addons.js -------------------------------------------------------------------------------- /.storybook/config.js: -------------------------------------------------------------------------------- 1 | import { configure } from "@storybook/react"; 2 | 3 | const req = require.context("../stories", true, /.stories.tsx$/); 4 | 5 | function loadStories() { 6 | req.keys().forEach(filename => req(filename)); 7 | } 8 | 9 | configure(loadStories, module); 10 | -------------------------------------------------------------------------------- /.storybook/webpack.config.js: -------------------------------------------------------------------------------- 1 | module.exports = async ({ config, mode }) => { 2 | config.module.rules.push({ 3 | test: /\.(ts|tsx)$/, 4 | use: [ 5 | { 6 | loader: require.resolve("babel-loader") 7 | }, 8 | { 9 | loader: require.resolve("awesome-typescript-loader") 10 | } 11 | ] 12 | }); 13 | 14 | config.resolve.extensions.push(".ts", ".tsx", ".json"); 15 | return config; 16 | }; 17 | -------------------------------------------------------------------------------- /Readme.md: -------------------------------------------------------------------------------- 1 |