webpack.config.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. const path = require('path')
  2. const webpack = require('webpack');
  3. module.exports = {
  4. entry: path.resolve(__dirname, 'gramjs/index.ts'),
  5. module: {
  6. rules: [
  7. {
  8. test: /\.ts$/,
  9. use: 'ts-loader',
  10. exclude: /node_modules/,
  11. },
  12. {
  13. test: /\.js$/,
  14. use: 'babel-loader',
  15. exclude: /node_modules/,
  16. },
  17. {
  18. test: /\.tl$/i,
  19. loader: 'raw-loader',
  20. },
  21. ],
  22. },
  23. resolve: {
  24. extensions: ['.tsx', '.ts', '.js'],
  25. fallback: {
  26. 'fs': false,
  27. 'path': require.resolve("path-browserify") ,
  28. 'net': false,
  29. 'crypto': false,
  30. "os": require.resolve("os-browserify/browser"),
  31. "util": false,
  32. "assert": false,
  33. "stream": false,
  34. "constants": false
  35. },
  36. },
  37. mode: 'development',
  38. plugins: [
  39. new webpack.ProvidePlugin({
  40. Buffer: ['buffer', 'Buffer'],
  41. }),
  42. new webpack.ProvidePlugin({
  43. process: 'process/browser',
  44. }),
  45. ],
  46. output: {
  47. library: 'gramjs',
  48. libraryTarget: 'umd',
  49. auxiliaryComment: 'Test Comment',
  50. filename: 'gramjs.js',
  51. path: path.resolve(__dirname, 'browser'),
  52. },
  53. }