var path = require('path'),
fs = require('fs'),
Script = process.binding('evals').Script,
dust = require('../lib/dust'),
root = path.join(path.dirname(__filename), "..");
var src = fs.readFileSync(path.join(root, 'docs/index.dust.html'), 'utf8');
dust.loadSource(dust.compile(src, "index"));
var sd = process.compile(fs.readFileSync(path.join(root, 'vendor/showdown.js'), 'utf8'), 'showdown.js');
var inliners = {
css: function(names) {
var out = "";
return out;
},
js: function(names) {
var out = "";
return out;
}
}
var context = {
inline: function(chk, ctx, bod, prm) {
var names = prm.names.split(' ');
return chk.write(inliners[prm.ext](names));
},
tmpl: function(chk, ctx, bod, prm) {
var names = prm.names.split(' ');
var out = "";
return chk.write(out);
},
md: function(chk, ctx, bod, prm) {
var converter = new sd();
return chk.tap(function(data) {
return converter.makeHtml(data);
}).render(bod.block, ctx).untap();
},
file: function(chk, ctx, bod, prm) {
var name = prm.name;
return chk.write(fs.readFileSync(path.join(root, 'docs', name), 'utf8'));
}
}
function render() {
dust.render("index", context, function(err, output) {
if (err) throw err;
fs.writeFileSync(path.join(root, 'index.html'), output);
});
}
render();