UNPKG

@a11ywatch/core

Version:
63 lines 2.12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.cronTimer = exports.fastifyConfig = exports.logServerInit = exports.corsOptions = exports.BYPASS_AUTH = exports.whitelist = void 0; const config_1 = require("./config"); const { CLIENT_URL, ROOT_URL, DEV } = config_1.config; const apiUrls = String(CLIENT_URL).split(","); exports.whitelist = [ ...apiUrls, ...apiUrls.map((url) => url.replace("http", "https")), ].filter(Boolean); const corsOptions = { origin: exports.whitelist, credentials: true, }; exports.corsOptions = corsOptions; if (apiUrls.some((a) => a.includes("localhost"))) { corsOptions.origin = true; } exports.BYPASS_AUTH = [ "IntrospectionQuery", "Register", "Login", "Logout", "ForgotPassword", "Testout", "ResetPassword", "ScanWebsite", "CrawlWebsite", "Payments", "getScript", "getWebsites", "getIssue", ]; const cronTimer = DEV ? "0 1 * * *" : "0 16 * * *"; exports.cronTimer = cronTimer; const source = DEV ? "localhost" : ROOT_URL; const logServerInit = (port, { graphqlPath = "/graphql" }) => { const _removeHttp = (url) => { const https = "https://"; if (url.startsWith(https)) { return url.slice(https.length); } const http = "http://"; if (url.startsWith(http)) { return url.slice(http.length); } return url; }; const uri = source.endsWith(port) ? source : `${source}:${port}`; console.log(`Server ready at ${uri}\nGraphQL server ready at ${uri}${graphqlPath}\nSubscriptions ready at ws://${_removeHttp(uri)}${graphqlPath}`); }; exports.logServerInit = logServerInit; const fastifyConfig = Object.assign({ trustProxy: true, ignoreTrailingSlash: true, http2: process.env.ENABLE_HTTP2 === "true" }, (process.env.ENABLE_SSL === "true" && config_1.PRIVATE_KEY && config_1.PUBLIC_KEY && { https: { allowHTTP1: true, key: config_1.PRIVATE_KEY, cert: config_1.PUBLIC_KEY, }, })); exports.fastifyConfig = fastifyConfig; //# sourceMappingURL=server.js.map