UNPKG

@grace-js/grace

Version:

An opinionated API framework

29 lines 1.3 kB
export const cors = ({ origin = true, methods = '*', allowedHeaders = '*', exposedHeaders = '*', credentials = false, maxAge = 5, preflight = true }) => (app) => { return app.registerBefore(async (request) => { if (request.method === 'OPTIONS') { return { code: 204, body: null, headers: { 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Methods': methods, 'Access-Control-Allow-Headers': allowedHeaders, 'Access-Control-Expose-Headers': exposedHeaders, 'Access-Control-Allow-Credentials': credentials ? 'true' : 'false', 'Access-Control-Max-Age': maxAge.toString() } }; } return { headers: { 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Methods': methods, 'Access-Control-Allow-Headers': allowedHeaders, 'Access-Control-Expose-Headers': exposedHeaders, 'Access-Control-Allow-Credentials': credentials ? 'true' : 'false', 'Access-Control-Max-Age': maxAge.toString() } }; }); }; //# sourceMappingURL=cors.js.map