feat: implement pagination and NewWrapper on donation and investment screens

- Implement pagination on investment screens (ScreenMyHolding, ScreenInvestor, ScreenRecapOfNews, ScreenListOfNews)
- Implement pagination on donation screens (ScreenStatus)
- Update API functions to support pagination with page parameter (apiInvestmentGetAll, apiInvestmentGetInvestorById, apiInvestmentGetNews, apiDonationGetByStatus)
- Replace ViewWrapper with NewWrapper for better UI experience
- Update app directory files to use new modular components from screens directory
- Add pull-to-refresh and infinite scroll functionality
- Improve performance by loading data incrementally
- Apply NewWrapper to donation create and create-story screens

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
2026-02-09 17:35:54 +08:00
parent 38a6b424e8
commit 2705f96b01
12 changed files with 185 additions and 136 deletions

View File

@@ -16,6 +16,9 @@ export default function Donation_ButtonStatusSection({
}) {
const [isLoading, setLoading] = useState(false);
const [isLoadingDelete, setLoadingDelete] = useState(false);
const path: any = (status: string) => {
return `/donation/(tabs)/status?status=${status}`;
};
const handleBatalkanReview = async () => {
AlertDefaultSystem({
title: "Batalkan Review",
@@ -43,7 +46,7 @@ export default function Donation_ButtonStatusSection({
text1: response.message,
});
router.back();
router.push(path("draft"));
} catch (error) {
console.log("[ERROR]", error);
} finally {
@@ -80,7 +83,7 @@ export default function Donation_ButtonStatusSection({
text1: response.message,
});
router.back();
router.replace(path("review"));
} catch (error) {
console.log("[ERROR]", error);
} finally {
@@ -117,7 +120,7 @@ export default function Donation_ButtonStatusSection({
text1: response.message,
});
router.back();
router.replace(path("draft"));
} catch (error) {
console.log("[ERROR]", error);
} finally {