The default concrete implementation of a setting registry.




_pluginChanged: Signal<SettingRegistry, string> = ...
_ready: Promise<void> = ...
_transformers: {
    [plugin: string]: {
        [phase in Phase]: Transform
} = ...

Type declaration

_unloadedPlugins: Map<string, IPlugin> = ...
connector: IDataConnector<IPlugin, string, string, string>

The data connector used by the setting registry.

plugins: {
    [name: string]: IPlugin;
} = ...

The collection of setting registry plugins.

Type declaration

schema: ISchema = ...

The schema of the setting registry.

validator: ISchemaValidator

The schema validator used by the setting registry.



  • Register a plugin transform function to act on a specific plugin.


    • plugin: string

      The name of the plugin whose settings are transformed.

    • transforms: {
          compose: undefined | Transform;
          fetch: undefined | Transform;

      The transform functions applied to the plugin.

    Returns IDisposable

    A disposable that removes the transforms from the registry.


    • compose transformations: The registry automatically overwrites a plugin's default values with user overrides, but a plugin may instead wish to merge values. This behavior can be accomplished in a compose transformation.
    • fetch transformations: The registry uses the plugin data that is fetched from its connector. If a plugin wants to override, e.g. to update its schema with dynamic defaults, a fetch transformation can be applied.