gqty
Version:
The No-GraphQL Client for TypeScript
26 lines (22 loc) • 622 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
const createLegacyPrefetch = ({
resolvers: { createResolver },
subscribeLegacySelections
}) => (fn, { operationName } = {}) => {
const {
accessor: { query },
context,
resolve
} = createResolver({ operationName });
const unsubscribe = subscribeLegacySelections((selection, cache) => {
context.select(selection, cache);
});
const data = fn(query);
unsubscribe();
if (!context.shouldFetch) {
return data;
}
return resolve().then(() => fn(query));
};
exports.createLegacyPrefetch = createLegacyPrefetch;