@@ -9,6 +9,7 @@ import { getAdminCategories, } from "../../../../redux/actions/adminCategoriesAc
99import { getAdminManufacturers , } from "../../../../redux/actions/adminManufacturersActions"
1010// import { newProduct, } from "../../../../redux/actions/createAdminProductActions"
1111import { getAdminProductEdit , } from "../../../../redux/actions/adminProductEditActions"
12+ import RenderUploadedImages from "./RenderUploadedImages"
1213
1314import "./EditProductComponent.scss"
1415
@@ -31,7 +32,7 @@ export default function EditProductComponent() {
3132 adminManufacturers : state . adminManufacturers ,
3233 adminProductEdit : state . adminProductEdit ,
3334 } ) )
34- // At least one image is required.
35+ const [ uploadedPhotos , setUploadedPhotos ] = useState ( [ ] )
3536 const [ image , setImage ] = useState ( defaultImageState )
3637 const [ image1 , setImage1 ] = useState ( defaultImageState )
3738 const [ image2 , setImage2 ] = useState ( defaultImageState )
@@ -72,7 +73,6 @@ export default function EditProductComponent() {
7273 if (
7374 null !== state . adminProductEdit . data
7475 ) {
75- // TODO: set loaded product data into state.
7676 setName ( state . adminProductEdit . data . name )
7777 setUnits ( state . adminProductEdit . data . units )
7878 setWeight ( state . adminProductEdit . data . weight )
@@ -81,6 +81,7 @@ export default function EditProductComponent() {
8181 setCategory ( state . adminProductEdit . data . category . id )
8282 setManufacturer ( state . adminProductEdit . data . manufacturer . id )
8383 setIsLive ( state . adminProductEdit . data . isLive ? "1" : "0" )
84+ setUploadedPhotos ( state . adminProductEdit . data . photos )
8485 }
8586 if (
8687 null !== state . adminProductEdit . error
@@ -181,6 +182,20 @@ export default function EditProductComponent() {
181182 }
182183 }
183184
185+ const resetUploadedPhoto = id => {
186+ const newUploadedPhotos = uploadedPhotos
187+ for ( const key in newUploadedPhotos ) {
188+ if ( id === newUploadedPhotos [ key ] . id ) {
189+ if ( ! newUploadedPhotos [ key ] . reset ) {
190+ newUploadedPhotos [ key ] . reset = true
191+ } else {
192+ newUploadedPhotos [ key ] . reset = false
193+ }
194+ }
195+ }
196+ setUploadedPhotos ( newUploadedPhotos )
197+ }
198+
184199 const handleNameChange = e => {
185200 setName ( e . target . value )
186201 }
@@ -339,6 +354,10 @@ export default function EditProductComponent() {
339354 < div className = "col-xl-6 col-lg-6" >
340355 < div className = "card shadow mb-4" >
341356 < div className = "card-body" >
357+ < RenderUploadedImages
358+ photos = { uploadedPhotos }
359+ resetUploadedPhoto = { resetUploadedPhoto }
360+ />
342361 < div className = "form-group" >
343362 < input
344363 type = "file"
0 commit comments