Skip to content

Commit c5ba44c

Browse files
committed
Modified the toggles so only one can be on at a time
1 parent 0634e39 commit c5ba44c

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

src/modals/MediaDbSearchModal.ts

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)