diff --git a/src/modals/MediaDbFolderImportModal.ts b/src/modals/MediaDbFolderImportModal.ts index 39a7fdc..415e4df 100644 --- a/src/modals/MediaDbFolderImportModal.ts +++ b/src/modals/MediaDbFolderImportModal.ts @@ -46,7 +46,7 @@ export class MediaDbFolderImportModal extends Modal { const appendContentToggleElementWrapper = contentEl.createEl('div', {cls: 'media-db-plugin-list-wrapper'}); const appendContentToggleTextWrapper = appendContentToggleElementWrapper.createEl('div', {cls: 'media-db-plugin-list-text-wrapper'}); appendContentToggleTextWrapper.createEl('span', { - text: 'If this is enabled, the plugin will override meta data fields with the same name.', + text: 'If this is enabled, the plugin will override metadata fields with the same name.', cls: 'media-db-plugin-list-text', }); @@ -59,7 +59,7 @@ export class MediaDbFolderImportModal extends Modal { contentEl.createDiv({cls: 'media-db-plugin-spacer'}); - contentEl.createEl('h3', {text: 'The name of the mata data field that should be used as the title to query'}); + contentEl.createEl('h3', {text: 'The name of the metadata field that should be used as the title to query.'}); const placeholder = 'title'; const titleFieldNameComponent = new TextComponent(contentEl); diff --git a/src/modals/SelectModal.ts b/src/modals/SelectModal.ts index de2cdc3..572d568 100644 --- a/src/modals/SelectModal.ts +++ b/src/modals/SelectModal.ts @@ -72,11 +72,13 @@ export abstract class SelectModal extends Modal { contentEl.createEl('h2', {text: this.title}); contentEl.createEl('p', {text: this.description}); + contentEl.addClass('media-db-plugin-select-modal'); + const elementWrapper = contentEl.createDiv({cls: 'media-db-plugin-select-wrapper'}); let i = 0; for (const element of this.elements) { - const selectModalElement = new SelectModalElement(element, contentEl, i, this, false); + const selectModalElement = new SelectModalElement(element, elementWrapper, i, this, false); this.selectModalElements.push(selectModalElement); @@ -85,6 +87,8 @@ export abstract class SelectModal extends Modal { i += 1; } + this.selectModalElements.first()?.element.scrollIntoView(); + const bottomSetting = new Setting(contentEl); bottomSetting.addButton(btn => btn.setButtonText('Cancel').onClick(() => this.close())); if (this.skipButton) { diff --git a/src/settings/Settings.ts b/src/settings/Settings.ts index f526dbe..e849809 100644 --- a/src/settings/Settings.ts +++ b/src/settings/Settings.ts @@ -7,8 +7,11 @@ import {FileSuggest} from './suggesters/FileSuggest'; export interface MediaDbPluginSettings { folder: string, - sfwFilter: boolean, OMDbKey: string, + sfwFilter: boolean, + useCustomYamlStringifier: boolean; + templates: boolean, + movieTemplate: string, seriesTemplate: string, @@ -28,13 +31,14 @@ export interface MediaDbPluginSettings { wikiPropertyConversionRules: string, musicReleasePropertyConversionRules: string, - templates: boolean, } export const DEFAULT_SETTINGS: MediaDbPluginSettings = { folder: 'Media DB', - sfwFilter: true, OMDbKey: '', + sfwFilter: true, + useCustomYamlStringifier: true, + templates: true, movieTemplate: '', seriesTemplate: '', @@ -54,7 +58,7 @@ export const DEFAULT_SETTINGS: MediaDbPluginSettings = { wikiPropertyConversionRules: '', musicReleasePropertyConversionRules: '', - templates: true, + }; export class MediaDbSettingTab extends PluginSettingTab { @@ -108,6 +112,17 @@ export class MediaDbSettingTab extends PluginSettingTab { }); }); + new Setting(containerEl) + .setName('YAML formatter') + .setDesc('Add optional quotation marks around strings in the metadata block.') + .addToggle(cb => { + cb.setValue(this.plugin.settings.useCustomYamlStringifier) + .onChange(data => { + this.plugin.settings.useCustomYamlStringifier = data; + this.plugin.saveSettings(); + }); + }); + new Setting(containerEl) .setName('Resolve {{ tags }} in templates') .setDesc('Whether to resolve {{ tags }} in templates. The spaces inside the curly braces are important.') diff --git a/styles.css b/styles.css index 7befc32..5ee2836 100644 --- a/styles.css +++ b/styles.css @@ -22,8 +22,15 @@ small.media-db-plugin-list-text{ color: var(--text-muted); } +.media-db-plugin-select-modal { + display: flex; + flex-direction: column; +} + .media-db-plugin-select-wrapper { margin: 5px; + flex: 1; + overflow-y: auto; } .media-db-plugin-select-element {