{"maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"keywords":["browserify","transform","optional"],"dist-tags":{"latest":"1.0.1"},"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"description":"A browserify transform that allows optional dependencies in try..catch blocks","readme":"# browserify-optional\n\nIt is a common pattern in Node to support optional dependencies via requires in try..catch blocks.\nBrowserify doesn't support this by default and throws a compile time error when it cannot find a \nmodule. You can solve the problem by using browserify's exclude option, but this works globally\ninstead of at a per-module level. This transform fixes the problem by moving the compile time \nerror to a runtime error for requires of missing modules inside try..catch blocks.\n\n## Example\n\nThe transform would transform the following code such that requiring `missing-module` would throw\na runtime error instead of a compile time error, making the code work as expected.\n\n```javascript\ntry {\n  var x = require('missing-module');\n} catch (e) {\n  var x = require('replacement-module');\n}\n```\n\nTo set it up in browserify, add this to your package.json:\n\n```json\n\"browserify\": {\n  \"transform\": [\"browserify-optional\"]\n}\n```\n\n## License\n\nMIT\n","repository":{"type":"git","url":"git://github.com/devongovett/browserify-optional.git"},"users":{"brandonpapworth":true},"bugs":{"url":"https://github.com/devongovett/browserify-optional/issues"},"license":"MIT","versions":{"1.0.0":{"name":"browserify-optional","version":"1.0.0","description":"A browserify transform that allows optional dependencies in try..catch blocks","main":"index.js","scripts":{"test":"mocha"},"repository":{"type":"git","url":"git://github.com/devongovett/browserify-optional.git"},"keywords":["browserify","transform","optional"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/devongovett/browserify-optional/issues"},"homepage":"https://github.com/devongovett/browserify-optional","devDependencies":{"concat-stream":"^1.4.7","mocha":"^2.2.1"},"dependencies":{"ast-transform":"0.0.0","ast-types":"^0.7.0","browser-resolve":"^1.8.1"},"gitHead":"8f7b7776c06d1bcc875c9bf2e166a73b20622024","_id":"browserify-optional@1.0.0","_shasum":"20cf7ab1e7bf014cbf63782d35d75b62dab4b6f1","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"dist":{"shasum":"20cf7ab1e7bf014cbf63782d35d75b62dab4b6f1","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/browserify-optional/-/browserify-optional-1.0.0.tgz","integrity":"sha512-6dMI6nrnukmCXc69qsZmmhzGGp4jETCptC8YXDMFdfBTKHtih6b83rYIU+mdGXAtVsio7YZ+viRAEbZqROAN5w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCtuxtTYm3gb8QwEdgXDZc5NaEoiS8omUoZbmVU1dt1kwIgfzAs7DG7TBoWV3QfoBWIIPc6Jw2Ig3ANcG//T2mIaZk="}]}},"1.0.1":{"name":"browserify-optional","version":"1.0.1","description":"A browserify transform that allows optional dependencies in try..catch blocks","main":"index.js","scripts":{"test":"mocha"},"repository":{"type":"git","url":"git://github.com/devongovett/browserify-optional.git"},"keywords":["browserify","transform","optional"],"author":{"name":"Devon Govett","email":"devongovett@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/devongovett/browserify-optional/issues"},"homepage":"https://github.com/devongovett/browserify-optional","devDependencies":{"concat-stream":"^1.4.7","mocha":"^2.2.1"},"dependencies":{"ast-transform":"0.0.0","ast-types":"^0.7.0","browser-resolve":"^1.8.1"},"gitHead":"8791cc55139d8669905bd151346408a4b935d3bc","_id":"browserify-optional@1.0.1","_shasum":"1e13722cfde0d85f121676c2a72ced533a018869","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.1","_npmUser":{"name":"anonymous","email":"devongovett@gmail.com"},"dist":{"shasum":"1e13722cfde0d85f121676c2a72ced533a018869","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/browserify-optional/-/browserify-optional-1.0.1.tgz","integrity":"sha512-VrhjbZ+Ba5mDiSYEuPelekQMfTbhcA2DhLk2VQWqdcCROWeFqlTcXZ7yfRkXCIl8E+g4gINJYJiRB7WEtfomAQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDBAsd55dGaS5Fs64jUwYL4N3arKXkm4dKpO3wIg8hFvAIhAIbX6NfqqioaiHQRpnocPPMfXNyZWWBh3OucnDNIluge"}]},"maintainers":[{"name":"anonymous","email":"devongovett@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/browserify-optional-1.0.1.tgz_1503961760700_0.16895781201310456"}}},"name":"browserify-optional","time":{"modified":"2022-06-13T05:10:59.008Z","created":"2015-03-23T04:54:33.099Z","1.0.0":"2015-03-23T04:54:33.099Z","1.0.1":"2017-08-28T23:09:20.794Z"},"readmeFilename":"README.md","homepage":"https://github.com/devongovett/browserify-optional"}