UNPKG

@leafage/server

Version:

The React Server Side Render Framework

54 lines (51 loc) 1.68 kB
/** * @leafage/server v1.3.2 * * Copyright (c) Leafage. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */ import express from 'express'; import 'express-async-errors'; import { utils, logger } from '@leafage/toolkit'; import { createRenderer } from '@leafage/renderer'; import { basePreset } from './presets/base.js'; import { devPreset } from './presets/dev.js'; import { staticPreset } from './presets/static.js'; import { proxyPreset } from './presets/proxy.js'; import { serverPreset } from './presets/server.js'; import { routerPreset } from './presets/router.js'; import { errorPreset } from './presets/error.js'; var startServer = function startServer(app, context) { app.listen(context.options.server.port, context.options.server.host, function () { context.callHook('server:start'); logger.ready({ message: "Server listening on http://".concat(context.options.server.host, ":").concat(context.options.server.port), badge: true }); }); }; var createServer = function createServer(context) { var app = express(); var renderer = createRenderer(context); context.callHook('server:create'); context.runWithContext(function () { utils.applyPresets({ app: app, context: context, options: context.options, renderer: renderer, isDev: context.options.dev }, [basePreset, devPreset, staticPreset, proxyPreset, serverPreset, routerPreset, errorPreset]); }); return { app: app, start: function start() { return startServer(app, context); } }; }; export { createServer };