Minor Changes
-
#942
7c536e5Thanks @MA2153! - Adds per-field allowed MIME types forfileandimagefields. Field-levelallowedTypesis now honored end-to-end: it filters the media picker, widens upload acceptance for that field (so e.g. a zip-only field can accept zip uploads even though the global allowlist excludes them), and validates referenced media against the destination field on content save. The schema editor in admin gains an "Allowed types" control with curated presets and freeform entry.Behavior change: the
imagebuilder'sallowedTypesoption was previously accepted but read by nothing. It is now load-bearing — a code-first schema that already passedallowedTypes(e.g.["image/png"]) will now actually narrow the picker and gate uploads. Most users will see no change; if you set this option intending the old (silent) behavior, drop it.Behavior change: updating a field via the admin schema editor now explicitly clears its validation when the form contains no validation settings, instead of leaving an existing
validationvalue intact. This only affects fields with pre-existing validation that is not expressible in the editor UI. -
#921
530b013Thanks @jcheese1! - Adds table support to the PortableText editor. Users can now insert and edit tables via the slash command menu (/table) or toolbar button. Tables support header rows, column/row insertion and deletion, and include a bubble menu for quick editing.
Patch Changes
-
#958
7f6b6eaThanks @ascorbic! - Fixes admin lists, tables and info cards rendering as transparent against the page background. Card containers in the content list, content type list, content type editor, media library, comments, users and device authorization views now have an explicitbg-kumo-basesurface so they're visually distinct from the body.Also fixes column header labels in content list tables ("Title", "Status", etc.) rendering pale because of an undefined Tailwind class (
text-kumo-fg) -- they now use the default text color and rely on the sort indicator icon to signal active state. -
#952
131bea6Thanks @ascorbic! - Replaces 20 raw<input type="checkbox">elements across the admin UI with Kumo'sSwitchandCheckboxcomponents. Single-boolean toggles (SEO, Enable comments, Required, etc.) becomeSwitch; multi-select / list-context checkboxes (collection multi-select, term tree nodes) becomeCheckbox. Drops manual styling and label markup that duplicated what the Kumo components provide built-in. -
#956
54b5aa1Thanks @CacheMeOwside! - Fixes broken checkboxes on the comments moderation page (/_emdash/admin/comments). Selecting a comment threw a JavaScript error and did not select the row. -
#934
c630e31Thanks @ascorbic! - Fixes button and link inconsistencies across the admin UI. Standardises on Kumo'sButtoniconprop andLinkButton(withexternalfor new-tab links) instead of manual icon spacing and raw anchor styling, removes a<Link><Button>invalid HTML nesting in the plugin manager, and translates two stray English strings in the user list empty state. -
#949
7aa1897Thanks @ascorbic! - Fixes invalid<a><button>HTML produced by<Link><Button>...</Button></Link>patterns across the admin UI. Introduces aRouterLinkButtoncomponent that wraps TanStack Router's<Link>with Kumo button styling (variant,size,shape,iconprops), and migrates all existing<Link className={buttonVariants(...)}>usages to use it. Extracts the duplicated "Back to settings" header link into a sharedBackToSettingsLinkcomponent. -
#940
0b8a319Thanks @ascorbic! - Fixes the long tail of untranslated English strings in the admin UI: settings panels, marketplace, sandboxed-plugin host, auth flows, taxonomy/menu management, and lib/api fallback messages. After this PR, EmDash admin UI is fully localizable across all known surfaces. -
#957
13ff061Thanks @ascorbic! - Fixes the OG image picker in the content editor only appearing for collections with a field literally namedfeatured_image. The OG image control now lives in the SEO sidebar panel alongside the other SEO fields, so any collection withseoenabled can set a social preview image regardless of whether it has a featured image field. -
#955
49b66d9Thanks @ascorbic! - Removes the sticky editor header from content / content-type / section / settings pages. The sticky implementation had transparency artifacts (backdrop-blur over varied content), layout fragility (negative margins canceling parent padding), z-index conflicts with the app bar, and ~85px of permanent vertical chrome. Each editor now renders a Save button at the bottom of the form so users can save without scrolling back to the top header. The distraction-free hover-overlay header in the content editor is preserved. -
#966
1b2fa77Thanks @ahliweb! - i18n(id): complete Indonesian translation (320 strings) -
#937
af15975Thanks @ascorbic! - Fixes ~250 untranslated English strings in the admin UI's most-used screens (router toasts, content type editor, widgets, byline and user routes, invite-accept flow, portable text editor toolbar, image and embed editor nodes, user list). Alltitle=,aria-label=,placeholder=, and toast messages in these areas now flow through Lingui. -
#950
a4968c1Thanks @ascorbic! - Replaces raw<select>and<input type="search">elements across the admin UI with Kumo'sSelectandInputcomponents. This gives consistent styling, proper focus rings, accessibility (label association via the Field wrapper), and dark-mode handling for free instead of relying on hand-rolled Tailwind classes that bypassed the design system. -
#973
f80fb58Thanks @ahliweb! - Translates the remaining untranslated string in the Indonesian locale, bringing it to 100% coverage. -
Updated dependencies []:
- @emdash-cms/blocks@0.11.0