module.exports = () => ({ test: /\.(m?js|html)$/, exclude: path => { if (!path.includes('node_modules')) { return false // don't exclude our own modules } const toSkip = [ 'tesseract.js', 'realistic-structured-clone', '@babel/runtime', 'page-lifecycle', 'localstorage-memory', 'promise-worker', 'webpack' ] for (const module of toSkip) { if (path.includes(`node_modules/${module}`)) { return true // exclude certain packages that don't transpile well } } return false }, use: { loader: 'babel-loader', options: { presets: [ '@babel/preset-env' ], plugins: [ [ '@babel/plugin-transform-runtime', { // This started failing with commit 2a248cb for some mysterious reason, causing an error: // TypeError: Cannot set property 'wrap' of undefined // I could not for the life of me figure out how to fix it, so I just manually import regenerator. regenerator: false } ] ] } } })