]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/sass/application.scss
Improve admin tables
[github/Chocobozzz/PeerTube.git] / client / src / sass / application.scss
CommitLineData
63c4db6d
C
1@import '_variables';
2@import '_mixins';
3
4$icon-font-path: '../../node_modules/bootstrap-sass/assets/fonts/bootstrap/';
e203f2e0 5@import '_bootstrap';
63c4db6d
C
6
7$FontPathSourceSansPro: '../../node_modules/npm-font-source-sans-pro/fonts';
8@import '~npm-font-source-sans-pro/source-sans-pro';
9
d592e0a9
C
10@import '~primeng/resources/themes/bootstrap/theme.css';
11@import '~primeng/resources/primeng.css';
12@import '~video.js/dist/video-js.css';
c893d451
C
13
14@import './video-js-custom';
15@import './loading-bar';
e31f6ad6 16
383bfc83
C
17[hidden] {
18 display: none !important;
19}
a64668c0 20
b33f657c 21body {
8a8e02a4 22 font-family: $main-fonts;
b33f657c
C
23 font-weight: $font-regular;
24 color: #000;
25}
26
07fa4c97
C
27strong {
28 font-weight: $font-semibold;
29}
30
383bfc83
C
31input.readonly {
32 /* Force blank on readonly inputs */
33 background-color: #fff !important;
0ac5edd9 34}
35
d235f6b0
C
36label {
37 font-weight: $font-bold;
38 font-size: 15px;
09223546
C
39}
40
a2b817d3
C
41.form-error {
42 display: block;
43 color: $red-error;
44 margin-top: 5px;
45}
46
47.input-error {
48 border-color: $red-error !important;
49}
50
383bfc83
C
51.glyphicon-black {
52 color: black;
53}
54
383bfc83 55.main-col {
c30745f3 56 margin-left: $menu-width;
9bf9d2a5 57
c30745f3 58 .margin-content {
d178b5c1
C
59 margin-left: $not-expanded-horizontal-margins;
60 margin-right: $not-expanded-horizontal-margins;
c30745f3
C
61 }
62
63 .sub-menu {
64 background-color: #F7F7F7;
65 width: 100%;
66 height: 81px;
67 margin-bottom: 30px;
68 display: flex;
69 align-items: center;
d178b5c1 70 padding-left: $not-expanded-horizontal-margins;
c30745f3
C
71 }
72
73 // Override some properties if the main content is expanded (no menu on the left)
74 &.expanded {
75 margin-left: 0;
76
77 .margin-content {
78 margin-left: $expanded-horizontal-margins;
79 margin-right: $expanded-horizontal-margins;
80 }
81
82 .sub-menu {
83 padding-left: $expanded-horizontal-margins;
84 }
602eb142 85 }
383bfc83 86}
602eb142 87
59aa1e5e
C
88.title-page {
89 color: #000;
90 font-size: 16px;
91 display: inline-block;
92 margin-right: 55px;
93 font-weight: $font-semibold;
94 @include disable-default-a-behaviour;
95
96 &.active, &.title-page-single {
97 border-bottom: 2px solid $orange-color;
98 font-weight: $font-bold;
99 margin-top: 30px;
100 margin-bottom: 25px;
101 }
cadb46d8
C
102
103 &:hover, &:active, &:focus {
104 color: #000;
04e0fc48 105 }
cadb46d8 106}
04e0fc48 107
cd83ea1b
C
108.admin-sub-header {
109 display: flex;
110 align-items: center;
111 margin-bottom: 30px;
112
113 .admin-sub-title {
114 flex-grow: 1;
115 }
116}
117
04e0fc48
C
118.admin-sub-title {
119 font-size: 20px;
120 font-weight: bold;
59aa1e5e
C
121}
122
315cc0cc
C
123// Thanks https://gist.github.com/alexandrevicenzi/680147013e902a4eaa5d
124.glyphicon-refresh-animate {
4635f59d 125 animation: spin .7s infinite linear;
315cc0cc
C
126}
127
128@keyframes spin {
129 from { transform: scale(1) rotate(0deg);}
130 to { transform: scale(1) rotate(360deg);}
131}
132
04e0fc48 133// ngprime data table customizations
ab998f7b 134p-table {
cd83ea1b
C
135 font-size: 15px !important;
136
cd83ea1b
C
137 td {
138 border: 1px solid #E5E5E5 !important;
f595d394 139 padding-left: 15px !important;
fb4fd623
C
140 overflow: hidden !important;
141 text-overflow: ellipsis !important;
142 white-space: nowrap !important;
cd83ea1b
C
143 }
144
145 tr {
146 background-color: #fff !important;
147 height: 46px;
ab998f7b 148 }
cd83ea1b 149
ab998f7b
C
150 .ui-table-tbody {
151 tr {
152 &:hover {
153 background-color: #f0f0f0 !important;
154 }
cd83ea1b 155
ab998f7b
C
156 &:not(:hover) {
157 .action-cell * {
158 display: none !important;
159 }
cd83ea1b 160 }
cd83ea1b 161
ab998f7b
C
162 &:first-child td {
163 border-top: none !important;
164 }
165
166 &:last-child td {
167 border-bottom: none !important;
168 }
cd83ea1b 169 }
f595d394 170
ab998f7b
C
171 .expander {
172 cursor: pointer;
173 position: relative;
174 top: 1px;
f595d394 175 }
cd83ea1b
C
176 }
177
178 th {
179 border: none !important;
180 border-bottom: 1px solid #f0f0f0 !important;
181 text-align: left !important;
182 padding: 5px 0 5px 15px !important;
183 font-weight: $font-semibold !important;
184 color: #000 !important;
185
fb4fd623 186 &.ui-sortable-column:hover {
cd83ea1b
C
187 background-color: #f0f0f0 !important;
188 border: 1px solid #f0f0f0 !important;
f595d394 189 border-width: 0 1px !important;
fb4fd623
C
190
191 &:first-child {
192 border-width: 0 1px 0 0 !important;
193 }
cd83ea1b 194 }
c2830fa8 195
ab998f7b 196 &.ui-state-highlight {
fb4fd623
C
197 background-color: #fff !important;
198
199 .fa {
200 @extend .glyphicon;
201 font-size: 11px;
202
203 &.fa-sort-asc {
204 @extend .glyphicon-triangle-top;
205 }
206
207 &.fa-sort-desc {
208 @extend .glyphicon-triangle-bottom;
209 }
210 }
c2830fa8 211 }
cd83ea1b
C
212 }
213
d592e0a9 214 .action-cell {
cd83ea1b
C
215 width: 250px !important;
216 padding: 0 !important;
d592e0a9 217 text-align: center;
cd83ea1b 218 }
28798b5d 219
cd83ea1b 220 p-paginator {
cd83ea1b
C
221 .ui-paginator-bottom {
222 position: relative;
223 border: none !important;
f595d394 224 border: 1px solid #f0f0f0 !important;
cd83ea1b
C
225 height: 40px;
226 display: flex;
227 justify-content: center;
228 align-items: center;
229
230 a {
231 color: #000 !important;
232 font-weight: $font-semibold !important;
233 margin-right: 20px !important;
234 outline: 0 !important;
235 border-radius: 3px !important;
236 padding: 5px 2px !important;
237
238 &.ui-state-active {
239 &, &:hover, &:active, &:focus {
240 color: #fff !important;
241 background-color: $orange-color !important;
242 }
243 }
244 }
d592e0a9 245 }
ad42bea3 246 }
21496304 247}
7b272fd7 248
04e0fc48 249// Bootstrap customizations
7b272fd7
C
250.dropdown-menu {
251 border-radius: 3px;
252 box-shadow: 0 3px 6px;
253 font-size: 15px;
254
255 .dropdown-item {
256 padding: 3px 15px;
257 }
258
259 a {
260 color: #000 !important;
261 }
262}
0727cab0
C
263
264.modal {
265 .modal-header {
266 border-bottom: none;
5f0805d3 267 margin-bottom: 5px;
0727cab0 268
5f0805d3
C
269 .modal-title {
270 font-size: 20px;
271 font-weight: $font-semibold;
272 }
273
274 .close {
275 @include icon(24px);
276
277 position: relative;
278 right: -1px;
279 float: right;
280 background-image: url('../assets/images/global/cross.svg');
281 }
282 }
283
284 .inputs {
285 margin-top: 40px;
286 margin-bottom: 0;
287 text-align: right;
288
289 .action-button-cancel {
290 @include peertube-button;
291 @include grey-button;
292
293 display: inline-block;
294 margin-right: 10px;
295 }
296
297 .action-button-submit {
298 @include peertube-button;
299 @include orange-button;
0727cab0
C
300 }
301 }
302}
303
6de36768
C
304tabset:not(.bootstrap) {
305 .nav {
306 font-size: 16px !important;
04e0fc48
C
307 border: none !important;
308
6de36768
C
309 .nav-item .nav-link {
310 margin-right: 30px;
311 padding: 0;
312 border-radius: 3px;
313 border: none !important;
e600e1fe 314
6de36768
C
315 .tab-link {
316 display: flex !important;
317 align-items: center;
318 min-height: 30px !important;
319 padding: 0 15px;
320 }
04e0fc48 321
6de36768
C
322 &, & a {
323 color: #000 !important;
324 @include disable-default-a-behaviour;
325 }
326
327 &.active, &:hover {
328 background-color: #F0F0F0;
329 }
330
331 &.active {
332 font-weight: $font-semibold !important;
333 }
04e0fc48 334 }
6de36768
C
335 }
336}
04e0fc48 337
6de36768
C
338tabset.bootstrap {
339 .nav-item .nav-link {
340 &, & a {
341 color: #000;
342 @include disable-default-a-behaviour;
04e0fc48
C
343 }
344 }
04e0fc48
C
345}
346
0727cab0
C
347.orange-button {
348 @include peertube-button;
349 @include orange-button;
350}
351
352.orange-button-link {
353 @include peertube-button-link;
354 @include orange-button;
355}
356
357.grey-button {
358 @include peertube-button;
359 @include grey-button;
360}
361
362.grey-button-link {
363 @include peertube-button-link;
364 @include grey-button;
365}
20206dfb 366
fb4fd623
C
367// In tables, don't have a hover different background
368table {
369 .action-button-edit, .action-button-delete {
370 &:hover, &:active, &:focus, &[disabled], &.disabled {
371 background-color: $grey-color !important;
372 }
373 }
374}
375
1f788f20
C
376@media screen and (max-width: 900px) {
377 .main-col {
378 &, &.expanded {
379 .margin-content {
380 margin-left: 50px;
381 margin-right: 50px;
382 }
dd778941
C
383
384 .sub-menu {
385 padding-left: 50px;
386 }
1f788f20
C
387 }
388 }
389}
390
20206dfb 391// On small screen, menu is absolute
c8cf5952 392@media screen and (max-width: 600px) {
20206dfb 393 .title-menu-left {
c8cf5952 394 width: 100% !important;
20206dfb
C
395 position: absolute !important;
396 z-index: 10000;
397 }
398
399 .main-col {
400 margin-left: 0;
401
402 &, &.expanded {
403 .margin-content {
6693df9d
C
404 margin-left: 15px;
405 margin-right: 15px;
20206dfb
C
406 }
407
408 .sub-menu {
dd778941 409 padding-left: 15px;
20206dfb
C
410 margin-bottom: 10px;
411 }
412
413 input[type=text], input[type=password] {
414 width: 100% !important;
415 }
416 }
417 }
c8cf5952
C
418
419 bs-dropdown-container {
420 z-index: 10000;
421 }
20206dfb 422}