webpack.config.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. const path = require('path');
  2. const webpack = require('webpack');
  3. const HardSourceWebpackPlugin = require('hard-source-webpack-plugin');
  4. module.exports = {
  5. context: path.resolve(__dirname, './src'),
  6. entry: {
  7. 'babylonjs-procedural-textures': path.resolve(__dirname, './src/legacy/legacy.ts'),
  8. },
  9. output: {
  10. path: path.resolve(__dirname, '../dist/preview release/gui'),
  11. filename: 'babylonjs.proceduralTextures.min.js',
  12. libraryTarget: 'umd',
  13. library: {
  14. root: ["PROCEDURALTEXTURES"],
  15. amd: "babylonjs-procedural-textures",
  16. commonjs: "babylonjs-procedural-textures"
  17. },
  18. umdNamedDefine: true
  19. },
  20. resolve: {
  21. extensions: ['.ts']
  22. },
  23. externals: [
  24. {
  25. babylonjs: {
  26. root: "BABYLON",
  27. commonjs: "babylonjs",
  28. commonjs2: "babylonjs",
  29. amd: "babylonjs"
  30. }
  31. },
  32. /^babylonjs.*$/i
  33. ],
  34. devtool: "source-map",
  35. module: {
  36. rules: [{
  37. test: /\.tsx?$/,
  38. loader: 'awesome-typescript-loader',
  39. options: {
  40. configFileName: path.resolve(__dirname, './tsconfig.json'),
  41. declaration: false
  42. }
  43. }]
  44. },
  45. mode: "production",
  46. plugins: [
  47. new HardSourceWebpackPlugin(),
  48. new webpack.WatchIgnorePlugin([
  49. /\.js$/,
  50. /\.d\.ts$/,
  51. /\.fx$/
  52. ])
  53. ]
  54. }