webpack.nodeps.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /* global module, __dirname */
  2. const MiniCssExtractPlugin = require('mini-css-extract-plugin');
  3. const common = require("./webpack.common.js");
  4. const path = require('path');
  5. const { merge} = require("webpack-merge");
  6. module.exports = merge(common, {
  7. mode: "production",
  8. entry: {
  9. "converse-no-dependencies": path.resolve(__dirname, "../src/entry.js"),
  10. },
  11. plugins: [
  12. new MiniCssExtractPlugin({filename: 'tmp.css'})
  13. ],
  14. module: {
  15. rules: [
  16. {
  17. test: /\.scss$/,
  18. use: [
  19. MiniCssExtractPlugin.loader,
  20. 'css-loader',
  21. {
  22. loader: 'sass-loader',
  23. options: {
  24. sassOptions: {
  25. includePaths: [path.resolve(__dirname, '../node_modules/')]
  26. }
  27. }
  28. }
  29. ]
  30. }]
  31. },
  32. externals: [{
  33. 'pluggable.js': 'pluggable',
  34. '@converse/skeletor': 'skeletor',
  35. 'localforage': 'localforage',
  36. 'filesize': 'filesize',
  37. 'jed': 'jed',
  38. 'lodash': 'lodash',
  39. 'lodash.noconflict': 'lodash.noconflict',
  40. 'sizzle': 'sizzle',
  41. 'strophe.js': 'strophe',
  42. 'urijs': 'urijs',
  43. 'window': 'window',
  44. }]
  45. });