Skip to content

v1.5.6

Choose a tag to compare

@github-actions github-actions released this 09 Jul 16:44

<List> gains a custom row template (FW-14) — the same escape hatch the menu (FW-10) and tabs
(FW-12) have — plus two fixes so it holds up on real, data-driven admin lists. All additive.

🐞 Fixes — @weave-framework/ui

  • List — rowTemplate over dynamic items. The custom row body now renders for rows that appear
    after mount — async initial load, infinite-scroll append, reload after create/edit/delete. It was
    wired once at mount over a static snapshot, so any list whose data isn't known synchronously showed
    empty rows. Now the body mounts inside the reactive keyed list block, so create / append / replace /
    remove all just work. API unchanged.
  • List — rowTemplate refreshes edited rows. A row whose value stays the same but whose data
    changes (edit a record → refetch) now re-renders its body instead of keeping the stale one. The body
    is re-keyed on the item's identity as well as its selected/disabled state, so every templated field
    updates on a reload — no need to bake a data digest into the row key.

✨ Features — @weave-framework/ui

  • List — custom row content (rowTemplate). Hand a <List> an authored @snippet and it
    renders the whole body of each row — a colour dot, the name, tag pills, a muted description,
    trailing action buttons — from the row's ListRowContext (item + your data payload, plus
    value / title / meta / index / selected / disabled). <List> and ListItem are now
    generic over the payload (data?: T). The framework still owns the row, its role, aria-selected,
    roving tabindex, keyboard nav and (when reorderable) the drag handle rendered before the
    template; title stays the accessible name + typeahead. It re-renders when a row's selected
    flips. In selectable mode a click on an interactive control inside the row (a <Button> / link) no
    longer toggles row selection. Off by default → the current title + meta spans. Mirrors the menu's
    itemTemplate (FW-10) and tabs' tabTemplate (FW-12).