wiki.techinc.nl/resources/lib/ooui/oojs-ui-wikimediaui.js
James D. Forrester c6468d46d4 Update OOUI to v0.44.2
Release notes:
 https://gerrit.wikimedia.org/g/oojs/ui/+/v0.44.2/History.md

Bug: T180173
Bug: T180890
Bug: T309916
Bug: T313238
Bug: T313344
Depends-On: I1a75853fb52b8a56f0acf7beb82b4a5b177e9bea
Change-Id: Id517e5598bd7a3e1870b0cb3d7d8da7375f9403a
2022-07-27 11:29:47 -04:00

122 lines
No EOL
3.3 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*!
* OOUI v0.44.2
* https://www.mediawiki.org/wiki/OOUI
*
* Copyright 20112022 OOUI Team and other contributors.
* Released under the MIT license
* http://oojs.mit-license.org
*
* Date: 2022-07-27T15:22:47Z
*/
( function ( OO ) {
'use strict';
/**
* @class
* @extends OO.ui.Theme
*
* @constructor
*/
OO.ui.WikimediaUITheme = function OoUiWikimediaUITheme() {
// Parent constructor
OO.ui.WikimediaUITheme.super.call( this );
};
/* Setup */
OO.inheritClass( OO.ui.WikimediaUITheme, OO.ui.Theme );
/* Methods */
/**
* @inheritdoc
*/
OO.ui.WikimediaUITheme.prototype.getElementClasses = function ( element ) {
var
variants = {
invert: false,
progressive: false,
destructive: false,
error: false,
warning: false,
success: false
},
// Parent method
classes = OO.ui.WikimediaUITheme.super.prototype.getElementClasses.call( this, element );
if (
element instanceof OO.ui.IconWidget &&
// eslint-disable-next-line no-jquery/no-class-state
element.$element.hasClass( 'oo-ui-checkboxInputWidget-checkIcon' )
) {
// Icon on CheckboxInputWidget
variants.invert = true;
} else if ( element.supports( 'hasFlag' ) ) {
var isFramed = element.supports( 'isFramed' ) && element.isFramed();
var isActive = element.supports( 'isActive' ) && element.isActive();
var isToolOrGroup =
// Check if the class exists, as classes that are not in the 'core' module may
// not be loaded.
( OO.ui.Tool && element instanceof OO.ui.Tool ) ||
( OO.ui.ToolGroup && element instanceof OO.ui.ToolGroup );
if (
// Button with a dark background.
isFramed && ( isActive || element.isDisabled() || element.hasFlag( 'primary' ) ) ||
// Toolbar with a dark background.
isToolOrGroup && element.hasFlag( 'primary' )
) {
// … use white icon / indicator, regardless of other flags
variants.invert = true;
} else if ( !isFramed && element.isDisabled() && !element.hasFlag( 'invert' ) ) {
// Frameless disabled button, always use black icon / indicator regardless of
// other flags.
variants.invert = false;
} else if ( !element.isDisabled() ) {
// Any other kind of button, use the right colored icon / indicator if available.
variants.progressive = element.hasFlag( 'progressive' ) ||
// Active tools/toolgroups
( isToolOrGroup && isActive ) ||
// Pressed or selected outline/menu option widgets
(
(
element instanceof OO.ui.MenuOptionWidget ||
// Check if the class exists, as classes that are not in the 'core' module
// may not be loaded.
(
OO.ui.OutlineOptionWidget &&
element instanceof OO.ui.OutlineOptionWidget
)
) &&
( element.isPressed() || element.isSelected() )
);
variants.destructive = element.hasFlag( 'destructive' );
variants.invert = element.hasFlag( 'invert' );
variants.error = element.hasFlag( 'error' );
variants.warning = element.hasFlag( 'warning' );
variants.success = element.hasFlag( 'success' );
}
}
for ( var variant in variants ) {
classes[ variants[ variant ] ? 'on' : 'off' ].push( 'oo-ui-image-' + variant );
}
return classes;
};
/**
* @inheritdoc
*/
OO.ui.WikimediaUITheme.prototype.getDialogTransitionDuration = function () {
return 250;
};
/* Instantiation */
OO.ui.theme = new OO.ui.WikimediaUITheme();
}( OO ) );
//# sourceMappingURL=oojs-ui-wikimediaui.js.map.json