]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/app/shared/shared-video-miniature/video-miniature.component.scss
Account/channel videos display as rows
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / shared-video-miniature / video-miniature.component.scss
CommitLineData
63c4db6d
C
1@import '_variables';
2@import '_mixins';
830b4faf 3@import '_miniature';
63c4db6d 4
adcf9212 5$more-button-width: 40px;
743f023c 6
0f7407d9
C
7.video-miniature-name {
8 @include miniature-name;
9}
501bc6c2 10
0f7407d9
C
11.video-miniature-information {
12 width: calc(100% - #{$more-button-width});
13}
501bc6c2 14
0f7407d9
C
15.avatar {
16 margin: 10px 10px 0 0;
cf78883c 17
0f7407d9
C
18 img:not(.channel) {
19 @include avatar(40px);
20 }
cf78883c 21
0f7407d9
C
22 img.channel {
23 @include channel-avatar(40px);
24 }
25}
deb8b9cd 26
0f7407d9
C
27.video-miniature-created-at-views {
28 font-size: 13px;
29}
501bc6c2 30
0f7407d9
C
31.video-miniature-account,
32.video-miniature-channel {
33 @include disable-default-a-behaviour;
34 @include ellipsis;
33253c1a 35
0f7407d9
C
36 display: block;
37 font-size: 13px;
38 color: pvar(--greyForegroundColor);
00a44645 39
0f7407d9
C
40 &:hover {
41 color: $grey-foreground-hover-color;
42 }
43}
adcf9212 44
0f7407d9
C
45.video-info-privacy,
46.video-info-blocked .blocked-label,
47.video-info-nsfw {
48 font-weight: $font-semibold;
49}
03e12d7c 50
0f7407d9
C
51.video-info-blocked {
52 color: red;
03e12d7c 53
0f7407d9
C
54 .blocked-reason::before {
55 content: ' - ';
56 }
57}
0f4905e1 58
0f7407d9
C
59.video-info-nsfw {
60 color: red;
61}
e2409062 62
0f7407d9
C
63.video-actions {
64 width: $more-button-width;
65 height: 30px;
e2409062 66
0f7407d9
C
67 ::ng-deep .dropdown-root:not(.show) {
68 opacity: 0;
69 }
e2409062 70
0f7407d9
C
71 ::ng-deep .playlist-dropdown.show + my-action-dropdown .dropdown-root {
72 opacity: 1;
73 }
e2409062 74
0f7407d9
C
75 ::ng-deep .more-icon {
76 opacity: .6;
3a0fb65c 77
0f7407d9
C
78 &:hover {
79 opacity: 1;
80 }
81 }
82}
3a0fb65c 83
0f7407d9
C
84.video-miniature {
85 &:hover ::ng-deep .video-thumbnail-actions-overlay,
86 &:hover .video-actions ::ng-deep .dropdown-root {
87 opacity: 1 !important;
88 }
89}
3a0fb65c 90
0f7407d9
C
91// Grid mode
92// Takes all the width on mobile
93.video-miniature:not(.display-as-row) {
94 display: flex;
95 flex-direction: column;
96 padding-bottom: $video-miniature-margin-bottom;
97 width: 100%;
3a0fb65c 98
0f7407d9
C
99 my-video-thumbnail {
100 @include large-screen-ratio($selector: '::ng-deep .video-thumbnail');
101 }
3fbba1d2 102
0f7407d9
C
103 .video-bottom {
104 display: flex;
105 width: 100%;
106 }
3a0fb65c 107
3a0fb65c 108
0f7407d9
C
109 .video-miniature-name {
110 margin-top: 10px;
111 margin-bottom: 5px;
112 }
0f4905e1 113
0f7407d9
C
114 .video-miniature-created-at-views {
115 display: block;
3a0fb65c
C
116 }
117
0f7407d9
C
118 .video-actions {
119 margin-top: 3px;
3fbba1d2
RK
120 }
121
0f7407d9 122 @media screen and (max-width: $small-view) {
e66883b3 123 width: 100%;
0f7407d9
C
124 margin-bottom: 25px;
125
126 .video-miniature-information {
127 margin: 0 10px;
128
129 width: 100%;
130 text-align: left;
131 }
e66883b3 132
0f7407d9
C
133 .video-actions {
134 margin: 0;
135 top: -3px;
e66883b3 136
0f7407d9
C
137 ::ng-deep .dropdown-root {
138 opacity: 1 !important;
e66883b3
RK
139 }
140 }
141
0f7407d9
C
142 ::ng-deep .video-thumbnail {
143 border-radius: 0;
e66883b3
RK
144 }
145 }
0f7407d9
C
146}
147
148.video-miniature.display-as-row {
149 --rowThumbnailWidth: #{$video-thumbnail-width};
150 --rowThumbnailHeight: #{$video-thumbnail-height};
151
152 display: flex;
153 flex-direction: row;
e66883b3 154
0f7407d9 155 .video-bottom {
bf64ed41 156 display: flex;
0f7407d9 157 }
e2409062 158
0f7407d9
C
159 // We don't display avatar in row mode
160 .avatar {
161 display: none;
162 }
e2409062 163
0f7407d9
C
164 my-video-thumbnail {
165 min-width: var(--rowThumbnailWidth);
166 max-width: var(--rowThumbnailWidth);
167 height: var(--rowThumbnailHeight);
168 margin-right: 10px;
169 }
e2409062 170
0f7407d9
C
171 .video-miniature-name {
172 @include ellipsis-multiline(1.3em, 2);
173 }
174
175 .video-miniature-created-at-views,
176 .video-miniature-account,
177 .video-miniature-channel {
178 font-size: 14px;
179 }
e2409062 180
0f7407d9
C
181 .video-actions {
182 margin-top: -3px;
183 }
184}
e2409062 185
0f7407d9
C
186@include on-small-main-col {
187 .video-miniature.display-as-row {
188 --rowThumbnailWidth: #{$video-thumbnail-medium-width};
189 --rowThumbnailHeight: #{$video-thumbnail-medium-height};
190 }
191}
8dfceec4 192
0f7407d9
C
193@include on-mobile-main-col {
194 .video-miniature.display-as-row {
195 --rowThumbnailWidth: #{$video-thumbnail-small-width};
196 --rowThumbnailHeight: #{$video-thumbnail-small-height};
197
198 .video-miniature-name {
199 font-size: 14px;
200 }
201
202 .video-miniature-created-at-views,
203 .video-miniature-account,
204 .video-miniature-channel {
205 font-size: 12px;
e2409062 206 }
501bc6c2
C
207 }
208}