fix: self-externalization for build

This commit is contained in:
cha0s 2024-02-18 08:36:07 -06:00
parent da6a1d530c
commit 5a75b28471
2 changed files with 22 additions and 2 deletions

View File

@ -1,10 +1,20 @@
const {join} = require('path');
const {externals} = require('@flecks/build/src/server'); const {externals} = require('@flecks/build/src/server');
const configFn = require('@flecks/fleck/build/fleck.webpack.config'); const configFn = require('@flecks/fleck/build/fleck.webpack.config');
const {
FLECKS_CORE_ROOT = process.cwd(),
} = process.env;
module.exports = async (env, argv, flecks) => { module.exports = async (env, argv, flecks) => {
const config = await configFn(env, argv, flecks); const config = await configFn(env, argv, flecks);
const {name} = require(join(FLECKS_CORE_ROOT, 'package.json'));
config.externals = await externals({ config.externals = await externals({
allowlist: ['react-tabs/style/react-tabs.css'], allowlist: [
new RegExp(`^${name}`),
'react-tabs/style/react-tabs.css',
],
}); });
return config; return config;
}; };

View File

@ -1,13 +1,23 @@
const {join} = require('path');
const {copy, externals} = require('@flecks/build/src/server'); const {copy, externals} = require('@flecks/build/src/server');
const configFn = require('@flecks/fleck/build/fleck.webpack.config'); const configFn = require('@flecks/fleck/build/fleck.webpack.config');
const {
FLECKS_CORE_ROOT = process.cwd(),
} = process.env;
module.exports = async (env, argv, flecks) => { module.exports = async (env, argv, flecks) => {
const config = await configFn(env, argv, flecks); const config = await configFn(env, argv, flecks);
delete config.entry['server/build/entry']; delete config.entry['server/build/entry'];
delete config.entry['server/build/template']; delete config.entry['server/build/template'];
delete config.entry['server/build/tests']; delete config.entry['server/build/tests'];
const {name} = require(join(FLECKS_CORE_ROOT, 'package.json'));
config.externals = await externals({ config.externals = await externals({
allowlist: ['mocha/mocha.css'], allowlist: [
new RegExp(`^${name}`),
'mocha/mocha.css',
],
}); });
config.plugins.push( config.plugins.push(
copy({ copy({