github awcodes/filament-curator v5.5.0

latest releases: v3.7.13, v5.5.3, v4.2.3...
7 hours ago

A correctness release from an audit of 5.x: rendering, the picker, the media observer, the cropper and the docs. It's a minor release because two behaviours change. Read Changed before upgrading.

Changed

  • Pickers inherit the global upload settings. CuratorPicker now uses its own setting first, then the facade's, then config. That covers disk, directory, visibility, acceptedFileTypes, minSize, maxSize and the image-resize options. If you configure the facade, for example Curator::disk('s3'), your pickers now use that setting unless they set their own. See Global upload defaults.
  • Facade settings last across queue jobs and Octane requests. Anything set on Curator, Glide or Curation in a service provider's register() or boot() used to be lost after the first job or request. It now lasts. Settings changed during a request or job are still reset for the next one.
  • Deleting media removes only its own curation files. Deleting used to remove any folder named like the item. A crop file whose curation was already removed from the item is no longer deleted with it.
  • The default curation_formats are the ones the cropper can save. bmp, gif and svg were offered by default but always failed to save. Published configs that still list them are filtered.
  • Single pickers accept one upload, and it replaces the selection.

Fixed

  • RichEditor: inserted Curator images lost their src when rendered with RichContentRenderer. Content saved by earlier versions still carries a data-id. Rendering saved content has a one-off cleanup.
  • Glider:
    • Density srcsets (2x) requested a 2px-wide image.
    • Fallback sources from the public directory 404'd.
  • Picker:
    • rules() never reached the uploader. Per-file rules such as dimensions: and mimes: now apply to uploads.
    • With no minimum size set, every upload was rejected.
    • maxWidth() threw for any Width value.
    • MorphMany pickers lost their saved order on reload.
    • "Load more" after a search appended unfiltered results.
    • UUID keys threw a JavaScript error in the selection.
  • File swap and rename:
    • Swapping a file deleted the original before the replacement was in place, so a failed move lost it.
    • Renaming left curations behind in the old folder.
  • Cropper:
    • Rotation was saved the opposite way from the preview.
    • The flip buttons were swapped.
    • Rotate plus flip came out 180° off.
    • The output size depended on the admin's window. Presets are now saved at the preset's size, and custom crops at their size in the original image.
  • Tenancy: tenancy enabled only in config broke the RichEditor panel.
  • curator:install: UUID and tenancy installs kept the base model, and the tenancy option wrote invalid PHP.
  • <x-curator-curation>: it threw for UUID or ULID keys and when curation was omitted.
  • Config: resource.pages.*, resource.schemas.form and resource.tables.table were ignored.
  • urlProvider(): passing an instance threw.
  • CuratorColumn::resolution(): it had no effect. It now requests the image at the display size times the resolution.
  • Docs:
    • The relationship examples used snake_case names that never resolve.
    • The picker defaults were wrong.
    • The standalone forms setup now says to render <x-filament-actions::modals />.

Removed

  • curator:upgrade: it was never registered and targeted v2 → v3.

Added in #744–#751.

Filament 4 users are covered: 5.x serves both majors.

What's Changed

  • ci: pin the shared workflow to a commit SHA by @awcodes in #740
  • docs: trim the README to a landing page that points at docs.aw.codes by @awcodes in #741
  • chore: generate documentation screenshots and share cards with Focus by @awcodes in #742
  • chore: move Focus cards to focus-templates v2.1.0 by @awcodes in #743
  • fix: small correctness fixes from the 5.x audit by @awcodes in #744
  • fix: RichEditor image sources, Glider density srcsets and local sources by @awcodes in #745
  • fix: picker upload settings, MorphMany order, and panel search paging by @awcodes in #746
  • fix: keep facade settings across jobs and requests, and apply them to the picker by @awcodes in #747
  • fix: safer file swap, rename and delete in the media observer by @awcodes in #748
  • fix: cropper rotation, flips, output size and default formats by @awcodes in #749
  • docs: fix relationship names, picker defaults, standalone forms setup and CLAUDE.md by @awcodes in #750
  • fix: regressions found reviewing the 5.x audit fixes by @awcodes in #751

Full Changelog: v5.4.0...v5.5.0

Don't miss a new filament-curator release

NewReleases is sending notifications on new releases.