You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
744 B

3 weeks ago
var buble = require('./buble.js')
// selectively support some handy ES2015 features in templates.
var defaultOptions = {
transforms: {
modules: false,
// this is a custom feature for stripping with from Vue render functions.
stripWith: true,
// custom feature ensures with context targets functional render
stripWithFunctional: false
},
// allow spread...
objectAssign: 'Object.assign'
}
module.exports = function transpile (code, opts) {
if (opts) {
opts = Object.assign({}, defaultOptions, opts)
opts.transforms = Object.assign({}, defaultOptions.transforms, opts.transforms)
} else {
opts = defaultOptions
}
var code = buble.transform(code, opts).code
// console.log(code)
return code
}