@@ -16,7 +16,10 @@ import {
16
16
} from '../../helperFunctions/projectGetSaveDel' ;
17
17
import localforage from 'localforage' ;
18
18
import { useSelector , useDispatch } from 'react-redux' ;
19
- import { setInitialState , initialState } from '../../redux/reducers/slice/appStateSlice' ;
19
+ import {
20
+ setInitialState ,
21
+ initialState
22
+ } from '../../redux/reducers/slice/appStateSlice' ;
20
23
import { RootState } from '../../redux/store' ;
21
24
import MuiAlert , { AlertProps } from '@mui/material/Alert' ;
22
25
import Snackbar from '@mui/material/Snackbar' ;
@@ -30,7 +33,7 @@ export interface ProjectDialogProps {
30
33
function ProjectsDialog ( props : ProjectDialogProps ) {
31
34
const classes = useStyles ( ) ;
32
35
const { onClose, open, projects, deleteAlert } = props ;
33
- const state = useSelector ( ( store :RootState ) => store . appState ) ;
36
+ const state = useSelector ( ( store : RootState ) => store . appState ) ;
34
37
const dispatch = useDispatch ( ) ;
35
38
36
39
// If no projects selected, keep the name of the current displayed
@@ -43,58 +46,72 @@ function ProjectsDialog(props: ProjectDialogProps) {
43
46
const handleDelete = ( value : string ) => {
44
47
const selectedProject = projects . filter (
45
48
( project : any ) => project . _id === value
46
- ) [ 0 ] ;
47
- deleteProject ( selectedProject ) ;
48
- // localforage.removeItem(window.localStorage.getItem('ssid'));
49
- dispatch ( setInitialState ( initialState ) )
50
- deleteAlert ( )
51
- onClose ( )
49
+ ) [ 0 ] ;
50
+ deleteProject ( selectedProject ) ;
51
+ // localforage.removeItem(window.localStorage.getItem('ssid'));
52
+ dispatch ( setInitialState ( initialState ) ) ;
53
+ deleteAlert ( ) ;
54
+ onClose ( ) ;
52
55
} ;
53
-
56
+
54
57
return (
55
58
< >
56
- < Dialog
57
- onClose = { handleClose }
58
- aria-labelledby = "project-dialog-title"
59
- open = { open }
60
- >
61
- < DialogTitle style = { { color : "#297ac2" } } id = "project-dialog-title" > DELETE PROJECTS</ DialogTitle >
62
- < DialogTitle style = { { color : "#000" } } id = "project-dialog-title" > User Projects</ DialogTitle >
63
- < List style = { { color : "#000" } } >
64
- { projects . filter ( ( project : any ) => project . forked === undefined || project . forked === false ) . map ( ( project : any , index : number ) => (
65
- < ListItem
66
- button
67
- onClick = { ( ) => handleDelete ( project . _id ) }
68
- key = { index }
69
- >
70
- < ListItemAvatar >
71
- < Avatar className = { classes . avatar } >
72
- < DeleteRoundedIcon />
73
- </ Avatar >
74
- </ ListItemAvatar >
75
- < ListItemText primary = { project . name } />
76
- </ ListItem >
77
- ) ) }
78
- </ List >
79
- < DialogTitle style = { { color : "#000" } } id = "project-dialog-title" > Marketplace Projects</ DialogTitle >
80
- < List style = { { color : "#000" } } >
81
- { projects . filter ( ( project : any ) => project . forked === true ) . map ( ( project : any , index : number ) => (
82
- < ListItem
83
- button
84
- onClick = { ( ) => handleDelete ( project . _id ) }
85
- key = { index }
86
- >
87
- < ListItemAvatar >
88
- < Avatar className = { classes . avatar } >
89
- < DeleteRoundedIcon />
90
- </ Avatar >
91
- </ ListItemAvatar >
92
- < ListItemText primary = { project . name } />
93
- </ ListItem >
94
- ) ) }
95
- </ List >
96
- </ Dialog >
97
- </ >
59
+ < Dialog
60
+ onClose = { handleClose }
61
+ aria-labelledby = "project-dialog-title"
62
+ open = { open }
63
+ >
64
+ < DialogTitle style = { { color : '#297ac2' } } id = "project-dialog-title" >
65
+ DELETE PROJECTS
66
+ </ DialogTitle >
67
+ < DialogTitle style = { { color : '#000' } } id = "project-dialog-title" >
68
+ User Projects
69
+ </ DialogTitle >
70
+ < List style = { { color : '#000' } } >
71
+ { projects
72
+ . filter (
73
+ ( project : any ) =>
74
+ project . forked === undefined || project . forked === false
75
+ )
76
+ . map ( ( project : any , index : number ) => (
77
+ < ListItem
78
+ button
79
+ onClick = { ( ) => handleDelete ( project . _id ) }
80
+ key = { index }
81
+ >
82
+ < ListItemAvatar >
83
+ < Avatar className = { classes . avatar } >
84
+ < DeleteRoundedIcon />
85
+ </ Avatar >
86
+ </ ListItemAvatar >
87
+ < ListItemText primary = { project . name } />
88
+ </ ListItem >
89
+ ) ) }
90
+ </ List >
91
+ < DialogTitle style = { { color : '#000' } } id = "project-dialog-title" >
92
+ { ' ' }
93
+ Marketplace Projects
94
+ </ DialogTitle >
95
+ < List style = { { color : '#000' } } >
96
+ { projects
97
+ . filter ( ( project : any ) => project . forked === true )
98
+ . map ( ( project : any , index : number ) => (
99
+ < ListItem
100
+ button
101
+ onClick = { ( ) => handleDelete ( project . _id ) }
102
+ key = { index }
103
+ >
104
+ < ListItemAvatar >
105
+ < Avatar className = { classes . avatar } >
106
+ < DeleteRoundedIcon />
107
+ </ Avatar >
108
+ </ ListItemAvatar >
109
+ < ListItemText primary = { project . name } />
110
+ </ ListItem >
111
+ ) ) }
112
+ </ List >
113
+ </ Dialog >
114
+ </ >
98
115
) ;
99
116
}
100
117
@@ -103,7 +120,7 @@ export default function ProjectsFolder(props) {
103
120
const [ projects , setProjects ] = useState ( [ { hello : 'cat' } ] ) ;
104
121
105
122
const handleClickOpen = ( ) => {
106
- getProjects ( ) . then ( data => {
123
+ getProjects ( ) . then ( ( data ) => {
107
124
if ( data ) {
108
125
setProjects ( data ) ;
109
126
setOpen ( true ) ;
@@ -115,19 +132,21 @@ export default function ProjectsFolder(props) {
115
132
setOpen ( false ) ;
116
133
} ;
117
134
118
-
119
135
const keyBindDeleteProject = useCallback ( ( e ) => {
120
- if ( e . key === 'Backspace' && e . metaKey || e . key === 'Backspace' && e . ctrlKey ) {
136
+ if (
137
+ ( e . key === 'Backspace' && e . metaKey ) ||
138
+ ( e . key === 'Backspace' && e . ctrlKey )
139
+ ) {
121
140
e . preventDefault ( ) ;
122
141
handleClickOpen ( ) ;
123
142
}
124
143
} , [ ] ) ;
125
-
144
+
126
145
useEffect ( ( ) => {
127
146
document . addEventListener ( 'keydown' , keyBindDeleteProject ) ;
128
147
return ( ) => {
129
- document . removeEventListener ( 'keydown' , keyBindDeleteProject )
130
- }
148
+ document . removeEventListener ( 'keydown' , keyBindDeleteProject ) ;
149
+ } ;
131
150
} , [ ] ) ;
132
151
133
152
return (
@@ -136,11 +155,16 @@ export default function ProjectsFolder(props) {
136
155
color = "primary"
137
156
onClick = { handleClickOpen }
138
157
endIcon = { < DeleteRoundedIcon /> }
139
- sx = { { fontSize : '9px' } }
158
+ sx = { { fontSize : '9px' } }
140
159
>
141
160
Delete Project
142
161
</ Button >
143
- < ProjectsDialog open = { open } onClose = { handleClose } projects = { projects } deleteAlert = { props . deleteAlert } />
162
+ < ProjectsDialog
163
+ open = { open }
164
+ onClose = { handleClose }
165
+ projects = { projects }
166
+ deleteAlert = { props . deleteAlert }
167
+ />
144
168
</ div >
145
169
) ;
146
170
}
0 commit comments