Applied fixes for review

Use MediaType[] instead of string[], changed variables to lowercase
This commit is contained in:
ltctceplrm 2025-03-08 13:55:51 +01:00
parent 72198abd33
commit d5c760e72b

View file

@ -22,17 +22,17 @@ export interface MediaDbPluginSettings {
openNoteInNewTab: boolean; openNoteInNewTab: boolean;
useDefaultFrontMatter: boolean; useDefaultFrontMatter: boolean;
enableTemplaterIntegration: boolean; enableTemplaterIntegration: boolean;
OMDbAPI_disabledMediaTypes: string[]; OMDbAPI_disabledMediaTypes: MediaType[];
MALAPI_disabledMediaTypes: string[]; MALAPI_disabledMediaTypes: MediaType[];
MALAPIManga_disabledMediaTypes: string[]; MALAPIManga_disabledMediaTypes: MediaType[];
ComicVineAPI_disabledMediaTypes: string[]; ComicVineAPI_disabledMediaTypes: MediaType[];
SteamAPI_disabledMediaTypes: string[]; SteamAPI_disabledMediaTypes: MediaType[];
MobyGamesAPI_disabledMediaTypes: string[]; MobyGamesAPI_disabledMediaTypes: MediaType[];
GiantBombAPI_disabledMediaTypes: string[]; GiantBombAPI_disabledMediaTypes: MediaType[];
WikipediaAPI_disabledMediaTypes: string[]; WikipediaAPI_disabledMediaTypes: MediaType[];
BoardgameGeekAPI_disabledMediaTypes: string[]; BoardgameGeekAPI_disabledMediaTypes: MediaType[];
MusicBrainzAPI_disabledMediaTypes: string[]; MusicBrainzAPI_disabledMediaTypes: MediaType[];
OpenLibraryAPI_disabledMediaTypes: string[]; OpenLibraryAPI_disabledMediaTypes: MediaType[];
movieTemplate: string; movieTemplate: string;
seriesTemplate: string; seriesTemplate: string;
mangaTemplate: string; mangaTemplate: string;
@ -299,15 +299,15 @@ export class MediaDbSettingTab extends PluginSettingTab {
}); });
// Create a map to store APIs for each media type // Create a map to store APIs for each media type
const mediaTypeApiMap = new Map<string, string[]>(); const mediaTypeApiMap = new Map<MediaType, string[]>();
// Populate the map with APIs for each media type dynamically // Populate the map with APIs for each media type dynamically
for (const api of this.plugin.apiManager.apis) { for (const api of this.plugin.apiManager.apis) {
for (const MediaType of api.types) { for (const mediaType of api.types) {
if (!mediaTypeApiMap.has(MediaType)) { if (!mediaTypeApiMap.has(mediaType)) {
mediaTypeApiMap.set(MediaType, []); mediaTypeApiMap.set(mediaType, []);
} }
mediaTypeApiMap.get(MediaType)!.push(api.apiName); mediaTypeApiMap.get(mediaType)!.push(api.apiName);
} }
} }
@ -315,24 +315,24 @@ export class MediaDbSettingTab extends PluginSettingTab {
const filteredMediaTypes = Array.from(mediaTypeApiMap.entries()).filter(([_, apis]) => apis.length > 1); const filteredMediaTypes = Array.from(mediaTypeApiMap.entries()).filter(([_, apis]) => apis.length > 1);
// Dynamically create settings based on the filtered media types and their APIs // Dynamically create settings based on the filtered media types and their APIs
for (const [MediaType, apis] of filteredMediaTypes) { for (const [mediaType, apis] of filteredMediaTypes) {
new Setting(containerEl).setName(`Select APIs for ${unCamelCase(MediaType)}`).setHeading(); new Setting(containerEl).setName(`Select APIs for ${unCamelCase(mediaType)}`).setHeading();
for (const apiName of apis) { for (const apiName of apis) {
const api = this.plugin.apiManager.apis.find(api => api.apiName === apiName); const api = this.plugin.apiManager.apis.find(api => api.apiName === apiName);
if (api) { if (api) {
const disabledMediaTypes = api.getDisabledMediaTypes(); const disabledMediaTypes = api.getDisabledMediaTypes();
new Setting(containerEl) new Setting(containerEl)
.setName(apiName) .setName(apiName)
.setDesc(`Use ${apiName} API for ${unCamelCase(MediaType)}.`) .setDesc(`Use ${apiName} API for ${unCamelCase(mediaType)}.`)
.addToggle(cb => { .addToggle(cb => {
cb.setValue(!disabledMediaTypes.includes(MediaType as MediaType)).onChange(data => { cb.setValue(!disabledMediaTypes.includes(mediaType)).onChange(data => {
if (data) { if (data) {
const index = disabledMediaTypes.indexOf(MediaType as MediaType); const index = disabledMediaTypes.indexOf(mediaType);
if (index > -1) { if (index > -1) {
disabledMediaTypes.splice(index, 1); disabledMediaTypes.splice(index, 1);
} }
} else { } else {
disabledMediaTypes.push(MediaType as MediaType); disabledMediaTypes.push(mediaType);
} }
void this.plugin.saveSettings(); void this.plugin.saveSettings();
}); });