Grazie a Brendan per avermi guidato nella giusta direzione. Alla fine la risposta è stata trovata qui:http://www.matthiassommer.it /architettura-software/moduli-nodo-webpack/
L'informazione chiave è:
Seguendo i passaggi ivi delineati, la risoluzione diventa:
const path = require('path');
const webpack = require('webpack');
module.exports = {
entry: './src/api/index.ts',
target: 'node',
mode: 'production',
module: {
rules: [
{
test: /\.tsx?$/,
loader: 'ts-loader',
exclude: /node_modules/
}
]
},
resolve: {
extensions: ['.js', '.tsx', '.ts', '.json'],
},
output: {
filename: 'api.js',
path: path.resolve(__dirname, 'dist'),
},
plugins: [
new webpack.IgnorePlugin(/fsevents/),
new webpack.IgnorePlugin(/blessed/),
],
externals: {
"saslprep": "require('saslprep')"
}
};
Tieni presente che nei miei test le virgolette su "saslprep" sembrano essere obbligatorie durante l'importazione di elementi esterni.