revert package.json changes, replace markdown in util

This commit is contained in:
Tom (plebeius.eth)
2024-09-16 11:24:54 +02:00
parent d7fd312ae2
commit 15f3c7b830
3 changed files with 19 additions and 3 deletions
+1 -2
View File
@@ -39,9 +39,8 @@
"rehype-sanitize": "5.0.1", "rehype-sanitize": "5.0.1",
"remark-gfm": "3.0.1", "remark-gfm": "3.0.1",
"remark-supersub": "1.0.0", "remark-supersub": "1.0.0",
"remove-markdown": "0.5.5",
"tcp-port-used": "1.0.2", "tcp-port-used": "1.0.2",
"typescript": "4.9.5", "typescript": "5.2.2",
"zustand": "4.4.3" "zustand": "4.4.3"
}, },
"scripts": { "scripts": {
+17
View File
@@ -37,3 +37,20 @@ export const formatMarkdown = (content: string): string => {
} }
return md; return md;
}; };
export function removeMarkdown(md: string): string {
return md
.replace(/\[([^\]]*?)\][\[\(].*?[\]\)]/g, '$1') // Remove links
.replace(/[*_~`]/g, '') // Remove emphasis and code markers
.replace(/^#+\s*(.+)$/gm, '$1') // Remove headers
.replace(/^\s*[-*+]\s+/gm, '') // Remove list markers
.replace(/^\s*>\s+/gm, '') // Remove blockquotes
.replace(/^\s{1,2}\[(.*?)\]: (\S+)( ".*?")?\s*$/g, '') // Remove reference-style links
.replace(/^(\n)?\s{0,}#{1,6}\s*( (.+))? +#+$|^(\n)?\s{0,}#{1,6}\s*( (.+))?$/gm, '$1$3$4$6') // Remove atx-style headers
.replace(/([\*]+)(\S)(.*?\S)??\1/g, '$2$3') // Remove * emphasis
.replace(/(^|\W)([_]+)(\S)(.*?\S)??\2($|\W)/g, '$1$3$4$5') // Remove _ emphasis
.replace(/(`{3,})(.*?)\1/gm, '$2') // Remove code blocks
.replace(/`(.+?)`/g, '$1') // Remove inline code
.replace(/~(.*?)~/g, '$1') // Remove strike through
.trim();
}
@@ -10,7 +10,7 @@ import { CatalogPostMedia } from '../../../components/catalog-row';
import LoadingEllipsis from '../../../components/loading-ellipsis'; import LoadingEllipsis from '../../../components/loading-ellipsis';
import BoxModal from '../box-modal'; import BoxModal from '../box-modal';
import { nsfwTags } from '../home'; import { nsfwTags } from '../home';
import removeMarkdown from 'remove-markdown'; import { removeMarkdown } from '../../../lib/utils/post-utils';
interface PopularThreadProps { interface PopularThreadProps {
post: Comment; post: Comment;