| 1234567891011121314151617181920212223242526272829303132333435363738 | module.exports = function validateWebpackConfig (  webpackConfig,  api,  options,  target = 'app') {  const singleConfig = Array.isArray(webpackConfig)    ? webpackConfig[0]    : webpackConfig  const actualTargetDir = singleConfig.output.path  if (actualTargetDir !== api.resolve(options.outputDir)) {    // user directly modifies output.path in configureWebpack or chainWebpack.    // this is not supported because there's no way for us to give copy    // plugin the correct value this way.    throw new Error(      `\n\nConfiguration Error: ` +      `Avoid modifying webpack output.path directly. ` +      `Use the "outputDir" option instead.\n`    )  }  if (actualTargetDir === api.service.context) {    throw new Error(      `\n\nConfiguration Error: ` +      `Do not set output directory to project root.\n`    )  }  if (target === 'app' && singleConfig.output.publicPath !== options.publicPath) {    throw new Error(      `\n\nConfiguration Error: ` +      `Avoid modifying webpack output.publicPath directly. ` +      `Use the "publicPath" option instead.\n`    )  }}
 |