Jforrester has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/345395 )
Change subject: Update OOjs UI to v0.20.1 ...................................................................... Update OOjs UI to v0.20.1 Release notes: https://phabricator.wikimedia.org/diffusion/GOJU/browse/master/History.md;v0.20.1 Change-Id: I9b50eee459085eaa00819cbabe340ac442a332bd --- M composer.json M composer.lock M composer/autoload_classmap.php M composer/autoload_static.php M composer/installed.json M oojs/oojs-ui/History.md M oojs/oojs-ui/demos/demo.js M oojs/oojs-ui/demos/demos.php M oojs/oojs-ui/demos/index.html M oojs/oojs-ui/demos/pages/icons.js M oojs/oojs-ui/i18n/bqi.json M oojs/oojs-ui/package.json A oojs/oojs-ui/php/themes/BlankTheme.php 13 files changed, 218 insertions(+), 150 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/vendor refs/changes/95/345395/1 diff --git a/composer.json b/composer.json index 1fc7649..9a8de97 100644 --- a/composer.json +++ b/composer.json @@ -44,7 +44,7 @@ "mediawiki/at-ease": "1.1.0", "monolog/monolog": "1.18.2", "nmred/kafka-php": "0.1.5", - "oojs/oojs-ui": "0.20.0", + "oojs/oojs-ui": "0.20.1", "oyejorge/less.php": "1.7.0.13", "pear/console_getopt": "1.4.1", "pear/mail": "1.3.0", diff --git a/composer.lock b/composer.lock index 58db054..a24e7c7 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "content-hash": "ada7279bb9f1c2607b1a659dee95bc5f", + "content-hash": "f02d563e660b902386d8edbac1edb437", "packages": [ { "name": "composer/semver", @@ -465,16 +465,16 @@ }, { "name": "oojs/oojs-ui", - "version": "v0.20.0", + "version": "v0.20.1", "source": { "type": "git", "url": "https://github.com/wikimedia/oojs-ui.git", - "reference": "4f9b97498a9f67f8cca372d0b84f35988e37d445" + "reference": "f3bee4db8ac98b3be5e04cc71557a7bc2d2828f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wikimedia/oojs-ui/zipball/4f9b97498a9f67f8cca372d0b84f35988e37d445", - "reference": "4f9b97498a9f67f8cca372d0b84f35988e37d445", + "url": "https://api.github.com/repos/wikimedia/oojs-ui/zipball/f3bee4db8ac98b3be5e04cc71557a7bc2d2828f8", + "reference": "f3bee4db8ac98b3be5e04cc71557a7bc2d2828f8", "shasum": "" }, "require": { @@ -540,7 +540,7 @@ ], "description": "Provides library of common widgets, layouts, and windows.", "homepage": "https://www.mediawiki.org/wiki/OOjs_UI", - "time": "2017-03-15T16:45:48+00:00" + "time": "2017-03-28T21:53:25+00:00" }, { "name": "oyejorge/less.php", diff --git a/composer/autoload_classmap.php b/composer/autoload_classmap.php index 187b92e..522a35d 100644 --- a/composer/autoload_classmap.php +++ b/composer/autoload_classmap.php @@ -508,6 +508,7 @@ 'OOUI\\AccessKeyedElement' => $vendorDir . '/oojs/oojs-ui/php/mixins/AccessKeyedElement.php', 'OOUI\\ActionFieldLayout' => $vendorDir . '/oojs/oojs-ui/php/layouts/ActionFieldLayout.php', 'OOUI\\ApexTheme' => $vendorDir . '/oojs/oojs-ui/php/themes/ApexTheme.php', + 'OOUI\\BlankTheme' => $vendorDir . '/oojs/oojs-ui/php/themes/BlankTheme.php', 'OOUI\\ButtonElement' => $vendorDir . '/oojs/oojs-ui/php/mixins/ButtonElement.php', 'OOUI\\ButtonGroupWidget' => $vendorDir . '/oojs/oojs-ui/php/widgets/ButtonGroupWidget.php', 'OOUI\\ButtonInputWidget' => $vendorDir . '/oojs/oojs-ui/php/widgets/ButtonInputWidget.php', diff --git a/composer/autoload_static.php b/composer/autoload_static.php index 7bce4e3..95518f4 100644 --- a/composer/autoload_static.php +++ b/composer/autoload_static.php @@ -693,6 +693,7 @@ 'OOUI\\AccessKeyedElement' => __DIR__ . '/..' . '/oojs/oojs-ui/php/mixins/AccessKeyedElement.php', 'OOUI\\ActionFieldLayout' => __DIR__ . '/..' . '/oojs/oojs-ui/php/layouts/ActionFieldLayout.php', 'OOUI\\ApexTheme' => __DIR__ . '/..' . '/oojs/oojs-ui/php/themes/ApexTheme.php', + 'OOUI\\BlankTheme' => __DIR__ . '/..' . '/oojs/oojs-ui/php/themes/BlankTheme.php', 'OOUI\\ButtonElement' => __DIR__ . '/..' . '/oojs/oojs-ui/php/mixins/ButtonElement.php', 'OOUI\\ButtonGroupWidget' => __DIR__ . '/..' . '/oojs/oojs-ui/php/widgets/ButtonGroupWidget.php', 'OOUI\\ButtonInputWidget' => __DIR__ . '/..' . '/oojs/oojs-ui/php/widgets/ButtonInputWidget.php', diff --git a/composer/installed.json b/composer/installed.json index 111d479..c3ff0f1 100644 --- a/composer/installed.json +++ b/composer/installed.json @@ -2070,18 +2070,61 @@ ] }, { - "name": "oojs/oojs-ui", - "version": "v0.20.0", - "version_normalized": "0.20.0.0", + "name": "wikimedia/remex-html", + "version": "1.0.1", + "version_normalized": "1.0.1.0", "source": { "type": "git", - "url": "https://github.com/wikimedia/oojs-ui.git", - "reference": "4f9b97498a9f67f8cca372d0b84f35988e37d445" + "url": "https://github.com/wikimedia/mediawiki-libs-RemexHtml.git", + "reference": "3c596e5c66557ed7f37d8a543bc233d7fa80a52f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wikimedia/oojs-ui/zipball/4f9b97498a9f67f8cca372d0b84f35988e37d445", - "reference": "4f9b97498a9f67f8cca372d0b84f35988e37d445", + "url": "https://api.github.com/repos/wikimedia/mediawiki-libs-RemexHtml/zipball/3c596e5c66557ed7f37d8a543bc233d7fa80a52f", + "reference": "3c596e5c66557ed7f37d8a543bc233d7fa80a52f", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "wikimedia/utfnormal": "1.1.0" + }, + "require-dev": { + "mediawiki/mediawiki-codesniffer": "0.7.2", + "phpunit/phpunit": "4.*" + }, + "time": "2017-03-14T05:28:14+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "RemexHtml\\": "RemexHtml/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tim Starling", + "email": "tstarl...@wikimedia.org" + } + ], + "description": "Fast HTML 5 parser" + }, + { + "name": "oojs/oojs-ui", + "version": "v0.20.1", + "version_normalized": "0.20.1.0", + "source": { + "type": "git", + "url": "https://github.com/wikimedia/oojs-ui.git", + "reference": "f3bee4db8ac98b3be5e04cc71557a7bc2d2828f8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/wikimedia/oojs-ui/zipball/f3bee4db8ac98b3be5e04cc71557a7bc2d2828f8", + "reference": "f3bee4db8ac98b3be5e04cc71557a7bc2d2828f8", "shasum": "" }, "require": { @@ -2093,7 +2136,7 @@ "mediawiki/mediawiki-codesniffer": "0.6.0", "phpunit/phpunit": "4.8.21" }, - "time": "2017-03-15T16:45:48+00:00", + "time": "2017-03-28T21:53:25+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -2149,48 +2192,5 @@ ], "description": "Provides library of common widgets, layouts, and windows.", "homepage": "https://www.mediawiki.org/wiki/OOjs_UI" - }, - { - "name": "wikimedia/remex-html", - "version": "1.0.1", - "version_normalized": "1.0.1.0", - "source": { - "type": "git", - "url": "https://github.com/wikimedia/mediawiki-libs-RemexHtml.git", - "reference": "3c596e5c66557ed7f37d8a543bc233d7fa80a52f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/wikimedia/mediawiki-libs-RemexHtml/zipball/3c596e5c66557ed7f37d8a543bc233d7fa80a52f", - "reference": "3c596e5c66557ed7f37d8a543bc233d7fa80a52f", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "wikimedia/utfnormal": "1.1.0" - }, - "require-dev": { - "mediawiki/mediawiki-codesniffer": "0.7.2", - "phpunit/phpunit": "4.*" - }, - "time": "2017-03-14T05:28:14+00:00", - "type": "library", - "installation-source": "dist", - "autoload": { - "psr-4": { - "RemexHtml\\": "RemexHtml/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Tim Starling", - "email": "tstarl...@wikimedia.org" - } - ], - "description": "Fast HTML 5 parser" } ] diff --git a/oojs/oojs-ui/History.md b/oojs/oojs-ui/History.md index 65764e8..6852f93 100644 --- a/oojs/oojs-ui/History.md +++ b/oojs/oojs-ui/History.md @@ -1,4 +1,39 @@ # OOjs UI Release History +## v0.20.1 / 2017-03-28 +### Deprecations +* [DEPRECATING CHANGE] icons: Deprecate and/or move all the core icons (James D. Forrester) +* [DEPRECATING CHANGE] icons: Rename 'wikitrail' to 'mapTrail' (Volker E) +* Follow-up b12205ac: Add deprecation notices to icons moved in v0.16.2 (James D. Forrester) +* Follow-up da8d99af: Add deprecation notice to icon moved in v0.14.0 (James D. Forrester) + +### Features +* DraggableGroupElement: Make draggable conditional (Moriel Schottlender) +* build: Implement `grunt add-theme` task to ease theme creation (Bartosz Dziewoński) + +### Styles +* ButtonElement: Normalize appearance in Firefox (Volker E) +* Blank theme: Fix up the 'blank' theme (Bartosz Dziewoński) +* MediaWiki theme: Position PopupToolGroup indicator similar to other widgets (Volker E) + +### Code +* Element: Add special case for document root in getClosestScrollableContainer (Bartosz Dziewoński) +* FloatableElement: Abort positioning if no longer attached (David Lynch) +* GroupElement: Transform to be an OO.EmitterList mixin (Moriel Schottlender) +* MenuOptionWidget: Remove inherited, duplicated property (Volker E) +* OO.ui.isFocusableElement: Update for jQuery 3 deprecations (Bartosz Dziewoński) +* PopupWidget: Add 'ready' event when the popup is ready (Moriel Schottlender) +* Use Node.DOCUMENT_NODE rather than magic number (Bartosz Dziewoński) +* Follow-up 4bc67351c5: Unbreak FloatableElement positioning (Roan Kattouw) +* Follow-up Iaa7dffc13: *Actually* allow `$returnFocusTo` to be `null` (Ed Sanders) +* themes: Reorder Less rules alphabetically (Volker E) +* MediaWiki theme: Remove obsolete ButtonOptionWidget styles (Volker E) +* MediaWiki theme: Remove unnecessary OptionWiget `border` property (Volker E) +* build: Add a new jenkins script (Prateek Saxena) +* build: Bump grunt-cssjanus to master (Volker E) +* build: Match file order between tests/index and karma (Timo Tijhof) +* build/demos: Generalize demos and build so that it's easier to add new themes (Bartosz Dziewoński) + + ## v0.20.0 / 2017-03-15 ### Breaking changes * [BREAKING CHANGE] Element#scrollIntoView: Drop `complete` config option (James D. Forrester) diff --git a/oojs/oojs-ui/demos/demo.js b/oojs/oojs-ui/demos/demo.js index f861a46..00dda5f 100644 --- a/oojs/oojs-ui/demos/demo.js +++ b/oojs/oojs-ui/demos/demo.js @@ -30,10 +30,15 @@ classes: [ 'demo-pageDropdown' ] } ); this.pageMenu = this.pageDropdown.getMenu(); - this.themeSelect = new OO.ui.ButtonSelectWidget().addItems( [ - new OO.ui.ButtonOptionWidget( { data: 'mediawiki', label: 'MediaWiki' } ), - new OO.ui.ButtonOptionWidget( { data: 'apex', label: 'Apex' } ) - ] ); + this.themeSelect = new OO.ui.ButtonSelectWidget(); + Object.keys( this.constructor.static.themes ).forEach( function ( theme ) { + demo.themeSelect.addItems( [ + new OO.ui.ButtonOptionWidget( { + data: theme, + label: demo.constructor.static.themes[ theme ] + } ) + ] ); + } ); this.directionSelect = new OO.ui.ButtonSelectWidget().addItems( [ new OO.ui.ButtonOptionWidget( { data: 'ltr', label: 'LTR' } ), new OO.ui.ButtonOptionWidget( { data: 'rtl', label: 'RTL' } ) @@ -87,7 +92,7 @@ $( 'html' ).attr( 'dir', this.mode.direction ); $( 'head' ).append( this.stylesheetLinks ); // eslint-disable-next-line new-cap - OO.ui.theme = new ( this.constructor.static.themes[ this.mode.theme ].theme )(); + OO.ui.theme = new OO.ui[ this.constructor.static.themes[ this.mode.theme ] + 'Theme' ](); OO.ui.isMobile = function () { return demo.mode.platform === 'mobile'; }; @@ -113,50 +118,54 @@ /** * Available themes. * - * List of theme descriptions, each containing a `fileSuffix` property used for linking to the - * correct stylesheet file and a `theme` property containing a theme class + * Map of lowercase name to proper name. Lowercase names are used for linking to the + * correct stylesheet file. Proper names are used to find the theme class. * * @static - * @property {Object.<string,Object>} + * @property {Object.<string,string>} */ Demo.static.themes = { - mediawiki: { - fileSuffix: '-mediawiki', - additionalSuffixes: [ - '-icons-movement', - '-icons-content', - '-icons-alerts', - '-icons-interactions', - '-icons-moderation', - '-icons-editing-core', - '-icons-editing-styling', - '-icons-editing-list', - '-icons-editing-advanced', - '-icons-media', - '-icons-location', - '-icons-user', - '-icons-layout', - '-icons-accessibility', - '-icons-wikimedia' - ], - theme: OO.ui.MediaWikiTheme - }, - apex: { - fileSuffix: '-apex', - additionalSuffixes: [ - '-icons-movement', - '-icons-content', - '-icons-alerts', - '-icons-interactions', - '-icons-moderation', - '-icons-editing-core', - '-icons-editing-styling', - '-icons-editing-list', - '-icons-editing-advanced', - '-icons-media' - ], - theme: OO.ui.ApexTheme - } + mediawiki: 'MediaWiki', // Do not change this line or you'll break `grunt add-theme` + apex: 'Apex' +}; + +/** + * Additional suffixes for which each theme defines image modules. + * + * @static + * @property {Object.<string,string[]> + */ +Demo.static.additionalThemeImagesSuffixes = { + mediawiki: [ + '-icons-movement', + '-icons-content', + '-icons-alerts', + '-icons-interactions', + '-icons-moderation', + '-icons-editing-core', + '-icons-editing-styling', + '-icons-editing-list', + '-icons-editing-advanced', + '-icons-media', + '-icons-location', + '-icons-user', + '-icons-layout', + '-icons-accessibility', + '-icons-wikimedia' + ], + apex: [ + '-icons-movement', + '-icons-content', + '-icons-alerts', + '-icons-interactions', + '-icons-moderation', + '-icons-editing-core', + '-icons-editing-styling', + '-icons-editing-list', + '-icons-editing-advanced', + '-icons-media', + '-icons-layout' + ] }; /** @@ -282,7 +291,7 @@ factors[ 0 ][ key ] = key; } for ( key in this.constructor.static.themes ) { - factors[ 1 ][ key ] = this.constructor.static.themes[ key ].fileSuffix; + factors[ 1 ][ key ] = '-' + key; } for ( key in this.constructor.static.directions ) { factors[ 2 ][ key ] = this.constructor.static.directions[ key ].fileSuffix; @@ -347,7 +356,7 @@ var i, len, links, fragments, factors = this.getFactors(), theme = this.getCurrentFactorValues()[ 1 ], - suffixes = this.constructor.static.themes[ theme ].additionalSuffixes || [], + suffixes = this.constructor.static.additionalThemeImagesSuffixes[ theme ] || [], urls = []; // Translate modes to filename fragments diff --git a/oojs/oojs-ui/demos/demos.php b/oojs/oojs-ui/demos/demos.php index 1b9dc4c..a727a39 100644 --- a/oojs/oojs-ui/demos/demos.php +++ b/oojs/oojs-ui/demos/demos.php @@ -9,8 +9,13 @@ require_once $autoload; require_once 'classes/ButtonStyleShowcaseWidget.php'; - $theme = ( isset( $_GET['theme'] ) && $_GET['theme'] === 'apex' ) ? 'apex' : 'mediawiki'; - $themeClass = 'OOUI\\' . ( $theme === 'apex' ? 'Apex' : 'MediaWiki' ) . 'Theme'; + $themes = [ + 'mediawiki' => 'MediaWiki', // Do not change this line or you'll break `grunt add-theme` + 'apex' => 'Apex', + ]; + $theme = ( isset( $_GET['theme'] ) && isset( $themes[ $_GET['theme'] ] ) ) + ? $_GET['theme'] : 'mediawiki'; + $themeClass = 'OOUI\\' . $themes[ $theme ] . 'Theme'; OOUI\Theme::setSingleton( new $themeClass() ); $direction = ( isset( $_GET['direction'] ) && $_GET['direction'] === 'rtl' ) ? 'rtl' : 'ltr'; @@ -18,8 +23,9 @@ OOUI\Element::setDefaultDir( $direction ); // We will require_once a file by this name later, so this validation is important - $ok = [ 'widgets' ]; - $page = ( isset( $_GET['page'] ) && in_array( $_GET['page'], $ok ) ) ? $_GET['page'] : 'widgets'; + $pages = [ 'widgets' ]; + $page = ( isset( $_GET['page'] ) && in_array( $_GET['page'], $pages ) ) + ? $_GET['page'] : 'widgets'; $query = [ 'theme' => $theme, @@ -50,18 +56,13 @@ <?php echo new OOUI\ButtonGroupWidget( [ 'infusable' => true, - 'items' => [ - new OOUI\ButtonWidget( [ - 'label' => 'MediaWiki', - 'href' => '?' . http_build_query( array_merge( $query, [ 'theme' => 'mediawiki' ] ) ), - 'active' => $query['theme'] === 'mediawiki', - ] ), - new OOUI\ButtonWidget( [ - 'label' => 'Apex', - 'href' => '?' . http_build_query( array_merge( $query, [ 'theme' => 'apex' ] ) ), - 'active' => $query['theme'] === 'apex', - ] ), - ] + 'items' => array_map( function ( $theme, $themeLabel ) use ( $query ) { + return new OOUI\ButtonWidget( [ + 'label' => $themeLabel, + 'href' => '?' . http_build_query( array_merge( $query, [ 'theme' => $theme ] ) ), + 'active' => $query['theme'] === $theme, + ] ); + }, array_keys( $themes ), array_values( $themes ) ), ] ); echo new OOUI\ButtonGroupWidget( [ 'infusable' => true, diff --git a/oojs/oojs-ui/demos/index.html b/oojs/oojs-ui/demos/index.html index b784d00..b0e9929 100644 --- a/oojs/oojs-ui/demos/index.html +++ b/oojs/oojs-ui/demos/index.html @@ -14,8 +14,8 @@ <script src="node_modules/es5-shim/es5-shim.js"></script> <script src="node_modules/oojs/dist/oojs.jquery.js"></script> <script src="dist/oojs-ui.js"></script> + <script src="dist/oojs-ui-mediawiki.js"></script> <!-- Do not change this line or you'll break `grunt add-theme` --> <script src="dist/oojs-ui-apex.js"></script> - <script src="dist/oojs-ui-mediawiki.js"></script> <script src="demo.js"></script> <script src="classes/ButtonStyleShowcaseWidget.js"></script> <script src="classes/CapsuleNumberPopupMultiselectWidget.js"></script> diff --git a/oojs/oojs-ui/demos/pages/icons.js b/oojs/oojs-ui/demos/pages/icons.js index 4debb0a..5d50de3 100644 --- a/oojs/oojs-ui/demos/pages/icons.js +++ b/oojs/oojs-ui/demos/pages/icons.js @@ -1,34 +1,15 @@ Demo.static.pages.icons = function ( demo ) { var i, len, iconSet, iconsFieldset, iconWidget, selector, icons = { - core: [ - 'advanced', - 'alert', - 'cancel', - 'check', - 'circle', - 'close', - 'collapse', - 'comment', - 'ellipsis', - 'expand', - 'help', - 'history', - 'info', - 'menu', - 'next', - 'notice', - 'previous', - 'search', - 'settings', - 'tag', - 'window' - ], movement: [ 'arrowLast', 'arrowNext', 'downTriangle', 'upTriangle', + 'previous', + 'next', + 'expand', + 'collapse', 'caretLast', 'caretNext', 'caretDown', @@ -43,19 +24,26 @@ 'articleRedirect', 'citeArticle', 'book', + 'history', + 'info', 'journal', 'newspaper', 'folderPlaceholder', 'die', 'download', - 'upload' + 'tag', + 'upload', + 'window' ], alerts: [ + 'alert', 'bell', 'bellOn', + 'comment', 'eye', 'eyeClosed', 'message', + 'notice', 'signature', 'speechBubble', 'speechBubbleAdd', @@ -64,18 +52,26 @@ ], interactions: [ 'add', + 'advanced', 'bookmark', 'browser', + 'cancel', + 'check', 'clear', 'clock', + 'close', + 'ellipsis', 'feedback', 'funnel', 'heart', + 'help', 'key', 'keyboard', 'logOut', 'newWindow', 'printer', + 'search', + 'settings', 'subtract', 'sun', 'watchlist' @@ -168,7 +164,7 @@ 'map', 'mapPin', 'mapPinAdd', - 'wikitrail' + 'mapTrail' ], user: [ 'userActive', @@ -177,6 +173,7 @@ 'userTalk' ], layout: [ + 'menu', 'stripeFlow', 'stripeSideMenu', 'stripeSummary', diff --git a/oojs/oojs-ui/i18n/bqi.json b/oojs/oojs-ui/i18n/bqi.json index a84374a..a0e53b3 100644 --- a/oojs/oojs-ui/i18n/bqi.json +++ b/oojs/oojs-ui/i18n/bqi.json @@ -4,14 +4,19 @@ "Mogoeilor" ] }, + "ooui-outline-control-move-down": "ڤا دڤۈن بوردن آیتم", + "ooui-outline-control-move-up": "ڤارو بردن آیتم", + "ooui-outline-control-remove": "ڤورداشتن آیتم", "ooui-toolbar-more": "بیشتر", "ooui-toolgroup-expand": "بیشتر", "ooui-toolgroup-collapse": "کمتر", "ooui-dialog-message-accept": "خۈڤإ", "ooui-dialog-message-reject": "أنجومشيڤ کردن", + "ooui-dialog-process-error": "یأ چي ايچو إشتوا إ", "ooui-dialog-process-retry": "ز نۉ تلاش کونين", "ooui-dialog-process-continue": "ديندا گرهڌن", "ooui-selectfile-button-select": "گولإڤورچين کردن جانیا", + "ooui-selectfile-not-supported": "گول ڤورچی کردن جانیا کونشتکاری نڤابیڌ", "ooui-selectfile-placeholder": "هيژ جانيایي گولإ ڤورچين نڤابيڌإ", "ooui-selectfile-dragdrop-placeholder": "جانيانأ ڤأنين ايچو" } diff --git a/oojs/oojs-ui/package.json b/oojs/oojs-ui/package.json index 1e34391..de07ec4 100644 --- a/oojs/oojs-ui/package.json +++ b/oojs/oojs-ui/package.json @@ -1,6 +1,6 @@ { "name": "oojs-ui", - "version": "0.20.0", + "version": "0.20.1", "description": "User interface classes built on the OOjs framework.", "keywords": [ "oojs-plugin", @@ -18,7 +18,8 @@ "doc": "jsduck", "postdoc": "grunt copy:jsduck", "publish-build": "grunt publish-build", - "demos": "grunt publish-build && grunt demos" + "demos": "grunt publish-build && grunt demos", + "jenkins": "npm test && jsduck && npm run postdoc" }, "dependencies": { "es5-shim": "4.5.8", @@ -37,7 +38,7 @@ "grunt-contrib-uglify": "2.2.0", "grunt-contrib-watch": "1.0.0", "grunt-csscomb": "git://github.com/jdforrester/grunt-csscomb.git#v3.1.0-wmf.1", - "grunt-cssjanus": "0.3.2", + "grunt-cssjanus": "0.4.0", "grunt-eslint": "19.0.0", "grunt-exec": "1.0.1", "grunt-file-exists": "0.1.4", @@ -45,6 +46,7 @@ "grunt-jsonlint": "1.1.0", "grunt-karma": "2.0.0", "grunt-promise-q": "git://github.com/jdforrester/grunt-promise-q.git#v0.1.1-wmf.1", + "grunt-string-replace": "1.3.1", "grunt-stylelint": "0.7.0", "grunt-svg2png": "git://github.com/jdforrester/grunt-svg2png.git#v0.2.7-wmf.1", "grunt-tyops": "0.1.0", diff --git a/oojs/oojs-ui/php/themes/BlankTheme.php b/oojs/oojs-ui/php/themes/BlankTheme.php new file mode 100644 index 0000000..fa27c47 --- /dev/null +++ b/oojs/oojs-ui/php/themes/BlankTheme.php @@ -0,0 +1,17 @@ +<?php + +namespace OOUI; + +class BlankTheme extends Theme { + + /* Methods */ + + public function getElementClasses( Element $element ) { + // Parent method + $classes = parent::getElementClasses( $element ); + + // Add classes to $classes['on'] or $classes['off'] + + return $classes; + } +} -- To view, visit https://gerrit.wikimedia.org/r/345395 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I9b50eee459085eaa00819cbabe340ac442a332bd Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/vendor Gerrit-Branch: master Gerrit-Owner: Jforrester <jforres...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits