Parcourir la source

FIX: dollar-sign escaping in preprocessLaTeX code‐block handling (#21796)

Co-authored-by: LinYing <linying@momenta.ai>
tags/1.5.1
ShadowJobs il y a 4 mois
Parent
révision
86179beaa5
Aucun compte lié à l'adresse e-mail de l'auteur
1 fichiers modifiés avec 4 ajouts et 1 suppressions
  1. 4
    1
      web/app/components/base/markdown/markdown-utils.ts

+ 4
- 1
web/app/components/base/markdown/markdown-utils.ts Voir le fichier



const codeBlockRegex = /```[\s\S]*?```/g const codeBlockRegex = /```[\s\S]*?```/g
const codeBlocks = content.match(codeBlockRegex) || [] const codeBlocks = content.match(codeBlockRegex) || []
const escapeReplacement = (str: string) => str.replace(/\$/g, '_TMP_REPLACE_DOLLAR_')
let processedContent = content.replace(codeBlockRegex, 'CODE_BLOCK_PLACEHOLDER') let processedContent = content.replace(codeBlockRegex, 'CODE_BLOCK_PLACEHOLDER')


processedContent = flow([ processedContent = flow([
])(processedContent) ])(processedContent)


codeBlocks.forEach((block) => { codeBlocks.forEach((block) => {
processedContent = processedContent.replace('CODE_BLOCK_PLACEHOLDER', block)
processedContent = processedContent.replace('CODE_BLOCK_PLACEHOLDER', escapeReplacement(block))
}) })


processedContent = processedContent.replace(/_TMP_REPLACE_DOLLAR_/g, '$')

return processedContent return processedContent
} }



Chargement…
Annuler
Enregistrer