jsii-release 0.3.8 → 0.3.9

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/lib/help/git.js CHANGED
@@ -84,7 +84,7 @@ function tryDetectRepositoryUrl(repositoryUrl) {
84
84
  if (!gitHubToken) {
85
85
  throw new Error('GITHUB_TOKEN env variable is required when GITHUB_USE_SSH env variable is not used');
86
86
  }
87
- return `https://${gitHubToken}@${repositoryUrl}.git`;
87
+ return `https://x-access-token:${gitHubToken}@${repositoryUrl}.git`;
88
88
  }
89
89
  /**
90
90
  * Checks if the current environment is an GHE environment.
@@ -313,4 +313,4 @@ function head() {
313
313
  return undefined;
314
314
  }
315
315
  }
316
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHAvZ2l0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBeUJBLHNCQW1CQztBQXlCRCw4QkFNQztBQVFELDRCQU1DO0FBT0QsOEJBRUM7QUFPRCw4QkFPQztBQU9ELGtCQUVDO0FBT0QsZ0JBU0M7QUFPRCx3QkFFQztBQUtELG9CQUVDO0FBUUQsa0JBVUM7QUFPRCxvQkFFQztBQVFELDRCQWFDO0FBTUQsNEJBU0M7QUFNRCxzQkFTQztBQVFELDRCQUdDO0FBS0Qsb0RBRUM7QUFPRCx3Q0FPQztBQVdELGtEQWVDO0FBTUQsb0JBTUM7QUE3U0QsK0NBQWlDO0FBbUJqQzs7Ozs7R0FLRztBQUNILFNBQWdCLEtBQUssQ0FBQyxhQUFxQixFQUFFLFNBQWlCLEVBQUUsRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxLQUFLLEVBQUUsTUFBTSxLQUFtQixFQUFFO0lBQ3BILE1BQU0sR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBRTdCLElBQUksS0FBSyxFQUFFLENBQUM7UUFDVixHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUNYLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ1QsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQ2hELEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFcEIsS0FBSyxDQUFDLEdB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QUM7SUFDbkIsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUN6QixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsSUFBSTtJQUNsQixJQUFJLENBQUM7UUFDSCxPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBzaGVsbCBmcm9tICcuL3NoZWxsJztcblxuZXhwb3J0IGludGVyZmFjZSBDbG9uZU9wdGlvbnMge1xuICAvKipcbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwdGg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSB0YWdzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IGJyYW5jaFxuICAgKi9cbiAgcmVhZG9ubHkgYnJhbmNoPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENsb25lcyBhIHJlcG9zaXRvcnkgZnJvbSBHaXRIdWIuIFJlcXVpcmVzIGEgYEdJVEhVQl9UT0tFTmAgZW52IHZhcmlhYmxlLlxuICpcbiAqIEBwYXJhbSByZXBvc2l0b3J5VXJsIHRoZSByZXBvc2l0b3J5IHRvIGNsb25lLlxuICogQHBhcmFtIHRhcmdldERpciB0aGUgY2xvbmUgZGlyZWN0b3J5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2xvbmUocmVwb3NpdG9yeVVybDogc3RyaW5nLCB0YXJnZXREaXI6IHN0cmluZywgeyBkZXB0aCA9IDEsIHRhZ3MgPSBmYWxzZSwgYnJhbmNoIH06IENsb25lT3B0aW9ucyA9IHt9KSB7XG4gIGNvbnN0IGNtZCA9IFsnZ2l0JywgJ2Nsb25lJ107XG5cbiAgaWYgKGRlcHRoKSB7XG4gICAgY21kLnB1c2goYC0tZGVwdGggJHtkZXB0aH1gKTtcbiAgfVxuXG4gIGlmIChicmFuY2gpIHtcbiAgICBjbWQucHVzaChgLS1icmFuY2ggJHticmFuY2h9YCk7XG4gIH1cblxuICBpZiAodGFncykge1xuICAgIGNtZC5wdXNoKCctLXRhZ3MnKTtcbiAgfVxuXG4gIGNtZC5wdXNoKHRyeURldGVjdFJlcG9zaXRvcnlVcmwocmVwb3NpdG9yeVVybCkpO1xuICBjbWQucHVzaCh0YXJnZXREaXIpO1xuXG4gIHNoZWxsLnJ1bihjbWQuam9pbignICcpKTtcbn1cblxuZnVuY3Rpb24gdHJ5RGV0ZWN0UmVwb3NpdG9yeVVybChyZXBvc2l0b3J5VXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBnaXRIdWJVc2VTc2ggPSBkZXRlY3RTU0goKTtcbiAgaWYgKGdpdEh1YlVzZVNzaCkge1xuICAgIGNvbnN0IHNzaFJlcG9zaXRvcnlVcmwgPSByZXBvc2l0b3J5VXJsLnJlcGxhY2UoJy8nLCAnOicpO1xuICAgIHJldHVybiBgZ2l0QCR7c3NoUmVwb3NpdG9yeVVybH0uZ2l0YDtcbiAgfVxuXG4gIGNvbnN0IGdpdEh1YlRva2VuID0gZ2V0VG9rZW4oZGV0ZWN0R0hFKCkpO1xuICBpZiAoIWdpdEh1YlRva2VuKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdHSVRIVUJfVE9LRU4gZW52IHZhcmlhYmxlIGlzIHJlcXVpcmVkIHdoZW4gR0lUSFVCX1VTRV9TU0ggZW52IHZhcmlhYmxlIGlzIG5vdCB1c2VkJyk7XG4gIH1cbiAgcmV0dXJuIGBodHRwczovLyR7Z2l0SHViVG9rZW59QCR7cmVwb3NpdG9yeVVybH0uZ2l0YDtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQgaXMgYW4gR0hFIGVudmlyb25tZW50LlxuICpcbiAqIFRoaXMgY2hlY2sgaXMgdXNpbmcgR0lUSFVCX0FQSV9VUkwgc2V0IGluIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93LCBhcyB3ZWxsIGFzIGNvbW1vbiBnaCBjbGkgZW52IHZhcmlhYmxlcy5cbiAqIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2FjdGlvbnMvbGVhcm4tZ2l0aHViLWFjdGlvbnMvdmFyaWFibGVzI2RlZmF1bHQtZW52aXJvbm1lbnQtdmFyaWFibGVzXG4gKiBodHRwczovL2NsaS5naXRodWIuY29tL21hbnVhbC9naF9oZWxwX2Vudmlyb25tZW50XG4gKlxuICogQHJldHVybiAtIGB0cnVlYCBpZiBHSF9IT1NUIG9yIEdJVEhVQl9BUElfVVJMIGVudiB2YXIgYXJlIGRlZmluZWQgYW5kIG5vdCBlcXVhbCB0byB0aGUgcHVibGljIGdpdGh1YiBlbmRwb2ludCwgb3RoZXJ3aXNlIGBmYWxzZWBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRldGVjdEdIRSgpOiBib29sZWFuIHtcbiAgY29uc3QgZ2l0aHViQXBpVXJsID0gcHJvY2Vzcy5lbnYuR0lUSFVCX0FQSV9VUkw7XG4gIGNvbnN0IGdoSG9zdCA9IHByb2Nlc3MuZW52LkdIX0hPU1Q7XG5cbiAgcmV0dXJuIChCb29sZWFuKGdoSG9zdCkgJiYgZ2hIb3N0IS50cmltKCkudG9Mb3dlckNhc2UoKSAhPSAnZ2l0aHViLmNvbScpXG4gICAgfHwgKEJvb2xlYW4oZ2l0aHViQXBpVXJsKSAmJiBnaXRodWJBcGlVcmwhLnRyaW0oKS50b0xvd2VyQ2FzZSgpICE9ICdodHRwczovL2FwaS5naXRodWIuY29tJyk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhbiBhcHByb3ByaWF0ZSBnaXRodWIgdG9rZW4gZnJvbSB0aGUgZW52aXJvbm1lbnQuXG4gKlxuICogQHJldHVybiBHSF9FTlRFUlBSSVNFX1RPS0VOIG9yIEdJVEhVQl9FTlRFUlBSSVNFX1RPS0VOIG9yIEdJVEhVQl9UT0tFTiBpZiBpbiBhbiBHSEUgZW52aXJvbm1lbnQsIG90aGVyd2lzZSBHSVRIVUJfVE9LRU5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VG9rZW4oaXNHSEU6IGJvb2xlYW4pOiAoc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gIGlmIChpc0dIRSkge1xuICAgIGNvbnN0IGdpdGh1YkVudGVycGlzZVRva2VuID0gcHJvY2Vzcy5lbnYuR0hfRU5URVJQUklTRV9UT0tFTiA/PyBwcm9jZXNzLmVudi5HSVRIVUJfRU5URVJQUklTRV9UT0tFTiA/PyBwcm9jZXNzLmVudi5HSVRIVUJfVE9LRU47XG4gICAgcmV0dXJuIGdpdGh1YkVudGVycGlzZVRva2VuO1xuICB9XG4gIHJldHVybiBwcm9jZXNzLmVudi5HSVRIVUJfVE9LRU47XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIFNTSCBzaG91bGQgYmUgdXNlZCB0byBjbG9uZSByZXBvLlxuICogVGhpcyBjaGVja3MgdGhlIHByZXNlbmNlIGFuZCB2YWx1ZXMgb2YgdGhlIEdJVF9VU0VfU1NIIGVudiB2YXJpYWJsZSBhbmQgdGhlIGRlcHJlY2F0ZWQgR0lUSFVCX1VTRV9TU0ggZm9yIGxlZ2FjeSByZWFzb24uIFJldHVybnMgdHJ1ZSBpZiBlaXRoZXIgb2YgdGhlc2UgZW52IHZhcnMgYXJlIGRlZmluZWQgYW5kIG5vdCBmYWxzeS5cbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gZGV0ZWN0U1NIKCk6IGJvb2xlYW4ge1xuICByZXR1cm4gQm9vbGVhbihwcm9jZXNzLmVudi5HSVRfVVNFX1NTSCA/PyBwcm9jZXNzLmVudi5HSVRIVUJfVVNFX1NTSCk7XG59XG5cbi8qKlxuICogUXVlcnkgdGhlIGdpdCBpbmRleCBmb3IgY2hhbmdlcy5cbiAqXG4gKiBAcmV0dXJuIFRydWUgaWYgY2hhbmdlcyBleGlzdCwgRmFsc2Ugb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZGlmZkluZGV4KCk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIHNoZWxsLnJ1bignZ2l0IGRpZmYtaW5kZXggLS1leGl0LWNvZGUgSEVBRCAtLScpO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cblxuLyoqXG4gKiBBZGQgZmlsZXMgdG8gdGhlIGluZGV4LlxuICpcbiAqIEBwYXJhbSBwIHRoZSBwYXRoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYWRkKHA6IHN0cmluZykge1xuICBzaGVsbC5ydW4oYGdpdCBhZGQgJHtwfWApO1xufVxuXG4vKipcbiAqIFJlbW92ZSBmaWxlcyBmcm9tIHRoZSB3b3JraW5nIHRyZWUgYW5kIGZyb20gdGhlIGluZGV4XG4gKlxuICogQHBhcmFtIHAgdGhlIHBhdGguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBybShwOiBzdHJpbmcsIG9wdGlvbnM6IHsgcmVjdXJzaXZlPzogYm9vbGVhbiB9ID0ge30pIHtcbiAgY29uc3QgY21kID0gWydnaXQnLCAncm0nXTtcbiAgaWYgKG9wdGlvbnMucmVjdXJzaXZlKSB7XG4gICAgY21kLnB1c2goJy1yJyk7XG4gIH1cblxuICBjbWQucHVzaChwKTtcblxuICBzaGVsbC5ydW4oY21kLmpvaW4oJyAnKSk7XG59XG5cbi8qKlxuICogQ29tbWl0LlxuICpcbiAqIEBwYXJhbSBtZXNzYWdlIHRoZSBjb21taXQgbWVzc2FnZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbW1pdChtZXNzYWdlOiBzdHJpbmcpIHtcbiAgc2hlbGwucnVuKGBnaXQgY29tbWl0IC1tIFwiJHttZXNzYWdlfVwiYCk7XG59XG5cbi8qKlxuICogSW5pdGlhbGl6ZSBhIHJlcG9zaXRvcnkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbml0KCkge1xuICBzaGVsbC5ydW4oJ2dpdCBpbml0Jyk7XG59XG5cbi8qKlxuICogQ2VyYXRlIGEgdGFnLlxuICpcbiAqIEBwYXJhbSBuYW1lIHRhZyBuYW1lLlxuICogQHJldHVybnMgdHJ1ZSBpZiB0aGUgdGFnIHdhcyBjcmVhdGVkLCBmYWxzZSBpZiBpdCBhbHJlYWR5IGV4aXN0cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRhZyhuYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBzaGVsbC5ydW4oYGdpdCB0YWcgLWEgJHtuYW1lfSAtbSAke25hbWV9YCwgeyBjYXB0dXJlOiB0cnVlIH0pO1xuICAgIHJldHVybiB0cnVlO1xuICB9IGNhdGNoIChlKSB7XG4gICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvciAmJiBlLm1lc3NhZ2UuaW5jbHVkZXMoJ2FscmVhZHkgZXhpc3RzJykpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgdGhyb3cgZTtcbiAgfVxufVxuXG4vKipcbiAqIFB1c2ggYSByZWYgdG8gb3JpZ2luLlxuICpcbiAqIEBwYXJhbSByZWYgdGhlIHJlZlxuICovXG5leHBvcnQgZnVuY3Rpb24gcHVzaChyZWY6IHN0cmluZykge1xuICBzaGVsbC5ydW4oYGdpdCBwdXNoIG9yaWdpbiAke3JlZn1gKTtcbn1cblxuLyoqXG4gKiBDaGVja291dCB0byBhIG5ldyBicmFuY2guIENyZWF0ZXMgYSBuZXcgb25lIGlmIGBvcHRpb25zLmNyZWF0ZUlmTWlzc2luZ2AgaXMgVHJ1ZSBhbmQgdGhlIGJyYW5jaCBkb2Vzbid0IGV4aXN0LlxuICpcbiAqIEBwYXJhbSBicmFuY2ggdGhlIGJyYW5jaC5cbiAqIEBwYXJhbSBvcHRpb25zIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjaGVja291dChicmFuY2g6IHN0cmluZywgb3B0aW9uczogeyBjcmVhdGVJZk1pc3Npbmc/OiBib29sZWFuIH0gKSB7XG4gIGlmIChvcHRpb25zLmNyZWF0ZUlmTWlzc2luZykge1xuICAgIHRyeSB7XG4gICAgICBzaGVsbC5ydW4oYGdpdCBzaG93LWJyYW5jaCBvcmlnaW4vJHticmFuY2h9YCwgeyBjYXB0dXJlOiB0cnVlIH0pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IgJiYgZS5tZXNzYWdlLmluY2x1ZGVzKCdmYXRhbDogYmFkIHNoYTEgcmVmZXJlbmNlJykpIHtcbiAgICAgICAgY29uc29sZS5sb2coJ1JlbW90ZSBicmFuY2ggbm90IGZvdW5kLCBjcmVhdGluZyBuZXcgYnJhbmNoLicpO1xuICAgICAgICBzaGVsbC5ydW4oYGdpdCBjaGVja291dCAtQiAke2JyYW5jaH1gKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBzaGVsbC5ydW4oYGdpdCBjaGVja291dCAke2JyYW5jaH1gKTtcbn1cblxuLyoqXG4gKiBGZXRjaCB0aGUgY29uZmlndXJlZCBnaXQgdXNlciBuYW1lIGZvciB0aGUgY3VycmVudCBkaXJlY3RvcnkuXG4gKiBSZXR1cm5zIHVuZGVmaW5lZCBpZiBub3QgY29uZmlndXJlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZXJuYW1lKCkge1xuICB0cnkge1xuICAgIHJldHVybiBzaGVsbC5ydW4oJ2dpdCBjb25maWcgdXNlci5uYW1lJywgeyBjYXB0dXJlOiB0cnVlIH0pO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICBpZiAoZXJyIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIGNvbnNvbGUud2FybihlcnIubWVzc2FnZSk7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cblxuLyoqXG4gKiBGZXRjaCB0aGUgY29uZmlndXJlZCBnaXQgdXNlciBlbWFpbCBmb3IgdGhlIGN1cnJlbnQgZGlyZWN0b3J5LlxuICogUmV0dXJucyB1bmRlZmluZWQgaWYgbm90IGNvbmZpZ3VyZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbWFpbCgpIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gc2hlbGwucnVuKCdnaXQgY29uZmlnIHVzZXIuZW1haWwnLCB7IGNhcHR1cmU6IHRydWUgfSk7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgY29uc29sZS53YXJuKGVyci5tZXNzYWdlKTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG4vKipcbiAqIElkZW50aWZ5IHRoZSBjb21taXR0ZXIgd2l0aCBhIHVzZXJuYW1lIGFuZCBlbWFpbC5cbiAqXG4gKiBAcGFyYW0gdXNlciB0aGUgdXNlcm5hbWUuXG4gKiBAcGFyYW0gZW1haWwgdGhlIGVtYWlsIGFkZHJlc3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpZGVudGlmeSh1c2VyOiBzdHJpbmcsIGFkZHJlc3M6IHN0cmluZykge1xuICBzaGVsbC5ydW4oYGdpdCBjb25maWcgdXNlci5uYW1lIFwiJHt1c2VyfVwiYCk7XG4gIHNoZWxsLnJ1bihgZ2l0IGNvbmZpZyB1c2VyLmVtYWlsIFwiJHthZGRyZXNzfVwiYCk7XG59XG5cbi8qKlxuICogRG9lcyB0aGUgZ2l2ZW4gYnJhbmNoIGV4aXN0cyBvbiB0aGUgcmVtb3RlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYnJhbmNoRXhpc3RzT25SZW1vdGUocmVwb3NpdG9yeVVybDogc3RyaW5nLCBicmFuY2g6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gc2hlbGwuY2hlY2soYGdpdCBscy1yZW1vdGUgLS1leGl0LWNvZGUgLS1oZWFkcyAke3RyeURldGVjdFJlcG9zaXRvcnlVcmwocmVwb3NpdG9yeVVybCl9ICR7YnJhbmNofWAsIHsgY2FwdHVyZTogdHJ1ZSB9KTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBgb3duZXIvcmVwb2Agc2x1ZyBvZiB0aGUgYG9yaWdpbmAgcmVtb3RlIGluIHRoZSBjdXJyZW50XG4gKiBkaXJlY3RvcnksIG9yIHVuZGVmaW5lZCBpZiBpdCBjYW5ub3QgYmUgZGV0ZXJtaW5lZCAoZS5nLiBub3QgaW4gYSBnaXRcbiAqIHJlcG9zaXRvcnksIG9yIG5vIGBvcmlnaW5gIHJlbW90ZSBjb25maWd1cmVkKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcG9zaXRvcnlTbHVnKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIHRyeSB7XG4gICAgY29uc3QgdXJsID0gc2hlbGwucnVuKCdnaXQgcmVtb3RlIGdldC11cmwgb3JpZ2luJywgeyBjYXB0dXJlOiB0cnVlIH0pO1xuICAgIHJldHVybiBwYXJzZVJlcG9zaXRvcnlTbHVnKHVybCk7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cblxuLyoqXG4gKiBFeHRyYWN0cyB0aGUgYG93bmVyL3JlcG9gIHNsdWcgZnJvbSBhIGdpdCByZW1vdGUgVVJMLlxuICpcbiAqIFN1cHBvcnRzIEhUVFBTIChgaHR0cHM6Ly9naXRodWIuY29tL293bmVyL3JlcG8uZ2l0YCksIFNTSFxuICogKGBnaXRAZ2l0aHViLmNvbTpvd25lci9yZXBvLmdpdGAsIGBzc2g6Ly9naXRAZ2l0aHViLmNvbS9vd25lci9yZXBvLmdpdGApXG4gKiBhbmQgVVJMcyB3aXRob3V0IGEgYC5naXRgIHN1ZmZpeC5cbiAqXG4gKiBAcmV0dXJucyB0aGUgYG93bmVyL3JlcG9gIHNsdWcsIG9yIHVuZGVmaW5lZCBpZiBpdCBjYW5ub3QgYmUgZGV0ZXJtaW5lZFxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VSZXBvc2l0b3J5U2x1Zyh1cmw6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IHBhdGggPSB1cmxcbiAgICAudHJpbSgpXG4gICAgLnJlcGxhY2UoL1xcLmdpdCQvLCAnJylcbiAgICAvLyBkcm9wIHRoZSBzY2hlbWUgKGh0dHBzOi8vLCBzc2g6Ly8sIGdpdCtzc2g6Ly8sIC4uLilcbiAgICAucmVwbGFjZSgvXlthLXorXSs6XFwvXFwvLywgJycpXG4gICAgLy8gbm9ybWFsaXplIHNjcC1saWtlIHNzaCBzeW50YXggKGdpdEBob3N0Om93bmVyL3JlcG8pIHRvIGEgcGF0aFxuICAgIC5yZXBsYWNlKC9eZ2l0QFteOi9dK1s6L10vLCAnJylcbiAgICAvLyBzdHJpcCBhIGxlYWRpbmcgaG9zdCBzZWdtZW50IChnaXRodWIuY29tL293bmVyL3JlcG8pXG4gICAgLnJlcGxhY2UoL15bXi9dK1xcLlteL10rXFwvLywgJycpO1xuICBjb25zdCBwYXJ0cyA9IHBhdGguc3BsaXQoJy8nKS5maWx0ZXIoQm9vbGVhbik7XG4gIGlmIChwYXJ0cy5sZW5ndGggIT09IDIpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIHJldHVybiBwYXJ0cy5qb2luKCcvJyk7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgY29tbWl0IGhhc2ggb2YgSEVBRCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnksIG9yIHVuZGVmaW5lZCBpZlxuICogaXQgY2Fubm90IGJlIGRldGVybWluZWQgKGUuZy4gbm90IGluIGEgZ2l0IHJlcG9zaXRvcnkpLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaGVhZCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICB0cnkge1xuICAgIHJldHVybiBzaGVsbC5ydW4oJ2dpdCByZXYtcGFyc2UgSEVBRCcsIHsgY2FwdHVyZTogdHJ1ZSB9KTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
316
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHAvZ2l0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBeUJBLHNCQW1CQztBQXlCRCw4QkFNQztBQVFELDRCQU1DO0FBT0QsOEJBRUM7QUFPRCw4QkFPQztBQU9ELGtCQUVDO0FBT0QsZ0JBU0M7QUFPRCx3QkFFQztBQUtELG9CQUVDO0FBUUQsa0JBVUM7QUFPRCxvQkFFQztBQVFELDRCQWFDO0FBTUQsNEJBU0M7QUFNRCxzQkFTQztBQVFELDRCQUdDO0FBS0Qsb0RBRUM7QUFPRCx3Q0FPQztBQVdELGtEQWVDO0FBTUQsb0JBTUM7QUE3U0QsK0NBQWlDO0FBbUJqQzs7Ozs7R0FLRztBQUNILFNBQWdCLEtBQUssQ0FBQyxhQUFxQixFQUFFLFNBQWlCLEVBQUUsRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxLQUFLLEVBQUUsTUFBTSxLQUFtQixFQUFFO0lBQ3BILE1BQU0sR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBRTdCLElBQUksS0FBSyxFQUFFLENBQUM7UUFDVixHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUNYLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ1QsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQ2hELEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFcEIsS0FBSyxDQUFDLEdB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Q0FBQztJQUNuQixDQUFDO0lBQ0QsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3pCLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixJQUFJO0lBQ2xCLElBQUksQ0FBQztRQUNILE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHNoZWxsIGZyb20gJy4vc2hlbGwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENsb25lT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICByZWFkb25seSBkZXB0aD86IG51bWJlcjtcblxuICAvKipcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHRhZ3M/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgYnJhbmNoXG4gICAqL1xuICByZWFkb25seSBicmFuY2g/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ2xvbmVzIGEgcmVwb3NpdG9yeSBmcm9tIEdpdEh1Yi4gUmVxdWlyZXMgYSBgR0lUSFVCX1RPS0VOYCBlbnYgdmFyaWFibGUuXG4gKlxuICogQHBhcmFtIHJlcG9zaXRvcnlVcmwgdGhlIHJlcG9zaXRvcnkgdG8gY2xvbmUuXG4gKiBAcGFyYW0gdGFyZ2V0RGlyIHRoZSBjbG9uZSBkaXJlY3RvcnkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjbG9uZShyZXBvc2l0b3J5VXJsOiBzdHJpbmcsIHRhcmdldERpcjogc3RyaW5nLCB7IGRlcHRoID0gMSwgdGFncyA9IGZhbHNlLCBicmFuY2ggfTogQ2xvbmVPcHRpb25zID0ge30pIHtcbiAgY29uc3QgY21kID0gWydnaXQnLCAnY2xvbmUnXTtcblxuICBpZiAoZGVwdGgpIHtcbiAgICBjbWQucHVzaChgLS1kZXB0aCAke2RlcHRofWApO1xuICB9XG5cbiAgaWYgKGJyYW5jaCkge1xuICAgIGNtZC5wdXNoKGAtLWJyYW5jaCAke2JyYW5jaH1gKTtcbiAgfVxuXG4gIGlmICh0YWdzKSB7XG4gICAgY21kLnB1c2goJy0tdGFncycpO1xuICB9XG5cbiAgY21kLnB1c2godHJ5RGV0ZWN0UmVwb3NpdG9yeVVybChyZXBvc2l0b3J5VXJsKSk7XG4gIGNtZC5wdXNoKHRhcmdldERpcik7XG5cbiAgc2hlbGwucnVuKGNtZC5qb2luKCcgJykpO1xufVxuXG5mdW5jdGlvbiB0cnlEZXRlY3RSZXBvc2l0b3J5VXJsKHJlcG9zaXRvcnlVcmw6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGdpdEh1YlVzZVNzaCA9IGRldGVjdFNTSCgpO1xuICBpZiAoZ2l0SHViVXNlU3NoKSB7XG4gICAgY29uc3Qgc3NoUmVwb3NpdG9yeVVybCA9IHJlcG9zaXRvcnlVcmwucmVwbGFjZSgnLycsICc6Jyk7XG4gICAgcmV0dXJuIGBnaXRAJHtzc2hSZXBvc2l0b3J5VXJsfS5naXRgO1xuICB9XG5cbiAgY29uc3QgZ2l0SHViVG9rZW4gPSBnZXRUb2tlbihkZXRlY3RHSEUoKSk7XG4gIGlmICghZ2l0SHViVG9rZW4pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0dJVEhVQl9UT0tFTiBlbnYgdmFyaWFibGUgaXMgcmVxdWlyZWQgd2hlbiBHSVRIVUJfVVNFX1NTSCBlbnYgdmFyaWFibGUgaXMgbm90IHVzZWQnKTtcbiAgfVxuICByZXR1cm4gYGh0dHBzOi8veC1hY2Nlc3MtdG9rZW46JHtnaXRIdWJUb2tlbn1AJHtyZXBvc2l0b3J5VXJsfS5naXRgO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgY3VycmVudCBlbnZpcm9ubWVudCBpcyBhbiBHSEUgZW52aXJvbm1lbnQuXG4gKlxuICogVGhpcyBjaGVjayBpcyB1c2luZyBHSVRIVUJfQVBJX1VSTCBzZXQgaW4gR2l0SHViIEFjdGlvbnMgd29ya2Zsb3csIGFzIHdlbGwgYXMgY29tbW9uIGdoIGNsaSBlbnYgdmFyaWFibGVzLlxuICogaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy9sZWFybi1naXRodWItYWN0aW9ucy92YXJpYWJsZXMjZGVmYXVsdC1lbnZpcm9ubWVudC12YXJpYWJsZXNcbiAqIGh0dHBzOi8vY2xpLmdpdGh1Yi5jb20vbWFudWFsL2doX2hlbHBfZW52aXJvbm1lbnRcbiAqXG4gKiBAcmV0dXJuIC0gYHRydWVgIGlmIEdIX0hPU1Qgb3IgR0lUSFVCX0FQSV9VUkwgZW52IHZhciBhcmUgZGVmaW5lZCBhbmQgbm90IGVxdWFsIHRvIHRoZSBwdWJsaWMgZ2l0aHViIGVuZHBvaW50LCBvdGhlcndpc2UgYGZhbHNlYFxuICovXG5leHBvcnQgZnVuY3Rpb24gZGV0ZWN0R0hFKCk6IGJvb2xlYW4ge1xuICBjb25zdCBnaXRodWJBcGlVcmwgPSBwcm9jZXNzLmVudi5HSVRIVUJfQVBJX1VSTDtcbiAgY29uc3QgZ2hIb3N0ID0gcHJvY2Vzcy5lbnYuR0hfSE9TVDtcblxuICByZXR1cm4gKEJvb2xlYW4oZ2hIb3N0KSAmJiBnaEhvc3QhLnRyaW0oKS50b0xvd2VyQ2FzZSgpICE9ICdnaXRodWIuY29tJylcbiAgICB8fCAoQm9vbGVhbihnaXRodWJBcGlVcmwpICYmIGdpdGh1YkFwaVVybCEudHJpbSgpLnRvTG93ZXJDYXNlKCkgIT0gJ2h0dHBzOi8vYXBpLmdpdGh1Yi5jb20nKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGFuIGFwcHJvcHJpYXRlIGdpdGh1YiB0b2tlbiBmcm9tIHRoZSBlbnZpcm9ubWVudC5cbiAqXG4gKiBAcmV0dXJuIEdIX0VOVEVSUFJJU0VfVE9LRU4gb3IgR0lUSFVCX0VOVEVSUFJJU0VfVE9LRU4gb3IgR0lUSFVCX1RPS0VOIGlmIGluIGFuIEdIRSBlbnZpcm9ubWVudCwgb3RoZXJ3aXNlIEdJVEhVQl9UT0tFTlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUb2tlbihpc0dIRTogYm9vbGVhbik6IChzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgaWYgKGlzR0hFKSB7XG4gICAgY29uc3QgZ2l0aHViRW50ZXJwaXNlVG9rZW4gPSBwcm9jZXNzLmVudi5HSF9FTlRFUlBSSVNFX1RPS0VOID8/IHByb2Nlc3MuZW52LkdJVEhVQl9FTlRFUlBSSVNFX1RPS0VOID8/IHByb2Nlc3MuZW52LkdJVEhVQl9UT0tFTjtcbiAgICByZXR1cm4gZ2l0aHViRW50ZXJwaXNlVG9rZW47XG4gIH1cbiAgcmV0dXJuIHByb2Nlc3MuZW52LkdJVEhVQl9UT0tFTjtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgU1NIIHNob3VsZCBiZSB1c2VkIHRvIGNsb25lIHJlcG8uXG4gKiBUaGlzIGNoZWNrcyB0aGUgcHJlc2VuY2UgYW5kIHZhbHVlcyBvZiB0aGUgR0lUX1VTRV9TU0ggZW52IHZhcmlhYmxlIGFuZCB0aGUgZGVwcmVjYXRlZCBHSVRIVUJfVVNFX1NTSCBmb3IgbGVnYWN5IHJlYXNvbi4gUmV0dXJucyB0cnVlIGlmIGVpdGhlciBvZiB0aGVzZSBlbnYgdmFycyBhcmUgZGVmaW5lZCBhbmQgbm90IGZhbHN5LlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBkZXRlY3RTU0goKTogYm9vbGVhbiB7XG4gIHJldHVybiBCb29sZWFuKHByb2Nlc3MuZW52LkdJVF9VU0VfU1NIID8/IHByb2Nlc3MuZW52LkdJVEhVQl9VU0VfU1NIKTtcbn1cblxuLyoqXG4gKiBRdWVyeSB0aGUgZ2l0IGluZGV4IGZvciBjaGFuZ2VzLlxuICpcbiAqIEByZXR1cm4gVHJ1ZSBpZiBjaGFuZ2VzIGV4aXN0LCBGYWxzZSBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkaWZmSW5kZXgoKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgc2hlbGwucnVuKCdnaXQgZGlmZi1pbmRleCAtLWV4aXQtY29kZSBIRUFEIC0tJyk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuXG4vKipcbiAqIEFkZCBmaWxlcyB0byB0aGUgaW5kZXguXG4gKlxuICogQHBhcmFtIHAgdGhlIHBhdGguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhZGQocDogc3RyaW5nKSB7XG4gIHNoZWxsLnJ1bihgZ2l0IGFkZCAke3B9YCk7XG59XG5cbi8qKlxuICogUmVtb3ZlIGZpbGVzIGZyb20gdGhlIHdvcmtpbmcgdHJlZSBhbmQgZnJvbSB0aGUgaW5kZXhcbiAqXG4gKiBAcGFyYW0gcCB0aGUgcGF0aC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJtKHA6IHN0cmluZywgb3B0aW9uczogeyByZWN1cnNpdmU/OiBib29sZWFuIH0gPSB7fSkge1xuICBjb25zdCBjbWQgPSBbJ2dpdCcsICdybSddO1xuICBpZiAob3B0aW9ucy5yZWN1cnNpdmUpIHtcbiAgICBjbWQucHVzaCgnLXInKTtcbiAgfVxuXG4gIGNtZC5wdXNoKHApO1xuXG4gIHNoZWxsLnJ1bihjbWQuam9pbignICcpKTtcbn1cblxuLyoqXG4gKiBDb21taXQuXG4gKlxuICogQHBhcmFtIG1lc3NhZ2UgdGhlIGNvbW1pdCBtZXNzYWdlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29tbWl0KG1lc3NhZ2U6IHN0cmluZykge1xuICBzaGVsbC5ydW4oYGdpdCBjb21taXQgLW0gXCIke21lc3NhZ2V9XCJgKTtcbn1cblxuLyoqXG4gKiBJbml0aWFsaXplIGEgcmVwb3NpdG9yeS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluaXQoKSB7XG4gIHNoZWxsLnJ1bignZ2l0IGluaXQnKTtcbn1cblxuLyoqXG4gKiBDZXJhdGUgYSB0YWcuXG4gKlxuICogQHBhcmFtIG5hbWUgdGFnIG5hbWUuXG4gKiBAcmV0dXJucyB0cnVlIGlmIHRoZSB0YWcgd2FzIGNyZWF0ZWQsIGZhbHNlIGlmIGl0IGFscmVhZHkgZXhpc3RzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdGFnKG5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIHNoZWxsLnJ1bihgZ2l0IHRhZyAtYSAke25hbWV9IC1tICR7bmFtZX1gLCB7IGNhcHR1cmU6IHRydWUgfSk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yICYmIGUubWVzc2FnZS5pbmNsdWRlcygnYWxyZWFkeSBleGlzdHMnKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICB0aHJvdyBlO1xuICB9XG59XG5cbi8qKlxuICogUHVzaCBhIHJlZiB0byBvcmlnaW4uXG4gKlxuICogQHBhcmFtIHJlZiB0aGUgcmVmXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwdXNoKHJlZjogc3RyaW5nKSB7XG4gIHNoZWxsLnJ1bihgZ2l0IHB1c2ggb3JpZ2luICR7cmVmfWApO1xufVxuXG4vKipcbiAqIENoZWNrb3V0IHRvIGEgbmV3IGJyYW5jaC4gQ3JlYXRlcyBhIG5ldyBvbmUgaWYgYG9wdGlvbnMuY3JlYXRlSWZNaXNzaW5nYCBpcyBUcnVlIGFuZCB0aGUgYnJhbmNoIGRvZXNuJ3QgZXhpc3QuXG4gKlxuICogQHBhcmFtIGJyYW5jaCB0aGUgYnJhbmNoLlxuICogQHBhcmFtIG9wdGlvbnMgb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrb3V0KGJyYW5jaDogc3RyaW5nLCBvcHRpb25zOiB7IGNyZWF0ZUlmTWlzc2luZz86IGJvb2xlYW4gfSApIHtcbiAgaWYgKG9wdGlvbnMuY3JlYXRlSWZNaXNzaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIHNoZWxsLnJ1bihgZ2l0IHNob3ctYnJhbmNoIG9yaWdpbi8ke2JyYW5jaH1gLCB7IGNhcHR1cmU6IHRydWUgfSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvciAmJiBlLm1lc3NhZ2UuaW5jbHVkZXMoJ2ZhdGFsOiBiYWQgc2hhMSByZWZlcmVuY2UnKSkge1xuICAgICAgICBjb25zb2xlLmxvZygnUmVtb3RlIGJyYW5jaCBub3QgZm91bmQsIGNyZWF0aW5nIG5ldyBicmFuY2guJyk7XG4gICAgICAgIHNoZWxsLnJ1bihgZ2l0IGNoZWNrb3V0IC1CICR7YnJhbmNofWApO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHNoZWxsLnJ1bihgZ2l0IGNoZWNrb3V0ICR7YnJhbmNofWApO1xufVxuXG4vKipcbiAqIEZldGNoIHRoZSBjb25maWd1cmVkIGdpdCB1c2VyIG5hbWUgZm9yIHRoZSBjdXJyZW50IGRpcmVjdG9yeS5cbiAqIFJldHVybnMgdW5kZWZpbmVkIGlmIG5vdCBjb25maWd1cmVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlcm5hbWUoKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIHNoZWxsLnJ1bignZ2l0IGNvbmZpZyB1c2VyLm5hbWUnLCB7IGNhcHR1cmU6IHRydWUgfSk7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgY29uc29sZS53YXJuKGVyci5tZXNzYWdlKTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG4vKipcbiAqIEZldGNoIHRoZSBjb25maWd1cmVkIGdpdCB1c2VyIGVtYWlsIGZvciB0aGUgY3VycmVudCBkaXJlY3RvcnkuXG4gKiBSZXR1cm5zIHVuZGVmaW5lZCBpZiBub3QgY29uZmlndXJlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVtYWlsKCkge1xuICB0cnkge1xuICAgIHJldHVybiBzaGVsbC5ydW4oJ2dpdCBjb25maWcgdXNlci5lbWFpbCcsIHsgY2FwdHVyZTogdHJ1ZSB9KTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgaWYgKGVyciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICBjb25zb2xlLndhcm4oZXJyLm1lc3NhZ2UpO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbi8qKlxuICogSWRlbnRpZnkgdGhlIGNvbW1pdHRlciB3aXRoIGEgdXNlcm5hbWUgYW5kIGVtYWlsLlxuICpcbiAqIEBwYXJhbSB1c2VyIHRoZSB1c2VybmFtZS5cbiAqIEBwYXJhbSBlbWFpbCB0aGUgZW1haWwgYWRkcmVzcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlkZW50aWZ5KHVzZXI6IHN0cmluZywgYWRkcmVzczogc3RyaW5nKSB7XG4gIHNoZWxsLnJ1bihgZ2l0IGNvbmZpZyB1c2VyLm5hbWUgXCIke3VzZXJ9XCJgKTtcbiAgc2hlbGwucnVuKGBnaXQgY29uZmlnIHVzZXIuZW1haWwgXCIke2FkZHJlc3N9XCJgKTtcbn1cblxuLyoqXG4gKiBEb2VzIHRoZSBnaXZlbiBicmFuY2ggZXhpc3RzIG9uIHRoZSByZW1vdGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBicmFuY2hFeGlzdHNPblJlbW90ZShyZXBvc2l0b3J5VXJsOiBzdHJpbmcsIGJyYW5jaDogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiBzaGVsbC5jaGVjayhgZ2l0IGxzLXJlbW90ZSAtLWV4aXQtY29kZSAtLWhlYWRzICR7dHJ5RGV0ZWN0UmVwb3NpdG9yeVVybChyZXBvc2l0b3J5VXJsKX0gJHticmFuY2h9YCwgeyBjYXB0dXJlOiB0cnVlIH0pO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIGBvd25lci9yZXBvYCBzbHVnIG9mIHRoZSBgb3JpZ2luYCByZW1vdGUgaW4gdGhlIGN1cnJlbnRcbiAqIGRpcmVjdG9yeSwgb3IgdW5kZWZpbmVkIGlmIGl0IGNhbm5vdCBiZSBkZXRlcm1pbmVkIChlLmcuIG5vdCBpbiBhIGdpdFxuICogcmVwb3NpdG9yeSwgb3Igbm8gYG9yaWdpbmAgcmVtb3RlIGNvbmZpZ3VyZWQpLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVwb3NpdG9yeVNsdWcoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgdHJ5IHtcbiAgICBjb25zdCB1cmwgPSBzaGVsbC5ydW4oJ2dpdCByZW1vdGUgZ2V0LXVybCBvcmlnaW4nLCB7IGNhcHR1cmU6IHRydWUgfSk7XG4gICAgcmV0dXJuIHBhcnNlUmVwb3NpdG9yeVNsdWcodXJsKTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG4vKipcbiAqIEV4dHJhY3RzIHRoZSBgb3duZXIvcmVwb2Agc2x1ZyBmcm9tIGEgZ2l0IHJlbW90ZSBVUkwuXG4gKlxuICogU3VwcG9ydHMgSFRUUFMgKGBodHRwczovL2dpdGh1Yi5jb20vb3duZXIvcmVwby5naXRgKSwgU1NIXG4gKiAoYGdpdEBnaXRodWIuY29tOm93bmVyL3JlcG8uZ2l0YCwgYHNzaDovL2dpdEBnaXRodWIuY29tL293bmVyL3JlcG8uZ2l0YClcbiAqIGFuZCBVUkxzIHdpdGhvdXQgYSBgLmdpdGAgc3VmZml4LlxuICpcbiAqIEByZXR1cm5zIHRoZSBgb3duZXIvcmVwb2Agc2x1Zywgb3IgdW5kZWZpbmVkIGlmIGl0IGNhbm5vdCBiZSBkZXRlcm1pbmVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVJlcG9zaXRvcnlTbHVnKHVybDogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgY29uc3QgcGF0aCA9IHVybFxuICAgIC50cmltKClcbiAgICAucmVwbGFjZSgvXFwuZ2l0JC8sICcnKVxuICAgIC8vIGRyb3AgdGhlIHNjaGVtZSAoaHR0cHM6Ly8sIHNzaDovLywgZ2l0K3NzaDovLywgLi4uKVxuICAgIC5yZXBsYWNlKC9eW2EteitdKzpcXC9cXC8vLCAnJylcbiAgICAvLyBub3JtYWxpemUgc2NwLWxpa2Ugc3NoIHN5bnRheCAoZ2l0QGhvc3Q6b3duZXIvcmVwbykgdG8gYSBwYXRoXG4gICAgLnJlcGxhY2UoL15naXRAW146L10rWzovXS8sICcnKVxuICAgIC8vIHN0cmlwIGEgbGVhZGluZyBob3N0IHNlZ21lbnQgKGdpdGh1Yi5jb20vb3duZXIvcmVwbylcbiAgICAucmVwbGFjZSgvXlteL10rXFwuW14vXStcXC8vLCAnJyk7XG4gIGNvbnN0IHBhcnRzID0gcGF0aC5zcGxpdCgnLycpLmZpbHRlcihCb29sZWFuKTtcbiAgaWYgKHBhcnRzLmxlbmd0aCAhPT0gMikge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgcmV0dXJuIHBhcnRzLmpvaW4oJy8nKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBjb21taXQgaGFzaCBvZiBIRUFEIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSwgb3IgdW5kZWZpbmVkIGlmXG4gKiBpdCBjYW5ub3QgYmUgZGV0ZXJtaW5lZCAoZS5nLiBub3QgaW4gYSBnaXQgcmVwb3NpdG9yeSkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoZWFkKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIHNoZWxsLnJ1bignZ2l0IHJldi1wYXJzZSBIRUFEJywgeyBjYXB0dXJlOiB0cnVlIH0pO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG4iXX0=
package/package.json CHANGED
@@ -65,7 +65,7 @@
65
65
  "@types/yargs": "^17",
66
66
  "@typescript-eslint/eslint-plugin": "^8",
67
67
  "@typescript-eslint/parser": "^8",
68
- "cdklabs-projen-project-types": "^0.6.17",
68
+ "cdklabs-projen-project-types": "^0.6.18",
69
69
  "commit-and-tag-version": "^13",
70
70
  "constructs": "^10.0.0",
71
71
  "eslint": "^9",
@@ -73,7 +73,7 @@
73
73
  "eslint-plugin-import": "^2.32.0",
74
74
  "jest": "^30",
75
75
  "jest-junit": "^17",
76
- "projen": "^0.104.4",
76
+ "projen": "^0.104.8",
77
77
  "ts-jest": "^29.4.15",
78
78
  "tsx": "^4.23.15",
79
79
  "typescript": "~6.0"
@@ -99,7 +99,7 @@
99
99
  "publishConfig": {
100
100
  "access": "public"
101
101
  },
102
- "version": "0.3.8",
102
+ "version": "0.3.9",
103
103
  "jest": {
104
104
  "coverageProvider": "v8",
105
105
  "testMatch": [
package/package.json.bak CHANGED
@@ -65,7 +65,7 @@
65
65
  "@types/yargs": "^17",
66
66
  "@typescript-eslint/eslint-plugin": "^8",
67
67
  "@typescript-eslint/parser": "^8",
68
- "cdklabs-projen-project-types": "^0.6.17",
68
+ "cdklabs-projen-project-types": "^0.6.18",
69
69
  "commit-and-tag-version": "^13",
70
70
  "constructs": "^10.0.0",
71
71
  "eslint": "^9",
@@ -73,7 +73,7 @@
73
73
  "eslint-plugin-import": "^2.32.0",
74
74
  "jest": "^30",
75
75
  "jest-junit": "^17",
76
- "projen": "^0.104.4",
76
+ "projen": "^0.104.8",
77
77
  "ts-jest": "^29.4.15",
78
78
  "tsx": "^4.23.15",
79
79
  "typescript": "~6.0"
@@ -99,7 +99,7 @@
99
99
  "publishConfig": {
100
100
  "access": "public"
101
101
  },
102
- "version": "0.3.8",
102
+ "version": "0.3.9",
103
103
  "jest": {
104
104
  "coverageProvider": "v8",
105
105
  "testMatch": [