module.exports = {
  "transpileDependencies": [
    "vuetify",
    "leaflet-arrowheads"
  ],
  devServer: {
    host: "0.0.0.0",
    webSocketServer: {
      // Not found in the Webpack docs. Reference:
      // https://github.com/webpack/webpack-dev-server/blob/540c43852ea33f9cb18820e1cef05d5ddb86cc3e/lib/servers/WebsocketServer.js#L21
      options: {
        // Not found in the ws docs. Reference:
        // https://github.com/websockets/ws/blob/d8dd4852b81982fc0a6d633673968dff90985000/lib/websocket-server.js#L68
        path: "/webpack-dev-server"
      }
    },
    client: {
      webSocketURL: "auto://0.0.0.0:0/webpack-dev-server"
    },
    proxy: {
      "^/api(/|$)": {
        target: "http://127.0.0.1:3000",
      },
      "^/ws(/|$)": {
        target: "ws://127.0.0.1:3000",
        ws: true
      }
    }
  },
  chainWebpack: config => {
    config
      .plugin('html')
      .tap(args => {
        args[0].title = 'Dougal Web'
        return args
      })
  },
  configureWebpack: {
    resolve: {
      fallback: {
        path: require.resolve("path-browserify")
      }
    },
    module: {
      rules: [
        {
          test: /\.(woff|woff2|eot|ttf|otf)$/i,
          type: 'asset/resource'
        },
      ],
    },
  }
}
