mirror of
https://git.kescher.at/CatCatNya/catstodon.git
synced 2024-11-28 11:41:37 +01:00
a1920425ca
Port 6bbcd9348e
to glitch-soc
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
29 lines
836 B
TypeScript
29 lines
836 B
TypeScript
import CheckIcon from 'mastodon/../material-icons/400-24px/check.svg?react';
|
|
|
|
import { Icon } from './icon';
|
|
|
|
const domParser = new DOMParser();
|
|
|
|
const stripRelMe = (html: string) => {
|
|
const document = domParser.parseFromString(html, 'text/html').documentElement;
|
|
|
|
document.querySelectorAll<HTMLAnchorElement>('a[rel]').forEach((link) => {
|
|
link.rel = link.rel
|
|
.split(' ')
|
|
.filter((x: string) => x !== 'me')
|
|
.join(' ');
|
|
});
|
|
|
|
const body = document.querySelector('body');
|
|
return body ? { __html: body.innerHTML } : undefined;
|
|
};
|
|
|
|
interface Props {
|
|
link: string;
|
|
}
|
|
export const VerifiedBadge: React.FC<Props> = ({ link }) => (
|
|
<span className='verified-badge'>
|
|
<Icon id='check' icon={CheckIcon} className='verified-badge__mark' />
|
|
<span dangerouslySetInnerHTML={stripRelMe(link)} />
|
|
</span>
|
|
);
|