1
0
mirror of https://github.com/BoostIo/Boostnote synced 2025-12-13 09:46:22 +00:00

fix missing bullets

This commit is contained in:
Baptiste Augrain
2018-12-15 10:41:47 +01:00
parent 4f9b37433c
commit d5a2aa6d6d

View File

@@ -2,14 +2,13 @@
* @fileoverview Markdown table of contents generator
*/
import { EOL } from 'os'
import toc from 'markdown-toc'
import diacritics from 'diacritics-map'
import stripColor from 'strip-color'
import mdlink from 'markdown-link'
import slugify from './slugify'
const EOL = require('os').EOL
const hasProp = Object.prototype.hasOwnProperty
/**
@@ -23,6 +22,11 @@ function uniqueSlug (slug, slugs, opts) {
return uniq
}
function linkify (token) {
token.content = mdlink(token.content, '#' + token.slug)
return token
}
const TOC_MARKER_START = '<!-- toc -->'
const TOC_MARKER_END = '<!-- tocstop -->'
@@ -70,14 +74,16 @@ export function generate (markdownText) {
uniqueSlugStartIndex: 1
}
const tokens = toc(markdownText, {
const result = toc(markdownText, {
slugify: title => {
return uniqueSlug(slugify(title), slugs, opts)
},
linkify: false
})
const md = tokens.json.map(token => mdlink(token.content, '#' + token.slug)).join(EOL)
const md = toc.bullets(result.json.map(linkify), {
highest: result.highest
})
return TOC_MARKER_START + EOL + EOL + md + EOL + EOL + TOC_MARKER_END
}