qortal-ui/plugins/build-config.js

159 lines
4.0 KiB
JavaScript
Raw Permalink Normal View History

require('events').EventEmitter.defaultMaxListeners = 0
2022-11-07 23:10:17 +02:00
const path = require('path')
const progress = require('rollup-plugin-progress')
const replace = require('@rollup/plugin-replace')
const globals = require('rollup-plugin-node-globals')
const commonjs = require('@rollup/plugin-commonjs')
const alias = require('@rollup/plugin-alias')
const terser = require('@rollup/plugin-terser')
const babel = require('@rollup/plugin-babel')
const webWorkerLoader = require('@qortal/rollup-plugin-web-worker-loader')
const { nodeResolve } = require('@rollup/plugin-node-resolve')
2021-12-25 14:39:47 +01:00
const aliases = {}
2021-12-25 14:39:47 +01:00
const generateRollupConfig = (inputFile, outputFile) => {
2022-08-06 18:13:35 +03:00
return {
inputOptions: {
onwarn: (warning, rollupWarn) => {
if (warning.code !== 'CIRCULAR_DEPENDENCY') {
rollupWarn(warning)
2022-08-06 18:13:35 +03:00
}
},
input: inputFile,
plugins: [
alias({
entries: Object.keys(aliases).map((find) => {
return {
find,
replacement: aliases[find]
}
2022-08-06 18:13:35 +03:00
}),
}),
nodeResolve({
preferBuiltins: false,
mainFields: ['module', 'browser']
2022-08-06 18:13:35 +03:00
}),
replace({
preventAssignment: true,
'process.env.NODE_ENV': JSON.stringify('production')
2022-08-06 18:13:35 +03:00
}),
commonjs(),
globals(),
progress(),
2022-11-07 23:10:17 +02:00
webWorkerLoader(),
2022-08-06 18:13:35 +03:00
babel.babel({
babelHelpers: 'bundled',
exclude: 'node_modules/**'
2022-08-06 18:13:35 +03:00
}),
terser({
compress: true,
output: {
comments: false
2022-08-06 18:13:35 +03:00
},
}),
],
},
outputOptions: {
file: outputFile,
format: 'umd'
}
}
}
2021-12-25 14:39:47 +01:00
const generateForPlugins = () => {
2024-03-29 09:00:10 +01:00
return [
2022-08-06 18:13:35 +03:00
{
in: 'plugins/core/main.src.js',
out: 'plugins/core/main.js'
2022-08-06 18:13:35 +03:00
},
2023-06-22 17:40:49 +02:00
{
in: 'plugins/core/become-minter/become-minter.src.js',
out: 'plugins/core/become-minter/become-minter.js'
2023-06-22 17:40:49 +02:00
},
2023-09-03 11:54:11 +02:00
{
in: 'plugins/core/data-management/data-management.src.js',
out: 'plugins/core/data-management/data-management.js'
2023-09-03 11:54:11 +02:00
},
2022-08-06 18:13:35 +03:00
{
in: 'plugins/core/group-management/group-management.src.js',
out: 'plugins/core/group-management/group-management.js'
2022-08-06 18:13:35 +03:00
},
{
in: 'plugins/core/minting-info/minting-info.src.js',
out: 'plugins/core/minting-info/minting-info.js'
},
2022-08-06 18:13:35 +03:00
{
in: 'plugins/core/name-registration/name-registration.src.js',
out: 'plugins/core/name-registration/name-registration.js'
2022-08-06 18:13:35 +03:00
},
{
in: 'plugins/core/names-market/names-market.src.js',
out: 'plugins/core/names-market/names-market.js'
2022-08-06 18:13:35 +03:00
},
{
in: 'plugins/core/node-management/node-management.src.js',
out: 'plugins/core/node-management/node-management.js'
2022-08-06 18:13:35 +03:00
},
{
in: 'plugins/core/overview-page/overview-page.src.js',
out: 'plugins/core/overview-page/overview-page.js'
2022-08-06 18:13:35 +03:00
},
2023-02-17 16:48:35 +01:00
{
in: 'plugins/core/puzzles/puzzles.src.js',
out: 'plugins/core/puzzles/puzzles.js'
2023-02-17 16:48:35 +01:00
},
2022-08-06 18:13:35 +03:00
{
in: 'plugins/core/q-app/q-apps.src.js',
out: 'plugins/core/q-app/q-apps.js'
2022-08-06 18:13:35 +03:00
},
{
in: 'plugins/core/q-chat/q-chat.src.js',
out: 'plugins/core/q-chat/q-chat.js'
2022-08-06 18:13:35 +03:00
},
{
in: 'plugins/core/qdn/browser/browser.src.js',
out: 'plugins/core/qdn/browser/browser.js'
2022-08-06 18:13:35 +03:00
},
{
in: 'plugins/core/qdn/publish/publish.src.js',
out: 'plugins/core/qdn/publish/publish.js'
2022-08-06 18:13:35 +03:00
},
{
in: 'plugins/core/qortal-lottery/qortal-lottery.src.js',
out: 'plugins/core/qortal-lottery/qortal-lottery.js'
2022-08-06 18:13:35 +03:00
},
{
in: 'plugins/core/q-website/q-websites.src.js',
out: 'plugins/core/q-website/q-websites.js'
2022-08-06 18:13:35 +03:00
},
{
in: 'plugins/core/reward-share/reward-share.src.js',
out: 'plugins/core/reward-share/reward-share.js'
2022-08-06 18:13:35 +03:00
},
2022-08-14 17:35:38 +03:00
{
in: 'plugins/core/sponsorship-list/sponsorship-list.src.js',
out: 'plugins/core/sponsorship-list/sponsorship-list.js'
2022-08-14 17:35:38 +03:00
},
2022-08-06 18:13:35 +03:00
{
in: 'plugins/core/trade-bot/trade-bot-portal.src.js',
out: 'plugins/core/trade-bot/trade-bot-portal.js'
2022-08-06 18:13:35 +03:00
},
2023-03-03 12:11:39 +01:00
{
in: 'plugins/core/trade-portal/trade-portal.src.js',
out: 'plugins/core/trade-portal/trade-portal.js'
2023-03-03 12:11:39 +01:00
},
{
in: 'plugins/core/wallet/wallet-app.src.js',
out: 'plugins/core/wallet/wallet-app.js'
}
2022-08-06 18:13:35 +03:00
].map((file) => {
return generateRollupConfig(
path.join(__dirname, file.in),
path.join(__dirname, file.out)
)
})
}
2022-03-15 18:48:12 +01:00
module.exports = generateForPlugins