Skip to content

BindOptionsExtended<PluginSettings, UIValue, PropertyName>

Extended options for PluginSettingsTabBase.bind.

Import:

import type { BindOptionsExtended } from '@mnaoumov/obsidian-lib/plugin/plugin-settings-tab';

Signature:

export interface BindOptionsExtended<PluginSettings extends object, UIValue, PropertyName extends StringKeys<PluginSettings>> extends BindOptions<PluginSettings[PropertyName]>

Extends: BindOptions<PluginSettings[PropertyName]>

Properties

PropertyTypeDescription
componentToPluginSettingsValueConverter(uiValue: UIValue) => PluginSettings[PropertyName] | ValidationMessageHolderConverts the UI component's value back to the plugin settings value.
onChanged?(newValue: ReadonlyDeep<PluginSettings[PropertyName]>, oldValue: ReadonlyDeep<PluginSettings[PropertyName]>) => Promisable<void>A callback function that is called when the value of the component changes.
(Inherited from BindOptions)
pluginSettingsToComponentValueConverter(pluginSettingsValue: ReadonlyDeep<PluginSettings[PropertyName]>) => UIValueConverts the plugin settings value to the value used by the UI component.
shouldResetSettingWhenComponentIsEmpty?booleanWhether to reset the setting when the component value is empty. Applicable only to text-based components.
(Inherited from BindOptions)
shouldShowPlaceholderForDefaultValues?booleanWhether to show the placeholder for default values. Applicable only to text-based components.
(Inherited from BindOptions)
shouldShowValidationMessage?booleanWhether to show the validation message when the component value is invalid.
(Inherited from BindOptions)

Links to this page: