(node: PageTree.Node)
| 26 | node.type === 'folder'; |
| 27 | |
| 28 | const firstInternalPageUrl = (node: PageTree.Node): string | undefined => { |
| 29 | if (isPage(node)) return node.external ? undefined : node.url; |
| 30 | if (!isFolder(node)) return undefined; |
| 31 | |
| 32 | if (node.index && !node.index.external) return node.index.url; |
| 33 | |
| 34 | for (const child of node.children) { |
| 35 | const url = firstInternalPageUrl(child); |
| 36 | if (url) return url; |
| 37 | } |
| 38 | }; |
| 39 | |
| 40 | export const flattenPages = (tree: PageTree.Root): PageLink[] => { |
| 41 | const pages: PageLink[] = []; |