jsoniq
Version:
JSONiq implementation for JavaScript
33 lines (31 loc) • 3.41 kB
JavaScript
;
class MemoryTransaction {
constructor(snapshot) {
this.snapshot = {};
this.snapshot = snapshot;
}
done() {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve([]);
}, 1);
});
}
get(id) {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(this.snapshot[id]);
}, 1);
});
}
put(id, item) {
this.snapshot[id] = item;
return this;
}
remove(id) {
delete this.snapshot[id];
return this;
}
}
exports.default = MemoryTransaction;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9zdG9yZXMvbWVtb3J5L01lbW9yeVRyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbIk1lbW9yeVRyYW5zYWN0aW9uIiwiTWVtb3J5VHJhbnNhY3Rpb24uY29uc3RydWN0b3IiLCJNZW1vcnlUcmFuc2FjdGlvbi5kb25lIiwiTWVtb3J5VHJhbnNhY3Rpb24uZ2V0IiwiTWVtb3J5VHJhbnNhY3Rpb24ucHV0IiwiTWVtb3J5VHJhbnNhY3Rpb24ucmVtb3ZlIl0sIm1hcHBpbmdzIjoiO0FBRUE7SUFJSUEsWUFBWUEsUUFBWUE7UUFGakJDLGFBQVFBLEdBQU9BLEVBQUVBLENBQUNBO1FBR3JCQSxJQUFJQSxDQUFDQSxRQUFRQSxHQUFHQSxRQUFRQSxDQUFDQTtJQUM3QkEsQ0FBQ0E7SUFFREQsSUFBSUE7UUFDQUUsTUFBTUEsQ0FBQ0EsSUFBSUEsT0FBT0EsQ0FBQ0EsQ0FBQ0EsT0FBT0EsRUFBRUEsTUFBTUE7WUFDL0JBLFVBQVVBLENBQUNBO2dCQUNQQSxPQUFPQSxDQUFDQSxFQUFFQSxDQUFDQSxDQUFDQTtZQUNoQkEsQ0FBQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDVkEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7SUFDUEEsQ0FBQ0E7SUFFREYsR0FBR0EsQ0FBQ0EsRUFBVUE7UUFDVkcsTUFBTUEsQ0FBQ0EsSUFBSUEsT0FBT0EsQ0FBQ0EsQ0FBQ0EsT0FBT0EsRUFBRUEsTUFBTUE7WUFDL0JBLFVBQVVBLENBQUNBO2dCQUNQQSxPQUFPQSxDQUFDQSxJQUFJQSxDQUFDQSxRQUFRQSxDQUFDQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUMvQkEsQ0FBQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDVkEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7SUFDUEEsQ0FBQ0E7SUFFREgsR0FBR0EsQ0FBQ0EsRUFBVUEsRUFBRUEsSUFBU0E7UUFDckJJLElBQUlBLENBQUNBLFFBQVFBLENBQUNBLEVBQUVBLENBQUNBLEdBQUdBLElBQUlBLENBQUNBO1FBQ3pCQSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQTtJQUNoQkEsQ0FBQ0E7SUFFREosTUFBTUEsQ0FBQ0EsRUFBVUE7UUFDYkssT0FBT0EsSUFBSUEsQ0FBQ0EsUUFBUUEsQ0FBQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0E7UUFDekJBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBO0lBQ2hCQSxDQUFDQTtBQUNMTCxDQUFDQTtvQ0FBQSIsImZpbGUiOiJsaWIvc3RvcmVzL21lbW9yeS9NZW1vcnlUcmFuc2FjdGlvbi5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElUcmFuc2FjdGlvbiB9IGZyb20gXCIuLi9JVHJhbnNhY3Rpb25cIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTWVtb3J5VHJhbnNhY3Rpb24gaW1wbGVtZW50cyBJVHJhbnNhY3Rpb24ge1xuXG4gICAgcHVibGljIHNuYXBzaG90OiB7fSA9IHt9O1xuXG4gICAgY29uc3RydWN0b3Ioc25hcHNob3Q6IHt9KSB7XG4gICAgICAgIHRoaXMuc25hcHNob3QgPSBzbmFwc2hvdDtcbiAgICB9XG5cbiAgICBkb25lKCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXNvbHZlKFtdKTtcbiAgICAgICAgICAgIH0sIDEpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXQoaWQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXNvbHZlKHRoaXMuc25hcHNob3RbaWRdKTtcbiAgICAgICAgICAgIH0sIDEpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdXQoaWQ6IHN0cmluZywgaXRlbTogYW55KTogSVRyYW5zYWN0aW9uIHtcbiAgICAgICAgdGhpcy5zbmFwc2hvdFtpZF0gPSBpdGVtO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICByZW1vdmUoaWQ6IHN0cmluZyk6IElUcmFuc2FjdGlvbiB7XG4gICAgICAgIGRlbGV0ZSB0aGlzLnNuYXBzaG90W2lkXTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxufVxuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9