Initialisation
Added the packages and files for the backend server
This commit is contained in:
59
node_modules/@apollo/server/dist/cjs/determineApolloConfig.js
generated
vendored
Normal file
59
node_modules/@apollo/server/dist/cjs/determineApolloConfig.js
generated
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.determineApolloConfig = void 0;
|
||||
const utils_createhash_1 = require("@apollo/utils.createhash");
|
||||
function determineApolloConfig(input, logger) {
|
||||
const apolloConfig = {};
|
||||
const { APOLLO_KEY, APOLLO_GRAPH_REF, APOLLO_GRAPH_ID, APOLLO_GRAPH_VARIANT, } = process.env;
|
||||
if (input?.key) {
|
||||
apolloConfig.key = input.key.trim();
|
||||
}
|
||||
else if (APOLLO_KEY) {
|
||||
apolloConfig.key = APOLLO_KEY.trim();
|
||||
}
|
||||
if ((input?.key ?? APOLLO_KEY) !== apolloConfig.key) {
|
||||
logger.warn('The provided API key has unexpected leading or trailing whitespace. ' +
|
||||
'Apollo Server will trim the key value before use.');
|
||||
}
|
||||
if (apolloConfig.key) {
|
||||
assertValidHeaderValue(apolloConfig.key);
|
||||
}
|
||||
if (apolloConfig.key) {
|
||||
apolloConfig.keyHash = (0, utils_createhash_1.createHash)('sha512')
|
||||
.update(apolloConfig.key)
|
||||
.digest('hex');
|
||||
}
|
||||
if (input?.graphRef) {
|
||||
apolloConfig.graphRef = input.graphRef;
|
||||
}
|
||||
else if (APOLLO_GRAPH_REF) {
|
||||
apolloConfig.graphRef = APOLLO_GRAPH_REF;
|
||||
}
|
||||
const graphId = input?.graphId ?? APOLLO_GRAPH_ID;
|
||||
const graphVariant = input?.graphVariant ?? APOLLO_GRAPH_VARIANT;
|
||||
if (apolloConfig.graphRef) {
|
||||
if (graphId) {
|
||||
throw new Error('Cannot specify both graph ref and graph ID. Please use ' +
|
||||
'`apollo.graphRef` or `APOLLO_GRAPH_REF` without also setting the graph ID.');
|
||||
}
|
||||
if (graphVariant) {
|
||||
throw new Error('Cannot specify both graph ref and graph variant. Please use ' +
|
||||
'`apollo.graphRef` or `APOLLO_GRAPH_REF` without also setting the graph variant.');
|
||||
}
|
||||
}
|
||||
else if (graphId) {
|
||||
apolloConfig.graphRef = graphVariant
|
||||
? `${graphId}@${graphVariant}`
|
||||
: graphId;
|
||||
}
|
||||
return apolloConfig;
|
||||
}
|
||||
exports.determineApolloConfig = determineApolloConfig;
|
||||
function assertValidHeaderValue(value) {
|
||||
const invalidHeaderCharRegex = /[^\t\x20-\x7e\x80-\xff]/g;
|
||||
if (invalidHeaderCharRegex.test(value)) {
|
||||
const invalidChars = value.match(invalidHeaderCharRegex);
|
||||
throw new Error(`The API key provided to Apollo Server contains characters which are invalid as HTTP header values. The following characters found in the key are invalid: ${invalidChars.join(', ')}. Valid header values may only contain ASCII visible characters. If you think there is an issue with your key, please contact Apollo support.`);
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=determineApolloConfig.js.map
|
||||
Reference in New Issue
Block a user