diff options
Diffstat (limited to 'node_modules/babel-plugin-syntax-trailing-function-commas')
4 files changed, 183 insertions, 0 deletions
diff --git a/node_modules/babel-plugin-syntax-trailing-function-commas/.npmignore b/node_modules/babel-plugin-syntax-trailing-function-commas/.npmignore new file mode 100644 index 0000000..3185290 --- /dev/null +++ b/node_modules/babel-plugin-syntax-trailing-function-commas/.npmignore @@ -0,0 +1,4 @@ +node_modules +*.log +src +test diff --git a/node_modules/babel-plugin-syntax-trailing-function-commas/README.md b/node_modules/babel-plugin-syntax-trailing-function-commas/README.md new file mode 100644 index 0000000..fd7022b --- /dev/null +++ b/node_modules/babel-plugin-syntax-trailing-function-commas/README.md @@ -0,0 +1,123 @@ +# babel-plugin-syntax-trailing-function-commas + +Compile trailing function commas to ES5 + + +```js +function clownPuppiesEverywhere( + param1, + param2, +) { /* ... */ } + +clownPuppiesEverywhere( + 'foo', + 'bar', +); +``` +[Try in REPL](http://babeljs.io/repl/#?evaluate=true&presets=es2015%2Cstage-0&code=function%20clownPuppiesEverywhere(%0A%20%20param1%2C%0A%20%20param2%2C%0A)%20%7B%20%2F*%20...%20*%2F%20%7D%0A%0AclownPuppiesEverywhere(%0A%20%20'foo'%2C%0A%20%20'bar'%2C%0A)%3B) + +## Example + +### Basic +This is an example from the [Proposal](https://github.com/jeffmo/es-trailing-function-commas). + +Let's say you have this function: + +```js +function clownPuppiesEverywhere( + param1, + param2 +) { /* ... */ } + +clownPuppiesEverywhere( + 'foo', + 'bar' +); +``` + +If you want to have a new parameter called `param3`, the diff output would be like that: + +```diff +function clownPuppiesEverywhere( + param1, +- param2 ++ param2, // Change this line to add a comma ++ param3 // Add param3 +) { /* ... */ } + +clownPuppiesEverywhere( + 'foo', +- 'bar' ++ 'bar', // Change this line to add a comma ++ 'baz' // Add param3 +); +``` +In total, you have to change 2 lines for the function declaration and 2 lines for each usage. + +If you had your function defined with trailing commas: + +```js +function clownPuppiesEverywhere( + param1, + param2, +) { /* ... */ } + +clownPuppiesEverywhere( + 'foo', + 'bar', +); +``` +Adding a new parameter would only change one line in the function declaration and one line for each usage: + +```diff +function clownPuppiesEverywhere( + param1, + param2, ++ param3, // Add param3 +) { /* ... */ } + +clownPuppiesEverywhere( + 'foo', + 'bar', ++ 'baz', // Add param3 +); +``` +In the end, your diff output will be cleaner and easier to read, it would be much quicker to add a new parameter to your functions, it also makes it easier to copy paste elements and move code around. + +## Installation + +```sh +npm install --save-dev babel-plugin-syntax-trailing-function-commas +``` + +## Usage + +### Via `.babelrc` (Recommended) + +**.babelrc** + +```json +{ + "plugins": ["syntax-trailing-function-commas"] +} +``` + +### Via CLI + +```sh +babel --plugins syntax-trailing-function-commas script.js +``` + +### Via Node API + +```javascript +require("babel-core").transform("code", { + plugins: ["syntax-trailing-function-commas"] +}); +``` + +## References + +* [Proposal](https://github.com/jeffmo/es-trailing-function-commas) +* [Spec](http://jeffmo.github.io/es-trailing-function-commas/) +* [Why you should enforce Dangling Commas for Multiline Statements](https://medium.com/@nikgraf/why-you-should-enforce-dangling-commas-for-multiline-statements-d034c98e36f8) diff --git a/node_modules/babel-plugin-syntax-trailing-function-commas/lib/index.js b/node_modules/babel-plugin-syntax-trailing-function-commas/lib/index.js new file mode 100644 index 0000000..3190af7 --- /dev/null +++ b/node_modules/babel-plugin-syntax-trailing-function-commas/lib/index.js @@ -0,0 +1,13 @@ +"use strict"; + +exports.__esModule = true; + +exports.default = function () { + return { + manipulateOptions: function manipulateOptions(opts, parserOpts) { + parserOpts.plugins.push("trailingFunctionCommas"); + } + }; +}; + +module.exports = exports["default"];
\ No newline at end of file diff --git a/node_modules/babel-plugin-syntax-trailing-function-commas/package.json b/node_modules/babel-plugin-syntax-trailing-function-commas/package.json new file mode 100644 index 0000000..b549fe6 --- /dev/null +++ b/node_modules/babel-plugin-syntax-trailing-function-commas/package.json @@ -0,0 +1,43 @@ +{ + "_from": "babel-plugin-syntax-trailing-function-commas@^6.22.0", + "_id": "babel-plugin-syntax-trailing-function-commas@6.22.0", + "_inBundle": false, + "_integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "_location": "/babel-plugin-syntax-trailing-function-commas", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "babel-plugin-syntax-trailing-function-commas@^6.22.0", + "name": "babel-plugin-syntax-trailing-function-commas", + "escapedName": "babel-plugin-syntax-trailing-function-commas", + "rawSpec": "^6.22.0", + "saveSpec": null, + "fetchSpec": "^6.22.0" + }, + "_requiredBy": [ + "/babel-preset-stage-3" + ], + "_resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "_shasum": "ba0360937f8d06e40180a43fe0d5616fff532cf3", + "_spec": "babel-plugin-syntax-trailing-function-commas@^6.22.0", + "_where": "/home/pruss/Dev/3-minute-website/node_modules/babel-preset-stage-3", + "bundleDependencies": false, + "dependencies": {}, + "deprecated": false, + "description": "Compile trailing function commas to ES5", + "devDependencies": { + "babel-helper-plugin-test-runner": "^6.22.0" + }, + "keywords": [ + "babel-plugin" + ], + "license": "MIT", + "main": "lib/index.js", + "name": "babel-plugin-syntax-trailing-function-commas", + "repository": { + "type": "git", + "url": "https://github.com/babel/babel/tree/master/packages/babel-plugin-syntax-trailing-function-commas" + }, + "version": "6.22.0" +} |