Minor Changes
-
#997
7b45cbaThanks @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 bygetSiteSettings(), and automatically emitted asog:image/twitter:image(and BlogPosting JSON-LDimage) byEmDashHead.astrowhenever 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'ssiteUrl, or the request origin so crawlers and JSON-LD consumers that reject relative URLs work correctly.Also adds a
localOnlyprop toMediaPickerModalthat 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 localmediaId).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
19576beThanks @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
35791ffThanks @ascorbic! - Fixes a stale ref race in the slash command menu's keyboard handlers. The state ref was synced viauseEffect(post-commit), so TipTap's Suggestion plugin could read stale state when invokingonKeyDownsynchronously -- causing Enter to occasionally fail to execute commands and arrow navigation to skip selections on slower runs. -
Updated dependencies []:
- @emdash-cms/blocks@0.12.0