{"version":3,"sources":["webpack:///./node_modules/apollo-link-state/lib/utils.js","webpack:///./node_modules/apollo-link-state/lib/index.js"],"names":["connectionRemoveConfig","test","directive","name","value","remove","removed","Map","removeClientSetsFromDocument","query","cached","get","docClone","set","normalizeTypeDefs","typeDefs","defs","Array","isArray","map","typeDef","str","trim","join","__extends","extendStatics","Object","setPrototypeOf","__proto__","d","b","p","hasOwnProperty","__","this","constructor","prototype","create","graphql","capitalizeFirstLetter","charAt","toUpperCase","slice","withClientState","clientStateConfig","resolvers","defaults","cache","fragmentMatcher","writeData","data","_super","StateLink","apply","arguments","writeDefaults","request","operation","forward","of","directives_1","definition_1","setContext","_a","_b","schemas","concat","definition","directives","isClient","server","type","resolver","fieldName","rootValue","args","context","info","resultKey","aliasedNode","preAliasingNode","aliasNeeded","undefined","resolverMap","__typename","resolve","obs","observer","complete","handlingNext","subscribe","next","errors","observerErrorHandler","error","bind","getContext","variables","then","nextData","catch"],"mappings":"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","file":"js/npm.apollo-link-state~b70383a2.2f28a693.js","sourcesContent":["import { print } from 'graphql';\nimport { checkDocument, removeDirectivesFromDocument } from 'apollo-utilities';\nvar connectionRemoveConfig = {\n test: function (directive) { return directive.name.value === 'client'; },\n remove: true,\n};\nvar removed = new Map();\nexport function removeClientSetsFromDocument(query) {\n var cached = removed.get(query);\n if (cached)\n return cached;\n checkDocument(query);\n var docClone = removeDirectivesFromDocument([connectionRemoveConfig], query);\n removed.set(query, docClone);\n return docClone;\n}\nexport function normalizeTypeDefs(typeDefs) {\n var defs = Array.isArray(typeDefs) ? typeDefs : [typeDefs];\n return defs\n .map(function (typeDef) { return (typeof typeDef === 'string' ? typeDef : print(typeDef)); })\n .map(function (str) { return str.trim(); })\n .join('\\n');\n}\n//# sourceMappingURL=utils.js.map","var __extends = (this && this.__extends) || (function () {\n var extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nimport { ApolloLink, Observable, } from 'apollo-link';\nimport { hasDirectives, getMainDefinition } from 'apollo-utilities';\nimport * as Async from 'graphql-anywhere/lib/async';\nvar graphql = Async.graphql;\nimport { removeClientSetsFromDocument, normalizeTypeDefs } from './utils';\nvar capitalizeFirstLetter = function (str) { return str.charAt(0).toUpperCase() + str.slice(1); };\nexport var withClientState = function (clientStateConfig) {\n if (clientStateConfig === void 0) { clientStateConfig = { resolvers: {}, defaults: {} }; }\n var defaults = clientStateConfig.defaults, cache = clientStateConfig.cache, typeDefs = clientStateConfig.typeDefs, fragmentMatcher = clientStateConfig.fragmentMatcher;\n if (cache && defaults) {\n cache.writeData({ data: defaults });\n }\n return new (function (_super) {\n __extends(StateLink, _super);\n function StateLink() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n StateLink.prototype.writeDefaults = function () {\n if (cache && defaults) {\n cache.writeData({ data: defaults });\n }\n };\n StateLink.prototype.request = function (operation, forward) {\n if (forward === void 0) { forward = function () { return Observable.of({ data: {} }); }; }\n if (typeDefs) {\n var directives_1 = 'directive @client on FIELD';\n var definition_1 = normalizeTypeDefs(typeDefs);\n operation.setContext(function (_a) {\n var _b = _a.schemas, schemas = _b === void 0 ? [] : _b;\n return ({\n schemas: schemas.concat([{ definition: definition_1, directives: directives_1 }]),\n });\n });\n }\n var isClient = hasDirectives(['client'], operation.query);\n if (!isClient)\n return forward(operation);\n var resolvers = typeof clientStateConfig.resolvers === 'function'\n ? clientStateConfig.resolvers()\n : clientStateConfig.resolvers;\n var server = removeClientSetsFromDocument(operation.query);\n var query = operation.query;\n var type = capitalizeFirstLetter((getMainDefinition(query) || {}).operation) || 'Query';\n var resolver = function (fieldName, rootValue, args, context, info) {\n if (rootValue === void 0) { rootValue = {}; }\n var resultKey = info.resultKey;\n var aliasedNode = rootValue[resultKey];\n var preAliasingNode = rootValue[fieldName];\n var aliasNeeded = resultKey !== fieldName;\n if (aliasedNode !== undefined || preAliasingNode !== undefined) {\n return aliasedNode || preAliasingNode;\n }\n var resolverMap = resolvers[rootValue.__typename || type];\n if (resolverMap) {\n var resolve = resolverMap[fieldName];\n if (resolve)\n return resolve(rootValue, args, context, info);\n }\n return ((aliasNeeded ? aliasedNode : preAliasingNode) ||\n (defaults || {})[fieldName]);\n };\n if (server)\n operation.query = server;\n var obs = server && forward\n ? forward(operation)\n : Observable.of({\n data: {},\n });\n return new Observable(function (observer) {\n var complete = false;\n var handlingNext = false;\n obs.subscribe({\n next: function (_a) {\n var data = _a.data, errors = _a.errors;\n var observerErrorHandler = observer.error.bind(observer);\n var context = operation.getContext();\n handlingNext = true;\n graphql(resolver, query, data, context, operation.variables, {\n fragmentMatcher: fragmentMatcher,\n })\n .then(function (nextData) {\n observer.next({\n data: nextData,\n errors: errors,\n });\n if (complete) {\n observer.complete();\n }\n handlingNext = false;\n })\n .catch(observerErrorHandler);\n },\n error: observer.error.bind(observer),\n complete: function () {\n if (!handlingNext) {\n observer.complete();\n }\n complete = true;\n },\n });\n });\n };\n return StateLink;\n }(ApolloLink))();\n};\n//# sourceMappingURL=index.js.map"],"sourceRoot":""}