diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..5760be5 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,12 @@ +# http://editorconfig.org +root = true + +[*] +indent_style = space +indent_size = 2 +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[*.md] +trim_trailing_whitespace = false diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 0000000..6615fec --- /dev/null +++ b/.eslintrc @@ -0,0 +1,9 @@ +{ + "env": { + "node": true + }, + "rules": { + "semi": [2, "never"], + "curly": 0 + } +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..32ec2ff --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*.log +node_modules/ diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..2edd3af --- /dev/null +++ b/.travis.yml @@ -0,0 +1,7 @@ +language: node_js +node_js: + - "0.11" + - "0.12" + - "iojs" + +script: "npm run test-ci" diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..449d1cc --- /dev/null +++ b/LICENSE @@ -0,0 +1,24 @@ +The MIT License (MIT) + +Copyright (c) 2015 Jorge Bucaran + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..a3eaf56 --- /dev/null +++ b/README.md @@ -0,0 +1,51 @@ +
+ + + +
+ +> [Babel](babeljs.io) plugin for _[Fly][fly]_. + +[![][fly-badge]][fly] +[![npm package][npm-ver-link]][releases] +[![][dl-badge]][npm-pkg-link] +[![][travis-badge]][travis-link] +[![][mit-badge]][mit] + +## Usage +> Check out the [documentation](https://babeljs.io/docs/usage/options/) to see the available options. + +### Install + +```a +npm install -D fly-babel +``` + +### Example + +```js +export function* text () { + yield this + .source("src/**/*.js") + .babel({ stage: 0 }) + .target("dist/") +} +``` + +# License + +[MIT][mit] © [Jorge Bucaran][author] et [al][contributors] + + +[mit]: http://opensource.org/licenses/MIT +[author]: http://about.bucaran.me +[contributors]: https://github.com/bucaran/fly-babel/graphs/contributors +[releases]: https://github.com/bucaran/fly-babel/releases +[fly]: https://www.github.com/flyjs/fly +[fly-badge]: https://img.shields.io/badge/fly-JS-05B3E1.svg?style=flat-square +[mit-badge]: https://img.shields.io/badge/license-MIT-444444.svg?style=flat-square +[npm-pkg-link]: https://www.npmjs.org/package/fly-babel +[npm-ver-link]: https://img.shields.io/npm/v/fly-babel.svg?style=flat-square +[dl-badge]: http://img.shields.io/npm/dm/fly-babel.svg?style=flat-square +[travis-link]: https://travis-ci.org/bucaran/fly-babel +[travis-badge]: http://img.shields.io/travis/bucaran/fly-babel.svg?style=flat-square diff --git a/index.js b/index.js new file mode 100644 index 0000000..d8e0936 --- /dev/null +++ b/index.js @@ -0,0 +1,6 @@ +module.exports = function () { + return this.filter("babel", (src, opts) => { + try { return require("babel").transform(src, opts).code } + catch (e) { throw e } + }) +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..5c8ffe4 --- /dev/null +++ b/package.json @@ -0,0 +1,29 @@ +{ + "name": "fly-babel", + "version": "0.1.1", + "description": "Babel plugin for Fly", + "license": "MIT", + "repository": "https://github.com/bucaran/fly-babel", + "main": "index.js", + "scripts": { + "lint": "eslint *.js", + "tape": "tape test/*.js", + "test": "npm run lint && npm run tape | tspec", + "build": "echo No build task specified.", + "deploy": "npm run test && git push origin master && npm publish", + "test-ci": "node --harmony --harmony_arrow_functions ./node_modules/tape/bin/tape test/*.js" + }, + "author": "Jorge Bucaran", + "dependencies": { + "babel": "^5.6.14" + }, + "devDependencies": { + "eslint": "^0.21.2", + "tap-spec": "^4.0.2", + "tape": "^4.0.0" + }, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.11.0" + } +} diff --git a/test/index.js b/test/index.js new file mode 100644 index 0000000..5aacd2c --- /dev/null +++ b/test/index.js @@ -0,0 +1,6 @@ +const test = require("tape").test + +test("fly-babel", function (t) { + t.ok(true, "ok") + t.end() +})