/* eslint-disable @typescript-eslint/no-require-imports */ const { createServer } = require('http'); const { parse } = require('url'); const next = require('next'); const port = Number(process.env.PORT || 4000); const app = next({ dev: false }); const handle = app.getRequestHandler(); app.prepare().then(() => { const server = createServer((req, res) => { // Be sure to pass `true` as the second argument to `url.parse`. // This tells it to parse the query portion of the URL. handle(req, res, parse(req.url, true)); }); server.on('error', (error) => { if (error.code === 'EADDRINUSE') { const fallbackPort = port + 1; console.warn(`Port ${port} is in use, retrying on ${fallbackPort}...`); server.listen(fallbackPort); return; } throw error; }); server.listen(port); });