aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/examples/with-create-react-app/packages/ui/src
diff options
context:
space:
mode:
author简律纯 <hsiangnianian@outlook.com>2023-04-28 01:47:57 +0800
committer简律纯 <hsiangnianian@outlook.com>2023-04-28 01:47:57 +0800
commit8b2c4a38a461ff5ecc95972291bc711e2c5dec9a (patch)
tree29f552e3df949073e21bf5c76d7abc3044830ec6 /examples/with-create-react-app/packages/ui/src
parentfc8c5fdce62fb229202659408798a7b6c98f6e8b (diff)
downloadHydroRoll-8b2c4a38a461ff5ecc95972291bc711e2c5dec9a.tar.gz
HydroRoll-8b2c4a38a461ff5ecc95972291bc711e2c5dec9a.zip
Diffstat (limited to 'examples/with-create-react-app/packages/ui/src')
-rw-r--r--examples/with-create-react-app/packages/ui/src/Link.tsx20
-rw-r--r--examples/with-create-react-app/packages/ui/src/index.tsx4
2 files changed, 24 insertions, 0 deletions
diff --git a/examples/with-create-react-app/packages/ui/src/Link.tsx b/examples/with-create-react-app/packages/ui/src/Link.tsx
new file mode 100644
index 0000000..416bac8
--- /dev/null
+++ b/examples/with-create-react-app/packages/ui/src/Link.tsx
@@ -0,0 +1,20 @@
+import * as React from "react";
+
+interface LinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
+ children: React.ReactNode;
+ href: string;
+}
+
+export const Link = (props: LinkProps) => {
+ const { children, href, ...rest } = props;
+
+ if (rest.target === "_blank") {
+ rest.rel = "noopener noreferrer";
+ }
+
+ return (
+ <a href={href} {...rest}>
+ {children}
+ </a>
+ );
+};
diff --git a/examples/with-create-react-app/packages/ui/src/index.tsx b/examples/with-create-react-app/packages/ui/src/index.tsx
new file mode 100644
index 0000000..c7aa624
--- /dev/null
+++ b/examples/with-create-react-app/packages/ui/src/index.tsx
@@ -0,0 +1,4 @@
+// eslint-disable-next-line @typescript-eslint/no-unused-vars
+import * as React from "react";
+
+export * from "./Link";