Add:
- api-client/api-voting: kumpulan fetching api voting

Fix:
- UI create dan (tabs) status udah terintegrasi ke API

### No Isuue
This commit is contained in:
2025-09-17 17:31:44 +08:00
parent d09a566903
commit ce79d7c240
7 changed files with 347 additions and 69 deletions

View File

@@ -1,3 +1,4 @@
/* eslint-disable react-hooks/exhaustive-deps */
import {
AlertDefaultSystem,
BackButton,
@@ -11,14 +12,42 @@ import { IconArchive, IconContribution, IconEdit } from "@/components/_Icon";
import { IMenuDrawerItem } from "@/components/_Interface/types";
import { Voting_BoxDetailSection } from "@/screens/Voting/BoxDetailSection";
import Voting_ButtonStatusSection from "@/screens/Voting/ButtonStatusSection";
import { router, Stack, useLocalSearchParams } from "expo-router";
import { useState } from "react";
import { apiVotingGetOne } from "@/service/api-client/api-voting";
import {
router,
Stack,
useFocusEffect,
useLocalSearchParams,
} from "expo-router";
import { useCallback, useState } from "react";
import { useAuth } from "@/hooks/use-auth";
export default function VotingDetailStatus() {
const {user} = useAuth()
const { id, status } = useLocalSearchParams();
console.log("ID >> ", id);
console.log("STATUS >> ", status);
const [openDrawerDraft, setOpenDrawerDraft] = useState(false);
const [openDrawerPublish, setOpenDrawerPublish] = useState(false);
const [data, setData] = useState<any>(null);
useFocusEffect(
useCallback(() => {
onLoadData();
}, [id])
);
const onLoadData = async () => {
try {
const response = await apiVotingGetOne({ id: id as string });
console.log("Response", JSON.stringify(response.data, null, 2));
setData(response.data);
} catch (error) {
console.log(error);
}
};
const handlePressDraft = (item: IMenuDrawerItem) => {
console.log("PATH >> ", item.path);
router.navigate(item.path as any);
@@ -57,8 +86,8 @@ export default function VotingDetailStatus() {
}}
/>
<ViewWrapper>
<Voting_BoxDetailSection />
<Voting_ButtonStatusSection status={status as string} />
<Voting_BoxDetailSection data={data as any}/>
<Voting_ButtonStatusSection id={id as string} status={status as string} />
<Spacing />
</ViewWrapper>