@blokjs/trigger-pubsub 0.2.2 → 0.2.3
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/PubSubTrigger.d.ts +0 -1
- package/dist/PubSubTrigger.js +5 -6
- package/package.json +1 -1
- package/src/PubSubTrigger.ts +5 -6
package/dist/PubSubTrigger.d.ts
CHANGED
|
@@ -86,7 +86,6 @@ export declare abstract class PubSubTrigger extends TriggerBase {
|
|
|
86
86
|
protected abstract adapter: PubSubAdapter;
|
|
87
87
|
protected abstract nodes: Record<string, BlokService<unknown>>;
|
|
88
88
|
protected abstract workflows: Record<string, HelperResponse>;
|
|
89
|
-
constructor();
|
|
90
89
|
/**
|
|
91
90
|
* Load nodes into the node map
|
|
92
91
|
*/
|
package/dist/PubSubTrigger.js
CHANGED
|
@@ -27,11 +27,6 @@ export class PubSubTrigger extends TriggerBase {
|
|
|
27
27
|
nodeMap = {};
|
|
28
28
|
tracer = trace.getTracer(process.env.PROJECT_NAME || "trigger-pubsub-workflow", process.env.PROJECT_VERSION || "0.0.1");
|
|
29
29
|
logger = new DefaultLogger();
|
|
30
|
-
constructor() {
|
|
31
|
-
super();
|
|
32
|
-
this.loadNodes();
|
|
33
|
-
this.loadWorkflows();
|
|
34
|
-
}
|
|
35
30
|
/**
|
|
36
31
|
* Load nodes into the node map
|
|
37
32
|
*/
|
|
@@ -53,6 +48,10 @@ export class PubSubTrigger extends TriggerBase {
|
|
|
53
48
|
*/
|
|
54
49
|
async listen() {
|
|
55
50
|
const startTime = this.startCounter();
|
|
51
|
+
// Initialize nodes and workflows (called here because subclass properties
|
|
52
|
+
// aren't available in parent constructor)
|
|
53
|
+
this.loadNodes();
|
|
54
|
+
this.loadWorkflows();
|
|
56
55
|
try {
|
|
57
56
|
// Connect to pub/sub system
|
|
58
57
|
await this.adapter.connect();
|
|
@@ -212,4 +211,4 @@ export class PubSubTrigger extends TriggerBase {
|
|
|
212
211
|
}
|
|
213
212
|
}
|
|
214
213
|
export default PubSubTrigger;
|
|
215
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHViU3ViVHJpZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9QdWJTdWJUcmlnZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQkc7QUFHSCxPQUFPLEVBQ04sYUFBYSxFQUdiLE9BQU8sRUFDUCxXQUFXLEdBRVgsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQWEsY0FBYyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMvRSxPQUFPLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQW9FbEM7O0dBRUc7QUFDSCxNQUFNLE9BQWdCLGFBQWMsU0FBUSxXQUFXO0lBQzVDLE9BQU8sR0FBa0IsRUFBbUIsQ0FBQztJQUNwQyxNQUFNLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FDMUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLElBQUkseUJBQXlCLEVBQ3JELE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxJQUFJLE9BQU8sQ0FDdEMsQ0FBQztJQUNpQixNQUFNLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztJQU9oRDtRQUNDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTO1FBQ1IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUNuQyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxLQUFLLE1BQU0sR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFD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QUVILElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDZCQUE2QixFQUFFLEtBQUssWUFBWSxFQUFFLEVBQUcsS0FBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUU5RixlQUFlO2dCQUNmLElBQUksTUFBTSxDQUFDLEdBQUcsS0FBSyxLQUFLLEVBQUUsQ0FBQztvQkFDMUIsTUFBTSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLG1CQUFtQixFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUMxQyxDQUFDO1lBQ0YsQ0FBQztvQkFBUyxDQUFDO2dCQUNWLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNaLENBQUM7UUFDRixDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7Q0FDRDtBQUVELGVBQWUsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBQdWJTdWJUcmlnZ2VyIC0gQmFzZSBjbGFzcyBmb3IgcHViL3N1Yi1iYXNlZCB3b3JrZmxvdyB0cmlnZ2Vyc1xuICpcbiAqIEV4dGVuZHMgVHJpZ2dlckJhc2UgdG8gc3VwcG9ydCBwdWIvc3ViIHRyaWdnZXJzOlxuICogLSBHQ1AgUHViL1N1YlxuICogLSBBV1MgU05TICh2aWEgU1FTIHN1YnNjcmlwdGlvbilcbiAqIC0gQXp1cmUgU2VydmljZSBCdXNcbiAqXG4gKiBQYXR0ZXJuOlxuICogMS4gbG9hZE5vZGVzKCkgLSBMb2FkIGF2YWlsYWJsZSBub2RlcyBpbnRvIE5vZGVNYXBcbiAqIDIuIGxvYWRXb3JrZmxvd3MoKSAtIExvYWQgd29ya2Zsb3dzIHdpdGggcHVic3ViIHRyaWdnZXJzXG4gKiAzLiBzdGFydFN1YnNjcmliZXIoKSAtIENvbm5lY3QgdG8gcHViL3N1YiBhbmQgc3RhcnQgcmVjZWl2aW5nIG1lc3NhZ2VzXG4gKiA0LiBGb3IgZWFjaCBtZXNzYWdlOlxuICogICAgLSBNYXRjaCB3b3JrZmxvdyBieSB0cmlnZ2VyIGNvbmZpZyAodG9waWMvc3Vic2NyaXB0aW9uKVxuICogICAgLSBDcmVhdGUgY29udGV4dCB3aXRoIHRoaXMuY3JlYXRlQ29udGV4dCgpXG4gKiAgICAtIFBvcHVsYXRlIGN0eC5yZXF1ZXN0IHdpdGggbWVzc2FnZSBkYXRhXG4gKiAgICAtIEV4ZWN1dGUgd29ya2Zsb3cgdmlhIHRoaXMucnVuKGN0eClcbiAqICAgIC0gQWNrL25hY2sgYmFzZWQgb24gcmVzcG9uc2VcbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEhlbHBlclJlc3BvbnNlLCBQdWJTdWJQcm92aWRlciwgUHViU3ViVHJpZ2dlck9wdHMgfSBmcm9tIFwiQGJsb2tqcy9oZWxwZXJcIjtcbmltcG9ydCB7XG5cdERlZmF1bHRMb2dnZXIsXG5cdHR5cGUgR2xvYmFsT3B0aW9ucyxcblx0dHlwZSBCbG9rU2VydmljZSxcblx0Tm9kZU1hcCxcblx0VHJpZ2dlckJhc2UsXG5cdHR5cGUgVHJpZ2dlclJlc3BvbnNlLFxufSBmcm9tIFwiQGJsb2tqcy9ydW5uZXJcIjtcbmltcG9ydCB0eXBlIHsgQ29udGV4dCwgUmVxdWVzdENvbnRleHQgfSBmcm9tIFwiQGJsb2tqcy9zaGFyZWRcIjtcbmltcG9ydCB7IHR5cGUgU3BhbiwgU3BhblN0YXR1c0NvZGUsIG1ldHJpY3MsIHRyYWNlIH0gZnJvbSBcIkBvcGVudGVsZW1ldHJ5L2FwaVwiO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gXCJ1dWlkXCI7XG5cbi8qKlxuICogTWVzc2FnZSByZWNlaXZlZCBmcm9tIHB1Yi9zdWJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQdWJTdWJNZXNzYWdlIHtcblx0LyoqIFVuaXF1ZSBtZXNzYWdlIElEICovXG5cdGlkOiBzdHJpbmc7XG5cdC8qKiBNZXNzYWdlIGJvZHkgKHBhcnNlZCkgKi9cblx0Ym9keTogdW5rbm93bjtcblx0LyoqIE1lc3NhZ2UgYXR0cmlidXRlcy9tZXRhZGF0YSAqL1xuXHRhdHRyaWJ1dGVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXHQvKiogT3JpZ2luYWwgcmF3IG1lc3NhZ2UgZnJvbSBwcm92aWRlciAqL1xuXHRyYXc6IHVua25vd247XG5cdC8qKiBUb3BpYyBuYW1lICovXG5cdHRvcGljOiBzdHJpbmc7XG5cdC8qKiBTdWJzY3JpcHRpb24gbmFtZSAqL1xuXHRzdWJzY3JpcHRpb24/OiBzdHJpbmc7XG5cdC8qKiBQdWJsaXNoIHRpbWVzdGFtcCAqL1xuXHRwdWJsaXNoVGltZT86IERhdGU7XG5cdC8qKiBBY2tub3dsZWRnZSB0aGUgbWVzc2FnZSAqL1xuXHRhY2s6ICgpID0+IFByb21pc2U8dm9pZD47XG5cdC8qKiBSZWplY3QvbmFjayB0aGUgbWVzc2FnZSAqL1xuXHRuYWNrOiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIFB1Yi9TdWIgYWRhcHRlciBpbnRlcmZhY2UgLSBpbXBsZW1lbnRlZCBieSBlYWNoIHByb3ZpZGVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHViU3ViQWRhcHRlciB7XG5cdC8qKiBQcm92aWRlciBuYW1lICovXG5cdHJlYWRvbmx5IHByb3ZpZGVyOiBQdWJTdWJQcm92aWRlcjtcblxuXHQvKiogQ29ubmVjdCB0byB0aGUgcHViL3N1YiBzeXN0ZW0gKi9cblx0Y29ubmVjdCgpOiBQcm9taXNlPHZvaWQ+O1xuXG5cdC8qKiBEaXNjb25uZWN0IGZyb20gdGhlIHB1Yi9zdWIgc3lzdGVtICovXG5cdGRpc2Nvbm5lY3QoKTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKiogU3Vic2NyaWJlIHRvIGEgdG9waWMgYW5kIHJlY2VpdmUgbWVzc2FnZXMgKi9cblx0c3Vic2NyaWJlKGNvbmZpZzogUHViU3ViVHJpZ2dlck9wdHMsIGhhbmRsZXI6IChtZXNzYWdlOiBQdWJTdWJNZXNzYWdlKSA9PiBQcm9taXNlPHZvaWQ+KTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKiogVW5zdWJzY3JpYmUgZnJvbSBhIHRvcGljICovXG5cdHVuc3Vic2NyaWJlKHN1YnNjcmlwdGlvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKiogQ2hlY2sgaWYgY29ubmVjdGVkICovXG5cdGlzQ29ubmVjdGVkKCk6IGJvb2xlYW47XG5cblx0LyoqIEhlYWx0aCBjaGVjayAqL1xuXHRoZWFsdGhDaGVjaygpOiBQcm9taXNlPGJvb2xlYW4+O1xufVxuXG4vKipcbiAqIFdvcmtmbG93IG1vZGVsIHdpdGggcHViL3N1YiB0cmlnZ2VyIGNvbmZpZ3VyYXRpb25cbiAqL1xuaW50ZXJmYWNlIFB1YlN1YldvcmtmbG93TW9kZWwge1xuXHRwYXRoOiBzdHJpbmc7XG5cdGNvbmZpZzoge1xuXHRcdG5hbWU6IHN0cmluZztcblx0XHR2ZXJzaW9uOiBzdHJpbmc7XG5cdFx0dHJpZ2dlcj86IHtcblx0XHRcdHB1YnN1Yj86IFB1YlN1YlRyaWdnZXJPcHRzO1xuXHRcdFx0W2tleTogc3RyaW5nXTogdW5rbm93bjtcblx0XHR9O1xuXHRcdFtrZXk6IHN0cmluZ106IHVua25vd247XG5cdH07XG59XG5cbi8qKlxuICogUHViU3ViVHJpZ2dlciAtIEFic3RyYWN0IGJhc2UgY2xhc3MgZm9yIHB1Yi9zdWItYmFzZWQgdHJpZ2dlcnNcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFB1YlN1YlRyaWdnZXIgZXh0ZW5kcyBUcmlnZ2VyQmFzZSB7XG5cdHByb3RlY3RlZCBub2RlTWFwOiBHbG9iYWxPcHRpb25zID0ge30gYXMgR2xvYmFsT3B0aW9ucztcblx0cHJvdGVjdGVkIHJlYWRvbmx5IHRyYWNlciA9IHRyYWNlLmdldFRyYWNlcihcblx0XHRwcm9jZXNzLmVudi5QUk9KRUNUX05BTUUgfHwgXCJ0cmlnZ2VyLXB1YnN1Yi13b3JrZmxvd1wiLFxuXHRcdHByb2Nlc3MuZW52LlBST0pFQ1RfVkVSU0lPTiB8fCBcIjAuMC4xXCIsXG5cdCk7XG5cdHByb3RlY3RlZCByZWFkb25seSBsb2dnZXIgPSBuZXcgRGVmYXVsdExvZ2dlcigpO1xuXHRwcm90ZWN0ZWQgYWJzdHJhY3QgYWRhcHRlcjogUHViU3ViQWRhcHRlcjtcblxuXHQvLyBTdWJjbGFzc2VzIHByb3ZpZGUgdGhlc2Vcblx0cHJvdGVjdGVkIGFic3RyYWN0IG5vZGVzOiBSZWNvcmQ8c3RyaW5nLCBCbG9rU2VydmljZTx1bmtub3duPj47XG5cdHByb3RlY3RlZCBhYnN0cmFjdCB3b3JrZmxvd3M6IFJlY29yZDxzdHJpbmcsIEhlbHBlclJlc3BvbnNlPjtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRzdXBlcigpO1xuXHRcdHRoaXMubG9hZE5vZGVzKCk7XG5cdFx0dGhpcy5sb2FkV29ya2Zsb3dzKCk7XG5cdH1cblxuXHQvKipcblx0ICogTG9hZCBub2RlcyBpbnRvIHRoZSBub2RlIG1hcFxuXHQgKi9cblx0bG9hZE5vZGVzKCk6IHZvaWQge1xuXHRcdHRoaXMubm9kZU1hcC5ub2RlcyA9IG5ldyBOb2RlTWFwKCk7XG5cdFx0Y29uc3Qgbm9kZUtleXMgPSBPYmplY3Qua2V5cyh0aGlzLm5vZGVzKTtcblx0XHRmb3IgKGNvbnN0IGtleSBvZiBub2RlS2V5cykge1xuXHRcdFx0dGhpcy5ub2RlTWFwLm5vZGVzLmFkZE5vZGUoa2V5LCB0aGlzLm5vZGVzW2tleV0pO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBMb2FkIHdvcmtmbG93cyBpbnRvIHRoZSB3b3JrZmxvdyBtYXBcblx0ICovXG5cdGxvYWRXb3JrZmxvd3MoKTogdm9pZCB7XG5cdFx0dGhpcy5ub2RlTWFwLndvcmtmbG93cyA9IHRoaXMud29ya2Zsb3dzO1xuXHR9XG5cblx0LyoqXG5cdCAqIFN0YXJ0IHRoZSBwdWIvc3ViIHN1YnNjcmliZXIgLSBtYWluIGVudHJ5IHBvaW50XG5cdCAqL1xuXHRhc3luYyBsaXN0ZW4oKTogUHJvbWlzZTxudW1iZXI+IHtcblx0XHRjb25zdCBzdGFydFRpbWUgPSB0aGlzLnN0YXJ0Q291bnRlcigpO1xuXG5cdFx0dHJ5IHtcblx0XHRcdC8vIENvbm5lY3QgdG8gcHViL3N1YiBzeXN0ZW1cblx0XHRcdGF3YWl0IHRoaXMuYWRhcHRlci5jb25uZWN0KCk7XG5cdFx0XHR0aGlzLmxvZ2dlci5sb2coYENvbm5lY3RlZCB0byAke3RoaXMuYWRhcHRlci5wcm92aWRlcn0gcHViL3N1YiBzeXN0ZW1gKTtcblxuXHRcdFx0Ly8gRmluZCBhbGwgd29ya2Zsb3dzIHdpdGggcHViL3N1YiB0cmlnZ2Vyc1xuXHRcdFx0Y29uc3QgcHVic3ViV29ya2Zsb3dzID0gdGhpcy5nZXRQdWJTdWJXb3JrZmxvd3MoKTtcblxuXHRcdFx0aWYgKHB1YnN1YldvcmtmbG93cy5sZW5ndGggPT09IDApIHtcblx0XHRcdFx0dGhpcy5sb2dnZXIubG9nKFwiTm8gd29ya2Zsb3dzIHdpdGggcHViL3N1YiB0cmlnZ2VycyBmb3VuZFwiKTtcblx0XHRcdFx0cmV0dXJuIHRoaXMuZW5kQ291bnRlcihzdGFydFRpbWUpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBTdWJzY3JpYmUgdG8gZWFjaCB0b3BpYy9zdWJzY3JpcHRpb25cblx0XHRcdGZvciAoY29uc3Qgd29ya2Zsb3cgb2YgcHVic3ViV29ya2Zsb3dzKSB7XG5cdFx0XHRcdGNvbnN0IGNvbmZpZyA9IHdvcmtmbG93LmNvbmZpZy50cmlnZ2VyPy5wdWJzdWIgYXMgUHViU3ViVHJpZ2dlck9wdHM7XG5cdFx0XHRcdHRoaXMubG9nZ2VyLmxvZyhcblx0XHRcdFx0XHRgU3Vic2NyaWJpbmcgdG8gdG9waWM6ICR7Y29uZmlnLnRvcGljfSwgc3Vic2NyaXB0aW9uOiAke2NvbmZpZy5zdWJzY3JpcHRpb259IGZvciB3b3JrZmxvdzogJHt3b3JrZmxvdy5wYXRofWAsXG5cdFx0XHRcdCk7XG5cblx0XHRcdFx0YXdhaXQgdGhpcy5hZGFwdGVyLnN1YnNjcmliZShjb25maWcsIGFzeW5jIChtZXNzYWdlKSA9PiB7XG5cdFx0XHRcdFx0YXdhaXQgdGhpcy5oYW5kbGVNZXNzYWdlKG1lc3NhZ2UsIHdvcmtmbG93LCBjb25maWcpO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblxuXHRcdFx0dGhpcy5sb2dnZXIubG9nKGBQdWIvU3ViIHRyaWdnZXIgc3RhcnRlZC4gTGlzdGVuaW5nIHRvICR7cHVic3ViV29ya2Zsb3dzLmxlbmd0aH0gc3Vic2NyaXB0aW9uKHMpYCk7XG5cblx0XHRcdC8vIEVuYWJsZSBITVIgaW4gZGV2ZWxvcG1lbnQgbW9kZVxuXHRcdFx0aWYgKHByb2Nlc3MuZW52LkJMT0tfSE1SID09PSBcInRydWVcIiB8fCBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gXCJkZXZlbG9wbWVudFwiKSB7XG5cdFx0XHRcdGF3YWl0IHRoaXMuZW5hYmxlSG90UmVsb2FkKCk7XG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiB0aGlzLmVuZENvdW50ZXIoc3RhcnRUaW1lKTtcblx0XHR9IGNhdGNoIChlcnJvcikge1xuXHRcdFx0dGhpcy5sb2dnZXIuZXJyb3IoYEZhaWxlZCB0byBzdGFydCBwdWIvc3ViIHRyaWdnZXI6ICR7KGVycm9yIGFzIEVycm9yKS5tZXNzYWdlfWApO1xuXHRcdFx0dGhyb3cgZXJyb3I7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFN0b3AgdGhlIHB1Yi9zdWIgc3Vic2NyaWJlclxuXHQgKi9cblx0YXN5bmMgc3RvcCgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRhd2FpdCB0aGlzLmFkYXB0ZXIuZGlzY29ubmVjdCgpO1xuXHRcdHRoaXMubG9nZ2VyLmxvZyhcIlB1Yi9TdWIgdHJpZ2dlciBzdG9wcGVkXCIpO1xuXHR9XG5cblx0cHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIG9uSG1yV29ya2Zsb3dDaGFuZ2UoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0dGhpcy5sb2dnZXIubG9nKFwiW0hNUl0gUHViL1N1YiB3b3JrZmxvdyBjaGFuZ2VkLCByZWxvYWRpbmcuLi5cIik7XG5cdFx0YXdhaXQgdGhpcy53YWl0Rm9ySW5GbGlnaHRSZXF1ZXN0cygpO1xuXHRcdGF3YWl0IHRoaXMuc3RvcCgpO1xuXHRcdHRoaXMubG9hZFdvcmtmbG93cygpO1xuXHRcdGF3YWl0IHRoaXMubGlzdGVuKCk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IGFsbCB3b3JrZmxvd3MgdGhhdCBoYXZlIHB1Yi9zdWIgdHJpZ2dlcnNcblx0ICovXG5cdHByb3RlY3RlZCBnZXRQdWJTdWJXb3JrZmxvd3MoKTogUHViU3ViV29ya2Zsb3dNb2RlbFtdIHtcblx0XHRjb25zdCB3b3JrZmxvd3M6IFB1YlN1YldvcmtmbG93TW9kZWxbXSA9IFtdO1xuXG5cdFx0Zm9yIChjb25zdCBbcGF0aCwgd29ya2Zsb3ddIG9mIE9iamVjdC5lbnRyaWVzKHRoaXMubm9kZU1hcC53b3JrZmxvd3MgfHwge30pKSB7XG5cdFx0XHQvLyBIZWxwZXJSZXNwb25zZSBoYXMgYSBwcm90ZWN0ZWQgX2NvbmZpZyBwcm9wZXJ0eVxuXHRcdFx0Y29uc3Qgd29ya2Zsb3dDb25maWcgPSAod29ya2Zsb3cgYXMgdW5rbm93biBhcyB7IF9jb25maWc6IFB1YlN1YldvcmtmbG93TW9kZWxbXCJjb25maWdcIl0gfSkuX2NvbmZpZztcblxuXHRcdFx0aWYgKHdvcmtmbG93Q29uZmlnPy50cmlnZ2VyKSB7XG5cdFx0XHRcdGNvbnN0IHRyaWdnZXJUeXBlID0gT2JqZWN0LmtleXMod29ya2Zsb3dDb25maWcudHJpZ2dlcilbMF07XG5cblx0XHRcdFx0aWYgKHRyaWdnZXJUeXBlID09PSBcInB1YnN1YlwiICYmIHdvcmtmbG93Q29uZmlnLnRyaWdnZXIucHVic3ViKSB7XG5cdFx0XHRcdFx0d29ya2Zsb3dzLnB1c2goe1xuXHRcdFx0XHRcdFx0cGF0aCxcblx0XHRcdFx0XHRcdGNvbmZpZzogd29ya2Zsb3dDb25maWcsXG5cdFx0XHRcdFx0fSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRyZXR1cm4gd29ya2Zsb3dzO1xuXHR9XG5cblx0LyoqXG5cdCAqIEhhbmRsZSBhbiBpbmNvbWluZyBtZXNzYWdlXG5cdCAqL1xuXHRwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlTWVzc2FnZShcblx0XHRtZXNzYWdlOiBQdWJTdWJNZXNzYWdlLFxuXHRcdHdvcmtmbG93OiBQdWJTdWJXb3JrZmxvd01vZGVsLFxuXHRcdGNvbmZpZzogUHViU3ViVHJpZ2dlck9wdHMsXG5cdCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGNvbnN0IGlkID0gbWVzc2FnZS5pZCB8fCB1dWlkKCk7XG5cdFx0Y29uc3QgZGVmYXVsdE1ldGVyID0gbWV0cmljcy5nZXRNZXRlcihcImRlZmF1bHRcIik7XG5cdFx0Y29uc3QgcHVic3ViTWVzc2FnZXMgPSBkZWZhdWx0TWV0ZXIuY3JlYXRlQ291bnRlcihcInB1YnN1Yl9tZXNzYWdlc1wiLCB7XG5cdFx0XHRkZXNjcmlwdGlvbjogXCJQdWIvU3ViIG1lc3NhZ2VzIHByb2Nlc3NlZFwiLFxuXHRcdH0pO1xuXHRcdGNvbnN0IHB1YnN1YkVycm9ycyA9IGRlZmF1bHRNZXRlci5jcmVhdGVDb3VudGVyKFwicHVic3ViX2Vycm9yc1wiLCB7XG5cdFx0XHRkZXNjcmlwdGlvbjogXCJQdWIvU3ViIG1lc3NhZ2UgcHJvY2Vzc2luZyBlcnJvcnNcIixcblx0XHR9KTtcblxuXHRcdGF3YWl0IHRoaXMudHJhY2VyLnN0YXJ0QWN0aXZlU3BhbihgcHVic3ViOiR7Y29uZmlnLnRvcGljfWAsIGFzeW5jIChzcGFuOiBTcGFuKSA9PiB7XG5cdFx0XHR0cnkge1xuXHRcdFx0XHRjb25zdCBzdGFydCA9IHBlcmZvcm1hbmNlLm5vdygpO1xuXG5cdFx0XHRcdC8vIEluaXRpYWxpemUgY29uZmlndXJhdGlvbiBmb3IgdGhpcyB3b3JrZmxvd1xuXHRcdFx0XHRhd2FpdCB0aGlzLmNvbmZpZ3VyYXRpb24uaW5pdCh3b3JrZmxvdy5wYXRoLCB0aGlzLm5vZGVNYXApO1xuXG5cdFx0XHRcdC8vIENyZWF0ZSBjb250ZXh0XG5cdFx0XHRcdGNvbnN0IGN0eDogQ29udGV4dCA9IHRoaXMuY3JlYXRlQ29udGV4dCh1bmRlZmluZWQsIHdvcmtmbG93LnBhdGgsIGlkKTtcblxuXHRcdFx0XHQvLyBQb3B1bGF0ZSByZXF1ZXN0IHdpdGggbWVzc2FnZSBkYXRhXG5cdFx0XHRcdGN0eC5yZXF1ZXN0ID0ge1xuXHRcdFx0XHRcdGJvZHk6IG1lc3NhZ2UuYm9keSxcblx0XHRcdFx0XHRoZWFkZXJzOiBtZXNzYWdlLmF0dHJpYnV0ZXMsXG5cdFx0XHRcdFx0cXVlcnk6IHt9LFxuXHRcdFx0XHRcdHBhcmFtczoge1xuXHRcdFx0XHRcdFx0dG9waWM6IG1lc3NhZ2UudG9waWMsXG5cdFx0XHRcdFx0XHRzdWJzY3JpcHRpb246IG1lc3NhZ2Uuc3Vic2NyaXB0aW9uIHx8IFwiXCIsXG5cdFx0XHRcdFx0XHRtZXNzYWdlSWQ6IG1lc3NhZ2UuaWQsXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0fSBhcyB1bmtub3duIGFzIFJlcXVlc3RDb250ZXh0O1xuXG5cdFx0XHRcdC8vIFN0b3JlIG1lc3NhZ2UgbWV0YWRhdGEgaW4gY29udGV4dFxuXHRcdFx0XHRpZiAoIWN0eC52YXJzKSBjdHgudmFycyA9IHt9O1xuXHRcdFx0XHRjdHgudmFyc1tcIl9wdWJzdWJfbWVzc2FnZVwiXSA9IHtcblx0XHRcdFx0XHR0b3BpYzogbWVzc2FnZS50b3BpYyxcblx0XHRcdFx0XHRzdWJzY3JpcHRpb246IG1lc3NhZ2Uuc3Vic2NyaXB0aW9uIHx8IFwiXCIsXG5cdFx0XHRcdFx0cHVibGlzaFRpbWU6IG1lc3NhZ2UucHVibGlzaFRpbWU/LnRvSVNPU3RyaW5nKCkgPz8gXCJcIixcblx0XHRcdFx0XHRhdHRyaWJ1dGVzOiBKU09OLnN0cmluZ2lmeShtZXNzYWdlLmF0dHJpYnV0ZXMpLFxuXHRcdFx0XHR9O1xuXG5cdFx0XHRcdGN0eC5sb2dnZXIubG9nKGBQcm9jZXNzaW5nIG1lc3NhZ2UgZnJvbSAke2NvbmZpZy50b3BpY306ICR7aWR9YCk7XG5cblx0XHRcdFx0Ly8gRXhlY3V0ZSB3b3JrZmxvd1xuXHRcdFx0XHRjb25zdCByZXNwb25zZTogVHJpZ2dlclJlc3BvbnNlID0gYXdhaXQgdGhpcy5ydW4oY3R4KTtcblx0XHRcdFx0Y29uc3QgZW5kID0gcGVyZm9ybWFuY2Uubm93KCk7XG5cblx0XHRcdFx0Ly8gU2V0IHNwYW4gYXR0cmlidXRlc1xuXHRcdFx0XHRzcGFuLnNldEF0dHJpYnV0ZShcInN1Y2Nlc3NcIiwgdHJ1ZSk7XG5cdFx0XHRcdHNwYW4uc2V0QXR0cmlidXRlKFwibWVzc2FnZV9pZFwiLCBpZCk7XG5cdFx0XHRcdHNwYW4uc2V0QXR0cmlidXRlKFwidG9waWNcIiwgY29uZmlnLnRvcGljKTtcblx0XHRcdFx0c3Bhbi5zZXRBdHRyaWJ1dGUoXCJzdWJzY3JpcHRpb25cIiwgY29uZmlnLnN1YnNjcmlwdGlvbik7XG5cdFx0XHRcdHNwYW4uc2V0QXR0cmlidXRlKFwicHJvdmlkZXJcIiwgY29uZmlnLnByb3ZpZGVyKTtcblx0XHRcdFx0c3Bhbi5zZXRBdHRyaWJ1dGUoXCJlbGFwc2VkX21zXCIsIGVuZCAtIHN0YXJ0KTtcblx0XHRcdFx0c3Bhbi5zZXRTdGF0dXMoeyBjb2RlOiBTcGFuU3RhdHVzQ29kZS5PSyB9KTtcblxuXHRcdFx0XHQvLyBSZWNvcmQgbWV0cmljc1xuXHRcdFx0XHRwdWJzdWJNZXNzYWdlcy5hZGQoMSwge1xuXHRcdFx0XHRcdGVudjogcHJvY2Vzcy5lbnYuTk9ERV9FTlYsXG5cdFx0XHRcdFx0dG9waWM6IGNvbmZpZy50b3BpYyxcblx0XHRcdFx0XHRzdWJzY3JpcHRpb246IGNvbmZpZy5zdWJzY3JpcHRpb24sXG5cdFx0XHRcdFx0cHJvdmlkZXI6IGNvbmZpZy5wcm92aWRlcixcblx0XHRcdFx0XHR3b3JrZmxvd19uYW1lOiB0aGlzLmNvbmZpZ3VyYXRpb24ubmFtZSxcblx0XHRcdFx0XHRzdWNjZXNzOiBcInRydWVcIixcblx0XHRcdFx0fSk7XG5cblx0XHRcdFx0Y3R4LmxvZ2dlci5sb2coYE1lc3NhZ2UgcHJvY2Vzc2VkIGluICR7KGVuZCAtIHN0YXJ0KS50b0ZpeGVkKDIpfW1zOiAke2lkfWApO1xuXG5cdFx0XHRcdC8vIEFja25vd2xlZGdlIG1lc3NhZ2UgaWYgY29uZmlndXJlZFxuXHRcdFx0XHRpZiAoY29uZmlnLmFjayAhPT0gZmFsc2UpIHtcblx0XHRcdFx0XHRhd2FpdCBtZXNzYWdlLmFjaygpO1xuXHRcdFx0XHRcdGN0eC5sb2dnZXIubG9nKGBNZXNzYWdlIGFja25vd2xlZGdlZDogJHtpZH1gKTtcblx0XHRcdFx0fVxuXHRcdFx0fSBjYXRjaCAoZXJyb3IpIHtcblx0XHRcdFx0Y29uc3QgZXJyb3JNZXNzYWdlID0gKGVycm9yIGFzIEVycm9yKS5tZXNzYWdlO1xuXG5cdFx0XHRcdC8vIFNldCBzcGFuIGVycm9yXG5cdFx0XHRcdHNwYW4uc2V0QXR0cmlidXRlKFwic3VjY2Vzc1wiLCBmYWxzZSk7XG5cdFx0XHRcdHNwYW4ucmVjb3JkRXhjZXB0aW9uKGVycm9yIGFzIEVycm9yKTtcblx0XHRcdFx0c3Bhbi5zZXRTdGF0dXMoeyBjb2RlOiBTcGFuU3RhdHVzQ29kZS5FUlJPUiwgbWVzc2FnZTogZXJyb3JNZXNzYWdlIH0pO1xuXG5cdFx0XHRcdC8vIFJlY29yZCBlcnJvciBtZXRyaWNzXG5cdFx0XHRcdHB1YnN1YkVycm9ycy5hZGQoMSwge1xuXHRcdFx0XHRcdGVudjogcHJvY2Vzcy5lbnYuTk9ERV9FTlYsXG5cdFx0XHRcdFx0dG9waWM6IGNvbmZpZy50b3BpYyxcblx0XHRcdFx0XHRzdWJzY3JpcHRpb246IGNvbmZpZy5zdWJzY3JpcHRpb24sXG5cdFx0XHRcdFx0cHJvdmlkZXI6IGNvbmZpZy5wcm92aWRlcixcblx0XHRcdFx0XHR3b3JrZmxvd19uYW1lOiB0aGlzLmNvbmZpZ3VyYXRpb24/Lm5hbWUgfHwgXCJ1bmtub3duXCIsXG5cdFx0XHRcdH0pO1xuXG5cdFx0XHRcdHRoaXMubG9nZ2VyLmVycm9yKGBGYWlsZWQgdG8gcHJvY2VzcyBtZXNzYWdlICR7aWR9OiAke2Vycm9yTWVzc2FnZX1gLCAoZXJyb3IgYXMgRXJyb3IpLnN0YWNrKTtcblxuXHRcdFx0XHQvLyBOYWNrIG1lc3NhZ2Vcblx0XHRcdFx0aWYgKGNvbmZpZy5hY2sgIT09IGZhbHNlKSB7XG5cdFx0XHRcdFx0YXdhaXQgbWVzc2FnZS5uYWNrKCk7XG5cdFx0XHRcdFx0dGhpcy5sb2dnZXIubG9nKGBNZXNzYWdlIG5hY2tlZDogJHtpZH1gKTtcblx0XHRcdFx0fVxuXHRcdFx0fSBmaW5hbGx5IHtcblx0XHRcdFx0c3Bhbi5lbmQoKTtcblx0XHRcdH1cblx0XHR9KTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBQdWJTdWJUcmlnZ2VyO1xuIl19
|
|
214
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHViU3ViVHJpZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9QdWJTdWJUcmlnZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQkc7QUFHSCxPQUFPLEVBQ04sYUFBYSxFQUdiLE9BQU8sRUFDUCxXQUFXLEdBRVgsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQWEsY0FBYyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMvRSxPQUFPLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQW9FbEM7O0dBRUc7QUFDSCxNQUFNLE9BQWdCLGFBQWMsU0FBUSxXQUFXO0lBQzVDLE9BQU8sR0FBa0IsRUFBbUIsQ0FBQztJQUNwQyxNQUFNLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FDMUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLElBQUkseUJBQXlCLEVBQ3JELE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxJQUFJLE9BQU8sQ0FDdEMsQ0FBQztJQUNpQixNQUFNLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztJQU9oRDs7T0FFRztJQUNILFNBQVM7UUFDUixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ25DLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pDLEtBQUssTUFBTSxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDbEQsQ0FBQztJQUNGLENBQUM7SUFFRDs7T0FFRztJQUNILGFBQWE7UUFDWixJQUFJLENBQUMsT0FBTyxDQUFD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Q0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDZCQUE2QixFQUFFLEtBQUssWUFBWSxFQUFFLEVBQUcsS0FBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUU5RixlQUFlO2dCQUNmLElBQUksTUFBTSxDQUFDLEdBQUcsS0FBSyxLQUFLLEVBQUUsQ0FBQztvQkFDMUIsTUFBTSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLG1CQUFtQixFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUMxQyxDQUFDO1lBQ0YsQ0FBQztvQkFBUyxDQUFDO2dCQUNWLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNaLENBQUM7UUFDRixDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7Q0FDRDtBQUVELGVBQWUsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBQdWJTdWJUcmlnZ2VyIC0gQmFzZSBjbGFzcyBmb3IgcHViL3N1Yi1iYXNlZCB3b3JrZmxvdyB0cmlnZ2Vyc1xuICpcbiAqIEV4dGVuZHMgVHJpZ2dlckJhc2UgdG8gc3VwcG9ydCBwdWIvc3ViIHRyaWdnZXJzOlxuICogLSBHQ1AgUHViL1N1YlxuICogLSBBV1MgU05TICh2aWEgU1FTIHN1YnNjcmlwdGlvbilcbiAqIC0gQXp1cmUgU2VydmljZSBCdXNcbiAqXG4gKiBQYXR0ZXJuOlxuICogMS4gbG9hZE5vZGVzKCkgLSBMb2FkIGF2YWlsYWJsZSBub2RlcyBpbnRvIE5vZGVNYXBcbiAqIDIuIGxvYWRXb3JrZmxvd3MoKSAtIExvYWQgd29ya2Zsb3dzIHdpdGggcHVic3ViIHRyaWdnZXJzXG4gKiAzLiBzdGFydFN1YnNjcmliZXIoKSAtIENvbm5lY3QgdG8gcHViL3N1YiBhbmQgc3RhcnQgcmVjZWl2aW5nIG1lc3NhZ2VzXG4gKiA0LiBGb3IgZWFjaCBtZXNzYWdlOlxuICogICAgLSBNYXRjaCB3b3JrZmxvdyBieSB0cmlnZ2VyIGNvbmZpZyAodG9waWMvc3Vic2NyaXB0aW9uKVxuICogICAgLSBDcmVhdGUgY29udGV4dCB3aXRoIHRoaXMuY3JlYXRlQ29udGV4dCgpXG4gKiAgICAtIFBvcHVsYXRlIGN0eC5yZXF1ZXN0IHdpdGggbWVzc2FnZSBkYXRhXG4gKiAgICAtIEV4ZWN1dGUgd29ya2Zsb3cgdmlhIHRoaXMucnVuKGN0eClcbiAqICAgIC0gQWNrL25hY2sgYmFzZWQgb24gcmVzcG9uc2VcbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEhlbHBlclJlc3BvbnNlLCBQdWJTdWJQcm92aWRlciwgUHViU3ViVHJpZ2dlck9wdHMgfSBmcm9tIFwiQGJsb2tqcy9oZWxwZXJcIjtcbmltcG9ydCB7XG5cdERlZmF1bHRMb2dnZXIsXG5cdHR5cGUgR2xvYmFsT3B0aW9ucyxcblx0dHlwZSBCbG9rU2VydmljZSxcblx0Tm9kZU1hcCxcblx0VHJpZ2dlckJhc2UsXG5cdHR5cGUgVHJpZ2dlclJlc3BvbnNlLFxufSBmcm9tIFwiQGJsb2tqcy9ydW5uZXJcIjtcbmltcG9ydCB0eXBlIHsgQ29udGV4dCwgUmVxdWVzdENvbnRleHQgfSBmcm9tIFwiQGJsb2tqcy9zaGFyZWRcIjtcbmltcG9ydCB7IHR5cGUgU3BhbiwgU3BhblN0YXR1c0NvZGUsIG1ldHJpY3MsIHRyYWNlIH0gZnJvbSBcIkBvcGVudGVsZW1ldHJ5L2FwaVwiO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gXCJ1dWlkXCI7XG5cbi8qKlxuICogTWVzc2FnZSByZWNlaXZlZCBmcm9tIHB1Yi9zdWJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQdWJTdWJNZXNzYWdlIHtcblx0LyoqIFVuaXF1ZSBtZXNzYWdlIElEICovXG5cdGlkOiBzdHJpbmc7XG5cdC8qKiBNZXNzYWdlIGJvZHkgKHBhcnNlZCkgKi9cblx0Ym9keTogdW5rbm93bjtcblx0LyoqIE1lc3NhZ2UgYXR0cmlidXRlcy9tZXRhZGF0YSAqL1xuXHRhdHRyaWJ1dGVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXHQvKiogT3JpZ2luYWwgcmF3IG1lc3NhZ2UgZnJvbSBwcm92aWRlciAqL1xuXHRyYXc6IHVua25vd247XG5cdC8qKiBUb3BpYyBuYW1lICovXG5cdHRvcGljOiBzdHJpbmc7XG5cdC8qKiBTdWJzY3JpcHRpb24gbmFtZSAqL1xuXHRzdWJzY3JpcHRpb24/OiBzdHJpbmc7XG5cdC8qKiBQdWJsaXNoIHRpbWVzdGFtcCAqL1xuXHRwdWJsaXNoVGltZT86IERhdGU7XG5cdC8qKiBBY2tub3dsZWRnZSB0aGUgbWVzc2FnZSAqL1xuXHRhY2s6ICgpID0+IFByb21pc2U8dm9pZD47XG5cdC8qKiBSZWplY3QvbmFjayB0aGUgbWVzc2FnZSAqL1xuXHRuYWNrOiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIFB1Yi9TdWIgYWRhcHRlciBpbnRlcmZhY2UgLSBpbXBsZW1lbnRlZCBieSBlYWNoIHByb3ZpZGVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHViU3ViQWRhcHRlciB7XG5cdC8qKiBQcm92aWRlciBuYW1lICovXG5cdHJlYWRvbmx5IHByb3ZpZGVyOiBQdWJTdWJQcm92aWRlcjtcblxuXHQvKiogQ29ubmVjdCB0byB0aGUgcHViL3N1YiBzeXN0ZW0gKi9cblx0Y29ubmVjdCgpOiBQcm9taXNlPHZvaWQ+O1xuXG5cdC8qKiBEaXNjb25uZWN0IGZyb20gdGhlIHB1Yi9zdWIgc3lzdGVtICovXG5cdGRpc2Nvbm5lY3QoKTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKiogU3Vic2NyaWJlIHRvIGEgdG9waWMgYW5kIHJlY2VpdmUgbWVzc2FnZXMgKi9cblx0c3Vic2NyaWJlKGNvbmZpZzogUHViU3ViVHJpZ2dlck9wdHMsIGhhbmRsZXI6IChtZXNzYWdlOiBQdWJTdWJNZXNzYWdlKSA9PiBQcm9taXNlPHZvaWQ+KTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKiogVW5zdWJzY3JpYmUgZnJvbSBhIHRvcGljICovXG5cdHVuc3Vic2NyaWJlKHN1YnNjcmlwdGlvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKiogQ2hlY2sgaWYgY29ubmVjdGVkICovXG5cdGlzQ29ubmVjdGVkKCk6IGJvb2xlYW47XG5cblx0LyoqIEhlYWx0aCBjaGVjayAqL1xuXHRoZWFsdGhDaGVjaygpOiBQcm9taXNlPGJvb2xlYW4+O1xufVxuXG4vKipcbiAqIFdvcmtmbG93IG1vZGVsIHdpdGggcHViL3N1YiB0cmlnZ2VyIGNvbmZpZ3VyYXRpb25cbiAqL1xuaW50ZXJmYWNlIFB1YlN1YldvcmtmbG93TW9kZWwge1xuXHRwYXRoOiBzdHJpbmc7XG5cdGNvbmZpZzoge1xuXHRcdG5hbWU6IHN0cmluZztcblx0XHR2ZXJzaW9uOiBzdHJpbmc7XG5cdFx0dHJpZ2dlcj86IHtcblx0XHRcdHB1YnN1Yj86IFB1YlN1YlRyaWdnZXJPcHRzO1xuXHRcdFx0W2tleTogc3RyaW5nXTogdW5rbm93bjtcblx0XHR9O1xuXHRcdFtrZXk6IHN0cmluZ106IHVua25vd247XG5cdH07XG59XG5cbi8qKlxuICogUHViU3ViVHJpZ2dlciAtIEFic3RyYWN0IGJhc2UgY2xhc3MgZm9yIHB1Yi9zdWItYmFzZWQgdHJpZ2dlcnNcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFB1YlN1YlRyaWdnZXIgZXh0ZW5kcyBUcmlnZ2VyQmFzZSB7XG5cdHByb3RlY3RlZCBub2RlTWFwOiBHbG9iYWxPcHRpb25zID0ge30gYXMgR2xvYmFsT3B0aW9ucztcblx0cHJvdGVjdGVkIHJlYWRvbmx5IHRyYWNlciA9IHRyYWNlLmdldFRyYWNlcihcblx0XHRwcm9jZXNzLmVudi5QUk9KRUNUX05BTUUgfHwgXCJ0cmlnZ2VyLXB1YnN1Yi13b3JrZmxvd1wiLFxuXHRcdHByb2Nlc3MuZW52LlBST0pFQ1RfVkVSU0lPTiB8fCBcIjAuMC4xXCIsXG5cdCk7XG5cdHByb3RlY3RlZCByZWFkb25seSBsb2dnZXIgPSBuZXcgRGVmYXVsdExvZ2dlcigpO1xuXHRwcm90ZWN0ZWQgYWJzdHJhY3QgYWRhcHRlcjogUHViU3ViQWRhcHRlcjtcblxuXHQvLyBTdWJjbGFzc2VzIHByb3ZpZGUgdGhlc2Vcblx0cHJvdGVjdGVkIGFic3RyYWN0IG5vZGVzOiBSZWNvcmQ8c3RyaW5nLCBCbG9rU2VydmljZTx1bmtub3duPj47XG5cdHByb3RlY3RlZCBhYnN0cmFjdCB3b3JrZmxvd3M6IFJlY29yZDxzdHJpbmcsIEhlbHBlclJlc3BvbnNlPjtcblxuXHQvKipcblx0ICogTG9hZCBub2RlcyBpbnRvIHRoZSBub2RlIG1hcFxuXHQgKi9cblx0bG9hZE5vZGVzKCk6IHZvaWQge1xuXHRcdHRoaXMubm9kZU1hcC5ub2RlcyA9IG5ldyBOb2RlTWFwKCk7XG5cdFx0Y29uc3Qgbm9kZUtleXMgPSBPYmplY3Qua2V5cyh0aGlzLm5vZGVzKTtcblx0XHRmb3IgKGNvbnN0IGtleSBvZiBub2RlS2V5cykge1xuXHRcdFx0dGhpcy5ub2RlTWFwLm5vZGVzLmFkZE5vZGUoa2V5LCB0aGlzLm5vZGVzW2tleV0pO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBMb2FkIHdvcmtmbG93cyBpbnRvIHRoZSB3b3JrZmxvdyBtYXBcblx0ICovXG5cdGxvYWRXb3JrZmxvd3MoKTogdm9pZCB7XG5cdFx0dGhpcy5ub2RlTWFwLndvcmtmbG93cyA9IHRoaXMud29ya2Zsb3dzO1xuXHR9XG5cblx0LyoqXG5cdCAqIFN0YXJ0IHRoZSBwdWIvc3ViIHN1YnNjcmliZXIgLSBtYWluIGVudHJ5IHBvaW50XG5cdCAqL1xuXHRhc3luYyBsaXN0ZW4oKTogUHJvbWlzZTxudW1iZXI+IHtcblx0XHRjb25zdCBzdGFydFRpbWUgPSB0aGlzLnN0YXJ0Q291bnRlcigpO1xuXG5cdFx0Ly8gSW5pdGlhbGl6ZSBub2RlcyBhbmQgd29ya2Zsb3dzIChjYWxsZWQgaGVyZSBiZWNhdXNlIHN1YmNsYXNzIHByb3BlcnRpZXNcblx0XHQvLyBhcmVuJ3QgYXZhaWxhYmxlIGluIHBhcmVudCBjb25zdHJ1Y3Rvcilcblx0XHR0aGlzLmxvYWROb2RlcygpO1xuXHRcdHRoaXMubG9hZFdvcmtmbG93cygpO1xuXG5cdFx0dHJ5IHtcblx0XHRcdC8vIENvbm5lY3QgdG8gcHViL3N1YiBzeXN0ZW1cblx0XHRcdGF3YWl0IHRoaXMuYWRhcHRlci5jb25uZWN0KCk7XG5cdFx0XHR0aGlzLmxvZ2dlci5sb2coYENvbm5lY3RlZCB0byAke3RoaXMuYWRhcHRlci5wcm92aWRlcn0gcHViL3N1YiBzeXN0ZW1gKTtcblxuXHRcdFx0Ly8gRmluZCBhbGwgd29ya2Zsb3dzIHdpdGggcHViL3N1YiB0cmlnZ2Vyc1xuXHRcdFx0Y29uc3QgcHVic3ViV29ya2Zsb3dzID0gdGhpcy5nZXRQdWJTdWJXb3JrZmxvd3MoKTtcblxuXHRcdFx0aWYgKHB1YnN1YldvcmtmbG93cy5sZW5ndGggPT09IDApIHtcblx0XHRcdFx0dGhpcy5sb2dnZXIubG9nKFwiTm8gd29ya2Zsb3dzIHdpdGggcHViL3N1YiB0cmlnZ2VycyBmb3VuZFwiKTtcblx0XHRcdFx0cmV0dXJuIHRoaXMuZW5kQ291bnRlcihzdGFydFRpbWUpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBTdWJzY3JpYmUgdG8gZWFjaCB0b3BpYy9zdWJzY3JpcHRpb25cblx0XHRcdGZvciAoY29uc3Qgd29ya2Zsb3cgb2YgcHVic3ViV29ya2Zsb3dzKSB7XG5cdFx0XHRcdGNvbnN0IGNvbmZpZyA9IHdvcmtmbG93LmNvbmZpZy50cmlnZ2VyPy5wdWJzdWIgYXMgUHViU3ViVHJpZ2dlck9wdHM7XG5cdFx0XHRcdHRoaXMubG9nZ2VyLmxvZyhcblx0XHRcdFx0XHRgU3Vic2NyaWJpbmcgdG8gdG9waWM6ICR7Y29uZmlnLnRvcGljfSwgc3Vic2NyaXB0aW9uOiAke2NvbmZpZy5zdWJzY3JpcHRpb259IGZvciB3b3JrZmxvdzogJHt3b3JrZmxvdy5wYXRofWAsXG5cdFx0XHRcdCk7XG5cblx0XHRcdFx0YXdhaXQgdGhpcy5hZGFwdGVyLnN1YnNjcmliZShjb25maWcsIGFzeW5jIChtZXNzYWdlKSA9PiB7XG5cdFx0XHRcdFx0YXdhaXQgdGhpcy5oYW5kbGVNZXNzYWdlKG1lc3NhZ2UsIHdvcmtmbG93LCBjb25maWcpO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblxuXHRcdFx0dGhpcy5sb2dnZXIubG9nKGBQdWIvU3ViIHRyaWdnZXIgc3RhcnRlZC4gTGlzdGVuaW5nIHRvICR7cHVic3ViV29ya2Zsb3dzLmxlbmd0aH0gc3Vic2NyaXB0aW9uKHMpYCk7XG5cblx0XHRcdC8vIEVuYWJsZSBITVIgaW4gZGV2ZWxvcG1lbnQgbW9kZVxuXHRcdFx0aWYgKHByb2Nlc3MuZW52LkJMT0tfSE1SID09PSBcInRydWVcIiB8fCBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gXCJkZXZlbG9wbWVudFwiKSB7XG5cdFx0XHRcdGF3YWl0IHRoaXMuZW5hYmxlSG90UmVsb2FkKCk7XG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiB0aGlzLmVuZENvdW50ZXIoc3RhcnRUaW1lKTtcblx0XHR9IGNhdGNoIChlcnJvcikge1xuXHRcdFx0dGhpcy5sb2dnZXIuZXJyb3IoYEZhaWxlZCB0byBzdGFydCBwdWIvc3ViIHRyaWdnZXI6ICR7KGVycm9yIGFzIEVycm9yKS5tZXNzYWdlfWApO1xuXHRcdFx0dGhyb3cgZXJyb3I7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFN0b3AgdGhlIHB1Yi9zdWIgc3Vic2NyaWJlclxuXHQgKi9cblx0YXN5bmMgc3RvcCgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRhd2FpdCB0aGlzLmFkYXB0ZXIuZGlzY29ubmVjdCgpO1xuXHRcdHRoaXMubG9nZ2VyLmxvZyhcIlB1Yi9TdWIgdHJpZ2dlciBzdG9wcGVkXCIpO1xuXHR9XG5cblx0cHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIG9uSG1yV29ya2Zsb3dDaGFuZ2UoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0dGhpcy5sb2dnZXIubG9nKFwiW0hNUl0gUHViL1N1YiB3b3JrZmxvdyBjaGFuZ2VkLCByZWxvYWRpbmcuLi5cIik7XG5cdFx0YXdhaXQgdGhpcy53YWl0Rm9ySW5GbGlnaHRSZXF1ZXN0cygpO1xuXHRcdGF3YWl0IHRoaXMuc3RvcCgpO1xuXHRcdHRoaXMubG9hZFdvcmtmbG93cygpO1xuXHRcdGF3YWl0IHRoaXMubGlzdGVuKCk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IGFsbCB3b3JrZmxvd3MgdGhhdCBoYXZlIHB1Yi9zdWIgdHJpZ2dlcnNcblx0ICovXG5cdHByb3RlY3RlZCBnZXRQdWJTdWJXb3JrZmxvd3MoKTogUHViU3ViV29ya2Zsb3dNb2RlbFtdIHtcblx0XHRjb25zdCB3b3JrZmxvd3M6IFB1YlN1YldvcmtmbG93TW9kZWxbXSA9IFtdO1xuXG5cdFx0Zm9yIChjb25zdCBbcGF0aCwgd29ya2Zsb3ddIG9mIE9iamVjdC5lbnRyaWVzKHRoaXMubm9kZU1hcC53b3JrZmxvd3MgfHwge30pKSB7XG5cdFx0XHQvLyBIZWxwZXJSZXNwb25zZSBoYXMgYSBwcm90ZWN0ZWQgX2NvbmZpZyBwcm9wZXJ0eVxuXHRcdFx0Y29uc3Qgd29ya2Zsb3dDb25maWcgPSAod29ya2Zsb3cgYXMgdW5rbm93biBhcyB7IF9jb25maWc6IFB1YlN1YldvcmtmbG93TW9kZWxbXCJjb25maWdcIl0gfSkuX2NvbmZpZztcblxuXHRcdFx0aWYgKHdvcmtmbG93Q29uZmlnPy50cmlnZ2VyKSB7XG5cdFx0XHRcdGNvbnN0IHRyaWdnZXJUeXBlID0gT2JqZWN0LmtleXMod29ya2Zsb3dDb25maWcudHJpZ2dlcilbMF07XG5cblx0XHRcdFx0aWYgKHRyaWdnZXJUeXBlID09PSBcInB1YnN1YlwiICYmIHdvcmtmbG93Q29uZmlnLnRyaWdnZXIucHVic3ViKSB7XG5cdFx0XHRcdFx0d29ya2Zsb3dzLnB1c2goe1xuXHRcdFx0XHRcdFx0cGF0aCxcblx0XHRcdFx0XHRcdGNvbmZpZzogd29ya2Zsb3dDb25maWcsXG5cdFx0XHRcdFx0fSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRyZXR1cm4gd29ya2Zsb3dzO1xuXHR9XG5cblx0LyoqXG5cdCAqIEhhbmRsZSBhbiBpbmNvbWluZyBtZXNzYWdlXG5cdCAqL1xuXHRwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlTWVzc2FnZShcblx0XHRtZXNzYWdlOiBQdWJTdWJNZXNzYWdlLFxuXHRcdHdvcmtmbG93OiBQdWJTdWJXb3JrZmxvd01vZGVsLFxuXHRcdGNvbmZpZzogUHViU3ViVHJpZ2dlck9wdHMsXG5cdCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGNvbnN0IGlkID0gbWVzc2FnZS5pZCB8fCB1dWlkKCk7XG5cdFx0Y29uc3QgZGVmYXVsdE1ldGVyID0gbWV0cmljcy5nZXRNZXRlcihcImRlZmF1bHRcIik7XG5cdFx0Y29uc3QgcHVic3ViTWVzc2FnZXMgPSBkZWZhdWx0TWV0ZXIuY3JlYXRlQ291bnRlcihcInB1YnN1Yl9tZXNzYWdlc1wiLCB7XG5cdFx0XHRkZXNjcmlwdGlvbjogXCJQdWIvU3ViIG1lc3NhZ2VzIHByb2Nlc3NlZFwiLFxuXHRcdH0pO1xuXHRcdGNvbnN0IHB1YnN1YkVycm9ycyA9IGRlZmF1bHRNZXRlci5jcmVhdGVDb3VudGVyKFwicHVic3ViX2Vycm9yc1wiLCB7XG5cdFx0XHRkZXNjcmlwdGlvbjogXCJQdWIvU3ViIG1lc3NhZ2UgcHJvY2Vzc2luZyBlcnJvcnNcIixcblx0XHR9KTtcblxuXHRcdGF3YWl0IHRoaXMudHJhY2VyLnN0YXJ0QWN0aXZlU3BhbihgcHVic3ViOiR7Y29uZmlnLnRvcGljfWAsIGFzeW5jIChzcGFuOiBTcGFuKSA9PiB7XG5cdFx0XHR0cnkge1xuXHRcdFx0XHRjb25zdCBzdGFydCA9IHBlcmZvcm1hbmNlLm5vdygpO1xuXG5cdFx0XHRcdC8vIEluaXRpYWxpemUgY29uZmlndXJhdGlvbiBmb3IgdGhpcyB3b3JrZmxvd1xuXHRcdFx0XHRhd2FpdCB0aGlzLmNvbmZpZ3VyYXRpb24uaW5pdCh3b3JrZmxvdy5wYXRoLCB0aGlzLm5vZGVNYXApO1xuXG5cdFx0XHRcdC8vIENyZWF0ZSBjb250ZXh0XG5cdFx0XHRcdGNvbnN0IGN0eDogQ29udGV4dCA9IHRoaXMuY3JlYXRlQ29udGV4dCh1bmRlZmluZWQsIHdvcmtmbG93LnBhdGgsIGlkKTtcblxuXHRcdFx0XHQvLyBQb3B1bGF0ZSByZXF1ZXN0IHdpdGggbWVzc2FnZSBkYXRhXG5cdFx0XHRcdGN0eC5yZXF1ZXN0ID0ge1xuXHRcdFx0XHRcdGJvZHk6IG1lc3NhZ2UuYm9keSxcblx0XHRcdFx0XHRoZWFkZXJzOiBtZXNzYWdlLmF0dHJpYnV0ZXMsXG5cdFx0XHRcdFx0cXVlcnk6IHt9LFxuXHRcdFx0XHRcdHBhcmFtczoge1xuXHRcdFx0XHRcdFx0dG9waWM6IG1lc3NhZ2UudG9waWMsXG5cdFx0XHRcdFx0XHRzdWJzY3JpcHRpb246IG1lc3NhZ2Uuc3Vic2NyaXB0aW9uIHx8IFwiXCIsXG5cdFx0XHRcdFx0XHRtZXNzYWdlSWQ6IG1lc3NhZ2UuaWQsXG5cdFx0XHRcdFx0fSxcblx0XHRcdFx0fSBhcyB1bmtub3duIGFzIFJlcXVlc3RDb250ZXh0O1xuXG5cdFx0XHRcdC8vIFN0b3JlIG1lc3NhZ2UgbWV0YWRhdGEgaW4gY29udGV4dFxuXHRcdFx0XHRpZiAoIWN0eC52YXJzKSBjdHgudmFycyA9IHt9O1xuXHRcdFx0XHRjdHgudmFyc1tcIl9wdWJzdWJfbWVzc2FnZVwiXSA9IHtcblx0XHRcdFx0XHR0b3BpYzogbWVzc2FnZS50b3BpYyxcblx0XHRcdFx0XHRzdWJzY3JpcHRpb246IG1lc3NhZ2Uuc3Vic2NyaXB0aW9uIHx8IFwiXCIsXG5cdFx0XHRcdFx0cHVibGlzaFRpbWU6IG1lc3NhZ2UucHVibGlzaFRpbWU/LnRvSVNPU3RyaW5nKCkgPz8gXCJcIixcblx0XHRcdFx0XHRhdHRyaWJ1dGVzOiBKU09OLnN0cmluZ2lmeShtZXNzYWdlLmF0dHJpYnV0ZXMpLFxuXHRcdFx0XHR9O1xuXG5cdFx0XHRcdGN0eC5sb2dnZXIubG9nKGBQcm9jZXNzaW5nIG1lc3NhZ2UgZnJvbSAke2NvbmZpZy50b3BpY306ICR7aWR9YCk7XG5cblx0XHRcdFx0Ly8gRXhlY3V0ZSB3b3JrZmxvd1xuXHRcdFx0XHRjb25zdCByZXNwb25zZTogVHJpZ2dlclJlc3BvbnNlID0gYXdhaXQgdGhpcy5ydW4oY3R4KTtcblx0XHRcdFx0Y29uc3QgZW5kID0gcGVyZm9ybWFuY2Uubm93KCk7XG5cblx0XHRcdFx0Ly8gU2V0IHNwYW4gYXR0cmlidXRlc1xuXHRcdFx0XHRzcGFuLnNldEF0dHJpYnV0ZShcInN1Y2Nlc3NcIiwgdHJ1ZSk7XG5cdFx0XHRcdHNwYW4uc2V0QXR0cmlidXRlKFwibWVzc2FnZV9pZFwiLCBpZCk7XG5cdFx0XHRcdHNwYW4uc2V0QXR0cmlidXRlKFwidG9waWNcIiwgY29uZmlnLnRvcGljKTtcblx0XHRcdFx0c3Bhbi5zZXRBdHRyaWJ1dGUoXCJzdWJzY3JpcHRpb25cIiwgY29uZmlnLnN1YnNjcmlwdGlvbik7XG5cdFx0XHRcdHNwYW4uc2V0QXR0cmlidXRlKFwicHJvdmlkZXJcIiwgY29uZmlnLnByb3ZpZGVyKTtcblx0XHRcdFx0c3Bhbi5zZXRBdHRyaWJ1dGUoXCJlbGFwc2VkX21zXCIsIGVuZCAtIHN0YXJ0KTtcblx0XHRcdFx0c3Bhbi5zZXRTdGF0dXMoeyBjb2RlOiBTcGFuU3RhdHVzQ29kZS5PSyB9KTtcblxuXHRcdFx0XHQvLyBSZWNvcmQgbWV0cmljc1xuXHRcdFx0XHRwdWJzdWJNZXNzYWdlcy5hZGQoMSwge1xuXHRcdFx0XHRcdGVudjogcHJvY2Vzcy5lbnYuTk9ERV9FTlYsXG5cdFx0XHRcdFx0dG9waWM6IGNvbmZpZy50b3BpYyxcblx0XHRcdFx0XHRzdWJzY3JpcHRpb246IGNvbmZpZy5zdWJzY3JpcHRpb24sXG5cdFx0XHRcdFx0cHJvdmlkZXI6IGNvbmZpZy5wcm92aWRlcixcblx0XHRcdFx0XHR3b3JrZmxvd19uYW1lOiB0aGlzLmNvbmZpZ3VyYXRpb24ubmFtZSxcblx0XHRcdFx0XHRzdWNjZXNzOiBcInRydWVcIixcblx0XHRcdFx0fSk7XG5cblx0XHRcdFx0Y3R4LmxvZ2dlci5sb2coYE1lc3NhZ2UgcHJvY2Vzc2VkIGluICR7KGVuZCAtIHN0YXJ0KS50b0ZpeGVkKDIpfW1zOiAke2lkfWApO1xuXG5cdFx0XHRcdC8vIEFja25vd2xlZGdlIG1lc3NhZ2UgaWYgY29uZmlndXJlZFxuXHRcdFx0XHRpZiAoY29uZmlnLmFjayAhPT0gZmFsc2UpIHtcblx0XHRcdFx0XHRhd2FpdCBtZXNzYWdlLmFjaygpO1xuXHRcdFx0XHRcdGN0eC5sb2dnZXIubG9nKGBNZXNzYWdlIGFja25vd2xlZGdlZDogJHtpZH1gKTtcblx0XHRcdFx0fVxuXHRcdFx0fSBjYXRjaCAoZXJyb3IpIHtcblx0XHRcdFx0Y29uc3QgZXJyb3JNZXNzYWdlID0gKGVycm9yIGFzIEVycm9yKS5tZXNzYWdlO1xuXG5cdFx0XHRcdC8vIFNldCBzcGFuIGVycm9yXG5cdFx0XHRcdHNwYW4uc2V0QXR0cmlidXRlKFwic3VjY2Vzc1wiLCBmYWxzZSk7XG5cdFx0XHRcdHNwYW4ucmVjb3JkRXhjZXB0aW9uKGVycm9yIGFzIEVycm9yKTtcblx0XHRcdFx0c3Bhbi5zZXRTdGF0dXMoeyBjb2RlOiBTcGFuU3RhdHVzQ29kZS5FUlJPUiwgbWVzc2FnZTogZXJyb3JNZXNzYWdlIH0pO1xuXG5cdFx0XHRcdC8vIFJlY29yZCBlcnJvciBtZXRyaWNzXG5cdFx0XHRcdHB1YnN1YkVycm9ycy5hZGQoMSwge1xuXHRcdFx0XHRcdGVudjogcHJvY2Vzcy5lbnYuTk9ERV9FTlYsXG5cdFx0XHRcdFx0dG9waWM6IGNvbmZpZy50b3BpYyxcblx0XHRcdFx0XHRzdWJzY3JpcHRpb246IGNvbmZpZy5zdWJzY3JpcHRpb24sXG5cdFx0XHRcdFx0cHJvdmlkZXI6IGNvbmZpZy5wcm92aWRlcixcblx0XHRcdFx0XHR3b3JrZmxvd19uYW1lOiB0aGlzLmNvbmZpZ3VyYXRpb24/Lm5hbWUgfHwgXCJ1bmtub3duXCIsXG5cdFx0XHRcdH0pO1xuXG5cdFx0XHRcdHRoaXMubG9nZ2VyLmVycm9yKGBGYWlsZWQgdG8gcHJvY2VzcyBtZXNzYWdlICR7aWR9OiAke2Vycm9yTWVzc2FnZX1gLCAoZXJyb3IgYXMgRXJyb3IpLnN0YWNrKTtcblxuXHRcdFx0XHQvLyBOYWNrIG1lc3NhZ2Vcblx0XHRcdFx0aWYgKGNvbmZpZy5hY2sgIT09IGZhbHNlKSB7XG5cdFx0XHRcdFx0YXdhaXQgbWVzc2FnZS5uYWNrKCk7XG5cdFx0XHRcdFx0dGhpcy5sb2dnZXIubG9nKGBNZXNzYWdlIG5hY2tlZDogJHtpZH1gKTtcblx0XHRcdFx0fVxuXHRcdFx0fSBmaW5hbGx5IHtcblx0XHRcdFx0c3Bhbi5lbmQoKTtcblx0XHRcdH1cblx0XHR9KTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBQdWJTdWJUcmlnZ2VyO1xuIl19
|
package/package.json
CHANGED
package/src/PubSubTrigger.ts
CHANGED
|
@@ -113,12 +113,6 @@ export abstract class PubSubTrigger extends TriggerBase {
|
|
|
113
113
|
protected abstract nodes: Record<string, BlokService<unknown>>;
|
|
114
114
|
protected abstract workflows: Record<string, HelperResponse>;
|
|
115
115
|
|
|
116
|
-
constructor() {
|
|
117
|
-
super();
|
|
118
|
-
this.loadNodes();
|
|
119
|
-
this.loadWorkflows();
|
|
120
|
-
}
|
|
121
|
-
|
|
122
116
|
/**
|
|
123
117
|
* Load nodes into the node map
|
|
124
118
|
*/
|
|
@@ -143,6 +137,11 @@ export abstract class PubSubTrigger extends TriggerBase {
|
|
|
143
137
|
async listen(): Promise<number> {
|
|
144
138
|
const startTime = this.startCounter();
|
|
145
139
|
|
|
140
|
+
// Initialize nodes and workflows (called here because subclass properties
|
|
141
|
+
// aren't available in parent constructor)
|
|
142
|
+
this.loadNodes();
|
|
143
|
+
this.loadWorkflows();
|
|
144
|
+
|
|
146
145
|
try {
|
|
147
146
|
// Connect to pub/sub system
|
|
148
147
|
await this.adapter.connect();
|