From 1489408b40b311625147b4ce141c8363f7076ac4 Mon Sep 17 00:00:00 2001 From: Anang Yusman Date: Tue, 31 Mar 2026 15:40:33 +0800 Subject: [PATCH] update drone --- components/form/article/create-image-form.tsx | 67 ++++++++++++++++++- 1 file changed, 66 insertions(+), 1 deletion(-) diff --git a/components/form/article/create-image-form.tsx b/components/form/article/create-image-form.tsx index 2dea4f4..491ad08 100644 --- a/components/form/article/create-image-form.tsx +++ b/components/form/article/create-image-form.tsx @@ -131,6 +131,8 @@ export default function CreateImageForm() { const [startDateValue, setStartDateValue] = useState(); const [startTimeValue, setStartTimeValue] = useState(""); + const [mediaLibrary, setMediaLibrary] = useState([]); + const { getRootProps, getInputProps } = useDropzone({ onDrop: (acceptedFiles) => { setFiles((prevFiles) => [ @@ -499,13 +501,25 @@ export default function CreateImageForm() { // setValue("tags", uniqueArray as [string, ...string[]]); // }; + const handleUploadLibrary = async (files: any) => { + const fileArray = Array.from(files); + + // contoh tanpa backend (preview local) + const newFiles = fileArray.map((file: any) => ({ + name: file.name, + url: URL.createObjectURL(file), + })); + + setMediaLibrary((prev) => [...prev, ...newFiles]); + }; + return (
-

Judulss

+

Judul

+ {files.length ? (
{fileList}
@@ -636,9 +651,59 @@ export default function CreateImageForm() {
) : null} + {filesValidation !== "" && files.length < 1 && (

Upload File Media

)} + + {/* ================== TAMBAHAN DI SINI ================== */} + +

File Media Library

+ + {/* Upload ke Media Library */} +
+ handleUploadLibrary(e.target.files)} + className="hidden" + id="mediaLibraryUpload" + /> + + +
+ + {/* List Media */} + {/*
+ {mediaLibrary.length ? ( + mediaLibrary.map((item, index) => ( +
+ {item?.name} +
{item.name}
+
+ )) + ) : ( +
+ Belum ada file di media library +
+ )} +
*/}