require.paths.push(__dirname); require.paths.push('lib'); var reader = require('reader.js'), ngdoc = require('ngdoc.js'), writer = require('writer.js'), SiteMap = require('SiteMap.js').SiteMap, appCache = require('appCache.js').appCache, Q = require('qq'); process.on('uncaughtException', function (err) { console.error(err.stack || err); }); var start = now(); var docs; writer.makeDir('build/docs/syntaxhighlighter').then(function() { console.log('Generating Angular Reference Documentation...'); return reader.collect(); }).then(function generateHtmlDocPartials(docs_) { docs = docs_; ngdoc.merge(docs); var fileFutures = []; docs.forEach(function(doc){ fileFutures.push(writer.output(doc.section + '/' + doc.id + '.html', doc.html())); }); writeTheRest(fileFutures); return Q.deep(fileFutures); }).then(function generateManifestFile() { return appCache('build/docs/').then(function(list) { writer.output('appcache-offline.manifest',list) }); }).then(function printStats() { console.log('DONE. Generated ' + docs.length + ' pages in ' + (now()-start) + 'ms.' ); }).end(); function writeTheRest(writesFuture) { var metadata = ngdoc.metadata(docs); writesFuture.push(writer.copyDir('img')); writesFuture.push(writer.copyDir('examples')); writesFuture.push(writer.copyTpl('index.html')); writesFuture.push(writer.copy('docs/src/templates/index.html', 'build/docs/index-jq.html', '', '