UNPKG

6.33 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../../src/query/error-parser.js"],"names":["errorParser","message","filePath","undefined","location","handlers","regex","cb","match","id","context","sourceMessage","variableName","variableType","inputType","expectedType","fieldName","fieldType","field","type","desc","value","structured","matched","locInGraphQlToLocInFile","locationOfGraphQLDocInSourceFile","graphqlLocation","line","start","column"],"mappings":"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","sourcesContent":["const errorParser = ({\n message,\n filePath = undefined,\n location = undefined,\n}) => {\n // Handle GraphQL errors. A list of regexes to match certain\n // errors to specific callbacks\n const handlers = [\n {\n regex: /Variable \"(.+)\" of required type \"(.+)\" was not provided\\./m,\n cb: match => {\n return {\n id: `85920`,\n context: {\n sourceMessage: match[0],\n variableName: match[1],\n variableType: match[2],\n },\n }\n },\n },\n {\n regex: /Variable \"(.+)\" of type \"(.+)\" used in position expecting type \"(.+)\"\\./m,\n cb: match => {\n return {\n id: `85921`,\n context: {\n sourceMessage: match[0],\n variableName: match[1],\n inputType: match[2],\n expectedType: match[3],\n },\n }\n },\n },\n {\n regex: /Field \"(.+)\" must not have a selection since type \"(.+)\" has no subfields\\./m,\n cb: match => {\n return {\n id: `85922`,\n context: {\n sourceMessage: match[0],\n fieldName: match[1],\n fieldType: match[2],\n },\n }\n },\n },\n {\n regex: /Cannot query field \"(.+)\" on type \"(.+)\"\\./m,\n cb: match => {\n return {\n id: `85923`,\n context: {\n sourceMessage: match[0],\n field: match[1],\n type: match[2],\n },\n }\n },\n },\n {\n regex: /(.+) cannot represent (.+) value: \"(.+)\"/m,\n cb: match => {\n return {\n id: `85924`,\n context: {\n sourceMessage: match[0],\n type: match[1],\n desc: match[2],\n value: match[3],\n },\n }\n },\n },\n {\n regex: /Cannot return null for non-nullable field (.+)/m,\n cb: match => {\n return {\n id: `85925`,\n context: {\n sourceMessage: match[0],\n field: match[1],\n },\n }\n },\n },\n // Match anything with a generic catch-all error handler\n {\n regex: /[\\s\\S]*/gm,\n cb: match => {\n return {\n id: `85901`,\n context: { sourceMessage: match[0] },\n }\n },\n },\n ]\n\n let structured\n\n for (const { regex, cb } of handlers) {\n const matched = message.match(regex)\n if (matched) {\n structured = {\n ...(filePath && { filePath }),\n ...(location && { location }),\n ...cb(matched),\n }\n break\n }\n }\n\n return structured\n}\n\nexport default errorParser\n\nexport const locInGraphQlToLocInFile = (\n locationOfGraphQLDocInSourceFile,\n graphqlLocation\n) => {\n return {\n line:\n graphqlLocation.line + locationOfGraphQLDocInSourceFile.start.line - 1,\n column:\n (graphqlLocation.line === 1\n ? locationOfGraphQLDocInSourceFile.start.column\n : 0) + graphqlLocation.column,\n }\n}\n"],"file":"error-parser.js"}
\No newline at end of file