Description
The new image editor is currently available only in Binary fields. Extend it to Image and File fields.
Availability:
| Field type |
Image editor available? |
| Binary |
When the selected file is an image (existing behavior) |
| Image |
Yes |
| File |
Only when the selected file is an image |
⚠️ This supersedes the earlier note in EPIC #34420 ("For File Field, shouldn't be available"). The epic's field-availability table is being updated to reflect that File fields do get the editor when the file is an image.
Save behavior — updating the referenced content:
Image and File fields work as a reference to another content (a file-asset contentlet). When a user edits the image and saves a new version, that change must propagate to the original referenced content:
- Saving the edited image creates a new version of the original file-asset content (in place, via the standard check-in so version history is preserved).
- Because the asset is shared, any other content that references the same file-asset will see the updated image. This is the intended behavior.
Acceptance Criteria
Availability
Save / version propagation
Edge cases
Suggested Tests
This work spans front-end (editor availability) and back-end (versioned check-in of the referenced file-asset), so coverage is broader than the FE-only tickets. Unit-first, then Integration/Postman for the save path, with a single E2E smoke.
Unit (FE — Jest/Spectator) — availability logic
Unit (BE — JUnit) — save path
Integration (dotcms-integration) — versioning behavior (the highest-value layer here)
Postman (dotcms-postman) — REST contract
E2E (Playwright) — one focused smoke only
Priority
Medium
Additional Context
Part of the new Edit Contentlet work (dotCMS: New Edit Contentlet) and the Image Editor migration (EPIC #34420 — kept as a related reference, not a parent link). The key technical consideration is that Image/File fields are references to a file-asset contentlet, so the editor's save path must check in a new version of that referenced content rather than mutating field data in isolation. This is why the work spans both front-end (editor availability + wiring) and back-end (versioned check-in of the referenced asset).
Description
The new image editor is currently available only in Binary fields. Extend it to Image and File fields.
Availability:
Save behavior — updating the referenced content:
Image and File fields work as a reference to another content (a file-asset contentlet). When a user edits the image and saves a new version, that change must propagate to the original referenced content:
Acceptance Criteria
Availability
Save / version propagation
Edge cases
Suggested Tests
This work spans front-end (editor availability) and back-end (versioned check-in of the referenced file-asset), so coverage is broader than the FE-only tickets. Unit-first, then Integration/Postman for the save path, with a single E2E smoke.
Unit (FE — Jest/Spectator) — availability logic
Unit (BE — JUnit) — save path
Integration (dotcms-integration) — versioning behavior (the highest-value layer here)
Postman (dotcms-postman) — REST contract
E2E (Playwright) — one focused smoke only
Priority
Medium
Additional Context
Part of the new Edit Contentlet work (
dotCMS: New Edit Contentlet) and the Image Editor migration (EPIC #34420 — kept as a related reference, not a parent link). The key technical consideration is that Image/File fields are references to a file-asset contentlet, so the editor's save path must check in a new version of that referenced content rather than mutating field data in isolation. This is why the work spans both front-end (editor availability + wiring) and back-end (versioned check-in of the referenced asset).