Changes by Marius Dumitru Florea on 08/Oct/26 13:51
Fix Version:
18.9.0-rc-1
Documentation in Release Notes:
N/A
Documentation:
N/A
Resolution:
Fixed
Status:
OpenClosed
3 comments
Marius Dumitru Florea on 08/Oct/26 13:47
Migrated so far: these files no longer use the Prototype.js API. Their public API is unchanged, and the classes can still be extended with Prototype.js' Class.create(). All paths are relative to xwiki-platform-web-war/src/main/webapp/resources/.
Code that must see the xwiki:* events still fired by Prototype.js (such as xwiki:dom:updated and xwiki:docextra:loaded) now listens with jQuery through xwiki-events-bridge. Ajax calls use fetch.
Marius Dumitru Florea on 08/Oct/26 13:48
Still to migrate, based on the inventory from 2026-10-01 minus what was migrated since. Paths are relative to xwiki-platform-web-war/src/main/webapp/resources/ unless a module is named.
Web WAR JavaScript
js/xwiki/xwiki.js: XWiki.Document / Attachment / currentDocument, the xwiki:dom:* lifecycle events, displayDocExtra (4x Ajax.Request). The Colibri code at lines 1599-1705 is dead.
uicomponents/suggest/suggest.js (XWiki.widgets.Suggest), together with its users: search-webjar searchSuggest.js, tree-webjar finder.js, search-ui QuickSearchUIX, and the oldcore Java that emits new ajaxSuggest(...)
js/xwiki/actionbuttons/actionButtons.js: the cancellable xwiki:actions:* events. Coupled with edit-ui XWiki.InplaceEditing, administration-ui XWiki.ConfigurableClass and XWikiFormSaveTarget.ts.
uicomponents/widgets/confirmedAjaxRequest.js: its options are Ajax.Request options, so it needs a fetch adapter
appwithinminutes-ui: ClassEditSheet, StaticList, LiveTableEditSheet, LiveTableViewSheet, Code.CSRFTokenRefresh, WizardStep, WebHome. The heaviest part: XWiki.FormField and xwiki:class:* are probably used by third-party field types, and it also uses Scriptaculous drag and drop.