diff --git a/app/(application)/division/[id]/(fitur-division)/document/index.tsx b/app/(application)/division/[id]/(fitur-division)/document/index.tsx
index b9b9687..1f66958 100644
--- a/app/(application)/division/[id]/(fitur-division)/document/index.tsx
+++ b/app/(application)/division/[id]/(fitur-division)/document/index.tsx
@@ -45,7 +45,7 @@ export default function DocumentDivision() {
{
- isChecked &&
+ isChecked && { setIsChecked(false) }} />
}
)
diff --git a/components/document/menuBottomSelectDocument.tsx b/components/document/menuBottomSelectDocument.tsx
index dd07267..05c51fa 100644
--- a/components/document/menuBottomSelectDocument.tsx
+++ b/components/document/menuBottomSelectDocument.tsx
@@ -2,16 +2,27 @@ import { ColorsStatus } from "@/constants/ColorsStatus";
import Styles from "@/constants/Styles";
import { Ionicons, MaterialCommunityIcons } from "@expo/vector-icons";
import { useState } from "react";
-import { Pressable, ScrollView, Text, View } from "react-native";
+import { Pressable, ScrollView, Text, ToastAndroid, View } from "react-native";
import { useSharedValue } from "react-native-reanimated";
+import AlertKonfirmasi from "../alertKonfirmasi";
import DrawerBottom from "../drawerBottom";
+import { InputForm } from "../inputForm";
import ItemAccordion from "../itemAccordion";
import ItemDetailMember from "../itemDetailMember";
import MenuItemRow from "../menuItemRow";
+import ModalFloat from "../modalFloat";
+import ModalSelectMultiple from "../modalSelectMultiple";
-export default function MenuBottomSelectDocument() {
+
+type Props = {
+ onDone: () => void
+}
+
+export default function MenuBottomSelectDocument({ onDone }: Props) {
const [isModal, setModal] = useState(false)
const [isInformasi, setInformasi] = useState(false)
+ const [isRename, setRename] = useState(false)
+ const [isShare, setShare] = useState(false)
const open = useSharedValue(false)
const onPress = () => {
@@ -33,21 +44,31 @@ export default function MenuBottomSelectDocument() {
}
title="Hapus"
- onPress={() => { }}
+ onPress={() => {
+ AlertKonfirmasi({
+ title: 'Konfirmasi',
+ desc: 'Apakah anda yakin ingin menghapus data?',
+
+ onPress: () => {
+ onDone()
+ ToastAndroid.show('Berhasil menghapus data', ToastAndroid.SHORT)
+ }
+ })
+ }}
column="many"
color="white"
/>
}
title="Ganti Nama"
- onPress={() => { }}
+ onPress={() => { setRename(true) }}
column="many"
color="white"
/>
}
title="Bagikan"
- onPress={() => { }}
+ onPress={() => { setShare(true) }}
column="many"
color="white"
/>
@@ -61,6 +82,16 @@ export default function MenuBottomSelectDocument() {
+ {
+ onDone()
+ ToastAndroid.show('Berhasil mengganti nama dokumen', ToastAndroid.SHORT)
+ }}>
+
+
+
+
+
+
+ {
+ ToastAndroid.show('Success', ToastAndroid.SHORT)
+ setShare(false)
+ }} />
>
)
}
\ No newline at end of file
diff --git a/components/modalFloat.tsx b/components/modalFloat.tsx
new file mode 100644
index 0000000..6280470
--- /dev/null
+++ b/components/modalFloat.tsx
@@ -0,0 +1,40 @@
+import Styles from '@/constants/Styles';
+import { Pressable, Text, View } from 'react-native';
+import Modal from 'react-native-modal';
+
+type Props = {
+ isVisible: boolean
+ setVisible: (value: boolean) => void
+ title?: string
+ children: React.ReactNode
+ onSubmit: () => void
+}
+
+export default function ModalFloat({ isVisible, setVisible, title, children, onSubmit }: Props) {
+ return (
+ { setVisible(false) }}
+ >
+
+
+ {title}
+
+
+ {children}
+
+
+ { setVisible(false) }}>
+ Batal
+
+
+ Simpan
+
+
+
+
+ )
+}
\ No newline at end of file
diff --git a/components/modalSelectMultiple.tsx b/components/modalSelectMultiple.tsx
new file mode 100644
index 0000000..08c722a
--- /dev/null
+++ b/components/modalSelectMultiple.tsx
@@ -0,0 +1,50 @@
+import Styles from "@/constants/Styles"
+import { AntDesign } from "@expo/vector-icons"
+import { useState } from "react"
+import { Pressable, Text, View } from "react-native"
+import { ButtonForm } from "./buttonForm"
+import DrawerBottom from "./drawerBottom"
+
+type Props = {
+ open: boolean
+ close: (value: boolean) => void
+ title: string
+ category: 'share-division' | 'status-task'
+ choose: string
+ onSelect: (value: { val: string, label: string }[]) => void
+}
+
+export default function ModalSelectMultiple({ open, close, title, category, choose, onSelect }: Props) {
+ const [isChoose, setChoose] = useState(choose)
+
+ return (
+
+
+ {
+ category == 'share-division' ?
+ <>
+ {
+ setChoose('dinas')
+ close(false)
+ }}>
+ Sosial Kemasyarakatan
+
+
+
+ Kaur Pemerintahan
+
+
+ Kasi Kemasyarakatan
+
+
+ PKK
+
+ >
+ :
+ <>>
+ }
+
+ { onSelect([{ val: 'dinas', label: 'Dinas' }]) }} />
+
+ )
+}
\ No newline at end of file
diff --git a/constants/Styles.ts b/constants/Styles.ts
index e9cb9b4..d14546c 100644
--- a/constants/Styles.ts
+++ b/constants/Styles.ts
@@ -137,6 +137,9 @@ const Styles = StyleSheet.create({
ph15: {
paddingHorizontal: 15,
},
+ pv05: {
+ paddingVertical: 5
+ },
pv10: {
paddingVertical: 10
},
@@ -427,6 +430,19 @@ const Styles = StyleSheet.create({
justifyContent: 'space-between',
paddingVertical: 10,
},
+ modalFloatContent: {
+ backgroundColor: 'white',
+ borderRadius: 18,
+ paddingTop: 5,
+ paddingBottom: 10,
+ paddingHorizontal: 20
+ },
+ titleContainerModalFloat: {
+ flexDirection: 'row',
+ alignItems: 'center',
+ justifyContent: 'center',
+ paddingVertical: 10,
+ },
wrapBtnTab: {
justifyContent: 'space-between',
flexDirection: 'row',