mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
repair doc tools and polish the docs code (#5038)
* set private access modifier * repair doc build tools * fix lit issues * re-generate version index
This commit is contained in:
committed by
Eugenio Romano
parent
3bebc7a18c
commit
2b1250cae7
@@ -1,98 +1,92 @@
|
||||
import * as fs from "fs";
|
||||
import * as path from "path";
|
||||
|
||||
import * as replaceSection from "mdast-util-heading-range";
|
||||
import * as remark from "remark";
|
||||
import * as frontMatter from "remark-frontmatter";
|
||||
import * as yaml from "js-yaml";
|
||||
import * as ejs from "ejs";
|
||||
|
||||
import * as unist from "../unistHelpers";
|
||||
|
||||
const tutFolder = path.resolve("docs", "tutorials");
|
||||
const templateFolder = path.resolve("tools", "doc", "templates");
|
||||
const userGuideFolder = path.resolve("docs", "user-guide");
|
||||
import * as fs from 'fs';
|
||||
import * as path from 'path';
|
||||
import * as replaceSection from 'mdast-util-heading-range';
|
||||
import * as remark from 'remark';
|
||||
import * as frontMatter from 'remark-frontmatter';
|
||||
import * as yaml from 'js-yaml';
|
||||
import * as ejs from 'ejs';
|
||||
import * as unist from '../unistHelpers';
|
||||
|
||||
const tutFolder = path.resolve('docs', 'tutorials');
|
||||
const templateFolder = path.resolve('tools', 'doc', 'templates');
|
||||
const userGuideFolder = path.resolve('docs', 'user-guide');
|
||||
|
||||
export function processDocs() {
|
||||
aggPhase();
|
||||
}
|
||||
|
||||
|
||||
function aggPhase() {
|
||||
let indexDocData = getIndexDocData();
|
||||
const indexDocData = getIndexDocData();
|
||||
|
||||
let templateName = path.resolve(templateFolder, "tutIndex.ejs");
|
||||
let templateSource = fs.readFileSync(templateName, "utf8");
|
||||
let template = ejs.compile(templateSource);
|
||||
const templateName = path.resolve(templateFolder, 'tutIndex.ejs');
|
||||
const templateSource = fs.readFileSync(templateName, 'utf8');
|
||||
const template = ejs.compile(templateSource);
|
||||
|
||||
let mdText = template(indexDocData);
|
||||
mdText = mdText.replace(/^ +\|/mg, "|");
|
||||
mdText = mdText.replace(/^ +\|/mg, '|');
|
||||
|
||||
let newSection = remark().use(frontMatter, ["yaml"]).data("settings", {paddedTable: false, gfm: false}).parse(mdText.trim()).children;
|
||||
const newSection = remark().use(frontMatter, ['yaml']).data('settings', {paddedTable: false, gfm: false}).parse(mdText.trim()).children;
|
||||
|
||||
let tutIndexFile = path.resolve(tutFolder, "README.md");
|
||||
let tutIndexText = fs.readFileSync(tutIndexFile, "utf8");
|
||||
let tutIndexMD = remark().use(frontMatter, ["yaml"]).data("settings", {paddedTable: false, gfm: false}).parse(tutIndexText);
|
||||
const tutIndexFile = path.resolve(tutFolder, 'README.md');
|
||||
const tutIndexText = fs.readFileSync(tutIndexFile, 'utf8');
|
||||
const tutIndexMD = remark().use(frontMatter, ['yaml']).data('settings', {paddedTable: false, gfm: false}).parse(tutIndexText);
|
||||
|
||||
replaceSection(tutIndexMD, "Tutorials", (before, section, after) => {
|
||||
replaceSection(tutIndexMD, 'Tutorials', (before, section, after) => {
|
||||
newSection.unshift(before);
|
||||
newSection.push(after);
|
||||
return newSection;
|
||||
});
|
||||
|
||||
fs.writeFileSync(tutIndexFile, remark().use(frontMatter, {type: 'yaml', fence: '---'}).data("settings", {paddedTable: false, gfm: false}).stringify(tutIndexMD));
|
||||
fs.writeFileSync(tutIndexFile, remark().use(frontMatter, {type: 'yaml', fence: '---'}).data('settings', {paddedTable: false, gfm: false}).stringify(tutIndexMD));
|
||||
}
|
||||
|
||||
|
||||
|
||||
function getIndexDocData() {
|
||||
let indexFile = path.resolve(userGuideFolder, "summary.json");
|
||||
let summaryArray = JSON.parse(fs.readFileSync(indexFile, "utf8"));
|
||||
const indexFile = path.resolve(userGuideFolder, 'summary.json');
|
||||
const summaryArray = JSON.parse(fs.readFileSync(indexFile, 'utf8'));
|
||||
let indexArray = [];
|
||||
|
||||
summaryArray.forEach(element => {
|
||||
if (element["title"] === "Tutorials") {
|
||||
indexArray = element["children"];
|
||||
if (element['title'] === 'Tutorials') {
|
||||
indexArray = element['children'];
|
||||
}
|
||||
});
|
||||
|
||||
let result = {
|
||||
const result = {
|
||||
tuts: []
|
||||
};
|
||||
|
||||
indexArray.forEach(element => {
|
||||
let tutData = { link: element["file"] };
|
||||
const tutData = { link: element['file'] };
|
||||
|
||||
let tutFile = path.resolve(tutFolder, element["file"]);
|
||||
let tutFileText = fs.readFileSync(tutFile, "utf8");
|
||||
let tutMD = remark().use(frontMatter, ["yaml"]).parse(tutFileText);
|
||||
const tutFile = path.resolve(tutFolder, element['file']);
|
||||
const tutFileText = fs.readFileSync(tutFile, 'utf8');
|
||||
const tutMD = remark().use(frontMatter, ['yaml']).parse(tutFileText);
|
||||
|
||||
let metadata = getDocMetadata(tutMD);
|
||||
const metadata = getDocMetadata(tutMD);
|
||||
|
||||
if (metadata["Level"]){
|
||||
tutData["level"] = metadata["Level"];
|
||||
if (metadata['Level']) {
|
||||
tutData['level'] = metadata['Level'];
|
||||
} else {
|
||||
tutData["level"] = "";
|
||||
tutData['level'] = '';
|
||||
}
|
||||
|
||||
let briefDesc = getFirstParagraph(tutMD);
|
||||
const briefDesc = getFirstParagraph(tutMD);
|
||||
|
||||
let briefDescText = remark()
|
||||
const briefDescText = remark()
|
||||
.use(frontMatter, {type: 'yaml', fence: '---'})
|
||||
.data("settings", {paddedTable: false, gfm: false})
|
||||
.data('settings', {paddedTable: false, gfm: false})
|
||||
.stringify(briefDesc);
|
||||
|
||||
tutData["briefDesc"] = briefDescText;
|
||||
tutData['briefDesc'] = briefDescText;
|
||||
|
||||
let title = getFirstHeading(tutMD);
|
||||
const title = getFirstHeading(tutMD);
|
||||
|
||||
let titleText = remark()
|
||||
const titleText = remark()
|
||||
.use(frontMatter, {type: 'yaml', fence: '---'})
|
||||
.data("settings", {paddedTable: false, gfm: false})
|
||||
.data('settings', {paddedTable: false, gfm: false})
|
||||
.stringify(title.children[0]);
|
||||
|
||||
tutData["title"] = titleText;
|
||||
tutData['title'] = titleText;
|
||||
|
||||
result.tuts.push(tutData);
|
||||
});
|
||||
@@ -100,20 +94,18 @@ function getIndexDocData() {
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
function getDocMetadata(tree) {
|
||||
if (tree.children[0].type == "yaml") {
|
||||
if (tree.children[0].type === 'yaml') {
|
||||
return yaml.load(tree.children[0].value);
|
||||
} else {
|
||||
return {};
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function getFirstParagraph(tree) {
|
||||
let s = 0;
|
||||
|
||||
for (;(s < tree.children.length) && !unist.isParagraph(tree.children[s]); s++) {}
|
||||
for (; (s < tree.children.length) && !unist.isParagraph(tree.children[s]); s++) {}
|
||||
|
||||
if (s < tree.children.length) {
|
||||
return tree.children[s];
|
||||
@@ -126,7 +118,7 @@ function getFirstParagraph(tree) {
|
||||
function getFirstHeading(tree) {
|
||||
let s = 0;
|
||||
|
||||
for (;(s < tree.children.length) && !unist.isHeading(tree.children[s]); s++) {}
|
||||
for (; (s < tree.children.length) && !unist.isHeading(tree.children[s]); s++) {}
|
||||
|
||||
if (s < tree.children.length) {
|
||||
return tree.children[s];
|
||||
|
Reference in New Issue
Block a user