occam-file-system 6.0.211 → 6.0.214
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.
|
@@ -173,7 +173,7 @@ function fileFromProject(path, projectsDirectoryPath) {
|
|
|
173
173
|
return file;
|
|
174
174
|
}
|
|
175
175
|
function fileFromRelease(path, projectsDirectoryPath) {
|
|
176
|
-
var topmostDirectoryName = topmostDirectoryNameFromPath(path), topmostFileName = topmostDirectoryName, release = loadRelease(topmostFileName, projectsDirectoryPath), file = release.
|
|
176
|
+
var topmostDirectoryName = topmostDirectoryNameFromPath(path), topmostFileName = topmostDirectoryName, filePath = path, release = loadRelease(topmostFileName, projectsDirectoryPath), file = release.findFile(filePath);
|
|
177
177
|
return file;
|
|
178
178
|
}
|
|
179
179
|
function filesFromProject(paths, projectsDirectoryPath) {
|
|
@@ -189,7 +189,7 @@ function filesFromRelease(paths, projectsDirectoryPath) {
|
|
|
189
189
|
if (pathsLength > 0) {
|
|
190
190
|
var firstPath = first(paths), path = firstPath, topmostDirectoryName = topmostDirectoryNameFromPath(path), topmostFileName = topmostDirectoryName, release = loadRelease(topmostFileName, projectsDirectoryPath);
|
|
191
191
|
paths.forEach(function(path) {
|
|
192
|
-
var file = release.
|
|
192
|
+
var filePath = path, file = release.findFile(filePath);
|
|
193
193
|
files.addFile(file);
|
|
194
194
|
});
|
|
195
195
|
}
|
|
@@ -252,4 +252,4 @@ function topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath) {
|
|
|
252
252
|
return topmostDirectoryNames;
|
|
253
253
|
}
|
|
254
254
|
|
|
255
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZVN5c3RlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzLCBwYXRoVXRpbGl0aWVzLCBmaWxlU3lzdGVtVXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xyXG5pbXBvcnQgeyBGaWxlLCBGaWxlcywgRW50cmllcywgUHJvamVjdCwgUmVsZWFzZSwgUHJvamVjdHMsIFJlbGVhc2VzLCBEaXJlY3RvcnksIGZpbGVQYXRoVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWVudGl0aWVzXCI7XHJcblxyXG5pbXBvcnQgeyBpc05hbWVIaWRkZW5OYW1lIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9uYW1lXCI7XHJcblxyXG5jb25zdCB7IGZpcnN0IH0gPSBhcnJheVV0aWxpdGllcyxcclxuICAgICAgeyBpc0ZpbGVQYXRoUmVjb2duaXNlZEZpbGVQYXRoIH0gPSBmaWxlUGF0aFV0aWxpdGllcyxcclxuICAgICAgeyBjb25jYXRlbmF0ZVBhdGhzLCB0b3Btb3N0RGlyZWN0b3J5TmFtZUZyb21QYXRoIH0gPSBwYXRoVXRpbGl0aWVzLFxyXG4gICAgICB7IHJlYWRGaWxlLFxyXG4gICAgICAgIHdyaXRlRmlsZSxcclxuICAgICAgICBpc0VudHJ5RmlsZSxcclxuICAgICAgICByZWFkRGlyZWN0b3J5LFxyXG4gICAgICAgIGlzRW50cnlEaXJlY3RvcnksXHJcbiAgICAgICAgY2hlY2tFbnRyeUV4aXN0cyxcclxuICAgICAgICBjaGVja0VudHJ5RXhpc3RzOiBjaGVja0ZpbGVFeGlzdHMgfSA9IGZpbGVTeXN0ZW1VdGlsaXRpZXM7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZEZpbGUocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgbGV0IGZpbGUgPSBudWxsO1xyXG5cclxuICB0cnkge1xyXG4gICAgY29uc3QgdG9wbW9zdERpcmVjdG9yeU5hbWUgPSB0b3Btb3N0RGlyZWN0b3J5TmFtZUZyb21QYXRoKHBhdGgpO1xyXG5cclxuICAgIGlmICh0b3Btb3N0RGlyZWN0b3J5TmFtZSAhPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgdG9wbW9zdERpcmVjdG9yeU5hbWUpLFxyXG4gICAgICAgICAgICBlbnRyeURpcmVjdG9yeSA9IGlzRW50cnlEaXJlY3RvcnkoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICAgIGZpbGUgPSBlbnRyeURpcmVjdG9yeSA/XHJcbiAgICAgICAgICAgICAgIGZpbGVGcm9tUHJvamVjdChwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIDpcclxuICAgICAgICAgICAgICAgICBmaWxlRnJvbVJlbGVhc2UocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuICAgIH1cclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgLy8vXHJcbiAgfVxyXG5cclxuICByZXR1cm4gZmlsZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNhdmVGaWxlKGZpbGUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCBzdWNjZXNzID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0IGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCksXHJcbiAgICAgICAgYWJzb2x1dGVGaWxlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBmaWxlUGF0aCksXHJcbiAgICAgICAgZmlsZUV4aXN0cyA9IGNoZWNrRmlsZUV4aXN0cyhhYnNvbHV0ZUZpbGVQYXRoKTtcclxuXHJcbiAgaWYgKGZpbGVFeGlzdHMpIHtcclxuICAgIGNvbnN0IGZpbGVQYXRoID0gYWJzb2x1dGVGaWxlUGF0aCwgIC8vL1xyXG4gICAgICAgICAgY29udGVudCA9IGZpbGUuZ2V0Q29udGVudCgpO1xyXG5cclxuICAgIHRyeSB7XHJcbiAgICAgIHdyaXRlRmlsZShmaWxlUGF0aCwgY29udGVudCk7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAvLy9cclxuICAgIH1cclxuXHJcbiAgICBzdWNjZXNzID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHJldHVybiBzdWNjZXNzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZEZpbGVzKHBhdGhzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgZmlsZXM7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBmaWxlcyA9IEZpbGVzLmZyb21Ob3RoaW5nKCk7XHJcblxyXG4gICAgY29uc3QgcGF0aHNMZW5ndGggPSBwYXRocy5sZW5ndGg7XHJcblxyXG4gICAgaWYgKHBhdGhzTGVuZ3RoID4gMCkge1xyXG4gICAgICBjb25zdCBmaXJzdFBhdGggPSBmaXJzdChwYXRocyksXHJcbiAgICAgICAgICAgIHBhdGggPSBmaXJzdFBhdGgsIC8vL1xyXG4gICAgICAgICAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lRnJvbVBhdGgocGF0aCk7XHJcblxyXG4gICAgICBpZiAodG9wbW9zdERpcmVjdG9yeU5hbWUgIT09IG51bGwpIHtcclxuICAgICAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgdG9wbW9zdERpcmVjdG9yeU5hbWUpLFxyXG4gICAgICAgICAgICAgIGVudHJ5RXhpc3RzID0gY2hlY2tFbnRyeUV4aXN0cyhhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgICAgICBpZiAoZW50cnlFeGlzdHMpIHtcclxuICAgICAgICAgIGNvbnN0IGVudHJ5RGlyZWN0b3J5ID0gaXNFbnRyeURpcmVjdG9yeShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgICAgICAgIGZpbGVzID0gZW50cnlEaXJlY3RvcnkgP1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGVzRnJvbVByb2plY3QocGF0aHMsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgZmlsZXNGcm9tUmVsZWFzZShwYXRocywgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgZmlsZXMgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGVzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZFJlbGVhc2UocmVsZWFzZU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCByZWxlYXNlID0gbnVsbDtcclxuXHJcbiAgdHJ5IHtcclxuICAgIGNvbnN0IG5hbWUgPSByZWxlYXNlTmFtZSwgLy8vXHJcbiAgICAgICAgICB0b3Btb3N0RmlsZU5hbWUgPSByZWxlYXNlTmFtZSwgIC8vL1xyXG4gICAgICAgICAgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHRvcG1vc3RGaWxlTmFtZSksXHJcbiAgICAgICAgICBlbnRyeUZpbGUgPSBpc0VudHJ5RmlsZShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgIGlmIChlbnRyeUZpbGUpIHtcclxuICAgICAgbGV0IGpzb24sXHJcbiAgICAgICAgICBlbnRyaWVzO1xyXG5cclxuICAgICAgY29uc3QgY29udGVudCA9IHJlYWRGaWxlKGFic29sdXRlUGF0aCk7XHJcblxyXG4gICAgICBqc29uID0gSlNPTi5wYXJzZShjb250ZW50KTtcclxuXHJcbiAgICAgICh7IGVudHJpZXMgfSA9IGpzb24pO1xyXG5cclxuICAgICAganNvbiAgPSBlbnRyaWVzOyAgLy8vXHJcblxyXG4gICAgICBlbnRyaWVzID0gRW50cmllcy5mcm9tSlNPTihqc29uKTtcclxuXHJcbiAgICAgIHJlbGVhc2UgPSBSZWxlYXNlLmZyb21OYW1lQW5kRW50cmllcyhuYW1lLCBlbnRyaWVzKTtcclxuICAgIH1cclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgLy8vXHJcbiAgfVxyXG5cclxuICByZXR1cm4gcmVsZWFzZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRQcm9qZWN0KHByb2plY3ROYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzKSB7XHJcbiAgbGV0IHByb2plY3QgPSBudWxsO1xyXG5cclxuICB0cnkge1xyXG4gICAgY29uc3QgbmFtZSA9IHByb2plY3ROYW1lLCAgLy8vXHJcbiAgICAgICAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHByb2plY3ROYW1lLCAvLy9cclxuICAgICAgICAgIGVudHJpZXMgPSBsb2FkRW50cmllcyh0b3Btb3N0RGlyZWN0b3J5TmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcyk7XHJcblxyXG4gICAgcHJvamVjdCA9IFByb2plY3QuZnJvbU5hbWVBbmRFbnRyaWVzKG5hbWUsIGVudHJpZXMpO1xyXG4gIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAvLy9cclxuICB9XHJcblxyXG4gIHJldHVybiBwcm9qZWN0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZFJlbGVhc2VzKHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCByZWxlYXNlcztcclxuXHJcbiAgdHJ5IHtcclxuICAgIHJlbGVhc2VzID0gUmVsZWFzZXMuZnJvbU5vdGhpbmcoKTtcclxuXHJcbiAgICBjb25zdCB0b3Btb3N0RmlsZU5hbWVzID0gdG9wbW9zdEZpbGVOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgocHJvamVjdHNEaXJlY3RvcnlQYXRoKSxcclxuICAgICAgICAgIHJlbGVhc2VOYW1lcyA9IHRvcG1vc3RGaWxlTmFtZXM7ICAvLy9cclxuXHJcbiAgICByZWxlYXNlTmFtZXMuZm9yRWFjaCgocmVsZWFzZU5hbWUpID0+IHtcclxuICAgICAgY29uc3QgcmVsZWFzZSA9IGxvYWRSZWxlYXNlKHJlbGVhc2VOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgICAgaWYgKHJlbGVhc2UgIT09IG51bGwpIHtcclxuICAgICAgICByZWxlYXNlcy5hZGRSZWxlYXNlKHJlbGVhc2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgcmVsZWFzZXMgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlbGVhc2VzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZFByb2plY3RzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpIHtcclxuICBsZXQgcHJvamVjdHM7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBwcm9qZWN0cyA9IFByb2plY3RzLmZyb21Ob3RoaW5nKCk7XHJcblxyXG4gICAgY29uc3QgdG9wbW9zdERpcmVjdG9yeU5hbWVzID0gdG9wbW9zdERpcmVjdG9yeU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aChwcm9qZWN0c0RpcmVjdG9yeVBhdGgpLFxyXG4gICAgICAgICAgcHJvamVjdE5hbWVzID0gdG9wbW9zdERpcmVjdG9yeU5hbWVzOyAvLy9cclxuXHJcbiAgICBwcm9qZWN0TmFtZXMuZm9yRWFjaCgocHJvamVjdE5hbWUpID0+IHtcclxuICAgICAgY29uc3QgcHJvamVjdCA9IGxvYWRQcm9qZWN0KHByb2plY3ROYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzKTtcclxuXHJcbiAgICAgIGlmIChwcm9qZWN0ICE9PSBudWxsKSB7XHJcbiAgICAgICAgcHJvamVjdHMuYWRkUHJvamVjdChwcm9qZWN0KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIHByb2plY3RzID0gbnVsbDtcclxuICB9XHJcblxyXG4gIHJldHVybiBwcm9qZWN0cztcclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIGxvYWRGaWxlLFxyXG4gIHNhdmVGaWxlLFxyXG4gIGxvYWRGaWxlcyxcclxuICBsb2FkUmVsZWFzZSxcclxuICBsb2FkUHJvamVjdCxcclxuICBsb2FkUmVsZWFzZXMsXHJcbiAgbG9hZFByb2plY3RzXHJcbn07XHJcblxyXG5mdW5jdGlvbiBsb2FkRW50cmllcyh0b3Btb3N0RGlyZWN0b3J5TmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcykge1xyXG4gIGNvbnN0IGVudHJpZXMgPSBFbnRyaWVzLmZyb21Ob3RoaW5nKCksXHJcbiAgICAgICAgcmVsYXRpdmVEaXJlY3RvcnlQYXRoID0gdG9wbW9zdERpcmVjdG9yeU5hbWU7ICAvLy9cclxuXHJcbiAgZW50cmllc0Zyb21SZWxhdGl2ZURpcmVjdG9yeVBhdGgoZW50cmllcywgcmVsYXRpdmVEaXJlY3RvcnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzKTtcclxuXHJcbiAgcmV0dXJuIGVudHJpZXM7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGxvYWREaXJlY3RvcnkocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgY29uc3QgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHBhdGgpLFxyXG4gICAgICAgIGVudHJ5RGlyZWN0b3J5ID0gaXNFbnRyeURpcmVjdG9yeShhYnNvbHV0ZVBhdGgpLFxyXG4gICAgICAgIGRpcmVjdG9yeSA9IGVudHJ5RGlyZWN0b3J5ID9cclxuICAgICAgICAgICAgICAgICAgICAgIERpcmVjdG9yeS5mcm9tUGF0aChwYXRoKSA6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG51bGw7XHJcblxyXG4gIHJldHVybiBkaXJlY3Rvcnk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZpbGVGcm9tUHJvamVjdChwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgZmlsZSA9IG51bGw7XHJcblxyXG4gIGNvbnN0IGFic29sdXRlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBwYXRoKSxcclxuICAgICAgICBlbnRyeUZpbGUgPSBpc0VudHJ5RmlsZShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICBpZiAoZW50cnlGaWxlKSB7XHJcbiAgICBjb25zdCByZWxlYXNlZCA9IGZhbHNlLFxyXG4gICAgICAgICAgY29udGVudCA9IHJlYWRGaWxlKGFic29sdXRlUGF0aCk7XHJcblxyXG4gICAgZmlsZSA9IEZpbGUuZnJvbVBhdGhDb250ZW50QW5kUmVsZWFzZWQocGF0aCwgY29udGVudCwgcmVsZWFzZWQpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGU7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZpbGVGcm9tUmVsZWFzZShwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lRnJvbVBhdGgocGF0aCksXHJcbiAgICAgICAgdG9wbW9zdEZpbGVOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWUsIC8vL1xyXG4gICAgICAgIHJlbGVhc2UgPSBsb2FkUmVsZWFzZSh0b3Btb3N0RmlsZU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCksXHJcbiAgICAgICAgZmlsZSA9IHJlbGVhc2UuZ2V0RmlsZShwYXRoKTtcclxuXHJcbiAgcmV0dXJuIGZpbGU7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZpbGVzRnJvbVByb2plY3QocGF0aHMsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGNvbnN0IGZpbGVzID0gRmlsZXMuZnJvbU5vdGhpbmcoKTtcclxuXHJcbiAgcGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xyXG4gICAgY29uc3QgZmlsZSA9IGZpbGVGcm9tUHJvamVjdChwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgIGZpbGVzLmFkZEZpbGUoZmlsZSk7XHJcbiAgfSk7XHJcblxyXG4gIHJldHVybiBmaWxlcztcclxufVxyXG5cclxuZnVuY3Rpb24gZmlsZXNGcm9tUmVsZWFzZShwYXRocywgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgY29uc3QgZmlsZXMgPSBGaWxlcy5mcm9tTm90aGluZygpLFxyXG4gICAgICAgIHBhdGhzTGVuZ3RoID0gcGF0aHMubGVuZ3RoO1xyXG5cclxuICBpZiAocGF0aHNMZW5ndGggPiAwKSB7XHJcbiAgICBjb25zdCBmaXJzdFBhdGggPSBmaXJzdChwYXRocyksXHJcbiAgICAgICAgICBwYXRoID0gZmlyc3RQYXRoLCAvLy9cclxuICAgICAgICAgIHRvcG1vc3REaXJlY3RvcnlOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWVGcm9tUGF0aChwYXRoKSxcclxuICAgICAgICAgIHRvcG1vc3RGaWxlTmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lLCAvLy9cclxuICAgICAgICAgIHJlbGVhc2UgPSBsb2FkUmVsZWFzZSh0b3Btb3N0RmlsZU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gICAgcGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xyXG4gICAgICBjb25zdCBmaWxlID0gcmVsZWFzZS5nZXRGaWxlKHBhdGgpO1xyXG5cclxuICAgICAgZmlsZXMuYWRkRmlsZShmaWxlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGVzO1xyXG59XHJcblxyXG5mdW5jdGlvbiBlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aChlbnRyaWVzLCByZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpIHtcclxuICBjb25zdCBhYnNvbHV0ZURpcmVjdG9yeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcmVsYXRpdmVEaXJlY3RvcnlQYXRoKSxcclxuICAgICAgICBzdWJFbnRyeU5hbWVzID0gcmVhZERpcmVjdG9yeShhYnNvbHV0ZURpcmVjdG9yeVBhdGgpO1xyXG5cclxuICBzdWJFbnRyeU5hbWVzLmZvckVhY2goKHN1YkVudHJ5TmFtZSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViRW50cnlOYW1lSGlkZGVuTmFtZSA9IGlzTmFtZUhpZGRlbk5hbWUoc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgIGxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzID0gIWxvYWRPbmx5UmVjb2duaXNlZEZpbGVzO1xyXG5cclxuICAgIGlmICghc3ViRW50cnlOYW1lSGlkZGVuTmFtZSkge1xyXG4gICAgICBjb25zdCBwYXRoID0gY29uY2F0ZW5hdGVQYXRocyhyZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICAgIGRpcmVjdG9yeSA9IGxvYWREaXJlY3RvcnkocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICAgIGlmIChkaXJlY3RvcnkgIT09IG51bGwpIHtcclxuICAgICAgICBjb25zdCBkaXJlY3RvcnlQYXRoID0gcGF0aDsgLy8vXHJcblxyXG4gICAgICAgIGlmIChsb2FkVW5yZWNvZ25pc2VkRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gICAgICAgICAgZW50cmllcy5hZGREaXJlY3RvcnkoZGlyZWN0b3J5KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoKGVudHJpZXMsIGRpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpOyAvLy9cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCBmaWxlID0gbG9hZEZpbGUocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICAgICAgaWYgKGZpbGUgIT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCksXHJcbiAgICAgICAgICAgICAgICBmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCA9IGlzRmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGgoZmlsZVBhdGgpLFxyXG4gICAgICAgICAgICAgICAgZmlsZVJlY29nbmlzZWRGaWxlID0gZmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGg7ICAvLy9cclxuXHJcbiAgICAgICAgICBpZiAoZmlsZVJlY29nbmlzZWRGaWxlIHx8IGxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgICAgICAgICAgIGVudHJpZXMuYWRkRmlsZShmaWxlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gdG9wbW9zdEZpbGVOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgocHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgbGV0IHRvcG1vc3RGaWxlTmFtZXM7XHJcblxyXG4gIGNvbnN0IHN1YkVudHJ5TmFtZXMgPSByZWFkRGlyZWN0b3J5KHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHRvcG1vc3RGaWxlTmFtZXMgPSBzdWJFbnRyeU5hbWVzLnJlZHVjZSgodG9wbW9zdEZpbGVOYW1lcywgc3ViRW50cnlOYW1lKSA9PiB7XHJcbiAgICBjb25zdCBhYnNvbHV0ZVN1YkVudHJ5UGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBzdWJFbnRyeU5hbWUpLFxyXG4gICAgICAgICAgc3ViRW50cnlOYW1lSGlkZGVuTmFtZSA9IGlzTmFtZUhpZGRlbk5hbWUoc3ViRW50cnlOYW1lKTtcclxuXHJcbiAgICBpZiAoIXN1YkVudHJ5TmFtZUhpZGRlbk5hbWUpIHtcclxuICAgICAgY29uc3Qgc3ViRW50cnlGaWxlID0gaXNFbnRyeUZpbGUoYWJzb2x1dGVTdWJFbnRyeVBhdGgpO1xyXG5cclxuICAgICAgaWYgKHN1YkVudHJ5RmlsZSkge1xyXG4gICAgICAgIGNvbnN0IHRvcG1vc3RGaWxlTmFtZSA9IHN1YkVudHJ5TmFtZTsgIC8vL1xyXG5cclxuICAgICAgICB0b3Btb3N0RmlsZU5hbWVzLnB1c2godG9wbW9zdEZpbGVOYW1lKVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRvcG1vc3RGaWxlTmFtZXM7XHJcbiAgfSwgW10pO1xyXG5cclxuICByZXR1cm4gdG9wbW9zdEZpbGVOYW1lcztcclxufVxyXG5cclxuZnVuY3Rpb24gdG9wbW9zdERpcmVjdG9yeU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aChwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgdG9wbW9zdERpcmVjdG9yeU5hbWVzO1xyXG5cclxuICBjb25zdCBzdWJFbnRyeU5hbWVzID0gcmVhZERpcmVjdG9yeShwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICB0b3Btb3N0RGlyZWN0b3J5TmFtZXMgPSBzdWJFbnRyeU5hbWVzLnJlZHVjZSgodG9wbW9zdERpcmVjdG9yeU5hbWVzLCBzdWJFbnRyeU5hbWUpID0+IHtcclxuICAgIGNvbnN0IGFic29sdXRlU3ViRW50cnlQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICBzdWJFbnRyeU5hbWVIaWRkZW5OYW1lID0gaXNOYW1lSGlkZGVuTmFtZShzdWJFbnRyeU5hbWUpO1xyXG5cclxuICAgIGlmICghc3ViRW50cnlOYW1lSGlkZGVuTmFtZSkge1xyXG4gICAgICBjb25zdCBzdWJFbnRyeURpcmVjdG9yeSA9IGlzRW50cnlEaXJlY3RvcnkoYWJzb2x1dGVTdWJFbnRyeVBhdGgpO1xyXG5cclxuICAgICAgaWYgKHN1YkVudHJ5RGlyZWN0b3J5KSB7XHJcbiAgICAgICAgY29uc3QgdG9wbW9zdERpcmVjdG9yeU5hbWUgPSBzdWJFbnRyeU5hbWU7ICAvLy9cclxuXHJcbiAgICAgICAgdG9wbW9zdERpcmVjdG9yeU5hbWVzLnB1c2godG9wbW9zdERpcmVjdG9yeU5hbWUpXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdG9wbW9zdERpcmVjdG9yeU5hbWVzO1xyXG4gIH0sIFtdKTtcclxuXHJcbiAgcmV0dXJuIHRvcG1vc3REaXJlY3RvcnlOYW1lcztcclxufVxyXG4iXSwibmFtZXMiOlsibG9hZEZpbGUiLCJsb2FkRmlsZXMiLCJsb2FkUHJvamVjdCIsImxvYWRQcm9qZWN0cyIsImxvYWRSZWxlYXNlIiwibG9hZFJlbGVhc2VzIiwic2F2ZUZpbGUiLCJmaXJzdCIsImFycmF5VXRpbGl0aWVzIiwiaXNGaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCIsImZpbGVQYXRoVXRpbGl0aWVzIiwiY29uY2F0ZW5hdGVQYXRocyIsInBhdGhVdGlsaXRpZXMiLCJ0b3Btb3N0RGlyZWN0b3J5TmFtZUZyb21QYXRoIiwicmVhZEZpbGUiLCJmaWxlU3lzdGVtVXRpbGl0aWVzIiwid3JpdGVGaWxlIiwiaXNFbnRyeUZpbGUiLCJyZWFkRGlyZWN0b3J5IiwiaXNFbnRyeURpcmVjdG9yeSIsImNoZWNrRW50cnlFeGlzdHMiLCJjaGVja0ZpbGVFeGlzdHMiLCJwYXRoIiwicHJvamVjdHNEaXJlY3RvcnlQYXRoIiwiZmlsZSIsInRvcG1vc3REaXJlY3RvcnlOYW1lIiwiYWJzb2x1dGVQYXRoIiwiZW50cnlEaXJlY3RvcnkiLCJmaWxlRnJvbVByb2plY3QiLCJmaWxlRnJvbVJlbGVhc2UiLCJlcnJvciIsInN1Y2Nlc3MiLCJmaWxlUGF0aCIsImdldFBhdGgiLCJhYnNvbHV0ZUZpbGVQYXRoIiwiZmlsZUV4aXN0cyIsImNvbnRlbnQiLCJnZXRDb250ZW50IiwicGF0aHMiLCJmaWxlcyIsIkZpbGVzIiwiZnJvbU5vdGhpbmciLCJwYXRoc0xlbmd0aCIsImxlbmd0aCIsImZpcnN0UGF0aCIsImVudHJ5RXhpc3RzIiwiZmlsZXNGcm9tUHJvamVjdCIsImZpbGVzRnJvbVJlbGVhc2UiLCJyZWxlYXNlTmFtZSIsInJlbGVhc2UiLCJuYW1lIiwidG9wbW9zdEZpbGVOYW1lIiwiZW50cnlGaWxlIiwianNvbiIsImVudHJpZXMiLCJKU09OIiwicGFyc2UiLCJFbnRyaWVzIiwiZnJvbUpTT04iLCJSZWxlYXNlIiwiZnJvbU5hbWVBbmRFbnRyaWVzIiwicHJvamVjdE5hbWUiLCJsb2FkT25seVJlY29nbmlzZWRGaWxlcyIsInByb2plY3QiLCJsb2FkRW50cmllcyIsIlByb2plY3QiLCJyZWxlYXNlcyIsIlJlbGVhc2VzIiwidG9wbW9zdEZpbGVOYW1lcyIsInRvcG1vc3RGaWxlTmFtZXNGcm9tUHJvamVjdHNEaXJlY3RvcnlQYXRoIiwicmVsZWFzZU5hbWVzIiwiZm9yRWFjaCIsImFkZFJlbGVhc2UiLCJwcm9qZWN0cyIsIlByb2plY3RzIiwidG9wbW9zdERpcmVjdG9yeU5hbWVzIiwidG9wbW9zdERpcmVjdG9yeU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aCIsInByb2plY3ROYW1lcyIsImFkZFByb2plY3QiLCJyZWxhdGl2ZURpcmVjdG9yeVBhdGgiLCJlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aCIsImxvYWREaXJlY3RvcnkiLCJkaXJlY3RvcnkiLCJEaXJlY3RvcnkiLCJmcm9tUGF0aCIsInJlbGVhc2VkIiwiRmlsZSIsImZyb21QYXRoQ29udGVudEFuZFJlbGVhc2VkIiwiZ2V0RmlsZSIsImFkZEZpbGUiLCJhYnNvbHV0ZURpcmVjdG9yeVBhdGgiLCJzdWJFbnRyeU5hbWVzIiwic3ViRW50cnlOYW1lIiwic3ViRW50cnlOYW1lSGlkZGVuTmFtZSIsImlzTmFtZUhpZGRlbk5hbWUiLCJsb2FkVW5yZWNvZ25pc2VkRmlsZXNBbmREaXJlY3RvcmllcyIsImRpcmVjdG9yeVBhdGgiLCJhZGREaXJlY3RvcnkiLCJmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCIsImZpbGVSZWNvZ25pc2VkRmlsZSIsInJlZHVjZSIsImFic29sdXRlU3ViRW50cnlQYXRoIiwic3ViRW50cnlGaWxlIiwicHVzaCIsInN1YkVudHJ5RGlyZWN0b3J5Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUE2TEEsT0FRRTtlQVJGOztJQTNLZ0JBLFFBQVE7ZUFBUkE7O0lBNENBQyxTQUFTO2VBQVRBOztJQWlFQUMsV0FBVztlQUFYQTs7SUF1Q0FDLFlBQVk7ZUFBWkE7O0lBdkVBQyxXQUFXO2VBQVhBOztJQWdEQUMsWUFBWTtlQUFaQTs7SUF4R0FDLFFBQVE7ZUFBUkE7Ozt5QkFyQ21EOzZCQUNzQztvQkFFeEU7QUFFakMsSUFBTSxBQUFFQyxRQUFVQyx5QkFBYyxDQUF4QkQsT0FDRixBQUFFRSwrQkFBaUNDLGdDQUFpQixDQUFsREQsOEJBQ0FFLG1CQUFtREMsd0JBQWEsQ0FBaEVELGtCQUFrQkUsK0JBQWlDRCx3QkFBYSxDQUE5Q0MsOEJBQ2xCQyxXQU1zQ0MsOEJBQW1CLENBTnpERCxVQUNBRSxZQUtzQ0QsOEJBQW1CLENBTHpEQyxXQUNBQyxjQUlzQ0YsOEJBQW1CLENBSnpERSxhQUNBQyxnQkFHc0NILDhCQUFtQixDQUh6REcsZUFDQUMsbUJBRXNDSiw4QkFBbUIsQ0FGekRJLGtCQUNBQyxtQkFDc0NMLDhCQUFtQixDQUR6REssa0JBQ0FBLEFBQWtCQyxrQkFBb0JOLDhCQUFtQixDQUF6REs7QUFFRCxTQUFTcEIsU0FBU3NCLElBQUksRUFBRUMscUJBQXFCO0lBQ2xELElBQUlDLE9BQU87SUFFWCxJQUFJO1FBQ0YsSUFBTUMsdUJBQXVCWiw2QkFBNkJTO1FBRTFELElBQUlHLHlCQUF5QixNQUFNO1lBQ2pDLElBQU1DLGVBQWVmLGlCQUFpQlksdUJBQXVCRSx1QkFDdkRFLGlCQUFpQlIsaUJBQWlCTztZQUV4Q0YsT0FBT0csaUJBQ0VDLGdCQUFnQk4sTUFBTUMseUJBQ3BCTSxnQkFBZ0JQLE1BQU1DO1FBQ25DO0lB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
|
|
255
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZVN5c3RlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzLCBwYXRoVXRpbGl0aWVzLCBmaWxlU3lzdGVtVXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xyXG5pbXBvcnQgeyBGaWxlLCBGaWxlcywgRW50cmllcywgUHJvamVjdCwgUmVsZWFzZSwgUHJvamVjdHMsIFJlbGVhc2VzLCBEaXJlY3RvcnksIGZpbGVQYXRoVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWVudGl0aWVzXCI7XHJcblxyXG5pbXBvcnQgeyBpc05hbWVIaWRkZW5OYW1lIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9uYW1lXCI7XHJcblxyXG5jb25zdCB7IGZpcnN0IH0gPSBhcnJheVV0aWxpdGllcyxcclxuICAgICAgeyBpc0ZpbGVQYXRoUmVjb2duaXNlZEZpbGVQYXRoIH0gPSBmaWxlUGF0aFV0aWxpdGllcyxcclxuICAgICAgeyBjb25jYXRlbmF0ZVBhdGhzLCB0b3Btb3N0RGlyZWN0b3J5TmFtZUZyb21QYXRoIH0gPSBwYXRoVXRpbGl0aWVzLFxyXG4gICAgICB7IHJlYWRGaWxlLFxyXG4gICAgICAgIHdyaXRlRmlsZSxcclxuICAgICAgICBpc0VudHJ5RmlsZSxcclxuICAgICAgICByZWFkRGlyZWN0b3J5LFxyXG4gICAgICAgIGlzRW50cnlEaXJlY3RvcnksXHJcbiAgICAgICAgY2hlY2tFbnRyeUV4aXN0cyxcclxuICAgICAgICBjaGVja0VudHJ5RXhpc3RzOiBjaGVja0ZpbGVFeGlzdHMgfSA9IGZpbGVTeXN0ZW1VdGlsaXRpZXM7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZEZpbGUocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgbGV0IGZpbGUgPSBudWxsO1xyXG5cclxuICB0cnkge1xyXG4gICAgY29uc3QgdG9wbW9zdERpcmVjdG9yeU5hbWUgPSB0b3Btb3N0RGlyZWN0b3J5TmFtZUZyb21QYXRoKHBhdGgpO1xyXG5cclxuICAgIGlmICh0b3Btb3N0RGlyZWN0b3J5TmFtZSAhPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgdG9wbW9zdERpcmVjdG9yeU5hbWUpLFxyXG4gICAgICAgICAgICBlbnRyeURpcmVjdG9yeSA9IGlzRW50cnlEaXJlY3RvcnkoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICAgIGZpbGUgPSBlbnRyeURpcmVjdG9yeSA/XHJcbiAgICAgICAgICAgICAgIGZpbGVGcm9tUHJvamVjdChwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIDpcclxuICAgICAgICAgICAgICAgICBmaWxlRnJvbVJlbGVhc2UocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuICAgIH1cclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgLy8vXHJcbiAgfVxyXG5cclxuICByZXR1cm4gZmlsZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNhdmVGaWxlKGZpbGUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCBzdWNjZXNzID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0IGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCksXHJcbiAgICAgICAgYWJzb2x1dGVGaWxlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBmaWxlUGF0aCksXHJcbiAgICAgICAgZmlsZUV4aXN0cyA9IGNoZWNrRmlsZUV4aXN0cyhhYnNvbHV0ZUZpbGVQYXRoKTtcclxuXHJcbiAgaWYgKGZpbGVFeGlzdHMpIHtcclxuICAgIGNvbnN0IGZpbGVQYXRoID0gYWJzb2x1dGVGaWxlUGF0aCwgIC8vL1xyXG4gICAgICAgICAgY29udGVudCA9IGZpbGUuZ2V0Q29udGVudCgpO1xyXG5cclxuICAgIHRyeSB7XHJcbiAgICAgIHdyaXRlRmlsZShmaWxlUGF0aCwgY29udGVudCk7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAvLy9cclxuICAgIH1cclxuXHJcbiAgICBzdWNjZXNzID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHJldHVybiBzdWNjZXNzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZEZpbGVzKHBhdGhzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgZmlsZXM7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBmaWxlcyA9IEZpbGVzLmZyb21Ob3RoaW5nKCk7XHJcblxyXG4gICAgY29uc3QgcGF0aHNMZW5ndGggPSBwYXRocy5sZW5ndGg7XHJcblxyXG4gICAgaWYgKHBhdGhzTGVuZ3RoID4gMCkge1xyXG4gICAgICBjb25zdCBmaXJzdFBhdGggPSBmaXJzdChwYXRocyksXHJcbiAgICAgICAgICAgIHBhdGggPSBmaXJzdFBhdGgsIC8vL1xyXG4gICAgICAgICAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lRnJvbVBhdGgocGF0aCk7XHJcblxyXG4gICAgICBpZiAodG9wbW9zdERpcmVjdG9yeU5hbWUgIT09IG51bGwpIHtcclxuICAgICAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgdG9wbW9zdERpcmVjdG9yeU5hbWUpLFxyXG4gICAgICAgICAgICAgIGVudHJ5RXhpc3RzID0gY2hlY2tFbnRyeUV4aXN0cyhhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgICAgICBpZiAoZW50cnlFeGlzdHMpIHtcclxuICAgICAgICAgIGNvbnN0IGVudHJ5RGlyZWN0b3J5ID0gaXNFbnRyeURpcmVjdG9yeShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgICAgICAgIGZpbGVzID0gZW50cnlEaXJlY3RvcnkgP1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGVzRnJvbVByb2plY3QocGF0aHMsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkgOlxyXG4gICAgICAgICAgICAgICAgICAgICAgZmlsZXNGcm9tUmVsZWFzZShwYXRocywgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgZmlsZXMgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGVzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZFJlbGVhc2UocmVsZWFzZU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCByZWxlYXNlID0gbnVsbDtcclxuXHJcbiAgdHJ5IHtcclxuICAgIGNvbnN0IG5hbWUgPSByZWxlYXNlTmFtZSwgLy8vXHJcbiAgICAgICAgICB0b3Btb3N0RmlsZU5hbWUgPSByZWxlYXNlTmFtZSwgIC8vL1xyXG4gICAgICAgICAgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHRvcG1vc3RGaWxlTmFtZSksXHJcbiAgICAgICAgICBlbnRyeUZpbGUgPSBpc0VudHJ5RmlsZShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgIGlmIChlbnRyeUZpbGUpIHtcclxuICAgICAgbGV0IGpzb24sXHJcbiAgICAgICAgICBlbnRyaWVzO1xyXG5cclxuICAgICAgY29uc3QgY29udGVudCA9IHJlYWRGaWxlKGFic29sdXRlUGF0aCk7XHJcblxyXG4gICAgICBqc29uID0gSlNPTi5wYXJzZShjb250ZW50KTtcclxuXHJcbiAgICAgICh7IGVudHJpZXMgfSA9IGpzb24pO1xyXG5cclxuICAgICAganNvbiAgPSBlbnRyaWVzOyAgLy8vXHJcblxyXG4gICAgICBlbnRyaWVzID0gRW50cmllcy5mcm9tSlNPTihqc29uKTtcclxuXHJcbiAgICAgIHJlbGVhc2UgPSBSZWxlYXNlLmZyb21OYW1lQW5kRW50cmllcyhuYW1lLCBlbnRyaWVzKTtcclxuICAgIH1cclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgLy8vXHJcbiAgfVxyXG5cclxuICByZXR1cm4gcmVsZWFzZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRQcm9qZWN0KHByb2plY3ROYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzKSB7XHJcbiAgbGV0IHByb2plY3QgPSBudWxsO1xyXG5cclxuICB0cnkge1xyXG4gICAgY29uc3QgbmFtZSA9IHByb2plY3ROYW1lLCAgLy8vXHJcbiAgICAgICAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHByb2plY3ROYW1lLCAvLy9cclxuICAgICAgICAgIGVudHJpZXMgPSBsb2FkRW50cmllcyh0b3Btb3N0RGlyZWN0b3J5TmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcyk7XHJcblxyXG4gICAgcHJvamVjdCA9IFByb2plY3QuZnJvbU5hbWVBbmRFbnRyaWVzKG5hbWUsIGVudHJpZXMpO1xyXG4gIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAvLy9cclxuICB9XHJcblxyXG4gIHJldHVybiBwcm9qZWN0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZFJlbGVhc2VzKHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCByZWxlYXNlcztcclxuXHJcbiAgdHJ5IHtcclxuICAgIHJlbGVhc2VzID0gUmVsZWFzZXMuZnJvbU5vdGhpbmcoKTtcclxuXHJcbiAgICBjb25zdCB0b3Btb3N0RmlsZU5hbWVzID0gdG9wbW9zdEZpbGVOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgocHJvamVjdHNEaXJlY3RvcnlQYXRoKSxcclxuICAgICAgICAgIHJlbGVhc2VOYW1lcyA9IHRvcG1vc3RGaWxlTmFtZXM7ICAvLy9cclxuXHJcbiAgICByZWxlYXNlTmFtZXMuZm9yRWFjaCgocmVsZWFzZU5hbWUpID0+IHtcclxuICAgICAgY29uc3QgcmVsZWFzZSA9IGxvYWRSZWxlYXNlKHJlbGVhc2VOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgICAgaWYgKHJlbGVhc2UgIT09IG51bGwpIHtcclxuICAgICAgICByZWxlYXNlcy5hZGRSZWxlYXNlKHJlbGVhc2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgcmVsZWFzZXMgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlbGVhc2VzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZFByb2plY3RzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMpIHtcclxuICBsZXQgcHJvamVjdHM7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBwcm9qZWN0cyA9IFByb2plY3RzLmZyb21Ob3RoaW5nKCk7XHJcblxyXG4gICAgY29uc3QgdG9wbW9zdERpcmVjdG9yeU5hbWVzID0gdG9wbW9zdERpcmVjdG9yeU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aChwcm9qZWN0c0RpcmVjdG9yeVBhdGgpLFxyXG4gICAgICAgICAgcHJvamVjdE5hbWVzID0gdG9wbW9zdERpcmVjdG9yeU5hbWVzOyAvLy9cclxuXHJcbiAgICBwcm9qZWN0TmFtZXMuZm9yRWFjaCgocHJvamVjdE5hbWUpID0+IHtcclxuICAgICAgY29uc3QgcHJvamVjdCA9IGxvYWRQcm9qZWN0KHByb2plY3ROYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzKTtcclxuXHJcbiAgICAgIGlmIChwcm9qZWN0ICE9PSBudWxsKSB7XHJcbiAgICAgICAgcHJvamVjdHMuYWRkUHJvamVjdChwcm9qZWN0KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIHByb2plY3RzID0gbnVsbDtcclxuICB9XHJcblxyXG4gIHJldHVybiBwcm9qZWN0cztcclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIGxvYWRGaWxlLFxyXG4gIHNhdmVGaWxlLFxyXG4gIGxvYWRGaWxlcyxcclxuICBsb2FkUmVsZWFzZSxcclxuICBsb2FkUHJvamVjdCxcclxuICBsb2FkUmVsZWFzZXMsXHJcbiAgbG9hZFByb2plY3RzXHJcbn07XHJcblxyXG5mdW5jdGlvbiBsb2FkRW50cmllcyh0b3Btb3N0RGlyZWN0b3J5TmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcykge1xyXG4gIGNvbnN0IGVudHJpZXMgPSBFbnRyaWVzLmZyb21Ob3RoaW5nKCksXHJcbiAgICAgICAgcmVsYXRpdmVEaXJlY3RvcnlQYXRoID0gdG9wbW9zdERpcmVjdG9yeU5hbWU7ICAvLy9cclxuXHJcbiAgZW50cmllc0Zyb21SZWxhdGl2ZURpcmVjdG9yeVBhdGgoZW50cmllcywgcmVsYXRpdmVEaXJlY3RvcnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzKTtcclxuXHJcbiAgcmV0dXJuIGVudHJpZXM7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGxvYWREaXJlY3RvcnkocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgY29uc3QgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHBhdGgpLFxyXG4gICAgICAgIGVudHJ5RGlyZWN0b3J5ID0gaXNFbnRyeURpcmVjdG9yeShhYnNvbHV0ZVBhdGgpLFxyXG4gICAgICAgIGRpcmVjdG9yeSA9IGVudHJ5RGlyZWN0b3J5ID9cclxuICAgICAgICAgICAgICAgICAgICAgIERpcmVjdG9yeS5mcm9tUGF0aChwYXRoKSA6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG51bGw7XHJcblxyXG4gIHJldHVybiBkaXJlY3Rvcnk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZpbGVGcm9tUHJvamVjdChwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgZmlsZSA9IG51bGw7XHJcblxyXG4gIGNvbnN0IGFic29sdXRlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBwYXRoKSxcclxuICAgICAgICBlbnRyeUZpbGUgPSBpc0VudHJ5RmlsZShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICBpZiAoZW50cnlGaWxlKSB7XHJcbiAgICBjb25zdCByZWxlYXNlZCA9IGZhbHNlLFxyXG4gICAgICAgICAgY29udGVudCA9IHJlYWRGaWxlKGFic29sdXRlUGF0aCk7XHJcblxyXG4gICAgZmlsZSA9IEZpbGUuZnJvbVBhdGhDb250ZW50QW5kUmVsZWFzZWQocGF0aCwgY29udGVudCwgcmVsZWFzZWQpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGZpbGU7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZpbGVGcm9tUmVsZWFzZShwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lRnJvbVBhdGgocGF0aCksXHJcbiAgICAgICAgdG9wbW9zdEZpbGVOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWUsIC8vL1xyXG4gICAgICAgIGZpbGVQYXRoID0gcGF0aCwgIC8vL1xyXG4gICAgICAgIHJlbGVhc2UgPSBsb2FkUmVsZWFzZSh0b3Btb3N0RmlsZU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCksXHJcbiAgICAgICAgZmlsZSA9IHJlbGVhc2UuZmluZEZpbGUoZmlsZVBhdGgpO1xyXG5cclxuICByZXR1cm4gZmlsZTtcclxufVxyXG5cclxuZnVuY3Rpb24gZmlsZXNGcm9tUHJvamVjdChwYXRocywgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgY29uc3QgZmlsZXMgPSBGaWxlcy5mcm9tTm90aGluZygpO1xyXG5cclxuICBwYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XHJcbiAgICBjb25zdCBmaWxlID0gZmlsZUZyb21Qcm9qZWN0KHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gICAgZmlsZXMuYWRkRmlsZShmaWxlKTtcclxuICB9KTtcclxuXHJcbiAgcmV0dXJuIGZpbGVzO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmaWxlc0Zyb21SZWxlYXNlKHBhdGhzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCBmaWxlcyA9IEZpbGVzLmZyb21Ob3RoaW5nKCksXHJcbiAgICAgICAgcGF0aHNMZW5ndGggPSBwYXRocy5sZW5ndGg7XHJcblxyXG4gIGlmIChwYXRoc0xlbmd0aCA+IDApIHtcclxuICAgIGNvbnN0IGZpcnN0UGF0aCA9IGZpcnN0KHBhdGhzKSxcclxuICAgICAgICAgIHBhdGggPSBmaXJzdFBhdGgsIC8vL1xyXG4gICAgICAgICAgdG9wbW9zdERpcmVjdG9yeU5hbWUgPSB0b3Btb3N0RGlyZWN0b3J5TmFtZUZyb21QYXRoKHBhdGgpLFxyXG4gICAgICAgICAgdG9wbW9zdEZpbGVOYW1lID0gdG9wbW9zdERpcmVjdG9yeU5hbWUsIC8vL1xyXG4gICAgICAgICAgcmVsZWFzZSA9IGxvYWRSZWxlYXNlKHRvcG1vc3RGaWxlTmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICBwYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aCwgIC8vL1xyXG4gICAgICAgICAgICBmaWxlID0gcmVsZWFzZS5maW5kRmlsZShmaWxlUGF0aCk7XHJcblxyXG4gICAgICBmaWxlcy5hZGRGaWxlKGZpbGUpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gZmlsZXM7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoKGVudHJpZXMsIHJlbGF0aXZlRGlyZWN0b3J5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcykge1xyXG4gIGNvbnN0IGFic29sdXRlRGlyZWN0b3J5UGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCByZWxhdGl2ZURpcmVjdG9yeVBhdGgpLFxyXG4gICAgICAgIHN1YkVudHJ5TmFtZXMgPSByZWFkRGlyZWN0b3J5KGFic29sdXRlRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHN1YkVudHJ5TmFtZXMuZm9yRWFjaCgoc3ViRW50cnlOYW1lKSA9PiB7XHJcbiAgICBjb25zdCBzdWJFbnRyeU5hbWVIaWRkZW5OYW1lID0gaXNOYW1lSGlkZGVuTmFtZShzdWJFbnRyeU5hbWUpLFxyXG4gICAgICAgICAgbG9hZFVucmVjb2duaXNlZEZpbGVzQW5kRGlyZWN0b3JpZXMgPSAhbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXM7XHJcblxyXG4gICAgaWYgKCFzdWJFbnRyeU5hbWVIaWRkZW5OYW1lKSB7XHJcbiAgICAgIGNvbnN0IHBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHJlbGF0aXZlRGlyZWN0b3J5UGF0aCwgc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgICAgZGlyZWN0b3J5ID0gbG9hZERpcmVjdG9yeShwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgICAgaWYgKGRpcmVjdG9yeSAhPT0gbnVsbCkge1xyXG4gICAgICAgIGNvbnN0IGRpcmVjdG9yeVBhdGggPSBwYXRoOyAvLy9cclxuXHJcbiAgICAgICAgaWYgKGxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgICAgICAgICBlbnRyaWVzLmFkZERpcmVjdG9yeShkaXJlY3RvcnkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZW50cmllc0Zyb21SZWxhdGl2ZURpcmVjdG9yeVBhdGgoZW50cmllcywgZGlyZWN0b3J5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcyk7IC8vL1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IGZpbGUgPSBsb2FkRmlsZShwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgICAgICBpZiAoZmlsZSAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBmaWxlLmdldFBhdGgoKSxcclxuICAgICAgICAgICAgICAgIGZpbGVQYXRoUmVjb2duaXNlZEZpbGVQYXRoID0gaXNGaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aChmaWxlUGF0aCksXHJcbiAgICAgICAgICAgICAgICBmaWxlUmVjb2duaXNlZEZpbGUgPSBmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aDsgIC8vL1xyXG5cclxuICAgICAgICAgIGlmIChmaWxlUmVjb2duaXNlZEZpbGUgfHwgbG9hZFVucmVjb2duaXNlZEZpbGVzQW5kRGlyZWN0b3JpZXMpIHtcclxuICAgICAgICAgICAgZW50cmllcy5hZGRGaWxlKGZpbGUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH0pO1xyXG59XHJcblxyXG5mdW5jdGlvbiB0b3Btb3N0RmlsZU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aChwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgdG9wbW9zdEZpbGVOYW1lcztcclxuXHJcbiAgY29uc3Qgc3ViRW50cnlOYW1lcyA9IHJlYWREaXJlY3RvcnkocHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgdG9wbW9zdEZpbGVOYW1lcyA9IHN1YkVudHJ5TmFtZXMucmVkdWNlKCh0b3Btb3N0RmlsZU5hbWVzLCBzdWJFbnRyeU5hbWUpID0+IHtcclxuICAgIGNvbnN0IGFic29sdXRlU3ViRW50cnlQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICBzdWJFbnRyeU5hbWVIaWRkZW5OYW1lID0gaXNOYW1lSGlkZGVuTmFtZShzdWJFbnRyeU5hbWUpO1xyXG5cclxuICAgIGlmICghc3ViRW50cnlOYW1lSGlkZGVuTmFtZSkge1xyXG4gICAgICBjb25zdCBzdWJFbnRyeUZpbGUgPSBpc0VudHJ5RmlsZShhYnNvbHV0ZVN1YkVudHJ5UGF0aCk7XHJcblxyXG4gICAgICBpZiAoc3ViRW50cnlGaWxlKSB7XHJcbiAgICAgICAgY29uc3QgdG9wbW9zdEZpbGVOYW1lID0gc3ViRW50cnlOYW1lOyAgLy8vXHJcblxyXG4gICAgICAgIHRvcG1vc3RGaWxlTmFtZXMucHVzaCh0b3Btb3N0RmlsZU5hbWUpXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdG9wbW9zdEZpbGVOYW1lcztcclxuICB9LCBbXSk7XHJcblxyXG4gIHJldHVybiB0b3Btb3N0RmlsZU5hbWVzO1xyXG59XHJcblxyXG5mdW5jdGlvbiB0b3Btb3N0RGlyZWN0b3J5TmFtZXNGcm9tUHJvamVjdHNEaXJlY3RvcnlQYXRoKHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCB0b3Btb3N0RGlyZWN0b3J5TmFtZXM7XHJcblxyXG4gIGNvbnN0IHN1YkVudHJ5TmFtZXMgPSByZWFkRGlyZWN0b3J5KHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHRvcG1vc3REaXJlY3RvcnlOYW1lcyA9IHN1YkVudHJ5TmFtZXMucmVkdWNlKCh0b3Btb3N0RGlyZWN0b3J5TmFtZXMsIHN1YkVudHJ5TmFtZSkgPT4ge1xyXG4gICAgY29uc3QgYWJzb2x1dGVTdWJFbnRyeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgIHN1YkVudHJ5TmFtZUhpZGRlbk5hbWUgPSBpc05hbWVIaWRkZW5OYW1lKHN1YkVudHJ5TmFtZSk7XHJcblxyXG4gICAgaWYgKCFzdWJFbnRyeU5hbWVIaWRkZW5OYW1lKSB7XHJcbiAgICAgIGNvbnN0IHN1YkVudHJ5RGlyZWN0b3J5ID0gaXNFbnRyeURpcmVjdG9yeShhYnNvbHV0ZVN1YkVudHJ5UGF0aCk7XHJcblxyXG4gICAgICBpZiAoc3ViRW50cnlEaXJlY3RvcnkpIHtcclxuICAgICAgICBjb25zdCB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHN1YkVudHJ5TmFtZTsgIC8vL1xyXG5cclxuICAgICAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZXMucHVzaCh0b3Btb3N0RGlyZWN0b3J5TmFtZSlcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0b3Btb3N0RGlyZWN0b3J5TmFtZXM7XHJcbiAgfSwgW10pO1xyXG5cclxuICByZXR1cm4gdG9wbW9zdERpcmVjdG9yeU5hbWVzO1xyXG59XHJcbiJdLCJuYW1lcyI6WyJsb2FkRmlsZSIsImxvYWRGaWxlcyIsImxvYWRQcm9qZWN0IiwibG9hZFByb2plY3RzIiwibG9hZFJlbGVhc2UiLCJsb2FkUmVsZWFzZXMiLCJzYXZlRmlsZSIsImZpcnN0IiwiYXJyYXlVdGlsaXRpZXMiLCJpc0ZpbGVQYXRoUmVjb2duaXNlZEZpbGVQYXRoIiwiZmlsZVBhdGhVdGlsaXRpZXMiLCJjb25jYXRlbmF0ZVBhdGhzIiwicGF0aFV0aWxpdGllcyIsInRvcG1vc3REaXJlY3RvcnlOYW1lRnJvbVBhdGgiLCJyZWFkRmlsZSIsImZpbGVTeXN0ZW1VdGlsaXRpZXMiLCJ3cml0ZUZpbGUiLCJpc0VudHJ5RmlsZSIsInJlYWREaXJlY3RvcnkiLCJpc0VudHJ5RGlyZWN0b3J5IiwiY2hlY2tFbnRyeUV4aXN0cyIsImNoZWNrRmlsZUV4aXN0cyIsInBhdGgiLCJwcm9qZWN0c0RpcmVjdG9yeVBhdGgiLCJmaWxlIiwidG9wbW9zdERpcmVjdG9yeU5hbWUiLCJhYnNvbHV0ZVBhdGgiLCJlbnRyeURpcmVjdG9yeSIsImZpbGVGcm9tUHJvamVjdCIsImZpbGVGcm9tUmVsZWFzZSIsImVycm9yIiwic3VjY2VzcyIsImZpbGVQYXRoIiwiZ2V0UGF0aCIsImFic29sdXRlRmlsZVBhdGgiLCJmaWxlRXhpc3RzIiwiY29udGVudCIsImdldENvbnRlbnQiLCJwYXRocyIsImZpbGVzIiwiRmlsZXMiLCJmcm9tTm90aGluZyIsInBhdGhzTGVuZ3RoIiwibGVuZ3RoIiwiZmlyc3RQYXRoIiwiZW50cnlFeGlzdHMiLCJmaWxlc0Zyb21Qcm9qZWN0IiwiZmlsZXNGcm9tUmVsZWFzZSIsInJlbGVhc2VOYW1lIiwicmVsZWFzZSIsIm5hbWUiLCJ0b3Btb3N0RmlsZU5hbWUiLCJlbnRyeUZpbGUiLCJqc29uIiwiZW50cmllcyIsIkpTT04iLCJwYXJzZSIsIkVudHJpZXMiLCJmcm9tSlNPTiIsIlJlbGVhc2UiLCJmcm9tTmFtZUFuZEVudHJpZXMiLCJwcm9qZWN0TmFtZSIsImxvYWRPbmx5UmVjb2duaXNlZEZpbGVzIiwicHJvamVjdCIsImxvYWRFbnRyaWVzIiwiUHJvamVjdCIsInJlbGVhc2VzIiwiUmVsZWFzZXMiLCJ0b3Btb3N0RmlsZU5hbWVzIiwidG9wbW9zdEZpbGVOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgiLCJyZWxlYXNlTmFtZXMiLCJmb3JFYWNoIiwiYWRkUmVsZWFzZSIsInByb2plY3RzIiwiUHJvamVjdHMiLCJ0b3Btb3N0RGlyZWN0b3J5TmFtZXMiLCJ0b3Btb3N0RGlyZWN0b3J5TmFtZXNGcm9tUHJvamVjdHNEaXJlY3RvcnlQYXRoIiwicHJvamVjdE5hbWVzIiwiYWRkUHJvamVjdCIsInJlbGF0aXZlRGlyZWN0b3J5UGF0aCIsImVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoIiwibG9hZERpcmVjdG9yeSIsImRpcmVjdG9yeSIsIkRpcmVjdG9yeSIsImZyb21QYXRoIiwicmVsZWFzZWQiLCJGaWxlIiwiZnJvbVBhdGhDb250ZW50QW5kUmVsZWFzZWQiLCJmaW5kRmlsZSIsImFkZEZpbGUiLCJhYnNvbHV0ZURpcmVjdG9yeVBhdGgiLCJzdWJFbnRyeU5hbWVzIiwic3ViRW50cnlOYW1lIiwic3ViRW50cnlOYW1lSGlkZGVuTmFtZSIsImlzTmFtZUhpZGRlbk5hbWUiLCJsb2FkVW5yZWNvZ25pc2VkRmlsZXNBbmREaXJlY3RvcmllcyIsImRpcmVjdG9yeVBhdGgiLCJhZGREaXJlY3RvcnkiLCJmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCIsImZpbGVSZWNvZ25pc2VkRmlsZSIsInJlZHVjZSIsImFic29sdXRlU3ViRW50cnlQYXRoIiwic3ViRW50cnlGaWxlIiwicHVzaCIsInN1YkVudHJ5RGlyZWN0b3J5Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUE2TEEsT0FRRTtlQVJGOztJQTNLZ0JBLFFBQVE7ZUFBUkE7O0lBNENBQyxTQUFTO2VBQVRBOztJQWlFQUMsV0FBVztlQUFYQTs7SUF1Q0FDLFlBQVk7ZUFBWkE7O0lBdkVBQyxXQUFXO2VBQVhBOztJQWdEQUMsWUFBWTtlQUFaQTs7SUF4R0FDLFFBQVE7ZUFBUkE7Ozt5QkFyQ21EOzZCQUNzQztvQkFFeEU7QUFFakMsSUFBTSxBQUFFQyxRQUFVQyx5QkFBYyxDQUF4QkQsT0FDRixBQUFFRSwrQkFBaUNDLGdDQUFpQixDQUFsREQsOEJBQ0FFLG1CQUFtREMsd0JBQWEsQ0FBaEVELGtCQUFrQkUsK0JBQWlDRCx3QkFBYSxDQUE5Q0MsOEJBQ2xCQyxXQU1zQ0MsOEJBQW1CLENBTnpERCxVQUNBRSxZQUtzQ0QsOEJBQW1CLENBTHpEQyxXQUNBQyxjQUlzQ0YsOEJBQW1CLENBSnpERSxhQUNBQyxnQkFHc0NILDhCQUFtQixDQUh6REcsZUFDQUMsbUJBRXNDSiw4QkFBbUIsQ0FGekRJLGtCQUNBQyxtQkFDc0NMLDhCQUFtQixDQUR6REssa0JBQ0FBLEFBQWtCQyxrQkFBb0JOLDhCQUFtQixDQUF6REs7QUFFRCxTQUFTcEIsU0FBU3NCLElBQUksRUFBRUMscUJBQXFCO0lBQ2xELElBQUlDLE9BQU87SUFFWCxJQUFJO1FBQ0YsSUFBTUMsdUJBQXVCWiw2QkFBNkJTO1FBRTFELElBQUlHLHlCQUF5QixNQUFNO1lBQ2pDLElBQU1DLGVBQWVmLGlCQUFpQlksdUJBQXVCRSx1QkFDdkRF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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "occam-file-system",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "6.0.
|
|
4
|
+
"version": "6.0.214",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/occam-file-system",
|
|
7
7
|
"description": "Occam's file system functionality.",
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
"url": "https://github.com/djalbat/occam-file-system"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"necessary": "^14.1
|
|
14
|
-
"occam-entities": "^1.0.
|
|
13
|
+
"necessary": "^14.2.1",
|
|
14
|
+
"occam-entities": "^1.0.176"
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
17
|
"@swc/core": "^1.5.6",
|
|
@@ -235,8 +235,9 @@ function fileFromProject(path, projectsDirectoryPath) {
|
|
|
235
235
|
function fileFromRelease(path, projectsDirectoryPath) {
|
|
236
236
|
const topmostDirectoryName = topmostDirectoryNameFromPath(path),
|
|
237
237
|
topmostFileName = topmostDirectoryName, ///
|
|
238
|
+
filePath = path, ///
|
|
238
239
|
release = loadRelease(topmostFileName, projectsDirectoryPath),
|
|
239
|
-
file = release.
|
|
240
|
+
file = release.findFile(filePath);
|
|
240
241
|
|
|
241
242
|
return file;
|
|
242
243
|
}
|
|
@@ -265,7 +266,8 @@ function filesFromRelease(paths, projectsDirectoryPath) {
|
|
|
265
266
|
release = loadRelease(topmostFileName, projectsDirectoryPath);
|
|
266
267
|
|
|
267
268
|
paths.forEach((path) => {
|
|
268
|
-
const
|
|
269
|
+
const filePath = path, ///
|
|
270
|
+
file = release.findFile(filePath);
|
|
269
271
|
|
|
270
272
|
files.addFile(file);
|
|
271
273
|
});
|