@jupiterone/typescript-tools 16.0.0 → 17.1.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/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
6
6
|
and this project adheres to
|
|
7
7
|
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
8
8
|
|
|
9
|
+
## Unreleased
|
|
10
|
+
|
|
11
|
+
- Upgrade all dependencies to latest version
|
|
12
|
+
- Removing support for node 12 typescript configuration
|
|
13
|
+
|
|
9
14
|
## 16.0.0 - 2022-03-14
|
|
10
15
|
|
|
11
16
|
- Upgrade all dependencies to latest version
|
package/README.md
CHANGED
|
@@ -32,7 +32,7 @@ dependencies:
|
|
|
32
32
|
If you've been using previous versions of Husky in your project, the newest
|
|
33
33
|
version of Husky requires some package maintenance to keep git hooks working
|
|
34
34
|
(and working better than previously):
|
|
35
|
-
[read more](#installation
|
|
35
|
+
[read more](#installation-or-upgrade-for-previous-projects)
|
|
36
36
|
|
|
37
37
|
## Helper Scripts
|
|
38
38
|
|
|
@@ -504,7 +504,7 @@ Summarized major changes for our use-case are as follows:
|
|
|
504
504
|
|
|
505
505
|
- Maintenance needed to upgrade existing hooks to the new format:
|
|
506
506
|
|
|
507
|
-
### Installation
|
|
507
|
+
### Installation or Upgrade for Previous Projects
|
|
508
508
|
|
|
509
509
|
- <b>[Instructions to migrate](https://github.com/typicode/husky-4-to-7) from v4
|
|
510
510
|
to v7 automatically</b>
|
package/config/lint-staged.js
CHANGED
|
@@ -58,12 +58,11 @@ async function readJsonFile(file) {
|
|
|
58
58
|
return obj;
|
|
59
59
|
}
|
|
60
60
|
async function checkTsConfigFile(options) {
|
|
61
|
-
var _a;
|
|
62
61
|
const { packageInfo, stats, tsconfigFile, tsconfigObj } = options;
|
|
63
62
|
const expected = options.expectedProjectReferences;
|
|
64
63
|
const unexpected = new Set();
|
|
65
64
|
const missing = new Set(expected);
|
|
66
|
-
for (const ref of
|
|
65
|
+
for (const ref of tsconfigObj.references ?? []) {
|
|
67
66
|
if (ref.path) {
|
|
68
67
|
if (expected.has(ref.path)) {
|
|
69
68
|
log(chalk_1.default.gray(` ✓ Already has ${ref.path}`));
|
|
@@ -237,4 +236,4 @@ async function run() {
|
|
|
237
236
|
run().catch((err) => {
|
|
238
237
|
console.error(chalk_1.default.red(chalk_1.default.bold('Error occurred. ') + (err.stack || err.toString())));
|
|
239
238
|
});
|
|
240
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stdHNjb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9iaW4vY2hlY2stdHNjb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsa0RBQTBCO0FBQzFCLDJCQUFvQztBQUNwQyxnREFBd0I7QUFDeEIsa0RBQTBCO0FBRTFCLE1BQU0sS0FBSyxHQUFHLGVBQUs7S0FDaEIsTUFBTSxDQUFDLEdBQUcsRUFBRTtJQUNYLEtBQUssRUFBRSxNQUFNO0lBQ2IsSUFBSSxFQUFFLFNBQVM7Q0FDaEIsQ0FBQztLQUNELE1BQU0sQ0FBQyxPQUFPLEVBQUU7SUFDZixJQUFJLEVBQUUsU0FBUztJQUNmLFdBQVcsRUFBRSxxQ0FBcUM7Q0FDbkQsQ0FBQztLQUNELE1BQU0sQ0FBQyxPQUFPLEVBQUU7SUFDZixJQUFJLEVBQUUsU0FBUztJQUNmLFdBQVcsRUFBRSwyQkFBMkI7Q0FDekMsQ0FBQztLQUNELE1BQU0sQ0FBQyxRQUFRLEVBQUU7SUFDaEIsSUFBSSxFQUFFLFNBQVM7SUFDZixXQUFXLEVBQUUsdUNBQXVDO0NBQ3JELENBQUM7S0FDRCxNQUFNLENBQUMsVUFBVSxFQUFFO0lBQ2xCLElBQUksRUFBRSxTQUFTO0lBQ2YsV0FBVyxFQUFFLHFEQUFxRDtDQUNuRSxDQUFDLENBQUMsSUFPSixDQUFDO0FBRUYsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUM7QUFDckMsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUM7QUFDOUMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUM7QUFFM0MsU0FBUyxHQUFHLENBQUMsR0FBVztJQUN0QixJQUFJLE9BQU8sRUFBRTtRQUNYLE9BQU87S0FDUjtJQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDbkIsQ0FBQztBQUVELEtBQUssVUFBVSxZQUFZLENBQUks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Q0FBQztLQUN2QjtTQUFNO1FBQ0wsT0FBTyxDQUFDLEdBQUcsQ0FBQyw0REFBNEQsQ0FBQyxDQUFDO0tBQzNFO0FBQ0gsQ0FBQztBQUVELEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO0lBQ2xCLE9BQU8sQ0FBQyxLQUFLLENBQ1gsZUFBSyxDQUFDLEdBQUcsQ0FBQyxlQUFLLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQzFFLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcblxuaW1wb3J0IGNoYWxrIGZyb20gJ2NoYWxrJztcbmltcG9ydCB7IHByb21pc2VzIGFzIGZzIH0gZnJvbSAnZnMnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeWFyZ3MgZnJvbSAneWFyZ3MnO1xuXG5jb25zdCBpbnB1dCA9IHlhcmdzXG4gIC5vcHRpb24oJ2gnLCB7XG4gICAgYWxpYXM6ICdoZWxwJyxcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gIH0pXG4gIC5vcHRpb24oJ2h1c2t5Jywge1xuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZXNjcmlwdGlvbjogJ0lzIHRoaXMgY29tbWFuZCBiZWluZyByYW4gYnkgaHVza3k/JyxcbiAgfSlcbiAgLm9wdGlvbigncXVpZXQnLCB7XG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlc2NyaXB0aW9uOiAnVXNlIHF1aWV0IG1vZGU/IChubyBsb2dzKScsXG4gIH0pXG4gIC5vcHRpb24oJ3JlcGFpcicsIHtcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgZGVzY3JpcHRpb246ICdTaG91bGQgZXJyb3JzIGJlIGZpeGVkIHdoZW4gcG9zc2libGU/JyxcbiAgfSlcbiAgLm9wdGlvbignbW9ub3JlcG8nLCB7XG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlc2NyaXB0aW9uOiAnSXMgdGhpcyBhIG1vbm9yZXBvPyBJZiBzbywgcGFja2FnZXMgd2lsbCBiZSBjaGVja2VkJyxcbiAgfSkuYXJndiBhcyB7XG4gIGhlbHA/OiBib29sZWFuO1xuICBodXNreT86IGJvb2xlYW47XG4gIHF1aWV0PzogYm9vbGVhbjtcbiAgcmVwYWlyPzogYm9vbGVhbjtcbiAgbW9ub3JlcG8/OiBib29sZWFuO1xuICBfOiBzdHJpbmdbXTtcbn07XG5cbmNvbnN0IGlzUXVpZXQgPSBpbnB1dC5xdWlldCA9PT0gdHJ1ZTtcbmNvbnN0IGlzUmVwYWlyRW5hYmxlZCA9IGlucHV0LnJlcGFpciA9PT0gdHJ1ZTtcbmNvbnN0IGlzTW9ub3JlcG8gPSBpbnB1dC5tb25vcmVwbyA9PT0gdHJ1ZTtcblxuZnVuY3Rpb24gbG9nKG1zZzogc3RyaW5nKSB7XG4gIGlmIChpc1F1aWV0KSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGNvbnNvbGUubG9nKG1zZyk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHJlYWRKc29uRmlsZTxUPihmaWxlOiBzdHJpbmcpOiBQcm9taXNlPFQgfCB1bmRlZmluZWQ+IHtcbiAgbGV0IGNvbnRlbnRzOiBzdHJpbmc7XG4gIHRyeSB7XG4gICAgY29udGVudHMgPSBhd2FpdCBmcy5yZWFkRmlsZShmaWxlLCB7IGVuY29kaW5nOiAndXRmOCcgfSk7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGxvZyhcbiAgICAgIGNoYWxrLnllbGxvdyhcbiAgICAgICAgYEVycm9yIHJlYWRpbmcgJHtjaGFsay5ib2xkKGZpbGUpfS4gJHtlcnIudG9TdHJpbmcoKX0gKHNraXBwaW5nKWBcbiAgICAgIClcbiAgICApO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBsZXQgb2JqO1xuICB0cnkge1xuICAgIG9iaiA9IEpTT04ucGFyc2UoY29udGVudHMpO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICBsb2coXG4gICAgICBjaGFsay55ZWxsb3coXG4gICAgICAgIGBFcnJvciBwYXJzaW5nICR7Y2hhbGsuYm9sZChmaWxlKX0uICR7ZXJyLnRvU3RyaW5nKCl9IChza2lwcGluZylgXG4gICAgICApXG4gICAgKTtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcmV0dXJuIG9iajtcbn1cblxudHlwZSBQYWNrYWdlTWFuaWZlc3QgPSB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGRlcGVuZGVuY2llcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIGRldkRlcGVuZGVuY2llcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG59O1xuXG50eXBlIFRTQ29uZmlnID0ge1xuICByZWZlcmVuY2VzPzoge1xuICAgIHBhdGg/OiBzdHJpbmc7XG4gIH1bXTtcbn07XG5cbnR5cGUgUGFja2FnZUluZm8gPSB7XG4gIHBhY2thZ2VOYW1lOiBzdHJpbmc7XG4gIGRpcjogc3RyaW5nO1xuICBkaXJOYW1lOiBzdHJpbmc7XG4gIHBhY2thZ2VGaWxlOiBzdHJpbmc7XG4gIHBhY2thZ2VPYmo6IFBhY2thZ2VNYW5pZmVzdDtcbn07XG5cbnR5cGUgQ2hlY2tUU0NvbmZpZ1N0YXRzID0ge1xuICBwcm9ibGVtRmlsZUNvdW50OiBudW1iZXI7XG59O1xuXG5hc3luYyBmdW5jdGlvbiBjaGVja1RzQ29uZmlnRmlsZShvcHRpb25zOiB7XG4gIHBhY2thZ2VJbmZvOiBQYWNrYWdlSW5mbztcbiAgc3RhdHM6IENoZWNrVFNDb25maWdTdGF0cztcbiAgdHNjb25maWdGaWxlOiBzdHJpbmc7XG4gIHRzY29uZmlnT2JqOiBUU0NvbmZpZztcbiAgZXhwZWN0ZWRQcm9qZWN0UmVmZXJlbmNlczogU2V0PHN0cmluZz47XG59KSB7XG4gIGNvbnN0IHsgcGFja2FnZUluZm8sIHN0YXRzLCB0c2NvbmZpZ0ZpbGUsIHRzY29uZmlnT2JqIH0gPSBvcHRpb25zO1xuICBjb25zdCBleHBlY3RlZCA9IG9wdGlvbnMuZXhwZWN0ZWRQcm9qZWN0UmVmZXJlbmNlcztcbiAgY29uc3QgdW5leHBlY3RlZCA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICBjb25zdCBtaXNzaW5nID0gbmV3IFNldDxzdHJpbmc+KGV4cGVjdGVkKTtcblxuICBmb3IgKGNvbnN0IHJlZiBvZiB0c2NvbmZpZ09iai5yZWZlcmVuY2VzID8/IFtdKSB7XG4gICAgaWYgKHJlZi5wYXRoKSB7XG4gICAgICBpZiAoZXhwZWN0ZWQuaGFzKHJlZi5wYXRoKSkge1xuICAgICAgICBsb2coY2hhbGsuZ3JheShgICDinJMgQWxyZWFkeSBoYXMgJHtyZWYucGF0aH1gKSk7XG4gICAgICAgIG1pc3NpbmcuZGVsZXRlKHJlZi5wYXRoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHVuZXhwZWN0ZWQuYWRkKHJlZi5wYXRoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpZiAodW5leHBlY3RlZC5zaXplKSB7XG4gICAgbG9nKFxuICAgICAgY2hhbGsueWVsbG93KFxuICAgICAgICBgICAke2NoYWxrLmJvbGQoXG4gICAgICAgICAgcGFja2FnZUluZm8ucGFja2FnZU5hbWVcbiAgICAgICAgKX0gaGFzIHVuZXhwZWN0ZWQgcHJvamVjdCByZWZlcmVuY2VzOlxcbiR7Wy4uLnVuZXhwZWN0ZWRdXG4gICAgICAgICAgLm1hcCgoZGVwKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYCAgICAtICR7SlNPTi5zdHJpbmdpZnkoZGVwKX1cXG5gO1xuICAgICAgICAgIH0pXG4gICAgICAgICAgLmpvaW4oJycpfWBcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgaWYgKG1pc3Npbmcuc2l6ZSkge1xuICAgIGxvZyhcbiAgICAgIGNoYWxrLnllbGxvdyhcbiAgICAgICAgYCAgJHtjaGFsay5ib2xkKFxuICAgICAgICAgIHBhY2thZ2VJbmZvLnBhY2thZ2VOYW1lXG4gICAgICAgICl9IGlzIG1pc3NpbmcgdGhlc2UgcHJvamVjdCBwcm9qZWN0IHJlZmVyZW5jZXM6XFxuJHtbLi4ubWlzc2luZ11cbiAgICAgICAgICAubWFwKChkZXApID0+IHtcbiAgICAgICAgICAgIHJldHVybiBgICAgIC0gJHtKU09OLnN0cmluZ2lmeShkZXApfVxcbmA7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuam9pbignJyl9YFxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBpZiAoIXVuZXhwZWN0ZWQuc2l6ZSAmJiAhbWlzc2luZy5zaXplKSB7XG4gICAgbG9nKFxuICAgICAgY2hhbGsuZ3JheShcbiAgICAgICAgYFxcbiAgJHtjaGFsay5ib2xkLmdyZWVuKCfinJMnKX0gJHtjaGFsay5ib2xkKFxuICAgICAgICAgIHBhY2thZ2VJbmZvLnBhY2thZ2VOYW1lXG4gICAgICAgICl9IGlzIGdvb2RgXG4gICAgICApXG4gICAgKTtcbiAgICByZXR1cm47XG4gIH1cblxuICBzdGF0cy5wcm9ibGVtRmlsZUNvdW50Kys7XG5cbiAgaWYgKGlzUmVwYWlyRW5hYmxlZCkge1xuICAgIGNvbnN0IHJlcGFpcmVkUmVmZXJlbmNlcyA9IFsuLi5leHBlY3RlZF0ubWFwKChyZWZQYXRoKSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYXRoOiByZWZQYXRoLFxuICAgICAgfTtcbiAgICB9KTtcblxuICAgIGF3YWl0IGZzLndyaXRlRmlsZShcbiAgICAgIHRzY29uZmlnRmlsZSxcbiAgICAgIEpTT04uc3RyaW5naWZ5KFxuICAgICAgICB7XG4gICAgICAgICAgLi4udHNjb25maWdPYmosXG4gICAgICAgICAgcmVmZXJlbmNlczogcmVwYWlyZWRSZWZlcmVuY2VzLFxuICAgICAgICB9LFxuICAgICAgICBudWxsLFxuICAgICAgICAyXG4gICAgICApLFxuICAgICAgeyBlbmNvZGluZzogJ3V0ZjgnIH1cbiAgICApO1xuXG4gICAgbG9nKGNoYWxrLmdyZWVuKGAgICR7Y2hhbGsuYm9sZChwYWNrYWdlSW5mby5wYWNrYWdlTmFtZSl9IHdhcyByZXBhaXJlZCFgKSk7XG4gIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gY2hlY2tNb25vcmVwbygpIHtcbiAgY29uc3QgcGFja2FnZXNEaXIgPSBwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgJ3BhY2thZ2VzJyk7XG4gIGNvbnN0IHBhY2thZ2VzOiBQYWNrYWdlSW5mb1tdID0gW107XG5cbiAgY29uc3Qga25vd25QYWNrYWdlczogUmVjb3JkPHN0cmluZywgUGFja2FnZUluZm8+ID0ge307XG4gIGNvbnN0IHN0YXRzOiBDaGVja1RTQ29uZmlnU3RhdHMgPSB7XG4gICAgcHJvYmxlbUZpbGVDb3VudDogMCxcbiAgfTtcblxuICBsZXQgcGFja2FnZXNSZWFkRGlyUmVzdWx0O1xuXG4gIHRyeSB7XG4gICAgcGFja2FnZXNSZWFkRGlyUmVzdWx0ID0gYXdhaXQgZnMucmVhZGRpcihwYWNrYWdlc0Rpcik7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGxvZyhcbiAgICAgIGNoYWxrLnllbGxvdyhcbiAgICAgICAgYFVuYWJsZSB0byByZWFkIG1vbm9yZXBvIHBhY2thZ2VzIGF0ICR7Y2hhbGsuYm9sZChcbiAgICAgICAgICBwYWNrYWdlc0RpclxuICAgICAgICApfSAocHJvYmFibHkgbm90IGEgbW9ucmVwbykuIEVycm9yOiAke2Vyci50b1N0cmluZygpfSAoc2tpcHBpbmcpYFxuICAgICAgKVxuICAgICk7XG4gICAgcHJvY2Vzcy5leGl0Q29kZSA9IDM7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgZm9yIChjb25zdCBwYWNrYWdlRGlyTmFtZSBvZiBwYWNrYWdlc1JlYWREaXJSZXN1bHQpIHtcbiAgICBjb25zdCBwYWNrYWdlRGlyID0gcGF0aC5qb2luKHBhY2thZ2VzRGlyLCBwYWNrYWdlRGlyTmFtZSk7XG4gICAgY29uc3QgcGFja2FnZURpclN0YXQgPSBhd2FpdCBmcy5zdGF0KHBhY2thZ2VEaXIpO1xuICAgIGlmICghcGFja2FnZURpclN0YXQuaXNEaXJlY3RvcnkoKSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgY29uc3QgcGFja2FnZUZpbGUgPSBwYXRoLmpvaW4ocGFja2FnZURpciwgJ3BhY2thZ2UuanNvbicpO1xuICAgIGNvbnN0IHBhY2thZ2VPYmogPSBhd2FpdCByZWFkSnNvbkZpbGU8UGFja2FnZU1hbmlmZXN0PihwYWNrYWdlRmlsZSk7XG4gICAgaWYgKCFwYWNrYWdlT2JqKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBjb25zdCBwYWNrYWdlTmFtZSA9IHBhY2thZ2VPYmoubmFtZTtcbiAgICBpZiAoIXBhY2thZ2VOYW1lKSB7XG4gICAgICBsb2coXG4gICAgICAgIGNoYWxrLnllbGxvdyhcbiAgICAgICAgICBgUGFja2FnZSBuYW1lIGlzIG1pc3NpbmcgaW4gJHtjaGFsay5ib2xkKHBhY2thZ2VGaWxlKX0gKHNraXBwaW5nKWBcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGlmIChrbm93blBhY2thZ2VzW3BhY2thZ2VOYW1lXSkge1xuICAgICAgbG9nKFxuICAgICAgICBjaGFsay55ZWxsb3coXG4gICAgICAgICAgYER1cGxpY2F0ZSBwYWNrYWdlIG5hbWUgZW5jb3VudGVyZWQgaW4gJHtjaGFsay5ib2xkKFxuICAgICAgICAgICAgcGFja2FnZUZpbGVcbiAgICAgICAgICApfSAoYWJvcnRpbmchKWBcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICAgIHByb2Nlc3MuZXhpdENvZGUgPSAxO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBhY2thZ2VJbmZvOiBQYWNrYWdlSW5mbyA9IHtcbiAgICAgIHBhY2thZ2VOYW1lLFxuICAgICAgZGlyOiBwYWNrYWdlRGlyLFxuICAgICAgZGlyTmFtZTogcGFja2FnZURpck5hbWUsXG4gICAgICBwYWNrYWdlRmlsZSxcbiAgICAgIHBhY2thZ2VPYmosXG4gICAgfTtcblxuICAgIGtub3duUGFja2FnZXNbcGFja2FnZU5hbWVdID0gcGFja2FnZUluZm87XG4gICAgcGFja2FnZXMucHVzaChwYWNrYWdlSW5mbyk7XG4gIH1cblxuICBmb3IgKGNvbnN0IHBhY2thZ2VJbmZvIG9mIHBhY2thZ2VzKSB7XG4gICAgbG9nKGBcXG5DaGVja2luZyAke2NoYWxrLmJvbGQocGFja2FnZUluZm8uZGlyTmFtZSl9Li4uYCk7XG5cbiAgICBjb25zdCB0c2NvbmZpZ0Rpc3RGaWxlID0gcGF0aC5qb2luKHBhY2thZ2VJbmZvLmRpciwgJ3RzY29uZmlnLmRpc3QuanNvbicpO1xuICAgIGNvbnN0IHRzY29uZmlnRGlzdE9iaiA9IGF3YWl0IHJlYWRKc29uRmlsZTxUU0NvbmZpZz4odHNjb25maWdEaXN0RmlsZSk7XG5cbiAgICBjb25zdCB0c2NvbmZpZ0ZpbGUgPSBwYXRoLmpvaW4ocGFja2FnZUluZm8uZGlyLCAndHNjb25maWcuanNvbicpO1xuICAgIGNvbnN0IHRzY29uZmlnT2JqID0gYXdhaXQgcmVhZEpzb25GaWxlPFRTQ29uZmlnPih0c2NvbmZpZ0ZpbGUpO1xuXG4gICAgaWYgKCF0c2NvbmZpZ09iaiAmJiAhdHNjb25maWdEaXN0T2JqKSB7XG4gICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgYFBhY2thZ2UgJHtjaGFsay5ib2xkKFxuICAgICAgICAgIHBhY2thZ2VJbmZvLmRpck5hbWVcbiAgICAgICAgKX0gZG9lcyBub3QgaGF2ZSB0c2NvbmZpZy5qc29uIG9yIHRzY29uZmlnLmRpc3QuanNvbiAoc2tpcHBpbmcpYFxuICAgICAgKTtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGNvbnN0IHJlcXVpcmVkRGVwZW5kZW5jaWVzU2V0ID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbiAgICBjb25zdCBwcm9jZXNzRGVwZW5kZW5jaWVzID0gKGRlcGVuZGVuY3lOYW1lczogc3RyaW5nW10pID0+IHtcbiAgICAgIGZvciAoY29uc3QgZGVwZW5kZW5jeU5hbWUgb2YgZGVwZW5kZW5jeU5hbWVzKSB7XG4gICAgICAgIGlmIChrbm93blBhY2thZ2VzW2RlcGVuZGVuY3lOYW1lXSkge1xuICAgICAgICAgIHJlcXVpcmVkRGVwZW5kZW5jaWVzU2V0LmFkZChkZXBlbmRlbmN5TmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgaWYgKHBhY2thZ2VJbmZvLnBhY2thZ2VPYmouZGVwZW5kZW5jaWVzKSB7XG4gICAgICBwcm9jZXNzRGVwZW5kZW5jaWVzKE9iamVjdC5rZXlzKHBhY2thZ2VJbmZvLnBhY2thZ2VPYmouZGVwZW5kZW5jaWVzKSk7XG4gICAgfVxuXG4gICAgaWYgKHBhY2thZ2VJbmZvLnBhY2thZ2VPYmouZGV2RGVwZW5kZW5jaWVzKSB7XG4gICAgICBwcm9jZXNzRGVwZW5kZW5jaWVzKE9iamVjdC5rZXlzKHBhY2thZ2VJbmZvLnBhY2thZ2VPYmouZGV2RGVwZW5kZW5jaWVzKSk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVxdWlyZWREZXBlbmRlbmNpZXMgPSBbLi4ucmVxdWlyZWREZXBlbmRlbmNpZXNTZXRdO1xuICAgIGlmIChyZXF1aXJlZERlcGVuZGVuY2llcy5sZW5ndGgpIHtcbiAgICAgIGxvZyhcbiAgICAgICAgYCAgSXQgZGVwZW5kcyBvbjpcXG4ke3JlcXVpcmVkRGVwZW5kZW5jaWVzXG4gICAgICAgICAgLm1hcCgoZGVwKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gYCAgICAtICR7ZGVwfVxcbmA7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuam9pbignJyl9YFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9nKFxuICAgICAgICBjaGFsay5ncmF5KFxuICAgICAgICAgIGAgICR7Y2hhbGsuYm9sZChwYWNrYWdlSW5mby5wYWNrYWdlTmFtZSl9IGhhcyBubyBkZXBlbmRlbmNpZXNgXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgZXhwZWN0ZWQgPSBuZXcgU2V0PHN0cmluZz4oXG4gICAgICByZXF1aXJlZERlcGVuZGVuY2llcy5tYXAoKGRlcCkgPT4ge1xuICAgICAgICBjb25zdCBrbm93blBhY2thZ2UgPSBrbm93blBhY2thZ2VzW2RlcF07XG4gICAgICAgIHJldHVybiBgLi4vJHtrbm93blBhY2thZ2UuZGlyTmFtZX0vdHNjb25maWcuZGlzdC5qc29uYDtcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIGlmICh0c2NvbmZpZ09iaikge1xuICAgICAgYXdhaXQgY2hlY2tUc0NvbmZpZ0ZpbGUoe1xuICAgICAgICBleHBlY3RlZFByb2plY3RSZWZlcmVuY2VzOiBleHBlY3RlZCxcbiAgICAgICAgcGFja2FnZUluZm8sXG4gICAgICAgIHN0YXRzLFxuICAgICAgICB0c2NvbmZpZ0ZpbGUsXG4gICAgICAgIHRzY29uZmlnT2JqLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRzY29uZmlnRGlzdE9iaikge1xuICAgICAgYXdhaXQgY2hlY2tUc0NvbmZpZ0ZpbGUoe1xuICAgICAgICBleHBlY3RlZFByb2plY3RSZWZlcmVuY2VzOiBleHBlY3RlZCxcbiAgICAgICAgcGFja2FnZUluZm8sXG4gICAgICAgIHN0YXRzLFxuICAgICAgICB0c2NvbmZpZ0ZpbGU6IHRzY29uZmlnRGlzdEZpbGUsXG4gICAgICAgIHRzY29uZmlnT2JqOiB0c2NvbmZpZ0Rpc3RPYmosXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBjb25zb2xlLmxvZyhcbiAgICBgXFxuJHtjaGFsay5ib2xkLmdyZWVuKCdGaW5pc2hlZCBjaGVja2luZyB0c2NvbmZpZy5kaXN0Lmpzb24gZmlsZXMuJyl9YFxuICApO1xuXG4gIGlmIChpc1JlcGFpckVuYWJsZWQpIHtcbiAgICBjb25zb2xlLmxvZyhgICBOdW1iZXIgb2YgZmlsZXMgcmVwYWlyZWQ6ICR7c3RhdHMucHJvYmxlbUZpbGVDb3VudH1cXG5gKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zb2xlLmxvZyhgICBOdW1iZXIgb2YgZmlsZXMgd2l0aCBwcm9ibGVtczogJHtzdGF0cy5wcm9ibGVtRmlsZUNvdW50fVxcbmApO1xuICB9XG5cbiAgaWYgKHN0YXRzLnByb2JsZW1GaWxlQ291bnQgJiYgIWlzUmVwYWlyRW5hYmxlZCkge1xuICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICBjaGFsay5ib2xkLnJlZChgUHJvYmxlbXMgd2VyZSBmb3VuZCBpbiB0c2NvbmZpZyBmaWxlcyAocGxlYXNlIHJldmlldykuXFxuYClcbiAgICApO1xuICAgIHByb2Nlc3MuZXhpdENvZGUgPSAyO1xuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHJ1bigpIHtcbiAgaWYgKGlucHV0LmhlbHApIHtcbiAgICByZXR1cm4geWFyZ3Muc2hvd0hlbHAoKTtcbiAgfVxuXG4gIGlmIChpc01vbm9yZXBvKSB7XG4gICAgYXdhaXQgY2hlY2tNb25vcmVwbygpO1xuICB9IGVsc2Uge1xuICAgIGNvbnNvbGUubG9nKGB0c2NvbmZpZyBjaGVja3MgYXJlIGN1cnJlbnRseSBvbmx5IHN1cHBvcnRlZCBmb3IgbW9ub3JlcG9zYCk7XG4gIH1cbn1cblxucnVuKCkuY2F0Y2goKGVycikgPT4ge1xuICBjb25zb2xlLmVycm9yKFxuICAgIGNoYWxrLnJlZChjaGFsay5ib2xkKCdFcnJvciBvY2N1cnJlZC4gJykgKyAoZXJyLnN0YWNrIHx8IGVyci50b1N0cmluZygpKSlcbiAgKTtcbn0pO1xuIl19
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stdHNjb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9iaW4vY2hlY2stdHNjb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsa0RBQTBCO0FBQzFCLDJCQUFvQztBQUNwQyxnREFBd0I7QUFDeEIsa0RBQTBCO0FBRTFCLE1BQU0sS0FBSyxHQUFHLGVBQUs7S0FDaEIsTUFBTSxDQUFDLEdBQUcsRUFBRTtJQUNYLEtBQUssRUFBRSxNQUFNO0lBQ2IsSUFBSSxFQUFFLFNBQVM7Q0FDaEIsQ0FBQztLQUNELE1BQU0sQ0FBQyxPQUFPLEVBQUU7SUFDZixJQUFJLEVBQUUsU0FBUztJQUNmLFdBQVcsRUFBRSxxQ0FBcUM7Q0FDbkQsQ0FBQztLQUNELE1BQU0sQ0FBQyxPQUFPLEVBQUU7SUFDZixJQUFJLEVBQUUsU0FBUztJQUNmLFdBQVcsRUFBRSwyQkFBMkI7Q0FDekMsQ0FBQztLQUNELE1BQU0sQ0FBQyxRQUFRLEVBQUU7SUFDaEIsSUFBSSxFQUFFLFNBQVM7SUFDZixXQUFXLEVBQUUsdUNBQXVDO0NBQ3JELENBQUM7S0FDRCxNQUFNLENBQUMsVUFBVSxFQUFFO0lBQ2xCLElBQUksRUFBRSxTQUFTO0lBQ2YsV0FBVyxFQUFFLHFEQUFxRDtDQUNuRSxDQUFDLENBQUMsSUFPSixDQUFDO0FBRUYsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUM7QUFDckMsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUM7QUFDOUMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUM7QUFFM0MsU0FBUyxHQUFHLENBQUMsR0FBVztJQUN0QixJQUFJLE9BQU8sRUFBRTtRQUNYLE9BQU87S0FDUjtJQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDbkIsQ0FBQztBQUVELEtBQUssVUFBVSxZQUFZLENBQUks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Q3ZCO1NBQU07UUFDTCxPQUFPLENBQUMsR0FBRyxDQUFDLDREQUE0RCxDQUFDLENBQUM7S0FDM0U7QUFDSCxDQUFDO0FBRUQsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7SUFDbEIsT0FBTyxDQUFDLEtBQUssQ0FDWCxlQUFLLENBQUMsR0FBRyxDQUFDLGVBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FDMUUsQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuXG5pbXBvcnQgY2hhbGsgZnJvbSAnY2hhbGsnO1xuaW1wb3J0IHsgcHJvbWlzZXMgYXMgZnMgfSBmcm9tICdmcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB5YXJncyBmcm9tICd5YXJncyc7XG5cbmNvbnN0IGlucHV0ID0geWFyZ3NcbiAgLm9wdGlvbignaCcsIHtcbiAgICBhbGlhczogJ2hlbHAnLFxuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgfSlcbiAgLm9wdGlvbignaHVza3knLCB7XG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlc2NyaXB0aW9uOiAnSXMgdGhpcyBjb21tYW5kIGJlaW5nIHJhbiBieSBodXNreT8nLFxuICB9KVxuICAub3B0aW9uKCdxdWlldCcsIHtcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgZGVzY3JpcHRpb246ICdVc2UgcXVpZXQgbW9kZT8gKG5vIGxvZ3MpJyxcbiAgfSlcbiAgLm9wdGlvbigncmVwYWlyJywge1xuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZXNjcmlwdGlvbjogJ1Nob3VsZCBlcnJvcnMgYmUgZml4ZWQgd2hlbiBwb3NzaWJsZT8nLFxuICB9KVxuICAub3B0aW9uKCdtb25vcmVwbycsIHtcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgZGVzY3JpcHRpb246ICdJcyB0aGlzIGEgbW9ub3JlcG8/IElmIHNvLCBwYWNrYWdlcyB3aWxsIGJlIGNoZWNrZWQnLFxuICB9KS5hcmd2IGFzIHtcbiAgaGVscD86IGJvb2xlYW47XG4gIGh1c2t5PzogYm9vbGVhbjtcbiAgcXVpZXQ/OiBib29sZWFuO1xuICByZXBhaXI/OiBib29sZWFuO1xuICBtb25vcmVwbz86IGJvb2xlYW47XG4gIF86IHN0cmluZ1tdO1xufTtcblxuY29uc3QgaXNRdWlldCA9IGlucHV0LnF1aWV0ID09PSB0cnVlO1xuY29uc3QgaXNSZXBhaXJFbmFibGVkID0gaW5wdXQucmVwYWlyID09PSB0cnVlO1xuY29uc3QgaXNNb25vcmVwbyA9IGlucHV0Lm1vbm9yZXBvID09PSB0cnVlO1xuXG5mdW5jdGlvbiBsb2cobXNnOiBzdHJpbmcpIHtcbiAgaWYgKGlzUXVpZXQpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgY29uc29sZS5sb2cobXNnKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gcmVhZEpzb25GaWxlPFQ+KGZpbGU6IHN0cmluZyk6IFByb21pc2U8VCB8IHVuZGVmaW5lZD4ge1xuICBsZXQgY29udGVudHM6IHN0cmluZztcbiAgdHJ5IHtcbiAgICBjb250ZW50cyA9IGF3YWl0IGZzLnJlYWRGaWxlKGZpbGUsIHsgZW5jb2Rpbmc6ICd1dGY4JyB9KTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgbG9nKFxuICAgICAgY2hhbGsueWVsbG93KFxuICAgICAgICBgRXJyb3IgcmVhZGluZyAke2NoYWxrLmJvbGQoZmlsZSl9LiAke2Vyci50b1N0cmluZygpfSAoc2tpcHBpbmcpYFxuICAgICAgKVxuICAgICk7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGxldCBvYmo7XG4gIHRyeSB7XG4gICAgb2JqID0gSlNPTi5wYXJzZShjb250ZW50cyk7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGxvZyhcbiAgICAgIGNoYWxrLnllbGxvdyhcbiAgICAgICAgYEVycm9yIHBhcnNpbmcgJHtjaGFsay5ib2xkKGZpbGUpfS4gJHtlcnIudG9TdHJpbmcoKX0gKHNraXBwaW5nKWBcbiAgICAgIClcbiAgICApO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICByZXR1cm4gb2JqO1xufVxuXG50eXBlIFBhY2thZ2VNYW5pZmVzdCA9IHtcbiAgbmFtZT86IHN0cmluZztcbiAgZGVwZW5kZW5jaWVzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgZGV2RGVwZW5kZW5jaWVzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbn07XG5cbnR5cGUgVFNDb25maWcgPSB7XG4gIHJlZmVyZW5jZXM/OiB7XG4gICAgcGF0aD86IHN0cmluZztcbiAgfVtdO1xufTtcblxudHlwZSBQYWNrYWdlSW5mbyA9IHtcbiAgcGFja2FnZU5hbWU6IHN0cmluZztcbiAgZGlyOiBzdHJpbmc7XG4gIGRpck5hbWU6IHN0cmluZztcbiAgcGFja2FnZUZpbGU6IHN0cmluZztcbiAgcGFja2FnZU9iajogUGFja2FnZU1hbmlmZXN0O1xufTtcblxudHlwZSBDaGVja1RTQ29uZmlnU3RhdHMgPSB7XG4gIHByb2JsZW1GaWxlQ291bnQ6IG51bWJlcjtcbn07XG5cbmFzeW5jIGZ1bmN0aW9uIGNoZWNrVHNDb25maWdGaWxlKG9wdGlvbnM6IHtcbiAgcGFja2FnZUluZm86IFBhY2thZ2VJbmZvO1xuICBzdGF0czogQ2hlY2tUU0NvbmZpZ1N0YXRzO1xuICB0c2NvbmZpZ0ZpbGU6IHN0cmluZztcbiAgdHNjb25maWdPYmo6IFRTQ29uZmlnO1xuICBleHBlY3RlZFByb2plY3RSZWZlcmVuY2VzOiBTZXQ8c3RyaW5nPjtcbn0pIHtcbiAgY29uc3QgeyBwYWNrYWdlSW5mbywgc3RhdHMsIHRzY29uZmlnRmlsZSwgdHNjb25maWdPYmogfSA9IG9wdGlvbnM7XG4gIGNvbnN0IGV4cGVjdGVkID0gb3B0aW9ucy5leHBlY3RlZFByb2plY3RSZWZlcmVuY2VzO1xuICBjb25zdCB1bmV4cGVjdGVkID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gIGNvbnN0IG1pc3NpbmcgPSBuZXcgU2V0PHN0cmluZz4oZXhwZWN0ZWQpO1xuXG4gIGZvciAoY29uc3QgcmVmIG9mIHRzY29uZmlnT2JqLnJlZmVyZW5jZXMgPz8gW10pIHtcbiAgICBpZiAocmVmLnBhdGgpIHtcbiAgICAgIGlmIChleHBlY3RlZC5oYXMocmVmLnBhdGgpKSB7XG4gICAgICAgIGxvZyhjaGFsay5ncmF5KGAgIOKckyBBbHJlYWR5IGhhcyAke3JlZi5wYXRofWApKTtcbiAgICAgICAgbWlzc2luZy5kZWxldGUocmVmLnBhdGgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdW5leHBlY3RlZC5hZGQocmVmLnBhdGgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlmICh1bmV4cGVjdGVkLnNpemUpIHtcbiAgICBsb2coXG4gICAgICBjaGFsay55ZWxsb3coXG4gICAgICAgIGAgICR7Y2hhbGsuYm9sZChcbiAgICAgICAgICBwYWNrYWdlSW5mby5wYWNrYWdlTmFtZVxuICAgICAgICApfSBoYXMgdW5leHBlY3RlZCBwcm9qZWN0IHJlZmVyZW5jZXM6XFxuJHtbLi4udW5leHBlY3RlZF1cbiAgICAgICAgICAubWFwKChkZXApID0+IHtcbiAgICAgICAgICAgIHJldHVybiBgICAgIC0gJHtKU09OLnN0cmluZ2lmeShkZXApfVxcbmA7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuam9pbignJyl9YFxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBpZiAobWlzc2luZy5zaXplKSB7XG4gICAgbG9nKFxuICAgICAgY2hhbGsueWVsbG93KFxuICAgICAgICBgICAke2NoYWxrLmJvbGQoXG4gICAgICAgICAgcGFja2FnZUluZm8ucGFja2FnZU5hbWVcbiAgICAgICAgKX0gaXMgbWlzc2luZyB0aGVzZSBwcm9qZWN0IHByb2plY3QgcmVmZXJlbmNlczpcXG4ke1suLi5taXNzaW5nXVxuICAgICAgICAgIC5tYXAoKGRlcCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGAgICAgLSAke0pTT04uc3RyaW5naWZ5KGRlcCl9XFxuYDtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5qb2luKCcnKX1gXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIGlmICghdW5leHBlY3RlZC5zaXplICYmICFtaXNzaW5nLnNpemUpIHtcbiAgICBsb2coXG4gICAgICBjaGFsay5ncmF5KFxuICAgICAgICBgXFxuICAke2NoYWxrLmJvbGQuZ3JlZW4oJ+KckycpfSAke2NoYWxrLmJvbGQoXG4gICAgICAgICAgcGFja2FnZUluZm8ucGFja2FnZU5hbWVcbiAgICAgICAgKX0gaXMgZ29vZGBcbiAgICAgIClcbiAgICApO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHN0YXRzLnByb2JsZW1GaWxlQ291bnQrKztcblxuICBpZiAoaXNSZXBhaXJFbmFibGVkKSB7XG4gICAgY29uc3QgcmVwYWlyZWRSZWZlcmVuY2VzID0gWy4uLmV4cGVjdGVkXS5tYXAoKHJlZlBhdGgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhdGg6IHJlZlBhdGgsXG4gICAgICB9O1xuICAgIH0pO1xuXG4gICAgYXdhaXQgZnMud3JpdGVGaWxlKFxuICAgICAgdHNjb25maWdGaWxlLFxuICAgICAgSlNPTi5zdHJpbmdpZnkoXG4gICAgICAgIHtcbiAgICAgICAgICAuLi50c2NvbmZpZ09iaixcbiAgICAgICAgICByZWZlcmVuY2VzOiByZXBhaXJlZFJlZmVyZW5jZXMsXG4gICAgICAgIH0sXG4gICAgICAgIG51bGwsXG4gICAgICAgIDJcbiAgICAgICksXG4gICAgICB7IGVuY29kaW5nOiAndXRmOCcgfVxuICAgICk7XG5cbiAgICBsb2coY2hhbGsuZ3JlZW4oYCAgJHtjaGFsay5ib2xkKHBhY2thZ2VJbmZvLnBhY2thZ2VOYW1lKX0gd2FzIHJlcGFpcmVkIWApKTtcbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBjaGVja01vbm9yZXBvKCkge1xuICBjb25zdCBwYWNrYWdlc0RpciA9IHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCAncGFja2FnZXMnKTtcbiAgY29uc3QgcGFja2FnZXM6IFBhY2thZ2VJbmZvW10gPSBbXTtcblxuICBjb25zdCBrbm93blBhY2thZ2VzOiBSZWNvcmQ8c3RyaW5nLCBQYWNrYWdlSW5mbz4gPSB7fTtcbiAgY29uc3Qgc3RhdHM6IENoZWNrVFNDb25maWdTdGF0cyA9IHtcbiAgICBwcm9ibGVtRmlsZUNvdW50OiAwLFxuICB9O1xuXG4gIGxldCBwYWNrYWdlc1JlYWREaXJSZXN1bHQ7XG5cbiAgdHJ5IHtcbiAgICBwYWNrYWdlc1JlYWREaXJSZXN1bHQgPSBhd2FpdCBmcy5yZWFkZGlyKHBhY2thZ2VzRGlyKTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgbG9nKFxuICAgICAgY2hhbGsueWVsbG93KFxuICAgICAgICBgVW5hYmxlIHRvIHJlYWQgbW9ub3JlcG8gcGFja2FnZXMgYXQgJHtjaGFsay5ib2xkKFxuICAgICAgICAgIHBhY2thZ2VzRGlyXG4gICAgICAgICl9IChwcm9iYWJseSBub3QgYSBtb25yZXBvKS4gRXJyb3I6ICR7ZXJyLnRvU3RyaW5nKCl9IChza2lwcGluZylgXG4gICAgICApXG4gICAgKTtcbiAgICBwcm9jZXNzLmV4aXRDb2RlID0gMztcbiAgICByZXR1cm47XG4gIH1cblxuICBmb3IgKGNvbnN0IHBhY2thZ2VEaXJOYW1lIG9mIHBhY2thZ2VzUmVhZERpclJlc3VsdCkge1xuICAgIGNvbnN0IHBhY2thZ2VEaXIgPSBwYXRoLmpvaW4ocGFja2FnZXNEaXIsIHBhY2thZ2VEaXJOYW1lKTtcbiAgICBjb25zdCBwYWNrYWdlRGlyU3RhdCA9IGF3YWl0IGZzLnN0YXQocGFja2FnZURpcik7XG4gICAgaWYgKCFwYWNrYWdlRGlyU3RhdC5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBjb25zdCBwYWNrYWdlRmlsZSA9IHBhdGguam9pbihwYWNrYWdlRGlyLCAncGFja2FnZS5qc29uJyk7XG4gICAgY29uc3QgcGFja2FnZU9iaiA9IGF3YWl0IHJlYWRKc29uRmlsZTxQYWNrYWdlTWFuaWZlc3Q+KHBhY2thZ2VGaWxlKTtcbiAgICBpZiAoIXBhY2thZ2VPYmopIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGNvbnN0IHBhY2thZ2VOYW1lID0gcGFja2FnZU9iai5uYW1lO1xuICAgIGlmICghcGFja2FnZU5hbWUpIHtcbiAgICAgIGxvZyhcbiAgICAgICAgY2hhbGsueWVsbG93KFxuICAgICAgICAgIGBQYWNrYWdlIG5hbWUgaXMgbWlzc2luZyBpbiAke2NoYWxrLmJvbGQocGFja2FnZUZpbGUpfSAoc2tpcHBpbmcpYFxuICAgICAgICApXG4gICAgICApO1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgaWYgKGtub3duUGFja2FnZXNbcGFja2FnZU5hbWVdKSB7XG4gICAgICBsb2coXG4gICAgICAgIGNoYWxrLnllbGxvdyhcbiAgICAgICAgICBgRHVwbGljYXRlIHBhY2thZ2UgbmFtZSBlbmNvdW50ZXJlZCBpbiAke2NoYWxrLmJvbGQoXG4gICAgICAgICAgICBwYWNrYWdlRmlsZVxuICAgICAgICAgICl9IChhYm9ydGluZyEpYFxuICAgICAgICApXG4gICAgICApO1xuICAgICAgcHJvY2Vzcy5leGl0Q29kZSA9IDE7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcGFja2FnZUluZm86IFBhY2thZ2VJbmZvID0ge1xuICAgICAgcGFja2FnZU5hbWUsXG4gICAgICBkaXI6IHBhY2thZ2VEaXIsXG4gICAgICBkaXJOYW1lOiBwYWNrYWdlRGlyTmFtZSxcbiAgICAgIHBhY2thZ2VGaWxlLFxuICAgICAgcGFja2FnZU9iaixcbiAgICB9O1xuXG4gICAga25vd25QYWNrYWdlc1twYWNrYWdlTmFtZV0gPSBwYWNrYWdlSW5mbztcbiAgICBwYWNrYWdlcy5wdXNoKHBhY2thZ2VJbmZvKTtcbiAgfVxuXG4gIGZvciAoY29uc3QgcGFja2FnZUluZm8gb2YgcGFja2FnZXMpIHtcbiAgICBsb2coYFxcbkNoZWNraW5nICR7Y2hhbGsuYm9sZChwYWNrYWdlSW5mby5kaXJOYW1lKX0uLi5gKTtcblxuICAgIGNvbnN0IHRzY29uZmlnRGlzdEZpbGUgPSBwYXRoLmpvaW4ocGFja2FnZUluZm8uZGlyLCAndHNjb25maWcuZGlzdC5qc29uJyk7XG4gICAgY29uc3QgdHNjb25maWdEaXN0T2JqID0gYXdhaXQgcmVhZEpzb25GaWxlPFRTQ29uZmlnPih0c2NvbmZpZ0Rpc3RGaWxlKTtcblxuICAgIGNvbnN0IHRzY29uZmlnRmlsZSA9IHBhdGguam9pbihwYWNrYWdlSW5mby5kaXIsICd0c2NvbmZpZy5qc29uJyk7XG4gICAgY29uc3QgdHNjb25maWdPYmogPSBhd2FpdCByZWFkSnNvbkZpbGU8VFNDb25maWc+KHRzY29uZmlnRmlsZSk7XG5cbiAgICBpZiAoIXRzY29uZmlnT2JqICYmICF0c2NvbmZpZ0Rpc3RPYmopIHtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBgUGFja2FnZSAke2NoYWxrLmJvbGQoXG4gICAgICAgICAgcGFja2FnZUluZm8uZGlyTmFtZVxuICAgICAgICApfSBkb2VzIG5vdCBoYXZlIHRzY29uZmlnLmpzb24gb3IgdHNjb25maWcuZGlzdC5qc29uIChza2lwcGluZylgXG4gICAgICApO1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgY29uc3QgcmVxdWlyZWREZXBlbmRlbmNpZXNTZXQgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICAgIGNvbnN0IHByb2Nlc3NEZXBlbmRlbmNpZXMgPSAoZGVwZW5kZW5jeU5hbWVzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgZm9yIChjb25zdCBkZXBlbmRlbmN5TmFtZSBvZiBkZXBlbmRlbmN5TmFtZXMpIHtcbiAgICAgICAgaWYgKGtub3duUGFja2FnZXNbZGVwZW5kZW5jeU5hbWVdKSB7XG4gICAgICAgICAgcmVxdWlyZWREZXBlbmRlbmNpZXNTZXQuYWRkKGRlcGVuZGVuY3lOYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAocGFja2FnZUluZm8ucGFja2FnZU9iai5kZXBlbmRlbmNpZXMpIHtcbiAgICAgIHByb2Nlc3NEZXBlbmRlbmNpZXMoT2JqZWN0LmtleXMocGFja2FnZUluZm8ucGFja2FnZU9iai5kZXBlbmRlbmNpZXMpKTtcbiAgICB9XG5cbiAgICBpZiAocGFja2FnZUluZm8ucGFja2FnZU9iai5kZXZEZXBlbmRlbmNpZXMpIHtcbiAgICAgIHByb2Nlc3NEZXBlbmRlbmNpZXMoT2JqZWN0LmtleXMocGFja2FnZUluZm8ucGFja2FnZU9iai5kZXZEZXBlbmRlbmNpZXMpKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXF1aXJlZERlcGVuZGVuY2llcyA9IFsuLi5yZXF1aXJlZERlcGVuZGVuY2llc1NldF07XG4gICAgaWYgKHJlcXVpcmVkRGVwZW5kZW5jaWVzLmxlbmd0aCkge1xuICAgICAgbG9nKFxuICAgICAgICBgICBJdCBkZXBlbmRzIG9uOlxcbiR7cmVxdWlyZWREZXBlbmRlbmNpZXNcbiAgICAgICAgICAubWFwKChkZXApID0+IHtcbiAgICAgICAgICAgIHJldHVybiBgICAgIC0gJHtkZXB9XFxuYDtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5qb2luKCcnKX1gXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBsb2coXG4gICAgICAgIGNoYWxrLmdyYXkoXG4gICAgICAgICAgYCAgJHtjaGFsay5ib2xkKHBhY2thZ2VJbmZvLnBhY2thZ2VOYW1lKX0gaGFzIG5vIGRlcGVuZGVuY2llc2BcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBleHBlY3RlZCA9IG5ldyBTZXQ8c3RyaW5nPihcbiAgICAgIHJlcXVpcmVkRGVwZW5kZW5jaWVzLm1hcCgoZGVwKSA9PiB7XG4gICAgICAgIGNvbnN0IGtub3duUGFja2FnZSA9IGtub3duUGFja2FnZXNbZGVwXTtcbiAgICAgICAgcmV0dXJuIGAuLi8ke2tub3duUGFja2FnZS5kaXJOYW1lfS90c2NvbmZpZy5kaXN0Lmpzb25gO1xuICAgICAgfSlcbiAgICApO1xuXG4gICAgaWYgKHRzY29uZmlnT2JqKSB7XG4gICAgICBhd2FpdCBjaGVja1RzQ29uZmlnRmlsZSh7XG4gICAgICAgIGV4cGVjdGVkUHJvamVjdFJlZmVyZW5jZXM6IGV4cGVjdGVkLFxuICAgICAgICBwYWNrYWdlSW5mbyxcbiAgICAgICAgc3RhdHMsXG4gICAgICAgIHRzY29uZmlnRmlsZSxcbiAgICAgICAgdHNjb25maWdPYmosXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodHNjb25maWdEaXN0T2JqKSB7XG4gICAgICBhd2FpdCBjaGVja1RzQ29uZmlnRmlsZSh7XG4gICAgICAgIGV4cGVjdGVkUHJvamVjdFJlZmVyZW5jZXM6IGV4cGVjdGVkLFxuICAgICAgICBwYWNrYWdlSW5mbyxcbiAgICAgICAgc3RhdHMsXG4gICAgICAgIHRzY29uZmlnRmlsZTogdHNjb25maWdEaXN0RmlsZSxcbiAgICAgICAgdHNjb25maWdPYmo6IHRzY29uZmlnRGlzdE9iaixcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGNvbnNvbGUubG9nKFxuICAgIGBcXG4ke2NoYWxrLmJvbGQuZ3JlZW4oJ0ZpbmlzaGVkIGNoZWNraW5nIHRzY29uZmlnLmRpc3QuanNvbiBmaWxlcy4nKX1gXG4gICk7XG5cbiAgaWYgKGlzUmVwYWlyRW5hYmxlZCkge1xuICAgIGNvbnNvbGUubG9nKGAgIE51bWJlciBvZiBmaWxlcyByZXBhaXJlZDogJHtzdGF0cy5wcm9ibGVtRmlsZUNvdW50fVxcbmApO1xuICB9IGVsc2Uge1xuICAgIGNvbnNvbGUubG9nKGAgIE51bWJlciBvZiBmaWxlcyB3aXRoIHByb2JsZW1zOiAke3N0YXRzLnByb2JsZW1GaWxlQ291bnR9XFxuYCk7XG4gIH1cblxuICBpZiAoc3RhdHMucHJvYmxlbUZpbGVDb3VudCAmJiAhaXNSZXBhaXJFbmFibGVkKSB7XG4gICAgY29uc29sZS5lcnJvcihcbiAgICAgIGNoYWxrLmJvbGQucmVkKGBQcm9ibGVtcyB3ZXJlIGZvdW5kIGluIHRzY29uZmlnIGZpbGVzIChwbGVhc2UgcmV2aWV3KS5cXG5gKVxuICAgICk7XG4gICAgcHJvY2Vzcy5leGl0Q29kZSA9IDI7XG4gIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gcnVuKCkge1xuICBpZiAoaW5wdXQuaGVscCkge1xuICAgIHJldHVybiB5YXJncy5zaG93SGVscCgpO1xuICB9XG5cbiAgaWYgKGlzTW9ub3JlcG8pIHtcbiAgICBhd2FpdCBjaGVja01vbm9yZXBvKCk7XG4gIH0gZWxzZSB7XG4gICAgY29uc29sZS5sb2coYHRzY29uZmlnIGNoZWNrcyBhcmUgY3VycmVudGx5IG9ubHkgc3VwcG9ydGVkIGZvciBtb25vcmVwb3NgKTtcbiAgfVxufVxuXG5ydW4oKS5jYXRjaCgoZXJyKSA9PiB7XG4gIGNvbnNvbGUuZXJyb3IoXG4gICAgY2hhbGsucmVkKGNoYWxrLmJvbGQoJ0Vycm9yIG9jY3VycmVkLiAnKSArIChlcnIuc3RhY2sgfHwgZXJyLnRvU3RyaW5nKCkpKVxuICApO1xufSk7XG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupiterone/typescript-tools",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "17.1.0",
|
|
4
4
|
"main": "./index.js",
|
|
5
5
|
"repository": "https://github.com/jupiterone/typescript-tools",
|
|
6
6
|
"author": "Development <development@jupiterone.com>",
|
|
@@ -26,28 +26,27 @@
|
|
|
26
26
|
"yalc-check": "./dist/bin/yalc-check.js"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@babel/cli": "^7.17.
|
|
30
|
-
"@babel/core": "^7.
|
|
31
|
-
"@babel/preset-env": "^7.
|
|
32
|
-
"@babel/preset-typescript": "^7.
|
|
33
|
-
"@commitlint/cli": "^
|
|
34
|
-
"@commitlint/config-lerna-scopes": "^
|
|
29
|
+
"@babel/cli": "^7.17.10",
|
|
30
|
+
"@babel/core": "^7.18.5",
|
|
31
|
+
"@babel/preset-env": "^7.18.2",
|
|
32
|
+
"@babel/preset-typescript": "^7.17.12",
|
|
33
|
+
"@commitlint/cli": "^17.0.2",
|
|
34
|
+
"@commitlint/config-lerna-scopes": "^17.0.2",
|
|
35
35
|
"@jupiterone/eslint-config": "^2.0.0",
|
|
36
36
|
"@ovos-media/ts-transform-paths": "^1.7.18-1",
|
|
37
|
-
"@philidem/rewrite-relative-paths": "^1.
|
|
38
|
-
"
|
|
39
|
-
"babel-jest": "^27.5.1",
|
|
37
|
+
"@philidem/rewrite-relative-paths": "^1.2.3",
|
|
38
|
+
"babel-jest": "^28.1.1",
|
|
40
39
|
"babel-plugin-module-resolver": "^4.1.0",
|
|
41
|
-
"eslint": "^8.
|
|
42
|
-
"husky": "^
|
|
43
|
-
"jest": "^
|
|
44
|
-
"lint-staged": "^
|
|
45
|
-
"prettier": "^2.
|
|
46
|
-
"prettier-plugin-organize-imports": "^
|
|
40
|
+
"eslint": "^8.18.0",
|
|
41
|
+
"husky": "^8.0.1",
|
|
42
|
+
"jest": "^28.1.1",
|
|
43
|
+
"lint-staged": "^13.0.2",
|
|
44
|
+
"prettier": "^2.7.1",
|
|
45
|
+
"prettier-plugin-organize-imports": "^3.0.0",
|
|
47
46
|
"ttypescript": "^1.5.13",
|
|
48
|
-
"typescript": "^4.
|
|
47
|
+
"typescript": "^4.7.4",
|
|
49
48
|
"yalc": "^1.0.0-pre.53",
|
|
50
|
-
"yargs": "^17.
|
|
49
|
+
"yargs": "^17.5.1"
|
|
51
50
|
},
|
|
52
51
|
"files": [
|
|
53
52
|
"LICENSE",
|