@ultipa-graph/ultipa-driver 6.0.6 → 6.0.8

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.
@@ -42,9 +42,19 @@ class TransactionService {
42
42
  transaction_id: transactionId.toString(),
43
43
  };
44
44
  const metadata = this.ctx.getSessionMetadata();
45
- const response = await (0, services_1.promisifyCall)(this.ctx.clients.transactionService, 'Commit', request, metadata);
46
- this.ctx.txManager.commit(transactionId);
47
- return response.success || false;
45
+ try {
46
+ const response = await (0, services_1.promisifyCall)(this.ctx.clients.transactionService, 'Commit', request, metadata);
47
+ this.ctx.txManager.commit(transactionId);
48
+ return response.success || false;
49
+ }
50
+ catch (e) {
51
+ // Clean up local state even if server commit fails
52
+ try {
53
+ this.ctx.txManager.rollback(transactionId);
54
+ }
55
+ catch { }
56
+ throw e;
57
+ }
48
58
  }
49
59
  /**
50
60
  * Rollback a transaction.
@@ -56,9 +66,19 @@ class TransactionService {
56
66
  transaction_id: transactionId.toString(),
57
67
  };
58
68
  const metadata = this.ctx.getSessionMetadata();
59
- const response = await (0, services_1.promisifyCall)(this.ctx.clients.transactionService, 'Rollback', request, metadata);
60
- this.ctx.txManager.rollback(transactionId);
61
- return response.success || false;
69
+ try {
70
+ const response = await (0, services_1.promisifyCall)(this.ctx.clients.transactionService, 'Rollback', request, metadata);
71
+ this.ctx.txManager.rollback(transactionId);
72
+ return response.success || false;
73
+ }
74
+ catch (e) {
75
+ // Always clean up local state even if server rollback fails
76
+ try {
77
+ this.ctx.txManager.rollback(transactionId);
78
+ }
79
+ catch { }
80
+ throw e;
81
+ }
62
82
  }
63
83
  /**
64
84
  * Return active transactions for the current session.
@@ -97,4 +117,4 @@ class TransactionService {
97
117
  }
98
118
  }
99
119
  exports.TransactionService = TransactionService;
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy90cmFuc2FjdGlvbi1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7O0FBS0gsMENBQTRDO0FBRTVDOztHQUVHO0FBQ0gsTUFBYSxrQkFBa0I7SUFDVDtJQUFwQixZQUFvQixHQUFtQjtRQUFuQixRQUFHLEdBQUgsR0FBRyxDQUFnQjtJQUFHLENBQUM7SUFFM0M7O09BRUc7SUFDSCxLQUFLLENBQUMsZ0JBQWdCLENBQ3BCLFNBQWlCLEVBQ2pCLFdBQW9CLEtBQUssRUFDekIsVUFBa0IsQ0FBQztRQUVuQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMvQyxNQUFNLE9BQU8sR0FBRztZQUNkLFVBQVUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEdBQUc7WUFDMUMsVUFBVSxFQUFFLFNBQVM7WUFDckIsU0FBUyxFQUFFLFFBQVE7WUFDbkIsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLGlDQUFpQztTQUM3RyxDQUFDO1FBRUYsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQy9DLE1BQU0sUUFBUSxHQUFRLE1BQU0sSUFBQSx3QkFBYSxFQUN2QyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFDbkMsT0FBTyxFQUNQLE9BQU8sRUFDUCxRQUFRLENBQ1QsQ0FBQztRQUVGLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsY0FBYyxJQUFJLEdBQUcsRUFBRSxFQUFF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QTRIQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVHJhbnNhY3Rpb24gc2VydmljZSBoYW5kbGVzIHRyYW5zYWN0aW9uIGxpZmVjeWNsZSBtYW5hZ2VtZW50LlxuICovXG5cbmltcG9ydCB7IFNlcnZpY2VDb250ZXh0IH0gZnJvbSAnLi9zZXJ2aWNlLWNvbnRleHQnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkluZm8gfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBwcm9taXNpZnlDYWxsIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuXG4vKipcbiAqIFRyYW5zYWN0aW9uIHNlcnZpY2UgZm9yIG1hbmFnaW5nIGRhdGFiYXNlIHRyYW5zYWN0aW9ucy5cbiAqL1xuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY3R4OiBTZXJ2aWNlQ29udGV4dCkge31cblxuICAvKipcbiAgICogU3RhcnQgYSBuZXcgdHJhbnNhY3Rpb24uXG4gICAqL1xuICBhc3luYyBiZWdpblRyYW5zYWN0aW9uKFxuICAgIGdyYXBoTmFtZTogc3RyaW5nLFxuICAgIHJlYWRPbmx5OiBib29sZWFuID0gZmFsc2UsXG4gICAgdGltZW91dDogbnVtYmVyID0gMFxuICApOiBQcm9taXNlPFRyYW5zYWN0aW9uPiB7XG4gICAgY29uc3Qgc2Vzc2lvbiA9IHRoaXMuY3R4LnNlc3Npb25zLmdldFNlc3Npb24oKTtcbiAgICBjb25zdCByZXF1ZXN0ID0ge1xuICAgICAgc2Vzc2lvbl9pZDogc2Vzc2lvbj8uaWQ/LnRvU3RyaW5nKCkgfHwgJzAnLFxuICAgICAgZ3JhcGhfbmFtZTogZ3JhcGhOYW1lLFxuICAgICAgcmVhZF9vbmx5OiByZWFkT25seSxcbiAgICAgIHRpbWVvdXQ6IE1hdGguZmxvb3IoKHRpbWVvdXQgfHwgdGhpcy5jdHguY29uZmlnLnRpbWVvdXQgfHwgMzAwMDApIC8gMTAwMCksIC8vIENvbnZlcnQgbXMgdG8gc2Vjb25kcyBmb3IgZ1JQQ1xuICAgIH07XG5cbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuY3R4LmdldFNlc3Npb25NZXRhZGF0YSgpO1xuICAgIGNvbnN0IHJlc3BvbnNlOiBhbnkgPSBhd2FpdCBwcm9taXNpZnlDYWxsKFxuICAgICAgdGhpcy5jdHguY2xpZW50cy50cmFuc2FjdGlvblNlcnZpY2UsXG4gICAgICAnQmVnaW4nLFxuICAgICAgcmVxdWVzdCxcbiAgICAgIG1ldGFkYXRhXG4gICAgKTtcblxuICAgIGNvbnN0IHR4SWQgPSBwYXJzZUludChyZXNwb25zZS50cmFuc2FjdGlvbl9pZCB8fCAnMCcsIDEwKTtcbiAgICBjb25zdCBzZXNzaW9uSWQgPSBzZXNzaW9uPy5pZCB8fCAwO1xuICAgIGNvbnN0IHRpbWVvdXRNcyA9IHRpbWVvdXQgfHwgdGhpcy5jdHguY29uZmlnLnRpbWVvdXQgfHwgMzAwMDA7XG4gICAgY29uc3QgdHggPSB0aGlzLmN0eC50eE1hbmFnZXIuYmVnaW4odHhJZCwgc2Vzc2lvbklkLCBncmFwaE5hbWUsIHJlYWRPbmx5LCB0aW1lb3V0TXMpO1xuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb21taXQgYSB0cmFuc2FjdGlvbi5cbiAgICovXG4gIGFzeW5jIGNvbW1pdCh0cmFuc2FjdGlvbklkOiBudW1iZXIpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBzZXNzaW9uID0gdGhpcy5jdHguc2Vzc2lvbnMuZ2V0U2Vzc2lvbigpO1xuICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICBzZXNzaW9uX2lkOiBzZXNzaW9uPy5pZD8udG9TdHJpbmcoKSB8fCAnMCcsXG4gICAgICB0cmFuc2FjdGlvbl9pZDogdHJhbnNhY3Rpb25JZC50b1N0cmluZygpLFxuICAgIH07XG5cbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuY3R4LmdldFNlc3Npb25NZXRhZGF0YSgpO1xuICAgIGNvbnN0IHJlc3BvbnNlOiBhbnkgPSBhd2FpdCBwcm9taXNpZnlDYWxsKFxuICAgICAgdGhpcy5jdHguY2xpZW50cy50cmFuc2FjdGlvblNlcnZpY2UsXG4gICAgICAnQ29tbWl0JyxcbiAgICAgIHJlcXVlc3QsXG4gICAgICBtZXRhZGF0YVxuICAgICk7XG5cbiAgICB0aGlzLmN0eC50eE1hbmFnZXIuY29tbWl0KHRyYW5zYWN0aW9uSWQpO1xuICAgIHJldHVybiByZXNwb25zZS5zdWNjZXNzIHx8IGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJvbGxiYWNrIGEgdHJhbnNhY3Rpb24uXG4gICAqL1xuICBhc3luYyByb2xsYmFjayh0cmFuc2FjdGlvbklkOiBudW1iZXIpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBzZXNzaW9uID0gdGhpcy5jdHguc2Vzc2lvbnMuZ2V0U2Vzc2lvbigpO1xuICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICBzZXNzaW9uX2lkOiBzZXNzaW9uPy5pZD8udG9TdHJpbmcoKSB8fCAnMCcsXG4gICAgICB0cmFuc2FjdGlvbl9pZDogdHJhbnNhY3Rpb25JZC50b1N0cmluZygpLFxuICAgIH07XG5cbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuY3R4LmdldFNlc3Npb25NZXRhZGF0YSgpO1xuICAgIGNvbnN0IHJlc3BvbnNlOiBhbnkgPSBhd2FpdCBwcm9taXNpZnlDYWxsKFxuICAgICAgdGhpcy5jdHguY2xpZW50cy50cmFuc2FjdGlvblNlcnZpY2UsXG4gICAgICAnUm9sbGJhY2snLFxuICAgICAgcmVxdWVzdCxcbiAgICAgIG1ldGFkYXRhXG4gICAgKTtcblxuICAgIHRoaXMuY3R4LnR4TWFuYWdlci5yb2xsYmFjayh0cmFuc2FjdGlvbklkKTtcbiAgICByZXR1cm4gcmVzcG9uc2Uuc3VjY2VzcyB8fCBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gYWN0aXZlIHRyYW5zYWN0aW9ucyBmb3IgdGhlIGN1cnJlbnQgc2Vzc2lvbi5cbiAgICovXG4gIGFzeW5jIGxpc3RUcmFuc2FjdGlvbnMoKTogUHJvbWlzZTxUcmFuc2FjdGlvbkluZm9bXT4ge1xuICAgIGNvbnN0IHNlc3Npb24gPSB0aGlzLmN0eC5zZXNzaW9ucy5nZXRTZXNzaW9uKCk7XG4gICAgY29uc3QgcmVxdWVzdCA9IHtcbiAgICAgIHNlc3Npb25faWQ6IHNlc3Npb24/LmlkPy50b1N0cmluZygpIHx8ICcwJyxcbiAgICB9O1xuXG4gICAgY29uc3QgbWV0YWRhdGEgPSB0aGlzLmN0eC5nZXRTZXNzaW9uTWV0YWRhdGEoKTtcbiAgICBjb25zdCByZXNwb25zZTogYW55ID0gYXdhaXQgcHJvbWlzaWZ5Q2FsbChcbiAgICAgIHRoaXMuY3R4LmNsaWVudHMudHJhbnNhY3Rpb25TZXJ2aWNlLFxuICAgICAgJ0xpc3RUcmFuc2FjdGlvbnMnLFxuICAgICAgcmVxdWVzdCxcbiAgICAgIG1ldGFkYXRhXG4gICAgKTtcblxuICAgIHJldHVybiAocmVzcG9uc2UudHJhbnNhY3Rpb25zIHx8IFtdKS5tYXAoKHQ6IGFueSkgPT4gKHtcbiAgICAgIHRyYW5zYWN0aW9uSWQ6IHBhcnNlSW50KHQudHJhbnNhY3Rpb25faWQgfHwgJzAnLCAxMCksXG4gICAgICBzZXNzaW9uSWQ6IHBhcnNlSW50KHQuc2Vzc2lvbl9pZCB8fCAnMCcsIDEwKSxcbiAgICAgIGdyYXBoTmFtZTogdC5ncmFwaF9uYW1lIHx8ICcnLFxuICAgICAgcmVhZE9ubHk6IHQucmVhZF9vbmx5IHx8IGZhbHNlLFxuICAgICAgY3JlYXRlZEF0OiBwYXJzZUludCh0LmNyZWF0ZWRfYXQgfHwgJzAnLCAxMCksXG4gICAgICBkdXJhdGlvbk1zOiBwYXJzZUludCh0LmR1cmF0aW9uX21zIHx8ICcwJywgMTApLFxuICAgICAgaW50ZXJuYWxUeElkOiB0LmludGVybmFsX3R4X2lkIHx8ICcnLFxuICAgIH0pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlIGEgZnVuY3Rpb24gd2l0aGluIGEgdHJhbnNhY3Rpb24uXG4gICAqL1xuICBhc3luYyB3aXRoVHJhbnNhY3Rpb248VD4oXG4gICAgZ3JhcGhOYW1lOiBzdHJpbmcsXG4gICAgZm46ICh0eElkOiBudW1iZXIpID0+IFByb21pc2U8VD4sXG4gICAgcmVhZE9ubHk6IGJvb2xlYW4gPSBmYWxzZVxuICApOiBQcm9taXNlPFQ+IHtcbiAgICBjb25zdCB0eCA9IGF3YWl0IHRoaXMuYmVnaW5UcmFuc2FjdGlvbihncmFwaE5hbWUsIHJlYWRPbmx5LCB0aGlzLmN0eC5jb25maWcudGltZW91dCA/PyAzMDAwMCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGZuKHR4LmlkKTtcbiAgICAgIGF3YWl0IHRoaXMuY29tbWl0KHR4LmlkKTtcbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgYXdhaXQgdGhpcy5yb2xsYmFjayh0eC5pZCk7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxufVxuIl19
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy90cmFuc2FjdGlvbi1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7O0FBS0gsMENBQTRDO0FBRTVDOztHQUVHO0FBQ0gsTUFBYSxrQkFBa0I7SUFDVDtJQUFwQixZQUFvQixHQUFtQjtRQUFuQixRQUFHLEdBQUgsR0FBRyxDQUFnQjtJQUFHLENBQUM7SUFFM0M7O09BRUc7SUFDSCxLQUFLLENBQUMsZ0JBQWdCLENBQ3BCLFNBQWlCLEVBQ2pCLFdBQW9CLEtBQUssRUFDekIsVUFBa0IsQ0FBQztRQUVuQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMvQyxNQUFNLE9BQU8sR0FBRztZQUNkLFVBQVUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEdBQUc7WUFDMUMsVUFBVSxFQUFFLFNBQVM7WUFDckIsU0FBUyxFQUFFLFFBQVE7WUFDbkIsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLGlDQUFpQztTQUM3RyxDQUFDO1FBRUYsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQy9DLE1BQU0sUUFBUSxHQUFRLE1BQU0sSUFBQSx3QkFBYSxFQUN2QyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFDbkMsT0FBTyxFQUNQLE9BQU8sRUFDUCxRQUFRLENBQ1QsQ0FBQztRQUVGLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsY0FBYyxJQUFJLEdBQUcsRUFBRSxFQUFF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RUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxDQUFDO1FBQzlGLElBQUksQ0FBQztZQUNILE1BQU0sTUFBTSxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUMvQixNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3pCLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUMzQixNQUFNLENBQUMsQ0FBQztRQUNWLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUF4SUQsZ0RBd0lDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUcmFuc2FjdGlvbiBzZXJ2aWNlIGhhbmRsZXMgdHJhbnNhY3Rpb24gbGlmZWN5Y2xlIG1hbmFnZW1lbnQuXG4gKi9cblxuaW1wb3J0IHsgU2VydmljZUNvbnRleHQgfSBmcm9tICcuL3NlcnZpY2UtY29udGV4dCc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uSW5mbyB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IHByb21pc2lmeUNhbGwgfSBmcm9tICcuLi9zZXJ2aWNlcyc7XG5cbi8qKlxuICogVHJhbnNhY3Rpb24gc2VydmljZSBmb3IgbWFuYWdpbmcgZGF0YWJhc2UgdHJhbnNhY3Rpb25zLlxuICovXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25TZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjdHg6IFNlcnZpY2VDb250ZXh0KSB7fVxuXG4gIC8qKlxuICAgKiBTdGFydCBhIG5ldyB0cmFuc2FjdGlvbi5cbiAgICovXG4gIGFzeW5jIGJlZ2luVHJhbnNhY3Rpb24oXG4gICAgZ3JhcGhOYW1lOiBzdHJpbmcsXG4gICAgcmVhZE9ubHk6IGJvb2xlYW4gPSBmYWxzZSxcbiAgICB0aW1lb3V0OiBudW1iZXIgPSAwXG4gICk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCBzZXNzaW9uID0gdGhpcy5jdHguc2Vzc2lvbnMuZ2V0U2Vzc2lvbigpO1xuICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICBzZXNzaW9uX2lkOiBzZXNzaW9uPy5pZD8udG9TdHJpbmcoKSB8fCAnMCcsXG4gICAgICBncmFwaF9uYW1lOiBncmFwaE5hbWUsXG4gICAgICByZWFkX29ubHk6IHJlYWRPbmx5LFxuICAgICAgdGltZW91dDogTWF0aC5mbG9vcigodGltZW91dCB8fCB0aGlzLmN0eC5jb25maWcudGltZW91dCB8fCAzMDAwMCkgLyAxMDAwKSwgLy8gQ29udmVydCBtcyB0byBzZWNvbmRzIGZvciBnUlBDXG4gICAgfTtcblxuICAgIGNvbnN0IG1ldGFkYXRhID0gdGhpcy5jdHguZ2V0U2Vzc2lvbk1ldGFkYXRhKCk7XG4gICAgY29uc3QgcmVzcG9uc2U6IGFueSA9IGF3YWl0IHByb21pc2lmeUNhbGwoXG4gICAgICB0aGlzLmN0eC5jbGllbnRzLnRyYW5zYWN0aW9uU2VydmljZSxcbiAgICAgICdCZWdpbicsXG4gICAgICByZXF1ZXN0LFxuICAgICAgbWV0YWRhdGFcbiAgICApO1xuXG4gICAgY29uc3QgdHhJZCA9IHBhcnNlSW50KHJlc3BvbnNlLnRyYW5zYWN0aW9uX2lkIHx8ICcwJywgMTApO1xuICAgIGNvbnN0IHNlc3Npb25JZCA9IHNlc3Npb24/LmlkIHx8IDA7XG4gICAgY29uc3QgdGltZW91dE1zID0gdGltZW91dCB8fCB0aGlzLmN0eC5jb25maWcudGltZW91dCB8fCAzMDAwMDtcbiAgICBjb25zdCB0eCA9IHRoaXMuY3R4LnR4TWFuYWdlci5iZWdpbih0eElkLCBzZXNzaW9uSWQsIGdyYXBoTmFtZSwgcmVhZE9ubHksIHRpbWVvdXRNcyk7XG4gICAgcmV0dXJuIHR4O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbW1pdCBhIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgYXN5bmMgY29tbWl0KHRyYW5zYWN0aW9uSWQ6IG51bWJlcik6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHNlc3Npb24gPSB0aGlzLmN0eC5zZXNzaW9ucy5nZXRTZXNzaW9uKCk7XG4gICAgY29uc3QgcmVxdWVzdCA9IHtcbiAgICAgIHNlc3Npb25faWQ6IHNlc3Npb24/LmlkPy50b1N0cmluZygpIHx8ICcwJyxcbiAgICAgIHRyYW5zYWN0aW9uX2lkOiB0cmFuc2FjdGlvbklkLnRvU3RyaW5nKCksXG4gICAgfTtcblxuICAgIGNvbnN0IG1ldGFkYXRhID0gdGhpcy5jdHguZ2V0U2Vzc2lvbk1ldGFkYXRhKCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlOiBhbnkgPSBhd2FpdCBwcm9taXNpZnlDYWxsKFxuICAgICAgICB0aGlzLmN0eC5jbGllbnRzLnRyYW5zYWN0aW9uU2VydmljZSxcbiAgICAgICAgJ0NvbW1pdCcsXG4gICAgICAgIHJlcXVlc3QsXG4gICAgICAgIG1ldGFkYXRhXG4gICAgICApO1xuXG4gICAgICB0aGlzLmN0eC50eE1hbmFnZXIuY29tbWl0KHRyYW5zYWN0aW9uSWQpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLnN1Y2Nlc3MgfHwgZmFsc2U7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgLy8gQ2xlYW4gdXAgbG9jYWwgc3RhdGUgZXZlbiBpZiBzZXJ2ZXIgY29tbWl0IGZhaWxzXG4gICAgICB0cnkgeyB0aGlzLmN0eC50eE1hbmFnZXIucm9sbGJhY2sodHJhbnNhY3Rpb25JZCk7IH0gY2F0Y2gge31cbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJvbGxiYWNrIGEgdHJhbnNhY3Rpb24uXG4gICAqL1xuICBhc3luYyByb2xsYmFjayh0cmFuc2FjdGlvbklkOiBudW1iZXIpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBzZXNzaW9uID0gdGhpcy5jdHguc2Vzc2lvbnMuZ2V0U2Vzc2lvbigpO1xuICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICBzZXNzaW9uX2lkOiBzZXNzaW9uPy5pZD8udG9TdHJpbmcoKSB8fCAnMCcsXG4gICAgICB0cmFuc2FjdGlvbl9pZDogdHJhbnNhY3Rpb25JZC50b1N0cmluZygpLFxuICAgIH07XG5cbiAgICBjb25zdCBtZXRhZGF0YSA9IHRoaXMuY3R4LmdldFNlc3Npb25NZXRhZGF0YSgpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZTogYW55ID0gYXdhaXQgcHJvbWlzaWZ5Q2FsbChcbiAgICAgICAgdGhpcy5jdHguY2xpZW50cy50cmFuc2FjdGlvblNlcnZpY2UsXG4gICAgICAgICdSb2xsYmFjaycsXG4gICAgICAgIHJlcXVlc3QsXG4gICAgICAgIG1ldGFkYXRhXG4gICAgICApO1xuXG4gICAgICB0aGlzLmN0eC50eE1hbmFnZXIucm9sbGJhY2sodHJhbnNhY3Rpb25JZCk7XG4gICAgICByZXR1cm4gcmVzcG9uc2Uuc3VjY2VzcyB8fCBmYWxzZTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAvLyBBbHdheXMgY2xlYW4gdXAgbG9jYWwgc3RhdGUgZXZlbiBpZiBzZXJ2ZXIgcm9sbGJhY2sgZmFpbHNcbiAgICAgIHRyeSB7IHRoaXMuY3R4LnR4TWFuYWdlci5yb2xsYmFjayh0cmFuc2FjdGlvbklkKTsgfSBjYXRjaCB7fVxuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIGFjdGl2ZSB0cmFuc2FjdGlvbnMgZm9yIHRoZSBjdXJyZW50IHNlc3Npb24uXG4gICAqL1xuICBhc3luYyBsaXN0VHJhbnNhY3Rpb25zKCk6IFByb21pc2U8VHJhbnNhY3Rpb25JbmZvW10+IHtcbiAgICBjb25zdCBzZXNzaW9uID0gdGhpcy5jdHguc2Vzc2lvbnMuZ2V0U2Vzc2lvbigpO1xuICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICBzZXNzaW9uX2lkOiBzZXNzaW9uPy5pZD8udG9TdHJpbmcoKSB8fCAnMCcsXG4gICAgfTtcblxuICAgIGNvbnN0IG1ldGFkYXRhID0gdGhpcy5jdHguZ2V0U2Vzc2lvbk1ldGFkYXRhKCk7XG4gICAgY29uc3QgcmVzcG9uc2U6IGFueSA9IGF3YWl0IHByb21pc2lmeUNhbGwoXG4gICAgICB0aGlzLmN0eC5jbGllbnRzLnRyYW5zYWN0aW9uU2VydmljZSxcbiAgICAgICdMaXN0VHJhbnNhY3Rpb25zJyxcbiAgICAgIHJlcXVlc3QsXG4gICAgICBtZXRhZGF0YVxuICAgICk7XG5cbiAgICByZXR1cm4gKHJlc3BvbnNlLnRyYW5zYWN0aW9ucyB8fCBbXSkubWFwKCh0OiBhbnkpID0+ICh7XG4gICAgICB0cmFuc2FjdGlvbklkOiBwYXJzZUludCh0LnRyYW5zYWN0aW9uX2lkIHx8ICcwJywgMTApLFxuICAgICAgc2Vzc2lvbklkOiBwYXJzZUludCh0LnNlc3Npb25faWQgfHwgJzAnLCAxMCksXG4gICAgICBncmFwaE5hbWU6IHQuZ3JhcGhfbmFtZSB8fCAnJyxcbiAgICAgIHJlYWRPbmx5OiB0LnJlYWRfb25seSB8fCBmYWxzZSxcbiAgICAgIGNyZWF0ZWRBdDogcGFyc2VJbnQodC5jcmVhdGVkX2F0IHx8ICcwJywgMTApLFxuICAgICAgZHVyYXRpb25NczogcGFyc2VJbnQodC5kdXJhdGlvbl9tcyB8fCAnMCcsIDEwKSxcbiAgICAgIGludGVybmFsVHhJZDogdC5pbnRlcm5hbF90eF9pZCB8fCAnJyxcbiAgICB9KSk7XG4gIH1cblxuICAvKipcbiAgICogRXhlY3V0ZSBhIGZ1bmN0aW9uIHdpdGhpbiBhIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgYXN5bmMgd2l0aFRyYW5zYWN0aW9uPFQ+KFxuICAgIGdyYXBoTmFtZTogc3RyaW5nLFxuICAgIGZuOiAodHhJZDogbnVtYmVyKSA9PiBQcm9taXNlPFQ+LFxuICAgIHJlYWRPbmx5OiBib29sZWFuID0gZmFsc2VcbiAgKTogUHJvbWlzZTxUPiB7XG4gICAgY29uc3QgdHggPSBhd2FpdCB0aGlzLmJlZ2luVHJhbnNhY3Rpb24oZ3JhcGhOYW1lLCByZWFkT25seSwgdGhpcy5jdHguY29uZmlnLnRpbWVvdXQgPz8gMzAwMDApO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmbih0eC5pZCk7XG4gICAgICBhd2FpdCB0aGlzLmNvbW1pdCh0eC5pZCk7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGF3YWl0IHRoaXMucm9sbGJhY2sodHguaWQpO1xuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,144 @@
1
+ /**
2
+ * Convenience API types for GQLDB Node.js driver.
3
+ */
4
+ /** Distinguishes between node and edge operations */
5
+ export declare enum DBType {
6
+ NODE = 0,
7
+ EDGE = 1
8
+ }
9
+ /** Controls the insert mode for GQL-based insert operations */
10
+ export declare enum InsertType {
11
+ Normal = 0,
12
+ Overwrite = 1
13
+ }
14
+ /** Label info from SHOW LABELS */
15
+ export interface LabelInfo {
16
+ name: string;
17
+ type: string;
18
+ }
19
+ /** Node type info from SHOW NODE TYPES */
20
+ export interface NodeTypeInfo {
21
+ name: string;
22
+ properties: ConvPropertyDef[];
23
+ }
24
+ /** Edge type info from SHOW EDGE TYPES */
25
+ export interface EdgeTypeInfo {
26
+ name: string;
27
+ properties: ConvPropertyDef[];
28
+ }
29
+ /** Label definition used when creating closed graphs */
30
+ export interface LabelDef {
31
+ name: string;
32
+ properties: ConvPropertyDef[];
33
+ }
34
+ /** Property definition for convenience API (uses string type name) */
35
+ export interface ConvPropertyDef {
36
+ name: string;
37
+ type: string;
38
+ }
39
+ /** Property in an index definition */
40
+ export interface IndexProperty {
41
+ name: string;
42
+ prefixLength?: number;
43
+ }
44
+ /** Index info from SHOW INDEX */
45
+ export interface IndexInfo {
46
+ indexName: string;
47
+ entityType: string;
48
+ label: string;
49
+ property: string;
50
+ prefixLength?: number;
51
+ status: string;
52
+ progress: string;
53
+ indexedCount: number;
54
+ totalCount: number;
55
+ error: string;
56
+ }
57
+ /** Fulltext index info from SHOW FULLTEXT */
58
+ export interface FulltextInfo {
59
+ indexName: string;
60
+ entityType: string;
61
+ schemaName: string;
62
+ properties: string;
63
+ analyzer: string;
64
+ status: string;
65
+ docCount: number;
66
+ progress: string;
67
+ }
68
+ /** Task info from SHOW TASKS */
69
+ export interface TaskInfo {
70
+ taskId: string;
71
+ type: string;
72
+ query: string;
73
+ algoName: string;
74
+ status: string;
75
+ startedAt: string;
76
+ progress: string;
77
+ parameters: string;
78
+ nodesWritten: number;
79
+ computeTimeMs: number;
80
+ writeTimeMs: number;
81
+ }
82
+ /** Process info from TOP */
83
+ export interface ProcessInfo {
84
+ queryId: string;
85
+ queryText: string;
86
+ startTime: string;
87
+ durationMs: number;
88
+ status: string;
89
+ }
90
+ /** Graph statistics from db.stats() */
91
+ export interface GraphStats {
92
+ graphName: string;
93
+ nodeCount: number;
94
+ edgeCount: number;
95
+ labelCounts: Record<string, number>;
96
+ edgeLabelCounts: Record<string, number>;
97
+ nodePropertyStats: Record<string, Record<string, number>>;
98
+ edgePropertyStats: Record<string, Record<string, number>>;
99
+ }
100
+ /** Response for GQL-based insert operations */
101
+ export interface InsertGqlResponse {
102
+ rowsAffected: number;
103
+ }
104
+ /** Algorithm info from SHOW ALGOS */
105
+ export interface AlgoInfo {
106
+ name: string;
107
+ description: string;
108
+ version: string;
109
+ parameters: string;
110
+ }
111
+ /**
112
+ * Parse a comma-separated property definition string like "age INTEGER, name STRING"
113
+ * into an array of ConvPropertyDef.
114
+ */
115
+ export declare function parsePropertyString(s: string): ConvPropertyDef[];
116
+ /**
117
+ * Convert a ConvPropertyDef type string to its GQL representation.
118
+ * If the type is already a valid GQL type name, returns it as-is (uppercased).
119
+ */
120
+ export declare function propertyTypeToGQL(typeName: string): string;
121
+ /**
122
+ * Build a GQL property definition string like "{age INT64, name STRING}" from ConvPropertyDef[].
123
+ */
124
+ export declare function buildPropertyDefString(props: ConvPropertyDef[]): string;
125
+ /**
126
+ * Build the property list for CREATE INDEX, e.g. "prop1, prop2(10)".
127
+ */
128
+ export declare function buildIndexPropertyString(props: IndexProperty[]): string;
129
+ /**
130
+ * Format a JavaScript value as a GQL literal for INSERT statements.
131
+ */
132
+ export declare function formatGqlValue(v: any): string;
133
+ /**
134
+ * Build a GQL property value map like "{name: 'Alice', age: 30}" from a Record.
135
+ */
136
+ export declare function buildPropertiesValueString(props: Record<string, any>): string;
137
+ /**
138
+ * Return "USE GRAPH <name>\n" if graphName is non-empty, otherwise "".
139
+ */
140
+ export declare function useGraphPrefix(graphName: string): string;
141
+ /**
142
+ * Convert DBType to GQL keyword "NODE" or "EDGE".
143
+ */
144
+ export declare function dbTypeToKeyword(dt: DBType): string;
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ /**
3
+ * Convenience API types for GQLDB Node.js driver.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.InsertType = exports.DBType = void 0;
7
+ exports.parsePropertyString = parsePropertyString;
8
+ exports.propertyTypeToGQL = propertyTypeToGQL;
9
+ exports.buildPropertyDefString = buildPropertyDefString;
10
+ exports.buildIndexPropertyString = buildIndexPropertyString;
11
+ exports.formatGqlValue = formatGqlValue;
12
+ exports.buildPropertiesValueString = buildPropertiesValueString;
13
+ exports.useGraphPrefix = useGraphPrefix;
14
+ exports.dbTypeToKeyword = dbTypeToKeyword;
15
+ /** Distinguishes between node and edge operations */
16
+ var DBType;
17
+ (function (DBType) {
18
+ DBType[DBType["NODE"] = 0] = "NODE";
19
+ DBType[DBType["EDGE"] = 1] = "EDGE";
20
+ })(DBType || (exports.DBType = DBType = {}));
21
+ /** Controls the insert mode for GQL-based insert operations */
22
+ var InsertType;
23
+ (function (InsertType) {
24
+ InsertType[InsertType["Normal"] = 0] = "Normal";
25
+ InsertType[InsertType["Overwrite"] = 1] = "Overwrite";
26
+ })(InsertType || (exports.InsertType = InsertType = {}));
27
+ // ConvNode and ConvEdge have been removed.
28
+ // Use NodeData and EdgeData from graph_models instead.
29
+ // =============================================================================
30
+ // Helper Functions
31
+ // =============================================================================
32
+ /**
33
+ * Parse a comma-separated property definition string like "age INTEGER, name STRING"
34
+ * into an array of ConvPropertyDef.
35
+ */
36
+ function parsePropertyString(s) {
37
+ s = s.trim();
38
+ if (!s)
39
+ return [];
40
+ const parts = s.split(',');
41
+ const result = [];
42
+ for (const part of parts) {
43
+ const trimmed = part.trim();
44
+ if (!trimmed)
45
+ continue;
46
+ const tokens = trimmed.split(/\s+/);
47
+ if (tokens.length < 2)
48
+ continue;
49
+ result.push({ name: tokens[0], type: tokens[1].toUpperCase() });
50
+ }
51
+ return result;
52
+ }
53
+ /**
54
+ * Convert a ConvPropertyDef type string to its GQL representation.
55
+ * If the type is already a valid GQL type name, returns it as-is (uppercased).
56
+ */
57
+ function propertyTypeToGQL(typeName) {
58
+ return typeName.toUpperCase();
59
+ }
60
+ /**
61
+ * Build a GQL property definition string like "{age INT64, name STRING}" from ConvPropertyDef[].
62
+ */
63
+ function buildPropertyDefString(props) {
64
+ if (!props || props.length === 0)
65
+ return '{}';
66
+ const parts = props.map(p => `\`${p.name}\` ${propertyTypeToGQL(p.type)}`);
67
+ return '{' + parts.join(', ') + '}';
68
+ }
69
+ /**
70
+ * Build the property list for CREATE INDEX, e.g. "prop1, prop2(10)".
71
+ */
72
+ function buildIndexPropertyString(props) {
73
+ return props.map(p => {
74
+ if (p.prefixLength && p.prefixLength > 0) {
75
+ return `\`${p.name}\`(${p.prefixLength})`;
76
+ }
77
+ return `\`${p.name}\``;
78
+ }).join(', ');
79
+ }
80
+ /**
81
+ * Format a JavaScript value as a GQL literal for INSERT statements.
82
+ */
83
+ function formatGqlValue(v) {
84
+ if (v === null || v === undefined)
85
+ return 'NULL';
86
+ if (typeof v === 'string') {
87
+ const escaped = v.replace(/'/g, "\\'");
88
+ return `'${escaped}'`;
89
+ }
90
+ if (typeof v === 'boolean')
91
+ return v ? 'TRUE' : 'FALSE';
92
+ if (typeof v === 'number')
93
+ return String(v);
94
+ if (typeof v === 'bigint')
95
+ return String(v);
96
+ if (Array.isArray(v)) {
97
+ const elems = v.map((elem) => formatGqlValue(elem));
98
+ return '[' + elems.join(', ') + ']';
99
+ }
100
+ if (typeof v === 'object') {
101
+ const entries = Object.entries(v);
102
+ const parts = entries.map(([k, val]) => `${k}: ${formatGqlValue(val)}`);
103
+ return '{' + parts.join(', ') + '}';
104
+ }
105
+ return `'${String(v)}'`;
106
+ }
107
+ /**
108
+ * Build a GQL property value map like "{name: 'Alice', age: 30}" from a Record.
109
+ */
110
+ function buildPropertiesValueString(props) {
111
+ const keys = Object.keys(props);
112
+ if (keys.length === 0)
113
+ return '';
114
+ const parts = keys.map(k => `${k}: ${formatGqlValue(props[k])}`);
115
+ return '{' + parts.join(', ') + '}';
116
+ }
117
+ /**
118
+ * Return "USE GRAPH <name>\n" if graphName is non-empty, otherwise "".
119
+ */
120
+ function useGraphPrefix(graphName) {
121
+ if (!graphName)
122
+ return '';
123
+ return `USE GRAPH ${graphName}\n`;
124
+ }
125
+ /**
126
+ * Convert DBType to GQL keyword "NODE" or "EDGE".
127
+ */
128
+ function dbTypeToKeyword(dt) {
129
+ return dt === DBType.EDGE ? 'EDGE' : 'NODE';
130
+ }
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVuaWVuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvY29udmVuaWVuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7QUF5SUgsa0RBY0M7QUFNRCw4Q0FFQztBQUtELHdEQUlDO0FBS0QsNERBT0M7QUFLRCx3Q0FtQkM7QUFLRCxnRUFLQztBQUtELHdDQUdDO0FBS0QsMENBRUM7QUFqT0QscURBQXFEO0FBQ3JELElBQVksTUFHWDtBQUhELFdBQVksTUFBTTtJQUNoQixtQ0FBUSxDQUFBO0lBQ1IsbUNBQVEsQ0FBQTtBQUNWLENBQUMsRUFIVyxNQUFNLHNCQUFOLE1BQU0sUUFHakI7QUFFRCwrREFBK0Q7QUFDL0QsSUFBWSxVQUdYO0FBSEQsV0FBWSxVQUFVO0lBQ3BCLCtDQUFVLENBQUE7SUFDVixxREFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUhXLFVBQVUsMEJBQVYsVUFBVSxRQUdyQjtBQWdIRCwyQ0FBMkM7QUFDM0MsdURBQXVEO0FBRXZELGdGQUFnRjtBQUNoRixtQkFBbUI7QUFDbkIsZ0ZBQWdGO0FBRWhGOzs7R0FHRztBQUNILFNBQWdCLG1CQUFtQixDQUFDLENBQVM7SUFDM0MsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNiLElBQUksQ0FBQyxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFFbEIsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQixNQUFNLE1BQU0sR0FBc0IsRUFBRSxDQUFDO0lBQ3JDLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7UUFDekIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxPQUFPO1lBQUUsU0FBUztRQUN2QixNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFD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R0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEUsT0FBTyxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDdEMsQ0FBQztJQUNELE9BQU8sSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztBQUMxQixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQiwwQkFBMEIsQ0FBQyxLQUEwQjtJQUNuRSxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFDakMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDakUsT0FBTyxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUM7QUFDdEMsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsY0FBYyxDQUFDLFNBQWlCO0lBQzlDLElBQUksQ0FBQyxTQUFTO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFDMUIsT0FBTyxhQUFhLFNBQVMsSUFBSSxDQUFDO0FBQ3BDLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGVBQWUsQ0FBQyxFQUFVO0lBQ3hDLE9BQU8sRUFBRSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0FBQzlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnZlbmllbmNlIEFQSSB0eXBlcyBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuaW1wb3J0IHsgUHJvcGVydHlUeXBlIH0gZnJvbSAnLi9lbnVtcyc7XG5cbi8qKiBEaXN0aW5ndWlzaGVzIGJldHdlZW4gbm9kZSBhbmQgZWRnZSBvcGVyYXRpb25zICovXG5leHBvcnQgZW51bSBEQlR5cGUge1xuICBOT0RFID0gMCxcbiAgRURHRSA9IDEsXG59XG5cbi8qKiBDb250cm9scyB0aGUgaW5zZXJ0IG1vZGUgZm9yIEdRTC1iYXNlZCBpbnNlcnQgb3BlcmF0aW9ucyAqL1xuZXhwb3J0IGVudW0gSW5zZXJ0VHlwZSB7XG4gIE5vcm1hbCA9IDAsXG4gIE92ZXJ3cml0ZSA9IDEsXG59XG5cbi8qKiBMYWJlbCBpbmZvIGZyb20gU0hPVyBMQUJFTFMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFiZWxJbmZvIHtcbiAgbmFtZTogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7IC8vIFwiTk9ERVwiIG9yIFwiRURHRVwiXG59XG5cbi8qKiBOb2RlIHR5cGUgaW5mbyBmcm9tIFNIT1cgTk9ERSBUWVBFUyAqL1xuZXhwb3J0IGludGVyZmFjZSBOb2RlVHlwZUluZm8ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHByb3BlcnRpZXM6IENvbnZQcm9wZXJ0eURlZltdO1xufVxuXG4vKiogRWRnZSB0eXBlIGluZm8gZnJvbSBTSE9XIEVER0UgVFlQRVMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRnZVR5cGVJbmZvIHtcbiAgbmFtZTogc3RyaW5nO1xuICBwcm9wZXJ0aWVzOiBDb252UHJvcGVydHlEZWZbXTtcbn1cblxuLyoqIExhYmVsIGRlZmluaXRpb24gdXNlZCB3aGVuIGNyZWF0aW5nIGNsb3NlZCBncmFwaHMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFiZWxEZWYge1xuICBuYW1lOiBzdHJpbmc7XG4gIHByb3BlcnRpZXM6IENvbnZQcm9wZXJ0eURlZltdO1xufVxuXG4vKiogUHJvcGVydHkgZGVmaW5pdGlvbiBmb3IgY29udmVuaWVuY2UgQVBJICh1c2VzIHN0cmluZyB0eXBlIG5hbWUpICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnZQcm9wZXJ0eURlZiB7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nOyAvLyBHUUwgdHlwZSBuYW1lOiBcIlNUUklOR1wiLCBcIklOVDY0XCIsIFwiRE9VQkxFXCIsIGV0Yy5cbn1cblxuLyoqIFByb3BlcnR5IGluIGFuIGluZGV4IGRlZmluaXRpb24gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW5kZXhQcm9wZXJ0eSB7XG4gIG5hbWU6IHN0cmluZztcbiAgcHJlZml4TGVuZ3RoPzogbnVtYmVyOyAvLyAwIG9yIHVuZGVmaW5lZCA9IG5vIHByZWZpeCwgPjAgPSBwcmVmaXggbGVuZ3RoIGZvciBTVFJJTkdcbn1cblxuLyoqIEluZGV4IGluZm8gZnJvbSBTSE9XIElOREVYICovXG5leHBvcnQgaW50ZXJmYWNlIEluZGV4SW5mbyB7XG4gIGluZGV4TmFtZTogc3RyaW5nO1xuICBlbnRpdHlUeXBlOiBzdHJpbmc7IC8vIFwiTk9ERVwiIG9yIFwiRURHRVwiXG4gIGxhYmVsOiBzdHJpbmc7XG4gIHByb3BlcnR5OiBzdHJpbmc7XG4gIHByZWZpeExlbmd0aD86IG51bWJlcjtcbiAgc3RhdHVzOiBzdHJpbmc7XG4gIHByb2dyZXNzOiBzdHJpbmc7XG4gIGluZGV4ZWRDb3VudDogbnVtYmVyO1xuICB0b3RhbENvdW50OiBudW1iZXI7XG4gIGVycm9yOiBzdHJpbmc7XG59XG5cbi8qKiBGdWxsdGV4dCBpbmRleCBpbmZvIGZyb20gU0hPVyBGVUxMVEVYVCAqL1xuZXhwb3J0IGludGVyZmFjZSBGdWxsdGV4dEluZm8ge1xuICBpbmRleE5hbWU6IHN0cmluZztcbiAgZW50aXR5VHlwZTogc3RyaW5nOyAvLyBcIk5PREVcIiBvciBcIkVER0VcIlxuICBzY2hlbWFOYW1lOiBzdHJpbmc7XG4gIHByb3BlcnRpZXM6IHN0cmluZztcbiAgYW5hbHl6ZXI6IHN0cmluZztcbiAgc3RhdHVzOiBzdHJpbmc7XG4gIGRvY0NvdW50OiBudW1iZXI7XG4gIHByb2dyZXNzOiBzdHJpbmc7XG59XG5cbi8qKiBUYXNrIGluZm8gZnJvbSBTSE9XIFRBU0tTICovXG5leHBvcnQgaW50ZXJmYWNlIFRhc2tJbmZvIHtcbiAgdGFza0lkOiBzdHJpbmc7XG4gIHR5cGU6IHN0cmluZztcbiAgcXVlcnk6IHN0cmluZztcbiAgYWxnb05hbWU6IHN0cmluZztcbiAgc3RhdHVzOiBzdHJpbmc7XG4gIHN0YXJ0ZWRBdDogc3RyaW5nO1xuICBwcm9ncmVzczogc3RyaW5nO1xuICBwYXJhbWV0ZXJzOiBzdHJpbmc7XG4gIG5vZGVzV3JpdHRlbjogbnVtYmVyO1xuICBjb21wdXRlVGltZU1zOiBudW1iZXI7XG4gIHdyaXRlVGltZU1zOiBudW1iZXI7XG59XG5cbi8qKiBQcm9jZXNzIGluZm8gZnJvbSBUT1AgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvY2Vzc0luZm8ge1xuICBxdWVyeUlkOiBzdHJpbmc7XG4gIHF1ZXJ5VGV4dDogc3RyaW5nO1xuICBzdGFydFRpbWU6IHN0cmluZztcbiAgZHVyYXRpb25NczogbnVtYmVyO1xuICBzdGF0dXM6IHN0cmluZztcbn1cblxuLyoqIEdyYXBoIHN0YXRpc3RpY3MgZnJvbSBkYi5zdGF0cygpICovXG5leHBvcnQgaW50ZXJmYWNlIEdyYXBoU3RhdHMge1xuICBncmFwaE5hbWU6IHN0cmluZztcbiAgbm9kZUNvdW50OiBudW1iZXI7XG4gIGVkZ2VDb3VudDogbnVtYmVyO1xuICBsYWJlbENvdW50czogUmVjb3JkPHN0cmluZywgbnVtYmVyPjtcbiAgZWRnZUxhYmVsQ291bnRzOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+O1xuICBub2RlUHJvcGVydHlTdGF0czogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgbnVtYmVyPj47XG4gIGVkZ2VQcm9wZXJ0eVN0YXRzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+Pjtcbn1cblxuLyoqIFJlc3BvbnNlIGZvciBHUUwtYmFzZWQgaW5zZXJ0IG9wZXJhdGlvbnMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW5zZXJ0R3FsUmVzcG9uc2Uge1xuICByb3dzQWZmZWN0ZWQ6IG51bWJlcjtcbn1cblxuLyoqIEFsZ29yaXRobSBpbmZvIGZyb20gU0hPVyBBTEdPUyAqL1xuZXhwb3J0IGludGVyZmFjZSBBbGdvSW5mbyB7XG4gIG5hbWU6IHN0cmluZztcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBwYXJhbWV0ZXJzOiBzdHJpbmc7XG59XG5cbi8vIENvbnZOb2RlIGFuZCBDb252RWRnZSBoYXZlIGJlZW4gcmVtb3ZlZC5cbi8vIFVzZSBOb2RlRGF0YSBhbmQgRWRnZURhdGEgZnJvbSBncmFwaF9tb2RlbHMgaW5zdGVhZC5cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEhlbHBlciBGdW5jdGlvbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogUGFyc2UgYSBjb21tYS1zZXBhcmF0ZWQgcHJvcGVydHkgZGVmaW5pdGlvbiBzdHJpbmcgbGlrZSBcImFnZSBJTlRFR0VSLCBuYW1lIFNUUklOR1wiXG4gKiBpbnRvIGFuIGFycmF5IG9mIENvbnZQcm9wZXJ0eURlZi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlUHJvcGVydHlTdHJpbmcoczogc3RyaW5nKTogQ29udlByb3BlcnR5RGVmW10ge1xuICBzID0gcy50cmltKCk7XG4gIGlmICghcykgcmV0dXJuIFtdO1xuXG4gIGNvbnN0IHBhcnRzID0gcy5zcGxpdCgnLCcpO1xuICBjb25zdCByZXN1bHQ6IENvbnZQcm9wZXJ0eURlZltdID0gW107XG4gIGZvciAoY29uc3QgcGFydCBvZiBwYXJ0cykge1xuICAgIGNvbnN0IHRyaW1tZWQgPSBwYXJ0LnRyaW0oKTtcbiAgICBpZiAoIXRyaW1tZWQpIGNvbnRpbnVlO1xuICAgIGNvbnN0IHRva2VucyA9IHRyaW1tZWQuc3BsaXQoL1xccysvKTtcbiAgICBpZiAodG9rZW5zLmxlbmd0aCA8IDIpIGNvbnRpbnVlO1xuICAgIHJlc3VsdC5wdXNoKHsgbmFtZTogdG9rZW5zWzBdLCB0eXBlOiB0b2tlbnNbMV0udG9VcHBlckNhc2UoKSB9KTtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIENvbnZlcnQgYSBDb252UHJvcGVydHlEZWYgdHlwZSBzdHJpbmcgdG8gaXRzIEdRTCByZXByZXNlbnRhdGlvbi5cbiAqIElmIHRoZSB0eXBlIGlzIGFscmVhZHkgYSB2YWxpZCBHUUwgdHlwZSBuYW1lLCByZXR1cm5zIGl0IGFzLWlzICh1cHBlcmNhc2VkKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByb3BlcnR5VHlwZVRvR1FMKHR5cGVOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gdHlwZU5hbWUudG9VcHBlckNhc2UoKTtcbn1cblxuLyoqXG4gKiBCdWlsZCBhIEdRTCBwcm9wZXJ0eSBkZWZpbml0aW9uIHN0cmluZyBsaWtlIFwie2FnZSBJTlQ2NCwgbmFtZSBTVFJJTkd9XCIgZnJvbSBDb252UHJvcGVydHlEZWZbXS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkUHJvcGVydHlEZWZTdHJpbmcocHJvcHM6IENvbnZQcm9wZXJ0eURlZltdKTogc3RyaW5nIHtcbiAgaWYgKCFwcm9wcyB8fCBwcm9wcy5sZW5ndGggPT09IDApIHJldHVybiAne30nO1xuICBjb25zdCBwYXJ0cyA9IHByb3BzLm1hcChwID0+IGBcXGAke3AubmFtZX1cXGAgJHtwcm9wZXJ0eVR5cGVUb0dRTChwLnR5cGUpfWApO1xuICByZXR1cm4gJ3snICsgcGFydHMuam9pbignLCAnKSArICd9Jztcbn1cblxuLyoqXG4gKiBCdWlsZCB0aGUgcHJvcGVydHkgbGlzdCBmb3IgQ1JFQVRFIElOREVYLCBlLmcuIFwicHJvcDEsIHByb3AyKDEwKVwiLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRJbmRleFByb3BlcnR5U3RyaW5nKHByb3BzOiBJbmRleFByb3BlcnR5W10pOiBzdHJpbmcge1xuICByZXR1cm4gcHJvcHMubWFwKHAgPT4ge1xuICAgIGlmIChwLnByZWZpeExlbmd0aCAmJiBwLnByZWZpeExlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiBgXFxgJHtwLm5hbWV9XFxgKCR7cC5wcmVmaXhMZW5ndGh9KWA7XG4gICAgfVxuICAgIHJldHVybiBgXFxgJHtwLm5hbWV9XFxgYDtcbiAgfSkuam9pbignLCAnKTtcbn1cblxuLyoqXG4gKiBGb3JtYXQgYSBKYXZhU2NyaXB0IHZhbHVlIGFzIGEgR1FMIGxpdGVyYWwgZm9yIElOU0VSVCBzdGF0ZW1lbnRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0R3FsVmFsdWUodjogYW55KTogc3RyaW5nIHtcbiAgaWYgKHYgPT09IG51bGwgfHwgdiA9PT0gdW5kZWZpbmVkKSByZXR1cm4gJ05VTEwnO1xuICBpZiAodHlwZW9mIHYgPT09ICdzdHJpbmcnKSB7XG4gICAgY29uc3QgZXNjYXBlZCA9IHYucmVwbGFjZSgvJy9nLCBcIlxcXFwnXCIpO1xuICAgIHJldHVybiBgJyR7ZXNjYXBlZH0nYDtcbiAgfVxuICBpZiAodHlwZW9mIHYgPT09ICdib29sZWFuJykgcmV0dXJuIHYgPyAnVFJVRScgOiAnRkFMU0UnO1xuICBpZiAodHlwZW9mIHYgPT09ICdudW1iZXInKSByZXR1cm4gU3RyaW5nKHYpO1xuICBpZiAodHlwZW9mIHYgPT09ICdiaWdpbnQnKSByZXR1cm4gU3RyaW5nKHYpO1xuICBpZiAoQXJyYXkuaXNBcnJheSh2KSkge1xuICAgIGNvbnN0IGVsZW1zID0gdi5tYXAoKGVsZW06IGFueSkgPT4gZm9ybWF0R3FsVmFsdWUoZWxlbSkpO1xuICAgIHJldHVybiAnWycgKyBlbGVtcy5qb2luKCcsICcpICsgJ10nO1xuICB9XG4gIGlmICh0eXBlb2YgdiA9PT0gJ29iamVjdCcpIHtcbiAgICBjb25zdCBlbnRyaWVzID0gT2JqZWN0LmVudHJpZXModik7XG4gICAgY29uc3QgcGFydHMgPSBlbnRyaWVzLm1hcCgoW2ssIHZhbF0pID0+IGAke2t9OiAke2Zvcm1hdEdxbFZhbHVlKHZhbCl9YCk7XG4gICAgcmV0dXJuICd7JyArIHBhcnRzLmpvaW4oJywgJykgKyAnfSc7XG4gIH1cbiAgcmV0dXJuIGAnJHtTdHJpbmcodil9J2A7XG59XG5cbi8qKlxuICogQnVpbGQgYSBHUUwgcHJvcGVydHkgdmFsdWUgbWFwIGxpa2UgXCJ7bmFtZTogJ0FsaWNlJywgYWdlOiAzMH1cIiBmcm9tIGEgUmVjb3JkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRQcm9wZXJ0aWVzVmFsdWVTdHJpbmcocHJvcHM6IFJlY29yZDxzdHJpbmcsIGFueT4pOiBzdHJpbmcge1xuICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMocHJvcHMpO1xuICBpZiAoa2V5cy5sZW5ndGggPT09IDApIHJldHVybiAnJztcbiAgY29uc3QgcGFydHMgPSBrZXlzLm1hcChrID0+IGAke2t9OiAke2Zvcm1hdEdxbFZhbHVlKHByb3BzW2tdKX1gKTtcbiAgcmV0dXJuICd7JyArIHBhcnRzLmpvaW4oJywgJykgKyAnfSc7XG59XG5cbi8qKlxuICogUmV0dXJuIFwiVVNFIEdSQVBIIDxuYW1lPlxcblwiIGlmIGdyYXBoTmFtZSBpcyBub24tZW1wdHksIG90aGVyd2lzZSBcIlwiLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlR3JhcGhQcmVmaXgoZ3JhcGhOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAoIWdyYXBoTmFtZSkgcmV0dXJuICcnO1xuICByZXR1cm4gYFVTRSBHUkFQSCAke2dyYXBoTmFtZX1cXG5gO1xufVxuXG4vKipcbiAqIENvbnZlcnQgREJUeXBlIHRvIEdRTCBrZXl3b3JkIFwiTk9ERVwiIG9yIFwiRURHRVwiLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZGJUeXBlVG9LZXl3b3JkKGR0OiBEQlR5cGUpOiBzdHJpbmcge1xuICByZXR1cm4gZHQgPT09IERCVHlwZS5FREdFID8gJ0VER0UnIDogJ05PREUnO1xufVxuIl19
@@ -9,3 +9,4 @@ export * from './metadata';
9
9
  export * from './bulk_import';
10
10
  export * from './schema';
11
11
  export * from './typed_value';
12
+ export * from './convenience';
@@ -33,4 +33,6 @@ __exportStar(require("./bulk_import"), exports);
33
33
  __exportStar(require("./schema"), exports);
34
34
  // TypedValue and encoding
35
35
  __exportStar(require("./typed_value"), exports);
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsUUFBUTtBQUNSLDBDQUF3QjtBQUV4QixXQUFXO0FBQ1gsNkNBQTJCO0FBRTNCLGFBQWE7QUFDYiwrQ0FBNkI7QUFFN0IsZUFBZTtBQUNmLGlEQUErQjtBQUUvQixXQUFXO0FBQ1gsNkNBQTJCO0FBRTNCLGNBQWM7QUFDZCxnREFBOEI7QUFFOUIsU0FBUztBQUNULDJDQUF5QjtBQUV6QiwwQkFBMEI7QUFDMUIsZ0RBQThCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBCYXJyZWwgZXhwb3J0IGZvciBhbGwgdHlwZXMgaW4gR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuLy8gRW51bXNcbmV4cG9ydCAqIGZyb20gJy4vZW51bXMnO1xuXG4vLyBXcmFwcGVyc1xuZXhwb3J0ICogZnJvbSAnLi93cmFwcGVycyc7XG5cbi8vIERhdGEgdHlwZXNcbmV4cG9ydCAqIGZyb20gJy4vZGF0YV90eXBlcyc7XG5cbi8vIEdyYXBoIG1vZGVsc1xuZXhwb3J0ICogZnJvbSAnLi9ncmFwaF9tb2RlbHMnO1xuXG4vLyBNZXRhZGF0YVxuZXhwb3J0ICogZnJvbSAnLi9tZXRhZGF0YSc7XG5cbi8vIEJ1bGsgaW1wb3J0XG5leHBvcnQgKiBmcm9tICcuL2J1bGtfaW1wb3J0JztcblxuLy8gU2NoZW1hXG5leHBvcnQgKiBmcm9tICcuL3NjaGVtYSc7XG5cbi8vIFR5cGVkVmFsdWUgYW5kIGVuY29kaW5nXG5leHBvcnQgKiBmcm9tICcuL3R5cGVkX3ZhbHVlJztcbiJdfQ==
36
+ // Convenience API types
37
+ __exportStar(require("./convenience"), exports);
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsUUFBUTtBQUNSLDBDQUF3QjtBQUV4QixXQUFXO0FBQ1gsNkNBQTJCO0FBRTNCLGFBQWE7QUFDYiwrQ0FBNkI7QUFFN0IsZUFBZTtBQUNmLGlEQUErQjtBQUUvQixXQUFXO0FBQ1gsNkNBQTJCO0FBRTNCLGNBQWM7QUFDZCxnREFBOEI7QUFFOUIsU0FBUztBQUNULDJDQUF5QjtBQUV6QiwwQkFBMEI7QUFDMUIsZ0RBQThCO0FBRTlCLHdCQUF3QjtBQUN4QixnREFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEJhcnJlbCBleHBvcnQgZm9yIGFsbCB0eXBlcyBpbiBHUUxEQiBOb2RlLmpzIGRyaXZlci5cbiAqL1xuXG4vLyBFbnVtc1xuZXhwb3J0ICogZnJvbSAnLi9lbnVtcyc7XG5cbi8vIFdyYXBwZXJzXG5leHBvcnQgKiBmcm9tICcuL3dyYXBwZXJzJztcblxuLy8gRGF0YSB0eXBlc1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhX3R5cGVzJztcblxuLy8gR3JhcGggbW9kZWxzXG5leHBvcnQgKiBmcm9tICcuL2dyYXBoX21vZGVscyc7XG5cbi8vIE1ldGFkYXRhXG5leHBvcnQgKiBmcm9tICcuL21ldGFkYXRhJztcblxuLy8gQnVsayBpbXBvcnRcbmV4cG9ydCAqIGZyb20gJy4vYnVsa19pbXBvcnQnO1xuXG4vLyBTY2hlbWFcbmV4cG9ydCAqIGZyb20gJy4vc2NoZW1hJztcblxuLy8gVHlwZWRWYWx1ZSBhbmQgZW5jb2RpbmdcbmV4cG9ydCAqIGZyb20gJy4vdHlwZWRfdmFsdWUnO1xuXG4vLyBDb252ZW5pZW5jZSBBUEkgdHlwZXNcbmV4cG9ydCAqIGZyb20gJy4vY29udmVuaWVuY2UnO1xuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ultipa-graph/ultipa-driver",
3
- "version": "6.0.6",
3
+ "version": "6.0.8",
4
4
  "description": "NodeJS SDK for Ultipa GQL",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -37,11 +37,11 @@
37
37
  "dist/**/*"
38
38
  ],
39
39
  "keywords": [
40
- "gqldb",
41
- "graph",
42
- "database",
43
- "grpc",
44
- "driver"
40
+ "Ultipa",
41
+ "GQLDB",
42
+ "Driver",
43
+ "Graph",
44
+ "Database"
45
45
  ],
46
46
  "license": "MIT",
47
47
  "engines": {