32 lines
752 B
JavaScript
32 lines
752 B
JavaScript
'use strict';
|
|
|
|
var babel = require('babel-core');
|
|
var coffee = require('coffee-script');
|
|
|
|
var tsPreprocessor = require('./ts-preprocessor');
|
|
|
|
var defaultLibraries = [
|
|
require.resolve('./jest.d.ts'),
|
|
require.resolve('../src/modern/class/React.d.ts')
|
|
];
|
|
|
|
var ts = tsPreprocessor(defaultLibraries);
|
|
|
|
module.exports = {
|
|
process: function(src, path) {
|
|
if (path.match(/\.coffee$/)) {
|
|
return coffee.compile(src, {'bare': true});
|
|
}
|
|
if (path.match(/\.ts$/) && !path.match(/\.d\.ts$/)) {
|
|
return ts.compile(src, path);
|
|
}
|
|
if (!path.match(/\/node_modules\//)) {
|
|
return babel.transform(src, {
|
|
blacklist: ['spec.functionName', 'validation.react'],
|
|
filename: path
|
|
}).code;
|
|
}
|
|
return src;
|
|
}
|
|
};
|