mirror of
https://github.com/Qortal/qortal-ui.git
synced 2025-02-11 17:55:51 +00:00
165 lines
3.8 KiB
JavaScript
165 lines
3.8 KiB
JavaScript
import babel from '@rollup/plugin-babel'
|
|
import { nodeResolve } from '@rollup/plugin-node-resolve'
|
|
import builtins from 'rollup-plugin-node-builtins'
|
|
import globals from 'rollup-plugin-node-globals'
|
|
import commonjs from '@rollup/plugin-commonjs'
|
|
|
|
import sass from 'rollup-plugin-sass'
|
|
import autoprefixer from 'autoprefixer'
|
|
import postcss from 'postcss'
|
|
import { terser } from 'rollup-plugin-terser'
|
|
|
|
const sassOptions = {
|
|
output: 'build/styles.bundle.css',
|
|
processor: css => postcss([autoprefixer])
|
|
.process(css)
|
|
.then(result => result.css)
|
|
}
|
|
|
|
const babelOptions = {
|
|
babelHelpers: 'bundled',
|
|
exclude: ['node_modules/babel-runtime/**', /[\/\\]core-js/, 'node_modules/@babel/runtime-corejs3/**', 'node_modules/@webcomponentsjs/**'],
|
|
ignore: [/[\/\\]core-js/, 'node_modules/@babel/runtime-corejs3/**', 'node_modules/@webcomponentsjs/**'],
|
|
runtimeHelpers: true,
|
|
presets: [
|
|
[
|
|
'@babel/preset-env',
|
|
{
|
|
useBuiltIns: 'entry',
|
|
corejs: '3'
|
|
}
|
|
]
|
|
],
|
|
plugins: [
|
|
'@babel/plugin-syntax-dynamic-import',
|
|
[
|
|
'@babel/transform-runtime', {
|
|
corejs: 3
|
|
}
|
|
]
|
|
]
|
|
}
|
|
|
|
const plugins = [
|
|
nodeResolve({
|
|
module: true
|
|
}),
|
|
commonjs({}),
|
|
globals(),
|
|
builtins(),
|
|
sass(sassOptions)
|
|
]
|
|
|
|
if (process.env.NODE_ENV === 'production') {
|
|
plugins.push(
|
|
terser()
|
|
)
|
|
}
|
|
|
|
export default [
|
|
{
|
|
context: 'window',
|
|
input: 'src/main.js',
|
|
output: [
|
|
{
|
|
dir: 'build/es6',
|
|
format: 'es'
|
|
}
|
|
],
|
|
plugins: plugins.concat([
|
|
babel.babel(babelOptions)
|
|
])
|
|
},
|
|
{
|
|
context: 'self',
|
|
input: 'src/worker.js',
|
|
output: [
|
|
{
|
|
dir: 'build/es6',
|
|
format: 'iife'
|
|
}
|
|
],
|
|
plugins: plugins.concat([
|
|
babel.babel(babelOptions)
|
|
])
|
|
},
|
|
{
|
|
context: 'window',
|
|
input: 'src/plugins/plugin-mainjs-loader.js',
|
|
output: [
|
|
{
|
|
dir: 'build/es6',
|
|
format: 'iife'
|
|
}
|
|
],
|
|
plugins: plugins.concat([
|
|
babel.babel(babelOptions)
|
|
])
|
|
},
|
|
{
|
|
context: 'window',
|
|
input: 'src/main.js',
|
|
output: [
|
|
{
|
|
dir: 'build/es5',
|
|
format: 'system'
|
|
}
|
|
],
|
|
plugins: plugins.concat([babel({
|
|
...babelOptions//,
|
|
})])
|
|
},
|
|
{
|
|
context: 'window',
|
|
input: 'plugins/core/wallet/wallet-app.js',
|
|
output: [
|
|
{
|
|
dir: 'plugins/core/wallet/build',
|
|
format: 'iife'
|
|
}
|
|
],
|
|
plugins: plugins.concat([
|
|
babel.babel(babelOptions)
|
|
])
|
|
},
|
|
{
|
|
context: 'window',
|
|
input: 'plugins/core/main.src.js',
|
|
output: [
|
|
{
|
|
file: 'plugins/core/main.js',
|
|
format: 'iife'
|
|
}
|
|
],
|
|
plugins: plugins.concat([
|
|
babel.babel(babelOptions)
|
|
])
|
|
},
|
|
{
|
|
context: 'window',
|
|
input: 'plugins/core/send-coin/send-coin.src.js',
|
|
output: [
|
|
{
|
|
file: 'plugins/core/send-coin/send-coin.js',
|
|
format: 'iife'
|
|
}
|
|
],
|
|
plugins: plugins.concat([
|
|
babel.babel(babelOptions)
|
|
])
|
|
},
|
|
{
|
|
context: 'window',
|
|
input: 'plugins/chat/chat-app.src.js',
|
|
output: [
|
|
{
|
|
file: 'plugins/chat/chat-app.js',
|
|
format: 'iife'
|
|
}
|
|
],
|
|
plugins: plugins.concat([
|
|
babel.babel(babelOptions)
|
|
])
|
|
}
|
|
]
|