Move to stylelint

pull/4027/head
Chocobozzz 2021-04-28 16:41:07 +02:00
parent 7d026caf68
commit 931d343018
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
118 changed files with 1389 additions and 1056 deletions

View File

@ -1,30 +0,0 @@
files:
include:
- "src/app/**/*.scss"
- "src/assets/**/*.scss"
- "src/sass/**/*.scss"
- "src/standalone/**/*.scss"
syntax:
include:
- scss
- sass
rules:
property-sort-order: 0
attribute-quotes: 0
border-zero: 0
no-color-keywords: 0
no-color-literals: 0
no-css-comments: 0
no-important: 0
no-trailing-zero: 1
space-after-bang: 1
space-before-bang: 1
space-after-colon: 1
space-before-colon: 1
clean-import-paths: 0
hex-length: 1
hex-notation: 0
nesting-depth:
- 1
- max-depth: 4
indentation: 2

29
client/.stylelintrc.json Normal file
View File

@ -0,0 +1,29 @@
{
"extends": "stylelint-config-sass-guidelines",
"rules": {
"scss/at-import-no-partial-leading-underscore": null,
"color-hex-case": null,
"color-hex-length": null,
"order/properties-alphabetical-order": null,
"selector-pseudo-element-no-unknown": [
true,
{
"ignorePseudoElements": [ "ng-deep" ]
}
],
"max-nesting-depth": [
8,
{
"ignore": [ "blockless-at-rules", "pseudo-classes" ]
}
],
"selector-max-compound-selectors": 9,
"selector-no-qualifying-type": null,
"scss/at-extend-no-missing-placeholder": null,
"number-leading-zero": null,
"rule-empty-line-before": null,
"selector-max-id": null,
"scss/at-function-pattern": null,
"function-parentheses-space-inside": "never-single-line"
}
}

View File

