{"version":3,"file":"apollo-client.cjs","sources":["utilities/globals/maybe.js","utilities/graphql/directives.js","utilities/graphql/fragments.js","utilities/common/objects.js","utilities/graphql/storeUtils.js","utilities/graphql/getFromAST.js","utilities/common/filterInPlace.js","utilities/graphql/transform.js","utilities/common/mergeDeep.js","utilities/common/cloneDeep.js","utilities/common/maybeDeepFreeze.js","utilities/observables/iteration.js","utilities/observables/asyncMap.js","utilities/common/canUse.js","utilities/observables/subclassing.js","utilities/observables/Concast.js","utilities/common/arrays.js","utilities/common/errorHandling.js","utilities/common/compact.js","utilities/common/makeUniqueId.js","utilities/common/stringifyForDisplay.js","utilities/common/mergeOptions.js","link/utils/fromError.js","link/utils/toPromise.js","link/utils/fromPromise.js","link/utils/throwServerError.js","link/utils/validateOperation.js","link/utils/createOperation.js","link/utils/transformOperation.js","link/core/ApolloLink.js","link/core/empty.js","link/core/from.js","link/core/split.js","link/core/concat.js","link/core/execute.js","version.js","link/http/parseAndCheckHttpResponse.js","link/http/serializeFetchParameter.js","link/http/selectHttpOptionsAndBody.js","link/http/checkFetcher.js","link/http/createSignalIfSupported.js","link/http/selectURI.js","link/http/rewriteURIForGET.js","link/http/createHttpLink.js","link/http/HttpLink.js","cache/core/cache.js","cache/core/types/Cache.js","cache/core/types/common.js","cache/inmemory/helpers.js","cache/inmemory/entityStore.js","cache/inmemory/object-canon.js","cache/inmemory/readFromStore.js","cache/inmemory/reactiveVars.js","cache/inmemory/key-extractor.js","cache/inmemory/policies.js","cache/inmemory/writeToStore.js","cache/inmemory/inMemoryCache.js","errors/index.js","core/networkStatus.js","core/ObservableQuery.js","core/LocalState.js","core/QueryInfo.js","core/QueryManager.js","core/ApolloClient.js","react/context/ApolloContext.js","react/context/ApolloConsumer.js","react/context/ApolloProvider.js","react/hooks/useApolloClient.js","react/hooks/useSyncExternalStore.js","react/parser/index.js","react/hooks/useQuery.js","react/hooks/useLazyQuery.js","react/hooks/useMutation.js","react/hooks/useSubscription.js","react/hooks/useReactiveVar.js"],"sourcesContent":["export function maybe(thunk) {\n    try {\n        return thunk();\n    }\n    catch (_a) { }\n}\n//# sourceMappingURL=maybe.js.map","import { invariant } from '../globals';\nimport { visit, } from 'graphql';\nexport function shouldInclude(_a, variables) {\n    var directives = _a.directives;\n    if (!directives || !directives.length) {\n        return true;\n    }\n    return getInclusionDirectives(directives).every(function (_a) {\n        var directive = _a.directive, ifArgument = _a.ifArgument;\n        var evaledValue = false;\n        if (ifArgument.value.kind === 'Variable') {\n            evaledValue = variables && variables[ifArgument.value.name.value];\n            __DEV__ ? invariant(evaledValue !== void 0, \"Invalid variable referenced in @\".concat(directive.name.value, \" directive.\")) : invariant(evaledValue !== void 0, 37);\n        }\n        else {\n            evaledValue = ifArgument.value.value;\n        }\n        return directive.name.value === 'skip' ? !evaledValue : evaledValue;\n    });\n}\nexport function getDirectiveNames(root) {\n    var names = [];\n    visit(root, {\n        Directive: function (node) {\n            names.push(node.name.value);\n        },\n    });\n    return names;\n}\nexport function hasDirectives(names, root) {\n    return getDirectiveNames(root).some(function (name) { return names.indexOf(name) > -1; });\n}\nexport function hasClientExports(document) {\n    return (document &&\n        hasDirectives(['client'], document) &&\n        hasDirectives(['export'], document));\n}\nfunction isInclusionDirective(_a) {\n    var value = _a.name.value;\n    return value === 'skip' || value === 'include';\n}\nexport function getInclusionDirectives(directives) {\n    var result = [];\n    if (directives && directives.length) {\n        directives.forEach(function (directive) {\n            if (!isInclusionDirective(directive))\n                return;\n            var directiveArguments = directive.arguments;\n            var directiveName = directive.name.value;\n            __DEV__ ? invariant(directiveArguments && directiveArguments.length === 1, \"Incorrect number of arguments for the @\".concat(directiveName, \" directive.\")) : invariant(directiveArguments && directiveArguments.length === 1, 38);\n            var ifArgument = directiveArguments[0];\n            __DEV__ ? invariant(ifArgument.name && ifArgument.name.value === 'if', \"Invalid argument for the @\".concat(directiveName, \" directive.\")) : invariant(ifArgument.name && ifArgument.name.value === 'if', 39);\n            var ifValue = ifArgument.value;\n            __DEV__ ? invariant(ifValue &&\n                (ifValue.kind === 'Variable' || ifValue.kind === 'BooleanValue'), \"Argument for the @\".concat(directiveName, \" directive must be a variable or a boolean value.\")) : invariant(ifValue &&\n                (ifValue.kind === 'Variable' || ifValue.kind === 'BooleanValue'), 40);\n            result.push({ directive: directive, ifArgument: ifArgument });\n        });\n    }\n    return result;\n}\n//# sourceMappingURL=directives.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport { invariant, InvariantError } from '../globals';\nexport function getFragmentQueryDocument(document, fragmentName) {\n    var actualFragmentName = fragmentName;\n    var fragments = [];\n    document.definitions.forEach(function (definition) {\n        if (definition.kind === 'OperationDefinition') {\n            throw __DEV__ ? new InvariantError(\"Found a \".concat(definition.operation, \" operation\").concat(definition.name ? \" named '\".concat(definition.name.value, \"'\") : '', \". \") +\n                'No operations are allowed when using a fragment as a query. Only fragments are allowed.') : new InvariantError(41);\n        }\n        if (definition.kind === 'FragmentDefinition') {\n            fragments.push(definition);\n        }\n    });\n    if (typeof actualFragmentName === 'undefined') {\n        __DEV__ ? invariant(fragments.length === 1, \"Found \".concat(fragments.length, \" fragments. `fragmentName` must be provided when there is not exactly 1 fragment.\")) : invariant(fragments.length === 1, 42);\n        actualFragmentName = fragments[0].name.value;\n    }\n    var query = __assign(__assign({}, document), { definitions: __spreadArray([\n            {\n                kind: 'OperationDefinition',\n                operation: 'query',\n                selectionSet: {\n                    kind: 'SelectionSet',\n                    selections: [\n                        {\n                            kind: 'FragmentSpread',\n                            name: {\n                                kind: 'Name',\n                                value: actualFragmentName,\n                            },\n                        },\n                    ],\n                },\n            }\n        ], document.definitions, true) });\n    return query;\n}\nexport function createFragmentMap(fragments) {\n    if (fragments === void 0) { fragments = []; }\n    var symTable = {};\n    fragments.forEach(function (fragment) {\n        symTable[fragment.name.value] = fragment;\n    });\n    return symTable;\n}\nexport function getFragmentFromSelection(selection, fragmentMap) {\n    switch (selection.kind) {\n        case 'InlineFragment':\n            return selection;\n        case 'FragmentSpread': {\n            var fragment = fragmentMap && fragmentMap[selection.name.value];\n            __DEV__ ? invariant(fragment, \"No fragment named \".concat(selection.name.value, \".\")) : invariant(fragment, 43);\n            return fragment;\n        }\n        default:\n            return null;\n    }\n}\n//# sourceMappingURL=fragments.js.map","export function isNonNullObject(obj) {\n    return obj !== null && typeof obj === 'object';\n}\n//# sourceMappingURL=objects.js.map","import { InvariantError } from '../globals';\nimport { isNonNullObject } from '../common/objects';\nimport { getFragmentFromSelection } from './fragments';\nexport function makeReference(id) {\n    return { __ref: String(id) };\n}\nexport function isReference(obj) {\n    return Boolean(obj && typeof obj === 'object' && typeof obj.__ref === 'string');\n}\nexport function isDocumentNode(value) {\n    return (isNonNullObject(value) &&\n        value.kind === \"Document\" &&\n        Array.isArray(value.definitions));\n}\nfunction isStringValue(value) {\n    return value.kind === 'StringValue';\n}\nfunction isBooleanValue(value) {\n    return value.kind === 'BooleanValue';\n}\nfunction isIntValue(value) {\n    return value.kind === 'IntValue';\n}\nfunction isFloatValue(value) {\n    return value.kind === 'FloatValue';\n}\nfunction isVariable(value) {\n    return value.kind === 'Variable';\n}\nfunction isObjectValue(value) {\n    return value.kind === 'ObjectValue';\n}\nfunction isListValue(value) {\n    return value.kind === 'ListValue';\n}\nfunction isEnumValue(value) {\n    return value.kind === 'EnumValue';\n}\nfunction isNullValue(value) {\n    return value.kind === 'NullValue';\n}\nexport function valueToObjectRepresentation(argObj, name, value, variables) {\n    if (isIntValue(value) || isFloatValue(value)) {\n        argObj[name.value] = Number(value.value);\n    }\n    else if (isBooleanValue(value) || isStringValue(value)) {\n        argObj[name.value] = value.value;\n    }\n    else if (isObjectValue(value)) {\n        var nestedArgObj_1 = {};\n        value.fields.map(function (obj) {\n            return valueToObjectRepresentation(nestedArgObj_1, obj.name, obj.value, variables);\n        });\n        argObj[name.value] = nestedArgObj_1;\n    }\n    else if (isVariable(value)) {\n        var variableValue = (variables || {})[value.name.value];\n        argObj[name.value] = variableValue;\n    }\n    else if (isListValue(value)) {\n        argObj[name.value] = value.values.map(function (listValue) {\n            var nestedArgArrayObj = {};\n            valueToObjectRepresentation(nestedArgArrayObj, name, listValue, variables);\n            return nestedArgArrayObj[name.value];\n        });\n    }\n    else if (isEnumValue(value)) {\n        argObj[name.value] = value.value;\n    }\n    else if (isNullValue(value)) {\n        argObj[name.value] = null;\n    }\n    else {\n        throw __DEV__ ? new InvariantError(\"The inline argument \\\"\".concat(name.value, \"\\\" of kind \\\"\").concat(value.kind, \"\\\"\") +\n            'is not supported. Use variables instead of inline arguments to ' +\n            'overcome this limitation.') : new InvariantError(52);\n    }\n}\nexport function storeKeyNameFromField(field, variables) {\n    var directivesObj = null;\n    if (field.directives) {\n        directivesObj = {};\n        field.directives.forEach(function (directive) {\n            directivesObj[directive.name.value] = {};\n            if (directive.arguments) {\n                directive.arguments.forEach(function (_a) {\n                    var name = _a.name, value = _a.value;\n                    return valueToObjectRepresentation(directivesObj[directive.name.value], name, value, variables);\n                });\n            }\n        });\n    }\n    var argObj = null;\n    if (field.arguments && field.arguments.length) {\n        argObj = {};\n        field.arguments.forEach(function (_a) {\n            var name = _a.name, value = _a.value;\n            return valueToObjectRepresentation(argObj, name, value, variables);\n        });\n    }\n    return getStoreKeyName(field.name.value, argObj, directivesObj);\n}\nvar KNOWN_DIRECTIVES = [\n    'connection',\n    'include',\n    'skip',\n    'client',\n    'rest',\n    'export',\n];\nexport var getStoreKeyName = Object.assign(function (fieldName, args, directives) {\n    if (args &&\n        directives &&\n        directives['connection'] &&\n        directives['connection']['key']) {\n        if (directives['connection']['filter'] &&\n            directives['connection']['filter'].length > 0) {\n            var filterKeys = directives['connection']['filter']\n                ? directives['connection']['filter']\n                : [];\n            filterKeys.sort();\n            var filteredArgs_1 = {};\n            filterKeys.forEach(function (key) {\n                filteredArgs_1[key] = args[key];\n            });\n            return \"\".concat(directives['connection']['key'], \"(\").concat(stringify(filteredArgs_1), \")\");\n        }\n        else {\n            return directives['connection']['key'];\n        }\n    }\n    var completeFieldName = fieldName;\n    if (args) {\n        var stringifiedArgs = stringify(args);\n        completeFieldName += \"(\".concat(stringifiedArgs, \")\");\n    }\n    if (directives) {\n        Object.keys(directives).forEach(function (key) {\n            if (KNOWN_DIRECTIVES.indexOf(key) !== -1)\n                return;\n            if (directives[key] && Object.keys(directives[key]).length) {\n                completeFieldName += \"@\".concat(key, \"(\").concat(stringify(directives[key]), \")\");\n            }\n            else {\n                completeFieldName += \"@\".concat(key);\n            }\n        });\n    }\n    return completeFieldName;\n}, {\n    setStringify: function (s) {\n        var previous = stringify;\n        stringify = s;\n        return previous;\n    },\n});\nvar stringify = function defaultStringify(value) {\n    return JSON.stringify(value, stringifyReplacer);\n};\nfunction stringifyReplacer(_key, value) {\n    if (isNonNullObject(value) && !Array.isArray(value)) {\n        value = Object.keys(value).sort().reduce(function (copy, key) {\n            copy[key] = value[key];\n            return copy;\n        }, {});\n    }\n    return value;\n}\nexport function argumentsObjectFromField(field, variables) {\n    if (field.arguments && field.arguments.length) {\n        var argObj_1 = {};\n        field.arguments.forEach(function (_a) {\n            var name = _a.name, value = _a.value;\n            return valueToObjectRepresentation(argObj_1, name, value, variables);\n        });\n        return argObj_1;\n    }\n    return null;\n}\nexport function resultKeyNameFromField(field) {\n    return field.alias ? field.alias.value : field.name.value;\n}\nexport function getTypenameFromResult(result, selectionSet, fragmentMap) {\n    if (typeof result.__typename === 'string') {\n        return result.__typename;\n    }\n    for (var _i = 0, _a = selectionSet.selections; _i < _a.length; _i++) {\n        var selection = _a[_i];\n        if (isField(selection)) {\n            if (selection.name.value === '__typename') {\n                return result[resultKeyNameFromField(selection)];\n            }\n        }\n        else {\n            var typename = getTypenameFromResult(result, getFragmentFromSelection(selection, fragmentMap).selectionSet, fragmentMap);\n            if (typeof typename === 'string') {\n                return typename;\n            }\n        }\n    }\n}\nexport function isField(selection) {\n    return selection.kind === 'Field';\n}\nexport function isInlineFragment(selection) {\n    return selection.kind === 'InlineFragment';\n}\n//# sourceMappingURL=storeUtils.js.map","import { invariant, InvariantError } from '../globals';\nimport { valueToObjectRepresentation } from './storeUtils';\nexport function checkDocument(doc) {\n    __DEV__ ? invariant(doc && doc.kind === 'Document', \"Expecting a parsed GraphQL document. Perhaps you need to wrap the query string in a \\\"gql\\\" tag? http://docs.apollostack.com/apollo-client/core.html#gql\") : invariant(doc && doc.kind === 'Document', 44);\n    var operations = doc.definitions\n        .filter(function (d) { return d.kind !== 'FragmentDefinition'; })\n        .map(function (definition) {\n        if (definition.kind !== 'OperationDefinition') {\n            throw __DEV__ ? new InvariantError(\"Schema type definitions not allowed in queries. Found: \\\"\".concat(definition.kind, \"\\\"\")) : new InvariantError(45);\n        }\n        return definition;\n    });\n    __DEV__ ? invariant(operations.length <= 1, \"Ambiguous GraphQL document: contains \".concat(operations.length, \" operations\")) : invariant(operations.length <= 1, 46);\n    return doc;\n}\nexport function getOperationDefinition(doc) {\n    checkDocument(doc);\n    return doc.definitions.filter(function (definition) { return definition.kind === 'OperationDefinition'; })[0];\n}\nexport function getOperationName(doc) {\n    return (doc.definitions\n        .filter(function (definition) {\n        return definition.kind === 'OperationDefinition' && definition.name;\n    })\n        .map(function (x) { return x.name.value; })[0] || null);\n}\nexport function getFragmentDefinitions(doc) {\n    return doc.definitions.filter(function (definition) { return definition.kind === 'FragmentDefinition'; });\n}\nexport function getQueryDefinition(doc) {\n    var queryDef = getOperationDefinition(doc);\n    __DEV__ ? invariant(queryDef && queryDef.operation === 'query', 'Must contain a query definition.') : invariant(queryDef && queryDef.operation === 'query', 47);\n    return queryDef;\n}\nexport function getFragmentDefinition(doc) {\n    __DEV__ ? invariant(doc.kind === 'Document', \"Expecting a parsed GraphQL document. Perhaps you need to wrap the query string in a \\\"gql\\\" tag? http://docs.apollostack.com/apollo-client/core.html#gql\") : invariant(doc.kind === 'Document', 48);\n    __DEV__ ? invariant(doc.definitions.length <= 1, 'Fragment must have exactly one definition.') : invariant(doc.definitions.length <= 1, 49);\n    var fragmentDef = doc.definitions[0];\n    __DEV__ ? invariant(fragmentDef.kind === 'FragmentDefinition', 'Must be a fragment definition.') : invariant(fragmentDef.kind === 'FragmentDefinition', 50);\n    return fragmentDef;\n}\nexport function getMainDefinition(queryDoc) {\n    checkDocument(queryDoc);\n    var fragmentDefinition;\n    for (var _i = 0, _a = queryDoc.definitions; _i < _a.length; _i++) {\n        var definition = _a[_i];\n        if (definition.kind === 'OperationDefinition') {\n            var operation = definition.operation;\n            if (operation === 'query' ||\n                operation === 'mutation' ||\n                operation === 'subscription') {\n                return definition;\n            }\n        }\n        if (definition.kind === 'FragmentDefinition' && !fragmentDefinition) {\n            fragmentDefinition = definition;\n        }\n    }\n    if (fragmentDefinition) {\n        return fragmentDefinition;\n    }\n    throw __DEV__ ? new InvariantError('Expected a parsed GraphQL query with a query, mutation, subscription, or a fragment.') : new InvariantError(51);\n}\nexport function getDefaultValues(definition) {\n    var defaultValues = Object.create(null);\n    var defs = definition && definition.variableDefinitions;\n    if (defs && defs.length) {\n        defs.forEach(function (def) {\n            if (def.defaultValue) {\n                valueToObjectRepresentation(defaultValues, def.variable.name, def.defaultValue);\n            }\n        });\n    }\n    return defaultValues;\n}\n//# sourceMappingURL=getFromAST.js.map","export function filterInPlace(array, test, context) {\n    var target = 0;\n    array.forEach(function (elem, i) {\n        if (test.call(this, elem, i, array)) {\n            array[target++] = elem;\n        }\n    }, context);\n    array.length = target;\n    return array;\n}\n//# sourceMappingURL=filterInPlace.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport { invariant } from '../globals';\nimport { visit, } from 'graphql';\nimport { checkDocument, getOperationDefinition, getFragmentDefinition, getFragmentDefinitions, getMainDefinition, } from './getFromAST';\nimport { filterInPlace } from '../common/filterInPlace';\nimport { isField, isInlineFragment } from './storeUtils';\nimport { createFragmentMap, } from './fragments';\nvar TYPENAME_FIELD = {\n    kind: 'Field',\n    name: {\n        kind: 'Name',\n        value: '__typename',\n    },\n};\nfunction isEmpty(op, fragments) {\n    return op.selectionSet.selections.every(function (selection) {\n        return selection.kind === 'FragmentSpread' &&\n            isEmpty(fragments[selection.name.value], fragments);\n    });\n}\nfunction nullIfDocIsEmpty(doc) {\n    return isEmpty(getOperationDefinition(doc) || getFragmentDefinition(doc), createFragmentMap(getFragmentDefinitions(doc)))\n        ? null\n        : doc;\n}\nfunction getDirectiveMatcher(directives) {\n    return function directiveMatcher(directive) {\n        return directives.some(function (dir) {\n            return (dir.name && dir.name === directive.name.value) ||\n                (dir.test && dir.test(directive));\n        });\n    };\n}\nexport function removeDirectivesFromDocument(directives, doc) {\n    var variablesInUse = Object.create(null);\n    var variablesToRemove = [];\n    var fragmentSpreadsInUse = Object.create(null);\n    var fragmentSpreadsToRemove = [];\n    var modifiedDoc = nullIfDocIsEmpty(visit(doc, {\n        Variable: {\n            enter: function (node, _key, parent) {\n                if (parent.kind !== 'VariableDefinition') {\n                    variablesInUse[node.name.value] = true;\n                }\n            },\n        },\n        Field: {\n            enter: function (node) {\n                if (directives && node.directives) {\n                    var shouldRemoveField = directives.some(function (directive) { return directive.remove; });\n                    if (shouldRemoveField &&\n                        node.directives &&\n                        node.directives.some(getDirectiveMatcher(directives))) {\n                        if (node.arguments) {\n                            node.arguments.forEach(function (arg) {\n                                if (arg.value.kind === 'Variable') {\n                                    variablesToRemove.push({\n                                        name: arg.value.name.value,\n                                    });\n                                }\n                            });\n                        }\n                        if (node.selectionSet) {\n                            getAllFragmentSpreadsFromSelectionSet(node.selectionSet).forEach(function (frag) {\n                                fragmentSpreadsToRemove.push({\n                                    name: frag.name.value,\n                                });\n                            });\n                        }\n                        return null;\n                    }\n                }\n            },\n        },\n        FragmentSpread: {\n            enter: function (node) {\n                fragmentSpreadsInUse[node.name.value] = true;\n            },\n        },\n        Directive: {\n            enter: function (node) {\n                if (getDirectiveMatcher(directives)(node)) {\n                    return null;\n                }\n            },\n        },\n    }));\n    if (modifiedDoc &&\n        filterInPlace(variablesToRemove, function (v) { return !!v.name && !variablesInUse[v.name]; }).length) {\n        modifiedDoc = removeArgumentsFromDocument(variablesToRemove, modifiedDoc);\n    }\n    if (modifiedDoc &&\n        filterInPlace(fragmentSpreadsToRemove, function (fs) { return !!fs.name && !fragmentSpreadsInUse[fs.name]; })\n            .length) {\n        modifiedDoc = removeFragmentSpreadFromDocument(fragmentSpreadsToRemove, modifiedDoc);\n    }\n    return modifiedDoc;\n}\nexport var addTypenameToDocument = Object.assign(function (doc) {\n    return visit(doc, {\n        SelectionSet: {\n            enter: function (node, _key, parent) {\n                if (parent &&\n                    parent.kind === 'OperationDefinition') {\n                    return;\n                }\n                var selections = node.selections;\n                if (!selections) {\n                    return;\n                }\n                var skip = selections.some(function (selection) {\n                    return (isField(selection) &&\n                        (selection.name.value === '__typename' ||\n                            selection.name.value.lastIndexOf('__', 0) === 0));\n                });\n                if (skip) {\n                    return;\n                }\n                var field = parent;\n                if (isField(field) &&\n                    field.directives &&\n                    field.directives.some(function (d) { return d.name.value === 'export'; })) {\n                    return;\n                }\n                return __assign(__assign({}, node), { selections: __spreadArray(__spreadArray([], selections, true), [TYPENAME_FIELD], false) });\n            },\n        },\n    });\n}, {\n    added: function (field) {\n        return field === TYPENAME_FIELD;\n    },\n});\nvar connectionRemoveConfig = {\n    test: function (directive) {\n        var willRemove = directive.name.value === 'connection';\n        if (willRemove) {\n            if (!directive.arguments ||\n                !directive.arguments.some(function (arg) { return arg.name.value === 'key'; })) {\n                __DEV__ && invariant.warn('Removing an @connection directive even though it does not have a key. ' +\n                    'You may want to use the key parameter to specify a store key.');\n            }\n        }\n        return willRemove;\n    },\n};\nexport function removeConnectionDirectiveFromDocument(doc) {\n    return removeDirectivesFromDocument([connectionRemoveConfig], checkDocument(doc));\n}\nfunction hasDirectivesInSelectionSet(directives, selectionSet, nestedCheck) {\n    if (nestedCheck === void 0) { nestedCheck = true; }\n    return (!!selectionSet &&\n        selectionSet.selections &&\n        selectionSet.selections.some(function (selection) {\n            return hasDirectivesInSelection(directives, selection, nestedCheck);\n        }));\n}\nfunction hasDirectivesInSelection(directives, selection, nestedCheck) {\n    if (nestedCheck === void 0) { nestedCheck = true; }\n    if (!isField(selection)) {\n        return true;\n    }\n    if (!selection.directives) {\n        return false;\n    }\n    return (selection.directives.some(getDirectiveMatcher(directives)) ||\n        (nestedCheck &&\n            hasDirectivesInSelectionSet(directives, selection.selectionSet, nestedCheck)));\n}\nfunction getArgumentMatcher(config) {\n    return function argumentMatcher(argument) {\n        return config.some(function (aConfig) {\n            return argument.value &&\n                argument.value.kind === 'Variable' &&\n                argument.value.name &&\n                (aConfig.name === argument.value.name.value ||\n                    (aConfig.test && aConfig.test(argument)));\n        });\n    };\n}\nexport function removeArgumentsFromDocument(config, doc) {\n    var argMatcher = getArgumentMatcher(config);\n    return nullIfDocIsEmpty(visit(doc, {\n        OperationDefinition: {\n            enter: function (node) {\n                return __assign(__assign({}, node), { variableDefinitions: node.variableDefinitions ? node.variableDefinitions.filter(function (varDef) {\n                        return !config.some(function (arg) { return arg.name === varDef.variable.name.value; });\n                    }) : [] });\n            },\n        },\n        Field: {\n            enter: function (node) {\n                var shouldRemoveField = config.some(function (argConfig) { return argConfig.remove; });\n                if (shouldRemoveField) {\n                    var argMatchCount_1 = 0;\n                    if (node.arguments) {\n                        node.arguments.forEach(function (arg) {\n                            if (argMatcher(arg)) {\n                                argMatchCount_1 += 1;\n                            }\n                        });\n                    }\n                    if (argMatchCount_1 === 1) {\n                        return null;\n                    }\n                }\n            },\n        },\n        Argument: {\n            enter: function (node) {\n                if (argMatcher(node)) {\n                    return null;\n                }\n            },\n        },\n    }));\n}\nexport function removeFragmentSpreadFromDocument(config, doc) {\n    function enter(node) {\n        if (config.some(function (def) { return def.name === node.name.value; })) {\n            return null;\n        }\n    }\n    return nullIfDocIsEmpty(visit(doc, {\n        FragmentSpread: { enter: enter },\n        FragmentDefinition: { enter: enter },\n    }));\n}\nfunction getAllFragmentSpreadsFromSelectionSet(selectionSet) {\n    var allFragments = [];\n    selectionSet.selections.forEach(function (selection) {\n        if ((isField(selection) || isInlineFragment(selection)) &&\n            selection.selectionSet) {\n            getAllFragmentSpreadsFromSelectionSet(selection.selectionSet).forEach(function (frag) { return allFragments.push(frag); });\n        }\n        else if (selection.kind === 'FragmentSpread') {\n            allFragments.push(selection);\n        }\n    });\n    return allFragments;\n}\nexport function buildQueryFromSelectionSet(document) {\n    var definition = getMainDefinition(document);\n    var definitionOperation = definition.operation;\n    if (definitionOperation === 'query') {\n        return document;\n    }\n    var modifiedDoc = visit(document, {\n        OperationDefinition: {\n            enter: function (node) {\n                return __assign(__assign({}, node), { operation: 'query' });\n            },\n        },\n    });\n    return modifiedDoc;\n}\nexport function removeClientSetsFromDocument(document) {\n    checkDocument(document);\n    var modifiedDoc = removeDirectivesFromDocument([\n        {\n            test: function (directive) { return directive.name.value === 'client'; },\n            remove: true,\n        },\n    ], document);\n    if (modifiedDoc) {\n        modifiedDoc = visit(modifiedDoc, {\n            FragmentDefinition: {\n                enter: function (node) {\n                    if (node.selectionSet) {\n                        var isTypenameOnly = node.selectionSet.selections.every(function (selection) {\n                            return isField(selection) && selection.name.value === '__typename';\n                        });\n                        if (isTypenameOnly) {\n                            return null;\n                        }\n                    }\n                },\n            },\n        });\n    }\n    return modifiedDoc;\n}\n//# sourceMappingURL=transform.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport { isNonNullObject } from \"./objects\";\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nexport function mergeDeep() {\n    var sources = [];\n    for (var _i = 0; _i < arguments.length; _i++) {\n        sources[_i] = arguments[_i];\n    }\n    return mergeDeepArray(sources);\n}\nexport function mergeDeepArray(sources) {\n    var target = sources[0] || {};\n    var count = sources.length;\n    if (count > 1) {\n        var merger = new DeepMerger();\n        for (var i = 1; i < count; ++i) {\n            target = merger.merge(target, sources[i]);\n        }\n    }\n    return target;\n}\nvar defaultReconciler = function (target, source, property) {\n    return this.merge(target[property], source[property]);\n};\nvar DeepMerger = (function () {\n    function DeepMerger(reconciler) {\n        if (reconciler === void 0) { reconciler = defaultReconciler; }\n        this.reconciler = reconciler;\n        this.isObject = isNonNullObject;\n        this.pastCopies = new Set();\n    }\n    DeepMerger.prototype.merge = function (target, source) {\n        var _this = this;\n        var context = [];\n        for (var _i = 2; _i < arguments.length; _i++) {\n            context[_i - 2] = arguments[_i];\n        }\n        if (isNonNullObject(source) && isNonNullObject(target)) {\n            Object.keys(source).forEach(function (sourceKey) {\n                if (hasOwnProperty.call(target, sourceKey)) {\n                    var targetValue = target[sourceKey];\n                    if (source[sourceKey] !== targetValue) {\n                        var result = _this.reconciler.apply(_this, __spreadArray([target, source, sourceKey], context, false));\n                        if (result !== targetValue) {\n                            target = _this.shallowCopyForMerge(target);\n                            target[sourceKey] = result;\n                        }\n                    }\n                }\n                else {\n                    target = _this.shallowCopyForMerge(target);\n                    target[sourceKey] = source[sourceKey];\n                }\n            });\n            return target;\n        }\n        return source;\n    };\n    DeepMerger.prototype.shallowCopyForMerge = function (value) {\n        if (isNonNullObject(value)) {\n            if (!this.pastCopies.has(value)) {\n                if (Array.isArray(value)) {\n                    value = value.slice(0);\n                }\n                else {\n                    value = __assign({ __proto__: Object.getPrototypeOf(value) }, value);\n                }\n                this.pastCopies.add(value);\n            }\n        }\n        return value;\n    };\n    return DeepMerger;\n}());\nexport { DeepMerger };\n//# sourceMappingURL=mergeDeep.js.map","var toString = Object.prototype.toString;\nexport function cloneDeep(value) {\n    return cloneDeepHelper(value);\n}\nfunction cloneDeepHelper(val, seen) {\n    switch (toString.call(val)) {\n        case \"[object Array]\": {\n            seen = seen || new Map;\n            if (seen.has(val))\n                return seen.get(val);\n            var copy_1 = val.slice(0);\n            seen.set(val, copy_1);\n            copy_1.forEach(function (child, i) {\n                copy_1[i] = cloneDeepHelper(child, seen);\n            });\n            return copy_1;\n        }\n        case \"[object Object]\": {\n            seen = seen || new Map;\n            if (seen.has(val))\n                return seen.get(val);\n            var copy_2 = Object.create(Object.getPrototypeOf(val));\n            seen.set(val, copy_2);\n            Object.keys(val).forEach(function (key) {\n                copy_2[key] = cloneDeepHelper(val[key], seen);\n            });\n            return copy_2;\n        }\n        default:\n            return val;\n    }\n}\n//# sourceMappingURL=cloneDeep.js.map","import '../globals';\nimport { isNonNullObject } from './objects';\nfunction deepFreeze(value) {\n    var workSet = new Set([value]);\n    workSet.forEach(function (obj) {\n        if (isNonNullObject(obj) && shallowFreeze(obj) === obj) {\n            Object.getOwnPropertyNames(obj).forEach(function (name) {\n                if (isNonNullObject(obj[name]))\n                    workSet.add(obj[name]);\n            });\n        }\n    });\n    return value;\n}\nfunction shallowFreeze(obj) {\n    if (__DEV__ && !Object.isFrozen(obj)) {\n        try {\n            Object.freeze(obj);\n        }\n        catch (e) {\n            if (e instanceof TypeError)\n                return null;\n            throw e;\n        }\n    }\n    return obj;\n}\nexport function maybeDeepFreeze(obj) {\n    if (__DEV__) {\n        deepFreeze(obj);\n    }\n    return obj;\n}\n//# sourceMappingURL=maybeDeepFreeze.js.map","export function iterateObserversSafely(observers, method, argument) {\n    var observersWithMethod = [];\n    observers.forEach(function (obs) { return obs[method] && observersWithMethod.push(obs); });\n    observersWithMethod.forEach(function (obs) { return obs[method](argument); });\n}\n//# sourceMappingURL=iteration.js.map","import { Observable } from \"./Observable\";\nexport function asyncMap(observable, mapFn, catchFn) {\n    return new Observable(function (observer) {\n        var next = observer.next, error = observer.error, complete = observer.complete;\n        var activeCallbackCount = 0;\n        var completed = false;\n        var promiseQueue = {\n            then: function (callback) {\n                return new Promise(function (resolve) { return resolve(callback()); });\n            },\n        };\n        function makeCallback(examiner, delegate) {\n            if (examiner) {\n                return function (arg) {\n                    ++activeCallbackCount;\n                    var both = function () { return examiner(arg); };\n                    promiseQueue = promiseQueue.then(both, both).then(function (result) {\n                        --activeCallbackCount;\n                        next && next.call(observer, result);\n                        if (completed) {\n                            handler.complete();\n                        }\n                    }, function (error) {\n                        --activeCallbackCount;\n                        throw error;\n                    }).catch(function (caught) {\n                        error && error.call(observer, caught);\n                    });\n                };\n            }\n            else {\n                return function (arg) { return delegate && delegate.call(observer, arg); };\n            }\n        }\n        var handler = {\n            next: makeCallback(mapFn, next),\n            error: makeCallback(catchFn, error),\n            complete: function () {\n                completed = true;\n                if (!activeCallbackCount) {\n                    complete && complete.call(observer);\n                }\n            },\n        };\n        var sub = observable.subscribe(handler);\n        return function () { return sub.unsubscribe(); };\n    });\n}\n//# sourceMappingURL=asyncMap.js.map","import { maybe } from \"../globals\";\nexport var canUseWeakMap = typeof WeakMap === 'function' &&\n    maybe(function () { return navigator.product; }) !== 'ReactNative';\nexport var canUseWeakSet = typeof WeakSet === 'function';\nexport var canUseSymbol = typeof Symbol === 'function' &&\n    typeof Symbol.for === 'function';\nexport var canUseDOM = typeof maybe(function () { return window.document.createElement; }) === \"function\";\nvar usingJSDOM = maybe(function () { return navigator.userAgent.indexOf(\"jsdom\") >= 0; }) || false;\nexport var canUseLayoutEffect = canUseDOM && !usingJSDOM;\n//# sourceMappingURL=canUse.js.map","import { Observable } from \"./Observable\";\nimport { canUseSymbol } from \"../common/canUse\";\nexport function fixObservableSubclass(subclass) {\n    function set(key) {\n        Object.defineProperty(subclass, key, { value: Observable });\n    }\n    if (canUseSymbol && Symbol.species) {\n        set(Symbol.species);\n    }\n    set(\"@@species\");\n    return subclass;\n}\n//# sourceMappingURL=subclassing.js.map","import { __extends } from \"tslib\";\nimport { Observable } from \"./Observable\";\nimport { iterateObserversSafely } from \"./iteration\";\nimport { fixObservableSubclass } from \"./subclassing\";\nfunction isPromiseLike(value) {\n    return value && typeof value.then === \"function\";\n}\nvar Concast = (function (_super) {\n    __extends(Concast, _super);\n    function Concast(sources) {\n        var _this = _super.call(this, function (observer) {\n            _this.addObserver(observer);\n            return function () { return _this.removeObserver(observer); };\n        }) || this;\n        _this.observers = new Set();\n        _this.addCount = 0;\n        _this.promise = new Promise(function (resolve, reject) {\n            _this.resolve = resolve;\n            _this.reject = reject;\n        });\n        _this.handlers = {\n            next: function (result) {\n                if (_this.sub !== null) {\n                    _this.latest = [\"next\", result];\n                    iterateObserversSafely(_this.observers, \"next\", result);\n                }\n            },\n            error: function (error) {\n                var sub = _this.sub;\n                if (sub !== null) {\n                    if (sub)\n                        setTimeout(function () { return sub.unsubscribe(); });\n                    _this.sub = null;\n                    _this.latest = [\"error\", error];\n                    _this.reject(error);\n                    iterateObserversSafely(_this.observers, \"error\", error);\n                }\n            },\n            complete: function () {\n                var sub = _this.sub;\n                if (sub !== null) {\n                    var value = _this.sources.shift();\n                    if (!value) {\n                        if (sub)\n                            setTimeout(function () { return sub.unsubscribe(); });\n                        _this.sub = null;\n                        if (_this.latest &&\n                            _this.latest[0] === \"next\") {\n                            _this.resolve(_this.latest[1]);\n                        }\n                        else {\n                            _this.resolve();\n                        }\n                        iterateObserversSafely(_this.observers, \"complete\");\n                    }\n                    else if (isPromiseLike(value)) {\n                        value.then(function (obs) { return _this.sub = obs.subscribe(_this.handlers); });\n                    }\n                    else {\n                        _this.sub = value.subscribe(_this.handlers);\n                    }\n                }\n            },\n        };\n        _this.cancel = function (reason) {\n            _this.reject(reason);\n            _this.sources = [];\n            _this.handlers.complete();\n        };\n        _this.promise.catch(function (_) { });\n        if (typeof sources === \"function\") {\n            sources = [new Observable(sources)];\n        }\n        if (isPromiseLike(sources)) {\n            sources.then(function (iterable) { return _this.start(iterable); }, _this.handlers.error);\n        }\n        else {\n            _this.start(sources);\n        }\n        return _this;\n    }\n    Concast.prototype.start = function (sources) {\n        if (this.sub !== void 0)\n            return;\n        this.sources = Array.from(sources);\n        this.handlers.complete();\n    };\n    Concast.prototype.deliverLastMessage = function (observer) {\n        if (this.latest) {\n            var nextOrError = this.latest[0];\n            var method = observer[nextOrError];\n            if (method) {\n                method.call(observer, this.latest[1]);\n            }\n            if (this.sub === null &&\n                nextOrError === \"next\" &&\n                observer.complete) {\n                observer.complete();\n            }\n        }\n    };\n    Concast.prototype.addObserver = function (observer) {\n        if (!this.observers.has(observer)) {\n            this.deliverLastMessage(observer);\n            this.observers.add(observer);\n            ++this.addCount;\n        }\n    };\n    Concast.prototype.removeObserver = function (observer, quietly) {\n        if (this.observers.delete(observer) &&\n            --this.addCount < 1 &&\n            !quietly) {\n            this.handlers.complete();\n        }\n    };\n    Concast.prototype.cleanup = function (callback) {\n        var _this = this;\n        var called = false;\n        var once = function () {\n            if (!called) {\n                called = true;\n                _this.observers.delete(observer);\n                callback();\n            }\n        };\n        var observer = {\n            next: once,\n            error: once,\n            complete: once,\n        };\n        var count = this.addCount;\n        this.addObserver(observer);\n        this.addCount = count;\n    };\n    return Concast;\n}(Observable));\nexport { Concast };\nfixObservableSubclass(Concast);\n//# sourceMappingURL=Concast.js.map","export function isNonEmptyArray(value) {\n    return Array.isArray(value) && value.length > 0;\n}\n//# sourceMappingURL=arrays.js.map","export function graphQLResultHasError(result) {\n    return (result.errors && result.errors.length > 0) || false;\n}\n//# sourceMappingURL=errorHandling.js.map","export function compact() {\n    var objects = [];\n    for (var _i = 0; _i < arguments.length; _i++) {\n        objects[_i] = arguments[_i];\n    }\n    var result = Object.create(null);\n    objects.forEach(function (obj) {\n        if (!obj)\n            return;\n        Object.keys(obj).forEach(function (key) {\n            var value = obj[key];\n            if (value !== void 0) {\n                result[key] = value;\n            }\n        });\n    });\n    return result;\n}\n//# sourceMappingURL=compact.js.map","var prefixCounts = new Map();\nexport function makeUniqueId(prefix) {\n    var count = prefixCounts.get(prefix) || 1;\n    prefixCounts.set(prefix, count + 1);\n    return \"\".concat(prefix, \":\").concat(count, \":\").concat(Math.random().toString(36).slice(2));\n}\n//# sourceMappingURL=makeUniqueId.js.map","import { makeUniqueId } from \"./makeUniqueId\";\nexport function stringifyForDisplay(value) {\n    var undefId = makeUniqueId(\"stringifyForDisplay\");\n    return JSON.stringify(value, function (key, value) {\n        return value === void 0 ? undefId : value;\n    }).split(JSON.stringify(undefId)).join(\"<undefined>\");\n}\n//# sourceMappingURL=stringifyForDisplay.js.map","import { __assign } from \"tslib\";\nimport { compact } from \"./compact\";\nexport function mergeOptions(defaults, options) {\n    return compact(defaults, options, options.variables && {\n        variables: __assign(__assign({}, (defaults && defaults.variables)), options.variables),\n    });\n}\n//# sourceMappingURL=mergeOptions.js.map","import { Observable } from '../../utilities';\nexport function fromError(errorValue) {\n    return new Observable(function (observer) {\n        observer.error(errorValue);\n    });\n}\n//# sourceMappingURL=fromError.js.map","import { invariant } from '../../utilities/globals';\nexport function toPromise(observable) {\n    var completed = false;\n    return new Promise(function (resolve, reject) {\n        observable.subscribe({\n            next: function (data) {\n                if (completed) {\n                    __DEV__ && invariant.warn(\"Promise Wrapper does not support multiple results from Observable\");\n                }\n                else {\n                    completed = true;\n                    resolve(data);\n                }\n            },\n            error: reject,\n        });\n    });\n}\n//# sourceMappingURL=toPromise.js.map","import { Observable } from '../../utilities';\nexport function fromPromise(promise) {\n    return new Observable(function (observer) {\n        promise\n            .then(function (value) {\n            observer.next(value);\n            observer.complete();\n        })\n            .catch(observer.error.bind(observer));\n    });\n}\n//# sourceMappingURL=fromPromise.js.map","export var throwServerError = function (response, result, message) {\n    var error = new Error(message);\n    error.name = 'ServerError';\n    error.response = response;\n    error.statusCode = response.status;\n    error.result = result;\n    throw error;\n};\n//# sourceMappingURL=throwServerError.js.map","import { InvariantError } from '../../utilities/globals';\nexport function validateOperation(operation) {\n    var OPERATION_FIELDS = [\n        'query',\n        'operationName',\n        'variables',\n        'extensions',\n        'context',\n    ];\n    for (var _i = 0, _a = Object.keys(operation); _i < _a.length; _i++) {\n        var key = _a[_i];\n        if (OPERATION_FIELDS.indexOf(key) < 0) {\n            throw __DEV__ ? new InvariantError(\"illegal argument: \".concat(key)) : new InvariantError(24);\n        }\n    }\n    return operation;\n}\n//# sourceMappingURL=validateOperation.js.map","import { __assign } from \"tslib\";\nexport function createOperation(starting, operation) {\n    var context = __assign({}, starting);\n    var setContext = function (next) {\n        if (typeof next === 'function') {\n            context = __assign(__assign({}, context), next(context));\n        }\n        else {\n            context = __assign(__assign({}, context), next);\n        }\n    };\n    var getContext = function () { return (__assign({}, context)); };\n    Object.defineProperty(operation, 'setContext', {\n        enumerable: false,\n        value: setContext,\n    });\n    Object.defineProperty(operation, 'getContext', {\n        enumerable: false,\n        value: getContext,\n    });\n    return operation;\n}\n//# sourceMappingURL=createOperation.js.map","import { getOperationName } from '../../utilities';\nexport function transformOperation(operation) {\n    var transformedOperation = {\n        variables: operation.variables || {},\n        extensions: operation.extensions || {},\n        operationName: operation.operationName,\n        query: operation.query,\n    };\n    if (!transformedOperation.operationName) {\n        transformedOperation.operationName =\n            typeof transformedOperation.query !== 'string'\n                ? getOperationName(transformedOperation.query) || undefined\n                : '';\n    }\n    return transformedOperation;\n}\n//# sourceMappingURL=transformOperation.js.map","import { __extends } from \"tslib\";\nimport { InvariantError, invariant } from '../../utilities/globals';\nimport { Observable } from '../../utilities';\nimport { validateOperation, createOperation, transformOperation, } from '../utils';\nfunction passthrough(op, forward) {\n    return (forward ? forward(op) : Observable.of());\n}\nfunction toLink(handler) {\n    return typeof handler === 'function' ? new ApolloLink(handler) : handler;\n}\nfunction isTerminating(link) {\n    return link.request.length <= 1;\n}\nvar LinkError = (function (_super) {\n    __extends(LinkError, _super);\n    function LinkError(message, link) {\n        var _this = _super.call(this, message) || this;\n        _this.link = link;\n        return _this;\n    }\n    return LinkError;\n}(Error));\nvar ApolloLink = (function () {\n    function ApolloLink(request) {\n        if (request)\n            this.request = request;\n    }\n    ApolloLink.empty = function () {\n        return new ApolloLink(function () { return Observable.of(); });\n    };\n    ApolloLink.from = function (links) {\n        if (links.length === 0)\n            return ApolloLink.empty();\n        return links.map(toLink).reduce(function (x, y) { return x.concat(y); });\n    };\n    ApolloLink.split = function (test, left, right) {\n        var leftLink = toLink(left);\n        var rightLink = toLink(right || new ApolloLink(passthrough));\n        if (isTerminating(leftLink) && isTerminating(rightLink)) {\n            return new ApolloLink(function (operation) {\n                return test(operation)\n                    ? leftLink.request(operation) || Observable.of()\n                    : rightLink.request(operation) || Observable.of();\n            });\n        }\n        else {\n            return new ApolloLink(function (operation, forward) {\n                return test(operation)\n                    ? leftLink.request(operation, forward) || Observable.of()\n                    : rightLink.request(operation, forward) || Observable.of();\n            });\n        }\n    };\n    ApolloLink.execute = function (link, operation) {\n        return (link.request(createOperation(operation.context, transformOperation(validateOperation(operation)))) || Observable.of());\n    };\n    ApolloLink.concat = function (first, second) {\n        var firstLink = toLink(first);\n        if (isTerminating(firstLink)) {\n            __DEV__ && invariant.warn(new LinkError(\"You are calling concat on a terminating link, which will have no effect\", firstLink));\n            return firstLink;\n        }\n        var nextLink = toLink(second);\n        if (isTerminating(nextLink)) {\n            return new ApolloLink(function (operation) {\n                return firstLink.request(operation, function (op) { return nextLink.request(op) || Observable.of(); }) || Observable.of();\n            });\n        }\n        else {\n            return new ApolloLink(function (operation, forward) {\n                return (firstLink.request(operation, function (op) {\n                    return nextLink.request(op, forward) || Observable.of();\n                }) || Observable.of());\n            });\n        }\n    };\n    ApolloLink.prototype.split = function (test, left, right) {\n        return this.concat(ApolloLink.split(test, left, right || new ApolloLink(passthrough)));\n    };\n    ApolloLink.prototype.concat = function (next) {\n        return ApolloLink.concat(this, next);\n    };\n    ApolloLink.prototype.request = function (operation, forward) {\n        throw __DEV__ ? new InvariantError('request is not implemented') : new InvariantError(19);\n    };\n    ApolloLink.prototype.onError = function (error, observer) {\n        if (observer && observer.error) {\n            observer.error(error);\n            return false;\n        }\n        throw error;\n    };\n    ApolloLink.prototype.setOnError = function (fn) {\n        this.onError = fn;\n        return this;\n    };\n    return ApolloLink;\n}());\nexport { ApolloLink };\n//# sourceMappingURL=ApolloLink.js.map","import { ApolloLink } from './ApolloLink';\nexport var empty = ApolloLink.empty;\n//# sourceMappingURL=empty.js.map","import { ApolloLink } from './ApolloLink';\nexport var from = ApolloLink.from;\n//# sourceMappingURL=from.js.map","import { ApolloLink } from './ApolloLink';\nexport var split = ApolloLink.split;\n//# sourceMappingURL=split.js.map","import { ApolloLink } from './ApolloLink';\nexport var concat = ApolloLink.concat;\n//# sourceMappingURL=concat.js.map","import { ApolloLink } from './ApolloLink';\nexport var execute = ApolloLink.execute;\n//# sourceMappingURL=execute.js.map","export var version = '3.6.9';\n//# sourceMappingURL=version.js.map","import { throwServerError } from '../utils';\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nexport function parseAndCheckHttpResponse(operations) {\n    return function (response) { return response\n        .text()\n        .then(function (bodyText) {\n        try {\n            return JSON.parse(bodyText);\n        }\n        catch (err) {\n            var parseError = err;\n            parseError.name = 'ServerParseError';\n            parseError.response = response;\n            parseError.statusCode = response.status;\n            parseError.bodyText = bodyText;\n            throw parseError;\n        }\n    })\n        .then(function (result) {\n        if (response.status >= 300) {\n            throwServerError(response, result, \"Response not successful: Received status code \".concat(response.status));\n        }\n        if (!Array.isArray(result) &&\n            !hasOwnProperty.call(result, 'data') &&\n            !hasOwnProperty.call(result, 'errors')) {\n            throwServerError(response, result, \"Server response was missing for query '\".concat(Array.isArray(operations)\n                ? operations.map(function (op) { return op.operationName; })\n                : operations.operationName, \"'.\"));\n        }\n        return result;\n    }); };\n}\n//# sourceMappingURL=parseAndCheckHttpResponse.js.map","import { InvariantError } from '../../utilities/globals';\nexport var serializeFetchParameter = function (p, label) {\n    var serialized;\n    try {\n        serialized = JSON.stringify(p);\n    }\n    catch (e) {\n        var parseError = __DEV__ ? new InvariantError(\"Network request failed. \".concat(label, \" is not serializable: \").concat(e.message)) : new InvariantError(21);\n        parseError.parseError = e;\n        throw parseError;\n    }\n    return serialized;\n};\n//# sourceMappingURL=serializeFetchParameter.js.map","import { __assign, __spreadArray } from \"tslib\";\nimport { print } from 'graphql';\n;\nvar defaultHttpOptions = {\n    includeQuery: true,\n    includeExtensions: false,\n};\nvar defaultHeaders = {\n    accept: '*/*',\n    'content-type': 'application/json',\n};\nvar defaultOptions = {\n    method: 'POST',\n};\nexport var fallbackHttpConfig = {\n    http: defaultHttpOptions,\n    headers: defaultHeaders,\n    options: defaultOptions,\n};\nexport var defaultPrinter = function (ast, printer) { return printer(ast); };\nexport function selectHttpOptionsAndBody(operation, fallbackConfig) {\n    var configs = [];\n    for (var _i = 2; _i < arguments.length; _i++) {\n        configs[_i - 2] = arguments[_i];\n    }\n    configs.unshift(fallbackConfig);\n    return selectHttpOptionsAndBodyInternal.apply(void 0, __spreadArray([operation,\n        defaultPrinter], configs, false));\n}\nexport function selectHttpOptionsAndBodyInternal(operation, printer) {\n    var configs = [];\n    for (var _i = 2; _i < arguments.length; _i++) {\n        configs[_i - 2] = arguments[_i];\n    }\n    var options = {};\n    var http = {};\n    configs.forEach(function (config) {\n        options = __assign(__assign(__assign({}, options), config.options), { headers: __assign(__assign({}, options.headers), headersToLowerCase(config.headers)) });\n        if (config.credentials) {\n            options.credentials = config.credentials;\n        }\n        http = __assign(__assign({}, http), config.http);\n    });\n    var operationName = operation.operationName, extensions = operation.extensions, variables = operation.variables, query = operation.query;\n    var body = { operationName: operationName, variables: variables };\n    if (http.includeExtensions)\n        body.extensions = extensions;\n    if (http.includeQuery)\n        body.query = printer(query, print);\n    return {\n        options: options,\n        body: body,\n    };\n}\n;\nfunction headersToLowerCase(headers) {\n    if (headers) {\n        var normalized_1 = Object.create(null);\n        Object.keys(Object(headers)).forEach(function (name) {\n            normalized_1[name.toLowerCase()] = headers[name];\n        });\n        return normalized_1;\n    }\n    return headers;\n}\n//# sourceMappingURL=selectHttpOptionsAndBody.js.map","import { InvariantError } from '../../utilities/globals';\nexport var checkFetcher = function (fetcher) {\n    if (!fetcher && typeof fetch === 'undefined') {\n        throw __DEV__ ? new InvariantError(\"\\n\\\"fetch\\\" has not been found globally and no fetcher has been configured. To fix this, install a fetch package (like https://www.npmjs.com/package/cross-fetch), instantiate the fetcher, and pass it into your HttpLink constructor. For example:\\n\\nimport fetch from 'cross-fetch';\\nimport { ApolloClient, HttpLink } from '@apollo/client';\\nconst client = new ApolloClient({\\n  link: new HttpLink({ uri: '/graphql', fetch })\\n});\\n    \") : new InvariantError(20);\n    }\n};\n//# sourceMappingURL=checkFetcher.js.map","export var createSignalIfSupported = function () {\n    if (typeof AbortController === 'undefined')\n        return { controller: false, signal: false };\n    var controller = new AbortController();\n    var signal = controller.signal;\n    return { controller: controller, signal: signal };\n};\n//# sourceMappingURL=createSignalIfSupported.js.map","export var selectURI = function (operation, fallbackURI) {\n    var context = operation.getContext();\n    var contextURI = context.uri;\n    if (contextURI) {\n        return contextURI;\n    }\n    else if (typeof fallbackURI === 'function') {\n        return fallbackURI(operation);\n    }\n    else {\n        return fallbackURI || '/graphql';\n    }\n};\n//# sourceMappingURL=selectURI.js.map","import { serializeFetchParameter } from './serializeFetchParameter';\nexport function rewriteURIForGET(chosenURI, body) {\n    var queryParams = [];\n    var addQueryParam = function (key, value) {\n        queryParams.push(\"\".concat(key, \"=\").concat(encodeURIComponent(value)));\n    };\n    if ('query' in body) {\n        addQueryParam('query', body.query);\n    }\n    if (body.operationName) {\n        addQueryParam('operationName', body.operationName);\n    }\n    if (body.variables) {\n        var serializedVariables = void 0;\n        try {\n            serializedVariables = serializeFetchParameter(body.variables, 'Variables map');\n        }\n        catch (parseError) {\n            return { parseError: parseError };\n        }\n        addQueryParam('variables', serializedVariables);\n    }\n    if (body.extensions) {\n        var serializedExtensions = void 0;\n        try {\n            serializedExtensions = serializeFetchParameter(body.extensions, 'Extensions map');\n        }\n        catch (parseError) {\n            return { parseError: parseError };\n        }\n        addQueryParam('extensions', serializedExtensions);\n    }\n    var fragment = '', preFragment = chosenURI;\n    var fragmentStart = chosenURI.indexOf('#');\n    if (fragmentStart !== -1) {\n        fragment = chosenURI.substr(fragmentStart);\n        preFragment = chosenURI.substr(0, fragmentStart);\n    }\n    var queryParamsPrefix = preFragment.indexOf('?') === -1 ? '?' : '&';\n    var newURI = preFragment + queryParamsPrefix + queryParams.join('&') + fragment;\n    return { newURI: newURI };\n}\n//# sourceMappingURL=rewriteURIForGET.js.map","import { __assign, __rest } from \"tslib\";\nimport '../../utilities/globals';\nimport { visit } from 'graphql';\nimport { ApolloLink } from '../core';\nimport { Observable } from '../../utilities';\nimport { serializeFetchParameter } from './serializeFetchParameter';\nimport { selectURI } from './selectURI';\nimport { parseAndCheckHttpResponse } from './parseAndCheckHttpResponse';\nimport { checkFetcher } from './checkFetcher';\nimport { selectHttpOptionsAndBodyInternal, defaultPrinter, fallbackHttpConfig } from './selectHttpOptionsAndBody';\nimport { createSignalIfSupported } from './createSignalIfSupported';\nimport { rewriteURIForGET } from './rewriteURIForGET';\nimport { fromError } from '../utils';\nimport { maybe } from '../../utilities';\nvar backupFetch = maybe(function () { return fetch; });\nexport var createHttpLink = function (linkOptions) {\n    if (linkOptions === void 0) { linkOptions = {}; }\n    var _a = linkOptions.uri, uri = _a === void 0 ? '/graphql' : _a, preferredFetch = linkOptions.fetch, _b = linkOptions.print, print = _b === void 0 ? defaultPrinter : _b, includeExtensions = linkOptions.includeExtensions, useGETForQueries = linkOptions.useGETForQueries, _c = linkOptions.includeUnusedVariables, includeUnusedVariables = _c === void 0 ? false : _c, requestOptions = __rest(linkOptions, [\"uri\", \"fetch\", \"print\", \"includeExtensions\", \"useGETForQueries\", \"includeUnusedVariables\"]);\n    if (__DEV__) {\n        checkFetcher(preferredFetch || backupFetch);\n    }\n    var linkConfig = {\n        http: { includeExtensions: includeExtensions },\n        options: requestOptions.fetchOptions,\n        credentials: requestOptions.credentials,\n        headers: requestOptions.headers,\n    };\n    return new ApolloLink(function (operation) {\n        var chosenURI = selectURI(operation, uri);\n        var context = operation.getContext();\n        var clientAwarenessHeaders = {};\n        if (context.clientAwareness) {\n            var _a = context.clientAwareness, name_1 = _a.name, version = _a.version;\n            if (name_1) {\n                clientAwarenessHeaders['apollographql-client-name'] = name_1;\n            }\n            if (version) {\n                clientAwarenessHeaders['apollographql-client-version'] = version;\n            }\n        }\n        var contextHeaders = __assign(__assign({}, clientAwarenessHeaders), context.headers);\n        var contextConfig = {\n            http: context.http,\n            options: context.fetchOptions,\n            credentials: context.credentials,\n            headers: contextHeaders,\n        };\n        var _b = selectHttpOptionsAndBodyInternal(operation, print, fallbackHttpConfig, linkConfig, contextConfig), options = _b.options, body = _b.body;\n        if (body.variables && !includeUnusedVariables) {\n            var unusedNames_1 = new Set(Object.keys(body.variables));\n            visit(operation.query, {\n                Variable: function (node, _key, parent) {\n                    if (parent && parent.kind !== 'VariableDefinition') {\n                        unusedNames_1.delete(node.name.value);\n                    }\n                },\n            });\n            if (unusedNames_1.size) {\n                body.variables = __assign({}, body.variables);\n                unusedNames_1.forEach(function (name) {\n                    delete body.variables[name];\n                });\n            }\n        }\n        var controller;\n        if (!options.signal) {\n            var _c = createSignalIfSupported(), _controller = _c.controller, signal = _c.signal;\n            controller = _controller;\n            if (controller)\n                options.signal = signal;\n        }\n        var definitionIsMutation = function (d) {\n            return d.kind === 'OperationDefinition' && d.operation === 'mutation';\n        };\n        if (useGETForQueries &&\n            !operation.query.definitions.some(definitionIsMutation)) {\n            options.method = 'GET';\n        }\n        if (options.method === 'GET') {\n            var _d = rewriteURIForGET(chosenURI, body), newURI = _d.newURI, parseError = _d.parseError;\n            if (parseError) {\n                return fromError(parseError);\n            }\n            chosenURI = newURI;\n        }\n        else {\n            try {\n                options.body = serializeFetchParameter(body, 'Payload');\n            }\n            catch (parseError) {\n                return fromError(parseError);\n            }\n        }\n        return new Observable(function (observer) {\n            var currentFetch = preferredFetch || maybe(function () { return fetch; }) || backupFetch;\n            currentFetch(chosenURI, options)\n                .then(function (response) {\n                operation.setContext({ response: response });\n                return response;\n            })\n                .then(parseAndCheckHttpResponse(operation))\n                .then(function (result) {\n                observer.next(result);\n                observer.complete();\n                return result;\n            })\n                .catch(function (err) {\n                if (err.name === 'AbortError')\n                    return;\n                if (err.result && err.result.errors && err.result.data) {\n                    observer.next(err.result);\n                }\n                observer.error(err);\n            });\n            return function () {\n                if (controller)\n                    controller.abort();\n            };\n        });\n    });\n};\n//# sourceMappingURL=createHttpLink.js.map","import { __extends } from \"tslib\";\nimport { ApolloLink } from '../core';\nimport { createHttpLink } from './createHttpLink';\nvar HttpLink = (function (_super) {\n    __extends(HttpLink, _super);\n    function HttpLink(options) {\n        if (options === void 0) { options = {}; }\n        var _this = _super.call(this, createHttpLink(options).request) || this;\n        _this.options = options;\n        return _this;\n    }\n    return HttpLink;\n}(ApolloLink));\nexport { HttpLink };\n//# sourceMappingURL=HttpLink.js.map","import { __assign, __rest } from \"tslib\";\nimport { wrap } from 'optimism';\nimport { getFragmentQueryDocument, } from '../../utilities';\nvar ApolloCache = (function () {\n    function ApolloCache() {\n        this.getFragmentDoc = wrap(getFragmentQueryDocument);\n    }\n    ApolloCache.prototype.batch = function (options) {\n        var _this = this;\n        var optimisticId = typeof options.optimistic === \"string\" ? options.optimistic :\n            options.optimistic === false ? null : void 0;\n        var updateResult;\n        this.performTransaction(function () { return updateResult = options.update(_this); }, optimisticId);\n        return updateResult;\n    };\n    ApolloCache.prototype.recordOptimisticTransaction = function (transaction, optimisticId) {\n        this.performTransaction(transaction, optimisticId);\n    };\n    ApolloCache.prototype.transformDocument = function (document) {\n        return document;\n    };\n    ApolloCache.prototype.identify = function (object) {\n        return;\n    };\n    ApolloCache.prototype.gc = function () {\n        return [];\n    };\n    ApolloCache.prototype.modify = function (options) {\n        return false;\n    };\n    ApolloCache.prototype.transformForLink = function (document) {\n        return document;\n    };\n    ApolloCache.prototype.readQuery = function (options, optimistic) {\n        if (optimistic === void 0) { optimistic = !!options.optimistic; }\n        return this.read(__assign(__assign({}, options), { rootId: options.id || 'ROOT_QUERY', optimistic: optimistic }));\n    };\n    ApolloCache.prototype.readFragment = function (options, optimistic) {\n        if (optimistic === void 0) { optimistic = !!options.optimistic; }\n        return this.read(__assign(__assign({}, options), { query: this.getFragmentDoc(options.fragment, options.fragmentName), rootId: options.id, optimistic: optimistic }));\n    };\n    ApolloCache.prototype.writeQuery = function (_a) {\n        var id = _a.id, data = _a.data, options = __rest(_a, [\"id\", \"data\"]);\n        return this.write(Object.assign(options, {\n            dataId: id || 'ROOT_QUERY',\n            result: data,\n        }));\n    };\n    ApolloCache.prototype.writeFragment = function (_a) {\n        var id = _a.id, data = _a.data, fragment = _a.fragment, fragmentName = _a.fragmentName, options = __rest(_a, [\"id\", \"data\", \"fragment\", \"fragmentName\"]);\n        return this.write(Object.assign(options, {\n            query: this.getFragmentDoc(fragment, fragmentName),\n            dataId: id,\n            result: data,\n        }));\n    };\n    ApolloCache.prototype.updateQuery = function (options, update) {\n        return this.batch({\n            update: function (cache) {\n                var value = cache.readQuery(options);\n                var data = update(value);\n                if (data === void 0 || data === null)\n                    return value;\n                cache.writeQuery(__assign(__assign({}, options), { data: data }));\n                return data;\n            },\n        });\n    };\n    ApolloCache.prototype.updateFragment = function (options, update) {\n        return this.batch({\n            update: function (cache) {\n                var value = cache.readFragment(options);\n                var data = update(value);\n                if (data === void 0 || data === null)\n                    return value;\n                cache.writeFragment(__assign(__assign({}, options), { data: data }));\n                return data;\n            },\n        });\n    };\n    return ApolloCache;\n}());\nexport { ApolloCache };\n//# sourceMappingURL=cache.js.map","export var Cache;\n(function (Cache) {\n})(Cache || (Cache = {}));\n//# sourceMappingURL=Cache.js.map","var MissingFieldError = (function () {\n    function MissingFieldError(message, path, query, variables) {\n        this.message = message;\n        this.path = path;\n        this.query = query;\n        this.variables = variables;\n    }\n    return MissingFieldError;\n}());\nexport { MissingFieldError };\n//# sourceMappingURL=common.js.map","import { isReference, isField, DeepMerger, resultKeyNameFromField, shouldInclude, isNonNullObject, compact, } from '../../utilities';\nexport var hasOwn = Object.prototype.hasOwnProperty;\nexport function defaultDataIdFromObject(_a, context) {\n    var __typename = _a.__typename, id = _a.id, _id = _a._id;\n    if (typeof __typename === \"string\") {\n        if (context) {\n            context.keyObject =\n                id !== void 0 ? { id: id } :\n                    _id !== void 0 ? { _id: _id } :\n                        void 0;\n        }\n        if (id === void 0)\n            id = _id;\n        if (id !== void 0) {\n            return \"\".concat(__typename, \":\").concat((typeof id === \"number\" ||\n                typeof id === \"string\") ? id : JSON.stringify(id));\n        }\n    }\n}\nvar defaultConfig = {\n    dataIdFromObject: defaultDataIdFromObject,\n    addTypename: true,\n    resultCaching: true,\n    canonizeResults: false,\n};\nexport function normalizeConfig(config) {\n    return compact(defaultConfig, config);\n}\nexport function shouldCanonizeResults(config) {\n    var value = config.canonizeResults;\n    return value === void 0 ? defaultConfig.canonizeResults : value;\n}\nexport function getTypenameFromStoreObject(store, objectOrReference) {\n    return isReference(objectOrReference)\n        ? store.get(objectOrReference.__ref, \"__typename\")\n        : objectOrReference && objectOrReference.__typename;\n}\nexport var TypeOrFieldNameRegExp = /^[_a-z][_0-9a-z]*/i;\nexport function fieldNameFromStoreName(storeFieldName) {\n    var match = storeFieldName.match(TypeOrFieldNameRegExp);\n    return match ? match[0] : storeFieldName;\n}\nexport function selectionSetMatchesResult(selectionSet, result, variables) {\n    if (isNonNullObject(result)) {\n        return isArray(result)\n            ? result.every(function (item) { return selectionSetMatchesResult(selectionSet, item, variables); })\n            : selectionSet.selections.every(function (field) {\n                if (isField(field) && shouldInclude(field, variables)) {\n                    var key = resultKeyNameFromField(field);\n                    return hasOwn.call(result, key) &&\n                        (!field.selectionSet ||\n                            selectionSetMatchesResult(field.selectionSet, result[key], variables));\n                }\n                return true;\n            });\n    }\n    return false;\n}\nexport function storeValueIsStoreObject(value) {\n    return isNonNullObject(value) &&\n        !isReference(value) &&\n        !isArray(value);\n}\nexport function makeProcessedFieldsMerger() {\n    return new DeepMerger;\n}\nexport var isArray = function (a) { return Array.isArray(a); };\n//# sourceMappingURL=helpers.js.map","import { __assign, __extends, __rest } from \"tslib\";\nimport { invariant } from '../../utilities/globals';\nimport { dep } from 'optimism';\nimport { equal } from '@wry/equality';\nimport { Trie } from '@wry/trie';\nimport { isReference, makeReference, DeepMerger, maybeDeepFreeze, canUseWeakMap, isNonNullObject, } from '../../utilities';\nimport { hasOwn, fieldNameFromStoreName } from './helpers';\nvar DELETE = Object.create(null);\nvar delModifier = function () { return DELETE; };\nvar INVALIDATE = Object.create(null);\nvar EntityStore = (function () {\n    function EntityStore(policies, group) {\n        var _this = this;\n        this.policies = policies;\n        this.group = group;\n        this.data = Object.create(null);\n        this.rootIds = Object.create(null);\n        this.refs = Object.create(null);\n        this.getFieldValue = function (objectOrReference, storeFieldName) { return maybeDeepFreeze(isReference(objectOrReference)\n            ? _this.get(objectOrReference.__ref, storeFieldName)\n            : objectOrReference && objectOrReference[storeFieldName]); };\n        this.canRead = function (objOrRef) {\n            return isReference(objOrRef)\n                ? _this.has(objOrRef.__ref)\n                : typeof objOrRef === \"object\";\n        };\n        this.toReference = function (objOrIdOrRef, mergeIntoStore) {\n            if (typeof objOrIdOrRef === \"string\") {\n                return makeReference(objOrIdOrRef);\n            }\n            if (isReference(objOrIdOrRef)) {\n                return objOrIdOrRef;\n            }\n            var id = _this.policies.identify(objOrIdOrRef)[0];\n            if (id) {\n                var ref = makeReference(id);\n                if (mergeIntoStore) {\n                    _this.merge(id, objOrIdOrRef);\n                }\n                return ref;\n            }\n        };\n    }\n    EntityStore.prototype.toObject = function () {\n        return __assign({}, this.data);\n    };\n    EntityStore.prototype.has = function (dataId) {\n        return this.lookup(dataId, true) !== void 0;\n    };\n    EntityStore.prototype.get = function (dataId, fieldName) {\n        this.group.depend(dataId, fieldName);\n        if (hasOwn.call(this.data, dataId)) {\n            var storeObject = this.data[dataId];\n            if (storeObject && hasOwn.call(storeObject, fieldName)) {\n                return storeObject[fieldName];\n            }\n        }\n        if (fieldName === \"__typename\" &&\n            hasOwn.call(this.policies.rootTypenamesById, dataId)) {\n            return this.policies.rootTypenamesById[dataId];\n        }\n        if (this instanceof Layer) {\n            return this.parent.get(dataId, fieldName);\n        }\n    };\n    EntityStore.prototype.lookup = function (dataId, dependOnExistence) {\n        if (dependOnExistence)\n            this.group.depend(dataId, \"__exists\");\n        if (hasOwn.call(this.data, dataId)) {\n            return this.data[dataId];\n        }\n        if (this instanceof Layer) {\n            return this.parent.lookup(dataId, dependOnExistence);\n        }\n        if (this.policies.rootTypenamesById[dataId]) {\n            return Object.create(null);\n        }\n    };\n    EntityStore.prototype.merge = function (older, newer) {\n        var _this = this;\n        var dataId;\n        if (isReference(older))\n            older = older.__ref;\n        if (isReference(newer))\n            newer = newer.__ref;\n        var existing = typeof older === \"string\"\n            ? this.lookup(dataId = older)\n            : older;\n        var incoming = typeof newer === \"string\"\n            ? this.lookup(dataId = newer)\n            : newer;\n        if (!incoming)\n            return;\n        __DEV__ ? invariant(typeof dataId === \"string\", \"store.merge expects a string ID\") : invariant(typeof dataId === \"string\", 1);\n        var merged = new DeepMerger(storeObjectReconciler).merge(existing, incoming);\n        this.data[dataId] = merged;\n        if (merged !== existing) {\n            delete this.refs[dataId];\n            if (this.group.caching) {\n                var fieldsToDirty_1 = Object.create(null);\n                if (!existing)\n                    fieldsToDirty_1.__exists = 1;\n                Object.keys(incoming).forEach(function (storeFieldName) {\n                    if (!existing || existing[storeFieldName] !== merged[storeFieldName]) {\n                        fieldsToDirty_1[storeFieldName] = 1;\n                        var fieldName = fieldNameFromStoreName(storeFieldName);\n                        if (fieldName !== storeFieldName &&\n                            !_this.policies.hasKeyArgs(merged.__typename, fieldName)) {\n                            fieldsToDirty_1[fieldName] = 1;\n                        }\n                        if (merged[storeFieldName] === void 0 && !(_this instanceof Layer)) {\n                            delete merged[storeFieldName];\n                        }\n                    }\n                });\n                if (fieldsToDirty_1.__typename &&\n                    !(existing && existing.__typename) &&\n                    this.policies.rootTypenamesById[dataId] === merged.__typename) {\n                    delete fieldsToDirty_1.__typename;\n                }\n                Object.keys(fieldsToDirty_1).forEach(function (fieldName) { return _this.group.dirty(dataId, fieldName); });\n            }\n        }\n    };\n    EntityStore.prototype.modify = function (dataId, fields) {\n        var _this = this;\n        var storeObject = this.lookup(dataId);\n        if (storeObject) {\n            var changedFields_1 = Object.create(null);\n            var needToMerge_1 = false;\n            var allDeleted_1 = true;\n            var sharedDetails_1 = {\n                DELETE: DELETE,\n                INVALIDATE: INVALIDATE,\n                isReference: isReference,\n                toReference: this.toReference,\n                canRead: this.canRead,\n                readField: function (fieldNameOrOptions, from) { return _this.policies.readField(typeof fieldNameOrOptions === \"string\" ? {\n                    fieldName: fieldNameOrOptions,\n                    from: from || makeReference(dataId),\n                } : fieldNameOrOptions, { store: _this }); },\n            };\n            Object.keys(storeObject).forEach(function (storeFieldName) {\n                var fieldName = fieldNameFromStoreName(storeFieldName);\n                var fieldValue = storeObject[storeFieldName];\n                if (fieldValue === void 0)\n                    return;\n                var modify = typeof fields === \"function\"\n                    ? fields\n                    : fields[storeFieldName] || fields[fieldName];\n                if (modify) {\n                    var newValue = modify === delModifier ? DELETE :\n                        modify(maybeDeepFreeze(fieldValue), __assign(__assign({}, sharedDetails_1), { fieldName: fieldName, storeFieldName: storeFieldName, storage: _this.getStorage(dataId, storeFieldName) }));\n                    if (newValue === INVALIDATE) {\n                        _this.group.dirty(dataId, storeFieldName);\n                    }\n                    else {\n                        if (newValue === DELETE)\n                            newValue = void 0;\n                        if (newValue !== fieldValue) {\n                            changedFields_1[storeFieldName] = newValue;\n                            needToMerge_1 = true;\n                            fieldValue = newValue;\n                        }\n                    }\n                }\n                if (fieldValue !== void 0) {\n                    allDeleted_1 = false;\n                }\n            });\n            if (needToMerge_1) {\n                this.merge(dataId, changedFields_1);\n                if (allDeleted_1) {\n                    if (this instanceof Layer) {\n                        this.data[dataId] = void 0;\n                    }\n                    else {\n                        delete this.data[dataId];\n                    }\n                    this.group.dirty(dataId, \"__exists\");\n                }\n                return true;\n            }\n        }\n        return false;\n    };\n    EntityStore.prototype.delete = function (dataId, fieldName, args) {\n        var _a;\n        var storeObject = this.lookup(dataId);\n        if (storeObject) {\n            var typename = this.getFieldValue(storeObject, \"__typename\");\n            var storeFieldName = fieldName && args\n                ? this.policies.getStoreFieldName({ typename: typename, fieldName: fieldName, args: args })\n                : fieldName;\n            return this.modify(dataId, storeFieldName ? (_a = {},\n                _a[storeFieldName] = delModifier,\n                _a) : delModifier);\n        }\n        return false;\n    };\n    EntityStore.prototype.evict = function (options, limit) {\n        var evicted = false;\n        if (options.id) {\n            if (hasOwn.call(this.data, options.id)) {\n                evicted = this.delete(options.id, options.fieldName, options.args);\n            }\n            if (this instanceof Layer && this !== limit) {\n                evicted = this.parent.evict(options, limit) || evicted;\n            }\n            if (options.fieldName || evicted) {\n                this.group.dirty(options.id, options.fieldName || \"__exists\");\n            }\n        }\n        return evicted;\n    };\n    EntityStore.prototype.clear = function () {\n        this.replace(null);\n    };\n    EntityStore.prototype.extract = function () {\n        var _this = this;\n        var obj = this.toObject();\n        var extraRootIds = [];\n        this.getRootIdSet().forEach(function (id) {\n            if (!hasOwn.call(_this.policies.rootTypenamesById, id)) {\n                extraRootIds.push(id);\n            }\n        });\n        if (extraRootIds.length) {\n            obj.__META = { extraRootIds: extraRootIds.sort() };\n        }\n        return obj;\n    };\n    EntityStore.prototype.replace = function (newData) {\n        var _this = this;\n        Object.keys(this.data).forEach(function (dataId) {\n            if (!(newData && hasOwn.call(newData, dataId))) {\n                _this.delete(dataId);\n            }\n        });\n        if (newData) {\n            var __META = newData.__META, rest_1 = __rest(newData, [\"__META\"]);\n            Object.keys(rest_1).forEach(function (dataId) {\n                _this.merge(dataId, rest_1[dataId]);\n            });\n            if (__META) {\n                __META.extraRootIds.forEach(this.retain, this);\n            }\n        }\n    };\n    EntityStore.prototype.retain = function (rootId) {\n        return this.rootIds[rootId] = (this.rootIds[rootId] || 0) + 1;\n    };\n    EntityStore.prototype.release = function (rootId) {\n        if (this.rootIds[rootId] > 0) {\n            var count = --this.rootIds[rootId];\n            if (!count)\n                delete this.rootIds[rootId];\n            return count;\n        }\n        return 0;\n    };\n    EntityStore.prototype.getRootIdSet = function (ids) {\n        if (ids === void 0) { ids = new Set(); }\n        Object.keys(this.rootIds).forEach(ids.add, ids);\n        if (this instanceof Layer) {\n            this.parent.getRootIdSet(ids);\n        }\n        else {\n            Object.keys(this.policies.rootTypenamesById).forEach(ids.add, ids);\n        }\n        return ids;\n    };\n    EntityStore.prototype.gc = function () {\n        var _this = this;\n        var ids = this.getRootIdSet();\n        var snapshot = this.toObject();\n        ids.forEach(function (id) {\n            if (hasOwn.call(snapshot, id)) {\n                Object.keys(_this.findChildRefIds(id)).forEach(ids.add, ids);\n                delete snapshot[id];\n            }\n        });\n        var idsToRemove = Object.keys(snapshot);\n        if (idsToRemove.length) {\n            var root_1 = this;\n            while (root_1 instanceof Layer)\n                root_1 = root_1.parent;\n            idsToRemove.forEach(function (id) { return root_1.delete(id); });\n        }\n        return idsToRemove;\n    };\n    EntityStore.prototype.findChildRefIds = function (dataId) {\n        if (!hasOwn.call(this.refs, dataId)) {\n            var found_1 = this.refs[dataId] = Object.create(null);\n            var root = this.data[dataId];\n            if (!root)\n                return found_1;\n            var workSet_1 = new Set([root]);\n            workSet_1.forEach(function (obj) {\n                if (isReference(obj)) {\n                    found_1[obj.__ref] = true;\n                }\n                if (isNonNullObject(obj)) {\n                    Object.keys(obj).forEach(function (key) {\n                        var child = obj[key];\n                        if (isNonNullObject(child)) {\n                            workSet_1.add(child);\n                        }\n                    });\n                }\n            });\n        }\n        return this.refs[dataId];\n    };\n    EntityStore.prototype.makeCacheKey = function () {\n        return this.group.keyMaker.lookupArray(arguments);\n    };\n    return EntityStore;\n}());\nexport { EntityStore };\nvar CacheGroup = (function () {\n    function CacheGroup(caching, parent) {\n        if (parent === void 0) { parent = null; }\n        this.caching = caching;\n        this.parent = parent;\n        this.d = null;\n        this.resetCaching();\n    }\n    CacheGroup.prototype.resetCaching = function () {\n        this.d = this.caching ? dep() : null;\n        this.keyMaker = new Trie(canUseWeakMap);\n    };\n    CacheGroup.prototype.depend = function (dataId, storeFieldName) {\n        if (this.d) {\n            this.d(makeDepKey(dataId, storeFieldName));\n            var fieldName = fieldNameFromStoreName(storeFieldName);\n            if (fieldName !== storeFieldName) {\n                this.d(makeDepKey(dataId, fieldName));\n            }\n            if (this.parent) {\n                this.parent.depend(dataId, storeFieldName);\n            }\n        }\n    };\n    CacheGroup.prototype.dirty = function (dataId, storeFieldName) {\n        if (this.d) {\n            this.d.dirty(makeDepKey(dataId, storeFieldName), storeFieldName === \"__exists\" ? \"forget\" : \"setDirty\");\n        }\n    };\n    return CacheGroup;\n}());\nfunction makeDepKey(dataId, storeFieldName) {\n    return storeFieldName + '#' + dataId;\n}\nexport function maybeDependOnExistenceOfEntity(store, entityId) {\n    if (supportsResultCaching(store)) {\n        store.group.depend(entityId, \"__exists\");\n    }\n}\n(function (EntityStore) {\n    var Root = (function (_super) {\n        __extends(Root, _super);\n        function Root(_a) {\n            var policies = _a.policies, _b = _a.resultCaching, resultCaching = _b === void 0 ? true : _b, seed = _a.seed;\n            var _this = _super.call(this, policies, new CacheGroup(resultCaching)) || this;\n            _this.stump = new Stump(_this);\n            _this.storageTrie = new Trie(canUseWeakMap);\n            if (seed)\n                _this.replace(seed);\n            return _this;\n        }\n        Root.prototype.addLayer = function (layerId, replay) {\n            return this.stump.addLayer(layerId, replay);\n        };\n        Root.prototype.removeLayer = function () {\n            return this;\n        };\n        Root.prototype.getStorage = function () {\n            return this.storageTrie.lookupArray(arguments);\n        };\n        return Root;\n    }(EntityStore));\n    EntityStore.Root = Root;\n})(EntityStore || (EntityStore = {}));\nvar Layer = (function (_super) {\n    __extends(Layer, _super);\n    function Layer(id, parent, replay, group) {\n        var _this = _super.call(this, parent.policies, group) || this;\n        _this.id = id;\n        _this.parent = parent;\n        _this.replay = replay;\n        _this.group = group;\n        replay(_this);\n        return _this;\n    }\n    Layer.prototype.addLayer = function (layerId, replay) {\n        return new Layer(layerId, this, replay, this.group);\n    };\n    Layer.prototype.removeLayer = function (layerId) {\n        var _this = this;\n        var parent = this.parent.removeLayer(layerId);\n        if (layerId === this.id) {\n            if (this.group.caching) {\n                Object.keys(this.data).forEach(function (dataId) {\n                    var ownStoreObject = _this.data[dataId];\n                    var parentStoreObject = parent[\"lookup\"](dataId);\n                    if (!parentStoreObject) {\n                        _this.delete(dataId);\n                    }\n                    else if (!ownStoreObject) {\n                        _this.group.dirty(dataId, \"__exists\");\n                        Object.keys(parentStoreObject).forEach(function (storeFieldName) {\n                            _this.group.dirty(dataId, storeFieldName);\n                        });\n                    }\n                    else if (ownStoreObject !== parentStoreObject) {\n                        Object.keys(ownStoreObject).forEach(function (storeFieldName) {\n                            if (!equal(ownStoreObject[storeFieldName], parentStoreObject[storeFieldName])) {\n                                _this.group.dirty(dataId, storeFieldName);\n                            }\n                        });\n                    }\n                });\n            }\n            return parent;\n        }\n        if (parent === this.parent)\n            return this;\n        return parent.addLayer(this.id, this.replay);\n    };\n    Layer.prototype.toObject = function () {\n        return __assign(__assign({}, this.parent.toObject()), this.data);\n    };\n    Layer.prototype.findChildRefIds = function (dataId) {\n        var fromParent = this.parent.findChildRefIds(dataId);\n        return hasOwn.call(this.data, dataId) ? __assign(__assign({}, fromParent), _super.prototype.findChildRefIds.call(this, dataId)) : fromParent;\n    };\n    Layer.prototype.getStorage = function () {\n        var p = this.parent;\n        while (p.parent)\n            p = p.parent;\n        return p.getStorage.apply(p, arguments);\n    };\n    return Layer;\n}(EntityStore));\nvar Stump = (function (_super) {\n    __extends(Stump, _super);\n    function Stump(root) {\n        return _super.call(this, \"EntityStore.Stump\", root, function () { }, new CacheGroup(root.group.caching, root.group)) || this;\n    }\n    Stump.prototype.removeLayer = function () {\n        return this;\n    };\n    Stump.prototype.merge = function () {\n        return this.parent.merge.apply(this.parent, arguments);\n    };\n    return Stump;\n}(Layer));\nfunction storeObjectReconciler(existingObject, incomingObject, property) {\n    var existingValue = existingObject[property];\n    var incomingValue = incomingObject[property];\n    return equal(existingValue, incomingValue) ? existingValue : incomingValue;\n}\nexport function supportsResultCaching(store) {\n    return !!(store instanceof EntityStore && store.group.caching);\n}\n//# sourceMappingURL=entityStore.js.map","import { __assign } from \"tslib\";\nimport \"../../utilities/globals\";\nimport { Trie } from \"@wry/trie\";\nimport { canUseWeakMap, canUseWeakSet, isNonNullObject as isObjectOrArray, } from \"../../utilities\";\nimport { isArray } from \"./helpers\";\nfunction shallowCopy(value) {\n    if (isObjectOrArray(value)) {\n        return isArray(value)\n            ? value.slice(0)\n            : __assign({ __proto__: Object.getPrototypeOf(value) }, value);\n    }\n    return value;\n}\nvar ObjectCanon = (function () {\n    function ObjectCanon() {\n        this.known = new (canUseWeakSet ? WeakSet : Set)();\n        this.pool = new Trie(canUseWeakMap);\n        this.passes = new WeakMap();\n        this.keysByJSON = new Map();\n        this.empty = this.admit({});\n    }\n    ObjectCanon.prototype.isKnown = function (value) {\n        return isObjectOrArray(value) && this.known.has(value);\n    };\n    ObjectCanon.prototype.pass = function (value) {\n        if (isObjectOrArray(value)) {\n            var copy = shallowCopy(value);\n            this.passes.set(copy, value);\n            return copy;\n        }\n        return value;\n    };\n    ObjectCanon.prototype.admit = function (value) {\n        var _this = this;\n        if (isObjectOrArray(value)) {\n            var original = this.passes.get(value);\n            if (original)\n                return original;\n            var proto = Object.getPrototypeOf(value);\n            switch (proto) {\n                case Array.prototype: {\n                    if (this.known.has(value))\n                        return value;\n                    var array = value.map(this.admit, this);\n                    var node = this.pool.lookupArray(array);\n                    if (!node.array) {\n                        this.known.add(node.array = array);\n                        if (__DEV__) {\n                            Object.freeze(array);\n                        }\n                    }\n                    return node.array;\n                }\n                case null:\n                case Object.prototype: {\n                    if (this.known.has(value))\n                        return value;\n                    var proto_1 = Object.getPrototypeOf(value);\n                    var array_1 = [proto_1];\n                    var keys = this.sortedKeys(value);\n                    array_1.push(keys.json);\n                    var firstValueIndex_1 = array_1.length;\n                    keys.sorted.forEach(function (key) {\n                        array_1.push(_this.admit(value[key]));\n                    });\n                    var node = this.pool.lookupArray(array_1);\n                    if (!node.object) {\n                        var obj_1 = node.object = Object.create(proto_1);\n                        this.known.add(obj_1);\n                        keys.sorted.forEach(function (key, i) {\n                            obj_1[key] = array_1[firstValueIndex_1 + i];\n                        });\n                        if (__DEV__) {\n                            Object.freeze(obj_1);\n                        }\n                    }\n                    return node.object;\n                }\n            }\n        }\n        return value;\n    };\n    ObjectCanon.prototype.sortedKeys = function (obj) {\n        var keys = Object.keys(obj);\n        var node = this.pool.lookupArray(keys);\n        if (!node.keys) {\n            keys.sort();\n            var json = JSON.stringify(keys);\n            if (!(node.keys = this.keysByJSON.get(json))) {\n                this.keysByJSON.set(json, node.keys = { sorted: keys, json: json });\n            }\n        }\n        return node.keys;\n    };\n    return ObjectCanon;\n}());\nexport { ObjectCanon };\nexport var canonicalStringify = Object.assign(function (value) {\n    if (isObjectOrArray(value)) {\n        if (stringifyCanon === void 0) {\n            resetCanonicalStringify();\n        }\n        var canonical = stringifyCanon.admit(value);\n        var json = stringifyCache.get(canonical);\n        if (json === void 0) {\n            stringifyCache.set(canonical, json = JSON.stringify(canonical));\n        }\n        return json;\n    }\n    return JSON.stringify(value);\n}, {\n    reset: resetCanonicalStringify,\n});\nvar stringifyCanon;\nvar stringifyCache;\nfunction resetCanonicalStringify() {\n    stringifyCanon = new ObjectCanon;\n    stringifyCache = new (canUseWeakMap ? WeakMap : Map)();\n}\n//# sourceMappingURL=object-canon.js.map","import { __assign } from \"tslib\";\nimport { invariant } from '../../utilities/globals';\nimport { wrap } from 'optimism';\nimport { isField, resultKeyNameFromField, isReference, makeReference, createFragmentMap, shouldInclude, addTypenameToDocument, getDefaultValues, getFragmentDefinitions, getMainDefinition, getQueryDefinition, getFragmentFromSelection, maybeDeepFreeze, mergeDeepArray, DeepMerger, isNonNullObject, canUseWeakMap, compact, } from '../../utilities';\nimport { maybeDependOnExistenceOfEntity, supportsResultCaching } from './entityStore';\nimport { getTypenameFromStoreObject, isArray, shouldCanonizeResults } from './helpers';\nimport { MissingFieldError } from '../core/types/common';\nimport { canonicalStringify, ObjectCanon } from './object-canon';\n;\nfunction execSelectionSetKeyArgs(options) {\n    return [\n        options.selectionSet,\n        options.objectOrReference,\n        options.context,\n        options.context.canonizeResults,\n    ];\n}\nvar StoreReader = (function () {\n    function StoreReader(config) {\n        var _this = this;\n        this.knownResults = new (canUseWeakMap ? WeakMap : Map)();\n        this.config = compact(config, {\n            addTypename: config.addTypename !== false,\n            canonizeResults: shouldCanonizeResults(config),\n        });\n        this.canon = config.canon || new ObjectCanon;\n        this.executeSelectionSet = wrap(function (options) {\n            var _a;\n            var canonizeResults = options.context.canonizeResults;\n            var peekArgs = execSelectionSetKeyArgs(options);\n            peekArgs[3] = !canonizeResults;\n            var other = (_a = _this.executeSelectionSet).peek.apply(_a, peekArgs);\n            if (other) {\n                if (canonizeResults) {\n                    return __assign(__assign({}, other), { result: _this.canon.admit(other.result) });\n                }\n                return other;\n            }\n            maybeDependOnExistenceOfEntity(options.context.store, options.enclosingRef.__ref);\n            return _this.execSelectionSetImpl(options);\n        }, {\n            max: this.config.resultCacheMaxSize,\n            keyArgs: execSelectionSetKeyArgs,\n            makeCacheKey: function (selectionSet, parent, context, canonizeResults) {\n                if (supportsResultCaching(context.store)) {\n                    return context.store.makeCacheKey(selectionSet, isReference(parent) ? parent.__ref : parent, context.varString, canonizeResults);\n                }\n            }\n        });\n        this.executeSubSelectedArray = wrap(function (options) {\n            maybeDependOnExistenceOfEntity(options.context.store, options.enclosingRef.__ref);\n            return _this.execSubSelectedArrayImpl(options);\n        }, {\n            max: this.config.resultCacheMaxSize,\n            makeCacheKey: function (_a) {\n                var field = _a.field, array = _a.array, context = _a.context;\n                if (supportsResultCaching(context.store)) {\n                    return context.store.makeCacheKey(field, array, context.varString);\n                }\n            }\n        });\n    }\n    StoreReader.prototype.resetCanon = function () {\n        this.canon = new ObjectCanon;\n    };\n    StoreReader.prototype.diffQueryAgainstStore = function (_a) {\n        var store = _a.store, query = _a.query, _b = _a.rootId, rootId = _b === void 0 ? 'ROOT_QUERY' : _b, variables = _a.variables, _c = _a.returnPartialData, returnPartialData = _c === void 0 ? true : _c, _d = _a.canonizeResults, canonizeResults = _d === void 0 ? this.config.canonizeResults : _d;\n        var policies = this.config.cache.policies;\n        variables = __assign(__assign({}, getDefaultValues(getQueryDefinition(query))), variables);\n        var rootRef = makeReference(rootId);\n        var execResult = this.executeSelectionSet({\n            selectionSet: getMainDefinition(query).selectionSet,\n            objectOrReference: rootRef,\n            enclosingRef: rootRef,\n            context: {\n                store: store,\n                query: query,\n                policies: policies,\n                variables: variables,\n                varString: canonicalStringify(variables),\n                canonizeResults: canonizeResults,\n                fragmentMap: createFragmentMap(getFragmentDefinitions(query)),\n            },\n        });\n        var missing;\n        if (execResult.missing) {\n            missing = [new MissingFieldError(firstMissing(execResult.missing), execResult.missing, query, variables)];\n            if (!returnPartialData) {\n                throw missing[0];\n            }\n        }\n        return {\n            result: execResult.result,\n            complete: !missing,\n            missing: missing,\n        };\n    };\n    StoreReader.prototype.isFresh = function (result, parent, selectionSet, context) {\n        if (supportsResultCaching(context.store) &&\n            this.knownResults.get(result) === selectionSet) {\n            var latest = this.executeSelectionSet.peek(selectionSet, parent, context, this.canon.isKnown(result));\n            if (latest && result === latest.result) {\n                return true;\n            }\n        }\n        return false;\n    };\n    StoreReader.prototype.execSelectionSetImpl = function (_a) {\n        var _this = this;\n        var selectionSet = _a.selectionSet, objectOrReference = _a.objectOrReference, enclosingRef = _a.enclosingRef, context = _a.context;\n        if (isReference(objectOrReference) &&\n            !context.policies.rootTypenamesById[objectOrReference.__ref] &&\n            !context.store.has(objectOrReference.__ref)) {\n            return {\n                result: this.canon.empty,\n                missing: \"Dangling reference to missing \".concat(objectOrReference.__ref, \" object\"),\n            };\n        }\n        var variables = context.variables, policies = context.policies, store = context.store;\n        var typename = store.getFieldValue(objectOrReference, \"__typename\");\n        var objectsToMerge = [];\n        var missing;\n        var missingMerger = new DeepMerger();\n        if (this.config.addTypename &&\n            typeof typename === \"string\" &&\n            !policies.rootIdsByTypename[typename]) {\n            objectsToMerge.push({ __typename: typename });\n        }\n        function handleMissing(result, resultName) {\n            var _a;\n            if (result.missing) {\n                missing = missingMerger.merge(missing, (_a = {}, _a[resultName] = result.missing, _a));\n            }\n            return result.result;\n        }\n        var workSet = new Set(selectionSet.selections);\n        workSet.forEach(function (selection) {\n            var _a, _b;\n            if (!shouldInclude(selection, variables))\n                return;\n            if (isField(selection)) {\n                var fieldValue = policies.readField({\n                    fieldName: selection.name.value,\n                    field: selection,\n                    variables: context.variables,\n                    from: objectOrReference,\n                }, context);\n                var resultName = resultKeyNameFromField(selection);\n                if (fieldValue === void 0) {\n                    if (!addTypenameToDocument.added(selection)) {\n                        missing = missingMerger.merge(missing, (_a = {},\n                            _a[resultName] = \"Can't find field '\".concat(selection.name.value, \"' on \").concat(isReference(objectOrReference)\n                                ? objectOrReference.__ref + \" object\"\n                                : \"object \" + JSON.stringify(objectOrReference, null, 2)),\n                            _a));\n                    }\n                }\n                else if (isArray(fieldValue)) {\n                    fieldValue = handleMissing(_this.executeSubSelectedArray({\n                        field: selection,\n                        array: fieldValue,\n                        enclosingRef: enclosingRef,\n                        context: context,\n                    }), resultName);\n                }\n                else if (!selection.selectionSet) {\n                    if (context.canonizeResults) {\n                        fieldValue = _this.canon.pass(fieldValue);\n                    }\n                }\n                else if (fieldValue != null) {\n                    fieldValue = handleMissing(_this.executeSelectionSet({\n                        selectionSet: selection.selectionSet,\n                        objectOrReference: fieldValue,\n                        enclosingRef: isReference(fieldValue) ? fieldValue : enclosingRef,\n                        context: context,\n                    }), resultName);\n                }\n                if (fieldValue !== void 0) {\n                    objectsToMerge.push((_b = {}, _b[resultName] = fieldValue, _b));\n                }\n            }\n            else {\n                var fragment = getFragmentFromSelection(selection, context.fragmentMap);\n                if (fragment && policies.fragmentMatches(fragment, typename)) {\n                    fragment.selectionSet.selections.forEach(workSet.add, workSet);\n                }\n            }\n        });\n        var result = mergeDeepArray(objectsToMerge);\n        var finalResult = { result: result, missing: missing };\n        var frozen = context.canonizeResults\n            ? this.canon.admit(finalResult)\n            : maybeDeepFreeze(finalResult);\n        if (frozen.result) {\n            this.knownResults.set(frozen.result, selectionSet);\n        }\n        return frozen;\n    };\n    StoreReader.prototype.execSubSelectedArrayImpl = function (_a) {\n        var _this = this;\n        var field = _a.field, array = _a.array, enclosingRef = _a.enclosingRef, context = _a.context;\n        var missing;\n        var missingMerger = new DeepMerger();\n        function handleMissing(childResult, i) {\n            var _a;\n            if (childResult.missing) {\n                missing = missingMerger.merge(missing, (_a = {}, _a[i] = childResult.missing, _a));\n            }\n            return childResult.result;\n        }\n        if (field.selectionSet) {\n            array = array.filter(context.store.canRead);\n        }\n        array = array.map(function (item, i) {\n            if (item === null) {\n                return null;\n            }\n            if (isArray(item)) {\n                return handleMissing(_this.executeSubSelectedArray({\n                    field: field,\n                    array: item,\n                    enclosingRef: enclosingRef,\n                    context: context,\n                }), i);\n            }\n            if (field.selectionSet) {\n                return handleMissing(_this.executeSelectionSet({\n                    selectionSet: field.selectionSet,\n                    objectOrReference: item,\n                    enclosingRef: isReference(item) ? item : enclosingRef,\n                    context: context,\n                }), i);\n            }\n            if (__DEV__) {\n                assertSelectionSetForIdValue(context.store, field, item);\n            }\n            return item;\n        });\n        return {\n            result: context.canonizeResults ? this.canon.admit(array) : array,\n            missing: missing,\n        };\n    };\n    return StoreReader;\n}());\nexport { StoreReader };\nfunction firstMissing(tree) {\n    try {\n        JSON.stringify(tree, function (_, value) {\n            if (typeof value === \"string\")\n                throw value;\n            return value;\n        });\n    }\n    catch (result) {\n        return result;\n    }\n}\nfunction assertSelectionSetForIdValue(store, field, fieldValue) {\n    if (!field.selectionSet) {\n        var workSet_1 = new Set([fieldValue]);\n        workSet_1.forEach(function (value) {\n            if (isNonNullObject(value)) {\n                __DEV__ ? invariant(!isReference(value), \"Missing selection set for object of type \".concat(getTypenameFromStoreObject(store, value), \" returned for query field \").concat(field.name.value)) : invariant(!isReference(value), 5);\n                Object.values(value).forEach(workSet_1.add, workSet_1);\n            }\n        });\n    }\n}\n//# sourceMappingURL=readFromStore.js.map","import { dep } from \"optimism\";\nimport { Slot } from \"@wry/context\";\nexport var cacheSlot = new Slot();\nvar cacheInfoMap = new WeakMap();\nfunction getCacheInfo(cache) {\n    var info = cacheInfoMap.get(cache);\n    if (!info) {\n        cacheInfoMap.set(cache, info = {\n            vars: new Set,\n            dep: dep(),\n        });\n    }\n    return info;\n}\nexport function forgetCache(cache) {\n    getCacheInfo(cache).vars.forEach(function (rv) { return rv.forgetCache(cache); });\n}\nexport function recallCache(cache) {\n    getCacheInfo(cache).vars.forEach(function (rv) { return rv.attachCache(cache); });\n}\nexport function makeVar(value) {\n    var caches = new Set();\n    var listeners = new Set();\n    var rv = function (newValue) {\n        if (arguments.length > 0) {\n            if (value !== newValue) {\n                value = newValue;\n                caches.forEach(function (cache) {\n                    getCacheInfo(cache).dep.dirty(rv);\n                    broadcast(cache);\n                });\n                var oldListeners = Array.from(listeners);\n                listeners.clear();\n                oldListeners.forEach(function (listener) { return listener(value); });\n            }\n        }\n        else {\n            var cache = cacheSlot.getValue();\n            if (cache) {\n                attach(cache);\n                getCacheInfo(cache).dep(rv);\n            }\n        }\n        return value;\n    };\n    rv.onNextChange = function (listener) {\n        listeners.add(listener);\n        return function () {\n            listeners.delete(listener);\n        };\n    };\n    var attach = rv.attachCache = function (cache) {\n        caches.add(cache);\n        getCacheInfo(cache).vars.add(rv);\n        return rv;\n    };\n    rv.forgetCache = function (cache) { return caches.delete(cache); };\n    return rv;\n}\nfunction broadcast(cache) {\n    if (cache.broadcastWatches) {\n        cache.broadcastWatches();\n    }\n}\n//# sourceMappingURL=reactiveVars.js.map","import { invariant } from \"../../utilities/globals\";\nimport { argumentsObjectFromField, DeepMerger, isNonEmptyArray, isNonNullObject, } from \"../../utilities\";\nimport { hasOwn, isArray } from \"./helpers\";\nvar specifierInfoCache = Object.create(null);\nfunction lookupSpecifierInfo(spec) {\n    var cacheKey = JSON.stringify(spec);\n    return specifierInfoCache[cacheKey] ||\n        (specifierInfoCache[cacheKey] = Object.create(null));\n}\nexport function keyFieldsFnFromSpecifier(specifier) {\n    var info = lookupSpecifierInfo(specifier);\n    return info.keyFieldsFn || (info.keyFieldsFn = function (object, context) {\n        var extract = function (from, key) { return context.readField(key, from); };\n        var keyObject = context.keyObject = collectSpecifierPaths(specifier, function (schemaKeyPath) {\n            var extracted = extractKeyPath(context.storeObject, schemaKeyPath, extract);\n            if (extracted === void 0 &&\n                object !== context.storeObject &&\n                hasOwn.call(object, schemaKeyPath[0])) {\n                extracted = extractKeyPath(object, schemaKeyPath, extractKey);\n            }\n            __DEV__ ? invariant(extracted !== void 0, \"Missing field '\".concat(schemaKeyPath.join('.'), \"' while extracting keyFields from \").concat(JSON.stringify(object))) : invariant(extracted !== void 0, 2);\n            return extracted;\n        });\n        return \"\".concat(context.typename, \":\").concat(JSON.stringify(keyObject));\n    });\n}\nexport function keyArgsFnFromSpecifier(specifier) {\n    var info = lookupSpecifierInfo(specifier);\n    return info.keyArgsFn || (info.keyArgsFn = function (args, _a) {\n        var field = _a.field, variables = _a.variables, fieldName = _a.fieldName;\n        var collected = collectSpecifierPaths(specifier, function (keyPath) {\n            var firstKey = keyPath[0];\n            var firstChar = firstKey.charAt(0);\n            if (firstChar === \"@\") {\n                if (field && isNonEmptyArray(field.directives)) {\n                    var directiveName_1 = firstKey.slice(1);\n                    var d = field.directives.find(function (d) { return d.name.value === directiveName_1; });\n                    var directiveArgs = d && argumentsObjectFromField(d, variables);\n                    return directiveArgs && extractKeyPath(directiveArgs, keyPath.slice(1));\n                }\n                return;\n            }\n            if (firstChar === \"$\") {\n                var variableName = firstKey.slice(1);\n                if (variables && hasOwn.call(variables, variableName)) {\n                    var varKeyPath = keyPath.slice(0);\n                    varKeyPath[0] = variableName;\n                    return extractKeyPath(variables, varKeyPath);\n                }\n                return;\n            }\n            if (args) {\n                return extractKeyPath(args, keyPath);\n            }\n        });\n        var suffix = JSON.stringify(collected);\n        if (args || suffix !== \"{}\") {\n            fieldName += \":\" + suffix;\n        }\n        return fieldName;\n    });\n}\nexport function collectSpecifierPaths(specifier, extractor) {\n    var merger = new DeepMerger;\n    return getSpecifierPaths(specifier).reduce(function (collected, path) {\n        var _a;\n        var toMerge = extractor(path);\n        if (toMerge !== void 0) {\n            for (var i = path.length - 1; i >= 0; --i) {\n                toMerge = (_a = {}, _a[path[i]] = toMerge, _a);\n            }\n            collected = merger.merge(collected, toMerge);\n        }\n        return collected;\n    }, Object.create(null));\n}\nexport function getSpecifierPaths(spec) {\n    var info = lookupSpecifierInfo(spec);\n    if (!info.paths) {\n        var paths_1 = info.paths = [];\n        var currentPath_1 = [];\n        spec.forEach(function (s, i) {\n            if (isArray(s)) {\n                getSpecifierPaths(s).forEach(function (p) { return paths_1.push(currentPath_1.concat(p)); });\n                currentPath_1.length = 0;\n            }\n            else {\n                currentPath_1.push(s);\n                if (!isArray(spec[i + 1])) {\n                    paths_1.push(currentPath_1.slice(0));\n                    currentPath_1.length = 0;\n                }\n            }\n        });\n    }\n    return info.paths;\n}\nfunction extractKey(object, key) {\n    return object[key];\n}\nexport function extractKeyPath(object, path, extract) {\n    extract = extract || extractKey;\n    return normalize(path.reduce(function reducer(obj, key) {\n        return isArray(obj)\n            ? obj.map(function (child) { return reducer(child, key); })\n            : obj && extract(obj, key);\n    }, object));\n}\nfunction normalize(value) {\n    if (isNonNullObject(value)) {\n        if (isArray(value)) {\n            return value.map(normalize);\n        }\n        return collectSpecifierPaths(Object.keys(value).sort(), function (path) { return extractKeyPath(value, path); });\n    }\n    return value;\n}\n//# sourceMappingURL=key-extractor.js.map","import { __assign, __rest } from \"tslib\";\nimport { invariant, InvariantError } from '../../utilities/globals';\nimport { storeKeyNameFromField, argumentsObjectFromField, isReference, getStoreKeyName, isNonNullObject, stringifyForDisplay, } from '../../utilities';\nimport { hasOwn, fieldNameFromStoreName, storeValueIsStoreObject, selectionSetMatchesResult, TypeOrFieldNameRegExp, defaultDataIdFromObject, isArray, } from './helpers';\nimport { cacheSlot } from './reactiveVars';\nimport { canonicalStringify } from './object-canon';\nimport { keyArgsFnFromSpecifier, keyFieldsFnFromSpecifier } from './key-extractor';\ngetStoreKeyName.setStringify(canonicalStringify);\nfunction argsFromFieldSpecifier(spec) {\n    return spec.args !== void 0 ? spec.args :\n        spec.field ? argumentsObjectFromField(spec.field, spec.variables) : null;\n}\nvar nullKeyFieldsFn = function () { return void 0; };\nvar simpleKeyArgsFn = function (_args, context) { return context.fieldName; };\nvar mergeTrueFn = function (existing, incoming, _a) {\n    var mergeObjects = _a.mergeObjects;\n    return mergeObjects(existing, incoming);\n};\nvar mergeFalseFn = function (_, incoming) { return incoming; };\nvar Policies = (function () {\n    function Policies(config) {\n        this.config = config;\n        this.typePolicies = Object.create(null);\n        this.toBeAdded = Object.create(null);\n        this.supertypeMap = new Map();\n        this.fuzzySubtypes = new Map();\n        this.rootIdsByTypename = Object.create(null);\n        this.rootTypenamesById = Object.create(null);\n        this.usingPossibleTypes = false;\n        this.config = __assign({ dataIdFromObject: defaultDataIdFromObject }, config);\n        this.cache = this.config.cache;\n        this.setRootTypename(\"Query\");\n        this.setRootTypename(\"Mutation\");\n        this.setRootTypename(\"Subscription\");\n        if (config.possibleTypes) {\n            this.addPossibleTypes(config.possibleTypes);\n        }\n        if (config.typePolicies) {\n            this.addTypePolicies(config.typePolicies);\n        }\n    }\n    Policies.prototype.identify = function (object, partialContext) {\n        var _a;\n        var policies = this;\n        var typename = partialContext && (partialContext.typename ||\n            ((_a = partialContext.storeObject) === null || _a === void 0 ? void 0 : _a.__typename)) || object.__typename;\n        if (typename === this.rootTypenamesById.ROOT_QUERY) {\n            return [\"ROOT_QUERY\"];\n        }\n        var storeObject = partialContext && partialContext.storeObject || object;\n        var context = __assign(__assign({}, partialContext), { typename: typename, storeObject: storeObject, readField: partialContext && partialContext.readField || function () {\n                var options = normalizeReadFieldOptions(arguments, storeObject);\n                return policies.readField(options, {\n                    store: policies.cache[\"data\"],\n                    variables: options.variables,\n                });\n            } });\n        var id;\n        var policy = typename && this.getTypePolicy(typename);\n        var keyFn = policy && policy.keyFn || this.config.dataIdFromObject;\n        while (keyFn) {\n            var specifierOrId = keyFn(object, context);\n            if (isArray(specifierOrId)) {\n                keyFn = keyFieldsFnFromSpecifier(specifierOrId);\n            }\n            else {\n                id = specifierOrId;\n                break;\n            }\n        }\n        id = id ? String(id) : void 0;\n        return context.keyObject ? [id, context.keyObject] : [id];\n    };\n    Policies.prototype.addTypePolicies = function (typePolicies) {\n        var _this = this;\n        Object.keys(typePolicies).forEach(function (typename) {\n            var _a = typePolicies[typename], queryType = _a.queryType, mutationType = _a.mutationType, subscriptionType = _a.subscriptionType, incoming = __rest(_a, [\"queryType\", \"mutationType\", \"subscriptionType\"]);\n            if (queryType)\n                _this.setRootTypename(\"Query\", typename);\n            if (mutationType)\n                _this.setRootTypename(\"Mutation\", typename);\n            if (subscriptionType)\n                _this.setRootTypename(\"Subscription\", typename);\n            if (hasOwn.call(_this.toBeAdded, typename)) {\n                _this.toBeAdded[typename].push(incoming);\n            }\n            else {\n                _this.toBeAdded[typename] = [incoming];\n            }\n        });\n    };\n    Policies.prototype.updateTypePolicy = function (typename, incoming) {\n        var _this = this;\n        var existing = this.getTypePolicy(typename);\n        var keyFields = incoming.keyFields, fields = incoming.fields;\n        function setMerge(existing, merge) {\n            existing.merge =\n                typeof merge === \"function\" ? merge :\n                    merge === true ? mergeTrueFn :\n                        merge === false ? mergeFalseFn :\n                            existing.merge;\n        }\n        setMerge(existing, incoming.merge);\n        existing.keyFn =\n            keyFields === false ? nullKeyFieldsFn :\n                isArray(keyFields) ? keyFieldsFnFromSpecifier(keyFields) :\n                    typeof keyFields === \"function\" ? keyFields :\n                        existing.keyFn;\n        if (fields) {\n            Object.keys(fields).forEach(function (fieldName) {\n                var existing = _this.getFieldPolicy(typename, fieldName, true);\n                var incoming = fields[fieldName];\n                if (typeof incoming === \"function\") {\n                    existing.read = incoming;\n                }\n                else {\n                    var keyArgs = incoming.keyArgs, read = incoming.read, merge = incoming.merge;\n                    existing.keyFn =\n                        keyArgs === false ? simpleKeyArgsFn :\n                            isArray(keyArgs) ? keyArgsFnFromSpecifier(keyArgs) :\n                                typeof keyArgs === \"function\" ? keyArgs :\n                                    existing.keyFn;\n                    if (typeof read === \"function\") {\n                        existing.read = read;\n                    }\n                    setMerge(existing, merge);\n                }\n                if (existing.read && existing.merge) {\n                    existing.keyFn = existing.keyFn || simpleKeyArgsFn;\n                }\n            });\n        }\n    };\n    Policies.prototype.setRootTypename = function (which, typename) {\n        if (typename === void 0) { typename = which; }\n        var rootId = \"ROOT_\" + which.toUpperCase();\n        var old = this.rootTypenamesById[rootId];\n        if (typename !== old) {\n            __DEV__ ? invariant(!old || old === which, \"Cannot change root \".concat(which, \" __typename more than once\")) : invariant(!old || old === which, 3);\n            if (old)\n                delete this.rootIdsByTypename[old];\n            this.rootIdsByTypename[typename] = rootId;\n            this.rootTypenamesById[rootId] = typename;\n        }\n    };\n    Policies.prototype.addPossibleTypes = function (possibleTypes) {\n        var _this = this;\n        this.usingPossibleTypes = true;\n        Object.keys(possibleTypes).forEach(function (supertype) {\n            _this.getSupertypeSet(supertype, true);\n            possibleTypes[supertype].forEach(function (subtype) {\n                _this.getSupertypeSet(subtype, true).add(supertype);\n                var match = subtype.match(TypeOrFieldNameRegExp);\n                if (!match || match[0] !== subtype) {\n                    _this.fuzzySubtypes.set(subtype, new RegExp(subtype));\n                }\n            });\n        });\n    };\n    Policies.prototype.getTypePolicy = function (typename) {\n        var _this = this;\n        if (!hasOwn.call(this.typePolicies, typename)) {\n            var policy_1 = this.typePolicies[typename] = Object.create(null);\n            policy_1.fields = Object.create(null);\n            var supertypes = this.supertypeMap.get(typename);\n            if (supertypes && supertypes.size) {\n                supertypes.forEach(function (supertype) {\n                    var _a = _this.getTypePolicy(supertype), fields = _a.fields, rest = __rest(_a, [\"fields\"]);\n                    Object.assign(policy_1, rest);\n                    Object.assign(policy_1.fields, fields);\n                });\n            }\n        }\n        var inbox = this.toBeAdded[typename];\n        if (inbox && inbox.length) {\n            inbox.splice(0).forEach(function (policy) {\n                _this.updateTypePolicy(typename, policy);\n            });\n        }\n        return this.typePolicies[typename];\n    };\n    Policies.prototype.getFieldPolicy = function (typename, fieldName, createIfMissing) {\n        if (typename) {\n            var fieldPolicies = this.getTypePolicy(typename).fields;\n            return fieldPolicies[fieldName] || (createIfMissing && (fieldPolicies[fieldName] = Object.create(null)));\n        }\n    };\n    Policies.prototype.getSupertypeSet = function (subtype, createIfMissing) {\n        var supertypeSet = this.supertypeMap.get(subtype);\n        if (!supertypeSet && createIfMissing) {\n            this.supertypeMap.set(subtype, supertypeSet = new Set());\n        }\n        return supertypeSet;\n    };\n    Policies.prototype.fragmentMatches = function (fragment, typename, result, variables) {\n        var _this = this;\n        if (!fragment.typeCondition)\n            return true;\n        if (!typename)\n            return false;\n        var supertype = fragment.typeCondition.name.value;\n        if (typename === supertype)\n            return true;\n        if (this.usingPossibleTypes &&\n            this.supertypeMap.has(supertype)) {\n            var typenameSupertypeSet = this.getSupertypeSet(typename, true);\n            var workQueue_1 = [typenameSupertypeSet];\n            var maybeEnqueue_1 = function (subtype) {\n                var supertypeSet = _this.getSupertypeSet(subtype, false);\n                if (supertypeSet &&\n                    supertypeSet.size &&\n                    workQueue_1.indexOf(supertypeSet) < 0) {\n                    workQueue_1.push(supertypeSet);\n                }\n            };\n            var needToCheckFuzzySubtypes = !!(result && this.fuzzySubtypes.size);\n            var checkingFuzzySubtypes = false;\n            for (var i = 0; i < workQueue_1.length; ++i) {\n                var supertypeSet = workQueue_1[i];\n                if (supertypeSet.has(supertype)) {\n                    if (!typenameSupertypeSet.has(supertype)) {\n                        if (checkingFuzzySubtypes) {\n                            __DEV__ && invariant.warn(\"Inferring subtype \".concat(typename, \" of supertype \").concat(supertype));\n                        }\n                        typenameSupertypeSet.add(supertype);\n                    }\n                    return true;\n                }\n                supertypeSet.forEach(maybeEnqueue_1);\n                if (needToCheckFuzzySubtypes &&\n                    i === workQueue_1.length - 1 &&\n                    selectionSetMatchesResult(fragment.selectionSet, result, variables)) {\n                    needToCheckFuzzySubtypes = false;\n                    checkingFuzzySubtypes = true;\n                    this.fuzzySubtypes.forEach(function (regExp, fuzzyString) {\n                        var match = typename.match(regExp);\n                        if (match && match[0] === typename) {\n                            maybeEnqueue_1(fuzzyString);\n                        }\n                    });\n                }\n            }\n        }\n        return false;\n    };\n    Policies.prototype.hasKeyArgs = function (typename, fieldName) {\n        var policy = this.getFieldPolicy(typename, fieldName, false);\n        return !!(policy && policy.keyFn);\n    };\n    Policies.prototype.getStoreFieldName = function (fieldSpec) {\n        var typename = fieldSpec.typename, fieldName = fieldSpec.fieldName;\n        var policy = this.getFieldPolicy(typename, fieldName, false);\n        var storeFieldName;\n        var keyFn = policy && policy.keyFn;\n        if (keyFn && typename) {\n            var context = {\n                typename: typename,\n                fieldName: fieldName,\n                field: fieldSpec.field || null,\n                variables: fieldSpec.variables,\n            };\n            var args = argsFromFieldSpecifier(fieldSpec);\n            while (keyFn) {\n                var specifierOrString = keyFn(args, context);\n                if (isArray(specifierOrString)) {\n                    keyFn = keyArgsFnFromSpecifier(specifierOrString);\n                }\n                else {\n                    storeFieldName = specifierOrString || fieldName;\n                    break;\n                }\n            }\n        }\n        if (storeFieldName === void 0) {\n            storeFieldName = fieldSpec.field\n                ? storeKeyNameFromField(fieldSpec.field, fieldSpec.variables)\n                : getStoreKeyName(fieldName, argsFromFieldSpecifier(fieldSpec));\n        }\n        if (storeFieldName === false) {\n            return fieldName;\n        }\n        return fieldName === fieldNameFromStoreName(storeFieldName)\n            ? storeFieldName\n            : fieldName + \":\" + storeFieldName;\n    };\n    Policies.prototype.readField = function (options, context) {\n        var objectOrReference = options.from;\n        if (!objectOrReference)\n            return;\n        var nameOrField = options.field || options.fieldName;\n        if (!nameOrField)\n            return;\n        if (options.typename === void 0) {\n            var typename = context.store.getFieldValue(objectOrReference, \"__typename\");\n            if (typename)\n                options.typename = typename;\n        }\n        var storeFieldName = this.getStoreFieldName(options);\n        var fieldName = fieldNameFromStoreName(storeFieldName);\n        var existing = context.store.getFieldValue(objectOrReference, storeFieldName);\n        var policy = this.getFieldPolicy(options.typename, fieldName, false);\n        var read = policy && policy.read;\n        if (read) {\n            var readOptions = makeFieldFunctionOptions(this, objectOrReference, options, context, context.store.getStorage(isReference(objectOrReference)\n                ? objectOrReference.__ref\n                : objectOrReference, storeFieldName));\n            return cacheSlot.withValue(this.cache, read, [existing, readOptions]);\n        }\n        return existing;\n    };\n    Policies.prototype.getReadFunction = function (typename, fieldName) {\n        var policy = this.getFieldPolicy(typename, fieldName, false);\n        return policy && policy.read;\n    };\n    Policies.prototype.getMergeFunction = function (parentTypename, fieldName, childTypename) {\n        var policy = this.getFieldPolicy(parentTypename, fieldName, false);\n        var merge = policy && policy.merge;\n        if (!merge && childTypename) {\n            policy = this.getTypePolicy(childTypename);\n            merge = policy && policy.merge;\n        }\n        return merge;\n    };\n    Policies.prototype.runMergeFunction = function (existing, incoming, _a, context, storage) {\n        var field = _a.field, typename = _a.typename, merge = _a.merge;\n        if (merge === mergeTrueFn) {\n            return makeMergeObjectsFunction(context.store)(existing, incoming);\n        }\n        if (merge === mergeFalseFn) {\n            return incoming;\n        }\n        if (context.overwrite) {\n            existing = void 0;\n        }\n        return merge(existing, incoming, makeFieldFunctionOptions(this, void 0, { typename: typename, fieldName: field.name.value, field: field, variables: context.variables }, context, storage || Object.create(null)));\n    };\n    return Policies;\n}());\nexport { Policies };\nfunction makeFieldFunctionOptions(policies, objectOrReference, fieldSpec, context, storage) {\n    var storeFieldName = policies.getStoreFieldName(fieldSpec);\n    var fieldName = fieldNameFromStoreName(storeFieldName);\n    var variables = fieldSpec.variables || context.variables;\n    var _a = context.store, toReference = _a.toReference, canRead = _a.canRead;\n    return {\n        args: argsFromFieldSpecifier(fieldSpec),\n        field: fieldSpec.field || null,\n        fieldName: fieldName,\n        storeFieldName: storeFieldName,\n        variables: variables,\n        isReference: isReference,\n        toReference: toReference,\n        storage: storage,\n        cache: policies.cache,\n        canRead: canRead,\n        readField: function () {\n            return policies.readField(normalizeReadFieldOptions(arguments, objectOrReference, variables), context);\n        },\n        mergeObjects: makeMergeObjectsFunction(context.store),\n    };\n}\nexport function normalizeReadFieldOptions(readFieldArgs, objectOrReference, variables) {\n    var fieldNameOrOptions = readFieldArgs[0], from = readFieldArgs[1], argc = readFieldArgs.length;\n    var options;\n    if (typeof fieldNameOrOptions === \"string\") {\n        options = {\n            fieldName: fieldNameOrOptions,\n            from: argc > 1 ? from : objectOrReference,\n        };\n    }\n    else {\n        options = __assign({}, fieldNameOrOptions);\n        if (!hasOwn.call(options, \"from\")) {\n            options.from = objectOrReference;\n        }\n    }\n    if (__DEV__ && options.from === void 0) {\n        __DEV__ && invariant.warn(\"Undefined 'from' passed to readField with arguments \".concat(stringifyForDisplay(Array.from(readFieldArgs))));\n    }\n    if (void 0 === options.variables) {\n        options.variables = variables;\n    }\n    return options;\n}\nfunction makeMergeObjectsFunction(store) {\n    return function mergeObjects(existing, incoming) {\n        if (isArray(existing) || isArray(incoming)) {\n            throw __DEV__ ? new InvariantError(\"Cannot automatically merge arrays\") : new InvariantError(4);\n        }\n        if (isNonNullObject(existing) &&\n            isNonNullObject(incoming)) {\n            var eType = store.getFieldValue(existing, \"__typename\");\n            var iType = store.getFieldValue(incoming, \"__typename\");\n            var typesDiffer = eType && iType && eType !== iType;\n            if (typesDiffer) {\n                return incoming;\n            }\n            if (isReference(existing) &&\n                storeValueIsStoreObject(incoming)) {\n                store.merge(existing.__ref, incoming);\n                return existing;\n            }\n            if (storeValueIsStoreObject(existing) &&\n                isReference(incoming)) {\n                store.merge(existing, incoming.__ref);\n                return incoming;\n            }\n            if (storeValueIsStoreObject(existing) &&\n                storeValueIsStoreObject(incoming)) {\n                return __assign(__assign({}, existing), incoming);\n            }\n        }\n        return incoming;\n    };\n}\n//# sourceMappingURL=policies.js.map","import { __assign } from \"tslib\";\nimport { invariant, InvariantError } from '../../utilities/globals';\nimport { equal } from '@wry/equality';\nimport { Trie } from '@wry/trie';\nimport { createFragmentMap, getFragmentFromSelection, getDefaultValues, getFragmentDefinitions, getOperationDefinition, getTypenameFromResult, makeReference, isField, resultKeyNameFromField, isReference, shouldInclude, cloneDeep, addTypenameToDocument, isNonEmptyArray, argumentsObjectFromField, } from '../../utilities';\nimport { makeProcessedFieldsMerger, fieldNameFromStoreName, storeValueIsStoreObject, isArray } from './helpers';\nimport { canonicalStringify } from './object-canon';\nimport { normalizeReadFieldOptions } from './policies';\n;\nfunction getContextFlavor(context, clientOnly, deferred) {\n    var key = \"\".concat(clientOnly).concat(deferred);\n    var flavored = context.flavors.get(key);\n    if (!flavored) {\n        context.flavors.set(key, flavored = (context.clientOnly === clientOnly &&\n            context.deferred === deferred) ? context : __assign(__assign({}, context), { clientOnly: clientOnly, deferred: deferred }));\n    }\n    return flavored;\n}\nvar StoreWriter = (function () {\n    function StoreWriter(cache, reader) {\n        this.cache = cache;\n        this.reader = reader;\n    }\n    StoreWriter.prototype.writeToStore = function (store, _a) {\n        var _this = this;\n        var query = _a.query, result = _a.result, dataId = _a.dataId, variables = _a.variables, overwrite = _a.overwrite;\n        var operationDefinition = getOperationDefinition(query);\n        var merger = makeProcessedFieldsMerger();\n        variables = __assign(__assign({}, getDefaultValues(operationDefinition)), variables);\n        var context = {\n            store: store,\n            written: Object.create(null),\n            merge: function (existing, incoming) {\n                return merger.merge(existing, incoming);\n            },\n            variables: variables,\n            varString: canonicalStringify(variables),\n            fragmentMap: createFragmentMap(getFragmentDefinitions(query)),\n            overwrite: !!overwrite,\n            incomingById: new Map,\n            clientOnly: false,\n            deferred: false,\n            flavors: new Map,\n        };\n        var ref = this.processSelectionSet({\n            result: result || Object.create(null),\n            dataId: dataId,\n            selectionSet: operationDefinition.selectionSet,\n            mergeTree: { map: new Map },\n            context: context,\n        });\n        if (!isReference(ref)) {\n            throw __DEV__ ? new InvariantError(\"Could not identify object \".concat(JSON.stringify(result))) : new InvariantError(6);\n        }\n        context.incomingById.forEach(function (_a, dataId) {\n            var storeObject = _a.storeObject, mergeTree = _a.mergeTree, fieldNodeSet = _a.fieldNodeSet;\n            var entityRef = makeReference(dataId);\n            if (mergeTree && mergeTree.map.size) {\n                var applied = _this.applyMerges(mergeTree, entityRef, storeObject, context);\n                if (isReference(applied)) {\n                    return;\n                }\n                storeObject = applied;\n            }\n            if (__DEV__ && !context.overwrite) {\n                var fieldsWithSelectionSets_1 = Object.create(null);\n                fieldNodeSet.forEach(function (field) {\n                    if (field.selectionSet) {\n                        fieldsWithSelectionSets_1[field.name.value] = true;\n                    }\n                });\n                var hasSelectionSet_1 = function (storeFieldName) {\n                    return fieldsWithSelectionSets_1[fieldNameFromStoreName(storeFieldName)] === true;\n                };\n                var hasMergeFunction_1 = function (storeFieldName) {\n                    var childTree = mergeTree && mergeTree.map.get(storeFieldName);\n                    return Boolean(childTree && childTree.info && childTree.info.merge);\n                };\n                Object.keys(storeObject).forEach(function (storeFieldName) {\n                    if (hasSelectionSet_1(storeFieldName) &&\n                        !hasMergeFunction_1(storeFieldName)) {\n                        warnAboutDataLoss(entityRef, storeObject, storeFieldName, context.store);\n                    }\n                });\n            }\n            store.merge(dataId, storeObject);\n        });\n        store.retain(ref.__ref);\n        return ref;\n    };\n    StoreWriter.prototype.processSelectionSet = function (_a) {\n        var _this = this;\n        var dataId = _a.dataId, result = _a.result, selectionSet = _a.selectionSet, context = _a.context, mergeTree = _a.mergeTree;\n        var policies = this.cache.policies;\n        var incoming = Object.create(null);\n        var typename = (dataId && policies.rootTypenamesById[dataId]) ||\n            getTypenameFromResult(result, selectionSet, context.fragmentMap) ||\n            (dataId && context.store.get(dataId, \"__typename\"));\n        if (\"string\" === typeof typename) {\n            incoming.__typename = typename;\n        }\n        var readField = function () {\n            var options = normalizeReadFieldOptions(arguments, incoming, context.variables);\n            if (isReference(options.from)) {\n                var info = context.incomingById.get(options.from.__ref);\n                if (info) {\n                    var result_1 = policies.readField(__assign(__assign({}, options), { from: info.storeObject }), context);\n                    if (result_1 !== void 0) {\n                        return result_1;\n                    }\n                }\n            }\n            return policies.readField(options, context);\n        };\n        var fieldNodeSet = new Set();\n        this.flattenFields(selectionSet, result, context, typename).forEach(function (context, field) {\n            var _a;\n            var resultFieldKey = resultKeyNameFromField(field);\n            var value = result[resultFieldKey];\n            fieldNodeSet.add(field);\n            if (value !== void 0) {\n                var storeFieldName = policies.getStoreFieldName({\n                    typename: typename,\n                    fieldName: field.name.value,\n                    field: field,\n                    variables: context.variables,\n                });\n                var childTree = getChildMergeTree(mergeTree, storeFieldName);\n                var incomingValue = _this.processFieldValue(value, field, field.selectionSet\n                    ? getContextFlavor(context, false, false)\n                    : context, childTree);\n                var childTypename = void 0;\n                if (field.selectionSet &&\n                    (isReference(incomingValue) ||\n                        storeValueIsStoreObject(incomingValue))) {\n                    childTypename = readField(\"__typename\", incomingValue);\n                }\n                var merge = policies.getMergeFunction(typename, field.name.value, childTypename);\n                if (merge) {\n                    childTree.info = {\n                        field: field,\n                        typename: typename,\n                        merge: merge,\n                    };\n                }\n                else {\n                    maybeRecycleChildMergeTree(mergeTree, storeFieldName);\n                }\n                incoming = context.merge(incoming, (_a = {},\n                    _a[storeFieldName] = incomingValue,\n                    _a));\n            }\n            else if (__DEV__ &&\n                !context.clientOnly &&\n                !context.deferred &&\n                !addTypenameToDocument.added(field) &&\n                !policies.getReadFunction(typename, field.name.value)) {\n                __DEV__ && invariant.error(\"Missing field '\".concat(resultKeyNameFromField(field), \"' while writing result \").concat(JSON.stringify(result, null, 2)).substring(0, 1000));\n            }\n        });\n        try {\n            var _b = policies.identify(result, {\n                typename: typename,\n                selectionSet: selectionSet,\n                fragmentMap: context.fragmentMap,\n                storeObject: incoming,\n                readField: readField,\n            }), id = _b[0], keyObject = _b[1];\n            dataId = dataId || id;\n            if (keyObject) {\n                incoming = context.merge(incoming, keyObject);\n            }\n        }\n        catch (e) {\n            if (!dataId)\n                throw e;\n        }\n        if (\"string\" === typeof dataId) {\n            var dataRef = makeReference(dataId);\n            var sets = context.written[dataId] || (context.written[dataId] = []);\n            if (sets.indexOf(selectionSet) >= 0)\n                return dataRef;\n            sets.push(selectionSet);\n            if (this.reader && this.reader.isFresh(result, dataRef, selectionSet, context)) {\n                return dataRef;\n            }\n            var previous_1 = context.incomingById.get(dataId);\n            if (previous_1) {\n                previous_1.storeObject = context.merge(previous_1.storeObject, incoming);\n                previous_1.mergeTree = mergeMergeTrees(previous_1.mergeTree, mergeTree);\n                fieldNodeSet.forEach(function (field) { return previous_1.fieldNodeSet.add(field); });\n            }\n            else {\n                context.incomingById.set(dataId, {\n                    storeObject: incoming,\n                    mergeTree: mergeTreeIsEmpty(mergeTree) ? void 0 : mergeTree,\n                    fieldNodeSet: fieldNodeSet,\n                });\n            }\n            return dataRef;\n        }\n        return incoming;\n    };\n    StoreWriter.prototype.processFieldValue = function (value, field, context, mergeTree) {\n        var _this = this;\n        if (!field.selectionSet || value === null) {\n            return __DEV__ ? cloneDeep(value) : value;\n        }\n        if (isArray(value)) {\n            return value.map(function (item, i) {\n                var value = _this.processFieldValue(item, field, context, getChildMergeTree(mergeTree, i));\n                maybeRecycleChildMergeTree(mergeTree, i);\n                return value;\n            });\n        }\n        return this.processSelectionSet({\n            result: value,\n            selectionSet: field.selectionSet,\n            context: context,\n            mergeTree: mergeTree,\n        });\n    };\n    StoreWriter.prototype.flattenFields = function (selectionSet, result, context, typename) {\n        if (typename === void 0) { typename = getTypenameFromResult(result, selectionSet, context.fragmentMap); }\n        var fieldMap = new Map();\n        var policies = this.cache.policies;\n        var limitingTrie = new Trie(false);\n        (function flatten(selectionSet, inheritedContext) {\n            var visitedNode = limitingTrie.lookup(selectionSet, inheritedContext.clientOnly, inheritedContext.deferred);\n            if (visitedNode.visited)\n                return;\n            visitedNode.visited = true;\n            selectionSet.selections.forEach(function (selection) {\n                if (!shouldInclude(selection, context.variables))\n                    return;\n                var clientOnly = inheritedContext.clientOnly, deferred = inheritedContext.deferred;\n                if (!(clientOnly && deferred) &&\n                    isNonEmptyArray(selection.directives)) {\n                    selection.directives.forEach(function (dir) {\n                        var name = dir.name.value;\n                        if (name === \"client\")\n                            clientOnly = true;\n                        if (name === \"defer\") {\n                            var args = argumentsObjectFromField(dir, context.variables);\n                            if (!args || args.if !== false) {\n                                deferred = true;\n                            }\n                        }\n                    });\n                }\n                if (isField(selection)) {\n                    var existing = fieldMap.get(selection);\n                    if (existing) {\n                        clientOnly = clientOnly && existing.clientOnly;\n                        deferred = deferred && existing.deferred;\n                    }\n                    fieldMap.set(selection, getContextFlavor(context, clientOnly, deferred));\n                }\n                else {\n                    var fragment = getFragmentFromSelection(selection, context.fragmentMap);\n                    if (fragment &&\n                        policies.fragmentMatches(fragment, typename, result, context.variables)) {\n                        flatten(fragment.selectionSet, getContextFlavor(context, clientOnly, deferred));\n                    }\n                }\n            });\n        })(selectionSet, context);\n        return fieldMap;\n    };\n    StoreWriter.prototype.applyMerges = function (mergeTree, existing, incoming, context, getStorageArgs) {\n        var _a;\n        var _this = this;\n        if (mergeTree.map.size && !isReference(incoming)) {\n            var e_1 = (!isArray(incoming) &&\n                (isReference(existing) || storeValueIsStoreObject(existing))) ? existing : void 0;\n            var i_1 = incoming;\n            if (e_1 && !getStorageArgs) {\n                getStorageArgs = [isReference(e_1) ? e_1.__ref : e_1];\n            }\n            var changedFields_1;\n            var getValue_1 = function (from, name) {\n                return isArray(from)\n                    ? (typeof name === \"number\" ? from[name] : void 0)\n                    : context.store.getFieldValue(from, String(name));\n            };\n            mergeTree.map.forEach(function (childTree, storeFieldName) {\n                var eVal = getValue_1(e_1, storeFieldName);\n                var iVal = getValue_1(i_1, storeFieldName);\n                if (void 0 === iVal)\n                    return;\n                if (getStorageArgs) {\n                    getStorageArgs.push(storeFieldName);\n                }\n                var aVal = _this.applyMerges(childTree, eVal, iVal, context, getStorageArgs);\n                if (aVal !== iVal) {\n                    changedFields_1 = changedFields_1 || new Map;\n                    changedFields_1.set(storeFieldName, aVal);\n                }\n                if (getStorageArgs) {\n                    invariant(getStorageArgs.pop() === storeFieldName);\n                }\n            });\n            if (changedFields_1) {\n                incoming = (isArray(i_1) ? i_1.slice(0) : __assign({}, i_1));\n                changedFields_1.forEach(function (value, name) {\n                    incoming[name] = value;\n                });\n            }\n        }\n        if (mergeTree.info) {\n            return this.cache.policies.runMergeFunction(existing, incoming, mergeTree.info, context, getStorageArgs && (_a = context.store).getStorage.apply(_a, getStorageArgs));\n        }\n        return incoming;\n    };\n    return StoreWriter;\n}());\nexport { StoreWriter };\nvar emptyMergeTreePool = [];\nfunction getChildMergeTree(_a, name) {\n    var map = _a.map;\n    if (!map.has(name)) {\n        map.set(name, emptyMergeTreePool.pop() || { map: new Map });\n    }\n    return map.get(name);\n}\nfunction mergeMergeTrees(left, right) {\n    if (left === right || !right || mergeTreeIsEmpty(right))\n        return left;\n    if (!left || mergeTreeIsEmpty(left))\n        return right;\n    var info = left.info && right.info ? __assign(__assign({}, left.info), right.info) : left.info || right.info;\n    var needToMergeMaps = left.map.size && right.map.size;\n    var map = needToMergeMaps ? new Map :\n        left.map.size ? left.map : right.map;\n    var merged = { info: info, map: map };\n    if (needToMergeMaps) {\n        var remainingRightKeys_1 = new Set(right.map.keys());\n        left.map.forEach(function (leftTree, key) {\n            merged.map.set(key, mergeMergeTrees(leftTree, right.map.get(key)));\n            remainingRightKeys_1.delete(key);\n        });\n        remainingRightKeys_1.forEach(function (key) {\n            merged.map.set(key, mergeMergeTrees(right.map.get(key), left.map.get(key)));\n        });\n    }\n    return merged;\n}\nfunction mergeTreeIsEmpty(tree) {\n    return !tree || !(tree.info || tree.map.size);\n}\nfunction maybeRecycleChildMergeTree(_a, name) {\n    var map = _a.map;\n    var childTree = map.get(name);\n    if (childTree && mergeTreeIsEmpty(childTree)) {\n        emptyMergeTreePool.push(childTree);\n        map.delete(name);\n    }\n}\nvar warnings = new Set();\nfunction warnAboutDataLoss(existingRef, incomingObj, storeFieldName, store) {\n    var getChild = function (objOrRef) {\n        var child = store.getFieldValue(objOrRef, storeFieldName);\n        return typeof child === \"object\" && child;\n    };\n    var existing = getChild(existingRef);\n    if (!existing)\n        return;\n    var incoming = getChild(incomingObj);\n    if (!incoming)\n        return;\n    if (isReference(existing))\n        return;\n    if (equal(existing, incoming))\n        return;\n    if (Object.keys(existing).every(function (key) { return store.getFieldValue(incoming, key) !== void 0; })) {\n        return;\n    }\n    var parentType = store.getFieldValue(existingRef, \"__typename\") ||\n        store.getFieldValue(incomingObj, \"__typename\");\n    var fieldName = fieldNameFromStoreName(storeFieldName);\n    var typeDotName = \"\".concat(parentType, \".\").concat(fieldName);\n    if (warnings.has(typeDotName))\n        return;\n    warnings.add(typeDotName);\n    var childTypenames = [];\n    if (!isArray(existing) &&\n        !isArray(incoming)) {\n        [existing, incoming].forEach(function (child) {\n            var typename = store.getFieldValue(child, \"__typename\");\n            if (typeof typename === \"string\" &&\n                !childTypenames.includes(typename)) {\n                childTypenames.push(typename);\n            }\n        });\n    }\n    __DEV__ && invariant.warn(\"Cache data may be lost when replacing the \".concat(fieldName, \" field of a \").concat(parentType, \" object.\\n\\nTo address this problem (which is not a bug in Apollo Client), \").concat(childTypenames.length\n        ? \"either ensure all objects of type \" +\n            childTypenames.join(\" and \") + \" have an ID or a custom merge function, or \"\n        : \"\", \"define a custom merge function for the \").concat(typeDotName, \" field, so InMemoryCache can safely merge these objects:\\n\\n  existing: \").concat(JSON.stringify(existing).slice(0, 1000), \"\\n  incoming: \").concat(JSON.stringify(incoming).slice(0, 1000), \"\\n\\nFor more information about these options, please refer to the documentation:\\n\\n  * Ensuring entity objects have IDs: https://go.apollo.dev/c/generating-unique-identifiers\\n  * Defining custom merge functions: https://go.apollo.dev/c/merging-non-normalized-objects\\n\"));\n}\n//# sourceMappingURL=writeToStore.js.map","import { __assign, __extends } from \"tslib\";\nimport { invariant } from '../../utilities/globals';\nimport './fixPolyfills';\nimport { wrap } from 'optimism';\nimport { equal } from '@wry/equality';\nimport { ApolloCache } from '../core/cache';\nimport { MissingFieldError } from '../core/types/common';\nimport { addTypenameToDocument, isReference, } from '../../utilities';\nimport { StoreReader } from './readFromStore';\nimport { StoreWriter } from './writeToStore';\nimport { EntityStore, supportsResultCaching } from './entityStore';\nimport { makeVar, forgetCache, recallCache } from './reactiveVars';\nimport { Policies } from './policies';\nimport { hasOwn, normalizeConfig, shouldCanonizeResults } from './helpers';\nimport { canonicalStringify } from './object-canon';\nvar InMemoryCache = (function (_super) {\n    __extends(InMemoryCache, _super);\n    function InMemoryCache(config) {\n        if (config === void 0) { config = {}; }\n        var _this = _super.call(this) || this;\n        _this.watches = new Set();\n        _this.typenameDocumentCache = new Map();\n        _this.makeVar = makeVar;\n        _this.txCount = 0;\n        _this.config = normalizeConfig(config);\n        _this.addTypename = !!_this.config.addTypename;\n        _this.policies = new Policies({\n            cache: _this,\n            dataIdFromObject: _this.config.dataIdFromObject,\n            possibleTypes: _this.config.possibleTypes,\n            typePolicies: _this.config.typePolicies,\n        });\n        _this.init();\n        return _this;\n    }\n    InMemoryCache.prototype.init = function () {\n        var rootStore = this.data = new EntityStore.Root({\n            policies: this.policies,\n            resultCaching: this.config.resultCaching,\n        });\n        this.optimisticData = rootStore.stump;\n        this.resetResultCache();\n    };\n    InMemoryCache.prototype.resetResultCache = function (resetResultIdentities) {\n        var _this = this;\n        var previousReader = this.storeReader;\n        this.storeWriter = new StoreWriter(this, this.storeReader = new StoreReader({\n            cache: this,\n            addTypename: this.addTypename,\n            resultCacheMaxSize: this.config.resultCacheMaxSize,\n            canonizeResults: shouldCanonizeResults(this.config),\n            canon: resetResultIdentities\n                ? void 0\n                : previousReader && previousReader.canon,\n        }));\n        this.maybeBroadcastWatch = wrap(function (c, options) {\n            return _this.broadcastWatch(c, options);\n        }, {\n            max: this.config.resultCacheMaxSize,\n            makeCacheKey: function (c) {\n                var store = c.optimistic ? _this.optimisticData : _this.data;\n                if (supportsResultCaching(store)) {\n                    var optimistic = c.optimistic, rootId = c.rootId, variables = c.variables;\n                    return store.makeCacheKey(c.query, c.callback, canonicalStringify({ optimistic: optimistic, rootId: rootId, variables: variables }));\n                }\n            }\n        });\n        new Set([\n            this.data.group,\n            this.optimisticData.group,\n        ]).forEach(function (group) { return group.resetCaching(); });\n    };\n    InMemoryCache.prototype.restore = function (data) {\n        this.init();\n        if (data)\n            this.data.replace(data);\n        return this;\n    };\n    InMemoryCache.prototype.extract = function (optimistic) {\n        if (optimistic === void 0) { optimistic = false; }\n        return (optimistic ? this.optimisticData : this.data).extract();\n    };\n    InMemoryCache.prototype.read = function (options) {\n        var _a = options.returnPartialData, returnPartialData = _a === void 0 ? false : _a;\n        try {\n            return this.storeReader.diffQueryAgainstStore(__assign(__assign({}, options), { store: options.optimistic ? this.optimisticData : this.data, config: this.config, returnPartialData: returnPartialData })).result || null;\n        }\n        catch (e) {\n            if (e instanceof MissingFieldError) {\n                return null;\n            }\n            throw e;\n        }\n    };\n    InMemoryCache.prototype.write = function (options) {\n        try {\n            ++this.txCount;\n            return this.storeWriter.writeToStore(this.data, options);\n        }\n        finally {\n            if (!--this.txCount && options.broadcast !== false) {\n                this.broadcastWatches();\n            }\n        }\n    };\n    InMemoryCache.prototype.modify = function (options) {\n        if (hasOwn.call(options, \"id\") && !options.id) {\n            return false;\n        }\n        var store = options.optimistic\n            ? this.optimisticData\n            : this.data;\n        try {\n            ++this.txCount;\n            return store.modify(options.id || \"ROOT_QUERY\", options.fields);\n        }\n        finally {\n            if (!--this.txCount && options.broadcast !== false) {\n                this.broadcastWatches();\n            }\n        }\n    };\n    InMemoryCache.prototype.diff = function (options) {\n        return this.storeReader.diffQueryAgainstStore(__assign(__assign({}, options), { store: options.optimistic ? this.optimisticData : this.data, rootId: options.id || \"ROOT_QUERY\", config: this.config }));\n    };\n    InMemoryCache.prototype.watch = function (watch) {\n        var _this = this;\n        if (!this.watches.size) {\n            recallCache(this);\n        }\n        this.watches.add(watch);\n        if (watch.immediate) {\n            this.maybeBroadcastWatch(watch);\n        }\n        return function () {\n            if (_this.watches.delete(watch) && !_this.watches.size) {\n                forgetCache(_this);\n            }\n            _this.maybeBroadcastWatch.forget(watch);\n        };\n    };\n    InMemoryCache.prototype.gc = function (options) {\n        canonicalStringify.reset();\n        var ids = this.optimisticData.gc();\n        if (options && !this.txCount) {\n            if (options.resetResultCache) {\n                this.resetResultCache(options.resetResultIdentities);\n            }\n            else if (options.resetResultIdentities) {\n                this.storeReader.resetCanon();\n            }\n        }\n        return ids;\n    };\n    InMemoryCache.prototype.retain = function (rootId, optimistic) {\n        return (optimistic ? this.optimisticData : this.data).retain(rootId);\n    };\n    InMemoryCache.prototype.release = function (rootId, optimistic) {\n        return (optimistic ? this.optimisticData : this.data).release(rootId);\n    };\n    InMemoryCache.prototype.identify = function (object) {\n        if (isReference(object))\n            return object.__ref;\n        try {\n            return this.policies.identify(object)[0];\n        }\n        catch (e) {\n            __DEV__ && invariant.warn(e);\n        }\n    };\n    InMemoryCache.prototype.evict = function (options) {\n        if (!options.id) {\n            if (hasOwn.call(options, \"id\")) {\n                return false;\n            }\n            options = __assign(__assign({}, options), { id: \"ROOT_QUERY\" });\n        }\n        try {\n            ++this.txCount;\n            return this.optimisticData.evict(options, this.data);\n        }\n        finally {\n            if (!--this.txCount && options.broadcast !== false) {\n                this.broadcastWatches();\n            }\n        }\n    };\n    InMemoryCache.prototype.reset = function (options) {\n        var _this = this;\n        this.init();\n        canonicalStringify.reset();\n        if (options && options.discardWatches) {\n            this.watches.forEach(function (watch) { return _this.maybeBroadcastWatch.forget(watch); });\n            this.watches.clear();\n            forgetCache(this);\n        }\n        else {\n            this.broadcastWatches();\n        }\n        return Promise.resolve();\n    };\n    InMemoryCache.prototype.removeOptimistic = function (idToRemove) {\n        var newOptimisticData = this.optimisticData.removeLayer(idToRemove);\n        if (newOptimisticData !== this.optimisticData) {\n            this.optimisticData = newOptimisticData;\n            this.broadcastWatches();\n        }\n    };\n    InMemoryCache.prototype.batch = function (options) {\n        var _this = this;\n        var update = options.update, _a = options.optimistic, optimistic = _a === void 0 ? true : _a, removeOptimistic = options.removeOptimistic, onWatchUpdated = options.onWatchUpdated;\n        var updateResult;\n        var perform = function (layer) {\n            var _a = _this, data = _a.data, optimisticData = _a.optimisticData;\n            ++_this.txCount;\n            if (layer) {\n                _this.data = _this.optimisticData = layer;\n            }\n            try {\n                return updateResult = update(_this);\n            }\n            finally {\n                --_this.txCount;\n                _this.data = data;\n                _this.optimisticData = optimisticData;\n            }\n        };\n        var alreadyDirty = new Set();\n        if (onWatchUpdated && !this.txCount) {\n            this.broadcastWatches(__assign(__assign({}, options), { onWatchUpdated: function (watch) {\n                    alreadyDirty.add(watch);\n                    return false;\n                } }));\n        }\n        if (typeof optimistic === 'string') {\n            this.optimisticData = this.optimisticData.addLayer(optimistic, perform);\n        }\n        else if (optimistic === false) {\n            perform(this.data);\n        }\n        else {\n            perform();\n        }\n        if (typeof removeOptimistic === \"string\") {\n            this.optimisticData = this.optimisticData.removeLayer(removeOptimistic);\n        }\n        if (onWatchUpdated && alreadyDirty.size) {\n            this.broadcastWatches(__assign(__assign({}, options), { onWatchUpdated: function (watch, diff) {\n                    var result = onWatchUpdated.call(this, watch, diff);\n                    if (result !== false) {\n                        alreadyDirty.delete(watch);\n                    }\n                    return result;\n                } }));\n            if (alreadyDirty.size) {\n                alreadyDirty.forEach(function (watch) { return _this.maybeBroadcastWatch.dirty(watch); });\n            }\n        }\n        else {\n            this.broadcastWatches(options);\n        }\n        return updateResult;\n    };\n    InMemoryCache.prototype.performTransaction = function (update, optimisticId) {\n        return this.batch({\n            update: update,\n            optimistic: optimisticId || (optimisticId !== null),\n        });\n    };\n    InMemoryCache.prototype.transformDocument = function (document) {\n        if (this.addTypename) {\n            var result = this.typenameDocumentCache.get(document);\n            if (!result) {\n                result = addTypenameToDocument(document);\n                this.typenameDocumentCache.set(document, result);\n                this.typenameDocumentCache.set(result, result);\n            }\n            return result;\n        }\n        return document;\n    };\n    InMemoryCache.prototype.broadcastWatches = function (options) {\n        var _this = this;\n        if (!this.txCount) {\n            this.watches.forEach(function (c) { return _this.maybeBroadcastWatch(c, options); });\n        }\n    };\n    InMemoryCache.prototype.broadcastWatch = function (c, options) {\n        var lastDiff = c.lastDiff;\n        var diff = this.diff(c);\n        if (options) {\n            if (c.optimistic &&\n                typeof options.optimistic === \"string\") {\n                diff.fromOptimisticTransaction = true;\n            }\n            if (options.onWatchUpdated &&\n                options.onWatchUpdated.call(this, c, diff, lastDiff) === false) {\n                return;\n            }\n        }\n        if (!lastDiff || !equal(lastDiff.result, diff.result)) {\n            c.callback(c.lastDiff = diff, lastDiff);\n        }\n    };\n    return InMemoryCache;\n}(ApolloCache));\nexport { InMemoryCache };\n//# sourceMappingURL=inMemoryCache.js.map","import { __extends } from \"tslib\";\nimport '../utilities/globals';\nimport { isNonEmptyArray } from '../utilities';\nexport function isApolloError(err) {\n    return err.hasOwnProperty('graphQLErrors');\n}\nvar generateErrorMessage = function (err) {\n    var message = '';\n    if (isNonEmptyArray(err.graphQLErrors) || isNonEmptyArray(err.clientErrors)) {\n        var errors = (err.graphQLErrors || [])\n            .concat(err.clientErrors || []);\n        errors.forEach(function (error) {\n            var errorMessage = error\n                ? error.message\n                : 'Error message not found.';\n            message += \"\".concat(errorMessage, \"\\n\");\n        });\n    }\n    if (err.networkError) {\n        message += \"\".concat(err.networkError.message, \"\\n\");\n    }\n    message = message.replace(/\\n$/, '');\n    return message;\n};\nvar ApolloError = (function (_super) {\n    __extends(ApolloError, _super);\n    function ApolloError(_a) {\n        var graphQLErrors = _a.graphQLErrors, clientErrors = _a.clientErrors, networkError = _a.networkError, errorMessage = _a.errorMessage, extraInfo = _a.extraInfo;\n        var _this = _super.call(this, errorMessage) || this;\n        _this.graphQLErrors = graphQLErrors || [];\n        _this.clientErrors = clientErrors || [];\n        _this.networkError = networkError || null;\n        _this.message = errorMessage || generateErrorMessage(_this);\n        _this.extraInfo = extraInfo;\n        _this.__proto__ = ApolloError.prototype;\n        return _this;\n    }\n    return ApolloError;\n}(Error));\nexport { ApolloError };\n//# sourceMappingURL=index.js.map","export var NetworkStatus;\n(function (NetworkStatus) {\n    NetworkStatus[NetworkStatus[\"loading\"] = 1] = \"loading\";\n    NetworkStatus[NetworkStatus[\"setVariables\"] = 2] = \"setVariables\";\n    NetworkStatus[NetworkStatus[\"fetchMore\"] = 3] = \"fetchMore\";\n    NetworkStatus[NetworkStatus[\"refetch\"] = 4] = \"refetch\";\n    NetworkStatus[NetworkStatus[\"poll\"] = 6] = \"poll\";\n    NetworkStatus[NetworkStatus[\"ready\"] = 7] = \"ready\";\n    NetworkStatus[NetworkStatus[\"error\"] = 8] = \"error\";\n})(NetworkStatus || (NetworkStatus = {}));\nexport function isNetworkRequestInFlight(networkStatus) {\n    return networkStatus ? networkStatus < 7 : false;\n}\n//# sourceMappingURL=networkStatus.js.map","import { __assign, __extends } from \"tslib\";\nimport { invariant } from '../utilities/globals';\nimport { equal } from '@wry/equality';\nimport { NetworkStatus, isNetworkRequestInFlight } from './networkStatus';\nimport { cloneDeep, compact, getOperationDefinition, Observable, iterateObserversSafely, isNonEmptyArray, fixObservableSubclass, getQueryDefinition, } from '../utilities';\nvar assign = Object.assign, hasOwnProperty = Object.hasOwnProperty;\nvar ObservableQuery = (function (_super) {\n    __extends(ObservableQuery, _super);\n    function ObservableQuery(_a) {\n        var queryManager = _a.queryManager, queryInfo = _a.queryInfo, options = _a.options;\n        var _this = _super.call(this, function (observer) {\n            try {\n                var subObserver = observer._subscription._observer;\n                if (subObserver && !subObserver.error) {\n                    subObserver.error = defaultSubscriptionObserverErrorCallback;\n                }\n            }\n            catch (_a) { }\n            var first = !_this.observers.size;\n            _this.observers.add(observer);\n            var last = _this.last;\n            if (last && last.error) {\n                observer.error && observer.error(last.error);\n            }\n            else if (last && last.result) {\n                observer.next && observer.next(last.result);\n            }\n            if (first) {\n                _this.reobserve().catch(function () { });\n            }\n            return function () {\n                if (_this.observers.delete(observer) && !_this.observers.size) {\n                    _this.tearDownQuery();\n                }\n            };\n        }) || this;\n        _this.observers = new Set();\n        _this.subscriptions = new Set();\n        _this.queryInfo = queryInfo;\n        _this.queryManager = queryManager;\n        _this.isTornDown = false;\n        var _b = queryManager.defaultOptions.watchQuery, _c = _b === void 0 ? {} : _b, _d = _c.fetchPolicy, defaultFetchPolicy = _d === void 0 ? \"cache-first\" : _d;\n        var _e = options.fetchPolicy, fetchPolicy = _e === void 0 ? defaultFetchPolicy : _e, _f = options.initialFetchPolicy, initialFetchPolicy = _f === void 0 ? (fetchPolicy === \"standby\" ? defaultFetchPolicy : fetchPolicy) : _f;\n        _this.options = __assign(__assign({}, options), { initialFetchPolicy: initialFetchPolicy, fetchPolicy: fetchPolicy });\n        _this.queryId = queryInfo.queryId || queryManager.generateQueryId();\n        var opDef = getOperationDefinition(_this.query);\n        _this.queryName = opDef && opDef.name && opDef.name.value;\n        return _this;\n    }\n    Object.defineProperty(ObservableQuery.prototype, \"query\", {\n        get: function () {\n            return this.queryManager.transform(this.options.query).document;\n        },\n        enumerable: false,\n        configurable: true\n    });\n    Object.defineProperty(ObservableQuery.prototype, \"variables\", {\n        get: function () {\n            return this.options.variables;\n        },\n        enumerable: false,\n        configurable: true\n    });\n    ObservableQuery.prototype.result = function () {\n        var _this = this;\n        return new Promise(function (resolve, reject) {\n            var observer = {\n                next: function (result) {\n                    resolve(result);\n                    _this.observers.delete(observer);\n                    if (!_this.observers.size) {\n                        _this.queryManager.removeQuery(_this.queryId);\n                    }\n                    setTimeout(function () {\n                        subscription.unsubscribe();\n                    }, 0);\n                },\n                error: reject,\n            };\n            var subscription = _this.subscribe(observer);\n        });\n    };\n    ObservableQuery.prototype.getCurrentResult = function (saveAsLastResult) {\n        if (saveAsLastResult === void 0) { saveAsLastResult = true; }\n        var lastResult = this.getLastResult(true);\n        var networkStatus = this.queryInfo.networkStatus ||\n            (lastResult && lastResult.networkStatus) ||\n            NetworkStatus.ready;\n        var result = __assign(__assign({}, lastResult), { loading: isNetworkRequestInFlight(networkStatus), networkStatus: networkStatus });\n        var _a = this.options.fetchPolicy, fetchPolicy = _a === void 0 ? \"cache-first\" : _a;\n        if (fetchPolicy === 'network-only' ||\n            fetchPolicy === 'no-cache' ||\n            fetchPolicy === 'standby' ||\n            this.queryManager.transform(this.options.query).hasForcedResolvers) {\n        }\n        else {\n            var diff = this.queryInfo.getDiff();\n            if (diff.complete || this.options.returnPartialData) {\n                result.data = diff.result;\n            }\n            if (equal(result.data, {})) {\n                result.data = void 0;\n            }\n            if (diff.complete) {\n                delete result.partial;\n                if (diff.complete &&\n                    result.networkStatus === NetworkStatus.loading &&\n                    (fetchPolicy === 'cache-first' ||\n                        fetchPolicy === 'cache-only')) {\n                    result.networkStatus = NetworkStatus.ready;\n                    result.loading = false;\n                }\n            }\n            else {\n                result.partial = true;\n            }\n            if (__DEV__ &&\n                !diff.complete &&\n                !this.options.partialRefetch &&\n                !result.loading &&\n                !result.data &&\n                !result.error) {\n                logMissingFieldErrors(diff.missing);\n            }\n        }\n        if (saveAsLastResult) {\n            this.updateLastResult(result);\n        }\n        return result;\n    };\n    ObservableQuery.prototype.isDifferentFromLastResult = function (newResult) {\n        return !this.last || !equal(this.last.result, newResult);\n    };\n    ObservableQuery.prototype.getLast = function (key, variablesMustMatch) {\n        var last = this.last;\n        if (last &&\n            last[key] &&\n            (!variablesMustMatch || equal(last.variables, this.variables))) {\n            return last[key];\n        }\n    };\n    ObservableQuery.prototype.getLastResult = function (variablesMustMatch) {\n        return this.getLast(\"result\", variablesMustMatch);\n    };\n    ObservableQuery.prototype.getLastError = function (variablesMustMatch) {\n        return this.getLast(\"error\", variablesMustMatch);\n    };\n    ObservableQuery.prototype.resetLastResults = function () {\n        delete this.last;\n        this.isTornDown = false;\n    };\n    ObservableQuery.prototype.resetQueryStoreErrors = function () {\n        this.queryManager.resetErrors(this.queryId);\n    };\n    ObservableQuery.prototype.refetch = function (variables) {\n        var _a;\n        var reobserveOptions = {\n            pollInterval: 0,\n        };\n        var fetchPolicy = this.options.fetchPolicy;\n        if (fetchPolicy === 'cache-and-network') {\n            reobserveOptions.fetchPolicy = fetchPolicy;\n        }\n        else if (fetchPolicy === 'no-cache') {\n            reobserveOptions.fetchPolicy = 'no-cache';\n        }\n        else {\n            reobserveOptions.fetchPolicy = 'network-only';\n        }\n        if (__DEV__ && variables && hasOwnProperty.call(variables, \"variables\")) {\n            var queryDef = getQueryDefinition(this.query);\n            var vars = queryDef.variableDefinitions;\n            if (!vars || !vars.some(function (v) { return v.variable.name.value === \"variables\"; })) {\n                __DEV__ && invariant.warn(\"Called refetch(\".concat(JSON.stringify(variables), \") for query \").concat(((_a = queryDef.name) === null || _a === void 0 ? void 0 : _a.value) || JSON.stringify(queryDef), \", which does not declare a $variables variable.\\nDid you mean to call refetch(variables) instead of refetch({ variables })?\"));\n            }\n        }\n        if (variables && !equal(this.options.variables, variables)) {\n            reobserveOptions.variables = this.options.variables = __assign(__assign({}, this.options.variables), variables);\n        }\n        this.queryInfo.resetLastWrite();\n        return this.reobserve(reobserveOptions, NetworkStatus.refetch);\n    };\n    ObservableQuery.prototype.fetchMore = function (fetchMoreOptions) {\n        var _this = this;\n        var combinedOptions = __assign(__assign({}, (fetchMoreOptions.query ? fetchMoreOptions : __assign(__assign(__assign(__assign({}, this.options), { query: this.query }), fetchMoreOptions), { variables: __assign(__assign({}, this.options.variables), fetchMoreOptions.variables) }))), { fetchPolicy: \"no-cache\" });\n        var qid = this.queryManager.generateQueryId();\n        var queryInfo = this.queryInfo;\n        var originalNetworkStatus = queryInfo.networkStatus;\n        queryInfo.networkStatus = NetworkStatus.fetchMore;\n        if (combinedOptions.notifyOnNetworkStatusChange) {\n            this.observe();\n        }\n        var updatedQuerySet = new Set();\n        return this.queryManager.fetchQuery(qid, combinedOptions, NetworkStatus.fetchMore).then(function (fetchMoreResult) {\n            _this.queryManager.removeQuery(qid);\n            if (queryInfo.networkStatus === NetworkStatus.fetchMore) {\n                queryInfo.networkStatus = originalNetworkStatus;\n            }\n            _this.queryManager.cache.batch({\n                update: function (cache) {\n                    var updateQuery = fetchMoreOptions.updateQuery;\n                    if (updateQuery) {\n                        cache.updateQuery({\n                            query: _this.query,\n                            variables: _this.variables,\n                            returnPartialData: true,\n                            optimistic: false,\n                        }, function (previous) { return updateQuery(previous, {\n                            fetchMoreResult: fetchMoreResult.data,\n                            variables: combinedOptions.variables,\n                        }); });\n                    }\n                    else {\n                        cache.writeQuery({\n                            query: combinedOptions.query,\n                            variables: combinedOptions.variables,\n                            data: fetchMoreResult.data,\n                        });\n                    }\n                },\n                onWatchUpdated: function (watch) {\n                    updatedQuerySet.add(watch.query);\n                },\n            });\n            return fetchMoreResult;\n        }).finally(function () {\n            if (!updatedQuerySet.has(_this.query)) {\n                reobserveCacheFirst(_this);\n            }\n        });\n    };\n    ObservableQuery.prototype.subscribeToMore = function (options) {\n        var _this = this;\n        var subscription = this.queryManager\n            .startGraphQLSubscription({\n            query: options.document,\n            variables: options.variables,\n            context: options.context,\n        })\n            .subscribe({\n            next: function (subscriptionData) {\n                var updateQuery = options.updateQuery;\n                if (updateQuery) {\n                    _this.updateQuery(function (previous, _a) {\n                        var variables = _a.variables;\n                        return updateQuery(previous, {\n                            subscriptionData: subscriptionData,\n                            variables: variables,\n                        });\n                    });\n                }\n            },\n            error: function (err) {\n                if (options.onError) {\n                    options.onError(err);\n                    return;\n                }\n                __DEV__ && invariant.error('Unhandled GraphQL subscription error', err);\n            },\n        });\n        this.subscriptions.add(subscription);\n        return function () {\n            if (_this.subscriptions.delete(subscription)) {\n                subscription.unsubscribe();\n            }\n        };\n    };\n    ObservableQuery.prototype.setOptions = function (newOptions) {\n        return this.reobserve(newOptions);\n    };\n    ObservableQuery.prototype.setVariables = function (variables) {\n        if (equal(this.variables, variables)) {\n            return this.observers.size\n                ? this.result()\n                : Promise.resolve();\n        }\n        this.options.variables = variables;\n        if (!this.observers.size) {\n            return Promise.resolve();\n        }\n        return this.reobserve({\n            fetchPolicy: this.options.initialFetchPolicy,\n            variables: variables,\n        }, NetworkStatus.setVariables);\n    };\n    ObservableQuery.prototype.updateQuery = function (mapFn) {\n        var queryManager = this.queryManager;\n        var result = queryManager.cache.diff({\n            query: this.options.query,\n            variables: this.variables,\n            returnPartialData: true,\n            optimistic: false,\n        }).result;\n        var newResult = mapFn(result, {\n            variables: this.variables,\n        });\n        if (newResult) {\n            queryManager.cache.writeQuery({\n                query: this.options.query,\n                data: newResult,\n                variables: this.variables,\n            });\n            queryManager.broadcastQueries();\n        }\n    };\n    ObservableQuery.prototype.startPolling = function (pollInterval) {\n        this.options.pollInterval = pollInterval;\n        this.updatePolling();\n    };\n    ObservableQuery.prototype.stopPolling = function () {\n        this.options.pollInterval = 0;\n        this.updatePolling();\n    };\n    ObservableQuery.prototype.applyNextFetchPolicy = function (reason, options) {\n        if (options.nextFetchPolicy) {\n            var _a = options.fetchPolicy, fetchPolicy = _a === void 0 ? \"cache-first\" : _a, _b = options.initialFetchPolicy, initialFetchPolicy = _b === void 0 ? fetchPolicy : _b;\n            if (fetchPolicy === \"standby\") {\n            }\n            else if (typeof options.nextFetchPolicy === \"function\") {\n                options.fetchPolicy = options.nextFetchPolicy(fetchPolicy, {\n                    reason: reason,\n                    options: options,\n                    observable: this,\n                    initialFetchPolicy: initialFetchPolicy,\n                });\n            }\n            else if (reason === \"variables-changed\") {\n                options.fetchPolicy = initialFetchPolicy;\n            }\n            else {\n                options.fetchPolicy = options.nextFetchPolicy;\n            }\n        }\n        return options.fetchPolicy;\n    };\n    ObservableQuery.prototype.fetch = function (options, newNetworkStatus) {\n        this.queryManager.setObservableQuery(this);\n        return this.queryManager.fetchQueryObservable(this.queryId, options, newNetworkStatus);\n    };\n    ObservableQuery.prototype.updatePolling = function () {\n        var _this = this;\n        if (this.queryManager.ssrMode) {\n            return;\n        }\n        var _a = this, pollingInfo = _a.pollingInfo, pollInterval = _a.options.pollInterval;\n        if (!pollInterval) {\n            if (pollingInfo) {\n                clearTimeout(pollingInfo.timeout);\n                delete this.pollingInfo;\n            }\n            return;\n        }\n        if (pollingInfo &&\n            pollingInfo.interval === pollInterval) {\n            return;\n        }\n        __DEV__ ? invariant(pollInterval, 'Attempted to start a polling query without a polling interval.') : invariant(pollInterval, 10);\n        var info = pollingInfo || (this.pollingInfo = {});\n        info.interval = pollInterval;\n        var maybeFetch = function () {\n            if (_this.pollingInfo) {\n                if (!isNetworkRequestInFlight(_this.queryInfo.networkStatus)) {\n                    _this.reobserve({\n                        fetchPolicy: \"network-only\",\n                    }, NetworkStatus.poll).then(poll, poll);\n                }\n                else {\n                    poll();\n                }\n            }\n            ;\n        };\n        var poll = function () {\n            var info = _this.pollingInfo;\n            if (info) {\n                clearTimeout(info.timeout);\n                info.timeout = setTimeout(maybeFetch, info.interval);\n            }\n        };\n        poll();\n    };\n    ObservableQuery.prototype.updateLastResult = function (newResult, variables) {\n        if (variables === void 0) { variables = this.variables; }\n        this.last = __assign(__assign({}, this.last), { result: this.queryManager.assumeImmutableResults\n                ? newResult\n                : cloneDeep(newResult), variables: variables });\n        if (!isNonEmptyArray(newResult.errors)) {\n            delete this.last.error;\n        }\n        return this.last;\n    };\n    ObservableQuery.prototype.reobserve = function (newOptions, newNetworkStatus) {\n        var _this = this;\n        this.isTornDown = false;\n        var useDisposableConcast = newNetworkStatus === NetworkStatus.refetch ||\n            newNetworkStatus === NetworkStatus.fetchMore ||\n            newNetworkStatus === NetworkStatus.poll;\n        var oldVariables = this.options.variables;\n        var oldFetchPolicy = this.options.fetchPolicy;\n        var mergedOptions = compact(this.options, newOptions || {});\n        var options = useDisposableConcast\n            ? mergedOptions\n            : assign(this.options, mergedOptions);\n        if (!useDisposableConcast) {\n            this.updatePolling();\n            if (newOptions &&\n                newOptions.variables &&\n                !equal(newOptions.variables, oldVariables) &&\n                options.fetchPolicy !== \"standby\" &&\n                options.fetchPolicy === oldFetchPolicy) {\n                this.applyNextFetchPolicy(\"variables-changed\", options);\n                if (newNetworkStatus === void 0) {\n                    newNetworkStatus = NetworkStatus.setVariables;\n                }\n            }\n        }\n        var variables = options.variables && __assign({}, options.variables);\n        var concast = this.fetch(options, newNetworkStatus);\n        var observer = {\n            next: function (result) {\n                _this.reportResult(result, variables);\n            },\n            error: function (error) {\n                _this.reportError(error, variables);\n            },\n        };\n        if (!useDisposableConcast) {\n            if (this.concast && this.observer) {\n                this.concast.removeObserver(this.observer);\n            }\n            this.concast = concast;\n            this.observer = observer;\n        }\n        concast.addObserver(observer);\n        return concast.promise;\n    };\n    ObservableQuery.prototype.observe = function () {\n        this.reportResult(this.getCurrentResult(false), this.variables);\n    };\n    ObservableQuery.prototype.reportResult = function (result, variables) {\n        var lastError = this.getLastError();\n        if (lastError || this.isDifferentFromLastResult(result)) {\n            if (lastError || !result.partial || this.options.returnPartialData) {\n                this.updateLastResult(result, variables);\n            }\n            iterateObserversSafely(this.observers, 'next', result);\n        }\n    };\n    ObservableQuery.prototype.reportError = function (error, variables) {\n        var errorResult = __assign(__assign({}, this.getLastResult()), { error: error, errors: error.graphQLErrors, networkStatus: NetworkStatus.error, loading: false });\n        this.updateLastResult(errorResult, variables);\n        iterateObserversSafely(this.observers, 'error', this.last.error = error);\n    };\n    ObservableQuery.prototype.hasObservers = function () {\n        return this.observers.size > 0;\n    };\n    ObservableQuery.prototype.tearDownQuery = function () {\n        if (this.isTornDown)\n            return;\n        if (this.concast && this.observer) {\n            this.concast.removeObserver(this.observer);\n            delete this.concast;\n            delete this.observer;\n        }\n        this.stopPolling();\n        this.subscriptions.forEach(function (sub) { return sub.unsubscribe(); });\n        this.subscriptions.clear();\n        this.queryManager.stopQuery(this.queryId);\n        this.observers.clear();\n        this.isTornDown = true;\n    };\n    return ObservableQuery;\n}(Observable));\nexport { ObservableQuery };\nfixObservableSubclass(ObservableQuery);\nexport function reobserveCacheFirst(obsQuery) {\n    var _a = obsQuery.options, fetchPolicy = _a.fetchPolicy, nextFetchPolicy = _a.nextFetchPolicy;\n    if (fetchPolicy === \"cache-and-network\" ||\n        fetchPolicy === \"network-only\") {\n        return obsQuery.reobserve({\n            fetchPolicy: \"cache-first\",\n            nextFetchPolicy: function () {\n                this.nextFetchPolicy = nextFetchPolicy;\n                if (typeof nextFetchPolicy === \"function\") {\n                    return nextFetchPolicy.apply(this, arguments);\n                }\n                return fetchPolicy;\n            },\n        });\n    }\n    return obsQuery.reobserve();\n}\nfunction defaultSubscriptionObserverErrorCallback(error) {\n    __DEV__ && invariant.error('Unhandled error', error.message, error.stack);\n}\nexport function logMissingFieldErrors(missing) {\n    if (__DEV__ && missing) {\n        __DEV__ && invariant.debug(\"Missing cache result fields: \".concat(JSON.stringify(missing)), missing);\n    }\n}\n//# sourceMappingURL=ObservableQuery.js.map","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { invariant } from '../utilities/globals';\nimport { visit, BREAK, } from 'graphql';\nimport { argumentsObjectFromField, buildQueryFromSelectionSet, createFragmentMap, getFragmentDefinitions, getMainDefinition, hasDirectives, isField, isInlineFragment, mergeDeep, mergeDeepArray, removeClientSetsFromDocument, resultKeyNameFromField, shouldInclude, } from '../utilities';\nimport { cacheSlot } from '../cache';\nvar LocalState = (function () {\n    function LocalState(_a) {\n        var cache = _a.cache, client = _a.client, resolvers = _a.resolvers, fragmentMatcher = _a.fragmentMatcher;\n        this.cache = cache;\n        if (client) {\n            this.client = client;\n        }\n        if (resolvers) {\n            this.addResolvers(resolvers);\n        }\n        if (fragmentMatcher) {\n            this.setFragmentMatcher(fragmentMatcher);\n        }\n    }\n    LocalState.prototype.addResolvers = function (resolvers) {\n        var _this = this;\n        this.resolvers = this.resolvers || {};\n        if (Array.isArray(resolvers)) {\n            resolvers.forEach(function (resolverGroup) {\n                _this.resolvers = mergeDeep(_this.resolvers, resolverGroup);\n            });\n        }\n        else {\n            this.resolvers = mergeDeep(this.resolvers, resolvers);\n        }\n    };\n    LocalState.prototype.setResolvers = function (resolvers) {\n        this.resolvers = {};\n        this.addResolvers(resolvers);\n    };\n    LocalState.prototype.getResolvers = function () {\n        return this.resolvers || {};\n    };\n    LocalState.prototype.runResolvers = function (_a) {\n        var document = _a.document, remoteResult = _a.remoteResult, context = _a.context, variables = _a.variables, _b = _a.onlyRunForcedResolvers, onlyRunForcedResolvers = _b === void 0 ? false : _b;\n        return __awaiter(this, void 0, void 0, function () {\n            return __generator(this, function (_c) {\n                if (document) {\n                    return [2, this.resolveDocument(document, remoteResult.data, context, variables, this.fragmentMatcher, onlyRunForcedResolvers).then(function (localResult) { return (__assign(__assign({}, remoteResult), { data: localResult.result })); })];\n                }\n                return [2, remoteResult];\n            });\n        });\n    };\n    LocalState.prototype.setFragmentMatcher = function (fragmentMatcher) {\n        this.fragmentMatcher = fragmentMatcher;\n    };\n    LocalState.prototype.getFragmentMatcher = function () {\n        return this.fragmentMatcher;\n    };\n    LocalState.prototype.clientQuery = function (document) {\n        if (hasDirectives(['client'], document)) {\n            if (this.resolvers) {\n                return document;\n            }\n        }\n        return null;\n    };\n    LocalState.prototype.serverQuery = function (document) {\n        return removeClientSetsFromDocument(document);\n    };\n    LocalState.prototype.prepareContext = function (context) {\n        var cache = this.cache;\n        return __assign(__assign({}, context), { cache: cache, getCacheKey: function (obj) {\n                return cache.identify(obj);\n            } });\n    };\n    LocalState.prototype.addExportedVariables = function (document, variables, context) {\n        if (variables === void 0) { variables = {}; }\n        if (context === void 0) { context = {}; }\n        return __awaiter(this, void 0, void 0, function () {\n            return __generator(this, function (_a) {\n                if (document) {\n                    return [2, this.resolveDocument(document, this.buildRootValueFromCache(document, variables) || {}, this.prepareContext(context), variables).then(function (data) { return (__assign(__assign({}, variables), data.exportedVariables)); })];\n                }\n                return [2, __assign({}, variables)];\n            });\n        });\n    };\n    LocalState.prototype.shouldForceResolvers = function (document) {\n        var forceResolvers = false;\n        visit(document, {\n            Directive: {\n                enter: function (node) {\n                    if (node.name.value === 'client' && node.arguments) {\n                        forceResolvers = node.arguments.some(function (arg) {\n                            return arg.name.value === 'always' &&\n                                arg.value.kind === 'BooleanValue' &&\n                                arg.value.value === true;\n                        });\n                        if (forceResolvers) {\n                            return BREAK;\n                        }\n                    }\n                },\n            },\n        });\n        return forceResolvers;\n    };\n    LocalState.prototype.buildRootValueFromCache = function (document, variables) {\n        return this.cache.diff({\n            query: buildQueryFromSelectionSet(document),\n            variables: variables,\n            returnPartialData: true,\n            optimistic: false,\n        }).result;\n    };\n    LocalState.prototype.resolveDocument = function (document, rootValue, context, variables, fragmentMatcher, onlyRunForcedResolvers) {\n        if (context === void 0) { context = {}; }\n        if (variables === void 0) { variables = {}; }\n        if (fragmentMatcher === void 0) { fragmentMatcher = function () { return true; }; }\n        if (onlyRunForcedResolvers === void 0) { onlyRunForcedResolvers = false; }\n        return __awaiter(this, void 0, void 0, function () {\n            var mainDefinition, fragments, fragmentMap, definitionOperation, defaultOperationType, _a, cache, client, execContext;\n            return __generator(this, function (_b) {\n                mainDefinition = getMainDefinition(document);\n                fragments = getFragmentDefinitions(document);\n                fragmentMap = createFragmentMap(fragments);\n                definitionOperation = mainDefinition\n                    .operation;\n                defaultOperationType = definitionOperation\n                    ? definitionOperation.charAt(0).toUpperCase() +\n                        definitionOperation.slice(1)\n                    : 'Query';\n                _a = this, cache = _a.cache, client = _a.client;\n                execContext = {\n                    fragmentMap: fragmentMap,\n                    context: __assign(__assign({}, context), { cache: cache, client: client }),\n                    variables: variables,\n                    fragmentMatcher: fragmentMatcher,\n                    defaultOperationType: defaultOperationType,\n                    exportedVariables: {},\n                    onlyRunForcedResolvers: onlyRunForcedResolvers,\n                };\n                return [2, this.resolveSelectionSet(mainDefinition.selectionSet, rootValue, execContext).then(function (result) { return ({\n                        result: result,\n                        exportedVariables: execContext.exportedVariables,\n                    }); })];\n            });\n        });\n    };\n    LocalState.prototype.resolveSelectionSet = function (selectionSet, rootValue, execContext) {\n        return __awaiter(this, void 0, void 0, function () {\n            var fragmentMap, context, variables, resultsToMerge, execute;\n            var _this = this;\n            return __generator(this, function (_a) {\n                fragmentMap = execContext.fragmentMap, context = execContext.context, variables = execContext.variables;\n                resultsToMerge = [rootValue];\n                execute = function (selection) { return __awaiter(_this, void 0, void 0, function () {\n                    var fragment, typeCondition;\n                    return __generator(this, function (_a) {\n                        if (!shouldInclude(selection, variables)) {\n                            return [2];\n                        }\n                        if (isField(selection)) {\n                            return [2, this.resolveField(selection, rootValue, execContext).then(function (fieldResult) {\n                                    var _a;\n                                    if (typeof fieldResult !== 'undefined') {\n                                        resultsToMerge.push((_a = {},\n                                            _a[resultKeyNameFromField(selection)] = fieldResult,\n                                            _a));\n                                    }\n                                })];\n                        }\n                        if (isInlineFragment(selection)) {\n                            fragment = selection;\n                        }\n                        else {\n                            fragment = fragmentMap[selection.name.value];\n                            __DEV__ ? invariant(fragment, \"No fragment named \".concat(selection.name.value)) : invariant(fragment, 9);\n                        }\n                        if (fragment && fragment.typeCondition) {\n                            typeCondition = fragment.typeCondition.name.value;\n                            if (execContext.fragmentMatcher(rootValue, typeCondition, context)) {\n                                return [2, this.resolveSelectionSet(fragment.selectionSet, rootValue, execContext).then(function (fragmentResult) {\n                                        resultsToMerge.push(fragmentResult);\n                                    })];\n                            }\n                        }\n                        return [2];\n                    });\n                }); };\n                return [2, Promise.all(selectionSet.selections.map(execute)).then(function () {\n                        return mergeDeepArray(resultsToMerge);\n                    })];\n            });\n        });\n    };\n    LocalState.prototype.resolveField = function (field, rootValue, execContext) {\n        return __awaiter(this, void 0, void 0, function () {\n            var variables, fieldName, aliasedFieldName, aliasUsed, defaultResult, resultPromise, resolverType, resolverMap, resolve;\n            var _this = this;\n            return __generator(this, function (_a) {\n                variables = execContext.variables;\n                fieldName = field.name.value;\n                aliasedFieldName = resultKeyNameFromField(field);\n                aliasUsed = fieldName !== aliasedFieldName;\n                defaultResult = rootValue[aliasedFieldName] || rootValue[fieldName];\n                resultPromise = Promise.resolve(defaultResult);\n                if (!execContext.onlyRunForcedResolvers ||\n                    this.shouldForceResolvers(field)) {\n                    resolverType = rootValue.__typename || execContext.defaultOperationType;\n                    resolverMap = this.resolvers && this.resolvers[resolverType];\n                    if (resolverMap) {\n                        resolve = resolverMap[aliasUsed ? fieldName : aliasedFieldName];\n                        if (resolve) {\n                            resultPromise = Promise.resolve(cacheSlot.withValue(this.cache, resolve, [\n                                rootValue,\n                                argumentsObjectFromField(field, variables),\n                                execContext.context,\n                                { field: field, fragmentMap: execContext.fragmentMap },\n                            ]));\n                        }\n                    }\n                }\n                return [2, resultPromise.then(function (result) {\n                        if (result === void 0) { result = defaultResult; }\n                        if (field.directives) {\n                            field.directives.forEach(function (directive) {\n                                if (directive.name.value === 'export' && directive.arguments) {\n                                    directive.arguments.forEach(function (arg) {\n                                        if (arg.name.value === 'as' && arg.value.kind === 'StringValue') {\n                                            execContext.exportedVariables[arg.value.value] = result;\n                                        }\n                                    });\n                                }\n                            });\n                        }\n                        if (!field.selectionSet) {\n                            return result;\n                        }\n                        if (result == null) {\n                            return result;\n                        }\n                        if (Array.isArray(result)) {\n                            return _this.resolveSubSelectedArray(field, result, execContext);\n                        }\n                        if (field.selectionSet) {\n                            return _this.resolveSelectionSet(field.selectionSet, result, execContext);\n                        }\n                    })];\n            });\n        });\n    };\n    LocalState.prototype.resolveSubSelectedArray = function (field, result, execContext) {\n        var _this = this;\n        return Promise.all(result.map(function (item) {\n            if (item === null) {\n                return null;\n            }\n            if (Array.isArray(item)) {\n                return _this.resolveSubSelectedArray(field, item, execContext);\n            }\n            if (field.selectionSet) {\n                return _this.resolveSelectionSet(field.selectionSet, item, execContext);\n            }\n        }));\n    };\n    return LocalState;\n}());\nexport { LocalState };\n//# sourceMappingURL=LocalState.js.map","import { __assign } from \"tslib\";\nimport { equal } from \"@wry/equality\";\nimport { reobserveCacheFirst } from './ObservableQuery';\nimport { isNonEmptyArray, graphQLResultHasError, canUseWeakMap, } from '../utilities';\nimport { NetworkStatus, isNetworkRequestInFlight, } from './networkStatus';\n;\nvar destructiveMethodCounts = new (canUseWeakMap ? WeakMap : Map)();\nfunction wrapDestructiveCacheMethod(cache, methodName) {\n    var original = cache[methodName];\n    if (typeof original === \"function\") {\n        cache[methodName] = function () {\n            destructiveMethodCounts.set(cache, (destructiveMethodCounts.get(cache) + 1) % 1e15);\n            return original.apply(this, arguments);\n        };\n    }\n}\nfunction cancelNotifyTimeout(info) {\n    if (info[\"notifyTimeout\"]) {\n        clearTimeout(info[\"notifyTimeout\"]);\n        info[\"notifyTimeout\"] = void 0;\n    }\n}\nvar QueryInfo = (function () {\n    function QueryInfo(queryManager, queryId) {\n        if (queryId === void 0) { queryId = queryManager.generateQueryId(); }\n        this.queryId = queryId;\n        this.listeners = new Set();\n        this.document = null;\n        this.lastRequestId = 1;\n        this.subscriptions = new Set();\n        this.stopped = false;\n        this.dirty = false;\n        this.observableQuery = null;\n        var cache = this.cache = queryManager.cache;\n        if (!destructiveMethodCounts.has(cache)) {\n            destructiveMethodCounts.set(cache, 0);\n            wrapDestructiveCacheMethod(cache, \"evict\");\n            wrapDestructiveCacheMethod(cache, \"modify\");\n            wrapDestructiveCacheMethod(cache, \"reset\");\n        }\n    }\n    QueryInfo.prototype.init = function (query) {\n        var networkStatus = query.networkStatus || NetworkStatus.loading;\n        if (this.variables &&\n            this.networkStatus !== NetworkStatus.loading &&\n            !equal(this.variables, query.variables)) {\n            networkStatus = NetworkStatus.setVariables;\n        }\n        if (!equal(query.variables, this.variables)) {\n            this.lastDiff = void 0;\n        }\n        Object.assign(this, {\n            document: query.document,\n            variables: query.variables,\n            networkError: null,\n            graphQLErrors: this.graphQLErrors || [],\n            networkStatus: networkStatus,\n        });\n        if (query.observableQuery) {\n            this.setObservableQuery(query.observableQuery);\n        }\n        if (query.lastRequestId) {\n            this.lastRequestId = query.lastRequestId;\n        }\n        return this;\n    };\n    QueryInfo.prototype.reset = function () {\n        cancelNotifyTimeout(this);\n        this.lastDiff = void 0;\n        this.dirty = false;\n    };\n    QueryInfo.prototype.getDiff = function (variables) {\n        if (variables === void 0) { variables = this.variables; }\n        var options = this.getDiffOptions(variables);\n        if (this.lastDiff && equal(options, this.lastDiff.options)) {\n            return this.lastDiff.diff;\n        }\n        this.updateWatch(this.variables = variables);\n        var oq = this.observableQuery;\n        if (oq && oq.options.fetchPolicy === \"no-cache\") {\n            return { complete: false };\n        }\n        var diff = this.cache.diff(options);\n        this.updateLastDiff(diff, options);\n        return diff;\n    };\n    QueryInfo.prototype.updateLastDiff = function (diff, options) {\n        this.lastDiff = diff ? {\n            diff: diff,\n            options: options || this.getDiffOptions(),\n        } : void 0;\n    };\n    QueryInfo.prototype.getDiffOptions = function (variables) {\n        var _a;\n        if (variables === void 0) { variables = this.variables; }\n        return {\n            query: this.document,\n            variables: variables,\n            returnPartialData: true,\n            optimistic: true,\n            canonizeResults: (_a = this.observableQuery) === null || _a === void 0 ? void 0 : _a.options.canonizeResults,\n        };\n    };\n    QueryInfo.prototype.setDiff = function (diff) {\n        var _this = this;\n        var oldDiff = this.lastDiff && this.lastDiff.diff;\n        this.updateLastDiff(diff);\n        if (!this.dirty &&\n            !equal(oldDiff && oldDiff.result, diff && diff.result)) {\n            this.dirty = true;\n            if (!this.notifyTimeout) {\n                this.notifyTimeout = setTimeout(function () { return _this.notify(); }, 0);\n            }\n        }\n    };\n    QueryInfo.prototype.setObservableQuery = function (oq) {\n        var _this = this;\n        if (oq === this.observableQuery)\n            return;\n        if (this.oqListener) {\n            this.listeners.delete(this.oqListener);\n        }\n        this.observableQuery = oq;\n        if (oq) {\n            oq[\"queryInfo\"] = this;\n            this.listeners.add(this.oqListener = function () {\n                var diff = _this.getDiff();\n                if (diff.fromOptimisticTransaction) {\n                    oq[\"observe\"]();\n                }\n                else {\n                    reobserveCacheFirst(oq);\n                }\n            });\n        }\n        else {\n            delete this.oqListener;\n        }\n    };\n    QueryInfo.prototype.notify = function () {\n        var _this = this;\n        cancelNotifyTimeout(this);\n        if (this.shouldNotify()) {\n            this.listeners.forEach(function (listener) { return listener(_this); });\n        }\n        this.dirty = false;\n    };\n    QueryInfo.prototype.shouldNotify = function () {\n        if (!this.dirty || !this.listeners.size) {\n            return false;\n        }\n        if (isNetworkRequestInFlight(this.networkStatus) &&\n            this.observableQuery) {\n            var fetchPolicy = this.observableQuery.options.fetchPolicy;\n            if (fetchPolicy !== \"cache-only\" &&\n                fetchPolicy !== \"cache-and-network\") {\n                return false;\n            }\n        }\n        return true;\n    };\n    QueryInfo.prototype.stop = function () {\n        if (!this.stopped) {\n            this.stopped = true;\n            this.reset();\n            this.cancel();\n            this.cancel = QueryInfo.prototype.cancel;\n            this.subscriptions.forEach(function (sub) { return sub.unsubscribe(); });\n            var oq = this.observableQuery;\n            if (oq)\n                oq.stopPolling();\n        }\n    };\n    QueryInfo.prototype.cancel = function () { };\n    QueryInfo.prototype.updateWatch = function (variables) {\n        var _this = this;\n        if (variables === void 0) { variables = this.variables; }\n        var oq = this.observableQuery;\n        if (oq && oq.options.fetchPolicy === \"no-cache\") {\n            return;\n        }\n        var watchOptions = __assign(__assign({}, this.getDiffOptions(variables)), { watcher: this, callback: function (diff) { return _this.setDiff(diff); } });\n        if (!this.lastWatch ||\n            !equal(watchOptions, this.lastWatch)) {\n            this.cancel();\n            this.cancel = this.cache.watch(this.lastWatch = watchOptions);\n        }\n    };\n    QueryInfo.prototype.resetLastWrite = function () {\n        this.lastWrite = void 0;\n    };\n    QueryInfo.prototype.shouldWrite = function (result, variables) {\n        var lastWrite = this.lastWrite;\n        return !(lastWrite &&\n            lastWrite.dmCount === destructiveMethodCounts.get(this.cache) &&\n            equal(variables, lastWrite.variables) &&\n            equal(result.data, lastWrite.result.data));\n    };\n    QueryInfo.prototype.markResult = function (result, options, cacheWriteBehavior) {\n        var _this = this;\n        this.graphQLErrors = isNonEmptyArray(result.errors) ? result.errors : [];\n        this.reset();\n        if (options.fetchPolicy === 'no-cache') {\n            this.updateLastDiff({ result: result.data, complete: true }, this.getDiffOptions(options.variables));\n        }\n        else if (cacheWriteBehavior !== 0) {\n            if (shouldWriteResult(result, options.errorPolicy)) {\n                this.cache.performTransaction(function (cache) {\n                    if (_this.shouldWrite(result, options.variables)) {\n                        cache.writeQuery({\n                            query: _this.document,\n                            data: result.data,\n                            variables: options.variables,\n                            overwrite: cacheWriteBehavior === 1,\n                        });\n                        _this.lastWrite = {\n                            result: result,\n                            variables: options.variables,\n                            dmCount: destructiveMethodCounts.get(_this.cache),\n                        };\n                    }\n                    else {\n                        if (_this.lastDiff &&\n                            _this.lastDiff.diff.complete) {\n                            result.data = _this.lastDiff.diff.result;\n                            return;\n                        }\n                    }\n                    var diffOptions = _this.getDiffOptions(options.variables);\n                    var diff = cache.diff(diffOptions);\n                    if (!_this.stopped) {\n                        _this.updateWatch(options.variables);\n                    }\n                    _this.updateLastDiff(diff, diffOptions);\n                    if (diff.complete) {\n                        result.data = diff.result;\n                    }\n                });\n            }\n            else {\n                this.lastWrite = void 0;\n            }\n        }\n    };\n    QueryInfo.prototype.markReady = function () {\n        this.networkError = null;\n        return this.networkStatus = NetworkStatus.ready;\n    };\n    QueryInfo.prototype.markError = function (error) {\n        this.networkStatus = NetworkStatus.error;\n        this.lastWrite = void 0;\n        this.reset();\n        if (error.graphQLErrors) {\n            this.graphQLErrors = error.graphQLErrors;\n        }\n        if (error.networkError) {\n            this.networkError = error.networkError;\n        }\n        return error;\n    };\n    return QueryInfo;\n}());\nexport { QueryInfo };\nexport function shouldWriteResult(result, errorPolicy) {\n    if (errorPolicy === void 0) { errorPolicy = \"none\"; }\n    var ignoreErrors = errorPolicy === \"ignore\" ||\n        errorPolicy === \"all\";\n    var writeWithErrors = !graphQLResultHasError(result);\n    if (!writeWithErrors && ignoreErrors && result.data) {\n        writeWithErrors = true;\n    }\n    return writeWithErrors;\n}\n//# sourceMappingURL=QueryInfo.js.map","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { invariant, InvariantError } from '../utilities/globals';\nimport { equal } from '@wry/equality';\nimport { execute } from '../link/core';\nimport { canonicalStringify } from '../cache';\nimport { getDefaultValues, getOperationDefinition, getOperationName, hasClientExports, graphQLResultHasError, removeConnectionDirectiveFromDocument, canUseWeakMap, Observable, asyncMap, isNonEmptyArray, Concast, makeUniqueId, isDocumentNode, isNonNullObject, } from '../utilities';\nimport { ApolloError, isApolloError } from '../errors';\nimport { ObservableQuery, logMissingFieldErrors } from './ObservableQuery';\nimport { NetworkStatus, isNetworkRequestInFlight } from './networkStatus';\nimport { LocalState } from './LocalState';\nimport { QueryInfo, shouldWriteResult, } from './QueryInfo';\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar QueryManager = (function () {\n    function QueryManager(_a) {\n        var cache = _a.cache, link = _a.link, defaultOptions = _a.defaultOptions, _b = _a.queryDeduplication, queryDeduplication = _b === void 0 ? false : _b, onBroadcast = _a.onBroadcast, _c = _a.ssrMode, ssrMode = _c === void 0 ? false : _c, _d = _a.clientAwareness, clientAwareness = _d === void 0 ? {} : _d, localState = _a.localState, assumeImmutableResults = _a.assumeImmutableResults;\n        this.clientAwareness = {};\n        this.queries = new Map();\n        this.fetchCancelFns = new Map();\n        this.transformCache = new (canUseWeakMap ? WeakMap : Map)();\n        this.queryIdCounter = 1;\n        this.requestIdCounter = 1;\n        this.mutationIdCounter = 1;\n        this.inFlightLinkObservables = new Map();\n        this.cache = cache;\n        this.link = link;\n        this.defaultOptions = defaultOptions || Object.create(null);\n        this.queryDeduplication = queryDeduplication;\n        this.clientAwareness = clientAwareness;\n        this.localState = localState || new LocalState({ cache: cache });\n        this.ssrMode = ssrMode;\n        this.assumeImmutableResults = !!assumeImmutableResults;\n        if ((this.onBroadcast = onBroadcast)) {\n            this.mutationStore = Object.create(null);\n        }\n    }\n    QueryManager.prototype.stop = function () {\n        var _this = this;\n        this.queries.forEach(function (_info, queryId) {\n            _this.stopQueryNoBroadcast(queryId);\n        });\n        this.cancelPendingFetches(__DEV__ ? new InvariantError('QueryManager stopped while query was in flight') : new InvariantError(11));\n    };\n    QueryManager.prototype.cancelPendingFetches = function (error) {\n        this.fetchCancelFns.forEach(function (cancel) { return cancel(error); });\n        this.fetchCancelFns.clear();\n    };\n    QueryManager.prototype.mutate = function (_a) {\n        var _b, _c;\n        var mutation = _a.mutation, variables = _a.variables, optimisticResponse = _a.optimisticResponse, updateQueries = _a.updateQueries, _d = _a.refetchQueries, refetchQueries = _d === void 0 ? [] : _d, _e = _a.awaitRefetchQueries, awaitRefetchQueries = _e === void 0 ? false : _e, updateWithProxyFn = _a.update, onQueryUpdated = _a.onQueryUpdated, _f = _a.fetchPolicy, fetchPolicy = _f === void 0 ? ((_b = this.defaultOptions.mutate) === null || _b === void 0 ? void 0 : _b.fetchPolicy) || \"network-only\" : _f, _g = _a.errorPolicy, errorPolicy = _g === void 0 ? ((_c = this.defaultOptions.mutate) === null || _c === void 0 ? void 0 : _c.errorPolicy) || \"none\" : _g, keepRootFields = _a.keepRootFields, context = _a.context;\n        return __awaiter(this, void 0, void 0, function () {\n            var mutationId, mutationStoreValue, self;\n            return __generator(this, function (_h) {\n                switch (_h.label) {\n                    case 0:\n                        __DEV__ ? invariant(mutation, 'mutation option is required. You must specify your GraphQL document in the mutation option.') : invariant(mutation, 12);\n                        __DEV__ ? invariant(fetchPolicy === 'network-only' ||\n                            fetchPolicy === 'no-cache', \"Mutations support only 'network-only' or 'no-cache' fetchPolicy strings. The default `network-only` behavior automatically writes mutation results to the cache. Passing `no-cache` skips the cache write.\") : invariant(fetchPolicy === 'network-only' ||\n                            fetchPolicy === 'no-cache', 13);\n                        mutationId = this.generateMutationId();\n                        mutation = this.transform(mutation).document;\n                        variables = this.getVariables(mutation, variables);\n                        if (!this.transform(mutation).hasClientExports) return [3, 2];\n                        return [4, this.localState.addExportedVariables(mutation, variables, context)];\n                    case 1:\n                        variables = (_h.sent());\n                        _h.label = 2;\n                    case 2:\n                        mutationStoreValue = this.mutationStore &&\n                            (this.mutationStore[mutationId] = {\n                                mutation: mutation,\n                                variables: variables,\n                                loading: true,\n                                error: null,\n                            });\n                        if (optimisticResponse) {\n                            this.markMutationOptimistic(optimisticResponse, {\n                                mutationId: mutationId,\n                                document: mutation,\n                                variables: variables,\n                                fetchPolicy: fetchPolicy,\n                                errorPolicy: errorPolicy,\n                                context: context,\n                                updateQueries: updateQueries,\n                                update: updateWithProxyFn,\n                                keepRootFields: keepRootFields,\n                            });\n                        }\n                        this.broadcastQueries();\n                        self = this;\n                        return [2, new Promise(function (resolve, reject) {\n                                return asyncMap(self.getObservableFromLink(mutation, __assign(__assign({}, context), { optimisticResponse: optimisticResponse }), variables, false), function (result) {\n                                    if (graphQLResultHasError(result) && errorPolicy === 'none') {\n                                        throw new ApolloError({\n                                            graphQLErrors: result.errors,\n                                        });\n                                    }\n                                    if (mutationStoreValue) {\n                                        mutationStoreValue.loading = false;\n                                        mutationStoreValue.error = null;\n                                    }\n                                    var storeResult = __assign({}, result);\n                                    if (typeof refetchQueries === \"function\") {\n                                        refetchQueries = refetchQueries(storeResult);\n                                    }\n                                    if (errorPolicy === 'ignore' &&\n                                        graphQLResultHasError(storeResult)) {\n                                        delete storeResult.errors;\n                                    }\n                                    return self.markMutationResult({\n                                        mutationId: mutationId,\n                                        result: storeResult,\n                                        document: mutation,\n                                        variables: variables,\n                                        fetchPolicy: fetchPolicy,\n                                        errorPolicy: errorPolicy,\n                                        context: context,\n                                        update: updateWithProxyFn,\n                                        updateQueries: updateQueries,\n                                        awaitRefetchQueries: awaitRefetchQueries,\n                                        refetchQueries: refetchQueries,\n                                        removeOptimistic: optimisticResponse ? mutationId : void 0,\n                                        onQueryUpdated: onQueryUpdated,\n                                        keepRootFields: keepRootFields,\n                                    });\n                                }).subscribe({\n                                    next: function (storeResult) {\n                                        self.broadcastQueries();\n                                        resolve(storeResult);\n                                    },\n                                    error: function (err) {\n                                        if (mutationStoreValue) {\n                                            mutationStoreValue.loading = false;\n                                            mutationStoreValue.error = err;\n                                        }\n                                        if (optimisticResponse) {\n                                            self.cache.removeOptimistic(mutationId);\n                                        }\n                                        self.broadcastQueries();\n                                        reject(err instanceof ApolloError ? err : new ApolloError({\n                                            networkError: err,\n                                        }));\n                                    },\n                                });\n                            })];\n                }\n            });\n        });\n    };\n    QueryManager.prototype.markMutationResult = function (mutation, cache) {\n        var _this = this;\n        if (cache === void 0) { cache = this.cache; }\n        var result = mutation.result;\n        var cacheWrites = [];\n        var skipCache = mutation.fetchPolicy === \"no-cache\";\n        if (!skipCache && shouldWriteResult(result, mutation.errorPolicy)) {\n            cacheWrites.push({\n                result: result.data,\n                dataId: 'ROOT_MUTATION',\n                query: mutation.document,\n                variables: mutation.variables,\n            });\n            var updateQueries_1 = mutation.updateQueries;\n            if (updateQueries_1) {\n                this.queries.forEach(function (_a, queryId) {\n                    var observableQuery = _a.observableQuery;\n                    var queryName = observableQuery && observableQuery.queryName;\n                    if (!queryName || !hasOwnProperty.call(updateQueries_1, queryName)) {\n                        return;\n                    }\n                    var updater = updateQueries_1[queryName];\n                    var _b = _this.queries.get(queryId), document = _b.document, variables = _b.variables;\n                    var _c = cache.diff({\n                        query: document,\n                        variables: variables,\n                        returnPartialData: true,\n                        optimistic: false,\n                    }), currentQueryResult = _c.result, complete = _c.complete;\n                    if (complete && currentQueryResult) {\n                        var nextQueryResult = updater(currentQueryResult, {\n                            mutationResult: result,\n                            queryName: document && getOperationName(document) || void 0,\n                            queryVariables: variables,\n                        });\n                        if (nextQueryResult) {\n                            cacheWrites.push({\n                                result: nextQueryResult,\n                                dataId: 'ROOT_QUERY',\n                                query: document,\n                                variables: variables,\n                            });\n                        }\n                    }\n                });\n            }\n        }\n        if (cacheWrites.length > 0 ||\n            mutation.refetchQueries ||\n            mutation.update ||\n            mutation.onQueryUpdated ||\n            mutation.removeOptimistic) {\n            var results_1 = [];\n            this.refetchQueries({\n                updateCache: function (cache) {\n                    if (!skipCache) {\n                        cacheWrites.forEach(function (write) { return cache.write(write); });\n                    }\n                    var update = mutation.update;\n                    if (update) {\n                        if (!skipCache) {\n                            var diff = cache.diff({\n                                id: \"ROOT_MUTATION\",\n                                query: _this.transform(mutation.document).asQuery,\n                                variables: mutation.variables,\n                                optimistic: false,\n                                returnPartialData: true,\n                            });\n                            if (diff.complete) {\n                                result = __assign(__assign({}, result), { data: diff.result });\n                            }\n                        }\n                        update(cache, result, {\n                            context: mutation.context,\n                            variables: mutation.variables,\n                        });\n                    }\n                    if (!skipCache && !mutation.keepRootFields) {\n                        cache.modify({\n                            id: 'ROOT_MUTATION',\n                            fields: function (value, _a) {\n                                var fieldName = _a.fieldName, DELETE = _a.DELETE;\n                                return fieldName === \"__typename\" ? value : DELETE;\n                            },\n                        });\n                    }\n                },\n                include: mutation.refetchQueries,\n                optimistic: false,\n                removeOptimistic: mutation.removeOptimistic,\n                onQueryUpdated: mutation.onQueryUpdated || null,\n            }).forEach(function (result) { return results_1.push(result); });\n            if (mutation.awaitRefetchQueries || mutation.onQueryUpdated) {\n                return Promise.all(results_1).then(function () { return result; });\n            }\n        }\n        return Promise.resolve(result);\n    };\n    QueryManager.prototype.markMutationOptimistic = function (optimisticResponse, mutation) {\n        var _this = this;\n        var data = typeof optimisticResponse === \"function\"\n            ? optimisticResponse(mutation.variables)\n            : optimisticResponse;\n        return this.cache.recordOptimisticTransaction(function (cache) {\n            try {\n                _this.markMutationResult(__assign(__assign({}, mutation), { result: { data: data } }), cache);\n            }\n            catch (error) {\n                __DEV__ && invariant.error(error);\n            }\n        }, mutation.mutationId);\n    };\n    QueryManager.prototype.fetchQuery = function (queryId, options, networkStatus) {\n        return this.fetchQueryObservable(queryId, options, networkStatus).promise;\n    };\n    QueryManager.prototype.getQueryStore = function () {\n        var store = Object.create(null);\n        this.queries.forEach(function (info, queryId) {\n            store[queryId] = {\n                variables: info.variables,\n                networkStatus: info.networkStatus,\n                networkError: info.networkError,\n                graphQLErrors: info.graphQLErrors,\n            };\n        });\n        return store;\n    };\n    QueryManager.prototype.resetErrors = function (queryId) {\n        var queryInfo = this.queries.get(queryId);\n        if (queryInfo) {\n            queryInfo.networkError = undefined;\n            queryInfo.graphQLErrors = [];\n        }\n    };\n    QueryManager.prototype.transform = function (document) {\n        var transformCache = this.transformCache;\n        if (!transformCache.has(document)) {\n            var transformed = this.cache.transformDocument(document);\n            var forLink = removeConnectionDirectiveFromDocument(this.cache.transformForLink(transformed));\n            var clientQuery = this.localState.clientQuery(transformed);\n            var serverQuery = forLink && this.localState.serverQuery(forLink);\n            var cacheEntry_1 = {\n                document: transformed,\n                hasClientExports: hasClientExports(transformed),\n                hasForcedResolvers: this.localState.shouldForceResolvers(transformed),\n                clientQuery: clientQuery,\n                serverQuery: serverQuery,\n                defaultVars: getDefaultValues(getOperationDefinition(transformed)),\n                asQuery: __assign(__assign({}, transformed), { definitions: transformed.definitions.map(function (def) {\n                        if (def.kind === \"OperationDefinition\" &&\n                            def.operation !== \"query\") {\n                            return __assign(__assign({}, def), { operation: \"query\" });\n                        }\n                        return def;\n                    }) })\n            };\n            var add = function (doc) {\n                if (doc && !transformCache.has(doc)) {\n                    transformCache.set(doc, cacheEntry_1);\n                }\n            };\n            add(document);\n            add(transformed);\n            add(clientQuery);\n            add(serverQuery);\n        }\n        return transformCache.get(document);\n    };\n    QueryManager.prototype.getVariables = function (document, variables) {\n        return __assign(__assign({}, this.transform(document).defaultVars), variables);\n    };\n    QueryManager.prototype.watchQuery = function (options) {\n        options = __assign(__assign({}, options), { variables: this.getVariables(options.query, options.variables) });\n        if (typeof options.notifyOnNetworkStatusChange === 'undefined') {\n            options.notifyOnNetworkStatusChange = false;\n        }\n        var queryInfo = new QueryInfo(this);\n        var observable = new ObservableQuery({\n            queryManager: this,\n            queryInfo: queryInfo,\n            options: options,\n        });\n        this.queries.set(observable.queryId, queryInfo);\n        queryInfo.init({\n            document: observable.query,\n            observableQuery: observable,\n            variables: observable.variables,\n        });\n        return observable;\n    };\n    QueryManager.prototype.query = function (options, queryId) {\n        var _this = this;\n        if (queryId === void 0) { queryId = this.generateQueryId(); }\n        __DEV__ ? invariant(options.query, 'query option is required. You must specify your GraphQL document ' +\n            'in the query option.') : invariant(options.query, 14);\n        __DEV__ ? invariant(options.query.kind === 'Document', 'You must wrap the query string in a \"gql\" tag.') : invariant(options.query.kind === 'Document', 15);\n        __DEV__ ? invariant(!options.returnPartialData, 'returnPartialData option only supported on watchQuery.') : invariant(!options.returnPartialData, 16);\n        __DEV__ ? invariant(!options.pollInterval, 'pollInterval option only supported on watchQuery.') : invariant(!options.pollInterval, 17);\n        return this.fetchQuery(queryId, options).finally(function () { return _this.stopQuery(queryId); });\n    };\n    QueryManager.prototype.generateQueryId = function () {\n        return String(this.queryIdCounter++);\n    };\n    QueryManager.prototype.generateRequestId = function () {\n        return this.requestIdCounter++;\n    };\n    QueryManager.prototype.generateMutationId = function () {\n        return String(this.mutationIdCounter++);\n    };\n    QueryManager.prototype.stopQueryInStore = function (queryId) {\n        this.stopQueryInStoreNoBroadcast(queryId);\n        this.broadcastQueries();\n    };\n    QueryManager.prototype.stopQueryInStoreNoBroadcast = function (queryId) {\n        var queryInfo = this.queries.get(queryId);\n        if (queryInfo)\n            queryInfo.stop();\n    };\n    QueryManager.prototype.clearStore = function (options) {\n        if (options === void 0) { options = {\n            discardWatches: true,\n        }; }\n        this.cancelPendingFetches(__DEV__ ? new InvariantError('Store reset while query was in flight (not completed in link chain)') : new InvariantError(18));\n        this.queries.forEach(function (queryInfo) {\n            if (queryInfo.observableQuery) {\n                queryInfo.networkStatus = NetworkStatus.loading;\n            }\n            else {\n                queryInfo.stop();\n            }\n        });\n        if (this.mutationStore) {\n            this.mutationStore = Object.create(null);\n        }\n        return this.cache.reset(options);\n    };\n    QueryManager.prototype.getObservableQueries = function (include) {\n        var _this = this;\n        if (include === void 0) { include = \"active\"; }\n        var queries = new Map();\n        var queryNamesAndDocs = new Map();\n        var legacyQueryOptions = new Set();\n        if (Array.isArray(include)) {\n            include.forEach(function (desc) {\n                if (typeof desc === \"string\") {\n                    queryNamesAndDocs.set(desc, false);\n                }\n                else if (isDocumentNode(desc)) {\n                    queryNamesAndDocs.set(_this.transform(desc).document, false);\n                }\n                else if (isNonNullObject(desc) && desc.query) {\n                    legacyQueryOptions.add(desc);\n                }\n            });\n        }\n        this.queries.forEach(function (_a, queryId) {\n            var oq = _a.observableQuery, document = _a.document;\n            if (oq) {\n                if (include === \"all\") {\n                    queries.set(queryId, oq);\n                    return;\n                }\n                var queryName = oq.queryName, fetchPolicy = oq.options.fetchPolicy;\n                if (fetchPolicy === \"standby\" ||\n                    (include === \"active\" && !oq.hasObservers())) {\n                    return;\n                }\n                if (include === \"active\" ||\n                    (queryName && queryNamesAndDocs.has(queryName)) ||\n                    (document && queryNamesAndDocs.has(document))) {\n                    queries.set(queryId, oq);\n                    if (queryName)\n                        queryNamesAndDocs.set(queryName, true);\n                    if (document)\n                        queryNamesAndDocs.set(document, true);\n                }\n            }\n        });\n        if (legacyQueryOptions.size) {\n            legacyQueryOptions.forEach(function (options) {\n                var queryId = makeUniqueId(\"legacyOneTimeQuery\");\n                var queryInfo = _this.getQuery(queryId).init({\n                    document: options.query,\n                    variables: options.variables,\n                });\n                var oq = new ObservableQuery({\n                    queryManager: _this,\n                    queryInfo: queryInfo,\n                    options: __assign(__assign({}, options), { fetchPolicy: \"network-only\" }),\n                });\n                invariant(oq.queryId === queryId);\n                queryInfo.setObservableQuery(oq);\n                queries.set(queryId, oq);\n            });\n        }\n        if (__DEV__ && queryNamesAndDocs.size) {\n            queryNamesAndDocs.forEach(function (included, nameOrDoc) {\n                if (!included) {\n                    __DEV__ && invariant.warn(\"Unknown query \".concat(typeof nameOrDoc === \"string\" ? \"named \" : \"\").concat(JSON.stringify(nameOrDoc, null, 2), \" requested in refetchQueries options.include array\"));\n                }\n            });\n        }\n        return queries;\n    };\n    QueryManager.prototype.reFetchObservableQueries = function (includeStandby) {\n        var _this = this;\n        if (includeStandby === void 0) { includeStandby = false; }\n        var observableQueryPromises = [];\n        this.getObservableQueries(includeStandby ? \"all\" : \"active\").forEach(function (observableQuery, queryId) {\n            var fetchPolicy = observableQuery.options.fetchPolicy;\n            observableQuery.resetLastResults();\n            if (includeStandby ||\n                (fetchPolicy !== \"standby\" &&\n                    fetchPolicy !== \"cache-only\")) {\n                observableQueryPromises.push(observableQuery.refetch());\n            }\n            _this.getQuery(queryId).setDiff(null);\n        });\n        this.broadcastQueries();\n        return Promise.all(observableQueryPromises);\n    };\n    QueryManager.prototype.setObservableQuery = function (observableQuery) {\n        this.getQuery(observableQuery.queryId).setObservableQuery(observableQuery);\n    };\n    QueryManager.prototype.startGraphQLSubscription = function (_a) {\n        var _this = this;\n        var query = _a.query, fetchPolicy = _a.fetchPolicy, errorPolicy = _a.errorPolicy, variables = _a.variables, _b = _a.context, context = _b === void 0 ? {} : _b;\n        query = this.transform(query).document;\n        variables = this.getVariables(query, variables);\n        var makeObservable = function (variables) {\n            return _this.getObservableFromLink(query, context, variables).map(function (result) {\n                if (fetchPolicy !== 'no-cache') {\n                    if (shouldWriteResult(result, errorPolicy)) {\n                        _this.cache.write({\n                            query: query,\n                            result: result.data,\n                            dataId: 'ROOT_SUBSCRIPTION',\n                            variables: variables,\n                        });\n                    }\n                    _this.broadcastQueries();\n                }\n                if (graphQLResultHasError(result)) {\n                    throw new ApolloError({\n                        graphQLErrors: result.errors,\n                    });\n                }\n                return result;\n            });\n        };\n        if (this.transform(query).hasClientExports) {\n            var observablePromise_1 = this.localState.addExportedVariables(query, variables, context).then(makeObservable);\n            return new Observable(function (observer) {\n                var sub = null;\n                observablePromise_1.then(function (observable) { return sub = observable.subscribe(observer); }, observer.error);\n                return function () { return sub && sub.unsubscribe(); };\n            });\n        }\n        return makeObservable(variables);\n    };\n    QueryManager.prototype.stopQuery = function (queryId) {\n        this.stopQueryNoBroadcast(queryId);\n        this.broadcastQueries();\n    };\n    QueryManager.prototype.stopQueryNoBroadcast = function (queryId) {\n        this.stopQueryInStoreNoBroadcast(queryId);\n        this.removeQuery(queryId);\n    };\n    QueryManager.prototype.removeQuery = function (queryId) {\n        this.fetchCancelFns.delete(queryId);\n        if (this.queries.has(queryId)) {\n            this.getQuery(queryId).stop();\n            this.queries.delete(queryId);\n        }\n    };\n    QueryManager.prototype.broadcastQueries = function () {\n        if (this.onBroadcast)\n            this.onBroadcast();\n        this.queries.forEach(function (info) { return info.notify(); });\n    };\n    QueryManager.prototype.getLocalState = function () {\n        return this.localState;\n    };\n    QueryManager.prototype.getObservableFromLink = function (query, context, variables, deduplication) {\n        var _this = this;\n        var _a;\n        if (deduplication === void 0) { deduplication = (_a = context === null || context === void 0 ? void 0 : context.queryDeduplication) !== null && _a !== void 0 ? _a : this.queryDeduplication; }\n        var observable;\n        var serverQuery = this.transform(query).serverQuery;\n        if (serverQuery) {\n            var _b = this, inFlightLinkObservables_1 = _b.inFlightLinkObservables, link = _b.link;\n            var operation = {\n                query: serverQuery,\n                variables: variables,\n                operationName: getOperationName(serverQuery) || void 0,\n                context: this.prepareContext(__assign(__assign({}, context), { forceFetch: !deduplication })),\n            };\n            context = operation.context;\n            if (deduplication) {\n                var byVariables_1 = inFlightLinkObservables_1.get(serverQuery) || new Map();\n                inFlightLinkObservables_1.set(serverQuery, byVariables_1);\n                var varJson_1 = canonicalStringify(variables);\n                observable = byVariables_1.get(varJson_1);\n                if (!observable) {\n                    var concast = new Concast([\n                        execute(link, operation)\n                    ]);\n                    byVariables_1.set(varJson_1, observable = concast);\n                    concast.cleanup(function () {\n                        if (byVariables_1.delete(varJson_1) &&\n                            byVariables_1.size < 1) {\n                            inFlightLinkObservables_1.delete(serverQuery);\n                        }\n                    });\n                }\n            }\n            else {\n                observable = new Concast([\n                    execute(link, operation)\n                ]);\n            }\n        }\n        else {\n            observable = new Concast([\n                Observable.of({ data: {} })\n            ]);\n            context = this.prepareContext(context);\n        }\n        var clientQuery = this.transform(query).clientQuery;\n        if (clientQuery) {\n            observable = asyncMap(observable, function (result) {\n                return _this.localState.runResolvers({\n                    document: clientQuery,\n                    remoteResult: result,\n                    context: context,\n                    variables: variables,\n                });\n            });\n        }\n        return observable;\n    };\n    QueryManager.prototype.getResultsFromLink = function (queryInfo, cacheWriteBehavior, options) {\n        var requestId = queryInfo.lastRequestId = this.generateRequestId();\n        return asyncMap(this.getObservableFromLink(queryInfo.document, options.context, options.variables), function (result) {\n            var hasErrors = isNonEmptyArray(result.errors);\n            if (requestId >= queryInfo.lastRequestId) {\n                if (hasErrors && options.errorPolicy === \"none\") {\n                    throw queryInfo.markError(new ApolloError({\n                        graphQLErrors: result.errors,\n                    }));\n                }\n                queryInfo.markResult(result, options, cacheWriteBehavior);\n                queryInfo.markReady();\n            }\n            var aqr = {\n                data: result.data,\n                loading: false,\n                networkStatus: NetworkStatus.ready,\n            };\n            if (hasErrors && options.errorPolicy !== \"ignore\") {\n                aqr.errors = result.errors;\n                aqr.networkStatus = NetworkStatus.error;\n            }\n            return aqr;\n        }, function (networkError) {\n            var error = isApolloError(networkError)\n                ? networkError\n                : new ApolloError({ networkError: networkError });\n            if (requestId >= queryInfo.lastRequestId) {\n                queryInfo.markError(error);\n            }\n            throw error;\n        });\n    };\n    QueryManager.prototype.fetchQueryObservable = function (queryId, options, networkStatus) {\n        var _this = this;\n        if (networkStatus === void 0) { networkStatus = NetworkStatus.loading; }\n        var query = this.transform(options.query).document;\n        var variables = this.getVariables(query, options.variables);\n        var queryInfo = this.getQuery(queryId);\n        var defaults = this.defaultOptions.watchQuery;\n        var _a = options.fetchPolicy, fetchPolicy = _a === void 0 ? defaults && defaults.fetchPolicy || \"cache-first\" : _a, _b = options.errorPolicy, errorPolicy = _b === void 0 ? defaults && defaults.errorPolicy || \"none\" : _b, _c = options.returnPartialData, returnPartialData = _c === void 0 ? false : _c, _d = options.notifyOnNetworkStatusChange, notifyOnNetworkStatusChange = _d === void 0 ? false : _d, _e = options.context, context = _e === void 0 ? {} : _e;\n        var normalized = Object.assign({}, options, {\n            query: query,\n            variables: variables,\n            fetchPolicy: fetchPolicy,\n            errorPolicy: errorPolicy,\n            returnPartialData: returnPartialData,\n            notifyOnNetworkStatusChange: notifyOnNetworkStatusChange,\n            context: context,\n        });\n        var fromVariables = function (variables) {\n            normalized.variables = variables;\n            var concastSources = _this.fetchQueryByPolicy(queryInfo, normalized, networkStatus);\n            if (normalized.fetchPolicy !== \"standby\" &&\n                concastSources.length > 0 &&\n                queryInfo.observableQuery) {\n                queryInfo.observableQuery[\"applyNextFetchPolicy\"](\"after-fetch\", options);\n            }\n            return concastSources;\n        };\n        var cleanupCancelFn = function () { return _this.fetchCancelFns.delete(queryId); };\n        this.fetchCancelFns.set(queryId, function (reason) {\n            cleanupCancelFn();\n            setTimeout(function () { return concast.cancel(reason); });\n        });\n        var concast = new Concast(this.transform(normalized.query).hasClientExports\n            ? this.localState.addExportedVariables(normalized.query, normalized.variables, normalized.context).then(fromVariables)\n            : fromVariables(normalized.variables));\n        concast.promise.then(cleanupCancelFn, cleanupCancelFn);\n        return concast;\n    };\n    QueryManager.prototype.refetchQueries = function (_a) {\n        var _this = this;\n        var updateCache = _a.updateCache, include = _a.include, _b = _a.optimistic, optimistic = _b === void 0 ? false : _b, _c = _a.removeOptimistic, removeOptimistic = _c === void 0 ? optimistic ? makeUniqueId(\"refetchQueries\") : void 0 : _c, onQueryUpdated = _a.onQueryUpdated;\n        var includedQueriesById = new Map();\n        if (include) {\n            this.getObservableQueries(include).forEach(function (oq, queryId) {\n                includedQueriesById.set(queryId, {\n                    oq: oq,\n                    lastDiff: _this.getQuery(queryId).getDiff(),\n                });\n            });\n        }\n        var results = new Map;\n        if (updateCache) {\n            this.cache.batch({\n                update: updateCache,\n                optimistic: optimistic && removeOptimistic || false,\n                removeOptimistic: removeOptimistic,\n                onWatchUpdated: function (watch, diff, lastDiff) {\n                    var oq = watch.watcher instanceof QueryInfo &&\n                        watch.watcher.observableQuery;\n                    if (oq) {\n                        if (onQueryUpdated) {\n                            includedQueriesById.delete(oq.queryId);\n                            var result = onQueryUpdated(oq, diff, lastDiff);\n                            if (result === true) {\n                                result = oq.refetch();\n                            }\n                            if (result !== false) {\n                                results.set(oq, result);\n                            }\n                            return result;\n                        }\n                        if (onQueryUpdated !== null) {\n                            includedQueriesById.set(oq.queryId, { oq: oq, lastDiff: lastDiff, diff: diff });\n                        }\n                    }\n                },\n            });\n        }\n        if (includedQueriesById.size) {\n            includedQueriesById.forEach(function (_a, queryId) {\n                var oq = _a.oq, lastDiff = _a.lastDiff, diff = _a.diff;\n                var result;\n                if (onQueryUpdated) {\n                    if (!diff) {\n                        var info = oq[\"queryInfo\"];\n                        info.reset();\n                        diff = info.getDiff();\n                    }\n                    result = onQueryUpdated(oq, diff, lastDiff);\n                }\n                if (!onQueryUpdated || result === true) {\n                    result = oq.refetch();\n                }\n                if (result !== false) {\n                    results.set(oq, result);\n                }\n                if (queryId.indexOf(\"legacyOneTimeQuery\") >= 0) {\n                    _this.stopQueryNoBroadcast(queryId);\n                }\n            });\n        }\n        if (removeOptimistic) {\n            this.cache.removeOptimistic(removeOptimistic);\n        }\n        return results;\n    };\n    QueryManager.prototype.fetchQueryByPolicy = function (queryInfo, _a, networkStatus) {\n        var _this = this;\n        var query = _a.query, variables = _a.variables, fetchPolicy = _a.fetchPolicy, refetchWritePolicy = _a.refetchWritePolicy, errorPolicy = _a.errorPolicy, returnPartialData = _a.returnPartialData, context = _a.context, notifyOnNetworkStatusChange = _a.notifyOnNetworkStatusChange;\n        var oldNetworkStatus = queryInfo.networkStatus;\n        queryInfo.init({\n            document: this.transform(query).document,\n            variables: variables,\n            networkStatus: networkStatus,\n        });\n        var readCache = function () { return queryInfo.getDiff(variables); };\n        var resultsFromCache = function (diff, networkStatus) {\n            if (networkStatus === void 0) { networkStatus = queryInfo.networkStatus || NetworkStatus.loading; }\n            var data = diff.result;\n            if (__DEV__ &&\n                !returnPartialData &&\n                !equal(data, {})) {\n                logMissingFieldErrors(diff.missing);\n            }\n            var fromData = function (data) { return Observable.of(__assign({ data: data, loading: isNetworkRequestInFlight(networkStatus), networkStatus: networkStatus }, (diff.complete ? null : { partial: true }))); };\n            if (data && _this.transform(query).hasForcedResolvers) {\n                return _this.localState.runResolvers({\n                    document: query,\n                    remoteResult: { data: data },\n                    context: context,\n                    variables: variables,\n                    onlyRunForcedResolvers: true,\n                }).then(function (resolved) { return fromData(resolved.data || void 0); });\n            }\n            return fromData(data);\n        };\n        var cacheWriteBehavior = fetchPolicy === \"no-cache\" ? 0 :\n            (networkStatus === NetworkStatus.refetch &&\n                refetchWritePolicy !== \"merge\") ? 1\n                : 2;\n        var resultsFromLink = function () { return _this.getResultsFromLink(queryInfo, cacheWriteBehavior, {\n            variables: variables,\n            context: context,\n            fetchPolicy: fetchPolicy,\n            errorPolicy: errorPolicy,\n        }); };\n        var shouldNotify = notifyOnNetworkStatusChange &&\n            typeof oldNetworkStatus === \"number\" &&\n            oldNetworkStatus !== networkStatus &&\n            isNetworkRequestInFlight(networkStatus);\n        switch (fetchPolicy) {\n            default:\n            case \"cache-first\": {\n                var diff = readCache();\n                if (diff.complete) {\n                    return [\n                        resultsFromCache(diff, queryInfo.markReady()),\n                    ];\n                }\n                if (returnPartialData || shouldNotify) {\n                    return [\n                        resultsFromCache(diff),\n                        resultsFromLink(),\n                    ];\n                }\n                return [\n                    resultsFromLink(),\n                ];\n            }\n            case \"cache-and-network\": {\n                var diff = readCache();\n                if (diff.complete || returnPartialData || shouldNotify) {\n                    return [\n                        resultsFromCache(diff),\n                        resultsFromLink(),\n                    ];\n                }\n                return [\n                    resultsFromLink(),\n                ];\n            }\n            case \"cache-only\":\n                return [\n                    resultsFromCache(readCache(), queryInfo.markReady()),\n                ];\n            case \"network-only\":\n                if (shouldNotify) {\n                    return [\n                        resultsFromCache(readCache()),\n                        resultsFromLink(),\n                    ];\n                }\n                return [resultsFromLink()];\n            case \"no-cache\":\n                if (shouldNotify) {\n                    return [\n                        resultsFromCache(queryInfo.getDiff()),\n                        resultsFromLink(),\n                    ];\n                }\n                return [resultsFromLink()];\n            case \"standby\":\n                return [];\n        }\n    };\n    QueryManager.prototype.getQuery = function (queryId) {\n        if (queryId && !this.queries.has(queryId)) {\n            this.queries.set(queryId, new QueryInfo(this, queryId));\n        }\n        return this.queries.get(queryId);\n    };\n    QueryManager.prototype.prepareContext = function (context) {\n        if (context === void 0) { context = {}; }\n        var newContext = this.localState.prepareContext(context);\n        return __assign(__assign({}, newContext), { clientAwareness: this.clientAwareness });\n    };\n    return QueryManager;\n}());\nexport { QueryManager };\n//# sourceMappingURL=QueryManager.js.map","import { __assign } from \"tslib\";\nimport { invariant, InvariantError } from '../utilities/globals';\nimport { ApolloLink, execute } from '../link/core';\nimport { version } from '../version';\nimport { HttpLink } from '../link/http';\nimport { QueryManager } from './QueryManager';\nimport { LocalState, } from './LocalState';\nvar hasSuggestedDevtools = false;\nimport { mergeOptions } from \"../utilities\";\nexport { mergeOptions };\nvar ApolloClient = (function () {\n    function ApolloClient(options) {\n        var _this = this;\n        this.resetStoreCallbacks = [];\n        this.clearStoreCallbacks = [];\n        var uri = options.uri, credentials = options.credentials, headers = options.headers, cache = options.cache, _a = options.ssrMode, ssrMode = _a === void 0 ? false : _a, _b = options.ssrForceFetchDelay, ssrForceFetchDelay = _b === void 0 ? 0 : _b, _c = options.connectToDevTools, connectToDevTools = _c === void 0 ? typeof window === 'object' &&\n            !window.__APOLLO_CLIENT__ &&\n            __DEV__ : _c, _d = options.queryDeduplication, queryDeduplication = _d === void 0 ? true : _d, defaultOptions = options.defaultOptions, _e = options.assumeImmutableResults, assumeImmutableResults = _e === void 0 ? false : _e, resolvers = options.resolvers, typeDefs = options.typeDefs, fragmentMatcher = options.fragmentMatcher, clientAwarenessName = options.name, clientAwarenessVersion = options.version;\n        var link = options.link;\n        if (!link) {\n            link = uri\n                ? new HttpLink({ uri: uri, credentials: credentials, headers: headers })\n                : ApolloLink.empty();\n        }\n        if (!cache) {\n            throw __DEV__ ? new InvariantError(\"To initialize Apollo Client, you must specify a 'cache' property \" +\n                \"in the options object. \\n\" +\n                \"For more information, please visit: https://go.apollo.dev/c/docs\") : new InvariantError(7);\n        }\n        this.link = link;\n        this.cache = cache;\n        this.disableNetworkFetches = ssrMode || ssrForceFetchDelay > 0;\n        this.queryDeduplication = queryDeduplication;\n        this.defaultOptions = defaultOptions || Object.create(null);\n        this.typeDefs = typeDefs;\n        if (ssrForceFetchDelay) {\n            setTimeout(function () { return (_this.disableNetworkFetches = false); }, ssrForceFetchDelay);\n        }\n        this.watchQuery = this.watchQuery.bind(this);\n        this.query = this.query.bind(this);\n        this.mutate = this.mutate.bind(this);\n        this.resetStore = this.resetStore.bind(this);\n        this.reFetchObservableQueries = this.reFetchObservableQueries.bind(this);\n        if (connectToDevTools && typeof window === 'object') {\n            window.__APOLLO_CLIENT__ = this;\n        }\n        if (!hasSuggestedDevtools && __DEV__) {\n            hasSuggestedDevtools = true;\n            if (typeof window !== 'undefined' &&\n                window.document &&\n                window.top === window.self &&\n                !window.__APOLLO_DEVTOOLS_GLOBAL_HOOK__) {\n                var nav = window.navigator;\n                var ua = nav && nav.userAgent;\n                var url = void 0;\n                if (typeof ua === \"string\") {\n                    if (ua.indexOf(\"Chrome/\") > -1) {\n                        url = \"https://chrome.google.com/webstore/detail/\" +\n                            \"apollo-client-developer-t/jdkknkkbebbapilgoeccciglkfbmbnfm\";\n                    }\n                    else if (ua.indexOf(\"Firefox/\") > -1) {\n                        url = \"https://addons.mozilla.org/en-US/firefox/addon/apollo-developer-tools/\";\n                    }\n                }\n                if (url) {\n                    __DEV__ && invariant.log(\"Download the Apollo DevTools for a better development \" +\n                        \"experience: \" + url);\n                }\n            }\n        }\n        this.version = version;\n        this.localState = new LocalState({\n            cache: cache,\n            client: this,\n            resolvers: resolvers,\n            fragmentMatcher: fragmentMatcher,\n        });\n        this.queryManager = new QueryManager({\n            cache: this.cache,\n            link: this.link,\n            defaultOptions: this.defaultOptions,\n            queryDeduplication: queryDeduplication,\n            ssrMode: ssrMode,\n            clientAwareness: {\n                name: clientAwarenessName,\n                version: clientAwarenessVersion,\n            },\n            localState: this.localState,\n            assumeImmutableResults: assumeImmutableResults,\n            onBroadcast: connectToDevTools ? function () {\n                if (_this.devToolsHookCb) {\n                    _this.devToolsHookCb({\n                        action: {},\n                        state: {\n                            queries: _this.queryManager.getQueryStore(),\n                            mutations: _this.queryManager.mutationStore || {},\n                        },\n                        dataWithOptimisticResults: _this.cache.extract(true),\n                    });\n                }\n            } : void 0,\n        });\n    }\n    ApolloClient.prototype.stop = function () {\n        this.queryManager.stop();\n    };\n    ApolloClient.prototype.watchQuery = function (options) {\n        if (this.defaultOptions.watchQuery) {\n            options = mergeOptions(this.defaultOptions.watchQuery, options);\n        }\n        if (this.disableNetworkFetches &&\n            (options.fetchPolicy === 'network-only' ||\n                options.fetchPolicy === 'cache-and-network')) {\n            options = __assign(__assign({}, options), { fetchPolicy: 'cache-first' });\n        }\n        return this.queryManager.watchQuery(options);\n    };\n    ApolloClient.prototype.query = function (options) {\n        if (this.defaultOptions.query) {\n            options = mergeOptions(this.defaultOptions.query, options);\n        }\n        __DEV__ ? invariant(options.fetchPolicy !== 'cache-and-network', 'The cache-and-network fetchPolicy does not work with client.query, because ' +\n            'client.query can only return a single result. Please use client.watchQuery ' +\n            'to receive multiple results from the cache and the network, or consider ' +\n            'using a different fetchPolicy, such as cache-first or network-only.') : invariant(options.fetchPolicy !== 'cache-and-network', 8);\n        if (this.disableNetworkFetches && options.fetchPolicy === 'network-only') {\n            options = __assign(__assign({}, options), { fetchPolicy: 'cache-first' });\n        }\n        return this.queryManager.query(options);\n    };\n    ApolloClient.prototype.mutate = function (options) {\n        if (this.defaultOptions.mutate) {\n            options = mergeOptions(this.defaultOptions.mutate, options);\n        }\n        return this.queryManager.mutate(options);\n    };\n    ApolloClient.prototype.subscribe = function (options) {\n        return this.queryManager.startGraphQLSubscription(options);\n    };\n    ApolloClient.prototype.readQuery = function (options, optimistic) {\n        if (optimistic === void 0) { optimistic = false; }\n        return this.cache.readQuery(options, optimistic);\n    };\n    ApolloClient.prototype.readFragment = function (options, optimistic) {\n        if (optimistic === void 0) { optimistic = false; }\n        return this.cache.readFragment(options, optimistic);\n    };\n    ApolloClient.prototype.writeQuery = function (options) {\n        this.cache.writeQuery(options);\n        this.queryManager.broadcastQueries();\n    };\n    ApolloClient.prototype.writeFragment = function (options) {\n        this.cache.writeFragment(options);\n        this.queryManager.broadcastQueries();\n    };\n    ApolloClient.prototype.__actionHookForDevTools = function (cb) {\n        this.devToolsHookCb = cb;\n    };\n    ApolloClient.prototype.__requestRaw = function (payload) {\n        return execute(this.link, payload);\n    };\n    ApolloClient.prototype.resetStore = function () {\n        var _this = this;\n        return Promise.resolve()\n            .then(function () { return _this.queryManager.clearStore({\n            discardWatches: false,\n        }); })\n            .then(function () { return Promise.all(_this.resetStoreCallbacks.map(function (fn) { return fn(); })); })\n            .then(function () { return _this.reFetchObservableQueries(); });\n    };\n    ApolloClient.prototype.clearStore = function () {\n        var _this = this;\n        return Promise.resolve()\n            .then(function () { return _this.queryManager.clearStore({\n            discardWatches: true,\n        }); })\n            .then(function () { return Promise.all(_this.clearStoreCallbacks.map(function (fn) { return fn(); })); });\n    };\n    ApolloClient.prototype.onResetStore = function (cb) {\n        var _this = this;\n        this.resetStoreCallbacks.push(cb);\n        return function () {\n            _this.resetStoreCallbacks = _this.resetStoreCallbacks.filter(function (c) { return c !== cb; });\n        };\n    };\n    ApolloClient.prototype.onClearStore = function (cb) {\n        var _this = this;\n        this.clearStoreCallbacks.push(cb);\n        return function () {\n            _this.clearStoreCallbacks = _this.clearStoreCallbacks.filter(function (c) { return c !== cb; });\n        };\n    };\n    ApolloClient.prototype.reFetchObservableQueries = function (includeStandby) {\n        return this.queryManager.reFetchObservableQueries(includeStandby);\n    };\n    ApolloClient.prototype.refetchQueries = function (options) {\n        var map = this.queryManager.refetchQueries(options);\n        var queries = [];\n        var results = [];\n        map.forEach(function (result, obsQuery) {\n            queries.push(obsQuery);\n            results.push(result);\n        });\n        var result = Promise.all(results);\n        result.queries = queries;\n        result.results = results;\n        result.catch(function (error) {\n            __DEV__ && invariant.debug(\"In client.refetchQueries, Promise.all promise rejected with error \".concat(error));\n        });\n        return result;\n    };\n    ApolloClient.prototype.getObservableQueries = function (include) {\n        if (include === void 0) { include = \"active\"; }\n        return this.queryManager.getObservableQueries(include);\n    };\n    ApolloClient.prototype.extract = function (optimistic) {\n        return this.cache.extract(optimistic);\n    };\n    ApolloClient.prototype.restore = function (serializedState) {\n        return this.cache.restore(serializedState);\n    };\n    ApolloClient.prototype.addResolvers = function (resolvers) {\n        this.localState.addResolvers(resolvers);\n    };\n    ApolloClient.prototype.setResolvers = function (resolvers) {\n        this.localState.setResolvers(resolvers);\n    };\n    ApolloClient.prototype.getResolvers = function () {\n        return this.localState.getResolvers();\n    };\n    ApolloClient.prototype.setLocalStateFragmentMatcher = function (fragmentMatcher) {\n        this.localState.setFragmentMatcher(fragmentMatcher);\n    };\n    ApolloClient.prototype.setLink = function (newLink) {\n        this.link = this.queryManager.link = newLink;\n    };\n    return ApolloClient;\n}());\nexport { ApolloClient };\n//# sourceMappingURL=ApolloClient.js.map","import * as React from 'react';\nimport { canUseSymbol } from '../../utilities';\nvar contextKey = canUseSymbol\n    ? Symbol.for('__APOLLO_CONTEXT__')\n    : '__APOLLO_CONTEXT__';\nexport function getApolloContext() {\n    var context = React.createContext[contextKey];\n    if (!context) {\n        Object.defineProperty(React.createContext, contextKey, {\n            value: context = React.createContext({}),\n            enumerable: false,\n            writable: false,\n            configurable: true,\n        });\n        context.displayName = 'ApolloContext';\n    }\n    return context;\n}\nexport { getApolloContext as resetApolloContext };\n//# sourceMappingURL=ApolloContext.js.map","import { invariant } from '../../utilities/globals';\nimport * as React from 'react';\nimport { getApolloContext } from './ApolloContext';\nexport var ApolloConsumer = function (props) {\n    var ApolloContext = getApolloContext();\n    return (React.createElement(ApolloContext.Consumer, null, function (context) {\n        __DEV__ ? invariant(context && context.client, 'Could not find \"client\" in the context of ApolloConsumer. ' +\n            'Wrap the root component in an <ApolloProvider>.') : invariant(context && context.client, 25);\n        return props.children(context.client);\n    }));\n};\n//# sourceMappingURL=ApolloConsumer.js.map","import { invariant } from '../../utilities/globals';\nimport * as React from 'react';\nimport { getApolloContext } from './ApolloContext';\nexport var ApolloProvider = function (_a) {\n    var client = _a.client, children = _a.children;\n    var ApolloContext = getApolloContext();\n    return (React.createElement(ApolloContext.Consumer, null, function (context) {\n        if (context === void 0) { context = {}; }\n        if (client && context.client !== client) {\n            context = Object.assign({}, context, { client: client });\n        }\n        __DEV__ ? invariant(context.client, 'ApolloProvider was not passed a client instance. Make ' +\n            'sure you pass in your client via the \"client\" prop.') : invariant(context.client, 26);\n        return (React.createElement(ApolloContext.Provider, { value: context }, children));\n    }));\n};\n//# sourceMappingURL=ApolloProvider.js.map","import { invariant } from '../../utilities/globals';\nimport { useContext } from 'react';\nimport { getApolloContext } from '../context';\nexport function useApolloClient(override) {\n    var context = useContext(getApolloContext());\n    var client = override || context.client;\n    __DEV__ ? invariant(!!client, 'Could not find \"client\" in the context or passed in as an option. ' +\n        'Wrap the root component in an <ApolloProvider>, or pass an ApolloClient ' +\n        'instance in via options.') : invariant(!!client, 29);\n    return client;\n}\n//# sourceMappingURL=useApolloClient.js.map","import { invariant } from '../../utilities/globals';\nimport * as React from 'react';\nimport { canUseLayoutEffect } from '../../utilities';\nvar didWarnUncachedGetSnapshot = false;\nvar uSESKey = \"useSyncExternalStore\";\nvar realHook = React[uSESKey];\nexport var useSyncExternalStore = realHook || (function (subscribe, getSnapshot, getServerSnapshot) {\n    var value = getSnapshot();\n    if (__DEV__ &&\n        !didWarnUncachedGetSnapshot &&\n        value !== getSnapshot()) {\n        didWarnUncachedGetSnapshot = true;\n        __DEV__ && invariant.error('The result of getSnapshot should be cached to avoid an infinite loop');\n    }\n    var _a = React.useState({ inst: { value: value, getSnapshot: getSnapshot } }), inst = _a[0].inst, forceUpdate = _a[1];\n    if (canUseLayoutEffect) {\n        React.useLayoutEffect(function () {\n            Object.assign(inst, { value: value, getSnapshot: getSnapshot });\n            if (checkIfSnapshotChanged(inst)) {\n                forceUpdate({ inst: inst });\n            }\n        }, [subscribe, value, getSnapshot]);\n    }\n    else {\n        Object.assign(inst, { value: value, getSnapshot: getSnapshot });\n    }\n    React.useEffect(function () {\n        if (checkIfSnapshotChanged(inst)) {\n            forceUpdate({ inst: inst });\n        }\n        return subscribe(function handleStoreChange() {\n            if (checkIfSnapshotChanged(inst)) {\n                forceUpdate({ inst: inst });\n            }\n        });\n    }, [subscribe]);\n    return value;\n});\nfunction checkIfSnapshotChanged(_a) {\n    var value = _a.value, getSnapshot = _a.getSnapshot;\n    try {\n        return value !== getSnapshot();\n    }\n    catch (_b) {\n        return true;\n    }\n}\n//# sourceMappingURL=useSyncExternalStore.js.map","import { invariant } from '../../utilities/globals';\nexport var DocumentType;\n(function (DocumentType) {\n    DocumentType[DocumentType[\"Query\"] = 0] = \"Query\";\n    DocumentType[DocumentType[\"Mutation\"] = 1] = \"Mutation\";\n    DocumentType[DocumentType[\"Subscription\"] = 2] = \"Subscription\";\n})(DocumentType || (DocumentType = {}));\nvar cache = new Map();\nexport function operationName(type) {\n    var name;\n    switch (type) {\n        case DocumentType.Query:\n            name = 'Query';\n            break;\n        case DocumentType.Mutation:\n            name = 'Mutation';\n            break;\n        case DocumentType.Subscription:\n            name = 'Subscription';\n            break;\n    }\n    return name;\n}\nexport function parser(document) {\n    var cached = cache.get(document);\n    if (cached)\n        return cached;\n    var variables, type, name;\n    __DEV__ ? invariant(!!document && !!document.kind, \"Argument of \".concat(document, \" passed to parser was not a valid GraphQL \") +\n        \"DocumentNode. You may need to use 'graphql-tag' or another method \" +\n        \"to convert your operation into a document\") : invariant(!!document && !!document.kind, 30);\n    var fragments = [];\n    var queries = [];\n    var mutations = [];\n    var subscriptions = [];\n    for (var _i = 0, _a = document.definitions; _i < _a.length; _i++) {\n        var x = _a[_i];\n        if (x.kind === 'FragmentDefinition') {\n            fragments.push(x);\n            continue;\n        }\n        if (x.kind === 'OperationDefinition') {\n            switch (x.operation) {\n                case 'query':\n                    queries.push(x);\n                    break;\n                case 'mutation':\n                    mutations.push(x);\n                    break;\n                case 'subscription':\n                    subscriptions.push(x);\n                    break;\n            }\n        }\n    }\n    __DEV__ ? invariant(!fragments.length ||\n        (queries.length || mutations.length || subscriptions.length), \"Passing only a fragment to 'graphql' is not yet supported. \" +\n        \"You must include a query, subscription or mutation as well\") : invariant(!fragments.length ||\n        (queries.length || mutations.length || subscriptions.length), 31);\n    __DEV__ ? invariant(queries.length + mutations.length + subscriptions.length <= 1, \"react-apollo only supports a query, subscription, or a mutation per HOC. \" +\n        \"\".concat(document, \" had \").concat(queries.length, \" queries, \").concat(subscriptions.length, \" \") +\n        \"subscriptions and \".concat(mutations.length, \" mutations. \") +\n        \"You can use 'compose' to join multiple operation types to a component\") : invariant(queries.length + mutations.length + subscriptions.length <= 1, 32);\n    type = queries.length ? DocumentType.Query : DocumentType.Mutation;\n    if (!queries.length && !mutations.length)\n        type = DocumentType.Subscription;\n    var definitions = queries.length\n        ? queries\n        : mutations.length\n            ? mutations\n            : subscriptions;\n    __DEV__ ? invariant(definitions.length === 1, \"react-apollo only supports one definition per HOC. \".concat(document, \" had \") +\n        \"\".concat(definitions.length, \" definitions. \") +\n        \"You can use 'compose' to join multiple operation types to a component\") : invariant(definitions.length === 1, 33);\n    var definition = definitions[0];\n    variables = definition.variableDefinitions || [];\n    if (definition.name && definition.name.kind === 'Name') {\n        name = definition.name.value;\n    }\n    else {\n        name = 'data';\n    }\n    var payload = { name: name, type: type, variables: variables };\n    cache.set(document, payload);\n    return payload;\n}\nexport function verifyDocumentType(document, type) {\n    var operation = parser(document);\n    var requiredOperationName = operationName(type);\n    var usedOperationName = operationName(operation.type);\n    __DEV__ ? invariant(operation.type === type, \"Running a \".concat(requiredOperationName, \" requires a graphql \") +\n        \"\".concat(requiredOperationName, \", but a \").concat(usedOperationName, \" was used instead.\")) : invariant(operation.type === type, 34);\n}\n//# sourceMappingURL=index.js.map","import { __assign, __rest } from \"tslib\";\nimport { invariant } from '../../utilities/globals';\nimport { useCallback, useContext, useMemo, useRef, useState, } from 'react';\nimport { useSyncExternalStore } from './useSyncExternalStore';\nimport { equal } from '@wry/equality';\nimport { mergeOptions } from '../../core';\nimport { getApolloContext } from '../context';\nimport { ApolloError } from '../../errors';\nimport { NetworkStatus, } from '../../core';\nimport { DocumentType, verifyDocumentType } from '../parser';\nimport { useApolloClient } from './useApolloClient';\nimport { canUseWeakMap, canUseWeakSet, compact, isNonEmptyArray, maybeDeepFreeze } from '../../utilities';\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nexport function useQuery(query, options) {\n    if (options === void 0) { options = Object.create(null); }\n    return useInternalState(useApolloClient(options.client), query).useQuery(options);\n}\nexport function useInternalState(client, query) {\n    var stateRef = useRef();\n    if (!stateRef.current ||\n        client !== stateRef.current.client ||\n        query !== stateRef.current.query) {\n        stateRef.current = new InternalState(client, query, stateRef.current);\n    }\n    var state = stateRef.current;\n    var _a = useState(0), _tick = _a[0], setTick = _a[1];\n    state.forceUpdate = function () {\n        setTick(function (tick) { return tick + 1; });\n    };\n    return state;\n}\nvar InternalState = (function () {\n    function InternalState(client, query, previous) {\n        this.client = client;\n        this.query = query;\n        this.asyncResolveFns = new Set();\n        this.optionsToIgnoreOnce = new (canUseWeakSet ? WeakSet : Set)();\n        this.ssrDisabledResult = maybeDeepFreeze({\n            loading: true,\n            data: void 0,\n            error: void 0,\n            networkStatus: NetworkStatus.loading,\n        });\n        this.skipStandbyResult = maybeDeepFreeze({\n            loading: false,\n            data: void 0,\n            error: void 0,\n            networkStatus: NetworkStatus.ready,\n        });\n        this.toQueryResultCache = new (canUseWeakMap ? WeakMap : Map)();\n        verifyDocumentType(query, DocumentType.Query);\n        var previousResult = previous && previous.result;\n        var previousData = previousResult && previousResult.data;\n        if (previousData) {\n            this.previousData = previousData;\n        }\n    }\n    InternalState.prototype.forceUpdate = function () {\n        __DEV__ && invariant.warn(\"Calling default no-op implementation of InternalState#forceUpdate\");\n    };\n    InternalState.prototype.asyncUpdate = function () {\n        var _this = this;\n        return new Promise(function (resolve) {\n            _this.asyncResolveFns.add(resolve);\n            _this.optionsToIgnoreOnce.add(_this.watchQueryOptions);\n            _this.forceUpdate();\n        });\n    };\n    InternalState.prototype.useQuery = function (options) {\n        var _this = this;\n        this.renderPromises = useContext(getApolloContext()).renderPromises;\n        this.useOptions(options);\n        var obsQuery = this.useObservableQuery();\n        var result = useSyncExternalStore(useCallback(function () {\n            if (_this.renderPromises) {\n                return function () { };\n            }\n            var onNext = function () {\n                var previousResult = _this.result;\n                var result = obsQuery.getCurrentResult();\n                if (previousResult &&\n                    previousResult.loading === result.loading &&\n                    previousResult.networkStatus === result.networkStatus &&\n                    equal(previousResult.data, result.data)) {\n                    return;\n                }\n                _this.setResult(result);\n            };\n            var onError = function (error) {\n                var last = obsQuery[\"last\"];\n                subscription.unsubscribe();\n                try {\n                    obsQuery.resetLastResults();\n                    subscription = obsQuery.subscribe(onNext, onError);\n                }\n                finally {\n                    obsQuery[\"last\"] = last;\n                }\n                if (!hasOwnProperty.call(error, 'graphQLErrors')) {\n                    throw error;\n                }\n                var previousResult = _this.result;\n                if (!previousResult ||\n                    (previousResult && previousResult.loading) ||\n                    !equal(error, previousResult.error)) {\n                    _this.setResult({\n                        data: (previousResult && previousResult.data),\n                        error: error,\n                        loading: false,\n                        networkStatus: NetworkStatus.error,\n                    });\n                }\n            };\n            var subscription = obsQuery.subscribe(onNext, onError);\n            return function () { return subscription.unsubscribe(); };\n        }, [\n            obsQuery,\n            this.renderPromises,\n            this.client.disableNetworkFetches,\n        ]), function () { return _this.getCurrentResult(); }, function () { return _this.getCurrentResult(); });\n        this.unsafeHandlePartialRefetch(result);\n        var queryResult = this.toQueryResult(result);\n        if (!queryResult.loading && this.asyncResolveFns.size) {\n            this.asyncResolveFns.forEach(function (resolve) { return resolve(queryResult); });\n            this.asyncResolveFns.clear();\n        }\n        return queryResult;\n    };\n    InternalState.prototype.useOptions = function (options) {\n        var _a;\n        var watchQueryOptions = this.createWatchQueryOptions(this.queryHookOptions = options);\n        var currentWatchQueryOptions = this.watchQueryOptions;\n        if (this.optionsToIgnoreOnce.has(currentWatchQueryOptions) ||\n            !equal(watchQueryOptions, currentWatchQueryOptions)) {\n            this.watchQueryOptions = watchQueryOptions;\n            if (currentWatchQueryOptions && this.observable) {\n                this.optionsToIgnoreOnce.delete(currentWatchQueryOptions);\n                this.observable.reobserve(this.getObsQueryOptions());\n                this.previousData = ((_a = this.result) === null || _a === void 0 ? void 0 : _a.data) || this.previousData;\n                this.result = void 0;\n            }\n        }\n        this.onCompleted = options.onCompleted || InternalState.prototype.onCompleted;\n        this.onError = options.onError || InternalState.prototype.onError;\n        if ((this.renderPromises || this.client.disableNetworkFetches) &&\n            this.queryHookOptions.ssr === false &&\n            !this.queryHookOptions.skip) {\n            this.result = this.ssrDisabledResult;\n        }\n        else if (this.queryHookOptions.skip ||\n            this.watchQueryOptions.fetchPolicy === 'standby') {\n            this.result = this.skipStandbyResult;\n        }\n        else if (this.result === this.ssrDisabledResult ||\n            this.result === this.skipStandbyResult) {\n            this.result = void 0;\n        }\n    };\n    InternalState.prototype.getObsQueryOptions = function () {\n        var toMerge = [];\n        var globalDefaults = this.client.defaultOptions.watchQuery;\n        if (globalDefaults)\n            toMerge.push(globalDefaults);\n        if (this.queryHookOptions.defaultOptions) {\n            toMerge.push(this.queryHookOptions.defaultOptions);\n        }\n        toMerge.push(compact(this.observable && this.observable.options, this.watchQueryOptions));\n        return toMerge.reduce(mergeOptions);\n    };\n    InternalState.prototype.createWatchQueryOptions = function (_a) {\n        var _b;\n        if (_a === void 0) { _a = {}; }\n        var skip = _a.skip, ssr = _a.ssr, onCompleted = _a.onCompleted, onError = _a.onError, displayName = _a.displayName, defaultOptions = _a.defaultOptions, otherOptions = __rest(_a, [\"skip\", \"ssr\", \"onCompleted\", \"onError\", \"displayName\", \"defaultOptions\"]);\n        var watchQueryOptions = Object.assign(otherOptions, { query: this.query });\n        if (this.renderPromises &&\n            (watchQueryOptions.fetchPolicy === 'network-only' ||\n                watchQueryOptions.fetchPolicy === 'cache-and-network')) {\n            watchQueryOptions.fetchPolicy = 'cache-first';\n        }\n        if (!watchQueryOptions.variables) {\n            watchQueryOptions.variables = {};\n        }\n        if (skip) {\n            var _c = watchQueryOptions.fetchPolicy, fetchPolicy = _c === void 0 ? this.getDefaultFetchPolicy() : _c, _d = watchQueryOptions.initialFetchPolicy, initialFetchPolicy = _d === void 0 ? fetchPolicy : _d;\n            Object.assign(watchQueryOptions, {\n                initialFetchPolicy: initialFetchPolicy,\n                fetchPolicy: 'standby',\n            });\n        }\n        else if (!watchQueryOptions.fetchPolicy) {\n            watchQueryOptions.fetchPolicy =\n                ((_b = this.observable) === null || _b === void 0 ? void 0 : _b.options.initialFetchPolicy) ||\n                    this.getDefaultFetchPolicy();\n        }\n        return watchQueryOptions;\n    };\n    InternalState.prototype.getDefaultFetchPolicy = function () {\n        var _a, _b;\n        return (((_a = this.queryHookOptions.defaultOptions) === null || _a === void 0 ? void 0 : _a.fetchPolicy) ||\n            ((_b = this.client.defaultOptions.watchQuery) === null || _b === void 0 ? void 0 : _b.fetchPolicy) ||\n            \"cache-first\");\n    };\n    InternalState.prototype.onCompleted = function (data) { };\n    InternalState.prototype.onError = function (error) { };\n    InternalState.prototype.useObservableQuery = function () {\n        var obsQuery = this.observable =\n            this.renderPromises\n                && this.renderPromises.getSSRObservable(this.watchQueryOptions)\n                || this.observable\n                || this.client.watchQuery(this.getObsQueryOptions());\n        this.obsQueryFields = useMemo(function () { return ({\n            refetch: obsQuery.refetch.bind(obsQuery),\n            reobserve: obsQuery.reobserve.bind(obsQuery),\n            fetchMore: obsQuery.fetchMore.bind(obsQuery),\n            updateQuery: obsQuery.updateQuery.bind(obsQuery),\n            startPolling: obsQuery.startPolling.bind(obsQuery),\n            stopPolling: obsQuery.stopPolling.bind(obsQuery),\n            subscribeToMore: obsQuery.subscribeToMore.bind(obsQuery),\n        }); }, [obsQuery]);\n        var ssrAllowed = !(this.queryHookOptions.ssr === false ||\n            this.queryHookOptions.skip);\n        if (this.renderPromises && ssrAllowed) {\n            this.renderPromises.registerSSRObservable(obsQuery);\n            if (obsQuery.getCurrentResult().loading) {\n                this.renderPromises.addObservableQueryPromise(obsQuery);\n            }\n        }\n        return obsQuery;\n    };\n    InternalState.prototype.setResult = function (nextResult) {\n        var previousResult = this.result;\n        if (previousResult && previousResult.data) {\n            this.previousData = previousResult.data;\n        }\n        this.result = nextResult;\n        this.forceUpdate();\n        this.handleErrorOrCompleted(nextResult);\n    };\n    InternalState.prototype.handleErrorOrCompleted = function (result) {\n        if (!result.loading) {\n            if (result.error) {\n                this.onError(result.error);\n            }\n            else if (result.data) {\n                this.onCompleted(result.data);\n            }\n        }\n    };\n    InternalState.prototype.getCurrentResult = function () {\n        if (!this.result) {\n            this.handleErrorOrCompleted(this.result = this.observable.getCurrentResult());\n        }\n        return this.result;\n    };\n    InternalState.prototype.toQueryResult = function (result) {\n        var queryResult = this.toQueryResultCache.get(result);\n        if (queryResult)\n            return queryResult;\n        var data = result.data, partial = result.partial, resultWithoutPartial = __rest(result, [\"data\", \"partial\"]);\n        this.toQueryResultCache.set(result, queryResult = __assign(__assign(__assign({ data: data }, resultWithoutPartial), this.obsQueryFields), { client: this.client, observable: this.observable, variables: this.observable.variables, called: !this.queryHookOptions.skip, previousData: this.previousData }));\n        if (!queryResult.error && isNonEmptyArray(result.errors)) {\n            queryResult.error = new ApolloError({ graphQLErrors: result.errors });\n        }\n        return queryResult;\n    };\n    InternalState.prototype.unsafeHandlePartialRefetch = function (result) {\n        if (result.partial &&\n            this.queryHookOptions.partialRefetch &&\n            !result.loading &&\n            (!result.data || Object.keys(result.data).length === 0) &&\n            this.observable.options.fetchPolicy !== 'cache-only') {\n            Object.assign(result, {\n                loading: true,\n                networkStatus: NetworkStatus.refetch,\n            });\n            this.observable.refetch();\n        }\n    };\n    return InternalState;\n}());\n//# sourceMappingURL=useQuery.js.map","import { __assign } from \"tslib\";\nimport { useCallback, useMemo, useRef } from 'react';\nimport { mergeOptions } from '../../utilities';\nimport { useInternalState } from './useQuery';\nimport { useApolloClient } from './useApolloClient';\nvar EAGER_METHODS = [\n    'refetch',\n    'reobserve',\n    'fetchMore',\n    'updateQuery',\n    'startPolling',\n    'subscribeToMore',\n];\nexport function useLazyQuery(query, options) {\n    var internalState = useInternalState(useApolloClient(options && options.client), query);\n    var execOptionsRef = useRef();\n    var merged = execOptionsRef.current\n        ? mergeOptions(options, execOptionsRef.current)\n        : options;\n    var useQueryResult = internalState.useQuery(__assign(__assign({}, merged), { skip: !execOptionsRef.current }));\n    var initialFetchPolicy = useQueryResult.observable.options.initialFetchPolicy ||\n        internalState.getDefaultFetchPolicy();\n    var result = Object.assign(useQueryResult, {\n        called: !!execOptionsRef.current,\n    });\n    var eagerMethods = useMemo(function () {\n        var eagerMethods = {};\n        var _loop_1 = function (key) {\n            var method = result[key];\n            eagerMethods[key] = function () {\n                if (!execOptionsRef.current) {\n                    execOptionsRef.current = Object.create(null);\n                    internalState.forceUpdate();\n                }\n                return method.apply(this, arguments);\n            };\n        };\n        for (var _i = 0, EAGER_METHODS_1 = EAGER_METHODS; _i < EAGER_METHODS_1.length; _i++) {\n            var key = EAGER_METHODS_1[_i];\n            _loop_1(key);\n        }\n        return eagerMethods;\n    }, []);\n    Object.assign(result, eagerMethods);\n    var execute = useCallback(function (executeOptions) {\n        execOptionsRef.current = executeOptions ? __assign(__assign({}, executeOptions), { fetchPolicy: executeOptions.fetchPolicy || initialFetchPolicy }) : {\n            fetchPolicy: initialFetchPolicy,\n        };\n        var promise = internalState\n            .asyncUpdate()\n            .then(function (queryResult) { return Object.assign(queryResult, eagerMethods); });\n        promise.catch(function () { });\n        return promise;\n    }, []);\n    return [execute, result];\n}\n//# sourceMappingURL=useLazyQuery.js.map","import { __assign } from \"tslib\";\nimport { useCallback, useEffect, useRef, useState } from 'react';\nimport { mergeOptions, } from '../../core';\nimport { equal } from '@wry/equality';\nimport { DocumentType, verifyDocumentType } from '../parser';\nimport { ApolloError } from '../../errors';\nimport { useApolloClient } from './useApolloClient';\nexport function useMutation(mutation, options) {\n    var client = useApolloClient(options === null || options === void 0 ? void 0 : options.client);\n    verifyDocumentType(mutation, DocumentType.Mutation);\n    var _a = useState({\n        called: false,\n        loading: false,\n        client: client,\n    }), result = _a[0], setResult = _a[1];\n    var ref = useRef({\n        result: result,\n        mutationId: 0,\n        isMounted: true,\n        client: client,\n        mutation: mutation,\n        options: options,\n    });\n    {\n        Object.assign(ref.current, { client: client, options: options, mutation: mutation });\n    }\n    var execute = useCallback(function (executeOptions) {\n        if (executeOptions === void 0) { executeOptions = {}; }\n        var _a = ref.current, client = _a.client, options = _a.options, mutation = _a.mutation;\n        var baseOptions = __assign(__assign({}, options), { mutation: mutation });\n        if (!ref.current.result.loading && !baseOptions.ignoreResults) {\n            setResult(ref.current.result = {\n                loading: true,\n                error: void 0,\n                data: void 0,\n                called: true,\n                client: client,\n            });\n        }\n        var mutationId = ++ref.current.mutationId;\n        var clientOptions = mergeOptions(baseOptions, executeOptions);\n        return client.mutate(clientOptions).then(function (response) {\n            var _a, _b, _c;\n            var data = response.data, errors = response.errors;\n            var error = errors && errors.length > 0\n                ? new ApolloError({ graphQLErrors: errors })\n                : void 0;\n            if (mutationId === ref.current.mutationId &&\n                !clientOptions.ignoreResults) {\n                var result_1 = {\n                    called: true,\n                    loading: false,\n                    data: data,\n                    error: error,\n                    client: client,\n                };\n                if (ref.current.isMounted && !equal(ref.current.result, result_1)) {\n                    setResult(ref.current.result = result_1);\n                }\n            }\n            (_b = (_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.onCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, response.data);\n            (_c = executeOptions.onCompleted) === null || _c === void 0 ? void 0 : _c.call(executeOptions, response.data);\n            return response;\n        }).catch(function (error) {\n            var _a, _b, _c, _d;\n            if (mutationId === ref.current.mutationId &&\n                ref.current.isMounted) {\n                var result_2 = {\n                    loading: false,\n                    error: error,\n                    data: void 0,\n                    called: true,\n                    client: client,\n                };\n                if (!equal(ref.current.result, result_2)) {\n                    setResult(ref.current.result = result_2);\n                }\n            }\n            if (((_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.onError) || clientOptions.onError) {\n                (_c = (_b = ref.current.options) === null || _b === void 0 ? void 0 : _b.onError) === null || _c === void 0 ? void 0 : _c.call(_b, error);\n                (_d = executeOptions.onError) === null || _d === void 0 ? void 0 : _d.call(executeOptions, error);\n                return { data: void 0, errors: error };\n            }\n            throw error;\n        });\n    }, []);\n    var reset = useCallback(function () {\n        setResult({ called: false, loading: false, client: client });\n    }, []);\n    useEffect(function () {\n        ref.current.isMounted = true;\n        return function () {\n            ref.current.isMounted = false;\n        };\n    }, []);\n    return [execute, __assign({ reset: reset }, result)];\n}\n//# sourceMappingURL=useMutation.js.map","import '../../utilities/globals';\nimport { useState, useRef, useEffect } from 'react';\nimport { equal } from '@wry/equality';\nimport { DocumentType, verifyDocumentType } from '../parser';\nimport { useApolloClient } from './useApolloClient';\nexport function useSubscription(subscription, options) {\n    var client = useApolloClient(options === null || options === void 0 ? void 0 : options.client);\n    verifyDocumentType(subscription, DocumentType.Subscription);\n    var _a = useState({\n        loading: !(options === null || options === void 0 ? void 0 : options.skip),\n        error: void 0,\n        data: void 0,\n        variables: options === null || options === void 0 ? void 0 : options.variables,\n    }), result = _a[0], setResult = _a[1];\n    var _b = useState(function () {\n        if (options === null || options === void 0 ? void 0 : options.skip) {\n            return null;\n        }\n        return client.subscribe({\n            query: subscription,\n            variables: options === null || options === void 0 ? void 0 : options.variables,\n            fetchPolicy: options === null || options === void 0 ? void 0 : options.fetchPolicy,\n            context: options === null || options === void 0 ? void 0 : options.context,\n        });\n    }), observable = _b[0], setObservable = _b[1];\n    var canResetObservableRef = useRef(false);\n    useEffect(function () {\n        return function () {\n            canResetObservableRef.current = true;\n        };\n    }, []);\n    var ref = useRef({ client: client, subscription: subscription, options: options });\n    useEffect(function () {\n        var _a, _b, _c, _d;\n        var shouldResubscribe = options === null || options === void 0 ? void 0 : options.shouldResubscribe;\n        if (typeof shouldResubscribe === 'function') {\n            shouldResubscribe = !!shouldResubscribe(options);\n        }\n        if (options === null || options === void 0 ? void 0 : options.skip) {\n            if (!(options === null || options === void 0 ? void 0 : options.skip) !== !((_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.skip) || canResetObservableRef.current) {\n                setResult({\n                    loading: false,\n                    data: void 0,\n                    error: void 0,\n                    variables: options === null || options === void 0 ? void 0 : options.variables,\n                });\n                setObservable(null);\n                canResetObservableRef.current = false;\n            }\n        }\n        else if ((shouldResubscribe !== false &&\n            (client !== ref.current.client ||\n                subscription !== ref.current.subscription ||\n                (options === null || options === void 0 ? void 0 : options.fetchPolicy) !== ((_b = ref.current.options) === null || _b === void 0 ? void 0 : _b.fetchPolicy) ||\n                !(options === null || options === void 0 ? void 0 : options.skip) !== !((_c = ref.current.options) === null || _c === void 0 ? void 0 : _c.skip) ||\n                !equal(options === null || options === void 0 ? void 0 : options.variables, (_d = ref.current.options) === null || _d === void 0 ? void 0 : _d.variables))) ||\n            canResetObservableRef.current) {\n            setResult({\n                loading: true,\n                data: void 0,\n                error: void 0,\n                variables: options === null || options === void 0 ? void 0 : options.variables,\n            });\n            setObservable(client.subscribe({\n                query: subscription,\n                variables: options === null || options === void 0 ? void 0 : options.variables,\n                fetchPolicy: options === null || options === void 0 ? void 0 : options.fetchPolicy,\n                context: options === null || options === void 0 ? void 0 : options.context,\n            }));\n            canResetObservableRef.current = false;\n        }\n        Object.assign(ref.current, { client: client, subscription: subscription, options: options });\n    }, [client, subscription, options, canResetObservableRef.current]);\n    useEffect(function () {\n        if (!observable) {\n            return;\n        }\n        var subscription = observable.subscribe({\n            next: function (fetchResult) {\n                var _a, _b;\n                var result = {\n                    loading: false,\n                    data: fetchResult.data,\n                    error: void 0,\n                    variables: options === null || options === void 0 ? void 0 : options.variables,\n                };\n                setResult(result);\n                (_b = (_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.onSubscriptionData) === null || _b === void 0 ? void 0 : _b.call(_a, {\n                    client: client,\n                    subscriptionData: result\n                });\n            },\n            error: function (error) {\n                setResult({\n                    loading: false,\n                    data: void 0,\n                    error: error,\n                    variables: options === null || options === void 0 ? void 0 : options.variables,\n                });\n            },\n            complete: function () {\n                var _a, _b;\n                (_b = (_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.onSubscriptionComplete) === null || _b === void 0 ? void 0 : _b.call(_a);\n            },\n        });\n        return function () {\n            subscription.unsubscribe();\n        };\n    }, [observable]);\n    return result;\n}\n//# sourceMappingURL=useSubscription.js.map","import { useEffect, useState } from 'react';\nexport function useReactiveVar(rv) {\n    var value = rv();\n    var setValue = useState(value)[1];\n    useEffect(function () {\n        var probablySameValue = rv();\n        if (value !== probablySameValue) {\n            setValue(probablySameValue);\n        }\n        else {\n            return rv.onNextChange(setValue);\n        }\n    }, [value]);\n    return value;\n}\n//# sourceMappingURL=useReactiveVar.js.map"],"names":["invariant","visit","InvariantError","__assign","__spreadArray","hasOwnProperty","Observable","__extends","print","__rest","wrap","Cache","dep","Trie","equal","isObjectOrArray","Slot","NetworkStatus","__awaiter","__generator","BREAK","React","useContext","DocumentType","useRef","useState","useCallback","useMemo","useEffect"],"mappings":"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"}