occam-languages 3.0.48 → 3.0.49
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/context/file.js
CHANGED
|
@@ -78,13 +78,19 @@ class FileContext extends _context.default {
|
|
|
78
78
|
this.warning(`Unable to verify the '${this.filePath}' file because it cannot be parsed.`);
|
|
79
79
|
return back();
|
|
80
80
|
}
|
|
81
|
-
this.debug(`Verifying the '${this.filePath}' file...`);
|
|
82
81
|
this.clear();
|
|
82
|
+
this.debug(`Verifying the '${this.filePath}' file...`);
|
|
83
83
|
return this.verifyFile((back)=>{
|
|
84
84
|
this.complete();
|
|
85
85
|
this.info(`...verified the '${this.filePath}' file.`);
|
|
86
86
|
return forward(back);
|
|
87
|
-
},
|
|
87
|
+
}, (exception)=>{
|
|
88
|
+
if (exception) {
|
|
89
|
+
return back(exception);
|
|
90
|
+
}
|
|
91
|
+
this.debug(`Unable to verify the '${this.filePath}' file.`);
|
|
92
|
+
return back();
|
|
93
|
+
});
|
|
88
94
|
}
|
|
89
95
|
initialise() {
|
|
90
96
|
const lexer = this.getLexer(), parser = this.getParser(), content = this.fileContent; ///
|
|
@@ -105,4 +111,4 @@ class FileContext extends _context.default {
|
|
|
105
111
|
}
|
|
106
112
|
}
|
|
107
113
|
|
|
108
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L2ZpbGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBDb250ZXh0IGZyb20gJy4uL2NvbnRleHQnO1xuaW1wb3J0IEJyZWFrUG9pbnQgZnJvbSBcIi4uL2JyZWFrUG9pbnRcIjtcblxuaW1wb3J0IHsgY3V0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250aW51YXRpb25cIjtcbmltcG9ydCB7IG5vZGVBc1N0cmluZywgbm9kZXNBc1N0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvbm9kZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBGaWxlQ29udGV4dCBleHRlbmRzIENvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBmaWxlQ29udGVudCwgZmlsZVBhdGgsIHRva2Vucywgbm9kZSwganNvbikge1xuICAgIHN1cGVyKGNvbnRleHQpO1xuXG4gICAgdGhpcy5maWxlQ29udGVudCA9IGZpbGVDb250ZW50O1xuICAgIHRoaXMuZmlsZVBhdGggPSBmaWxlUGF0aDtcbiAgICB0aGlzLnRva2VucyA9IHRva2VucztcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xuICAgIHRoaXMuanNvbiA9IGpzb247XG4gIH1cblxuICBnZXRGaWxlQ29udGVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5maWxlQ29udGVudDtcbiAgfVxuXG4gIGdldEZpbGVQYXRoKCkge1xuICAgIHJldHVybiB0aGlzLmZpbGVQYXRoO1xuICB9XG5cbiAgZ2V0VG9rZW5zKCkge1xuICAgIHJldHVybiB0aGlzLnRva2VucztcbiAgfVxuXG4gIGdldE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgfVxuXG4gIGdldEpTT04oKSB7XG4gICAgcmV0dXJuIHRoaXMuanNvbjtcbiAgfVxuXG4gIGdldExleGVyKCkge1xuICAgIGNvbnN0IGxleGVyID0gbnVsbDtcblxuICAgIHJldHVybiBsZXhlcjtcbiAgfVxuXG4gIGdldFBhcnNlcigpIHtcbiAgICBjb25zdCBwYXJzZXIgPSBudWxsO1xuXG4gICAgcmV0dXJuIHBhcnNlcjtcbiAgfVxuXG4gIGdldFR5cGVQcmVmaXgoKSB7XG4gICAgY29uc3QgY29udGV4dCA9IHRoaXMuZ2V0Q29udGV4dCgpLFxuICAgICAgICAgIHR5cGVQcmVmaXggPSBjb250ZXh0LmdldFR5cGVQcmVmaXgoKTtcblxuICAgIHJldHVybiB0eXBlUHJlZml4O1xuICB9XG5cbiAgbWF0Y2hGaWxlUGF0aChmaWxlUGF0aCkge1xuICAgIGNvbnN0IGZpbGVQYXRoTWF0Y2hlcyA9ICh0aGlzLmZpbGVQYXRoID09PSBmaWxlUGF0aCk7XG5cbiAgICByZXR1cm4gZmlsZVBhdGhNYXRjaGVzO1xuICB9XG5cbiAgbm9kZUFzU3RyaW5nKG5vZGUpIHtcbiAgICBjb25zdCBzdHJpbmcgPSBub2RlQXNTdHJpbmcobm9kZSwgdGhpcy50b2tlbnMpO1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIG5vZGVzQXNTdHJpbmcobm9kZXMpIHtcbiAgICBjb25zdCBzdHJpbmcgPSBub2Rlc0FzU3RyaW5nKG5vZGVzLCB0aGlzLnRva2Vucyk7XG5cbiAgICByZXR1cm4gc3RyaW5nO1xuICB9XG5cbiAgYnJlYWsobm9kZSwgYnJlYWtQb2ludCwgZm9yd2FyZCwgYmFjaykge1xuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5maWxlUGF0aCxcbiAgICAgICAgICByZWxlYXNlQ29udGV4dCA9IHRoaXMuZ2V0UmVsZWFzZUNvbnRleHQoKTtcblxuICAgIGlmIChicmVha1BvaW50ID09PSBudWxsKSB7XG4gICAgICBicmVha1BvaW50ID0gQnJlYWtQb2ludC5mcm9tRmlsZVBhdGhOb2RlQW5kVG9rZW5zKGZpbGVQYXRoLCBub2RlLCB0aGlzLnRva2Vucyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlbGVhc2VDb250ZXh0LmJyZWFrKGJyZWFrUG9pbnQsIGZvcndhcmQsIGJhY2spO1xuICB9XG5cbiAgdmVyaWZ5KGZvcndhcmQsIGJhY2spIHtcbiAgICBmb3J3YXJkID0gY3V0KGZvcndhcmQsIGJhY2spOyAvLy9cblxuICAgIGlmICh0aGlzLm5vZGUgPT09IG51bGwpIHtcbiAgICAgIHRoaXMud2FybmluZyhgVW5hYmxlIHRvIHZlcmlmeSB0aGUgJyR7dGhpcy5maWxlUGF0aH0nIGZpbGUgYmVjYXVzZSBpdCBjYW5ub3QgYmUgcGFyc2VkLmApO1xuXG4gICAgICByZXR1cm4gYmFjaygpO1xuICAgIH1cblxuICAgIHRoaXMuY2xlYXIoKTtcblxuICAgIHRoaXMuZGVidWcoYFZlcmlmeWluZyB0aGUgJyR7dGhpcy5maWxlUGF0aH0nIGZpbGUuLi5gKTtcblxuICAgIHJldHVybiB0aGlzLnZlcmlmeUZpbGUoKGJhY2spID0+IHtcbiAgICAgIHRoaXMuY29tcGxldGUoKTtcblxuICAgICAgdGhpcy5pbmZvKGAuLi52ZXJpZmllZCB0aGUgJyR7dGhpcy5maWxlUGF0aH0nIGZpbGUuYCk7XG5cbiAgICAgIHJldHVybiBmb3J3YXJkKGJhY2spO1xuICAgIH0sIChleGNlcHRpb24pID0+IHtcbiAgICAgIGlmIChleGNlcHRpb24pIHtcbiAgICAgICAgcmV0dXJuIGJhY2soZXhjZXB0aW9uKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5kZWJ1ZyhgVW5hYmxlIHRvIHZlcmlmeSB0aGUgJyR7dGhpcy5maWxlUGF0aH0nIGZpbGUuYCk7XG5cbiAgICAgIHJldHVybiBiYWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBpbml0aWFsaXNlKCkge1xuICAgIGNvbnN0IGxleGVyID0gdGhpcy5nZXRMZXhlcigpLFxuICAgICAgICAgIHBhcnNlciA9IHRoaXMuZ2V0UGFyc2VyKCksXG4gICAgICAgICAgY29udGVudCA9IHRoaXMuZmlsZUNvbnRlbnQ7IC8vL1xuXG4gICAgdGhpcy50b2tlbnMgPSBsZXhlci50b2tlbmlzZShjb250ZW50KTtcblxuICAgIHRoaXMubm9kZSA9IHBhcnNlci5wYXJzZSh0aGlzLnRva2Vucyk7XG4gIH1cblxuICBzdGF0aWMgZnJvbUZpbGUoQ2xhc3MsIGZpbGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGNvbnN0IGZpbGVDb250ZW50ID0gZmlsZS5nZXRDb250ZW50KCksXG4gICAgICAgICAgZmlsZVBhdGggPSBmaWxlLmdldFBhdGgoKSxcbiAgICAgICAgICB0b2tlbnMgPSBudWxsLFxuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGpzb24gPSBudWxsLFxuICAgICAgICAgIGNvbnRleHQgPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCksIC8vL1xuICAgICAgICAgIGZpbGVDb250ZXh0ID0gbmV3IENsYXNzKGNvbnRleHQsIGZpbGVDb250ZW50LCBmaWxlUGF0aCwgdG9rZW5zLCBub2RlLCBqc29uLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIGZpbGVDb250ZXh0O1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKENsYXNzLCBqc29uLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCB7IGZpbGVDb250ZW50LCBmaWxlUGF0aCB9ID0ganNvbixcbiAgICAgICAgICB0b2tlbnMgPSBudWxsLFxuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGNvbnRleHQgPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCksIC8vL1xuICAgICAgICAgIGZpbGVDb250ZXh0ID0gbmV3IENsYXNzKGNvbnRleHQsIGZpbGVDb250ZW50LCBmaWxlUGF0aCwgdG9rZW5zLCBub2RlLCBqc29uLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIGZpbGVDb250ZXh0O1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob2RlQW5kVG9rZW5zKENsYXNzLCBub2RlLCB0b2tlbnMsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGNvbnN0IGZpbGVDb250ZW50ID0gbnVsbCxcbiAgICAgICAgICBmaWxlUGF0aCA9IG51bGwsXG4gICAgICAgICAganNvbiA9IG51bGwsXG4gICAgICAgICAgY29udGV4dCA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKSwgLy8vXG4gICAgICAgICAgZmlsZUNvbnRleHQgPSBuZXcgQ2xhc3MoY29udGV4dCwgZmlsZUNvbnRlbnQsIGZpbGVQYXRoLCB0b2tlbnMsIG5vZGUsIGpzb24sIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICByZXR1cm4gZmlsZUNvbnRleHQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJGaWxlQ29udGV4dCIsIkNvbnRleHQiLCJjb250ZXh0IiwiZmlsZUNvbnRlbnQiLCJmaWxlUGF0aCIsInRva2VucyIsIm5vZGUiLCJqc29uIiwiZ2V0RmlsZUNvbnRlbnQiLCJnZXRGaWxlUGF0aCIsImdldFRva2VucyIsImdldE5vZGUiLCJnZXRKU09OIiwiZ2V0TGV4ZXIiLCJsZXhlciIsImdldFBhcnNlciIsInBhcnNlciIsImdldFR5cGVQcmVmaXgiLCJnZXRDb250ZXh0IiwidHlwZVByZWZpeCIsIm1hdGNoRmlsZVBhdGgiLCJmaWxlUGF0aE1hdGNoZXMiLCJub2RlQXNTdHJpbmciLCJzdHJpbmciLCJub2Rlc0FzU3RyaW5nIiwibm9kZXMiLCJicmVhayIsImJyZWFrUG9pbnQiLCJmb3J3YXJkIiwiYmFjayIsInJlbGVhc2VDb250ZXh0IiwiZ2V0UmVsZWFzZUNvbnRleHQiLCJCcmVha1BvaW50IiwiZnJvbUZpbGVQYXRoTm9kZUFuZFRva2VucyIsInZlcmlmeSIsImN1dCIsIndhcm5pbmciLCJjbGVhciIsImRlYnVnIiwidmVyaWZ5RmlsZSIsImNvbXBsZXRlIiwiaW5mbyIsImV4Y2VwdGlvbiIsImluaXRpYWxpc2UiLCJjb250ZW50IiwidG9rZW5pc2UiLCJwYXJzZSIsImZyb21GaWxlIiwiQ2xhc3MiLCJmaWxlIiwicmVtYWluaW5nQXJndW1lbnRzIiwiZ2V0Q29udGVudCIsImdldFBhdGgiLCJwb3AiLCJmaWxlQ29udGV4dCIsImZyb21KU09OIiwiZnJvbU5vZGVBbmRUb2tlbnMiXSwi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
|
|
@@ -62,7 +62,13 @@ function verifyReleaseContext(releaseContext, context, forward, back) {
|
|
|
62
62
|
return releaseContext.verify((back)=>{
|
|
63
63
|
log.info(`...verified the '${releaseName}' project.`);
|
|
64
64
|
return forward(context, back);
|
|
65
|
-
},
|
|
65
|
+
}, (exception)=>{
|
|
66
|
+
if (exception) {
|
|
67
|
+
return back(exception);
|
|
68
|
+
}
|
|
69
|
+
log.info(`Unable to verify the '${releaseName}' project.`);
|
|
70
|
+
return back();
|
|
71
|
+
});
|
|
66
72
|
}
|
|
67
73
|
function createReleaseContext(dependency, dependentNames, dependentReleased, context, succeed, fail) {
|
|
68
74
|
const { log } = context, releaseContext = findReleaseContext(dependency, context);
|
|
@@ -204,4 +210,4 @@ function checkProjectDependencyOfPackage(releaseContext, dependentReleased, depe
|
|
|
204
210
|
return projectDependencyOfPackage;
|
|
205
211
|
}
|
|
206
212
|
|
|
207
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmVyaWZpY2F0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBEZXBlbmRlbmN5IH0gZnJvbSBcIm9jY2FtLW1vZGVsXCI7XG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuaW1wb3J0IHsgZXZlcnkgIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250aW51YXRpb25cIjtcbmltcG9ydCB7IFNJTkdMRV9TUEFDRSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcblxuY29uc3QgeyBsYXN0IH0gPSBhcnJheVV0aWxpdGllcztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVJlbGVhc2VDb250ZXh0cyhkZXBlbmRlbmN5TmFtZSwgY29udGV4dCwgc3VjY2VlZCwgZmFpbCkge1xuICBjb25zdCBuYW1lID0gZGVwZW5kZW5jeU5hbWUsICAvLy9cbiAgICAgICAgZGVwZW5kZW5jeSA9IERlcGVuZGVuY3kuZnJvbU5hbWUobmFtZSksXG4gICAgICAgIGRlcGVuZGVudE5hbWVzID0gW10sXG4gICAgICAgIGRlcGVuZGVudFJlbGVhc2VkID0gZmFsc2U7XG5cbiAgcmV0dXJuIGNyZWF0ZVJlbGVhc2VDb250ZXh0KGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBkZXBlbmRlbnRSZWxlYXNlZCwgY29udGV4dCwgKHJlbGVhc2VDb250ZXh0Q3JlYXRlZCkgPT4ge1xuICAgIGxldCByZWxlYXNlQ29udGV4dHNDcmVhdGVkID0gZmFsc2U7XG5cbiAgICBpZiAocmVsZWFzZUNvbnRleHRDcmVhdGVkKSB7XG4gICAgICByZWxlYXNlQ29udGV4dHNDcmVhdGVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3VjY2VlZChyZWxlYXNlQ29udGV4dHNDcmVhdGVkKTtcbiAgfSwgZmFpbCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0aWFsaXNlUmVsZWFzZUNvbnRleHRzKGNvbnRleHQpIHtcbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dHMgfSA9IGNvbnRleHQ7XG5cbiAgcmVsZWFzZUNvbnRleHRzLmZvckVhY2goKHJlbGVhc2VDb250ZXh0KSA9PiB7XG4gICAgaW5pdGlhbGlzZVJlbGVhc2VDb250ZXh0KHJlbGVhc2VDb250ZXh0LCBjb250ZXh0KTtcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJpZnlSZWxlYXNlQ29udGV4dHMoY29udGV4dCwgZm9yd2FyZCwgYmFjaykge1xuICBjb25zdCB7IHJlbGVhc2VDb250ZXh0cyB9ID0gY29udGV4dDtcblxuICByZXR1cm4gZXZlcnkocmVsZWFzZUNvbnRleHRzLCB2ZXJpZnlSZWxlYXNlQ29udGV4dCwgY29udGV4dCwgZm9yd2FyZCwgYmFjayk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgY3JlYXRlUmVsZWFzZUNvbnRleHRzLFxuICBpbml0aWFsaXNlUmVsZWFzZUNvbnRleHRzLFxuICB2ZXJpZnlSZWxlYXNlQ29udGV4dHNcbn07XG5cbmZ1bmN0aW9uIHZlcmlmeVJlbGVhc2VDb250ZXh0KHJlbGVhc2VDb250ZXh0LCBjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gIGNvbnN0IHJlbGVhc2VkID0gcmVsZWFzZUNvbnRleHQuaXNSZWxlYXNlZCgpLFxuICAgICAgICB2ZXJpZmllZCA9IHJlbGVhc2VDb250ZXh0Lmhhc1ZlcmlmaWVkKCk7XG5cbiAgaWYgKHJlbGVhc2VkIHx8IHZlcmlmaWVkKSB7XG4gICAgcmV0dXJuIGZvcndhcmQoY29udGV4dCwgYmFjayk7XG4gIH1cblxuICBjb25zdCB7IGxvZyB9ID0gY29udGV4dCxcbiAgICAgICAgbmFtZSA9IHJlbGVhc2VDb250ZXh0LmdldE5hbWUoKSxcbiAgICAgICAgcmVsZWFzZU5hbWUgPSBuYW1lOyAvLy9cblxuICBsb2cuaW5mbyhgVmVyaWZ5aW5nIHRoZSAnJHtyZWxlYXNlTmFtZX0nIHByb2plY3QuLi5gKTtcblxuICByZXR1cm4gcmVsZWFzZUNvbnRleHQudmVyaWZ5KChiYWNrKSA9PiB7XG4gICAgbG9nLmluZm8oYC4uLnZlcmlmaWVkIHRoZSAnJHtyZWxlYXNlTmFtZX0nIHByb2plY3QuYCk7XG5cbiAgICByZXR1cm4gZm9yd2FyZChjb250ZXh0LCBiYWNrKTtcbiAgfSwgYmFjayk7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVJlbGVhc2VDb250ZXh0KGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBkZXBlbmRlbnRSZWxlYXNlZCwgY29udGV4dCwgc3VjY2VlZCwgZmFpbCkge1xuICBjb25zdCB7IGxvZyB9ID0gY29udGV4dCxcbiAgICAgICAgcmVsZWFzZUNvbnRleHQgPSBmaW5kUmVsZWFzZUNvbnRleHQoZGVwZW5kZW5jeSwgY29udGV4dCk7XG5cbiAgaWYgKHJlbGVhc2VDb250ZXh0ICE9PSBudWxsKSB7XG4gICAgY29uc3QgcmVsZWFzZUNvbnRleHRDcmVhdGVkID0gdHJ1ZTtcblxuICAgIHJldHVybiBzdWNjZWVkKHJlbGVhc2VDb250ZXh0Q3JlYXRlZCk7XG4gIH1cblxuICBjb25zdCBkZXBlbmRlbmN5TmFtZSA9IGRlcGVuZGVuY3kuZ2V0TmFtZSgpLFxuICAgICAgICBkZXBlbmRlbnROYW1lc0xlbmd0aCA9IGRlcGVuZGVudE5hbWVzLmxlbmd0aDtcblxuICBpZiAoZGVwZW5kZW50TmFtZXNMZW5ndGggPT09IDApIHtcbiAgICBsb2cuaW5mbyhgQ3JlYXRpbmcgdGhlICcke2RlcGVuZGVuY3lOYW1lfScgcGFja2FnZSBjb250ZXh0Li4uYCk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbGFzdERlcGVuZGVudE5hbWUgPSBsYXN0KGRlcGVuZGVudE5hbWVzKSxcbiAgICAgICAgICBkZXBlbmRlbnROYW1lID0gbGFzdERlcGVuZGVudE5hbWUsICAvLy9cbiAgICAgICAgICBkZXBlbmRlbmN5U3RyaW5nID0gZGVwZW5kZW5jeS5hc1N0cmluZygpO1xuXG4gICAgbG9nLmluZm8oYENyZWF0aW5nIHRoZSAnJHtkZXBlbmRlbmN5TmFtZX0nIHBhY2thZ2UgY29udGV4dCBnaXZlbiB0aGUgJyR7ZGVwZW5kZW50TmFtZX0nIGRlcGVuZGFudCdzICcke2RlcGVuZGVuY3lTdHJpbmd9JyBkZXBlbmRlbmN5Li4uYCk7XG4gIH1cblxuICBjb25zdCB7IHJlbGVhc2VDb250ZXh0RnJvbURlcGVuZGVuY3kgfSA9IGNvbnRleHQ7XG5cbiAgcmV0dXJuIHJlbGVhc2VDb250ZXh0RnJvbURlcGVuZGVuY3koZGVwZW5kZW5jeSwgY29udGV4dCwgKHJlbGVhc2VDb250ZXh0KSA9PiB7XG4gICAgbGV0IHJlbGVhc2VDb250ZXh0Q3JlYXRlZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgcmVsZWF0ZVByZXNlbnQgPSBjaGVja1JlbGVhc2VQcmVzZW50KHJlbGVhc2VDb250ZXh0LCBkZXBlbmRlbmN5TmFtZSwgY29udGV4dCk7XG5cbiAgICBpZiAoIXJlbGVhdGVQcmVzZW50KSB7XG4gICAgICByZXR1cm4gc3VjY2VlZChyZWxlYXNlQ29udGV4dENyZWF0ZWQpO1xuICAgIH1cblxuICAgIGNvbnN0IHByb2plY3REZXBlbmRlbmN5T2ZQYWNrYWdlID0gY2hlY2tQcm9qZWN0RGVwZW5kZW5jeU9mUGFja2FnZShyZWxlYXNlQ29udGV4dCwgZGVwZW5kZW50UmVsZWFzZWQsIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0KTtcblxuICAgIGlmIChwcm9qZWN0RGVwZW5kZW5jeU9mUGFja2FnZSkge1xuICAgICAgcmV0dXJuIHN1Y2NlZWQocmVsZWFzZUNvbnRleHRDcmVhdGVkKTtcbiAgICB9XG5cbiAgICBjb25zdCByZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3kgPSBjaGVja1JlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeShyZWxlYXNlQ29udGV4dCwgZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIGNvbnRleHQpO1xuXG4gICAgaWYgKCFyZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3kpIHtcbiAgICAgIHJldHVybiBzdWNjZWVkKHJlbGVhc2VDb250ZXh0Q3JlYXRlZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNyZWF0ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMocmVsZWFzZUNvbnRleHQsIGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0LCAoZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0c0NyZWF0ZWQpID0+IHtcbiAgICAgIGlmIChkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzQ3JlYXRlZCkge1xuICAgICAgICByZWxlYXNlQ29udGV4dENyZWF0ZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAocmVsZWFzZUNvbnRleHRDcmVhdGVkKSB7XG4gICAgICAgIGFkZFJlbGVhc2VDb250ZXh0KHJlbGVhc2VDb250ZXh0LCBjb250ZXh0KTtcbiAgICAgIH1cblxuICAgICAgcmVsZWFzZUNvbnRleHRDcmVhdGVkID9cbiAgICAgICAgbG9nLmRlYnVnKGAuLi5jcmVhdGVkIHRoZSAnJHtkZXBlbmRlbmN5TmFtZX0nIHBhY2thZ2UgY29udGV4dC5gKSA6XG4gICAgICAgICAgbG9nLndhcm5pbmcoYC4uLnVuYWJsZSB0byBjcmVhdGUgdGhlICcke2RlcGVuZGVuY3lOYW1lfScgcGFja2FnZSBjb250ZXh0LmApO1xuXG4gICAgICByZXR1cm4gc3VjY2VlZChyZWxlYXNlQ29udGV4dENyZWF0ZWQpO1xuICAgIH0sIGZhaWwpO1xuICB9LCBmYWlsKTtcbn1cblxuZnVuY3Rpb24gY3JlYXRlRGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyhyZWxlYXNlQ29udGV4dCwgZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIGNvbnRleHQsIHN1Y2NlZWQsIGZhaWwpIHtcbiAgY29uc3QgbmFtZSA9IHJlbGVhc2VDb250ZXh0LmdldE5hbWUoKSxcbiAgICAgICAgcmVsZWFzZWQgPSByZWxlYXNlQ29udGV4dC5pc1JlbGVhc2VkKCksXG4gICAgICAgIGRlcGVuZGVuY2llcyA9IHJlbGVhc2VDb250ZXh0LmdldERlcGVuZGVuY2llcygpLFxuICAgICAgICBkZXBlbmRlbnROYW1lID0gbmFtZSwgIC8vL1xuICAgICAgICBkZXBlbmRlbnRSZWxlYXNlZCA9IHJlbGVhc2VkOyAgLy8vXG5cbiAgZGVwZW5kZW50TmFtZXMgPSBbIC4uLmRlcGVuZGVudE5hbWVzLCBkZXBlbmRlbnROYW1lIF07ICAvLy9cblxuICBjb25zdCBhcnJheSA9IGRlcGVuZGVuY2llcy5nZXRBcnJheSgpO1xuXG4gIHJldHVybiBldmVyeShhcnJheSwgKGRlcGVuZGVuY3ksIGZvcndhcmQsIGJhY2spID0+IHtcbiAgICBjb25zdCBjeWNsaWNEZXBlbmRlbmN5UHJlc2VudCA9IGNoZWNrQ3ljbGljRGVwZW5kZW5jeVByZXNlbnQoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIGNvbnRleHQpO1xuXG4gICAgaWYgKGN5Y2xpY0RlcGVuZGVuY3lQcmVzZW50KSB7XG4gICAgICByZXR1cm4gYmFjaygpO1xuICAgIH1cblxuICAgIHJldHVybiBjcmVhdGVSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgZGVwZW5kZW50UmVsZWFzZWQsIGNvbnRleHQsIChyZWxlYXNlQ29udGV4dENyZWF0ZWQpID0+IHtcbiAgICAgIGlmICghcmVsZWFzZUNvbnRleHRDcmVhdGVkKSB7XG4gICAgICAgIHJldHVybiBiYWNrKCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmb3J3YXJkKGJhY2spO1xuICAgIH0sIGZhaWwpO1xuICB9LCAoKSA9PiBzdWNjZWVkKHRydWUpLCAoKSA9PiBzdWNjZWVkKGZhbHNlKSk7XG59XG5cbmZ1bmN0aW9uIGFkZFJlbGVhc2VDb250ZXh0KHJlbGVhc2VDb250ZXh0LCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgcmVsZWFzZUNvbnRleHRzIH0gPSBjb250ZXh0O1xuXG4gIHJlbGVhc2VDb250ZXh0cy5wdXNoKHJlbGVhc2VDb250ZXh0KTtcbn1cblxuZnVuY3Rpb24gZmluZFJlbGVhc2VDb250ZXh0KGRlcGVuZGVuY3ksIGNvbnRleHQpIHtcbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dHMgfSA9IGNvbnRleHQsXG4gICAgICAgIGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCksXG4gICAgICAgIHJlbGVhc2VDb250ZXh0ID0gcmVsZWFzZUNvbnRleHRzLmZpbmQoKHJlbGVhc2VDb250ZXh0KSA9PiB7XG4gICAgICAgICAgY29uc3QgZGVwZW5kZW5jeU5hbWVNYXRjaGVzID0gcmVsZWFzZUNvbnRleHQubWF0Y2hEZXBlbmRlbmN5TmFtZShkZXBlbmRlbmN5TmFtZSk7XG5cbiAgICAgICAgICBpZiAoZGVwZW5kZW5jeU5hbWVNYXRjaGVzKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pIHx8IG51bGw7XG5cbiAgcmV0dXJuIHJlbGVhc2VDb250ZXh0O1xufVxuXG5mdW5jdGlvbiBjaGVja1JlbGVhc2VQcmVzZW50KHJlbGVhc2VDb250ZXh0LCBkZXBlbmRlbmN5TmFtZSwgY29udGV4dCkge1xuICBsZXQgcmVsZWFzZVByZXNlbnQgPSB0cnVlO1xuXG4gIGlmIChyZWxlYXNlQ29udGV4dCA9PT0gbnVsbCkge1xuICAgIGNvbnN0IHsgbG9nIH0gPSBjb250ZXh0O1xuXG4gICAgbG9nLndhcm5pbmcoYFRoZSAnJHtkZXBlbmRlbmN5TmFtZX0nIHBhY2thZ2UgY29udGV4dCBjb3VsZCBub3QgYmUgY3JlYXRlZC4gUGVyaGFwcyB0aGUgJ21ldGEuanNvbicgZmlsZSBpcyBtaXNzaW5nIG9yIGludmFsaWQuYCk7XG5cbiAgICByZWxlYXNlUHJlc2VudCA9IGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIHJlbGVhc2VQcmVzZW50O1xufVxuXG5mdW5jdGlvbiByZXRyaWV2ZVJlbGVhc2VDb250ZXh0cyhyZWxlYXNlQ29udGV4dCwgY29udGV4dCwgcmVsZWFzZUNvbnRleHRzID0gW10pIHtcbiAgY29uc3QgcmVsZWFzZUNvbnRleHRzSW5jbHVkZXNSZWxlYXNlQ29udGV4dCA9IHJlbGVhc2VDb250ZXh0cy5pbmNsdWRlcyhyZWxlYXNlQ29udGV4dCk7XG5cbiAgaWYgKCFyZWxlYXNlQ29udGV4dHNJbmNsdWRlc1JlbGVhc2VDb250ZXh0KSB7XG4gICAgY29uc3QgZGVwZW5kZW5jaWVzID0gcmVsZWFzZUNvbnRleHQuZ2V0RGVwZW5kZW5jaWVzKCk7XG5cbiAgICBkZXBlbmRlbmNpZXMuZm9yRWFjaERlcGVuZGVuY3koKGRlcGVuZGVuY3kpID0+IHtcbiAgICAgIGNvbnN0IHJlbGVhc2VDb250ZXh0ID0gZmluZFJlbGVhc2VDb250ZXh0KGRlcGVuZGVuY3ksIGNvbnRleHQpO1xuXG4gICAgICByZXRyaWV2ZVJlbGVhc2VDb250ZXh0cyhyZWxlYXNlQ29udGV4dCwgY29udGV4dCwgcmVsZWFzZUNvbnRleHRzKTtcbiAgICB9KTtcblxuICAgIHJlbGVhc2VDb250ZXh0cy51bnNoaWZ0KHJlbGVhc2VDb250ZXh0KTtcbiAgfVxuXG4gIHJldHVybiByZWxlYXNlQ29udGV4dHM7XG59XG5cbmZ1bmN0aW9uIGluaXRpYWxpc2VSZWxlYXNlQ29udGV4dChyZWxlYXNlQ29udGV4dCwgY29udGV4dCkge1xuICBjb25zdCB7IGxvZyB9ID0gY29udGV4dCxcbiAgICAgICAgbmFtZSA9IHJlbGVhc2VDb250ZXh0LmdldE5hbWUoKSxcbiAgICAgICAgcmVsZWFzZU5hbWUgPSBuYW1lLCAvLy9cbiAgICAgICAgcmVsZWFzZUNvbnRleHRzID0gcmV0cmlldmVSZWxlYXNlQ29udGV4dHMocmVsZWFzZUNvbnRleHQsIGNvbnRleHQpO1xuXG4gIGxvZy5pbmZvKGBJbml0aWFsaXNpbmcgdGhlICcke3JlbGVhc2VOYW1lfScgcGFja2FnZSBjb250ZXh0Li4uYCk7XG5cbiAgY29uc3QgeyBGaWxlQ29udGV4dEZyb21GaWxlUGF0aCB9ID0gY29udGV4dDtcblxuICByZWxlYXNlQ29udGV4dC5pbml0aWFsaXNlKHJlbGVhc2VDb250ZXh0cywgRmlsZUNvbnRleHRGcm9tRmlsZVBhdGgpO1xuXG4gIGxvZy5kZWJ1ZyhgLi4uaW5pdGlhbGlzZWQgdGhlICcke3JlbGVhc2VOYW1lfScgcGFja2FnZSBjb250ZXh0LmApO1xufVxuXG5mdW5jdGlvbiBjaGVja0N5Y2xpY0RlcGVuZGVuY3lQcmVzZW50KGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0KSB7XG4gIGxldCBjeWNsaWNEZXBlbmRlbmN5UHJlc2VudCA9IGZhbHNlO1xuXG4gIGNvbnN0IGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCksXG4gICAgICAgIGluZGV4ID0gZGVwZW5kZW50TmFtZXMuaW5kZXhPZihkZXBlbmRlbmN5TmFtZSk7XG5cbiAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICBjb25zdCB7IGxvZyB9ID0gY29udGV4dCxcbiAgICAgICAgICBjaXJjdWxhckRlcGVuZGVudE5hbWVzID0gZGVwZW5kZW50TmFtZXMuc2xpY2UoaW5kZXgpLFxuICAgICAgICAgIGNpcmN1bGFyRGVwZW5kZW5jeU5hbWVzID0gW1xuICAgICAgICAgICAgLi4uY2lyY3VsYXJEZXBlbmRlbnROYW1lcyxcbiAgICAgICAgICAgIGRlcGVuZGVuY3lOYW1lXG4gICAgICAgICAgXSxcbiAgICAgICAgICBjaXJjdWxhckRlcGVuZGVuY3lOYW1lc1N0cmluZyA9IGNpcmN1bGFyRGVwZW5kZW5jeU5hbWVzLmpvaW4oU0lOR0xFX1NQQUNFKTtcblxuICAgIGxvZy53YXJuaW5nKGBUaGVyZSBpcyBhIGN5Y2xpYyBkZXBlbmRlbmN5LCAnJHtjaXJjdWxhckRlcGVuZGVuY3lOYW1lc1N0cmluZ30nLmApO1xuXG4gICAgY3ljbGljRGVwZW5kZW5jeVByZXNlbnQgPSB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIGN5Y2xpY0RlcGVuZGVuY3lQcmVzZW50O1xufVxuXG5mdW5jdGlvbiBjaGVja1JlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeShyZWxlYXNlQ29udGV4dCwgZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIGNvbnRleHQpIHtcbiAgbGV0IHJlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeSA9IHRydWU7XG5cbiAgY29uc3Qgc2hvcnRlbmVkVmVyc2lvbiA9IGRlcGVuZGVuY3kuZ2V0U2hvcnRlbmVkVmVyc2lvbigpO1xuXG4gIGlmIChzaG9ydGVuZWRWZXJzaW9uICE9PSBudWxsKSB7XG4gICAgY29uc3QgZW50cmllc01hdGNoU2hvcnRlbmVkVmVyc2lvbiA9IHJlbGVhc2VDb250ZXh0Lm1hdGNoU2hvcnRlbmVkVmVyc2lvbihzaG9ydGVuZWRWZXJzaW9uKTtcblxuICAgIGlmICghZW50cmllc01hdGNoU2hvcnRlbmVkVmVyc2lvbikge1xuICAgICAgY29uc3QgeyBsb2cgfSA9IGNvbnRleHQsXG4gICAgICAgICAgICB2ZXJzaW9uID0gcmVsZWFzZUNvbnRleHQuZ2V0VmVyc2lvbigpLFxuICAgICAgICAgICAgbGFzdERlcGVuZGVudE5hbWUgPSBsYXN0KGRlcGVuZGVudE5hbWVzKSxcbiAgICAgICAgICAgIGRlcGVuZGVudE5hbWUgPSBsYXN0RGVwZW5kZW50TmFtZSwgIC8vL1xuICAgICAgICAgICAgdmVyc2lvblN0cmluZyA9IHZlcnNpb24udG9TdHJpbmcoKSxcbiAgICAgICAgICAgIGRlcGVuZGVuY3lTdHJpbmcgPSBkZXBlbmRlbmN5LmFzU3RyaW5nKCk7XG5cbiAgICAgIGxvZy53YXJuaW5nKGBUaGUgJyR7ZGVwZW5kZW50TmFtZX0nIGRlcGVuZGVudCByZXF1aXJlcyB0aGUgJyR7ZGVwZW5kZW5jeVN0cmluZ30nIGRlcGVuZGVuY3kgYnV0IGEgY29udGV4dCB3aXRoIHZlcnNpb24gJyR7dmVyc2lvblN0cmluZ30nIHdhcyBwcm92aWRlZC5gKTtcblxuICAgICAgcmVsZWFzZU1hdGNoZXNEZXBlbmRlbmN5ID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeTtcbn1cblxuZnVuY3Rpb24gY2hlY2tQcm9qZWN0RGVwZW5kZW5jeU9mUGFja2FnZShyZWxlYXNlQ29udGV4dCwgZGVwZW5kZW50UmVsZWFzZWQsIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0KSB7XG4gIGxldCBwcm9qZWN0RGVwZW5kZW5jeU9mUGFja2FnZSA9IGZhbHNlO1xuXG4gIGlmIChkZXBlbmRlbnRSZWxlYXNlZCkge1xuICAgIGNvbnN0IHVucmVsZWFzZWQgPSByZWxlYXNlQ29udGV4dC5pc1VucmVsZWFzZWQoKTtcblxuICAgIGlmICh1bnJlbGVhc2VkKSB7XG4gICAgICBjb25zdCB7IGxvZyB9ID0gY29udGV4dCxcbiAgICAgICAgICAgIG5hbWUgPSByZWxlYXNlQ29udGV4dC5nZXROYW1lKCksXG4gICAgICAgICAgICBsYXN0RGVwZW5kZW50TmFtZSA9IGxhc3QoZGVwZW5kZW50TmFtZXMpLFxuICAgICAgICAgICAgZGVwZW5kZW5jeU5hbWUgPSBuYW1lLC8vL1xuICAgICAgICAgICAgZGVwZW5kZW50TmFtZSA9IGxhc3REZXBlbmRlbnROYW1lOyAgLy8vXG5cbiAgICAgIGxvZy53YXJuaW5nKGBUaGUgJyR7ZGVwZW5kZW5jeU5hbWV9JyBkZXBlbmRlbmN5IGlzIGEgcHJvamVjdCB3aGlsc3QgaXRzICcke2RlcGVuZGVudE5hbWV9JyBkZXBlbmRlbnQgaXMgYSBwYWNrYWdlLmApO1xuXG4gICAgICBwcm9qZWN0RGVwZW5kZW5jeU9mUGFja2FnZSA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHByb2plY3REZXBlbmRlbmN5T2ZQYWNrYWdlO1xufVxuIl0sIm5hbWVzIjpbImNyZWF0ZVJlbGVhc2VDb250ZXh0cyIsImluaXRpYWxpc2VSZWxlYXNlQ29udGV4dHMiLCJ2ZXJpZnlSZWxlYXNlQ29udGV4dHMiLCJsYXN0IiwiYXJyYXlVdGlsaXRpZXMiLCJkZXBlbmRlbmN5TmFtZSIsImNvbnRleHQiLCJzdWNjZWVkIiwiZmFpbCIsIm5hbWUiLCJkZXBlbmRlbmN5IiwiRGVwZW5kZW5jeSIsImZyb21OYW1lIiwiZGVwZW5kZW50TmFtZXMiLCJkZXBlbmRlbnRSZWxlYXNlZCIsImNyZWF0ZVJlbGVhc2VDb250ZXh0IiwicmVsZWFzZUNvbnRleHRDcmVhdGVkIiwicmVsZWFzZUNvbnRleHRzQ3JlYXRlZCIsInJlbGVhc2VDb250ZXh0cyIsImZvckVhY2giLCJyZWxlYXNlQ29udGV4dCIsImluaXRpYWxpc2VSZWxlYXNlQ29udGV4dCIsImZvcndhcmQiLCJiYWNrIiwiZXZlcnkiLCJ2ZXJpZnlSZWxlYXNlQ29udGV4dCIsInJlbGVhc2VkIiwiaXNSZWxlYXNlZCIsInZlcmlmaWVkIiwiaGFzVmVyaWZpZWQiLCJsb2ciLCJnZXROYW1lIiwicmVsZWFzZU5hbWUiLCJpbmZvIiwidmVyaWZ5IiwiZmluZFJlbGVhc2VDb250ZXh0IiwiZGVwZW5kZW50TmFtZXNMZW5ndGgiLCJsZW5ndGgiLCJsYXN0RGVwZW5kZW50TmFtZSIsImRlcGVuZGVudE5hbWUiLCJkZXBlbmRlbmN5U3RyaW5nIiwiYXNTdHJpbmciLCJyZWxlYXNlQ29udGV4dEZyb21EZXBlbmRlbmN5IiwicmVsZWF0ZVByZXNlbnQiLCJjaGVja1JlbGVhc2VQcmVzZW50IiwicHJvamVjdERlcGVuZGVuY3lPZlBhY2thZ2UiLCJjaGVja1Byb2plY3REZXBlbmRlbmN5T2ZQYWNrYWdlIiwicmVsZWFzZU1hdGNoZXNEZXBlbmRlbmN5IiwiY2hlY2tSZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3kiLCJjcmVhdGVEZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzIiwiZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0c0NyZWF0ZWQiLCJhZGRSZWxlYXNlQ29udGV4dCIsImRlYnVnIiwid2FybmluZyIsImRlcGVuZGVuY2llcyIsImdldERlcGVuZGVuY2llcyIsImFycmF5IiwiZ2V0QXJyYXkiLCJjeWNsaWNEZXBlbmRlbmN5UHJlc2VudCIsImNoZWNrQ3ljbGljRGVwZW5kZW5jeVByZXNlbnQiLCJwdXNoIiwiZmluZCIsImRlcGVuZGVuY3lOYW1lTWF0Y2hlcyIsIm1hdGNoRGVwZW5kZW5jeU5hbWUiLCJyZWxlYXNlUHJlc2VudCIsInJldHJpZXZlUmVsZWFzZUNvbnRleHRzIiwicmVsZWFzZUNvbnRleHRzSW5jbHVkZXNSZWxlYXNlQ29udGV4dCIsImluY2x1ZGVzIiwiZm9yRWFjaERlcGVuZGVuY3kiLCJ1bnNoaWZ0IiwiRmlsZUNvbnRleHRGcm9tRmlsZVBhdGgiLCJpbml0aWFsaXNlIiwiaW5kZXgiLCJpbmRleE9mIiwiY2lyY3VsYXJEZXBlbmRlbnROYW1lcyIsInNsaWNlIiwiY2lyY3VsYXJEZXBlbmRlbmN5TmFtZXMiLCJjaXJjdWxhckRlcGVuZGVuY3lOYW1lc1N0cmluZyIsImpvaW4iLCJTSU5HTEVfU1BBQ0UiLCJzaG9ydGVuZWRWZXJzaW9uIiwiZ2V0U2hvcnRlbmVkVmVyc2lvbiIsImVudHJpZXNNYXRjaFNob3J0ZW5lZFZlcnNpb24iLCJtYXRjaFNob3J0ZW5lZFZlcnNpb24iLCJ2ZXJzaW9uIiwiZ2V0VmVyc2lvbiIsInZlcnNpb25TdHJpbmciLCJ0b1N0cmluZyIsInVucmVsZWFzZWQiLCJpc1VucmVsZWFzZWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQVVnQkE7ZUFBQUE7O1FBK0JoQjtlQUFBOztRQWRnQkM7ZUFBQUE7O1FBUUFDO2VBQUFBOzs7NEJBakNXOzJCQUNJOzhCQUVSOzJCQUNNO0FBRTdCLE1BQU0sRUFBRUMsSUFBSSxFQUFFLEdBQUdDLHlCQUFjO0FBRXhCLFNBQVNKLHNCQUFzQkssY0FBYyxFQUFFQyxPQUFPLEVBQUVDLE9BQU8sRUFBRUMsSUFBSTtJQUMxRSxNQUFNQyxPQUFPSixnQkFDUEssYUFBYUMsc0JBQVUsQ0FBQ0MsUUFBUSxDQUFDSCxPQUNqQ0ksaUJBQWlCLEVBQUUsRUFDbkJDLG9CQUFvQjtJQUUxQixPQUFPQyxxQkFBcUJMLFlBQVlHLGdCQUFnQkMsbUJBQW1CUixTQUFTLENBQUNVO1FBQ25GLElBQUlDLHlCQUF5QjtRQUU3QixJQUFJRCx1QkFBdUI7WUFDekJDLHlCQUF5QjtRQUMzQjtRQUVBLE9BQU9WLFFBQVFVO0lBQ2pCLEdBQUdUO0FBQ0w7QUFFTyxTQUFTUCwwQkFBMEJLLE9BQU87SUFDL0MsTUFBTSxFQUFFWSxlQUFlLEVBQUUsR0FBR1o7SUFF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
|
|
213
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmVyaWZpY2F0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBEZXBlbmRlbmN5IH0gZnJvbSBcIm9jY2FtLW1vZGVsXCI7XG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuaW1wb3J0IHsgZXZlcnkgIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250aW51YXRpb25cIjtcbmltcG9ydCB7IFNJTkdMRV9TUEFDRSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcblxuY29uc3QgeyBsYXN0IH0gPSBhcnJheVV0aWxpdGllcztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVJlbGVhc2VDb250ZXh0cyhkZXBlbmRlbmN5TmFtZSwgY29udGV4dCwgc3VjY2VlZCwgZmFpbCkge1xuICBjb25zdCBuYW1lID0gZGVwZW5kZW5jeU5hbWUsICAvLy9cbiAgICAgICAgZGVwZW5kZW5jeSA9IERlcGVuZGVuY3kuZnJvbU5hbWUobmFtZSksXG4gICAgICAgIGRlcGVuZGVudE5hbWVzID0gW10sXG4gICAgICAgIGRlcGVuZGVudFJlbGVhc2VkID0gZmFsc2U7XG5cbiAgcmV0dXJuIGNyZWF0ZVJlbGVhc2VDb250ZXh0KGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBkZXBlbmRlbnRSZWxlYXNlZCwgY29udGV4dCwgKHJlbGVhc2VDb250ZXh0Q3JlYXRlZCkgPT4ge1xuICAgIGxldCByZWxlYXNlQ29udGV4dHNDcmVhdGVkID0gZmFsc2U7XG5cbiAgICBpZiAocmVsZWFzZUNvbnRleHRDcmVhdGVkKSB7XG4gICAgICByZWxlYXNlQ29udGV4dHNDcmVhdGVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3VjY2VlZChyZWxlYXNlQ29udGV4dHNDcmVhdGVkKTtcbiAgfSwgZmFpbCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0aWFsaXNlUmVsZWFzZUNvbnRleHRzKGNvbnRleHQpIHtcbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dHMgfSA9IGNvbnRleHQ7XG5cbiAgcmVsZWFzZUNvbnRleHRzLmZvckVhY2goKHJlbGVhc2VDb250ZXh0KSA9PiB7XG4gICAgaW5pdGlhbGlzZVJlbGVhc2VDb250ZXh0KHJlbGVhc2VDb250ZXh0LCBjb250ZXh0KTtcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJpZnlSZWxlYXNlQ29udGV4dHMoY29udGV4dCwgZm9yd2FyZCwgYmFjaykge1xuICBjb25zdCB7IHJlbGVhc2VDb250ZXh0cyB9ID0gY29udGV4dDtcblxuICByZXR1cm4gZXZlcnkocmVsZWFzZUNvbnRleHRzLCB2ZXJpZnlSZWxlYXNlQ29udGV4dCwgY29udGV4dCwgZm9yd2FyZCwgYmFjayk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgY3JlYXRlUmVsZWFzZUNvbnRleHRzLFxuICBpbml0aWFsaXNlUmVsZWFzZUNvbnRleHRzLFxuICB2ZXJpZnlSZWxlYXNlQ29udGV4dHNcbn07XG5cbmZ1bmN0aW9uIHZlcmlmeVJlbGVhc2VDb250ZXh0KHJlbGVhc2VDb250ZXh0LCBjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gIGNvbnN0IHJlbGVhc2VkID0gcmVsZWFzZUNvbnRleHQuaXNSZWxlYXNlZCgpLFxuICAgICAgICB2ZXJpZmllZCA9IHJlbGVhc2VDb250ZXh0Lmhhc1ZlcmlmaWVkKCk7XG5cbiAgaWYgKHJlbGVhc2VkIHx8IHZlcmlmaWVkKSB7XG4gICAgcmV0dXJuIGZvcndhcmQoY29udGV4dCwgYmFjayk7XG4gIH1cblxuICBjb25zdCB7IGxvZyB9ID0gY29udGV4dCxcbiAgICAgICAgbmFtZSA9IHJlbGVhc2VDb250ZXh0LmdldE5hbWUoKSxcbiAgICAgICAgcmVsZWFzZU5hbWUgPSBuYW1lOyAvLy9cblxuICBsb2cuaW5mbyhgVmVyaWZ5aW5nIHRoZSAnJHtyZWxlYXNlTmFtZX0nIHByb2plY3QuLi5gKTtcblxuICByZXR1cm4gcmVsZWFzZUNvbnRleHQudmVyaWZ5KChiYWNrKSA9PiB7XG4gICAgbG9nLmluZm8oYC4uLnZlcmlmaWVkIHRoZSAnJHtyZWxlYXNlTmFtZX0nIHByb2plY3QuYCk7XG5cbiAgICByZXR1cm4gZm9yd2FyZChjb250ZXh0LCBiYWNrKTtcbiAgfSwgKGV4Y2VwdGlvbikgPT4ge1xuICAgIGlmIChleGNlcHRpb24pIHtcbiAgICAgIHJldHVybiBiYWNrKGV4Y2VwdGlvbik7XG4gICAgfVxuXG4gICAgbG9nLmluZm8oYFVuYWJsZSB0byB2ZXJpZnkgdGhlICcke3JlbGVhc2VOYW1lfScgcHJvamVjdC5gKTtcblxuICAgIHJldHVybiBiYWNrKCk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgZGVwZW5kZW50UmVsZWFzZWQsIGNvbnRleHQsIHN1Y2NlZWQsIGZhaWwpIHtcbiAgY29uc3QgeyBsb2cgfSA9IGNvbnRleHQsXG4gICAgICAgIHJlbGVhc2VDb250ZXh0ID0gZmluZFJlbGVhc2VDb250ZXh0KGRlcGVuZGVuY3ksIGNvbnRleHQpO1xuXG4gIGlmIChyZWxlYXNlQ29udGV4dCAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHJlbGVhc2VDb250ZXh0Q3JlYXRlZCA9IHRydWU7XG5cbiAgICByZXR1cm4gc3VjY2VlZChyZWxlYXNlQ29udGV4dENyZWF0ZWQpO1xuICB9XG5cbiAgY29uc3QgZGVwZW5kZW5jeU5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKSxcbiAgICAgICAgZGVwZW5kZW50TmFtZXNMZW5ndGggPSBkZXBlbmRlbnROYW1lcy5sZW5ndGg7XG5cbiAgaWYgKGRlcGVuZGVudE5hbWVzTGVuZ3RoID09PSAwKSB7XG4gICAgbG9nLmluZm8oYENyZWF0aW5nIHRoZSAnJHtkZXBlbmRlbmN5TmFtZX0nIHBhY2thZ2UgY29udGV4dC4uLmApO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IGxhc3REZXBlbmRlbnROYW1lID0gbGFzdChkZXBlbmRlbnROYW1lcyksXG4gICAgICAgICAgZGVwZW5kZW50TmFtZSA9IGxhc3REZXBlbmRlbnROYW1lLCAgLy8vXG4gICAgICAgICAgZGVwZW5kZW5jeVN0cmluZyA9IGRlcGVuZGVuY3kuYXNTdHJpbmcoKTtcblxuICAgIGxvZy5pbmZvKGBDcmVhdGluZyB0aGUgJyR7ZGVwZW5kZW5jeU5hbWV9JyBwYWNrYWdlIGNvbnRleHQgZ2l2ZW4gdGhlICcke2RlcGVuZGVudE5hbWV9JyBkZXBlbmRhbnQncyAnJHtkZXBlbmRlbmN5U3RyaW5nfScgZGVwZW5kZW5jeS4uLmApO1xuICB9XG5cbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dEZyb21EZXBlbmRlbmN5IH0gPSBjb250ZXh0O1xuXG4gIHJldHVybiByZWxlYXNlQ29udGV4dEZyb21EZXBlbmRlbmN5KGRlcGVuZGVuY3ksIGNvbnRleHQsIChyZWxlYXNlQ29udGV4dCkgPT4ge1xuICAgIGxldCByZWxlYXNlQ29udGV4dENyZWF0ZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IHJlbGVhdGVQcmVzZW50ID0gY2hlY2tSZWxlYXNlUHJlc2VudChyZWxlYXNlQ29udGV4dCwgZGVwZW5kZW5jeU5hbWUsIGNvbnRleHQpO1xuXG4gICAgaWYgKCFyZWxlYXRlUHJlc2VudCkge1xuICAgICAgcmV0dXJuIHN1Y2NlZWQocmVsZWFzZUNvbnRleHRDcmVhdGVkKTtcbiAgICB9XG5cbiAgICBjb25zdCBwcm9qZWN0RGVwZW5kZW5jeU9mUGFja2FnZSA9IGNoZWNrUHJvamVjdERlcGVuZGVuY3lPZlBhY2thZ2UocmVsZWFzZUNvbnRleHQsIGRlcGVuZGVudFJlbGVhc2VkLCBkZXBlbmRlbnROYW1lcywgY29udGV4dCk7XG5cbiAgICBpZiAocHJvamVjdERlcGVuZGVuY3lPZlBhY2thZ2UpIHtcbiAgICAgIHJldHVybiBzdWNjZWVkKHJlbGVhc2VDb250ZXh0Q3JlYXRlZCk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVsZWFzZU1hdGNoZXNEZXBlbmRlbmN5ID0gY2hlY2tSZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3kocmVsZWFzZUNvbnRleHQsIGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0KTtcblxuICAgIGlmICghcmVsZWFzZU1hdGNoZXNEZXBlbmRlbmN5KSB7XG4gICAgICByZXR1cm4gc3VjY2VlZChyZWxlYXNlQ29udGV4dENyZWF0ZWQpO1xuICAgIH1cblxuICAgIHJldHVybiBjcmVhdGVEZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKHJlbGVhc2VDb250ZXh0LCBkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgY29udGV4dCwgKGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHNDcmVhdGVkKSA9PiB7XG4gICAgICBpZiAoZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0c0NyZWF0ZWQpIHtcbiAgICAgICAgcmVsZWFzZUNvbnRleHRDcmVhdGVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKHJlbGVhc2VDb250ZXh0Q3JlYXRlZCkge1xuICAgICAgICBhZGRSZWxlYXNlQ29udGV4dChyZWxlYXNlQ29udGV4dCwgY29udGV4dCk7XG4gICAgICB9XG5cbiAgICAgIHJlbGVhc2VDb250ZXh0Q3JlYXRlZCA/XG4gICAgICAgIGxvZy5kZWJ1ZyhgLi4uY3JlYXRlZCB0aGUgJyR7ZGVwZW5kZW5jeU5hbWV9JyBwYWNrYWdlIGNvbnRleHQuYCkgOlxuICAgICAgICAgIGxvZy53YXJuaW5nKGAuLi51bmFibGUgdG8gY3JlYXRlIHRoZSAnJHtkZXBlbmRlbmN5TmFtZX0nIHBhY2thZ2UgY29udGV4dC5gKTtcblxuICAgICAgcmV0dXJuIHN1Y2NlZWQocmVsZWFzZUNvbnRleHRDcmVhdGVkKTtcbiAgICB9LCBmYWlsKTtcbiAgfSwgZmFpbCk7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMocmVsZWFzZUNvbnRleHQsIGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0LCBzdWNjZWVkLCBmYWlsKSB7XG4gIGNvbnN0IG5hbWUgPSByZWxlYXNlQ29udGV4dC5nZXROYW1lKCksXG4gICAgICAgIHJlbGVhc2VkID0gcmVsZWFzZUNvbnRleHQuaXNSZWxlYXNlZCgpLFxuICAgICAgICBkZXBlbmRlbmNpZXMgPSByZWxlYXNlQ29udGV4dC5nZXREZXBlbmRlbmNpZXMoKSxcbiAgICAgICAgZGVwZW5kZW50TmFtZSA9IG5hbWUsICAvLy9cbiAgICAgICAgZGVwZW5kZW50UmVsZWFzZWQgPSByZWxlYXNlZDsgIC8vL1xuXG4gIGRlcGVuZGVudE5hbWVzID0gWyAuLi5kZXBlbmRlbnROYW1lcywgZGVwZW5kZW50TmFtZSBdOyAgLy8vXG5cbiAgY29uc3QgYXJyYXkgPSBkZXBlbmRlbmNpZXMuZ2V0QXJyYXkoKTtcblxuICByZXR1cm4gZXZlcnkoYXJyYXksIChkZXBlbmRlbmN5LCBmb3J3YXJkLCBiYWNrKSA9PiB7XG4gICAgY29uc3QgY3ljbGljRGVwZW5kZW5jeVByZXNlbnQgPSBjaGVja0N5Y2xpY0RlcGVuZGVuY3lQcmVzZW50KGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0KTtcblxuICAgIGlmIChjeWNsaWNEZXBlbmRlbmN5UHJlc2VudCkge1xuICAgICAgcmV0dXJuIGJhY2soKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY3JlYXRlUmVsZWFzZUNvbnRleHQoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIGRlcGVuZGVudFJlbGVhc2VkLCBjb250ZXh0LCAocmVsZWFzZUNvbnRleHRDcmVhdGVkKSA9PiB7XG4gICAgICBpZiAoIXJlbGVhc2VDb250ZXh0Q3JlYXRlZCkge1xuICAgICAgICByZXR1cm4gYmFjaygpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZm9yd2FyZChiYWNrKTtcbiAgICB9LCBmYWlsKTtcbiAgfSwgKCkgPT4gc3VjY2VlZCh0cnVlKSwgKCkgPT4gc3VjY2VlZChmYWxzZSkpO1xufVxuXG5mdW5jdGlvbiBhZGRSZWxlYXNlQ29udGV4dChyZWxlYXNlQ29udGV4dCwgY29udGV4dCkge1xuICBjb25zdCB7IHJlbGVhc2VDb250ZXh0cyB9ID0gY29udGV4dDtcblxuICByZWxlYXNlQ29udGV4dHMucHVzaChyZWxlYXNlQ29udGV4dCk7XG59XG5cbmZ1bmN0aW9uIGZpbmRSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgcmVsZWFzZUNvbnRleHRzIH0gPSBjb250ZXh0LFxuICAgICAgICBkZXBlbmRlbmN5TmFtZSA9IGRlcGVuZGVuY3kuZ2V0TmFtZSgpLFxuICAgICAgICByZWxlYXNlQ29udGV4dCA9IHJlbGVhc2VDb250ZXh0cy5maW5kKChyZWxlYXNlQ29udGV4dCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRlcGVuZGVuY3lOYW1lTWF0Y2hlcyA9IHJlbGVhc2VDb250ZXh0Lm1hdGNoRGVwZW5kZW5jeU5hbWUoZGVwZW5kZW5jeU5hbWUpO1xuXG4gICAgICAgICAgaWYgKGRlcGVuZGVuY3lOYW1lTWF0Y2hlcykge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KSB8fCBudWxsO1xuXG4gIHJldHVybiByZWxlYXNlQ29udGV4dDtcbn1cblxuZnVuY3Rpb24gY2hlY2tSZWxlYXNlUHJlc2VudChyZWxlYXNlQ29udGV4dCwgZGVwZW5kZW5jeU5hbWUsIGNvbnRleHQpIHtcbiAgbGV0IHJlbGVhc2VQcmVzZW50ID0gdHJ1ZTtcblxuICBpZiAocmVsZWFzZUNvbnRleHQgPT09IG51bGwpIHtcbiAgICBjb25zdCB7IGxvZyB9ID0gY29udGV4dDtcblxuICAgIGxvZy53YXJuaW5nKGBUaGUgJyR7ZGVwZW5kZW5jeU5hbWV9JyBwYWNrYWdlIGNvbnRleHQgY291bGQgbm90IGJlIGNyZWF0ZWQuIFBlcmhhcHMgdGhlICdtZXRhLmpzb24nIGZpbGUgaXMgbWlzc2luZyBvciBpbnZhbGlkLmApO1xuXG4gICAgcmVsZWFzZVByZXNlbnQgPSBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiByZWxlYXNlUHJlc2VudDtcbn1cblxuZnVuY3Rpb24gcmV0cmlldmVSZWxlYXNlQ29udGV4dHMocmVsZWFzZUNvbnRleHQsIGNvbnRleHQsIHJlbGVhc2VDb250ZXh0cyA9IFtdKSB7XG4gIGNvbnN0IHJlbGVhc2VDb250ZXh0c0luY2x1ZGVzUmVsZWFzZUNvbnRleHQgPSByZWxlYXNlQ29udGV4dHMuaW5jbHVkZXMocmVsZWFzZUNvbnRleHQpO1xuXG4gIGlmICghcmVsZWFzZUNvbnRleHRzSW5jbHVkZXNSZWxlYXNlQ29udGV4dCkge1xuICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IHJlbGVhc2VDb250ZXh0LmdldERlcGVuZGVuY2llcygpO1xuXG4gICAgZGVwZW5kZW5jaWVzLmZvckVhY2hEZXBlbmRlbmN5KChkZXBlbmRlbmN5KSA9PiB7XG4gICAgICBjb25zdCByZWxlYXNlQ29udGV4dCA9IGZpbmRSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBjb250ZXh0KTtcblxuICAgICAgcmV0cmlldmVSZWxlYXNlQ29udGV4dHMocmVsZWFzZUNvbnRleHQsIGNvbnRleHQsIHJlbGVhc2VDb250ZXh0cyk7XG4gICAgfSk7XG5cbiAgICByZWxlYXNlQ29udGV4dHMudW5zaGlmdChyZWxlYXNlQ29udGV4dCk7XG4gIH1cblxuICByZXR1cm4gcmVsZWFzZUNvbnRleHRzO1xufVxuXG5mdW5jdGlvbiBpbml0aWFsaXNlUmVsZWFzZUNvbnRleHQocmVsZWFzZUNvbnRleHQsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBsb2cgfSA9IGNvbnRleHQsXG4gICAgICAgIG5hbWUgPSByZWxlYXNlQ29udGV4dC5nZXROYW1lKCksXG4gICAgICAgIHJlbGVhc2VOYW1lID0gbmFtZSwgLy8vXG4gICAgICAgIHJlbGVhc2VDb250ZXh0cyA9IHJldHJpZXZlUmVsZWFzZUNvbnRleHRzKHJlbGVhc2VDb250ZXh0LCBjb250ZXh0KTtcblxuICBsb2cuaW5mbyhgSW5pdGlhbGlzaW5nIHRoZSAnJHtyZWxlYXNlTmFtZX0nIHBhY2thZ2UgY29udGV4dC4uLmApO1xuXG4gIGNvbnN0IHsgRmlsZUNvbnRleHRGcm9tRmlsZVBhdGggfSA9IGNvbnRleHQ7XG5cbiAgcmVsZWFzZUNvbnRleHQuaW5pdGlhbGlzZShyZWxlYXNlQ29udGV4dHMsIEZpbGVDb250ZXh0RnJvbUZpbGVQYXRoKTtcblxuICBsb2cuZGVidWcoYC4uLmluaXRpYWxpc2VkIHRoZSAnJHtyZWxlYXNlTmFtZX0nIHBhY2thZ2UgY29udGV4dC5gKTtcbn1cblxuZnVuY3Rpb24gY2hlY2tDeWNsaWNEZXBlbmRlbmN5UHJlc2VudChkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgY29udGV4dCkge1xuICBsZXQgY3ljbGljRGVwZW5kZW5jeVByZXNlbnQgPSBmYWxzZTtcblxuICBjb25zdCBkZXBlbmRlbmN5TmFtZSA9IGRlcGVuZGVuY3kuZ2V0TmFtZSgpLFxuICAgICAgICBpbmRleCA9IGRlcGVuZGVudE5hbWVzLmluZGV4T2YoZGVwZW5kZW5jeU5hbWUpO1xuXG4gIGlmIChpbmRleCA+IC0xKSB7XG4gICAgY29uc3QgeyBsb2cgfSA9IGNvbnRleHQsXG4gICAgICAgICAgY2lyY3VsYXJEZXBlbmRlbnROYW1lcyA9IGRlcGVuZGVudE5hbWVzLnNsaWNlKGluZGV4KSxcbiAgICAgICAgICBjaXJjdWxhckRlcGVuZGVuY3lOYW1lcyA9IFtcbiAgICAgICAgICAgIC4uLmNpcmN1bGFyRGVwZW5kZW50TmFtZXMsXG4gICAgICAgICAgICBkZXBlbmRlbmN5TmFtZVxuICAgICAgICAgIF0sXG4gICAgICAgICAgY2lyY3VsYXJEZXBlbmRlbmN5TmFtZXNTdHJpbmcgPSBjaXJjdWxhckRlcGVuZGVuY3lOYW1lcy5qb2luKFNJTkdMRV9TUEFDRSk7XG5cbiAgICBsb2cud2FybmluZyhgVGhlcmUgaXMgYSBjeWNsaWMgZGVwZW5kZW5jeSwgJyR7Y2lyY3VsYXJEZXBlbmRlbmN5TmFtZXNTdHJpbmd9Jy5gKTtcblxuICAgIGN5Y2xpY0RlcGVuZGVuY3lQcmVzZW50ID0gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBjeWNsaWNEZXBlbmRlbmN5UHJlc2VudDtcbn1cblxuZnVuY3Rpb24gY2hlY2tSZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3kocmVsZWFzZUNvbnRleHQsIGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0KSB7XG4gIGxldCByZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3kgPSB0cnVlO1xuXG4gIGNvbnN0IHNob3J0ZW5lZFZlcnNpb24gPSBkZXBlbmRlbmN5LmdldFNob3J0ZW5lZFZlcnNpb24oKTtcblxuICBpZiAoc2hvcnRlbmVkVmVyc2lvbiAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGVudHJpZXNNYXRjaFNob3J0ZW5lZFZlcnNpb24gPSByZWxlYXNlQ29udGV4dC5tYXRjaFNob3J0ZW5lZFZlcnNpb24oc2hvcnRlbmVkVmVyc2lvbik7XG5cbiAgICBpZiAoIWVudHJpZXNNYXRjaFNob3J0ZW5lZFZlcnNpb24pIHtcbiAgICAgIGNvbnN0IHsgbG9nIH0gPSBjb250ZXh0LFxuICAgICAgICAgICAgdmVyc2lvbiA9IHJlbGVhc2VDb250ZXh0LmdldFZlcnNpb24oKSxcbiAgICAgICAgICAgIGxhc3REZXBlbmRlbnROYW1lID0gbGFzdChkZXBlbmRlbnROYW1lcyksXG4gICAgICAgICAgICBkZXBlbmRlbnROYW1lID0gbGFzdERlcGVuZGVudE5hbWUsICAvLy9cbiAgICAgICAgICAgIHZlcnNpb25TdHJpbmcgPSB2ZXJzaW9uLnRvU3RyaW5nKCksXG4gICAgICAgICAgICBkZXBlbmRlbmN5U3RyaW5nID0gZGVwZW5kZW5jeS5hc1N0cmluZygpO1xuXG4gICAgICBsb2cud2FybmluZyhgVGhlICcke2RlcGVuZGVudE5hbWV9JyBkZXBlbmRlbnQgcmVxdWlyZXMgdGhlICcke2RlcGVuZGVuY3lTdHJpbmd9JyBkZXBlbmRlbmN5IGJ1dCBhIGNvbnRleHQgd2l0aCB2ZXJzaW9uICcke3ZlcnNpb25TdHJpbmd9JyB3YXMgcHJvdmlkZWQuYCk7XG5cbiAgICAgIHJlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeSA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3k7XG59XG5cbmZ1bmN0aW9uIGNoZWNrUHJvamVjdERlcGVuZGVuY3lPZlBhY2thZ2UocmVsZWFzZUNvbnRleHQsIGRlcGVuZGVudFJlbGVhc2VkLCBkZXBlbmRlbnROYW1lcywgY29udGV4dCkge1xuICBsZXQgcHJvamVjdERlcGVuZGVuY3lPZlBhY2thZ2UgPSBmYWxzZTtcblxuICBpZiAoZGVwZW5kZW50UmVsZWFzZWQpIHtcbiAgICBjb25zdCB1bnJlbGVhc2VkID0gcmVsZWFzZUNvbnRleHQuaXNVbnJlbGVhc2VkKCk7XG5cbiAgICBpZiAodW5yZWxlYXNlZCkge1xuICAgICAgY29uc3QgeyBsb2cgfSA9IGNvbnRleHQsXG4gICAgICAgICAgICBuYW1lID0gcmVsZWFzZUNvbnRleHQuZ2V0TmFtZSgpLFxuICAgICAgICAgICAgbGFzdERlcGVuZGVudE5hbWUgPSBsYXN0KGRlcGVuZGVudE5hbWVzKSxcbiAgICAgICAgICAgIGRlcGVuZGVuY3lOYW1lID0gbmFtZSwvLy9cbiAgICAgICAgICAgIGRlcGVuZGVudE5hbWUgPSBsYXN0RGVwZW5kZW50TmFtZTsgIC8vL1xuXG4gICAgICBsb2cud2FybmluZyhgVGhlICcke2RlcGVuZGVuY3lOYW1lfScgZGVwZW5kZW5jeSBpcyBhIHByb2plY3Qgd2hpbHN0IGl0cyAnJHtkZXBlbmRlbnROYW1lfScgZGVwZW5kZW50IGlzIGEgcGFja2FnZS5gKTtcblxuICAgICAgcHJvamVjdERlcGVuZGVuY3lPZlBhY2thZ2UgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBwcm9qZWN0RGVwZW5kZW5jeU9mUGFja2FnZTtcbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGVSZWxlYXNlQ29udGV4dHMiLCJpbml0aWFsaXNlUmVsZWFzZUNvbnRleHRzIiwidmVyaWZ5UmVsZWFzZUNvbnRleHRzIiwibGFzdCIsImFycmF5VXRpbGl0aWVzIiwiZGVwZW5kZW5jeU5hbWUiLCJjb250ZXh0Iiwic3VjY2VlZCIsImZhaWwiLCJuYW1lIiwiZGVwZW5kZW5jeSIsIkRlcGVuZGVuY3kiLCJmcm9tTmFtZSIsImRlcGVuZGVudE5hbWVzIiwiZGVwZW5kZW50UmVsZWFzZWQiLCJjcmVhdGVSZWxlYXNlQ29udGV4dCIsInJlbGVhc2VDb250ZXh0Q3JlYXRlZCIsInJlbGVhc2VDb250ZXh0c0NyZWF0ZWQiLCJyZWxlYXNlQ29udGV4dHMiLCJmb3JFYWNoIiwicmVsZWFzZUNvbnRleHQiLCJpbml0aWFsaXNlUmVsZWFzZUNvbnRleHQiLCJmb3J3YXJkIiwiYmFjayIsImV2ZXJ5IiwidmVyaWZ5UmVsZWFzZUNvbnRleHQiLCJyZWxlYXNlZCIsImlzUmVsZWFzZWQiLCJ2ZXJpZmllZCIsImhhc1ZlcmlmaWVkIiwibG9nIiwiZ2V0TmFtZSIsInJlbGVhc2VOYW1lIiwiaW5mbyIsInZlcmlmeSIsImV4Y2VwdGlvbiIsImZpbmRSZWxlYXNlQ29udGV4dCIsImRlcGVuZGVudE5hbWVzTGVuZ3RoIiwibGVuZ3RoIiwibGFzdERlcGVuZGVudE5hbWUiLCJkZXBlbmRlbnROYW1lIiwiZGVwZW5kZW5jeVN0cmluZyIsImFzU3RyaW5nIiwicmVsZWFzZUNvbnRleHRGcm9tRGVwZW5kZW5jeSIsInJlbGVhdGVQcmVzZW50IiwiY2hlY2tSZWxlYXNlUHJlc2VudCIsInByb2plY3REZXBlbmRlbmN5T2ZQYWNrYWdlIiwiY2hlY2tQcm9qZWN0RGVwZW5kZW5jeU9mUGFja2FnZSIsInJlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeSIsImNoZWNrUmVsZWFzZU1hdGNoZXNEZXBlbmRlbmN5IiwiY3JlYXRlRGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyIsImRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHNDcmVhdGVkIiwiYWRkUmVsZWFzZUNvbnRleHQiLCJkZWJ1ZyIsIndhcm5pbmciLCJkZXBlbmRlbmNpZXMiLCJnZXREZXBlbmRlbmNpZXMiLCJhcnJheSIsImdldEFycmF5IiwiY3ljbGljRGVwZW5kZW5jeVByZXNlbnQiLCJjaGVja0N5Y2xpY0RlcGVuZGVuY3lQcmVzZW50IiwicHVzaCIsImZpbmQiLCJkZXBlbmRlbmN5TmFtZU1hdGNoZXMiLCJtYXRjaERlcGVuZGVuY3lOYW1lIiwicmVsZWFzZVByZXNlbnQiLCJyZXRyaWV2ZVJlbGVhc2VDb250ZXh0cyIsInJlbGVhc2VDb250ZXh0c0luY2x1ZGVzUmVsZWFzZUNvbnRleHQiLCJpbmNsdWRlcyIsImZvckVhY2hEZXBlbmRlbmN5IiwidW5zaGlmdCIsIkZpbGVDb250ZXh0RnJvbUZpbGVQYXRoIiwiaW5pdGlhbGlzZSIsImluZGV4IiwiaW5kZXhPZiIsImNpcmN1bGFyRGVwZW5kZW50TmFtZXMiLCJzbGljZSIsImNpcmN1bGFyRGVwZW5kZW5jeU5hbWVzIiwiY2lyY3VsYXJEZXBlbmRlbmN5TmFtZXNTdHJpbmciLCJqb2luIiwiU0lOR0xFX1NQQUNFIiwic2hvcnRlbmVkVmVyc2lvbiIsImdldFNob3J0ZW5lZFZlcnNpb24iLCJlbnRyaWVzTWF0Y2hTaG9ydGVuZWRWZXJzaW9uIiwibWF0Y2hTaG9ydGVuZWRWZXJzaW9uIiwidmVyc2lvbiIsImdldFZlcnNpb24iLCJ2ZXJzaW9uU3RyaW5nIiwidG9TdHJpbmciLCJ1bnJlbGVhc2VkIiwiaXNVbnJlbGVhc2VkIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFVZ0JBO2VBQUFBOztRQStCaEI7ZUFBQTs7UUFkZ0JDO2VBQUFBOztRQVFBQztlQUFBQTs7OzRCQWpDVzsyQkFDSTs4QkFFUjsyQkFDTTtBQUU3QixNQUFNLEVBQUVDLElBQUksRUFBRSxHQUFHQyx5QkFBYztBQUV4QixTQUFTSixzQkFBc0JLLGNBQWMsRUFBRUMsT0FBTyxFQUFFQyxPQUFPLEVBQUVDLElBQUk7SUFDMUUsTUFBTUMsT0FBT0osZ0JBQ1BLLGFBQWFDLHNCQUFVLENBQUNDLFFBQVEsQ0FBQ0gsT0FDakNJLGlCQUFpQixFQUFFLEVBQ25CQyxvQkFBb0I7SUFFMUIsT0FBT0MscUJBQXFCTCxZQUFZRyxn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
|
package/package.json
CHANGED
package/src/context/file.js
CHANGED
|
@@ -94,17 +94,25 @@ export default class FileContext extends Context {
|
|
|
94
94
|
return back();
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
this.debug(`Verifying the '${this.filePath}' file...`);
|
|
98
|
-
|
|
99
97
|
this.clear();
|
|
100
98
|
|
|
99
|
+
this.debug(`Verifying the '${this.filePath}' file...`);
|
|
100
|
+
|
|
101
101
|
return this.verifyFile((back) => {
|
|
102
102
|
this.complete();
|
|
103
103
|
|
|
104
104
|
this.info(`...verified the '${this.filePath}' file.`);
|
|
105
105
|
|
|
106
106
|
return forward(back);
|
|
107
|
-
},
|
|
107
|
+
}, (exception) => {
|
|
108
|
+
if (exception) {
|
|
109
|
+
return back(exception);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
this.debug(`Unable to verify the '${this.filePath}' file.`);
|
|
113
|
+
|
|
114
|
+
return back();
|
|
115
|
+
});
|
|
108
116
|
}
|
|
109
117
|
|
|
110
118
|
initialise() {
|
|
@@ -63,7 +63,15 @@ function verifyReleaseContext(releaseContext, context, forward, back) {
|
|
|
63
63
|
log.info(`...verified the '${releaseName}' project.`);
|
|
64
64
|
|
|
65
65
|
return forward(context, back);
|
|
66
|
-
},
|
|
66
|
+
}, (exception) => {
|
|
67
|
+
if (exception) {
|
|
68
|
+
return back(exception);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
log.info(`Unable to verify the '${releaseName}' project.`);
|
|
72
|
+
|
|
73
|
+
return back();
|
|
74
|
+
});
|
|
67
75
|
}
|
|
68
76
|
|
|
69
77
|
function createReleaseContext(dependency, dependentNames, dependentReleased, context, succeed, fail) {
|