@seed-design/css 2.8.3 → 2.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/all.css +58 -26
- package/all.layered.css +58 -26
- package/base.css +6 -0
- package/base.layered.css +6 -0
- package/package.json +1 -1
- package/recipes/app-bar-main.css +2 -1
- package/recipes/app-bar-main.layered.css +2 -1
- package/recipes/app-bar.css +5 -3
- package/recipes/app-bar.layered.css +5 -3
- package/recipes/app-screen.css +5 -1
- package/recipes/app-screen.layered.css +6 -6
- package/recipes/bottom-sheet.css +4 -0
- package/recipes/bottom-sheet.layered.css +5 -1
- package/recipes/content-dialog.css +10 -6
- package/recipes/content-dialog.layered.css +10 -6
- package/recipes/dialog.css +6 -0
- package/recipes/dialog.layered.css +6 -0
- package/recipes/menu-sheet.css +5 -0
- package/recipes/menu-sheet.layered.css +5 -0
- package/recipes/side-panel.css +10 -6
- package/recipes/side-panel.layered.css +10 -6
- package/recipes/snackbar-region.css +3 -3
- package/recipes/snackbar-region.layered.css +3 -3
- package/vars/component/alert-dialog.d.ts +2 -0
- package/vars/component/bottom-sheet.d.ts +3 -0
- package/vars/component/bottom-sheet.mjs +1 -0
- package/vars/component/dialog.d.ts +6 -2
- package/vars/component/help-bubble.d.ts +2 -1
- package/vars/component/menu-sheet.d.ts +5 -0
- package/vars/component/menu-sheet.mjs +1 -0
- package/vars/component/menu.d.ts +2 -1
- package/vars/component/select.d.ts +2 -1
- package/vars/component/side-panel.d.ts +10 -7
- package/vars/component/snackbar.d.ts +1 -0
- package/vars/component/top-navigation.d.ts +1 -4
- package/vars/component/top-navigation.mjs +1 -4
- package/all.layered.min.css +0 -1
- package/all.min.css +0 -1
- package/base.layered.min.css +0 -1
- package/base.min.css +0 -1
|
@@ -54,8 +54,9 @@
|
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
.seed-app-bar__root--theme_cupertino {
|
|
57
|
-
height: calc(
|
|
58
|
-
padding-
|
|
57
|
+
height: calc(56px + var(--seed-safe-area-top));
|
|
58
|
+
padding-left: calc(var(--seed-dimension-x4) + var(--seed-safe-area-left));
|
|
59
|
+
padding-right: calc(var(--seed-dimension-x4) + var(--seed-safe-area-right));
|
|
59
60
|
padding-top: var(--seed-safe-area-top);
|
|
60
61
|
}
|
|
61
62
|
|
|
@@ -79,7 +80,8 @@
|
|
|
79
80
|
|
|
80
81
|
.seed-app-bar__root--theme_android {
|
|
81
82
|
height: calc(56px + var(--seed-safe-area-top));
|
|
82
|
-
padding-
|
|
83
|
+
padding-left: calc(var(--seed-dimension-x4) + var(--seed-safe-area-left));
|
|
84
|
+
padding-right: calc(var(--seed-dimension-x4) + var(--seed-safe-area-right));
|
|
83
85
|
padding-top: var(--seed-safe-area-top);
|
|
84
86
|
}
|
|
85
87
|
|
package/recipes/app-screen.css
CHANGED
|
@@ -20,6 +20,8 @@
|
|
|
20
20
|
width: 100%;
|
|
21
21
|
height: 100%;
|
|
22
22
|
inset-inline: 0;
|
|
23
|
+
padding-left: var(--seed-safe-area-left);
|
|
24
|
+
padding-right: var(--seed-safe-area-right);
|
|
23
25
|
overflow-y: scroll;
|
|
24
26
|
-webkit-overflow-scrolling: touch;
|
|
25
27
|
}
|
|
@@ -40,7 +42,7 @@
|
|
|
40
42
|
inset-inline: 0;
|
|
41
43
|
}
|
|
42
44
|
.seed-app-screen__root--theme_cupertino {
|
|
43
|
-
--app-bar-height:
|
|
45
|
+
--app-bar-height: 56px;
|
|
44
46
|
}
|
|
45
47
|
.seed-app-screen__root--theme_android {
|
|
46
48
|
--app-bar-height: 56px;
|
|
@@ -99,6 +101,8 @@
|
|
|
99
101
|
inset-inline: 0;
|
|
100
102
|
top: 0;
|
|
101
103
|
margin-bottom: calc(-1 * (66px + 400px + var(--seed-safe-area-top)));
|
|
104
|
+
margin-left: calc(-1 * var(--seed-safe-area-left));
|
|
105
|
+
margin-right: calc(-1 * var(--seed-safe-area-right));
|
|
102
106
|
height: calc(66px + 400px + var(--seed-safe-area-top));
|
|
103
107
|
background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.35) 400px, rgba(0, 0, 0, 0.00) 100%);
|
|
104
108
|
pointer-events: none;
|
|
@@ -19,9 +19,11 @@
|
|
|
19
19
|
.seed-app-screen__layer {
|
|
20
20
|
z-index: var(--z-index-layer);
|
|
21
21
|
box-sizing: border-box;
|
|
22
|
-
-webkit-overflow-scrolling: touch;
|
|
23
22
|
width: 100%;
|
|
24
23
|
height: 100%;
|
|
24
|
+
padding-left: var(--seed-safe-area-left);
|
|
25
|
+
padding-right: var(--seed-safe-area-right);
|
|
26
|
+
-webkit-overflow-scrolling: touch;
|
|
25
27
|
position: absolute;
|
|
26
28
|
inset-inline: 0;
|
|
27
29
|
overflow-y: scroll;
|
|
@@ -47,11 +49,7 @@
|
|
|
47
49
|
inset-inline: 0;
|
|
48
50
|
}
|
|
49
51
|
|
|
50
|
-
.seed-app-screen__root--theme_cupertino {
|
|
51
|
-
--app-bar-height: 44px;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
.seed-app-screen__root--theme_android {
|
|
52
|
+
.seed-app-screen__root--theme_cupertino, .seed-app-screen__root--theme_android {
|
|
55
53
|
--app-bar-height: 56px;
|
|
56
54
|
}
|
|
57
55
|
|
|
@@ -118,6 +116,8 @@
|
|
|
118
116
|
content: "";
|
|
119
117
|
inset-inline: 0;
|
|
120
118
|
margin-bottom: calc(-1 * (66px + 400px + var(--seed-safe-area-top)));
|
|
119
|
+
margin-left: calc(-1 * var(--seed-safe-area-left));
|
|
120
|
+
margin-right: calc(-1 * var(--seed-safe-area-right));
|
|
121
121
|
height: calc(66px + 400px + var(--seed-safe-area-top));
|
|
122
122
|
pointer-events: none;
|
|
123
123
|
z-index: 1;
|
package/recipes/bottom-sheet.css
CHANGED
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
align-items: flex-end;
|
|
6
6
|
inset: 0;
|
|
7
7
|
overscroll-behavior-y: none;
|
|
8
|
+
padding-left: var(--seed-safe-area-left);
|
|
9
|
+
padding-right: var(--seed-safe-area-right);
|
|
8
10
|
--sheet-z-index: 2;
|
|
9
11
|
z-index: calc(var(--sheet-z-index) + var(--layer-index, 0));
|
|
10
12
|
}
|
|
@@ -33,6 +35,7 @@
|
|
|
33
35
|
z-index: calc(var(--sheet-z-index) + var(--layer-index, 0));
|
|
34
36
|
background: var(--seed-color-bg-layer-floating);
|
|
35
37
|
max-width: 480px;
|
|
38
|
+
max-height: min(0.9 * 100%, 100% - var(--seed-safe-area-top));
|
|
36
39
|
border-top-left-radius: var(--seed-radius-r6);
|
|
37
40
|
border-top-right-radius: var(--seed-radius-r6);
|
|
38
41
|
padding-bottom: var(--seed-safe-area-bottom);
|
|
@@ -85,6 +88,7 @@
|
|
|
85
88
|
.seed-bottom-sheet__body {
|
|
86
89
|
display: flex;
|
|
87
90
|
flex-direction: column;
|
|
91
|
+
overflow-y: auto;
|
|
88
92
|
--seed-box-padding-x-base: var(--seed-dimension-spacing-x-global-gutter);
|
|
89
93
|
--seed-box-padding-x-sm: var(--seed-box-padding-x-base, initial);
|
|
90
94
|
--seed-box-padding-x-md: var(--seed-box-padding-x-sm, initial);
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
@layer seed-components {
|
|
2
2
|
.seed-bottom-sheet__positioner {
|
|
3
3
|
overscroll-behavior-y: none;
|
|
4
|
+
padding-left: var(--seed-safe-area-left);
|
|
5
|
+
padding-right: var(--seed-safe-area-right);
|
|
4
6
|
--sheet-z-index: 2;
|
|
5
7
|
z-index: calc(var(--sheet-z-index) + var(--layer-index, 0));
|
|
6
8
|
justify-content: center;
|
|
@@ -30,9 +32,10 @@
|
|
|
30
32
|
word-break: break-all;
|
|
31
33
|
z-index: calc(var(--sheet-z-index) + var(--layer-index, 0));
|
|
32
34
|
background: var(--seed-color-bg-layer-floating);
|
|
35
|
+
max-width: 480px;
|
|
36
|
+
max-height: min(.9 * 100%, 100% - var(--seed-safe-area-top));
|
|
33
37
|
border-top-left-radius: var(--seed-radius-r6);
|
|
34
38
|
border-top-right-radius: var(--seed-radius-r6);
|
|
35
|
-
max-width: 480px;
|
|
36
39
|
padding-bottom: var(--seed-safe-area-bottom);
|
|
37
40
|
touch-action: none;
|
|
38
41
|
will-change: transform;
|
|
@@ -127,6 +130,7 @@
|
|
|
127
130
|
align-items: var(--seed-box-align-items);
|
|
128
131
|
flex-direction: column;
|
|
129
132
|
display: flex;
|
|
133
|
+
overflow-y: auto;
|
|
130
134
|
}
|
|
131
135
|
|
|
132
136
|
.seed-bottom-sheet__footer {
|
|
@@ -5,6 +5,10 @@
|
|
|
5
5
|
align-items: center;
|
|
6
6
|
inset: 0;
|
|
7
7
|
overscroll-behavior-y: none;
|
|
8
|
+
padding-top: max(var(--seed-safe-area-top), var(--seed-safe-area-bottom));
|
|
9
|
+
padding-right: var(--seed-safe-area-right);
|
|
10
|
+
padding-bottom: max(var(--seed-safe-area-top), var(--seed-safe-area-bottom));
|
|
11
|
+
padding-left: var(--seed-safe-area-left);
|
|
8
12
|
--dialog-z-index: 2;
|
|
9
13
|
z-index: calc(var(--dialog-z-index) + var(--layer-index, 0));
|
|
10
14
|
}
|
|
@@ -44,7 +48,7 @@
|
|
|
44
48
|
z-index: calc(var(--dialog-z-index) + var(--layer-index, 0));
|
|
45
49
|
background: var(--seed-color-bg-layer-floating);
|
|
46
50
|
border-radius: var(--seed-radius-r5);
|
|
47
|
-
--content-dialog-default-width: calc(0.9 * 100vw);
|
|
51
|
+
--content-dialog-default-width: calc(0.9 * (100vw - var(--seed-safe-area-left) - var(--seed-safe-area-right)));
|
|
48
52
|
--content-dialog-default-max-width: calc(0.9 * 100%);
|
|
49
53
|
--seed-box-width-base: var(--content-dialog-default-width);
|
|
50
54
|
--seed-box-width-sm: var(--seed-box-width-base, initial);
|
|
@@ -58,15 +62,15 @@
|
|
|
58
62
|
--seed-box-max-width-lg: var(--seed-box-max-width-md, initial);
|
|
59
63
|
--seed-box-max-width-xl: var(--seed-box-max-width-lg, initial);
|
|
60
64
|
--seed-box-max-width: var(--seed-box-max-width-base, initial);
|
|
61
|
-
width: var(--seed-box-width);
|
|
62
|
-
max-width: var(--seed-box-max-width);
|
|
63
|
-
max-height:
|
|
64
|
-
max-height:
|
|
65
|
+
width: min(var(--seed-box-width), 100%);
|
|
66
|
+
max-width: min(var(--seed-box-max-width), 100%);
|
|
67
|
+
max-height: min(0.8 * 100vh, 100%);
|
|
68
|
+
max-height: min(0.8 * 100dvh, 100%);
|
|
65
69
|
}
|
|
66
70
|
@media (min-width: 768px) {
|
|
67
71
|
.seed-content-dialog__content {
|
|
68
72
|
--content-dialog-default-width: var(--content-dialog-size-width);
|
|
69
|
-
--content-dialog-default-max-width: calc(100vw - 2 * var(--seed-dimension-x5));
|
|
73
|
+
--content-dialog-default-max-width: calc(100vw - 2 * var(--seed-dimension-x5) - var(--seed-safe-area-left) - var(--seed-safe-area-right));
|
|
70
74
|
}
|
|
71
75
|
}
|
|
72
76
|
.seed-content-dialog__content:is([data-state="open"], [data-open]) {
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
@layer seed-components {
|
|
2
2
|
.seed-content-dialog__positioner {
|
|
3
3
|
overscroll-behavior-y: none;
|
|
4
|
+
padding-top: max(var(--seed-safe-area-top), var(--seed-safe-area-bottom));
|
|
5
|
+
padding-right: var(--seed-safe-area-right);
|
|
6
|
+
padding-bottom: max(var(--seed-safe-area-top), var(--seed-safe-area-bottom));
|
|
7
|
+
padding-left: var(--seed-safe-area-left);
|
|
4
8
|
--dialog-z-index: 2;
|
|
5
9
|
z-index: calc(var(--dialog-z-index) + var(--layer-index, 0));
|
|
6
10
|
justify-content: center;
|
|
@@ -44,7 +48,7 @@
|
|
|
44
48
|
z-index: calc(var(--dialog-z-index) + var(--layer-index, 0));
|
|
45
49
|
background: var(--seed-color-bg-layer-floating);
|
|
46
50
|
border-radius: var(--seed-radius-r5);
|
|
47
|
-
--content-dialog-default-width: calc(.9 * 100vw);
|
|
51
|
+
--content-dialog-default-width: calc(.9 * (100vw - var(--seed-safe-area-left) - var(--seed-safe-area-right)));
|
|
48
52
|
--content-dialog-default-max-width: calc(.9 * 100%);
|
|
49
53
|
--seed-box-width-base: var(--content-dialog-default-width);
|
|
50
54
|
--seed-box-width-sm: var(--seed-box-width-base, initial);
|
|
@@ -58,13 +62,13 @@
|
|
|
58
62
|
--seed-box-max-width-lg: var(--seed-box-max-width-md, initial);
|
|
59
63
|
--seed-box-max-width-xl: var(--seed-box-max-width-lg, initial);
|
|
60
64
|
--seed-box-max-width: var(--seed-box-max-width-base, initial);
|
|
61
|
-
width: var(--seed-box-width);
|
|
62
|
-
max-width: var(--seed-box-max-width);
|
|
63
|
-
max-height: 80vh;
|
|
65
|
+
width: min(var(--seed-box-width), 100%);
|
|
66
|
+
max-width: min(var(--seed-box-max-width), 100%);
|
|
67
|
+
max-height: min(80vh, 100%);
|
|
64
68
|
outline: none;
|
|
65
69
|
flex-direction: column;
|
|
66
70
|
flex: none;
|
|
67
|
-
max-height: 80dvh;
|
|
71
|
+
max-height: min(80dvh, 100%);
|
|
68
72
|
display: flex;
|
|
69
73
|
position: relative;
|
|
70
74
|
}
|
|
@@ -72,7 +76,7 @@
|
|
|
72
76
|
@media (min-width: 768px) {
|
|
73
77
|
.seed-content-dialog__content {
|
|
74
78
|
--content-dialog-default-width: var(--content-dialog-size-width);
|
|
75
|
-
--content-dialog-default-max-width: calc(100vw - 2 * var(--seed-dimension-x5));
|
|
79
|
+
--content-dialog-default-max-width: calc(100vw - 2 * var(--seed-dimension-x5) - var(--seed-safe-area-left) - var(--seed-safe-area-right));
|
|
76
80
|
}
|
|
77
81
|
}
|
|
78
82
|
|
package/recipes/dialog.css
CHANGED
|
@@ -5,6 +5,10 @@
|
|
|
5
5
|
align-items: center;
|
|
6
6
|
inset: 0;
|
|
7
7
|
overscroll-behavior-y: none;
|
|
8
|
+
padding-top: max(var(--seed-safe-area-top), var(--seed-safe-area-bottom));
|
|
9
|
+
padding-right: var(--seed-safe-area-right);
|
|
10
|
+
padding-bottom: max(var(--seed-safe-area-top), var(--seed-safe-area-bottom));
|
|
11
|
+
padding-left: var(--seed-safe-area-left);
|
|
8
12
|
--dialog-z-index: 2;
|
|
9
13
|
z-index: calc(var(--dialog-z-index) + var(--layer-index, 0));
|
|
10
14
|
}
|
|
@@ -25,6 +29,8 @@
|
|
|
25
29
|
z-index: calc(var(--dialog-z-index) + var(--layer-index, 0));
|
|
26
30
|
background: var(--seed-color-bg-layer-floating);
|
|
27
31
|
max-width: 272px;
|
|
32
|
+
max-height: 100%;
|
|
33
|
+
overflow-y: auto;
|
|
28
34
|
margin: auto var(--seed-dimension-x8);
|
|
29
35
|
border-radius: var(--seed-radius-r5);
|
|
30
36
|
}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
@layer seed-components {
|
|
2
2
|
.seed-dialog__positioner {
|
|
3
3
|
overscroll-behavior-y: none;
|
|
4
|
+
padding-top: max(var(--seed-safe-area-top), var(--seed-safe-area-bottom));
|
|
5
|
+
padding-right: var(--seed-safe-area-right);
|
|
6
|
+
padding-bottom: max(var(--seed-safe-area-top), var(--seed-safe-area-bottom));
|
|
7
|
+
padding-left: var(--seed-safe-area-left);
|
|
4
8
|
--dialog-z-index: 2;
|
|
5
9
|
z-index: calc(var(--dialog-z-index) + var(--layer-index, 0));
|
|
6
10
|
justify-content: center;
|
|
@@ -23,6 +27,7 @@
|
|
|
23
27
|
z-index: calc(var(--dialog-z-index) + var(--layer-index, 0));
|
|
24
28
|
background: var(--seed-color-bg-layer-floating);
|
|
25
29
|
max-width: 272px;
|
|
30
|
+
max-height: 100%;
|
|
26
31
|
margin: auto var(--seed-dimension-x8);
|
|
27
32
|
border-radius: var(--seed-radius-r5);
|
|
28
33
|
outline: none;
|
|
@@ -30,6 +35,7 @@
|
|
|
30
35
|
flex: 1;
|
|
31
36
|
display: flex;
|
|
32
37
|
position: relative;
|
|
38
|
+
overflow-y: auto;
|
|
33
39
|
}
|
|
34
40
|
|
|
35
41
|
.seed-dialog__content:is(:focus, [data-focus]) {
|
package/recipes/menu-sheet.css
CHANGED
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
align-items: flex-end;
|
|
6
6
|
inset: 0;
|
|
7
7
|
overscroll-behavior-y: none;
|
|
8
|
+
padding-left: var(--seed-safe-area-left);
|
|
9
|
+
padding-right: var(--seed-safe-area-right);
|
|
8
10
|
--sheet-z-index: 2;
|
|
9
11
|
z-index: calc(var(--sheet-z-index) + var(--layer-index, 0));
|
|
10
12
|
}
|
|
@@ -25,6 +27,7 @@
|
|
|
25
27
|
z-index: calc(var(--sheet-z-index) + var(--layer-index, 0));
|
|
26
28
|
background: var(--seed-color-bg-layer-floating);
|
|
27
29
|
max-width: 480px;
|
|
30
|
+
max-height: min(0.9 * 100%, 100% - var(--seed-safe-area-top));
|
|
28
31
|
padding-inline: var(--seed-dimension-spacing-x-global-gutter);
|
|
29
32
|
padding-top: var(--menu-sheet-header-padding-top, var(--seed-dimension-x4));
|
|
30
33
|
padding-bottom: calc(var(--seed-dimension-x4) + var(--seed-safe-area-bottom));
|
|
@@ -74,6 +77,7 @@
|
|
|
74
77
|
display: flex;
|
|
75
78
|
flex-direction: column;
|
|
76
79
|
align-items: stretch;
|
|
80
|
+
overflow-y: auto;
|
|
77
81
|
gap: var(--seed-dimension-x2_5);
|
|
78
82
|
}
|
|
79
83
|
.seed-menu-sheet__group {
|
|
@@ -81,6 +85,7 @@
|
|
|
81
85
|
flex-direction: column;
|
|
82
86
|
align-items: stretch;
|
|
83
87
|
overflow: hidden;
|
|
88
|
+
flex-shrink: 0;
|
|
84
89
|
border-radius: var(--seed-radius-r4);
|
|
85
90
|
}
|
|
86
91
|
.seed-menu-sheet__footer {
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
@layer seed-components {
|
|
2
2
|
.seed-menu-sheet__positioner {
|
|
3
3
|
overscroll-behavior-y: none;
|
|
4
|
+
padding-left: var(--seed-safe-area-left);
|
|
5
|
+
padding-right: var(--seed-safe-area-right);
|
|
4
6
|
--sheet-z-index: 2;
|
|
5
7
|
z-index: calc(var(--sheet-z-index) + var(--layer-index, 0));
|
|
6
8
|
justify-content: center;
|
|
@@ -23,6 +25,7 @@
|
|
|
23
25
|
z-index: calc(var(--sheet-z-index) + var(--layer-index, 0));
|
|
24
26
|
background: var(--seed-color-bg-layer-floating);
|
|
25
27
|
max-width: 480px;
|
|
28
|
+
max-height: min(.9 * 100%, 100% - var(--seed-safe-area-top));
|
|
26
29
|
padding-inline: var(--seed-dimension-spacing-x-global-gutter);
|
|
27
30
|
padding-top: var(--menu-sheet-header-padding-top, var(--seed-dimension-x4));
|
|
28
31
|
padding-bottom: calc(var(--seed-dimension-x4) + var(--seed-safe-area-bottom));
|
|
@@ -85,11 +88,13 @@
|
|
|
85
88
|
gap: var(--seed-dimension-x2_5);
|
|
86
89
|
flex-direction: column;
|
|
87
90
|
display: flex;
|
|
91
|
+
overflow-y: auto;
|
|
88
92
|
}
|
|
89
93
|
|
|
90
94
|
.seed-menu-sheet__group {
|
|
91
95
|
border-radius: var(--seed-radius-r4);
|
|
92
96
|
flex-direction: column;
|
|
97
|
+
flex-shrink: 0;
|
|
93
98
|
align-items: stretch;
|
|
94
99
|
display: flex;
|
|
95
100
|
overflow: hidden;
|
package/recipes/side-panel.css
CHANGED
|
@@ -40,22 +40,20 @@
|
|
|
40
40
|
background: var(--seed-color-bg-layer-floating);
|
|
41
41
|
touch-action: none;
|
|
42
42
|
will-change: transform;
|
|
43
|
-
--side-panel-default-width: calc(0.8 * 100vw);
|
|
43
|
+
--side-panel-default-width: calc(0.8 * (100vw - var(--seed-safe-area-left) - var(--seed-safe-area-right)));
|
|
44
44
|
--seed-box-width-base: var(--side-panel-default-width);
|
|
45
45
|
--seed-box-width-sm: var(--seed-box-width-base, initial);
|
|
46
46
|
--seed-box-width-md: var(--seed-box-width-sm, initial);
|
|
47
47
|
--seed-box-width-lg: var(--seed-box-width-md, initial);
|
|
48
48
|
--seed-box-width-xl: var(--seed-box-width-lg, initial);
|
|
49
49
|
--seed-box-width: var(--seed-box-width-base, initial);
|
|
50
|
-
--seed-box-max-width-base: calc(0.8 * 100%);
|
|
50
|
+
--seed-box-max-width-base: calc(0.8 * (100% - var(--seed-safe-area-left) - var(--seed-safe-area-right)));
|
|
51
51
|
--seed-box-max-width-sm: var(--seed-box-max-width-base, initial);
|
|
52
52
|
--seed-box-max-width-md: var(--seed-box-max-width-sm, initial);
|
|
53
53
|
--seed-box-max-width-lg: var(--seed-box-max-width-md, initial);
|
|
54
54
|
--seed-box-max-width-xl: var(--seed-box-max-width-lg, initial);
|
|
55
55
|
--seed-box-max-width: var(--seed-box-max-width-base, initial);
|
|
56
56
|
inset-block: 0;
|
|
57
|
-
width: var(--seed-box-width);
|
|
58
|
-
max-width: var(--seed-box-max-width);
|
|
59
57
|
padding-bottom: var(--seed-safe-area-bottom);
|
|
60
58
|
}
|
|
61
59
|
@media (min-width: 768px) {
|
|
@@ -76,14 +74,20 @@
|
|
|
76
74
|
}
|
|
77
75
|
.seed-side-panel__content[data-drawer-direction='left'] {
|
|
78
76
|
left: 0;
|
|
79
|
-
|
|
77
|
+
width: calc(var(--seed-box-width) + var(--seed-safe-area-left));
|
|
78
|
+
max-width: calc(var(--seed-box-max-width) + var(--seed-safe-area-left));
|
|
79
|
+
padding-left: var(--seed-safe-area-left);
|
|
80
|
+
padding-right: max(0px, var(--seed-safe-area-right) - (100% - var(--seed-safe-area-left) - min(var(--seed-box-width), var(--seed-box-max-width))));
|
|
80
81
|
}
|
|
81
82
|
.seed-side-panel__content[data-drawer-direction='left']::after {
|
|
82
83
|
right: 100%;
|
|
83
84
|
}
|
|
84
85
|
.seed-side-panel__content[data-drawer-direction='right'] {
|
|
85
86
|
right: 0;
|
|
86
|
-
|
|
87
|
+
width: calc(var(--seed-box-width) + var(--seed-safe-area-right));
|
|
88
|
+
max-width: calc(var(--seed-box-max-width) + var(--seed-safe-area-right));
|
|
89
|
+
padding-right: var(--seed-safe-area-right);
|
|
90
|
+
padding-left: max(0px, var(--seed-safe-area-left) - (100% - var(--seed-safe-area-right) - min(var(--seed-box-width), var(--seed-box-max-width))));
|
|
87
91
|
}
|
|
88
92
|
.seed-side-panel__content[data-drawer-direction='right']::after {
|
|
89
93
|
left: 100%;
|
|
@@ -42,21 +42,19 @@
|
|
|
42
42
|
background: var(--seed-color-bg-layer-floating);
|
|
43
43
|
touch-action: none;
|
|
44
44
|
will-change: transform;
|
|
45
|
-
--side-panel-default-width: calc(.8 * 100vw);
|
|
45
|
+
--side-panel-default-width: calc(.8 * (100vw - var(--seed-safe-area-left) - var(--seed-safe-area-right)));
|
|
46
46
|
--seed-box-width-base: var(--side-panel-default-width);
|
|
47
47
|
--seed-box-width-sm: var(--seed-box-width-base, initial);
|
|
48
48
|
--seed-box-width-md: var(--seed-box-width-sm, initial);
|
|
49
49
|
--seed-box-width-lg: var(--seed-box-width-md, initial);
|
|
50
50
|
--seed-box-width-xl: var(--seed-box-width-lg, initial);
|
|
51
51
|
--seed-box-width: var(--seed-box-width-base, initial);
|
|
52
|
-
--seed-box-max-width-base: calc(.8 * 100%);
|
|
52
|
+
--seed-box-max-width-base: calc(.8 * (100% - var(--seed-safe-area-left) - var(--seed-safe-area-right)));
|
|
53
53
|
--seed-box-max-width-sm: var(--seed-box-max-width-base, initial);
|
|
54
54
|
--seed-box-max-width-md: var(--seed-box-max-width-sm, initial);
|
|
55
55
|
--seed-box-max-width-lg: var(--seed-box-max-width-md, initial);
|
|
56
56
|
--seed-box-max-width-xl: var(--seed-box-max-width-lg, initial);
|
|
57
57
|
--seed-box-max-width: var(--seed-box-max-width-base, initial);
|
|
58
|
-
width: var(--seed-box-width);
|
|
59
|
-
max-width: var(--seed-box-max-width);
|
|
60
58
|
padding-bottom: var(--seed-safe-area-bottom);
|
|
61
59
|
flex-direction: column;
|
|
62
60
|
display: flex;
|
|
@@ -84,7 +82,10 @@
|
|
|
84
82
|
}
|
|
85
83
|
|
|
86
84
|
.seed-side-panel__content[data-drawer-direction="left"] {
|
|
87
|
-
|
|
85
|
+
width: calc(var(--seed-box-width) + var(--seed-safe-area-left));
|
|
86
|
+
max-width: calc(var(--seed-box-max-width) + var(--seed-safe-area-left));
|
|
87
|
+
padding-left: var(--seed-safe-area-left);
|
|
88
|
+
padding-right: max(0px, var(--seed-safe-area-right) - (100% - var(--seed-safe-area-left) - min(var(--seed-box-width), var(--seed-box-max-width))));
|
|
88
89
|
left: 0;
|
|
89
90
|
}
|
|
90
91
|
|
|
@@ -93,7 +94,10 @@
|
|
|
93
94
|
}
|
|
94
95
|
|
|
95
96
|
.seed-side-panel__content[data-drawer-direction="right"] {
|
|
96
|
-
|
|
97
|
+
width: calc(var(--seed-box-width) + var(--seed-safe-area-right));
|
|
98
|
+
max-width: calc(var(--seed-box-max-width) + var(--seed-safe-area-right));
|
|
99
|
+
padding-right: var(--seed-safe-area-right);
|
|
100
|
+
padding-left: max(0px, var(--seed-safe-area-left) - (100% - var(--seed-safe-area-right) - min(var(--seed-box-width), var(--seed-box-max-width))));
|
|
97
101
|
right: 0;
|
|
98
102
|
}
|
|
99
103
|
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
display: flex;
|
|
4
4
|
flex-direction: column;
|
|
5
5
|
align-items: center;
|
|
6
|
-
left:
|
|
7
|
-
right:
|
|
8
|
-
bottom: calc(
|
|
6
|
+
left: var(--seed-safe-area-left);
|
|
7
|
+
right: var(--seed-safe-area-right);
|
|
8
|
+
bottom: calc(var(--seed-safe-area-bottom) + var(--snackbar-region-offset, 0px));
|
|
9
9
|
padding-inline: var(--seed-dimension-x2);
|
|
10
10
|
padding-block: var(--seed-dimension-x2);
|
|
11
11
|
transition-property: bottom;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
@layer seed-components {
|
|
2
2
|
.seed-snackbar-region {
|
|
3
3
|
z-index: 2147483647;
|
|
4
|
-
left:
|
|
5
|
-
right:
|
|
6
|
-
bottom: calc(
|
|
4
|
+
left: var(--seed-safe-area-left);
|
|
5
|
+
right: var(--seed-safe-area-right);
|
|
6
|
+
bottom: calc(var(--seed-safe-area-bottom) + var(--snackbar-region-offset, 0px));
|
|
7
7
|
padding-inline: var(--seed-dimension-x2);
|
|
8
8
|
padding-block: var(--seed-dimension-x2);
|
|
9
9
|
transition-property: bottom;
|
|
@@ -10,9 +10,11 @@ export declare const vars: {
|
|
|
10
10
|
"exitTimingFunction": "var(--seed-timing-function-exit)",
|
|
11
11
|
"exitOpacity": "0"
|
|
12
12
|
},
|
|
13
|
+
/** content는 가로 기준으로 안전 영역의 가운데에 놓입니다. 세로 기준으로는 상단과 하단 inset 중 큰 값을 위아래에 똑같이 두어 화면 가운데에 놓이고, 높이는 그 사이 높이를 넘지 않습니다. */
|
|
13
14
|
"content": {
|
|
14
15
|
"color": "var(--seed-color-bg-layer-floating)",
|
|
15
16
|
"cornerRadius": "var(--seed-radius-r5)",
|
|
17
|
+
/** content와 좌우 안전 영역 경계 사이의 최소 간격입니다. 화면 끝이 아니라 안전 영역 경계부터 잽니다. */
|
|
16
18
|
"marginX": "var(--seed-dimension-x8)",
|
|
17
19
|
"marginY": "var(--seed-dimension-x16)",
|
|
18
20
|
"maxWidth": "272px",
|
|
@@ -10,9 +10,12 @@ export declare const vars: {
|
|
|
10
10
|
"exitTimingFunction": "var(--seed-timing-function-exit)",
|
|
11
11
|
"exitOpacity": "0"
|
|
12
12
|
},
|
|
13
|
+
/** content는 가로 기준으로 안전 영역의 가운데에 놓이고, 하단 inset을 content의 하단 패딩으로 적용합니다. */
|
|
13
14
|
"content": {
|
|
14
15
|
"color": "var(--seed-color-bg-layer-floating)",
|
|
15
16
|
"maxWidth": "480px",
|
|
17
|
+
/** inset을 빼지 않은 viewport height 또는 parent height에 대한 최대 비율입니다. 최대 높이는 min(maxHeightFraction × 높이, 상단 inset을 뺀 높이)이므로, content는 상단 안전 영역 경계까지만 커집니다. */
|
|
18
|
+
"maxHeightFraction": "0.9",
|
|
16
19
|
"topCornerRadius": "var(--seed-radius-r6)",
|
|
17
20
|
"enterDuration": "var(--seed-duration-d6)",
|
|
18
21
|
"enterTimingFunction": "var(--seed-timing-function-enter-expressive)",
|
|
@@ -13,6 +13,7 @@ export const vars = {
|
|
|
13
13
|
"content": {
|
|
14
14
|
"color": "var(--seed-color-bg-layer-floating)",
|
|
15
15
|
"maxWidth": "480px",
|
|
16
|
+
"maxHeightFraction": "0.9",
|
|
16
17
|
"topCornerRadius": "var(--seed-radius-r6)",
|
|
17
18
|
"enterDuration": "var(--seed-duration-d6)",
|
|
18
19
|
"enterTimingFunction": "var(--seed-timing-function-enter-expressive)",
|
|
@@ -10,13 +10,15 @@ export declare const vars: {
|
|
|
10
10
|
"exitTimingFunction": "var(--seed-timing-function-exit)",
|
|
11
11
|
"exitOpacity": "0"
|
|
12
12
|
},
|
|
13
|
+
/** content는 가로 기준으로 안전 영역의 가운데에 놓이고, 소비자가 지정한 너비는 안전 영역의 너비를 기준으로 합니다. 세로 기준으로는 상단과 하단 inset 중 큰 값을 위아래에 똑같이 두어 화면 가운데에 놓입니다. */
|
|
13
14
|
"content": {
|
|
14
15
|
"color": "var(--seed-color-bg-layer-floating)",
|
|
15
16
|
"cornerRadius": "var(--seed-radius-r5)",
|
|
16
|
-
/** viewport width 또는 parent width에 대한 비율입니다. viewport `md` 미만에서 적용합니다. */
|
|
17
|
+
/** 좌우 inset을 뺀 viewport width 또는 parent width에 대한 비율입니다. viewport `md` 미만에서 적용합니다. */
|
|
17
18
|
"widthFraction": "0.9",
|
|
18
|
-
/** viewport height 또는 parent height에 대한 최대 비율입니다. */
|
|
19
|
+
/** viewport height 또는 parent height에 대한 최대 비율입니다. 최대 높이는 min(maxHeightFraction × 높이, 상단과 하단 inset 중 큰 값을 위아래에서 각각 뺀 높이)입니다. */
|
|
19
20
|
"maxHeightFraction": "0.8",
|
|
21
|
+
/** viewport `md` 이상에서 content와 좌우 안전 영역 경계 사이에 두는 최소 간격입니다. */
|
|
20
22
|
"marginX": "var(--seed-dimension-x5)",
|
|
21
23
|
"enterDuration": "var(--seed-duration-d4)",
|
|
22
24
|
"enterTimingFunction": "var(--seed-timing-function-enter-expressive)",
|
|
@@ -76,6 +78,7 @@ export declare const vars: {
|
|
|
76
78
|
},
|
|
77
79
|
"sizeMedium": {
|
|
78
80
|
"enabled": {
|
|
81
|
+
/** content는 가로 기준으로 안전 영역의 가운데에 놓이고, 소비자가 지정한 너비는 안전 영역의 너비를 기준으로 합니다. 세로 기준으로는 상단과 하단 inset 중 큰 값을 위아래에 똑같이 두어 화면 가운데에 놓입니다. */
|
|
79
82
|
"content": {
|
|
80
83
|
"maxWidth": "480px"
|
|
81
84
|
}
|
|
@@ -83,6 +86,7 @@ export declare const vars: {
|
|
|
83
86
|
},
|
|
84
87
|
"sizeLarge": {
|
|
85
88
|
"enabled": {
|
|
89
|
+
/** content는 가로 기준으로 안전 영역의 가운데에 놓이고, 소비자가 지정한 너비는 안전 영역의 너비를 기준으로 합니다. 세로 기준으로는 상단과 하단 inset 중 큰 값을 위아래에 똑같이 두어 화면 가운데에 놓입니다. */
|
|
86
90
|
"content": {
|
|
87
91
|
"maxWidth": "800px"
|
|
88
92
|
}
|
|
@@ -7,6 +7,7 @@ export declare const vars: {
|
|
|
7
7
|
"paddingX": "var(--seed-dimension-x3)",
|
|
8
8
|
"paddingY": "var(--seed-dimension-x2_5)",
|
|
9
9
|
"gap": "var(--seed-dimension-x1)",
|
|
10
|
+
/** 가용 너비(overflowPadding 참고)가 이보다 작으면 가용 너비로 축소됩니다. */
|
|
10
11
|
"maxWidth": "280px",
|
|
11
12
|
"enterScale": "0.9",
|
|
12
13
|
"enterOpacity": "0",
|
|
@@ -16,7 +17,7 @@ export declare const vars: {
|
|
|
16
17
|
"exitOpacity": "0",
|
|
17
18
|
"exitDuration": "var(--seed-duration-d4)",
|
|
18
19
|
"exitTimingFunction": "var(--seed-timing-function-easing)",
|
|
19
|
-
/** 말풍선과
|
|
20
|
+
/** 말풍선과 안전 영역 경계 사이의 최소 간격을 정의합니다. 말풍선은 화면 끝에서 inset + overflowPadding만큼 안쪽에 배치되며, 가용 너비도 같은 기준으로 계산합니다. */
|
|
20
21
|
"overflowPadding": "var(--seed-dimension-x4)"
|
|
21
22
|
},
|
|
22
23
|
"arrow": {
|
|
@@ -10,11 +10,15 @@ export declare const vars: {
|
|
|
10
10
|
"exitTimingFunction": "var(--seed-timing-function-exit)",
|
|
11
11
|
"exitOpacity": "0"
|
|
12
12
|
},
|
|
13
|
+
/** content는 가로 기준으로 안전 영역의 가운데에 놓입니다. */
|
|
13
14
|
"content": {
|
|
14
15
|
"color": "var(--seed-color-bg-layer-floating)",
|
|
15
16
|
"maxWidth": "480px",
|
|
17
|
+
/** inset을 빼지 않은 viewport height 또는 parent height에 대한 최대 비율입니다. 최대 높이는 min(maxHeightFraction × 높이, 상단 inset을 뺀 높이)이므로, content는 상단 안전 영역 경계까지만 커집니다. */
|
|
18
|
+
"maxHeightFraction": "0.9",
|
|
16
19
|
"paddingX": "var(--seed-dimension-spacing-x-global-gutter)",
|
|
17
20
|
"paddingTop": "var(--seed-dimension-x6)",
|
|
21
|
+
/** 이 값은 하단 inset과 합산하여 적용합니다. */
|
|
18
22
|
"paddingBottom": "var(--seed-dimension-x4)",
|
|
19
23
|
"topCornerRadius": "var(--seed-radius-r5)",
|
|
20
24
|
"enterDuration": "var(--seed-duration-d6)",
|
|
@@ -24,6 +28,7 @@ export declare const vars: {
|
|
|
24
28
|
},
|
|
25
29
|
"header": {
|
|
26
30
|
"gap": "var(--seed-dimension-x1)",
|
|
31
|
+
/** 이 값은 하단 inset과 합산하여 적용합니다. */
|
|
27
32
|
"paddingBottom": "var(--seed-dimension-x4)"
|
|
28
33
|
},
|
|
29
34
|
"title": {
|
|
@@ -13,6 +13,7 @@ export const vars = {
|
|
|
13
13
|
"content": {
|
|
14
14
|
"color": "var(--seed-color-bg-layer-floating)",
|
|
15
15
|
"maxWidth": "480px",
|
|
16
|
+
"maxHeightFraction": "0.9",
|
|
16
17
|
"paddingX": "var(--seed-dimension-spacing-x-global-gutter)",
|
|
17
18
|
"paddingTop": "var(--seed-dimension-x6)",
|
|
18
19
|
"paddingBottom": "var(--seed-dimension-x4)",
|
package/vars/component/menu.d.ts
CHANGED
|
@@ -17,8 +17,9 @@ export declare const vars: {
|
|
|
17
17
|
"gap": "var(--seed-dimension-x2)",
|
|
18
18
|
/** 트리거와 메뉴 사이의 간격을 정의합니다. */
|
|
19
19
|
"gutter": "var(--seed-dimension-x2)",
|
|
20
|
-
/** 메뉴와
|
|
20
|
+
/** 메뉴와 안전 영역 경계 사이의 최소 간격을 정의합니다. 메뉴는 화면 끝에서 inset + overflowPadding만큼 안쪽에 배치되며, 가용 높이도 같은 기준으로 계산합니다. */
|
|
21
21
|
"overflowPadding": "var(--seed-dimension-x2)",
|
|
22
|
+
/** 가용 높이(overflowPadding 참고)가 이보다 작으면 가용 높이로 축소됩니다. */
|
|
22
23
|
"maxHeight": "480px"
|
|
23
24
|
},
|
|
24
25
|
"groupLabel": {
|
|
@@ -17,8 +17,9 @@ export declare const vars: {
|
|
|
17
17
|
"gap": "var(--seed-dimension-x2)",
|
|
18
18
|
/** 트리거와 목록 사이의 간격을 정의합니다. */
|
|
19
19
|
"gutter": "var(--seed-dimension-x2)",
|
|
20
|
-
/** 목록과
|
|
20
|
+
/** 목록과 안전 영역 경계 사이의 최소 간격을 정의합니다. 목록은 화면 끝에서 inset + overflowPadding만큼 안쪽에 배치되며, 가용 높이도 같은 기준으로 계산합니다. */
|
|
21
21
|
"overflowPadding": "var(--seed-dimension-x2)",
|
|
22
|
+
/** 가용 높이(overflowPadding 참고)가 이보다 작으면 가용 높이로 축소됩니다. */
|
|
22
23
|
"maxHeight": "480px"
|
|
23
24
|
},
|
|
24
25
|
"groupLabel": {
|