@devramps/sdk-typescript 0.1.4 → 0.1.6
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/base/base-step.d.ts +8 -4
- package/dist/base/base-step.js +4 -1
- package/dist/decorators/step.d.ts +1 -1
- package/dist/decorators/step.js +11 -6
- package/dist/output/step-output.d.ts +4 -12
- package/dist/output/step-output.js +2 -4
- package/dist/registry/step-registry.js +10 -10
- package/package.json +1 -1
- package/scripts/create-step-registry.js +12 -9
package/dist/base/base-step.d.ts
CHANGED
|
@@ -3,16 +3,19 @@ import type { StepLogger } from "../logging/step-logger";
|
|
|
3
3
|
import type { PrepareOutput } from "../output/step-output";
|
|
4
4
|
import type { ZodStandardJSONSchemaPayload } from "zod/v4/core";
|
|
5
5
|
export type StepKind = "simple" | "polling";
|
|
6
|
+
export interface StepData<S extends ZodType = ZodType> {
|
|
7
|
+
schema: S;
|
|
8
|
+
stepType: string;
|
|
9
|
+
stepKind: StepKind;
|
|
10
|
+
requiresApproval: boolean;
|
|
11
|
+
}
|
|
6
12
|
export interface StepMetadata<S extends ZodType = ZodType> {
|
|
7
13
|
name?: string;
|
|
8
14
|
shortDescription?: string;
|
|
9
15
|
longDescription?: string;
|
|
10
16
|
yamlExample?: string;
|
|
11
|
-
schema: S;
|
|
12
|
-
stepKind: StepKind;
|
|
13
|
-
requiresApproval: boolean;
|
|
14
17
|
stepType: string;
|
|
15
|
-
|
|
18
|
+
paramsJsonSchema: ZodStandardJSONSchemaPayload<S>;
|
|
16
19
|
documentationUrl?: string;
|
|
17
20
|
}
|
|
18
21
|
/**
|
|
@@ -31,6 +34,7 @@ export declare abstract class BaseStep<TParams = unknown> {
|
|
|
31
34
|
* Implemented by the @Step decorator.
|
|
32
35
|
*/
|
|
33
36
|
getMetadata(): StepMetadata;
|
|
37
|
+
getData(): StepData;
|
|
34
38
|
/**
|
|
35
39
|
* Optional prepare method for approval flow.
|
|
36
40
|
* Override this to require approval before execution.
|
package/dist/base/base-step.js
CHANGED
|
@@ -23,6 +23,9 @@ class BaseStep {
|
|
|
23
23
|
getMetadata() {
|
|
24
24
|
throw new Error("getMetadata not implemented. Did you forget to add the @Step decorator?");
|
|
25
25
|
}
|
|
26
|
+
getData() {
|
|
27
|
+
throw new Error("getData not implemented. Did you forget to add the @Step decorator?");
|
|
28
|
+
}
|
|
26
29
|
/**
|
|
27
30
|
* Optional prepare method for approval flow.
|
|
28
31
|
* Override this to require approval before execution.
|
|
@@ -35,4 +38,4 @@ class BaseStep {
|
|
|
35
38
|
}
|
|
36
39
|
}
|
|
37
40
|
exports.BaseStep = BaseStep;
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1zdGVwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jhc2UvYmFzZS1zdGVwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLHdEQUFvRDtBQUVwRCx1REFBb0Q7QUFzQnBEOzs7R0FHRztBQUNILE1BQXNCLFFBQVE7SUFDbEIsTUFBTSxHQUFlLElBQUksd0JBQVUsRUFBRSxDQUFDO0lBRWhEOzs7T0FHRztJQUNILFVBQVUsQ0FBQyxNQUFrQjtRQUMzQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVztRQUNULE1BQU0sSUFBSSxLQUFLLENBQ2IseUVBQXlFLENBQzFFLENBQUM7SUFDSixDQUFDO0lBRUQsT0FBTztRQUNMLE1BQU0sSUFBSSxLQUFLLENBQ2IscUVBQXFFLENBQ3RFLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBZ0I7UUFDNUIsOERBQThEO1FBQzlELGlFQUFpRTtRQUNqRSxPQUFPLHlCQUFXLENBQUMsTUFBTSxDQUN2QixzQ0FBc0MsRUFDdEMseUJBQXlCLENBQzFCLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF4Q0QsNEJBd0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBab2RUeXBlIH0gZnJvbSBcInpvZFwiO1xuaW1wb3J0IHR5cGUgeyBTdGVwTG9nZ2VyIH0gZnJvbSBcIi4uL2xvZ2dpbmcvc3RlcC1sb2dnZXJcIjtcbmltcG9ydCB7IE5vT3BMb2dnZXIgfSBmcm9tIFwiLi4vbG9nZ2luZy9zdGVwLWxvZ2dlclwiO1xuaW1wb3J0IHR5cGUgeyBQcmVwYXJlT3V0cHV0IH0gZnJvbSBcIi4uL291dHB1dC9zdGVwLW91dHB1dFwiO1xuaW1wb3J0IHsgU3RlcE91dHB1dHMgfSBmcm9tIFwiLi4vb3V0cHV0L3N0ZXAtb3V0cHV0XCI7XG5pbXBvcnQgdHlwZSB7IFpvZFN0YW5kYXJkSlNPTlNjaGVtYVBheWxvYWQgfSBmcm9tIFwiem9kL3Y0L2NvcmVcIjtcblxuZXhwb3J0IHR5cGUgU3RlcEtpbmQgPSBcInNpbXBsZVwiIHwgXCJwb2xsaW5nXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RlcERhdGE8UyBleHRlbmRzIFpvZFR5cGUgPSBab2RUeXBlPiB7XG4gIHNjaGVtYTogUztcbiAgc3RlcFR5cGU6IHN0cmluZztcbiAgc3RlcEtpbmQ6IFN0ZXBLaW5kO1xuICByZXF1aXJlc0FwcHJvdmFsOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0ZXBNZXRhZGF0YTxTIGV4dGVuZHMgWm9kVHlwZSA9IFpvZFR5cGU+IHtcbiAgbmFtZT86IHN0cmluZztcbiAgc2hvcnREZXNjcmlwdGlvbj86IHN0cmluZztcbiAgbG9uZ0Rlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB5YW1sRXhhbXBsZT86IHN0cmluZztcbiAgc3RlcFR5cGU6IHN0cmluZztcbiAgcGFyYW1zSnNvblNjaGVtYTogWm9kU3RhbmRhcmRKU09OU2NoZW1hUGF5bG9hZDxTPjtcbiAgZG9jdW1lbnRhdGlvblVybD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBhbGwgc3RlcHMuXG4gKiBQcm92aWRlcyBsb2dnaW5nIGFuZCBjb21tb24gZnVuY3Rpb25hbGl0eS5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VTdGVwPFRQYXJhbXMgPSB1bmtub3duPiB7XG4gIHByb3RlY3RlZCBsb2dnZXI6IFN0ZXBMb2dnZXIgPSBuZXcgTm9PcExvZ2dlcigpO1xuXG4gIC8qKlxuICAgKiBDYWxsZWQgYnkgdGhlIHJlZ2lzdHJ5IHRvIGluamVjdCB0aGUgbG9nZ2VyIGJlZm9yZSBleGVjdXRpb24uXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX3NldExvZ2dlcihsb2dnZXI6IFN0ZXBMb2dnZXIpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlciA9IGxvZ2dlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIG1ldGFkYXRhIGFib3V0IHRoaXMgc3RlcC5cbiAgICogSW1wbGVtZW50ZWQgYnkgdGhlIEBTdGVwIGRlY29yYXRvci5cbiAgICovXG4gIGdldE1ldGFkYXRhKCk6IFN0ZXBNZXRhZGF0YSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJnZXRNZXRhZGF0YSBub3QgaW1wbGVtZW50ZWQuIERpZCB5b3UgZm9yZ2V0IHRvIGFkZCB0aGUgQFN0ZXAgZGVjb3JhdG9yP1wiXG4gICAgKTtcbiAgfVxuXG4gIGdldERhdGEoKTogU3RlcERhdGEge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIFwiZ2V0RGF0YSBub3QgaW1wbGVtZW50ZWQuIERpZCB5b3UgZm9yZ2V0IHRvIGFkZCB0aGUgQFN0ZXAgZGVjb3JhdG9yP1wiXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBwcmVwYXJlIG1ldGhvZCBmb3IgYXBwcm92YWwgZmxvdy5cbiAgICogT3ZlcnJpZGUgdGhpcyB0byByZXF1aXJlIGFwcHJvdmFsIGJlZm9yZSBleGVjdXRpb24uXG4gICAqIElmIG5vdCBvdmVycmlkZGVuLCB0aGUgc3RlcCB3aWxsIG5vdCByZXF1aXJlIGFwcHJvdmFsLlxuICAgKi9cbiAgYXN5bmMgcHJlcGFyZShfcGFyYW1zOiBUUGFyYW1zKTogUHJvbWlzZTxQcmVwYXJlT3V0cHV0PiB7XG4gICAgLy8gRGVmYXVsdDogbm8gYXBwcm92YWwgcmVxdWlyZWQgLSB0aGlzIHNob3VsZCBuZXZlciBiZSBjYWxsZWRcbiAgICAvLyBUaGUgcmVnaXN0cnkgY2hlY2tzIGlmIHByZXBhcmUgaXMgb3ZlcnJpZGRlbiBiZWZvcmUgY2FsbGluZyBpdFxuICAgIHJldHVybiBTdGVwT3V0cHV0cy5mYWlsZWQoXG4gICAgICBcInByZXBhcmUoKSBjYWxsZWQgYnV0IG5vdCBpbXBsZW1lbnRlZFwiLFxuICAgICAgXCJQUkVQQVJFX05PVF9JTVBMRU1FTlRFRFwiXG4gICAgKTtcbiAgfVxufVxuIl19
|
package/dist/decorators/step.js
CHANGED
|
@@ -31,6 +31,16 @@ function Step(config) {
|
|
|
31
31
|
return function (Base) {
|
|
32
32
|
const Enhanced = class extends Base {
|
|
33
33
|
getMetadata() {
|
|
34
|
+
return {
|
|
35
|
+
name: config.name,
|
|
36
|
+
stepType: config.type,
|
|
37
|
+
shortDescription: config.shortDescription,
|
|
38
|
+
longDescription: config.longDescription,
|
|
39
|
+
yamlExample: config.yamlExample,
|
|
40
|
+
paramsJsonSchema: zod_1.z.toJSONSchema(config.schema),
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
getData() {
|
|
34
44
|
// Detect step kind by checking for PollingStep methods
|
|
35
45
|
const hasPollingMethods = "trigger" in this &&
|
|
36
46
|
typeof this.trigger === "function" &&
|
|
@@ -40,13 +50,8 @@ function Step(config) {
|
|
|
40
50
|
// Check if prepare is overridden (not the default BaseStep.prepare)
|
|
41
51
|
const requiresApproval = this.prepare !== base_step_1.BaseStep.prototype.prepare;
|
|
42
52
|
return {
|
|
43
|
-
name: config.name,
|
|
44
53
|
stepType: config.type,
|
|
45
|
-
shortDescription: config.shortDescription,
|
|
46
|
-
longDescription: config.longDescription,
|
|
47
|
-
yamlExample: config.yamlExample,
|
|
48
54
|
schema: config.schema,
|
|
49
|
-
jsonSchema: zod_1.z.toJSONSchema(config.schema),
|
|
50
55
|
stepKind,
|
|
51
56
|
requiresApproval,
|
|
52
57
|
};
|
|
@@ -55,4 +60,4 @@ function Step(config) {
|
|
|
55
60
|
return Enhanced;
|
|
56
61
|
};
|
|
57
62
|
}
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kZWNvcmF0b3JzL3N0ZXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFxQ0Esb0JBd0NDO0FBN0VELDZCQUFzQztBQUV0QyxpREFBNkM7QUFXN0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUJHO0FBQ0gsU0FBZ0IsSUFBSSxDQUFvQixNQUFxQjtJQUMzRCxPQUFPLFVBQ0wsSUFBTztRQUVQLE1BQU0sUUFBUSxHQUFHLEtBQU0sU0FBUSxJQUFJO1lBQ3hCLFdBQVc7Z0JBQ2xCLE9BQU87b0JBQ0wsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO29CQUNqQixRQUFRLEVBQUUsTUFBTSxDQUFDLElBQUk7b0JBQ3JCLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxnQkFBZ0I7b0JBQ3pDLGVBQWUsRUFBRSxNQUFNLENBQUMsZUFBZTtvQkFDdkMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO29CQUMvQixnQkFBZ0IsRUFBRSxPQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7aUJBQ2hELENBQUM7WUFDSixDQUFDO1lBRVEsT0FBTztnQkFDZCx1REFBdUQ7Z0JBQ3ZELE1BQU0saUJBQWlCLEdBQ3JCLFNBQVMsSUFBSSxJQUFJO29CQUNqQixPQUFRLElBQVksQ0FBQyxPQUFPLEtBQUssVUFBVTtvQkFDM0MsTUFBTSxJQUFJLElBQUk7b0JBQ2QsT0FBUSxJQUFZLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQztnQkFFM0MsTUFBTSxRQUFRLEdBQWEsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO2dCQUVwRSxvRUFBb0U7Z0JBQ3BFLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE9BQU8sS0FBSyxvQkFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7Z0JBRXJFLE9BQU87b0JBQ0wsUUFBUSxFQUFFLE1BQU0sQ0FBQyxJQUFJO29CQUNyQixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07b0JBQ3JCLFFBQVE7b0JBQ1IsZ0JBQWdCO2lCQUNqQixDQUFDO1lBQ0osQ0FBQztTQUNGLENBQUM7UUFFRixPQUFPLFFBQWEsQ0FBQztJQUN2QixDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBab2RUeXBlLCB6IH0gZnJvbSBcInpvZFwiO1xuaW1wb3J0IHR5cGUgeyBTdGVwRGF0YSwgU3RlcEtpbmQsIFN0ZXBNZXRhZGF0YSB9IGZyb20gXCIuLi9iYXNlL2Jhc2Utc3RlcFwiO1xuaW1wb3J0IHsgQmFzZVN0ZXAgfSBmcm9tIFwiLi4vYmFzZS9iYXNlLXN0ZXBcIjtcblxuZXhwb3J0IGludGVyZmFjZSBTdGVwQ29uZmlnPFMgZXh0ZW5kcyBab2RUeXBlID0gWm9kVHlwZT4ge1xuICBuYW1lPzogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG4gIHNob3J0RGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGxvbmdEZXNjcmlwdGlvbj86IHN0cmluZztcbiAgeWFtbEV4YW1wbGU/OiBzdHJpbmc7XG4gIHNjaGVtYTogUztcbn1cblxuLyoqXG4gKiBEZWNvcmF0b3IgdGhhdCBhZGRzIG1ldGFkYXRhIHRvIGEgc3RlcCBjbGFzcy5cbiAqIFRoaXMgaXMgcmVxdWlyZWQgZm9yIGFsbCBzdGVwcyB0byBiZSByZWdpc3RlcmVkIHdpdGggU3RlcFJlZ2lzdHJ5LlxuICpcbiAqIFRoZSBkZWNvcmF0ZWQgY2xhc3MgbXVzdCBleHRlbmQgU2ltcGxlU3RlcCBvciBQb2xsaW5nU3RlcC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogQFN0ZXAoeyBuYW1lOiBcIk15IFN0ZXBcIiwgdHlwZTogXCJteS1zdGVwXCIsIHNjaGVtYTogbXlTY2hlbWEgfSlcbiAqIGNsYXNzIE15U3RlcCBleHRlbmRzIFNpbXBsZVN0ZXA8TXlQYXJhbXM+IHtcbiAqICAgY29uc3RydWN0b3IocHJpdmF0ZSBhcGlDbGllbnQ6IEFwaUNsaWVudCkge1xuICogICAgIHN1cGVyKCk7XG4gKiAgIH1cbiAqXG4gKiAgIGFzeW5jIHJ1bihwYXJhbXM6IE15UGFyYW1zKTogUHJvbWlzZTxSdW5PdXRwdXQ+IHtcbiAqICAgICBhd2FpdCB0aGlzLmFwaUNsaWVudC5kb1NvbWV0aGluZygpO1xuICogICAgIHJldHVybiBTdGVwT3V0cHV0cy5zdWNjZXNzKCk7XG4gKiAgIH1cbiAqIH1cbiAqXG4gKiAvLyBSZWdpc3RlciB3aXRoIGRlcGVuZGVuY2llcyBpbmplY3RlZFxuICogU3RlcFJlZ2lzdHJ5LnJ1bihbbmV3IE15U3RlcChhcGlDbGllbnQpXSk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFN0ZXA8UyBleHRlbmRzIFpvZFR5cGU+KGNvbmZpZzogU3RlcENvbmZpZzxTPikge1xuICByZXR1cm4gZnVuY3Rpb24gPFQgZXh0ZW5kcyBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBCYXNlU3RlcDx6LmluZmVyPFM+Pj4oXG4gICAgQmFzZTogVFxuICApOiBUIHtcbiAgICBjb25zdCBFbmhhbmNlZCA9IGNsYXNzIGV4dGVuZHMgQmFzZSB7XG4gICAgICBvdmVycmlkZSBnZXRNZXRhZGF0YSgpOiBTdGVwTWV0YWRhdGE8Uz4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG5hbWU6IGNvbmZpZy5uYW1lLFxuICAgICAgICAgIHN0ZXBUeXBlOiBjb25maWcudHlwZSxcbiAgICAgICAgICBzaG9ydERlc2NyaXB0aW9uOiBjb25maWcuc2hvcnREZXNjcmlwdGlvbixcbiAgICAgICAgICBsb25nRGVzY3JpcHRpb246IGNvbmZpZy5sb25nRGVzY3JpcHRpb24sXG4gICAgICAgICAgeWFtbEV4YW1wbGU6IGNvbmZpZy55YW1sRXhhbXBsZSxcbiAgICAgICAgICBwYXJhbXNKc29uU2NoZW1hOiB6LnRvSlNPTlNjaGVtYShjb25maWcuc2NoZW1hKSxcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgb3ZlcnJpZGUgZ2V0RGF0YSgpOiBTdGVwRGF0YTxTPiB7XG4gICAgICAgIC8vIERldGVjdCBzdGVwIGtpbmQgYnkgY2hlY2tpbmcgZm9yIFBvbGxpbmdTdGVwIG1ldGhvZHNcbiAgICAgICAgY29uc3QgaGFzUG9sbGluZ01ldGhvZHMgPVxuICAgICAgICAgIFwidHJpZ2dlclwiIGluIHRoaXMgJiZcbiAgICAgICAgICB0eXBlb2YgKHRoaXMgYXMgYW55KS50cmlnZ2VyID09PSBcImZ1bmN0aW9uXCIgJiZcbiAgICAgICAgICBcInBvbGxcIiBpbiB0aGlzICYmXG4gICAgICAgICAgdHlwZW9mICh0aGlzIGFzIGFueSkucG9sbCA9PT0gXCJmdW5jdGlvblwiO1xuXG4gICAgICAgIGNvbnN0IHN0ZXBLaW5kOiBTdGVwS2luZCA9IGhhc1BvbGxpbmdNZXRob2RzID8gXCJwb2xsaW5nXCIgOiBcInNpbXBsZVwiO1xuXG4gICAgICAgIC8vIENoZWNrIGlmIHByZXBhcmUgaXMgb3ZlcnJpZGRlbiAobm90IHRoZSBkZWZhdWx0IEJhc2VTdGVwLnByZXBhcmUpXG4gICAgICAgIGNvbnN0IHJlcXVpcmVzQXBwcm92YWwgPSB0aGlzLnByZXBhcmUgIT09IEJhc2VTdGVwLnByb3RvdHlwZS5wcmVwYXJlO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgc3RlcFR5cGU6IGNvbmZpZy50eXBlLFxuICAgICAgICAgIHNjaGVtYTogY29uZmlnLnNjaGVtYSxcbiAgICAgICAgICBzdGVwS2luZCxcbiAgICAgICAgICByZXF1aXJlc0FwcHJvdmFsLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH07XG5cbiAgICByZXR1cm4gRW5oYW5jZWQgYXMgVDtcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -18,17 +18,13 @@ export type SuccessOutput = z.infer<typeof SuccessOutputSchema>;
|
|
|
18
18
|
declare const ApprovalRequiredOutputSchema: z.ZodObject<{
|
|
19
19
|
status: z.ZodLiteral<"APPROVAL_REQUIRED">;
|
|
20
20
|
approvalRequest: z.ZodObject<{
|
|
21
|
-
|
|
22
|
-
approvers: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
23
|
-
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
21
|
+
context: z.ZodOptional<z.ZodString>;
|
|
24
22
|
}, z.core.$strip>;
|
|
25
23
|
}, z.core.$strip>;
|
|
26
24
|
export declare const PrepareOutputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
27
25
|
status: z.ZodLiteral<"APPROVAL_REQUIRED">;
|
|
28
26
|
approvalRequest: z.ZodObject<{
|
|
29
|
-
|
|
30
|
-
approvers: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
31
|
-
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
27
|
+
context: z.ZodOptional<z.ZodString>;
|
|
32
28
|
}, z.core.$strip>;
|
|
33
29
|
}, z.core.$strip>, z.ZodObject<{
|
|
34
30
|
status: z.ZodLiteral<"FAILED">;
|
|
@@ -87,9 +83,7 @@ export declare const StepOutputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
87
83
|
}, z.core.$strip>, z.ZodObject<{
|
|
88
84
|
status: z.ZodLiteral<"APPROVAL_REQUIRED">;
|
|
89
85
|
approvalRequest: z.ZodObject<{
|
|
90
|
-
|
|
91
|
-
approvers: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
92
|
-
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
86
|
+
context: z.ZodOptional<z.ZodString>;
|
|
93
87
|
}, z.core.$strip>;
|
|
94
88
|
}, z.core.$strip>, z.ZodObject<{
|
|
95
89
|
status: z.ZodLiteral<"TRIGGERED">;
|
|
@@ -104,9 +98,7 @@ export declare const StepOutputs: {
|
|
|
104
98
|
success(data?: Record<string, unknown>): SuccessOutput;
|
|
105
99
|
failed(error: string, errorCode?: string): FailedOutput;
|
|
106
100
|
approvalRequired(request: {
|
|
107
|
-
|
|
108
|
-
approvers?: string[];
|
|
109
|
-
metadata?: Record<string, unknown>;
|
|
101
|
+
context?: string;
|
|
110
102
|
}): ApprovalRequiredOutput;
|
|
111
103
|
triggered<TPollingState>(pollingState: TPollingState): TriggeredOutput<TPollingState>;
|
|
112
104
|
pollAgain<TPollingState>(pollingState: TPollingState, retryAfterMs?: number): PollAgainOutput<TPollingState>;
|
|
@@ -30,9 +30,7 @@ const SuccessOutputSchema = zod_1.default.object({
|
|
|
30
30
|
const ApprovalRequiredOutputSchema = zod_1.default.object({
|
|
31
31
|
status: zod_1.default.literal("APPROVAL_REQUIRED"),
|
|
32
32
|
approvalRequest: zod_1.default.object({
|
|
33
|
-
|
|
34
|
-
approvers: zod_1.default.array(zod_1.default.string()).optional(),
|
|
35
|
-
metadata: zod_1.default.record(zod_1.default.string(), zod_1.default.any()).optional(),
|
|
33
|
+
context: zod_1.default.string().optional(),
|
|
36
34
|
}),
|
|
37
35
|
});
|
|
38
36
|
exports.PrepareOutputSchema = zod_1.default.discriminatedUnion("status", [
|
|
@@ -105,4 +103,4 @@ exports.StepOutputs = {
|
|
|
105
103
|
return { status: "POLL_AGAIN", pollingState, retryAfterMs };
|
|
106
104
|
},
|
|
107
105
|
};
|
|
108
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1vdXRwdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3V0cHV0L3N0ZXAtb3V0cHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDhDQUFvQjtBQUVwQixnRkFBZ0Y7QUFDaEYsK0RBQStEO0FBQy9ELGdGQUFnRjtBQUVuRSxRQUFBLHFCQUFxQixHQUFHLGFBQUMsQ0FBQyxNQUFNLENBQUM7SUFDNUMsUUFBUSxFQUFFLGFBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO0lBQ3pCLFVBQVUsRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFO0NBQ3ZCLENBQUMsQ0FBQztBQUlILGdGQUFnRjtBQUNoRiwyQkFBMkI7QUFDM0IsZ0ZBQWdGO0FBRWhGLE1BQU0sa0JBQWtCLEdBQUcsYUFBQyxDQUFDLE1BQU0sQ0FBQztJQUNsQyxNQUFNLEVBQUUsYUFBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7SUFDM0IsS0FBSyxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUU7SUFDakIsU0FBUyxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Q0FDakMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxtQkFBbUIsR0FBRyxhQUFDLENBQUMsTUFBTSxDQUFDO0lBQ25DLE1BQU0sRUFBRSxhQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztJQUM1QixJQUFJLEVBQUUsYUFBQyxDQUFDLE1BQU0sQ0FBQyxhQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsYUFBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQy9DLENBQUMsQ0FBQztBQUtILGdGQUFnRjtBQUNoRix5RUFBeUU7QUFDekUsZ0ZBQWdGO0FBRWhGLE1BQU0sNEJBQTRCLEdBQUcsYUFBQyxDQUFDLE1BQU0sQ0FBQztJQUM1QyxNQUFNLEVBQUUsYUFBQyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQztJQUN0QyxlQUFlLEVBQUUs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TyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVELHdDQUF3QztJQUN4QyxTQUFTLENBQ1AsWUFBMkIsRUFDM0IsWUFBcUI7UUFFckIsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxDQUFDO0lBQzlELENBQUM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHogZnJvbSBcInpvZFwiO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQXBwcm92YWwgQ29udGV4dCAocGFzc2VkIHRvIHN0ZXBzIGFmdGVyIGFwcHJvdmFsIGlzIGdyYW50ZWQpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgY29uc3QgQXBwcm92YWxDb250ZXh0U2NoZW1hID0gei5vYmplY3Qoe1xuICBhcHByb3ZlZDogei5saXRlcmFsKHRydWUpLFxuICBhcHByb3ZlcklkOiB6LnN0cmluZygpLFxufSk7XG5cbmV4cG9ydCB0eXBlIEFwcHJvdmFsQ29udGV4dCA9IHouaW5mZXI8dHlwZW9mIEFwcHJvdmFsQ29udGV4dFNjaGVtYT47XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTaGFyZWQgT3V0cHV0IENvbXBvbmVudHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmNvbnN0IEZhaWxlZE91dHB1dFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgc3RhdHVzOiB6LmxpdGVyYWwoXCJGQUlMRURcIiksXG4gIGVycm9yOiB6LnN0cmluZygpLFxuICBlcnJvckNvZGU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbn0pO1xuXG5jb25zdCBTdWNjZXNzT3V0cHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBzdGF0dXM6IHoubGl0ZXJhbChcIlNVQ0NFU1NcIiksXG4gIGRhdGE6IHoucmVjb3JkKHouc3RyaW5nKCksIHouYW55KCkpLm9wdGlvbmFsKCksXG59KTtcblxuZXhwb3J0IHR5cGUgRmFpbGVkT3V0cHV0ID0gei5pbmZlcjx0eXBlb2YgRmFpbGVkT3V0cHV0U2NoZW1hPjtcbmV4cG9ydCB0eXBlIFN1Y2Nlc3NPdXRwdXQgPSB6LmluZmVyPHR5cGVvZiBTdWNjZXNzT3V0cHV0U2NoZW1hPjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByZXBhcmVPdXRwdXQgKGZvciBhcHByb3ZhbCBmbG93IC0gdXNlZCBieSBTaW1wbGVTdGVwIGFuZCBQb2xsaW5nU3RlcClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmNvbnN0IEFwcHJvdmFsUmVxdWlyZWRPdXRwdXRTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHN0YXR1czogei5saXRlcmFsKFwiQVBQUk9WQUxfUkVRVUlSRURcIiksXG4gIGFwcHJvdmFsUmVxdWVzdDogei5vYmplY3Qoe1xuICAgIG1lc3NhZ2U6IHouc3RyaW5nKCksXG4gICAgYXBwcm92ZXJzOiB6LmFycmF5KHouc3RyaW5nKCkpLm9wdGlvbmFsKCksXG4gICAgbWV0YWRhdGE6IHoucmVjb3JkKHouc3RyaW5nKCksIHouYW55KCkpLm9wdGlvbmFsKCksXG4gIH0pLFxufSk7XG5cbmV4cG9ydCBjb25zdCBQcmVwYXJlT3V0cHV0U2NoZW1hID0gei5kaXNjcmltaW5hdGVkVW5pb24oXCJzdGF0dXNcIiwgW1xuICBBcHByb3ZhbFJlcXVpcmVkT3V0cHV0U2NoZW1hLFxuICBGYWlsZWRPdXRwdXRTY2hlbWEsXG5dKTtcblxuZXhwb3J0IHR5cGUgQXBwcm92YWxSZXF1aXJlZE91dHB1dCA9IHouaW5mZXI8dHlwZW9mIEFwcHJvdmFsUmVxdWlyZWRPdXRwdXRTY2hlbWE+O1xuZXhwb3J0IHR5cGUgUHJlcGFyZU91dHB1dCA9IHouaW5mZXI8dHlwZW9mIFByZXBhcmVPdXRwdXRTY2hlbWE+O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUnVuT3V0cHV0IChTaW1wbGVTdGVwLnJ1bilcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBjb25zdCBSdW5PdXRwdXRTY2hlbWEgPSB6LmRpc2NyaW1pbmF0ZWRVbmlvbihcInN0YXR1c1wiLCBbXG4gIFN1Y2Nlc3NPdXRwdXRTY2hlbWEsXG4gIEZhaWxlZE91dHB1dFNjaGVtYSxcbl0pO1xuXG5leHBvcnQgdHlwZSBSdW5PdXRwdXQgPSB6LmluZmVyPHR5cGVvZiBSdW5PdXRwdXRTY2hlbWE+O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVHJpZ2dlck91dHB1dCAoUG9sbGluZ1N0ZXAudHJpZ2dlcilcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmNvbnN0IFRyaWdnZXJlZE91dHB1dFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgc3RhdHVzOiB6LmxpdGVyYWwoXCJUUklHR0VSRURcIiksXG4gIHBvbGxpbmdTdGF0ZTogei5yZWNvcmQoei5zdHJpbmcoKSwgei5hbnkoKSksXG59KTtcblxuZXhwb3J0IGNvbnN0IFRyaWdnZXJPdXRwdXRTY2hlbWEgPSB6LmRpc2NyaW1pbmF0ZWRVbmlvbihcInN0YXR1c1wiLCBbXG4gIFRyaWdnZXJlZE91dHB1dFNjaGVtYSxcbiAgRmFpbGVkT3V0cHV0U2NoZW1hLFxuXSk7XG5cbmV4cG9ydCB0eXBlIFRyaWdnZXJlZE91dHB1dDxUUG9sbGluZ1N0YXRlID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4+ID0ge1xuICBzdGF0dXM6IFwiVFJJR0dFUkVEXCI7XG4gIHBvbGxpbmdTdGF0ZTogVFBvbGxpbmdTdGF0ZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRyaWdnZXJPdXRwdXQ8VFBvbGxpbmdTdGF0ZSA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+PiA9XG4gIHwgVHJpZ2dlcmVkT3V0cHV0PFRQb2xsaW5nU3RhdGU+XG4gIHwgRmFpbGVkT3V0cHV0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUG9sbE91dHB1dCAoUG9sbGluZ1N0ZXAucG9sbClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmNvbnN0IFBvbGxBZ2Fpbk91dHB1dFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgc3RhdHVzOiB6LmxpdGVyYWwoXCJQT0xMX0FHQUlOXCIpLFxuICBwb2xsaW5nU3RhdGU6IHoucmVjb3JkKHouc3RyaW5nKCksIHouYW55KCkpLFxuICByZXRyeUFmdGVyTXM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUG9sbE91dHB1dFNjaGVtYSA9IHouZGlzY3JpbWluYXRlZFVuaW9uKFwic3RhdHVzXCIsIFtcbiAgUG9sbEFnYWluT3V0cHV0U2NoZW1hLFxuICBTdWNjZXNzT3V0cHV0U2NoZW1hLFxuICBGYWlsZWRPdXRwdXRTY2hlbWEsXG5dKTtcblxuZXhwb3J0IHR5cGUgUG9sbEFnYWluT3V0cHV0PFRQb2xsaW5nU3RhdGUgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4gPSB7XG4gIHN0YXR1czogXCJQT0xMX0FHQUlOXCI7XG4gIHBvbGxpbmdTdGF0ZTogVFBvbGxpbmdTdGF0ZTtcbiAgcmV0cnlBZnRlck1zPzogbnVtYmVyO1xufTtcblxuZXhwb3J0IHR5cGUgUG9sbE91dHB1dDxUUG9sbGluZ1N0YXRlID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4+ID1cbiAgfCBQb2xsQWdhaW5PdXRwdXQ8VFBvbGxpbmdTdGF0ZT5cbiAgfCBTdWNjZXNzT3V0cHV0XG4gIHwgRmFpbGVkT3V0cHV0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ29tYmluZWQgU3RlcE91dHB1dCAoZm9yIHJlZ2lzdHJ5IHRvIHdyaXRlIHRvIGZpbGUpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgY29uc3QgU3RlcE91dHB1dFNjaGVtYSA9IHouZGlzY3JpbWluYXRlZFVuaW9uKFwic3RhdHVzXCIsIFtcbiAgU3VjY2Vzc091dHB1dFNjaGVtYSxcbiAgRmFpbGVkT3V0cHV0U2NoZW1hLFxuICBBcHByb3ZhbFJlcXVpcmVkT3V0cHV0U2NoZW1hLFxuICBUcmlnZ2VyZWRPdXRwdXRTY2hlbWEsXG4gIFBvbGxBZ2Fpbk91dHB1dFNjaGVtYSxcbl0pO1xuXG5leHBvcnQgdHlwZSBTdGVwT3V0cHV0ID0gei5pbmZlcjx0eXBlb2YgU3RlcE91dHB1dFNjaGVtYT47XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBIZWxwZXIgRnVuY3Rpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgY29uc3QgU3RlcE91dHB1dHMgPSB7XG4gIC8vIFN1Y2Nlc3MgKHVzZWQgYnkgU2ltcGxlU3RlcC5ydW4gYW5kIFBvbGxpbmdTdGVwLnBvbGwpXG4gIHN1Y2Nlc3MoZGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogU3VjY2Vzc091dHB1dCB7XG4gICAgcmV0dXJuIHsgc3RhdHVzOiBcIlNVQ0NFU1NcIiwgZGF0YSB9O1xuICB9LFxuXG4gIC8vIEZhaWxlZCAodXNlZCBieSBhbGwgcGhhc2VzKVxuICBmYWlsZWQoZXJyb3I6IHN0cmluZywgZXJyb3JDb2RlPzogc3RyaW5nKTogRmFpbGVkT3V0cHV0IHtcbiAgICByZXR1cm4geyBzdGF0dXM6IFwiRkFJTEVEXCIsIGVycm9yLCBlcnJvckNvZGUgfTtcbiAgfSxcblxuICAvLyBBcHByb3ZhbCByZXF1aXJlZCAodXNlZCBieSBwcmVwYXJlIHBoYXNlKVxuICBhcHByb3ZhbFJlcXVpcmVkKHJlcXVlc3Q6IHtcbiAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgYXBwcm92ZXJzPzogc3RyaW5nW107XG4gICAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgfSk6IEFwcHJvdmFsUmVxdWlyZWRPdXRwdXQge1xuICAgIHJldHVybiB7IHN0YXR1czogXCJBUFBST1ZBTF9SRVFVSVJFRFwiLCBhcHByb3ZhbFJlcXVlc3Q6IHJlcXVlc3QgfTtcbiAgfSxcblxuICAvLyBUcmlnZ2VyZWQgKHVzZWQgYnkgUG9sbGluZ1N0ZXAudHJpZ2dlcilcbiAgdHJpZ2dlcmVkPFRQb2xsaW5nU3RhdGU+KFxuICAgIHBvbGxpbmdTdGF0ZTogVFBvbGxpbmdTdGF0ZVxuICApOiBUcmlnZ2VyZWRPdXRwdXQ8VFBvbGxpbmdTdGF0ZT4ge1xuICAgIHJldHVybiB7IHN0YXR1czogXCJUUklHR0VSRURcIiwgcG9sbGluZ1N0YXRlIH07XG4gIH0sXG5cbiAgLy8gUG9sbCBhZ2FpbiAodXNlZCBieSBQb2xsaW5nU3RlcC5wb2xsKVxuICBwb2xsQWdhaW48VFBvbGxpbmdTdGF0ZT4oXG4gICAgcG9sbGluZ1N0YXRlOiBUUG9sbGluZ1N0YXRlLFxuICAgIHJldHJ5QWZ0ZXJNcz86IG51bWJlclxuICApOiBQb2xsQWdhaW5PdXRwdXQ8VFBvbGxpbmdTdGF0ZT4ge1xuICAgIHJldHVybiB7IHN0YXR1czogXCJQT0xMX0FHQUlOXCIsIHBvbGxpbmdTdGF0ZSwgcmV0cnlBZnRlck1zIH07XG4gIH0sXG59O1xuIl19
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1vdXRwdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3V0cHV0L3N0ZXAtb3V0cHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDhDQUFvQjtBQUVwQixnRkFBZ0Y7QUFDaEYsK0RBQStEO0FBQy9ELGdGQUFnRjtBQUVuRSxRQUFBLHFCQUFxQixHQUFHLGFBQUMsQ0FBQyxNQUFNLENBQUM7SUFDNUMsUUFBUSxFQUFFLGFBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO0lBQ3pCLFVBQVUsRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFO0NBQ3ZCLENBQUMsQ0FBQztBQUlILGdGQUFnRjtBQUNoRiwyQkFBMkI7QUFDM0IsZ0ZBQWdGO0FBRWhGLE1BQU0sa0JBQWtCLEdBQUcsYUFBQyxDQUFDLE1BQU0sQ0FBQztJQUNsQyxNQUFNLEVBQUUsYUFBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7SUFDM0IsS0FBSyxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUU7SUFDakIsU0FBUyxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Q0FDakMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxtQkFBbUIsR0FBRyxhQUFDLENBQUMsTUFBTSxDQUFDO0lBQ25DLE1BQU0sRUFBRSxhQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztJQUM1QixJQUFJLEVBQUUsYUFBQyxDQUFDLE1BQU0sQ0FBQyxhQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsYUFBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQy9DLENBQUMsQ0FBQztBQUtILGdGQUFnRjtBQUNoRix5RUFBeUU7QUFDekUsZ0ZBQWdGO0FBRWhGLE1BQU0sNEJBQTRCLEdBQUcsYUFBQyxDQUFDLE1BQU0sQ0FBQztJQUM1QyxNQUFNLEVBQUUsYUFBQyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQztJQUN0QyxlQUFlLEVBQUUs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QUM5RCxDQUFDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB6IGZyb20gXCJ6b2RcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEFwcHJvdmFsIENvbnRleHQgKHBhc3NlZCB0byBzdGVwcyBhZnRlciBhcHByb3ZhbCBpcyBncmFudGVkKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IGNvbnN0IEFwcHJvdmFsQ29udGV4dFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgYXBwcm92ZWQ6IHoubGl0ZXJhbCh0cnVlKSxcbiAgYXBwcm92ZXJJZDogei5zdHJpbmcoKSxcbn0pO1xuXG5leHBvcnQgdHlwZSBBcHByb3ZhbENvbnRleHQgPSB6LmluZmVyPHR5cGVvZiBBcHByb3ZhbENvbnRleHRTY2hlbWE+O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU2hhcmVkIE91dHB1dCBDb21wb25lbnRzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBGYWlsZWRPdXRwdXRTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHN0YXR1czogei5saXRlcmFsKFwiRkFJTEVEXCIpLFxuICBlcnJvcjogei5zdHJpbmcoKSxcbiAgZXJyb3JDb2RlOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG59KTtcblxuY29uc3QgU3VjY2Vzc091dHB1dFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgc3RhdHVzOiB6LmxpdGVyYWwoXCJTVUNDRVNTXCIpLFxuICBkYXRhOiB6LnJlY29yZCh6LnN0cmluZygpLCB6LmFueSgpKS5vcHRpb25hbCgpLFxufSk7XG5cbmV4cG9ydCB0eXBlIEZhaWxlZE91dHB1dCA9IHouaW5mZXI8dHlwZW9mIEZhaWxlZE91dHB1dFNjaGVtYT47XG5leHBvcnQgdHlwZSBTdWNjZXNzT3V0cHV0ID0gei5pbmZlcjx0eXBlb2YgU3VjY2Vzc091dHB1dFNjaGVtYT47XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmVwYXJlT3V0cHV0IChmb3IgYXBwcm92YWwgZmxvdyAtIHVzZWQgYnkgU2ltcGxlU3RlcCBhbmQgUG9sbGluZ1N0ZXApXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBBcHByb3ZhbFJlcXVpcmVkT3V0cHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBzdGF0dXM6IHoubGl0ZXJhbChcIkFQUFJPVkFMX1JFUVVJUkVEXCIpLFxuICBhcHByb3ZhbFJlcXVlc3Q6IHoub2JqZWN0KHtcbiAgICBjb250ZXh0OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIH0pLFxufSk7XG5cbmV4cG9ydCBjb25zdCBQcmVwYXJlT3V0cHV0U2NoZW1hID0gei5kaXNjcmltaW5hdGVkVW5pb24oXCJzdGF0dXNcIiwgW1xuICBBcHByb3ZhbFJlcXVpcmVkT3V0cHV0U2NoZW1hLFxuICBGYWlsZWRPdXRwdXRTY2hlbWEsXG5dKTtcblxuZXhwb3J0IHR5cGUgQXBwcm92YWxSZXF1aXJlZE91dHB1dCA9IHouaW5mZXI8XG4gIHR5cGVvZiBBcHByb3ZhbFJlcXVpcmVkT3V0cHV0U2NoZW1hXG4+O1xuZXhwb3J0IHR5cGUgUHJlcGFyZU91dHB1dCA9IHouaW5mZXI8dHlwZW9mIFByZXBhcmVPdXRwdXRTY2hlbWE+O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUnVuT3V0cHV0IChTaW1wbGVTdGVwLnJ1bilcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBjb25zdCBSdW5PdXRwdXRTY2hlbWEgPSB6LmRpc2NyaW1pbmF0ZWRVbmlvbihcInN0YXR1c1wiLCBbXG4gIFN1Y2Nlc3NPdXRwdXRTY2hlbWEsXG4gIEZhaWxlZE91dHB1dFNjaGVtYSxcbl0pO1xuXG5leHBvcnQgdHlwZSBSdW5PdXRwdXQgPSB6LmluZmVyPHR5cGVvZiBSdW5PdXRwdXRTY2hlbWE+O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVHJpZ2dlck91dHB1dCAoUG9sbGluZ1N0ZXAudHJpZ2dlcilcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmNvbnN0IFRyaWdnZXJlZE91dHB1dFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgc3RhdHVzOiB6LmxpdGVyYWwoXCJUUklHR0VSRURcIiksXG4gIHBvbGxpbmdTdGF0ZTogei5yZWNvcmQoei5zdHJpbmcoKSwgei5hbnkoKSksXG59KTtcblxuZXhwb3J0IGNvbnN0IFRyaWdnZXJPdXRwdXRTY2hlbWEgPSB6LmRpc2NyaW1pbmF0ZWRVbmlvbihcInN0YXR1c1wiLCBbXG4gIFRyaWdnZXJlZE91dHB1dFNjaGVtYSxcbiAgRmFpbGVkT3V0cHV0U2NoZW1hLFxuXSk7XG5cbmV4cG9ydCB0eXBlIFRyaWdnZXJlZE91dHB1dDxUUG9sbGluZ1N0YXRlID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4+ID0ge1xuICBzdGF0dXM6IFwiVFJJR0dFUkVEXCI7XG4gIHBvbGxpbmdTdGF0ZTogVFBvbGxpbmdTdGF0ZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRyaWdnZXJPdXRwdXQ8VFBvbGxpbmdTdGF0ZSA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+PiA9XG4gIHwgVHJpZ2dlcmVkT3V0cHV0PFRQb2xsaW5nU3RhdGU+XG4gIHwgRmFpbGVkT3V0cHV0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUG9sbE91dHB1dCAoUG9sbGluZ1N0ZXAucG9sbClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmNvbnN0IFBvbGxBZ2Fpbk91dHB1dFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgc3RhdHVzOiB6LmxpdGVyYWwoXCJQT0xMX0FHQUlOXCIpLFxuICBwb2xsaW5nU3RhdGU6IHoucmVjb3JkKHouc3RyaW5nKCksIHouYW55KCkpLFxuICByZXRyeUFmdGVyTXM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUG9sbE91dHB1dFNjaGVtYSA9IHouZGlzY3JpbWluYXRlZFVuaW9uKFwic3RhdHVzXCIsIFtcbiAgUG9sbEFnYWluT3V0cHV0U2NoZW1hLFxuICBTdWNjZXNzT3V0cHV0U2NoZW1hLFxuICBGYWlsZWRPdXRwdXRTY2hlbWEsXG5dKTtcblxuZXhwb3J0IHR5cGUgUG9sbEFnYWluT3V0cHV0PFRQb2xsaW5nU3RhdGUgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4gPSB7XG4gIHN0YXR1czogXCJQT0xMX0FHQUlOXCI7XG4gIHBvbGxpbmdTdGF0ZTogVFBvbGxpbmdTdGF0ZTtcbiAgcmV0cnlBZnRlck1zPzogbnVtYmVyO1xufTtcblxuZXhwb3J0IHR5cGUgUG9sbE91dHB1dDxUUG9sbGluZ1N0YXRlID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4+ID1cbiAgfCBQb2xsQWdhaW5PdXRwdXQ8VFBvbGxpbmdTdGF0ZT5cbiAgfCBTdWNjZXNzT3V0cHV0XG4gIHwgRmFpbGVkT3V0cHV0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ29tYmluZWQgU3RlcE91dHB1dCAoZm9yIHJlZ2lzdHJ5IHRvIHdyaXRlIHRvIGZpbGUpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgY29uc3QgU3RlcE91dHB1dFNjaGVtYSA9IHouZGlzY3JpbWluYXRlZFVuaW9uKFwic3RhdHVzXCIsIFtcbiAgU3VjY2Vzc091dHB1dFNjaGVtYSxcbiAgRmFpbGVkT3V0cHV0U2NoZW1hLFxuICBBcHByb3ZhbFJlcXVpcmVkT3V0cHV0U2NoZW1hLFxuICBUcmlnZ2VyZWRPdXRwdXRTY2hlbWEsXG4gIFBvbGxBZ2Fpbk91dHB1dFNjaGVtYSxcbl0pO1xuXG5leHBvcnQgdHlwZSBTdGVwT3V0cHV0ID0gei5pbmZlcjx0eXBlb2YgU3RlcE91dHB1dFNjaGVtYT47XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBIZWxwZXIgRnVuY3Rpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgY29uc3QgU3RlcE91dHB1dHMgPSB7XG4gIC8vIFN1Y2Nlc3MgKHVzZWQgYnkgU2ltcGxlU3RlcC5ydW4gYW5kIFBvbGxpbmdTdGVwLnBvbGwpXG4gIHN1Y2Nlc3MoZGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogU3VjY2Vzc091dHB1dCB7XG4gICAgcmV0dXJuIHsgc3RhdHVzOiBcIlNVQ0NFU1NcIiwgZGF0YSB9O1xuICB9LFxuXG4gIC8vIEZhaWxlZCAodXNlZCBieSBhbGwgcGhhc2VzKVxuICBmYWlsZWQoZXJyb3I6IHN0cmluZywgZXJyb3JDb2RlPzogc3RyaW5nKTogRmFpbGVkT3V0cHV0IHtcbiAgICByZXR1cm4geyBzdGF0dXM6IFwiRkFJTEVEXCIsIGVycm9yLCBlcnJvckNvZGUgfTtcbiAgfSxcblxuICAvLyBBcHByb3ZhbCByZXF1aXJlZCAodXNlZCBieSBwcmVwYXJlIHBoYXNlKVxuICBhcHByb3ZhbFJlcXVpcmVkKHJlcXVlc3Q6IHsgY29udGV4dD86IHN0cmluZyB9KTogQXBwcm92YWxSZXF1aXJlZE91dHB1dCB7XG4gICAgcmV0dXJuIHsgc3RhdHVzOiBcIkFQUFJPVkFMX1JFUVVJUkVEXCIsIGFwcHJvdmFsUmVxdWVzdDogcmVxdWVzdCB9O1xuICB9LFxuXG4gIC8vIFRyaWdnZXJlZCAodXNlZCBieSBQb2xsaW5nU3RlcC50cmlnZ2VyKVxuICB0cmlnZ2VyZWQ8VFBvbGxpbmdTdGF0ZT4oXG4gICAgcG9sbGluZ1N0YXRlOiBUUG9sbGluZ1N0YXRlXG4gICk6IFRyaWdnZXJlZE91dHB1dDxUUG9sbGluZ1N0YXRlPiB7XG4gICAgcmV0dXJuIHsgc3RhdHVzOiBcIlRSSUdHRVJFRFwiLCBwb2xsaW5nU3RhdGUgfTtcbiAgfSxcblxuICAvLyBQb2xsIGFnYWluICh1c2VkIGJ5IFBvbGxpbmdTdGVwLnBvbGwpXG4gIHBvbGxBZ2FpbjxUUG9sbGluZ1N0YXRlPihcbiAgICBwb2xsaW5nU3RhdGU6IFRQb2xsaW5nU3RhdGUsXG4gICAgcmV0cnlBZnRlck1zPzogbnVtYmVyXG4gICk6IFBvbGxBZ2Fpbk91dHB1dDxUUG9sbGluZ1N0YXRlPiB7XG4gICAgcmV0dXJuIHsgc3RhdHVzOiBcIlBPTExfQUdBSU5cIiwgcG9sbGluZ1N0YXRlLCByZXRyeUFmdGVyTXMgfTtcbiAgfSxcbn07XG4iXX0=
|
|
@@ -144,23 +144,23 @@ class StepRegistry {
|
|
|
144
144
|
return;
|
|
145
145
|
}
|
|
146
146
|
try {
|
|
147
|
-
const
|
|
147
|
+
const data = instance.getData();
|
|
148
148
|
// Inject logger
|
|
149
149
|
const logger = new step_logger_1.StepLogger({
|
|
150
150
|
logDir: this.logDir,
|
|
151
151
|
executionId: this.executionId,
|
|
152
|
-
stepType:
|
|
152
|
+
stepType: data.stepType,
|
|
153
153
|
});
|
|
154
154
|
instance._setLogger(logger);
|
|
155
155
|
// Validate params against the step's schema
|
|
156
|
-
const parseResult =
|
|
156
|
+
const parseResult = data.schema.safeParse(params);
|
|
157
157
|
if (!parseResult.success) {
|
|
158
158
|
this.writeOutput(step_output_1.StepOutputs.failed(`Invalid params: ${parseResult.error.message}`, "INVALID_PARAMS"));
|
|
159
159
|
return;
|
|
160
160
|
}
|
|
161
161
|
const validatedParams = parseResult.data;
|
|
162
162
|
// Route to appropriate phase based on step kind and input context
|
|
163
|
-
const output = await this.routeExecution(instance,
|
|
163
|
+
const output = await this.routeExecution(instance, data, validatedParams, approvalContext, pollingState);
|
|
164
164
|
this.writeOutput(output);
|
|
165
165
|
}
|
|
166
166
|
catch (error) {
|
|
@@ -168,15 +168,15 @@ class StepRegistry {
|
|
|
168
168
|
this.writeOutput(step_output_1.StepOutputs.failed(errorMessage, "EXECUTION_ERROR"));
|
|
169
169
|
}
|
|
170
170
|
}
|
|
171
|
-
async routeExecution(instance,
|
|
172
|
-
const requiresApproval =
|
|
173
|
-
if (
|
|
171
|
+
async routeExecution(instance, data, params, approvalContext, pollingState) {
|
|
172
|
+
const requiresApproval = data.requiresApproval;
|
|
173
|
+
if (data.stepKind === "simple") {
|
|
174
174
|
return this.routeSimpleStep(instance, params, requiresApproval, approvalContext);
|
|
175
175
|
}
|
|
176
|
-
if (
|
|
176
|
+
if (data.stepKind === "polling") {
|
|
177
177
|
return this.routePollingStep(instance, params, requiresApproval, approvalContext, pollingState);
|
|
178
178
|
}
|
|
179
|
-
return step_output_1.StepOutputs.failed(`Unknown step kind: ${
|
|
179
|
+
return step_output_1.StepOutputs.failed(`Unknown step kind: ${data.stepKind}`, "UNKNOWN_STEP_KIND");
|
|
180
180
|
}
|
|
181
181
|
/**
|
|
182
182
|
* Route SimpleStep execution based on approval state.
|
|
@@ -235,4 +235,4 @@ class StepRegistry {
|
|
|
235
235
|
}
|
|
236
236
|
}
|
|
237
237
|
exports.StepRegistry = StepRegistry;
|
|
238
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1yZWdpc3RyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZWdpc3RyeS9zdGVwLXJlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF5QjtBQUN6QiwyQ0FBNkI7QUFDN0Isd0RBQWdDO0FBQ2hDLDhDQUFvQjtBQUlwQix3REFBb0Q7QUFFcEQsdURBQTJFO0FBRTNFLGdGQUFnRjtBQUNoRixnQkFBZ0I7QUFDaEIsZ0ZBQWdGO0FBRWhGLE1BQU0sNEJBQTRCLEdBQUcsYUFBQyxDQUFDLE1BQU0sQ0FBQztJQUM1QyxHQUFHLEVBQUUsYUFBQyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQztDQUN0QyxDQUFDLENBQUM7QUFFSCxNQUFNLHlCQUF5QixHQUFHLGFBQUMsQ0FBQyxNQUFNLENBQUM7SUFDekMsR0FBRyxFQUFFLGFBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO0lBQ3pCLElBQUksRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFO0lBQ2hCLE1BQU0sRUFBRSxhQUFDLENBQUMsTUFBTSxDQUFDLGFBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxhQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDckMsNERBQTREO0lBQzVELGVBQWUsRUFBRSxtQ0FBcUIsQ0FBQyxRQUFRLEVBQUU7SUFDakQsWUFBWSxFQUFFLGFBQUMsQ0FBQyxNQUFNLENBQUMsYUFBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLGFBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtDQUN2RCxDQUFDLENBQUM7QUFFVSxRQUFBLHVCQUF1QixHQUFHLGFBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUU7SUFDakUseUJBQXlCO0lBQ3pCLDRCQUE0QjtDQUM3QixDQUFDLENBQUM7QUFJSCxnRkFBZ0Y7QUFDaEYsZ0JBQWdCO0FBQ2hCLGdGQUFn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SUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3JCLHNEQUFzRDtZQUN0RCxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUVELGdEQUFnRDtRQUNoRCxPQUFPLFFBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFTyxXQUFXLENBQUMsTUFBa0I7UUFDcEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUM5QixFQUFFLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFFRCxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckUsQ0FBQztDQUNGO0FBalFELG9DQWlRQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gXCJmc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IG1pbmltaXN0IGZyb20gXCJtaW5pbWlzdFwiO1xuaW1wb3J0IHogZnJvbSBcInpvZFwiO1xuaW1wb3J0IHR5cGUgeyBCYXNlU3RlcCwgU3RlcE1ldGFkYXRhIH0gZnJvbSBcIi4uL2Jhc2UvYmFzZS1zdGVwXCI7XG5pbXBvcnQgdHlwZSB7IFNpbXBsZVN0ZXAgfSBmcm9tIFwiLi4vYmFzZS9zaW1wbGUtc3RlcFwiO1xuaW1wb3J0IHR5cGUgeyBQb2xsaW5nU3RlcCB9IGZyb20gXCIuLi9iYXNlL3BvbGxpbmctc3RlcFwiO1xuaW1wb3J0IHsgU3RlcExvZ2dlciB9IGZyb20gXCIuLi9sb2dnaW5nL3N0ZXAtbG9nZ2VyXCI7XG5pbXBvcnQgdHlwZSB7IEFwcHJvdmFsQ29udGV4dCwgU3RlcE91dHB1dCB9IGZyb20gXCIuLi9vdXRwdXQvc3RlcC1vdXRwdXRcIjtcbmltcG9ydCB7IEFwcHJvdmFsQ29udGV4dFNjaGVtYSwgU3RlcE91dHB1dHMgfSBmcm9tIFwiLi4vb3V0cHV0L3N0ZXAtb3V0cHV0XCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBJbnB1dCBTY2hlbWFzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBTdGVwUmVnaXN0cnlTeW50aGVzaXplU2NoZW1hID0gei5vYmplY3Qoe1xuICBqb2I6IHoubGl0ZXJhbChcIlNZTlRIRVNJWkUtTUVUQURBVEFcIiksXG59KTtcblxuY29uc3QgU3RlcFJlZ2lzdHJ5RXhlY3V0ZVNjaGVtYSA9IHoub2JqZWN0KHtcbiAgam9iOiB6LmxpdGVyYWwoXCJFWEVDVVRFXCIpLFxuICB0eXBlOiB6LnN0cmluZygpLFxuICBwYXJhbXM6IHoucmVjb3JkKHouc3RyaW5nKCksIHouYW55KCkpLFxuICAvLyBPcHRpb25hbCBjb250ZXh0IC0gcHJlc2VuY2UgZGV0ZXJtaW5lcyB3aGljaCBwaGFzZSB0byBydW5cbiAgYXBwcm92YWxDb250ZXh0OiBBcHByb3ZhbENvbnRleHRTY2hlbWEub3B0aW9uYWwoKSxcbiAgcG9sbGluZ1N0YXRlOiB6LnJlY29yZCh6LnN0cmluZygpLCB6LmFueSgpKS5vcHRpb25hbCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBTdGVwUmVnaXN0cnlJbnB1dFNjaGVtYSA9IHouZGlzY3JpbWluYXRlZFVuaW9uKFwiam9iXCIsIFtcbiAgU3RlcFJlZ2lzdHJ5RXhlY3V0ZVNjaGVtYSxcbiAgU3RlcFJlZ2lzdHJ5U3ludGhlc2l6ZVNjaGVtYSxcbl0pO1xuXG5leHBvcnQgdHlwZSBTdGVwUmVnaXN0cnlJbnB1dCA9IHouaW5mZXI8dHlwZW9mIFN0ZXBSZWdpc3RyeUlucHV0U2NoZW1hPjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvbmZpZ3VyYXRpb25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmNvbnN0IERFRkFVTFRfT1VUUFVUX1BBVEggPSBcIi90bXAvc3RlcC1vdXRwdXQuanNvblwiO1xuY29uc3QgREVGQVVMVF9MT0dfRElSID0gXCIvdG1wL3N0ZXAtbG9nc1wiO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU3RlcFJlZ2lzdHJ5XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgY2xhc3MgU3RlcFJlZ2lzdHJ5IHtcbiAgcHJpdmF0ZSBzdGVwczogTWFwPHN0cmluZywgQmFzZVN0ZXA8dW5rbm93bj4+O1xuICBwcml2YXRlIG91dHB1dFBhdGg6IHN0cmluZztcbiAgcHJpdmF0ZSBsb2dEaXI6IHN0cmluZztcbiAgcHJpdmF0ZSBleGVjdXRpb25JZDogc3RyaW5nO1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoXG4gICAgc3RlcHM6IEJhc2VTdGVwPHVua25vd24+W10sXG4gICAgb3V0cHV0UGF0aDogc3RyaW5nLFxuICAgIGxvZ0Rpcjogc3RyaW5nLFxuICAgIGV4ZWN1dGlvbklkOiBzdHJpbmdcbiAgKSB7XG4gICAgdGhpcy5zdGVwcyA9IG5ldyBNYXAoKTtcbiAgICB0aGlzLm91dHB1dFBhdGggPSBvdXRwdXRQYXRoO1xuICAgIHRoaXMubG9nRGlyID0gbG9nRGlyO1xuICAgIHRoaXMuZXhlY3V0aW9uSWQgPSBleGVjdXRpb25JZDtcblxuICAgIGZvciAoY29uc3QgaW5zdGFuY2Ugb2Ygc3RlcHMpIHtcbiAgICAgIGNvbnN0IG1ldGFkYXRhID0gaW5zdGFuY2UuZ2V0TWV0YWRhdGEoKTtcbiAgICAgIHRoaXMuc3RlcHMuc2V0KG1ldGFkYXRhLnN0ZXBUeXBlLCBpbnN0YW5jZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1haW4gZW50cnlwb2ludCBmb3IgcnVubmluZyBzdGVwcy5cbiAgICogUGFyc2VzIENMSSBhcmdzIGFuZCBlaXRoZXIgc3ludGhlc2l6ZXMgbWV0YWRhdGEgb3IgZXhlY3V0ZXMgYSBzdGVwLlxuICAgKlxuICAgKiBVc2FnZSBpbiB1c2VyJ3MgZW50cnlwb2ludCBmaWxlOlxuICAgKiBgYGBcbiAgICogU3RlcFJlZ2lzdHJ5LnJ1bihbXG4gICAqICAgbmV3IE15U3RlcDEoZGVwZW5kZW5jeTEsIGRlcGVuZGVuY3kyKSxcbiAgICogICBuZXcgTXlTdGVwMihjb25maWcpXG4gICAqIF0pO1xuICAgKiBgYGBcbiAgICpcbiAgICogQ0xJIGFyZ3VtZW50czpcbiAgICogLSAtLWlucHV0OiBKU09OIGJsb2Igd2l0aCBqb2IgdHlwZSBhbmQgcGFyYW1ldGVyc1xuICAgKiAtIC0tb3V0cHV0OiBQYXRoIHRvIHdyaXRlIG91dHB1dCBKU09OIChkZWZhdWx0OiAvdG1wL3N0ZXAtb3V0cHV0Lmpzb24pXG4gICAqIC0gLS1sb2ctZGlyOiBEaXJlY3RvcnkgZm9yIGxvZyBmaWxlcyAoZGVmYXVsdDogL3RtcC9zdGVwLWxvZ3MpXG4gICAqIC0gLS1leGVjdXRpb24taWQ6IFVuaXF1ZSBJRCBmb3IgdGhpcyBleGVjdXRpb24gKHJlcXVpcmVkIGZvciBsb2dnaW5nKVxuICAgKi9cbiAgc3RhdGljIGFzeW5jIHJ1bihzdGVwczogQmFzZVN0ZXA8dW5rbm93bj5bXSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGFyZ3MgPSBtaW5pbWlzdChwcm9jZXNzLmFyZ3Yuc2xpY2UoMikpO1xuICAgIGNvbnN0IG91dHB1dFBhdGggPSBhcmdzW1wib3V0cHV0XCJdIHx8IERFRkFVTFRfT1VUUFVUX1BBVEg7XG4gICAgY29uc3QgbG9nRGlyID0gYXJnc1tcImxvZy1kaXJcIl0gfHwgREVGQVVMVF9MT0dfRElSO1xuICAgIGNvbnN0IGV4ZWN1dGlvbklkID0gYXJnc1tcImV4ZWN1dGlvbi1pZFwiXSB8fCBgZXhlYy0ke0RhdGUubm93KCl9YDtcblxuICAgIGNvbnN0IHJlZ2lzdHJ5ID0gbmV3IFN0ZXBSZWdpc3RyeShzdGVwcywgb3V0cHV0UGF0aCwgbG9nRGlyLCBleGVjdXRpb25JZCk7XG4gICAgYXdhaXQgcmVnaXN0cnkuZXhlY3V0ZShhcmdzKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZXhlY3V0ZShhcmdzOiBtaW5pbWlzdC5QYXJzZWRBcmdzKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGlucHV0ID0gU3RlcFJlZ2lzdHJ5SW5wdXRTY2hlbWEucGFyc2UoSlNPTi5wYXJzZShhcmdzW1wiaW5wdXRcIl0pKTtcblxuICAgICAgc3dpdGNoIChpbnB1dC5qb2IpIHtcbiAgICAgICAgY2FzZSBcIlNZTlRIRVNJWkUtTUVUQURBVEFcIjoge1xuICAgICAgICAgIGNvbnN0IG1ldGFkYXRhID0gdGhpcy5zeW50aGVzaXplTWV0YWRhdGEoKTtcbiAgICAgICAgICB0aGlzLndyaXRlT3V0cHV0KHsgc3RhdHVzOiBcIlNVQ0NFU1NcIiwgZGF0YTogeyBtZXRhZGF0YSB9IH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBcIkVYRUNVVEVcIjoge1xuICAgICAgICAgIGF3YWl0IHRoaXMuZXhlY3V0ZVN0ZXAoXG4gICAgICAgICAgICBpbnB1dC50eXBlLFxuICAgICAgICAgICAgaW5wdXQucGFyYW1zLFxuICAgICAgICAgICAgaW5wdXQuYXBwcm92YWxDb250ZXh0LFxuICAgICAgICAgICAgaW5wdXQucG9sbGluZ1N0YXRlXG4gICAgICAgICAgKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPVxuICAgICAgICBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcik7XG4gICAgICB0aGlzLndyaXRlT3V0cHV0KFN0ZXBPdXRwdXRzLmZhaWxlZChlcnJvck1lc3NhZ2UsIFwiUkVHSVNUUllfRVJST1JcIikpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3ludGhlc2l6ZU1ldGFkYXRhKCk6IFN0ZXBNZXRhZGF0YVtdIHtcbiAgICBjb25zdCBtZXRhZGF0YTogU3RlcE1ldGFkYXRhW10gPSBbXTtcblxuICAgIGZvciAoY29uc3QgaW5zdGFuY2Ugb2YgdGhpcy5zdGVwcy52YWx1ZXMoKSkge1xuICAgICAgbWV0YWRhdGEucHVzaChpbnN0YW5jZS5nZXRNZXRhZGF0YSgpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YWRhdGE7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGV4ZWN1dGVTdGVwKFxuICAgIHR5cGU6IHN0cmluZyxcbiAgICBwYXJhbXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgIGFwcHJvdmFsQ29udGV4dD86IEFwcHJvdmFsQ29udGV4dCxcbiAgICBwb2xsaW5nU3RhdGU/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMuc3RlcHMuZ2V0KHR5cGUpO1xuXG4gICAgaWYgKCFpbnN0YW5jZSkge1xuICAgICAgdGhpcy53cml0ZU91dHB1dChcbiAgICAgICAgU3RlcE91dHB1dHMuZmFpbGVkKFxuICAgICAgICAgIGBObyBzdGVwIHJlZ2lzdGVyZWQgd2l0aCB0eXBlOiAke3R5cGV9YCxcbiAgICAgICAgICBcIlNURVBfTk9UX0ZPVU5EXCJcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgbWV0YWRhdGEgPSBpbnN0YW5jZS5nZXRNZXRhZGF0YSgpO1xuXG4gICAgICAvLyBJbmplY3QgbG9nZ2VyXG4gICAgICBjb25zdCBsb2dnZXIgPSBuZXcgU3RlcExvZ2dlcih7XG4gICAgICAgIGxvZ0RpcjogdGhpcy5sb2dEaXIsXG4gICAgICAgIGV4ZWN1dGlvbklkOiB0aGlzLmV4ZWN1dGlvbklkLFxuICAgICAgICBzdGVwVHlwZTogbWV0YWRhdGEuc3RlcFR5cGUsXG4gICAgICB9KTtcbiAgICAgIGluc3RhbmNlLl9zZXRMb2dnZXIobG9nZ2VyKTtcblxuICAgICAgLy8gVmFsaWRhdGUgcGFyYW1zIGFnYWluc3QgdGhlIHN0ZXAncyBzY2hlbWFcbiAgICAgIGNvbnN0IHBhcnNlUmVzdWx0ID0gbWV0YWRhdGEuc2NoZW1hLnNhZmVQYXJzZShwYXJhbXMpO1xuICAgICAgaWYgKCFwYXJzZVJlc3VsdC5zdWNjZXNzKSB7XG4gICAgICAgIHRoaXMud3JpdGVPdXRwdXQoXG4gICAgICAgICAgU3RlcE91dHB1dHMuZmFpbGVkKFxuICAgICAgICAgICAgYEludmFsaWQgcGFyYW1zOiAke3BhcnNlUmVzdWx0LmVycm9yLm1lc3NhZ2V9YCxcbiAgICAgICAgICAgIFwiSU5WQUxJRF9QQVJBTVNcIlxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB2YWxpZGF0ZWRQYXJhbXMgPSBwYXJzZVJlc3VsdC5kYXRhO1xuXG4gICAgICAvLyBSb3V0ZSB0byBhcHByb3ByaWF0ZSBwaGFzZSBiYXNlZCBvbiBzdGVwIGtpbmQgYW5kIGlucHV0IGNvbnRleHRcbiAgICAgIGNvbnN0IG91dHB1dCA9IGF3YWl0IHRoaXMucm91dGVFeGVjdXRpb24oXG4gICAgICAgIGluc3RhbmNlLFxuICAgICAgICBtZXRhZGF0YSxcbiAgICAgICAgdmFsaWRhdGVkUGFyYW1zLFxuICAgICAgICBhcHByb3ZhbENvbnRleHQsXG4gICAgICAgIHBvbGxpbmdTdGF0ZVxuICAgICAgKTtcblxuICAgICAgdGhpcy53cml0ZU91dHB1dChvdXRwdXQpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPVxuICAgICAgICBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcik7XG4gICAgICB0aGlzLndyaXRlT3V0cHV0KFN0ZXBPdXRwdXRzLmZhaWxlZChlcnJvck1lc3NhZ2UsIFwiRVhFQ1VUSU9OX0VSUk9SXCIpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHJvdXRlRXhlY3V0aW9uKFxuICAgIGluc3RhbmNlOiBCYXNlU3RlcDx1bmtub3duPixcbiAgICBtZXRhZGF0YTogU3RlcE1ldGFkYXRhLFxuICAgIHBhcmFtczogdW5rbm93bixcbiAgICBhcHByb3ZhbENvbnRleHQ/OiBBcHByb3ZhbENvbnRleHQsXG4gICAgcG9sbGluZ1N0YXRlPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgKTogUHJvbWlzZTxTdGVwT3V0cHV0PiB7XG4gICAgY29uc3QgcmVxdWlyZXNBcHByb3ZhbCA9IG1ldGFkYXRhLnJlcXVpcmVzQXBwcm92YWw7XG5cbiAgICBpZiAobWV0YWRhdGEuc3RlcEtpbmQgPT09IFwic2ltcGxlXCIpIHtcbiAgICAgIHJldHVybiB0aGlzLnJvdXRlU2ltcGxlU3RlcChcbiAgICAgICAgaW5zdGFuY2UgYXMgU2ltcGxlU3RlcDx1bmtub3duPixcbiAgICAgICAgcGFyYW1zLFxuICAgICAgICByZXF1aXJlc0FwcHJvdmFsLFxuICAgICAgICBhcHByb3ZhbENvbnRleHRcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKG1ldGFkYXRhLnN0ZXBLaW5kID09PSBcInBvbGxpbmdcIikge1xuICAgICAgcmV0dXJuIHRoaXMucm91dGVQb2xsaW5nU3RlcChcbiAgICAgICAgaW5zdGFuY2UgYXMgUG9sbGluZ1N0ZXA8dW5rbm93biwgUmVjb3JkPHN0cmluZywgdW5rbm93bj4+LFxuICAgICAgICBwYXJhbXMsXG4gICAgICAgIHJlcXVpcmVzQXBwcm92YWwsXG4gICAgICAgIGFwcHJvdmFsQ29udGV4dCxcbiAgICAgICAgcG9sbGluZ1N0YXRlXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBTdGVwT3V0cHV0cy5mYWlsZWQoXG4gICAgICBgVW5rbm93biBzdGVwIGtpbmQ6ICR7bWV0YWRhdGEuc3RlcEtpbmR9YCxcbiAgICAgIFwiVU5LTk9XTl9TVEVQX0tJTkRcIlxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUm91dGUgU2ltcGxlU3RlcCBleGVjdXRpb24gYmFzZWQgb24gYXBwcm92YWwgc3RhdGUuXG4gICAqXG4gICAqIHwgcmVxdWlyZXNBcHByb3ZhbCB8IGFwcHJvdmFsQ29udGV4dCBwcm92aWRlZD8gfCBBY3Rpb24gICAgICAgICAgICAgIHxcbiAgICogfC0tLS0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfFxuICAgKiB8IE5vICAgICAgICAgICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgIHwgQ2FsbCBydW4ocGFyYW1zKSAgICB8XG4gICAqIHwgWWVzICAgICAgICAgICAgICB8IE5vICAgICAgICAgICAgICAgICAgICAgICAgfCBDYWxsIHByZXBhcmUocGFyYW1zKXxcbiAgICogfCBZZXMgICAgICAgICAgICAgIHwgWWVzICAgICAgICAgICAgICAgICAgICAgICB8IENhbGwgcnVuKHBhcmFtcywgYXBwcm92YWwpIHxcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgcm91dGVTaW1wbGVTdGVwKFxuICAgIGluc3RhbmNlOiBTaW1wbGVTdGVwPHVua25vd24+LFxuICAgIHBhcmFtczogdW5rbm93bixcbiAgICByZXF1aXJlc0FwcHJvdmFsOiBib29sZWFuLFxuICAgIGFwcHJvdmFsQ29udGV4dD86IEFwcHJvdmFsQ29udGV4dFxuICApOiBQcm9taXNlPFN0ZXBPdXRwdXQ+IHtcbiAgICBpZiAoIXJlcXVpcmVzQXBwcm92YWwpIHtcbiAgICAgIC8vIE5vIGFwcHJvdmFsIG5lZWRlZCAtIGp1c3QgcnVuXG4gICAgICByZXR1cm4gaW5zdGFuY2UuZXhlY3V0ZShwYXJhbXMsIHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgaWYgKCFhcHByb3ZhbENvbnRleHQpIHtcbiAgICAgIC8vIE5lZWRzIGFwcHJvdmFsIGJ1dCBkb24ndCBoYXZlIGl0IHlldCAtIGNhbGwgcHJlcGFyZVxuICAgICAgcmV0dXJuIGluc3RhbmNlLnByZXBhcmUocGFyYW1zKTtcbiAgICB9XG5cbiAgICAvLyBIYXZlIGFwcHJvdmFsIC0gcnVuIHdpdGggYXBwcm92YWwgY29udGV4dFxuICAgIHJldHVybiBpbnN0YW5jZS5leGVjdXRlKHBhcmFtcywgYXBwcm92YWxDb250ZXh0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSb3V0ZSBQb2xsaW5nU3RlcCBleGVjdXRpb24gYmFzZWQgb24gYXBwcm92YWwgYW5kIHBvbGxpbmcgc3RhdGUuXG4gICAqXG4gICAqIHwgcmVxdWlyZXNBcHByb3ZhbCB8IGFwcHJvdmFsQ29udGV4dD8gfCBwb2xsaW5nU3RhdGU/IHwgQWN0aW9uICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKiB8LS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXxcbiAgICogfCBObyAgICAgICAgICAgICAgIHwgLSAgICAgICAgICAgICAgICB8IE5vICAgICAgICAgICAgfCBDYWxsIHRyaWdnZXIocGFyYW1zKSAgICAgICAgICB8XG4gICAqIHwgTm8gICAgICAgICAgICAgICB8IC0gICAgICAgICAgICAgICAgfCBZZXMgICAgICAgICAgIHwgQ2FsbCBwb2xsKHBhcmFtcywgcG9sbGluZ1N0YXRlKXxcbiAgICogfCBZZXMgICAgICAgICAgICAgIHwgTm8gICAgICAgICAgICAgICB8IE5vICAgICAgICAgICAgfCBDYWxsIHByZXBhcmUocGFyYW1zKSAgICAgICAgICB8XG4gICAqIHwgWWVzICAgICAgICAgICAgICB8IFllcyAgICAgICAgICAgICAgfCBObyAgICAgICAgICAgIHwgQ2FsbCB0cmlnZ2VyKHBhcmFtcywgYXBwcm92YWwpfFxuICAgKiB8IFllcyAgICAgICAgICAgICAgfCBZZXMgICAgICAgICAgICAgIHwgWWVzICAgICAgICAgICB8IENhbGwgcG9sbChwYXJhbXMsIHBvbGxpbmdTdGF0ZSl8XG4gICAqL1xuICBwcml2YXRlIGFzeW5jIHJvdXRlUG9sbGluZ1N0ZXAoXG4gICAgaW5zdGFuY2U6IFBvbGxpbmdTdGVwPHVua25vd24sIFJlY29yZDxzdHJpbmcsIHVua25vd24+PixcbiAgICBwYXJhbXM6IHVua25vd24sXG4gICAgcmVxdWlyZXNBcHByb3ZhbDogYm9vbGVhbixcbiAgICBhcHByb3ZhbENvbnRleHQ/OiBBcHByb3ZhbENvbnRleHQsXG4gICAgcG9sbGluZ1N0YXRlPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgKTogUHJvbWlzZTxTdGVwT3V0cHV0PiB7XG4gICAgLy8gSWYgd2UgaGF2ZSBwb2xsaW5nIHN0YXRlLCB3ZSdyZSBpbiB0aGUgcG9sbCBwaGFzZSAocmVnYXJkbGVzcyBvZiBhcHByb3ZhbClcbiAgICBpZiAocG9sbGluZ1N0YXRlKSB7XG4gICAgICByZXR1cm4gaW5zdGFuY2UuZXhlY3V0ZVBvbGwocGFyYW1zLCBwb2xsaW5nU3RhdGUpO1xuICAgIH1cblxuICAgIGlmICghcmVxdWlyZXNBcHByb3ZhbCkge1xuICAgICAgLy8gTm8gYXBwcm92YWwgbmVlZGVkIC0gdHJpZ2dlciBkaXJlY3RseVxuICAgICAgcmV0dXJuIGluc3RhbmNlLmV4ZWN1dGVUcmlnZ2VyKHBhcmFtcywgdW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBpZiAoIWFwcHJvdmFsQ29udGV4dCkge1xuICAgICAgLy8gTmVlZHMgYXBwcm92YWwgYnV0IGRvbid0IGhhdmUgaXQgeWV0IC0gY2FsbCBwcmVwYXJlXG4gICAgICByZXR1cm4gaW5zdGFuY2UucHJlcGFyZShwYXJhbXMpO1xuICAgIH1cblxuICAgIC8vIEhhdmUgYXBwcm92YWwgLSB0cmlnZ2VyIHdpdGggYXBwcm92YWwgY29udGV4dFxuICAgIHJldHVybiBpbnN0YW5jZS5leGVjdXRlVHJpZ2dlcihwYXJhbXMsIGFwcHJvdmFsQ29udGV4dCk7XG4gIH1cblxuICBwcml2YXRlIHdyaXRlT3V0cHV0KG91dHB1dDogU3RlcE91dHB1dCk6IHZvaWQge1xuICAgIGNvbnN0IG91dHB1dERpciA9IHBhdGguZGlybmFtZSh0aGlzLm91dHB1dFBhdGgpO1xuICAgIGlmICghZnMuZXhpc3RzU3luYyhvdXRwdXREaXIpKSB7XG4gICAgICBmcy5ta2RpclN5bmMob3V0cHV0RGlyLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICB9XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKHRoaXMub3V0cHV0UGF0aCwgSlNPTi5zdHJpbmdpZnkob3V0cHV0LCBudWxsLCAyKSk7XG4gIH1cbn1cbiJdfQ==
|
|
238
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1yZWdpc3RyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZWdpc3RyeS9zdGVwLXJlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF5QjtBQUN6QiwyQ0FBNkI7QUFDN0Isd0RBQWdDO0FBQ2hDLDhDQUFvQjtBQUlwQix3REFBb0Q7QUFFcEQsdURBQTJFO0FBRTNFLGdGQUFnRjtBQUNoRixnQkFBZ0I7QUFDaEIsZ0ZBQWdGO0FBRWhGLE1BQU0sNEJBQTRCLEdBQUcsYUFBQyxDQUFDLE1BQU0sQ0FBQztJQUM1QyxHQUFHLEVBQUUsYUFBQyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQztDQUN0QyxDQUFDLENBQUM7QUFFSCxNQUFNLHlCQUF5QixHQUFHLGFBQUMsQ0FBQyxNQUFNLENBQUM7SUFDekMsR0FBRyxFQUFFLGFBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO0lBQ3pCLElBQUksRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFO0lBQ2hCLE1BQU0sRUFBRSxhQUFDLENBQUMsTUFBTSxDQUFDLGFBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxhQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDckMsNERBQTREO0lBQzVELGVBQWUsRUFBRSxtQ0FBcUIsQ0FBQyxRQUFRLEVBQUU7SUFDakQsWUFBWSxFQUFFLGFBQUMsQ0FBQyxNQUFNLENBQUMsYUFBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLGFBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtDQUN2RCxDQUFDLENBQUM7QUFFVSxRQUFBLHVCQUF1QixHQUFHLGFBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUU7SUFDakUseUJBQXlCO0lBQ3pCLDRCQUE0QjtDQUM3QixDQUFDLENBQUM7QUFJSCxnRkFBZ0Y7QUFDaEYsZ0JBQWdCO0FBQ2hCLGdGQUFnRjtBQUVoRixNQUFNLG1CQUFtQixHQUFHLHVCQUF1QixDQUFDO0FBQ3BELE1BQU0sZUFBZSxHQUFHLGdCQUFnQixDQUFDO0FBRXpDLGdGQUFnRjtBQUNoRixlQUFlO0FBQ2YsZ0ZBQWdGO0FBRWhGLE1BQWEsWUFBWTtJQUNmLEtBQUssQ0FBaUM7SUFDdEMsVUFBVSxDQUFTO0lBQ25CLE1BQU0sQ0FBUztJQUNmLFdBQVcsQ0FBUztJQUU1QixZQUNFLEtBQTBCLEVBQzFCLFVBQWtCLEVBQ2xCLE1BQWMsRUFDZCxXQUFtQjtRQUVuQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFFL0IsS0FBSyxNQUFNLFFBQVEsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUM3QixNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDeEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUM5QyxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7OztPQWlCRztJQUNILE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQTBCO1FBQ3pDLE1BQU0sSUFBSSxHQUFHLElBQUEsa0JBQVEsRUFBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxtQkFBbUIsQ0FBQztRQUN6RCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksZUFBZSxDQUFDO1FBQ2xELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxRQUFRLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDO1FBRWpFLE1BQU0sUUFBUSxHQUFHLElBQUksWUFBWSxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzFFLE1BQU0sUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUF5QjtRQUM3QyxJQUFJLENBQUM7WUFDSCxNQUFNLEtBQUssR0FBRywrQkFBdUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRXZFLFFBQVEsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUNsQixLQUFLLHFCQUFxQixDQUFDLENBQUMsQ0FBQztvQkFDM0IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7b0JBQzNDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDNUQsTUFBTTtnQkFDUixDQUFDO2dCQUVELEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQztvQkFDZixNQUFNLElBQUksQ0FBQyxXQUFXLENBQ3BCLEtBQUssQ0FBQyxJQUFJLEVBQ1YsS0FBSyxDQUFDLE1BQU0sRUFDWixLQUFLLENBQUMsZUFBZSxFQUNyQixLQUFLLENBQUMsWUFBWSxDQUNuQixDQUFDO29CQUNGLE1BQU07Z0JBQ1IsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE1BQU0sWUFBWSxHQUNoQixLQUFLLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekQsSUFBSSxDQUFDLFdBQVcsQ0FBQyx5QkFBVyxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLENBQUM7SUFDSCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLE1BQU0sUUFBUSxHQUFtQixFQUFFLENBQUM7UUFFcEMsS0FBSyxNQUFNLFFBQVEsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDM0MsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUN4QyxDQUFDO1FBRUQsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVPLEtBQUssQ0FBQyxXQUFXLENBQ3ZCLElBQVksRUFDWixNQUErQixFQUMvQixlQUFpQyxFQUNqQyxZQUFzQztRQUV0QyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV0QyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsV0FBVyxDQUNkLHlCQUFXLENBQUMsTUFBTSxDQUNoQixpQ0FBaUMsSUFBSSxFQUFFLEVBQ3ZDLGdCQUFnQixDQUNqQixDQUNGLENBQUM7WUFDRixPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQztZQUNILE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUVoQyxnQkFBZ0I7WUFDaEIsTUFBTSxNQUFNLEdBQUcsSUFBSSx3QkFBVSxDQUFDO2dCQUM1QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07Z0JBQ25CLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztnQkFDN0IsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO2FBQ3hCLENBQUMsQ0FBQztZQUNILFFBQVEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFNUIsNENBQTRDO1lBQzVDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2xELElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxXQUFXLENBQ2QseUJBQVcsQ0FBQyxNQUFNLENBQ2hCLG1CQUFtQixXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUM5QyxnQkFBZ0IsQ0FDakIsQ0FDRixDQUFDO2dCQUNGLE9BQU87WUFDVCxDQUFDO1lBRUQsTUFBTSxlQUFlLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQztZQUV6QyxrRUFBa0U7WUFDbEUsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUN0QyxRQUFRLEVBQ1IsSUFBSSxFQUNKLGVBQWUsRUFDZixlQUFlLEVBQ2YsWUFBWSxDQUNiLENBQUM7WUFFRixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxZQUFZLEdBQ2hCLEtBQUssWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6RCxJQUFJLENBQUMsV0FBVyxDQUFDLHlCQUFXLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7UUFDeEUsQ0FBQztJQUNILENBQUM7SUFFTyxLQUFLLENBQUMsY0FBYyxDQUMxQixRQUEyQixFQUMzQixJQUFjLEVBQ2QsTUFBZSxFQUNmLGVBQWlDLEVBQ2pDLFlBQXNDO1FBRXRDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBRS9DLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUMvQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQ3pCLFFBQStCLEVBQy9CLE1BQU0sRUFDTixnQkFBZ0IsRUFDaEIsZUFBZSxDQUNoQixDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNoQyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FDMUIsUUFBeUQsRUFDekQsTUFBTSxFQUNOLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsWUFBWSxDQUNiLENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyx5QkFBVyxDQUFDLE1BQU0sQ0FDdkIsc0JBQXNCLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFDckMsbUJBQW1CLENBQ3BCLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSyxLQUFLLENBQUMsZUFBZSxDQUMzQixRQUE2QixFQUM3QixNQUFlLEVBQ2YsZ0JBQXlCLEVBQ3pCLGVBQWlDO1FBRWpDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3RCLGdDQUFnQztZQUNoQyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFFRCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDckIsc0RBQXNEO1lBQ3RELE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsQyxDQUFDO1FBRUQsNENBQTRDO1FBQzVDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVEOzs7Ozs7Ozs7O09BVUc7SUFDSyxLQUFLLENBQUMsZ0JBQWdCLENBQzVCLFFBQXVELEVBQ3ZELE1BQWUsRUFDZixnQkFBeUIsRUFDekIsZUFBaUMsRUFDakMsWUFBc0M7UUFFdEMsNkVBQTZFO1FBQzdFLElBQUksWUFBWSxFQUFFLENBQUM7WUFDakIsT0FBTyxRQUFRLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBRUQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDdEIsd0NBQXdDO1lBQ3hDLE9BQU8sUUFBUSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDcEQsQ0FBQztRQUVELElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNyQixzREFBc0Q7WUFDdEQsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2xDLENBQUM7UUFFRCxnREFBZ0Q7UUFDaEQsT0FBTyxRQUFRLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxlQUFlLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRU8sV0FBVyxDQUFDLE1BQWtCO1FBQ3BDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDOUIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUMvQyxDQUFDO1FBRUQsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7Q0FDRjtBQWpRRCxvQ0FpUUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCBtaW5pbWlzdCBmcm9tIFwibWluaW1pc3RcIjtcbmltcG9ydCB6IGZyb20gXCJ6b2RcIjtcbmltcG9ydCB0eXBlIHsgQmFzZVN0ZXAsIFN0ZXBEYXRhLCBTdGVwTWV0YWRhdGEgfSBmcm9tIFwiLi4vYmFzZS9iYXNlLXN0ZXBcIjtcbmltcG9ydCB0eXBlIHsgU2ltcGxlU3RlcCB9IGZyb20gXCIuLi9iYXNlL3NpbXBsZS1zdGVwXCI7XG5pbXBvcnQgdHlwZSB7IFBvbGxpbmdTdGVwIH0gZnJvbSBcIi4uL2Jhc2UvcG9sbGluZy1zdGVwXCI7XG5pbXBvcnQgeyBTdGVwTG9nZ2VyIH0gZnJvbSBcIi4uL2xvZ2dpbmcvc3RlcC1sb2dnZXJcIjtcbmltcG9ydCB0eXBlIHsgQXBwcm92YWxDb250ZXh0LCBTdGVwT3V0cHV0IH0gZnJvbSBcIi4uL291dHB1dC9zdGVwLW91dHB1dFwiO1xuaW1wb3J0IHsgQXBwcm92YWxDb250ZXh0U2NoZW1hLCBTdGVwT3V0cHV0cyB9IGZyb20gXCIuLi9vdXRwdXQvc3RlcC1vdXRwdXRcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIElucHV0IFNjaGVtYXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmNvbnN0IFN0ZXBSZWdpc3RyeVN5bnRoZXNpemVTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIGpvYjogei5saXRlcmFsKFwiU1lOVEhFU0laRS1NRVRBREFUQVwiKSxcbn0pO1xuXG5jb25zdCBTdGVwUmVnaXN0cnlFeGVjdXRlU2NoZW1hID0gei5vYmplY3Qoe1xuICBqb2I6IHoubGl0ZXJhbChcIkVYRUNVVEVcIiksXG4gIHR5cGU6IHouc3RyaW5nKCksXG4gIHBhcmFtczogei5yZWNvcmQoei5zdHJpbmcoKSwgei5hbnkoKSksXG4gIC8vIE9wdGlvbmFsIGNvbnRleHQgLSBwcmVzZW5jZSBkZXRlcm1pbmVzIHdoaWNoIHBoYXNlIHRvIHJ1blxuICBhcHByb3ZhbENvbnRleHQ6IEFwcHJvdmFsQ29udGV4dFNjaGVtYS5vcHRpb25hbCgpLFxuICBwb2xsaW5nU3RhdGU6IHoucmVjb3JkKHouc3RyaW5nKCksIHouYW55KCkpLm9wdGlvbmFsKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IFN0ZXBSZWdpc3RyeUlucHV0U2NoZW1hID0gei5kaXNjcmltaW5hdGVkVW5pb24oXCJqb2JcIiwgW1xuICBTdGVwUmVnaXN0cnlFeGVjdXRlU2NoZW1hLFxuICBTdGVwUmVnaXN0cnlTeW50aGVzaXplU2NoZW1hLFxuXSk7XG5cbmV4cG9ydCB0eXBlIFN0ZXBSZWdpc3RyeUlucHV0ID0gei5pbmZlcjx0eXBlb2YgU3RlcFJlZ2lzdHJ5SW5wdXRTY2hlbWE+O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ29uZmlndXJhdGlvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuY29uc3QgREVGQVVMVF9PVVRQVVRfUEFUSCA9IFwiL3RtcC9zdGVwLW91dHB1dC5qc29uXCI7XG5jb25zdCBERUZBVUxUX0xPR19ESVIgPSBcIi90bXAvc3RlcC1sb2dzXCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTdGVwUmVnaXN0cnlcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBjbGFzcyBTdGVwUmVnaXN0cnkge1xuICBwcml2YXRlIHN0ZXBzOiBNYXA8c3RyaW5nLCBCYXNlU3RlcDx1bmtub3duPj47XG4gIHByaXZhdGUgb3V0cHV0UGF0aDogc3RyaW5nO1xuICBwcml2YXRlIGxvZ0Rpcjogc3RyaW5nO1xuICBwcml2YXRlIGV4ZWN1dGlvbklkOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihcbiAgICBzdGVwczogQmFzZVN0ZXA8dW5rbm93bj5bXSxcbiAgICBvdXRwdXRQYXRoOiBzdHJpbmcsXG4gICAgbG9nRGlyOiBzdHJpbmcsXG4gICAgZXhlY3V0aW9uSWQ6IHN0cmluZ1xuICApIHtcbiAgICB0aGlzLnN0ZXBzID0gbmV3IE1hcCgpO1xuICAgIHRoaXMub3V0cHV0UGF0aCA9IG91dHB1dFBhdGg7XG4gICAgdGhpcy5sb2dEaXIgPSBsb2dEaXI7XG4gICAgdGhpcy5leGVjdXRpb25JZCA9IGV4ZWN1dGlvbklkO1xuXG4gICAgZm9yIChjb25zdCBpbnN0YW5jZSBvZiBzdGVwcykge1xuICAgICAgY29uc3QgbWV0YWRhdGEgPSBpbnN0YW5jZS5nZXRNZXRhZGF0YSgpO1xuICAgICAgdGhpcy5zdGVwcy5zZXQobWV0YWRhdGEuc3RlcFR5cGUsIGluc3RhbmNlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTWFpbiBlbnRyeXBvaW50IGZvciBydW5uaW5nIHN0ZXBzLlxuICAgKiBQYXJzZXMgQ0xJIGFyZ3MgYW5kIGVpdGhlciBzeW50aGVzaXplcyBtZXRhZGF0YSBvciBleGVjdXRlcyBhIHN0ZXAuXG4gICAqXG4gICAqIFVzYWdlIGluIHVzZXIncyBlbnRyeXBvaW50IGZpbGU6XG4gICAqIGBgYFxuICAgKiBTdGVwUmVnaXN0cnkucnVuKFtcbiAgICogICBuZXcgTXlTdGVwMShkZXBlbmRlbmN5MSwgZGVwZW5kZW5jeTIpLFxuICAgKiAgIG5ldyBNeVN0ZXAyKGNvbmZpZylcbiAgICogXSk7XG4gICAqIGBgYFxuICAgKlxuICAgKiBDTEkgYXJndW1lbnRzOlxuICAgKiAtIC0taW5wdXQ6IEpTT04gYmxvYiB3aXRoIGpvYiB0eXBlIGFuZCBwYXJhbWV0ZXJzXG4gICAqIC0gLS1vdXRwdXQ6IFBhdGggdG8gd3JpdGUgb3V0cHV0IEpTT04gKGRlZmF1bHQ6IC90bXAvc3RlcC1vdXRwdXQuanNvbilcbiAgICogLSAtLWxvZy1kaXI6IERpcmVjdG9yeSBmb3IgbG9nIGZpbGVzIChkZWZhdWx0OiAvdG1wL3N0ZXAtbG9ncylcbiAgICogLSAtLWV4ZWN1dGlvbi1pZDogVW5pcXVlIElEIGZvciB0aGlzIGV4ZWN1dGlvbiAocmVxdWlyZWQgZm9yIGxvZ2dpbmcpXG4gICAqL1xuICBzdGF0aWMgYXN5bmMgcnVuKHN0ZXBzOiBCYXNlU3RlcDx1bmtub3duPltdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgYXJncyA9IG1pbmltaXN0KHByb2Nlc3MuYXJndi5zbGljZSgyKSk7XG4gICAgY29uc3Qgb3V0cHV0UGF0aCA9IGFyZ3NbXCJvdXRwdXRcIl0gfHwgREVGQVVMVF9PVVRQVVRfUEFUSDtcbiAgICBjb25zdCBsb2dEaXIgPSBhcmdzW1wibG9nLWRpclwiXSB8fCBERUZBVUxUX0xPR19ESVI7XG4gICAgY29uc3QgZXhlY3V0aW9uSWQgPSBhcmdzW1wiZXhlY3V0aW9uLWlkXCJdIHx8IGBleGVjLSR7RGF0ZS5ub3coKX1gO1xuXG4gICAgY29uc3QgcmVnaXN0cnkgPSBuZXcgU3RlcFJlZ2lzdHJ5KHN0ZXBzLCBvdXRwdXRQYXRoLCBsb2dEaXIsIGV4ZWN1dGlvbklkKTtcbiAgICBhd2FpdCByZWdpc3RyeS5leGVjdXRlKGFyZ3MpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBleGVjdXRlKGFyZ3M6IG1pbmltaXN0LlBhcnNlZEFyZ3MpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgaW5wdXQgPSBTdGVwUmVnaXN0cnlJbnB1dFNjaGVtYS5wYXJzZShKU09OLnBhcnNlKGFyZ3NbXCJpbnB1dFwiXSkpO1xuXG4gICAgICBzd2l0Y2ggKGlucHV0LmpvYikge1xuICAgICAgICBjYXNlIFwiU1lOVEhFU0laRS1NRVRBREFUQVwiOiB7XG4gICAgICAgICAgY29uc3QgbWV0YWRhdGEgPSB0aGlzLnN5bnRoZXNpemVNZXRhZGF0YSgpO1xuICAgICAgICAgIHRoaXMud3JpdGVPdXRwdXQoeyBzdGF0dXM6IFwiU1VDQ0VTU1wiLCBkYXRhOiB7IG1ldGFkYXRhIH0gfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBjYXNlIFwiRVhFQ1VURVwiOiB7XG4gICAgICAgICAgYXdhaXQgdGhpcy5leGVjdXRlU3RlcChcbiAgICAgICAgICAgIGlucHV0LnR5cGUsXG4gICAgICAgICAgICBpbnB1dC5wYXJhbXMsXG4gICAgICAgICAgICBpbnB1dC5hcHByb3ZhbENvbnRleHQsXG4gICAgICAgICAgICBpbnB1dC5wb2xsaW5nU3RhdGVcbiAgICAgICAgICApO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9XG4gICAgICAgIGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogU3RyaW5nKGVycm9yKTtcbiAgICAgIHRoaXMud3JpdGVPdXRwdXQoU3RlcE91dHB1dHMuZmFpbGVkKGVycm9yTWVzc2FnZSwgXCJSRUdJU1RSWV9FUlJPUlwiKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzeW50aGVzaXplTWV0YWRhdGEoKTogU3RlcE1ldGFkYXRhW10ge1xuICAgIGNvbnN0IG1ldGFkYXRhOiBTdGVwTWV0YWRhdGFbXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBpbnN0YW5jZSBvZiB0aGlzLnN0ZXBzLnZhbHVlcygpKSB7XG4gICAgICBtZXRhZGF0YS5wdXNoKGluc3RhbmNlLmdldE1ldGFkYXRhKCkpO1xuICAgIH1cblxuICAgIHJldHVybiBtZXRhZGF0YTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZXhlY3V0ZVN0ZXAoXG4gICAgdHlwZTogc3RyaW5nLFxuICAgIHBhcmFtczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgYXBwcm92YWxDb250ZXh0PzogQXBwcm92YWxDb250ZXh0LFxuICAgIHBvbGxpbmdTdGF0ZT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGluc3RhbmNlID0gdGhpcy5zdGVwcy5nZXQodHlwZSk7XG5cbiAgICBpZiAoIWluc3RhbmNlKSB7XG4gICAgICB0aGlzLndyaXRlT3V0cHV0KFxuICAgICAgICBTdGVwT3V0cHV0cy5mYWlsZWQoXG4gICAgICAgICAgYE5vIHN0ZXAgcmVnaXN0ZXJlZCB3aXRoIHR5cGU6ICR7dHlwZX1gLFxuICAgICAgICAgIFwiU1RFUF9OT1RfRk9VTkRcIlxuICAgICAgICApXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBkYXRhID0gaW5zdGFuY2UuZ2V0RGF0YSgpO1xuXG4gICAgICAvLyBJbmplY3QgbG9nZ2VyXG4gICAgICBjb25zdCBsb2dnZXIgPSBuZXcgU3RlcExvZ2dlcih7XG4gICAgICAgIGxvZ0RpcjogdGhpcy5sb2dEaXIsXG4gICAgICAgIGV4ZWN1dGlvbklkOiB0aGlzLmV4ZWN1dGlvbklkLFxuICAgICAgICBzdGVwVHlwZTogZGF0YS5zdGVwVHlwZSxcbiAgICAgIH0pO1xuICAgICAgaW5zdGFuY2UuX3NldExvZ2dlcihsb2dnZXIpO1xuXG4gICAgICAvLyBWYWxpZGF0ZSBwYXJhbXMgYWdhaW5zdCB0aGUgc3RlcCdzIHNjaGVtYVxuICAgICAgY29uc3QgcGFyc2VSZXN1bHQgPSBkYXRhLnNjaGVtYS5zYWZlUGFyc2UocGFyYW1zKTtcbiAgICAgIGlmICghcGFyc2VSZXN1bHQuc3VjY2Vzcykge1xuICAgICAgICB0aGlzLndyaXRlT3V0cHV0KFxuICAgICAgICAgIFN0ZXBPdXRwdXRzLmZhaWxlZChcbiAgICAgICAgICAgIGBJbnZhbGlkIHBhcmFtczogJHtwYXJzZVJlc3VsdC5lcnJvci5tZXNzYWdlfWAsXG4gICAgICAgICAgICBcIklOVkFMSURfUEFSQU1TXCJcbiAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdmFsaWRhdGVkUGFyYW1zID0gcGFyc2VSZXN1bHQuZGF0YTtcblxuICAgICAgLy8gUm91dGUgdG8gYXBwcm9wcmlhdGUgcGhhc2UgYmFzZWQgb24gc3RlcCBraW5kIGFuZCBpbnB1dCBjb250ZXh0XG4gICAgICBjb25zdCBvdXRwdXQgPSBhd2FpdCB0aGlzLnJvdXRlRXhlY3V0aW9uKFxuICAgICAgICBpbnN0YW5jZSxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgdmFsaWRhdGVkUGFyYW1zLFxuICAgICAgICBhcHByb3ZhbENvbnRleHQsXG4gICAgICAgIHBvbGxpbmdTdGF0ZVxuICAgICAgKTtcblxuICAgICAgdGhpcy53cml0ZU91dHB1dChvdXRwdXQpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPVxuICAgICAgICBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcik7XG4gICAgICB0aGlzLndyaXRlT3V0cHV0KFN0ZXBPdXRwdXRzLmZhaWxlZChlcnJvck1lc3NhZ2UsIFwiRVhFQ1VUSU9OX0VSUk9SXCIpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHJvdXRlRXhlY3V0aW9uKFxuICAgIGluc3RhbmNlOiBCYXNlU3RlcDx1bmtub3duPixcbiAgICBkYXRhOiBTdGVwRGF0YSxcbiAgICBwYXJhbXM6IHVua25vd24sXG4gICAgYXBwcm92YWxDb250ZXh0PzogQXBwcm92YWxDb250ZXh0LFxuICAgIHBvbGxpbmdTdGF0ZT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICk6IFByb21pc2U8U3RlcE91dHB1dD4ge1xuICAgIGNvbnN0IHJlcXVpcmVzQXBwcm92YWwgPSBkYXRhLnJlcXVpcmVzQXBwcm92YWw7XG5cbiAgICBpZiAoZGF0YS5zdGVwS2luZCA9PT0gXCJzaW1wbGVcIikge1xuICAgICAgcmV0dXJuIHRoaXMucm91dGVTaW1wbGVTdGVwKFxuICAgICAgICBpbnN0YW5jZSBhcyBTaW1wbGVTdGVwPHVua25vd24+LFxuICAgICAgICBwYXJhbXMsXG4gICAgICAgIHJlcXVpcmVzQXBwcm92YWwsXG4gICAgICAgIGFwcHJvdmFsQ29udGV4dFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoZGF0YS5zdGVwS2luZCA9PT0gXCJwb2xsaW5nXCIpIHtcbiAgICAgIHJldHVybiB0aGlzLnJvdXRlUG9sbGluZ1N0ZXAoXG4gICAgICAgIGluc3RhbmNlIGFzIFBvbGxpbmdTdGVwPHVua25vd24sIFJlY29yZDxzdHJpbmcsIHVua25vd24+PixcbiAgICAgICAgcGFyYW1zLFxuICAgICAgICByZXF1aXJlc0FwcHJvdmFsLFxuICAgICAgICBhcHByb3ZhbENvbnRleHQsXG4gICAgICAgIHBvbGxpbmdTdGF0ZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gU3RlcE91dHB1dHMuZmFpbGVkKFxuICAgICAgYFVua25vd24gc3RlcCBraW5kOiAke2RhdGEuc3RlcEtpbmR9YCxcbiAgICAgIFwiVU5LTk9XTl9TVEVQX0tJTkRcIlxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUm91dGUgU2ltcGxlU3RlcCBleGVjdXRpb24gYmFzZWQgb24gYXBwcm92YWwgc3RhdGUuXG4gICAqXG4gICAqIHwgcmVxdWlyZXNBcHByb3ZhbCB8IGFwcHJvdmFsQ29udGV4dCBwcm92aWRlZD8gfCBBY3Rpb24gICAgICAgICAgICAgIHxcbiAgICogfC0tLS0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfFxuICAgKiB8IE5vICAgICAgICAgICAgICAgfCAtICAgICAgICAgICAgICAgICAgICAgICAgIHwgQ2FsbCBydW4ocGFyYW1zKSAgICB8XG4gICAqIHwgWWVzICAgICAgICAgICAgICB8IE5vICAgICAgICAgICAgICAgICAgICAgICAgfCBDYWxsIHByZXBhcmUocGFyYW1zKXxcbiAgICogfCBZZXMgICAgICAgICAgICAgIHwgWWVzICAgICAgICAgICAgICAgICAgICAgICB8IENhbGwgcnVuKHBhcmFtcywgYXBwcm92YWwpIHxcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgcm91dGVTaW1wbGVTdGVwKFxuICAgIGluc3RhbmNlOiBTaW1wbGVTdGVwPHVua25vd24+LFxuICAgIHBhcmFtczogdW5rbm93bixcbiAgICByZXF1aXJlc0FwcHJvdmFsOiBib29sZWFuLFxuICAgIGFwcHJvdmFsQ29udGV4dD86IEFwcHJvdmFsQ29udGV4dFxuICApOiBQcm9taXNlPFN0ZXBPdXRwdXQ+IHtcbiAgICBpZiAoIXJlcXVpcmVzQXBwcm92YWwpIHtcbiAgICAgIC8vIE5vIGFwcHJvdmFsIG5lZWRlZCAtIGp1c3QgcnVuXG4gICAgICByZXR1cm4gaW5zdGFuY2UuZXhlY3V0ZShwYXJhbXMsIHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgaWYgKCFhcHByb3ZhbENvbnRleHQpIHtcbiAgICAgIC8vIE5lZWRzIGFwcHJvdmFsIGJ1dCBkb24ndCBoYXZlIGl0IHlldCAtIGNhbGwgcHJlcGFyZVxuICAgICAgcmV0dXJuIGluc3RhbmNlLnByZXBhcmUocGFyYW1zKTtcbiAgICB9XG5cbiAgICAvLyBIYXZlIGFwcHJvdmFsIC0gcnVuIHdpdGggYXBwcm92YWwgY29udGV4dFxuICAgIHJldHVybiBpbnN0YW5jZS5leGVjdXRlKHBhcmFtcywgYXBwcm92YWxDb250ZXh0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSb3V0ZSBQb2xsaW5nU3RlcCBleGVjdXRpb24gYmFzZWQgb24gYXBwcm92YWwgYW5kIHBvbGxpbmcgc3RhdGUuXG4gICAqXG4gICAqIHwgcmVxdWlyZXNBcHByb3ZhbCB8IGFwcHJvdmFsQ29udGV4dD8gfCBwb2xsaW5nU3RhdGU/IHwgQWN0aW9uICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKiB8LS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXxcbiAgICogfCBObyAgICAgICAgICAgICAgIHwgLSAgICAgICAgICAgICAgICB8IE5vICAgICAgICAgICAgfCBDYWxsIHRyaWdnZXIocGFyYW1zKSAgICAgICAgICB8XG4gICAqIHwgTm8gICAgICAgICAgICAgICB8IC0gICAgICAgICAgICAgICAgfCBZZXMgICAgICAgICAgIHwgQ2FsbCBwb2xsKHBhcmFtcywgcG9sbGluZ1N0YXRlKXxcbiAgICogfCBZZXMgICAgICAgICAgICAgIHwgTm8gICAgICAgICAgICAgICB8IE5vICAgICAgICAgICAgfCBDYWxsIHByZXBhcmUocGFyYW1zKSAgICAgICAgICB8XG4gICAqIHwgWWVzICAgICAgICAgICAgICB8IFllcyAgICAgICAgICAgICAgfCBObyAgICAgICAgICAgIHwgQ2FsbCB0cmlnZ2VyKHBhcmFtcywgYXBwcm92YWwpfFxuICAgKiB8IFllcyAgICAgICAgICAgICAgfCBZZXMgICAgICAgICAgICAgIHwgWWVzICAgICAgICAgICB8IENhbGwgcG9sbChwYXJhbXMsIHBvbGxpbmdTdGF0ZSl8XG4gICAqL1xuICBwcml2YXRlIGFzeW5jIHJvdXRlUG9sbGluZ1N0ZXAoXG4gICAgaW5zdGFuY2U6IFBvbGxpbmdTdGVwPHVua25vd24sIFJlY29yZDxzdHJpbmcsIHVua25vd24+PixcbiAgICBwYXJhbXM6IHVua25vd24sXG4gICAgcmVxdWlyZXNBcHByb3ZhbDogYm9vbGVhbixcbiAgICBhcHByb3ZhbENvbnRleHQ/OiBBcHByb3ZhbENvbnRleHQsXG4gICAgcG9sbGluZ1N0YXRlPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgKTogUHJvbWlzZTxTdGVwT3V0cHV0PiB7XG4gICAgLy8gSWYgd2UgaGF2ZSBwb2xsaW5nIHN0YXRlLCB3ZSdyZSBpbiB0aGUgcG9sbCBwaGFzZSAocmVnYXJkbGVzcyBvZiBhcHByb3ZhbClcbiAgICBpZiAocG9sbGluZ1N0YXRlKSB7XG4gICAgICByZXR1cm4gaW5zdGFuY2UuZXhlY3V0ZVBvbGwocGFyYW1zLCBwb2xsaW5nU3RhdGUpO1xuICAgIH1cblxuICAgIGlmICghcmVxdWlyZXNBcHByb3ZhbCkge1xuICAgICAgLy8gTm8gYXBwcm92YWwgbmVlZGVkIC0gdHJpZ2dlciBkaXJlY3RseVxuICAgICAgcmV0dXJuIGluc3RhbmNlLmV4ZWN1dGVUcmlnZ2VyKHBhcmFtcywgdW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBpZiAoIWFwcHJvdmFsQ29udGV4dCkge1xuICAgICAgLy8gTmVlZHMgYXBwcm92YWwgYnV0IGRvbid0IGhhdmUgaXQgeWV0IC0gY2FsbCBwcmVwYXJlXG4gICAgICByZXR1cm4gaW5zdGFuY2UucHJlcGFyZShwYXJhbXMpO1xuICAgIH1cblxuICAgIC8vIEhhdmUgYXBwcm92YWwgLSB0cmlnZ2VyIHdpdGggYXBwcm92YWwgY29udGV4dFxuICAgIHJldHVybiBpbnN0YW5jZS5leGVjdXRlVHJpZ2dlcihwYXJhbXMsIGFwcHJvdmFsQ29udGV4dCk7XG4gIH1cblxuICBwcml2YXRlIHdyaXRlT3V0cHV0KG91dHB1dDogU3RlcE91dHB1dCk6IHZvaWQge1xuICAgIGNvbnN0IG91dHB1dERpciA9IHBhdGguZGlybmFtZSh0aGlzLm91dHB1dFBhdGgpO1xuICAgIGlmICghZnMuZXhpc3RzU3luYyhvdXRwdXREaXIpKSB7XG4gICAgICBmcy5ta2RpclN5bmMob3V0cHV0RGlyLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICB9XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKHRoaXMub3V0cHV0UGF0aCwgSlNPTi5zdHJpbmdpZnkob3V0cHV0LCBudWxsLCAyKSk7XG4gIH1cbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@ const path = require("path");
|
|
|
5
5
|
const { execSync } = require("child_process");
|
|
6
6
|
|
|
7
7
|
// Get optional folder name from command line args, default to "step-registry"
|
|
8
|
-
const folderName = process.argv[
|
|
8
|
+
const folderName = process.argv[3] || "step-registry";
|
|
9
9
|
|
|
10
10
|
// Define the base directory
|
|
11
11
|
const baseDir = path.join(process.cwd(), folderName);
|
|
@@ -67,7 +67,10 @@ export class RealDeploymentService implements DeploymentService {
|
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
`;
|
|
70
|
-
fs.writeFileSync(
|
|
70
|
+
fs.writeFileSync(
|
|
71
|
+
path.join(srcDir, "deployment-service.ts"),
|
|
72
|
+
deploymentServiceContent
|
|
73
|
+
);
|
|
71
74
|
|
|
72
75
|
// Create my-first-step.ts
|
|
73
76
|
console.log("Creating my-first-step.ts...");
|
|
@@ -162,7 +165,7 @@ const tsconfigContent = `{
|
|
|
162
165
|
"outDir": "./dist",
|
|
163
166
|
"rootDir": "./src"
|
|
164
167
|
},
|
|
165
|
-
"include": ["src/**/*"
|
|
168
|
+
"include": ["src/**/*"],
|
|
166
169
|
"exclude": ["node_modules", "dist"]
|
|
167
170
|
}
|
|
168
171
|
`;
|
|
@@ -277,16 +280,16 @@ describe("MyFirstStep", () => {
|
|
|
277
280
|
fs.writeFileSync(path.join(tstStepsDir, "my-first-step.test.ts"), testContent);
|
|
278
281
|
|
|
279
282
|
// Update package.json to add build and start scripts
|
|
280
|
-
console.log(
|
|
281
|
-
const packageJsonPath = path.join(baseDir,
|
|
282
|
-
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath,
|
|
283
|
+
console.log("Adding build and start scripts to package.json...");
|
|
284
|
+
const packageJsonPath = path.join(baseDir, "package.json");
|
|
285
|
+
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, "utf8"));
|
|
283
286
|
packageJson.scripts = {
|
|
284
287
|
...packageJson.scripts,
|
|
285
|
-
"build-step-registry": "tsc -p tsconfig.json",
|
|
288
|
+
"build-step-registry": "npm install && tsc -p tsconfig.json",
|
|
286
289
|
"start-step-registry": "node ./dist/index.js",
|
|
287
|
-
|
|
290
|
+
test: "jest",
|
|
288
291
|
"test:watch": "jest --watch",
|
|
289
|
-
"test:coverage": "jest --coverage"
|
|
292
|
+
"test:coverage": "jest --coverage",
|
|
290
293
|
};
|
|
291
294
|
fs.writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2));
|
|
292
295
|
|