fix: ignore headers properly

This commit is contained in:
taskylizard 2025-01-12 18:23:13 +00:00
parent d6b9979464
commit 9cf2d3de79
No known key found for this signature in database
GPG key ID: 1820131ED1A24120
2 changed files with 9 additions and 7 deletions

View file

@ -28,7 +28,7 @@ import { headers } from '../transformer/constants'
const __dirname = dirname(fileURLToPath(import.meta.url))
const __fonts = resolve(__dirname, '../fonts')
export async function generateImages(config: SiteConfig): Promise {
export async function generateImages(config: SiteConfig) {
const pages = await createContentLoader('**/*.md', { excerpt: true }).load()
const template = await readFile(resolve(__dirname, './Template.vue'), 'utf-8')
@ -82,20 +82,20 @@ async function generateImage({
template,
outDir,
fonts
}: GenerateImagesOptions): Promise {
}: GenerateImagesOptions) {
const { frontmatter, url } = page
const _page = getPage(url)
const title =
frontmatter.layout === 'home'
? (frontmatter.hero.name ?? frontmatter.title)
? frontmatter.hero.name ?? frontmatter.title
: frontmatter.title
? frontmatter.title
: _page?.title
const description =
frontmatter.layout === 'home'
? (frontmatter.hero.tagline ?? frontmatter.description)
? frontmatter.hero.tagline ?? frontmatter.description
: frontmatter.description
? frontmatter.description
: _page?.description

View file

@ -13,9 +13,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type { MarkdownRenderer } from 'vitepress'
const excluded = ['Credits']
import type { MarkdownRenderer } from 'vitepress'
import { headers } from '../transformer/constants'
const titles = Object.keys(headers).map((key) => headers[key].title)
export const headersPlugin = (md: MarkdownRenderer) => {
// Add the Feedback component in the heading, before the link.
@ -32,7 +34,7 @@ export const headersPlugin = (md: MarkdownRenderer) => {
if (idxClose <= idx) return result
const level = tokens[idx].tag.slice(1)
if (excluded.includes(env.frontmatter.title) || level !== '2') return result
if (!titles.includes(env.frontmatter.title) || level !== '2') return result
// Find the token for the link.
//