From 66a0f8e848342bb5e5ceda36f5095f3ad2b0de29 Mon Sep 17 00:00:00 2001
From: Paul Frazee <pfrazee@gmail.com>
Date: Sun, 18 Dec 2022 17:28:28 -0600
Subject: Add WIP 'report post' modal

---
 src/view/com/util/forms/RadioButton.tsx | 54 +++++++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100644 src/view/com/util/forms/RadioButton.tsx

(limited to 'src/view/com/util/forms/RadioButton.tsx')

diff --git a/src/view/com/util/forms/RadioButton.tsx b/src/view/com/util/forms/RadioButton.tsx
new file mode 100644
index 000000000..b311a4260
--- /dev/null
+++ b/src/view/com/util/forms/RadioButton.tsx
@@ -0,0 +1,54 @@
+import React from 'react'
+import {StyleSheet, Text, TouchableOpacity, View} from 'react-native'
+import {colors} from '../../../lib/styles'
+
+export function RadioButton({
+  label,
+  isSelected,
+  onPress,
+}: {
+  label: string
+  isSelected: boolean
+  onPress: () => void
+}) {
+  return (
+    <TouchableOpacity style={styles.outer} onPress={onPress}>
+      <View style={styles.circle}>
+        {isSelected ? <View style={styles.circleFill} /> : undefined}
+      </View>
+      <Text style={styles.label}>{label}</Text>
+    </TouchableOpacity>
+  )
+}
+
+const styles = StyleSheet.create({
+  outer: {
+    flexDirection: 'row',
+    alignItems: 'center',
+    marginBottom: 5,
+    borderRadius: 8,
+    borderWidth: 1,
+    borderColor: colors.gray2,
+    paddingHorizontal: 10,
+    paddingVertical: 8,
+  },
+  circle: {
+    width: 30,
+    height: 30,
+    borderRadius: 15,
+    padding: 4,
+    borderWidth: 1,
+    borderColor: colors.gray3,
+    marginRight: 10,
+  },
+  circleFill: {
+    width: 20,
+    height: 20,
+    borderRadius: 10,
+    backgroundColor: colors.blue3,
+  },
+  label: {
+    flex: 1,
+    fontSize: 17,
+  },
+})
-- 
cgit 1.4.1

