Skip to content

markup

The markup transform handles supported yield* expressions outside <script effect>.

Supported rewrite sites

  • interpolation expressions: {yield* expr}
  • event handlers
  • #if
  • #each
  • #await
  • key blocks
  • spread attributes
  • const tags
  • @render

@render remains call-only after lowering. Supported forms include {@render yield* snippet()} and {@render (yield* snippet())}. The snippet returned by the effect is rendered reactively — the render block re-evaluates once the effect resolves, and again whenever its dependencies change.

Semantics

  • Markup expressions are rewritten to runtime helper calls.
  • Inline event handlers preserve Effect semantics and are executed through the active runtime.
  • Markup-side yield* and <script effect> lowering are designed to coexist in the same component.

BSD-3-Clause