UNPKG

electrode-csrf-jwt

Version:

Stateless Cross-Site Request Forgery (CSRF) protection with JWT

31 lines (25 loc) 803 B
"use strict"; const csrfHapi = require("./csrf-hapi"); const csrfHapi17 = require("./csrf-hapi17"); const csrfFastify = require("./csrf-fastify"); const csrfExpress = require("./csrf-express"); const csrfKoa = require("./csrf-koa"); const pkg = require("../package.json"); const { isHapi17 } = require("electrode-hapi-compat"); module.exports = { register: isHapi17() ? csrfHapi17.register : csrfHapi, pkg: isHapi17() ? csrfHapi17.pkg : undefined, expressMiddleware: csrfExpress, koaMiddleware: csrfKoa, fastify: csrfFastify, hapiCreateToken: (request, payload) => { const plugin = request.plugins[pkg.name]; if (plugin) { if (plugin.createToken) { return plugin.createToken(request, payload); } return plugin.tokens || {}; } return {}; } };