summaryrefslogtreecommitdiff
path: root/www/wiki/resources/lib/oojs-ui/oojs-ui-wikimediaui.js
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/resources/lib/oojs-ui/oojs-ui-wikimediaui.js')
-rw-r--r--www/wiki/resources/lib/oojs-ui/oojs-ui-wikimediaui.js106
1 files changed, 106 insertions, 0 deletions
diff --git a/www/wiki/resources/lib/oojs-ui/oojs-ui-wikimediaui.js b/www/wiki/resources/lib/oojs-ui/oojs-ui-wikimediaui.js
new file mode 100644
index 00000000..a3fc1152
--- /dev/null
+++ b/www/wiki/resources/lib/oojs-ui/oojs-ui-wikimediaui.js
@@ -0,0 +1,106 @@
+/*!
+ * OOUI v0.26.4
+ * https://www.mediawiki.org/wiki/OOUI
+ *
+ * Copyright 2011–2018 OOUI Team and other contributors.
+ * Released under the MIT license
+ * http://oojs.mit-license.org
+ *
+ * Date: 2018-04-17T22:23:58Z
+ */
+( function ( OO ) {
+
+'use strict';
+
+/**
+ * @class
+ * @extends OO.ui.Theme
+ *
+ * @constructor
+ */
+OO.ui.WikimediaUITheme = function OoUiWikimediaUITheme() {
+ // Parent constructor
+ OO.ui.WikimediaUITheme.parent.call( this );
+};
+
+/* Setup */
+
+OO.inheritClass( OO.ui.WikimediaUITheme, OO.ui.Theme );
+
+/* Methods */
+
+/**
+ * @inheritdoc
+ */
+OO.ui.WikimediaUITheme.prototype.getElementClasses = function ( element ) {
+ // Parent method
+ var variant, isFramed, isActive, isToolOrGroup,
+ variants = {
+ warning: false,
+ invert: false,
+ progressive: false,
+ destructive: false
+ },
+ // Parent method
+ classes = OO.ui.WikimediaUITheme.parent.prototype.getElementClasses.call( this, element );
+
+ if (
+ element instanceof OO.ui.IconWidget &&
+ element.$element.hasClass( 'oo-ui-checkboxInputWidget-checkIcon' )
+ ) {
+ // Icon on CheckboxInputWidget
+ variants.invert = true;
+ } else if ( element.supports( [ 'hasFlag' ] ) ) {
+ isFramed = element.supports( [ 'isFramed' ] ) && element.isFramed();
+ isActive = element.supports( [ 'isActive' ] ) && element.isActive();
+ isToolOrGroup =
+ ( 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() ) {
+ // 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 option widgets
+ (
+ OO.ui.OutlineOptionWidget && element instanceof OO.ui.OutlineOptionWidget &&
+ ( element.isPressed() || element.isSelected() )
+ );
+
+ variants.destructive = element.hasFlag( 'destructive' );
+ variants.warning = element.hasFlag( 'warning' );
+ }
+ }
+
+ for ( 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 \ No newline at end of file