{"version":3,"sources":["webpack://_N_E/./node_modules/graphql-clientgen/build/client/Store.js","webpack://_N_E/./node_modules/graphql-clientgen/build/index.js","webpack://_N_E/./node_modules/graphql-clientgen/build/client/Client.js","webpack://_N_E/./node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js","webpack://_N_E/./node_modules/graphql-clientgen/build/client/Provider.js"],"names":["Object","defineProperty","exports","value","mountRequestSignature","hashString","GraphQLStore","parseContextInfo","Client_1","ctx","isMutation","methodConfig","kind","OpKind","mutation","isQuery","query","shouldCacheByConfig","cache","isActionComplete","action","Actions","complete","isActionWillQueue","willQueue","isActionAbort","abort","isActionClearQuery","clearQuery","error","errors","join","undefined","isStateAction","isComplete","completeFetch","initFetch","Error","parseContextAction","canCache","result","config","this","store","_listeners","activeQueries","ActiveQueriesRegister","getListeners","middleware","async","info","schemaKey","requestSignature","variables","dispatch","loading","resolved","context","listeners","isOptimistic","entry","getItem","setItem","forEach","fn","ignoreCached","assign","Promise","resolve","push","completedCtx","state","shouldDispatch","client","methods","keys","removeItem","currentItem","getState","subscribe","listener","self","isSubscribed","index","indexOf","splice","redoQuery","regex","k","exec","active","count","item","remove","methodName","method","url","entityName","redoQueriesNumber","fragment","console","warn","_register","add","signature","str","i","chr","hash","length","charCodeAt","map","key","replace","sort","reduce","prev","JSON","stringify","Math","abs","__createBinding","create","o","m","k2","enumerable","get","__exportStar","p","hasOwnProperty","__rest","s","e","t","prototype","call","getOwnPropertySymbols","propertyIsEnumerable","fetchGraphql","ensureArray","applyMiddleware","parseFragmentConfig","GraphQLClient","el","Array","isArray","mutationQueue","queryQueue","useQueue","queueLimit","timeoutLimit","fetchQueue","queue","batchMiddleware","headers","finalQueryBody","finalQueryHeader","finalVariables","resolverMap","finalQueryName","childQuery","childQueryIndex","qiKey","qiQuery","concat","variablesMatch","trim","split","match","pair","nname","reg","RegExp","slice","queryFetcher","then","resolver","querySuffix","_variables","_config","requestConfig","queueItem","promise","r","fulfill","clearTimeout","queryBachTimeout","setTimeout","mutationBachTimeout","credentials","Accept","body","fetch","response","contentType","startsWith","fetchError","text","fetchResponse","data","json","message","catch","err","methodsInfo","_instanceMiddleware","resultingFragment","appendToFragment","funcs","a","b","arg","compose","hookConfig","onStateUpdate","requestSignatureRef","_a","_b","parsedConfig","override","initial","defaulter","fetchOnMount","afterMutate","methodInfo","willCallQuery","newSignature","updateSignature","willCallMutation","resolvedMutation","_objectDestructuringEmpty","obj","TypeError","__setModuleDefault","v","__importStar","mod","__esModule","storeStateToHookState","useGraphQLStore","GraphQLProvider","useClientFactory","GraphQLStoreContext","React","Store_1","createContext","defaultStore","lastConfig","useRef","unsubscribeRef","updateReqSignatureState","useState","reqSign","current","_setState","isLoading","cached","updated","stateRef","setState","newState","useEffect","_requestSignature","fetcher","wasStartedTheDefaultFetch","refetch","Component","props","super","children","render","child","createElement","Provider","useContext","isLoadingIfNotCached"],"mappings":"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","file":"static/chunks/b85493dd5acdcd09195645ab7b2bd8b79dc4e84e.bf7dd8bd2da57c471146.js","sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mountRequestSignature = exports.hashString = exports.GraphQLStore = exports.parseContextInfo = void 0;\nconst Client_1 = require(\"./Client\");\n/**\n * state actions are actions that are not fetch actions, that is,\n * actions that are not generic for all queries on a batch -\n *\n * only initFetch and completeFetch are not state actions:\n * initFetch is called before fetch and can be used to change fetch\n * config, like headers - completeFetch is called before distribute results by\n * the queries in the current batch that originated the fetch request\n * @param ctx\n */\nfunction parseContextAction(ctx) {\n switch (ctx.action) {\n case Client_1.Actions.clearQuery: {\n return { isStateAction: true, isComplete: false };\n }\n case Client_1.Actions.abort: {\n return { isStateAction: true, isComplete: true };\n }\n case Client_1.Actions.complete: {\n return { isStateAction: true, isComplete: true };\n }\n case Client_1.Actions.completeFetch: {\n return { isStateAction: false, isComplete: true };\n }\n case Client_1.Actions.initFetch: {\n return { isStateAction: false, isComplete: false };\n }\n case Client_1.Actions.willQueue: {\n return { isStateAction: true, isComplete: false };\n }\n default: {\n throw new Error('invalid action ' + ctx.action);\n }\n }\n}\n/**\n * Parse info from Middleware context\n * @param ctx\n */\nfunction parseContextInfo(ctx) {\n const isMutation = ctx.methodConfig.kind === Client_1.OpKind.mutation;\n const isQuery = ctx.methodConfig.kind === Client_1.OpKind.query;\n const shouldCacheByConfig = ctx.methodConfig.cache === true;\n const isActionComplete = ctx.action === Client_1.Actions.complete;\n const isActionWillQueue = ctx.action === Client_1.Actions.willQueue;\n const isActionAbort = ctx.action === Client_1.Actions.abort;\n const isActionClearQuery = ctx.action === Client_1.Actions.clearQuery;\n const error = ctx.errors ? ctx.errors.join('\\n') : undefined;\n const { isStateAction, isComplete } = parseContextAction(ctx);\n return {\n isMutation,\n isQuery,\n canCache: shouldCacheByConfig && isQuery,\n isActionWillQueue,\n isActionAbort,\n isActionComplete,\n isActionClearQuery,\n // true if the action is a state action\n // and not a fetch action for example\n // there is no schemaKey in fetch actions, because they are generics to\n // a group of queries in a batch - and each one can have one schemaKey\n isStateAction,\n isComplete,\n error,\n result: ctx.result\n };\n}\nexports.parseContextInfo = parseContextInfo;\nclass GraphQLStore {\n constructor(config) {\n this.store = {};\n this._listeners = [];\n // hooks not unmounted using the query\n this.activeQueries = new ActiveQueriesRegister();\n this.getListeners = () => [...this._listeners];\n this.middleware = async (ctx) => {\n const info = parseContextInfo(ctx);\n // there is no schemaKey in fetch actions (initFetch, fetchComplete)\n if (!info.isStateAction)\n return ctx;\n if (info.isActionClearQuery)\n return ctx;\n if (!ctx.methodConfig.schemaKey) {\n throw new Error('ctx.config.schemaKey is undefined');\n }\n const { schemaKey } = ctx.methodConfig;\n const requestSignature = this.mountRequestSignature(schemaKey, ctx.variables);\n if (!info.isQuery) {\n this.dispatch(requestSignature, {\n loading: !info.isComplete,\n resolved: info.isComplete,\n context: ctx,\n listeners: [],\n error: info.error,\n result: info.result,\n isOptimistic: false\n }, schemaKey);\n return ctx;\n }\n const entry = this.getItem(requestSignature);\n if (entry && info.isActionAbort) {\n this.dispatch(requestSignature, entry, schemaKey);\n return ctx;\n }\n if (info.isActionComplete) {\n if (!entry) {\n throw new Error(`reached complete action but store has no entry for requestSignature: \"${requestSignature}\"`);\n }\n const listeners = [...entry.listeners];\n this.setItem(requestSignature, {\n context: ctx,\n resolved: true,\n loading: false,\n listeners: [],\n error: info.error,\n result: info.result,\n isOptimistic: false\n }, schemaKey);\n listeners.forEach(fn => {\n fn(ctx);\n });\n return ctx;\n }\n if (info.isActionWillQueue) {\n // will queue and already has a entry with same requestSignature\n // the entry can be resolved or in progress\n if (entry && info.canCache && !entry.error && !entry.isOptimistic) {\n if (entry.resolved &&\n entry.context &&\n !entry.context.methodConfig.ignoreCached) {\n // dont need to dispatch action here, because when the request\n // started, we should have checked if there was already\n // a cached response\n return Object.assign(Object.assign({}, entry.context), { action: Client_1.Actions.abort });\n }\n // if the existing entry is waiting network response\n // we add a listener to wait network response and return a promise\n return new Promise(resolve => {\n entry.listeners.push(completedCtx => {\n resolve(Object.assign(Object.assign({}, completedCtx), { action: Client_1.Actions.abort }));\n });\n });\n }\n // will queue and there is no corresponding item in store\n else {\n this.setItem(requestSignature, {\n loading: true,\n resolved: false,\n context: ctx,\n listeners: [],\n error: info.error,\n result: info.result,\n isOptimistic: false\n }, schemaKey);\n }\n return ctx;\n }\n if (!this.store[requestSignature]) {\n throw new Error(`reached the end of middleware without store set for \"${requestSignature}\"`);\n }\n return ctx;\n };\n this.getItem = (requestSignature) => {\n return this.store[requestSignature];\n };\n this.setItem = (requestSignature, state, schemaKey, shouldDispatch = true) => {\n if (!this.client.methods[schemaKey]) {\n throw new Error(`schemaKey \"${schemaKey}\" is not present in client methods: ${Object.keys(this.client.methods)}`);\n }\n this.store[requestSignature] = state;\n if (shouldDispatch) {\n this.dispatch(requestSignature, state, schemaKey);\n }\n };\n this.removeItem = (requestSignature, shouldDispatch = true) => {\n const currentItem = this.getItem(requestSignature);\n if (!currentItem)\n return;\n const schemaKey = currentItem.context.methodConfig.schemaKey;\n // can't delete - another request with the same signature cold be made\n // delete this.store[requestSignature];\n delete currentItem.resolved;\n delete currentItem.result;\n delete currentItem.loading;\n currentItem.isOptimistic = true;\n currentItem.context.action = Client_1.Actions.clearQuery;\n if (shouldDispatch) {\n this.dispatch(requestSignature, currentItem, schemaKey);\n }\n };\n this.dispatch = (requestSignature, state, schemaKey) => {\n if (!schemaKey || !this.client.methods[schemaKey]) {\n throw new Error(`schemaKey \"${schemaKey}\" is not present in client methods: ${Object.keys(this.client.methods)}`);\n }\n this._listeners.forEach(fn => {\n fn(state, requestSignature, schemaKey);\n });\n };\n this.getState = () => this.store;\n this.subscribe = (listener) => {\n if (typeof listener !== 'function') {\n throw new Error('Expected the listener to be a function.');\n }\n const self = this;\n let isSubscribed = true;\n this._listeners.push(listener);\n // this.queryCount[signature] += 1;\n return function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n // self.queryCount[signature] -= 1;\n isSubscribed = false;\n const index = self._listeners.indexOf(listener);\n self._listeners.splice(index, 1);\n };\n };\n this.redoQuery = (regex) => {\n Object.keys(this.store).forEach(k => {\n if (!regex.exec(k))\n return;\n const active = this.activeQueries.count(k);\n const item = this.store[k];\n const info = parseContextInfo(item.context);\n if (!info.isQuery)\n return;\n if (!active) {\n this.activeQueries.remove(k);\n this.removeItem(k);\n return;\n }\n const methodName = item.context.methodConfig.schemaKey;\n const variables = item.context.variables;\n const methodConfig = item.context.methodConfig;\n const method = this.client.methods[methodName];\n method(variables, {\n url: methodConfig.url,\n entityName: methodConfig.entityName,\n schemaKey: methodConfig.schemaKey,\n query: methodConfig.query,\n kind: methodConfig.kind,\n middleware: [],\n ignoreCached: true,\n redoQueriesNumber: (methodConfig.redoQueriesNumber || 0) + 1\n }, this.client);\n });\n };\n this.client = config.client;\n this.client.middleware = [...this.client.middleware, this.middleware];\n }\n /**\n * mounts a string with schemaKey and variables like 'postCount(foo:12,bar:1)_FRAGMENT-HASH'\n * @param schemaKey\n * @param variables\n * @param fragment\n */\n mountRequestSignature(schemaKey, variables, fragment = '') {\n if (typeof this.client.methods[schemaKey] !==\n 'function') {\n console.warn('valid schemaKeys:', Object.keys(this.client.methods));\n throw new Error(`Expected \"schemaKey\" to be a valid entry, received: \"${schemaKey}\"`);\n }\n return mountRequestSignature(schemaKey, variables, fragment);\n }\n}\nexports.GraphQLStore = GraphQLStore;\nclass ActiveQueriesRegister {\n constructor() {\n this._register = {};\n this.add = (signature) => {\n return (this._register[signature] = (this._register[signature] || 0) + 1);\n };\n this.remove = (signature) => {\n let count = this._register[signature] - 1;\n if (count < 0)\n count = 1;\n return (this._register[signature] = count);\n };\n this.count = (signature) => this._register[signature] || 0;\n }\n}\nfunction hashString(str = '') {\n let hash = 0, i, chr;\n if (str.length === 0)\n return hash;\n for (i = 0; i < str.length; i++) {\n chr = str.charCodeAt(i);\n hash = (hash << 5) - hash + chr;\n hash |= 0; // Convert to 32bit integer\n }\n return hash;\n}\nexports.hashString = hashString;\nfunction mountRequestSignature(schemaKey, variables, fragment = '') {\n const variablesString = Object.keys(variables)\n .map(key => key.replace(/_(\\d)*/, '')) // remove batch query suffix\n .sort()\n .reduce((prev, key) => {\n const acc = prev ? prev + ',' : prev;\n const value = JSON.stringify(variables[key]);\n return `${acc}${key}:${value}`;\n }, '');\n return `${schemaKey}(${variablesString})_${Math.abs(hashString(fragment))}`.replace(/[^a-z0-9._\\-;,():]/gim, '');\n}\nexports.mountRequestSignature = mountRequestSignature;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpZW50L1N0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFDQVNrQjtBQXFDbEI7Ozs7Ozs7OztHQVNHO0FBQ0gsU0FBUyxrQkFBa0IsQ0FDekIsR0FBWTtJQUVaLFFBQVEsR0FBRyxDQUFDLE1BQU0sRUFBRTtRQUNsQixLQUFLLGdCQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDO1NBQ25EO1FBRUQsS0FBSyxnQkFBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2xCLE9BQU8sRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUNsRDtRQUVELEtBQUssZ0JBQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNyQixPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUM7U0FDbEQ7UUFFRCxLQUFLLGdCQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDMUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDO1NBQ25EO1FBRUQsS0FBSyxnQkFBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3RCLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQztTQUNwRDtRQUVELEtBQUssZ0JBQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN0QixPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUM7U0FDbkQ7UUFFRCxPQUFPLENBQUMsQ0FBQztZQUNQLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxD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","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./client/Client\"), exports);\n__exportStar(require(\"./client/Provider\"), exports);\n__exportStar(require(\"./client/Store\"), exports);\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsa0RBQWdDO0FBQ2hDLG9EQUFrQztBQUNsQyxpREFBK0IifQ==","\"use strict\";\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fetchGraphql = exports.ensureArray = exports.applyMiddleware = exports.parseFragmentConfig = exports.GraphQLClient = exports.Actions = exports.OpKind = void 0;\nvar OpKind;\n(function (OpKind) {\n OpKind[\"mutation\"] = \"mutation\";\n OpKind[\"query\"] = \"query\";\n // subscription = 'subscription', // TODO\n})(OpKind = exports.OpKind || (exports.OpKind = {}));\nvar Actions;\n(function (Actions) {\n // 1\n // when a query fetch will be queued, use to handle loading states\n // this action is called for each query that will be added to a\n // batch of queries\n Actions[\"willQueue\"] = \"willQueue\";\n // 2 - never called if abort is called\n // when the fetch is started can be used to update requestConfig\n // to update loading state use willQueue, because initFetch\n // will be called only one time for a batch of queries\n Actions[\"initFetch\"] = \"initFetch\";\n // 2 or never\n // called when one query in a batch of queries is aborted, probably because\n // the query is already cached or have one identical query in progress\n Actions[\"abort\"] = \"abort\";\n // 3 - never called if aborted\n // called when fetch ends - called for a batch of queries, to handle\n // each query independently, you should listen to the 'complete' action\n Actions[\"completeFetch\"] = \"completeFetch\";\n // 4 - never called if aborted\n // called when one query is completed (but not aborted) - with success or not\n // to handle when a query completes even if the result comes from the cache,\n // you should listen to 'abort' too\n Actions[\"complete\"] = \"complete\";\n // 5 - called when a query is removed from cache\n Actions[\"clearQuery\"] = \"clearQuery\";\n})(Actions = exports.Actions || (exports.Actions = {}));\nclass GraphQLClient {\n constructor(config) {\n this.url = '/graphql';\n this.middleware = [];\n this.mutationQueue = [];\n this.queryQueue = [];\n this.useQueue = true;\n this.queueLimit = 20;\n this.timeoutLimit = 50;\n this.fetchQueue = (queue, kind) => {\n let batchMiddleware = [];\n let headers = {};\n let finalQueryBody = '';\n let finalQueryHeader = '';\n let finalVariables = {};\n let resolverMap = {};\n let finalQueryName = kind + '';\n if (queue.length === 1) {\n finalQueryName = `${finalQueryName} ${queue[0].config.schemaKey} `;\n }\n queue.forEach((childQuery, childQueryIndex) => {\n const qiKey = `${kind}_${childQueryIndex}`;\n let qiQuery = childQuery.config.query;\n resolverMap[qiKey] = childQuery;\n if (childQuery.config.middleware) {\n const m = ensureArray(childQuery.config.middleware);\n batchMiddleware = batchMiddleware.concat(m);\n }\n if (childQuery.config.middleware) {\n headers = Object.assign(Object.assign({}, headers), childQuery.config.headers);\n }\n if (childQuery.variables) {\n Object.keys(childQuery.variables).forEach(k => {\n finalVariables[`${k}_${childQueryIndex}`] = childQuery.variables[k];\n });\n }\n // We will pass all batched queries in the body of one main query\n // The variables of the child queries will give new names in the\n // following format: \"originalName\" + \"_\" + childQueryIndex\n const firstQueryLine = qiQuery.trim().split('\\n')[0];\n const variablesMatch = firstQueryLine.match(/\\((.*)\\)/);\n if (variablesMatch) {\n // if this child batched query has variables\n variablesMatch[1]\n .split(',')\n .map(pair => pair\n .trim()\n .split(':') // will generate '[\"$varName\", \"GQLType\"]\n .map(e => e.trim()))\n .forEach(pair => {\n const nname = `${pair[0]}_${childQueryIndex}`;\n finalQueryHeader += ` ${nname}: ${pair[1]} `;\n // regex to replace \"$varName\" with \"$varName\" + '_' + index\n // resulting in a varName like: \"$varName_0\"\n const reg = new RegExp('\\\\' + pair[0], 'mg');\n qiQuery = qiQuery.replace(reg, nname);\n });\n }\n finalQueryBody +=\n `\\n ${qiKey}: ` +\n qiQuery\n .trim()\n .split('\\n')\n .slice(1, -1) // remove query declaration line and closing tag\n .join('\\n') +\n '\\n';\n });\n if (finalQueryHeader) {\n // if this child query has variables\n finalQueryHeader = `(${finalQueryHeader})`;\n }\n const query = `${finalQueryName} ${finalQueryHeader} {\n ${finalQueryBody}\n }`;\n this.queryFetcher(finalVariables, {\n url: this.url,\n query,\n middleware: batchMiddleware,\n kind\n }).then(ctx => {\n Object.keys(resolverMap).forEach(key => {\n const { resolver, config, variables } = resolverMap[key];\n if (!resolver)\n return;\n const middleware = exports.applyMiddleware(ensureArray(config.middleware));\n resolver(middleware(Object.assign(Object.assign({}, ctx), { result: ctx.result ? ctx.result[key] : null, action: Actions.complete, variables, methodConfig: config, querySuffix: key })));\n });\n });\n };\n this.exec = async (_variables, _config) => {\n const { kind } = _config;\n if (kind !== OpKind.mutation && kind !== OpKind.query) {\n throw new Error(`invalid kind of operation: ${kind}`);\n }\n const methodConfig = Object.assign(Object.assign({}, _config), { url: this.url, middleware: [...this.middleware, ...ensureArray(_config.middleware)] });\n const context = await exports.applyMiddleware(methodConfig.middleware)({\n requestConfig: {},\n variables: _variables,\n methodConfig,\n action: Actions.willQueue\n // errors?: string[];\n // result?: R | null;\n // querySuffix?: string;\n });\n if (context.action === Actions.abort) {\n // applying middleware because listeners should be able\n // to listen to 'abort' action\n return exports.applyMiddleware(methodConfig.middleware)(context);\n }\n let queueItem = {\n config: context.methodConfig,\n resolver: null,\n variables: _variables,\n kind\n };\n const promise = new Promise(r => {\n queueItem.resolver = r;\n });\n if (!this.useQueue) {\n this.fetchQueue([queueItem], kind);\n return promise;\n }\n if (kind === OpKind.query) {\n this.queryQueue.push(queueItem);\n const fulfill = () => {\n let queue = [...this.queryQueue];\n this.queryQueue = [];\n this.fetchQueue(queue, kind);\n };\n clearTimeout(this.queryBachTimeout);\n this.queryBachTimeout = setTimeout(fulfill, this.timeoutLimit);\n if (this.queryQueue.length >= this.queueLimit) {\n fulfill();\n }\n }\n else if (kind === OpKind.mutation) {\n this.mutationQueue.push(queueItem);\n const fulfill = () => {\n let queue = [...this.mutationQueue];\n this.mutationQueue = [];\n this.fetchQueue(queue, kind);\n };\n clearTimeout(this.mutationBachTimeout);\n this.mutationBachTimeout = setTimeout(fulfill, this.timeoutLimit);\n if (this.mutationQueue.length >= this.queueLimit) {\n fulfill();\n }\n }\n return promise;\n };\n this.queryFetcher = async (variables, methodConfig) => {\n let requestConfig = {\n method: 'POST',\n credentials: 'include',\n headers: Object.assign({ 'Content-Type': 'application/json', Accept: 'application/json' }, methodConfig.headers)\n };\n const middleware = typeof methodConfig.middleware === 'function'\n ? methodConfig.middleware\n : exports.applyMiddleware(ensureArray(methodConfig.middleware));\n const context = await middleware({\n requestConfig,\n variables,\n methodConfig,\n action: Actions.initFetch,\n querySuffix: methodConfig.querySuffix\n });\n if (context.action === Actions.abort) {\n return context;\n }\n context.requestConfig.body = JSON.stringify({\n query: context.methodConfig.query,\n variables: context.variables\n });\n return fetch(context.methodConfig.url, context.requestConfig)\n .then(async (response) => {\n const contentType = response.headers.get('Content-Type');\n const isJSON = contentType && contentType.startsWith('application/json');\n if (!isJSON) {\n const fetchError = await response.text();\n return middleware(Object.assign(Object.assign({}, context), { fetchResponse: response, result: null, action: Actions.completeFetch, errors: [fetchError] }));\n }\n let { errors, data } = await response.json();\n if (errors && !Array.isArray(errors)) {\n errors = [errors];\n }\n if (errors) {\n errors = errors.map((e) => e && e.message ? e.message : JSON.stringify(e));\n }\n return middleware(Object.assign(Object.assign({}, context), { fetchResponse: response, errors, action: Actions.completeFetch, result: data\n ? methodConfig.schemaKey\n ? data[methodConfig.schemaKey]\n : data\n : null }));\n })\n .catch(err => {\n return middleware(Object.assign(Object.assign({}, context), { errors: [err], action: Actions.completeFetch, result: null }));\n });\n };\n this.methods = config.methods;\n this.methodsInfo = config.methodsInfo;\n if (typeof config.useQueue === 'boolean') {\n this.useQueue = config.useQueue;\n }\n // apply global client instance middleware\n if (config.middleware) {\n const _instanceMiddleware = exports.applyMiddleware(ensureArray(config.middleware));\n this.middleware = [\n function instanceMiddleware(ctx) {\n return _instanceMiddleware(ctx);\n }\n ];\n }\n if (config.url) {\n this.url = config.url;\n }\n }\n}\nexports.GraphQLClient = GraphQLClient;\n// compose(f, g, h) is identical to doing (...args) => f(g(h(...args))).\nfunction compose(funcs) {\n if (!Array.isArray(funcs) || funcs.length === 0) {\n return (arg => Promise.resolve(arg));\n }\n if (funcs.length === 1) {\n return funcs[0];\n }\n return funcs.reduce((a, b) => async (context) => {\n return await a(await b(context));\n // return await a(await b(cloneDeep(context)));\n });\n}\nfunction parseFragmentConfig(fragment, config) {\n let resultingFragment = fragment || '';\n if (config) {\n if (config.fragment) {\n resultingFragment = `${config.fragment}`;\n }\n if (config.appendToFragment) {\n resultingFragment += `\\n ${config.appendToFragment}`;\n }\n }\n return resultingFragment;\n}\nexports.parseFragmentConfig = parseFragmentConfig;\nexports.applyMiddleware = (middleware) => {\n return (context) => {\n return compose(middleware)(context);\n };\n};\nfunction ensureArray(el) {\n if (!el)\n return [];\n if (Array.isArray(el))\n return el;\n return [el];\n}\nexports.ensureArray = ensureArray;\nexports.fetchGraphql = (methodName, hookConfig, store, onStateUpdate = {}) => {\n const method = store.client.methods[methodName];\n const defaulter = (override = {}) => {\n const initial = hookConfig || {};\n return Object.assign(Object.assign(Object.assign({}, initial), override), { variables: override.variables\n ? override.variables\n : initial.variables || {} });\n };\n let requestSignatureRef = '';\n // update requestSignature when fetcher is called with new variables\n function updateSignature({ methodName, variables }) {\n const newSignature = store.mountRequestSignature(methodName, variables);\n if (newSignature === requestSignatureRef)\n return;\n store.activeQueries.remove(requestSignatureRef);\n requestSignatureRef = newSignature;\n if (onStateUpdate.updateSignature) {\n onStateUpdate.updateSignature(newSignature);\n }\n }\n return function methodfetcher(config = hookConfig) {\n var _a, _b;\n const parsedConfig = defaulter(config);\n const { variables, fetchOnMount, afterMutate } = parsedConfig, methodConfig = __rest(parsedConfig, [\"variables\", \"fetchOnMount\", \"afterMutate\"]);\n const methodInfo = store.client.methodsInfo[methodName];\n if (!methodInfo) {\n throw new Error(`The method \"${methodName}\" does not exists`);\n }\n if (methodInfo.isQuery) {\n (_a = onStateUpdate.willCallQuery) === null || _a === void 0 ? void 0 : _a.call(onStateUpdate, parsedConfig);\n updateSignature({ methodName: methodName, variables });\n store.activeQueries.add(requestSignatureRef);\n return method(variables, methodConfig, store.client);\n }\n (_b = onStateUpdate.willCallMutation) === null || _b === void 0 ? void 0 : _b.call(onStateUpdate, parsedConfig);\n return method(variables, methodConfig, store.client).then(ctx => {\n if (!ctx.errors && afterMutate) {\n if (afterMutate instanceof RegExp) {\n store.redoQuery(afterMutate);\n }\n else {\n afterMutate(ctx.result, store);\n }\n }\n if (onStateUpdate.resolvedMutation) {\n onStateUpdate.resolvedMutation(ctx);\n }\n return ctx;\n });\n };\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9DbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFFQSxJQUFZLE1BSVg7QUFKRCxXQUFZLE1BQU07SUFDaEIsK0JBQXFCLENBQUE7SUFDckIseUJBQWUsQ0FBQTtJQUNmLHlDQUF5QztBQUMzQyxDQUFDLEVBSlcsTUFBTSxHQUFOLGNBQU0sS0FBTixjQUFNLFFBSWpCO0FBRUQsSUFBWSxPQStCWDtBQS9CRCxXQUFZLE9BQU87SUFDakIsSUFBSTtJQUNKLGtFQUFrRTtJQUNsRSwrREFBK0Q7SUFDL0QsbUJBQW1CO0lBQ25CLGtDQUF1QixDQUFBO0lBRXZCLHNDQUFzQztJQUN0QyxnRUFBZ0U7SUFDaEUsMkRBQTJEO0lBQzNELHNEQUFzRDtJQUN0RCxrQ0FBdUIsQ0FBQTtJQUV2QixhQUFhO0lBQ2IsMkVBQTJFO0lBQzNFLHNFQUFzRTtJQUN0RSwwQkFBZSxDQUFBO0lBRWYsOEJBQThCO0lBQzlCLG9FQUFvRTtJQUNwRSx1RUFBdUU7SUFDdkUsMENBQStCLENBQUE7SUFFL0IsOEJBQThCO0lBQzlCLDZFQUE2RTtJQUM3RSw0RUFBNEU7SUFDNUUsbUNBQW1DO0lBQ25DLGdDQUFxQixDQUFBO0lBRXJCLGdEQUFnRDtJQUNoRCxvQ0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBL0JXLE9BQU8sR0FBUCxlQUFPLEtBQVAsZUFBTyxRQStCbEI7QUF3REQsTUFBYSxhQUFhO0lBZ0J4QixZQUFZLE1BQTJCO1FBZnZDLFFBQUcsR0FBRyxVQUFVLENBQUM7UUFDakIsZUFBVSxHQUFzQixFQUFFLENBQUM7UUFPM0Isa0JBQWEsR0FBZ0IsRUFBRSxDQUFDO1FBQ2hDLGVBQVUsR0FBZ0IsRUFBRSxDQUFDO1FBRXJDLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFDaEIsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNoQixpQkFBWSxHQUFHLEVBQUUsQ0FBQztR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","export default function _objectDestructuringEmpty(obj) {\n if (obj == null) throw new TypeError(\"Cannot destructure undefined\");\n}","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.storeStateToHookState = exports.useGraphQLStore = exports.GraphQLProvider = exports.useClientFactory = exports.GraphQLStoreContext = void 0;\nconst React = __importStar(require(\"react\"));\nconst Store_1 = require(\"./Store\");\nconst Client_1 = require(\"./Client\");\nexports.GraphQLStoreContext = React.createContext({});\nfunction useClientFactory(defaultStore) {\n return (methodName, hookConfig) => {\n const store = (defaultStore && defaultStore()) ||\n useGraphQLStore(methodName).store;\n const lastConfig = React.useRef(hookConfig);\n const defaulter = (override = {}) => {\n const initial = hookConfig || {};\n return Object.assign(Object.assign(Object.assign({}, initial), override), { variables: override.variables\n ? override.variables\n : initial.variables || {} });\n };\n // as setState is async, we also save requestSignature in a ref\n const requestSignatureRef = React.useRef('');\n // to unsubscribe when unmount or when requestSignature changes\n const unsubscribeRef = React.useRef(() => { });\n // if there is a initialConfig, we generate a default requestSignature with\n // this config - otherwise the requestSignature will be set on\n // the first request and possible changed with setCacheKey if\n // requestSignature changes between fetches or renders\n const [requestSignature, updateReqSignatureState] = React.useState(() => {\n // no initial variables\n if (!hookConfig) {\n return '';\n }\n const reqSign = store.mountRequestSignature(methodName, defaulter().variables || {}, (defaulter().fragment || '') + (defaulter().appendToFragment || ''));\n requestSignatureRef.current = reqSign;\n return reqSign;\n });\n const [state, _setState] = React.useState(() => {\n const isLoading = hookConfig && hookConfig.fetchOnMount;\n // if there is a initial fetch config and cache !== false we have\n // a requestSignature at the first render\n if (requestSignature) {\n const cached = store.getItem(requestSignature);\n return exports.storeStateToHookState(cached, isLoading);\n }\n const result = exports.storeStateToHookState(undefined, isLoading);\n return Object.assign(Object.assign({}, result), { updated: 0 });\n });\n const stateRef = React.useRef(state);\n function setState(newState) {\n let { result, loading, resolved } = newState;\n if (result === stateRef.current.result &&\n loading === stateRef.current.loading &&\n resolved === stateRef.current.resolved) {\n return;\n }\n stateRef.current = Object.assign(Object.assign({}, newState), { updated: (state.updated || 0) + 1 });\n _setState(stateRef.current);\n }\n // subscription\n React.useEffect(() => {\n unsubscribeRef.current();\n unsubscribeRef.current = store.subscribe((value, _requestSignature) => {\n if (requestSignatureRef.current !== _requestSignature) {\n return;\n }\n if (value.loading) {\n setState(Object.assign(Object.assign({}, stateRef.current), { loading: true }));\n return;\n }\n if (value.context.action !== 'complete' &&\n value.context.action !== 'abort') {\n return;\n }\n setState(exports.storeStateToHookState(value));\n });\n return () => {\n store.activeQueries.remove(requestSignatureRef.current);\n unsubscribeRef.current();\n };\n }, []);\n const fetcher = Client_1.fetchGraphql(methodName, hookConfig, store, {\n willCallQuery(config) {\n lastConfig.current = config;\n },\n willCallMutation(config) {\n lastConfig.current = config;\n setState(Object.assign(Object.assign({}, stateRef.current), { loading: true }));\n },\n updateSignature(newSignature) {\n updateReqSignatureState(newSignature);\n requestSignatureRef.current = newSignature;\n },\n resolvedMutation(ctx) {\n setState(exports.storeStateToHookState({\n context: ctx,\n loading: false,\n resolved: true,\n listeners: [],\n result: undefined,\n error: undefined,\n isOptimistic: false\n }));\n }\n });\n // if there is a default fetch config, fetch it on first render\n const wasStartedTheDefaultFetch = React.useRef(false);\n if (!wasStartedTheDefaultFetch.current && defaulter().fetchOnMount) {\n wasStartedTheDefaultFetch.current = true;\n fetcher();\n }\n const refetch = function (config = lastConfig.current) {\n return fetcher(Object.assign({ ignoreCached: true }, config));\n };\n return Object.assign(Object.assign({}, state), { data: state.result, fetch: refetch, refetch,\n store, signature: requestSignature });\n };\n}\nexports.useClientFactory = useClientFactory;\nclass GraphQLProvider extends React.Component {\n constructor(props, context) {\n super(props, context);\n this.client = this.props.client;\n this.store = props.store || new Store_1.GraphQLStore({ client: this.client });\n }\n render() {\n const { children, render } = this.props;\n const child = render ? render(this.store, this.client) : children;\n return React.createElement(exports.GraphQLStoreContext.Provider, {\n children: child,\n value: this.store\n });\n }\n}\nexports.GraphQLProvider = GraphQLProvider;\nfunction useGraphQLStore(methodName) {\n const store = React.useContext(exports.GraphQLStoreContext);\n if (!store) {\n throw new Error('store is not present in React Context');\n }\n if (!store.client) {\n throw new Error('client is not present in GraphQLStore');\n }\n // the corresponding graphql method fetcher\n const method = store.client.methods[methodName];\n if (typeof method !== 'function') {\n throw new Error(`expected method with name \"${methodName}\" to be a function. found \"${typeof method}\"`);\n }\n return { store, method };\n}\nexports.useGraphQLStore = useGraphQLStore;\nexports.storeStateToHookState = (state, isLoadingIfNotCached) => {\n return {\n result: state ? state.context.result : undefined,\n loading: state ? state.loading : !!isLoadingIfNotCached,\n resolved: state ? state.resolved : false,\n error: state && state.context && state.context.errors\n ? state.context.errors.join('\\n')\n : null\n };\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpZW50L1Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBK0I7QUFFL0IsbUNBQW1EO0FBRW5ELHFDQVFrQjtBQU1MLFFBQUEsbUJBQW1CLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFrQixDQUFDLENBQUM7QUFFM0UsU0FBZ0IsZ0JBQWdCLENBRzlCLFlBQXNCO0lBQ3RCLE9BQU8sQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLEVBQUU7UUFDaEMsTUFBTSxLQUFLLEdBQ1QsQ0FBQyxZQUFZLElBQUksWUFBWSxFQUFFLENBQUM7WUFDaEMsZUFBZSxDQUFDLFVBQW9CLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFFOUMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUU1QyxNQUFNLFNBQVMsR0FBRyxDQUFDLFdBQThCLEVBQUUsRUFBRSxFQUFFO1lBQ3JELE1BQU0sT0FBTyxHQUFRLFVBQVUsSUFBSSxFQUFFLENBQUM7WUFFdEMscURBQ0ssT0FBTyxHQUNQLFFBQVEsS0FDWCxTQUFTLEVBQUUsUUFBUSxDQUFDLFNBQVM7b0JBQzNCLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBUztvQkFDcEIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLElBQUksRUFBRSxJQUMzQjtRQUNKLENBQUMsQ0FBQztRQUVGLCtEQUErRDtRQUMvRCxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFN0MsK0RBQStEO1FBQy9ELE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDLENBQUM7UUFFOUMsMkVBQTJFO1FBQzNFLDhEQUE4RDtRQUM5RCw2REFBNkQ7UUFDN0Qsc0RBQXNE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"],"sourceRoot":""}