From 633b18e92d146a20d5920fcd3623d1b4f4852116 Mon Sep 17 00:00:00 2001 From: amel Date: Wed, 26 Feb 2025 12:32:01 +0800 Subject: [PATCH 1/3] upd: ui home Deskripsi: - update package - ui diskusi home - ui event home - ui bar chart home - ui pie chart home - ui divisi home No Issues --- app/(application)/home.tsx | 21 ++++- bun.lockb | Bin 436332 -> 442056 bytes components/buttonFiturMenu.tsx | 22 +++++ components/discussionItem.tsx | 30 +++++++ components/eventItem.tsx | 23 ++++++ components/home/carouselHome.tsx | 2 +- components/home/chartDokumenHome.tsx | 39 +++++++++ components/home/chartProgresHome.tsx | 31 ++++++++ components/home/discussionHome.tsx | 16 ++++ components/home/divisionHome.tsx | 38 +++++++++ components/home/eventHome.tsx | 15 ++++ components/home/fiturHome.tsx | 20 ++++- components/home/headerRightHome.tsx | 7 +- components/home/projectHome.tsx | 42 ++++++++++ components/paperGridContent.tsx | 23 ++++++ components/progressBar.tsx | 23 ++++++ constants/ColorsStatus.ts | 17 ++++ constants/Styles.ts | 115 +++++++++++++++++++++++++++ package.json | 3 + 19 files changed, 477 insertions(+), 10 deletions(-) create mode 100644 components/buttonFiturMenu.tsx create mode 100644 components/discussionItem.tsx create mode 100644 components/eventItem.tsx create mode 100644 components/home/chartDokumenHome.tsx create mode 100644 components/home/chartProgresHome.tsx create mode 100644 components/home/discussionHome.tsx create mode 100644 components/home/divisionHome.tsx create mode 100644 components/home/eventHome.tsx create mode 100644 components/home/projectHome.tsx create mode 100644 components/paperGridContent.tsx create mode 100644 components/progressBar.tsx create mode 100644 constants/ColorsStatus.ts diff --git a/app/(application)/home.tsx b/app/(application)/home.tsx index 80d594d..d8f710e 100644 --- a/app/(application)/home.tsx +++ b/app/(application)/home.tsx @@ -1,7 +1,15 @@ import CaraouselHome from "@/components/home/carouselHome"; +import ChartDokumenHome from "@/components/home/chartDokumenHome"; +import ChartProgresHome from "@/components/home/chartProgresHome"; +import DisccussionHome from "@/components/home/discussionHome"; +import DivisionHome from "@/components/home/divisionHome"; +import EventHome from "@/components/home/eventHome"; +import FiturHome from "@/components/home/fiturHome"; import { HeaderRightHome } from "@/components/home/headerRightHome"; +import ProjectHome from "@/components/home/projectHome"; +import Styles from "@/constants/Styles"; import { Stack } from "expo-router"; -import { SafeAreaView, ScrollView } from "react-native"; +import { SafeAreaView, ScrollView, View } from "react-native"; export default function Home() { return ( @@ -15,7 +23,16 @@ export default function Home() { }} /> - + + + + + + + + + + ) diff --git a/bun.lockb b/bun.lockb index 466ba7b558b2039c9081cf5994da54af7b03b998..6b99dd77ad695d4ff32c512cc9b50fd14ddc5e7e 100755 GIT binary patch delta 80181 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 JN4OUV{C{ZN`=kH> delta 77854 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 diff --git a/components/buttonFiturMenu.tsx b/components/buttonFiturMenu.tsx new file mode 100644 index 0000000..eb57baa --- /dev/null +++ b/components/buttonFiturMenu.tsx @@ -0,0 +1,22 @@ +import Styles from "@/constants/Styles"; +import React from "react"; +import { Text, TouchableWithoutFeedback, View } from "react-native"; + +type Props = { + onPress?: () => void; + icon: React.ReactNode; + text: string; +}; + +export function ButtonFiturMenu({ onPress, icon, text }: Props) { + return ( + + + + {icon} + + {text} + + + ) +} \ No newline at end of file diff --git a/components/discussionItem.tsx b/components/discussionItem.tsx new file mode 100644 index 0000000..747899d --- /dev/null +++ b/components/discussionItem.tsx @@ -0,0 +1,30 @@ +import Styles from "@/constants/Styles"; +import { Ionicons, Feather } from "@expo/vector-icons"; +import { Text, View } from "react-native"; + +type Props = { + title: string + user: string + date: string +} + +export default function DiscussionItem({ title, user, date }: Props) { + return ( + + + + {title} + + + + + {user} + + + + {date} + + + + ) +} \ No newline at end of file diff --git a/components/eventItem.tsx b/components/eventItem.tsx new file mode 100644 index 0000000..89f2674 --- /dev/null +++ b/components/eventItem.tsx @@ -0,0 +1,23 @@ +import Styles from "@/constants/Styles" +import { Text, View } from "react-native" + +type Props = { + category: 'purple' | 'orange' + title: string + user: string + jamAwal: string + jamAkhir: string +} + +export default function EventItem({ category, title, user, jamAwal, jamAkhir }: Props) { + return ( + + + + {jamAwal} - {jamAkhir} + {title} + Dibuat oleh : {user} + + + ) +} \ No newline at end of file diff --git a/components/home/carouselHome.tsx b/components/home/carouselHome.tsx index a1866f5..a466451 100644 --- a/components/home/carouselHome.tsx +++ b/components/home/carouselHome.tsx @@ -11,7 +11,7 @@ export default function CaraouselHome() { const progress = useSharedValue(0); return ( - + + JUMLAH DOKUMEN + { + return ( + + {item.value} + + ); + }} + /> + + ) +} \ No newline at end of file diff --git a/components/home/chartProgresHome.tsx b/components/home/chartProgresHome.tsx new file mode 100644 index 0000000..d8a39dd --- /dev/null +++ b/components/home/chartProgresHome.tsx @@ -0,0 +1,31 @@ +import Styles from "@/constants/Styles"; +import { Text, View } from "react-native"; +import { PieChart } from "react-native-gifted-charts"; + +export default function ChartProgresHome() { + const pieData = [ + { value: 54, text: "54%", color: '#177AD5' }, + { value: 40, text: "40%", color: '#92cc76' }, + { value: 20, text: "20%", color: '#ED6665' }, + { value: 0, text: "0%", color: '#fac858' }, + ]; + + return ( + + PROGRES KEGIATAN + + + ) +} \ No newline at end of file diff --git a/components/home/discussionHome.tsx b/components/home/discussionHome.tsx new file mode 100644 index 0000000..b4e6ac6 --- /dev/null +++ b/components/home/discussionHome.tsx @@ -0,0 +1,16 @@ +import Styles from "@/constants/Styles"; +import { Text, View } from "react-native"; +import DiscussionItem from "../discussionItem"; + +export default function DisccussionHome() { + return ( + + Diskusi + + + + + + + ) +} \ No newline at end of file diff --git a/components/home/divisionHome.tsx b/components/home/divisionHome.tsx new file mode 100644 index 0000000..c7a0406 --- /dev/null +++ b/components/home/divisionHome.tsx @@ -0,0 +1,38 @@ +import Styles from "@/constants/Styles"; +import React from "react"; +import { Dimensions, Text, View } from "react-native"; +import Carousel, { ICarouselInstance } from "react-native-reanimated-carousel"; +import PaperGridContent from "../paperGridContent"; + +export default function DivisionHome() { + const data = [...new Array(6).keys()]; + const ref = React.useRef(null); + const width = Dimensions.get("window").width; + + + return ( + + Divisi Teraktif + ( + + + 12 + KEGIATAN + + + )} + /> + + ) +} \ No newline at end of file diff --git a/components/home/eventHome.tsx b/components/home/eventHome.tsx new file mode 100644 index 0000000..ece6feb --- /dev/null +++ b/components/home/eventHome.tsx @@ -0,0 +1,15 @@ +import Styles from "@/constants/Styles"; +import { Text, View } from "react-native"; +import EventItem from "../eventItem"; + +export default function EventHome() { + return ( + + Acara Hari Ini + + + + + + ) +} \ No newline at end of file diff --git a/components/home/fiturHome.tsx b/components/home/fiturHome.tsx index 6d8d3d6..7350b66 100644 --- a/components/home/fiturHome.tsx +++ b/components/home/fiturHome.tsx @@ -1,3 +1,19 @@ -export default function FiturHome(){ - +import Styles from "@/constants/Styles" +import { AntDesign, MaterialCommunityIcons, MaterialIcons } from "@expo/vector-icons" +import React from "react" +import { Text, View } from "react-native" +import { ButtonFiturMenu } from "../buttonFiturMenu" + +export default function FiturHome() { + return ( + + Fitur + + } text="Divisi" /> + } text="Kegiatan" /> + } text="Pengumuman" /> + } text="Semua" /> + + + ) } \ No newline at end of file diff --git a/components/home/headerRightHome.tsx b/components/home/headerRightHome.tsx index c3b9d96..85c1e3e 100644 --- a/components/home/headerRightHome.tsx +++ b/components/home/headerRightHome.tsx @@ -2,14 +2,11 @@ import { View } from "react-native" import { router } from "expo-router" import Feather from '@expo/vector-icons/Feather'; import { ButtonHeader } from "../buttonHeader"; +import Styles from "@/constants/Styles"; export function HeaderRightHome() { return ( - + } onPress={() => { router.push('/') }} /> } onPress={() => { router.push('/') }} /> } onPress={() => { router.push('/') }} /> diff --git a/components/home/projectHome.tsx b/components/home/projectHome.tsx new file mode 100644 index 0000000..ec9b397 --- /dev/null +++ b/components/home/projectHome.tsx @@ -0,0 +1,42 @@ +import Styles from "@/constants/Styles"; +import React from "react"; +import { Dimensions, Text, View } from "react-native"; +import Carousel, { ICarouselInstance } from "react-native-reanimated-carousel"; +import ProgressBar from "../progressBar"; +import { ColorsStatus } from "@/constants/ColorsStatus"; +import PaperGridContent from "../paperGridContent"; + +export default function ProjectHome() { + const data = [...new Array(6).keys()]; + const ref = React.useRef(null); + const width = Dimensions.get("window").width; + + return ( + + Kegiatan Terupdate + ( + + + + 13 Februari 2025 + + DIKERJAKAN + + + + )} + /> + + ) +} \ No newline at end of file diff --git a/components/paperGridContent.tsx b/components/paperGridContent.tsx new file mode 100644 index 0000000..5f64490 --- /dev/null +++ b/components/paperGridContent.tsx @@ -0,0 +1,23 @@ +import { ColorsStatus } from "@/constants/ColorsStatus"; +import Styles from "@/constants/Styles"; +import { Text, View } from "react-native"; +import ProgressBar from "./progressBar"; + +type Props = { + content: 'carousel' | 'page'; + children: React.ReactNode; + title: string + headerColor: 'primary' | 'warning' +}; +export default function PaperGridContent({ content, children, title, headerColor }: Props) { + return ( + + + {title} + + + {children} + + + ) +} \ No newline at end of file diff --git a/components/progressBar.tsx b/components/progressBar.tsx new file mode 100644 index 0000000..e8e1d42 --- /dev/null +++ b/components/progressBar.tsx @@ -0,0 +1,23 @@ +import Styles from "@/constants/Styles"; +import { useEffect, useState } from "react"; +import { Animated, Text, View } from "react-native"; + +export default function ProgressBar() { + const [progress, setProgress] = useState(new Animated.Value(0)); + + + useEffect(() => { + Animated.timing(progress, { + // 100% = 255 + toValue: 127.5, + duration: 1000, + useNativeDriver: false + }).start(); + }, []); + + return ( + + + + ) +} \ No newline at end of file diff --git a/constants/ColorsStatus.ts b/constants/ColorsStatus.ts new file mode 100644 index 0000000..4265ca1 --- /dev/null +++ b/constants/ColorsStatus.ts @@ -0,0 +1,17 @@ +export const ColorsStatus = { + primary: { + backgroundColor: '#19345E' + }, + success: { + backgroundColor: 'green' + }, + info: { + backgroundColor: 'blue' + }, + warning: { + backgroundColor: '#FCAA4B' + }, + error: { + backgroundColor: '#DB1514' + } +} \ No newline at end of file diff --git a/constants/Styles.ts b/constants/Styles.ts index 5d89c52..cceb622 100644 --- a/constants/Styles.ts +++ b/constants/Styles.ts @@ -56,20 +56,64 @@ const Styles = StyleSheet.create({ cDefault: { color: '#19345E' }, + mb05: { + marginBottom: 5 + }, + mb10: { + marginBottom: 10 + }, mb15: { marginBottom: 15 }, mb30: { marginBottom: 30 }, + mv05: { + marginVertical: 5 + }, + mv15: { + marginVertical: 15 + }, + mv10: { + marginVertical: 10 + }, + mt05: { + marginTop: 5 + }, + mr05:{ + marginRight: 5 + }, + mr10: { + marginRight: 10 + }, + ph15: { + paddingHorizontal: 15, + }, round30: { borderRadius: 30 }, + labelStatus: { + paddingHorizontal: 15, + borderRadius: 10 + }, + rowSpaceBetween: { + justifyContent: 'space-between', + flexDirection: 'row' + }, + rowItemsCenter: { + flexDirection: 'row', + alignItems: 'center' + }, btnIconHeader: { backgroundColor: '#384288', padding: 7, borderRadius: 100, }, + btnFiturMenu: { + backgroundColor: '#FCAA4B', + padding: 10, + borderRadius: 100, + }, btnRound: { backgroundColor: '#19345E', borderWidth: 0, @@ -118,6 +162,77 @@ const Styles = StyleSheet.create({ borderRadius: 15, backgroundColor: '#19345E', display: 'flex', + }, + wrapGridContent: { + shadowColor: '#171717', + shadowOffset: { width: -2, height: 4 }, + shadowOpacity: 0.2, + shadowRadius: 3, + elevation: 10, + borderRadius: 15, + }, + wrapGridCaraousel: { + width: '80%', + height: 200, + shadowColor: '#171717', + shadowOffset: { width: -2, height: 4 }, + shadowOpacity: 0.2, + shadowRadius: 3, + elevation: 10, + borderRadius: 15, + }, + headerPaperGrid: { + paddingVertical: 25, + alignItems: 'center', + borderTopStartRadius: 15, + borderTopEndRadius: 15 + }, + contentPaperGrid: { + backgroundColor: 'white', + height: 150, + borderBottomEndRadius: 15, + borderBottomStartRadius: 15, + paddingHorizontal: 20, + justifyContent: 'space-evenly' + }, + wrapBar: { + height: 20, + backgroundColor: '#ccc', + borderRadius: 10, + margin: 10, + }, + contentBar: { + height: 20, + backgroundColor: 'orange', + borderRadius: 10, + }, + wrapPaper: { + padding: 15, + backgroundColor: 'white', + borderRadius: 15, + }, + contentItemCenter: { + justifyContent: 'center', + alignItems: 'center' + }, + itemEvent: { + padding: 10, + borderRadius: 10, + flexDirection: 'row', + alignContent: 'stretch', + marginBottom: 10 + }, + dividerEvent: { + width: 7, + borderRadius: 5, + marginRight: 10 + }, + wrapItemDiscussion: { + padding: 10, + borderRadius: 10, + borderColor: '#d6d8f6', + borderWidth: 1, + marginBottom: 10 } }) diff --git a/package.json b/package.json index f9e04f4..e99a627 100644 --- a/package.json +++ b/package.json @@ -23,6 +23,7 @@ "expo-constants": "~17.0.7", "expo-font": "~13.0.4", "expo-haptics": "~14.0.1", + "expo-linear-gradient": "~14.0.2", "expo-linking": "~7.0.5", "expo-router": "~4.0.17", "expo-splash-screen": "~0.29.22", @@ -35,10 +36,12 @@ "react-native": "0.76.7", "react-native-confirmation-code-field": "^7.4.0", "react-native-gesture-handler": "~2.20.2", + "react-native-gifted-charts": "^1.4.57", "react-native-reanimated": "~3.16.1", "react-native-reanimated-carousel": "^4.0.2", "react-native-safe-area-context": "4.12.0", "react-native-screens": "~4.4.0", + "react-native-svg": "15.8.0", "react-native-web": "~0.19.13", "react-native-webview": "13.12.5" }, From a25a0515c41bfcd19e7ba64ffe446800c5e8ad42 Mon Sep 17 00:00:00 2001 From: amel Date: Wed, 26 Feb 2025 14:28:32 +0800 Subject: [PATCH 2/3] upd: ui halaman list fitur Deskripsi: - ui list fitur page No Issues --- app/(application)/feature.tsx | 37 +++++++++++++++++++++++++++++++++ components/buttonBackHeader.tsx | 17 +++++++++++++++ components/home/fiturHome.tsx | 3 ++- constants/Styles.ts | 3 +++ 4 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 app/(application)/feature.tsx create mode 100644 components/buttonBackHeader.tsx diff --git a/app/(application)/feature.tsx b/app/(application)/feature.tsx new file mode 100644 index 0000000..af411a5 --- /dev/null +++ b/app/(application)/feature.tsx @@ -0,0 +1,37 @@ +import ButtonBackHeader from "@/components/buttonBackHeader"; +import { ButtonFiturMenu } from "@/components/buttonFiturMenu"; +import Styles from "@/constants/Styles"; +import { AntDesign, Entypo, Ionicons, MaterialCommunityIcons, MaterialIcons } from "@expo/vector-icons"; +import { router, Stack } from "expo-router"; +import { SafeAreaView, View } from "react-native"; + +export default function Feature() { + return ( + + { router.back() }} />, + headerTitle: 'Fitur', + headerTitleAlign: 'center' + }} + /> + + + } text="Divisi" /> + } text="Kegiatan" /> + } text="Pengumuman" /> + } text="Diskusi" /> + + + } text="Anggota" /> + } text="Jabatan" /> + } text="Lembaga Desa" /> + } text="Tema" /> + + + } text="Banner" /> + + + + ) +} \ No newline at end of file diff --git a/components/buttonBackHeader.tsx b/components/buttonBackHeader.tsx new file mode 100644 index 0000000..7585a9f --- /dev/null +++ b/components/buttonBackHeader.tsx @@ -0,0 +1,17 @@ +import { Feather } from "@expo/vector-icons" +import { ButtonHeader } from "./buttonHeader" + +type Props = { + onPress?: () => void +} + +export default function ButtonBackHeader({ onPress }: Props) { + return ( + <> + } + onPress={onPress} + /> + + ) +} \ No newline at end of file diff --git a/components/home/fiturHome.tsx b/components/home/fiturHome.tsx index 7350b66..fbe5249 100644 --- a/components/home/fiturHome.tsx +++ b/components/home/fiturHome.tsx @@ -3,6 +3,7 @@ import { AntDesign, MaterialCommunityIcons, MaterialIcons } from "@expo/vector-i import React from "react" import { Text, View } from "react-native" import { ButtonFiturMenu } from "../buttonFiturMenu" +import { router } from "expo-router" export default function FiturHome() { return ( @@ -12,7 +13,7 @@ export default function FiturHome() { } text="Divisi" /> } text="Kegiatan" /> } text="Pengumuman" /> - } text="Semua" /> + } text="Semua" onPress={() => { router.push('/feature') }}/> ) diff --git a/constants/Styles.ts b/constants/Styles.ts index cceb622..add87e9 100644 --- a/constants/Styles.ts +++ b/constants/Styles.ts @@ -89,6 +89,9 @@ const Styles = StyleSheet.create({ ph15: { paddingHorizontal: 15, }, + p15:{ + padding:15 + }, round30: { borderRadius: 30 }, From bb9c5090f926358e7d3fa51818b94d5f14439aa0 Mon Sep 17 00:00:00 2001 From: amel Date: Wed, 26 Feb 2025 17:58:31 +0800 Subject: [PATCH 3/3] upd: search Deskripsi: - ui search NoIssues --- app/(application)/_layout.tsx | 2 + app/(application)/search.tsx | 108 ++++++++++++++++++++++++++++ components/borderBottomItem.tsx | 29 ++++++++ components/home/headerRightHome.tsx | 2 +- constants/Styles.ts | 27 +++++-- 5 files changed, 162 insertions(+), 6 deletions(-) create mode 100644 app/(application)/search.tsx create mode 100644 components/borderBottomItem.tsx diff --git a/app/(application)/_layout.tsx b/app/(application)/_layout.tsx index bacc316..305ee80 100644 --- a/app/(application)/_layout.tsx +++ b/app/(application)/_layout.tsx @@ -7,6 +7,8 @@ export default function RootLayout() { <> + + diff --git a/app/(application)/search.tsx b/app/(application)/search.tsx new file mode 100644 index 0000000..97656b1 --- /dev/null +++ b/app/(application)/search.tsx @@ -0,0 +1,108 @@ +import BorderBottomItem from "@/components/borderBottomItem"; +import ButtonBackHeader from "@/components/buttonBackHeader"; +import { InputForm } from "@/components/inputForm"; +import { ColorsStatus } from "@/constants/ColorsStatus"; +import Styles from "@/constants/Styles"; +import { AntDesign, Feather, MaterialIcons } from "@expo/vector-icons"; +import { router, Stack } from "expo-router"; +import { Image, SafeAreaView, ScrollView, Text, View } from "react-native"; + +export default function Search() { + return ( + <> + + { router.back() }} />, + headerTitle: 'Pencarian', + headerTitleAlign: 'center' + }} + /> + + + } + /> + + + ANGGOTA + } + title="Amalia Dwi" + subtitle="Dinas - Bendaraha" + /> + } + title="Amalia Dwi" + subtitle="Dinas - Bendaraha" + /> + + } + title="Amalia Dwi" + subtitle="Dinas - Bendaraha" + /> + + + + DIVISI + + + + } + title="TU dan Umum" + subtitle="Dinas" + /> + + + + } + title="TU dan Umum" + subtitle="Dinas" + /> + + + KEGIATAN + + + + } + title="Kerja Bakti" + subtitle="Dinas" + /> + + + + } + title="Pasar Ramadhan" + subtitle="Dinas" + /> + + + + + + + + ) +} \ No newline at end of file diff --git a/components/borderBottomItem.tsx b/components/borderBottomItem.tsx new file mode 100644 index 0000000..8f952e3 --- /dev/null +++ b/components/borderBottomItem.tsx @@ -0,0 +1,29 @@ +import Styles from "@/constants/Styles"; +import { Pressable, Text, View } from "react-native"; + +type Props = { + title: string + subtitle?: string + icon: React.ReactNode + desc?: string + onPress?: () => void +} + +export default function BorderBottomItem({ title, subtitle, icon, desc, onPress }: Props) { + return ( + + + {icon} + + + {title} + {subtitle} + + 3 Feb 2025 + + + + {desc && {desc}} + + ) +} \ No newline at end of file diff --git a/components/home/headerRightHome.tsx b/components/home/headerRightHome.tsx index 85c1e3e..49351cf 100644 --- a/components/home/headerRightHome.tsx +++ b/components/home/headerRightHome.tsx @@ -7,7 +7,7 @@ import Styles from "@/constants/Styles"; export function HeaderRightHome() { return ( - } onPress={() => { router.push('/') }} /> + } onPress={() => { router.push('/search') }} /> } onPress={() => { router.push('/') }} /> } onPress={() => { router.push('/') }} /> diff --git a/constants/Styles.ts b/constants/Styles.ts index add87e9..06ebbcf 100644 --- a/constants/Styles.ts +++ b/constants/Styles.ts @@ -8,11 +8,11 @@ const Styles = StyleSheet.create({ padding: 20, }, textDefault: { - fontSize: 16, + fontSize: 15, lineHeight: 24, }, textDefaultSemiBold: { - fontSize: 16, + fontSize: 15, lineHeight: 24, fontWeight: '600', }, @@ -80,17 +80,20 @@ const Styles = StyleSheet.create({ mt05: { marginTop: 5 }, - mr05:{ + mr05: { marginRight: 5 }, mr10: { marginRight: 10 }, + ml10: { + marginLeft: 10 + }, ph15: { paddingHorizontal: 15, }, - p15:{ - padding:15 + p15: { + padding: 15 }, round30: { borderRadius: 30 @@ -236,6 +239,20 @@ const Styles = StyleSheet.create({ borderColor: '#d6d8f6', borderWidth: 1, marginBottom: 10 + }, + wrapItemBorderBottom: { + padding: 10, + borderColor: '#d6d8f6', + borderBottomWidth: 1, + }, + userProfileSmall: { + width: 50, + height: 50, + borderRadius: 100 + }, + iconContent: { + padding: 10, + borderRadius: 100, } })