occam-file-system 5.0.116 → 5.0.118
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/entries.js +2 -2
- package/lib/utilities/fileSystem.js +7 -7
- package/package.json +1 -1
- package/src/entries.js +1 -1
- package/src/utilities/fileSystem.js +8 -6
package/lib/entries.js
CHANGED
|
@@ -58,7 +58,7 @@ var Entries = /*#__PURE__*/ function() {
|
|
|
58
58
|
var firstEntryPath = firstEntry.getPath();
|
|
59
59
|
topmostDirectoryName = topmostDirectoryNameFromPath(firstEntryPath);
|
|
60
60
|
if (topmostDirectoryName === null) {
|
|
61
|
-
topmostDirectoryName = firstEntryPath;
|
|
61
|
+
topmostDirectoryName = firstEntryPath; ///
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
return topmostDirectoryName;
|
|
@@ -241,4 +241,4 @@ Object.assign(Entries.prototype, _pattern.default);
|
|
|
241
241
|
Object.assign(Entries.prototype, _metaJSON.default);
|
|
242
242
|
var _default = Entries;
|
|
243
243
|
|
|
244
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lbnRyaWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBwYXRoVXRpbGl0aWVzLCBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuaW1wb3J0IEZpbGUgZnJvbSBcIi4vZmlsZVwiO1xuaW1wb3J0IEZpbGVzIGZyb20gXCIuL2ZpbGVzXCI7XG5pbXBvcnQgRGlyZWN0b3J5IGZyb20gXCIuL2RpcmVjdG9yeVwiO1xuaW1wb3J0IGJuZk1peGlucyBmcm9tIFwiLi9taXhpbnMvYm5mXCI7XG5pbXBvcnQgZmlsZXNNaXhpbnMgZnJvbSBcIi4vbWl4aW5zL2ZpbGVzXCI7XG5pbXBvcnQgcGF0dGVybk1peGlucyBmcm9tIFwiLi9taXhpbnMvcGF0dGVyblwiO1xuaW1wb3J0IG1ldGFKU09OTWl4aW5zIGZyb20gXCIuL21peGlucy9tZXRhSlNPTlwiO1xuXG5pbXBvcnQgeyBFTlRSSUVTX01BWElNVU1fTEVOR1RIIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBFTlRSSUVTX01BWElNVU1fTEVOR1RIX0VYQ0VFREVEX01FU1NBR0UgfSBmcm9tIFwiLi9tZXNzYWdlc1wiO1xuXG5jb25zdCB7IGZpcnN0LCBmaWx0ZXIgfSA9IGFycmF5VXRpbGl0aWVzLFxuICAgICAgeyB0b3Btb3N0RGlyZWN0b3J5TmFtZUZyb21QYXRoIH0gPSBwYXRoVXRpbGl0aWVzO1xuXG5jbGFzcyBFbnRyaWVzIHtcbiAgY29uc3RydWN0b3IoYXJyYXkpIHtcbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRUb3Btb3N0RGlyZWN0b3J5TmFtZSgpIHtcbiAgICBsZXQgdG9wbW9zdERpcmVjdG9yeU5hbWUgPSBudWxsO1xuICAgIFxuICAgIGNvbnN0IGZpcnN0RW50cnkgPSBmaXJzdCh0aGlzLmFycmF5KTsgLy8vXG5cbiAgICBpZiAoZmlyc3RFbnRyeSkgeyAvLy9cbiAgICAgIGNvbnN0IGZpcnN0RW50cnlQYXRoID0gZmlyc3RFbnRyeS5nZXRQYXRoKCk7XG5cbiAgICAgIHRvcG1vc3REaXJlY3RvcnlOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aChmaXJzdEVudHJ5UGF0aCk7XG5cbiAgICAgIGlmICh0b3Btb3N0RGlyZWN0b3J5TmFtZSA9PT0gbnVsbCkge1xuICAgICAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IGZpcnN0RW50cnlQYXRoO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0b3Btb3N0RGlyZWN0b3J5TmFtZTtcbiAgfVxuXG4gIHJlbW92ZUZpbGVCeVBhdGgocGF0aCkge1xuICAgIGZpbHRlcih0aGlzLmFycmF5LCAoZW50cnkpID0+IHtcbiAgICAgIGNvbnN0IGVudHJ5RmlsZSA9IGVudHJ5LmlzRmlsZSgpO1xuXG4gICAgICBpZiAoZW50cnlGaWxlKSB7XG4gICAgICAgIGNvbnN0IGZpbGUgPSBlbnRyeSwgLy8vXG4gICAgICAgICAgICAgIGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCk7XG5cbiAgICAgICAgaWYgKGZpbGVQYXRoID09PSBwYXRoKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0RmlsZShmaWxlUGF0aCkge1xuICAgIGNvbnN0IGZpbGVzID0gdGhpcy5nZXRGaWxlcygpLFxuICAgICAgICAgIGZpbGUgPSBmaWxlcy5maW5kRmlsZSgoZmlsZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcGF0aCA9IGZpbGUuZ2V0UGF0aCgpO1xuXG4gICAgICAgICAgICBpZiAocGF0aCA9PT0gZmlsZVBhdGgpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSkgfHwgbnVsbDtcblxuICAgIHJldHVybiBmaWxlO1xuICB9XG5cbiAgZ2V0RmlsZXMoKSB7XG4gICAgY29uc3QgZmlsZXMgPSBGaWxlcy5mcm9tTm90aGluZygpO1xuXG4gICAgdGhpcy5tYXBFbnRyeSgoZW50cnkpID0+IHtcbiAgICAgIGNvbnN0IGVudHJ5RmlsZSA9IGVudHJ5LmlzRmlsZSgpO1xuXG4gICAgICBpZiAoZW50cnlGaWxlKSB7XG4gICAgICAgIGNvbnN0IGZpbGUgPSBlbnRyeTsgLy8vXG5cbiAgICAgICAgZmlsZXMuYWRkRmlsZShmaWxlKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBmaWxlcztcbiAgfVxuXG4gIGdldEZpbGVQYXRocygpIHtcbiAgICBjb25zdCBmaWxlUGF0aHMgPSB0aGlzLnJlZHVjZUVudHJ5KChmaWxlUGF0aHMsIGVudHJ5KSA9PiB7XG4gICAgICBjb25zdCBlbnRyeUZpbGUgPSBlbnRyeS5pc0ZpbGUoKTtcblxuICAgICAgaWYgKGVudHJ5RmlsZSkge1xuICAgICAgICBjb25zdCBmaWxlID0gZW50cnksIC8vL1xuICAgICAgICAgICAgICBmaWxlUGF0aCA9IGZpbGUuZ2V0UGF0aCgpO1xuXG4gICAgICAgIGZpbGVQYXRocy5wdXNoKGZpbGVQYXRoKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpbGVQYXRocztcbiAgICB9LCBbXSk7XG5cbiAgICByZXR1cm4gZmlsZVBhdGhzO1xuICB9XG5cbiAgZ2V0RGlyZWN0b3J5UGF0aHMoKSB7XG4gICAgY29uc3QgZGlyZWN0b3J5UGF0aHMgPSB0aGlzLnJlZHVjZUVudHJ5KChkaXJlY3RvcnlQYXRocywgZW50cnkpID0+IHtcbiAgICAgIGNvbnN0IGVudHJ5RGlyZWN0b3J5ID0gZW50cnkuaXNEaXJlY3RvcnkoKTtcblxuICAgICAgaWYgKGVudHJ5RGlyZWN0b3J5KSB7XG4gICAgICAgIGNvbnN0IGRpcmVjdG9yeSA9IGVudHJ5LCAvLy9cbiAgICAgICAgICAgICAgZGlyZWN0b3J5UGF0aCA9IGRpcmVjdG9yeS5nZXRQYXRoKCk7XG5cbiAgICAgICAgZGlyZWN0b3J5UGF0aHMucHVzaChkaXJlY3RvcnlQYXRoKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGRpcmVjdG9yeVBhdGhzO1xuICAgIH0sIFtdKTtcblxuICAgIHJldHVybiBkaXJlY3RvcnlQYXRocztcbiAgfVxuXG4gIG1hdGNoU2hvcnRlbmVkVmVyc2lvbihzaG9ydGVuZWRWZXJzaW9uKSB7XG4gICAgY29uc3QgdmVyc2lvbiA9IHRoaXMuZ2V0VmVyc2lvbigpLFxuICAgICAgICAgIHZlcnNpb25NYXRjaGVzU2hvcnRlbmVkVmVyc2lvbiA9IHZlcnNpb24ubWF0Y2hTaG9ydGVuZWRWZXJzaW9uKHNob3J0ZW5lZFZlcnNpb24pO1xuXG4gICAgcmV0dXJuIHZlcnNpb25NYXRjaGVzU2hvcnRlbmVkVmVyc2lvbjtcbiAgfVxuXG4gIGFkZEZpbGUoZmlsZSkge1xuICAgIGNvbnN0IGVudHJ5ID0gZmlsZTsgLy8vXG5cbiAgICB0aGlzLmFkZEVudHJ5KGVudHJ5KTtcbiAgfVxuXG4gIGFkZEVudHJ5KGVudHJ5KSB7XG4gICAgdGhpcy5hcnJheS5wdXNoKGVudHJ5KTtcblxuICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMuYXJyYXkubGVuZ3RoO1xuXG4gICAgaWYgKGxlbmd0aCA+IEVOVFJJRVNfTUFYSU1VTV9MRU5HVEgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihFTlRSSUVTX01BWElNVU1fTEVOR1RIX0VYQ0VFREVEX01FU1NBR0UpXG4gICAgfVxuICB9XG5cbiAgYWRkRGlyZWN0b3J5KGRpcmVjdG9yeSkge1xuICAgIGNvbnN0IGVudHJ5ID0gZGlyZWN0b3J5OyAgLy8vXG5cbiAgICB0aGlzLmFkZEVudHJ5KGVudHJ5KTtcbiAgfVxuXG4gIG1hcEVudHJ5KGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmFycmF5Lm1hcChjYWxsYmFjayk7IH1cblxuICBzb21lRW50cnkoY2FsbGJhY2spIHsgcmV0dXJuIHRoaXMuYXJyYXkuc29tZShjYWxsYmFjayk7IH1cblxuICBldmVyeUVudHJ5KGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmFycmF5LmV2ZXJ5KGNhbGxiYWNrKTsgfVxuXG4gIGZvckVhY2hFbnRyeShjYWxsYmFjaykgeyB0aGlzLmFycmF5LmZvckVhY2goY2FsbGJhY2spOyB9XG5cbiAgcmVkdWNlRW50cnkoY2FsbGJhY2ssIGluaXRpYWxWYWx1ZSkgeyByZXR1cm4gdGhpcy5hcnJheS5yZWR1Y2UoY2FsbGJhY2ssIGluaXRpYWxWYWx1ZSk7IH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgZW50cmllc0pTT04gPSB0aGlzLmFycmF5Lm1hcCgoZW50cnkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGVudHJ5SlNPTiA9IGVudHJ5LnRvSlNPTigpO1xuICBcbiAgICAgICAgICAgIHJldHVybiBlbnRyeUpTT047XG4gICAgICAgICAgfSksXG4gICAgICAgICAganNvbiA9IGVudHJpZXNKU09OOyAvLy9cblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24pIHtcbiAgICBjb25zdCBhcnJheSA9IFtdLFxuICAgICAgICAgIGVudHJpZXMgPSBuZXcgRW50cmllcyhhcnJheSksXG4gICAgICAgICAgZW50cmllc0pTT04gPSBqc29uOyAvLy9cblxuICAgIGVudHJpZXNKU09OLm1hcCgoZW50cnlKU09OKSA9PiB7XG4gICAgICBjb25zdCBqc29uID0gZW50cnlKU09OLCAvLy9cbiAgICAgICAgICAgIGZpbGUgPSBGaWxlLmZyb21KU09OKGpzb24pLFxuICAgICAgICAgICAgZGlyZWN0b3J5ID0gRGlyZWN0b3J5LmZyb21KU09OKGpzb24pLFxuICAgICAgICAgICAgZW50cnkgPSBmaWxlIHx8IGRpcmVjdG9yeTsgIC8vL1xuXG4gICAgICBlbnRyaWVzLmFkZEVudHJ5KGVudHJ5KTtcbiAgICB9KTtcblxuICAgIHJldHVybiBlbnRyaWVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21FbnRyeShlbnRyeSkge1xuICAgIGNvbnN0IGFycmF5ID0gW1xuICAgICAgICAgICAgZW50cnlcbiAgICAgICAgICBdLFxuICAgICAgICAgIGVudHJpZXMgPSBuZXcgRW50cmllcyhhcnJheSk7XG5cbiAgICByZXR1cm4gZW50cmllcztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHtcbiAgICBjb25zdCBhcnJheSA9IFtdLFxuICAgICAgICAgIGVudHJpZXMgPSBuZXcgRW50cmllcyhhcnJheSk7XG5cbiAgICByZXR1cm4gZW50cmllcztcbiAgfVxufVxuXG5PYmplY3QuYXNzaWduKEVudHJpZXMucHJvdG90eXBlLCBibmZNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihFbnRyaWVzLnByb3RvdHlwZSwgZmlsZXNNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihFbnRyaWVzLnByb3RvdHlwZSwgcGF0dGVybk1peGlucyk7XG5PYmplY3QuYXNzaWduKEVudHJpZXMucHJvdG90eXBlLCBtZXRhSlNPTk1peGlucyk7XG5cbmV4cG9ydCBkZWZhdWx0IEVudHJpZXM7XG4iXSwibmFtZXMiOlsiZmlyc3QiLCJhcnJheVV0aWxpdGllcyIsImZpbHRlciIsInRvcG1vc3REaXJlY3RvcnlOYW1lRnJvbVBhdGgiLCJwYXRoVXRpbGl0aWVzIiwiRW50cmllcyIsImFycmF5IiwiZ2V0VG9wbW9zdERpcmVjdG9yeU5hbWUiLCJ0b3Btb3N0RGlyZWN0b3J5TmFtZSIsImZpcnN0RW50cnkiLCJmaXJzdEVudHJ5UGF0aCIsImdldFBhdGgiLCJyZW1vdmVGaWxlQnlQYXRoIiwicGF0aCIsImVudHJ5IiwiZW50cnlGaWxlIiwiaXNGaWxlIiwiZmlsZSIsImZpbGVQYXRoIiwiZ2V0RmlsZSIsImZpbGVzIiwiZ2V0RmlsZXMiLCJmaW5kRmlsZSIsIkZpbGVzIiwiZnJvbU5vdGhpbmciLCJtYXBFbnRyeSIsImFkZEZpbGUiLCJnZXRGaWxlUGF0aHMiLCJmaWxlUGF0aHMiLCJyZWR1Y2VFbnRyeSIsInB1c2giLCJnZXREaXJlY3RvcnlQYXRocyIsImRpcmVjdG9yeVBhdGhzIiwiZW50cnlEaXJlY3RvcnkiLCJpc0RpcmVjdG9yeSIsImRpcmVjdG9yeSIsImRpcmVjdG9yeVBhdGgiLCJtYXRjaFNob3J0ZW5lZFZlcnNpb24iLCJzaG9ydGVuZWRWZXJzaW9uIiwidmVyc2lvbiIsImdldFZlcnNpb24iLCJ2ZXJzaW9uTWF0Y2hlc1Nob3J0ZW5lZFZlcnNpb24iLCJhZGRFbnRyeSIsImxlbmd0aCIsIkVOVFJJRVNfTUFYSU1VTV9MRU5HVEgiLCJFcnJvciIsIkVOVFJJRVNfTUFYSU1VTV9MRU5HVEhfRVhDRUVERURfTUVTU0FHRSIsImFkZERpcmVjdG9yeSIsImNhbGxiYWNrIiwibWFwIiwic29tZUVudHJ5Iiwic29tZSIsImV2ZXJ5RW50cnkiLCJldmVyeSIsImZvckVhY2hFbnRyeSIsImZvckVhY2giLCJpbml0aWFsVmFsdWUiLCJyZWR1Y2UiLCJ0b0pTT04iLCJlbnRyaWVzSlNPTiIsImVudHJ5SlNPTiIsImpzb24iLCJmcm9tSlNPTiIsImVudHJpZXMiLCJGaWxlIiwiRGlyZWN0b3J5IiwiZnJvbUVudHJ5IiwiT2JqZWN0IiwiYXNzaWduIiwicHJvdG90eXBlIiwiYm5mTWl4aW5zIiwiZmlsZXNNaXhpbnMiLCJwYXR0ZXJuTWl4aW5zIiwibWV0YUpTT05NaXhpbnMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWtOQTs7O2VBQUE7Ozt5QkFoTjhDO3lEQUU3QjswREFDQzs4REFDSTt3REFDQTsyREFDRTs0REFDRTs2REFDQzt5QkFFWTt3QkFDaUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFeEQsSUFBUUEsUUFBa0JDLHlCQUFjLENBQWhDRCxPQUFPRSxTQUFXRCx5QkFBYyxDQUF6QkMsUUFDVCxBQUFFQywrQkFBaUNDLHdCQUFhLENBQTlDRDtBQUVSLElBQUEsQUFBTUUsd0JBMkxILEFBM0xIO2FBQU1BLFFBQ1FDLEtBQUs7OEJBRGJEO1FBRUYsSUFBSSxDQUFDQyxLQUFLLEdBQUdBOztpQkFGWEQ7O1lBS0pFLEtBQUFBO21CQUFBQSxTQUFBQSwwQkFBMEI7Z0JBQ3hCLElBQUlDLHVCQUF1QixJQUFJO2dCQUUvQixJQUFNQyxhQUFhVCxNQUFNLElBQUksQ0FBQ00sS0FBSyxHQUFHLEdBQUc7Z0JBRXpDLElBQUlHLFlBQVk7b0JBQ2QsSUFBTUMsaUJBQWlCRCxXQUFXRSxPQUFPO29CQUV6Q0gsdUJBQXVCTCw2QkFBNkJPO29CQUVwRCxJQUFJRix5QkFBeUIsSUFBSSxFQUFFO3dCQUNqQ0EsdUJBQXVCRTtvQkFDekIsQ0FBQztnQkFDSCxDQUFDO2dCQUVELE9BQU9GO1lBQ1Q7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUEsaUJBQWlCQyxJQUFJLEVBQUU7Z0JBQ3JCWCxPQUFPLElBQUksQ0FBQ0ksS0FBSyxFQUFFLFNBQUNRLE9BQVU7b0JBQzVCLElBQU1DLFlBQVlELE1BQU1FLE1BQU07b0JBRTlCLElBQUlELFdBQVc7d0JBQ2IsSUFBTUUsT0FBT0gsT0FDUEksV0FBV0QsS0FBS04sT0FBTzt3QkFFN0IsSUFBSU8sYUFBYUwsTUFBTTs0QkFDckIsT0FBTyxLQUFLO3dCQUNkLENBQUM7b0JBQ0gsQ0FBQztvQkFFRCxPQUFPLElBQUk7Z0JBQ2I7WUFDRjs7O1lBRUFNLEtBQUFBO21CQUFBQSxTQUFBQSxRQUFRRCxRQUFRLEVBQUU7Z0JBQ2hCLElBQU1FLFFBQVEsSUFBSSxDQUFDQyxRQUFRLElBQ3JCSixPQUFPRyxNQUFNRSxRQUFRLENBQUMsU0FBQ0wsTUFBUztvQkFDOUIsSUFBTUosT0FBT0ksS0FBS04sT0FBTztvQkFFekIsSUFBSUUsU0FBU0ssVUFBVTt3QkFDckIsT0FBTyxJQUFJO29CQUNiLENBQUM7Z0JBQ0gsTUFBTSxJQUFJO2dCQUVoQixPQUFPRDtZQUNUOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVc7Z0JBQ1QsSUFBTUQsUUFBUUcsY0FBSyxDQUFDQyxXQUFXO2dCQUUvQixJQUFJLENBQUNDLFFBQVEsQ0FBQyxTQUFDWCxPQUFVO29CQUN2QixJQUFNQyxZQUFZRCxNQUFNRSxNQUFNO29CQUU5QixJQUFJRCxXQUFXO3dCQUNiLElBQU1FLE9BQU9ILE9BQU8sR0FBRzt3QkFFdkJNLE1BQU1NLE9BQU8sQ0FBQ1Q7b0JBQ2hCLENBQUM7Z0JBQ0g7Z0JBRUEsT0FBT0c7WUFDVDs7O1lBRUFPLEtBQUFBO21CQUFBQSxTQUFBQSxlQUFlO2dCQUNiLElBQU1DLFlBQVksSUFBSSxDQUFDQyxXQUFXLENBQUMsU0FBQ0QsV0FBV2QsT0FBVTtvQkFDdkQsSUFBTUMsWUFBWUQsTUFBTUUsTUFBTTtvQkFFOUIsSUFBSUQsV0FBVzt3QkFDYixJQUFNRSxPQUFPSCxPQUNQSSxXQUFXRCxLQUFLTixPQUFPO3dCQUU3QmlCLFVBQVVFLElBQUksQ0FBQ1o7b0JBQ2pCLENBQUM7b0JBRUQsT0FBT1U7Z0JBQ1QsR0FBRyxFQUFFO2dCQUVMLE9BQU9BO1lBQ1Q7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsb0JBQW9CO2dCQUNsQixJQUFNQyxpQkFBaUIsSUFBSSxDQUFDSCxXQUFXLENBQUMsU0FBQ0csZ0JBQWdCbEIsT0FBVTtvQkFDakUsSUFBTW1CLGlCQUFpQm5CLE1BQU1vQixXQUFXO29CQUV4QyxJQUFJRCxnQkFBZ0I7d0JBQ2xCLElBQU1FLFlBQVlyQixPQUNac0IsZ0JBQWdCRCxVQUFVeEIsT0FBTzt3QkFFdkNxQixlQUFlRixJQUFJLENBQUNNO29CQUN0QixDQUFDO29CQUVELE9BQU9KO2dCQUNULEdBQUcsRUFBRTtnQkFFTCxPQUFPQTtZQUNUOzs7WUFFQUssS0FBQUE7bUJBQUFBLFNBQUFBLHNCQUFzQkMsZ0JBQWdCLEVBQUU7Z0JBQ3RDLElBQU1DLFVBQVUsSUFBSSxDQUFDQyxVQUFVLElBQ3pCQyxpQ0FBaUNGLFFBQVFGLHFCQUFxQixDQUFDQztnQkFFckUsT0FBT0c7WUFDVDs7O1lBRUFmLEtBQUFBO21CQUFBQSxTQUFBQSxRQUFRVCxJQUFJLEVBQUU7Z0JBQ1osSUFBTUgsUUFBUUcsTUFBTSxHQUFHO2dCQUV2QixJQUFJLENBQUN5QixRQUFRLENBQUM1QjtZQUNoQjs7O1lBRUE0QixLQUFBQTttQkFBQUEsU0FBQUEsU0FBUzVCLEtBQUssRUFBRTtnQkFDZCxJQUFJLENBQUNSLEtBQUssQ0FBQ3dCLElBQUksQ0FBQ2hCO2dCQUVoQixJQUFNNkIsU0FBUyxJQUFJLENBQUNyQyxLQUFLLENBQUNxQyxNQUFNO2dCQUVoQyxJQUFJQSxTQUFTQyxpQ0FBc0IsRUFBRTtvQkFDbkMsTUFBTSxJQUFJQyxNQUFNQyxpREFBdUMsRUFBQztnQkFDMUQsQ0FBQztZQUNIOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGFBQWFaLFNBQVMsRUFBRTtnQkFDdEIsSUFBTXJCLFFBQVFxQixXQUFZLEdBQUc7Z0JBRTdCLElBQUksQ0FBQ08sUUFBUSxDQUFDNUI7WUFDaEI7OztZQUVBVyxLQUFBQTttQkFBQUEsU0FBQUEsU0FBU3VCLFFBQVEsRUFBRTtnQkFBRSxPQUFPLElBQUksQ0FBQzFDLEtBQUssQ0FBQzJDLEdBQUcsQ0FBQ0Q7WUFBVzs7O1lBRXRERSxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVUYsUUFBUSxFQUFFO2dCQUFFLE9BQU8sSUFBSSxDQUFDMUMsS0FBSyxDQUFDNkMsSUFBSSxDQUFDSDtZQUFXOzs7WUFFeERJLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXSixRQUFRLEVBQUU7Z0JBQUUsT0FBTyxJQUFJLENBQUMxQyxLQUFLLENBQUMrQyxLQUFLLENBQUNMO1lBQVc7OztZQUUxRE0sS0FBQUE7bUJBQUFBLFNBQUFBLGFBQWFOLFFBQVEsRUFBRTtnQkFBRSxJQUFJLENBQUMxQyxLQUFLLENBQUNpRCxPQUFPLENBQUNQO1lBQVc7OztZQUV2RG5CLEtBQUFBO21CQUFBQSxTQUFBQSxZQUFZbUIsUUFBUSxFQUFFUSxZQUFZLEVBQUU7Z0JBQUUsT0FBTyxJQUFJLENBQUNsRCxLQUFLLENBQUNtRCxNQUFNLENBQUNULFVBQVVRO1lBQWU7OztZQUV4RkUsS0FBQUE7bUJBQUFBLFNBQUFBLFNBQVM7Z0JBQ1AsSUFBTUMsY0FBYyxJQUFJLENBQUNyRCxLQUFLLENBQUMyQyxHQUFHLENBQUMsU0FBQ25DLE9BQVU7b0JBQ3RDLElBQU04QyxZQUFZOUMsTUFBTTRDLE1BQU07b0JBRTlCLE9BQU9FO2dCQUNULElBQ0FDLE9BQU9GLGFBQWEsR0FBRztnQkFFN0IsT0FBT0U7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxTQUFTRCxJQUFJLEVBQUU7Z0JBQ3BCLElBQU12RCxRQUFRLEVBQUUsRUFDVnlELFVBQVUsSUEzSmQxRCxRQTJKMEJDLFFBQ3RCcUQsY0FBY0UsTUFBTSxHQUFHO2dCQUU3QkYsWUFBWVYsR0FBRyxDQUFDLFNBQUNXLFdBQWM7b0JBQzdCLElBQU1DLFNBQU9ELFdBQ1AzQyxPQUFPK0MsYUFBSSxDQUFDRixRQUFRLENBQUNELFNBQ3JCMUIsWUFBWThCLGtCQUFTLENBQUNILFFBQVEsQ0FBQ0QsU0FDL0IvQyxRQUFRRyxRQUFRa0IsV0FBWSxHQUFHO29CQUVyQzRCLFFBQVFyQixRQUFRLENBQUM1QjtnQkFDbkI7Z0JBRUEsT0FBT2lEO1lBQ1Q7OztZQUVPRyxLQUFBQTttQkFBUCxTQUFPQSxVQUFVcEQsS0FBSyxFQUFFO2dCQUN0QixJQUFNUixRQUFRO29CQUNOUTtpQkFDRCxFQUNEaUQsVUFBVSxJQTlLZDFELFFBOEswQkM7Z0JBRTVCLE9BQU95RDtZQUNUOzs7WUFFT3ZDLEtBQUFBO21CQUFQLFNBQU9BLGNBQWM7Z0JBQ25CLElBQU1sQixRQUFRLEVBQUUsRUFDVnlELFVBQVUsSUFyTGQxRCxRQXFMMEJDO2dCQUU1QixPQUFPeUQ7WUFDVDs7O1dBeExJMUQ7O0FBMkxOOEQsT0FBT0MsTUFBTSxDQUFDL0QsUUFBUWdFLFNBQVMsRUFBRUMsWUFBUztBQUMxQ0gsT0FBT0MsTUFBTSxDQUFDL0QsUUFBUWdFLFNBQVMsRUFBRUUsZUFBVztBQUM1Q0osT0FBT0MsTUFBTSxDQUFDL0QsUUFBUWdFLFNBQVMsRUFBRUcsZ0JBQWE7QUFDOUNMLE9BQU9DLE1BQU0sQ0FBQy9ELFFBQVFnRSxTQUFTLEVBQUVJLGlCQUFjO0lBRS9DLFdBQWVwRSJ9
|
|
244
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lbnRyaWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBwYXRoVXRpbGl0aWVzLCBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuaW1wb3J0IEZpbGUgZnJvbSBcIi4vZmlsZVwiO1xuaW1wb3J0IEZpbGVzIGZyb20gXCIuL2ZpbGVzXCI7XG5pbXBvcnQgRGlyZWN0b3J5IGZyb20gXCIuL2RpcmVjdG9yeVwiO1xuaW1wb3J0IGJuZk1peGlucyBmcm9tIFwiLi9taXhpbnMvYm5mXCI7XG5pbXBvcnQgZmlsZXNNaXhpbnMgZnJvbSBcIi4vbWl4aW5zL2ZpbGVzXCI7XG5pbXBvcnQgcGF0dGVybk1peGlucyBmcm9tIFwiLi9taXhpbnMvcGF0dGVyblwiO1xuaW1wb3J0IG1ldGFKU09OTWl4aW5zIGZyb20gXCIuL21peGlucy9tZXRhSlNPTlwiO1xuXG5pbXBvcnQgeyBFTlRSSUVTX01BWElNVU1fTEVOR1RIIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBFTlRSSUVTX01BWElNVU1fTEVOR1RIX0VYQ0VFREVEX01FU1NBR0UgfSBmcm9tIFwiLi9tZXNzYWdlc1wiO1xuXG5jb25zdCB7IGZpcnN0LCBmaWx0ZXIgfSA9IGFycmF5VXRpbGl0aWVzLFxuICAgICAgeyB0b3Btb3N0RGlyZWN0b3J5TmFtZUZyb21QYXRoIH0gPSBwYXRoVXRpbGl0aWVzO1xuXG5jbGFzcyBFbnRyaWVzIHtcbiAgY29uc3RydWN0b3IoYXJyYXkpIHtcbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRUb3Btb3N0RGlyZWN0b3J5TmFtZSgpIHtcbiAgICBsZXQgdG9wbW9zdERpcmVjdG9yeU5hbWUgPSBudWxsO1xuICAgIFxuICAgIGNvbnN0IGZpcnN0RW50cnkgPSBmaXJzdCh0aGlzLmFycmF5KTsgLy8vXG5cbiAgICBpZiAoZmlyc3RFbnRyeSkgeyAvLy9cbiAgICAgIGNvbnN0IGZpcnN0RW50cnlQYXRoID0gZmlyc3RFbnRyeS5nZXRQYXRoKCk7XG5cbiAgICAgIHRvcG1vc3REaXJlY3RvcnlOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aChmaXJzdEVudHJ5UGF0aCk7XG5cbiAgICAgIGlmICh0b3Btb3N0RGlyZWN0b3J5TmFtZSA9PT0gbnVsbCkge1xuICAgICAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IGZpcnN0RW50cnlQYXRoOyAgLy8vXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRvcG1vc3REaXJlY3RvcnlOYW1lO1xuICB9XG5cbiAgcmVtb3ZlRmlsZUJ5UGF0aChwYXRoKSB7XG4gICAgZmlsdGVyKHRoaXMuYXJyYXksIChlbnRyeSkgPT4ge1xuICAgICAgY29uc3QgZW50cnlGaWxlID0gZW50cnkuaXNGaWxlKCk7XG5cbiAgICAgIGlmIChlbnRyeUZpbGUpIHtcbiAgICAgICAgY29uc3QgZmlsZSA9IGVudHJ5LCAvLy9cbiAgICAgICAgICAgICAgZmlsZVBhdGggPSBmaWxlLmdldFBhdGgoKTtcblxuICAgICAgICBpZiAoZmlsZVBhdGggPT09IHBhdGgpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSk7XG4gIH1cblxuICBnZXRGaWxlKGZpbGVQYXRoKSB7XG4gICAgY29uc3QgZmlsZXMgPSB0aGlzLmdldEZpbGVzKCksXG4gICAgICAgICAgZmlsZSA9IGZpbGVzLmZpbmRGaWxlKChmaWxlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwYXRoID0gZmlsZS5nZXRQYXRoKCk7XG5cbiAgICAgICAgICAgIGlmIChwYXRoID09PSBmaWxlUGF0aCkge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIGZpbGU7XG4gIH1cblxuICBnZXRGaWxlcygpIHtcbiAgICBjb25zdCBmaWxlcyA9IEZpbGVzLmZyb21Ob3RoaW5nKCk7XG5cbiAgICB0aGlzLm1hcEVudHJ5KChlbnRyeSkgPT4ge1xuICAgICAgY29uc3QgZW50cnlGaWxlID0gZW50cnkuaXNGaWxlKCk7XG5cbiAgICAgIGlmIChlbnRyeUZpbGUpIHtcbiAgICAgICAgY29uc3QgZmlsZSA9IGVudHJ5OyAvLy9cblxuICAgICAgICBmaWxlcy5hZGRGaWxlKGZpbGUpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGZpbGVzO1xuICB9XG5cbiAgZ2V0RmlsZVBhdGhzKCkge1xuICAgIGNvbnN0IGZpbGVQYXRocyA9IHRoaXMucmVkdWNlRW50cnkoKGZpbGVQYXRocywgZW50cnkpID0+IHtcbiAgICAgIGNvbnN0IGVudHJ5RmlsZSA9IGVudHJ5LmlzRmlsZSgpO1xuXG4gICAgICBpZiAoZW50cnlGaWxlKSB7XG4gICAgICAgIGNvbnN0IGZpbGUgPSBlbnRyeSwgLy8vXG4gICAgICAgICAgICAgIGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCk7XG5cbiAgICAgICAgZmlsZVBhdGhzLnB1c2goZmlsZVBhdGgpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmlsZVBhdGhzO1xuICAgIH0sIFtdKTtcblxuICAgIHJldHVybiBmaWxlUGF0aHM7XG4gIH1cblxuICBnZXREaXJlY3RvcnlQYXRocygpIHtcbiAgICBjb25zdCBkaXJlY3RvcnlQYXRocyA9IHRoaXMucmVkdWNlRW50cnkoKGRpcmVjdG9yeVBhdGhzLCBlbnRyeSkgPT4ge1xuICAgICAgY29uc3QgZW50cnlEaXJlY3RvcnkgPSBlbnRyeS5pc0RpcmVjdG9yeSgpO1xuXG4gICAgICBpZiAoZW50cnlEaXJlY3RvcnkpIHtcbiAgICAgICAgY29uc3QgZGlyZWN0b3J5ID0gZW50cnksIC8vL1xuICAgICAgICAgICAgICBkaXJlY3RvcnlQYXRoID0gZGlyZWN0b3J5LmdldFBhdGgoKTtcblxuICAgICAgICBkaXJlY3RvcnlQYXRocy5wdXNoKGRpcmVjdG9yeVBhdGgpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZGlyZWN0b3J5UGF0aHM7XG4gICAgfSwgW10pO1xuXG4gICAgcmV0dXJuIGRpcmVjdG9yeVBhdGhzO1xuICB9XG5cbiAgbWF0Y2hTaG9ydGVuZWRWZXJzaW9uKHNob3J0ZW5lZFZlcnNpb24pIHtcbiAgICBjb25zdCB2ZXJzaW9uID0gdGhpcy5nZXRWZXJzaW9uKCksXG4gICAgICAgICAgdmVyc2lvbk1hdGNoZXNTaG9ydGVuZWRWZXJzaW9uID0gdmVyc2lvbi5tYXRjaFNob3J0ZW5lZFZlcnNpb24oc2hvcnRlbmVkVmVyc2lvbik7XG5cbiAgICByZXR1cm4gdmVyc2lvbk1hdGNoZXNTaG9ydGVuZWRWZXJzaW9uO1xuICB9XG5cbiAgYWRkRmlsZShmaWxlKSB7XG4gICAgY29uc3QgZW50cnkgPSBmaWxlOyAvLy9cblxuICAgIHRoaXMuYWRkRW50cnkoZW50cnkpO1xuICB9XG5cbiAgYWRkRW50cnkoZW50cnkpIHtcbiAgICB0aGlzLmFycmF5LnB1c2goZW50cnkpO1xuXG4gICAgY29uc3QgbGVuZ3RoID0gdGhpcy5hcnJheS5sZW5ndGg7XG5cbiAgICBpZiAobGVuZ3RoID4gRU5UUklFU19NQVhJTVVNX0xFTkdUSCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEVOVFJJRVNfTUFYSU1VTV9MRU5HVEhfRVhDRUVERURfTUVTU0FHRSlcbiAgICB9XG4gIH1cblxuICBhZGREaXJlY3RvcnkoZGlyZWN0b3J5KSB7XG4gICAgY29uc3QgZW50cnkgPSBkaXJlY3Rvcnk7ICAvLy9cblxuICAgIHRoaXMuYWRkRW50cnkoZW50cnkpO1xuICB9XG5cbiAgbWFwRW50cnkoY2FsbGJhY2spIHsgcmV0dXJuIHRoaXMuYXJyYXkubWFwKGNhbGxiYWNrKTsgfVxuXG4gIHNvbWVFbnRyeShjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5hcnJheS5zb21lKGNhbGxiYWNrKTsgfVxuXG4gIGV2ZXJ5RW50cnkoY2FsbGJhY2spIHsgcmV0dXJuIHRoaXMuYXJyYXkuZXZlcnkoY2FsbGJhY2spOyB9XG5cbiAgZm9yRWFjaEVudHJ5KGNhbGxiYWNrKSB7IHRoaXMuYXJyYXkuZm9yRWFjaChjYWxsYmFjayk7IH1cblxuICByZWR1Y2VFbnRyeShjYWxsYmFjaywgaW5pdGlhbFZhbHVlKSB7IHJldHVybiB0aGlzLmFycmF5LnJlZHVjZShjYWxsYmFjaywgaW5pdGlhbFZhbHVlKTsgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBlbnRyaWVzSlNPTiA9IHRoaXMuYXJyYXkubWFwKChlbnRyeSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZW50cnlKU09OID0gZW50cnkudG9KU09OKCk7XG4gIFxuICAgICAgICAgICAgcmV0dXJuIGVudHJ5SlNPTjtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBqc29uID0gZW50cmllc0pTT047IC8vL1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbikge1xuICAgIGNvbnN0IGFycmF5ID0gW10sXG4gICAgICAgICAgZW50cmllcyA9IG5ldyBFbnRyaWVzKGFycmF5KSxcbiAgICAgICAgICBlbnRyaWVzSlNPTiA9IGpzb247IC8vL1xuXG4gICAgZW50cmllc0pTT04ubWFwKChlbnRyeUpTT04pID0+IHtcbiAgICAgIGNvbnN0IGpzb24gPSBlbnRyeUpTT04sIC8vL1xuICAgICAgICAgICAgZmlsZSA9IEZpbGUuZnJvbUpTT04oanNvbiksXG4gICAgICAgICAgICBkaXJlY3RvcnkgPSBEaXJlY3RvcnkuZnJvbUpTT04oanNvbiksXG4gICAgICAgICAgICBlbnRyeSA9IGZpbGUgfHwgZGlyZWN0b3J5OyAgLy8vXG5cbiAgICAgIGVudHJpZXMuYWRkRW50cnkoZW50cnkpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGVudHJpZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbUVudHJ5KGVudHJ5KSB7XG4gICAgY29uc3QgYXJyYXkgPSBbXG4gICAgICAgICAgICBlbnRyeVxuICAgICAgICAgIF0sXG4gICAgICAgICAgZW50cmllcyA9IG5ldyBFbnRyaWVzKGFycmF5KTtcblxuICAgIHJldHVybiBlbnRyaWVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkge1xuICAgIGNvbnN0IGFycmF5ID0gW10sXG4gICAgICAgICAgZW50cmllcyA9IG5ldyBFbnRyaWVzKGFycmF5KTtcblxuICAgIHJldHVybiBlbnRyaWVzO1xuICB9XG59XG5cbk9iamVjdC5hc3NpZ24oRW50cmllcy5wcm90b3R5cGUsIGJuZk1peGlucyk7XG5PYmplY3QuYXNzaWduKEVudHJpZXMucHJvdG90eXBlLCBmaWxlc01peGlucyk7XG5PYmplY3QuYXNzaWduKEVudHJpZXMucHJvdG90eXBlLCBwYXR0ZXJuTWl4aW5zKTtcbk9iamVjdC5hc3NpZ24oRW50cmllcy5wcm90b3R5cGUsIG1ldGFKU09OTWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgRW50cmllcztcbiJdLCJuYW1lcyI6WyJmaXJzdCIsImFycmF5VXRpbGl0aWVzIiwiZmlsdGVyIiwidG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aCIsInBhdGhVdGlsaXRpZXMiLCJFbnRyaWVzIiwiYXJyYXkiLCJnZXRUb3Btb3N0RGlyZWN0b3J5TmFtZSIsInRvcG1vc3REaXJlY3RvcnlOYW1lIiwiZmlyc3RFbnRyeSIsImZpcnN0RW50cnlQYXRoIiwiZ2V0UGF0aCIsInJlbW92ZUZpbGVCeVBhdGgiLCJwYXRoIiwiZW50cnkiLCJlbnRyeUZpbGUiLCJpc0ZpbGUiLCJmaWxlIiwiZmlsZVBhdGgiLCJnZXRGaWxlIiwiZmlsZXMiLCJnZXRGaWxlcyIsImZpbmRGaWxlIiwiRmlsZXMiLCJmcm9tTm90aGluZyIsIm1hcEVudHJ5IiwiYWRkRmlsZSIsImdldEZpbGVQYXRocyIsImZpbGVQYXRocyIsInJlZHVjZUVudHJ5IiwicHVzaCIsImdldERpcmVjdG9yeVBhdGhzIiwiZGlyZWN0b3J5UGF0aHMiLCJlbnRyeURpcmVjdG9yeSIsImlzRGlyZWN0b3J5IiwiZGlyZWN0b3J5IiwiZGlyZWN0b3J5UGF0aCIsIm1hdGNoU2hvcnRlbmVkVmVyc2lvbiIsInNob3J0ZW5lZFZlcnNpb24iLCJ2ZXJzaW9uIiwiZ2V0VmVyc2lvbiIsInZlcnNpb25NYXRjaGVzU2hvcnRlbmVkVmVyc2lvbiIsImFkZEVudHJ5IiwibGVuZ3RoIiwiRU5UUklFU19NQVhJTVVNX0xFTkdUSCIsIkVycm9yIiwiRU5UUklFU19NQVhJTVVNX0xFTkdUSF9FWENFRURFRF9NRVNTQUdFIiwiYWRkRGlyZWN0b3J5IiwiY2FsbGJhY2siLCJtYXAiLCJzb21lRW50cnkiLCJzb21lIiwiZXZlcnlFbnRyeSIsImV2ZXJ5IiwiZm9yRWFjaEVudHJ5IiwiZm9yRWFjaCIsImluaXRpYWxWYWx1ZSIsInJlZHVjZSIsInRvSlNPTiIsImVudHJpZXNKU09OIiwiZW50cnlKU09OIiwianNvbiIsImZyb21KU09OIiwiZW50cmllcyIsIkZpbGUiLCJEaXJlY3RvcnkiLCJmcm9tRW50cnkiLCJPYmplY3QiLCJhc3NpZ24iLCJwcm90b3R5cGUiLCJibmZNaXhpbnMiLCJmaWxlc01peGlucyIsInBhdHRlcm5NaXhpbnMiLCJtZXRhSlNPTk1peGlucyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBa05BOzs7ZUFBQTs7O3lCQWhOOEM7eURBRTdCOzBEQUNDOzhEQUNJO3dEQUNBOzJEQUNFOzREQUNFOzZEQUNDO3lCQUVZO3dCQUNpQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV4RCxJQUFRQSxRQUFrQkMseUJBQWMsQ0FBaENELE9BQU9FLFNBQVdELHlCQUFjLENBQXpCQyxRQUNULEFBQUVDLCtCQUFpQ0Msd0JBQWEsQ0FBOUNEO0FBRVIsSUFBQSxBQUFNRSx3QkEyTEgsQUEzTEg7YUFBTUEsUUFDUUMsS0FBSzs4QkFEYkQ7UUFFRixJQUFJLENBQUNDLEtBQUssR0FBR0E7O2lCQUZYRDs7WUFLSkUsS0FBQUE7bUJBQUFBLFNBQUFBLDBCQUEwQjtnQkFDeEIsSUFBSUMsdUJBQXVCLElBQUk7Z0JBRS9CLElBQU1DLGFBQWFULE1B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
|
|
@@ -135,9 +135,9 @@ function loadProject(projectName, projectsDirectoryPath, loadOnlyRecognisedFiles
|
|
|
135
135
|
return project;
|
|
136
136
|
}
|
|
137
137
|
function loadReleases(projectsDirectoryPath) {
|
|
138
|
-
var releases = _releases.default.fromNothing(), topmostFileNames = topmostFileNamesFromProjectsDirectoryPath(projectsDirectoryPath);
|
|
139
|
-
|
|
140
|
-
var release = loadRelease(
|
|
138
|
+
var releases = _releases.default.fromNothing(), topmostFileNames = topmostFileNamesFromProjectsDirectoryPath(projectsDirectoryPath), releaseNames = topmostFileNames; ///
|
|
139
|
+
releaseNames.forEach(function(releaseName) {
|
|
140
|
+
var release = loadRelease(releaseName, projectsDirectoryPath);
|
|
141
141
|
if (release !== null) {
|
|
142
142
|
releases.addRelease(release);
|
|
143
143
|
}
|
|
@@ -145,9 +145,9 @@ function loadReleases(projectsDirectoryPath) {
|
|
|
145
145
|
return releases;
|
|
146
146
|
}
|
|
147
147
|
function loadProjects(projectsDirectoryPath, loadOnlyRecognisedFiles) {
|
|
148
|
-
var projects = _projects.default.fromNothing(), topmostDirectoryNames = topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath);
|
|
149
|
-
|
|
150
|
-
var project = loadProject(
|
|
148
|
+
var projects = _projects.default.fromNothing(), topmostDirectoryNames = topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath), projectNames = topmostDirectoryNames; ///
|
|
149
|
+
projectNames.forEach(function(projectName) {
|
|
150
|
+
var project = loadProject(projectName, projectsDirectoryPath, loadOnlyRecognisedFiles);
|
|
151
151
|
if (project !== null) {
|
|
152
152
|
projects.addProject(project);
|
|
153
153
|
}
|
|
@@ -268,4 +268,4 @@ function topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath) {
|
|
|
268
268
|
return topmostDirectoryNames;
|
|
269
269
|
}
|
|
270
270
|
|
|
271
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZVN5c3RlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCBta2RpcnAgZnJvbSBcIm1rZGlycFwiO1xyXG5cclxuaW1wb3J0IHsgYXJyYXlVdGlsaXRpZXMsIHBhdGhVdGlsaXRpZXMsIGZpbGVTeXN0ZW1VdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XHJcblxyXG5pbXBvcnQgRmlsZSBmcm9tIFwiLi4vZmlsZVwiO1xyXG5pbXBvcnQgRmlsZXMgZnJvbSBcIi4uL2ZpbGVzXCI7XHJcbmltcG9ydCBFbnRyaWVzIGZyb20gXCIuLi9lbnRyaWVzXCI7XHJcbmltcG9ydCBQcm9qZWN0IGZyb20gXCIuLi9wcm9qZWN0XCI7XHJcbmltcG9ydCBSZWxlYXNlIGZyb20gXCIuLi9yZWxlYXNlXCI7XHJcbmltcG9ydCBQcm9qZWN0cyBmcm9tIFwiLi4vcHJvamVjdHNcIjtcclxuaW1wb3J0IFJlbGVhc2VzIGZyb20gXCIuLi9yZWxlYXNlc1wiO1xyXG5pbXBvcnQgRGlyZWN0b3J5IGZyb20gXCIuLi9kaXJlY3RvcnlcIjtcclxuXHJcbmltcG9ydCB7IGlzTmFtZUhpZGRlbk5hbWUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL25hbWVcIjtcclxuaW1wb3J0IHsgaXNGaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCB9IGZyb20gXCIuLi91dGlsaXRpZXMvZmlsZVBhdGhcIjtcclxuaW1wb3J0IHsgY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250ZW50XCI7XHJcblxyXG5jb25zdCB7IGZpcnN0IH0gPSBhcnJheVV0aWxpdGllcyxcclxuICAgICAgeyByZWFkRmlsZSwgd3JpdGVGaWxlLCBpc0VudHJ5RmlsZSwgcmVhZERpcmVjdG9yeSwgaXNFbnRyeURpcmVjdG9yeSB9ID0gZmlsZVN5c3RlbVV0aWxpdGllcyxcclxuICAgICAgeyBjb25jYXRlbmF0ZVBhdGhzLCB0b3Btb3N0RGlyZWN0b3J5TmFtZUZyb21QYXRoLCB0b3Btb3N0RGlyZWN0b3J5UGF0aEZyb21QYXRoIH0gPSBwYXRoVXRpbGl0aWVzO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRGaWxlKHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCBmaWxlID0gbnVsbDtcclxuXHJcbiAgdHJ5IHtcclxuICAgIGNvbnN0IHRvcG1vc3REaXJlY3RvcnlOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aChwYXRoKTtcclxuXHJcbiAgICBpZiAodG9wbW9zdERpcmVjdG9yeU5hbWUgIT09IG51bGwpIHtcclxuICAgICAgY29uc3QgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHRvcG1vc3REaXJlY3RvcnlOYW1lKSxcclxuICAgICAgICAgICAgZW50cnlEaXJlY3RvcnkgPSBpc0VudHJ5RGlyZWN0b3J5KGFic29sdXRlUGF0aCk7XHJcblxyXG4gICAgICBmaWxlID0gZW50cnlEaXJlY3RvcnkgP1xyXG4gICAgICAgICAgICAgICBmaWxlRnJvbVByb2plY3QocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSA6XHJcbiAgICAgICAgICAgICAgICAgZmlsZUZyb21SZWxlYXNlKHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcbiAgICB9XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIC8vL1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGU7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzYXZlRmlsZShmaWxlLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCBwYXRoID0gZmlsZS5nZXRQYXRoKCksXHJcbiAgICAgICAgY29udGVudCA9IGZpbGUuZ2V0Q29udGVudCgpLFxyXG4gICAgICAgIGFic29sdXRlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBwYXRoKSxcclxuICAgICAgICB0b3Btb3N0QWJzb2x1dGVEaXJlY3RvcnlQYXRoID0gdG9wbW9zdERpcmVjdG9yeVBhdGhGcm9tUGF0aChhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICBta2RpcnAuc3luYyh0b3Btb3N0QWJzb2x1dGVEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgd3JpdGVGaWxlKGFic29sdXRlUGF0aCwgY29udGVudCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkRmlsZXMocGF0aHMsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCBmaWxlcyA9IG51bGw7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCBwYXRoc0xlbmd0aCA9IHBhdGhzLmxlbmd0aDtcclxuXHJcbiAgICBpZiAocGF0aHNMZW5ndGggPiAwKSB7XHJcbiAgICAgIGNvbnN0IGZpcnN0UGF0aCA9IGZpcnN0KHBhdGhzKSxcclxuICAgICAgICAgICAgcGF0aCA9IGZpcnN0UGF0aCwgLy8vXHJcbiAgICAgICAgICAgIHRvcG1vc3REaXJlY3RvcnlOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aChwYXRoKTtcclxuXHJcbiAgICAgIGlmICh0b3Btb3N0RGlyZWN0b3J5TmFtZSAhPT0gbnVsbCkge1xyXG4gICAgICAgIGNvbnN0IGFic29sdXRlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCB0b3Btb3N0RGlyZWN0b3J5TmFtZSksXHJcbiAgICAgICAgICAgICAgZW50cnlEaXJlY3RvcnkgPSBpc0VudHJ5RGlyZWN0b3J5KGFic29sdXRlUGF0aCk7XHJcblxyXG4gICAgICAgIGZpbGVzID0gZW50cnlEaXJlY3RvcnkgP1xyXG4gICAgICAgICAgICAgICAgICBmaWxlc0Zyb21Qcm9qZWN0KHBhdGhzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIDpcclxuICAgICAgICAgICAgICAgICAgICBmaWxlc0Zyb21SZWxlYXNlKHBhdGhzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIC8vL1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGVzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2F2ZUZpbGVzKGZpbGVzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBmaWxlcy5mb3JFYWNoRmlsZSgoZmlsZSkgPT4ge1xyXG4gICAgc2F2ZUZpbGUoZmlsZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRFbnRyaWVzKHRvcG1vc3REaXJlY3RvcnlOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzKSB7XHJcbiAgY29uc3QgZW50cmllcyA9IEVudHJpZXMuZnJvbU5vdGhpbmcoKSxcclxuICAgICAgICByZWxhdGl2ZURpcmVjdG9yeVBhdGggPSB0b3Btb3N0RGlyZWN0b3J5TmFtZTsgIC8vL1xyXG5cclxuICBlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aChlbnRyaWVzLCByZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpO1xyXG5cclxuICByZXR1cm4gZW50cmllcztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRSZWxlYXNlKHJlbGVhc2VOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgcmVsZWFzZSA9IG51bGw7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCBuYW1lID0gcmVsZWFzZU5hbWUsIC8vL1xyXG4gICAgICAgICAgdG9wbW9zdEZpbGVOYW1lID0gcmVsZWFzZU5hbWUsICAvLy9cclxuICAgICAgICAgIGFic29sdXRlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCB0b3Btb3N0RmlsZU5hbWUpLFxyXG4gICAgICAgICAgZW50cnlGaWxlID0gaXNFbnRyeUZpbGUoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICBpZiAoZW50cnlGaWxlKSB7XHJcbiAgICAgIGxldCBqc29uLFxyXG4gICAgICAgICAgZW50cmllcztcclxuXHJcbiAgICAgIGNvbnN0IGNvbnRlbnQgPSByZWFkRmlsZShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgICAganNvbiA9IEpTT04ucGFyc2UoY29udGVudCk7XHJcblxyXG4gICAgICAoeyBlbnRyaWVzIH0gPSBqc29uKTtcclxuXHJcbiAgICAgIGpzb24gID0gZW50cmllczsgIC8vL1xyXG5cclxuICAgICAgZW50cmllcyA9IEVudHJpZXMuZnJvbUpTT04oanNvbik7XHJcblxyXG4gICAgICByZWxlYXNlID0gUmVsZWFzZS5mcm9tTmFtZUFuZEVudHJpZXMobmFtZSwgZW50cmllcyk7XHJcbiAgICB9XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIC8vL1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlbGVhc2U7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkUHJvamVjdChwcm9qZWN0TmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcykge1xyXG4gIGxldCBwcm9qZWN0ID0gbnVsbDtcclxuXHJcbiAgdHJ5IHtcclxuICAgIGNvbnN0IG5hbWUgPSBwcm9qZWN0TmFtZSwgIC8vL1xyXG4gICAgICAgICAgdG9wbW9zdERpcmVjdG9yeU5hbWUgPSBwcm9qZWN0TmFtZSwgLy8vXHJcbiAgICAgICAgICBlbnRyaWVzID0gbG9hZEVudHJpZXModG9wbW9zdERpcmVjdG9yeU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpO1xyXG5cclxuICAgIHByb2plY3QgPSBQcm9qZWN0LmZyb21OYW1lQW5kRW50cmllcyhuYW1lLCBlbnRyaWVzKTtcclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgLy8vXHJcbiAgfVxyXG5cclxuICByZXR1cm4gcHJvamVjdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRSZWxlYXNlcyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCByZWxlYXNlcyA9IFJlbGVhc2VzLmZyb21Ob3RoaW5nKCksXHJcbiAgICAgICAgdG9wbW9zdEZpbGVOYW1lcyA9IHRvcG1vc3RGaWxlTmFtZXNGcm9tUHJvamVjdHNEaXJlY3RvcnlQYXRoKHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHRvcG1vc3RGaWxlTmFtZXMuZm9yRWFjaCgodG9wbW9zdEZpbGVOYW1lKSA9PiB7XHJcbiAgICBjb25zdCByZWxlYXNlID0gbG9hZFJlbGVhc2UodG9wbW9zdEZpbGVOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgIGlmIChyZWxlYXNlICE9PSBudWxsKSB7XHJcbiAgICAgIHJlbGVhc2VzLmFkZFJlbGVhc2UocmVsZWFzZSk7XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIHJldHVybiByZWxlYXNlcztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRQcm9qZWN0cyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzKSB7XHJcbiAgY29uc3QgcHJvamVjdHMgPSBQcm9qZWN0cy5mcm9tTm90aGluZygpLFxyXG4gICAgICAgIHRvcG1vc3REaXJlY3RvcnlOYW1lcyA9IHRvcG1vc3REaXJlY3RvcnlOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgocHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgdG9wbW9zdERpcmVjdG9yeU5hbWVzLmZvckVhY2goKHRvcG1vc3REaXJlY3RvcnlOYW1lKSA9PiB7XHJcbiAgICBjb25zdCBwcm9qZWN0ID0gbG9hZFByb2plY3QodG9wbW9zdERpcmVjdG9yeU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpO1xyXG5cclxuICAgIGlmIChwcm9qZWN0ICE9PSBudWxsKSB7XHJcbiAgICAgIHByb2plY3RzLmFkZFByb2plY3QocHJvamVjdCk7XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIHJldHVybiBwcm9qZWN0cztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWREaXJlY3RvcnkocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgbGV0IGRpcmVjdG9yeSA9IG51bGw7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcGF0aCksXHJcbiAgICAgICAgICBlbnRyeURpcmVjdG9yeSA9IGlzRW50cnlEaXJlY3RvcnkoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICBpZiAoZW50cnlEaXJlY3RvcnkpIHtcclxuICAgICAgZGlyZWN0b3J5ID0gRGlyZWN0b3J5LmZyb21QYXRoKHBhdGgpO1xyXG4gICAgfVxyXG4gIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAvLy9cclxuICB9XHJcblxyXG4gIHJldHVybiBkaXJlY3Rvcnk7XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBsb2FkRmlsZSxcclxuICBzYXZlRmlsZSxcclxuICBsb2FkRmlsZXMsXHJcbiAgc2F2ZUZpbGVzLFxyXG4gIGxvYWRFbnRyaWVzLFxyXG4gIGxvYWRSZWxlYXNlLFxyXG4gIGxvYWRQcm9qZWN0LFxyXG4gIGxvYWRSZWxlYXNlcyxcclxuICBsb2FkUHJvamVjdHMsXHJcbiAgbG9hZERpcmVjdG9yeVxyXG59O1xyXG5cclxuZnVuY3Rpb24gZmlsZUZyb21Qcm9qZWN0KHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCBmaWxlID0gbnVsbDtcclxuXHJcbiAgY29uc3QgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHBhdGgpLFxyXG4gICAgICAgIGVudHJ5RmlsZSA9IGlzRW50cnlGaWxlKGFic29sdXRlUGF0aCk7XHJcblxyXG4gIGlmIChlbnRyeUZpbGUpIHtcclxuICAgIGxldCBjb250ZW50ID0gcmVhZEZpbGUoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICBjb250ZW50ID0gY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlKGNvbnRlbnQpOyAgLy8vXHJcblxyXG4gICAgZmlsZSA9IEZpbGUuZnJvbVBhdGhBbmRDb250ZW50KHBhdGgsIGNvbnRlbnQpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGU7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZpbGVGcm9tUmVsZWFzZShwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lRnJvbVBhdGgocGF0aCksXHJcbiAgICAgICAgdG9wbW9zdEZpbGVOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWUsIC8vL1xyXG4gICAgICAgIHJlbGVhc2UgPSBsb2FkUmVsZWFzZSh0b3Btb3N0RmlsZU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCksXHJcbiAgICAgICAgZmlsZSA9IHJlbGVhc2UuZ2V0RmlsZShwYXRoKTtcclxuXHJcbiAgcmV0dXJuIGZpbGU7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZpbGVzRnJvbVByb2plY3QocGF0aHMsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGNvbnN0IGZpbGVzID0gRmlsZXMuZnJvbU5vdGhpbmcoKTtcclxuXHJcbiAgcGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xyXG4gICAgY29uc3QgZmlsZSA9IGZpbGVGcm9tUHJvamVjdChwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgIGZpbGVzLmFkZEZpbGUoZmlsZSk7XHJcbiAgfSk7XHJcblxyXG4gIHJldHVybiBmaWxlcztcclxufVxyXG5cclxuZnVuY3Rpb24gZmlsZXNGcm9tUmVsZWFzZShwYXRocywgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgY29uc3QgZmlsZXMgPSBGaWxlcy5mcm9tTm90aGluZygpLFxyXG4gICAgICAgIHBhdGhzTGVuZ3RoID0gcGF0aHMubGVuZ3RoO1xyXG5cclxuICBpZiAocGF0aHNMZW5ndGggPiAwKSB7XHJcbiAgICBjb25zdCBmaXJzdFBhdGggPSBmaXJzdChwYXRocyksXHJcbiAgICAgICAgICBwYXRoID0gZmlyc3RQYXRoLCAvLy9cclxuICAgICAgICAgIHRvcG1vc3REaXJlY3RvcnlOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aChwYXRoKSxcclxuICAgICAgICAgIHRvcG1vc3RGaWxlTmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lLCAvLy9cclxuICAgICAgICAgIHJlbGVhc2UgPSBsb2FkUmVsZWFzZSh0b3Btb3N0RmlsZU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gICAgcGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xyXG4gICAgICBjb25zdCBmaWxlID0gcmVsZWFzZS5nZXRGaWxlKHBhdGgpO1xyXG5cclxuICAgICAgZmlsZXMuYWRkRmlsZShmaWxlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGVzO1xyXG59XHJcblxyXG5mdW5jdGlvbiBlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aChlbnRyaWVzLCByZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpIHtcclxuICBjb25zdCBhYnNvbHV0ZURpcmVjdG9yeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcmVsYXRpdmVEaXJlY3RvcnlQYXRoKSxcclxuICAgICAgICBzdWJFbnRyeU5hbWVzID0gcmVhZERpcmVjdG9yeShhYnNvbHV0ZURpcmVjdG9yeVBhdGgpO1xyXG5cclxuICBzdWJFbnRyeU5hbWVzLmZvckVhY2goKHN1YkVudHJ5TmFtZSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViRW50cnlOYW1lSGlkZGVuTmFtZSA9IGlzTmFtZUhpZGRlbk5hbWUoc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgIGxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzID0gIWxvYWRPbmx5UmVjb2duaXNlZEZpbGVzO1xyXG5cclxuICAgIGlmICghc3ViRW50cnlOYW1lSGlkZGVuTmFtZSkge1xyXG4gICAgICBjb25zdCBwYXRoID0gY29uY2F0ZW5hdGVQYXRocyhyZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICAgIGRpcmVjdG9yeSA9IGxvYWREaXJlY3RvcnkocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICAgIGlmIChkaXJlY3RvcnkgIT09IG51bGwpIHtcclxuICAgICAgICBjb25zdCBkaXJlY3RvcnlQYXRoID0gcGF0aDsgLy8vXHJcblxyXG4gICAgICAgIGlmIChsb2FkVW5yZWNvZ25pc2VkRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gICAgICAgICAgZW50cmllcy5hZGREaXJlY3RvcnkoZGlyZWN0b3J5KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoKGVudHJpZXMsIGRpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpOyAvLy9cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCBmaWxlID0gbG9hZEZpbGUocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICAgICAgaWYgKGZpbGUgIT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCksXHJcbiAgICAgICAgICAgICAgICBmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCA9IGlzRmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGgoZmlsZVBhdGgpLFxyXG4gICAgICAgICAgICAgICAgZmlsZVJlY29nbmlzZWRGaWxlID0gZmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGg7ICAvLy9cclxuXHJcbiAgICAgICAgICBpZiAoZmlsZVJlY29nbmlzZWRGaWxlIHx8IGxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgICAgICAgICAgIGVudHJpZXMuYWRkRmlsZShmaWxlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gdG9wbW9zdEZpbGVOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgocHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgbGV0IHRvcG1vc3RGaWxlTmFtZXM7XHJcblxyXG4gIGNvbnN0IHN1YkVudHJ5TmFtZXMgPSByZWFkRGlyZWN0b3J5KHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHRvcG1vc3RGaWxlTmFtZXMgPSBzdWJFbnRyeU5hbWVzLnJlZHVjZSgodG9wbW9zdEZpbGVOYW1lcywgc3ViRW50cnlOYW1lKSA9PiB7XHJcbiAgICBjb25zdCBhYnNvbHV0ZVN1YkVudHJ5UGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBzdWJFbnRyeU5hbWUpLFxyXG4gICAgICAgICAgc3ViRW50cnlOYW1lSGlkZGVuTmFtZSA9IGlzTmFtZUhpZGRlbk5hbWUoc3ViRW50cnlOYW1lKTtcclxuXHJcbiAgICBpZiAoIXN1YkVudHJ5TmFtZUhpZGRlbk5hbWUpIHtcclxuICAgICAgY29uc3Qgc3ViRW50cnlGaWxlID0gaXNFbnRyeUZpbGUoYWJzb2x1dGVTdWJFbnRyeVBhdGgpO1xyXG5cclxuICAgICAgaWYgKHN1YkVudHJ5RmlsZSkge1xyXG4gICAgICAgIGNvbnN0IHRvcG1vc3RGaWxlTmFtZSA9IHN1YkVudHJ5TmFtZTsgIC8vL1xyXG5cclxuICAgICAgICB0b3Btb3N0RmlsZU5hbWVzLnB1c2godG9wbW9zdEZpbGVOYW1lKVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRvcG1vc3RGaWxlTmFtZXM7XHJcbiAgfSwgW10pO1xyXG5cclxuICByZXR1cm4gdG9wbW9zdEZpbGVOYW1lcztcclxufVxyXG5cclxuZnVuY3Rpb24gdG9wbW9zdERpcmVjdG9yeU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aChwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgdG9wbW9zdERpcmVjdG9yeU5hbWVzO1xyXG5cclxuICBjb25zdCBzdWJFbnRyeU5hbWVzID0gcmVhZERpcmVjdG9yeShwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICB0b3Btb3N0RGlyZWN0b3J5TmFtZXMgPSBzdWJFbnRyeU5hbWVzLnJlZHVjZSgodG9wbW9zdERpcmVjdG9yeU5hbWVzLCBzdWJFbnRyeU5hbWUpID0+IHtcclxuICAgIGNvbnN0IGFic29sdXRlU3ViRW50cnlQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICBzdWJFbnRyeU5hbWVIaWRkZW5OYW1lID0gaXNOYW1lSGlkZGVuTmFtZShzdWJFbnRyeU5hbWUpO1xyXG5cclxuICAgIGlmICghc3ViRW50cnlOYW1lSGlkZGVuTmFtZSkge1xyXG4gICAgICBjb25zdCBzdWJFbnRyeURpcmVjdG9yeSA9IGlzRW50cnlEaXJlY3RvcnkoYWJzb2x1dGVTdWJFbnRyeVBhdGgpO1xyXG5cclxuICAgICAgaWYgKHN1YkVudHJ5RGlyZWN0b3J5KSB7XHJcbiAgICAgICAgY29uc3QgdG9wbW9zdERpcmVjdG9yeU5hbWUgPSBzdWJFbnRyeU5hbWU7ICAvLy9cclxuXHJcbiAgICAgICAgdG9wbW9zdERpcmVjdG9yeU5hbWVzLnB1c2godG9wbW9zdERpcmVjdG9yeU5hbWUpXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdG9wbW9zdERpcmVjdG9yeU5hbWVzO1xyXG4gIH0sIFtdKTtcclxuXHJcbiAgcmV0dXJuIHRvcG1vc3REaXJlY3RvcnlOYW1lcztcclxufVxyXG4iXSwibmFtZXMiOlsibG9hZEZpbGUiLCJzYXZlRmlsZSIsImxvYWRGaWxlcyIsInNhdmVGaWxlcyIsImxvYWRFbnRyaWVzIiwibG9hZFJlbGVhc2UiLCJsb2FkUHJvamVjdCIsImxvYWRSZWxlYXNlcyIsImxvYWRQcm9qZWN0cyIsImxvYWREaXJlY3RvcnkiLCJmaXJzdCIsImFycmF5VXRpbGl0aWVzIiwicmVhZEZpbGUiLCJmaWxlU3lzdGVtVXRpbGl0aWVzIiwid3JpdGVGaWxlIiwiaXNFbnRyeUZpbGUiLCJyZWFkRGlyZWN0b3J5IiwiaXNFbnRyeURpcmVjdG9yeSIsImNvbmNhdGVuYXRlUGF0aHMiLCJwYXRoVXRpbGl0aWVzIiwidG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aCIsInRvcG1vc3REaXJlY3RvcnlQYXRoRnJvbVBhdGgiLCJwYXRoIiwicHJvamVjdHNEaXJlY3RvcnlQYXRoIiwiZmlsZSIsInRvcG1vc3REaXJlY3RvcnlOYW1lIiwiYWJzb2x1dGVQYXRoIiwiZW50cnlEaXJlY3RvcnkiLCJmaWxlRnJvbVByb2plY3QiLCJmaWxlRnJvbVJlbGVhc2UiLCJlcnJvciIsImdldFBhdGgiLCJjb250ZW50IiwiZ2V0Q29udGVudCIsInRvcG1vc3RBYnNvbHV0ZURpcmVjdG9yeVBhdGgiLCJta2RpcnAiLCJzeW5jIiwicGF0aHMiLCJmaWxlcyIsInBhdGhzTGVuZ3RoIiwibGVuZ3RoIiwiZmlyc3RQYXRoIiwiZmlsZXNGcm9tUHJvamVjdCIsImZpbGVzRnJvbVJlbGVhc2UiLCJmb3JFYWNoRmlsZSIsImxvYWRPbmx5UmVjb2duaXNlZEZpbGVzIiwiZW50cmllcyIsIkVudHJpZXMiLCJmcm9tTm90aGluZyIsInJlbGF0aXZlRGlyZWN0b3J5UGF0aCIsImVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoIiwicmVsZWFzZU5hbWUiLCJyZWxlYXNlIiwibmFtZSIsInRvcG1vc3RGaWxlTmFtZSIsImVudHJ5RmlsZSIsImpzb24iLCJKU09OIiwicGFyc2UiLCJmcm9tSlNPTiIsIlJlbGVhc2UiLCJmcm9tTmFtZUFuZEVudHJpZXMiLCJwcm9qZWN0TmFtZSIsInByb2plY3QiLCJQcm9qZWN0IiwicmVsZWFzZXMiLCJSZWxlYXNlcyIsInRvcG1vc3RGaWxlTmFtZXMiLCJ0b3Btb3N0RmlsZU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aCIsImZvckVhY2giLCJhZGRSZWxlYXNlIiwicHJvamVjdHMiLCJQcm9qZWN0cyIsInRvcG1vc3REaXJlY3RvcnlOYW1lcyIsInRvcG1vc3REaXJlY3RvcnlOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgiLCJhZGRQcm9qZWN0IiwiZGlyZWN0b3J5IiwiRGlyZWN0b3J5IiwiZnJvbVBhdGgiLCJjb252ZXJ0Q29udGVudFRhYnNUb1doaXRlc3BhY2UiLCJGaWxlIiwiZnJvbVBhdGhBbmRDb250ZW50IiwiZ2V0RmlsZSIsIkZpbGVzIiwiYWRkRmlsZSIsImFic29sdXRlRGlyZWN0b3J5UGF0aCIsInN1YkVudHJ5TmFtZXMiLCJzdWJFbnRyeU5hbWUiLCJzdWJFbnRyeU5hbWVIaWRkZW5OYW1lIiwiaXNOYW1lSGlkZGVuTmFtZSIsImxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzIiwiZGlyZWN0b3J5UGF0aCIsImFkZERpcmVjdG9yeSIsImZpbGVQYXRoIiwiZmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGgiLCJpc0ZpbGVQYXRoUmVjb2duaXNlZEZpbGVQYXRoIiwiZmlsZVJlY29nbmlzZWRGaWxlIiwicmVkdWNlIiwiYWJzb2x1dGVTdWJFbnRyeVBhdGgiLCJzdWJFbnRy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
|
|
271
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZVN5c3RlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCBta2RpcnAgZnJvbSBcIm1rZGlycFwiO1xyXG5cclxuaW1wb3J0IHsgYXJyYXlVdGlsaXRpZXMsIHBhdGhVdGlsaXRpZXMsIGZpbGVTeXN0ZW1VdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XHJcblxyXG5pbXBvcnQgRmlsZSBmcm9tIFwiLi4vZmlsZVwiO1xyXG5pbXBvcnQgRmlsZXMgZnJvbSBcIi4uL2ZpbGVzXCI7XHJcbmltcG9ydCBFbnRyaWVzIGZyb20gXCIuLi9lbnRyaWVzXCI7XHJcbmltcG9ydCBQcm9qZWN0IGZyb20gXCIuLi9wcm9qZWN0XCI7XHJcbmltcG9ydCBSZWxlYXNlIGZyb20gXCIuLi9yZWxlYXNlXCI7XHJcbmltcG9ydCBQcm9qZWN0cyBmcm9tIFwiLi4vcHJvamVjdHNcIjtcclxuaW1wb3J0IFJlbGVhc2VzIGZyb20gXCIuLi9yZWxlYXNlc1wiO1xyXG5pbXBvcnQgRGlyZWN0b3J5IGZyb20gXCIuLi9kaXJlY3RvcnlcIjtcclxuXHJcbmltcG9ydCB7IGlzTmFtZUhpZGRlbk5hbWUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL25hbWVcIjtcclxuaW1wb3J0IHsgaXNGaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCB9IGZyb20gXCIuLi91dGlsaXRpZXMvZmlsZVBhdGhcIjtcclxuaW1wb3J0IHsgY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250ZW50XCI7XHJcblxyXG5jb25zdCB7IGZpcnN0IH0gPSBhcnJheVV0aWxpdGllcyxcclxuICAgICAgeyByZWFkRmlsZSwgd3JpdGVGaWxlLCBpc0VudHJ5RmlsZSwgcmVhZERpcmVjdG9yeSwgaXNFbnRyeURpcmVjdG9yeSB9ID0gZmlsZVN5c3RlbVV0aWxpdGllcyxcclxuICAgICAgeyBjb25jYXRlbmF0ZVBhdGhzLCB0b3Btb3N0RGlyZWN0b3J5TmFtZUZyb21QYXRoLCB0b3Btb3N0RGlyZWN0b3J5UGF0aEZyb21QYXRoIH0gPSBwYXRoVXRpbGl0aWVzO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRGaWxlKHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCBmaWxlID0gbnVsbDtcclxuXHJcbiAgdHJ5IHtcclxuICAgIGNvbnN0IHRvcG1vc3REaXJlY3RvcnlOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aChwYXRoKTtcclxuXHJcbiAgICBpZiAodG9wbW9zdERpcmVjdG9yeU5hbWUgIT09IG51bGwpIHtcclxuICAgICAgY29uc3QgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHRvcG1vc3REaXJlY3RvcnlOYW1lKSxcclxuICAgICAgICAgICAgZW50cnlEaXJlY3RvcnkgPSBpc0VudHJ5RGlyZWN0b3J5KGFic29sdXRlUGF0aCk7XHJcblxyXG4gICAgICBmaWxlID0gZW50cnlEaXJlY3RvcnkgP1xyXG4gICAgICAgICAgICAgICBmaWxlRnJvbVByb2plY3QocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSA6XHJcbiAgICAgICAgICAgICAgICAgZmlsZUZyb21SZWxlYXNlKHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcbiAgICB9XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIC8vL1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGU7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzYXZlRmlsZShmaWxlLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCBwYXRoID0gZmlsZS5nZXRQYXRoKCksXHJcbiAgICAgICAgY29udGVudCA9IGZpbGUuZ2V0Q29udGVudCgpLFxyXG4gICAgICAgIGFic29sdXRlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBwYXRoKSxcclxuICAgICAgICB0b3Btb3N0QWJzb2x1dGVEaXJlY3RvcnlQYXRoID0gdG9wbW9zdERpcmVjdG9yeVBhdGhGcm9tUGF0aChhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICBta2RpcnAuc3luYyh0b3Btb3N0QWJzb2x1dGVEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgd3JpdGVGaWxlKGFic29sdXRlUGF0aCwgY29udGVudCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkRmlsZXMocGF0aHMsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCBmaWxlcyA9IG51bGw7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCBwYXRoc0xlbmd0aCA9IHBhdGhzLmxlbmd0aDtcclxuXHJcbiAgICBpZiAocGF0aHNMZW5ndGggPiAwKSB7XHJcbiAgICAgIGNvbnN0IGZpcnN0UGF0aCA9IGZpcnN0KHBhdGhzKSxcclxuICAgICAgICAgICAgcGF0aCA9IGZpcnN0UGF0aCwgLy8vXHJcbiAgICAgICAgICAgIHRvcG1vc3REaXJlY3RvcnlOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aChwYXRoKTtcclxuXHJcbiAgICAgIGlmICh0b3Btb3N0RGlyZWN0b3J5TmFtZSAhPT0gbnVsbCkge1xyXG4gICAgICAgIGNvbnN0IGFic29sdXRlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCB0b3Btb3N0RGlyZWN0b3J5TmFtZSksXHJcbiAgICAgICAgICAgICAgZW50cnlEaXJlY3RvcnkgPSBpc0VudHJ5RGlyZWN0b3J5KGFic29sdXRlUGF0aCk7XHJcblxyXG4gICAgICAgIGZpbGVzID0gZW50cnlEaXJlY3RvcnkgP1xyXG4gICAgICAgICAgICAgICAgICBmaWxlc0Zyb21Qcm9qZWN0KHBhdGhzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIDpcclxuICAgICAgICAgICAgICAgICAgICBmaWxlc0Zyb21SZWxlYXNlKHBhdGhzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIC8vL1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGVzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2F2ZUZpbGVzKGZpbGVzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBmaWxlcy5mb3JFYWNoRmlsZSgoZmlsZSkgPT4ge1xyXG4gICAgc2F2ZUZpbGUoZmlsZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRFbnRyaWVzKHRvcG1vc3REaXJlY3RvcnlOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzKSB7XHJcbiAgY29uc3QgZW50cmllcyA9IEVudHJpZXMuZnJvbU5vdGhpbmcoKSxcclxuICAgICAgICByZWxhdGl2ZURpcmVjdG9yeVBhdGggPSB0b3Btb3N0RGlyZWN0b3J5TmFtZTsgIC8vL1xyXG5cclxuICBlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aChlbnRyaWVzLCByZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpO1xyXG5cclxuICByZXR1cm4gZW50cmllcztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRSZWxlYXNlKHJlbGVhc2VOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgcmVsZWFzZSA9IG51bGw7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCBuYW1lID0gcmVsZWFzZU5hbWUsIC8vL1xyXG4gICAgICAgICAgdG9wbW9zdEZpbGVOYW1lID0gcmVsZWFzZU5hbWUsICAvLy9cclxuICAgICAgICAgIGFic29sdXRlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCB0b3Btb3N0RmlsZU5hbWUpLFxyXG4gICAgICAgICAgZW50cnlGaWxlID0gaXNFbnRyeUZpbGUoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICBpZiAoZW50cnlGaWxlKSB7XHJcbiAgICAgIGxldCBqc29uLFxyXG4gICAgICAgICAgZW50cmllcztcclxuXHJcbiAgICAgIGNvbnN0IGNvbnRlbnQgPSByZWFkRmlsZShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgICAganNvbiA9IEpTT04ucGFyc2UoY29udGVudCk7XHJcblxyXG4gICAgICAoeyBlbnRyaWVzIH0gPSBqc29uKTtcclxuXHJcbiAgICAgIGpzb24gID0gZW50cmllczsgIC8vL1xyXG5cclxuICAgICAgZW50cmllcyA9IEVudHJpZXMuZnJvbUpTT04oanNvbik7XHJcblxyXG4gICAgICByZWxlYXNlID0gUmVsZWFzZS5mcm9tTmFtZUFuZEVudHJpZXMobmFtZSwgZW50cmllcyk7XHJcbiAgICB9XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIC8vL1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlbGVhc2U7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkUHJvamVjdChwcm9qZWN0TmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcykge1xyXG4gIGxldCBwcm9qZWN0ID0gbnVsbDtcclxuXHJcbiAgdHJ5IHtcclxuICAgIGNvbnN0IG5hbWUgPSBwcm9qZWN0TmFtZSwgIC8vL1xyXG4gICAgICAgICAgdG9wbW9zdERpcmVjdG9yeU5hbWUgPSBwcm9qZWN0TmFtZSwgLy8vXHJcbiAgICAgICAgICBlbnRyaWVzID0gbG9hZEVudHJpZXModG9wbW9zdERpcmVjdG9yeU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpO1xyXG5cclxuICAgIHByb2plY3QgPSBQcm9qZWN0LmZyb21OYW1lQW5kRW50cmllcyhuYW1lLCBlbnRyaWVzKTtcclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgLy8vXHJcbiAgfVxyXG5cclxuICByZXR1cm4gcHJvamVjdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRSZWxlYXNlcyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCByZWxlYXNlcyA9IFJlbGVhc2VzLmZyb21Ob3RoaW5nKCksXHJcbiAgICAgICAgdG9wbW9zdEZpbGVOYW1lcyA9IHRvcG1vc3RGaWxlTmFtZXNGcm9tUHJvamVjdHNEaXJlY3RvcnlQYXRoKHByb2plY3RzRGlyZWN0b3J5UGF0aCksXHJcbiAgICAgICAgcmVsZWFzZU5hbWVzID0gdG9wbW9zdEZpbGVOYW1lczsgIC8vL1xyXG5cclxuICByZWxlYXNlTmFtZXMuZm9yRWFjaCgocmVsZWFzZU5hbWUpID0+IHtcclxuICAgIGNvbnN0IHJlbGVhc2UgPSBsb2FkUmVsZWFzZShyZWxlYXNlTmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICBpZiAocmVsZWFzZSAhPT0gbnVsbCkge1xyXG4gICAgICByZWxlYXNlcy5hZGRSZWxlYXNlKHJlbGVhc2UpO1xyXG4gICAgfVxyXG4gIH0pO1xyXG5cclxuICByZXR1cm4gcmVsZWFzZXM7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkUHJvamVjdHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcykge1xyXG4gIGNvbnN0IHByb2plY3RzID0gUHJvamVjdHMuZnJvbU5vdGhpbmcoKSxcclxuICAgICAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZXMgPSB0b3Btb3N0RGlyZWN0b3J5TmFtZXNGcm9tUHJvamVjdHNEaXJlY3RvcnlQYXRoKHByb2plY3RzRGlyZWN0b3J5UGF0aCksXHJcbiAgICAgICAgcHJvamVjdE5hbWVzID0gdG9wbW9zdERpcmVjdG9yeU5hbWVzOyAvLy9cclxuXHJcbiAgcHJvamVjdE5hbWVzLmZvckVhY2goKHByb2plY3ROYW1lKSA9PiB7XHJcbiAgICBjb25zdCBwcm9qZWN0ID0gbG9hZFByb2plY3QocHJvamVjdE5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpO1xyXG5cclxuICAgIGlmIChwcm9qZWN0ICE9PSBudWxsKSB7XHJcbiAgICAgIHByb2plY3RzLmFkZFByb2plY3QocHJvamVjdCk7XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIHJldHVybiBwcm9qZWN0cztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWREaXJlY3RvcnkocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgbGV0IGRpcmVjdG9yeSA9IG51bGw7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcGF0aCksXHJcbiAgICAgICAgICBlbnRyeURpcmVjdG9yeSA9IGlzRW50cnlEaXJlY3RvcnkoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICBpZiAoZW50cnlEaXJlY3RvcnkpIHtcclxuICAgICAgZGlyZWN0b3J5ID0gRGlyZWN0b3J5LmZyb21QYXRoKHBhdGgpO1xyXG4gICAgfVxyXG4gIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAvLy9cclxuICB9XHJcblxyXG4gIHJldHVybiBkaXJlY3Rvcnk7XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBsb2FkRmlsZSxcclxuICBzYXZlRmlsZSxcclxuICBsb2FkRmlsZXMsXHJcbiAgc2F2ZUZpbGVzLFxyXG4gIGxvYWRFbnRyaWVzLFxyXG4gIGxvYWRSZWxlYXNlLFxyXG4gIGxvYWRQcm9qZWN0LFxyXG4gIGxvYWRSZWxlYXNlcyxcclxuICBsb2FkUHJvamVjdHMsXHJcbiAgbG9hZERpcmVjdG9yeVxyXG59O1xyXG5cclxuZnVuY3Rpb24gZmlsZUZyb21Qcm9qZWN0KHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCBmaWxlID0gbnVsbDtcclxuXHJcbiAgY29uc3QgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHBhdGgpLFxyXG4gICAgICAgIGVudHJ5RmlsZSA9IGlzRW50cnlGaWxlKGFic29sdXRlUGF0aCk7XHJcblxyXG4gIGlmIChlbnRyeUZpbGUpIHtcclxuICAgIGxldCBjb250ZW50ID0gcmVhZEZpbGUoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICBjb250ZW50ID0gY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlKGNvbnRlbnQpOyAgLy8vXHJcblxyXG4gICAgZmlsZSA9IEZpbGUuZnJvbVBhdGhBbmRDb250ZW50KHBhdGgsIGNvbnRlbnQpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGU7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZpbGVGcm9tUmVsZWFzZShwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lRnJvbVBhdGgocGF0aCksXHJcbiAgICAgICAgdG9wbW9zdEZpbGVOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWUsIC8vL1xyXG4gICAgICAgIHJlbGVhc2UgPSBsb2FkUmVsZWFzZSh0b3Btb3N0RmlsZU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCksXHJcbiAgICAgICAgZmlsZSA9IHJlbGVhc2UuZ2V0RmlsZShwYXRoKTtcclxuXHJcbiAgcmV0dXJuIGZpbGU7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZpbGVzRnJvbVByb2plY3QocGF0aHMsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGNvbnN0IGZpbGVzID0gRmlsZXMuZnJvbU5vdGhpbmcoKTtcclxuXHJcbiAgcGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xyXG4gICAgY29uc3QgZmlsZSA9IGZpbGVGcm9tUHJvamVjdChwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgIGZpbGVzLmFkZEZpbGUoZmlsZSk7XHJcbiAgfSk7XHJcblxyXG4gIHJldHVybiBmaWxlcztcclxufVxyXG5cclxuZnVuY3Rpb24gZmlsZXNGcm9tUmVsZWFzZShwYXRocywgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgY29uc3QgZmlsZXMgPSBGaWxlcy5mcm9tTm90aGluZygpLFxyXG4gICAgICAgIHBhdGhzTGVuZ3RoID0gcGF0aHMubGVuZ3RoO1xyXG5cclxuICBpZiAocGF0aHNMZW5ndGggPiAwKSB7XHJcbiAgICBjb25zdCBmaXJzdFBhdGggPSBmaXJzdChwYXRocyksXHJcbiAgICAgICAgICBwYXRoID0gZmlyc3RQYXRoLCAvLy9cclxuICAgICAgICAgIHRvcG1vc3REaXJlY3RvcnlOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aChwYXRoKSxcclxuICAgICAgICAgIHRvcG1vc3RGaWxlTmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lLCAvLy9cclxuICAgICAgICAgIHJlbGVhc2UgPSBsb2FkUmVsZWFzZSh0b3Btb3N0RmlsZU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gICAgcGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xyXG4gICAgICBjb25zdCBmaWxlID0gcmVsZWFzZS5nZXRGaWxlKHBhdGgpO1xyXG5cclxuICAgICAgZmlsZXMuYWRkRmlsZShmaWxlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGVzO1xyXG59XHJcblxyXG5mdW5jdGlvbiBlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aChlbnRyaWVzLCByZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpIHtcclxuICBjb25zdCBhYnNvbHV0ZURpcmVjdG9yeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcmVsYXRpdmVEaXJlY3RvcnlQYXRoKSxcclxuICAgICAgICBzdWJFbnRyeU5hbWVzID0gcmVhZERpcmVjdG9yeShhYnNvbHV0ZURpcmVjdG9yeVBhdGgpO1xyXG5cclxuICBzdWJFbnRyeU5hbWVzLmZvckVhY2goKHN1YkVudHJ5TmFtZSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViRW50cnlOYW1lSGlkZGVuTmFtZSA9IGlzTmFtZUhpZGRlbk5hbWUoc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgIGxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzID0gIWxvYWRPbmx5UmVjb2duaXNlZEZpbGVzO1xyXG5cclxuICAgIGlmICghc3ViRW50cnlOYW1lSGlkZGVuTmFtZSkge1xyXG4gICAgICBjb25zdCBwYXRoID0gY29uY2F0ZW5hdGVQYXRocyhyZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICAgIGRpcmVjdG9yeSA9IGxvYWREaXJlY3RvcnkocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICAgIGlmIChkaXJlY3RvcnkgIT09IG51bGwpIHtcclxuICAgICAgICBjb25zdCBkaXJlY3RvcnlQYXRoID0gcGF0aDsgLy8vXHJcblxyXG4gICAgICAgIGlmIChsb2FkVW5yZWNvZ25pc2VkRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gICAgICAgICAgZW50cmllcy5hZGREaXJlY3RvcnkoZGlyZWN0b3J5KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoKGVudHJpZXMsIGRpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpOyAvLy9cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCBmaWxlID0gbG9hZEZpbGUocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICAgICAgaWYgKGZpbGUgIT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCksXHJcbiAgICAgICAgICAgICAgICBmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCA9IGlzRmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGgoZmlsZVBhdGgpLFxyXG4gICAgICAgICAgICAgICAgZmlsZVJlY29nbmlzZWRGaWxlID0gZmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGg7ICAvLy9cclxuXHJcbiAgICAgICAgICBpZiAoZmlsZVJlY29nbmlzZWRGaWxlIHx8IGxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgICAgICAgICAgIGVudHJpZXMuYWRkRmlsZShmaWxlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gdG9wbW9zdEZpbGVOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgocHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgbGV0IHRvcG1vc3RGaWxlTmFtZXM7XHJcblxyXG4gIGNvbnN0IHN1YkVudHJ5TmFtZXMgPSByZWFkRGlyZWN0b3J5KHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHRvcG1vc3RGaWxlTmFtZXMgPSBzdWJFbnRyeU5hbWVzLnJlZHVjZSgodG9wbW9zdEZpbGVOYW1lcywgc3ViRW50cnlOYW1lKSA9PiB7XHJcbiAgICBjb25zdCBhYnNvbHV0ZVN1YkVudHJ5UGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBzdWJFbnRyeU5hbWUpLFxyXG4gICAgICAgICAgc3ViRW50cnlOYW1lSGlkZGVuTmFtZSA9IGlzTmFtZUhpZGRlbk5hbWUoc3ViRW50cnlOYW1lKTtcclxuXHJcbiAgICBpZiAoIXN1YkVudHJ5TmFtZUhpZGRlbk5hbWUpIHtcclxuICAgICAgY29uc3Qgc3ViRW50cnlGaWxlID0gaXNFbnRyeUZpbGUoYWJzb2x1dGVTdWJFbnRyeVBhdGgpO1xyXG5cclxuICAgICAgaWYgKHN1YkVudHJ5RmlsZSkge1xyXG4gICAgICAgIGNvbnN0IHRvcG1vc3RGaWxlTmFtZSA9IHN1YkVudHJ5TmFtZTsgIC8vL1xyXG5cclxuICAgICAgICB0b3Btb3N0RmlsZU5hbWVzLnB1c2godG9wbW9zdEZpbGVOYW1lKVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRvcG1vc3RGaWxlTmFtZXM7XHJcbiAgfSwgW10pO1xyXG5cclxuICByZXR1cm4gdG9wbW9zdEZpbGVOYW1lcztcclxufVxyXG5cclxuZnVuY3Rpb24gdG9wbW9zdERpcmVjdG9yeU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aChwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgdG9wbW9zdERpcmVjdG9yeU5hbWVzO1xyXG5cclxuICBjb25zdCBzdWJFbnRyeU5hbWVzID0gcmVhZERpcmVjdG9yeShwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICB0b3Btb3N0RGlyZWN0b3J5TmFtZXMgPSBzdWJFbnRyeU5hbWVzLnJlZHVjZSgodG9wbW9zdERpcmVjdG9yeU5hbWVzLCBzdWJFbnRyeU5hbWUpID0+IHtcclxuICAgIGNvbnN0IGFic29sdXRlU3ViRW50cnlQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICBzdWJFbnRyeU5hbWVIaWRkZW5OYW1lID0gaXNOYW1lSGlkZGVuTmFtZShzdWJFbnRyeU5hbWUpO1xyXG5cclxuICAgIGlmICghc3ViRW50cnlOYW1lSGlkZGVuTmFtZSkge1xyXG4gICAgICBjb25zdCBzdWJFbnRyeURpcmVjdG9yeSA9IGlzRW50cnlEaXJlY3RvcnkoYWJzb2x1dGVTdWJFbnRyeVBhdGgpO1xyXG5cclxuICAgICAgaWYgKHN1YkVudHJ5RGlyZWN0b3J5KSB7XHJcbiAgICAgICAgY29uc3QgdG9wbW9zdERpcmVjdG9yeU5hbWUgPSBzdWJFbnRyeU5hbWU7ICAvLy9cclxuXHJcbiAgICAgICAgdG9wbW9zdERpcmVjdG9yeU5hbWVzLnB1c2godG9wbW9zdERpcmVjdG9yeU5hbWUpXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdG9wbW9zdERpcmVjdG9yeU5hbWVzO1xyXG4gIH0sIFtdKTtcclxuXHJcbiAgcmV0dXJuIHRvcG1vc3REaXJlY3RvcnlOYW1lcztcclxufVxyXG4iXSwibmFtZXMiOlsibG9hZEZpbGUiLCJzYXZlRmlsZSIsImxvYWRGaWxlcyIsInNhdmVGaWxlcyIsImxvYWRFbnRyaWVzIiwibG9hZFJlbGVhc2UiLCJsb2FkUHJvamVjdCIsImxvYWRSZWxlYXNlcyIsImxvYWRQcm9qZWN0cyIsImxvYWREaXJlY3RvcnkiLCJmaXJzdCIsImFycmF5VXRpbGl0aWVzIiwicmVhZEZpbGUiLCJmaWxlU3lzdGVtVXRpbGl0aWVzIiwid3JpdGVGaWxlIiwiaXNFbnRyeUZpbGUiLCJyZWFkRGlyZWN0b3J5IiwiaXNFbnRyeURpcmVjdG9yeSIsImNvbmNhdGVuYXRlUGF0aHMiLCJwYXRoVXRpbGl0aWVzIiwidG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aCIsInRvcG1vc3REaXJlY3RvcnlQYXRoRnJvbVBhdGgiLCJwYXRoIiwicHJvamVjdHNEaXJlY3RvcnlQYXRoIiwiZmlsZSIsInRvcG1vc3REaXJlY3RvcnlOYW1lIiwiYWJzb2x1dGVQYXRoIiwiZW50cnlEaXJlY3RvcnkiLCJmaWxlRnJvbVByb2plY3QiLCJmaWxlRnJvbVJlbGVhc2UiLCJlcnJvciIsImdldFBhdGgiLCJjb250ZW50IiwiZ2V0Q29udGVudCIsInRvcG1vc3RBYnNvbHV0ZURpcmVjdG9yeVBhdGgiLCJta2RpcnAiLCJzeW5jIiwicGF0aHMiLCJmaWxlcyIsInBhdGhzTGVuZ3RoIiwibGVuZ3RoIiwiZmlyc3RQYXRoIiwiZmlsZXNGcm9tUHJvamVjdCIsImZpbGVzRnJvbVJlbGVhc2UiLCJmb3JFYWNoRmlsZSIsImxvYWRPbmx5UmVjb2duaXNlZEZpbGVzIiwiZW50cmllcyIsIkVudHJpZXMiLCJmcm9tTm90aGluZyIsInJlbGF0aXZlRGlyZWN0b3J5UGF0aCIsImVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoIiwicmVsZWFzZU5hbWUiLCJyZWxlYXNlIiwibmFtZSIsInRvcG1vc3RGaWxlTmFtZSIsImVudHJ5RmlsZSIsImpzb24iLCJKU09OIiwicGFyc2UiLCJmcm9tSlNPTiIsIlJlbGVhc2UiLCJmcm9tTmFtZUFuZEVudHJpZXMiLCJwcm9qZWN0TmFtZSIsInByb2plY3QiLCJQcm9qZWN0IiwicmVsZWFzZXMiLCJSZWxlYXNlcyIsInRvcG1vc3RGaWxlTmFtZXMiLCJ0b3Btb3N0RmlsZU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aCIsInJlbGVhc2VOYW1lcyIsImZvckVhY2giLCJhZGRSZWxlYXNlIiwicHJvamVjdHMiLCJQcm9qZWN0cyIsInRvcG1vc3REaXJlY3RvcnlOYW1lcyIsInRvcG1vc3REaXJlY3RvcnlOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgiLCJwcm9qZWN0TmFtZXMiLCJhZGRQcm9qZWN0IiwiZGlyZWN0b3J5IiwiRGlyZWN0b3J5IiwiZnJvbVBhdGgiLCJjb252ZXJ0Q29udGVudFRhYnNUb1doaXRlc3BhY2UiLCJGaWxlIiwiZnJvbVBhdGhBbmRDb250ZW50IiwiZ2V0RmlsZSIsIkZpbGVzIiwiYWRkRmlsZSIsImFic29sdXRlRGlyZWN0b3J5UGF0aCIsInN1YkVudHJ5TmFtZXMiLCJzdWJFbnRyeU5hbWUiLCJzdWJFbnRyeU5hbWVIaWRkZW5OYW1lIiwiaXNOYW1lSGlkZGVuTmFtZSIsImxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzIiwiZGlyZWN0b3J5UGF0aCIsImFkZERpcmVjdG9yeSIsImZpbGVQYXRoIiwiZmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGgiLCJpc0ZpbGVQYXRoUmVjb2duaXNlZEZpbGVQYXRoIiwiZmlsZVJlY29nbmlzZWRGaWxlIiwicmVkdWNlIiwiYWJzb2x1dGVTdWJFbnRyeVBhdGgiLCJzdWJFbnRyeUZpbGUiLCJwdXNoIiwic3ViRW50cnlEaXJlY3RvcnkiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQXVCZ0JBLFFBQVE7ZUFBUkE7O0lBcUJBQyxRQUFRO2VBQVJBOztJQVdBQyxTQUFTO2VBQVRBOztJQTJCQUMsU0FBUztlQUFUQTs7SUFNQUMsV0FBVztlQUFYQTs7SUFTQUMsV0FBVztlQUFYQTs7SUFnQ0FDLFdBQVc7ZUFBWEE7O0lBZ0JBQyxZQUFZO2VBQVpBOztJQWdCQUMsWUFBWTtlQUFaQTs7SUFnQkFDLGFBQWE7ZUFBYkE7O0lBaUJoQixPQVdFO2VBWEY7OzsyREFoTW1CO3lCQUVnRDt5REFFbEQ7MERBQ0M7NERBQ0U7NERBQ0E7NERBQ0E7NkRBQ0M7NkRBQ0E7OERBQ0M7b0JBRVc7d0JBQ1k7dUJBQ0U7Ozs7OztBQUUvQyxJQUFNLEFBQUVDLFFBQVVDLHlCQUFjLENBQXhCRCxPQUNBRSxXQUFzRUMsOEJBQW1CLENBQXpGRCxVQUFVRSxZQUE0REQsOEJBQW1CLENBQS9FQyxXQUFXQyxjQUFpREYsOEJBQW1CLENBQXBFRSxhQUFhQyxnQkFBb0NILDhCQUFtQixDQUF2REcsZUFBZUMsbUJBQXFCSiw4QkFBbUIsQ0FBeENJLGtCQUNqREMsbUJBQWlGQyx3QkFBYSxDQUE5RkQsa0JBQWtCRSwrQkFBK0RELHdCQUFhLENBQTVFQyw4QkFBOEJDLCtCQUFpQ0Ysd0JBQWEsQ0FBOUNFO0FBRWpELFNBQVNyQixTQUFTc0IsSUFBSSxFQUFFQyxxQkFBcUIsRUFBRTtJQUNwRCxJQUFJQyxPQUFPLElBQUk7SUFFZixJQUFJO1FBQ0YsSUFBTUMsdUJBQXVCTCw2QkFBNkJFO1FBRTFELElBQUlHLHlCQUF5QixJQUFJLEVBQUU7WUFDakMsSUFBTUMsZUFBZVIsaUJBQWlCSyx1QkFBdUJFLHVCQUN2REUsaUJBQWlCVixpQkFBaUJTO1lB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
|
package/package.json
CHANGED
package/src/entries.js
CHANGED
|
@@ -145,10 +145,11 @@ export function loadProject(projectName, projectsDirectoryPath, loadOnlyRecognis
|
|
|
145
145
|
|
|
146
146
|
export function loadReleases(projectsDirectoryPath) {
|
|
147
147
|
const releases = Releases.fromNothing(),
|
|
148
|
-
topmostFileNames = topmostFileNamesFromProjectsDirectoryPath(projectsDirectoryPath)
|
|
148
|
+
topmostFileNames = topmostFileNamesFromProjectsDirectoryPath(projectsDirectoryPath),
|
|
149
|
+
releaseNames = topmostFileNames; ///
|
|
149
150
|
|
|
150
|
-
|
|
151
|
-
const release = loadRelease(
|
|
151
|
+
releaseNames.forEach((releaseName) => {
|
|
152
|
+
const release = loadRelease(releaseName, projectsDirectoryPath);
|
|
152
153
|
|
|
153
154
|
if (release !== null) {
|
|
154
155
|
releases.addRelease(release);
|
|
@@ -160,10 +161,11 @@ export function loadReleases(projectsDirectoryPath) {
|
|
|
160
161
|
|
|
161
162
|
export function loadProjects(projectsDirectoryPath, loadOnlyRecognisedFiles) {
|
|
162
163
|
const projects = Projects.fromNothing(),
|
|
163
|
-
topmostDirectoryNames = topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath)
|
|
164
|
+
topmostDirectoryNames = topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath),
|
|
165
|
+
projectNames = topmostDirectoryNames; ///
|
|
164
166
|
|
|
165
|
-
|
|
166
|
-
const project = loadProject(
|
|
167
|
+
projectNames.forEach((projectName) => {
|
|
168
|
+
const project = loadProject(projectName, projectsDirectoryPath, loadOnlyRecognisedFiles);
|
|
167
169
|
|
|
168
170
|
if (project !== null) {
|
|
169
171
|
projects.addProject(project);
|