4a586e484d040ca1b952dbb1323420b5c5e4ecd3
2 * JavaScript for Special:RecentChanges
12 var filtersModel
= new mw
.rcfilters
.dm
.FiltersViewModel(),
13 changesListModel
= new mw
.rcfilters
.dm
.ChangesListViewModel(),
14 controller
= new mw
.rcfilters
.Controller( filtersModel
, changesListModel
),
15 $overlay
= $( '<div>' )
16 .addClass( 'mw-rcfilters-ui-overlay' ),
17 filtersWidget
= new mw
.rcfilters
.ui
.FilterWrapperWidget(
18 controller
, filtersModel
, { $overlay
: $overlay
} );
20 // TODO: The changesListWrapperWidget should be able to initialize
21 // after the model is ready.
22 // eslint-disable-next-line no-new
23 new mw
.rcfilters
.ui
.ChangesListWrapperWidget(
24 filtersModel
, changesListModel
, $( '.mw-changeslist, .mw-changeslist-empty' ) );
26 controller
.initialize( mw
.config
.get( 'wgStructuredChangeFilters' ) );
28 // eslint-disable-next-line no-new
29 new mw
.rcfilters
.ui
.FormWrapperWidget(
30 filtersModel
, changesListModel
, controller
, $( 'fieldset.rcoptions' ) );
32 $( '.rcfilters-container' ).append( filtersWidget
.$element
);
33 $( 'body' ).append( $overlay
);
36 $( '.rcfilters-head' ).addClass( 'mw-rcfilters-ui-ready' );
38 window
.addEventListener( 'popstate', function () {
39 controller
.updateStateBasedOnUrl();
40 controller
.updateChangesList();
43 $( 'a.mw-helplink' ).attr(
45 'https://www.mediawiki.org/wiki/Special:MyLanguage/Help:New_filters_for_edit_review'
48 controller
.replaceUrl();
54 module
.exports
= rcfilters
;
56 }( mediaWiki
, jQuery
) );