Merge remote-tracking branch 'mediawiki/REL1_34' into feature/golem
20
Gruntfile.js
|
@ -1,30 +1,20 @@
|
|||
/* eslint-env node */
|
||||
/* eslint-env node, es6 */
|
||||
module.exports = function ( grunt ) {
|
||||
var conf = grunt.file.readJSON( 'skin.json' );
|
||||
grunt.loadNpmTasks( 'grunt-banana-checker' );
|
||||
grunt.loadNpmTasks( 'grunt-eslint' );
|
||||
grunt.loadNpmTasks( 'grunt-jsonlint' );
|
||||
grunt.loadNpmTasks( 'grunt-stylelint' );
|
||||
|
||||
grunt.initConfig( {
|
||||
eslint: {
|
||||
options: {
|
||||
reportUnusedDisableDirectives: true,
|
||||
extensions: [ '.js', '.json' ],
|
||||
cache: true
|
||||
},
|
||||
all: [
|
||||
'*.js',
|
||||
'**/*.js',
|
||||
'!node_modules/**',
|
||||
'!vendor/**'
|
||||
]
|
||||
},
|
||||
jsonlint: {
|
||||
all: [
|
||||
'*.json',
|
||||
'**/*.json',
|
||||
'!node_modules/**',
|
||||
'!vendor/**'
|
||||
'**/*.js{,on}',
|
||||
'!{vendor,node_modules}/**'
|
||||
]
|
||||
},
|
||||
banana: conf.MessagesDirs,
|
||||
|
@ -42,6 +32,6 @@ module.exports = function ( grunt ) {
|
|||
}
|
||||
} );
|
||||
|
||||
grunt.registerTask( 'test', [ 'eslint', 'jsonlint', 'banana', 'stylelint' ] );
|
||||
grunt.registerTask( 'test', [ 'eslint', 'banana', 'stylelint' ] );
|
||||
grunt.registerTask( 'default', 'test' );
|
||||
};
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
* @class jQuery.plugin.collapsibleTabs
|
||||
*/
|
||||
( function () {
|
||||
var isRTL = document.documentElement.dir === 'rtl',
|
||||
boundEvent = false,
|
||||
var boundEvent,
|
||||
isRTL = document.documentElement.dir === 'rtl',
|
||||
rAF = window.requestAnimationFrame || setTimeout;
|
||||
|
||||
/**
|
||||
|
@ -50,7 +50,7 @@
|
|||
// if we haven't already bound our resize handler, bind it now
|
||||
if ( !boundEvent ) {
|
||||
boundEvent = true;
|
||||
$( window ).on( 'resize', $.debounce( 100, function () {
|
||||
$( window ).on( 'resize', mw.util.debounce( 10, function () {
|
||||
rAF( $.collapsibleTabs.handleResize );
|
||||
} ) );
|
||||
}
|
||||
|
@ -96,7 +96,9 @@
|
|||
},
|
||||
handleResize: function () {
|
||||
$.collapsibleTabs.instances.forEach( function ( $el ) {
|
||||
var data = $.collapsibleTabs.getSettings( $el );
|
||||
var $tab,
|
||||
data = $.collapsibleTabs.getSettings( $el );
|
||||
|
||||
if ( data.shifting ) {
|
||||
return;
|
||||
}
|
||||
|
@ -105,24 +107,21 @@
|
|||
if ( $el.children( data.collapsible ).length && data.collapseCondition() ) {
|
||||
$el.trigger( 'beforeTabCollapse' );
|
||||
// move the element to the dropdown menu
|
||||
$.collapsibleTabs.moveToCollapsed( $el.children( data.collapsible + ':last' ) );
|
||||
$.collapsibleTabs.moveToCollapsed( $el.children( data.collapsible ).last() );
|
||||
}
|
||||
|
||||
$tab = $( data.collapsedContainer ).children( data.collapsible ).first();
|
||||
// if there are still moveable items in the dropdown menu,
|
||||
// and there is sufficient space to place them in the tab container
|
||||
if (
|
||||
$( data.collapsedContainer + ' ' + data.collapsible ).length &&
|
||||
data.expandCondition(
|
||||
$.collapsibleTabs.getSettings(
|
||||
$( data.collapsedContainer ).children(
|
||||
data.collapsible + ':first' )
|
||||
).expandedWidth
|
||||
$.collapsibleTabs.getSettings( $tab ).expandedWidth
|
||||
)
|
||||
) {
|
||||
// move the element from the dropdown to the tab
|
||||
$el.trigger( 'beforeTabExpand' );
|
||||
$.collapsibleTabs
|
||||
.moveToExpanded( data.collapsedContainer + ' ' + data.collapsible + ':first' );
|
||||
$.collapsibleTabs.moveToExpanded( $tab );
|
||||
}
|
||||
} );
|
||||
},
|
||||
|
@ -156,9 +155,8 @@
|
|||
rAF( $.collapsibleTabs.handleResize );
|
||||
} );
|
||||
},
|
||||
moveToExpanded: function ( ele ) {
|
||||
var data, expContainerSettings, $target, expandedWidth,
|
||||
$moving = $( ele );
|
||||
moveToExpanded: function ( $moving ) {
|
||||
var data, expContainerSettings, $target, expandedWidth;
|
||||
|
||||
data = $.collapsibleTabs.getSettings( $moving );
|
||||
if ( !data ) {
|
||||
|
@ -171,7 +169,7 @@
|
|||
expContainerSettings.shifting = true;
|
||||
|
||||
// grab the next appearing placeholder so we can use it for replacing
|
||||
$target = $( data.expandedContainer ).find( 'span.placeholder:first' );
|
||||
$target = $( data.expandedContainer ).find( 'span.placeholder' ).first();
|
||||
expandedWidth = data.expandedWidth;
|
||||
$moving.css( 'position', 'relative' ).css( ( isRTL ? 'right' : 'left' ), 0 ).css( 'width', '1px' );
|
||||
$target.replaceWith(
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
/* Framework */
|
||||
html {
|
||||
font-size: @html-font-size;
|
||||
font-size: @font-size-root;
|
||||
}
|
||||
|
||||
html,
|
||||
|
@ -15,44 +15,50 @@ body {
|
|||
height: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-family: @content-font-family;
|
||||
font-family: @font-family-sans;
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: @menu-background-color;
|
||||
background-color: @background-color-secondary;
|
||||
}
|
||||
|
||||
/* Content */
|
||||
.mw-body,
|
||||
.parsoid-body {
|
||||
padding: @content-padding;
|
||||
background-color: @body-background-color;
|
||||
color: @content-font-color;
|
||||
background-color: @background-color-base;
|
||||
color: @color-base;
|
||||
padding: @padding-content;
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
.mw-body {
|
||||
.mw-body,
|
||||
#mw-data-after-content {
|
||||
margin-left: 10em;
|
||||
}
|
||||
|
||||
.mw-body {
|
||||
/* Border on top, left, and bottom side */
|
||||
border: 1px solid @content-border-color;
|
||||
border: @border-width-base @border-style-base @border-color-content;
|
||||
border-right-width: 0;
|
||||
/* Merge the border with tabs' one (in their background image) */
|
||||
margin-top: -@border-width-base;
|
||||
|
||||
// h1's can exist outside of mw-body-content so some heading styles
|
||||
// need to be defined in mw-body as well
|
||||
& h1,
|
||||
&-content h1,
|
||||
&-content h2 {
|
||||
font-family: @content-heading-font-family;
|
||||
line-height: @heading-line-height;
|
||||
margin-bottom: 0.25em;
|
||||
padding: 0;
|
||||
font-family: @font-family-serif;
|
||||
line-height: @line-height-heading;
|
||||
|
||||
/* Fallback heading font for scripts which render poorly in @content-heading-font-family. */
|
||||
/* See T73240 */
|
||||
// Fallback heading font for scripts which render poorly in `@font-family-serif`.
|
||||
// See T73240
|
||||
&:lang( ja ), /* See T65817 */
|
||||
&:lang( he ), /* See T65843 and T65844 */
|
||||
&:lang( ko ) { /* See T65827 */
|
||||
font-family: @content-heading-font-family-generic;
|
||||
font-family: @font-family-sans--fallback;
|
||||
}
|
||||
|
||||
/* Burmese (Myanmar) language headlines would be cropped with set `line-height` */
|
||||
|
@ -64,7 +70,7 @@ body {
|
|||
|
||||
& h1,
|
||||
&-content h1 {
|
||||
font-size: @content-heading-font-size;
|
||||
font-size: @font-size-heading-1;
|
||||
}
|
||||
|
||||
.firstHeading {
|
||||
|
@ -74,8 +80,8 @@ body {
|
|||
|
||||
.mw-indicators {
|
||||
float: right;
|
||||
line-height: @content-line-height;
|
||||
font-size: @content-font-size;
|
||||
font-size: @font-size-base;
|
||||
line-height: @line-height-base;
|
||||
/* Ensure that this is displayed on top of .mw-body-content and clickable */
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
|
@ -91,12 +97,11 @@ body {
|
|||
|
||||
.mw-body-content {
|
||||
position: relative;
|
||||
line-height: @content-line-height;
|
||||
font-size: @content-font-size;
|
||||
font-size: @font-size-base;
|
||||
line-height: @line-height-base;
|
||||
z-index: 0;
|
||||
|
||||
p {
|
||||
line-height: inherit;
|
||||
margin: 0.5em 0;
|
||||
}
|
||||
|
||||
|
@ -105,22 +110,22 @@ body {
|
|||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.5em;
|
||||
margin-top: 1em;
|
||||
font-size: @font-size-heading-2;
|
||||
}
|
||||
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
line-height: @content-line-height;
|
||||
margin-top: 0.3em;
|
||||
margin-bottom: 0;
|
||||
padding-bottom: 0;
|
||||
line-height: @line-height-base;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.2em;
|
||||
font-size: @font-size-heading-3;
|
||||
}
|
||||
|
||||
h3,
|
||||
|
@ -131,19 +136,19 @@ body {
|
|||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-size: 100%; /* (reset) */
|
||||
font-size: @font-size-reset; // Reset.
|
||||
}
|
||||
|
||||
.toc h2 {
|
||||
font-size: 100%; /* (reset) */
|
||||
font-family: @content-font-family;
|
||||
font-family: @font-family-sans;
|
||||
font-size: @font-size-reset; // Reset.
|
||||
}
|
||||
}
|
||||
|
||||
/* Allow edit sections outside of mw-body-content (T160269) */
|
||||
.mw-editsection,
|
||||
.mw-editsection-like {
|
||||
font-family: @content-font-family;
|
||||
font-family: @font-family-sans;
|
||||
}
|
||||
|
||||
/* Hide empty portlets */
|
||||
|
@ -152,15 +157,16 @@ div.emptyPortlet {
|
|||
}
|
||||
|
||||
ul {
|
||||
// No need for PNG fallback. Fallback is browser default (a smaller, also black, circle).
|
||||
.list-style-image( 'images/bullet-icon.svg' );
|
||||
}
|
||||
|
||||
pre,
|
||||
.mw-code {
|
||||
line-height: 1.3em;
|
||||
line-height: @line-height-code;
|
||||
}
|
||||
|
||||
/* Site Notice (includes notices from CentralNotice extension) */
|
||||
#siteNotice {
|
||||
font-size: 0.8em;
|
||||
font-size: @font-size-site-notice;
|
||||
}
|
||||
|
|
|
@ -9,43 +9,37 @@
|
|||
list-style: none none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
|
||||
li {
|
||||
color: #222;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
padding-top: 0.5em;
|
||||
padding-bottom: 0.5em;
|
||||
font-size: 0.7em;
|
||||
}
|
||||
}
|
||||
|
||||
#footer-icons {
|
||||
float: right;
|
||||
|
||||
li {
|
||||
float: left;
|
||||
margin-left: 0.5em;
|
||||
line-height: 2em;
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
|
||||
#footer-info {
|
||||
li {
|
||||
line-height: 1.4em;
|
||||
}
|
||||
}
|
||||
|
||||
#footer-places {
|
||||
li {
|
||||
float: left;
|
||||
margin-right: 1em;
|
||||
line-height: 2em;
|
||||
}
|
||||
|
||||
#footer-places-disclaimer {
|
||||
display: none;
|
||||
}
|
||||
li {
|
||||
color: @color-base;
|
||||
margin: 0;
|
||||
padding: 0.5em 0;
|
||||
font-size: @font-size-footer;
|
||||
}
|
||||
}
|
||||
|
||||
#footer-icons {
|
||||
float: right;
|
||||
|
||||
li {
|
||||
float: left;
|
||||
margin-left: 0.5em;
|
||||
line-height: @line-height-footer-buttons;
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
|
||||
#footer-info {
|
||||
li {
|
||||
line-height: @line-height-footer-info;
|
||||
}
|
||||
}
|
||||
|
||||
#footer-places {
|
||||
li {
|
||||
float: left;
|
||||
margin-right: 1em;
|
||||
line-height: @line-height-footer-buttons;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
@import 'mediawiki.mixins';
|
||||
@import 'personalMenu';
|
||||
@import 'personalNavigation';
|
||||
@import 'search';
|
||||
@import 'tabs';
|
||||
|
||||
|
@ -17,11 +17,7 @@
|
|||
#mw-page-base {
|
||||
height: 5em;
|
||||
background-position: bottom left;
|
||||
background-repeat: repeat-x;
|
||||
/* This image is only a fallback (for IE 6-9), so we do not @embed it. */
|
||||
background-image: url( images/page-fade.png );
|
||||
.vertical-gradient( @body-background-color, @menu-background-color, 50%, 100% );
|
||||
background-color: @body-background-color;
|
||||
.vertical-gradient( @background-color-base, @background-color-secondary, 50%, 100% );
|
||||
}
|
||||
|
||||
#mw-head-base {
|
||||
|
@ -61,53 +57,53 @@
|
|||
|
||||
/* Panel */
|
||||
#mw-panel {
|
||||
font-size: @menu-main-font-size;
|
||||
position: absolute;
|
||||
top: 60px;
|
||||
width: 10em;
|
||||
left: 0;
|
||||
font-size: @font-size-nav-main;
|
||||
|
||||
.portal {
|
||||
margin: 0 0.6em 0 0.7em;
|
||||
padding: 0.25em 0;
|
||||
direction: ltr;
|
||||
background-position: top left;
|
||||
background-repeat: no-repeat;
|
||||
|
||||
h3 {
|
||||
font-size: @menu-main-heading-font-size;
|
||||
color: @menu-main-heading-color;
|
||||
color: @color-nav-subtle;
|
||||
font-weight: normal;
|
||||
margin: 0.5em 0 0 (@menu-main-body-margin-left/@menu-main-heading-font-size);
|
||||
margin: 0.5em 0 0 ( @margin-left-nav-main-body / @font-size-nav-main-heading );
|
||||
padding: 0.25em 0;
|
||||
cursor: default;
|
||||
border: 0;
|
||||
font-size: @font-size-nav-main-heading;
|
||||
}
|
||||
|
||||
.body {
|
||||
margin-left: @menu-main-body-margin-left;
|
||||
margin-left: @margin-left-nav-main-body;
|
||||
padding-top: 0;
|
||||
.background-image( 'images/portal-break.png' );
|
||||
background-image: url( images/portal-separator.png ); // Support: IE 8 & 9, Fx 3.6-15, Safari 5.1-6, Chrome 10-25
|
||||
background-image: linear-gradient( to right, transparent 0, #c8ccd1 35%, #c8ccd1 70%, transparent 100% ); // Standard (Firefox 16+, IE 10+, Safari 6.1+, Chrome 26+)
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% @border-width-base;
|
||||
|
||||
ul {
|
||||
list-style: none none;
|
||||
margin: 0;
|
||||
padding: @menu-main-body-padding;
|
||||
padding-top: 0.3em;
|
||||
}
|
||||
|
||||
li {
|
||||
line-height: 1.125em;
|
||||
margin: 0;
|
||||
padding: 0.25em 0;
|
||||
font-size: @menu-main-body-font-size;
|
||||
font-size: @font-size-nav-main-body;
|
||||
line-height: @line-height-nav;
|
||||
word-wrap: break-word;
|
||||
|
||||
a {
|
||||
color: @menu-main-body-link-color;
|
||||
color: @color-link;
|
||||
|
||||
&:visited {
|
||||
color: @menu-main-body-link-visited-color;
|
||||
color: @color-link--visited;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -125,7 +121,7 @@
|
|||
|
||||
.body {
|
||||
background-image: none;
|
||||
margin-left: @menu-main-body-margin-left;
|
||||
margin-left: @margin-left-nav-main-body;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
// `padding-top` instead of `margin-top` necessary for
|
||||
// anonymous user icon position below
|
||||
padding-top: 0.5em;
|
||||
font-size: @font-size-menu-personal;
|
||||
line-height: @line-height-menu-personal;
|
||||
font-size: @font-size-nav-personal;
|
||||
line-height: @line-height-nav-personal;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
|
@ -22,9 +22,9 @@
|
|||
// SVG support using a transparent gradient to guarantee cross-browser
|
||||
// compatibility (browsers able to understand gradient syntax support also SVG)
|
||||
.background-image-svg( 'images/user-avatar.svg', 'images/user-avatar.png' );
|
||||
background-position: @background-position-menu-personal-icon;
|
||||
background-position: @background-position-nav-personal-icon;
|
||||
background-repeat: no-repeat;
|
||||
background-size: @line-height-menu-personal @line-height-menu-personal;
|
||||
background-size: @background-size-nav-personal-icon @background-size-nav-personal-icon;
|
||||
// Same as `#p-personal li` above
|
||||
padding-top: 0.5em !important; // stylelint-disable-line declaration-no-important
|
||||
padding-left: 16px !important; // stylelint-disable-line declaration-no-important
|
|
@ -9,98 +9,105 @@
|
|||
.mixin-screen-reader-text;
|
||||
}
|
||||
|
||||
form,
|
||||
input {
|
||||
margin: 0.4em 0 0;
|
||||
form {
|
||||
margin: 0.5em 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
#simpleSearch {
|
||||
background-color: #fff;
|
||||
.background-image( 'images/search-fade.png' );
|
||||
background-position: top left;
|
||||
background-repeat: repeat-x;
|
||||
color: #000;
|
||||
display: block;
|
||||
width: 13.2em;
|
||||
width: 20vw; /* responsive width */
|
||||
min-width: 5em;
|
||||
max-width: 20em;
|
||||
padding-right: 1.4em;
|
||||
height: 1.4em;
|
||||
margin-top: 0.65em;
|
||||
height: 100%;
|
||||
margin-top: 0;
|
||||
position: relative;
|
||||
min-height: 1px; /* Gotta trigger hasLayout for IE7 */
|
||||
border: 1px solid @colorGray10;
|
||||
border-radius: @borderRadius;
|
||||
.transition( border-color 250ms );
|
||||
|
||||
&:hover {
|
||||
// Styles for both the search input and the button.
|
||||
input {
|
||||
// Support IE6-8: Fallback for browsers, which don't support `rgba()`.
|
||||
background-color: @background-color-base;
|
||||
background-color: rgba( 0, 0, 0, 0 );
|
||||
color: @color-base--emphasized;
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
// The search input.
|
||||
|
||||
#searchInput {
|
||||
width: 100%;
|
||||
.box-sizing( border-box );
|
||||
border: @border-width-base @border-style-base @colorGray10;
|
||||
border-radius: @borderRadius;
|
||||
// `padding-right` equals to `#searchbutton` width below.
|
||||
padding: 0.4em @width-search-button 0.4em 0.4em;
|
||||
.box-shadow( @boxShadowWidget );
|
||||
font-size: @font-size-search-input;
|
||||
direction: ltr;
|
||||
.transition( ~'border-color 250ms, box-shadow 250ms' );
|
||||
// Support: Webkit browsers. Undo the proprietary styles applied to `type=search` fields,
|
||||
// we provide our own.
|
||||
-webkit-appearance: textfield;
|
||||
|
||||
#simpleSearch:hover & {
|
||||
border-color: @colorGray7;
|
||||
}
|
||||
|
||||
// Styles for both the search input and the button
|
||||
input {
|
||||
background-color: transparent;
|
||||
color: #000;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
&:focus,
|
||||
#simpleSearch:hover &:focus {
|
||||
outline: 0;
|
||||
border-color: @colorProgressive;
|
||||
.box-shadow( @boxShadowProgressiveFocus );
|
||||
}
|
||||
|
||||
// The search input
|
||||
#searchInput {
|
||||
width: 100%;
|
||||
padding: 0.2em 0 0.2em 0.2em;
|
||||
font-size: 0.8125em; // equals `13px` at browser default of `16px`
|
||||
direction: ltr;
|
||||
.mixin-placeholder( {
|
||||
color: @colorGray7;
|
||||
opacity: 1;
|
||||
} );
|
||||
|
||||
&:focus {
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
/* stylelint-disable indentation */
|
||||
.mixin-placeholder( {
|
||||
color: @colorGray7;
|
||||
opacity: 1;
|
||||
} );
|
||||
/* stylelint-enable indentation */
|
||||
|
||||
// Undo the styles Webkit browsers apply to type=search fields,
|
||||
// we provide our own
|
||||
&::-webkit-search-decoration,
|
||||
&::-webkit-search-cancel-button,
|
||||
&::-webkit-search-results-button,
|
||||
&::-webkit-search-results-decoration {
|
||||
-webkit-appearance: textfield;
|
||||
|
||||
&::-webkit-search-decoration,
|
||||
&::-webkit-search-cancel-button,
|
||||
&::-webkit-search-results-button,
|
||||
&::-webkit-search-results-decoration {
|
||||
-webkit-appearance: textfield;
|
||||
}
|
||||
}
|
||||
|
||||
// The buttons. They are displayed in the same position, and if both are
|
||||
// present the fulltext search one obscures the 'Go' one.
|
||||
#searchButton,
|
||||
#mw-searchButton {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
width: 1.65em;
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
/* Hide button text and replace it with the image. */
|
||||
text-indent: -99999px;
|
||||
/* Opera 12 on RTL flips the text in a funny way without this. */
|
||||
/* @noflip */
|
||||
direction: ltr;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
#searchButton {
|
||||
.background-image-svg( 'images/search-ltr.svg', 'images/search-ltr.png' );
|
||||
background-position: center center;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
#mw-searchButton {
|
||||
z-index: 1;
|
||||
}
|
||||
}
|
||||
|
||||
// The buttons. They are displayed in the same position, and if both are
|
||||
// present the fulltext search one obscures the 'Go' one.
|
||||
#searchButton,
|
||||
#mw-searchButton {
|
||||
position: absolute;
|
||||
top: @border-width-base;
|
||||
bottom: @border-width-base;
|
||||
// `@border-width-base * 2` is in regards to harmonize position start and end.
|
||||
right: @border-width-base;
|
||||
min-width: 24px;
|
||||
width: @width-search-button;
|
||||
border: 0;
|
||||
padding: 0;
|
||||
cursor: pointer;
|
||||
// Equal `font-size` to search input for `padding` calculationo.
|
||||
font-size: @font-size-search-input;
|
||||
/* Opera 12 on RTL flips the text in a funny way without this. */
|
||||
/* @noflip */
|
||||
direction: ltr;
|
||||
/* Hide button text and replace it with the image. */
|
||||
text-indent: -99999px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
#searchButton {
|
||||
.background-image-svg( 'images/search.svg', 'images/search.png' );
|
||||
background-position: center center;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
#mw-searchButton {
|
||||
z-index: 1;
|
||||
}
|
||||
|
|
|
@ -6,12 +6,11 @@
|
|||
|
||||
/* Namespaces and Views */
|
||||
.vectorTabs {
|
||||
display: inline-block;
|
||||
// Tab separator: Outer start border (left in LTR) of tab row.
|
||||
background-position: left bottom;
|
||||
float: left;
|
||||
height: 2.5em;
|
||||
/* .background-image('images/tab-break.png'); */
|
||||
background-position: bottom left;
|
||||
background-repeat: no-repeat;
|
||||
padding-left: 1px;
|
||||
padding-left: @border-width-base;
|
||||
|
||||
/* Navigation Labels */
|
||||
h3 {
|
||||
|
@ -27,47 +26,63 @@
|
|||
}
|
||||
|
||||
li {
|
||||
// Tab fade background: Fade inside from light grey to white.
|
||||
background-image: url( images/tab-normal-fade.png ); // Support: IE 8 & 9, Fx 3.6-15, Safari 5.1-6, Chrome 10-25
|
||||
background-image: linear-gradient( to top, @border-color-content--tabs-inactive 0, #e8f2f8 1px, #fff 100% ); // Support: Standard (Firefox 16+, IE 10+, Safari 6.1+, Chrome 26+)
|
||||
background-position: left bottom;
|
||||
background-repeat: repeat-x;
|
||||
float: left;
|
||||
line-height: 1.125em;
|
||||
display: block;
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
.background-image('images/tab-normal-fade.png');
|
||||
background-position: bottom left;
|
||||
background-repeat: repeat-x;
|
||||
line-height: @line-height-nav;
|
||||
white-space: nowrap;
|
||||
|
||||
&.new {
|
||||
a,
|
||||
a:visited {
|
||||
color: #a55858;
|
||||
}
|
||||
}
|
||||
|
||||
&.selected {
|
||||
a,
|
||||
a:visited {
|
||||
color: #222;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
&.icon {
|
||||
a {
|
||||
background-position: bottom right;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
color: @menu-link-color;
|
||||
color: @color-link;
|
||||
display: block;
|
||||
height: 1.9em;
|
||||
padding-left: 0.615em; // Equals `8px` at computed `font-size` of `13px` below
|
||||
padding-right: 0.615em;
|
||||
cursor: pointer;
|
||||
font-size: 0.8125em; // Equals `13px` at browser default of `16px`
|
||||
font-size: @font-size-tabs;
|
||||
}
|
||||
}
|
||||
|
||||
.new {
|
||||
a,
|
||||
a:visited {
|
||||
color: @color-link-new;
|
||||
}
|
||||
}
|
||||
|
||||
.selected {
|
||||
// Replace tab fade with flat color (matching top of would-be fade).
|
||||
background-image: url( images/tab-current-fade.png );
|
||||
// Overwrite above in browsers that support `rgba()`.
|
||||
background: rgba( 255, 255, 255, 1 ); // stylelint-disable-line declaration-block-no-shorthand-property-overrides
|
||||
|
||||
a,
|
||||
a:visited {
|
||||
color: @color-link-selected;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
.icon {
|
||||
a {
|
||||
background-position: right bottom;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
}
|
||||
|
||||
// Tab separator: Border between tabs and outer right border.
|
||||
span {
|
||||
background-position: right bottom;
|
||||
display: inline-block;
|
||||
height: 100%;
|
||||
|
||||
a {
|
||||
display: block;
|
||||
position: relative;
|
||||
|
@ -83,14 +98,14 @@
|
|||
|
||||
h3 {
|
||||
span {
|
||||
color: @color-nav-subtle;
|
||||
position: relative;
|
||||
display: block;
|
||||
font-size: 0.8125em;
|
||||
padding-left: 0.615em;
|
||||
padding-top: 1.25em;
|
||||
padding-right: 16px;
|
||||
font-size: @font-size-tabs;
|
||||
font-weight: normal;
|
||||
color: #444;
|
||||
|
||||
&:after {
|
||||
content: '';
|
||||
|
@ -109,7 +124,7 @@
|
|||
|
||||
&:hover span,
|
||||
&:focus span {
|
||||
color: @content-font-color;
|
||||
color: @color-base;
|
||||
|
||||
&:after {
|
||||
opacity: 1;
|
||||
|
@ -119,15 +134,15 @@
|
|||
|
||||
.menu {
|
||||
list-style: none none;
|
||||
background-color: @body-background-color;
|
||||
background-color: @background-color-base;
|
||||
clear: both;
|
||||
// Match the width of the dropdown "heading" (the tab)
|
||||
min-width: 100%;
|
||||
position: absolute;
|
||||
top: 2.5em;
|
||||
left: -1px;
|
||||
left: -@border-width-base;
|
||||
margin: 0;
|
||||
border: 1px solid #a2a9b1;
|
||||
border: @border-width-base @border-style-base @border-color-base;
|
||||
border-top-width: 0;
|
||||
padding: 0;
|
||||
box-shadow: 0 1px 1px 0 rgba( 0, 0, 0, 0.1 );
|
||||
|
@ -151,14 +166,6 @@
|
|||
visibility: visible;
|
||||
}
|
||||
|
||||
// FIXME: `.vectorMenu ul` can be removed with purged HTML cache
|
||||
ul {
|
||||
list-style: none none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
li {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
|
@ -166,35 +173,48 @@
|
|||
line-height: 1em;
|
||||
|
||||
a {
|
||||
color: @color-link;
|
||||
display: block;
|
||||
padding: 0.625em;
|
||||
white-space: nowrap;
|
||||
color: @menu-link-color;
|
||||
cursor: pointer;
|
||||
font-size: 0.8125em;
|
||||
font-size: @font-size-tabs;
|
||||
}
|
||||
}
|
||||
|
||||
&.selected a,
|
||||
&.selected a:visited {
|
||||
color: #222;
|
||||
text-decoration: none;
|
||||
}
|
||||
.selected a,
|
||||
.selected a:visited {
|
||||
color: @color-link-selected;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
#mw-head .vectorMenu h3 {
|
||||
// Tab separator: Outer end (right in LTR) border of "Actions" menu.
|
||||
background-position: right bottom;
|
||||
float: left;
|
||||
.background-image('images/tab-break.png');
|
||||
background-repeat: no-repeat;
|
||||
background-position: bottom right;
|
||||
font-size: 1em;
|
||||
font-size: @font-size-reset;
|
||||
height: 2.5em;
|
||||
margin: 0 -@border-width-base 0 0;
|
||||
// `padding-right` >= `1px` effectively moves the "background border" outside of the element to
|
||||
// act like a real border. It is necessary for `.vectorMenu .menu` dropdown to align well.
|
||||
// 0.5em equals `8px` at computed `font-size` of `14px` as visually harmonically with
|
||||
// `padding-left` in `.vectorMenu h3 span`
|
||||
padding: 0 0.5em 0 0;
|
||||
margin: 0 -1px 0 0;
|
||||
}
|
||||
|
||||
// Tab Separators
|
||||
// `.vectorTabs`: Outer start border (left in LTR) of tab row.
|
||||
// `.vectorTabs span`: Border between tabs and outer end (right in LTR) border.
|
||||
// `#mw-head .vectorMenu h3`: // Outer end (right in LTR) border of "Actions" menu.
|
||||
.vectorTabs,
|
||||
.vectorTabs span,
|
||||
#mw-head .vectorMenu h3 {
|
||||
background-image: url( images/tab-separator.png );
|
||||
background-image: linear-gradient( to bottom, rgba( 167, 215, 249, 0 ) 0, @border-color-content 100% );
|
||||
background-repeat: no-repeat;
|
||||
// Contain gradient to 1px × 100% size and draw from top to bottom-left or -right corner.
|
||||
background-size: @border-width-base 100%;
|
||||
}
|
||||
|
||||
// Invisible checkbox covering the dropdown menu handle
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
/* Only use icon if the menu item is not collapsed into the "More" dropdown
|
||||
* (in which case it is inside .vectorMenu instead of .vectorTabs). */
|
||||
.vectorTabs {
|
||||
#ca-unwatch.icon a,
|
||||
#ca-watch.icon a {
|
||||
// `#ca-unwatch` & `#ca-watch` both carry `.mw-watchlink` as well.
|
||||
.mw-watchlink.icon a {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: block;
|
||||
|
@ -37,9 +37,10 @@
|
|||
.background-image-svg( 'images/watch-icon-hl.svg', 'images/watch-icon-hl.png' );
|
||||
}
|
||||
|
||||
#ca-unwatch.icon a.loading,
|
||||
#ca-watch.icon a.loading {
|
||||
.background-image-svg( 'images/watch-icon-loading.svg', 'images/watch-icon-loading.png' );
|
||||
// Loading watchstar link class.
|
||||
#ca-unwatch.icon .loading,
|
||||
#ca-watch.icon .loading {
|
||||
background-image: url( images/watch-icon-loading.svg );
|
||||
.rotation( 700ms );
|
||||
/* Suppress the hilarious rotating focus outline on Firefox */
|
||||
outline: 0;
|
||||
|
@ -49,9 +50,4 @@
|
|||
-webkit-transform-origin: 50% 57%;
|
||||
transform-origin: 50% 57%;
|
||||
}
|
||||
|
||||
#ca-unwatch.icon a span,
|
||||
#ca-watch.icon a span {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -32,14 +32,14 @@
|
|||
"dev-master": "1.x-dev"
|
||||
},
|
||||
"installer-name": "Vector",
|
||||
"phan-taint-check-plugin": "1.5.0"
|
||||
"phan-taint-check-plugin": "2.0.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"jakub-onderka/php-parallel-lint": "1.0.0",
|
||||
"mediawiki/mediawiki-codesniffer": "24.0.0",
|
||||
"mediawiki/mediawiki-codesniffer": "26.0.0",
|
||||
"jakub-onderka/php-console-highlighter": "0.3.2",
|
||||
"mediawiki/minus-x": "0.3.1",
|
||||
"mediawiki/mediawiki-phan-config": "0.5.0"
|
||||
"mediawiki/mediawiki-phan-config": "0.6.1"
|
||||
},
|
||||
"scripts": {
|
||||
"fix": [
|
||||
|
|
|
@ -16,6 +16,6 @@
|
|||
"vector-view-edit": "بدّل",
|
||||
"vector-view-history": "ورّي الپاج",
|
||||
"vector-view-view": "أقرا",
|
||||
"vector-view-viewsource": "اعرض المصدر",
|
||||
"vector-view-viewsource": "عرض المصدر",
|
||||
"vector-more-actions": "زادة"
|
||||
}
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
]
|
||||
},
|
||||
"skinname-vector": "فكتور",
|
||||
"vector-skin-desc": "نسة حديثة من مونوبوك بمظهر جديد وسهولة الاستخدام",
|
||||
"vector-skin-desc": "نسخة حديثة من مونوبوك بمظهر جديد وتحسينات لسهولة الاستخدام",
|
||||
"vector.css": "/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمي واجهة فكتور */",
|
||||
"vector.js": "/* أي جافاسكريبت هنا سيتم تحميلها للمستخدمين الذين يستعملون واجهة فكتور */",
|
||||
"vector-action-addsection": "أضف موضوعا",
|
||||
|
@ -27,7 +27,7 @@
|
|||
"vector-view-edit": "عدل",
|
||||
"vector-view-history": "تاريخ",
|
||||
"vector-view-view": "اقرأ",
|
||||
"vector-view-viewsource": "اعرض المصدر",
|
||||
"vector-view-viewsource": "عرض المصدر",
|
||||
"vector-jumptonavigation": "اذهب إلى التنقل",
|
||||
"vector-jumptosearch": "اذهب إلى البحث",
|
||||
"vector-more-actions": "المزيد"
|
||||
|
|
|
@ -4,18 +4,19 @@
|
|||
"Enzoreg",
|
||||
"Zanatos",
|
||||
"Abdeaitali",
|
||||
"Reda Benkhadra"
|
||||
"Reda Benkhadra",
|
||||
"SADIQUI"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Zid topic",
|
||||
"vector-action-addsection": "زيد شي موضوع",
|
||||
"vector-action-delete": "Suprimi",
|
||||
"vector-action-move": "Neqel",
|
||||
"vector-action-protect": "Ḫami",
|
||||
"vector-action-undelete": "rja lhadf",
|
||||
"vector-action-unprotect": "Ḫiyed l-ḫimaya",
|
||||
"vector-view-create": "Ĥṫareĝ",
|
||||
"vector-view-edit": "Ĝedel",
|
||||
"vector-view-history": "Ṫariĥ l-fiċyé",
|
||||
"vector-view-create": "صاوب",
|
||||
"vector-view-edit": "عدل",
|
||||
"vector-view-history": "تاريخ",
|
||||
"vector-view-view": "قرا",
|
||||
"vector-view-viewsource": "Ċof l-masdar",
|
||||
"vector-more-actions": "زيد"
|
||||
|
|
|
@ -2,16 +2,20 @@
|
|||
"@metadata": {
|
||||
"authors": [
|
||||
"Adi Mayndra",
|
||||
"BASAbali"
|
||||
"BASAbali",
|
||||
"Carma citrawati",
|
||||
"Joseagush",
|
||||
"NoiX180"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "imbuhin indik wacana",
|
||||
"vector-action-delete": "ngapus",
|
||||
"vector-action-move": "kisidang",
|
||||
"vector-action-protect": "nyaga",
|
||||
"vector-view-create": "ngawe",
|
||||
"vector-view-edit": "mecikang",
|
||||
"vector-view-history": "indik sane lintang",
|
||||
"vector-view-view": "Waca",
|
||||
"vector-view-viewsource": "cingak witnyane"
|
||||
"vector-action-addsection": "Tambeh topik",
|
||||
"vector-action-delete": "Usap",
|
||||
"vector-action-move": "Gingsirang",
|
||||
"vector-action-protect": "Saib",
|
||||
"vector-view-create": "Kardi",
|
||||
"vector-view-edit": "Uah",
|
||||
"vector-view-history": "Cingak babad",
|
||||
"vector-view-view": "Wacén",
|
||||
"vector-view-viewsource": "Cingak wit",
|
||||
"vector-more-actions": "Lianan"
|
||||
}
|
||||
|
|
|
@ -2,7 +2,8 @@
|
|||
"@metadata": {
|
||||
"authors": [
|
||||
"Mostafadaneshvar",
|
||||
"RigiMahnoor"
|
||||
"RigiMahnoor",
|
||||
"Sultanselim baloch"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "هور کتن عنوان",
|
||||
|
@ -12,9 +13,9 @@
|
|||
"vector-action-undelete": "ترینگ",
|
||||
"vector-action-unprotect": "پروتکشنء ٹگل بدئ",
|
||||
"vector-view-create": "شرکتن",
|
||||
"vector-view-edit": "اصلاح",
|
||||
"vector-view-history": "چارتن تاریح",
|
||||
"vector-view-view": "وانتن",
|
||||
"vector-view-edit": "ٹگلݔنگ",
|
||||
"vector-view-history": "رمسءِ چارگ",
|
||||
"vector-view-view": "وانگ",
|
||||
"vector-view-viewsource": "پیشدارگ بن جاه",
|
||||
"vector-more-actions": "گیشتر"
|
||||
"vector-more-actions": "گݔشتِر"
|
||||
}
|
||||
|
|
|
@ -2,10 +2,11 @@
|
|||
"@metadata": {
|
||||
"authors": [
|
||||
"Filipinayzd",
|
||||
"Geopoet"
|
||||
"Geopoet",
|
||||
"ShimunUfesoj"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Idagdag an topic",
|
||||
"vector-action-addsection": "Magdagdag nin pag-uulayan",
|
||||
"vector-action-delete": "puráon",
|
||||
"vector-action-move": "Ibalyó",
|
||||
"vector-action-protect": "Protektaran",
|
||||
|
@ -14,7 +15,7 @@
|
|||
"vector-view-create": "Magmukna",
|
||||
"vector-view-edit": "Liwatón",
|
||||
"vector-view-history": "Tanawon sa historiya",
|
||||
"vector-view-view": "Basáha",
|
||||
"vector-view-view": "Basáhon",
|
||||
"vector-view-viewsource": "Hilingón an ginikánan",
|
||||
"vector-more-actions": "Kadugangan"
|
||||
}
|
||||
|
|
|
@ -13,7 +13,8 @@
|
|||
"vector-action-unprotect": "Palindungan",
|
||||
"vector-view-create": "Ulah",
|
||||
"vector-view-edit": "Babak",
|
||||
"vector-view-history": "Tiringi halam",
|
||||
"vector-view-history": "Tiringi sajarah",
|
||||
"vector-view-view": "Baca",
|
||||
"vector-view-viewsource": "Tiringi asal mula"
|
||||
"vector-view-viewsource": "Tiringi asal mula",
|
||||
"vector-more-actions": "Lainnya"
|
||||
}
|
||||
|
|
|
@ -19,5 +19,7 @@
|
|||
"vector-view-history": "АгӀона хийцамаш",
|
||||
"vector-view-view": "Éшар",
|
||||
"vector-view-viewsource": "Билглонашка хьажа",
|
||||
"vector-jumptonavigation": "Навигацин тӀегӀо",
|
||||
"vector-jumptosearch": "Лахарна тӀегӀо",
|
||||
"vector-more-actions": "Кхин"
|
||||
}
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"@metadata": {
|
||||
"authors": [
|
||||
"Bellatrix10"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Dodaj temu",
|
||||
"vector-action-delete": "Izbriši",
|
||||
"vector-action-move": "Premjesti",
|
||||
"vector-action-protect": "Zaštiti",
|
||||
"vector-view-edit": "Uredi",
|
||||
"vector-view-history": "Pregledaj istoriju",
|
||||
"vector-view-view": "Čitaj",
|
||||
"vector-more-actions": "Više"
|
||||
}
|
|
@ -1,7 +1,8 @@
|
|||
{
|
||||
"@metadata": {
|
||||
"authors": [
|
||||
"Paulu"
|
||||
"Paulu",
|
||||
"Jun Misugi"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Aghjunghje discussione",
|
||||
|
@ -13,5 +14,6 @@
|
|||
"vector-view-edit": "Mudificà",
|
||||
"vector-view-history": "Vede a cronolugia",
|
||||
"vector-view-view": "Leghje",
|
||||
"vector-view-viewsource": "Vede a surghjente"
|
||||
"vector-view-viewsource": "Vede a surghjente",
|
||||
"vector-more-actions": "Più"
|
||||
}
|
||||
|
|
|
@ -2,11 +2,12 @@
|
|||
"@metadata": {
|
||||
"authors": [
|
||||
"Mormegil",
|
||||
"Dvorapa"
|
||||
"Dvorapa",
|
||||
"Patriccck"
|
||||
]
|
||||
},
|
||||
"skinname-vector": "Vektor",
|
||||
"vector-skin-desc": "Moderní verze MonoBooku s novějším vzhledem a vylepšenou použitelností",
|
||||
"vector-skin-desc": "Moderní verze vzhledu Kniha s novějším vzhledem a vylepšenou použitelností",
|
||||
"vector.css": "/* Zde uvedené CSS bude ovlivňovat pouze vzhled „Vektor“ */",
|
||||
"vector.js": "/* Zde uvedený JavaScript bude použit pouze pro uživatele vzhledu „Vektor“ */",
|
||||
"vector-action-addsection": "Přidat téma",
|
||||
|
|
|
@ -11,23 +11,24 @@
|
|||
"Velg",
|
||||
"1917 Ekim Devrimi",
|
||||
"Dılmıc",
|
||||
"Gambollar"
|
||||
"Gambollar",
|
||||
"Orbot707"
|
||||
]
|
||||
},
|
||||
"skinname-vector": "Vektor",
|
||||
"vector-skin-desc": "Asayışo de newe be versiyonê MonoBookiyo modern ra û weşkerdışê ke şenê bıgureniyê",
|
||||
"vector-action-addsection": "Mewzu vıraze",
|
||||
"vector-action-addsection": "Mewzu dek",
|
||||
"vector-action-delete": "Bestere",
|
||||
"vector-action-move": "Bıkırışe",
|
||||
"vector-action-protect": "Bışevekne",
|
||||
"vector-action-undelete": "Peyser biya",
|
||||
"vector-action-undelete": "Meestere",
|
||||
"vector-action-unprotect": "Sıtarnayışi bıvurne",
|
||||
"vector-view-create": "Vıraze",
|
||||
"vector-view-create": "Vıraz",
|
||||
"vector-view-edit": "Bıvurne",
|
||||
"vector-view-history": "Verênan bıvêne",
|
||||
"vector-view-history": "Verêni bıvêne",
|
||||
"vector-view-view": "Bıwane",
|
||||
"vector-view-viewsource": "Rêçi bıvin",
|
||||
"vector-jumptonavigation": "Xıl de pusula",
|
||||
"vector-jumptonavigation": "Xıl de be pusula",
|
||||
"vector-jumptosearch": "Xıl de cıgeyrayışi",
|
||||
"vector-more-actions": "Tayêna"
|
||||
"vector-more-actions": "Zêde"
|
||||
}
|
||||
|
|
|
@ -3,10 +3,12 @@
|
|||
"authors": [
|
||||
"KuboF",
|
||||
"Objectivesea",
|
||||
"Yekrats"
|
||||
"Yekrats",
|
||||
"Mirin"
|
||||
]
|
||||
},
|
||||
"skinname-vector": "Vektoro",
|
||||
"vector-skin-desc": "Moderna versio de MonoBook kun freŝa aspekto kaj plibonigo de uzebleco",
|
||||
"vector.css": "/* La jena CSS influos la paĝaspekton por uzantoj de la Vektora temo. */",
|
||||
"vector.js": "/* La jena Ĝavaskripto ŝargiĝos por uzantoj de la Vektora temo. */",
|
||||
"vector-action-addsection": "Aldoni temon",
|
||||
|
@ -20,5 +22,7 @@
|
|||
"vector-view-history": "Vidi historion",
|
||||
"vector-view-view": "Legi",
|
||||
"vector-view-viewsource": "Vidi fonton",
|
||||
"vector-jumptonavigation": "Salti al navigilo",
|
||||
"vector-jumptosearch": "Salti al serĉilo",
|
||||
"vector-more-actions": "Pli"
|
||||
}
|
||||
|
|
|
@ -11,20 +11,20 @@
|
|||
]
|
||||
},
|
||||
"skinname-vector": "وکتور",
|
||||
"vector-skin-desc": "نسخهٔ مدرن مونوبوک با نمای جدید و بهینهسازیهای کاربردی",
|
||||
"vector-skin-desc": "نگارش مدرن مونوبوک با نمای تازه و بهینهسازیهای کاربردی",
|
||||
"vector.css": "/* دستورات این بخش کاربرانی را که از پوستهٔ وکتور استفاده کنند تحت تاثیر قرار میدهند. */",
|
||||
"vector.js": "/ * کدهای جاوااسکریپتی که در اینجا قرار میگیرند برای کاربران پوستهٔ وکتور بارگیری میشود * /",
|
||||
"vector-action-addsection": "افزودن بخش",
|
||||
"vector-action-delete": "حذف",
|
||||
"vector-action-move": "انتقال",
|
||||
"vector-action-protect": "محافظت",
|
||||
"vector-action-undelete": "بازیابی",
|
||||
"vector-action-undelete": "احیا",
|
||||
"vector-action-unprotect": "تغییر سطح حفاظت",
|
||||
"vector-view-create": "ایجاد",
|
||||
"vector-view-edit": "ویرایش",
|
||||
"vector-view-history": "نمایش تاریخچه",
|
||||
"vector-view-view": "خواندن",
|
||||
"vector-view-viewsource": "نمایش خاستگاه",
|
||||
"vector-view-viewsource": "نمایش مبدأ",
|
||||
"vector-jumptonavigation": "پرش به ناوبری",
|
||||
"vector-jumptosearch": "پرش به جستجو",
|
||||
"vector-more-actions": "بیشتر"
|
||||
|
|
|
@ -6,12 +6,14 @@
|
|||
"Nike",
|
||||
"Pxos",
|
||||
"SuperPete",
|
||||
"01miki10"
|
||||
"01miki10",
|
||||
"Pyscowicz"
|
||||
]
|
||||
},
|
||||
"skinname-vector": "Vektori",
|
||||
"vector-skin-desc": "Uudistettu versio MonoBookista raikkaalla ulkoasulla ja useilla käytettävyysparannuksilla",
|
||||
"vector.css": "/* Tämä sivu sisältää Vector-ulkoasua muuttavia tyylejä. */",
|
||||
"vector.js": "/* Tämän sivun JavaScript-koodi liitetään Vector-tyyliin */",
|
||||
"vector.css": "/* Tämä sivu sisältää Vektori-ulkoasua muuttavia tyylejä. */",
|
||||
"vector.js": "/* Tämän sivun JavaScript-koodi liitetään Vektori-tyyliin */",
|
||||
"vector-action-addsection": "Lisää aihe",
|
||||
"vector-action-delete": "Poista",
|
||||
"vector-action-move": "Siirrä",
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
{
|
||||
"@metadata": {
|
||||
"authors": [
|
||||
"Mahuton"
|
||||
"Mahuton",
|
||||
"Amire80"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Gɔ́ xóta yɔ́yɔ́ ɖévo ná",
|
||||
|
@ -9,5 +10,5 @@
|
|||
"vector-view-edit": "Wlǎn nú gɔnu nuwlǎnwlǎn ɔ",
|
||||
"vector-view-history": "Yín nukún ɖo ɖiɖyɔ tɛnmɛ tɛnmɛ wémá ɔ tɔn lɛ jí",
|
||||
"vector-view-view": "Xá",
|
||||
"vector-more-actions": "susu"
|
||||
"vector-more-actions": "Susu"
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
"PiefPafPier"
|
||||
]
|
||||
},
|
||||
"skinname-vector": "Vektor",
|
||||
"vector-action-addsection": "Nij mêd",
|
||||
"vector-action-delete": "Fuortsmite",
|
||||
"vector-action-move": "Omneame",
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
"authors": [
|
||||
"Flixtey",
|
||||
"Mybluberet",
|
||||
"Gkbediako"
|
||||
"Gkbediako",
|
||||
"Amire80"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Kɛ mlijaa yitso afata he",
|
||||
|
@ -12,7 +13,7 @@
|
|||
"vector-action-protect": "Yibaamɔ",
|
||||
"vector-view-create": "Bɔɔ",
|
||||
"vector-view-edit": "Tsakemɔ",
|
||||
"vector-view-history": "kwɛmɔ nibii ni eho",
|
||||
"vector-view-history": "Kwɛmɔ nibii ni eho",
|
||||
"vector-view-view": "Kanemɔ",
|
||||
"vector-more-actions": "Pii"
|
||||
}
|
||||
|
|
|
@ -3,13 +3,14 @@
|
|||
"authors": [
|
||||
"Azniv Stepanian",
|
||||
"ArmenBakkalian",
|
||||
"Rajemian"
|
||||
"Rajemian",
|
||||
"Դավիթ Սարոյան"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Աւելցնել քննարկում",
|
||||
"vector-action-delete": "Ջնջել",
|
||||
"vector-action-move": "Տեղափոխել այս էջը",
|
||||
"vector-action-protect": "Պահպանել",
|
||||
"vector-action-protect": "Պահել",
|
||||
"vector-view-create": "Ստեղծել",
|
||||
"vector-view-edit": "Խմբագրել",
|
||||
"vector-view-history": "Տեսնել պատմութիւնը",
|
||||
|
|
|
@ -17,5 +17,6 @@
|
|||
"vector-view-history": "Vidar versionaro",
|
||||
"vector-view-view": "Lektar",
|
||||
"vector-view-viewsource": "Vidar fonto",
|
||||
"vector-jumptosearch": "Irez a serchilo",
|
||||
"vector-more-actions": "Pluse"
|
||||
}
|
||||
|
|
|
@ -2,11 +2,13 @@
|
|||
"@metadata": {
|
||||
"authors": [
|
||||
"Waldir",
|
||||
"Quintino Lopes Castro Tavares"
|
||||
"Quintino Lopes Castro Tavares",
|
||||
"Waldyrious"
|
||||
]
|
||||
},
|
||||
"vector-view-edit": "Muda",
|
||||
"vector-view-history": "Konsulta istóriku",
|
||||
"vector-view-history": "Odja istóriku",
|
||||
"vector-view-view": "Lê",
|
||||
"vector-view-viewsource": "Odja kódigu-fonti",
|
||||
"vector-more-actions": "Más"
|
||||
}
|
||||
|
|
|
@ -2,7 +2,8 @@
|
|||
"@metadata": {
|
||||
"authors": [
|
||||
"Mirzali",
|
||||
"Kumkumuk"
|
||||
"Kumkumuk",
|
||||
"1917 Ekim Devrimi"
|
||||
]
|
||||
},
|
||||
"vector-skin-desc": "Asayışo de newe be versiyonê MonoBookiyo modern ra û weşkerdışê ke şenê bıgureniyê",
|
||||
|
@ -17,5 +18,7 @@
|
|||
"vector-view-history": "Tarixi bıvêne",
|
||||
"vector-view-view": "Bıwane",
|
||||
"vector-view-viewsource": "Çımey bıvêne",
|
||||
"vector-jumptonavigation": "Xıl de be pusula",
|
||||
"vector-jumptosearch": "Xıl de cıgeyrayışi",
|
||||
"vector-more-actions": "Zêde"
|
||||
}
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"@metadata": {
|
||||
"authors": [
|
||||
"Андрей Саг."
|
||||
]
|
||||
},
|
||||
"vector-view-create": "Идебзерге",
|
||||
"vector-view-edit": "Тӱзедерге"
|
||||
}
|
|
@ -1,7 +1,8 @@
|
|||
{
|
||||
"@metadata": {
|
||||
"authors": [
|
||||
"Universal Life"
|
||||
"Universal Life",
|
||||
"Chabi1"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Ajustar sujeto",
|
||||
|
@ -9,8 +10,8 @@
|
|||
"vector-action-move": "Taşirear",
|
||||
"vector-action-protect": "Guadrar",
|
||||
"vector-action-undelete": "Traer atrás",
|
||||
"vector-action-unprotect": "Trocar proteksyon",
|
||||
"vector-view-create": "Criar",
|
||||
"vector-action-unprotect": "Trokar proteksyon",
|
||||
"vector-view-create": "Kriar",
|
||||
"vector-view-edit": "Trocar",
|
||||
"vector-view-history": "Ver la istoria",
|
||||
"vector-view-view": "Meldar",
|
||||
|
|
|
@ -2,7 +2,9 @@
|
|||
"@metadata": {
|
||||
"authors": [
|
||||
"Chelin",
|
||||
"C.R."
|
||||
"C.R.",
|
||||
"Ruthven",
|
||||
"Sannita"
|
||||
]
|
||||
},
|
||||
"vector-skin-desc": "Verziona muderna 'e MonoBook cu n'aspetto nuovo nuovo e tante migliuramente d'uso",
|
||||
|
@ -13,9 +15,9 @@
|
|||
"vector-action-undelete": "Arrepiglia",
|
||||
"vector-action-unprotect": "Càgna prutezzione",
|
||||
"vector-view-create": "Crèa",
|
||||
"vector-view-edit": "Càgna",
|
||||
"vector-view-history": "Vire cronologgia",
|
||||
"vector-view-edit": "Cagna",
|
||||
"vector-view-history": "Vide 'a cronologgia",
|
||||
"vector-view-view": "Liegge",
|
||||
"vector-view-viewsource": "Vere sorgente",
|
||||
"vector-view-viewsource": "Vire sorgente",
|
||||
"vector-more-actions": "Cchiù"
|
||||
}
|
||||
|
|
|
@ -4,16 +4,19 @@
|
|||
"Servien"
|
||||
]
|
||||
},
|
||||
"vector-skin-desc": "Moderne versy van MonoBook mid een fris uterlik en verbeateringen up et gebeed van gebruuksvrendelikheid",
|
||||
"vector-action-addsection": "Ny underwarp",
|
||||
"vector-action-delete": "Vortdoon",
|
||||
"vector-action-delete": "Vordsmyten",
|
||||
"vector-action-move": "Hernömen",
|
||||
"vector-action-protect": "Beveiligen",
|
||||
"vector-action-undelete": "Weerummeplaotsen",
|
||||
"vector-action-undelete": "Weaderümmeplaatsen",
|
||||
"vector-action-unprotect": "Beveiliging wysigen",
|
||||
"vector-view-create": "Anmaken",
|
||||
"vector-view-create": "Upstellen",
|
||||
"vector-view-edit": "Bewarken",
|
||||
"vector-view-history": "Geskydenisse bekyken",
|
||||
"vector-view-view": "Leasen",
|
||||
"vector-view-viewsource": "Brontekste bekyken",
|
||||
"vector-jumptonavigation": "Nå navigaty springen",
|
||||
"vector-jumptosearch": "Nå söken springen",
|
||||
"vector-more-actions": "Meyr"
|
||||
}
|
||||
|
|
|
@ -2,16 +2,18 @@
|
|||
"@metadata": {
|
||||
"authors": [
|
||||
"Youssoufkadialy",
|
||||
"Lanciné.kounfantoh.fofana"
|
||||
"Lanciné.kounfantoh.fofana",
|
||||
"Lancine.kounfantoh.fofana",
|
||||
"Babamamadidiane"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "ߥߟߊ߬ߘߊ߫ ߝߙߊ߬",
|
||||
"vector-action-delete": "ߊ߬ ߖߏ߬ߛߌ߬",
|
||||
"vector-action-move": "ߊ߬ ߛߋ߲߬ߓߐ߫",
|
||||
"vector-action-protect": "ߊ߬ ߟߊߞߊ߲ߘߊ߫",
|
||||
"vector-view-create": "ߟߊߘߊ߲߫",
|
||||
"vector-view-edit": "ߊ߬ ߡߊߝߊ߬ߟߋ߲߬",
|
||||
"vector-view-history": "ߕߊ߬ߡߌ߲߬ߣߍ߲ ߠߎ߫ ߦߌ߬ߘߊ߬",
|
||||
"vector-view-view": "ߊ߬ ߞߊ߬ߙߊ߲߬",
|
||||
"vector-more-actions": "ߜߘߍ߫ ߟߎ߬"
|
||||
"vector-view-create": "ߊ߬ ߟߊߘߊ߲߫",
|
||||
"vector-view-edit": "ߊ߬ ߡߊߦߟߍ߬ߡߊ߲߫",
|
||||
"vector-view-history": "ߞߊ߬ߞߘߐ ߡߊߝߟߍ",
|
||||
"vector-view-view": "ߘߐ߬ߞߊ߬ߙߊ߲߬ߠߌ߲",
|
||||
"vector-more-actions": "ߡߞߊ߬ߝߏ߬ ߜߘߍ߫ ߟߎ߫"
|
||||
}
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"@metadata": {
|
||||
"authors": [
|
||||
"NoiX180"
|
||||
]
|
||||
},
|
||||
"vector-view-edit": "Uwah",
|
||||
"vector-view-view": "Waca"
|
||||
}
|
|
@ -14,5 +14,6 @@
|
|||
"vector-view-edit": "Éditer",
|
||||
"vector-view-history": "Vir l'histoère",
|
||||
"vector-view-view": "Lire",
|
||||
"vector-view-viewsource": "Vir l'source"
|
||||
"vector-view-viewsource": "Vir l'source",
|
||||
"vector-more-actions": "Pus"
|
||||
}
|
||||
|
|
|
@ -8,7 +8,8 @@
|
|||
"Vitorvicentevalente",
|
||||
"Waldir",
|
||||
"MokaAkashiyaPT",
|
||||
"Athena in Wonderland"
|
||||
"Athena in Wonderland",
|
||||
"Waldyrious"
|
||||
]
|
||||
},
|
||||
"skinname-vector": "Vector",
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"@metadata": {
|
||||
"authors": [
|
||||
"MFikriansori"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Tambêak dik nêbahas",
|
||||
"vector-action-delete": "Apus",
|
||||
"vector-action-move": "Aliak",
|
||||
"vector-action-protect": "Lindung",
|
||||
"vector-view-create": "Nêa",
|
||||
"vector-view-edit": "Ubêak",
|
||||
"vector-view-history": "Kêliak riwayat",
|
||||
"vector-view-view": "Baco",
|
||||
"vector-more-actions": "Igai"
|
||||
}
|
|
@ -13,5 +13,6 @@
|
|||
"vector-view-edit": "Mudifigga",
|
||||
"vector-view-history": "Vèdi isthòria",
|
||||
"vector-view-view": "Leggi",
|
||||
"vector-view-viewsource": "Vèdi fonti"
|
||||
"vector-view-viewsource": "Vèdi fonti",
|
||||
"vector-more-actions": "Più"
|
||||
}
|
||||
|
|
|
@ -5,7 +5,8 @@
|
|||
"Rudko",
|
||||
"Sudo77(new)",
|
||||
"KuboF",
|
||||
"Mikulas1"
|
||||
"Mikulas1",
|
||||
"Robert Važan"
|
||||
]
|
||||
},
|
||||
"skinname-vector": "Vector",
|
||||
|
@ -22,6 +23,6 @@
|
|||
"vector-view-edit": "Upraviť",
|
||||
"vector-view-history": "Zobraziť históriu",
|
||||
"vector-view-view": "Čítať",
|
||||
"vector-view-viewsource": "Zobraziť zdroj",
|
||||
"vector-view-viewsource": "Zobraziť kód",
|
||||
"vector-more-actions": "Viac"
|
||||
}
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"@metadata": {
|
||||
"authors": [
|
||||
"Gustave London"
|
||||
]
|
||||
},
|
||||
"vector-view-edit": "Fetola",
|
||||
"vector-view-history": "sheba histori",
|
||||
"vector-more-actions": "Lihlooho Tse Ling"
|
||||
}
|
|
@ -3,7 +3,8 @@
|
|||
"authors": [
|
||||
"Lloffiwr",
|
||||
"Muddyb Blast Producer",
|
||||
"Muddyb"
|
||||
"Muddyb",
|
||||
"Yasen igra"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Weka mada",
|
||||
|
@ -16,5 +17,6 @@
|
|||
"vector-view-edit": "Hariri",
|
||||
"vector-view-history": "Fungua historia",
|
||||
"vector-view-view": "Soma",
|
||||
"vector-view-viewsource": "Tazama msimbo"
|
||||
"vector-view-viewsource": "Tazama msimbo",
|
||||
"vector-more-actions": "Zaidi"
|
||||
}
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"@metadata": {
|
||||
"authors": [
|
||||
"Jun Misugi"
|
||||
]
|
||||
},
|
||||
"vector-view-edit": "Ändorn",
|
||||
"vector-view-history": "Fersionsgeschischde",
|
||||
"vector-view-view": "Lesn",
|
||||
"vector-more-actions": "Mehr"
|
||||
}
|
|
@ -5,18 +5,19 @@
|
|||
"Gaj777",
|
||||
"Przemub",
|
||||
"Krol111",
|
||||
"Przem(1)s"
|
||||
"Przem(1)s",
|
||||
"Uostofchuodnego"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Nowo tajla",
|
||||
"vector-action-delete": "Wyćepej",
|
||||
"vector-action-move": "Przećep",
|
||||
"vector-action-addsection": "Przidej tymat",
|
||||
"vector-action-delete": "Skasuj",
|
||||
"vector-action-move": "Przeniyś",
|
||||
"vector-action-protect": "Zawrzij",
|
||||
"vector-action-undelete": "Wćep",
|
||||
"vector-action-unprotect": "Uodymkńij",
|
||||
"vector-view-create": "Stwůrz",
|
||||
"vector-view-create": "Stwōrz",
|
||||
"vector-view-edit": "Edytuj",
|
||||
"vector-view-history": "Uobocz gyszichta",
|
||||
"vector-view-history": "Pokŏż historyjõ",
|
||||
"vector-view-view": "Czytej",
|
||||
"vector-view-viewsource": "Zdrzůdłowy tekst",
|
||||
"vector-more-actions": "Wiyncyj"
|
||||
|
|
|
@ -2,18 +2,19 @@
|
|||
"@metadata": {
|
||||
"authors": [
|
||||
"Гусейн",
|
||||
"Ganbarzada"
|
||||
"Ganbarzada",
|
||||
"Patriot Kur"
|
||||
]
|
||||
},
|
||||
"vector-action-addsection": "Мывзу зијод кардеј",
|
||||
"vector-action-delete": "Рәдд кардеј",
|
||||
"vector-action-move": "Номи дәгиш кардеј",
|
||||
"vector-action-protect": "Мыдофијә кардеј",
|
||||
"vector-action-protect": "Mıdofiə karde",
|
||||
"vector-action-undelete": "Бәрпо кардеј",
|
||||
"vector-action-unprotect": "Мыдофијә дәгиш кардеј",
|
||||
"vector-view-create": "Офәјеј",
|
||||
"vector-view-edit": "Сәрост кардеј",
|
||||
"vector-view-history": "Тарых",
|
||||
"vector-view-history": "Тarix",
|
||||
"vector-view-view": "Һандемон",
|
||||
"vector-view-viewsource": "Дијә кардеј",
|
||||
"vector-more-actions": "həniyən"
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
"Iyuqciyang"
|
||||
]
|
||||
},
|
||||
"vector-action-move": "hdlun",
|
||||
"vector-view-create": "phiyug",
|
||||
"vector-view-edit": "smmalu patas",
|
||||
"vector-view-history": "patas endaan qmita",
|
||||
"vector-view-view": "smpug patas",
|
||||
"vector-action-move": "Hdlun",
|
||||
"vector-view-create": "Phiyug",
|
||||
"vector-view-edit": "Smmalu patas",
|
||||
"vector-view-history": "Patas endaan qmita",
|
||||
"vector-view-view": "Smpug patas",
|
||||
"vector-view-viewsource": "ida nkiya patas sspgan ka qtai",
|
||||
"vector-more-actions": "knlala"
|
||||
"vector-more-actions": "Knlala"
|
||||
}
|
||||
|
|
|
@ -9,11 +9,11 @@
|
|||
"skinname-vector": "Вектор",
|
||||
"vector-action-addsection": "Тема немээр",
|
||||
"vector-action-delete": "Ырадыры",
|
||||
"vector-action-move": "Шимчээри",
|
||||
"vector-action-move": "Өскээр адаар",
|
||||
"vector-action-protect": "Камгалаары",
|
||||
"vector-action-undelete": "Эгидер",
|
||||
"vector-action-unprotect": "Камгалалды өскертири",
|
||||
"vector-view-create": "Кылыр",
|
||||
"vector-view-create": "Тургузуп кылыр",
|
||||
"vector-view-edit": "Эдер",
|
||||
"vector-view-history": "Төөгүнү көөр",
|
||||
"vector-view-view": "Номчуур",
|
||||
|
|
Before Width: | Height: | Size: 114 B |
Before Width: | Height: | Size: 166 B |
Before Width: | Height: | Size: 159 B |
Before Width: | Height: | Size: 96 B |
After Width: | Height: | Size: 139 B |
Before Width: | Height: | Size: 176 B |
|
@ -1,7 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="12" height="13">
|
||||
<g fill="none" stroke="#54595d" stroke-width="2">
|
||||
<path d="M.71 11.71l4-4"/>
|
||||
<circle cx="7" cy="5" r="4"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 228 B |
Before Width: | Height: | Size: 176 B After Width: | Height: | Size: 176 B |
Before Width: | Height: | Size: 231 B After Width: | Height: | Size: 231 B |
Before Width: | Height: | Size: 124 B After Width: | Height: | Size: 124 B |
Before Width: | Height: | Size: 364 B |
|
@ -37,6 +37,7 @@ class SkinVector extends SkinTemplate {
|
|||
private $responsiveMode = false;
|
||||
|
||||
public function __construct() {
|
||||
parent::__construct( ...func_get_args() );
|
||||
$this->vectorConfig = \MediaWiki\MediaWikiServices::getInstance()->getConfigFactory()
|
||||
->makeConfig( 'vector' );
|
||||
}
|
||||
|
|
|
@ -488,9 +488,6 @@ class VectorTemplate extends BaseTemplate {
|
|||
$item['class'] = rtrim( 'collapsible ' . $item['class'], ' ' );
|
||||
}
|
||||
|
||||
// We don't use this, prevent it from popping up in HTML output
|
||||
unset( $item['redundant'] );
|
||||
|
||||
return parent::makeListItem( $key, $item, $options );
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,11 +25,11 @@
|
|||
<div class="printfooter">{{{html-printfooter}}}</div>
|
||||
{{/html-printfooter}}
|
||||
{{{html-catlinks}}}
|
||||
{{{html-dataAfterContent}}}
|
||||
<div class="visualClear"></div>
|
||||
{{{html-debuglog}}}
|
||||
</div>
|
||||
</div>
|
||||
{{{html-dataAfterContent}}}
|
||||
{{! html-unported outputs <div id="mw-navigation"> and <div id="footer"> }}
|
||||
{{{html-unported}}}
|
||||
{{{html-printtail}}}
|
||||
|
|
|
@ -5,12 +5,11 @@
|
|||
"doc": "jsduck"
|
||||
},
|
||||
"devDependencies": {
|
||||
"eslint-config-wikimedia": "0.11.0",
|
||||
"grunt": "1.0.3",
|
||||
"eslint-config-wikimedia": "0.12.0",
|
||||
"grunt": "1.0.4",
|
||||
"grunt-banana-checker": "0.7.0",
|
||||
"grunt-eslint": "21.0.0",
|
||||
"grunt-jsonlint": "1.1.0",
|
||||
"grunt-stylelint": "0.10.1",
|
||||
"stylelint-config-wikimedia": "0.5.0"
|
||||
"stylelint-config-wikimedia": "0.6.0"
|
||||
}
|
||||
}
|
||||
|
|
22
print.less
|
@ -1,5 +1,10 @@
|
|||
@import 'variables.less';
|
||||
@footerColor: #eee;
|
||||
@wmui-color-base0: #000;
|
||||
|
||||
@color-base: @wmui-color-base0;
|
||||
|
||||
@border-color-base: @wmui-color-base0;
|
||||
@border-color-footer: #eee;
|
||||
|
||||
// We have to render the wordmark image before the print dialog is invoked, otherwise the image
|
||||
// won't render in the printed file. Use a little hack to render the image outside the viewport
|
||||
|
@ -48,7 +53,7 @@
|
|||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-family: @font-family-sans-serif;
|
||||
font-family: @font-family-sans;
|
||||
}
|
||||
|
||||
// Images, such as formulas, render best in serif. Math fallback images, for example, have an
|
||||
|
@ -89,7 +94,7 @@
|
|||
h2 {
|
||||
// To avoid the bottom border of section headings with floated elements
|
||||
overflow: hidden;
|
||||
border-bottom: 2px solid @pureBlack;
|
||||
border-bottom: 2px solid @border-color-base;
|
||||
}
|
||||
|
||||
h3,
|
||||
|
@ -140,16 +145,15 @@
|
|||
// enjoyable. If there is not enough space the following code will push
|
||||
// the paragraph contents until after the floating element(s).
|
||||
&:before {
|
||||
@paragraphMinWidth: 120pt;
|
||||
content: '';
|
||||
display: block;
|
||||
width: 120pt;
|
||||
overflow: hidden;
|
||||
width: @paragraphMinWidth;
|
||||
}
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-left: 2px solid @pureBlack;
|
||||
border-left: 2px solid @border-color-base;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
|
@ -213,7 +217,7 @@
|
|||
|
||||
.printfooter {
|
||||
margin-top: 10px;
|
||||
border-top: 3px solid @pureBlack;
|
||||
border-top: 3px solid @border-color-base;
|
||||
padding-top: 10px;
|
||||
font-size: 10pt;
|
||||
clear: both;
|
||||
|
@ -221,7 +225,7 @@
|
|||
|
||||
#footer {
|
||||
margin-top: 12px;
|
||||
border-top: 1px solid @footerColor;
|
||||
border-top: 1px solid @border-color-footer;
|
||||
padding-top: 5px;
|
||||
}
|
||||
|
||||
|
@ -245,7 +249,7 @@
|
|||
|
||||
// Last updated as primary info.
|
||||
#footer-info-lastmod {
|
||||
color: @pureBlack;
|
||||
color: @color-base;
|
||||
font-size: 12pt;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
|
|
@ -12,8 +12,8 @@
|
|||
}
|
||||
|
||||
/* Move the panel to the bottom and display it as in-line lists */
|
||||
div#mw-navigation {
|
||||
div#mw-panel {
|
||||
#mw-navigation {
|
||||
#mw-panel {
|
||||
display: table;
|
||||
position: static;
|
||||
table-layout: fixed;
|
||||
|
@ -32,7 +32,7 @@
|
|||
}
|
||||
|
||||
/* Hide the logo and tabs */
|
||||
div#p-logo {
|
||||
#p-logo {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
@ -48,13 +48,20 @@
|
|||
}
|
||||
}
|
||||
|
||||
div#p-personal {
|
||||
#p-personal {
|
||||
display: table;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
top: inherit;
|
||||
left: inherit;
|
||||
right: inherit;
|
||||
|
||||
ul {
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
||||
|
||||
div#right-navigation {
|
||||
#right-navigation {
|
||||
position: absolute;
|
||||
top: inherit;
|
||||
right: 0;
|
||||
|
@ -62,7 +69,7 @@
|
|||
float: none;
|
||||
}
|
||||
|
||||
div#left-navigation {
|
||||
#left-navigation {
|
||||
position: absolute;
|
||||
top: inherit;
|
||||
margin: 0;
|
||||
|
@ -70,22 +77,31 @@
|
|||
float: none;
|
||||
}
|
||||
|
||||
div#p-namespaces,
|
||||
div#p-views,
|
||||
div#p-variants {
|
||||
#p-namespaces,
|
||||
#p-views,
|
||||
#p-variants {
|
||||
position: relative;
|
||||
top: 2.5em;
|
||||
}
|
||||
|
||||
div#p-namespaces {
|
||||
#p-namespaces {
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
div#p-cactions {
|
||||
#p-cactions {
|
||||
top: 2.5em;
|
||||
float: right;
|
||||
}
|
||||
|
||||
div#p-search {
|
||||
#p-search {
|
||||
float: none;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
width: 100vw;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
div#simpleSearch {
|
||||
#simpleSearch {
|
||||
margin: 0 3em;
|
||||
width: 80vw;
|
||||
padding: 0;
|
||||
|
@ -96,13 +112,13 @@
|
|||
right: -1px;
|
||||
}
|
||||
|
||||
div#content {
|
||||
.mw-body {
|
||||
/* Hide the 1px blue border on the left side */
|
||||
border-left: 0;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
mw-body {
|
||||
margin-top: 0;
|
||||
}
|
||||
#mw-data-after-content {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
.mw-body,
|
||||
#mw-head-base,
|
||||
#left-navigation,
|
||||
#mw-data-after-content,
|
||||
#footer {
|
||||
/* margin-left: 11em;*/
|
||||
}
|
||||
|
|
|
@ -67,7 +67,7 @@
|
|||
"vector.js"
|
||||
],
|
||||
"dependencies": [
|
||||
"jquery.throttle-debounce",
|
||||
"mediawiki.util",
|
||||
"jquery.tabIndex"
|
||||
]
|
||||
}
|
||||
|
@ -94,12 +94,12 @@
|
|||
"jquery.ui.selectable": "skinStyles/jquery.ui/jquery.ui.selectable.css",
|
||||
"jquery.ui.slider": "skinStyles/jquery.ui/jquery.ui.slider.css",
|
||||
"jquery.ui.tabs": "skinStyles/jquery.ui/jquery.ui.tabs.css",
|
||||
"jquery.ui.tooltips": "skinStyles/jquery.ui/jquery.ui.tooltips.css",
|
||||
"jquery.ui.tooltip": "skinStyles/jquery.ui/jquery.ui.tooltip.css",
|
||||
"+mediawiki.action.view.redirectPage": "skinStyles/mediawiki.action.view.redirectPage.less",
|
||||
"+mediawiki.notification": "skinStyles/mediawiki.notification.less",
|
||||
"+oojs-ui-core.styles": "skinStyles/ooui.less",
|
||||
"mediawiki.special": "skinStyles/mediawiki.special.less",
|
||||
"+mediawiki.special.preferences.styles": "skinStyles/mediawiki.special.preferences.styles.less"
|
||||
"+ext.relatedArticles.readMore": "skinStyles/ext.relatedArticles.readMore.less"
|
||||
}
|
||||
},
|
||||
"config": {
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
.ext-related-articles-card-list {
|
||||
margin-right: 1.5em;
|
||||
}
|
|
@ -1,9 +1,10 @@
|
|||
@import 'mediawiki.ui/variables';
|
||||
@import '../variables.less';
|
||||
|
||||
/* mediawiki.notification */
|
||||
|
||||
.mw-notification-area {
|
||||
font-size: 0.8em;
|
||||
font-size: @font-size-notification;
|
||||
}
|
||||
|
||||
.mw-notification-area-layout {
|
||||
|
@ -12,6 +13,6 @@
|
|||
|
||||
.mw-notification {
|
||||
border: 1px solid @colorFieldBorder;
|
||||
border-radius: 2px;
|
||||
border-radius: @borderRadius;
|
||||
box-shadow: 0 2px 2px 0 rgba( 0, 0, 0, 0.25 );
|
||||
}
|
||||
|
|
|
@ -8,5 +8,5 @@
|
|||
|
||||
body > .oo-ui-windowManager,
|
||||
.oo-ui-defaultOverlay {
|
||||
font-size: @content-font-size;
|
||||
font-size: @font-size-base;
|
||||
}
|
||||
|
|
|
@ -1,46 +1,71 @@
|
|||
@import 'mediawiki.ui/variables';
|
||||
|
||||
@html-font-size: 100%;
|
||||
@font-size-root: 100%;
|
||||
@font-size-browser: 16; // Assumed browser default of `16px`
|
||||
|
||||
@font-family-serif: 'Linux Libertine', 'Georgia', 'Times', serif;
|
||||
@font-family-sans-serif: sans-serif;
|
||||
// FIXME: Use WikimediaUI Base's OS specific default sans-serif fonts.
|
||||
@font-family-sans: sans-serif;
|
||||
@font-family-sans--fallback: sans-serif;
|
||||
|
||||
// Page content
|
||||
@background-color-base: #fff;
|
||||
@color-base: #222;
|
||||
@color-base--emphasized: #000;
|
||||
@color-link: #0645ad;
|
||||
@color-link--visited: #0b0080;
|
||||
@color-link-new: #a55858;
|
||||
@color-link-selected: @color-base;
|
||||
|
||||
@font-size-base: unit( 14 / @font-size-browser, em ); // Equals `0.875em`.
|
||||
@font-size-reset: @font-size-root;
|
||||
@font-size-heading-1: 1.8em;
|
||||
@font-size-heading-2: 1.5em;
|
||||
@font-size-heading-3: 1.2em;
|
||||
@font-size-notification: 0.8em;
|
||||
@font-size-site-notice: 0.8em;
|
||||
@line-height-base: 1.6;
|
||||
@line-height-heading: 1.3;
|
||||
@line-height-code: 1.3;
|
||||
@line-height-footer-info: 1.4;
|
||||
@line-height-footer-buttons: 2;
|
||||
|
||||
// FIXME: Use global variable since Echo and CentralNotice use this variable
|
||||
@content-border-color: #a7d7f9;
|
||||
// FIXME: Find an open font that works with this stack and is readable by Windows users
|
||||
@content-font-family: @font-family-sans-serif;
|
||||
@content-font-color: #222;
|
||||
@content-font-size: 0.875em;
|
||||
@pureBlack: #000;
|
||||
@border-color-content: #a7d7f9;
|
||||
// Due to darker background gradient, border needs to be darkened for aligned visual perception.
|
||||
@border-color-content--tabs-inactive: darken( @border-color-content, 10% );
|
||||
@content-line-height: 1.6;
|
||||
@content-padding: 1em;
|
||||
@content-heading-font-size: 1.8em;
|
||||
@content-heading-font-family: @font-family-serif;
|
||||
@content-heading-font-family-generic: sans-serif;
|
||||
@body-background-color: #fff;
|
||||
@heading-line-height: 1.3;
|
||||
@padding-content: 1em;
|
||||
|
||||
// Navigation
|
||||
@menu-background-color: #f6f6f6;
|
||||
@background-color-secondary: #f6f6f6;
|
||||
@color-nav-subtle: #444;
|
||||
// Navigation `line-height` has to be set in `em`s due to a rendering calculation issue.
|
||||
@line-height-nav: 1.125em;
|
||||
|
||||
// Common menu
|
||||
@menu-link-color: #0645ad;
|
||||
// Navigation: Main
|
||||
@font-size-nav-main: inherit;
|
||||
|
||||
// Main menu
|
||||
@menu-main-font-size: inherit;
|
||||
@font-size-nav-main-heading: unit( 12 / @font-size-browser, em ); // Equals `0.75em`.
|
||||
|
||||
@menu-main-heading-font-size: 0.75em;
|
||||
@menu-main-heading-color: #444;
|
||||
@font-size-nav-main-body: unit( 12 / @font-size-browser, em );
|
||||
@margin-left-nav-main-body: 0.5em;
|
||||
|
||||
@menu-main-body-font-size: 0.75em;
|
||||
@menu-main-body-link-color: #0645ad;
|
||||
@menu-main-body-link-visited-color: #0b0080;
|
||||
@menu-main-body-margin-left: 0.5em;
|
||||
@menu-main-body-padding: 0.3em 0 0 0;
|
||||
// Navigation: Personal tools
|
||||
@background-position-nav-personal-icon: left ( 4 / @font-size-browser / @font-size-nav-personal );
|
||||
@background-size-nav-personal-icon: 14 / @font-size-browser / @font-size-nav-personal;
|
||||
@font-size-nav-personal: 0.75em;
|
||||
// Using `unit()` without second parameter to achieve a unitless output for `line-height`.
|
||||
@line-height-nav-personal: unit( 14 / @font-size-browser / @font-size-nav-personal ); // Equals `1.667`.
|
||||
|
||||
// Personal menu
|
||||
@background-position-menu-personal-icon: left ( 4 / @font-size-browser / @font-size-menu-personal );
|
||||
@font-size-menu-personal: 0.75em;
|
||||
@line-height-menu-personal: 14 / @font-size-browser / @font-size-menu-personal; // equals `1.667em`≈`14px`
|
||||
// Tabs
|
||||
@font-size-tabs: unit( 13 / @font-size-browser, em ); // Equals `0.8125em`.
|
||||
|
||||
// Search
|
||||
@width-search-button: 24 / @font-size-browser / @font-size-search-input;
|
||||
@font-size-search-input: unit( 13 / @font-size-browser, em ); // Equals `0.8125em`.
|
||||
|
||||
// Footer
|
||||
// FIXME: Currently calculates at 11.2px, which is worth nothing and unreadable for a big
|
||||
// part of our audiences. Push up _at least_ to 12px.
|
||||
@font-size-footer: 0.7em;
|
||||
|
|