{"id":"node_modules/graphql-tag/src/index.js","dependencies":[{"name":"D:\\Noroff - Front-end utvikling\\workflow\\workflow 3\\introduction-to-graphql\\node_modules\\graphql-tag\\package.json","includedInParent":true,"mtime":1612928292197},{"name":"graphql/language/parser","loc":{"line":1,"column":21},"parent":"D:\\Noroff - Front-end utvikling\\workflow\\workflow 3\\introduction-to-graphql\\node_modules\\graphql-tag\\src\\index.js","resolved":"D:\\Noroff - Front-end utvikling\\workflow\\workflow 3\\introduction-to-graphql\\node_modules\\graphql\\language\\parser.js"}],"generated":{"js":"var parser = require('graphql/language/parser');\n\nvar parse = parser.parse;\n\n// Strip insignificant whitespace\n// Note that this could do a lot more, such as reorder fields etc.\nfunction normalize(string) {\n  return string.replace(/[\\s,]+/g, ' ').trim();\n}\n\n// A map docString -> graphql document\nvar docCache = {};\n\n// A map fragmentName -> [normalized source]\nvar fragmentSourceMap = {};\n\nfunction cacheKeyFromLoc(loc) {\n  return normalize(loc.source.body.substring(loc.start, loc.end));\n}\n\n// For testing.\nfunction resetCaches() {\n  docCache = {};\n  fragmentSourceMap = {};\n}\n\n// Take a unstripped parsed document (query/mutation or even fragment), and\n// check all fragment definitions, checking for name->source uniqueness.\n// We also want to make sure only unique fragments exist in the document.\nvar printFragmentWarnings = true;\nfunction processFragments(ast) {\n  var astFragmentMap = {};\n  var definitions = [];\n\n  for (var i = 0; i < ast.definitions.length; i++) {\n    var fragmentDefinition = ast.definitions[i];\n\n    if (fragmentDefinition.kind === 'FragmentDefinition') {\n      var fragmentName = fragmentDefinition.name.value;\n      var sourceKey = cacheKeyFromLoc(fragmentDefinition.loc);\n\n      // We know something about this fragment\n      if (fragmentSourceMap.hasOwnProperty(fragmentName) && !fragmentSourceMap[fragmentName][sourceKey]) {\n\n        // this is a problem because the app developer is trying to register another fragment with\n        // the same name as one previously registered. So, we tell them about it.\n        if (printFragmentWarnings) {\n          console.warn(\"Warning: fragment with name \" + fragmentName + \" already exists.\\n\"\n            + \"graphql-tag enforces all fragment names across your application to be unique; read more about\\n\"\n            + \"this in the docs: http://dev.apollodata.com/core/fragments.html#unique-names\");\n        }\n\n        fragmentSourceMap[fragmentName][sourceKey] = true;\n\n      } else if (!fragmentSourceMap.hasOwnProperty(fragmentName)) {\n        fragmentSourceMap[fragmentName] = {};\n        fragmentSourceMap[fragmentName][sourceKey] = true;\n      }\n\n      if (!astFragmentMap[sourceKey]) {\n        astFragmentMap[sourceKey] = true;\n        definitions.push(fragmentDefinition);\n      }\n    } else {\n      definitions.push(fragmentDefinition);\n    }\n  }\n\n  ast.definitions = definitions;\n  return ast;\n}\n\nfunction disableFragmentWarnings() {\n  printFragmentWarnings = false;\n}\n\nfunction stripLoc(doc, removeLocAtThisLevel) {\n  var docType = Object.prototype.toString.call(doc);\n\n  if (docType === '[object Array]') {\n    return doc.map(function (d) {\n      return stripLoc(d, removeLocAtThisLevel);\n    });\n  }\n\n  if (docType !== '[object Object]') {\n    throw new Error('Unexpected input.');\n  }\n\n  // We don't want to remove the root loc field so we can use it\n  // for fragment substitution (see below)\n  if (removeLocAtThisLevel && doc.loc) {\n    delete doc.loc;\n  }\n\n  // https://github.com/apollographql/graphql-tag/issues/40\n  if (doc.loc) {\n    delete doc.loc.startToken;\n    delete doc.loc.endToken;\n  }\n\n  var keys = Object.keys(doc);\n  var key;\n  var value;\n  var valueType;\n\n  for (key in keys) {\n    if (keys.hasOwnProperty(key)) {\n      value = doc[keys[key]];\n      valueType = Object.prototype.toString.call(value);\n\n      if (valueType === '[object Object]' || valueType === '[object Array]') {\n        doc[keys[key]] = stripLoc(value, true);\n      }\n    }\n  }\n\n  return doc;\n}\n\nvar experimentalFragmentVariables = false;\nfunction parseDocument(doc) {\n  var cacheKey = normalize(doc);\n\n  if (docCache[cacheKey]) {\n    return docCache[cacheKey];\n  }\n\n  var parsed = parse(doc, { experimentalFragmentVariables: experimentalFragmentVariables });\n  if (!parsed || parsed.kind !== 'Document') {\n    throw new Error('Not a valid GraphQL document.');\n  }\n\n  // check that all \"new\" fragments inside the documents are consistent with\n  // existing fragments of the same name\n  parsed = processFragments(parsed);\n  parsed = stripLoc(parsed, false);\n  docCache[cacheKey] = parsed;\n\n  return parsed;\n}\n\nfunction enableExperimentalFragmentVariables() {\n  experimentalFragmentVariables = true;\n}\n\nfunction disableExperimentalFragmentVariables() {\n  experimentalFragmentVariables = false;\n}\n\n// XXX This should eventually disallow arbitrary string interpolation, like Relay does\nfunction gql(/* arguments */) {\n  var args = Array.prototype.slice.call(arguments);\n\n  var literals = args[0];\n\n  // We always get literals[0] and then matching post literals for each arg given\n  var result = (typeof(literals) === \"string\") ? literals : literals[0];\n\n  for (var i = 1; i < args.length; i++) {\n    if (args[i] && args[i].kind && args[i].kind === 'Document') {\n      result += args[i].loc.source.body;\n    } else {\n      result += args[i];\n    }\n\n    result += literals[i];\n  }\n\n  return parseDocument(result);\n}\n\n// Support typescript, which isn't as nice as Babel about default exports\ngql.default = gql;\ngql.resetCaches = resetCaches;\ngql.disableFragmentWarnings = disableFragmentWarnings;\ngql.enableExperimentalFragmentVariables = enableExperimentalFragmentVariables;\ngql.disableExperimentalFragmentVariables = disableExperimentalFragmentVariables;\n\nmodule.exports = gql;\n"},"sourceMaps":{"js":{"mappings":[{"source":"node_modules/graphql-tag/src/index.js","original":{"line":1,"column":0},"generated":{"line":1,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":2,"column":0},"generated":{"line":2,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":3,"column":0},"generated":{"line":3,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":4,"column":0},"generated":{"line":4,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":5,"column":0},"generated":{"line":5,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":6,"column":0},"generated":{"line":6,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":7,"column":0},"generated":{"line":7,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":8,"column":0},"generated":{"line":8,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":9,"column":0},"generated":{"line":9,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":10,"column":0},"generated":{"line":10,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":11,"column":0},"generated":{"line":11,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":12,"column":0},"generated":{"line":12,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":13,"column":0},"generated":{"line":13,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":14,"column":0},"generated":{"line":14,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":15,"column":0},"generated":{"line":15,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":16,"column":0},"generated":{"line":16,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":17,"column":0},"generated":{"line":17,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":18,"column":0},"generated":{"line":18,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":19,"column":0},"generated":{"line":19,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":20,"column":0},"generated":{"line":20,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":21,"column":0},"generated":{"line":21,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":22,"column":0},"generated":{"line":22,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":23,"column":0},"generated":{"line":23,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":24,"column":0},"generated":{"line":24,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":25,"column":0},"generated":{"line":25,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":26,"column":0},"generated":{"line":26,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":27,"column":0},"generated":{"line":27,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":28,"column":0},"generated":{"line":28,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":29,"column":0},"generated":{"line":29,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":30,"column":0},"generated":{"line":30,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":31,"column":0},"generated":{"line":31,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":32,"column":0},"generated":{"line":32,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":33,"column":0},"generated":{"line":33,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":34,"column":0},"generated":{"line":34,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":35,"column":0},"generated":{"line":35,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":36,"column":0},"generated":{"line":36,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":37,"column":0},"generated":{"line":37,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":38,"column":0},"generated":{"line":38,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":39,"column":0},"generated":{"line":39,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":40,"column":0},"generated":{"line":40,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":41,"column":0},"generated":{"line":41,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":42,"column":0},"generated":{"line":42,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":43,"column":0},"generated":{"line":43,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":44,"column":0},"generated":{"line":44,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":45,"column":0},"generated":{"line":45,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":46,"column":0},"generated":{"line":46,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":47,"column":0},"generated":{"line":47,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":48,"column":0},"generated":{"line":48,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":49,"column":0},"generated":{"line":49,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":50,"column":0},"generated":{"line":50,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":51,"column":0},"generated":{"line":51,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":52,"column":0},"generated":{"line":52,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":53,"column":0},"generated":{"line":53,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":54,"column":0},"generated":{"line":54,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":55,"column":0},"generated":{"line":55,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":56,"column":0},"generated":{"line":56,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":57,"column":0},"generated":{"line":57,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":58,"column":0},"generated":{"line":58,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":59,"column":0},"generated":{"line":59,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":60,"column":0},"generated":{"line":60,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":61,"column":0},"generated":{"line":61,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":62,"column":0},"generated":{"line":62,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":63,"column":0},"generated":{"line":63,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":64,"column":0},"generated":{"line":64,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":65,"column":0},"generated":{"line":65,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":66,"column":0},"generated":{"line":66,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":67,"column":0},"generated":{"line":67,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":68,"column":0},"generated":{"line":68,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":69,"column":0},"generated":{"line":69,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":70,"column":0},"generated":{"line":70,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":71,"column":0},"generated":{"line":71,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":72,"column":0},"generated":{"line":72,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":73,"column":0},"generated":{"line":73,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":74,"column":0},"generated":{"line":74,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":75,"column":0},"generated":{"line":75,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":76,"column":0},"generated":{"line":76,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":77,"column":0},"generated":{"line":77,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":78,"column":0},"generated":{"line":78,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":79,"column":0},"generated":{"line":79,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":80,"column":0},"generated":{"line":80,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":81,"column":0},"generated":{"line":81,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":82,"column":0},"generated":{"line":82,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":83,"column":0},"generated":{"line":83,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":84,"column":0},"generated":{"line":84,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":85,"column":0},"generated":{"line":85,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":86,"column":0},"generated":{"line":86,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":87,"column":0},"generated":{"line":87,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":88,"column":0},"generated":{"line":88,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":89,"column":0},"generated":{"line":89,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":90,"column":0},"generated":{"line":90,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":91,"column":0},"generated":{"line":91,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":92,"column":0},"generated":{"line":92,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":93,"column":0},"generated":{"line":93,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":94,"column":0},"generated":{"line":94,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":95,"column":0},"generated":{"line":95,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":96,"column":0},"generated":{"line":96,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":97,"column":0},"generated":{"line":97,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":98,"column":0},"generated":{"line":98,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":99,"column":0},"generated":{"line":99,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":100,"column":0},"generated":{"line":100,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":101,"column":0},"generated":{"line":101,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":102,"column":0},"generated":{"line":102,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":103,"column":0},"generated":{"line":103,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":104,"column":0},"generated":{"line":104,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":105,"column":0},"generated":{"line":105,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":106,"column":0},"generated":{"line":106,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":107,"column":0},"generated":{"line":107,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":108,"column":0},"generated":{"line":108,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":109,"column":0},"generated":{"line":109,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":110,"column":0},"generated":{"line":110,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":111,"column":0},"generated":{"line":111,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":112,"column":0},"generated":{"line":112,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":113,"column":0},"generated":{"line":113,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":114,"column":0},"generated":{"line":114,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":115,"column":0},"generated":{"line":115,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":116,"column":0},"generated":{"line":116,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":117,"column":0},"generated":{"line":117,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":118,"column":0},"generated":{"line":118,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":119,"column":0},"generated":{"line":119,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":120,"column":0},"generated":{"line":120,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":121,"column":0},"generated":{"line":121,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":122,"column":0},"generated":{"line":122,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":123,"column":0},"generated":{"line":123,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":124,"column":0},"generated":{"line":124,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":125,"column":0},"generated":{"line":125,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":126,"column":0},"generated":{"line":126,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":127,"column":0},"generated":{"line":127,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":128,"column":0},"generated":{"line":128,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":129,"column":0},"generated":{"line":129,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":130,"column":0},"generated":{"line":130,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":131,"column":0},"generated":{"line":131,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":132,"column":0},"generated":{"line":132,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":133,"column":0},"generated":{"line":133,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":134,"column":0},"generated":{"line":134,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":135,"column":0},"generated":{"line":135,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":136,"column":0},"generated":{"line":136,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":137,"column":0},"generated":{"line":137,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":138,"column":0},"generated":{"line":138,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":139,"column":0},"generated":{"line":139,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":140,"column":0},"generated":{"line":140,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":141,"column":0},"generated":{"line":141,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":142,"column":0},"generated":{"line":142,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":143,"column":0},"generated":{"line":143,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":144,"column":0},"generated":{"line":144,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":145,"column":0},"generated":{"line":145,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":146,"column":0},"generated":{"line":146,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":147,"column":0},"generated":{"line":147,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":148,"column":0},"generated":{"line":148,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":149,"column":0},"generated":{"line":149,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":150,"column":0},"generated":{"line":150,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":151,"column":0},"generated":{"line":151,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":152,"column":0},"generated":{"line":152,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":153,"column":0},"generated":{"line":153,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":154,"column":0},"generated":{"line":154,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":155,"column":0},"generated":{"line":155,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":156,"column":0},"generated":{"line":156,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":157,"column":0},"generated":{"line":157,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":158,"column":0},"generated":{"line":158,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":159,"column":0},"generated":{"line":159,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":160,"column":0},"generated":{"line":160,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":161,"column":0},"generated":{"line":161,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":162,"column":0},"generated":{"line":162,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":163,"column":0},"generated":{"line":163,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":164,"column":0},"generated":{"line":164,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":165,"column":0},"generated":{"line":165,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":166,"column":0},"generated":{"line":166,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":167,"column":0},"generated":{"line":167,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":168,"column":0},"generated":{"line":168,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":169,"column":0},"generated":{"line":169,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":170,"column":0},"generated":{"line":170,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":171,"column":0},"generated":{"line":171,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":172,"column":0},"generated":{"line":172,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":173,"column":0},"generated":{"line":173,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":174,"column":0},"generated":{"line":174,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":175,"column":0},"generated":{"line":175,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":176,"column":0},"generated":{"line":176,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":177,"column":0},"generated":{"line":177,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":178,"column":0},"generated":{"line":178,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":179,"column":0},"generated":{"line":179,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":180,"column":0},"generated":{"line":180,"column":0}},{"source":"node_modules/graphql-tag/src/index.js","original":{"line":181,"column":0},"generated":{"line":181,"column":0}}],"sources":{"node_modules/graphql-tag/src/index.js":"var parser = require('graphql/language/parser');\n\nvar parse = parser.parse;\n\n// Strip insignificant whitespace\n// Note that this could do a lot more, such as reorder fields etc.\nfunction normalize(string) {\n  return string.replace(/[\\s,]+/g, ' ').trim();\n}\n\n// A map docString -> graphql document\nvar docCache = {};\n\n// A map fragmentName -> [normalized source]\nvar fragmentSourceMap = {};\n\nfunction cacheKeyFromLoc(loc) {\n  return normalize(loc.source.body.substring(loc.start, loc.end));\n}\n\n// For testing.\nfunction resetCaches() {\n  docCache = {};\n  fragmentSourceMap = {};\n}\n\n// Take a unstripped parsed document (query/mutation or even fragment), and\n// check all fragment definitions, checking for name->source uniqueness.\n// We also want to make sure only unique fragments exist in the document.\nvar printFragmentWarnings = true;\nfunction processFragments(ast) {\n  var astFragmentMap = {};\n  var definitions = [];\n\n  for (var i = 0; i < ast.definitions.length; i++) {\n    var fragmentDefinition = ast.definitions[i];\n\n    if (fragmentDefinition.kind === 'FragmentDefinition') {\n      var fragmentName = fragmentDefinition.name.value;\n      var sourceKey = cacheKeyFromLoc(fragmentDefinition.loc);\n\n      // We know something about this fragment\n      if (fragmentSourceMap.hasOwnProperty(fragmentName) && !fragmentSourceMap[fragmentName][sourceKey]) {\n\n        // this is a problem because the app developer is trying to register another fragment with\n        // the same name as one previously registered. So, we tell them about it.\n        if (printFragmentWarnings) {\n          console.warn(\"Warning: fragment with name \" + fragmentName + \" already exists.\\n\"\n            + \"graphql-tag enforces all fragment names across your application to be unique; read more about\\n\"\n            + \"this in the docs: http://dev.apollodata.com/core/fragments.html#unique-names\");\n        }\n\n        fragmentSourceMap[fragmentName][sourceKey] = true;\n\n      } else if (!fragmentSourceMap.hasOwnProperty(fragmentName)) {\n        fragmentSourceMap[fragmentName] = {};\n        fragmentSourceMap[fragmentName][sourceKey] = true;\n      }\n\n      if (!astFragmentMap[sourceKey]) {\n        astFragmentMap[sourceKey] = true;\n        definitions.push(fragmentDefinition);\n      }\n    } else {\n      definitions.push(fragmentDefinition);\n    }\n  }\n\n  ast.definitions = definitions;\n  return ast;\n}\n\nfunction disableFragmentWarnings() {\n  printFragmentWarnings = false;\n}\n\nfunction stripLoc(doc, removeLocAtThisLevel) {\n  var docType = Object.prototype.toString.call(doc);\n\n  if (docType === '[object Array]') {\n    return doc.map(function (d) {\n      return stripLoc(d, removeLocAtThisLevel);\n    });\n  }\n\n  if (docType !== '[object Object]') {\n    throw new Error('Unexpected input.');\n  }\n\n  // We don't want to remove the root loc field so we can use it\n  // for fragment substitution (see below)\n  if (removeLocAtThisLevel && doc.loc) {\n    delete doc.loc;\n  }\n\n  // https://github.com/apollographql/graphql-tag/issues/40\n  if (doc.loc) {\n    delete doc.loc.startToken;\n    delete doc.loc.endToken;\n  }\n\n  var keys = Object.keys(doc);\n  var key;\n  var value;\n  var valueType;\n\n  for (key in keys) {\n    if (keys.hasOwnProperty(key)) {\n      value = doc[keys[key]];\n      valueType = Object.prototype.toString.call(value);\n\n      if (valueType === '[object Object]' || valueType === '[object Array]') {\n        doc[keys[key]] = stripLoc(value, true);\n      }\n    }\n  }\n\n  return doc;\n}\n\nvar experimentalFragmentVariables = false;\nfunction parseDocument(doc) {\n  var cacheKey = normalize(doc);\n\n  if (docCache[cacheKey]) {\n    return docCache[cacheKey];\n  }\n\n  var parsed = parse(doc, { experimentalFragmentVariables: experimentalFragmentVariables });\n  if (!parsed || parsed.kind !== 'Document') {\n    throw new Error('Not a valid GraphQL document.');\n  }\n\n  // check that all \"new\" fragments inside the documents are consistent with\n  // existing fragments of the same name\n  parsed = processFragments(parsed);\n  parsed = stripLoc(parsed, false);\n  docCache[cacheKey] = parsed;\n\n  return parsed;\n}\n\nfunction enableExperimentalFragmentVariables() {\n  experimentalFragmentVariables = true;\n}\n\nfunction disableExperimentalFragmentVariables() {\n  experimentalFragmentVariables = false;\n}\n\n// XXX This should eventually disallow arbitrary string interpolation, like Relay does\nfunction gql(/* arguments */) {\n  var args = Array.prototype.slice.call(arguments);\n\n  var literals = args[0];\n\n  // We always get literals[0] and then matching post literals for each arg given\n  var result = (typeof(literals) === \"string\") ? literals : literals[0];\n\n  for (var i = 1; i < args.length; i++) {\n    if (args[i] && args[i].kind && args[i].kind === 'Document') {\n      result += args[i].loc.source.body;\n    } else {\n      result += args[i];\n    }\n\n    result += literals[i];\n  }\n\n  return parseDocument(result);\n}\n\n// Support typescript, which isn't as nice as Babel about default exports\ngql.default = gql;\ngql.resetCaches = resetCaches;\ngql.disableFragmentWarnings = disableFragmentWarnings;\ngql.enableExperimentalFragmentVariables = enableExperimentalFragmentVariables;\ngql.disableExperimentalFragmentVariables = disableExperimentalFragmentVariables;\n\nmodule.exports = gql;\n"},"lineCount":181}},"error":null,"hash":"2d91ca3526a42edb3dc9ee354c5e326e","cacheData":{"env":{}}}