2 var TagItemWidget
= require( './TagItemWidget.js' ),
6 * Extend OOUI's FilterTagItemWidget to also display a popup on hover.
8 * @class mw.rcfilters.ui.FilterTagItemWidget
9 * @extends mw.rcfilters.ui.TagItemWidget
12 * @param {mw.rcfilters.Controller} controller
13 * @param {mw.rcfilters.dm.FiltersViewModel} filtersViewModel
14 * @param {mw.rcfilters.dm.FilterItem} invertModel
15 * @param {mw.rcfilters.dm.FilterItem} itemModel Item model
16 * @param {Object} config Configuration object
18 FilterTagItemWidget
= function MwRcfiltersUiFilterTagItemWidget(
19 controller
, filtersViewModel
, invertModel
, itemModel
, config
21 config
= config
|| {};
23 FilterTagItemWidget
.parent
.call( this, controller
, filtersViewModel
, invertModel
, itemModel
, config
);
26 .addClass( 'mw-rcfilters-ui-filterTagItemWidget' );
31 OO
.inheritClass( FilterTagItemWidget
, TagItemWidget
);
38 FilterTagItemWidget
.prototype.setCurrentMuteState = function () {
41 !this.itemModel
.isSelected() ||
42 this.itemModel
.isIncluded() ||
43 this.itemModel
.isFullyCovered()
45 invalid
: this.itemModel
.isSelected() && this.itemModel
.isConflicted()
49 module
.exports
= FilterTagItemWidget
;