gulp.task('devServer', async(done) => { if (devConfig.output == null) { devConfig.output = {} } devConfig.output.path = config.absOutput('') try { const server = await serve({ config : devConfig, host : config.livereloadHost, // host : '0.0.0.0', port : config.serverPort, dev : { publicPath: '', stats: 'minimal' }, content: [], add : (app, middleware) => { app.use(c2k(proxy( config.apiPrefixes, { target: `http://localhost:${config.serverPort + 1}`, secure: false, }, ) as NextHandleFunction)) app.use(c2k(history({ index : `${config.serverIndex}`, verbose: false, }) as NextHandleFunction)) middleware.webpack() // middleware.content() }, }) server.on('listening', () => { log('Checking Dev Server status...') http.get({ host : config.livereloadHost, port : config.serverPort, timeout: WAIT_FOR_STARTUP_IN_MS, }, (res: http.IncomingMessage) => { log(`Webpack Dev Server started at port ${config.serverPort}`) res.on('data', _.noop) res.on('end', done) }) .on('error', (err?: Error) => { log.warn('There must be something wrong with webpack dev server:') log.warn(err) done() }) }) } catch (e) { log.error('Webpack Dev Server startup failed! Detail:') log.error(e) } })
readdir(join("dist", "commands"), (error, files) => { if (error) { log.error(error); throw error; } files.forEach((file) => { const cmdFile = require(`./commands/${file}`); const cmdFileName = file.split(".")[0]; const cmdClass = new cmdFile[cmdFileName](); app.telegram.command(cmdClass.aliases, cmdClass.execute); log(`Commandhandler loaded: ${cmdFileName}`); }); });
readdir(join("dist", "events"), (error, files) => { if (error) { log.error(error); throw error; } files.forEach((file) => { const eventFile = require(`./events/${file}`); const eventName = file.split(".")[0]; const eventClass = new eventFile[eventName](); app.telegram.on(eventClass.event, eventClass.handle); log(`Eventhandler loaded: ${eventName}`); }); });
function reportError(message: string) { log.error(colors.white.bgRed.bold(message)); process.exit(1); }