MCPcopy Index your code
hub / github.com/github/docs / loadSiteTree

Function loadSiteTree

lib/page-data.js:195–220  ·  view source on GitHub ↗
(unversionedTree)

Source from the content-addressed store, hash-verified

193 * Order of languages and versions doesn't matter, but order of child page arrays DOES matter (for navigation).
194*/
195export async function loadSiteTree(unversionedTree) {
196 const rawTree = Object.assign({}, unversionedTree || (await loadUnversionedTree()))
197 const siteTree = {}
198
199 // For every language...
200 await Promise.all(
201 Object.keys(languages).map(async (langCode) => {
202 const treePerVersion = {}
203 // in every version...
204 await Promise.all(
205 versions.map(async (version) => {
206 // "version" the pages.
207 treePerVersion[version] = await versionPages(
208 Object.assign({}, rawTree[langCode]),
209 version,
210 langCode
211 )
212 })
213 )
214
215 siteTree[langCode] = treePerVersion
216 })
217 )
218
219 return siteTree
220}
221
222export async function versionPages(obj, version, langCode) {
223 // Add a versioned href as a convenience for use in layouts.

Callers 1

site-tree.jsFile · 0.90

Calls 2

loadUnversionedTreeFunction · 0.85
versionPagesFunction · 0.85

Tested by

no test coverage detected