@seed-design/css 1.0.5 → 1.0.6
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 +129 -17
- package/all.min.css +1 -1
- package/package.json +1 -1
- package/recipes/app-bar-main.css +6 -3
- package/recipes/app-bar.css +6 -6
- package/recipes/article.css +12 -0
- package/recipes/article.d.ts +19 -0
- package/recipes/article.mjs +22 -0
- package/recipes/switch-mark.css +6 -7
- package/recipes/switch.css +1 -0
- package/recipes/tag-group-item.css +50 -0
- package/recipes/tag-group-item.d.ts +30 -0
- package/recipes/tag-group-item.mjs +41 -0
- package/recipes/tag-group-tag.css +44 -0
- package/recipes/tag-group-tag.d.ts +30 -0
- package/recipes/tag-group-tag.mjs +41 -0
- package/recipes/tag-group.css +23 -0
- package/recipes/tag-group.d.ts +24 -0
- package/recipes/tag-group.mjs +44 -0
- package/recipes/text.css +10 -4
- package/recipes/text.d.ts +1 -1
- package/recipes/text.mjs +2 -1
- package/vars/component/index.d.ts +2 -0
- package/vars/component/index.mjs +2 -0
- package/vars/component/switch-mark.d.ts +23 -7
- package/vars/component/switch-mark.mjs +23 -7
- package/vars/component/switch.d.ts +3 -1
- package/vars/component/switch.mjs +3 -1
- package/vars/component/tag-group-item.d.ts +122 -0
- package/vars/component/tag-group-item.mjs +122 -0
- package/vars/component/tag-group.d.ts +34 -0
- package/vars/component/tag-group.mjs +34 -0
- package/vars/component/top-navigation.d.ts +6 -3
- package/vars/component/top-navigation.mjs +6 -3
package/package.json
CHANGED
package/recipes/app-bar-main.css
CHANGED
|
@@ -13,15 +13,18 @@
|
|
|
13
13
|
}
|
|
14
14
|
.seed-app-bar-main__title--layout_titleOnly {
|
|
15
15
|
font-size: var(--seed-font-size-t6-static);
|
|
16
|
-
font-weight: var(--seed-font-weight-bold)
|
|
16
|
+
font-weight: var(--seed-font-weight-bold);
|
|
17
|
+
line-height: var(--seed-line-height-t6-static)
|
|
17
18
|
}
|
|
18
19
|
.seed-app-bar-main__title--layout_withSubtitle {
|
|
19
20
|
font-size: var(--seed-font-size-t5-static);
|
|
20
|
-
font-weight: var(--seed-font-weight-bold)
|
|
21
|
+
font-weight: var(--seed-font-weight-bold);
|
|
22
|
+
line-height: var(--seed-line-height-t5-static)
|
|
21
23
|
}
|
|
22
24
|
.seed-app-bar-main__subtitle--layout_withSubtitle {
|
|
23
25
|
font-size: var(--seed-font-size-t2-static);
|
|
24
|
-
font-weight: var(--seed-font-weight-regular)
|
|
26
|
+
font-weight: var(--seed-font-weight-regular);
|
|
27
|
+
line-height: var(--seed-line-height-t2-static)
|
|
25
28
|
}
|
|
26
29
|
.seed-app-bar-main__root--theme_cupertino {
|
|
27
30
|
position: absolute;
|
package/recipes/app-bar.css
CHANGED
|
@@ -50,8 +50,8 @@
|
|
|
50
50
|
margin-right: calc(-1 * (44px - 24px) / 2);
|
|
51
51
|
}
|
|
52
52
|
.seed-app-bar__icon--theme_cupertino {
|
|
53
|
-
width: 24px;
|
|
54
|
-
height: 24px;
|
|
53
|
+
width: var(--seed-icon-size, 24px);
|
|
54
|
+
height: var(--seed-icon-size, 24px);
|
|
55
55
|
}
|
|
56
56
|
.seed-app-bar__root--theme_android {
|
|
57
57
|
height: calc(56px + var(--seed-safe-area-top));
|
|
@@ -69,8 +69,8 @@
|
|
|
69
69
|
margin-right: calc(-1 * (44px - 24px) / 2);
|
|
70
70
|
}
|
|
71
71
|
.seed-app-bar__icon--theme_android {
|
|
72
|
-
width: 24px;
|
|
73
|
-
height: 24px;
|
|
72
|
+
width: var(--seed-icon-size, 24px);
|
|
73
|
+
height: var(--seed-icon-size, 24px);
|
|
74
74
|
}
|
|
75
75
|
.seed-app-bar__left--theme_android {
|
|
76
76
|
padding-right: 16px;
|
|
@@ -240,13 +240,13 @@
|
|
|
240
240
|
background-color: var(--seed-color-bg-layer-default);
|
|
241
241
|
}
|
|
242
242
|
.seed-app-bar__icon--tone_layer {
|
|
243
|
-
color: var(--seed-color-fg-neutral);
|
|
243
|
+
color: var(--seed-icon-color, var(--seed-color-fg-neutral));
|
|
244
244
|
}
|
|
245
245
|
.seed-app-bar__root--tone_transparent:before {
|
|
246
246
|
background-color: #00000000;
|
|
247
247
|
}
|
|
248
248
|
.seed-app-bar__icon--tone_transparent {
|
|
249
|
-
color: var(--seed-color-palette-static-white);
|
|
249
|
+
color: var(--seed-icon-color, var(--seed-color-palette-static-white));
|
|
250
250
|
}
|
|
251
251
|
.seed-app-bar__root--divider_true:before {
|
|
252
252
|
box-shadow: inset 0px calc(-1 * 1px) 0 var(--seed-color-stroke-neutral-subtle);
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
.seed-article {
|
|
2
|
+
user-select: text;
|
|
3
|
+
word-break: normal;
|
|
4
|
+
overflow-wrap: break-word;
|
|
5
|
+
line-break: strict;
|
|
6
|
+
}
|
|
7
|
+
.seed-article:lang(ko) {
|
|
8
|
+
word-break: keep-all;
|
|
9
|
+
}
|
|
10
|
+
.seed-article::selection {
|
|
11
|
+
background-color: var(--seed-color-palette-carrot-300);
|
|
12
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
declare interface ArticleVariant {
|
|
2
|
+
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
declare type ArticleVariantMap = {
|
|
6
|
+
[key in keyof ArticleVariant]: Array<ArticleVariant[key]>;
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export declare type ArticleVariantProps = Partial<ArticleVariant>;
|
|
10
|
+
|
|
11
|
+
export declare const articleVariantMap: ArticleVariantMap;
|
|
12
|
+
|
|
13
|
+
export declare const article: ((
|
|
14
|
+
props?: ArticleVariantProps,
|
|
15
|
+
) => string) & {
|
|
16
|
+
splitVariantProps: <T extends ArticleVariantProps>(
|
|
17
|
+
props: T,
|
|
18
|
+
) => [ArticleVariantProps, Omit<T, keyof ArticleVariantProps>];
|
|
19
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import './article.css';
|
|
2
|
+
import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
|
|
3
|
+
|
|
4
|
+
const defaultVariant = {};
|
|
5
|
+
|
|
6
|
+
const compoundVariants = [];
|
|
7
|
+
|
|
8
|
+
export const articleVariantMap = {};
|
|
9
|
+
|
|
10
|
+
export const articleVariantKeys = Object.keys(articleVariantMap);
|
|
11
|
+
|
|
12
|
+
export function article(props) {
|
|
13
|
+
return createClassName(
|
|
14
|
+
"seed-article",
|
|
15
|
+
mergeVariants(defaultVariant, props),
|
|
16
|
+
compoundVariants,
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
Object.assign(article, { splitVariantProps: (props) => splitVariantProps(props, articleVariantMap) });
|
|
21
|
+
|
|
22
|
+
// @recipe(seed): article
|
package/recipes/switch-mark.css
CHANGED
|
@@ -5,14 +5,15 @@
|
|
|
5
5
|
border-radius: var(--seed-radius-full);
|
|
6
6
|
background: var(--seed-color-palette-gray-600);
|
|
7
7
|
margin: var(--switch-mark-margin-top, 0) 0;
|
|
8
|
-
transition: background-color
|
|
8
|
+
transition: background-color var(--seed-duration-d1) var(--seed-timing-function-easing) 20ms, opacity var(--seed-duration-d1) var(--seed-timing-function-easing);
|
|
9
9
|
}
|
|
10
10
|
.seed-switch-mark__root:is(:disabled, [disabled], [data-disabled]) {
|
|
11
11
|
opacity: 0.38;
|
|
12
12
|
}
|
|
13
13
|
.seed-switch-mark__thumb {
|
|
14
14
|
border-radius: var(--seed-radius-full);
|
|
15
|
-
transition: transform
|
|
15
|
+
transition: transform var(--seed-duration-d3) var(--seed-timing-function-easing), background-color var(--seed-duration-d1) var(--seed-timing-function-easing) 20ms;
|
|
16
|
+
transform: scale(0.8);
|
|
16
17
|
}
|
|
17
18
|
.seed-switch-mark__root--tone_neutral:is(:checked, [data-checked]) {
|
|
18
19
|
background: var(--seed-color-bg-neutral-inverted);
|
|
@@ -42,7 +43,7 @@
|
|
|
42
43
|
height: 12px;
|
|
43
44
|
}
|
|
44
45
|
.seed-switch-mark__thumb--size_16:is(:checked, [data-checked]) {
|
|
45
|
-
transform: translateX(calc(26px - 16px));
|
|
46
|
+
transform: scale(1) translateX(calc(26px - 16px));
|
|
46
47
|
}
|
|
47
48
|
.seed-switch-mark__root--size_24 {
|
|
48
49
|
min-inline-size: 38px;
|
|
@@ -52,10 +53,9 @@
|
|
|
52
53
|
.seed-switch-mark__thumb--size_24 {
|
|
53
54
|
width: 20px;
|
|
54
55
|
height: 20px;
|
|
55
|
-
box-shadow: 0px 3px 8px 0px #00000026, 0px 1px 3px 0px #0000000f;
|
|
56
56
|
}
|
|
57
57
|
.seed-switch-mark__thumb--size_24:is(:checked, [data-checked]) {
|
|
58
|
-
transform: translateX(calc(38px - 24px));
|
|
58
|
+
transform: scale(1) translateX(calc(38px - 24px));
|
|
59
59
|
}
|
|
60
60
|
.seed-switch-mark__root--size_32 {
|
|
61
61
|
min-inline-size: 52px;
|
|
@@ -65,8 +65,7 @@
|
|
|
65
65
|
.seed-switch-mark__thumb--size_32 {
|
|
66
66
|
width: 26px;
|
|
67
67
|
height: 26px;
|
|
68
|
-
box-shadow: 0px 3px 8px 0px #00000026, 0px 1px 3px 0px #0000000f;
|
|
69
68
|
}
|
|
70
69
|
.seed-switch-mark__thumb--size_32:is(:checked, [data-checked]) {
|
|
71
|
-
transform: translateX(calc(52px - 32px));
|
|
70
|
+
transform: scale(1) translateX(calc(52px - 32px));
|
|
72
71
|
}
|
package/recipes/switch.css
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
.seed-switch__label {
|
|
15
15
|
font-weight: var(--seed-font-weight-medium);
|
|
16
16
|
color: var(--seed-color-fg-neutral);
|
|
17
|
+
transition: opacity var(--seed-duration-d1) var(--seed-timing-function-easing);
|
|
17
18
|
}
|
|
18
19
|
.seed-switch__label:is(:disabled, [disabled], [data-disabled]) {
|
|
19
20
|
opacity: 0.58;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
.seed-tag-group-item {
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
gap: var(--seed-dimension-x0_5)
|
|
5
|
+
}
|
|
6
|
+
.seed-tag-group-item--size_t2 {
|
|
7
|
+
font-size: var(--seed-font-size-t2);
|
|
8
|
+
line-height: var(--seed-line-height-t2);
|
|
9
|
+
--seed-icon-size: var(--seed-dimension-x3);
|
|
10
|
+
--seed-prefix-icon-size: var(--seed-dimension-x3);
|
|
11
|
+
--seed-suffix-icon-size: var(--seed-dimension-x3)
|
|
12
|
+
}
|
|
13
|
+
.seed-tag-group-item--size_t3 {
|
|
14
|
+
font-size: var(--seed-font-size-t3);
|
|
15
|
+
line-height: var(--seed-line-height-t3);
|
|
16
|
+
--seed-icon-size: 13px;
|
|
17
|
+
--seed-prefix-icon-size: 13px;
|
|
18
|
+
--seed-suffix-icon-size: 13px
|
|
19
|
+
}
|
|
20
|
+
.seed-tag-group-item--size_t4 {
|
|
21
|
+
font-size: var(--seed-font-size-t4);
|
|
22
|
+
line-height: var(--seed-line-height-t4);
|
|
23
|
+
--seed-icon-size: var(--seed-dimension-x3_5);
|
|
24
|
+
--seed-prefix-icon-size: var(--seed-dimension-x3_5);
|
|
25
|
+
--seed-suffix-icon-size: var(--seed-dimension-x3_5)
|
|
26
|
+
}
|
|
27
|
+
.seed-tag-group-item--weight_regular {
|
|
28
|
+
font-weight: var(--seed-font-weight-regular)
|
|
29
|
+
}
|
|
30
|
+
.seed-tag-group-item--weight_bold {
|
|
31
|
+
font-weight: var(--seed-font-weight-bold)
|
|
32
|
+
}
|
|
33
|
+
.seed-tag-group-item--tone_neutralSubtle {
|
|
34
|
+
color: var(--seed-color-fg-neutral-subtle);
|
|
35
|
+
--seed-icon-color: var(--seed-color-fg-neutral-subtle);
|
|
36
|
+
--seed-prefix-icon-color: var(--seed-color-fg-neutral-subtle);
|
|
37
|
+
--seed-suffix-icon-color: var(--seed-color-fg-neutral-subtle)
|
|
38
|
+
}
|
|
39
|
+
.seed-tag-group-item--tone_neutral {
|
|
40
|
+
color: var(--seed-color-fg-neutral);
|
|
41
|
+
--seed-icon-color: var(--seed-color-fg-neutral);
|
|
42
|
+
--seed-prefix-icon-color: var(--seed-color-fg-neutral);
|
|
43
|
+
--seed-suffix-icon-color: var(--seed-color-fg-neutral)
|
|
44
|
+
}
|
|
45
|
+
.seed-tag-group-item--tone_brand {
|
|
46
|
+
color: var(--seed-color-fg-brand);
|
|
47
|
+
--seed-icon-color: var(--seed-color-fg-brand);
|
|
48
|
+
--seed-prefix-icon-color: var(--seed-color-fg-brand);
|
|
49
|
+
--seed-suffix-icon-color: var(--seed-color-fg-brand)
|
|
50
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
declare interface TagGroupItemVariant {
|
|
2
|
+
/**
|
|
3
|
+
* @default "t2"
|
|
4
|
+
*/
|
|
5
|
+
size: "t2" | "t3" | "t4";
|
|
6
|
+
/**
|
|
7
|
+
* @default "regular"
|
|
8
|
+
*/
|
|
9
|
+
weight: "regular" | "bold";
|
|
10
|
+
/**
|
|
11
|
+
* @default "neutralSubtle"
|
|
12
|
+
*/
|
|
13
|
+
tone: "neutralSubtle" | "neutral" | "brand";
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
declare type TagGroupItemVariantMap = {
|
|
17
|
+
[key in keyof TagGroupItemVariant]: Array<TagGroupItemVariant[key]>;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export declare type TagGroupItemVariantProps = Partial<TagGroupItemVariant>;
|
|
21
|
+
|
|
22
|
+
export declare const tagGroupItemVariantMap: TagGroupItemVariantMap;
|
|
23
|
+
|
|
24
|
+
export declare const tagGroupItem: ((
|
|
25
|
+
props?: TagGroupItemVariantProps,
|
|
26
|
+
) => string) & {
|
|
27
|
+
splitVariantProps: <T extends TagGroupItemVariantProps>(
|
|
28
|
+
props: T,
|
|
29
|
+
) => [TagGroupItemVariantProps, Omit<T, keyof TagGroupItemVariantProps>];
|
|
30
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import './tag-group-item.css';
|
|
2
|
+
import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
|
|
3
|
+
|
|
4
|
+
const defaultVariant = {
|
|
5
|
+
"size": "t2",
|
|
6
|
+
"weight": "regular",
|
|
7
|
+
"tone": "neutralSubtle"
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const compoundVariants = [];
|
|
11
|
+
|
|
12
|
+
export const tagGroupItemVariantMap = {
|
|
13
|
+
"size": [
|
|
14
|
+
"t2",
|
|
15
|
+
"t3",
|
|
16
|
+
"t4"
|
|
17
|
+
],
|
|
18
|
+
"weight": [
|
|
19
|
+
"regular",
|
|
20
|
+
"bold"
|
|
21
|
+
],
|
|
22
|
+
"tone": [
|
|
23
|
+
"neutralSubtle",
|
|
24
|
+
"neutral",
|
|
25
|
+
"brand"
|
|
26
|
+
]
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export const tagGroupItemVariantKeys = Object.keys(tagGroupItemVariantMap);
|
|
30
|
+
|
|
31
|
+
export function tagGroupItem(props) {
|
|
32
|
+
return createClassName(
|
|
33
|
+
"seed-tag-group-item",
|
|
34
|
+
mergeVariants(defaultVariant, props),
|
|
35
|
+
compoundVariants,
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
Object.assign(tagGroupItem, { splitVariantProps: (props) => splitVariantProps(props, tagGroupItemVariantMap) });
|
|
40
|
+
|
|
41
|
+
// @recipe(seed): tag-group-item
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
.seed-tag-group-tag {
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
gap: var(--seed-dimension-x0_5)
|
|
5
|
+
}
|
|
6
|
+
.seed-tag-group-tag--size_t2 {
|
|
7
|
+
font-size: var(--seed-font-size-t2);
|
|
8
|
+
line-height: var(--seed-line-height-t2);
|
|
9
|
+
--seed-prefix-icon-size: var(--seed-dimension-x3);
|
|
10
|
+
--seed-suffix-icon-size: var(--seed-dimension-x3)
|
|
11
|
+
}
|
|
12
|
+
.seed-tag-group-tag--size_t3 {
|
|
13
|
+
font-size: var(--seed-font-size-t3);
|
|
14
|
+
line-height: var(--seed-line-height-t3);
|
|
15
|
+
--seed-prefix-icon-size: 13px;
|
|
16
|
+
--seed-suffix-icon-size: 13px
|
|
17
|
+
}
|
|
18
|
+
.seed-tag-group-tag--size_t4 {
|
|
19
|
+
font-size: var(--seed-font-size-t4);
|
|
20
|
+
line-height: var(--seed-line-height-t4);
|
|
21
|
+
--seed-prefix-icon-size: var(--seed-dimension-x3_5);
|
|
22
|
+
--seed-suffix-icon-size: var(--seed-dimension-x3_5)
|
|
23
|
+
}
|
|
24
|
+
.seed-tag-group-tag--weight_regular {
|
|
25
|
+
font-weight: var(--seed-font-weight-regular)
|
|
26
|
+
}
|
|
27
|
+
.seed-tag-group-tag--weight_bold {
|
|
28
|
+
font-weight: var(--seed-font-weight-bold)
|
|
29
|
+
}
|
|
30
|
+
.seed-tag-group-tag--tone_neutralSubtle {
|
|
31
|
+
color: var(--seed-color-fg-neutral-subtle);
|
|
32
|
+
--seed-prefix-icon-color: var(--seed-color-fg-neutral-subtle);
|
|
33
|
+
--seed-suffix-icon-color: var(--seed-color-fg-neutral-subtle)
|
|
34
|
+
}
|
|
35
|
+
.seed-tag-group-tag--tone_neutral {
|
|
36
|
+
color: var(--seed-color-fg-neutral);
|
|
37
|
+
--seed-prefix-icon-color: var(--seed-color-fg-neutral);
|
|
38
|
+
--seed-suffix-icon-color: var(--seed-color-fg-neutral)
|
|
39
|
+
}
|
|
40
|
+
.seed-tag-group-tag--tone_brand {
|
|
41
|
+
color: var(--seed-color-fg-brand);
|
|
42
|
+
--seed-prefix-icon-color: var(--seed-color-fg-brand);
|
|
43
|
+
--seed-suffix-icon-color: var(--seed-color-fg-brand)
|
|
44
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
declare interface TagGroupTagVariant {
|
|
2
|
+
/**
|
|
3
|
+
* @default "t2"
|
|
4
|
+
*/
|
|
5
|
+
size: "t2" | "t3" | "t4";
|
|
6
|
+
/**
|
|
7
|
+
* @default "regular"
|
|
8
|
+
*/
|
|
9
|
+
weight: "regular" | "bold";
|
|
10
|
+
/**
|
|
11
|
+
* @default "neutralSubtle"
|
|
12
|
+
*/
|
|
13
|
+
tone: "neutralSubtle" | "neutral" | "brand";
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
declare type TagGroupTagVariantMap = {
|
|
17
|
+
[key in keyof TagGroupTagVariant]: Array<TagGroupTagVariant[key]>;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export declare type TagGroupTagVariantProps = Partial<TagGroupTagVariant>;
|
|
21
|
+
|
|
22
|
+
export declare const tagGroupTagVariantMap: TagGroupTagVariantMap;
|
|
23
|
+
|
|
24
|
+
export declare const tagGroupTag: ((
|
|
25
|
+
props?: TagGroupTagVariantProps,
|
|
26
|
+
) => string) & {
|
|
27
|
+
splitVariantProps: <T extends TagGroupTagVariantProps>(
|
|
28
|
+
props: T,
|
|
29
|
+
) => [TagGroupTagVariantProps, Omit<T, keyof TagGroupTagVariantProps>];
|
|
30
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import './tag-group-tag.css';
|
|
2
|
+
import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
|
|
3
|
+
|
|
4
|
+
const defaultVariant = {
|
|
5
|
+
"size": "t2",
|
|
6
|
+
"weight": "regular",
|
|
7
|
+
"tone": "neutralSubtle"
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const compoundVariants = [];
|
|
11
|
+
|
|
12
|
+
export const tagGroupTagVariantMap = {
|
|
13
|
+
"size": [
|
|
14
|
+
"t2",
|
|
15
|
+
"t3",
|
|
16
|
+
"t4"
|
|
17
|
+
],
|
|
18
|
+
"weight": [
|
|
19
|
+
"regular",
|
|
20
|
+
"bold"
|
|
21
|
+
],
|
|
22
|
+
"tone": [
|
|
23
|
+
"neutralSubtle",
|
|
24
|
+
"neutral",
|
|
25
|
+
"brand"
|
|
26
|
+
]
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export const tagGroupTagVariantKeys = Object.keys(tagGroupTagVariantMap);
|
|
30
|
+
|
|
31
|
+
export function tagGroupTag(props) {
|
|
32
|
+
return createClassName(
|
|
33
|
+
"seed-tag-group-tag",
|
|
34
|
+
mergeVariants(defaultVariant, props),
|
|
35
|
+
compoundVariants,
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
Object.assign(tagGroupTag, { splitVariantProps: (props) => splitVariantProps(props, tagGroupTagVariantMap) });
|
|
40
|
+
|
|
41
|
+
// @recipe(seed): tag-group-tag
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
.seed-tag-group__root {
|
|
2
|
+
display: inline-flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
flex-wrap: wrap
|
|
5
|
+
}
|
|
6
|
+
.seed-tag-group__separator {
|
|
7
|
+
color: var(--seed-color-palette-gray-600);
|
|
8
|
+
font-weight: var(--seed-font-weight-regular);
|
|
9
|
+
white-space: pre;
|
|
10
|
+
user-select: none
|
|
11
|
+
}
|
|
12
|
+
.seed-tag-group__separator--size_t2 {
|
|
13
|
+
font-size: var(--seed-font-size-t2);
|
|
14
|
+
line-height: var(--seed-line-height-t2)
|
|
15
|
+
}
|
|
16
|
+
.seed-tag-group__separator--size_t3 {
|
|
17
|
+
font-size: var(--seed-font-size-t3);
|
|
18
|
+
line-height: var(--seed-line-height-t3)
|
|
19
|
+
}
|
|
20
|
+
.seed-tag-group__separator--size_t4 {
|
|
21
|
+
font-size: var(--seed-font-size-t4);
|
|
22
|
+
line-height: var(--seed-line-height-t4)
|
|
23
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
declare interface TagGroupVariant {
|
|
2
|
+
/**
|
|
3
|
+
* @default "t2"
|
|
4
|
+
*/
|
|
5
|
+
size: "t2" | "t3" | "t4";
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
declare type TagGroupVariantMap = {
|
|
9
|
+
[key in keyof TagGroupVariant]: Array<TagGroupVariant[key]>;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export declare type TagGroupVariantProps = Partial<TagGroupVariant>;
|
|
13
|
+
|
|
14
|
+
export declare type TagGroupSlotName = "root" | "separator";
|
|
15
|
+
|
|
16
|
+
export declare const tagGroupVariantMap: TagGroupVariantMap;
|
|
17
|
+
|
|
18
|
+
export declare const tagGroup: ((
|
|
19
|
+
props?: TagGroupVariantProps,
|
|
20
|
+
) => Record<TagGroupSlotName, string>) & {
|
|
21
|
+
splitVariantProps: <T extends TagGroupVariantProps>(
|
|
22
|
+
props: T,
|
|
23
|
+
) => [TagGroupVariantProps, Omit<T, keyof TagGroupVariantProps>];
|
|
24
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import './tag-group.css';
|
|
2
|
+
import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
|
|
3
|
+
|
|
4
|
+
const tagGroupSlotNames = [
|
|
5
|
+
[
|
|
6
|
+
"root",
|
|
7
|
+
"seed-tag-group__root"
|
|
8
|
+
],
|
|
9
|
+
[
|
|
10
|
+
"separator",
|
|
11
|
+
"seed-tag-group__separator"
|
|
12
|
+
]
|
|
13
|
+
];
|
|
14
|
+
|
|
15
|
+
const defaultVariant = {
|
|
16
|
+
"size": "t2"
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
const compoundVariants = [];
|
|
20
|
+
|
|
21
|
+
export const tagGroupVariantMap = {
|
|
22
|
+
"size": [
|
|
23
|
+
"t2",
|
|
24
|
+
"t3",
|
|
25
|
+
"t4"
|
|
26
|
+
]
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export const tagGroupVariantKeys = Object.keys(tagGroupVariantMap);
|
|
30
|
+
|
|
31
|
+
export function tagGroup(props) {
|
|
32
|
+
return Object.fromEntries(
|
|
33
|
+
tagGroupSlotNames.map(([slot, className]) => {
|
|
34
|
+
return [
|
|
35
|
+
slot,
|
|
36
|
+
createClassName(className, mergeVariants(defaultVariant, props), compoundVariants),
|
|
37
|
+
];
|
|
38
|
+
}),
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
Object.assign(tagGroup, { splitVariantProps: (props) => splitVariantProps(props, tagGroupVariantMap) });
|
|
43
|
+
|
|
44
|
+
// @recipe(seed): tag-group
|
package/recipes/text.css
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
.seed-text {
|
|
2
2
|
margin: 0;
|
|
3
|
-
text-align: var(--seed-text-align);
|
|
4
3
|
color: var(--seed-text-color);
|
|
5
4
|
font-size: var(--seed-font-size);
|
|
6
|
-
line-height: var(--seed-line-height);
|
|
7
5
|
font-weight: var(--seed-font-weight);
|
|
6
|
+
line-height: var(--seed-line-height);
|
|
7
|
+
text-align: var(--seed-text-align);
|
|
8
|
+
user-select: var(--seed-user-select);
|
|
8
9
|
--seed-text-color: inherit;
|
|
9
10
|
--seed-font-size: inherit;
|
|
10
|
-
--seed-line-height: inherit;
|
|
11
11
|
--seed-font-weight: inherit;
|
|
12
|
+
--seed-line-height: inherit;
|
|
12
13
|
--seed-text-align: inherit;
|
|
14
|
+
--seed-user-select: inherit;
|
|
15
|
+
--seed-white-space: inherit;
|
|
13
16
|
--seed-max-lines: initial
|
|
14
17
|
}
|
|
15
18
|
.seed-text--textStyle_screenTitle {
|
|
@@ -146,7 +149,7 @@
|
|
|
146
149
|
overflow: unset;
|
|
147
150
|
min-width: unset;
|
|
148
151
|
text-overflow: unset;
|
|
149
|
-
white-space:
|
|
152
|
+
white-space: var(--seed-white-space);
|
|
150
153
|
-webkit-line-clamp: unset
|
|
151
154
|
}
|
|
152
155
|
.seed-text--maxLines_single {
|
|
@@ -171,4 +174,7 @@
|
|
|
171
174
|
}
|
|
172
175
|
.seed-text--textDecorationLine_line-through {
|
|
173
176
|
text-decoration-line: line-through
|
|
177
|
+
}
|
|
178
|
+
.seed-text--textDecorationLine_underline {
|
|
179
|
+
text-decoration-line: underline
|
|
174
180
|
}
|
package/recipes/text.d.ts
CHANGED
package/recipes/text.mjs
CHANGED
|
@@ -50,6 +50,8 @@ export { vars as switchMark } from "./switch-mark";
|
|
|
50
50
|
export { vars as switch } from "./switch";
|
|
51
51
|
export { vars as tab } from "./tab";
|
|
52
52
|
export { vars as tablist } from "./tablist";
|
|
53
|
+
export { vars as tagGroupItem } from "./tag-group-item";
|
|
54
|
+
export { vars as tagGroup } from "./tag-group";
|
|
53
55
|
export { vars as textButton } from "./text-button";
|
|
54
56
|
export { vars as textField } from "./text-field";
|
|
55
57
|
export { vars as toggleButton } from "./toggle-button";
|
package/vars/component/index.mjs
CHANGED
|
@@ -50,6 +50,8 @@ export { vars as switchMark } from "./switch-mark.mjs";
|
|
|
50
50
|
export { vars as switch } from "./switch.mjs";
|
|
51
51
|
export { vars as tab } from "./tab.mjs";
|
|
52
52
|
export { vars as tablist } from "./tablist.mjs";
|
|
53
|
+
export { vars as tagGroupItem } from "./tag-group-item.mjs";
|
|
54
|
+
export { vars as tagGroup } from "./tag-group.mjs";
|
|
53
55
|
export { vars as textButton } from "./text-button.mjs";
|
|
54
56
|
export { vars as textField } from "./text-field.mjs";
|
|
55
57
|
export { vars as toggleButton } from "./toggle-button.mjs";
|
|
@@ -2,16 +2,34 @@ export declare const vars: {
|
|
|
2
2
|
"base": {
|
|
3
3
|
"enabled": {
|
|
4
4
|
"root": {
|
|
5
|
+
"cornerRadius": "var(--seed-radius-full)",
|
|
5
6
|
"color": "var(--seed-color-palette-gray-600)",
|
|
6
|
-
"
|
|
7
|
+
"colorDuration": "var(--seed-duration-d1)",
|
|
8
|
+
"colorTimingFunction": "var(--seed-timing-function-easing)",
|
|
9
|
+
"colorDelay": "20ms"
|
|
7
10
|
},
|
|
8
11
|
"thumb": {
|
|
9
|
-
"cornerRadius": "var(--seed-radius-full)"
|
|
12
|
+
"cornerRadius": "var(--seed-radius-full)",
|
|
13
|
+
"scale": "0.8",
|
|
14
|
+
"scaleDuration": "var(--seed-duration-d3)",
|
|
15
|
+
"scaleTimingFunction": "var(--seed-timing-function-easing)",
|
|
16
|
+
"translateDuration": "var(--seed-duration-d3)",
|
|
17
|
+
"translateTimingFunction": "var(--seed-timing-function-easing)",
|
|
18
|
+
"colorDuration": "var(--seed-duration-d1)",
|
|
19
|
+
"colorTimingFunction": "var(--seed-timing-function-easing)",
|
|
20
|
+
"colorDelay": "20ms"
|
|
10
21
|
}
|
|
11
22
|
},
|
|
12
23
|
"disabled": {
|
|
13
24
|
"root": {
|
|
14
|
-
"opacity": "0.38"
|
|
25
|
+
"opacity": "0.38",
|
|
26
|
+
"opacityDuration": "var(--seed-duration-d1)",
|
|
27
|
+
"opacityTimingFunction": "var(--seed-timing-function-easing)"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"selected": {
|
|
31
|
+
"thumb": {
|
|
32
|
+
"scale": "1"
|
|
15
33
|
}
|
|
16
34
|
}
|
|
17
35
|
},
|
|
@@ -59,8 +77,7 @@ export declare const vars: {
|
|
|
59
77
|
},
|
|
60
78
|
"thumb": {
|
|
61
79
|
"height": "26px",
|
|
62
|
-
"width": "26px"
|
|
63
|
-
"shadow": "0px 3px 8px 0px #00000026, 0px 1px 3px 0px #0000000f"
|
|
80
|
+
"width": "26px"
|
|
64
81
|
}
|
|
65
82
|
}
|
|
66
83
|
},
|
|
@@ -74,8 +91,7 @@ export declare const vars: {
|
|
|
74
91
|
},
|
|
75
92
|
"thumb": {
|
|
76
93
|
"height": "20px",
|
|
77
|
-
"width": "20px"
|
|
78
|
-
"shadow": "0px 3px 8px 0px #00000026, 0px 1px 3px 0px #0000000f"
|
|
94
|
+
"width": "20px"
|
|
79
95
|
}
|
|
80
96
|
}
|
|
81
97
|
},
|