Skip to content

emdash

v@emdash-cms/[email protected] Feature

This release adds 2 notable features for engineering teams evaluating rollout.

Published 22d Productivity & Wikis
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

astro cms emdash typescript

ReleasePort's take

Light signal
editorial:auto 13d

@emdash-cms/admin 0.12.0 adds site-wide Open Graph image defaults and fixes media library infinite scrolling for libraries over 50 items, plus a stale ref race in slash command keyboard handlers.

Why it matters: Site-wide OG defaults improve SEO without per-page config; media scaling fix unblocks admins with large asset libraries. Upgrade on next routine cycle.

Summary

AI summary

Adds site‑wide default Open Graph image support and fixes media library infinite scrolling.

Changes in this release

Feature Medium

Adds site-wide default Open Graph image support in admin SEO settings.

Adds site-wide default Open Graph image support in admin SEO settings.

Source: llm_adapter@2026-05-21

Confidence: high

Feature Medium

EmDashHead.astro automatically emits og:image, twitter:image, and JSON-LD image for pages without custom images.

EmDashHead.astro automatically emits og:image, twitter:image, and JSON-LD image for pages without custom images.

Source: llm_adapter@2026-05-21

Confidence: high

Feature Low

Adds `localOnly` prop to `MediaPickerModal` to restrict selection to locally stored media.

Adds `localOnly` prop to `MediaPickerModal` to restrict selection to locally stored media.

Source: granite4.1:30b@2026-05-23-audit

Confidence: low

Dependency Medium

@emdash-cms/blocks updated to version 0.12.0.

@emdash-cms/blocks updated to version 0.12.0.

Source: llm_adapter@2026-05-21

Confidence: high

Performance Low

Invalidates worker-scoped site-settings cache on media metadata updates or deletes to keep resolved URLs and dimensions synchronized.

Invalidates worker-scoped site-settings cache on media metadata updates or deletes to keep resolved URLs and dimensions synchronized.

Source: granite4.1:30b@2026-05-23-audit

Confidence: low

Bugfix Medium

Fixes stale ref race in slash command menu's keyboard handlers.

Fixes stale ref race in slash command menu's keyboard handlers.

Source: llm_adapter@2026-05-21

Confidence: high

Bugfix Medium

Media library admin page supports libraries larger than 50 items with cursor-based infinite scroll.

Media library admin page supports libraries larger than 50 items with cursor-based infinite scroll.

Source: llm_adapter@2026-05-21

Confidence: low

Bugfix Medium

Media picker modal supports libraries larger than 50 items with cursor-based infinite scroll.

Media picker modal supports libraries larger than 50 items with cursor-based infinite scroll.

Source: llm_adapter@2026-05-21

Confidence: low

Full changelog

Minor Changes

  • #997 7b45cba Thanks @ascorbic! - Adds support for a site-wide default Open Graph image. The setting is exposed in the admin SEO settings page (Settings -> SEO -> Default Social Image), resolved to a URL on read by getSiteSettings(), and automatically emitted as og:image / twitter:image (and BlogPosting JSON-LD image) by EmDashHead.astro whenever a page has no image of its own. Per-page images still take precedence.

    This wires up an existing data model that was previously defined in the schema and MCP tools but never used: stored values were not resolved and no template path read the setting.

    Emitted URLs are absolutized using SiteSettings.url, the page's siteUrl, or the request origin so crawlers and JSON-LD consumers that reject relative URLs work correctly.

    Also adds a localOnly prop to MediaPickerModal that suppresses the "Insert from URL" input and external provider tabs. Used by SEO settings to ensure the picker only returns locally-stored media (since the setting only persists a local mediaId).

    Media metadata updates and deletes now invalidate the worker-scoped site-settings cache, so resolved logo/favicon/default-social-image URLs and dimensions stay in sync with the underlying media row.

Patch Changes

  • #996 19576be Thanks @r2sake! - Fix media library admin page and the media picker modal (used by the rich text editor and image fields when embedding media into content) to support libraries larger than 50 items by wiring up cursor-based infinite scroll (mirrors the content list fix from #135)

  • #1004 35791ff Thanks @ascorbic! - Fixes a stale ref race in the slash command menu's keyboard handlers. The state ref was synced via useEffect (post-commit), so TipTap's Suggestion plugin could read stale state when invoking onKeyDown synchronously -- causing Enter to occasionally fail to execute commands and arrow navigation to skip selections on slower runs.

  • Updated dependencies []:

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track emdash

Get notified when new releases ship.

Sign up free

About emdash

All releases →

Related context

Related tools

Earlier breaking changes

Beta — feedback welcome: [email protected]