UNPKG

resolve-runtime

Version:
32 lines (24 loc) 1.51 kB
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } import jsonwebtoken from 'jsonwebtoken'; import getRootBasedUrl from './get_root_based_url'; import isObject from './is_object'; const applyJwtValue = (rootPath, jwtCookie, jwtToken, res, path) => { const { name: cookieName } = jwtCookie, cookieOptions = _objectWithoutProperties(jwtCookie, ["name"]); if (jwtToken) { const jwt = jsonwebtoken.decode(jwtToken); if (!isObject(jwt)) { res.status(500).end('Incorrect JWT'); return; } res.cookie(cookieName, jwtToken, cookieOptions); } else { res.clearCookie(cookieName); } res.redirect(path || getRootBasedUrl(rootPath, '/')); }; export default applyJwtValue; //# sourceMappingURL=apply_jwt_value.js.map