diff --git a/src/Settings/UI/Modals/ToolbarSettingsModal.ts b/src/Settings/UI/Modals/ToolbarSettingsModal.ts index 44880e3..9178437 100644 --- a/src/Settings/UI/Modals/ToolbarSettingsModal.ts +++ b/src/Settings/UI/Modals/ToolbarSettingsModal.ts @@ -1197,11 +1197,13 @@ export default class ToolbarSettingsModal extends Modal { .setValue(initialValue ? initialValue : '') .onChange( debounce(async (value: string) => { - config[param.parameter as keyof ScriptConfig] = value; + let isValid = this.updateItemComponentStatus(value, param.type, cb.inputEl.parentElement); + config[param.parameter as keyof ScriptConfig] = isValid ? value : ''; this.toolbar.updated = new Date().toISOString(); await this.plugin.settingsManager.save(); this.renderPreview(toolbarItem); // to make sure error state is refreshed - }, 500)); + }, 500)); + this.updateItemComponentStatus(initialValue ? initialValue : '', param.type, cb.inputEl.parentElement); }); break; } diff --git a/src/styles.css b/src/styles.css index 650b6b6..0ffe7d9 100644 --- a/src/styles.css +++ b/src/styles.css @@ -886,7 +886,8 @@ body { .setting-item-control:has(input[type="text"].note-toolbar-setting-error) { flex-wrap: wrap; } -input[type="text"].note-toolbar-setting-error { +input[type="text"].note-toolbar-setting-error, +.note-toolbar-setting-error textarea { box-shadow: 0 0 0 1px var(--text-error); } .note-toolbar-setting-error { diff --git a/styles.css b/styles.css index a28741e..e546ee1 100644 --- a/styles.css +++ b/styles.css @@ -1691,7 +1691,8 @@ body { .setting-item-control:has(input[type="text"].note-toolbar-setting-error) { flex-wrap: wrap; } -input[type="text"].note-toolbar-setting-error { +input[type="text"].note-toolbar-setting-error, +.note-toolbar-setting-error textarea { box-shadow: 0 0 0 1px var(--text-error); } .note-toolbar-setting-error {