{"_id":"@aaronmaturen/monofun-input","_rev":"16-9e476fe17ac2a62d70087e9f159579f6","name":"@aaronmaturen/monofun-input","dist-tags":{"latest":"0.6.5","next":"0.6.5-alpha.0"},"versions":{"0.3.1":{"version":"0.3.1","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","prepare":"tsdx build","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"492bfadc529271095b228981fcf13825dc3a2cd3","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.3.1","_nodeVersion":"12.18.4","_npmVersion":"6.14.6","dist":{"integrity":"sha512-8+CH6qei2kqprYBBBmooNYnhI5G8fF1nDpuI2tKmeXvh9Bjx/JQ3ZZhcDyWA51tPjjuyPKIU/TNxcklsLzNcqw==","shasum":"d85619981cdf9750b535602ba29bd8d5beb909ea","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.3.1.tgz","fileCount":13,"unpackedSize":12848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfvTv8CRA9TVsSAnZWagAApOMP/jERE6QfM85WpnqEFTb7\nFXH2LiOgZVuozbVrAVJvxDrkqCqN8Vn9LWaUMzo5VyumUQGI9j63EnSYsZ0y\n9HzenBGFvu+whZKHGEwy+EJKdvwi1UfHb++M+XjRQsvRYBJMRHSQiIZl47x2\ndOrKBmnXqXQyaVtXGP24Ge2K6ciHHcpKhY7PMOWdmOH8vepi3BmiImPnmLrR\nu7GSDc2YRSn4XKnCUJ0L6ulA2dOlhtn80m4JojLQ11nC1hNi7V8HkJF9VZrZ\n0u1ES2ziB8U/p89YLsRazTzfAVG4P7GPGirpszHlXFkS6sh7MgJLwboIs6rg\nziQ65gjzfLR3mHe6L/AAvqAeUa6AkFxmiLZpLzzXW/zmD64/bhbWGqbgaDqH\nW9zYF/5z48q4i/jfU86a871+bzOq554MAXRPMt7n1A1XHmO6y6A68eWoAV5F\nJHi2F8EL1vGr2+Rh8yABW639dlIv1gZOGibKs/IuUj31fgg5ND4mVXz1gETu\nhtyviDRZtgiQPgEv3JgQ1lT3j5bI0fib9YeWtj5A22MQt2r/OxC2q+VCHRfH\ngkBywO9ZZfBVPm6I9P6okiwypaV+/2smwQwFrHnTBWwc7Gw1StwP32eFrKzS\n/tEOXMMuf+9YDnMQ3rVRF/vAD6H1zkAB42jfHE6AkjR7FzIjcOKFtyERAYJT\nz5QK\r\n=hXOD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQ448pONPIEfWGLY7ctxJLZmbVTWAsK5GP/zyJHKxl7gIhAIJ+a+0+AKJI6IMdLRcAfgOCj8LfDBLvL6hd+zfWdEgN"}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.3.1_1606237180426_0.5679981379153911"},"_hasShrinkwrap":false},"0.3.2":{"version":"0.3.2","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","prepare":"tsdx build","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"1add35a33bff6a089b656c3f4afcb36867534e4f","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.3.2","_nodeVersion":"12.18.4","_npmVersion":"lerna/3.22.1/node@v12.18.4+x64 (linux)","dist":{"integrity":"sha512-K9buYknyRFaSwueiw4rJzGS24pOLRbNEI43vbzX8fK7G0yJ3SGVTVj325/nfpPL3CwlETIrQrx/TE6a9kHFTBg==","shasum":"eeb2318ebd0e227e18f269dc61ba7e58ece01982","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.3.2.tgz","fileCount":13,"unpackedSize":13066,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfvTxKCRA9TVsSAnZWagAABzQP/jpf9+u0ZkyCRNm08vh5\n5D5tiPROUXnRiv4xinrLK/HNXEH4ha41HvbpITU43nP5W77YKvzRa5vSTX/q\ndmC06tmHrWlemu9pZQ5IFBEFBxS/rA14jvSo+J/nVDSjEkHNvTTntSe+10G3\nM49DmFS0s3tVg7lK6+dBD5DpW9JKmtK6lUAA097Sqnj5Uz2ZEIotQ8r1JHHE\nTmsASGg6YzFGbOsctOKoBo+QYZfQdqwhUUGKps1eyFPzwJ4ae1HQOtilv5z5\n8pAZO/axSBG0imhrjRr+c3/USRIEmIk+m24CpkX235Zrbdk3Jjl1LDH7ko21\nweBDAYke9yrApyCAhD5GxCgbYrv7pjrMnnbeTH9013xoF4Zg11dSSUwuxsmn\ntwc2IOvzey7fL8nBbjb9nakFqHlh6Flbt8evApSaqEGLer4mXCw2lumLXFzU\n0wQlwW8UDQDT8upph4FaaWKn92IVPaITzKUxSdqGVd5s5JH55vQwpHyie3pS\nakq49JaXs3VCGG6nfIs8PrNGgP7ZRkPrSkIQ2Em4xlM43txWySSj3/QRkFH3\nQ6BDLF1FQkWnLqIb1S8osoMaMW7gDOmOfES6m676n6jjWZMsvxZhMpoyUhwE\nkVM7MHEfSXamJE8A+P1RweJ2F3pXfGbE/dcbKc1tkC1k0i0nkiJu3cf18P79\n92/y\r\n=SJ71\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF+EcpRRXfrDly7KTFgNEmQICuQR8hdNJmOp/wqyNy6PAiAIx+XXAUkGWOshb97/e4epPe0ySabuAgjjUIONzfdvwg=="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.3.2_1606237257788_0.7586097326562204"},"_hasShrinkwrap":false},"0.4.2":{"version":"0.4.2","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","prepare":"tsdx build","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"caae147d00b88620bb847d451825ba2d4baf2cc1","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.4.2","_nodeVersion":"12.18.4","_npmVersion":"lerna/3.22.1/node@v12.18.4+x64 (linux)","dist":{"integrity":"sha512-GyIqDrVctoF6OhKuOpjW68mvhwXy5MNehcVqNYBfzPs2GugDt9cnihi1aS7UR/N/sV0GT6ZWLbuFn11NFQirTw==","shasum":"ddf2f1ee235599579568ed3bf9708804a9cd2806","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.4.2.tgz","fileCount":13,"unpackedSize":15092,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfvT5CCRA9TVsSAnZWagAAeOYP/R0z7Ieplo55yyA7IwSJ\nTz2nhM1UEl/qQxtwym/KGMVVthZ3pC6kFxgz7RflxEAeB9+mjXes71ITCG5J\nrsEtd4poI80G+Kcax5eZ0MGW8hNguBZnAKuKCZFcWqYNh8CWhLR6PBPFd/bG\nNBsy+srbzu9CiQpv/0wxUcp0lY/Zc4hn4LhWYorRsSN+zO50NOTwRWBTDJVS\nvkTYfEpLRxVgOZzDuKvkWdspQsgke3dtwBkPjtVo6h5Wh6d0JFSIwbLMPCVh\nmnRIbRJzo7FSyfcZVAD2qP5rg74a9xQgOq1++47ufmSnhzQcbCFZRmbPzr0I\nAQCHSdCeib4Pyj5s7u559btc+r9dWX1Da2ET59FjMFqUoVp4AeH5R0ze8jMC\nyUG2CCwBab8u/duKvOY9JaKo0CJ3DYUyIaYk9WtZ5BABGBE8A69682DI4FKe\nE2hfs+uD4UOLe+XTq8/sgq+wpOINFF5rjs3jr5vSkh5wSPNlHBK/mwjey+Rj\nl/RaTkittgSNck/zuo3gKdTINvbXBvdwDeGUi95t+EkRLMA63zu00RdjwvO9\nyP34Q3HasJmOo8JlBNe82UbByxPGwcrTxcOQxefUc61/cUK5xRSb/l9KiZ90\nfuBuAWXpIFbvPi/f2J2Ls5dESzefFJm83z9BAvE/1YiP6Xnu76qXxzviq/1X\nJkEZ\r\n=RHTY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkEWXrzTSVJlOzYUSy79/y24HlnjeIQra+xfcVs9D4GQIgf9YuWA7ItyXQ34R2W6xVpGNIvabDdJ6gv9d98n5sxCQ="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.4.2_1606237761665_0.40300419553072064"},"_hasShrinkwrap":false},"0.5.1-alpha.1":{"version":"0.5.1-alpha.1","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","prepare":"tsdx build","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"e060e85933fe2e510d3507fa86b3496fea104544","readme":"# TSDX React User Guide\n\nCongrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.\n\n> This TSDX setup is meant for developing React component libraries (not apps!) that can be published to NPM. If you’re looking to build a React-based app, you should use `create-react-app`, `razzle`, `nextjs`, `gatsby`, or `react-static`.\n\n> If you’re new to TypeScript and React, checkout [this handy cheatsheet](https://github.com/sw-yx/react-typescript-cheatsheet/)\n\n## Commands\n\nTSDX scaffolds your new library inside `/src`, and also sets up a [Parcel-based](https://parceljs.org) playground for it inside `/example`.\n\nThe recommended workflow is to run TSDX in one terminal:\n\n```bash\nnpm start # or yarn start\n```\n\nThis builds to `/dist` and runs the project in watch mode so any edits you save inside `src` causes a rebuild to `/dist`.\n\nThen run the example inside another:\n\n```bash\ncd example\nnpm i # or yarn to install dependencies\nnpm start # or yarn start\n```\n\nThe default example imports and live reloads whatever is in `/dist`, so if you are seeing an out of date component, make sure TSDX is running in watch mode like we recommend above. **No symlinking required**, we use [Parcel's aliasing](https://parceljs.org/module_resolution.html#aliases).\n\nTo do a one-off build, use `npm run build` or `yarn build`.\n\nTo run tests, use `npm test` or `yarn test`.\n\n## Configuration\n\nCode quality is set up for you with `prettier`, `husky`, and `lint-staged`. Adjust the respective fields in `package.json` accordingly.\n\n### Jest\n\nJest tests are set up to run with `npm test` or `yarn test`.\n\n### Bundle analysis\n\nCalculates the real cost of your library using [size-limit](https://github.com/ai/size-limit) with `npm run size` and visulize it with `npm run analyze`.\n\n#### Setup Files\n\nThis is the folder structure we set up for you:\n\n```txt\n/example\n  index.html\n  index.tsx       # test your component here in a demo app\n  package.json\n  tsconfig.json\n/src\n  index.tsx       # EDIT THIS\n/test\n  blah.test.tsx   # EDIT THIS\n.gitignore\npackage.json\nREADME.md         # EDIT THIS\ntsconfig.json\n```\n\n#### React Testing Library\n\nWe do not set up `react-testing-library` for you yet, we welcome contributions and documentation on this.\n\n### Rollup\n\nTSDX uses [Rollup](https://rollupjs.org) as a bundler and generates multiple rollup configs for various module formats and build settings. See [Optimizations](#optimizations) for details.\n\n### TypeScript\n\n`tsconfig.json` is set up to interpret `dom` and `esnext` types, as well as `react` for `jsx`. Adjust according to your needs.\n\n## Continuous Integration\n\n### GitHub Actions\n\nTwo actions are added by default:\n\n- `main` which installs deps w/ cache, lints, tests, and builds on all pushes against a Node and OS matrix\n- `size` which comments cost comparison of your library on every pull request using [`size-limit`](https://github.com/ai/size-limit)\n\n## Optimizations\n\nPlease see the main `tsdx` [optimizations docs](https://github.com/palmerhq/tsdx#optimizations). In particular, know that you can take advantage of development-only optimizations:\n\n```js\n// ./types/index.d.ts\ndeclare var __DEV__: boolean;\n\n// inside your code...\nif (__DEV__) {\n  console.log('foo');\n}\n```\n\nYou can also choose to install and use [invariant](https://github.com/palmerhq/tsdx#invariant) and [warning](https://github.com/palmerhq/tsdx#warning) functions.\n\n## Module Formats\n\nCJS, ESModules, and UMD module formats are supported.\n\nThe appropriate paths are configured in `package.json` and `dist/index.js` accordingly. Please report if any issues are found.\n\n## Deploying the Example Playground\n\nThe Playground is just a simple [Parcel](https://parceljs.org) app, you can deploy it anywhere you would normally deploy that. Here are some guidelines for **manually** deploying with the Netlify CLI (`npm i -g netlify-cli`):\n\n```bash\ncd example # if not already in the example folder\nnpm run build # builds to dist\nnetlify deploy # deploy the dist folder\n```\n\nAlternatively, if you already have a git repo connected, you can set up continuous deployment with Netlify:\n\n```bash\nnetlify init\n# build command: yarn build && cd example && yarn && yarn build\n# directory to deploy: example/dist\n# pick yes for netlify.toml\n```\n\n## Named Exports\n\nPer Palmer Group guidelines, [always use named exports.](https://github.com/palmerhq/typescript#exports) Code split inside your React app instead of your React library.\n\n## Including Styles\n\nThere are many ways to ship styles, including with CSS-in-JS. TSDX has no opinion on this, configure how you like.\n\nFor vanilla CSS, you can include it at the root directory and add it to the `files` section in your `package.json`, so that it can be imported separately by your users and run through their bundler's loader.\n\n## Publishing to NPM\n\nWe recommend using [np](https://github.com/sindresorhus/np).\n\n## Usage with Lerna\n\nWhen creating a new package with TSDX within a project set up with Lerna, you might encounter a `Cannot resolve dependency` error when trying to run the `example` project. To fix that you will need to make changes to the `package.json` file _inside the `example` directory_.\n\nThe problem is that due to the nature of how dependencies are installed in Lerna projects, the aliases in the example project's `package.json` might not point to the right place, as those dependencies might have been installed in the root of your Lerna project.\n\nChange the `alias` to point to where those packages are actually installed. This depends on the directory structure of your Lerna project, so the actual path might be different from the diff below.\n\n```diff\n   \"alias\": {\n-    \"react\": \"../node_modules/react\",\n-    \"react-dom\": \"../node_modules/react-dom\"\n+    \"react\": \"../../../node_modules/react\",\n+    \"react-dom\": \"../../../node_modules/react-dom\"\n   },\n```\n\nAn alternative to fixing this problem would be to remove aliases altogether and define the dependencies referenced as aliases as dev dependencies instead. [However, that might cause other problems.](https://github.com/palmerhq/tsdx/issues/64)\n","readmeFilename":"README.md","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.5.1-alpha.1","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-qnvD7huuKboAC9DRIKSxVNMtReeGKas7pDqjdAVettcZeDe5FHXrn5YzHUSDjvPMNLLCi0ksSf1jCtZyE9L5RQ==","shasum":"7a50bd021a34b85e9bdf2c829865c8e025cc3619","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.5.1-alpha.1.tgz","fileCount":13,"unpackedSize":16072,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf2qh7CRA9TVsSAnZWagAA6rsP/1WPcrJ2FwWmD0NbRiYy\nP8eqbEPIk0G//JWBKnXp9ZkTEufTBQo65EOGRCk09srP6Yar9XgD4vtD4E8Q\nY+nnabHh9DOVrI1H5LnyIheOfz3Hw5UaDZlx9Njmtj2otPddrKfwgwIEWHqz\nQcoiQf4DuOvy4Rizw2tQPb0vLYzAGx/QxZ9fhJQNjNSJxZ6fK+oRLk2rH272\nAytMTyBbCZl3S8OhbAWXY34LW1dH0hKzj1IY6ZwR6KWnl1BkLPYP9M4yF8fV\nA+get0/pFv539OoTD4x89N9d3kcT3uViy8wVoqZZ20TtSM/jlxYx+8Dh3txn\nCdhLCO2DYD8+3o3L2y6759wGfy+4D+3sTgO71oxqkKB1NrxpPhtcv3XlkIV7\nxGeZNJCciGr13QKHBRIh2ohs0PiKEQZee3VHzYFyi2cmL6jIWdsBQpxn/rTK\njkd99Anu+6wA+Arq1ClUN8QYCINqCKWHnZ6/Q183A5hCqPWPVM3EVXF17gRN\nJt764Nhl/qSZV/ZXzGuuI2DpQKHO/7eVecer2iKV+ffrepG2b1UkiutHExzT\naZoTI7F6P4vaQe6syWgXU3wUkQ1DoFet6cITk4VOt+4Mx1kWbYnx6NEnDRRf\nmzNlAuxF5+F7ibwuPTD6CdGVgsZ7h8bxQuebB+1NWbcMlpwNAXHJI2INrP3F\nB0VE\r\n=TQcC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEsd2dH6WN56FzvUOL5MrnNxdmQgfnTvIoS4vi3U7yuoAiASpoCXI+ImEv8WELOWFl0WHgpjAiYbVfNfRx2AJi/8eQ=="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.5.1-alpha.1_1608165499223_0.41818529501147017"},"_hasShrinkwrap":false},"0.5.1":{"version":"0.5.1","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","prepare":"tsdx build","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"31a14d8c9b3de1a75147f31b9a5fcdec467e5498","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.5.1","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-vst4YEzxaSW7Zj1mqaRsWhNU+cjfKKciz4CaZNDDcF3OOIOXX4mCdV9/nUREUG9nfA7aHR67NPlUjmiYPancbQ==","shasum":"d7e1c3b25ed4d381d521709ef43625331bc5f0bf","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.5.1.tgz","fileCount":13,"unpackedSize":16161,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf2qn/CRA9TVsSAnZWagAALJ0P/A4yVhjE2HjBDmC5rT42\ncnyy16Oiz9trCrhVpi/gLHVzQ9q7cT1Hcy4XyREp5byy/ZFukRX/Yg3pPR7e\n8TZdk7ZKLs8hcpkxk9z8y6Vveec4/NHUoa+shtNW+eGzwgqL23F63LknUoII\n1zvjT9H092WQ54Z8d2LtmDjrYxj7fpXnymNPNOwiGSYwPVo0dFBx0xNP3Xun\nivuD0TlGvzmQJ5cRxMXiPvt1BZeXWMfblD3adKXPbBQkUEdCWGOUZix5GjpN\nwB0KdRzaWNY7Nn0/2BUQ7VKL2Ot7tVmA+af670vAofRr6ftvrTaVrfNb5k3W\niLaIpH47d/NHFqoiex/VyfmdXZUBfa5ylB77sKyLjjamKvrtHZatS6aPN0tU\n2j5m4ZzdkI9/IVSZFG8H6xdsQRPNAR03Y7bPSrWiK7ZXE2moSXX/kbGfwGwu\ncHKQ5E8nPLau9+UZpJLoFjKc+6vKzRxkmDGD6ZgmFhFcyWMJ03z3HLx8zJmj\nbMBvzFluK7mYVyn0TydxLA8fBWQ8IkbmhWkjLvOwnjK6c1AHTO//iDmuRJ4r\nPKos1kdDn9YD6AEkj79OrP89u+WyJFNIbXGo7j5snTkK+lbqxdsUJpAeUyyQ\njijJ4xBdScPeXSPmj4dTQEIMvQ4t8XSu7heeDW3hMYeRAQJE1Faa6nCfV2Tr\ne7Ds\r\n=RRdq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICCG221EK0P1Tb3CXFp2vRTeFCbYBvny5C8YbHwzTOy3AiAdTh/bbXbqFK/Rv8FT8M0fAIhie9ZH2NZOPGx1YI9IyQ=="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.5.1_1608165887353_0.8257323373898913"},"_hasShrinkwrap":false},"0.6.0-alpha.0":{"version":"0.6.0-alpha.0","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"ee5cf13a160b2d68e48cf28f06c3541804da7ed3","readme":"# TSDX React User Guide\n\nCongrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.\n\n> This TSDX setup is meant for developing React component libraries (not apps!) that can be published to NPM. If you’re looking to build a React-based app, you should use `create-react-app`, `razzle`, `nextjs`, `gatsby`, or `react-static`.\n\n> If you’re new to TypeScript and React, checkout [this handy cheatsheet](https://github.com/sw-yx/react-typescript-cheatsheet/)\n\n## Commands\n\nTSDX scaffolds your new library inside `/src`, and also sets up a [Parcel-based](https://parceljs.org) playground for it inside `/example`.\n\nThe recommended workflow is to run TSDX in one terminal:\n\n```bash\nnpm start # or yarn start\n```\n\nThis builds to `/dist` and runs the project in watch mode so any edits you save inside `src` causes a rebuild to `/dist`.\n\nThen run the example inside another:\n\n```bash\ncd example\nnpm i # or yarn to install dependencies\nnpm start # or yarn start\n```\n\nThe default example imports and live reloads whatever is in `/dist`, so if you are seeing an out of date component, make sure TSDX is running in watch mode like we recommend above. **No symlinking required**, we use [Parcel's aliasing](https://parceljs.org/module_resolution.html#aliases).\n\nTo do a one-off build, use `npm run build` or `yarn build`.\n\nTo run tests, use `npm test` or `yarn test`.\n\n## Configuration\n\nCode quality is set up for you with `prettier`, `husky`, and `lint-staged`. Adjust the respective fields in `package.json` accordingly.\n\n### Jest\n\nJest tests are set up to run with `npm test` or `yarn test`.\n\n### Bundle analysis\n\nCalculates the real cost of your library using [size-limit](https://github.com/ai/size-limit) with `npm run size` and visulize it with `npm run analyze`.\n\n#### Setup Files\n\nThis is the folder structure we set up for you:\n\n```txt\n/example\n  index.html\n  index.tsx       # test your component here in a demo app\n  package.json\n  tsconfig.json\n/src\n  index.tsx       # EDIT THIS\n/test\n  blah.test.tsx   # EDIT THIS\n.gitignore\npackage.json\nREADME.md         # EDIT THIS\ntsconfig.json\n```\n\n#### React Testing Library\n\nWe do not set up `react-testing-library` for you yet, we welcome contributions and documentation on this.\n\n### Rollup\n\nTSDX uses [Rollup](https://rollupjs.org) as a bundler and generates multiple rollup configs for various module formats and build settings. See [Optimizations](#optimizations) for details.\n\n### TypeScript\n\n`tsconfig.json` is set up to interpret `dom` and `esnext` types, as well as `react` for `jsx`. Adjust according to your needs.\n\n## Continuous Integration\n\n### GitHub Actions\n\nTwo actions are added by default:\n\n- `main` which installs deps w/ cache, lints, tests, and builds on all pushes against a Node and OS matrix\n- `size` which comments cost comparison of your library on every pull request using [`size-limit`](https://github.com/ai/size-limit)\n\n## Optimizations\n\nPlease see the main `tsdx` [optimizations docs](https://github.com/palmerhq/tsdx#optimizations). In particular, know that you can take advantage of development-only optimizations:\n\n```js\n// ./types/index.d.ts\ndeclare var __DEV__: boolean;\n\n// inside your code...\nif (__DEV__) {\n  console.log('foo');\n}\n```\n\nYou can also choose to install and use [invariant](https://github.com/palmerhq/tsdx#invariant) and [warning](https://github.com/palmerhq/tsdx#warning) functions.\n\n## Module Formats\n\nCJS, ESModules, and UMD module formats are supported.\n\nThe appropriate paths are configured in `package.json` and `dist/index.js` accordingly. Please report if any issues are found.\n\n## Deploying the Example Playground\n\nThe Playground is just a simple [Parcel](https://parceljs.org) app, you can deploy it anywhere you would normally deploy that. Here are some guidelines for **manually** deploying with the Netlify CLI (`npm i -g netlify-cli`):\n\n```bash\ncd example # if not already in the example folder\nnpm run build # builds to dist\nnetlify deploy # deploy the dist folder\n```\n\nAlternatively, if you already have a git repo connected, you can set up continuous deployment with Netlify:\n\n```bash\nnetlify init\n# build command: yarn build && cd example && yarn && yarn build\n# directory to deploy: example/dist\n# pick yes for netlify.toml\n```\n\n## Named Exports\n\nPer Palmer Group guidelines, [always use named exports.](https://github.com/palmerhq/typescript#exports) Code split inside your React app instead of your React library.\n\n## Including Styles\n\nThere are many ways to ship styles, including with CSS-in-JS. TSDX has no opinion on this, configure how you like.\n\nFor vanilla CSS, you can include it at the root directory and add it to the `files` section in your `package.json`, so that it can be imported separately by your users and run through their bundler's loader.\n\n## Publishing to NPM\n\nWe recommend using [np](https://github.com/sindresorhus/np).\n\n## Usage with Lerna\n\nWhen creating a new package with TSDX within a project set up with Lerna, you might encounter a `Cannot resolve dependency` error when trying to run the `example` project. To fix that you will need to make changes to the `package.json` file _inside the `example` directory_.\n\nThe problem is that due to the nature of how dependencies are installed in Lerna projects, the aliases in the example project's `package.json` might not point to the right place, as those dependencies might have been installed in the root of your Lerna project.\n\nChange the `alias` to point to where those packages are actually installed. This depends on the directory structure of your Lerna project, so the actual path might be different from the diff below.\n\n```diff\n   \"alias\": {\n-    \"react\": \"../node_modules/react\",\n-    \"react-dom\": \"../node_modules/react-dom\"\n+    \"react\": \"../../../node_modules/react\",\n+    \"react-dom\": \"../../../node_modules/react-dom\"\n   },\n```\n\nAn alternative to fixing this problem would be to remove aliases altogether and define the dependencies referenced as aliases as dev dependencies instead. [However, that might cause other problems.](https://github.com/palmerhq/tsdx/issues/64)\n","readmeFilename":"README.md","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.0-alpha.0","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-Q1jjxXp5UB2UnqW98Nftwzm0zdKonHaMMphNZXvVMMGe6ZF0ot6So6HP8W9IhImbbQgKcMbLn+Vn2aX5x0kdcQ==","shasum":"86abf84037fce7c8b557ade7fb80d263a4597d22","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.0-alpha.0.tgz","fileCount":5,"unpackedSize":12171,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf23hnCRA9TVsSAnZWagAAsKgQAJ+rH3dBB1ZTp7/hI3j9\nM0RbDCJxrzLjbCmczDgAKSQEwDnoRowKozVtVhpaU7bEC/MzjNJdYOYgv1sf\n9xNU6i9xP0AX7lGi2fGRBP5ZPl9HK7lBaAA8XYPn4HJXQAYEPaKxRcPqSXLt\nkSQq/Clj2uwBWkOftuFq0yjb6b8z3qtPpAl36wIXrU5ZHiFH46NkX3DFOr4G\nfmOUSygrNMXt82IihlFeCrmua+kItuqXU9NDPDANGdcSBlBu77/Fe3bE7E5y\ndxy/3Zp7rlfejbcyUGd/AGpaKyVNGatJHWjF0MjqY+QgP4O7NeQz/361evV9\n7A2EXX+9Zi1QYm8Y5MBbt2X6i6LHMAjsZy+Azda8EZ6Mc//QYWhAMtLVHjKs\nTl2q6qalWea0rPsEx75rK8EV0efflcObsXiboIkFFYI7M5l/fCH9kDYkK2LA\nWnzHk15/20/K/QEjXaAoLLTIt8+6fX3cTc0LF6EZSZFS9cZvQqA/y5X7aMBj\n9wbByIdXI5BXttx97imR58BNZMh8KHcTjcxUsc70yr2vQax6Rf/TgmanVi5z\nFzYm/qcwWcZ4DNzK91XUTq+7RHth0ISxGhn7q/ts+cmhPs70BHHxdz/9M6KE\nl5MZFkaDqftICDG/Vo1PrhgRn9NL+c119DAuiOz+4r+08HyZcL0E/gEI2ooP\nr9ZX\r\n=tKZ+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3g7wyMD6fgr/AvJgipw9PuXSz2TcEN/73yC1OWzxdNQIhAMLvbdaOKnzQZbA7vx1LFQ8VA2R+WHo+mehlioppJc3t"}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.0-alpha.0_1608218727272_0.4888300723551644"},"_hasShrinkwrap":false},"0.6.0-alpha.1":{"version":"0.6.0-alpha.1","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"ca4dab3d737be7f0db79ad502b5312fd1eeed7d3","readme":"# TSDX React User Guide\n\nCongrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.\n\n> This TSDX setup is meant for developing React component libraries (not apps!) that can be published to NPM. If you’re looking to build a React-based app, you should use `create-react-app`, `razzle`, `nextjs`, `gatsby`, or `react-static`.\n\n> If you’re new to TypeScript and React, checkout [this handy cheatsheet](https://github.com/sw-yx/react-typescript-cheatsheet/)\n\n## Commands\n\nTSDX scaffolds your new library inside `/src`, and also sets up a [Parcel-based](https://parceljs.org) playground for it inside `/example`.\n\nThe recommended workflow is to run TSDX in one terminal:\n\n```bash\nnpm start # or yarn start\n```\n\nThis builds to `/dist` and runs the project in watch mode so any edits you save inside `src` causes a rebuild to `/dist`.\n\nThen run the example inside another:\n\n```bash\ncd example\nnpm i # or yarn to install dependencies\nnpm start # or yarn start\n```\n\nThe default example imports and live reloads whatever is in `/dist`, so if you are seeing an out of date component, make sure TSDX is running in watch mode like we recommend above. **No symlinking required**, we use [Parcel's aliasing](https://parceljs.org/module_resolution.html#aliases).\n\nTo do a one-off build, use `npm run build` or `yarn build`.\n\nTo run tests, use `npm test` or `yarn test`.\n\n## Configuration\n\nCode quality is set up for you with `prettier`, `husky`, and `lint-staged`. Adjust the respective fields in `package.json` accordingly.\n\n### Jest\n\nJest tests are set up to run with `npm test` or `yarn test`.\n\n### Bundle analysis\n\nCalculates the real cost of your library using [size-limit](https://github.com/ai/size-limit) with `npm run size` and visulize it with `npm run analyze`.\n\n#### Setup Files\n\nThis is the folder structure we set up for you:\n\n```txt\n/example\n  index.html\n  index.tsx       # test your component here in a demo app\n  package.json\n  tsconfig.json\n/src\n  index.tsx       # EDIT THIS\n/test\n  blah.test.tsx   # EDIT THIS\n.gitignore\npackage.json\nREADME.md         # EDIT THIS\ntsconfig.json\n```\n\n#### React Testing Library\n\nWe do not set up `react-testing-library` for you yet, we welcome contributions and documentation on this.\n\n### Rollup\n\nTSDX uses [Rollup](https://rollupjs.org) as a bundler and generates multiple rollup configs for various module formats and build settings. See [Optimizations](#optimizations) for details.\n\n### TypeScript\n\n`tsconfig.json` is set up to interpret `dom` and `esnext` types, as well as `react` for `jsx`. Adjust according to your needs.\n\n## Continuous Integration\n\n### GitHub Actions\n\nTwo actions are added by default:\n\n- `main` which installs deps w/ cache, lints, tests, and builds on all pushes against a Node and OS matrix\n- `size` which comments cost comparison of your library on every pull request using [`size-limit`](https://github.com/ai/size-limit)\n\n## Optimizations\n\nPlease see the main `tsdx` [optimizations docs](https://github.com/palmerhq/tsdx#optimizations). In particular, know that you can take advantage of development-only optimizations:\n\n```js\n// ./types/index.d.ts\ndeclare var __DEV__: boolean;\n\n// inside your code...\nif (__DEV__) {\n  console.log('foo');\n}\n```\n\nYou can also choose to install and use [invariant](https://github.com/palmerhq/tsdx#invariant) and [warning](https://github.com/palmerhq/tsdx#warning) functions.\n\n## Module Formats\n\nCJS, ESModules, and UMD module formats are supported.\n\nThe appropriate paths are configured in `package.json` and `dist/index.js` accordingly. Please report if any issues are found.\n\n## Deploying the Example Playground\n\nThe Playground is just a simple [Parcel](https://parceljs.org) app, you can deploy it anywhere you would normally deploy that. Here are some guidelines for **manually** deploying with the Netlify CLI (`npm i -g netlify-cli`):\n\n```bash\ncd example # if not already in the example folder\nnpm run build # builds to dist\nnetlify deploy # deploy the dist folder\n```\n\nAlternatively, if you already have a git repo connected, you can set up continuous deployment with Netlify:\n\n```bash\nnetlify init\n# build command: yarn build && cd example && yarn && yarn build\n# directory to deploy: example/dist\n# pick yes for netlify.toml\n```\n\n## Named Exports\n\nPer Palmer Group guidelines, [always use named exports.](https://github.com/palmerhq/typescript#exports) Code split inside your React app instead of your React library.\n\n## Including Styles\n\nThere are many ways to ship styles, including with CSS-in-JS. TSDX has no opinion on this, configure how you like.\n\nFor vanilla CSS, you can include it at the root directory and add it to the `files` section in your `package.json`, so that it can be imported separately by your users and run through their bundler's loader.\n\n## Publishing to NPM\n\nWe recommend using [np](https://github.com/sindresorhus/np).\n\n## Usage with Lerna\n\nWhen creating a new package with TSDX within a project set up with Lerna, you might encounter a `Cannot resolve dependency` error when trying to run the `example` project. To fix that you will need to make changes to the `package.json` file _inside the `example` directory_.\n\nThe problem is that due to the nature of how dependencies are installed in Lerna projects, the aliases in the example project's `package.json` might not point to the right place, as those dependencies might have been installed in the root of your Lerna project.\n\nChange the `alias` to point to where those packages are actually installed. This depends on the directory structure of your Lerna project, so the actual path might be different from the diff below.\n\n```diff\n   \"alias\": {\n-    \"react\": \"../node_modules/react\",\n-    \"react-dom\": \"../node_modules/react-dom\"\n+    \"react\": \"../../../node_modules/react\",\n+    \"react-dom\": \"../../../node_modules/react-dom\"\n   },\n```\n\nAn alternative to fixing this problem would be to remove aliases altogether and define the dependencies referenced as aliases as dev dependencies instead. [However, that might cause other problems.](https://github.com/palmerhq/tsdx/issues/64)\n","readmeFilename":"README.md","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.0-alpha.1","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-VqV35CKTbBaAQJ49MmDhu8U9g6XHJN+Su/s7GgnN7Xnw9OdJf6BqqB6hnp23PWpCSGgUDhRj9CmWrt3xHdiEeA==","shasum":"7a2762ffad2c01c446817638c2ba4fac4c275360","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.0-alpha.1.tgz","fileCount":5,"unpackedSize":12407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf24TOCRA9TVsSAnZWagAA1QwQAI7LkSNDLr5prjr6euLf\nWRPLlk/VRagoO+wS1DQclul5Qk7VD0BfTXyaQtmjZEVFXsRh4iU4tBM/twvy\nlVO6mVqRHC1yHclf/OxXN/UaJrGDbDHOTvt2iYLmH6h1gM89AlbhzxE+BybY\n9Cf9eoowKrbXKiLhz8gwChFXXbaePQmhgB7BU2sGyjFjtTZUymp+K6QV+CAK\nqh/mseG4Q8cmMf5kCve0o332jfaVBpMBQfwIrMQ6gGqq5C6Vj6/booeShEh/\nSRmplOAXUGVj9C0kHQ6p83dw8eCN4Uf2fk4DIiaAgR2Mj38IzW21cLCHVlyC\nVozTaBFc4rRpFkMpBYB37BcIE/Qkma+WXcFUaRKS/ve/BfpGKi4ovI9/gGil\nj+UNAsxccLv6Vpmu3eQw05e8opYv96SPtyjkMCRgLtCGQ9VsUQk4cNbcLXXS\n2V3ZfLofTwLU4lcwSISokzpp2jYOXL+dTE0tg6EIZwtv0p989o5rH3TMgNP2\nNMXBnJqseMpvyCrqYD3VB817Je348LT8n3iottf1MU0ea2CZBI1Uv2p1bctV\n5IxmB3SOX2t1NurZMmEcOUONkYBj46Lzy/2zqDxxVSj097Qr8DIW0wQmNRs2\n7X5i1BPhETzKOhGen1P4L6+hfNjnJ5b4dIXRXOfOHUWtZWOl1Ym0TbtAQ62Z\n2Oti\r\n=UW8u\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCBI8EEtu+rzDiL96vPTeWAOfFPpy8T84XH1Idl9gUTtwIgNz9Q2uifHs+5WobM5BkPXrn6FDTDUbl3mjRpQwX2sYo="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.0-alpha.1_1608221902242_0.8469807537935035"},"_hasShrinkwrap":false},"0.6.0":{"version":"0.6.0","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"17dc00da9da37184d41cd2f5c853afe3c03a350d","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.0","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-G+l9CRySB+RqJ60bui3l18rnKaXUlrjJPinLEHRRuN7lCKfkh3eSorMKlLWsPsYGmkuvkJayrb2OaZ0UJmQfeg==","shasum":"f4e38172eadbb3d6a4fca8d3f95004261944c485","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.0.tgz","fileCount":5,"unpackedSize":12495,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf24lICRA9TVsSAnZWagAAOuMQAKOimm0wrFDHYqkw1JMp\n7pp7NHqtciaJRmRkkJ03ehFgqRmxC4vAIeGPRhDPkNly2Fv7gMbPwV7jpSxx\nPiTKq9FyTCkYr/3yHapm7NJpnwCgcC8iIjn2BCLMYYg6FQ0pcBuyzIz9/3Zx\nLREy74KmwfPnwn0y3n0AN8STbCw3oykEptIsdMkFec3fCK9UJEt5zusU60WR\nYJU/be/QqDKIVYslQIRlpjH+SrOZvcCdzXbiVTIedb6LCvjpulAVsf6FXwX5\n/WjMVQ1CMsKcVNSQeABYm2A6Lm1jdD2OWChd+GxRtaTDKPlwBPwoi2cEZyhA\nTUSsqjTSK7Cpl/3IDScj2xfPk1xVQPgPYkbsi9YhgaYNNHxTeyItjhmB2b6B\nkCl9fAB3kT//HpsEUgFfRxHXQB8QIfEoarAo9s5Wqf1jZ8550PwlYRPHjfRd\n3SYfrRKwgKaoMIkK2RguCUwwjCUUdvSxlpkbJUOyME8s6HRvGXpdmZnulDRV\nr+2np9xmuJ4IH46+9wDokSDEw0Vfr5ErPS+aHzRJ+kYc9NHi2KKZ8j8HMlcK\ng2juIl2BYn1PDaNOpyiMuM8x1baEGUL2tzXofZClI3ZQhe7CX09GtEUP6OGy\nCKEQZpaeuQiwublhSYKl+9MP19c018e0BTbZ6vOpo4GbJdWrKWNVPu4LrsJK\nnQn7\r\n=UB2S\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCt1DfUYvryVDWX+vXxbmPMkS5KQEnmJiSdZ+UiUcrCngIgbtiuLhKsp0ZZjG9+29noH7ZUHJZARg1+Z/8N+GRcLJc="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.0_1608223048224_0.477325674489933"},"_hasShrinkwrap":false},"0.6.1-alpha.0":{"version":"0.6.1-alpha.0","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"70bf6dde6aa0832b31035c13257ad049f071ad19","readme":"# TSDX React User Guide\n\nCongrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.\n\n> This TSDX setup is meant for developing React component libraries (not apps!) that can be published to NPM. If you’re looking to build a React-based app, you should use `create-react-app`, `razzle`, `nextjs`, `gatsby`, or `react-static`.\n\n> If you’re new to TypeScript and React, checkout [this handy cheatsheet](https://github.com/sw-yx/react-typescript-cheatsheet/)\n\n## Commands\n\nTSDX scaffolds your new library inside `/src`, and also sets up a [Parcel-based](https://parceljs.org) playground for it inside `/example`.\n\nThe recommended workflow is to run TSDX in one terminal:\n\n```bash\nnpm start # or yarn start\n```\n\nThis builds to `/dist` and runs the project in watch mode so any edits you save inside `src` causes a rebuild to `/dist`.\n\nThen run the example inside another:\n\n```bash\ncd example\nnpm i # or yarn to install dependencies\nnpm start # or yarn start\n```\n\nThe default example imports and live reloads whatever is in `/dist`, so if you are seeing an out of date component, make sure TSDX is running in watch mode like we recommend above. **No symlinking required**, we use [Parcel's aliasing](https://parceljs.org/module_resolution.html#aliases).\n\nTo do a one-off build, use `npm run build` or `yarn build`.\n\nTo run tests, use `npm test` or `yarn test`.\n\n## Configuration\n\nCode quality is set up for you with `prettier`, `husky`, and `lint-staged`. Adjust the respective fields in `package.json` accordingly.\n\n### Jest\n\nJest tests are set up to run with `npm test` or `yarn test`.\n\n### Bundle analysis\n\nCalculates the real cost of your library using [size-limit](https://github.com/ai/size-limit) with `npm run size` and visulize it with `npm run analyze`.\n\n#### Setup Files\n\nThis is the folder structure we set up for you:\n\n```txt\n/example\n  index.html\n  index.tsx       # test your component here in a demo app\n  package.json\n  tsconfig.json\n/src\n  index.tsx       # EDIT THIS\n/test\n  blah.test.tsx   # EDIT THIS\n.gitignore\npackage.json\nREADME.md         # EDIT THIS\ntsconfig.json\n```\n\n#### React Testing Library\n\nWe do not set up `react-testing-library` for you yet, we welcome contributions and documentation on this.\n\n### Rollup\n\nTSDX uses [Rollup](https://rollupjs.org) as a bundler and generates multiple rollup configs for various module formats and build settings. See [Optimizations](#optimizations) for details.\n\n### TypeScript\n\n`tsconfig.json` is set up to interpret `dom` and `esnext` types, as well as `react` for `jsx`. Adjust according to your needs.\n\n## Continuous Integration\n\n### GitHub Actions\n\nTwo actions are added by default:\n\n- `main` which installs deps w/ cache, lints, tests, and builds on all pushes against a Node and OS matrix\n- `size` which comments cost comparison of your library on every pull request using [`size-limit`](https://github.com/ai/size-limit)\n\n## Optimizations\n\nPlease see the main `tsdx` [optimizations docs](https://github.com/palmerhq/tsdx#optimizations). In particular, know that you can take advantage of development-only optimizations:\n\n```js\n// ./types/index.d.ts\ndeclare var __DEV__: boolean;\n\n// inside your code...\nif (__DEV__) {\n  console.log('foo');\n}\n```\n\nYou can also choose to install and use [invariant](https://github.com/palmerhq/tsdx#invariant) and [warning](https://github.com/palmerhq/tsdx#warning) functions.\n\n## Module Formats\n\nCJS, ESModules, and UMD module formats are supported.\n\nThe appropriate paths are configured in `package.json` and `dist/index.js` accordingly. Please report if any issues are found.\n\n## Deploying the Example Playground\n\nThe Playground is just a simple [Parcel](https://parceljs.org) app, you can deploy it anywhere you would normally deploy that. Here are some guidelines for **manually** deploying with the Netlify CLI (`npm i -g netlify-cli`):\n\n```bash\ncd example # if not already in the example folder\nnpm run build # builds to dist\nnetlify deploy # deploy the dist folder\n```\n\nAlternatively, if you already have a git repo connected, you can set up continuous deployment with Netlify:\n\n```bash\nnetlify init\n# build command: yarn build && cd example && yarn && yarn build\n# directory to deploy: example/dist\n# pick yes for netlify.toml\n```\n\n## Named Exports\n\nPer Palmer Group guidelines, [always use named exports.](https://github.com/palmerhq/typescript#exports) Code split inside your React app instead of your React library.\n\n## Including Styles\n\nThere are many ways to ship styles, including with CSS-in-JS. TSDX has no opinion on this, configure how you like.\n\nFor vanilla CSS, you can include it at the root directory and add it to the `files` section in your `package.json`, so that it can be imported separately by your users and run through their bundler's loader.\n\n## Publishing to NPM\n\nWe recommend using [np](https://github.com/sindresorhus/np).\n\n## Usage with Lerna\n\nWhen creating a new package with TSDX within a project set up with Lerna, you might encounter a `Cannot resolve dependency` error when trying to run the `example` project. To fix that you will need to make changes to the `package.json` file _inside the `example` directory_.\n\nThe problem is that due to the nature of how dependencies are installed in Lerna projects, the aliases in the example project's `package.json` might not point to the right place, as those dependencies might have been installed in the root of your Lerna project.\n\nChange the `alias` to point to where those packages are actually installed. This depends on the directory structure of your Lerna project, so the actual path might be different from the diff below.\n\n```diff\n   \"alias\": {\n-    \"react\": \"../node_modules/react\",\n-    \"react-dom\": \"../node_modules/react-dom\"\n+    \"react\": \"../../../node_modules/react\",\n+    \"react-dom\": \"../../../node_modules/react-dom\"\n   },\n```\n\nAn alternative to fixing this problem would be to remove aliases altogether and define the dependencies referenced as aliases as dev dependencies instead. [However, that might cause other problems.](https://github.com/palmerhq/tsdx/issues/64)\n","readmeFilename":"README.md","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.1-alpha.0","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-EioKbm5ds8+VfQ8I0vL848fhZeFywOgjfFUZJP6U0IUUiRDsOR9cy9M2J5kY26B8RhPgD528+f/E6j4+b/WmJQ==","shasum":"fc2e3dfa6eb1065f2a22ae8ed30041dee34db86b","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.1-alpha.0.tgz","fileCount":5,"unpackedSize":12608,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf25BcCRA9TVsSAnZWagAArFsP/0g1DmqwmlH0E/1M2Xvn\nMinAnKsNoBrM6tYgX3zKudXBlRNEuFD2wy7tALX3RO/NFIpmSqMahyWWuRS9\nnZJbWhJtLSmCRWF/Vhbxq/INI8Vfg6eIbsJqkAFbDVvnC4tN6Da2JcIDIHCP\nXZ95S8+tpe/AuUFc5pKGBMlpsuLFdQANvg4vWeGtvhv4np5gwSchgK2AWssC\nZW28JyB5oGyg+ViRxP6aNW9dSE2HqmajqxKNiwaG8phSA2RGZF7AhgVwgo8E\ntUuOAsY7nkMnrLEmZS4BsXDQJ3r9GCR5D7A0vqEbhv8YlPggCt4vn+GEsKub\nkTkb+LIF/eE7zqgUvvMJTcxYr+uuOJZ/Ug9zDLIYx0fsXkG3fECE00GHlKZN\nGzSMZ7TpV5Rf1MAiZxE+93prFr2hrN4y+L+JwwUZcMxml9Mgb3+BFTxXeMGq\nbj3plfuIEVCya22rcau1MMxqoBzy2vcQQE4ezcOfMMgLxtNFJEzEjx7/FfTS\nrN3NJgSZCIhjbnUqZWzsAMS7lmn7X47OE6tTfaAnJ4I1eBr/5e8JOp9hgUkN\nFXfdY5E7Xi1SGz9ZFCVvKNbMf+rJofy51RT79urUuA+AKc4s5Ei3hP+9udZN\nwPZZBJh4K3bCfSk8q51TXoL464sMij1aIXwie4jWklx58KAiP5DUiRQx5n2B\nAmsZ\r\n=+koF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHKXp0Jd8s/qPFLJPHcgGdvxWpYuzFf91e4XqWqWKUVwAiEA9OOZ0+LxO1eDF0CkP3DHIIWIL0Al+GXdSTiqKgNEspY="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.1-alpha.0_1608224860495_0.839006005598804"},"_hasShrinkwrap":false},"0.6.1":{"version":"0.6.1","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"4e3d7cb72e9fb0c6994cb31ceaa8190d4dbe9f65","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.1","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-wSRj7AGYfROj9P445b7VagVRBX08oGZnQSLi2WiMf2SStBo4pXjj6VPEhiUYIp279rEnCTtmLFDNi/0kFK9xZw==","shasum":"3acfc52826b5c9cb60c119e7ad2f034785fa0e5d","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.1.tgz","fileCount":5,"unpackedSize":12697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf25HGCRA9TVsSAnZWagAAdmMP/RUKHnBXgGvFxRBuktt4\nui0kF3cBWKeYNE3NJ8qESY35B+sTD4WCyj3bRZu6XJ/QgA3Ivmaeg43OwkWG\nZqqpEkOALRkDC3vNwCu+4iLhEhS4c+xZ/L9vqANrvu0RuQhJOIU4iO+sXxqW\nravJRXRT0NYFBd/Bo/fIhFT84fVVLFclMdfqqbDsRlnbCZTLAlDL54bG0ncp\nLoe6U06uYlcVbC3etf65T/wNJW7mImckMjN6WRNwOt8BKBw2uqFgKpuJdtku\n+jj3DJH/wTcupQQwoxXe/VwOWrsrV9KFCNTeUiZfpZSLsBgnFSwD/UXA3GfD\npAHdKtgZ4nyxWrF5kuiOsyf4i/eUcMfR+pT4GY9+mOJRHOJJ2nmjCbKjiIrN\nIIAkOLaL9VncG9t5wKiFW2DiNWRFLGMDNseRX/jSnDhNazuQC5yMK9qIbLZ5\nVHaEJ8a8Wk4J4JJ/sbkaN1wACyL8WJAvuSX50VScoSlva9LOSM9ZDTrsa/zf\nPti8oFlY3QS5bYDoYWdlL/XWdBh7NUe/OSx9sq/0u5vn6MmffkB9+Qs4yS1B\ns1TRdoP9CxD7tSFTO5OC8a8DB8BiebNyOXMGx5O3UPLAy3GpGldTQgNCww4e\nGVBDsc607SLIRkanATr8nrmSFSE23AdQqNg0VZUTPBfQrCYj0f0E5YEHJBF0\nDQKx\r\n=y4h/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDX8maR9K5mr1qeOjgkxIdWqjXoX0wqUMJCRALrobEzQgIgAo5cE+CKfhqmlvgiaCqYKMnS8TKiFSD6JuuxK3XMxyU="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.1_1608225222289_0.4291996738693993"},"_hasShrinkwrap":false},"0.6.2-alpha.0":{"version":"0.6.2-alpha.0","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"3e173eec9649eae7b87ece8bc983acf66dca4e90","readme":"# TSDX React User Guide\n\nCongrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.\n\n> This TSDX setup is meant for developing React component libraries (not apps!) that can be published to NPM. If you’re looking to build a React-based app, you should use `create-react-app`, `razzle`, `nextjs`, `gatsby`, or `react-static`.\n\n> If you’re new to TypeScript and React, checkout [this handy cheatsheet](https://github.com/sw-yx/react-typescript-cheatsheet/)\n\n## Commands\n\nTSDX scaffolds your new library inside `/src`, and also sets up a [Parcel-based](https://parceljs.org) playground for it inside `/example`.\n\nThe recommended workflow is to run TSDX in one terminal:\n\n```bash\nnpm start # or yarn start\n```\n\nThis builds to `/dist` and runs the project in watch mode so any edits you save inside `src` causes a rebuild to `/dist`.\n\nThen run the example inside another:\n\n```bash\ncd example\nnpm i # or yarn to install dependencies\nnpm start # or yarn start\n```\n\nThe default example imports and live reloads whatever is in `/dist`, so if you are seeing an out of date component, make sure TSDX is running in watch mode like we recommend above. **No symlinking required**, we use [Parcel's aliasing](https://parceljs.org/module_resolution.html#aliases).\n\nTo do a one-off build, use `npm run build` or `yarn build`.\n\nTo run tests, use `npm test` or `yarn test`.\n\n## Configuration\n\nCode quality is set up for you with `prettier`, `husky`, and `lint-staged`. Adjust the respective fields in `package.json` accordingly.\n\n### Jest\n\nJest tests are set up to run with `npm test` or `yarn test`.\n\n### Bundle analysis\n\nCalculates the real cost of your library using [size-limit](https://github.com/ai/size-limit) with `npm run size` and visulize it with `npm run analyze`.\n\n#### Setup Files\n\nThis is the folder structure we set up for you:\n\n```txt\n/example\n  index.html\n  index.tsx       # test your component here in a demo app\n  package.json\n  tsconfig.json\n/src\n  index.tsx       # EDIT THIS\n/test\n  blah.test.tsx   # EDIT THIS\n.gitignore\npackage.json\nREADME.md         # EDIT THIS\ntsconfig.json\n```\n\n#### React Testing Library\n\nWe do not set up `react-testing-library` for you yet, we welcome contributions and documentation on this.\n\n### Rollup\n\nTSDX uses [Rollup](https://rollupjs.org) as a bundler and generates multiple rollup configs for various module formats and build settings. See [Optimizations](#optimizations) for details.\n\n### TypeScript\n\n`tsconfig.json` is set up to interpret `dom` and `esnext` types, as well as `react` for `jsx`. Adjust according to your needs.\n\n## Continuous Integration\n\n### GitHub Actions\n\nTwo actions are added by default:\n\n- `main` which installs deps w/ cache, lints, tests, and builds on all pushes against a Node and OS matrix\n- `size` which comments cost comparison of your library on every pull request using [`size-limit`](https://github.com/ai/size-limit)\n\n## Optimizations\n\nPlease see the main `tsdx` [optimizations docs](https://github.com/palmerhq/tsdx#optimizations). In particular, know that you can take advantage of development-only optimizations:\n\n```js\n// ./types/index.d.ts\ndeclare var __DEV__: boolean;\n\n// inside your code...\nif (__DEV__) {\n  console.log('foo');\n}\n```\n\nYou can also choose to install and use [invariant](https://github.com/palmerhq/tsdx#invariant) and [warning](https://github.com/palmerhq/tsdx#warning) functions.\n\n## Module Formats\n\nCJS, ESModules, and UMD module formats are supported.\n\nThe appropriate paths are configured in `package.json` and `dist/index.js` accordingly. Please report if any issues are found.\n\n## Deploying the Example Playground\n\nThe Playground is just a simple [Parcel](https://parceljs.org) app, you can deploy it anywhere you would normally deploy that. Here are some guidelines for **manually** deploying with the Netlify CLI (`npm i -g netlify-cli`):\n\n```bash\ncd example # if not already in the example folder\nnpm run build # builds to dist\nnetlify deploy # deploy the dist folder\n```\n\nAlternatively, if you already have a git repo connected, you can set up continuous deployment with Netlify:\n\n```bash\nnetlify init\n# build command: yarn build && cd example && yarn && yarn build\n# directory to deploy: example/dist\n# pick yes for netlify.toml\n```\n\n## Named Exports\n\nPer Palmer Group guidelines, [always use named exports.](https://github.com/palmerhq/typescript#exports) Code split inside your React app instead of your React library.\n\n## Including Styles\n\nThere are many ways to ship styles, including with CSS-in-JS. TSDX has no opinion on this, configure how you like.\n\nFor vanilla CSS, you can include it at the root directory and add it to the `files` section in your `package.json`, so that it can be imported separately by your users and run through their bundler's loader.\n\n## Publishing to NPM\n\nWe recommend using [np](https://github.com/sindresorhus/np).\n\n## Usage with Lerna\n\nWhen creating a new package with TSDX within a project set up with Lerna, you might encounter a `Cannot resolve dependency` error when trying to run the `example` project. To fix that you will need to make changes to the `package.json` file _inside the `example` directory_.\n\nThe problem is that due to the nature of how dependencies are installed in Lerna projects, the aliases in the example project's `package.json` might not point to the right place, as those dependencies might have been installed in the root of your Lerna project.\n\nChange the `alias` to point to where those packages are actually installed. This depends on the directory structure of your Lerna project, so the actual path might be different from the diff below.\n\n```diff\n   \"alias\": {\n-    \"react\": \"../node_modules/react\",\n-    \"react-dom\": \"../node_modules/react-dom\"\n+    \"react\": \"../../../node_modules/react\",\n+    \"react-dom\": \"../../../node_modules/react-dom\"\n   },\n```\n\nAn alternative to fixing this problem would be to remove aliases altogether and define the dependencies referenced as aliases as dev dependencies instead. [However, that might cause other problems.](https://github.com/palmerhq/tsdx/issues/64)\n","readmeFilename":"README.md","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.2-alpha.0","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-oVtbFrBoh2euLdrOQb4n84z13IeZnk7XJ4PsGwsPeYdss454mOJeIWNvvaRSTYZR3xlGhyAghFR5JjmG15Hvcw==","shasum":"41df02ff8b2b1f4d250e52bcc4b9304b6eb2bac0","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.2-alpha.0.tgz","fileCount":5,"unpackedSize":12797,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf25awCRA9TVsSAnZWagAAcosP/R/DMPJ/OKG9mVUrg4AY\nvs45y7d3Q7oEEstSCB0m3JN0CFIiyvxEq4kazkyoEJIavB1/IIYFEMbZ6cTC\n1PPHYq1mGatxSCW0TMFeEERzAQ9ozzifmPClCKzKdQLRichprjhG1CqFq+24\nLQVPPVr8zN1dVRR5QZvl2xxMjtoA97/UbHOkIjUhJzHQzlH4shBS5dHJl8nQ\nykhhrfhvEEBgToPetEO+FkjkJnPZIb4c2YxMYyJ+xpvy6emN2JS5KcjePok7\ncP8rOulm5Xwo5++NLrlMEuRrmA+pTcFluupMRGaRH8Ey8fPVKYosKtfGXjvo\n6DU2KUFasDvntajUw9a8d60K+SJDQ4NS/GB+9zrYj7TST3z3UowCkN5N0Oqr\nDi6Pfmxghdw+uCq0qYX+bbMBdbztnWQUHnlCwotgTzgm5Uabe73WHWQ8+j2+\n7C9t8N59NlDf1ObcvOb1/+XnsMEbL0YxWtfKW4iy7rOqXY+LkV+3lqLjpqn7\nwPBUuKQ1q5MSnZoTYJ6hfL5WrA9gJJg8jhmxg0BQU6WXaRsrpVig8mG0mEGS\npXv0x81fEBND928VVhj2IWnh1I1jlKYY76JgkDJAONKJI9hgqHyYxXTDQQLp\nDDgxnASVxb6NcEDhTObU5bTOSxnL2xSC8jtu6WYUViIu1kD2BjJXTKNg61+M\nQRJu\r\n=bjM+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBISbbizuSas039PvlBjUAg+/j8SGE7Jtg4MEQE8iQ4KAiBNHVN1P/b7SrQ4b4ZngKbnfPrmx18Y1LMLbkNoKHLBqA=="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.2-alpha.0_1608226480343_0.3375876457587632"},"_hasShrinkwrap":false},"0.6.2":{"version":"0.6.2","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"47b67fa1f024915bb8702d4153761d78d024a23f","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.2","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-iY7hM5zqBFPOOs90eFmsNtXUcmPW9K67K2jkzQjEui+U1O6fzgbxQnk2JuAncB4DjRTRPK9Yv/772vLtLhpcng==","shasum":"bfd4907586683860bc5f7ee0a622ea1dde5d2e89","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.2.tgz","fileCount":5,"unpackedSize":12886,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf25eNCRA9TVsSAnZWagAADq4QAKRxtz7CZSUut9QaqB7T\n8iFpmibbY+hEu8cfnLO2BpzPTBG89anD1ecsE/y+IaOP+oEvlfjc1VSsaBQd\nOCdfzAqO6Jq/EKeH0deOkCoxUvIOk27ybRNyDVOw+9Mriwya7e9Iy13WC5pZ\n2+DIEPFSJ0EbsEjDDt+mpjmdHKBDFseVHxbODzhjb6AJ+H015Rl+eLID8Oon\nVDo15Ug/JeziXF2eFSMVZ5/l0Vh2iSN+8TuZjuUzxJM/aCQsVdpEOShliwrj\n5JEYo3Voxsw39Kqb2WoSGvwveDimPIgamvmaK3aJg/ykzX5nXKJpv+1IwuxN\n6Tww3TfOPNp5PBQ1J1vPFSKDkE0Lf8CjNgxFs0m5Wnc98uWzCjY2AZgAJjeq\ntAZ2l/Urp5xJLf3SRYiCwMMmbvAi4ZYUmChJI+vaIgJmMYVS2tIV6HJboabQ\nFDxeU4r/Ya20sUle5UL7OPk+fNvlhfJm/jvg7odGfjf3z3dOkU002k3EZQ04\nc61bdb4ln7qkiBHQQH/nk8RTR9QUO6rVwIY4m/Y3h606Pq0Q6GRBJuAx7auX\nhEP9rgxX8xn1X2yJGTabaqFfsK927hajDzghR3MwCfopPq75zpQ2IDWNyfyq\n/lA1OhOrvo/heBQrE5MVENdItsNNVelI/zMSaVTj4shgAHgoJGQ3oc21grC+\nlOxS\r\n=DAti\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCBUZwHV7gGon8kN9taU+buI29nmlIB2QWLpeAZHVMQMQIgSto5CRHZxw/vebReAEZkaI0OpjIbph8h4gYfdSZNvuI="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.2_1608226701506_0.788873186706204"},"_hasShrinkwrap":false},"0.6.3":{"version":"0.6.3","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"494987dba952bc722975d51fc58fa4a1898fd2db","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.3","_nodeVersion":"12.18.3","_npmVersion":"lerna/3.22.1/node@v12.18.3+x64 (darwin)","dist":{"integrity":"sha512-MIfWXpUHW4F5tmuKwL4l9SBxoKZDhFbKYaeb7nAApSphrPI7I+psGCn8is7+tCI3sFuiNpu58WZV0RZeYQiEUQ==","shasum":"ded9f09ce1034b51f0c768670674096f7bd3ef0e","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.3.tgz","fileCount":15,"unpackedSize":18011,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf6iSHCRA9TVsSAnZWagAANL8P/39TbDaV5k1Rgo6lz37B\nugzlOqjMSdwlWuSSYehDQ7ELKBZGAl8nMhkpI5Dln6imnksfAY8LzD7w4ory\nSZ9kzRNEaU6+HDXMj+1WH9zYchKHKV7W0bK+jOea3s4ec2YjaetzM6Kgme5I\n2C94J96AfDWByqwR5/1sw651WQPXIxhsDmKRsDgdfryCR/UPNsAgc0L78ZLh\nL03odJC+jgz7JHN53GuIkLEgNSmW7nGNa+Y/agWqv/mw1dPnA1TvO2XrL0wy\n3/29w05HYaOBz+7DbooQ/RIJa6tlGzBacMQBT1Git80kf7b4zNU77I5qbscC\njg7Mm0ejQbmiRzIlTcw2zOlqXQwt8ZtR89yNH61z6YSbvP5iJNepjSMrsi/2\nKZilBxzWYhaihkN4ecWGoak+diEStMfeOf9WcfZRkahcccYCuNS0B6Oy5xJU\nqKyC4LJ/fZ/88r4vxSnewS0n+rnDy35Y5XpDuil5rF4ABfqu9TjYtwlUYq1w\neWvg/xWKCAQtZlNP4D5v4LzlZM0RaM75lLsdbYnjgrYwb2+P0F3Oax8ynhoh\ngedwbkrjdLuedoE7AcVSqpJgsRbkBZfvsxfhv+oe+tHi8nVCuTcMqQvto/jI\nOAlS+PfwrBWMQLUBXifsE+edCKZ6AGf2Yykwsi00HOLaW0+FHePNoaBR+jiB\nqHfh\r\n=GYFR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0cP3hD51PJvjCFAHe2+S9AVrq7JSN7ul9WbchvrcJcgIgUJXTKOAFrOYVnl0bUYIwkTbKrHb+exSjAWoepzfiJuw="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.3_1609180294890_0.16611066410838515"},"_hasShrinkwrap":false},"0.6.4":{"version":"0.6.4","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"52a1e6e4b7883c5dd24059bf99e9104874a3e88c","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.4","_nodeVersion":"12.18.3","_npmVersion":"lerna/3.22.1/node@v12.18.3+x64 (darwin)","dist":{"integrity":"sha512-M8tZqyBo/X8nMRSz1u+BsO0nzIwWqkeE/GhimhCXpl5vd+RbxyEByyVCdm4dQuLmUEybm3QaAbvbSknfkqJd2A==","shasum":"6e1d777b3e53dac8e250afd034169f553600a94b","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.4.tgz","fileCount":15,"unpackedSize":18229,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf6iURCRA9TVsSAnZWagAAy1EP/2fncfZUCVUIUmcdihbN\nRfVyT4zmRMD3tu7rkGgJ9asMih2VRM0gZ0ofm5OogU5X9QzDCAD7BlSBU2lR\nbcBw4k2ZppTx8yqDQLcTnulEHKclNu6Jb2uZXUItbiZFc35+wSpMzFCOwtHl\nn7xZeco6gLieykxJn1moge+37nn3S0zQBD5gm5odzQhx0VH0F03VD36GV3RE\nPDr5zmTa9VPoMVRaeIdOF2VG4//lgwFJm7nlUDdtYug0kqXKwbplnfw4rrhC\nxk5kOrsEfI7f4+STwFpEDcr9S9GUkXSgskgIQIbMN6W0hcYUsg9XT/oPVRP9\nxZZ3FgszzNuW4CHtxbysNFHJ95isrghWr22jYygtxHunHU9nZ/M83NdbtIcZ\nOk4QGLMbUe4RnF6Xkyu+/fz3jmRrxu3aOg2TDEBZhz21Xz6bPTjlaT0kSIlR\nivvg0lST17V26Xp6BUNceOEvo9yUy3/jk1t7zcF+yGcbuFRyUOIXDm/0NM0L\nzih5JTBGBHzJ7MWEdKI/2wcifyUm2nIrZ6zUy1CpOhyDAFvY9Gsoq3C9Sbol\ndgyIjyCd324u3hCLvGIP7Llkn0WoXaY8mcnDJpi+6HF56vmO2cAvFqRGj8TE\nsa8Wh5yOAZdTPR2en+O9nKYEfFc7EicB3lTHWcXLB3bR5nz3PAOIIfRXzGDV\nk6pc\r\n=NPSR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDMrH9mP99wvrJpsX5PAermknfwffvRMrpuPLZJQeSjUAiANvDYLVJ9+CdK3OxHflM3YXJJjJnt40089T89OMXqjXQ=="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.4_1609180433108_0.9916816295648176"},"_hasShrinkwrap":false},"0.6.5-alpha.0":{"version":"0.6.5-alpha.0","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"2392e0cf11680de9b73499886c54bfc6df97cba6","readme":"# TSDX React User Guide\n\nCongrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.\n\n> This TSDX setup is meant for developing React component libraries (not apps!) that can be published to NPM. If you’re looking to build a React-based app, you should use `create-react-app`, `razzle`, `nextjs`, `gatsby`, or `react-static`.\n\n> If you’re new to TypeScript and React, checkout [this handy cheatsheet](https://github.com/sw-yx/react-typescript-cheatsheet/)\n\n## Commands\n\nTSDX scaffolds your new library inside `/src`, and also sets up a [Parcel-based](https://parceljs.org) playground for it inside `/example`.\n\nThe recommended workflow is to run TSDX in one terminal:\n\n```bash\nnpm start # or yarn start\n```\n\nThis builds to `/dist` and runs the project in watch mode so any edits you save inside `src` causes a rebuild to `/dist`.\n\nThen run the example inside another:\n\n```bash\ncd example\nnpm i # or yarn to install dependencies\nnpm start # or yarn start\n```\n\nThe default example imports and live reloads whatever is in `/dist`, so if you are seeing an out of date component, make sure TSDX is running in watch mode like we recommend above. **No symlinking required**, we use [Parcel's aliasing](https://parceljs.org/module_resolution.html#aliases).\n\nTo do a one-off build, use `npm run build` or `yarn build`.\n\nTo run tests, use `npm test` or `yarn test`.\n\n## Configuration\n\nCode quality is set up for you with `prettier`, `husky`, and `lint-staged`. Adjust the respective fields in `package.json` accordingly.\n\n### Jest\n\nJest tests are set up to run with `npm test` or `yarn test`.\n\n### Bundle analysis\n\nCalculates the real cost of your library using [size-limit](https://github.com/ai/size-limit) with `npm run size` and visulize it with `npm run analyze`.\n\n#### Setup Files\n\nThis is the folder structure we set up for you:\n\n```txt\n/example\n  index.html\n  index.tsx       # test your component here in a demo app\n  package.json\n  tsconfig.json\n/src\n  index.tsx       # EDIT THIS\n/test\n  blah.test.tsx   # EDIT THIS\n.gitignore\npackage.json\nREADME.md         # EDIT THIS\ntsconfig.json\n```\n\n#### React Testing Library\n\nWe do not set up `react-testing-library` for you yet, we welcome contributions and documentation on this.\n\n### Rollup\n\nTSDX uses [Rollup](https://rollupjs.org) as a bundler and generates multiple rollup configs for various module formats and build settings. See [Optimizations](#optimizations) for details.\n\n### TypeScript\n\n`tsconfig.json` is set up to interpret `dom` and `esnext` types, as well as `react` for `jsx`. Adjust according to your needs.\n\n## Continuous Integration\n\n### GitHub Actions\n\nTwo actions are added by default:\n\n- `main` which installs deps w/ cache, lints, tests, and builds on all pushes against a Node and OS matrix\n- `size` which comments cost comparison of your library on every pull request using [`size-limit`](https://github.com/ai/size-limit)\n\n## Optimizations\n\nPlease see the main `tsdx` [optimizations docs](https://github.com/palmerhq/tsdx#optimizations). In particular, know that you can take advantage of development-only optimizations:\n\n```js\n// ./types/index.d.ts\ndeclare var __DEV__: boolean;\n\n// inside your code...\nif (__DEV__) {\n  console.log('foo');\n}\n```\n\nYou can also choose to install and use [invariant](https://github.com/palmerhq/tsdx#invariant) and [warning](https://github.com/palmerhq/tsdx#warning) functions.\n\n## Module Formats\n\nCJS, ESModules, and UMD module formats are supported.\n\nThe appropriate paths are configured in `package.json` and `dist/index.js` accordingly. Please report if any issues are found.\n\n## Deploying the Example Playground\n\nThe Playground is just a simple [Parcel](https://parceljs.org) app, you can deploy it anywhere you would normally deploy that. Here are some guidelines for **manually** deploying with the Netlify CLI (`npm i -g netlify-cli`):\n\n```bash\ncd example # if not already in the example folder\nnpm run build # builds to dist\nnetlify deploy # deploy the dist folder\n```\n\nAlternatively, if you already have a git repo connected, you can set up continuous deployment with Netlify:\n\n```bash\nnetlify init\n# build command: yarn build && cd example && yarn && yarn build\n# directory to deploy: example/dist\n# pick yes for netlify.toml\n```\n\n## Named Exports\n\nPer Palmer Group guidelines, [always use named exports.](https://github.com/palmerhq/typescript#exports) Code split inside your React app instead of your React library.\n\n## Including Styles\n\nThere are many ways to ship styles, including with CSS-in-JS. TSDX has no opinion on this, configure how you like.\n\nFor vanilla CSS, you can include it at the root directory and add it to the `files` section in your `package.json`, so that it can be imported separately by your users and run through their bundler's loader.\n\n## Publishing to NPM\n\nWe recommend using [np](https://github.com/sindresorhus/np).\n\n## Usage with Lerna\n\nWhen creating a new package with TSDX within a project set up with Lerna, you might encounter a `Cannot resolve dependency` error when trying to run the `example` project. To fix that you will need to make changes to the `package.json` file _inside the `example` directory_.\n\nThe problem is that due to the nature of how dependencies are installed in Lerna projects, the aliases in the example project's `package.json` might not point to the right place, as those dependencies might have been installed in the root of your Lerna project.\n\nChange the `alias` to point to where those packages are actually installed. This depends on the directory structure of your Lerna project, so the actual path might be different from the diff below.\n\n```diff\n   \"alias\": {\n-    \"react\": \"../node_modules/react\",\n-    \"react-dom\": \"../node_modules/react-dom\"\n+    \"react\": \"../../../node_modules/react\",\n+    \"react-dom\": \"../../../node_modules/react-dom\"\n   },\n```\n\nAn alternative to fixing this problem would be to remove aliases altogether and define the dependencies referenced as aliases as dev dependencies instead. [However, that might cause other problems.](https://github.com/palmerhq/tsdx/issues/64)\n","readmeFilename":"README.md","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.5-alpha.0","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-ztCIcCkA8lTeiMNa7wgNIsm+MhsREJGUlJdg9Oj8RhRSJfWIA/L9k5YKrh+ogvX5CYzd5znamFLjl2X878yohQ==","shasum":"20ea2cb7b8b4201de8489e4664e7743b32eb6f69","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.5-alpha.0.tgz","fileCount":15,"unpackedSize":18434,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf6iyiCRA9TVsSAnZWagAAkNQP/3EmB5j7Q1SaijiNpc6I\nNDilPAUJ8KIv+bnMSZrwLSAYkdkwrpW+8pQQOGbao8IHuhqjfkac+Tp1M39A\npwX/OoXQ45A/F8LoKNoIVlDX/aQCcpBt5fZOLlcX8PJCcA1iEKKzXO4xnbH2\nRocgf5xSXbwPLyCi75qHMcK0W7lcjyJB/OjpYVCKFwKNFWqfFJXIv7+YKPEk\nEz06SuKztL+L3fLfziXrfs0nydaPkj/pb64NIz9Ag6Lgl9/M1JPEH0k398AU\nhrBPPLVwWAZrlkG87y1vVnHrHVdBbbOczCE/FXfV++XoRMrT/Ef3AdRAal9i\n3W6BsV5rTBS3Mle00qAC0u8n4IcXVyro/uC8fPYp0ggBhZCTzdsbx/Cal/Qi\nqw8g3NPBQGUTxLHWUClZbUXKI3SM5r78Ucu6RpEeVLTFRGYbK4uwPBUXGmbn\ntLX+lTRkYEwSF8dhBWVjWlQJ3IO8fqQw1QxkKuED368sGI4OuCPXs99CcvOf\ngzm+NBvSHUpSFJm+AvKYIU+DSBxF4qVWkg75Bo7CCLD3mcdPybhcTGOtBIHB\nQmD27RaQpUa9GYkLig1P6A59SCB0AHX58R7nzq8c5ffwaTq121zDLtCXvrs3\ncpE9y3K4qM86GfEpnvPyuzY5GXMsUbKGkznnzBrX16J0FwG4stebjjDDieAN\n8zb1\r\n=Czjn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG+mDGo/Fss74a9UjfvbIojV6AwZkPA692yLChWv7eA+AiEAsqQTaDiBwCOGf0fzx1dATgUQ5SxlPnqfJaVjoQfU/ZM="}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.5-alpha.0_1609182369605_0.7197512453994117"},"_hasShrinkwrap":false},"0.6.5":{"version":"0.6.5","license":"MIT","main":"dist/index.js","typings":"dist/index.d.ts","engines":{"node":">=10"},"publishConfig":{"access":"public"},"scripts":{"start":"tsdx watch","build":"tsdx build","test":"tsdx test --passWithNoTests","lint":"tsdx lint","size":"size-limit","analyze":"size-limit --why"},"peerDependencies":{"react":">=16"},"husky":{"hooks":{"pre-commit":"tsdx lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"name":"@aaronmaturen/monofun-input","author":{"name":"Maturen, Aaron T."},"module":"dist/monofun-input.esm.js","size-limit":[{"path":"dist/monofun-input.cjs.production.min.js","limit":"10 KB"},{"path":"dist/monofun-input.esm.js","limit":"10 KB"}],"devDependencies":{"@size-limit/preset-small-lib":"^4.9.0","@types/react":"^17.0.0","@types/react-dom":"^17.0.0","husky":"^4.3.0","react":"^17.0.1","react-dom":"^17.0.1","size-limit":"^4.9.0","tsdx":"^0.14.1","tslib":"^2.0.3","typescript":"^4.1.2"},"gitHead":"6bbd03a17b62f6a1d9067883a87fc36fdc2eca1b","description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","_id":"@aaronmaturen/monofun-input@0.6.5","_nodeVersion":"12.20.0","_npmVersion":"lerna/3.22.1/node@v12.20.0+x64 (linux)","dist":{"integrity":"sha512-x5azU1lg9bhSqyh06HJyp8POAFxCEvlHSVNzbIqobGc54WdOfW3Z8l2dXz2NPgPnrzLQ83R3s37riDwgGV+/lA==","shasum":"912f7bbceb06999875831613f59f830b2870e189","tarball":"https://registry.npmjs.org/@aaronmaturen/monofun-input/-/monofun-input-0.6.5.tgz","fileCount":15,"unpackedSize":18523,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf6i23CRA9TVsSAnZWagAAAp8P/2xwaxbIZE0JpPV91+jD\n4HNLNTwqaQzq8tLCnlIJg+yt77zZSHvYiH2D0Rgr8ZXWMlnncp10Y7Kmwfmw\ndM89usyCw8lT6WBFSQdOEsmSMdF7v933zBorzFv8Xi9nNBGORx8RLPPhRsjj\nW5JzlD7G32XvR8yU0B59UF82fb1sb+EjFtBvchFne1W9nX4P6SSLs15EMX5e\ncN9cfzFNTWjlyZh06TmHFYtw9ivFU955R8vP90e94uDpI2nP96RU1NMIyeC8\neRh8D8PGviKezZkG8Ys1TZZqbWXkOvh2t7TO6L9HYBK36eJFFNETiv9YVKmt\nyfbrYdIDW73ZDWBEEY0nV+5avIrT/1srdHp92wiw/9JlhRFGmV1+YuUMvM7z\n2wB7U+KBNt9Bo9MfguHq+h0iJYDL5C6i7DrV1fE1GE7PLVF+GMhLw4tXfxVh\n8HgvR3obOVwvCp0/Z2xUFgEMg46W9GGqsSOnJGgGQhMD3h2JbJzoPGdRtQr6\nhlukbOLaH5QNZIFZHqXCUiBruqKBDAMerrzbBDd8sltposLz7chV0G4koI44\nm4GTN43rI3BsLE1HdE2BTXF2xwVPuPuFCsziR5IGmW06OEeEmA9viXw06xXz\nMbtME1nsI/m4xnVQX8FQ4cdw9OXmPi+S+yYrOpsilIouToRxENpR+5XMWqzV\nGKGH\r\n=FQY3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDXtnkQDMz7ccPi49WIE4fc/kIoSchecnk2X9uE2ZjmOQIhAKONbgGpb2iP4mizeHqkqN2UbXlAjE+RLVp4piw6P3SX"}]},"_npmUser":{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"},"directories":{},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/monofun-input_0.6.5_1609182647416_0.5376620830346459"},"_hasShrinkwrap":false}},"time":{"created":"2020-11-24T16:59:40.280Z","0.3.1":"2020-11-24T16:59:40.641Z","modified":"2022-04-04T10:55:43.585Z","0.3.2":"2020-11-24T17:00:57.917Z","0.4.2":"2020-11-24T17:09:21.817Z","0.5.1-alpha.1":"2020-12-17T00:38:19.369Z","0.5.1":"2020-12-17T00:44:47.491Z","0.6.0-alpha.0":"2020-12-17T15:25:27.396Z","0.6.0-alpha.1":"2020-12-17T16:18:22.396Z","0.6.0":"2020-12-17T16:37:28.406Z","0.6.1-alpha.0":"2020-12-17T17:07:40.660Z","0.6.1":"2020-12-17T17:13:42.457Z","0.6.2-alpha.0":"2020-12-17T17:34:40.482Z","0.6.2":"2020-12-17T17:38:21.709Z","0.6.3":"2020-12-28T18:31:35.017Z","0.6.4":"2020-12-28T18:33:53.266Z","0.6.5-alpha.0":"2020-12-28T19:06:09.771Z","0.6.5":"2020-12-28T19:10:47.517Z"},"maintainers":[{"name":"aaronmaturen","email":"aaron.maturen@gmail.com"}],"description":"Congrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.","author":{"name":"Maturen, Aaron T."},"license":"MIT","readme":"# TSDX React User Guide\n\nCongrats! You just saved yourself hours of work by bootstrapping this project with TSDX. Let’s get you oriented with what’s here and how to use it.\n\n> This TSDX setup is meant for developing React component libraries (not apps!) that can be published to NPM. If you’re looking to build a React-based app, you should use `create-react-app`, `razzle`, `nextjs`, `gatsby`, or `react-static`.\n\n> If you’re new to TypeScript and React, checkout [this handy cheatsheet](https://github.com/sw-yx/react-typescript-cheatsheet/)\n\n## Commands\n\nTSDX scaffolds your new library inside `/src`, and also sets up a [Parcel-based](https://parceljs.org) playground for it inside `/example`.\n\nThe recommended workflow is to run TSDX in one terminal:\n\n```bash\nnpm start # or yarn start\n```\n\nThis builds to `/dist` and runs the project in watch mode so any edits you save inside `src` causes a rebuild to `/dist`.\n\nThen run the example inside another:\n\n```bash\ncd example\nnpm i # or yarn to install dependencies\nnpm start # or yarn start\n```\n\nThe default example imports and live reloads whatever is in `/dist`, so if you are seeing an out of date component, make sure TSDX is running in watch mode like we recommend above. **No symlinking required**, we use [Parcel's aliasing](https://parceljs.org/module_resolution.html#aliases).\n\nTo do a one-off build, use `npm run build` or `yarn build`.\n\nTo run tests, use `npm test` or `yarn test`.\n\n## Configuration\n\nCode quality is set up for you with `prettier`, `husky`, and `lint-staged`. Adjust the respective fields in `package.json` accordingly.\n\n### Jest\n\nJest tests are set up to run with `npm test` or `yarn test`.\n\n### Bundle analysis\n\nCalculates the real cost of your library using [size-limit](https://github.com/ai/size-limit) with `npm run size` and visulize it with `npm run analyze`.\n\n#### Setup Files\n\nThis is the folder structure we set up for you:\n\n```txt\n/example\n  index.html\n  index.tsx       # test your component here in a demo app\n  package.json\n  tsconfig.json\n/src\n  index.tsx       # EDIT THIS\n/test\n  blah.test.tsx   # EDIT THIS\n.gitignore\npackage.json\nREADME.md         # EDIT THIS\ntsconfig.json\n```\n\n#### React Testing Library\n\nWe do not set up `react-testing-library` for you yet, we welcome contributions and documentation on this.\n\n### Rollup\n\nTSDX uses [Rollup](https://rollupjs.org) as a bundler and generates multiple rollup configs for various module formats and build settings. See [Optimizations](#optimizations) for details.\n\n### TypeScript\n\n`tsconfig.json` is set up to interpret `dom` and `esnext` types, as well as `react` for `jsx`. Adjust according to your needs.\n\n## Continuous Integration\n\n### GitHub Actions\n\nTwo actions are added by default:\n\n- `main` which installs deps w/ cache, lints, tests, and builds on all pushes against a Node and OS matrix\n- `size` which comments cost comparison of your library on every pull request using [`size-limit`](https://github.com/ai/size-limit)\n\n## Optimizations\n\nPlease see the main `tsdx` [optimizations docs](https://github.com/palmerhq/tsdx#optimizations). In particular, know that you can take advantage of development-only optimizations:\n\n```js\n// ./types/index.d.ts\ndeclare var __DEV__: boolean;\n\n// inside your code...\nif (__DEV__) {\n  console.log('foo');\n}\n```\n\nYou can also choose to install and use [invariant](https://github.com/palmerhq/tsdx#invariant) and [warning](https://github.com/palmerhq/tsdx#warning) functions.\n\n## Module Formats\n\nCJS, ESModules, and UMD module formats are supported.\n\nThe appropriate paths are configured in `package.json` and `dist/index.js` accordingly. Please report if any issues are found.\n\n## Deploying the Example Playground\n\nThe Playground is just a simple [Parcel](https://parceljs.org) app, you can deploy it anywhere you would normally deploy that. Here are some guidelines for **manually** deploying with the Netlify CLI (`npm i -g netlify-cli`):\n\n```bash\ncd example # if not already in the example folder\nnpm run build # builds to dist\nnetlify deploy # deploy the dist folder\n```\n\nAlternatively, if you already have a git repo connected, you can set up continuous deployment with Netlify:\n\n```bash\nnetlify init\n# build command: yarn build && cd example && yarn && yarn build\n# directory to deploy: example/dist\n# pick yes for netlify.toml\n```\n\n## Named Exports\n\nPer Palmer Group guidelines, [always use named exports.](https://github.com/palmerhq/typescript#exports) Code split inside your React app instead of your React library.\n\n## Including Styles\n\nThere are many ways to ship styles, including with CSS-in-JS. TSDX has no opinion on this, configure how you like.\n\nFor vanilla CSS, you can include it at the root directory and add it to the `files` section in your `package.json`, so that it can be imported separately by your users and run through their bundler's loader.\n\n## Publishing to NPM\n\nWe recommend using [np](https://github.com/sindresorhus/np).\n\n## Usage with Lerna\n\nWhen creating a new package with TSDX within a project set up with Lerna, you might encounter a `Cannot resolve dependency` error when trying to run the `example` project. To fix that you will need to make changes to the `package.json` file _inside the `example` directory_.\n\nThe problem is that due to the nature of how dependencies are installed in Lerna projects, the aliases in the example project's `package.json` might not point to the right place, as those dependencies might have been installed in the root of your Lerna project.\n\nChange the `alias` to point to where those packages are actually installed. This depends on the directory structure of your Lerna project, so the actual path might be different from the diff below.\n\n```diff\n   \"alias\": {\n-    \"react\": \"../node_modules/react\",\n-    \"react-dom\": \"../node_modules/react-dom\"\n+    \"react\": \"../../../node_modules/react\",\n+    \"react-dom\": \"../../../node_modules/react-dom\"\n   },\n```\n\nAn alternative to fixing this problem would be to remove aliases altogether and define the dependencies referenced as aliases as dev dependencies instead. [However, that might cause other problems.](https://github.com/palmerhq/tsdx/issues/64)\n","readmeFilename":"README.md"}