File tree Expand file tree Collapse file tree 4 files changed +63
-77
lines changed Expand file tree Collapse file tree 4 files changed +63
-77
lines changed Original file line number Diff line number Diff line change @@ -3,10 +3,22 @@ import { Controller } from '@hotwired/stimulus';
3
3
export default class extends Controller {
4
4
static targets = [ 'menuButton' ] ;
5
5
6
- connect ( ) {
6
+ initialize ( ) {
7
7
this . open = false ;
8
8
}
9
9
10
+ connect ( ) {
11
+ document . body . classList . remove ( 'locked' ) ;
12
+ }
13
+
14
+ disconnect ( ) {
15
+ document . body . classList . remove ( 'locked' ) ;
16
+ }
17
+
18
+ menuButtonDisconnected ( ) {
19
+ document . body . classList . remove ( 'locked' ) ;
20
+ }
21
+
10
22
toggleMenu ( ) {
11
23
this . open = ! this . open ;
12
24
this . element . classList . toggle ( 'open' , this . open ) ;
Original file line number Diff line number Diff line change
1
+ :root {
2
+ --header-breakpoint : 860px ;
3
+ }
4
+
1
5
.AppHeader {
6
+ --color-background-rgb : 255 255 255 ;
7
+ --text-color : var (--bs-body-color );
8
+
2
9
position : absolute ;
3
10
inset : 0 0 auto ;
4
11
z-index : 2 ;
5
-
6
12
padding : 1.5rem 0 ;
13
+ color : var (--text-color );
7
14
8
- @media (min-width : 576 px ) {
15
+ @media (min-width : 860 px ) {
9
16
padding-top : 2rem ;
10
17
}
11
- // @media (min-width: 768px) {
12
- // padding-top: 3rem;
13
- // }
14
-
15
- --color-background-rgb : 255 255 255 ;
16
- --text-color : var (--bs-body-color );
17
-
18
- color : var (--text-color );
19
18
}
20
- .AppHeader--white {
21
- --text-color : #fff ;
22
- }
23
-
24
19
[data-bs-theme = " dark" ] {
25
20
.AppHeader {
26
21
--color-background-rgb : 0 0 0 ;
27
22
}
28
- // .AppHeader--white {
29
- // --text-color: #fff;
30
- // }
31
23
}
32
-
33
-
34
- body .locked {
35
- overflow-y : hidden ;
24
+ .AppHeader--white {
25
+ --text-color : #fff ;
36
26
}
37
27
38
-
39
28
.AppHeader ::before {
40
29
position : fixed ;
41
30
inset : 0 ;
42
31
content : " " ;
43
32
backdrop-filter : blur (5px );
44
33
background : rgb (var (--color-background-rgb ) / 0.85 );
45
-
46
- // #0a0b0dde
47
-
48
34
opacity : 0 ;
49
35
transform : scaleX (0 );
50
36
}
51
- @keyframes fade {
37
+ @keyframes header- fade {
52
38
from {
53
39
opacity : 0 ;
54
40
}
55
41
to {
56
42
opacity : 1 ;
57
43
}
58
44
}
45
+
46
+ body .locked {
47
+ overflow-y : hidden ;
48
+ }
59
49
.AppHeader.open {
60
50
background : var (--bs-body-bg-rgb );
61
51
}
62
52
.AppHeader.open ::before {
63
53
transform : scaleX (1 );
64
54
inset : 0 ;
65
- animation : fade 200ms ;
55
+ animation : header - fade 200ms ;
66
56
opacity : 1 ;
67
57
}
68
58
@@ -74,9 +64,7 @@ body.locked {
74
64
background-size : 100% ;
75
65
display : block ;
76
66
transition : filter 250ms ease-in ;
77
-
78
67
flex-shrink : 0 ;
79
-
80
68
span {
81
69
display : none ;
82
70
}
@@ -100,7 +88,7 @@ body.locked {
100
88
font-size : 1.5rem !important ;
101
89
}
102
90
103
- @media (min-width : 576 px ) {
91
+ @media (min-width : 860 px ) {
104
92
.AppHeader_toggler {
105
93
display : none !important ;
106
94
}
Original file line number Diff line number Diff line change 6
6
gap : 1.5rem ;
7
7
justify-content : space-between ;
8
8
9
- @media (max-width : 575 px ) {
9
+ @media (max-width : 859 px ) {
10
10
flex-wrap : wrap ;
11
- gap : 1rem ;
12
11
}
13
12
}
14
13
15
-
16
14
.AppNav_actions {
17
15
flex-shrink : 0 ;
18
16
flex-wrap : nowrap ;
19
17
display : flex ;
20
18
flex-direction : row-reverse ;
21
- gap : 1 rem ;
19
+ gap : 1.5 rem ;
22
20
align-items : center ;
23
21
24
- @media (min-width : 575 px ) {
22
+ @media (min-width : 860 px ) {
25
23
order : 2 ;
26
24
}
27
25
}
28
26
29
-
30
- @media (max-width : 800px ) {
31
- .AppHeader .AppNav_menu {
32
- transform : translateY (-20% );
33
- opacity : 0 ;
34
- transition : transform 250ms ease-out ;
35
- z-index : -1 ;
36
- }
37
- .AppHeader.open .AppNav_menu {
38
- transform : translateY (0 );
39
- opacity : 1 ;
40
- z-index : 1 ;
41
- }
42
- }
43
-
44
-
45
27
.AppNav_menu {
46
-
47
- gap : 2rem ;
48
28
justify-content : flex-end ;
49
- // line-height: 2rem;
50
- align-items : center ;
51
29
display : flex ;
52
30
flex-direction : row ;
31
+ gap : 1.5rem ;
53
32
54
- @media (min-width : 800 px ) {
33
+ @media (min-width : 860 px ) {
55
34
margin-inline-start : auto ;
56
35
align-items : center ;
36
+ gap : 2rem ;
57
37
}
38
+ }
58
39
59
- @media (max-width : 800px ) {
60
-
40
+ @media (max-width : 859px ) {
41
+ .AppNav_menu {
42
+ transform : translateY (-20% );
43
+ opacity : 0 ;
44
+ z-index : -1 ;
45
+ transition : transform 250ms ease-out ;
61
46
width : 100% ;
62
47
flex-direction : column ;
63
- align-items : normal ;
64
-
65
48
padding : 1rem ;
66
49
gap : 1rem ;
67
50
}
68
- }
69
-
70
- @media (max-width : 800px ) {
51
+ .AppHeader.open .AppNav_menu {
52
+ transform : translateY (0 );
53
+ opacity : 1 ;
54
+ z-index : 1 ;
55
+ }
71
56
.AppNav_menu a {
72
57
font-size : 1.5rem ;
73
58
padding : .5rem ;
76
61
}
77
62
78
63
.AppNav_item {
79
-
80
64
color : inherit ;
81
65
font-family : var (--font-family-title );
82
66
font-size : 1rem ;
101
85
display : grid ;
102
86
place-content : center ;
103
87
104
- > .Icon {
88
+ .Icon {
105
89
font-size : 1.25rem ;
106
90
}
107
91
}
108
-
109
- .nav-component-img {
110
- height : 22px ;
111
- width : 22px ;
112
- border-radius : 4px ;
113
- }
Original file line number Diff line number Diff line change 3
3
4
4
<nav class =" AppNav AppNav--white" >
5
5
6
- <a class =" AppHeader_logo" href =" {{ path(' app_homepage' ) }}" aria-label =" Homepage" >
6
+ <a class =" AppHeader_logo" href =" {{ path(' app_homepage' ) }}" aria-label =" Homepage" >
7
7
<span aria-hidden =" false" >Symfony UX</span >
8
8
</a >
9
9
10
10
<div class =" AppNav_actions" >
11
- <button class =" AppHeader_toggler AppNav_item AppNav_item--icon" type =" button" data-action =" ux-header#toggleMenu" >
11
+ <button
12
+ class =" AppHeader_toggler AppNav_item AppNav_item--icon"
13
+ aria-label =" Toggle Menu"
14
+ data-action =" ux-header#toggleMenu"
15
+ >
12
16
<twig:Icon name =" menu" />
13
- <span aria-hidden =" false" >Menu</span >
14
17
</button >
15
18
16
- <twig:ThemeSwitcher class =" AppNav_item AppNav_item--icon" aria-label =" Switch dark/light mode" />
17
- <a class =" AppNav_item AppNav_item--icon" href =" https://github.com/symfony/ux" aria-label =" Symfony UX on GitHub" >
19
+ <twig:ThemeSwitcher class =" AppNav_item AppNav_item--icon" aria-label =" Switch dark/light mode" />
20
+
21
+ <a
22
+ class =" AppNav_item AppNav_item--icon"
23
+ aria-label =" Symfony UX on GitHub"
24
+ href =" https://github.com/symfony/ux"
25
+ >
18
26
<twig:Icon name =" github" />
19
27
</a >
20
28
</div >
You can’t perform that action at this time.
0 commit comments