occam-file-system 5.0.199 → 5.0.201
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/editProjectEntry.js +81 -0
- package/lib/main.js +4 -4
- package/package.json +1 -1
- package/src/{renameProjectEntry.js → editProjectEntry.js} +12 -12
- package/src/main.js +1 -1
- package/lib/renameProjectEntry.js +0 -81
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
default: function() {
|
|
13
|
+
return editProjectEntry;
|
|
14
|
+
},
|
|
15
|
+
editEntryOperation: function() {
|
|
16
|
+
return editEntryOperation;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
var _fsextra = require("fs-extra");
|
|
20
|
+
var _necessary = require("necessary");
|
|
21
|
+
var _pathMaps = require("./utilities/pathMaps");
|
|
22
|
+
var concatenatePaths = _necessary.pathUtilities.concatenatePaths, checkEntryExists = _necessary.fileSystemUtilities.checkEntryExists;
|
|
23
|
+
function editProjectEntry(projectsDirectoryPath, json, callback) {
|
|
24
|
+
var pathMaps = json.pathMaps;
|
|
25
|
+
editEntries(pathMaps, projectsDirectoryPath, function(targetEntryPaths) {
|
|
26
|
+
var _$json = {
|
|
27
|
+
targetEntryPaths: targetEntryPaths
|
|
28
|
+
};
|
|
29
|
+
callback(_$json);
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
function editEntryOperation(sourceEntryPath, targetEntryPath, entryDirectory, projectsDirectoryPath, callback) {
|
|
33
|
+
var absoluteSourceEntryPath = concatenatePaths(projectsDirectoryPath, sourceEntryPath), sourceEntryExists = checkEntryExists(absoluteSourceEntryPath);
|
|
34
|
+
if (!sourceEntryExists) {
|
|
35
|
+
targetEntryPath = null;
|
|
36
|
+
callback(sourceEntryPath, targetEntryPath);
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
entryDirectory ? editDirectoryOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) : editFileOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback);
|
|
40
|
+
}
|
|
41
|
+
function editEntries(pathMaps, projectsDirectoryPath, callback) {
|
|
42
|
+
var targetEntryPaths = [];
|
|
43
|
+
(0, _pathMaps.asynchronousForEach)(pathMaps, function(sourceEntryPath, targetEntryPath, entryDirectory, next, done, index) {
|
|
44
|
+
editEntryOperation(sourceEntryPath, targetEntryPath, entryDirectory, projectsDirectoryPath, function(sourceEntryPath, targetEntryPath) {
|
|
45
|
+
targetEntryPaths.push(targetEntryPath);
|
|
46
|
+
next();
|
|
47
|
+
});
|
|
48
|
+
}, function() {
|
|
49
|
+
callback(targetEntryPaths);
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
function editFileOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) {
|
|
53
|
+
var sourceFilePath = sourceEntryPath, targetFilePath = targetEntryPath, absoluteSourceFilePath = concatenatePaths(projectsDirectoryPath, sourceFilePath), absoluteTargetFilePath = concatenatePaths(projectsDirectoryPath, targetFilePath), targetFileExists = checkEntryExists(absoluteTargetFilePath);
|
|
54
|
+
if (targetFileExists) {
|
|
55
|
+
targetEntryPath = sourceEntryPath; ///
|
|
56
|
+
callback(sourceEntryPath, targetEntryPath);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
(0, _fsextra.move)(absoluteSourceFilePath, absoluteTargetFilePath, function(error) {
|
|
60
|
+
if (error) {
|
|
61
|
+
targetEntryPath = sourceEntryPath; ///
|
|
62
|
+
}
|
|
63
|
+
callback(sourceEntryPath, targetEntryPath);
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
function editDirectoryOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) {
|
|
67
|
+
var sourceDirectoryPath = sourceEntryPath, targetDirectoryPath = targetEntryPath, absoluteSourceDirectoryPath = concatenatePaths(projectsDirectoryPath, sourceDirectoryPath), absoluteTargetDirectoryPath = concatenatePaths(projectsDirectoryPath, targetDirectoryPath), targetDirectoryExists = checkEntryExists(absoluteTargetDirectoryPath);
|
|
68
|
+
if (targetDirectoryExists) {
|
|
69
|
+
targetEntryPath = sourceEntryPath; ///
|
|
70
|
+
callback(sourceEntryPath, targetEntryPath);
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
(0, _fsextra.move)(absoluteSourceDirectoryPath, absoluteTargetDirectoryPath, function(error) {
|
|
74
|
+
if (error) {
|
|
75
|
+
targetEntryPath = sourceEntryPath; ///
|
|
76
|
+
}
|
|
77
|
+
callback(sourceEntryPath, targetEntryPath);
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0UHJvamVjdEVudHJ5LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBtb3ZlIGFzIGVkaXQgfSBmcm9tIFwiZnMtZXh0cmFcIjtcbmltcG9ydCB7IHBhdGhVdGlsaXRpZXMsIGZpbGVTeXN0ZW1VdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmltcG9ydCB7IGFzeW5jaHJvbm91c0ZvckVhY2ggfSBmcm9tIFwiLi91dGlsaXRpZXMvcGF0aE1hcHNcIjtcblxuY29uc3QgeyBjb25jYXRlbmF0ZVBhdGhzIH0gPSBwYXRoVXRpbGl0aWVzLFxuICAgICAgeyBjaGVja0VudHJ5RXhpc3RzIH0gPSBmaWxlU3lzdGVtVXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBlZGl0UHJvamVjdEVudHJ5KHByb2plY3RzRGlyZWN0b3J5UGF0aCwganNvbiwgY2FsbGJhY2spIHtcbiAgY29uc3QgeyBwYXRoTWFwcyB9ID0ganNvbjtcblxuICBlZGl0RW50cmllcyhwYXRoTWFwcywgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCAodGFyZ2V0RW50cnlQYXRocykgPT4ge1xuICAgIGNvbnN0IGpzb24gPSB7XG4gICAgICB0YXJnZXRFbnRyeVBhdGhzXG4gICAgfTtcblxuICAgIGNhbGxiYWNrKGpzb24pO1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVkaXRFbnRyeU9wZXJhdGlvbihzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCwgZW50cnlEaXJlY3RvcnksIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgY2FsbGJhY2spIHtcbiAgY29uc3QgYWJzb2x1dGVTb3VyY2VFbnRyeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgc291cmNlRW50cnlQYXRoKSxcbiAgICAgICAgc291cmNlRW50cnlFeGlzdHMgPSBjaGVja0VudHJ5RXhpc3RzKGFic29sdXRlU291cmNlRW50cnlQYXRoKTtcblxuICBpZiAoIXNvdXJjZUVudHJ5RXhpc3RzKSB7XG4gICAgdGFyZ2V0RW50cnlQYXRoID0gbnVsbDtcblxuICAgIGNhbGxiYWNrKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoKTtcblxuICAgIHJldHVybjtcbiAgfVxuXG4gIGVudHJ5RGlyZWN0b3J5ID9cbiAgICBlZGl0RGlyZWN0b3J5T3BlcmF0aW9uKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKSA6XG4gICAgICBlZGl0RmlsZU9wZXJhdGlvbihzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBjYWxsYmFjayk7XG59XG5cbmZ1bmN0aW9uIGVkaXRFbnRyaWVzKHBhdGhNYXBzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKSB7XG4gIGNvbnN0IHRhcmdldEVudHJ5UGF0aHMgPSBbXTtcblxuICBhc3luY2hyb25vdXNGb3JFYWNoKFxuICAgIHBhdGhNYXBzLFxuICAgIChzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCwgZW50cnlEaXJlY3RvcnksIG5leHQsIGRvbmUsIGluZGV4KSA9PiB7XG4gICAgICBlZGl0RW50cnlPcGVyYXRpb24oc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgsIGVudHJ5RGlyZWN0b3J5LCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIChzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCkgPT4ge1xuICAgICAgICB0YXJnZXRFbnRyeVBhdGhzLnB1c2godGFyZ2V0RW50cnlQYXRoKTtcblxuICAgICAgICBuZXh0KCk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgICgpID0+IHtcbiAgICAgIGNhbGxiYWNrKHRhcmdldEVudHJ5UGF0aHMpO1xuICAgIH1cbiAgKTtcbn1cblxuZnVuY3Rpb24gZWRpdEZpbGVPcGVyYXRpb24oc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgY2FsbGJhY2spIHtcbiAgY29uc3Qgc291cmNlRmlsZVBhdGggPSBzb3VyY2VFbnRyeVBhdGgsIC8vL1xuICAgICAgICB0YXJnZXRGaWxlUGF0aCA9IHRhcmdldEVudHJ5UGF0aCwgLy8vXG4gICAgICAgIGFic29sdXRlU291cmNlRmlsZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgc291cmNlRmlsZVBhdGgpLFxuICAgICAgICBhYnNvbHV0ZVRhcmdldEZpbGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHRhcmdldEZpbGVQYXRoKSxcbiAgICAgICAgdGFyZ2V0RmlsZUV4aXN0cyA9IGNoZWNrRW50cnlFeGlzdHMoYWJzb2x1dGVUYXJnZXRGaWxlUGF0aCk7XG5cbiAgaWYgKHRhcmdldEZpbGVFeGlzdHMpIHtcbiAgICB0YXJnZXRFbnRyeVBhdGggPSBzb3VyY2VFbnRyeVBhdGg7ICAvLy9cblxuICAgIGNhbGxiYWNrKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoKTtcblxuICAgIHJldHVybjtcbiAgfVxuXG4gIGVkaXQoYWJzb2x1dGVTb3VyY2VGaWxlUGF0aCwgYWJzb2x1dGVUYXJnZXRGaWxlUGF0aCwgKGVycm9yKSA9PiB7XG4gICAgaWYgKGVycm9yKSB7XG4gICAgICB0YXJnZXRFbnRyeVBhdGggPSBzb3VyY2VFbnRyeVBhdGg7ICAvLy9cbiAgICB9XG5cbiAgICBjYWxsYmFjayhzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBlZGl0RGlyZWN0b3J5T3BlcmF0aW9uKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKSB7XG4gIGNvbnN0IHNvdXJjZURpcmVjdG9yeVBhdGggPSBzb3VyY2VFbnRyeVBhdGgsICAvLy9cbiAgICAgICAgdGFyZ2V0RGlyZWN0b3J5UGF0aCA9IHRhcmdldEVudHJ5UGF0aCwgIC8vL1xuICAgICAgICBhYnNvbHV0ZVNvdXJjZURpcmVjdG9yeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgc291cmNlRGlyZWN0b3J5UGF0aCksXG4gICAgICAgIGFic29sdXRlVGFyZ2V0RGlyZWN0b3J5UGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCB0YXJnZXREaXJlY3RvcnlQYXRoKSxcbiAgICAgICAgdGFyZ2V0RGlyZWN0b3J5RXhpc3RzID0gY2hlY2tFbnRyeUV4aXN0cyhhYnNvbHV0ZVRhcmdldERpcmVjdG9yeVBhdGgpO1xuXG4gIGlmICh0YXJnZXREaXJlY3RvcnlFeGlzdHMpIHtcbiAgICB0YXJnZXRFbnRyeVBhdGggPSBzb3VyY2VFbnRyeVBhdGg7ICAvLy9cblxuICAgIGNhbGxiYWNrKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoKTtcblxuICAgIHJldHVybjtcbiAgfVxuXG4gIGVkaXQoYWJzb2x1dGVTb3VyY2VEaXJlY3RvcnlQYXRoLCBhYnNvbHV0ZVRhcmdldERpcmVjdG9yeVBhdGgsIChlcnJvcikgPT4ge1xuICAgIGlmIChlcnJvcikge1xuICAgICAgdGFyZ2V0RW50cnlQYXRoID0gc291cmNlRW50cnlQYXRoOyAgLy8vXG4gICAgfVxuXG4gICAgY2FsbGJhY2soc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgpO1xuICB9KTtcbn1cbiJdLCJuYW1lcyI6WyJlZGl0UHJvamVjdEVudHJ5IiwiZWRpdEVudHJ5T3BlcmF0aW9uIiwiY29uY2F0ZW5hdGVQYXRocyIsInBhdGhVdGlsaXRpZXMiLCJjaGVja0VudHJ5RXhpc3RzIiwiZmlsZVN5c3RlbVV0aWxpdGllcyIsInByb2plY3RzRGlyZWN0b3J5UGF0aCIsImpzb24iLCJjYWxsYmFjayIsInBhdGhNYXBzIiwiZWRpdEVudHJpZXMiLCJ0YXJnZXRFbnRyeVBhdGhzIiwic291cmNlRW50cnlQYXRoIiwidGFyZ2V0RW50cnlQYXRoIiwiZW50cnlEaXJlY3RvcnkiLCJhYnNvbHV0ZVNvdXJjZUVudHJ5UGF0aCIsInNvdXJjZUVudHJ5RXhpc3RzIiwiZWRpdERpcmVjdG9yeU9wZXJhdGlvbiIsImVkaXRGaWxlT3BlcmF0aW9uIiwiYXN5bmNocm9ub3VzRm9yRWFjaCIsIm5leHQiLCJkb25lIiwiaW5kZXgiLCJwdXNoIiwic291cmNlRmlsZVBhdGgiLCJ0YXJnZXRGaWxlUGF0aCIsImFic29sdXRlU291cmNlRmlsZVBhdGgiLCJhYnNvbHV0ZVRhcmdldEZpbGVQYXRoIiwidGFyZ2V0RmlsZUV4aXN0cyIsImVkaXQiLCJlcnJvciIsInNvdXJjZURpcmVjdG9yeVBhdGgiLCJ0YXJnZXREaXJlY3RvcnlQYXRoIiwiYWJzb2x1dGVTb3VyY2VEaXJlY3RvcnlQYXRoIiwiYWJzb2x1dGVUYXJnZXREaXJlY3RvcnlQYXRoIiwidGFyZ2V0RGlyZWN0b3J5RXhpc3RzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFVQSxPQVVDO2VBVnVCQTs7SUFZUkMsa0JBQWtCO2VBQWxCQTs7O3VCQXBCYTt5QkFDc0I7d0JBRWY7QUFFcEMsSUFBTSxBQUFFQyxtQkFBcUJDLHdCQUFhLENBQWxDRCxrQkFDRixBQUFFRSxtQkFBcUJDLDhCQUFtQixDQUF4Q0Q7QUFFTyxTQUFTSixpQkFBaUJNLHFCQUFxQixFQUFFQyxJQUFJLEVBQUVDLFFBQVEsRUFBRTtJQUM5RSxJQUFNLEFBQUVDLFdBQWFGLEtBQWJFO0lBRVJDLFlBQVlELFVBQVVILHVCQUF1QixTQUFDSyxrQkFBcUI7UUFDakUsSUFBTUosU0FBTztZQUNYSSxrQkFBQUE7UUFDRjtRQUVBSCxTQUFTRDtJQUNYO0FBQ0Y7QUFFTyxTQUFTTixtQkFBbUJXLGVBQWUsRUFBRUMsZUFBZSxFQUFFQyxjQUFjLEVBQUVSLHFCQUFxQixFQUFFRSxRQUFRLEVBQUU7SUFDcEgsSUFBTU8sMEJBQTBCYixpQkFBaUJJLHVCQUF1Qk0sa0JBQ2xFSSxvQkFBb0JaLGlCQUFpQlc7SUFFM0MsSUFBSSxDQUFDQyxtQkFBbUI7UUFDdEJILGtCQUFrQixJQUFJO1FBRXRCTCxTQUFTSSxpQkFBaUJDO1FBRTFCO0lBQ0YsQ0FBQztJQUVEQyxpQkFDRUcsdUJBQXVCTCxpQkFBaUJDLGlCQUFpQlAsdUJBQXVCRSxZQUM5RVUsa0JBQWtCTixpQkFBaUJDLGlCQUFpQlAsdUJBQXVCRSxTQUFTO0FBQzFGO0FBRUEsU0FBU0UsWUFBWUQsUUFBUSxFQUFFSCxxQkFBcUIsRUFBRUUsUUFBUSxFQUFFO0lBQzlELElBQU1HLG1CQUFtQixFQUFFO0lBRTNCUSxJQUFBQSw2QkFBbUIsRUFDakJWLFVBQ0EsU0FBQ0csaUJBQWlCQyxpQkFBaUJDLGdCQUFnQk0sTUFBTUMsTUFBTUMsT0FBVTtRQUN2RXJCLG1CQUFtQlcsaUJBQWlCQyxpQkFBaUJDLGdCQUFnQlIsdUJBQXVCLFNBQUNNLGlCQUFpQkMsaUJBQW9CO1lBQ2hJRixpQkFBaUJZLElBQUksQ0FBQ1Y7WUFFdEJPO1FBQ0Y7SUFDRixHQUNBLFdBQU07UUFDSlosU0FBU0c7SUFDWDtBQUVKO0FBRUEsU0FBU08sa0JBQWtCTixlQUFlLEVBQUVDLGVBQWUsRUFBRVAscUJBQXFCLEVBQUVFLFFBQVEsRUFBRTtJQUM1RixJQUFNZ0IsaUJBQWlCWixpQkFDakJhLGlCQUFpQlosaUJBQ2pCYSx5QkFBeUJ4QixpQkFBaUJJLHVCQUF1QmtCLGlCQUNqRUcseUJBQXlCekIsaUJBQWlCSSx1QkFBdUJtQixpQkFDakVHLG1CQUFtQnhCLGlCQUFpQnVCO0lBRTFDLElBQUlDLGtCQUFrQjtRQUNwQmYsa0JBQWtCRCxpQkFBa0IsR0FBRztRQUV2Q0osU0FBU0ksaUJBQWlCQztRQUUxQjtJQUNGLENBQUM7SUFFRGdCLElBQUFBLGFBQUksRUFBQ0gsd0JBQXdCQyx3QkFBd0IsU0FBQ0csT0FBVTtRQUM5RCxJQUFJQSxPQUFPO1lBQ1RqQixrQkFBa0JELGlCQUFrQixHQUFHO1FBQ3pDLENBQUM7UUFFREosU0FBU0ksaUJBQWlCQztJQUM1QjtBQUNGO0FBRUEsU0FBU0ksdUJBQXVCTCxlQUFlLEVBQUVDLGVBQWUsRUFBRVAscUJBQXFCLEVBQUVFLFFBQVEsRUFBRTtJQUNqRyxJQUFNdUIsc0JBQXNCbkIsaUJBQ3RCb0Isc0JBQXNCbkIsaUJBQ3RCb0IsOEJBQThCL0IsaUJBQWlCSSx1QkFBdUJ5QixzQkFDdEVHLDhCQUE4QmhDLGlCQUFpQkksdUJBQXVCMEIsc0JBQ3RFRyx3QkFBd0IvQixpQkFBaUI4QjtJQUUvQyxJQUFJQyx1QkFBdUI7UUFDekJ0QixrQkFBa0JELGlCQUFrQixHQUFHO1FBRXZDSixTQUFTSSxpQkFBaUJDO1FBRTFCO0lBQ0YsQ0FBQztJQUVEZ0IsSUFBQUEsYUFBSSxFQUFDSSw2QkFBNkJDLDZCQUE2QixTQUFDSixPQUFVO1FBQ3hFLElBQUlBLE9BQU87WUFDVGpCLGtCQUFrQkQsaUJBQWtCLEdBQUc7UUFDekMsQ0FBQztRQUVESixTQUFTSSxpQkFBaUJDO0lBQzVCO0FBQ0YifQ==
|
package/lib/main.js
CHANGED
|
@@ -84,8 +84,8 @@ _export(exports, {
|
|
|
84
84
|
loadReleases: function() {
|
|
85
85
|
return _loadReleases.default;
|
|
86
86
|
},
|
|
87
|
-
|
|
88
|
-
return
|
|
87
|
+
editProjectEntry: function() {
|
|
88
|
+
return _editProjectEntry.default;
|
|
89
89
|
},
|
|
90
90
|
createProjectEntry: function() {
|
|
91
91
|
return _createProjectEntry.default;
|
|
@@ -122,7 +122,7 @@ var _loadProject = /*#__PURE__*/ _interop_require_default(require("./loadProject
|
|
|
122
122
|
var _loadRelease = /*#__PURE__*/ _interop_require_default(require("./loadRelease"));
|
|
123
123
|
var _loadProjects = /*#__PURE__*/ _interop_require_default(require("./loadProjects"));
|
|
124
124
|
var _loadReleases = /*#__PURE__*/ _interop_require_default(require("./loadReleases"));
|
|
125
|
-
var
|
|
125
|
+
var _editProjectEntry = /*#__PURE__*/ _interop_require_default(require("./editProjectEntry"));
|
|
126
126
|
var _createProjectEntry = /*#__PURE__*/ _interop_require_default(require("./createProjectEntry"));
|
|
127
127
|
var _moveProjectEntries = /*#__PURE__*/ _interop_require_default(require("./moveProjectEntries"));
|
|
128
128
|
var _removeProjectEntries = /*#__PURE__*/ _interop_require_default(require("./removeProjectEntries"));
|
|
@@ -132,4 +132,4 @@ function _interop_require_default(obj) {
|
|
|
132
132
|
};
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIEZpbGUgfSBmcm9tIFwiLi9maWxlXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIEZpbGVzIH0gZnJvbSBcIi4vZmlsZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVmVyc2lvbiB9IGZyb20gXCIuL3ZlcnNpb25cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRW50cmllcyB9IGZyb20gXCIuL2VudHJpZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmVsZWFzZSB9IGZyb20gXCIuL3JlbGVhc2VcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdHMgfSBmcm9tIFwiLi9wcm9qZWN0c1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBSZWxlYXNlcyB9IGZyb20gXCIuL3JlbGVhc2VzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIERlcGVuZGVuY3kgfSBmcm9tIFwiLi9kZXBlbmRlbmN5XCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIERlcGVuZGVuY2llcyB9IGZyb20gXCIuL2RlcGVuZGVuY2llc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBTaG9ydGVuZWRWZXJzaW9uIH0gZnJvbSBcIi4vc2hvcnRlbmVkVmVyc2lvblwiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIGZpbGVOYW1lcyB9IGZyb20gXCIuL2ZpbGVOYW1lc1wiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIGh0dHBVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvaHR0cFwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBjb250ZW50VXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2NvbnRlbnRcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZmlsZVBhdGhVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvZmlsZVBhdGhcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgbWV0YUpTT05VdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvbWV0YUpTT05cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZmlsZVN5c3RlbVV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9maWxlU3lzdGVtXCI7XG5cbmV4cG9ydCB7IGRlZmF1bHQgYXMgbG9hZEZpbGUgfSBmcm9tIFwiLi9sb2FkRmlsZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBzYXZlRmlsZSB9IGZyb20gXCIuL3NhdmVGaWxlXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGxvYWRGaWxlcyB9IGZyb20gXCIuL2xvYWRGaWxlc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBzYXZlRmlsZXMgfSBmcm9tIFwiLi9zYXZlRmlsZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgbG9hZFByb2plY3QgfSBmcm9tIFwiLi9sb2FkUHJvamVjdFwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBsb2FkUmVsZWFzZSB9IGZyb20gXCIuL2xvYWRSZWxlYXNlXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGxvYWRQcm9qZWN0cyB9IGZyb20gXCIuL2xvYWRQcm9qZWN0c1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBsb2FkUmVsZWFzZXMgfSBmcm9tIFwiLi9sb2FkUmVsZWFzZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZWRpdFByb2plY3RFbnRyeSB9IGZyb20gXCIuL2VkaXRQcm9qZWN0RW50cnlcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgY3JlYXRlUHJvamVjdEVudHJ5IH0gZnJvbSBcIi4vY3JlYXRlUHJvamVjdEVudHJ5XCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG1vdmVQcm9qZWN0RW50cmllcyB9IGZyb20gXCIuL21vdmVQcm9qZWN0RW50cmllc1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyByZW1vdmVQcm9qZWN0RW50cmllcyB9IGZyb20gXCIuL3JlbW92ZVByb2plY3RFbnRyaWVzXCI7XG4iXSwibmFtZXMiOlsiRmlsZSIsIkZpbGVzIiwiVmVyc2lvbiIsIkVudHJpZXMiLCJQcm9qZWN0IiwiUmVsZWFzZSIsIlByb2plY3RzIiwiUmVsZWFzZXMiLCJEZXBlbmRlbmN5IiwiRGVwZW5kZW5jaWVzIiwiU2hvcnRlbmVkVmVyc2lvbiIsImZpbGVOYW1lcyIsImh0dHBVdGlsaXRpZXMiLCJjb250ZW50VXRpbGl0aWVzIiwiZmlsZVBhdGhVdGlsaXRpZXMiLCJtZXRhSlNPTlV0aWxpdGllcyIsImZpbGVTeXN0ZW1VdGlsaXRpZXMiLCJsb2FkRmlsZSIsInNhdmVGaWxlIiwibG9hZEZpbGVzIiwic2F2ZUZpbGVzIiwibG9hZFByb2plY3QiLCJsb2FkUmVsZWFzZSIsImxvYWRQcm9qZWN0cyIsImxvYWRSZWxlYXNlcyIsImVkaXRQcm9qZWN0RW50cnkiLCJjcmVhdGVQcm9qZWN0RW50cnkiLCJtb3ZlUHJvamVjdEVudHJpZXMiLCJyZW1vdmVQcm9qZWN0RW50cmllcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBRW9CQSxJQUFJO2VBQUpBLGFBQUk7O0lBQ0pDLEtBQUs7ZUFBTEEsY0FBSzs7SUFDTEMsT0FBTztlQUFQQSxnQkFBTzs7SUFDUEMsT0FBTztlQUFQQSxnQkFBTzs7SUFDUEMsT0FBTztlQUFQQSxnQkFBTzs7SUFDUEMsT0FBTztlQUFQQSxnQkFBTzs7SUFDUEMsUUFBUTtlQUFSQSxpQkFBUTs7SUFDUkMsUUFBUTtlQUFSQSxpQkFBUTs7SUFDUkMsVUFBVTtlQUFWQSxtQkFBVTs7SUFDVkMsWUFBWTtlQUFaQSxxQkFBWTs7SUFDWkMsZ0JBQWdCO2VBQWhCQSx5QkFBZ0I7O0lBRWhCQyxTQUFTO2VBQVRBLGtCQUFTOztJQUVUQyxhQUFhO2VBQWJBLGFBQWE7O0lBQ2JDLGdCQUFnQjtlQUFoQkEsZ0JBQWdCOztJQUNoQkMsaUJBQWlCO2VBQWpCQSxpQkFBaUI7O0lBQ2pCQyxpQkFBaUI7ZUFBakJBLGlCQUFpQjs7SUFDakJDLG1CQUFtQjtlQUFuQkEsbUJBQW1COztJQUVuQkMsUUFBUTtlQUFSQSxpQkFBUTs7SUFDUkMsUUFBUTtlQUFSQSxpQkFBUTs7SUFDUkMsU0FBUztlQUFUQSxrQkFBUzs7SUFDVEMsU0FBUztlQUFUQSxrQkFBUzs7SUFDVEMsV0FBVztlQUFYQSxvQkFBVzs7SUFDWEMsV0FBVztlQUFYQSxvQkFBVzs7SUFDWEMsWUFBWTtlQUFaQSxxQkFBWTs7SUFDWkMsWUFBWTtlQUFaQSxxQkFBWTs7SUFDWkMsZ0JBQWdCO2VBQWhCQSx5QkFBZ0I7O0lBQ2hCQyxrQkFBa0I7ZUFBbEJBLDJCQUFrQjs7SUFDbEJDLGtCQUFrQjtlQUFsQkEsMkJBQWtCOztJQUNsQkMsb0JBQW9CO2VBQXBCQSw2QkFBb0I7OzsyREEvQlI7NERBQ0M7OERBQ0U7OERBQ0E7OERBQ0E7OERBQ0E7K0RBQ0M7K0RBQ0E7aUVBQ0U7bUVBQ0U7dUVBQ0k7Z0VBRVA7MkRBRUk7OERBQ0c7K0RBQ0M7K0RBQ0E7aUVBQ0U7K0RBRVg7K0RBQ0E7Z0VBQ0M7Z0VBQ0E7a0VBQ0U7a0VBQ0E7bUVBQ0M7bUVBQ0E7dUVBQ0k7eUVBQ0U7eUVBQ0E7MkVBQ0UifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { move as
|
|
3
|
+
import { move as edit } from "fs-extra";
|
|
4
4
|
import { pathUtilities, fileSystemUtilities } from "necessary";
|
|
5
5
|
|
|
6
6
|
import { asynchronousForEach } from "./utilities/pathMaps";
|
|
@@ -8,10 +8,10 @@ import { asynchronousForEach } from "./utilities/pathMaps";
|
|
|
8
8
|
const { concatenatePaths } = pathUtilities,
|
|
9
9
|
{ checkEntryExists } = fileSystemUtilities;
|
|
10
10
|
|
|
11
|
-
export default function
|
|
11
|
+
export default function editProjectEntry(projectsDirectoryPath, json, callback) {
|
|
12
12
|
const { pathMaps } = json;
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
editEntries(pathMaps, projectsDirectoryPath, (targetEntryPaths) => {
|
|
15
15
|
const json = {
|
|
16
16
|
targetEntryPaths
|
|
17
17
|
};
|
|
@@ -20,7 +20,7 @@ export default function renameProjectEntry(projectsDirectoryPath, json, callback
|
|
|
20
20
|
});
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
export function
|
|
23
|
+
export function editEntryOperation(sourceEntryPath, targetEntryPath, entryDirectory, projectsDirectoryPath, callback) {
|
|
24
24
|
const absoluteSourceEntryPath = concatenatePaths(projectsDirectoryPath, sourceEntryPath),
|
|
25
25
|
sourceEntryExists = checkEntryExists(absoluteSourceEntryPath);
|
|
26
26
|
|
|
@@ -33,17 +33,17 @@ export function renameEntryOperation(sourceEntryPath, targetEntryPath, entryDire
|
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
entryDirectory ?
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
editDirectoryOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) :
|
|
37
|
+
editFileOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback);
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
-
function
|
|
40
|
+
function editEntries(pathMaps, projectsDirectoryPath, callback) {
|
|
41
41
|
const targetEntryPaths = [];
|
|
42
42
|
|
|
43
43
|
asynchronousForEach(
|
|
44
44
|
pathMaps,
|
|
45
45
|
(sourceEntryPath, targetEntryPath, entryDirectory, next, done, index) => {
|
|
46
|
-
|
|
46
|
+
editEntryOperation(sourceEntryPath, targetEntryPath, entryDirectory, projectsDirectoryPath, (sourceEntryPath, targetEntryPath) => {
|
|
47
47
|
targetEntryPaths.push(targetEntryPath);
|
|
48
48
|
|
|
49
49
|
next();
|
|
@@ -55,7 +55,7 @@ function renameEntries(pathMaps, projectsDirectoryPath, callback) {
|
|
|
55
55
|
);
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
function
|
|
58
|
+
function editFileOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) {
|
|
59
59
|
const sourceFilePath = sourceEntryPath, ///
|
|
60
60
|
targetFilePath = targetEntryPath, ///
|
|
61
61
|
absoluteSourceFilePath = concatenatePaths(projectsDirectoryPath, sourceFilePath),
|
|
@@ -70,7 +70,7 @@ function renameFileOperation(sourceEntryPath, targetEntryPath, projectsDirectory
|
|
|
70
70
|
return;
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
-
|
|
73
|
+
edit(absoluteSourceFilePath, absoluteTargetFilePath, (error) => {
|
|
74
74
|
if (error) {
|
|
75
75
|
targetEntryPath = sourceEntryPath; ///
|
|
76
76
|
}
|
|
@@ -79,7 +79,7 @@ function renameFileOperation(sourceEntryPath, targetEntryPath, projectsDirectory
|
|
|
79
79
|
});
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
function
|
|
82
|
+
function editDirectoryOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) {
|
|
83
83
|
const sourceDirectoryPath = sourceEntryPath, ///
|
|
84
84
|
targetDirectoryPath = targetEntryPath, ///
|
|
85
85
|
absoluteSourceDirectoryPath = concatenatePaths(projectsDirectoryPath, sourceDirectoryPath),
|
|
@@ -94,7 +94,7 @@ function renameDirectoryOperation(sourceEntryPath, targetEntryPath, projectsDire
|
|
|
94
94
|
return;
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
|
|
97
|
+
edit(absoluteSourceDirectoryPath, absoluteTargetDirectoryPath, (error) => {
|
|
98
98
|
if (error) {
|
|
99
99
|
targetEntryPath = sourceEntryPath; ///
|
|
100
100
|
}
|
package/src/main.js
CHANGED
|
@@ -28,7 +28,7 @@ export { default as loadProject } from "./loadProject";
|
|
|
28
28
|
export { default as loadRelease } from "./loadRelease";
|
|
29
29
|
export { default as loadProjects } from "./loadProjects";
|
|
30
30
|
export { default as loadReleases } from "./loadReleases";
|
|
31
|
-
export { default as
|
|
31
|
+
export { default as editProjectEntry } from "./editProjectEntry";
|
|
32
32
|
export { default as createProjectEntry } from "./createProjectEntry";
|
|
33
33
|
export { default as moveProjectEntries } from "./moveProjectEntries";
|
|
34
34
|
export { default as removeProjectEntries } from "./removeProjectEntries";
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
default: function() {
|
|
13
|
-
return renameProjectEntry;
|
|
14
|
-
},
|
|
15
|
-
renameEntryOperation: function() {
|
|
16
|
-
return renameEntryOperation;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
var _fsextra = require("fs-extra");
|
|
20
|
-
var _necessary = require("necessary");
|
|
21
|
-
var _pathMaps = require("./utilities/pathMaps");
|
|
22
|
-
var concatenatePaths = _necessary.pathUtilities.concatenatePaths, checkEntryExists = _necessary.fileSystemUtilities.checkEntryExists;
|
|
23
|
-
function renameProjectEntry(projectsDirectoryPath, json, callback) {
|
|
24
|
-
var pathMaps = json.pathMaps;
|
|
25
|
-
renameEntries(pathMaps, projectsDirectoryPath, function(targetEntryPaths) {
|
|
26
|
-
var _$json = {
|
|
27
|
-
targetEntryPaths: targetEntryPaths
|
|
28
|
-
};
|
|
29
|
-
callback(_$json);
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
function renameEntryOperation(sourceEntryPath, targetEntryPath, entryDirectory, projectsDirectoryPath, callback) {
|
|
33
|
-
var absoluteSourceEntryPath = concatenatePaths(projectsDirectoryPath, sourceEntryPath), sourceEntryExists = checkEntryExists(absoluteSourceEntryPath);
|
|
34
|
-
if (!sourceEntryExists) {
|
|
35
|
-
targetEntryPath = null;
|
|
36
|
-
callback(sourceEntryPath, targetEntryPath);
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
entryDirectory ? renameDirectoryOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) : renameFileOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback);
|
|
40
|
-
}
|
|
41
|
-
function renameEntries(pathMaps, projectsDirectoryPath, callback) {
|
|
42
|
-
var targetEntryPaths = [];
|
|
43
|
-
(0, _pathMaps.asynchronousForEach)(pathMaps, function(sourceEntryPath, targetEntryPath, entryDirectory, next, done, index) {
|
|
44
|
-
renameEntryOperation(sourceEntryPath, targetEntryPath, entryDirectory, projectsDirectoryPath, function(sourceEntryPath, targetEntryPath) {
|
|
45
|
-
targetEntryPaths.push(targetEntryPath);
|
|
46
|
-
next();
|
|
47
|
-
});
|
|
48
|
-
}, function() {
|
|
49
|
-
callback(targetEntryPaths);
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
function renameFileOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) {
|
|
53
|
-
var sourceFilePath = sourceEntryPath, targetFilePath = targetEntryPath, absoluteSourceFilePath = concatenatePaths(projectsDirectoryPath, sourceFilePath), absoluteTargetFilePath = concatenatePaths(projectsDirectoryPath, targetFilePath), targetFileExists = checkEntryExists(absoluteTargetFilePath);
|
|
54
|
-
if (targetFileExists) {
|
|
55
|
-
targetEntryPath = sourceEntryPath; ///
|
|
56
|
-
callback(sourceEntryPath, targetEntryPath);
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
(0, _fsextra.move)(absoluteSourceFilePath, absoluteTargetFilePath, function(error) {
|
|
60
|
-
if (error) {
|
|
61
|
-
targetEntryPath = sourceEntryPath; ///
|
|
62
|
-
}
|
|
63
|
-
callback(sourceEntryPath, targetEntryPath);
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
function renameDirectoryOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) {
|
|
67
|
-
var sourceDirectoryPath = sourceEntryPath, targetDirectoryPath = targetEntryPath, absoluteSourceDirectoryPath = concatenatePaths(projectsDirectoryPath, sourceDirectoryPath), absoluteTargetDirectoryPath = concatenatePaths(projectsDirectoryPath, targetDirectoryPath), targetDirectoryExists = checkEntryExists(absoluteTargetDirectoryPath);
|
|
68
|
-
if (targetDirectoryExists) {
|
|
69
|
-
targetEntryPath = sourceEntryPath; ///
|
|
70
|
-
callback(sourceEntryPath, targetEntryPath);
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
(0, _fsextra.move)(absoluteSourceDirectoryPath, absoluteTargetDirectoryPath, function(error) {
|
|
74
|
-
if (error) {
|
|
75
|
-
targetEntryPath = sourceEntryPath; ///
|
|
76
|
-
}
|
|
77
|
-
callback(sourceEntryPath, targetEntryPath);
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9yZW5hbWVQcm9qZWN0RW50cnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IG1vdmUgYXMgcmVuYW1lIH0gZnJvbSBcImZzLWV4dHJhXCI7XG5pbXBvcnQgeyBwYXRoVXRpbGl0aWVzLCBmaWxlU3lzdGVtVXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgeyBhc3luY2hyb25vdXNGb3JFYWNoIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3BhdGhNYXBzXCI7XG5cbmNvbnN0IHsgY29uY2F0ZW5hdGVQYXRocyB9ID0gcGF0aFV0aWxpdGllcyxcbiAgICAgIHsgY2hlY2tFbnRyeUV4aXN0cyB9ID0gZmlsZVN5c3RlbVV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gcmVuYW1lUHJvamVjdEVudHJ5KHByb2plY3RzRGlyZWN0b3J5UGF0aCwganNvbiwgY2FsbGJhY2spIHtcbiAgY29uc3QgeyBwYXRoTWFwcyB9ID0ganNvbjtcblxuICByZW5hbWVFbnRyaWVzKHBhdGhNYXBzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsICh0YXJnZXRFbnRyeVBhdGhzKSA9PiB7XG4gICAgY29uc3QganNvbiA9IHtcbiAgICAgIHRhcmdldEVudHJ5UGF0aHNcbiAgICB9O1xuXG4gICAgY2FsbGJhY2soanNvbik7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVuYW1lRW50cnlPcGVyYXRpb24oc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgsIGVudHJ5RGlyZWN0b3J5LCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKSB7XG4gIGNvbnN0IGFic29sdXRlU291cmNlRW50cnlQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHNvdXJjZUVudHJ5UGF0aCksXG4gICAgICAgIHNvdXJjZUVudHJ5RXhpc3RzID0gY2hlY2tFbnRyeUV4aXN0cyhhYnNvbHV0ZVNvdXJjZUVudHJ5UGF0aCk7XG5cbiAgaWYgKCFzb3VyY2VFbnRyeUV4aXN0cykge1xuICAgIHRhcmdldEVudHJ5UGF0aCA9IG51bGw7XG5cbiAgICBjYWxsYmFjayhzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCk7XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBlbnRyeURpcmVjdG9yeSA/XG4gICAgcmVuYW1lRGlyZWN0b3J5T3BlcmF0aW9uKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKSA6XG4gICAgICByZW5hbWVGaWxlT3BlcmF0aW9uKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKTtcbn1cblxuZnVuY3Rpb24gcmVuYW1lRW50cmllcyhwYXRoTWFwcywgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBjYWxsYmFjaykge1xuICBjb25zdCB0YXJnZXRFbnRyeVBhdGhzID0gW107XG5cbiAgYXN5bmNocm9ub3VzRm9yRWFjaChcbiAgICBwYXRoTWFwcyxcbiAgICAoc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgsIGVudHJ5RGlyZWN0b3J5LCBuZXh0LCBkb25lLCBpbmRleCkgPT4ge1xuICAgICAgcmVuYW1lRW50cnlPcGVyYXRpb24oc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgsIGVudHJ5RGlyZWN0b3J5LCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIChzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCkgPT4ge1xuICAgICAgICB0YXJnZXRFbnRyeVBhdGhzLnB1c2godGFyZ2V0RW50cnlQYXRoKTtcblxuICAgICAgICBuZXh0KCk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgICgpID0+IHtcbiAgICAgIGNhbGxiYWNrKHRhcmdldEVudHJ5UGF0aHMpO1xuICAgIH1cbiAgKTtcbn1cblxuZnVuY3Rpb24gcmVuYW1lRmlsZU9wZXJhdGlvbihzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBjYWxsYmFjaykge1xuICBjb25zdCBzb3VyY2VGaWxlUGF0aCA9IHNvdXJjZUVudHJ5UGF0aCwgLy8vXG4gICAgICAgIHRhcmdldEZpbGVQYXRoID0gdGFyZ2V0RW50cnlQYXRoLCAvLy9cbiAgICAgICAgYWJzb2x1dGVTb3VyY2VGaWxlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBzb3VyY2VGaWxlUGF0aCksXG4gICAgICAgIGFic29sdXRlVGFyZ2V0RmlsZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgdGFyZ2V0RmlsZVBhdGgpLFxuICAgICAgICB0YXJnZXRGaWxlRXhpc3RzID0gY2hlY2tFbnRyeUV4aXN0cyhhYnNvbHV0ZVRhcmdldEZpbGVQYXRoKTtcblxuICBpZiAodGFyZ2V0RmlsZUV4aXN0cykge1xuICAgIHRhcmdldEVudHJ5UGF0aCA9IHNvdXJjZUVudHJ5UGF0aDsgIC8vL1xuXG4gICAgY2FsbGJhY2soc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcmVuYW1lKGFic29sdXRlU291cmNlRmlsZVBhdGgsIGFic29sdXRlVGFyZ2V0RmlsZVBhdGgsIChlcnJvcikgPT4ge1xuICAgIGlmIChlcnJvcikge1xuICAgICAgdGFyZ2V0RW50cnlQYXRoID0gc291cmNlRW50cnlQYXRoOyAgLy8vXG4gICAgfVxuXG4gICAgY2FsbGJhY2soc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgpO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gcmVuYW1lRGlyZWN0b3J5T3BlcmF0aW9uKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKSB7XG4gIGNvbnN0IHNvdXJjZURpcmVjdG9yeVBhdGggPSBzb3VyY2VFbnRyeVBhdGgsICAvLy9cbiAgICAgICAgdGFyZ2V0RGlyZWN0b3J5UGF0aCA9IHRhcmdldEVudHJ5UGF0aCwgIC8vL1xuICAgICAgICBhYnNvbHV0ZVNvdXJjZURpcmVjdG9yeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgc291cmNlRGlyZWN0b3J5UGF0aCksXG4gICAgICAgIGFic29sdXRlVGFyZ2V0RGlyZWN0b3J5UGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCB0YXJnZXREaXJlY3RvcnlQYXRoKSxcbiAgICAgICAgdGFyZ2V0RGlyZWN0b3J5RXhpc3RzID0gY2hlY2tFbnRyeUV4aXN0cyhhYnNvbHV0ZVRhcmdldERpcmVjdG9yeVBhdGgpO1xuXG4gIGlmICh0YXJnZXREaXJlY3RvcnlFeGlzdHMpIHtcbiAgICB0YXJnZXRFbnRyeVBhdGggPSBzb3VyY2VFbnRyeVBhdGg7ICAvLy9cblxuICAgIGNhbGxiYWNrKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoKTtcblxuICAgIHJldHVybjtcbiAgfVxuXG4gIHJlbmFtZShhYnNvbHV0ZVNvdXJjZURpcmVjdG9yeVBhdGgsIGFic29sdXRlVGFyZ2V0RGlyZWN0b3J5UGF0aCwgKGVycm9yKSA9PiB7XG4gICAgaWYgKGVycm9yKSB7XG4gICAgICB0YXJnZXRFbnRyeVBhdGggPSBzb3VyY2VFbnRyeVBhdGg7ICAvLy9cbiAgICB9XG5cbiAgICBjYWxsYmFjayhzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCk7XG4gIH0pO1xufVxuIl0sIm5hbWVzIjpbInJlbmFtZVByb2plY3RFbnRyeSIsInJlbmFtZUVudHJ5T3BlcmF0aW9uIiwiY29uY2F0ZW5hdGVQYXRocyIsInBhdGhVdGlsaXRpZXMiLCJjaGVja0VudHJ5RXhpc3RzIiwiZmlsZVN5c3RlbVV0aWxpdGllcyIsInByb2plY3RzRGlyZWN0b3J5UGF0aCIsImpzb24iLCJjYWxsYmFjayIsInBhdGhNYXBzIiwicmVuYW1lRW50cmllcyIsInRhcmdldEVudHJ5UGF0aHMiLCJzb3VyY2VFbnRyeVBhdGgiLCJ0YXJnZXRFbnRyeVBhdGgiLCJlbnRyeURpcmVjdG9yeSIsImFic29sdXRlU291cmNlRW50cnlQYXRoIiwic291cmNlRW50cnlFeGlzdHMiLCJyZW5hbWVEaXJlY3RvcnlPcGVyYXRpb24iLCJyZW5hbWVGaWxlT3BlcmF0aW9uIiwiYXN5bmNocm9ub3VzRm9yRWFjaCIsIm5leHQiLCJkb25lIiwiaW5kZXgiLCJwdXNoIiwic291cmNlRmlsZVBhdGgiLCJ0YXJnZXRGaWxlUGF0aCIsImFic29sdXRlU291cmNlRmlsZVBhdGgiLCJhYnNvbHV0ZVRhcmdldEZpbGVQYXRoIiwidGFyZ2V0RmlsZUV4aXN0cyIsInJlbmFtZSIsImVycm9yIiwic291cmNlRGlyZWN0b3J5UGF0aCIsInRhcmdldERpcmVjdG9yeVBhdGgiLCJhYnNvbHV0ZVNvdXJjZURpcmVjdG9yeVBhdGgiLCJhYnNvbHV0ZVRhcmdldERpcmVjdG9yeVBhdGgiLCJ0YXJnZXREaXJlY3RvcnlFeGlzdHMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQVVBLE9BVUM7ZUFWdUJBOztJQVlSQyxvQkFBb0I7ZUFBcEJBOzs7dUJBcEJlO3lCQUNvQjt3QkFFZjtBQUVwQyxJQUFNLEFBQUVDLG1CQUFxQkMsd0JBQWEsQ0FBbENELGtCQUNGLEFBQUVFLG1CQUFxQkMsOEJBQW1CLENBQXhDRDtBQUVPLFNBQVNKLG1CQUFtQk0scUJBQXFCLEVBQUVDLElBQUksRUFBRUMsUUFBUSxFQUFFO0lBQ2hGLElBQU0sQUFBRUMsV0FBYUYsS0FBYkU7SUFFUkMsY0FBY0QsVUFBVUgsdUJBQXVCLFNBQUNLLGtCQUFxQjtRQUNuRSxJQUFNSixTQUFPO1lBQ1hJLGtCQUFBQTtRQUNGO1FBRUFILFNBQVNEO0lBQ1g7QUFDRjtBQUVPLFNBQVNOLHFCQUFxQlcsZUFBZSxFQUFFQyxlQUFlLEVBQUVDLGNBQWMsRUFBRVIscUJBQXFCLEVBQUVFLFFBQVEsRUFBRTtJQUN0SCxJQUFNTywwQkFBMEJiLGlCQUFpQkksdUJBQXVCTSxrQkFDbEVJLG9CQUFvQlosaUJBQWlCVztJQUUzQyxJQUFJLENBQUNDLG1CQUFtQjtRQUN0Qkgsa0JBQWtCLElBQUk7UUFFdEJMLFNBQVNJLGlCQUFpQkM7UUFFMUI7SUFDRixDQUFDO0lBRURDLGlCQUNFRyx5QkFBeUJMLGlCQUFpQkMsaUJBQWlCUCx1QkFBdUJFLFlBQ2hGVSxvQkFBb0JOLGlCQUFpQkMsaUJBQWlCUCx1QkFBdUJFLFNBQVM7QUFDNUY7QUFFQSxTQUFTRSxjQUFjRCxRQUFRLEVBQUVILHFCQUFxQixFQUFFRSxRQUFRLEVBQUU7SUFDaEUsSUFBTUcsbUJBQW1CLEVBQUU7SUFFM0JRLElBQUFBLDZCQUFtQixFQUNqQlYsVUFDQSxTQUFDRyxpQkFBaUJDLGlCQUFpQkMsZ0JBQWdCTSxNQUFNQyxNQUFNQyxPQUFVO1FBQ3ZFckIscUJBQXFCVyxpQkFBaUJDLGlCQUFpQkMsZ0JBQWdCUix1QkFBdUIsU0FBQ00saUJBQWlCQyxpQkFBb0I7WUFDbElGLGlCQUFpQlksSUFBSSxDQUFDVjtZQUV0Qk87UUFDRjtJQUNGLEdBQ0EsV0FBTTtRQUNKWixTQUFTRztJQUNYO0FBRUo7QUFFQSxTQUFTTyxvQkFBb0JOLGVBQWUsRUFBRUMsZUFBZSxFQUFFUCxxQkFBcUIsRUFBRUUsUUFBUSxFQUFFO0lBQzlGLElBQU1nQixpQkFBaUJaLGlCQUNqQmEsaUJBQWlCWixpQkFDakJhLHlCQUF5QnhCLGlCQUFpQkksdUJBQXVCa0IsaUJBQ2pFRyx5QkFBeUJ6QixpQkFBaUJJLHVCQUF1Qm1CLGlCQUNqRUcsbUJBQW1CeEIsaUJBQWlCdUI7SUFFMUMsSUFBSUMsa0JBQWtCO1FBQ3BCZixrQkFBa0JELGlCQUFrQixHQUFHO1FBRXZDSixTQUFTSSxpQkFBaUJDO1FBRTFCO0lBQ0YsQ0FBQztJQUVEZ0IsSUFBQUEsYUFBTSxFQUFDSCx3QkFBd0JDLHdCQUF3QixTQUFDRyxPQUFVO1FBQ2hFLElBQUlBLE9BQU87WUFDVGpCLGtCQUFrQkQsaUJBQWtCLEdBQUc7UUFDekMsQ0FBQztRQUVESixTQUFTSSxpQkFBaUJDO0lBQzVCO0FBQ0Y7QUFFQSxTQUFTSSx5QkFBeUJMLGVBQWUsRUFBRUMsZUFBZSxFQUFFUCxxQkFBcUIsRUFBRUUsUUFBUSxFQUFFO0lBQ25HLElBQU11QixzQkFBc0JuQixpQkFDdEJvQixzQkFBc0JuQixpQkFDdEJvQiw4QkFBOEIvQixpQkFBaUJJLHVCQUF1QnlCLHNCQUN0RUcsOEJBQThCaEMsaUJBQWlCSSx1QkFBdUIwQixzQkFDdEVHLHdCQUF3Qi9CLGlCQUFpQjhCO0lBRS9DLElBQUlDLHVCQUF1QjtRQUN6QnRCLGtCQUFrQkQsaUJBQWtCLEdBQUc7UUFFdkNKLFNBQVNJLGlCQUFpQkM7UUFFMUI7SUFDRixDQUFDO0lBRURnQixJQUFBQSxhQUFNLEVBQUNJLDZCQUE2QkMsNkJBQTZCLFNBQUNKLE9BQVU7UUFDMUUsSUFBSUEsT0FBTztZQUNUakIsa0JBQWtCRCxpQkFBa0IsR0FBRztRQUN6QyxDQUFDO1FBRURKLFNBQVNJLGlCQUFpQkM7SUFDNUI7QUFDRiJ9
|