mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-09-17 14:21:29 +00:00
[ADF-2463] Update doc tools to work with subfolders (#3056)
* [ADF-2463] Updated main doc tool and index tool to handle subfolders * [ADF-2463] Updated version index tool for subfolders
This commit is contained in:
committed by
Eugenio Romano
parent
16a8fa8cd8
commit
4ee7cc0870
@@ -23,9 +23,9 @@ function initPhase(aggData) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function readPhase(srcFolder, filenames, aggData) {
|
function readPhase(filenames, aggData) {
|
||||||
for (var i = 0; i < filenames.length; i++) {
|
for (var i = 0; i < filenames.length; i++) {
|
||||||
var pathname = path.resolve(srcFolder, filenames[i]);
|
var pathname = filenames[i];//path.resolve(srcFolder, filenames[i]);
|
||||||
|
|
||||||
var src = fs.readFileSync(pathname);
|
var src = fs.readFileSync(pathname);
|
||||||
var tree = remark().use(frontMatter, ["yaml"]).parse(src);
|
var tree = remark().use(frontMatter, ["yaml"]).parse(src);
|
||||||
@@ -46,9 +46,9 @@ function aggPhase(aggData) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function updatePhase(srcFolder, destFolder, filenames, aggData) {
|
function updatePhase(filenames, aggData) {
|
||||||
for (var i = 0; i < filenames.length; i++) {
|
for (var i = 0; i < filenames.length; i++) {
|
||||||
var pathname = path.resolve(srcFolder, filenames[i]);
|
var pathname = filenames[i]; // path.resolve(srcFolder, filenames[i]);
|
||||||
|
|
||||||
var src = fs.readFileSync(pathname);
|
var src = fs.readFileSync(pathname);
|
||||||
var tree = remark().use(frontMatter, ["yaml"]).parse(src)
|
var tree = remark().use(frontMatter, ["yaml"]).parse(src)
|
||||||
@@ -60,8 +60,9 @@ function updatePhase(srcFolder, destFolder, filenames, aggData) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
if (modified)
|
if (modified)
|
||||||
fs.writeFileSync(path.resolve(destFolder, filenames[i]), remark().use(frontMatter, {type: 'yaml', fence: '---'}).data("settings", {paddedTable: false}).stringify(tree));
|
fs.writeFileSync(filenames[i], remark().use(frontMatter, {type: 'yaml', fence: '---'}).data("settings", {paddedTable: false}).stringify(tree));
|
||||||
//console.log(JSON.stringify(tree));
|
|
||||||
|
//console.log(JSON.stringify(tree));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -91,8 +92,24 @@ function loadToolConfig(configFilePath) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function getAllDocFilePaths(docFolder, files) {
|
||||||
|
var items = fs.readdirSync(docFolder);
|
||||||
|
|
||||||
|
for (var i = 0; i < items.length; i++) {
|
||||||
|
var itemPath = path.resolve(docFolder, items[i]);
|
||||||
|
var itemInfo = fs.statSync(itemPath);
|
||||||
|
|
||||||
|
if (itemInfo.isFile()){
|
||||||
|
files.push(itemPath);
|
||||||
|
} else if (itemInfo.isDirectory()) {
|
||||||
|
getAllDocFilePaths(itemPath, files);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
program
|
program
|
||||||
.usage("[options] <source> [dest]")
|
.usage("[options] <source>")
|
||||||
.parse(process.argv);
|
.parse(process.argv);
|
||||||
|
|
||||||
if (program.args.length === 0) {
|
if (program.args.length === 0) {
|
||||||
@@ -104,6 +121,7 @@ if (program.args.length === 0) {
|
|||||||
var sourcePath = path.resolve(program.args[0]);
|
var sourcePath = path.resolve(program.args[0]);
|
||||||
var sourceInfo = fs.statSync(sourcePath);
|
var sourceInfo = fs.statSync(sourcePath);
|
||||||
|
|
||||||
|
/*
|
||||||
var destPath;
|
var destPath;
|
||||||
var destInfo;
|
var destInfo;
|
||||||
|
|
||||||
@@ -119,19 +137,21 @@ if (sourceInfo.isDirectory() && !destInfo.isDirectory()) {
|
|||||||
console.log("Error: The <dest> argument must be a directory");
|
console.log("Error: The <dest> argument must be a directory");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
var toolModules = loadToolModules();
|
var toolModules = loadToolModules();
|
||||||
var toolList = loadToolConfig(path.resolve(__dirname, configFileName));
|
var toolList = loadToolConfig(path.resolve(__dirname, configFileName));
|
||||||
|
|
||||||
|
|
||||||
var files;
|
var files = [];
|
||||||
|
|
||||||
if (sourceInfo.isDirectory()) {
|
if (sourceInfo.isDirectory()) {
|
||||||
files = fs.readdirSync(sourcePath);
|
getAllDocFilePaths(sourcePath, files);
|
||||||
} else if (sourceInfo.isFile()) {
|
} else if (sourceInfo.isFile()) {
|
||||||
files = [ path.basename(sourcePath) ];
|
files = [ sourcePath ];
|
||||||
sourcePath = path.dirname(sourcePath);
|
//files = [ path.basename(sourcePath) ];
|
||||||
destPath = path.dirname(destPath);
|
//sourcePath = path.dirname(sourcePath);
|
||||||
|
//destPath = path.dirname(destPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
files = files.filter(filename =>
|
files = files.filter(filename =>
|
||||||
@@ -145,13 +165,13 @@ console.log("Initialising...");
|
|||||||
initPhase(aggData);
|
initPhase(aggData);
|
||||||
|
|
||||||
console.log("Analysing Markdown files...");
|
console.log("Analysing Markdown files...");
|
||||||
readPhase(sourcePath, files, aggData);
|
readPhase(files, aggData);
|
||||||
|
|
||||||
console.log("Computing aggregate data...");
|
console.log("Computing aggregate data...");
|
||||||
aggPhase(aggData);
|
aggPhase(aggData);
|
||||||
|
|
||||||
console.log("Updating Markdown files...");
|
console.log("Updating Markdown files...");
|
||||||
updatePhase(sourcePath, destPath, files, aggData);
|
updatePhase(files, aggData);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -39,7 +39,7 @@ function initPhase(aggData) {
|
|||||||
aggData.srcData = {};
|
aggData.srcData = {};
|
||||||
aggData.mdFileDesc = [];
|
aggData.mdFileDesc = [];
|
||||||
aggData.mdFileStatus = [];
|
aggData.mdFileStatus = [];
|
||||||
|
aggData.mdFilePath = [];
|
||||||
searchLibraryRecursive(aggData.srcData, path.resolve(rootFolder));
|
searchLibraryRecursive(aggData.srcData, path.resolve(rootFolder));
|
||||||
|
|
||||||
//console.log(JSON.stringify(aggData.srcData));
|
//console.log(JSON.stringify(aggData.srcData));
|
||||||
@@ -50,7 +50,7 @@ function readPhase(tree, pathname, aggData) {
|
|||||||
var itemName = path.basename(pathname, ".md");
|
var itemName = path.basename(pathname, ".md");
|
||||||
|
|
||||||
// Look for the first paragraph in the file by skipping other items.
|
// Look for the first paragraph in the file by skipping other items.
|
||||||
// Should usually be a position 1 in the tree.
|
// Should usually be at position 1 in the tree.
|
||||||
var s;
|
var s;
|
||||||
var briefDesc;
|
var briefDesc;
|
||||||
|
|
||||||
@@ -80,6 +80,10 @@ function readPhase(tree, pathname, aggData) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var linkPath = pathname.replace(/\\/g, '/');
|
||||||
|
linkPath = linkPath.substr(linkPath.indexOf("docs") + 5);
|
||||||
|
aggData.mdFilePath[itemName] = linkPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
function aggPhase(aggData) {
|
function aggPhase(aggData) {
|
||||||
@@ -159,6 +163,7 @@ function prepareIndexSections(aggData) {
|
|||||||
var briefDesc = aggData.mdFileDesc[itemName];
|
var briefDesc = aggData.mdFileDesc[itemName];
|
||||||
|
|
||||||
var displayName = ngHelpers.ngNameToDisplayName(itemName);
|
var displayName = ngHelpers.ngNameToDisplayName(itemName);
|
||||||
|
var pathname = aggData.mdFilePath[itemName];
|
||||||
|
|
||||||
var status = "";
|
var status = "";
|
||||||
|
|
||||||
@@ -169,6 +174,7 @@ function prepareIndexSections(aggData) {
|
|||||||
sections[libName][srcData.type].documented.push({
|
sections[libName][srcData.type].documented.push({
|
||||||
"displayName": displayName,
|
"displayName": displayName,
|
||||||
"mdName": itemName + ".md",
|
"mdName": itemName + ".md",
|
||||||
|
"mdPath": pathname,
|
||||||
"srcPath": srcData.path,
|
"srcPath": srcData.path,
|
||||||
"briefDesc": briefDesc,
|
"briefDesc": briefDesc,
|
||||||
"status": status
|
"status": status
|
||||||
@@ -280,7 +286,7 @@ function makeMDUndocumentedListItem(docItem) {
|
|||||||
|
|
||||||
|
|
||||||
function makeMDDocumentedTableRow(docItem) {
|
function makeMDDocumentedTableRow(docItem) {
|
||||||
var mdFileLink = unist.makeLink(unist.makeText(docItem.displayName), docItem.mdName);
|
var mdFileLink = unist.makeLink(unist.makeText(docItem.displayName), docItem.mdPath);
|
||||||
var srcFileLink = unist.makeLink(unist.makeText("Source"), "../lib/" + docItem.srcPath);
|
var srcFileLink = unist.makeLink(unist.makeText("Source"), "../lib/" + docItem.srcPath);
|
||||||
var desc = docItem.briefDesc;
|
var desc = docItem.briefDesc;
|
||||||
|
|
||||||
|
@@ -31,7 +31,7 @@ function initPhase(aggData) {
|
|||||||
|
|
||||||
|
|
||||||
function readPhase(tree, pathname, aggData) {
|
function readPhase(tree, pathname, aggData) {
|
||||||
var compName = path.basename(pathname, ".md");
|
var compName = pathname; //path.basename(pathname, ".md");
|
||||||
var angNameRegex = /([a-zA-Z0-9\-]+)\.((component)|(directive)|(model)|(pipe)|(service)|(widget))/;
|
var angNameRegex = /([a-zA-Z0-9\-]+)\.((component)|(directive)|(model)|(pipe)|(service)|(widget))/;
|
||||||
|
|
||||||
if (!compName.match(angNameRegex))
|
if (!compName.match(angNameRegex))
|
||||||
@@ -86,13 +86,20 @@ function aggPhase(aggData) {
|
|||||||
for (var i = 0; i < keys.length; i++) {
|
for (var i = 0; i < keys.length; i++) {
|
||||||
var version = keys[i];
|
var version = keys[i];
|
||||||
var versionItems = aggData.versions[version];
|
var versionItems = aggData.versions[version];
|
||||||
versionItems.sort();
|
versionItems.sort((a, b) => {
|
||||||
|
var aa = path.basename(a, ".md");
|
||||||
|
var bb = path.basename(b, ".md");
|
||||||
|
|
||||||
|
return aa.localeCompare(bb);
|
||||||
|
});
|
||||||
|
|
||||||
var versListItems = [];
|
var versListItems = [];
|
||||||
|
|
||||||
for (var v = 0; v < versionItems.length; v++) {
|
for (var v = 0; v < versionItems.length; v++) {
|
||||||
var displayName = ngHelpers.ngNameToDisplayName(versionItems[v]);
|
var displayName = ngHelpers.ngNameToDisplayName(path.basename(versionItems[v], ".md"));
|
||||||
var pageLink = versionItems[v] + ".md";
|
var pageLink = versionItems[v];// + ".md";
|
||||||
|
pageLink = pageLink.replace(/\\/g, '/');
|
||||||
|
pageLink = pageLink.substr(pageLink.indexOf("docs") + 5);
|
||||||
|
|
||||||
versListItems.push(
|
versListItems.push(
|
||||||
unist.makeListItem(
|
unist.makeListItem(
|
||||||
|
Reference in New Issue
Block a user