mirror of
https://github.com/3lLobo/zkAuth.git
synced 2026-01-22 18:57:58 -05:00
191 lines
8.6 KiB
Diff
191 lines
8.6 KiB
Diff
diff --git a/node_modules/@graphql-inspector/core/index.mjs b/node_modules/@graphql-inspector/core/index.mjs
|
|
index d157994..c0ba5aa 100644
|
|
--- a/node_modules/@graphql-inspector/core/index.mjs
|
|
+++ b/node_modules/@graphql-inspector/core/index.mjs
|
|
@@ -2,7 +2,7 @@ import { __awaiter } from 'tslib';
|
|
import { Kind, TypeInfo, visit, visitWithTypeInfo, GraphQLError, getNamedType, isScalarType, isInterfaceType, isObjectType, isUnionType, isInputObjectType, isListType, isNonNullType, isWrappingType, isEnumType, parse, extendSchema, TokenKind, print, validate as validate$1, printType } from 'graphql';
|
|
import inspect from 'object-inspect';
|
|
import { DepGraph } from 'dependency-graph';
|
|
-import { Parser } from 'graphql/language/parser';
|
|
+import { Parser } from 'graphql/language/parser.js';
|
|
|
|
function keyMap(list, keyFn) {
|
|
return list.reduce((map, item) => {
|
|
@@ -1304,7 +1304,7 @@ function changesInType(oldType, newType, addChange) {
|
|
else if (isInterfaceType(oldType) && isInterfaceType(newType)) {
|
|
changesInInterface(oldType, newType, addChange);
|
|
}
|
|
- else if (isScalarType(oldType) && isScalarType(newType)) ;
|
|
+ else if (isScalarType(oldType) && isScalarType(newType));
|
|
else {
|
|
addChange(typeKindChanged(oldType, newType));
|
|
}
|
|
@@ -1745,82 +1745,82 @@ function validate(schema, sources, options) {
|
|
// since we include fragments, validate only operations
|
|
.filter(doc => doc.hasOperations)
|
|
.forEach(doc => {
|
|
- const docWithOperations = {
|
|
- kind: Kind.DOCUMENT,
|
|
- definitions: doc.operations.map(d => d.node),
|
|
- };
|
|
- const extractedFragments = (extractFragments(print(docWithOperations)) || [])
|
|
- // resolve all nested fragments
|
|
- .map(fragmentName => resolveFragment(graph.getNodeData(fragmentName), graph))
|
|
- // flatten arrays
|
|
- .reduce((list, current) => list.concat(current), [])
|
|
- // remove duplicates
|
|
- .filter((def, i, all) => all.findIndex(item => item.name.value === def.name.value) === i);
|
|
- const merged = {
|
|
- kind: Kind.DOCUMENT,
|
|
- definitions: [...docWithOperations.definitions, ...extractedFragments],
|
|
- };
|
|
- let transformedSchema = config.apollo ? transformSchemaWithApollo(schema) : schema;
|
|
- const transformedDoc = config.apollo
|
|
- ? transformDocumentWithApollo(merged, {
|
|
- keepClientFields: config.keepClientFields,
|
|
- })
|
|
- : merged;
|
|
- const errors = validate$1(transformedSchema, transformedDoc) || [];
|
|
- if (config.maxDepth) {
|
|
- const depthError = validateQueryDepth({
|
|
- source: doc.source,
|
|
- doc: transformedDoc,
|
|
- maxDepth: config.maxDepth,
|
|
- fragmentGraph: graph,
|
|
- });
|
|
- if (depthError) {
|
|
- errors.push(depthError);
|
|
+ const docWithOperations = {
|
|
+ kind: Kind.DOCUMENT,
|
|
+ definitions: doc.operations.map(d => d.node),
|
|
+ };
|
|
+ const extractedFragments = (extractFragments(print(docWithOperations)) || [])
|
|
+ // resolve all nested fragments
|
|
+ .map(fragmentName => resolveFragment(graph.getNodeData(fragmentName), graph))
|
|
+ // flatten arrays
|
|
+ .reduce((list, current) => list.concat(current), [])
|
|
+ // remove duplicates
|
|
+ .filter((def, i, all) => all.findIndex(item => item.name.value === def.name.value) === i);
|
|
+ const merged = {
|
|
+ kind: Kind.DOCUMENT,
|
|
+ definitions: [...docWithOperations.definitions, ...extractedFragments],
|
|
+ };
|
|
+ let transformedSchema = config.apollo ? transformSchemaWithApollo(schema) : schema;
|
|
+ const transformedDoc = config.apollo
|
|
+ ? transformDocumentWithApollo(merged, {
|
|
+ keepClientFields: config.keepClientFields,
|
|
+ })
|
|
+ : merged;
|
|
+ const errors = validate$1(transformedSchema, transformedDoc) || [];
|
|
+ if (config.maxDepth) {
|
|
+ const depthError = validateQueryDepth({
|
|
+ source: doc.source,
|
|
+ doc: transformedDoc,
|
|
+ maxDepth: config.maxDepth,
|
|
+ fragmentGraph: graph,
|
|
+ });
|
|
+ if (depthError) {
|
|
+ errors.push(depthError);
|
|
+ }
|
|
}
|
|
- }
|
|
- if (config.maxAliasCount) {
|
|
- const aliasError = validateAliasCount({
|
|
- source: doc.source,
|
|
- doc: transformedDoc,
|
|
- maxAliasCount: config.maxAliasCount,
|
|
- fragmentGraph: graph,
|
|
- });
|
|
- if (aliasError) {
|
|
- errors.push(aliasError);
|
|
+ if (config.maxAliasCount) {
|
|
+ const aliasError = validateAliasCount({
|
|
+ source: doc.source,
|
|
+ doc: transformedDoc,
|
|
+ maxAliasCount: config.maxAliasCount,
|
|
+ fragmentGraph: graph,
|
|
+ });
|
|
+ if (aliasError) {
|
|
+ errors.push(aliasError);
|
|
+ }
|
|
}
|
|
- }
|
|
- if (config.maxDirectiveCount) {
|
|
- const directiveError = validateDirectiveCount({
|
|
- source: doc.source,
|
|
- doc: transformedDoc,
|
|
- maxDirectiveCount: config.maxDirectiveCount,
|
|
- fragmentGraph: graph,
|
|
- });
|
|
- if (directiveError) {
|
|
- errors.push(directiveError);
|
|
+ if (config.maxDirectiveCount) {
|
|
+ const directiveError = validateDirectiveCount({
|
|
+ source: doc.source,
|
|
+ doc: transformedDoc,
|
|
+ maxDirectiveCount: config.maxDirectiveCount,
|
|
+ fragmentGraph: graph,
|
|
+ });
|
|
+ if (directiveError) {
|
|
+ errors.push(directiveError);
|
|
+ }
|
|
}
|
|
- }
|
|
- if (config.maxTokenCount) {
|
|
- const tokenCountError = validateTokenCount({
|
|
- source: doc.source,
|
|
- document: transformedDoc,
|
|
- maxTokenCount: config.maxTokenCount,
|
|
- getReferencedFragmentSource: fragmentName => print(graph.getNodeData(fragmentName)),
|
|
- });
|
|
- if (tokenCountError) {
|
|
- errors.push(tokenCountError);
|
|
+ if (config.maxTokenCount) {
|
|
+ const tokenCountError = validateTokenCount({
|
|
+ source: doc.source,
|
|
+ document: transformedDoc,
|
|
+ maxTokenCount: config.maxTokenCount,
|
|
+ getReferencedFragmentSource: fragmentName => print(graph.getNodeData(fragmentName)),
|
|
+ });
|
|
+ if (tokenCountError) {
|
|
+ errors.push(tokenCountError);
|
|
+ }
|
|
}
|
|
- }
|
|
- const deprecated = config.strictDeprecated ? findDeprecatedUsages(transformedSchema, transformedDoc) : [];
|
|
- const duplicatedFragments = config.strictFragments ? findDuplicatedFragments(fragmentNames) : [];
|
|
- if (sumLengths(errors, duplicatedFragments, deprecated) > 0) {
|
|
- invalidDocuments.push({
|
|
- source: doc.source,
|
|
- errors: [...errors, ...duplicatedFragments],
|
|
- deprecated,
|
|
- });
|
|
- }
|
|
- });
|
|
+ const deprecated = config.strictDeprecated ? findDeprecatedUsages(transformedSchema, transformedDoc) : [];
|
|
+ const duplicatedFragments = config.strictFragments ? findDuplicatedFragments(fragmentNames) : [];
|
|
+ if (sumLengths(errors, duplicatedFragments, deprecated) > 0) {
|
|
+ invalidDocuments.push({
|
|
+ source: doc.source,
|
|
+ errors: [...errors, ...duplicatedFragments],
|
|
+ deprecated,
|
|
+ });
|
|
+ }
|
|
+ });
|
|
return invalidDocuments;
|
|
}
|
|
function findDuplicatedFragments(fragmentNames) {
|
|
@@ -1849,9 +1849,9 @@ function similar(schema, typeName, threshold = 0.4) {
|
|
const targets = Object.keys(schema.getTypeMap())
|
|
.filter(name => !isPrimitive(name) && !isForIntrospection(name))
|
|
.map(name => ({
|
|
- typeId: name,
|
|
- value: stripType(typeMap[name]),
|
|
- }));
|
|
+ typeId: name,
|
|
+ value: stripType(typeMap[name]),
|
|
+ }));
|
|
const results = {};
|
|
if (typeof typeName !== 'undefined' && !targets.some(t => t.typeId === typeName)) {
|
|
throw new Error(`Type '${typeName}' doesn't exist`);
|