@@ -104,7 +104,6 @@ const ResourcesTab = ({
104
104
if ( selectedTemplate ) {
105
105
const uri = fillTemplate ( selectedTemplate . uriTemplate , templateValues ) ;
106
106
readResource ( uri ) ;
107
- setSelectedTemplate ( null ) ;
108
107
// We don't have the full Resource object here, so we create a partial one
109
108
setSelectedResource ( { uri, name : uri } as Resource ) ;
110
109
}
@@ -116,7 +115,13 @@ const ResourcesTab = ({
116
115
< ListPane
117
116
items = { resources }
118
117
listItems = { listResources }
119
- clearItems = { clearResources }
118
+ clearItems = { ( ) => {
119
+ clearResources ( ) ;
120
+ // Condition to check if selected resource is not resource template's resource
121
+ if ( ! selectedTemplate ) {
122
+ setSelectedResource ( null ) ;
123
+ }
124
+ } }
120
125
setSelectedItem = { ( resource ) => {
121
126
setSelectedResource ( resource ) ;
122
127
readResource ( resource . uri ) ;
@@ -139,7 +144,14 @@ const ResourcesTab = ({
139
144
< ListPane
140
145
items = { resourceTemplates }
141
146
listItems = { listResourceTemplates }
142
- clearItems = { clearResourceTemplates }
147
+ clearItems = { ( ) => {
148
+ clearResourceTemplates ( ) ;
149
+ // Condition to check if selected resource is resource template's resource
150
+ if ( selectedTemplate ) {
151
+ setSelectedResource ( null ) ;
152
+ }
153
+ setSelectedTemplate ( null ) ;
154
+ } }
143
155
setSelectedItem = { ( template ) => {
144
156
setSelectedTemplate ( template ) ;
145
157
setSelectedResource ( null ) ;
0 commit comments