MingaEditor.State.ExtensionSurfaces (Minga v0.1.0)

Copy Markdown View Source

Per-editor registries through which extensions contribute behavior and UI.

Keeping registry identities together makes editor isolation explicit without moving daemon-singleton extension lifecycle into the Editor process.

Summary

Functions

Installs the semantic agent UI registry selected for this editor.

Installs the event registry selected for this editor.

Creates extension registry state for one editor instance.

Types

t()

@type t() :: %MingaEditor.State.ExtensionSurfaces{
  agent_semantic_ui_registry: MingaEditor.Agent.SemanticUI.Registry.table(),
  events_registry: Minga.Events.registry(),
  sidebar_registry: MingaEditor.Extension.Sidebar.table()
}

Functions

install_agent_semantic_ui_registry(surfaces, table)

@spec install_agent_semantic_ui_registry(
  t(),
  MingaEditor.Agent.SemanticUI.Registry.table()
) :: t()

Installs the semantic agent UI registry selected for this editor.

install_events_registry(surfaces, registry)

@spec install_events_registry(t(), Minga.Events.registry()) :: t()

Installs the event registry selected for this editor.

new(opts \\ [])

@spec new(keyword()) :: t()

Creates extension registry state for one editor instance.