/* eslint-disable */ const { existsSync } = require('fs'); const { join } = require('path'); module.exports = async function addCopyPlugin(opts) { const { config, userConfig, cwd } = opts; const copyPatterns = [ existsSync(join(cwd, 'public')) && { from: join(cwd, 'public'), }, ...(userConfig.copy ? userConfig.copy.map(item => { if (typeof item === 'string') { return { from: join(cwd, item), to: item, }; } return { from: join(cwd, item.from), to: item.to, }; }) : []), ].filter(Boolean); if (copyPatterns.length) { // eslint-disable-next-line global-require config.plugin('copy').use(require('../compiled/copy-webpack-plugin'), [ { patterns: copyPatterns, }, ]); } };