fix(deps): bump ckeditor5 from ^47.6.2-alpha.0 to v48 (main)#13250
Open
renovate[bot] wants to merge 1 commit into
Open
fix(deps): bump ckeditor5 from ^47.6.2-alpha.0 to v48 (main)#13250renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
e69143f to
fcbb98e
Compare
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
fcbb98e to
829bbdf
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^47.6.2-alpha.0→^48.3.0Release Notes
ckeditor/ckeditor5 (ckeditor5)
v48.3.0Compare Source
We are happy to announce the release of CKEditor 5 v48.3.0.
Release highlights
⭐ Programmatic API for CKEditor AI
Until now, using CKEditor AI meant mainly going through its built-in UI. This release extends the programmatic APIs and opens the door to more custom AI workflows. Integrators can trigger AI from their buttons, process documents automatically in the background, or run AI server-side with no editor interface at all using the Server-side Editor API.
See the Using CKEditor AI programmatically guide for details.
⭐ AI-generated suggestions in track changes
When AI and people edit the same document, reviewers need to know who proposed what. AI suggestions can now be visually marked as AI-generated, so teams can give machine-proposed changes the right level of scrutiny, keep a clear audit trail of where content came from, and meet editorial or governance policies that require disclosing AI involvement.
The feature is opt-in, and you can choose between a pill view or AI author view. Read more in the Marking AI-generated suggestions guide.
⭐ Multi-root and multiple editors support for CKEditor AI is now stable
Editors that split content into separate areas, such as email layouts, structured documents, or CMS templates with distinct regions, can now use CKEditor AI with full production confidence.
We promoted multi-root and multi-instance support to stable so AI Chat and Review consistently read context from and act on the correct region. Adding or removing editor instances at runtime, including the empty "no editors" state, is handled robustly, keeping every AI request scoped to the root the user is working in.
Other improvements and fixes
<style>block as visible text.0under numbering styles that do not support it, and aligned references with the list when using roman numbering at counter values of 4000 or above.definitionsUrlwith differentuseCustomFontsettings no longer interfere with each other's emoji data.MINOR BREAKING CHANGES ℹ️
ai: Changed the signature of
AIGateway.apply().applyMethodis now a property of the second argument (an options object) instead of a positional string: replaceapply( result, 'suggest' )withapply( result, { applyMethod: 'suggest' } ).ai: Tightened the return types of several AI Chat and AI Review getters and methods to
ReadonlyArray/ReadonlyMap. They now return copies of the original collections to prevent accidental mutation of internal state.Updated methods are:
AIChatContext#getPendingContextItems(),AIChatContext#getSentContextItems(),AIReviewRunResult#affectedBlocksandAIGateway#mergeChangesIntoContent().ai: Fixed a CSS specificity conflict that made the AI Chat balloon width depend on stylesheet import order. The AI Chat balloon now sizes to its content without conflicting with default dialog styles.
ai: Changed the CSS selector used to set the AI Chat balloon width from
.ck-ai-chat-balloonto.ck-ai-chat-balloon-main. Custom styles that set the AI Chat balloon width by targeting.ck-ai-chat-balloonmay no longer take effect and should target.ck-ai-chat-balloon-maininstead.Features
config.trackChanges.showAISourceandconfig.trackChanges.aiAuthor.PillViewUI component, which displays a pill with an icon, label, and tooltip. See the API documentation for details.Bug fixes
collaboration-core, track-changes: Fixed a redundant keyboard tab stop on the "AI-generated" pill shown for AI suggestions. The AI origin it signals visually is conveyed to assistive technologies through the suggestion's accessible name.
ai: Pasting spreadsheet or word-processor content into the AI Chat prompt input now keeps the cell text instead of attaching the accompanying preview image.
ai: Fixed an issue where AI-suggested insertions generated by AI Chat were not displayed in the chat feed and were not applied to the content in some scenarios.
ai: Made AI-generated content displayed in the AI Quick Actions balloon and the AI Chat suggestion preview selectable for direct copying.
ai: Roots added at runtime with
MultiRootEditor#addRoot()were sent to the AI service without a title or description, which could cause area-scoped AI Chat requests to target the wrong root.Now the AI features read each editor root's title and description from the root's attributes if available, and fall back to the editor configuration otherwise.
ai: Improved the HTML output of the AI Quick Actions suggestion preview. Completed previews no longer contain temporary streaming elements.
ai: The tooltip displayed when hovering over an AI Chat context chip now wraps long URLs.
ai: Long text and URLs displayed in the AI Chat feed now wrap and no longer overflow the message container.
ai: Fixed an AI Chat crash when loading a historical conversation containing changes for an editor that was never created in the current session.
ai: The conversation title animation is no longer played when opening a chat from history. The animation is now shown only when the AI generates a title for the first time.
ai: The mini toolbar in the AI Actions dialog no longer overlaps the vertical scrollbar.
ai: The AI Review programmatic API no longer switches the editor to the review tab when a review run fails validation (for example, an unknown command or a missing model). A failed call now leaves the previously active tab in place.
ai: Fixed an editor crash that occurred when AI Chat processed responses for document content that included comment or suggestion markers. This was most often reproducible with the General HTML Support plugin enabled.
ai: The balloons in the AI Chat context chips row are now rendered above the AI overlay backdrop instead of behind it.
ai: Fixed an issue where toggling AI Review or AI Translate tabs would reset their state.
ai: Switching tabs while the AI plugin is toggled no longer duplicates views.
ai: The AI Review mode "Adjust length" and "Adjust tone and style" commands, along with their dropdown options, are now translated when a UI language other than English is used.
ai: AI Chat and Review suggestions now render in Safari when the AI panel is toggled while the request is being processed or after quickly switching between AI panels.
collaboration-core: Removed the misplaced
affectsDataproperty from theCollaborationOperationinterface. The property is specific toMarkerOperation. Cast toMarkerCollaborationOperationto access it.comments: The accessible name of a comment thread now includes the text of its first comment. Single-reply threads now announce the reply count instead of repeating the author name.
core: Replaced a cryptic
multi-root-editor-root-initial-data-mismatcherror thrown whenconfig.rootsis an object with a custom prototype or a class instance. The editor now throws a dedicatededitor-create-roots-not-plain-objecterror with a clear message.core: An invalid tag name passed to
config.root.elementorconfig.roots.<rootName>.elementnow throws a clearCKEditorErrorwith codeeditor-wrong-element-nameinstead of a crypticInvalidCharacterErrorfrom the browser renderer.emoji: Reduced editor startup time by preventing the emoji plugin from blocking editor initialization.
emoji: Fixed an issue where multiple editor instances on the same page could interfere with each other's emoji data when they shared the same
definitionsUrlbut used differentuseCustomFontsettings. Depending on which editor initialized first, some editors could display a restricted emoji list when a full one was expected, or the other way around.engine: Fixed incorrect ordering of
markerToElementboundary elements when multiple markers share the same end position. The closing elements are now inserted in reverse opening order to preserve nesting in the output. Closes #20173.footnotes: Fixed the first footnote reference disappearing when the footnote list's starting value is set to
0and the active numbering style, for examplelower-alphaorlower-roman, does not support that value.footnotes: Fixed a mismatch between footnote references and the footnote list when using
lower-romanorupper-romannumbering with counter values of 4000 or above. Both now consistently fall back to decimal numbering, as required by the CSS counter style specification.paste-from-office: Pasting content from MS Office with footnotes no longer results in malformed footnotes when the
Footnotesplugin is enabled.paste-from-office: Pasting content from MS Office no longer throws an error when a list is followed by a paragraph aligned to the margin of an earlier list.
paste-from-office: Pasting content from Excel Online no longer inserts the clipboard's CSS
<style>block as visible text. Closes #20188.real-time-collaboration: In multi-editor setups using a
Contextmechanism, an individual document can now be flushed on the server without affecting other editors. Previously, all editors within theContextinstance turned read-only. Now only the editor connected to the flushed document becomes disconnected, while the remaining editors stay connected and editable.table: Upcasting table content with scoped header cells into a context that does not allow tables, for example an inline editor root, no longer throws an error.
track-changes: When a track changes suggestion comes from AI, its accessible name now states that it was proposed by AI.
widget: The widget type around buttons now insert a paragraph when tapped on touch devices. Previously, taps on the buttons were ignored on Android and iOS, and only selected the widget. Closes #20103.
Thanks to @ELHart05.
Other changes
root.descriptionandroot.titleconfiguration options are now stored in the model as the$descriptionand$titleattributes of the$rootelement and persist through collaboration sessions. See #10327, #10285, #10333.Suggestion#isExternalas read-only, matchingComment#isExternal. Changing this property should not have been possible and could lead to errors.positioncallback inDialogDefinitionnow receives both the visible DOM rootRectand the general DOM rootRect, making it possible to position the dialog even when the DOM root element is off the screen or cropped by an overflowing ancestor. Added thegetRootName()option toDialogDefinitionto control which DOM root the dialog is positioned relative to, improving positioning in multi-root editor setups.Released packages
Check out the Versioning policy guide for more information.
Released packages (summary)
Minor releases (contain minor breaking changes):
Releases containing new features:
Other releases:
v48.2.0Compare Source
We are happy to announce the release of CKEditor 5 v48.2.0.
Release highlights
Media embed improvements
The Media embed feature now supports resizing with drag handles and styling, including alignment with optional text wrapping. Embedded videos and other media can be aligned left, right, or centered, with surrounding content flowing around them.
Editor roots on paragraph-like elements
Editor roots can now be attached to or created as block-level elements other than the default container, including headings, paragraphs, and custom block elements with their own classes, styles, and attributes. This helps integrate CKEditor 5 with CMSes and other systems that edit individual content fields rather than a single wrapper.
Skip-level lists
The list feature now supports skip-level lists. List items can be nested at non-sequential indentation levels, for example a third-level item placed directly under a first-level one, preserving the structure of documents imported or pasted from Word and HTML sources.
General HTML Support in CKEditor AI
CKEditor AI now works in editors configured with General HTML Support. AI Chat, AI Quick Actions, and AI Review can apply and suggest changes on content that uses additional elements and attributes.
Paste and drag and drop in AI Chat
The AI Chat input now supports pasting and drag and drop. Screenshots from the clipboard and other images are added as context attachments, URLs are detected and displayed as link pills, and long pasted text is attached as a text file.
Other AI improvements
MINOR BREAKING CHANGES ℹ️
ai: Changed CKEditor AI APIs used by custom workflows. Review the following changes and see the API documentation for details.
Removed methods:
AIChatContext#updateCurrentDocument()(useAIChatContext#updateCurrentDocuments()instead).AIEditing#sessionId(useAIEditing#getSessionId( editor )instead).AIChatContext#getSourceByDataId()AIChatContext#getDocumentContextSliceByDataId()Removed properties:
AIReply#documentIdAIReply#newNodeAnchorIdsAIReply#dataIdDocumentSourcesModified method signature:
AIReply#appendContent( content )AIEditing#modelToDataWithIds( modelFragment )AIChatController#addSelectionToChatContext()AIEditing#getSelectionText()Modified property type:
AIReply#contentAIReply#parsedContentAIReply#parsedMergedContentAIReply#documentContextContentFeatures
core, editor-balloon, editor-classic, editor-decoupled, editor-inline, editor-multi-root, ui: Added support for describing editable root elements through
config.root.elementandconfig.roots.<rootName>.elementwithout supplying an existing DOM node. The configuration now accepts a tag-name string, such as'h1', or aViewRootElementDefinitionobject that defines the tag name, CSS classes, inline styles, and attributes. The<textarea>and<input>elements are not supported because they cannot host rich-text editables. Closes #20047.collaboration-core, track-changes: Track Changes now integrates with the General HTML Support feature. GHS-produced elements and attributes are now tracked as suggestions instead of being applied silently to the document content.
Changing GHS-produced HTML attributes, classes, or inline styles creates attribute suggestions. Suggestion descriptions now list inline styles by name and value, such as
Set format: border-color (green), and group class or HTML-attribute changes under concise labels, such asSet format: style, metadata. Insertion and deletion suggestions for GHS-driven elements, such as<section>,<iframe>, and<article>, now use HTML element names.collaboration-core, track-changes: Track Changes now records suggestions for media embed resize and style changes.
autoformat, list: Numbered list autoformat now accepts any starting number. Typing any number followed by
.or)and a space (e.g.5.) creates a numbered list. When thelist.properties.startIndexoption is enabled, the list starts at the typed number.ai: Introduced General HTML Support integration with CKEditor 5 AI. AI Chat, AI Quick Actions, and AI Review can now process content that uses additional HTML elements and attributes.
ai: Introduced a programmatic API for the
AIReviewplugin. See details in the Using CKEditor AI programmatically documentation.ai: Introduced paste support in the AI Chat input.
Pasting a single bare URL adds it to the conversation context as a link pill. Pasting plain text above a configurable threshold attaches it as a
.txtfile. Pasting an image or any supported file attaches it to the conversation context as a file pill, with image pills using a dedicated icon.ai: Introduced drag-and-drop support to the AI Chat input.
Files dropped onto the prompt input area are added to the chat context as pills. URLs and text dropped from the browser are also added to the conversation context as corresponding pills. The AI Chat input panel now shows a visual hint during the drag.
editor-multi-root: The
MultiRootEditor#createEditable()method now accepts an existingHTMLElementor aViewRootElementDefinition, so dynamically added roots can be attached to caller-owned DOM elements. Element definitions supplied at root configuration time are also replicated through real-time collaboration. Closes #20047.email: Tables with resized columns now keep their column widths when exported as email. Previously, they fell back to auto-distributed sizing in Outlook and other email clients.
list: Added support for skip-level lists. List items can now be indented by more than one level at a time by enabling the
list.enableSkipLevelListsconfiguration option. Closes #12563.media-embed: Introduced the media embed resize feature that allows users to resize embedded media via drag handles. Closes #6593.
Embedded media now uses the
aspect-ratioCSS property instead of apadding-bottomwrapper.media-embed: Introduced the media embed alignment feature, with optional text wrapping. Closes #2781.
media-embed: Added
config.mediaEmbed.styles.optionsfor picking a subset of the built-in media embed styles, overriding their fields, or registering custom ones. Theconfig.mediaEmbed.toolbarnow also accepts inline split-button dropdown definitions. Closes #20131.Bug fixes
clipboard, paste-from-office: Fixed
ClipboardPipelineandPasteFromOfficeto allow common HTML string normalization before conversion to the view. Closes #17309.ai: Fixed an issue where AI Chat temporarily displayed wrap and unwrap proposed changes as removals before converting them to formatting changes.
ai: The editor no longer crashes when users interact with double-unwrap proposed changes, such as changes in nested block quotes or custom widgets.
ai: AI Chat Shortcuts buttons are now disabled while a context item is being uploaded, preventing the shortcut from executing until the context is ready.
ai: Fixed the
model-nodelist-offset-out-of-boundserror thrown by AI Quick Actions when the selection started at the end of the previous block, for example when selecting a full paragraph that begins after the trailing boundary of the block above it.ai: The preview balloon now scrolls back to the top when switching between AI Chat suggestions.
ai: AI plugins no longer block editor initialization with HTTP requests. Model fetching, conversation creation, and review checks loading now run in the background while the editor becomes interactive immediately.
ai: Fixed a visible scrollbar appearing in AI suggestion boxes caused by suggestion marker borders being clipped by the container overflow.
ai: Improved AI Chat stability in multi-editor setups.
AI Chat no longer crashes when users interact with suggestions or replies from destroyed editors or removed roots. The "Current document" chat context option now reflects the presence of editor instances, and Track Changes suggestion actions now behave consistently across multiple editors.
ai: Fixed an issue where the HTML Embed widget could be duplicated after content was processed by AI features.
ai: The AI Review "review completed" header title now truncates with an ellipsis when it overflows the available space in the check results view, matching the behavior of the empty-results completed view.
ai: Preserved whitespace and newlines inside preformatted blocks in AI Chat replies.
document-outline: Fixed
headingIdattribute handling for custom heading elements configured with non-standard model names, such asheading2, or object-based view definitions, such asview: { name: 'h2', classes: 'fancy' }. Previously, such configurations could result in errors duringeditor.data.parse(...)processing.footnotes: Fixed incorrect spacing of the footnotes list divider.
heading: The Title feature now handles editor configurations where some or all roots use a custom
modelElement. Roots that do not accept thetitleelement are skipped at runtime, and the feature logs a single warning when no root supports the title structure. Closes #20026.html-support: The General HTML Support schema for the
hgroupelement now works in editor configurations using a custom rootmodelElement. Closes #20026.html-support: The HTML comments feature no longer assumes the root model element is
$root. Comments are now preserved in editor configurations using a custom rootmodelElement. Closes #20026.link: The link preview button now displays the no URL label for links with an empty
href. Closes #20136.link: Fixed an issue where the link edit form back button was hidden when editing a link with an empty URL via the balloon toolbar. See #20136.
link: Fixed text centering in the link preview button. See #20136.
media-embed: Spotify track embeds now use a fixed height instead of a fluid aspect ratio to prevent incorrect resizing.
Spotify track embeds now render at a fixed
80pxheight, matching the compact single-row player. Album and artist embeds are unaffected and continue to use a responsive aspect ratio.pagination: The pagination page navigator no longer changes its width based on the document's page count, so the toolbar's "show more items" button stays visible when long documents are loaded.
paste-from-office: Fixed an issue where list items pasted from Word with three or more nesting levels could appear too far to the right when ancestor items had explicit paragraph indentation. Their position now matches Word's visual layout regardless of nesting depth.
paste-from-office: Lists pasted from Microsoft Word now keep consistent left indentation. Closes #20179.
Top-level list items that shared the same indentation in the original document no longer become visually misaligned in the editor when the list is interrupted by another list or by an empty paragraph. Nested list items pasted directly after their parent now keep their nesting level.
Other changes
$inlineRootand custom inline-only roots. This also applies to custom limit element types contributed by integrators. Closes #20047.HighlightedTextViewcomponent now processes text containing HTML-special characters, such as&,<, and>.Released packages
Check out the Versioning policy guide for more information.
Released packages (summary)
Minor releases (contain minor breaking changes):
Releases containing new features:
Other releases:
Configuration
📅 Schedule: (in timezone Europe/Vienna)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.