- Tambah halaman /village-calendar dengan monthly grid dan agenda view - Tampilkan acara divisi (DivisionCalendarReminder) dan kegiatan (ProjectTask) se-village - Indikator dot dua warna pada kalender: ungu untuk acara divisi, biru-abu untuk kegiatan - Tambah endpoint apiGetVillageCalendarByDate dan apiGetVillageCalendarIndicator - Tambah menu Kalender di halaman /feature dengan grid layout flexWrap - Sesuaikan warna EventItem dengan TYPE_COLORS village-calendar - Pindahkan inline style ke Styles.ts sebagai class baru
25 lines
880 B
TypeScript
25 lines
880 B
TypeScript
import Styles from "@/constants/Styles";
|
|
import { useTheme } from "@/providers/ThemeProvider";
|
|
import React from "react";
|
|
import { TouchableWithoutFeedback, View } from "react-native";
|
|
import Text from "./Text";
|
|
|
|
type Props = {
|
|
onPress?: () => void;
|
|
icon: React.ReactNode;
|
|
text: string;
|
|
};
|
|
|
|
export function ButtonFiturMenu({ onPress, icon, text }: Props) {
|
|
const { colors } = useTheme();
|
|
return (
|
|
<TouchableWithoutFeedback onPress={onPress}>
|
|
<View style={{ alignItems: 'center', width: '25%' }}>
|
|
<View style={[Styles.btnFiturMenu, { backgroundColor: colors.card, borderColor: colors.icon + '20', shadowColor: colors.text }]}>
|
|
{icon}
|
|
</View>
|
|
<Text style={[Styles.mt05, { color: colors.text, textAlign: 'center', fontSize: 12 }]}>{text}</Text>
|
|
</View>
|
|
</TouchableWithoutFeedback>
|
|
)
|
|
} |