// var _ = require('lodash');
// var fs = require('fs');
// var semver = require('semver');
// var path = require('canonical-path');
//
// module.exports = {
//   name: 'version-data',
//   runBefore: ['reading-files'],
//   description: 'Expose version data to templates',
//   process: function(extraData, config) {
//     var basePath = config.get('basePath');
//     var outputFolder = config.get('rendering.outputFolder');
//     var currentVersion = config.get('currentVersion');
//
//     var docsBaseFolder = path.resolve(basePath, outputFolder, 'docs');
//
//     var versions;
//     try {
//       versions = fs.readdirSync(docsBaseFolder)
//         .filter(semver.valid)
//         .sort(semver.rcompare);
//     } catch(e) {
//       versions = [];
//     }
//
//     !_.contains(versions, currentVersion) && versions.unshift(currentVersion);
//     !_.contains(versions, 'nightly') && versions.unshift('nightly');
//
//     //First semver valid version is latest
//     var latestVersion = _.find(versions, semver.valid);
//     versions = versions.map(function(version) {
//       //Latest version is in docs root
//       var folder = version == latestVersion ? '' : version;
//       return {
//         href: path.join('/', config.get('versionFolderBase') || '', folder),
//         folder: folder,
//         name: version
//       };
//     });
//
//     var versionData = {
//       list: versions,
//       current: _.find(versions, { name: currentVersion }),
//       latest: _.find(versions, {name: latestVersion}) || _.first(versions)
//     };
//
//     config.set('rendering.contentsFolder',
//                path.join(config.get('versionFolderBase') || '', versionData.current.folder || ''));
//     config.set('versionData', versionData);
//     extraData.version = versionData;
//   }
// };
