webpack.config.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. const path = require('path');
  2. const commonConfig = {
  3. module: {
  4. rules: [
  5. {
  6. test: /\.(html|ico)$/,
  7. use: [{
  8. loader: 'file-loader',
  9. options: { name: '[name].[ext]' }
  10. }]
  11. },
  12. {
  13. test: /\.scss$/,
  14. use: [
  15. 'style-loader',
  16. {
  17. loader: 'css-loader',
  18. options: {
  19. modules: {
  20. localIdentName:'[local]'
  21. }
  22. }
  23. },
  24. 'sass-loader'
  25. ]
  26. }
  27. ]
  28. },
  29. resolve: {
  30. modules: [
  31. 'node_modules',
  32. path.resolve(__dirname, 'build/src/')
  33. ],
  34. },
  35. node: {
  36. fs: "empty"
  37. }
  38. };
  39. const appConfig = {
  40. ...commonConfig,
  41. entry: {
  42. 'RcsbFv3D':'./build/src/RcsbFv3DBuilder.js',
  43. 'rcsb-saguaro-3d':'./build/src/RcsbSaguaro3D.js'
  44. },
  45. mode: "production",
  46. output: {
  47. filename: '[name].js',
  48. library: 'RcsbFv3D',
  49. libraryTarget: 'umd',
  50. umdNamedDefine: true,
  51. path: path.resolve(__dirname, 'build/dist')
  52. },
  53. devtool: 'source-map'
  54. }
  55. module.exports = [appConfig];