1- import React , { useState } from "react" ;
1+ import React , { useEffect , useState } from "react" ;
22import { useParams , useNavigate } from "react-router-dom" ;
33import { NEW_DOC , EDIT_DOC , EXAMPLES_PRODUCTS } from "../routing/constants"
44import { ListDocumentsComponent , useTDBDocuments } from "@terminusdb/terminusdb-documents-ui-template" ;
@@ -24,24 +24,39 @@ export const DocumentsGraphqlList = ({documentTablesConfig}) => {
2424 const tableConfig = documentTablesConfig . tablesColumnsConfig [ type ]
2525 const advancedSearchConfig = documentTablesConfig . advancedSearchObj [ type ]
2626
27- function deleteDocumentHandler ( row ) {
27+
28+ const deleteDocumentHandler = ( row , currentChangeRequest , useChangeRequest ) => {
2829 let fullId = row [ 'id' ]
2930 setTobeDeleted ( fullId )
3031 // I can not change main directly
3132 // I can change other branches creates with create branch interface
32- if ( useChangeRequest && ! currentChangeRequest ) {
33- setShowCRModal ( true )
34- } else setShowDeleteModal ( true )
3533 }
3634
35+ const closeModal = ( ) => {
36+ setShowCRModal ( false )
37+ setShowDeleteModal ( true )
38+ }
39+
40+ useEffect ( ( ) => {
41+ if ( tobeDeleted ) {
42+ if ( useChangeRequest && currentChangeRequest === false ) {
43+ setShowCRModal ( true )
44+ } else setShowDeleteModal ( true )
45+ }
46+ } , [ tobeDeleted ] )
47+
3748 async function callDeleteDocument ( ) {
3849 const delCall = await deleteDocument ( tobeDeleted )
3950 if ( delCall ) {
40- setShowDeleteModal ( false )
41- setTobeDeleted ( false )
51+ resetShowDelete ( )
4252 }
4353 }
4454
55+ const resetShowDelete = ( ) => {
56+ setShowDeleteModal ( false )
57+ setTobeDeleted ( false )
58+ }
59+
4560 const onViewClick = ( row ) => {
4661 let fullId = row [ 'id' ]
4762 let fullIdEncode = btoa ( fullId )
@@ -61,14 +76,14 @@ export const DocumentsGraphqlList = ({documentTablesConfig}) => {
6176 return < React . Fragment >
6277 { showCRModal &&
6378 < CreateChangeRequestModal showModal = { showCRModal }
64- type = { type } setShowModal = { setShowCRModal }
79+ type = { type } setShowModal = { closeModal }
6580 updateViewMode = { setChangeRequestBranch } /> }
6681 { showDeleteModal && < DeleteDocumentModal
6782 loading = { loading }
6883 deleteDocument = { callDeleteDocument }
6984 documentID = { tobeDeleted }
7085 showDeleteModal = { showDeleteModal }
71- handleClose = { ( ) => setShowDeleteModal ( false ) }
86+ handleClose = { ( ) => resetShowDelete ( ) }
7287 /> }
7388 { error && < ErrorMessageReport error = { error } setError = { setError } /> }
7489 { ! showDeleteModal && < ListDocumentsComponent type = { type }
0 commit comments