Files
how2ice 005cf56baf
Some checks failed
No response / noResponse (push) Has been cancelled
CI / Continuous releases (push) Has been cancelled
CI / test-dev (macos-latest) (push) Has been cancelled
CI / test-dev (ubuntu-latest) (push) Has been cancelled
CI / test-dev (windows-latest) (push) Has been cancelled
Maintenance / main (push) Has been cancelled
Scorecards supply-chain security / Scorecards analysis (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
init project
2025-12-12 14:26:25 +09:00

16 lines
557 B
TypeScript

function escapePipesOutsideBackticks(value: string): string {
// Split into chunks that are either code spans or normal text.
// Capturing group keeps the code chunks in the array.
return value
.split(/(`[^`]*`)/g)
.map((chunk) => (chunk.startsWith('`') ? chunk : chunk.replace(/\|/g, '\\|')))
.join('');
}
export default function escapeCell(value: string): string {
// As the pipe is use for the table structure
const newValue = escapePipesOutsideBackticks(value);
return newValue.replace(/</g, '&lt;').replace(/`&lt;/g, '`<');
}