aws-cdk 2.1132.1 → 2.1134.0
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/README.md +4 -2
- package/THIRD_PARTY_LICENSES +254 -22
- package/build-info.json +2 -2
- package/db.json.gz +0 -0
- package/lib/cli/cdk-toolkit.d.ts +20 -5
- package/lib/cli/cdk-toolkit.js +174 -119
- package/lib/cli/cli-config.js +15 -1
- package/lib/cli/cli-type-registry.json +12 -1
- package/lib/cli/cli.js +5 -3
- package/lib/cli/convert-to-user-input.js +9 -3
- package/lib/cli/display-version.d.ts +28 -2
- package/lib/cli/display-version.js +25 -15
- package/lib/cli/io-host/cli-io-host.d.ts +24 -13
- package/lib/cli/io-host/cli-io-host.js +15 -10
- package/lib/cli/parse-command-line-arguments.js +13 -3
- package/lib/cli/user-configuration.js +2 -1
- package/lib/cli/user-input.d.ts +20 -1
- package/lib/cli/user-input.js +1 -1
- package/lib/cli/util/npm.d.ts +23 -4
- package/lib/cli/util/npm.js +106 -29
- package/lib/commands/doctor.d.ts +10 -1
- package/lib/commands/doctor.js +3 -3
- package/lib/commands/lsp.d.ts +9 -6
- package/lib/commands/lsp.js +18 -9
- package/lib/commands/migrate.js +3 -3
- package/lib/cxapp/cloud-executable.d.ts +8 -0
- package/lib/cxapp/cloud-executable.js +16 -1
- package/lib/index.js +17986 -9061
- package/lib/index_bg.wasm +0 -0
- package/lib/init-templates/.init-version.json +1 -1
- package/lib/init-templates/.recommended-feature-flags.json +2 -1
- package/lib/private/explorer.d.ts +1 -0
- package/lib/private/explorer.js +8 -0
- package/lib/private/tools.d.ts +1 -0
- package/lib/private/tools.js +21 -0
- package/package.json +19 -16
package/lib/cli/util/npm.js
CHANGED
|
@@ -1,34 +1,111 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
const
|
|
5
|
-
const util_1 = require("util");
|
|
36
|
+
exports.fetchNpmVersionInfo = fetchNpmVersionInfo;
|
|
37
|
+
const https = __importStar(require("node:https"));
|
|
6
38
|
const toolkit_lib_1 = require("@aws-cdk/toolkit-lib");
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
catch (err) {
|
|
30
|
-
throw err;
|
|
39
|
+
const NPM_REGISTRY_ROOT = 'https://registry.npmjs.org';
|
|
40
|
+
const REQUEST_TIMEOUT_MS = 3_000;
|
|
41
|
+
/**
|
|
42
|
+
* Query the public npm registry for version information about the `aws-cdk` package.
|
|
43
|
+
*
|
|
44
|
+
* This deliberately queries `registry.npmjs.org` directly (rather than shelling out
|
|
45
|
+
* to `npm view`, which honors the local npm configuration), so that stale metadata
|
|
46
|
+
* from corporate registry mirrors or the local npm cache cannot produce bogus
|
|
47
|
+
* upgrade recommendations.
|
|
48
|
+
*/
|
|
49
|
+
async function fetchNpmVersionInfo(currentVersion, agent) {
|
|
50
|
+
// eslint-disable-next-line @cdklabs/promiseall-no-unbounded-parallelism
|
|
51
|
+
const [latestInfo, currentInfo] = await Promise.all([
|
|
52
|
+
getJson(`${NPM_REGISTRY_ROOT}/aws-cdk/latest`, agent),
|
|
53
|
+
// The running version may not exist on the registry (e.g. developer builds),
|
|
54
|
+
// in which case we simply have no deprecation information for it.
|
|
55
|
+
getJson(`${NPM_REGISTRY_ROOT}/aws-cdk/${encodeURIComponent(currentVersion)}`, agent, { allowNotFound: true }),
|
|
56
|
+
]);
|
|
57
|
+
if (typeof latestInfo?.version !== 'string') {
|
|
58
|
+
throw new toolkit_lib_1.ToolkitError('NpmRegistryUnexpectedResponse', 'npm registry response for aws-cdk@latest did not contain a version');
|
|
31
59
|
}
|
|
60
|
+
return {
|
|
61
|
+
latestVersion: latestInfo.version,
|
|
62
|
+
deprecated: typeof currentInfo?.deprecated === 'string' ? currentInfo.deprecated : undefined,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
function getJson(url, agent, options = {}) {
|
|
66
|
+
const requestOptions = {
|
|
67
|
+
agent,
|
|
68
|
+
headers: { Accept: 'application/json' },
|
|
69
|
+
};
|
|
70
|
+
return new Promise((resolve, reject) => {
|
|
71
|
+
let req;
|
|
72
|
+
const timer = setTimeout(() => {
|
|
73
|
+
if (req) {
|
|
74
|
+
req.destroy(new toolkit_lib_1.ToolkitError('NpmRegistryRequestTimeout', `request to ${url} timed out after ${REQUEST_TIMEOUT_MS}ms`));
|
|
75
|
+
}
|
|
76
|
+
}, REQUEST_TIMEOUT_MS);
|
|
77
|
+
timer.unref();
|
|
78
|
+
req = https.get(url, requestOptions, (res) => {
|
|
79
|
+
if (res.statusCode === 404 && options.allowNotFound) {
|
|
80
|
+
res.resume(); // discard the response body
|
|
81
|
+
resolve(undefined);
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
if (res.statusCode !== 200) {
|
|
85
|
+
res.resume(); // discard the response body
|
|
86
|
+
reject(new toolkit_lib_1.ToolkitError('NpmRegistryHttpError', `request to ${url} failed with status code ${res.statusCode}`));
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
res.setEncoding('utf8');
|
|
90
|
+
let rawData = '';
|
|
91
|
+
res.on('data', (chunk) => {
|
|
92
|
+
rawData += chunk;
|
|
93
|
+
});
|
|
94
|
+
res.on('end', () => {
|
|
95
|
+
try {
|
|
96
|
+
resolve(JSON.parse(rawData));
|
|
97
|
+
}
|
|
98
|
+
catch (e) {
|
|
99
|
+
reject(toolkit_lib_1.ToolkitError.withCause('NpmRegistryParseError', `could not parse response from ${url}: ${e.message}`, e));
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
res.on('error', (e) => {
|
|
103
|
+
reject(toolkit_lib_1.ToolkitError.withCause('NpmRegistryResponseError', `response from ${url} failed: ${e.message}`, e));
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
req.on('error', (e) => {
|
|
107
|
+
reject(toolkit_lib_1.ToolkitError.withCause('NpmRegistryNetworkError', `request to ${url} failed: ${e.message}`, e));
|
|
108
|
+
});
|
|
109
|
+
});
|
|
32
110
|
}
|
|
33
|
-
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibnBtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBT0Esa0NBeUJDO0FBaENELGlEQUE4QztBQUM5QywrQkFBaUM7QUFDakMsc0RBQW9EO0FBRXBELE1BQU0sSUFBSSxHQUFHLElBQUEsZ0JBQVMsRUFBQyxvQkFBSyxDQUFDLENBQUM7QUFFOUIscUJBQXFCO0FBQ2QsS0FBSyxVQUFVLFdBQVcsQ0FBQyxjQUFzQjtJQUN0RCxJQUFJLENBQUM7UUFDSCx3RUFBd0U7UUFDeEUsTUFBTSxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7WUFDdEQsSUFBSSxDQUFDLGlDQUFpQyxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO1lBQzFELElBQUksQ0FBQyxvQkFBb0IsY0FBYyxpQ0FBaUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUM3RixDQUFDLENBQUM7UUFFSCxJQUFJLFlBQVksQ0FBQyxNQUFNLElBQUksWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDakUsTUFBTSxJQUFJLDBCQUFZLENBQUMscUJBQXFCLEVBQUUsK0NBQStDLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzdILENBQUM7UUFDRCxJQUFJLGFBQWEsQ0FBQyxNQUFNLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDbkUsTUFBTSxJQUFJLDBCQUFZLENBQUMsc0JBQXNCLEVBQUUsZ0RBQWdELGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hJLENBQUM7UUFFRCxNQUFNLGFBQWEsR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXJELE9BQU87WUFDTCxhQUFhLEVBQUUsYUFBYTtZQUM1QixVQUFVLEVBQUUsV0FBVyxDQUFDLFVBQVU7U0FDbkMsQ0FBQztJQUNKLENBQUM7SUFBQyxPQUFPLEdBQVksRUFBRSxDQUFDO1FBQ3RCLE1BQU0sR0FBRyxDQUFDO0lBQ1osQ0FBQztBQUNILENBQUM7QUFDRCxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleGVjIGFzIF9leGVjIH0gZnJvbSAnY2hpbGRfcHJvY2Vzcyc7XG5pbXBvcnQgeyBwcm9taXNpZnkgfSBmcm9tICd1dGlsJztcbmltcG9ydCB7IFRvb2xraXRFcnJvciB9IGZyb20gJ0Bhd3MtY2RrL3Rvb2xraXQtbGliJztcblxuY29uc3QgZXhlYyA9IHByb21pc2lmeShfZXhlYyk7XG5cbi8qIGM4IGlnbm9yZSBzdGFydCAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGV4ZWNOcG1WaWV3KGN1cnJlbnRWZXJzaW9uOiBzdHJpbmcpIHtcbiAgdHJ5IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGNka2xhYnMvcHJvbWlzZWFsbC1uby11bmJvdW5kZWQtcGFyYWxsZWxpc21cbiAgICBjb25zdCBbbGF0ZXN0UmVzdWx0LCBjdXJyZW50UmVzdWx0XSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgIGV4ZWMoJ25wbSB2aWV3IGF3cy1jZGtAbGF0ZXN0IHZlcnNpb24nLCB7IHRpbWVvdXQ6IDMwMDAgfSksXG4gICAgICBleGVjKGBucG0gdmlldyBhd3MtY2RrQCR7Y3VycmVudFZlcnNpb259IG5hbWUgdmVyc2lvbiBkZXByZWNhdGVkIC0tanNvbmAsIHsgdGltZW91dDogMzAwMCB9KSxcbiAgICBdKTtcblxuICAgIGlmIChsYXRlc3RSZXN1bHQuc3RkZXJyICYmIGxhdGVzdFJlc3VsdC5zdGRlcnIudHJpbSgpLmxlbmd0aCA+IDApIHtcbiAgICAgIHRocm93IG5ldyBUb29sa2l0RXJyb3IoJ05wbVZpZXdMYXRlc3RGYWlsZWQnLCBgbnBtIHZpZXcgY29tbWFuZCBmb3IgbGF0ZXN0IHZlcnNpb24gZmFpbGVkOiAke2xhdGVzdFJlc3VsdC5zdGRlcnIudHJpbSgpfWApO1xuICAgIH1cbiAgICBpZiAoY3VycmVudFJlc3VsdC5zdGRlcnIgJiYgY3VycmVudFJlc3VsdC5zdGRlcnIudHJpbSgpLmxlbmd0aCA+IDApIHtcbiAgICAgIHRocm93IG5ldyBUb29sa2l0RXJyb3IoJ05wbVZpZXdDdXJyZW50RmFpbGVkJywgYG5wbSB2aWV3IGNvbW1hbmQgZm9yIGN1cnJlbnQgdmVyc2lvbiBmYWlsZWQ6ICR7Y3VycmVudFJlc3VsdC5zdGRlcnIudHJpbSgpfWApO1xuICAgIH1cblxuICAgIGNvbnN0IGxhdGVzdFZlcnNpb24gPSBsYXRlc3RSZXN1bHQuc3Rkb3V0LnRyaW0oKTtcbiAgICBjb25zdCBjdXJyZW50SW5mbyA9IEpTT04ucGFyc2UoY3VycmVudFJlc3VsdC5zdGRvdXQpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGxhdGVzdFZlcnNpb246IGxhdGVzdFZlcnNpb24sXG4gICAgICBkZXByZWNhdGVkOiBjdXJyZW50SW5mby5kZXByZWNhdGVkLFxuICAgIH07XG4gIH0gY2F0Y2ggKGVycjogdW5rbm93bikge1xuICAgIHRocm93IGVycjtcbiAgfVxufVxuLyogYzggaWdub3JlIHN0b3AgKi9cbiJdfQ==
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibnBtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBK0JBLGtEQWlCQztBQTlDRCxrREFBb0M7QUFDcEMsc0RBQW9EO0FBRXBELE1BQU0saUJBQWlCLEdBQUcsNEJBQTRCLENBQUM7QUFDdkQsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUM7QUFpQmpDOzs7Ozs7O0dBT0c7QUFDSSxLQUFLLFVBQVUsbUJBQW1CLENBQUMsY0FBc0IsRUFBRSxLQUFhO0lBQzdFLHdFQUF3RTtJQUN4RSxNQUFNLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQztRQUNsRCxPQUFPLENBQUMsR0FBRyxpQkFBaUIsaUJBQWlCLEVBQUUsS0FBSyxDQUFDO1FBQ3JELDZFQUE2RTtRQUM3RSxrRUFBa0U7UUFDbEUsT0FBTyxDQUFDLEdBQUcsaUJBQWlCLFlBQVksa0JBQWtCLENBQUMsY0FBYyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDOUcsQ0FBQyxDQUFDO0lBRUgsSUFBSSxPQUFPLFVBQVUsRUFBRSxPQUFPLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDNUMsTUFBTSxJQUFJLDBCQUFZLENBQUMsK0JBQStCLEVBQUUsb0VBQW9FLENBQUMsQ0FBQztJQUNoSSxDQUFDO0lBRUQsT0FBTztRQUNMLGFBQWEsRUFBRSxVQUFVLENBQUMsT0FBTztRQUNqQyxVQUFVLEVBQUUsT0FBTyxXQUFXLEVBQUUsVUFBVSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUztLQUM3RixDQUFDO0FBQ0osQ0FBQztBQVdELFNBQVMsT0FBTyxDQUFDLEdBQVcsRUFBRSxLQUFhLEVBQUUsVUFBMEIsRUFBRTtJQUN2RSxN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Omh0dHAnO1xuaW1wb3J0IHR5cGUgeyBBZ2VudCwgUmVxdWVzdE9wdGlvbnMgfSBmcm9tICdub2RlOmh0dHBzJztcbmltcG9ydCAqIGFzIGh0dHBzIGZyb20gJ25vZGU6aHR0cHMnO1xuaW1wb3J0IHsgVG9vbGtpdEVycm9yIH0gZnJvbSAnQGF3cy1jZGsvdG9vbGtpdC1saWInO1xuXG5jb25zdCBOUE1fUkVHSVNUUllfUk9PVCA9ICdodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZyc7XG5jb25zdCBSRVFVRVNUX1RJTUVPVVRfTVMgPSAzXzAwMDtcblxuLyoqXG4gKiBWZXJzaW9uIGluZm9ybWF0aW9uIGFib3V0IHRoZSBgYXdzLWNka2AgcGFja2FnZSwgYXMgcmVwb3J0ZWQgYnkgdGhlIG5wbSByZWdpc3RyeVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5wbVZlcnNpb25JbmZvIHtcbiAgLyoqXG4gICAqIFRoZSB2ZXJzaW9uIHRoZSBgbGF0ZXN0YCBkaXN0LXRhZyBwb2ludHMgdG9cbiAgICovXG4gIHJlYWRvbmx5IGxhdGVzdFZlcnNpb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGRlcHJlY2F0aW9uIG1lc3NhZ2Ugb2YgdGhlIGN1cnJlbnRseSBydW5uaW5nIHZlcnNpb24sIGlmIGl0IGlzIGRlcHJlY2F0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGRlcHJlY2F0ZWQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUXVlcnkgdGhlIHB1YmxpYyBucG0gcmVnaXN0cnkgZm9yIHZlcnNpb24gaW5mb3JtYXRpb24gYWJvdXQgdGhlIGBhd3MtY2RrYCBwYWNrYWdlLlxuICpcbiAqIFRoaXMgZGVsaWJlcmF0ZWx5IHF1ZXJpZXMgYHJlZ2lzdHJ5Lm5wbWpzLm9yZ2AgZGlyZWN0bHkgKHJhdGhlciB0aGFuIHNoZWxsaW5nIG91dFxuICogdG8gYG5wbSB2aWV3YCwgd2hpY2ggaG9ub3JzIHRoZSBsb2NhbCBucG0gY29uZmlndXJhdGlvbiksIHNvIHRoYXQgc3RhbGUgbWV0YWRhdGFcbiAqIGZyb20gY29ycG9yYXRlIHJlZ2lzdHJ5IG1pcnJvcnMgb3IgdGhlIGxvY2FsIG5wbSBjYWNoZSBjYW5ub3QgcHJvZHVjZSBib2d1c1xuICogdXBncmFkZSByZWNvbW1lbmRhdGlvbnMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaE5wbVZlcnNpb25JbmZvKGN1cnJlbnRWZXJzaW9uOiBzdHJpbmcsIGFnZW50PzogQWdlbnQpOiBQcm9taXNlPE5wbVZlcnNpb25JbmZvPiB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAY2RrbGFicy9wcm9taXNlYWxsLW5vLXVuYm91bmRlZC1wYXJhbGxlbGlzbVxuICBjb25zdCBbbGF0ZXN0SW5mbywgY3VycmVudEluZm9dID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgIGdldEpzb24oYCR7TlBNX1JFR0lTVFJZX1JPT1R9L2F3cy1jZGsvbGF0ZXN0YCwgYWdlbnQpLFxuICAgIC8vIFRoZSBydW5uaW5nIHZlcnNpb24gbWF5IG5vdCBleGlzdCBvbiB0aGUgcmVnaXN0cnkgKGUuZy4gZGV2ZWxvcGVyIGJ1aWxkcyksXG4gICAgLy8gaW4gd2hpY2ggY2FzZSB3ZSBzaW1wbHkgaGF2ZSBubyBkZXByZWNhdGlvbiBpbmZvcm1hdGlvbiBmb3IgaXQuXG4gICAgZ2V0SnNvbihgJHtOUE1fUkVHSVNUUllfUk9PVH0vYXdzLWNkay8ke2VuY29kZVVSSUNvbXBvbmVudChjdXJyZW50VmVyc2lvbil9YCwgYWdlbnQsIHsgYWxsb3dOb3RGb3VuZDogdHJ1ZSB9KSxcbiAgXSk7XG5cbiAgaWYgKHR5cGVvZiBsYXRlc3RJbmZvPy52ZXJzaW9uICE9PSAnc3RyaW5nJykge1xuICAgIHRocm93IG5ldyBUb29sa2l0RXJyb3IoJ05wbVJlZ2lzdHJ5VW5leHBlY3RlZFJlc3BvbnNlJywgJ25wbSByZWdpc3RyeSByZXNwb25zZSBmb3IgYXdzLWNka0BsYXRlc3QgZGlkIG5vdCBjb250YWluIGEgdmVyc2lvbicpO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBsYXRlc3RWZXJzaW9uOiBsYXRlc3RJbmZvLnZlcnNpb24sXG4gICAgZGVwcmVjYXRlZDogdHlwZW9mIGN1cnJlbnRJbmZvPy5kZXByZWNhdGVkID09PSAnc3RyaW5nJyA/IGN1cnJlbnRJbmZvLmRlcHJlY2F0ZWQgOiB1bmRlZmluZWQsXG4gIH07XG59XG5cbmludGVyZmFjZSBHZXRKc29uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBSZXNvbHZlIHRvIGB1bmRlZmluZWRgIG9uIGEgNDA0IHJlc3BvbnNlIGluc3RlYWQgb2YgZmFpbGluZ1xuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dOb3RGb3VuZD86IGJvb2xlYW47XG59XG5cbmZ1bmN0aW9uIGdldEpzb24odXJsOiBzdHJpbmcsIGFnZW50PzogQWdlbnQsIG9wdGlvbnM6IEdldEpzb25PcHRpb25zID0ge30pOiBQcm9taXNlPGFueT4ge1xuICBjb25zdCByZXF1ZXN0T3B0aW9uczogUmVxdWVzdE9wdGlvbnMgPSB7XG4gICAgYWdlbnQsXG4gICAgaGVhZGVyczogeyBBY2NlcHQ6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9O1xuXG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgbGV0IHJlcTogQ2xpZW50UmVxdWVzdCB8IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IHRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAocmVxKSB7XG4gICAgICAgIHJlcS5kZXN0cm95KG5ldyBUb29sa2l0RXJyb3IoJ05wbVJlZ2lzdHJ5UmVxdWVzdFRpbWVvdXQnLCBgcmVxdWVzdCB0byAke3VybH0gdGltZWQgb3V0IGFmdGVyICR7UkVRVUVTVF9USU1FT1VUX01TfW1zYCkpO1xuICAgICAgfVxuICAgIH0sIFJFUVVFU1RfVElNRU9VVF9NUyk7XG4gICAgdGltZXIudW5yZWYoKTtcblxuICAgIHJlcSA9IGh0dHBzLmdldCh1cmwsIHJlcXVlc3RPcHRpb25zLCAocmVzKSA9PiB7XG4gICAgICBpZiAocmVzLnN0YXR1c0NvZGUgPT09IDQwNCAmJiBvcHRpb25zLmFsbG93Tm90Rm91bmQpIHtcbiAgICAgICAgcmVzLnJlc3VtZSgpOyAvLyBkaXNjYXJkIHRoZSByZXNwb25zZSBib2R5XG4gICAgICAgIHJlc29sdmUodW5kZWZpbmVkKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgaWYgKHJlcy5zdGF0dXNDb2RlICE9PSAyMDApIHtcbiAgICAgICAgcmVzLnJlc3VtZSgpOyAvLyBkaXNjYXJkIHRoZSByZXNwb25zZSBib2R5XG4gICAgICAgIHJlamVjdChuZXcgVG9vbGtpdEVycm9yKCdOcG1SZWdpc3RyeUh0dHBFcnJvcicsIGByZXF1ZXN0IHRvICR7dXJsfSBmYWlsZWQgd2l0aCBzdGF0dXMgY29kZSAke3Jlcy5zdGF0dXNDb2RlfWApKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICByZXMuc2V0RW5jb2RpbmcoJ3V0ZjgnKTtcbiAgICAgIGxldCByYXdEYXRhID0gJyc7XG4gICAgICByZXMub24oJ2RhdGEnLCAoY2h1bmspID0+IHtcbiAgICAgICAgcmF3RGF0YSArPSBjaHVuaztcbiAgICAgIH0pO1xuICAgICAgcmVzLm9uKCdlbmQnLCAoKSA9PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgcmVzb2x2ZShKU09OLnBhcnNlKHJhd0RhdGEpKTtcbiAgICAgICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICAgICAgcmVqZWN0KFRvb2xraXRFcnJvci53aXRoQ2F1c2UoJ05wbVJlZ2lzdHJ5UGFyc2VFcnJvcicsIGBjb3VsZCBub3QgcGFyc2UgcmVzcG9uc2UgZnJvbSAke3VybH06ICR7ZS5tZXNzYWdlfWAsIGUpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICByZXMub24oJ2Vycm9yJywgKGUpID0+IHtcbiAgICAgICAgcmVqZWN0KFRvb2xraXRFcnJvci53aXRoQ2F1c2UoJ05wbVJlZ2lzdHJ5UmVzcG9uc2VFcnJvcicsIGByZXNwb25zZSBmcm9tICR7dXJsfSBmYWlsZWQ6ICR7ZS5tZXNzYWdlfWAsIGUpKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIHJlcS5vbignZXJyb3InLCAoZSkgPT4ge1xuICAgICAgcmVqZWN0KFRvb2xraXRFcnJvci53aXRoQ2F1c2UoJ05wbVJlZ2lzdHJ5TmV0d29ya0Vycm9yJywgYHJlcXVlc3QgdG8gJHt1cmx9IGZhaWxlZDogJHtlLm1lc3NhZ2V9YCwgZSkpO1xuICAgIH0pO1xuICB9KTtcbn1cbiJdfQ==
|
package/lib/commands/doctor.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type * as https from 'node:https';
|
|
1
2
|
import type { Settings } from '../api/settings';
|
|
2
3
|
import type { IoHelper } from '../api-private';
|
|
3
4
|
export interface DoctorOptions {
|
|
@@ -9,5 +10,13 @@ export interface DoctorOptions {
|
|
|
9
10
|
* @default - configuration is not reported
|
|
10
11
|
*/
|
|
11
12
|
readonly settings?: Settings;
|
|
13
|
+
/**
|
|
14
|
+
* The agent used for the network request of the version check
|
|
15
|
+
*
|
|
16
|
+
* Use this to set up a proxy connection.
|
|
17
|
+
*
|
|
18
|
+
* @default - the shared global node agent
|
|
19
|
+
*/
|
|
20
|
+
readonly agent?: https.Agent;
|
|
12
21
|
}
|
|
13
|
-
export declare function doctor({ ioHelper, settings }: DoctorOptions): Promise<number>;
|
|
22
|
+
export declare function doctor({ ioHelper, settings, agent }: DoctorOptions): Promise<number>;
|
package/lib/commands/doctor.js
CHANGED
|
@@ -42,14 +42,14 @@ const cxapi = __importStar(require("@aws-cdk/cx-api"));
|
|
|
42
42
|
const chalk_1 = __importDefault(require("chalk"));
|
|
43
43
|
const display_version_1 = require("../cli/display-version");
|
|
44
44
|
const version_1 = require("../cli/version");
|
|
45
|
-
async function doctor({ ioHelper, settings }) {
|
|
45
|
+
async function doctor({ ioHelper, settings, agent }) {
|
|
46
46
|
let exitStatus = 0;
|
|
47
47
|
for (const verification of verifications) {
|
|
48
48
|
if (!await verification(ioHelper, settings)) {
|
|
49
49
|
exitStatus = -1;
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
|
-
await (0, display_version_1.displayVersionMessage)(ioHelper);
|
|
52
|
+
await (0, display_version_1.displayVersionMessage)(ioHelper, { agent });
|
|
53
53
|
return exitStatus;
|
|
54
54
|
}
|
|
55
55
|
const verifications = [
|
|
@@ -117,4 +117,4 @@ function anonymizeAwsVariable(name, value) {
|
|
|
117
117
|
}
|
|
118
118
|
return value;
|
|
119
119
|
}
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZG9jdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JBLHdCQVNDO0FBN0JELGlEQUFtQztBQUNuQyx1REFBeUM7QUFDekMsa0RBQTBCO0FBRzFCLDREQUErRDtBQUMvRCw0Q0FBa0Q7QUFjM0MsS0FBSyxVQUFVLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQWlCO0lBQ2hFLElBQUksVUFBVSxHQUFXLENBQUMsQ0FBQztJQUMzQixLQUFLLE1BQU0sWUFBWSxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxNQUFNLFlBQVksQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUM1QyxVQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDbEIsQ0FBQztJQUNILENBQUM7SUFDRCxNQUFNLElBQUEsdUNBQXFCLEVBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEMsT0FBTyxVQUFVLENBQUM7QUFDcEIsQ0FBQztBQUVELE1BQU0sYUFBYSxHQUFtRjtJQUNwRyx5QkFBeUI7SUFDekIsdUJBQXVCO0lBQ3ZCLDhCQUE4QjtJQUM5Qiw4QkFBOEI7Q0FDL0IsQ0FBQztBQUVGLHdCQUF3QjtBQUV4QixLQUFLLFVBQVUsdUJBQXVCLENBQUMsUUFBa0IsRUFBRSxRQUFtQjtJQUM1RSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUQsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQztJQUUvRixNQUFNLEtBQUssR0FBRyxFQUFFLENBQUM7SUFDakIs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LENBQUMsNkJBQTZCLElBQUksR0FBRyxLQUFLLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN6RyxNQUFNLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sZUFBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxlQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFFLENBQUMsMkNBQTJDLENBQUMsQ0FBQztZQUNuSSxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLGVBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sZUFBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdGLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQUVELFNBQVMsb0JBQW9CLENBQUMsSUFBWSxFQUFFLEtBQWE7SUFDdkQsSUFBSSxJQUFJLEtBQUssbUJBQW1CLEVBQUUsQ0FBQztRQUNqQyxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQztJQUMxQyxDQUFDLENBQUMsK0NBQStDO0lBQ2pELElBQUksSUFBSSxLQUFLLHVCQUF1QixJQUFJLElBQUksS0FBSyxtQkFBbUIsSUFBSSxJQUFJLEtBQUssb0JBQW9CLEVBQUUsQ0FBQztRQUN0RyxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcHJvY2VzcyBmcm9tICdwcm9jZXNzJztcbmltcG9ydCAqIGFzIGN4YXBpIGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgY2hhbGsgZnJvbSAnY2hhbGsnO1xuaW1wb3J0IHR5cGUgeyBTZXR0aW5ncyB9IGZyb20gJy4uL2FwaS9zZXR0aW5ncyc7XG5pbXBvcnQgdHlwZSB7IElvSGVscGVyIH0gZnJvbSAnLi4vYXBpLXByaXZhdGUnO1xuaW1wb3J0IHsgZGlzcGxheVZlcnNpb25NZXNzYWdlIH0gZnJvbSAnLi4vY2xpL2Rpc3BsYXktdmVyc2lvbic7XG5pbXBvcnQgeyB2ZXJzaW9uV2l0aEJ1aWxkIH0gZnJvbSAnLi4vY2xpL3ZlcnNpb24nO1xuXG5leHBvcnQgaW50ZXJmYWNlIERvY3Rvck9wdGlvbnMge1xuICByZWFkb25seSBpb0hlbHBlcjogSW9IZWxwZXI7XG5cbiAgLyoqXG4gICAqIFRoZSByZXNvbHZlZCBDTEkgc2V0dGluZ3MsIHVzZWQgdG8gcmVwb3J0IHRoZSBhY3RpdmUgQ0xJIGNvbmZpZ3VyYXRpb25cbiAgICogKGRlYnVnIHRhcmdldHMsIHZlcmJvc2l0eSwgLi4uKS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBjb25maWd1cmF0aW9uIGlzIG5vdCByZXBvcnRlZFxuICAgKi9cbiAgcmVhZG9ubHkgc2V0dGluZ3M/OiBTZXR0aW5ncztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRvY3Rvcih7IGlvSGVscGVyLCBzZXR0aW5ncyB9OiBEb2N0b3JPcHRpb25zKTogUHJvbWlzZTxudW1iZXI+IHtcbiAgbGV0IGV4aXRTdGF0dXM6IG51bWJlciA9IDA7XG4gIGZvciAoY29uc3QgdmVyaWZpY2F0aW9uIG9mIHZlcmlmaWNhdGlvbnMpIHtcbiAgICBpZiAoIWF3YWl0IHZlcmlmaWNhdGlvbihpb0hlbHBlciwgc2V0dGluZ3MpKSB7XG4gICAgICBleGl0U3RhdHVzID0gLTE7XG4gICAgfVxuICB9XG4gIGF3YWl0IGRpc3BsYXlWZXJzaW9uTWVzc2FnZShpb0hlbHBlcik7XG4gIHJldHVybiBleGl0U3RhdHVzO1xufVxuXG5jb25zdCB2ZXJpZmljYXRpb25zOiBBcnJheTwoaW9IZWxwZXI6IElvSGVscGVyLCBzZXR0aW5ncz86IFNldHRpbmdzKSA9PiBib29sZWFuIHwgUHJvbWlzZTxib29sZWFuPj4gPSBbXG4gIGRpc3BsYXlWZXJzaW9uSW5mb3JtYXRpb24sXG4gIGRpc3BsYXlDbGlDb25maWd1cmF0aW9uLFxuICBkaXNwbGF5QXdzRW52aXJvbm1lbnRWYXJpYWJsZXMsXG4gIGRpc3BsYXlDZGtFbnZpcm9ubWVudFZhcmlhYmxlcyxcbl07XG5cbi8vICMjIyBWZXJpZmljYXRpb25zICMjI1xuXG5hc3luYyBmdW5jdGlvbiBkaXNwbGF5Q2xpQ29uZmlndXJhdGlvbihpb0hlbHBlcjogSW9IZWxwZXIsIHNldHRpbmdzPzogU2V0dGluZ3MpIHtcbiAgY29uc3QgdmVyYm9zaXR5ID0gTnVtYmVyKHNldHRpbmdzPy5nZXQoWyd2ZXJib3NlJ10pID8/IDApO1xuICBjb25zdCB2ZXJib3NlID0gdmVyYm9zaXR5ID8gYGV4dHJhIHZlcmJvc2l0eSAoLSR7J3YnLnJlcGVhdCh2ZXJib3NpdHkpfSlgIDogJ25vcm1hbCB2ZXJib3NpdHknO1xuXG4gIGNvbnN0IGRlYnVnID0gW107XG4gIGlmIChCb29sZWFuKHNldHRpbmdzPy5nZXQoWydkZWJ1Z0FwcCddKSkpIHtcbiAgICBkZWJ1Zy5wdXNoKCdDREsgYXBwJyk7XG4gIH1cbiAgaWYgKEJvb2xlYW4oc2V0dGluZ3M/LmdldChbJ2RlYnVnQ2xpJ10pKSkge1xuICAgIGRlYnVnLnB1c2goJ0NMSScpO1xuICB9XG4gIGNvbnN0IGRlYnVnZ2luZyA9IGRlYnVnLmxlbmd0aCA/IGBkZWJ1Z2dpbmcgJHtkZWJ1Zy5qb2luKCcgJiAnKX1gIDogJ25vIGRlYnVnZ2luZyc7XG5cbiAgYXdhaXQgaW9IZWxwZXIuZGVmYXVsdHMuaW5mbyhjaGFsay5ncmF5Lml0YWxpYyhcbiAgICBgJHt2ZXJib3NlfSwgJHtkZWJ1Z2dpbmd9YCxcbiAgKSk7XG4gIHJldHVybiB0cnVlO1xufVxuXG5hc3luYyBmdW5jdGlvbiBkaXNwbGF5VmVyc2lvbkluZm9ybWF0aW9uKGlvSGVscGVyOiBJb0hlbHBlcikge1xuICBhd2FpdCBpb0hlbHBlci5kZWZhdWx0cy5pbmZvKGDihLnvuI8gQ0RLIENMSSBWZXJzaW9uOiAke2NoYWxrLmdyZWVuKHZlcnNpb25XaXRoQnVpbGQoKSl9YCk7XG4gIHJldHVybiB0cnVlO1xufVxuXG5hc3luYyBmdW5jdGlvbiBkaXNwbGF5QXdzRW52aXJvbm1lbnRWYXJpYWJsZXMoaW9IZWxwZXI6IElvSGVscGVyKSB7XG4gIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhwcm9jZXNzLmVudikuZmlsdGVyKHMgPT4gcy5zdGFydHNXaXRoKCdBV1NfJykpO1xuICBpZiAoa2V5cy5sZW5ndGggPT09IDApIHtcbiAgICBhd2FpdCBpb0hlbHBlci5kZWZhdWx0cy5pbmZvKCfihLnvuI8gTm8gQVdTIGVudmlyb25tZW50IHZhcmlhYmxlcycpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG4gIGF3YWl0IGlvSGVscGVyLmRlZmF1bHRzLmluZm8oJ+KEue+4jyBBV1MgZW52aXJvbm1lbnQgdmFyaWFibGVzOicpO1xuICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzKSB7XG4gICAgYXdhaXQgaW9IZWxwZXIuZGVmYXVsdHMuaW5mbyhgICAtICR7Y2hhbGsuYmx1ZShrZXkpfSA9ICR7Y2hhbGsuZ3JlZW4oYW5vbnltaXplQXdzVmFyaWFibGUoa2V5LCBwcm9jZXNzLmVudltrZXldISkpfWApO1xuICB9XG4gIHJldHVybiB0cnVlO1xufVxuXG5hc3luYyBmdW5jdGlvbiBkaXNwbGF5Q2RrRW52aXJvbm1lbnRWYXJpYWJsZXMoaW9IZWxwZXI6IElvSGVscGVyKSB7XG4gIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhwcm9jZXNzLmVudikuZmlsdGVyKHMgPT4gcy5zdGFydHNXaXRoKCdDREtfJykpO1xuICBpZiAoa2V5cy5sZW5ndGggPT09IDApIHtcbiAgICBhd2FpdCBpb0hlbHBlci5kZWZhdWx0cy5pbmZvKCfihLnvuI8gTm8gQ0RLIGVudmlyb25tZW50IHZhcmlhYmxlcycpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG4gIGF3YWl0IGlvSGVscGVyLmRlZmF1bHRzLmluZm8oJ+KEue+4jyBDREsgZW52aXJvbm1lbnQgdmFyaWFibGVzOicpO1xuICBsZXQgaGVhbHRoeSA9IHRydWU7XG4gIGZvciAoY29uc3Qga2V5IG9mIGtleXMuc29ydCgpKSB7XG4gICAgaWYgKGtleSA9PT0gY3hhcGkuQ09OVEVYVF9FTlYgfHwga2V5ID09PSBjeGFwaS5DT05URVhUX09WRVJGTE9XX0xPQ0FUSU9OX0VOViB8fCBrZXkgPT09IGN4YXBpLk9VVERJUl9FTlYpIHtcbiAgICAgIGF3YWl0IGlvSGVscGVyLmRlZmF1bHRzLmluZm8oYCAgLSAke2NoYWxrLnJlZChrZXkpfSA9ICR7Y2hhbGsuZ3JlZW4ocHJvY2Vzcy5lbnZba2V5XSEpfSAo4pqg77iPIHJlc2VydmVkIGZvciB1c2UgYnkgdGhlIENESyB0b29sa2l0KWApO1xuICAgICAgaGVhbHRoeSA9IGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICBhd2FpdCBpb0hlbHBlci5kZWZhdWx0cy5pbmZvKGAgIC0gJHtjaGFsay5ibHVlKGtleSl9ID0gJHtjaGFsay5ncmVlbihwcm9jZXNzLmVudltrZXldISl9YCk7XG4gICAgfVxuICB9XG4gIHJldHVybiBoZWFsdGh5O1xufVxuXG5mdW5jdGlvbiBhbm9ueW1pemVBd3NWYXJpYWJsZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpIHtcbiAgaWYgKG5hbWUgPT09ICdBV1NfQUNDRVNTX0tFWV9JRCcpIHtcbiAgICByZXR1cm4gdmFsdWUuc2xpY2UoMCwgNCkgKyAnPHJlZGFjdGVkPic7XG4gIH0gLy8gU2hvdyBBU0lBL0FLSUEga2V5IHR5cGUsIGJ1dCBoaWRlIGlkZW50aWZpZXJcbiAgaWYgKG5hbWUgPT09ICdBV1NfU0VDUkVUX0FDQ0VTU19LRVknIHx8IG5hbWUgPT09ICdBV1NfU0VTU0lPTl9UT0tFTicgfHwgbmFtZSA9PT0gJ0FXU19TRUNVUklUWV9UT0tFTicpIHtcbiAgICByZXR1cm4gJzxyZWRhY3RlZD4nO1xuICB9XG4gIHJldHVybiB2YWx1ZTtcbn1cbiJdfQ==
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZG9jdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBOEJBLHdCQVNDO0FBdENELGlEQUFtQztBQUNuQyx1REFBeUM7QUFDekMsa0RBQTBCO0FBRzFCLDREQUErRDtBQUMvRCw0Q0FBa0Q7QUF1QjNDLEtBQUssVUFBVSxNQUFNLENBQUMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBaUI7SUFDdkUsSUFBSSxVQUFVLEdBQVcsQ0FBQyxDQUFDO0lBQzNCLEtBQUssTUFBTSxZQUFZLElBQUksYUFBYSxFQUFFLENBQUM7UUFDekMsSUFBSSxDQUFDLE1BQU0sWUFBWSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQzVDLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsQixDQUFDO0lBQ0gsQ0FBQztJQUNELE1BQU0sSUFBQSx1Q0FBcUIsRUFBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUM7QUFFRCxNQUFNLGFBQWEsR0FBbUY7SUFDcEcseUJBQXlCO0lBQ3pCLHVCQUF1QjtJQUN2Qiw4QkFBOEI7SUFDOUIsOEJBQThCO0NBQy9CLENBQUM7QUFFRix3QkFBd0I7QUFFeEIsS0FBSyxVQUFVLHVCQUF1QixDQUFDLFFBQWtCLEVBQUUsUUFBbUI7SUFDNUUsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzFELE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMscUJBQXFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUM7SUFFL0Ys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SyxDQUFDLFdBQVcsSUFBSSxHQUFHLEtBQUssS0FBSyxDQUFDLDZCQUE2QixJQUFJLEdBQUcsS0FBSyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDekcsTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLGVBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLE1BQU0sZUFBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxDQUFDLDJDQUEyQyxDQUFDLENBQUM7WUFDbkksT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNsQixDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxlQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLGVBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3RixDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7QUFFRCxTQUFTLG9CQUFvQixDQUFDLElBQVksRUFBRSxLQUFhO0lBQ3ZELElBQUksSUFBSSxLQUFLLG1CQUFtQixFQUFFLENBQUM7UUFDakMsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUM7SUFDMUMsQ0FBQyxDQUFDLCtDQUErQztJQUNqRCxJQUFJLElBQUksS0FBSyx1QkFBdUIsSUFBSSxJQUFJLEtBQUssbUJBQW1CLElBQUksSUFBSSxLQUFLLG9CQUFvQixFQUFFLENBQUM7UUFDdEcsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlICogYXMgaHR0cHMgZnJvbSAnbm9kZTpodHRwcyc7XG5pbXBvcnQgKiBhcyBwcm9jZXNzIGZyb20gJ3Byb2Nlc3MnO1xuaW1wb3J0ICogYXMgY3hhcGkgZnJvbSAnQGF3cy1jZGsvY3gtYXBpJztcbmltcG9ydCBjaGFsayBmcm9tICdjaGFsayc7XG5pbXBvcnQgdHlwZSB7IFNldHRpbmdzIH0gZnJvbSAnLi4vYXBpL3NldHRpbmdzJztcbmltcG9ydCB0eXBlIHsgSW9IZWxwZXIgfSBmcm9tICcuLi9hcGktcHJpdmF0ZSc7XG5pbXBvcnQgeyBkaXNwbGF5VmVyc2lvbk1lc3NhZ2UgfSBmcm9tICcuLi9jbGkvZGlzcGxheS12ZXJzaW9uJztcbmltcG9ydCB7IHZlcnNpb25XaXRoQnVpbGQgfSBmcm9tICcuLi9jbGkvdmVyc2lvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdG9yT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGlvSGVscGVyOiBJb0hlbHBlcjtcblxuICAvKipcbiAgICogVGhlIHJlc29sdmVkIENMSSBzZXR0aW5ncywgdXNlZCB0byByZXBvcnQgdGhlIGFjdGl2ZSBDTEkgY29uZmlndXJhdGlvblxuICAgKiAoZGVidWcgdGFyZ2V0cywgdmVyYm9zaXR5LCAuLi4pLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGNvbmZpZ3VyYXRpb24gaXMgbm90IHJlcG9ydGVkXG4gICAqL1xuICByZWFkb25seSBzZXR0aW5ncz86IFNldHRpbmdzO1xuXG4gIC8qKlxuICAgKiBUaGUgYWdlbnQgdXNlZCBmb3IgdGhlIG5ldHdvcmsgcmVxdWVzdCBvZiB0aGUgdmVyc2lvbiBjaGVja1xuICAgKlxuICAgKiBVc2UgdGhpcyB0byBzZXQgdXAgYSBwcm94eSBjb25uZWN0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHRoZSBzaGFyZWQgZ2xvYmFsIG5vZGUgYWdlbnRcbiAgICovXG4gIHJlYWRvbmx5IGFnZW50PzogaHR0cHMuQWdlbnQ7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkb2N0b3IoeyBpb0hlbHBlciwgc2V0dGluZ3MsIGFnZW50IH06IERvY3Rvck9wdGlvbnMpOiBQcm9taXNlPG51bWJlcj4ge1xuICBsZXQgZXhpdFN0YXR1czogbnVtYmVyID0gMDtcbiAgZm9yIChjb25zdCB2ZXJpZmljYXRpb24gb2YgdmVyaWZpY2F0aW9ucykge1xuICAgIGlmICghYXdhaXQgdmVyaWZpY2F0aW9uKGlvSGVscGVyLCBzZXR0aW5ncykpIHtcbiAgICAgIGV4aXRTdGF0dXMgPSAtMTtcbiAgICB9XG4gIH1cbiAgYXdhaXQgZGlzcGxheVZlcnNpb25NZXNzYWdlKGlvSGVscGVyLCB7IGFnZW50IH0pO1xuICByZXR1cm4gZXhpdFN0YXR1cztcbn1cblxuY29uc3QgdmVyaWZpY2F0aW9uczogQXJyYXk8KGlvSGVscGVyOiBJb0hlbHBlciwgc2V0dGluZ3M/OiBTZXR0aW5ncykgPT4gYm9vbGVhbiB8IFByb21pc2U8Ym9vbGVhbj4+ID0gW1xuICBkaXNwbGF5VmVyc2lvbkluZm9ybWF0aW9uLFxuICBkaXNwbGF5Q2xpQ29uZmlndXJhdGlvbixcbiAgZGlzcGxheUF3c0Vudmlyb25tZW50VmFyaWFibGVzLFxuICBkaXNwbGF5Q2RrRW52aXJvbm1lbnRWYXJpYWJsZXMsXG5dO1xuXG4vLyAjIyMgVmVyaWZpY2F0aW9ucyAjIyNcblxuYXN5bmMgZnVuY3Rpb24gZGlzcGxheUNsaUNvbmZpZ3VyYXRpb24oaW9IZWxwZXI6IElvSGVscGVyLCBzZXR0aW5ncz86IFNldHRpbmdzKSB7XG4gIGNvbnN0IHZlcmJvc2l0eSA9IE51bWJlcihzZXR0aW5ncz8uZ2V0KFsndmVyYm9zZSddKSA/PyAwKTtcbiAgY29uc3QgdmVyYm9zZSA9IHZlcmJvc2l0eSA/IGBleHRyYSB2ZXJib3NpdHkgKC0keyd2Jy5yZXBlYXQodmVyYm9zaXR5KX0pYCA6ICdub3JtYWwgdmVyYm9zaXR5JztcblxuICBjb25zdCBkZWJ1ZyA9IFtdO1xuICBpZiAoQm9vbGVhbihzZXR0aW5ncz8uZ2V0KFsnZGVidWdBcHAnXSkpKSB7XG4gICAgZGVidWcucHVzaCgnQ0RLIGFwcCcpO1xuICB9XG4gIGlmIChCb29sZWFuKHNldHRpbmdzPy5nZXQoWydkZWJ1Z0NsaSddKSkpIHtcbiAgICBkZWJ1Zy5wdXNoKCdDTEknKTtcbiAgfVxuICBjb25zdCBkZWJ1Z2dpbmcgPSBkZWJ1Zy5sZW5ndGggPyBgZGVidWdnaW5nICR7ZGVidWcuam9pbignICYgJyl9YCA6ICdubyBkZWJ1Z2dpbmcnO1xuXG4gIGF3YWl0IGlvSGVscGVyLmRlZmF1bHRzLmluZm8oY2hhbGsuZ3JheS5pdGFsaWMoXG4gICAgYCR7dmVyYm9zZX0sICR7ZGVidWdnaW5nfWAsXG4gICkpO1xuICByZXR1cm4gdHJ1ZTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZGlzcGxheVZlcnNpb25JbmZvcm1hdGlvbihpb0hlbHBlcjogSW9IZWxwZXIpIHtcbiAgYXdhaXQgaW9IZWxwZXIuZGVmYXVsdHMuaW5mbyhg4oS577iPIENESyBDTEkgVmVyc2lvbjogJHtjaGFsay5ncmVlbih2ZXJzaW9uV2l0aEJ1aWxkKCkpfWApO1xuICByZXR1cm4gdHJ1ZTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZGlzcGxheUF3c0Vudmlyb25tZW50VmFyaWFibGVzKGlvSGVscGVyOiBJb0hlbHBlcikge1xuICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMocHJvY2Vzcy5lbnYpLmZpbHRlcihzID0+IHMuc3RhcnRzV2l0aCgnQVdTXycpKTtcbiAgaWYgKGtleXMubGVuZ3RoID09PSAwKSB7XG4gICAgYXdhaXQgaW9IZWxwZXIuZGVmYXVsdHMuaW5mbygn4oS577iPIE5vIEFXUyBlbnZpcm9ubWVudCB2YXJpYWJsZXMnKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBhd2FpdCBpb0hlbHBlci5kZWZhdWx0cy5pbmZvKCfihLnvuI8gQVdTIGVudmlyb25tZW50IHZhcmlhYmxlczonKTtcbiAgZm9yIChjb25zdCBrZXkgb2Yga2V5cykge1xuICAgIGF3YWl0IGlvSGVscGVyLmRlZmF1bHRzLmluZm8oYCAgLSAke2NoYWxrLmJsdWUoa2V5KX0gPSAke2NoYWxrLmdyZWVuKGFub255bWl6ZUF3c1ZhcmlhYmxlKGtleSwgcHJvY2Vzcy5lbnZba2V5XSEpKX1gKTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZGlzcGxheUNka0Vudmlyb25tZW50VmFyaWFibGVzKGlvSGVscGVyOiBJb0hlbHBlcikge1xuICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMocHJvY2Vzcy5lbnYpLmZpbHRlcihzID0+IHMuc3RhcnRzV2l0aCgnQ0RLXycpKTtcbiAgaWYgKGtleXMubGVuZ3RoID09PSAwKSB7XG4gICAgYXdhaXQgaW9IZWxwZXIuZGVmYXVsdHMuaW5mbygn4oS577iPIE5vIENESyBlbnZpcm9ubWVudCB2YXJpYWJsZXMnKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBhd2FpdCBpb0hlbHBlci5kZWZhdWx0cy5pbmZvKCfihLnvuI8gQ0RLIGVudmlyb25tZW50IHZhcmlhYmxlczonKTtcbiAgbGV0IGhlYWx0aHkgPSB0cnVlO1xuICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzLnNvcnQoKSkge1xuICAgIGlmIChrZXkgPT09IGN4YXBpLkNPTlRFWFRfRU5WIHx8IGtleSA9PT0gY3hhcGkuQ09OVEVYVF9PVkVSRkxPV19MT0NBVElPTl9FTlYgfHwga2V5ID09PSBjeGFwaS5PVVRESVJfRU5WKSB7XG4gICAgICBhd2FpdCBpb0hlbHBlci5kZWZhdWx0cy5pbmZvKGAgIC0gJHtjaGFsay5yZWQoa2V5KX0gPSAke2NoYWxrLmdyZWVuKHByb2Nlc3MuZW52W2tleV0hKX0gKOKaoO+4jyByZXNlcnZlZCBmb3IgdXNlIGJ5IHRoZSBDREsgdG9vbGtpdClgKTtcbiAgICAgIGhlYWx0aHkgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXdhaXQgaW9IZWxwZXIuZGVmYXVsdHMuaW5mbyhgICAtICR7Y2hhbGsuYmx1ZShrZXkpfSA9ICR7Y2hhbGsuZ3JlZW4ocHJvY2Vzcy5lbnZba2V5XSEpfWApO1xuICAgIH1cbiAgfVxuICByZXR1cm4gaGVhbHRoeTtcbn1cblxuZnVuY3Rpb24gYW5vbnltaXplQXdzVmFyaWFibGUobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gIGlmIChuYW1lID09PSAnQVdTX0FDQ0VTU19LRVlfSUQnKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNsaWNlKDAsIDQpICsgJzxyZWRhY3RlZD4nO1xuICB9IC8vIFNob3cgQVNJQS9BS0lBIGtleSB0eXBlLCBidXQgaGlkZSBpZGVudGlmaWVyXG4gIGlmIChuYW1lID09PSAnQVdTX1NFQ1JFVF9BQ0NFU1NfS0VZJyB8fCBuYW1lID09PSAnQVdTX1NFU1NJT05fVE9LRU4nIHx8IG5hbWUgPT09ICdBV1NfU0VDVVJJVFlfVE9LRU4nKSB7XG4gICAgcmV0dXJuICc8cmVkYWN0ZWQ+JztcbiAgfVxuICByZXR1cm4gdmFsdWU7XG59XG4iXX0=
|
package/lib/commands/lsp.d.ts
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Runs the CDK Language Server command.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* With `--features`, prints the LSP capability manifest as JSON and exits.
|
|
5
|
+
* Otherwise starts the server, which speaks LSP/JSON-RPC on stdin/stdout -- in
|
|
6
|
+
* that mode the command must not write anything else to stdout (CDK CLI logs go
|
|
7
|
+
* to stderr, keeping the protocol channel clean). The server runs until the LSP
|
|
8
|
+
* client closes the stdio channel (stdin end), then exits 0.
|
|
8
9
|
*/
|
|
9
|
-
export declare function lsp(
|
|
10
|
+
export declare function lsp(options?: {
|
|
11
|
+
readonly features?: boolean;
|
|
12
|
+
}): Promise<number>;
|
package/lib/commands/lsp.js
CHANGED
|
@@ -35,17 +35,26 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.lsp = lsp;
|
|
37
37
|
const process = __importStar(require("process"));
|
|
38
|
-
const
|
|
38
|
+
const version_1 = require("../cli/version");
|
|
39
|
+
const explorer_1 = require("../private/explorer");
|
|
39
40
|
/**
|
|
40
|
-
*
|
|
41
|
+
* Runs the CDK Language Server command.
|
|
41
42
|
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
43
|
+
* With `--features`, prints the LSP capability manifest as JSON and exits.
|
|
44
|
+
* Otherwise starts the server, which speaks LSP/JSON-RPC on stdin/stdout -- in
|
|
45
|
+
* that mode the command must not write anything else to stdout (CDK CLI logs go
|
|
46
|
+
* to stderr, keeping the protocol channel clean). The server runs until the LSP
|
|
47
|
+
* client closes the stdio channel (stdin end), then exits 0.
|
|
46
48
|
*/
|
|
47
|
-
async function lsp() {
|
|
48
|
-
|
|
49
|
+
async function lsp(options = {}) {
|
|
50
|
+
// `--features` is a probe: print the capability manifest as JSON and exit
|
|
51
|
+
// without starting the server, so a client can detect LSP presence and
|
|
52
|
+
// features without opening a session.
|
|
53
|
+
if (options.features) {
|
|
54
|
+
process.stdout.write(JSON.stringify((0, explorer_1.cdkLspManifest)((0, version_1.versionNumber)())) + '\n');
|
|
55
|
+
return 0;
|
|
56
|
+
}
|
|
57
|
+
(0, explorer_1.startLspServer)((0, version_1.versionNumber)());
|
|
49
58
|
await new Promise((resolve) => {
|
|
50
59
|
const done = () => resolve();
|
|
51
60
|
process.stdin.once('end', done);
|
|
@@ -53,4 +62,4 @@ async function lsp() {
|
|
|
53
62
|
});
|
|
54
63
|
return 0;
|
|
55
64
|
}
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHNwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibHNwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBYUEsa0JBa0JDO0FBL0JELGlEQUFtQztBQUNuQyw0Q0FBK0M7QUFDL0Msa0RBQXFFO0FBRXJFOzs7Ozs7OztHQVFHO0FBQ0ksS0FBSyxVQUFVLEdBQUcsQ0FBQyxVQUEyQyxFQUFFO0lBQ3JFLDBFQUEwRTtJQUMxRSx1RUFBdUU7SUFDdkUsc0NBQXNDO0lBQ3RDLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3JCLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBQSx5QkFBYyxFQUFDLElBQUEsdUJBQWEsR0FBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUM3RSxPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxJQUFBLHlCQUFjLEVBQUMsSUFBQSx1QkFBYSxHQUFFLENBQUMsQ0FBQztJQUVoQyxNQUFNLElBQUksT0FBTyxDQUFPLENBQUMsT0FBTyxFQUFFLEVBQUU7UUFDbEMsTUFBTSxJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDN0IsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sQ0FBQyxDQUFDO0FBQ1gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHByb2Nlc3MgZnJvbSAncHJvY2Vzcyc7XG5pbXBvcnQgeyB2ZXJzaW9uTnVtYmVyIH0gZnJvbSAnLi4vY2xpL3ZlcnNpb24nO1xuaW1wb3J0IHsgY2RrTHNwTWFuaWZlc3QsIHN0YXJ0THNwU2VydmVyIH0gZnJvbSAnLi4vcHJpdmF0ZS9leHBsb3Jlcic7XG5cbi8qKlxuICogUnVucyB0aGUgQ0RLIExhbmd1YWdlIFNlcnZlciBjb21tYW5kLlxuICpcbiAqIFdpdGggYC0tZmVhdHVyZXNgLCBwcmludHMgdGhlIExTUCBjYXBhYmlsaXR5IG1hbmlmZXN0IGFzIEpTT04gYW5kIGV4aXRzLlxuICogT3RoZXJ3aXNlIHN0YXJ0cyB0aGUgc2VydmVyLCB3aGljaCBzcGVha3MgTFNQL0pTT04tUlBDIG9uIHN0ZGluL3N0ZG91dCAtLSBpblxuICogdGhhdCBtb2RlIHRoZSBjb21tYW5kIG11c3Qgbm90IHdyaXRlIGFueXRoaW5nIGVsc2UgdG8gc3Rkb3V0IChDREsgQ0xJIGxvZ3MgZ29cbiAqIHRvIHN0ZGVyciwga2VlcGluZyB0aGUgcHJvdG9jb2wgY2hhbm5lbCBjbGVhbikuIFRoZSBzZXJ2ZXIgcnVucyB1bnRpbCB0aGUgTFNQXG4gKiBjbGllbnQgY2xvc2VzIHRoZSBzdGRpbyBjaGFubmVsIChzdGRpbiBlbmQpLCB0aGVuIGV4aXRzIDAuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBsc3Aob3B0aW9uczogeyByZWFkb25seSBmZWF0dXJlcz86IGJvb2xlYW4gfSA9IHt9KTogUHJvbWlzZTxudW1iZXI+IHtcbiAgLy8gYC0tZmVhdHVyZXNgIGlzIGEgcHJvYmU6IHByaW50IHRoZSBjYXBhYmlsaXR5IG1hbmlmZXN0IGFzIEpTT04gYW5kIGV4aXRcbiAgLy8gd2l0aG91dCBzdGFydGluZyB0aGUgc2VydmVyLCBzbyBhIGNsaWVudCBjYW4gZGV0ZWN0IExTUCBwcmVzZW5jZSBhbmRcbiAgLy8gZmVhdHVyZXMgd2l0aG91dCBvcGVuaW5nIGEgc2Vzc2lvbi5cbiAgaWYgKG9wdGlvbnMuZmVhdHVyZXMpIHtcbiAgICBwcm9jZXNzLnN0ZG91dC53cml0ZShKU09OLnN0cmluZ2lmeShjZGtMc3BNYW5pZmVzdCh2ZXJzaW9uTnVtYmVyKCkpKSArICdcXG4nKTtcbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIHN0YXJ0THNwU2VydmVyKHZlcnNpb25OdW1iZXIoKSk7XG5cbiAgYXdhaXQgbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+IHtcbiAgICBjb25zdCBkb25lID0gKCkgPT4gcmVzb2x2ZSgpO1xuICAgIHByb2Nlc3Muc3RkaW4ub25jZSgnZW5kJywgZG9uZSk7XG4gICAgcHJvY2Vzcy5zdGRpbi5vbmNlKCdjbG9zZScsIGRvbmUpO1xuICB9KTtcblxuICByZXR1cm4gMDtcbn1cbiJdfQ==
|