feat: tambah fitur kalender umum village dengan indikator per jenis event

- 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
This commit is contained in:
2026-05-11 15:19:21 +08:00
parent 74d8b8ef31
commit 84935e8188
7 changed files with 362 additions and 19 deletions

View File

@@ -619,6 +619,16 @@ export const apiGetCalendarHistory = async ({ user, search, division, page }: {
return response.data;
};
export const apiGetVillageCalendarByDate = async ({ user, date }: { user: string, date: string }) => {
const response = await api.get(`mobile/village-calendar?user=${user}&date=${date}`);
return response.data;
};
export const apiGetVillageCalendarIndicator = async ({ user, date }: { user: string, date: string }) => {
const response = await api.get(`mobile/village-calendar/indicator?user=${user}&date=${date}`);
return response.data;
};
export const apiCreateCalendar = async ({ data }: { data: { idDivision: string, title: string, desc: string, timeStart: string, timeEnd: string, dateStart: string, repeatEventTyper: string, repeatValue: string, linkMeet: string, member: any[], user: string } }) => {
const response = await api.post(`/mobile/calendar`, data)
return response.data;