@pipeline-builder/pipeline-manager 4.1.18 → 4.1.19
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/plugin-resolver.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/plugin-resolver.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAsG5C;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA+ClC"}
|
|
@@ -60,16 +60,18 @@ function collectPluginRefs(props) {
|
|
|
60
60
|
}
|
|
61
61
|
/**
|
|
62
62
|
* Lookup refusals that must STOP the synth rather than fall back to
|
|
63
|
-
* deploy-time resolution: an image whose signature doesn't verify,
|
|
64
|
-
*
|
|
65
|
-
* suspended)
|
|
66
|
-
*
|
|
63
|
+
* deploy-time resolution: an image whose signature doesn't verify, a listing
|
|
64
|
+
* the org can't use (not installed, blocked by its policy, yanked or
|
|
65
|
+
* suspended), and — with `PLUGIN_BLOCK_ON_NEW_CRITICAL` on — a pin to a
|
|
66
|
+
* version the nightly rescan flagged. Falling back would quietly turn each into
|
|
67
|
+
* an unresolved step that fails at run time instead of now.
|
|
67
68
|
*/
|
|
68
69
|
const FATAL_LOOKUP_CODES = [
|
|
69
70
|
ErrorCode.IMAGE_VERIFICATION_FAILED,
|
|
70
71
|
ErrorCode.PLUGIN_NOT_INSTALLED,
|
|
71
72
|
ErrorCode.PLUGIN_BLOCKED_BY_POLICY,
|
|
72
73
|
ErrorCode.PLUGIN_UNAVAILABLE,
|
|
74
|
+
ErrorCode.PLUGIN_VERSION_VULN_BLOCKED,
|
|
73
75
|
];
|
|
74
76
|
/** The error code of a plugin service answer, when it is one of {@link FATAL_LOOKUP_CODES}. */
|
|
75
77
|
function fatalLookupCode(err) {
|
|
@@ -77,6 +79,12 @@ function fatalLookupCode(err) {
|
|
|
77
79
|
const code = data && typeof data === 'object' ? data.code : undefined;
|
|
78
80
|
return typeof code === 'string' && FATAL_LOOKUP_CODES.includes(code) ? code : null;
|
|
79
81
|
}
|
|
82
|
+
/** The plugin service's own refusal message, when the answer carries one. */
|
|
83
|
+
function serviceMessage(err) {
|
|
84
|
+
const data = err?.response?.data;
|
|
85
|
+
const message = data && typeof data === 'object' ? data.message : undefined;
|
|
86
|
+
return typeof message === 'string' && message.length > 0 ? message : null;
|
|
87
|
+
}
|
|
80
88
|
/**
|
|
81
89
|
* Pre-resolve plugins by calling the same `POST /api/plugins/lookup` endpoint
|
|
82
90
|
* the deploy-time custom resource Lambda uses. Returning the full Plugin
|
|
@@ -130,6 +138,10 @@ export async function resolvePluginsForProps(client, props) {
|
|
|
130
138
|
if (fatal === ErrorCode.IMAGE_VERIFICATION_FAILED) {
|
|
131
139
|
throw new Error(`Plugin "${label}" image failed signature verification: ${errorMessage(err)}`);
|
|
132
140
|
}
|
|
141
|
+
// The block-mode refusal already names the version, the CVEs and the fix:
|
|
142
|
+
// print it as the platform wrote it.
|
|
143
|
+
if (fatal === ErrorCode.PLUGIN_VERSION_VULN_BLOCKED)
|
|
144
|
+
throw new Error(serviceMessage(err) ?? errorMessage(err));
|
|
133
145
|
if (fatal)
|
|
134
146
|
throw new Error(`Plugin "${label}" can't be used (${fatal}): ${errorMessage(err)}`);
|
|
135
147
|
const msg = errorMessage(err);
|
|
@@ -138,4 +150,4 @@ export async function resolvePluginsForProps(client, props) {
|
|
|
138
150
|
}));
|
|
139
151
|
return resolved;
|
|
140
152
|
}
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLXJlc29sdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL3BsdWdpbi1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFXakQ7Ozs7R0FJRztBQUNILFNBQVMsUUFBUSxDQUFDLEdBQWM7SUFDOUIsT0FBTyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNsQyxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFTLGlCQUFpQixDQUFDLEtBQThCO0lBQ3ZELE1BQU0sSUFBSSxHQUFnQixFQUFFLENBQUM7SUFDN0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7SUFFdkMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxHQUFZLEVBQVEsRUFBRTtRQUNsQyxJQUFJLENBQUMsR0FBRyxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVE7WUFBRSxPQUFPO1FBQzVDLE1BQU0sQ0FBQyxHQUFHLEdBQWdCLENBQUM7UUFDM0IsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUNwQixNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEIsd0VBQXdFO1FBQ3hFLDJFQUEyRTtRQUMzRSxNQUFNLElBQUksR0FBSSxDQUFDLENBQUMsTUFBTSxFQUFFLElBQTJCLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQztRQUM5RCxNQUFNLE1BQU0sR0FBRyxD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R0FBRyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM5QixZQUFZLENBQUMsV0FBVyxLQUFLLDRCQUE0QixHQUFHLDRDQUE0QyxDQUFDLENBQUM7UUFDNUcsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFSixPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB7IEVycm9yQ29kZSwgZXJyb3JNZXNzYWdlIH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvYXBpLWNvcmUnO1xuaW1wb3J0IHsgcGx1Z2luQXJ0aWZhY3RBbGlhcywgcGx1Z2luTG9va3VwRmlsdGVyLCB1bndyYXBMb29rdXAgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9waXBlbGluZS1jb3JlJztcbmltcG9ydCB7IEFwaUNsaWVudCB9IGZyb20gJy4vYXBpLWNsaWVudC5qcyc7XG5pbXBvcnQgeyBwcmludFdhcm5pbmcgfSBmcm9tICcuL291dHB1dC11dGlscy5qcyc7XG5cbi8qKiBNaW5pbWFsIHBsdWdpbiByZWZlcmVuY2Ugc2hhcGUg4oCUIG1hdGNoZXMgUGx1Z2luT3B0aW9ucyBmcm9tIHBpcGVsaW5lLWNvcmUuICovXG5pbnRlcmZhY2UgUGx1Z2luUmVmIHtcbiAgbmFtZTogc3RyaW5nO1xuICAvKiogUHVibGlzaGVyIGhhbmRsZSBvZiBhbiBpbnN0YWxsZWQgbGlzdGluZy4gKi9cbiAgcHVibGlzaGVyPzogc3RyaW5nO1xuICBhbGlhcz86IHN0cmluZztcbiAgZmlsdGVyPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbi8qKlxuICogQ2FjaGUga2V5IG1hdGNoaW5nIGBQbHVnaW5Mb29rdXAubm9ybWFsaXplKClgOiB0aGUgZXhwbGljaXQgYWxpYXMgd2hlbiBzZXQsXG4gKiBvdGhlcndpc2UgYFs8cHVibGlzaGVyPi1dPG5hbWU+LWFsaWFzYCDigJQgcGlwZWxpbmUtY29yZSdzXG4gKiBgcGx1Z2luQXJ0aWZhY3RBbGlhc2AsIHRoZSBvbmUgcnVsZSBldmVyeSBjb25zdW1lciBvZiB0aGlzIG1hcCB1c2VzLlxuICovXG5mdW5jdGlvbiBjYWNoZUtleShyZWY6IFBsdWdpblJlZik6IHN0cmluZyB7XG4gIHJldHVybiBwbHVnaW5BcnRpZmFjdEFsaWFzKHJlZik7XG59XG5cbi8qKlxuICogV2FsayB0aGUgcGlwZWxpbmUgcHJvcHMgdHJlZSB0byBjb2xsZWN0IGV2ZXJ5IHBsdWdpbiByZWZlcmVuY2UuIFBsdWdpbnNcbiAqIGFwcGVhciBhdCBgc3ludGgucGx1Z2luYCBhbmQgYXQgYHN0YWdlc1tdLnN0ZXBzW10ucGx1Z2luYC4gRW50cmllcyBhcmVcbiAqIGRlLWR1cGxpY2F0ZWQgYnkgYGNhY2hlS2V5KClgIOKAlCB0aGUgc2FtZSBrZXkgYFBsdWdpbkxvb2t1cC5wbHVnaW4oKWAgdXNlcyxcbiAqIHNvIHRoZSByZXNvbHZlZC1wbHVnaW5zIG1hcCBsb29rdXBzIG1hdGNoIGRvd25zdHJlYW0uXG4gKi9cbmZ1bmN0aW9uIGNvbGxlY3RQbHVnaW5SZWZzKHByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IFBsdWdpblJlZltdIHtcbiAgY29uc3QgcmVmczogUGx1Z2luUmVmW10gPSBbXTtcbiAgY29uc3Qgc2VlbiA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG5cbiAgY29uc3QgcHVzaCA9IChyYXc6IHVua25vd24pOiB2b2lkID0+IHtcbiAgICBpZiAoIXJhdyB8fCB0eXBlb2YgcmF3ICE9PSAnb2JqZWN0JykgcmV0dXJuO1xuICAgIGNvbnN0IHIgPSByYXcgYXMgUGx1Z2luUmVmO1xuICAgIGlmICghci5uYW1lKSByZXR1cm47XG4gICAgY29uc3Qga2V5ID0gY2FjaGVLZXkocik7XG4gICAgLy8gVGhlIG5hbWUgdGhlIGxvb2t1cCB3aWxsIFRBUkdFVCDigJQgYW4gZXhwbGljaXQgYGZpbHRlci5uYW1lYCB3aW5zIChzZWVcbiAgICAvLyBiZWxvdyksIHNvIHR3byByZWZzIHRoYXQgcmVzb2x2ZSB0byB0aGUgc2FtZSBwbHVnaW4gYXJlIG5vdCBhIGNvbGxpc2lvbi5cbiAgICBjb25zdCBuYW1lID0gKHIuZmlsdGVyPy5uYW1lIGFzIHN0cmluZyB8IHVuZGVmaW5lZCkgPz8gci5uYW1lO1xuICAgIGNvbnN0IHRhcmdldCA9IHIucHVibGlzaGVyID8gYCR7ci5wdWJsaXNoZXJ9LyR7bmFtZX1gIDogbmFtZTtcbiAgICBjb25zdCBob2xkZXIgPSBzZWVuLmdldChrZXkpO1xuICAgIGlmIChob2xkZXIgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gT25lIGFsaWFzIGNhbiBvbmx5IGV2ZXIgbWVhbiBvbmUgcGx1Z2luLiBEZWR1cGxpY2F0aW5nIG9uIHRoZSBhbGlhc1xuICAgICAgLy8gYWxvbmUga2VwdCB0aGUgRklSU1QgcGx1Z2luIGFuZCBzaWxlbnRseSBkcm9wcGVkIHRoZSBzZWNvbmQsIHNvIGEgc3RlcFxuICAgICAgLy8gZGVjbGFyaW5nIGB7IG5hbWU6ICdtYXZlbi1idWlsZCcsIGFsaWFzOiAnYnVpbGQnIH1gIGFmdGVyIGFub3RoZXJcbiAgICAgIC8vIGRlY2xhcmluZyBgeyBuYW1lOiAnbm9kZWpzLWJ1aWxkJywgYWxpYXM6ICdidWlsZCcgfWAgcmFuIG5vZGVqcy1idWlsZCdzXG4gICAgICAvLyBpbWFnZSBhbmQgY29tbWFuZHMg4oCUIG5vIGVycm9yLCBqdXN0IHRoZSB3cm9uZyBidWlsZC5cbiAgICAgIGlmIChob2xkZXIgIT09IHRhcmdldCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYFBsdWdpbiBhbGlhcyBcIiR7a2V5fVwiIGlzIHVzZWQgZm9yIHR3byBkaWZmZXJlbnQgcGx1Z2lucyAoXCIke2hvbGRlcn1cIiBhbmQgXCIke3RhcmdldH1cIikuIGBcbiAgICAgICAgICArICdHaXZlIGVhY2ggcGx1Z2luIGl0cyBvd24gYWxpYXMuJyxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgc2Vlbi5zZXQoa2V5LCB0YXJnZXQpO1xuICAgIHJlZnMucHVzaChyKTtcbiAgfTtcblxuICBjb25zdCBzeW50aCA9IHByb3BzLnN5bnRoIGFzIHsgcGx1Z2luPzogdW5rbm93biB9IHwgdW5kZWZpbmVkO1xuICBwdXNoKHN5bnRoPy5wbHVnaW4pO1xuXG4gIGNvbnN0IHN0YWdlcyA9IHByb3BzLnN0YWdlcyBhcyBBcnJheTx7IHN0ZXBzPzogQXJyYXk8eyBwbHVnaW4/OiB1bmtub3duIH0+IH0+IHwgdW5kZWZpbmVkO1xuICBmb3IgKGNvbnN0IHN0YWdlIG9mIHN0YWdlcyA/PyBbXSkge1xuICAgIGZvciAoY29uc3Qgc3RlcCBvZiBzdGFnZS5zdGVwcyA/PyBbXSkge1xuICAgICAgcHVzaChzdGVwLnBsdWdpbik7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlZnM7XG59XG5cbi8qKlxuICogTG9va3VwIHJlZnVzYWxzIHRoYXQgbXVzdCBTVE9QIHRoZSBzeW50aCByYXRoZXIgdGhhbiBmYWxsIGJhY2sgdG9cbiAqIGRlcGxveS10aW1lIHJlc29sdXRpb246IGFuIGltYWdlIHdob3NlIHNpZ25hdHVyZSBkb2Vzbid0IHZlcmlmeSwgYW5kIGFcbiAqIGxpc3RpbmcgdGhlIG9yZyBjYW4ndCB1c2UgKG5vdCBpbnN0YWxsZWQsIGJsb2NrZWQgYnkgaXRzIHBvbGljeSwgeWFua2VkIG9yXG4gKiBzdXNwZW5kZWQpLiBGYWxsaW5nIGJhY2sgd291bGQgcXVpZXRseSB0dXJuXG4gKiBlYWNoIGludG8gYW4gdW5yZXNvbHZlZCBzdGVwIHRoYXQgZmFpbHMgYXQgcnVuIHRpbWUgaW5zdGVhZCBvZiBub3cuXG4gKi9cbmNvbnN0IEZBVEFMX0xPT0tVUF9DT0RFUzogcmVhZG9ubHkgc3RyaW5nW10gPSBbXG4gIEVycm9yQ29kZS5JTUFHRV9WRVJJRklDQVRJT05fRkFJTEVELFxuICBFcnJvckNvZGUuUExVR0lOX05PVF9JTlNUQUxMRUQsXG4gIEVycm9yQ29kZS5QTFVHSU5fQkxPQ0tFRF9CWV9QT0xJQ1ksXG4gIEVycm9yQ29kZS5QTFVHSU5fVU5BVkFJTEFCTEUsXG5dO1xuXG4vKiogVGhlIGVycm9yIGNvZGUgb2YgYSBwbHVnaW4gc2VydmljZSBhbnN3ZXIsIHdoZW4gaXQgaXMgb25lIG9mIHtAbGluayBGQVRBTF9MT09LVVBfQ09ERVN9LiAqL1xuZnVuY3Rpb24gZmF0YWxMb29rdXBDb2RlKGVycjogdW5rbm93bik6IHN0cmluZyB8IG51bGwge1xuICBjb25zdCBkYXRhID0gKGVyciBhcyB7IHJlc3BvbnNlPzogeyBkYXRhPzogdW5rbm93biB9IH0gfCB1bmRlZmluZWQpPy5yZXNwb25zZT8uZGF0YTtcbiAgY29uc3QgY29kZSA9IGRhdGEgJiYgdHlwZW9mIGRhdGEgPT09ICdvYmplY3QnID8gKGRhdGEgYXMgeyBjb2RlPzogdW5rbm93biB9KS5jb2RlIDogdW5kZWZpbmVkO1xuICByZXR1cm4gdHlwZW9mIGNvZGUgPT09ICdzdHJpbmcnICYmIEZBVEFMX0xPT0tVUF9DT0RFUy5pbmNsdWRlcyhjb2RlKSA/IGNvZGUgOiBudWxsO1xufVxuXG4vKipcbiAqIFByZS1yZXNvbHZlIHBsdWdpbnMgYnkgY2FsbGluZyB0aGUgc2FtZSBgUE9TVCAvYXBpL3BsdWdpbnMvbG9va3VwYCBlbmRwb2ludFxuICogdGhlIGRlcGxveS10aW1lIGN1c3RvbSByZXNvdXJjZSBMYW1iZGEgdXNlcy4gUmV0dXJuaW5nIHRoZSBmdWxsIFBsdWdpblxuICogcmVjb3JkIGF0IHN5bnRoIHRpbWUgaXMgd2hhdCBhbGxvd3MgdGhlIHJlc3VsdGluZyBDRk4gdGVtcGxhdGUgdG8gc2hpcFxuICogd2l0aCByZWFsIENvZGVCdWlsZCBpbWFnZSBVUklzIChgPGhvc3Q+Lzxucz4vPG5hbWU+Ojx2ZXJzaW9uPmApIHJhdGhlciB0aGFuXG4gKiB0aGUgYGF3cy9jb2RlYnVpbGQvc3RhbmRhcmQ6Ny4wYCBmYWxsYmFjayB0aGF0IHRoZSBzeW50aC10aW1lIHRva2VuIHBhdGhcbiAqIGZvcmNlcy5cbiAqXG4gKiBGYWlsdXJlcyBhcmUgbm9uLWZhdGFsOiBhIG1pc3NpbmcgcGx1Z2luIG9yIHVucmVhY2hhYmxlIEFQSSBsb2dzIGEgd2FybmluZ1xuICogYW5kIGZhbGxzIHRocm91Z2ggdG8gdGhlIGRlcGxveS10aW1lIGN1c3RvbSByZXNvdXJjZSBwYXRoIHNvIHBhcnRpYWxcbiAqIHBsYXRmb3JtIG91dGFnZXMgZG9uJ3QgYmxvY2sgc3ludGgvZGVwbG95LiBUaGUgZXhjZXB0aW9uIGlzIGFuIGltYWdlIHRoYXRcbiAqIGZhaWxzIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24g4oCUIHRoYXQgYWJvcnRzIHRoZSBzeW50aC5cbiAqXG4gKiBLZXllZCBieSBgYWxpYXMgfHwgbmFtZWAgdG8gbWF0Y2ggYFBsdWdpbkxvb2t1cC5wbHVnaW4oKWAuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXNvbHZlUGx1Z2luc0ZvclByb3BzKFxuICBjbGllbnQ6IEFwaUNsaWVudCxcbiAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4ge1xuICBjb25zdCByZWZzID0gY29sbGVjdFBsdWdpblJlZnMocHJvcHMpO1xuICBpZiAocmVmcy5sZW5ndGggPT09IDApIHJldHVybiB7fTtcblxuICBjb25zdCByZXNvbHZlZDogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fTtcblxuICBhd2FpdCBQcm9taXNlLmFsbChyZWZzLm1hcChhc3luYyAocmVmKSA9PiB7XG4gICAgY29uc3Qga2V5ID0gY2FjaGVLZXkocmVmKTtcbiAgICBjb25zdCBsYWJlbCA9IHJlZi5wdWJsaXNoZXIgPyBgJHtyZWYucHVibGlzaGVyfS8ke3JlZi5uYW1lfWAgOiByZWYubmFtZTtcbiAgICAvLyBUaGUgcGx1Z2luIE5BTUUgbGl2ZXMgb24gdGhlIHJlZiAoYSBzaWJsaW5nIG9mIGBmaWx0ZXJgKSwgTk9UIGluc2lkZSB0aGVcbiAgICAvLyBmaWx0ZXIgb2JqZWN0IOKAlCBidXQgdGhlIGxvb2t1cCBtYXRjaGVzIG9uIHRoZSBmaWx0ZXIuIEEgZmlsdGVyIHdpdGhvdXRcbiAgICAvLyBgbmFtZWAgKGUuZy4gYHt2ZXJzaW9uLCB2aXNpYmlsaXR5LCBpc0FjdGl2ZSwgaXNEZWZhdWx0fWApIG1hdGNoZXMgQU5ZXG4gICAgLy8gcGx1Z2luIHdpdGggdGhvc2UgYXR0cmlidXRlcywgYW5kIHRoZSBlbmRwb2ludCByZXR1cm5zIGFuIGFyYml0cmFyeSBvbmVcbiAgICAvLyAoc2VlbjogYGRvY2tlcmZpbGUtbXVsdGktcHJvdmlkZXJgKS4gVGhhdCBtYWRlIHRoZSBzeW50aCBhbmQgZXZlcnkgc3RlcFxuICAgIC8vIHJlc29sdmUgdG8gdGhlIFdST05HIHBsdWdpbi4gU28gd2hlbiB0aGUgZmlsdGVyIG9taXRzIGBuYW1lYCwgZmFsbCBiYWNrIHRvXG4gICAgLy8gdGhlIHJlZidzIHBsdWdpbiBuYW1lOyBhbiBleHBsaWNpdCBmaWx0ZXIgYG5hbWVgIHN0aWxsIHRha2VzIHByZWNlZGVuY2UuXG4gICAgLy8gU2hhcmVkIHdpdGggdGhlIHBpcGVsaW5lIHNlcnZpY2UncyBjb250cmFjdCBjaGVjayAoc2FtZSBmaWx0ZXIsIHNhbWUgcGx1Z2luKS5cbiAgICBjb25zdCBmaWx0ZXIgPSBwbHVnaW5Mb29rdXBGaWx0ZXIocmVmKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzID0gYXdhaXQgY2xpZW50LnBvc3Q8dW5rbm93bj4oJy9hcGkvcGx1Z2lucy9sb29rdXAnLCB7IGZpbHRlciB9KTtcbiAgICAgIGNvbnN0IHsgcGx1Z2luLCB3YXJuaW5ncyB9ID0gdW53cmFwTG9va3VwKHJlcyk7XG4gICAgICBmb3IgKGNvbnN0IHdhcm5pbmcgb2Ygd2FybmluZ3MpIHtcbiAgICAgICAgcHJpbnRXYXJuaW5nKGBQbHVnaW4gXCIke2xhYmVsfVwiOiAke3dhcm5pbmd9YCk7XG4gICAgICB9XG4gICAgICBpZiAocGx1Z2luKSB7XG4gICAgICAgIHJlc29sdmVkW2tleV0gPSBwbHVnaW47XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwcmludFdhcm5pbmcoYFBsdWdpbiBcIiR7bGFiZWx9XCIgbG9va3VwIHJldHVybmVkIG5vIHJlY29yZCDigJQgZmFsbGluZyBiYWNrIHRvIGRlcGxveS10aW1lIHJlc29sdXRpb25gKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIC8vIEEgcGx1Z2luIHdob3NlIGltYWdlIHNpZ25hdHVyZSBkb2Vzbid0IHZlcmlmeSwgb3IgYSBsaXN0aW5nIHRoZSBvcmdcbiAgICAgIC8vIGNhbid0IHVzZSwgaXMgTk9UIGFuIG91dGFnZSB0byByaWRlIG91dDogZmFsbGluZyBiYWNrIHdvdWxkIHF1aWV0bHlcbiAgICAgIC8vIHR1cm4gaXQgaW50byBhbiB1bnJlc29sdmVkIHN0ZXAuIFN0b3AuXG4gICAgICBjb25zdCBmYXRhbCA9IGZhdGFsTG9va3VwQ29kZShlcnIpO1xuICAgICAgaWYgKGZhdGFsID09PSBFcnJvckNvZGUuSU1BR0VfVkVSSUZJQ0FUSU9OX0ZBSUxFRCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFBsdWdpbiBcIiR7bGFiZWx9XCIgaW1hZ2UgZmFpbGVkIHNpZ25hdHVyZSB2ZXJpZmljYXRpb246ICR7ZXJyb3JNZXNzYWdlKGVycil9YCk7XG4gICAgICB9XG4gICAgICBpZiAoZmF0YWwpIHRocm93IG5ldyBFcnJvcihgUGx1Z2luIFwiJHtsYWJlbH1cIiBjYW4ndCBiZSB1c2VkICgke2ZhdGFsfSk6ICR7ZXJyb3JNZXNzYWdlKGVycil9YCk7XG4gICAgICBjb25zdCBtc2cgPSBlcnJvck1lc3NhZ2UoZXJyKTtcbiAgICAgIHByaW50V2FybmluZyhgUGx1Z2luIFwiJHtsYWJlbH1cIiBwcmUtcmVzb2x1dGlvbiBmYWlsZWQgKCR7bXNnfSkg4oCUIGZhbGxpbmcgYmFjayB0byBkZXBsb3ktdGltZSByZXNvbHV0aW9uYCk7XG4gICAgfVxuICB9KSk7XG5cbiAgcmV0dXJuIHJlc29sdmVkO1xufVxuIl19
|
|
153
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLXJlc29sdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL3BsdWdpbi1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFXakQ7Ozs7R0FJRztBQUNILFNBQVMsUUFBUSxDQUFDLEdBQWM7SUFDOUIsT0FBTyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNsQyxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFTLGlCQUFpQixDQUFDLEtBQThCO0lBQ3ZELE1BQU0sSUFBSSxHQUFnQixFQUFFLENBQUM7SUFDN0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7SUFFdkMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxHQUFZLEVBQVEsRUFBRTtRQUNsQyxJQUFJLENBQUMsR0FBRyxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVE7WUFBRSxPQUFPO1FBQzVDLE1BQU0sQ0FBQyxHQUFHLEdBQWdCLENBQUM7UUFDM0IsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUNwQixNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEIsd0VBQXdFO1FBQ3hFLDJFQUEyRTtRQUMzRSxNQUFNLElBQUksR0FBSSxDQUFDLENBQUMsTUFBTSxFQUFFLElBQTJCLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQztRQUM5RCxNQUFNLE1BQU0sR0FBRyxD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QztZQUNiLHNFQUFzRTtZQUN0RSxzRUFBc0U7WUFDdEUseUNBQXlDO1lBQ3pDLE1BQU0sS0FBSyxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNuQyxJQUFJLEtBQUssS0FBSyxTQUFTLENBQUMseUJBQXlCLEVBQUUsQ0FBQztnQkFDbEQsTUFBTSxJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssMENBQTBDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDakcsQ0FBQztZQUNELDBFQUEwRTtZQUMxRSxxQ0FBcUM7WUFDckMsSUFBSSxLQUFLLEtBQUssU0FBUyxDQUFDLDJCQUEyQjtnQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUMvRyxJQUFJLEtBQUs7Z0JBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssb0JBQW9CLEtBQUssTUFBTSxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQy9GLE1BQU0sR0FBRyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM5QixZQUFZLENBQUMsV0FBVyxLQUFLLDRCQUE0QixHQUFHLDRDQUE0QyxDQUFDLENBQUM7UUFDNUcsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFSixPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB7IEVycm9yQ29kZSwgZXJyb3JNZXNzYWdlIH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvYXBpLWNvcmUnO1xuaW1wb3J0IHsgcGx1Z2luQXJ0aWZhY3RBbGlhcywgcGx1Z2luTG9va3VwRmlsdGVyLCB1bndyYXBMb29rdXAgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9waXBlbGluZS1jb3JlJztcbmltcG9ydCB7IEFwaUNsaWVudCB9IGZyb20gJy4vYXBpLWNsaWVudC5qcyc7XG5pbXBvcnQgeyBwcmludFdhcm5pbmcgfSBmcm9tICcuL291dHB1dC11dGlscy5qcyc7XG5cbi8qKiBNaW5pbWFsIHBsdWdpbiByZWZlcmVuY2Ugc2hhcGUg4oCUIG1hdGNoZXMgUGx1Z2luT3B0aW9ucyBmcm9tIHBpcGVsaW5lLWNvcmUuICovXG5pbnRlcmZhY2UgUGx1Z2luUmVmIHtcbiAgbmFtZTogc3RyaW5nO1xuICAvKiogUHVibGlzaGVyIGhhbmRsZSBvZiBhbiBpbnN0YWxsZWQgbGlzdGluZy4gKi9cbiAgcHVibGlzaGVyPzogc3RyaW5nO1xuICBhbGlhcz86IHN0cmluZztcbiAgZmlsdGVyPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbi8qKlxuICogQ2FjaGUga2V5IG1hdGNoaW5nIGBQbHVnaW5Mb29rdXAubm9ybWFsaXplKClgOiB0aGUgZXhwbGljaXQgYWxpYXMgd2hlbiBzZXQsXG4gKiBvdGhlcndpc2UgYFs8cHVibGlzaGVyPi1dPG5hbWU+LWFsaWFzYCDigJQgcGlwZWxpbmUtY29yZSdzXG4gKiBgcGx1Z2luQXJ0aWZhY3RBbGlhc2AsIHRoZSBvbmUgcnVsZSBldmVyeSBjb25zdW1lciBvZiB0aGlzIG1hcCB1c2VzLlxuICovXG5mdW5jdGlvbiBjYWNoZUtleShyZWY6IFBsdWdpblJlZik6IHN0cmluZyB7XG4gIHJldHVybiBwbHVnaW5BcnRpZmFjdEFsaWFzKHJlZik7XG59XG5cbi8qKlxuICogV2FsayB0aGUgcGlwZWxpbmUgcHJvcHMgdHJlZSB0byBjb2xsZWN0IGV2ZXJ5IHBsdWdpbiByZWZlcmVuY2UuIFBsdWdpbnNcbiAqIGFwcGVhciBhdCBgc3ludGgucGx1Z2luYCBhbmQgYXQgYHN0YWdlc1tdLnN0ZXBzW10ucGx1Z2luYC4gRW50cmllcyBhcmVcbiAqIGRlLWR1cGxpY2F0ZWQgYnkgYGNhY2hlS2V5KClgIOKAlCB0aGUgc2FtZSBrZXkgYFBsdWdpbkxvb2t1cC5wbHVnaW4oKWAgdXNlcyxcbiAqIHNvIHRoZSByZXNvbHZlZC1wbHVnaW5zIG1hcCBsb29rdXBzIG1hdGNoIGRvd25zdHJlYW0uXG4gKi9cbmZ1bmN0aW9uIGNvbGxlY3RQbHVnaW5SZWZzKHByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IFBsdWdpblJlZltdIHtcbiAgY29uc3QgcmVmczogUGx1Z2luUmVmW10gPSBbXTtcbiAgY29uc3Qgc2VlbiA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG5cbiAgY29uc3QgcHVzaCA9IChyYXc6IHVua25vd24pOiB2b2lkID0+IHtcbiAgICBpZiAoIXJhdyB8fCB0eXBlb2YgcmF3ICE9PSAnb2JqZWN0JykgcmV0dXJuO1xuICAgIGNvbnN0IHIgPSByYXcgYXMgUGx1Z2luUmVmO1xuICAgIGlmICghci5uYW1lKSByZXR1cm47XG4gICAgY29uc3Qga2V5ID0gY2FjaGVLZXkocik7XG4gICAgLy8gVGhlIG5hbWUgdGhlIGxvb2t1cCB3aWxsIFRBUkdFVCDigJQgYW4gZXhwbGljaXQgYGZpbHRlci5uYW1lYCB3aW5zIChzZWVcbiAgICAvLyBiZWxvdyksIHNvIHR3byByZWZzIHRoYXQgcmVzb2x2ZSB0byB0aGUgc2FtZSBwbHVnaW4gYXJlIG5vdCBhIGNvbGxpc2lvbi5cbiAgICBjb25zdCBuYW1lID0gKHIuZmlsdGVyPy5uYW1lIGFzIHN0cmluZyB8IHVuZGVmaW5lZCkgPz8gci5uYW1lO1xuICAgIGNvbnN0IHRhcmdldCA9IHIucHVibGlzaGVyID8gYCR7ci5wdWJsaXNoZXJ9LyR7bmFtZX1gIDogbmFtZTtcbiAgICBjb25zdCBob2xkZXIgPSBzZWVuLmdldChrZXkpO1xuICAgIGlmIChob2xkZXIgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gT25lIGFsaWFzIGNhbiBvbmx5IGV2ZXIgbWVhbiBvbmUgcGx1Z2luLiBEZWR1cGxpY2F0aW5nIG9uIHRoZSBhbGlhc1xuICAgICAgLy8gYWxvbmUga2VwdCB0aGUgRklSU1QgcGx1Z2luIGFuZCBzaWxlbnRseSBkcm9wcGVkIHRoZSBzZWNvbmQsIHNvIGEgc3RlcFxuICAgICAgLy8gZGVjbGFyaW5nIGB7IG5hbWU6ICdtYXZlbi1idWlsZCcsIGFsaWFzOiAnYnVpbGQnIH1gIGFmdGVyIGFub3RoZXJcbiAgICAgIC8vIGRlY2xhcmluZyBgeyBuYW1lOiAnbm9kZWpzLWJ1aWxkJywgYWxpYXM6ICdidWlsZCcgfWAgcmFuIG5vZGVqcy1idWlsZCdzXG4gICAgICAvLyBpbWFnZSBhbmQgY29tbWFuZHMg4oCUIG5vIGVycm9yLCBqdXN0IHRoZSB3cm9uZyBidWlsZC5cbiAgICAgIGlmIChob2xkZXIgIT09IHRhcmdldCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYFBsdWdpbiBhbGlhcyBcIiR7a2V5fVwiIGlzIHVzZWQgZm9yIHR3byBkaWZmZXJlbnQgcGx1Z2lucyAoXCIke2hvbGRlcn1cIiBhbmQgXCIke3RhcmdldH1cIikuIGBcbiAgICAgICAgICArICdHaXZlIGVhY2ggcGx1Z2luIGl0cyBvd24gYWxpYXMuJyxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgc2Vlbi5zZXQoa2V5LCB0YXJnZXQpO1xuICAgIHJlZnMucHVzaChyKTtcbiAgfTtcblxuICBjb25zdCBzeW50aCA9IHByb3BzLnN5bnRoIGFzIHsgcGx1Z2luPzogdW5rbm93biB9IHwgdW5kZWZpbmVkO1xuICBwdXNoKHN5bnRoPy5wbHVnaW4pO1xuXG4gIGNvbnN0IHN0YWdlcyA9IHByb3BzLnN0YWdlcyBhcyBBcnJheTx7IHN0ZXBzPzogQXJyYXk8eyBwbHVnaW4/OiB1bmtub3duIH0+IH0+IHwgdW5kZWZpbmVkO1xuICBmb3IgKGNvbnN0IHN0YWdlIG9mIHN0YWdlcyA/PyBbXSkge1xuICAgIGZvciAoY29uc3Qgc3RlcCBvZiBzdGFnZS5zdGVwcyA/PyBbXSkge1xuICAgICAgcHVzaChzdGVwLnBsdWdpbik7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlZnM7XG59XG5cbi8qKlxuICogTG9va3VwIHJlZnVzYWxzIHRoYXQgbXVzdCBTVE9QIHRoZSBzeW50aCByYXRoZXIgdGhhbiBmYWxsIGJhY2sgdG9cbiAqIGRlcGxveS10aW1lIHJlc29sdXRpb246IGFuIGltYWdlIHdob3NlIHNpZ25hdHVyZSBkb2Vzbid0IHZlcmlmeSwgYSBsaXN0aW5nXG4gKiB0aGUgb3JnIGNhbid0IHVzZSAobm90IGluc3RhbGxlZCwgYmxvY2tlZCBieSBpdHMgcG9saWN5LCB5YW5rZWQgb3JcbiAqIHN1c3BlbmRlZCksIGFuZCDigJQgd2l0aCBgUExVR0lOX0JMT0NLX09OX05FV19DUklUSUNBTGAgb24g4oCUIGEgcGluIHRvIGFcbiAqIHZlcnNpb24gdGhlIG5pZ2h0bHkgcmVzY2FuIGZsYWdnZWQuIEZhbGxpbmcgYmFjayB3b3VsZCBxdWlldGx5IHR1cm4gZWFjaCBpbnRvXG4gKiBhbiB1bnJlc29sdmVkIHN0ZXAgdGhhdCBmYWlscyBhdCBydW4gdGltZSBpbnN0ZWFkIG9mIG5vdy5cbiAqL1xuY29uc3QgRkFUQUxfTE9PS1VQX0NPREVTOiByZWFkb25seSBzdHJpbmdbXSA9IFtcbiAgRXJyb3JDb2RlLklNQUdFX1ZFUklGSUNBVElPTl9GQUlMRUQsXG4gIEVycm9yQ29kZS5QTFVHSU5fTk9UX0lOU1RBTExFRCxcbiAgRXJyb3JDb2RlLlBMVUdJTl9CTE9DS0VEX0JZX1BPTElDWSxcbiAgRXJyb3JDb2RlLlBMVUdJTl9VTkFWQUlMQUJMRSxcbiAgRXJyb3JDb2RlLlBMVUdJTl9WRVJTSU9OX1ZVTE5fQkxPQ0tFRCxcbl07XG5cbi8qKiBUaGUgZXJyb3IgY29kZSBvZiBhIHBsdWdpbiBzZXJ2aWNlIGFuc3dlciwgd2hlbiBpdCBpcyBvbmUgb2Yge0BsaW5rIEZBVEFMX0xPT0tVUF9DT0RFU30uICovXG5mdW5jdGlvbiBmYXRhbExvb2t1cENvZGUoZXJyOiB1bmtub3duKTogc3RyaW5nIHwgbnVsbCB7XG4gIGNvbnN0IGRhdGEgPSAoZXJyIGFzIHsgcmVzcG9uc2U/OiB7IGRhdGE/OiB1bmtub3duIH0gfSB8IHVuZGVmaW5lZCk/LnJlc3BvbnNlPy5kYXRhO1xuICBjb25zdCBjb2RlID0gZGF0YSAmJiB0eXBlb2YgZGF0YSA9PT0gJ29iamVjdCcgPyAoZGF0YSBhcyB7IGNvZGU/OiB1bmtub3duIH0pLmNvZGUgOiB1bmRlZmluZWQ7XG4gIHJldHVybiB0eXBlb2YgY29kZSA9PT0gJ3N0cmluZycgJiYgRkFUQUxfTE9PS1VQX0NPREVTLmluY2x1ZGVzKGNvZGUpID8gY29kZSA6IG51bGw7XG59XG5cbi8qKiBUaGUgcGx1Z2luIHNlcnZpY2UncyBvd24gcmVmdXNhbCBtZXNzYWdlLCB3aGVuIHRoZSBhbnN3ZXIgY2FycmllcyBvbmUuICovXG5mdW5jdGlvbiBzZXJ2aWNlTWVzc2FnZShlcnI6IHVua25vd24pOiBzdHJpbmcgfCBudWxsIHtcbiAgY29uc3QgZGF0YSA9IChlcnIgYXMgeyByZXNwb25zZT86IHsgZGF0YT86IHVua25vd24gfSB9IHwgdW5kZWZpbmVkKT8ucmVzcG9uc2U/LmRhdGE7XG4gIGNvbnN0IG1lc3NhZ2UgPSBkYXRhICYmIHR5cGVvZiBkYXRhID09PSAnb2JqZWN0JyA/IChkYXRhIGFzIHsgbWVzc2FnZT86IHVua25vd24gfSkubWVzc2FnZSA6IHVuZGVmaW5lZDtcbiAgcmV0dXJuIHR5cGVvZiBtZXNzYWdlID09PSAnc3RyaW5nJyAmJiBtZXNzYWdlLmxlbmd0aCA+IDAgPyBtZXNzYWdlIDogbnVsbDtcbn1cblxuLyoqXG4gKiBQcmUtcmVzb2x2ZSBwbHVnaW5zIGJ5IGNhbGxpbmcgdGhlIHNhbWUgYFBPU1QgL2FwaS9wbHVnaW5zL2xvb2t1cGAgZW5kcG9pbnRcbiAqIHRoZSBkZXBsb3ktdGltZSBjdXN0b20gcmVzb3VyY2UgTGFtYmRhIHVzZXMuIFJldHVybmluZyB0aGUgZnVsbCBQbHVnaW5cbiAqIHJlY29yZCBhdCBzeW50aCB0aW1lIGlzIHdoYXQgYWxsb3dzIHRoZSByZXN1bHRpbmcgQ0ZOIHRlbXBsYXRlIHRvIHNoaXBcbiAqIHdpdGggcmVhbCBDb2RlQnVpbGQgaW1hZ2UgVVJJcyAoYDxob3N0Pi88bnM+LzxuYW1lPjo8dmVyc2lvbj5gKSByYXRoZXIgdGhhblxuICogdGhlIGBhd3MvY29kZWJ1aWxkL3N0YW5kYXJkOjcuMGAgZmFsbGJhY2sgdGhhdCB0aGUgc3ludGgtdGltZSB0b2tlbiBwYXRoXG4gKiBmb3JjZXMuXG4gKlxuICogRmFpbHVyZXMgYXJlIG5vbi1mYXRhbDogYSBtaXNzaW5nIHBsdWdpbiBvciB1bnJlYWNoYWJsZSBBUEkgbG9ncyBhIHdhcm5pbmdcbiAqIGFuZCBmYWxscyB0aHJvdWdoIHRvIHRoZSBkZXBsb3ktdGltZSBjdXN0b20gcmVzb3VyY2UgcGF0aCBzbyBwYXJ0aWFsXG4gKiBwbGF0Zm9ybSBvdXRhZ2VzIGRvbid0IGJsb2NrIHN5bnRoL2RlcGxveS4gVGhlIGV4Y2VwdGlvbiBpcyBhbiBpbWFnZSB0aGF0XG4gKiBmYWlscyBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIOKAlCB0aGF0IGFib3J0cyB0aGUgc3ludGguXG4gKlxuICogS2V5ZWQgYnkgYGFsaWFzIHx8IG5hbWVgIHRvIG1hdGNoIGBQbHVnaW5Mb29rdXAucGx1Z2luKClgLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzb2x2ZVBsdWdpbnNGb3JQcm9wcyhcbiAgY2xpZW50OiBBcGlDbGllbnQsXG4gIHByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbik6IFByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+IHtcbiAgY29uc3QgcmVmcyA9IGNvbGxlY3RQbHVnaW5SZWZzKHByb3BzKTtcbiAgaWYgKHJlZnMubGVuZ3RoID09PSAwKSByZXR1cm4ge307XG5cbiAgY29uc3QgcmVzb2x2ZWQ6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge307XG5cbiAgYXdhaXQgUHJvbWlzZS5hbGwocmVmcy5tYXAoYXN5bmMgKHJlZikgPT4ge1xuICAgIGNvbnN0IGtleSA9IGNhY2hlS2V5KHJlZik7XG4gICAgY29uc3QgbGFiZWwgPSByZWYucHVibGlzaGVyID8gYCR7cmVmLnB1Ymxpc2hlcn0vJHtyZWYubmFtZX1gIDogcmVmLm5hbWU7XG4gICAgLy8gVGhlIHBsdWdpbiBOQU1FIGxpdmVzIG9uIHRoZSByZWYgKGEgc2libGluZyBvZiBgZmlsdGVyYCksIE5PVCBpbnNpZGUgdGhlXG4gICAgLy8gZmlsdGVyIG9iamVjdCDigJQgYnV0IHRoZSBsb29rdXAgbWF0Y2hlcyBvbiB0aGUgZmlsdGVyLiBBIGZpbHRlciB3aXRob3V0XG4gICAgLy8gYG5hbWVgIChlLmcuIGB7dmVyc2lvbiwgdmlzaWJpbGl0eSwgaXNBY3RpdmUsIGlzRGVmYXVsdH1gKSBtYXRjaGVzIEFOWVxuICAgIC8vIHBsdWdpbiB3aXRoIHRob3NlIGF0dHJpYnV0ZXMsIGFuZCB0aGUgZW5kcG9pbnQgcmV0dXJucyBhbiBhcmJpdHJhcnkgb25lXG4gICAgLy8gKHNlZW46IGBkb2NrZXJmaWxlLW11bHRpLXByb3ZpZGVyYCkuIFRoYXQgbWFkZSB0aGUgc3ludGggYW5kIGV2ZXJ5IHN0ZXBcbiAgICAvLyByZXNvbHZlIHRvIHRoZSBXUk9ORyBwbHVnaW4uIFNvIHdoZW4gdGhlIGZpbHRlciBvbWl0cyBgbmFtZWAsIGZhbGwgYmFjayB0b1xuICAgIC8vIHRoZSByZWYncyBwbHVnaW4gbmFtZTsgYW4gZXhwbGljaXQgZmlsdGVyIGBuYW1lYCBzdGlsbCB0YWtlcyBwcmVjZWRlbmNlLlxuICAgIC8vIFNoYXJlZCB3aXRoIHRoZSBwaXBlbGluZSBzZXJ2aWNlJ3MgY29udHJhY3QgY2hlY2sgKHNhbWUgZmlsdGVyLCBzYW1lIHBsdWdpbikuXG4gICAgY29uc3QgZmlsdGVyID0gcGx1Z2luTG9va3VwRmlsdGVyKHJlZik7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGNsaWVudC5wb3N0PHVua25vd24+KCcvYXBpL3BsdWdpbnMvbG9va3VwJywgeyBmaWx0ZXIgfSk7XG4gICAgICBjb25zdCB7IHBsdWdpbiwgd2FybmluZ3MgfSA9IHVud3JhcExvb2t1cChyZXMpO1xuICAgICAgZm9yIChjb25zdCB3YXJuaW5nIG9mIHdhcm5pbmdzKSB7XG4gICAgICAgIHByaW50V2FybmluZyhgUGx1Z2luIFwiJHtsYWJlbH1cIjogJHt3YXJuaW5nfWApO1xuICAgICAgfVxuICAgICAgaWYgKHBsdWdpbikge1xuICAgICAgICByZXNvbHZlZFtrZXldID0gcGx1Z2luO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcHJpbnRXYXJuaW5nKGBQbHVnaW4gXCIke2xhYmVsfVwiIGxvb2t1cCByZXR1cm5lZCBubyByZWNvcmQg4oCUIGZhbGxpbmcgYmFjayB0byBkZXBsb3ktdGltZSByZXNvbHV0aW9uYCk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAvLyBBIHBsdWdpbiB3aG9zZSBpbWFnZSBzaWduYXR1cmUgZG9lc24ndCB2ZXJpZnksIG9yIGEgbGlzdGluZyB0aGUgb3JnXG4gICAgICAvLyBjYW4ndCB1c2UsIGlzIE5PVCBhbiBvdXRhZ2UgdG8gcmlkZSBvdXQ6IGZhbGxpbmcgYmFjayB3b3VsZCBxdWlldGx5XG4gICAgICAvLyB0dXJuIGl0IGludG8gYW4gdW5yZXNvbHZlZCBzdGVwLiBTdG9wLlxuICAgICAgY29uc3QgZmF0YWwgPSBmYXRhbExvb2t1cENvZGUoZXJyKTtcbiAgICAgIGlmIChmYXRhbCA9PT0gRXJyb3JDb2RlLklNQUdFX1ZFUklGSUNBVElPTl9GQUlMRUQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBQbHVnaW4gXCIke2xhYmVsfVwiIGltYWdlIGZhaWxlZCBzaWduYXR1cmUgdmVyaWZpY2F0aW9uOiAke2Vycm9yTWVzc2FnZShlcnIpfWApO1xuICAgICAgfVxuICAgICAgLy8gVGhlIGJsb2NrLW1vZGUgcmVmdXNhbCBhbHJlYWR5IG5hbWVzIHRoZSB2ZXJzaW9uLCB0aGUgQ1ZFcyBhbmQgdGhlIGZpeDpcbiAgICAgIC8vIHByaW50IGl0IGFzIHRoZSBwbGF0Zm9ybSB3cm90ZSBpdC5cbiAgICAgIGlmIChmYXRhbCA9PT0gRXJyb3JDb2RlLlBMVUdJTl9WRVJTSU9OX1ZVTE5fQkxPQ0tFRCkgdGhyb3cgbmV3IEVycm9yKHNlcnZpY2VNZXNzYWdlKGVycikgPz8gZXJyb3JNZXNzYWdlKGVycikpO1xuICAgICAgaWYgKGZhdGFsKSB0aHJvdyBuZXcgRXJyb3IoYFBsdWdpbiBcIiR7bGFiZWx9XCIgY2FuJ3QgYmUgdXNlZCAoJHtmYXRhbH0pOiAke2Vycm9yTWVzc2FnZShlcnIpfWApO1xuICAgICAgY29uc3QgbXNnID0gZXJyb3JNZXNzYWdlKGVycik7XG4gICAgICBwcmludFdhcm5pbmcoYFBsdWdpbiBcIiR7bGFiZWx9XCIgcHJlLXJlc29sdXRpb24gZmFpbGVkICgke21zZ30pIOKAlCBmYWxsaW5nIGJhY2sgdG8gZGVwbG95LXRpbWUgcmVzb2x1dGlvbmApO1xuICAgIH1cbiAgfSkpO1xuXG4gIHJldHVybiByZXNvbHZlZDtcbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"pipeline-manager": "./dist/cli.js"
|
|
10
10
|
},
|
|
11
11
|
"devDependencies": {
|
|
12
|
-
"@jest/globals": "30.
|
|
12
|
+
"@jest/globals": "30.5.2",
|
|
13
13
|
"@stylistic/eslint-plugin": "^2",
|
|
14
14
|
"@types/figlet": "1.7.0",
|
|
15
15
|
"@types/node": "^24",
|
|
@@ -18,36 +18,36 @@
|
|
|
18
18
|
"@typescript-eslint/parser": "^8",
|
|
19
19
|
"@typescript/native": "npm:typescript@^7.0.2",
|
|
20
20
|
"copyfiles": "2.4.1",
|
|
21
|
-
"esbuild": "0.28.
|
|
21
|
+
"esbuild": "0.28.2",
|
|
22
22
|
"eslint": "^9",
|
|
23
|
-
"eslint-import-resolver-typescript": "^4.4.
|
|
23
|
+
"eslint-import-resolver-typescript": "^4.4.5",
|
|
24
24
|
"eslint-plugin-import": "^2.32.0",
|
|
25
|
-
"jest": "30.
|
|
25
|
+
"jest": "30.5.2",
|
|
26
26
|
"jest-junit": "^17",
|
|
27
27
|
"ts-jest": "29.4.12",
|
|
28
28
|
"typescript": "npm:@typescript/typescript6@^6.0.2"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@aws-sdk/client-cloudformation": "3.
|
|
32
|
-
"@aws-sdk/client-lambda": "3.
|
|
33
|
-
"@aws-sdk/client-secrets-manager": "3.
|
|
34
|
-
"@aws-sdk/client-sqs": "3.
|
|
35
|
-
"@aws-sdk/client-sts": "3.
|
|
36
|
-
"aws-cdk-lib": "2.
|
|
37
|
-
"axios": "1.
|
|
31
|
+
"@aws-sdk/client-cloudformation": "3.1136.0",
|
|
32
|
+
"@aws-sdk/client-lambda": "3.1136.0",
|
|
33
|
+
"@aws-sdk/client-secrets-manager": "3.1136.0",
|
|
34
|
+
"@aws-sdk/client-sqs": "3.1136.0",
|
|
35
|
+
"@aws-sdk/client-sts": "3.1136.0",
|
|
36
|
+
"aws-cdk-lib": "2.270.0",
|
|
37
|
+
"axios": "1.20.0",
|
|
38
38
|
"commander": "15.0.0",
|
|
39
|
-
"constructs": "10.
|
|
39
|
+
"constructs": "10.8.1",
|
|
40
40
|
"figlet": "1.11.4",
|
|
41
41
|
"form-data": "4.0.6",
|
|
42
42
|
"ora": "9.4.1",
|
|
43
43
|
"picocolors": "1.1.1",
|
|
44
44
|
"progress": "2.0.3",
|
|
45
45
|
"typescript": "npm:@typescript/typescript6@^6.0.2",
|
|
46
|
-
"yaml": "2.9.
|
|
47
|
-
"zod": "4.
|
|
48
|
-
"@pipeline-builder/
|
|
49
|
-
"@pipeline-builder/ai-core": "4.1.
|
|
50
|
-
"@pipeline-builder/
|
|
46
|
+
"yaml": "2.9.1",
|
|
47
|
+
"zod": "4.6.5",
|
|
48
|
+
"@pipeline-builder/api-core": "4.1.17",
|
|
49
|
+
"@pipeline-builder/ai-core": "4.1.17",
|
|
50
|
+
"@pipeline-builder/pipeline-core": "4.1.19"
|
|
51
51
|
},
|
|
52
52
|
"keywords": [
|
|
53
53
|
"ci-cd",
|
|
@@ -102,7 +102,7 @@
|
|
|
102
102
|
"access": "public",
|
|
103
103
|
"registry": "https://registry.npmjs.org/"
|
|
104
104
|
},
|
|
105
|
-
"version": "4.1.
|
|
105
|
+
"version": "4.1.19",
|
|
106
106
|
"bugs": {
|
|
107
107
|
"url": "https://github.com/mwashburn160/pipeline-builder/issues"
|
|
108
108
|
},
|