Why this fires¶
TE719 means an event handler inside an @island contains an expression the
Verniz client lowering cannot represent as JavaScript. Server rendering can
still produce the button or input, but publishing it without its handler would
create an interactive-looking control that does nothing, so the build fails.
The diagnostic message includes the handler attribute and the precise lowering failure. Use that detail to find the unsupported call, value, control-flow form, or server-only capability.
Fix it¶
- Keep the handler's captured values and operations browser-safe.
- Move server work behind an
@actionand call that action from the handler. - Move non-interactive work outside the island when it does not need to run in the browser.
- Split a complex handler into a small client-compatible handler and an explicitly server-owned function.
Do not replace the handler with an empty closure merely to make the build pass;
TE719 exists to prevent that same silent loss of behavior.