X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fsass%2Finclude%2F_mixins.scss;h=10ab44f57a402d8d2c95c17ab4ee662572b7903e;hb=48586fe070c2a59e9febb62a7f41ebb384e1d20e;hp=6a1deac76772b07205bedf34861a2b7054eab5f6;hpb=1ebddadd0704812a4600c39cabe2268321e88331;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/sass/include/_mixins.scss b/client/src/sass/include/_mixins.scss index 6a1deac76..10ab44f57 100644 --- a/client/src/sass/include/_mixins.scss +++ b/client/src/sass/include/_mixins.scss @@ -48,6 +48,11 @@ } @mixin apply-svg-color ($color) { + ::ng-deep .feather, + ::ng-deep .material { + color: $color; + } + ::ng-deep svg { path[fill="#000"], g[fill="#000"], @@ -102,6 +107,10 @@ color: pvar(--inputPlaceholderColor); } + &[readonly] { + opacity: 0.7; + } + @media screen and (max-width: $width) { width: 100%; } @@ -112,6 +121,7 @@ min-height: $button-height; padding-top: 0; padding-bottom: 0; + flex-wrap: nowrap; .input-group-text{ font-size: 14px; @@ -170,11 +180,8 @@ @mixin grey-button { @include button-focus($grey-button-outline-color); - - &, &:active, &:focus { - background-color: $grey-background-color; - color: pvar(--greyForegroundColor); - } + background-color: $grey-background-color; + color: pvar(--greyForegroundColor); &:hover, &:active, &:focus, &[disabled], &.disabled { color: pvar(--greyForegroundColor); @@ -190,6 +197,27 @@ } } +@mixin danger-button { + $color: lighten($color: #c54130, $amount: 10); + $text: #fff6f5; + + @include button-focus(scale-color($color, $alpha: -95%)); + background-color: $color; + color: $text; + + &:hover, &:active, &:focus, &[disabled], &.disabled { + background-color: lighten($color: $color, $amount: 10); + } + + &[disabled], &.disabled { + cursor: default; + } + + my-global-icon { + @include apply-svg-color($text) + } +} + @mixin peertube-button { border: none; font-weight: $font-semibold; @@ -235,7 +263,6 @@ min-height: 30px; @include peertube-button; - @include orange-button; input[type=file] { position: absolute; @@ -278,6 +305,14 @@ z-index: 100; } +@mixin responsive-width ($width) { + width: $width; + + @media screen and (max-width: $width) { + width: 100%; + } +} + @mixin peertube-select-container ($width) { padding: 0; margin: 0; @@ -306,9 +341,7 @@ select { padding: 0 35px 0 12px; - width: calc(100% + 2px); position: relative; - left: 1px; border: 1px solid #C6C6C6; background: transparent none; appearance: none; @@ -330,6 +363,17 @@ color: #000; } } + + &.peertube-select-button { + @include grey-button; + + select, + option { + font-weight: $font-semibold; + color: pvar(--greyForegroundColor); + border: none; + } + } } // Thanks: https://codepen.io/triss90/pen/XNEdRe/ @@ -428,6 +472,49 @@ } } +@mixin table-badge { + border-radius: 2px; + padding: 1/4em 1/2em; + text-transform: uppercase; + font-weight: $font-bold; + font-size: 12px; + letter-spacing: 1/3px; + + &.badge-banned, + &.badge-red { + background-color: #ffcdd2; + color: #c63737; + } + + &.badge-banned { + text-decoration: line-through; + } + + &.badge-yellow { + background-color: #feedaf; + color: #8a5340; + } + + &.badge-brown { + background-color: #ffd8b2; + color: #805b36; + } + + &.badge-green { + background-color: #c8e6c9; + color: #256029; + } + + &.badge-blue { + background-color: #b3e5fc; + color: #23547b; + } + + &.badge-purple { + background-color: #eccfff; + color: #694382; + } +} @mixin avatar ($size) { object-fit: cover; @@ -498,6 +585,8 @@ } @mixin sub-menu-with-actor { + position: initial; + z-index: unset; height: max-content; display: flex; flex-direction: column; @@ -603,13 +692,29 @@ } } -@mixin progressbar { +@mixin progressbar($small: false) { background-color: $grey-background-color; display: flex; height: 1rem; overflow: hidden; font-size: 0.75rem; border-radius: 0.25rem; + position: relative; + + span { + position: absolute; + color: $grey-foreground-color; + @if $small { + top: -1px; + } + + &:nth-of-type(1) { + left: .2rem; + } + &:nth-of-type(2) { + right: .2rem; + } + } .progress-bar { color: pvar(--mainBackgroundColor); @@ -624,6 +729,10 @@ &.secondary { background-color: pvar(--secondaryColor); } + + &.red { + background-color: lighten($color: #c54130, $amount: 10); + } } } @@ -711,75 +820,6 @@ } } -@mixin ng2-tags { - ::ng-deep { - .ng2-tag-input { - border: none !important; - } - - .ng2-tags-container { - display: flex; - align-items: center; - border: 1px solid #C6C6C6; - border-radius: 3px; - padding: 5px !important; - height: max-content; - - &:focus-within { - box-shadow: #{$focus-box-shadow-form} pvar(--mainColorLightest); - } - } - - tag-input-form { - input { - height: 30px !important; - font-size: 12px !important; - - background-color: pvar(--mainBackgroundColor) !important; - color: pvar(--mainForegroundColor) !important; - } - } - - tag { - background-color: $grey-background-color !important; - color: #000 !important; - border-radius: 3px !important; - font-size: 12px !important; - height: 30px !important; - line-height: 30px !important; - margin: 0 5px 0 0 !important; - cursor: default !important; - padding: 0 8px 0 10px !important; - - div { - height: 100% !important; - } - } - - delete-icon { - cursor: pointer !important; - height: auto !important; - vertical-align: middle !important; - padding-left: 6px !important; - - svg { - position: relative; - top: -1px; - height: auto !important; - vertical-align: middle !important; - - path { - fill: pvar(--greyForegroundColor) !important; - } - } - - &:hover { - transform: none !important; - } - } - } -} - @mixin divider($color: pvar(--submenuColor), $background: pvar(--mainBackgroundColor)) { width: 95%; border-top: .05rem solid $color; @@ -903,3 +943,38 @@ @content; } } + +@mixin sub-menu-h1 { + ::ng-deep h1 { + font-size: 1.3rem; + border-bottom: 2px solid $grey-background-color; + padding-bottom: 15px; + margin-bottom: $sub-menu-margin-bottom; + + my-global-icon { + margin-right: 10px; + vertical-align: bottom; + width: 24px; + height: 24px; + } + + .badge { + margin-left: 7px; + } + } +} + +@mixin play-icon ($width, $height) { + width: 0; + height: 0; + + position: absolute; + left: 50%; + top: 50%; + transform: translate(-50%, -50%) scale(0.5); + + border-top: ($height / 2) solid transparent; + border-bottom: ($height / 2) solid transparent; + + border-left: $width solid rgba(255, 255, 255, 0.95); +}