rsnext/examples/custom-server-hapi/next-wrapper.js
Jepser Bernardino 993cab89e5 Update Hapi example (#6429)
Since version 18 (released in January), Hapi's `request.url` returns the parsed URL, so `parse` is not needed.

Ref:
- https://hapijs.com/api#-requesturl
- https://github.com/hapijs/hapi/pull/3822
2019-02-24 13:44:12 +01:00

23 lines
618 B
JavaScript

const nextHandlerWrapper = app => {
const handler = app.getRequestHandler()
return async ({ raw, url }, h) => {
await handler(raw.req, raw.res, url)
return h.close
}
}
const defaultHandlerWrapper = app => async ({ raw: { req, res }, url }) => {
const { pathname, query } = url
return app.renderToHTML(req, res, pathname, query)
}
const pathWrapper = (app, pathName, opts) => async ({ raw, query, params }) => {
return app.renderToHTML(
raw.req,
raw.res,
pathName,
{ ...query, ...params },
opts
)
}
module.exports = { pathWrapper, defaultHandlerWrapper, nextHandlerWrapper }