@ultipa-graph/ultipa-driver 6.0.13 → 6.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,7 +9,7 @@ const errors_1 = require("./errors");
9
9
  class TransactionManager {
10
10
  transactions = new Map();
11
11
  /** Create a new transaction */
12
- begin(txId, sessionId, graphName, readOnly, timeout) {
12
+ begin(txId, sessionId, graphName, readOnly, timeout, clientSessionId = '') {
13
13
  const tx = {
14
14
  id: txId,
15
15
  sessionId,
@@ -19,6 +19,7 @@ class TransactionManager {
19
19
  timeout,
20
20
  committed: false,
21
21
  rolledBack: false,
22
+ clientSessionId,
22
23
  };
23
24
  this.transactions.set(txId, tx);
24
25
  return tx;
@@ -86,4 +87,4 @@ class TransactionManager {
86
87
  }
87
88
  }
88
89
  exports.TransactionManager = TransactionManager;
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7QUFFSCxxQ0FBb0Q7QUFjcEQsMENBQTBDO0FBQzFDLE1BQWEsa0JBQWtCO0lBQ3JCLFlBQVksR0FBNkIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUUzRCwrQkFBK0I7SUFDL0IsS0FBSyxDQUNILElBQVksRUFDWixTQUFpQixFQUNqQixTQUFpQixFQUNqQixRQUFpQixFQUNqQixPQUFlO1FBRWYsTUFBTSxFQUFFLEdBQWdCO1lBQ3RCLEVBQUUsRUFBRSxJQUFJO1lBQ1IsU0FBUztZQUNULFNBQVM7WUFDVCxRQUFRO1lBQ1IsU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDckIsT0FBTztZQUNQLFNBQVMsRUFBRSxLQUFLO1lBQ2hCLFVBQVUsRUFBRSxLQUFLO1NBQ2xCLENBQUM7UUFDRixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDaEMsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsc0NBQXNDO0lBQ3RDLE1BQU0sQ0FBQyxJQUFZO1FBQ2pCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLE1BQU0sSUFBSSxpQ0FBd0IsRUFBRSxDQUFDO1FBQ3ZDLENBQUM7UUFDRCxFQUFFLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLFFBQVEsQ0FBQyxJQUFZO1FBQ25CLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLE1BQU0sSUFBSSxpQ0FBd0IsRUFBRSxDQUFDO1FBQ3ZDLENBQUM7UUFDRCxFQUFFLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsOEJBQThCO0lBQzlCLEdBQUcsQ0FBQyxJQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsa0NBQWtDO0lBQ2xDLFNBQVM7UUFDUCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxnREFBZ0Q7SUFDaEQsbUJBQW1CLENBQUMsU0FBaUI7UUFDbkMsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsaURBQWlEO0lBQ2pELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsNENBQTRDO0lBQzVDLEtBQUs7UUFDSCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCw2QkFBNkI7SUFDN0IsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELHVDQUF1QztJQUN2QyxRQUFRLENBQUMsSUFBWTtRQUNuQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxPQUFPLEVBQUUsS0FBSyxTQUFTLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQztJQUM3RCxDQUFDO0lBRUQseUNBQXlDO0lBQ3pDLFNBQVMsQ0FBQyxJQUFZO1FBQ3BCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLE9BQU8sS0FBSyxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDO0lBQ2hELENBQUM7SUFFRCwwQ0FBMEM7SUFDMUMsR0FBRyxDQUFDLElBQVk7UUFDZCxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsRUFBRTtZQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUM7SUFDbkMsQ0FBQztDQUNGO0FBOUZELGdEQThGQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVHJhbnNhY3Rpb24gbWFuYWdlbWVudCBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuaW1wb3J0IHsgVHJhbnNhY3Rpb25Ob3RGb3VuZEVycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKiogUmVwcmVzZW50cyBhbiBhY3RpdmUgZGF0YWJhc2UgdHJhbnNhY3Rpb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb24ge1xuICBpZDogbnVtYmVyO1xuICBzZXNzaW9uSWQ6IG51bWJlcjtcbiAgZ3JhcGhOYW1lOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBib29sZWFuO1xuICBjcmVhdGVkQXQ6IG51bWJlcjtcbiAgdGltZW91dDogbnVtYmVyOyAvLyBpbiBtaWxsaXNlY29uZHNcbiAgY29tbWl0dGVkOiBib29sZWFuO1xuICByb2xsZWRCYWNrOiBib29sZWFuO1xufVxuXG4vKiogTWFuYWdlcyB0cmFuc2FjdGlvbnMgZm9yIHRoZSBjbGllbnQgKi9cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbk1hbmFnZXIge1xuICBwcml2YXRlIHRyYW5zYWN0aW9uczogTWFwPG51bWJlciwgVHJhbnNhY3Rpb24+ID0gbmV3IE1hcCgpO1xuXG4gIC8qKiBDcmVhdGUgYSBuZXcgdHJhbnNhY3Rpb24gKi9cbiAgYmVnaW4oXG4gICAgdHhJZDogbnVtYmVyLFxuICAgIHNlc3Npb25JZDogbnVtYmVyLFxuICAgIGdyYXBoTmFtZTogc3RyaW5nLFxuICAgIHJlYWRPbmx5OiBib29sZWFuLFxuICAgIHRpbWVvdXQ6IG51bWJlclxuICApOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHg6IFRyYW5zYWN0aW9uID0ge1xuICAgICAgaWQ6IHR4SWQsXG4gICAgICBzZXNzaW9uSWQsXG4gICAgICBncmFwaE5hbWUsXG4gICAgICByZWFkT25seSxcbiAgICAgIGNyZWF0ZWRBdDogRGF0ZS5ub3coKSxcbiAgICAgIHRpbWVvdXQsXG4gICAgICBjb21taXR0ZWQ6IGZhbHNlLFxuICAgICAgcm9sbGVkQmFjazogZmFsc2UsXG4gICAgfTtcbiAgICB0aGlzLnRyYW5zYWN0aW9ucy5zZXQodHhJZCwgdHgpO1xuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKiBNYXJrIGEgdHJhbnNhY3Rpb24gYXMgY29tbWl0dGVkICovXG4gIGNvbW1pdCh0eElkOiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCB0eCA9IHRoaXMudHJhbnNhY3Rpb25zLmdldCh0eElkKTtcbiAgICBpZiAoIXR4KSB7XG4gICAgICB0aHJvdyBuZXcgVHJhbnNhY3Rpb25Ob3RGb3VuZEVycm9yKCk7XG4gICAgfVxuICAgIHR4LmNvbW1pdHRlZCA9IHRydWU7XG4gICAgdGhpcy50cmFuc2FjdGlvbnMuZGVsZXRlKHR4SWQpO1xuICB9XG5cbiAgLyoqIE1hcmsgYSB0cmFuc2FjdGlvbiBhcyByb2xsZWQgYmFjayAqL1xuICByb2xsYmFjayh0eElkOiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCB0eCA9IHRoaXMudHJhbnNhY3Rpb25zLmdldCh0eElkKTtcbiAgICBpZiAoIXR4KSB7XG4gICAgICB0aHJvdyBuZXcgVHJhbnNhY3Rpb25Ob3RGb3VuZEVycm9yKCk7XG4gICAgfVxuICAgIHR4LnJvbGxlZEJhY2sgPSB0cnVlO1xuICAgIHRoaXMudHJhbnNhY3Rpb25zLmRlbGV0ZSh0eElkKTtcbiAgfVxuXG4gIC8qKiBHZXQgYSB0cmFuc2FjdGlvbiBieSBJRCAqL1xuICBnZXQodHhJZDogbnVtYmVyKTogVHJhbnNhY3Rpb24gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9ucy5nZXQodHhJZCk7XG4gIH1cblxuICAvKiogR2V0IGFsbCBhY3RpdmUgdHJhbnNhY3Rpb25zICovXG4gIGdldEFjdGl2ZSgpOiBUcmFuc2FjdGlvbltdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnRyYW5zYWN0aW9ucy52YWx1ZXMoKSk7XG4gIH1cblxuICAvKiogR2V0IGFsbCBhY3RpdmUgdHJhbnNhY3Rpb25zIGZvciBhIHNlc3Npb24gKi9cbiAgZ2V0QWN0aXZlRm9yU2Vzc2lvbihzZXNzaW9uSWQ6IG51bWJlcik6IFRyYW5zYWN0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLmdldEFjdGl2ZSgpLmZpbHRlcih0eCA9PiB0eC5zZXNzaW9uSWQgPT09IHNlc3Npb25JZCk7XG4gIH1cblxuICAvKiogQ2hlY2sgaWYgdGhlcmUgYXJlIGFueSBhY3RpdmUgdHJhbnNhY3Rpb25zICovXG4gIGhhc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbnMuc2l6ZSA+IDA7XG4gIH1cblxuICAvKiogR2V0IHRoZSBudW1iZXIgb2YgYWN0aXZlIHRyYW5zYWN0aW9ucyAqL1xuICBjb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9ucy5zaXplO1xuICB9XG5cbiAgLyoqIENsZWFyIGFsbCB0cmFuc2FjdGlvbnMgKi9cbiAgY2xlYXJBbGwoKTogdm9pZCB7XG4gICAgdGhpcy50cmFuc2FjdGlvbnMuY2xlYXIoKTtcbiAgfVxuXG4gIC8qKiBDaGVjayBpZiBhIHRyYW5zYWN0aW9uIGlzIGFjdGl2ZSAqL1xuICBpc0FjdGl2ZSh0eElkOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBjb25zdCB0eCA9IHRoaXMudHJhbnNhY3Rpb25zLmdldCh0eElkKTtcbiAgICByZXR1cm4gdHggIT09IHVuZGVmaW5lZCAmJiAhdHguY29tbWl0dGVkICYmICF0eC5yb2xsZWRCYWNrO1xuICB9XG5cbiAgLyoqIENoZWNrIGlmIGEgdHJhbnNhY3Rpb24gaGFzIGV4cGlyZWQgKi9cbiAgaXNFeHBpcmVkKHR4SWQ6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHR4ID0gdGhpcy50cmFuc2FjdGlvbnMuZ2V0KHR4SWQpO1xuICAgIGlmICghdHggfHwgdHgudGltZW91dCA9PT0gMCkgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiBEYXRlLm5vdygpIC0gdHguY3JlYXRlZEF0ID4gdHgudGltZW91dDtcbiAgfVxuXG4gIC8qKiBHZXQgdHJhbnNhY3Rpb24gYWdlIGluIG1pbGxpc2Vjb25kcyAqL1xuICBhZ2UodHhJZDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBjb25zdCB0eCA9IHRoaXMudHJhbnNhY3Rpb25zLmdldCh0eElkKTtcbiAgICBpZiAoIXR4KSByZXR1cm4gMDtcbiAgICByZXR1cm4gRGF0ZS5ub3coKSAtIHR4LmNyZWF0ZWRBdDtcbiAgfVxufVxuIl19
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7QUFFSCxxQ0FBb0Q7QUFxQnBELDBDQUEwQztBQUMxQyxNQUFhLGtCQUFrQjtJQUNyQixZQUFZLEdBQTZCLElBQUksR0FBRyxFQUFFLENBQUM7SUFFM0QsK0JBQStCO0lBQy9CLEtBQUssQ0FDSCxJQUFZLEVBQ1osU0FBaUIsRUFDakIsU0FBaUIsRUFDakIsUUFBaUIsRUFDakIsT0FBZSxFQUNmLGtCQUEwQixFQUFFO1FBRTVCLE1BQU0sRUFBRSxHQUFnQjtZQUN0QixFQUFFLEVBQUUsSUFBSTtZQUNSLFNBQVM7WUFDVCxTQUFTO1lBQ1QsUUFBUTtZQUNSLFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ3JCLE9BQU87WUFDUCxTQUFTLEVBQUUsS0FBSztZQUNoQixVQUFVLEVBQUUsS0FBSztZQUNqQixlQUFlO1NBQ2hCLENBQUM7UUFDRixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDaEMsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsc0NBQXNDO0lBQ3RDLE1BQU0sQ0FBQyxJQUFZO1FBQ2pCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLE1BQU0sSUFBSSxpQ0FBd0IsRUFBRSxDQUFDO1FBQ3ZDLENBQUM7UUFDRCxFQUFFLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLFFBQVEsQ0FBQyxJQUFZO1FBQ25CLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLE1BQU0sSUFBSSxpQ0FBd0IsRUFBRSxDQUFDO1FBQ3ZDLENBQUM7UUFDRCxFQUFFLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsOEJBQThCO0lBQzlCLEdBQUcsQ0FBQyxJQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsa0NBQWtDO0lBQ2xDLFNBQVM7UUFDUCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxnREFBZ0Q7SUFDaEQsbUJBQW1CLENBQUMsU0FBaUI7UUFDbkMsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsaURBQWlEO0lBQ2pELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsNENBQTRDO0lBQzVDLEtBQUs7UUFDSCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCw2QkFBNkI7SUFDN0IsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELHVDQUF1QztJQUN2QyxRQUFRLENBQUMsSUFBWTtRQUNuQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxPQUFPLEVBQUUsS0FBSyxTQUFTLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQztJQUM3RCxDQUFDO0lBRUQseUNBQXlDO0lBQ3pDLFNBQVMsQ0FBQyxJQUFZO1FBQ3BCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLE9BQU8sS0FBSyxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDO0lBQ2hELENBQUM7SUFFRCwwQ0FBMEM7SUFDMUMsR0FBRyxDQUFDLElBQVk7UUFDZCxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsRUFBRTtZQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUM7SUFDbkMsQ0FBQztDQUNGO0FBaEdELGdEQWdHQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVHJhbnNhY3Rpb24gbWFuYWdlbWVudCBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuaW1wb3J0IHsgVHJhbnNhY3Rpb25Ob3RGb3VuZEVycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuXG4vKiogUmVwcmVzZW50cyBhbiBhY3RpdmUgZGF0YWJhc2UgdHJhbnNhY3Rpb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb24ge1xuICBpZDogbnVtYmVyO1xuICBzZXNzaW9uSWQ6IG51bWJlcjtcbiAgZ3JhcGhOYW1lOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBib29sZWFuO1xuICBjcmVhdGVkQXQ6IG51bWJlcjtcbiAgdGltZW91dDogbnVtYmVyOyAvLyBpbiBtaWxsaXNlY29uZHNcbiAgY29tbWl0dGVkOiBib29sZWFuO1xuICByb2xsZWRCYWNrOiBib29sZWFuO1xuICAvKipcbiAgICogU3RhYmxlIHBlci1jbGllbnQgbG9naWNhbCBzZXNzaW9uIGlkIHN1cmZhY2VkIHVuZGVyIHRoZVxuICAgKiB0cmFuc2FjdGlvbi1icmFuY2ggbW9kZWwuIERpc3RpbmN0IGZyb20gYHNlc3Npb25JZDogbnVtYmVyYCAodGhlXG4gICAqIGxlZ2FjeSB1aW50NjQgZnJvbSBMb2dpbikuIEFsd2F5cyBwb3B1bGF0ZWQgYnkgdGhlIGRyaXZlci4gU2VlXG4gICAqIFRSQU5TQUNUSU9OU19EUklWRVJfR1VJREUubWQgwqcyLjDigJMyLjEuXG4gICAqL1xuICBjbGllbnRTZXNzaW9uSWQ6IHN0cmluZztcbn1cblxuLyoqIE1hbmFnZXMgdHJhbnNhY3Rpb25zIGZvciB0aGUgY2xpZW50ICovXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25NYW5hZ2VyIHtcbiAgcHJpdmF0ZSB0cmFuc2FjdGlvbnM6IE1hcDxudW1iZXIsIFRyYW5zYWN0aW9uPiA9IG5ldyBNYXAoKTtcblxuICAvKiogQ3JlYXRlIGEgbmV3IHRyYW5zYWN0aW9uICovXG4gIGJlZ2luKFxuICAgIHR4SWQ6IG51bWJlcixcbiAgICBzZXNzaW9uSWQ6IG51bWJlcixcbiAgICBncmFwaE5hbWU6IHN0cmluZyxcbiAgICByZWFkT25seTogYm9vbGVhbixcbiAgICB0aW1lb3V0OiBudW1iZXIsXG4gICAgY2xpZW50U2Vzc2lvbklkOiBzdHJpbmcgPSAnJ1xuICApOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHg6IFRyYW5zYWN0aW9uID0ge1xuICAgICAgaWQ6IHR4SWQsXG4gICAgICBzZXNzaW9uSWQsXG4gICAgICBncmFwaE5hbWUsXG4gICAgICByZWFkT25seSxcbiAgICAgIGNyZWF0ZWRBdDogRGF0ZS5ub3coKSxcbiAgICAgIHRpbWVvdXQsXG4gICAgICBjb21taXR0ZWQ6IGZhbHNlLFxuICAgICAgcm9sbGVkQmFjazogZmFsc2UsXG4gICAgICBjbGllbnRTZXNzaW9uSWQsXG4gICAgfTtcbiAgICB0aGlzLnRyYW5zYWN0aW9ucy5zZXQodHhJZCwgdHgpO1xuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKiBNYXJrIGEgdHJhbnNhY3Rpb24gYXMgY29tbWl0dGVkICovXG4gIGNvbW1pdCh0eElkOiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCB0eCA9IHRoaXMudHJhbnNhY3Rpb25zLmdldCh0eElkKTtcbiAgICBpZiAoIXR4KSB7XG4gICAgICB0aHJvdyBuZXcgVHJhbnNhY3Rpb25Ob3RGb3VuZEVycm9yKCk7XG4gICAgfVxuICAgIHR4LmNvbW1pdHRlZCA9IHRydWU7XG4gICAgdGhpcy50cmFuc2FjdGlvbnMuZGVsZXRlKHR4SWQpO1xuICB9XG5cbiAgLyoqIE1hcmsgYSB0cmFuc2FjdGlvbiBhcyByb2xsZWQgYmFjayAqL1xuICByb2xsYmFjayh0eElkOiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCB0eCA9IHRoaXMudHJhbnNhY3Rpb25zLmdldCh0eElkKTtcbiAgICBpZiAoIXR4KSB7XG4gICAgICB0aHJvdyBuZXcgVHJhbnNhY3Rpb25Ob3RGb3VuZEVycm9yKCk7XG4gICAgfVxuICAgIHR4LnJvbGxlZEJhY2sgPSB0cnVlO1xuICAgIHRoaXMudHJhbnNhY3Rpb25zLmRlbGV0ZSh0eElkKTtcbiAgfVxuXG4gIC8qKiBHZXQgYSB0cmFuc2FjdGlvbiBieSBJRCAqL1xuICBnZXQodHhJZDogbnVtYmVyKTogVHJhbnNhY3Rpb24gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9ucy5nZXQodHhJZCk7XG4gIH1cblxuICAvKiogR2V0IGFsbCBhY3RpdmUgdHJhbnNhY3Rpb25zICovXG4gIGdldEFjdGl2ZSgpOiBUcmFuc2FjdGlvbltdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnRyYW5zYWN0aW9ucy52YWx1ZXMoKSk7XG4gIH1cblxuICAvKiogR2V0IGFsbCBhY3RpdmUgdHJhbnNhY3Rpb25zIGZvciBhIHNlc3Npb24gKi9cbiAgZ2V0QWN0aXZlRm9yU2Vzc2lvbihzZXNzaW9uSWQ6IG51bWJlcik6IFRyYW5zYWN0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLmdldEFjdGl2ZSgpLmZpbHRlcih0eCA9PiB0eC5zZXNzaW9uSWQgPT09IHNlc3Npb25JZCk7XG4gIH1cblxuICAvKiogQ2hlY2sgaWYgdGhlcmUgYXJlIGFueSBhY3RpdmUgdHJhbnNhY3Rpb25zICovXG4gIGhhc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbnMuc2l6ZSA+IDA7XG4gIH1cblxuICAvKiogR2V0IHRoZSBudW1iZXIgb2YgYWN0aXZlIHRyYW5zYWN0aW9ucyAqL1xuICBjb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9ucy5zaXplO1xuICB9XG5cbiAgLyoqIENsZWFyIGFsbCB0cmFuc2FjdGlvbnMgKi9cbiAgY2xlYXJBbGwoKTogdm9pZCB7XG4gICAgdGhpcy50cmFuc2FjdGlvbnMuY2xlYXIoKTtcbiAgfVxuXG4gIC8qKiBDaGVjayBpZiBhIHRyYW5zYWN0aW9uIGlzIGFjdGl2ZSAqL1xuICBpc0FjdGl2ZSh0eElkOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBjb25zdCB0eCA9IHRoaXMudHJhbnNhY3Rpb25zLmdldCh0eElkKTtcbiAgICByZXR1cm4gdHggIT09IHVuZGVmaW5lZCAmJiAhdHguY29tbWl0dGVkICYmICF0eC5yb2xsZWRCYWNrO1xuICB9XG5cbiAgLyoqIENoZWNrIGlmIGEgdHJhbnNhY3Rpb24gaGFzIGV4cGlyZWQgKi9cbiAgaXNFeHBpcmVkKHR4SWQ6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHR4ID0gdGhpcy50cmFuc2FjdGlvbnMuZ2V0KHR4SWQpO1xuICAgIGlmICghdHggfHwgdHgudGltZW91dCA9PT0gMCkgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiBEYXRlLm5vdygpIC0gdHguY3JlYXRlZEF0ID4gdHgudGltZW91dDtcbiAgfVxuXG4gIC8qKiBHZXQgdHJhbnNhY3Rpb24gYWdlIGluIG1pbGxpc2Vjb25kcyAqL1xuICBhZ2UodHhJZDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBjb25zdCB0eCA9IHRoaXMudHJhbnNhY3Rpb25zLmdldCh0eElkKTtcbiAgICBpZiAoIXR4KSByZXR1cm4gMDtcbiAgICByZXR1cm4gRGF0ZS5ub3coKSAtIHR4LmNyZWF0ZWRBdDtcbiAgfVxufVxuIl19
@@ -1,13 +1,27 @@
1
1
  /**
2
2
  * Bulk import types for GQLDB Node.js driver.
3
3
  */
4
- /** Options for bulk node creation */
4
+ import { InsertType } from './convenience';
5
+ /**
6
+ * Options for bulk node creation.
7
+ *
8
+ * `mode` selects duplicate-`_id` semantics. See {@link InsertType}
9
+ * docs for the three values (`Normal` / `Overwrite` / `Upsert`) and
10
+ * their differences. Defaults to `InsertType.Normal`.
11
+ */
5
12
  export interface BulkCreateNodesOptions {
6
- overwrite?: boolean;
13
+ mode?: InsertType;
7
14
  }
8
- /** Options for bulk edge creation */
15
+ /**
16
+ * Options for bulk edge creation.
17
+ *
18
+ * See {@link BulkCreateNodesOptions} for the `mode` semantic split.
19
+ * Edge `Overwrite` and `Upsert` require EDGE_ID enabled on the
20
+ * target graph.
21
+ */
9
22
  export interface BulkCreateEdgesOptions {
10
23
  skipInvalidNodes?: boolean;
24
+ mode?: InsertType;
11
25
  }
12
26
  /** Options for starting a bulk import session */
13
27
  export interface BulkImportOptions {
@@ -3,4 +3,4 @@
3
3
  * Bulk import types for GQLDB Node.js driver.
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVsa19pbXBvcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvYnVsa19pbXBvcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBCdWxrIGltcG9ydCB0eXBlcyBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuLyoqIE9wdGlvbnMgZm9yIGJ1bGsgbm9kZSBjcmVhdGlvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdWxrQ3JlYXRlTm9kZXNPcHRpb25zIHtcbiAgb3ZlcndyaXRlPzogYm9vbGVhbjtcbn1cblxuLyoqIE9wdGlvbnMgZm9yIGJ1bGsgZWRnZSBjcmVhdGlvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdWxrQ3JlYXRlRWRnZXNPcHRpb25zIHtcbiAgc2tpcEludmFsaWROb2Rlcz86IGJvb2xlYW47XG59XG5cbi8qKiBPcHRpb25zIGZvciBzdGFydGluZyBhIGJ1bGsgaW1wb3J0IHNlc3Npb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVsa0ltcG9ydE9wdGlvbnMge1xuICAvKiogQGRlcHJlY2F0ZWQgTm8gbG9uZ2VyIHVzZWQuIFNlcnZlciBpZ25vcmVzIHRoaXMgdmFsdWUuICovXG4gIGNoZWNrcG9pbnRFdmVyeT86IG51bWJlcjtcbiAgLyoqIEhpbnQgZm9yIHByZS1hbGxvY2F0aW5nIG5vZGUgSUQgY2FjaGUgKi9cbiAgZXN0aW1hdGVkTm9kZXM/OiBudW1iZXI7XG4gIC8qKiBIaW50IGZvciBlZGdlIGJhdGNoIHNpemluZyAqL1xuICBlc3RpbWF0ZWRFZGdlcz86IG51bWJlcjtcbn1cblxuLyoqIFJlc3VsdCBvZiBzdGFydGluZyBhIGJ1bGsgaW1wb3J0IHNlc3Npb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVsa0ltcG9ydFNlc3Npb24ge1xuICBzdWNjZXNzOiBib29sZWFuO1xuICBzZXNzaW9uSWQ6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKiogUmVzdWx0IG9mIGEgY2hlY2twb2ludCBvcGVyYXRpb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hlY2twb2ludFJlc3VsdCB7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIHJlY29yZENvdW50OiBudW1iZXI7XG4gIGxhc3RDaGVja3BvaW50Q291bnQ6IG51bWJlcjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKiogUmVzdWx0IG9mIGVuZGluZyBhIGJ1bGsgaW1wb3J0IHNlc3Npb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW5kQnVsa0ltcG9ydFJlc3VsdCB7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIHRvdGFsUmVjb3JkczogbnVtYmVyO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKiBSZXN1bHQgb2YgYWJvcnRpbmcgYSBidWxrIGltcG9ydCBzZXNzaW9uICovXG5leHBvcnQgaW50ZXJmYWNlIEFib3J0QnVsa0ltcG9ydFJlc3VsdCB7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqIFN0YXR1cyBvZiBhIGJ1bGsgaW1wb3J0IHNlc3Npb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVsa0ltcG9ydFN0YXR1cyB7XG4gIGlzQWN0aXZlOiBib29sZWFuO1xuICBncmFwaE5hbWU6IHN0cmluZztcbiAgcmVjb3JkQ291bnQ6IG51bWJlcjtcbiAgbGFzdENoZWNrcG9pbnRDb3VudDogbnVtYmVyO1xuICBjcmVhdGVkQXQ6IG51bWJlcjtcbiAgbGFzdEFjdGl2aXR5OiBudW1iZXI7XG59XG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVsa19pbXBvcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvYnVsa19pbXBvcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBCdWxrIGltcG9ydCB0eXBlcyBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuaW1wb3J0IHsgSW5zZXJ0VHlwZSB9IGZyb20gJy4vY29udmVuaWVuY2UnO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGJ1bGsgbm9kZSBjcmVhdGlvbi5cbiAqXG4gKiBgbW9kZWAgc2VsZWN0cyBkdXBsaWNhdGUtYF9pZGAgc2VtYW50aWNzLiBTZWUge0BsaW5rIEluc2VydFR5cGV9XG4gKiBkb2NzIGZvciB0aGUgdGhyZWUgdmFsdWVzIChgTm9ybWFsYCAvIGBPdmVyd3JpdGVgIC8gYFVwc2VydGApIGFuZFxuICogdGhlaXIgZGlmZmVyZW5jZXMuIERlZmF1bHRzIHRvIGBJbnNlcnRUeXBlLk5vcm1hbGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVsa0NyZWF0ZU5vZGVzT3B0aW9ucyB7XG4gIG1vZGU/OiBJbnNlcnRUeXBlO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGJ1bGsgZWRnZSBjcmVhdGlvbi5cbiAqXG4gKiBTZWUge0BsaW5rIEJ1bGtDcmVhdGVOb2Rlc09wdGlvbnN9IGZvciB0aGUgYG1vZGVgIHNlbWFudGljIHNwbGl0LlxuICogRWRnZSBgT3ZlcndyaXRlYCBhbmQgYFVwc2VydGAgcmVxdWlyZSBFREdFX0lEIGVuYWJsZWQgb24gdGhlXG4gKiB0YXJnZXQgZ3JhcGguXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVsa0NyZWF0ZUVkZ2VzT3B0aW9ucyB7XG4gIHNraXBJbnZhbGlkTm9kZXM/OiBib29sZWFuO1xuICBtb2RlPzogSW5zZXJ0VHlwZTtcbn1cblxuLyoqIE9wdGlvbnMgZm9yIHN0YXJ0aW5nIGEgYnVsayBpbXBvcnQgc2Vzc2lvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdWxrSW1wb3J0T3B0aW9ucyB7XG4gIC8qKiBAZGVwcmVjYXRlZCBObyBsb25nZXIgdXNlZC4gU2VydmVyIGlnbm9yZXMgdGhpcyB2YWx1ZS4gKi9cbiAgY2hlY2twb2ludEV2ZXJ5PzogbnVtYmVyO1xuICAvKiogSGludCBmb3IgcHJlLWFsbG9jYXRpbmcgbm9kZSBJRCBjYWNoZSAqL1xuICBlc3RpbWF0ZWROb2Rlcz86IG51bWJlcjtcbiAgLyoqIEhpbnQgZm9yIGVkZ2UgYmF0Y2ggc2l6aW5nICovXG4gIGVzdGltYXRlZEVkZ2VzPzogbnVtYmVyO1xufVxuXG4vKiogUmVzdWx0IG9mIHN0YXJ0aW5nIGEgYnVsayBpbXBvcnQgc2Vzc2lvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdWxrSW1wb3J0U2Vzc2lvbiB7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIHNlc3Npb25JZDogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKiBSZXN1bHQgb2YgYSBjaGVja3BvaW50IG9wZXJhdGlvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGVja3BvaW50UmVzdWx0IHtcbiAgc3VjY2VzczogYm9vbGVhbjtcbiAgcmVjb3JkQ291bnQ6IG51bWJlcjtcbiAgbGFzdENoZWNrcG9pbnRDb3VudDogbnVtYmVyO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKiBSZXN1bHQgb2YgZW5kaW5nIGEgYnVsayBpbXBvcnQgc2Vzc2lvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbmRCdWxrSW1wb3J0UmVzdWx0IHtcbiAgc3VjY2VzczogYm9vbGVhbjtcbiAgdG90YWxSZWNvcmRzOiBudW1iZXI7XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqIFJlc3VsdCBvZiBhYm9ydGluZyBhIGJ1bGsgaW1wb3J0IHNlc3Npb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWJvcnRCdWxrSW1wb3J0UmVzdWx0IHtcbiAgc3VjY2VzczogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG4vKiogU3RhdHVzIG9mIGEgYnVsayBpbXBvcnQgc2Vzc2lvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdWxrSW1wb3J0U3RhdHVzIHtcbiAgaXNBY3RpdmU6IGJvb2xlYW47XG4gIGdyYXBoTmFtZTogc3RyaW5nO1xuICByZWNvcmRDb3VudDogbnVtYmVyO1xuICBsYXN0Q2hlY2twb2ludENvdW50OiBudW1iZXI7XG4gIGNyZWF0ZWRBdDogbnVtYmVyO1xuICBsYXN0QWN0aXZpdHk6IG51bWJlcjtcbn1cbiJdfQ==
@@ -7,10 +7,26 @@ export declare enum DBType {
7
7
  NODE = 0,
8
8
  EDGE = 1
9
9
  }
10
- /** Controls the insert mode for GQL-based insert operations */
10
+ /**
11
+ * Controls the insert mode for GQL-based insert operations.
12
+ *
13
+ * - `Normal`: INSERT — error if `_id` already exists.
14
+ * - `Overwrite`: INSERT OVERWRITE — REPLACE existing entity wholesale
15
+ * on duplicate `_id`. Properties not in the write are LOST.
16
+ * - `Upsert`: UPSERT — MERGE new properties into existing entity
17
+ * on duplicate `_id`. Properties not in the write are PRESERVED;
18
+ * properties in the write OVERWRITE existing values. Falls back to
19
+ * plain insert when no `_id` matches.
20
+ *
21
+ * `Overwrite` and `Upsert` are different semantics on existing rows.
22
+ * Choose `Upsert` (merge) for partial-update workloads where you don't
23
+ * want to lose existing fields; choose `Overwrite` (replace) for
24
+ * known-clean re-ingest of an entity's full state.
25
+ */
11
26
  export declare enum InsertType {
12
27
  Normal = 0,
13
- Overwrite = 1
28
+ Overwrite = 1,
29
+ Upsert = 2
14
30
  }
15
31
  /** Label info from SHOW LABELS.
16
32
  *
@@ -18,11 +18,27 @@ var DBType;
18
18
  DBType[DBType["NODE"] = 0] = "NODE";
19
19
  DBType[DBType["EDGE"] = 1] = "EDGE";
20
20
  })(DBType || (exports.DBType = DBType = {}));
21
- /** Controls the insert mode for GQL-based insert operations */
21
+ /**
22
+ * Controls the insert mode for GQL-based insert operations.
23
+ *
24
+ * - `Normal`: INSERT — error if `_id` already exists.
25
+ * - `Overwrite`: INSERT OVERWRITE — REPLACE existing entity wholesale
26
+ * on duplicate `_id`. Properties not in the write are LOST.
27
+ * - `Upsert`: UPSERT — MERGE new properties into existing entity
28
+ * on duplicate `_id`. Properties not in the write are PRESERVED;
29
+ * properties in the write OVERWRITE existing values. Falls back to
30
+ * plain insert when no `_id` matches.
31
+ *
32
+ * `Overwrite` and `Upsert` are different semantics on existing rows.
33
+ * Choose `Upsert` (merge) for partial-update workloads where you don't
34
+ * want to lose existing fields; choose `Overwrite` (replace) for
35
+ * known-clean re-ingest of an entity's full state.
36
+ */
22
37
  var InsertType;
23
38
  (function (InsertType) {
24
39
  InsertType[InsertType["Normal"] = 0] = "Normal";
25
40
  InsertType[InsertType["Overwrite"] = 1] = "Overwrite";
41
+ InsertType[InsertType["Upsert"] = 2] = "Upsert";
26
42
  })(InsertType || (exports.InsertType = InsertType = {}));
27
43
  // ConvNode and ConvEdge have been removed.
28
44
  // Use NodeData and EdgeData from graph_models instead.
@@ -128,4 +144,4 @@ function useGraphPrefix(graphName) {
128
144
  function dbTypeToKeyword(dt) {
129
145
  return dt === DBType.EDGE ? 'EDGE' : 'NODE';
130
146
  }
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVuaWVuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvY29udmVuaWVuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7QUFpTEgsa0RBY0M7QUFNRCw4Q0FFQztBQUtELHdEQUlDO0FBS0QsNERBT0M7QUFLRCx3Q0FtQkM7QUFLRCxnRUFLQztBQUtELHdDQUdDO0FBS0QsMENBRUM7QUF4UUQscURBQXFEO0FBQ3JELElBQVksTUFHWDtBQUhELFdBQVksTUFBTTtJQUNoQixtQ0FBUSxDQUFBO0lBQ1IsbUNBQVEsQ0FBQTtBQUNWLENBQUMsRUFIVyxNQUFNLHNCQUFOLE1BQU0sUUFHakI7QUFFRCwrREFBK0Q7QUFDL0QsSUFBWSxVQUdYO0FBSEQsV0FBWSxVQUFVO0lBQ3BCLCtDQUFVLENBQUE7SUFDVixxREFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUhXLFVBQVUsMEJBQVYsVUFBVSxRQUdyQjtBQXVKRCwyQ0FBMkM7QUFDM0MsdURBQXVEO0FBRXZELGdGQUFnRjtBQUNoRixtQkFBbUI7QUFDbkIsZ0ZBQWdGO0FBRWhGOzs7R0FHRztBQUNILFNBQWdCLG1CQUFtQixDQUFDLENBQVM7SUFDM0MsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNiLElBQUksQ0FBQyxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFFbEIsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQixNQUFNLE1BQU0sR0FBc0IsRUFBRSxDQUFDO0lBQ3JDLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7UUFDekIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxPQUFPO1lBQUUsU0FBUztRQUN2QixNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFD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R0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEUsT0FBTyxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDdEMsQ0FBQztJQUNELE9BQU8sSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztBQUMxQixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQiwwQkFBMEIsQ0FBQyxLQUEwQjtJQUNuRSxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFDakMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDakUsT0FBTyxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUM7QUFDdEMsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsY0FBYyxDQUFDLFNBQWlCO0lBQzlDLElBQUksQ0FBQyxTQUFTO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFDMUIsT0FBTyxhQUFhLFNBQVMsSUFBSSxDQUFDO0FBQ3BDLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGVBQWUsQ0FBQyxFQUFVO0lBQ3hDLE9BQU8sRUFBRSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0FBQzlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnZlbmllbmNlIEFQSSB0eXBlcyBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuaW1wb3J0IHsgUHJvcGVydHlUeXBlIH0gZnJvbSAnLi9lbnVtcyc7XG5pbXBvcnQgdHlwZSB7IFJlc3BvbnNlIH0gZnJvbSAnLi4vcmVzcG9uc2UnO1xuXG4vKiogRGlzdGluZ3Vpc2hlcyBiZXR3ZWVuIG5vZGUgYW5kIGVkZ2Ugb3BlcmF0aW9ucyAqL1xuZXhwb3J0IGVudW0gREJUeXBlIHtcbiAgTk9ERSA9IDAsXG4gIEVER0UgPSAxLFxufVxuXG4vKiogQ29udHJvbHMgdGhlIGluc2VydCBtb2RlIGZvciBHUUwtYmFzZWQgaW5zZXJ0IG9wZXJhdGlvbnMgKi9cbmV4cG9ydCBlbnVtIEluc2VydFR5cGUge1xuICBOb3JtYWwgPSAwLFxuICBPdmVyd3JpdGUgPSAxLFxufVxuXG4vKiogTGFiZWwgaW5mbyBmcm9tIFNIT1cgTEFCRUxTLlxuICpcbiAqIEdRTCBzdXBwb3J0cyBtdWx0aS1sYWJlbCBub2RlcyAoZS5nLiAobjpQZXJzb246RW1wbG95ZWUpKSwgc28gdGhlXG4gKiBzZXJ2ZXIgcmV0dXJucyBsYWJlbHMgYXMgYSBsaXN0IGV2ZW4gd2hlbiB0aGVyZSBpcyBvbmx5IG9uZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMYWJlbEluZm8ge1xuICBsYWJlbHM6IHN0cmluZ1tdO1xuICB0eXBlOiBzdHJpbmc7IC8vIFwiTk9ERVwiIG9yIFwiRURHRVwiXG59XG5cbi8qKiBOb2RlIHR5cGUgaW5mbyBmcm9tIFNIT1cgTk9ERSBUWVBFUyAqL1xuZXhwb3J0IGludGVyZmFjZSBOb2RlVHlwZUluZm8ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHByb3BlcnRpZXM6IENvbnZQcm9wZXJ0eURlZltdO1xufVxuXG4vKiogRWRnZSB0eXBlIGluZm8gZnJvbSBTSE9XIEVER0UgVFlQRVMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRnZVR5cGVJbmZvIHtcbiAgbmFtZTogc3RyaW5nO1xuICBwcm9wZXJ0aWVzOiBDb252UHJvcGVydHlEZWZbXTtcbn1cblxuLyoqIExhYmVsIGRlZmluaXRpb24gdXNlZCB3aGVuIGNyZWF0aW5nIGNsb3NlZCBncmFwaHMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFiZWxEZWYge1xuICBuYW1lOiBzdHJpbmc7XG4gIHByb3BlcnRpZXM6IENvbnZQcm9wZXJ0eURlZltdO1xufVxuXG4vKiogUHJvcGVydHkgZGVmaW5pdGlvbiBmb3IgY29udmVuaWVuY2UgQVBJICh1c2VzIHN0cmluZyB0eXBlIG5hbWUpICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnZQcm9wZXJ0eURlZiB7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nOyAvLyBHUUwgdHlwZSBuYW1lOiBcIlNUUklOR1wiLCBcIklOVDY0XCIsIFwiRE9VQkxFXCIsIGV0Yy5cbn1cblxuLyoqIFByb3BlcnR5IGluIGFuIGluZGV4IGRlZmluaXRpb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW5kZXhQcm9wZXJ0eSB7XG4gIG5hbWU6IHN0cmluZztcbiAgcHJlZml4TGVuZ3RoPzogbnVtYmVyOyAvLyAwIG9yIHVuZGVmaW5lZCA9IG5vIHByZWZpeCwgPjAgPSBwcmVmaXggbGVuZ3RoIGZvciBTVFJJTkdcbn1cblxuLyoqIEluZGV4IGluZm8gZnJvbSBTSE9XIElOREVYICovXG5leHBvcnQgaW50ZXJmYWNlIEluZGV4SW5mbyB7XG4gIGluZGV4TmFtZTogc3RyaW5nO1xuICBlbnRpdHlUeXBlOiBzdHJpbmc7IC8vIFwiTk9ERVwiIG9yIFwiRURHRVwiXG4gIGxhYmVsOiBzdHJpbmc7XG4gIHByb3BlcnR5OiBzdHJpbmc7XG4gIHByZWZpeExlbmd0aD86IG51bWJlcjtcbiAgc3RhdHVzOiBzdHJpbmc7XG4gIHByb2dyZXNzOiBzdHJpbmc7XG4gIGluZGV4ZWRDb3VudDogbnVtYmVyO1xuICB0b3RhbENvdW50OiBudW1iZXI7XG4gIGVycm9yOiBzdHJpbmc7XG59XG5cbi8qKiBGdWxsdGV4dCBpbmRleCBpbmZvIGZyb20gU0hPVyBGVUxMVEVYVCAqL1xuZXhwb3J0IGludGVyZmFjZSBGdWxsdGV4dEluZm8ge1xuICBpbmRleE5hbWU6IHN0cmluZztcbiAgZW50aXR5VHlwZTogc3RyaW5nOyAvLyBcIk5PREVcIiBvciBcIkVER0VcIlxuICBzY2hlbWFOYW1lOiBzdHJpbmc7XG4gIHByb3BlcnRpZXM6IHN0cmluZztcbiAgYW5hbHl6ZXI6IHN0cmluZztcbiAgc3RhdHVzOiBzdHJpbmc7XG4gIGRvY0NvdW50OiBudW1iZXI7XG4gIHByb2dyZXNzOiBzdHJpbmc7XG59XG5cbi8qKiBUYXNrIGluZm8gZnJvbSBTSE9XIFRBU0tTICovXG5leHBvcnQgaW50ZXJmYWNlIFRhc2tJbmZvIHtcbiAgdGFza0lkOiBzdHJpbmc7XG4gIHR5cGU6IHN0cmluZztcbiAgcXVlcnk6IHN0cmluZztcbiAgYWxnb05hbWU6IHN0cmluZztcbiAgc3RhdHVzOiBzdHJpbmc7XG4gIHN0YXJ0ZWRBdDogc3RyaW5nO1xuICBwcm9ncmVzczogc3RyaW5nO1xuICBwYXJhbWV0ZXJzOiBzdHJpbmc7XG4gIG5vZGVzV3JpdHRlbjogbnVtYmVyO1xuICBjb21wdXRlVGltZU1zOiBudW1iZXI7XG4gIHdyaXRlVGltZU1zOiBudW1iZXI7XG59XG5cbi8qKiBQcm9jZXNzIGluZm8gZnJvbSBUT1AgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvY2Vzc0luZm8ge1xuICBxdWVyeUlkOiBzdHJpbmc7XG4gIHF1ZXJ5VGV4dDogc3RyaW5nO1xuICBzdGFydFRpbWU6IHN0cmluZztcbiAgZHVyYXRpb25NczogbnVtYmVyO1xuICBzdGF0dXM6IHN0cmluZztcbn1cblxuLyoqIEdyYXBoIHN0YXRpc3RpY3MgZnJvbSBkYi5zdGF0cygpICovXG5leHBvcnQgaW50ZXJmYWNlIEdyYXBoU3RhdHMge1xuICBncmFwaE5hbWU6IHN0cmluZztcbiAgbm9kZUNvdW50OiBudW1iZXI7XG4gIGVkZ2VDb3VudDogbnVtYmVyO1xuICBsYWJlbENvdW50czogUmVjb3JkPHN0cmluZywgbnVtYmVyPjtcbiAgZWRnZUxhYmVsQ291bnRzOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+O1xuICBub2RlUHJvcGVydHlTdGF0czogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgbnVtYmVyPj47XG4gIGVkZ2VQcm9wZXJ0eVN0YXRzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+Pjtcbn1cblxuLyoqIFJlc3BvbnNlIGZvciBHUUwtYmFzZWQgaW5zZXJ0IG9wZXJhdGlvbnMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW5zZXJ0R3FsUmVzcG9uc2Uge1xuICByb3dzQWZmZWN0ZWQ6IG51bWJlcjtcbn1cblxuLyoqIEFsZ29yaXRobSBpbmZvIGZyb20gU0hPVyBBTEdPUyAqL1xuZXhwb3J0IGludGVyZmFjZSBBbGdvSW5mbyB7XG4gIG5hbWU6IHN0cmluZztcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBwYXJhbWV0ZXJzOiBzdHJpbmc7XG59XG5cbi8qKlxuICogT25lIHN0YWdlIHJvdyBmcm9tIGEgQ0FMTCBhaS5yZWFkIC8gYWkuZ3FsIFlJRUxEIHN0cmVhbS5cbiAqIFN0YWdlIG5hbWVzIGluY2x1ZGU6IHN0YXJ0LCByb3V0aW5nLCBpbnRlbnRfZXh0cmFjdGlvbiwgZGVzY3JpYmVfYWxnb3JpdGhtLFxuICogZ2VuZXJhdGlvbiwgdmFsaWRhdGlvbiwgZXhlY3V0aW9uLCBmaW5hbCwgZXJyb3IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWlTdGFnZSB7XG4gIHN0YWdlOiBzdHJpbmc7XG4gIGRldGFpbDogc3RyaW5nO1xuICBlbGFwc2VkTXM6IG51bWJlcjtcbiAgdG9rZW5zSW5wdXQ6IG51bWJlcjtcbiAgdG9rZW5zT3V0cHV0OiBudW1iZXI7XG4gIHRva2Vuc0NhY2hlZDogbnVtYmVyO1xuICAvKiogU3RhZ2Utc3BlY2lmaWMgcGF5bG9hZCAocG9seW1vcnBoaWMgSlNPTiBmcm9tIHNlcnZlcikuICovXG4gIGRhdGE6IGFueTtcbn1cblxuLyoqXG4gKiBSZXN1bHQgb2YgYSBjbGllbnQuYWlSZWFkKCkgLyBjbGllbnQuYWlHcWwoKSBjYWxsLlxuICpcbiAqIEZvciBhaVJlYWQ6IGBkYXRhYCBpcyB0aGUgUmVzcG9uc2UgZnJvbSByZS1leGVjdXRpbmcgdGhlIGdlbmVyYXRlZCBHUUwuXG4gKiBGb3IgYWlHcWw6ICBgZGF0YWAgaXMgYWx3YXlzIG51bGwgKGdlbmVyYXRpb24tb25seTsgY2FsbGVyIHJlcnVucyBtYW51YWxseSkuXG4gKiBPbiBBSS1zaWRlIGVycm9ycywgYHN1Y2Nlc3M9ZmFsc2VgLCBgZXJyb3JgIGlzIHBvcHVsYXRlZCwgYW5kIGBkYXRhYCBpcyBudWxsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFpUmVhZFJlc3VsdCB7XG4gIHN0YWdlczogQWlTdGFnZVtdO1xuICBnZW5lcmF0ZWRHcWw6IHN0cmluZyB8IG51bGw7XG4gIGRhdGE6IFJlc3BvbnNlIHwgbnVsbDtcbiAgc3VjY2VzczogYm9vbGVhbjtcbiAgZXJyb3I6IHN0cmluZyB8IG51bGw7XG4gIHRvdGFsRWxhcHNlZE1zOiBudW1iZXI7XG4gIHRvdGFsVG9rZW5zSW5wdXQ6IG51bWJlcjtcbiAgdG90YWxUb2tlbnNPdXRwdXQ6IG51bWJlcjtcbiAgdG90YWxUb2tlbnNDYWNoZWQ6IG51bWJlcjtcbn1cblxuLy8gQ29udk5vZGUgYW5kIENvbnZFZGdlIGhhdmUgYmVlbiByZW1vdmVkLlxuLy8gVXNlIE5vZGVEYXRhIGFuZCBFZGdlRGF0YSBmcm9tIGdyYXBoX21vZGVscyBpbnN0ZWFkLlxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gSGVscGVyIEZ1bmN0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBQYXJzZSBhIGNvbW1hLXNlcGFyYXRlZCBwcm9wZXJ0eSBkZWZpbml0aW9uIHN0cmluZyBsaWtlIFwiYWdlIElOVEVHRVIsIG5hbWUgU1RSSU5HXCJcbiAqIGludG8gYW4gYXJyYXkgb2YgQ29udlByb3BlcnR5RGVmLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VQcm9wZXJ0eVN0cmluZyhzOiBzdHJpbmcpOiBDb252UHJvcGVydHlEZWZbXSB7XG4gIHMgPSBzLnRyaW0oKTtcbiAgaWYgKCFzKSByZXR1cm4gW107XG5cbiAgY29uc3QgcGFydHMgPSBzLnNwbGl0KCcsJyk7XG4gIGNvbnN0IHJlc3VsdDogQ29udlByb3BlcnR5RGVmW10gPSBbXTtcbiAgZm9yIChjb25zdCBwYXJ0IG9mIHBhcnRzKSB7XG4gICAgY29uc3QgdHJpbW1lZCA9IHBhcnQudHJpbSgpO1xuICAgIGlmICghdHJpbW1lZCkgY29udGludWU7XG4gICAgY29uc3QgdG9rZW5zID0gdHJpbW1lZC5zcGxpdCgvXFxzKy8pO1xuICAgIGlmICh0b2tlbnMubGVuZ3RoIDwgMikgY29udGludWU7XG4gICAgcmVzdWx0LnB1c2goeyBuYW1lOiB0b2tlbnNbMF0sIHR5cGU6IHRva2Vuc1sxXS50b1VwcGVyQ2FzZSgpIH0pO1xuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbi8qKlxuICogQ29udmVydCBhIENvbnZQcm9wZXJ0eURlZiB0eXBlIHN0cmluZyB0byBpdHMgR1FMIHJlcHJlc2VudGF0aW9uLlxuICogSWYgdGhlIHR5cGUgaXMgYWxyZWFkeSBhIHZhbGlkIEdRTCB0eXBlIG5hbWUsIHJldHVybnMgaXQgYXMtaXMgKHVwcGVyY2FzZWQpLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvcGVydHlUeXBlVG9HUUwodHlwZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiB0eXBlTmFtZS50b1VwcGVyQ2FzZSgpO1xufVxuXG4vKipcbiAqIEJ1aWxkIGEgR1FMIHByb3BlcnR5IGRlZmluaXRpb24gc3RyaW5nIGxpa2UgXCJ7YWdlIElOVDY0LCBuYW1lIFNUUklOR31cIiBmcm9tIENvbnZQcm9wZXJ0eURlZltdLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRQcm9wZXJ0eURlZlN0cmluZyhwcm9wczogQ29udlByb3BlcnR5RGVmW10pOiBzdHJpbmcge1xuICBpZiAoIXByb3BzIHx8IHByb3BzLmxlbmd0aCA9PT0gMCkgcmV0dXJuICd7fSc7XG4gIGNvbnN0IHBhcnRzID0gcHJvcHMubWFwKHAgPT4gYFxcYCR7cC5uYW1lfVxcYCAke3Byb3BlcnR5VHlwZVRvR1FMKHAudHlwZSl9YCk7XG4gIHJldHVybiAneycgKyBwYXJ0cy5qb2luKCcsICcpICsgJ30nO1xufVxuXG4vKipcbiAqIEJ1aWxkIHRoZSBwcm9wZXJ0eSBsaXN0IGZvciBDUkVBVEUgSU5ERVgsIGUuZy4gXCJwcm9wMSwgcHJvcDIoMTApXCIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZEluZGV4UHJvcGVydHlTdHJpbmcocHJvcHM6IEluZGV4UHJvcGVydHlbXSk6IHN0cmluZyB7XG4gIHJldHVybiBwcm9wcy5tYXAocCA9PiB7XG4gICAgaWYgKHAucHJlZml4TGVuZ3RoICYmIHAucHJlZml4TGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIGBcXGAke3AubmFtZX1cXGAoJHtwLnByZWZpeExlbmd0aH0pYDtcbiAgICB9XG4gICAgcmV0dXJuIGBcXGAke3AubmFtZX1cXGBgO1xuICB9KS5qb2luKCcsICcpO1xufVxuXG4vKipcbiAqIEZvcm1hdCBhIEphdmFTY3JpcHQgdmFsdWUgYXMgYSBHUUwgbGl0ZXJhbCBmb3IgSU5TRVJUIHN0YXRlbWVudHMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRHcWxWYWx1ZSh2OiBhbnkpOiBzdHJpbmcge1xuICBpZiAodiA9PT0gbnVsbCB8fCB2ID09PSB1bmRlZmluZWQpIHJldHVybiAnTlVMTCc7XG4gIGlmICh0eXBlb2YgdiA9PT0gJ3N0cmluZycpIHtcbiAgICBjb25zdCBlc2NhcGVkID0gdi5yZXBsYWNlKC8nL2csIFwiXFxcXCdcIik7XG4gICAgcmV0dXJuIGAnJHtlc2NhcGVkfSdgO1xuICB9XG4gIGlmICh0eXBlb2YgdiA9PT0gJ2Jvb2xlYW4nKSByZXR1cm4gdiA/ICdUUlVFJyA6ICdGQUxTRSc7XG4gIGlmICh0eXBlb2YgdiA9PT0gJ251bWJlcicpIHJldHVybiBTdHJpbmcodik7XG4gIGlmICh0eXBlb2YgdiA9PT0gJ2JpZ2ludCcpIHJldHVybiBTdHJpbmcodik7XG4gIGlmIChBcnJheS5pc0FycmF5KHYpKSB7XG4gICAgY29uc3QgZWxlbXMgPSB2Lm1hcCgoZWxlbTogYW55KSA9PiBmb3JtYXRHcWxWYWx1ZShlbGVtKSk7XG4gICAgcmV0dXJuICdbJyArIGVsZW1zLmpvaW4oJywgJykgKyAnXSc7XG4gIH1cbiAgaWYgKHR5cGVvZiB2ID09PSAnb2JqZWN0Jykge1xuICAgIGNvbnN0IGVudHJpZXMgPSBPYmplY3QuZW50cmllcyh2KTtcbiAgICBjb25zdCBwYXJ0cyA9IGVudHJpZXMubWFwKChbaywgdmFsXSkgPT4gYCR7a306ICR7Zm9ybWF0R3FsVmFsdWUodmFsKX1gKTtcbiAgICByZXR1cm4gJ3snICsgcGFydHMuam9pbignLCAnKSArICd9JztcbiAgfVxuICByZXR1cm4gYCcke1N0cmluZyh2KX0nYDtcbn1cblxuLyoqXG4gKiBCdWlsZCBhIEdRTCBwcm9wZXJ0eSB2YWx1ZSBtYXAgbGlrZSBcIntuYW1lOiAnQWxpY2UnLCBhZ2U6IDMwfVwiIGZyb20gYSBSZWNvcmQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFByb3BlcnRpZXNWYWx1ZVN0cmluZyhwcm9wczogUmVjb3JkPHN0cmluZywgYW55Pik6IHN0cmluZyB7XG4gIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhwcm9wcyk7XG4gIGlmIChrZXlzLmxlbmd0aCA9PT0gMCkgcmV0dXJuICcnO1xuICBjb25zdCBwYXJ0cyA9IGtleXMubWFwKGsgPT4gYCR7a306ICR7Zm9ybWF0R3FsVmFsdWUocHJvcHNba10pfWApO1xuICByZXR1cm4gJ3snICsgcGFydHMuam9pbignLCAnKSArICd9Jztcbn1cblxuLyoqXG4gKiBSZXR1cm4gXCJVU0UgR1JBUEggPG5hbWU+XFxuXCIgaWYgZ3JhcGhOYW1lIGlzIG5vbi1lbXB0eSwgb3RoZXJ3aXNlIFwiXCIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VHcmFwaFByZWZpeChncmFwaE5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmICghZ3JhcGhOYW1lKSByZXR1cm4gJyc7XG4gIHJldHVybiBgVVNFIEdSQVBIICR7Z3JhcGhOYW1lfVxcbmA7XG59XG5cbi8qKlxuICogQ29udmVydCBEQlR5cGUgdG8gR1FMIGtleXdvcmQgXCJOT0RFXCIgb3IgXCJFREdFXCIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkYlR5cGVUb0tleXdvcmQoZHQ6IERCVHlwZSk6IHN0cmluZyB7XG4gIHJldHVybiBkdCA9PT0gREJUeXBlLkVER0UgPyAnRURHRScgOiAnTk9ERSc7XG59XG4iXX0=
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVuaWVuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvY29udmVuaWVuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7QUFpTUgsa0RBY0M7QUFNRCw4Q0FFQztBQUtELHdEQUlDO0FBS0QsNERBT0M7QUFLRCx3Q0FtQkM7QUFLRCxnRUFLQztBQUtELHdDQUdDO0FBS0QsMENBRUM7QUF4UkQscURBQXFEO0FBQ3JELElBQVksTUFHWDtBQUhELFdBQVksTUFBTTtJQUNoQixtQ0FBUSxDQUFBO0lBQ1IsbUNBQVEsQ0FBQTtBQUNWLENBQUMsRUFIVyxNQUFNLHNCQUFOLE1BQU0sUUFHakI7QUFFRDs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxJQUFZLFVBSVg7QUFKRCxXQUFZLFVBQVU7SUFDcEIsK0NBQVUsQ0FBQTtJQUNWLHFEQUFhLENBQUE7SUFDYiwrQ0FBVSxDQUFBO0FBQ1osQ0FBQyxFQUpXLFVBQVUsMEJBQVYsVUFBVSxRQUlyQjtBQXVKRCwyQ0FBMkM7QUFDM0MsdURBQXVEO0FBRXZELGdGQUFnRjtBQUNoRixtQkFBbUI7QUFDbkIsZ0ZBQWdGO0FBRWhGOzs7R0FHRztBQUNILFNBQWdCLG1CQUFtQixDQUFDLENBQVM7SUFDM0MsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNiLElBQUksQ0FBQyxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFFbEIsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQixNQUFNLE1BQU0sR0FBc0IsRUFBRSxDQUFDO0lBQ3JDLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7UUFDekIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxPQUFPO1lBQUUsU0FBUztRQUN2QixNQUFNLE1BQU0sR0FBRyxPQUFPLENB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Tm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuaW1wb3J0IHsgUHJvcGVydHlUeXBlIH0gZnJvbSAnLi9lbnVtcyc7XG5pbXBvcnQgdHlwZSB7IFJlc3BvbnNlIH0gZnJvbSAnLi4vcmVzcG9uc2UnO1xuXG4vKiogRGlzdGluZ3Vpc2hlcyBiZXR3ZWVuIG5vZGUgYW5kIGVkZ2Ugb3BlcmF0aW9ucyAqL1xuZXhwb3J0IGVudW0gREJUeXBlIHtcbiAgTk9ERSA9IDAsXG4gIEVER0UgPSAxLFxufVxuXG4vKipcbiAqIENvbnRyb2xzIHRoZSBpbnNlcnQgbW9kZSBmb3IgR1FMLWJhc2VkIGluc2VydCBvcGVyYXRpb25zLlxuICpcbiAqICAgLSBgTm9ybWFsYDogICAgSU5TRVJUIOKAlCBlcnJvciBpZiBgX2lkYCBhbHJlYWR5IGV4aXN0cy5cbiAqICAgLSBgT3ZlcndyaXRlYDogSU5TRVJUIE9WRVJXUklURSDigJQgUkVQTEFDRSBleGlzdGluZyBlbnRpdHkgd2hvbGVzYWxlXG4gKiAgICAgb24gZHVwbGljYXRlIGBfaWRgLiBQcm9wZXJ0aWVzIG5vdCBpbiB0aGUgd3JpdGUgYXJlIExPU1QuXG4gKiAgIC0gYFVwc2VydGA6ICAgIFVQU0VSVCDigJQgTUVSR0UgbmV3IHByb3BlcnRpZXMgaW50byBleGlzdGluZyBlbnRpdHlcbiAqICAgICBvbiBkdXBsaWNhdGUgYF9pZGAuIFByb3BlcnRpZXMgbm90IGluIHRoZSB3cml0ZSBhcmUgUFJFU0VSVkVEO1xuICogICAgIHByb3BlcnRpZXMgaW4gdGhlIHdyaXRlIE9WRVJXUklURSBleGlzdGluZyB2YWx1ZXMuIEZhbGxzIGJhY2sgdG9cbiAqICAgICBwbGFpbiBpbnNlcnQgd2hlbiBubyBgX2lkYCBtYXRjaGVzLlxuICpcbiAqIGBPdmVyd3JpdGVgIGFuZCBgVXBzZXJ0YCBhcmUgZGlmZmVyZW50IHNlbWFudGljcyBvbiBleGlzdGluZyByb3dzLlxuICogQ2hvb3NlIGBVcHNlcnRgIChtZXJnZSkgZm9yIHBhcnRpYWwtdXBkYXRlIHdvcmtsb2FkcyB3aGVyZSB5b3UgZG9uJ3RcbiAqIHdhbnQgdG8gbG9zZSBleGlzdGluZyBmaWVsZHM7IGNob29zZSBgT3ZlcndyaXRlYCAocmVwbGFjZSkgZm9yXG4gKiBrbm93bi1jbGVhbiByZS1pbmdlc3Qgb2YgYW4gZW50aXR5J3MgZnVsbCBzdGF0ZS5cbiAqL1xuZXhwb3J0IGVudW0gSW5zZXJ0VHlwZSB7XG4gIE5vcm1hbCA9IDAsXG4gIE92ZXJ3cml0ZSA9IDEsXG4gIFVwc2VydCA9IDIsXG59XG5cbi8qKiBMYWJlbCBpbmZvIGZyb20gU0hPVyBMQUJFTFMuXG4gKlxuICogR1FMIHN1cHBvcnRzIG11bHRpLWxhYmVsIG5vZGVzIChlLmcuIChuOlBlcnNvbjpFbXBsb3llZSkpLCBzbyB0aGVcbiAqIHNlcnZlciByZXR1cm5zIGxhYmVscyBhcyBhIGxpc3QgZXZlbiB3aGVuIHRoZXJlIGlzIG9ubHkgb25lLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExhYmVsSW5mbyB7XG4gIGxhYmVsczogc3RyaW5nW107XG4gIHR5cGU6IHN0cmluZzsgLy8gXCJOT0RFXCIgb3IgXCJFREdFXCJcbn1cblxuLyoqIE5vZGUgdHlwZSBpbmZvIGZyb20gU0hPVyBOT0RFIFRZUEVTICovXG5leHBvcnQgaW50ZXJmYWNlIE5vZGVUeXBlSW5mbyB7XG4gIG5hbWU6IHN0cmluZztcbiAgcHJvcGVydGllczogQ29udlByb3BlcnR5RGVmW107XG59XG5cbi8qKiBFZGdlIHR5cGUgaW5mbyBmcm9tIFNIT1cgRURHRSBUWVBFUyAqL1xuZXhwb3J0IGludGVyZmFjZSBFZGdlVHlwZUluZm8ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHByb3BlcnRpZXM6IENvbnZQcm9wZXJ0eURlZltdO1xufVxuXG4vKiogTGFiZWwgZGVmaW5pdGlvbiB1c2VkIHdoZW4gY3JlYXRpbmcgY2xvc2VkIGdyYXBocyAqL1xuZXhwb3J0IGludGVyZmFjZSBMYWJlbERlZiB7XG4gIG5hbWU6IHN0cmluZztcbiAgcHJvcGVydGllczogQ29udlByb3BlcnR5RGVmW107XG59XG5cbi8qKiBQcm9wZXJ0eSBkZWZpbml0aW9uIGZvciBjb252ZW5pZW5jZSBBUEkgKHVzZXMgc3RyaW5nIHR5cGUgbmFtZSkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udlByb3BlcnR5RGVmIHtcbiAgbmFtZTogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7IC8vIEdRTCB0eXBlIG5hbWU6IFwiU1RSSU5HXCIsIFwiSU5UNjRcIiwgXCJET1VCTEVcIiwgZXRjLlxufVxuXG4vKiogUHJvcGVydHkgaW4gYW4gaW5kZXggZGVmaW5pdGlvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbmRleFByb3BlcnR5IHtcbiAgbmFtZTogc3RyaW5nO1xuICBwcmVmaXhMZW5ndGg/OiBudW1iZXI7IC8vIDAgb3IgdW5kZWZpbmVkID0gbm8gcHJlZml4LCA+MCA9IHByZWZpeCBsZW5ndGggZm9yIFNUUklOR1xufVxuXG4vKiogSW5kZXggaW5mbyBmcm9tIFNIT1cgSU5ERVggKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW5kZXhJbmZvIHtcbiAgaW5kZXhOYW1lOiBzdHJpbmc7XG4gIGVudGl0eVR5cGU6IHN0cmluZzsgLy8gXCJOT0RFXCIgb3IgXCJFREdFXCJcbiAgbGFiZWw6IHN0cmluZztcbiAgcHJvcGVydHk6IHN0cmluZztcbiAgcHJlZml4TGVuZ3RoPzogbnVtYmVyO1xuICBzdGF0dXM6IHN0cmluZztcbiAgcHJvZ3Jlc3M6IHN0cmluZztcbiAgaW5kZXhlZENvdW50OiBudW1iZXI7XG4gIHRvdGFsQ291bnQ6IG51bWJlcjtcbiAgZXJyb3I6IHN0cmluZztcbn1cblxuLyoqIEZ1bGx0ZXh0IGluZGV4IGluZm8gZnJvbSBTSE9XIEZVTExURVhUICovXG5leHBvcnQgaW50ZXJmYWNlIEZ1bGx0ZXh0SW5mbyB7XG4gIGluZGV4TmFtZTogc3RyaW5nO1xuICBlbnRpdHlUeXBlOiBzdHJpbmc7IC8vIFwiTk9ERVwiIG9yIFwiRURHRVwiXG4gIHNjaGVtYU5hbWU6IHN0cmluZztcbiAgcHJvcGVydGllczogc3RyaW5nO1xuICBhbmFseXplcjogc3RyaW5nO1xuICBzdGF0dXM6IHN0cmluZztcbiAgZG9jQ291bnQ6IG51bWJlcjtcbiAgcHJvZ3Jlc3M6IHN0cmluZztcbn1cblxuLyoqIFRhc2sgaW5mbyBmcm9tIFNIT1cgVEFTS1MgKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFza0luZm8ge1xuICB0YXNrSWQ6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xuICBxdWVyeTogc3RyaW5nO1xuICBhbGdvTmFtZTogc3RyaW5nO1xuICBzdGF0dXM6IHN0cmluZztcbiAgc3RhcnRlZEF0OiBzdHJpbmc7XG4gIHByb2dyZXNzOiBzdHJpbmc7XG4gIHBhcmFtZXRlcnM6IHN0cmluZztcbiAgbm9kZXNXcml0dGVuOiBudW1iZXI7XG4gIGNvbXB1dGVUaW1lTXM6IG51bWJlcjtcbiAgd3JpdGVUaW1lTXM6IG51bWJlcjtcbn1cblxuLyoqIFByb2Nlc3MgaW5mbyBmcm9tIFRPUCAqL1xuZXhwb3J0IGludGVyZmFjZSBQcm9jZXNzSW5mbyB7XG4gIHF1ZXJ5SWQ6IHN0cmluZztcbiAgcXVlcnlUZXh0OiBzdHJpbmc7XG4gIHN0YXJ0VGltZTogc3RyaW5nO1xuICBkdXJhdGlvbk1zOiBudW1iZXI7XG4gIHN0YXR1czogc3RyaW5nO1xufVxuXG4vKiogR3JhcGggc3RhdGlzdGljcyBmcm9tIGRiLnN0YXRzKCkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3JhcGhTdGF0cyB7XG4gIGdyYXBoTmFtZTogc3RyaW5nO1xuICBub2RlQ291bnQ6IG51bWJlcjtcbiAgZWRnZUNvdW50OiBudW1iZXI7XG4gIGxhYmVsQ291bnRzOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+O1xuICBlZGdlTGFiZWxDb3VudHM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj47XG4gIG5vZGVQcm9wZXJ0eVN0YXRzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+PjtcbiAgZWRnZVByb3BlcnR5U3RhdHM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIG51bWJlcj4+O1xufVxuXG4vKiogUmVzcG9uc2UgZm9yIEdRTC1iYXNlZCBpbnNlcnQgb3BlcmF0aW9ucyAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnNlcnRHcWxSZXNwb25zZSB7XG4gIHJvd3NBZmZlY3RlZDogbnVtYmVyO1xufVxuXG4vKiogQWxnb3JpdGhtIGluZm8gZnJvbSBTSE9XIEFMR09TICovXG5leHBvcnQgaW50ZXJmYWNlIEFsZ29JbmZvIHtcbiAgbmFtZTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIHBhcmFtZXRlcnM6IHN0cmluZztcbn1cblxuLyoqXG4gKiBPbmUgc3RhZ2Ugcm93IGZyb20gYSBDQUxMIGFpLnJlYWQgLyBhaS5ncWwgWUlFTEQgc3RyZWFtLlxuICogU3RhZ2UgbmFtZXMgaW5jbHVkZTogc3RhcnQsIHJvdXRpbmcsIGludGVudF9leHRyYWN0aW9uLCBkZXNjcmliZV9hbGdvcml0aG0sXG4gKiBnZW5lcmF0aW9uLCB2YWxpZGF0aW9uLCBleGVjdXRpb24sIGZpbmFsLCBlcnJvci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBaVN0YWdlIHtcbiAgc3RhZ2U6IHN0cmluZztcbiAgZGV0YWlsOiBzdHJpbmc7XG4gIGVsYXBzZWRNczogbnVtYmVyO1xuICB0b2tlbnNJbnB1dDogbnVtYmVyO1xuICB0b2tlbnNPdXRwdXQ6IG51bWJlcjtcbiAgdG9rZW5zQ2FjaGVkOiBudW1iZXI7XG4gIC8qKiBTdGFnZS1zcGVjaWZpYyBwYXlsb2FkIChwb2x5bW9ycGhpYyBKU09OIGZyb20gc2VydmVyKS4gKi9cbiAgZGF0YTogYW55O1xufVxuXG4vKipcbiAqIFJlc3VsdCBvZiBhIGNsaWVudC5haVJlYWQoKSAvIGNsaWVudC5haUdxbCgpIGNhbGwuXG4gKlxuICogRm9yIGFpUmVhZDogYGRhdGFgIGlzIHRoZSBSZXNwb25zZSBmcm9tIHJlLWV4ZWN1dGluZyB0aGUgZ2VuZXJhdGVkIEdRTC5cbiAqIEZvciBhaUdxbDogIGBkYXRhYCBpcyBhbHdheXMgbnVsbCAoZ2VuZXJhdGlvbi1vbmx5OyBjYWxsZXIgcmVydW5zIG1hbnVhbGx5KS5cbiAqIE9uIEFJLXNpZGUgZXJyb3JzLCBgc3VjY2Vzcz1mYWxzZWAsIGBlcnJvcmAgaXMgcG9wdWxhdGVkLCBhbmQgYGRhdGFgIGlzIG51bGwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWlSZWFkUmVzdWx0IHtcbiAgc3RhZ2VzOiBBaVN0YWdlW107XG4gIGdlbmVyYXRlZEdxbDogc3RyaW5nIHwgbnVsbDtcbiAgZGF0YTogUmVzcG9uc2UgfCBudWxsO1xuICBzdWNjZXNzOiBib29sZWFuO1xuICBlcnJvcjogc3RyaW5nIHwgbnVsbDtcbiAgdG90YWxFbGFwc2VkTXM6IG51bWJlcjtcbiAgdG90YWxUb2tlbnNJbnB1dDogbnVtYmVyO1xuICB0b3RhbFRva2Vuc091dHB1dDogbnVtYmVyO1xuICB0b3RhbFRva2Vuc0NhY2hlZDogbnVtYmVyO1xufVxuXG4vLyBDb252Tm9kZSBhbmQgQ29udkVkZ2UgaGF2ZSBiZWVuIHJlbW92ZWQuXG4vLyBVc2UgTm9kZURhdGEgYW5kIEVkZ2VEYXRhIGZyb20gZ3JhcGhfbW9kZWxzIGluc3RlYWQuXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBIZWxwZXIgRnVuY3Rpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFBhcnNlIGEgY29tbWEtc2VwYXJhdGVkIHByb3BlcnR5IGRlZmluaXRpb24gc3RyaW5nIGxpa2UgXCJhZ2UgSU5URUdFUiwgbmFtZSBTVFJJTkdcIlxuICogaW50byBhbiBhcnJheSBvZiBDb252UHJvcGVydHlEZWYuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVByb3BlcnR5U3RyaW5nKHM6IHN0cmluZyk6IENvbnZQcm9wZXJ0eURlZltdIHtcbiAgcyA9IHMudHJpbSgpO1xuICBpZiAoIXMpIHJldHVybiBbXTtcblxuICBjb25zdCBwYXJ0cyA9IHMuc3BsaXQoJywnKTtcbiAgY29uc3QgcmVzdWx0OiBDb252UHJvcGVydHlEZWZbXSA9IFtdO1xuICBmb3IgKGNvbnN0IHBhcnQgb2YgcGFydHMpIHtcbiAgICBjb25zdCB0cmltbWVkID0gcGFydC50cmltKCk7XG4gICAgaWYgKCF0cmltbWVkKSBjb250aW51ZTtcbiAgICBjb25zdCB0b2tlbnMgPSB0cmltbWVkLnNwbGl0KC9cXHMrLyk7XG4gICAgaWYgKHRva2Vucy5sZW5ndGggPCAyKSBjb250aW51ZTtcbiAgICByZXN1bHQucHVzaCh7IG5hbWU6IHRva2Vuc1swXSwgdHlwZTogdG9rZW5zWzFdLnRvVXBwZXJDYXNlKCkgfSk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBDb252ZXJ0IGEgQ29udlByb3BlcnR5RGVmIHR5cGUgc3RyaW5nIHRvIGl0cyBHUUwgcmVwcmVzZW50YXRpb24uXG4gKiBJZiB0aGUgdHlwZSBpcyBhbHJlYWR5IGEgdmFsaWQgR1FMIHR5cGUgbmFtZSwgcmV0dXJucyBpdCBhcy1pcyAodXBwZXJjYXNlZCkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcm9wZXJ0eVR5cGVUb0dRTCh0eXBlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHR5cGVOYW1lLnRvVXBwZXJDYXNlKCk7XG59XG5cbi8qKlxuICogQnVpbGQgYSBHUUwgcHJvcGVydHkgZGVmaW5pdGlvbiBzdHJpbmcgbGlrZSBcInthZ2UgSU5UNjQsIG5hbWUgU1RSSU5HfVwiIGZyb20gQ29udlByb3BlcnR5RGVmW10uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFByb3BlcnR5RGVmU3RyaW5nKHByb3BzOiBDb252UHJvcGVydHlEZWZbXSk6IHN0cmluZyB7XG4gIGlmICghcHJvcHMgfHwgcHJvcHMubGVuZ3RoID09PSAwKSByZXR1cm4gJ3t9JztcbiAgY29uc3QgcGFydHMgPSBwcm9wcy5tYXAocCA9PiBgXFxgJHtwLm5hbWV9XFxgICR7cHJvcGVydHlUeXBlVG9HUUwocC50eXBlKX1gKTtcbiAgcmV0dXJuICd7JyArIHBhcnRzLmpvaW4oJywgJykgKyAnfSc7XG59XG5cbi8qKlxuICogQnVpbGQgdGhlIHByb3BlcnR5IGxpc3QgZm9yIENSRUFURSBJTkRFWCwgZS5nLiBcInByb3AxLCBwcm9wMigxMClcIi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkSW5kZXhQcm9wZXJ0eVN0cmluZyhwcm9wczogSW5kZXhQcm9wZXJ0eVtdKTogc3RyaW5nIHtcbiAgcmV0dXJuIHByb3BzLm1hcChwID0+IHtcbiAgICBpZiAocC5wcmVmaXhMZW5ndGggJiYgcC5wcmVmaXhMZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gYFxcYCR7cC5uYW1lfVxcYCgke3AucHJlZml4TGVuZ3RofSlgO1xuICAgIH1cbiAgICByZXR1cm4gYFxcYCR7cC5uYW1lfVxcYGA7XG4gIH0pLmpvaW4oJywgJyk7XG59XG5cbi8qKlxuICogRm9ybWF0IGEgSmF2YVNjcmlwdCB2YWx1ZSBhcyBhIEdRTCBsaXRlcmFsIGZvciBJTlNFUlQgc3RhdGVtZW50cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEdxbFZhbHVlKHY6IGFueSk6IHN0cmluZyB7XG4gIGlmICh2ID09PSBudWxsIHx8IHYgPT09IHVuZGVmaW5lZCkgcmV0dXJuICdOVUxMJztcbiAgaWYgKHR5cGVvZiB2ID09PSAnc3RyaW5nJykge1xuICAgIGNvbnN0IGVzY2FwZWQgPSB2LnJlcGxhY2UoLycvZywgXCJcXFxcJ1wiKTtcbiAgICByZXR1cm4gYCcke2VzY2FwZWR9J2A7XG4gIH1cbiAgaWYgKHR5cGVvZiB2ID09PSAnYm9vbGVhbicpIHJldHVybiB2ID8gJ1RSVUUnIDogJ0ZBTFNFJztcbiAgaWYgKHR5cGVvZiB2ID09PSAnbnVtYmVyJykgcmV0dXJuIFN0cmluZyh2KTtcbiAgaWYgKHR5cGVvZiB2ID09PSAnYmlnaW50JykgcmV0dXJuIFN0cmluZyh2KTtcbiAgaWYgKEFycmF5LmlzQXJyYXkodikpIHtcbiAgICBjb25zdCBlbGVtcyA9IHYubWFwKChlbGVtOiBhbnkpID0+IGZvcm1hdEdxbFZhbHVlKGVsZW0pKTtcbiAgICByZXR1cm4gJ1snICsgZWxlbXMuam9pbignLCAnKSArICddJztcbiAgfVxuICBpZiAodHlwZW9mIHYgPT09ICdvYmplY3QnKSB7XG4gICAgY29uc3QgZW50cmllcyA9IE9iamVjdC5lbnRyaWVzKHYpO1xuICAgIGNvbnN0IHBhcnRzID0gZW50cmllcy5tYXAoKFtrLCB2YWxdKSA9PiBgJHtrfTogJHtmb3JtYXRHcWxWYWx1ZSh2YWwpfWApO1xuICAgIHJldHVybiAneycgKyBwYXJ0cy5qb2luKCcsICcpICsgJ30nO1xuICB9XG4gIHJldHVybiBgJyR7U3RyaW5nKHYpfSdgO1xufVxuXG4vKipcbiAqIEJ1aWxkIGEgR1FMIHByb3BlcnR5IHZhbHVlIG1hcCBsaWtlIFwie25hbWU6ICdBbGljZScsIGFnZTogMzB9XCIgZnJvbSBhIFJlY29yZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkUHJvcGVydGllc1ZhbHVlU3RyaW5nKHByb3BzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogc3RyaW5nIHtcbiAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKHByb3BzKTtcbiAgaWYgKGtleXMubGVuZ3RoID09PSAwKSByZXR1cm4gJyc7XG4gIGNvbnN0IHBhcnRzID0ga2V5cy5tYXAoayA9PiBgJHtrfTogJHtmb3JtYXRHcWxWYWx1ZShwcm9wc1trXSl9YCk7XG4gIHJldHVybiAneycgKyBwYXJ0cy5qb2luKCcsICcpICsgJ30nO1xufVxuXG4vKipcbiAqIFJldHVybiBcIlVTRSBHUkFQSCA8bmFtZT5cXG5cIiBpZiBncmFwaE5hbWUgaXMgbm9uLWVtcHR5LCBvdGhlcndpc2UgXCJcIi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUdyYXBoUHJlZml4KGdyYXBoTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKCFncmFwaE5hbWUpIHJldHVybiAnJztcbiAgcmV0dXJuIGBVU0UgR1JBUEggJHtncmFwaE5hbWV9XFxuYDtcbn1cblxuLyoqXG4gKiBDb252ZXJ0IERCVHlwZSB0byBHUUwga2V5d29yZCBcIk5PREVcIiBvciBcIkVER0VcIi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRiVHlwZVRvS2V5d29yZChkdDogREJUeXBlKTogc3RyaW5nIHtcbiAgcmV0dXJuIGR0ID09PSBEQlR5cGUuRURHRSA/ICdFREdFJyA6ICdOT0RFJztcbn1cbiJdfQ==
@@ -1,15 +1,38 @@
1
1
  /**
2
2
  * Graph entity types for GQLDB Node.js driver.
3
3
  */
4
- /** Graph node */
4
+ /**
5
+ * Graph node.
6
+ *
7
+ * `id` and `uuid` semantics (gqldb 6.1.147+):
8
+ *
9
+ * - `id` is the user-facing identifier — user-provided string or
10
+ * the system auto-generated form. Use this when round-tripping
11
+ * identifiers through user code or external systems.
12
+ * - `uuid` is the system numeric ID (uint64) formatted as decimal.
13
+ * Stable, opaque, always available. Use this when you need a
14
+ * stable internal handle: cache keys, log correlation, dedup
15
+ * hashes. Treated as a string here to avoid uint64 precision
16
+ * loss in JavaScript above 2^53.
17
+ *
18
+ * `uuid` is the empty string when talking to a pre-6.1.147 server
19
+ * (the wire format had no InternalID trailer). Fall back to `id`
20
+ * for identity in that case.
21
+ */
5
22
  export interface GqldbNode {
6
23
  id: string;
24
+ /** System numeric ID, decimal-formatted; '' on pre-6.1.147 servers */
25
+ uuid: string;
7
26
  labels: string[];
8
27
  properties: Record<string, any>;
9
28
  }
10
- /** Graph edge */
29
+ /**
30
+ * Graph edge. See {@link GqldbNode} for the `id` / `uuid` semantics.
31
+ */
11
32
  export interface GqldbEdge {
12
33
  id: string;
34
+ /** System numeric ID, decimal-formatted; '' on pre-6.1.147 servers */
35
+ uuid: string;
13
36
  label: string;
14
37
  fromNodeId: string;
15
38
  toNodeId: string;
@@ -33,6 +56,8 @@ export interface NodeData {
33
56
  }
34
57
  /** Data for an edge to be inserted */
35
58
  export interface EdgeData {
59
+ /** Optional custom edge ID; requires EDGE_ID enabled on the target graph (if empty, auto-generated) */
60
+ id?: string;
36
61
  label: string;
37
62
  fromNodeId: string;
38
63
  toNodeId: string;
@@ -3,4 +3,4 @@
3
3
  * Graph entity types for GQLDB Node.js driver.
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhfbW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2dyYXBoX21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdyYXBoIGVudGl0eSB0eXBlcyBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuLyoqIEdyYXBoIG5vZGUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3FsZGJOb2RlIHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWxzOiBzdHJpbmdbXTtcbiAgcHJvcGVydGllczogUmVjb3JkPHN0cmluZywgYW55Pjtcbn1cblxuLyoqIEdyYXBoIGVkZ2UgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3FsZGJFZGdlIHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZztcbiAgZnJvbU5vZGVJZDogc3RyaW5nO1xuICB0b05vZGVJZDogc3RyaW5nO1xuICBwcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xufVxuXG4vKiogR3JhcGggcGF0aCBjb25zaXN0aW5nIG9mIG5vZGVzIGFuZCBlZGdlcyAqL1xuZXhwb3J0IGludGVyZmFjZSBHcWxkYlBhdGgge1xuICBub2RlczogR3FsZGJOb2RlW107XG4gIGVkZ2VzOiBHcWxkYkVkZ2VbXTtcbn1cblxuLyoqIEVycm9yIHZhbHVlIGZyb20gVFJZL0NBVENIIGhhbmRsaW5nICovXG5leHBvcnQgaW50ZXJmYWNlIEdxbGRiRXJyb3Ige1xuICBjb2RlOiBudW1iZXI7XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqIERhdGEgZm9yIGEgbm9kZSB0byBiZSBpbnNlcnRlZCAqL1xuZXhwb3J0IGludGVyZmFjZSBOb2RlRGF0YSB7XG4gIGlkPzogc3RyaW5nO1xuICBsYWJlbHM6IHN0cmluZ1tdO1xuICBwcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xufVxuXG4vKiogRGF0YSBmb3IgYW4gZWRnZSB0byBiZSBpbnNlcnRlZCAqL1xuZXhwb3J0IGludGVyZmFjZSBFZGdlRGF0YSB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGZyb21Ob2RlSWQ6IHN0cmluZztcbiAgdG9Ob2RlSWQ6IHN0cmluZztcbiAgcHJvcGVydGllczogUmVjb3JkPHN0cmluZywgYW55Pjtcbn1cblxuLyoqIEEgbm9kZSBleHBvcnRlZCBmcm9tIHRoZSBkYXRhYmFzZSAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHBvcnRlZE5vZGUge1xuICBpZDogc3RyaW5nO1xuICBsYWJlbHM6IHN0cmluZ1tdO1xuICBwcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xufVxuXG4vKiogQW4gZWRnZSBleHBvcnRlZCBmcm9tIHRoZSBkYXRhYmFzZSAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHBvcnRlZEVkZ2Uge1xuICBpZDogc3RyaW5nO1xuICBsYWJlbDogc3RyaW5nO1xuICBmcm9tTm9kZUlkOiBzdHJpbmc7XG4gIHRvTm9kZUlkOiBzdHJpbmc7XG4gIHByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIGFueT47XG59XG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhfbW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2dyYXBoX21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdyYXBoIGVudGl0eSB0eXBlcyBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuLyoqXG4gKiBHcmFwaCBub2RlLlxuICpcbiAqIGBpZGAgYW5kIGB1dWlkYCBzZW1hbnRpY3MgKGdxbGRiIDYuMS4xNDcrKTpcbiAqXG4gKiAgIC0gYGlkYCBpcyB0aGUgdXNlci1mYWNpbmcgaWRlbnRpZmllciDigJQgdXNlci1wcm92aWRlZCBzdHJpbmcgb3JcbiAqICAgICB0aGUgc3lzdGVtIGF1dG8tZ2VuZXJhdGVkIGZvcm0uIFVzZSB0aGlzIHdoZW4gcm91bmQtdHJpcHBpbmdcbiAqICAgICBpZGVudGlmaWVycyB0aHJvdWdoIHVzZXIgY29kZSBvciBleHRlcm5hbCBzeXN0ZW1zLlxuICogICAtIGB1dWlkYCBpcyB0aGUgc3lzdGVtIG51bWVyaWMgSUQgKHVpbnQ2NCkgZm9ybWF0dGVkIGFzIGRlY2ltYWwuXG4gKiAgICAgU3RhYmxlLCBvcGFxdWUsIGFsd2F5cyBhdmFpbGFibGUuIFVzZSB0aGlzIHdoZW4geW91IG5lZWQgYVxuICogICAgIHN0YWJsZSBpbnRlcm5hbCBoYW5kbGU6IGNhY2hlIGtleXMsIGxvZyBjb3JyZWxhdGlvbiwgZGVkdXBcbiAqICAgICBoYXNoZXMuIFRyZWF0ZWQgYXMgYSBzdHJpbmcgaGVyZSB0byBhdm9pZCB1aW50NjQgcHJlY2lzaW9uXG4gKiAgICAgbG9zcyBpbiBKYXZhU2NyaXB0IGFib3ZlIDJeNTMuXG4gKlxuICogYHV1aWRgIGlzIHRoZSBlbXB0eSBzdHJpbmcgd2hlbiB0YWxraW5nIHRvIGEgcHJlLTYuMS4xNDcgc2VydmVyXG4gKiAodGhlIHdpcmUgZm9ybWF0IGhhZCBubyBJbnRlcm5hbElEIHRyYWlsZXIpLiBGYWxsIGJhY2sgdG8gYGlkYFxuICogZm9yIGlkZW50aXR5IGluIHRoYXQgY2FzZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcWxkYk5vZGUge1xuICBpZDogc3RyaW5nO1xuICAvKiogU3lzdGVtIG51bWVyaWMgSUQsIGRlY2ltYWwtZm9ybWF0dGVkOyAnJyBvbiBwcmUtNi4xLjE0NyBzZXJ2ZXJzICovXG4gIHV1aWQ6IHN0cmluZztcbiAgbGFiZWxzOiBzdHJpbmdbXTtcbiAgcHJvcGVydGllczogUmVjb3JkPHN0cmluZywgYW55Pjtcbn1cblxuLyoqXG4gKiBHcmFwaCBlZGdlLiBTZWUge0BsaW5rIEdxbGRiTm9kZX0gZm9yIHRoZSBgaWRgIC8gYHV1aWRgIHNlbWFudGljcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcWxkYkVkZ2Uge1xuICBpZDogc3RyaW5nO1xuICAvKiogU3lzdGVtIG51bWVyaWMgSUQsIGRlY2ltYWwtZm9ybWF0dGVkOyAnJyBvbiBwcmUtNi4xLjE0NyBzZXJ2ZXJzICovXG4gIHV1aWQ6IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZztcbiAgZnJvbU5vZGVJZDogc3RyaW5nO1xuICB0b05vZGVJZDogc3RyaW5nO1xuICBwcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xufVxuXG4vKiogR3JhcGggcGF0aCBjb25zaXN0aW5nIG9mIG5vZGVzIGFuZCBlZGdlcyAqL1xuZXhwb3J0IGludGVyZmFjZSBHcWxkYlBhdGgge1xuICBub2RlczogR3FsZGJOb2RlW107XG4gIGVkZ2VzOiBHcWxkYkVkZ2VbXTtcbn1cblxuLyoqIEVycm9yIHZhbHVlIGZyb20gVFJZL0NBVENIIGhhbmRsaW5nICovXG5leHBvcnQgaW50ZXJmYWNlIEdxbGRiRXJyb3Ige1xuICBjb2RlOiBudW1iZXI7XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuLyoqIERhdGEgZm9yIGEgbm9kZSB0byBiZSBpbnNlcnRlZCAqL1xuZXhwb3J0IGludGVyZmFjZSBOb2RlRGF0YSB7XG4gIGlkPzogc3RyaW5nO1xuICBsYWJlbHM6IHN0cmluZ1tdO1xuICBwcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xufVxuXG4vKiogRGF0YSBmb3IgYW4gZWRnZSB0byBiZSBpbnNlcnRlZCAqL1xuZXhwb3J0IGludGVyZmFjZSBFZGdlRGF0YSB7XG4gIC8qKiBPcHRpb25hbCBjdXN0b20gZWRnZSBJRDsgcmVxdWlyZXMgRURHRV9JRCBlbmFibGVkIG9uIHRoZSB0YXJnZXQgZ3JhcGggKGlmIGVtcHR5LCBhdXRvLWdlbmVyYXRlZCkgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGZyb21Ob2RlSWQ6IHN0cmluZztcbiAgdG9Ob2RlSWQ6IHN0cmluZztcbiAgcHJvcGVydGllczogUmVjb3JkPHN0cmluZywgYW55Pjtcbn1cblxuLyoqIEEgbm9kZSBleHBvcnRlZCBmcm9tIHRoZSBkYXRhYmFzZSAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHBvcnRlZE5vZGUge1xuICBpZDogc3RyaW5nO1xuICBsYWJlbHM6IHN0cmluZ1tdO1xuICBwcm9wZXJ0aWVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xufVxuXG4vKiogQW4gZWRnZSBleHBvcnRlZCBmcm9tIHRoZSBkYXRhYmFzZSAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHBvcnRlZEVkZ2Uge1xuICBpZDogc3RyaW5nO1xuICBsYWJlbDogc3RyaW5nO1xuICBmcm9tTm9kZUlkOiBzdHJpbmc7XG4gIHRvTm9kZUlkOiBzdHJpbmc7XG4gIHByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIGFueT47XG59XG4iXX0=
@@ -20,6 +20,19 @@ export interface TransactionInfo {
20
20
  durationMs: number;
21
21
  internalTxId: string;
22
22
  }
23
+ /**
24
+ * One row from `SHOW TRANSACTIONS` (admin DDL added by transaction-branch).
25
+ * `sessionId` is `''` when the server has not auto-derived one from peer
26
+ * info and the driver has not surfaced explicit `x-ultipa-session-id`
27
+ * metadata. See TRANSACTIONS_DRIVER_GUIDE.md §3.1.
28
+ */
29
+ export interface TransactionRow {
30
+ transactionId: string;
31
+ status: string;
32
+ readOnly: boolean;
33
+ startTime: string;
34
+ sessionId: string;
35
+ }
23
36
  /** AST cache statistics */
24
37
  export interface ASTCacheStats {
25
38
  hits: number;
@@ -3,4 +3,4 @@
3
3
  * Metadata types for GQLDB Node.js driver.
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvbWV0YWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBNZXRhZGF0YSB0eXBlcyBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuaW1wb3J0IHsgR3JhcGhUeXBlIH0gZnJvbSAnLi9lbnVtcyc7XG5cbi8qKiBJbmZvcm1hdGlvbiBhYm91dCBhIGdyYXBoICovXG5leHBvcnQgaW50ZXJmYWNlIEdyYXBoSW5mbyB7XG4gIG5hbWU6IHN0cmluZztcbiAgZ3JhcGhUeXBlOiBHcmFwaFR5cGU7XG4gIG5vZGVDb3VudDogbnVtYmVyO1xuICBlZGdlQ291bnQ6IG51bWJlcjtcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbn1cblxuLyoqIEluZm9ybWF0aW9uIGFib3V0IGEgdHJhbnNhY3Rpb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25JbmZvIHtcbiAgdHJhbnNhY3Rpb25JZDogbnVtYmVyO1xuICBzZXNzaW9uSWQ6IG51bWJlcjtcbiAgZ3JhcGhOYW1lOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBib29sZWFuO1xuICBjcmVhdGVkQXQ6IG51bWJlcjtcbiAgZHVyYXRpb25NczogbnVtYmVyO1xuICBpbnRlcm5hbFR4SWQ6IHN0cmluZztcbn1cblxuLyoqIEFTVCBjYWNoZSBzdGF0aXN0aWNzICovXG5leHBvcnQgaW50ZXJmYWNlIEFTVENhY2hlU3RhdHMge1xuICBoaXRzOiBudW1iZXI7XG4gIG1pc3NlczogbnVtYmVyO1xuICBldmljdGlvbnM6IG51bWJlcjtcbiAgZW50cmllczogbnVtYmVyO1xuICBoaXRSYXRlOiBudW1iZXI7XG59XG5cbi8qKiBQbGFuIGNhY2hlIHN0YXRpc3RpY3MgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGxhbkNhY2hlU3RhdHMge1xuICBzaXplOiBudW1iZXI7XG4gIGNhcGFjaXR5OiBudW1iZXI7XG4gIGhpdHM6IG51bWJlcjtcbiAgbWlzc2VzOiBudW1iZXI7XG4gIGhpdFJhdGU6IG51bWJlcjtcbn1cblxuLyoqIENvbWJpbmVkIGNhY2hlIHN0YXRpc3RpY3MgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2FjaGVTdGF0cyB7XG4gIGFzdFN0YXRzPzogQVNUQ2FjaGVTdGF0cztcbiAgcGxhblN0YXRzPzogUGxhbkNhY2hlU3RhdHM7XG59XG5cbi8qKiBEYXRhYmFzZSBzdGF0aXN0aWNzICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRpc3RpY3Mge1xuICBub2RlQ291bnQ6IG51bWJlcjtcbiAgZWRnZUNvdW50OiBudW1iZXI7XG4gIGxhYmVsQ291bnRzOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+O1xuICBlZGdlTGFiZWxDb3VudHM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj47XG59XG5cbi8qKiBDUFUgbWV0cmljcyAqL1xuZXhwb3J0IGludGVyZmFjZSBDcHVNZXRyaWNzIHtcbiAgcHJvY2Vzc1BlcmNlbnQ6IG51bWJlcjtcbiAgc3lzdGVtUGVyY2VudDogbnVtYmVyO1xuICBudW1Db3JlczogbnVtYmVyO1xufVxuXG4vKiogTWVtb3J5IG1ldHJpY3MgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWVtb3J5TWV0cmljcyB7XG4gIHByb2Nlc3NSc3M6IG51bWJlcjtcbiAgaGVhcEFsbG9jOiBudW1iZXI7XG4gIGhlYXBTeXM6IG51bWJlcjtcbiAgc3RhY2tJblVzZTogbnVtYmVyO1xuICBzeXN0ZW1Ub3RhbDogbnVtYmVyO1xuICBzeXN0ZW1BdmFpbGFibGU6IG51bWJlcjtcbiAgc3lzdGVtVXNlZDogbnVtYmVyO1xuICBzeXN0ZW1Vc2VkUGVyY2VudDogbnVtYmVyO1xufVxuXG4vKiogRGlzayBJL08gbWV0cmljcyAqL1xuZXhwb3J0IGludGVyZmFjZSBEaXNrSU9NZXRyaWNzIHtcbiAgcmVhZEJ5dGVzOiBudW1iZXI7XG4gIHdyaXRlQnl0ZXM6IG51bWJlcjtcbiAgcmVhZENvdW50OiBudW1iZXI7XG4gIHdyaXRlQ291bnQ6IG51bWJlcjtcbn1cblxuLyoqIFN0b3JhZ2UgbWV0cmljcyAqL1xuZXhwb3J0IGludGVyZmFjZSBTdG9yYWdlTWV0cmljcyB7XG4gIGRiUGF0aDogc3RyaW5nO1xuICBkYlNpemVCeXRlczogbnVtYmVyO1xuICB2b2x1bWVUb3RhbDogbnVtYmVyO1xuICB2b2x1bWVGcmVlOiBudW1iZXI7XG4gIHZvbHVtZVVzZWQ6IG51bWJlcjtcbn1cblxuLyoqIE5ldHdvcmsgbWV0cmljcyAqL1xuZXhwb3J0IGludGVyZmFjZSBOZXR3b3JrTWV0cmljcyB7XG4gIGJ5dGVzU2VudDogbnVtYmVyO1xuICBieXRlc1JlY3Y6IG51bWJlcjtcbiAgcGFja2V0c1NlbnQ6IG51bWJlcjtcbiAgcGFja2V0c1JlY3Y6IG51bWJlcjtcbn1cblxuLyoqIFN5c3RlbS1sZXZlbCBtZXRyaWNzICovXG5leHBvcnQgaW50ZXJmYWNlIFN5c3RlbU1ldHJpY3Mge1xuICBjcHU/OiBDcHVNZXRyaWNzO1xuICBtZW1vcnk/OiBNZW1vcnlNZXRyaWNzO1xuICBkaXNrSU8/OiBEaXNrSU9NZXRyaWNzO1xuICBzdG9yYWdlPzogU3RvcmFnZU1ldHJpY3M7XG4gIG5ldHdvcms/OiBOZXR3b3JrTWV0cmljcztcbn1cblxuLyoqIFJlc3VsdCBvZiBhIGNvbXBhY3Qgb3BlcmF0aW9uICovXG5leHBvcnQgaW50ZXJmYWNlIENvbXBhY3RSZXN1bHQge1xuICBzdWNjZXNzOiBib29sZWFuO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKiBSZXN1bHQgb2YgYSB3YWl0LWZvci1jb21wdXRlLXRvcG9sb2d5IG9wZXJhdGlvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb21wdXRlVG9wb2xvZ3lSZXN1bHQge1xuICByZWFkeTogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuIl19
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvbWV0YWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBNZXRhZGF0YSB0eXBlcyBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuaW1wb3J0IHsgR3JhcGhUeXBlIH0gZnJvbSAnLi9lbnVtcyc7XG5cbi8qKiBJbmZvcm1hdGlvbiBhYm91dCBhIGdyYXBoICovXG5leHBvcnQgaW50ZXJmYWNlIEdyYXBoSW5mbyB7XG4gIG5hbWU6IHN0cmluZztcbiAgZ3JhcGhUeXBlOiBHcmFwaFR5cGU7XG4gIG5vZGVDb3VudDogbnVtYmVyO1xuICBlZGdlQ291bnQ6IG51bWJlcjtcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbn1cblxuLyoqIEluZm9ybWF0aW9uIGFib3V0IGEgdHJhbnNhY3Rpb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25JbmZvIHtcbiAgdHJhbnNhY3Rpb25JZDogbnVtYmVyO1xuICBzZXNzaW9uSWQ6IG51bWJlcjtcbiAgZ3JhcGhOYW1lOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBib29sZWFuO1xuICBjcmVhdGVkQXQ6IG51bWJlcjtcbiAgZHVyYXRpb25NczogbnVtYmVyO1xuICBpbnRlcm5hbFR4SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBPbmUgcm93IGZyb20gYFNIT1cgVFJBTlNBQ1RJT05TYCAoYWRtaW4gRERMIGFkZGVkIGJ5IHRyYW5zYWN0aW9uLWJyYW5jaCkuXG4gKiBgc2Vzc2lvbklkYCBpcyBgJydgIHdoZW4gdGhlIHNlcnZlciBoYXMgbm90IGF1dG8tZGVyaXZlZCBvbmUgZnJvbSBwZWVyXG4gKiBpbmZvIGFuZCB0aGUgZHJpdmVyIGhhcyBub3Qgc3VyZmFjZWQgZXhwbGljaXQgYHgtdWx0aXBhLXNlc3Npb24taWRgXG4gKiBtZXRhZGF0YS4gU2VlIFRSQU5TQUNUSU9OU19EUklWRVJfR1VJREUubWQgwqczLjEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25Sb3cge1xuICB0cmFuc2FjdGlvbklkOiBzdHJpbmc7ICAgLy8gJ3R4Xzx1dWlkPicgZm9ybVxuICBzdGF0dXM6IHN0cmluZzsgICAgICAgICAgLy8gJ2FjdGl2ZScgLyBldGNcbiAgcmVhZE9ubHk6IGJvb2xlYW47XG4gIHN0YXJ0VGltZTogc3RyaW5nOyAgICAgICAvLyBJU08gODYwMVxuICBzZXNzaW9uSWQ6IHN0cmluZztcbn1cblxuLyoqIEFTVCBjYWNoZSBzdGF0aXN0aWNzICovXG5leHBvcnQgaW50ZXJmYWNlIEFTVENhY2hlU3RhdHMge1xuICBoaXRzOiBudW1iZXI7XG4gIG1pc3NlczogbnVtYmVyO1xuICBldmljdGlvbnM6IG51bWJlcjtcbiAgZW50cmllczogbnVtYmVyO1xuICBoaXRSYXRlOiBudW1iZXI7XG59XG5cbi8qKiBQbGFuIGNhY2hlIHN0YXRpc3RpY3MgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGxhbkNhY2hlU3RhdHMge1xuICBzaXplOiBudW1iZXI7XG4gIGNhcGFjaXR5OiBudW1iZXI7XG4gIGhpdHM6IG51bWJlcjtcbiAgbWlzc2VzOiBudW1iZXI7XG4gIGhpdFJhdGU6IG51bWJlcjtcbn1cblxuLyoqIENvbWJpbmVkIGNhY2hlIHN0YXRpc3RpY3MgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2FjaGVTdGF0cyB7XG4gIGFzdFN0YXRzPzogQVNUQ2FjaGVTdGF0cztcbiAgcGxhblN0YXRzPzogUGxhbkNhY2hlU3RhdHM7XG59XG5cbi8qKiBEYXRhYmFzZSBzdGF0aXN0aWNzICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRpc3RpY3Mge1xuICBub2RlQ291bnQ6IG51bWJlcjtcbiAgZWRnZUNvdW50OiBudW1iZXI7XG4gIGxhYmVsQ291bnRzOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+O1xuICBlZGdlTGFiZWxDb3VudHM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj47XG59XG5cbi8qKiBDUFUgbWV0cmljcyAqL1xuZXhwb3J0IGludGVyZmFjZSBDcHVNZXRyaWNzIHtcbiAgcHJvY2Vzc1BlcmNlbnQ6IG51bWJlcjtcbiAgc3lzdGVtUGVyY2VudDogbnVtYmVyO1xuICBudW1Db3JlczogbnVtYmVyO1xufVxuXG4vKiogTWVtb3J5IG1ldHJpY3MgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWVtb3J5TWV0cmljcyB7XG4gIHByb2Nlc3NSc3M6IG51bWJlcjtcbiAgaGVhcEFsbG9jOiBudW1iZXI7XG4gIGhlYXBTeXM6IG51bWJlcjtcbiAgc3RhY2tJblVzZTogbnVtYmVyO1xuICBzeXN0ZW1Ub3RhbDogbnVtYmVyO1xuICBzeXN0ZW1BdmFpbGFibGU6IG51bWJlcjtcbiAgc3lzdGVtVXNlZDogbnVtYmVyO1xuICBzeXN0ZW1Vc2VkUGVyY2VudDogbnVtYmVyO1xufVxuXG4vKiogRGlzayBJL08gbWV0cmljcyAqL1xuZXhwb3J0IGludGVyZmFjZSBEaXNrSU9NZXRyaWNzIHtcbiAgcmVhZEJ5dGVzOiBudW1iZXI7XG4gIHdyaXRlQnl0ZXM6IG51bWJlcjtcbiAgcmVhZENvdW50OiBudW1iZXI7XG4gIHdyaXRlQ291bnQ6IG51bWJlcjtcbn1cblxuLyoqIFN0b3JhZ2UgbWV0cmljcyAqL1xuZXhwb3J0IGludGVyZmFjZSBTdG9yYWdlTWV0cmljcyB7XG4gIGRiUGF0aDogc3RyaW5nO1xuICBkYlNpemVCeXRlczogbnVtYmVyO1xuICB2b2x1bWVUb3RhbDogbnVtYmVyO1xuICB2b2x1bWVGcmVlOiBudW1iZXI7XG4gIHZvbHVtZVVzZWQ6IG51bWJlcjtcbn1cblxuLyoqIE5ldHdvcmsgbWV0cmljcyAqL1xuZXhwb3J0IGludGVyZmFjZSBOZXR3b3JrTWV0cmljcyB7XG4gIGJ5dGVzU2VudDogbnVtYmVyO1xuICBieXRlc1JlY3Y6IG51bWJlcjtcbiAgcGFja2V0c1NlbnQ6IG51bWJlcjtcbiAgcGFja2V0c1JlY3Y6IG51bWJlcjtcbn1cblxuLyoqIFN5c3RlbS1sZXZlbCBtZXRyaWNzICovXG5leHBvcnQgaW50ZXJmYWNlIFN5c3RlbU1ldHJpY3Mge1xuICBjcHU/OiBDcHVNZXRyaWNzO1xuICBtZW1vcnk/OiBNZW1vcnlNZXRyaWNzO1xuICBkaXNrSU8/OiBEaXNrSU9NZXRyaWNzO1xuICBzdG9yYWdlPzogU3RvcmFnZU1ldHJpY3M7XG4gIG5ldHdvcms/OiBOZXR3b3JrTWV0cmljcztcbn1cblxuLyoqIFJlc3VsdCBvZiBhIGNvbXBhY3Qgb3BlcmF0aW9uICovXG5leHBvcnQgaW50ZXJmYWNlIENvbXBhY3RSZXN1bHQge1xuICBzdWNjZXNzOiBib29sZWFuO1xuICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbi8qKiBSZXN1bHQgb2YgYSB3YWl0LWZvci1jb21wdXRlLXRvcG9sb2d5IG9wZXJhdGlvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb21wdXRlVG9wb2xvZ3lSZXN1bHQge1xuICByZWFkeTogYm9vbGVhbjtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuIl19