1
1
import { v1 } from '@docker/extension-api-client-types' ;
2
- import LockReset from '@mui/icons-material/LockReset' ;
3
- import Save from '@mui/icons-material/Save' ;
4
2
import {
5
3
Card ,
6
4
CardActionArea ,
7
5
CardContent ,
8
6
CircularProgress ,
9
- Dialog ,
10
- DialogContent ,
11
- DialogTitle ,
12
- IconButton ,
13
7
Stack ,
14
- TextField ,
15
8
Typography ,
16
9
} from '@mui/material' ;
17
10
import { useState } from 'react' ;
18
11
19
- import { MCP_POLICY_NAME } from '../../Constants' ;
20
12
import { useCatalogOperations } from '../../queries/useCatalog' ;
21
13
import { useSecrets } from '../../queries/useSecrets' ;
22
14
import { CatalogItemRichened } from '../../types/catalog' ;
@@ -32,15 +24,9 @@ type TileProps = {
32
24
} ;
33
25
34
26
const Tile = ( { item, client, registryLoading } : TileProps ) => {
35
- const [ showSecretDialog , setShowSecretDialog ] = useState ( false ) ;
36
27
const [ assignedSecrets ] = useState < { name : string ; assigned : boolean } [ ] > ( [ ] ) ;
37
- const [ changedSecrets , setChangedSecrets ] = useState < {
38
- [ key : string ] : string | undefined ;
39
- } > ( { } ) ;
40
- const [ secretLoading , setSecretLoading ] = useState ( false ) ;
41
28
const [ showConfigModal , setShowConfigModal ] = useState ( false ) ;
42
- const { isLoading : secretsLoading , mutate : mutateSecret } =
43
- useSecrets ( client ) ;
29
+ const { isLoading : secretsLoading } = useSecrets ( client ) ;
44
30
const { registerCatalogItem, unregisterCatalogItem } =
45
31
useCatalogOperations ( client ) ;
46
32
@@ -57,88 +43,6 @@ const Tile = ({ item, client, registryLoading }: TileProps) => {
57
43
58
44
return (
59
45
< >
60
- < Dialog
61
- open = { showSecretDialog }
62
- onClose = { ( ) => setShowSecretDialog ( false ) }
63
- >
64
- < DialogTitle >
65
- < Typography variant = "h6" > Secrets</ Typography >
66
- </ DialogTitle >
67
- < DialogContent >
68
- < Stack direction = "column" spacing = { 2 } >
69
- { assignedSecrets ?. map ( ( secret ) => {
70
- const isAssigned = assignedSecrets . find (
71
- ( s ) => s . name === secret . name
72
- ) ;
73
- return (
74
- < Stack
75
- key = { secret . name }
76
- direction = "row"
77
- spacing = { 2 }
78
- alignItems = "center"
79
- >
80
- < Typography variant = "body2" >
81
- { secret . name } { ' ' }
82
- { isAssigned ?. assigned ? 'assigned' : 'not assigned' }
83
- </ Typography >
84
- < TextField
85
- placeholder = {
86
- isAssigned ?. assigned ? '********' : 'Enter secret value'
87
- }
88
- type = "password"
89
- key = { secret . name }
90
- label = { secret . name }
91
- value = { changedSecrets [ secret . name ] || '' }
92
- onChange = { ( event ) =>
93
- setChangedSecrets ( {
94
- ...changedSecrets ,
95
- [ secret . name ] : event . target . value ,
96
- } )
97
- }
98
- />
99
- { isAssigned ?. assigned && changedSecrets [ secret . name ] && (
100
- < IconButton
101
- onClick = { ( ) =>
102
- setChangedSecrets ( {
103
- ...changedSecrets ,
104
- [ secret . name ] : undefined ,
105
- } )
106
- }
107
- >
108
- < LockReset />
109
- </ IconButton >
110
- ) }
111
- { changedSecrets [ secret . name ] && (
112
- < IconButton
113
- onClick = { ( ) => {
114
- setSecretLoading ( true ) ;
115
- mutateSecret
116
- . mutateAsync ( {
117
- name : secret . name ,
118
- value : changedSecrets [ secret . name ] || '' ,
119
- policies : [ MCP_POLICY_NAME ] ,
120
- } )
121
- . then ( ( ) => {
122
- setSecretLoading ( false ) ;
123
- const newChangedSecrets = { ...changedSecrets } ;
124
- delete newChangedSecrets [ secret . name ] ;
125
- setChangedSecrets ( newChangedSecrets ) ;
126
- } ) ;
127
- } }
128
- >
129
- { secretLoading ? (
130
- < CircularProgress size = { 20 } />
131
- ) : (
132
- < Save />
133
- ) }
134
- </ IconButton >
135
- ) }
136
- </ Stack >
137
- ) ;
138
- } ) }
139
- </ Stack >
140
- </ DialogContent >
141
- </ Dialog >
142
46
{ showConfigModal && (
143
47
< ConfigurationModal
144
48
open = { showConfigModal }
0 commit comments