Replace unit text input with a drop down
This commit is contained in:
parent
ec0fdbcec7
commit
7f4c0a5f10
19
EditSet.tsx
19
EditSet.tsx
|
@ -28,6 +28,8 @@ import GymSet from "./gym-set";
|
||||||
import Settings from "./settings";
|
import Settings from "./settings";
|
||||||
import StackHeader from "./StackHeader";
|
import StackHeader from "./StackHeader";
|
||||||
import { toast } from "./toast";
|
import { toast } from "./toast";
|
||||||
|
import Select from "./Select";
|
||||||
|
import { PERMISSIONS, RESULTS, check, request } from "react-native-permissions";
|
||||||
|
|
||||||
export default function EditSet() {
|
export default function EditSet() {
|
||||||
const { params } = useRoute<RouteProp<StackParams, "EditSet">>();
|
const { params } = useRoute<RouteProp<StackParams, "EditSet">>();
|
||||||
|
@ -50,7 +52,6 @@ export default function EditSet() {
|
||||||
const [setOptions, setSets] = useState<GymSet[]>([]);
|
const [setOptions, setSets] = useState<GymSet[]>([]);
|
||||||
const weightRef = useRef<TextInput>(null);
|
const weightRef = useRef<TextInput>(null);
|
||||||
const repsRef = useRef<TextInput>(null);
|
const repsRef = useRef<TextInput>(null);
|
||||||
const unitRef = useRef<TextInput>(null);
|
|
||||||
|
|
||||||
const [selection, setSelection] = useState({
|
const [selection, setSelection] = useState({
|
||||||
start: 0,
|
start: 0,
|
||||||
|
@ -70,6 +71,9 @@ export default function EditSet() {
|
||||||
const milliseconds =
|
const milliseconds =
|
||||||
(first?.minutes ?? 3) * 60 * 1000 + (first?.seconds ?? 0) * 1000;
|
(first?.minutes ?? 3) * 60 * 1000 + (first?.seconds ?? 0) * 1000;
|
||||||
console.log(`${EditSet.name}.timer:`, { milliseconds });
|
console.log(`${EditSet.name}.timer:`, { milliseconds });
|
||||||
|
const canNotify = await check(PERMISSIONS.ANDROID.POST_NOTIFICATIONS);
|
||||||
|
if (canNotify === RESULTS.DENIED)
|
||||||
|
await request(PERMISSIONS.ANDROID.POST_NOTIFICATIONS);
|
||||||
if (milliseconds) NativeModules.AlarmModule.timer(milliseconds);
|
if (milliseconds) NativeModules.AlarmModule.timer(milliseconds);
|
||||||
},
|
},
|
||||||
[settings]
|
[settings]
|
||||||
|
@ -287,12 +291,15 @@ export default function EditSet() {
|
||||||
</View>
|
</View>
|
||||||
|
|
||||||
{settings.showUnit && (
|
{settings.showUnit && (
|
||||||
<AppInput
|
<Select
|
||||||
autoCapitalize="none"
|
|
||||||
label="Unit"
|
|
||||||
value={unit}
|
value={unit}
|
||||||
onChangeText={setUnit}
|
onChange={setUnit}
|
||||||
innerRef={unitRef}
|
items={[
|
||||||
|
{ label: "kg", value: "kg" },
|
||||||
|
{ label: "lb", value: "lb" },
|
||||||
|
{ label: "stone", value: "stone" },
|
||||||
|
]}
|
||||||
|
label="Unit"
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
|
|
|
@ -21,6 +21,7 @@ import Settings from "./settings";
|
||||||
import StackHeader from "./StackHeader";
|
import StackHeader from "./StackHeader";
|
||||||
import StartPlanItem from "./StartPlanItem";
|
import StartPlanItem from "./StartPlanItem";
|
||||||
import { toast } from "./toast";
|
import { toast } from "./toast";
|
||||||
|
import { PERMISSIONS, RESULTS, check, request } from "react-native-permissions";
|
||||||
|
|
||||||
export default function StartPlan() {
|
export default function StartPlan() {
|
||||||
const { params } = useRoute<RouteProp<StackParams, "StartPlan">>();
|
const { params } = useRoute<RouteProp<StackParams, "StartPlan">>();
|
||||||
|
@ -114,6 +115,9 @@ export default function StartPlan() {
|
||||||
if (!settings.alarm) return;
|
if (!settings.alarm) return;
|
||||||
const milliseconds =
|
const milliseconds =
|
||||||
Number(best.minutes) * 60 * 1000 + Number(best.seconds) * 1000;
|
Number(best.minutes) * 60 * 1000 + Number(best.seconds) * 1000;
|
||||||
|
const canNotify = await check(PERMISSIONS.ANDROID.POST_NOTIFICATIONS);
|
||||||
|
if (canNotify === RESULTS.DENIED)
|
||||||
|
await request(PERMISSIONS.ANDROID.POST_NOTIFICATIONS);
|
||||||
NativeModules.AlarmModule.timer(milliseconds);
|
NativeModules.AlarmModule.timer(milliseconds);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user