webpack.gulp.config.js 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. const path = require('path');
  2. const webpack = require('webpack');
  3. module.exports = {
  4. context: __dirname,
  5. entry: [
  6. path.resolve(__dirname, './src/index.ts')
  7. ],
  8. output: {
  9. libraryTarget: 'var',
  10. library: 'BabylonViewer',
  11. umdNamedDefine: true
  12. },
  13. resolve: {
  14. extensions: ['.ts', '.js'],
  15. alias: {
  16. "babylonjs": __dirname + '/../dist/preview release/babylon.max.js',
  17. "babylonjs-materials": __dirname + '/../dist/preview release/materialsLibrary/babylonjs.materials.js',
  18. "babylonjs-loaders": __dirname + '/../dist/preview release/loaders/babylonjs.loaders.js',
  19. "babylonjs-viewer-assets": __dirname + '/src/assets/index.ts'
  20. }
  21. },
  22. mode: "production",
  23. module: {
  24. rules: [{
  25. test: /\.tsx?$/,
  26. loader: 'ts-loader',
  27. exclude: /node_modules/
  28. },
  29. {
  30. test: /\.(html)$/,
  31. use: {
  32. loader: 'html-loader',
  33. options: {
  34. minimize: true
  35. }
  36. }
  37. },
  38. {
  39. test: /\.(jpe?g|png|ttf|eot|svg?)(\?[a-z0-9=&.]+)?$/,
  40. use: 'base64-image-loader?limit=1000&name=[name].[ext]'
  41. },
  42. {
  43. test: /\.(woff|ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/,
  44. loader: 'base64-inline-loader?limit=1000&name=[name].[ext]'
  45. }]
  46. }
  47. }