File.list(Options.templatesDir + '/static').forEach(function (f) {
File.copy(Options.templatesDir + '/static/' + f, Options.target + '/' + f);
});
-
+ if (!File.isDirectory(Options.target +"/json")) {
+ File.makeDir(Options.target +"/json");
+ }
// used to check the details of things being linked to
Link.symbolSet = symbolSet;
-
+ Link.base = "../";
var classTemplate = new Template({
templateFile : Options.templatesDir + "/class.tmpl",
Link : Link
});
- var classesTemplate = new Template(
+ var classesTemplate = new Template({
templateFile : Options.templatesDir +"/allclasses.tmpl",
Link : Link
- );
+ });
+ var classesindexTemplate = new Template({
+ templateFile : Options.templatesDir +"/index.tmpl",
+ Link : Link
+ });
+ var fileindexTemplate = new Template({
+ templateFile : Options.templatesDir +"/allfiles.tmpl",
+ Link: Link
+ });
+
classTemplate.symbolSet = symbolSet;
for (var i = 0, l = files.length; i < l; i++) {
var file = files[i];
- var srcDir = Options.target + "/symbols/src/";
- this.makeSrcFile(file, srcDir);
+ var targetDir = Options.target + "/symbols/src/";
+ this.makeSrcFile(file, targetDir);
}
var classes = symbols.filter(isaClass).sort(makeSortby("alias"));
+
+ var classesIndex = classesTemplate.process(classes); // kept in memory
- Link.base = "../";
- publish.classesIndex = classesTemplate.process(classes); // kept in memory
- IO.makeDir(publish.conf.outDir+"json");
for (var i = 0, l = classes.length; i < l; i++) {
var symbol = classes[i];
print("write " + Options.target+"/symbols/" +symbol.alias+'.' + Options.publishExt);
// dump out a
- IO.saveFile(publish.conf.outDir+"json/", symbol.alias+'.json' , publish.jsonRender(symbol));
+
+ this.publishJSON(Options.target+"/json/", symbol.alias+'.json', symbol)
+
}
// regenrate the index with different relative links
Link.base = "";
- publish.classesIndex = classesTemplate.process(classes);
+ var classesIndex = classesTemplate.process(classes);
- try {
- var classesindexTemplate = new JSDOC.JsPlate(publish.conf.templatesDir+"index.tmpl");
- }
- catch(e) { print(e.message); quit(); }
+
- var classesIndex = classesindexTemplate.process(classes);
- IO.saveFile(publish.conf.outDir, "index"+publish.conf.ext, classesIndex);
- classesindexTemplate = classesIndex = classes = null;
+ File.write(Options.target + "/index."+ Options.publishExt,
+ classesindexTemplate.process(classes)
+ );
- try {
- var fileindexTemplate = new JSDOC.JsPlate(publish.conf.templatesDir+"allfiles.tmpl");
- }
- catch(e) { print(e.message); quit(); }
+ // blank everything???? classesindexTemplate = classesIndex = classes = null;
+
+
+
+ var documentedFiles = symbols.filter(function ($) {
+ return ($.is("FILE"))
+ });
- var documentedFiles = symbols.filter(isaFile);
var allFiles = [];
for (var i = 0; i < files.length; i++) {
- allFiles.push(new JSDOC.Symbol(files[i], [], "FILE", new JSDOC.DocComment("/** */")));
+ allFiles.push(new Symbol(files[i], [], "FILE", new JSDOC.DocComment("/** */")));
}
for (var i = 0; i < documentedFiles.length; i++) {
}
allFiles = allFiles.sort(makeSortby("name"));
+ File.write(Options.target , "/files."+Options.publishExt,
+ fileindexTemplate.process(allFiles)
+ );
+
+ },
- var filesIndex = fileindexTemplate.process(allFiles);
- IO.saveFile(publish.conf.outDir, "files"+publish.conf.ext, filesIndex);
- fileindexTemplate = filesIndex = files = null;
- }
-
- publishJSON = function(data)
+ publishJSON = function(file, data)
{
// what we need to output to be usefull...
// a) props..
props : props,
events: events
};
- return JSON.encode(ret);
+ File.write(file, JSON.stringify(ret, null, 2 ));
// b) methods
// c) events
- }
- makeSrcFile: function(path, srcDir, name) {
+ },
+ makeSrcFile: function(path, srcDir, name)
+ {
if (Options.outputSource) return;
- return; // not done?
-
+
if (!name) {
name = path.replace(/\.\.?[\\\/]/g, "").replace(/[\\\/]/g, "_");
name = name.replace(/\:/g, "_");
}
- var src = {
- path: path,
- name:name,
- charset: IO.encoding,
- hilited: ""
- };
+ var pretty = PrettyPrint.toPretty(str);
-
- if (src.hilited) {
- IO.saveFile(srcDir, name+publish.conf.ext, src.hilited);
- }
}