'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var globals = require('../../utilities/globals'); var React = require('react'); var utilities = require('../../utilities'); function _interopNamespace(e) { if (e && e.__esModule) return e; var n = Object.create(null); if (e) { for (var k in e) { n[k] = e[k]; } } n["default"] = e; return Object.freeze(n); } var React__namespace = /*#__PURE__*/_interopNamespace(React); var contextKey = utilities.canUseSymbol ? Symbol.for('__APOLLO_CONTEXT__') : '__APOLLO_CONTEXT__'; function getApolloContext() { var context = React__namespace.createContext[contextKey]; if (!context) { Object.defineProperty(React__namespace.createContext, contextKey, { value: context = React__namespace.createContext({}), enumerable: false, writable: false, configurable: true, }); context.displayName = 'ApolloContext'; } return context; } var ApolloConsumer = function (props) { var ApolloContext = getApolloContext(); return (React__namespace.createElement(ApolloContext.Consumer, null, function (context) { __DEV__ ? globals.invariant(context && context.client, 'Could not find "client" in the context of ApolloConsumer. ' + 'Wrap the root component in an .') : globals.invariant(context && context.client, 25); return props.children(context.client); })); }; var ApolloProvider = function (_a) { var client = _a.client, children = _a.children; var ApolloContext = getApolloContext(); return (React__namespace.createElement(ApolloContext.Consumer, null, function (context) { if (context === void 0) { context = {}; } if (client && context.client !== client) { context = Object.assign({}, context, { client: client }); } __DEV__ ? globals.invariant(context.client, 'ApolloProvider was not passed a client instance. Make ' + 'sure you pass in your client via the "client" prop.') : globals.invariant(context.client, 26); return (React__namespace.createElement(ApolloContext.Provider, { value: context }, children)); })); }; exports.ApolloConsumer = ApolloConsumer; exports.ApolloProvider = ApolloProvider; exports.getApolloContext = getApolloContext; exports.resetApolloContext = getApolloContext; //# sourceMappingURL=context.cjs.map