import * as React from "react";
import { useState, useEffect, useCallback } from "react";
import { Text, View, TouchableOpacity, ViewStyle } from "react-native";
import { style } from "./style";
import { useSiteSettings } from "../../providers/site";
interface Tab {
id: string;
title: string;
content: React.ReactNode;
}
interface TabsProps {
items: Tab[];
contentStyle?: ViewStyle;
onSetActiveTab: (tab: string) => void;
activeTab: any;
}
export const Tabs = ({
items,
contentStyle,
onSetActiveTab,
activeTab,
}: TabsProps) => {
const { style: siteStyle } = useSiteSettings();
const onTabItemPress = useCallback(
(id: string) => () => {
onSetActiveTab(id);
},
[items]
);
return (
<>
{items.map(({ title, id }) => (
{title}
))}
{items.map(({ content, id }) =>
activeTab === id ? (
{content}
) : null
)}
>
);
};