{"version":3,"file":"ssr.cjs","sources":["RenderPromises.js","getDataFromTree.js","renderToStringWithData.js"],"sourcesContent":["function makeDefaultQueryInfo() {\n    return {\n        seen: false,\n        observable: null\n    };\n}\nvar RenderPromises = (function () {\n    function RenderPromises() {\n        this.queryPromises = new Map();\n        this.queryInfoTrie = new Map();\n        this.stopped = false;\n    }\n    RenderPromises.prototype.stop = function () {\n        if (!this.stopped) {\n            this.queryPromises.clear();\n            this.queryInfoTrie.clear();\n            this.stopped = true;\n        }\n    };\n    RenderPromises.prototype.registerSSRObservable = function (observable) {\n        if (this.stopped)\n            return;\n        this.lookupQueryInfo(observable.options).observable = observable;\n    };\n    RenderPromises.prototype.getSSRObservable = function (props) {\n        return this.lookupQueryInfo(props).observable;\n    };\n    RenderPromises.prototype.addQueryPromise = function (queryInstance, finish) {\n        if (!this.stopped) {\n            var info = this.lookupQueryInfo(queryInstance.getOptions());\n            if (!info.seen) {\n                this.queryPromises.set(queryInstance.getOptions(), new Promise(function (resolve) {\n                    resolve(queryInstance.fetchData());\n                }));\n                return null;\n            }\n        }\n        return finish ? finish() : null;\n    };\n    RenderPromises.prototype.addObservableQueryPromise = function (obsQuery) {\n        return this.addQueryPromise({\n            getOptions: function () { return obsQuery.options; },\n            fetchData: function () { return new Promise(function (resolve) {\n                var sub = obsQuery.subscribe({\n                    next: function (result) {\n                        if (!result.loading) {\n                            resolve();\n                            sub.unsubscribe();\n                        }\n                    },\n                    error: function () {\n                        resolve();\n                        sub.unsubscribe();\n                    },\n                    complete: function () {\n                        resolve();\n                    },\n                });\n            }); },\n        });\n    };\n    RenderPromises.prototype.hasPromises = function () {\n        return this.queryPromises.size > 0;\n    };\n    RenderPromises.prototype.consumeAndAwaitPromises = function () {\n        var _this = this;\n        var promises = [];\n        this.queryPromises.forEach(function (promise, queryInstance) {\n            _this.lookupQueryInfo(queryInstance).seen = true;\n            promises.push(promise);\n        });\n        this.queryPromises.clear();\n        return Promise.all(promises);\n    };\n    RenderPromises.prototype.lookupQueryInfo = function (props) {\n        var queryInfoTrie = this.queryInfoTrie;\n        var query = props.query, variables = props.variables;\n        var varMap = queryInfoTrie.get(query) || new Map();\n        if (!queryInfoTrie.has(query))\n            queryInfoTrie.set(query, varMap);\n        var variablesString = JSON.stringify(variables);\n        var info = varMap.get(variablesString) || makeDefaultQueryInfo();\n        if (!varMap.has(variablesString))\n            varMap.set(variablesString, info);\n        return info;\n    };\n    return RenderPromises;\n}());\nexport { RenderPromises };\n//# sourceMappingURL=RenderPromises.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { getApolloContext } from '../context';\nimport { RenderPromises } from './RenderPromises';\nexport function getDataFromTree(tree, context) {\n    if (context === void 0) { context = {}; }\n    return getMarkupFromTree({\n        tree: tree,\n        context: context,\n        renderFunction: require('react-dom/server').renderToStaticMarkup\n    });\n}\nexport function getMarkupFromTree(_a) {\n    var tree = _a.tree, _b = _a.context, context = _b === void 0 ? {} : _b, _c = _a.renderFunction, renderFunction = _c === void 0 ? require('react-dom/server').renderToStaticMarkup : _c;\n    var renderPromises = new RenderPromises();\n    function process() {\n        var ApolloContext = getApolloContext();\n        return new Promise(function (resolve) {\n            var element = React.createElement(ApolloContext.Provider, { value: __assign(__assign({}, context), { renderPromises: renderPromises }) }, tree);\n            resolve(renderFunction(element));\n        }).then(function (html) {\n            return renderPromises.hasPromises()\n                ? renderPromises.consumeAndAwaitPromises().then(process)\n                : html;\n        }).finally(function () {\n            renderPromises.stop();\n        });\n    }\n    return Promise.resolve().then(process);\n}\n//# sourceMappingURL=getDataFromTree.js.map","import { getMarkupFromTree } from './getDataFromTree';\nexport function renderToStringWithData(component) {\n    return getMarkupFromTree({\n        tree: component,\n        renderFunction: require('react-dom/server').renderToString\n    });\n}\n//# sourceMappingURL=renderToStringWithData.js.map"],"names":["context","getApolloContext","React","__assign"],"mappings":"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"}