This is a FuseBox plugin that compiles Riot tag files
const { RiotPlugin } = require('fusebox-riot-plugin')
const fuse = FuseBox.init({
homeDir: 'src',
output: 'dist/$name.bundle.js',
plugins: [
RiotPlugin()
]
})If you want to apply Babel transpilation after the compilation step you need to use the chaining feature of FuseBox. As a prerequisite you need to install babel-core and the individual presets/transformers needed.
The example given below adds es2015 features on top of Riot's built-in transpiler.
yarn add babel-core babel-preset-es2015-riot --dev
npm install babel-core babel-preset-es2015-riot --save-dev
const fuse = FuseBox.init({
homeDir: 'src',
output: 'dist/$name.bundle.js',
plugins: [
[
RiotPlugin(),
BabelPlugin({
config: {
presets: ['es2015-riot']
}
})
]
]
})It is also possible to specify plugin options which will be directly passed to the Riot compiler (see Riot compiler options).
Example:
const fuse = FuseBox.init({
homeDir: 'src',
output: 'dist/$name.bundle.js',
plugins: [
RiotPlugin({
compact: true,
type: 'typescript'
})
]
})