Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | 61x 61x 61x 151x 151x 755x 61x | import helmet from 'helmet'; import { RequestHandler } from 'express'; import { IUnleashConfig } from '../types/option'; import { hoursToSeconds } from 'date-fns'; const secureHeaders: (config: IUnleashConfig) => RequestHandler = (config) => { Iif (config.secureHeaders) { return helmet({ hsts: { maxAge: hoursToSeconds(24 * 365 * 2), // 2 non-leap years includeSubDomains: true, preload: true, }, contentSecurityPolicy: { directives: { defaultSrc: ["'self'", 'cdn.getunleash.io', 'gravatar.com'], fontSrc: [ "'self'", 'cdn.getunleash.io', 'fonts.googleapis.com', 'fonts.gstatic.com', ], styleSrc: [ "'self'", "'unsafe-inline'", 'cdn.getunleash.io', 'fonts.googleapis.com', 'fonts.gstatic.com', 'data:', ], scriptSrc: ["'self'", 'cdn.getunleash.io'], imgSrc: [ "'self'", 'data:', 'cdn.getunleash.io', 'gravatar.com', ], }, }, crossOriginEmbedderPolicy: false, }); } return (req, res, next) => { next(); }; }; export default secureHeaders; |