New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

msand-apollo-cache-hermes

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

msand-apollo-cache-hermes - npm Package Compare versions

Comparing version 0.9.5 to 0.9.6

2

package.json
{
"name": "msand-apollo-cache-hermes",
"version": "0.9.5",
"version": "0.9.6",
"description": "A cache implementation for Apollo Client, tuned for performance",

@@ -5,0 +5,0 @@ "license": "Apache-2.0",

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Hermes = void 0;
var tslib_1 = require("tslib");
var Cache_1 = require("../Cache");
var Queryable_1 = require("./Queryable");
var Transaction_1 = require("./Transaction");
var util_1 = require("./util");
const Cache_1 = require("../Cache");
const Queryable_1 = require("./Queryable");
const Transaction_1 = require("./Transaction");
const util_1 = require("./util");
/**
* Apollo-specific interface to the cache.
*/
var Hermes = /** @class */ (function (_super) {
tslib_1.__extends(Hermes, _super);
function Hermes(configuration) {
var _this = _super.call(this) || this;
_this.watches = new Set();
_this._txCount = 0;
_this._queryable = new Cache_1.Cache(configuration, _this);
return _this;
class Hermes extends Queryable_1.ApolloQueryable {
constructor(configuration) {
super();
this.watches = new Set();
this._txCount = 0;
this._queryable = new Cache_1.Cache(configuration, this);
}
Hermes.prototype.identify = function (object) {
identify(object) {
return this._queryable.identify(object);
};
}
// TODO (yuisu): data can be typed better with update of ApolloCache API
Hermes.prototype.restore = function (data, migrationMap, verifyOptions) {
var verifyQuery = verifyOptions && (0, util_1.buildRawOperationFromQuery)(verifyOptions.query, verifyOptions.variables);
restore(data, migrationMap, verifyOptions) {
const verifyQuery = verifyOptions && (0, util_1.buildRawOperationFromQuery)(verifyOptions.query, verifyOptions.variables);
this._queryable.restore(data, migrationMap, verifyQuery);
return this;
};
}
// TODO (yuisu): return can be typed better with update of ApolloCache API
Hermes.prototype.extract = function (optimistic, pruneOptions) {
if (optimistic === void 0) { optimistic = false; }
var pruneQuery = pruneOptions && (0, util_1.buildRawOperationFromQuery)(pruneOptions.query, pruneOptions.variables);
extract(optimistic = false, pruneOptions) {
const pruneQuery = pruneOptions && (0, util_1.buildRawOperationFromQuery)(pruneOptions.query, pruneOptions.variables);
return this._queryable.extract(optimistic, pruneQuery);
};
Hermes.prototype.reset = function () {
}
reset() {
return this._queryable.reset();
};
Hermes.prototype.removeOptimistic = function (id) {
}
removeOptimistic(id) {
this._queryable.rollback(id);
};
Hermes.prototype.performTransaction = function (transaction, optimisticId, onWatchUpdated, broadcast) {
if (broadcast === void 0) { broadcast = true; }
this._queryable.transaction(broadcast, optimisticId, function (t) { return transaction(new Transaction_1.ApolloTransaction(t)); }, onWatchUpdated);
};
Hermes.prototype.recordOptimisticTransaction = function (transaction, id) {
this._queryable.transaction(true, id, function (t) { return transaction(new Transaction_1.ApolloTransaction(t)); });
};
Hermes.prototype.watch = function (options) {
var _this = this;
var query = (0, util_1.buildRawOperationFromQuery)(options.query, options.variables);
}
performTransaction(transaction, optimisticId, onWatchUpdated, broadcast = true) {
this._queryable.transaction(broadcast, optimisticId, t => transaction(new Transaction_1.ApolloTransaction(t)), onWatchUpdated);
}
recordOptimisticTransaction(transaction, id) {
this._queryable.transaction(true, id, t => transaction(new Transaction_1.ApolloTransaction(t)));
}
watch(options) {
const query = (0, util_1.buildRawOperationFromQuery)(options.query, options.variables);
this.watches.add(options);
var unwatch = this._queryable.watch(query, options);
return function () {
const unwatch = this._queryable.watch(query, options);
return () => {
unwatch();
_this.watches.delete(options);
this.watches.delete(options);
};
};
Hermes.prototype.getCurrentCacheSnapshot = function () {
}
getCurrentCacheSnapshot() {
return this._queryable.getSnapshot();
};
Hermes.prototype.batch = function (options) {
var _this = this;
var update = options.update, _a = options.optimistic, optimistic = _a === void 0 ? true : _a, onWatchUpdated = options.onWatchUpdated;
var optimisticId = typeof optimistic === 'string'
}
batch(options) {
const { update, optimistic = true, onWatchUpdated, } = options;
const optimisticId = typeof optimistic === 'string'
? optimistic
: optimistic ? undefined : null;
var alreadyDirty = new Set();
var willWatch = onWatchUpdated && !this._txCount;
const alreadyDirty = new Set();
const willWatch = onWatchUpdated && !this._txCount;
if (willWatch) {

@@ -80,3 +73,3 @@ // If an options.onWatchUpdated callback is provided, we want to call it

// if we never called cache.batch.
this._queryable.broadcastWatches(tslib_1.__assign(tslib_1.__assign({}, options), { onWatchUpdated: function (watch) {
this._queryable.broadcastWatches(Object.assign(Object.assign({}, options), { onWatchUpdated(watch) {
alreadyDirty.add(watch);

@@ -86,6 +79,6 @@ return false;

}
var updateResult;
let updateResult;
++this._txCount;
try {
this.performTransaction(function () { return (updateResult = update(_this)); }, optimisticId, onWatchUpdated, !willWatch);
this.performTransaction(() => (updateResult = update(this)), optimisticId, onWatchUpdated, !willWatch);
}

@@ -99,4 +92,4 @@ finally {

if (onWatchUpdated && alreadyDirty.size) {
this._queryable.broadcastWatches(tslib_1.__assign(tslib_1.__assign({}, options), { onWatchUpdated: function (watch, diff, lastDiff) {
var result = onWatchUpdated.call(this, watch, diff, lastDiff);
this._queryable.broadcastWatches(Object.assign(Object.assign({}, options), { onWatchUpdated(watch, diff, lastDiff) {
const result = onWatchUpdated.call(this, watch, diff, lastDiff);
if (result !== false) {

@@ -113,3 +106,3 @@ // Since onWatchUpdated did not return false, this diff is

if (alreadyDirty.size) {
alreadyDirty.forEach(function (watch) { return watch.lastDiff = undefined; });
alreadyDirty.forEach(watch => watch.lastDiff = undefined);
}

@@ -124,18 +117,17 @@ }

return updateResult;
};
Hermes.prototype.broadcastWatches = function (options) {
}
broadcastWatches(options) {
this._queryable.broadcastWatches(options);
};
Hermes.prototype.gc = function () {
}
gc() {
return this._queryable.gc();
};
Hermes.prototype.retain = function (id) {
}
retain(id) {
return this._queryable.retain(id);
};
Hermes.prototype.release = function (id) {
}
release(id) {
return this._queryable.release(id);
};
return Hermes;
}(Queryable_1.ApolloQueryable));
}
}
exports.Hermes = Hermes;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGVybWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiSGVybWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFPQSxrQ0FBK0M7QUFLL0MseUNBQThDO0FBQzlDLDZDQUFrRDtBQUNsRCwrQkFBb0Q7QUFJcEQ7O0dBRUc7QUFDSDtJQUF5RCxrQ0FBNEI7SUFLbkYsZ0JBQVksYUFBdUQ7UUFBbkUsWUFDRSxpQkFBTyxTQUVSO1FBTE0sYUFBTyxHQUFHLElBQUksR0FBRyxFQUErQixDQUFDO1FBbUVoRCxjQUFRLEdBQUcsQ0FBQyxDQUFDO1FBL0RuQixLQUFJLENBQUMsVUFBVSxHQUFHLElBQUksYUFBSyxDQUFjLGFBQWEsRUFBRSxLQUFJLENBQUMsQ0FBQzs7SUFDaEUsQ0FBQztJQUVELHlCQUFRLEdBQVIsVUFBUyxNQUErQjtRQUN0QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCx3RUFBd0U7SUFDeEUsd0JBQU8sR0FBUCxVQUFRLElBQVMsRUFBRSxZQUEyQixFQUFFLGFBQTBDO1FBQ3hGLElBQU0sV0FBVyxHQUFHLGFBQWEsSUFBSSxJQUFBLGlDQUEwQixFQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDekQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsMEVBQTBFO0lBQzFFLHdCQUFPLEdBQVAsVUFBUSxVQUEyQixFQUFFLFlBQXlDO1FBQXRFLDJCQUFBLEVBQUEsa0JBQTJCO1FBQ2pDLElBQU0sVUFBVSxHQUFHLFlBQVksSUFBSSxJQUFBLGlDQUEwQixFQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFHLE9BQU8sSUFBSSxDQUFD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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGVybWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiSGVybWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU9BLG9DQUErQztBQUsvQywyQ0FBOEM7QUFDOUMsK0NBQWtEO0FBQ2xELGlDQUFvRDtBQUlwRDs7R0FFRztBQUNILE1BQWEsTUFBb0MsU0FBUSwyQkFBNEI7SUFLbkYsWUFBWSxhQUF1RDtRQUNqRSxLQUFLLEVBQUUsQ0FBQztRQUhILFlBQU8sR0FBRyxJQUFJLEdBQUcsRUFBK0IsQ0FBQztRQW1FaEQsYUFBUSxHQUFHLENBQUMsQ0FBQztRQS9EbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLGFBQUssQ0FBYyxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELFFBQVEsQ0FBQyxNQUErQjtRQUN0QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCx3RUFBd0U7SUFDeEUsT0FBTyxDQUFDLElBQVMsRUFBRSxZQUEyQixFQUFFLGFBQTBDO1FBQ3hGLE1BQU0sV0FBVyxHQUFHLGFBQWEsSUFBSSxJQUFBLGlDQUEwQixFQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDekQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsMEVBQTBFO0lBQzFFLE9BQU8sQ0FBQyxhQUFzQixLQUFLLEVBQUUsWUFBeUM7UUFDNUUsTUFBTSxVQUFVLEdBQUcsWUFBWSxJQUFJLElBQUEsaUNBQTBCLEVBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUcsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUs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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Hermes = void 0;
var Hermes_1 = require("./Hermes");
const Hermes_1 = require("./Hermes");
Object.defineProperty(exports, "Hermes", { enumerable: true, get: function () { return Hermes_1.Hermes; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBa0M7QUFDekIsdUZBREEsZUFBTSxPQUNBIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxQ0FBa0M7QUFDekIsdUZBREEsZUFBTSxPQUNBIn0=
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ApolloQueryable = void 0;
var tslib_1 = require("tslib");
var msand_apollo_client_1 = require("msand-apollo-client");
var utilities_1 = require("msand-apollo-client/utilities");
var errors_1 = require("../errors");
var util_1 = require("./util");
const msand_apollo_client_1 = require("msand-apollo-client");
const utilities_1 = require("msand-apollo-client/utilities");
const errors_1 = require("../errors");
const util_1 = require("./util");
/**
* Apollo-specific interface to the cache.
*/
var ApolloQueryable = /** @class */ (function (_super) {
tslib_1.__extends(ApolloQueryable, _super);
function ApolloQueryable() {
return _super !== null && _super.apply(this, arguments) || this;
}
ApolloQueryable.prototype.diff = function (query) {
var rawOperation = (0, util_1.buildRawOperationFromQuery)(query.query, query.variables);
var _a = this._queryable.read(rawOperation, query.optimistic), result = _a.result, complete = _a.complete, missing = _a.missing, fromOptimisticTransaction = _a.fromOptimisticTransaction;
class ApolloQueryable extends msand_apollo_client_1.ApolloCache {
diff(query) {
const rawOperation = (0, util_1.buildRawOperationFromQuery)(query.query, query.variables);
const { result, complete, missing, fromOptimisticTransaction } = this._queryable.read(rawOperation, query.optimistic);
if (query.returnPartialData === false && !complete) {
// TODO: Include more detail with this error.
throw new errors_1.UnsatisfiedCacheError("diffQuery not satisfied by the cache.");
throw new errors_1.UnsatisfiedCacheError(`diffQuery not satisfied by the cache.`);
}
return { result: result, complete: complete, missing: missing, fromOptimisticTransaction: fromOptimisticTransaction };
};
ApolloQueryable.prototype.read = function (query) {
var rawOperation = (0, util_1.buildRawOperationFromQuery)(query.query, query.variables, query.rootId);
var _a = this._queryable.read(rawOperation, query.optimistic), result = _a.result, complete = _a.complete;
return { result: result, complete, missing, fromOptimisticTransaction };
}
read(query) {
const rawOperation = (0, util_1.buildRawOperationFromQuery)(query.query, query.variables, query.rootId);
const { result, complete } = this._queryable.read(rawOperation, query.optimistic);
if (complete || query.returnPartialData) {

@@ -33,4 +28,4 @@ return (result !== null && result !== void 0 ? result : null);

return null;
};
ApolloQueryable.prototype.readQuery = function (options, optimistic) {
}
readQuery(options, optimistic) {
return this.read({

@@ -43,7 +38,7 @@ query: options.query,

});
};
ApolloQueryable.prototype.readFragment = function (options, optimistic) {
}
readFragment(options, optimistic) {
// TODO: Support nested fragments.
var rawOperation = (0, util_1.buildRawOperationFromFragment)(options.fragment, options.id, options.variables, options.fragmentName);
var _a = this._queryable.read(rawOperation, optimistic), complete = _a.complete, result = _a.result;
const rawOperation = (0, util_1.buildRawOperationFromFragment)(options.fragment, options.id, options.variables, options.fragmentName);
const { complete, result } = this._queryable.read(rawOperation, optimistic);
if (complete || options.returnPartialData) {

@@ -53,35 +48,34 @@ return result !== null && result !== void 0 ? result : null;

return null;
};
ApolloQueryable.prototype.modify = function (options) {
}
modify(options) {
return this._queryable.modify(options);
};
ApolloQueryable.prototype.write = function (options) {
var rawOperation = (0, util_1.buildRawOperationFromQuery)(options.query, options.variables, options.dataId);
}
write(options) {
const rawOperation = (0, util_1.buildRawOperationFromQuery)(options.query, options.variables, options.dataId);
this._queryable.write(rawOperation, options.result, options.broadcast);
return (0, msand_apollo_client_1.makeReference)(rawOperation.rootId);
};
ApolloQueryable.prototype.writeQuery = function (options) {
var rawOperation = (0, util_1.buildRawOperationFromQuery)(options.query, options.variables, options.id);
}
writeQuery(options) {
const rawOperation = (0, util_1.buildRawOperationFromQuery)(options.query, options.variables, options.id);
this._queryable.write(rawOperation, options.data, options.broadcast);
return (0, msand_apollo_client_1.makeReference)(rawOperation.rootId);
};
ApolloQueryable.prototype.writeFragment = function (options) {
}
writeFragment(options) {
// TODO: Support nested fragments.
var rawOperation = (0, util_1.buildRawOperationFromFragment)(options.fragment, options.id, options.variables, options.fragmentName);
const rawOperation = (0, util_1.buildRawOperationFromFragment)(options.fragment, options.id, options.variables, options.fragmentName);
this._queryable.write(rawOperation, options.data, options.broadcast);
return (0, msand_apollo_client_1.makeReference)(rawOperation.rootId);
};
ApolloQueryable.prototype.transformDocument = function (doc) {
}
transformDocument(doc) {
return this._queryable.transformDocument(doc);
};
ApolloQueryable.prototype.transformForLink = function (document) {
}
transformForLink(document) {
// @static directives are for the cache only.
return (0, utilities_1.removeDirectivesFromDocument)([{ name: 'static' }], document);
};
ApolloQueryable.prototype.evict = function (options) {
}
evict(options) {
return this._queryable.evict(options);
};
return ApolloQueryable;
}(msand_apollo_client_1.ApolloCache));
}
}
exports.ApolloQueryable = ApolloQueryable;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVlcnlhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiUXVlcnlhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwyREFBbUY7QUFDbkYsMkRBQTZFO0FBRTdFLG9DQUFrRDtBQUtsRCwrQkFBbUY7QUFFbkY7O0dBRUc7QUFDSDtJQUEyRCwyQ0FBd0I7SUFBbkY7O0lBZ0dBLENBQUM7SUE1RkMsOEJBQUksR0FBSixVQUFRLEtBQXdCO1FBQzlCLElBQU0sWUFBWSxHQUFHLElBQUEsaUNBQTBCLEVBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDeEUsSUFBQSxLQUEyRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUE3RyxNQUFNLFlBQUEsRUFBRSxRQUFRLGNBQUEsRUFBRSxPQUFPLGFBQUEsRUFBRSx5QkFBeUIsK0JBQXlELENBQUM7UUFDdEgsSUFBSSxLQUFLLENBQUMsaUJBQWlCLEtBQUssS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xELDZDQUE2QztZQUM3QyxNQUFNLElBQUksOEJBQXFCLENBQUMsdUNBQXVDLENBQUMsQ0FBQztTQUMxRTtRQUVELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBc0IsRUFBRSxRQUFRLFVBQUEsRUFBRSxPQUFPLFNBQUEsRUFBRSx5QkFBeUIsMkJBQUEsRUFBRSxDQUFDO0lBQzFGLENBQUM7SUFFRCw4QkFBSSxHQUFKLFVBQW9DLEtBQTJDO1FBQzdFLElBQU0sWUFBWSxHQUFHLElBQUEsaUNBQTBCLEVBQUMsS0FBSyxDQUFDLEtBQUssRUFBRyxLQUFLLENBQUMsU0FBbUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakgsSUFBQSxLQUF1QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUF6RSxN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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVlcnlhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiUXVlcnlhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZEQUFtRjtBQUNuRiw2REFBNkU7QUFFN0Usc0NBQWtEO0FBS2xELGlDQUFtRjtBQUVuRjs7R0FFRztBQUNILE1BQXNCLGVBQTZCLFNBQVEsaUNBQXdCO0lBSWpGLElBQUksQ0FBSSxLQUF3QjtRQUM5QixNQUFNLFlBQVksR0FBRyxJQUFBLGlDQUEwQixFQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdEgsSUFBSSxLQUFLLENBQUMsaUJBQWlCLEtBQUssS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xELDZDQUE2QztZQUM3QyxNQUFNLElBQUksOEJBQXFCLENBQUMsdUNBQXVDLENBQUMsQ0FBQztTQUMxRTtRQUVELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBc0IsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLENBQUM7SUFDMUYsQ0FBQztJQUVELElBQUksQ0FBZ0MsS0FBMkM7UUFDN0UsTUFBTSxZQUFZLEdBQUcsSUFBQSxpQ0FBMEIsRUFBQyxLQUFLLENBQUMsS0FBSyxFQUFHLEtBQUssQ0FBQyxTQUFtQyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2SCxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbEYsSUFBSSxRQUFRLElBQUksS0FBSyxDQUFDLGlC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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ApolloTransaction = void 0;
var tslib_1 = require("tslib");
var lodashIsEqual = require("lodash.isequal");
var util_1 = require("../util");
var Queryable_1 = require("./Queryable");
const lodashIsEqual = require("lodash.isequal");
const util_1 = require("../util");
const Queryable_1 = require("./Queryable");
function getOriginalFieldArguments(id) {
// Split `${containerId}❖${JSON.stringify(path)}❖${JSON.stringify(args)}`
var idComponents = id.split('❖');
const idComponents = id.split('❖');
if (idComponents.length < 3) {

@@ -19,33 +18,31 @@ return undefined;

*/
var ApolloTransaction = /** @class */ (function (_super) {
tslib_1.__extends(ApolloTransaction, _super);
function ApolloTransaction(
class ApolloTransaction extends Queryable_1.ApolloQueryable {
constructor(
/** The underlying transaction. */
_queryable) {
var _this = _super.call(this) || this;
_this._queryable = _queryable;
_this.updateListOfReferences = _this.updateParameterizedReferences;
return _this;
super();
this._queryable = _queryable;
this.updateListOfReferences = this.updateParameterizedReferences;
}
ApolloTransaction.prototype.reset = function () {
throw new Error("reset() is not allowed within a transaction");
};
ApolloTransaction.prototype.removeOptimistic = function (_id) {
throw new Error("removeOptimistic() is not allowed within a transaction");
};
ApolloTransaction.prototype.performTransaction = function (transaction) {
reset() {
throw new Error(`reset() is not allowed within a transaction`);
}
removeOptimistic(_id) {
throw new Error(`removeOptimistic() is not allowed within a transaction`);
}
performTransaction(transaction) {
transaction(this);
};
ApolloTransaction.prototype.recordOptimisticTransaction = function (_transaction, _id) {
throw new Error("recordOptimisticTransaction() is not allowed within a transaction");
};
ApolloTransaction.prototype.watch = function (_query) {
throw new Error("watch() is not allowed within a transaction");
};
ApolloTransaction.prototype.restore = function () {
throw new Error("restore() is not allowed within a transaction");
};
ApolloTransaction.prototype.extract = function () {
throw new Error("extract() is not allowed within a transaction");
};
}
recordOptimisticTransaction(_transaction, _id) {
throw new Error(`recordOptimisticTransaction() is not allowed within a transaction`);
}
watch(_query) {
throw new Error(`watch() is not allowed within a transaction`);
}
restore() {
throw new Error(`restore() is not allowed within a transaction`);
}
extract() {
throw new Error(`extract() is not allowed within a transaction`);
}
/**

@@ -64,60 +61,46 @@ * A helper function to be used when doing EntityUpdate.

*/
ApolloTransaction.prototype.updateParameterizedReferences = function (containerId, pathToParameterizedField, _a, _b, updateFieldCallback) {
var e_1, _c;
var writeFragment = _a.writeFragment, writeFragmentName = _a.writeFragmentName;
var readFragment = _b.readFragment, readFragmentName = _b.readFragmentName;
var currentContainerNode = this._queryable.getCurrentNodeSnapshot(containerId);
updateParameterizedReferences(containerId, pathToParameterizedField, { writeFragment, writeFragmentName }, { readFragment, readFragmentName }, updateFieldCallback) {
const currentContainerNode = this._queryable.getCurrentNodeSnapshot(containerId);
if (!currentContainerNode || !currentContainerNode.outbound) {
return;
}
try {
for (var _d = tslib_1.__values(currentContainerNode.outbound), _e = _d.next(); !_e.done; _e = _d.next()) {
var _f = _e.value, outboundId = _f.id, path = _f.path;
if (lodashIsEqual(pathToParameterizedField, path)) {
var fieldArguments = getOriginalFieldArguments(outboundId);
if (fieldArguments) {
var cacheResult = void 0;
try {
cacheResult = this.readFragment({
id: containerId,
fragment: readFragment,
fragmentName: readFragmentName,
variables: fieldArguments,
}, this._queryable.isOptimisticTransaction());
}
catch (error) {
continue;
}
var previousData = (0, util_1.deepGet)(cacheResult, path);
// if previousData is not object or null or array,
// we won't allow the field to be updated
if (!Array.isArray(previousData) && typeof previousData !== 'object') {
var details = "".concat((0, util_1.verboseTypeof)(previousData), " at ContainerId ").concat(containerId, " with readFragment ").concat(readFragmentName);
throw new Error("updateParameterizedReferences() expects previousData to be an array or object instead got ".concat(details));
}
var updateData = updateFieldCallback(previousData, fieldArguments);
if (updateData !== previousData) {
this.writeFragment({
id: outboundId,
fragment: writeFragment,
fragmentName: writeFragmentName,
variables: fieldArguments,
data: updateData,
});
}
for (const { id: outboundId, path } of currentContainerNode.outbound) {
if (lodashIsEqual(pathToParameterizedField, path)) {
const fieldArguments = getOriginalFieldArguments(outboundId);
if (fieldArguments) {
let cacheResult;
try {
cacheResult = this.readFragment({
id: containerId,
fragment: readFragment,
fragmentName: readFragmentName,
variables: fieldArguments,
}, this._queryable.isOptimisticTransaction());
}
catch (error) {
continue;
}
const previousData = (0, util_1.deepGet)(cacheResult, path);
// if previousData is not object or null or array,
// we won't allow the field to be updated
if (!Array.isArray(previousData) && typeof previousData !== 'object') {
const details = `${(0, util_1.verboseTypeof)(previousData)} at ContainerId ${containerId} with readFragment ${readFragmentName}`;
throw new Error(`updateParameterizedReferences() expects previousData to be an array or object instead got ${details}`);
}
const updateData = updateFieldCallback(previousData, fieldArguments);
if (updateData !== previousData) {
this.writeFragment({
id: outboundId,
fragment: writeFragment,
fragmentName: writeFragmentName,
variables: fieldArguments,
data: updateData,
});
}
}
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_e && !_e.done && (_c = _d.return)) _c.call(_d);
}
finally { if (e_1) throw e_1.error; }
}
};
return ApolloTransaction;
}(Queryable_1.ApolloQueryable));
}
}
exports.ApolloTransaction = ApolloTransaction;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJUcmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQ0EsOENBQWlEO0FBS2pELGdDQUErRDtBQUUvRCx5Q0FBOEM7QUFFOUMsU0FBUyx5QkFBeUIsQ0FBQyxFQUFVO0lBQzNDLHlFQUF5RTtJQUN6RSxJQUFNLFlBQVksR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLElBQUksWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7UUFDM0IsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDckMsQ0FBQztBQUVEOztHQUVHO0FBQ0g7SUFBb0QsNkNBQTRCO0lBRTlFO0lBQ0Usa0NBQWtDO0lBQ3hCLFVBQXlDO1FBRnJELFlBSUUsaUJBQU8sU0FDUjtRQUhXLGdCQUFVLEdBQVYsVUFBVSxDQUErQjtRQWlDckQsNEJBQXNCLEdBQUcsS0FBSSxDQUFDLDZCQUE2QixDQUFDOztJQTlCNUQsQ0FBQztJQUVELGlDQUFLLEdBQUw7UUFDRSxNQUFNLElBQUksS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELDRDQUFnQixHQUFoQixVQUFpQixHQUFXO1FBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQsOENBQWtCLEdBQWxCLFVBQW1CLFdBQXFDO1FBQ3RELFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRUQsdURBQTJCLEdBQTNCLFVBQTRCLFlBQXNDLEVBQUUsR0FBVztRQUM3RSxNQUFNLElBQUksS0FBSyxDQUFDLG1FQUFtRSxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVELGlDQUFLLEdBQUwsVUFBTSxNQUEwQjtRQUM5QixNQUFN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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJUcmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxnREFBaUQ7QUFLakQsa0NBQStEO0FBRS9ELDJDQUE4QztBQUU5QyxTQUFTLHlCQUF5QixDQUFDLEVBQVU7SUFDM0MseUVBQXlFO0lBQ3pFLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsSUFBSSxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUMzQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNyQyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGlCQUErQixTQUFRLDJCQUE0QjtJQUU5RTtJQUNFLGtDQUFrQztJQUN4QixVQUF5QztRQUVuRCxLQUFLLEVBQUUsQ0FBQztRQUZFLGVBQVUsR0FBVixVQUFVLENBQStCO1FBaUNyRCwyQkFBc0IsR0FBRyxJQUFJLENBQUMsNkJBQTZCLENBQUM7SUE5QjVELENBQUM7SUFFRCxLQUFLO1FBQ0gsTUFBTSxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxHQUFXO1FBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQsa0JBQWtCLENBQUMsV0FBcUM7UUFDdEQsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCwyQkFBMkIsQ0FBQyxZQUFzQyxFQUFFLEdBQVc7UUFDN0UsTUFBTSxJQUFJLEtBQUssQ0FBQyxtRUFBbUUsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRCxLQUFLLENBQUMsTUFBMEI7UUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxPQUFPO1FBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxPQUFPO1FBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFHRDs7Ozs7Ozs7Ozs7O09BWUc7SUFDSCw2QkFBNkIsQ0FDM0IsV0FBbUIsRUFDbkIsd0JBQW9DLEVBQ3BDLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUErRCxFQUNqRyxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBNkQsRUFDN0YsbUJBQWtHO1FBRWxHLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUU7WUFDM0QsT0FBTztTQUNSO1FBRUQsS0FBSyxNQUFNLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsSUFBSSxvQkFBb0IsQ0FBQyxRQUFRLEVBQUU7WUFDcEUsSUFBSSxhQUFhLENBQUMsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLEVBQUU7Z0JBQ2pELE1BQU0sY0FBYyxHQUFHLHlCQUF5QixDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUM3RCxJQUFJLGNBQWMsRUFBRTtvQkFDbEIsSUFBSSxXQUFnQixDQUFDO29CQUNyQixJQUFJO3dCQUNGLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUM3Qjs0QkFDRSxFQUFFLEVBQUUsV0FBVzs0QkFDZixRQUFRLEVBQUUsWUFBWTs0QkFDdEIsWUFBWSxFQUFFLGdCQUFnQjs0QkFDOUIsU0FBUyxFQUFFLGNBQWM7eUJBQzFCLEVBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyx1QkFBdUIsRUFBRSxDQUMxQyxDQUFDO3FCQUNIO29CQUFDLE9BQU8sS0FBSyxFQUFFO3dCQUNkLFNBQVM7cUJBQ1Y7b0JBQ0QsTUFBTSxZQUFZLEdBQUcsSUFBQSxjQUFPLEVBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO29CQUVoRCxrREFBa0Q7b0JBQ2xELHlDQUF5QztvQkFDekMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksT0FBTyxZQUFZLEtBQUssUUFBUSxFQUFFO3dCQUNwRSxNQUFNLE9BQU8sR0FBRyxHQUFHLElBQUEsb0JBQWEsRUFBQyxZQUFZLENBQUMsbUJBQW1CLFdBQVcsc0JBQXNCLGdCQUFnQixFQUFFLENBQUM7d0JBQ3JILE1BQU0sSUFBSSxLQUFLLENBQUMsNkZBQTZGLE9BQU8sRUFBRSxDQUFDLENBQUM7cUJBQ3pIO29CQUVELE1BQU0sVUFBVSxHQUFHLG1CQUFtQixDQUFDLFlBQVksRUFBRSxjQUFjLENBQUMsQ0FBQztvQkFDckUsSUFBSSxVQUFVLEtBQUssWUFBWSxFQUFFO3dCQUMvQixJQUFJLENBQUMsYUFBYSxDQUFDOzRCQUNqQixFQUFFLEVBQUUsVUFBVTs0QkFDZCxRQUFRLEVBQUUsYUFBYTs0QkFDdkIsWUFBWSxFQUFFLGlCQUFpQjs0QkFDL0IsU0FBUyxFQUFFLGNBQWM7NEJBQ3pCLElBQUksRUFBRSxVQUFVO3lCQUNqQixDQUFDLENBQUM7cUJBQ0o7aUJBQ0Y7YUFDRjtTQUNGO0lBQ0gsQ0FBQztDQUVGO0FBekdELDhDQXlHQyJ9
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.buildRawOperationFromFragment = exports.buildRawOperationFromQuery = void 0;
var utilities_1 = require("msand-apollo-client/utilities");
var schema_1 = require("../schema");
const utilities_1 = require("msand-apollo-client/utilities");
const schema_1 = require("../schema");
/**

@@ -12,4 +12,4 @@ * Builds a query.

rootId: rootId || schema_1.StaticNodeId.QueryRoot,
document: document,
variables: variables,
document,
variables,
};

@@ -20,6 +20,6 @@ }

return {
rootId: rootId,
rootId,
document: (0, utilities_1.getFragmentQueryDocument)(fragmentDocument, fragmentName),
variables: variables,
fragmentName: fragmentName,
variables,
fragmentName,
fromFragmentDocument: true,

@@ -29,2 +29,2 @@ };

exports.buildRawOperationFromFragment = buildRawOperationFromFragment;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkRBQXlFO0FBR3pFLG9DQUErRDtBQUcvRDs7R0FFRztBQUNILFNBQWdCLDBCQUEwQixDQUFDLFFBQXNCLEVBQUUsU0FBc0IsRUFBRSxNQUFlO0lBQ3hHLE9BQU87UUFDTCxNQUFNLEVBQUUsTUFBTSxJQUFJLHFCQUFZLENBQUMsU0FBUztRQUN4QyxRQUFRLFVBQUE7UUFDUixTQUFTLFdBQUE7S0FDVixDQUFDO0FBQ0osQ0FBQztBQU5ELGdFQU1DO0FBRUQsU0FBZ0IsNkJBQTZCLENBQzNDLGdCQUE4QixFQUM5QixNQUFjLEVBQ2QsU0FBc0IsRUFDdEIsWUFBcUI7SUFFckIsT0FBTztRQUNMLE1BQU0sUUFBQTtRQUNOLFFBQVEsRUFBRSxJQUFBLG9DQUF3QixFQUFDLGdCQUFnQixFQUFFLFlBQVksQ0FBQztRQUNsRSxTQUFTLFdBQUE7UUFDVCxZQUFZLGNBQUE7UUFDWixvQkFBb0IsRUFBRSxJQUFJO0tBQzNCLENBQUM7QUFDSixDQUFDO0FBYkQsc0VBYUMifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkRBQXlFO0FBR3pFLHNDQUErRDtBQUcvRDs7R0FFRztBQUNILFNBQWdCLDBCQUEwQixDQUFDLFFBQXNCLEVBQUUsU0FBc0IsRUFBRSxNQUFlO0lBQ3hHLE9BQU87UUFDTCxNQUFNLEVBQUUsTUFBTSxJQUFJLHFCQUFZLENBQUMsU0FBUztRQUN4QyxRQUFRO1FBQ1IsU0FBUztLQUNWLENBQUM7QUFDSixDQUFDO0FBTkQsZ0VBTUM7QUFFRCxTQUFnQiw2QkFBNkIsQ0FDM0MsZ0JBQThCLEVBQzlCLE1BQWMsRUFDZCxTQUFzQixFQUN0QixZQUFxQjtJQUVyQixPQUFPO1FBQ0wsTUFBTTtRQUNOLFFBQVEsRUFBRSxJQUFBLG9DQUF3QixFQUFDLGdCQUFnQixFQUFFLFlBQVksQ0FBQztRQUNsRSxTQUFTO1FBQ1QsWUFBWTtRQUNaLG9CQUFvQixFQUFFLElBQUk7S0FDM0IsQ0FBQztBQUNKLENBQUM7QUFiRCxzRUFhQyJ9
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Cache = void 0;
var tslib_1 = require("tslib");
var CacheSnapshot_1 = require("./CacheSnapshot");
var CacheTransaction_1 = require("./CacheTransaction");
var context_1 = require("./context");
var GraphSnapshot_1 = require("./GraphSnapshot");
var operations_1 = require("./operations");
var OptimisticUpdateQueue_1 = require("./OptimisticUpdateQueue");
var schema_1 = require("./schema");
var util_1 = require("./util");
var errors_1 = require("./errors");
const CacheSnapshot_1 = require("./CacheSnapshot");
const CacheTransaction_1 = require("./CacheTransaction");
const context_1 = require("./context");
const GraphSnapshot_1 = require("./GraphSnapshot");
const operations_1 = require("./operations");
const OptimisticUpdateQueue_1 = require("./OptimisticUpdateQueue");
const schema_1 = require("./schema");
const util_1 = require("./util");
const errors_1 = require("./errors");
/**

@@ -20,5 +19,4 @@ * The Hermes cache.

*/
var Cache = /** @class */ (function () {
function Cache(configuration, cacheInstance) {
if (cacheInstance === void 0) { cacheInstance = undefined; }
class Cache {
constructor(configuration, cacheInstance = undefined) {
/** All active query observers. */

@@ -32,3 +30,3 @@ this._observers = [];

this._rootIds = Object.create(null);
var initialGraphSnapshot = new GraphSnapshot_1.GraphSnapshot();
const initialGraphSnapshot = new GraphSnapshot_1.GraphSnapshot();
this._snapshot = new CacheSnapshot_1.CacheSnapshot(initialGraphSnapshot, initialGraphSnapshot, new OptimisticUpdateQueue_1.OptimisticUpdateQueue());

@@ -38,8 +36,8 @@ this._context = new context_1.CacheContext(configuration);

}
Cache.prototype.retain = function (rootId) {
retain(rootId) {
return (this._rootIds[rootId] = (this._rootIds[rootId] || 0) + 1);
};
Cache.prototype.release = function (rootId) {
}
release(rootId) {
if (this._rootIds[rootId] > 0) {
var count = --this._rootIds[rootId];
const count = --this._rootIds[rootId];
if (!count)

@@ -50,7 +48,6 @@ delete this._rootIds[rootId];

return 0;
};
}
// Return a Set<string> of all the ID strings that have been retained by
// this layer/root *and* any layers/roots beneath it.
Cache.prototype.getRootIdSet = function (ids) {
if (ids === void 0) { ids = new Set(); }
getRootIdSet(ids = new Set()) {
Object.keys(this._rootIds).forEach(ids.add, ids);

@@ -60,3 +57,3 @@ ids.add(schema_1.StaticNodeId.QueryRoot);

return ids;
};
}
// The goal of garbage collection is to remove IDs from the Root layer of the

@@ -66,6 +63,6 @@ // store that are no longer reachable starting from any IDs that have been

// dataId strings that were removed from the store.
Cache.prototype.gc = function () {
var ids = this.getRootIdSet();
var snapshot = tslib_1.__assign({}, this._snapshot.optimistic._values);
ids.forEach(function (id) {
gc() {
const ids = this.getRootIdSet();
const snapshot = Object.assign({}, this._snapshot.optimistic._values);
ids.forEach((id) => {
var _a;

@@ -76,4 +73,4 @@ if (util_1.hasOwn.call(snapshot, id)) {

// were not previously contained by the Set.
var node = snapshot[id];
(_a = node.outbound) === null || _a === void 0 ? void 0 : _a.forEach(function (ref) { return ids.add(ref.id); });
const node = snapshot[id];
(_a = node.outbound) === null || _a === void 0 ? void 0 : _a.forEach(ref => ids.add(ref.id));
// By removing IDs from the snapshot object here, we protect them from

@@ -84,28 +81,28 @@ // getting removed from the root store layer below.

});
var idsToRemove = Object.keys(snapshot);
const idsToRemove = Object.keys(snapshot);
if (idsToRemove.length) {
this.transaction(false, function (t) {
idsToRemove.forEach(function (id) { return t.evict({ id: id }); });
this.transaction(false, (t) => {
idsToRemove.forEach(id => t.evict({ id }));
});
}
return idsToRemove;
};
Cache.prototype.identify = function (object) {
}
identify(object) {
return this._context.entityIdForValue(object);
};
Cache.prototype.transformDocument = function (document) {
}
transformDocument(document) {
return this._context.transformDocument(document);
};
Cache.prototype.restore = function (data, migrationMap, verifyQuery) {
var _a = (0, operations_1.restore)(data, this._context), cacheSnapshot = _a.cacheSnapshot, editedNodeIds = _a.editedNodeIds;
var migrated = (0, operations_1.migrate)(cacheSnapshot, migrationMap);
}
restore(data, migrationMap, verifyQuery) {
const { cacheSnapshot, editedNodeIds } = (0, operations_1.restore)(data, this._context);
const migrated = (0, operations_1.migrate)(cacheSnapshot, migrationMap);
if (verifyQuery && !(0, operations_1.read)(this._context, verifyQuery, migrated.baseline, Object.create(null), false).complete) {
throw new errors_1.UnsatisfiedCacheError("Restored cache cannot satisfy the verification query");
throw new errors_1.UnsatisfiedCacheError(`Restored cache cannot satisfy the verification query`);
}
this._setSnapshot(migrated, editedNodeIds);
};
Cache.prototype.extract = function (optimistic, pruneQuery) {
var cacheSnapshot = optimistic ? this._snapshot.optimistic : this._snapshot.baseline;
}
extract(optimistic, pruneQuery) {
const cacheSnapshot = optimistic ? this._snapshot.optimistic : this._snapshot.baseline;
return (0, operations_1.extract)(pruneQuery ? (0, operations_1.prune)(this._context, cacheSnapshot, pruneQuery).snapshot : cacheSnapshot, this._context);
};
}
/**

@@ -117,10 +114,10 @@ * Reads the selection expressed by a query from the cache.

*/
Cache.prototype.read = function (query, optimistic) {
read(query, optimistic) {
// TODO: Can we drop non-optimistic reads?
// https://github.com/apollographql/apollo-client/issues/1971#issuecomment-319402170
var tempStore = Object.create(null);
var result = (0, operations_1.read)(this._context, query, optimistic ? this._snapshot.optimistic : this._snapshot.baseline, tempStore);
var newKeys = Object.keys(tempStore);
const tempStore = Object.create(null);
const result = (0, operations_1.read)(this._context, query, optimistic ? this._snapshot.optimistic : this._snapshot.baseline, tempStore);
const newKeys = Object.keys(tempStore);
if (newKeys.length) {
this.transaction(true, function (t) {
this.transaction(true, (t) => {
t.merge(tempStore);

@@ -130,9 +127,9 @@ });

return result;
};
}
/**
* Retrieves the current value of the entity identified by `id`.
*/
Cache.prototype.getEntity = function (id) {
getEntity(id) {
return this._snapshot.optimistic.getNodeData(id);
};
}
/**

@@ -142,4 +139,3 @@ * Registers a callback that should be triggered any time the nodes selected

*/
Cache.prototype.watch = function (query, options) {
var _this = this;
watch(query, options) {
if (typeof options === 'function') {

@@ -153,20 +149,19 @@ options = {

}
var observer = new operations_1.QueryObserver(this._context, query, this._snapshot.optimistic, options);
const observer = new operations_1.QueryObserver(this._context, query, this._snapshot.optimistic, options);
this._observers.push(observer);
return function () { return _this._removeObserver(observer); };
};
Cache.prototype.modify = function (options) {
return () => this._removeObserver(observer);
}
modify(options) {
var _a;
return this.transaction((_a = options.broadcast) !== null && _a !== void 0 ? _a : true, function (t) { return t.modify(options); });
};
return this.transaction((_a = options.broadcast) !== null && _a !== void 0 ? _a : true, t => t.modify(options));
}
/**
* Writes values for a selection to the cache.
*/
Cache.prototype.write = function (query, payload, broadcast) {
if (broadcast === void 0) { broadcast = true; }
this.transaction(broadcast, function (t) { return t.write(query, payload); });
};
Cache.prototype.transaction = function (broadcast, changeIdOrCallback, callback, onWatchUpdated) {
var tracer = this._context.tracer;
var changeId;
write(query, payload, broadcast = true) {
this.transaction(broadcast, t => t.write(query, payload));
}
transaction(broadcast, changeIdOrCallback, callback, onWatchUpdated) {
const { tracer } = this._context;
let changeId;
if (typeof callback !== 'function') {

@@ -178,9 +173,9 @@ callback = changeIdOrCallback;

}
var tracerContext;
let tracerContext;
if (tracer.transactionStart) {
tracerContext = tracer.transactionStart();
}
var transaction = new CacheTransaction_1.CacheTransaction(this._context, this._snapshot, changeId);
const transaction = new CacheTransaction_1.CacheTransaction(this._context, this._snapshot, changeId);
this._transactions.push(transaction);
var result;
let result;
try {

@@ -203,6 +198,6 @@ result = callback(transaction);

}
var _a = transaction.commit(), snapshot = _a.snapshot, editedNodeIds = _a.editedNodeIds;
const { snapshot, editedNodeIds } = transaction.commit();
this._setSnapshot(snapshot, editedNodeIds, broadcast, onWatchUpdated);
if (this._transactions.length) {
var outer = this._transactions[this._transactions.length - 1];
const outer = this._transactions[this._transactions.length - 1];
outer.markEditedNodeIds(editedNodeIds);

@@ -215,28 +210,22 @@ outer.setSnapshot(snapshot);

return typeof result === 'boolean' ? result : editedNodeIds.size > 0;
};
}
/**
* Roll back a previously enqueued optimistic update.
*/
Cache.prototype.rollback = function (changeId) {
this.transaction(true, function (t) { return t.rollback(changeId); });
};
Cache.prototype.getSnapshot = function () {
rollback(changeId) {
this.transaction(true, t => t.rollback(changeId));
}
getSnapshot() {
return this._snapshot;
};
}
/**
* Resets all data tracked by the cache.
*/
Cache.prototype.reset = function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var allIds, baseline, optimistic, optimisticQueue;
return tslib_1.__generator(this, function (_a) {
allIds = new Set(this._snapshot.optimistic.allNodeIds());
baseline = new GraphSnapshot_1.GraphSnapshot();
optimistic = baseline;
optimisticQueue = new OptimisticUpdateQueue_1.OptimisticUpdateQueue();
this._setSnapshot(new CacheSnapshot_1.CacheSnapshot(baseline, optimistic, optimisticQueue), allIds);
return [2 /*return*/];
});
});
};
async reset() {
const allIds = new Set(this._snapshot.optimistic.allNodeIds());
const baseline = new GraphSnapshot_1.GraphSnapshot();
const optimistic = baseline;
const optimisticQueue = new OptimisticUpdateQueue_1.OptimisticUpdateQueue();
this._setSnapshot(new CacheSnapshot_1.CacheSnapshot(baseline, optimistic, optimisticQueue), allIds);
}
// Internal

@@ -246,8 +235,8 @@ /**

*/
Cache.prototype._removeObserver = function (observer) {
var index = this._observers.findIndex(function (o) { return o === observer; });
_removeObserver(observer) {
const index = this._observers.findIndex(o => o === observer);
if (index < 0)
return;
this._observers.splice(index, 1);
};
}
/**

@@ -257,8 +246,7 @@ * Point the cache to a new snapshot, and let observers know of the change.

*/
Cache.prototype._setSnapshot = function (snapshot, editedNodeIds, broadcast, onWatchUpdated) {
if (broadcast === void 0) { broadcast = true; }
var lastSnapshot = this._snapshot;
_setSnapshot(snapshot, editedNodeIds, broadcast = true, onWatchUpdated) {
const lastSnapshot = this._snapshot;
this._snapshot = snapshot;
if (lastSnapshot) {
var strict = this._context.strict;
const { strict } = this._context;
_copyUnaffectedCachedReads(lastSnapshot.baseline, snapshot.baseline, editedNodeIds, strict);

@@ -283,39 +271,26 @@ // Don't bother copying the optimistic read cache unless it's actually a

}
};
Cache.prototype.broadcastWatches = function (options) {
}
broadcastWatches(options) {
this._broadcastWatches(this._editedNodeIds, options === null || options === void 0 ? void 0 : options.onWatchUpdated, options === null || options === void 0 ? void 0 : options.optimistic);
};
Cache.prototype._broadcastWatches = function (editedNodeIds, onWatchUpdated, optimistic) {
var e_1, _a;
if (optimistic === void 0) { optimistic = true; }
var snapshot = this._snapshot;
var tracerContext;
}
_broadcastWatches(editedNodeIds, onWatchUpdated, optimistic = true) {
const snapshot = this._snapshot;
let tracerContext;
if (this._context.tracer.broadcastStart) {
tracerContext = this._context.tracer.broadcastStart({ snapshot: snapshot, editedNodeIds: editedNodeIds });
tracerContext = this._context.tracer.broadcastStart({ snapshot, editedNodeIds });
}
var graphSnapshot = optimistic ? snapshot.optimistic : snapshot.baseline;
try {
for (var _b = tslib_1.__values(this._observers), _c = _b.next(); !_c.done; _c = _b.next()) {
var observer = _c.value;
observer.consumeChanges(graphSnapshot, editedNodeIds, this._cacheInstance, onWatchUpdated);
}
const graphSnapshot = optimistic ? snapshot.optimistic : snapshot.baseline;
for (const observer of this._observers) {
observer.consumeChanges(graphSnapshot, editedNodeIds, this._cacheInstance, onWatchUpdated);
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
}
finally { if (e_1) throw e_1.error; }
}
this._context.dirty.clear();
if (this._context.tracer.broadcastEnd) {
this._context.tracer.broadcastEnd({ snapshot: snapshot, editedNodeIds: editedNodeIds }, tracerContext);
this._context.tracer.broadcastEnd({ snapshot, editedNodeIds }, tracerContext);
}
};
Cache.prototype.evict = function (options) {
}
evict(options) {
var _a;
return this.transaction((_a = options.broadcast) !== null && _a !== void 0 ? _a : true, function (t) { return t.evict(options); });
};
return Cache;
}());
return this.transaction((_a = options.broadcast) !== null && _a !== void 0 ? _a : true, t => t.evict(options));
}
}
exports.Cache = Cache;

@@ -330,36 +305,25 @@ /**

function _copyUnaffectedCachedReads(lastSnapshot, nextSnapshot, editedNodeIds, strict) {
var e_2, _a;
try {
for (var _b = tslib_1.__values(lastSnapshot.readCache), _c = _b.next(); !_c.done; _c = _b.next()) {
var _d = tslib_1.__read(_c.value, 2), operation = _d[0], result = _d[1];
var complete = result.complete, entityIds = result.entityIds, dynamicNodeIds = result.dynamicNodeIds;
// We don't care about incomplete results.
if (!complete)
continue;
// If we're not in strict mode; we can carry completeness forward (and
// not bother copying results forward, as its cheaper to just fetch again).
if (!strict) {
nextSnapshot.readCache.set(operation, { complete: true });
continue;
}
// Nor queries where we don't know which nodes were affected.
if (!entityIds)
continue;
// If any nodes in the cached read were edited, do not copy.
if (entityIds && (0, util_1.setsHaveSomeIntersection)(editedNodeIds, entityIds))
continue;
// If any dynamic nodes were edited, also do not copy.
if (dynamicNodeIds && (0, util_1.setsHaveSomeIntersection)(editedNodeIds, dynamicNodeIds))
continue;
nextSnapshot.readCache.set(operation, result);
for (const [operation, result] of lastSnapshot.readCache) {
const { complete, entityIds, dynamicNodeIds } = result;
// We don't care about incomplete results.
if (!complete)
continue;
// If we're not in strict mode; we can carry completeness forward (and
// not bother copying results forward, as its cheaper to just fetch again).
if (!strict) {
nextSnapshot.readCache.set(operation, { complete: true });
continue;
}
// Nor queries where we don't know which nodes were affected.
if (!entityIds)
continue;
// If any nodes in the cached read were edited, do not copy.
if (entityIds && (0, util_1.setsHaveSomeIntersection)(editedNodeIds, entityIds))
continue;
// If any dynamic nodes were edited, also do not copy.
if (dynamicNodeIds && (0, util_1.setsHaveSomeIntersection)(editedNodeIds, dynamicNodeIds))
continue;
nextSnapshot.readCache.set(operation, result);
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
}
finally { if (e_2) throw e_2.error; }
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJDYWNoZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBR0EsaURBQWdEO0FBQ2hELHVEQUFzRDtBQUN0RCxxQ0FBeUM7QUFDekMsaURBQWlFO0FBQ2pFLDJDQUFtRztBQUNuRyxpRUFBZ0U7QUFHaEUsbUNBQXNGO0FBQ3RGLCtCQUFrRjtBQUNsRixtQ0FBaUQ7QUFRakQ7Ozs7O0dBS0c7QUFDSDtJQWNFLGVBQ0UsYUFBa0UsRUFDbEUsYUFBMEQ7UUFBMUQsOEJBQUEsRUFBQSx5QkFBMEQ7UUFSNUQsa0NBQWtDO1FBQzFCLGVBQVUsR0FBaUMsRUFBRSxDQUFDO1FBRTlDLGtCQUFhLEdBQW9DLEVBQUUsQ0FBQztRQUNwRCxtQkFBYyxHQUFnQixJQUFJLEdBQUcsRUFBRSxDQUFDO1FBWWhELDZFQUE2RTtRQUM3RSw0RUFBNEU7UUFDNUUsMEVBQTBFO1FBQ2xFLGFBQVEsR0FFWixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBWHRCLElBQU0sb0JBQW9CLEdBQUcsSUFBSSw2QkFBYSxFQUFFLENBQUM7UUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLDZCQUFhLENBQUMsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUsSUFBSSw2Q0FBcUIsRUFBRSxDQUFDLENBQUM7UUFDNUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLHNCQUFZLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxhQUFhLENBQUM7SUFDdEMsQ0FBQztJQVNNLHNCQUFNLEdBQWIsVUFBYyxNQUFjO1FBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRU0sdUJBQU8sR0FBZCxVQUFl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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJDYWNoZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHQSxtREFBZ0Q7QUFDaEQseURBQXNEO0FBQ3RELHVDQUF5QztBQUN6QyxtREFBaUU7QUFDakUsNkNBQW1HO0FBQ25HLG1FQUFnRTtBQUdoRSxxQ0FBc0Y7QUFDdEYsaUNBQWtGO0FBQ2xGLHFDQUFpRDtBQVFqRDs7Ozs7R0FLRztBQUNILE1BQWEsS0FBSztJQWNoQixZQUNFLGFBQWtFLEVBQ2xFLGdCQUFpRCxTQUFTO1FBUjVELGtDQUFrQztRQUMxQixlQUFVLEdBQWlDLEVBQUUsQ0FBQztRQUU5QyxrQkFBYSxHQUFvQyxFQUFFLENBQUM7UUFDcEQsbUJBQWMsR0FBZ0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQVloRCw2RUFBNkU7UUFDN0UsNEVBQTRFO1FBQzVFLDBFQUEwRTtRQUNsRSxhQUFRLEdBRVosTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQVh0QixNQUFNLG9CQUFvQixHQUFHLElBQUksNkJBQWEsRUFBRSxDQUFDO1FBQ2pELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSw2QkFBYSxDQUFDLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLElBQUksNkNBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQzVHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxzQkFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxjQUFjLEdBQUcsYUFBYSxDQUFDO0lBQ3RDLENBQUM7SUFTTSxNQUFNLENBQUMsTUFBYztRQUMxQixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVNLE9BQU8sQ0FBQyxNQUFjO1FBQzNCLElBQUksSUFB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

@@ -11,4 +11,4 @@ "use strict";

*/
var CacheSnapshot = /** @class */ (function () {
function CacheSnapshot(
class CacheSnapshot {
constructor(
/** The base snapshot for this version of the cache. */

@@ -24,5 +24,4 @@ baseline,

}
return CacheSnapshot;
}());
}
exports.CacheSnapshot = CacheSnapshot;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGVTbmFwc2hvdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkNhY2hlU25hcHNob3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0E7Ozs7OztHQU1HO0FBQ0g7SUFDRTtJQUNFLHVEQUF1RDtJQUNoRCxRQUF1QjtJQUM5Qix1RUFBdUU7SUFDaEUsVUFBeUI7SUFDaEMsc0RBQXNEO0lBQy9DLGVBQXNDO1FBSnRDLGFBQVEsR0FBUixRQUFRLENBQWU7UUFFdkIsZUFBVSxHQUFWLFVBQVUsQ0FBZTtRQUV6QixvQkFBZSxHQUFmLGVBQWUsQ0FBdUI7SUFDNUMsQ0FBQztJQUNOLG9CQUFDO0FBQUQsQ0FBQyxBQVRELElBU0M7QUFUWSxzQ0FBYSJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGVTbmFwc2hvdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkNhY2hlU25hcHNob3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0E7Ozs7OztHQU1HO0FBQ0gsTUFBYSxhQUFhO0lBQ3hCO0lBQ0UsdURBQXVEO0lBQ2hELFFBQXVCO0lBQzlCLHVFQUF1RTtJQUNoRSxVQUF5QjtJQUNoQyxzREFBc0Q7SUFDL0MsZUFBc0M7UUFKdEMsYUFBUSxHQUFSLFFBQVEsQ0FBZTtRQUV2QixlQUFVLEdBQVYsVUFBVSxDQUFlO1FBRXpCLG9CQUFlLEdBQWYsZUFBZSxDQUF1QjtJQUM1QyxDQUFDO0NBQ0w7QUFURCxzQ0FTQyJ9
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.CacheTransaction = void 0;
var tslib_1 = require("tslib");
var msand_apollo_client_1 = require("msand-apollo-client");
var equality_1 = tslib_1.__importDefault(require("@wry/equality"));
var Transaction_1 = require("./apollo/Transaction");
var CacheSnapshot_1 = require("./CacheSnapshot");
var nodes_1 = require("./nodes");
var operations_1 = require("./operations");
var schema_1 = require("./schema");
var util_1 = require("./util");
var DELETE = Object.create(null);
var INVALIDATE = Object.create(null);
const tslib_1 = require("tslib");
const msand_apollo_client_1 = require("msand-apollo-client");
const equality_1 = tslib_1.__importDefault(require("@wry/equality"));
const Transaction_1 = require("./apollo/Transaction");
const CacheSnapshot_1 = require("./CacheSnapshot");
const nodes_1 = require("./nodes");
const operations_1 = require("./operations");
const schema_1 = require("./schema");
const util_1 = require("./util");
const DELETE = Object.create(null);
const INVALIDATE = Object.create(null);
function isDeleteModifier(value) {

@@ -28,4 +28,4 @@ return value === DELETE;

*/
var CacheTransaction = /** @class */ (function () {
function CacheTransaction(_context, _snapshot, _optimisticChangeId) {
class CacheTransaction {
constructor(_context, _snapshot, _optimisticChangeId) {
this._context = _context;

@@ -42,14 +42,14 @@ this._snapshot = _snapshot;

}
CacheTransaction.prototype.isOptimisticTransaction = function () {
isOptimisticTransaction() {
return this._optimisticChangeId ? true : undefined;
};
CacheTransaction.prototype.transformDocument = function (document) {
}
transformDocument(document) {
return this._context.transformDocument(document);
};
}
/**
* Executes reads against the current values in the transaction.
*/
CacheTransaction.prototype.read = function (query) {
read(query) {
return (0, operations_1.read)(this._context, query, this._optimisticChangeId ? this._snapshot.optimistic : this._snapshot.baseline, Object.create(null));
};
}
/**

@@ -62,3 +62,3 @@ * Merges a payload with the current values in the transaction.

*/
CacheTransaction.prototype.write = function (query, payload) {
write(query, payload) {
if (this._optimisticChangeId) {

@@ -70,17 +70,17 @@ this._writeOptimistic(query, payload);

}
};
}
/**
* Roll back a previously enqueued optimistic update.
*/
CacheTransaction.prototype.rollback = function (changeId) {
var current = this._snapshot;
var optimisticQueue = current.optimisticQueue.remove(changeId);
rollback(changeId) {
const current = this._snapshot;
const optimisticQueue = current.optimisticQueue.remove(changeId);
current.optimisticQueue = optimisticQueue;
var optimistic = this._buildOptimisticSnapshot(current.baseline);
const optimistic = this._buildOptimisticSnapshot(current.baseline);
// Invalidate all IDs from the soon-to-be previous optimistic snapshot,
// since we don't know which IDs were changed by the one we're rolling back.
var allIds = new Set(current.optimistic.allNodeIds());
const allIds = new Set(current.optimistic.allNodeIds());
(0, util_1.addToSet)(this._editedNodeIds, allIds);
this._snapshot = new CacheSnapshot_1.CacheSnapshot(current.baseline, optimistic, optimisticQueue);
};
}
/**

@@ -90,24 +90,24 @@ * Complete the transaction, returning the new snapshot and the ids of any

*/
CacheTransaction.prototype.commit = function () {
commit() {
this._triggerEntityUpdaters();
var snapshot = this._snapshot;
let snapshot = this._snapshot;
if (this._optimisticChangeId) {
snapshot = new CacheSnapshot_1.CacheSnapshot(snapshot.baseline, snapshot.optimistic, snapshot.optimisticQueue.enqueue(this._optimisticChangeId, this._deltas));
}
return { snapshot: snapshot, editedNodeIds: this._editedNodeIds, writtenQueries: this._writtenQueries };
};
CacheTransaction.prototype.markEditedNodeIds = function (allIds) {
return { snapshot, editedNodeIds: this._editedNodeIds, writtenQueries: this._writtenQueries };
}
markEditedNodeIds(allIds) {
(0, util_1.addToSet)(this._editedNodeIds, allIds);
};
CacheTransaction.prototype.setSnapshot = function (snapshot) {
}
setSnapshot(snapshot) {
this._snapshot = snapshot;
};
CacheTransaction.prototype.getPreviousNodeSnapshot = function (nodeId) {
var prevSnapshot = this._optimisticChangeId ? this._parentSnapshot.optimistic : this._parentSnapshot.baseline;
}
getPreviousNodeSnapshot(nodeId) {
const prevSnapshot = this._optimisticChangeId ? this._parentSnapshot.optimistic : this._parentSnapshot.baseline;
return prevSnapshot.getNodeSnapshot(nodeId);
};
CacheTransaction.prototype.getCurrentNodeSnapshot = function (nodeId) {
var currentSnapshot = this._optimisticChangeId ? this._snapshot.optimistic : this._snapshot.baseline;
}
getCurrentNodeSnapshot(nodeId) {
const currentSnapshot = this._optimisticChangeId ? this._snapshot.optimistic : this._snapshot.baseline;
return currentSnapshot.getNodeSnapshot(nodeId);
};
}
/**

@@ -117,43 +117,32 @@ * Emits change events for any callbacks configured via

*/
CacheTransaction.prototype._triggerEntityUpdaters = function () {
var e_1, _a, e_2, _b;
var entityUpdaters = this._context.entityUpdaters;
_triggerEntityUpdaters() {
const { entityUpdaters } = this._context;
if (!Object.keys(entityUpdaters).length)
return;
// Capture a static set of nodes, as the updaters may add to _editedNodeIds.
var nodesToEmit = [];
try {
for (var _c = tslib_1.__values(this._editedNodeIds), _d = _c.next(); !_d.done; _d = _c.next()) {
var nodeId = _d.value;
var node = this.getCurrentNodeSnapshot(nodeId);
var previous = this.getPreviousNodeSnapshot(nodeId);
// One of them may be undefined; but we are guaranteed that both represent
// the same entity.
var either = node || previous;
if (!(either instanceof nodes_1.EntitySnapshot))
continue; // Only entities
var typeName = (0, util_1.isObject)(either.data) && either.data.__typename;
var isRoot = nodeId === schema_1.StaticNodeId.QueryRoot;
if (!typeName && isRoot) {
typeName = 'Query';
}
if (!typeName)
continue; // Must have a typename for now.
var updater = entityUpdaters[typeName];
if (!updater)
continue;
nodesToEmit.push({
updater: updater,
node: node && (isRoot || node.inbound) && node.data,
previous: previous && previous.data,
});
const nodesToEmit = [];
for (const nodeId of this._editedNodeIds) {
const node = this.getCurrentNodeSnapshot(nodeId);
const previous = this.getPreviousNodeSnapshot(nodeId);
// One of them may be undefined; but we are guaranteed that both represent
// the same entity.
const either = node || previous;
if (!(either instanceof nodes_1.EntitySnapshot))
continue; // Only entities
let typeName = (0, util_1.isObject)(either.data) && either.data.__typename;
const isRoot = nodeId === schema_1.StaticNodeId.QueryRoot;
if (!typeName && isRoot) {
typeName = 'Query';
}
if (!typeName)
continue; // Must have a typename for now.
const updater = entityUpdaters[typeName];
if (!updater)
continue;
nodesToEmit.push({
updater,
node: node && (isRoot || node.inbound) && node.data,
previous: previous && previous.data,
});
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
}
finally { if (e_1) throw e_1.error; }
}
if (!nodesToEmit.length)

@@ -163,59 +152,47 @@ return;

// Can we clean this up? :(
var dataProxy = new Transaction_1.ApolloTransaction(this);
try {
for (var nodesToEmit_1 = tslib_1.__values(nodesToEmit), nodesToEmit_1_1 = nodesToEmit_1.next(); !nodesToEmit_1_1.done; nodesToEmit_1_1 = nodesToEmit_1.next()) {
var _e = nodesToEmit_1_1.value, updater = _e.updater, node = _e.node, previous = _e.previous;
updater(dataProxy, node, previous);
}
const dataProxy = new Transaction_1.ApolloTransaction(this);
for (const { updater, node, previous } of nodesToEmit) {
updater(dataProxy, node, previous);
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (nodesToEmit_1_1 && !nodesToEmit_1_1.done && (_b = nodesToEmit_1.return)) _b.call(nodesToEmit_1);
}
finally { if (e_2) throw e_2.error; }
}
};
}
/**
* Merge a payload with the baseline snapshot.
*/
CacheTransaction.prototype._writeBaseline = function (query, payload) {
var current = this._snapshot;
var _a = (0, operations_1.write)(this._context, current.baseline, query, payload), baseline = _a.snapshot, editedNodeIds = _a.editedNodeIds, writtenQueries = _a.writtenQueries;
_writeBaseline(query, payload) {
const current = this._snapshot;
const { snapshot: baseline, editedNodeIds, writtenQueries } = (0, operations_1.write)(this._context, current.baseline, query, payload);
(0, util_1.addToSet)(this._editedNodeIds, editedNodeIds);
(0, util_1.addToSet)(this._writtenQueries, writtenQueries);
var optimistic = this._buildOptimisticSnapshot(baseline);
const optimistic = this._buildOptimisticSnapshot(baseline);
this._snapshot = new CacheSnapshot_1.CacheSnapshot(baseline, optimistic, current.optimisticQueue);
};
}
/**
* Given a baseline snapshot, build an optimistic one from it.
*/
CacheTransaction.prototype._buildOptimisticSnapshot = function (baseline) {
var optimisticQueue = this._snapshot.optimisticQueue;
_buildOptimisticSnapshot(baseline) {
const { optimisticQueue } = this._snapshot;
if (!optimisticQueue.hasUpdates())
return baseline;
var _a = optimisticQueue.apply(this._context, baseline), snapshot = _a.snapshot, editedNodeIds = _a.editedNodeIds;
const { snapshot, editedNodeIds } = optimisticQueue.apply(this._context, baseline);
(0, util_1.addToSet)(this._editedNodeIds, editedNodeIds);
return snapshot;
};
}
/**
* Merge a payload with the optimistic snapshot.
*/
CacheTransaction.prototype._writeOptimistic = function (query, payload) {
this._deltas.push({ query: query, payload: payload });
var _a = (0, operations_1.write)(this._context, this._snapshot.optimistic, query, payload), optimistic = _a.snapshot, editedNodeIds = _a.editedNodeIds, writtenQueries = _a.writtenQueries;
_writeOptimistic(query, payload) {
this._deltas.push({ query, payload });
const { snapshot: optimistic, editedNodeIds, writtenQueries } = (0, operations_1.write)(this._context, this._snapshot.optimistic, query, payload);
(0, util_1.addToSet)(this._writtenQueries, writtenQueries);
(0, util_1.addToSet)(this._editedNodeIds, editedNodeIds);
this._snapshot = new CacheSnapshot_1.CacheSnapshot(this._snapshot.baseline, optimistic, this._snapshot.optimisticQueue);
};
CacheTransaction.prototype.modify = function (options) {
var e_3, _a, e_4, _b, e_5, _c, e_6, _d, e_7, _e, e_8, _f;
var _this = this;
var _g;
var graphSnapshot = options.optimistic ? this._snapshot.optimistic : this._snapshot.baseline;
var id = 'id' in options ? options.id : 'ROOT_QUERY';
}
modify(options) {
var _a;
const graphSnapshot = options.optimistic ? this._snapshot.optimistic : this._snapshot.baseline;
const id = 'id' in options ? options.id : 'ROOT_QUERY';
if (!id) {
return false;
}
var node = graphSnapshot.getNodeSnapshot(id);
const node = graphSnapshot.getNodeSnapshot(id);
if (!node) {

@@ -225,25 +202,14 @@ return false;

function readFromSnapshot(obj, key) {
var e_9, _a;
var _b;
var data = obj.data;
var datum = data && typeof data === 'object' && key in data ? data[key] : undefined;
var _a;
const data = obj.data;
const datum = data && typeof data === 'object' && key in data ? data[key] : undefined;
if (datum != null) {
return [{ d: datum, k: null }];
}
var nodes = [];
try {
for (var _c = tslib_1.__values((_b = obj.outbound) !== null && _b !== void 0 ? _b : []), _d = _c.next(); !_d.done; _d = _c.next()) {
var out = _d.value;
if (out.path[0] === key) {
nodes.push({ d: graphSnapshot.getNodeData(out.id), k: out.id });
}
const nodes = [];
for (const out of (_a = obj.outbound) !== null && _a !== void 0 ? _a : []) {
if (out.path[0] === key) {
nodes.push({ d: graphSnapshot.getNodeData(out.id), k: out.id });
}
}
catch (e_9_1) { e_9 = { error: e_9_1 }; }
finally {
try {
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
}
finally { if (e_9) throw e_9.error; }
}
if (nodes.length) {

@@ -260,4 +226,4 @@ return nodes;

}
var tempStore = Object.create(null);
var readField = function (fieldNameOrOptions, from) {
const tempStore = Object.create(null);
const readField = (fieldNameOrOptions, from) => {
var _a, _b, _c, _d, _e;

@@ -273,4 +239,4 @@ if (from === void 0) { from = ((_b = (_a = tempStore[id]) === null || _a === void 0 ? void 0 : _a.data) !== null && _b !== void 0 ? _b : node.data); }

if ((0, msand_apollo_client_1.isReference)(from)) {
var ref = from.__ref;
var obj = (_d = tempStore[ref]) !== null && _d !== void 0 ? _d : graphSnapshot.getNodeSnapshot(ref);
const ref = from.__ref;
const obj = (_d = tempStore[ref]) !== null && _d !== void 0 ? _d : graphSnapshot.getNodeSnapshot(ref);
if (!obj) {

@@ -289,16 +255,16 @@ return undefined;

}
var ensureNewSnapshot = function (nodeId) {
var parent = getSnapshot(nodeId);
const ensureNewSnapshot = (nodeId) => {
const parent = getSnapshot(nodeId);
// TODO: We're assuming that the only time we call _ensureNewSnapshot when
// there is no parent is when the node is an entity. Can we enforce it, or
// pass a type through?
var newSnapshot = parent ? (0, nodes_1.cloneNodeSnapshot)(parent) : new nodes_1.EntitySnapshot();
const newSnapshot = parent ? (0, nodes_1.cloneNodeSnapshot)(parent) : new nodes_1.EntitySnapshot();
tempStore[nodeId] = newSnapshot;
return newSnapshot;
};
var details = {
readField: readField,
DELETE: DELETE,
INVALIDATE: INVALIDATE,
canRead: function (value) {
const details = {
readField,
DELETE,
INVALIDATE,
canRead(value) {
return (0, msand_apollo_client_1.isReference)(value)

@@ -312,7 +278,7 @@ ? snapshot.has(value.__ref)

storeFieldName: '',
toReference: function (value, mergeIntoStore) {
var entityId = _this._context.entityIdForValue(value);
toReference: (value, mergeIntoStore) => {
const entityId = this._context.entityIdForValue(value);
if (entityId && mergeIntoStore && !(0, msand_apollo_client_1.isReference)(value) && typeof value !== 'string') {
var nodeSnapshot = ensureNewSnapshot(entityId);
nodeSnapshot.data = tslib_1.__assign(tslib_1.__assign({}, nodeSnapshot.data), value);
const nodeSnapshot = ensureNewSnapshot(entityId);
nodeSnapshot.data = Object.assign(Object.assign({}, nodeSnapshot.data), value);
modified = true;

@@ -323,12 +289,12 @@ }

};
var allowRef = false;
var data = (_g = node.data) !== null && _g !== void 0 ? _g : {};
var keys = Object.keys(data);
var payload = {};
var deleted = new Set();
var modified = false;
var allDeleted = false;
var invalidated = false;
const allowRef = false;
const data = (_a = node.data) !== null && _a !== void 0 ? _a : {};
const keys = Object.keys(data);
const payload = {};
const deleted = new Set();
let modified = false;
let allDeleted = false;
let invalidated = false;
if (typeof options.fields === 'function') {
var field = options.fields;
const field = options.fields;
if (keys.length === 0) {

@@ -338,3 +304,3 @@ details.fieldName = '';

try {
var value = field(data, details);
const value = field(data, details);
if (isDeleteModifier(value)) {

@@ -349,54 +315,34 @@ allDeleted = true;

}
try {
for (var keys_1 = tslib_1.__values(keys), keys_1_1 = keys_1.next(); !keys_1_1.done; keys_1_1 = keys_1.next()) {
var key = keys_1_1.value;
try {
for (var _h = (e_4 = void 0, tslib_1.__values(readFromSnapshot(node, key))), _j = _h.next(); !_j.done; _j = _h.next()) {
var _k = _j.value, d = _k.d, k = _k.k;
var storeFieldName = k !== null && k !== void 0 ? k : key;
var useRef = (k === null || k === void 0 ? void 0 : k.includes('❖')) && allowRef;
var copyOrCurrent = useRef ? { __ref: k } : Array.isArray(d)
? Array.prototype.slice.call(d)
: typeof d === 'object'
? tslib_1.__assign({}, d) : d;
details.fieldName = key;
details.storeFieldName = storeFieldName;
var value = field(copyOrCurrent, details);
if (isDeleteModifier(value)) {
deleted.add(storeFieldName);
modified = true;
}
else if (isInvalidateModifier(value)) {
this._editedNodeIds.add(id);
var dirty = this._context.dirty.get(id);
if (!dirty) {
this._context.dirty.set(id, dirty = new Set());
}
dirty.add(key);
dirty.add(storeFieldName);
invalidated = true;
}
else if (value !== copyOrCurrent || (!useRef && !(0, equality_1.default)(value, d))) {
payload[key] = ((0, msand_apollo_client_1.isReference)(value) ? getSnapshot(value.__ref).data : value);
modified = true;
}
}
for (const key of keys) {
for (const { d, k } of readFromSnapshot(node, key)) {
const storeFieldName = k !== null && k !== void 0 ? k : key;
const useRef = (k === null || k === void 0 ? void 0 : k.includes('❖')) && allowRef;
const copyOrCurrent = useRef ? { __ref: k } : Array.isArray(d)
? Array.prototype.slice.call(d)
: typeof d === 'object'
? Object.assign({}, d) : d;
details.fieldName = key;
details.storeFieldName = storeFieldName;
const value = field(copyOrCurrent, details);
if (isDeleteModifier(value)) {
deleted.add(storeFieldName);
modified = true;
}
catch (e_4_1) { e_4 = { error: e_4_1 }; }
finally {
try {
if (_j && !_j.done && (_b = _h.return)) _b.call(_h);
else if (isInvalidateModifier(value)) {
this._editedNodeIds.add(id);
let dirty = this._context.dirty.get(id);
if (!dirty) {
this._context.dirty.set(id, dirty = new Set());
}
finally { if (e_4) throw e_4.error; }
dirty.add(key);
dirty.add(storeFieldName);
invalidated = true;
}
else if (value !== copyOrCurrent || (!useRef && !(0, equality_1.default)(value, d))) {
payload[key] = ((0, msand_apollo_client_1.isReference)(value) ? getSnapshot(value.__ref).data : value);
modified = true;
}
}
}
catch (e_3_1) { e_3 = { error: e_3_1 }; }
finally {
try {
if (keys_1_1 && !keys_1_1.done && (_a = keys_1.return)) _a.call(keys_1);
}
finally { if (e_3) throw e_3.error; }
}
if (keys.length !== 0 && keys.length === deleted.size && keys.every(function (key) { return deleted.has(key); })) {
if (keys.length !== 0 && keys.length === deleted.size && keys.every(key => deleted.has(key))) {
allDeleted = true;

@@ -407,55 +353,35 @@ modified = true;

else {
try {
for (var _l = tslib_1.__values(Object.keys(options.fields)), _m = _l.next(); !_m.done; _m = _l.next()) {
var key = _m.value;
var field = options.fields[key];
try {
for (var _o = (e_6 = void 0, tslib_1.__values(readFromSnapshot(node, key))), _p = _o.next(); !_p.done; _p = _o.next()) {
var _q = _p.value, d = _q.d, k = _q.k;
var storeFieldName = k !== null && k !== void 0 ? k : key;
var useRef = (k === null || k === void 0 ? void 0 : k.includes('❖')) && allowRef;
var copyOrCurrent = useRef ? { __ref: k } : Array.isArray(d)
? Array.prototype.slice.call(d)
: typeof d === 'object'
? tslib_1.__assign({}, d) : d;
details.fieldName = key;
details.storeFieldName = storeFieldName;
var value = field(copyOrCurrent, details);
if (isDeleteModifier(value)) {
deleted.add(storeFieldName);
modified = true;
}
else if (isInvalidateModifier(value)) {
this._editedNodeIds.add(id);
var dirty = this._context.dirty.get(id);
if (!dirty) {
this._context.dirty.set(id, dirty = new Set());
}
dirty.add(key);
dirty.add(storeFieldName);
invalidated = true;
}
else if (value !== copyOrCurrent || (!useRef && !(0, equality_1.default)(value, d))) {
payload[key] = (0, msand_apollo_client_1.isReference)(value) ? getSnapshot(value.__ref).data : value;
modified = true;
}
}
for (const key of Object.keys(options.fields)) {
const field = options.fields[key];
for (const { d, k } of readFromSnapshot(node, key)) {
const storeFieldName = k !== null && k !== void 0 ? k : key;
const useRef = (k === null || k === void 0 ? void 0 : k.includes('❖')) && allowRef;
const copyOrCurrent = useRef ? { __ref: k } : Array.isArray(d)
? Array.prototype.slice.call(d)
: typeof d === 'object'
? Object.assign({}, d) : d;
details.fieldName = key;
details.storeFieldName = storeFieldName;
const value = field(copyOrCurrent, details);
if (isDeleteModifier(value)) {
deleted.add(storeFieldName);
modified = true;
}
catch (e_6_1) { e_6 = { error: e_6_1 }; }
finally {
try {
if (_p && !_p.done && (_d = _o.return)) _d.call(_o);
else if (isInvalidateModifier(value)) {
this._editedNodeIds.add(id);
let dirty = this._context.dirty.get(id);
if (!dirty) {
this._context.dirty.set(id, dirty = new Set());
}
finally { if (e_6) throw e_6.error; }
dirty.add(key);
dirty.add(storeFieldName);
invalidated = true;
}
else if (value !== copyOrCurrent || (!useRef && !(0, equality_1.default)(value, d))) {
payload[key] = (0, msand_apollo_client_1.isReference)(value) ? getSnapshot(value.__ref).data : value;
modified = true;
}
}
}
catch (e_5_1) { e_5 = { error: e_5_1 }; }
finally {
try {
if (_m && !_m.done && (_c = _l.return)) _c.call(_l);
}
finally { if (e_5) throw e_5.error; }
}
if (keys.length !== 0 && keys.length === deleted.size && keys.every(function (key) { return deleted.has(key); })) {
if (keys.length !== 0 && keys.length === deleted.size && keys.every(key => deleted.has(key))) {
allDeleted = true;

@@ -468,21 +394,11 @@ modified = true;

}
var current = this._snapshot;
var editor = new operations_1.SnapshotEditor(this._context, graphSnapshot);
var empty = new Set();
try {
for (var _r = tslib_1.__values(Object.entries(tempStore)), _s = _r.next(); !_s.done; _s = _r.next()) {
var _t = tslib_1.__read(_s.value, 2), mergeId = _t[0], snapshot_1 = _t[1];
var mergePayload = snapshot_1.data;
if (mergePayload && typeof mergePayload === 'object' && !Array.isArray(mergePayload)) {
editor.modify(mergeId, mergePayload, empty);
}
const current = this._snapshot;
const editor = new operations_1.SnapshotEditor(this._context, graphSnapshot);
const empty = new Set();
for (const [mergeId, snapshot] of Object.entries(tempStore)) {
const mergePayload = snapshot.data;
if (mergePayload && typeof mergePayload === 'object' && !Array.isArray(mergePayload)) {
editor.modify(mergeId, mergePayload, empty);
}
}
catch (e_7_1) { e_7 = { error: e_7_1 }; }
finally {
try {
if (_s && !_s.done && (_e = _r.return)) _e.call(_r);
}
finally { if (e_7) throw e_7.error; }
}
if (allDeleted) {

@@ -497,27 +413,14 @@ editor.delete(id);

if (options.optimistic) {
this._deltas.push({ id: id, payload: payload, deleted: deleted });
this._deltas.push({ id, payload, deleted });
}
}
var newSnapshot = editor.commit();
var snapshot = newSnapshot.snapshot, editedNodeIds = newSnapshot.editedNodeIds;
const newSnapshot = editor.commit();
const { snapshot, editedNodeIds } = newSnapshot;
(0, util_1.addToSet)(this._editedNodeIds, editedNodeIds);
var edited = Array.from(editedNodeIds);
var _loop_1 = function (key, val) {
if (key.rootId === id || edited.some(function (cachedId) { var _a; return (_a = val.entityIds) === null || _a === void 0 ? void 0 : _a.has(cachedId); })) {
const edited = Array.from(editedNodeIds);
for (const [key, val] of snapshot.readCache) {
if (key.rootId === id || edited.some(cachedId => { var _a; return (_a = val.entityIds) === null || _a === void 0 ? void 0 : _a.has(cachedId); })) {
snapshot.readCache.delete(key);
}
};
try {
for (var _u = tslib_1.__values(snapshot.readCache), _v = _u.next(); !_v.done; _v = _u.next()) {
var _w = tslib_1.__read(_v.value, 2), key = _w[0], val = _w[1];
_loop_1(key, val);
}
}
catch (e_8_1) { e_8 = { error: e_8_1 }; }
finally {
try {
if (_v && !_v.done && (_f = _u.return)) _f.call(_u);
}
finally { if (e_8) throw e_8.error; }
}
if (options.optimistic) {

@@ -527,70 +430,44 @@ this._snapshot = new CacheSnapshot_1.CacheSnapshot(current.baseline, snapshot, current.optimisticQueue);

else {
var optimistic = this._buildOptimisticSnapshot(snapshot);
const optimistic = this._buildOptimisticSnapshot(snapshot);
this._snapshot = new CacheSnapshot_1.CacheSnapshot(snapshot, optimistic, current.optimisticQueue);
}
return modified;
};
CacheTransaction.prototype.merge = function (tempStore) {
var e_10, _a, e_11, _b;
var current = this._snapshot;
var editor = new operations_1.SnapshotEditor(this._context, current.baseline);
var empty = new Set();
try {
for (var _c = tslib_1.__values(Object.entries(tempStore)), _d = _c.next(); !_d.done; _d = _c.next()) {
var _e = tslib_1.__read(_d.value, 2), id = _e[0], snapshot_2 = _e[1];
var payload = snapshot_2.data;
if (payload && typeof payload === 'object' && !Array.isArray(payload)) {
editor.modify(id, payload, empty);
}
}
merge(tempStore) {
const current = this._snapshot;
const editor = new operations_1.SnapshotEditor(this._context, current.baseline);
const empty = new Set();
for (const [id, snapshot] of Object.entries(tempStore)) {
const payload = snapshot.data;
if (payload && typeof payload === 'object' && !Array.isArray(payload)) {
editor.modify(id, payload, empty);
}
}
catch (e_10_1) { e_10 = { error: e_10_1 }; }
finally {
try {
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
}
finally { if (e_10) throw e_10.error; }
}
var newSnapshot = editor.commit();
var snapshot = newSnapshot.snapshot, editedNodeIds = newSnapshot.editedNodeIds;
const newSnapshot = editor.commit();
const { snapshot, editedNodeIds } = newSnapshot;
(0, util_1.addToSet)(this._editedNodeIds, editedNodeIds);
var edited = Array.from(editedNodeIds);
var _loop_2 = function (key, val) {
if (edited.some(function (cachedId) { var _a; return (_a = val.entityIds) === null || _a === void 0 ? void 0 : _a.has(cachedId); })) {
const edited = Array.from(editedNodeIds);
for (const [key, val] of snapshot.readCache) {
if (edited.some(cachedId => { var _a; return (_a = val.entityIds) === null || _a === void 0 ? void 0 : _a.has(cachedId); })) {
snapshot.readCache.delete(key);
}
};
try {
for (var _f = tslib_1.__values(snapshot.readCache), _g = _f.next(); !_g.done; _g = _f.next()) {
var _h = tslib_1.__read(_g.value, 2), key = _h[0], val = _h[1];
_loop_2(key, val);
}
}
catch (e_11_1) { e_11 = { error: e_11_1 }; }
finally {
try {
if (_g && !_g.done && (_b = _f.return)) _b.call(_f);
}
finally { if (e_11) throw e_11.error; }
}
var optimistic = this._buildOptimisticSnapshot(snapshot);
const optimistic = this._buildOptimisticSnapshot(snapshot);
this._snapshot = new CacheSnapshot_1.CacheSnapshot(snapshot, optimistic, current.optimisticQueue);
};
CacheTransaction.prototype.evict = function (options) {
}
evict(options) {
var _a;
var _b;
var modifier = function (_current, details) {
const modifier = (_current, details) => {
return details.DELETE;
};
return this.modify({
id: (_b = options.id) !== null && _b !== void 0 ? _b : 'ROOT_QUERY',
fields: options.fieldName ? (_a = {},
_a[options.fieldName] = modifier,
_a) : modifier,
id: (_a = options.id) !== null && _a !== void 0 ? _a : 'ROOT_QUERY',
fields: options.fieldName ? {
[options.fieldName]: modifier,
} : modifier,
broadcast: options.broadcast,
});
};
return CacheTransaction;
}());
}
}
exports.CacheTransaction = CacheTransaction;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGVUcmFuc2FjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkNhY2hlVHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQU1BLDJEQUE4SDtBQUM5SCxtRUFBb0M7QUFFcEMsb0RBQXlEO0FBQ3pELGlEQUFnRDtBQUdoRCxpQ0FBMEU7QUFDMUUsMkNBQTJEO0FBRzNELG1DQUF1RztBQUN2RywrQkFBMEQ7QUFFMUQsSUFBTSxNQUFNLEdBQW1CLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDbkQsSUFBTSxVQUFVLEdBQXVCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFM0QsU0FBUyxnQkFBZ0IsQ0FBQyxLQUFVO0lBQ2xDLE9BQU8sS0FBSyxLQUFLLE1BQU0sQ0FBQztBQUMxQixDQUFDO0FBRUQsU0FBUyxvQkFBb0IsQ0FBQyxLQUFVO0lBQ3RDLE9BQU8sS0FBSyxLQUFLLFVBQVUsQ0FBQztBQUM5QixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0g7SUFjRSwwQkFDVSxRQUFtQyxFQUNuQyxTQUF3QixFQUN4QixtQkFBOEI7UUFGOUIsYUFBUSxHQUFSLFFBQVEsQ0FBMkI7UUFDbkMsY0FBUyxHQUFULFNBQVMsQ0FBZTtRQUN4Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQVc7UUFmeEMsMERBQTBEO1FBQ2xELG1CQUFjLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztRQUUzQyxpREFBaUQ7UUFDekMsWUFBTyxHQUFpQixFQUFFLENBQUM7UUFFbkMsa0RBQWtEO1FBQzFDLG9CQUFlLEdBQUcsSUFBSSxHQUFHLEVBQWtDLENBQUM7UUFVbEUsSUFBSSxDQUFDLGVBQWUsR0FBRyxTQUFTLENBQUM7SUFDbkMsQ0FBQztJQUVELGtEQUF1QixHQUF2QjtRQUNFLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJ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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGVUcmFuc2FjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkNhY2hlVHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQU1BLDZEQUE4SDtBQUM5SCxxRUFBb0M7QUFFcEMsc0RBQXlEO0FBQ3pELG1EQUFnRDtBQUdoRCxtQ0FBMEU7QUFDMUUsNkNBQTJEO0FBRzNELHFDQUF1RztBQUN2RyxpQ0FBMEQ7QUFFMUQsTUFBTSxNQUFNLEdBQW1CLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDbkQsTUFBTSxVQUFVLEdBQXVCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFM0QsU0FBUyxnQkFBZ0IsQ0FBQyxLQUFVO0lBQ2xDLE9BQU8sS0FBSyxLQUFLLE1BQU0sQ0FBQztBQUMxQixDQUFDO0FBRUQsU0FBUyxvQkFBb0IsQ0FBQyxLQUFVO0lBQ3RDLE9BQU8sS0FBSyxLQUFLLFVBQVUsQ0FBQztBQUM5QixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBYSxnQkFBZ0I7SUFjM0IsWUFDVSxRQUFtQyxFQUNuQyxTQUF3QixFQUN4QixtQkFBOEI7UUFGOUIsYUFBUSxHQUFSLFFBQVEsQ0FBMkI7UUFDbkMsY0FBUyxHQUFULFNBQVMsQ0FBZTtRQUN4Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQVc7UUFmeEMsMERBQTBEO1FBQ2xELG1CQUFjLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztRQUUzQyxpREFBaUQ7UUFDekMsWUFBTyxHQUFpQixFQUFFLENBQUM7UUFFbkMsa0RBQWtEO1FBQzFDLG9CQUFlLEdBQUcsSUFBSSxHQUFHLEVBQWtDLENBQUM7UUFVbEUsSUFBSSxDQUFDLGVBQWUsR0FBRyxTQUFTLENBQUM7SUFDbkMsQ0FBQztJQUVELHVCQUF1QjtRQUNyQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFT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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.operationCacheKey = exports.defaultEntityIdMapper = exports._makeEntityIdMapper = exports.CacheContext = void 0;
var tslib_1 = require("tslib");
var utilities_1 = require("msand-apollo-client/utilities");
var equality_1 = tslib_1.__importDefault(require("@wry/equality"));
var ParsedQueryNode_1 = require("../ParsedQueryNode");
var util_1 = require("../util");
var ConsoleTracer_1 = require("./ConsoleTracer");
var QueryInfo_1 = require("./QueryInfo");
const tslib_1 = require("tslib");
const utilities_1 = require("msand-apollo-client/utilities");
const equality_1 = tslib_1.__importDefault(require("@wry/equality"));
const ParsedQueryNode_1 = require("../ParsedQueryNode");
const util_1 = require("../util");
const ConsoleTracer_1 = require("./ConsoleTracer");
const QueryInfo_1 = require("./QueryInfo");
/**
* Configuration and shared state used throughout the cache's operation.
*/
var CacheContext = /** @class */ (function () {
function CacheContext(config) {
if (config === void 0) { config = {}; }
class CacheContext {
constructor(config = {}) {
var _a;

@@ -24,3 +23,3 @@ /** All currently known & processed GraphQL documents. */

// Infer dev mode from NODE_ENV, by convention.
var nodeEnv = typeof process !== 'undefined' ? process.env.NODE_ENV : 'development';
const nodeEnv = typeof process !== 'undefined' ? process.env.NODE_ENV : 'development';
this.entityIdForValue = _makeEntityIdMapper(config.entityIdForNode, config.typePolicies);

@@ -44,5 +43,5 @@ this.entityTransformer = config.entityTransformer;

*/
CacheContext.prototype.transformDocument = function (document) {
transformDocument(document) {
if (this.addTypename && !document.hasBeenTransformed) {
var transformedDocument = (0, utilities_1.addTypenameToDocument)(document);
const transformedDocument = (0, utilities_1.addTypenameToDocument)(document);
transformedDocument.hasBeenTransformed = true;

@@ -52,3 +51,3 @@ return transformedDocument;

return document;
};
}
/**

@@ -60,10 +59,9 @@ * Returns a memoized & parsed operation.

*/
CacheContext.prototype.parseOperation = function (raw) {
var e_1, _a;
var _b, _c, _d;
parseOperation(raw) {
var _a, _b, _c;
// It appears like Apollo or someone upstream is cloning or otherwise
// modifying the queries that are passed down. Thus, the operation source
// is a more reliable cache key…
var cacheKey = operationCacheKey(raw.document, raw.fragmentName);
var operationInstances = this._operationMap.get(cacheKey);
const cacheKey = operationCacheKey(raw.document, raw.fragmentName);
let operationInstances = this._operationMap.get(cacheKey);
if (!operationInstances) {

@@ -73,26 +71,16 @@ operationInstances = [];

}
try {
// Do we already have a copy of this guy?
for (var operationInstances_1 = tslib_1.__values(operationInstances), operationInstances_1_1 = operationInstances_1.next(); !operationInstances_1_1.done; operationInstances_1_1 = operationInstances_1.next()) {
var instance = operationInstances_1_1.value;
if (instance.rootId !== raw.rootId)
continue;
if (!(0, equality_1.default)(instance.variables, raw.variables))
continue;
return instance;
}
// Do we already have a copy of this guy?
for (const instance of operationInstances) {
if (instance.rootId !== raw.rootId)
continue;
if (!(0, equality_1.default)(instance.variables, raw.variables))
continue;
return instance;
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (operationInstances_1_1 && !operationInstances_1_1.done && (_a = operationInstances_1.return)) _a.call(operationInstances_1);
}
finally { if (e_1) throw e_1.error; }
}
var updateRaw = tslib_1.__assign(tslib_1.__assign({}, raw), { document: this.transformDocument(raw.document) });
var rootHasReadPolicy = Object.keys((_d = (_c = (_b = this.typePolicies) === null || _b === void 0 ? void 0 : _b.Query) === null || _c === void 0 ? void 0 : _c.fields) !== null && _d !== void 0 ? _d : {}).length > 0;
var info = this._queryInfo(cacheKey, updateRaw);
var fullVariables = tslib_1.__assign(tslib_1.__assign({}, info.variableDefaults), updateRaw.variables);
var operation = {
info: info,
const updateRaw = Object.assign(Object.assign({}, raw), { document: this.transformDocument(raw.document) });
const rootHasReadPolicy = Object.keys((_c = (_b = (_a = this.typePolicies) === null || _a === void 0 ? void 0 : _a.Query) === null || _b === void 0 ? void 0 : _b.fields) !== null && _c !== void 0 ? _c : {}).length > 0;
const info = this._queryInfo(cacheKey, updateRaw);
const fullVariables = Object.assign(Object.assign({}, info.variableDefaults), updateRaw.variables);
const operation = {
info,
rootId: updateRaw.rootId,

@@ -105,7 +93,7 @@ parsedQuery: (0, ParsedQueryNode_1.expandVariables)(info.parsed, fullVariables),

return operation;
};
}
/**
* Retrieves a memoized QueryInfo for a given GraphQL document.
*/
CacheContext.prototype._queryInfo = function (cacheKey, raw) {
_queryInfo(cacheKey, raw) {
if (!this._queryInfoMap.has(cacheKey)) {

@@ -115,5 +103,4 @@ this._queryInfoMap.set(cacheKey, new QueryInfo_1.QueryInfo(this, raw));

return this._queryInfoMap.get(cacheKey);
};
return CacheContext;
}());
}
}
exports.CacheContext = CacheContext;

@@ -124,39 +111,28 @@ /**

function _makeEntityIdMapper(idForNode, typePolicies) {
var mapper = idForNode || (!typePolicies ? defaultEntityIdMapper
: function (node) {
var e_2, _a;
const mapper = idForNode || (!typePolicies ? defaultEntityIdMapper
: (node) => {
if (!node) {
return undefined;
}
var __typename = node.__typename;
const { __typename } = node;
if (typeof __typename === 'string' && __typename in typePolicies) {
var keyFields = typePolicies[__typename].keyFields;
const keyFields = typePolicies[__typename].keyFields;
if (Array.isArray(keyFields)) {
var keys = {};
try {
for (var keyFields_1 = tslib_1.__values(keyFields), keyFields_1_1 = keyFields_1.next(); !keyFields_1_1.done; keyFields_1_1 = keyFields_1.next()) {
var key = keyFields_1_1.value;
var value = node[key];
if (value === undefined) {
return undefined;
}
keys[key] = value;
const keys = {};
for (const key of keyFields) {
const value = node[key];
if (value === undefined) {
return undefined;
}
keys[key] = value;
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (keyFields_1_1 && !keyFields_1_1.done && (_a = keyFields_1.return)) _a.call(keyFields_1);
}
finally { if (e_2) throw e_2.error; }
}
return "".concat(__typename, ":").concat(JSON.stringify(keys));
return `${__typename}:${JSON.stringify(keys)}`;
}
}
var id = node.id;
var idType = typeof id;
const { id } = node;
const idType = typeof id;
if (idType !== 'string' && idType !== 'number') {
return undefined;
}
return __typename ? "".concat(__typename, ":").concat(id) : "".concat(id);
return __typename ? `${__typename}:${id}` : `${id}`;
});

@@ -167,3 +143,3 @@ return function entityIdForNode(node) {

// We don't trust upstream implementations.
var entityId = mapper(node);
const entityId = mapper(node);
if (typeof entityId === 'string')

@@ -177,13 +153,12 @@ return entityId;

exports._makeEntityIdMapper = _makeEntityIdMapper;
function defaultEntityIdMapper(_a) {
var __typename = _a.__typename, _id = _a._id, _b = _a.id, id = _b === void 0 ? _id : _b;
function defaultEntityIdMapper({ __typename, _id, id = _id }) {
if (id == null) {
return undefined;
}
var idType = typeof id;
var numberOrString = idType === 'number' || idType === 'string';
const idType = typeof id;
const numberOrString = idType === 'number' || idType === 'string';
if (typeof __typename === 'string') {
return "".concat(__typename, ":").concat(numberOrString ? id : JSON.stringify(id));
return `${__typename}:${numberOrString ? id : JSON.stringify(id)}`;
}
return numberOrString ? "".concat(id) : undefined;
return numberOrString ? `${id}` : undefined;
}

@@ -193,3 +168,3 @@ exports.defaultEntityIdMapper = defaultEntityIdMapper;

if (fragmentName) {
return "".concat(fragmentName, "\u2756").concat(document.loc.source.body);
return `${fragmentName}❖${document.loc.source.body}`;
}

@@ -199,2 +174,2 @@ return document.loc.source.body;

exports.operationCacheKey = operationCacheKey;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGVDb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiQ2FjaGVDb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwyREFBc0U7QUFDdEUsbUVBQW9DO0FBS3BDLHNEQUF5RTtBQUd6RSxnQ0FBaUQ7QUFHakQsaURBQWdEO0FBQ2hELHlDQUF3QztBQThJeEM7O0dBRUc7QUFDSDtJQXlDRSxzQkFBWSxNQUFvRDtRQUFwRCx1QkFBQSxFQUFBLFdBQW9EOztRQVRoRSx5REFBeUQ7UUFDeEMsa0JBQWEsR0FBRyxJQUFJLEdBQUcsRUFBa0MsQ0FBQztRQUMzRSxrRUFBa0U7UUFDakQsa0JBQWEsR0FBRyxJQUFJLEdBQUcsRUFBNEMsQ0FBQztRQUVyRSxVQUFLLEdBQUcsSUFBSSxHQUFHLEVBQXVCLENBQUM7UUFLckQsK0NBQStDO1FBQy9DLElBQU0sT0FBTyxHQUFHLE9BQU8sT0FBTyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUV0RixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDekYsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQztRQUNsRCxJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssWUFBWSxDQUFDO1FBRXZGLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxNQUFNLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3hFLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxD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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGVDb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiQ2FjaGVDb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw2REFBc0U7QUFDdEUscUVBQW9DO0FBS3BDLHdEQUF5RTtBQUd6RSxrQ0FBaUQ7QUFHakQsbURBQWdEO0FBQ2hELDJDQUF3QztBQThJeEM7O0dBRUc7QUFDSCxNQUFhLFlBQVk7SUF5Q3ZCLFlBQVksU0FBa0QsRUFBRTs7UUFUaEUseURBQXlEO1FBQ3hDLGtCQUFhLEdBQUcsSUFBSSxHQUFHLEVBQWtDLENBQUM7UUFDM0Usa0VBQWtFO1FBQ2pELGtCQUFhLEdBQUcsSUFBSSxHQUFHLEVBQTRDLENBQUM7UUFFckUsVUFBSyxHQUFHLElBQUksR0FBRyxFQUF1QixDQUFDO1FBS3JELCtDQUErQztRQUMvQyxNQUFNLE9BQU8sR0FBRyxPQUFPLE9BQU8sS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFFdEYsSUFBSSxDQUFDLGdCQUFnQixHQUFHLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3pGLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUM7UUFDbEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxRQUFRLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLFlBQVksQ0FBQztRQUV2RixJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sTUFBTSxDQUFDLE1BQU0sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUN4RSxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxNQUFN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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ConsoleTracer = void 0;
var tslib_1 = require("tslib");
var INDENT = ' ';
const INDENT = ' ';
/**

@@ -12,5 +11,4 @@ * The default tracer used by the cache.

*/
var ConsoleTracer = /** @class */ (function () {
function ConsoleTracer(_verbose, _logger) {
if (_logger === void 0) { _logger = ConsoleTracer.DefaultLogger; }
class ConsoleTracer {
constructor(_verbose, _logger = ConsoleTracer.DefaultLogger) {
this._verbose = _verbose;

@@ -21,17 +19,13 @@ this._logger = _logger;

}
ConsoleTracer.prototype.warning = function (message) {
var metadata = [];
for (var _i = 1; _i < arguments.length; _i++) {
metadata[_i - 1] = arguments[_i];
}
warning(message, ...metadata) {
if (this._verbose)
return;
this._emit.apply(this, tslib_1.__spreadArray(['warn', message], tslib_1.__read(metadata), false));
};
ConsoleTracer.prototype.readEnd = function (operation, info) {
this._emit('warn', message, ...metadata);
}
readEnd(operation, info) {
if (!this._verbose)
return;
var message = this.formatOperation('read', operation);
const message = this.formatOperation('read', operation);
if (info.cacheHit) {
this._emit('debug', "".concat(message, " (cached)"), info.result);
this._emit('debug', `${message} (cached)`, info.result);
}

@@ -41,59 +35,42 @@ else {

}
};
ConsoleTracer.prototype.writeEnd = function (operation, info) {
var _this = this;
}
writeEnd(operation, info) {
if (!this._verbose)
return;
var payload = info.payload, newSnapshot = info.newSnapshot, warnings = info.warnings;
var message = this.formatOperation('write', operation);
const { payload, newSnapshot, warnings } = info;
const message = this.formatOperation('write', operation);
// Extended logging for writes that trigger warnings.
if (warnings) {
this._group(message, function () {
var e_1, _a;
_this._emit('warn', 'payload with warnings:', payload);
try {
for (var warnings_1 = tslib_1.__values(warnings), warnings_1_1 = warnings_1.next(); !warnings_1_1.done; warnings_1_1 = warnings_1.next()) {
var warning = warnings_1_1.value;
_this._emit('warn', warning);
}
this._group(message, () => {
this._emit('warn', 'payload with warnings:', payload);
for (const warning of warnings) {
this._emit('warn', warning);
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (warnings_1_1 && !warnings_1_1.done && (_a = warnings_1.return)) _a.call(warnings_1);
}
finally { if (e_1) throw e_1.error; }
}
_this._emit('debug', 'new snapshot:', newSnapshot);
this._emit('debug', 'new snapshot:', newSnapshot);
});
}
else {
this._emit('debug', message, { payload: payload, newSnapshot: newSnapshot });
this._emit('debug', message, { payload, newSnapshot });
}
};
ConsoleTracer.prototype.transactionEnd = function (error) {
}
transactionEnd(error) {
if (error) {
this._emit('warn', "Rolling transaction back due to error:", error);
this._emit('warn', `Rolling transaction back due to error:`, error);
}
};
}
// eslint-disable-next-line class-methods-use-this
ConsoleTracer.prototype.formatOperation = function (action, operation) {
var _a = operation.info, operationType = _a.operationType, operationName = _a.operationName;
return "".concat(action, "(").concat(operationType, " ").concat(operationName, ")");
};
formatOperation(action, operation) {
const { operationType, operationName } = operation.info;
return `${action}(${operationType} ${operationName})`;
}
// Internal
ConsoleTracer.prototype._emit = function (level, message) {
var _a;
var metadata = [];
for (var _i = 2; _i < arguments.length; _i++) {
metadata[_i - 2] = arguments[_i];
}
_emit(level, message, ...metadata) {
if (this._indent) {
for (var i = 0; i < this._indent; i++) {
message = "".concat(INDENT).concat(message);
for (let i = 0; i < this._indent; i++) {
message = `${INDENT}${message}`;
}
}
(_a = this._logger)[level].apply(_a, tslib_1.__spreadArray([message], tslib_1.__read(metadata), false));
};
ConsoleTracer.prototype._group = function (message, callback) {
this._logger[level](message, ...metadata);
}
_group(message, callback) {
this._groupStart(message);

@@ -106,4 +83,4 @@ try {

}
};
ConsoleTracer.prototype._groupStart = function (message) {
}
_groupStart(message) {
if (this._logger.group && this._logger.groupEnd) {

@@ -116,4 +93,4 @@ this._logger.group(message);

}
};
ConsoleTracer.prototype._groupEnd = function () {
}
_groupEnd() {
if (this._logger.group && this._logger.groupEnd) {

@@ -125,5 +102,4 @@ this._logger.groupEnd();

}
};
return ConsoleTracer;
}());
}
}
exports.ConsoleTracer = ConsoleTracer;

@@ -137,16 +113,11 @@ (function (ConsoleTracer) {

group: _makeDefaultEmitter('group'),
groupEnd: console.groupEnd ? console.groupEnd.bind(console) : function () { },
groupEnd: console.groupEnd ? console.groupEnd.bind(console) : () => { },
};
})(ConsoleTracer = exports.ConsoleTracer || (exports.ConsoleTracer = {}));
exports.ConsoleTracer = ConsoleTracer;
function _makeDefaultEmitter(level) {
var method = console[level] || console.log;
return function defaultLogger(message) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
method.call.apply(method, tslib_1.__spreadArray([console, "[Cache] ".concat(message)], tslib_1.__read(args), false));
const method = console[level] || console.log;
return function defaultLogger(message, ...args) {
method.call(console, `[Cache] ${message}`, ...args);
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uc29sZVRyYWNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkNvbnNvbGVUcmFjZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUlBLElBQU0sTUFBTSxHQUFHLElBQUksQ0FBQztBQUVwQjs7Ozs7R0FLRztBQUNIO0lBS0UsdUJBQ1UsUUFBaUIsRUFDakIsT0FBMkQ7UUFBM0Qsd0JBQUEsRUFBQSxVQUFnQyxhQUFhLENBQUMsYUFBYTtRQUQzRCxhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQW9EO1FBTHJFLHlDQUF5QztRQUNqQyxZQUFPLEdBQUcsQ0FBQyxDQUFDO0lBS2pCLENBQUM7SUFFSiwrQkFBTyxHQUFQLFVBQVEsT0FBZTtRQUFFLGtCQUFrQjthQUFsQixVQUFrQixFQUFsQixxQkFBa0IsRUFBbEIsSUFBa0I7WUFBbEIsaUNBQWtCOztRQUN6QyxJQUFJLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUMxQixJQUFJLENBQUMsS0FBSyxPQUFWLElBQUkseUJBQU8sTUFBTSxFQUFFLE9BQU8sa0JBQUssUUFBUSxXQUFFO0lBQzNDLENBQUM7SUFFRCwrQkFBTyxHQUFQLFVBQVEsU0FBeUMsRUFBRSxJQUFxQjtRQUN0RSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzNCLElBQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxVQUFHLE9BQU8sY0FBVyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN6RDthQUFNO1lBQ0wsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMxQztJQUNILENBQUM7SUFFRCxnQ0FB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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uc29sZVRyYWNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkNvbnNvbGVUcmFjZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDO0FBRXBCOzs7OztHQUtHO0FBQ0gsTUFBYSxhQUFhO0lBS3hCLFlBQ1UsUUFBaUIsRUFDakIsVUFBZ0MsYUFBYSxDQUFDLGFBQWE7UUFEM0QsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixZQUFPLEdBQVAsT0FBTyxDQUFvRDtRQUxyRSx5Q0FBeUM7UUFDakMsWUFBTyxHQUFHLENBQUMsQ0FBQztJQUtqQixDQUFDO0lBRUosT0FBTyxDQUFDLE9BQWUsRUFBRSxHQUFHLFFBQWU7UUFDekMsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELE9BQU8sQ0FBQyxTQUF5QyxFQUFFLElBQXFCO1FBQ3RFLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDM0IsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDeEQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEdBQUcsT0FBTyxXQUFXLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3pEO2FBQU07WUFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzFDO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxTQUF5QyxFQUFFLElBQW1DO1FBQ3JGLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDM0IsTUFBTSxF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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.QueryInfo = void 0;
var tslib_1 = require("tslib");
var ParsedQueryNode_1 = require("../ParsedQueryNode");
var util_1 = require("../util");
const ParsedQueryNode_1 = require("../ParsedQueryNode");
const util_1 = require("../util");
/**

@@ -13,6 +12,5 @@ * Metadata about a GraphQL document (query/mutation/fragment/etc).

*/
var QueryInfo = /** @class */ (function () {
function QueryInfo(context, raw) {
var e_1, _a;
var _b;
class QueryInfo {
constructor(context, raw) {
var _a;
this.document = raw.document;

@@ -24,3 +22,3 @@ this.operation = (0, util_1.getOperationOrDie)(raw.document);

this.fragmentMap = (0, util_1.fragmentMapForDocument)(raw.document);
var _c = (0, ParsedQueryNode_1.parseQuery)(context, this.fragmentMap, this.operation.selectionSet), parsedQuery = _c.parsedQuery, variables = _c.variables;
const { parsedQuery, variables } = (0, ParsedQueryNode_1.parseQuery)(context, this.fragmentMap, this.operation.selectionSet);
this.parsed = parsedQuery;

@@ -33,48 +31,26 @@ this.variables = variables;

if (!raw.fromFragmentDocument) {
var declaredVariables = (0, util_1.variablesInOperation)(this.operation);
try {
for (var _d = tslib_1.__values(Object.keys((_b = raw.variables) !== null && _b !== void 0 ? _b : {})), _e = _d.next(); !_e.done; _e = _d.next()) {
var key = _e.value;
declaredVariables.add(key);
}
const declaredVariables = (0, util_1.variablesInOperation)(this.operation);
for (const key of Object.keys((_a = raw.variables) !== null && _a !== void 0 ? _a : {})) {
declaredVariables.add(key);
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
}
finally { if (e_1) throw e_1.error; }
}
this._assertValid(declaredVariables);
}
}
QueryInfo.prototype._assertValid = function (declaredVariables) {
var messages = [];
_assertValid(declaredVariables) {
const messages = [];
this._assertAllVariablesDeclared(messages, declaredVariables);
if (!messages.length)
return;
var mainMessage = "Validation errors in ".concat(this.operationType, " ").concat(this.operationName || '<unknown>');
throw new Error("".concat(mainMessage, ":").concat(messages.map(function (m) { return "\n * ".concat(m); }).join('')));
};
QueryInfo.prototype._assertAllVariablesDeclared = function (messages, declaredVariables) {
var e_2, _a;
try {
for (var _b = tslib_1.__values(this.variables), _c = _b.next(); !_c.done; _c = _b.next()) {
var name_1 = _c.value;
if (!declaredVariables.has(name_1)) {
messages.push("Variable $".concat(name_1, " is used, but not declared"));
}
const mainMessage = `Validation errors in ${this.operationType} ${this.operationName || '<unknown>'}`;
throw new Error(`${mainMessage}:${messages.map(m => `\n * ${m}`).join('')}`);
}
_assertAllVariablesDeclared(messages, declaredVariables) {
for (const name of this.variables) {
if (!declaredVariables.has(name)) {
messages.push(`Variable $${name} is used, but not declared`);
}
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
}
finally { if (e_2) throw e_2.error; }
}
};
return QueryInfo;
}());
}
}
exports.QueryInfo = QueryInfo;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVlcnlJbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiUXVlcnlJbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxzREFBMEU7QUFHMUUsZ0NBU2lCO0FBS2pCOzs7OztHQUtHO0FBQ0g7SUE0QkUsbUJBQVksT0FBa0MsRUFBRSxHQUFpQjs7O1FBQy9ELElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUEsd0JBQWlCLEVBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUM7UUFDOUMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDdEUsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQzVFLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBQSw2QkFBc0IsRUFBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFbEQsSUFBQSxLQUE2QixJQUFBLDRCQUFVLEVBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsRUFBN0YsV0FBVyxpQkFBQSxFQUFFLFNBQVMsZUFBdUUsQ0FBQztRQUN0RyxJQUFJLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQztRQUMxQixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBQSxrQ0FBMkIsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFcEUsa0VBQWtFO1FBQ2xFLHFFQUFxRTtRQUNyRSxzRUFBc0U7UUFDdEUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsRUFBRTtZQUM3QixJQUFNLGlCQUFpQixHQUFHLElBQUEsMkJBQW9CLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDOztnQkFDL0QsS0FBa0IsSUFBQSxLQUFBLGlCQUFBLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBQSxHQUFHLENBQUMsU0FBUyxtQ0FBSSxFQUFFLENBQUMsQ0FBQSxnQkFBQSw0QkFBRTtvQkFBL0MsSUFBTSxHQUFHLFdBQUE7b0JBQ1osaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2lCQUM1Qjs7Ozs7Ozs7O1lBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1NBQ3RDO0lBQ0gsQ0FBQztJQUVPLGdDQUFZLEdBQXBCLFVBQXFCLGlCQUE4QjtRQUNqRCxJQUFNLFFBQVEsR0FBYSxFQUFFLENBQUM7UUFFOUIsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFFBQVEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBRTlELElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTTtZQUFFLE9BQU87UUFDN0IsSUFBTSxXQUFXLEdBQUcsK0JBQXdCLElBQUksQ0FBQyxhQUFhLGNBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxXQUFXLENBQUUsQ0FBQztRQUN0RyxNQUFNLElBQUksS0FBSyxDQUFDLFVBQUcsV0FBVyxjQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxlQUFRLENBQUMsQ0FBRSxFQUFYLENBQVcsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBRSxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVPLCtDQUEyQixHQUFuQyxVQUFvQyxRQUFrQixFQUFFLGlCQUE4Qjs7O1lBQ3BGLEtBQW1CLElBQUEsS0FBQSxpQkFBQSxJQUFJLENBQUMsU0FBUyxDQUFBLGdCQUFBLDRCQUFFO2dCQUE5QixJQUFNLE1BQUksV0FBQTtnQkFDYixJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLE1BQUksQ0FBQyxFQUFFO29CQUNoQyxRQUFRLENBQUMsSUFBSSxDQUFDLG9CQUFhLE1BQUksK0JBQTRCLENBQUMsQ0FBQztpQkFDOUQ7YUFDRjs7Ozs7Ozs7O0lBQ0gsQ0FBQztJQUVILGdCQUFDO0FBQUQsQ0FBQyxBQXZFRCxJQXVFQztBQXZFWSw4QkFBUyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVlcnlJbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiUXVlcnlJbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHdEQUEwRTtBQUcxRSxrQ0FTaUI7QUFLakI7Ozs7O0dBS0c7QUFDSCxNQUFhLFNBQVM7SUE0QnBCLFlBQVksT0FBa0MsRUFBRSxHQUFpQjs7UUFDL0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBQSx3QkFBaUIsRUFBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQztRQUM5QyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUN0RSxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDNUUsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFBLDZCQUFzQixFQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RCxNQUFNLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxHQUFHLElBQUEsNEJBQVUsRUFBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3RHLElBQUksQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDO1FBQzFCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFBLGtDQUEyQixFQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVwRSxrRUFBa0U7UUFDbEUscUVBQXFFO1FBQ3JFLHNFQUFzRTtRQUN0RSxJQUFJLENBQUMsR0FBRyxDQUFDLG9CQUFvQixFQUFFO1lBQzdCLE1BQU0saUJBQWlCLEdBQUcsSUFBQSwyQkFBb0IsRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDL0QsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQUEsR0FBRyxDQUFDLFNBQVMsbUNBQUksRUFBRSxDQUFDLEVBQUU7Z0JBQ2xELGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUM1QjtZQUNELElBQUksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQztTQUN0QztJQUNILENBQUM7SUFFTyxZQUFZLENBQUMsaUJBQThCO1FBQ2pELE1BQU0sUUFBUSxHQUFhLEVBQUUsQ0FBQztRQUU5QixJQUFJLENBQUMsMkJBQTJCLENBQUMsUUFBUSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNO1lBQUUsT0FBTztRQUM3QixNQUFNLFdBQVcsR0FBRyx3QkFBd0IsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ3RHLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxXQUFXLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFTywyQkFBMkIsQ0FBQyxRQUFrQixFQUFFLGlCQUE4QjtRQUNwRixLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDakMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDaEMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksNEJBQTRCLENBQUMsQ0FBQzthQUM5RDtTQUNGO0lBQ0gsQ0FBQztDQUVGO0FBdkVELDhCQXVFQyJ9
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.assertValidEnvironment = void 0;
var errors_1 = require("./errors");
const errors_1 = require("./errors");
/**

@@ -14,3 +14,3 @@ * Hermes relies on some ES6 functionality: iterators (via Symbol.iterator),

function assertValidEnvironment() {
var missingBehavior = [];
const missingBehavior = [];
if (!_isSymbolPolyfilled())

@@ -25,5 +25,5 @@ missingBehavior.push('Symbol');

throw new errors_1.InvalidEnvironmentError({
message: "Hermes requires some ES2015 features that your current environment lacks: "
+ "".concat(missingBehavior.join(', '), ". Please polyfill!"),
infoUrl: "https://bit.ly/2SGa7uz",
message: `Hermes requires some ES2015 features that your current environment lacks: `
+ `${missingBehavior.join(', ')}. Please polyfill!`,
infoUrl: `https://bit.ly/2SGa7uz`,
});

@@ -57,2 +57,2 @@ }

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJlbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBbUQ7QUFFbkQ7Ozs7Ozs7R0FPRztBQUNILFNBQWdCLHNCQUFzQjtJQUNwQyxJQUFNLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFDM0IsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1FBQUUsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7UUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JELElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtRQUFFLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNO1FBQUUsT0FBTztJQUVwQyxNQUFNLElBQUksZ0NBQXVCLENBQUM7UUFDaEMsT0FBTyxFQUFFLDRFQUE0RTtjQUNqRixVQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUFvQjtRQUNyRCxPQUFPLEVBQUUsd0JBQXdCO0tBQ2xDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFaRCx3REFZQztBQUVELFNBQVMsbUJBQW1CO0lBQzFCLElBQUksT0FBTyxNQUFNLEtBQUssVUFBVTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQy9DLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBRW5DLE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQUVELFNBQVMsZ0JBQWdCO0lBQ3ZCLElBQUksT0FBTyxHQUFHLEtBQUssVUFBVTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzVDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQ3pDLElBQUksT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLFVBQVU7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUVuRSxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRCxTQUFTLGdCQUFnQjtJQUN2QixJQUFJLE9BQU8sR0FBRyxLQUFLLFVBQVU7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUM1QyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUN6QyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxVQUFVO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFFbkUsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJlbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxQ0FBbUQ7QUFFbkQ7Ozs7Ozs7R0FPRztBQUNILFNBQWdCLHNCQUFzQjtJQUNwQyxNQUFNLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFDM0IsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1FBQUUsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7UUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JELElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtRQUFFLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNO1FBQUUsT0FBTztJQUVwQyxNQUFNLElBQUksZ0NBQXVCLENBQUM7UUFDaEMsT0FBTyxFQUFFLDRFQUE0RTtjQUNqRixHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQjtRQUNyRCxPQUFPLEVBQUUsd0JBQXdCO0tBQ2xDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFaRCx3REFZQztBQUVELFNBQVMsbUJBQW1CO0lBQzFCLElBQUksT0FBTyxNQUFNLEtBQUssVUFBVTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQy9DLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBRW5DLE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQUVELFNBQVMsZ0JBQWdCO0lBQ3ZCLElBQUksT0FBTyxHQUFHLEtBQUssVUFBVTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzVDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQ3pDLElBQUksT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLFVBQVU7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUVuRSxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRCxTQUFTLGdCQUFnQjtJQUN2QixJQUFJLE9BQU8sR0FBRyxLQUFLLFVBQVU7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUM1QyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUN6QyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxVQUFVO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFFbkUsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIn0=
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.CacheConsistencyError = exports.InvalidPayloadError = exports.OperationError = exports.ConflictingFieldsError = exports.UnsatisfiedCacheError = exports.QueryError = exports.InvalidEnvironmentError = exports.HermesCacheError = void 0;
var tslib_1 = require("tslib");
var makeError = tslib_1.__importStar(require("make-error"));
const tslib_1 = require("tslib");
const makeError = tslib_1.__importStar(require("make-error"));
function _toDetails(messageOrDetails) {

@@ -12,4 +12,4 @@ if (typeof messageOrDetails === 'object')

function _expandMessage(messageOrDetails, template) {
var _a = _toDetails(messageOrDetails), message = _a.message, details = tslib_1.__rest(_a, ["message"]);
return tslib_1.__assign(tslib_1.__assign({}, details), { message: template.replace('{{message}}', message) });
const _a = _toDetails(messageOrDetails), { message } = _a, details = tslib_1.__rest(_a, ["message"]);
return Object.assign(Object.assign({}, details), { message: template.replace('{{message}}', message) });
}

@@ -22,10 +22,8 @@ /**

*/
var HermesCacheError = /** @class */ (function (_super) {
tslib_1.__extends(HermesCacheError, _super);
function HermesCacheError(messageOrDetails) {
var _a = _toDetails(messageOrDetails), message = _a.message, infoUrl = _a.infoUrl;
return _super.call(this, infoUrl ? "[".concat(infoUrl, "] ").concat(message) : message) || this;
class HermesCacheError extends makeError.BaseError {
constructor(messageOrDetails) {
const { message, infoUrl } = _toDetails(messageOrDetails);
super(infoUrl ? `[${infoUrl}] ${message}` : message);
}
return HermesCacheError;
}(makeError.BaseError));
}
exports.HermesCacheError = HermesCacheError;

@@ -35,9 +33,4 @@ /**

*/
var InvalidEnvironmentError = /** @class */ (function (_super) {
tslib_1.__extends(InvalidEnvironmentError, _super);
function InvalidEnvironmentError() {
return _super !== null && _super.apply(this, arguments) || this;
}
return InvalidEnvironmentError;
}(HermesCacheError));
class InvalidEnvironmentError extends HermesCacheError {
}
exports.InvalidEnvironmentError = InvalidEnvironmentError;

@@ -47,13 +40,10 @@ /**

*/
var QueryError = /** @class */ (function (_super) {
tslib_1.__extends(QueryError, _super);
function QueryError(messageOrDetails,
class QueryError extends HermesCacheError {
constructor(messageOrDetails,
// The path within the query where the error occurred.
path) {
var _this = _super.call(this, _expandMessage(messageOrDetails, "{{message}} at ".concat(prettyPath(path)))) || this;
_this.path = path;
return _this;
super(_expandMessage(messageOrDetails, `{{message}} at ${prettyPath(path)}`));
this.path = path;
}
return QueryError;
}(HermesCacheError));
}
exports.QueryError = QueryError;

@@ -64,9 +54,4 @@ /**

*/
var UnsatisfiedCacheError = /** @class */ (function (_super) {
tslib_1.__extends(UnsatisfiedCacheError, _super);
function UnsatisfiedCacheError() {
return _super !== null && _super.apply(this, arguments) || this;
}
return UnsatisfiedCacheError;
}(HermesCacheError));
class UnsatisfiedCacheError extends HermesCacheError {
}
exports.UnsatisfiedCacheError = UnsatisfiedCacheError;

@@ -77,5 +62,4 @@ /**

*/
var ConflictingFieldsError = /** @class */ (function (_super) {
tslib_1.__extends(ConflictingFieldsError, _super);
function ConflictingFieldsError(messageOrDetails,
class ConflictingFieldsError extends QueryError {
constructor(messageOrDetails,
// The path within the query where the error occurred.

@@ -85,9 +69,7 @@ path,

fields) {
var _this = _super.call(this, _expandMessage(messageOrDetails, "Conflicting field definitions: {{message}}"), path) || this;
_this.path = path;
_this.fields = fields;
return _this;
super(_expandMessage(messageOrDetails, `Conflicting field definitions: {{message}}`), path);
this.path = path;
this.fields = fields;
}
return ConflictingFieldsError;
}(QueryError));
}
exports.ConflictingFieldsError = ConflictingFieldsError;

@@ -98,5 +80,4 @@ /**

*/
var OperationError = /** @class */ (function (_super) {
tslib_1.__extends(OperationError, _super);
function OperationError(messageOrDetails,
class OperationError extends HermesCacheError {
constructor(messageOrDetails,
// The path from the payload root to the node containing the error.

@@ -110,11 +91,9 @@ prefixPath,

value) {
var _this = _super.call(this, _expandMessage(messageOrDetails, "{{message}} at ".concat(prettyPath(tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(prefixPath), false), tslib_1.__read(path), false)), " (node ").concat(nodeId, ")"))) || this;
_this.prefixPath = prefixPath;
_this.nodeId = nodeId;
_this.path = path;
_this.value = value;
return _this;
super(_expandMessage(messageOrDetails, `{{message}} at ${prettyPath([...prefixPath, ...path])} (node ${nodeId})`));
this.prefixPath = prefixPath;
this.nodeId = nodeId;
this.path = path;
this.value = value;
}
return OperationError;
}(HermesCacheError));
}
exports.OperationError = OperationError;

@@ -124,9 +103,4 @@ /**

*/
var InvalidPayloadError = /** @class */ (function (_super) {
tslib_1.__extends(InvalidPayloadError, _super);
function InvalidPayloadError() {
return _super !== null && _super.apply(this, arguments) || this;
}
return InvalidPayloadError;
}(OperationError));
class InvalidPayloadError extends OperationError {
}
exports.InvalidPayloadError = InvalidPayloadError;

@@ -136,5 +110,4 @@ /**

*/
var CacheConsistencyError = /** @class */ (function (_super) {
tslib_1.__extends(CacheConsistencyError, _super);
function CacheConsistencyError(messageOrDetails,
class CacheConsistencyError extends OperationError {
constructor(messageOrDetails,
// The path from the payload root to the node containing the error.

@@ -148,11 +121,9 @@ prefixPath,

value) {
var _this = _super.call(this, _expandMessage(messageOrDetails, "Hermes BUG: {{message}}"), prefixPath, nodeId, path) || this;
_this.prefixPath = prefixPath;
_this.nodeId = nodeId;
_this.path = path;
_this.value = value;
return _this;
super(_expandMessage(messageOrDetails, `Hermes BUG: {{message}}`), prefixPath, nodeId, path);
this.prefixPath = prefixPath;
this.nodeId = nodeId;
this.path = path;
this.value = value;
}
return CacheConsistencyError;
}(OperationError));
}
exports.CacheConsistencyError = CacheConsistencyError;

@@ -165,2 +136,2 @@ /**

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw0REFBd0M7QUFXeEMsU0FBUyxVQUFVLENBQUMsZ0JBQWtDO0lBQ3BELElBQUksT0FBTyxnQkFBZ0IsS0FBSyxRQUFRO1FBQUUsT0FBTyxnQkFBZ0IsQ0FBQztJQUNsRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLENBQUM7QUFDdkMsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUFDLGdCQUFrQyxFQUFFLFFBQWdCO0lBQzFFLElBQU0sS0FBMEIsVUFBVSxDQUFDLGdCQUFnQixDQUFDLEVBQXBELE9BQU8sYUFBQSxFQUFLLE9BQU8sc0JBQXJCLFdBQXVCLENBQStCLENBQUM7SUFDN0QsNkNBQ0ssT0FBTyxLQUNWLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsSUFDakQ7QUFDSixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSDtJQUFzQyw0Q0FBbUI7SUFDdkQsMEJBQVksZ0JBQWtDO1FBQ3RDLElBQUEsS0FBdUIsVUFBVSxDQUFDLGdCQUFnQixDQUFDLEVBQWpELE9BQU8sYUFBQSxFQUFFLE9BQU8sYUFBaUMsQ0FBQztlQUMxRCxrQkFBTSxPQUFPLENBQUMsQ0FBQyxDQUFDLFdBQUksT0FBTyxlQUFLLE9BQU8sQ0FBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDdEQsQ0FBQztJQUNILHVCQUFDO0FBQUQsQ0FBQyxBQUxELENBQXNDLFNBQVMsQ0FBQyxTQUFTLEdBS3hEO0FBTFksNENBQWdCO0FBTzdCOztHQUVHO0FBQ0g7SUFBNkMsbURBQWdCO0lBQTdEOztJQUErRCxDQUFDO0lBQUQsOEJBQUM7QUFBRCxDQUFDLEFBQWhFLENBQTZDLGdCQUFnQixHQUFHO0FBQW5ELDBEQUF1QjtBQUVwQzs7R0FFRztBQUNIO0lBQWdDLHNDQUFnQjtJQUM5QyxvQkFDRSxnQkFB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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw4REFBd0M7QUFXeEMsU0FBUyxVQUFVLENBQUMsZ0JBQWtDO0lBQ3BELElBQUksT0FBTyxnQkFBZ0IsS0FBSyxRQUFRO1FBQUUsT0FBTyxnQkFBZ0IsQ0FBQztJQUNsRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLENBQUM7QUFDdkMsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUFDLGdCQUFrQyxFQUFFLFFBQWdCO0lBQzFFLE1BQU0sS0FBMEIsVUFBVSxDQUFDLGdCQUFnQixDQUFDLEVBQXRELEVBQUUsT0FBTyxPQUE2QyxFQUF4QyxPQUFPLHNCQUFyQixXQUF1QixDQUErQixDQUFDO0lBQzdELHVDQUNLLE9BQU8sS0FDVixPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLElBQ2pEO0FBQ0osQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBYSxnQkFBaUIsU0FBUSxTQUFTLENBQUMsU0FBUztJQUN2RCxZQUFZLGdCQUFrQztRQUM1QyxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzFELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTyxLQUFLLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2RCxDQUFDO0NBQ0Y7QUFMRCw0Q0FLQztBQUVEOztHQUVHO0FBQ0gsTUFBYSx1QkFBd0IsU0FBUSxnQkFBZ0I7Q0FBRztBQUFoRSwwREFBZ0U7QUFFaEU7O0dBRUc7QUFDSCxNQUFhLFVBQVcsU0FBUSxnQkFBZ0I7SUFDOUMsWUFDRSxnQkFBa0M7SUFDbEMsc0RBQXNEO0lBQ3RDLElBQWM7UUFFOUIsS0FBSyxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsRUFBRSxrQkFBa0IsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRjlELFNBQUksR0FBSixJQUFJLENBQVU7SUFHaEMsQ0FBQztDQUNGO0FBUkQsZ0NBUUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFhLHFCQUFzQixTQUFRLGdCQUFnQjtDQUFHO0FBQTlELHNEQUE4RDtBQUU5RDs7O0dBR0c7QUFDSCxNQUFhLHNCQUF1QixTQUFRLFVBQVU7SUFDcEQsWUFDRSxnQkFBa0M7SUFDbEMsc0RBQXNEO0lBQ3RDLElBQWM7SUFDOUIsa0NBQWtDO0lBQ2xCLE1BQWE7UUFFN0IsS0FBSyxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsRUFBRSw0Q0FBNEMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBSjVFLFNBQUksR0FBSixJQUFJLENBQVU7UUFFZCxXQUFNLEdBQU4sTUFBTSxDQUFPO0lBRy9CLENBQUM7Q0FDRjtBQVZELHdEQVVDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBYSxjQUFlLFNBQVEsZ0JBQWdCO0lBQ2xELFlBQ0UsZ0JBQWtDO0lBQ2xDLG1FQUFtRTtJQUNuRCxVQUFzQjtJQUN0Qyx1REFBdUQ7SUFDdkMsTUFBYztJQUM5QixxREFBcUQ7SUFDckMsSUFBZ0I7SUFDaEMscUNBQXFDO0lBQ3JCLEtBQVc7UUFFM0IsS0FBSyxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsRUFBRSxrQkFBa0IsVUFBVSxDQUFDLENBQUMsR0FBRyxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxVQUFVLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQVJuRyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBRXRCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFFZCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBRWhCLFVBQUssR0FBTCxLQUFLLENBQU07SUFHN0IsQ0FBQztDQUNGO0FBZEQsd0NBY0M7QUFFRDs7R0FFRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsY0FBYztDQUFHO0FBQTFELGtEQUEwRDtBQUUxRDs7R0FFRztBQUNILE1BQWEscUJBQXNCLFNBQVEsY0FBYztJQUN2RCxZQUNFLGdCQUFrQztJQUNsQyxtRUFBbUU7SUFDbkQsVUFBc0I7SUFDdEMsdURBQXVEO0lBQ3ZDLE1BQWM7SUFDOUIscURBQXFEO0lBQ3JDLElBQWdCO0lBQ2hDLDJDQUEyQztJQUMzQixLQUFXO1FBRTNCLEtBQUssQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEVBQUUseUJBQXlCLENBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBUjdFLGVBQVUsR0FBVixVQUFVLENBQVk7UUFFdEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUVkLFNBQUksR0FBSixJQUFJLENBQVk7UUFFaEIsVUFBSyxHQUFMLEtBQUssQ0FBTTtJQUc3QixDQUFDO0NBQ0Y7QUFkRCxzREFjQztBQUVEOztHQUVHO0FBQ0gsU0FBUyxVQUFVLENBQUMsSUFBZ0I7SUFDbEMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDN0MsQ0FBQyJ9
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.GraphSnapshot = void 0;
var deepFreeze = require("deep-freeze-strict");
const deepFreeze = require("deep-freeze-strict");
/**

@@ -13,10 +13,9 @@ * Maintains an identity map of all value snapshots that reference into a

*/
var GraphSnapshot = /** @class */ (function () {
class GraphSnapshot {
/**
* @internal
*/
function GraphSnapshot(
constructor(
// TODO: Profile Object.create(null) vs Map.
_values) {
if (_values === void 0) { _values = Object.create(null); }
_values = Object.create(null)) {
this._values = _values;

@@ -29,12 +28,12 @@ /** Cached results for queries. */

*/
GraphSnapshot.prototype.getNodeData = function (id) {
var snapshot = this.getNodeSnapshot(id);
getNodeData(id) {
const snapshot = this.getNodeSnapshot(id);
return snapshot ? snapshot.data : undefined;
};
}
/**
* Returns whether `id` exists as an value in the graph.
*/
GraphSnapshot.prototype.has = function (id) {
has(id) {
return id in this._values;
};
}
/**

@@ -45,5 +44,5 @@ * Retrieves the snapshot for the value identified by `id`.

*/
GraphSnapshot.prototype.getNodeSnapshot = function (id) {
getNodeSnapshot(id) {
return this._values[id];
};
}
/**

@@ -54,5 +53,5 @@ * Returns the set of ids present in the snapshot.

*/
GraphSnapshot.prototype.allNodeIds = function () {
allNodeIds() {
return Object.keys(this._values);
};
}
/**

@@ -63,8 +62,7 @@ * Freezes the snapshot (generally for development mode)

*/
GraphSnapshot.prototype.freeze = function () {
freeze() {
deepFreeze(this._values);
};
return GraphSnapshot;
}());
}
}
exports.GraphSnapshot = GraphSnapshot;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhTbmFwc2hvdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkdyYXBoU25hcHNob3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0NBQWtEO0FBT2xEOzs7Ozs7O0dBT0c7QUFDSDtJQUtFOztPQUVHO0lBQ0g7SUFDRSw0Q0FBNEM7SUFDckMsT0FBOEM7UUFBOUMsd0JBQUEsRUFBQSxVQUEyQixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUE5QyxZQUFPLEdBQVAsT0FBTyxDQUF1QztRQVJ2RCxrQ0FBa0M7UUFDbEIsY0FBUyxHQUFHLElBQUksR0FBRyxFQUEwRSxDQUFDO0lBUTNHLENBQUM7SUFFSjs7T0FFRztJQUNILG1DQUFXLEdBQVgsVUFBWSxFQUFVO1FBQ3BCLElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUMsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCwyQkFBRyxHQUFILFVBQUksRUFBVTtRQUNaLE9BQU8sRUFBRSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCx1Q0FBZSxHQUFmLFVBQWdCLEVBQVU7UUFDeEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsa0NBQVUsR0FBVjtRQUNFLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCw4QkFBTSxHQUFOO1FBQ0UsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUgsb0JBQUM7QUFBRCxDQUFDLEFBdkRELElBdURDO0FBdkRZLHNDQUFhIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhTbmFwc2hvdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkdyYXBoU25hcHNob3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaURBQWtEO0FBT2xEOzs7Ozs7O0dBT0c7QUFDSCxNQUFhLGFBQWE7SUFLeEI7O09BRUc7SUFDSDtJQUNFLDRDQUE0QztJQUNyQyxVQUEyQixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUE5QyxZQUFPLEdBQVAsT0FBTyxDQUF1QztRQVJ2RCxrQ0FBa0M7UUFDbEIsY0FBUyxHQUFHLElBQUksR0FBRyxFQUEwRSxDQUFDO0lBUTNHLENBQUM7SUFFSjs7T0FFRztJQUNILFdBQVcsQ0FBQyxFQUFVO1FBQ3BCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUMsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxHQUFHLENBQUMsRUFBVTtRQUNaLE9BQU8sRUFBRSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxlQUFlLENBQUMsRUFBVTtRQUN4QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU07UUFDSixVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNCLENBQUM7Q0FFRjtBQXZERCxzQ0F1REMifQ==
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.selectionSetIsStatic = exports.ConsoleTracer = exports.Cache = exports.Hermes = void 0;
var tslib_1 = require("tslib");
var environment_1 = require("./environment");
const tslib_1 = require("tslib");
const environment_1 = require("./environment");
// Try to detect environment misconfiguration early.

@@ -17,2 +17,2 @@ (0, environment_1.assertValidEnvironment)();

Object.defineProperty(exports, "selectionSetIsStatic", { enumerable: true, get: function () { return util_1.selectionSetIsStatic; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNkNBQXVEO0FBRXZELG9EQUFvRDtBQUNwRCxJQUFBLG9DQUFzQixHQUFFLENBQUM7QUFFekIsbURBQXlCO0FBQ3pCLG1DQUFrQztBQUF6QixnR0FBQSxNQUFNLE9BQUE7QUFDZixpQ0FBOEM7QUFBckMsOEZBQUEsS0FBSyxPQUFBO0FBQ2QseURBQXdEO0FBQS9DLDhHQUFBLGFBQWEsT0FBQTtBQUN0QiwrQkFBOEM7QUFBckMsNEdBQUEsb0JBQW9CLE9BQUEifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsK0NBQXVEO0FBRXZELG9EQUFvRDtBQUNwRCxJQUFBLG9DQUFzQixHQUFFLENBQUM7QUFFekIsbURBQXlCO0FBQ3pCLG1DQUFrQztBQUF6QixnR0FBQSxNQUFNLE9BQUE7QUFDZixpQ0FBOEM7QUFBckMsOEZBQUEsS0FBSyxPQUFBO0FBQ2QseURBQXdEO0FBQS9DLDhHQUFBLGFBQWEsT0FBQTtBQUN0QiwrQkFBOEM7QUFBckMsNEdBQUEsb0JBQW9CLE9BQUEifQ==
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.cloneNodeSnapshot = void 0;
var tslib_1 = require("tslib");
var EntitySnapshot_1 = require("./EntitySnapshot");
var ParameterizedValueSnapshot_1 = require("./ParameterizedValueSnapshot");
const EntitySnapshot_1 = require("./EntitySnapshot");
const ParameterizedValueSnapshot_1 = require("./ParameterizedValueSnapshot");
/**

@@ -12,4 +11,4 @@ * Factory function for cloning nodes to their specific type signatures, while

function cloneNodeSnapshot(parent) {
var inbound = parent.inbound ? tslib_1.__spreadArray([], tslib_1.__read(parent.inbound), false) : undefined;
var outbound = parent.outbound ? tslib_1.__spreadArray([], tslib_1.__read(parent.outbound), false) : undefined;
const inbound = parent.inbound ? [...parent.inbound] : undefined;
const outbound = parent.outbound ? [...parent.outbound] : undefined;
if (parent instanceof EntitySnapshot_1.EntitySnapshot) {

@@ -22,6 +21,6 @@ return new EntitySnapshot_1.EntitySnapshot(parent.data, inbound, outbound);

else {
throw new Error("Unknown node type: ".concat(Object.getPrototypeOf(parent).constructor.name));
throw new Error(`Unknown node type: ${Object.getPrototypeOf(parent).constructor.name}`);
}
}
exports.cloneNodeSnapshot = cloneNodeSnapshot;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjbG9uZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbURBQWtEO0FBRWxELDJFQUEwRTtBQUUxRTs7O0dBR0c7QUFDSCxTQUFnQixpQkFBaUIsQ0FBQyxNQUFvQjtJQUNwRCxJQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsMENBQUssTUFBTSxDQUFDLE9BQU8sVUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2pFLElBQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQywwQ0FBSyxNQUFNLENBQUMsUUFBUSxVQUFFLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFFcEUsSUFBSSxNQUFNLFlBQVksK0JBQWMsRUFBRTtRQUNwQyxPQUFPLElBQUksK0JBQWMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztLQUMzRDtTQUFNLElBQUksTUFBTSxZQUFZLHVEQUEwQixFQUFFO1FBQ3ZELE9BQU8sSUFBSSx1REFBMEIsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztLQUN2RTtTQUFNO1FBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBc0IsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFFLENBQUMsQ0FBQztLQUN6RjtBQUNILENBQUM7QUFYRCw4Q0FXQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjbG9uZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBa0Q7QUFFbEQsNkVBQTBFO0FBRTFFOzs7R0FHRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLE1BQW9CO0lBQ3BELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNqRSxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFFcEUsSUFBSSxNQUFNLFlBQVksK0JBQWMsRUFBRTtRQUNwQyxPQUFPLElBQUksK0JBQWMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztLQUMzRDtTQUFNLElBQUksTUFBTSxZQUFZLHVEQUEwQixFQUFFO1FBQ3ZELE9BQU8sSUFBSSx1REFBMEIsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztLQUN2RTtTQUFNO1FBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQkFBc0IsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztLQUN6RjtBQUNILENBQUM7QUFYRCw4Q0FXQyJ9

@@ -11,4 +11,4 @@ "use strict";

*/
var EntitySnapshot = /** @class */ (function () {
function EntitySnapshot(
class EntitySnapshot {
constructor(
/** A reference to the entity this snapshot is about. */

@@ -24,5 +24,4 @@ data,

}
return EntitySnapshot;
}());
}
exports.EntitySnapshot = EntitySnapshot;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW50aXR5U25hcHNob3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJFbnRpdHlTbmFwc2hvdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFPQTs7Ozs7O0dBTUc7QUFDSDtJQUNFO0lBQ0Usd0RBQXdEO0lBQ2pELElBQWlCO0lBQ3hCLG1EQUFtRDtJQUM1QyxPQUF5QjtJQUNoQyxrREFBa0Q7SUFDM0MsUUFBMEI7UUFKMUIsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUVqQixZQUFPLEdBQVAsT0FBTyxDQUFrQjtRQUV6QixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUNoQyxDQUFDO0lBQ04scUJBQUM7QUFBRCxDQUFDLEFBVEQsSUFTQztBQVRZLHdDQUFjIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW50aXR5U25hcHNob3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJFbnRpdHlTbmFwc2hvdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFPQTs7Ozs7O0dBTUc7QUFDSCxNQUFhLGNBQWM7SUFDekI7SUFDRSx3REFBd0Q7SUFDakQsSUFBaUI7SUFDeEIsbURBQW1EO0lBQzVDLE9BQXlCO0lBQ2hDLGtEQUFrRDtJQUMzQyxRQUEwQjtRQUoxQixTQUFJLEdBQUosSUFBSSxDQUFhO1FBRWpCLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBRXpCLGFBQVEsR0FBUixRQUFRLENBQWtCO0lBQ2hDLENBQUM7Q0FDTDtBQVRELHdDQVNDIn0=

@@ -12,4 +12,4 @@ "use strict";

*/
var ParameterizedValueSnapshot = /** @class */ (function () {
function ParameterizedValueSnapshot(
class ParameterizedValueSnapshot {
constructor(
/** A reference to the entity this snapshot is about. */

@@ -25,5 +25,4 @@ data,

}
return ParameterizedValueSnapshot;
}());
}
exports.ParameterizedValueSnapshot = ParameterizedValueSnapshot;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFyYW1ldGVyaXplZFZhbHVlU25hcHNob3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJQYXJhbWV0ZXJpemVkVmFsdWVTbmFwc2hvdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFPQTs7Ozs7OztHQU9HO0FBQ0g7SUFDRTtJQUNFLHdEQUF3RDtJQUNqRCxJQUFnQjtJQUN2QixtREFBbUQ7SUFDNUMsT0FBeUI7SUFDaEMsa0RBQWtEO0lBQzNDLFFBQTBCO1FBSjFCLFNBQUksR0FBSixJQUFJLENBQVk7UUFFaEIsWUFBTyxHQUFQLE9BQU8sQ0FBa0I7UUFFekIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDaEMsQ0FBQztJQUNOLGlDQUFDO0FBQUQsQ0FBQyxBQVRELElBU0M7QUFUWSxnRUFBMEIifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFyYW1ldGVyaXplZFZhbHVlU25hcHNob3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJQYXJhbWV0ZXJpemVkVmFsdWVTbmFwc2hvdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFPQTs7Ozs7OztHQU9HO0FBQ0gsTUFBYSwwQkFBMEI7SUFDckM7SUFDRSx3REFBd0Q7SUFDakQsSUFBZ0I7SUFDdkIsbURBQW1EO0lBQzVDLE9BQXlCO0lBQ2hDLGtEQUFrRDtJQUMzQyxRQUEwQjtRQUoxQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBRWhCLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBRXpCLGFBQVEsR0FBUixRQUFRLENBQWtCO0lBQ2hDLENBQUM7Q0FDTDtBQVRELGdFQVNDIn0=
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.extract = void 0;
var tslib_1 = require("tslib");
var nodes_1 = require("../nodes");
var schema_1 = require("../schema");
var util_1 = require("../util");
const nodes_1 = require("../nodes");
const schema_1 = require("../schema");
const util_1 = require("../util");
/**

@@ -18,10 +17,10 @@ * Create serializable representation of GraphSnapshot.

function extract(graphSnapshot, cacheContext) {
var result = {};
var entities = graphSnapshot._values;
const result = {};
const entities = graphSnapshot._values;
// We don't need to check for hasOwnProperty because data._values is
// created with prototype of 'null'
for (var id in entities) {
var nodeSnapshot = entities[id];
var outbound = nodeSnapshot.outbound, inbound = nodeSnapshot.inbound;
var type = void 0;
for (const id in entities) {
const nodeSnapshot = entities[id];
const { outbound, inbound } = nodeSnapshot;
let type;
if (nodeSnapshot instanceof nodes_1.EntitySnapshot) {

@@ -34,5 +33,5 @@ type = 0 /* Serializable.NodeSnapshotType.EntitySnapshot */;

else {
throw new Error("".concat(nodeSnapshot.constructor.name, " does not have corresponding enum value in Serializable.NodeSnapshotType"));
throw new Error(`${nodeSnapshot.constructor.name} does not have corresponding enum value in Serializable.NodeSnapshotType`);
}
var serializedEntity = { type: type };
const serializedEntity = { type };
if (outbound) {

@@ -45,3 +44,3 @@ serializedEntity.outbound = outbound;

// Extract data value
var extractedData = extractSerializableData(graphSnapshot, nodeSnapshot);
const extractedData = extractSerializableData(graphSnapshot, nodeSnapshot);
if (extractedData !== undefined) {

@@ -51,7 +50,7 @@ if (cacheContext.tracer.warning) {

if (!(0, schema_1.isSerializable)(extractedData, /* allowUndefined */ true)) {
cacheContext.tracer.warning("Data at entityID ".concat(id, " is unserializable"));
cacheContext.tracer.warning(`Data at entityID ${id} is unserializable`);
}
}
catch (error) {
cacheContext.tracer.warning("Data at entityID ".concat(id, " is unserializable because of stack overflow"));
cacheContext.tracer.warning(`Data at entityID ${id} is unserializable because of stack overflow`);
if (error instanceof Error) {

@@ -73,3 +72,2 @@ cacheContext.tracer.warning(error.toString());

function extractSerializableData(graphSnapshot, nodeSnapshot) {
var e_1, _a;
// If there is no outbound, then data is a value

@@ -84,30 +82,20 @@ // 'data' can also be undefined or null even though there exist an

// and so does extractedData which will cause an error when we assing 'null'.
var extractedData = nodeSnapshot.data;
try {
// Set all the outbound path (e.g reference) to undefined.
for (var _b = tslib_1.__values(nodeSnapshot.outbound), _c = _b.next(); !_c.done; _c = _b.next()) {
var outbound = _c.value;
// Only reference to EntitySnapshot is recorded in the data property
// So we didn't end up set the value to be 'undefined' in the output
// in every case
if (graphSnapshot.getNodeSnapshot(outbound.id) instanceof nodes_1.EntitySnapshot) {
// we have to write out 'null' here to differentiate between
// data doesn't exist and data is a reference.
//
// In the case of parameterized field hanging off of a root
// the data at the ROOTQUERY node will be undefined with outbound
// reference to the parameterized node.
extractedData = (0, util_1.lazyImmutableDeepSet)(extractedData, nodeSnapshot.data, outbound.path, outbound.path.length === 0 ? null : undefined);
}
let extractedData = nodeSnapshot.data;
// Set all the outbound path (e.g reference) to undefined.
for (const outbound of nodeSnapshot.outbound) {
// Only reference to EntitySnapshot is recorded in the data property
// So we didn't end up set the value to be 'undefined' in the output
// in every case
if (graphSnapshot.getNodeSnapshot(outbound.id) instanceof nodes_1.EntitySnapshot) {
// we have to write out 'null' here to differentiate between
// data doesn't exist and data is a reference.
//
// In the case of parameterized field hanging off of a root
// the data at the ROOTQUERY node will be undefined with outbound
// reference to the parameterized node.
extractedData = (0, util_1.lazyImmutableDeepSet)(extractedData, nodeSnapshot.data, outbound.path, outbound.path.length === 0 ? null : undefined);
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
}
finally { if (e_1) throw e_1.error; }
}
return extractedData;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImV4dHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLGtDQUFvRjtBQUVwRixvQ0FBeUQ7QUFDekQsZ0NBQStDO0FBRS9DOzs7Ozs7OztHQVFHO0FBQ0gsU0FBZ0IsT0FBTyxDQUFjLGFBQTRCLEVBQUUsWUFBdUM7SUFDeEcsSUFBTSxNQUFNLEdBQStCLEVBQUUsQ0FBQztJQUM5QyxJQUFNLFFBQVEsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDO0lBQ3ZDLG9FQUFvRTtJQUNwRSxtQ0FBbUM7SUFDbkMsS0FBSyxJQUFNLEVBQUUsSUFBSSxRQUFRLEVBQUU7UUFDekIsSUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLElBQUEsUUFBUSxHQUFjLFlBQVksU0FBMUIsRUFBRSxPQUFPLEdBQUssWUFBWSxRQUFqQixDQUFrQjtRQUUzQyxJQUFJLElBQUksU0FBK0IsQ0FBQztRQUN4QyxJQUFJLFlBQVksWUFBWSxzQkFBYyxFQUFFO1lBQzFDLElBQUksdURBQStDLENBQUM7U0FDckQ7YUFBTSxJQUFJLFlBQVksWUFBWSxrQ0FBMEIsRUFBRTtZQUM3RCxJQUFJLG1FQUEyRCxDQUFDO1NBQ2pFO2FBQU07WUFDTCxNQUFNLElBQUksS0FBSyxDQUFDLFVBQUcsWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLDZFQUEwRSxDQUFDLENBQUM7U0FDN0g7UUFFRCxJQUFNLGdCQUFnQixHQUE4QixFQUFFLElBQUksTUFBQSxFQUFFLENBQUM7UUFFN0QsSUFBSSxRQUFRLEVBQUU7WUFDWixnQkFBZ0IsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1NBQ3RDO1FBRUQsSUFBSSxPQUFPLEVBQUU7WUFDWCxnQkFBZ0IsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1NBQ3BDO1FBRUQscUJBQXFCO1FBQ3JCLElBQU0sYUFBYSxHQUFHLHVCQUF1QixDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUMzRSxJQUFJLGFBQWEsS0FBSyxTQUFTLEVBQUU7WUFDL0IsSUFBSSxZQUFZLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtnQkFDL0IsSUFBSTtvQkFDRixJQUFJLENBQUMsSUFBQSx1QkFBYyxFQUFDLGFBQWEsRUFBRSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRTt3QkFDN0QsWUFBWSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsMkJBQW9CLEVBQUUsdUJBQW9CLENBQUMsQ0FBQztxQkFDekU7aUJBQ0Y7Z0JBQUMsT0FBTyxLQUFLLEVBQUU7b0JBQ2QsWUFBWSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsMkJBQW9CLEVBQUUsaURBQThDLENBQUMsQ0FBQztvQkFDbEcsSUFBSSxLQUFLLFlBQVksS0FBSyxFQUFFO3dCQUMxQixZQUFZLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztxQkFDL0M7eUJBQU07d0JBQ0wsWUFBWSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7cUJBQzlDO2lCQUNGO2FBQ0Y7WUFDRCxnQkFBZ0IsQ0FBQyxJQUFJLEdBQUcsYUFBYSxDQUFDO1NBQ3ZDO1FBRUQsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLGdCQUFnQixDQUFDO0tBQy9CO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQXBERCwwQkFvREM7QUFFRCxTQUFTLHVCQUF1QixDQUFDLGFBQTRCLEVBQUUsWUFBMEI7O0lBQ3ZGLGdEQUFnRDtJQUNoRCxrRUFBa0U7SUFDbEUsbUVBQW1FO0lBQ25FLDhDQUE4QztJQUM5QyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUU7UUFDaEQsT0FBTyxZQUFZLENBQUMsSUFBSSxDQUFDO0tBQzFCO0lBRUQsMEVBQTBFO0lBQzFFLDZFQUE2RTtJQUM3RSxJQUFJLGFBQWEsR0FBcUIsWUFBWSxDQUFDLElBQUksQ0FBQzs7UUFFeEQsMERBQTBEO1FBQzFELEtBQXVCLElBQUEsS0FBQSxpQkFBQSxZQUFZLENBQUMsUUFBUSxDQUFBLGdCQUFBLDRCQUFFO1lBQXpDLElBQU0sUUFBUSxXQUFBO1lBQ2pCLG9FQUFvRTtZQUNwRSxvRUFBb0U7WUFDcEUsZ0JBQWdCO1lBQ2hCLElBQUksYUFBYSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFlBQVksc0JBQWMsRUFBRTtnQkFDeEUsNERBQTREO2dCQUM1RCw4Q0FBOEM7Z0JBQzlDLEVBQUU7Z0JBQ0YsMkRBQTJEO2dCQUMzRCxpRUFBaUU7Z0JBQ2pFLHVDQUF1QztnQkFDdkMsYUFBYSxHQUFHLElBQUEsMkJBQW9CLEVBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDdEk7U0FDRjs7Ozs7Ozs7O0lBRUQsT0FBTyxhQUFhLENBQUM7QUFDdkIsQ0FBQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImV4dHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsb0NBQW9GO0FBRXBGLHNDQUF5RDtBQUN6RCxrQ0FBK0M7QUFFL0M7Ozs7Ozs7O0dBUUc7QUFDSCxTQUFnQixPQUFPLENBQWMsYUFBNEIsRUFBRSxZQUF1QztJQUN4RyxNQUFNLE1BQU0sR0FBK0IsRUFBRSxDQUFDO0lBQzlDLE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUM7SUFDdkMsb0VBQW9FO0lBQ3BFLG1DQUFtQztJQUNuQyxLQUFLLE1BQU0sRUFBRSxJQUFJLFFBQVEsRUFBRTtRQUN6QixNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEMsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsR0FBRyxZQUFZLENBQUM7UUFFM0MsSUFBSSxJQUFtQyxDQUFDO1FBQ3hDLElBQUksWUFBWSxZQUFZLHNCQUFjLEVBQUU7WUFDMUMsSUFBSSx1REFBK0MsQ0FBQztTQUNyRDthQUFNLElBQUksWUFBWSxZQUFZLGtDQUEwQixFQUFFO1lBQzdELElBQUksbUVBQTJELENBQUM7U0FDakU7YUFBTTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksMEVBQTBFLENBQUMsQ0FBQztTQUM3SDtRQUVELE1BQU0sZ0JBQWdCLEdBQThCLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFFN0QsSUFBSSxRQUFRLEVBQUU7WUFDWixnQkFBZ0IsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1NBQ3RDO1FBRUQsSUFBSSxPQUFPLEVBQUU7WUFDWCxnQkFBZ0IsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1NBQ3BDO1FBRUQscUJBQXFCO1FBQ3JCLE1BQU0sYUFBYSxHQUFHLHVCQUF1QixDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUMzRSxJQUFJLGFBQWEsS0FBSyxTQUFTLEVBQUU7WUFDL0IsSUFBSSxZQUFZLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtnQkFDL0IsSUFBSTtvQkFDRixJQUFJLENBQUMsSUFBQSx1QkFBYyxFQUFDLGFBQWEsRUFBRSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRTt3QkFDN0QsWUFBWSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztxQkFDekU7aUJBQ0Y7Z0JBQUMsT0FBTyxLQUFLLEVBQUU7b0JBQ2QsWUFBWSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsOENBQThDLENBQUMsQ0FBQztvQkFDbEcsSUFBSSxLQUFLLFlBQVksS0FBSyxFQUFFO3dCQUMxQixZQUFZLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztxQkFDL0M7eUJBQU07d0JBQ0wsWUFBWSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7cUJBQzlDO2lCQUNGO2FBQ0Y7WUFDRCxnQkFBZ0IsQ0FBQyxJQUFJLEdBQUcsYUFBYSxDQUFDO1NBQ3ZDO1FBRUQsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLGdCQUFnQixDQUFDO0tBQy9CO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQXBERCwwQkFvREM7QUFFRCxTQUFTLHVCQUF1QixDQUFDLGFBQTRCLEVBQUUsWUFBMEI7SUFDdkYsZ0RBQWdEO0lBQ2hELGtFQUFrRTtJQUNsRSxtRUFBbUU7SUFDbkUsOENBQThDO0lBQzlDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRTtRQUNoRCxPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUM7S0FDMUI7SUFFRCwwRUFBMEU7SUFDMUUsNkVBQTZFO0lBQzdFLElBQUksYUFBYSxHQUFxQixZQUFZLENBQUMsSUFBSSxDQUFDO0lBRXhELDBEQUEwRDtJQUMxRCxLQUFLLE1BQU0sUUFBUSxJQUFJLFlBQVksQ0FBQyxRQUFRLEVBQUU7UUFDNUMsb0VBQW9FO1FBQ3BFLG9FQUFvRTtRQUNwRSxnQkFBZ0I7UUFDaEIsSUFBSSxhQUFhLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsWUFBWSxzQkFBYyxFQUFFO1lBQ3hFLDREQUE0RDtZQUM1RCw4Q0FBOEM7WUFDOUMsRUFBRTtZQUNGLDJEQUEyRDtZQUMzRCxpRUFBaUU7WUFDakUsdUNBQXVDO1lBQ3ZDLGFBQWEsR0FBRyxJQUFBLDJCQUFvQixFQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ3RJO0tBQ0Y7SUFFRCxPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDIn0=
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.migrate = void 0;
var tslib_1 = require("tslib");
var GraphSnapshot_1 = require("../GraphSnapshot");
var nodes_1 = require("../nodes");
var util_1 = require("../util");
var SnapshotEditor_1 = require("./SnapshotEditor");
const GraphSnapshot_1 = require("../GraphSnapshot");
const nodes_1 = require("../nodes");
const util_1 = require("../util");
const SnapshotEditor_1 = require("./SnapshotEditor");
/**

@@ -14,12 +13,11 @@ * Returns the migrated entity snapshot. Supports add and modify but not delete

function migrateEntity(id, snapshot, nodesToAdd, migrationMap, allNodes) {
var e_1, _a;
// Only if object and if valid MigrationMap is provided
if (!(0, util_1.isObject)(snapshot.data))
return snapshot;
var entityMigrations = (0, util_1.deepGet)(migrationMap, ['_entities']);
var parameterizedMigrations = (0, util_1.deepGet)(migrationMap, ['_parameterized']);
var typeName = snapshot.data.__typename || 'Query';
const entityMigrations = (0, util_1.deepGet)(migrationMap, ['_entities']);
const parameterizedMigrations = (0, util_1.deepGet)(migrationMap, ['_parameterized']);
const typeName = snapshot.data.__typename || 'Query';
if (entityMigrations && entityMigrations[typeName]) {
for (var field in entityMigrations[typeName]) {
var fieldMigration = entityMigrations[typeName][field];
for (const field in entityMigrations[typeName]) {
const fieldMigration = entityMigrations[typeName][field];
if (!fieldMigration)

@@ -31,12 +29,12 @@ continue;

if (parameterizedMigrations && parameterizedMigrations[typeName]) {
var _loop_1 = function (parameterized) {
var fieldId = (0, SnapshotEditor_1.nodeIdForParameterizedValue)(id, parameterized.path, parameterized.args);
for (const parameterized of parameterizedMigrations[typeName]) {
const fieldId = (0, SnapshotEditor_1.nodeIdForParameterizedValue)(id, parameterized.path, parameterized.args);
// create a parameterized value snapshot if container doesn't know of the
// parameterized field we expect
if (!snapshot.outbound || !snapshot.outbound.find(function (s) { return s.id === fieldId; })) {
var newData = parameterized.defaultReturn;
if (!snapshot.outbound || !snapshot.outbound.find(s => s.id === fieldId)) {
let newData = parameterized.defaultReturn;
if (allNodes && parameterized.copyFrom) {
var _d = parameterized.copyFrom, path = _d.path, args = _d.args;
var copyFromFieldId = (0, SnapshotEditor_1.nodeIdForParameterizedValue)(id, path, args);
var copyFromNode = allNodes[copyFromFieldId];
const { path, args } = parameterized.copyFrom;
const copyFromFieldId = (0, SnapshotEditor_1.nodeIdForParameterizedValue)(id, path, args);
const copyFromNode = allNodes[copyFromFieldId];
if (copyFromNode) {

@@ -50,3 +48,3 @@ newData = copyFromNode.data;

}
var newNode = new nodes_1.ParameterizedValueSnapshot(newData);
const newNode = new nodes_1.ParameterizedValueSnapshot(newData);
nodesToAdd[fieldId] = newNode;

@@ -57,16 +55,3 @@ // update the reference for the new node in the container

}
};
try {
for (var _b = tslib_1.__values(parameterizedMigrations[typeName]), _c = _b.next(); !_c.done; _c = _b.next()) {
var parameterized = _c.value;
_loop_1(parameterized);
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
}
finally { if (e_1) throw e_1.error; }
}
}

@@ -82,6 +67,6 @@ return snapshot;

if (migrationMap) {
var nodesToAdd = Object.create(null);
var nodes = cacheSnapshot.baseline._values;
for (var nodeId in nodes) {
var nodeSnapshot = nodes[nodeId];
const nodesToAdd = Object.create(null);
const nodes = cacheSnapshot.baseline._values;
for (const nodeId in nodes) {
const nodeSnapshot = nodes[nodeId];
if (nodeSnapshot instanceof nodes_1.EntitySnapshot) {

@@ -92,5 +77,5 @@ migrateEntity(nodeId, nodeSnapshot, nodesToAdd, migrationMap, nodes);

// rebuild the migrated GraphSnapshot
var snapshots = tslib_1.__assign({}, cacheSnapshot.baseline._values);
for (var addId in nodesToAdd) {
var nodeToAdd = nodesToAdd[addId];
const snapshots = Object.assign({}, cacheSnapshot.baseline._values);
for (const addId in nodesToAdd) {
const nodeToAdd = nodesToAdd[addId];
if (!nodeToAdd)

@@ -105,2 +90,2 @@ continue;

exports.migrate = migrate;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1pZ3JhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLGtEQUFpRDtBQUNqRCxrQ0FBc0U7QUFHdEUsZ0NBSWlCO0FBRWpCLG1EQUFnRjtBQWtDaEY7OztHQUdHO0FBQ0gsU0FBUyxhQUFhLENBQ3BCLEVBQVUsRUFDVixRQUF3QixFQUN4QixVQUEyQixFQUMzQixZQUEyQixFQUMzQixRQUEwQjs7SUFHMUIsdURBQXVEO0lBQ3ZELElBQUksQ0FBQyxJQUFBLGVBQVEsRUFBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQUUsT0FBTyxRQUFRLENBQUM7SUFFOUMsSUFBTSxnQkFBZ0IsR0FBRyxJQUFBLGNBQU8sRUFBQyxZQUFZLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBcUIsQ0FBQztJQUNsRixJQUFNLHVCQUF1QixHQUFHLElBQUEsY0FBTyxFQUFDLFlBQVksRUFBRSxDQUFDLGdCQUFnQixDQUFDLENBQTRCLENBQUM7SUFFckcsSUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFvQixJQUFJLE9BQU8sQ0FBQztJQUUvRCxJQUFJLGdCQUFnQixJQUFJLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ2xELEtBQUssSUFBTSxLQUFLLElBQUksZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDOUMsSUFBTSxjQUFjLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekQsSUFBSSxDQUFDLGNBQWM7Z0JBQUUsU0FBUztZQUM5QixRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDN0Q7S0FDRjtJQUVELElBQUksdUJBQXVCLElBQUksdUJBQXVCLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0NBQ3JELGFBQWE7WUFD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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1pZ3JhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0Esb0RBQWlEO0FBQ2pELG9DQUFzRTtBQUd0RSxrQ0FJaUI7QUFFakIscURBQWdGO0FBa0NoRjs7O0dBR0c7QUFDSCxTQUFTLGFBQWEsQ0FDcEIsRUFBVSxFQUNWLFFBQXdCLEVBQ3hCLFVBQTJCLEVBQzNCLFlBQTJCLEVBQzNCLFFBQTBCO0lBRzFCLHVEQUF1RDtJQUN2RCxJQUFJLENBQUMsSUFBQSxlQUFRLEVBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUFFLE9BQU8sUUFBUSxDQUFDO0lBRTlDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBQSxjQUFPLEVBQUMsWUFBWSxFQUFFLENBQUMsV0FBVyxDQUFDLENBQXFCLENBQUM7SUFDbEYsTUFBTSx1QkFBdUIsR0FBRyxJQUFBLGNBQU8sRUFBQyxZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUE0QixDQUFDO0lBRXJHLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBb0IsSUFBSSxPQUFPLENBQUM7SUFFL0QsSUFBSSxnQkFBZ0IsSUFBSSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUNsRCxLQUFLLE1BQU0sS0FBSyxJQUFJLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzlDLE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pELElBQUksQ0FBQyxjQUFjO2dCQUFFLFNBQVM7WUFDOUIsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQzdEO0tBQ0Y7SUFFRCxJQUFJLHVCQUF1QixJQUFJLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ2hFLEtBQUssTUFBTSxh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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.prune = void 0;
var GraphSnapshot_1 = require("../GraphSnapshot");
var read_1 = require("./read");
var write_1 = require("./write");
const GraphSnapshot_1 = require("../GraphSnapshot");
const read_1 = require("./read");
const write_1 = require("./write");
/**

@@ -11,4 +11,4 @@ * Return a new graph snapshot pruned to just the shape of the given query

function prune(context, snapshot, raw) {
var queryResult = (0, read_1.read)(context, raw, snapshot, Object.create(null));
var pruned = (0, write_1.write)(context, new GraphSnapshot_1.GraphSnapshot(), raw, queryResult.result ? queryResult.result : {}, true);
const queryResult = (0, read_1.read)(context, raw, snapshot, Object.create(null));
const pruned = (0, write_1.write)(context, new GraphSnapshot_1.GraphSnapshot(), raw, queryResult.result ? queryResult.result : {}, true);
return {

@@ -20,2 +20,2 @@ snapshot: pruned.snapshot,

exports.prune = prune;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJ1bmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwcnVuZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxrREFBaUQ7QUFJakQsK0JBQThCO0FBQzlCLGlDQUFnQztBQUVoQzs7R0FFRztBQUNILFNBQWdCLEtBQUssQ0FBYyxPQUFrQyxFQUFFLFFBQXVCLEVBQUUsR0FBaUI7SUFDL0csSUFBTSxXQUFXLEdBQUcsSUFBQSxXQUFJLEVBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLElBQU0sTUFBTSxHQUFHLElBQUEsYUFBSyxFQUNsQixPQUFPLEVBQ1AsSUFBSSw2QkFBYSxFQUFFLEVBQ25CLEdBQUcsRUFDSCxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFnQixFQUMxRCxJQUFJLENBQ0wsQ0FBQztJQUNGLE9BQU87UUFDTCxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7UUFDekIsUUFBUSxFQUFFLFdBQVcsQ0FBQyxRQUFRO0tBQy9CLENBQUM7QUFDSixDQUFDO0FBYkQsc0JBYUMifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJ1bmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwcnVuZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxvREFBaUQ7QUFJakQsaUNBQThCO0FBQzlCLG1DQUFnQztBQUVoQzs7R0FFRztBQUNILFNBQWdCLEtBQUssQ0FBYyxPQUFrQyxFQUFFLFFBQXVCLEVBQUUsR0FBaUI7SUFDL0csTUFBTSxXQUFXLEdBQUcsSUFBQSxXQUFJLEVBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLE1BQU0sTUFBTSxHQUFHLElBQUEsYUFBSyxFQUNsQixPQUFPLEVBQ1AsSUFBSSw2QkFBYSxFQUFFLEVBQ25CLEdBQUcsRUFDSCxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFnQixFQUMxRCxJQUFJLENBQ0wsQ0FBQztJQUNGLE9BQU87UUFDTCxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7UUFDekIsUUFBUSxFQUFFLFdBQVcsQ0FBQyxRQUFRO0tBQy9CLENBQUM7QUFDSixDQUFDO0FBYkQsc0JBYUMifQ==
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.QueryObserver = void 0;
var tslib_1 = require("tslib");
var equality_1 = tslib_1.__importDefault(require("@wry/equality"));
var read_1 = require("./read");
const tslib_1 = require("tslib");
const equality_1 = tslib_1.__importDefault(require("@wry/equality"));
const read_1 = require("./read");
/**

@@ -12,4 +12,4 @@ * Observes a query, triggering a callback when nodes within it have changed.

*/
var QueryObserver = /** @class */ (function () {
function QueryObserver(context, query, snapshot, options) {
class QueryObserver {
constructor(context, query, snapshot, options) {
this._context = context;

@@ -28,4 +28,4 @@ this._query = query;

*/
QueryObserver.prototype.consumeChanges = function (snapshot, changedNodeIds, cacheInstance, onWatchUpdated) {
var lastDiff = this._options.lastDiff;
consumeChanges(snapshot, changedNodeIds, cacheInstance, onWatchUpdated) {
const lastDiff = this._options.lastDiff;
if (lastDiff && !this._hasUpdate(changedNodeIds))

@@ -37,18 +37,18 @@ return;

// undefined).
var operation = this._context.parseOperation(this._query);
var readResult = (0, read_1.read)(this._context, this._query, snapshot, Object.create(null), this._context.strict);
const operation = this._context.parseOperation(this._query);
const readResult = (0, read_1.read)(this._context, this._query, snapshot, Object.create(null), this._context.strict);
this._result = readResult;
var result = readResult.result;
const result = readResult.result;
this._options.lastDiff = readResult;
var rootKeys = Object.keys(operation.parsedQuery);
if (!readResult.complete && (!result || !rootKeys.some(function (key) { return key in result; }))) {
const rootKeys = Object.keys(operation.parsedQuery);
if (!readResult.complete && (!result || !rootKeys.some(key => key in result))) {
return;
}
var lastResult = lastDiff === null || lastDiff === void 0 ? void 0 : lastDiff.result;
var sameAsBefore = result && lastResult && rootKeys.every(function (key) { return (0, equality_1.default)(result[key], lastResult[key]); });
var dirtyKeys = this._context.dirty.get(operation.rootId);
if (sameAsBefore && !(dirtyKeys && rootKeys.some(function (key) { return dirtyKeys.has(key); }))) {
const lastResult = lastDiff === null || lastDiff === void 0 ? void 0 : lastDiff.result;
const sameAsBefore = result && lastResult && rootKeys.every(key => (0, equality_1.default)(result[key], lastResult[key]));
const dirtyKeys = this._context.dirty.get(operation.rootId);
if (sameAsBefore && !(dirtyKeys && rootKeys.some(key => dirtyKeys.has(key)))) {
return;
}
var shouldCancel = (onWatchUpdated === null || onWatchUpdated === void 0 ? void 0 : onWatchUpdated.call(cacheInstance, this._options, readResult, lastDiff)) === false;
const shouldCancel = (onWatchUpdated === null || onWatchUpdated === void 0 ? void 0 : onWatchUpdated.call(cacheInstance, this._options, readResult, lastDiff)) === false;
if (shouldCancel) {

@@ -63,3 +63,3 @@ // Returning false from the onWatchUpdated callback will prevent

this._update();
};
}
/**

@@ -69,5 +69,4 @@ * Whether there are any changed nodes that overlap with the ones we're

*/
QueryObserver.prototype._hasUpdate = function (_changedNodeIds) {
var e_1, _a;
var _b = this._result, complete = _b.complete, entityIds = _b.entityIds, dynamicNodeIds = _b.dynamicNodeIds;
_hasUpdate(_changedNodeIds) {
const { complete, entityIds, dynamicNodeIds } = this._result;
if (!complete)

@@ -78,29 +77,18 @@ return true;

return true;
try {
for (var _changedNodeIds_1 = tslib_1.__values(_changedNodeIds), _changedNodeIds_1_1 = _changedNodeIds_1.next(); !_changedNodeIds_1_1.done; _changedNodeIds_1_1 = _changedNodeIds_1.next()) {
var nodeId = _changedNodeIds_1_1.value;
if (entityIds.has(nodeId))
return true;
if (dynamicNodeIds && dynamicNodeIds.has(nodeId))
return true;
}
for (const nodeId of _changedNodeIds) {
if (entityIds.has(nodeId))
return true;
if (dynamicNodeIds && dynamicNodeIds.has(nodeId))
return true;
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_changedNodeIds_1_1 && !_changedNodeIds_1_1.done && (_a = _changedNodeIds_1.return)) _a.call(_changedNodeIds_1);
}
finally { if (e_1) throw e_1.error; }
}
return false;
};
}
/**
* Trigger the callback.
*/
QueryObserver.prototype._update = function () {
_update() {
this._options.callback(this._result);
};
return QueryObserver;
}());
}
}
exports.QueryObserver = QueryObserver;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVlcnlPYnNlcnZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIlF1ZXJ5T2JzZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLG1FQUFvQztBQU9wQywrQkFBMkM7QUFJM0M7Ozs7R0FJRztBQUNIO0lBV0UsdUJBQVksT0FBa0MsRUFBRSxLQUFtQixFQUFFLFFBQXVCLEVBQUUsT0FBcUI7UUFDakgsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFBLFdBQUksRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuRixJQUFJLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDckIsT0FBTyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQ2hDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNoQjtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxzQ0FBYyxHQUFkLFVBQ0UsUUFBdUIsRUFDdkIsY0FBMkIsRUFDM0IsYUFBa0MsRUFDbEMsY0FBMEU7UUFFMUUsSUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDeEMsSUFBSSxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQztZQUFFLE9BQU87UUFDekQsc0VBQXNFO1FBQ3RFLEVBQUU7UUFDRiwwRUFBMEU7UUFDMUUsY0FBYztRQUNkLElBQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1RCxJQUFNLFVBQVUsR0FBRyxJQUFBLFdBQUksRUFBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6RyxJQUFJLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQztRQUMxQixJQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNwQyxJQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFBLEdBQUcsSUFBSSxPQUFBLEdBQUcsSUFBSSxNQUFNLEVBQWIsQ0FBYSxDQUFDLENBQUMsRUFBRTtZQUM3RSxPQUFPO1NBQ1I7UUFDRCxJQUFNLFVBQVUsR0FBRyxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsTUFBTSxDQUFDO1FBQ3BDLElBQU0sWUFBWSxHQUFHLE1BQU0sSUFBSSxVQUFVLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxVQUFBLEdBQUcsSUFBSSxPQUFBLElBQUEsa0JBQU8sRUFBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQXJDLENBQXFDLENBQUMsQ0FBQztRQUMxRyxJQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVELElBQUksWUFBWSxJQUFJLENBQUMsQ0FBQyxTQUFTLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFBLEdBQUcsSUFBSSxPQUFBLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQWxCLENBQWtCLENBQUMsQ0FBQyxFQUFFO1lBQzVFLE9BQU87U0FDUjtRQUNELElBQU0sWUFBWSxHQUFHLENBQUEsY0FBYyxhQUFkLGNBQWMsdUJBQWQsY0FBYyxDQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsUUFBUSxDQUFDLE1BQUssS0FBSyxDQUFDO1FBQ3hHLElBQUksWUFBWSxFQUFFO1lBQ2hCLGdFQUFnRTtZQUNoRSw2Q0FBNkM7WUFDN0MsT0FBTztTQUNSO1FBQ0QsSUFBSSxZQUFZLEVBQUU7WUFDaEIsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7O09BR0c7SUFDSyxrQ0FBVSxHQUFsQixVQUFtQixlQUE0Qjs7UUFDdkMsSUFBQSxLQUEwQyxJQUFJLENBQUMsT0FBUSxFQUFyRCxRQUFRLGNBQUEsRUFBRSxTQUFTLGVBQUEsRUFBRSxjQUFjLG9CQUFrQixDQUFDO1FBQzlELElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDM0IsbUVBQW1FO1FBQ25FLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTyxJQUFJLENBQUM7O1lBRTVCLEtBQXFCLElBQUEsb0JBQUEsaUJBQUEsZUFBZSxDQUFBLGdEQUFBLDZFQUFFO2dCQUFqQyxJQUFNLE1BQU0sNEJBQUE7Z0JBQ2YsSUFBSSxTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztvQkFBRSxPQUFPLElBQUksQ0FBQztnQkFDdkMsSUFBSSxjQUFjLElBQUksY0FBYyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7b0JBQUUsT0FBTyxJQUFJLENBQUM7YUFDL0Q7Ozs7Ozs7OztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVEOztPQUVHO0lBQ0ssK0JBQU8sR0FBZjtRQUNFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUgsb0JBQUM7QUFBRCxDQUFDLEFBMUZELElBMEZDO0FBMUZZLHNDQUFhIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVlcnlPYnNlcnZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIlF1ZXJ5T2JzZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLHFFQUFvQztBQU9wQyxpQ0FBMkM7QUFJM0M7Ozs7R0FJRztBQUNILE1BQWEsYUFBYTtJQVd4QixZQUFZLE9BQWtDLEVBQUUsS0FBbUIsRUFBRSxRQUF1QixFQUFFLE9BQXFCO1FBQ2pILElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBQSxXQUFJLEVBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkYsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUFFO1lBQ3JCLE9BQU8sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUNoQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDaEI7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsY0FBYyxDQUNaLFFBQXVCLEVBQ3ZCLGNBQTJCLEVBQzNCLGFBQWtDLEVBQ2xDLGNBQTBFO1FBRTFFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1FBQ3hDLElBQUksUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUM7WUFBRSxPQUFPO1FBQ3pELHNFQUFzRTtRQUN0RSxFQUFFO1FBQ0YsMEVBQTBFO1FBQzFFLGNBQWM7UUFDZCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUQsTUFBTSxV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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports._visitSelection = exports._walkAndOverlayDynamicValues = exports.read = exports.MissingFieldError = void 0;
var tslib_1 = require("tslib");
var msand_apollo_client_1 = require("msand-apollo-client");
var schema_1 = require("../schema");
var util_1 = require("../util");
var nodes_1 = require("../nodes");
var SnapshotEditor_1 = require("./SnapshotEditor");
var MissingFieldError = /** @class */ (function (_super) {
tslib_1.__extends(MissingFieldError, _super);
function MissingFieldError(message, path, query, variables) {
var _a;
var _this =
const msand_apollo_client_1 = require("msand-apollo-client");
const schema_1 = require("../schema");
const util_1 = require("../util");
const nodes_1 = require("../nodes");
const SnapshotEditor_1 = require("./SnapshotEditor");
class MissingFieldError extends Error {
constructor(message, path, query, variables) {
// 'Error' breaks prototype chain here
_super.call(this, message) || this;
_this.message = message;
_this.path = path;
_this.query = query;
_this.variables = variables;
if (Array.isArray(_this.path)) {
_this.missing = _this.message;
for (var i = _this.path.length - 1; i >= 0; --i) {
_this.missing = (_a = {}, _a[_this.path[i]] = _this.missing, _a);
super(message);
this.message = message;
this.path = path;
this.query = query;
this.variables = variables;
if (Array.isArray(this.path)) {
this.missing = this.message;
for (let i = this.path.length - 1; i >= 0; --i) {
this.missing = { [this.path[i]]: this.missing };
}
}
else {
_this.missing = _this.path;
this.missing = this.path;
}

@@ -33,28 +29,25 @@ // We're not using `Object.setPrototypeOf` here as it isn't fully supported

// eslint-disable-next-line no-proto
_this.__proto__ = MissingFieldError.prototype;
return _this;
this.__proto__ = MissingFieldError.prototype;
}
return MissingFieldError;
}(Error));
}
exports.MissingFieldError = MissingFieldError;
function read(context, raw, snapshot, tempStore, includeNodeIds) {
function read(context, raw, snapshot, tempStore = Object.create(null), includeNodeIds) {
var _a, _b;
if (tempStore === void 0) { tempStore = Object.create(null); }
var tracerContext;
let tracerContext;
if (context.tracer.readStart) {
tracerContext = context.tracer.readStart(raw);
}
var operation = context.parseOperation(raw);
const operation = context.parseOperation(raw);
// Retrieve the previous result (may be partially complete), or start anew.
var queryResult = snapshot.readCache.get(operation) || {};
const queryResult = snapshot.readCache.get(operation) || {};
snapshot.readCache.set(operation, queryResult);
var cacheHit = true;
let cacheHit = true;
if (!queryResult.result) {
cacheHit = false;
var nodeSnapshot = (_a = snapshot.getNodeSnapshot(operation.rootId)) !== null && _a !== void 0 ? _a : {};
var data = nodeSnapshot.data, outbound = nodeSnapshot.outbound;
const nodeSnapshot = (_a = snapshot.getNodeSnapshot(operation.rootId)) !== null && _a !== void 0 ? _a : {};
const { data, outbound } = nodeSnapshot;
queryResult.result = data;
if ((!operation.isStatic && (data || outbound || context.typePolicies)) ||
(operation.parsedQuery.__typename && data && !('__typename' in data))) {
var dynamicNodeIds = new Set();
const dynamicNodeIds = new Set();
queryResult.result = _walkAndOverlayDynamicValues(operation, context, snapshot, (_b = queryResult.result) !== null && _b !== void 0 ? _b : {}, dynamicNodeIds, tempStore);

@@ -67,3 +60,3 @@ queryResult.dynamicNodeIds = dynamicNodeIds;

if (typeof queryResult.complete !== 'boolean') {
var missing = [];
const missing = [];
queryResult.complete = _visitSelection(operation, context, queryResult.result, queryResult.entityIds, missing);

@@ -80,3 +73,3 @@ if (missing.length) {

cacheHit = false;
var entityIds = new Set();
const entityIds = new Set();
queryResult.complete = _visitSelection(operation, context, queryResult.result, entityIds);

@@ -86,3 +79,3 @@ queryResult.entityIds = entityIds;

if (context.tracer.readEnd) {
var result = { result: queryResult, cacheHit: cacheHit };
const result = { result: queryResult, cacheHit };
context.tracer.readEnd(operation, result, tracerContext);

@@ -93,4 +86,4 @@ }

exports.read = read;
var OverlayWalkNode = /** @class */ (function () {
function OverlayWalkNode(value, containerId, parsedMap, path) {
class OverlayWalkNode {
constructor(value, containerId, parsedMap, path) {
this.value = value;

@@ -101,4 +94,3 @@ this.containerId = containerId;

}
return OverlayWalkNode;
}());
}
/**

@@ -117,5 +109,5 @@ * Walks a parameterized field map, overlaying values at those paths on top of

// dynamic values to be overlaid
var id = query.rootId;
var isRoot = id === schema_1.StaticNodeId.QueryRoot;
var rootSnapshot = ((_a = snapshot.getNodeSnapshot(id)) !== null && _a !== void 0 ? _a : isRoot)
const id = query.rootId;
const isRoot = id === schema_1.StaticNodeId.QueryRoot;
const rootSnapshot = ((_a = snapshot.getNodeSnapshot(id)) !== null && _a !== void 0 ? _a : isRoot)
? {}

@@ -128,11 +120,10 @@ : undefined;

// on parameterized value nodes to make that happen.
var newResult = _wrapValue(result, context);
const newResult = _wrapValue(result, context);
// TODO: This logic sucks. We'd do much better if we had knowledge of the
// schema. Can we layer that on in such a way that we can support uses w/ and
// w/o a schema compilation step?
var queue = [new OverlayWalkNode(newResult, id, query.parsedQuery, [])];
const queue = [new OverlayWalkNode(newResult, id, query.parsedQuery, [])];
function readFromSnapshot(obj, key) {
var e_1, _a;
var _b;
var data = obj.data;
var _a;
const data = obj.data;
if (!data || typeof data !== 'object') {

@@ -144,17 +135,7 @@ return undefined;

}
try {
for (var _c = tslib_1.__values((_b = obj.outbound) !== null && _b !== void 0 ? _b : []), _d = _c.next(); !_d.done; _d = _c.next()) {
var out = _d.value;
if (out.path[0] === key) {
return snapshot.getNodeData(out.id);
}
for (const out of (_a = obj.outbound) !== null && _a !== void 0 ? _a : []) {
if (out.path[0] === key) {
return snapshot.getNodeData(out.id);
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
}
finally { if (e_1) throw e_1.error; }
}
if (isRoot && key === '__typename') {

@@ -165,5 +146,4 @@ return 'Query';

}
var readField = function (fieldNameOrOptions, from) {
const readField = (fieldNameOrOptions, from = rootSnapshot.data) => {
var _a;
if (from === void 0) { from = rootSnapshot.data; }
if (!from) {

@@ -175,4 +155,4 @@ return undefined;

if ((0, msand_apollo_client_1.isReference)(from)) {
var ref = from.__ref;
var obj = (_a = tempStore[ref]) !== null && _a !== void 0 ? _a : snapshot.getNodeSnapshot(ref);
const ref = from.__ref;
const obj = (_a = tempStore[ref]) !== null && _a !== void 0 ? _a : snapshot.getNodeSnapshot(ref);
if (!obj) {

@@ -191,15 +171,15 @@ return undefined;

}
var ensureNewSnapshot = function (nodeId) {
var parent = getSnapshot(nodeId);
const ensureNewSnapshot = (nodeId) => {
const parent = getSnapshot(nodeId);
// TODO: We're assuming that the only time we call _ensureNewSnapshot when
// there is no parent is when the node is an entity. Can we enforce it, or
// pass a type through?
var newSnapshot = parent ? (0, nodes_1.cloneNodeSnapshot)(parent) : new nodes_1.EntitySnapshot();
const newSnapshot = parent ? (0, nodes_1.cloneNodeSnapshot)(parent) : new nodes_1.EntitySnapshot();
tempStore[nodeId] = newSnapshot;
return newSnapshot;
};
var readOptions = {
const readOptions = {
args: {},
cache: null,
canRead: function (value) {
canRead(value) {
return (0, msand_apollo_client_1.isReference)(value)

@@ -212,13 +192,13 @@ ? snapshot.has(value.__ref)

isReference: msand_apollo_client_1.isReference,
mergeObjects: function (existing, incoming) {
return tslib_1.__assign(tslib_1.__assign({}, existing), incoming);
mergeObjects(existing, incoming) {
return Object.assign(Object.assign({}, existing), incoming);
},
readField: readField,
readField,
storage: rootSnapshot,
storeFieldName: '',
toReference: function (value, mergeIntoStore) {
var entityId = context.entityIdForValue(value);
toReference: (value, mergeIntoStore) => {
const entityId = context.entityIdForValue(value);
if (entityId && mergeIntoStore && !(0, msand_apollo_client_1.isReference)(value) && typeof value !== 'string') {
var nodeSnapshot = ensureNewSnapshot(entityId);
nodeSnapshot.data = tslib_1.__assign(tslib_1.__assign({}, nodeSnapshot.data), value);
const nodeSnapshot = ensureNewSnapshot(entityId);
nodeSnapshot.data = Object.assign(Object.assign({}, nodeSnapshot.data), value);
}

@@ -230,6 +210,6 @@ return entityId ? (0, msand_apollo_client_1.makeReference)(entityId) : undefined;

while (queue.length) {
var walkNode = queue.pop();
var value = walkNode.value, parsedMap = walkNode.parsedMap;
var containerId = walkNode.containerId, path = walkNode.path;
var valueId = context.entityIdForValue(value);
const walkNode = queue.pop();
const { value, parsedMap } = walkNode;
let { containerId, path } = walkNode;
const valueId = context.entityIdForValue(value);
if (valueId) {

@@ -239,21 +219,21 @@ containerId = valueId;

}
var typeName = value.__typename;
let typeName = value.__typename;
if (!typeName && containerId === schema_1.StaticNodeId.QueryRoot && path.length === 0) {
typeName = 'Query'; // Preserve the default cache's behavior.
}
var typePolicies = (_c = (_b = context.typePolicies) === null || _b === void 0 ? void 0 : _b[typeName]) === null || _c === void 0 ? void 0 : _c.fields;
for (var key in parsedMap) {
var node = parsedMap[key];
var child = void 0;
var fieldName = key;
const typePolicies = (_c = (_b = context.typePolicies) === null || _b === void 0 ? void 0 : _b[typeName]) === null || _c === void 0 ? void 0 : _c.fields;
for (const key in parsedMap) {
const node = parsedMap[key];
let child;
let fieldName = key;
// This is an alias if we have a schemaName declared.
fieldName = node.schemaName ? node.schemaName : key;
var nextContainerId = containerId;
var nextPath = path;
let nextContainerId = containerId;
let nextPath = path;
if (node.args) {
var childId = (0, SnapshotEditor_1.nodeIdForParameterizedValue)(containerId, tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [fieldName], false), node.args);
var childSnapshot = snapshot.getNodeSnapshot(childId);
let childId = (0, SnapshotEditor_1.nodeIdForParameterizedValue)(containerId, [...path, fieldName], node.args);
let childSnapshot = snapshot.getNodeSnapshot(childId);
if (!childSnapshot) {
// Should we fall back to a redirect?
var redirect = (0, util_1.deepGet)(context.resolverRedirects, [typeName, fieldName]);
const redirect = (0, util_1.deepGet)(context.resolverRedirects, [typeName, fieldName]);
if (redirect) {

@@ -266,4 +246,4 @@ childId = redirect(node.args);

else if (typePolicies) {
var fieldPolicy = typePolicies[fieldName];
var readFn = fieldPolicy && (typeof fieldPolicy === 'object' ? fieldPolicy.read : fieldPolicy);
const fieldPolicy = typePolicies[fieldName];
const readFn = fieldPolicy && (typeof fieldPolicy === 'object' ? fieldPolicy.read : fieldPolicy);
if (readFn) {

@@ -273,6 +253,6 @@ readOptions.fieldName = fieldName;

readOptions.args = node.args;
var readResult = readFn(undefined, readOptions);
const readResult = readFn(undefined, readOptions);
if ((0, msand_apollo_client_1.isReference)(readResult)) {
var ref_1 = readResult.__ref;
childSnapshot = getSnapshot(ref_1);
const ref = readResult.__ref;
childSnapshot = getSnapshot(ref);
}

@@ -295,6 +275,6 @@ else {

else {
nextPath = tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [fieldName], false);
nextPath = [...path, fieldName];
child = value[fieldName];
var policy = typePolicies === null || typePolicies === void 0 ? void 0 : typePolicies[fieldName];
var readFn = typeof policy === 'function' ? policy : policy === null || policy === void 0 ? void 0 : policy.read;
const policy = typePolicies === null || typePolicies === void 0 ? void 0 : typePolicies[fieldName];
const readFn = typeof policy === 'function' ? policy : policy === null || policy === void 0 ? void 0 : policy.read;
if (readFn) {

@@ -307,3 +287,3 @@ readOptions.fieldName = fieldName;

}
var ref = void 0;
let ref;
if ((0, msand_apollo_client_1.isReference)(child)) {

@@ -313,9 +293,9 @@ ref = child.__ref;

}
var hasPolicy = child && ((_g = (_f = context.typePolicies) === null || _f === void 0 ? void 0 : _f[child.__typename]) === null || _g === void 0 ? void 0 : _g.fields);
const hasPolicy = child && ((_g = (_f = context.typePolicies) === null || _f === void 0 ? void 0 : _f[child.__typename]) === null || _g === void 0 ? void 0 : _g.fields);
// Have we reached a leaf (either in the query, or in the cache)?
if (hasPolicy || ref || _shouldWalkChildren(child, node)) {
child = _recursivelyWrapValue(child, context);
var allChildValues = _flattenGraphQLObject(child, nextPath);
for (var i = 0; i < allChildValues.length; i++) {
var item = allChildValues[i];
const allChildValues = _flattenGraphQLObject(child, nextPath);
for (let i = 0; i < allChildValues.length; i++) {
const item = allChildValues[i];
queue.push(new OverlayWalkNode(item.value, nextContainerId, (_h = node.children) !== null && _h !== void 0 ? _h : {}, item.path));

@@ -354,8 +334,8 @@ }

if (!Array.isArray(value))
return [{ value: value, path: path }];
var flattened = [];
for (var i = 0; i < value.length; i++) {
var item = value[i];
var list = _flattenGraphQLObject(item, tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [i], false));
flattened.push.apply(flattened, tslib_1.__spreadArray([], tslib_1.__read(list), false));
return [{ value, path }];
const flattened = [];
for (let i = 0; i < value.length; i++) {
const item = value[i];
const list = _flattenGraphQLObject(item, [...path, i]);
flattened.push(...list);
}

@@ -368,6 +348,6 @@ return flattened;

}
var newValue = [];
const newValue = [];
// Note that we're careful to iterate over all indexes, in case this is a
// sparse array.
for (var i = 0; i < value.length; i++) {
for (let i = 0; i < value.length; i++) {
newValue[i] = _recursivelyWrapValue(value[i], context);

@@ -382,6 +362,6 @@ }

if (Array.isArray(value)) {
return tslib_1.__spreadArray([], tslib_1.__read(value), false);
return [...value];
}
if ((0, util_1.isObject)(value)) {
var newValue = tslib_1.__assign({}, value);
const newValue = Object.assign({}, value);
if (context.entityTransformer && context.entityIdForValue(value)) {

@@ -399,12 +379,10 @@ context.entityTransformer(newValue);

function _visitSelection(query, context, result, nodeIds, missing) {
var e_2, _a;
var complete = true;
let complete = true;
if (nodeIds && result !== undefined) {
nodeIds.add(query.rootId);
}
var missingByFieldName = new Map();
const missingByFieldName = new Map();
// TODO: Memoize per query, and propagate through cache snapshots.
(0, util_1.walkOperation)(query.info.parsed, result, function (value, fields, path) {
var e_3, _a;
var _b, _c;
(0, util_1.walkOperation)(query.info.parsed, result, (value, fields, path) => {
var _a, _b;
if (value === undefined) {

@@ -421,3 +399,3 @@ complete = false;

if (nodeIds && (0, util_1.isObject)(value)) {
var nodeId = context.entityIdForValue(value);
const nodeId = context.entityIdForValue(value);
if (nodeId !== undefined) {

@@ -427,48 +405,28 @@ nodeIds.add(nodeId);

}
try {
for (var fields_1 = tslib_1.__values(fields), fields_1_1 = fields_1.next(); !fields_1_1.done; fields_1_1 = fields_1.next()) {
var field = fields_1_1.value;
if (!(field in value) && field !== '__typename') {
var missingError = missingByFieldName.get(field);
var nodeId = (_b = context.entityIdForValue(value)) !== null && _b !== void 0 ? _b : ((value === null || value === void 0 ? void 0 : value.__typename) === 'Query' ? 'ROOT_QUERY' : undefined);
var objOrNodeId = nodeId ? "".concat(nodeId, " object") : "object ".concat(JSON.stringify(value, undefined, 2));
var message = "Can't find field '".concat(field, "' on ").concat(objOrNodeId);
if (!missingError) {
var missingTree = {};
(0, util_1.lazyImmutableDeepSet)(missingTree, undefined, tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [field], false), message);
missingByFieldName.set(field, missingError = new MissingFieldError(message, missingTree, query.info.document, (_c = query.variables) !== null && _c !== void 0 ? _c : {}));
}
else {
var missingTree = missingError.path;
(0, util_1.lazyImmutableDeepSet)(missingTree, undefined, tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [field], false), message);
}
complete = false;
for (const field of fields) {
if (!(field in value) && field !== '__typename') {
let missingError = missingByFieldName.get(field);
const nodeId = (_a = context.entityIdForValue(value)) !== null && _a !== void 0 ? _a : ((value === null || value === void 0 ? void 0 : value.__typename) === 'Query' ? 'ROOT_QUERY' : undefined);
const objOrNodeId = nodeId ? `${nodeId} object` : `object ${((0, util_1.safeStringify)(value))}`;
const message = `Can't find field '${field}' on ${objOrNodeId}`;
if (!missingError) {
const missingTree = {};
(0, util_1.lazyImmutableDeepSet)(missingTree, undefined, [...path, field], message);
missingByFieldName.set(field, missingError = new MissingFieldError(message, missingTree, query.info.document, (_b = query.variables) !== null && _b !== void 0 ? _b : {}));
}
else {
const missingTree = missingError.path;
(0, util_1.lazyImmutableDeepSet)(missingTree, undefined, [...path, field], message);
}
complete = false;
}
}
catch (e_3_1) { e_3 = { error: e_3_1 }; }
finally {
try {
if (fields_1_1 && !fields_1_1.done && (_a = fields_1.return)) _a.call(fields_1);
}
finally { if (e_3) throw e_3.error; }
}
return false;
});
try {
for (var _b = tslib_1.__values(missingByFieldName.values()), _c = _b.next(); !_c.done; _c = _b.next()) {
var error = _c.value;
missing === null || missing === void 0 ? void 0 : missing.push(error);
}
for (const error of missingByFieldName.values()) {
missing === null || missing === void 0 ? void 0 : missing.push(error);
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
}
finally { if (e_2) throw e_2.error; }
}
return complete;
}
exports._visitSelection = _visitSelection;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJlYWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLDJEQUF3RjtBQVN4RixvQ0FBa0Y7QUFDbEYsZ0NBQXdGO0FBQ3hGLGtDQUEyRTtBQUUzRSxtREFBK0Q7QUFRL0Q7SUFBdUMsNkNBQUs7SUFDMUMsMkJBQ2tCLE9BQWUsRUFDZixJQUEwQyxFQUMxQyxLQUFtQixFQUNuQixTQUErQjs7UUFKakQ7UUFNRSxzQ0FBc0M7UUFDdEMsa0JBQU0sT0FBTyxDQUFDLFNBZWY7UUFyQmlCLGFBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixVQUFJLEdBQUosSUFBSSxDQUFzQztRQUMxQyxXQUFLLEdBQUwsS0FBSyxDQUFjO1FBQ25CLGVBQVMsR0FBVCxTQUFTLENBQXNCO1FBSy9DLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDNUIsS0FBSSxDQUFDLE9BQU8sR0FBRyxLQUFJLENBQUMsT0FBTyxDQUFDO1lBQzVCLEtBQUssSUFBSSxDQUFDLEdBQUcsS0FBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUU7Z0JBQzlDLEtBQUksQ0FBQyxPQUFPLGFBQUssR0FBQyxLQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFHLEtBQUksQ0FBQyxPQUFPLEtBQUUsQ0FBQzthQUNqRDtTQUNGO2FBQU07WUFDTCxLQUFJLENBQUMsT0FBTyxHQUFHLEtBQUksQ0FBQyxJQUFJLENBQUM7U0FDMUI7UUFFRCwyRUFBMkU7UUFDM0UsZ0NBQWdDO1FBQ2hDLG9DQUFvQztRQUNuQyxLQUFZLENBQUMsU0FBUyxHQUFHLGlCQUFpQixDQUFDLFNBQVMsQ0FBQzs7SUFDeEQsQ0FBQztJQUdILHdCQUFDO0FBQUQsQ0FBQyxBQTFCRCxDQUF1QyxLQUFLLEdBMEIzQztBQTFCWSw4Q0FBaUI7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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJlYWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkRBQXdGO0FBU3hGLHNDQUFrRjtBQUNsRixrQ0FBdUc7QUFDdkcsb0NBQTJFO0FBRTNFLHFEQUErRDtBQVEvRCxNQUFhLGlCQUFrQixTQUFRLEtBQUs7SUFDMUMsWUFDa0IsT0FBZSxFQUNmLElBQTBDLEVBQzFDLEtBQW1CLEVBQ25CLFNBQStCO1FBRS9DLHNDQUFzQztRQUN0QyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFOQyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsU0FBSSxHQUFKLElBQUksQ0FBc0M7UUFDMUMsVUFBSyxHQUFMLEtBQUssQ0FBYztRQUNuQixjQUFTLEdBQVQsU0FBUyxDQUFzQjtRQUsvQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUM1QixLQUFLLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFO2dCQUM5QyxJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ2pEO1NBQ0Y7YUFBTTtZQUNMLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztTQUMxQjtRQUVELDJFQUEyRTtRQUMzRSxnQ0FBZ0M7UUFDaEMsb0NBQW9DO1FBQ25DLElBQVksQ0FBQyxTQUFTLEdBQUcsaUJBQWlCLENBQUMsU0FBUyxDQUFDO0lBQ3hELENBQUM7Q0FHRjtBQTFCRCw4Q0EwQkM7QUF1Q0QsU0FBZ0IsSUFBSSxDQUNsQixPQUFrQyxFQUNsQyxHQUFpQixFQUNqQixRQUF1QixFQUN2QixZQUE2QixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUNoRCxjQUF3Qjs7SUFFeEIsSUFBSSxhQUFhLENBQUM7SUFDbEIsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRTtRQUM1QixhQUFhLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDL0M7SUFFRCxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRTlDLDJFQUEyRTtJQUMzRSxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFxQyxDQUFDO0lBQy9GLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxXQUEwQixDQUFDLENBQUM7SUFFOUQsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFO1FBQ3ZCLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsTUFBTSxZQUFZLEdBQUcsTUFBQSxRQUFRLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsbUNBQUksRUFBRSxDQUFDO1FBQ3RFLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEdBQUcsWUFBWSxDQUFDO1FBQ3hDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsSUFBa0IsQ0FBQztRQUV4QyxJQUNFLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxJQUFJLFFBQVEsSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDbkUsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFVBQVUsSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLFlBQVksSUFBSyxJQUFtQixDQUFDLENBQUMsRUFDckY7WUFDQSxNQUFNLGNBQWMsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO1lBQ3pDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsNEJBQTRCLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBQSxXQUFXLENBQUMsTUFBTSxtQ0FBSSxFQUFFLEVBQUUsY0FBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ3RJLFdBQVcsQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO1NBQzdDO1FBRUQsV0FBVyxDQUFDLFNBQVMsR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUV2RSwyRUFBMkU7UUFDM0UsNENBQTRDO1FBQzVDLElBQUksT0FBTyxXQUFXLENBQUMsUUFBUSxLQUFLLFNBQVMsRUFBRTtZQUM3QyxNQUFNLE9BQU8sR0FBd0IsRUFBRSxDQUFDO1lBQ3hDLFdBQVcsQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQy9HLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtnQkFDbEIsV0FBVyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7YUFDL0I7U0FDRjtLQUNGO0lBRUQsNkVBQTZFO0lBQzdFLDZFQUE2RTtJQUM3RSxRQUFRO0lBQ1IsSUFBSSxjQUFjLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFO1FBQzVDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztRQUNwQyxXQUFXLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDMUYsV0FBVyxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7S0FDbkM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO1FBQzFCLE1BQU0sTUFBTSxHQUFHLEVBQUUsTUFBTSxFQUFFLFdBQTBCLEVBQUUsUUFBUSxFQUFFLENBQUM7UUFDaEUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQztLQUMxRDtJQUVELE9BQU8sV0FBVyxDQUFDO0FBQ3JCLENBQUM7QUEvREQsb0JBK0RDO0FBRUQsTUFBTSxlQUFlO0lBQ25CLFlBQ2tCLEtBQWlCLEVBQ2pCLFdBQW1CLEVBQ25CLFNBQXNCLEVBQ3RCLElBQWdCO1FBSGhCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsZ0JBQVcsR0FBWCxXQUFXLENBQVE7UUFDbkIsY0FBUyxHQUFULFNBQVMsQ0FBYTtRQUN0QixTQUFJLEdBQUosSUFBSSxDQUFZO0lBQy9CLENBQUM7Q0FDTDtBQUVEOzs7Ozs7O0dBT0c7QUFDSCxTQUFnQiw0QkFBNEIsQ0FDMUMsS0FBcUMsRUFDckMsT0FBa0MsRUFDbEMsUUFBdUIsRUFDdkIsTUFBOEIsRUFDOUIsY0FBMkIsRUFDM0IsU0FBMEI7O0lBRTFCLDJFQUEyRTtJQUMzRSx5RUFBeUU7SUFDekUsZ0NBQWdDO0lBQ2hDLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDeEIsTUFBTSxNQUFNLEdBQUcsRUFBRSxLQUFLLHFCQUFZLENBQUMsU0FBUyxDQUFDO0lBQzdDLE1BQU0sWUFBWSxHQUNkLENBQUEsTUFBQSxRQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxtQ0FDekIsTUFBTTtRQUNULENBQUMsQ0FBQyxFQUFFO1FBQ0osQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNoQixJQUFJLElBQUEsWUFBSyxFQUFDLFlBQVksQ0FBQztRQUFFLE9BQU8sTUFBTSxDQUFDO0lBRXZDLDZFQUE2RTtJQUM3RSw4RUFBOEU7SUFDOUUsb0RBQW9EO0lBRXBELE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFlLENBQUM7SUFDNUQsMEVBQTBFO0lBQzFFLDhFQUE4RTtJQUM5RSxpQ0FBaUM7SUFDakMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUUxRSxTQUFTLGdCQUFnQixDQUFDLEdBQTJCLEVBQUUsR0FBVzs7UUFDaEUsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRTtZQUNyQyxPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUNELElBQUksR0FBRyxJQUFJLElBQUksRUFBRTtZQUNmLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2xCO1FBQ0QsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFBLEdBQUcsQ0FBQyxRQUFRLG1DQUFJLEVBQUUsRUFBRTtZQUNwQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFO2dCQUN2QixPQUFPLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ3JDO1NBQ0Y7UUFDRCxJQUFJLE1BQU0sSUFBSSxHQUFHLEtBQUssWUFBWSxFQUFFO1lBQ2xDLE9BQU8sT0FBTyxDQUFDO1NBQ2hCO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVELE1BQU0sU0FBUyxHQUFHLENBQ2hCLGtCQUE2QyxFQUM3QyxPQUFnQyxZQUFZLENBQUMsSUFBbUIsRUFDaEUsRUFBRTs7UUFDRixJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFDRCxJQUFJLE9BQU8sa0JBQWtCLEtBQUssUUFBUTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUUvRSxJQUFJLElBQUEsaUNBQVcsRUFBQyxJQUFJLENBQUMsRUFBRTtZQUNyQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLE1BQU0sR0FBRyxHQUFHLE1BQUEsU0FBUyxDQUFDLEdBQUcsQ0FBQyxtQ0FBSSxRQUFRLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ1IsT0FBTyxTQUFTLENBQUM7YUFDbEI7WUFDRCxPQUFPLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1NBQ2xEO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQyxDQUFDO0lBRUYsU0FBUyxXQUFXLENBQUMsTUFBYzs7UUFDakMsT0FBTyxNQUFBLFNBQVMsQ0FBQyxNQUFNLENBQUMsbUNBQUksUUFBUSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLE1BQWMsRUFBZ0IsRUFBRTtRQUN6RCxNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFbkMsMEVBQTBFO1FBQzFFLDJFQUEyRTtRQUMzRSx1QkFBdUI7UUFDdkIsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFBLHlCQUFpQixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLHNCQUFjLEVBQUUsQ0FBQztRQUM5RSxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsV0FBVyxDQUFDO1FBQ2hDLE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUMsQ0FBQztJQUVGLE1BQU0sV0FBVyxHQUF5QjtRQUN4QyxJQUFJLEVBQUUsRUFBRTtRQUNSLEtBQUssRUFBRSxJQUFXO1FBQ2xCLE9BQU8sQ0FBQyxLQUFpQjtZQUN2QixPQUFPLElBQUEsaUNBQVcsRUFBQyxLQUFLLENBQUM7Z0JBQ3ZCLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7Z0JBQzNCLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQztRQUNsRCxDQUFDO1FBQ0QsS0FBSyxFQUFFLElBQUk7UUFDWCxTQUFTLEVBQUUsRUFBRTtRQUNiLFdBQVcsRUFBWCxpQ0FBVztRQUNYLFlBQVksQ0FBSSxRQUFXLEVBQUUsUUFBVztZQUN0Qyx1Q0FBWSxRQUFRLEdBQUssUUFBUSxFQUFHO1FBQ3RDLENBQUM7UUFDRCxTQUFTO1FBQ1QsT0FBTyxFQUFFLFlBQVk7UUFDckIsY0FBYyxFQUFFLEVBQUU7UUFDbEIsV0FBVyxFQUFFLENBQUMsS0FBSyxFQUFFLGNBQWMsRUFBRSxFQUFFO1lBQ3JDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqRCxJQUFJLFFBQVEsSUFBSSxjQUFjLElBQUksQ0FBQyxJQUFBLGlDQUFXLEVBQUMsS0FBSyxDQUFDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO2dCQUNsRixNQUFNLFlBQVksR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDakQsWUFBWSxDQUFDLElBQUksbUNBQVEsWUFBWSxDQUFDLElBQVUsR0FBSyxLQUFLLENBQUUsQ0FBQzthQUM5RDtZQUNELE9BQU8sUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFBLG1DQUFhLEVBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO0tBQzNCLENBQUM7SUFFRixPQUFPLEtBQUssQ0FBQyxNQUFNLEVBQUU7UUFDbkIsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLEdBQUcsRUFBRyxDQUFDO1FBQzlCLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsUUFBUSxDQUFDO1FBQ3RDLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLEdBQUcsUUFBUSxDQUFDO1FBQ3JDLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxJQUFJLE9BQU8sRUFBRTtZQUNYLFdBQVcsR0FBRyxPQUFPLENBQUM7WUFDdEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztTQUNYO1FBRUQsSUFBSSxRQUFRLEdBQUcsS0FBSyxDQUFDLFVBQW9CLENBQUM7UUFDMUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxXQUFXLEtBQUsscUJBQVksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDNUUsUUFBUSxHQUFHLE9BQU8sQ0FBQyxDQUFDLHlDQUF5QztTQUM5RDtRQUNELE1BQU0sWUFBWSxHQUFHLE1BQUEsTUFBQSxPQUFPLENBQUMsWUFBWSwwQ0FBRyxRQUFRLENBQUMsMENBQUUsTUFBTSxDQUFDO1FBRTlELEtBQUssTUFBTSxHQUFHLElBQUksU0FBUyxFQUFFO1lBQzNCLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM1QixJQUFJLEtBQUssQ0FBQztZQUNWLElBQUksU0FBUyxHQUFHLEdBQUcsQ0FBQztZQUVwQixxREFBcUQ7WUFDckQsU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztZQUVwRCxJQUFJLGVBQWUsR0FBRyxXQUFXLENBQUM7WUFDbEMsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDO1lBRXBCLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtnQkFDYixJQUFJLE9BQU8sR0FBRyxJQUFBLDRDQUEyQixFQUFDLFdBQVcsRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUFFLFNBQVMsQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDeEYsSUFBSSxhQUFhLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDdEQsSUFBSSxDQUFDLGFBQWEsRUFBRTtvQkFFbEIscUNBQXFDO29CQUNyQyxNQUFNLFFBQVEsR0FBOEMsSUFBQSxjQUFPLEVBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFRLENBQUM7b0JBQzdILElBQUksUUFBUSxFQUFFO3dCQUNaLE9BQU8sR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUM5QixJQUFJLENBQUMsSUFBQSxZQUFLLEVBQUMsT0FBTyxDQUFDLEVBQUU7NEJBQ25CLGFBQWEsR0FBRyxRQUFRLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO3lCQUNuRDtxQkFDRjt5QkFBTSxJQUFJLFlBQVksRUFBRTt3QkFDdkIsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO3dCQUM1QyxNQUFNLE1BQU0sR0FBRyxXQUFXLElBQUksQ0FBQyxPQUFPLFdBQVcsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO3dCQUNqRyxJQUFJLE1BQU0sRUFBRTs0QkFDVixXQUFXLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQzs0QkFDbEMsV0FBVyxDQUFDLGNBQWMsR0FBRyxHQUFHLENBQUM7NEJBQ2pDLFdBQVcsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQzs0QkFDN0IsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQzs0QkFDbEQsSUFBSSxJQUFBLGlDQUFXLEVBQUMsVUFBVSxDQUFDLEVBQUU7Z0NBQzNCLE1BQU0sR0FBRyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7Z0NBQzdCLGFBQWEsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7NkJBQ2xDO2lDQUFNO2dDQUNMLEtBQUssR0FBRyxVQUFVLENBQUM7NkJBQ3BCO3lCQUNGO3FCQUNGO2lCQUNGO2dCQUNELGNBQWMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBRTVCLHlDQUF5QztnQkFDekMsSUFBSSxDQUFDLGFBQWEsRUFBRTtvQkFDbEIsU0FBUztpQkFDVjtnQkFFRCxlQUFlLEdBQUcsT0FBTyxDQUFDO2dCQUMxQixRQUFRLEdBQUcsRUFBRSxDQUFDO2dCQUNkLEtBQUssR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDO2FBQzVCO2lCQUFNO2dCQUNMLFFBQVEsR0FBRyxDQUFDLEdBQUcsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUNoQyxLQUFLLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUN6QixNQUFNLE1BQU0sR0FBRyxZQUFZLGFBQVosWUFBWSx1QkFBWixZQUFZLENBQUcsU0FBUyxDQUFDLENBQUM7Z0JBQ3pDLE1BQU0sTUFBTSxHQUFHLE9BQU8sTUFBTSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsSUFBSSxDQUFDO2dCQUNwRSxJQUFJLE1BQU0sRUFBRTtvQkFDVixXQUFXLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztvQkFDbEMsV0FBVyxDQUFDLGNBQWMsR0FBRyxHQUFHLENBQUM7b0JBQ2pDLFdBQVcsQ0FBQyxJQUFJLEdBQUcsTUFBQSxJQUFJLENBQUMsSUFBSSxtQ0FBSSxJQUFJLENBQUM7b0JBQ3JDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO2lCQUNwQzthQUNGO1lBRUQsSUFBSSxHQUFHLENBQUM7WUFDUixJQUFJLElBQUEsaUNBQVcsRUFBQyxLQUFLLENBQUMsRUFBRTtnQkFDdEIsR0FBRyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7Z0JBQ2xCLEtBQUssR0FBRyxNQUFBLFFBQVEsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLDBDQUFFLElBQUksQ0FBQzthQUM3QztZQUVELE1BQU0sU0FBUyxHQUFHLEtBQUssS0FBSSxNQUFBLE1BQUEsT0FBTyxDQUFDLFlBQVksMENBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQywwQ0FBRSxNQUFNLENBQUEsQ0FBQztZQUU1RSxpRUFBaUU7WUFDakUsSUFBSSxTQUFTLElBQUksR0FBRyxJQUFJLG1CQUFtQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsRUFBRTtnQkFDeEQsS0FBSyxHQUFHLHFCQUFxQixDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDOUMsTUFBTSxjQUFjLEdBQUcscUJBQXFCLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUU5RCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtvQkFDOUMsTUFBTSxJQUFJLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUMvQixLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQUEsSUFBSSxDQUFDLFFBQVEsbUNBQUksRUFBRSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUM5RjthQUNGO1lBRUQseUVBQXlFO1lBQ3pFLHNCQUFzQjtZQUN0QixJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksR0FBRyxLQUFLLFlBQVksSUFBSSxRQUFRLEVBQUU7Z0JBQzNELEtBQUssQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO2FBQzdCO2lCQUFNO2dCQUNMLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLGFBQUwsS0FBSyxjQUFMLEtBQUssR0FBSSxJQUFpQixDQUFDO2FBQ3pDO1NBQ0Y7S0FDRjtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUE5TkQsb0VBOE5DO0FBYUQ7Ozs7R0FJRztBQUNILFNBQVMsbUJBQW1CLENBQzFCLEtBQTRCLEVBQzVCLElBQXFCO0lBRXJCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDO0FBQzlFLENBQUM7QUFRRDs7OztHQUlHO0FBQ0gsU0FBUyxxQkFBcUIsQ0FBQyxLQUEyQixFQUFFLElBQWdCO0lBQzFFLElBQUksS0FBSyxLQUFLLElBQUk7UUFBRSxPQUFPLEVBQUUsQ0FBQztJQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFBRSxPQUFPLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUVwRCxNQUFNLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFFckIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDckMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RCLE1BQU0sSUFBSSxHQUFHLHFCQUFxQixDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFdkQsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0tBQ3pCO0lBRUQsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQW1DLEtBQW9CLEVBQUUsT0FBa0M7SUFDdkgsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDekIsT0FBTyxVQUFVLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQ25DO0lBRUQsTUFBTSxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3BCLHlFQUF5RTtJQUN6RSxnQkFBZ0I7SUFDaEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDckMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztLQUN4RDtJQUVELE9BQU8sUUFBYSxDQUFDO0FBQ3ZCLENBQUM7QUFFRCxTQUFTLFVBQVUsQ0FBbUMsS0FBb0IsRUFBRSxPQUFrQztJQUM1RyxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUU7UUFDdkIsT0FBTyxFQUFPLENBQUM7S0FDaEI7SUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDeEIsT0FBTyxDQUFDLEdBQUcsS0FBSyxDQUFNLENBQUM7S0FDeEI7SUFDRCxJQUFJLElBQUEsZUFBUSxFQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ25CLE1BQU0sUUFBUSxxQkFBUyxLQUFhLENBQUUsQ0FBQztRQUN2QyxJQUFJLE9BQU8sQ0FBQyxpQkFBaUIsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDaEUsT0FBTyxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3JDO1FBQ0QsT0FBTyxRQUFRLENBQUM7S0FDakI7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixlQUFlLENBQzdCLEtBQXFDLEVBQ3JDLE9BQWtDLEVBQ2xDLE1BQW1CLEVBQ25CLE9BQXFCLEVBQ3JCLE9BQTZCO0lBRTdCLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQztJQUNwQixJQUFJLE9BQU8sSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFO1FBQ25DLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQzNCO0lBQ0QsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLEdBQUcsRUFBNkIsQ0FBQztJQUVoRSxrRUFBa0U7SUFDbEUsSUFBQSxvQkFBYSxFQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUU7O1FBQy9ELElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUN2QixRQUFRLEdBQUcsS0FBSyxDQUFDO1NBQ2xCO1FBRUQsb0VBQW9FO1FBQ3BFLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDekIsT0FBTyxDQUFDLE9BQU8sQ0FBQztTQUNqQjtRQUVELElBQUksQ0FBQyxJQUFBLGVBQVEsRUFBQyxLQUFLLENBQUMsRUFBRTtZQUNwQixPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsSUFBSSxPQUFPLElBQUksSUFBQSxlQUFRLEVBQUMsS0FBSyxDQUFDLEVBQUU7WUFDOUIsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQy9DLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRTtnQkFDeEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUNyQjtTQUNGO1FBRUQsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUU7WUFDMUIsSUFBSSxDQUFDLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssS0FBSyxZQUFZLEVBQUU7Z0JBQy9DLElBQUksWUFBWSxHQUFHLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDakQsTUFBTSxNQUFNLEdBQUcsTUFBQSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLG1DQUFJLENBQUMsQ0FBQSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsVUFBVSxNQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDN0csTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sU0FBUyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBQSxvQkFBYSxFQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDckYsTUFBTSxPQUFPLEdBQUcscUJBQXFCLEtBQUssUUFBUSxXQUFXLEVBQUUsQ0FBQztnQkFDaEUsSUFBSSxDQUFDLFlBQVksRUFBRTtvQkFDakIsTUFBTSxXQUFXLEdBQWdCLEVBQUUsQ0FBQztvQkFDcEMsSUFBQSwyQkFBb0IsRUFBQyxXQUFXLEVBQUUsU0FBUyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7b0JBQ3hFLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsWUFBWSxHQUFHLElBQUksaUJBQWlCLENBQ2hFLE9BQU8sRUFDUCxXQUFXLEVBQ1gsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQ25CLE1BQUEsS0FBSyxDQUFDLFNBQVMsbUNBQUksRUFBRSxDQUN0QixDQUFDLENBQUM7aUJBQ0o7cUJBQU07b0JBQ0wsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDLElBRWhDLENBQUM7b0JBQ0YsSUFBQSwyQkFBb0IsRUFBQyxXQUFXLEVBQUUsU0FBUyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7aUJBQ3pFO2dCQUNELFFBQVEsR0FBRyxLQUFLLENBQUM7YUFDbEI7U0FDRjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQyxDQUFDLENBQUM7SUFFSCxLQUFLLE1BQU0sS0FBSyxJQUFJLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxFQUFFO1FBQy9DLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDdEI7SUFFRCxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBcEVELDBDQW9FQyJ9
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.restore = void 0;
var tslib_1 = require("tslib");
var lodashSet = require("lodash.set");
var lodashFindIndex = require("lodash.findindex");
var msand_apollo_client_1 = require("msand-apollo-client");
var CacheSnapshot_1 = require("../CacheSnapshot");
var GraphSnapshot_1 = require("../GraphSnapshot");
var nodes_1 = require("../nodes");
var OptimisticUpdateQueue_1 = require("../OptimisticUpdateQueue");
var util_1 = require("../util");
var SnapshotEditor_1 = require("./SnapshotEditor");
const lodashSet = require("lodash.set");
const lodashFindIndex = require("lodash.findindex");
const msand_apollo_client_1 = require("msand-apollo-client");
const CacheSnapshot_1 = require("../CacheSnapshot");
const GraphSnapshot_1 = require("../GraphSnapshot");
const nodes_1 = require("../nodes");
const OptimisticUpdateQueue_1 = require("../OptimisticUpdateQueue");
const util_1 = require("../util");
const SnapshotEditor_1 = require("./SnapshotEditor");
/**

@@ -26,7 +25,7 @@ * Restore GraphSnapshot from serializable representation.

function restore(serializedState, cacheContext) {
var _a = createGraphSnapshotNodes(serializedState, cacheContext), nodesMap = _a.nodesMap, editedNodeIds = _a.editedNodeIds;
var graphSnapshot = new GraphSnapshot_1.GraphSnapshot(nodesMap);
const { nodesMap, editedNodeIds } = createGraphSnapshotNodes(serializedState, cacheContext);
const graphSnapshot = new GraphSnapshot_1.GraphSnapshot(nodesMap);
return {
cacheSnapshot: new CacheSnapshot_1.CacheSnapshot(graphSnapshot, graphSnapshot, new OptimisticUpdateQueue_1.OptimisticUpdateQueue()),
editedNodeIds: editedNodeIds,
editedNodeIds,
};

@@ -36,12 +35,11 @@ }

function createGraphSnapshotNodes(serializedState, cacheContext) {
var e_1, _a;
var _b, _c, _d, _e, _f;
var nodesMap = Object.create(null);
var editedNodeIds = new Set();
var missingPointers = new Map();
var _a, _b, _c, _d, _e;
const nodesMap = Object.create(null);
const editedNodeIds = new Set();
const missingPointers = new Map();
// Create entity nodes in the GraphSnapshot
for (var nodeId in serializedState) {
var state = serializedState[nodeId];
var type = state.type, data = state.data, inbound = state.inbound, outbound = state.outbound;
var nodeSnapshot = void 0;
for (const nodeId in serializedState) {
const state = serializedState[nodeId];
const { type, data, inbound, outbound } = state;
let nodeSnapshot;
switch (type) {

@@ -55,43 +53,33 @@ case 0 /* Serializable.NodeSnapshotType.EntitySnapshot */:

case undefined: {
var parsed = {};
var parsedIn = (_b = missingPointers.get(nodeId)) !== null && _b !== void 0 ? _b : [];
var parsedOut = [];
try {
for (var _g = (e_1 = void 0, tslib_1.__values(Object.entries(state))), _h = _g.next(); !_h.done; _h = _g.next()) {
var _j = tslib_1.__read(_h.value, 2), key = _j[0], val = _j[1];
var result = /(.+)\((.+)\)/.exec(key);
if (result) {
var fieldId = (0, SnapshotEditor_1.nodeIdForParameterizedValue)(nodeId, [result[1]], JSON.parse(result[2]));
var path = [key];
nodesMap[fieldId] = new nodes_1.ParameterizedValueSnapshot(val, tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read((_c = missingPointers.get(nodeId)) !== null && _c !== void 0 ? _c : []), false), [{ id: nodeId, path: path }], false), []);
editedNodeIds.add(fieldId);
parsedOut.push({ id: fieldId, path: path });
const parsed = {};
const parsedIn = (_a = missingPointers.get(nodeId)) !== null && _a !== void 0 ? _a : [];
const parsedOut = [];
for (const [key, val] of Object.entries(state)) {
const result = /(.+)\((.+)\)/.exec(key);
if (result) {
const fieldId = (0, SnapshotEditor_1.nodeIdForParameterizedValue)(nodeId, [result[1]], JSON.parse(result[2]));
const path = [key];
nodesMap[fieldId] = new nodes_1.ParameterizedValueSnapshot(val, [...(_b = missingPointers.get(nodeId)) !== null && _b !== void 0 ? _b : [], { id: nodeId, path }], []);
editedNodeIds.add(fieldId);
parsedOut.push({ id: fieldId, path });
}
else if ((0, msand_apollo_client_1.isReference)(val)) {
const id = val.__ref;
const path = [key];
parsedOut.push({ id, path });
const reverse = { id: nodeId, path };
if (id in nodesMap) {
(_d = (_c = nodesMap[id]) === null || _c === void 0 ? void 0 : _c.inbound) === null || _d === void 0 ? void 0 : _d.push(reverse);
}
else if ((0, msand_apollo_client_1.isReference)(val)) {
var id = val.__ref;
var path = [key];
parsedOut.push({ id: id, path: path });
var reverse = { id: nodeId, path: path };
if (id in nodesMap) {
(_e = (_d = nodesMap[id]) === null || _d === void 0 ? void 0 : _d.inbound) === null || _e === void 0 ? void 0 : _e.push(reverse);
else {
const references = (_e = missingPointers.get(id)) !== null && _e !== void 0 ? _e : [];
if (references.length === 0) {
missingPointers.set(id, references);
}
else {
var references = (_f = missingPointers.get(id)) !== null && _f !== void 0 ? _f : [];
if (references.length === 0) {
missingPointers.set(id, references);
}
references.push(reverse);
}
references.push(reverse);
}
else {
parsed[key] = val;
}
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_h && !_h.done && (_a = _g.return)) _a.call(_g);
else {
parsed[key] = val;
}
finally { if (e_1) throw e_1.error; }
}

@@ -102,3 +90,3 @@ nodeSnapshot = new nodes_1.EntitySnapshot(parsed, parsedIn, parsedOut);

default:
throw new Error("Invalid Serializable.NodeSnapshotType ".concat(type, " at ").concat(nodeId));
throw new Error(`Invalid Serializable.NodeSnapshotType ${type} at ${nodeId}`);
}

@@ -110,9 +98,8 @@ nodesMap[nodeId] = nodeSnapshot;

restoreEntityReferences(nodesMap, cacheContext);
return { nodesMap: nodesMap, editedNodeIds: editedNodeIds };
return { nodesMap, editedNodeIds };
}
function restoreEntityReferences(nodesMap, cacheContext) {
var e_2, _a;
var entityTransformer = cacheContext.entityTransformer, entityIdForValue = cacheContext.entityIdForValue;
for (var nodeId in nodesMap) {
var _b = nodesMap[nodeId], data = _b.data, outbound = _b.outbound;
const { entityTransformer, entityIdForValue } = cacheContext;
for (const nodeId in nodesMap) {
const { data, outbound } = nodesMap[nodeId];
if (entityTransformer && (0, util_1.isObject)(data) && entityIdForValue(data)) {

@@ -127,32 +114,22 @@ entityTransformer(data);

}
try {
for (var outbound_1 = (e_2 = void 0, tslib_1.__values(outbound)), outbound_1_1 = outbound_1.next(); !outbound_1_1.done; outbound_1_1 = outbound_1.next()) {
var _c = outbound_1_1.value, referenceId = _c.id, path = _c.path;
var referenceNode = nodesMap[referenceId];
if (referenceNode instanceof nodes_1.EntitySnapshot && data === null) {
// data is a reference.
nodesMap[nodeId].data = referenceNode.data;
for (const { id: referenceId, path } of outbound) {
const referenceNode = nodesMap[referenceId];
if (referenceNode instanceof nodes_1.EntitySnapshot && data === null) {
// data is a reference.
nodesMap[nodeId].data = referenceNode.data;
}
else if (referenceNode instanceof nodes_1.ParameterizedValueSnapshot) {
// This is specifically to handle a sparse array which happen
// when each element in the array reference data in a
// ParameterizedValueSnapshot.
// (see: parameterizedFields/nestedParameterizedReferenceInArray.ts)
// We only want to try walking if its data contains an array
const indexToArrayIndex = lodashFindIndex(path, util_1.isNumber);
if (indexToArrayIndex !== -1) {
tryRestoreSparseArray(data, path, 0);
}
else if (referenceNode instanceof nodes_1.ParameterizedValueSnapshot) {
// This is specifically to handle a sparse array which happen
// when each element in the array reference data in a
// ParameterizedValueSnapshot.
// (see: parameterizedFields/nestedParameterizedReferenceInArray.ts)
// We only want to try walking if its data contains an array
var indexToArrayIndex = lodashFindIndex(path, util_1.isNumber);
if (indexToArrayIndex !== -1) {
tryRestoreSparseArray(data, path, 0);
}
}
else if (Array.isArray(data) || (0, util_1.isObject)(data)) {
lodashSet(data, path, referenceNode.data);
}
}
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (outbound_1_1 && !outbound_1_1.done && (_a = outbound_1.return)) _a.call(outbound_1);
else if (Array.isArray(data) || (0, util_1.isObject)(data)) {
lodashSet(data, path, referenceNode.data);
}
finally { if (e_2) throw e_2.error; }
}

@@ -182,3 +159,3 @@ }

// There should never be 'undefined'
throw new Error("Unexpected 'undefined' in the path [".concat(possibleSparseArrayPaths, "] at index ").concat(idx));
throw new Error(`Unexpected 'undefined' in the path [${possibleSparseArrayPaths}] at index ${idx}`);
}

@@ -188,3 +165,3 @@ if (idx >= possibleSparseArrayPaths.length || data === null || (0, util_1.isScalar)(data)) {

}
var prop = possibleSparseArrayPaths[idx];
const prop = possibleSparseArrayPaths[idx];
if (Array.isArray(data) && typeof prop === 'number' && data[prop] === null) {

@@ -197,2 +174,2 @@ // truely make it sparse rather than just set "undefined'"

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJlc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHNDQUF5QztBQUN6QyxrREFBcUQ7QUFDckQsMkRBQWtEO0FBRWxELGtEQUFpRDtBQUVqRCxrREFBa0U7QUFDbEUsa0NBQXFGO0FBQ3JGLGtFQUFpRTtBQUdqRSxnQ0FBdUQ7QUFFdkQsbURBQStEO0FBRS9EOzs7Ozs7Ozs7O0dBVUc7QUFDSCxTQUFnQixPQUFPLENBQWMsZUFBMkMsRUFBRSxZQUF1QztJQUNqSCxJQUFBLEtBQThCLHdCQUF3QixDQUFDLGVBQWUsRUFBRSxZQUFZLENBQUMsRUFBbkYsUUFBUSxjQUFBLEVBQUUsYUFBYSxtQkFBNEQsQ0FBQztJQUM1RixJQUFNLGFBQWEsR0FBRyxJQUFJLDZCQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFbEQsT0FBTztRQUNMLGFBQWEsRUFBRSxJQUFJLDZCQUFhLENBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxJQUFJLDZDQUFxQixFQUFFLENBQUM7UUFDM0YsYUFBYSxlQUFBO0tBQ2QsQ0FBQztBQUNKLENBQUM7QUFSRCwwQkFRQztBQUVELFNBQVMsd0JBQXdCLENBQWMsZUFBMkMsRUFBRSxZQUF1Qzs7O0lBQ2pJLElBQU0sUUFBUSxHQUFvQixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RELElBQU0sYUFBYSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7SUFFeEMsSUFBTSxlQUFlLEdBQUcsSUFBSSxHQUFHLEVBQTJCLENBQUM7SUFFM0QsMkNBQTJDO0lBQzNDLEtBQUssSUFBTSxNQUFNLElBQUksZUFBZSxFQUFFO1FBQ3BDLElBQU0sS0FBSyxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QixJQUFBLElBQUksR0FBOEIsS0FBSyxLQUFuQyxFQUFFLElBQUksR0FBd0IsS0FBSyxLQUE3QixFQUFFLE9BQU8sR0FBZSxLQUFL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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJlc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsd0NBQXlDO0FBQ3pDLG9EQUFxRDtBQUNyRCw2REFBa0Q7QUFFbEQsb0RBQWlEO0FBRWpELG9EQUFrRTtBQUNsRSxvQ0FBcUY7QUFDckYsb0VBQWlFO0FBR2pFLGtDQUF1RDtBQUV2RCxxREFBK0Q7QUFFL0Q7Ozs7Ozs7Ozs7R0FVRztBQUNILFNBQWdCLE9BQU8sQ0FBYyxlQUEyQyxFQUFFLFlBQXVDO0lBQ3ZILE1BQU0sRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLEdBQUcsd0JBQXdCLENBQUMsZUFBZSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzVGLE1BQU0sYUFBYSxHQUFHLElBQUksNkJBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUVsRCxPQUFPO1FBQ0wsYUFBYSxFQUFFLElBQUksNkJBQWEsQ0FBQyxhQUFhLEVBQUUsYUFBYSxFQUFFLElBQUksNkNBQXFCLEVBQUUsQ0FBQztRQUMzRixhQUFhO0tBQ2QsQ0FBQztBQUNKLENBQUM7QUFSRCwwQkFRQztBQUVELFNBQVMsd0JBQXdCLENBQWMsZUFBMkMsRUFBRSxZQUF1Qzs7SUFDakksTUFBTSxRQUFRLEdBQW9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEQsTUFBTSxhQUFhLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztJQUV4QyxNQUFNLGVBQWUsR0FBRyxJQUFJLEdBQUcsRUFBMkIsQ0FBQztJQUUzRCwyQ0FBMkM7SUFDM0MsS0FBSyxNQUFNLE1BQU0sSUFBSSxlQUFlLEVBQUU7UUFDcEMsTUFBTSxLQUFLLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFFaEQsSUFBSSxZQUFZLENBQUM7UUFD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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.write = void 0;
var SnapshotEditor_1 = require("./SnapshotEditor");
const SnapshotEditor_1 = require("./SnapshotEditor");
/**

@@ -11,5 +11,4 @@ * Merges a payload with an existing graph snapshot, generating a new one.

*/
function write(context, snapshot, raw, payload, prune) {
if (prune === void 0) { prune = false; }
var tracerContext;
function write(context, snapshot, raw, payload, prune = false) {
let tracerContext;
if (context.tracer.writeStart) {

@@ -21,7 +20,7 @@ tracerContext = context.tracer.writeStart(raw, payload);

// around a context object anyway.
var editor = new SnapshotEditor_1.SnapshotEditor(context, snapshot);
var warnings = editor.mergePayload(raw, payload, prune).warnings;
var newSnapshot = editor.commit();
const editor = new SnapshotEditor_1.SnapshotEditor(context, snapshot);
const { warnings } = editor.mergePayload(raw, payload, prune);
const newSnapshot = editor.commit();
if (context.tracer.writeEnd) {
context.tracer.writeEnd(context.parseOperation(raw), { payload: payload, newSnapshot: newSnapshot, warnings: warnings }, tracerContext);
context.tracer.writeEnd(context.parseOperation(raw), { payload, newSnapshot, warnings }, tracerContext);
}

@@ -31,2 +30,2 @@ return newSnapshot;

exports.write = write;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ3cml0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFLQSxtREFBa0U7QUFFbEU7Ozs7O0dBS0c7QUFDSCxTQUFnQixLQUFLLENBQ25CLE9BQWtDLEVBQ2xDLFFBQXVCLEVBQ3ZCLEdBQWlCLEVBQ2pCLE9BQW1CLEVBQ25CLEtBQXNCO0lBQXRCLHNCQUFBLEVBQUEsYUFBc0I7SUFFdEIsSUFBSSxhQUFhLENBQUM7SUFDbEIsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRTtRQUM3QixhQUFhLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQ3pEO0lBRUQsNEVBQTRFO0lBQzVFLDBFQUEwRTtJQUMxRSxrQ0FBa0M7SUFDbEMsSUFBTSxNQUFNLEdBQUcsSUFBSSwrQkFBYyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM3QyxJQUFBLFFBQVEsR0FBSyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLFNBQTdDLENBQThDO0lBQzlELElBQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUVwQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFO1FBQzNCLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxPQUFPLFNBQUEsRUFBRSxXQUFXLGFBQUEsRUFBRSxRQUFRLFVBQUEsRUFBRSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0tBQ3pHO0lBRUQsT0FBTyxXQUFXLENBQUM7QUFDckIsQ0FBQztBQXhCRCxzQkF3QkMifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ3cml0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFLQSxxREFBa0U7QUFFbEU7Ozs7O0dBS0c7QUFDSCxTQUFnQixLQUFLLENBQ25CLE9BQWtDLEVBQ2xDLFFBQXVCLEVBQ3ZCLEdBQWlCLEVBQ2pCLE9BQW1CLEVBQ25CLFFBQWlCLEtBQUs7SUFFdEIsSUFBSSxhQUFhLENBQUM7SUFDbEIsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRTtRQUM3QixhQUFhLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQ3pEO0lBRUQsNEVBQTRFO0lBQzVFLDBFQUEwRTtJQUMxRSxrQ0FBa0M7SUFDbEMsTUFBTSxNQUFNLEdBQUcsSUFBSSwrQkFBYyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNyRCxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlELE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUVwQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFO1FBQzNCLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0tBQ3pHO0lBRUQsT0FBTyxXQUFXLENBQUM7QUFDckIsQ0FBQztBQXhCRCxzQkF3QkMifQ==
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.OptimisticUpdateQueue = void 0;
var tslib_1 = require("tslib");
var operations_1 = require("./operations");
const operations_1 = require("./operations");
/**

@@ -10,4 +9,4 @@ * Manages a queue of optimistic updates, and the values they express on top of

*/
var OptimisticUpdateQueue = /** @class */ (function () {
function OptimisticUpdateQueue(
class OptimisticUpdateQueue {
constructor(
/**

@@ -17,4 +16,3 @@ * The queue of updates, in order of oldest (lowest precedence) to newest

*/
_updates) {
if (_updates === void 0) { _updates = []; }
_updates = []) {
this._updates = _updates;

@@ -25,62 +23,40 @@ }

*/
OptimisticUpdateQueue.prototype.enqueue = function (id, deltas) {
enqueue(id, deltas) {
// TODO: Assert unique change ids.
return new OptimisticUpdateQueue(tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(this._updates), false), [{ id: id, deltas: deltas }], false));
};
return new OptimisticUpdateQueue([...this._updates, { id, deltas }]);
}
/**
* Removes an update from the queue.
*/
OptimisticUpdateQueue.prototype.remove = function (id) {
return new OptimisticUpdateQueue(this._updates.filter(function (u) { return u.id !== id; }));
};
remove(id) {
return new OptimisticUpdateQueue(this._updates.filter(u => u.id !== id));
}
/**
* Whether there are any updates to apply.
*/
OptimisticUpdateQueue.prototype.hasUpdates = function () {
hasUpdates() {
return this._updates.length > 0;
};
}
/**
* Applies the current optimistic updates to a snapshot.
*/
OptimisticUpdateQueue.prototype.apply = function (context, snapshot) {
var e_1, _a, e_2, _b;
var editor = new operations_1.SnapshotEditor(context, snapshot);
try {
for (var _c = tslib_1.__values(this._updates), _d = _c.next(); !_d.done; _d = _c.next()) {
var update = _d.value;
try {
for (var _e = (e_2 = void 0, tslib_1.__values(update.deltas)), _f = _e.next(); !_f.done; _f = _e.next()) {
var delta = _f.value;
if ('query' in delta) {
editor.mergePayload(delta.query, delta.payload, false);
}
else if ('delete' in delta) {
editor.delete(delta.delete);
}
else if ('id' in delta) {
editor.modify(delta.id, delta.payload, delta.deleted);
}
}
apply(context, snapshot) {
const editor = new operations_1.SnapshotEditor(context, snapshot);
for (const update of this._updates) {
for (const delta of update.deltas) {
if ('query' in delta) {
editor.mergePayload(delta.query, delta.payload, false);
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
}
finally { if (e_2) throw e_2.error; }
else if ('delete' in delta) {
editor.delete(delta.delete);
}
else if ('id' in delta) {
editor.modify(delta.id, delta.payload, delta.deleted);
}
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
}
finally { if (e_1) throw e_1.error; }
}
return editor.commit();
};
return OptimisticUpdateQueue;
}());
}
}
exports.OptimisticUpdateQueue = OptimisticUpdateQueue;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3B0aW1pc3RpY1VwZGF0ZVF1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiT3B0aW1pc3RpY1VwZGF0ZVF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSwyQ0FBOEM7QUFZOUM7OztHQUdHO0FBQ0g7SUFFRTtJQUNFOzs7T0FHRztJQUNLLFFBQW1DO1FBQW5DLHlCQUFBLEVBQUEsV0FBVyxFQUF3QjtRQUFuQyxhQUFRLEdBQVIsUUFBUSxDQUEyQjtJQUMxQyxDQUFDO0lBRUo7O09BRUc7SUFDSCx1Q0FBTyxHQUFQLFVBQVEsRUFBWSxFQUFFLE1BQW9CO1FBQ3hDLGtDQUFrQztRQUNsQyxPQUFPLElBQUkscUJBQXFCLGdFQUFLLElBQUksQ0FBQyxRQUFRLFlBQUUsRUFBRSxFQUFFLElBQUEsRUFBRSxNQUFNLFFBQUEsRUFBRSxVQUFFLENBQUM7SUFDdkUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsc0NBQU0sR0FBTixVQUFPLEVBQVk7UUFDakIsT0FBTyxJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQVgsQ0FBVyxDQUFDLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCwwQ0FBVSxHQUFWO1FBQ0UsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gscUNBQUssR0FBTCxVQUFtQixPQUFrQyxFQUFFLFFBQXVCOztRQUM1RSxJQUFNLE1BQU0sR0FBRyxJQUFJLDJCQUFjLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDOztZQUNyRCxLQUFxQixJQUFBLEtBQUEsaUJBQUEsSUFBSSxDQUFDLFFBQVEsQ0FBQSxnQkFBQSw0QkFBRTtnQkFBL0IsSUFBTSxNQUFNLFdBQUE7O29CQUNmLEtBQW9CLElBQUEsb0JBQUEsaUJBQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQSxDQUFBLGdCQUFBLDRCQUFFO3dCQUE5QixJQUFNLEtBQUssV0FBQTt3QkFDZCxJQUFJLE9BQU8sSUFBSSxLQUFLLEVBQUU7NEJBQ3BCLE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsT0FBcUIsRUFBRSxLQUFLLENBQUMsQ0FBQzt5QkFDdEU7NkJBQU0sSUFBSSxRQUFRLElBQUksS0FBSyxFQUFFOzRCQUM1QixNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQzt5QkFDN0I7NkJBQU0sSUFBSSxJQUFJLElBQUksS0FBSyxFQUFFOzRCQUN4QixNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7eUJBQ3ZEO3FCQUNGOzs7Ozs7Ozs7YUFDRjs7Ozs7Ozs7O1FBRUQsT0FBTyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVILDRCQUFDO0FBQUQsQ0FBQyxBQXBERCxJQW9EQztBQXBEWSxzREFBcUIifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3B0aW1pc3RpY1VwZGF0ZVF1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiT3B0aW1pc3RpY1VwZGF0ZVF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLDZDQUE4QztBQVk5Qzs7O0dBR0c7QUFDSCxNQUFhLHFCQUFxQjtJQUVoQztJQUNFOzs7T0FHRztJQUNLLFdBQVcsRUFBd0I7UUFBbkMsYUFBUSxHQUFSLFFBQVEsQ0FBMkI7SUFDMUMsQ0FBQztJQUVKOztPQUVHO0lBQ0gsT0FBTyxDQUFDLEVBQVksRUFBRSxNQUFvQjtRQUN4QyxrQ0FBa0M7UUFDbEMsT0FBTyxJQUFJLHFCQUFxQixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsRUFBWTtRQUNqQixPQUFPLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVEOztPQUVHO0lBQ0gsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBYyxPQUFrQyxFQUFFLFFBQXVCO1FBQzVFLE1BQU0sTUFBTSxHQUFHLElBQUksMkJBQWMsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDckQsS0FBSyxNQUFNLE1BQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xDLEtBQUssTUFBTSxLQUFLLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRTtnQkFDakMsSUFBSSxPQUFPLElBQUksS0FBSyxFQUFFO29CQUNwQixNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQXFCLEVBQUUsS0FBSyxDQUFDLENBQUM7aUJBQ3RFO3FCQUFNLElBQUksUUFBUSxJQUFJLEtBQUssRUFBRTtvQkFDNUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQzdCO3FCQUFNLElBQUksSUFBSSxJQUFJLEtBQUssRUFBRTtvQkFDeEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUN2RDthQUNGO1NBQ0Y7UUFFRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN6QixDQUFDO0NBRUY7QUFwREQsc0RBb0RDIn0=
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports._expandArgument = exports.expandFieldArguments = exports._expandVariables = exports.expandVariables = exports.areChildrenDynamic = exports.parseQuery = exports.VariableArgument = exports.ParsedQueryNode = void 0;
var tslib_1 = require("tslib");
var equality_1 = tslib_1.__importDefault(require("@wry/equality"));
var errors_1 = require("./errors");
var util_1 = require("./util");
const tslib_1 = require("tslib");
const equality_1 = tslib_1.__importDefault(require("@wry/equality"));
const errors_1 = require("./errors");
const util_1 = require("./util");
/**

@@ -15,4 +15,4 @@ * The GraphQL AST is parsed down into a simple tree containing all information

*/
var ParsedQueryNode = /** @class */ (function () {
function ParsedQueryNode(
class ParsedQueryNode {
constructor(
/** Any child fields. */

@@ -39,4 +39,3 @@ children,

}
return ParsedQueryNode;
}());
}
exports.ParsedQueryNode = ParsedQueryNode;

@@ -50,4 +49,4 @@ /**

*/
var VariableArgument = /** @class */ (function () {
function VariableArgument(
class VariableArgument {
constructor(
/** The name of the variable. */

@@ -57,4 +56,3 @@ name) {

}
return VariableArgument;
}());
}
exports.VariableArgument = VariableArgument;

@@ -65,8 +63,8 @@ /**

function parseQuery(context, fragments, selectionSet) {
var variables = new Set();
var parsedQuery = _buildNodeMap(variables, context, fragments, selectionSet);
const variables = new Set();
const parsedQuery = _buildNodeMap(variables, context, fragments, selectionSet);
if (!parsedQuery) {
throw new Error("Parsed a query, but found no fields present; it may use unsupported GraphQL features");
throw new Error(`Parsed a query, but found no fields present; it may use unsupported GraphQL features`);
}
return { parsedQuery: parsedQuery, variables: variables };
return { parsedQuery, variables };
}

@@ -78,59 +76,47 @@ exports.parseQuery = parseQuery;

*/
function _buildNodeMap(variables, context, fragments, selectionSet, path) {
var e_1, _a;
if (path === void 0) { path = []; }
function _buildNodeMap(variables, context, fragments, selectionSet, path = []) {
if (!selectionSet)
return undefined;
var nodeMap = Object.create(null);
try {
for (var _b = tslib_1.__values(selectionSet.selections), _c = _b.next(); !_c.done; _c = _b.next()) {
var selection = _c.value;
if (selection.kind === 'Field') {
// The name of the field (as defined by the query).
var name_1 = selection.alias ? selection.alias.value : selection.name.value;
var children = _buildNodeMap(variables, context, fragments, selection.selectionSet, tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [name_1], false));
var args = void 0, schemaName = void 0;
// fields marked as @static are treated as if they are a static field in
// the schema. E.g. parameters are ignored, and an alias is considered
// to be truth.
if (!(0, util_1.fieldHasStaticDirective)(selection)) {
args = _buildFieldArgs(variables, selection.arguments);
schemaName = selection.alias ? selection.name.value : undefined;
}
var hasParameterizedChildren = areChildrenDynamic(children);
var node = new ParsedQueryNode(children, schemaName, args, hasParameterizedChildren);
nodeMap[name_1] = _mergeNodes(tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [name_1], false), node, nodeMap[name_1]);
const nodeMap = Object.create(null);
for (const selection of selectionSet.selections) {
if (selection.kind === 'Field') {
// The name of the field (as defined by the query).
const name = selection.alias ? selection.alias.value : selection.name.value;
const children = _buildNodeMap(variables, context, fragments, selection.selectionSet, [...path, name]);
let args, schemaName;
// fields marked as @static are treated as if they are a static field in
// the schema. E.g. parameters are ignored, and an alias is considered
// to be truth.
if (!(0, util_1.fieldHasStaticDirective)(selection)) {
args = _buildFieldArgs(variables, selection.arguments);
schemaName = selection.alias ? selection.name.value : undefined;
}
else if (selection.kind === 'FragmentSpread') {
var fragment = fragments[selection.name.value];
if (!fragment) {
throw new Error("Expected fragment ".concat(selection.name.value, " to be defined"));
const hasParameterizedChildren = areChildrenDynamic(children);
const node = new ParsedQueryNode(children, schemaName, args, hasParameterizedChildren);
nodeMap[name] = _mergeNodes([...path, name], node, nodeMap[name]);
}
else if (selection.kind === 'FragmentSpread') {
const fragment = fragments[selection.name.value];
if (!fragment) {
throw new Error(`Expected fragment ${selection.name.value} to be defined`);
}
const fragmentMap = _buildNodeMap(variables, context, fragments, fragment.selectionSet, path);
if (fragmentMap) {
for (const name in fragmentMap) {
nodeMap[name] = _mergeNodes([...path, name], fragmentMap[name], nodeMap[name]);
}
var fragmentMap = _buildNodeMap(variables, context, fragments, fragment.selectionSet, path);
if (fragmentMap) {
for (var name_2 in fragmentMap) {
nodeMap[name_2] = _mergeNodes(tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [name_2], false), fragmentMap[name_2], nodeMap[name_2]);
}
}
}
else if (selection.kind === 'InlineFragment') {
var fragmentMap = _buildNodeMap(variables, context, fragments, selection.selectionSet, path);
if (fragmentMap) {
for (var name_3 in fragmentMap) {
nodeMap[name_3] = _mergeNodes(tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [name_3], false), fragmentMap[name_3], nodeMap[name_3]);
}
}
else if (selection.kind === 'InlineFragment') {
const fragmentMap = _buildNodeMap(variables, context, fragments, selection.selectionSet, path);
if (fragmentMap) {
for (const name in fragmentMap) {
nodeMap[name] = _mergeNodes([...path, name], fragmentMap[name], nodeMap[name]);
}
}
else if (context.tracer.warning) {
context.tracer.warning("".concat(selection.kind, " selections are not supported; query may misbehave"));
}
_collectDirectiveVariables(variables, selection);
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
else if (context.tracer.warning) {
context.tracer.warning(`${selection.kind} selections are not supported; query may misbehave`);
}
finally { if (e_1) throw e_1.error; }
_collectDirectiveVariables(variables, selection);
}

@@ -145,4 +131,4 @@ return Object.keys(nodeMap).length ? nodeMap : undefined;

return undefined;
for (var name_4 in children) {
var child = children[name_4];
for (const name in children) {
const child = children[name];
if (child.hasParameterizedChildren)

@@ -162,20 +148,9 @@ return true;

function _buildFieldArgs(variables, argumentsNode) {
var e_2, _a;
if (!argumentsNode)
return undefined;
var args = {};
try {
for (var argumentsNode_1 = tslib_1.__values(argumentsNode), argumentsNode_1_1 = argumentsNode_1.next(); !argumentsNode_1_1.done; argumentsNode_1_1 = argumentsNode_1.next()) {
var arg = argumentsNode_1_1.value;
// Mapped name of argument to it JS value
args[arg.name.value] = _valueFromNode(variables, arg.value);
}
const args = {};
for (const arg of argumentsNode) {
// Mapped name of argument to it JS value
args[arg.name.value] = _valueFromNode(variables, arg.value);
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (argumentsNode_1_1 && !argumentsNode_1_1.done && (_a = argumentsNode_1.return)) _a.call(argumentsNode_1);
}
finally { if (e_2) throw e_2.error; }
}
return Object.keys(args).length ? args : undefined;

@@ -187,4 +162,3 @@ }

function _valueFromNode(variables, node) {
return (0, util_1.valueFromNode)(node, function (_a) {
var value = _a.name.value;
return (0, util_1.valueFromNode)(node, ({ name: { value } }) => {
variables.add(value);

@@ -198,36 +172,14 @@ return new VariableArgument(value);

function _collectDirectiveVariables(variables, node) {
var e_3, _a, e_4, _b;
var directives = node.directives;
const { directives } = node;
if (!directives)
return;
try {
for (var directives_1 = tslib_1.__values(directives), directives_1_1 = directives_1.next(); !directives_1_1.done; directives_1_1 = directives_1.next()) {
var directive = directives_1_1.value;
if (!directive.arguments)
continue;
try {
for (var _c = (e_4 = void 0, tslib_1.__values(directive.arguments)), _d = _c.next(); !_d.done; _d = _c.next()) {
var argument = _d.value;
(0, util_1.valueFromNode)(argument.value, function (_a) {
var value = _a.name.value;
variables.add(value);
});
}
}
catch (e_4_1) { e_4 = { error: e_4_1 }; }
finally {
try {
if (_d && !_d.done && (_b = _c.return)) _b.call(_c);
}
finally { if (e_4) throw e_4.error; }
}
for (const directive of directives) {
if (!directive.arguments)
continue;
for (const argument of directive.arguments) {
(0, util_1.valueFromNode)(argument.value, ({ name: { value } }) => {
variables.add(value);
});
}
}
catch (e_3_1) { e_3 = { error: e_3_1 }; }
finally {
try {
if (directives_1_1 && !directives_1_1.done && (_a = directives_1.return)) _a.call(directives_1);
}
finally { if (e_3) throw e_3.error; }
}
}

@@ -242,6 +194,6 @@ /**

if (!(0, equality_1.default)(target.args, source.args)) {
throw new errors_1.ConflictingFieldsError("parameterization mismatch", path, [target, source]);
throw new errors_1.ConflictingFieldsError(`parameterization mismatch`, path, [target, source]);
}
if (target.schemaName !== source.schemaName) {
throw new errors_1.ConflictingFieldsError("alias mismatch", path, [target, source]);
throw new errors_1.ConflictingFieldsError(`alias mismatch`, path, [target, source]);
}

@@ -254,4 +206,4 @@ if (!source.children)

else {
for (var name_5 in source.children) {
target.children[name_5] = _mergeNodes(tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [name_5], false), source.children[name_5], target.children[name_5]);
for (const name in source.children) {
target.children[name] = _mergeNodes([...path, name], source.children[name], target.children[name]);
}

@@ -277,5 +229,5 @@ }

return undefined;
var newMap = {};
for (var key in parsed) {
var node = parsed[key];
const newMap = {};
for (const key in parsed) {
const node = parsed[key];
if (node.args || node.hasParameterizedChildren) {

@@ -302,3 +254,3 @@ newMap[key] = new ParsedQueryNode(_expandVariables(node.children, variables), node.schemaName, expandFieldArguments(node.args, variables), node.hasParameterizedChildren);

if (!variables || !(arg.name in variables)) {
throw new Error("Expected variable $".concat(arg.name, " to exist for query"));
throw new Error(`Expected variable $${arg.name} to exist for query`);
}

@@ -308,7 +260,7 @@ return variables[arg.name];

else if (Array.isArray(arg)) {
return arg.map(function (v) { return _expandArgument(v, variables); });
return arg.map(v => _expandArgument(v, variables));
}
else if ((0, util_1.isObject)(arg)) {
var expanded = {};
for (var key in arg) {
const expanded = {};
for (const key in arg) {
expanded[key] = _expandArgument(arg[key], variables);

@@ -324,2 +276,2 @@ }

exports._expandArgument = _expandArgument;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFyc2VkUXVlcnlOb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiUGFyc2VkUXVlcnlOb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxtRUFBb0M7QUFHcEMsbUNBQWtEO0FBRWxELCtCQVNnQjtBQUtoQjs7Ozs7O0dBTUc7QUFDSDtJQUNFO0lBQ0Usd0JBQXdCO0lBQ2pCLFFBQXdDO0lBQy9DOzs7OztPQUtHO0lBQ0ksVUFBbUI7SUFDMUIsMkVBQTJFO0lBQ3BFLElBQThCO0lBQ3JDOzs7U0FHSztJQUNFLHdCQUErQjtRQWQvQixhQUFRLEdBQVIsUUFBUSxDQUFnQztRQU94QyxlQUFVLEdBQVYsVUFBVSxDQUFTO1FBRW5CLFNBQUksR0FBSixJQUFJLENBQTBCO1FBSzlCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBTztJQUNyQyxDQUFDO0lBQ04sc0JBQUM7QUFBRCxDQUFDLEFBbkJELElBbUJDO0FBbkJZLDBDQUFlO0FBbUQ1Qjs7Ozs7O0dBTUc7QUFDSDtJQUNFO0lBQ0UsZ0NBQWdDO0lBQ2hCLElBQVk7UUFBWixTQUFJLEdBQUosSUFBSSxDQUFRO0lBQzNCLENBQUM7SUFDTix1QkFBQztBQUFELENBQUMsQUFMRCxJQUtDO0FBTFksNENBQWdCO0FBTzdCOztHQUVHO0FBQ0gsU0FBZ0IsVUFBVSxDQUN4QixPQUFrQyxFQUNsQyxTQUFzQixFQUN0QixZQUE4QjtJQUU5QixJQUFNLFNBQVMsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO0lBQ3BDLElBQU0sV0FBVyxHQUFHLGFBQWEsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUMvRSxJQUFJLENBQUMsV0FBVyxFQUFFO1FBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsc0ZBQXNGLENBQUMsQ0FBQztLQUN6RztJQUVELE9BQU8sRUFBRSxXQUFXLGFBQUEsRUFBRSxTQUFTLFdBQUEsRUFBRSxDQUFDO0FBQ3BDLENBQUM7QUFaRCxn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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFyc2VkUXVlcnlOb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiUGFyc2VkUXVlcnlOb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxxRUFBb0M7QUFHcEMscUNBQWtEO0FBRWxELGlDQVNnQjtBQUtoQjs7Ozs7O0dBTUc7QUFDSCxNQUFhLGVBQWU7SUFDMUI7SUFDRSx3QkFBd0I7SUFDakIsUUFBd0M7SUFDL0M7Ozs7O09BS0c7SUFDSSxVQUFtQjtJQUMxQiwyRUFBMkU7SUFDcEUsSUFBOEI7SUFDckM7OztTQUdLO0lBQ0Usd0JBQStCO1FBZC9CLGFBQVEsR0FBUixRQUFRLENBQWdDO1FBT3hDLGVBQVUsR0FBVixVQUFVLENBQVM7UUFFbkIsU0FBSSxHQUFKLElBQUksQ0FBMEI7UUFLOUIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUFPO0lBQ3JDLENBQUM7Q0FDTDtBQW5CRCwwQ0FtQkM7QUFnQ0Q7Ozs7OztHQU1HO0FBQ0gsTUFBYSxnQkFBZ0I7SUFDM0I7SUFDRSxnQ0FBZ0M7SUFDaEIsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7SUFDM0IsQ0FBQztDQUNMO0FBTEQsNENBS0M7QUFFRDs7R0FFRztBQUNILFNBQWdCLFVBQVUsQ0FDeEIsT0FBa0MsRUFDbEMsU0FBc0IsRUFDdEIsWUFBOEI7SUFFOUIsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztJQUNwQyxNQUFNLFdBQVcsR0FBRyxhQUFhLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDL0UsSUFBSSxDQUFDLFdBQVcsRUFBRTtRQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLHNGQUFzRixDQUFDLENBQUM7S0FDekc7SUFFRCxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxDQUFDO0FBQ3BDLENBQUM7QUFaRCxnQ0FZQztBQUVEOzs7R0FHRztBQUNILFNBQVMsYUFBYSxDQUNwQixTQUFz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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isSerializable = exports.StaticNodeId = void 0;
var tslib_1 = require("tslib");
var util_1 = require("./util");
const util_1 = require("./util");
/**

@@ -16,42 +15,21 @@ * There are a few pre-defined nodes present in all schemas.

function isSerializable(value, allowUndefined) {
var e_1, _a, e_2, _b;
if ((0, util_1.isScalar)(value)) {
// NaN is considered to typeof number
var isNaNValue = Number.isNaN(value);
const isNaNValue = Number.isNaN(value);
return allowUndefined ? !isNaNValue : !isNaNValue && value !== undefined;
}
if ((0, util_1.isObject)(value)) {
try {
for (var _c = tslib_1.__values(Object.getOwnPropertyNames(value)), _d = _c.next(); !_d.done; _d = _c.next()) {
var propName = _d.value;
if (!isSerializable(value[propName], allowUndefined)) {
return false;
}
for (const propName of Object.getOwnPropertyNames(value)) {
if (!isSerializable(value[propName], allowUndefined)) {
return false;
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
}
finally { if (e_1) throw e_1.error; }
}
return true;
}
if (Array.isArray(value)) {
try {
for (var value_1 = tslib_1.__values(value), value_1_1 = value_1.next(); !value_1_1.done; value_1_1 = value_1.next()) {
var element = value_1_1.value;
if (!isSerializable(element, allowUndefined)) {
return false;
}
for (const element of value) {
if (!isSerializable(element, allowUndefined)) {
return false;
}
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (value_1_1 && !value_1_1.done && (_b = value_1.return)) _b.call(value_1);
}
finally { if (e_2) throw e_2.error; }
}
return true;

@@ -62,2 +40,2 @@ }

exports.isSerializable = isSerializable;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2NoZW1hLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFJQSwrQkFBMEQ7QUFtQjFEOztHQUVHO0FBQ0gsSUFBWSxZQUlYO0FBSkQsV0FBWSxZQUFZO0lBQ3RCLHdDQUF3QixDQUFBO0lBQ3hCLDhDQUE4QixDQUFBO0lBQzlCLHNEQUFzQyxDQUFBO0FBQ3hDLENBQUMsRUFKVyxZQUFZLEdBQVosb0JBQVksS0FBWixvQkFBWSxRQUl2QjtBQThFRCxTQUFnQixjQUFjLENBQUMsS0FBVSxFQUFFLGNBQXdCOztJQUNqRSxJQUFJLElBQUEsZUFBUSxFQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ25CLHFDQUFxQztRQUNyQyxJQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQVksQ0FBQyxDQUFDO1FBQzlDLE9BQU8sY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLElBQUksS0FBSyxLQUFLLFNBQVMsQ0FBQztLQUMxRTtJQUVELElBQUksSUFBQSxlQUFRLEVBQUMsS0FBSyxDQUFDLEVBQUU7O1lBQ25CLEtBQXVCLElBQUEsS0FBQSxpQkFBQSxNQUFNLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUEsZ0JBQUEsNEJBQUU7Z0JBQXJELElBQU0sUUFBUSxXQUFBO2dCQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxjQUFjLENBQUMsRUFBRTtvQkFDcEQsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7YUFDRjs7Ozs7Ozs7O1FBQ0QsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTs7WUFDeEIsS0FBc0IsSUFBQSxVQUFBLGlCQUFBLEtBQUssQ0FBQSw0QkFBQSwrQ0FBRTtnQkFBeEIsSUFBTSxPQUFPLGtCQUFBO2dCQUNoQixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsRUFBRTtvQkFDNUMsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7YUFDRjs7Ozs7Ozs7O1FBQ0QsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQTFCRCx3Q0EwQkMifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2NoZW1hLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBLGlDQUEwRDtBQW1CMUQ7O0dBRUc7QUFDSCxJQUFZLFlBSVg7QUFKRCxXQUFZLFlBQVk7SUFDdEIsd0NBQXdCLENBQUE7SUFDeEIsOENBQThCLENBQUE7SUFDOUIsc0RBQXNDLENBQUE7QUFDeEMsQ0FBQyxFQUpXLFlBQVksR0FBWixvQkFBWSxLQUFaLG9CQUFZLFFBSXZCO0FBOEVELFNBQWdCLGNBQWMsQ0FBQyxLQUFVLEVBQUUsY0FBd0I7SUFDakUsSUFBSSxJQUFBLGVBQVEsRUFBQyxLQUFLLENBQUMsRUFBRTtRQUNuQixxQ0FBcUM7UUFDckMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFZLENBQUMsQ0FBQztRQUM5QyxPQUFPLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxJQUFJLEtBQUssS0FBSyxTQUFTLENBQUM7S0FDMUU7SUFFRCxJQUFJLElBQUEsZUFBUSxFQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ25CLEtBQUssTUFBTSxRQUFRLElBQUksTUFBTSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3hELElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxFQUFFO2dCQUNwRCxPQUFPLEtBQUssQ0FBQzthQUNkO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztLQUNiO0lBRUQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3hCLEtBQUssTUFBTSxPQUFPLElBQUksS0FBSyxFQUFFO1lBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxFQUFFO2dCQUM1QyxPQUFPLEtBQUssQ0FBQzthQUNkO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztLQUNiO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBMUJELHdDQTBCQyJ9
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fieldHasStaticDirective = exports.fieldIsParameterized = exports.fieldHasAlias = exports.fieldIsStatic = exports.selectionSetIsStatic = exports.fragmentMapForDocument = exports.variableDefaultsInOperation = exports.variablesInOperation = exports.getOperationOrDie = void 0;
var tslib_1 = require("tslib");
var utilities_1 = require("msand-apollo-client/utilities");
var ts_invariant_1 = tslib_1.__importDefault(require("ts-invariant"));
var primitive_1 = require("./primitive");
var store_1 = require("./store");
const tslib_1 = require("tslib");
const utilities_1 = require("msand-apollo-client/utilities");
const ts_invariant_1 = tslib_1.__importDefault(require("ts-invariant"));
const primitive_1 = require("./primitive");
const store_1 = require("./store");
function getOperationOrDie(document) {
var def = (0, utilities_1.getOperationDefinition)(document);
(0, ts_invariant_1.default)(def, "GraphQL document is missing an operation");
const def = (0, utilities_1.getOperationDefinition)(document);
(0, ts_invariant_1.default)(def, `GraphQL document is missing an operation`);
return def;

@@ -19,18 +19,7 @@ }

function variablesInOperation(operation) {
var e_1, _a;
var names = new Set();
const names = new Set();
if (operation.variableDefinitions) {
try {
for (var _b = tslib_1.__values(operation.variableDefinitions), _c = _b.next(); !_c.done; _c = _b.next()) {
var definition = _c.value;
names.add(definition.variable.name.value);
}
for (const definition of operation.variableDefinitions) {
names.add(definition.variable.name.value);
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
}
finally { if (e_1) throw e_1.error; }
}
}

@@ -44,21 +33,10 @@ return names;

function variableDefaultsInOperation(operation) {
var e_2, _a;
var defaults = {};
const defaults = {};
if (operation.variableDefinitions) {
try {
for (var _b = tslib_1.__values(operation.variableDefinitions), _c = _b.next(); !_c.done; _c = _b.next()) {
var definition = _c.value;
if (definition.type.kind === 'NonNullType')
continue; // Required.
var defaultValue = definition.defaultValue;
defaults[definition.variable.name.value] = (0, primitive_1.isObject)(defaultValue) ? (0, store_1.valueFromNode)(defaultValue) : null;
}
for (const definition of operation.variableDefinitions) {
if (definition.type.kind === 'NonNullType')
continue; // Required.
const { defaultValue } = definition;
defaults[definition.variable.name.value] = (0, primitive_1.isObject)(defaultValue) ? (0, store_1.valueFromNode)(defaultValue) : null;
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
}
finally { if (e_2) throw e_2.error; }
}
}

@@ -72,19 +50,8 @@ return defaults;

function fragmentMapForDocument(document) {
var e_3, _a;
var map = {};
try {
for (var _b = tslib_1.__values(document.definitions), _c = _b.next(); !_c.done; _c = _b.next()) {
var definition = _c.value;
if (definition.kind !== 'FragmentDefinition')
continue;
map[definition.name.value] = definition;
}
const map = {};
for (const definition of document.definitions) {
if (definition.kind !== 'FragmentDefinition')
continue;
map[definition.name.value] = definition;
}
catch (e_3_1) { e_3 = { error: e_3_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
}
finally { if (e_3) throw e_3.error; }
}
return map;

@@ -104,38 +71,27 @@ }

function selectionSetIsStatic(selectionSet, fragmentGetter) {
var e_4, _a;
try {
for (var _b = tslib_1.__values(selectionSet.selections), _c = _b.next(); !_c.done; _c = _b.next()) {
var selection = _c.value;
if (selection.kind === 'Field') {
if (!fieldIsStatic(selection))
return false;
if (selection.selectionSet && !selectionSetIsStatic(selection.selectionSet, fragmentGetter))
return false;
for (const selection of selectionSet.selections) {
if (selection.kind === 'Field') {
if (!fieldIsStatic(selection))
return false;
if (selection.selectionSet && !selectionSetIsStatic(selection.selectionSet, fragmentGetter))
return false;
}
else if (selection.kind === 'FragmentSpread') {
if (!fragmentGetter) {
throw new Error(`fragmentGetter is required for selection sets with ...fragments`);
}
else if (selection.kind === 'FragmentSpread') {
if (!fragmentGetter) {
throw new Error("fragmentGetter is required for selection sets with ...fragments");
}
var fragmentSet = fragmentGetter(selection.name.value);
if (!fragmentSet) {
throw new Error("Unknown fragment ".concat(selection.name.value, " in isSelectionSetStatic"));
}
if (!selectionSetIsStatic(fragmentSet, fragmentGetter))
return false;
const fragmentSet = fragmentGetter(selection.name.value);
if (!fragmentSet) {
throw new Error(`Unknown fragment ${selection.name.value} in isSelectionSetStatic`);
}
else if (selection.kind === 'InlineFragment') {
if (!selectionSetIsStatic(selection.selectionSet, fragmentGetter))
return false;
}
else {
throw new Error("Unknown selection type ".concat(selection.kind, " in isSelectionSetStatic"));
}
if (!selectionSetIsStatic(fragmentSet, fragmentGetter))
return false;
}
}
catch (e_4_1) { e_4 = { error: e_4_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
else if (selection.kind === 'InlineFragment') {
if (!selectionSetIsStatic(selection.selectionSet, fragmentGetter))
return false;
}
finally { if (e_4) throw e_4.error; }
else {
throw new Error(`Unknown selection type ${selection.kind} in isSelectionSetStatic`);
}
}

@@ -146,3 +102,3 @@ return true;

function fieldIsStatic(field) {
var isActuallyStatic = !fieldHasAlias(field) && !fieldIsParameterized(field);
const isActuallyStatic = !fieldHasAlias(field) && !fieldIsParameterized(field);
return isActuallyStatic || fieldHasStaticDirective(field);

@@ -159,9 +115,8 @@ }

exports.fieldIsParameterized = fieldIsParameterized;
function fieldHasStaticDirective(_a) {
var directives = _a.directives;
function fieldHasStaticDirective({ directives }) {
if (!directives)
return false;
return directives.some(function (directive) { return directive.name.value === 'static'; });
return directives.some(directive => directive.name.value === 'static');
}
exports.fieldHasStaticDirective = fieldHasStaticDirective;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFXQSwyREFBb0Y7QUFDcEYsc0VBQXFDO0FBSXJDLHlDQUF1QztBQUN2QyxpQ0FBd0M7QUFjeEMsU0FBZ0IsaUJBQWlCLENBQy9CLFFBQXNCO0lBRXRCLElBQU0sR0FBRyxHQUFHLElBQUEsa0NBQXNCLEVBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0MsSUFBQSxzQkFBUyxFQUFDLEdBQUcsRUFBRSwwQ0FBMEMsQ0FBQyxDQUFDO0lBQzNELE9BQU8sR0FBOEIsQ0FBQztBQUN4QyxDQUFDO0FBTkQsOENBTUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLG9CQUFvQixDQUFDLFNBQWtDOztJQUNyRSxJQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO0lBQ2hDLElBQUksU0FBUyxDQUFDLG1CQUFtQixFQUFFOztZQUNqQyxLQUF5QixJQUFBLEtBQUEsaUJBQUEsU0FBUyxDQUFDLG1CQUFtQixDQUFBLGdCQUFBLDRCQUFFO2dCQUFuRCxJQUFNLFVBQVUsV0FBQTtnQkFDbkIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUMzQzs7Ozs7Ozs7O0tBQ0Y7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFURCxvREFTQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsMkJBQTJCLENBQUMsU0FBa0M7O0lBQzVFLElBQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNwQixJQUFJLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRTs7WUFDakMsS0FBeUIsSUFBQSxLQUFBLGlCQUFBLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQSxnQkFBQSw0QkFBRTtnQkFBbkQsSUFBTSxVQUFVLFdBQUE7Z0JBQ25CLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssYUFBYTtvQkFBRSxTQUFT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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFXQSw2REFBb0Y7QUFDcEYsd0VBQXFDO0FBSXJDLDJDQUF1QztBQUN2QyxtQ0FBd0M7QUFjeEMsU0FBZ0IsaUJBQWlCLENBQy9CLFFBQXNCO0lBRXRCLE1BQU0sR0FBRyxHQUFHLElBQUEsa0NBQXNCLEVBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0MsSUFBQSxzQkFBUyxFQUFDLEdBQUcsRUFBRSwwQ0FBMEMsQ0FBQyxDQUFDO0lBQzNELE9BQU8sR0FBOEIsQ0FBQztBQUN4QyxDQUFDO0FBTkQsOENBTUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLG9CQUFvQixDQUFDLFNBQWtDO0lBQ3JFLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7SUFDaEMsSUFBSSxTQUFTLENBQUMsbUJBQW1CLEVBQUU7UUFDakMsS0FBSyxNQUFNLFVBQVUsSUFBSSxTQUFTLENBQUMsbUJBQW1CLEVBQUU7WUFDdEQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMzQztLQUNGO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBVEQsb0RBU0M7QUFFRDs7R0FFRztBQUNILFNBQWdCLDJCQUEyQixDQUFDLFNBQWtDO0lBQzVFLE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNwQixJQUFJLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRTtRQUNqQyxLQUFLLE1BQU0sVUFBVSxJQUFJLFNBQVMsQ0FBQyxtQkFBbUIsRUFBRTtZQUN0RCxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLGFBQWE7Z0JBQUUsU0FBUyxDQUFDLFlBQVk7WUFFbEUsTUFBTSxFQUFFLFlBQVksRUFBRSxHQUFHLFVBQVUsQ0FBQztZQUNwQyxRQUFRLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBQSxvQkFBUSxFQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFBLHFCQUFhLEVBQUMsWUFBeUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDckg7S0FDRjtJQUVELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUM7QUFaRCxrRUFZQztBQUNEOztHQUVHO0FBQ0gsU0FBZ0Isc0JBQXNCLENBQUMsUUFBc0I7SUFDM0QsTUFBTSxHQUFHLEdBQWdCLEVBQUUsQ0FBQztJQUM1QixLQUFLLE1BQU0sVUFBVSxJQUFJLFFBQVEsQ0FBQyxXQUFXLEVBQUU7UUFDN0MsSUFBSSxVQUFVLENBQUMsSUFBSSxLQUFLLG9CQUFvQjtZQUFFLFNBQVM7UUFDdkQsR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDO0tBQ3pDO0lBRUQsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDO0FBUkQsd0RBUUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFnQixvQkFBb0IsQ0FDbEMsWUFBOEIsRUFDOUIsY0FBK0Q7SUFFL0QsS0FBSyxNQUFNLFNBQVMsSUFBSSxZQUFZLENBQUMsVUFBVSxFQUFFO1FBQy9DLElBQUksU0FBUyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7WUFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7Z0JBQUUsT0FBTyxLQUFLLENBQUM7WUFDNUMsSUFBSSxTQUFTLENBQUMsWUFBWSxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUM7Z0JBQUUsT0FBTyxLQUFLLENBQUM7U0FFM0c7YUFBTSxJQUFJLFNBQVMsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLEVBQUU7WUFDOUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtnQkFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxpRUFBaUUsQ0FBQyxDQUFDO2FBQ3BGO1lBQ0QsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekQsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLDBCQUEwQixDQUFDLENBQUM7YUFDckY7WUFFRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxFQUFFLGNBQWMsQ0FBQztnQkFBRSxPQUFPLEtBQUssQ0FBQztTQUV0RTthQUFNLElBQUksU0FBUyxDQUFDLElBQUksS0FBSyxnQkFBZ0IsRUFBRTtZQUM5QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxjQUFjLENBQUM7Z0JBQUUsT0FBTyxLQUFLLENBQUM7U0FFakY7YUFBTTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTJCLFNBQWlCLENBQUMsSUFBSSwwQkFBMEIsQ0FBQyxDQUFDO1NBQzlGO0tBQ0Y7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUE3QkQsb0RBNkJDO0FBRUQsU0FBZ0IsYUFBYSxDQUFDLEtBQWdCO0lBQzVDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRSxPQUFPLGdCQUFnQixJQUFJLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzVELENBQUM7QUFIRCxzQ0FHQztBQUVELFNBQWdCLGFBQWEsQ0FBQyxLQUFnQjtJQUM1QyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO0FBQ3ZCLENBQUM7QUFGRCxzQ0FFQztBQUVELFNBQWdCLG9CQUFvQixDQUFDLEtBQWdCO0lBQ25ELE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3ZELENBQUM7QUFGRCxvREFFQztBQUVELFNBQWdCLHVCQUF1QixDQUFDLEVBQUUsVUFBVSxFQUFhO0lBQy9ELElBQUksQ0FBQyxVQUFVO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFDOUIsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUM7QUFDekUsQ0FBQztBQUhELDBEQUdDIn0=
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.setsHaveSomeIntersection = exports.lazyImmutableDeepSet = exports.addToSet = exports.pathBeginsWith = exports.deepGet = void 0;
var tslib_1 = require("tslib");
/**

@@ -9,4 +8,4 @@ * Gets a nested value, with support for blank paths.

function deepGet(target, path) {
var index = 0;
var length = path.length;
let index = 0;
const { length } = path;
while (target != null && index < length) {

@@ -21,3 +20,3 @@ target = target[path[index++]];

return false;
for (var i = 0; i < prefix.length; i++) {
for (let i = 0; i < prefix.length; i++) {
if (prefix[i] !== target[i])

@@ -33,16 +32,5 @@ return false;

function addToSet(target, source) {
var e_1, _a;
try {
for (var source_1 = tslib_1.__values(source), source_1_1 = source_1.next(); !source_1_1.done; source_1_1 = source_1.next()) {
var value = source_1_1.value;
target.add(value);
}
for (const value of source) {
target.add(value);
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (source_1_1 && !source_1_1.done && (_a = source_1.return)) _a.call(source_1);
}
finally { if (e_1) throw e_1.error; }
}
}

@@ -58,19 +46,19 @@ exports.addToSet = addToSet;

return value;
var parentNode;
var targetNode = target;
var originalNode = original;
let parentNode;
let targetNode = target;
let originalNode = original;
// We assume that the last path component is the key of a value; not a
// container, so we stop there.
for (var i = 0; i < path.length; i++) {
var key = path[i];
for (let i = 0; i < path.length; i++) {
const key = path[i];
// If the target still references the original's objects, we need to diverge
if (!targetNode || targetNode === originalNode) {
if (typeof key === 'number') {
targetNode = originalNode ? tslib_1.__spreadArray([], tslib_1.__read(originalNode), false) : [];
targetNode = originalNode ? [...originalNode] : [];
}
else if (typeof key === 'string') {
targetNode = originalNode ? tslib_1.__assign({}, originalNode) : {};
targetNode = originalNode ? Object.assign({}, originalNode) : {};
}
else {
throw new Error("Unknown path type ".concat(JSON.stringify(key), " in path ").concat(JSON.stringify(path), " at index ").concat(i));
throw new Error(`Unknown path type ${JSON.stringify(key)} in path ${JSON.stringify(path)} at index ${i}`);
}

@@ -102,22 +90,11 @@ if (i === 0) {

function setsHaveSomeIntersection(left, right) {
var e_2, _a;
// Walk the smaller set.
var _b = tslib_1.__read(left.size > right.size ? [right, left] : [left, right], 2), toIterate = _b[0], toCheck = _b[1];
try {
for (var toIterate_1 = tslib_1.__values(toIterate), toIterate_1_1 = toIterate_1.next(); !toIterate_1_1.done; toIterate_1_1 = toIterate_1.next()) {
var value = toIterate_1_1.value;
if (toCheck.has(value))
return true;
}
const [toIterate, toCheck] = left.size > right.size ? [right, left] : [left, right];
for (const value of toIterate) {
if (toCheck.has(value))
return true;
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (toIterate_1_1 && !toIterate_1_1.done && (_a = toIterate_1.return)) _a.call(toIterate_1);
}
finally { if (e_2) throw e_2.error; }
}
return false;
}
exports.setsHaveSomeIntersection = setsHaveSomeIntersection;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBOztHQUVHO0FBQ0gsU0FBZ0IsT0FBTyxDQUFDLE1BQVcsRUFBRSxJQUFnQjtJQUNuRCxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDTixJQUFBLE1BQU0sR0FBSyxJQUFJLE9BQVQsQ0FBVTtJQUN4QixPQUFPLE1BQU0sSUFBSSxJQUFJLElBQUksS0FBSyxHQUFHLE1BQU0sRUFBRTtRQUN2QyxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7S0FDaEM7SUFFRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBUkQsMEJBUUM7QUFFRCxTQUFnQixjQUFjLENBQUMsTUFBa0IsRUFBRSxNQUFrQjtJQUNuRSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU07UUFBRSxPQUFPLEtBQUssQ0FBQztJQUNoRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUN0QyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7S0FDM0M7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFORCx3Q0FNQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsUUFBUSxDQUFJLE1BQWMsRUFBRSxNQUFtQjs7O1FBQzdELEtBQW9CLElBQUEsV0FBQSxpQkFBQSxNQUFNLENBQUEsOEJBQUEsa0RBQUU7WUFBdkIsSUFBTSxLQUFLLG1CQUFBO1lBQ2QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNuQjs7Ozs7Ozs7O0FBQ0gsQ0FBQztBQUpELDRCQUlDO0FBRUQ7Ozs7R0FJRztB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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUE7O0dBRUc7QUFDSCxTQUFnQixPQUFPLENBQUMsTUFBVyxFQUFFLElBQWdCO0lBQ25ELElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNkLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFDeEIsT0FBTyxNQUFNLElBQUksSUFBSSxJQUFJLEtBQUssR0FBRyxNQUFNLEVBQUU7UUFDdkMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0tBQ2hDO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQVJELDBCQVFDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLE1BQWtCLEVBQUUsTUFBa0I7SUFDbkUsSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFDaEQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDdEMsSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFDO0tBQzNDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBTkQsd0NBTUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLFFBQVEsQ0FBSSxNQUFjLEVBQUUsTUFBbUI7SUFDN0QsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUU7UUFDMUIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUNuQjtBQUNILENBQUM7QUFKRCw0QkFJQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixvQkFBb0IsQ0FDbEMsTUFBMkIsRUFDM0IsUUFBNkIs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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
const tslib_1 = require("tslib");
tslib_1.__exportStar(require("./ast"), exports);

@@ -5,0 +5,0 @@ tslib_1.__exportStar(require("./collection"), exports);

@@ -9,1 +9,2 @@ import { JsonObject, Nil, Scalar } from '../primitive';

export declare const hasOwn: (v: PropertyKey) => boolean;
export declare function ifString(value: unknown): string | undefined;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.hasOwn = exports.verboseTypeof = exports.isNumber = exports.isNil = exports.isObjectOrNull = exports.isObject = exports.isScalar = void 0;
exports.ifString = exports.hasOwn = exports.verboseTypeof = exports.isNumber = exports.isNil = exports.isObjectOrNull = exports.isObject = exports.isScalar = void 0;
function isScalar(value) {

@@ -32,2 +32,6 @@ return value === null || typeof value !== 'object';

exports.hasOwn = Object.prototype.hasOwnProperty;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicHJpbWl0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLFNBQWdCLFFBQVEsQ0FBQyxLQUFVO0lBQ2pDLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUM7QUFDckQsQ0FBQztBQUZELDRCQUVDO0FBRUQsU0FBZ0IsUUFBUSxDQUFDLEtBQVU7SUFDakMsT0FBTyxLQUFLLEtBQUssSUFBSSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDOUUsQ0FBQztBQUZELDRCQUVDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLEtBQVU7SUFDdkMsT0FBTyxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzVELENBQUM7QUFGRCx3Q0FFQztBQUVELFNBQWdCLEtBQUssQ0FBQyxLQUFVO0lBQzlCLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDdEUsQ0FBQztBQUZELHNCQUVDO0FBRUQsU0FBZ0IsUUFBUSxDQUFDLE9BQVk7SUFDbkMsT0FBTyxPQUFPLE9BQU8sS0FBSyxRQUFRLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFGRCw0QkFFQztBQUVELFNBQWdCLGFBQWEsQ0FBQyxLQUFVO0lBQ3RDLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtRQUNsQixPQUFPLE1BQU0sQ0FBQztLQUNmO0lBQ0QsT0FBTyxPQUFPLEtBQUssQ0FBQztBQUN0QixDQUFDO0FBTEQsc0NBS0M7QUFFOEIsUUFBQSxNQUFNLEdBQUssTUFBTSxDQUFDLFNBQVMsZ0JBQUMifQ==
function ifString(value) {
return typeof value === 'string' ? value : undefined;
}
exports.ifString = ifString;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicHJpbWl0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLFNBQWdCLFFBQVEsQ0FBQyxLQUFVO0lBQ2pDLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUM7QUFDckQsQ0FBQztBQUZELDRCQUVDO0FBRUQsU0FBZ0IsUUFBUSxDQUFDLEtBQVU7SUFDakMsT0FBTyxLQUFLLEtBQUssSUFBSSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDOUUsQ0FBQztBQUZELDRCQUVDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLEtBQVU7SUFDdkMsT0FBTyxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzVELENBQUM7QUFGRCx3Q0FFQztBQUVELFNBQWdCLEtBQUssQ0FBQyxLQUFVO0lBQzlCLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDdEUsQ0FBQztBQUZELHNCQUVDO0FBRUQsU0FBZ0IsUUFBUSxDQUFDLE9BQVk7SUFDbkMsT0FBTyxPQUFPLE9BQU8sS0FBSyxRQUFRLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFGRCw0QkFFQztBQUVELFNBQWdCLGFBQWEsQ0FBQyxLQUFVO0lBQ3RDLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtRQUNsQixPQUFPLE1BQU0sQ0FBQztLQUNmO0lBQ0QsT0FBTyxPQUFPLEtBQUssQ0FBQztBQUN0QixDQUFDO0FBTEQsc0NBS0M7QUFFOEIsY0FBTSxHQUFLLE1BQU0sQ0FBQyxTQUFTLGdCQUFDO0FBRTNELFNBQWdCLFFBQVEsQ0FBQyxLQUFjO0lBQ3JDLE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUN2RCxDQUFDO0FBRkQsNEJBRUMifQ==
import { NodeReference, NodeSnapshot } from '../nodes';
import { PathPart } from '../primitive';
import { JsonObject, PathPart } from '../primitive';
import { NodeId } from '../schema';

@@ -29,1 +29,2 @@ export declare type ReferenceDirection = 'inbound' | 'outbound';

export declare function isReferenceField(snapshot: NodeSnapshot, path: PathPart[]): boolean;
export declare function safeStringify(value: JsonObject): string;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isReferenceField = exports.getIndexOfGivenReference = exports.hasNodeReference = exports.addNodeReference = exports.removeNodeReference = void 0;
var tslib_1 = require("tslib");
var equality_1 = tslib_1.__importDefault(require("@wry/equality"));
exports.safeStringify = exports.isReferenceField = exports.getIndexOfGivenReference = exports.hasNodeReference = exports.addNodeReference = exports.removeNodeReference = void 0;
const tslib_1 = require("tslib");
const equality_1 = tslib_1.__importDefault(require("@wry/equality"));
/**

@@ -12,6 +12,6 @@ * Mutates a snapshot, removing an inbound reference from it.

function removeNodeReference(direction, snapshot, id, path) {
var references = snapshot[direction];
const references = snapshot[direction];
if (!references)
return true;
var fromIndex = getIndexOfGivenReference(references, id, path);
const fromIndex = getIndexOfGivenReference(references, id, path);
if (fromIndex < 0)

@@ -30,9 +30,9 @@ return false;

function addNodeReference(direction, snapshot, id, path) {
var references = snapshot[direction];
let references = snapshot[direction];
if (!references) {
references = snapshot[direction] = [];
}
var idx = getIndexOfGivenReference(references, id, path);
const idx = getIndexOfGivenReference(references, id, path);
if (idx === -1) {
references.push({ id: id, path: path });
references.push({ id, path });
return true;

@@ -48,3 +48,3 @@ }

function hasNodeReference(snapshot, type, id, path) {
var references = snapshot[type];
const references = snapshot[type];
if (!references || getIndexOfGivenReference(references, id, path) === -1)

@@ -60,3 +60,3 @@ return false;

function getIndexOfGivenReference(references, id, path) {
return references.findIndex(function (reference) {
return references.findIndex((reference) => {
return reference.id === id && (0, equality_1.default)(reference.path, path);

@@ -70,6 +70,6 @@ });

function isReferenceField(snapshot, path) {
var references = snapshot['outbound'];
const references = snapshot['outbound'];
if (!references)
return false;
var index = references.findIndex(function (reference) {
const index = references.findIndex((reference) => {
return (0, equality_1.default)(reference.path, path);

@@ -80,2 +80,29 @@ });

exports.isReferenceField = isReferenceField;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJlZmVyZW5jZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG1FQUFvQztBQVFwQzs7OztHQUlHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQ2pDLFNBQTZCLEVBQzdCLFFBQXNCLEVBQ3RCLEVBQVUsRUFDVixJQUFnQjtJQUVoQixJQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsSUFBSSxDQUFDLFVBQVU7UUFBRSxPQUFPLElBQUksQ0FBQztJQUU3QixJQUFNLFNBQVMsR0FBRyx3QkFBd0IsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2pFLElBQUksU0FBUyxHQUFHLENBQUM7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUNoQyxVQUFVLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVoQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRTtRQUN0QixRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDO0tBQ2pDO0lBRUQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUM7QUFDNUIsQ0FBQztBQWxCRCxrREFrQkM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGdCQUFnQixDQUM5QixTQUE2QixFQUM3QixRQUFzQixFQUN0QixFQUFVLEVBQ1YsSUFBZ0I7SUFFaEIsSUFBSSxVQUFVLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JDLElBQUksQ0FBQyxVQUFVLEVBQUU7UUFDZixVQUFVLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztLQUN2QztJQUVELElBQU0sR0FBRyxHQUFHLHdCQUF3QixDQUFDLFVBQVUsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDM0QsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDZCxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFBLEVBQUUsSUFBSSxNQUFBLEVBQUUsQ0FBQyxDQUFDO1FBQzlCLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFqQkQsNENBaUJDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQzlCLFFBQXNCLEVBQ3RCLElBQXdCLEVBQ3hCLEVBQVUsRUFDVixJQUFnQjtJQUVoQixJQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsSUFBSSxDQUFDLFVBQVUsSUFBSSx3QkFBd0IsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQ3ZGLE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQVRELDRDQVNDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0Isd0JBQXdCLENBQUMsVUFBMkIsRUFBRSxFQUFVLEVBQUUsSUFBZ0I7SUFDaEcsT0FBTyxVQUFVLENBQUMsU0FBUyxDQUFDLFVBQUMsU0FBUztRQUNwQyxPQUFPLFNBQVMsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLElBQUEsa0JBQU8sRUFBQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzlELENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUpELDREQUlDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixnQkFBZ0IsQ0FDOUIsUUFBc0IsRUFDdEIsSUFBZ0I7SUFFaEIsSUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3hDLElBQUksQ0FBQyxVQUFVO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFDOUIsSUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQyxVQUFDLFNBQVM7UUFDM0MsT0FBTyxJQUFBLGtCQUFPLEVBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN2QyxDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDdEIsQ0FBQztBQVZELDRDQVVDIn0=
function getCircularReplacer() {
const ancestors = [];
return function replacer(_key, value) {
if (typeof value !== 'object' || value === null) {
return value;
}
// `this` is the object that value is contained in,
// i.e., its direct parent.
while (ancestors.length > 0 && ancestors[ancestors.length - 1] !== this) {
ancestors.pop();
}
if (ancestors.includes(value)) {
return '[Circular]';
}
ancestors.push(value);
return value;
};
}
function safeStringify(value) {
try {
return JSON.stringify(value, undefined, 2);
}
catch (e) {
return JSON.stringify(value, getCircularReplacer(), 2);
}
}
exports.safeStringify = safeStringify;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJlZmVyZW5jZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHFFQUFvQztBQVFwQzs7OztHQUlHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQ2pDLFNBQTZCLEVBQzdCLFFBQXNCLEVBQ3RCLEVBQVUsRUFDVixJQUFnQjtJQUVoQixNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsSUFBSSxDQUFDLFVBQVU7UUFBRSxPQUFPLElBQUksQ0FBQztJQUU3QixNQUFNLFNBQVMsR0FBRyx3QkFBd0IsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2pFLElBQUksU0FBUyxHQUFHLENBQUM7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUNoQyxVQUFVLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVoQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRTtRQUN0QixRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDO0tBQ2pDO0lBRUQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUM7QUFDNUIsQ0FBQztBQWxCRCxrREFrQkM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGdCQUFnQixDQUM5QixTQUE2QixFQUM3QixRQUFzQixFQUN0QixFQUFVLEVBQ1YsSUFBZ0I7SUFFaEIsSUFBSSxVQUFVLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JDLElBQUksQ0FBQyxVQUFVLEVBQUU7UUFDZixVQUFVLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztLQUN2QztJQUVELE1BQU0sR0FBRyxHQUFHLHdCQUF3QixDQUFDLFVBQVUsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDM0QsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFD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
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.valueFromNode = void 0;
var tslib_1 = require("tslib");
// We only depend on graphql for its types; nothing at runtime.
// eslint-disable-next-line import/no-extraneous-dependencies
var graphql_1 = require("graphql");
var ts_invariant_1 = require("ts-invariant");
const graphql_1 = require("graphql");
const ts_invariant_1 = require("ts-invariant");
// Note: These functions were originally a part of apollo-utilities, but were
// removed 87c7a2bc as they were unused within the apollo-client project.
function defaultValueFromVariable(_node) {
throw new ts_invariant_1.InvariantError("Variable nodes are not supported by valueFromNode");
throw new ts_invariant_1.InvariantError(`Variable nodes are not supported by valueFromNode`);
}

@@ -17,5 +16,3 @@ /**

*/
function valueFromNode(node, onVariable) {
var e_1, _a;
if (onVariable === void 0) { onVariable = defaultValueFromVariable; }
function valueFromNode(node, onVariable = defaultValueFromVariable) {
switch (node.kind) {

@@ -31,18 +28,8 @@ case graphql_1.Kind.VARIABLE:

case graphql_1.Kind.LIST:
return node.values.map(function (v) { return valueFromNode(v, onVariable); });
return node.values.map(v => valueFromNode(v, onVariable));
case graphql_1.Kind.OBJECT: {
var value = {};
try {
for (var _b = tslib_1.__values(node.fields), _c = _b.next(); !_c.done; _c = _b.next()) {
var field = _c.value;
value[field.name.value] = valueFromNode(field.value, onVariable);
}
const value = {};
for (const field of node.fields) {
value[field.name.value] = valueFromNode(field.value, onVariable);
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
}
finally { if (e_1) throw e_1.error; }
}
return value;

@@ -56,6 +43,6 @@ }

return node.value;
default: throw new Error("Unknown node: ".concat(JSON.stringify(node)));
default: throw new Error(`Unknown node: ${JSON.stringify(node)}`);
}
}
exports.valueFromNode = valueFromNode;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsK0RBQStEO0FBQy9ELDZEQUE2RDtBQUM3RCxtQ0FBd0Q7QUFDeEQsNkNBQThDO0FBRzlDLDZFQUE2RTtBQUM3RSx5RUFBeUU7QUFFekUsU0FBUyx3QkFBd0IsQ0FBQyxLQUFtQjtJQUNuRCxNQUFNLElBQUksNkJBQWMsQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGFBQWEsQ0FDM0IsSUFBZSxFQUNmLFVBQW9EOztJQUFwRCwyQkFBQSxFQUFBLHFDQUFvRDtJQUVwRCxRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUU7UUFDakIsS0FBSyxjQUFJLENBQUMsUUFBUTtZQUNoQixPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixLQUFLLGNBQUksQ0FBQyxJQUFJO1lBQ1osT0FBTyxJQUFJLENBQUM7UUFDZCxLQUFLLGNBQUksQ0FBQyxHQUFHO1lBQ1gsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLEtBQUssY0FBSSxDQUFDLEtBQUs7WUFDYixPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsS0FBSyxjQUFJLENBQUMsSUFBSTtZQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxhQUFhLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxFQUE1QixDQUE0QixDQUFDLENBQUM7UUFDNUQsS0FBSyxjQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDaEIsSUFBTSxLQUFLLEdBQTJCLEVBQUUsQ0FBQzs7Z0JBQ3pDLEtBQW9CLElBQUEsS0FBQSxpQkFBQSxJQUFJLENBQUMsTUFBTSxDQUFBLGdCQUFBLDRCQUFFO29CQUE1QixJQUFNLEtBQUssV0FBQTtvQkFDZCxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztpQkFDbEU7Ozs7Ozs7OztZQUNELE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFDRCxLQUFLLGNBQUksQ0FBQyxNQUFNO1lBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3BCLEtBQUssY0FBSSxDQUFDLE9BQU87WUFDZixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDcEIsS0FBSyxjQUFJLENBQUMsSUFBSTtZQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNwQixPQUFPLENBQUMsQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDLHdCQUFpQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFFLENBQUMsQ0FBQztLQUNuRTtBQUNILENBQUM7QUE5QkQsc0NBOEJDIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrREFBK0Q7QUFDL0QsNkRBQTZEO0FBQzdELHFDQUF3RDtBQUN4RCwrQ0FBOEM7QUFHOUMsNkVBQTZFO0FBQzdFLHlFQUF5RTtBQUV6RSxTQUFTLHdCQUF3QixDQUFDLEtBQW1CO0lBQ25ELE1BQU0sSUFBSSw2QkFBYyxDQUFDLG1EQUFtRCxDQUFDLENBQUM7QUFDaEYsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsYUFBYSxDQUMzQixJQUFlLEVBQ2YsYUFBNEIsd0JBQXdCO0lBRXBELFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNqQixLQUFLLGNBQUksQ0FBQyxRQUFRO1lBQ2hCLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFCLEtBQUssY0FBSSxDQUFDLElBQUk7WUFDWixPQUFPLElBQUksQ0FBQztRQUNkLEtBQUssY0FBSSxDQUFDLEdBQUc7WUFDWCxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsS0FBSyxjQUFJLENBQUMsS0FBSztZQUNiLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoQyxLQUFLLGNBQUksQ0FBQyxJQUFJO1lBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUM1RCxLQUFLLGNBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNoQixNQUFNLEtBQUssR0FBMkIsRUFBRSxDQUFDO1lBQ3pDLEtBQUssTUFBTSxLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDL0IsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7YUFDbEU7WUFDRCxPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsS0FBSyxjQUFJLENBQUMsTUFBTTtZQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNwQixLQUFLLGNBQUksQ0FBQyxPQUFPO1lBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3BCLEtBQUssY0FBSSxDQUFDLElBQUk7WUFDWixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDcEIsT0FBTyxDQUFDLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDbkU7QUFDSCxDQUFDO0FBOUJELHNDQThCQyJ9
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.get = exports.walkOperation = void 0;
var tslib_1 = require("tslib");
var OperationWalkNode = /** @class */ (function () {
function OperationWalkNode(parsedOperation, path, parent) {
class OperationWalkNode {
constructor(parsedOperation, path, parent) {
this.parsedOperation = parsedOperation;

@@ -11,4 +10,3 @@ this.path = path;

}
return OperationWalkNode;
}());
}
/**

@@ -21,26 +19,26 @@ * Walk and run on ParsedQueryNode and the result.

// we don't bother tracking the path.
var queue = [new OperationWalkNode(rootOperation, [], result)];
for (var q = 0; q < queue.length; q++) {
var _a = queue[q], parsedOperation = _a.parsedOperation, parent_1 = _a.parent, path = _a.path;
const queue = [new OperationWalkNode(rootOperation, [], result)];
for (let q = 0; q < queue.length; q++) {
const { parsedOperation, parent, path } = queue[q];
// We consider null nodes to be skippable (and satisfy the walk).
if (parent_1 === null)
if (parent === null)
continue;
// Fan-out for arrays.
if (Array.isArray(parent_1)) {
for (var i = 0, l = parent_1.length; i < l; i++) {
queue.push(new OperationWalkNode(parsedOperation, tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [i], false), parent_1[i]));
if (Array.isArray(parent)) {
for (let i = 0, l = parent.length; i < l; i++) {
queue.push(new OperationWalkNode(parsedOperation, [...path, i], parent[i]));
}
continue;
}
var fields = [];
const fields = [];
// TODO: Directives?
for (var fieldName in parsedOperation) {
for (const fieldName in parsedOperation) {
fields.push(fieldName);
var nextParsedQuery = parsedOperation[fieldName].children;
const nextParsedQuery = parsedOperation[fieldName].children;
if (nextParsedQuery) {
queue.push(new OperationWalkNode(nextParsedQuery, tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(path), false), [fieldName], false), get(parent_1, fieldName)));
queue.push(new OperationWalkNode(nextParsedQuery, [...path, fieldName], get(parent, fieldName)));
}
}
if (fields.length) {
var shouldStop = visitor(parent_1, fields, path);
const shouldStop = visitor(parent, fields, path);
if (shouldStop)

@@ -57,2 +55,2 @@ return;

exports.get = get;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRyZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUdBO0lBQ0UsMkJBQ2tCLGVBQXlDLEVBQ3pDLElBQXlCLEVBQ3pCLE1BQWtCO1FBRmxCLG9CQUFlLEdBQWYsZUFBZSxDQUEwQjtRQUN6QyxTQUFJLEdBQUosSUFBSSxDQUFxQjtRQUN6QixXQUFNLEdBQU4sTUFBTSxDQUFZO0lBQ2pDLENBQUM7SUFDTix3QkFBQztBQUFELENBQUMsQUFORCxJQU1DO0FBT0Q7OztHQUdHO0FBQ0gsU0FBZ0IsYUFBYSxDQUFDLGFBQXVDLEVBQUUsTUFBOEIsRUFBRSxPQUF5QjtJQUU5SCw0RUFBNEU7SUFDNUUscUNBQXFDO0lBQ3JDLElBQU0sS0FBSyxHQUFHLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFakUsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDL0IsSUFBQSxLQUFvQyxLQUFLLENBQUMsQ0FBQyxDQUFFLEVBQTNDLGVBQWUscUJBQUEsRUFBRSxRQUFNLFlBQUEsRUFBRSxJQUFJLFVBQWMsQ0FBQztRQUNwRCxpRUFBaUU7UUFDakUsSUFBSSxRQUFNLEtBQUssSUFBSTtZQUFFLFNBQVM7UUFFOUIsc0JBQXNCO1FBQ3RCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFNLENBQUMsRUFBRTtZQUN6QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsUUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUM3QyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksaUJBQWlCLENBQUMsZUFBZSxpRUFBTSxJQUFJLFlBQUUsQ0FBQyxXQUFHLFFBQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDN0U7WUFDRCxTQUFTO1NBQ1Y7UUFFRCxJQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7UUFDNUIsb0JBQW9CO1FBQ3BCLEtBQUssSUFBTSxTQUFTLElBQUksZUFBZSxFQUFFO1lBQ3ZDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDdkIsSUFBTSxlQUFlLEdBQUcsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztZQUM1RCxJQUFJLGVBQWUsRUFBRTtnQkFDbkIsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLGlCQUFpQixDQUFDLGVBQWUsaUVBQU0sSUFBSSxZQUFFLFNBQVMsV0FBRyxHQUFHLENBQUMsUUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNsRztTQUNGO1FBRUQsSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQ2pCLElBQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxRQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2pELElBQUksVUFBVTtnQkFBRSxPQUFPO1NBQ3hCO0tBQ0Y7QUFDSCxDQUFDO0FBbENELHNDQWtDQztBQUVELFNBQWdCLEdBQUcsQ0FBQyxLQUFVLEVBQUUsR0FBYTtJQUMzQyw2Q0FBNkM7SUFDN0MsT0FBTyxLQUFLLEtBQUssSUFBSSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDOUUsQ0FBQztBQUhELGtCQUdDIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRyZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0EsTUFBTSxpQkFBaUI7SUFDckIsWUFDa0IsZUFBeUMsRUFDekMsSUFBeUIsRUFDekIsTUFBa0I7UUFGbEIsb0JBQWUsR0FBZixlQUFlLENBQTBCO1FBQ3pDLFNBQUksR0FBSixJQUFJLENBQXFCO1FBQ3pCLFdBQU0sR0FBTixNQUFNLENBQVk7SUFDakMsQ0FBQztDQUNMO0FBT0Q7OztHQUdHO0FBQ0gsU0FBZ0IsYUFBYSxDQUFDLGFBQXVDLEVBQUUsTUFBOEIsRUFBRSxPQUF5QjtJQUU5SCw0RUFBNEU7SUFDNUUscUNBQXFDO0lBQ3JDLE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFakUsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDckMsTUFBTSxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBRSxDQUFDO1FBQ3BELGlFQUFpRTtRQUNqRSxJQUFJLE1BQU0sS0FBSyxJQUFJO1lBQUUsU0FBUztRQUU5QixzQkFBc0I7UUFDdEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3pCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQzdDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzdFO1lBQ0QsU0FBUztTQUNWO1FBRUQsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzVCLG9CQUFvQjtRQUNwQixLQUFLLE1BQU0sU0FBUyxJQUFJLGVBQWUsRUFBRTtZQUN2QyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3ZCLE1BQU0sZUFBZSxHQUFHLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLENBQUM7WUFDNUQsSUFBSSxlQUFlLEVBQUU7Z0JBQ25CLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxTQUFTLENBQUMsRUFBRSxHQUFHLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNsRztTQUNGO1FBRUQsSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQ2pCLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2pELElBQUksVUFBVTtnQkFBRSxPQUFPO1NBQ3hCO0tBQ0Y7QUFDSCxDQUFDO0FBbENELHNDQWtDQztBQUVELFNBQWdCLEdBQUcsQ0FBQyxLQUFVLEVBQUUsR0FBYTtJQUMzQyw2Q0FBNkM7SUFDN0MsT0FBTyxLQUFLLEtBQUssSUFBSSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDOUUsQ0FBQztBQUhELGtCQUdDIn0=
{
"compilerOptions": {
"declaration": true,
"downlevelIteration": true,
"importHelpers": true,

@@ -9,3 +8,3 @@ "inlineSourceMap": true,

"dom",
"es2015",
"es2017",
"esnext.asynciterable",

@@ -26,4 +25,4 @@ "scripthost"

"suppressImplicitAnyIndexErrors": true,
"target": "es5"
"target": "ES2017"
}
}

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc