Component calls
Purpose
An uppercase GX tag lowers to a Go callable component call. The selected component function owns the typed prop contract used by the call. The callable may read provided props for rendering, but it must not mutate product state, call providers, perform permission decisions, or infer business policy.
Inputs
| GX input | Go target | Behavior |
|---|---|---|
| Uppercase tag name | Go callable |
<StatusSummary> calls StatusSummary. Unknown functions or method values fail lint. |
| Attributes | exported props fields |
status="warning" or status={"warning"} fills Status. Missing required fields and unknown fields fail lint. |
Boundary
Business state is outside this patch. v0.1.4 accepts literal props, while body
children are outside this patch. The lowered call is not a persistent
Component node kind; it is a Go call that returns ordinary
nodes.
Generated Expression
package reviewui
var summary = <StatusSummary status={"warning"}></StatusSummary>
The compiler lowers the markup expression, not the surrounding Go declaration.
A variable initialized with markup remains a variable initialized with a
gx.Node expression:
var summary = StatusSummary(StatusSummaryProps{
Status: "warning",
})
The selected StatusSummary function’s props type validates Status.