aboutsummaryrefslogtreecommitdiffhomepage
path: root/client
diff options
context:
space:
mode:
Diffstat (limited to 'client')
-rw-r--r--client/src/app/+videos/+video-watch/shared/action-buttons/action-buttons.component.html2
-rw-r--r--client/src/app/+videos/+video-watch/shared/action-buttons/action-buttons.component.scss3
-rw-r--r--client/src/app/shared/shared-forms/input-text.component.ts1
-rw-r--r--client/src/assets/images/feather/external-link.svg2
-rw-r--r--client/src/assets/images/feather/skip-back.svg2
-rw-r--r--client/src/assets/images/feather/skip-forward.svg2
-rw-r--r--client/src/sass/application.scss166
-rw-r--r--client/src/sass/class-helpers.scss212
-rw-r--r--client/src/sass/classes.scss39
9 files changed, 220 insertions, 209 deletions
diff --git a/client/src/app/+videos/+video-watch/shared/action-buttons/action-buttons.component.html b/client/src/app/+videos/+video-watch/shared/action-buttons/action-buttons.component.html
index f23efca98..cf32e371a 100644
--- a/client/src/app/+videos/+video-watch/shared/action-buttons/action-buttons.component.html
+++ b/client/src/app/+videos/+video-watch/shared/action-buttons/action-buttons.component.html
@@ -1,5 +1,5 @@
1<div class="video-actions-rates"> 1<div class="video-actions-rates">
2 <div class="video-actions full-width justify-content-end"> 2 <div class="video-actions justify-content-end">
3 <my-video-rate 3 <my-video-rate
4 [video]="video" [isUserLoggedIn]="isUserLoggedIn" 4 [video]="video" [isUserLoggedIn]="isUserLoggedIn"
5 (rateUpdated)="onRateUpdated($event)" (userRatingLoaded)="onRateUpdated($event)" 5 (rateUpdated)="onRateUpdated($event)" (userRatingLoaded)="onRateUpdated($event)"
diff --git a/client/src/app/+videos/+video-watch/shared/action-buttons/action-buttons.component.scss b/client/src/app/+videos/+video-watch/shared/action-buttons/action-buttons.component.scss
index fdf4e3edb..786d10f73 100644
--- a/client/src/app/+videos/+video-watch/shared/action-buttons/action-buttons.component.scss
+++ b/client/src/app/+videos/+video-watch/shared/action-buttons/action-buttons.component.scss
@@ -5,6 +5,9 @@
5 height: 40px; // Align with the title 5 height: 40px; // Align with the title
6 display: flex; 6 display: flex;
7 align-items: center; 7 align-items: center;
8 width: 100%;
9 margin: 0 auto;
10 max-width: initial;
8 11
9 .action-button:not(:first-child), 12 .action-button:not(:first-child),
10 .action-dropdown, 13 .action-dropdown,
diff --git a/client/src/app/shared/shared-forms/input-text.component.ts b/client/src/app/shared/shared-forms/input-text.component.ts
index 1e1da6771..ed4637c17 100644
--- a/client/src/app/shared/shared-forms/input-text.component.ts
+++ b/client/src/app/shared/shared-forms/input-text.component.ts
@@ -2,7 +2,6 @@ import { Component, forwardRef, Input } from '@angular/core'
2import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms' 2import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms'
3import { Notifier } from '@app/core' 3import { Notifier } from '@app/core'
4 4
5
6@Component({ 5@Component({
7 selector: 'my-input-text', 6 selector: 'my-input-text',
8 templateUrl: './input-text.component.html', 7 templateUrl: './input-text.component.html',
diff --git a/client/src/assets/images/feather/external-link.svg b/client/src/assets/images/feather/external-link.svg
index 6236df3e0..9ea666879 100644
--- a/client/src/assets/images/feather/external-link.svg
+++ b/client/src/assets/images/feather/external-link.svg
@@ -1 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-external-link"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line></svg> \ No newline at end of file <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-external-link"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6M15 3h6v6M10 14 21 3"/></svg> \ No newline at end of file
diff --git a/client/src/assets/images/feather/skip-back.svg b/client/src/assets/images/feather/skip-back.svg
index 672e94d5f..6b1876159 100644
--- a/client/src/assets/images/feather/skip-back.svg
+++ b/client/src/assets/images/feather/skip-back.svg
@@ -1 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-skip-back"><polygon points="19 20 9 12 19 4 19 20"/><line x1="5" y1="19" x2="5" y2="5"/></svg> \ No newline at end of file <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-skip-back"><path d="M19 20 9 12l10-8v16zM5 19V5"/></svg> \ No newline at end of file
diff --git a/client/src/assets/images/feather/skip-forward.svg b/client/src/assets/images/feather/skip-forward.svg
index f3fdac3ae..5673a2987 100644
--- a/client/src/assets/images/feather/skip-forward.svg
+++ b/client/src/assets/images/feather/skip-forward.svg
@@ -1 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-skip-forward"><polygon points="5 4 15 12 5 20 5 4"></polygon><line x1="19" y1="5" x2="19" y2="19"></line></svg> \ No newline at end of file <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-skip-forward"><path d="m5 4 10 8-10 8V4zM19 5v14"/></svg> \ No newline at end of file
diff --git a/client/src/sass/application.scss b/client/src/sass/application.scss
index 2aa743cf1..58e77adac 100644
--- a/client/src/sass/application.scss
+++ b/client/src/sass/application.scss
@@ -6,7 +6,7 @@
6 6
7@use '_fonts'; 7@use '_fonts';
8 8
9@use './classes'; 9@use './class-helpers';
10@use './custom-markup'; 10@use './custom-markup';
11@use './ng-select'; 11@use './ng-select';
12 12
@@ -132,31 +132,6 @@ code {
132 vertical-align: middle; 132 vertical-align: middle;
133} 133}
134 134
135.form-group {
136 margin-bottom: 1rem;
137}
138
139.form-error,
140.form-warning {
141 display: block;
142 margin-top: 5px;
143}
144
145.form-error {
146 color: $red;
147}
148
149.input-error,
150my-input-text ::ng-deep input {
151 border-color: $red !important;
152}
153
154.full-width {
155 width: 100%;
156 margin: 0 auto;
157 max-width: initial;
158}
159
160.main-col { 135.main-col {
161 @include margin-left($menu-width); 136 @include margin-left($menu-width);
162 137
@@ -210,62 +185,6 @@ my-input-text ::ng-deep input {
210 } 185 }
211} 186}
212 187
213.title-page {
214 @include disable-default-a-behaviour;
215 @include margin-right(55px);
216
217 opacity: 0.6;
218 color: pvar(--mainForegroundColor);
219 font-size: 16px;
220 display: inline-block;
221 font-weight: $font-semibold;
222 border-bottom: 2px solid transparent;
223
224 &.title-page-single {
225 margin-top: 30px;
226 margin-bottom: 25px;
227 }
228
229 &.active {
230 border-bottom-color: pvar(--mainColor);
231 }
232
233 &.title-page-single {
234 font-size: 125%;
235 }
236
237 &:hover,
238 &:active,
239 &:focus {
240 color: pvar(--mainForegroundColor);
241 }
242
243 &.active,
244 &:hover,
245 &:active,
246 &:focus,
247 &.title-page-single {
248 opacity: 1;
249 outline: 0 hidden !important;
250 }
251
252 @media screen and (max-width: $mobile-view) {
253 @include margin-left(15px);
254 }
255}
256
257.title-page-about,
258.title-page-settings {
259 white-space: nowrap;
260 font-size: 115%;
261}
262
263.admin-sub-header {
264 display: flex;
265 align-items: center;
266 margin-bottom: 30px;
267}
268
269// In tables, don't have a hover different background 188// In tables, don't have a hover different background
270table { 189table {
271 my-edit-button, 190 my-edit-button,
@@ -283,18 +202,6 @@ table {
283 } 202 }
284} 203}
285 204
286.no-results {
287 height: 40vh;
288 max-height: 500px;
289
290 display: flex;
291 flex-direction: column;
292 align-items: center;
293 justify-content: center;
294 font-size: 16px;
295 font-weight: $font-semibold;
296}
297
298.dropdown-item { 205.dropdown-item {
299 @include dropdown-with-icon-item; 206 @include dropdown-with-icon-item;
300 207
@@ -311,73 +218,6 @@ my-global-icon[iconName=external-link] {
311 color: pvar(--inputPlaceholderColor); 218 color: pvar(--inputPlaceholderColor);
312} 219}
313 220
314.chevron-down {
315 @include chevron-down(0.55rem, 0.15rem);
316
317 margin: 0 8px;
318}
319
320.chevron-up {
321 @include chevron-up(0.55rem, 0.15rem);
322
323 margin: 0 8px;
324}
325
326.chevron-right {
327 @include chevron-right(0.55rem, 0.15rem);
328
329 margin: 0 8px;
330}
331
332.chevron-left {
333 @include chevron-left(0.55rem, 0.15rem);
334
335 margin: 0 8px;
336}
337
338/* offsetTop for scrollToAnchor */
339
340.anchor {
341 position: relative;
342 top: #{-($header-height + 20px)};
343}
344
345.offset-content { // if sub-menu fixed
346 .anchor {
347 top: #{-($header-height + $sub-menu-height + 20px)};
348 }
349}
350
351.form-group-description {
352 @extend .muted !optional;
353
354 font-size: 90%;
355 margin-top: 10px;
356}
357
358.callout {
359 padding: 1.25rem;
360 border: 1px solid #eee;
361 border-radius: .25rem;
362 position: relative;
363
364 > label {
365 position: relative;
366 top: -5px;
367 left: -10px;
368 color: #6c757d !important;
369 }
370
371 &:not(.callout-light) {
372 border-left-width: .25rem;
373 }
374
375 &.callout-info {
376 border-color: pvar(--mainColorLightest);
377 border-left-color: pvar(--mainColor);
378 }
379}
380
381@media screen and (max-width: #{breakpoint(xxl)}) { 221@media screen and (max-width: #{breakpoint(xxl)}) {
382 .main-col { 222 .main-col {
383 --horizontalMarginContent: #{math.div($not-expanded-horizontal-margins, 2)}; 223 --horizontalMarginContent: #{math.div($not-expanded-horizontal-margins, 2)};
@@ -434,10 +274,6 @@ my-global-icon[iconName=external-link] {
434 padding-top: $sub-menu-height + $sub-menu-margin-bottom-small-view; 274 padding-top: $sub-menu-height + $sub-menu-margin-bottom-small-view;
435 } 275 }
436 276
437 .admin-sub-header {
438 flex-direction: column;
439 }
440
441 my-markdown-textarea { 277 my-markdown-textarea {
442 .root { 278 .root {
443 max-width: 100% !important; 279 max-width: 100% !important;
diff --git a/client/src/sass/class-helpers.scss b/client/src/sass/class-helpers.scss
new file mode 100644
index 000000000..45d45e0f8
--- /dev/null
+++ b/client/src/sass/class-helpers.scss
@@ -0,0 +1,212 @@
1@use '_variables' as *;
2@use '_mixins' as *;
3@use '_badges' as *;
4@use '_icons' as *;
5
6.peertube-button {
7 @include peertube-button;
8}
9
10.peertube-button-link {
11 @include peertube-button-link;
12}
13
14.orange-button {
15 @include orange-button;
16}
17
18.orange-button-inverted {
19 @include orange-button-inverted;
20}
21
22.grey-button {
23 @include grey-button;
24}
25
26.tertiary-button {
27 @include tertiary-button;
28}
29
30.peertube-radio-container {
31 @include peertube-radio-container;
32}
33
34// ---------------------------------------------------------------------------
35
36.muted {
37 color: pvar(--greyForegroundColor) !important;
38}
39
40// ---------------------------------------------------------------------------
41
42.pt-badge {
43 @include peertube-badge;
44}
45
46// ---------------------------------------------------------------------------
47
48.form-group {
49 margin-bottom: 1rem;
50}
51
52.form-error,
53.form-warning {
54 display: block;
55 margin-top: 5px;
56}
57
58.form-error {
59 color: $red;
60}
61
62.input-error {
63 border-color: $red !important;
64}
65
66.form-group-description {
67 @extend .muted !optional;
68
69 font-size: 90%;
70 margin-top: 10px;
71}
72
73// ---------------------------------------------------------------------------
74
75
76.title-page {
77 @include disable-default-a-behaviour;
78 @include margin-right(55px);
79
80 opacity: 0.6;
81 color: pvar(--mainForegroundColor);
82 font-size: 16px;
83 display: inline-block;
84 font-weight: $font-semibold;
85 border-bottom: 2px solid transparent;
86
87 &.title-page-single {
88 margin-top: 30px;
89 margin-bottom: 25px;
90 }
91
92 &.active {
93 border-bottom-color: pvar(--mainColor);
94 }
95
96 &.title-page-single {
97 font-size: 125%;
98 }
99
100 &:hover,
101 &:active,
102 &:focus {
103 color: pvar(--mainForegroundColor);
104 }
105
106 &.active,
107 &:hover,
108 &:active,
109 &:focus,
110 &.title-page-single {
111 opacity: 1;
112 outline: 0 hidden !important;
113 }
114
115 @media screen and (max-width: $mobile-view) {
116 @include margin-left(15px);
117 }
118}
119
120.title-page-about,
121.title-page-settings {
122 white-space: nowrap;
123 font-size: 115%;
124}
125
126.admin-sub-header {
127 display: flex;
128 align-items: center;
129 margin-bottom: 30px;
130
131 @media screen and (max-width: $small-view) {
132 flex-direction: column;
133 }
134}
135
136// ---------------------------------------------------------------------------
137
138.no-results {
139 height: 40vh;
140 max-height: 500px;
141
142 display: flex;
143 flex-direction: column;
144 align-items: center;
145 justify-content: center;
146 font-size: 16px;
147 font-weight: $font-semibold;
148}
149
150// ---------------------------------------------------------------------------
151
152.chevron-down {
153 @include chevron-down(0.55rem, 0.15rem);
154
155 margin: 0 8px;
156}
157
158.chevron-up {
159 @include chevron-up(0.55rem, 0.15rem);
160
161 margin: 0 8px;
162}
163
164.chevron-right {
165 @include chevron-right(0.55rem, 0.15rem);
166
167 margin: 0 8px;
168}
169
170.chevron-left {
171 @include chevron-left(0.55rem, 0.15rem);
172
173 margin: 0 8px;
174}
175
176// ---------------------------------------------------------------------------
177
178.callout {
179 padding: 1.25rem;
180 border: 1px solid #eee;
181 border-radius: .25rem;
182 position: relative;
183
184 > label {
185 position: relative;
186 top: -5px;
187 left: -10px;
188 color: #6c757d !important;
189 }
190
191 &:not(.callout-light) {
192 border-left-width: .25rem;
193 }
194
195 &.callout-info {
196 border-color: pvar(--mainColorLightest);
197 border-left-color: pvar(--mainColor);
198 }
199}
200
201// ---------------------------------------------------------------------------
202
203.anchor {
204 position: relative;
205 top: #{-($header-height + 20px)};
206}
207
208.offset-content { // if sub-menu fixed
209 .anchor {
210 top: #{-($header-height + $sub-menu-height + 20px)};
211 }
212}
diff --git a/client/src/sass/classes.scss b/client/src/sass/classes.scss
deleted file mode 100644
index 35bcfba4b..000000000
--- a/client/src/sass/classes.scss
+++ /dev/null
@@ -1,39 +0,0 @@
1@use '_variables' as *;
2@use '_mixins' as *;
3@use '_badges' as *;
4
5.peertube-button {
6 @include peertube-button;
7}
8
9.peertube-button-link {
10 @include peertube-button-link;
11}
12
13.orange-button {
14 @include orange-button;
15}
16
17.orange-button-inverted {
18 @include orange-button-inverted;
19}
20
21.grey-button {
22 @include grey-button;
23}
24
25.tertiary-button {
26 @include tertiary-button;
27}
28
29.peertube-radio-container {
30 @include peertube-radio-container;
31}
32
33.muted {
34 color: pvar(--greyForegroundColor) !important;
35}
36
37.pt-badge {
38 @include peertube-badge;
39}