Runtime + origin registry
A ThemeProxy ready to route theme.* envelopes
import { createThemeProxy, originRegistry, createShellBridge } from '@kehto/shell';
const bridge = createShellBridge(hooks);
const themeProxy = createThemeProxy({
runtime: bridge.runtime,
originRegistry,
});
// Phase 13: broadcast theme.changed to every registered napplet
for (const entry of bridge.runtime.sessionRegistry.getAllEntries()) {
themeProxy.emit(entry.windowId, { type: 'theme.changed', theme: newTheme });
}
Factory for the canonical theme-domain proxy.