diff --git a/components/_ShareComponent/NewWrapper.tsx b/components/_ShareComponent/NewWrapper.tsx
index 512ac15..eb3862a 100644
--- a/components/_ShareComponent/NewWrapper.tsx
+++ b/components/_ShareComponent/NewWrapper.tsx
@@ -84,7 +84,7 @@ const NewWrapper = (props: NewWrapperProps) => {
return {content};
};
- // 🔹 Mode Dinamis
+ // 🔹 Mode Dinamis (FlatList)
if ("listData" in props) {
const listProps = props as ListModeProps;
@@ -96,7 +96,7 @@ const NewWrapper = (props: NewWrapperProps) => {
{headerComponent && (
{headerComponent}
)}
-
+
{
return `fallback-${index}-${JSON.stringify(item)}`;
}
- // Gabungkan ID dengan indeks untuk mencegah duplikasi
return `${String(item.id)}-${index}`;
})
}
- refreshControl={refreshControl} // ✅ dari BaseProps
+ refreshControl={refreshControl}
onEndReached={listProps.onEndReached}
onEndReachedThreshold={0.5}
ListHeaderComponent={listProps.ListHeaderComponent}
ListFooterComponent={listProps.ListFooterComponent}
ListEmptyComponent={listProps.ListEmptyComponent}
- contentContainerStyle={{ flexGrow: 1 }}
+ contentContainerStyle={{
+ flexGrow: 1,
+ paddingBottom: footerComponent && !hideFooter ? OS_HEIGHT : 0
+ }}
keyboardShouldPersistTaps="handled"
/>
- {footerComponent ? (
-
- {footerComponent}
-
- ) : hideFooter ? null : (
+ {/* Footer dengan position absolute untuk stay di bawah */}
+ {footerComponent && !hideFooter && (
+
+
+ {footerComponent}
+
+
+ )}
+
+ {!footerComponent && !hideFooter && (
{
);
}
- // 🔹 Mode Statis
+ // 🔹 Mode Statis (ScrollView)
const staticProps = props as StaticModeProps;
return (
@@ -158,7 +165,10 @@ const NewWrapper = (props: NewWrapperProps) => {
@@ -168,24 +178,19 @@ const NewWrapper = (props: NewWrapperProps) => {
- {/*
-
- {renderContainer(staticProps.children)}
-
- */}
+ {/* Footer dengan position absolute untuk stay di bawah */}
+ {footerComponent && !hideFooter && (
+
+
+ {footerComponent}
+
+
+ )}
- {footerComponent ? (
-
- {footerComponent}
-
- ) : hideFooter ? null : (
+ {!footerComponent && !hideFooter && (
{
);
};
+// Styles untuk footer dengan position absolute
+const styles = {
+ footerContainer: {
+ position: "absolute" as const,
+ bottom: 0,
+ left: 0,
+ right: 0,
+ backgroundColor: MainColor.darkblue,
+ },
+};
+
export default NewWrapper;