Thursday, 23 January 2020

Webpack Config to build sdk for both Node and Browser

Can someone help me in figuring out what should be the webpack sdk config to build sdk for both web and browser?

My current config looks like this

const path = require('path');

let baseConfig = {
  mode: 'production',
  entry: './src/index.ts',
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'sdk/js-sdk.js',
    libraryTarget: 'umd',
    library: 'jsSdk',
    globalObject: 'this'
  },
  resolve: {
    extensions: [ ".ts", ".js"]
  },
  externals: {
    "request-promise-native": "request-promise-native",
    "request": "request"
  },
  module: {
    rules: [
    { test: /\.ts$/, use: 'ts-loader' }
    ]
  }
}

module.exports = baseConfig

Which I am building using following command

  "pn-dev-build": "rm -rf dist && npm version patch && webpack --mode=development && npm publish --registry http://localhost:4873",

And then if I install it in my vue-nuxt project it gives following error

  • fs in ./node_modules/request/lib/har.js friendly-errors 09:06:34
  • net in ./node_modules/forever-agent/index.js, ./node_modules/tough-cookie/lib/cookie.js and 1 other
    friendly-errors 09:06:34
  • tls in ./node_modules/forever-agent/index.js, ./node_modules/tunnel-agent/index.js

Can someone help me in solving the above error?



from Webpack Config to build sdk for both Node and Browser

No comments:

Post a Comment