docs: enhance how references are generated (#5805)
* adjusted configurations * enhancements to tool and configurations * change reference in docs * fixed issue in workflows reference * added project name * more optimizations * fix context error * added a types reference * resolved missing types * fix reference reflection types not having children * add an expand url parameter * added new option to the README * added details about new option
This commit is contained in:
@@ -11,6 +11,9 @@ const require = createRequire(import.meta.url)
|
||||
|
||||
const referenceNames = process.argv.slice(2) || ["all"]
|
||||
const basePath = path.join(require.resolve("typedoc-config"), "..")
|
||||
let generatedCount = 0
|
||||
let totalCount = 0
|
||||
let ranMerger = false
|
||||
|
||||
if (!referenceNames.length) {
|
||||
console.error(
|
||||
@@ -27,15 +30,19 @@ referenceNames.forEach((name) => {
|
||||
// `typedoc-config` directory, except for files starting
|
||||
// with `_`
|
||||
const files = globSync("[^_]**.js", {
|
||||
cwd: path.join(basePath),
|
||||
cwd: basePath,
|
||||
})
|
||||
totalCount = files.length
|
||||
files.forEach((file) => generateReference(file))
|
||||
} else if (name === "merge") {
|
||||
runMerger()
|
||||
} else {
|
||||
totalCount = 1
|
||||
generateReference(`${name}.js`)
|
||||
}
|
||||
})
|
||||
|
||||
function generateReference(referenceName: string) {
|
||||
export function generateReference(referenceName: string) {
|
||||
const configPathName = path.join(basePath, referenceName)
|
||||
|
||||
// check if the config file exists
|
||||
@@ -54,6 +61,12 @@ function generateReference(referenceName: string) {
|
||||
typedocProcess.stdout?.on("data", (chunk: string) => {
|
||||
formatColoredLog(colorLog, referenceName, chunk.trim())
|
||||
})
|
||||
typedocProcess.on("exit", (code) => {
|
||||
generatedCount++
|
||||
if (generatedCount >= totalCount && !ranMerger && code !== 1) {
|
||||
runMerger()
|
||||
}
|
||||
})
|
||||
typedocProcess.stderr?.on("data", (chunk: string) => {
|
||||
// split multiline outputs
|
||||
const split: string[] = chunk.split("\n")
|
||||
@@ -79,3 +92,10 @@ function formatColoredLog(
|
||||
) {
|
||||
console.log(`${chalkInstance(title)} -> ${message}`)
|
||||
}
|
||||
|
||||
function runMerger() {
|
||||
// run merger
|
||||
console.log(chalk.bgBlueBright("\n\nRunning Merger\n\n"))
|
||||
ranMerger = true
|
||||
generateReference("_merger.js")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user