Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Aug 23rd, 2012  |  syntax: None  |  size: 0.70 KB  |  hits: 12  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. grunt.registerHelper('commonPath', function(inFiles) {
  2.  
  3.   var results = [],
  4.       minLen = 99,
  5.       isValid,
  6.       dirs;
  7.  
  8.   dirs = inFiles.map(function(filepath) {
  9.     var tmpArr = path.dirname(filepath).split('/');
  10.     if(tmpArr.length < minLen) {
  11.       minLen = tmpArr.length;
  12.     };
  13.     return tmpArr;
  14.   });
  15.  
  16.   if (dirs.length) {
  17.     for (var _j = 0; _j < minLen; _j++) {
  18.       isValid = true;
  19.       for (var _i = 1, _len = dirs.length; _i < _len; _i++) {
  20.         if(dirs[0][_j] !== dirs[_i][_j]) {
  21.           isValid = false;
  22.           break;
  23.         }
  24.       }
  25.       if(isValid) {
  26.         results.push(dirs[0][_j]);
  27.       } else {
  28.         break;
  29.       }
  30.     }
  31.   };
  32.  
  33.   return path.join(results.join('/'));
  34.  
  35. });