1.4 KiB
1.4 KiB
id, name, status, depends_on, scope, risk, impact, level
| id | name | status | depends_on | scope | risk | impact | level | ||
|---|---|---|---|---|---|---|---|---|---|
| component/map | Implement <Map> ujsx component | completed |
|
narrow | low | component | implementation |
Description
Implement the Map ujsx component function. Represents mapping over an array — creates one child instance per array item. Structurally equivalent to a dynamically-generated Parallel group.
Acceptance Criteria
src/component/map.tsexportsMapcomponent functionMapproducesUElementwithtype: "map"- Props:
over: Signal<unknown[]> | unknown[] | ((results: Record<string, CallResult>) => unknown[])(required),as: string(required),children: UNode(required — template rendered per item) - The
asprop names the variable each item is bound to - Aggregate completion semantics: all mapped nodes must reach satisfying terminal state for Map to be "completed"; any failed/aborted child makes Map failed/aborted
- Re-exported from
src/component/index.ts - Unit tests: correct UElement shape with each over form (static, function), as prop preserved
References
- docs/architecture/workflow-templates.md — Map component, aggregate completion semantics, edge type
- docs/architecture/reactive-execution.md — Map reactive behavior, maxConcurrency interaction
Notes
To be filled by implementation agent
Summary
To be filled on completion