mediawiki-skins-Citizen/skinStyles/mediawiki/special/mediawiki.special.changeslist.less
alistair3149 f9b16d7134
refactor(core): ♻️ hide pseudo elements instead of deleting them
So that it can be reverted by local styles easily
2023-12-13 20:04:20 -05:00

246 lines
4.6 KiB
Plaintext

/*
* Citizen
*
* SkinStyles for Special:RecentChanges and Watchlist
* Module: mediawiki.special.changeslist
* Version: 1.39.0
*
* Date: 2023-05-29
*/
@import '../../../resources/variables.less';
@import '../../../resources/mixins.less';
/* default.less */
.mw-plusminus {
&-pos {
color: var( --color-text-success );
}
&-neg {
color: var( --color-text-error );
}
&-null {
color: var( --color-base--subtle );
}
}
.mw-changeslist {
h4 {
z-index: 1; // Needed to cover the timeline dots
padding: var( --space-sm ) 0;
margin-bottom: 0;
font-size: 0.8125rem;
font-weight: var( --font-weight-normal );
color: var( --color-base--subtle );
letter-spacing: 0.05em;
}
&-line {
/* Disable timeline dot for nested changeline */
.mw-changeslist-line::before {
display: none;
}
&-inner {
width: 100%; // always take all avaliable width
color: var( --color-base--subtle );
/* New line for user */
& .changedby,
&-userLink {
&::before {
white-space: pre;
content: '\a';
}
}
}
}
&-separator {
color: var( --color-base--subtle );
&:empty {
display: inline-block;
width: var( --space-xs );
&::before {
display: none;
}
}
}
}
/* Sticky change byte */
.mw-diff-bytes {
float: right;
margin-left: var( --space-xs );
background: var( --color-surface-0 );
&::before,
&::after {
display: none;
}
.selected &,
.mw-changeslist-line:hover & {
background: transparent;
}
}
.mw-diff-bytes:not( .mw-changeslist-line-inner-characterDiff .mw-diff-bytes ),
.mw-changeslist-line-inner-characterDiff {
position: sticky;
top: 0;
right: 0;
}
.mw-diff-bytes ~ .mw-changeslist-separator,
.mw-changeslist-line-inner-separatorAftercharacterDiff {
display: none;
}
.cloptions {
padding: 0;
margin: 0;
border: 0;
> legend {
display: none; // Eh it is difficult to style legend
}
&:not( .oo-ui-widget ) {
padding: var( --space-md );
font-size: 0.875rem;
background: var( --color-surface-2 );
border-radius: var( --border-radius--medium );
}
}
/* Skeleton screen loading */
body:not( .mw-rcfilters-ui-initialized ) .mw-rcfilters-head {
padding: var( --space-md );
font-size: 0.875rem;
background: var( --color-surface-2 );
border-radius: var( --border-radius--medium );
}
.client-js {
.mw-recentchanges-toplinks {
padding-left: 0;
}
.mw-recentchanges-toplinks:not( .mw-recentchanges-toplinks-collapsed ) {
padding: 0; /* Shift padding to button only */
margin-bottom: 16px; /* Same margin between rcfilter and saved filter */
border-color: var( --border-color-base );
border-radius: var( --border-radius--small );
/* Extend button to full width */
.oo-ui-buttonElement-frameless.oo-ui-labelElement:first-child {
display: block;
background: var( --color-surface-2 );
border-top-left-radius: var( --border-radius--small );
border-top-right-radius: var( --border-radius--small );
.oo-ui-buttonElement-button {
display: block;
}
.oo-ui-indicatorElement-indicator {
right: 6px !important;
}
}
}
}
.mw-recentchanges-toplinks {
.oo-ui-buttonElement-frameless.oo-ui-labelElement:first-child {
margin: 0;
}
}
/*
* Only apply stick header style on the special pages
* Sometimes wiki transclude those pages and these styles will break regular pages
*/
.ns-special {
.mw-changeslist h4 {
.citizen-sticky-header( 0, false, false );
}
// Disable sticky header
#citizen-body-header-sticky-sentinel {
display: none;
}
}
/*
* Make changelist looks like a timeline
* And also sync different history lists into the same styles
*/
.mw-changeslist,
.mw-contributions-list {
position: relative;
font-size: 0.875rem;
/* Timeline line */
&::before {
position: absolute;
top: 0;
bottom: 0;
left: 4px;
width: 1px;
content: '';
background: var( --border-color-base--darker );
}
}
.mw-changeslist ul,
.mw-contributions-list {
margin: 0 !important;
list-style: none;
}
.mw-changeslist-line,
.mw-contributions-list li {
padding: var( --space-sm ) var( --space-xs ) !important;
margin: 0 0 0 16px !important;
color: var( --color-base--subtle );
& + & {
border-top: 1px solid var( --border-color-base );
}
&:hover {
background-color: var( --background-color-quiet--hover );
&::before {
background-color: var( --color-base--emphasized );
}
}
/* Timeline dot */
&::before {
position: absolute;
left: 0;
display: block;
width: 8px;
height: 8px;
margin-top: 7px;
content: '';
background-color: var( --color-base--subtle );
border-radius: 100%;
}
.comment {
color: var( --color-base ); // Make comment more readable
}
}
.mw-pager-navigation-bar {
margin: var( --space-md ) 0;
color: var( --color-base--subtle );
}