@seed-design/lynx-css 0.9.3 → 0.10.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 +1026 -243
- package/all.min.css +1 -1
- package/base.css +156 -154
- package/base.min.css +1 -1
- package/package.json +1 -1
- package/recipes/manner-temp-badge.css +78 -0
- package/recipes/manner-temp-badge.d.ts +24 -0
- package/recipes/manner-temp-badge.mjs +51 -0
- package/recipes/manner-temp.css +52 -0
- package/recipes/manner-temp.d.ts +24 -0
- package/recipes/manner-temp.mjs +55 -0
- package/recipes/notification-badge-positioner.css +29 -0
- package/recipes/notification-badge-positioner.d.ts +26 -0
- package/recipes/notification-badge-positioner.mjs +51 -0
- package/recipes/notification-badge.css +33 -0
- package/recipes/notification-badge.d.ts +27 -0
- package/recipes/notification-badge.mjs +43 -0
- package/recipes/page-banner.css +357 -0
- package/recipes/page-banner.d.ts +36 -0
- package/recipes/page-banner.mjs +194 -0
- package/recipes/segmented-control.css +91 -0
- package/recipes/segmented-control.d.ts +36 -0
- package/recipes/segmented-control.mjs +75 -0
- package/recipes/select-box-checkmark.css +33 -0
- package/recipes/select-box-checkmark.d.ts +32 -0
- package/recipes/select-box-checkmark.mjs +63 -0
- package/recipes/select-box-group.css +10 -0
- package/recipes/select-box-group.d.ts +22 -0
- package/recipes/select-box-group.mjs +29 -0
- package/recipes/select-box.css +145 -0
- package/recipes/select-box.d.ts +40 -0
- package/recipes/select-box.mjs +108 -0
- package/vars/component/callout.d.ts +6 -2
- package/vars/component/callout.mjs +6 -2
- package/vars/component/image-frame-reaction-button.d.ts +26 -2
- package/vars/component/image-frame-reaction-button.mjs +26 -2
- package/vars/component/page-banner.d.ts +6 -2
- package/vars/component/page-banner.mjs +6 -2
- package/vars/component/scroll-fog.d.ts +69 -2
- package/vars/component/scroll-fog.mjs +69 -2
- package/vars/component/skeleton.d.ts +6 -2
- package/vars/component/skeleton.mjs +6 -2
- package/vars/component/top-navigation-icon-button.d.ts +10 -1
- package/vars/component/top-navigation-icon-button.mjs +10 -1
- package/vars/component/top-navigation-text-button.d.ts +10 -1
- package/vars/component/top-navigation-text-button.mjs +10 -1
- package/vars/component/top-navigation.d.ts +24 -5
- package/vars/component/top-navigation.mjs +23 -5
- package/vars/gradient.d.ts +2 -0
- package/vars/gradient.mjs +1 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import './manner-temp-badge.css';
|
|
2
|
+
import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
|
|
3
|
+
|
|
4
|
+
const mannerTempBadgeSlotNames = [
|
|
5
|
+
[
|
|
6
|
+
"root",
|
|
7
|
+
"seed-manner-temp-badge__root"
|
|
8
|
+
],
|
|
9
|
+
[
|
|
10
|
+
"label",
|
|
11
|
+
"seed-manner-temp-badge__label"
|
|
12
|
+
]
|
|
13
|
+
];
|
|
14
|
+
|
|
15
|
+
const defaultVariant = {
|
|
16
|
+
"level": "l1"
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
const compoundVariants = [];
|
|
20
|
+
|
|
21
|
+
export const mannerTempBadgeVariantMap = {
|
|
22
|
+
"level": [
|
|
23
|
+
"l1",
|
|
24
|
+
"l2",
|
|
25
|
+
"l3",
|
|
26
|
+
"l4",
|
|
27
|
+
"l5",
|
|
28
|
+
"l6",
|
|
29
|
+
"l7",
|
|
30
|
+
"l8",
|
|
31
|
+
"l9",
|
|
32
|
+
"l10"
|
|
33
|
+
]
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export const mannerTempBadgeVariantKeys = Object.keys(mannerTempBadgeVariantMap);
|
|
37
|
+
|
|
38
|
+
export function mannerTempBadge(props) {
|
|
39
|
+
return Object.fromEntries(
|
|
40
|
+
mannerTempBadgeSlotNames.map(([slot, className]) => {
|
|
41
|
+
return [
|
|
42
|
+
slot,
|
|
43
|
+
createClassName(className, mergeVariants(defaultVariant, props), compoundVariants),
|
|
44
|
+
];
|
|
45
|
+
}),
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
Object.assign(mannerTempBadge, { splitVariantProps: (props) => splitVariantProps(props, mannerTempBadgeVariantMap) });
|
|
50
|
+
|
|
51
|
+
// @recipe(seed): manner-temp-badge
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
.seed-manner-temp__root {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: row;
|
|
4
|
+
justify-content: flex-start;
|
|
5
|
+
align-items: center;
|
|
6
|
+
flex-shrink: 0;
|
|
7
|
+
gap: var(--seed-dimension-x1)
|
|
8
|
+
}
|
|
9
|
+
.seed-manner-temp__label {
|
|
10
|
+
font-size: var(--seed-font-size-t5);
|
|
11
|
+
line-height: var(--seed-line-height-t5);
|
|
12
|
+
font-weight: var(--seed-font-weight-bold)
|
|
13
|
+
}
|
|
14
|
+
.seed-manner-temp__emote {
|
|
15
|
+
width: var(--seed-dimension-x8);
|
|
16
|
+
height: var(--seed-dimension-x8);
|
|
17
|
+
margin-left: calc(var(--seed-dimension-x1) * -1);
|
|
18
|
+
margin-right: calc(var(--seed-dimension-x1) * -1);
|
|
19
|
+
margin-top: calc(var(--seed-dimension-x1) * -1);
|
|
20
|
+
margin-bottom: calc(var(--seed-dimension-x1) * -1);
|
|
21
|
+
flex-shrink: 0
|
|
22
|
+
}
|
|
23
|
+
.seed-manner-temp__label--level_l1 {
|
|
24
|
+
color: var(--seed-color-manner-temp-l1-text)
|
|
25
|
+
}
|
|
26
|
+
.seed-manner-temp__label--level_l2 {
|
|
27
|
+
color: var(--seed-color-manner-temp-l2-text)
|
|
28
|
+
}
|
|
29
|
+
.seed-manner-temp__label--level_l3 {
|
|
30
|
+
color: var(--seed-color-manner-temp-l3-text)
|
|
31
|
+
}
|
|
32
|
+
.seed-manner-temp__label--level_l4 {
|
|
33
|
+
color: var(--seed-color-manner-temp-l4-text)
|
|
34
|
+
}
|
|
35
|
+
.seed-manner-temp__label--level_l5 {
|
|
36
|
+
color: var(--seed-color-manner-temp-l5-text)
|
|
37
|
+
}
|
|
38
|
+
.seed-manner-temp__label--level_l6 {
|
|
39
|
+
color: var(--seed-color-manner-temp-l6-text)
|
|
40
|
+
}
|
|
41
|
+
.seed-manner-temp__label--level_l7 {
|
|
42
|
+
color: var(--seed-color-manner-temp-l7-text)
|
|
43
|
+
}
|
|
44
|
+
.seed-manner-temp__label--level_l8 {
|
|
45
|
+
color: var(--seed-color-manner-temp-l8-text)
|
|
46
|
+
}
|
|
47
|
+
.seed-manner-temp__label--level_l9 {
|
|
48
|
+
color: var(--seed-color-manner-temp-l9-text)
|
|
49
|
+
}
|
|
50
|
+
.seed-manner-temp__label--level_l10 {
|
|
51
|
+
color: var(--seed-color-manner-temp-l10-text)
|
|
52
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
declare interface MannerTempVariant {
|
|
2
|
+
/**
|
|
3
|
+
* @default "l1"
|
|
4
|
+
*/
|
|
5
|
+
level: "l1" | "l2" | "l3" | "l4" | "l5" | "l6" | "l7" | "l8" | "l9" | "l10";
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
declare type MannerTempVariantMap = {
|
|
9
|
+
[key in keyof MannerTempVariant]: Array<MannerTempVariant[key]>;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export declare type MannerTempVariantProps = Partial<MannerTempVariant>;
|
|
13
|
+
|
|
14
|
+
export declare type MannerTempSlotName = "root" | "label" | "emote";
|
|
15
|
+
|
|
16
|
+
export declare const mannerTempVariantMap: MannerTempVariantMap;
|
|
17
|
+
|
|
18
|
+
export declare const mannerTemp: ((
|
|
19
|
+
props?: MannerTempVariantProps,
|
|
20
|
+
) => Record<MannerTempSlotName, string>) & {
|
|
21
|
+
splitVariantProps: <T extends MannerTempVariantProps>(
|
|
22
|
+
props: T,
|
|
23
|
+
) => [MannerTempVariantProps, Omit<T, keyof MannerTempVariantProps>];
|
|
24
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import './manner-temp.css';
|
|
2
|
+
import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
|
|
3
|
+
|
|
4
|
+
const mannerTempSlotNames = [
|
|
5
|
+
[
|
|
6
|
+
"root",
|
|
7
|
+
"seed-manner-temp__root"
|
|
8
|
+
],
|
|
9
|
+
[
|
|
10
|
+
"label",
|
|
11
|
+
"seed-manner-temp__label"
|
|
12
|
+
],
|
|
13
|
+
[
|
|
14
|
+
"emote",
|
|
15
|
+
"seed-manner-temp__emote"
|
|
16
|
+
]
|
|
17
|
+
];
|
|
18
|
+
|
|
19
|
+
const defaultVariant = {
|
|
20
|
+
"level": "l1"
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
const compoundVariants = [];
|
|
24
|
+
|
|
25
|
+
export const mannerTempVariantMap = {
|
|
26
|
+
"level": [
|
|
27
|
+
"l1",
|
|
28
|
+
"l2",
|
|
29
|
+
"l3",
|
|
30
|
+
"l4",
|
|
31
|
+
"l5",
|
|
32
|
+
"l6",
|
|
33
|
+
"l7",
|
|
34
|
+
"l8",
|
|
35
|
+
"l9",
|
|
36
|
+
"l10"
|
|
37
|
+
]
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
export const mannerTempVariantKeys = Object.keys(mannerTempVariantMap);
|
|
41
|
+
|
|
42
|
+
export function mannerTemp(props) {
|
|
43
|
+
return Object.fromEntries(
|
|
44
|
+
mannerTempSlotNames.map(([slot, className]) => {
|
|
45
|
+
return [
|
|
46
|
+
slot,
|
|
47
|
+
createClassName(className, mergeVariants(defaultVariant, props), compoundVariants),
|
|
48
|
+
];
|
|
49
|
+
}),
|
|
50
|
+
);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
Object.assign(mannerTemp, { splitVariantProps: (props) => splitVariantProps(props, mannerTempVariantMap) });
|
|
54
|
+
|
|
55
|
+
// @recipe(seed): manner-temp
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
.seed-notification-badge-positioner {
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
justify-content: center;
|
|
5
|
+
position: absolute;
|
|
6
|
+
width: max-content
|
|
7
|
+
}
|
|
8
|
+
.seed-notification-badge-positioner--attach_icon {
|
|
9
|
+
transform: translate(100%, -100%)
|
|
10
|
+
}
|
|
11
|
+
.seed-notification-badge-positioner--attach_text {
|
|
12
|
+
transform: translate(100%, 0%)
|
|
13
|
+
}
|
|
14
|
+
.seed-notification-badge-positioner--size_small {}
|
|
15
|
+
.seed-notification-badge-positioner--size_large {}
|
|
16
|
+
.seed-notification-badge-positioner--size_large-attach_icon {
|
|
17
|
+
top: 14px;
|
|
18
|
+
right: 8px
|
|
19
|
+
}
|
|
20
|
+
.seed-notification-badge-positioner--size_small-attach_icon {
|
|
21
|
+
top: 7px;
|
|
22
|
+
right: 7px
|
|
23
|
+
}
|
|
24
|
+
.seed-notification-badge-positioner--size_large-attach_text {
|
|
25
|
+
right: calc(-1 * 2px)
|
|
26
|
+
}
|
|
27
|
+
.seed-notification-badge-positioner--size_small-attach_text {
|
|
28
|
+
right: calc(-1 * 2px)
|
|
29
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
declare interface NotificationBadgePositionerVariant {
|
|
2
|
+
/**
|
|
3
|
+
* @default "icon"
|
|
4
|
+
*/
|
|
5
|
+
attach: "icon" | "text";
|
|
6
|
+
/**
|
|
7
|
+
* @default "large"
|
|
8
|
+
*/
|
|
9
|
+
size: "small" | "large";
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
declare type NotificationBadgePositionerVariantMap = {
|
|
13
|
+
[key in keyof NotificationBadgePositionerVariant]: Array<NotificationBadgePositionerVariant[key]>;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export declare type NotificationBadgePositionerVariantProps = Partial<NotificationBadgePositionerVariant>;
|
|
17
|
+
|
|
18
|
+
export declare const notificationBadgePositionerVariantMap: NotificationBadgePositionerVariantMap;
|
|
19
|
+
|
|
20
|
+
export declare const notificationBadgePositioner: ((
|
|
21
|
+
props?: NotificationBadgePositionerVariantProps,
|
|
22
|
+
) => string) & {
|
|
23
|
+
splitVariantProps: <T extends NotificationBadgePositionerVariantProps>(
|
|
24
|
+
props: T,
|
|
25
|
+
) => [NotificationBadgePositionerVariantProps, Omit<T, keyof NotificationBadgePositionerVariantProps>];
|
|
26
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import './notification-badge-positioner.css';
|
|
2
|
+
import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
|
|
3
|
+
|
|
4
|
+
const defaultVariant = {
|
|
5
|
+
"size": "large",
|
|
6
|
+
"attach": "icon"
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
const compoundVariants = [
|
|
10
|
+
{
|
|
11
|
+
"size": "large",
|
|
12
|
+
"attach": "icon"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"size": "small",
|
|
16
|
+
"attach": "icon"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"size": "large",
|
|
20
|
+
"attach": "text"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"size": "small",
|
|
24
|
+
"attach": "text"
|
|
25
|
+
}
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
export const notificationBadgePositionerVariantMap = {
|
|
29
|
+
"attach": [
|
|
30
|
+
"icon",
|
|
31
|
+
"text"
|
|
32
|
+
],
|
|
33
|
+
"size": [
|
|
34
|
+
"small",
|
|
35
|
+
"large"
|
|
36
|
+
]
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export const notificationBadgePositionerVariantKeys = Object.keys(notificationBadgePositionerVariantMap);
|
|
40
|
+
|
|
41
|
+
export function notificationBadgePositioner(props) {
|
|
42
|
+
return createClassName(
|
|
43
|
+
"seed-notification-badge-positioner",
|
|
44
|
+
mergeVariants(defaultVariant, props),
|
|
45
|
+
compoundVariants,
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
Object.assign(notificationBadgePositioner, { splitVariantProps: (props) => splitVariantProps(props, notificationBadgePositionerVariantMap) });
|
|
50
|
+
|
|
51
|
+
// @recipe(seed): notification-badge-positioner
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
.seed-notification-badge__root {
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
justify-content: center;
|
|
5
|
+
flex-shrink: 0;
|
|
6
|
+
background-color: var(--seed-color-bg-brand-solid)
|
|
7
|
+
}
|
|
8
|
+
.seed-notification-badge__label {
|
|
9
|
+
text-align: center;
|
|
10
|
+
color: var(--seed-color-palette-static-white);
|
|
11
|
+
white-space: nowrap;
|
|
12
|
+
flex-shrink: 0
|
|
13
|
+
}
|
|
14
|
+
.seed-notification-badge__root--size_small {
|
|
15
|
+
width: 6px;
|
|
16
|
+
height: 6px;
|
|
17
|
+
border-radius: var(--seed-radius-full)
|
|
18
|
+
}
|
|
19
|
+
.seed-notification-badge__root--size_large {
|
|
20
|
+
width: max-content;
|
|
21
|
+
min-width: 18px;
|
|
22
|
+
min-height: 18px;
|
|
23
|
+
padding-left: var(--seed-dimension-x1);
|
|
24
|
+
padding-right: var(--seed-dimension-x1);
|
|
25
|
+
padding-top: 0px;
|
|
26
|
+
padding-bottom: 0px;
|
|
27
|
+
border-radius: var(--seed-radius-full)
|
|
28
|
+
}
|
|
29
|
+
.seed-notification-badge__label--size_large {
|
|
30
|
+
font-size: var(--seed-font-size-t1-static);
|
|
31
|
+
line-height: var(--seed-line-height-t1-static);
|
|
32
|
+
font-weight: var(--seed-font-weight-bold)
|
|
33
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
declare interface NotificationBadgeVariant {
|
|
2
|
+
/**
|
|
3
|
+
* - `small`: 간결한 도트 형태로, 텍스트 없이 상태 변화만 표시합니다. 알림의 존재 여부만 중요하거나 공간이 제한된 경우에 적합합니다. 내부 라벨은 지원하지 않습니다.
|
|
4
|
+
* - `large`: 라벨을 포함해 구체적인 알림 수나 상태 정보를 제공합니다. 세부 정보가 중요하고 충분한 공간이 있을 때 사용합니다. 내부 라벨을 반드시 포함해야 합니다.
|
|
5
|
+
*
|
|
6
|
+
* @default "large"
|
|
7
|
+
*/
|
|
8
|
+
size: "small" | "large";
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
declare type NotificationBadgeVariantMap = {
|
|
12
|
+
[key in keyof NotificationBadgeVariant]: Array<NotificationBadgeVariant[key]>;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export declare type NotificationBadgeVariantProps = Partial<NotificationBadgeVariant>;
|
|
16
|
+
|
|
17
|
+
export declare type NotificationBadgeSlotName = "root" | "label";
|
|
18
|
+
|
|
19
|
+
export declare const notificationBadgeVariantMap: NotificationBadgeVariantMap;
|
|
20
|
+
|
|
21
|
+
export declare const notificationBadge: ((
|
|
22
|
+
props?: NotificationBadgeVariantProps,
|
|
23
|
+
) => Record<NotificationBadgeSlotName, string>) & {
|
|
24
|
+
splitVariantProps: <T extends NotificationBadgeVariantProps>(
|
|
25
|
+
props: T,
|
|
26
|
+
) => [NotificationBadgeVariantProps, Omit<T, keyof NotificationBadgeVariantProps>];
|
|
27
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import './notification-badge.css';
|
|
2
|
+
import { createClassName, mergeVariants, splitVariantProps } from "./shared.mjs";
|
|
3
|
+
|
|
4
|
+
const notificationBadgeSlotNames = [
|
|
5
|
+
[
|
|
6
|
+
"root",
|
|
7
|
+
"seed-notification-badge__root"
|
|
8
|
+
],
|
|
9
|
+
[
|
|
10
|
+
"label",
|
|
11
|
+
"seed-notification-badge__label"
|
|
12
|
+
]
|
|
13
|
+
];
|
|
14
|
+
|
|
15
|
+
const defaultVariant = {
|
|
16
|
+
"size": "large"
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
const compoundVariants = [];
|
|
20
|
+
|
|
21
|
+
export const notificationBadgeVariantMap = {
|
|
22
|
+
"size": [
|
|
23
|
+
"small",
|
|
24
|
+
"large"
|
|
25
|
+
]
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
export const notificationBadgeVariantKeys = Object.keys(notificationBadgeVariantMap);
|
|
29
|
+
|
|
30
|
+
export function notificationBadge(props) {
|
|
31
|
+
return Object.fromEntries(
|
|
32
|
+
notificationBadgeSlotNames.map(([slot, className]) => {
|
|
33
|
+
return [
|
|
34
|
+
slot,
|
|
35
|
+
createClassName(className, mergeVariants(defaultVariant, props), compoundVariants),
|
|
36
|
+
];
|
|
37
|
+
}),
|
|
38
|
+
);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
Object.assign(notificationBadge, { splitVariantProps: (props) => splitVariantProps(props, notificationBadgeVariantMap) });
|
|
42
|
+
|
|
43
|
+
// @recipe(seed): notification-badge
|