Skip to content

Feature request: native repeater/array field type (e.g. "gallery" of media) #1369

Description

@bhspandc

Use case

We're modelling content where editors need an ordered list of media per entry — e.g. a photo gallery on a past fundraiser, a slideshow on an event page, a stage-by-stage product photo set.

Today the field types in zod-generator (string/text/slug/url/number/integer/boolean/datetime/select/multiSelect/portableText/image/file/reference/json) don't include a multi-item / repeater type:

  • multiSelect is enum-of-strings only, not media.
  • image / file are single objects.
  • portableText allows inline images but the rendering is a story, not a grid; insertion is sequential not curated-as-a-set.
  • json works as a hand-edited escape hatch, but obviously has no media-picker UX.

What I'd hope to see

Either:

  1. A new field type like gallery that stores Array<{ id, src?, alt?, caption?, … }> and renders a media-library multi-select picker in the admin, or
  2. A multiple: true modifier on existing image / file / reference fields.

The plugin SDK can't fill this gap — plugin Block Kit elements don't include a media picker, and there's no field-type registration API.

Workaround we're using

Adding a portableText field for the outcome write-up (which gets inline images naturally) plus a single image field for one event photo. We'll come back to a real gallery affordance once a primitive lands upstream.

Related downstream

BHS-P-C/bhspandc-cms#6 — our outcome-report ticket that points back here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions