Summary
EmDash has a gallery Portable Text block, but it's import/render-only — there's no TipTap editor node, so a migrated gallery can't be inserted, edited, or reordered in the admin.
Current state
- Import:
@emdash-cms/gutenberg-to-portable-text defines PortableTextGalleryBlock (_type: "gallery", images[], columns?).
- Render:
packages/core/src/components/Gallery.astro renders it and is registered by default in the PortableText component (components/index.ts).
- Edit: ❌ nothing in
packages/admin/src/components/editor/ handles gallery (unlike image → ImageNode.tsx / ImageDetailPanel.tsx). A gallery that arrives via import is invisible/uneditable in the editor.
Request
A TipTap node + sidebar UI for the gallery block, mirroring the image handling:
- insert a gallery, add/remove/reorder images (media picker)
- set
columns
- node-view preview in the editor
Why
WordPress migrations (WP Media Folder / Gutenberg galleries) bring gallery blocks through cleanly, but authors then can't manage them post-import — they have to drop to the seed/JSON. Closing the loop (like the recent image-alignment editor work) would make galleries first-class.
Notes
Related but distinct: #1369 / #1424 concern repeater/array field types with media. This is specifically the Portable Text gallery block in the rich-text editor.
Summary
EmDash has a
galleryPortable Text block, but it's import/render-only — there's no TipTap editor node, so a migrated gallery can't be inserted, edited, or reordered in the admin.Current state
@emdash-cms/gutenberg-to-portable-textdefinesPortableTextGalleryBlock(_type: "gallery",images[],columns?).packages/core/src/components/Gallery.astrorenders it and is registered by default in thePortableTextcomponent (components/index.ts).packages/admin/src/components/editor/handlesgallery(unlikeimage→ImageNode.tsx/ImageDetailPanel.tsx). A gallery that arrives via import is invisible/uneditable in the editor.Request
A TipTap node + sidebar UI for the
galleryblock, mirroring the image handling:columnsWhy
WordPress migrations (WP Media Folder / Gutenberg galleries) bring
galleryblocks through cleanly, but authors then can't manage them post-import — they have to drop to the seed/JSON. Closing the loop (like the recent image-alignment editor work) would make galleries first-class.Notes
Related but distinct: #1369 / #1424 concern repeater/array field types with media. This is specifically the Portable Text
galleryblock in the rich-text editor.