@@ -76,6 +76,9 @@ export class MediaDbSearchModal extends Modal {
7676
7777 const placeholder = 'Search by title' ;
7878 const searchComponent = new TextComponent ( contentEl ) ;
79+ const toggleComponents = [ ] ;
80+ let currentToggle : ToggleComponent = null ;
81+
7982 searchComponent . inputEl . style . width = '100%' ;
8083 searchComponent . setPlaceholder ( placeholder ) ;
8184 searchComponent . setValue ( this . query ) ;
@@ -99,10 +102,17 @@ export class MediaDbSearchModal extends Modal {
99102 const apiToggleComponent = new ToggleComponent ( apiToggleComponentWrapper ) ;
100103 apiToggleComponent . setTooltip ( unCamelCase ( mediaType ) ) ;
101104 apiToggleComponent . setValue ( this . selectedTypes . find ( x => x . name === mediaType ) . selected ) ;
105+ if ( apiToggleComponent . getValue ( ) ) {
106+ currentToggle = apiToggleComponent ;
107+ }
102108 apiToggleComponent . onChange ( value => {
103- this . selectedTypes . find ( x => x . name === mediaType ) . selected = value ;
109+ if ( currentToggle && currentToggle !== apiToggleComponent ) {
110+ currentToggle . setValue ( false ) ;
111+ }
112+ currentToggle = value ? apiToggleComponent : null ;
104113 } ) ;
105114 apiToggleComponentWrapper . appendChild ( apiToggleComponent . toggleEl ) ;
115+ toggleComponents . push ( apiToggleComponent ) ;
106116 }
107117
108118 contentEl . createDiv ( { cls : 'media-db-plugin-spacer' } ) ;
@@ -129,4 +139,4 @@ export class MediaDbSearchModal extends Modal {
129139 const { contentEl } = this ;
130140 contentEl . empty ( ) ;
131141 }
132- }
142+ }
0 commit comments