const path = require('path') const slsw = require('serverless-webpack') const entries = {} Object.keys(slsw.lib.entries).forEach(key => { entries[key] = ['./source-map-install.js', slsw.lib.entries[key]] }) module.exports = { mode: slsw.lib.webpack.isLocal ? 'development' : 'production', entry: entries, devtool: 'source-map', resolve: { extensions: ['.js', '.jsx', '.json', '.ts', '.tsx'], }, output: { libraryTarget: 'commonjs', path: path.join(__dirname, '.webpack'), filename: '[name].js', }, target: 'node', module: { rules: [ // all files with a `.ts` or `.tsx` extension will be handled by `ts-loader` { test: /\.tsx?$/, loader: 'ts-loader' }, ], }, externals: [ (context, request, callback) => { if (request === 'aws-sdk') { return callback(null, `commonjs ${request}`) } return callback() }, ], }