chore(docs): build to latest, mark latest in dropdown, remove /ionic

This commit is contained in:
Andy Joslin
2014-03-13 20:00:36 -06:00
parent b01e2734f0
commit 6325d37a86
8 changed files with 75 additions and 105 deletions

View File

@@ -1,46 +1,13 @@
var _ = require('lodash');
var fs = require('fs');
var semver = require('semver');
var path = require('canonical-path');
var basePath;
var outputFolder;
var currentVersion;
module.exports = {
name: 'version-data',
description: 'Give a list of all available versions to the template',
runBefore: ['pages-data'],
init: function(config) {
basePath = config.get('basePath');
outputFolder = config.get('rendering.outputFolder');
currentVersion = config.get('currentVersion');
},
process: function(docs, extraData) {
var docsBaseFolder = path.resolve(basePath, outputFolder, 'docs');
//Array of versions sorted backwards
var versions = fs.readdirSync(docsBaseFolder)
.filter(semver.valid)
.sort(semver.rcompare);
//Add current version to the top of the list if not exists
!_.contains(versions, currentVersion) && versions.unshift(currentVersion);
//Add nightly to the top of the list if not exists
!_.contains(versions, 'nightly') && versions.unshift('nightly');
versions = versions.map(function(ver) {
return {
href: '/docs/' + ver,
name: ver
};
process: function(docs, config, extraData) {
extraData.version = config.get('versionData');
docs.push({
docType: 'version-data',
id: 'version-data',
template: 'version-data.template.json',
outputPath: 'docs/version-data.json'
});
extraData.version = {
list: versions,
current: _.find(versions, { name: currentVersion }),
//Stable = most recent (first) valid semver version
stable: _.find(versions, function(v) { return semver.valid(v.name); }) ||
_.first(versions)
};
}
};