@ -15,14 +15,14 @@
"scripts": { "scripts": {
"lint": "npm run lint-ts && npm run lint-scss", "lint": "npm run lint-ts && npm run lint-scss",
"lint-ts": "tslint --project ./tsconfig.app.json -c ./tslint.json 'src/app/**/*.ts' 'src/standalone/**/*.ts'", "lint-ts": "tslint --project ./tsconfig.app.json -c ./tslint.json 'src/app/**/*.ts' 'src/standalone/**/*.ts'",
"lint-scss": "sass-lint -c .sass-lint.yml", "lint-scss": "stylelint 'src/**/*.scss'",
"webpack": "webpack", "webpack": "webpack",
"tslint": "tslint", "tslint": "tslint",
"ng": "ng", "ng": "ng",
"webpack-bundle-analyzer": "webpack-bundle-analyzer", "webpack-bundle-analyzer": "webpack-bundle-analyzer",
"webdriver-manager": "webdriver-manager", "webdriver-manager": "webdriver-manager",
"ngx-extractor": "ngx-extractor", "ngx-extractor": "ngx-extractor",
"sass-lint": "sass-lint" "stylelint": "stylelint"
}, },
"typings": "*.d.ts", "typings": "*.d.ts",
"resolutions": { "resolutions": {
@ -106,13 +106,14 @@
"rxjs": "^6.5.2", "rxjs": "^6.5.2",
"sanitize-html": "^2.1.2", "sanitize-html": "^2.1.2",
"sass": "^1.29.0", "sass": "^1.29.0",
"sass-lint": "^1.13.1",
"sass-loader": "^10", "sass-loader": "^10",
"sass-resources-loader": "^2.0.0", "sass-resources-loader": "^2.0.0",
"sha.js": "^2.4.11", "sha.js": "^2.4.11",
"socket.io-client": "^4.0.1", "socket.io-client": "^4.0.1",
"stream-browserify": "^3.0.0", "stream-browserify": "^3.0.0",
"stream-http": "^3.0.0", "stream-http": "^3.0.0",
"stylelint": "^13.13.0",
"stylelint-config-sass-guidelines": "^8.0.0",
"terser-webpack-plugin": "^4", "terser-webpack-plugin": "^4",
"ts-loader": "^8.0.14", "ts-loader": "^8.0.14",
"tslib": "^2.0.0", "tslib": "^2.0.0",

View File

@ -21,7 +21,7 @@
{{ following }} {{ following }}
</a> </a>
<button i18n class="showMore" *ngIf="!loadedAllFollowings && canLoadMoreFollowings()" (click)="loadAllFollowings()">Show full list</button> <button i18n class="show-more" *ngIf="!loadedAllFollowings && canLoadMoreFollowings()" (click)="loadAllFollowings()">Show full list</button>
</div> </div>
</div> </div>

View File

@ -17,7 +17,7 @@ a {
justify-content: flex-start; justify-content: flex-start;
} }
.showMore { .show-more {
@include peertube-button-link; @include peertube-button-link;
@include grey-button; @include grey-button;

View File

@ -63,7 +63,8 @@
position: relative; position: relative;
&:hover, &:active { &:hover,
&:active {
&::after { &::after {
content: '#'; content: '#';
display: inline-block; display: inline-block;
@ -71,7 +72,8 @@
} }
} }
.middle-title, .section-title { .middle-title,
.section-title {
display: inline-block; display: inline-block;
} }

View File

@ -45,7 +45,8 @@
.p2p-privacy, .p2p-privacy,
my-about-peertube-contributors { my-about-peertube-contributors {
::ng-deep { ::ng-deep {
p, li { p,
li {
font-size: 15px; font-size: 15px;
} }
} }

View File

@ -65,13 +65,13 @@
} }
.description-html { .description-html {
@include fade-text(30px, pvar(--channelBackgroundColor));
grid-column: 2 / 4; grid-column: 2 / 4;
grid-row: 2; grid-row: 2;
max-height: 80px; max-height: 80px;
font-size: 16px; font-size: 16px;
@include fade-text(30px, pvar(--channelBackgroundColor));
} }
} }

View File

@ -40,7 +40,7 @@ my-user-moderation-dropdown,
} }
.copy-button { .copy-button {
border: none; border: 0;
} }
.account-info { .account-info {
@ -104,9 +104,9 @@ my-user-moderation-dropdown,
} }
.description:not(.expanded) { .description:not(.expanded) {
max-height: 70px;
@include fade-text(30px, pvar(--submenuBackgroundColor)); @include fade-text(30px, pvar(--submenuBackgroundColor));
max-height: 70px;
} }
.show-more { .show-more {

View File

@ -57,7 +57,7 @@ input[type=submit] {
display: flex; display: flex;
margin-left: auto; margin-left: auto;
& + .form-error { + .form-error {
display: inline; display: inline;
margin-left: 5px; margin-left: 5px;
} }
@ -84,7 +84,8 @@ textarea {
} }
.disabled-checkbox-extra { .disabled-checkbox-extra {
&, ::ng-deep label { &,
::ng-deep label {
opacity: .5; opacity: .5;
pointer-events: none; pointer-events: none;
} }

View File

@ -13,7 +13,8 @@ a {
@include disable-default-a-behaviour; @include disable-default-a-behaviour;
display: inline-block; display: inline-block;
&, &:hover { &,
&:hover {
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
} }

View File

@ -5,7 +5,8 @@ a {
@include disable-default-a-behaviour; @include disable-default-a-behaviour;
display: inline-block; display: inline-block;
&, &:hover { &,
&:hover {
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
} }

View File

@ -1,4 +1,4 @@
@import "mixins"; @import 'mixins';
.form-sub-title { .form-sub-title {
flex-grow: 0; flex-grow: 0;

View File

@ -5,7 +5,8 @@ a {
@include disable-default-a-behaviour; @include disable-default-a-behaviour;
display: inline-block; display: inline-block;
&, &:hover { &,
&:hover {
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
} }

View File

@ -49,7 +49,8 @@ my-global-icon {
max-height: 22px; max-height: 22px;
} }
div, p { div,
p {
@include ellipsis; @include ellipsis;
} }

View File

@ -1,6 +1,6 @@
@import '_variables'; @import '_variables';
@import '_mixins'; @import '_mixins';
.update-button[disabled="true"] ::ng-deep .action-button { .update-button[disabled=true] ::ng-deep .action-button {
cursor: default !important; cursor: default !important;
} }

View File

@ -5,7 +5,8 @@ h2 {
margin-bottom: 20px; margin-bottom: 20px;
} }
input[type=submit], button { input[type=submit],
button {
@include peertube-button; @include peertube-button;
@include orange-button; @include orange-button;

View File

@ -27,7 +27,7 @@
my-global-icon { my-global-icon {
@include apply-svg-color(pvar(--greyForegroundColor)); @include apply-svg-color(pvar(--greyForegroundColor));
&[iconName="npm"] { &[iconName=npm] {
@include fill-svg-color(pvar(--greyForegroundColor)); @include fill-svg-color(pvar(--greyForegroundColor));
} }
} }
@ -49,7 +49,7 @@
justify-content: space-between; justify-content: space-between;
.description { .description {
opacity: 0.8 opacity: 0.8;
} }
} }

View File

@ -51,7 +51,7 @@ pre {
} }
.job-error { .job-error {
color: red; color: #ff0000;
} }
.badge { .badge {

View File

@ -66,7 +66,7 @@
ng-select, ng-select,
my-button { my-button {
width: 100% !important; width: 100% !important;
margin-left: 0px !important; margin-left: 0 !important;
margin-bottom: 10px !important; margin-bottom: 10px !important;
} }
@ -85,7 +85,7 @@
ng-select, ng-select,
my-button { my-button {
width: 100% !important; width: 100% !important;
margin-left: 0px !important; margin-left: 0 !important;
margin-bottom: 10px !important; margin-bottom: 10px !important;
} }

View File

@ -37,7 +37,8 @@ my-select-custom-value {
display: block; display: block;
} }
input[type=submit], button { input[type=submit],
button {
@include peertube-button; @include peertube-button;
@include orange-button; @include orange-button;

View File

@ -7,7 +7,7 @@ input:not([type=submit]):not([type=checkbox]) {
display: block; display: block;
border-top-right-radius: 0; border-top-right-radius: 0;
border-bottom-right-radius: 0; border-bottom-right-radius: 0;
border-right: none; border-right: 0;
} }
input[type=submit] { input[type=submit] {

View File

@ -24,7 +24,7 @@ tr.banned > td {
.user-table-primary-text .glyphicon { .user-table-primary-text .glyphicon {
font-size: 80%; font-size: 80%;
color: gray; color: #808080;
margin-left: 0.1rem; margin-left: 0.1rem;
} }

View File

@ -33,7 +33,8 @@ input[type=email] {
} }
} }
.create-an-account, .forgot-password-button { .create-an-account,
.forgot-password-button {
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
cursor: pointer; cursor: pointer;
transition: opacity cubic-bezier(0.39, 0.575, 0.565, 1); transition: opacity cubic-bezier(0.39, 0.575, 0.565, 1);
@ -49,7 +50,7 @@ input[type=email] {
justify-content: space-around; justify-content: space-around;
flex-wrap: wrap; flex-wrap: wrap;
& > div { > div {
flex: 1 1; flex: 1 1;
} }
@ -65,7 +66,8 @@ input[type=email] {
form { form {
margin: 0; margin: 0;
&, input { &,
input {
width: 100%; width: 100%;
} }
@ -82,7 +84,8 @@ input[type=email] {
color: var(--mainColor); color: var(--mainColor);
&:hover, &:active { &:hover,
&:active {
color: var(--mainHoverColor); color: var(--mainHoverColor);
} }
} }
@ -111,7 +114,7 @@ input[type=email] {
min-width: 100px; min-width: 100px;
&:hover { &:hover {
background-color: rgba(209, 215, 224, 0.5) background-color: rgba(209, 215, 224, 0.5);
} }
} }
} }
@ -138,7 +141,7 @@ input[type=email] {
} }
} }
@mixin columnReverseDisplay { @mixin column-reverse-display {
flex-direction: column-reverse; flex-direction: column-reverse;
.login-form-and-externals, .login-form-and-externals,
@ -168,14 +171,14 @@ input[type=email] {
@media screen and (max-width: breakpoint(md)) { @media screen and (max-width: breakpoint(md)) {
.wrapper { .wrapper {
@include columnReverseDisplay(); @include column-reverse-display();
} }
} }
@media screen and (max-width: breakpoint(md) + $menu-width) { @media screen and (max-width: breakpoint(md) + $menu-width) {
:host-context(.main-col:not(.expanded)) { :host-context(.main-col:not(.expanded)) {
.wrapper { .wrapper {
@include columnReverseDisplay(); @include column-reverse-display();
} }
} }
} }

View File

@ -21,7 +21,7 @@ input[type=submit] {
display: flex; display: flex;
margin-left: auto; margin-left: auto;
& + .form-error { + .form-error {
display: inline; display: inline;
margin-left: 5px; margin-left: 5px;
} }

View File

@ -32,7 +32,8 @@ my-user-notifications {
.header { .header {
flex-direction: column; flex-direction: column;
& >:first-child, .peertube-select-container { > :first-child,
.peertube-select-container {
margin-bottom: 15px; margin-bottom: 15px;
} }

View File

@ -10,7 +10,7 @@
font-size: 16px; font-size: 16px;
} }
& > div { > div {
padding: 10px; padding: 10px;
&:first-child { &:first-child {

View File

@ -2,12 +2,12 @@
@import '_mixins'; @import '_mixins';
.row { .row {
@include sub-menu-h1;
flex-direction: column; flex-direction: column;
width: 100%; width: 100%;
& > my-top-menu-dropdown:nth-child(1) { > my-top-menu-dropdown:nth-child(1) {
flex-grow: 1; flex-grow: 1;
} }
@include sub-menu-h1;
} }

View File

@ -66,7 +66,8 @@ textarea {
width: auto !important; width: auto !important;
} }
label[for=name] + div, textarea { label[for=name] + div,
textarea {
width: 100%; width: 100%;
} }
} }

View File

@ -83,7 +83,7 @@ input[type=text] {
margin: auto; margin: auto;
.video-channel-name { .video-channel-name {
margin-left: 0px !important; margin-left: 0 !important;
} }
} }
} }

View File

@ -39,12 +39,12 @@
} }
.delete-history { .delete-history {
grid-column: 4;
@include peertube-button; @include peertube-button;
@include grey-button; @include grey-button;
@include button-with-icon; @include button-with-icon;
grid-column: 4;
font-size: 15px; font-size: 15px;
} }
} }

View File

@ -2,12 +2,12 @@
@import '_mixins'; @import '_mixins';
.row { .row {
@include sub-menu-h1;
flex-direction: column; flex-direction: column;
width: 100%; width: 100%;
& > my-top-menu-dropdown:nth-child(1) { > my-top-menu-dropdown:nth-child(1) {
flex-grow: 1; flex-grow: 1;
} }
@include sub-menu-h1;
} }

View File

@ -13,15 +13,15 @@
display: inline-flex; display: inline-flex;
.video-table-video-image { .video-table-video-image {
@include miniature-thumbnail;
$image-height: 45px; $image-height: 45px;
@include miniature-thumbnail;
height: $image-height; height: $image-height;
width: #{(16/9) * $image-height}; width: #{(16/9) * $image-height};
margin-right: 0.5rem; margin-right: 0.5rem;
border-radius: 2px; border-radius: 2px;
border: none; border: 0;
background: transparent; background: transparent;
display: inline-flex; display: inline-flex;
justify-content: center; justify-content: center;
@ -60,7 +60,7 @@
div .glyphicon { div .glyphicon {
font-size: 80%; font-size: 80%;
color: gray; color: #808080;
margin-left: 0.1rem; margin-left: 0.1rem;
} }

View File

@ -6,7 +6,7 @@ pre {
} }
.video-import-error { .video-import-error {
color: red; color: #ff0000;
} }
.badge { .badge {

View File

@ -26,7 +26,7 @@
.playlist-buttons { .playlist-buttons {
display: flex; display: flex;
margin: 30px 0 10px 0; margin: 30px 0 10px;
.share-button { .share-button {
@include peertube-button; @include peertube-button;
@ -42,7 +42,8 @@
.cdk-drag-preview { .cdk-drag-preview {
box-sizing: border-box; box-sizing: border-box;
border-radius: 4px; border-radius: 4px;
box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), box-shadow:
0 5px 5px -3px rgba(0, 0, 0, 0.2),
0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 8px 10px 1px rgba(0, 0, 0, 0.14),
0 3px 14px 2px rgba(0, 0, 0, 0.12); 0 3px 14px 2px rgba(0, 0, 0, 0.12);
} }
@ -56,7 +57,7 @@
} }
.video:last-child { .video:last-child {
border: none; border: 0;
} }
.videos.cdk-drop-list-dragging .video:not(.cdk-drag-placeholder) { .videos.cdk-drop-list-dragging .video:not(.cdk-drag-placeholder) {

View File

@ -26,12 +26,12 @@ h1 {
} }
.action-button-delete-selection { .action-button-delete-selection {
display: inline-block;
@include peertube-button; @include peertube-button;
@include orange-button; @include orange-button;
@include button-with-icon(21px); @include button-with-icon(21px);
display: inline-block;
my-global-icon { my-global-icon {
@include apply-svg-color(#fff); @include apply-svg-color(#fff);
} }

View File

@ -46,7 +46,7 @@ input[type=submit] {
font-weight: $font-semibold; font-weight: $font-semibold;
display: inline-block; display: inline-block;
padding: 0 10px 0 10px; padding: 0 10px;
white-space: nowrap; white-space: nowrap;
background: transparent; background: transparent;

View File

@ -84,7 +84,7 @@ button {
border-color: pvar(--mainColor) transparent transparent transparent; border-color: pvar(--mainColor) transparent transparent transparent;
} }
& + div { + div {
font-size: 15px; font-size: 15px;
} }
} }

View File

@ -9,19 +9,16 @@ svg {
stroke-dashoffset: 0; stroke-dashoffset: 0;
&.circle { &.circle {
-webkit-animation: dash .9s ease-in-out;
animation: dash .9s ease-in-out; animation: dash .9s ease-in-out;
} }
&.line { &.line {
stroke-dashoffset: 1000; stroke-dashoffset: 1000;
-webkit-animation: dash .9s .35s ease-in-out forwards;
animation: dash .9s .35s ease-in-out forwards; animation: dash .9s .35s ease-in-out forwards;
} }
&.check { &.check {
stroke-dashoffset: -100; stroke-dashoffset: -100;
-webkit-animation: dash-check .9s .35s ease-in-out forwards;
animation: dash-check .9s .35s ease-in-out forwards; animation: dash-check .9s .35s ease-in-out forwards;
} }
} }
@ -38,16 +35,6 @@ svg {
text-align: center; text-align: center;
} }
@-webkit-keyframes dash {
0% {
stroke-dashoffset: 1000;
}
100% {
stroke-dashoffset: 0;
}
}
@keyframes dash { @keyframes dash {
0% { 0% {
stroke-dashoffset: 1000; stroke-dashoffset: 1000;
@ -57,15 +44,6 @@ svg {
} }
} }
@-webkit-keyframes dash-check {
0% {
stroke-dashoffset: -100;
}
100% {
stroke-dashoffset: 900;
}
}
@keyframes dash-check { @keyframes dash-check {
0% { 0% {
stroke-dashoffset: -100; stroke-dashoffset: -100;

View File

@ -131,10 +131,10 @@
} }
.owner-description { .owner-description {
@include fade-text(120px, pvar(--mainBackgroundColor));
max-height: 140px; max-height: 140px;
word-break: break-word; word-break: break-word;
@include fade-text(120px, pvar(--mainBackgroundColor));
} }
} }
@ -150,7 +150,7 @@
} }
.copy-button { .copy-button {
border: none; border: 0;
} }
@media screen and (max-width: 1400px) { @media screen and (max-width: 1400px) {
@ -178,9 +178,9 @@
} }
.channel-description:not(.expanded) { .channel-description:not(.expanded) {
max-height: 70px;
@include fade-text(30px, pvar(--channelBackgroundColor)); @include fade-text(30px, pvar(--channelBackgroundColor));
max-height: 70px;
} }
.show-more { .show-more {
@ -220,10 +220,10 @@
} }
.owner-description { .owner-description {
@include fade-text(30px, pvar(--mainBackgroundColor));
grid-column: 2; grid-column: 2;
max-height: 70px; max-height: 70px;
@include fade-text(30px, pvar(--mainBackgroundColor));
} }
.view-account { .view-account {

View File

@ -16,6 +16,6 @@ label {
} }
.warning-replace-caption { .warning-replace-caption {
color: red; color: #ff0000;
margin-top: 10px; margin-top: 10px;
} }

View File

@ -150,7 +150,7 @@ p-calendar {
@include media-breakpoint-up(md) { @include media-breakpoint-up(md) {
@include make-col(7); @include make-col(7);
& + .col-video-edit { + .col-video-edit {
@include make-col(5); @include make-col(5);
} }
} }
@ -158,7 +158,7 @@ p-calendar {
@include media-breakpoint-up(xl) { @include media-breakpoint-up(xl) {
@include make-col(8); @include make-col(8);
& + .col-video-edit { + .col-video-edit {
@include make-col(4); @include make-col(4);
} }
} }
@ -169,7 +169,7 @@ p-calendar {
@include media-breakpoint-up(md) { @include media-breakpoint-up(md) {
@include make-col(8); @include make-col(8);
& + .col-video-edit { + .col-video-edit {
@include make-col(4); @include make-col(4);
} }
} }

View File

@ -6,7 +6,7 @@ $width-size: 190px;
.alert.alert-danger { .alert.alert-danger {
text-align: center; text-align: center;
& > div { > div {
font-weight: $font-semibold; font-weight: $font-semibold;
} }
} }
@ -17,10 +17,10 @@ $width-size: 190px;
align-items: center; align-items: center;
.upload-icon { .upload-icon {
@include apply-svg-color(#C6C6C6);
width: 90px; width: 90px;
margin-bottom: 25px; margin-bottom: 25px;
@include apply-svg-color(#C6C6C6);
} }
.peertube-select-container { .peertube-select-container {

View File

@ -44,7 +44,7 @@ $nav-link-height: 40px;
::ng-deep .video-add-nav { ::ng-deep .video-add-nav {
border-bottom: $border-width $border-type $border-color; border-bottom: $border-width $border-type $border-color;
margin: 20px 0 0 0 !important; margin: 20px 0 0 !important;
&.hide-nav { &.hide-nav {
display: none !important; display: none !important;

View File

@ -57,7 +57,9 @@ form {
} }
} }
&:focus, &:active, &:hover { &:focus,
&:active,
&:hover {
my-global-icon svg { my-global-icon svg {
background-color: #C6C6C6; background-color: #C6C6C6;
color: pvar(--mainBackgroundColor); color: pvar(--mainBackgroundColor);

View File

@ -62,7 +62,7 @@ my-actor-avatar {
display: inline-flex; display: inline-flex;
padding-right: 6px; padding-right: 6px;
padding-left: 6px; padding-left: 6px;
color: white !important; color: #fff !important;
} }
.comment-account { .comment-account {
@ -133,7 +133,10 @@ my-actor-avatar {
cursor: pointer; cursor: pointer;
margin-right: 10px; margin-right: 10px;
&:hover, &:active, &:focus, &:focus-visible { &:hover,
&:active,
&:focus,
&:focus-visible {
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
} }
} }

View File

@ -11,7 +11,8 @@
cursor: pointer; cursor: pointer;
} }
.glyphicon, .comment-thread-loading { .glyphicon,
.comment-thread-loading {
margin-right: 5px; margin-right: 5px;
display: inline-block; display: inline-block;
font-size: 13px; font-size: 13px;
@ -40,7 +41,7 @@
#dropdown-sort-comments { #dropdown-sort-comments {
font-weight: 600; font-weight: 600;
text-transform: uppercase; text-transform: uppercase;
border: none; border: 0;
transform: translateY(-7%); transform: translateY(-7%);
} }

View File

@ -8,7 +8,8 @@
margin-bottom: 25px; margin-bottom: 25px;
flex-wrap: wrap-reverse; flex-wrap: wrap-reverse;
.title-page.active, .title-page.title-page-single { .title-page.active,
.title-page.title-page-single {
margin-bottom: unset; margin-bottom: unset;
margin-right: .5rem !important; margin-right: .5rem !important;
} }

View File

@ -45,7 +45,7 @@
my-global-icon { my-global-icon {
&:not(.active) { &:not(.active) {
opacity: .5 opacity: .5;
} }
::ng-deep { ::ng-deep {

View File

@ -79,7 +79,7 @@
<span [innerHTML]="getRatePopoverText()"></span> <span [innerHTML]="getRatePopoverText()"></span>
</ng-template> </ng-template>
<div class="video-actions fullWidth justify-content-end"> <div class="video-actions full-width justify-content-end">
<button <button
[ngbPopover]="getRatePopoverText() && ratePopoverText" [ngClass]="{ 'activated': userRating === 'like' }" (click)="setLike()" (keyup.enter)="setLike()" [ngbPopover]="getRatePopoverText() && ratePopoverText" [ngClass]="{ 'activated': userRating === 'like' }" (click)="setLike()" (keyup.enter)="setLike()"
class="action-button action-button-like" [attr.aria-pressed]="userRating === 'like'" [attr.aria-label]="tooltipLike" class="action-button action-button-like" [attr.aria-pressed]="userRating === 'like'" [attr.aria-label]="tooltipLike"

View File

@ -7,11 +7,11 @@ $player-factor: 16/9;
$video-info-margin-left: 44px; $video-info-margin-left: 44px;
@function getPlayerHeight ($width) { @function getPlayerHeight ($width) {
@return calc(#{$width} / #{$player-factor}) @return calc(#{$width} / #{$player-factor});
} }
@function getPlayerWidth ($height) { @function getPlayerWidth ($height) {
@return calc(#{$height} * #{$player-factor}) @return calc(#{$height} * #{$player-factor});
} }
@mixin playlist-below-player { @mixin playlist-below-player {
@ -24,11 +24,11 @@ $video-info-margin-left: 44px;
.root { .root {
&.theater-enabled #video-wrapper { &.theater-enabled #video-wrapper {
$height: calc(100vh - #{$header-height} - #{$theater-bottom-space});
flex-direction: column; flex-direction: column;
justify-content: center; justify-content: center;
$height: calc(100vh - #{$header-height} - #{$theater-bottom-space});
#videojs-wrapper { #videojs-wrapper {
width: 100%; width: 100%;
height: $height; height: $height;
@ -141,7 +141,7 @@ $video-info-margin-left: 44px;
.video-info-first-row { .video-info-first-row {
display: flex; display: flex;
& > div:first-child { > div:first-child {
flex-grow: 1; flex-grow: 1;
} }
@ -207,7 +207,7 @@ $video-info-margin-left: 44px;
} }
.video-actions-rates { .video-actions-rates {
margin: 0 0 10px 0; margin: 0 0 10px;
align-items: start; align-items: start;
width: max-content; width: max-content;
margin-left: auto; margin-left: auto;
@ -231,7 +231,7 @@ $video-info-margin-left: 44px;
font-size: 100%; font-size: 100%;
font-weight: $font-semibold; font-weight: $font-semibold;
display: inline-block; display: inline-block;
padding: 0 10px 0 10px; padding: 0 10px;
white-space: nowrap; white-space: nowrap;
background-color: transparent !important; background-color: transparent !important;
color: pvar(--actionButtonColor); color: pvar(--actionButtonColor);
@ -346,7 +346,8 @@ $video-info-margin-left: 44px;
} }
} }
.glyphicon, .description-loading { .glyphicon,
.description-loading {
margin-left: 3px; margin-left: 3px;
} }
@ -396,7 +397,7 @@ $video-info-margin-left: 44px;
&.video-attribute-tags { &.video-attribute-tags {
.video-attribute-value:not(:nth-child(2)) { .video-attribute-value:not(:nth-child(2)) {
&::before { &::before {
content: ', ' content: ', ';
} }
} }
} }

View File

@ -16,7 +16,7 @@
padding-top: 30px; padding-top: 30px;
.section-title { .section-title {
border-top: none !important; border-top: 0 !important;
} }
} }
@ -33,12 +33,14 @@
} }
a { a {
&:hover, &:focus:not(.focus-visible), &:active { color: pvar(--mainForegroundColor);
&:hover,
&:focus:not(.focus-visible),
&:active {
text-decoration: none; text-decoration: none;
outline: none; outline: none;
} }
color: pvar(--mainForegroundColor);
} }
} }

View File

@ -79,7 +79,7 @@
display: inline-block; display: inline-block;
width: 23px; width: 23px;
height: 24px; height: 24px;
margin-right: .5rem; margin-right: 0.5rem;
} }
@media screen and (max-width: $mobile-view) { @media screen and (max-width: $mobile-view) {

View File

@ -19,9 +19,6 @@
z-index: -1024; z-index: -1024;
visibility: hidden; visibility: hidden;
opacity: 0; opacity: 0;
-webkit-transition: opacity 0.15s linear;
-moz-transition: opacity 0.15s linear;
-o-transition: opacity 0.15s linear;
transition: opacity 0.15s linear; transition: opacity 0.15s linear;
} }

View File

@ -44,7 +44,8 @@ li.suggestion {
// soft border-radius for the last suggestion and the link inside // soft border-radius for the last suggestion and the link inside
&:last-of-type { &:last-of-type {
&, & ::ng-deep a { &,
::ng-deep a {
border-bottom-right-radius: 3px; border-bottom-right-radius: 3px;
border-bottom-left-radius: 3px; border-bottom-left-radius: 3px;
} }
@ -74,7 +75,7 @@ li.suggestion {
#typeahead-container { #typeahead-container {
input { input {
border: 1px solid pvar(--mainBackgroundColor) !important; border: 1px solid pvar(--mainBackgroundColor) !important;
box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 20px 0px; box-shadow: rgba(0, 0, 0, 0.1) 0 1px 20px 0;
flex-grow: 1; flex-grow: 1;
transition: box-shadow .3s ease, width .2s ease; transition: box-shadow .3s ease, width .2s ease;
} }
@ -95,7 +96,7 @@ li.suggestion {
right: 10px; right: 10px;
} }
& > div:last-child { > div:last-child {
// we have to switch the display and not the opacity, // we have to switch the display and not the opacity,
// to avoid clashing with the rest of the interface. // to avoid clashing with the rest of the interface.
display: none; display: none;
@ -103,7 +104,7 @@ li.suggestion {
&:focus, &:focus,
::ng-deep &:focus-within { ::ng-deep &:focus-within {
& > div:last-child { > div:last-child {
@media screen and (min-width: $mobile-view) { @media screen and (min-width: $mobile-view) {
display: initial !important; display: initial !important;
} }
@ -111,12 +112,12 @@ li.suggestion {
#typeahead-help, #typeahead-help,
#typeahead-instructions, #typeahead-instructions,
li.suggestion { li.suggestion {
box-shadow: rgba(0, 0, 0, 0.2) 0px 10px 20px -5px; box-shadow: rgba(0, 0, 0, 0.2) 0 10px 20px -5px;
} }
} }
::ng-deep input { ::ng-deep input {
box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 20px 0px; box-shadow: rgba(0, 0, 0, 0.2) 0 1px 20px 0;
border-end-start-radius: 0; border-end-start-radius: 0;
border-end-end-radius: 0; border-end-end-radius: 0;

View File

@ -2,9 +2,11 @@
a { a {
@include disable-default-a-behaviour; @include disable-default-a-behaviour;
width: 100%; width: 100%;
&, &:hover { &,
&:hover {
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
&.focus-visible { &.focus-visible {
@ -23,10 +25,10 @@ a {
} }
my-global-icon { my-global-icon {
@include apply-svg-color(pvar(--mainForegroundColor));
width: 17px; width: 17px;
position: relative; position: relative;
top: -2px; top: -2px;
margin: 5px; margin: 5px;
@include apply-svg-color(pvar(--mainForegroundColor));
} }

View File

@ -5,12 +5,12 @@
@include peertube-button-link; @include peertube-button-link;
@include orange-button; @include orange-button;
border-radius: 0;
&.focus-visible, &.focus-visible,
&:focus { &:focus {
box-shadow: none; box-shadow: none;
} }
border-radius: 0;
} }
.modal-body { .modal-body {

View File

@ -24,8 +24,9 @@ $footer-links-base-opacity: .8;
background-color: rgba(255, 255, 255, 0.15); background-color: rgba(255, 255, 255, 0.15);
} }
&:hover, &.focus-visible { &:hover,
background-color: rgba(255, 255, 255, 0.10); &.focus-visible {
background-color: rgba(255, 255, 255, 0.1);
} }
my-global-icon { my-global-icon {
@ -60,7 +61,8 @@ menu {
margin: 0; margin: 0;
padding: 0; padding: 0;
&:focus, &:hover { &:focus,
&:hover {
overflow-y: auto; overflow-y: auto;
} }
@ -125,7 +127,7 @@ my-notification {
line-height: 1; line-height: 1;
&.show { &.show {
background-color: rgba(255, 255, 255, 0.20); background-color: rgba(255, 255, 255, 0.2);
box-shadow: inset 0 3px 5px rgba(0, 0, 0, .325); box-shadow: inset 0 3px 5px rgba(0, 0, 0, .325);
} }
@ -158,14 +160,14 @@ my-notification {
position: absolute; position: absolute;
right: -35px; right: -35px;
top: -8px; top: -8px;
color: grey; color: #808080;
width: $main-radius; width: $main-radius;
} }
} }
.dropdown-toggle { .dropdown-toggle {
&::after { &::after {
border: none; border: 0;
} }
} }
@ -193,11 +195,11 @@ my-actor-avatar {
} }
.logged-in-display-name { .logged-in-display-name {
@include disable-default-a-behaviour;
font-size: 16px; font-size: 16px;
font-weight: $font-semibold; font-weight: $font-semibold;
color: pvar(--menuForegroundColor); color: pvar(--menuForegroundColor);
@include disable-default-a-behaviour;
} }
.logged-in-username { .logged-in-username {
@ -251,7 +253,7 @@ my-actor-avatar {
} }
.login-buttons-block { .login-buttons-block {
margin: 30px 25px 35px 25px; margin: 30px 25px 35px;
> a { > a {
display: block; display: block;
@ -305,7 +307,8 @@ my-actor-avatar {
} }
.footer-links { .footer-links {
&, > div { &,
> div {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
} }
@ -388,29 +391,29 @@ my-actor-avatar {
.dropdown-item:hover, .dropdown-item:hover,
.dropdown-item:active { .dropdown-item:active {
&.settings-sensitive my-global-icon ::ng-deep svg { &.settings-sensitive my-global-icon ::ng-deep svg {
margin-top: 0px !important; margin-top: 0 !important;
} }
} }
} }
my-global-icon { my-global-icon {
&[iconName="playlists"] { &[iconName=playlists] {
height: 24px; height: 24px;
width: 24px; width: 24px;
margin-right: 16px; margin-right: 16px;
} }
&[iconName="videos"] { &[iconName=videos] {
position: relative; position: relative;
right: -1px; right: -1px;
} }
&[iconName="channel"] { &[iconName=channel] {
margin-top: -2px; margin-top: -2px;
} }
&[iconName="sign-out"] { &[iconName='sign-out'] {
position: relative; position: relative;
right: -2px; right: -2px;
height: 20px; height: 20px;

View File

@ -16,19 +16,20 @@
.notification-inbox-popover, .notification-inbox-popover,
.notification-inbox-link a { .notification-inbox-link a {
@include apply-svg-color(#808080); @include apply-svg-color(#808080);
::ng-deep {
svg {
transition: color .1s ease-in-out;
}
}
transition: all .1s ease-in-out; transition: all .1s ease-in-out;
border-radius: 25px; border-radius: 25px;
cursor: pointer; cursor: pointer;
&:hover, &:active { ::ng-deep svg {
background-color: rgba(255, 255, 255, 0.15); transition: color .1s ease-in-out;
}
&:hover,
&:active {
@include apply-svg-color(#fff); @include apply-svg-color(#fff);
background-color: rgba(255, 255, 255, 0.15);
} }
} }
@ -59,7 +60,7 @@
font-size: 14px; font-size: 14px;
font-family: $main-fonts; font-family: $main-fonts;
width: 400px; width: 400px;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.30); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
.loader { .loader {
display: flex; display: flex;
@ -80,7 +81,7 @@
max-height: 500px; max-height: 500px;
} }
& > my-user-notifications:nth-child(2) { > my-user-notifications:nth-child(2) {
overflow-y: auto; overflow-y: auto;
flex-grow: 1; flex-grow: 1;
} }
@ -110,7 +111,8 @@
background: transparent; background: transparent;
} }
a, button { a,
button {
color: rgba(20, 20, 20, 0.5); color: rgba(20, 20, 20, 0.5);
&:hover:not(:disabled) { &:hover:not(:disabled) {
@ -133,7 +135,8 @@
} }
} }
.notification-inbox-popover, .notification-inbox-link { .notification-inbox-popover,
.notification-inbox-link {
cursor: pointer; cursor: pointer;
position: relative; position: relative;

View File

@ -42,7 +42,7 @@ li {
text-align: center; text-align: center;
font-weight: 600; font-weight: 600;
font-size: 18px; font-size: 18px;
margin: 20px 0 40px 0; margin: 20px 0 40px;
} }
.columns { .columns {

View File

@ -5,7 +5,7 @@ input {
position: absolute; position: absolute;
visibility: hidden; visibility: hidden;
& + label { + label {
cursor: pointer; cursor: pointer;
text-indent: -9999px; text-indent: -9999px;
width: 35px; width: 35px;
@ -16,7 +16,7 @@ input {
position: relative; position: relative;
margin: 0; margin: 0;
&:after { &::after {
content: ''; content: '';
position: absolute; position: absolute;
top: 3px; top: 3px;
@ -28,7 +28,7 @@ input {
transition: 0.3s ease-out; transition: 0.3s ease-out;
} }
&:active:after { &:active::after {
width: 40px; width: 40px;
} }
} }
@ -36,7 +36,7 @@ input {
&:checked + label { &:checked + label {
background: pvar(--mainColor); background: pvar(--mainColor);
&:after { &::after {
left: calc(100% - 3px); left: calc(100% - 3px);
transform: translateX(-100%); transform: translateX(-100%);
} }

View File

@ -18,7 +18,7 @@ $input-border-radius: 3px;
font-family: monospace; font-family: monospace;
font-size: 13px; font-size: 13px;
border-bottom: none; border-bottom: 0;
border-bottom-left-radius: unset; border-bottom-left-radius: unset;
border-bottom-right-radius: unset; border-bottom-right-radius: unset;
} }
@ -51,7 +51,8 @@ $input-border-radius: 3px;
opacity: 0.6; opacity: 0.6;
} }
&:hover, &:active { &:hover,
&:active {
svg { svg {
opacity: 1; opacity: 1;
} }
@ -105,6 +106,8 @@ $input-border-radius: 3px;
} }
@mixin maximized-base { @mixin maximized-base {
$nav-preview-vertical-padding: 40px;
flex-direction: row; flex-direction: row;
z-index: #{z(header) - 1}; z-index: #{z(header) - 1};
position: fixed; position: fixed;
@ -115,20 +118,18 @@ $input-border-radius: 3px;
width: calc(100% - #{$menu-width}); width: calc(100% - #{$menu-width});
height: calc(100vh - #{$header-height}) !important; height: calc(100vh - #{$header-height}) !important;
$nav-preview-vertical-padding: 40px;
.nav-preview { .nav-preview {
@include nav-preview-medium(); @include nav-preview-medium();
padding-top: #{$nav-preview-vertical-padding / 2}; padding-top: #{$nav-preview-vertical-padding / 2};
padding-bottom: #{$nav-preview-vertical-padding / 2}; padding-bottom: #{$nav-preview-vertical-padding / 2};
padding-left: 0px; padding-left: 0;
padding-right: 0px; padding-right: 0;
position: absolute; position: absolute;
background-color: pvar(--mainBackgroundColor); background-color: pvar(--mainBackgroundColor);
width: 100% !important; width: 100% !important;
border-top: none; border-top: 0;
border-left: none; border-left: 0;
border-right: none; border-right: 0;
:last-child { :last-child {
margin-right: pvar(--horizontalMarginContent); margin-right: pvar(--horizontalMarginContent);
@ -148,7 +149,7 @@ $input-border-radius: 3px;
margin-top: #{$nav-preview-tab-height + $nav-preview-vertical-padding} !important; margin-top: #{$nav-preview-tab-height + $nav-preview-vertical-padding} !important;
height: calc(100vh - #{$header-height + $nav-preview-tab-height + $nav-preview-vertical-padding}) !important; height: calc(100vh - #{$header-height + $nav-preview-tab-height + $nav-preview-vertical-padding}) !important;
width: 50% !important; width: 50% !important;
border: none !important; border: 0 !important;
border-radius: unset !important; border-radius: unset !important;
} }
@ -249,11 +250,11 @@ $input-border-radius: 3px;
} }
@media only screen and (min-width: $small-view) { @media only screen and (min-width: $small-view) {
@include maximized-in-medium-view();
:host-context(.expanded) { :host-context(.expanded) {
@include in-medium-view(); @include in-medium-view();
} }
@include maximized-in-medium-view();
} }
@media only screen and (min-width: #{$small-view + $menu-width}) { @media only screen and (min-width: #{$small-view + $menu-width}) {

View File

@ -21,7 +21,7 @@
max-width: 100%; max-width: 100%;
&.no-image { &.no-image {
border: 2px solid grey; border: 2px solid #808080;
background-color: pvar(--mainBackgroundColor); background-color: pvar(--mainBackgroundColor);
} }
} }

View File

@ -41,9 +41,9 @@ ng-select ::ng-deep {
} }
my-select-options + input { my-select-options + input {
margin-left: 5px;
@include peertube-input-text($form-base-input-width); @include peertube-input-text($form-base-input-width);
margin-left: 5px;
display: block; display: block;
} }

View File

@ -4,8 +4,7 @@ p-inputmask {
::ng-deep input { ::ng-deep input {
width: 80px; width: 80px;
font-size: 15px; font-size: 15px;
border: 0;
border: none;
&:focus-within, &:focus-within,
&:focus { &:focus {

View File

@ -1,6 +1,6 @@
@import '_variables'; @import '_variables';
@import '_mixins'; @import '_mixins';
@import "./_bootstrap-variables"; @import './_bootstrap-variables';
@import '~bootstrap/scss/functions'; @import '~bootstrap/scss/functions';
@import '~bootstrap/scss/variables'; @import '~bootstrap/scss/variables';
@ -30,7 +30,7 @@ ngb-accordion ::ng-deep {
background-color: unset; background-color: unset;
padding: 0; padding: 0;
& + .collapse.show { + .collapse.show {
background-color: var(--submenuBackgroundColor); background-color: var(--submenuBackgroundColor);
} }
} }

View File

@ -19,7 +19,7 @@ table {
.more-info { .more-info {
font-style: italic; font-style: italic;
font-weight: initial; font-weight: initial;
font-size: 14px font-size: 14px;
} }
} }

View File

@ -8,6 +8,9 @@
.action-button { .action-button {
@include peertube-button; @include peertube-button;
display: inline-block;
padding: 0 10px;
&.button-styled { &.button-styled {
&.grey { &.grey {
@ -18,14 +21,13 @@
@include orange-button; @include orange-button;
} }
&:hover, &:active, &:focus { &:hover,
&:active,
&:focus {
background-color: $grey-background-color; background-color: $grey-background-color;
} }
} }
display: inline-block;
padding: 0 10px;
&::after { &::after {
display: none; display: none;
} }
@ -64,7 +66,8 @@
@include dropdown-with-icon-item; @include dropdown-with-icon-item;
} }
a, span { a,
span {
display: block; display: block;
width: 100%; width: 100%;
} }

View File

@ -1,5 +1,5 @@
.date-toggle { .date-toggle {
&:hover { &:hover {
cursor: default cursor: default;
} }
} }

View File

@ -5,14 +5,14 @@
width: 100%; width: 100%;
a { a {
color: black; color: #000;
display: block; display: block;
} }
} }
my-global-icon { my-global-icon {
@include apply-svg-color(pvar(--mainForegroundColor));
cursor: pointer; cursor: pointer;
width: 100%; width: 100%;
@include apply-svg-color(pvar(--mainForegroundColor))
} }

View File

@ -20,7 +20,7 @@
border: 4px solid; border: 4px solid;
border-radius: 50%; border-radius: 50%;
animation: loader 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite; animation: loader 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
border-color: #999999 transparent transparent transparent; border-color: #999999 transparent transparent;
} }
.loader div:nth-child(1) { .loader div:nth-child(1) {

View File

@ -2,20 +2,19 @@
@import '_mixins'; @import '_mixins';
.help-tooltip-button { .help-tooltip-button {
cursor: pointer; @include disable-outline;
border: none;
cursor: pointer;
border: 0;
margin: 5px; margin: 5px;
my-global-icon { my-global-icon {
@include apply-svg-color(pvar(--greyForegroundColor));
width: 17px; width: 17px;
position: relative; position: relative;
top: -1px; top: -1px;
@include apply-svg-color(pvar(--greyForegroundColor))
} }
@include disable-outline;
} }
::ng-deep { ::ng-deep {

View File

@ -9,7 +9,7 @@
</button> </button>
<div *ngIf="!isInMobileView" class="list-overflow-menu" ngbDropdown container="body" #dropdown="ngbDropdown" (mouseleave)="closeDropdownIfHovered(dropdown)" (mouseenter)="openDropdownOnHover(dropdown)"> <div *ngIf="!isInMobileView" class="list-overflow-menu" ngbDropdown container="body" #dropdown="ngbDropdown" (mouseleave)="closeDropdownIfHovered(dropdown)" (mouseenter)="openDropdownOnHover(dropdown)">
<button class="btn btn-outline-secondary btn-sm" [ngClass]="{ routeActive: active }" <button class="btn btn-outline-secondary btn-sm" [ngClass]="{ 'route-active': active }"
ngbDropdownAnchor (click)="dropdownAnchorClicked(dropdown)" role="button" ngbDropdownAnchor (click)="dropdownAnchorClicked(dropdown)" role="button"
> >
<span class="glyphicon glyphicon-chevron-down"></span> <span class="glyphicon glyphicon-chevron-down"></span>

View File

@ -15,13 +15,13 @@
button { button {
width: 30px; width: 30px;
border: none; border: 0;
&::after { &::after {
display: none; display: none;
} }
&.routeActive { &.route-active {
&::after { &::after {
display: inherit; display: inherit;
border: 2px solid pvar(--mainColor); border: 2px solid pvar(--mainColor);
@ -36,7 +36,7 @@ button {
margin-top: 0 !important; margin-top: 0 !important;
position: static; position: static;
right: auto; right: auto;
bottom: auto bottom: auto;
} }
.modal-body { .modal-body {

View File

@ -21,11 +21,11 @@
} }
my-global-icon { my-global-icon {
@include apply-svg-color(#333);
width: 24px; width: 24px;
margin-right: 11px; margin-right: 11px;
margin-left: 3px; margin-left: 3px;
@include apply-svg-color(#333);
} }
.avatar { .avatar {

View File

@ -11,7 +11,8 @@ label {
margin-right: 5px; margin-right: 5px;
} }
&, .progress { &,
.progress {
width: 100% !important; width: 100% !important;
} }

View File

@ -6,6 +6,7 @@
input { input {
@include peertube-input-text(250px); @include peertube-input-text(250px);
flex-grow: 1; flex-grow: 1;
} }
} }

View File

@ -17,12 +17,18 @@
word-wrap: break-word; word-wrap: break-word;
::ng-deep p:last-child { ::ng-deep p:last-child {
margin-bottom: 0px !important; margin-bottom: 0 !important;
} }
} }
} }
.screenratio { .screenratio {
@include block-ratio($selector: 'div, ::ng-deep iframe') {
width: 100% !important;
height: 100% !important;
left: 0;
};
div { div {
@include miniature-thumbnail; @include miniature-thumbnail;
@ -31,12 +37,6 @@
align-items: center; align-items: center;
color: pvar(--inputPlaceholderColor); color: pvar(--inputPlaceholderColor);
} }
@include block-ratio($selector: 'div, ::ng-deep iframe') {
width: 100% !important;
height: 100% !important;
left: 0;
};
} }
.input-group { .input-group {
@ -93,15 +93,15 @@ my-action-dropdown.show {
display: inline-flex; display: inline-flex;
.table-video-image { .table-video-image {
@include miniature-thumbnail;
$image-height: 45px; $image-height: 45px;
@include miniature-thumbnail;
height: $image-height; height: $image-height;
width: #{(16/9) * $image-height}; width: #{(16/9) * $image-height};
margin-right: 0.5rem; margin-right: 0.5rem;
border-radius: 2px; border-radius: 2px;
border: none; border: 0;
background: transparent; background: transparent;
display: inline-flex; display: inline-flex;
justify-content: center; justify-content: center;
@ -139,7 +139,7 @@ my-action-dropdown.show {
div .glyphicon { div .glyphicon {
font-size: 80%; font-size: 80%;
color: gray; color: #808080;
margin-left: 0.1rem; margin-left: 0.1rem;
} }

View File

@ -5,7 +5,8 @@ a {
@include disable-default-a-behaviour; @include disable-default-a-behaviour;
display: inline-block; display: inline-block;
&, &:hover { &,
&:hover {
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
} }

View File

@ -7,5 +7,5 @@ textarea {
.live-info { .live-info {
font-size: 15px; font-size: 15px;
margin: 40px 0 20px 0; margin: 40px 0 20px;
} }

View File

@ -11,7 +11,7 @@
width: 100%; width: 100%;
position: absolute; position: absolute;
bottom: 0; bottom: 0;
background-color: rgba(0, 0, 0, 0.20); background-color: rgba(0, 0, 0, 0.2);
div { div {
height: 100%; height: 100%;
@ -39,8 +39,8 @@
top: 5px; top: 5px;
font-weight: $font-bold; font-weight: $font-bold;
&.warning { background-color: orange; } &.warning { background-color: #ffa500; }
&.danger { background-color: red; } &.danger { background-color: #ff0000; }
} }
.video-thumbnail-duration-overlay, .video-thumbnail-duration-overlay,
@ -77,9 +77,9 @@
padding: 3px; padding: 3px;
my-global-icon { my-global-icon {
@include apply-svg-color(#fff);
width: 22px; width: 22px;
height: 22px; height: 22px;
@include apply-svg-color(#fff);
} }
} }

View File

@ -8,8 +8,8 @@
float: right; float: right;
padding: 0; padding: 0;
& > .btn, > .btn,
& > .dropdown > .dropdown-toggle { > .dropdown > .dropdown-toggle {
font-size: 15px; font-size: 15px;
} }
@ -20,7 +20,7 @@
&.big { &.big {
height: 35px; height: 35px;
& > button:first-child { > button:first-child {
width: max-content; width: max-content;
min-width: 175px; min-width: 175px;
} }
@ -37,15 +37,15 @@
} }
// Unlogged // Unlogged
& > .dropdown > .dropdown-toggle span { > .dropdown > .dropdown-toggle span {
padding-right: 3px; padding-right: 3px;
} }
// Logged // Logged
& > .btn { > .btn {
padding-right: 4px; padding-right: 4px;
& + .dropdown > button { + .dropdown > button {
padding-left: 2px; padding-left: 2px;
&::after { &::after {

View File

@ -3,7 +3,7 @@
@import '_mixins'; @import '_mixins';
@import '_miniature'; @import '_miniature';
$iconSize: 16px; $icon-size: 16px;
::ng-deep my-video-list-header { ::ng-deep my-video-list-header {
display: flex; display: flex;
@ -17,20 +17,19 @@ $iconSize: 16px;
my-feed { my-feed {
display: inline-block; display: inline-block;
width: calc(#{$iconSize} - 2px); width: calc(#{$icon-size} - 2px);
} }
.moderation-block { .moderation-block {
my-global-icon {
position: relative;
width: $iconSize;
}
margin-left: .4rem; margin-left: .4rem;
display: flex; display: flex;
justify-content: flex-end; justify-content: flex-end;
align-items: center; align-items: center;
my-global-icon {
position: relative;
width: $icon-size;
}
} }
} }
@ -72,7 +71,7 @@ $iconSize: 16px;
.title-page { .title-page {
margin-bottom: 10px; margin-bottom: 10px;
margin-right: 0px; margin-right: 0;
} }
} }
} }

View File

@ -28,7 +28,7 @@
border-top-right-radius: 0; border-top-right-radius: 0;
border-bottom-right-radius: 0; border-bottom-right-radius: 0;
border-right: none; border-right: 0;
select { select {
height: inherit; height: inherit;
@ -85,7 +85,7 @@
&.metadata-attribute-tags { &.metadata-attribute-tags {
.metadata-attribute-value:not(:nth-child(2)) { .metadata-attribute-value:not(:nth-child(2)) {
&::before { &::before {
content: ', ' content: ', ';
} }
} }
} }

View File

@ -41,7 +41,7 @@ my-actor-avatar {
} }
.video-info-blocked { .video-info-blocked {
color: red; color: #ff0000;
.blocked-reason::before { .blocked-reason::before {
content: ' - '; content: ' - ';
@ -49,7 +49,7 @@ my-actor-avatar {
} }
.video-info-nsfw { .video-info-nsfw {
color: red; color: #ff0000;
} }
.video-actions { .video-actions {

View File

@ -84,21 +84,23 @@ my-video-thumbnail,
width: auto; width: auto;
} }
.video-info-account, .video-info-timestamp { .video-info-account,
.video-info-timestamp {
color: pvar(--greyForegroundColor); color: pvar(--greyForegroundColor);
} }
} }
} }
.video-info-name { .video-info-name {
@include ellipsis;
font-size: 18px; font-size: 18px;
font-weight: $font-semibold; font-weight: $font-semibold;
display: inline-block; display: inline-block;
@include ellipsis;
} }
.more, my-edit-button { .more,
my-edit-button {
justify-self: flex-end; justify-self: flex-end;
margin-left: auto; margin-left: auto;
cursor: pointer; cursor: pointer;
@ -118,7 +120,7 @@ my-video-thumbnail,
display: flex; display: flex;
&::after { &::after {
border: none; border: 0;
} }
} }
} }

View File

@ -8,9 +8,9 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
@import './bootstrap'; @import './bootstrap';
@import './primeng-custom'; @import './primeng-custom';
@import './ng-select.scss'; @import './ng-select';
@import './classes.scss'; @import './classes';
[hidden] { [hidden] {
display: none !important; display: none !important;
@ -89,14 +89,16 @@ input.readonly {
background-color: pvar(--inputBackgroundColor) !important; background-color: pvar(--inputBackgroundColor) !important;
} }
input, textarea { input,
textarea {
outline: none; outline: none;
color: pvar(--inputForegroundColor); color: pvar(--inputForegroundColor);
} }
button { button {
background: unset;
@include disable-outline; @include disable-outline;
background: unset;
} }
label { label {
@ -121,12 +123,12 @@ code {
margin-top: 5px; margin-top: 5px;
} }
.input-error .input-error,
my-input-toggle-hidden ::ng-deep input { my-input-toggle-hidden ::ng-deep input {
border-color: $red !important; border-color: $red !important;
} }
.fullWidth { .full-width {
width: 100%; width: 100%;
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
@ -134,7 +136,7 @@ my-input-toggle-hidden ::ng-deep input {
} }
.glyphicon-black { .glyphicon-black {
color: black; color: #000;
} }
.row { .row {
@ -184,26 +186,26 @@ my-input-toggle-hidden ::ng-deep input {
width: 100%; width: 100%;
} }
&.lock-scroll .main-row > router-outlet + * { &.lock-scroll .main-row > router-outlet + * { /* stylelint-disable-line selector-max-compound-selectors */
// Lock and hide body scrollbars // Lock and hide body scrollbars
position: fixed; position: fixed;
// Lock and hide sub-menu scrollbars // Lock and hide sub-menu scrollbars
.sub-menu { .sub-menu { /* stylelint-disable-line */
overflow-x: hidden; overflow-x: hidden;
} }
} }
} }
.title-page { .title-page {
@include disable-default-a-behaviour;
opacity: 0.6; opacity: 0.6;
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
font-size: 16px; font-size: 16px;
display: inline-block; display: inline-block;
margin-right: 55px; margin-right: 55px;
font-weight: $font-semibold; font-weight: $font-semibold;
@include disable-default-a-behaviour;
border-bottom: 2px solid transparent; border-bottom: 2px solid transparent;
&.title-page-single { &.title-page-single {
@ -219,13 +221,19 @@ my-input-toggle-hidden ::ng-deep input {
font-size: 125%; font-size: 125%;
} }
&:hover, &:active, &:focus { &:hover,
&:active,
&:focus {
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
} }
&.active, &:hover, &:active, &:focus, &.title-page-single { &.active,
&:hover,
&:active,
&:focus,
&.title-page-single {
opacity: 1; opacity: 1;
outline: 0px hidden !important; outline: 0 hidden !important;
} }
@media screen and (max-width: $mobile-view) { @media screen and (max-width: $mobile-view) {
@ -262,7 +270,10 @@ my-input-toggle-hidden ::ng-deep input {
background-color: pvar(--submenuBackgroundColor); background-color: pvar(--submenuBackgroundColor);
} }
&.active, &:hover, &:active, &:focus { &.active,
&:hover,
&:active,
&:focus {
opacity: 1; opacity: 1;
} }
} }
@ -275,8 +286,13 @@ my-input-toggle-hidden ::ng-deep input {
// In tables, don't have a hover different background // In tables, don't have a hover different background
table { table {
.action-button-edit, .action-button-delete { .action-button-edit,
&:hover, &:active, &:focus, &[disabled], &.disabled { .action-button-delete {
&:hover,
&:active,
&:focus,
&[disabled],
&.disabled {
background-color: $grey-background-color !important; background-color: $grey-background-color !important;
} }
} }
@ -329,15 +345,12 @@ ngx-loading-bar {
@media screen and (max-width: #{breakpoint(xxl)}) { @media screen and (max-width: #{breakpoint(xxl)}) {
.main-col { .main-col {
& {
--horizontalMarginContent: #{$not-expanded-horizontal-margins / 2}; --horizontalMarginContent: #{$not-expanded-horizontal-margins / 2};
} --videosHorizontalMarginContent: 30px;
&.expanded { &.expanded {
--horizontalMarginContent: #{$expanded-horizontal-margins / 2}; --horizontalMarginContent: #{$expanded-horizontal-margins / 2};
} }
--videosHorizontalMarginContent: 30px;
} }
} }

View File

@ -6,7 +6,7 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
// Thanks https://gist.github.com/alexandrevicenzi/680147013e902a4eaa5d // Thanks https://gist.github.com/alexandrevicenzi/680147013e902a4eaa5d
.glyphicon-refresh-animate { .glyphicon-refresh-animate {
animation: spin .7s infinite linear; animation: spin 0.7s infinite linear;
} }
.glyphicon-duplicate { .glyphicon-duplicate {
@ -25,6 +25,7 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
from { from {
transform: scale(1) rotate(0deg); transform: scale(1) rotate(0deg);
} }
to { to {
transform: scale(1) rotate(360deg); transform: scale(1) rotate(360deg);
} }
@ -70,7 +71,7 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
&.active { &.active {
color: pvar(--mainBackgroundColor) !important; color: pvar(--mainBackgroundColor) !important;
background-color: pvar(--mainHoverColor); background-color: pvar(--mainHoverColor);
opacity: .9; opacity: 0.9;
} }
&:active { &:active {
@ -97,9 +98,9 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
} }
@media screen and (min-width: #{breakpoint(md)}) { @media screen and (min-width: #{breakpoint(md)}) {
.modal:before { .modal::before {
vertical-align: middle; vertical-align: middle;
content: " "; content: ' ';
height: 100%; height: 100%;
} }
@ -123,7 +124,7 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
} }
.modal-header { .modal-header {
border-bottom: none; border-bottom: 0;
margin-bottom: 5px; margin-bottom: 5px;
.modal-title { .modal-title {
@ -140,10 +141,11 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
margin: 0; margin: 0;
padding: 0; padding: 0;
opacity: .5; opacity: 0.5;
&[iconName="cross"] { &[iconName=cross] { /* stylelint-disable-line selector-max-compound-selectors */
@include icon(16px); @include icon(16px);
top: -3px; top: -3px;
} }
} }
@ -154,7 +156,7 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
text-align: right; text-align: right;
> .peertube-button:not(:first-child) { > .peertube-button:not(:first-child) {
margin-left: 10px margin-left: 10px;
} }
} }
} }
@ -168,7 +170,8 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
// On touchscreen devices, simply overflow: hidden to avoid detached overlay on scroll // On touchscreen devices, simply overflow: hidden to avoid detached overlay on scroll
@media (hover: none) and (pointer: coarse) { @media (hover: none) and (pointer: coarse) {
.modal-open, .menu-open { .modal-open,
.menu-open {
overflow: hidden !important; overflow: hidden !important;
} }
@ -176,7 +179,7 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
.menu-open { .menu-open {
.main-col { .main-col {
&::before { &::before {
background-color: black; background-color: #000;
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
opacity: 0.75; opacity: 0.75;
@ -204,7 +207,10 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
.nav-link { .nav-link {
opacity: 0.6 !important; opacity: 0.6 !important;
&.active, &:hover, &:active, &:focus { &.active,
&:hover,
&:active,
&:focus {
opacity: 1 !important; opacity: 1 !important;
} }
} }
@ -221,7 +227,7 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
font-weight: $font-semibold; font-weight: $font-semibold;
border: none; border: 0;
border-bottom: 2px solid transparent; border-bottom: 2px solid transparent;
opacity: 0.6; opacity: 0.6;
@ -231,7 +237,10 @@ $icon-font-path: '~@neos21/bootstrap3-glyphicons/assets/fonts/';
border-bottom-color: pvar(--mainColor); border-bottom-color: pvar(--mainColor);
} }
&.active, &:hover, &:active, &:focus { &.active,
&:hover,
&:active,
&:focus {
opacity: 1; opacity: 1;
} }
} }
@ -314,9 +323,10 @@ ngb-tooltip-window {
} }
.input-group { .input-group {
& > .form-control { > .form-control {
flex: initial; flex: initial;
} }
input.form-control { input.form-control {
width: unset !important; width: unset !important;
flex-grow: 1; flex-grow: 1;
@ -366,7 +376,7 @@ ngb-tooltip-window {
border: 1px solid #eee; border: 1px solid #eee;
border-radius: .25rem; border-radius: .25rem;
& > label { > label {
position: relative; position: relative;
top: -5px; top: -5px;
left: -10px; left: -10px;

View File

@ -17,7 +17,7 @@
@mixin show-more-description { @mixin show-more-description {
color: pvar(--mainColor); color: pvar(--mainColor);
cursor: pointer; cursor: pointer;
margin: 10px auto 45px auto; margin: 10px auto 45px;
} }
@mixin avatar-row-responsive ($img-margin, $grey-font-size) { @mixin avatar-row-responsive ($img-margin, $grey-font-size) {

View File

@ -1,4 +1,4 @@
@import "./_bootstrap-variables"; @import './_bootstrap-variables';
@import '~bootstrap/scss/functions'; @import '~bootstrap/scss/functions';
@import '~bootstrap/scss/variables'; @import '~bootstrap/scss/variables';

View File

@ -21,12 +21,12 @@
} }
@mixin miniature-thumbnail { @mixin miniature-thumbnail {
@include disable-outline;
$play-overlay-transition: 0.2s ease; $play-overlay-transition: 0.2s ease;
$play-overlay-height: 26px; $play-overlay-height: 26px;
$play-overlay-width: 18px; $play-overlay-width: 18px;
@include disable-outline;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
position: relative; position: relative;
@ -47,7 +47,8 @@
opacity: 0; opacity: 0;
background-color: rgba(0, 0, 0, 0.3); background-color: rgba(0, 0, 0, 0.3);
&, .icon { &,
.icon {
transition: all $play-overlay-transition; transition: all $play-overlay-transition;
} }
@ -129,10 +130,7 @@
column-gap: 30px; column-gap: 30px;
grid-template-columns: repeat( grid-template-columns: repeat(
auto-fill, auto-fill,
minmax( minmax(var(--miniatureMinWidth), 1fr)
var(--miniatureMinWidth),
1fr
)
); );
.video-wrapper, .video-wrapper,

View File

@ -1,7 +1,9 @@
@import '_variables'; @import '_variables';
@mixin disable-default-a-behaviour { @mixin disable-default-a-behaviour {
&:hover, &:focus, &:active { &:hover,
&:focus,
&:active {
text-decoration: none !important; text-decoration: none !important;
outline: none !important; outline: none !important;
} }
@ -22,7 +24,7 @@
@mixin ellipsis-multiline($font-size: 16px, $number-of-lines: 2) { @mixin ellipsis-multiline($font-size: 16px, $number-of-lines: 2) {
display: block; display: block;
/* Fallback for non-webkit */ /* Fallback for non-webkit */
display: -webkit-box; display: -webkit-box; /* stylelint-disable-line value-no-vendor-prefix */
-webkit-line-clamp: $number-of-lines; -webkit-line-clamp: $number-of-lines;
/* Fallback for non-webkit */ /* Fallback for non-webkit */
font-size: $font-size; font-size: $font-size;
@ -36,7 +38,7 @@
position: relative; position: relative;
overflow: hidden; overflow: hidden;
&:after { &::after {
content: ''; content: '';
pointer-events: none; pointer-events: none;
width: 100%; width: 100%;
@ -111,7 +113,7 @@
.input-group-text { .input-group-text {
font-size: 14px; font-size: 14px;
color: gray; color: #808080;
} }
} }
@ -128,7 +130,9 @@
@mixin orange-button { @mixin orange-button {
@include button-focus(pvar(--mainColorLightest)); @include button-focus(pvar(--mainColorLightest));
&, &:active, &:focus { &,
&:active,
&:focus {
color: #fff; color: #fff;
background-color: pvar(--mainColor); background-color: pvar(--mainColor);
} }
@ -138,14 +142,15 @@
background-color: pvar(--mainHoverColor); background-color: pvar(--mainHoverColor);
} }
&[disabled], &.disabled { &[disabled],
&.disabled {
cursor: default; cursor: default;
color: #fff; color: #fff;
background-color: #C6C6C6; background-color: #C6C6C6;
} }
my-global-icon { my-global-icon {
@include apply-svg-color(#fff) @include apply-svg-color(#fff);
} }
} }
@ -155,7 +160,9 @@
border: 2px solid pvar(--mainColor); border: 2px solid pvar(--mainColor);
font-weight: $font-semibold; font-weight: $font-semibold;
&, &:active, &:focus { &,
&:active,
&:focus {
color: pvar(--mainColor); color: pvar(--mainColor);
background-color: pvar(--mainBackgroundColor); background-color: pvar(--mainBackgroundColor);
} }
@ -165,14 +172,15 @@
background-color: pvar(--mainColorLightest); background-color: pvar(--mainColorLightest);
} }
&[disabled], &.disabled { &[disabled],
&.disabled {
cursor: default; cursor: default;
color: pvar(--mainColor); color: pvar(--mainColor);
background-color: #C6C6C6; background-color: #C6C6C6;
} }
my-global-icon { my-global-icon {
@include apply-svg-color(pvar(--mainColor)) @include apply-svg-color(pvar(--mainColor));
} }
} }
@ -182,12 +190,13 @@
color: pvar(--greyForegroundColor); color: pvar(--greyForegroundColor);
background-color: transparent; background-color: transparent;
&[disabled], &.disabled { &[disabled],
.disabled {
cursor: default; cursor: default;
} }
my-global-icon { my-global-icon {
@include apply-svg-color(transparent) @include apply-svg-color(transparent);
} }
} }
@ -197,17 +206,22 @@
background-color: $grey-background-color; background-color: $grey-background-color;
color: pvar(--greyForegroundColor); color: pvar(--greyForegroundColor);
&:hover, &:active, &:focus, &[disabled], &.disabled { &:hover,
&:active,
&:focus,
&[disabled],
&.disabled {
color: pvar(--greyForegroundColor); color: pvar(--greyForegroundColor);
background-color: $grey-background-hover-color; background-color: $grey-background-hover-color;
} }
&[disabled], &.disabled { &[disabled],
&.disabled {
cursor: default; cursor: default;
} }
my-global-icon { my-global-icon {
@include apply-svg-color(pvar(--greyForegroundColor)) @include apply-svg-color(pvar(--greyForegroundColor));
} }
} }
@ -216,24 +230,30 @@
$text: #fff6f5; $text: #fff6f5;
@include button-focus(scale-color($color, $alpha: -95%)); @include button-focus(scale-color($color, $alpha: -95%));
background-color: $color; background-color: $color;
color: $text; color: $text;
&:hover, &:active, &:focus, &[disabled], &.disabled { &:hover,
&:active,
&:focus,
&[disabled],
&.disabled {
background-color: lighten($color: $color, $amount: 10); background-color: lighten($color: $color, $amount: 10);
} }
&[disabled], &.disabled { &[disabled],
&.disabled {
cursor: default; cursor: default;
} }
my-global-icon { my-global-icon {
@include apply-svg-color($text) @include apply-svg-color($text);
} }
} }
@mixin peertube-button { @mixin peertube-button {
border: none; border: 0;
font-weight: $font-semibold; font-weight: $font-semibold;
font-size: 15px; font-size: 15px;
height: $button-height; height: $button-height;
@ -246,18 +266,17 @@
} }
@mixin peertube-button-link { @mixin peertube-button-link {
display: inline-block;
@include disable-default-a-behaviour; @include disable-default-a-behaviour;
@include peertube-button; @include peertube-button;
display: inline-block;
} }
@mixin peertube-button-outline { @mixin peertube-button-outline {
display: inline-block;
@include disable-default-a-behaviour; @include disable-default-a-behaviour;
@include peertube-button; @include peertube-button;
display: inline-block;
border: 1px solid; border: 1px solid;
} }
@ -291,17 +310,17 @@
filter: alpha(opacity=0); filter: alpha(opacity=0);
opacity: 0; opacity: 0;
outline: none; outline: none;
background: white; background: #fff;
cursor: inherit; cursor: inherit;
display: block; display: block;
} }
} }
@mixin peertube-button-file ($width) { @mixin peertube-button-file ($width) {
width: $width;
@include peertube-file; @include peertube-file;
@include peertube-button; @include peertube-button;
width: $width;
} }
@mixin icon ($size) { @mixin icon ($size) {
@ -317,7 +336,7 @@
@mixin select-arrow-down { @mixin select-arrow-down {
top: 50%; top: 50%;
right: calc(0% + 15px); right: calc(0% + 15px);
content: " "; content: ' ';
height: 0; height: 0;
width: 0; width: 0;
position: absolute; position: absolute;
@ -358,7 +377,7 @@
width: 100%; width: 100%;
} }
&:after { &::after {
@include select-arrow-down; @include select-arrow-down;
} }
@ -394,21 +413,21 @@
option { option {
font-weight: $font-semibold; font-weight: $font-semibold;
color: pvar(--greyForegroundColor); color: pvar(--greyForegroundColor);
border: none; border: 0;
} }
} }
} }
// Thanks: https://codepen.io/triss90/pen/XNEdRe/ // Thanks: https://codepen.io/triss90/pen/XNEdRe/
@mixin peertube-radio-container { @mixin peertube-radio-container {
input[type="radio"] { input[type=radio] {
display: none; display: none;
& + label { + label {
font-weight: $font-regular; font-weight: $font-regular;
cursor: pointer; cursor: pointer;
&:before { &::before {
position: relative; position: relative;
top: -2px; top: -2px;
content: ''; content: '';
@ -425,12 +444,12 @@
} }
} }
&:checked + label:before { &:checked + label::before {
background-color: #000; background-color: #000;
box-shadow: inset 0 0 0 4px #fff; box-shadow: inset 0 0 0 4px #fff;
} }
&:focus + label:before { &:focus + label::before {
outline: none; outline: none;
border-color: #000; border-color: #000;
} }
@ -445,7 +464,7 @@
box-shadow: #{$focus-box-shadow-form} pvar(--mainColorLightest); box-shadow: #{$focus-box-shadow-form} pvar(--mainColorLightest);
} }
& + span { + span {
position: relative; position: relative;
width: 18px; width: 18px;
min-width: 18px; min-width: 18px;
@ -455,7 +474,7 @@
vertical-align: middle; vertical-align: middle;
cursor: pointer; cursor: pointer;
&:after { &::after {
content: ''; content: '';
position: absolute; position: absolute;
top: calc(2px - #{$border-width}); top: calc(2px - #{$border-width});
@ -474,13 +493,13 @@
background: pvar(--mainColor); background: pvar(--mainColor);
animation: jelly 0.6s ease; animation: jelly 0.6s ease;
&:after { &::after {
opacity: 1; opacity: 1;
transform: rotate(45deg) scale(1); transform: rotate(45deg) scale(1);
} }
} }
& + span + span { + span + span {
font-size: 15px; font-size: 15px;
font-weight: $font-regular; font-weight: $font-regular;
margin-left: 5px; margin-left: 5px;
@ -685,13 +704,13 @@
color: pvar(--mainColor); color: pvar(--mainColor);
} }
& + .breadcrumb-item { + .breadcrumb-item {
padding-left: 0.5rem; padding-left: 0.5rem;
&::before { &::before {
display: inline-block; display: inline-block;
padding-right: 0.5rem; padding-right: 0.5rem;
color: #6c757d; color: #6c757d;
content: "/"; content: '/';
} }
} }
@ -706,13 +725,13 @@
flex-wrap: wrap; flex-wrap: wrap;
margin: 0 -5px; margin: 0 -5px;
& > div { > div {
box-sizing: border-box; box-sizing: border-box;
flex: 0 0 percentage(1/3); flex: 0 0 percentage(1/3);
padding: 0 5px; padding: 0 5px;
margin-bottom: 10px; margin-bottom: 10px;
& > a { > a {
@include disable-default-a-behaviour; @include disable-default-a-behaviour;
text-decoration: none; text-decoration: none;
@ -727,8 +746,8 @@
} }
} }
& > a, > a,
& > div { > div {
padding: 20px; padding: 20px;
background: pvar(--submenuBackgroundColor); background: pvar(--submenuBackgroundColor);
border-radius: 4px; border-radius: 4px;
@ -737,7 +756,8 @@
} }
} }
.dashboard-num, .dashboard-text { .dashboard-num,
.dashboard-text {
text-align: center; text-align: center;
font-size: 130%; font-size: 130%;
color: pvar(--mainForegroundColor); color: pvar(--mainForegroundColor);
@ -831,7 +851,7 @@
flex-direction: column; flex-direction: column;
.form-sub-title { .form-sub-title {
margin-right: 0px !important; margin-right: 0 !important;
margin-bottom: 10px; margin-bottom: 10px;
text-align: center; text-align: center;
} }

View File

@ -60,7 +60,7 @@ $max-channels-width: 1200px;
$footer-height: 30px; $footer-height: 30px;
$footer-margin: 30px; $footer-margin: 30px;
$separator-border-color: rgba(0, 0, 0, 0.10); $separator-border-color: rgba(0, 0, 0, 0.1);
$video-miniature-margin-bottom: 15px; $video-miniature-margin-bottom: 15px;
@ -90,7 +90,7 @@ $markdown-textarea-background-color: $grey-background-hover-color;
$sub-menu-margin-bottom: 30px; $sub-menu-margin-bottom: 30px;
$sub-menu-margin-bottom-small-view: 10px; $sub-menu-margin-bottom-small-view: 10px;
$activated-action-button-color: black; $activated-action-button-color: #000;
$focus-box-shadow-form: 0 0 0 .2rem; $focus-box-shadow-form: 0 0 0 .2rem;
@ -147,7 +147,7 @@ $variables: (
@if map-has-key($variables, $variable) { @if map-has-key($variables, $variable) {
@return map-get($variables, $variable); @return map-get($variables, $variable);
} @else { } @else {
@error "ERROR: Variable #{$variable} does not exist"; @error 'ERROR: Variable #{$variable} does not exist';
} }
} }

View File

@ -14,7 +14,7 @@ $ng-select-height: 30px;
$ng-select-value-padding-left: 15px; $ng-select-value-padding-left: 15px;
$ng-select-value-font-size: 15px; $ng-select-value-font-size: 15px;
@import "~@ng-select/ng-select/scss/default.theme.scss"; @import '~@ng-select/ng-select/scss/default.theme';
.ng-select { .ng-select {
font-size: $ng-select-value-font-size; font-size: $ng-select-value-font-size;
@ -31,13 +31,13 @@ $ng-select-value-font-size: 15px;
} }
.ng-arrow-wrapper { .ng-arrow-wrapper {
padding-right: 12px padding-right: 12px;
} }
&.ng-select-single .ng-value-container .ng-value { &.ng-select-single .ng-value-container .ng-value {
color: pvar(--inputForegroundColor); color: pvar(--inputForegroundColor);
.ng-value-label { .ng-value-label { /* stylelint-disable-line */
display: flex; display: flex;
align-items: center; align-items: center;
} }
@ -45,7 +45,8 @@ $ng-select-value-font-size: 15px;
&.ng-select-multiple .ng-select-container .ng-value-container { &.ng-select-multiple .ng-select-container .ng-value-container {
padding-left: 12px; padding-left: 12px;
.ng-value {
.ng-value { /* stylelint-disable-line */
margin-left: 3px; margin-left: 3px;
} }
} }

View File

@ -31,26 +31,26 @@ $context-menu-width: 350px;
background-color: rgba(255, 255, 255, 0.2); background-color: rgba(255, 255, 255, 0.2);
} }
[class^="vjs-icon-"] { [class^='vjs-icon-'] {
$icons: 'link-2', 'repeat', 'code', 'tick-white', 'info';
display: inline-flex; display: inline-flex;
position: relative; position: relative;
top: 2px; top: 2px;
cursor: pointer; cursor: pointer;
width: 14px; width: 14px;
height: 14px; height: 14px;
background-color: white; background-color: #fff;
mask-size: cover; mask-size: cover;
margin-right: 0.8rem !important; margin-right: 0.8rem !important;
$icons: 'link-2', 'repeat', 'code', 'tick-white', 'info';
@each $icon in $icons { @each $icon in $icons {
&[class$="-#{$icon}"] { &[class$="-#{$icon}"] {
mask-image: url('#{$assets-path}/player/images/#{$icon}.svg'); mask-image: url('#{$assets-path}/player/images/#{$icon}.svg');
} }
} }
&[class$="-tick-white"] { &[class$='-tick-white'] {
float: right; float: right;
margin: 0 !important; margin: 0 !important;
} }

View File

@ -4,6 +4,6 @@
@import './settings-menu'; @import './settings-menu';
@import './spinner'; @import './spinner';
@import './upnext'; @import './upnext';
@import './bezels.scss'; @import './bezels';
@import './playlist.scss'; @import './playlist';
@import './stats.scss'; @import './stats';

View File

@ -52,12 +52,12 @@ body {
} }
.vjs-big-play-button { .vjs-big-play-button {
outline: 0;
font-size: 6em;
$big-play-width: 1.2em; $big-play-width: 1.2em;
$big-play-height: 1.2em; $big-play-height: 1.2em;
outline: 0;
font-size: 6em;
border: 2px solid #fff; border: 2px solid #fff;
border-radius: 100%; border-radius: 100%;
@ -72,7 +72,7 @@ body {
&::-moz-focus-inner { &::-moz-focus-inner {
border: 0; border: 0;
padding: 0 padding: 0;
} }
.vjs-icon-placeholder::before { .vjs-icon-placeholder::before {
@ -82,8 +82,9 @@ body {
background-image: url('#{$assets-path}/player/images/big-play-button.svg'); background-image: url('#{$assets-path}/player/images/big-play-button.svg');
} }
&.focus-visible, &:hover { &.focus-visible,
background-color: var(--mainColor, dimgray); &:hover {
background-color: var(--mainColor, #696969);
} }
} }
@ -91,16 +92,19 @@ body {
// Small effect when we click on the play button // Small effect when we click on the play button
&.vjs-has-big-play-button-clicked { &.vjs-has-big-play-button-clicked {
.vjs-big-play-button, .vjs-poster { .vjs-big-play-button,
.vjs-poster {
display: block; display: block;
visibility: hidden; visibility: hidden;
&.vjs-big-play-button, &.vjs-big-play-button::before { &.vjs-big-play-button,
&.vjs-big-play-button::before {
opacity: 0; opacity: 0;
transition: visibility 0.2s, opacity 0.2s; transition: visibility 0.2s, opacity 0.2s;
} }
&.vjs-poster, &.vjs-poster::before { &.vjs-poster,
&.vjs-poster::before {
opacity: 0; opacity: 0;
transition: visibility 0.3s, opacity 0.3s; transition: visibility 0.3s, opacity 0.3s;
transition-delay: 0.05s; transition-delay: 0.05s;
@ -165,8 +169,7 @@ body {
.vjs-fullscreen-control, .vjs-fullscreen-control,
.vjs-peertube-link, .vjs-peertube-link,
.vjs-theater-control, .vjs-theater-control,
.vjs-settings .vjs-settings {
{
color: pvar(--embedForegroundColor) !important; color: pvar(--embedForegroundColor) !important;
opacity: $primary-foreground-opacity; opacity: $primary-foreground-opacity;
@ -217,7 +220,8 @@ body {
} }
.vjs-load-progress { .vjs-load-progress {
&, & div { &,
div {
background: rgba(255, 255, 255, .2); background: rgba(255, 255, 255, .2);
} }
} }
@ -266,7 +270,7 @@ body {
line-height: calc(#{$control-bar-height} - 1px); line-height: calc(#{$control-bar-height} - 1px);
&::after { &::after {
content: "/"; content: '/';
margin: 0 1px 0 2px; margin: 0 1px 0 2px;
} }
} }
@ -308,11 +312,17 @@ body {
display: none; display: none;
} }
.download-speed-number, .upload-speed-number, .peers-number, .http-fallback { .download-speed-number,
.upload-speed-number,
.peers-number,
.http-fallback {
font-weight: $font-semibold; font-weight: $font-semibold;
} }
.download-speed-text, .upload-speed-text, .peers-text, .http-fallback { .download-speed-text,
.upload-speed-text,
.peers-text,
.http-fallback {
margin-right: 15px; margin-right: 15px;
} }
@ -336,10 +346,8 @@ body {
&.icon-next, &.icon-next,
&.icon-previous { &.icon-previous {
mask-image: url('#{$assets-path}/player/images/next.svg'); mask-image: url('#{$assets-path}/player/images/next.svg');
-webkit-mask-image: url('#{$assets-path}/player/images/next.svg'); background-color: #fff;
background-color: white;
mask-size: cover; mask-size: cover;
-webkit-mask-size: cover;
width: 11px; width: 11px;
height: 11px; height: 11px;
margin-top: -2px; margin-top: -2px;
@ -410,7 +418,7 @@ body {
} }
.vjs-volume-bar { .vjs-volume-bar {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAcCAQAAACw95UnAAAAMElEQVRIx2NgoBL4n4YKGUYNHkEG4zJg1OCRYDCpBowaPJwMppbLRg0eNXjUYBLEAXWNUA6QNm1lAAAAAElFTkSuQmCC) no-repeat; background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAcCAQAAACw95UnAAAAMElEQVRIx2NgoBL4n4YKGUYNHkEG4zJg1OCRYDCpBowaPJwMppbLRg0eNXjUYBLEAXWNUA6QNm1lAAAAAElFTkSuQmCC') no-repeat;
background-size: 22px 14px; background-size: 22px 14px;
height: 100%; height: 100%;
width: 100%; width: 100%;
@ -421,7 +429,7 @@ body {
top: 3px; top: 3px;
.vjs-volume-level { .vjs-volume-level {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAcAQAAAAAyhWABAAAAAnRSTlMAAHaTzTgAAAAZSURBVHgBYwAB/g9EUv+JokCqiaT+U4MCAPKPS7WUUOc1AAAAAElFTkSuQmCC) no-repeat; background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAcAQAAAAAyhWABAAAAAnRSTlMAAHaTzTgAAAAZSURBVHgBYwAB/g9EUv+JokCqiaT+U4MCAPKPS7WUUOc1AAAAAElFTkSuQmCC') no-repeat;
background-size: 22px 14px; background-size: 22px 14px;
max-width: 22px; max-width: 22px;
max-height: 14px; max-height: 14px;

View File

@ -44,10 +44,8 @@ $playlist-menu-width: 350px;
width: 20px; width: 20px;
height: 20px; height: 20px;
mask-image: url('#{$assets-path}/images/feather/x.svg'); mask-image: url('#{$assets-path}/images/feather/x.svg');
-webkit-mask-image: url('#{$assets-path}/images/feather/x.svg'); background-color: #fff;
background-color: white;
mask-size: cover; mask-size: cover;
-webkit-mask-size: cover;
} }
} }
} }
@ -90,10 +88,8 @@ $playlist-menu-width: 350px;
width: 22px; width: 22px;
height: 22px; height: 22px;
mask-image: url('#{$assets-path}/images/feather/list.svg'); mask-image: url('#{$assets-path}/images/feather/list.svg');
-webkit-mask-image: url('#{$assets-path}/images/feather/list.svg'); background-color: #fff;
background-color: white;
mask-size: cover; mask-size: cover;
-webkit-mask-size: cover;
margin-bottom: 3px; margin-bottom: 3px;
} }
@ -133,9 +129,9 @@ $playlist-menu-width: 350px;
} }
.item-player { .item-player {
display: none;
@include play-icon(20px, 16px); @include play-icon(20px, 16px);
display: none;
} }
&.vjs-selected { &.vjs-selected {

View File

@ -149,7 +149,7 @@ $setting-transition-easing: ease-out;
background-color: inherit; background-color: inherit;
padding: 8px 8px 13px 12px; padding: 8px 8px 13px 12px;
margin-bottom: 5px; margin-bottom: 5px;
border-bottom: 1px solid grey; border-bottom: 1px solid #808080;
text-align: left; text-align: left;
&::before { &::before {

View File

@ -6,6 +6,8 @@ $contextmenu-background-color: rgba(0, 0, 0, 0.6);
.video-js { .video-js {
.vjs-stats-content { .vjs-stats-content {
@include transition(opacity 0.1s);
position: absolute; position: absolute;
background-color: $contextmenu-background-color; background-color: $contextmenu-background-color;
padding: 5px 0; padding: 5px 0;
@ -18,8 +20,6 @@ $contextmenu-background-color: rgba(0, 0, 0, 0.6);
z-index: 64; z-index: 64;
font-size: 12px; font-size: 12px;
line-height: 1.2; line-height: 1.2;
@include transition(opacity 0.1s);
} }
.vjs-stats-close { .vjs-stats-close {
@ -38,5 +38,4 @@ $contextmenu-background-color: rgba(0, 0, 0, 0.6);
width: 11.5em; width: 11.5em;
white-space: nowrap; white-space: nowrap;
} }
} }

Some files were not shown because too many files have changed in this diff Show More