diff --git a/package.json b/package.json index a98ada11..378591c0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@knodes/typedoc-plugins", - "version": "0.22.5", + "version": "0.22.7", "description": "A monorepo containing all knodes-published TypeDoc plugins", "license": "MIT", "private": true, @@ -24,6 +24,8 @@ "./packages/*" ], "scripts": { + "postinstall": "git submodule update --init --recursive && npm i --workspaces && npm run projects:build", + "build": "npm run projects:build", "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s", "docs": "typedoc", "format:pkg": "format-package --write", diff --git a/packages/plugin-pages/src/theme-plugins/page-tree/a-page-tree-builder.spec.ts b/packages/plugin-pages/src/theme-plugins/page-tree/a-page-tree-builder.spec.ts index e7dcd089..0f9b1cf7 100644 --- a/packages/plugin-pages/src/theme-plugins/page-tree/a-page-tree-builder.spec.ts +++ b/packages/plugin-pages/src/theme-plugins/page-tree/a-page-tree-builder.spec.ts @@ -121,6 +121,13 @@ describe( APageTreeBuilder.name, () => { matchReflection( PageReflection, { name: 'Baz', depth: 0, module: testHost.project, sourceFilePath: 'baz.md', content: 'Baz content', url: 'baz.html' } ), ] ); } ); + it( 'should map hidden item', () => { + setVirtualFs( { + 'foo.md': 'Foo content' + } ); + const out = testHost.mapPagesToReflections( [ { title: 'HIDDEN', source: 'foo.md' } ] ); + expect( out ).toHaveLength( 1 ); + } ); it( 'should map page with children', () => { setVirtualFs( { 'foo.md': 'Foo content', diff --git a/packages/plugin-pages/src/theme-plugins/page-tree/a-page-tree-builder.ts b/packages/plugin-pages/src/theme-plugins/page-tree/a-page-tree-builder.ts index ff6ce013..7b0ef497 100644 --- a/packages/plugin-pages/src/theme-plugins/page-tree/a-page-tree-builder.ts +++ b/packages/plugin-pages/src/theme-plugins/page-tree/a-page-tree-builder.ts @@ -145,6 +145,12 @@ export abstract class APageTreeBuilder implements IPageTreeBuilder { } this.project.registerReflection( nodeReflection ); this.addNodeToProjectAsChild( nodeReflection ); + // strip a hidden node, but *after* adding its source to the project as a child + if( node.title === 'HIDDEN' ){ + return node.children ? + this._mapPagesToReflections( node.children, parent, childrenIO ) : + []; + } const children = node.children ? this._mapPagesToReflections( node.children, diff --git a/renovate.json5 b/renovate.json5 index dd551f4c..ec969a70 100644 --- a/renovate.json5 +++ b/renovate.json5 @@ -24,5 +24,9 @@ "matchDatasources": ["npm"], "stabilityDays": 3 }, + { // Prevent automerge for typedoc updates + "matchPackagePatterns": ["typedoc"], + "automerge": false + }, ] }