Output radar html files
This commit is contained in:
@@ -10,17 +10,16 @@ import {
|
|||||||
distPath,
|
distPath,
|
||||||
} from './file';
|
} from './file';
|
||||||
import {
|
import {
|
||||||
getTree,
|
|
||||||
createRadar,
|
createRadar,
|
||||||
|
outputRadar,
|
||||||
} from './radar';
|
} from './radar';
|
||||||
|
|
||||||
|
|
||||||
(async () => {
|
(async () => {
|
||||||
try {
|
try {
|
||||||
// const tree = await getTree();
|
|
||||||
// console.log(JSON.stringify(tree, null, 2));
|
|
||||||
const radar = await createRadar();
|
const radar = await createRadar();
|
||||||
console.log(JSON.stringify(radar, null, 2));
|
outputRadar(radar);
|
||||||
|
// console.log(JSON.stringify(radar, null, 2));
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
console.error('error:', e);
|
console.error('error:', e);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ export const relativePath = (...relativePath) => (
|
|||||||
path.resolve(__dirname, '..', ...relativePath)
|
path.resolve(__dirname, '..', ...relativePath)
|
||||||
);
|
);
|
||||||
|
|
||||||
export const srcPath = (pathInSrc = '') => (
|
export const srcPath = (...pathInSrc) => (
|
||||||
relativePath('radar', pathInSrc)
|
relativePath('radar', ...pathInSrc)
|
||||||
);
|
);
|
||||||
|
|
||||||
export const distPath = (pathInDist = '') => (
|
export const distPath = (...pathInDist) => (
|
||||||
relativePath('dist', pathInDist)
|
relativePath('dist', ...pathInDist)
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import { walk } from 'walk';
|
import { walk } from 'walk';
|
||||||
import fs, { readFile } from 'fs-extra';
|
import fs, { readFile, outputFile } from 'fs-extra';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
import frontmatter from 'front-matter';
|
import frontmatter from 'front-matter';
|
||||||
import marked from 'marked';
|
import marked from 'marked';
|
||||||
import { srcPath } from './file';
|
import { srcPath, distPath } from './file';
|
||||||
|
|
||||||
export const createRadar = async (tree) => {
|
export const createRadar = async (tree) => {
|
||||||
const fileNames = await getAllMarkdownFiles();
|
const fileNames = await getAllMarkdownFiles();
|
||||||
@@ -105,3 +105,26 @@ const addRevisionToItem = (item = {
|
|||||||
revisions: item.revisions.concat(rest),
|
revisions: item.revisions.concat(rest),
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
export const outputRadar = (radar) => {
|
||||||
|
return Promise.all(
|
||||||
|
Object.entries(radar).map(([quadrantName, quadrant]) => (
|
||||||
|
Object.entries(quadrant).map(([itemName, item]) => (
|
||||||
|
new Promise((resolve, reject) => (
|
||||||
|
outputFile(distPath(quadrantName, `${itemName}.html`), getItemHtml(item), (err, data) => {
|
||||||
|
if (err) {
|
||||||
|
reject(err);
|
||||||
|
} else {
|
||||||
|
resolve(data);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
))
|
||||||
|
))
|
||||||
|
))
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
const getItemHtml = (item) => (`
|
||||||
|
<h1>${item.attributes.title}</h1>
|
||||||
|
`)
|
||||||
|
|||||||
Reference in New Issue
Block a user