var path = require('path')
var merge = require('webpack-merge')
var HtmlWebpackExcludeAssetsPlugin = require('html-webpack-exclude-assets-plugin')
var htmlWebpackPlugin = require('html-webpack-plugin')

function resolve(name) {
  return path.join(__dirname, name)
}

// TODO: not work
module.exports = {
  chainWebpack: config => {
    config
    // Interact with entry points
      .entry('ai')
      .add(resolve('src/ai/bridge.js'))
      .end()
    // Modify output settings
      .output
      .path(resolve('dist'))
      .filename('[name].bundle.js')
      .globalObject('this') //https://github.com/webpack/webpack/issues/6642

    config.devtool(false)


    // exclude ai.js
    config
      .plugin('html')
      .tap(args => {
        args[0].excludeAssets = [/ai.*.js/]
        return args
      })

    config.plugin('assets')
      .use(HtmlWebpackExcludeAssetsPlugin)

    config.optimization
      .splitChunks(false) // will cause webworker not work if enable this

  }
}