import React, { useState } from "react";
import { Pressable, Text, View, useWindowDimensions } from "react-native";
import * as Haptics from "expo-haptics";
interface CommandBarProps {
onSessions: () => void;
onScreenshot: () => void;
onHelp: () => void;
}
export function CommandBar({ onSessions, onScreenshot, onHelp }: CommandBarProps) {
return (
);
}
interface TextModeCommandBarProps {
onSessions: () => void;
onScreenshot: () => void;
onNavigate: () => void;
onClear: () => void;
}
export function TextModeCommandBar({
onSessions,
onScreenshot,
onNavigate,
onClear,
}: TextModeCommandBarProps) {
return (
);
}
function CmdBtn({
icon,
label,
bg,
border,
onPress,
}: {
icon: string;
label: string;
bg: string;
border: string;
onPress: () => void;
}) {
const [pressed, setPressed] = useState(false);
const { width } = useWindowDimensions();
return (
setPressed(true)}
onPressOut={() => setPressed(false)}
onPress={() => {
Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light);
onPress();
}}
>
{icon}
{label}
);
}