Grabbed dndbeyond's source code

```
~/go/bin/sourcemapper -output ddb -jsurl https://media.dndbeyond.com/character-app/static/js/main.90aa78c5.js
```
This commit is contained in:
2025-05-28 11:50:03 -07:00
commit 8df9031d27
3592 changed files with 319051 additions and 0 deletions
+52
View File
@@ -0,0 +1,52 @@
import clsx from "clsx";
import { AnchorHTMLAttributes, FC } from "react";
import { Link as RouterLink } from "react-router-dom";
interface LinkProps
extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>, "onClick"> {
onClick?: Function;
useTheme?: boolean;
useRouter?: boolean;
}
export const Link: FC<LinkProps> = ({
children,
className,
href,
onClick,
useTheme,
useRouter,
...props
}) => {
//TODO - refactor to handle stop propagation on the oustide of this component (about 7 or so files to change)
const handleClick = (e: React.MouseEvent): void => {
if (onClick) {
e.stopPropagation();
e.nativeEvent.stopImmediatePropagation();
onClick();
}
};
if (useRouter)
return (
<RouterLink
className={className}
onClick={handleClick}
to={href || ""}
{...props}
>
{children}
</RouterLink>
);
return (
<a
className={clsx(["ddbc-link", useTheme && "ddbc-theme-link", className])}
onClick={handleClick}
href={href}
{...props}
>
{children}
</a>
);
};