Skip to content

fix(input): export ActionRegistry - #37

Merged
elemarin merged 1 commit into
elemarin:mainfrom
cmaycumber:fix/export-action-registry
Oct 10, 2026
Merged

elemarin merged 1 commit into
elemarin:mainfrom
cmaycumber:fix/export-action-registry

Conversation

@cmaycumber

Copy link
Copy Markdown
Contributor

engine.actions is public and typed ActionRegistry, and games register their actions on it, but the class and its ActionDefinition / ActionRecord / ActionDescriptor types were not exported. Typing an action sink, or building a registry in a test, meant reaching into dist internals.

This re-exports them from renderoni/input, which renderoni already re-exports. No behaviour change.

Verification: typecheck, build, 228/228 tests. A public-exports test covers the new exports.

🤖 Generated with Claude Code

`engine.actions` is public and typed ActionRegistry, and games register their actions on it,
but the class and its ActionDefinition / ActionRecord / ActionDescriptor types were never
exported. Code that wants to type an action sink, or build a registry for a test, had to
reach into dist internals. Re-export them from `renderoni/input`, which `renderoni` already
re-exports.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@elemarin
elemarin merged commit a133562 into elemarin:main Oct 10, 2026
@elemarin

Copy link
Copy Markdown
Owner

Thanks! engine.actions had a public type you couldn't import, so this is a good fix. Build, typecheck and tests pass, and the emitted .d.ts exposes all four names. Merged.

Optional follow-up: add a type-only reference to ActionDefinition/ActionRecord/ActionDescriptor in the test so typecheck guards them too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants