From 052cc1a5a4668d7cb17fb273a022aa5b820d1faa Mon Sep 17 00:00:00 2001
From: Sam Nystrom <sam@samnystrom.dev>
Date: Wed, 13 Mar 2024 05:03:22 +0000
Subject: refactor: move styles into separate components

---
 src/components/Button.tsx | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
 create mode 100644 src/components/Button.tsx

(limited to 'src/components/Button.tsx')

diff --git a/src/components/Button.tsx b/src/components/Button.tsx
new file mode 100644
index 0000000..60f42c7
--- /dev/null
+++ b/src/components/Button.tsx
@@ -0,0 +1,19 @@
+import type { ComponentChildren } from 'preact';
+import './Button.css';
+
+export interface ButtonProps {
+	children: ComponentChildren;
+	kind?: 'primary' | 'outline' | 'ghost';
+	props: Record<string, any>;
+}
+
+const Button = ({ children, kind = 'primary', ...props }: ButtonProps) => {
+	const Elem = props.href ? 'a' : 'button';
+	return (
+		<Elem {...props} class={(props.class || '') + ' __Button ' + kind}>
+			{children}
+		</Elem>
+	);
+};
+
+export default Button;
\ No newline at end of file
-- 
cgit v1.2.3

