const withCss = require('@zeit/next-css')
const RemoveStrictPlugin = require('remove-strict-webpack-plugin')
// const StringReplacePlugin = require('string-replace-webpack-plugin')
// const exec = require('child_process').exec

module.exports = withCss({
  webpack: (cfg) => {
    cfg.module.rules.push({
      test: /\.md$/,
      use: 'frontmatter-markdown-loader'
    })

    // breaks sourcemap
    // cfg.plugins.push(new RemoveStrictPlugin())

    // cfg.plugins.push({
    //   apply: (compiler) => {
    //     compiler.hooks.afterEmit.tap('AfterEmitPlugin', (compilation) => {
    //       exec(
    //         './removeStrict.sh',
    //         (err, stdout, stderr) => {
    //           if (stdout) process.stdout.write(stdout)
    //           if (stderr) process.stderr.write(stderr)
    //         }
    //       )
    //     })
    //   }
    // })
    // cfg.module.rules.push({
    //   test: /\.js$/,
    //   loader: StringReplacePlugin.replace({
    //     replacements: [
    //       {
    //         pattern: /"use strict"/gi,
    //         replacement: function(match, p1, offset, string) {
    //           console.log(match)
    //           return ''
    //         }
    //       }
    //     ]
    //   }),
    //   include: /node_modules\\*/
    // })
    return cfg
  }
})
