├── .gitignore ├── README.md ├── index.js └── package.json /.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | node_modules -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # don't use this! 2 | 3 | use [babel-loader](https://github.com/babel/babel-loader) instead. 4 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | var jstransform = require('jstransform/simple'); 2 | var loaderUtils = require('loader-utils'); 3 | 4 | module.exports = function(source) { 5 | this.cacheable && this.cacheable(); 6 | 7 | var sourceFilename = loaderUtils.getRemainingRequest(this); 8 | var current = loaderUtils.getCurrentRequest(this); 9 | 10 | var query = loaderUtils.parseQuery(this.query); 11 | if (query.insertPragma) { 12 | source = '/** @jsx ' + query.insertPragma + ' */' + source; 13 | } 14 | 15 | var transform = jstransform.transform(source, { 16 | react: true, 17 | harmony: query.harmony, 18 | stripTypes: query.stripTypes, 19 | es5: query.es5, 20 | sourceMap: this.sourceMap 21 | }); 22 | if (transform.sourceMap) { 23 | transform.sourceMap.sources = [sourceFilename]; 24 | transform.sourceMap.file = current; 25 | transform.sourceMap.sourcesContent = [source]; 26 | } 27 | this.callback(null, transform.code, transform.sourceMap); 28 | }; 29 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jsx-loader", 3 | "version": "0.13.2", 4 | "description": "JSX loader for webpack", 5 | "main": "index.js", 6 | "dependencies": { 7 | "jstransform": "11", 8 | "loader-utils": "^0.2.2" 9 | }, 10 | "scripts": { 11 | "test": "echo \"Error: no test specified\" && exit 1" 12 | }, 13 | "repository": { 14 | "type": "git", 15 | "url": "https://github.com/petehunt/jsx-loader" 16 | }, 17 | "keywords": [ 18 | "webpack", 19 | "jsx" 20 | ], 21 | "author": "Pete Hunt", 22 | "license": "Apache 2" 23 | } 24 | --------------------------------------------------------------------------------