Skip to content

PluginSettingsTabBaseBindExtendedParams<PluginSettings, UIValue, TValueComponent, PropertyName>

Extended params for PluginSettingsTabBase.bind with value converters.

Import:

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

Signature:

export interface PluginSettingsTabBaseBindExtendedParams<PluginSettings extends object, UIValue, TValueComponent, PropertyName extends StringKeys<PluginSettings>> extends BindOptionsExtended<PluginSettings, UIValue, PropertyName>

Extends: BindOptionsExtended<PluginSettings, UIValue, PropertyName>

Properties

PropertyTypeDescription
componentToPluginSettingsValueConverter(uiValue: UIValue) => PluginSettings[PropertyName] | ValidationMessageHolderConverts the UI component's value back to the plugin settings value.
(Inherited from BindOptionsExtended)
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 BindOptionsExtended)
pluginSettingsToComponentValueConverter(pluginSettingsValue: ReadonlyDeep<PluginSettings[PropertyName]>) => UIValueConverts the plugin settings value to the value used by the UI component.
(Inherited from BindOptionsExtended)
propertyNamePropertyNameThe property name of the plugin settings to bind to.
shouldResetSettingWhenComponentIsEmpty?booleanWhether to reset the setting when the component value is empty. Applicable only to text-based components.
(Inherited from BindOptionsExtended)
shouldShowPlaceholderForDefaultValues?booleanWhether to show the placeholder for default values. Applicable only to text-based components.
(Inherited from BindOptionsExtended)
shouldShowValidationMessage?booleanWhether to show the validation message when the component value is invalid.
(Inherited from BindOptionsExtended)
valueComponentTValueComponent & ValueComponentWithChangeTracking<UIValue>The value component to bind.