From 6ec259a0e71174651bae95d4628138bf6fd68742 Mon Sep 17 00:00:00 2001
From: kj_sh604
Date: Sun, 15 Mar 2026 16:19:35 -0400
Subject: refactor: packages/

---
 packages/excalidraw/components/ButtonSelect.tsx | 30 +++++++++++++++++++++++++
 1 file changed, 30 insertions(+)
 create mode 100644 packages/excalidraw/components/ButtonSelect.tsx

(limited to 'packages/excalidraw/components/ButtonSelect.tsx')

diff --git a/packages/excalidraw/components/ButtonSelect.tsx b/packages/excalidraw/components/ButtonSelect.tsx
new file mode 100644
index 0000000..c47ff65
--- /dev/null
+++ b/packages/excalidraw/components/ButtonSelect.tsx
@@ -0,0 +1,30 @@
+import clsx from "clsx";
+
+export const ButtonSelect = <T extends Object>({
+  options,
+  value,
+  onChange,
+  group,
+}: {
+  options: { value: T; text: string }[];
+  value: T | null;
+  onChange: (value: T) => void;
+  group: string;
+}) => (
+  <div className="buttonList">
+    {options.map((option) => (
+      <label
+        key={option.text}
+        className={clsx({ active: value === option.value })}
+      >
+        <input
+          type="radio"
+          name={group}
+          onChange={() => onChange(option.value)}
+          checked={value === option.value}
+        />
+        {option.text}
+      </label>
+    ))}
+  </div>
+);
-- 
cgit v1.2.3

