occam-file-system 5.0.198 → 5.0.199

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.
@@ -18,24 +18,11 @@ _export(exports, {
18
18
  });
19
19
  var _fsextra = require("fs-extra");
20
20
  var _necessary = require("necessary");
21
- var last = _necessary.arrayUtilities.last, concatenatePaths = _necessary.pathUtilities.concatenatePaths, checkEntryExists = _necessary.fileSystemUtilities.checkEntryExists;
21
+ var _pathMaps = require("./utilities/pathMaps");
22
+ var concatenatePaths = _necessary.pathUtilities.concatenatePaths, checkEntryExists = _necessary.fileSystemUtilities.checkEntryExists;
22
23
  function renameProjectEntry(projectsDirectoryPath, json, callback) {
23
- var pathMaps = json.pathMaps, lastPathMap = last(pathMaps), pathMap = lastPathMap, sourceEntryPath = pathMap.sourceEntryPath, targetEntryPath = pathMap.targetEntryPath, entryDirectory = pathMap.entryDirectory;
24
- renameEntryOperation(sourceEntryPath, targetEntryPath, entryDirectory, projectsDirectoryPath, function(sourceEntryPath, targetEntryPath) {
25
- var entryMissing = sourceEntryPath === null, entryUnmoved = sourceEntryPath === targetEntryPath, targetEntryPaths = pathMaps.map(function(pathMap) {
26
- var _$targetEntryPath;
27
- var _$sourceEntryPath = pathMap.sourceEntryPath;
28
- if (false) {
29
- ///
30
- } else if (entryMissing) {
31
- _$targetEntryPath = null;
32
- } else if (entryUnmoved) {
33
- _$targetEntryPath = _$sourceEntryPath; ///
34
- } else {
35
- _$targetEntryPath = pathMap.targetEntryPath;
36
- }
37
- return _$targetEntryPath;
38
- });
24
+ var pathMaps = json.pathMaps;
25
+ renameEntries(pathMaps, projectsDirectoryPath, function(targetEntryPaths) {
39
26
  var _$json = {
40
27
  targetEntryPaths: targetEntryPaths
41
28
  };
@@ -51,6 +38,17 @@ function renameEntryOperation(sourceEntryPath, targetEntryPath, entryDirectory,
51
38
  }
52
39
  entryDirectory ? renameDirectoryOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) : renameFileOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback);
53
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
+ }
54
52
  function renameFileOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) {
55
53
  var sourceFilePath = sourceEntryPath, targetFilePath = targetEntryPath, absoluteSourceFilePath = concatenatePaths(projectsDirectoryPath, sourceFilePath), absoluteTargetFilePath = concatenatePaths(projectsDirectoryPath, targetFilePath), targetFileExists = checkEntryExists(absoluteTargetFilePath);
56
54
  if (targetFileExists) {
@@ -80,4 +78,4 @@ function renameDirectoryOperation(sourceEntryPath, targetEntryPath, projectsDire
80
78
  });
81
79
  }
82
80
 
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9yZW5hbWVQcm9qZWN0RW50cnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IG1vdmUgYXMgcmVuYW1lIH0gZnJvbSBcImZzLWV4dHJhXCI7XG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcbmltcG9ydCB7IHBhdGhVdGlsaXRpZXMsIGZpbGVTeXN0ZW1VdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmNvbnN0IHsgbGFzdCB9ID0gYXJyYXlVdGlsaXRpZXMsXG4gICAgICB7IGNvbmNhdGVuYXRlUGF0aHMgfSA9IHBhdGhVdGlsaXRpZXMsXG4gICAgICB7IGNoZWNrRW50cnlFeGlzdHMgfSA9IGZpbGVTeXN0ZW1VdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlbmFtZVByb2plY3RFbnRyeShwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGpzb24sIGNhbGxiYWNrKSB7XG4gIGNvbnN0IHsgcGF0aE1hcHMgfSA9IGpzb24sXG4gICAgICAgIGxhc3RQYXRoTWFwID0gbGFzdChwYXRoTWFwcyksXG4gICAgICAgIHBhdGhNYXAgPSBsYXN0UGF0aE1hcCwgIC8vL1xuICAgICAgICB7IHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoLCBlbnRyeURpcmVjdG9yeSB9ID0gcGF0aE1hcDtcblxuICByZW5hbWVFbnRyeU9wZXJhdGlvbihzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCwgZW50cnlEaXJlY3RvcnksIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoKSA9PiB7XG4gICAgY29uc3QgZW50cnlNaXNzaW5nID0gKHNvdXJjZUVudHJ5UGF0aCA9PT0gbnVsbCksXG4gICAgICAgICAgZW50cnlVbm1vdmVkID0gKHNvdXJjZUVudHJ5UGF0aCA9PT0gdGFyZ2V0RW50cnlQYXRoKSxcbiAgICAgICAgICB0YXJnZXRFbnRyeVBhdGhzID0gcGF0aE1hcHMubWFwKChwYXRoTWFwKSA9PiB7XG4gICAgICAgICAgICBsZXQgdGFyZ2V0RW50cnlQYXRoO1xuXG4gICAgICAgICAgICBjb25zdCB7IHNvdXJjZUVudHJ5UGF0aCB9ID0gcGF0aE1hcDtcblxuICAgICAgICAgICAgaWYgKGZhbHNlKSB7XG4gICAgICAgICAgICAgIC8vL1xuICAgICAgICAgICAgfSBlbHNlIGlmIChlbnRyeU1pc3NpbmcpIHtcbiAgICAgICAgICAgICAgdGFyZ2V0RW50cnlQYXRoID0gbnVsbDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZW50cnlVbm1vdmVkKSB7XG4gICAgICAgICAgICAgIHRhcmdldEVudHJ5UGF0aCA9IHNvdXJjZUVudHJ5UGF0aDsgIC8vL1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgKHsgdGFyZ2V0RW50cnlQYXRoIH0gPSBwYXRoTWFwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHRhcmdldEVudHJ5UGF0aDtcbiAgICAgICAgICB9KTtcblxuICAgIGNvbnN0IGpzb24gPSB7XG4gICAgICB0YXJnZXRFbnRyeVBhdGhzXG4gICAgfTtcblxuICAgIGNhbGxiYWNrKGpzb24pO1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlbmFtZUVudHJ5T3BlcmF0aW9uKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoLCBlbnRyeURpcmVjdG9yeSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBjYWxsYmFjaykge1xuICBjb25zdCBhYnNvbHV0ZVNvdXJjZUVudHJ5UGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBzb3VyY2VFbnRyeVBhdGgpLFxuICAgICAgICBzb3VyY2VFbnRyeUV4aXN0cyA9IGNoZWNrRW50cnlFeGlzdHMoYWJzb2x1dGVTb3VyY2VFbnRyeVBhdGgpO1xuXG4gIGlmICghc291cmNlRW50cnlFeGlzdHMpIHtcbiAgICB0YXJnZXRFbnRyeVBhdGggPSBudWxsO1xuXG4gICAgY2FsbGJhY2soc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgZW50cnlEaXJlY3RvcnkgP1xuICAgIHJlbmFtZURpcmVjdG9yeU9wZXJhdGlvbihzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBjYWxsYmFjaykgOlxuICAgICAgcmVuYW1lRmlsZU9wZXJhdGlvbihzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBjYWxsYmFjayk7XG59XG5cbmZ1bmN0aW9uIHJlbmFtZUZpbGVPcGVyYXRpb24oc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgY2FsbGJhY2spIHtcbiAgY29uc3Qgc291cmNlRmlsZVBhdGggPSBzb3VyY2VFbnRyeVBhdGgsIC8vL1xuICAgICAgICB0YXJnZXRGaWxlUGF0aCA9IHRhcmdldEVudHJ5UGF0aCwgLy8vXG4gICAgICAgIGFic29sdXRlU291cmNlRmlsZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgc291cmNlRmlsZVBhdGgpLFxuICAgICAgICBhYnNvbHV0ZVRhcmdldEZpbGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHRhcmdldEZpbGVQYXRoKSxcbiAgICAgICAgdGFyZ2V0RmlsZUV4aXN0cyA9IGNoZWNrRW50cnlFeGlzdHMoYWJzb2x1dGVUYXJnZXRGaWxlUGF0aCk7XG5cbiAgaWYgKHRhcmdldEZpbGVFeGlzdHMpIHtcbiAgICB0YXJnZXRFbnRyeVBhdGggPSBzb3VyY2VFbnRyeVBhdGg7ICAvLy9cblxuICAgIGNhbGxiYWNrKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoKTtcblxuICAgIHJldHVybjtcbiAgfVxuXG4gIHJlbmFtZShhYnNvbHV0ZVNvdXJjZUZpbGVQYXRoLCBhYnNvbHV0ZVRhcmdldEZpbGVQYXRoLCAoZXJyb3IpID0+IHtcbiAgICBpZiAoZXJyb3IpIHtcbiAgICAgIHRhcmdldEVudHJ5UGF0aCA9IHNvdXJjZUVudHJ5UGF0aDsgIC8vL1xuICAgIH1cblxuICAgIGNhbGxiYWNrKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoKTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHJlbmFtZURpcmVjdG9yeU9wZXJhdGlvbihzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBjYWxsYmFjaykge1xuICBjb25zdCBzb3VyY2VEaXJlY3RvcnlQYXRoID0gc291cmNlRW50cnlQYXRoLCAgLy8vXG4gICAgICAgIHRhcmdldERpcmVjdG9yeVBhdGggPSB0YXJnZXRFbnRyeVBhdGgsICAvLy9cbiAgICAgICAgYWJzb2x1dGVTb3VyY2VEaXJlY3RvcnlQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHNvdXJjZURpcmVjdG9yeVBhdGgpLFxuICAgICAgICBhYnNvbHV0ZVRhcmdldERpcmVjdG9yeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgdGFyZ2V0RGlyZWN0b3J5UGF0aCksXG4gICAgICAgIHRhcmdldERpcmVjdG9yeUV4aXN0cyA9IGNoZWNrRW50cnlFeGlzdHMoYWJzb2x1dGVUYXJnZXREaXJlY3RvcnlQYXRoKTtcblxuICBpZiAodGFyZ2V0RGlyZWN0b3J5RXhpc3RzKSB7XG4gICAgdGFyZ2V0RW50cnlQYXRoID0gc291cmNlRW50cnlQYXRoOyAgLy8vXG5cbiAgICBjYWxsYmFjayhzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCk7XG5cbiAgICByZXR1cm47XG4gIH1cblxuICByZW5hbWUoYWJzb2x1dGVTb3VyY2VEaXJlY3RvcnlQYXRoLCBhYnNvbHV0ZVRhcmdldERpcmVjdG9yeVBhdGgsIChlcnJvcikgPT4ge1xuICAgIGlmIChlcnJvcikge1xuICAgICAgdGFyZ2V0RW50cnlQYXRoID0gc291cmNlRW50cnlQYXRoOyAgLy8vXG4gICAgfVxuXG4gICAgY2FsbGJhY2soc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgpO1xuICB9KTtcbn1cbiJdLCJuYW1lcyI6WyJyZW5hbWVQcm9qZWN0RW50cnkiLCJyZW5hbWVFbnRyeU9wZXJhdGlvbiIsImxhc3QiLCJhcnJheVV0aWxpdGllcyIsImNvbmNhdGVuYXRlUGF0aHMiLCJwYXRoVXRpbGl0aWVzIiwiY2hlY2tFbnRyeUV4aXN0cyIsImZpbGVTeXN0ZW1VdGlsaXRpZXMiLCJwcm9qZWN0c0RpcmVjdG9yeVBhdGgiLCJqc29uIiwiY2FsbGJhY2siLCJwYXRoTWFwcyIsImxhc3RQYXRoTWFwIiwicGF0aE1hcCIsInNvdXJjZUVudHJ5UGF0aCIsInRhcmdldEVudHJ5UGF0aCIsImVudHJ5RGlyZWN0b3J5IiwiZW50cnlNaXNzaW5nIiwiZW50cnlVbm1vdmVkIiwidGFyZ2V0RW50cnlQYXRocyIsIm1hcCIsImFic29sdXRlU291cmNlRW50cnlQYXRoIiwic291cmNlRW50cnlFeGlzdHMiLCJyZW5hbWVEaXJlY3RvcnlPcGVyYXRpb24iLCJyZW5hbWVGaWxlT3BlcmF0aW9uIiwic291cmNlRmlsZVBhdGgiLCJ0YXJnZXRGaWxlUGF0aCIsImFic29sdXRlU291cmNlRmlsZVBhdGgiLCJhYnNvbHV0ZVRhcmdldEZpbGVQYXRoIiwidGFyZ2V0RmlsZUV4aXN0cyIsInJlbmFtZSIsImVycm9yIiwic291cmNlRGlyZWN0b3J5UGF0aCIsInRhcmdldERpcmVjdG9yeVBhdGgiLCJhYnNvbHV0ZVNvdXJjZURpcmVjdG9yeVBhdGgiLCJhYnNvbHV0ZVRhcmdldERpcmVjdG9yeVBhdGgiLCJ0YXJnZXREaXJlY3RvcnlFeGlzdHMiXSwibWFwcGluZ3MiOiJBQUFB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
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9yZW5hbWVQcm9qZWN0RW50cnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IG1vdmUgYXMgcmVuYW1lIH0gZnJvbSBcImZzLWV4dHJhXCI7XG5pbXBvcnQgeyBwYXRoVXRpbGl0aWVzLCBmaWxlU3lzdGVtVXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgeyBhc3luY2hyb25vdXNGb3JFYWNoIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3BhdGhNYXBzXCI7XG5cbmNvbnN0IHsgY29uY2F0ZW5hdGVQYXRocyB9ID0gcGF0aFV0aWxpdGllcyxcbiAgICAgIHsgY2hlY2tFbnRyeUV4aXN0cyB9ID0gZmlsZVN5c3RlbVV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gcmVuYW1lUHJvamVjdEVudHJ5KHByb2plY3RzRGlyZWN0b3J5UGF0aCwganNvbiwgY2FsbGJhY2spIHtcbiAgY29uc3QgeyBwYXRoTWFwcyB9ID0ganNvbjtcblxuICByZW5hbWVFbnRyaWVzKHBhdGhNYXBzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsICh0YXJnZXRFbnRyeVBhdGhzKSA9PiB7XG4gICAgY29uc3QganNvbiA9IHtcbiAgICAgIHRhcmdldEVudHJ5UGF0aHNcbiAgICB9O1xuXG4gICAgY2FsbGJhY2soanNvbik7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVuYW1lRW50cnlPcGVyYXRpb24oc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgsIGVudHJ5RGlyZWN0b3J5LCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKSB7XG4gIGNvbnN0IGFic29sdXRlU291cmNlRW50cnlQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHNvdXJjZUVudHJ5UGF0aCksXG4gICAgICAgIHNvdXJjZUVudHJ5RXhpc3RzID0gY2hlY2tFbnRyeUV4aXN0cyhhYnNvbHV0ZVNvdXJjZUVudHJ5UGF0aCk7XG5cbiAgaWYgKCFzb3VyY2VFbnRyeUV4aXN0cykge1xuICAgIHRhcmdldEVudHJ5UGF0aCA9IG51bGw7XG5cbiAgICBjYWxsYmFjayhzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCk7XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBlbnRyeURpcmVjdG9yeSA/XG4gICAgcmVuYW1lRGlyZWN0b3J5T3BlcmF0aW9uKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKSA6XG4gICAgICByZW5hbWVGaWxlT3BlcmF0aW9uKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKTtcbn1cblxuZnVuY3Rpb24gcmVuYW1lRW50cmllcyhwYXRoTWFwcywgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBjYWxsYmFjaykge1xuICBjb25zdCB0YXJnZXRFbnRyeVBhdGhzID0gW107XG5cbiAgYXN5bmNocm9ub3VzRm9yRWFjaChcbiAgICBwYXRoTWFwcyxcbiAgICAoc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgsIGVudHJ5RGlyZWN0b3J5LCBuZXh0LCBkb25lLCBpbmRleCkgPT4ge1xuICAgICAgcmVuYW1lRW50cnlPcGVyYXRpb24oc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgsIGVudHJ5RGlyZWN0b3J5LCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIChzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCkgPT4ge1xuICAgICAgICB0YXJnZXRFbnRyeVBhdGhzLnB1c2godGFyZ2V0RW50cnlQYXRoKTtcblxuICAgICAgICBuZXh0KCk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgICgpID0+IHtcbiAgICAgIGNhbGxiYWNrKHRhcmdldEVudHJ5UGF0aHMpO1xuICAgIH1cbiAgKTtcbn1cblxuZnVuY3Rpb24gcmVuYW1lRmlsZU9wZXJhdGlvbihzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBjYWxsYmFjaykge1xuICBjb25zdCBzb3VyY2VGaWxlUGF0aCA9IHNvdXJjZUVudHJ5UGF0aCwgLy8vXG4gICAgICAgIHRhcmdldEZpbGVQYXRoID0gdGFyZ2V0RW50cnlQYXRoLCAvLy9cbiAgICAgICAgYWJzb2x1dGVTb3VyY2VGaWxlUGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBzb3VyY2VGaWxlUGF0aCksXG4gICAgICAgIGFic29sdXRlVGFyZ2V0RmlsZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgdGFyZ2V0RmlsZVBhdGgpLFxuICAgICAgICB0YXJnZXRGaWxlRXhpc3RzID0gY2hlY2tFbnRyeUV4aXN0cyhhYnNvbHV0ZVRhcmdldEZpbGVQYXRoKTtcblxuICBpZiAodGFyZ2V0RmlsZUV4aXN0cykge1xuICAgIHRhcmdldEVudHJ5UGF0aCA9IHNvdXJjZUVudHJ5UGF0aDsgIC8vL1xuXG4gICAgY2FsbGJhY2soc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcmVuYW1lKGFic29sdXRlU291cmNlRmlsZVBhdGgsIGFic29sdXRlVGFyZ2V0RmlsZVBhdGgsIChlcnJvcikgPT4ge1xuICAgIGlmIChlcnJvcikge1xuICAgICAgdGFyZ2V0RW50cnlQYXRoID0gc291cmNlRW50cnlQYXRoOyAgLy8vXG4gICAgfVxuXG4gICAgY2FsbGJhY2soc291cmNlRW50cnlQYXRoLCB0YXJnZXRFbnRyeVBhdGgpO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gcmVuYW1lRGlyZWN0b3J5T3BlcmF0aW9uKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGNhbGxiYWNrKSB7XG4gIGNvbnN0IHNvdXJjZURpcmVjdG9yeVBhdGggPSBzb3VyY2VFbnRyeVBhdGgsICAvLy9cbiAgICAgICAgdGFyZ2V0RGlyZWN0b3J5UGF0aCA9IHRhcmdldEVudHJ5UGF0aCwgIC8vL1xuICAgICAgICBhYnNvbHV0ZVNvdXJjZURpcmVjdG9yeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgc291cmNlRGlyZWN0b3J5UGF0aCksXG4gICAgICAgIGFic29sdXRlVGFyZ2V0RGlyZWN0b3J5UGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCB0YXJnZXREaXJlY3RvcnlQYXRoKSxcbiAgICAgICAgdGFyZ2V0RGlyZWN0b3J5RXhpc3RzID0gY2hlY2tFbnRyeUV4aXN0cyhhYnNvbHV0ZVRhcmdldERpcmVjdG9yeVBhdGgpO1xuXG4gIGlmICh0YXJnZXREaXJlY3RvcnlFeGlzdHMpIHtcbiAgICB0YXJnZXRFbnRyeVBhdGggPSBzb3VyY2VFbnRyeVBhdGg7ICAvLy9cblxuICAgIGNhbGxiYWNrKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoKTtcblxuICAgIHJldHVybjtcbiAgfVxuXG4gIHJlbmFtZShhYnNvbHV0ZVNvdXJjZURpcmVjdG9yeVBhdGgsIGFic29sdXRlVGFyZ2V0RGlyZWN0b3J5UGF0aCwgKGVycm9yKSA9PiB7XG4gICAgaWYgKGVycm9yKSB7XG4gICAgICB0YXJnZXRFbnRyeVBhdGggPSBzb3VyY2VFbnRyeVBhdGg7ICAvLy9cbiAgICB9XG5cbiAgICBjYWxsYmFjayhzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCk7XG4gIH0pO1xufVxuIl0sIm5hbWVzIjpbInJlbmFtZVByb2plY3RFbnRyeSIsInJlbmFtZUVudHJ5T3BlcmF0aW9uIiwiY29uY2F0ZW5hdGVQYXRocyIsInBhdGhVdGlsaXRpZXMiLCJjaGVja0VudHJ5RXhpc3RzIiwiZmlsZVN5c3RlbVV0aWxpdGllcyIsInByb2plY3RzRGlyZWN0b3J5UGF0aCIsImpzb24iLCJjYWxsYmFjayIsInBhdGhNYXBzIiwicmVuYW1lRW50cmllcyIsInRhcmdldEVudHJ5UGF0aHMiLCJzb3VyY2VFbnRyeVBhdGgiLCJ0YXJnZXRFbnRyeVBhdGgiLCJlbnRyeURpcmVjdG9yeSIsImFic29sdXRlU291cmNlRW50cnlQYXRoIiwic291cmNlRW50cnlFeGlzdHMiLCJyZW5hbWVEaXJlY3RvcnlPcGVyYXRpb24iLCJyZW5hbWVGaWxlT3BlcmF0aW9uIiwiYXN5bmNocm9ub3VzRm9yRWFjaCIsIm5leHQiLCJkb25lIiwiaW5kZXgiLCJwdXNoIiwic291cmNlRmlsZVBhdGgiLCJ0YXJnZXRGaWxlUGF0aCIsImFic29sdXRlU291cmNlRmlsZVBhdGgiLCJhYnNvbHV0ZVRhcmdldEZpbGVQYXRoIiwidGFyZ2V0RmlsZUV4aXN0cyIsInJlbmFtZSIsImVycm9yIiwic291cmNlRGlyZWN0b3J5UGF0aCIsInRhcmdldERpcmVjdG9yeVBhdGgiLCJhYnNvbHV0ZVNvdXJjZURpcmVjdG9yeVBhdGgiLCJhYnNvbHV0ZVRhcmdldERpcmVjdG9yeVBhdGgiLCJ0YXJnZXREaXJlY3RvcnlFeGlzdHMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQVVBLE9BVUM7ZUFWdUJBOztJQVlSQyxvQkFBb0I7ZUFBcEJBOzs7dUJBcEJlO3lCQUNvQjt3QkFFZjtBQUVwQyxJQUFNLEFBQUVDLG1CQUFxQkMsd0JBQWEsQ0FBbENELGtCQUNGLEFBQUVFLG1CQUFxQkMsOEJBQW1CLENBQXhDRDtBQUVPLFNBQVNKLG1CQUFtQk0scUJBQXFCLEVBQUVDLElBQUksRUFBRUMsUUFBUSxFQUFFO0lBQ2hGLElBQU0sQUFBRUMsV0FBYUYsS0FBYkU7SUFFUkMsY0FBY0QsVUFBVUgsdUJBQXVCLFNBQUNLLGtCQUFxQjtRQUNuRSxJQUFNSixTQUFPO1lBQ1hJLGtCQUFBQTtRQUNGO1FBRUFILFNBQVNEO0lBQ1g7QUFDRjtBQUVPLFNBQVNOLHFCQUFxQlcsZUFBZSxFQUFFQyxlQUFlLEVBQUVDLGNBQWMsRUFBRVIscUJBQXFCLEVBQUVFLFFBQVEsRUFBRTtJQUN0SCxJQUFNTywwQkFBMEJiLGlCQUFpQkksdUJBQXVCTSxrQkFDbEVJLG9CQUFvQlosaUJBQWlCVztJQUUzQyxJQUFJLENBQUNDLG1CQUFtQjtRQUN0Qkgsa0JBQWtCLElBQUk7UUFFdEJMLFNBQVNJLGlCQUFpQkM7UUFFMUI7SUFDRixDQUFDO0lBRURDLGlCQUNFRyx5QkFBeUJMLGlCQUFpQkMsaUJBQWlCUCx1QkFBdUJFLFlBQ2hGVSxvQkFBb0JOLGlCQUFpQkMsaUJBQWlCUCx1QkFBdUJFLFNBQVM7QUFDNUY7QUFFQSxTQUFTRSxjQUFjRCxRQUFRLEVBQUVILHFCQUFxQixFQUFFRSxRQUFRLEVBQUU7SUFDaEUsSUFBTUcsbUJBQW1CLEVBQUU7SUFFM0JRLElBQUFBLDZCQUFtQixFQUNqQlYsVUFDQSxTQUFDRyxpQkFBaUJDLGlCQUFpQkMsZ0JBQWdCTSxNQUFNQyxNQUFNQyxPQUFVO1FBQ3ZFckIscUJBQXFCVyxpQkFBaUJDLGlCQUFpQkMsZ0JBQWdCUix1QkFBdUIsU0FBQ00saUJBQWlCQyxpQkFBb0I7WUFDbElGLGlCQUFpQlksSUFBSSxDQUFDVjtZQUV0Qk87UUFDRjtJQUNGLEdBQ0EsV0FBTTtRQUNKWixTQUFTRztJQUNYO0FBRUo7QUFFQSxTQUFTTyxvQkFBb0JOLGVBQWUsRUFBRUMsZUFBZSxFQUFFUCxxQkFBcUIsRUFBRUUsUUFBUSxFQUFFO0lBQzlGLElBQU1nQixpQkFBaUJaLGlCQUNqQmEsaUJBQWlCWixpQkFDakJhLHlCQUF5QnhCLGlCQUFpQkksdUJBQXVCa0IsaUJBQ2pFRyx5QkFBeUJ6QixpQkFBaUJJLHVCQUF1Qm1CLGlCQUNqRUcsbUJBQW1CeEIsaUJBQWlCdUI7SUFFMUMsSUFBSUMsa0JBQWtCO1FBQ3BCZixrQkFBa0JELGlCQUFrQixHQUFHO1FBRXZDSixTQUFTSSxpQkFBaUJDO1FBRTFCO0lBQ0YsQ0FBQztJQUVEZ0IsSUFBQUEsYUFBTSxFQUFDSCx3QkFBd0JDLHdCQUF3QixTQUFDRyxPQUFVO1FBQ2hFLElBQUlBLE9BQU87WUFDVGpCLGtCQUFrQkQsaUJBQWtCLEdBQUc7UUFDekMsQ0FBQztRQUVESixTQUFTSSxpQkFBaUJDO0lBQzVCO0FBQ0Y7QUFFQSxTQUFTSSx5QkFBeUJMLGVBQWUsRUFBRUMsZUFBZSxFQUFFUCxxQkFBcUIsRUFBRUUsUUFBUSxFQUFFO0lBQ25HLElBQU11QixzQkFBc0JuQixpQkFDdEJvQixzQkFBc0JuQixpQkFDdEJvQiw4QkFBOEIvQixpQkFBaUJJLHVCQUF1QnlCLHNCQUN0RUcsOEJBQThCaEMsaUJBQWlCSSx1QkFBdUIwQixzQkFDdEVHLHdCQUF3Qi9CLGlCQUFpQjhCO0lBRS9DLElBQUlDLHVCQUF1QjtRQUN6QnRCLGtCQUFrQkQsaUJBQWtCLEdBQUc7UUFFdkNKLFNBQVNJLGlCQUFpQkM7UUFFMUI7SUFDRixDQUFDO0lBRURnQixJQUFBQSxhQUFNLEVBQUNJLDZCQUE2QkMsNkJBQTZCLFNBQUNKLE9BQVU7UUFDMUUsSUFBSUEsT0FBTztZQUNUakIsa0JBQWtCRCxpQkFBa0IsR0FBRztRQUN6QyxDQUFDO1FBRURKLFNBQVNJLGlCQUFpQkM7SUFDNUI7QUFDRiJ9
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-file-system",
3
3
  "author": "James Smith",
4
- "version": "5.0.198",
4
+ "version": "5.0.199",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-file-system",
7
7
  "description": "Occam's file system functionality.",
@@ -1,40 +1,17 @@
1
1
  "use strict";
2
2
 
3
3
  import { move as rename } from "fs-extra";
4
- import { arrayUtilities } from "necessary";
5
4
  import { pathUtilities, fileSystemUtilities } from "necessary";
6
5
 
7
- const { last } = arrayUtilities,
8
- { concatenatePaths } = pathUtilities,
6
+ import { asynchronousForEach } from "./utilities/pathMaps";
7
+
8
+ const { concatenatePaths } = pathUtilities,
9
9
  { checkEntryExists } = fileSystemUtilities;
10
10
 
11
11
  export default function renameProjectEntry(projectsDirectoryPath, json, callback) {
12
- const { pathMaps } = json,
13
- lastPathMap = last(pathMaps),
14
- pathMap = lastPathMap, ///
15
- { sourceEntryPath, targetEntryPath, entryDirectory } = pathMap;
16
-
17
- renameEntryOperation(sourceEntryPath, targetEntryPath, entryDirectory, projectsDirectoryPath, (sourceEntryPath, targetEntryPath) => {
18
- const entryMissing = (sourceEntryPath === null),
19
- entryUnmoved = (sourceEntryPath === targetEntryPath),
20
- targetEntryPaths = pathMaps.map((pathMap) => {
21
- let targetEntryPath;
22
-
23
- const { sourceEntryPath } = pathMap;
24
-
25
- if (false) {
26
- ///
27
- } else if (entryMissing) {
28
- targetEntryPath = null;
29
- } else if (entryUnmoved) {
30
- targetEntryPath = sourceEntryPath; ///
31
- } else {
32
- ({ targetEntryPath } = pathMap);
33
- }
34
-
35
- return targetEntryPath;
36
- });
12
+ const { pathMaps } = json;
37
13
 
14
+ renameEntries(pathMaps, projectsDirectoryPath, (targetEntryPaths) => {
38
15
  const json = {
39
16
  targetEntryPaths
40
17
  };
@@ -60,6 +37,24 @@ export function renameEntryOperation(sourceEntryPath, targetEntryPath, entryDire
60
37
  renameFileOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback);
61
38
  }
62
39
 
40
+ function renameEntries(pathMaps, projectsDirectoryPath, callback) {
41
+ const targetEntryPaths = [];
42
+
43
+ asynchronousForEach(
44
+ pathMaps,
45
+ (sourceEntryPath, targetEntryPath, entryDirectory, next, done, index) => {
46
+ renameEntryOperation(sourceEntryPath, targetEntryPath, entryDirectory, projectsDirectoryPath, (sourceEntryPath, targetEntryPath) => {
47
+ targetEntryPaths.push(targetEntryPath);
48
+
49
+ next();
50
+ });
51
+ },
52
+ () => {
53
+ callback(targetEntryPaths);
54
+ }
55
+ );
56
+ }
57
+
63
58
  function renameFileOperation(sourceEntryPath, targetEntryPath, projectsDirectoryPath, callback) {
64
59
  const sourceFilePath = sourceEntryPath, ///
65
60
  targetFilePath = targetEntryPath, ///