@ultipa-graph/ultipa-driver 6.2.3 → 6.2.4
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.
- package/dist/client.d.ts +30 -7
- package/dist/client.js +57 -9
- package/dist/connection.d.ts +8 -0
- package/dist/connection.js +16 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +4 -3
- package/dist/services/service-context.d.ts +13 -2
- package/dist/services/service-context.js +8 -2
- package/dist/types/enums.d.ts +5 -0
- package/dist/types/enums.js +8 -2
- package/package.json +1 -1
package/dist/connection.d.ts
CHANGED
|
@@ -43,6 +43,14 @@ export declare class ConnectionPool {
|
|
|
43
43
|
* Earlier versions closed the old channel synchronously here, which
|
|
44
44
|
* cancelled every pending RPC with a "Channel closed!"-style error.
|
|
45
45
|
*/
|
|
46
|
+
/**
|
|
47
|
+
* Rebuild every host's gRPC client in the pool. Called by the client
|
|
48
|
+
* on transport-level errors (UNAVAILABLE / connection reset) so the
|
|
49
|
+
* next RPC gets a fresh channel. Like reconnect, this does NOT close
|
|
50
|
+
* old clients synchronously — in-flight RPCs hold them alive and gRPC
|
|
51
|
+
* closes them naturally once those calls complete.
|
|
52
|
+
*/
|
|
53
|
+
forceReconnectAll(): Promise<void>;
|
|
46
54
|
private reconnect;
|
|
47
55
|
/** Close all connections in the pool */
|
|
48
56
|
close(): void;
|
package/dist/connection.js
CHANGED
|
@@ -175,6 +175,21 @@ class ConnectionPool {
|
|
|
175
175
|
* Earlier versions closed the old channel synchronously here, which
|
|
176
176
|
* cancelled every pending RPC with a "Channel closed!"-style error.
|
|
177
177
|
*/
|
|
178
|
+
/**
|
|
179
|
+
* Rebuild every host's gRPC client in the pool. Called by the client
|
|
180
|
+
* on transport-level errors (UNAVAILABLE / connection reset) so the
|
|
181
|
+
* next RPC gets a fresh channel. Like reconnect, this does NOT close
|
|
182
|
+
* old clients synchronously — in-flight RPCs hold them alive and gRPC
|
|
183
|
+
* closes them naturally once those calls complete.
|
|
184
|
+
*/
|
|
185
|
+
async forceReconnectAll() {
|
|
186
|
+
if (this.closed)
|
|
187
|
+
return;
|
|
188
|
+
const hosts = Array.from(this.connections.keys());
|
|
189
|
+
for (const host of hosts) {
|
|
190
|
+
await this.reconnect(host);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
178
193
|
async reconnect(host) {
|
|
179
194
|
if (this.closed)
|
|
180
195
|
return;
|
|
@@ -229,4 +244,4 @@ class ConnectionPool {
|
|
|
229
244
|
}
|
|
230
245
|
}
|
|
231
246
|
exports.ConnectionPool = ConnectionPool;
|
|
232
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25uZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsb0RBQXNDO0FBRXRDLHFDQUF5RjtBQWtCekY7Ozs7R0FJRztBQUNILE1BQU0sNkJBQTZCLEdBQUcsQ0FBQyxDQUFDO0FBRXhDLHFEQUFxRDtBQUNyRCxNQUFhLGNBQWM7SUFDakIsTUFBTSxDQUFjO0lBQ3BCLFdBQVcsR0FBNEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNqRCxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ2YsZ0JBQWdCLENBQWtCO0lBRTFDLFlBQVksTUFBbUI7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTyxlQUFlO1FBQ3JCLEtBQUssTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUM7Z0JBQ0gsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN6QyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ1gsNEJBQTRCO2dCQUM1QixPQUFPLENBQUMsS0FBSyxDQUFDLHdCQUF3QixJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwRCxDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDaEMsTUFBTSxJQUFJLDRCQUFt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O1FBQ04sT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7Q0FDRjtBQTFNRCx3Q0EwTUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbm5lY3Rpb24gbWFuYWdlbWVudCBmb3IgR1FMREIgTm9kZS5qcyBkcml2ZXIuXG4gKi9cblxuaW1wb3J0ICogYXMgZ3JwYyBmcm9tICdAZ3JwYy9ncnBjLWpzJztcbmltcG9ydCB7IEdxbGRiQ29uZmlnIH0gZnJvbSAnLi9jb25maWcnO1xuaW1wb3J0IHsgQWxsSG9zdHNGYWlsZWRFcnJvciwgQ29ubmVjdGlvbkNsb3NlZEVycm9yLCBOb0Nvbm5lY3Rpb25FcnJvciB9IGZyb20gJy4vZXJyb3JzJztcblxuLyoqIFJlcHJlc2VudHMgYSBzaW5nbGUgZ1JQQyBjb25uZWN0aW9uICovXG5pbnRlcmZhY2UgQ29ubmVjdGlvbiB7XG4gIGhvc3Q6IHN0cmluZztcbiAgY2xpZW50OiBncnBjLkNsaWVudDtcbiAgaGVhbHRoeTogYm9vbGVhbjtcbiAgbGFzdFBpbmc6IG51bWJlcjtcbiAgLyoqXG4gICAqIE51bWJlciBvZiBjb25zZWN1dGl2ZSBoZWFsdGgtY2hlY2sgdGlja3MgdGhhdCBvYnNlcnZlZCBhIG5vbi1SRUFEWVxuICAgKiBzdGF0ZS4gUmVjb25uZWN0IGlzIG9ubHkgdHJpZ2dlcmVkIGFmdGVyIHRoaXMgcmVhY2hlc1xuICAgKiBVTkhFQUxUSFlfUkVDT05ORUNUX1RIUkVTSE9MRCwgc28gYSBzaW5nbGUgdHJhbnNpZW50IGZsaWNrZXJcbiAgICogZHVyaW5nIGEgYnVzeSBpbi1mbGlnaHQgUlBDIGRvZXMgbm90IHRlYXIgdGhlIGNoYW5uZWwgZG93biBhbmRcbiAgICogY2FuY2VsIGV2ZXJ5IHBlbmRpbmcgcmVxdWVzdC5cbiAgICovXG4gIGNvbnNlY3V0aXZlVW5oZWFsdGh5OiBudW1iZXI7XG59XG5cbi8qKlxuICogTnVtYmVyIG9mIGNvbnNlY3V0aXZlIHVuaGVhbHRoeSB0aWNrcyByZXF1aXJlZCBiZWZvcmUgZm9yY2luZyBhXG4gKiByZWNvbm5lY3QgKHdoaWNoIHJlcGxhY2VzIHRoZSBjaGFubmVsOyBpbi1mbGlnaHQgUlBDcyBhcmUgTk9UXG4gKiBjYW5jZWxsZWQgYmVjYXVzZSB0aGUgb2xkIGNoYW5uZWwgaXMgbGVmdCBhbGl2ZSB1bnRpbCBHQykuXG4gKi9cbmNvbnN0IFVOSEVBTFRIWV9SRUNPTk5FQ1RfVEhSRVNIT0xEID0gMztcblxuLyoqIE1hbmFnZXMgYSBwb29sIG9mIGNvbm5lY3Rpb25zIHRvIEdRTERCIHNlcnZlcnMgKi9cbmV4cG9ydCBjbGFzcyBDb25uZWN0aW9uUG9vbCB7XG4gIHByaXZhdGUgY29uZmlnOiBHcWxkYkNvbmZpZztcbiAgcHJpdmF0ZSBjb25uZWN0aW9uczogTWFwPHN0cmluZywgQ29ubmVjdGlvbj4gPSBuZXcgTWFwKCk7XG4gIHByaXZhdGUgY2xvc2VkID0gZmFsc2U7XG4gIHByaXZhdGUgaGVhbHRoQ2hlY2tUaW1lcj86IE5vZGVKUy5UaW1lb3V0O1xuXG4gIGNvbnN0cnVjdG9yKGNvbmZpZzogR3FsZGJDb25maWcpIHtcbiAgICB0aGlzLmNvbmZpZyA9IGNvbmZpZztcbiAgICB0aGlzLmluaXRDb25uZWN0aW9ucygpO1xuICAgIHRoaXMuc3RhcnRIZWFsdGhDaGVjaygpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0Q29ubmVjdGlvbnMoKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBob3N0IG9mIHRoaXMuY29uZmlnLmhvc3RzKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBjb25uID0gdGhpcy5jcmVhdGVDb25uZWN0aW9uKGhvc3QpO1xuICAgICAgICB0aGlzLmNvbm5lY3Rpb25zLnNldChob3N0LCBjb25uKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgLy8gQ29udGludWUgd2l0aCBvdGhlciBob3N0c1xuICAgICAgICBjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gY29ubmVjdCB0byAke2hvc3R9OmAsIGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmNvbm5lY3Rpb25zLnNpemUgPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBBbGxIb3N0c0ZhaWxlZEVycm9yKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVDb25uZWN0aW9uKGhvc3Q6IHN0cmluZyk6IENvbm5lY3Rpb24ge1xuICAgIGxldCBjcmVkZW50aWFsczogZ3JwYy5DaGFubmVsQ3JlZGVudGlhbHM7XG5cbiAgICBpZiAodGhpcy5jb25maWcudGxzT3B0aW9ucykge1xuICAgICAgY3JlZGVudGlhbHMgPSBncnBjLmNyZWRlbnRpYWxzLmNyZWF0ZVNzbCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjcmVkZW50aWFscyA9IGdycGMuY3JlZGVudGlhbHMuY3JlYXRlSW5zZWN1cmUoKTtcbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25zOiBncnBjLkNoYW5uZWxPcHRpb25zID0ge1xuICAgICAgJ2dycGMubWF4X3JlY2VpdmVfbWVzc2FnZV9sZW5ndGgnOiB0aGlzLmNvbmZpZy5tYXhSZWN2U2l6ZSA/PyA2NCAqIDEwMjQgKiAxMDI0LFxuICAgICAgJ2dycGMubWF4X3NlbmRfbWVzc2FnZV9sZW5ndGgnOiB0aGlzLmNvbmZpZy5tYXhSZWN2U2l6ZSA/PyA2NCAqIDEwMjQgKiAxMDI0LFxuICAgICAgJ2dycGMua2VlcGFsaXZlX3RpbWVfbXMnOiAzMDAwMCxcbiAgICAgICdncnBjLmtlZXBhbGl2ZV90aW1lb3V0X21zJzogMTAwMDAsXG4gICAgICAnZ3JwYy5rZWVwYWxpdmVfcGVybWl0X3dpdGhvdXRfY2FsbHMnOiAxLFxuICAgIH07XG5cbiAgICAvLyBDcmVhdGUgYSBnZW5lcmljIGNsaWVudCBmb3IgdGhlIGNoYW5uZWxcbiAgICBjb25zdCBjbGllbnQgPSBuZXcgZ3JwYy5DbGllbnQoaG9zdCwgY3JlZGVudGlhbHMsIG9wdGlvbnMpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGhvc3QsXG4gICAgICBjbGllbnQsXG4gICAgICBoZWFsdGh5OiB0cnVlLFxuICAgICAgbGFzdFBpbmc6IERhdGUubm93KCksXG4gICAgICBjb25zZWN1dGl2ZVVuaGVhbHRoeTogMCxcbiAgICB9O1xuICB9XG5cbiAgLyoqIEdldCBhIGhlYWx0aHkgY29ubmVjdGlvbiBmcm9tIHRoZSBwb29sICovXG4gIGdldENvbm5lY3Rpb24oKTogZ3JwYy5DbGllbnQge1xuICAgIGlmICh0aGlzLmNsb3NlZCkge1xuICAgICAgdGhyb3cgbmV3IENvbm5lY3Rpb25DbG9zZWRFcnJvcigpO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgY29ubiBvZiB0aGlzLmNvbm5lY3Rpb25zLnZhbHVlcygpKSB7XG4gICAgICBpZiAoY29ubi5oZWFsdGh5KSB7XG4gICAgICAgIHJldHVybiBjb25uLmNsaWVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgTm9Db25uZWN0aW9uRXJyb3IoKTtcbiAgfVxuXG4gIC8qKiBHZXQgYSBjb25uZWN0aW9uIGZvciBhIHNwZWNpZmljIGhvc3QgKi9cbiAgZ2V0Q29ubmVjdGlvbkZvckhvc3QoaG9zdDogc3RyaW5nKTogZ3JwYy5DbGllbnQge1xuICAgIGNvbnN0IGNvbm4gPSB0aGlzLmNvbm5lY3Rpb25zLmdldChob3N0KTtcbiAgICBpZiAoIWNvbm4gfHwgIWNvbm4uaGVhbHRoeSkge1xuICAgICAgdGhyb3cgbmV3IE5vQ29ubmVjdGlvbkVycm9yKCk7XG4gICAgfVxuICAgIHJldHVybiBjb25uLmNsaWVudDtcbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRIZWFsdGhDaGVjaygpOiB2b2lkIHtcbiAgICBjb25zdCBpbnRlcnZhbCA9IHRoaXMuY29uZmlnLmhlYWx0aENoZWNrSW50ZXJ2YWwgPz8gMzAwMDA7XG4gICAgaWYgKGludGVydmFsID4gMCkge1xuICAgICAgdGhpcy5oZWFsdGhDaGVja1RpbWVyID0gc2V0SW50ZXJ2YWwoKCkgPT4gdGhpcy5jaGVja0hlYWx0aCgpLCBpbnRlcnZhbCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhlYWx0aC1jaGVjayB0aWNrLiAgQ29ubmVjdGl2aXR5LXN0YXRlIHNlbWFudGljczpcbiAgICogIC0gUkVBRFkgLyBJRExFICAgICAgICAg4oaSIGhlYWx0aHk7IHJlc2V0IHRoZSB1bmhlYWx0aHkgY291bnRlci5cbiAgICogIC0gQ09OTkVDVElORyAgICAgICAgICAg4oaSIHRyYW5zaWVudDsgbGV0IHRoZSBjaGFubmVsIGhlYWwgaXRzZWxmLFxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb24ndCBjb3VudCB0b3dhcmQgdW5oZWFsdGh5LlxuICAgKiAgLSBTSFVURE9XTiAgICAgICAgICAgICDihpIgdGVybWluYWw7IHJlY29ubmVjdCBpbW1lZGlhdGVseS5cbiAgICogIC0gVFJBTlNJRU5UX0ZBSUxVUkUgICAg4oaSIGNvdW50IHRvd2FyZCB1bmhlYWx0aHk7IHJlY29ubmVjdCBvbmx5XG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFmdGVyIFVOSEVBTFRIWV9SRUNPTk5FQ1RfVEhSRVNIT0xEXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNlY3V0aXZlIHRpY2tzLlxuICAgKlxuICAgKiBSZWNvbm5lY3QgcmVwbGFjZXMgdGhlIHBvb2wncyBjaGFubmVsIHJlZmVyZW5jZTsgaXQgZG9lcyBOT1QgY2xvc2VcbiAgICogdGhlIG9sZCBjaGFubmVsLCBzbyBpbi1mbGlnaHQgUlBDcyBjb250aW51ZSB0byBjb21wbGV0aW9uIG9uIGl0LlxuICAgKi9cbiAgcHJpdmF0ZSBjaGVja0hlYWx0aCgpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IFtob3N0LCBjb25uXSBvZiB0aGlzLmNvbm5lY3Rpb25zKSB7XG4gICAgICBjb25zdCBzdGF0ZSA9IGNvbm4uY2xpZW50LmdldENoYW5uZWwoKS5nZXRDb25uZWN0aXZpdHlTdGF0ZShmYWxzZSk7XG5cbiAgICAgIGlmIChzdGF0ZSA9PT0gZ3JwYy5jb25uZWN0aXZpdHlTdGF0ZS5SRUFEWSB8fFxuICAgICAgICAgIHN0YXRlID09PSBncnBjLmNvbm5lY3Rpdml0eVN0YXRlLklETEUpIHtcbiAgICAgICAgY29ubi5oZWFsdGh5ID0gdHJ1ZTtcbiAgICAgICAgY29ubi5jb25zZWN1dGl2ZVVuaGVhbHRoeSA9IDA7XG4gICAgICAgIGNvbm4ubGFzdFBpbmcgPSBEYXRlLm5vdygpO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKHN0YXRlID09PSBncnBjLmNvbm5lY3Rpdml0eVN0YXRlLkNPTk5FQ1RJTkcpIHtcbiAgICAgICAgLy8gVHJhbnNpZW50IOKAlCBsZXQgdGhlIGNoYW5uZWwgaGVhbCBpdHNlbGYuXG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoc3RhdGUgPT09IGdycGMuY29ubmVjdGl2aXR5U3RhdGUuU0hVVERPV04pIHtcbiAgICAgICAgY29ubi5oZWFsdGh5ID0gZmFsc2U7XG4gICAgICAgIGNvbm4uY29uc2VjdXRpdmVVbmhlYWx0aHkgPSBVTkhFQUxUSFlfUkVDT05ORUNUX1RIUkVTSE9MRDtcbiAgICAgICAgdGhpcy5yZWNvbm5lY3QoaG9zdCk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBUUkFOU0lFTlRfRkFJTFVSRSBvciBhbnkgb3RoZXIgbm9uLVJFQURZIHN0YXRlLlxuICAgICAgY29ubi5jb25zZWN1dGl2ZVVuaGVhbHRoeSsrO1xuICAgICAgaWYgKGNvbm4uY29uc2VjdXRpdmVVbmhlYWx0aHkgPj0gVU5IRUFMVEhZX1JFQ09OTkVDVF9USFJFU0hPTEQpIHtcbiAgICAgICAgY29ubi5oZWFsdGh5ID0gZmFsc2U7XG4gICAgICAgIHRoaXMucmVjb25uZWN0KGhvc3QpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXBsYWNlIHRoZSBwb29sJ3MgY2hhbm5lbCBmb3IgYGhvc3RgIHdpdGggYSBmcmVzaCBvbmUuXG4gICAqXG4gICAqIENyaXRpY2FsbHksIGRvZXMgTk9UIGNsb3NlIHRoZSBvbGQgY2hhbm5lbC4gIEluLWZsaWdodCBSUENzIGhvbGRcbiAgICogdGhlaXIgb3duIHJlZmVyZW5jZSB0byBpdCB2aWEgdGhlIGNsaWVudCB0aGV5IHdlcmUgaXNzdWVkIG9uIGFuZFxuICAgKiBjb250aW51ZSB0byBjb21wbGV0aW9uIG9uIHRoYXQgY2hhbm5lbDsgdGhlIE5vZGUuanMgcnVudGltZSdzXG4gICAqIGdhcmJhZ2UgY29sbGVjdG9yIHJlbGVhc2VzIHRoZSBvbGQgY2hhbm5lbCBvbmx5IGFmdGVyIGV2ZXJ5XG4gICAqIGluLWZsaWdodCBSUEMgaGFzIHJlc29sdmVkLlxuICAgKlxuICAgKiBFYXJsaWVyIHZlcnNpb25zIGNsb3NlZCB0aGUgb2xkIGNoYW5uZWwgc3luY2hyb25vdXNseSBoZXJlLCB3aGljaFxuICAgKiBjYW5jZWxsZWQgZXZlcnkgcGVuZGluZyBSUEMgd2l0aCBhIFwiQ2hhbm5lbCBjbG9zZWQhXCItc3R5bGUgZXJyb3IuXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIHJlY29ubmVjdChob3N0OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5jbG9zZWQpIHJldHVybjtcblxuICAgIHRyeSB7XG4gICAgICAvLyBCdWlsZCB0aGUgbmV3IGNvbm5lY3Rpb24gdXAtZnJvbnQ7IG9ubHkgc3dhcCBpZiBpdCBzdWNjZWVkcy5cbiAgICAgIGNvbnN0IG5ld0Nvbm4gPSB0aGlzLmNyZWF0ZUNvbm5lY3Rpb24oaG9zdCk7XG4gICAgICAvLyBPdmVyd3JpdGUgdGhlIHBvb2wgZW50cnkuICBUaGUgb2xkIENvbm5lY3Rpb24gaXMgbm93XG4gICAgICAvLyB1bnJlZmVyZW5jZWQgYnkgdGhlIHBvb2w7IGluLWZsaWdodCBSUENzIHN0aWxsIGhvbGQgaXRzXG4gICAgICAvLyBncnBjLkNsaWVudCBhbGl2ZSB2aWEgcGVyLWNhbGwgcmVmZXJlbmNlcy4gIE9uY2UgdGhleVxuICAgICAgLy8gY29tcGxldGUgdGhlIGNsaWVudCBiZWNvbWVzIGdhcmJhZ2UgYW5kIGdSUEMgY2xvc2VzIGl0XG4gICAgICAvLyBuYXR1cmFsbHkuXG4gICAgICB0aGlzLmNvbm5lY3Rpb25zLnNldChob3N0LCBuZXdDb25uKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gcmVjb25uZWN0IHRvICR7aG9zdH06YCwgZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIENsb3NlIGFsbCBjb25uZWN0aW9ucyBpbiB0aGUgcG9vbCAqL1xuICBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jbG9zZWQpIHJldHVybjtcblxuICAgIHRoaXMuY2xvc2VkID0gdHJ1ZTtcblxuICAgIGlmICh0aGlzLmhlYWx0aENoZWNrVGltZXIpIHtcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5oZWFsdGhDaGVja1RpbWVyKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGNvbm4gb2YgdGhpcy5jb25uZWN0aW9ucy52YWx1ZXMoKSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29ubi5jbGllbnQuY2xvc2UoKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgLy8gSWdub3JlXG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5jb25uZWN0aW9ucy5jbGVhcigpO1xuICB9XG5cbiAgLyoqIEdldCB0aGUgbnVtYmVyIG9mIGhlYWx0aHkgaG9zdHMgKi9cbiAgaGVhbHRoeUhvc3RDb3VudCgpOiBudW1iZXIge1xuICAgIGxldCBjb3VudCA9IDA7XG4gICAgZm9yIChjb25zdCBjb25uIG9mIHRoaXMuY29ubmVjdGlvbnMudmFsdWVzKCkpIHtcbiAgICAgIGlmIChjb25uLmhlYWx0aHkpIGNvdW50Kys7XG4gICAgfVxuICAgIHJldHVybiBjb3VudDtcbiAgfVxuXG4gIC8qKiBHZXQgdGhlIGxpc3Qgb2YgY29uZmlndXJlZCBob3N0cyAqL1xuICBob3N0cygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5jb25uZWN0aW9ucy5rZXlzKCkpO1xuICB9XG5cbiAgLyoqIENoZWNrIGlmIHRoZSBwb29sIGlzIGNsb3NlZCAqL1xuICBpc0Nsb3NlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jbG9zZWQ7XG4gIH1cbn1cbiJdfQ==
|
|
247
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25uZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsb0RBQXNDO0FBRXRDLHFDQUF5RjtBQWtCekY7Ozs7R0FJRztBQUNILE1BQU0sNkJBQTZCLEdBQUcsQ0FBQyxDQUFDO0FBRXhDLHFEQUFxRDtBQUNyRCxNQUFhLGNBQWM7SUFDakIsTUFBTSxDQUFjO0lBQ3BCLFdBQVcsR0FBNEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNqRCxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ2YsZ0JBQWdCLENBQWtCO0lBRTFDLFlBQVksTUFBbUI7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTyxlQUFlO1FBQ3JCLEtBQUssTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUM7Z0JBQ0gsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN6QyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ1gsNEJBQTRCO2dCQUM1QixPQUFPLENBQUMsS0FBSyxDQUFDLHdCQUF3QixJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwRCxDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDaEMsTUFBTSxJQUFJLDRCQUFt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QUksSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDN0MsSUFBSSxJQUFJLENBQUMsT0FBTztnQkFBRSxLQUFLLEVBQUUsQ0FBQztRQUM1QixDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsdUNBQXVDO0lBQ3ZDLEtBQUs7UUFDSCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxrQ0FBa0M7SUFDbEMsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0NBQ0Y7QUF6TkQsd0NBeU5DIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb25uZWN0aW9uIG1hbmFnZW1lbnQgZm9yIEdRTERCIE5vZGUuanMgZHJpdmVyLlxuICovXG5cbmltcG9ydCAqIGFzIGdycGMgZnJvbSAnQGdycGMvZ3JwYy1qcyc7XG5pbXBvcnQgeyBHcWxkYkNvbmZpZyB9IGZyb20gJy4vY29uZmlnJztcbmltcG9ydCB7IEFsbEhvc3RzRmFpbGVkRXJyb3IsIENvbm5lY3Rpb25DbG9zZWRFcnJvciwgTm9Db25uZWN0aW9uRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5cbi8qKiBSZXByZXNlbnRzIGEgc2luZ2xlIGdSUEMgY29ubmVjdGlvbiAqL1xuaW50ZXJmYWNlIENvbm5lY3Rpb24ge1xuICBob3N0OiBzdHJpbmc7XG4gIGNsaWVudDogZ3JwYy5DbGllbnQ7XG4gIGhlYWx0aHk6IGJvb2xlYW47XG4gIGxhc3RQaW5nOiBudW1iZXI7XG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgY29uc2VjdXRpdmUgaGVhbHRoLWNoZWNrIHRpY2tzIHRoYXQgb2JzZXJ2ZWQgYSBub24tUkVBRFlcbiAgICogc3RhdGUuIFJlY29ubmVjdCBpcyBvbmx5IHRyaWdnZXJlZCBhZnRlciB0aGlzIHJlYWNoZXNcbiAgICogVU5IRUFMVEhZX1JFQ09OTkVDVF9USFJFU0hPTEQsIHNvIGEgc2luZ2xlIHRyYW5zaWVudCBmbGlja2VyXG4gICAqIGR1cmluZyBhIGJ1c3kgaW4tZmxpZ2h0IFJQQyBkb2VzIG5vdCB0ZWFyIHRoZSBjaGFubmVsIGRvd24gYW5kXG4gICAqIGNhbmNlbCBldmVyeSBwZW5kaW5nIHJlcXVlc3QuXG4gICAqL1xuICBjb25zZWN1dGl2ZVVuaGVhbHRoeTogbnVtYmVyO1xufVxuXG4vKipcbiAqIE51bWJlciBvZiBjb25zZWN1dGl2ZSB1bmhlYWx0aHkgdGlja3MgcmVxdWlyZWQgYmVmb3JlIGZvcmNpbmcgYVxuICogcmVjb25uZWN0ICh3aGljaCByZXBsYWNlcyB0aGUgY2hhbm5lbDsgaW4tZmxpZ2h0IFJQQ3MgYXJlIE5PVFxuICogY2FuY2VsbGVkIGJlY2F1c2UgdGhlIG9sZCBjaGFubmVsIGlzIGxlZnQgYWxpdmUgdW50aWwgR0MpLlxuICovXG5jb25zdCBVTkhFQUxUSFlfUkVDT05ORUNUX1RIUkVTSE9MRCA9IDM7XG5cbi8qKiBNYW5hZ2VzIGEgcG9vbCBvZiBjb25uZWN0aW9ucyB0byBHUUxEQiBzZXJ2ZXJzICovXG5leHBvcnQgY2xhc3MgQ29ubmVjdGlvblBvb2wge1xuICBwcml2YXRlIGNvbmZpZzogR3FsZGJDb25maWc7XG4gIHByaXZhdGUgY29ubmVjdGlvbnM6IE1hcDxzdHJpbmcsIENvbm5lY3Rpb24+ID0gbmV3IE1hcCgpO1xuICBwcml2YXRlIGNsb3NlZCA9IGZhbHNlO1xuICBwcml2YXRlIGhlYWx0aENoZWNrVGltZXI/OiBOb2RlSlMuVGltZW91dDtcblxuICBjb25zdHJ1Y3Rvcihjb25maWc6IEdxbGRiQ29uZmlnKSB7XG4gICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgdGhpcy5pbml0Q29ubmVjdGlvbnMoKTtcbiAgICB0aGlzLnN0YXJ0SGVhbHRoQ2hlY2soKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdENvbm5lY3Rpb25zKCk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgaG9zdCBvZiB0aGlzLmNvbmZpZy5ob3N0cykge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgY29ubiA9IHRoaXMuY3JlYXRlQ29ubmVjdGlvbihob3N0KTtcbiAgICAgICAgdGhpcy5jb25uZWN0aW9ucy5zZXQoaG9zdCwgY29ubik7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIENvbnRpbnVlIHdpdGggb3RoZXIgaG9zdHNcbiAgICAgICAgY29uc29sZS5lcnJvcihgRmFpbGVkIHRvIGNvbm5lY3QgdG8gJHtob3N0fTpgLCBlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5jb25uZWN0aW9ucy5zaXplID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgQWxsSG9zdHNGYWlsZWRFcnJvcigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQ29ubmVjdGlvbihob3N0OiBzdHJpbmcpOiBDb25uZWN0aW9uIHtcbiAgICBsZXQgY3JlZGVudGlhbHM6IGdycGMuQ2hhbm5lbENyZWRlbnRpYWxzO1xuXG4gICAgaWYgKHRoaXMuY29uZmlnLnRsc09wdGlvbnMpIHtcbiAgICAgIGNyZWRlbnRpYWxzID0gZ3JwYy5jcmVkZW50aWFscy5jcmVhdGVTc2woKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY3JlZGVudGlhbHMgPSBncnBjLmNyZWRlbnRpYWxzLmNyZWF0ZUluc2VjdXJlKCk7XG4gICAgfVxuXG4gICAgY29uc3Qgb3B0aW9uczogZ3JwYy5DaGFubmVsT3B0aW9ucyA9IHtcbiAgICAgICdncnBjLm1heF9yZWNlaXZlX21lc3NhZ2VfbGVuZ3RoJzogdGhpcy5jb25maWcubWF4UmVjdlNpemUgPz8gNjQgKiAxMDI0ICogMTAyNCxcbiAgICAgICdncnBjLm1heF9zZW5kX21lc3NhZ2VfbGVuZ3RoJzogdGhpcy5jb25maWcubWF4UmVjdlNpemUgPz8gNjQgKiAxMDI0ICogMTAyNCxcbiAgICAgICdncnBjLmtlZXBhbGl2ZV90aW1lX21zJzogMzAwMDAsXG4gICAgICAnZ3JwYy5rZWVwYWxpdmVfdGltZW91dF9tcyc6IDEwMDAwLFxuICAgICAgJ2dycGMua2VlcGFsaXZlX3Blcm1pdF93aXRob3V0X2NhbGxzJzogMSxcbiAgICB9O1xuXG4gICAgLy8gQ3JlYXRlIGEgZ2VuZXJpYyBjbGllbnQgZm9yIHRoZSBjaGFubmVsXG4gICAgY29uc3QgY2xpZW50ID0gbmV3IGdycGMuQ2xpZW50KGhvc3QsIGNyZWRlbnRpYWxzLCBvcHRpb25zKTtcblxuICAgIHJldHVybiB7XG4gICAgICBob3N0LFxuICAgICAgY2xpZW50LFxuICAgICAgaGVhbHRoeTogdHJ1ZSxcbiAgICAgIGxhc3RQaW5nOiBEYXRlLm5vdygpLFxuICAgICAgY29uc2VjdXRpdmVVbmhlYWx0aHk6IDAsXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBHZXQgYSBoZWFsdGh5IGNvbm5lY3Rpb24gZnJvbSB0aGUgcG9vbCAqL1xuICBnZXRDb25uZWN0aW9uKCk6IGdycGMuQ2xpZW50IHtcbiAgICBpZiAodGhpcy5jbG9zZWQpIHtcbiAgICAgIHRocm93IG5ldyBDb25uZWN0aW9uQ2xvc2VkRXJyb3IoKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGNvbm4gb2YgdGhpcy5jb25uZWN0aW9ucy52YWx1ZXMoKSkge1xuICAgICAgaWYgKGNvbm4uaGVhbHRoeSkge1xuICAgICAgICByZXR1cm4gY29ubi5jbGllbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IE5vQ29ubmVjdGlvbkVycm9yKCk7XG4gIH1cblxuICAvKiogR2V0IGEgY29ubmVjdGlvbiBmb3IgYSBzcGVjaWZpYyBob3N0ICovXG4gIGdldENvbm5lY3Rpb25Gb3JIb3N0KGhvc3Q6IHN0cmluZyk6IGdycGMuQ2xpZW50IHtcbiAgICBjb25zdCBjb25uID0gdGhpcy5jb25uZWN0aW9ucy5nZXQoaG9zdCk7XG4gICAgaWYgKCFjb25uIHx8ICFjb25uLmhlYWx0aHkpIHtcbiAgICAgIHRocm93IG5ldyBOb0Nvbm5lY3Rpb25FcnJvcigpO1xuICAgIH1cbiAgICByZXR1cm4gY29ubi5jbGllbnQ7XG4gIH1cblxuICBwcml2YXRlIHN0YXJ0SGVhbHRoQ2hlY2soKTogdm9pZCB7XG4gICAgY29uc3QgaW50ZXJ2YWwgPSB0aGlzLmNvbmZpZy5oZWFsdGhDaGVja0ludGVydmFsID8/IDMwMDAwO1xuICAgIGlmIChpbnRlcnZhbCA+IDApIHtcbiAgICAgIHRoaXMuaGVhbHRoQ2hlY2tUaW1lciA9IHNldEludGVydmFsKCgpID0+IHRoaXMuY2hlY2tIZWFsdGgoKSwgaW50ZXJ2YWwpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIZWFsdGgtY2hlY2sgdGljay4gIENvbm5lY3Rpdml0eS1zdGF0ZSBzZW1hbnRpY3M6XG4gICAqICAtIFJFQURZIC8gSURMRSAgICAgICAgIOKGkiBoZWFsdGh5OyByZXNldCB0aGUgdW5oZWFsdGh5IGNvdW50ZXIuXG4gICAqICAtIENPTk5FQ1RJTkcgICAgICAgICAgIOKGkiB0cmFuc2llbnQ7IGxldCB0aGUgY2hhbm5lbCBoZWFsIGl0c2VsZixcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9uJ3QgY291bnQgdG93YXJkIHVuaGVhbHRoeS5cbiAgICogIC0gU0hVVERPV04gICAgICAgICAgICAg4oaSIHRlcm1pbmFsOyByZWNvbm5lY3QgaW1tZWRpYXRlbHkuXG4gICAqICAtIFRSQU5TSUVOVF9GQUlMVVJFICAgIOKGkiBjb3VudCB0b3dhcmQgdW5oZWFsdGh5OyByZWNvbm5lY3Qgb25seVxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZnRlciBVTkhFQUxUSFlfUkVDT05ORUNUX1RIUkVTSE9MRFxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zZWN1dGl2ZSB0aWNrcy5cbiAgICpcbiAgICogUmVjb25uZWN0IHJlcGxhY2VzIHRoZSBwb29sJ3MgY2hhbm5lbCByZWZlcmVuY2U7IGl0IGRvZXMgTk9UIGNsb3NlXG4gICAqIHRoZSBvbGQgY2hhbm5lbCwgc28gaW4tZmxpZ2h0IFJQQ3MgY29udGludWUgdG8gY29tcGxldGlvbiBvbiBpdC5cbiAgICovXG4gIHByaXZhdGUgY2hlY2tIZWFsdGgoKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBbaG9zdCwgY29ubl0gb2YgdGhpcy5jb25uZWN0aW9ucykge1xuICAgICAgY29uc3Qgc3RhdGUgPSBjb25uLmNsaWVudC5nZXRDaGFubmVsKCkuZ2V0Q29ubmVjdGl2aXR5U3RhdGUoZmFsc2UpO1xuXG4gICAgICBpZiAoc3RhdGUgPT09IGdycGMuY29ubmVjdGl2aXR5U3RhdGUuUkVBRFkgfHxcbiAgICAgICAgICBzdGF0ZSA9PT0gZ3JwYy5jb25uZWN0aXZpdHlTdGF0ZS5JRExFKSB7XG4gICAgICAgIGNvbm4uaGVhbHRoeSA9IHRydWU7XG4gICAgICAgIGNvbm4uY29uc2VjdXRpdmVVbmhlYWx0aHkgPSAwO1xuICAgICAgICBjb25uLmxhc3RQaW5nID0gRGF0ZS5ub3coKTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGlmIChzdGF0ZSA9PT0gZ3JwYy5jb25uZWN0aXZpdHlTdGF0ZS5DT05ORUNUSU5HKSB7XG4gICAgICAgIC8vIFRyYW5zaWVudCDigJQgbGV0IHRoZSBjaGFubmVsIGhlYWwgaXRzZWxmLlxuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKHN0YXRlID09PSBncnBjLmNvbm5lY3Rpdml0eVN0YXRlLlNIVVRET1dOKSB7XG4gICAgICAgIGNvbm4uaGVhbHRoeSA9IGZhbHNlO1xuICAgICAgICBjb25uLmNvbnNlY3V0aXZlVW5oZWFsdGh5ID0gVU5IRUFMVEhZX1JFQ09OTkVDVF9USFJFU0hPTEQ7XG4gICAgICAgIHRoaXMucmVjb25uZWN0KGhvc3QpO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgLy8gVFJBTlNJRU5UX0ZBSUxVUkUgb3IgYW55IG90aGVyIG5vbi1SRUFEWSBzdGF0ZS5cbiAgICAgIGNvbm4uY29uc2VjdXRpdmVVbmhlYWx0aHkrKztcbiAgICAgIGlmIChjb25uLmNvbnNlY3V0aXZlVW5oZWFsdGh5ID49IFVOSEVBTFRIWV9SRUNPTk5FQ1RfVEhSRVNIT0xEKSB7XG4gICAgICAgIGNvbm4uaGVhbHRoeSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJlY29ubmVjdChob3N0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVwbGFjZSB0aGUgcG9vbCdzIGNoYW5uZWwgZm9yIGBob3N0YCB3aXRoIGEgZnJlc2ggb25lLlxuICAgKlxuICAgKiBDcml0aWNhbGx5LCBkb2VzIE5PVCBjbG9zZSB0aGUgb2xkIGNoYW5uZWwuICBJbi1mbGlnaHQgUlBDcyBob2xkXG4gICAqIHRoZWlyIG93biByZWZlcmVuY2UgdG8gaXQgdmlhIHRoZSBjbGllbnQgdGhleSB3ZXJlIGlzc3VlZCBvbiBhbmRcbiAgICogY29udGludWUgdG8gY29tcGxldGlvbiBvbiB0aGF0IGNoYW5uZWw7IHRoZSBOb2RlLmpzIHJ1bnRpbWUnc1xuICAgKiBnYXJiYWdlIGNvbGxlY3RvciByZWxlYXNlcyB0aGUgb2xkIGNoYW5uZWwgb25seSBhZnRlciBldmVyeVxuICAgKiBpbi1mbGlnaHQgUlBDIGhhcyByZXNvbHZlZC5cbiAgICpcbiAgICogRWFybGllciB2ZXJzaW9ucyBjbG9zZWQgdGhlIG9sZCBjaGFubmVsIHN5bmNocm9ub3VzbHkgaGVyZSwgd2hpY2hcbiAgICogY2FuY2VsbGVkIGV2ZXJ5IHBlbmRpbmcgUlBDIHdpdGggYSBcIkNoYW5uZWwgY2xvc2VkIVwiLXN0eWxlIGVycm9yLlxuICAgKi9cbiAgLyoqXG4gICAqIFJlYnVpbGQgZXZlcnkgaG9zdCdzIGdSUEMgY2xpZW50IGluIHRoZSBwb29sLiAgQ2FsbGVkIGJ5IHRoZSBjbGllbnRcbiAgICogb24gdHJhbnNwb3J0LWxldmVsIGVycm9ycyAoVU5BVkFJTEFCTEUgLyBjb25uZWN0aW9uIHJlc2V0KSBzbyB0aGVcbiAgICogbmV4dCBSUEMgZ2V0cyBhIGZyZXNoIGNoYW5uZWwuICBMaWtlIHJlY29ubmVjdCwgdGhpcyBkb2VzIE5PVCBjbG9zZVxuICAgKiBvbGQgY2xpZW50cyBzeW5jaHJvbm91c2x5IOKAlCBpbi1mbGlnaHQgUlBDcyBob2xkIHRoZW0gYWxpdmUgYW5kIGdSUENcbiAgICogY2xvc2VzIHRoZW0gbmF0dXJhbGx5IG9uY2UgdGhvc2UgY2FsbHMgY29tcGxldGUuXG4gICAqL1xuICBhc3luYyBmb3JjZVJlY29ubmVjdEFsbCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5jbG9zZWQpIHJldHVybjtcbiAgICBjb25zdCBob3N0cyA9IEFycmF5LmZyb20odGhpcy5jb25uZWN0aW9ucy5rZXlzKCkpO1xuICAgIGZvciAoY29uc3QgaG9zdCBvZiBob3N0cykge1xuICAgICAgYXdhaXQgdGhpcy5yZWNvbm5lY3QoaG9zdCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyByZWNvbm5lY3QoaG9zdDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMuY2xvc2VkKSByZXR1cm47XG5cbiAgICB0cnkge1xuICAgICAgLy8gQnVpbGQgdGhlIG5ldyBjb25uZWN0aW9uIHVwLWZyb250OyBvbmx5IHN3YXAgaWYgaXQgc3VjY2VlZHMuXG4gICAgICBjb25zdCBuZXdDb25uID0gdGhpcy5jcmVhdGVDb25uZWN0aW9uKGhvc3QpO1xuICAgICAgLy8gT3ZlcndyaXRlIHRoZSBwb29sIGVudHJ5LiAgVGhlIG9sZCBDb25uZWN0aW9uIGlzIG5vd1xuICAgICAgLy8gdW5yZWZlcmVuY2VkIGJ5IHRoZSBwb29sOyBpbi1mbGlnaHQgUlBDcyBzdGlsbCBob2xkIGl0c1xuICAgICAgLy8gZ3JwYy5DbGllbnQgYWxpdmUgdmlhIHBlci1jYWxsIHJlZmVyZW5jZXMuICBPbmNlIHRoZXlcbiAgICAgIC8vIGNvbXBsZXRlIHRoZSBjbGllbnQgYmVjb21lcyBnYXJiYWdlIGFuZCBnUlBDIGNsb3NlcyBpdFxuICAgICAgLy8gbmF0dXJhbGx5LlxuICAgICAgdGhpcy5jb25uZWN0aW9ucy5zZXQoaG9zdCwgbmV3Q29ubik7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5lcnJvcihgRmFpbGVkIHRvIHJlY29ubmVjdCB0byAke2hvc3R9OmAsIGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDbG9zZSBhbGwgY29ubmVjdGlvbnMgaW4gdGhlIHBvb2wgKi9cbiAgY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2xvc2VkKSByZXR1cm47XG5cbiAgICB0aGlzLmNsb3NlZCA9IHRydWU7XG5cbiAgICBpZiAodGhpcy5oZWFsdGhDaGVja1RpbWVyKSB7XG4gICAgICBjbGVhckludGVydmFsKHRoaXMuaGVhbHRoQ2hlY2tUaW1lcik7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBjb25uIG9mIHRoaXMuY29ubmVjdGlvbnMudmFsdWVzKCkpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbm4uY2xpZW50LmNsb3NlKCk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIElnbm9yZVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuY29ubmVjdGlvbnMuY2xlYXIoKTtcbiAgfVxuXG4gIC8qKiBHZXQgdGhlIG51bWJlciBvZiBoZWFsdGh5IGhvc3RzICovXG4gIGhlYWx0aHlIb3N0Q291bnQoKTogbnVtYmVyIHtcbiAgICBsZXQgY291bnQgPSAwO1xuICAgIGZvciAoY29uc3QgY29ubiBvZiB0aGlzLmNvbm5lY3Rpb25zLnZhbHVlcygpKSB7XG4gICAgICBpZiAoY29ubi5oZWFsdGh5KSBjb3VudCsrO1xuICAgIH1cbiAgICByZXR1cm4gY291bnQ7XG4gIH1cblxuICAvKiogR2V0IHRoZSBsaXN0IG9mIGNvbmZpZ3VyZWQgaG9zdHMgKi9cbiAgaG9zdHMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuY29ubmVjdGlvbnMua2V5cygpKTtcbiAgfVxuXG4gIC8qKiBDaGVjayBpZiB0aGUgcG9vbCBpcyBjbG9zZWQgKi9cbiAgaXNDbG9zZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2xvc2VkO1xuICB9XG59XG4iXX0=
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export { GqldbClient, QueryConfig, InsertConfig, DeleteConfig, HealthWatcher } from './client';
|
|
5
5
|
export { GqldbConfig, ConfigBuilder, createConfig, validateConfig, DEFAULT_CONFIG } from './config';
|
|
6
|
-
export { PropertyType, GraphType, HealthStatus, CacheType, InsertType, TypedValue, createTypedValue, typedValueToJS, Parameter, createParameter, Point, Point3D, NodeData, EdgeData, GraphInfo, TransactionInfo, ASTCacheStats, PlanCacheStats, CacheStats, Statistics, SystemMetrics, CpuMetrics, MemoryMetrics, DiskIOMetrics, StorageMetrics, NetworkMetrics, ExportedNode, ExportedEdge, BulkCreateNodesOptions, BulkCreateEdgesOptions, BulkImportOptions, BulkImportSession, CheckpointResult, EndBulkImportResult, AbortBulkImportResult, BulkImportStatus, Schema, PropertyDef, Header, Table, Attr, } from './types';
|
|
6
|
+
export { PropertyType, GraphType, EdgeIdMode, HealthStatus, CacheType, InsertType, TypedValue, createTypedValue, typedValueToJS, Parameter, createParameter, Point, Point3D, NodeData, EdgeData, GraphInfo, TransactionInfo, ASTCacheStats, PlanCacheStats, CacheStats, Statistics, SystemMetrics, CpuMetrics, MemoryMetrics, DiskIOMetrics, StorageMetrics, NetworkMetrics, ExportedNode, ExportedEdge, BulkCreateNodesOptions, BulkCreateEdgesOptions, BulkImportOptions, BulkImportSession, CheckpointResult, EndBulkImportResult, AbortBulkImportResult, BulkImportStatus, Schema, PropertyDef, Header, Table, Attr, } from './types';
|
|
7
7
|
export { Response, Row, InsertNodesResult, InsertEdgesResult, ExportNodesResult, ExportEdgesResult, Node, Edge, Path, NodeResult, EdgeResult, } from './response';
|
|
8
8
|
export { printNodes, printNodesWithoutSchema, printEdges, printEdgesWithoutSchema, printPaths, printTable, printAny, } from './printers';
|
|
9
9
|
export { Session, SessionManager } from './session';
|
package/dist/index.js
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* GQLDB Node.js Driver - A gRPC-based client for GQLDB graph database.
|
|
4
4
|
*/
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
7
|
-
exports.VERSION = exports.UnsupportedTypeError = exports.TypeConversionError = exports.InvalidTypeError = exports.ExportFailedError = exports.DeleteFailedError = exports.InsertFailedError = exports.DropGraphFailedError = exports.CreateGraphFailedError = exports.GraphExistsError = exports.GraphNotFoundError = exports.EmptyQueryError = void 0;
|
|
6
|
+
exports.QueryTimeoutError = exports.QueryFailedError = exports.TransactionAlreadyOpenError = exports.TransactionNotFoundError = exports.TransactionFailedError = exports.NoTransactionError = exports.InvalidSessionError = exports.SessionExpiredError = exports.LogoutFailedError = exports.LoginFailedError = exports.NotLoggedInError = exports.HealthCheckFailedError = exports.AllHostsFailedError = exports.ConnectionFailedError = exports.ConnectionClosedError = exports.NoConnectionError = exports.InvalidTimeoutError = exports.NoHostsError = exports.GqldbError = exports.promisifyCallWithDeadline = exports.promisifyCall = exports.createServiceClients = exports.ConnectionPool = exports.TransactionManager = exports.SessionManager = exports.printAny = exports.printTable = exports.printPaths = exports.printEdgesWithoutSchema = exports.printEdges = exports.printNodesWithoutSchema = exports.printNodes = exports.Row = exports.Response = exports.Point3D = exports.Point = exports.createParameter = exports.typedValueToJS = exports.createTypedValue = exports.InsertType = exports.CacheType = exports.HealthStatus = exports.EdgeIdMode = exports.GraphType = exports.PropertyType = exports.DEFAULT_CONFIG = exports.validateConfig = exports.createConfig = exports.ConfigBuilder = exports.GqldbClient = void 0;
|
|
7
|
+
exports.VERSION = exports.UnsupportedTypeError = exports.TypeConversionError = exports.InvalidTypeError = exports.ExportFailedError = exports.DeleteFailedError = exports.InsertFailedError = exports.DropGraphFailedError = exports.CreateGraphFailedError = exports.GraphExistsError = exports.GraphNotFoundError = exports.EmptyQueryError = exports.InvalidQueryError = void 0;
|
|
8
8
|
// Main client
|
|
9
9
|
var client_1 = require("./client");
|
|
10
10
|
Object.defineProperty(exports, "GqldbClient", { enumerable: true, get: function () { return client_1.GqldbClient; } });
|
|
@@ -18,6 +18,7 @@ Object.defineProperty(exports, "DEFAULT_CONFIG", { enumerable: true, get: functi
|
|
|
18
18
|
var types_1 = require("./types");
|
|
19
19
|
Object.defineProperty(exports, "PropertyType", { enumerable: true, get: function () { return types_1.PropertyType; } });
|
|
20
20
|
Object.defineProperty(exports, "GraphType", { enumerable: true, get: function () { return types_1.GraphType; } });
|
|
21
|
+
Object.defineProperty(exports, "EdgeIdMode", { enumerable: true, get: function () { return types_1.EdgeIdMode; } });
|
|
21
22
|
Object.defineProperty(exports, "HealthStatus", { enumerable: true, get: function () { return types_1.HealthStatus; } });
|
|
22
23
|
Object.defineProperty(exports, "CacheType", { enumerable: true, get: function () { return types_1.CacheType; } });
|
|
23
24
|
Object.defineProperty(exports, "InsertType", { enumerable: true, get: function () { return types_1.InsertType; } });
|
|
@@ -88,4 +89,4 @@ Object.defineProperty(exports, "TypeConversionError", { enumerable: true, get: f
|
|
|
88
89
|
Object.defineProperty(exports, "UnsupportedTypeError", { enumerable: true, get: function () { return errors_1.UnsupportedTypeError; } });
|
|
89
90
|
// Version
|
|
90
91
|
exports.VERSION = '0.1.0';
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7O0FBRUgsY0FBYztBQUNkLG1DQUErRjtBQUF0RixxR0FBQSxXQUFXLE9BQUE7QUFFcEIsZ0JBQWdCO0FBQ2hCLG1DQUFvRztBQUE5RSx1R0FBQSxhQUFhLE9BQUE7QUFBRSxzR0FBQSxZQUFZLE9BQUE7QUFBRSx3R0FBQSxjQUFjLE9BQUE7QUFBRSx3R0FBQSxjQUFjLE9BQUE7QUFFakYsUUFBUTtBQUNSLGlDQTJDaUI7QUExQ2YscUdBQUEsWUFBWSxPQUFBO0FBQ1osa0dBQUEsU0FBUyxPQUFBO0FBQ1QsbUdBQUEsVUFBVSxPQUFBO0FBQ1YscUdBQUEsWUFBWSxPQUFBO0FBQ1osa0dBQUEsU0FBUyxPQUFBO0FBQ1QsbUdBQUEsVUFBVSxPQUFBO0FBRVYseUdBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsdUdBQUEsY0FBYyxPQUFBO0FBRWQsd0dBQUEsZUFBZSxPQUFBO0FBQ2YsOEZBQUEsS0FBSyxPQUFBO0FBQ0wsZ0dBQUEsT0FBTyxPQUFBO0FBZ0NULFdBQVc7QUFDWCx1Q0FZb0I7QUFYbEIsb0dBQUEsUUFBUSxPQUFBO0FBQ1IsK0ZBQUEsR0FBRyxPQUFBO0FBWUwsV0FBVztBQUNYLHVDQVFvQjtBQVBsQixzR0FBQSxVQUFVLE9BQUE7QUFDVixtSEFBQSx1QkFBdUIsT0FBQTtBQUN2QixzR0FBQSxVQUFVLE9BQUE7QUFDVixtSEFBQSx1QkFBdUIsT0FBQTtBQUN2QixzR0FBQSxVQUFVLE9BQUE7QUFDVixzR0FBQSxVQUFVLE9BQUE7QUFDVixvR0FBQSxRQUFRLE9BQUE7QUFHVixVQUFVO0FBQ1YscUNBQW9EO0FBQWxDLHlHQUFBLGNBQWMsT0FBQTtBQUVoQyxjQUFjO0FBQ2QsNkNBQWdFO0FBQTFDLGlIQUFBLGtCQUFrQixPQUFBO0FBRXhDLGFBQWE7QUFDYiwyQ0FBOEM7QUFBckMsNEdBQUEsY0FBYyxPQUFBO0FBRXZCLFdBQVc7QUFDWCx1Q0FBNEc7QUFBbkcsZ0hBQUEsb0JBQW9CLE9BQUE7QUFBa0IseUdBQUEsYUFBYSxPQUFBO0FBQUUscUhBQUEseUJBQXlCLE9BQUE7QUFFdkYsU0FBUztBQUNULG1DQWdDa0I7QUEvQmhCLG9HQUFBLFVBQVUsT0FBQTtBQUNWLHNHQUFBLFlBQVksT0FBQTtBQUNaLDZHQUFBLG1CQUFtQixPQUFBO0FBQ25CLDJHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLCtHQUFBLHFCQUFxQixPQUFBO0FBQ3JCLCtHQUFBLHFCQUFxQixPQUFBO0FBQ3JCLDZHQUFBLG1CQUFtQixPQUFBO0FBQ25CLGdIQUFBLHNCQUFzQixPQUFBO0FBQ3RCLDBHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDBHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDJHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLDZHQUFBLG1CQUFtQixPQUFBO0FBQ25CLDZHQUFBLG1CQUFtQixPQUFBO0FBQ25CLDRHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLGdIQUFBLHNCQUFzQixPQUFBO0FBQ3RCLGtIQUFBLHdCQUF3QixPQUFBO0FBQ3hCLHFIQUFBLDJCQUEyQixPQUFBO0FBQzNCLDBHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDJHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLDJHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLHlHQUFBLGVBQWUsT0FBQTtBQUNmLDRHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLDBHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLGdIQUFBLHNCQUFzQixPQUFBO0FBQ3RCLDhHQUFBLG9CQUFvQixPQUFBO0FBQ3BCLDJHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLDJHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLDJHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLDBHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDZHQUFBLG1CQUFtQixPQUFBO0FBQ25CLDhHQUFBLG9CQUFvQixPQUFBO0FBR3RCLFVBQVU7QUFDRyxRQUFBLE9BQU8sR0FBRyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdRTERCIE5vZGUuanMgRHJpdmVyIC0gQSBnUlBDLWJhc2VkIGNsaWVudCBmb3IgR1FMREIgZ3JhcGggZGF0YWJhc2UuXG4gKi9cblxuLy8gTWFpbiBjbGllbnRcbmV4cG9ydCB7IEdxbGRiQ2xpZW50LCBRdWVyeUNvbmZpZywgSW5zZXJ0Q29uZmlnLCBEZWxldGVDb25maWcsIEhlYWx0aFdhdGNoZXIgfSBmcm9tICcuL2NsaWVudCc7XG5cbi8vIENvbmZpZ3VyYXRpb25cbmV4cG9ydCB7IEdxbGRiQ29uZmlnLCBDb25maWdCdWlsZGVyLCBjcmVhdGVDb25maWcsIHZhbGlkYXRlQ29uZmlnLCBERUZBVUxUX0NPTkZJRyB9IGZyb20gJy4vY29uZmlnJztcblxuLy8gVHlwZXNcbmV4cG9ydCB7XG4gIFByb3BlcnR5VHlwZSxcbiAgR3JhcGhUeXBlLFxuICBFZGdlSWRNb2RlLFxuICBIZWFsdGhTdGF0dXMsXG4gIENhY2hlVHlwZSxcbiAgSW5zZXJ0VHlwZSxcbiAgVHlwZWRWYWx1ZSxcbiAgY3JlYXRlVHlwZWRWYWx1ZSxcbiAgdHlwZWRWYWx1ZVRvSlMsXG4gIFBhcmFtZXRlcixcbiAgY3JlYXRlUGFyYW1ldGVyLFxuICBQb2ludCxcbiAgUG9pbnQzRCxcbiAgTm9kZURhdGEsXG4gIEVkZ2VEYXRhLFxuICBHcmFwaEluZm8sXG4gIFRyYW5zYWN0aW9uSW5mbyxcbiAgQVNUQ2FjaGVTdGF0cyxcbiAgUGxhbkNhY2hlU3RhdHMsXG4gIENhY2hlU3RhdHMsXG4gIFN0YXRpc3RpY3MsXG4gIFN5c3RlbU1ldHJpY3MsXG4gIENwdU1ldHJpY3MsXG4gIE1lbW9yeU1ldHJpY3MsXG4gIERpc2tJT01ldHJpY3MsXG4gIFN0b3JhZ2VNZXRyaWNzLFxuICBOZXR3b3JrTWV0cmljcyxcbiAgRXhwb3J0ZWROb2RlLFxuICBFeHBvcnRlZEVkZ2UsXG4gIEJ1bGtDcmVhdGVOb2Rlc09wdGlvbnMsXG4gIEJ1bGtDcmVhdGVFZGdlc09wdGlvbnMsXG4gIEJ1bGtJbXBvcnRPcHRpb25zLFxuICBCdWxrSW1wb3J0U2Vzc2lvbixcbiAgQ2hlY2twb2ludFJlc3VsdCxcbiAgRW5kQnVsa0ltcG9ydFJlc3VsdCxcbiAgQWJvcnRCdWxrSW1wb3J0UmVzdWx0LFxuICBCdWxrSW1wb3J0U3RhdHVzLFxuICBTY2hlbWEsXG4gIFByb3BlcnR5RGVmLFxuICBIZWFkZXIsXG4gIFRhYmxlLFxuICBBdHRyLFxufSBmcm9tICcuL3R5cGVzJztcblxuLy8gUmVzcG9uc2VcbmV4cG9ydCB7XG4gIFJlc3BvbnNlLFxuICBSb3csXG4gIEluc2VydE5vZGVzUmVzdWx0LFxuICBJbnNlcnRFZGdlc1Jlc3VsdCxcbiAgRXhwb3J0Tm9kZXNSZXN1bHQsXG4gIEV4cG9ydEVkZ2VzUmVzdWx0LFxuICBOb2RlLFxuICBFZGdlLFxuICBQYXRoLFxuICBOb2RlUmVzdWx0LFxuICBFZGdlUmVzdWx0LFxufSBmcm9tICcuL3Jlc3BvbnNlJztcblxuLy8gUHJpbnRlcnNcbmV4cG9ydCB7XG4gIHByaW50Tm9kZXMsXG4gIHByaW50Tm9kZXNXaXRob3V0U2NoZW1hLFxuICBwcmludEVkZ2VzLFxuICBwcmludEVkZ2VzV2l0aG91dFNjaGVtYSxcbiAgcHJpbnRQYXRocyxcbiAgcHJpbnRUYWJsZSxcbiAgcHJpbnRBbnksXG59IGZyb20gJy4vcHJpbnRlcnMnO1xuXG4vLyBTZXNzaW9uXG5leHBvcnQgeyBTZXNzaW9uLCBTZXNzaW9uTWFuYWdlciB9IGZyb20gJy4vc2Vzc2lvbic7XG5cbi8vIFRyYW5zYWN0aW9uXG5leHBvcnQgeyBUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25NYW5hZ2VyIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5cbi8vIENvbm5lY3Rpb25cbmV4cG9ydCB7IENvbm5lY3Rpb25Qb29sIH0gZnJvbSAnLi9jb25uZWN0aW9uJztcblxuLy8gU2VydmljZXNcbmV4cG9ydCB7IGNyZWF0ZVNlcnZpY2VDbGllbnRzLCBTZXJ2aWNlQ2xpZW50cywgcHJvbWlzaWZ5Q2FsbCwgcHJvbWlzaWZ5Q2FsbFdpdGhEZWFkbGluZSB9IGZyb20gJy4vc2VydmljZXMnO1xuXG4vLyBFcnJvcnNcbmV4cG9ydCB7XG4gIEdxbGRiRXJyb3IsXG4gIE5vSG9zdHNFcnJvcixcbiAgSW52YWxpZFRpbWVvdXRFcnJvcixcbiAgTm9Db25uZWN0aW9uRXJyb3IsXG4gIENvbm5lY3Rpb25DbG9zZWRFcnJvcixcbiAgQ29ubmVjdGlvbkZhaWxlZEVycm9yLFxuICBBbGxIb3N0c0ZhaWxlZEVycm9yLFxuICBIZWFsdGhDaGVja0ZhaWxlZEVycm9yLFxuICBOb3RMb2dnZWRJbkVycm9yLFxuICBMb2dpbkZhaWxlZEVycm9yLFxuICBMb2dvdXRGYWlsZWRFcnJvcixcbiAgU2Vzc2lvbkV4cGlyZWRFcnJvcixcbiAgSW52YWxpZFNlc3Npb25FcnJvcixcbiAgTm9UcmFuc2FjdGlvbkVycm9yLFxuICBUcmFuc2FjdGlvbkZhaWxlZEVycm9yLFxuICBUcmFuc2FjdGlvbk5vdEZvdW5kRXJyb3IsXG4gIFRyYW5zYWN0aW9uQWxyZWFkeU9wZW5FcnJvcixcbiAgUXVlcnlGYWlsZWRFcnJvcixcbiAgUXVlcnlUaW1lb3V0RXJyb3IsXG4gIEludmFsaWRRdWVyeUVycm9yLFxuICBFbXB0eVF1ZXJ5RXJyb3IsXG4gIEdyYXBoTm90Rm91bmRFcnJvcixcbiAgR3JhcGhFeGlzdHNFcnJvcixcbiAgQ3JlYXRlR3JhcGhGYWlsZWRFcnJvcixcbiAgRHJvcEdyYXBoRmFpbGVkRXJyb3IsXG4gIEluc2VydEZhaWxlZEVycm9yLFxuICBEZWxldGVGYWlsZWRFcnJvcixcbiAgRXhwb3J0RmFpbGVkRXJyb3IsXG4gIEludmFsaWRUeXBlRXJyb3IsXG4gIFR5cGVDb252ZXJzaW9uRXJyb3IsXG4gIFVuc3VwcG9ydGVkVHlwZUVycm9yLFxufSBmcm9tICcuL2Vycm9ycyc7XG5cbi8vIFZlcnNpb25cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzAuMS4wJztcbiJdfQ==
|
|
@@ -26,14 +26,25 @@ export declare class ServiceContext {
|
|
|
26
26
|
readonly config: GqldbConfig;
|
|
27
27
|
readonly sessions: SessionManager;
|
|
28
28
|
readonly txManager: TransactionManager;
|
|
29
|
-
|
|
29
|
+
/**
|
|
30
|
+
* Not readonly: the client rebuilds the underlying gRPC channels
|
|
31
|
+
* on transport-level errors (UNAVAILABLE / connection reset) by
|
|
32
|
+
* mutating this in place. See GqldbClient.forceReconnectAll.
|
|
33
|
+
*/
|
|
34
|
+
clients: ServiceClients;
|
|
30
35
|
/**
|
|
31
36
|
* Stable per-client logical session id sent as the
|
|
32
37
|
* `x-ultipa-session-id` gRPC metadata header. Empty string omits the
|
|
33
38
|
* header (legacy behavior). See TRANSACTIONS_DRIVER_GUIDE.md §2.1.
|
|
34
39
|
*/
|
|
35
40
|
readonly clientSessionId: string;
|
|
36
|
-
constructor(config: GqldbConfig, sessions: SessionManager, txManager: TransactionManager,
|
|
41
|
+
constructor(config: GqldbConfig, sessions: SessionManager, txManager: TransactionManager,
|
|
42
|
+
/**
|
|
43
|
+
* Not readonly: the client rebuilds the underlying gRPC channels
|
|
44
|
+
* on transport-level errors (UNAVAILABLE / connection reset) by
|
|
45
|
+
* mutating this in place. See GqldbClient.forceReconnectAll.
|
|
46
|
+
*/
|
|
47
|
+
clients: ServiceClients,
|
|
37
48
|
/**
|
|
38
49
|
* Stable per-client logical session id sent as the
|
|
39
50
|
* `x-ultipa-session-id` gRPC metadata header. Empty string omits the
|
|
@@ -48,7 +48,13 @@ class ServiceContext {
|
|
|
48
48
|
txManager;
|
|
49
49
|
clients;
|
|
50
50
|
clientSessionId;
|
|
51
|
-
constructor(config, sessions, txManager,
|
|
51
|
+
constructor(config, sessions, txManager,
|
|
52
|
+
/**
|
|
53
|
+
* Not readonly: the client rebuilds the underlying gRPC channels
|
|
54
|
+
* on transport-level errors (UNAVAILABLE / connection reset) by
|
|
55
|
+
* mutating this in place. See GqldbClient.forceReconnectAll.
|
|
56
|
+
*/
|
|
57
|
+
clients,
|
|
52
58
|
/**
|
|
53
59
|
* Stable per-client logical session id sent as the
|
|
54
60
|
* `x-ultipa-session-id` gRPC metadata header. Empty string omits the
|
|
@@ -81,4 +87,4 @@ class ServiceContext {
|
|
|
81
87
|
}
|
|
82
88
|
}
|
|
83
89
|
exports.ServiceContext = ServiceContext;
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL3NlcnZpY2UtY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7OztHQUdHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCxvREFBc0M7QUFtQnRDOztHQUVHO0FBQ0gsTUFBYSxjQUFjO0lBRVA7SUFDQTtJQUNBO0lBTVQ7SUFNUztJQWZsQixZQUNrQixNQUFtQixFQUNuQixRQUF3QixFQUN4QixTQUE2QjtJQUM3Qzs7OztPQUlHO0lBQ0ksT0FBdUI7SUFDOUI7Ozs7T0FJRztJQUNhLGtCQUEwQixFQUFFO1FBZDVCLFdBQU0sR0FBTixNQUFNLENBQWE7UUFDbkIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsY0FBUyxHQUFULFNBQVMsQ0FBb0I7UUFNdEMsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFNZCxvQkFBZSxHQUFmLGVBQWUsQ0FBYTtJQUMzQyxDQUFDO0lBRUo7O09BRUc7SUFDSCxrQkFBa0I7UUFDaEIsTUFBTSxRQUFRLEdBQUcsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDckMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMzQyxRQUFRLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQzNELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3pCLFFBQVEsQ0FBQyxHQUFHLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzVELENBQUM7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxjQUFjO1FBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0NBQ0Y7QUF0Q0Qsd0NBc0NDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBTaGFyZWQgY29udGV4dCBmb3IgYWxsIHNlcnZpY2UgY2xhc3Nlcy5cbiAqIENvbnRhaW5zIGdSUEMgY2xpZW50cywgbWFuYWdlcnMsIGFuZCBjb25maWd1cmF0aW9uLlxuICovXG5cbmltcG9ydCAqIGFzIGdycGMgZnJvbSAnQGdycGMvZ3JwYy1qcyc7XG5pbXBvcnQgeyBHcWxkYkNvbmZpZyB9IGZyb20gJy4uL2NvbmZpZyc7XG5pbXBvcnQgeyBTZXNzaW9uTWFuYWdlciB9IGZyb20gJy4uL3Nlc3Npb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25NYW5hZ2VyIH0gZnJvbSAnLi4vdHJhbnNhY3Rpb24nO1xuXG4vKipcbiAqIFNlcnZpY2UgY2xpZW50IHR5cGVzIGZvciBnUlBDIGNvbW11bmljYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZUNsaWVudHMge1xuICBzZXNzaW9uU2VydmljZTogZ3JwYy5DbGllbnQ7XG4gIHF1ZXJ5U2VydmljZTogZ3JwYy5DbGllbnQ7XG4gIGdyYXBoU2VydmljZTogZ3JwYy5DbGllbnQ7XG4gIHRyYW5zYWN0aW9uU2VydmljZTogZ3JwYy5DbGllbnQ7XG4gIGRhdGFTZXJ2aWNlOiBncnBjLkNsaWVudDtcbiAgaGVhbHRoU2VydmljZTogZ3JwYy5DbGllbnQ7XG4gIGFkbWluU2VydmljZTogZ3JwYy5DbGllbnQ7XG4gIGJ1bGtJbXBvcnRTZXJ2aWNlOiBncnBjLkNsaWVudDtcbn1cblxuLyoqXG4gKiBTZXJ2aWNlIGNvbnRleHQgaG9sZHMgc2hhcmVkIGRlcGVuZGVuY2llcyBmb3IgYWxsIHNlcnZpY2UgY2xhc3Nlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlcnZpY2VDb250ZXh0IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbmZpZzogR3FsZGJDb25maWcsXG4gICAgcHVibGljIHJlYWRvbmx5IHNlc3Npb25zOiBTZXNzaW9uTWFuYWdlcixcbiAgICBwdWJsaWMgcmVhZG9ubHkgdHhNYW5hZ2VyOiBUcmFuc2FjdGlvbk1hbmFnZXIsXG4gICAgLyoqXG4gICAgICogTm90IHJlYWRvbmx5OiB0aGUgY2xpZW50IHJlYnVpbGRzIHRoZSB1bmRlcmx5aW5nIGdSUEMgY2hhbm5lbHNcbiAgICAgKiBvbiB0cmFuc3BvcnQtbGV2ZWwgZXJyb3JzIChVTkFWQUlMQUJMRSAvIGNvbm5lY3Rpb24gcmVzZXQpIGJ5XG4gICAgICogbXV0YXRpbmcgdGhpcyBpbiBwbGFjZS4gU2VlIEdxbGRiQ2xpZW50LmZvcmNlUmVjb25uZWN0QWxsLlxuICAgICAqL1xuICAgIHB1YmxpYyBjbGllbnRzOiBTZXJ2aWNlQ2xpZW50cyxcbiAgICAvKipcbiAgICAgKiBTdGFibGUgcGVyLWNsaWVudCBsb2dpY2FsIHNlc3Npb24gaWQgc2VudCBhcyB0aGVcbiAgICAgKiBgeC11bHRpcGEtc2Vzc2lvbi1pZGAgZ1JQQyBtZXRhZGF0YSBoZWFkZXIuIEVtcHR5IHN0cmluZyBvbWl0cyB0aGVcbiAgICAgKiBoZWFkZXIgKGxlZ2FjeSBiZWhhdmlvcikuIFNlZSBUUkFOU0FDVElPTlNfRFJJVkVSX0dVSURFLm1kIMKnMi4xLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBjbGllbnRTZXNzaW9uSWQ6IHN0cmluZyA9ICcnXG4gICkge31cblxuICAvKipcbiAgICogR2V0IHNlc3Npb24gbWV0YWRhdGEgZm9yIGF1dGhlbnRpY2F0ZWQgcmVxdWVzdHMuXG4gICAqL1xuICBnZXRTZXNzaW9uTWV0YWRhdGEoKTogZ3JwYy5NZXRhZGF0YSB7XG4gICAgY29uc3QgbWV0YWRhdGEgPSBuZXcgZ3JwYy5NZXRhZGF0YSgpO1xuICAgIGNvbnN0IHNlc3Npb24gPSB0aGlzLnNlc3Npb25zLmdldFNlc3Npb24oKTtcbiAgICBtZXRhZGF0YS5hZGQoJ3Nlc3Npb24taWQnLCBzZXNzaW9uPy5pZD8udG9TdHJpbmcoKSB8fCAnMCcpO1xuICAgIGlmICh0aGlzLmNsaWVudFNlc3Npb25JZCkge1xuICAgICAgbWV0YWRhdGEuYWRkKCd4LXVsdGlwYS1zZXNzaW9uLWlkJywgdGhpcy5jbGllbnRTZXNzaW9uSWQpO1xuICAgIH1cbiAgICByZXR1cm4gbWV0YWRhdGE7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIHNlc3Npb24gYWN0aXZpdHkgdGltZXN0YW1wLlxuICAgKi9cbiAgdXBkYXRlQWN0aXZpdHkoKTogdm9pZCB7XG4gICAgdGhpcy5zZXNzaW9ucy51cGRhdGVBY3Rpdml0eSgpO1xuICB9XG59XG4iXX0=
|
package/dist/types/enums.d.ts
CHANGED
|
@@ -44,6 +44,11 @@ export declare enum GraphType {
|
|
|
44
44
|
CLOSED = 1,// Schema-enforced graph
|
|
45
45
|
ONTOLOGY = 2
|
|
46
46
|
}
|
|
47
|
+
/** Edge ID mode enumeration for graph-level EDGE_ID setting */
|
|
48
|
+
export declare enum EdgeIdMode {
|
|
49
|
+
DISABLED = 0,
|
|
50
|
+
ENABLED = 1
|
|
51
|
+
}
|
|
47
52
|
/** Health status enumeration */
|
|
48
53
|
export declare enum HealthStatus {
|
|
49
54
|
UNKNOWN = 0,
|
package/dist/types/enums.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Enumeration types for GQLDB Node.js driver.
|
|
4
4
|
*/
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.CacheType = exports.HealthStatus = exports.GraphType = exports.PropertyType = void 0;
|
|
6
|
+
exports.CacheType = exports.HealthStatus = exports.EdgeIdMode = exports.GraphType = exports.PropertyType = void 0;
|
|
7
7
|
/** Property type enumeration */
|
|
8
8
|
var PropertyType;
|
|
9
9
|
(function (PropertyType) {
|
|
@@ -49,6 +49,12 @@ var GraphType;
|
|
|
49
49
|
GraphType[GraphType["CLOSED"] = 1] = "CLOSED";
|
|
50
50
|
GraphType[GraphType["ONTOLOGY"] = 2] = "ONTOLOGY";
|
|
51
51
|
})(GraphType || (exports.GraphType = GraphType = {}));
|
|
52
|
+
/** Edge ID mode enumeration for graph-level EDGE_ID setting */
|
|
53
|
+
var EdgeIdMode;
|
|
54
|
+
(function (EdgeIdMode) {
|
|
55
|
+
EdgeIdMode[EdgeIdMode["DISABLED"] = 0] = "DISABLED";
|
|
56
|
+
EdgeIdMode[EdgeIdMode["ENABLED"] = 1] = "ENABLED";
|
|
57
|
+
})(EdgeIdMode || (exports.EdgeIdMode = EdgeIdMode = {}));
|
|
52
58
|
/** Health status enumeration */
|
|
53
59
|
var HealthStatus;
|
|
54
60
|
(function (HealthStatus) {
|
|
@@ -64,4 +70,4 @@ var CacheType;
|
|
|
64
70
|
CacheType[CacheType["AST"] = 1] = "AST";
|
|
65
71
|
CacheType[CacheType["PLAN"] = 2] = "PLAN";
|
|
66
72
|
})(CacheType || (exports.CacheType = CacheType = {}));
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvZW51bXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7QUFFSCxnQ0FBZ0M7QUFDaEMsSUFBWSxZQW1DWDtBQW5DRCxXQUFZLFlBQVk7SUFDdEIsaURBQVMsQ0FBQTtJQUNULGlEQUFTLENBQUE7SUFDVCxtREFBVSxDQUFBO0lBQ1YsaURBQVMsQ0FBQTtJQUNULG1EQUFVLENBQUE7SUFDVixpREFBUyxDQUFBO0lBQ1QsbURBQVUsQ0FBQTtJQUNWLG1EQUFVLENBQUE7SUFDVix1REFBWSxDQUFBO0lBQ1oseURBQWEsQ0FBQTtJQUNiLGdEQUFTLENBQUE7SUFDVCxnREFBUyxDQUFBO0lBQ1Qsa0RBQVUsQ0FBQTtJQUNWLHNEQUFZLENBQUE7SUFDWixnREFBUyxDQUFBO0lBQ1QsOENBQVEsQ0FBQTtJQUNSLDhDQUFRLENBQUE7SUFDUixnREFBUyxDQUFBO0lBQ1QsZ0RBQVMsQ0FBQTtJQUNULG9FQUFtQixDQUFBO0lBQ25CLG9FQUFtQixDQUFBO0lBQ25CLGdEQUFTLENBQUE7SUFDVCw0REFBZSxDQUFBO0lBQ2YsNERBQWUsQ0FBQTtJQUNmLGtFQUFrQixDQUFBO0lBQ2xCLGtFQUFrQixDQUFBO0lBQ2xCLG9EQUFXLENBQUE7SUFDWCxzREFBWSxDQUFBO0lBQ1osb0RBQVcsQ0FBQTtJQUNYLGtEQUFVLENBQUE7SUFDVixnREFBUyxDQUFBO0lBQ1Qsa0RBQVUsQ0FBQTtJQUNWLGdEQUFTLENBQUE7SUFDVCxnREFBUyxDQUFBO0FBQ1gsQ0FBQyxFQW5DVyxZQUFZLDRCQUFaLFlBQVksUUFtQ3ZCO0FBRUQsNkJBQTZCO0FBQzdCLElBQVksU0FJWDtBQUpELFdBQVksU0FBUztJQUNuQix5Q0FBUSxDQUFBO0lBQ1IsNkNBQVUsQ0FBQTtJQUNWLGlEQUFZLENBQUE7QUFDZCxDQUFDLEVBSlcsU0FBUyx5QkFBVCxTQUFTLFFBSXBCO0FBRUQsK0RBQStEO0FBQy9ELElBQVksVUFHWDtBQUhELFdBQVksVUFBVTtJQUNwQixtREFBWSxDQUFBO0lBQ1osaURBQVcsQ0FBQTtBQUNiLENBQUMsRUFIVyxVQUFVLDBCQUFWLFVBQVUsUUFHckI7QUFFRCxnQ0FBZ0M7QUFDaEMsSUFBWSxZQUtYO0FBTEQsV0FBWSxZQUFZO0lBQ3RCLHFEQUFXLENBQUE7SUFDWCxxREFBVyxDQUFBO0lBQ1gsNkRBQWUsQ0FBQTtJQUNmLHFFQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFMVyxZQUFZLDRCQUFaLFlBQVksUUFLdkI7QUFFRCw2QkFBNkI7QUFDN0IsSUFBWSxTQUlYO0FBSkQsV0FBWSxTQUFTO0lBQ25CLHVDQUFPLENBQUE7SUFDUCx1Q0FBTyxDQUFBO0lBQ1AseUNBQVEsQ0FBQTtBQUNWLENBQUMsRUFKVyxTQUFTLHlCQUFULFNBQVMsUUFJcEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEVudW1lcmF0aW9uIHR5cGVzIGZvciBHUUxEQiBOb2RlLmpzIGRyaXZlci5cbiAqL1xuXG4vKiogUHJvcGVydHkgdHlwZSBlbnVtZXJhdGlvbiAqL1xuZXhwb3J0IGVudW0gUHJvcGVydHlUeXBlIHtcbiAgVU5TRVQgPSAwLFxuICBJTlQzMiA9IDEsXG4gIFVJTlQzMiA9IDIsXG4gIElOVDY0ID0gMyxcbiAgVUlOVDY0ID0gNCxcbiAgRkxPQVQgPSA1LFxuICBET1VCTEUgPSA2LFxuICBTVFJJTkcgPSA3LFxuICBEQVRFVElNRSA9IDgsIC8vIERlcHJlY2F0ZWQsIHVzZSBUSU1FU1RBTVBcbiAgVElNRVNUQU1QID0gOSxcbiAgVEVYVCA9IDEwLFxuICBCTE9CID0gMTEsXG4gIFBPSU5UID0gMTIsXG4gIERFQ0lNQUwgPSAxMyxcbiAgTElTVCA9IDE0LFxuICBTRVQgPSAxNSxcbiAgTUFQID0gMTYsXG4gIE5VTEwgPSAxNyxcbiAgQk9PTCA9IDE4LFxuICBMT0NBTF9EQVRFVElNRSA9IDE5LFxuICBaT05FRF9EQVRFVElNRSA9IDIwLFxuICBEQVRFID0gMjEsXG4gIFpPTkVEX1RJTUUgPSAyMixcbiAgTE9DQUxfVElNRSA9IDIzLFxuICBZRUFSX1RPX01PTlRIID0gMjQsXG4gIERBWV9UT19TRUNPTkQgPSAyNSxcbiAgUkVDT1JEID0gMjYsXG4gIFBPSU5UM0QgPSAyNyxcbiAgVkVDVE9SID0gMjgsXG4gIFRBQkxFID0gMjksXG4gIFBBVEggPSAzMCxcbiAgRVJST1IgPSAzMSxcbiAgTk9ERSA9IDMyLFxuICBFREdFID0gMzMsXG59XG5cbi8qKiBHcmFwaCB0eXBlIGVudW1lcmF0aW9uICovXG5leHBvcnQgZW51bSBHcmFwaFR5cGUge1xuICBPUEVOID0gMCwgLy8gU2NoZW1hLWxlc3MgZ3JhcGhcbiAgQ0xPU0VEID0gMSwgLy8gU2NoZW1hLWVuZm9yY2VkIGdyYXBoXG4gIE9OVE9MT0dZID0gMiwgLy8gT250b2xvZ3ktZW5hYmxlZCBncmFwaFxufVxuXG4vKiogRWRnZSBJRCBtb2RlIGVudW1lcmF0aW9uIGZvciBncmFwaC1sZXZlbCBFREdFX0lEIHNldHRpbmcgKi9cbmV4cG9ydCBlbnVtIEVkZ2VJZE1vZGUge1xuICBESVNBQkxFRCA9IDAsXG4gIEVOQUJMRUQgPSAxLFxufVxuXG4vKiogSGVhbHRoIHN0YXR1cyBlbnVtZXJhdGlvbiAqL1xuZXhwb3J0IGVudW0gSGVhbHRoU3RhdHVzIHtcbiAgVU5LTk9XTiA9IDAsXG4gIFNFUlZJTkcgPSAxLFxuICBOT1RfU0VSVklORyA9IDIsXG4gIFNFUlZJQ0VfVU5LTk9XTiA9IDMsXG59XG5cbi8qKiBDYWNoZSB0eXBlIGVudW1lcmF0aW9uICovXG5leHBvcnQgZW51bSBDYWNoZVR5cGUge1xuICBBTEwgPSAwLFxuICBBU1QgPSAxLFxuICBQTEFOID0gMixcbn1cbiJdfQ==
|