INNER CODE UNIT · TypeScript
replaceFormulasWithPlaceholders
RyanYipeng/SyncCaster · apps/extension/src/content-scripts/index.ts:465
function replaceFormulasWithPlaceholders(root: HTMLElement, formulaMap: Map<string, { tex: string; isDisplay: boolean }>): void {
const doc = root.ownerDocument || document;
const DS = String.fromCharCode(36);
root.querySelectorAll('[data-formula-id]').forEach((node) => {
const id = node.getAttribute('data-formula-id');
if (!id) return;
const formula = formulaMap.get(id);
if (!formula) return;
const wrapper = doc.createElement('span');
wrapper.setAttribute('data-sync-math', 'true');
wrapper.setAttribute('data-tex', formula.tex);
wrapper.setAttribute('data-display', String(formula.isDisplay));
wrapper.textContent = formula.isDisplay ? DS + DS + formula.tex + DS + DS : DS + formula.tex + DS;
node.replaceWith(wrapper);
});