diff --git a/src/components/ItemConfig.js b/src/components/ItemConfig.js new file mode 100644 index 0000000..3a10363 --- /dev/null +++ b/src/components/ItemConfig.js @@ -0,0 +1,99 @@ +import React, { useState, useEffect, useRef } from "react"; +import styles from "./Modal.module.css"; +import { getImageUrl } from "../helpers/itemHelper.js"; + +const ItemConfig = ({ Item, cancelEdit }) => { + const [selectedImage, setSelectedImage] = useState(null); + const [previewUrl, setPreviewUrl] = useState(Item.image); + const fileInputRef = useRef(null); + + + useEffect(() => { + console.log(Item.image) + + // Prevent scrolling when modal is open + document.body.style.overflow = "hidden"; + + if (selectedImage) { + const reader = new FileReader(); + reader.onloadend = () => { + setPreviewUrl(reader.result); + }; + reader.readAsDataURL(selectedImage); + } else { + setPreviewUrl(Item.image); + } + }, [selectedImage, Item]); + + + const handleOverlayClick = (event) => { + // Prevent scrolling when modal is open + document.body.style.overflow = "auto"; + cancelEdit(); + }; + + + // Function to handle clicks on the modal content + const handleContentClick = (event) => { + // Prevent click event from propagating to the overlay + event.stopPropagation(); + }; + + + const handleChangeImage = () => { + fileInputRef.current.click(); + }; + + + const handleFileChange = (event) => { + const file = event.target.files[0]; + if (file) { + setSelectedImage(file); + } + }; + + return ( +
+
+
+
+ + + +
+
+
handleChangeImage()} style={{ width: '140px', height: '40px', alignContent: 'center', textAlign: 'center', borderRadius: '10px', border: '1px solid #60d37e', color: '#60d37e', backgroundColor: 'white' }}> + Ganti gambar +
+
+
+
+

Nama item

+ +
+
+
+

Harga

+ +
+

Harga promo

+ +
+
+
+

Deskripsi

+ +
+
+
+ ); +}; + +export default ItemConfig; diff --git a/src/components/ItemLister.js b/src/components/ItemLister.js index 9504cc5..af5d748 100644 --- a/src/components/ItemLister.js +++ b/src/components/ItemLister.js @@ -16,6 +16,7 @@ import { } from "../helpers/itemHelper.js"; import ItemType from "./ItemType.js"; import { createItemType } from "../helpers/itemHelper.js"; +import ItemConfig from "./ItemConfig.js" const ItemLister = ({ index, @@ -881,20 +882,7 @@ const ItemLister = ({ // > // batal // -
-
-
-
- -
-
-
- Ganti gambar -
-
-
-
-
+ editItem(0)}/> )}
{isEditMode && isEditItem != item.itemId && (