diff options
author | 2022-07-16 15:45:41 +0600 | |
---|---|---|
committer | 2022-07-16 15:45:41 +0600 | |
commit | 8530cce14f9953e0e5d6b12807720e62b9b5cf1f (patch) | |
tree | 4771b078a2264f7f489a60170765d7092f048a47 /packages/markdown/remark/src | |
parent | 6809a0d289f9c60d9d1fb07bb1f6a286b8d807f1 (diff) | |
download | astro-8530cce14f9953e0e5d6b12807720e62b9b5cf1f.tar.gz astro-8530cce14f9953e0e5d6b12807720e62b9b5cf1f.tar.zst astro-8530cce14f9953e0e5d6b12807720e62b9b5cf1f.zip |
Removes trailing dash from generated slugs in markdown (#3044)
* fixed header slugs in markdown if ends with a dash
* added changeset
* removes trailing dash only if slug was created
* updated test
* updated change level from patch to minor
Diffstat (limited to 'packages/markdown/remark/src')
-rw-r--r-- | packages/markdown/remark/src/rehype-collect-headers.ts | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/packages/markdown/remark/src/rehype-collect-headers.ts b/packages/markdown/remark/src/rehype-collect-headers.ts index f8cedd0d5..9b9a43730 100644 --- a/packages/markdown/remark/src/rehype-collect-headers.ts +++ b/packages/markdown/remark/src/rehype-collect-headers.ts @@ -53,7 +53,11 @@ export default function createCollectHeaders() { node as any ).value = `<${node.tagName} id={${node.properties.id}}>${raw}</${node.tagName}>`; } else { - node.properties.id = slugger.slug(text); + let slug = slugger.slug(text); + + if (slug.endsWith('-')) slug = slug.slice(0, -1); + + node.properties.id = slug; } } |