moonbit-community/proton/command does not have a README file

    AppCommandRequestContext

    Request-scoped context for one bridged app command dispatch.

    CommandContext

    Request-scoped context supplied to typed application command handlers.

    Lifecycle-owned task and event capabilities are added by the application runner; the registrar keeps handlers independent from transport details.

    CommandWindow

    Window-scoped application capabilities available to one command request. The native window identity and implementation remain owned by the Proton runtime; extensions can only invoke these semantic operations.

    ExtensionSpecError

    pub(all) suberror ExtensionSpecError {
    InvalidContract(detail~ : String)
    ForeignCommandRoute(extension_id~ : String, operation_name~ : String)
    } derive(Eq)

    Invalid typed metadata supplied while constructing an extension spec.

    ExtensionSpecError::equal

    ExtensionSpecError::message

    fn ExtensionSpecError::message(self : ExtensionSpecError) -> String

    ExtensionSpecError::not_equal

    ExtensionSpecError::output

    fn ExtensionSpecError::output(self : ExtensionSpecError, logger : &Logger) -> Unit

    ExtensionSpecError::to_string

    fn ExtensionSpecError::to_string(self : ExtensionSpecError) -> String

    PermissionScopeValidationError

    pub(all) suberror PermissionScopeValidationError {
    Invalid(detail~ : String)
    } derive(Eq)

    A stable validation failure for an extension's renderer permission scope.

    PermissionScopeValidationError::message

    PermissionScopeValidationError::not_equal

    PermissionScopeValidationError::output

    PermissionScopeValidationError::to_string

    AppCommandApiDescriptor

    pub struct AppCommandApiDescriptor {
    api_name : String
    }

    One JavaScript-facing API descriptor exposed by a user app command extension.

    AppCommandApiDescriptor::AppCommandApiDescriptor

    fn AppCommandApiDescriptor::AppCommandApiDescriptor(api_name : String) -> AppCommandApiDescriptor

    AppCommandApiDescriptor::api_name

    fn AppCommandApiDescriptor::api_name(self : AppCommandApiDescriptor) -> String

    AppCommandExtensionDescriptor

    pub struct AppCommandExtensionDescriptor {
    id : String
    js_namespace : String
    apis : Array[AppCommandApiDescriptor]
    scripts : Array[String]
    }

    JavaScript bridge metadata exposed by a user app command extension.

    AppCommandExtensionDescriptor::AppCommandExtensionDescriptor

    fn AppCommandExtensionDescriptor::AppCommandExtensionDescriptor(id : String, js_namespace : String, apis : Array[AppCommandApiDescriptor], scripts? : Array[String]) -> AppCommandExtensionDescriptor

    AppCommandExtensionRegistry

    pub struct AppCommandExtensionRegistry {
    specs : Map[String, AppCommandExtensionSpec]
    registration_order : Array[String]
    }

    Registry of command extension specs available to one user app process.

    AppCommandExtensionRegistry::AppCommandExtensionRegistry

    fn AppCommandExtensionRegistry::AppCommandExtensionRegistry() -> AppCommandExtensionRegistry

    AppCommandExtensionRegistry::get

    AppCommandExtensionRegistry::ordered_names

    AppCommandExtensionRegistry::registered_ids

    fn AppCommandExtensionRegistry::registered_ids(self : AppCommandExtensionRegistry) -> Array[String]

    AppCommandExtensionRegistry::spec_map

    AppCommandExtensionSpec

    pub struct AppCommandExtensionSpec {
    id : String
    js_namespace : String
    apis : Array[AppCommandApiDescriptor]
    scripts : Array[String]
    dependencies : Array[String]
    register : (CommandRegistrar) -> Unit raise
    resolve_permission : (Json, String) -> Json raise PermissionScopeValidationError
    on_destroy : () -> Unit raise
    }

    Declarative user-process command extension spec.

    AppCommandExtensionSpec::apis

    AppCommandExtensionSpec::dependencies

    fn AppCommandExtensionSpec::dependencies(self : AppCommandExtensionSpec) -> Array[String]

    AppCommandExtensionSpec::destroy

    fn AppCommandExtensionSpec::destroy(self : AppCommandExtensionSpec) -> Unit raise

    AppCommandExtensionSpec::id

    AppCommandExtensionSpec::js_namespace

    fn AppCommandExtensionSpec::js_namespace(self : AppCommandExtensionSpec) -> String

    AppCommandExtensionSpec::op_names

    fn AppCommandExtensionSpec::op_names(self : AppCommandExtensionSpec) -> Array[String]

    AppCommandExtensionSpec::register

    fn AppCommandExtensionSpec::register(self : AppCommandExtensionSpec, registrar : CommandRegistrar) -> Unit raise

    AppCommandExtensionSpec::resolve_permission

    fn AppCommandExtensionSpec::resolve_permission(self : AppCommandExtensionSpec, scope : Json, base_path : String) -> Json raise PermissionScopeValidationError

    AppCommandExtensionSpec::scripts

    AppCommandExtensionSpec::typed

    fn AppCommandExtensionSpec::typed(contract :
    ExtensionContract
    , command_routes : Array[
    ContractRoute
    ], register : (CommandRegistrar) -> Unit raise, scripts? : Array[String], dependencies? : Array[String], resolve_permission? : (Json, String) -> Json raise PermissionScopeValidationError, on_destroy? : () -> Unit raise) -> AppCommandExtensionSpec raise ExtensionSpecError

    Creates an extension spec whose JavaScript APIs and native operation names are derived from typed extension command descriptors.

    AppCommandsConfig

    pub struct AppCommandsConfig {
    op_names : Array[String]
    extensions : Array[
    IpcExtensionDescriptor
    ]
    framework_extension_ids : Array[String]
    }

    Commands exposed by the user app process to the framework runtime.

    AppCommandsConfig::AppCommandsConfig

    fn AppCommandsConfig::AppCommandsConfig(op_names : Array[String], extensions? : Array[AppCommandExtensionDescriptor], framework_extension_ids? : Array[String]) -> AppCommandsConfig

    AppCommandsConfig::framework_extension_ids

    fn AppCommandsConfig::framework_extension_ids(self : AppCommandsConfig) -> Array[String]

    AppCommandsConfig::from_ipc_descriptors

    fn AppCommandsConfig::from_ipc_descriptors(op_names : Array[String], extensions : Array[
    IpcExtensionDescriptor
    ], framework_extension_ids : Array[String]) -> AppCommandsConfig

    AppCommandsConfig::op_names

    fn AppCommandsConfig::op_names(self : AppCommandsConfig) -> Array[String]

    CommandRegistrar

    Startup-only capability for binding typed command descriptors to handlers.

    CommandRegistrar::CommandRegistrar

    Creates a registrar over one application command host.

    CommandRegistrar::bind

    Binds one typed descriptor to an asynchronous command handler.

    Request decoding and response encoding are selected from the descriptor's type parameters. The descriptor is the only source of command identity.

    app_command_extension_op_name

    fn app_command_extension_op_name(js_namespace : String, api_name : String) -> String

    app_command_js_property_is_reserved

    fn app_command_js_property_is_reserved(name : String) -> Bool

    Powered by MoonBit

    Site sourceReport issuePackagesBuild queueSkillsStatistics

    © 2026 mooncakes.io