Files
coopgo/node_modules/micromark/lib/util/classify-character.mjs
sgauthier 6e64e138e2
All checks were successful
Publish To Prod / deploy_and_publish (push) Successful in 35s
planning
2024-10-14 09:15:30 +02:00

26 lines
854 B
JavaScript

export default classifyCharacter
import codes from '../character/codes.mjs'
import markdownLineEndingOrSpace from '../character/markdown-line-ending-or-space.mjs'
import unicodePunctuation from '../character/unicode-punctuation.mjs'
import unicodeWhitespace from '../character/unicode-whitespace.mjs'
import constants from '../constant/constants.mjs'
// Classify whether a character is unicode whitespace, unicode punctuation, or
// anything else.
// Used for attention (emphasis, strong), whose sequences can open or close
// based on the class of surrounding characters.
function classifyCharacter(code) {
if (
code === codes.eof ||
markdownLineEndingOrSpace(code) ||
unicodeWhitespace(code)
) {
return constants.characterGroupWhitespace
}
if (unicodePunctuation(code)) {
return constants.characterGroupPunctuation
}
}